/////////////////////////////////////////////
//        HOGALE (SPIDERMASTERMIND)        //
/////////////////////////////////////////////

Actor HogaleMonster 30616
{
//$Category MM8BDM-Monsters (Doom)
//$Title Hogale (SpiderMastermind)
//$Sprite D025B8B2
Tag "Hogale"
Translation "4:4=4:4", "192:192=212:212", "198:198=204:204", "212:212=212:212", "204:204=204:204"
MONSTER
Species "HogaleMonster"
BloodType "MonsterRipperProtect_Helper"
//+NOBLOOD
+FLOORCLIP
-NOINFIGHTING
+DONTHARMSPECIES
+BOSS
+MISSILEMORE
+DONTMORPH
//+NORADIUSDMG // Makes monster immune to Time Stopper
Health 3000
Radius 128
Height 100
Speed 1 // 12
PainChance 40
PainChance "WindStorm", 40
PainChance "GravityHold", 40
PainChance "ConcreteShot", 40
PainChance "TornadoBlow", 40
PainChance "BlackHoleBomb", 40
PainChance "TimeStopper", 256
MinMissileChance 160
DamageFactor "Dummy", 0.0
SeeSound "misc/mmpuwarning"
PainSound "monster/mm4pain"
DeathSound "monster/death"
ActiveSound "misc/repairing"
Obituary "$OB_SPIDER"
Mass 9999
Scale 3
States
{
Spawn:
HOGM A 0 NoDelay A_Stop
HOGM A 0 A_TakeInventory("CutterFlag",1)
HOGM A 0 ACS_NamedExecuteAlways("Monster_PassivePain",0)
HOGM A 0 A_SpawnItemEx("MonsterHitbox128_100")
HOGM A 5 A_Look
HOGM B 5
HOGM C 5 A_Look
HOGM B 5
Goto Spawn+4

FirstSee:
HOGM A 0 A_TakeInventory("CutterFlag",1)
HOGM A 0 ACS_NamedExecuteAlways("Monster_PassivePain",0)
HOGM A 0 Thing_SetTranslation(0,30501) //ALLRED
HOGM A 2 Bright
HOGM A 0 Thing_SetTranslation(0,30616) //HOGALEMONSTER
HOGM A 0 A_GiveInventory("CutterFlag",1)
Goto See

See:
HOGM A 0 A_JumpIfInventory("CutterFlag",1,1)
Goto FirstSee
HOGM A 0 A_PlaySoundEx("monster/hogalefly","Body")
HOGM A 1 A_Chase
HOGM AAA 1 A_ChangeVelocity(4.125,0,momz,3)
HOGM A 1 A_Chase
HOGM BBB 1 A_ChangeVelocity(4.125,0,momz,3)
HOGM B 1 A_Chase
HOGM BCC 1 A_ChangeVelocity(4.125,0,momz,3)
HOGM C 1 A_Chase
HOGM CCB 1 A_ChangeVelocity(4.125,0,momz,3)
HOGM B 1 A_Chase
HOGM BBB 1 A_ChangeVelocity(4.125,0,momz,3)
Loop

Missile:
HOGM A 0 A_Stop
HOGM A 0 A_PlaySoundEx("misc/fakereloadshort","Weapon")
HOGM A 5 A_FaceTarget
HOGM BCB 5 
HOGM A 0 A_PlaySoundEx("monster/hogaleshot","Weapon")
HOGM AAA 0 A_CustomMissile("HogaleMonsterShot",111,-60,frandom(-5,5),0,0)
HOGM A 0 Thing_SetTranslation(0,30504) //MISSILEFLASH
HOGM A 2 Bright
HOGM A 0 Thing_SetTranslation(0,30616) //HOGALEMONSTER
HOGM A 2
HOGM BBB 0 A_CustomMissile("HogaleMonsterShot",111,60,frandom(-5,5),0,0)
HOGM B 0 Thing_SetTranslation(0,30504) //MISSILEFLASH
HOGM B 2 Bright
HOGM B 0 Thing_SetTranslation(0,30616) //HOGALEMONSTER
HOGM B 2
HOGM B 1 A_SpidRefire
Goto Missile+6

Pain:
HOGM D 0 A_Stop
Pain.WindStorm:
Pain.GravityHold:
Pain.ConcreteShot:
Pain.TornadoBlow:
Pain.BlackHoleBomb:
HOGM D 0 Thing_SetTranslation(0,30616) //HOGALEMONSTER
HOGM D 6 A_Pain
Goto See

Pain.TimeStopper:
HOGM D 0 A_Stop
HOGM D 0 Thing_SetTranslation(0,30616) //HOGALEMONSTER
HOGM D 0 A_ChangeFlag("NOPAIN",true)
HOGM "########################################################################################" 1 A_SpawnItemEx("TimeStopGFX",random(8,240),0,random(0,160),0,0,0,random(0,359),0,80)
HOGM D 0 A_ChangeFlag("NOPAIN",false)
Goto See

Death:
XDeath:
HOGM D 0 A_Stop
HOGM D 0 A_FaceTarget
HOGM D 0 A_NoBlocking
HOGM D 0 Thing_SetTranslation(0,30616) //HOGALEMONSTER
HOGM D 0 A_PlaySound("misc/gamma2pain",CHAN_BODY,1.0,0,0.0)
HOGM D 2 Bright
HOGM D 0 Thing_SetTranslation(0,30503) //ALLWHITE
HOGM D 2 Bright
HOGM D 0 Thing_SetTranslation(0,30616) //HOGALEMONSTER
HOGM D 2 Bright
HOGM D 0 Thing_SetTranslation(0,30503) //ALLWHITE
HOGM D 2 Bright
HOGM D 0 Thing_SetTranslation(0,30616) //HOGALEMONSTER
HOGM D 2 Bright
HOGM D 0 Thing_SetTranslation(0,30503) //ALLWHITE
HOGM D 2 Bright
HOGM D 0 Thing_SetTranslation(0,30616) //HOGALEMONSTER
HOGM D 2 Bright
HOGM D 0 A_PlaySound("weapon/drillexplode",CHAN_AUTO,1.0,0,0.0)
HOGM D 0 A_SpawnItemEx("ExplosionEffect2",random(-100,100),random(-100,100),random(8,128))
HOGM DZ 3 A_SetTranslucent(0.9)
HOGM D 0 A_PlaySound("weapon/drillexplode",CHAN_AUTO,1.0,0,0.0)
HOGM D 0 A_SpawnItemEx("ExplosionEffect2",random(-100,100),random(-100,100),random(8,128))
HOGM DZ 3 A_SetTranslucent(0.8)
HOGM D 0 A_PlaySound("weapon/drillexplode",CHAN_AUTO,1.0,0,0.0)
HOGM D 0 A_SpawnItemEx("ExplosionEffect2",random(-100,100),random(-100,100),random(8,128))
HOGM DZ 3 A_SetTranslucent(0.7)
HOGM D 0 A_PlaySound("weapon/drillexplode",CHAN_AUTO,1.0,0,0.0)
HOGM D 0 A_SpawnItemEx("ExplosionEffect2",random(-100,100),random(-100,100),random(8,128))
HOGM DZ 3 A_SetTranslucent(0.6)
HOGM D 0 A_PlaySound("weapon/drillexplode",CHAN_AUTO,1.0,0,0.0)
HOGM D 0 A_SpawnItemEx("ExplosionEffect2",random(-100,100),random(-100,100),random(8,128))
HOGM DZ 3 A_SetTranslucent(0.5)
HOGM D 0 A_PlaySound("weapon/drillexplode",CHAN_AUTO,1.0,0,0.0)
HOGM D 0 A_SpawnItemEx("ExplosionEffect2",random(-100,100),random(-100,100),random(8,128))
HOGM DZ 3 A_SetTranslucent(0.4)
HOGM D 0 A_PlaySound("weapon/drillexplode",CHAN_AUTO,1.0,0,0.0)
HOGM D 0 A_SpawnItemEx("ExplosionEffect2",random(-100,100),random(-100,100),random(8,128))
HOGM DZ 3 A_SetTranslucent(0.3)
HOGM D 0 A_PlaySound("weapon/drillexplode",CHAN_AUTO,1.0,0,0.0)
HOGM D 0 A_SpawnItemEx("ExplosionEffect2",random(-100,100),random(-100,100),random(8,128))
HOGM DZ 3 A_SetTranslucent(0.2)
HOGM D 0 A_PlaySound("misc/devildeath",CHAN_AUTO,1.0,0,0.0)
HOGM D 0 A_SpawnItemEx("FakeDeathFX",0,0,80,0,0,0,0,1)
HOGM DZ 3 A_SetTranslucent(0.0)
TNT1 H 0 A_JumpIf(CallACS("Monster_CanDropWeapon"),4)
TNT1 H 0 A_Jump(256,2)
TNT1 H 0 A_JumpIf(True,2)
TNT1 H 0 ACS_NamedExecuteWithResult("Monster_WeaponDrop",3) //Twin Blaster
TNT1 A 62
TNT1 A -1 A_BossDeath
Stop
}
}

Actor HogaleMonsterShot : FastProjectile
{
Translation "0:40=4:4", "41:41=212:212", "42:255=4:4"
+BRIGHT
PROJECTILE
Radius 5
Height 5
Speed 85
FastSpeed 95
Damage (4)
DamageType "Buster"
Scale 2.5
States
{
Spawn:
HARD CD 1 NoDelay
YBIT G 1
wait
}
}

Actor HogaleMonster_Replaced : HogaleMonster replaces SpiderMastermind {}