actor BossHPMultiplierAOEFlag : Once {}

Actor ZennyPickupCluster
{
-SOLID
+NOINTERACTION
height 0
radius 0
States
{
Spawn:
TNT1 AAAAAAAAAA 0 NoDelay A_SpawnItemEx("ZennyPickupRandom",0,0,0,frandom(-6.0,6.0),frandom(-6.0,6.0),frandom(2.0,16.0),frandom(-180.0,180.0),SXF_NOCHECKPOSITION,32)
stop
}
}

Actor ZennyPickupClusterBoss
{
-SOLID
+NOINTERACTION
height 0
radius 0
States
{
Spawn:
TNT1 AAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAA 0 NoDelay A_SpawnItemEx("ZennyPickupRandom",0,0,0,frandom(-12.0,12.0),frandom(-12.0,12.0),frandom(6.0,16.0),frandom(-180.0,180.0),SXF_NOCHECKPOSITION,32)
stop
}
}


// ENEMIES

Actor SniperJoePistol_Mayday : SniperJoePistol 					replaces SniperJoePistol { DropItem "ZennyPickupCluster" -FLOORCLIP +LOOKALLAROUND }
Actor SniperJoeShotgun_Mayday : SniperJoeShotgun 				replaces SniperJoeShotgun { DropItem "ZennyPickupCluster" -FLOORCLIP +LOOKALLAROUND  }
Actor SniperJoeChaingun_Mayday : SniperJoeChaingun 				replaces SniperJoeChaingun { DropItem "ZennyPickupCluster" -FLOORCLIP +LOOKALLAROUND  }
Actor SniperJoeSSG_Mayday : SniperJoeSSG 						replaces SniperJoeSSG { DropItem "ZennyPickupCluster" -FLOORCLIP +LOOKALLAROUND  }
Actor HotHeadMonster_Mayday : HotHeadMonster 					replaces HotHeadMonster { DropItem "ZennyPickupCluster" -FLOORCLIP +LOOKALLAROUND  }
Actor ColdHeadMonster_Mayday : ColdHeadMonster 					replaces ColdHeadMonster { DropItem "ZennyPickupCluster" -FLOORCLIP +LOOKALLAROUND  }
Actor MonoRoader_Mayday : MonoRoader 							replaces MonoRoader { DropItem "ZennyPickupCluster" -FLOORCLIP +LOOKALLAROUND  }
Actor ShadowMonoRoader_Mayday : ShadowMonoRoader 				replaces ShadowMonoRoader { DropItem "ZennyPickupCluster" -FLOORCLIP +LOOKALLAROUND  }
Actor MonoRoaderElite_Mayday : MonoRoaderElite 					replaces MonoRoaderElite { DropItem "ZennyPickupCluster" -FLOORCLIP +LOOKALLAROUND  }
Actor ShadowMonoRoaderElite_Mayday : ShadowMonoRoaderElite 		replaces ShadowMonoRoaderElite { DropItem "ZennyPickupCluster" -FLOORCLIP +LOOKALLAROUND  }
Actor BrutalMonoRoader_Mayday : BrutalMonoRoader 				replaces BrutalMonoRoader { DropItem "ZennyPickupCluster" -FLOORCLIP +LOOKALLAROUND  }
Actor ChibeeMonster_Mayday : ChibeeMonster 						replaces ChibeeMonster { DropItem "ZennyPickupCluster" -FLOORCLIP +LOOKALLAROUND  }
Actor LightningLord_Mayday : LightningLord 						replaces LightningLord { DropItem "ZennyPickupCluster" -FLOORCLIP +LOOKALLAROUND  }
Actor LightningOverlord_Mayday : LightningOverlord 				replaces LightningOverlord { DropItem "ZennyPickupCluster" -FLOORCLIP +LOOKALLAROUND  }
Actor LightningDeity_Mayday : LightningDeity 					replaces LightningDeity { DropItem "ZennyPickupCluster" -FLOORCLIP +LOOKALLAROUND  }
Actor HammerJoeMonster_Mayday : HammerJoeMonster 				replaces HammerJoeMonster { DropItem "ZennyPickupCluster" -FLOORCLIP +LOOKALLAROUND  }
Actor HammerJoeEliteMonster_Mayday : HammerJoeEliteMonster 		replaces HammerJoeEliteMonster { DropItem "ZennyPickupCluster" -FLOORCLIP +LOOKALLAROUND  }
Actor HammerJoeCaptainMonster_Mayday : HammerJoeCaptainMonster 	replaces HammerJoeCaptainMonster { DropItem "ZennyPickupCluster" -FLOORCLIP +LOOKALLAROUND  }
Actor GiantSpringerSpitter_Mayday : GiantSpringerSpitter 		replaces GiantSpringerSpitter { DropItem "ZennyPickupCluster" -FLOORCLIP +LOOKALLAROUND  }
Actor SubeeMonster_Mayday : SubeeMonster 						replaces SubeeMonster { DropItem "ZennyPickupCluster" -FLOORCLIP +LOOKALLAROUND  }
Actor SkeletonJoeMonster_Mayday : SkeletonJoeMonster 			replaces SkeletonJoeMonster { DropItem "ZennyPickupCluster" -FLOORCLIP +LOOKALLAROUND  }
Actor BigEyeArtilleryMonster_Mayday : BigEyeArtilleryMonster 	replaces BigEyeArtilleryMonster { DropItem "ZennyPickupCluster" -FLOORCLIP +LOOKALLAROUND  }
Actor BigEyeBarragerMonster_Mayday : BigEyeBarragerMonster 		replaces BigEyeBarragerMonster { DropItem "ZennyPickupCluster" -FLOORCLIP +LOOKALLAROUND  }
Actor TabanMonsterActive_Mayday : TabanMonsterActive 			replaces TabanMonsterActive { DropItem "ZennyPickupCluster" -FLOORCLIP +LOOKALLAROUND  }
Actor DarspiderMonster_Mayday : DarspiderMonster 				replaces DarspiderMonster { DropItem "ZennyPickupCluster" -FLOORCLIP +LOOKALLAROUND  }
Actor WalkingBomb_Mayday : WalkingBomb 							replaces WalkingBomb { DropItem "ZennyPickupCluster" -FLOORCLIP +LOOKALLAROUND  }
Actor ChronicBomb_Mayday : ChronicBomb 							replaces ChronicBomb { DropItem "ZennyPickupCluster" -FLOORCLIP +LOOKALLAROUND  }
Actor WarpedJoeTan_Mayday : WarpedJoeTan 						replaces WarpedJoeTan { DropItem "ZennyPickupCluster" -FLOORCLIP +LOOKALLAROUND  }
Actor WarpedJoeRed_Mayday : WarpedJoeRed 						replaces WarpedJoeRed { DropItem "ZennyPickupCluster" -FLOORCLIP +LOOKALLAROUND  }
Actor WarpedJoeRust_Mayday : WarpedJoeRust 						replaces WarpedJoeRust { DropItem "ZennyPickupCluster" -FLOORCLIP +LOOKALLAROUND  }
Actor WarpedJoeGray_Mayday : WarpedJoeGray 						replaces WarpedJoeGray { DropItem "ZennyPickupCluster" -FLOORCLIP +LOOKALLAROUND  }
Actor WarpedJoeDGreen_Mayday : WarpedJoeDGreen 					replaces WarpedJoeDGreen { DropItem "ZennyPickupCluster" -FLOORCLIP +LOOKALLAROUND  }
Actor WarpedJoeGold_Mayday : WarpedJoeGold 						replaces WarpedJoeGold { DropItem "ZennyPickupCluster" -FLOORCLIP +LOOKALLAROUND  }
Actor WarpedJoeLGreen_Mayday : WarpedJoeLGreen 					replaces WarpedJoeLGreen { DropItem "ZennyPickupCluster" -FLOORCLIP +LOOKALLAROUND  }
Actor WarpedJoeBlue_Mayday : WarpedJoeBlue 						replaces WarpedJoeBlue { DropItem "ZennyPickupCluster" -FLOORCLIP +LOOKALLAROUND  }
Actor TellyHunter_Mayday : TellyHunter 							replaces TellyHunter { DropItem "ZennyPickupCluster" -FLOORCLIP +LOOKALLAROUND  }

Actor BossMonsters : RandomSpawner
{
DropItem "HogaleMonster"
DropItem "PowerMusclerBreacherMonster"
DropItem "FakemanAlpha"
DropItem "FakemanBeta"
DropItem "FakemanGamma"
DropItem "CopyMachine"
DropItem "KingClone"
}

// The Less Frequent Spawners

Actor Tier10Monsters : RandomSpawner
{
DropItem "SniperJoePistol"
DropItem "SniperJoeShotgun"
DropItem "SniperJoeChaingun"
DropItem "SniperJoeSSG"
DropItem "HotHeadMonster"
DropItem "ColdHeadMonster"
DropItem "MonoRoader"
DropItem "ShadowMonoRoader"
DropItem "MonoRoaderElite"
DropItem "ShadowMonoRoaderElite"
DropItem "BrutalMonoRoader"
DropItem "ChibeeMonster"
DropItem "LightningLord"
DropItem "LightningOverlord"
DropItem "LightningDeity"
DropItem "HammerJoeMonster"
DropItem "HammerJoeEliteMonster"
DropItem "HammerJoeCaptainMonster"
DropItem "GiantSpringerSpitter"
DropItem "SubeeMonster"
DropItem "SkeletonJoeMonster"
DropItem "BigEyeArtilleryMonster"
DropItem "BigEyeBarragerMonster"
DropItem "TabanMonsterActive"
DropItem "DarspiderMonster"
DropItem "WalkingBomb"
DropItem "ChronicBomb"
DropItem "WarpedJoeTan"
DropItem "WarpedJoeRed"
DropItem "WarpedJoeRust"
DropItem "WarpedJoeGray"
DropItem "WarpedJoeDGreen"
DropItem "WarpedJoeGold"
DropItem "WarpedJoeLGreen"
DropItem "WarpedJoeBlue"
DropItem "TellyHunter"

DropItem "FlameBarrel"
}

Actor Tier9Monsters : RandomSpawner
{
DropItem "SniperJoePistol"
DropItem "SniperJoeShotgun"
DropItem "SniperJoeChaingun"
DropItem "SniperJoeSSG"
DropItem "HotHeadMonster"
DropItem "ColdHeadMonster"
DropItem "MonoRoader"
DropItem "ShadowMonoRoader"
DropItem "MonoRoaderElite"
DropItem "ShadowMonoRoaderElite"
DropItem "BrutalMonoRoader"
DropItem "ChibeeMonster"
DropItem "LightningLord"
DropItem "LightningOverlord"
DropItem "LightningDeity"
DropItem "HammerJoeMonster"
DropItem "HammerJoeEliteMonster"
DropItem "HammerJoeCaptainMonster"
DropItem "GiantSpringerSpitter"
DropItem "SubeeMonster"
DropItem "SkeletonJoeMonster"
DropItem "BigEyeArtilleryMonster"
DropItem "BigEyeBarragerMonster"
DropItem "TabanMonsterActive"
DropItem "DarspiderMonster"
DropItem "WalkingBomb"
DropItem "ChronicBomb"
DropItem "WarpedJoeTan"
DropItem "WarpedJoeRed"
DropItem "WarpedJoeRust"
DropItem "WarpedJoeGray"
DropItem "WarpedJoeGold"
DropItem "WarpedJoeLGreen"
DropItem "WarpedJoeBlue"
DropItem "TellyHunter"

DropItem "FlameBarrel"
}

Actor Tier8Monsters : RandomSpawner
{
DropItem "SniperJoePistol"
DropItem "SniperJoeShotgun"
DropItem "SniperJoeChaingun"
DropItem "SniperJoeSSG"
DropItem "HotHeadMonster"
DropItem "ColdHeadMonster"
DropItem "MonoRoader"
DropItem "ShadowMonoRoader"
DropItem "MonoRoaderElite"
DropItem "ShadowMonoRoaderElite"
DropItem "BrutalMonoRoader"
DropItem "ChibeeMonster"
DropItem "LightningLord"
DropItem "LightningOverlord"
DropItem "LightningDeity"
DropItem "HammerJoeMonster"
DropItem "HammerJoeEliteMonster"
DropItem "HammerJoeCaptainMonster"
DropItem "GiantSpringerSpitter"
DropItem "SubeeMonster"
DropItem "SkeletonJoeMonster"
DropItem "BigEyeArtilleryMonster"
DropItem "BigEyeBarragerMonster"
DropItem "TabanMonsterActive"
DropItem "DarspiderMonster"
DropItem "WalkingBomb"
DropItem "ChronicBomb"
DropItem "WarpedJoeTan"
DropItem "WarpedJoeRed"
DropItem "WarpedJoeRust"
DropItem "WarpedJoeGray"
DropItem "WarpedJoeGold"
DropItem "WarpedJoeBlue"
DropItem "TellyHunter"

DropItem "FlameBarrel"
}

// The More Frequent Spawners

Actor Tier7Monsters : RandomSpawner
{
DropItem "SniperJoePistol"
DropItem "SniperJoeShotgun"
DropItem "SniperJoeChaingun"
DropItem "SniperJoeSSG"
DropItem "HotHeadMonster"
DropItem "ColdHeadMonster"
DropItem "MonoRoader"
DropItem "ShadowMonoRoader"
DropItem "MonoRoaderElite"
DropItem "ShadowMonoRoaderElite"
DropItem "ChibeeMonster"
DropItem "LightningLord"
DropItem "LightningOverlord"
DropItem "HammerJoeMonster"
DropItem "HammerJoeEliteMonster"
DropItem "HammerJoeCaptainMonster"
DropItem "GiantSpringerSpitter"
DropItem "SubeeMonster"
DropItem "SkeletonJoeMonster"
DropItem "BigEyeArtilleryMonster"
DropItem "BigEyeBarragerMonster"
DropItem "TabanMonsterActive"
DropItem "DarspiderMonster"
DropItem "WalkingBomb"
DropItem "ChronicBomb"
DropItem "WarpedJoeTan"
DropItem "WarpedJoeRed"
DropItem "WarpedJoeGray"
DropItem "WarpedJoeBlue"
DropItem "TellyHunter"

DropItem "FlameBarrel"
}

Actor Tier6Monsters : RandomSpawner
{
DropItem "SniperJoePistol"
DropItem "SniperJoeShotgun"
DropItem "SniperJoeChaingun"
DropItem "SniperJoeSSG"
DropItem "HotHeadMonster"
DropItem "ColdHeadMonster"
DropItem "MonoRoader"
DropItem "ShadowMonoRoader"
DropItem "MonoRoaderElite"
DropItem "ChibeeMonster"
DropItem "LightningLord"
DropItem "LightningOverlord"
DropItem "HammerJoeMonster"
DropItem "HammerJoeEliteMonster"
DropItem "GiantSpringerSpitter"
DropItem "SkeletonJoeMonster"
DropItem "BigEyeArtilleryMonster"
DropItem "TabanMonsterActive"
DropItem "DarspiderMonster"
DropItem "WalkingBomb"
DropItem "ChronicBomb"
DropItem "WarpedJoeTan"
DropItem "WarpedJoeGray"
DropItem "WarpedJoeBlue"
DropItem "TellyHunter"

DropItem "FlameBarrel"
}

Actor Tier5Monsters : RandomSpawner
{
DropItem "SniperJoePistol"
DropItem "SniperJoeShotgun"
DropItem "HotHeadMonster"
DropItem "ColdHeadMonster"
DropItem "MonoRoader"
DropItem "ShadowMonoRoader"
DropItem "ChibeeMonster"
DropItem "LightningLord"
DropItem "HammerJoeMonster"
DropItem "SkeletonJoeMonster"
DropItem "TabanMonsterActive"
DropItem "DarspiderMonster"
DropItem "WalkingBomb"
DropItem "WarpedJoeTan"
DropItem "WarpedJoeGray"
DropItem "TellyHunter"

DropItem "FlameBarrel"
}

Actor Tier4Monsters : RandomSpawner
{
DropItem "SniperJoePistol"
DropItem "SniperJoeShotgun"
DropItem "HotHeadMonster"
DropItem "ColdHeadMonster"
DropItem "MonoRoader"
DropItem "ShadowMonoRoader"
DropItem "ChibeeMonster"
DropItem "HammerJoeMonster"
DropItem "TabanMonsterActive"
DropItem "DarspiderMonster"
DropItem "WarpedJoeTan"
DropItem "TellyHunter"

DropItem "FlameBarrel"
}

Actor Tier3Monsters : RandomSpawner
{
DropItem "SniperJoePistol"
DropItem "SniperJoeShotgun"
DropItem "HotHeadMonster"
DropItem "ColdHeadMonster"
DropItem "MonoRoader"
DropItem "ChibeeMonster"
DropItem "WarpedJoeTan"

DropItem "FlameBarrel"
}

Actor Tier2Monsters : RandomSpawner
{
DropItem "SniperJoePistol"
DropItem "HotHeadMonster"
DropItem "MonoRoader"
DropItem "ChibeeMonster"
}

Actor Tier1Monsters : RandomSpawner
{
DropItem "SniperJoePistol"
DropItem "HotHeadMonster"
}

// BOSSES

Actor CopyMachine_Mayday : CopyMachine replaces CopyMachine
{
-FLOORCLIP
+LOOKALLAROUND
DropItem "ZennyPickupClusterBoss"
States
{
Spawn:
MEGM A 0 NoDelay A_SpawnItemEx("CopyMachine_MachinePart")
MEGM A 0 A_Stop
MEGM A 0 A_TakeInventory("LightningBoltAmmo",1)
MEGM A 0 A_TakeInventory("ThunderBoltAmmo",1)
MEGM A 0 A_TakeInventory("JunkShieldAmmo",1)
MEGM A 0 A_TakeInventory("CutterFlag",1)
MEGM A 0 A_GiveInventory("BossImAlive",1)
MEGM A 0 ACS_NamedExecuteWithResult("BOSS_HPMULTIPLIER_AOE",900,200,1,0) // HP Increased by 200 from Base, to provide more of a challenge
MEGM A 0 ACS_NamedExecuteAlways("Monster_PassivePain_NoScale",0)
MEGM A 0 A_SpawnItemEx("MonsterHitbox20_56")
MEGM A 10 A_Look
Wait
}
}

Actor HogaleMonster_Mayday : HogaleMonster replaces HogaleMonster
{
-FLOORCLIP
+LOOKALLAROUND
Radius 40	// Let's give this guy a chance
Height 110	// Make its hitbox the same as a Cyberdemon
DropItem "ZennyPickupClusterBoss"
States
{
Spawn:
HOGM A 0 NoDelay A_Stop
HOGM A 0 A_TakeInventory("CutterFlag",1)
HOGM A 0 ACS_NamedExecuteAlways("Monster_PassivePain_NoScale",0)
HOGM A 0 A_GiveInventory("BossImAlive",1)
HOGM A 0 ACS_NamedExecuteWithResult("BOSS_HPMULTIPLIER_AOE",3000,200,1,0)
HOGM A 0 A_SpawnItemEx("MonsterHitbox128_100")
HOGM A 5 A_Look
HOGM B 5
HOGM C 5 A_Look
HOGM B 5
Goto Spawn+6
}
}

Actor PowerMusclerBreacherMonster_Mayday : PowerMusclerBreacherMonster replaces PowerMusclerBreacherMonster
{
-FLOORCLIP
+LOOKALLAROUND
DropItem "ZennyPickupClusterBoss"
States
{
Spawn:
PMSM A 0 NoDelay A_Stop
PMSM A 0 A_TakeInventory("CutterFlag",1)
PMSM A 0 ACS_NamedExecuteAlways("Monster_PassivePain_NoScale",0)
PMSM A 0 A_GiveInventory("BossImAlive",1)
PMSM A 0 ACS_NamedExecuteWithResult("BOSS_HPMULTIPLIER_AOE",4000,200,1,0)
PMSM A 0 A_SpawnItemEx("MonsterHitbox40_110")
PMSM A 10 A_Look
Wait
}
}

Actor FakemanAlpha_Mayday : FakemanAlpha replaces FakemanAlpha
{
-FLOORCLIP
+LOOKALLAROUND
DropItem "ZennyPickupClusterBoss"
States
{
Spawn:
FAKM A 0 NoDelay A_Stop
FAKM A 0 A_TakeInventory("CutterFlag",1)
FAKM A 0 A_GiveInventory("BossImAlive",1)
FAKM A 0 A_SpawnItemEx("MonsterHitbox16_64")
FAKM A 0 ACS_NamedExecuteWithResult("BOSS_HPMULTIPLIER_AOE",800,200,1,0)
FAKM A 2 ACS_NamedExecuteAlways("Monster_PassivePain_NoScale",0)
FAKM A 3 //A_ClassBossHealth
FAKM A 5 A_Look
Wait
}
}

Actor FakemanBeta_Mayday : FakemanBeta replaces FakemanBeta
{
-FLOORCLIP
+LOOKALLAROUND
DropItem "ZennyPickupClusterBoss"
States
{
Spawn:
FAKM A 0 NoDelay A_Stop
FAKM A 0 A_TakeInventory("CutterFlag",1)
FAKM A 0 A_GiveInventory("BossImAlive",1)
FAKM A 0 A_SpawnItemEx("MonsterHitbox16_64")
FAKM A 0 ACS_NamedExecuteWithResult("BOSS_HPMULTIPLIER_AOE",800,200,1,0)
FAKM A 2 ACS_NamedExecuteAlways("Monster_PassivePain_NoScale",0)
FAKM A 3 //A_ClassBossHealth
FAKM A 5 A_Look
Wait
}
}

Actor FakemanGamma_Mayday : FakemanGamma replaces FakemanGamma
{
-FLOORCLIP
+LOOKALLAROUND
DropItem "ZennyPickupClusterBoss"
States
{
Spawn:
FAKM A 0 NoDelay A_Stop
FAKM A 0 A_TakeInventory("CutterFlag",1)
FAKM A 0 A_GiveInventory("BossImAlive",1)
FAKM A 0 A_SpawnItemEx("MonsterHitbox16_64")
FAKM A 0 ACS_NamedExecuteWithResult("BOSS_HPMULTIPLIER_AOE",800,200,1,0)
FAKM A 2 ACS_NamedExecuteAlways("Monster_PassivePain_NoScale",0)
FAKM A 3 //A_ClassBossHealth
FAKM A 5 A_Look
Wait
}
}

Actor KingClone_Mayday : KingClone replaces KingClone
{
-FLOORCLIP
+LOOKALLAROUND
DropItem "ZennyPickupClusterBoss"
States
{
Spawn:
KING A 0 NoDelay A_Stop
KING A 0 A_TakeInventory("CutterFlag",1)
KING A 0 A_GiveInventory("BossImAlive",1)
KING A 0 A_SpawnItemEx("MonsterHitbox20_68")
KING A 0 ACS_NamedExecuteWithResult("BOSS_HPMULTIPLIER_AOE",2000,200,1,0)
KING A 0 ACS_NamedExecuteAlways("Monster_PassivePain_NoScale",0)
KING A 10 A_Look
Goto Spawn+6
}
}