actor SSTSpiderMastermind : SpiderMastermind replaces SpiderMastermind
{
damagefactor "RedPaint", 0.3
damagefactor "OrangePaint", 0.3
damagefactor "YellowPaint", 0.3
damagefactor "GreenPaint", 0.3
damagefactor "BluePaint", 0.3
damagefactor "PurplePaint", 0.3
damagefactor "WhitePaint", 0.3
damagefactor "BlackPaint", 0.3
  PainChance "ShotgunWeak", 3

maxtargetrange 2400
  //dropitem "SSTBFG10K" 32 //formerly 8, then 16
  dropitem "SSTMinigun"
  spawnid 7
  obituary "%o was shredded by a Spider Mastermind's minigun."
  health 3000
  radius 120 //128
  height 100
  mass 1000
  speed 12
  painchance 12
  seesound "spider/sight"
  attacksound "misc/none"
  painsound "spider/pain"
  deathsound "spider/death" 
  activesound "spider/active"
  maxtargetrange 2200
  MONSTER
  +BOSS
  +FLOORCLIP
  +NORADIUSDMG
  +DONTMORPH
  +MISSILEMORE
  states
  {
  Spawn:
    TNT1 A 0
    TNT1 A 0 A_StopSoundEx("soundslot7")
    SPID AB 10 A_Look
    loop
  See:
    TNT1 A 0 A_StopSoundEx("soundslot7")
    SPID A 2 A_Metal
    SPID ABB 2 A_Chase
    SPID C 2 A_Metal
    SPID CDD 2 A_Chase
    SPID E 2 A_Metal
    SPID EFF 2 A_Chase
    loop
  Missile:
    TNT1 A 0 A_StopSoundEx("soundslot7")
    SPID A 10 A_FaceTarget
    TNT1 A 0 A_PlaySoundEx("weapons/minigunspin1", "soundslot7")
    SPID A 30 A_FaceTarget
    TNT1 A 0 A_PlaySoundEx("weapons/minigunspin3", "soundslot7",1)
    SPID A 20 A_FaceTarget
  Missile2:
	
    TNT1 A 0 A_PlaySoundEx("weapons/minigun", "Weapon")
    NULL A 0 A_SpawnItemEx ("MinigunEcho", 0,0,0, 0,0,0, 0, 160)
    SPID G 2 bright A_CustomMissile ("TracerChain2", 55, random(-2,2), random(-4,4), CMF_OFFSETPITCH, random(-4,4))
    SPID G 0 bright A_CustomMissile ("BulletCasingSpawner", 55, 0, 0, 0, 0)

    TNT1 A 0 A_PlaySoundEx("weapons/minigun", "Weapon")
    NULL A 0 A_SpawnItemEx ("MinigunEcho", 0,0,0, 0,0,0, 0, 160)
    SPID H 2 bright A_CustomMissile ("TracerChain2", 55, random(-2,2), random(-4,4), CMF_OFFSETPITCH, random(-4,4))
    SPID G 0 bright A_CustomMissile ("BulletCasingSpawner", 55, 0, 0, 0, 0)
	
    SPID H 0 A_MonsterRefire(10,"MissileEnd")
	Loop
  MissileEnd:
    TNT1 A 0 A_StopSoundEx("soundslot7")
    TNT1 A 0 A_PlaySoundEx("weapons/minigunspin2", "soundslot7")
    SPID A 40 A_FaceTarget
	Goto See
	
	/*
    SPID GH 0 bright A_CustomMissile ("ArachnotronPlasma", 55, 0, random(-50,50), random(-50,50))
    SPID GH 0 bright A_CustomMissile ("ArachnotronPlasma", 55, 0, random(-50,50), random(-50,50))
    SPID GH 0 bright A_CustomMissile ("ArachnotronPlasma", 55, 0, random(-50,50), random(-50,50))
    SPID GH 0 bright A_CustomMissile ("ArachnotronPlasma", 55, 0, random(-50,50), random(-50,50))
    SPID GH 0 bright A_CustomMissile ("ArachnotronPlasma", 55, 0, random(-50,50), random(-50,50))
    SPID GH 0 bright A_CustomMissile ("ArachnotronPlasma", 55, 0, random(-50,50), random(-50,50))
    SPID GH 0 bright A_CustomMissile ("ArachnotronPlasma", 55, 0, random(-50,50), random(-50,50))
    SPID GH 0 bright A_CustomMissile ("ArachnotronPlasma", 55, 0, random(-50,50), random(-50,50))
    SPID GH 0 bright A_CustomMissile ("ArachnotronPlasma", 55, 0, random(-50,50), random(-50,50))
    SPID GH 0 bright A_CustomMissile ("ArachnotronPlasma", 55, 0, random(-50,50), random(-50,50))
	*/
  Pain:
    TNT1 A 0 A_StopSoundEx("soundslot7")
    SPID I 3
    SPID I 3 A_Pain
    goto See
  Death:
    TNT1 A 0 A_StopSoundEx("soundslot7")
    SPID J 2 A_Scream
    SPID JJJJJJJJJJJJJJJJ 1 A_SpawnItemEx ("UnderwaterSteam", random(-60,60),random(-60,60),random(16,80), random(-8,8),random(-8,8),random(1,4), 0, 160, 64) 
    SPID K 8 A_NoBlocking
    SPID LMNO 8 A_custommissile("BarrelSlag",random(0,16),random(-8,8),random(-360,360),2,random(10,70))
    NULL A 0 A_SpawnItemEx ("BloodcloudSpawner", 0, 0, 24, 0, 0, 0, 0, 160)
    SPID P 0 A_custommissile("BarrelSlag",random(0,16),random(-8,8),random(-360,360),2,random(10,70))
	SPID P 8 A_custommissile("BarrelSlag",random(0,16),random(-8,8),random(-360,360),2,random(10,70))
	SPID Q 0 A_custommissile("BarrelSlag",random(0,16),random(-8,8),random(-360,360),2,random(10,70))
	SPID Q 8 A_custommissile("BarrelSlag",random(0,16),random(-8,8),random(-360,360),2,random(10,70))
	SPID R 0 A_custommissile("BarrelSlag",random(0,16),random(-8,8),random(-360,360),2,random(10,70))
	SPID R 8 A_custommissile("BarrelSlag",random(0,16),random(-8,8),random(-360,360),2,random(10,70))
    SPID S 20
    SPID S -1 A_BossDeath
    stop

    Crush:
	TNT1 A 0 A_SpawnItemEx ("Gibs", 0,0,0, 0,0,0, 0, SXF_NOCHECKPOSITION|SXF_USEBLOODCOLOR|SXF_CLIENTSIDE)
	TNT1 AAAAAAAA 0 A_SpawnItemEx ("SuperDuperClientsideBloodSpotSpawner", 0,0,0, 0,0,0, 0, SXF_NOCHECKPOSITION|SXF_USEBLOODCOLOR|SXF_CLIENTSIDE)
    TNT1 AAAAAAAA 1 A_SpawnItemEx ("Bloodsquirt3", 0,0,0, 0,0,0, random(-180,180), SXF_USEBLOODCOLOR|SXF_CLIENTSIDE|SXF_NOCHECKPOSITION)
    TNT1 A -1
    Stop
  Pain.GreenPaint:
    TNT1 A 0 ACS_ExecuteAlways(926,0, 0,0,0)
	Goto See
  Pain.BluePaint:
    TNT1 A 0 ACS_ExecuteAlways(926,0, 1,0,0)
	Goto See
  Pain.RedPaint:
    TNT1 A 0 ACS_ExecuteAlways(926,0, 2,0,0)
	Goto See
  Pain.OrangePaint:
    TNT1 A 0 ACS_ExecuteAlways(926,0, 3,0,0)
	Goto See
  Pain.PurplePaint:
    TNT1 A 0 ACS_ExecuteAlways(926,0, 4,0,0)
	Goto See
  Pain.WhitePaint:
    TNT1 A 0 ACS_ExecuteAlways(926,0, 5,0,0)
	Goto See
  Pain.YellowPaint:
    TNT1 A 0 ACS_ExecuteAlways(926,0, 6,0,0)
	Goto See
  Pain.BlackPaint:
    TNT1 A 0 ACS_ExecuteAlways(926,0, 7,0,0)
	Goto See
  }
}
