Actor Maephisto 29019 //One heated microwave
{
 Monster
 Speed 10
 Mass 99999
 Health 8000
 Scale 1.1
 Radius 40
 Height 110
 Decal Bulletchip
 SeeSound "maephisto/see"
 DeathSound "maephisto/death"
 ActiveSound "maephisto/idle"
 Species "Hell"
 DamageFactor "NobleComet", 0.0
 DamageFactor "HellComet", 0.0
 DamageFactor "Hell", 0.0
 DamageFactor "Cyber10K", 0.0
 DamageFactor "Legendary", 0.01
 DamageFactor "LegendaryGuru", 0.01
 DamageFactor "LegendaryGuruPlayer", 0.01
 DamageFactor "BFGSplash", 0.1
 DamageFactor "BFGSpray", 0.1
 DamageFactor "PDTBFG", 0.0
 DamageFactor "PDTBFGTracer", 0.0
 DamageFactor "PlayerDevBall", 0.0
 DamageFactor "PlayerDevBall2", 0.0
 DamageFactor "PlayerDTBFGRailgunSlug", 0.0
 DamageFactor "PlayerDevTracer", 0.0
 DamageFactor "Ice", 0.5
DamageFactor "PlayerIce", 0.5
 DamageFactor "Explosion", 0.1
 DamageFactor 0.8 //0.55
 MaxStepHeight 32
 MaxDropOffHeight 32
 +DONTHARMSPECIES
 +FLOORCLIP
 +MISSILEMORE
 +MISSILEEVENMORE
 +QUICKTORETALIATE
 +NOTIMEFREEZE
 +NOPAIN
 +DONTRIP
 +NORADIUSDMG
 +BOSS
 +NOBLOCKMONST
 Obituary "%o was vaporised by the Maephisto."
 var int user_delay;
 var int user_missile;
 var int user_lowlag;
 var int user_fading;
 Tag "$NEMaep"
 States
 {
  Spawn:
    MMDR A 0
	TNT1 A 0 ACS_NamedExecuteAlways("WimpyMode",0,2)
	TNT1 A 0 ACS_NamedExecuteAlways("ModifyMonster",0,2,6)
  Idle:
    MMDR E 10 A_Look
    Loop	
  See:
	TNT1 A 0 A_JumpIf(user_lowlag == 1,"MoreSee")
	TNT1 A 0 A_JumpIfTargetInLOS("MoreSee",0,0,0,0)
	MMDR ABCD 4 A_Chase
	Loop
  MoreSee:
	TNT1 A 0 A_SetUserVar("user_lowlag",1)
	TNT1 A 0 A_UnSetInvulnerable
	TNT1 A 0 A_Jump(100,"Rush")
    MMDR A 2 A_Hoof
    MMDR ABBCC 2 A_Chase
    MMDR D 2 A_Hoof
    MMDR D 2 A_Chase
	TNT1 A 0 A_Jump(52,"Teleport")
    Loop	
  Rush:
	MMDR A 0 A_Hoof
	MMDR AA 0 A_Chase
	MMDR A 2 A_SpawnItemEx("MaephistoGhost",0,0,0,0,0,0,0,128)
	MMDR AA 0 A_Chase
	MMDR A 2 A_SpawnItemEx("MaephistoGhost",0,0,0,0,0,0,0,128)
	MMDR AA 0 A_Chase
	MMDR B 2 A_SpawnItemEx("MaephistoGhost",0,0,0,0,0,0,0,128)
	MMDR AA 0 A_Chase
	MMDR B 2 A_SpawnItemEx("MaephistoGhost",0,0,0,0,0,0,0,128)	   
	MMDR A 0 A_Hoof
	MMDR AA 0 A_Chase
	MMDR C 2 A_SpawnItemEx("MaephistoGhost",0,0,0,0,0,0,0,128)
	MMDR AA 0 A_Chase
	MMDR C 2 A_SpawnItemEx("MaephistoGhost",0,0,0,0,0,0,0,128)
	MMDR AA 0 A_Chase
	MMDR D 2 A_SpawnItemEx("MaephistoGhost",0,0,0,0,0,0,0,128)
	MMDR AA 0 A_Chase
	MMDR D 2 A_SpawnItemEx("MaephistoGhost",0,0,0,0,0,0,0,128)	   
	TNT1 A 0 A_Jump(48,"Teleport")
	TNT1 A 0 A_Jump(75,"See")	
	Loop	
  Teleport:
	MMDR E 1 ACS_NamedExecuteWithResult("ttk_fader",10,3)
	MMDR EEEEEEEEEEEE 0 A_SpawnItemEx("TerminatorLineSpawner")
	MMDR E 0 A_Settics(user_fading)
	MMDR EEEEEEEEEEEEEEEEEEEEEEEEEEEEEEEEEEEEEE 0 A_Wander
	MMDR EEEEEEEEEEEEEEEEEEEEEEEEEEEEEEEEEEEEEE 0 A_Wander
	MMDR E 1 A_PlayWeaponSound("boss/teleport")
	MMDR EEEEEEEEEEEE 0 A_SpawnItemEx("TerminatorLineSpawner")
	MMDR E 0 A_Settics(user_fading)
	MMDR E 1 
	Goto See	
  Missile:
	TNT1 A 0 A_Jump(192,"Railgun","Bolt","BFG10K","Devastator","BlueStarCannon","Laser","LegendaryBFG","NemesisBFG")
  ExpMinigun:
    MMDR EEE 4 A_FaceTarget
	TNT1 A 0 A_PlaySound("sentient/fire")
   	TNT1 A 0 A_SpawnItemEx("OrangeShellCasing", 22, 22, 110, Random(2, 6), 0, Random(1, 3), Random(80, 90), 128)
    MMDR H 1 Bright A_CustomMissile("TerminatorExplosiveTracer",Random(102,110),-16,Random(3,-3))
	TNT1 A 0 A_PlaySound("sentient/fire")
   	TNT1 A 0 A_SpawnItemEx("OrangeShellCasing", 22, 22, 110, Random(2, 6), 0, Random(1, 3), Random(80, 90), 128)
    MMDR I 1 Bright A_CustomMissile("TerminatorExplosiveTracer",Random(102,110),-16,Random(3,-3))
    MMDR I 0 A_CPosRefire    
    Goto ExpMinigun+4 
  Railgun:
    TNT1 A 0 A_PlayWeaponSound("weapons/rgcharge")
    MMDR EEEEEEEEEE 5 Bright A_FaceTarget
	MMDR F 0 A_FaceTarget
	TNT1 A 0 A_PlayWeaponSound("monsters/darkcyberrail")
    MMDR F 0 A_CustomMissile("TrueLegendaryCyberRail",62,40,0)	
    MMDR F 5 Bright A_CustomMissile("TrueLegendaryCyberRail",62,-40,0)
	MMDR GGGG 3 Bright A_FaceTarget
	TNT1 A 0 A_PlayWeaponSound("monsters/darkcyberrail")
    MMDR F 0 A_CustomMissile("TrueLegendaryCyberRail",62,40,0)	
    MMDR F 5 Bright A_CustomMissile("TrueLegendaryCyberRail",62,-40,0)
	MMDR GGGG 3 Bright A_FaceTarget
	TNT1 A 0 A_PlayWeaponSound("monsters/darkcyberrail")
    MMDR F 0 A_CustomMissile("TrueLegendaryCyberRail",62,40,0)	
    MMDR F 5 Bright A_CustomMissile("TrueLegendaryCyberRail",62,-40,0)
	MMDR GGGG 3 Bright A_FaceTarget
	TNT1 A 0 A_Jump(110,"Bolt")
    Goto See 	
  Bolt:
  	TNT1 A 0 A_PlaySound("maephisto/see1")
	TNT1 A 0 A_SetUserVar("user_missile",0)
    MMDR EEEEEE 5 A_FaceTarget 
  BoltCombo:
    MMDR F 0 A_JumpIf(user_missile >= 28,"See")	 
    MMDR F 0 A_SetUserVar("user_missile",user_missile+1)
	MMDR F 0 A_FaceTarget	
    MMDR F 0 A_CustomMissile("LegRevBall2",62,40,0)	
    MMDR F 3 Bright A_CustomMissile("LegRevBall2",62,-40,0)
    Loop	
  BFG10K:
  	TNT1 A 0 A_PlaySound("maephisto/see1")
	TNT1 A 0 A_SetUserVar("user_missile",0)
    MMDR EEEEEE 5 A_FaceTarget 
  BFG10KLoop:
    MMDR F 0 A_JumpIf(user_missile >= 15,"See")	 
    MMDR F 0 A_SetUserVar("user_missile",user_missile+1)
	MMDR F 0 A_FaceTarget	
	TNT1 A 0 A_PlaySound("weapons/bfg15kfire")
    MMDR F 0 A_CustomMissile("TrueLegendary10KProjectile",62,40,0)	
    MMDR F 4 Bright A_CustomMissile("TrueLegendary10KProjectile",62,-40,0)
    MMDR G 4 A_FaceTarget 
    Loop
  Devastator:
	TNT1 A 0 A_PlaySound("devastator/charge")
    MMDR JKLKJJKLKJJKLKJJKLKJJKL 5 Bright A_FaceTarget
	TNT1 A 0 A_PlaySound("devastator/fire")
	MMDR M 1 Bright A_CustomMissile("LegCybDevastatorBall",78,0,0)    
    MMDR NOOOOOOOOO 1 Bright A_FaceTarget   
	TNT1 A 0 A_Jump(110,"BlueStarCannon")
    Goto See	
  BlueStarCannon:
  	TNT1 A 0 A_PlaySound("maephisto/see2")
    MMDR EEEEEE 5 A_FaceTarget
	TNT1 A 0 A_SetInvulnerable
	MMDR EEEEEEEEEEEE 5 Bright A_SpawnItem("LFiendFlameSpawner",0,0,0,0)
	TNT1 A 0 A_UnSetInvulnerable
	MMDR F 0 A_FaceTarget
	TNT1 A 0 A_PlayWeaponSound("star/fire")
    MMDR F 0 A_CustomMissile("LegCyberKnightBlueStar",62,40,0)	
    MMDR F 5 Bright A_CustomMissile("LegCyberKnightBlueStar",62,-40,0)
	MMDR GGGGGGG 3 Bright A_FaceTarget
	MMDR F 0 A_FaceTarget
	TNT1 A 0 A_PlayWeaponSound("star/fire")
    MMDR F 0 A_CustomMissile("LegCyberKnightBlueStar",62,40,0)	
    MMDR F 5 Bright A_CustomMissile("LegCyberKnightBlueStar",62,-40,0)
	MMDR GGGGGGG 3 Bright A_FaceTarget
	MMDR F 0 A_FaceTarget
	TNT1 A 0 A_PlayWeaponSound("star/fire")
    MMDR F 0 A_CustomMissile("LegCyberKnightBlueStar",62,40,0)	
    MMDR F 5 Bright A_CustomMissile("LegCyberKnightBlueStar",62,-40,0)
	MMDR GGGGGGG 3 Bright A_FaceTarget
	TNT1 A 0 A_Jump(110,"Laser")
    Goto See	
  Laser:
    MMDR EEEE 5 A_FaceTarget
    MMDR E 0 A_PlaySound("maephisto/charge",CHAN_WEAPON,1,0,0)
    MMDR JKLKJ 5 Bright A_FaceTarget
    MMDR JKLKJ 4 Bright A_FaceTarget
    MMDR JKLKJ 3 Bright A_FaceTarget
    MMDR JKLKJ 2 Bright A_FaceTarget
    MMDR JKLKJ 1 Bright A_FaceTarget 
    MMDR JKLKJ 1 Bright A_FaceTarget 
    MMDR M 0 A_PlaySound("maephisto/laser",Chan_AUTO,1,0,0)
    MMDR MMMMMMMMMMMMMNNNNNNNNNNNOOOOOOOOOOOOOOO 1 Bright A_CustomMissile("MaephistoLaserBeam",90,0,0)
    TNT1 A 0 A_Jump(110,"LegendaryBFG")
    Goto See
  LegendaryBFG:
	TNT1 A 0 A_PlaySoundEx("Legcyber/BFG","GURUCHRG")
	TNT1 A 0 A_SetInvulnerable
    MMDR JKLKJJKLKJJKLKJJKLKJJKLJKLKJ 5 Bright A_SpawnItem("LSoulFlameSpawner",0,0,0,0)
	TNT1 A 0 A_UnSetInvulnerable
	TNT1 A 0 A_PlayWeaponSound("Weapons/GuruFire")
  	TNT1 A 0 A_PlayWeaponSound("Weapons/GuruAddFire")
	MMDR M 1 Bright A_CustomMissile("CyberGuruball",78,0,0)    
    MMDR NOOOOOOOOO 1 Bright A_FaceTarget   
    Goto See
  NemesisBFG:
	TNT1 A 0 A_PlaySoundEx("truelegbfg/charge","GURUCHRG")
	TNT1 A 0 A_SetInvulnerable
    MMD0 JKLKJJKLKJJKLKJJKLKJJKLJKLKJ 5 Bright A_SpawnItem("NemesisCyberFlameSpawner3",0,0,0,0)
	TNT1 A 0 A_UnSetInvulnerable
	TNT1 A 0 A_PlaySound("truelegbfg/fire",7)
	TNT1 A 0 A_PlaySound("truelegbfg/fire2",6)
	MMD0 M 1 Bright A_CustomMissile("NemesisGuruBall",78,0,0)    
    MMD0 NOOOOOOOOO 1 Bright A_FaceTarget   
    Goto See
  Death:
    MMDR P 10 Bright A_Scream
    MMDR Q 10 Bright A_NoBlocking
	TNT1 AA 0 A_SpawnItemEx("GibbedGenerator",Random(10,-10),Random(10,-10),Random(20,60),0,0,0,0,128,0)
	TNT1 AAA 0 A_CustomMissile("BigRedBloodCloud", random(10,80), 0, random(0,360), 2, random(0,360))
    MMDR RRRRR 2 Bright A_CustomMissile("CFKaboom", random(20,80), random(20,-20), random(0,360), 2, random(0,360))
	TNT1 AA 0 A_SpawnItemEx("GibbedGenerator",Random(10,-10),Random(10,-10),Random(20,60),0,0,0,0,128,0)
	TNT1 AAA 0 A_CustomMissile("BigRedBloodCloud", random(10,80), 0, random(0,360), 2, random(0,360))
    MMDR SSSSS 2 Bright A_CustomMissile("CFKaboom", random(20,80), random(20,-20), random(0,360), 2, random(0,360))	
	TNT1 AA 0 A_SpawnItemEx("GibbedGenerator",Random(10,-10),Random(10,-10),Random(20,60),0,0,0,0,128,0)
	TNT1 AAA 0 A_CustomMissile("BigRedBloodCloud", random(10,80), 0, random(0,360), 2, random(0,360))
    MMDR TTTTT 2 Bright A_CustomMissile("CFKaboom", random(20,80), random(20,-20), random(0,360), 2, random(0,360))
	TNT1 A 0 A_SpawnItemEx("NemesisBFG",0,0,64,random(1,8),0,2,random(0,360),0,220)
	TNT1 A 0 A_SpawnItemEx("LegendaryBFG",0,0,64,random(1,8),0,2,random(0,360),0,128)
	TNT1 A 0 A_SpawnItemEx("ExplosiveMinigun",0,0,64,random(1,8),0,2,random(0,360),0,0)
	TNT1 A 0 A_SpawnItemEx("DemonTechDevastator",0,0,64,random(1,8),0,2,random(0,360),0,0)
	TNT1 A 0 A_SpawnItemEx("CFBFG10K",0,0,64,random(0,8),0,2,random(1,360),0,0)
	TNT1 A 0 A_SpawnItemEx("LegendaryUltrasphere",0,0,64,random(1,8),0,2,random(0,360),0,64)
	TNT1 A 0 A_SpawnItemEx("LegendaryRune",0,0,64,random(1,8),0,2,random(0,360),0,128)
	TNT1 A 0 A_SpawnItemEx("LegendaryRune",0,0,64,random(1,8),0,2,random(0,360),0,128)
	TNT1 AA 0 A_SpawnItemEx("GibbedGenerator",Random(10,-10),Random(10,-10),Random(20,60),0,0,0,0,128,0)
	TNT1 AAA 0 A_CustomMissile("BigRedBloodCloud", random(10,80), 0, random(0,360), 2, random(0,360))
    MMDR UUUUU 2 Bright A_CustomMissile("CFKaboom", random(20,80), random(20,-20), random(0,360), 2, random(0,360))
	TNT1 AA 0 A_SpawnItemEx("GibbedGenerator",Random(10,-10),Random(10,-10),Random(20,60),0,0,0,0,128,0)
	TNT1 AAA 0 A_CustomMissile("BigRedBloodCloud", random(10,80), 0, random(0,360), 2, random(0,360))
    MMDR VVVVV 2 Bright A_CustomMissile("CFKaboom", random(20,80), random(20,-20), random(0,360), 2, random(0,360))
    MMDR W -1
    Stop
  }
}

ACTOR MaephistoGhost
{
Scale 1.1
RENDERSTYLE Translucent
Alpha 0.75
+NOGRAVITY
+CLIENTSIDEONLY
+DONTSPLASH
+NOINTERACTION
+NOCLIP
States
{
Spawn:
    MMDR A 2 A_FadeOut(0.18)
    Loop
    }
}

Actor MaephistoLaserBeam
{
  Radius 20
  Height 20
  Speed 80
  Damage 300
  RenderStyle Add
  Alpha 1
  DeathSound "weapons/bfgx"
  DamageType "Hell"
  Projectile
  +RIPPER
  Scale 1.5
  States
  {
  Spawn:
    KAMS A 1 Bright
    Loop
  Death:
    KAXP B 3 Bright A_Explode(392,392)
    KAXP CDEFGHIJKLM 3 Bright
    Stop
  }
}