/// <summary> /// Easter Egg. If the ancestral mech is a FLEA, and the setting is enabled, then infest the ship... /// </summary> /// <param name="simGame"></param> private static void Infestation(SimGameState simGame) { // Open bays 0-11, the extra 2 drop spots, and command consoles to match (assumes BT:R) simGame.AddArgoUpgrade(simGame.DataManager.ShipUpgradeDefs.Get("argoUpgrade_structure1")); simGame.AddArgoUpgrade(simGame.DataManager.ShipUpgradeDefs.Get("argoUpgrade_mechBay2")); simGame.AddArgoUpgrade(simGame.DataManager.ShipUpgradeDefs.Get("argoUpgrade_JunkyardLeopard")); simGame.AddArgoUpgrade(simGame.DataManager.ShipUpgradeDefs.Get("argoUpgrade_DropSlot")); simGame.AddArgoUpgrade(simGame.DataManager.ShipUpgradeDefs.Get("argoUpgrade_DropSlot1")); simGame.AddArgoUpgrade(simGame.DataManager.ShipUpgradeDefs.Get("argoUpgrade_PilotSlot")); simGame.AddArgoUpgrade(simGame.DataManager.ShipUpgradeDefs.Get("argoUpgrade_PilotSlot1")); simGame.ApplyArgoUpgrades(); List <MechDef> lance = new List <MechDef>(); var fle4 = simGame.DataManager.MechDefs.Get("mechdef_flea_FLE-4"); var fle15 = simGame.DataManager.MechDefs.Get("mechdef_flea_FLE-15"); var fle4rv = simGame.DataManager.MechDefs.Get("mechdef_flea_FLE-4-RV"); var fle15rv = simGame.DataManager.MechDefs.Get("mechdef_flea_FLE-15-RV"); lance.Add(fle4); lance.Add(fle4); lance.Add(fle4); lance.Add(fle4); lance.Add(fle4rv); lance.Add(fle4rv); lance.Add(fle15); lance.Add(fle15); lance.Add(fle15); lance.Add(fle15); lance.Add(fle15rv); lance.Add(fle15rv); //ApplyLance(simGame, lance); // For some reason, bays 6-11 still aren't marked as available at this point // ... but manually forcing the mechs into those bays seems to work fine. for (int i = 0; i < lance.Count; ++i) { var mech = new MechDef(lance[i], simGame.GenerateSimGameUID()); Logger.Log($"\tAdding {mech.ChassisID} to bay {i}"); simGame.AddMech(i, mech, true, true, false); } }