private void ModLoaded(IModV1 modInstance, IModConfigV1 modConfig) { if (modConfig.ModId == HookModId) { SetupController(); } }
/// <summary> /// Entry point for your mod. /// </summary> public void StartEx(IModLoaderV1 loaderApi, IModConfigV1 modConfig) { #if DEBUG // Attaches debugger in debug mode; ignored in release. //Debugger.Launch(); #endif _modLoader = (IModLoader)loaderApi; _modConfig = (IModConfig)modConfig; _logger = (ILogger)_modLoader.GetLogger(); _modLoader.GetController <IReloadedHooks>().TryGetTarget(out _hooks !); // Your config file is in Config.json. // Need a different name, format or more configurations? Modify the `Configurator`. // If you do not want a config, remove Configuration folder and Config class. var configurator = new Configurator(_modLoader.GetModConfigDirectory(_modConfig.ModId)); _configuration = configurator.GetConfiguration <Config>(0); _configuration.ConfigurationUpdated += OnConfigurationUpdated; /* * Your mod code starts below. * Visit https://github.com/Reloaded-Project for additional optional libraries. */ _mod = new Mod(_hooks, _logger); }
private void ModLoaded(IModV1 mod, IModConfigV1 modConfig) { if (modConfig.ModId == RedirectorId) { SetupEventFromRedirector(); } }
public void StartEx(IModLoaderV1 loader, IModConfigV1 modConfig) { LoadTime = DateTime.Now; _controller = new Controller(); loader.AddOrReplaceController <IController>(this, _controller); }
/* Initialize/Uninitialize when Controller Hook Loading/Unloading */ private void ModLoading(IModV1 mod, IModConfigV1 modConfig) { if (modConfig.ModId == ControllerHookModId) { Initialize(); } }
private void ModUnloading(IModV1 mod, IModConfigV1 modConfig) { if (modConfig.ModId == ControllerHookModId) { DoSuspend(); } }
/// <summary> /// Entry point for your mod. /// </summary> public void StartEx(IModLoaderV1 loaderApi, IModConfigV1 modConfig) { _modLoader = (IModLoader)loaderApi; _modConfig = (IModConfig)modConfig; _logger = (ILogger)_modLoader.GetLogger(); _modLoader.GetController <IReloadedHooks>()?.TryGetTarget(out _hooks !); #if (IncludeConfig) // Your config file is in Config.json. // Need a different name, format or more configurations? Modify the `Configurator`. // If you do not want a config, remove Configuration folder and Config class. var configurator = new Configurator(_modLoader.GetModConfigDirectory(_modConfig.ModId)); _configuration = configurator.GetConfiguration <Config>(0); _configuration.ConfigurationUpdated += OnConfigurationUpdated; #endif // Please put your mod code in the class below, // use this class for only interfacing with mod loader. _mod = new Mod(new ModContext() { Logger = _logger, Hooks = _hooks, ModLoader = _modLoader, ModConfig = _modConfig, Owner = this, #if (IncludeConfig) Configuration = _configuration, #endif }); }
/* Events */ private void OnRedirectorLoaded(IModV1 arg1, IModConfigV1 arg2) { if (arg2.ModId.Equals("reloaded.universal.redirector", StringComparison.OrdinalIgnoreCase)) { _swapper.SetRedirector(_modLoader.GetController <IRedirectorController>()); } }
/// <summary> /// Add stage mods requiring this. /// </summary> private void ModLoading(IModV1 mod, IModConfigV1 modConfig) { if (modConfig.ModDependencies.Contains(ThisModId)) { _collection.AddMod(modConfig.ModId); } }
public void StartEx(IModLoaderV1 loader, IModConfigV1 config) { _modLoader = (IModLoader)loader; _modLoader.GetController <IReloadedHooks>().TryGetTarget(out _hooks); var modDirectory = _modLoader.GetDirectoryForModId(config.ModId); var configDirectory = _modLoader.GetModConfigDirectory(config.ModId); /* Your mod code starts here. */ _debugBoot = new DebugBoot(modDirectory, configDirectory, _hooks); }
private void AutoDisposePlugin(IModV1 modToRemove, IModConfigV1 modConfigToRemove) { // Note: Assumes no copying takes place. foreach (var mapping in _interfaceModMapping.ToArray()) { var mod = mapping.Value.Mod; if (mod.Equals(modToRemove)) { _interfaceModMapping.Remove(mapping.Key, out _); } } }
public void StartEx(IModLoaderV1 loader, IModConfigV1 config) { _modLoader = (IModLoader)loader; _modLoader.GetController <IReloadedHooks>().TryGetTarget(out var reloadedHooks); SDK.SDK.Init(reloadedHooks, null); /* Your mod code starts here. */ var modFolder = _modLoader.GetDirectoryForModId(config.ModId); var configFolder = _modLoader.GetModConfigDirectory(config.ModId); _graphicsEssentials = new GraphicsEssentials(modFolder, configFolder, reloadedHooks); }
/// <summary> /// Entry point for your mod. /// </summary> public async void StartEx(IModLoaderV1 loaderApi, IModConfigV1 modConfig) { // For more information about this template, please see // https://reloaded-project.github.io/Reloaded-II/ModTemplate/ _modLoader = (IModLoader)loaderApi; _modConfig = (IModConfig)modConfig; _logger = (ILogger)_modLoader.GetLogger(); // Your config file is in Config.json. // Need a different name, format or more configurations? Modify the `Configurator`. // If you do not want a config, remove Configuration folder and Config class. var configurator = new Configurator(_modLoader.GetModConfigDirectory(_modConfig.ModId)); _configuration = configurator.GetConfiguration <Config>(0); _configuration.ConfigurationUpdated += OnConfigurationUpdated; // Start the server on another thread so we don't delay startup with JIT overhead. _lnlServer = await Task.Run(() => LiteNetLibServer.Create(_logger, _modLoader, _configuration)); }
private void OnModLoading(IModV1 modInstance, IModConfigV1 modConfig) => _afsHook.OnModLoading(_modLoader.GetDirectoryForModId(modConfig.ModId));
private void AutoDisposePlugin(IModV1 modToRemove, IModConfigV1 modConfigToRemove) { // Note: Assumes no copying takes place. AutoDisposePlugin_NoInline(modToRemove); GC.Collect(); }
private void ModUnloading(IModV1 mod, IModConfigV1 config) => _redirector.Remove(config);
private void ModLoading(IModV1 mod, IModConfigV1 config) => _redirector.Add(config);
public void Add(IModConfigV1 configuration) { Add(GetRedirectFolder(configuration.ModId)); }
public void Remove(IModConfigV1 configuration) { Remove(GetRedirectFolder(configuration.ModId)); }