Автор:Rune580Последнее обновление:16/05/2025 23:49:043.6M7.2MB

API для предоставления пользовательского интерфейса в игре для взаимодействия с конфигурацией bepinex.
Буль Бульплавучий плавучийИНТ.ярлык клавиатурыСтроительная струнаперечисление перечняUnityEngine.Colorсначала вам нужно взять последнюю версию из Гроза, гроза. извлечь мод в папку плагинов, а затем добавить ссылку на DLL в вашем проекте в visual studio. [проект-> добавить ссылку...-> просмотр]
затем добавьте в любое место, где вы будете это использовать.
Использование вариантов риска;
далее вам нужно добавить риск опций в качестве зависимости для вашего мода.
[bepindependenty("com.rune580.riskofoptions ")]
наконец убедитесь, что вы знаете, как использовать конфигурация bepinex
теперь вы готовы начать добавлять опции.
давая одно Запись конфигурации<bool>
Запись конфигурации<bool>enableThing = Config.Bind (...); ModSettingsManager.AddOption(new CheckBoxOption(enableThing);
нужен ползунок громкости?
Запись конфигурации<float>volume = Config.Bind (...); ModSettingsManager.AddOption(новый slideroption(volume));
каждый конструктор опций может принять конфигурацию приведенного выше примера, это будет конфигурация слайдера. скажем, вам нужен ползунок, который идет только между 60-130. ты бы сделал:
ModSettingsManager.AddOption(new SliderOption(limitedRangeFloat, new SliderConfig () {min = 60, max = 130}));
как насчет ползунок, который идет в шагах 0,15 и ограничен от 1 до 5?
ModSettingsManager.AddOption(new StepSliderOption(incrementedFloat, new StepSliderConfig () {min = 1, max = 5, increment=0,15 f}));
достаточно о поплавках, давайте поговорим о спагетти и фрикадельках, завязках для клавиш.
Запись конфигурации<KeyboardShortcut>keyBind = Config.Bind (...); ModSettingsManager.AddOption(new KeyBindOption(keyBind)); //у этого также есть keybindconfig, но его можно опустить, если желают значения по умолчанию.
Вот и все, говорится, что ярлык клавиатуры отображается в меню модопций.
Конфигурации флажка и ползунок можно установить с помощью делегата, который будет использоваться для проверки того, следует ли отключить указанный параметр в меню.
Запись конфигурации<bool>Dedisablething = Config.Bind (...); Запись конфигурации<bool>overridenThing=Config.Bind (...); ModSettingsManager.AddOption(new CheckBoxOption(deablething)); ModSettingsManager.AddOption(new CheckBoxOption(overridenThing, new CheckBoxConfig () {checkIfDisabled=Check}));... private bool Check () {return disabledThing.value;}
Когда отключить работу включено превосходство будет отображаться как невзаимодействующая в меню.
«Хорошо, все в порядке, но как я, знаешь, делать что-то, когда значение меняется?» ну, к счастью Запись конфигурацииУ него есть это врожденное:
Запись конфигурации<bool>toggleThing = Config.Bind (...); toggleThing.SettingChanged = (object, args) = > {Debug.Log(toggleThing.Value)};
конечно, когда опция меняет значение переданного Запись конфигурации, значение обновляется в режиме реального времени, поэтому в некоторых случаях, когда вы проверяете значение записи напрямую, вам ничего не нужно делать.
могут возникнуть случаи, когда вам просто нужна удобная кнопка для открытия собственного меню, поэтому вы можете сделать это:
ModSettingsManager.AddOption(new GenericButtonOption("пользовательское меню","Misc","конфигурировать вещи здесь "," открыть пользовательское меню ", OpenMenu)); private void OpenMenu () {/// do stuffs}
опция genericbuttonoption может быть использована для предоставления точки входа для открытия пользовательских интерфейсов.
ModSettingsManager.SetModDescription («опишите свой мод невероятно подробно в течение следующих 2 часов»);
значок спрайта =...; ModSettingsManager.SetModIcon (значок);
раздор: @rune
Github: Rune580

Загрузите моды сейчас
Установите LagoFast, запустите Risk of Rain 2 и играйте с модами, которые вам нравятся.