#BatBrain
#Original from Glaber's Badnik Pack
#Badnik Pack DX be carrying this fr

Freeslot
SPR_BTBN
S_BTBN_LOOK
S_BTBN_SWOOP1
S_BTBN_SWOOP2
S_BTBN_ARC1
S_BTBN_ARC2
S_BTBN_ARC3
S_BTBN_FLY1
S_BTBN_FLY2
S_BTBN_FLY3
S_BTBN_FLY4
S_BTBN_FLYREPEAT
S_BTBN_RETURN1
S_BTBN_RETURN2
S_BTBN_RETURN3
S_BTBN_CHECK1
S_BTBN_CHECK2
S_BTBN_CHECK3
S_BTBN_CHECK4


Object MT_BATBRAIN
#$Name "BatBrain"
#$Sprite BTBNA0
#$Category Sonic 1 Badniks
MapThingNum = 3086
SpawnState = S_BTBN_LOOK
SpawnHealth = 1
SeeState = S_BTBN_SWOOP1
SeeSound = sfx_None
ReactionTime = 2
AttackSound = sfx_None
PainState = S_NULL
PainChance = 200
PainSound = sfx_None
MeleeState = S_NULL
MissileState = S_BTBN_ARC1
DeathState = S_XPLD_FLICKY
XDeathState = S_NULL
DeathSound = sfx_pop
Speed = 20*FRACUNIT
Radius = 24*FRACUNIT
Height = 38*FRACUNIT
DispOffset = 0
Mass = 100
Damage = 0
ActiveSound = sfx_s1c0
Flags = MF_SPECIAL|MF_SHOOTABLE|MF_ENEMY|MF_SPAWNCEILING|MF_NOGRAVITY
RaiseState = S_NULL


State S_BTBN_LOOK
SpriteFrame = A
SpriteName = SPR_BTBN
Duration = 5
Next = S_BTBN_LOOK
Action = A_Look
Var1 = (900<<16)+1
Var2 = 0

State S_BTBN_SWOOP1
SpriteFrame = B
SpriteName = SPR_BTBN
Duration = 1
Next = S_BTBN_SWOOP2
Action = A_MultiShotDist
Var1 = (MT_DUST<<16)+10
Var2 = -34

State S_BTBN_SWOOP2
SpriteFrame = B
SpriteName = SPR_BTBN
Duration = 1
Next = S_BTBN_SWOOP2
Action = A_BatDrop
Var1 = 0
Var2 = 0

State S_BTBN_ARC1
SpriteFrame = B
SpriteName = SPR_BTBN
Duration = 1
Next = S_BTBN_ARC2
Action = A_ZThrust
Var1 = -5
Var2 = (1<<16)

State S_BTBN_ARC2
SpriteFrame = B
SpriteName = SPR_BTBN
Duration = 1
Next = S_BTBN_ARC3
Action = A_ZThrust
Var1 = -2
Var2 = (1<<16)

State S_BTBN_ARC3
SpriteFrame = B
SpriteName = SPR_BTBN
Duration = 1
Next = S_BTBN_FLY1
Action = A_ZThrust
Var1 = 0
Var2 = (1<<16)

State S_BTBN_FLY1
SpriteFrame = B
SpriteName = SPR_BTBN
Duration = 3
Next = S_BTBN_FLY2
Action = A_Thrust
Var1 = 6
Var2 = 1

State S_BTBN_FLY2
SpriteFrame = C
SpriteName = SPR_BTBN
Duration = 3
Next = S_BTBN_FLY3
Action = A_PlaySound
Var1 = sfx_s1c0
Var2 = 1

State S_BTBN_FLY3
SpriteFrame = D
SpriteName = SPR_BTBN
Duration = 3
Next = S_BTBN_FLY4
Action = A_Thrust
Var1 = 6
Var2 = 1

State S_BTBN_FLY4
SpriteFrame = C
SpriteName = SPR_BTBN
Duration = 3
Next = S_BTBN_FLYREPEAT
Action = A_PlaySound
Var1 = sfx_s1c0
Var2 = 1

State S_BTBN_FLYREPEAT
SpriteFrame = C
SpriteName = SPR_BTBN
Duration = 3
Next = S_BTBN_RETURN1
Action = A_Repeat
Var1 = 8
Var2 = S_BTBN_FLY1

State S_BTBN_RETURN1
SpriteFrame = B
SpriteName = SPR_BTBN
Duration = 3
Next = S_BTBN_RETURN2
Action = A_ZThrust
Var1 = 2
Var2 = (1<<16)

State S_BTBN_RETURN2
SpriteFrame = C
SpriteName = SPR_BTBN
Duration = 3
Next = S_BTBN_RETURN3
Action = A_ZThrust
Var1 = 5
Var2 = (1<<16)

State S_BTBN_RETURN3
SpriteFrame = D
SpriteName = SPR_BTBN
Duration = 3
Next = S_BTBN_CHECK1
Action = A_ZThrust
Var1 = 0
Var2 = (1<<16)

State S_BTBN_CHECK1
SpriteFrame = C
SpriteName = SPR_BTBN
Duration = 3
Next = S_BTBN_CHECK2
Action = A_BatCheck
Var1 = 0
Var2 = 0

State S_BTBN_CHECK2
SpriteFrame = B
SpriteName = SPR_BTBN
Duration = 3
Next = S_BTBN_CHECK3
Action = A_BatCheck
Var1 = 0
Var2 = 0

State S_BTBN_CHECK3
SpriteFrame = C
SpriteName = SPR_BTBN
Duration = 3
Next = S_BTBN_CHECK4
Action = A_BatCheck
Var1 = 0
Var2 = 0

State S_BTBN_CHECK4
SpriteFrame = D
SpriteName = SPR_BTBN
Duration = 3
Next = S_BTBN_CHECK1
Action = A_BatCheck
Var1 = 0
Var2 = 0