public void Awake() { LogCore.logger = Logger; Assets.PopulateAssets(); Assets.ApplyShaders(); cfgFile = new ConfigFile(Path.Combine(Paths.ConfigPath, ModGuid + ".cfg"), true); LogCore.LogD("Adding Monsters..."); /* * masterMonsterList = T2Module.InitAll<MonsterBoilerplate>(new T2Module.ModInfo * { * displayName = "ForgottenFoes", * longIdentifier = "ForgottenFoes", * shortIdentifier = "FF", * mainConfigFile = cfgFile * }); * T2Module.SetupAll_PluginAwake(masterMonsterList);*/ var ItemTypes = Assembly.GetExecutingAssembly().GetTypes().Where(type => !type.IsAbstract && type.IsSubclassOf(typeof(EnemyBuilderNew))); foreach (var itemType in ItemTypes) { EnemyBuilderNew item = (EnemyBuilderNew)System.Activator.CreateInstance(itemType); LogCore.LogI(item); if (ValidateEnemy(item, enemies)) { item.Create(cfgFile); } } LogCore.LogD("Adding Monsters Complete."); }
internal bool ValidateEnemy(EnemyBuilderNew item, List <EnemyBuilderNew> itemList) { var enabled = Config.Bind <bool>("Item: " + item.MonsterName, "Enable Item?", true, "Should this item appear in runs?").Value; if (enabled) { itemList.Add(item); } return(enabled); }