public override void Start() { FakePrefabHooks.Init(); ItemBuilder.Init(); HeartOfFire.Init(); DragonBreath.Init(); DragonHandController.Init(); }
public override void Start() { FakePrefabHooks.Init(); ItemBuilder.Init(); EternalPain.Init(); FailRounds.Init(); ArmorCapsAtOneItem.Init(); }
public override void Start() { new Hook(typeof(BasicStatPickup).GetMethod("Pickup", BindingFlags.Instance | BindingFlags.Public), typeof(RobotReloaded).GetMethod("PickupHook")); new Hook(typeof(Chest).GetMethod("OnBroken", BindingFlags.Instance | BindingFlags.NonPublic), typeof(RobotReloaded).GetMethod("OnBrokenHook")); FakePrefabHooks.Init(); ItemBuilder.Init(); RecycleItem.Init(); }
public override void Start() { if (GameStatsManager.Instance.GetFlag(GungeonFlags.ITEMSPECIFIC_AMMONOMICON_COMPLETE)) { Gun bastard = PickupObjectDatabase.GetById(83) as Gun; bastard.quality = PickupObject.ItemQuality.EXCLUDED; } else { Log($"Not removed due to lack of Unlock Quota.", TEXT_COLOR); } FakePrefabHooks.Init(); //ItemBuilder.Init(); //ExamplePassive.Register(); Log($"{MOD_NAME} v{VERSION} started successfully.", TEXT_COLOR); }
public override void Start() { try { ZipFilePath = this.Metadata.Archive; FilePath = this.Metadata.Directory; FakePrefabHooks.Init(); ItemBuilder.Init(); AudioResourceLoader.InitAudio(); HonkerPistol.Add(); HonkerShotgun.Add(); Hooks(); Log("Convict now has massive honkers, you sick f**k.", Color); }catch (Exception e) { Log($"{e}"); } }
public override void Start() { FakePrefabHooks.Init(); ItemBuilder.Init(); SoulVessel.Init(); ShadeCloak.Init(); Directory.CreateDirectory("HKItemsConfig"); if (!File.Exists("HKItemsConfig/nailmode.json")) { File.WriteAllText("HKItemsConfig/nailmode.json", "normal"); } if (!KnightItemsModule.AvailableNailModes.Contains(File.ReadAllText("HKItemsConfig/nailmode.json"))) { File.WriteAllText("HKItemsConfig/nailmode.json", "normal"); } KnightItemsModule.NailMode = File.ReadAllText("HKItemsConfig/nailmode.json"); Hook attackHook = new Hook( typeof(Gun).GetMethod("Attack", BindingFlags.Public | BindingFlags.Instance), typeof(KnightItemsModule).GetMethod("AttackHook") ); NailController.Add(); EmptySoul.Init(); SoulVesselGifter.Init(); KnightItemsModule.trulyVengefulSynergy = new TrulyVengefulSynergy(); KnightItemsModule.soulCloakSynergy = new SoulCloakSynergy(); KnightItemsModule.verySharpShadowSynergy = new VerySharpShadowSynergy(); KnightItemsModule.twoBladesSynergy = new TwoBladesSynergy(); GameManager.Instance.SynergyManager.synergies = GameManager.Instance.SynergyManager.synergies.Concat(new AdvancedSynergyEntry[] { trulyVengefulSynergy }).ToArray(); GameManager.Instance.SynergyManager.synergies = GameManager.Instance.SynergyManager.synergies.Concat(new AdvancedSynergyEntry[] { soulCloakSynergy }).ToArray(); GameManager.Instance.SynergyManager.synergies = GameManager.Instance.SynergyManager.synergies.Concat(new AdvancedSynergyEntry[] { verySharpShadowSynergy }).ToArray(); GameManager.Instance.SynergyManager.synergies = GameManager.Instance.SynergyManager.synergies.Concat(new AdvancedSynergyEntry[] { twoBladesSynergy }).ToArray(); Hook synergyStringHook = new Hook( typeof(StringTableManager).GetMethod("GetSynergyString", BindingFlags.Public | BindingFlags.Static), typeof(KnightItemsModule).GetMethod("SynergyStringHook") ); ETGModMainBehaviour.Instance.gameObject.AddComponent <SynergyTranslationUpdateBehaviour>(); }
public override void Start() { try { // Initialize ItemAPI FakePrefabHooks.Init(); ItemBuilder.Init(); // Add the cleaver PrivateersCleaver.Init(); // Set up the synergies for the gun CustomSynergies.Add("Cannons Away", new List <string> { "spc:privateer_cleaver", "serious_cannon" }, null, false); CustomSynergies.Add("Combo King", new List <string> { "spc:privateer_cleaver" }, new List <string> { "katana_bullets", "knife_shield", "boxing_glove", "casey", "excaliber", "fightsabre", "huntsman", "wood_beam" }, false); CustomSynergies.Add("Destination Locked", new List <string> { "spc:privateer_cleaver", "corsair" }, null, false); CustomSynergies.Add("Hyperspeed Swing", new List <string> { "spc:privateer_cleaver" }, new List <string> { "gunboots", "bionic_leg", "shotga_cola", "shotgun_coffee", "ballistic_boots" }, false); CustomSynergies.Add("Axes Don't Reload", new List <string> { "spc:privateer_cleaver", "cog_of_battle" }, null, false); ETGModConsole.Log("Privateer's Cleaver has successfully loaded."); } catch (Exception e) { ETGModConsole.Log("Privateer's Cleaver has failed to load! Please message spcreat with the following message:\n" + e); } }
public override void Start() { FakePrefabHooks.Init(); ItemBuilder.Init(); Blunderbeastblight.Init(); Beastbloodinjection.Init(); Panacea.Init(); Vampirecloak.Init(); Tabletechstealth.Init(); Glasssmelter.Init(); Heartshield.Init(); Recycloader.Init(); Dodgicitering.Init(); Tinybullets.Init(); Boombox.Init(); Challengerbelt.Init(); CrackedEgg.Init(); LockBullets.Init(); UnlockedBullets.Init(); MatryoshkaChest.Init(); Raccoon.Init(); BarrelCharger.Init(); TwinPins.Init(); Ouroboros.Init(); MaledictionRounds.Init(); CrystalBall.Init(); BlankSpellbook.Init(); CounterfeitCrown.Init(); InfinityGuontletPassive.Init(); DisciplineRing.Init(); Invoker.Init(); MindControlDevice.Init(); SharpGuon.Init(); Roshambo.Init(); LootBox.Init(); WarVase.Init(); WishCoupon.Init(); GravityGlove.Init(); OrnatePistol.Add(); GravityDisc.Add(); Leafblower.Add(); Artemis.Add(); Alchemiser.Add(); Craftsman.Add(); TrapCard.Init(); BarrierAmmolet.Init(); NOU.Init(); Infinigun.Add(); RageRifle.Add(); BrittleArmor.Init(); FragGrenade.Init(); IcySkull.Init(); RepositoryDamned.Init(); //JOKE ITEMS BigRedButtonGag.Init(); GrenadeOnAStick.Add(); Tools.Print <string>("Retrash's Custom Items Collection v" + CustomItems.version, "FFA500", true); //CUSTOM SHOP POOLS SETUP ShopTool.Init(); //SYNERGY SETUP Hook synergyStringHook = new Hook( typeof(StringTableManager).GetMethod("GetSynergyString", BindingFlags.Public | BindingFlags.Static), typeof(CustomItems).GetMethod("SynergyStringHook") ); foreach (AdvancedSynergyEntry synergy in GameManager.Instance.SynergyManager.synergies) { if (synergy.NameKey == "#RECYCLING") { synergy.OptionalItemIDs.Add(ETGMod.Databases.Items["Recycloader"].PickupObjectId); if (synergy.MandatoryGunIDs.Contains(507)) { synergy.MandatoryGunIDs.Remove(507); } if (!synergy.OptionalItemIDs.Contains(507)) { synergy.OptionalItemIDs.Add(507); } } if (synergy.NameKey == "#MINORBLANKABLES1") { synergy.OptionalItemIDs.Add(ETGMod.Databases.Items["Barrier Ammolet"].PickupObjectId); } if (synergy.NameKey == "#RELODESTAR") { synergy.OptionalItemIDs.Add(ETGMod.Databases.Items["Barrier Ammolet"].PickupObjectId); } if (synergy.NameKey == "#CRISISROCK") { synergy.OptionalItemIDs.Add(ETGMod.Databases.Items["Barrier Ammolet"].PickupObjectId); if (synergy.MandatoryItemIDs.Contains(634)) { synergy.MandatoryItemIDs.Remove(634); } if (!synergy.OptionalItemIDs.Contains(634)) { synergy.OptionalItemIDs.Add(634); } } if (synergy.NameKey == "#CEREBRAL_BROS") { synergy.OptionalItemIDs.Add(ETGMod.Databases.Items["Mind Control Device"].PickupObjectId); } if (synergy.NameKey == "#PAPERWORK") { synergy.OptionalItemIDs.Add(ETGMod.Databases.Items["Table Tech Stealth"].PickupObjectId); } if (synergy.NameKey == "#TWOEGGS") { synergy.OptionalItemIDs.Add(ETGMod.Databases.Items["Crackling Egg"].PickupObjectId); if (synergy.MandatoryItemIDs.Contains(637)) { synergy.MandatoryItemIDs.Remove(637); } if (!synergy.OptionalItemIDs.Contains(637)) { synergy.OptionalItemIDs.Add(637); } } if (synergy.NameKey == "#LEAFBUSTER") { synergy.OptionalGunIDs.Add(PickupObjectDatabase.GetByEncounterName("Verdant Blaster").PickupObjectId); if (synergy.MandatoryGunIDs.Contains(339)) { synergy.MandatoryGunIDs.Remove(339); } if (!synergy.OptionalGunIDs.Contains(339)) { synergy.OptionalGunIDs.Add(339); } } if (synergy.NameKey == "#IDOLHANDS") { synergy.OptionalItemIDs.Add(PickupObjectDatabase.GetByEncounterName("Exalted Armbow").PickupObjectId); if (synergy.MandatoryItemIDs.Contains(457)) { synergy.MandatoryItemIDs.Remove(457); } if (!synergy.OptionalItemIDs.Contains(457)) { synergy.OptionalItemIDs.Add(457); } } if (synergy.NameKey == "#YETIDUNK") { synergy.OptionalGunIDs.Add(PickupObjectDatabase.GetByEncounterName("Icy Skull").PickupObjectId); if (synergy.MandatoryGunIDs.Contains(387)) { synergy.MandatoryGunIDs.Remove(387); } if (!synergy.OptionalGunIDs.Contains(387)) { synergy.OptionalGunIDs.Add(387); } if (synergy.MandatoryGunIDs.Contains(223)) { synergy.MandatoryGunIDs.Remove(223); } if (!synergy.OptionalGunIDs.Contains(223)) { synergy.OptionalGunIDs.Add(223); } } } GameManager.Instance.SynergyManager.synergies = GameManager.Instance.SynergyManager.synergies.Concat(new AdvancedSynergyEntry[] { new CustomSynergies.VeryHungrySynergy() }).ToArray(); GameManager.Instance.SynergyManager.synergies = GameManager.Instance.SynergyManager.synergies.Concat(new AdvancedSynergyEntry[] { new CustomSynergies.SmeltingHardSynergy() }).ToArray(); GameManager.Instance.SynergyManager.synergies = GameManager.Instance.SynergyManager.synergies.Concat(new AdvancedSynergyEntry[] { new CustomSynergies.TheTinyAndBigSynergy() }).ToArray(); GameManager.Instance.SynergyManager.synergies = GameManager.Instance.SynergyManager.synergies.Concat(new AdvancedSynergyEntry[] { new CustomSynergies.StableDodgeciteRingSynergy() }).ToArray(); GameManager.Instance.SynergyManager.synergies = GameManager.Instance.SynergyManager.synergies.Concat(new AdvancedSynergyEntry[] { new CustomSynergies.SmallAndStrong() }).ToArray(); GameManager.Instance.SynergyManager.synergies = GameManager.Instance.SynergyManager.synergies.Concat(new AdvancedSynergyEntry[] { new CustomSynergies.ShopkeeperCapsuleSynergy() }).ToArray(); GameManager.Instance.SynergyManager.synergies = GameManager.Instance.SynergyManager.synergies.Concat(new AdvancedSynergyEntry[] { new CustomSynergies.DeadlyBulletsSynergy() }).ToArray(); GameManager.Instance.SynergyManager.synergies = GameManager.Instance.SynergyManager.synergies.Concat(new AdvancedSynergyEntry[] { new CustomSynergies.ChestFamilySynergy() }).ToArray(); GameManager.Instance.SynergyManager.synergies = GameManager.Instance.SynergyManager.synergies.Concat(new AdvancedSynergyEntry[] { new CustomSynergies.StormChargedSynergy() }).ToArray(); GameManager.Instance.SynergyManager.synergies = GameManager.Instance.SynergyManager.synergies.Concat(new AdvancedSynergyEntry[] { new CustomSynergies.TheGoodSynergy() }).ToArray(); GameManager.Instance.SynergyManager.synergies = GameManager.Instance.SynergyManager.synergies.Concat(new AdvancedSynergyEntry[] { new CustomSynergies.TheBadSynergy() }).ToArray(); GameManager.Instance.SynergyManager.synergies = GameManager.Instance.SynergyManager.synergies.Concat(new AdvancedSynergyEntry[] { new CustomSynergies.SoulFiendSynergy() }).ToArray(); GameManager.Instance.SynergyManager.synergies = GameManager.Instance.SynergyManager.synergies.Concat(new AdvancedSynergyEntry[] { new CustomSynergies.MagicTablesSynergy() }).ToArray(); GameManager.Instance.SynergyManager.synergies = GameManager.Instance.SynergyManager.synergies.Concat(new AdvancedSynergyEntry[] { new CustomSynergies.BlankEnchanterSynergy() }).ToArray(); GameManager.Instance.SynergyManager.synergies = GameManager.Instance.SynergyManager.synergies.Concat(new AdvancedSynergyEntry[] { new CustomSynergies.EvenSharperSynergy() }).ToArray(); GameManager.Instance.SynergyManager.synergies = GameManager.Instance.SynergyManager.synergies.Concat(new AdvancedSynergyEntry[] { new CustomSynergies.WarBarrelSynergy() }).ToArray(); GameManager.Instance.SynergyManager.synergies = GameManager.Instance.SynergyManager.synergies.Concat(new AdvancedSynergyEntry[] { new CustomSynergies.FourthWishSynergy() }).ToArray(); GameManager.Instance.SynergyManager.synergies = GameManager.Instance.SynergyManager.synergies.Concat(new AdvancedSynergyEntry[] { new CustomSynergies.TrapperCardSynergy() }).ToArray(); GameManager.Instance.SynergyManager.synergies = GameManager.Instance.SynergyManager.synergies.Concat(new AdvancedSynergyEntry[] { new CustomSynergies.YesRSynergy() }).ToArray(); GameManager.Instance.SynergyManager.synergies = GameManager.Instance.SynergyManager.synergies.Concat(new AdvancedSynergyEntry[] { new CustomSynergies.InfinityGuontletSynergy() }).ToArray(); GameManager.Instance.SynergyManager.synergies = GameManager.Instance.SynergyManager.synergies.Concat(new AdvancedSynergyEntry[] { new CustomSynergies.TheUglySynergy() }).ToArray(); GameManager.Instance.SynergyManager.synergies = GameManager.Instance.SynergyManager.synergies.Concat(new AdvancedSynergyEntry[] { new CustomSynergies.ArtemisSynergy() }).ToArray(); GameManager.Instance.SynergyManager.synergies = GameManager.Instance.SynergyManager.synergies.Concat(new AdvancedSynergyEntry[] { new CustomSynergies.AlchemySynergy() }).ToArray(); GameManager.Instance.SynergyManager.synergies = GameManager.Instance.SynergyManager.synergies.Concat(new AdvancedSynergyEntry[] { new CustomSynergies.CardHeartSynergy() }).ToArray(); GameManager.Instance.SynergyManager.synergies = GameManager.Instance.SynergyManager.synergies.Concat(new AdvancedSynergyEntry[] { new CustomSynergies.GForceSynergy() }).ToArray(); GameManager.Instance.SynergyManager.synergies = GameManager.Instance.SynergyManager.synergies.Concat(new AdvancedSynergyEntry[] { new CustomSynergies.GreedyJarsSynergy() }).ToArray(); GameManager.Instance.SynergyManager.synergies = GameManager.Instance.SynergyManager.synergies.Concat(new AdvancedSynergyEntry[] { new CustomSynergies.EggRollSynergy() }).ToArray(); GameManager.Instance.SynergyManager.synergies = GameManager.Instance.SynergyManager.synergies.Concat(new AdvancedSynergyEntry[] { new CustomSynergies.FutureSightSynergy() }).ToArray(); GameManager.Instance.SynergyManager.synergies = GameManager.Instance.SynergyManager.synergies.Concat(new AdvancedSynergyEntry[] { new CustomSynergies.TigerGenieSynergy() }).ToArray(); GameManager.Instance.SynergyManager.synergies = GameManager.Instance.SynergyManager.synergies.Concat(new AdvancedSynergyEntry[] { new CustomSynergies.SoulTriggerSynergy() }).ToArray(); GameManager.Instance.SynergyManager.synergies = GameManager.Instance.SynergyManager.synergies.Concat(new AdvancedSynergyEntry[] { new CustomSynergies.IceAgeSynergy() }).ToArray(); GameManager.Instance.SynergyManager.synergies = GameManager.Instance.SynergyManager.synergies.Concat(new AdvancedSynergyEntry[] { new CustomSynergies.GoldenRatioSynergy() }).ToArray(); GameManager.Instance.SynergyManager.synergies = GameManager.Instance.SynergyManager.synergies.Concat(new AdvancedSynergyEntry[] { new CustomSynergies.AngerIssuesSynergy() }).ToArray(); GameManager.Instance.SynergyManager.synergies = GameManager.Instance.SynergyManager.synergies.Concat(new AdvancedSynergyEntry[] { new CustomSynergies.AbsoluteChaosSynergy() }).ToArray(); GameManager.Instance.SynergyManager.synergies = GameManager.Instance.SynergyManager.synergies.Concat(new AdvancedSynergyEntry[] { new CustomSynergies.ArmorMaintenanceSynergy() }).ToArray(); GameManager.Instance.SynergyManager.synergies = GameManager.Instance.SynergyManager.synergies.Concat(new AdvancedSynergyEntry[] { new CustomSynergies.FormerGlorySynergy() }).ToArray(); GameManager.Instance.SynergyManager.synergies = GameManager.Instance.SynergyManager.synergies.Concat(new AdvancedSynergyEntry[] { new CustomSynergies.RockPaperCrossBow() }).ToArray(); GameManager.Instance.SynergyManager.synergies = GameManager.Instance.SynergyManager.synergies.Concat(new AdvancedSynergyEntry[] { new CustomSynergies.BatterUpSynergy() }).ToArray(); GameManager.Instance.SynergyManager.synergies = GameManager.Instance.SynergyManager.synergies.Concat(new AdvancedSynergyEntry[] { new CustomSynergies.ChuckingNadesSynergy() }).ToArray(); GameManager.Instance.SynergyManager.synergies = GameManager.Instance.SynergyManager.synergies.Concat(new AdvancedSynergyEntry[] { new CustomSynergies.RocketPitchSynergy() }).ToArray(); GameManager.Instance.SynergyManager.synergies = GameManager.Instance.SynergyManager.synergies.Concat(new AdvancedSynergyEntry[] { new CustomSynergies.FreezePlusSynergy() }).ToArray(); GameManager.Instance.SynergyManager.synergies = GameManager.Instance.SynergyManager.synergies.Concat(new AdvancedSynergyEntry[] { new CustomSynergies.FrozenCoreSynergy() }).ToArray(); GameManager.Instance.SynergyManager.synergies = GameManager.Instance.SynergyManager.synergies.Concat(new AdvancedSynergyEntry[] { new CustomSynergies.BoneheadSynergy() }).ToArray(); GameManager.Instance.SynergyManager.synergies = GameManager.Instance.SynergyManager.synergies.Concat(new AdvancedSynergyEntry[] { new CustomSynergies.ToolKitSynergy() }).ToArray(); GameManager.Instance.SynergyManager.synergies = GameManager.Instance.SynergyManager.synergies.Concat(new AdvancedSynergyEntry[] { new CustomSynergies.PotceptionSynergy() }).ToArray(); GameManager.Instance.SynergyManager.synergies = GameManager.Instance.SynergyManager.synergies.Concat(new AdvancedSynergyEntry[] { new CustomSynergies.AntiquatedSynergy() }).ToArray(); GameManager.Instance.SynergyManager.synergies = GameManager.Instance.SynergyManager.synergies.Concat(new AdvancedSynergyEntry[] { new CustomSynergies.DendrologySynergy() }).ToArray(); GameManager.Instance.SynergyManager.synergies = GameManager.Instance.SynergyManager.synergies.Concat(new AdvancedSynergyEntry[] { new CustomSynergies.PlagueDoctorSynergy() }).ToArray(); GameManager.Instance.SynergyManager.synergies = GameManager.Instance.SynergyManager.synergies.Concat(new AdvancedSynergyEntry[] { new CustomSynergies.ControllerSynergy() }).ToArray(); GameManager.Instance.SynergyManager.synergies = GameManager.Instance.SynergyManager.synergies.Concat(new AdvancedSynergyEntry[] { new CustomSynergies.ChickenSeerSynergy() }).ToArray(); SynergyFormInitialiser.AddSynergyForms(); }
public override void Start() { try { FakePrefabHooks.Init(); ItemBuilder.Init(); PlayerEventAdder.Init(); UnlockHookInators.AddHooks(); MagmaticBlood.Init(); MimicSkin.Init(); //Added to the doc SaplingBullets.Init(); //Added to the doc SlightlyLargerBullets.Init(); //Added to the doc WarriorsSyringe.Init(); //Added to the doc VultureFeather.Init(); //Added to the doc StraponRPG.Init(); //Added to the doc Jeremy.Init(); //Added to the doc Gasoline.Init(); //Added to the doc CatSnack.Init(); //Added to the doc ClassicCatSnack.Init(); JunkSynthesizer.Init(); WyrmBlood.Init(); //Added to the doc //GreenCandy.Init(); //KeyCandy.Init(); //GoldenCandy.Init(); //BlueCandy.Init(); //RedCandy.Init(); //HeartCandy.Init(); //MonsterCandy.Init(); ImprovedCandies.CandiesInit(); ImprovedCandies.PositiveEffectsInit(); //TrickOTreater.Init(); //Added to the doc BlackSkull.Init(); StoneSword.Init(); StoneAmmolet.Init(); Randy.Init(); BeeGun.Add(); //BloodyCannon.Add(); //WindStaff.Add(); RedAndWhite.Add(); RoyalShotgun.Add(); //Shotstool.Add(); RescueRanger.Add(); NuclearShotgun.Add(); NuclearAmmoPickup.Init(); SweeperGun.Add(); MaliciousRailcannon.Add(); Superbug.Add(); PetrifyingMirror.Init(); EnchantedTome.Init(); BronzeKey.Init(); StackOfCash.Init(); ExecutionShells.Init(); BloodBullets.Init(); HoodedShells.Init(); ClockworkCog.Init(); HighPriestCloak.Init(); LuckyCoin.Init(); LuckyHorseshoe.Init(); ToxicFungus.Init(); PurpleGuonStone.Init(); GarbageBin.Init(); ColdAmmo.Init(); MaidenPlating.Init(); PlagueBullets.Init(); CrownOfBlood.Init(); GalacticChest.Init(); Bravery.Init(); RaidersAxe.Init(); BulletSynthesizer.Init(); ElectricRounds.Init(); ThunderRounds.Init(); ToxicHoneycomb.Init(); BoomerangBullets.Init(); OilyGreaves.Init(); ShadyChest.Init(); //CandyBag.Init(); MinerHelmet.Init(); Depthmeter.Init(); Smore.Init(); KeyDoubler.Init(); BlankDoubler.Init(); CursedCandle.Init(); MyNameIsYoshikageKira.Init(); MythrilBullets.Init(); Charcoal.Init(); CodexUmbra.Init(); BloodyDice.Init(); StarFruit.Init(); HeartyKey.Init(); DeadlyKnife.Init(); Overloader.Init(); Sushi.Init(); AmmoEnhancer.Init(); BanditHat.Init(); Ushanka.Init(); BigBoom.Init(); Seashell.Init(); //GoldenBox.Init(); CobaltCoin.Init(); RingOfWealth.Init(); QuartzCrystal.Init(); DeadRinger.Init(); RoyalCapacitator.Init(); Cookbook.Init(); ParrotsFeather.Init(); Soulbauble.Init(); FlameWisp.Init(); CatsEye.Init(); GunPermit.Init(); DormantStabiliser.Init(); CaveCarrot.Init(); BlueAlbum.Init(); DoubleABattery.Init(); ScarecrowsHead.Init(); OnyxBracelet.Init(); LemonPig.Init(); IfritsHorn.Init(); EnderHelmet.Init(); BabyGoodRobot.Init(); CaptainsBrooch.Init(); SoulInator.Init(); TwoOfHearts.Init(); ParasiticFungus.Init(); ExperimentalRocketLauncher.Init(); AbyssalShield.Init(); //Coil.Init(); //Restock.Init(); //ChainOfBeing.Init(); //RangeCrystal.Init(); //BloodyLockpick.Init(); //Bitey.Init(); //JestersHat.Init(); //PrismaticLexicon.Init(); //GhoulBullets.Init(); IncubusStartingPassive.Init(); IncubusStartingActive.Init(); /*BlueExplosive.Init(); * RedExplosive.Init(); * WhiteExplosive.Init(); * SwarmSneak.Init(); * YVSwarmPickup.Init(); * WhiteDamageUp.Init(); * Drone.Init();*/ ETGModConsole.Commands.AddGroup("psmdebug", delegate(string[] args) { Log("Please specify a command.", TEXT_COLOR); }); ETGModConsole.Commands.GetGroup("psmdebug").AddUnit("guaranteeproc", delegate(string[] args) { DebugChance = !DebugChance; Log($"Guarantee Proc is now: {DebugChance}", TEXT_COLOR); }); ETGModConsole.Commands.GetGroup("psmdebug").AddUnit("unlocks", delegate(string[] args) { int totalItems = 0; int unlockedItems = 0; List <PickupObject> list = new List <PickupObject>(); List <PickupObject> list2 = new List <PickupObject>(); foreach (PickupObject item in ItemBuilder.AddedItems) { EncounterTrackable trolling = item.GetComponent <EncounterTrackable>(); if (trolling && trolling.prerequisites != null && trolling.prerequisites.Length > 0) { totalItems++; if (trolling.PrerequisitesMet()) { unlockedItems++; list2.Add(item); } else { list.Add(item); } } } Log($"Unlocked: {unlockedItems}/{totalItems}", TEXT_COLOR); if (list2.Count > 0) { Log("Items Unlocked:", TEXT_COLOR); foreach (PickupObject item in list2) { Log(item.name, TEXT_COLOR); } } if (list.Count > 0) { Log("Items Left:", TEXT_COLOR); foreach (PickupObject item in list) { Log($"{item.name}: {Unlocks[item.PickupObjectId]}", TEXT_COLOR); } } }); ETGModConsole.Commands.GetGroup("psmdebug").AddUnit("getcustommaximums", delegate(string[] args) { Log($"Most Damage Had: {DaveAPIManager.GetPlayerMaximum(CustomTrackedMaximums.MAXIMUM_DAMAGE)}", TEXT_COLOR); Log($"Most Health Had: {DaveAPIManager.GetPlayerMaximum(CustomTrackedMaximums.MAXIMUM_HEALTH)}", TEXT_COLOR); Log($"Most Money Had: {DaveAPIManager.GetPlayerMaximum(CustomTrackedMaximums.MOST_MONEY)}", TEXT_COLOR); }); } catch (Exception ex) { itemsLoad = $"{ex}"; } ETGMod.StartGlobalCoroutine(IfOtherModsExist()); }
public override void Start() { try { ETGModConsole.Log("Once More Into The Breach started initialising..."); //Rooms ZipFilePath = this.Metadata.Archive; FilePath = this.Metadata.Directory + "/rooms"; ModName = this.Metadata.Name; //Tools and Toolboxes StaticReferences.Init(); ExoticPlaceables.Init(); DungeonHandler.Init(); Tools.Init(); ShrineFakePrefabHooks.Init(); ShrineFactory.Init(); OldShrineFactory.Init(); FakePrefabHooks.Init(); ItemBuilder.Init(); CharApi.Init("nn"); CustomClipAmmoTypeToolbox.Init(); EnemyTools.Init(); NpcApi.Hooks.Init(); EnemyAPI.Hooks.Init(); SaveAPIManager.Setup("nn"); AudioResourceLoader.InitAudio(); CurseManager.Init(); ETGModMainBehaviour.Instance.gameObject.AddComponent <GlobalUpdate>(); ETGModMainBehaviour.Instance.gameObject.AddComponent <CustomDarknessHandler>(); GameOfLifeHandler.Init(); //ETGModMainBehaviour.Instance.gameObject.AddComponent<GameOfLifeHandler>(); //ETGModConsole.Log(Assembly.GetExecutingAssembly().FullName); //Challenges Challenges.Init(); //Hooks n Shit PlayerToolsSetup.Init(); EnemyHooks.InitEnemyHooks(); CompanionisedEnemyUtility.InitHooks(); MiscUnlockHooks.InitHooks(); FloorAndGenerationToolbox.Init(); PedestalHooks.Init(); ExplosionHooks.Init(); ChestToolbox.Inithooks(); UIHooks.Init(); ComplexProjModBeamCompatibility.Init(); ReloadBreachShrineHooks.Init(); metadata = this.Metadata; //VFX Setup VFXToolbox.InitVFX(); EasyVFXDatabase.Init(); //Needs to occur before goop definition ShadeFlightHookFix.Init(); //Status Effect Setup StaticStatusEffects.InitCustomEffects(); PlagueStatusEffectSetup.Init(); Confusion.Init(); //Goop Setup EasyGoopDefinitions.DefineDefaultGoops(); DoGoopEffectHook.Init(); //Commands and Other Console Utilities Commands.Init(); //Hats HatUtility.NecessarySetup(); HatDefinitions.Init(); //Gamemodes AllJammedState.Init(); JammedChests.Init(); //Exotic Object Shit //VFX LockdownStatusEffect.Initialise(); //Testing / Debug Items ActiveTestingItem.Init(); PassiveTestingItem.Init(); BulletComponentLister.Init(); ObjectComponentLister.Init(); //-----------------------------------------------------ITEMS GET INITIALISED #region ItemInitialisation //Character Starters ShadeHand.Init(); ShadeHeart.Init(); //Egg Salad and Prima Bean can go here, because they were the first EggSalad.Init(); PrimaBean.Init(); //Bullet modifiers BashingBullets.Init(); TitanBullets.Init(); MistakeBullets.Init(); FiftyCalRounds.Init(); UnengravedBullets.Init(); EngravedBullets.Init(); HardReloadBullets.Init(); NitroBullets.Init(); SupersonicShots.Init(); GlassRounds.Init(); Junkllets.Init(); BloodthirstyBullets.Init(); CleansingRounds.Init(); HallowedBullets.Init(); PromethianBullets.Init(); EpimethianBullets.Init(); RandoRounds.Init(); IngressBullets.Init(); //Unfinished HematicRounds.Init(); FullArmourJacket.Init(); MirrorBullets.Init(); CrowdedClip.Init(); BashfulShot.Init(); OneShot.Init(); BulletBullets.Init(); AntimatterBullets.Init(); SpectreBullets.Init(); Tabullets.Init(); TierBullets.Init(); //Unfinished BombardierShells.Init(); GildedLead.Init(); DemoterBullets.Init(); Voodoollets.Init(); TracerRound.Init(); EndlessBullets.Init(); HellfireRounds.Init(); Birdshot.Init(); Unpredictabullets.Init(); WarpBullets.Init(); BulletsWithGuns.Init(); LaserBullets.Init(); BalancedBullets.Init(); //Unfinished WoodenBullets.Init(); ComicallyGiganticBullets.Init(); //Excluded KnightlyBullets.Init(); EmptyRounds.Init(); LongswordShot.Init(); DrillBullets.Init(); FoamDarts.Init(); BatterBullets.Init(); ElectrumRounds.Init(); BreachingRounds.Init(); MagnetItem.Init(); EargesplittenLoudenboomerRounds.Init(); TheShell.Init(); //Status Effect Bullet Mods SnailBullets.Init(); LockdownBullets.Init(); PestiferousLead.Init(); Shrinkshot.Init(); //Volley Modifying Bullet Mods Splattershot.Init(); BackwardsBullets.Init(); CrossBullets.Init(); ShadeShot.Init(); //Insta-Kill Bullet Modifiers MinersBullets.Init(); AntimagicRounds.Init(); AlkaliBullets.Init(); ShutdownShells.Init(); ERRORShells.Init(); OsteoporosisBullets.Init(); //NonBullet Stat Changers MicroAIContact.Init(); LuckyCoin.Init(); IronSights.Init(); Lewis.Init(); MysticOil.Init(); VenusianBars.Init(); NumberOneBossMug.Init(); LibramOfTheChambers.Init(); OrganDonorCard.Init(); GlassGod.Init(); ChaosRuby.Init(); BlobulonRage.Init(); OverpricedHeadband.Init(); GunslingerEmblem.Init(); MobiusClip.Init(); ClipOnAmmoPouch.Init(); JawsOfDefeat.Init(); //Armour ArmourBandage.Init(); GoldenArmour.Init(); ExoskeletalArmour.Init(); PowerArmour.Init(); ArmouredArmour.Init(); //Consumable Givers LooseChange.Init(); SpaceMetal.Init(); //Blank Themed Items TrueBlank.Init(); FalseBlank.Init(); SpareBlank.Init(); OpulentBlank.Init(); GrimBlanks.Init(); NNBlankPersonality.Init(); Blombk.Init(); Blankh.Init(); //Key Themed Items BlankKey.Init(); SharpKey.Init(); SpareKey.Init(); KeyChain.Init(); KeyBullwark.Init(); KeyBulletEffigy.Init(); FrostKey.Init(); ShadowKey.Init(); Keygen.Init(); CursedTumbler.Init(); //Ammo Box Themed Items TheShellactery.Init(); BloodyAmmo.Init(); MengerAmmoBox.Init(); AmmoTrap.Init(); //Boxes and Stuff BloodyBox.Init(); MaidenShapedBox.Init(); Toolbox.Init(); PocketChest.Init(); DeliveryBox.Init(); Wonderchest.Init(); //Heart themed items HeartPadlock.Init(); Mutagen.Init(); ForsakenHeart.Init(); HeartOfGold.Init(); GooeyHeart.Init(); ExaltedHeart.Init(); CheeseHeart.Init(); TinHeart.Init(); //Chambers BarrelChamber.Init(); GlassChamber.Init(); FlameChamber.Init(); Recyclinder.Init(); Nitroglycylinder.Init(); SpringloadedChamber.Init(); WitheringChamber.Init(); HeavyChamber.Init(); CyclopeanChamber.Init(); //Table Techs TableTechTable.Init(); TableTechSpeed.Init(); TableTechInvulnerability.Init(); TableTechAmmo.Init(); TableTechGuon.Init(); TableTechNology.Init(); UnsTableTech.Init(); //Guon Stones WoodGuonStone.Init(); YellowGuonStone.Init(); GreyGuonStone.Init(); GoldGuonStone.Init(); BrownGuonStone.Init(); CyanGuonStone.Init(); IndigoGuonStone.Init(); SilverGuonStone.Init(); MaroonGuonStone.Init(); UltraVioletGuonStone.Init(); InfraredGuonStone.Init(); RainbowGuonStone.Init(); KaleidoscopicGuonStone.Init(); GuonBoulder.Init(); BloodglassGuonStone.Init(); //Ammolets GlassAmmolet.Init(); WickerAmmolet.Init(); FuriousAmmolet.Init(); SilverAmmolet.Init(); IvoryAmmolet.Init(); KinAmmolet.Init(); Autollet.Init(); Keymmolet.Init(); Ammolock.Init(); HepatizonAmmolet.Init(); BronzeAmmolet.Init(); PearlAmmolet.Init(); NeutroniumAmmolet.Init(); Shatterblank.Init(); // Boots CycloneCylinder.Init(); BootLeg.Init(); BlankBoots.Init(); BulletBoots.Init(); //Bracelets and Jewelry DiamondBracelet.Init(); PearlBracelet.Init(); PanicPendant.Init(); GunknightAmulet.Init(); AmuletOfShelltan.Init(); //Rings RingOfOddlySpecificBenefits.Init(); FowlRing.Init(); RingOfAmmoRedemption.Init(); RiskyRing.Init(); WidowsRing.Init(); ShadowRing.Init(); RingOfInvisibility.Init(); //Holsters BlackHolster.Init(); TheBeholster.Init(); HiveHolster.Init(); ShoulderHolster.Init(); ArtilleryBelt.Init(); BulletShuffle.Init(); //Companions MolotovBuddy.Init(); BabyGoodChanceKin.Init(); Potty.Init(); Peanut.Init(); DarkPrince.Init(); Diode.Init(); DroneCompanion.Init(); GregTheEgg.Init(); FunGuy.Init(); BabyGoodDet.Init(); AngrySpirit.Init(); Gusty.Init(); ScrollOfExactKnowledge.Init(); LilMunchy.Init(); //Potions / Jars SpeedPotion.Init(); LovePotion.Init(); HoneyPot.Init(); ChemicalBurn.Init(); WitchsBrew.Init(); Nigredo.Init(); Albedo.Init(); Citrinitas.Init(); Rubedo.Init(); HoleyWater.Init(); //Remotes ReinforcementRadio.Init(); //Medicine BloodThinner.Init(); BoosterShot.Init(); ShotInTheArm.Init(); //Knives and Blades DaggerOfTheAimgel.Init(); CombatKnife.Init(); Bayonet.Init(); //Books BookOfMimicAnatomy.Init(); KalibersPrayer.Init(); GunidaeSolvitHaatelis.Init(); //Maps MapFragment.Init(); TatteredMap.Init(); //Clothing CloakOfDarkness.Init(); TimeFuddlersRobe.Init(); //Eyes CartographersEye.Init(); BloodshotEye.Init(); ShadesEye.Init(); KalibersEye.Init(); //Hands Lefthandedness.Init(); NecromancersRightHand.Init(); //Bombs InfantryGrenade.Init(); DiceGrenade.Init(); //True Misc Lvl2Molotov.Init(); GoldenAppleCore.Init(); AppleCore.Init(); AppleActive.Init(); LibationtoIcosahedrax.Init(); //Unfinished BagOfHolding.Init(); ItemCoupon.Init(); IdentityCrisis.Init(); LiquidMetalBody.Init(); GunGrease.Init(); BomberJacket.Init(); DragunsScale.Init(); GTCWTVRP.Init(); BlightShell.Init(); BulletKinPlushie.Init(); Kevin.Init(); PurpleProse.Init(); RustyCasing.Init(); HikingPack.Init(); GunpowderPheromones.Init(); GunsmokePerfume.Init(); Pestilence.Init(); ElevatorButton.Init(); Bullut.Init(); GSwitch.Init(); FaultyHoverboots.Init(); //Unfinished AcidAura.Init(); HornedHelmet.Init(); RocketMan.Init(); Roulette.Init(); //Unfinished FinishedBullet.Init(); ChanceKinEffigy.Init(); MagickeCauldron.Init(); Bombinomicon.Init(); ClaySculpture.Init(); GracefulGoop.Init(); MrFahrenheit.Init(); MagicQuiver.Init(); FocalLenses.Init(); MagicMissile.Init(); AmberDie.Init(); ObsidianPistol.Init(); Showdown.Init(); LootEngineItem.Init(); Ammolite.Init(); PortableHole.Init(); CardinalsMitre.Init(); GunjurersBelt.Init(); GoomperorsCrown.Init(); ChemGrenade.Init(); EightButton.Init(); TitaniumClip.Init(); PaperBadge.Init(); Permafrost.Init(); GlassShard.Init(); EqualityItem.Init(); BitBucket.Init(); Eraser.Init(); TackShooter.Init(); Moonrock.Init(); Telekinesis.Init(); TabletOfOrder.Init(); LeadSoul.Init(); LeadOfLife.Init(); AWholeBulletKin.Init(); #endregion //-----------------------------------------------------GUNS GET INITIALISED #region GunInitialisation //UNFINISHED / TEST GUNS WailingMagnum.Add(); Defender.Add(); TestGun.Add(); Gunycomb.Add(); GlobbitSMALL.Add(); GlobbitMED.Add(); GlobbitMEGA.Add(); //GUNS //CHARACTERSTARTERS ElderMagnum.Add(); //REVOLVERS FlayedRevolver.Add(); G20.Add(); MamaGun.Add(); LovePistol.Add(); DiscGun.Add(); Repeatovolver.Add(); Pista.Add(); NNGundertale.Add(); DiamondGun.Add(); NNMinigun.Add(); ShroomedGun.Add(); GoldenRevolver.Add(); Nocturne.Add(); BackWarder.Add(); Redhawk.Add(); ToolGun.Add(); //GENERAL HANDGUNS StickGun.Add(); Glock42.Add(); StarterPistol.Add(); PopGun.Add(); UnusCentum.Add(); StunGun.Add(); CopperSidearm.Add(); Rekeyter.Add(); HotGlueGun.Add(); UpNUp.Add(); RedRobin.Add(); VariableGun.Add(); CrescendoBlaster.Add(); Glasster.Add(); HandGun.Add(); Viper.Add(); DiamondCutter.Add(); MarchGun.Add(); RebarGun.Add(); MinuteGun.Add(); Ulfberht.Add(); HeadOfTheOrder.Add(); GunOfAThousandSins.Add(); DoubleGun.Add(); //SHOTGUNS JusticeGun.Add(); Orgun.Add(); Octagun.Add(); ClownShotgun.Add(); Ranger.Add(); RustyShotgun.Add(); TheBride.Add(); TheGroom.Add(); IrregularShotgun.Add(); GrenadeShotgun.Add(); Jackhammer.Add(); SaltGun.Add(); SoapGun.Add(); //CANNONS Felissile.Add(); HandCannon.Add(); Lantaka.Add(); GreekFire.Add(); EmberCannon.Add(); ElysiumCannon.Add(); DisplacerCannon.Add(); //SCI-FI GUNS Blasmaster.Add(); St4ke.Add(); RedBlaster.Add(); BeamBlade.Add(); Neutrino.Add(); Rico.Add(); TheThinLine.Add(); RocketPistol.Add(); Repetitron.Add(); Dimensionaliser.Add(); Purpler.Add(); VacuumGun.Add(); Oxygun.Add(); TriBeam.Add(); KineticBlaster.Add(); LaserWelder.Add(); QBeam.Add(); HighVelocityRifle.Add(); Demolitionist.Add(); PumpChargeShotgun.Add(); TheOutbreak.Add(); Multiplicator.Add(); PunishmentRay.Add(); YBeam.Add(); WallRay.Add(); BolaGun.Add(); AlphaBeam.Add(); Glazerbeam.Add(); StasisRifle.Add(); Gravitron.Add(); Ferrobolt.Add(); TauCannon.Add(); GravityGun.Add(); GalaxyCrusher.Add(); //ARC Weapons ARCPistol.Add(); ARCShotgun.Add(); ARCRifle.Add(); ARCTactical.Add(); ARCCannon.Add(); //BOWS AND CROSSBOWS IceBow.Add(); Boltcaster.Add(); Clicker.Add(); //ANTIQUES WheelLock.Add(); Welrod.Add(); Welgun.Add(); TheLodger.Add(); Gonne.Add(); Hwacha.Add(); FireLance.Add(); HandMortar.Add(); GrandfatherGlock.Add(); GatlingGun.Add(); Blowgun.Add(); Gaxe.Add(); WoodenHorse.Add(); AgarGun.Add(); //KNIVES AND BLADES Carnwennan.Add(); MantidAugment.Add(); //REALISTIC GUNS HeatRay.Add(); BarcodeScanner.Add(); AntimaterielRifle.Add(); Primos1.Add(); DartRifle.Add(); AM0.Add(); RiskRifle.Add(); RiotGun.Add(); Kalashnirang.Add(); MaidenRifle.Add(); Blizzkrieg.Add(); Copygat.Add(); Skorpion.Add(); HeavyAssaultRifle.Add(); DynamiteLauncher.Add(); MarbledUzi.Add(); BurstRifle.Add(); OlReliable.Add(); //MISSILE LAUNCHERS BottleRocket.Add(); NNBazooka.Add(); BoomBeam.Add(); Pillarocket.Add(); //ANIMAL / ORGANIC GUNS SporeLauncher.Add(); PoisonDartFrog.Add(); Corgun.Add(); FungoCannon.Add(); PhaserSpiderling.Add(); Guneonate.Add(); KillithidTendril.Add(); Gunger.Add(); SickWorm.Add(); MiniMonger.Add(); CarrionFormeTwo.Add(); CarrionFormeThree.Add(); Carrion.Add(); UterinePolyp.Add(); Wrinkler.Add(); //BLADES ButchersKnife.Add(); RapidRiposte.Add(); //FUN GUNS Gumgun.Add(); Glooper.Add(); Accelerator.Add(); PaintballGun.Add(); Converter.Add(); Spiral.Add(); Gunshark.Add(); FingerGuns.Add(); OBrienFist.Add(); GolfRifle.Add(); Pandephonium.Add(); Sweeper.Add(); DeskFan.Add(); Pencil.Add(); SquarePeg.Add(); Ringer.Add(); Snaker.Add(); GayK47.Add(); DecretionCarbine.Add(); RC360.Add(); UziSpineMM.Add(); Autogun.Add(); Rebondir.Add(); BigShot.Add(); W3irdstar.Add(); Seismograph.Add(); BioTranstater2100.Add(); //MAGICAL GUNS Icicle.Add(); GunjurersStaff.Add(); InitiateWand.Add(); LightningRod.Add(); OrbOfTheGun.Add(); SpearOfJustice.Add(); Protean.Add(); BulletBlade.Add(); Bookllet.Add(); Lorebook.Add(); Beastclaw.Add(); Bullatterer.Add(); Entropew.Add(); Missinguno.Add(); Paraglocks.Add(); //CONSUMABLE FIRING GUNS Creditor.Add(); Blankannon.Add(); Viscerifle.Add(); //ENDPAGE GUNS MastersGun.Add(); Wrench.Add(); Pumhart.Add(); //SYNERGY FORME GUNS GunsharkMegasharkSynergyForme.Add(); DiscGunSuperDiscForme.Add(); OrgunHeadacheSynergyForme.Add(); Wolfgun.Add(); MinigunMiniShotgunSynergyForme.Add(); PenPencilSynergy.Add(); ReShelletonKeyter.Add(); AM0SpreadForme.Add(); BulletBladeGhostForme.Add(); GlueGunGlueGunnerSynergy.Add(); KingBullatterer.Add(); WrenchNullRefException.Add(); GatlingGunGatterUp.Add(); GravityGunNegativeMatterForm.Add(); GonneElder.Add(); UterinePolypWombular.Add(); DiamondGaxe.Add(); RedRebondir.Add(); DiamondCutterRangerClass.Add(); StickGunQuickDraw.Add(); StormRod.Add(); UnrustyShotgun.Add(); #endregion //-----------------------------------------------------SHRINES GET INITIALISED #region ShrineInitialisation InvestmentShrine.Add(); RelodinShrine.Add(); DagunShrine.Add(); ArtemissileShrine.Add(); ExecutionerShrine.Add(); TurtleShrine.Add(); KliklokShrine.Add(); #endregion //-----------------------------------------------------NPCS GET INITIALISED #region NPCInitialisation Rusty.Init(); Ironside.Init(); Boomhildr.Init(); #endregion ChromaGun.Add(); //GOOD MIMIC (NEEDS TO BE INITIALISED LATER) GoodMimic.Add(); //Characters var data = Loader.BuildCharacter("NevernamedsItems/Characters/Shade", CustomPlayableCharacters.Shade, new Vector3(12.3f, 21.3f), false, new Vector3(13.1f, 19.1f), false, false, true, true, //Sprites used by paradox false, //Glows null, //Glow Mat null, //Alt Skin Glow Mat 0, //Hegemony Cost false, //HasPast ""); //Past ID String //Other Features MasteryReplacementOub.InitDungeonHook(); CadenceAndOxShopPoolAdditions.Init(); CustomHuntingQuest.Init(); //NPCS TheJammomaster.Add(); //Carto.Add(); ShrineFactory.PlaceBreachShrines(); //Synergy Setup, Synergy Formes, Dual Wielding, and any changes to Basegame Guns InitialiseSynergies.DoInitialisation(); SynergyFormInitialiser.AddSynergyForms(); ExistantGunModifiers.Init(); ChamberGunAPI.Init("OnceMoreIntoTheBreach"); //Late Hooks AmmoPickupHooks.Init(); HealthPickupHooks.Init(); ETGModConsole.Commands.AddUnit("nndebugflow", (args) => { DungeonHandler.debugFlow = !DungeonHandler.debugFlow; string status = DungeonHandler.debugFlow ? "enabled" : "disabled"; string color = DungeonHandler.debugFlow ? "00FF00" : "FF0000"; ETGModConsole.Log($"OMITB flow {status}", false); }); //PoopySchloopy /* Dungeon keepDungeon = DungeonDatabase.GetOrLoadByName("base_jungle"); * if (keepDungeon == null) ETGModConsole.Log("Jungle null!"); * if (keepDungeon && keepDungeon.PatternSettings != null) * { * if (keepDungeon.PatternSettings.flows != null && keepDungeon.PatternSettings.flows.Count > 0) * { * if (keepDungeon.PatternSettings.flows[0].fallbackRoomTable) * { * if (keepDungeon.PatternSettings.flows[0].fallbackRoomTable.includedRooms != null) * { * if (keepDungeon.PatternSettings.flows[0].fallbackRoomTable.includedRooms.elements != null) * { * foreach (WeightedRoom wRoom in keepDungeon.PatternSettings.flows[0].fallbackRoomTable.includedRooms.elements) * { * * if (wRoom.room != null && !string.IsNullOrEmpty(wRoom.room.name)) * { * ETGModConsole.Log(wRoom.room.name); * } * } * } * else ETGModConsole.Log("No elements"); * } * else ETGModConsole.Log("No included rooms"); * } * else ETGModConsole.Log("No fallback room table"); * } * else ETGModConsole.Log("Flow was null or empty"); * } * else ETGModConsole.Log("Pattern settings null"); * keepDungeon = null;*/ ETGMod.StartGlobalCoroutine(this.delayedstarthandler()); ETGModConsole.Log("'If you're reading this, I must have done something right' - NN"); } catch (Exception e) { ETGModConsole.Log(e.Message); ETGModConsole.Log(e.StackTrace); } }
public override void Start() { try { GungeonAP.Init(); ETGModConsole.Commands.AddUnit("botflow", delegate(string[] args) { DungeonHandler.debugFlow = !DungeonHandler.debugFlow; string str = DungeonHandler.debugFlow ? "enabled" : "disabled"; string color = DungeonHandler.debugFlow ? "00FF00" : "FF0000"; LostItemsMod.Log("Debug flow " + str, color); }); } catch (Exception e) { LostItemsMod.Log("Command Broke", TEXT_COLOR_BAD); LostItemsMod.Log(string.Format(e + ""), TEXT_COLOR_BAD); } try { //GungeonAP.Init(); //NuclearShrine.Add(); FakePrefabHooks.Init(); ItemBuilder.Init(); ShrineFactory.Init(); GungeonAPI.Tools.Init(); EnemyAPI.Tools.Init(); EnemyAPI.Hooks.Init(); //CustomSynergiesBaseGame.Init(); hooks.Init(); //MoreBreachShrine.Add(); //BreachRoomShrine.Add(); // ConfigManager sta = new ConfigManager(); // GunConfigManager gcf = new GunConfigManager(); //sta.Init(); //gcf.Init(); //CustomGun.Add(); //GunBuffs.Init(); // MagicSpriteStuff.Init(); //Ping.Init(); NuclearTalisman.Init(); //potato BotGhost.Init(); //potato LostGun.Add(); //1 change sounds //SaiGun.Add();//2 book sprite LostOrb.Init(); //3 sprite is boring LostRobe.Init(); //4 RoboticMuncher.Init(); //5 JunkHeart.Init(); //6 i think this is done LootBox.Init(); //7 CNerfGun.Add(); //8 pretty much everything //MopController.Add();//9 fix charge animation, add water projectile CoopTest.Init(); //10 pretty much everything Bond.Init(); //11 rework or remove Bob.Init(); //12 this ones just a joke Children.Init(); //13 maybe add some nice vfx BlessedOrb.Init(); //14 BanGun.Add(); //15 disintergration effect, new projectile sprite? RetoStarter.Init(); //16 add flight and knockback, lessen the light it gives off RetoStarterOld.Init(); //17 add flight and knockback, lessen the light it gives off Test.Init(); //18 add new items when i get to making them MistakeCharm.Init(); //19 i think this one is fine Revenge.Init(); //21 //CNerfGun2.Add();//22 //ETGModConsole.Log("up to pet works"); BabyGoodMistake.Init();//20 make the synergy work //Demonitization.Init(); //23 // syntest.Add(); //24 //syntest2.Add(); //25 CosmicSludge.Init(); // 26 //StarterGun.Add(); // 27 ScatedyCat.Init(); // 28 Shine.Init(); //29 Kunia.Add(); //30 BalencePatch.Init(); //31 ChlorophyteRounds.Init(); //32 LostGunAlt.Add(); //33 Apache.Add(); //TestGun.Add();// TestActive.Init(); //35 //RageRifle.Add();//34 TestPassive.Init(); //36 Gundertale.Add(); MyItem.Init(); RuinousEffigy.Add(); Log($"Begining to load Nuclear Throne related stuff...", TEXT_COLOR_NT); //2.1 // NuclearTalisman.Init(); MutaionBolt.Init(); //1 MutaionBullet.Init(); //2`` MutaionEnergy.Init(); //3`` MutaionShell.Init(); //4`` MutaionMelee.Init(); //5`` MutaionStress.Init(); //6 MutaionTriggerFingers.Init(); //7 MutaionTeeth.Init(); //8 MutaionFace.Init(); //9 MutaionSkin.Init(); //10 MutaionEyes.Init(); //11 MutaionMuscle.Init(); //12 MutaionFeet.Init(); //13 MutaionPaw.Init(); //14 MutaionWish.Init(); //15 MutaionEuphoria.Init(); //16 MutaionWrists.Init(); //17 MutaionBlood.Init(); //18 MutaionStomach.Init(); //19 MutaionLucky.Init(); //20 MutaionExplosive.Init(); //21 MutaionGuts.Init(); //22 MutaionMind.Init(); //23 MutaionSpirit.Init(); //24 MutaionWait.Init(); //25 //Tools.Print<string>("Did Start()", "00FF00", false); //NuclearShrine.Add(); SnareGoop.Init(); AbilityMelting.Init(); //1 AbilityRobot.Init(); //2 AbilitySteroids.Init(); //3 AbilityRogue.Init(); //4 AbilityRebel.Init(); //5 AbilityCrystal.Init(); //6 AbilityPlant.Init(); //7 AbilityYV.Init(); //8 AbilityEyes.Init(); //9 AbilityChicken.Init(); // RebelGun.Add();//1 CharacterShrine.Add();//2 Revolver.Add(); AssaultRifle.Add(); SmartGun.Add(); //Katana.Init(); Directory.CreateDirectory("NTConfig"); bool flag = !File.Exists("NTsConfig/protochest.json"); if (flag) { File.WriteAllText("NTConfig/protochest.json", "1"); } // bool flag2 = !LostItemsMod.AvailableNailModes.Contains(File.ReadAllText("NTConfig/nailmode.json")); // if (flag2) //{ // File.WriteAllText("NTConfig/protochest.json", "normal"); // } LostItemsMod.ProtoChestContent = File.ReadAllText("NTConfig/protochest.json"); ProtoChest.Add(); ShrineFactory.PlaceBreachShrines(); ETGModConsole.Commands.AddGroup("nt", delegate(string[] args) { ETGModConsole.Log("shoop has my family", false); }); ETGModConsole.Commands.GetGroup("nt").AddUnit("level", delegate(string[] args) { header = "test"; text = "test"; Notify(header, text); }); ETGModConsole.Commands.GetGroup("nt").AddUnit("character", delegate(string[] args) { header = NuclearShrine.header; text = "Character"; Notify(header, text); }); ETGModConsole.Commands.GetGroup("nt").AddUnit("protochest", delegate(string[] args) { LostItemsMod.Log("Current stored gun has the id " + ProtoChest.StoredGunID, LostItemsMod.TEXT_COLOR_NT); }); LostItemsMod.Log(LostItemsMod.MOD_NAME + " v" + LostItemsMod.VERSION + " started successfully.", LostItemsMod.TEXT_COLOR); LostItemsMod.Log("It worked", LostItemsMod.TEXT_COLOR_GOOD); } catch (Exception arg) { LostItemsMod.Log(string.Format(LostItemsMod.MOD_NAME + " v" + LostItemsMod.VERSION + " Failed to load ", LostItemsMod.MOD_NAME, LostItemsMod.VERSION, arg), LostItemsMod.TEXT_COLOR_BAD); LostItemsMod.Log("it did not work", LostItemsMod.TEXT_COLOR_BAD); } }
public override void Start() { FakePrefabHooks.Init(); ItemBuilder.Init(); CursedBandana.Init(); }
public override void Start() { try { ZipFilePath = this.Metadata.Archive; metadata = this.Metadata.Directory; metadataARCHIVE = this.Metadata.Archive; FilePath = this.Metadata.Directory + "/rooms"; path = "CakeMod.Resources.TurtSprites."; assembly = Assembly.GetExecutingAssembly(); list = new List <Texture2D>(); foreach (var item in assembly.GetManifestResourceNames()) { if (!item.EndsWith(".png")) { continue; } if (item.StartsWith(path)) { list.Add(ResourceExtractor.GetTextureFromResource(item)); } } ETGModConsole.Log(list.Count.ToString()); cosmoSpriteSheet = ResourceExtractor.GetTextureFromResource(cosmoSpriteSheetName); FloorSheet = ResourceExtractor.GetTextureFromResource(StringFloorSheet); FakePrefabHooks.Init(); ItemBuilder.Init(); EnemyTools.Init(); EnemyBuilder.Init(); Hooks.Init(); BossBuilder.Init(); SpecialBlankModificationItem.InitHooks(); ItemsMod.Strings = new AdvancedStringDB(); EasyGoopDefinitions.DefineDefaultGoops(); Cake.Init(); CircularKing.Init(); KinglyBullets.Init(); LockOfTheJammed.Init(); CakeBullets.Init(); BleakBullets.Init(); Jankan.Init(); Robohead.Init(); HatShells.Init(); DumbBullets.Init(); ControlledBullets.Init(); David.Init(); HeadCrab.Init(); GunJester.Init(); Waffle.Init(); BladeBullets.Init(); TheFool.Init(); BowlerHat.Init(); Depresso.Init(); FleshCake.Init(); BountyPoster.Init(); OneReverse.Init(); StrangeEffigy.Init(); ConcealedTreasure.Init(); Winpetster.Init(); RookGuonStone.Init(); IceOgreHead.Init(); MysteriousIdol.Init(); GlowingWomb.Init(); Honkhorn.Init(); HeartyLocket.Init(); FunnyHat.Init(); Radio.Init(); ChocolateBar.Init(); CluwneBullets.Init(); BowlerRainbowDust.Init(); StrangeArrow.Init(); testingitem.Init(); TestItem.Init(); glitchammolet.Init(); testbarrel.Init(); BlobHeart.Init(); WebAmmolet.Init(); StarNinja.Init(); PoisonBomb.Init(); RoboticHeart.Init(); ApprenticeScroll.Init(); amogus.Init(); ArmouredKey.Init(); BabyGoodChamber.Init(); SpringlockSuit.Init(); BirthdayCandle.Init(); DeadlyInsanity.Init(); Keysing.Init(); BabyGoodLovebulon.Init(); FreddyPizza.Init(); CultistHelm.Init(); Lime.Init(); CurseItemTest.Init(); GoopCurse.Init(); Jammolet.Init(); HoloProjection.Init(); Clumsy.Init(); MiniShroom.Init(); DrawnChamber.Init(); BabyGoodMagnum.Init(); SewingKit.Init(); PocketRedChest.Init(); PocketBlackChest.Init(); PocketGreenChest.Init(); PocketBlueChest.Init(); PocketBrownChest.Init(); ChestFriend.Init(); PricklyPear.Init(); StrangePotion.Init(); DevilContract.Init(); Hellfire.Init(); BloomingHeart.Init(); RatRound.Init(); FrozenFrog.Init(); BabyGoodApiary.Init(); ImmortalSmoke.Init(); UFO.Init(); VoodooHeart.Init(); GunslingKingRequest.Init(); HappyLad.Init(); Fez.Init(); NecromancerBook.Init(); PlatinumJunk.Init(); ToxicArmour.Init(); Notebook.Init(); TestJammedBullets.Init(); BulletKinBullets.Init(); LichHat.Init(); Skelebot.Init(); CosmoStatue.CosmoBuildPrefab(); LichHat2.Init(); PickleJar.Init(); Jawbreaker.Init(); Rift.Init(); SaveDisk.Init(); d20.Init(); ThirdEye.Init(); GhostlyBody.Init(); Butter.Init(); Cookie.Init(); JunkChestHandler.TheHooks(); CarpenterHandbook.Init(); Ipecac.Init(); Taurus.Init(); LifeLemon.Init(); ArmourGuonStone.Init(); JammedGunParts.Init(); CloningVat.Init(); DevilKey.Init(); TurtsMelon.Init(); SpareShell.Init(); FungalTurtle.Init(); PBullets.Init(); OddBullets.Init(); BloodTether.Init(); TableTechHolographic.Init(); NavySealCopypasta.Init(); RuneChalk.Init(); //RuneChalk2.Init(); Synergun.Add(); JackpotOfGreed.Add(); NoSpriteFound.Add(); boneblaster.Add(); KingGun.Add(); GungeonGun.Add(); Glockamole.Add(); CursedKatana.Add(); Blox.Add(); Terragun.Add(); SpongeGun.Add(); Horn.Add(); IHateGuns.Add(); gamefreeze.Add(); Bananastaff.Add(); Blackpistol.Add(); boomstick.Add(); SydneySleeper.Add(); Explodergun.Add(); Scrapgun.Add(); tinyshotgun.Add(); GunResource.Add(); Scrapper.Add(); Megaphone.Add(); MissGun.Add(); Drawn47.Add(); PirateShotgunKinGun.Add(); AnArrowkin.Add(); Timerase.Add(); Knife.Add(); firegun.Add(); Television.Add(); //Dupligun.Add(); //OneShot.Add(); MoneyDebuffEffect.Init(); money22DebuffEffect.Init(); hegemonyDebuffEffect.Init(); moneydebuff3DebuffEffect.Init(); DemonBuff.Init(); CasingBullets.Init(); UnlockHookInators.Init(); InkBooklet.Init(); Doodlelet.Init(); KoolAidMan.Init(); ammomimic.Init(); BulletBishop.Init(); FlameChamber.Init(); KillShrine.Init(); InflamedEye.Init(); FlameClone.Init(); Jesterlet.Init(); Mimekin.Init(); RoyalJesterlet.Init(); DrawnKin.Init(); HoveringGunsAdder.AddHovers(); CakeGunMods.Init(); BreachShopTool.AddBaseMetaShopTier(ETGMod.Databases.Items["Cultist Helm"].PickupObjectId, 80, ETGMod.Databases.Items["Rainbowllets"].PickupObjectId, 25, ETGMod.Databases.Items["Reloading Waffle"].PickupObjectId, 75, null); GameManager.Instance.SynergyManager.synergies = GameManager.Instance.SynergyManager.synergies.Concat(new AdvancedSynergyEntry[] { new SyngergraceThisMod.HatSynergy(), new SyngergraceThisMod.IceSynergy(), new SyngergraceThisMod.RainbowSynergy(), new SyngergraceThisMod.ChaosSynergy(), new SyngergraceThisMod.VoodooSynergy(), //new SyngergraceThisMod.OldSynergy(), new SyngergraceThisMod.LoveSynergy(), new SyngergraceThisMod.SoundSynergy(), }).ToArray <AdvancedSynergyEntry>(); //TinyBullet.Add(); //OldManBreach.Add(); //ArtistShrine.Add(); Chester.Add(); //LesGo.Add(); StaticReferences.Init(); StaticReferences2.Init(); DungeonHandlerTrueForm.Init(); ShrineFakePrefabHooks.Init(); ShrineFactory.Init(); OldShrineFactory.Init(); SaveAPIManager.Setup("cak"); ShrineFactory.PlaceBreachShrines(); ETGModConsole.Log("King's Items is up and running."); SyngergraceThisMod.Synergies(); SynergyFormInitialiser.AddSynergyForms(); ModPrefabs.InitCustomPrefabs(); ModRoomPrefabs.InitCustomRooms(); FloorNameDungeonFlows.InitDungeonFlows(); DoodleDungeon.InitCustomDungeon(); ETGModConsole.Commands.AddUnit("daflow", (args) => { DungeonHandlerTrueForm.debugFlow = !DungeonHandlerTrueForm.debugFlow; string status = DungeonHandlerTrueForm.debugFlow ? "enabled" : "disabled"; string color = DungeonHandlerTrueForm.debugFlow ? "00FF00" : "FF0000"; ETGModConsole.Log($"da flow is {status}", false); }); List <string> SpareVFXPaths = new List <string>() { "CakeMod/Resources/BulletBishop/incense_teleport_poof_001", "CakeMod/Resources/BulletBishop/incense_teleport_poof_002", "CakeMod/Resources/BulletBishop/incense_teleport_poof_003", "CakeMod/Resources/BulletBishop/incense_teleport_poof_004", "CakeMod/Resources/BulletBishop/incense_teleport_poof_005", "CakeMod/Resources/BulletBishop/incense_teleport_poof_006", "CakeMod/Resources/BulletBishop/incense_teleport_poof_007", "CakeMod/Resources/BulletBishop/incense_teleport_poof_008", }; GameObject spareVFX = VFXLibrary.CreateVFX("IncensePoof", SpareVFXPaths, 1, new IntVector2(10, 1), tk2dBaseSprite.Anchor.LowerCenter, true, 0.18f, 0, null); EasyVFXDatabase.IncenseVFX = spareVFX; List <string> SpareVFXPaths3 = new List <string>() { "CakeMod/Resources/FlameChamber/flamepoof_001", "CakeMod/Resources/FlameChamber/flamepoof_002", "CakeMod/Resources/FlameChamber/flamepoof_003", "CakeMod/Resources/FlameChamber/flamepoof_004", "CakeMod/Resources/FlameChamber/flamepoof_005", }; GameObject spareVFX3 = VFXLibrary.CreateVFX("FlamePoof", SpareVFXPaths3, 7, new IntVector2(10, 1), tk2dBaseSprite.Anchor.LowerCenter, true, 0.18f, 0, null); EasyVFXDatabase.FlameVFX = spareVFX3; List <string> SpareVFXPaths2 = new List <string>() { "CakeMod/Resources/BloodyLightning/blood1", "CakeMod/Resources/BloodyLightning/blood2", "CakeMod/Resources/BloodyLightning/blood3", "CakeMod/Resources/BloodyLightning/blood4", "CakeMod/Resources/BloodyLightning/blood5", "CakeMod/Resources/BloodyLightning/blood6", "CakeMod/Resources/BloodyLightning/blood7", "CakeMod/Resources/BloodyLightning/blood8", "CakeMod/Resources/BloodyLightning/blood9", "CakeMod/Resources/BloodyLightning/blood10", }; GameObject spareVFX2 = VFXLibrary.CreateVFX("String", SpareVFXPaths2, 16, new IntVector2(10, 1), tk2dBaseSprite.Anchor.LowerCenter, true, 0.18f, 0, null); EasyVFXDatabase.StringVFX = spareVFX2; //DoodleDungeon.InitCustomDungeon(); } catch (Exception e) { ETGModConsole.Log(e.ToString(), false); } }
// Token: 0x0600001B RID: 27 RVA: 0x000028E8 File Offset: 0x00000AE8 public override void Start() { ItemBuilder.Init(); FakePrefabHooks.Init(); HookYeah.Init(); GungeonAPI.GungeonAP.Init(); FakePrefabHooks.Init(); GungeonAPI.Tools.Init(); ItemAPI.FakePrefabHooks.Init(); GungeonAP.Init(); FakePrefabHooks.Init(); ShrineFactory.Init(); ShrineFactory.PlaceBnyBreachShrines(); TestActiveItem.Init(); VengeanceVlone.Init(); ShatterEffect.Initialise(); ShrineOfTheLeadLord.Add(); ArtifactOfRevenge.Init(); ArtifactOfAttraction.Init(); ArtifactOfGlass.Init(); ArtifactOfAvarice.Init(); ArtifactOfDaze.Init(); ArtifactOfPrey.Init(); ArtifactOfMegalomania.Init(); ArtifactOfFodder.Init(); ArtifactOfBolster.Init(); ArtifactOfHatred.Init(); ArtifactOfEnigma.Init(); ArtifactOfSacrifice.Init(); ModuleCannon.Add(); ModuleChip.Init(); ModuleAmmoEater.Init(); ModuleDamage.Init(); ModuleClipSize.Init(); ModuleFireRate.Init(); ModuleReload.Init(); T2ModuleYV.Init(); T2ModuleCloak.Init(); T2ModulePierce.Init(); T2ModuleBounce.Init(); T2ModuleEjector.Init(); T2ModuleHoming.Init(); T3ModuleRocket.Init(); T3ModuleInaccurate.Init(); T3ModuleColossus.Init(); T3ModuleOverload.Init(); T3ModuleReactive.Init(); CorruptModuleSensor.Init(); CorruptModuleAccuracy.Init(); CorruptModuleLoose.Init(); CorruptModuleCoolant.Init(); CorruptModuleDamage.Init(); //Gimmick Heavy Guns TrainGun.Add(); LastStand.Add(); SoulStealer.Add(); Commiter.Add(); Pickshot.Add(); AerialBombardment.Add(); //Mimic Guns Casemimic.Add(); ABlasphemimic.Add(); Gunthemimic.Add(); Mimikey47.Add(); //Mechanical Guns ThunderStorm.Add(); CaptainsShotgun.Add(); EnforcersLaw.Add(); TimeZoner.Add(); ArtemissileRocket.Add(); BigNukeGun.Add(); BoxGun.Add(); REXNeedler.Add(); FlakCannon.Add(); GunslayerShotgun.Add(); RogueLegendary.Add(); //Otherworldly Guns HarvestersShotgun.Add(); PrismaticShot.Add(); Starbounder.Add(); ReaverClaw.Add(); ReaverHeart.Add(); ChaosRevolver.Add(); ChaosRevolverSynergyForme.Add(); ChaosHand.Add(); NuclearTentacle.Add(); //Outright Wacky weaponry OppressorsCrossbow.Add(); GunslayerGauntlets.Add(); SuperFlakCannon.Add(); MithrixHammer.Add(); TungstenCube.Add(); CoolStaff.Add(); ASwordGun.Add(); AGunSword.Add(); //Dumb Guns StickGun.Add(); BulletCaster.Add(); SausageRevolver.Add(); BloatedRevolver.Add(); PocketPistol.Add(); BrokenGunParts.Add(); IDPDFreakGun.Add(); FakeShotgun.Add(); //Life Living PersonalGuard.Init(); GlockOfTheDead.Init(); LizardBloodTransfusion.Init(); AbsoluteZeroPotion.Init(); MatrixPotion.Init(); GreandeParasite.Init(); //Joke Items SpeckOfDust.Init(); LastResort.Init(); JokeBook.Init(); //Mechanical Items OnPlayerItemUsedItem.Init(); BloodyTrigger.Init(); StaticCharger.Init(); //Bullet Type Items ResurrectionBullets.Init(); GuillotineRounds.Register(); LunarGlassRounds.Init(); ReaverRounds.Init(); SimpBullets.Init(); //Cursed Items Risk Reward Items LeadHand.Init(); JammedGuillotine.Init(); CrownOfBlood.Init(); RTG.Init(); DGrenade.Init(); MalachiteCrown.Init(); AncientWhisper.Init(); AncientEnigma.Init(); LunarGlassSyringe.Init(); SlayerKey.Init(); DamocleanClip.Init(); DeathMark.Init(); TheMonolith.Init(); LoopMarker.Init(); BulletRelic.Init(); GodLifesGift.Init(); //Defense Items SuperShield.Init(); GunslayerHelmet.Init(); FreezeLighter.Init(); //Stats Up Microscope.Init(); EmpoweringCore.Init(); BookOfEconomics.Register(); CounterChamber.Register(); Infusion.Init(); MinigunRounds.Register(); //Otherworldly SpiritOfStagnation.Init(); SoulInAJar.Init(); AmmoRepurposer.Init(); SkyGrass.Init(); ChaosChamber.Init(); ChaosGodsWrath.Register(); Coolrobes.Init(); //Companion Items/CompanionAI Claycord.Init(); Blastcore.Init(); ClayCordStatue.ClayBuildPrefab(); GunSoulBox.Init(); GunSoulBlue.BlueBuildPrefab(); GunSoulGreen.GreenBuildPrefab(); GunSoulRed.RedBuildPrefab(); GunSoulYellow.YellowBuildPrefab(); GunSoulPink.PinkBuildPrefab(); GunSoulPurple.PurpleBuildPrefab(); PointZero.Init(); BabyGoodModular.Init(); //Guon Stones GuonPebble.Init(); ChaosGuonStone.Init(); BulluonStone.Init(); DynamiteGuon.Init(); GuonGeon.Init(); //Ammolets LunarGlassAmmolet.Init(); ReaverAmmolet.Init(); //TableTechs TableTechReload.Init(); TableTechBomb.Init(); TableTechSoul.Init(); TableTechKnife.Init(); //OP??? BunnysFoot.Init(); //Random Weird Shit that just kinda exists GungeonInvestment.Init(); BrokenLockpicker.Init(); Dejammer.Init(); Keylocator.Init(); Keyceipt.Init(); FrequentFlyer.Init(); //Vengeance.Init(); TestItemBNY.Init(); DragunHeartThing.Init(); MasteryReplacementRNG.InitDungeonHook(); SynergyFormInitialiser.AddSynergyForms(); InitialiseSynergies.DoInitialisation(); BunnyModule.Log(BunnyModule.MOD_NAME + " v" + BunnyModule.VERSION + " started successfully.", BunnyModule.TEXT_COLOR); }