// BEEP BOOP DESTROY ALL LIVING BEINGS

ACTOR DarkInquisitor : Inquisitor
{
//Creator: NaturalxCF
//Origin: Nexus Infinity
//Sprite: ROB4
//Title: "Crimson Inquisitor"
SeeSound "darkinquisitor/sight"
ActiveSound "darkinquisitor/active"
DeathSound "darkinquisitor/death"
PainSound "darkinquisitor/pain"
Health 7000
Obituary "World.execute(%o):"
PainChance 1
Speed 20
FloatSpeed 15
Damagefactor "EMP", 0
Damagefactor "Disintegrate", 0
Damagefactor "Ice", 0
DamageFactor "Fire", 0
DamageFactor "Electric", 0
DamageFactor 0.50
DamageFactor "Legendary", 0.4
DamageFactor "LegendaryPlayer", 0.3
Dropitem "Backpack"
Dropitem "Soulsphere" 210 3
DropItem "Demon Tech Devastator"
DropItem "HandGrenadeAmmo" 210 3
DropItem "Armorplate" 186 2
DropItem "Portablemedkit" 159 2
DropItem "WeaponEnhancerModuleSpawner" 255, 1
DropItem "WeaponEnhancerModuleSpawner" 128, 1
DropItem "WeaponEnhancerModuleSpawner" 60, 1
Tag "\crCrimson Inquisitor\c-" //Tag "\crDark Inquisitor\c-"
+BOSS
+BOSSDEATH
+FLOORCLIP
+NORADIUSDMG
+DONTMORPH
+NOICEDEATH
+MISSILEMORE
+MISSILEEVENMORE
+DROPOFF
+NOFEAR
+NOEXTREMEDEATH
var int user_music;
States
    {
  Spawn:
	ROB4 A 0 A_ChangeFlag("Float", 0)
    ROB4 A 0 A_ChangeFlag("NoGravity", 0)
    ROB4 A 0 A_TakeInventory("FlightToken", 0)
	ROB4 A 10 A_Look
	Loop
  See:
	NULL A 0 A_TakeInventory("MarineKilled",1)
	TNT1 A 0 A_JumpIf(user_music == 1,3)
	TNT1 A 0 ACS_NamedExecuteAlways("StartMonsterMusic",0,9010)
	TNT1 A 0 A_SetUserVar("user_music",1)
	TNT1 A 0 A_Warp(AAPTR_DEFAULT,0,0,0,0,WARPF_TESTONLY,1)
	Goto TakeOff
	ROB4 B 6 A_Chase
	ROB4 C 0 A_playsoundEX("darkinquisitor/step","SoundSlot6")
	ROB4 C 6 A_Chase
	TNT1 A 0 A_JumpIf(z - floorz > 45, "Fly")//Lets it fly if it falls off a high enough ledge.
	ROB4 A 0 A_Jump(5,"TakeOff")
	ROB4 D 6 A_Chase
	TNT1 A 0 A_JumpIf(z - floorz > 45, "Fly")
	ROB4 A 0 A_Jump(5,"TakeOff")
	ROB4 E 6 A_Chase
	TNT1 A 0 A_JumpIf(z - floorz > 45, "Fly")
	ROB4 A 0 A_Jump(5,"TakeOff")
	ROB4 D 0 A_playsoundEX("darkinquisitor/step","SoundSlot6")
	ROB4 D 6 A_chase
	TNT1 A 0 A_JumpIf(z - floorz > 45, "Fly")
	ROB4 A 0 A_Jump(5,"TakeOff")
	ROB4 C 6 A_Chase
	TNT1 A 0 A_JumpIf(z - floorz > 45, "Fly")
	Goto See
  TakeOff: //Thanks for the code, Ghastly! ^^
    ROB4 A 8
    ROB4 A 0 A_ChangeFlag("NoPain", 1)
    ROB4 I 8 ThrustThingZ(0, 42, 0, 1)
    ROB4 A 0 A_ChangeFlag(Float, 1)
    ROB4 A 0 A_ChangeFlag(NoGravity, 1)
    ROB4 H 8 
    ROB4 A 0 A_Stop
    ROB4 A 0 A_PlaySound("darkinquisitor/flight")
    ROB4 A 0 A_GiveInventory("FlightToken", 1)
    ROB4 A 0 A_ChangeFlag("NoPain", 0)
    Goto Fly
  Land:
    ROB4 A 0 A_ChangeFlag("NoPain", 1)
    ROB4 A 0 A_ChangeFlag("Float", 0)
    ROB4 A 0 A_ChangeFlag("NoGravity", 0)
    ROB4 A 0 A_TakeInventory("FlightToken", 0)
    ROB4 A 3 A_CheckFloor(1)
    Goto Land+4
	ROB4 A 0 A_ChangeFlag("NoPain", 0)
    TNT1 A 0 A_StopSoundEx("SoundSlot6")
	ROB4 A 0 A_Jump(5,"DTechShot")
	ROB4 A 0 A_Jump(5,"Missile")
	ROB4 A 0 A_Jump(5,"EMP")
	ROB4 A 0 A_Jump(5,"GrenadeSpam")
	TNT1 A 0 A_Jump(5,"SeekerMinesLaunch")
	ROB4 A 0 A_Jump(5,"AutomaticHexaSpamWindup")
    Goto See
	Fly:
	ROB4 H 1 Bright A_PlaySoundEx("darkinquisitor/flight","SoundSlot6",1,0)
	ROB4 H 3 Bright A_Chase ("", "Missile", 1)
	TNT1 A 0 A_JumpIf(z - floorz < 45, "Land")	//If low enough, it lands safely on the ground.
	ROB4 A 0 A_Jump(1,"Land")
	ROB4 I 4 Bright A_Chase ("", "Missile")
	TNT1 A 0 A_JumpIf(z - floorz < 45, "Land")
	ROB4 A 0 A_Jump(1,"Land")
	ROB4 H 4 Bright A_Chase ("", "Missile", 1)
	TNT1 A 0 A_JumpIf(z - floorz < 45, "Land")
	ROB4 A 0 A_Jump(1,"Land")
	ROB4 I 4 Bright A_Chase ("", "Missile")
	TNT1 A 0 A_JumpIf(z - floorz < 45, "Land")
	ROB4 A 0 A_Jump(1,"Land")
	Loop
  Missile:
	TNT1 A 0 A_Jump(80,2)
	ROB4 A 0 A_JumpIfCloser(850,"EMP")
	ROB4 A 0 A_JumpIfCloser(425,"AutomaticHexaSpamWindup")
	ROB4 A 6 A_FaceTarget
	ROB4 F 0 A_PlaySound("darkinquisitor/darkmatterfire")
	ROB4 F 4 Bright A_CustomMissile("DarkMatterBall",64,-32,0)
	ROB4 G 6
	TNT1 A 0 A_Jump(100,"GrenadeSpam")
	TNT1 A 0 A_Jump(100,"DTechShot")
	TNT1 A 0 A_Jump(100,"SeekerSpam")
	TNT1 A 0 A_Jump(100,"SeekerMinesLaunch")
	ROB4 A 0 A_Jump(100,"AutomaticHexaSpamWindup")
	TNT1 A 0 A_JumpIfInventory("FlightToken", 1, "Fly")
	Goto See
  EMP:
	ROB4 A 6 A_FaceTarget
	ROB4 J 0 A_PlaySound("darkinquisitor/empfire")
	ROB4 J 0 A_CustomMissile("EMPGrenade",100,24,0,1)
	ROB4 J 3 Bright A_CustomMissile("EMPGrenade",100,-24,0,1)
	ROB4 G 6
	TNT1 A 0 A_JumpIfInventory("FlightToken", 1, "Fly")
	Goto See
  GrenadeSpam:
	ROB4 A 12 A_FaceTarget
	TNT1 A 0 A_PlaySound("Weapons/GrenadeFire")
    TNT1 A 0 A_CustomMissile("CyberLordGrenade",100,-24, 0, CMF_AIMOFFSET, 4.328125)
    ROB4 J 5 Bright A_CustomMissile("CyberLordGrenade", 100, 24, 0, CMF_AIMOFFSET, 4.328125)
	ROB4 A 5 A_FaceTarget
	TNT1 A 0 A_PlaySound("Weapons/GrenadeFire")
    TNT1 A 0 A_CustomMissile("CyberLordGrenade", 100, 24, 0, CMF_AIMOFFSET, 4.328125)
    ROB4 J 5 Bright A_CustomMissile("CyberLordGrenade", 100,-24, 0, CMF_AIMOFFSET, 4.328125)		
	ROB4 A 5 A_FaceTarget
	TNT1 A 0 A_PlaySound("Weapons/GrenadeFire")
    TNT1 A 0 A_CustomMissile("CyberLordGrenade", 100, 24, 0, CMF_AIMOFFSET, 4.328125)
    ROB4 J 5 Bright A_CustomMissile("CyberLordGrenade", 100,-24, 0, CMF_AIMOFFSET, 4.328125)
	ROB4 A 5 A_FaceTarget
	TNT1 A 0 A_PlaySound("Weapons/GrenadeFire")
    TNT1 A 0 A_CustomMissile("CyberLordGrenade", 100, 24, 0, CMF_AIMOFFSET, 4.328125)
    ROB4 J 5 Bright A_CustomMissile("CyberLordGrenade", 100,-24, 0, CMF_AIMOFFSET, 4.328125)
	Goto See
  DTechShot:
	ROB4 E 0 A_FaceTarget
	TNT1 A 0 A_StopSound(6)
    ROB4 E 0 A_PlaySound ("devastator/charge")
	TNT1 A 0 A_ChangeFlag("NOPAIN",1)
    ROB4 AAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAA 2 Bright A_FaceTarget
    ROB4 F 10 Bright
    ROB4 F 0 A_PlaySound ("devastator/fire")
    ROB4 F 0 A_CustomMissile("ZombieDevastatorBall",64,-32,0)
    ROB4 F 0 A_CustomMissile("ZombieDevastatorBall",64,-32,0)
    ROB4 F 0 A_CustomMissile("ZombieDevastatorBall",64,-32,0)
    ROB4 F 10 Bright A_CustomMissile("ZombieDevastatorBall",64,-32,0)
	TNT1 A 0 A_ChangeFlag("NOPAIN",0)
    ROB4 E 30
    goto See
  SeekerMinesLaunch:
	ROB4 A 0 A_CustomMissile("SeekerMines",64,-32,0)
	ROB4 A 0 A_CustomMissile("SeekerMines",64,-30,0)
	ROB4 A 0 A_CustomMissile("SeekerMines",64,-28,0)
	ROB4 F 2
	TNT1 A 0 A_CustomMissile("SeekerMines", 100, 24, 0)
	TNT1 A 0 A_CustomMissile("SeekerMines", 100, 22, 0)
	TNT1 A 0 A_CustomMissile("SeekerMines", 100, 26, 0)
	TNT1 A 0 A_CustomMissile("SeekerMines", 100, -24, 0)
	TNT1 A 0 A_CustomMissile("SeekerMines", 100, -22, 0)
	TNT1 A 0 A_CustomMissile("SeekerMines", 100, -26, 0)
	ROB4 J 2
	goto See
  SeekerSpam:
	ROB4 A 12 A_FaceTarget
    TNT1 A 0 A_CustomMissile("CyberLordHomer", 100, 24, 0)
    ROB4 J 5 Bright A_CustomMissile("CyberLordHomer", 100, -24, 0)
    ROB4 A 5 A_FaceTarget
    TNT1 A 0 A_CustomMissile("CyberLordHomer", 100, 24, 0)
    ROB4 J 5 Bright A_CustomMissile("CyberLordHomer", 100, -24, 0)
    ROB4 A 5 A_FaceTarget
    TNT1 A 0 A_CustomMissile("CyberLordHomer", 100, 24, 0)
    ROB4 J 5 Bright A_CustomMissile("CyberLordHomer", 100, -24, 0)
    ROB4 A 5 A_FaceTarget
    TNT1 A 0 A_CustomMissile("CyberLordHomer", 100, 24, 0)
    ROB4 J 5 Bright A_CustomMissile("CyberLordHomer", 100, -24, 0)
    ROB4 A 5 A_FaceTarget
    TNT1 A 0 A_CustomMissile("CyberLordHomer", 100, 24, 0)
    ROB4 J 5 Bright A_CustomMissile("CyberLordHomer", 100, -24, 0)
    ROB4 A 5 A_FaceTarget
    TNT1 A 0 A_CustomMissile("CyberLordHomer", 100, 24, 0)
    ROB4 J 5 Bright A_CustomMissile("CyberLordHomer", 100, -24, 0)
	ROB4 A 12
    Goto See
  AutomaticHexaSpamWindup:
	ROB4 G 12 A_FaceTarget
	Goto AutomaticHexaSpam
  AutomaticHexaSpam:
	ROB4 F 2 A_FaceTarget
	TNT1 A 0 A_PlaySound("weapons/hsgfire")
	TNT1 AAAAAAAAAAAA 0 A_CustomMissile("MonsterTracer2",Random(28,34),0,Random(6,-6),0)
    ROB4 F 2 Bright A_CustomBulletAttack(15.4,10.6,37,Random(1,4)*3) //basically bullshit
	NULL A 0 A_JumpIfInventory("MarineKilled",1,"See")
	Goto AutomaticHexaSpam+1
  Pain:
    ROB4 G 6
    ROB4 G 6 A_Pain
	TNT1 A 0 A_JumpIfInventory("FlightToken", 1, "Fly")
    Goto See
  Death:
	ROB4 A 0 A_TakeInventory("FlightToken", 1)
	ROB4 A 0 A_ChangeFlag ("FLOAT", 0)
	ROB4 A 0 A_ChangeFlag ("NOGRAVITY", 0)
	ROB4 A 0 A_StopSoundEx("SoundSlot6")
	ROB4 L 1 A_NoBlocking
	ROB4 LLLLLLLLLLLLLLLLLLLLLLL 5 Bright A_CustomMissile("InquisitorDeathExplosion",0+random(20,120),0,0+random(0,370),0)
	ROB4 L 1 A_Scream
	NULL AAAAAAAAAAAAAAAAAAAAAAA 0 A_CustomMissile("DarkInquisitorGibber",50,0,random(0,359))
	NULL A 0 A_CustomMissile("DarkInquisitorBigExplosion",0,0,0)
	TNT1 A 0 Radius_Quake(8,40,0,35,0)
	TNT1 A 0 A_BossDeath
	TNT1 A 1
    Stop
    }
}

ACTOR FlightToken : Inventory //Used to keep the Dark Inquisitor in the air even when in pain or attacking.
{
inventory.maxamount 1
}


ACTOR EMPGrenade
{
Speed 30
Damage 10
Radius 5
Height 5
Damagetype "Electric"
Scale 0.35
RenderStyle Add
PROJECTILE
+NODAMAGETHRUST
-NOGRAVITY
+QUARTERGRAVITY
+STRIFEDAMAGE
DeathSound "darkinquisitor/empdie"
States
{
Spawn:
	TEFX ABCDEFGHIJKLMNOPQRST 1 Bright A_SpawnItemEx("EMPTrail",0,0,0,1,0,random(-1,3),random(1,360))
	Loop
Death:
	TNT1 A 0 A_PlaySound("darkinquisitor/empdie")
	TNT1 A 0 A_SpawnItemEx("TeslaShotAltExplode1",0,0,0,0,0,0,0,32,0)
	Stop
}
}

ACTOR TeslaShotAltExplode1
{
+NOGRAVITY
+NOINTERACTION
+NODAMAGETHRUST
+FORCERADIUSDMG
+STRIFEDAMAGE
RenderStyle Add
Scale 0.40
Damagetype "Electric"
States
{
Spawn:
	TXP1 A 0
	TXP1 A 1 Bright
	TXP1 A 1 Bright A_Explode(15,48,1)
	TXP1 A 0 A_SpawnItemEx("TeslaShotAltExplode2",0,0,0,0,0,0,0,32,0)
	Stop
}
}

ACTOR TeslaShotAltExplode2 : TeslaShotAltExplode1
{
Scale 0.48
States
{
Spawn:
	TXP1 B 0
	TXP1 B 1 Bright
	TXP1 B 1 Bright A_Explode(15,56,1)
	TXP1 B 0 A_SpawnItemEx("TeslaShotAltExplode3",0,0,0,0,0,0,0,32,0)
	Stop
}
}

ACTOR TeslaShotAltExplode3 : TeslaShotAltExplode1
{
Scale 0.56
States
{
Spawn:
	TXP1 C 0
	TXP1 C 1 Bright
	TXP1 C 1 Bright A_Explode(15,64,1)
	TXP1 C 0 A_SpawnItemEx("TeslaShotAltExplode4",0,0,0,0,0,0,0,32,0)
	Stop
}
}

ACTOR TeslaShotAltExplode4 : TeslaShotAltExplode1
{
Scale 0.64
States
{
Spawn:
	TXP1 D 0
	TXP1 D 1 Bright
	TXP1 D 1 Bright A_Explode(15,72,1)
	TXP1 D 0 A_SpawnItemEx("TeslaShotAltExplode5",0,0,0,0,0,0,0,32,0)
	Stop
}
}

ACTOR TeslaShotAltExplode5 : TeslaShotAltExplode1
{
Scale 0.72
States
{
Spawn:
	TXP1 E 0
	TXP1 E 1 Bright
	TXP1 E 1 Bright A_Explode(15,80,1)
	TXP1 E 0 A_SpawnItemEx("TeslaShotAltExplode6",0,0,0,0,0,0,0,32,0)
	Stop
}
}

ACTOR TeslaShotAltExplode6 : TeslaShotAltExplode1
{
Scale 0.8
States
{
Spawn:
	TXP1 F 0
	TXP1 F 1 Bright
	TXP1 F 1 Bright A_Explode(15,88,1)
	TXP1 F 0 A_SpawnItemEx("TeslaShotAltExplode7",0,0,0,0,0,0,0,32,0)
	Stop
}
}

ACTOR TeslaShotAltExplode7 : TeslaShotAltExplode1
{
Scale 0.88
States
{
Spawn:
	TXP1 G 0
	TXP1 G 1 Bright
	TXP1 G 1 Bright A_Explode(15,96,1)
	TXP1 G 0 A_SpawnItemEx("TeslaShotAltExplode8",0,0,0,0,0,0,0,32,0)
	Stop
}
}

ACTOR TeslaShotAltExplode8 : TeslaShotAltExplode1
{
Scale 0.96
States
{
Spawn:
	TXP1 H 0
	TXP1 H 1 Bright
	TXP1 H 1 Bright A_Explode(15,104,1)
	TXP1 H 0 A_SpawnItemEx("TeslaShotAltExplode9",0,0,0,0,0,0,0,32,0)
	Stop
}
}

ACTOR TeslaShotAltExplode9 : TeslaShotAltExplode1
{
Alpha 0.96
Scale 1.04
States
{
Spawn:
	TXP1 I 0
	TXP1 I 1 Bright
	TXP1 I 1 Bright A_Explode(15,112,1)
	TXP1 I 0 A_SpawnItemEx("TeslaShotAltExplode10",0,0,0,0,0,0,0,32,0)
	Stop
}
}

ACTOR TeslaShotAltExplode10 : TeslaShotAltExplode1
{
Alpha 0.84
Scale 1.12
States
{
Spawn:
	TXP1 J 0
	TXP1 J 1 Bright
	TXP1 J 1 Bright A_Explode(15,120,1)
	TXP1 J 0 A_SpawnItemEx("TeslaShotAltExplode11",0,0,0,0,0,0,0,32,0)
	Stop
}
}

ACTOR TeslaShotAltExplode11 : TeslaShotAltExplode1
{
Alpha 0.72
Scale 1.2
States
{
Spawn:
	TXP1 K 0
	TXP1 K 1 Bright
	TXP1 K 1 Bright A_Explode(15,128,1)
	TXP1 K 0 A_SpawnItemEx("TeslaShotAltExplode12",0,0,0,0,0,0,0,32,0)
	Stop
}
}

ACTOR TeslaShotAltExplode12 : TeslaShotAltExplode1
{
Alpha 0.6
Scale 1.28
States
{
Spawn:
	TXP1 L 0
	TXP1 L 1 Bright
	TXP1 L 1 Bright A_Explode(15,136,1)
	TXP1 L 0 A_SpawnItemEx("TeslaShotAltExplode13",0,0,0,0,0,0,0,32,0)
	Stop
}
}

ACTOR TeslaShotAltExplode13 : TeslaShotAltExplode1
{
Alpha 0.48
Scale 1.36
States
{
Spawn:
	TXP1 M 0
	TXP1 M 1 Bright
	TXP1 M 1 Bright A_Explode(15,144,1)
	TXP1 M 0 A_SpawnItemEx("TeslaShotAltExplode14",0,0,0,0,0,0,0,32,0)
	Stop
}
}

ACTOR TeslaShotAltExplode14 : TeslaShotAltExplode1
{
Alpha 0.36
Scale 1.44
States
{
Spawn:
	TXP1 N 0
	TXP1 N 1 Bright
	TXP1 N 1 Bright A_Explode(15,152,1)
	TXP1 N 0 A_SpawnItemEx("TeslaShotAltExplode15",0,0,0,0,0,0,0,32,0)
	Stop
}
}

ACTOR TeslaShotAltExplode15 : TeslaShotAltExplode1
{
Alpha 0.24
Scale 1.52
States
{
Spawn:
	TXP1 O 0
	TXP1 O 1 Bright
	TXP1 O 1 Bright A_Explode(15,160,1)
	TXP1 O 0 A_SpawnItemEx("TeslaShotAltExplode16",0,0,0,0,0,0,0,32,0)
	Stop
}
}

ACTOR TeslaShotAltExplode16 : TeslaShotAltExplode1
{
Alpha 0.12
Scale 1.6
States
{
Spawn:
	TXP1 P 0
	TXP1 P 1 Bright
	TXP1 P 1 Bright A_Explode(15,168,1)
	Stop
}
}

actor DarkInquisitorGibber
{
  radius 20
  height 20
  +NOINTERACTION
    states
  {
  Spawn:
        NULL A 0 A_Gravity
        NULL A 0
        NULL A 0 A_PlaySound("darkinquisitor/gibbage")
        NULL A 1 A_SpawnItemEx ("Shrapnel1", 0, 0, random(0,42), random(2,6), random(2,6), 0, random(0,360), 160)
        NULL A 1 A_SpawnItemEx ("Shrapnel2", 0, 0, random(0,42), random(2,6), random(2,6), 0, random(0,360), 160)
        NULL A 1 A_SpawnItemEx ("Shrapnel3", 0, 0, random(0,42), random(2,6), random(2,6), 0, random(0,360), 160)
	    NULL A 1 A_SpawnItemEx ("Shrapnel3", 0, 0, random(0,42), random(2,6), random(2,6), 0, random(0,360), 160)
        NULL A 1 A_SpawnItemEx ("Shrapnel2", 0, 0, random(0,42), random(2,6), random(2,6), 0, random(0,360), 160)
        NULL A 1 A_SpawnItemEx ("Shrapnel1", 0, 0, random(0,42), random(2,6), random(2,6), 0, random(0,360), 160)
		stop
    }
}

actor Shrapnel1
{
    +DOOMBOUNCE
    PROJECTILE
    -NOGRAVITY
    +NOBLOCKMAP
    +CANNOTPUSH
    -NOTELEPORT
    -SOLID
	+GRENADETRAIL
    Radius 2
    Damage 5
    mass 5
    bouncefactor 0.5
    SeeSound "darkinquisitor/shrapnel"
    Speed 25
    States
    {
    Spawn:
        SHRP L 0
        SHRP L 0 A_Jump(64,"Alt") 
        SHRP L 0 ThrustThingZ (0, (Random (20, 100)), 0, 1)
        goto See
    Alt:
    	SHRP M 0 ThrustThingZ (0, (Random (40, 130)), 0, 1)
    	Stop 
    See:
        SHRP L 5
        SHRP L 5 ThrustThingZ(0,(Random (6, 20)),1,1)
        SHRP L 5 
        SHRP L 5
        loop
    Death:
        SHRP L 0
        SHRP L 0
        SHRP L 0
        SHRP L 70
        Stop
    }
}

actor Shrapnel2
{
    +DOOMBOUNCE
    PROJECTILE
    -NOGRAVITY
    +NOBLOCKMAP
    +CANNOTPUSH
    -NOTELEPORT
    -SOLID
	+GRENADETRAIL
    Radius 2
    Damage 5
    mass 5
    bouncefactor 0.4
    SeeSound "darkinquisitor/shrapnel"
    Speed 20
    States
    {
    Spawn:
        SHRP M 0
        SHRP M 0 A_Jump(64,"Alt") 
        SHRP M 0 ThrustThingZ (0, (Random (20, 100)), 0, 1)
        goto See
    Alt:
    	SHRP N 0 ThrustThingZ (0, (Random (40, 130)), 0, 1)
    	Stop 
    See:
        SHRP M 5
        SHRP M 5 ThrustThingZ(0,(Random (6, 20)),1,1)
        SHRP M 5 
        SHRP M 5
        loop
    Death:
        SHRP M 0
        SHRP M 0
        SHRP M 0
        SHRP M 70
        Stop
    }
}

actor Shrapnel3
{
    +DOOMBOUNCE
    PROJECTILE
    -NOGRAVITY
    +NOBLOCKMAP
    +CANNOTPUSH
    -NOTELEPORT
    -SOLID
	+GRENADETRAIL
    Radius 2
    Damage 5
    mass 5
    bouncefactor 0.6
    SeeSound "darkinquisitor/shrapnel"
    Speed 23
    States
    {
    Spawn:
        SHRP N 0
        SHRP N 0 A_Jump(64,"Alt") 
        SHRP N 0 ThrustThingZ (0, (Random (20, 100)), 0, 1)
        goto See
    Alt:
    	SHRP L 0 ThrustThingZ (0, (Random (40, 130)), 0, 1)
    	Stop 
    See:
        SHRP N 5
        SHRP N 5 ThrustThingZ(0,(Random (6, 20)),1,1)
        SHRP N 5 
        SHRP N 5
        loop
    Death:
        SHRP N 0
        SHRP N 0
        SHRP N 0
        SHRP N 70
        Stop
    }
}

actor InquisitorDeathExplosion
{
radius 10
height 12
damage 0
speed 0
renderstyle Add
Alpha 0.90
seesound "darkinquisitor/deathexplosion"
PROJECTILE
+NOCLIP
+DONTSPLASH
+FORCERADIUSDMG
+SPAWNSOUNDSOURCE
states
{
Spawn:
TNT1 A 0 A_SpawnItemEx ("Shrapnel1", 0, 0, random(0,42), random(2,6), random(2,6), 0, random(0,360), 160)
TNT1 A 0 A_SpawnItemEx ("Shrapnel2", 0, 0, random(0,42), random(2,6), random(2,6), 0, random(0,360), 160)
TNT1 A 0 A_SpawnItemEx ("Shrapnel3", 0, 0, random(0,42), random(2,6), random(2,6), 0, random(0,360), 160)
TNT1 A 0 Radius_Quake(10,10,0,20,0)
R045 MNOPQ 3 bright A_Explode (128,128,0)
stop
}
}

// 276 256

ACTOR DarkInquisitorBigExplosion
{   
   Radius 2
   Height 2
   Damage 0
   +NOCLIP
   Speed 0
   PROJECTILE
   RENDERSTYLE ADD
   ALPHA 0.75
   Scale 2.0
   SeeSound "darkinquisitor/bigdeathexpl"
   Obituary "Man this really blows - Bombie65/HalcyonicFalcon"
   States
   {
   Spawn:
   TNT1 A 0 A_SpawnItemEx("ShadowVaporSpawner",0,0,0,0,0,0,0,32)
   TNT1 A 0 Radius_Quake(25,15,0,20,0)
      GRNE A 3 Bright A_Explode (1280,624,0)
      GRNE B 3 Bright
      GRNE CDEFGHIJKLMN 3 Bright
      stop
   }
}

Actor EMPTrail
{
  Height 0
  Radius 0
  Mass 0
  +Missile
  +NoBlockMap
  +NoGravity
  +DontSplash
  RenderStyle Add
  Scale 0.50
  States
  {
  Spawn:
    ZAPR ABCDEF 2 Bright A_FadeOut(0.07)
    Loop
  }
}

ACTOR DarkMatterBall
{
    Radius 11
    Height 8
    Speed 32
    Damage 35
    Scale 0.5
    Projectile
    +RANDOMIZE
    +EXTREMEDEATH
    +FORCERADIUSDMG
    +DONTREFLECT
    +STRIFEDAMAGE
    RenderStyle Translucent
    Alpha 0.625
    DamageType "Dark Matter"
    DeathSound "darkinquisitor/darkmatterdie"
    States
    {
    Spawn:
	DMGB AA 0 A_SpawnItemEx("DarkMatterSpark",0,0,0,random(-1,1),random(-1,1),random(-1,1),0,32,0)
	DMGB A 1 Bright A_SpawnItemEx("DarkMatterSpark",0,0,0,random(-1,1),random(-1,1),random(-1,1),0,32,0)
	DMGB AA 0 A_SpawnItemEx("DarkMatterSpark",0,0,0,random(-1,1),random(-1,1),random(-1,1),0,32,0)
	DMGB A 1 Bright A_SpawnItemEx("DarkMatterSpark",0,0,0,random(-1,1),random(-1,1),random(-1,1),0,32,0)
	DMGB AA 0 A_SpawnItemEx("DarkMatterSpark",0,0,0,random(-1,1),random(-1,1),random(-1,1),0,32,0)
	DMGB A 1 Bright A_SpawnItemEx("DarkMatterSpark",0,0,0,random(-1,1),random(-1,1),random(-1,1),0,32,0)
	DMGB BB 0 A_SpawnItemEx("DarkMatterSpark",0,0,0,random(-1,1),random(-1,1),random(-1,1),0,32,0)
	DMGB B 1 Bright A_SpawnItemEx("DarkMatterSpark",0,0,0,random(-1,1),random(-1,1),random(-1,1),0,32,0)
	DMGB BB 0 A_SpawnItemEx("DarkMatterSpark",0,0,0,random(-1,1),random(-1,1),random(-1,1),0,32,0)
	DMGB B 1 Bright A_SpawnItemEx("DarkMatterSpark",0,0,0,random(-1,1),random(-1,1),random(-1,1),0,32,0)
	DMGB BB 0 A_SpawnItemEx("DarkMatterSpark",0,0,0,random(-1,1),random(-1,1),random(-1,1),0,32,0)
	DMGB B 1 Bright A_SpawnItemEx("DarkMatterSpark",0,0,0,random(-1,1),random(-1,1),random(-1,1),0,32,0)
	DMGB CC 0 A_SpawnItemEx("DarkMatterSpark",0,0,0,random(-1,1),random(-1,1),random(-1,1),0,32,0)
	DMGB C 1 Bright A_SpawnItemEx("DarkMatterSpark",0,0,0,random(-1,1),random(-1,1),random(-1,1),0,32,0)
	DMGB CC 0 A_SpawnItemEx("DarkMatterSpark",0,0,0,random(-1,1),random(-1,1),random(-1,1),0,32,0)
	DMGB C 1 Bright A_SpawnItemEx("DarkMatterSpark",0,0,0,random(-1,1),random(-1,1),random(-1,1),0,32,0)
	DMGB CC 0 A_SpawnItemEx("DarkMatterSpark",0,0,0,random(-1,1),random(-1,1),random(-1,1),0,32,0)
	DMGB C 1 Bright A_SpawnItemEx("DarkMatterSpark",0,0,0,random(-1,1),random(-1,1),random(-1,1),0,32,0)
	GoTo Spawn+1
    Death:
	TNT1 A 0 A_SpawnItemEx("ShadowVaporSpawner",0,0,0,0,0,0,0,32)
	TNT1 A 0 A_Explode(150,275,0)
	TNT1 A 0 A_SpawnItemEx("PLCometDeath",0,0,0,0,0,0,0,128,0)
	TNT1 A 15 Radius_Quake(5,15,0,20,0)
	Stop
	}
}

ACTOR ShadowVaporSpawner
{
+NOINTERACTION
RenderStyle none
States
{
Spawn:
	NULL A 0
	NULL AAAAAAAAAAAAAAAAAAAAAAAAA 0 A_SpawnItemEx("ShadowVapor",0,0,0,random(4,-4),random(4,-4),random(4,-4),random(0,359),32)
	PLAY A 2
	PLAY BCDEF 4
	Stop
}
}

// 1, 10

ACTOR ShadowVapor
{
PROJECTILE
+RIPPER
+RANDOMIZE
Damagetype "Dark Matter"
Damage (random(4,20))
Speed 0
Radius 2
Height 2
renderstyle Translucent
Scale 0.65
Alpha 0.4
+DOOMBOUNCE
States
{
Spawn:
	VPXS MNOPQRSTUVWXYZ 1 Bright A_FadeOut(0.01)
	VPXZ ABC 1 A_FadeOut(0.01)
	Stop
}
}

ACTOR SeekerMines
{
  Radius 6
  Height 8
  Speed 20
  SEESOUND "catharsi/shotsit"
  DEATHSOUND "catharsi/shotdth"
  PROJECTILE
  Scale 0.75
  +Randomize
  +NoGravity
  +SEEKERMISSILE
  +NoBlood
  +ForceXYBillboard
  states
  {
  Spawn:
    TNT1 B 0 A_SeekerMissile(45,45,SMF_LOOK)
	DIQD A 3 A_PlaySound("catharsi/thermtick")
	DIQD BCDAB 3
	TNT1 B 0 A_SeekerMissile(45,45,SMF_LOOK)
	DIQD C 2
	TNT1 B 0 A_SeekerMissile(45,45,SMF_LOOK)
	DIQD C 1 A_PlaySound("catharsi/thermtick")
	DIQD DABCDA 3
	TNT1 B 0 A_SeekerMissile(45,45,SMF_LOOK)
	DIQD B 1 A_PlaySound("catharsi/thermtick")
	DIQD B 2
	TNT1 B 0 A_SeekerMissile(45,45,SMF_LOOK)
	DIQD CDABC 3 
	TNT1 B 0 A_SeekerMissile(45,45,SMF_LOOK)
	DIQD D 1 A_PlaySound("catharsi/thermtick")
	DIQD D 2
	TNT1 B 0 A_SeekerMissile(45,45,SMF_LOOK)
	DIQD ABCDA 3
	TNT1 B 0 A_SeekerMissile(45,45,SMF_LOOK)
	DIQD B 1 A_PlaySound("catharsi/thermtick")
	DIQD B 2
	TNT1 B 0 A_SeekerMissile(45,45,SMF_LOOK)
	DIQD CDABC 3
	TNT1 B 0 A_SeekerMissile(45,45,SMF_LOOK)
	DIQD D 1
	Loop
  Death:
	TNT1 A 0 A_SpawnItemEx("OrangeParticleSpawner", 0, 0, 0, 0, 0, 0, 0, 128) 
    TNT1 AAA 0 A_CustomMissile("Kaboom3", 0, 0, random(0,360), 2, random(0,360))
	TNT1 AAA 0 A_CustomMissile("SmokeFX2", 0, 0, random(0,360), 2, random(0,360))
	TNT1 AAAA 0 A_SpawnItemEx("Debris",0,0,0,Random(4,-4),Random(4,-4),Random(4,8),0,128)
	TNT1 A 0 A_PlayWeaponSound("weapons/rocklx")
	TNT1 A 0 A_Explode(128,128,0)
	TNT1 A 0 A_ScreamAndUnblock
	TNT1 A 0 A_Die
	DIQD EFGHIJ 3 BRIGHT 
	TNT1 A 0
	Stop
  }
}