ACTOR DTShotgunZombie 
{ 
Monster 
Health 500
Height 56
Radius 20
Mass 100
Speed 8
PainChance 50
+FLOORCLIP
+MISSILEMORE
+MissileEvenMore
+QUICKTORETALIATE
+DONTHARMSPECIES
Species "Zombie"
DamageFactor "DTZPuff", 0.0
DamageFactor "RedZombieDemonTech", 0.25
DropItem "PortableMedkit", 166
DropItem "ArmorPlate", 166
DropItem "AmmoPack", 108
DropItem "HandGrenadeAmmo", 200, 1
DropItem "MineAmmo", 200, 1
DropItem "NewShell", 256
DropItem "Demon Tech Shotgun", 32, 1
DropItem "BackPack", 155, 1
DropItem "NewShellBox", 138
SeeSound "superzombie/sight"
PainSound "superzombie/pain"
DeathSound "superzombie/death"
ActiveSound "superzombie/active"
AttackSound ""
Obituary "%o was pulverised by a Demon Tech Shotgunner."
Tag "Demon Tech Shotgunner"
States
	{
	Spawn:
		ZPS1 A 10 A_Look
		Loop
	See:
		ZPS1 AABB 3 A_Chase
		TNT1 A 0 A_SpawnItem("FootStep",0,0,0,0)
		ZPS1 CCDD 3 A_Chase
		TNT1 A 0 A_SpawnItem("FootStep",0,0,0,0)
		Loop
	Missile:
		TNT1 A 0
		TNT1 A 0 A_JumpIfCloser(350,"BurstShot")
	Spread:
		ZPS1 EEE 5 A_FaceTarget(45)
		TNT1 A 0 A_FaceTarget
		TNT1 A 0 A_PlaySound("Weapons/ErasusFire",CHAN_WEAPON)
		TNT1 AAAAAAAAA 0 Bright A_CustomMissile("RedDemonTechTracer",Random(28,34),0,Random(5,-5),CMF_TRACKOWNER)
		TNT1 A 0 Bright A_CustomMissile("RedZDemonTechProjectile2",28,0,0,CMF_TRACKOWNER)
		TNT1 A 0 Bright A_CustomMissile("RedZDemonTechProjectile2",28,0,2,CMF_TRACKOWNER)
		TNT1 A 0 Bright A_CustomMissile("RedZDemonTechProjectile2",28,0,-2,CMF_TRACKOWNER)
		TNT1 A 0 Bright A_CustomMissile("RedZDemonTechProjectile2",28,0,3,CMF_TRACKOWNER)
		TNT1 A 0 Bright A_CustomMissile("RedZDemonTechProjectile2",28,0,-3,CMF_TRACKOWNER)
		TNT1 A 0 Bright A_CustomMissile("RedZDemonTechProjectile2",28,0,4,CMF_TRACKOWNER)
		TNT1 A 0 Bright A_CustomMissile("RedZDemonTechProjectile2",28,0,-4,CMF_TRACKOWNER)
		TNT1 A 0 Bright A_CustomMissile("RedZDemonTechProjectile2",28,0,5,CMF_TRACKOWNER)
		TNT1 A 0 Bright A_CustomMissile("RedZDemonTechProjectile2",28,0,-5,CMF_TRACKOWNER)
		ZPS1 F 5 Bright
		ZPS1 EE 5 A_FaceTarget(45)
		ZPS1 E 8 A_PlaySound("Weapons/ErasusPump")
		TNT1 A 0 A_SpawnItemEx("ShellCasing",-8,0,30,Random(2,6),0,Random(1,3),Random(-80,-90),SXF_CLIENTSIDE|SXF_NOCHECKPOSITION,0)
		ZPS1 E 8
		Goto See
	BurstShot:
		ZPS1 EEE 5 A_FaceTarget(45)
		TNT1 A 0 A_FaceTarget
		TNT1 A 0 A_PlaySound("Weapons/ErasusFire",CHAN_WEAPON)
		TNT1 AAAAAAAA 0 Bright A_CustomMissile("RedDemonTechTracer",Random(28,34),0,Random(6,-6),CMF_TRACKOWNER)
		ZPS1 F 5 Bright A_CustomBulletAttack(15.4,10.6,24,Random(1,4)*3,"ZDemonShotgunPuff")
		ZPS1 EE 5 A_FaceTarget(45)
		ZPS1 E 8 A_PlaySound("Weapons/ErasusPump")
		TNT1 A 0 A_SpawnItemEx("ShellCasing",-8,0,30,Random(2,6),0,Random(1,3),Random(-80,-90),SXF_CLIENTSIDE|SXF_NOCHECKPOSITION,0)
		ZPS1 E 8
		Goto See
	Pain:
		TNT1 A 0
		ZPS1 G 6 A_Pain
		Goto See
	Death:
		ZPS1 H 5 A_Scream
		ZPS1 I 5 A_Fall
		ZPS1 J 5 A_SpawnItem("BodyCrash",0,0,0,0)
		ZPS1 KLM 5
		ZPS1 N 63000 CanRaise
		Stop
	XDeath:
		TNT1 A 0
		ZPS1 P 3 A_XScream
		ZPS1 Q 3 A_SpawnItemEx("GibbedGenerator",0,0,0,0,0,0,0,128,0)
		ZPS1 R 3 A_Fall
		ZPS1 S 3
		ZPS1 T 63000 CanRaise
		Stop
	Raise:
		TNT1 A 0
		TNT1 A 0 A_SpawnItemEx("VileHealEffect",0,0,0,0,0,0,0,SXF_NOCHECKPOSITION)
		ZPS1 NMLKJIH 5
		Goto See
	}
}

Actor ZDemonShotgunPuff : DemonShotgunPuff
{
Damagetype "DTZPuff"
Obituary "%o was pulverised by a Demon Tech Shotgunner."
}

ACTOR RedZDemonTechProjectile2
{
PROJECTILE
Height 4
Radius 4
Speed 40
Scale 0.06
Decal "RedDTRScorch"
Damage 5
+FORCERADIUSDMG
DamageType "ZombieDemonTech"
DamageType "DTZPuff"
DeathSound "weapons/demontechex"
Obituary "%o was pulverised by a Demon Tech Shotgunner."
States
	{
	Spawn:
		TNT1 A 0 Bright
		TNT1 A 0 Bright A_Jump(128,"Spawn2")
		Goto Normal
	Normal:
		TNT1 A 0 Bright A_Jump(128,"NormalFX")
		RDTR A 1 Bright A_SpawnItemEx("RedDemonTechTrail",Random(-1,1),Random(-1,1),Random(-1,1),Random(-1,1),Random(-1,1),Random(-1,1),Random(-20,20),SXF_NOCHECKPOSITION|SXF_CLIENTSIDE,0)
		Loop
	NormalFX:
		TNT1 A 0 Bright A_SpawnItemEx("RDTechLightning",Random(-1,1),Random(-1,1),Random(-1,1),0,0,0,0,SXF_NOCHECKPOSITION|SXF_CLIENTSIDE,0)
		RDTR A 1 Bright A_SpawnItemEx("RedDemonTechTrail",Random(-1,1),Random(-1,1),Random(-1,1),Random(-1,1),Random(-1,1),Random(-1,1),Random(-20,20),SXF_NOCHECKPOSITION|SXF_CLIENTSIDE,0)
		TNT1 A 0 Bright A_SpawnItemEx("RDTechLightning2",Random(-1,1),Random(-1,1),Random(-1,1),0,0,0,0,SXF_NOCHECKPOSITION|SXF_CLIENTSIDE,0)
		RDTR A 1 Bright A_SpawnItemEx("RedDemonTechTrail",Random(-1,1),Random(-1,1),Random(-1,1),Random(-1,1),Random(-1,1),Random(-1,1),Random(-20,20),SXF_NOCHECKPOSITION|SXF_CLIENTSIDE,0)
		Goto Normal
	Spawn2:
		TNT1 A 0 Bright A_Jump(128,"Spawn2FX")
		RDTR A 1 Bright A_SpawnItemEx("RedDemonTechTrail2",Random(-1,1),Random(-1,1),Random(-1,1),Random(-1,1),Random(-1,1),Random(-1,1),Random(-20,20),SXF_NOCHECKPOSITION|SXF_CLIENTSIDE,0)
		Loop
	Spawn2FX:
		TNT1 A 0 Bright A_SpawnItemEx("RDTechLightning",Random(-1,1),Random(-1,1),Random(-1,1),0,0,0,0,SXF_NOCHECKPOSITION|SXF_CLIENTSIDE,0)
		RDTR A 1 Bright A_SpawnItemEx("RedDemonTechTrail",Random(-1,1),Random(-1,1),Random(-1,1),Random(-1,1),Random(-1,1),Random(-1,1),Random(-20,20),SXF_NOCHECKPOSITION|SXF_CLIENTSIDE,0)
		TNT1 A 0 Bright A_SpawnItemEx("RDTechLightning2",Random(-1,1),Random(-1,1),Random(-1,1),0,0,0,0,SXF_NOCHECKPOSITION|SXF_CLIENTSIDE,0)
		RDTR A 1 Bright A_SpawnItemEx("RedDemonTechTrail",Random(-1,1),Random(-1,1),Random(-1,1),Random(-1,1),Random(-1,1),Random(-1,1),Random(-20,20),SXF_NOCHECKPOSITION|SXF_CLIENTSIDE,0)
		Goto Spawn2
	Death:
		TNT1 A 0 Bright
		TNT1 A 0 Bright A_SpawnItemEx("RedParticleSpawnerDT",0,0,0,0,0,0,0,SXF_CLIENTSIDE,0)
		TNT1 A 0 Bright A_SpawnItemEx("RedDemonTechEx",0,0,0,0,0,0,0,SXF_CLIENTSIDE,0)
		TNT1 AAA 0 Bright A_CustomMissile("RedDTKaboom",0,0,random(0,360),CMF_AIMDIRECTION,random(0,360))
		TNT1 AAAA 0 Bright A_CustomMissile("SmokeFX4",0,0,random(0,360),CMF_AIMDIRECTION,random(0,360))
		TNT1 A 1 Bright A_Explode(18,48)
		Stop
	}
}

ACTOR RedZDemonTechProjectile
{
PROJECTILE
Height 4
Radius 2
Speed 40
Scale 0.06
Decal "RedDTRScorch"
Damage 5
+FORCERADIUSDMG
DamageType "RedZombieDemonTech"
DeathSound "weapons/demontechex"
States
	{
	Spawn:
		TNT1 A 0 Bright
		TNT1 A 0 Bright A_Jump(128,"Spawn2")
		Goto Normal
	Normal:
		TNT1 A 0 Bright A_Jump(128,"NormalFX")
		RDTR A 1 Bright A_SpawnItemEx("RedDemonTechTrail",Random(-1,1),Random(-1,1),Random(-1,1),Random(-1,1),Random(-1,1),Random(-1,1),Random(-20,20),SXF_CLIENTSIDE|SXF_NOCHECKPOSITION,0)
		Loop
	NormalFX:
		TNT1 A 0 Bright A_SpawnItemEx("RDTechLightning",Random(-1,1),Random(-1,1),Random(-1,1),0,0,0,0,SXF_CLIENTSIDE|SXF_NOCHECKPOSITION,0)
		RDTR A 1 Bright A_SpawnItemEx("RedDemonTechTrail",Random(-1,1),Random(-1,1),Random(-1,1),Random(-1,1),Random(-1,1),Random(-1,1),Random(-20,20),SXF_CLIENTSIDE|SXF_NOCHECKPOSITION,0)
		TNT1 A 0 Bright A_SpawnItemEx("RDTechLightning2",Random(-1,1),Random(-1,1),Random(-1,1),0,0,0,0,SXF_CLIENTSIDE|SXF_NOCHECKPOSITION,0)
		RDTR A 1 Bright A_SpawnItemEx("RedDemonTechTrail",Random(-1,1),Random(-1,1),Random(-1,1),Random(-1,1),Random(-1,1),Random(-1,1),Random(-20,20),SXF_CLIENTSIDE|SXF_NOCHECKPOSITION,0)
		Goto Normal
	Spawn2:
		TNT1 A 0 Bright A_Jump(128,"Spawn2FX")
		RDTR A 1 Bright A_SpawnItemEx("RedDemonTechTrail2",Random(-1,1),Random(-1,1),Random(-1,1),Random(-1,1),Random(-1,1),Random(-1,1),Random(-20,20),SXF_CLIENTSIDE|SXF_NOCHECKPOSITION,0)
		Loop
	Spawn2FX:
		TNT1 A 0 Bright A_SpawnItemEx("RDTechLightning",Random(-1,1),Random(-1,1),Random(-1,1),0,0,0,0,SXF_CLIENTSIDE|SXF_NOCHECKPOSITION,0)
		RDTR A 1 Bright A_SpawnItemEx("RedDemonTechTrail",Random(-1,1),Random(-1,1),Random(-1,1),Random(-1,1),Random(-1,1),Random(-1,1),Random(-20,20),SXF_CLIENTSIDE|SXF_NOCHECKPOSITION,0)
		TNT1 A 0 Bright A_SpawnItemEx("RDTechLightning2",Random(-1,1),Random(-1,1),Random(-1,1),0,0,0,0,SXF_CLIENTSIDE|SXF_NOCHECKPOSITION,0)
		RDTR A 1 Bright A_SpawnItemEx("RedDemonTechTrail",Random(-1,1),Random(-1,1),Random(-1,1),Random(-1,1),Random(-1,1),Random(-1,1),Random(-20,20),SXF_CLIENTSIDE|SXF_NOCHECKPOSITION,0)
		Goto Spawn2
	Death:
		TNT1 A 0 Bright
		TNT1 A 0 Bright A_SpawnItemEx("RedParticleSpawnerDT",0,0,0,0,0,0,0,SXF_CLIENTSIDE,0)
		TNT1 A 0 Bright A_SpawnItemEx("RedDemonTechEx",0,0,0,0,0,0,0,SXF_CLIENTSIDE,0)
		TNT1 AAA 0 Bright A_CustomMissile("RedDTKaboom",0,0,random(0,360),CMF_AIMDIRECTION,random(0,360))
		TNT1 AAAA 0 Bright A_CustomMissile("SmokeFX4",0,0,random(0,360),CMF_AIMDIRECTION,random(0,360))
		TNT1 A 1 Bright A_Explode(6,48,0,0)
		Stop
	}
}