ACTOR EnragedLegendaryCyberImp
{
//Creator: High Councilor
//Origin: Nexus Infinity
//Sprite: E2MP
//Title: "Enraged Legendary Cyber Imp"
  Health 1400
  Radius 20
  Height 56
  Mass 100
  Speed 14
  PainChance 50
  Monster
  MeleeDamage 16
  DamageFactor "Legendary1", 0.0
  DamageFactor 0.6
  DamageFactor "PlasmaBall", 20
  DamageFactor "Legendary", 0.0
  DamageFactor "LegendaryPlayer", 0.0
  DamageFactor "PDTBFG", 0.25
  DamageFactor "PDTBFGTracer", 0.25
  DamageFactor "PlayerDevBall", 0.125
  DamageFactor "PlayerDevBall2", 0.125
  DamageFactor "PlayerDTBFGRailgunSlug", 0.75
  DamageFactor "PlayerDevTracer", 0.125
  DamageFactor "DBFG10K2", 0.1
  DamageFactor "PlayerDBFG10K2", 0.1
  DamageFactor "DBFG2", 0.1
  DamageFactor "PlayerDBFG2", 0.1
  DropItem "EnragedLegendarySphere" 70
  DropItem "LegendaryPowerSphere" 85 1
  DropItem "ILDemonAmmoBox" 200
  DropItem "ILDemonAmmo" 250
  DropItem "LegendaryBossLifeEssence" 256
  DropItem "LegendaryBossArmorBonusMax" 256
  DropItem "LegendaryBossLifeEssence" 128
  DropItem "LegendaryBossArmorBonusMax" 128
  DropItem "Enraged Legendary Plasmatic Rifle" 80
  DropItem "Enraged Legendary Plasmatic Cannon" 40
  Species "Imps"
  +BRIGHT
  +NOTARGET
  +BOSS
  +BOSSDEATH
  +AVOIDMELEE
  +NOTIMEFREEZE
  +FLOORCLIP
  +QUICKTORETALIATE
  +MISSILEMORE
  +MISSILEEVENMORE
  +DONTHARMSPECIES
  +NOICEDEATH
  +DONTGIB
  +NORADIUSDMG
  SeeSound "ELegImp/Sight"
  PainSound "ELegImp/pain"
  DeathSound "ELegImp/death"
  ActiveSound "ELegImp/active"
  BloodColor "Red"
  MeleeSound "imps/melee"
  HitObituary "%o was skewered by an \c[m6]Enraged\c- \c[z3]Legendary Cyber Imp's\c- arm cannon."
  Obituary "%o was blasted by an \c[m6]Enraged\c- \c[z3]Legendary Cyber Imp\c-."
  Tag "\c[m6]Enraged\c- \c[z3]Legendary Cyber Imp\c-"
  var int user_music;
  var int user_missile;
  var int user_upgrade;
States
{
  Spawn:
	TNT1 A 0 A_JumpIf(user_upgrade >= 1,"SpawnMKII")
    TNT1 A 0 A_SpawnItem("EnragedHellionSmokeSpawner")
    EIMP A 10 A_Look
	Loop
  SpawnMKII:
    TNT1 A 0 A_SpawnItem("EnragedHellionSmokeSpawner")
    E2MP A 10 A_Look
	Loop
  See:
	TNT1 A 0 A_JumpIf(user_music == 1,3)
	//TNT1 A 0 ACS_NamedExecuteAlways("InfinityMusic",0,976,309) //Enraged Legendary Commando
	TNT1 A 0 ACS_NamedExecuteAlways("StartMonsterMusic",0,976)
	TNT1 A 0 A_SetUserVar("user_music",1)
	TNT1 A 0 A_JumpIf(user_upgrade >= 1,"SeeMKII")
	TNT1 A 0 A_SpawnItem("EnragedHellionSmokeSpawner",0,0,0,0)
	EIMP AA 3 A_Chase
	TNT1 A 0 A_SpawnItem("EnragedHellionSmokeSpawner",0,0,0,0)
	EIMP BB 3 A_Chase
	TNT1 A 0 A_SpawnItem("HumanishStep",0,0,0,0)
	TNT1 A 0 A_SpawnItem("EnragedHellionSmokeSpawner",0,0,0,0)
	EIMP CC 3 A_Chase
	TNT1 A 0 A_SpawnItem("EnragedHellionSmokeSpawner",0,0,0,0)
	EIMP DD 3 A_Chase
	TNT1 A 0 A_SpawnItem("HumanishStep",0,0,0,0)
	TNT1 A 0 A_Jump(30,"Teleport")
	TNT1 A 0 A_Jump(87,"Rush")
    Loop
  SeeMKII:
	TNT1 A 0 A_SpawnItem("EnragedHellionSmokeSpawner",0,0,0,0)
	E2MP AA 3 A_Chase
	TNT1 A 0 A_SpawnItem("EnragedHellionSmokeSpawner",0,0,0,0)
	E2MP BB 3 A_Chase
	TNT1 A 0 A_SpawnItem("HumanishStep",0,0,0,0)
	TNT1 A 0 A_SpawnItem("EnragedHellionSmokeSpawner",0,0,0,0)
	E2MP CC 3 A_Chase
	TNT1 A 0 A_SpawnItem("EnragedHellionSmokeSpawner",0,0,0,0)
	E2MP DD 3 A_Chase
	TNT1 A 0 A_SpawnItem("HumanishStep",0,0,0,0)
	TNT1 A 0 A_Jump(30,"TeleportMKII")
	TNT1 A 0 A_Jump(87,"RushMKII")
    Loop
  Rush:
	TNT1 A 0 A_SpawnItem("HumanishStep",0,0,0,0)
	TNT1 A 0 A_SpawnItem("EnragedHellionSmokeSpawner")
	TNT1 A 0 A_SpawnItemEx("ELegCyberImpGhostA")
	EIMP A 1 A_Chase
	TNT1 A 0 A_SpawnItemEx("ELegCyberImpGhostA")
	EIMP A 1 A_Chase
	TNT1 A 0 A_SpawnItemEx("ELegCyberImpGhostB")
	EIMP B 1 A_Chase
	TNT1 A 0 A_SpawnItemEx("ELegCyberImpGhostB")
	EIMP B 1 A_Chase
	TNT1 A 0 A_SpawnItem("HumanishStep",0,0,0,0)
    TNT1 A 0 A_SpawnItem("EnragedHellionSmokeSpawner")
	TNT1 A 0 A_SpawnItemEx("ELegCyberImpGhostC")
	EIMP C 1 A_Chase
	TNT1 A 0 A_SpawnItemEx("ELegCyberImpGhostC")
	EIMP C 1 A_Chase
	TNT1 A 0 A_SpawnItemEx("ELegCyberImpGhostD")
	EIMP D 1 A_Chase
	TNT1 A 0 A_SpawnItemEx("ELegCyberImpGhostD")
	EIMP D 1 A_Chase
	TNT1 A 0 A_Jump(84,"See")
	Loop
  RushMKII:
	TNT1 A 0 A_SpawnItem("HumanishStep",0,0,0,0)
	TNT1 A 0 A_SpawnItem("EnragedHellionSmokeSpawner")
	TNT1 A 0 A_SpawnItemEx("ELegCyberImpGhostAMKII")
	E2MP A 1 A_Chase
	TNT1 A 0 A_SpawnItemEx("ELegCyberImpGhostAMKII")
	E2MP A 1 A_Chase
	TNT1 A 0 A_SpawnItemEx("ELegCyberImpGhostBMKII")
	E2MP B 1 A_Chase
	TNT1 A 0 A_SpawnItemEx("ELegCyberImpGhostBMKII")
	E2MP B 1 A_Chase
	TNT1 A 0 A_SpawnItem("HumanishStep",0,0,0,0)
    TNT1 A 0 A_SpawnItem("EnragedHellionSmokeSpawner")
	TNT1 A 0 A_SpawnItemEx("ELegCyberImpGhostCMKII")
	E2MP C 1 A_Chase
	TNT1 A 0 A_SpawnItemEx("ELegCyberImpGhostCMKII")
	E2MP C 1 A_Chase
	TNT1 A 0 A_SpawnItemEx("ELegCyberImpGhostDMKII")
	E2MP D 1 A_Chase
	TNT1 A 0 A_SpawnItemEx("ELegCyberImpGhostDMKII")
	E2MP D 1 A_Chase
	TNT1 A 0 A_Jump(84,"SeeMKII")
	Loop
  Teleport:
    EIMP A 1 A_UnSetShootable
	EIMP AAAA 0 A_SpawnItem("EnragedHellionSmokeSpawner")
	EIMP AAAAAAAAAA 1  A_FadeOut(0.1,0)
	EIMP A 2 
	EIMP AAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAA 0 A_Wander
	EIMP AAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAA 0 A_Wander
    EIMP A 1 A_PlayWeaponSound("boss/teleport")
	EIMP AAAA 0 A_SpawnItem("EnragedHellionSmokeSpawner")
	EIMP AAAAAAAAAA 1 A_FadeIn(0.1)
    EIMP A 1 A_SetShootable
    Goto See
  TeleportMKII:
    E2MP A 1 A_UnSetShootable
	E2MP AAAA 0 A_SpawnItem("EnragedHellionSmokeSpawner")
	E2MP AAAAAAAAAA 1  A_FadeOut(0.1,0)
	E2MP A 2 
	E2MP AAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAA 0 A_Wander
	E2MP AAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAA 0 A_Wander
    E2MP A 1 A_PlayWeaponSound("boss/teleport")
	E2MP AAAA 0 A_SpawnItem("EnragedHellionSmokeSpawner")
	E2MP AAAAAAAAAA 1 A_FadeIn(0.1)
    E2MP A 1 A_SetShootable
    Goto See
  Melee:
	TNT1 A 0 A_JumpIf(user_upgrade >= 1,"MeleeMKII")
	EIMP EF 3 A_FaceTarget
	TNT1 A 0 A_MeleeAttack
	EIMP E 3 A_FaceTarget
	Goto See
  MeleeMKII:
	TNT1 A 0 A_Jump(128,"Melee2MKII")
	E2MP EF 3 A_FaceTarget
	TNT1 A 0 A_MeleeAttack
	E2MP E 3 A_FaceTarget
	Goto SeeMKII
  Melee2MKII:
	E2MP EV 3 A_FaceTarget
	TNT1 A 0 A_MeleeAttack
	E2MP E 3 A_FaceTarget
	Goto SeeMKII
  Lunge:
	TNT1 A 0 A_JumpIfCloser(200,1)
	Goto See
	TNT1 A 0 A_PlaySound("weapons/fistwiff")
	EIMP EF 7 A_FaceTarget
	TNT1 A 0 A_ChangeFlag(SLIDESONWALLS,1)
	TNT1 A 0 ThrustThingZ(0,25,0,1)
	EIMP G 2 A_Recoil(-30)
	EIMP G 3 A_CustomMissile("LFLunge",18,0,0,CMF_AIMDIRECTION)
	EIMP G 6 
	EIMP F 2 A_ScaleVelocity(0.2)
	TNT1 A 0 A_ChangeFlag(SLIDESONWALLS,0)
	EIMP E 1 A_ScaleVelocity(0)
	Goto See
  LungeMKII:
	TNT1 A 0 A_JumpIfCloser(200,1)
	Goto SeeMKII
	TNT1 A 0 A_PlaySound("weapons/fistwiff")
	E2MP EF 7 A_FaceTarget
	TNT1 A 0 A_ChangeFlag(SLIDESONWALLS,1)
	TNT1 A 0 ThrustThingZ(0,25,0,1)
	E2MP G 2 A_Recoil(-30)
	E2MP G 3 A_CustomMissile("LFLunge",18,0,0,CMF_AIMDIRECTION)
	E2MP G 6 
	E2MP F 2 A_ScaleVelocity(0.2)
	TNT1 A 0 A_ChangeFlag(SLIDESONWALLS,0)
	E2MP E 1 A_ScaleVelocity(0)
	Goto SeeMKII
  MissileMKII:
    TNT1 A 0 A_JumpIfCloser(250,"LungeMKII")
	TNT1 A 0 A_Jump(128,"DTRailgunMKII","CannonMKII")
	TNT1 A 0 A_jump(80,"BFG10kMKII","CannonProjsMKII","EnragedTechMKII","HarpoonFlak")
    Goto NormalMKII
  Missile:
	TNT1 A 0
	TNT1 A 0 A_JumpIf(user_upgrade >= 1,"MissileMKII")
	TNT1 A 0 A_Jump(128,3)
	TNT1 A 0 A_JumpIfInTargetInventory("TrueLegendaryRuneItem",1,"Upgrade")
	TNT1 A 0 A_JumpIfInTargetInventory("TrueLegendaryRuneItem2",1,"Upgrade")
	TNT1 A 0 A_Jump(128,2)
	TNT1 A 0 A_JumpIfHealthLower(200,"Upgrade")
	TNT1 A 0 A_Jump(5,"Upgrade")
	TNT1 A 0 A_JumpIfCloser(250,"Lunge")
	TNT1 A 0 A_Jump(128,"DTRailgun","Cannon")
	TNT1 A 0 A_jump(80,"BFG10k","CannonProjs","EnragedTech")
  Normal:
	EIMP EF 8 A_FaceTarget
	EIMP G 2 Bright A_Custommissile("ECyberImpEnergyBolt",36,4,random(3,-3))
	EIMP F 2 A_FaceTarget
	EIMP G 2 Bright A_Custommissile("ECyberImpEnergyBolt",36,4,random(1,-1))
	EIMP F 2 A_FaceTarget
	EIMP G 2 Bright A_Custommissile("ECyberImpEnergyBolt",36,4,random(3,-3))
	EIMP F 2 A_FaceTarget
	EIMP G 2 Bright A_Custommissile("ECyberImpEnergyBolt",36,4,random(1,-1))
	EIMP F 2 A_FaceTarget
	EIMP G 2 Bright A_Custommissile("ECyberImpEnergyBolt",36,4,random(3,-3))
	EIMP F 2 A_FaceTarget
	EIMP G 2 Bright A_Custommissile("ECyberImpEnergyBolt",36,4,random(1,-1))
	EIMP F 2 A_FaceTarget
	Goto See
  BFG10K:
	EIMP E 8 A_PlaySound("weapons/charge15k")
	EIMP FFFF 8 A_FaceTarget
	TNT1 A 0 A_PlaySound("weapons/bfg15kfire")
	EIMP G 2 Bright A_CustomMissile("Enraged10KProjectile",32,0,frandom(4,-4))
	EIMP F 5 A_FaceTarget
	TNT1 A 0 A_PlaySound("weapons/bfg15kfire")
	EIMP G 2 Bright A_CustomMissile("Enraged10KProjectile",32,0,frandom(4,-4))
	EIMP F 5 A_FaceTarget
	TNT1 A 0 A_PlaySound("weapons/bfg15kfire")
	EIMP G 2 Bright A_CustomMissile("Enraged10KProjectile",32,0,frandom(4,-4))
	EIMP F 5 A_FaceTarget
	TNT1 A 0 A_PlaySound("weapons/bfg15kfire")
	EIMP G 2 Bright A_CustomMissile("Enraged10KProjectile",32,0,frandom(4,-4))
	Goto see
  DTRailgun:
    TNT1 A 0 A_PlaySound("weapons/rgcharge")
    EIMP EFFF 8 A_FaceTarget
	TNT1 A 0 A_PlaySound("weapons/dtrailf")
	TNT1 A 0 A_CustomMissile("ELCBRailCore",32,0,0)
	TNT1 A 0 A_CustomMissile("ECyberImpDTRail",32,0,0)
    EIMP GF 8 A_FaceTarget
	TNT1 A 0 A_PlaySound("weapons/dtrailf")
	TNT1 A 0 A_CustomMissile("ELCBRailCore",32,0,0)
	TNT1 A 0 A_CustomMissile("ECyberImpDTRail",32,0,0)
    EIMP GF 8 A_FaceTarget
	Goto see
  Cannon:
    TNT1 A 0 A_PlaySound("legendarycannon/charge")
	EIMP EF 8 A_FaceTarget
    EIMP G 2 A_CustomMissile("ELegImpRevBall",32,0,random(2,-2))
    EIMP FF 2 A_FaceTarget
    EIMP G 2 A_CustomMissile("ELegImpRevBall",32,0,random(2,-2))
    EIMP FF 2 A_FaceTarget
    EIMP G 2 A_CustomMissile("ELegImpRevBall",32,0,random(2,-2))
    EIMP FF 2 A_FaceTarget
    EIMP G 2 A_CustomMissile("ELegImpRevBall",32,0,random(2,-2))
    EIMP FF 2 A_FaceTarget
    EIMP G 2 A_CustomMissile("ELegImpRevBall",32,0,random(2,-2))
    EIMP FF 2 A_FaceTarget
    EIMP G 2 A_CustomMissile("ELegImpRevBall",32,0,random(2,-2))
    EIMP FF 2 A_FaceTarget
    Goto See
  CannonProjs:
	EIMP EEEE 3 A_FaceTarget
	EIMP F 4 A_FaceTarget
	TNT1 A 0 A_PlaySoundEx("legendarycannon/fire","Weapon")
	EIMP G 3 A_CustomMissile("ELegRevSmallBall3",32,0)
	EIMP F 4 A_FaceTarget
	TNT1 A 0 A_PlaySoundEx("legendarycannon/fire","Weapon")
	EIMP G 3 A_CustomMissile("ELegRevSmallBall3",32,0)
	EIMP F 4 A_FaceTarget
	TNT1 A 0 A_PlaySoundEx("legendarycannon/fire","Weapon")
	EIMP G 3 A_CustomMissile("ELegRevSmallBall3",32,0)
	EIMP F 4 A_FaceTarget
	TNT1 A 0 A_PlaySoundEx("legendarycannon/fire","Weapon")
	EIMP G 3 A_CustomMissile("ELegRevSmallBall3",32,0)
	EIMP F 4 A_FaceTarget
	TNT1 A 0 A_PlaySoundEx("legendarycannon/fire","Weapon")
	EIMP G 3 A_CustomMissile("ELegRevSmallBall3",32,0)
	EIMP F 4 A_FaceTarget
	Goto See
  EnragedTech:
	EIMP EEEF 8 A_FaceTarget
  EnragedTechLoop:
	EIMP F 3 A_FaceTarget
	TNT1 A 0 A_CustomMissile("RLegendaryProjectile",32,0,Random(2,-2))
    EIMP G 3 A_PlayWeaponSound("BlueDTRFire")
	TNT1 A 0 A_Jump(12,"Pause")
	TNT1 A 0 A_SpidRefire
	Loop
  Pause:
	EIMP F 0 A_PlaySound("weapons/demontechsteam")
	EIMP FFEE 3
	Goto See
//i]>=A=<=(0)=>=A=<[i\\<-<-<0[ Enraged Legendary Cyber Imp MK II ]0>->->//i]>=A=<=(0)=>=A=<[i\\
  NormalMKII:
	E2MP EF 8 A_FaceTarget
	E2MP G 2 Bright A_Custommissile("ECyberImpEnergyBolt",36,4,random(3,-3))
	E2MP F 2 A_FaceTarget
	E2MP G 2 Bright A_Custommissile("ECyberImpEnergyBolt",36,4,random(1,-1))
	E2MP F 2 A_FaceTarget
	E2MP G 2 Bright A_Custommissile("ECyberImpEnergyBolt",36,4,random(3,-3))
	E2MP F 2 A_FaceTarget
	E2MP G 2 Bright A_Custommissile("ECyberImpEnergyBolt",36,4,random(1,-1))
	E2MP F 2 A_FaceTarget
	E2MP G 2 Bright A_Custommissile("ECyberImpEnergyBolt",36,4,random(3,-3))
	E2MP F 2 A_FaceTarget
	E2MP G 2 Bright A_Custommissile("ECyberImpEnergyBolt",36,4,random(1,-1))
	E2MP F 2 A_FaceTarget
	Goto SeeMKII
  BFG10kMKII:
	E2MP E 5 A_PlaySound("weapons/charge15k")
	E2MP FFFF 5 A_FaceTarget
	TNT1 A 0 A_PlaySound("weapons/bfg15kfire")
	E2MP G 3 Bright A_CustomMissile("Enraged10KProjectile",32,0,frandom(4,-4))
	E2MP F 4 A_FaceTarget
	TNT1 A 0 A_PlaySound("weapons/bfg15kfire")
	E2MP G 3 Bright A_CustomMissile("Enraged10KProjectile",32,0,frandom(4,-4))
	E2MP F 4 A_FaceTarget
	TNT1 A 0 A_PlaySound("weapons/bfg15kfire")
	E2MP G 3 Bright A_CustomMissile("Enraged10KProjectile",32,0,frandom(4,-4))
	E2MP F 4 A_FaceTarget
	TNT1 A 0 A_PlaySound("weapons/bfg15kfire")
	E2MP G 3 Bright A_CustomMissile("Enraged10KProjectile",32,0,frandom(4,-4))
	
	E2MP E 5 A_PlaySound("weapons/charge15k")
	E2MP VVVV 5 A_FaceTarget
	TNT1 A 0 A_PlaySound("weapons/bfg15kfire")
	E2MP W 3 Bright A_CustomMissile("Enraged10KProjectile",32,0,frandom(4,-4))
	E2MP V 4 A_FaceTarget
	TNT1 A 0 A_PlaySound("weapons/bfg15kfire")
	E2MP W 3 Bright A_CustomMissile("Enraged10KProjectile",32,0,frandom(4,-4))
	E2MP V 4 A_FaceTarget
	TNT1 A 0 A_PlaySound("weapons/bfg15kfire")
	E2MP W 3 Bright A_CustomMissile("Enraged10KProjectile",32,0,frandom(4,-4))
	E2MP V 4 A_FaceTarget
	TNT1 A 0 A_PlaySound("weapons/bfg15kfire")
	E2MP W 3 Bright A_CustomMissile("Enraged10KProjectile",32,0,frandom(4,-4))
	E2MP E 20 A_PlaySound("weapons/bfg15kcooldown",CHAN_AUTO)
	Goto seeMKII
  DTRailgunMKII:
    TNT1 A 0 A_PlaySound("weapons/rgcharge")
    E2MP EFFF 8 A_FaceTarget
	TNT1 A 0 A_PlaySound("weapons/dtrailf")
	TNT1 A 0 A_CustomMissile("ELCBRailCore",32,0,0)
	TNT1 A 0 A_CustomMissile("ECyberImpDTRail",32,0,0)
    E2MP GF 7 A_FaceTarget
	TNT1 A 0 A_PlaySound("weapons/dtrailf")
	TNT1 A 0 A_CustomMissile("ELCBRailCore",32,0,0)
	TNT1 A 0 A_CustomMissile("ECyberImpDTRail",32,0,0)
    E2MP GF 7 A_FaceTarget
    E2MP E 8 A_FaceTarget
	TNT1 A 0 A_PlaySound("weapons/dtrailf")
	TNT1 A 0 A_CustomMissile("ELCBRailCore",32,0,0)
	TNT1 A 0 A_CustomMissile("ECyberImpDTRail",32,0,0)
    E2MP WV 7 A_FaceTarget
	TNT1 A 0 A_PlaySound("weapons/dtrailf")
	TNT1 A 0 A_CustomMissile("ELCBRailCore",32,0,0)
	TNT1 A 0 A_CustomMissile("ECyberImpDTRail",32,0,0)
    E2MP WV 7 A_FaceTarget
	Goto seeMKII
  CannonMKII:
    TNT1 A 0 A_PlaySound("legendarycannon/charge")
    E2MP EF 6 A_FaceTarget
	TNT1 AAA 0 A_CustomMissile("ELegImpRevBall",32,0,random(-10,10),CMF_OFFSETPITCH,frandom(-5,5))
    E2MP G 10 A_FaceTarget
    E2MP EV 6 A_FaceTarget
	TNT1 AAA 0 A_CustomMissile("ELegImpRevBall",32,0,random(-10,10),CMF_OFFSETPITCH,frandom(-5,5))
    E2MP W 10 A_FaceTarget
    E2MP EF 6 A_FaceTarget
	TNT1 AAA 0 A_CustomMissile("ELegImpRevBall",32,0,random(-10,10),CMF_OFFSETPITCH,frandom(-5,5))
    E2MP G 10 A_FaceTarget
    Goto SeeMKII
  CannonProjsMKII:
	E2MP EEEF 3 A_FaceTarget
	E2MP F 3 A_FaceTarget
	TNT1 A 0 A_PlaySoundEx("legendarycannon/fire","Weapon")
	E2MP G 3 A_CustomMissile("ELegRevSmallBall3",32,0,random(-3,3))
	E2MP F 3 A_FaceTarget
	TNT1 A 0 A_PlaySoundEx("legendarycannon/fire","Weapon")
	E2MP G 3 A_CustomMissile("ELegRevSmallBall3",32,0,random(-3,3))
	E2MP F 3 A_FaceTarget
	TNT1 A 0 A_PlaySoundEx("legendarycannon/fire","Weapon")
	E2MP G 3 A_CustomMissile("ELegRevSmallBall3",32,0,random(-3,3))
	E2MP F 3 A_FaceTarget
	TNT1 A 0 A_PlaySoundEx("legendarycannon/fire","Weapon")
	E2MP G 3 A_CustomMissile("ELegRevSmallBall3",32,0,random(-3,3))
	E2MP F 3 A_FaceTarget
	E2MP EEEV 3 A_FaceTarget
	E2MP V 3 A_FaceTarget
	TNT1 A 0 A_PlaySoundEx("legendarycannon/fire","Weapon")
	E2MP W 3 A_CustomMissile("ELegRevSmallBall3",32,0,random(-3,3))
	E2MP V 3 A_FaceTarget
	TNT1 A 0 A_PlaySoundEx("legendarycannon/fire","Weapon")
	E2MP W 3 A_CustomMissile("ELegRevSmallBall3",32,0,random(-3,3))
	E2MP V 3 A_FaceTarget
	TNT1 A 0 A_PlaySoundEx("legendarycannon/fire","Weapon")
	E2MP W 3 A_CustomMissile("ELegRevSmallBall3",32,0,random(-3,3))
	E2MP V 3 A_FaceTarget
	TNT1 A 0 A_PlaySoundEx("legendarycannon/fire","Weapon")
	E2MP W 3 A_CustomMissile("ELegRevSmallBall3",32,0,random(-3,3))
	E2MP V 3 A_FaceTarget
	Goto SeeMKII
  EnragedTechMKII:
	E2MP EEEF 8 A_FaceTarget
  EnragedTechMKIILoop:
	E2MP F 3 A_FaceTarget
	TNT1 AA 0 A_CustomMissile("RLegendaryProjectile",32,0,Random(2,-2))
    E2MP G 3 A_PlayWeaponSound("BlueDTRFire")
	TNT1 A 0 A_Jump(12,"PauseMKII")
	TNT1 A 0 A_SpidRefire
	Loop
  PauseMKII:
	E2MP F 0 A_PlaySound("weapons/demontechsteam")
	E2MP FFEE 3
	Goto SeeMKII
  HarpoonFlak:
    TNT1 A 0 A_PlaySound("LShotgun/Cock")
	E2MP EEEV 3 A_FaceTarget
	TNT1 A 0 A_SetUserVar("user_missile",0)
  HarpoonFlakLoop:
	TNT1 A 0 A_JumpIf(user_missile >= 5,"SeeMKII")
	TNT1 A 0 A_SetUserVar("user_missile",user_missile+1)
	E2MP V 2 A_FaceTarget
	TNT1 A 0 A_PlaySoundEx("weapons/LMGFire","Weapon")
	E2MP W 2 A_CustomMissile("ELCBHarpoonExplosive",32,0,frandom(-5,5),CMF_OFFSETPITCH,frandom(-1,1))
	E2MP V 2 A_FaceTarget
	TNT1 A 0 A_PlaySoundEx("weapons/LMGFire","Weapon")
	E2MP W 2 A_CustomMissile("ELCBHarpoonExplosive",32,0,frandom(-5,5),CMF_OFFSETPITCH,frandom(-1,1))
	E2MP V 2 A_FaceTarget
	TNT1 A 0 A_PlaySoundEx("weapons/LMGFire","Weapon")
	E2MP W 2 A_CustomMissile("ELCBHarpoonExplosive",32,0,frandom(-5,5),CMF_OFFSETPITCH,frandom(-1,1))
	E2MP V 7 A_FaceTarget
	Loop
  Upgrade:
	EIMP E 3 Bright A_JumpIf(user_upgrade >= 1,"SeeMKII")
	TNT1 A 0 A_ChangeFlag(REFLECTIVE,1)
	TNT1 A 0 A_ChangeFlag(NODAMAGE,1)
	TNT1 A 0 A_ChangeFlag(NOPAIN,1)
	TNT1 A 0 A_SetInvulnerable
	TNT1 A 0 A_FaceTarget
    EIMP EEE 30
	TNT1 A 0 A_SetUserVar("user_upgrade",1)
	TNT1 A 0 A_SpawnItem("EnragedDeathBallSmall")
    TNT1 A 0 ACS_NamedExecuteAlways("EnragedLegCyberImpUpgrade")
    E2MP EEE 30
	TNT1 A 0 A_ChangeFlag(REFLECTIVE,0)
	TNT1 A 0 A_ChangeFlag(NODAMAGE,0)
	TNT1 A 0 A_ChangeFlag(NOPAIN,0)
	TNT1 A 0 A_UnSetInvulnerable
	TNT1 A 0 A_SetUserVar("user_upgrade",user_upgrade+1)
	TNT1 A 0 A_Jump(128,"TeleportMKII")
	Goto SeeMKII
  Pain:
	TNT1 A 0 A_JumpIf(user_upgrade >= 1,"PainMKII")
    TNT1 A 0 A_Jump(50,"Teleport")
    EIMP H 2 
    TNT1 A 0 A_SpawnItem("EnragedHellionSmokeSpawner")
	EIMP H 2 A_Pain
  Detox:
    TNT1 A 0 A_SetUserVar(user_missile,0)
	Goto See
  PainMKII:
    TNT1 A 0 A_Jump(50,"TeleportMKII")
    E2MP H 2 
    TNT1 A 0 A_SpawnItem("EnragedHellionSmokeSpawner")
	E2MP H 2 A_Pain
    TNT1 A 0 A_Jump(128,"MissileMKII")
  DetoxMKII:
    TNT1 A 0 A_SetUserVar(user_missile,0)
	Goto SeeMKII
  Death:
	TNT1 A 0 A_JumpIf(user_upgrade >= 1,"DeathMKII")
    TNT1 A 0 A_StopSound(6)
	TNT1 A 0 A_ChangeFlag(BRIGHT,0)
    EIMP I 8
    EIMP J 8 A_Scream
    EIMP K 6
    EIMP L 6 A_NoBlocking
	EIMP M 0 A_SpawnItem("BodyCrash",0,0,0,0)
    EIMP M -1
	Stop
  DeathMKII:
    TNT1 A 0 A_StopSound(6)
	TNT1 A 0 A_ChangeFlag(BRIGHT,0)
    E2MP I 8
    E2MP J 8 A_Scream
    E2MP K 6
    E2MP L 6 A_NoBlocking
	E2MP M 0 A_SpawnItem("BodyCrash",0,0,0,0)
    E2MP M -1
	Stop
  XDeath:
	TNT1 A 0 A_JumpIf(user_upgrade >= 1,"XDeathMKII")
	TNT1 A 0 A_PlaySound("CerebralImp/ChargeDeath")
    EIMP HHHHHHHHHHHHHHHHHHHHHHHHH 2 Bright A_CustomMissile("EnragedLegendaryRuneFlameSpawner",-20,0,random(0,-360),2,random(0,360))
    EIMP H 7
	TNT1 A 0 A_SpawnItemEx("GibbedGenerator",0,0,0,0,0,0,0,128,0)
    TNT1 A 0 A_ChangeFlag(BRIGHT,0)
    TNT1 A 0 A_PlaySound("weapons/dtech10kexplode")
    TNT1 A 0 A_Explode(500,200)
	TNT1 A 0 A_SpawnItemEx("EnragedCommandoStarShock",0,0,15)
    EIMP N 4 A_SpawnItem("EnragedDTBFGEx",0,-10)
	TNT1 A 0 A_CustomMissile("ELegCyberImpArm1",32,-10,270)
    EIMP O 2 A_XScream
	EIMP P 2 A_Explode(80,100)
    EIMP Q 2 A_NoBlocking
    EIMP RST 2
    EIMP U -1
    Stop
  XDeathMKII:
	TNT1 A 0 A_PlaySound("CerebralImp/ChargeDeath")
    E2MP HHHHHHHHHHHHHHHHHHHHHHHHH 2 Bright A_CustomMissile("EnragedLegendaryRuneFlameSpawner",-20,0,random(0,-360),2,random(0,360))
    E2MP H 7
	TNT1 A 0 A_SpawnItemEx("GibbedGenerator",0,0,0,0,0,0,0,128,0)
    TNT1 A 0 A_ChangeFlag(BRIGHT,0)
    TNT1 A 0 A_PlaySound("weapons/dtech10kexplode")
    TNT1 A 0 A_Explode(500,200)
	TNT1 A 0 A_SpawnItemEx("EnragedCommandoStarShock",0,0,15)
	TNT1 A 0 A_SpawnItemEx("EnragedDeathBallSmall")
    EIMP N 4 A_SpawnItem("EnragedDTBFGEx",0,-10)
	TNT1 A 0 A_custommissile("ELegCyberImpArm1",30,-10,270)
	TNT1 A 0 A_custommissile("ELegCyberImpArm2",30,10,93)
    EIMP O 2 A_XScream
	EIMP P 2 A_Explode(80,100)
    EIMP Q 2 A_NoBlocking
    EIMP RST 2
    EIMP U -1
    Stop
	}
}

Actor ECyberImpEnergyBolt : ELBSEnergyBolt
{
Speed 40
RenderStyle Add
Damage 10
States
{
  Spawn:
    EBR3 AAAABBBB 1 bright A_SpawnItemEx("ELBSEnergyBoltTrail")
    loop
  Death:
    TNT1 AA 0 A_SpawnItemEx("EnragedParticleSpawner")
    TNT1 AAA 0 A_CustomMissile("LegendarySmokeFX4",0,0,random(0,360),2,random(0,360))
    EBR3 CDEF 3 bright
    stop
  }
}

Actor ELegImpRevBall : ELegRevBall
{
    DamageType "ImpComet"
    States
    {	
    Death:
	    ERB1 ABCD 4 A_SpawnItemEx("EnragedParticleSpawner")
		TNT1 A 0 A_Explode(48,96,0) 
		TNT1 A 0 A_PlaySound("weapons/clrocketexplode")
	    TNT1 A 0 A_SpawnItemEx("EnragedParticleSpawner") 	
        ERB1 EFGHIJKLMNO 3
        Stop
    }
}

ACTOR ECyberImpDTRail : EnragedCybruiserRail
{
DamageType "ImpComet"
States
{
Spawn:
    TNT1 A 1 Bright
    Loop
Death:
	TNT1 A 0
	TNT1 A 0 A_SpawnItemEx("EnragedBFGShockwave", 0, 0, 0, 0, 0, 0, 0, 128)
    TNT1 AAAA 0 A_CustomMissile("EKaboomLN2", 0, 0, random(0,360), 2, random(0,360))	
	TNT1 A 1 A_SpawnItem("RailGunImpactEffectRed")
	Stop
	}
}

ACTOR ELegCyberImpArm1
{
  Radius 8
  Height 8
  Speed 4
  +DOOMBOUNCE
  +DROPOFF
  +NOTIMEFREEZE
  +MISSILE
  States
  {
  Spawn:
	ITIM GHIJK 3
	Loop
  Death:
	ITIM L -1
	Loop
	}
}

ACTOR ELegCyberImpArm2
{
  Radius 12
  Height 10
  Speed 4
  +DOOMBOUNCE
  +DROPOFF
  +NOTIMEFREEZE
  +MISSILE
  States
  {
	Spawn:
     ITIM MNOP 3
     Loop
	Death:
	 ITIM Q -1
	 Loop
	}
}

ACTOR ELegCyberImpGhostA
{
Radius 20
Height 56
Speed 0
Alpha 0.7
PROJECTILE
RENDERSTYLE Translucent
+CLIENTSIDEONLY
+NOTIMEFREEZE
States
{
  Spawn:
    TNT1 A 0
    TNT1 A 1 A_JumpIf(ACS_ExecuteWithResult(304) == 1,"NULL")
    EIMP A 2 A_FadeOut(0.10)
    Wait
    }
}

ACTOR ELegCyberImpGhostB : ELegCyberImpGhostA
{   
States
{
  Spawn:
    TNT1 A 0
    TNT1 A 1 A_JumpIf(ACS_ExecuteWithResult(304) == 1,"NULL")
    EIMP B 2 A_FadeOut(0.10)
    Wait
    }
}

ACTOR ELegCyberImpGhostC : ELegCyberImpGhostA
{   
States
{
  Spawn:
    TNT1 A 0
    TNT1 A 1 A_JumpIf(ACS_ExecuteWithResult(304) == 1,"NULL")
    EIMP C 2 A_FadeOut(0.10)
    Wait
    }
}

ACTOR ELegCyberImpGhostD : ELegCyberImpGhostA
{   
States
{
  Spawn:
    TNT1 A 0
    TNT1 A 1 A_JumpIf(ACS_ExecuteWithResult(304) == 1,"NULL")
    EIMP D 2 A_FadeOut(0.10)
    Wait
    }
}

ACTOR ELegCyberImpGhostAMKII : ELegCyberImpGhostA
{   
States
{
  Spawn:
    TNT1 A 0
    TNT1 A 1 A_JumpIf(ACS_ExecuteWithResult(304) == 1,"NULL")
    E2MP A 2 A_FadeOut(0.10)
    Wait
    }
}

ACTOR ELegCyberImpGhostBMKII : ELegCyberImpGhostA
{   
States
{
  Spawn:
    TNT1 A 0
    TNT1 A 1 A_JumpIf(ACS_ExecuteWithResult(304) == 1,"NULL")
    E2MP B 2 A_FadeOut(0.10)
    Wait
    }
}

ACTOR ELegCyberImpGhostCMKII : ELegCyberImpGhostA
{   
States
{
  Spawn:
    TNT1 A 0
    TNT1 A 1 A_JumpIf(ACS_ExecuteWithResult(304) == 1,"NULL")
    E2MP C 2 A_FadeOut(0.10)
    Wait
    }
}

ACTOR ELegCyberImpGhostDMKII : ELegCyberImpGhostA
{   
States
{
  Spawn:
    TNT1 A 0
    TNT1 A 1 A_JumpIf(ACS_ExecuteWithResult(304) == 1,"NULL")
    E2MP D 2 A_FadeOut(0.10)
    Wait
    }
}