diff --git a/BSIPA.sln b/BSIPA.sln index 2b2f106a..c9159b7a 100644 --- a/BSIPA.sln +++ b/BSIPA.sln @@ -1,7 +1,7 @@  Microsoft Visual Studio Solution File, Format Version 12.00 -# Visual Studio 15 -VisualStudioVersion = 15.0.27428.2043 +# Visual Studio Version 16 +VisualStudioVersion = 16.0.28729.10 MinimumVisualStudioVersion = 10.0.40219.1 Project("{FAE04EC0-301F-11D3-BF4B-00C04F79EFBC}") = "IPA", "IPA\IPA.csproj", "{14092533-98BB-40A4-9AFC-27BB75672A70}" ProjectSection(ProjectDependencies) = postProject @@ -38,61 +38,127 @@ Project("{FAE04EC0-301F-11D3-BF4B-00C04F79EFBC}") = "CollectDependencies", "Buil EndProject Project("{FAE04EC0-301F-11D3-BF4B-00C04F79EFBC}") = "AssemblyRenameStep", "BuildTools\AssemblyRenameStep\AssemblyRenameStep.csproj", "{E2CCDD2F-1D4F-4B06-9CD4-E0D2B9AE543A}" EndProject +Project("{FAE04EC0-301F-11D3-BF4B-00C04F79EFBC}") = "BSIPA-ModList", "BSIPA-ModList\BSIPA-ModList.csproj", "{23AB2621-A05C-4377-8418-85E6012C0BBE}" +EndProject Global GlobalSection(SolutionConfigurationPlatforms) = preSolution + Debug|Any CPU = Debug|Any CPU Debug|x64 = Debug|x64 + Release|Any CPU = Release|Any CPU Release|x64 = Release|x64 + Verbose_Release|Any CPU = Verbose_Release|Any CPU Verbose_Release|x64 = Verbose_Release|x64 + Verbose|Any CPU = Verbose|Any CPU Verbose|x64 = Verbose|x64 EndGlobalSection GlobalSection(ProjectConfigurationPlatforms) = postSolution + {14092533-98BB-40A4-9AFC-27BB75672A70}.Debug|Any CPU.ActiveCfg = Debug|Any CPU + {14092533-98BB-40A4-9AFC-27BB75672A70}.Debug|Any CPU.Build.0 = Debug|Any CPU {14092533-98BB-40A4-9AFC-27BB75672A70}.Debug|x64.ActiveCfg = Debug|Any CPU {14092533-98BB-40A4-9AFC-27BB75672A70}.Debug|x64.Build.0 = Debug|Any CPU + {14092533-98BB-40A4-9AFC-27BB75672A70}.Release|Any CPU.ActiveCfg = Release|Any CPU + {14092533-98BB-40A4-9AFC-27BB75672A70}.Release|Any CPU.Build.0 = Release|Any CPU {14092533-98BB-40A4-9AFC-27BB75672A70}.Release|x64.ActiveCfg = Release|Any CPU {14092533-98BB-40A4-9AFC-27BB75672A70}.Release|x64.Build.0 = Release|Any CPU + {14092533-98BB-40A4-9AFC-27BB75672A70}.Verbose_Release|Any CPU.ActiveCfg = Verbose_Release|Any CPU + {14092533-98BB-40A4-9AFC-27BB75672A70}.Verbose_Release|Any CPU.Build.0 = Verbose_Release|Any CPU {14092533-98BB-40A4-9AFC-27BB75672A70}.Verbose_Release|x64.ActiveCfg = Verbose_Release|Any CPU {14092533-98BB-40A4-9AFC-27BB75672A70}.Verbose_Release|x64.Build.0 = Verbose_Release|Any CPU + {14092533-98BB-40A4-9AFC-27BB75672A70}.Verbose|Any CPU.ActiveCfg = Verbose|Any CPU + {14092533-98BB-40A4-9AFC-27BB75672A70}.Verbose|Any CPU.Build.0 = Verbose|Any CPU {14092533-98BB-40A4-9AFC-27BB75672A70}.Verbose|x64.ActiveCfg = Verbose|Any CPU {14092533-98BB-40A4-9AFC-27BB75672A70}.Verbose|x64.Build.0 = Verbose|Any CPU + {5AD344F0-01A0-4CA8-92E5-9D095737744D}.Debug|Any CPU.ActiveCfg = Debug|Any CPU + {5AD344F0-01A0-4CA8-92E5-9D095737744D}.Debug|Any CPU.Build.0 = Debug|Any CPU {5AD344F0-01A0-4CA8-92E5-9D095737744D}.Debug|x64.ActiveCfg = Debug|Any CPU {5AD344F0-01A0-4CA8-92E5-9D095737744D}.Debug|x64.Build.0 = Debug|Any CPU + {5AD344F0-01A0-4CA8-92E5-9D095737744D}.Release|Any CPU.ActiveCfg = Release|Any CPU + {5AD344F0-01A0-4CA8-92E5-9D095737744D}.Release|Any CPU.Build.0 = Release|Any CPU {5AD344F0-01A0-4CA8-92E5-9D095737744D}.Release|x64.ActiveCfg = Release|Any CPU {5AD344F0-01A0-4CA8-92E5-9D095737744D}.Release|x64.Build.0 = Release|Any CPU + {5AD344F0-01A0-4CA8-92E5-9D095737744D}.Verbose_Release|Any CPU.ActiveCfg = Release|Any CPU + {5AD344F0-01A0-4CA8-92E5-9D095737744D}.Verbose_Release|Any CPU.Build.0 = Release|Any CPU {5AD344F0-01A0-4CA8-92E5-9D095737744D}.Verbose_Release|x64.ActiveCfg = Release|Any CPU {5AD344F0-01A0-4CA8-92E5-9D095737744D}.Verbose_Release|x64.Build.0 = Release|Any CPU + {5AD344F0-01A0-4CA8-92E5-9D095737744D}.Verbose|Any CPU.ActiveCfg = Release|Any CPU + {5AD344F0-01A0-4CA8-92E5-9D095737744D}.Verbose|Any CPU.Build.0 = Release|Any CPU {5AD344F0-01A0-4CA8-92E5-9D095737744D}.Verbose|x64.ActiveCfg = Debug|Any CPU {5AD344F0-01A0-4CA8-92E5-9D095737744D}.Verbose|x64.Build.0 = Debug|Any CPU + {2A1AF16B-27F1-46E0-9A95-181516BC1CB7}.Debug|Any CPU.ActiveCfg = Debug|Any CPU + {2A1AF16B-27F1-46E0-9A95-181516BC1CB7}.Debug|Any CPU.Build.0 = Debug|Any CPU {2A1AF16B-27F1-46E0-9A95-181516BC1CB7}.Debug|x64.ActiveCfg = Debug|Any CPU {2A1AF16B-27F1-46E0-9A95-181516BC1CB7}.Debug|x64.Build.0 = Debug|Any CPU + {2A1AF16B-27F1-46E0-9A95-181516BC1CB7}.Release|Any CPU.ActiveCfg = Release|Any CPU + {2A1AF16B-27F1-46E0-9A95-181516BC1CB7}.Release|Any CPU.Build.0 = Release|Any CPU {2A1AF16B-27F1-46E0-9A95-181516BC1CB7}.Release|x64.ActiveCfg = Release|Any CPU {2A1AF16B-27F1-46E0-9A95-181516BC1CB7}.Release|x64.Build.0 = Release|Any CPU + {2A1AF16B-27F1-46E0-9A95-181516BC1CB7}.Verbose_Release|Any CPU.ActiveCfg = Release|Any CPU + {2A1AF16B-27F1-46E0-9A95-181516BC1CB7}.Verbose_Release|Any CPU.Build.0 = Release|Any CPU {2A1AF16B-27F1-46E0-9A95-181516BC1CB7}.Verbose_Release|x64.ActiveCfg = Release|Any CPU {2A1AF16B-27F1-46E0-9A95-181516BC1CB7}.Verbose_Release|x64.Build.0 = Release|Any CPU + {2A1AF16B-27F1-46E0-9A95-181516BC1CB7}.Verbose|Any CPU.ActiveCfg = Release|Any CPU + {2A1AF16B-27F1-46E0-9A95-181516BC1CB7}.Verbose|Any CPU.Build.0 = Release|Any CPU {2A1AF16B-27F1-46E0-9A95-181516BC1CB7}.Verbose|x64.ActiveCfg = Debug|Any CPU {2A1AF16B-27F1-46E0-9A95-181516BC1CB7}.Verbose|x64.Build.0 = Debug|Any CPU + {88609E16-731F-46C9-8139-6B1A7A83240D}.Debug|Any CPU.ActiveCfg = Debug|Win32 {88609E16-731F-46C9-8139-6B1A7A83240D}.Debug|x64.ActiveCfg = Release|x64 {88609E16-731F-46C9-8139-6B1A7A83240D}.Debug|x64.Build.0 = Release|x64 + {88609E16-731F-46C9-8139-6B1A7A83240D}.Release|Any CPU.ActiveCfg = Release|Win32 {88609E16-731F-46C9-8139-6B1A7A83240D}.Release|x64.ActiveCfg = Release|x64 {88609E16-731F-46C9-8139-6B1A7A83240D}.Release|x64.Build.0 = Release|x64 + {88609E16-731F-46C9-8139-6B1A7A83240D}.Verbose_Release|Any CPU.ActiveCfg = Verbose_Release|Win32 {88609E16-731F-46C9-8139-6B1A7A83240D}.Verbose_Release|x64.ActiveCfg = Verbose_Release|x64 {88609E16-731F-46C9-8139-6B1A7A83240D}.Verbose_Release|x64.Build.0 = Verbose_Release|x64 + {88609E16-731F-46C9-8139-6B1A7A83240D}.Verbose|Any CPU.ActiveCfg = Verbose|Win32 {88609E16-731F-46C9-8139-6B1A7A83240D}.Verbose|x64.ActiveCfg = Verbose_Release|x64 {88609E16-731F-46C9-8139-6B1A7A83240D}.Verbose|x64.Build.0 = Verbose_Release|x64 + {5F33B310-DC8D-4C0D-877E-BAC3908DE10F}.Debug|Any CPU.ActiveCfg = Debug|Any CPU + {5F33B310-DC8D-4C0D-877E-BAC3908DE10F}.Debug|Any CPU.Build.0 = Debug|Any CPU {5F33B310-DC8D-4C0D-877E-BAC3908DE10F}.Debug|x64.ActiveCfg = Debug|Any CPU {5F33B310-DC8D-4C0D-877E-BAC3908DE10F}.Debug|x64.Build.0 = Debug|Any CPU + {5F33B310-DC8D-4C0D-877E-BAC3908DE10F}.Release|Any CPU.ActiveCfg = Release|Any CPU + {5F33B310-DC8D-4C0D-877E-BAC3908DE10F}.Release|Any CPU.Build.0 = Release|Any CPU {5F33B310-DC8D-4C0D-877E-BAC3908DE10F}.Release|x64.ActiveCfg = Release|Any CPU + {5F33B310-DC8D-4C0D-877E-BAC3908DE10F}.Verbose_Release|Any CPU.ActiveCfg = Release|Any CPU + {5F33B310-DC8D-4C0D-877E-BAC3908DE10F}.Verbose_Release|Any CPU.Build.0 = Release|Any CPU {5F33B310-DC8D-4C0D-877E-BAC3908DE10F}.Verbose_Release|x64.ActiveCfg = Release|Any CPU {5F33B310-DC8D-4C0D-877E-BAC3908DE10F}.Verbose_Release|x64.Build.0 = Release|Any CPU + {5F33B310-DC8D-4C0D-877E-BAC3908DE10F}.Verbose|Any CPU.ActiveCfg = Release|Any CPU + {5F33B310-DC8D-4C0D-877E-BAC3908DE10F}.Verbose|Any CPU.Build.0 = Release|Any CPU {5F33B310-DC8D-4C0D-877E-BAC3908DE10F}.Verbose|x64.ActiveCfg = Release|Any CPU {5F33B310-DC8D-4C0D-877E-BAC3908DE10F}.Verbose|x64.Build.0 = Release|Any CPU + {E2CCDD2F-1D4F-4B06-9CD4-E0D2B9AE543A}.Debug|Any CPU.ActiveCfg = Debug|Any CPU + {E2CCDD2F-1D4F-4B06-9CD4-E0D2B9AE543A}.Debug|Any CPU.Build.0 = Debug|Any CPU {E2CCDD2F-1D4F-4B06-9CD4-E0D2B9AE543A}.Debug|x64.ActiveCfg = Debug|Any CPU {E2CCDD2F-1D4F-4B06-9CD4-E0D2B9AE543A}.Debug|x64.Build.0 = Debug|Any CPU + {E2CCDD2F-1D4F-4B06-9CD4-E0D2B9AE543A}.Release|Any CPU.ActiveCfg = Release|Any CPU + {E2CCDD2F-1D4F-4B06-9CD4-E0D2B9AE543A}.Release|Any CPU.Build.0 = Release|Any CPU {E2CCDD2F-1D4F-4B06-9CD4-E0D2B9AE543A}.Release|x64.ActiveCfg = Release|Any CPU {E2CCDD2F-1D4F-4B06-9CD4-E0D2B9AE543A}.Release|x64.Build.0 = Release|Any CPU + {E2CCDD2F-1D4F-4B06-9CD4-E0D2B9AE543A}.Verbose_Release|Any CPU.ActiveCfg = Release|Any CPU + {E2CCDD2F-1D4F-4B06-9CD4-E0D2B9AE543A}.Verbose_Release|Any CPU.Build.0 = Release|Any CPU {E2CCDD2F-1D4F-4B06-9CD4-E0D2B9AE543A}.Verbose_Release|x64.ActiveCfg = Release|Any CPU {E2CCDD2F-1D4F-4B06-9CD4-E0D2B9AE543A}.Verbose_Release|x64.Build.0 = Release|Any CPU + {E2CCDD2F-1D4F-4B06-9CD4-E0D2B9AE543A}.Verbose|Any CPU.ActiveCfg = Release|Any CPU + {E2CCDD2F-1D4F-4B06-9CD4-E0D2B9AE543A}.Verbose|Any CPU.Build.0 = Release|Any CPU {E2CCDD2F-1D4F-4B06-9CD4-E0D2B9AE543A}.Verbose|x64.ActiveCfg = Release|Any CPU {E2CCDD2F-1D4F-4B06-9CD4-E0D2B9AE543A}.Verbose|x64.Build.0 = Release|Any CPU + {23AB2621-A05C-4377-8418-85E6012C0BBE}.Debug|Any CPU.ActiveCfg = Debug|Any CPU + {23AB2621-A05C-4377-8418-85E6012C0BBE}.Debug|Any CPU.Build.0 = Debug|Any CPU + {23AB2621-A05C-4377-8418-85E6012C0BBE}.Debug|x64.ActiveCfg = Debug|Any CPU + {23AB2621-A05C-4377-8418-85E6012C0BBE}.Debug|x64.Build.0 = Debug|Any CPU + {23AB2621-A05C-4377-8418-85E6012C0BBE}.Release|Any CPU.ActiveCfg = Release|Any CPU + {23AB2621-A05C-4377-8418-85E6012C0BBE}.Release|Any CPU.Build.0 = Release|Any CPU + {23AB2621-A05C-4377-8418-85E6012C0BBE}.Release|x64.ActiveCfg = Release|Any CPU + {23AB2621-A05C-4377-8418-85E6012C0BBE}.Release|x64.Build.0 = Release|Any CPU + {23AB2621-A05C-4377-8418-85E6012C0BBE}.Verbose_Release|Any CPU.ActiveCfg = Release|Any CPU + {23AB2621-A05C-4377-8418-85E6012C0BBE}.Verbose_Release|Any CPU.Build.0 = Release|Any CPU + {23AB2621-A05C-4377-8418-85E6012C0BBE}.Verbose_Release|x64.ActiveCfg = Release|Any CPU + {23AB2621-A05C-4377-8418-85E6012C0BBE}.Verbose_Release|x64.Build.0 = Release|Any CPU + {23AB2621-A05C-4377-8418-85E6012C0BBE}.Verbose|Any CPU.ActiveCfg = Release|Any CPU + {23AB2621-A05C-4377-8418-85E6012C0BBE}.Verbose|Any CPU.Build.0 = Release|Any CPU + {23AB2621-A05C-4377-8418-85E6012C0BBE}.Verbose|x64.ActiveCfg = Release|Any CPU + {23AB2621-A05C-4377-8418-85E6012C0BBE}.Verbose|x64.Build.0 = Release|Any CPU EndGlobalSection GlobalSection(SolutionProperties) = preSolution HideSolutionNode = FALSE diff --git a/IPA.Loader/IPA.Loader.csproj b/IPA.Loader/IPA.Loader.csproj index 2613576f..9fd4b414 100644 --- a/IPA.Loader/IPA.Loader.csproj +++ b/IPA.Loader/IPA.Loader.csproj @@ -127,5 +127,8 @@ + + + \ No newline at end of file diff --git a/IPA.Loader/Loader/PluginManager.cs b/IPA.Loader/Loader/PluginManager.cs index f7e56e2b..122aed48 100644 --- a/IPA.Loader/Loader/PluginManager.cs +++ b/IPA.Loader/Loader/PluginManager.cs @@ -252,7 +252,7 @@ namespace IPA.Loader return new Tuple, IEnumerable>(null, ipaPlugins); } - internal class AppInfo + internal static class AppInfo { [DllImport("kernel32.dll", CharSet = CharSet.Unicode, ExactSpelling = false)] private static extern int GetModuleFileName(HandleRef hModule, StringBuilder buffer, int length); diff --git a/IPA.Loader/Loader/PluginManifest.cs b/IPA.Loader/Loader/PluginManifest.cs index b5b33464..e45c330f 100644 --- a/IPA.Loader/Loader/PluginManifest.cs +++ b/IPA.Loader/Loader/PluginManifest.cs @@ -39,5 +39,8 @@ namespace IPA.Loader [JsonProperty("loadAfter", Required = Required.DisallowNull)] public string[] LoadAfter = new string[0]; + + [JsonProperty("icon", Required = Required.DisallowNull)] + public string IconPath = null; } } \ No newline at end of file diff --git a/IPA.Loader/Loader/manifest.json b/IPA.Loader/Loader/manifest.json index d7619fce..3c55f6cb 100644 --- a/IPA.Loader/Loader/manifest.json +++ b/IPA.Loader/Loader/manifest.json @@ -6,6 +6,7 @@ "id": "BSIPA", "name": "Beat Saber IPA", "version": "3.12.13", + "icon": "IPA.icon.png", "features": [ "define-feature(print, IPA.Loader.Features.PrintFeature)", "define-feature(debug, IPA.Loader.Features.DebugFeature)", diff --git a/IPA.Loader/Properties/AssemblyInfo.cs b/IPA.Loader/Properties/AssemblyInfo.cs index a4c96091..be59e13f 100644 --- a/IPA.Loader/Properties/AssemblyInfo.cs +++ b/IPA.Loader/Properties/AssemblyInfo.cs @@ -22,6 +22,7 @@ using System.Runtime.InteropServices; // The following GUID is for the ID of the typelib if this project is exposed to COM [assembly: Guid("5ad344f0-01a0-4ca8-92e5-9d095737744d")] [assembly: InternalsVisibleTo("IPA.Injector")] +[assembly: InternalsVisibleTo("BSIPA-ModList")] // Version information for an assembly consists of the following four values: // diff --git a/IPA.Loader/Thumbs.db b/IPA.Loader/Thumbs.db new file mode 100644 index 00000000..25f19c79 Binary files /dev/null and b/IPA.Loader/Thumbs.db differ diff --git a/IPA.Loader/icon.png b/IPA.Loader/icon.png new file mode 100644 index 00000000..e03628bd Binary files /dev/null and b/IPA.Loader/icon.png differ diff --git a/IPA.Loader/icon.xcf b/IPA.Loader/icon.xcf new file mode 100644 index 00000000..a9b6ca6a Binary files /dev/null and b/IPA.Loader/icon.xcf differ diff --git a/Refs/BeatSaberCustomUI.dll b/Refs/BeatSaberCustomUI.dll new file mode 100644 index 00000000..8f810ea4 Binary files /dev/null and b/Refs/BeatSaberCustomUI.dll differ diff --git a/Refs/BeatSaberCustomUI.xml b/Refs/BeatSaberCustomUI.xml new file mode 100644 index 00000000..5fbaa627 --- /dev/null +++ b/Refs/BeatSaberCustomUI.xml @@ -0,0 +1,359 @@ + + + + BeatSaberCustomUI + + + + + Display a keyboard interface to accept user input. + + The title to be displayed above the keyboard. + The starting value of the keyboard. + Callback when the text is modified by the user (when any key is pressed basically). + Callback when the user successfully submits the changed text. + Callback when the user presses the cancel button. + + + + + Creates a copy of a template button and returns it. + + The transform to parent the button to. + The name of the button to make a copy of. Example: "QuitButton", "PlayButton", etc. + The position the button should be anchored to. + The size of the buttons RectTransform. + Callback for when the button is pressed. + The text that should be shown on the button. + The icon that should be shown on the button. + The newly created button. + + + + Creates a copy of a template button and returns it. + + The transform to parent the button to. + The name of the button to make a copy of. Example: "QuitButton", "PlayButton", etc. + The position the button should be anchored to. + Callback for when the button is pressed. + The text that should be shown on the button. + The icon that should be shown on the button. + The newly created button. + + + + Creates a copy of a template button and returns it. + + The transform to parent the button to. + The name of the button to make a copy of. Example: "QuitButton", "PlayButton", etc. + Callback for when the button is pressed. + The text that should be shown on the button. + The icon that should be shown on the button. + The newly created button. + + + + Creates a copy of a back button. + + The transform to parent the new button to. + Callback for when the button is pressed. + The newly created back button. + + + + Creates a VRUIViewController of type T, and marks it to not be destroyed. + + The variation of VRUIViewController you want to create. + The newly created VRUIViewController of type T. + + + + Creates a CustomMenu, which is basically a custom panel that handles UI transitions for you automatically. + + The type of CustomMenu to instantiate. + The title of the new CustomMenu. + The newly created CustomMenu of type T. + + + + Creates a loading spinner. + + The transform to parent the new loading spinner to. + The newly created loading spinner. + + + + Creates a TextMeshProUGUI component. + + Thet ransform to parent the new TextMeshProUGUI component to. + The text to be displayed. + The position the button should be anchored to. + The newly created TextMeshProUGUI component. + + + + Creates a TextMeshProUGUI component. + + Thet transform to parent the new TextMeshProUGUI component to. + The text to be displayed. + The position the text component should be anchored to. + The size of the text components RectTransform. + The newly created TextMeshProUGUI component. + + + + Adds hint text to any component that handles pointer events. + + Thet transform to parent the new HoverHint component to. + The text to be displayed on the HoverHint panel. + The newly created HoverHint component. + + + + Creates a custom slider. + + Thet transform to parent the new slider component to. + The minimum value of the slider. + The maximum value of the slider. + The amount to increment the slider by. + True if the value represented by the slider is an int, false if it's a float. + Callback when the sliders value changes. + + + + + Creates a color picker. + + Thet transform to parent the new color picker to. + The position the color picker should be anchored to. + The size of the color picker's RectTransform. + + + + + The FlowCoordinator that presented this FlowCoordinator + + + + + The CustomMenu this FlowCoordinator is representing. + + + + + Back out to the previous flow coordinator. + + If set to true, no animation will be shown and the transition will be instant. + + + + Back out to the previous flow coordinator with an animation. + + + + + Whether or not to include a back button when the ViewController is activated. + + + + + A reference to the page up button, if it exists. + + + + + A reference to the page down button, if it exists. + + + + + The TableView associated with the current CustomListViewController. + + + + + The data to be displayed in the table. + + + + + An event fired when the user selects a cell in the TableView. + + + + + The reuse identifier, which is used to recycle cells instead of instantiating new instances of them. + + + + + The prefab used to instantiate new table cells. + + + + + Instantiates a new LevelListTableCell (or recycles an old one). + + This param does nothing, and was left in by mistake. + If set to false, the BeatmapCharacteristicImages will be destroyed. + + + + + Instantiates a new LevelListTableCell (or recycles an old one). + + If set to false, the BeatmapCharacteristicImages will be destroyed. + + + + + The CustomFlowCoordinator associated with this CustomMenu. This will not be populated if you have no main CustomViewController. + + + + + The main CustomViewController associated with this menu. + + + + + The left CustomViewController associated with this menu. + + + + + The right CustomViewController associated with this menu. + + + + + The bottom CustomViewController associated with this menu. + + + + + Sets up the main CustomViewController. + + The viewcontroller to set. + Whether or not to generate a back button. + Optional, a callback when the ViewController becomes active (when you open it). + Optional, a callback when the ViewController becomes inactive (when you close it). + + + + Sets up the left CustomViewController. + + The viewcontroller to set. + Whether or not to generate a back button. + Optional, a callback when the ViewController becomes active (when you open it). + Optional, a callback when the ViewController becomes inactive (when you close it). + + + + Sets up the right CustomViewController. + + The viewcontroller to set. + Whether or not to generate a back button. + Optional, a callback when the ViewController becomes active (when you open it). + Optional, a callback when the ViewController becomes inactive (when you close it). + + + + Sets up the bottom CustomViewController. + + The viewcontroller to set. + Whether or not to generate a back button. + Optional, a callback when the ViewController becomes active (when you open it). + Optional, a callback when the ViewController becomes inactive (when you close it). + + + + Opens the menu. + + If set to true, no animation will be shown and the transition will be instant. + + + + + Opens the menu with an animation. + + + + + Closes the menu. + + If set to true, no animation will be shown and the transition will be instant. + + + + Closes the menu with an animation. + + + + + The event that's fired when the back button is pressed. + + + + + A reference to the current back button, if it exists. + + + + + When set to true, a back button will be automatically generated. + + + + + The event that's fired when the CustomViewController is activated (when you open it). + + + + + The event that's fired when the CustomViewController is deactivated (when you close it). + + + + + Clears any back button callbacks. + + + + + Sets the color while also updating all associated components. + + The to set the preview image + + + + Get the color of a sprite contained in an on pointer click + + The given by OnPointerDown + The instance + + + + Initialize the (should be called after assigning the variable) + + + + + Method called when the pointer is clicked inside the + + Some informations about the pointer + + + + Method called when the pointer is released inside the + + Some informations about the pointer + + + + Method called when the pointer is exiting the + + Some informations about the pointer + + + diff --git a/Refs/UnityEngine.CoreModule.dll b/Refs/UnityEngine.CoreModule.dll index f6478af7..dc2026ad 100644 Binary files a/Refs/UnityEngine.CoreModule.dll and b/Refs/UnityEngine.CoreModule.dll differ diff --git a/Refs/refs.txt b/Refs/refs.txt index f34bab9f..a9387a7a 100644 --- a/Refs/refs.txt +++ b/Refs/refs.txt @@ -1,6 +1,7 @@ ::from ./bsinstalldir.txt "Beat Saber_Data/ ""Managed/ +"""Assembly-CSharp.dll """UnityEngine. """"UnityWebRequestModule. """""dll @@ -8,3 +9,7 @@ """"CoreModule. """""dll """""xml +"Plugins/ +""BeatSaberCustomUI. +"""dll +"""xml \ No newline at end of file diff --git a/appveyor.yml b/appveyor.yml index 0de0e935..499c8bc0 100644 --- a/appveyor.yml +++ b/appveyor.yml @@ -13,6 +13,9 @@ cache: - '%LocalAppData%\NuGet\v3-cache' # NuGet v3 artifacts: - path: IPA/bin/$(configuration) + name: BSIPA + - path: BSIPA-ModList/bin/$(configuration) + name: ModList build: verbosity: normal project: BSIPA.sln @@ -28,7 +31,7 @@ deploy: - `$(APPVEYOR_REPO_COMMIT_MESSAGE_EXTENDED)` auth_token: secure: KhF3q/zWEFwrW0QeZLqE3NAkWR4u9iVhsmcyzXvwwJ28fUy+MzW4CWBx3RxNM60t - artifact: IPA/Bin/$(configuration).zip + artifact: /.*\.zip/ draft: true force_update: true on: