//Weapons/Items spawners

actor NewPlasmagunReplacer : BasicWeaponPickup Replaces PlasmagunReplacer
{
    States
    {

	 Spawn:
		PLAS A 0
		MARN A 0 ACS_NamedExecuteAlways("BDDisableNewGuns", 0, 0, 0, 0)//Check if advanced decorations are disabled.
		PLAS A 2
		TNT1 A 0 A_Jump(48, "Railgun")
		TNT1 A 0 A_Jump(64, "Freezer")
		
	Vanilla:	
	PlasmaRifle:
		PLAS A 0
		TNT1 A 0 A_SpawnItemEx ("PLasmagunSpawner",0,0,0,0,0,0,0,SXF_NOCHECKPOSITION | SXF_TRANSFERAMBUSHFLAG ,0)
		TNT1 A 1
		TNT1 A -1
		Stop
	
	 Railgun:
		PLAS A 0
		TNT1 A 0 A_SpawnItemEx ("RailgunSpawner",0,0,0,0,0,0,0,SXF_NOCHECKPOSITION | SXF_TRANSFERAMBUSHFLAG ,0)
		TNT1 A 1
		TNT1 A -1
		Stop
		
	Freezer:
		PLAS A 0
		TNT1 A 0 A_SpawnItemEx ("FreezerSpawner",0,0,0,0,0,0,0,SXF_NOCHECKPOSITION | SXF_TRANSFERAMBUSHFLAG ,0)
		TNT1 A 1
		TNT1 A -1
		Stop	
	}
}

ACTOR FreezerSpawner: CustomInventory  
{
 scale 0.8
 radius 24
 height 24
 //$category "Weapons"
 +THRUACTORS +FORCEXYBILLBOARD
 Inventory.PickupSound "PLSDRAW"
 Inventory.PickupMessage "You got the Freezer!"
 Mass 1
    States
    {

	 Spawn:
		FRZR A 0
		FRZR A 2
		TNT1 A 0 A_ChangeFlag("THRUACTORS", 0)
		TNT1 A 0 A_SpawnItem("FakePlasmagunSprite")
		TNT1 A 0 A_SpawnItem("FakeFreezerSprite")
		Loop
	Pickup:
	    TNT1 A 0
		TNT1 A 0 A_JumpIfInventory("IsPlayingAsPurist", 1, "Purist")
		TNT1 A 0 A_GiveInventory("CatsFreezer", 1)
		TNT1 A 0 A_GiveInventory("AmmoCell", 50)
		Stop
	Purist:
	    TNT1 A 0 A_GiveInventory("ClassicPlasmaRifle", 1)
		TNT1 A 0 A_GiveInventory("AmmoCell", 50)
		Stop
    }
}

ACTOR FakeFreezerSprite: RifleSpawner
{
 Scale 0.8
 +NOGRAVITY
 +FLOAT +NOCLIP +NOINTERACTION
 VisibleToPlayerClass BDoomer, Doomer2, TacticalDoomer
 States
    {

	 Spawn:
		FRZR A 0
		FRZR A 2
		Stop
    }
}
Actor NewCapturedMarine : CapturedMarine Replaces Blursphere
{

    States
		{
			Spawn:
			CAPT A 0
			TNT1 A 0 ACS_NamedExecuteAlways("BDDisableFriendlyMarines")
			CAPT A 2
			TNT1 A 0 A_SpawnItemEx("EvidenceCheckerInvisibility", 0, 0, 0, 0, 0, 0, 0, SXF_NOCHECKPOSITION)
			TNT1 A 0 A_JumPIfInventory("Clip2", 1, "Invisibility")
			TNT1 A 0 A_Jump(255, "Freezebot", "RifleMarine", "RifleMarine", "ShotgunMarine", "ShotgunMarine", "MinigunMarine", "PlasmaMarine")
			
		Freezebot:
			TNT1 A 0
			TNT1 A 0 A_SpawnItem("FreezebotAmmo")
			Stop
		
		}
}
