using KitchenLib; using KitchenMods; using System.Reflection; using Kitchen; using KitchenLib.Preferences; using KitchenLib.UI.PlateUp.PreferenceMenus; using MMOKitchen.Menus; using UnityEngine; using KitchenLogger = KitchenLib.Logging.KitchenLogger; namespace MMOKitchen { public class Mod : BaseMod, IModSystem { public const string MOD_GUID = "com.starfluxgames.mmokitchen"; public const string MOD_NAME = "MMO Kitchen"; public const string MOD_VERSION = "0.4.0"; public const string MOD_AUTHOR = "StarFluxGames"; public const string MOD_GAMEVERSION = ">=1.2.0"; public const string PREFERENCE_REQUIRED_CONSENT_PERCENTAGE = "requiredConsentPercentage"; public const string PREFERENCE_SCALE_ABOVE_4_PLAYERS = "scaleAbove4Players"; public const string PREFERENCE_CUSTOMER_SCALE_AMOUNT = "PREFERENCE_CUSTOMER_SCALE_AMOUNT"; public const string PREFERENCE_FIRE_SCALE_AMOUNT = "PREFERENCE_FIRE_SCALE_AMOUNT"; public const string PREFERENCE_PATIENCE_SCALE_AMOUNT = "PREFERENCE_PATIENCE_SCALE_AMOUNT"; public static KitchenLogger Logger; public static PreferenceManager manager; public static int MaxPlayers = 100; public Mod() : base(MOD_GUID, MOD_NAME, MOD_AUTHOR, MOD_VERSION, MOD_GAMEVERSION, Assembly.GetExecutingAssembly()) { } protected override void OnInitialise() { Logger.LogWarning($"{MOD_GUID} v{MOD_VERSION} in use!"); } protected override void OnUpdate() { } protected override void OnPostActivate(KitchenMods.Mod mod) { Logger = InitLogger(); manager = new PreferenceManager("mmokitchen"); manager.RegisterPreference(new PreferenceInt(PREFERENCE_REQUIRED_CONSENT_PERCENTAGE, 100)); manager.RegisterPreference(new PreferenceBool(PREFERENCE_SCALE_ABOVE_4_PLAYERS, true)); manager.RegisterPreference(new PreferenceFloat(PREFERENCE_CUSTOMER_SCALE_AMOUNT, 1f)); manager.RegisterPreference(new PreferenceFloat(PREFERENCE_FIRE_SCALE_AMOUNT, 1f)); manager.RegisterPreference(new PreferenceFloat(PREFERENCE_PATIENCE_SCALE_AMOUNT, 1f)); manager.Load(); manager.Save(); MainMenuPreferencesesMenu.RegisterMenu(MOD_NAME, typeof(PreferenceMenu)); PauseMenuPreferencesesMenu.RegisterMenu(MOD_NAME, typeof(PreferenceMenu)); BasePreferencesMenu.RegisterUsableMenu(typeof(PreferenceMenu)); } } }