;-| Button Remapping |-----------------------------------------------------
; This section lets you remap the player's buttons (to easily change the
; button configuration). The format is:
;   old_button = new_button
; If new_button is left blank, the button cannot be pressed.

[ReMap]
a = a
b = b
c = c
x = x
y = y
z = z
s = s

[Defaults]
Command.Time = 10
Command.Buffer.Time = 1

[command]
name = "Final Atomic Buster x"
command = ~D, DB, B, D, DB, B, x
time = 40

[command]
name = "Final Atomic Buster y"
command = ~D, DB, B, D, DB, B, y
time = 40

[command]
name = "Final Atomic Buster z"
command = ~D, DB, B, D, DB, B, z
time = 40

[command]
name = "Super Aerial Russian Slam a"
command = ~D, DF, F, D, DF, F, a
time = 40

[command]
name = "Super Aerial Russian Slam b"
command = ~D, DF, F, D, DF, F, b
time = 40

[command]
name = "Super Aerial Russian Slam c"
command = ~D, DF, F, D, DF, F, c
time = 40

[command]
name = "Ultra Final Atomic Buster"
command = ~B, F, a
time = 15

[command]
name = "Ultra Final Atomic Buster"
command = ~B, F, b
time = 15

[command]
name = "Ultra Final Atomic Buster"
command = ~B, F, c
time = 15

[command]
name = "Atomic Suplex a"
command = ~D, DB, B, a
time = 15

[command]
name = "Atomic Suplex b"
command = ~D, DB, B, b
time = 15

[command]
name = "Atomic Suplex c"
command = ~D, DB, B, c
time = 15

[command]
name = "Screw Piledriver x"
command = ~D, DB, B, x
time = 15

[command]
name = "Screw Piledriver y"
command = ~D, DB, B, y
time = 15

[command]
name = "Screw Piledriver z"
command = ~D, DB, B, z
time = 15

[command]
name = "Aerial Russian Slam a"
command = ~D, DF, F, a
time = 15

[command]
name = "Aerial Russian Slam b"
command = ~D, DF, F, b
time = 15

[command]
name = "Aerial Russian Slam c"
command = ~D, DF, F, c
time = 15

[Command]
name = "Banishing Flat x"
command = ~F, D, DF, x
time = 15

[Command]
name = "Banishing Flat x"
command = ~F, D, DF, ~x
time = 15

[Command]
name = "Banishing Flat y"
command = ~F, D, DF, y
time = 15

[Command]
name = "Banishing Flat y"
command = ~F, D, DF, ~y
time = 15

[Command]
name = "Banishing Flat z"
command = ~F, D, DF, z
time = 15

[Command]
name = "Banishing Flat z"
command = ~F, D, DF, ~z
time = 15

[Command]
name = "Quick Double Lariat"
command = a+b+c
time = 1

[Command]
name = "Double Lariat"
command = x+y+z
time = 1

[Command]
name = "FF"
command = F, F
time = 10

[Command]
Name = "Zero Counter"
Command	= /$F, x+a
Time = 5

[Command]
Name = "Zero Counter"
Command	= /$F, y+b
Time = 5

[Command]
Name = "Zero Counter"
Command	= /$F, z+c
Time = 5

[Command]
name = "Roll"
command = a+x
time = 1

[Command]
name = "recovery"
command = a+b
time = 1

[Command]
name = "recovery"
command = a+c
time = 1

[Command]
name = "recovery"
command = b+c
time = 1

[Command]
name = "recovery"
command = x+y
time = 1

[Command]
name = "recovery"
command = x+z
time = 1

[Command]
name = "recovery"
command = y+z
time = 1

[Command]
Name = "2 K"
Command = a+b
Time = 1

[Command]
Name = "2 K"
Command = b+c
Time = 1

[Command]
Name = "2 K"
Command = a+c
Time = 1

[Command]
Name = "2 P"
Command = x+y
Time = 1

[Command]
Name = "2 P"
Command = y+z
Time = 1

[Command]
Name = "2 P"
Command = x+z
Time = 1

[Command]
name = "a"
command = a
time = 1

[Command]
name = "b"
command = b
time = 1

[Command]
name = "c"
command = c
time = 1

[Command]
name = "x"
command = x
time = 1

[Command]
name = "y"
command = y
time = 1

[Command]
name = "z"
command = z
time = 1

[Command]
name = "start"
command = s
time = 1

[Command]
name = "a1"
command = a
time = 1
buffer.time = 1

[Command]
name = "b1"
command = b
time = 1
buffer.time = 1

[Command]
name = "c1"
command = c
time = 1
buffer.time = 1

[Command]
name = "x1"
command = x
time = 1
buffer.time = 1

[Command]
name = "y1"
command = y
time = 1
buffer.time = 1

[Command]
name = "z1"
command = z
time = 1
buffer.time = 1

[Command]
name = "holda"
command = /a
time = 1
buffer.time = 1

[Command]
name = "holdb"
command = /b
time = 1
buffer.time = 1

[Command]
name = "holdc"
command = /c
time = 1
buffer.time = 1

[Command]
name = "holdx"
command = /x
time = 1
buffer.time = 1

[Command]
name = "holdy"
command = /y
time = 1
buffer.time = 1

[Command]
name = "holdz"
command = /z
time = 1
buffer.time = 1

[Command]
name = "~a"
command = ~a
time = 1

[Command]
name = "~b"
command = ~b
time = 1

[Command]
name = "~c"
command = ~c
time = 1

[Command]
name = "~x"
command = ~x
time = 1

[Command]
name = "~y"
command = ~y
time = 1

[Command]
name = "~z"
command = ~z
time = 1

[Command]
name = "F"
command = F
time = 1
buffer.time = 1

[Command]
name = "D"
command = D
time = 1
buffer.time = 1

[Command]
name = "holdfwd"
command = /$F
time = 1
buffer.time = 1

[Command]
name = "holdback"
command = /$B
time = 1
buffer.time = 1

[Command]
name = "holdup"
command = /$U
time = 1
buffer.time = 1

[Command]
name = "holddown"
command = /$D
time = 1
buffer.time = 1

[Command]
name = "release F"
command = ~$F
time = 1
buffer.time = 1

[Command]
name = "release D"
command = ~$D
time = 1
buffer.time = 1

[Statedef -1]

[State -1, Ultra Final Atomic Buster]
Type = ChangeState
TriggerAll = 0;power >= 3000 && Command = "Ultra Final Atomic Buster"
Trigger1 = StateType != a && (ctrl || stateno = 40 || stateno = 52) && stateno != 100
trigger2 = var(5)
Value = 3000

[State -1, Final Atomic Buster]
Type = ChangeState
TriggerAll = power >= 1000 && (Command = "Final Atomic Buster x" || command = "Final Atomic Buster y" || command = "Final Atomic Buster z")
Trigger1 = StateType != a && (ctrl || stateno = 40 || stateno = 52) && stateno != 100
trigger2 = var(5)
Value = ifelse(command = "Final Atomic Buster z" && power >= 3000, 3120, ifelse((command = "Final Atomic Buster y" || command = "Final Atomic Buster z") && power >= 2000, 3110, 3100))

[State -1, Super Aerial Russian Slam]
Type = ChangeState
TriggerAll = power >= 1000 && (Command = "Super Aerial Russian Slam a" || command = "Super Aerial Russian Slam b" || command = "Super Aerial Russian Slam c")
Trigger1 = StateType != a && (Ctrl || stateno = 52)
trigger2 = var(5)
Value = 3000
anim = ifelse(command = "Super Aerial Russian Slam c" && power >= 3000, 3002, ifelse((command = "Super Aerial Russian Slam b" || command = "Super Aerial Russian Slam c") && power >= 2000, 3001, 3000))

[State -1, atomic suplex or flying powerbomb]
type = ChangeState
triggerall = command = "Atomic Suplex a" || command = "Atomic Suplex b" || command = "Atomic Suplex c"
trigger1 = statetype != a && (ctrl || stateno = 40 || stateno = 52) && stateno != 100
trigger2 = var(5)
value = 1500
anim = var(10) := ifelse(command = "Atomic Suplex a", 1500, ifelse(command = "Atomic Suplex b", 1510, 1520))

[State -1, screw piledriver]
type = ChangeState
triggerall = command = "Screw Piledriver x" || command = "Screw Piledriver y" || command = "Screw Piledriver z"
trigger1 = statetype != a && (ctrl || stateno = 40 || stateno = 52) && stateno != 100
trigger2 = var(5)
value = 1300
anim = var(10) := ifelse(command = "Screw Piledriver x", 1300, ifelse(command = "Screw Piledriver y", 1310, 1320))

[State -1, quick double lariat]
type = ChangeState
triggerall = command = "Quick Double Lariat" || (command = "~a" && command = "~b" && command = "~c")
trigger1 = statetype != a && (ctrl || stateno = 52) && stateno != 100
trigger2 = var(5)
value = 1100

[State -1, double lariat]
type = ChangeState
triggerall = command = "Double Lariat" || (command = "~x" && command = "~y" && command = "~z")
trigger1 = statetype != a && (ctrl || stateno = 52) && stateno != 100
trigger2 = var(5)
value = 1200

[State -1, Aerial Russian Slam]
Type = ChangeState
TriggerAll = Command = "Aerial Russian Slam a" || command = "Aerial Russian Slam b" || command = "Aerial Russian Slam c"
Trigger1 = StateType != a && (Ctrl || stateno = 52)
trigger2 = var(5)
Value = 1800
anim = ifelse(command = "Aerial Russian Slam c", 1802, ifelse(command = "Aerial Russian Slam b", 1801, 1800))

[State -1, banishing flat]
type = ChangeState
triggerall = command = "Banishing Flat x" || command = "Banishing Flat y" || command = "Banishing Flat z"
trigger1 = statetype != a && (ctrl || stateno = 52) && stateno != 100
trigger2 = var(5)
value = ifelse(command = "Banishing Flat x", 1000, ifelse(command = "Banishing Flat y", 1010, 1020))

[State -1, throws]
Type = ChangeState
TriggerAll = (Command = "holdfwd" || Command = "holdback") && (Command = "2 P" || (Command = "2 K" && statetype != a)) && command != "holdup"
Trigger1 = (Ctrl || stateno = 52) && stateno != 100
Value = IfElse(Command = "2 P", 800 + (Var(0) := IfElse(Command = "holdfwd", 1, 0)) * 0, 820) + 40 * statetype = c + 100 * statetype = a

[State -1, Zero Counter]
Type = ChangeState
TriggerAll = Command = "Zero Counter" && Power >= 1000
Trigger1 = StateNo = 150 || StateNo = 152
Value = 165
IgnoreHitPause = 1

[State -1, roll]
type = ChangeState
triggerall = command = "Roll"
trigger1 = statetype = s && (ctrl || stateno = 52) && stateno != 100
value = 2010

[State -1, Run Fwd]
type = ChangeState
triggerall = command = "FF"
trigger1 = statetype = S && ctrl && stateno != 100
value = 100

[State -1, Jab]
Type = ChangeState
TriggerAll = Command = "x" && Command != "holddown"
Trigger1 = StateType = s && (ctrl || stateno = 52) && stateno != 100
trigger2 = stateno = 400 && animelem = 2, > 1
Value = 200

[State -1, strong]
Type = ChangeState
TriggerAll = Command = "y"
Trigger1 = StateType = s && (ctrl || stateno = 52) && stateno != 100 && Command != "holddown"
Value = ifelse(command = "holdfwd", 510, 210)

[State -1, fierce]
Type = ChangeState
TriggerAll = Command = "z" && Command != "holddown"
Trigger1 = StateType = s && (ctrl || stateno = 52) && stateno != 100
Value = ifelse(command = "holdfwd", 320, 220)

[State -1, short]
Type = ChangeState
TriggerAll = Command = "a" && Command != "holddown"
Trigger1 = StateType = s && (ctrl || stateno = 52) && stateno != 100
trigger2 = stateno = 400 && animelem = 2, > 1
Value = 230

[State -1, forward]
Type = ChangeState
TriggerAll = Command = "b" && Command != "holddown"
Trigger1 = StateType = s && (ctrl || stateno = 52) && stateno != 100
Value = 240

[State -1, roundhouse]
Type = ChangeState
TriggerAll = Command = "c" && Command != "holddown"
Trigger1 = StateType = s && (ctrl || stateno = 52) && stateno != 100
Value = 250

[State -1, c Jab]
Type = ChangeState
TriggerAll = Command = "x" && Command = "holddown"
Trigger1 = StateType = c && ctrl
trigger2 = stateno = 400 && animelem = 2, > 1
Value = 400

[State -1, c strong]
Type = ChangeState
TriggerAll = Command = "y" && Command = "holddown"
Trigger1 = StateType = c && ctrl
Value = 410

[State -1, c fierce]
Type = ChangeState
TriggerAll = Command = "z" && Command = "holddown"
Trigger1 = StateType = c && ctrl
Value = 420

[State -1, c short]
Type = ChangeState
TriggerAll = Command = "a" && Command = "holddown"
Trigger1 = StateType = c && ctrl
trigger2 = stateno = 400 && animelem = 2, > 1
Value = 430

[State -1, c forward]
Type = ChangeState
TriggerAll = Command = "b" && Command = "holddown"
Trigger1 = StateType = c && ctrl
Value = ifelse(command = "holdback", 540, 440)

[State -1, c roundhouse]
Type = ChangeState
TriggerAll = Command = "c" && Command = "holddown"
Trigger1 = StateType = c && ctrl
Value = ifelse(command = "holdback", 550, 450)

[State -1, Taunt]
type = ChangeState
triggerall = command = "start"
trigger1 = statetype != a && (ctrl || stateno = 52) && stateno != 100
trigger2 = var(5)
value = 195

[State -1, j Jab]
Type = ChangeState
TriggerAll = Command = "x"
Trigger1 = StateType = a && ctrl
Value = 600

[State -1, j strong]
Type = ChangeState
TriggerAll = Command = "y"
Trigger1 = StateType = a && ctrl
Value = ifelse(command = "holddown" && pos y < -67, 615, ifelse(!vel x && command = "holdup", 710, 610))

[State -1, j fierce]
Type = ChangeState
TriggerAll = Command = "z"
Trigger1 = StateType = a && ctrl
Value = ifelse(!vel x && command = "holdup", 721, ifelse(!vel x, 620, ifelse(command = "holddown", 725, 720)))

[State -1, j short]
Type = ChangeState
TriggerAll = Command = "a"
Trigger1 = StateType = a && ctrl
Value = ifelse(vel x && command = "holddown", 730, 630)

[State -1, j forward]
Type = ChangeState
TriggerAll = Command = "b"
Trigger1 = StateType = a && ctrl
Value = ifelse(vel x && command = "holddown", 740, 640)

[State -1, j roundhouse]
Type = ChangeState
TriggerAll = Command = "c"
Trigger1 = StateType = a && ctrl
Value = 650
