2019-01-01 20:06:23 +00:00
|
|
|
Route16Gate1F_Script:
|
2024-07-16 17:02:54 +00:00
|
|
|
ld hl, wStatusFlags6
|
|
|
|
res BIT_ALWAYS_ON_BIKE, [hl]
|
2014-05-18 18:19:10 +00:00
|
|
|
call EnableAutoTextBoxDrawing
|
2019-01-01 20:06:23 +00:00
|
|
|
ld a, [wRoute16Gate1FCurScript]
|
|
|
|
ld hl, Route16Gate1F_ScriptPointers
|
2014-05-18 18:19:10 +00:00
|
|
|
jp CallFunctionInTable
|
|
|
|
|
2019-01-01 20:06:23 +00:00
|
|
|
Route16Gate1F_ScriptPointers:
|
2023-07-14 01:27:56 +00:00
|
|
|
def_script_pointers
|
|
|
|
dw_const Route16Gate1FDefaultScript, SCRIPT_ROUTE16GATE1F_DEFAULT
|
|
|
|
dw_const Route16Gate1FPlayerMovingUpScript, SCRIPT_ROUTE16GATE1F_PLAYER_MOVING_UP
|
|
|
|
dw_const Route16Gate1FGuardScript, SCRIPT_ROUTE16GATE1F_GUARD
|
|
|
|
dw_const Route16Gate1FPlayerMovingRightScript, SCRIPT_ROUTE16GATE1F_PLAYER_MOVING_RIGHT
|
2014-05-18 18:19:10 +00:00
|
|
|
|
2023-07-14 01:27:56 +00:00
|
|
|
Route16Gate1FDefaultScript:
|
|
|
|
call Route16Gate1FIsBicycleInBagScript
|
2014-05-18 18:19:10 +00:00
|
|
|
ret nz
|
2023-07-14 01:27:56 +00:00
|
|
|
ld hl, .StopsPlayerCoords
|
2014-05-18 18:19:10 +00:00
|
|
|
call ArePlayerCoordsInArray
|
|
|
|
ret nc
|
2023-07-14 01:27:56 +00:00
|
|
|
ld a, TEXT_ROUTE16GATE1F_GUARD_WAIT_UP
|
2024-09-19 01:01:18 +00:00
|
|
|
ldh [hTextID], a
|
2014-05-18 18:19:10 +00:00
|
|
|
call DisplayTextID
|
|
|
|
xor a
|
2020-07-06 23:03:05 +00:00
|
|
|
ldh [hJoyHeld], a
|
2015-07-18 15:17:29 +00:00
|
|
|
ld a, [wCoordIndex]
|
2014-05-18 18:19:10 +00:00
|
|
|
cp $1
|
2023-07-14 01:27:56 +00:00
|
|
|
jr z, .next_to_counter
|
2015-07-18 15:17:29 +00:00
|
|
|
ld a, [wCoordIndex]
|
2014-05-18 18:19:10 +00:00
|
|
|
dec a
|
2014-09-10 03:55:19 +00:00
|
|
|
ld [wSimulatedJoypadStatesIndex], a
|
2014-05-18 18:19:10 +00:00
|
|
|
ld b, $0
|
|
|
|
ld c, a
|
2015-07-17 07:52:25 +00:00
|
|
|
ld a, D_UP
|
2014-09-10 03:55:19 +00:00
|
|
|
ld hl, wSimulatedJoypadStatesEnd
|
2014-05-18 18:19:10 +00:00
|
|
|
call FillMemory
|
2014-09-10 03:55:19 +00:00
|
|
|
call StartSimulatingJoypadStates
|
2023-07-14 01:27:56 +00:00
|
|
|
ld a, SCRIPT_ROUTE16GATE1F_PLAYER_MOVING_UP
|
2019-01-01 20:06:23 +00:00
|
|
|
ld [wRoute16Gate1FCurScript], a
|
2014-05-18 18:19:10 +00:00
|
|
|
ret
|
2023-07-14 01:27:56 +00:00
|
|
|
.next_to_counter
|
|
|
|
ld a, SCRIPT_ROUTE16GATE1F_GUARD
|
2019-01-01 20:06:23 +00:00
|
|
|
ld [wRoute16Gate1FCurScript], a
|
2014-05-18 18:19:10 +00:00
|
|
|
ret
|
|
|
|
|
2023-07-14 01:27:56 +00:00
|
|
|
.StopsPlayerCoords:
|
2020-07-16 16:32:19 +00:00
|
|
|
dbmapcoord 4, 7
|
|
|
|
dbmapcoord 4, 8
|
|
|
|
dbmapcoord 4, 9
|
|
|
|
dbmapcoord 4, 10
|
|
|
|
db -1 ; end
|
2014-05-18 18:19:10 +00:00
|
|
|
|
2023-07-14 01:27:56 +00:00
|
|
|
Route16Gate1FPlayerMovingUpScript:
|
2014-09-10 03:55:19 +00:00
|
|
|
ld a, [wSimulatedJoypadStatesIndex]
|
2014-05-18 18:19:10 +00:00
|
|
|
and a
|
|
|
|
ret nz
|
2023-07-14 01:27:56 +00:00
|
|
|
ld a, D_RIGHT | D_LEFT | D_UP | D_DOWN
|
2014-05-25 17:51:53 +00:00
|
|
|
ld [wJoyIgnore], a
|
2014-05-18 18:19:10 +00:00
|
|
|
|
2023-07-14 01:27:56 +00:00
|
|
|
Route16Gate1FGuardScript:
|
|
|
|
ld a, TEXT_ROUTE16GATE1F_GUARD
|
2024-09-19 01:01:18 +00:00
|
|
|
ldh [hTextID], a
|
2014-05-18 18:19:10 +00:00
|
|
|
call DisplayTextID
|
|
|
|
ld a, $1
|
2014-09-10 03:55:19 +00:00
|
|
|
ld [wSimulatedJoypadStatesIndex], a
|
2015-07-17 07:52:25 +00:00
|
|
|
ld a, D_RIGHT
|
2014-09-10 03:55:19 +00:00
|
|
|
ld [wSimulatedJoypadStatesEnd], a
|
|
|
|
call StartSimulatingJoypadStates
|
2023-07-14 01:27:56 +00:00
|
|
|
ld a, SCRIPT_ROUTE16GATE1F_PLAYER_MOVING_RIGHT
|
2019-01-01 20:06:23 +00:00
|
|
|
ld [wRoute16Gate1FCurScript], a
|
2014-05-18 18:19:10 +00:00
|
|
|
ret
|
|
|
|
|
2023-07-14 01:27:56 +00:00
|
|
|
Route16Gate1FPlayerMovingRightScript:
|
2014-09-10 03:55:19 +00:00
|
|
|
ld a, [wSimulatedJoypadStatesIndex]
|
2014-05-18 18:19:10 +00:00
|
|
|
and a
|
|
|
|
ret nz
|
|
|
|
xor a
|
2014-05-25 17:51:53 +00:00
|
|
|
ld [wJoyIgnore], a
|
2024-07-16 17:02:54 +00:00
|
|
|
ld hl, wStatusFlags5
|
|
|
|
res BIT_SCRIPTED_MOVEMENT_STATE, [hl]
|
2023-07-14 01:27:56 +00:00
|
|
|
ld a, SCRIPT_ROUTE16GATE1F_DEFAULT
|
2019-01-01 20:06:23 +00:00
|
|
|
ld [wRoute16Gate1FCurScript], a
|
2014-05-18 18:19:10 +00:00
|
|
|
ret
|
|
|
|
|
2023-07-14 01:27:56 +00:00
|
|
|
Route16Gate1FIsBicycleInBagScript:
|
2014-05-18 18:19:10 +00:00
|
|
|
ld b, BICYCLE
|
|
|
|
jp IsItemInBag
|
|
|
|
|
2019-01-01 20:06:23 +00:00
|
|
|
Route16Gate1F_TextPointers:
|
2023-07-14 01:27:56 +00:00
|
|
|
def_text_pointers
|
|
|
|
dw_const Route16Gate1FGuardText, TEXT_ROUTE16GATE1F_GUARD
|
|
|
|
dw_const Route16Gate1FGamblerText, TEXT_ROUTE16GATE1F_GAMBLER
|
|
|
|
dw_const Route16Gate1FGuardWaitUpText, TEXT_ROUTE16GATE1F_GUARD_WAIT_UP
|
2014-05-18 18:19:10 +00:00
|
|
|
|
2023-07-14 01:27:56 +00:00
|
|
|
Route16Gate1FGuardText:
|
2020-07-04 21:09:35 +00:00
|
|
|
text_asm
|
2023-07-14 01:27:56 +00:00
|
|
|
call Route16Gate1FIsBicycleInBagScript
|
|
|
|
jr z, .no_bike
|
|
|
|
ld hl, .CyclingRoadExplanationText
|
2014-05-18 18:19:10 +00:00
|
|
|
call PrintText
|
2023-07-14 01:27:56 +00:00
|
|
|
jr .text_script_end
|
|
|
|
.no_bike
|
|
|
|
ld hl, .NoPedestriansAllowedText
|
2014-05-18 18:19:10 +00:00
|
|
|
call PrintText
|
2023-07-14 01:27:56 +00:00
|
|
|
.text_script_end
|
2014-05-18 18:19:10 +00:00
|
|
|
jp TextScriptEnd
|
|
|
|
|
2023-07-14 01:27:56 +00:00
|
|
|
.NoPedestriansAllowedText:
|
|
|
|
text_far _Route16Gate1FGuardNoPedestriansAllowedText
|
2020-07-04 21:09:35 +00:00
|
|
|
text_end
|
2014-05-18 18:19:10 +00:00
|
|
|
|
2023-07-14 01:27:56 +00:00
|
|
|
.CyclingRoadExplanationText:
|
|
|
|
text_far _Route16Gate1FGuardCyclingRoadExplanationText
|
2020-07-04 21:09:35 +00:00
|
|
|
text_end
|
2014-05-18 18:19:10 +00:00
|
|
|
|
2023-07-14 01:27:56 +00:00
|
|
|
Route16Gate1FGuardWaitUpText:
|
|
|
|
text_far _Route16Gate1FGuardWaitUpText
|
2020-07-04 21:09:35 +00:00
|
|
|
text_end
|
2014-05-18 18:19:10 +00:00
|
|
|
|
2023-07-14 01:27:56 +00:00
|
|
|
Route16Gate1FGamblerText:
|
|
|
|
text_far _Route16Gate1FGamblerText
|
2020-07-04 21:09:35 +00:00
|
|
|
text_end
|