ACTOR MarineDemonicFriendSpawner : RandomSpawner
{
DropItem "FriendPGNZombie", 256, 40
DropItem "FriendCyborgShotgunner", 256, 40
DropItem "FriendEmpoweredProShotgunCommando", 256, 40
DropItem "FriendInsaneSergeant", 256, 40
DropItem "FriendDTShotgunZombie", 256, 40
+Friendly
+NOBLOCKMONST
+DONTHARMSPECIES
+DONTHARMCLASS
}

ACTOR MonstersFriendSpawner : RandomSpawner
{
DropItem "FriendDarkCacoLich", 256, 40
DropItem "FriendRabidFiend", 256, 40
DropItem "FriendHellMonarch", 256, 40
DropItem "FriendWarlordImp", 256, 40
+Friendly
+NOBLOCKMONST
+DONTHARMSPECIES
+DONTHARMCLASS
}

ACTOR DemonicFriendSpawner : RandomSpawner
{
DropItem "FriendSpecOpsMachinegunner", 256, 40
DropItem "FriendAbyssalHound", 256, 40
+Friendly
+NOBLOCKMONST
+DONTHARMSPECIES
+DONTHARMCLASS
}

ACTOR ExpertDemonicFriendSpawner : RandomSpawner
{
DropItem "FriendDarkCacoLich", 256, 40
DropItem "FriendCyborgShotgunner", 256, 40
DropItem "FriendPGNZombie", 256, 40
DropItem "FriendHellMonarch", 256, 40
+Friendly
+NOBLOCKMONST
+DONTHARMSPECIES
+DONTHARMCLASS
}

ACTOR SuperDemonicFriendSpawner : RandomSpawner
{
DropItem "FriendDarkCydestroyer", 256, 40
DropItem "FriendDarkCybruiser", 256, 40
+Friendly
+NOBLOCKMONST
+DONTHARMSPECIES
+DONTHARMCLASS
}

ACTOR RandomRegularBeacon : RandomSpawner
{
DropItem "MarineDemonicBeacon", 256, 40
DropItem "ExpertDemonicBeacon", 256, 40
+Friendly
+NOBLOCKMONST
+DONTHARMSPECIES
+DONTHARMCLASS
}

ACTOR RandomExpensiveBeacon : RandomSpawner
{
DropItem "MonstersSquadBeacon", 256, 40
DropItem "MarineDemonicSquadBeacon", 256, 40
DropItem "SuperDemonicBeacon", 256, 40
+Friendly
+NOBLOCKMONST
+DONTHARMSPECIES
+DONTHARMCLASS
}

ACTOR DivineMercenaryFriendSpawner : RandomSpawner
{
DropItem "MercenarySanae", 256, 40
DropItem "MercenaryFlandre", 256, 40
DropItem "MercenaryUroboros", 256, 40
DropItem "MercenaryLamia", 256, 40
+Friendly
+NOBLOCKMONST
+DONTHARMSPECIES
+DONTHARMCLASS
}

ACTOR AlliedKaynBeaconspawner : RandomSpawner
{
DropItem "AlliedKaynGodSlayer", 256, 50
DropItem "AlliedKaynTrueGodSlayer", 256, 30
+friendly
+DONTHARMSPECIES
+DontHurtSpecies
}

ACTOR DivineBeacon : TaskForceBeacon
{
Inventory.MaxAmount 1
Inventory.InterHubAmount 1
Inventory.Icon "DMBAB0"
Inventory.PickupSound "Beacon/Pickup"
Inventory.PickupMessage "Divine Beacon! what will i hire???"
Tag "Divine Beacon: Call a girl with divine power to help you"
States
{
  Spawn:
	DMBA A -1
    Stop
  Use:
	TNT1 A 1 A_SpawnItemEx("DivineBeaconActivated",0,0,16,8,0,4,0,0,0,tid-1)
	Stop
}
}

ACTOR DivineBeaconActivated : TaskForceBeaconActivated
{
States
{
  Spawn:
    DMBA A 20
    DMBA A 15 Bright A_PlaySound("beacon/alarm")
    DMBA A 20
    DMBA A 15 Bright A_PlaySound("beacon/alarm")
    DMBA A 20
    DMBA A 15 Bright A_PlaySound("beacon/alarm")
    DMBA A 35 Bright
    DMBA A 35 A_SpawnItemEx("DivineBeaconActivatedSpawners",0,0,0,0,0,0,0,32|SXF_SETMASTER,0,tid)
	DMBA A 1
    Goto Death
  Death:
	TNT1 A 0
    TNT1 A 1 A_SpawnItemEx("TeleportFog")
    Stop
  Explosion:
	DMBA AA 35 A_PlaySound("weapon/warn")
	TNT1 A 0 A_SpawnItem("LargeBeaconKaboom")
    Stop
  }
}

ACTOR DivineBeaconActivatedSpawners : TaskForceBeaconActivatedSpawners
{
States
{
   Spawn:
    TNT1 A 0
    TNT1 A 0 A_SpawnItemEx("TeleportFog")
	TNT1 A 0 A_Jump(256,1,2,3,4)
	TNT1 A 5 A_SpawnItemEx("MercenarySanae",0,0,0,0,0,0,0,32|SXF_TRANSFERPOINTERS,0,tid)
	Goto End
	TNT1 A 5 A_SpawnItemEx("MercenaryFlandre",0,0,0,0,0,0,0,32|SXF_TRANSFERPOINTERS,0,tid)
	Goto End
	TNT1 A 5 A_SpawnItemEx("MercenaryUroboros",0,0,0,0,0,0,0,32|SXF_TRANSFERPOINTERS,0,tid)
	Goto End
	TNT1 A 5 A_SpawnItemEx("MercenaryLamia",0,0,0,0,0,0,0,32|SXF_TRANSFERPOINTERS,0,tid)
	Goto End
}
}

ACTOR MarineDemonicSquadBeacon : TaskForceBeacon
{
Inventory.MaxAmount 2
Inventory.InterHubAmount 2
Inventory.Icon "DBEAZ0"
Inventory.PickupSound "Beacon/Pickup"
Inventory.PickupMessage "Marine Demonic Squad Beacon! Hires Demonic Soldiers"
Tag "Marine Demonic Squad Beacon: Hires Demonic Soldiers"
States
{
  Spawn:
	DBEA A -1
    Stop
  Use:
	TNT1 A 1 A_SpawnItemEx("MarineDemonicSquadBeaconActivated",0,0,16,8,0,4,0,0,0,tid-1)
	Stop
}
}

ACTOR MarineDemonicSquadBeaconActivated : TaskForceBeaconActivated
{
States
{
  Spawn:
    DBEA A 20
    DBEA A 15 Bright A_PlaySound("beacon/alarm")
    DBEA A 20
    DBEA A 15 Bright A_PlaySound("beacon/alarm")
    DBEA A 20
    DBEA A 15 Bright A_PlaySound("beacon/alarm")
    DBEA A 35 Bright
    DBEA AAAA 35 A_SpawnItemEx("MarineDemonicSquadBeaconActivatedSpawners",0,0,0,0,0,0,0,32|SXF_SETMASTER,0,tid)
	DBEA A 1
    Goto Death
  Death:
	TNT1 A 0
    TNT1 A 1 A_SpawnItemEx("TeleportFog")
    Stop
  Explosion:
	DBEA AA 35 A_PlaySound("weapon/warn")
	TNT1 A 0 A_SpawnItem("LargeBeaconKaboom")
    Stop
  }
}

ACTOR MarineDemonicSquadBeaconActivatedSpawners : TaskForceBeaconActivatedSpawners
{
States
{
   Spawn:
    TNT1 A 0
    TNT1 A 0 A_SpawnItemEx("TeleportFog")
	TNT1 A 0 A_Jump(256,1,2,3,4,5)
	TNT1 A 5 A_SpawnItemEx("FriendPGNZombie",0,0,0,0,0,0,0,32|SXF_TRANSFERPOINTERS,0,tid)
	Goto End
	TNT1 A 5 A_SpawnItemEx("FriendCyborgShotgunner",0,0,0,0,0,0,0,32|SXF_TRANSFERPOINTERS,0,tid)
	Goto End
	TNT1 A 5 A_SpawnItemEx("FriendEmpoweredProShotgunCommando",0,0,0,0,0,0,0,32|SXF_TRANSFERPOINTERS,0,tid)
	Goto End
	TNT1 A 5 A_SpawnItemEx("FriendInsaneSergeant",0,0,0,0,0,0,0,32|SXF_TRANSFERPOINTERS,0,tid)
	Goto End
	TNT1 A 5 A_SpawnItemEx("FriendDTShotgunZombie",0,0,0,0,0,0,0,32|SXF_TRANSFERPOINTERS,0,tid)
	Goto End
}
}

ACTOR MonstersSquadBeacon : TaskForceBeacon
{
Inventory.MaxAmount 2
Inventory.InterHubAmount 2
Inventory.Icon "MDBAZ0"
Inventory.PickupSound "Beacon/Pickup"
Inventory.PickupMessage "Monsters Squad Beacon! Hires a squad of monsters"
Tag "Monsters Squad Beacon: Hires a squad of monsters"
States
{
  Spawn:
	MDBA A -1
    Stop
  Use:
	TNT1 A 1 A_SpawnItemEx("MonstersSquadBeaconActivated",0,0,16,8,0,4,0,0,0,tid-1)
	Stop
}
}

ACTOR MonstersSquadBeaconActivated : TaskForceBeaconActivated
{
States
{
  Spawn:
    MDBA A 20
    MDBA A 15 Bright A_PlaySound("beacon/alarm")
    MDBA A 20
    MDBA A 15 Bright A_PlaySound("beacon/alarm")
    MDBA A 20
    MDBA A 15 Bright A_PlaySound("beacon/alarm")
    MDBA A 35 Bright
    MDBA AAAA 35 A_SpawnItemEx("MonstersSquadBeaconActivatedSpawners",0,0,0,0,0,0,0,32|SXF_SETMASTER,0,tid)
	MDBA A 1
    Goto Death
  Death:
	TNT1 A 0
    TNT1 A 1 A_SpawnItemEx("TeleportFog")
    Stop
  Explosion:
	MDBA AA 35 A_PlaySound("weapon/warn")
	TNT1 A 0 A_SpawnItem("LargeBeaconKaboom")
    Stop
  }
}

ACTOR MonstersSquadBeaconActivatedSpawners : TaskForceBeaconActivatedSpawners
{
States
{
   Spawn:
    TNT1 A 0
    TNT1 A 0 A_SpawnItemEx("TeleportFog")
	TNT1 A 0 A_Jump(256,1,2,3,4)
	TNT1 A 5 A_SpawnItemEx("FriendDarkCacoLich",0,0,0,0,0,0,0,32|SXF_TRANSFERPOINTERS,0,tid)
	Goto End
	TNT1 A 5 A_SpawnItemEx("FriendRabidFiend",0,0,0,0,0,0,0,32|SXF_TRANSFERPOINTERS,0,tid)
	Goto End
	TNT1 A 5 A_SpawnItemEx("FriendHellMonarch",0,0,0,0,0,0,0,32|SXF_TRANSFERPOINTERS,0,tid)
	Goto End
	TNT1 A 5 A_SpawnItemEx("FriendWarlordImp",0,0,0,0,0,0,0,32|SXF_TRANSFERPOINTERS,0,tid)
	Goto End
}
}

ACTOR SuperDemonicBeacon : TaskForceBeacon
{
Inventory.MaxAmount 2
Inventory.InterHubAmount 2
Inventory.Icon "BSDAB0"
Inventory.PickupSound "Beacon/Pickup"
Inventory.PickupMessage "Super Demonic Beacon: Hire a Duo of Powerful Monsters"
Tag "Super Demonic Beacon: Hire a Duo of Powerful Monsters"
States
{
  Spawn:
	BSDA A -1
    Stop
  Use:
	TNT1 A 1 A_SpawnItemEx("SuperDemonicBeaconActivated",0,0,16,8,0,4,0,0,0,tid-1)
	Stop
}
}

ACTOR SuperDemonicBeaconActivated : TaskForceBeaconActivated
{
States
{
  Spawn:
    BSDA A 20
    BSDA A 15 Bright A_PlaySound("beacon/alarm")
    BSDA A 20
    BSDA A 15 Bright A_PlaySound("beacon/alarm")
    BSDA A 20
    BSDA A 15 Bright A_PlaySound("beacon/alarm")
    BSDA A 35 Bright
    BSDA AA 35 A_SpawnItemEx("SuperDemonicBeaconActivatedSpawners",0,0,0,0,0,0,0,32|SXF_SETMASTER,0,tid)
	BSDA A 1
    Goto Death
  Death:
	TNT1 A 0
    TNT1 A 1 A_SpawnItemEx("TeleportFog")
    Stop
  Explosion:
	BSDA AA 35 A_PlaySound("weapon/warn")
	TNT1 A 0 A_SpawnItem("LargeBeaconKaboom")
    Stop
  }
}

ACTOR SuperDemonicBeaconActivatedSpawners : TaskForceBeaconActivatedSpawners
{
States
{
   Spawn:
    TNT1 A 0
    TNT1 A 0 A_SpawnItemEx("TeleportFog")
	TNT1 A 0 A_Jump(256,1,2)
	TNT1 A 5 A_SpawnItemEx("FriendDarkCybruiser",0,0,0,0,0,0,0,32|SXF_TRANSFERPOINTERS,0,tid)
	Goto End
	TNT1 A 5 A_SpawnItemEx("FriendDarkCydestroyer",0,0,0,0,0,0,0,32|SXF_TRANSFERPOINTERS,0,tid)
	Goto End
}
}

ACTOR MarineDemonicBeacon : TaskForceBeacon
{
Inventory.MaxAmount 4
Inventory.InterHubAmount 4
Inventory.Icon "DBSAB0"
Inventory.PickupSound "Beacon/Pickup"
Inventory.PickupMessage "Marine Demonic Beacon! Hires Demonic Soldier"
Tag "Marine Demonic Beacon: Hires Demonic Soldier"
States
{
  Spawn:
	DBSA A -1
    Stop
  Use:
	TNT1 A 1 A_SpawnItemEx("MarineDemonicBeaconActivated",0,0,16,8,0,4,0,0,0,tid-1)
	Stop
}
}

ACTOR MarineDemonicBeaconActivated : TaskForceBeaconActivated
{
States
{
  Spawn:
    DBSA A 20
    DBSA A 15 Bright A_PlaySound("beacon/alarm")
    DBSA A 20
    DBSA A 15 Bright A_PlaySound("beacon/alarm")
    DBSA A 20
    DBSA A 15 Bright A_PlaySound("beacon/alarm")
    DBSA A 35 Bright
    DBSA A 35 A_SpawnItemEx("MarineDemonicBeaconActivatedSpawners",0,0,0,0,0,0,0,32|SXF_SETMASTER,0,tid)
	DBSA A 1
    Goto Death
  Death:
	TNT1 A 0
    TNT1 A 1 A_SpawnItemEx("TeleportFog")
    Stop
  Explosion:
	DBSA AA 35 A_PlaySound("weapon/warn")
	TNT1 A 0 A_SpawnItem("LargeBeaconKaboom")
    Stop
  }
}

ACTOR MarineDemonicBeaconActivatedSpawners : TaskForceBeaconActivatedSpawners
{
States
{
   Spawn:
    TNT1 A 0
    TNT1 A 0 A_SpawnItemEx("TeleportFog")
	TNT1 A 0 A_Jump(256,1,2,3,4,5)
	TNT1 A 5 A_SpawnItemEx("FriendPGNZombie",0,0,0,0,0,0,0,32|SXF_TRANSFERPOINTERS,0,tid)
	Goto End
	TNT1 A 5 A_SpawnItemEx("FriendCyborgShotgunner",0,0,0,0,0,0,0,32|SXF_TRANSFERPOINTERS,0,tid)
	Goto End
	TNT1 A 5 A_SpawnItemEx("FriendEmpoweredProShotgunCommando",0,0,0,0,0,0,0,32|SXF_TRANSFERPOINTERS,0,tid)
	Goto End
	TNT1 A 5 A_SpawnItemEx("FriendInsaneSergeant",0,0,0,0,0,0,0,32|SXF_TRANSFERPOINTERS,0,tid)
	Goto End
	TNT1 A 5 A_SpawnItemEx("FriendDTShotgunZombie",0,0,0,0,0,0,0,32|SXF_TRANSFERPOINTERS,0,tid)
	Goto End
}
}

ACTOR ExpertDemonicBeacon : TaskForceBeacon
{
Inventory.MaxAmount 4
Inventory.InterHubAmount 4
Inventory.Icon "EDBAB0"
Inventory.PickupSound "Beacon/Pickup"
Inventory.PickupMessage "Expert Demonic Beacon! Hire a Expert demonic mercenary"
Tag "Expert Demonic Beacon: Hire a Expert demonic mercenary"
States
{
  Spawn:
	EDBA A -1
    Stop
  Use:
	TNT1 A 1 A_SpawnItemEx("ExpertDemonicBeaconActivated",0,0,16,8,0,4,0,0,0,tid-1)
	Stop
}
}

ACTOR ExpertDemonicBeaconActivated : TaskForceBeaconActivated
{
States
{
  Spawn:
    EDBA A 20
    EDBA A 15 Bright A_PlaySound("beacon/alarm")
    EDBA A 20
    EDBA A 15 Bright A_PlaySound("beacon/alarm")
    EDBA A 20
    EDBA A 15 Bright A_PlaySound("beacon/alarm")
    EDBA A 35 Bright
    EDBA A 35 A_SpawnItemEx("ExpertDemonicBeaconActivatedSpawners",0,0,0,0,0,0,0,32|SXF_SETMASTER,0,tid)
	EDBA A 1
    Goto Death
  Death:
	TNT1 A 0
    TNT1 A 1 A_SpawnItemEx("TeleportFog")
    Stop
  Explosion:
	EDBA AA 35 A_PlaySound("weapon/warn")
	TNT1 A 0 A_SpawnItem("LargeBeaconKaboom")
    Stop
  }
}

ACTOR ExpertDemonicBeaconActivatedSpawners : TaskForceBeaconActivatedSpawners
{
States
{
   Spawn:
    TNT1 A 0
    TNT1 A 0 A_SpawnItemEx("TeleportFog")
	TNT1 A 0 A_Jump(256,1,2)
	TNT1 A 5 A_SpawnItemEx("FriendHellMonarch",0,0,0,0,0,0,0,32|SXF_TRANSFERPOINTERS,0,tid)
	Goto End
	TNT1 A 5 A_SpawnItemEx("FriendDarkCacoLich",0,0,0,0,0,0,0,32|SXF_TRANSFERPOINTERS,0,tid)
	Goto End
}
}

ACTOR AlliedKaynBeacon : TaskForceBeacon
{
Inventory.MaxAmount 1
Inventory.InterHubAmount 1
Inventory.Icon "KKMWB0"
Inventory.PickupSound "Beacon/Pickup"
Inventory.PickupMessage "Kayn Beacon! Call on the God Slayer Kayn to destroy all your enemies"
Tag "Kayn Beacon: Call on the God Slayer Kayn to destroy all your enemies"
States
{
  Spawn:
	KKMW A -1
    Stop
  Use:
	TNT1 A 1 A_SpawnItemEx("AlliedKaynBeaconActivated",0,0,16,8,0,4,0,0,0,tid-1)
	Stop
}
}

ACTOR AlliedKaynBeaconActivated : TaskForceBeaconActivated
{
States
{
  Spawn:
    KKMW A 20
    KKMW A 15 Bright A_PlaySound("beacon/alarm")
	KKMW A 0 A_SpawnItemEx("Bluelightning")
    KKMW A 20
    KKMW A 15 Bright A_PlaySound("beacon/alarm")
    KKMW A 20
	KKMW A 0 A_SpawnItemEx("Bluelightning")
    KKMW A 15 Bright A_PlaySound("beacon/alarm")
    KKMW A 35 Bright
    KKMW A 35 A_SpawnItemEx("AlliedKaynBeaconSpawners",0,0,0,0,0,0,0,32|SXF_SETMASTER,0,tid)
	KKMW A 1
    Goto Death
  Death:
	TNT1 A 0
    TNT1 A 1 A_SpawnItemEx("Bluelightning")
    Stop
  Explosion:
	KKMW AA 35 A_PlaySound("weapon/warn")
	TNT1 A 0 A_SpawnItem("LargeBeaconKaboom")
    Stop
  }
}

ACTOR AlliedKaynBeaconSpawners : TaskForceBeaconActivatedSpawners
{
States
{
   Spawn:
    TNT1 A 0
    TNT1 A 0 A_SpawnItemEx("Bluelightning")
	TNT1 A 0 A_Jump(256,1)
	TNT1 A 5 A_SpawnItemEx("AlliedKaynGodSlayer",0,0,0,0,0,0,0,32|SXF_TRANSFERPOINTERS,0,tid)
	Goto End
}
}

