ACTOR "Cyber Enforcer" 31109
{
    //$Category DN3D Aliens //Enforcers
	Obituary "%o was killed by a Cyber Enforcer."
    Health 1295
    Radius 24
    Height 64
    Mass 1395
    Speed 7
    PainChance 64
    SeeSound "Lizard/Sight"
    PainSound "Lizard/Pain"
    DeathSound "Lizard/Death"
    ActiveSound "Lizard/Active"
    DropItem "LMG 2028" 64 50
    DropItem "Chaingun Ammo" 96 50
	BloodType "DukeMechParticle"
	Species "Alien"
	DamageFactor "Damage_Foot", 0.29
	DamageFactor "Damage_Pistol", 1.14
    DamageFactor "Damage_DualPistol", 1.14
	DamageFactor "Damage_BlackTail", 1.20
    DamageFactor "Damage_DualBlackTail", 1.20
	DamageFactor "Damage_DesertEagle", 1.29
    DamageFactor "Damage_Shotgun", 1.15
	DamageFactor "Damage_SuperShotgun", 1.18
	DamageFactor "Damage_ExplosiveShotgun", 1.08
    DamageFactor "Damage_ChaingunCannon", 1.12
	DamageFactor "Damage_Minigun", 1.13
	DamageFactor "Damage_LMGBullet", 1.26
    DamageFactor "Damage_Explosion", 1.01
	DamageFactor "Damage_Shock", 1.02
	DamageFactor "Damage_BigShock", 1.03
	DamageFactor "Damage_Thunder", 1.02
	DamageFactor "Damage_BigThunder", 1.03
	DamageFactor "LaserExplosion", 0.0
    DamageFactor "Damage_Shrinker", 0.0
	DamageFactor "Damage_Expander", 0.2
	DamageFactor "Damage_Laser", 1.52
	DamageFactor "Damage_Railgun", 1.81
    DamageFactor "Ice", 0.33
    DamageFactor "Fire", 0.28
	DamageFactor "Damage_Pulse", 1.47
	DamageFactor "AlienPoison", 0.0
	DamageFactor "Trip_Punch", 0.0
	DamageFactor "Damage_Step", 0.0
	DamageFactor "PigCopBullet", 0.0
	DamageFactor "LizardBullet", 0.0
	Painchance "Radial", 256
	Painchance "LaserShot", 256
	Scale 0.55
    Decal "NewBulletPuff"
    Monster	
	+NOTARGET
	+FLOORCLIP
	+DONTMORPH
    +NOBLOODDECALS
	+BOSSDEATH
    +NOICEDEATH
	+NORADIUSDMG
	+MISSILEMORE
	States
    {
	Spawn:
	    CYEN A 0
        CYEN A 0 A_StopSoundEx("SoundSlot7")
		CYEN A 7 A_Look
        Loop
	See:
	    CYEN A 0
		CYEN A 0 A_StopSoundEx("SoundSlot7")
		CYEN AAABBB 3 A_Chase
		CYEN B 0 A_SpawnItem("AlienStep6",0,0,0,0)
		CYEN CCCDDD 3 A_Chase
		CYEN D 0 A_SpawnItem("AlienStep6",0,0,0,0)
		CYEN D 0 A_Jump(1,"Dump")
		CYEN D 0 A_Jump(64,"Lunge")
        Loop 
    Dump: 
        CYEN A 0 A_PlaySound("Lizard/Active")
		CYEN A 0 A_StopSoundEx("SoundSlot7")
		CYEN I 15
        CYEN J 30
        CYEN E 0 A_SpawnItemEx("Cyber Lizard Poop",0,0,4,0,0,0,0,SXF_ABSOLUTEVELOCITY,0)
        Goto See
	Lunge: 
		CYEN A 15 A_FaceTarget
		CYEN A 0 A_ChangeFlag(SLIDESONWALLS,1)
	    CYEN A 1 A_PlaySound("Trooper/Attack")
	    CYEN H 1 Bright ThrustThingZ(0,85,0,1)
        CYEN H 0 A_FaceTarget	
		CYEN A 0 A_PlaySoundEx("CyberEnforcer/Fly","SoundSlot7",1)
	    CYEN H 1 Bright A_Recoil(-5)
		CYEN H 0 A_SpawnItemEx("RPGSmoke",0,14,32,Random(-1,1),Random(-1,1),Random(-1,1))
		CYEN H 0 A_SpawnItemEx("RPGSmoke",0,-14,32,Random(-1,1),Random(-1,1),Random(-1,1))
		CYEN H 1 Bright 
		CYEN H 0 A_SpawnItemEx("RPGSmoke",0,14,32,Random(-1,1),Random(-1,1),Random(-1,1))
		CYEN H 0 A_SpawnItemEx("RPGSmoke",0,-14,32,Random(-1,1),Random(-1,1),Random(-1,1))
		CYEN H 1 Bright 
		CYEN H 0 A_SpawnItemEx("RPGSmoke",0,14,32,Random(-1,1),Random(-1,1),Random(-1,1))
		CYEN H 0 A_SpawnItemEx("RPGSmoke",0,-14,32,Random(-1,1),Random(-1,1),Random(-1,1))
		CYEN H 1 Bright 
		CYEN H 0 A_SpawnItemEx("RPGSmoke",0,14,32,Random(-1,1),Random(-1,1),Random(-1,1))
		CYEN H 0 A_SpawnItemEx("RPGSmoke",0,-14,32,Random(-1,1),Random(-1,1),Random(-1,1))
		CYEN H 1 Bright 
		CYEN H 0 A_SpawnItemEx("RPGSmoke",0,14,32,Random(-1,1),Random(-1,1),Random(-1,1))
		CYEN H 0 A_SpawnItemEx("RPGSmoke",0,-14,32,Random(-1,1),Random(-1,1),Random(-1,1))
		CYEN H 1 Bright A_Recoil(-5)
		CYEN H 0 A_SpawnItemEx("RPGSmoke",0,14,32,Random(-1,1),Random(-1,1),Random(-1,1))
		CYEN H 0 A_SpawnItemEx("RPGSmoke",0,-14,32,Random(-1,1),Random(-1,1),Random(-1,1))
		CYEN H 1 Bright 
		CYEN H 0 A_SpawnItemEx("RPGSmoke",0,14,32,Random(-1,1),Random(-1,1),Random(-1,1))
		CYEN H 0 A_SpawnItemEx("RPGSmoke",0,-14,32,Random(-1,1),Random(-1,1),Random(-1,1))
		CYEN H 1 Bright
		CYEN H 0 A_SpawnItemEx("RPGSmoke",0,14,32,Random(-1,1),Random(-1,1),Random(-1,1))
		CYEN H 0 A_SpawnItemEx("RPGSmoke",0,-14,32,Random(-1,1),Random(-1,1),Random(-1,1))
		CYEN H 1 Bright
		CYEN H 0 A_SpawnItemEx("RPGSmoke",0,14,32,Random(-1,1),Random(-1,1),Random(-1,1))
		CYEN H 0 A_SpawnItemEx("RPGSmoke",0,-14,32,Random(-1,1),Random(-1,1),Random(-1,1))
		CYEN H 1 Bright 
		CYEN H 0 A_SpawnItemEx("RPGSmoke",0,14,32,Random(-1,1),Random(-1,1),Random(-1,1))
		CYEN H 0 A_SpawnItemEx("RPGSmoke",0,-14,32,Random(-1,1),Random(-1,1),Random(-1,1))
		CYEN H 1 Bright A_Recoil(-5)
		CYEN H 0 A_SpawnItemEx("RPGSmoke",0,14,32,Random(-1,1),Random(-1,1),Random(-1,1))
		CYEN H 0 A_SpawnItemEx("RPGSmoke",0,-14,32,Random(-1,1),Random(-1,1),Random(-1,1))
		CYEN H 1 Bright 
		CYEN H 0 A_SpawnItemEx("RPGSmoke",0,14,32,Random(-1,1),Random(-1,1),Random(-1,1))
		CYEN H 0 A_SpawnItemEx("RPGSmoke",0,-14,32,Random(-1,1),Random(-1,1),Random(-1,1))
		CYEN H 1 Bright
		CYEN H 0 A_SpawnItemEx("RPGSmoke",0,14,32,Random(-1,1),Random(-1,1),Random(-1,1))
		CYEN H 0 A_SpawnItemEx("RPGSmoke",0,-14,32,Random(-1,1),Random(-1,1),Random(-1,1))
		CYEN H 1 Bright 
		CYEN H 0 A_SpawnItemEx("RPGSmoke",0,14,32,Random(-1,1),Random(-1,1),Random(-1,1))
		CYEN H 0 A_SpawnItemEx("RPGSmoke",0,-14,32,Random(-1,1),Random(-1,1),Random(-1,1))
		CYEN H 1 Bright 
		CYEN H 0 A_SpawnItemEx("RPGSmoke",0,14,32,Random(-1,1),Random(-1,1),Random(-1,1))
		CYEN H 0 A_SpawnItemEx("RPGSmoke",0,-14,32,Random(-1,1),Random(-1,1),Random(-1,1))
		CYEN H 1 Bright A_Recoil(-5)
		CYEN H 0 A_SpawnItemEx("RPGSmoke",0,14,32,Random(-1,1),Random(-1,1),Random(-1,1))
		CYEN H 0 A_SpawnItemEx("RPGSmoke",0,-14,32,Random(-1,1),Random(-1,1),Random(-1,1))
		CYEN H 1 Bright 
		CYEN H 0 A_SpawnItemEx("RPGSmoke",0,14,32,Random(-1,1),Random(-1,1),Random(-1,1))
		CYEN H 0 A_SpawnItemEx("RPGSmoke",0,-14,32,Random(-1,1),Random(-1,1),Random(-1,1))
		CYEN H 1 Bright 
		CYEN H 0 A_SpawnItemEx("RPGSmoke",0,14,32,Random(-1,1),Random(-1,1),Random(-1,1))
		CYEN H 0 A_SpawnItemEx("RPGSmoke",0,-14,32,Random(-1,1),Random(-1,1),Random(-1,1))
		CYEN H 1 Bright 
		CYEN H 0 A_SpawnItemEx("RPGSmoke",0,14,32,Random(-1,1),Random(-1,1),Random(-1,1))
		CYEN H 0 A_SpawnItemEx("RPGSmoke",0,-14,32,Random(-1,1),Random(-1,1),Random(-1,1))
		CYEN H 1 Bright 
		CYEN H 0 A_SpawnItemEx("RPGSmoke",0,14,32,Random(-1,1),Random(-1,1),Random(-1,1))
		CYEN H 0 A_SpawnItemEx("RPGSmoke",0,-14,32,Random(-1,1),Random(-1,1),Random(-1,1))
		CYEN H 1 Bright A_Recoil(-5)
		CYEN H 0 A_SpawnItemEx("RPGSmoke",0,14,32,Random(-1,1),Random(-1,1),Random(-1,1))
		CYEN H 0 A_SpawnItemEx("RPGSmoke",0,-14,32,Random(-1,1),Random(-1,1),Random(-1,1))
		CYEN H 1 Bright
		CYEN H 0 A_SpawnItemEx("RPGSmoke",0,14,32,Random(-1,1),Random(-1,1),Random(-1,1))
		CYEN H 0 A_SpawnItemEx("RPGSmoke",0,-14,32,Random(-1,1),Random(-1,1),Random(-1,1))
		CYEN H 1 Bright
		CYEN H 0 A_SpawnItemEx("RPGSmoke",0,14,32,Random(-1,1),Random(-1,1),Random(-1,1))
		CYEN H 0 A_SpawnItemEx("RPGSmoke",0,-14,32,Random(-1,1),Random(-1,1),Random(-1,1))
		CYEN H 1 Bright 
		CYEN H 0 A_SpawnItemEx("RPGSmoke",0,14,32,Random(-1,1),Random(-1,1),Random(-1,1))
		CYEN H 0 A_SpawnItemEx("RPGSmoke",0,-14,32,Random(-1,1),Random(-1,1),Random(-1,1))
		CYEN H 1 Bright 
		CYEN H 0 A_SpawnItemEx("RPGSmoke",0,14,32,Random(-1,1),Random(-1,1),Random(-1,1))
		CYEN H 0 A_SpawnItemEx("RPGSmoke",0,-14,32,Random(-1,1),Random(-1,1),Random(-1,1))
		CYEN I 1 A_StopSoundEx("SoundSlot7")
		CYEN I 1 A_Recoil(1)
	    CYEN I 1 A_CheckFloor("CyberEnforcerLand")
		Goto Lunge+82
	CyberEnforcerLand:
	    CYEN J 0 A_SpawnItem("AlienStep6",0,0,0,0)
		CYEN J 0 A_CustomMissile("MechaStep",10,0)
		CYEN J 0 A_PlaySound("Foot/MechaStep",5)
        CYEN J 20 A_ScaleVelocity(0.6)
		CYEN J 0 A_ChangeFlag(SLIDESONWALLS,0)
	    CYEN J 0 A_ScaleVelocity(0)
        Goto See
	Missile:
	    CYEN E 1 A_PlaySound("LMG/Up",6)
		CYEN E 20 A_FaceTarget
	    CYEN E 0 A_JumpIfCloser(600,"Missile2")
		CYEN E 0 A_PlaySound("LMG/Shoot",5)
        CYEN F 1 Bright A_CustomMissile("LMGBulletEnforcer",28,19,Random(-6,6))
		CYEN E 1 
		CYEN G 0 A_PlaySound("LMG/Shoot",6)
		CYEN G 1 Bright A_CustomMissile("LMGBulletEnforcer",34,-21,Random(-6,6))
        CYEN E 2 A_SpidRefire
        Goto Missile+3
	Missile2:
	    CYEN E 14 A_FaceTarget
		CYEN E 0 A_PlaySound("ChaingunCannon/Shoot",5)
        CYEN F 1 Bright A_CustomBulletAttack(Random(7,6),Random(7,6),1,Random(7,6),"LizardPuff",5000,CBAF_NORANDOM)
		CYEN E 1 
		CYEN G 0 A_PlaySound("Weapons/Pistol",6)
		CYEN G 1 Bright A_CustomBulletAttack(Random(11,10),Random(6,5),1,Random(6,7),"LizardPuff",5000,CBAF_NORANDOM)
        CYEN E 2 A_SpidRefire
        Goto Missile2+1
	Pain.Radial:
        CYEN A 0
		CYEN A 0 A_StopSoundEx("SoundSlot7")
        CYEN A 0 HealThing(2)
        Goto See
	Pain.LaserShot:
	    CYEN A 0
		CYEN A 0 A_StopSoundEx("SoundSlot7")
		CYEN A 0 A_SpawnItemEx("PainTripLaser",0,0,5)
		CYEN A 0 HealThing(2)
		Goto See
	Death:
	    CYEN K 0
	    CYEN K 0 A_Jump(128,1,35)
        CYEN K 0 A_StopSoundEx("SoundSlot7")
		CYEN KKKKK 0 A_SpawnDebris("MetalGibs1")		
		CYEN KKKKK 0 A_SpawnDebris("MetalGibs2")		
		CYEN KKKKK 0 A_SpawnDebris("MetalGibs3")		
		CYEN KKKKK 0 A_SpawnDebris("MetalGibs4")		
		CYEN KKKKK 0 A_SpawnDebris("MetalGibs5")	
		CYEN K 7 A_Scream
		CYEN K 0 A_KillMaster
        CYEN K 0 A_SpawnItemEx("ExpanderExplosion",0,0,32,0,0,0,0,SXF_ABSOLUTEVELOCITY,0)
        CYEN L 7
        CYEN M 7 A_NoBlocking
        CYEN NO 7
        CYEN P -1
        Stop
		CYE2 K 0
        CYE2 K 0 A_StopSoundEx("SoundSlot7")
		CYE2 KKKKK 0 A_SpawnDebris("MetalGibs1")		
		CYE2 KKKKK 0 A_SpawnDebris("MetalGibs2")		
		CYE2 KKKKK 0 A_SpawnDebris("MetalGibs3")		
		CYE2 KKKKK 0 A_SpawnDebris("MetalGibs4")		
		CYE2 KKKKK 0 A_SpawnDebris("MetalGibs5")	
		CYE2 K 7 A_Scream
		CYE2 K 0 A_KillMaster
        CYE2 K 0 A_SpawnItemEx("ExpanderExplosion",0,0,32,0,0,0,0,SXF_ABSOLUTEVELOCITY,0)
        CYE2 L 7
        CYE2 M 7 A_NoBlocking
        CYE2 NO 7
        CYE2 P -1
        Stop
	}
}
	
ACTOR AlienStep6
{
    +NOINTERACTION
    +CLIENTSIDEONLY
    States
    {
    Spawn:
	    TNT1 A 0
	    TNT1 A 0 A_PlaySound("Foot/AlienStep6")
	    Stop
	}
}

ACTOR LMGBulletEnforcer
{
	Radius 2
	Height 3
	Damage (Random(15,16))
	Scale 0.15
	Alpha 0.80
	Speed 60
	DamageType "Damage_LMGBullet"
	DeathSound "LMG/Projectile"
	RenderStyle	Add
	Decal "DukeBullet"
	Projectile
	+BLOODSPLATTER
	+THRUGHOST
	States
	{
	Spawn:
        TRAC A 1 Bright
		Loop
	Death:
	    TNT1 A 1 A_Jump(256,"Death1","Death2")
		Stop
	Death1:
	    FX57 A 0 A_SetScale(0.8,0.8)
		FX57 AA 0 A_CustomMissile("LMGProjectileParticle",0,0,Random(0,360),2,Random(0,360))
        FX57 ABCDEFGHIJ 1 Bright
        Stop
    Death2:
	    FX58 A 0 A_SetScale(0.8,0.8)
		FX58 AA 0 A_CustomMissile("LMGProjectileParticle",0,0,Random(0,360),2,Random(0,360))
	    FX58 ABCDEFGHIJ 1 Bright
        Stop
    }
}

ACTOR "Cyber Lizard Poop" 31174
{
    //$Category DN3D Aliens //Enforcers
    Radius 12
    Height 12
    Speed 0
    Damage 0
    Mass 0x7FFFFFFF
    Health 10
	Scale 0.35
	Obituary "%o was killed by a... Poop???."
    DamageType "Damage_Explosion"
	DamageFactor "Damage_ShockFire", 0.0
	DamageFactor "Damage_BigShockFire", 0.0
	DamageFactor "LaserShot", 0.0
	DamageFactor "Ice", 0.0
	DamageFactor "Fire", 0.0
	DamageFactor "Radial", 0.0
	+ISMONSTER
	+NOPAIN
	+NOTARGET
	+GHOST
	+SHOOTABLE
	+LOOKALLAROUND
	+NOTELEPORT
    +NOBLOOD
    +NOICEDEATH
	-SOLID
    States
    {
    Spawn:
        CYPO A 1 A_Look
        Goto See
    See:
        CYPO AAAAAAAAAA 1 A_Chase
		CYPO BBBBBBBBBB 1 Bright A_Chase
        Loop
	Melee:
    Death:	    
	    CYPO B 1 Bright A_PlaySound("LaserTripBomb/Detecte",11)
		CYPO A 1 
        CYPO B 1 Bright A_PlaySound("Explosion/Sounds2",12)
		TNT1 A 0 A_PlaySound("Explosion/Sounds",13)
		TNT1 A 0 A_AlertMonsters
		TNT1 AAAAAAAAAA 0 A_CustomMissile("ExplosionFlame",10,0,Random(0,360),2,Random(0,360))
		TNT1 A 0 A_SpawnItemEx("CyberPoopExplode",0,0,0,0,0,0,0,SXF_ABSOLUTEVELOCITY,0) 
        TNT1 A 1 A_SpawnItemEx("DukeNukemExplosion",0,0,0,0,0,0,0,0)
        Stop
        }
}

ACTOR CyberPoopExplode
{
    Speed 10
    Radius 1
    Height 1
    Obituary "%o was killed by a Cyber Enforcer."
    DamageType "Damage_Explosion"
    Damage 0
    +RIPPER
    +NOGRAVITY
    +THRUGHOST
    +FORCERADIUSDMG
	+BLOODLESSIMPACT
    States
    {
    Spawn:
	    TNT1 A 1
    Death:
        TNT1 A 1 A_Explode(156,192,0)
        TNT1 A 0 A_Explode(156,192)
        Stop
        }
}