public static void Postfix() { foreach (BloonModel bloon in Game.instance.model.bloons) { if (bloon.name.Contains("BadFortified")) { // Creates a copy of a Fortified Bad BloonModel boss = bloon.Clone().Cast <BloonModel>(); // Sets the boss display to boss.png boss.display = ModContent.GetDisplayGUID <Boss>(); // Boss has no immunities by default. Can be changed if you'd like boss.bloonProperties = BloonProperties.None; boss.tags.Add("Boss"); foreach (DamageStateModel state in boss.damageDisplayStates) { // Sets all damage states to the boss state.displayPath = boss.display; } boss.maxHealth = initialBossHealth; boss.isBoss = true; boss.id = "Boss"; boss.updateChildBloonModels = true; // Removes children boss.childBloonModels = new Il2CppSystem.Collections.Generic.List <BloonModel> { }; SpawnChildrenModel spawnChildrenModel = boss.GetBehavior <SpawnChildrenModel>(); spawnChildrenModel.children = new string[] { }; // Registers the boss bloon Game.instance.model.bloons = Game.instance.model.bloons.Take(0).Append(boss).Concat(Game.instance.model.bloons.Skip(0)).ToArray(); } } foreach (RoundSetModel round in Game.instance.model.roundSets) { // Spawns the boss on round 3 by calling it by id round.rounds[2].groups[0].bloon = "Boss"; round.rounds[2].groups[0].count = 1; } }