//===========================================================================
//
// Pyro Succubus 
//
//===========================================================================


actor PyroSuccubus 9480
{
  //$Category Monsters
  //$Title "Pyro Succubus"
  spawnid 165
  Obituary "A pyrosuccubus was too hot for %o."
  health 200
  radius 16
  height 50
  mass 200
  speed 12
  Scale 0.95
  MissileType FireBall1
    DamageFactor ice,2
  DamageFactor Fire,0
  painchance 95
    seesound "pyr/sight"
    painsound "pyr/pain"
    deathsound "pyr/death"
    activesound "pyr/active"
	RENDERSTYLE TRANSLUCENT
  MONSTER
  +NOTARGET
  +FLOORCLIP
  +DONTHURTSPECIES
  Species "Succubus"
   States 
   { 
   Spawn: 
      SUC1 AB 10 Bright A_Look
      Loop 
   See:
       TNT1 A 0 A_ChangeFlag("FLOAT",0)
       TNT1 A 0 A_ChangeFlag("NOGRAVITY",0)
       TNT1 A 0 A_ChangeFlag("DROPOFF",0)
       SUC1 AA 3 Bright A_Chase
       SUC1 A 0 Bright A_SpawnItemEx("WalkFire1",0,0,0,1,0,0,0,128)
       SUC1 BB 3 Bright A_Chase
       SUC1 B 0 Bright A_SpawnItemEx("WalkFire1",0,0,0,1,0,0,0,128)
       SUC1 CC 3 Bright A_Chase
       SUC1 C 0 Bright A_SpawnItemEx("WalkFire1",0,0,0,1,0,0,0,128)
       SUC1 DD 3 Bright A_Chase
       SUC1 D 0 Bright A_SpawnItemEx("WalkFire1",0,0,0,1,0,0,0,128)
       SUC1 A 0 A_Jump(32,"Grav")
       Loop
    Grav:
	   TNT1 A 0 A_JumpIf( Z + height + 100 >= CeilingZ, "See")
       TNT1 A 0 A_ChangeFlag("NOGRAVITY",1)
       TNT1 A 0 A_ChangeFlag("DROPOFF",1)
       TNT1 A 0 A_ChangeFlag("FLOAT",1)
       Goto Fly
    Fly:
       SUFY AA 4 BRIGHT ThrustThingZ(0,15,0,0)
       SUFY AABBCCDD 2 BRIGHT
       Goto Hover
    Land:
       SUFY AA 4 BRIGHT ThrustThingZ(0,-20,0,0)
       SUFY A 1 BRIGHT A_CheckFloor("See")
       SUFY AABBCCDD 2 BRIGHT
       SUFY A 1 BRIGHT A_CheckFloor("See")
       Goto Hover
    Hover:
       SUFY AABBCCDD 2 BRIGHT A_Chase (0, "MissileF")
       SUFY A 0 BRIGHT A_Jump(64,"Fly")
       SUFY A 0 BRIGHT A_Jump(32,"Land")
       Loop
	Missile:
		TNT1 A 0 A_Jump(85, "TripleShot")
		Goto QuadrupleShot
	QuadrupleShot:
	   SUC1 E 8 Bright A_FaceTarget 
       SUC1 F 8 Bright A_FaceTarget 
       SUC1 G 8 Bright A_ComboAttack
       SUC1 E 8 Bright A_FaceTarget 
       SUC1 F 8 Bright A_FaceTarget
       SUC1 G 0 Bright A_Custommissile ("FireBall1", 27, 0, 8) 
       SUC1 G 0 Bright A_ComboAttack
       SUC1 G 8 Bright A_Custommissile ("FireBall1", 27, 0, -8)
	   SUC1 E 8 Bright
       Goto See
	TripleShot:
       SUC1 E 8 Bright A_FaceTarget 
       SUC1 F 8 Bright A_FaceTarget
       SUC1 G 0 Bright A_Custommissile ("FireBall1", 27, 0, 8) 
       SUC1 G 0 Bright A_ComboAttack
       SUC1 G 8 Bright A_Custommissile ("FireBall1", 27, 0, -8)
	   SUC1 E 8 Bright
       Goto See
	MissileF:
		TNT1 A 0 A_Jump(85, "TripleShotF")
		Goto QuadrupleShotF
	QuadrupleShotF:
	   SUFY E 8 Bright A_FaceTarget 
       SUFY F 8 Bright A_FaceTarget 
       SUFY G 8 Bright A_ComboAttack
       SUFY E 8 Bright A_FaceTarget 
       SUFY F 8 Bright A_FaceTarget
       SUFY G 0 Bright A_Custommissile ("FireBall1", 27, 0, 8) 
       SUFY G 0 Bright A_ComboAttack
       SUFY G 8 Bright A_Custommissile ("FireBall1", 27, 0, -8)
	   SUFY E 8 Bright
       Goto Hover
	TripleShotF:
       SUFY E 8 Bright A_FaceTarget 
       SUFY F 8 Bright A_FaceTarget
       SUFY G 0 Bright A_Custommissile ("FireBall1", 27, 0, 8) 
       SUFY G 0 Bright A_ComboAttack
       SUFY G 8 Bright A_Custommissile ("FireBall1", 27, 0, -8)
	   SUFY E 8 Bright
       Goto Hover
   Pain: 
       SUC1 L 2 Bright 
       SUC1 L 2 Bright A_Pain 
       Goto See 
   Death: 
       SUC1 M 7 Bright
       SUC1 N 7 Bright A_Scream 
       SUC1 O 7 Bright
       SUC1 P 7  A_NoBlocking 
       SUC1 QRST 7
       SUC1 U -1 
       Stop
	Raise:
		SUC1 UTSRQ 8 Bright
		SUC1 P 0 A_PlaySoundEx("pyr/resurrected", 3)
		SUC1 PONM 8 Bright
		Goto See 
 	}
}

actor PyroSuccubusWalk 9481
{
  //$Category Monsters
  //$Title "Pyro Succubus - Walking"
  spawnid 166
  Obituary "A pyrosuccubus was too hot for %o."
  health 200
  radius 16
  height 50
  mass 200
  speed 12
  Scale 0.95
  MissileType FireBall1
    DamageFactor ice,2
  DamageFactor Fire,0
  painchance 95
    seesound "pyr/sight"
    painsound "pyr/pain"
    deathsound "pyr/death"
    activesound "pyr/active"
	RENDERSTYLE TRANSLUCENT
  MONSTER
  +NOTARGET
  +FLOORCLIP
  +DONTHURTSPECIES
  Species "Succubus"
   States 
   { 
   Spawn: 
      SUC1 AB 10 Bright A_Look
      Loop 
   See: 
       SUC1 AA 3 Bright A_Chase
       SUC1 A 0 Bright A_SpawnItemEx("WalkFire1",0,0,0,1,0,0,0,128)
       SUC1 BB 3 Bright A_Chase
       SUC1 B 0 Bright A_SpawnItemEx("WalkFire1",0,0,0,1,0,0,0,128)
       SUC1 CC 3 Bright A_Chase
       SUC1 C 0 Bright A_SpawnItemEx("WalkFire1",0,0,0,1,0,0,0,128)
       SUC1 DD 3 Bright A_Chase
       SUC1 D 0 Bright A_SpawnItemEx("WalkFire1",0,0,0,1,0,0,0,128)
       Loop
	Missile:
		TNT1 A 0 A_Jump(85, "TripleShot")
		Goto QuadrupleShot
	QuadrupleShot:
	   SUC1 E 8 Bright A_FaceTarget 
       SUC1 F 8 Bright A_FaceTarget 
       SUC1 G 8 Bright A_ComboAttack
       SUC1 E 8 Bright A_FaceTarget 
       SUC1 F 8 Bright A_FaceTarget
       SUC1 G 0 Bright A_Custommissile ("FireBall1", 27, 0, 8) 
       SUC1 G 0 Bright A_ComboAttack
       SUC1 G 8 Bright A_Custommissile ("FireBall1", 27, 0, -8)
	   SUC1 E 8 Bright
       Goto See
	TripleShot:
       SUC1 E 8 Bright A_FaceTarget 
       SUC1 F 8 Bright A_FaceTarget
       SUC1 G 0 Bright A_Custommissile ("FireBall1", 27, 0, 8) 
       SUC1 G 0 Bright A_ComboAttack
       SUC1 G 8 Bright A_Custommissile ("FireBall1", 27, 0, -8)
	   SUC1 E 8 Bright
       Goto See
   Pain: 
       SUC1 L 2 Bright 
       SUC1 L 2 Bright A_Pain 
       Goto See 
   Death: 
       SUC1 M 7 Bright
       SUC1 N 7 Bright A_Scream 
       SUC1 O 7 Bright
       SUC1 P 7  A_NoBlocking 
       SUC1 QRST 7
       SUC1 U -1 
       Stop 
	Raise:
		SUC1 UTSRQ 8 Bright
		SUC1 P 0 A_PlaySoundEx("pyr/resurrected", 3)
		SUC1 PONM 8 Bright
		Goto See 
 	}
}

actor PyroSuccubusFly 9482
{
  //$Category Monsters
  //$Title "Pyro Succubus - Flying"
  spawnid 167
  Obituary "A pyrosuccubus was too hot for %o."
  health 200
  radius 16
  height 50
  mass 200
  speed 12
  Scale 0.95
  MissileType FireBall1
    DamageFactor ice,2
  DamageFactor Fire,0
  painchance 95
    seesound "pyr/sight"
    painsound "pyr/pain"
    deathsound "pyr/death"
    activesound "pyr/active"
	RENDERSTYLE TRANSLUCENT
  MONSTER
  +NOTARGET
  +FLOORCLIP
  +DONTHURTSPECIES
  +NOGRAVITY
  +FLOAT
  Species "Succubus"
   States 
   { 
   Spawn: 
      SUFY ABCD 10 Bright A_Look
      Loop 
   See: 
      SUFY AABBCCDDAABBCCDD 2 BRIGHT A_Chase
      Loop
	Missile:
		TNT1 A 0 A_Jump(85, "TripleShot")
		Goto QuadrupleShot
	QuadrupleShot:
	   SUFY E 8 Bright A_FaceTarget 
       SUFY F 8 Bright A_FaceTarget 
       SUFY G 8 Bright A_ComboAttack
       SUFY E 8 Bright A_FaceTarget 
       SUFY F 8 Bright A_FaceTarget
       SUFY G 0 Bright A_Custommissile ("FireBall1", 27, 0, 8) 
       SUFY G 0 Bright A_ComboAttack
       SUFY G 8 Bright A_Custommissile ("FireBall1", 27, 0, -8)
	   SUFY E 8 Bright
       Goto See
	TripleShot:
       SUFY E 8 Bright A_FaceTarget 
       SUFY F 8 Bright A_FaceTarget
       SUFY G 0 Bright A_Custommissile ("FireBall1", 27, 0, 8) 
       SUFY G 0 Bright A_ComboAttack
       SUFY G 8 Bright A_Custommissile ("FireBall1", 27, 0, -8)
	   SUFY E 8 Bright
       Goto See
  	    Pain: 
       SUC1 L 2 Bright 
       SUC1 L 2 Bright A_Pain 
       Goto See
   Death: 
       SUC1 M 7 Bright
       SUC1 N 7 Bright A_Scream 
       SUC1 O 7 Bright
       SUC1 P 7  A_NoBlocking 
       SUC1 QRST 7
       SUC1 U -1 
       Stop 
	Raise:
		SUC1 UTSRQ 8 Bright
		SUC1 P 0 A_PlaySoundEx("pyr/resurrected", 3)
		SUC1 PONM 8 Bright
		Goto See 
 	}
}

ACTOR FireBall1
{
	Radius 8
	Height 8
	Speed 15
	Damage 5
	DamageType fire
	Projectile
	+RANDOMIZE
	RenderStyle "ADD"
	Alpha 0.7
	seesound "weapons/pyrobrn"
	DeathSound "weapons/pyroxxpl"
	Decal BaronScorch
	States
	{
	Spawn: 
		BRB2 AB 1 BRIGHT A_SpawnItemEx("PyroTail", 0, 0, 0, 0, 0, 0, 0, 128)
		Loop
		Death:
    BRBA K 0 A_CustomMissile("Fire2", 4, 2, 0)
    BRBA KLMNOPQRSTUVWX 3 BRIGHT A_Die
    Stop
	}
}

//********************

ACTOR Fire2
{
+NOCLIP
+MISSILE
+DROPOFF
DamageType fire
+RANDOMIZE
Scale 1.5
Speed 1
Damage 1
RENDERSTYLE ADD
ALPHA 0.67
ExplosionDamage 3
ExplosionRadius 64
States
{
Spawn:
TNT1 A 8
FRTF A 3 Bright
FRTF A 0 A_Explode
FRTF B 3 Bright
FRTF B 0 A_Explode
FRTF C 3 Bright
FRTF C 0 A_Explode
FRTF C 0
FRTF C 0 A_Jump(191,4)
FRTF C 0 A_CustomMissile("Fire2", 0, 24, 0)
FRTF C 0 A_CustomMissile("Fire2", 0, 0, 0)
FRTF C 0 A_CustomMissile("Fire2", 0, -24, 0)
FRTF DEFGHIJKLMNO 3 Bright
Stop
}
}

//********************

ACTOR Fire1
{
+NOCLIP
+MISSILE
+DROPOFF
Speed 2
Damage 1
States
{
Spawn:
TNT1 A 10 A_CustomMissile("Fire2", 0, 0, 0)
TNT1 A 10 A_CustomMissile("Fire2", 0, 16, 0)
TNT1 A 10 A_CustomMissile("Fire2", 0, -16, 0)
TNT1 A 10 A_CustomMissile("Fire2", 0, 0, 0)
TNT1 A 10 A_CustomMissile("Fire2", 0, 16, 0)
TNT1 A 10 A_CustomMissile("Fire2", 0, -16, 0)
TNT1 A 10 A_CustomMissile("Fire2", 0, 0, 0)
TNT1 A 10 A_CustomMissile("Fire2", 0, 16, 0)
TNT1 A 10 A_CustomMissile("Fire2", 0, -16, 0)
TNT1 A 10 A_CustomMissile("Fire2", 0, 0, 0)
TNT1 A 10 A_CustomMissile("Fire2", 0, 16, 0)
TNT1 A 10 A_CustomMissile("Fire2", 0, -16, 0)
TNT1 A 10 A_CustomMissile("Fire2", 0, 0, 0)
TNT1 A 10 A_CustomMissile("Fire2", 0, 16, 0)
TNT1 A 10 A_CustomMissile("Fire2", 0, -16, 0)
Stop
}
}

ACTOR WalkFire1
{
     +NOCLIP
     +MISSILE
     +DROPOFF
     +RANDOMIZE
     Scale 1.5
     Speed 1
     RENDERSTYLE ADD
     ALPHA 0.67
     States
     {
     Spawn:
          NULL A 8
          FRTF A 3 Bright
	    FRTF A 0 
	    FRTF B 3 Bright
	    FRTF B 0 
	    FRTF C 3 Bright
	    FRTF C 0 
          FRTF C 0
          FRTF DEFGHIJKLMNO 3 Bright
          Stop
     }
}

actor PyroTail
{
    PROJECTILE
	Scale 1.1
    RENDERSTYLE ADD
    +NOCLIP
    ALPHA 0.4
    States
    {
    Spawn:
        PYTL ABCDEFGHI 1 Bright
        Stop
    }
}

ACTOR PyroSuccubusSpot : CustomMonsterInvasionSpot 9481
{
DropItem PyroSuccubus
}