Freeslot
SPR_TBUZ
SPR_TBUL
SPR_ATUR
S_TBUZLOOK
S_TBUZACTIVE
S_TBUZZOOM0
S_TBUZZOOM1
S_TBUZZOOM2
S_TBUZZOOM3
S_TBUZZOOM4
S_TBUZSHOOT1
S_TBUZSHOOT2
S_TBUZSHOOT3
S_TBUZSHOOT4
S_TBUZBBULLET1
S_TBUZBBULLET2
S_TBUZBBULLET3
S_TBUZBBULLET4
S_TBUZBBULLET5
S_TBUZBBULLET6
S_TBUZTAR1
S_ATULOOK1
S_ATULOOK2
S_ATULOOK3
S_ATULOOK4
S_ATUWATCH1
S_ATUWATCH2
S_ATUWATCH3
S_ATUWATCH4
S_ATULOOKZOOM1
S_ATULOOKZOOM2
S_ATULOOKZOOM3
S_ATULOOKZOOM4
S_TBUZWAYPOINT
MT_TURBOBUZZ
MT_TURBBULLET
MT_ANTITAILSUNIT
MT_TURBOWAYPOINT

Thing MT_TURBOBUZZ
#$Sprite TBUZA1
MAPTHINGNUM = 1339
SPAWNSTATE = S_TBUZLOOK
SPAWNHEALTH = 1
SEESTATE = S_TBUZACTIVE
SEESOUND = 0
REACTIONTIME = 2*TICRATE
ATTACKSOUND = sfx_s3k85
PAINSTATE = S_NULL
PAINCHANCE = 3072
PAINSOUND = sfx_None
MELEESTATE = 0
MISSILESTATE = 0
DEATHSTATE = S_XPLD_FLICKY
DEATHSOUND = sfx_pop
XDEATHSTATE = 0
SPEED = 1*FRACUNIT
RADIUS = 20*FRACUNIT
HEIGHT = 42*FRACUNIT
MASS = 100
DAMAGE = 0
ACTIVESOUND = 0
RAISESTATE = MT_TURBBULLET
FLAGS = MF_SLIDEME|MF_ENEMY|MF_SPECIAL|MF_SHOOTABLE|MF_NOGRAVITY|MF2_DONTDRAW

Thing MT_TURBOWAYPOINT
#$Sprite TBUZA3
MAPTHINGNUM = 1341
SPAWNSTATE = S_TBUZWAYPOINT
SPAWNHEALTH = 999
SEESTATE = S_TBUZWAYPOINT
SEESOUND = 0
REACTIONTIME = 2*TICRATE
ATTACKSOUND = sfx_s3k85
PAINSTATE = S_NULL
PAINCHANCE = 3072
PAINSOUND = sfx_None
MELEESTATE = 0
MISSILESTATE = 0
DEATHSTATE = S_SONIC3KBOSSEXPLOSION1
DEATHSOUND = sfx_pop
XDEATHSTATE = 0
SPEED = 1*FRACUNIT
RADIUS = 20*FRACUNIT
HEIGHT = 42*FRACUNIT
MASS = 100
DAMAGE = 0
ACTIVESOUND = 0
FLAGS = MF_SLIDEME|MF_ENEMY|MF_NOGRAVITY|MF_SPECIAL

Thing MT_TURBBULLET
MAPTHINGNUM = none
SPAWNSTATE = S_TBUZBBULLET1
SPAWNHEALTH = 1
SEESTATE = S_NULL
SEESOUND = 0
REACTIONTIME = 2*TICRATE
ATTACKSOUND = sfx_s3k85
PAINSTATE = S_NULL
PAINCHANCE = 200
PAINSOUND = sfx_None
MELEESTATE = S_NULL
MISSILESTATE = S_NULL
DEATHSTATE = S_SONIC3KBOSSEXPLOSION1
DEATHSOUND = sfx_cybdth
XDEATHSTATE = 0
SPEED = 40*FRACUNIT
RADIUS = 16*FRACUNIT
HEIGHT = 10*FRACUNIT
MASS = 100
DAMAGE = 1
ACTIVESOUND = 0
RAISESTATE = S_NULL
FLAGS = MF_NOBLOCKMAP|MF_MISSILE|MF_NOGRAVITY

Object MT_TURBOTARGET
MAPTHINGNUM = none
SpawnState = S_TBUZTAR1
SeeState = S_TBUZTAR1
SeeSound = sfx_None
AttackSound = sfx_None
PainState = S_NULL
PainChance = 200
PainSound = sfx_None
MeleeState = S_NULL
MissileState = S_NULL
DeathState = S_NULL
XDeathState = S_NULL
DeathSound = sfx_None
RaiseState = S_NULL
SpawnHealth = 1000
ReactionTime = 0
Speed = 3
Radius = 24*FRACUNIT
Height = 36*FRACUNIT
DispOffset = 0
Mass = 100
Damage = 0
ActiveSound = sfx_None
Flags = MF_NOGRAVITY|MF_NOBLOCKMAP|MF_SHOOTABLE|MF2_INVERTAIMABLE
RaiseState = S_NULL

Thing MT_ANTITAILSUNIT
#$Sprite VLTRA3A7
MAPTHINGNUM = 1340
SPAWNSTATE = S_ATULOOK1
SPAWNHEALTH = 1
SEESTATE = S_ATUWATCH1
SEESOUND = 0
REACTIONTIME = 2*TICRATE
ATTACKSOUND = sfx_shrpsp
PAINSTATE = S_NULL
PAINCHANCE = 3072
PAINSOUND = sfx_None
MELEESTATE = 0
MISSILESTATE = 0
DEATHSTATE = S_XPLD_FLICKY
DEATHSOUND = sfx_pop
XDEATHSTATE = 0
SPEED = 35*FRACUNIT
RADIUS = 12*FRACUNIT
HEIGHT = 24*FRACUNIT
MASS = 100
DAMAGE = 0
ACTIVESOUND = 0
RAISESTATE = S_NULL
FLAGS = MF_SLIDEME|MF_ENEMY|MF_SPECIAL|MF_SHOOTABLE|MF_NOGRAVITY

################### Turbo Buzz States ###################

State S_TBUZWAYPOINT
SpriteName = NULL
SpriteFrame = A
Duration = 2
Next = S_TBUZWAYPOINT
Action = none
Var1 = 0
Var2 = 0

State S_TBUZLOOK
SpriteName = TBUZ
SpriteFrame = A
Duration = 2
Next = S_TBUZLOOK
Action = A_Look
Var1 = 0
Var2 = 0

State S_TBUZACTIVE
SpriteName = TBUZ
SpriteFrame = A
Duration = 65
Next = S_TBUZSHOOT1
Action = none
Var1 = 0
Var2 = 0

State S_TBUZZOOM0
SpriteName = TBUZ
SpriteFrame = A
Duration = 1
Next = S_TBUZZOOM1
Action = none
Var1 = 0
Var2 = 0

State S_TBUZZOOM1
SpriteName = TBUZ
SpriteFrame = FF_FULLBRIGHT|B
Duration = 1
Next = S_TBUZZOOM2
Action = A_Thrust
Var1 = 95
Var2 = 1

State S_TBUZZOOM2
SpriteName = TBUZ
SpriteFrame = A
Duration = 1
Next = S_TBUZZOOM3
Action = none
Var1 = 0
Var2 = 0

State S_TBUZZOOM3
SpriteName = TBUZ
SpriteFrame = FF_FULLBRIGHT|B
Duration = 1
Next = S_TBUZZOOM2
Action = none
Var1 = 0
Var2 = 0

State S_TBUZSHOOT1
SpriteName = TBUZ
SpriteFrame = A
Duration = 10
Next = S_TBUZSHOOT2
Action = A_FaceTarget
Var1 = 0
Var2 = 0

State S_TBUZSHOOT2
SpriteName = TBUZ
SpriteFrame = FF_FULLBRIGHT|C
Duration = 1
Next = S_TBUZSHOOT3
Action = A_FaceAim
Var1 = 0
Var2 = 0

State S_TBUZSHOOT3
SpriteName = TBUZ
SpriteFrame = A
Duration = 30
Next = S_TBUZSHOOT4
ACTION A_FireShot
VAR1 = MT_TURBBULLET
VAR2 = -27

State S_TBUZSHOOT4
SpriteName = TBUZ
SpriteFrame = A
Duration = 1
Next = S_TBUZACTIVE
Action = A_Repeat
Var1 = 3
Var2 = S_TBUZSHOOT2

############ Turbo Buz Bullet States #######

State S_TBUZBBULLET1
SpriteName = TBUL
SpriteFrame = FF_FULLBRIGHT|A
Duration = 1
Next = S_TBUZBBULLET2
Action none
Var1 = 0
Var2 = 0

State S_TBUZBBULLET2
SpriteName = TBUL
SpriteFrame = FF_FULLBRIGHT|B
Duration = 1
Next = S_TBUZBBULLET3
Action none
Var1 = 0
Var2 = 0

State S_TBUZBBULLET3
SpriteName = TBUL
SpriteFrame = FF_FULLBRIGHT|C
Duration = 1
Next = S_TBUZBBULLET1
Action none
Var1 = 0
Var2 = 0

State S_TBUZBBULLET4
SpriteName = TBUZ
SpriteFrame = FF_FULLBRIGHT|A
Duration = 1
Next = S_TBUZBBULLET5
Action A_FaceTracer
Var1 = 0
Var2 = 0

State S_TBUZBBULLET5
SpriteName = TBUL
SpriteFrame = FF_FULLBRIGHT|B
Duration = 1
Next = S_TBUZBBULLET6
Action A_Thrust
Var1 = 25*FRACUNIT
Var2 = 0

State S_TBUZBBULLET6
SpriteName = TBUL
SpriteFrame = FF_FULLBRIGHT|C
Duration = 1
Next = S_TBUZBBULLET1
Action none
Var1 = 0
Var2 = 0

############################################
State S_TBUZTAR1
SpriteName = NULL
SpriteFrame = A
Duration = 200
Next = S_NULL
Action none
Var1 = 0
Var2 = 0

#################Anti Tails Unit states##############
State S_ATULOOK1
SpriteName = ATUR
SpriteFrame = E
Duration = 1
Next = S_ATULOOK2
Action A_Look
Var1 = 1
Var2 = 1

State S_ATULOOK2
SpriteName = ATUR
SpriteFrame = F
Duration = 1
Next = S_ATULOOK3
Action A_Look
Var1 = 1
Var2 = 1

State S_ATULOOK3
SpriteName = ATUR
SpriteFrame = G
Duration = 1
Next = S_ATULOOK4
Action A_Look
Var1 = 1
Var2 = 1

State S_ATULOOK4
SpriteName = ATUR
SpriteFrame = F
Duration = 1
Next = S_ATULOOK1
Action = A_PlayAttackSound
Var1 = 0
Var2 = 0

State S_ATUWATCH1
SpriteName = ATUR
SpriteFrame = E
Duration = 1
Next = S_ATUWATCH2
Action = A_FaceTarget
Var1 = 0
Var2 = 0

State S_ATUWATCH2
SpriteName = ATUR
SpriteFrame = F
Duration = 1
Next = S_ATUWATCH3
Action = A_FaceTarget
Var1 = 0
Var2 = 0

State S_ATUWATCH3
SpriteName = ATUR
SpriteFrame = G
Duration = 1
Next = S_ATUWATCH4
Action = A_FaceTarget
Var1 = 0
Var2 = 0

State S_ATUWATCH4
SpriteName = ATUR
SpriteFrame = F
Duration = 1
Next = S_ATUWATCH1
Action = A_PlayAttackSound
Var1 = 0
Var2 = 0

State S_ATULOOKZOOM1
SpriteName = ATUR
SpriteFrame = A
Duration = 1
Next = S_ATULOOKZOOM2
Action = A_HomingChase
Var1 = 38*FRACUNIT
Var2 = 0

State S_ATULOOKZOOM2
SpriteName = ATUR
SpriteFrame = B
Duration = 1
Next = S_ATULOOKZOOM3
Next = S_ATULOOKZOOM1
Action = A_PlayAttackSound
Var1 = 0
Var2 = 0

State S_ATULOOKZOOM3
SpriteName = ATUR
SpriteFrame = C
Duration = 1
Next = S_ATULOOKZOOM4
Action = A_HomingChase
Var1 = 38*FRACUNIT
Var2 = 0

State S_ATULOOKZOOM4
SpriteName = ATUR
SpriteFrame = B
Duration = 1
Next = S_ATULOOKZOOM1
Action = A_PlayAttackSound
Var1 = 0
Var2 = 0