actor KustamKickedBarrel
{
	+notimefreeze
	projectile
	+bright
	+FORCEXYBILLBOARD	
	+thruspecies
	+EXTREMEDEATH
	species "friendly"
	seesound "fatguard/miss"
	Radius 14
	scale 1
	Damage (250)
	DamageType "TossedBarrel"
	Speed 120
	states
	{
	spawn:
		TNT1 A 0
		TNT1 A 0 A_PlaySound("silence", CHAN_VOICE)
	flying:
		3BRL A 1
		TNT1 A 0 A_SpawnItemEx ("KustamBarrelTrail",0,0,0,0,0,0,0,SXF_NOCHECKPOSITION)
		loop
	death:
	crash:
		TNT1 A 0 A_ChangeFlag ("nogravity", 1)
		BEXP C 0 Radius_Quake (3,20,0,80,0)
		TNT1 A 0 A_Explode (20,200,1)
		TNT1 A 0 A_Explode (160,200,0,1,60)
		TNT1 A 0 A_RadiusThrust (1000,300,1)
		TNT1 A 0 A_PlaySound ("world/barrelx",0,1,0,0.60)
		TNT1 AAAAAAAAAAA 0 Bright A_SpawnItemEx("LavaLazerTrail",frandom(-21,21),frandom(-21,21),frandom(-21,21),frandom(-1,1),frandom(-1,1),frandom(0,1))
		TNT1 AAAAAAAAAAA 0 Bright A_SpawnItemEx("LavaLazerEmber2",frandom(-16,16),frandom(-16,16),frandom(-16,16),frandom(-1,1),frandom(-1,1),frandom(0,1))
		TNT1 AAAAAAAAAAA 0 Bright A_SpawnItemEx("LavaLazerSmoke2",frandom(-4,4),frandom(-4,4),frandom(-4,4),frandom(-1,1),frandom(-1,1),frandom(0,1))
		TNT1 AAAAAAAAAA 0 Bright A_SpawnItemEx("LavaLazerSmoke",frandom(-4,4),frandom(-4,4),frandom(-4,4),0,0,frandom(1,2))
		WRML C 3 bright
		WRML EFGH 2 bright
		stop
	}
}


actor KustamBarrelTrail
{
	+NOBLOCKMAP
	+NOGRAVITY
	+SHADOW
	+NOTELEPORT
	+CANNOTPUSH
	+NODAMAGETHRUST
	+clientsideonly
	+bright
	Radius 14
	scale 0.90
	alpha 0.60
	states
	{
	spawn:
		TNT1 A 0
		TNT1 A 0 A_PlaySound("silence", CHAN_VOICE)
	flying:
		3BRL A 1
		TNT1 A 0 A_FadeOut (0.10)
		loop
	death:
		TNT1 A 0
		TNT1 A 1
		stop
	}
}


//Golden Barrel

actor KustamKickedGoldenBarrel : BlazThrownGoldenBarrel
{
	+notimefreeze
	projectile
	+bright
	+FORCEXYBILLBOARD	
	+thruspecies
	+EXTREMEDEATH
	+HITTRACER
	-hexenbounce
	species "friendly"
	Radius 14
	scale 1
	Damage (300)
	damagetype "SuperKick"
	Speed 120
	states
	{
	spawn:
		TNT1 A 0
		TNT1 A 0 A_PlaySound("silence", CHAN_VOICE)
	flying:
		6BRL A 1
		TNT1 A 0 A_SpawnItemEx ("KustamGoldenBarrelTrail",0,0,0,0,0,0,0,SXF_NOCHECKPOSITION)
		loop
	Xdeath:
		TNT1 A 0 A_ChangeFlag ("nogravity", 1)
		BEXP C 0 Radius_Quake (3,20,0,80,0)
		TNT1 A 0 A_PlaySound ("Subweapons/Straighthit",0)
		TNT1 A 0 A_PlaySound ("GoldenBarrel/Hit",0,1)
		TNT1 A 0 A_SpawnItemEx ("GoldenBarrelHitFX",0,0,0,0,0,0,0,SXF_NOCHECKPOSITION)
		TNT1 A 0 A_Stop
		TNT1 A 0 A_Jump (30, "CRIT")
		4BRL A 4
		TNT1 A 1 A_SpawnItemEx ("SpinningGoldenBarrel",0,0,0,frandom(-15,-7),frandom(-15,15),frandom(5,9),0, SXF_NOCHECKPOSITION)
		stop
	Death:
	crash:
		TNT1 A 0 A_ChangeFlag ("nogravity", 1)
		BEXP C 0 Radius_Quake (3,20,0,80,0)
		TNT1 A 0 A_GiveInventory ("GoldenBarrelImpact",1,AAPTR_TRACER)
		TNT1 A 0 A_JumpIf(CheckClass("GoldenBarrel", AAPTR_TRACER, TRUE), "CRIT")
		TNT1 A 1 A_SpawnItemEx ("SpinningGoldenBarrel",0,0,0,frandom(-15,-7),frandom(-15,15),frandom(5,9),0, SXF_NOCHECKPOSITION)
		TNT1 A 0 A_PlaySound ("Subweapons/Haymakermiss",0,0.60)
		TNT1 A 0 A_PlaySound ("GoldenBarrel/Hit",0,1)
		TNT1 A 0 A_SetScale (2)
		BZP2 ABCDEFGH 1
		stop
	}
}


actor KustamGoldenBarrelTrail
{
	+NOBLOCKMAP
	+NOGRAVITY
	+SHADOW
	+NOTELEPORT
	+CANNOTPUSH
	+NODAMAGETHRUST
	+clientsideonly
	+bright
	Radius 14
	scale 0.90
	alpha 0.60
	states
	{
	spawn:
		TNT1 A 0
		TNT1 A 0 A_PlaySound("silence", CHAN_VOICE)
	flying:
		6BRL A 1
		TNT1 A 0 A_FadeOut (0.10)
		loop
	death:
		TNT1 A 0
		TNT1 A 1
		stop
	}
}

actor GoldenBarrelImpact : inventory
{
	inventory.maxamount 1
}
