
Thing MT_JETTRUNNER
#$Sprite JETRA1
MAPTHINGNUM = 1399
SPAWNSTATE = S_JETR_STND
SPAWNHEALTH = 2
SEESTATE = S_JETR_RUN0
SEESOUND = 0
REACTIONTIME = 2*TICRATE
ATTACKSOUND = sfx_s3ka8
PAINSTATE = S_JETR_PAIN0
PAINCHANCE = 0
PAINSOUND = sfx_dmpain
MELEESTATE = 0
MISSILESTATE = S_JETR_ATK
DEATHSTATE = S_JETR_DIE1
DEATHSOUND = sfx_s3kb4
XDEATHSTATE = S_XPLD_FLICKY
SPEED = 16
RADIUS = 20*FRACUNIT
HEIGHT = 46*FRACUNIT
MASS = 100
DAMAGE = 0
ACTIVESOUND = 0
RAISESTATE = 0
FLAGS = MF_ENEMY|MF_SPECIAL|MF_SHOOTABLE

Thing MT_JETRBULLET
MAPTHINGNUM = none
SPAWNSTATE = S_JBULBBULLET1
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 = 30*FRACUNIT
RADIUS = 16*FRACUNIT
HEIGHT = 10*FRACUNIT
MASS = 100
DAMAGE = 1
ACTIVESOUND = 0
RAISESTATE = S_NULL
FLAGS = MF_PAIN|MF_MISSILE|MF_NOGRAVITY

Object MT_JETTSEEKER
MAPTHINGNUM = none
SpawnState = S_JETL_SEK0
SeeState = S_NULL
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 = 1
ReactionTime = 0
Speed = 0
Radius = 24*FRACUNIT
Height = 36*FRACUNIT
DispOffset = 0
Mass = 100
Damage = 0
ActiveSound = sfx_None
Flags = MF_SPECIAL|MF_SHOOTABLE|MF_NOGRAVITY|MF2_INVERTAIMABLE
RaiseState = S_NULL

Thing MT_JETRBULLETTRAIL
MAPTHINGNUM = none
SPAWNSTATE = S_JBULBBULLETTRAIL
SpawnHealth = 1000
ReactionTime = 8
Radius = 2*FRACUNIT 
Height = 2*FRACUNIT 
Mass = 100
Damage = 0
Flags = MF_NOBLOCKMAP|MF_NOCLIP|MF_SCENERY

Object MT_JETTALLYCHECK
MAPTHINGNUM = none
SpawnState = S_JETL_ACHK1
SeeState = S_JETL_ACHK1
SeeSound = sfx_None
AttackSound = sfx_None
PainState = S_NULL
PainChance = 0
PainSound = sfx_None
MeleeState = S_JETR_JUMP0
MissileState = S_NULL
DeathState = S_NULL
XDeathState = S_NULL
DeathSound = sfx_None
RaiseState = S_NULL
SpawnHealth = 1000
ReactionTime = 0
Speed = 0
Radius = 26*FRACUNIT
Height = 40*FRACUNIT
DispOffset = 0
Mass = 100
Damage = 0
ActiveSound = sfx_None
Flags = MF_NOGRAVITY|MF_NOBLOCKMAP|MF_NOCLIPHEIGHT
RaiseState = S_NULL

################# the states ####################################

State S_JETR_WINGM
SpriteName = JETR
SpriteFrame = A
Duration = 2
Next = S_JETR_WINGM
Action = A_Look
Var1 = 1
Var2 = 0

State S_JETR_FADE1
SpriteName = JETR
SpriteFrame = L
Duration = 2
Next = S_JETR_FADE2
Action = none
Var1 = 0
Var2 = 0

State S_JETR_FADE2
SpriteName = SPR_NULL 
SpriteFrame = A
Duration = 2
Next = S_JETR_FADE3
Action = none
Var1 = 0
Var2 = 0

State S_JETR_FADE3
SpriteName = SPR_NULL 
SpriteFrame = A
Duration = 0
Next = S_NULL
Action = A_Repeat
Var1 = 6
Var2 = S_JETR_FADE1

State S_JETR_JUMP0
SpriteName = JETR
SpriteFrame = K
Duration = 0
Next = S_JETR_JUMP1
Action = A_FaceTarget
Var1 = 1
Var2 = 1

STATE S_JETR_JUMP1
SPRITENAME = JETR
SPRITEFRAME = K
DURATION = 1
NEXT = S_JETR_JUMP2
ACTION = A_Thrust
VAR1 = 10
VAR2 = 1

State S_JETR_JUMP2
SpriteName = JETR
SpriteFrame = K
Duration = 1
Next = S_JETR_JUMP2
Action = A_Boss5CheckOnGround
Var1 = S_JETR_JUMP3
Var2 = S_JETR_JUMP3

State S_JETR_JUMP3
SpriteName = JETR
SpriteFrame = K
Duration = 1
Next = S_JETR_RUN4
Action = A_ForceStop
Var1 = 1
Var2 = 0

STATE S_JETR_PAIN0
SPRITENAME = JETR
SPRITEFRAME = L
DURATION = 2
NEXT = S_JETR_PAIN1
ACTION = A_DoNPCPain
VAR1 = FRACUNIT
VAR2 = 0

State S_JETR_PAIN1
SpriteName = JETR
SpriteFrame = L
Duration = 2
Next = S_JETR_PAIN2
Action = none
Var1 = 0 
Var2 = 0

State S_JETR_PAIN2
SpriteName = JETR
SpriteFrame = L
Duration = 1
Next = S_JETR_PAIN2
Action = A_Boss5CheckOnGround
Var1 = S_JETR_PAIN3
Var2 = S_JETR_PAIN3

State S_JETR_PAIN3
SpriteName = JETR
SpriteFrame = A
Duration = 1
Next = S_JETR_STND
Action = A_FaceTarget
Var1 = 1
Var2 = 1

State S_JETR_DIE1
SpriteName = JETR
SpriteFrame = L
Duration = 1
Next = S_JETR_DIE2
Action = A_DoNPCPain
Var1 = FRACUNIT 
Var2 = 0

State S_JETR_DIE2
SpriteName = JETR
SpriteFrame = L
Duration = 1
Next = S_JETR_DIE3
Action = A_Boss5CheckOnGround
Var1 = S_XPLD1
Var2 = S_XPLD1

State S_JETR_DIE3
SpriteName = JETR
SpriteFrame = L
Duration = 2
Next = S_JETR_DIE2
Action = A_BossScream
Var1 = 1 
Var2 = 0

State S_JETR_STND
SpriteName = JETR
SpriteFrame = A
Duration = 5
Next = S_JETR_STND
Action = A_Look
Var1 = 1
Var2 = 0

State S_JETR_RUN0
SpriteName = JETR
SpriteFrame = A
Duration = 0
Next = S_JETR_RUN1
Action = A_FindTracer
Var1 = MT_JETRBULLET
Var2 = 0

State S_JETR_RUN1
SpriteName = JETR
SpriteFrame = A
Duration = 2
Next = S_JETR_RUN2
Action = A_FaceStabChase
Var1 = 0
Var2 = 0

State S_JETR_RUN2
SpriteName = JETR
SpriteFrame = B
Duration = 2
Next = S_JETR_RUN3
Action = A_FaceStabChase
Var1 = 0
Var2 = 0

State S_JETR_RUN3
SpriteName = JETR
SpriteFrame = C
Duration = 2
Next = S_JETR_RUN4
Action = A_FaceStabChase
Var1 = 0
Var2 = 0

State S_JETR_RUN4
SpriteName = JETR
SpriteFrame = D
Duration = 2
Next = S_JETR_RUN5
Action = A_FaceStabChase
Var1 = 0
Var2 = 0

State S_JETR_RUN5
SpriteName = JETR
SpriteFrame = E
Duration = 2
Next = S_JETR_RUN6
Action = A_FaceStabChase
Var1 = 0
Var2 = 0

State S_JETR_RUN6
SpriteName = JETR
SpriteFrame = F
Duration = 2
Next = S_JETR_RUN7
Action = A_FaceStabChase
Var1 = 0
Var2 = 0

State S_JETR_RUN7
SpriteName = JETR
SpriteFrame = G
Duration = 2
Next = S_JETR_RUN8
Action = A_FaceStabChase
Var1 = 0
Var2 = 0

State S_JETR_RUN8
SpriteName = JETR
SpriteFrame = H
Duration = 2
Next = S_JETR_RUN0
Action = A_FaceStabChase
Var1 = 0
Var2 = 0

State S_JETR_ATK
SpriteName = JETR
SpriteFrame = I
Duration = 1
Next = S_JETR_ATK1
Action = A_FaceTarget
Var1 = 0
Var2 = 0

State S_JETR_ATK0
SpriteName = JETR
SpriteFrame = I
Duration = 2
Next = S_JETR_ATK1
Action = A_AimBot
Var1 = 0
Var2 = 0

State S_JETR_ATK1
SpriteName = JETR
SpriteFrame = I
Duration = 1
Next = S_JETR_ATK2
Action = A_Repeat
Var1 = 15
Var2 = S_JETR_ATK0

State S_JETR_ATK2
SpriteName = JETR
SpriteFrame = FF_FULLBRIGHT|J
Duration = 3
Next = S_JETR_ATK3
Action = A_RunnerShot
Var1 = MT_JETRBULLET
Var2 = 0

State S_JETR_ATK3
SpriteName = JETR
SpriteFrame = I
Duration = 8
Next = S_JETR_ATK4
Action = none
Var1 = 0
Var2 = 0

State S_JETR_ATK4
SpriteName = JETR
SpriteFrame = A
Duration = 1
Next = S_JETR_RUN0
Action = A_Repeat
Var1 = 6
Var2 = S_JETR_ATK2

########bullet states#############

State S_JBULBBULLET1
SpriteName = JELE
SpriteFrame = FF_FULLBRIGHT|A
Duration = 2
Next = S_JBULBBULLET2
Action A_Thrust
Var1 = 30
Var2 = 1

State S_JBULBBULLET2
SpriteName = JELE
SpriteFrame = FF_FULLBRIGHT|B
Duration = 1
Next = S_JBULBBULLET3
Action none
Var1 = 0
Var2 = 0

State S_JBULBBULLET3
SpriteName = JELE
SpriteFrame = FF_FULLBRIGHT|C
Duration = 1
Next = S_JBULBBULLET4
Action none
Var1 = 0
Var2 = 0

State S_JBULBBULLET4
SpriteName = JELE
SpriteFrame = FF_FULLBRIGHT|D
Duration = 1
Next = S_JBULBBULLET2
Action none
Var1 = 0
Var2 = 0

State S_JBULBBULLETTRAIL
SpriteName = THOK
SpriteFrame = TR_TRANS50|FF_PAPERSPRITE|FF_FULLBRIGHT|A
Duration = 4
Next = S_NULL
Action none
Var1 = 0
Var2 = 0

##### platform seeker states ###########

State S_JETL_SEK0
SpriteName = SPR_NULL
SpriteFrame = A
Duration = 1
Next = S_JETL_SEK1
Action = A_MoveAbsolute
Var1 = 0
Var2 = 0

State S_JETL_SEK1
SpriteName = SPR_NULL
SpriteFrame = A
Duration = 3
Next = S_JETL_SEK2
Action = A_Thrust
Var1 = 60
Var2 = 1

State S_JETL_SEK2
SpriteName = SPR_NULL
SpriteFrame = A
Duration = 1
Next = S_JETL_SEK3
Action = A_ForceStop
Var1 = 0
Var2 = 0

State S_JETL_SEK3
SpriteName = SPR_NULL
SpriteFrame = A
Duration = 0
Next = S_JETL_SEK4
Action = A_SetObjectFlags
Var1 = MF_NOGRAVITY
Var2 = 1

State S_JETL_SEK4
SpriteName = SPR_NULL
SpriteFrame = A
Duration = 9
Next = S_Null
Action = A_ZThrust
Var1 = -40
Var2 = 0

########## ally checker ####################
State S_JETL_ACHK1
SpriteName = HOOP
SpriteFrame = A
Duration = 14
Next = S_NULL
Action = none
Var1 = 0
Var2 = 0

############# makeing the invader ship projectile here because I cant figure out how to get it to work in lua #################
Thing MT_INVADERMISSSLE
MAPTHINGNUM = none
SPAWNSTATE = S_INVADERMISSSLE0
SPAWNHEALTH = 1
SEESTATE = sfx_kc31
SEESOUND = 0
REACTIONTIME = 2*TICRATE
ATTACKSOUND = sfx_fire
PAINSTATE = S_NULL
PAINCHANCE = 200
PAINSOUND = sfx_None
MELEESTATE = S_NULL
MISSILESTATE = S_NULL
DEATHSTATE = S_INVADERMISSSLE_EXPLODE1
DEATHSOUND = sfx_bgxpld
XDEATHSTATE = 0
SPEED = 10*FRACUNIT
RADIUS = 22*FRACUNIT
HEIGHT = 22*FRACUNIT
MASS = 100
DAMAGE = 1
ACTIVESOUND = 0
RAISESTATE = S_NULL
FLAGS = MF_NOBLOCKMAP|MF_MISSILE|MF2_SUPERFIRE

Thing MT_INVADER_INFERNOEYE
MAPTHINGNUM = none
SPAWNSTATE = S_INVADER_INFERNOEYE
SPAWNHEALTH = 999
SEESTATE = S_NULL
SEESOUND = 0
REACTIONTIME = 2*TICRATE
ATTACKSOUND = sfx_fire
PAINSTATE = S_NULL
PAINCHANCE = 200
PAINSOUND = sfx_None
MELEESTATE = S_NULL
MISSILESTATE = S_NULL
DEATHSTATE = S_NULL
DEATHSOUND = sfx_bgxpld
XDEATHSTATE = 0
SPEED = 10*FRACUNIT
RADIUS = 23*FRACUNIT
HEIGHT = 23*FRACUNIT
MASS = 100
DAMAGE = 32*FRACUNIT
ACTIVESOUND = 0
RAISESTATE = S_NULL
FLAGS = MF_NOBLOCKMAP

############# jet effects for the boss ##########################
Thing MT_JETFUMEO1
SPAWNSTATE = S_JETFUMEO1
SPAWNHEALTH = 999
SEESTATE = S_JETFUMEO1
SEESOUND = 0
REACTIONTIME = 8
ATTACKSOUND = 0
PAINSTATE = S_NULL
PAINCHANCE = 0
PAINSOUND = sfx_None
MELEESTATE = 0
MISSILESTATE = S_NULL
DEATHSTATE = S_NULL
DEATHSOUND = sfx_None
XDEATHSTATE = S_NULL
SPEED = 16
RADIUS = 8*FRACUNIT
HEIGHT = 16*FRACUNIT
MASS = 4
DAMAGE = 0
ACTIVESOUND = 0
RAISESTATE = 0
FLAGS = MF_NOBLOCKMAP|MF_NOGRAVITY|MF_NOCLIP|MF_NOCLIPHEIGHT

State S_JETFUMEO1
SpriteName = JETF 
SpriteFrame = FF_FULLBRIGHT|A
Duration = 1
Next = S_JETFUMEO2
Action = none
Var1 = 0
Var2 = 0

State S_JETFUMEO2
SpriteName = JETF
SpriteFrame = FF_FULLBRIGHT|B
Duration = 1
Next = S_JETFUMEO1
Action = none
Var1 = 0
Var2 = 0
