public IModInputCombination RegisterCombination(IModBehaviour mod, string name, string combination) { var combo = new ModInputCombination(mod.ModHelper.Manifest, _console, name, combination); switch (SwapCombination(combo, false)) { case RegistrationCode.InvalidCombination: _console.WriteLine($"Failed to register \"{combo.FullName}\": invalid combination!"); return(null); case RegistrationCode.CombinationTooLong: _console.WriteLine($"Failed to register \"{combo.FullName}\": too long!"); return(null); case RegistrationCode.CombinationTaken: _console.WriteLine($"Failed to register \"{combo.FullName}\": already in use by following mods:"); var collisions = GetCollisions(combo.Hashes); foreach (var collision in collisions) { _console.WriteLine($"\"{collision}\""); } return(null); case RegistrationCode.AllNormal: return(combo); default: return(null); } }
public ModConfigMenu(IModConsole console, IModData modData, IModBehaviour mod) : base(console) { _console = console; ModData = modData; Mod = mod; _storage = new ModStorage(console, modData.Manifest); }
public IModConfigMenu GetModMenu(IModBehaviour modBehaviour) { OwmlConsole.WriteLine("Registering " + modBehaviour.ModHelper.Manifest.UniqueName); var modConfigMenu = _modConfigMenus.FirstOrDefault(x => x.Mod == modBehaviour); if (modConfigMenu == null) { OwmlConsole.WriteLine($"Error: {modBehaviour.ModHelper.Manifest.UniqueName} isn't added."); return(null); } return(modConfigMenu); }
public void AddMod(IModData modData, IModBehaviour mod) { _modConfigMenus.Add(new ModConfigMenu(OwmlConsole, modData, mod)); }
public ModConfigMenu(IModConsole console, IModData modData, IModBehaviour mod) : base(console, modData.Manifest) { ModData = modData; Mod = mod; }