#####################################
# SOC_MetaKnight
# Objects/States for Meta Knight
#####################################
Character
SkinName = metaknight
DisplayName = Meta#Knight
TagTextColor = SKINCOLOR_COBALT
TagOutlineColor = SKINCOLOR_YELLOW
PlayerText = ^4Meta Knight^0 can take advantage of his wings and sword to outpace the rest.

^4Ability:^0 Sword
Press spin to swing Meta Knight's sword. It has different uses when in dash mode! Custom 2 can be used in the air as well. His sword can also break walls and floors!

^4Tip:^0 Meta Knight can jump out of his dash mode lunge, though he'll suffer from reduced control.
#

# Kirby stuff
# Ducking
State S_KIRBY_DUCK
SpriteName = SPR_PLAY
SpriteFrame = SPR2_DUCK
Next = S_KIRBY_DUCK
Duration = -1
Var1 = 0
Var2 = 0

# Slide state
State S_KIRBY_SLIDE
SpriteName = SPR_PLAY
SpriteFrame = SPR2_SLID
Next = S_KIRBY_SLIDE
Duration = -1
Var1 = 0
Var2 = 0

# Death states
State S_KIRBY_DEATHTUMBLE
SpriteName = SPR_PLAY
SpriteFrame = SPR2_TMBL
Next = S_KIRBY_DEATHTUMBLE
Duration = 1
Var1 = 0
Var2 = 0

# Swim states
State S_KIRBY_SWIM
SpriteName = SPR_PLAY
SpriteFrame = SPR2_SWIM
Next = S_KIRBY_SWIM
Duration = 4
Var1 = 0
Var2 = 0

# Minecart
State S_KIRBY_MINECART
SpriteName = SPR_PLAY
SpriteFrame = SPR2_MINE
Next = S_KIRBY_MINECART
Duration = -1
Var1 = 0
Var2 = 0


# Meta Knight stuff
Object MT_METASWORD
Speed = 60*FRACUNIT
SpawnState = S_METASWORD
SpawnHealth = 1
DeathState = S_NULL
Radius = 16*FRACUNIT
Height = 24*FRACUNIT
Flags = MF_MISSILE|MF_NOGRAVITY|MF_NOCLIPHEIGHT|MF_NOSECTOR

State S_METASWORD
SpriteName = SPR_PLAY
SpriteFrame = A
Next = S_NULL
Duration = 1
Var1 = 0
Var2 = 0

Object MT_METAMASK
SpawnState = S_METAMASK
Radius = 16*FRACUNIT
Height = 24*FRACUNIT
Flags = MF_NOCLIP|MF_NOCLIPHEIGHT|MF_NOCLIPTHING

State S_METAMASK
SpriteName = SPR_PLAY
SpriteFrame = SPR2_TMBL
Next = S_NULL
Duration = 70
Var1 = 0
Var2 = 0

State S_META_SWORD1
SpriteName = SPR_PLAY
SpriteFrame = SPR2_MLEE
Next = S_META_SWORD2
Duration = 1
Var1 = 0
Var2 = 0

State S_META_SWORD2
SpriteName = SPR_PLAY
SpriteFrame = SPR2_MLEE
Next = S_META_SWORD3
Duration = 1
Var1 = 0
Var2 = 0

State S_META_SWORD3
SpriteName = SPR_PLAY
SpriteFrame = SPR2_MLEE
Next = S_META_SWORD4
Duration = 1
Var1 = 0
Var2 = 0

State S_META_SWORD4
SpriteName = SPR_PLAY
SpriteFrame = SPR2_MLEE
Next = S_META_SWORD5
Duration = 1
Var1 = 0
Var2 = 0

State S_META_SWORD5
SpriteName = SPR_PLAY
SpriteFrame = SPR2_MLEE
Next = S_META_SWORD6
Duration = 1
Var1 = 0
Var2 = 0

State S_META_SWORD6
SpriteName = SPR_PLAY
SpriteFrame = SPR2_MLEE
Next = S_META_SWORD7
Duration = 1
Var1 = 0
Var2 = 0

State S_META_SWORD7
SpriteName = SPR_PLAY
SpriteFrame = SPR2_MLEE
Next = S_PLAY_STND
Duration = 10
Var1 = 0
Var2 = 0

State S_META_SWORDA1
SpriteName = SPR_PLAY
SpriteFrame = SPR2_MLEE
Next = S_META_SWORDA2
Duration = 1
Var1 = 0
Var2 = 0

State S_META_SWORDA2
SpriteName = SPR_PLAY
SpriteFrame = SPR2_MLEE
Next = S_META_SWORDA3
Duration = 1
Var1 = 0
Var2 = 0

State S_META_SWORDA3
SpriteName = SPR_PLAY
SpriteFrame = SPR2_MLEE
Next = S_META_SWORDA4
Duration = 1
Var1 = 0
Var2 = 0

State S_META_SWORDA4
SpriteName = SPR_PLAY
SpriteFrame = SPR2_MLEE
Next = S_META_SWORDA5
Duration = 1
Var1 = 0
Var2 = 0

State S_META_SWORDA5
SpriteName = SPR_PLAY
SpriteFrame = SPR2_MLEE
Next = S_META_SWORDA6
Duration = 1
Var1 = 0
Var2 = 0

State S_META_SWORDA6
SpriteName = SPR_PLAY
SpriteFrame = SPR2_MLEE
Next = S_PLAY_STND
Duration = 11
Var1 = 0
Var2 = 0

State S_META_SWORDSPIN
SpriteName = SPR_PLAY
SpriteFrame = SPR2_TWIN|FF_ANIMATE
Next = S_PLAY_FALL
Duration = 16
Var1 = 7
Var2 = 1

State S_META_LUNGE1
SpriteName = SPR_PLAY
SpriteFrame = SPR2_MLEE
Next = S_META_LUNGE2
Duration = 5
Var1 = 0
Var2 = 0

State S_META_LUNGE2
SpriteName = SPR_PLAY
SpriteFrame = SPR2_MLEE
Next = S_META_LUNGE2
Duration = -1
Var1 = 0
Var2 = 0

State S_META_SWORD_EX_1
SpriteName = SPR_PLAY
SpriteFrame = SPR2_MLEE
Next = S_META_SWORD_EX_2
Duration = 1
Var1 = 0
Var2 = 0

State S_META_SWORD_EX_2
SpriteName = SPR_PLAY
SpriteFrame = SPR2_MLEE
Next = S_META_SWORD_EX_2
Duration = -1
Var1 = 0
Var2 = 0

State S_META_SWORD_EX_FINAL
SpriteName = SPR_PLAY
SpriteFrame = SPR2_MLEE
Next = S_META_SWORD_EX_FINAL
Duration = -1
Var1 = 0
Var2 = 0

State S_META_DTHRUST1
SpriteName = SPR_PLAY
SpriteFrame = SPR2_MLEL
Next = S_META_DTHRUST2
Duration = 2
Var1 = 0
Var2 = 0

State S_META_DTHRUST2
SpriteName = SPR_PLAY
SpriteFrame = SPR2_MLEL
Next = S_META_DTHRUST2
Duration = -1
Var1 = 0
Var2 = 0

State S_META_DTHRUST_END
SpriteName = SPR_PLAY
SpriteFrame = SPR2_MLEL
Next = S_META_DTHRUST_END
Duration = -1
Var1 = 0
Var2 = 0

State S_META_FLAP1
SpriteName = SPR_PLAY
SpriteFrame = SPR2_FLY
Next = S_META_FLAP2
Duration = 2
Var1 = 0
Var2 = 0

State S_META_FLAP2
SpriteName = SPR_PLAY
SpriteFrame = SPR2_FLY
Next = S_META_FLAP3
Duration = 1
Var1 = 0
Var2 = 0

State S_META_FLAP3
SpriteName = SPR_PLAY
SpriteFrame = SPR2_FLY
Next = S_META_FLAP4
Duration = 1
Var1 = 0
Var2 = 0

State S_META_FLAP4
SpriteName = SPR_PLAY
SpriteFrame = SPR2_FLY
Next = S_META_FLAP5
Duration = 2
Var1 = 0
Var2 = 0

State S_META_FLAP5
SpriteName = SPR_PLAY
SpriteFrame = SPR2_FLY
Next = S_PLAY_SPRING
Duration = 2
Var1 = 0
Var2 = 0

State S_META_CHARGE
SpriteName = SPR_PLAY
SpriteFrame = SPR2_FIRE
Next = S_META_CHARGE
Duration = 1
Var1 = 0
Var2 = 0

State S_META_TORNADO
SpriteName = SPR_PLAY
SpriteFrame = SPR2_SPIN
Next = S_META_TORNADO
Duration = -1
Var1 = 0
Var2 = 0

Object MT_METACAPE
SpawnState = S_METACAPE_UP
Radius = 16*FRACUNIT
Height = 24*FRACUNIT
DispOffset = 1
Flags = MF_NOCLIP|MF_NOCLIPHEIGHT|MF_NOCLIPTHING|MF_NOGRAVITY

Object MT_METALOWCAPE
SpawnState = S_METACAPE_UP
Radius = 16*FRACUNIT
Height = 24*FRACUNIT
DispOffset = -1
Flags = MF_NOCLIP|MF_NOCLIPHEIGHT|MF_NOCLIPTHING|MF_NOGRAVITY

State S_METACAPE_UP
SpriteName = SPR_PLAY
SpriteFrame = SPR2_TAL0
Next = S_METACAPE_UP
Duration = 4
Var1 = 0
Var2 = 0

State S_METACAPE_DOWN
SpriteName = SPR_PLAY
SpriteFrame = SPR2_TAL1
Next = S_METACAPE_DOWN
Duration = 4
Var1 = 0
Var2 = 0

State S_METACAPE_FAST
SpriteName = SPR_PLAY
SpriteFrame = SPR2_TAL2
Next = S_METACAPE_FAST
Duration = 4
Var1 = 0
Var2 = 0

State S_METACAPE_WALK
SpriteName = SPR_PLAY
SpriteFrame = SPR2_TAL3
Next = S_METACAPE_WALK
Duration = 4
Var1 = 0
Var2 = 0

State S_METACAPE_STND
SpriteName = SPR_PLAY
SpriteFrame = SPR2_TAL4
Next = S_METACAPE_STND
Duration = 4
Var1 = 0
Var2 = 0

State S_METACAPE_WAIT
SpriteName = SPR_PLAY
SpriteFrame = SPR2_TAL5
Next = S_METACAPE_WAIT
Duration = 4
Var1 = 0
Var2 = 0

State S_METACAPE_MINE
SpriteName = SPR_PLAY
SpriteFrame = SPR2_TAL6
Next = S_METACAPE_MINE
Duration = 4
Var1 = 0
Var2 = 0

State S_METACAPE_DEAD
SpriteName = SPR_PLAY
SpriteFrame = SPR2_BNCE
Next = S_METACAPE_DEAD
Duration = 4
Var1 = 0
Var2 = 0

Object MT_METASHOOT
Speed = 60*FRACUNIT
SpawnState = S_METASHOOT
SpawnHealth = 1
DeathState = S_NULL
Radius = 16*FRACUNIT
Height = 32*FRACUNIT
Flags = MF_MISSILE|MF_NOGRAVITY

Object MT_METABIGSHOOT
Speed = 60*FRACUNIT
SpawnState = S_METABIGSHOOT
SpawnHealth = 1
DeathState = S_NULL
Radius = 32*FRACUNIT
Height = 64*FRACUNIT
Flags = MF_MISSILE|MF_NOGRAVITY

Object MT_METASHOOTEFF
SpawnState = S_METASHOOTEFF
SpawnHealth = 1
Radius = 1
Height = 1
Flags = MF_NOBLOCKMAP|MF_NOGRAVITY|MF_NOCLIP|MF_NOCLIPHEIGHT

State S_METASHOOT
SpriteName = SPR_MTKS
SpriteFrame = A|FF_PAPERSPRITE
Next = S_METASHOOT
Duration = -1
Var1 = 0
Var2 = 0

State S_METABIGSHOOT
SpriteName = SPR_MTKS
SpriteFrame = B|FF_PAPERSPRITE
Next = S_METABIGSHOOT
Duration = -1
Var1 = 0
Var2 = 0

State S_METASHOOTEFF
SpriteName = SPR_MTKS
SpriteFrame = C|FF_FULLBRIGHT|FF_ANIMATE
Next = S_NULL
Duration = 3
Var1 = 2
Var2 = 1

#####################################
# SOC_Ball
# Objects/States for ball
#####################################
# Sparkles
Object MT_BALLSPARKLE
SpawnState = S_BALLSPARKLE1
SpawnHealth = 1
Radius = 1
Height = 1
Flags = MF_NOBLOCKMAP|MF_NOGRAVITY|MF_NOCLIP|MF_NOCLIPHEIGHT

State S_BALLSPARKLE1
SpriteName = SPR_KSPK
SpriteFrame = A|FF_FULLBRIGHT|FF_TRANS10
Next = S_BALLSPARKLE2
Duration = 1
Var1 = 0
Var2 = 0

State S_BALLSPARKLE2
SpriteName = SPR_KSPK
SpriteFrame = B|FF_FULLBRIGHT|FF_TRANS10
Next = S_BALLSPARKLE3
Duration = 1
Var1 = 0
Var2 = 0

State S_BALLSPARKLE3
SpriteName = SPR_KSPK
SpriteFrame = C|FF_FULLBRIGHT|FF_TRANS10
Next = S_BALLSPARKLE4
Duration = 1
Var1 = 0
Var2 = 0

State S_BALLSPARKLE4
SpriteName = SPR_KSPK
SpriteFrame = D|FF_FULLBRIGHT|FF_TRANS10
Next = S_BALLSPARKLE5
Duration = 1
Var1 = 0
Var2 = 0

State S_BALLSPARKLE5
SpriteName = SPR_KSPK
SpriteFrame = E|FF_FULLBRIGHT|FF_TRANS20
Next = S_BALLSPARKLE6
Duration = 1
Var1 = 0
Var2 = 0

State S_BALLSPARKLE6
SpriteName = SPR_KSPK
SpriteFrame = D|FF_FULLBRIGHT|FF_TRANS20
Next = S_BALLSPARKLE7
Duration = 1
Var1 = 0
Var2 = 0

State S_BALLSPARKLE7
SpriteName = SPR_KSPK
SpriteFrame = C|FF_FULLBRIGHT|FF_TRANS40
Next = S_BALLSPARKLE8
Duration = 1
Var1 = 0
Var2 = 0

State S_BALLSPARKLE8
SpriteName = SPR_KSPK
SpriteFrame = B|FF_FULLBRIGHT|FF_TRANS60
Next = S_BALLSPARKLE9
Duration = 1
Var1 = 0
Var2 = 0

State S_BALLSPARKLE9
SpriteName = SPR_KSPK
SpriteFrame = A|FF_FULLBRIGHT|FF_TRANS80
Next = S_NULL
Duration = 1
Var1 = 0
Var2 = 0
