# W5 CTL generated by tools/ctl/control_lines.cpp (tools/ctl/gen_lines.sh) from platform/sdk/input/np_control_table.h: every line of the controls page
# (modern, rear touch off, touch minigames off) pressed in its context; the engine's action is read from the [ctl] counters.
# Run with MSC_CONTROLS=modern MSC_REAR_TOUCH=0 MSC_TOUCH_MINIGAMES=0 MSC_ITEM_TEST=1.
checkdef L0T0 4 modern | CROSS | with the ball: PASS -> cpass
checkdef L0T1 4 modern | CROSS | they have the ball: SWITCH PLAYER (HOLD: CAPTAIN) -> cswitch
checkdef L0T2 4 modern | CROSS | they have the ball: SWITCH PLAYER (HOLD: CAPTAIN) -> ccaptain
checkdef L1T0 4 modern | CIRCLE | with the ball: SHOOT (HOLD: CHARGE) -> cshot
checkdef L1T1 4 modern | CIRCLE | they have the ball: SLIDE TACKLE -> cslide
checkdef L2T0 4 modern | SQUARE | with the ball: LOB PASS -> clob
checkdef L2T1 4 modern | SQUARE | they have the ball: BIG HIT -> chit
checkdef L3T0 4 modern | TRIANGLE | with the ball: USE NEXT ITEM / SUPER ABILITY -> citem
checkdef L3T1 4 modern | TRIANGLE | they have the ball: USE NEXT ITEM / SUPER ABILITY -> citem
checkdef L4T0 4 modern | R | with the ball: CHIP AHEAD AND RUN (TURBO) -> cturbo
checkdef L5T0 4 modern | R + CROSS/CIRCLE | with the ball: LOB PASS / CHIP SHOT -> clob
checkdef L5T1 4 modern | R + CROSS/CIRCLE | with the ball: LOB PASS / CHIP SHOT -> cchip
checkdef L6T0 4 modern | L | with the ball: AS R (L + CIRCLE: CHIP SHOT) -> cturbo
checkdef L6T1 4 modern | L | with the ball: AS R (L + CIRCLE: CHIP SHOT) -> cchip
checkdef L6T2 4 modern | L | they have the ball: SWITCH PLAYER (HOLD: CAPTAIN) -> cswitch
checkdef L6T3 4 modern | L | they have the ball: SWITCH PLAYER (HOLD: CAPTAIN) -> ccaptain
checkdef L14T0 4 modern | RIGHT STICK | with the ball: DEKE (FLICK) -> cdeke
checkdef L15T0 4 modern | D-PAD | with the ball: DEKE -> cdeke
checkdef L15T1 4 modern | D-PAD | they have the ball: SLIDE TACKLE -> cslide
checkdef L16T0 4 modern | SELECT | with the ball: NEXT ITEM -> ccycle
checkdef L16T1 4 modern | SELECT | they have the ball: NEXT ITEM -> ccycle
checkdef L17T0 4 modern | BACK RIGHT TAP | with the ball: - (NEVER PASSES) -> =cpass (switched off: must do nothing)
checkdef L17T1 4 modern | BACK RIGHT TAP | they have the ball: SWITCH PLAYER -> cswitch (switched off: must do nothing)
checkdef L18T0 4 modern | BACK LEFT TAP | with the ball: NEXT ITEM -> ccycle (switched off: must do nothing)
checkdef L18T1 4 modern | BACK LEFT TAP | they have the ball: NEXT ITEM -> ccycle (switched off: must do nothing)
checkdef L19T0 4 modern | START | open play: PAUSE -> paused
checkdef L19T1 4 modern | START | pause menu: PAUSE -> -paused
checkdef L20T0 12 modern | MEGA STRIKE | captain with the ball: CAPTAIN HOLDS CIRCLE, THEN CIRCLE ON EACH MARK -> cmega
checkdef L20T1 4 modern | MEGA STRIKE | own Mega Strike meter: CAPTAIN HOLDS CIRCLE, THEN CIRCLE ON EACH MARK -> cmeterpress
checkdef L20T2 4 modern | MEGA STRIKE | own Mega Strike meter: CAPTAIN HOLDS CIRCLE, THEN CIRCLE ON EACH MARK -> cmeterpress (switched off: must do nothing)
checkdef L22T0 4 modern | MEGA SAVE | Mega Save: AIM WITH A STICK, BLOCK WITH CROSS OR R -> csavea
checkdef L22T1 4 modern | MEGA SAVE | Mega Save: AIM WITH A STICK, BLOCK WITH CROSS OR R -> csavea
checkdef L22T2 4 modern | MEGA SAVE | Mega Save: AIM WITH A STICK, BLOCK WITH CROSS OR R -> csavea (switched off: must do nothing)
checkdef L23T0 4 modern | THEIR MEGA STRIKE | their Mega Strike meter: MASH SQUARE, TRIANGLE OR SELECT -> cshake
checkdef L23T1 4 modern | THEIR MEGA STRIKE | their Mega Strike meter: MASH SQUARE, TRIANGLE OR SELECT -> cshake
checkdef L23T2 4 modern | THEIR MEGA STRIKE | their Mega Strike meter: MASH SQUARE, TRIANGLE OR SELECT -> cshake
checkdef L23T3 4 modern | THEIR MEGA STRIKE | their Mega Strike meter: MASH SQUARE, TRIANGLE OR SELECT -> cshake (switched off: must do nothing)
checkdef L23T4 4 modern | THEIR MEGA STRIKE | their Mega Strike meter: MASH SQUARE, TRIANGLE OR SELECT -> cshake (switched off: must do nothing)
checkdef L25T0 4 modern | MENUS | main menu: CROSS OK, CIRCLE BACK, D-PAD/STICKS MOVE, L/R PAGE, A FINGER POINTS -> scene
checkdef L25T1 4 modern | MENUS | options menu: CROSS OK, CIRCLE BACK, D-PAD/STICKS MOVE, L/R PAGE, A FINGER POINTS -> -scene
checkdef L25T2 4 modern | MENUS | main menu: CROSS OK, CIRCLE BACK, D-PAD/STICKS MOVE, L/R PAGE, A FINGER POINTS -> ~onctx
checkdef L25T3 4 modern | MENUS | main menu: CROSS OK, CIRCLE BACK, D-PAD/STICKS MOVE, L/R PAGE, A FINGER POINTS -> scene
vmash cross 20 scene == 0
log STATE title screen
vmash cross 30 scene != 0
wait scene == 1
wait scene == 10 || nbuttons >= 8
if scene == 10
wait nbuttons >= 2
idle 10
vmash cross 30 scene == 1
wait nbuttons >= 8
endif
wait onctx == 0 1800
log STATE main menu
idle 30
repeat 6
if $L25T0 == 0 && $L25T0f < 4 && scene == 1 && nbuttons >= 8
log TRY L25T0
expect scene up
vpress cross 3 0
check L25T0 150
endif
try wait nbuttons >= 8 900
idle 30
if $L25T1 == 0 && $L25T1f < 4 && scene == 27 && nbuttons >= 8
log TRY L25T1
expect scene down
vpress circle 3 0
check L25T1 150
endif
try wait nbuttons >= 8 900
idle 30
if $L25T2 == 0 && $L25T2f < 4 && scene == 1 && nbuttons >= 8
log TRY L25T2
expect onctx changed
vpress down 1 0
check L25T2 150
endif
try wait nbuttons >= 8 900
idle 30
if $L25T3 == 0 && $L25T3f < 4 && scene == 1 && nbuttons >= 8
log TRY L25T3
expect scene up
touch 474 58 3 0
check L25T3 150
endif
try wait nbuttons >= 8 900
idle 30
if scene == 27
vpress circle 3 10
try wait scene == 1 600
try wait nbuttons >= 8 900
idle 30
endif
if scene == 1
idle 10
endif
endrepeat
log STATE menus done
launch mode=friendly stadium=0 home=0 away=7 hsk=0,1,2 ask=3,4,5 human=0 skill=2 time=600
wait ingame == 1 4000
log STATE match object
wait gs == 5 6000
log STATE open play
stopwhen $open == 0
repeat 4000
if $L22T0 == 0 && $L22T0f < 4 && cmode == 1
log TRY L22T0
expect csavea up
vpress cross 3 0
check L22T0 45
endif
if $L22T1 == 0 && $L22T1f < 4 && cmode == 1
log TRY L22T1
expect csavea up
idle 3
vpress r 3 0
check L22T1 45
endif
if $L22T2 == 0 && $L22T2f < 4 && cmode == 1
log TRY L22T2
expect csavea same
touch 480 300 3 0
check L22T2 45
endif
if $L23T0 == 0 && $L23T0f < 4 && cmode == 3
log TRY L23T0
expect cshake up
vpress square 3 0
check L23T0 45
endif
if $L23T1 == 0 && $L23T1f < 4 && cmode == 3
log TRY L23T1
expect cshake up
vpress triangle 3 0
check L23T1 45
endif
if $L23T2 == 0 && $L23T2f < 4 && cmode == 3
log TRY L23T2
expect cshake up
vpress select 3 0
check L23T2 45
endif
if $L23T3 == 0 && $L23T3f < 4 && cmode == 3
log TRY L23T3
expect cshake same
rtouch 220 272 3 0
check L23T3 45
endif
if $L23T4 == 0 && $L23T4f < 4 && cmode == 3
log TRY L23T4
expect cshake same
swipe 300 300 420 300 6 0
check L23T4 45
endif
if $L20T1 == 0 && $L20T1f < 4 && cmode == 2
log TRY L20T1
expect cmeterpress up
idle 3
vpress circle 3 0
check L20T1 45
endif
if $L20T2 == 0 && $L20T2f < 4 && cmode == 2
log TRY L20T2
expect cmeterpress same
idle 3
touch 480 272 6 0
check L20T2 45
endif
if $L20T0 == 0 && $L20T0f < 12 && chave == 1 && cplayer == 0 && cmode == 0 && paused == 0
log TRY L20T0
expect cmega up
vchase 15 none goal
try vmash circle 1 cmode == 2 || chave == 0 200
check L20T0 60
endif
if $L20T1 == 0 && $L20T1f < 4 && cmode == 2
log TRY L20T1
expect cmeterpress up
idle 3
vpress circle 3 0
check L20T1 45
endif
if $L20T2 == 0 && $L20T2f < 4 && cmode == 2
log TRY L20T2
expect cmeterpress same
idle 3
touch 480 272 6 0
check L20T2 45
endif
if $L19T0 == 0 && $L19T0f < 4 && gs == 5 && cmode == 0 && paused == 0
log TRY L19T0
expect paused up
vpress start 3 0
check L19T0 90
endif
if $L19T1 == 0 && $L19T1f < 4 && paused == 1
log TRY L19T1
expect paused down
idle 20
vpress start 3 0
check L19T1 90
endif
if $L0T0 == 0 && $L0T0f < 4 && chave == 1 && cplayer != 4 && cplayer != 0 && cmode == 0 && paused == 0
log TRY L0T0
expect cpass up
vchase 8 none goal
vpress cross 3 0
check L0T0 45
endif
if $L1T0 == 0 && $L1T0f < 4 && chave == 1 && cplayer != 4 && cplayer != 0 && cmode == 0 && paused == 0
log TRY L1T0
expect cshot up
vchase 8 none goal
vchase 6 circle goal
check L1T0 45
endif
if $L2T0 == 0 && $L2T0f < 4 && chave == 1 && cplayer != 4 && cplayer != 0 && cmode == 0 && paused == 0
log TRY L2T0
expect clob up
vchase 8 none goal
vpress square 3 0
check L2T0 45
endif
if $L3T0 == 0 && $L3T0f < 4 && chave == 1 && cplayer != 4 && cplayer != 0 && cmode == 0 && paused == 0
log TRY L3T0
item me green 1 set
idle 10
expect citem up
vchase 8 none goal
vpress triangle 3 0
check L3T0 45
endif
if $L4T0 == 0 && $L4T0f < 4 && chave == 1 && cplayer != 4 && cplayer != 0 && cmode == 0 && paused == 0
log TRY L4T0
expect cturbo up
vchase 8 none goal
vchase 3 r goal
check L4T0 45
endif
if $L5T0 == 0 && $L5T0f < 4 && chave == 1 && cplayer != 4 && cplayer != 0 && cmode == 0 && paused == 0
log TRY L5T0
expect clob up
vchase 8 none goal
vpress r+cross 3 0
check L5T0 45
endif
if $L5T1 == 0 && $L5T1f < 4 && chave == 1 && cplayer != 4 && cplayer != 0 && cmode == 0 && paused == 0
log TRY L5T1
expect cchip up
vchase 8 none goal
vchase 6 r+circle goal
vchase 4 r goal
check L5T1 45
endif
if $L6T0 == 0 && $L6T0f < 4 && chave == 1 && cplayer != 4 && cplayer != 0 && cmode == 0 && paused == 0
log TRY L6T0
expect cturbo up
vchase 8 none goal
vchase 3 l goal
check L6T0 45
endif
if $L6T1 == 0 && $L6T1f < 4 && chave == 1 && cplayer != 4 && cplayer != 0 && cmode == 0 && paused == 0
log TRY L6T1
expect cchip up
vchase 8 none goal
vchase 6 l+circle goal
vchase 4 l goal
check L6T1 45
endif
if $L14T0 == 0 && $L14T0f < 4 && chave == 1 && cplayer != 4 && cplayer != 0 && cmode == 0 && paused == 0
log TRY L14T0
expect cdeke up
vchase 8 none goal
vchase 4 none goal 72 0
check L14T0 45
endif
if $L15T0 == 0 && $L15T0f < 4 && chave == 1 && cplayer != 4 && cplayer != 0 && cmode == 0 && paused == 0
log TRY L15T0
expect cdeke up
vchase 8 none goal
vhold 3 right
check L15T0 45
endif
if $L16T0 == 0 && $L16T0f < 4 && chave == 1 && cplayer != 4 && cplayer != 0 && cmode == 0 && paused == 0
log TRY L16T0
item me green 1 set
item me banana 1 add
idle 10
expect ccycle up
vchase 8 none goal
vpress select 3 0
check L16T0 45
endif
if $L17T0 == 0 && $L17T0f < 4 && chave == 1 && cplayer != 4 && cplayer != 0 && cmode == 0 && paused == 0
log TRY L17T0
expect cpass same
vchase 8 none goal
rtouch 720 272 3 0
check L17T0 45
endif
if $L18T0 == 0 && $L18T0f < 4 && chave == 1 && cplayer != 4 && cplayer != 0 && cmode == 0 && paused == 0
log TRY L18T0
item me green 1 set
item me banana 1 add
idle 10
expect ccycle same
vchase 8 none goal
rtouch 220 272 3 0
check L18T0 45
endif
if $L0T1 == 0 && $L0T1f < 4 && cball == 1 && cmode == 0 && paused == 0
log TRY L0T1
expect cswitch up
vpress cross 3 0
check L0T1 45
endif
if $L0T2 == 0 && $L0T2f < 4 && cball == 1 && cmode == 0 && paused == 0 && cplayer != 0
log TRY L0T2
expect ccaptain up
vhold 24 cross
check L0T2 45
endif
if $L1T1 == 0 && $L1T1f < 4 && cball == 1 && cmode == 0 && paused == 0
log TRY L1T1
expect cslide up
vchase 20 none ball
vpress circle 3 0
check L1T1 45
endif
if $L2T1 == 0 && $L2T1f < 4 && cball == 1 && cmode == 0 && paused == 0
log TRY L2T1
expect chit up
vchase 20 none ball
vpress square 3 0
check L2T1 45
endif
if $L3T1 == 0 && $L3T1f < 4 && cball == 1 && cmode == 0 && paused == 0
log TRY L3T1
item me green 1 set
idle 10
expect citem up
vpress triangle 3 0
check L3T1 45
endif
if $L6T2 == 0 && $L6T2f < 4 && cball == 1 && cmode == 0 && paused == 0
log TRY L6T2
expect cswitch up
vpress l 3 0
check L6T2 45
endif
if $L6T3 == 0 && $L6T3f < 4 && cball == 1 && cmode == 0 && paused == 0 && cplayer != 0
log TRY L6T3
expect ccaptain up
vhold 24 l
check L6T3 45
endif
if $L15T1 == 0 && $L15T1f < 4 && cball == 1 && cmode == 0 && paused == 0
log TRY L15T1
expect cslide up
vchase 20 none ball
vhold 3 right
check L15T1 45
endif
if $L16T1 == 0 && $L16T1f < 4 && cball == 1 && cmode == 0 && paused == 0
log TRY L16T1
item me green 1 set
item me banana 1 add
idle 10
expect ccycle up
vpress select 3 0
check L16T1 45
endif
if $L17T1 == 0 && $L17T1f < 4 && cball == 1 && cmode == 0 && paused == 0
log TRY L17T1
expect cswitch same
rtouch 720 272 3 0
check L17T1 45
endif
if $L18T1 == 0 && $L18T1f < 4 && cball == 1 && cmode == 0 && paused == 0
log TRY L18T1
item me green 1 set
item me banana 1 add
idle 10
expect ccycle same
rtouch 220 272 3 0
check L18T1 45
endif
if cmode == 1
try vmash cross 8 cmode != 1 600
endif
if cmode == 2
try vmash circle 10 cmode != 2 300
endif
if cmode == 3
try vmash select 6 cmode != 3 600
endif
if paused == 1
vpress start 3 30
endif
if chave == 1 && cplayer == 4
vpress cross 3 20
endif
if chave == 1 && cplayer != 4 && cplayer != 0
vchase 10 none goal
vpress cross 3 15
endif
if chave == 1 && cplayer == 0
vchase 20 none goal
vchase 6 circle goal
endif
if chave == 0 && cplayer != 0 && cball != 1
vhold 18 cross
endif
if chave == 0
vchase 12 none ball
endif
idle 2
endrepeat
log STATE script end
exit
