You are viewing a potentially older version of this package. View all versions.
Rune580-Risk_Of_Options-1.0.2 icon

Risk Of Options

A nice looking Mod Options API

Date uploaded 3 years ago
Version 1.0.2
Download link Rune580-Risk_Of_Options-1.0.2.zip
Downloads 97217
Dependency string Rune580-Risk_Of_Options-1.0.2

This mod requires the following mods to function

bbepis-BepInExPack-5.4.1905 icon
bbepis-BepInExPack

Unified BepInEx all-in-one modding pack - plugin framework, detour library

Preferred version: 5.4.1905

README

RiskOfOptions

An API to add Mod Options in game to ROR2.

Getting Started

First you need to grab the latest release from the Thunderstore. Extract the mod to your plugins folder, and then add a reference to the dll in your project in Visual Studio. [Project->Add Reference...->Browse]

Then add to where ever you will use this.

using RiskOfOptions;

Next you need to add Risk Of Options as a dependecy for your mod.

[BepInDependency("com.rune580.riskofoptions")]

Now you're ready to start adding options.

Adding an option

This needs to be run on Awake()

ModSettingsManager.addOption(new ModOption(ModOption.OptionType.Slider, "Test Slider", "This is a Slider test."));

ModSettingsManager.addOption(new ModOption(ModOption.OptionType.Bool, "Test Bool", "This is a Bool test."));

and with default values

ModSettingsManager.addOption(new ModOption(ModOption.OptionType.Slider, "Test Slider", "This is a Slider test.", "20"));

ModSettingsManager.addOption(new ModOption(ModOption.OptionType.Bool, "Test Bool", "This is a Bool test.", "1"));

Changing the description of the mod panel

ModSettingsManager.setPanelDescription("Testing stuff");

Changing the title of the mod panel

ModSettingsManager.setPanelTitle("Risk of Options Testing Stuff");

Fire event when value has changed

for a slider

ModSettingsManager.addListener(ModSettingsManager.getOption("Test Slider"), new UnityEngine.Events.UnityAction<float>(floatEvent));

public void floatEvent(float f)
        {
            Debug.Log(f);
        }

or for a bool

ModSettingsManager.addListener(ModSettingsManager.getOption("Test Bool"), new UnityEngine.Events.UnityAction<bool>(boolEvent));

public void boolEvent(bool b)
        {
            Debug.Log(b);
        }

Get the current value of an option

string b = ModSettingsManager.getOptionValue("Test Bool");

// BaseConVar returns a string as a value.
// for example it could be "1" or "0"

Get the ModOption of an option

ModSettingsManager.getOption("Test Bool")

Previews

Preview 1 Preview 2