From 2665c0a75107a6a3529f3f5c60208b72d4cd5a68 Mon Sep 17 00:00:00 2001 From: Anairkoen Schno Date: Fri, 19 Apr 2019 22:23:46 -0500 Subject: [PATCH] Added support for bare manifests --- BSIPA-ModList/BSIPA-ModList.csproj | 3 + BSIPA-ModList/Icons/Thumbs.db | Bin 37888 -> 64000 bytes BSIPA-ModList/Icons/library.png | Bin 0 -> 36105 bytes .../UI/ViewControllers/ModListController.cs | 54 +++++++++++++++++- IPA.Loader/Loader/PluginLoader.cs | 31 +++++++++- IPA.Loader/Loader/manifest.json | 2 +- Refs/BeatSaberCustomUI.dll | Bin 160256 -> 168960 bytes 7 files changed, 86 insertions(+), 4 deletions(-) create mode 100644 BSIPA-ModList/Icons/library.png diff --git a/BSIPA-ModList/BSIPA-ModList.csproj b/BSIPA-ModList/BSIPA-ModList.csproj index 77fb4b2e..126b0af5 100644 --- a/BSIPA-ModList/BSIPA-ModList.csproj +++ b/BSIPA-ModList/BSIPA-ModList.csproj @@ -97,6 +97,9 @@ + + + diff --git a/BSIPA-ModList/Icons/Thumbs.db b/BSIPA-ModList/Icons/Thumbs.db index 3f84cf4776dd0d48d2016f5d7dc460d090699f3d..f50e0834aeb5155e0ee6582d350a7aa2c0eb38ce 100644 GIT binary patch delta 25163 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