//++++++++++++++++++++++++++++++++
//------------BOMBS---------------
//++++++++++++++++++++++++++++++++

//=================
//====Spikebomb====
//=================


actor Spikebomb
{
	+notimefreeze
	projectile
	+bloodlessimpact
	+bright
	damage (150)
	damagetype "macebomb"
	speed 35
	+thruspecies
	+FORCEPAIN
	species "friendly"
	+FORCEXYBILLBOARD
	+hexenbounce
	-NOGRAVITY
	seesound "cannon/lilclang"
	radius 10
	height 12
	reactiontime 25
	scale 1
	Gravity 1
	bouncecount 4
	states
	{
	spawn:
		TNT1 A 0 
		TNT1 A 0 A_PlaySound("silence", CHAN_VOICE)
	flight:
		DSBM A 2 A_SpawnItemEx("LavaLazersmoke",0,0,10,0,0,frandom(2,5))
		DSBM B 2 A_SpawnItemEx("LavaLazersmoke",0,0,10,0,0,frandom(2,5))
		DSBM C 2 A_SpawnItemEx("LavaLazersmoke",0,0,10,0,0,frandom(2,5))
		DSBM D 2 A_SpawnItemEx("LavaLazersmoke",0,0,10,0,0,frandom(2,5))
		TNT1 A 0 a_countdown
		loop
	death:
		DSBM A 1 a_stop
		DSBM A 33
		DSBM E 3
		DSBM A 3
		DSBM E 2
		DSBM A 2
		DSBM E 1
		DSBM A 1
		DSBM E 1
		DSBM A 1
		TNT1 A 0 a_playsound ("doomslayer/wrathnormal",0,1,0,0.6)
		WRML B 4 bright a_explode (360,180,1,1)
		TNT1 A 0 Radius_Quake (2,6,0,10,0)
		TNT1 AAAAAAAAAAA 0 Bright A_SpawnItemEx("LavaLazerTrail",frandom(-21,21),frandom(-21,21),frandom(10,31),frandom(-6,6),frandom(-4,8),frandom(2,3))
		TNT1 AAAAAAAAAAA 0 Bright A_SpawnItemEx("LavaLazerEmber2",frandom(-16,16),frandom(-16,16),frandom(16,26),frandom(-1,1),frandom(-7,6),frandom(3,5))
		TNT1 AAAAAAAAAAA 0 Bright A_SpawnItemEx("LavaLazerSmoke2",frandom(-4,4),frandom(-4,4),frandom(4,8),frandom(-4,6),frandom(-5,6),frandom(2,5))
		TNT1 AAAAAAAAAA 0 Bright A_SpawnItemEx("LavaLazerSmoke",frandom(-4,4),frandom(-4,4),frandom(4,8),frandom(-4,6),frandom(-5,6),frandom(2,6))
		WRML C 3 bright
		WRML EFGH 2 bright
		stop
	Xdeath:
		TNT1 A 0
		TNT1 A 0 a_playsound ("doomslayer/zerkhit",CHAN_VOICE)
		TNT1 A 0 Radius_Quake (1,12,0,10,0)
		DSBM A 1 a_stop
		DSBM A 33
		DSBM E 3
		DSBM A 3
		DSBM E 2
		DSBM A 2
		DSBM E 1
		DSBM A 1
		DSBM E 1
		DSBM A 1
		TNT1 A 0 a_playsound ("doomslayer/wrathnormal",0)
		WRML B 4 bright a_explode (360,180,1,1)
		TNT1 A 0 Radius_Quake (2,6,0,10,0)
		TNT1 AAAAAAAAAAA 0 Bright A_SpawnItemEx("LavaLazerTrail",frandom(-21,21),frandom(-21,21),frandom(10,31),frandom(-6,6),frandom(-4,8),frandom(2,3))
		TNT1 AAAAAAAAAAA 0 Bright A_SpawnItemEx("LavaLazerEmber2",frandom(-16,16),frandom(-16,16),frandom(16,26),frandom(-1,1),frandom(-7,6),frandom(3,5))
		TNT1 AAAAAAAAAAA 0 Bright A_SpawnItemEx("LavaLazerSmoke2",frandom(-4,4),frandom(-4,4),frandom(4,8),frandom(-4,6),frandom(-5,6),frandom(2,5))
		TNT1 AAAAAAAAAA 0 Bright A_SpawnItemEx("LavaLazerSmoke",frandom(-4,4),frandom(-4,4),frandom(4,8),frandom(-4,6),frandom(-5,6),frandom(2,6))
		WRML C 3 bright
		WRML EFGH 2 bright
		stop

	}
}

//++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++
//++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++


//=================
//==Sapphire Bomb==
//=================

actor beambomb
{
	+notimefreeze
	projectile
	+bloodlessimpact
	+bright
	damage (50)
	speed 35
	+thruspecies
	species "friendly"
	+FORCEXYBILLBOARD
	+hexenbounce
	+bounceonactors
	+USEBOUNCESTATE
	bouncefactor 2
	-NOGRAVITY
	seesound "doomslayer/glassbounce"
	radius 10
	height 12
	reactiontime 40
	scale 1
	Gravity 0.90
	bouncecount 10
	states
	{
	spawn:
		TNT1 A 0 
		TNT1 A 0 A_PlaySound("silence", CHAN_VOICE)
	flight:
		DSBB ABCD 2 
		TNT1 A 0 a_countdown
		loop
	bounce:
		DSBB E 2 a_changevelocity (25,0,9,CVF_RELATIVE|CVF_REPLACE)
		TNT1 A 0 a_playsound ("magegunner/rifle",0)
		TNT1 A 0 A_CustomMissile("Sapphirebombshot", 8,0, 0, CMF_AIMDIRECTION)
		TNT1 A 0 A_CustomMissile("Sapphirebombshot", 8,0, 45, CMF_AIMDIRECTION)
		TNT1 A 0 A_CustomMissile("Sapphirebombshot", 8,0, 90, CMF_AIMDIRECTION)
		TNT1 A 0 A_CustomMissile("Sapphirebombshot", 8,0, 135, CMF_AIMDIRECTION)
		TNT1 A 0 A_CustomMissile("Sapphirebombshot", 8,0, 180, CMF_AIMDIRECTION)
		TNT1 A 0 A_CustomMissile("Sapphirebombshot", 8,0, 225, CMF_AIMDIRECTION)
		TNT1 A 0 A_CustomMissile("Sapphirebombshot", 8,0, 270, CMF_AIMDIRECTION)
		TNT1 A 0 A_CustomMissile("Sapphirebombshot", 8,0, 315, CMF_AIMDIRECTION)
		TNT1 A 0 A_CustomMissile("Sapphirebombshot", 8,0, 360, CMF_AIMDIRECTION)
		goto flight
	bounce.wall:
		DSBB E 2 a_changevelocity (15,0,0,CVF_RELATIVE)
		TNT1 A 0 a_playsound ("magegunner/rifle",0)
		TNT1 A 0 A_CustomMissile("Sapphirebombshot", 8,0, 0, CMF_AIMDIRECTION)
		TNT1 A 0 A_CustomMissile("Sapphirebombshot", 8,0, 45, CMF_AIMDIRECTION)
		TNT1 A 0 A_CustomMissile("Sapphirebombshot", 8,0, 90, CMF_AIMDIRECTION)
		TNT1 A 0 A_CustomMissile("Sapphirebombshot", 8,0, 135, CMF_AIMDIRECTION)
		TNT1 A 0 A_CustomMissile("Sapphirebombshot", 8,0, 180, CMF_AIMDIRECTION)
		TNT1 A 0 A_CustomMissile("Sapphirebombshot", 8,0, 225, CMF_AIMDIRECTION)
		TNT1 A 0 A_CustomMissile("Sapphirebombshot", 8,0, 270, CMF_AIMDIRECTION)
		TNT1 A 0 A_CustomMissile("Sapphirebombshot", 8,0, 315, CMF_AIMDIRECTION)
		TNT1 A 0 A_CustomMissile("Sapphirebombshot", 8,0, 360, CMF_AIMDIRECTION)
		goto flight
	bounce.floor:
		TNT1 A 0
		TNT1 A 0 a_jumpifinventory ("concussion",1,"backbounce")
		DSBB E 2 a_changevelocity (25,0,9,CVF_RELATIVE|CVF_REPLACE)
		TNT1 A 0 a_playsound ("magegunner/rifle",0)
		TNT1 A 0 ThrustThing(angle*256/360, 5, 0, 0)
		TNT1 A 0 A_CustomMissile("Sapphirebombshot", 24,0, 0, CMF_AIMDIRECTION)
		TNT1 A 0 A_CustomMissile("Sapphirebombshot", 24,0, 45, CMF_AIMDIRECTION)
		TNT1 A 0 A_CustomMissile("Sapphirebombshot", 24,0, 90, CMF_AIMDIRECTION)
		TNT1 A 0 A_CustomMissile("Sapphirebombshot", 24,0, 135, CMF_AIMDIRECTION)
		TNT1 A 0 A_CustomMissile("Sapphirebombshot", 24,0, 180, CMF_AIMDIRECTION)
		TNT1 A 0 A_CustomMissile("Sapphirebombshot", 24,0, 225, CMF_AIMDIRECTION)
		TNT1 A 0 A_CustomMissile("Sapphirebombshot", 24,0, 270, CMF_AIMDIRECTION)
		TNT1 A 0 A_CustomMissile("Sapphirebombshot", 24,0, 315, CMF_AIMDIRECTION)
		TNT1 A 0 A_CustomMissile("Sapphirebombshot", 24,0, 360, CMF_AIMDIRECTION)
		TNT1 A 0 a_countdown
		goto flight
	backbounce:
		TNT1 A 0
		DSBB E 2 a_changevelocity (-30,0,8,CVF_RELATIVE|CVF_REPLACE)
		TNT1 A 0 a_playsound ("magegunner/rifle",0)
		TNT1 A 0 ThrustThing(angle*256/360, 5, 0, 0)
		TNT1 A 0 A_CustomMissile("Sapphirebombshot", 24,0, 0, CMF_AIMDIRECTION)
		TNT1 A 0 A_CustomMissile("Sapphirebombshot", 24,0, 45, CMF_AIMDIRECTION)
		TNT1 A 0 A_CustomMissile("Sapphirebombshot", 24,0, 90, CMF_AIMDIRECTION)
		TNT1 A 0 A_CustomMissile("Sapphirebombshot", 24,0, 135, CMF_AIMDIRECTION)
		TNT1 A 0 A_CustomMissile("Sapphirebombshot", 24,0, 180, CMF_AIMDIRECTION)
		TNT1 A 0 A_CustomMissile("Sapphirebombshot", 24,0, 225, CMF_AIMDIRECTION)
		TNT1 A 0 A_CustomMissile("Sapphirebombshot", 24,0, 270, CMF_AIMDIRECTION)
		TNT1 A 0 A_CustomMissile("Sapphirebombshot", 24,0, 315, CMF_AIMDIRECTION)
		TNT1 A 0 A_CustomMissile("Sapphirebombshot", 24,0, 360, CMF_AIMDIRECTION)
		TNT1 A 0 a_countdown
		goto flight		
	bounce.actor:
		DSBB E 2 a_scalevelocity (0.60)
		TNT1 A 0 a_playsound ("magegunner/rifle",0)
		TNT1 A 0 a_giveinventory ("concussion",1)
		TNT1 A 0 A_CustomMissile("Sapphirebombshot", 8,0, 0, CMF_AIMDIRECTION)
		TNT1 A 0 A_CustomMissile("Sapphirebombshot", 8,0, 45, CMF_AIMDIRECTION)
		TNT1 A 0 A_CustomMissile("Sapphirebombshot", 8,0, 90, CMF_AIMDIRECTION)
		TNT1 A 0 A_CustomMissile("Sapphirebombshot", 8,0, 135, CMF_AIMDIRECTION)
		TNT1 A 0 A_CustomMissile("Sapphirebombshot", 8,0, 180, CMF_AIMDIRECTION)
		TNT1 A 0 A_CustomMissile("Sapphirebombshot", 8,0, 225, CMF_AIMDIRECTION)
		TNT1 A 0 A_CustomMissile("Sapphirebombshot", 8,0, 270, CMF_AIMDIRECTION)
		TNT1 A 0 A_CustomMissile("Sapphirebombshot", 8,0, 315, CMF_AIMDIRECTION)
		TNT1 A 0 A_CustomMissile("Sapphirebombshot", 8,0, 360, CMF_AIMDIRECTION)
		goto flight
	death:
		TNT1 A 0
		TNT1 A 0 a_playsound ("doomslayer/wrathnormal",0,1,0,0.6)
		TNT1 A 0 a_changeflag ("NOGRAVITY",1)
		REVS F 4 bright a_explode (180,180,0,1)
		TNT1 A 0 Radius_Quake (2,6,0,10,0)
		TNT1 AAAAAAAAAAA 0 Bright A_SpawnItemEx("LavaLazerTrail",frandom(-21,21),frandom(-21,21),frandom(10,31),frandom(-6,6),frandom(-4,8),frandom(2,3))
		TNT1 AAAAAAAAAAA 0 Bright A_SpawnItemEx("LavaLazerEmber2",frandom(-16,16),frandom(-16,16),frandom(16,26),frandom(-1,1),frandom(-7,6),frandom(3,5))
		TNT1 AAAAAAAAAAA 0 Bright A_SpawnItemEx("LavaLazerSmoke2",frandom(-4,4),frandom(-4,4),frandom(4,8),frandom(-4,6),frandom(-5,6),frandom(2,5))
		TNT1 AAAAAAAAAA 0 Bright A_SpawnItemEx("LavaLazerSmoke",frandom(-4,4),frandom(-4,4),frandom(4,8),frandom(-4,6),frandom(-5,6),frandom(2,6))
		TNT1 A 0 a_playsound ("magegunner/rifle",0)
		TNT1 A 0 A_CustomMissile("Sapphirebombshot", 8,0, 0, CMF_AIMDIRECTION)
		TNT1 A 0 A_CustomMissile("Sapphirebombshot", 8,0, 45, CMF_AIMDIRECTION)
		TNT1 A 0 A_CustomMissile("Sapphirebombshot", 8,0, 90, CMF_AIMDIRECTION)
		TNT1 A 0 A_CustomMissile("Sapphirebombshot", 8,0, 135, CMF_AIMDIRECTION)
		TNT1 A 0 A_CustomMissile("Sapphirebombshot", 8,0, 180, CMF_AIMDIRECTION)
		TNT1 A 0 A_CustomMissile("Sapphirebombshot", 8,0, 225, CMF_AIMDIRECTION)
		TNT1 A 0 A_CustomMissile("Sapphirebombshot", 8,0, 270, CMF_AIMDIRECTION)
		TNT1 A 0 A_CustomMissile("Sapphirebombshot", 8,0, 315, CMF_AIMDIRECTION)
		TNT1 A 0 A_CustomMissile("Sapphirebombshot", 8,0, 360, CMF_AIMDIRECTION)
		REVS GHIJK 3
		stop
	}
}

actor SapphireBombshot : sapphireshot
{
	+notimefreeze
	projectile
	+THRUSPECIES
	species "friendly"
	+FORCEXYBILLBOARD	
	+LOOKALLAROUND
	height 12
	radius 5
	speed 25
	damage (30)
	decal PlasmaScorch
	scale 1.5
	Projectile
	+SEEKERMISSILE
	+FOILINVUL
	+SKYEXPLODE
	+NOEXPLODEFLOOR
	+bounceonwalls
	bouncecount 2
	+bright
	RenderStyle Translucent
	reactiontime 12
	states
	{
	Spawn:
		TNT1 A 0
		MWND C 1 bright A_SpawnItem("Sapphiretrail")
		MWND D 1 bright A_SpawnItem("Sapphiretrail")
		TNT1 A 0 A_SeekerMissile(60,90,SMF_PRECISE|SMF_LOOK,80)
		TNT1 A 0 a_countdown
		loop
	Xdeath:
		TNT1 A 0
		MWND E 1 
		MWND E 2 Bright
		MWND F 2 Bright
		MWND G 3 Bright
		MWND H 2 Bright
		MWND I 3 Bright
		Stop
	}
}




//++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++
//++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++

//=================
//====Fire Bomb====
//=================



actor slayerfirebomb
{
	Radius 11
	Height 8
	Speed 40
	Damage (600)
	damagetype "macebomb"
	Projectile
	+thruspecies
	species "friendly"
	+RANDOMIZE
	+BRIGHT
	SeeSound "doomslayer/firebombfly"
	obituary "%o didn't duck %k's firebomb"
	states
	{
	spawn:
		DSFB A 1 a_spawnitemex ("LavaLazerEmber2",Frandom(-5,5),Frandom(-5,5),Frandom(-5,5),Frandom(-50,50)/10.0,Frandom(-50,50)/10.0,Frandom(-50,50)/10.0,0)
		TNT1 A 0 a_spawnitemex ("LavaLazerEmber3",Frandom(-5,5),Frandom(-5,5),Frandom(-5,5),Frandom(-50,50)/15.0,Frandom(-50,50)/15.0,Frandom(-50,50)/15.0,0)
		DSFB B 1 a_spawnitemex ("LavaLazerEmber2",Frandom(-5,5),Frandom(-5,5),Frandom(-5,5),Frandom(-50,50)/10.0,Frandom(-50,50)/10.0,Frandom(-50,50)/10.0,0)
		TNT1 A 0 a_spawnitemex ("LavaLazerEmber3",Frandom(-5,5),Frandom(-5,5),Frandom(-5,5),Frandom(-50,50)/15.0,Frandom(-50,50)/15.0,Frandom(-50,50)/15.0,0)
		DSFB C 1 a_spawnitemex ("LavaLazerEmber2",Frandom(-5,5),Frandom(-5,5),Frandom(-5,5),Frandom(-50,50)/10.0,Frandom(-50,50)/10.0,Frandom(-50,50)/10.0,0)
		TNT1 A 0 a_spawnitemex ("LavaLazerEmber3",Frandom(-5,5),Frandom(-5,5),Frandom(-5,5),Frandom(-50,50)/15.0,Frandom(-50,50)/15.0,Frandom(-50,50)/15.0,0)
		DSFB D 1 a_spawnitemex ("LavaLazerEmber2",Frandom(-5,5),Frandom(-5,5),Frandom(-5,5),Frandom(-50,50)/10.0,Frandom(-50,50)/10.0,Frandom(-50,50)/10.0,0)
		TNT1 A 0 a_spawnitemex ("LavaLazerEmber3",Frandom(-5,5),Frandom(-5,5),Frandom(-5,5),Frandom(-50,50)/15.0,Frandom(-50,50)/15.0,Frandom(-50,50)/15.0,0)
		DSFB E 1 a_spawnitemex ("LavaLazerEmber2",Frandom(-5,5),Frandom(-5,5),Frandom(-5,5),Frandom(-50,50)/10.0,Frandom(-50,50)/10.0,Frandom(-50,50)/10.0,0)
		TNT1 A 0 a_spawnitemex ("LavaLazerEmber3",Frandom(-5,5),Frandom(-5,5),Frandom(-5,5),Frandom(-50,50)/15.0,Frandom(-50,50)/15.0,Frandom(-50,50)/15.0,0)
		DSFB F 1 a_spawnitemex ("LavaLazerEmber2",Frandom(-5,5),Frandom(-5,5),Frandom(-5,5),Frandom(-50,50)/10.0,Frandom(-50,50)/10.0,Frandom(-50,50)/10.0,0)
		TNT1 A 0 a_spawnitemex ("LavaLazerEmber3",Frandom(-5,5),Frandom(-5,5),Frandom(-5,5),Frandom(-50,50)/15.0,Frandom(-50,50)/15.0,Frandom(-50,50)/15.0,0)
		DSFB G 1 a_spawnitemex ("LavaLazerEmber2",Frandom(-5,5),Frandom(-5,5),Frandom(-5,5),Frandom(-50,50)/10.0,Frandom(-50,50)/10.0,Frandom(-50,50)/10.0,0)
		TNT1 A 0 a_spawnitemex ("LavaLazerEmber3",Frandom(-5,5),Frandom(-5,5),Frandom(-5,5),Frandom(-50,50)/15.0,Frandom(-50,50)/15.0,Frandom(-50,50)/15.0,0)
		DSFB H 1 a_spawnitemex ("LavaLazerEmber2",Frandom(-5,5),Frandom(-5,5),Frandom(-5,5),Frandom(-50,50)/10.0,Frandom(-50,50)/10.0,Frandom(-50,50)/10.0,0)
		TNT1 A 0 a_spawnitemex ("LavaLazerEmber3",Frandom(-5,5),Frandom(-5,5),Frandom(-5,5),Frandom(-50,50)/15.0,Frandom(-50,50)/15.0,Frandom(-50,50)/15.0,0)
		loop
	death:
		TNT1 A 0
		TNT1 A 0 a_stop
		TNT1 A 0 a_playsound ("doomslayer/wrathnormal",0,1,0,0.6)
		WRML B 4 bright a_explode (500,110,0,1)
		TNT1 A 0 Radius_Quake (2,6,0,10,0)
		TNT1 AAAAAAAAAAAA 0 Bright A_SpawnItemEx("LavaLazerTrail",frandom(-21,21),frandom(-21,21),frandom(10,31),frandom(-6,6),frandom(-4,8),frandom(2,3))
		TNT1 AAAAAAAAAAAAAAA 0 Bright A_SpawnItemEx("LavaLazerEmber2",frandom(-16,16),frandom(-16,16),frandom(16,26),frandom(-1,1),frandom(-7,6),frandom(3,5))
		TNT1 AAAAAAAAAAA 0 Bright A_SpawnItemEx("LavaLazerSmoke2",frandom(-4,4),frandom(-4,4),frandom(4,8),frandom(-4,6),frandom(-5,6),frandom(2,5))
		TNT1 AAAAAAAAAA 0 Bright A_SpawnItemEx("LavaLazerSmoke",frandom(-4,4),frandom(-4,4),frandom(4,8),frandom(-4,6),frandom(-5,6),frandom(2,6))
		TNT1 AAAA 0 a_spawnitemex("clusterfire",0,0,0,random(-10,10),random(-10,10),8)
		WRML C 3 bright
		WRML EFGH 2 bright
		stop
	}
}


//++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++
//++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++

//==================
//===Thunder Bomb===
//==================


actor slayerthunderbomb
{
	Radius 11
	Height 8
	Speed 20
	Damage (600)
	damagetype "macebomb"
	Projectile
	+thruspecies
	species "friendly"
	+RANDOMIZE
	+BRIGHT
	+hexenbounce
	bouncecount 6
	SeeSound "doomslayer/firebombfly"
	obituary "%o was zapped by %k's thunder bomb"
	states
	{
	spawn:
		DSTB A 4
		DSTB BCDEF 2
	zapping:
		DSTB G 2
		DSTB G 1 a_spawnitemex ("lightningbolt", 0,0,0,random(-15,15),random(-20,20),3,0,0)
		loop
	death:
		TNT1 A 0
		TNT1 A 0
		TNT1 A 0 a_playsound ("doomslayer/wrathnormal",0,1,0,0.6)
		WRML B 3 bright a_explode (600,180,0,1)
		WRML B 1 bright a_explode (60,180,0,1)
		TNT1 A 0 a_playsound ("doomslayer/SSGfire",0)
		TNT1 A 0 Radius_Quake (2,6,0,10,0)
		TNT1 AAAAAAA 0 Bright A_SpawnItemEx("LavaLazerTrail",frandom(-21,21),frandom(-21,21),frandom(10,31),frandom(-6,6),frandom(-4,8),frandom(2,3))
		TNT1 AAAAAAA 0 Bright A_SpawnItemEx("LavaLazerEmber2",frandom(-16,16),frandom(-16,16),frandom(16,26),frandom(-1,1),frandom(-7,6),frandom(3,5))
		TNT1 AAAAAAA 0 Bright A_SpawnItemEx("LavaLazerSmoke2",frandom(-4,4),frandom(-4,4),frandom(4,8),frandom(-4,6),frandom(-5,6),frandom(2,5))
		TNT1 AAAAAAA 0 Bright A_SpawnItemEx("LavaLazerSmoke",frandom(-4,4),frandom(-4,4),frandom(4,8),frandom(-4,6),frandom(-5,6),frandom(2,6))
		TNT1 AAAAAAAAAA 0 a_spawnitemex ("lightningbolt", 0,0,0,random(-15,15),random(-20,20),1,0,0)
		WRML C 3 bright a_spawnitemex ("lightningbolt", 0,0,0,random(-15,15),random(-20,20),1,0,0)
		WRML EFGH 2 bright a_spawnitemex ("lightningbolt", 0,0,0,random(-15,15),random(-20,20),1,0,0)
		stop
	Xdeath:
		TNT1 A 0
		TNT1 A 0 a_playsound ("doomslayer/wrathnormal",0,1,0,0.6)
		WRML B 3 bright a_explode (600,180,0,1)
		WRML B 1 bright a_explode (60,180,0,1)
		TNT1 A 0 a_playsound ("doomslayer/SSGfire",0)
		TNT1 A 0 Radius_Quake (2,6,0,10,0)
		TNT1 AAAAAAA 0 Bright A_SpawnItemEx("LavaLazerTrail",frandom(-21,21),frandom(-21,21),frandom(10,31),frandom(-6,6),frandom(-4,8),frandom(2,3))
		TNT1 AAAAAAA 0 Bright A_SpawnItemEx("LavaLazerEmber2",frandom(-16,16),frandom(-16,16),frandom(16,26),frandom(-1,1),frandom(-7,6),frandom(3,5))
		TNT1 AAAAAAA 0 Bright A_SpawnItemEx("LavaLazerSmoke2",frandom(-4,4),frandom(-4,4),frandom(4,8),frandom(-4,6),frandom(-5,6),frandom(2,5))
		TNT1 AAAAAAA 0 Bright A_SpawnItemEx("LavaLazerSmoke",frandom(-4,4),frandom(-4,4),frandom(4,8),frandom(-4,6),frandom(-5,6),frandom(2,6))
		TNT1 AAAAAAAAAAAAAAAAAAAAAAAAAAAAA 0 a_spawnitemex ("lightningbolt", 0,0,0,random(-15,15),random(-20,20),1,0,0)
		WRML C 3 bright a_spawnitemex ("lightningbolt", 0,0,0,random(-15,15),random(-20,20),1,0,0)
		WRML EFGH 2 bright a_spawnitemex ("lightningbolt", 0,0,0,random(-15,15),random(-20,20),1,0,0)
		stop
		
	}
}


//++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++
//++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++
//++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++
//++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++
//++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++
//++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++


//++++++++++++++++++++++++++++++++
//------------KNIVES--------------
//++++++++++++++++++++++++++++++++

//====================
//====Drain Dagger====
//====================



actor draindagger
{
    +notimefreeze
	+BLOODSPLATTER
	+FORCEXYBILLBOARD	
	+thruspecies
	+bright
	species "friendly"
	Radius 11
	Height 8
	Speed 60
	Damage (180)
	Seesound "Doomslayer/DaggerThrow"
	Projectile
	scale 0.80
	states
	{
	spawn: 
		TNT1 A 0
		SLDD A 1 a_spawnitemex ("draintrail")
		loop
	death:
		TNT1 A 0
		TNT1 A 0 a_spawndebris ("bladespark")  
		TNT1 A 0 a_spawnitemex("daggerrebound",0,0,0,random(2,10),random(2,10),5, SXF_NOCHECKPOSITION)
		TNT1 A 2 A_PlaySound("doomslayer/swordwall",0)
		stop
	Crash:
		TNT1 A 0
		TNT1 A 0 a_spawndebris ("bladespark")  
		TNT1 A 0 a_spawnitemex("daggerrebound",0,0,0,random(2,10),random(2,10),5, SXF_NOCHECKPOSITION)
		TNT1 A 2 A_PlaySound("doomslayer/swordwall",0)
		stop
	xdeath:
		TNT1 A 0
		TNT1 A 0 A_PlaySound("doomslayer/swordhit",0)
		TNT1 A 0 A_GiveInventory("berserkdrain",1, AAPTR_TARGET)
		SLHT BCDE 3
		stop
	}
}

actor draintrail
{
	renderstyle add
	alpha 0.60
	scale 0.60
	projectile
	+clientsideonly
	+noclip
	+dontblast
	scale 0.60
	states
	{
	spawn:
		TNT1 A 0
		TNT1 A 1
		SLDD A 3
		goto death
	death:
		TNT1 A 0
		TNT1 A 1
		stop
	}
}

actor daggerrebound
{
	+notimefreeze
	projectile
	+bounceonwalls
	+bounceonceilings
	+ripper
	bouncecount 4
	+FORCEXYBILLBOARD	
	+LOOKALLAROUND
	+CLIENTSIDEONLY
	+painless
	+bright
	-nogravity
	gravity 1.5
	speed 40
	bouncefactor 0.40
	radius 2
	damage (0)
	scale 0.40
	
	states
	{
	spawn:
		SLDD ABCDEFGHI 1 
		SLDD ABCDEFGHI 1 
		SLDD ABCDEFGHI 1 
		SLDD ABCDEFGHI 2 
		stop
	death:
		TNT1 A 0
		TNT1 A 1
		stop
	}
}



//++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++
//++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++

//====================
//====Glass Dagger====
//====================


actor GlassDagger
{
    +notimefreeze
	+BLOODSPLATTER
	+FORCEXYBILLBOARD	
	+thruspecies
	+bright
	+forcepain
	species "friendly"
	Radius 11
	Height 8
	Speed 60
	Damage (180)
	Seesound "Doomslayer/DaggerThrow"
	Projectile
	states
	{
	spawn: 
		TNT1 A 0
		SLDD A 1 
		loop
	death:
		TNT1 A 0
		TNT1 A 0 a_spawndebris ("bladespark")  
		TNT1 A 0 a_spawnitemex("glassdaggerrebound",0,0,0,random(2,10),random(2,10),5, SXF_NOCHECKPOSITION)
		TNT1 A 0 A_PlaySound("GeoRev/Break",0)
		TNT1 AAAAAAAA 0 a_spawnitemex ("daggershard",0,0,frandom(1,3),random(-8,8),random(-8,8),frandom(3,6)) 
		TNT1 AAAAAAAAA 0 a_spawnitemex ("daggershard",0,0,frandom(2,5),random(-8,8),random(-15,15),frandom(4,8)) 
		REVS STUV 2
		stop
	Crash:
		TNT1 A 0
		TNT1 A 0 a_spawndebris ("bladespark")  
		TNT1 A 0 a_spawnitemex("glassdaggerrebound",0,0,0,random(2,10),random(2,10),5, SXF_NOCHECKPOSITION)
		TNT1 A 0 A_PlaySound("GeoRev/Break",0)
		TNT1 AAAAAAA 0 a_spawnitemex ("daggershard",0,0,frandom(1,3),random(-8,8),random(-8,8),frandom(3,6)) 
		TNT1 AAAAAAAA 0 a_spawnitemex ("daggershard",0,0,frandom(2,5),random(-8,8),random(-15,15),frandom(4,8)) 
		REVS STUV 2
		stop
	xdeath:
		TNT1 A 0
		TNT1 A 0 A_PlaySound("doomslayer/swordhit",0)
		TNT1 A 0 A_PlaySound("GeoRev/Break",0)
		TNT1 A 0 A_GiveInventory("berserkdrain",1, AAPTR_TARGET)
		TNT1 AAAAAAA 0 a_spawnitemex ("daggershard",0,0,frandom(1,3),random(-8,8),random(-8,8),frandom(3,6)) 
		TNT1 AAAAAAAA 0 a_spawnitemex ("daggershard",0,0,frandom(2,5),random(-8,8),random(-15,15),frandom(4,8)) 
		TNT1 A 0 a_spawnitemex("glassdaggerrebound",0,0,0,random(2,10),random(2,10),5, SXF_NOCHECKPOSITION)
		REVS STUV 2
		stop
	}
}

actor glassdaggerrebound : daggerrebound
{
	scale 1
	states
	{
	spawn:
		SLGD BCDEFGHI 1 
		SLGD BCDEFGHI 1 
		SLGD BCDEFGHI 1 
		SLGD BCDEFGHI 2 
		stop
	death:
		TNT1 A 0
		TNT1 A 1
		stop
	}
}


actor daggershard
{
	seesound "doomslayer/swordwall"
	projectile
	-NOGRAVITY
	+thruactors
	damage (0)
	gravity 1.2
	+hexenbounce
	Bouncecount 2
	bouncefactor 0.80
	+bright
	renderstyle add
	scale 0.60
	states
	{
	Spawn:
		CTRP ABCDEF 2
		loop
	death:
		TNT1 A 0
		TNT1 A 1 a_spawnitemex ("daggercaltrop",0,0,6)
		stop
	}
}


actor daggercaltrop
{
	+notimefreeze
	projectile
	+bright
	+floorhugger
	+nobossrip
	+forcepain
	+bloodsplatter
	-nogravity
	damage (65)
	speed 0
	+thruspecies
	species "Friendly"
	+FORCEXYBILLBOARD
	radius 20
	height 16
	scale 0.60
	Projectilekickback 800
	states
	{
	spawn:
		TNT1 A 0
		TNT1 A 1
		TNT1 A 0 a_jump (120,"caltrop2","caltrop3")
	caltrop1:
		CTRR A 900
		TNT1 A 6
		CTRR A 10
		TNT1 A 6
		CTRR A 10
		TNT1 A 6
		CTRR A 10
		stop
	caltrop2:
		CTRR B 900
		TNT1 A 6
		CTRR B 10
		TNT1 A 6
		CTRR B 10
		TNT1 A 6
		CTRR B 10
		stop
	caltrop3:
		CTRR C 900
		TNT1 A 6
		CTRR C 10
		TNT1 A 6
		CTRR C 10
		TNT1 A 6
		CTRR C 10
		stop
	death:
		TNT1 A 1
		stop
	xdeath:
		TNT1 A 0
		TNT1 AAA 0 a_spawnitemex ("caltropshard",0,0,frandom(2,5),random(-15,15),random(-10,10),frandom(3,5)) 
		TNT1 A 1
		stop
	}
}

actor caltropshard
{
	projectile
	-NOGRAVITY
	+thruactors
	damage (0)
	scale 1.50
	gravity 1.2
	+hexenbounce
	Bouncecount 4
	bouncefactor 1.10
	+bright
	renderstyle add
	states
	{
	spawn:
		TNT1 A 0
		TNT1 A 1 a_jump (120,"spike2")
	spike1:
		CTRD ABCD 2
		loop
	spike2:
		CTRD EFGH 2
		loop
	death:
		TNT1 A 0
		TNT1 A 1
		stop
	}
}


//++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++
//++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++

//===================
//===Spread Dagger===
//===================


actor Spreaddagger
{
    +notimefreeze
	+BLOODSPLATTER
	+FORCEXYBILLBOARD	
	+thruspecies
	+bright
	species "friendly"
	Radius 11
	Height 8
	Speed 60
	Damage (180)
	Seesound "Doomslayer/DaggerThrow"
	Projectile
	scale 0.60
	states
	{
	spawn:
		SLSD A 1
		loop
	death:
		TNT1 A 0
		TNT1 A 0 a_spawndebris ("bladespark")  
		TNT1 A 0 a_spawnitemex("spreaddaggerrebound",0,0,0,random(2,10),random(2,10),5, SXF_NOCHECKPOSITION)
		TNT1 A 2 A_PlaySound("doomslayer/swordwall",0)
		stop
	Crash:
		TNT1 A 0
		TNT1 A 0 a_spawndebris ("bladespark")  
		TNT1 A 0 a_spawnitemex("spreaddaggerrebound",0,0,0,random(2,10),random(2,10),5, SXF_NOCHECKPOSITION)
		TNT1 A 2 A_PlaySound("doomslayer/swordwall",0)
		stop
	xdeath:
		TNT1 A 0
		TNT1 A 0 A_PlaySound("doomslayer/swordhit",0)
		TNT1 A 0 A_GiveInventory("spreaddrain",1, AAPTR_TARGET)
		SLHT BCDE 3
		stop
	}
}


actor Spreaddaggerrebound : daggerrebound
{
	scale 0.30
	states
	{
	spawn:
		SLSD BCDEFGHI 1 
		SLSD BCDEFGHI 1 
		SLSD BCDEFGHI 1 
		SLSD BCDEFGHI 2 
		stop
	death:
		TNT1 A 0
		TNT1 A 1
		stop
	}
}


actor spreaddrain : custominventory 
{
	inventory.maxamount 1
	+INVENTORY.AUTOACTIVATE
	states
	{
	pickup:
		TNT1 A 0
		TNT1 A 0 a_jumpifhealthlower(100, "drain")
		stop
	drain:
		TNT1 A 0 a_giveinventory ("healchecker",1)
		TNT1 A 0 a_playsound ("doomslayer/lifedrain",0)
		TNT1 AAAAAAAAAA 0 a_spawnitemex ("MAXparticle",random(-8,16),random(-8,16),random(-10,10),random(-100,100)/20.0,random(-100,100)/20.0,random(-100,100)/20.0,0,160)
		TNT1 A 0 a_giveinventory ("health", 8)
		stop
	}
}

//++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++
//++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++

//===================
//====Ammo Dagger====
//===================


actor Ammodagger
{
    +notimefreeze
	+BLOODSPLATTER
	+FORCEXYBILLBOARD	
	+thruspecies
	+bright
	species "friendly"
	Radius 11
	Height 8
	Speed 60
	Damage (180)
	Seesound "Doomslayer/DaggerThrow"
	Projectile
	scale 1
	states
	{
	spawn:
		SLAD A 1
		loop
	death:
		TNT1 A 0
		TNT1 A 0 a_spawndebris ("bladespark")  
		TNT1 A 0 a_spawnitemex("ammodaggerrebound",0,0,0,random(2,10),random(2,10),5, SXF_NOCHECKPOSITION)
		TNT1 A 2 A_PlaySound("doomslayer/swordwall",0)
		stop
	Crash:
		TNT1 A 0
		TNT1 A 0 a_spawndebris ("bladespark")  
		TNT1 A 0 a_spawnitemex("ammodaggerrebound",0,0,0,random(2,10),random(2,10),5, SXF_NOCHECKPOSITION)
		TNT1 A 2 A_PlaySound("doomslayer/swordwall",0)
		stop
	xdeath:
		TNT1 A 0
		TNT1 A 0 A_PlaySound("doomslayer/swordhit",0)
		TNT1 A 0 A_GiveInventory("berserkdrain",1, AAPTR_TARGET)
		TNT1 A 0 a_spawnitemex ("sunderlootorb", 0, 0, 0, random (-7, 10), random (-4, 10), random (5, 7))
		TNT1 A 0 a_spawnitemex ("sunderlootorb", 0, 0, 0, random (-7, 10), random (-4, 10), random (5, 7))
		TNT1 A 0 a_spawnitemex ("sunderlootorb", 0, 0, 0, random (-4, 7), random (-6, 3), random (3, 6))
		TNT1 A 0 a_spawnitemex ("sunderlootorb", 0, 0, 0, random (-4, 7), random (-6, 3), random (3, 6))
		TNT1 A 0 a_spawnitemex ("strongsunderlootorb", 0, 0, 0, random (-3, 6), random (-8, 8), random (3,5))
		TNT1 A 0 a_spawnitemex ("strongsunderlootorb", 0, 0, 0, random (-3, 6), random (-8, 8), random (3,5))
		SLHT BCDE 3
		stop
	}
}


actor Ammodaggerrebound : daggerrebound
{
	scale 0.60
	states
	{
	spawn:
		SLAD BCDEFGHI 1 
		SLAD BCDEFGHI 1 
		SLAD BCDEFGHI 1 
		SLAD BCDEFGHI 2 
		stop
	death:
		TNT1 A 0
		TNT1 A 1
		stop
	}
}

//++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++
//++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++

//===================
//====Food Dagger====
//===================


actor Fooddagger
{
    +notimefreeze
	+BLOODSPLATTER
	+FORCEXYBILLBOARD	
	+thruspecies
	+bright
	species "friendly"
	Radius 11
	Height 8
	Speed 60
	Damage (180)
	Seesound "Doomslayer/DaggerThrow"
	Projectile
	scale 1
	states
	{
	spawn:
		SLFD A 1
		loop
	death:
		TNT1 A 0
		TNT1 A 0 a_spawndebris ("bladespark")  
		TNT1 A 0 a_spawnitemex("fooddaggerrebound",0,0,0,random(2,10),random(2,10),5, SXF_NOCHECKPOSITION)
		TNT1 A 2 A_PlaySound("doomslayer/swordwall",0)
		stop
	Crash:
		TNT1 A 0
		TNT1 A 0 a_spawndebris ("bladespark")  
		TNT1 A 0 a_spawnitemex("fooddaggerrebound",0,0,0,random(2,10),random(2,10),5, SXF_NOCHECKPOSITION)
		TNT1 A 2 A_PlaySound("doomslayer/swordwall",0)
		stop
	xdeath:
		TNT1 A 0
		TNT1 A 0 A_PlaySound("doomslayer/swordhit",0)
		TNT1 A 0 A_GiveInventory("berserkdrain",1, AAPTR_TARGET)
		TNT1 A 0 a_spawnitemex ("foodlootorb", 0, 0, 0, random (-7, 10), random (-4, 10), random (5, 7))
		TNT1 A 0 a_spawnitemex ("foodlootorb", 0, 0, 0, random (-4, 7), random (-6, 3), random (3, 6))
		TNT1 A 0 a_spawnitemex ("foodlootorb", 0, 0, 0, random (-3, 6), random (-8, 8), random (3,5))
		TNT1 A 0 a_spawnitemex ("foodlootorb", 0, 0, 0, random (-8, 5), random (-3, 5), random (2, 6))
		SLHT BCDE 3
		stop
	}
}


actor fooddaggerrebound : daggerrebound
{
	scale 0.60
	states
	{
	spawn:
		SLFD BCDEFGHI 1 
		SLFD BCDEFGHI 1 
		SLFD BCDEFGHI 1 
		SLFD BCDEFGHI 2 
		stop
	death:
		TNT1 A 0
		TNT1 A 1
		stop
	}
}


actor foodlootorb 
{
	projectile
	+notimefreeze
    +FORCEXYBILLBOARD	
	+LOOKALLAROUND
	+thruactors
	+bounceonwalls
	+bright
	species "friendly"
	-nogravity
	radius 12
	speed 5
	damage (0)
	height 20
    gravity 0.8
	states
	{
	spawn:
		MGCS A 1
		MGCS C 1
		loop
	death:
		TNT1 A 0
		TNT1 A 1 a_dropitem ("foodloot",1,256)
		AMDP ABCDE 2
		stop
	}
}

actor foodloot : randomspawner
{
	dropitem "drumstick", 256, 2
	dropitem "bread", 256, 2
}





//--QUICKPUNC

actor quickpunch : fastprojectile
{
	+dontblast
	+notimefreeze
	+BLOODSPLATTER
	+FORCEXYBILLBOARD		
	+thruspecies
	projectilekickback 300
	species "friendly"
	projectile
	radius 12
	height 16
	speed 100
	damage (30)
	states
	{
	spawn:
		TNT1 A 1
		TNT1 A 0 a_changeflag ("NOINTERACTION",1)
		TNT1 A 1 a_stop
		stop
	death:
        TNT1 A 0
        TNT1 A 1
		TNT1 A 0 Radius_Quake (1,5,0,10,0)
		TNT1 A 0 a_playsound ("doomslayer/zerkmiss",CHAN_VOICE)
		SLHT ABCDE 3
		stop
	crash:
        TNT1 A 0
        TNT1 A 1
		TNT1 A 0 Radius_Quake (1,5,0,10,0)
		TNT1 A 0 a_playsound ("doomslayer/zerkmiss",CHAN_VOICE)
		SLHT ABCDE 3
		stop
	xdeath:
        TNT1 A 0
        TNT1 A 1
		TNT1 A 0 a_playsound ("skellytun/punch",CHAN_VOICE)
		TNT1 A 0 Radius_Quake (1,4,0,10,0)
		TNT1 A 1
		stop
	}
}


//++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++
//++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++
//++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++
//++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++
//++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++
//++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++

//++++++++++++++++++++++++++++++++
//-----------TOKENS--------------
//++++++++++++++++++++++++++++++++

actor SlayerBombCooldown : inventory
{inventory.maxamount 200}

actor SlayerDaggerCooldown : inventory
{inventory.maxamount 200}