FreeSlot
S_METAL_PAIN
S_METAL_TELEPORT
S_METALSONICSAPH_FLEE1
S_METALSONICSAPH_FLEE2
S_METALSONICSAPH_FLEE3
S_METALSONICSAPH_FLEE4
SPR_ZAPM
S_MSZAP1
S_MSZAP2
S_MSZAP3
S_MSZAP4
S_MSZAP5
S_MSZAP6
MT_SSZT
S_SSZT
SPR_SSZT
MT_SSZL
S_SSZL
SPR_SSZL
MT_SSZOBJSPAWNER
S_SSZOBJCHOOSE
S_SSZOBJSPAWNL
S_SSZOBJSPAWNT

Object MT_METALSONIC2
#$Name Metal Sonic (Battle Ver. 2)
#$Sprite METLD1
MapThingNum = 789
SpawnHealth = 8
ReactionTime = 3*TICRATE
SpawnState = S_METAL_CHASE
SeeState = S_METAL_CHASE
PainState = S_METAL_PAIN
DeathState = S_METAL_DEATH
XDeathState = S_METALSONICSAPH_FLEE1
DeathSound = sfx_s3k6e
PainSound = sfx_dmpain
Radius = 16*FRACUNIT
Height = 56*FRACUNIT
Damage = 3
Flags = MF_BOSS|MF_SHOOTABLE|MF_NOGRAVITY|MF_SPECIAL|MF_FLOAT

State S_METAL_PAIN
SpriteName = METL
SpriteFrame = L
Duration = 35
Next = S_METAL_TELEPORT
Action A_Pain

State S_METAL_DEATH
SpriteName = METL
SpriteFrame = O
Duration = 10*TICRATE
Next = S_METALSONICSAPH_FLEE1

State S_METAL_TELEPORT
SpriteName = METL
SpriteFrame = M
Duration = 105
Next = S_METAL_DASH2

State S_METAL_SPARK
SpriteName = METL
SpriteFrame = U
Duration = 52
Next = S_METAL_CHASE

State S_METAL_PROTECT
SpriteName = METL
SpriteFrame = U
Duration = 52
Next = S_METAL_CHASE

State S_METAL_LASER
SpriteName = METL
SpriteFrame = 
Duration = 10*TICRATE
Next = S_METAL_FOLLOW2

State S_METAL_DASH1
SpriteName = METL
SpriteFrame = P
Duration = 70
Next = S_METAL_DASH2
Action A_PlaySound
Var1 = sfx_mschrg
Var2 = 1

State S_METAL_VULNERABLE
SpriteName = METL
SpriteFrame = A
Duration = 1*TICRATE
Next = S_METAL_CHASE


State S_METAL_DASH2
SpriteName = METL
SpriteFrame = Q
Duration = 5*TICRATE
Next = S_METAL_CHASE
Action A_PlaySound
Var1 = sfx_msovdr
Var2 = 1

State S_METAL_DASH3
SpriteName = METL
SpriteFrame = Q
Duration = 5*TICRATE
Next = S_METAL_CHASE
Action A_PlaySound
Var1 = sfx_msovdr
Var2 = 1

State S_METALSONICSAPH_FLEE1
SpriteName = METL
SpriteFrame = D
Duration = 4
Next = S_METALSONICSAPH_FLEE2

State S_METALSONICSAPH_FLEE2
SpriteName = METL
SpriteFrame = E
Duration = 4
Next = S_METALSONICSAPH_FLEE3
Action A_BossScream

State S_METALSONICSAPH_FLEE3
SpriteName = METL
SpriteFrame = F
Duration = 4
Next = S_METALSONICSAPH_FLEE4

State S_METALSONICSAPH_FLEE4
SpriteName = METL
SpriteFrame = E
Duration = 4
Next = S_METALSONICSAPH_FLEE1


Thing MT_MSZAP
MAPTHINGNUM = -1
SPAWNSTATE = S_MSZAP1
SPAWNHEALTH = 1000
SEESTATE = 0
SEESOUND = 0
REACTIONTIME = 8
ATTACKSOUND = 0
PAINSTATE = 0
PAINCHANCE = 0
PAINSOUND = 0
MELEESTATE = 0
MISSILESTATE = 0
DEATHSOUND = 0
XDEATHSTATE = 0
SPEED = 0
RADIUS = 32*FRACUNIT
HEIGHT = 32*FRACUNIT
MASS = 100
DAMAGE = 0
ACTIVESOUND = 0
RAISESTATE = 0
FLAGS = MF_NOBLOCKMAP|MF_NOGRAVITY


FRAME S_MSZAP1
SPRITENAME = SPR_ODOB
SPRITEFRAME = A|FF_FULLBRIGHT|TR_TRANS20
DURATION = 2
NEXT = S_MSZAP2
ACTION None

FRAME S_MSZAP2
SPRITENAME = SPR_ZAPM
SPRITEFRAME = A|FF_FULLBRIGHT|TR_TRANS20
DURATION = 1
NEXT = S_MSZAP3
ACTION None

FRAME S_MSZAP3
SPRITENAME = SPR_ZAPM
SPRITEFRAME = B|FF_FULLBRIGHT|TR_TRANS20
DURATION = 1
NEXT = S_MSZAP4
ACTION None

FRAME S_MSZAP4
SPRITENAME = SPR_ODOB
SPRITEFRAME = B|FF_FULLBRIGHT|TR_TRANS40
DURATION = 2
NEXT = S_MSZAP5
ACTION None

FRAME S_MSZAP5
SPRITENAME = SPR_ZAPM
SPRITEFRAME = C|FF_FULLBRIGHT|TR_TRANS40
DURATION = 1
NEXT = S_MSZAP6
ACTION None

FRAME S_MSZAP6
SPRITENAME = SPR_ZAPM
SPRITEFRAME = D|FF_FULLBRIGHT|TR_TRANS40
DURATION = 1
NEXT = S_NULL
ACTION None

Thing MT_MSZAPF
MAPTHINGNUM = -1
SPAWNSTATE = S_MAGN1
SPAWNHEALTH = 1
SEESTATE = S_MAGN1
SEESOUND = sfx_s3k79
REACTIONTIME = 8
ATTACKSOUND = 0
PAINSTATE = 0
PAINCHANCE = 0
PAINSOUND = 0
MELEESTATE = 0
MISSILESTATE = 0
DEATHSOUND = sfx_s3k45
DEATHSTATE = S_MSZAP1
SPEED = 20*FRACUNIT
RADIUS = 32*FRACUNIT
HEIGHT = 32*FRACUNIT
MASS = 100
DAMAGE = 0
RAISESTATE = 0
FLAGS = MF_NOBLOCKMAP|MF_NOGRAVITY|MF_MISSILE

Thing MT_MSCHARGE
MAPTHINGNUM = -1
SPAWNSTATE =  S_MSCHARGE
SPAWNHEALTH = 1000
SEESTATE = 0
SEESOUND = 0
REACTIONTIME = 8
ATTACKSOUND = 0
PAINSTATE = 0
PAINCHANCE = 0
PAINSOUND = 0
MELEESTATE = 0
MISSILESTATE = 0
DEATHSTATE =  S_MSCHARGE
DEATHSOUND = 0
XDEATHSTATE = 0
SPEED = 0
RADIUS = 32*FRACUNIT
HEIGHT = 32*FRACUNIT
MASS = 100
DAMAGE = 0
ACTIVESOUND = 0
RAISESTATE = 0
FLAGS = MF_NOBLOCKMAP|MF_NOGRAVITY|MF_PAIN

State S_MSCHARGE
SPRITENAME = SPR_ODOB
SPRITEFRAME = A|FF_FULLBRIGHT|TR_TRANS20|FF_ANIMATE
DURATION = 12
NEXT = S_NULL
Var1 = 6
Var2 = 2

Thing MT_SSZOBJSPAWNER
MAPTHINGNUM = 1933
SPAWNSTATE = S_SSZOBJCHOOSE
SPAWNHEALTH = 1
SEESTATE = 0
SEESOUND = 0
REACTIONTIME = 8
ATTACKSOUND = 0
PAINSTATE = 0
PAINCHANCE = 0
PAINSOUND = 0
MELEESTATE = 0
MISSILESTATE = 0
DEATHSTATE = 0
DEATHSOUND = 0
XDEATHSTATE = 0
SPEED = 0
RADIUS = 64*FRACUNIT
HEIGHT = 64*FRACUNIT
MASS = 100
DAMAGE = 0
ACTIVESOUND = 0
RAISESTATE = 0
FLAGS = MF_NOSECTOR

FRAME S_SSZOBJCHOOSE
SPRITENAME = SPR_NULL
SPRITEFRAME = A
DURATION = 35
NEXT = S_SSZOBJCHOOSE
ACTION A_RandomState
Var1 = S_SSZOBJSPAWNL
Var2 = S_SSZOBJSPAWNT

FRAME S_SSZOBJSPAWNL
SPRITENAME = SPR_NULL
SPRITEFRAME = A
DURATION = 35
NEXT = S_SSZOBJCHOOSE
ACTION A_SpawnObjectRelative
Var1 = (0<<16)+0
Var2 = (0<<16)+MT_SSZL

FRAME S_SSZOBJSPAWNT
SPRITENAME = SPR_NULL
SPRITEFRAME = A
DURATION = 35
NEXT = S_SSZOBJCHOOSE
ACTION A_SpawnObjectRelative
Var1 = (0<<16)+0
Var2 = (0<<16)+MT_SSZT

# SSZ Bad Future SSZTet

Thing MT_SSZT
#$Name SSZ Bad Future SSZTet
#$Sprite SSZTA0
MAPTHINGNUM = 1934
SPAWNSTATE = S_SSZT
SPAWNHEALTH = 1
SEESTATE = 0
SEESOUND = 0
REACTIONTIME = 8
ATTACKSOUND = 0
PAINSTATE = 0
PAINCHANCE = 100*FRACUNIT
PAINSOUND = 0
MELEESTATE = 0
MISSILESTATE = 0
DEATHSTATE = S_RINGEXPLODE
DEATHSOUND = 0
XDEATHSTATE = S_RINGEXPLODE
SPEED = 0
RADIUS = 48*FRACUNIT
HEIGHT = 48*FRACUNIT
MASS = 100
DAMAGE = 0
ACTIVESOUND = 0
RAISESTATE = 0
FLAGS = MF_SCENERY|MF_SHOOTABLE

FRAME S_SSZT
SPRITENAME = SPR_SSZT
SPRITEFRAME = A
DURATION = -1
NEXT = S_NULL
ACTION None

# SSZ Bad Future Streetlight

Thing MT_SSZL
#$Name SSZ Bad Future Streetlight
#$Sprite SSZLA0
MAPTHINGNUM = 1935
SPAWNSTATE = S_SSZL
SPAWNHEALTH = 2000
SEESTATE = 0
SEESOUND = 0
REACTIONTIME = 8
ATTACKSOUND = 0
PAINSTATE = 0
PAINCHANCE = 300*FRACUNIT
PAINSOUND = 0
MELEESTATE = 0
MISSILESTATE = 0
DEATHSTATE = S_RINGEXPLODE
DEATHSOUND = 0
XDEATHSTATE = S_RINGEXPLODE
SPEED = 0
RADIUS = 32*FRACUNIT
HEIGHT = 256*FRACUNIT
MASS = 100
DAMAGE = 0
ACTIVESOUND = 0
RAISESTATE = 0
FLAGS = MF_SCENERY|MF_SHOOTABLE

FRAME S_SSZL
SPRITENAME = SPR_SSZL
SPRITEFRAME = A
DURATION = -1
NEXT = S_NULL
ACTION None