// --------------------------------------------------------------------------
//
//	Magazines
//
// --------------------------------------------------------------------------

ACTOR U_EmptyClip replaces EmptyClip
{
	Height 2
	Radius 2
	Speed 4
	Scale 0.8
	BounceFactor 0.3
	+BOUNCEONWALLS
	+DOOMBOUNCE
	-NOGRAVITY
	+WINDTHRUST
	+CLIENTSIDEONLY
	+MOVEWITHSECTOR
	+MISSILE
	+NOBLOCKMAP
	-DROPOFF
	+NOTELEPORT
	+FORCEXYBILLBOARD
	+NOTDMATCH
	+GHOST
	Mass 1
	SeeSound "weapons/largemagdrop"
	States
	{
	Spawn:
		TNT1 A 7 A_PlaySound("NULL")
	Fly:
		ECLI ABCDEFGH 4 A_JumpIf(waterlevel > 1, "Splash")
		Loop
	Splash:
		TNT1 A 0 A_ChangeFlag(DOOMBOUNCE,FALSE)
		TNT1 A 0 A_ChangeVelocity(VelX*0.5, VelY*0.5, VelZ, CVF_REPLACE)
		TNT1 A 0 A_CustomMissile("CasingBubulz", 0, 0, random(0, 360), CMF_ABSOLUTEPITCH, random(0,90))
		ECLI ABCD 5 ThrustThingZ(0,5,1,0)
		TNT1 A 0 A_ChangeVelocity(VelX*0.5, VelY*0.5, VelZ, CVF_REPLACE)
		TNT1 A 0 A_CustomMissile("CasingBubulz", 0, 0, random(0, 360), CMF_ABSOLUTEPITCH, random(0,90))
		ECLI EFGH 5 ThrustThingZ(0,5,1,0)
		Loop
	Death:
		TNT1 A 0 ACS_ExecuteAlways(798, 0, 0, 0, 0)
		TNT1 A 0 ACS_ExecuteAlways(789, 0, 0, 0, 0)
		ECLI G 1000
		TNT1 A 0 A_JumpIfInventory("LowGraphicsMode", 1, "Vanish")
		ECLI G 20000
		Stop
	Vanish:
		ECLI G 1 A_FadeOut(0.1)
		Wait
	}
}

ACTOR U_EmptyRocketChamber : U_EmptyClip replaces EmptyRocketChamber
{
	Scale 1.3
	BounceFactor 0.5
	States
	{
	Spawn:
		TNT1 A 7 A_PlaySound("NULL")
	Fly:
		RCSE ABCDEFGH 4 A_JumpIf(waterlevel > 1, "Splash")
		Loop
	Splash:
		TNT1 A 0 A_ChangeFlag(DOOMBOUNCE,FALSE)
		TNT1 A 0 A_ChangeVelocity(VelX*0.5, VelY*0.5, VelZ, CVF_REPLACE)
		TNT1 A 0 A_CustomMissile("CasingBubulz", 0, 0, random(0, 360), CMF_ABSOLUTEPITCH, random(0,90))
		RCSE ABCD 5 ThrustThingZ(0,5,1,0)
		TNT1 A 0 A_ChangeVelocity(VelX*0.5, VelY*0.5, VelZ, CVF_REPLACE)
		TNT1 A 0 A_CustomMissile("CasingBubulz", 0, 0, random(0, 360), CMF_ABSOLUTEPITCH, random(0,90))
		RCSE EFGH 5 ThrustThingZ(0,5,1,0)
		Loop
	Death:
		TNT1 A 0 ACS_ExecuteAlways(798, 0, 0, 0, 0)
		TNT1 A 0 ACS_ExecuteAlways(789, 0, 0, 0, 0)
		RCSE G 1000
		TNT1 A 0 A_JumpIfInventory("LowGraphicsMode", 1, "Vanish")
		RCSE G 20000
		Stop
	Vanish:
		RCSE G 1 A_FadeOut(0.1)
		Wait
	}
}


ACTOR U_EmptyCell : U_EmptyClip replaces EmptyCell
{
	Scale 0.9
	BounceFactor 0.5
	States
	{
	Spawn:
		TNT1 A 7 A_PlaySound("NULL")
	Fly:
		ECEL ABCDEFGH 4 A_JumpIf(waterlevel > 1, "Splash")
		Loop
	Splash:
		TNT1 A 0 A_ChangeFlag(DOOMBOUNCE,FALSE)
		TNT1 A 0 A_ChangeVelocity(VelX*0.5, VelY*0.5, VelZ, CVF_REPLACE)
		TNT1 A 0 A_CustomMissile("CasingBubulz", 0, 0, random(0, 360), CMF_ABSOLUTEPITCH, random(0,90))
		ECEL ABCD 5 ThrustThingZ(0,5,1,0)
		TNT1 A 0 A_ChangeVelocity(VelX*0.5, VelY*0.5, VelZ, CVF_REPLACE)
		TNT1 A 0 A_CustomMissile("CasingBubulz", 0, 0, random(0, 360), CMF_ABSOLUTEPITCH, random(0,90))
		ECEL EFGH 5 ThrustThingZ(0,5,1,0)
		Loop
	Death:
		TNT1 A 0 ACS_ExecuteAlways(798, 0, 0, 0, 0)
		TNT1 A 0 ACS_ExecuteAlways(789, 0, 0, 0, 0)
		ECEL A 1000
		TNT1 A 0 A_JumpIfInventory("LowGraphicsMode", 1, "Vanish")
		ECEL A 20000
		Stop
	Vanish:
		ECEL A 1 A_FadeOut(0.1)
		Wait
	}
}

ACTOR EmptyCore : U_EmptyClip
{
	BounceFactor 0.5
	States
	{
	Spawn:
		TNT1 A 7 A_PlaySound("NULL")
	Fly:
		RGNB ABCDEFGH 4 A_JumpIf(waterlevel > 1, "Splash")
		Loop
	Splash:
		TNT1 A 0 A_ChangeFlag(DOOMBOUNCE,FALSE)
		TNT1 A 0 A_ChangeVelocity(VelX*0.5, VelY*0.5, VelZ, CVF_REPLACE)
		TNT1 A 0 A_CustomMissile("CasingBubulz", 0, 0, random(0, 360), CMF_ABSOLUTEPITCH, random(0,90))
		RGNB ABCD 5 ThrustThingZ(0,5,1,0)
		TNT1 A 0 A_ChangeVelocity(VelX*0.5, VelY*0.5, VelZ, CVF_REPLACE)
		TNT1 A 0 A_CustomMissile("CasingBubulz", 0, 0, random(0, 360), CMF_ABSOLUTEPITCH, random(0,90))
		RGNB EFGH 5 ThrustThingZ(0,5,1,0)
		Loop
	Death:
		TNT1 A 0 ACS_ExecuteAlways(798, 0, 0, 0, 0)
		TNT1 A 0 ACS_ExecuteAlways(789, 0, 0, 0, 0)
		TNT1 A 0 A_Jump(256,"Rest1","Rest2")
		Goto Rest1
	Rest1:
		RGNB C 1000
		TNT1 A 0 A_JumpIfInventory("LowGraphicsMode", 1, "Vanish1")
		RGNB C 20000
		Stop
	Vanish1:
		RGNB C 1 A_FadeOut(0.1)
		Wait
	Rest2:
		RGNB G 1000
		TNT1 A 0 A_JumpIfInventory("LowGraphicsMode", 1, "Vanish2")
		RGNB G 20000
		Stop
	Vanish2:
		RGNB G 1 A_FadeOut(0.1)
		Wait
	}
}

ACTOR EmptyMag9mm : U_EmptyClip
{
	Scale 0.5
	States
	{
	Spawn:
		TNT1 A 7 A_PlaySound("NULL")
	Fly:
		MAG1 ABCDEFGHIJKLMNOP 4 A_JumpIf(waterlevel > 1, "Splash")
		Loop
	Splash:
		TNT1 A 0 A_ChangeFlag(DOOMBOUNCE,FALSE)
		TNT1 A 0 A_ChangeVelocity(VelX*0.5, VelY*0.5, VelZ, CVF_REPLACE)
		TNT1 A 0 A_CustomMissile("CasingBubulz", 0, 0, random(0, 360), CMF_ABSOLUTEPITCH, random(0,90))
		MAG1 ABCD 5 ThrustThingZ(0,5,1,0)
		TNT1 A 0 A_ChangeVelocity(VelX*0.5, VelY*0.5, VelZ, CVF_REPLACE)
		MAG1 EFGH 5 ThrustThingZ(0,5,1,0)
		TNT1 A 0 A_ChangeVelocity(VelX*0.5, VelY*0.5, VelZ, CVF_REPLACE)
		TNT1 A 0 A_CustomMissile("CasingBubulz", 0, 0, random(0, 360), CMF_ABSOLUTEPITCH, random(0,90))
		MAG1 IJKL 5 ThrustThingZ(0,5,1,0)
		TNT1 A 0 A_ChangeVelocity(VelX*0.5, VelY*0.5, VelZ, CVF_REPLACE)
		MAG1 MNOP 5 ThrustThingZ(0,5,1,0)
		Loop
	Death:
		TNT1 A 0 ACS_ExecuteAlways(798, 0, 0, 0, 0)
		TNT1 A 0 ACS_ExecuteAlways(789, 0, 0, 0, 0)
		TNT1 A 0 A_Jump(256,"Rest1","Rest2")
		Goto Rest1
	Rest1:
		MAG1 E 1000
		TNT1 A 0 A_JumpIfInventory("LowGraphicsMode", 1, "Vanish1")
		MAG1 E 20000
		Stop
	Vanish1:
		MAG1 E 1 A_FadeOut(0.1)
		Wait
	Rest2:
		MAG1 M 1000
		TNT1 A 0 A_JumpIfInventory("LowGraphicsMode", 1, "Vanish2")
		MAG1 M 20000
		Stop
	Vanish2:
		MAG1 M 1 A_FadeOut(0.1)
		Wait
	}
}


// --------------------------------------------------------------------------
//
//	FX
//
// --------------------------------------------------------------------------

ACTOR BulletCasingSmoke
{
	Radius 1
	Height 1
	PROJECTILE
	+NOCLIP
	Scale 0.02
	Speed 0
	RENDERSTYLE ADD
	ALPHA 0.2
	+NOTIMEFREEZE
	States
	{
	Spawn:
		TNT1 A 0
		TNT1 A 0 A_JumpIf(waterlevel > 1, "Splash")
		TNT1 A 0 ThrustThingZ (0,frandom(1,2),0,0)
		SMO2 RBCDEFGHIJKLMNOPQ 2
		Stop
	Splash:
		TNT1 A 0 A_Jump(192, 2)
		TNT1 A 0 A_CustomMissile("CasingBubulz", 0, 0, random(0, 360), CMF_ABSOLUTEPITCH, random(0,90))
		TNT1 A 0
		Stop
	}
}
/*
ACTOR U_MGLinks Replaces MGLinks
{
	Height 2
	Radius 2
	Speed 5
	Scale 0.16
	+RANDOMIZE
	+DOOMBOUNCE
	-NOGRAVITY
	+WINDTHRUST
	+CLIENTSIDEONLY
	+MOVEWITHSECTOR
	+MISSILE
	+NOBLOCKMAP
	-DROPOFF
	+NOTELEPORT
	+FORCEXYBILLBOARD
	+NOTDMATCH
	+GHOST
	+FLOORCLIP
	+THRUACTORS
	Mass 4
	BounceFactor 0.1
	SeeSound "weapons/casing"
	States
	{
	Spawn:
		TNT1 A 0
		TNT1 A 0 A_ScaleVelocity(frandom(0.9,1.2))
		TNT1 A 0 A_Jump(128,3)
		TNT1 A 0 A_SetScale(0.16,0.16)
		TNT1 A 0 A_Jump(256,3,12,21,31)
		TNT1 A 0 A_SetScale(-0.16,0.16)
		TNT1 A 0 A_Jump(256,1,11,19,29)
	Spawn1:
		LINK AABBCCDD 1
		TNT1 A 0 A_JumpIf(waterlevel > 1, "Splash1")
		LINK EEFFGGHH 1
		TNT1 A 0 A_JumpIf(waterlevel > 1, "Splash1")
		Loop
	Spawn2:
		LINK IIJJKKLL 1
		TNT1 A 0 A_JumpIf(waterlevel > 1, "Splash2")
		LINK MMNNOOPP 1
		TNT1 A 0 A_JumpIf(waterlevel > 1, "Splash2")
		Loop
	Death:
		TNT1 A 0 ACS_ExecuteAlways(798, 0, 0, 0, 0)
		TNT1 A 0 ACS_ExecuteAlways(789, 0, 0, 0, 0)
		TNT1 A 0 A_Jump(256,"Rest1","Rest2","Rest3","Rest4","Rest5","Rest6")
		Goto Rest1
	Rest1:
		LINK B 1000
		TNT1 A 0 A_JumpIfInventory("LowGraphicsMode", 1, "Vanish1")
		LINK B 20000
		Stop
	Vanish1:
		LINK B 1 A_FadeOut(0.1)
		Wait
	Rest2:
		LINK D 1000
		TNT1 A 0 A_JumpIfInventory("LowGraphicsMode", 1, "Vanish2")
		LINK D 20000
		Stop
	Vanish2:
		LINK D 1 A_FadeOut(0.1)
		Wait
	Rest3:
		LINK F 1000
		TNT1 A 0 A_JumpIfInventory("LowGraphicsMode", 1, "Vanish3")
		LINK F 20000
		Stop
	Vanish3:
		LINK F 1 A_FadeOut(0.1)
		Wait
	Rest4:
		LINK J 1000
		TNT1 A 0 A_JumpIfInventory("LowGraphicsMode", 1, "Vanish4")
		LINK J 20000
		Stop
	Vanish4:
		LINK J 1 A_FadeOut(0.1)
		Wait
	Rest5:
		LINK L 1000
		TNT1 A 0 A_JumpIfInventory("LowGraphicsMode", 1, "Vanish5")
		LINK L 20000
		Stop
	Vanish5:
		LINK L 1 A_FadeOut(0.1)
		Wait
	Rest6:
		LINK N 1000
		TNT1 A 0 A_JumpIfInventory("LowGraphicsMode", 1, "Vanish6")
		LINK N 20000
		Stop
	Vanish6:
		LINK N 1 A_FadeOut(0.1)
		Wait		
	Splash1:
		TNT1 A 0 A_ChangeFlag(DOOMBOUNCE,FALSE)
		TNT1 A 0 A_ChangeVelocity(VelX*0.5, VelY*0.5, VelZ, CVF_REPLACE)
		LINK ABCD 3 ThrustThingZ(0,5,1,0)
		TNT1 A 0 A_ChangeVelocity(VelX*0.5, VelY*0.5, VelZ, CVF_REPLACE)
		LINK EFGH 3 ThrustThingZ(0,5,1,0)
		Loop
	Splash2:
		TNT1 A 0 A_ChangeFlag(DOOMBOUNCE,FALSE)
		TNT1 A 0 A_ChangeVelocity(VelX*0.5, VelY*0.5, VelZ, CVF_REPLACE)
		LINK IJKL 3 ThrustThingZ(0,5,1,0)
		TNT1 A 0 A_ChangeVelocity(VelX*0.5, VelY*0.5, VelZ, CVF_REPLACE)
		LINK MNOP 3 ThrustThingZ(0,5,1,0)
		Loop
	}
}
*/

// --------------------------------------------------------------------------
//
//	Casing spawner
//
// --------------------------------------------------------------------------

ACTOR U_RifleCaseSpawn replaces RifleCaseSpawn
{
	Speed 20
	PROJECTILE
	+NOCLIP
	+CLIENTSIDEONLY
	States
	{
	Spawn:
		TNT1 A 0
		TNT1 A 1 A_CustomMissile("U_EmptyBrass2",1,0,random(-80,-100),2,random(30,50))
		Stop
	}
}

ACTOR U_ShotCaseSpawn : U_RifleCaseSpawn replaces ShotCaseSpawn
{
	States
	{
	Spawn:
		TNT1 A 0
		TNT1 A 1 A_CustomMissile("U_ShotgunCasing",0,0,random(-80,-100),2,random(40,60))
		Stop
	}
} 

Actor U_SSGCaseSpawner : U_RifleCaseSpawn replaces SSGCaseSpawner
{
	States
	{
	Spawn:
		TNT1 A 0
		TNT1 A 1 A_CustomMissile("U_ShotgunCasing",-13,10,random(80,100),2,random(50,60))
		Stop
	}
}

Actor SSGCaseSpawner2 : U_SSGCaseSpawner
{
	States
	{
	Spawn:
		TNT1 A 0
		TNT1 A 1 A_CustomMissile("U_ShotgunCasing",-13,-10,random(250,280),2,random(50,60))
		Stop
	}
}

ACTOR RevolverCaseSpawn : U_RifleCaseSpawn
{
	States
	{
	Spawn:
		TNT1 A 0
		TNT1 A 1 A_CustomMissile("EmptyBrassRevolver",-5,0,random(40,-40),2,random(-45,-80))
		Stop
	}
}

ACTOR AutoShotCaseSpawn : U_RifleCaseSpawn
{
	States
	{
	Spawn:
        TNT1 A 0
		TNT1 A 1 A_CustomMissile("AutoShotgunCasing",0,0,random(-80,-100),2,random(40,60))
		Stop
	}
}

ACTOR 9mmCaseSpawn : U_RifleCaseSpawn replaces PistolCaseSpawn
{
	States
	{
	Spawn:
		TNT1 A 0
		TNT1 A 1 A_CustomMissile("EmptyBrass9mm",0,-3,random(-80,-100),2,random(30,50))
		Stop
	}
}

// --------------------------------------------------------------------------
//
//	Casings
//
// --------------------------------------------------------------------------

ACTOR U_EmptyBrass replaces EmptyBrass //Minigun, Buzzsaw
{
	Height 2
	Radius 2
	Speed 6
	Scale 0.17
	+BOUNCEONWALLS
	+RANDOMIZE
	+DOOMBOUNCE
	-NOGRAVITY
	+WINDTHRUST
	+CLIENTSIDEONLY
	+MOVEWITHSECTOR
	+MISSILE
	+NOBLOCKMAP
	-DROPOFF
	+NOTELEPORT
	+FORCEXYBILLBOARD
	+NOTDMATCH
	+GHOST
	+FLOORCLIP
	+THRUACTORS
	Mass 4
	BounceFactor 0.3
	SeeSound "weapons/casing"
	States
	{
	Spawn:
		TNT1 A 0
		TNT1 A 0 A_ScaleVelocity(frandom(0.9,1.2))
		TNT1 A 0 A_Jump(256,1,11,19,29,37,57,54,64)
	Spawn1:
		CASD AABBCCDD 1 A_SpawnItemEx("BulletCasingSmoke")
		TNT1 A 0 A_JumpIf(waterlevel > 1, "Splash")
		CASD EEFFGGHH 1 A_SpawnItemEx("BulletCasingSmoke")
		TNT1 A 0 A_JumpIf(waterlevel > 1, "Splash")
		CASD IIJJKKLL 1 A_SpawnItemEx("BulletCasingSmoke")
		TNT1 A 0 A_JumpIf(waterlevel > 1, "Splash")
		CASD MMNNOOPP 1 A_SpawnItemEx("BulletCasingSmoke")
		TNT1 A 0 A_JumpIf(waterlevel > 1, "Splash")
		Loop
	Spawn2:
		CASD PPOONNMM 1 A_SpawnItemEx("BulletCasingSmoke")
		TNT1 A 0 A_JumpIf(waterlevel > 1, "Splash")
		CASD LLKKJJII 1 A_SpawnItemEx("BulletCasingSmoke")
		TNT1 A 0 A_JumpIf(waterlevel > 1, "Splash")
		CASD HHGGFFEE 1 A_SpawnItemEx("BulletCasingSmoke")
		TNT1 A 0 A_JumpIf(waterlevel > 1, "Splash")
		CASD DDCCBBAA 1 A_SpawnItemEx("BulletCasingSmoke")
		TNT1 A 0 A_JumpIf(waterlevel > 1, "Splash")
		Loop
	Death:
		TNT1 A 0 ACS_ExecuteAlways(798, 0, 0, 0, 0)
		TNT1 A 0 ACS_ExecuteAlways(789, 0, 0, 0, 0)
		TNT1 A 0 A_Jump(256,"Rest1","Rest2","Rest3","Rest4","Rest5","Rest6")
		Goto Rest1
	Rest1:
		CASD Q 1000
		TNT1 A 0 A_JumpIfInventory("LowGraphicsMode", 1, "Vanish1")
		CASD Q 20000
		Stop
	Vanish1:
		CASD Q 1 A_FadeOut(0.1)
		Wait
	Rest2:
		CASD R 1000
		TNT1 A 0 A_JumpIfInventory("LowGraphicsMode", 1, "Vanish2")
		CASD R 20000
		Stop
	Vanish2:
		CASD R 1 A_FadeOut(0.1)
		Wait
	Rest3:
		CASD S 1000
		TNT1 A 0 A_JumpIfInventory("LowGraphicsMode", 1, "Vanish3")
		CASD S 20000
		Stop
	Vanish3:
		CASD S 1 A_FadeOut(0.1)
		Wait
	Rest4:
		CASD T 1000
		TNT1 A 0 A_JumpIfInventory("LowGraphicsMode", 1, "Vanish4")
		CASD T 20000
		Stop
	Vanish4:
		CASD T 1 A_FadeOut(0.1)
		Wait
	Rest5:
		CASD U 1000
		TNT1 A 0 A_JumpIfInventory("LowGraphicsMode", 1, "Vanish5")
		CASD U 20000
		Stop
	Vanish5:
		CASD U 1 A_FadeOut(0.1)
		Wait
	Rest6:
		CASD V 1000
		TNT1 A 0 A_JumpIfInventory("LowGraphicsMode", 1, "Vanish6")
		CASD V 20000
		Stop
	Vanish6:
		CASD V 1 A_FadeOut(0.1)
		Wait
	Splash:
		TNT1 A 0 A_ChangeFlag(DOOMBOUNCE,FALSE)
		TNT1 A 0 A_ChangeVelocity(VelX*0.5, VelY*0.5, VelZ, CVF_REPLACE)
		CASD ABCD 3 ThrustThingZ(0,5,1,0)
		TNT1 A 0 A_ChangeVelocity(VelX*0.5, VelY*0.5, VelZ, CVF_REPLACE)
		CASD EFGH 3 ThrustThingZ(0,5,1,0)
		TNT1 A 0 A_ChangeVelocity(VelX*0.5, VelY*0.5, VelZ, CVF_REPLACE)
		CASD IJKL 3 ThrustThingZ(0,5,1,0)
		TNT1 A 0 A_ChangeVelocity(VelX*0.5, VelY*0.5, VelZ, CVF_REPLACE)
		CASD MNOP 3 ThrustThingZ(0,5,1,0)
		TNT1 A 0 A_CustomMissile("CasingBubulz", 0, 0, random(0, 360), CMF_ABSOLUTEPITCH, random(0,90))
		Loop
	}
}

ACTOR U_EmptyBrass2 : U_EmptyBrass //Rifle, Machinegun, Sniper
{
	Speed 5
	Scale 0.14
	States
	{
	Spawn:
		TNT1 A 0
		TNT1 A 0 A_ScaleVelocity(frandom(0.9,1.2))
		TNT1 A 0 A_Jump(256,1,11,19,29,37,57,54,64)
	Spawn1:
		CASC AABBCCDD 1 A_SpawnItemEx("BulletCasingSmoke")
		TNT1 A 0 A_JumpIf(waterlevel > 1, "Splash")
		CASC EEFFGGHH 1 A_SpawnItemEx("BulletCasingSmoke")
		TNT1 A 0 A_JumpIf(waterlevel > 1, "Splash")
		CASC IIJJKKLL 1 A_SpawnItemEx("BulletCasingSmoke")
		TNT1 A 0 A_JumpIf(waterlevel > 1, "Splash")
		CASC MMNNOOPP 1 A_SpawnItemEx("BulletCasingSmoke")
		TNT1 A 0 A_JumpIf(waterlevel > 1, "Splash")
		Loop
	Spawn2:
		CASC PPOONNMM 1 A_SpawnItemEx("BulletCasingSmoke")
		TNT1 A 0 A_JumpIf(waterlevel > 1, "Splash")
		CASC LLKKJJII 1 A_SpawnItemEx("BulletCasingSmoke")
		TNT1 A 0 A_JumpIf(waterlevel > 1, "Splash")
		CASC HHGGFFEE 1 A_SpawnItemEx("BulletCasingSmoke")
		TNT1 A 0 A_JumpIf(waterlevel > 1, "Splash")
		CASC DDCCBBAA 1 A_SpawnItemEx("BulletCasingSmoke")
		TNT1 A 0 A_JumpIf(waterlevel > 1, "Splash")
		Loop
	Death:
		TNT1 A 0 ACS_ExecuteAlways(798, 0, 0, 0, 0)
		TNT1 A 0 ACS_ExecuteAlways(789, 0, 0, 0, 0)
		TNT1 A 0 A_Jump(256,"Rest1","Rest2","Rest3","Rest4","Rest5","Rest6")
		Goto Rest1
	Rest1:
		CASC Q 1000
		TNT1 A 0 A_JumpIfInventory("LowGraphicsMode", 1, "Vanish1")
		CASC Q 20000
		Stop
	Vanish1:
		CASC Q 1 A_FadeOut(0.1)
		Wait
	Rest2:
		CASC R 1000
		TNT1 A 0 A_JumpIfInventory("LowGraphicsMode", 1, "Vanish2")
		CASC R 20000
		Stop
	Vanish2:
		CASC R 1 A_FadeOut(0.1)
		Wait
	Rest3:
		CASC S 1000
		TNT1 A 0 A_JumpIfInventory("LowGraphicsMode", 1, "Vanish3")
		CASC S 20000
		Stop
	Vanish3:
		CASC S 1 A_FadeOut(0.1)
		Wait
	Rest4:
		CASC T 1000
		TNT1 A 0 A_JumpIfInventory("LowGraphicsMode", 1, "Vanish4")
		CASC T 20000
		Stop
	Vanish4:
		CASC T 1 A_FadeOut(0.1)
		Wait
	Rest5:
		CASC U 1000
		TNT1 A 0 A_JumpIfInventory("LowGraphicsMode", 1, "Vanish5")
		CASC U 20000
		Stop
	Vanish5:
		CASC U 1 A_FadeOut(0.1)
		Wait
	Rest6:
		CASC V 1000
		TNT1 A 0 A_JumpIfInventory("LowGraphicsMode", 1, "Vanish6")
		CASC V 20000
		Stop
	Vanish6:
		CASC V 1 A_FadeOut(0.1)
		Wait
	Splash:
		TNT1 A 0 A_ChangeFlag(DOOMBOUNCE,FALSE)
		TNT1 A 0 A_ChangeVelocity(VelX*0.5, VelY*0.5, VelZ, CVF_REPLACE)
		CASC ABCD 3 ThrustThingZ(0,5,1,0)
		TNT1 A 0 A_ChangeVelocity(VelX*0.5, VelY*0.5, VelZ, CVF_REPLACE)
		CASC EFGH 3 ThrustThingZ(0,5,1,0)
		TNT1 A 0 A_ChangeVelocity(VelX*0.5, VelY*0.5, VelZ, CVF_REPLACE)
		CASC IJKL 3 ThrustThingZ(0,5,1,0)
		TNT1 A 0 A_ChangeVelocity(VelX*0.5, VelY*0.5, VelZ, CVF_REPLACE)
		CASC MNOP 3 ThrustThingZ(0,5,1,0)
		TNT1 A 0 A_CustomMissile("CasingBubulz", 0, 0, random(0, 360), CMF_ABSOLUTEPITCH, random(0,90))
		Loop
	}
}

ACTOR EmptyBrass9mm : U_EmptyBrass
{
	Speed 5
	Scale 0.10
	Mass 2
	BounceFactor 0.4
	States
	{
	Spawn:
		TNT1 A 0
		TNT1 A 0 A_ScaleVelocity(frandom(0.9,1.2))
		TNT1 A 0 A_Jump(256,1,11,19,29,37,57,54,64)
	Spawn1:
		CASA AABBCCDD 1 A_SpawnItemEx("BulletCasingSmoke")
		TNT1 A 0 A_JumpIf(waterlevel > 1, "Splash")
		CASA EEFFGGHH 1 A_SpawnItemEx("BulletCasingSmoke")
		TNT1 A 0 A_JumpIf(waterlevel > 1, "Splash")
		CASA IIJJKKLL 1 A_SpawnItemEx("BulletCasingSmoke")
		TNT1 A 0 A_JumpIf(waterlevel > 1, "Splash")
		CASA MMNNOOPP 1 A_SpawnItemEx("BulletCasingSmoke")
		TNT1 A 0 A_JumpIf(waterlevel > 1, "Splash")
		Loop
	Spawn2:
		CASA PPOONNMM 1 A_SpawnItemEx("BulletCasingSmoke")
		TNT1 A 0 A_JumpIf(waterlevel > 1, "Splash")
		CASA LLKKJJII 1 A_SpawnItemEx("BulletCasingSmoke")
		TNT1 A 0 A_JumpIf(waterlevel > 1, "Splash")
		CASA HHGGFFEE 1 A_SpawnItemEx("BulletCasingSmoke")
		TNT1 A 0 A_JumpIf(waterlevel > 1, "Splash")
		CASA DDCCBBAA 1 A_SpawnItemEx("BulletCasingSmoke")
		TNT1 A 0 A_JumpIf(waterlevel > 1, "Splash")
		Loop
	Death:
		TNT1 A 0 ACS_ExecuteAlways(798, 0, 0, 0, 0)
		TNT1 A 0 ACS_ExecuteAlways(789, 0, 0, 0, 0)
		TNT1 A 0 A_Jump(256,"Rest1","Rest2","Rest3","Rest4","Rest5","Rest6")
		Goto Rest1
	Rest1:
		CASA Q 1000
		TNT1 A 0 A_JumpIfInventory("LowGraphicsMode", 1, "Vanish1")
		CASA Q 20000
		Stop
	Vanish1:
		CASA Q 1 A_FadeOut(0.1)
		Wait
	Rest2:
		CASA R 1000
		TNT1 A 0 A_JumpIfInventory("LowGraphicsMode", 1, "Vanish2")
		CASA R 20000
		Stop
	Vanish2:
		CASA R 1 A_FadeOut(0.1)
		Wait
	Rest3:
		CASA S 1000
		TNT1 A 0 A_JumpIfInventory("LowGraphicsMode", 1, "Vanish3")
		CASA S 20000
		Stop
	Vanish3:
		CASA S 1 A_FadeOut(0.1)
		Wait
	Rest4:
		CASA T 1000
		TNT1 A 0 A_JumpIfInventory("LowGraphicsMode", 1, "Vanish4")
		CASA T 20000
		Stop
	Vanish4:
		CASA T 1 A_FadeOut(0.1)
		Wait
	Rest5:
		CASA U 1000
		TNT1 A 0 A_JumpIfInventory("LowGraphicsMode", 1, "Vanish5")
		CASA U 20000
		Stop
	Vanish5:
		CASA U 1 A_FadeOut(0.1)
		Wait
	Rest6:
		CASA V 1000
		TNT1 A 0 A_JumpIfInventory("LowGraphicsMode", 1, "Vanish6")
		CASA V 20000
		Stop
	Vanish6:
		CASA V 1 A_FadeOut(0.1)
		Wait
	Splash:
		TNT1 A 0 A_ChangeFlag(DOOMBOUNCE,FALSE)
		TNT1 A 0 A_ChangeVelocity(VelX*0.5, VelY*0.5, VelZ, CVF_REPLACE)
		CASA ABCD 3 ThrustThingZ(0,5,1,0)
		TNT1 A 0 A_ChangeVelocity(VelX*0.5, VelY*0.5, VelZ, CVF_REPLACE)
		CASA EFGH 3 ThrustThingZ(0,5,1,0)
		TNT1 A 0 A_ChangeVelocity(VelX*0.5, VelY*0.5, VelZ, CVF_REPLACE)
		CASA IJKL 3 ThrustThingZ(0,5,1,0)
		TNT1 A 0 A_ChangeVelocity(VelX*0.5, VelY*0.5, VelZ, CVF_REPLACE)
		CASA MNOP 3 ThrustThingZ(0,5,1,0)
		TNT1 A 0 A_CustomMissile("CasingBubulz", 0, 0, random(0, 360), CMF_ABSOLUTEPITCH, random(0,90))
		Loop
	}
}

ACTOR EmptyBrassRevolver : U_EmptyBrass
{
	Scale 0.11
	Mass 2
	BounceFactor 0.4
	States
	{
	Spawn:
		TNT1 A 0
		TNT1 A 0 A_ScaleVelocity(frandom(0.9,1.2))
		TNT1 A 0 A_Jump(256,1,11,19,29,37,57,54,64)
	Spawn1:
		CASB AABBCCDD 1 A_SpawnItemEx("BulletCasingSmoke")
		TNT1 A 0 A_JumpIf(waterlevel > 1, "Splash")
		CASB EEFFGGHH 1 A_SpawnItemEx("BulletCasingSmoke")
		TNT1 A 0 A_JumpIf(waterlevel > 1, "Splash")
		CASB IIJJKKLL 1 A_SpawnItemEx("BulletCasingSmoke")
		TNT1 A 0 A_JumpIf(waterlevel > 1, "Splash")
		CASB MMNNOOPP 1 A_SpawnItemEx("BulletCasingSmoke")
		TNT1 A 0 A_JumpIf(waterlevel > 1, "Splash")
		Loop
	Spawn2:
		CASB PPOONNMM 1 A_SpawnItemEx("BulletCasingSmoke")
		TNT1 A 0 A_JumpIf(waterlevel > 1, "Splash")
		CASB LLKKJJII 1 A_SpawnItemEx("BulletCasingSmoke")
		TNT1 A 0 A_JumpIf(waterlevel > 1, "Splash")
		CASB HHGGFFEE 1 A_SpawnItemEx("BulletCasingSmoke")
		TNT1 A 0 A_JumpIf(waterlevel > 1, "Splash")
		CASB DDCCBBAA 1 A_SpawnItemEx("BulletCasingSmoke")
		TNT1 A 0 A_JumpIf(waterlevel > 1, "Splash")
		Loop
	Death:
		TNT1 A 0 ACS_ExecuteAlways(798, 0, 0, 0, 0)
		TNT1 A 0 ACS_ExecuteAlways(789, 0, 0, 0, 0)
		TNT1 A 0 A_Jump(256,"Rest1","Rest2","Rest3","Rest4","Rest5","Rest6")
		Goto Rest1
	Rest1:
		CASB Q 1000
		TNT1 A 0 A_JumpIfInventory("LowGraphicsMode", 1, "Vanish1")
		CASB Q 20000
		Stop
	Vanish1:
		CASB Q 1 A_FadeOut(0.1)
		Wait
	Rest2:
		CASB R 1000
		TNT1 A 0 A_JumpIfInventory("LowGraphicsMode", 1, "Vanish2")
		CASB R 20000
		Stop
	Vanish2:
		CASB R 1 A_FadeOut(0.1)
		Wait
	Rest3:
		CASB S 1000
		TNT1 A 0 A_JumpIfInventory("LowGraphicsMode", 1, "Vanish3")
		CASB S 20000
		Stop
	Vanish3:
		CASB S 1 A_FadeOut(0.1)
		Wait
	Rest4:
		CASB T 1000
		TNT1 A 0 A_JumpIfInventory("LowGraphicsMode", 1, "Vanish4")
		CASB T 20000
		Stop
	Vanish4:
		CASB T 1 A_FadeOut(0.1)
		Wait
	Rest5:
		CASB U 1000
		TNT1 A 0 A_JumpIfInventory("LowGraphicsMode", 1, "Vanish5")
		CASB U 20000
		Stop
	Vanish5:
		CASB U 1 A_FadeOut(0.1)
		Wait
	Rest6:
		CASB V 1000
		TNT1 A 0 A_JumpIfInventory("LowGraphicsMode", 1, "Vanish6")
		CASB V 20000
		Stop
	Vanish6:
		CASB V 1 A_FadeOut(0.1)
		Wait
	Splash:
		TNT1 A 0 A_ChangeFlag(DOOMBOUNCE,FALSE)
		TNT1 A 0 A_ChangeVelocity(VelX*0.5, VelY*0.5, VelZ, CVF_REPLACE)
		CASB ABCD 3 ThrustThingZ(0,5,1,0)
		TNT1 A 0 A_ChangeVelocity(VelX*0.5, VelY*0.5, VelZ, CVF_REPLACE)
		CASB EFGH 3 ThrustThingZ(0,5,1,0)
		TNT1 A 0 A_ChangeVelocity(VelX*0.5, VelY*0.5, VelZ, CVF_REPLACE)
		CASB IJKL 3 ThrustThingZ(0,5,1,0)
		TNT1 A 0 A_ChangeVelocity(VelX*0.5, VelY*0.5, VelZ, CVF_REPLACE)
		CASB MNOP 3 ThrustThingZ(0,5,1,0)
		TNT1 A 0 A_CustomMissile("CasingBubulz", 0, 0, random(0, 360), CMF_ABSOLUTEPITCH, random(0,90))
		Loop
	}
}

ACTOR U_ShotgunCasing : U_EmptyBrass replaces ShotgunCasing
{
	Mass 2
	Scale 0.16
	BounceFactor 0.4
	SeeSound "weapons/shell"
	States
	{
	Spawn:
		TNT1 A 0
		TNT1 A 0 A_ScaleVelocity(frandom(0.9,1.2))
		TNT1 A 0 A_Jump(256,1,15,30,45)
	Spawn1:
		CAS2 AAABBB 1 A_SpawnItemEx("BulletCasingSmoke")
		TNT1 A 0 A_JumpIf(waterlevel > 1, "Splash")
		CAS2 CCCDDD 1 A_SpawnItemEx("BulletCasingSmoke")
		TNT1 A 0 A_JumpIf(waterlevel > 1, "Splash")
		CAS2 EEEFFF 1 A_SpawnItemEx("BulletCasingSmoke")
		TNT1 A 0 A_JumpIf(waterlevel > 1, "Splash")
		CAS2 GGGHHH 1 A_SpawnItemEx("BulletCasingSmoke")
		TNT1 A 0 A_JumpIf(waterlevel > 1, "Splash")
		Loop
	Spawn2:
		CAS2 HHHGGG 1 A_SpawnItemEx("BulletCasingSmoke")
		TNT1 A 0 A_JumpIf(waterlevel > 1, "Splash")
		CAS2 FFFEEE 1 A_SpawnItemEx("BulletCasingSmoke")
		TNT1 A 0 A_JumpIf(waterlevel > 1, "Splash")
		CAS2 DDDCCC 1 A_SpawnItemEx("BulletCasingSmoke")
		TNT1 A 0 A_JumpIf(waterlevel > 1, "Splash")
		CAS2 BBBAAA 1 A_SpawnItemEx("BulletCasingSmoke")
		TNT1 A 0 A_JumpIf(waterlevel > 1, "Splash")
		Loop
	Death:
		TNT1 A 0 ACS_ExecuteAlways(798, 0, 0, 0, 0)
		TNT1 A 0 ACS_ExecuteAlways(789, 0, 0, 0, 0)
		TNT1 A 0 A_Jump(256,"Rest1","Rest2","Rest3","Rest4","Rest5","Rest6")
		Goto Rest1
	Rest1:
		CAS2 I 1000
		TNT1 A 0 A_JumpIfInventory("LowGraphicsMode", 1, "Vanish1")
		CAS2 I 20000
		Stop
	Vanish1:
		CAS2 I 1 A_FadeOut(0.1)
		Wait
	Rest2:
		CAS2 J 1000
		TNT1 A 0 A_JumpIfInventory("LowGraphicsMode", 1, "Vanish2")
		CAS2 J 20000
		Stop
	Vanish2:
		CAS2 J 1 A_FadeOut(0.1)
		Wait
	Rest3:
		CAS2 K 1000
		TNT1 A 0 A_JumpIfInventory("LowGraphicsMode", 1, "Vanish3")
		CAS2 K 20000
		Stop
	Vanish3:
		CAS2 K 1 A_FadeOut(0.1)
		Wait
	Rest4:
		CAS2 L 1000
		TNT1 A 0 A_JumpIfInventory("LowGraphicsMode", 1, "Vanish4")
		CAS2 L 20000
		Stop
	Vanish4:
		CAS2 L 1 A_FadeOut(0.1)
		Wait
	Rest5:
		CAS2 M 1000
		TNT1 A 0 A_JumpIfInventory("LowGraphicsMode", 1, "Vanish5")
		CAS2 M 20000
		Stop
	Vanish5:
		CAS2 M 1 A_FadeOut(0.1)
		Wait
	Rest6:
		CAS2 N 1000
		TNT1 A 0 A_JumpIfInventory("LowGraphicsMode", 1, "Vanish6")
		CAS2 N 20000
		Stop
	Vanish6:
		CAS2 N 1 A_FadeOut(0.1)
		Wait
	Splash:
		TNT1 A 0 A_ChangeFlag(DOOMBOUNCE,FALSE)
		TNT1 A 0 A_ChangeVelocity(VelX*0.5, VelY*0.5, VelZ, CVF_REPLACE)
		CAS2 ABCD 3 ThrustThingZ(0,5,1,0)
		TNT1 A 0 A_ChangeVelocity(VelX*0.5, VelY*0.5, VelZ, CVF_REPLACE)
		CAS2 EFGH 3 ThrustThingZ(0,5,1,0)
		TNT1 A 0 A_ChangeVelocity(VelX*0.5, VelY*0.5, VelZ, CVF_REPLACE)
		CAS2 ABCD 3 ThrustThingZ(0,5,1,0)
		TNT1 A 0 A_ChangeVelocity(VelX*0.5, VelY*0.5, VelZ, CVF_REPLACE)
		CAS2 EFGH 3 ThrustThingZ(0,5,1,0)
		TNT1 A 0 A_CustomMissile("CasingBubulz", 0, 0, random(0, 360), CMF_ABSOLUTEPITCH, random(0,90))
		Loop
	}
}

ACTOR AutoShotgunCasing : U_ShotgunCasing
{
	translation "176:191=114:127", "16:47=114:127"
}

ACTOR U_GiantEmptyBrass: U_EmptyBrass replaces GiantEmptyBrass
{
	Gravity 0.8
	Speed 12
	Scale 0.5
}