//Everything that can explode and hurt people goes here.


ACTOR Rocket2 Replaces Rocket
{
	Radius 10
	Height 8
	Projectile
	Speed 35
    Damage 30
	DamageType Explosive
    MeleeDamage 0
    Gravity 0.00
    Decal "BigScorch"
    -NOGRAVITY
    +EXTREMEDEATH
    +BLOODSPLATTER 
    Health 5
    SeeSound "weapons/RLL"
    //SeeSound "RLANSHOT"
	DeathSound "Explosion"
	Obituary "$OB_MPROCKET"
	States
	{
	Spawn:
	    MISL A 1 Bright A_SpawnItem("RocketFlare",-10,0) 
		TNT1 A 0 A_CustomMissile ("RocketSmokeTrail52", 2, 0, random (70, 110), 2, random (0, 360))
		TNT1 A 0 A_SpawnItem ("RocketSmokeTrail52")
		Loop
		
	Death:
EXPL A 0 Radius_Quake (2, 54, 0, 15, 0)

        TNT1 A 0 A_AlertMonsters

		//EXPL A 0 A_CustomMissile ("BigNeoSmoke", 0, 0, random (0, 360), 2, random (0, 360))
//TNT1 AA 0 A_CustomMissile ("ExplosionSmoke", 22, 0, random (0, 360), 2, random (0, 360))

		TNT1 A 0 A_SpawnItemEx ("RocketExplosion",0,0,0,0,0,0,0,SXF_NOCHECKPOSITION,0)
        TNT1 AAA 0 A_CustomMissile ("ExplosionParticleHeavy", 0, 0, random (0, 360), 2, random (0, 180))
        TNT1 AAAAAAAAA 0 A_CustomMissile ("ExplosionParticleHeavy", 0, 0, random (0, 180), 2, random (0, 180))
//XXXX A 0 A_CustomMissile ("ExplosionQuake", 1, 0, random (0, 360), 2, random (0, 160))
         
        TNT1 AAAAAAA 0 A_CustomMissile ("MediumExplosionFlames", 0, 0, random (0, 360), 2, random (0, 360))
EXPL AAA 0 A_CustomMissile ("BigNeoSmoke", 0, 0, random (0, 360), 2, random (0, 360))
		TNT1 AAAAA 1 A_CustomMissile ("ExplosionSmoke", 2, 0, random (0, 360), 2, random (0, 360))
		TNT1 A 3
		TNT1 A 0 A_PlaySound("FAREXPL", 3)
				TNT1 AAAAAAAAA 2 A_CustomMissile ("BigNeoSmoke", 2, 0, random (0, 360), 2, random (0, 360))
		Stop
	}
}

actor RocketExplosion
{
+NOBLOCKMAP
+MISSILE
Damagetype ExplosiveImpact
States    {
    Spawn:
	TNT1 A 0
TNT1 A 0 A_Explode(80,120)
        Stop}}
		
actor BarrelExplosion: RocketExplosion
{
States    {
    Spawn:
	TNT1 A 0
TNT1 A 0 A_Explode(150,150)
        Stop}}

ACTOR CyberRocket: Rocket2
{
	Speed 30
}

ACTOR GrenadeMissile
{
	Radius 4
	Height 4
	Speed 50
	Damage 4
    +MISSILE
	+DEHEXPLOSION
    +BLOODSPLATTER 
	DamageType Explosive
    Gravity 1.0
    Decal "Scorch"
    SeeSound "none"
	DeathSound "Explosion"
	Obituary "$OB_MPROCKET"
	States
	{
	Spawn:
		TNT1 A 0 A_CustomMissile ("RocketSmokeTrail52", 2, 0, random (70, 110), 2, random (0, 360))
		TNT1 A 0 A_SpawnItem ("RocketSmokeTrail52")
		GRNP A 2 Bright A_SpawnItem("RedFlareSmall",0,0)
		Loop
		
	Death:
NULL A 0 A_CustomMissile("FootStep6", 0, 0, 150)
NULL A 0 A_CustomMissile("FootStep6", 0, 0, -150)
NULL A 0 A_CustomMissile("FootStep6", 0, 0, -30)
NULL A 0 A_CustomMissile("FootStep6", 0, 0, 30)
NULL A 0 A_CustomMissile("FootStep6", 0, 0, -60)
NULL A 0 A_CustomMissile("FootStep6", 0, 0, 60)
NULL A 0 A_CustomMissile("FootStep6", 0, 0, -90)
NULL A 0 A_CustomMissile("FootStep6", 0, 0, 90)
NULL A 0 A_CustomMissile("FootStep6", 0, 0, -120)
NULL A 0 A_CustomMissile("FootStep6", 0, 0, 120)
        TNT1 A 0 A_AlertMonsters
		EXPL AAA 0 A_CustomMissile ("BigNeoSmoke", 0, 0, random (0, 360), 2, random (0, 360))
TNT1 AAAAAAAA 0 A_CustomMissile ("ExplosionSmoke", 22, 0, random (0, 360), 2, random (0, 360))
		TNT1 A 0 A_SpawnItemEx ("BarrelExplosion",0,0,0,0,0,0,0,SXF_NOCHECKPOSITION,0)
        TNT1 A 1
		EXPL A 0 A_Explode (25, 300)
		TNT1 AAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAA 0 A_CustomMissile ("ShrapnelParticle", 0, 0, random (0, 360), 2, random (0, 360))
XXXX A 0 A_CustomMissile ("ExplosionQuake", 1, 0, random (0, 360), 2, random (0, 160))
        TNT1 AAAAAAAAAAAAAAAAAAA 0 A_CustomMissile ("MediumExplosionFlames", 0, 0, random (0, 360), 2, random (0, 360))
        TNT1 A 0 A_PlaySound("FAREXPL")
EXPL AAA 0 A_CustomMissile ("BigNeoSmoke", 0, 0, random (0, 360), 2, random (0, 360))
		TNT1 AAAAAAA 1 A_CustomMissile ("BigNeoSmoke", 2, 0, random (0, 360), 2, random (0, 360))
		        
				TNT1 AAAAAAAAAAAAAA 1 A_CustomMissile ("BigNeoSmoke", 2, 0, random (0, 360), 2, random (0, 360))
				
		Stop
	}
}

ACTOR BouncingGrenade: GrenadeMissile
{
    +DOOMBOUNCE
    BounceFactor 0.5
	SeeSound "Weapons/GrenadeBounce"
}

ACTOR CyberDemonGrenade: BouncingGrenade
{
	Speed 28
	Damage 30
	DamageType Explosive
    BounceFactor 0.9
	States
	{
	Death:
		EXPL A 1 A_Explode(200,200)
	    EXPL A 0 Radius_Quake (4, 8, 0, 15, 0)
        TNT1 A 0 A_PlaySound("FAREXPL")
		EXPL AAA 0 A_SpawnItemEx("ExplosionParticleSpawner", 0, 0, 0, 0, 0, 0, 0, 128)
TNT1 AAAAA 0 A_CustomMissile ("Shrapnel", 16, 0, random (0, 360), 2, random (40, 150))
        TNT1 AAAAAAAAAAAAAAA 0 A_CustomMissile ("ExplosionParticleHeavy", 0, 0, random (0, 360), 2, random (0, 180))
        TNT1 AAAAAAAAAAAAAAAAAAAAAAAAAAAAAA 0 A_CustomMissile ("ExplosionParticleHeavy", 0, 0, random (0, 180), 2, random (0, 180))
        TNT1 AAAAAAAAAAAA 0 A_CustomMissile ("ExplosionFlames", 0, 0, random (0, 360), 2, random (0, 360))
		TNT1 AAA 0 A_custommissile("HugeWallChunk",0,0,random(0,360),2,random(-40,40))
        TNT1 AAAAAA 0 A_custommissile("BigWallChunk",0,0,random(0,360),2,random(-40,40))
		Stop
	}
}



Actor DragonBreath
{
	Projectile
	+RANDOMIZE
+FORCEXYBILLBOARD
-BLOODSPLATTER 
+BLOODLESSIMPACT
+RIPPER
damage 0
radius 1
height 1
speed 40
renderstyle ADD
alpha 0.9
scale .15
    DamageType Flames
	SeeSound "fatso/attack"
    Decal "BigScorch"
states
	{
	Spawn:
		TNT1 AAAAA 2 A_SpawnItem("SpawnedFlamers")
		Stop
Death:
    Stop
XDeath:
TNT1 A 0
Stop
	}
}

Actor ExplosionSpawner
{
	Projectile
	+RANDOMIZE
+FORCEXYBILLBOARD
   // +BLOODSPLATTER 
damage 0
radius 2
height 0
speed 40
renderstyle ADD
alpha 0.9
scale .15
states
	{
	Spawn:
		TNT1 AAAA 2 A_SpawnItem("SpawnedExplosion")
		Stop
Death:
    Stop
XDeath:
TNT1 A 0
Stop
	}
}


Actor LongExplosionSpawner
{
	Projectile
	+RANDOMIZE
+FORCEXYBILLBOARD
   // +BLOODSPLATTER 
damage 0
radius 2
height 0
speed 66
renderstyle ADD
alpha 0.9
scale .15
states
	{
	Spawn:
		TNT1 AAAAAA 2 A_SpawnItem("SpawnedExplosion")
		Stop
Death:
    Stop
XDeath:
TNT1 A 0
Stop
	}
}

Actor SpawnedExplosion
{
+NOCLIP
+NOGRAVITY
states
	{
	Spawn:
 TNT1 A 2
 TNT1 A 2 A_PlaySound("FAREXPL")
TNT1 AAAA 0 A_CustomMissile ("ExplosionFlames", 0, 0, random (0, 360), 2, random (0, 360))
		Stop
	}
}

Actor SpawnedFlamers
{
+NOCLIP
+NOGRAVITY
    DamageType Flames
states
	{
	Spawn:
 TNT1 A 2
TNT1 A 0 A_Explode(100,40)
TNT1 AAAA 0 A_CustomMissile ("ExplosionFlames", 0, 0, random (0, 360), 2, random (0, 360))
		Stop
	}
}



ACTOR MarinesRocket: Rocket2
{
	DamageType FriendBullet
}


















ACTOR CyberBalls
{
	Radius 10
	Height 8
	Projectile
	Speed 30
    Damage 8
	DamageType Explosive
    Gravity 0.00
    Decal "BigScorch"
	Renderstyle Add
    -NOGRAVITY
	+EXTREMEDEATH
	Scale 1.7
    SeeSound "DSCANFIR"
    //SeeSound "RLANSHOT"
	DeathSound "Explosion"
	Obituary "$OB_MPROCKET"
	States
	{
	Spawn:
	    WYVB A 1 Bright A_SpawnItem("RedFlare",0,0) 
		TNT1 A 0 A_SpawnItem("CyberballTrail",0,0) 
	    WYVB A 1 Bright A_SpawnItem("RedFlare",0,0) 
		TNT1 A 0 A_SpawnItem("CyberballTrail",0,0) 
		WYVB A 1 Bright A_SpawnItem("RedFlare",0,0) 
		TNT1 A 0 A_SpawnItem("CyberballTrail",0,0) 
		WYVB A 1 Bright A_SpawnItem("RedFlare",0,0) 
		TNT1 A 0 A_SpawnItem("CyberballTrail",0,0) 
        TNT1 A 0 A_SpawnItemEx("PlasmaSmoke", random(-11,11), random(-11,11))
		Loop
		
	Death:
        TNT1 A 0 A_AlertMonsters

		EXPL AA 0 A_CustomMissile ("BigNeoSmoke", 0, 0, random (0, 360), 2, random (0, 360))
TNT1 AAAA 0 A_CustomMissile ("ExplosionSmoke", 22, 0, random (0, 360), 2, random (0, 360))

		TNT1 A 0 A_Explode
        TNT1 AAA 0 A_CustomMissile ("ExplosionParticleHeavy", 0, 0, random (0, 360), 2, random (0, 180))
        TNT1 AAAAAAAAA 0 A_CustomMissile ("ExplosionParticleHeavy", 0, 0, random (0, 180), 2, random (0, 180))
XXXX A 0 A_CustomMissile ("ExplosionQuake", 1, 0, random (0, 360), 2, random (0, 160))
        TNT1 AAAAAAA 0 A_CustomMissile ("MediumExplosionFlames", 0, 0, random (0, 360), 2, random (0, 360))
EXPL AAA 0 A_CustomMissile ("BigNeoSmoke", 0, 0, random (0, 360), 2, random (0, 360))
		TNT1 AAAAAAA 1 A_CustomMissile ("BigNeoSmoke", 2, 0, random (0, 360), 2, random (0, 360))
		TNT1 A 2
		        TNT1 A 0 A_PlaySound("FAREXPL")
		Stop
	}
}


ACTOR CyberballTrail
{
    Radius 0
    Height 0
	Alpha 1.0
	RenderStyle Add
	Scale 0.9
	Speed 2
    +NOBLOCKMAP
    +NOTELEPORT
    +DONTSPLASH
	+MISSILE
	+FORCEXYBILLBOARD
    +CLIENTSIDEONLY
	Damage 0
    +NOINTERACTION
    States
    {
    Spawn:
	    TNT1 A 2
        WYVB CDE 1

Stop
    }
}