pokered/scripts/Route6Gate.asm

74 lines
1.7 KiB
NASM
Raw Normal View History

Route6Gate_Script:
2014-05-18 18:19:10 +00:00
call EnableAutoTextBoxDrawing
ld hl, Route6Gate_ScriptPointers
2015-08-31 02:38:41 +00:00
ld a, [wRoute6GateCurScript]
2014-05-18 18:19:10 +00:00
call CallFunctionInTable
ret
Route6Gate_ScriptPointers:
def_script_pointers
dw_const Route6GateDefaultScript, SCRIPT_ROUTE6GATE_DEFAULT
dw_const Route6GatePlayerMovingScript, SCRIPT_ROUTE6GATE_PLAYER_MOVING
2014-05-18 18:19:10 +00:00
Route6GateDefaultScript:
ld a, [wd728]
2014-05-18 18:19:10 +00:00
bit 6, a
ret nz
ld hl, .PlayerInCoordsArray
2014-05-18 18:19:10 +00:00
call ArePlayerCoordsInArray
ret nc
2015-07-20 00:52:26 +00:00
ld a, PLAYER_DIR_RIGHT
ld [wPlayerMovingDirection], a
2014-05-18 18:19:10 +00:00
xor a
ldh [hJoyHeld], a
farcall RemoveGuardDrink
ldh a, [hItemToRemoveID]
2014-05-18 18:19:10 +00:00
and a
jr nz, .have_drink
ld a, TEXT_ROUTE6GATE_GUARD_GEE_IM_THIRSTY
ldh [hSpriteIndexOrTextID], a
2014-05-18 18:19:10 +00:00
call DisplayTextID
call Route6GateMovePlayerDownScript
ld a, SCRIPT_ROUTE6GATE_PLAYER_MOVING
2015-08-31 02:38:41 +00:00
ld [wRoute6GateCurScript], a
2014-05-18 18:19:10 +00:00
ret
.have_drink
ld hl, wd728
2014-05-18 18:19:10 +00:00
set 6, [hl]
ld a, TEXT_ROUTE6GATE_GUARD_GIVE_DRINK
ldh [hSpriteIndexOrTextID], a
2014-05-18 18:19:10 +00:00
jp DisplayTextID
.PlayerInCoordsArray:
dbmapcoord 3, 2
dbmapcoord 4, 2
db -1 ; end
2014-05-18 18:19:10 +00:00
Route6GatePlayerMovingScript:
ld a, [wSimulatedJoypadStatesIndex]
2014-05-18 18:19:10 +00:00
and a
ret nz
call Delay3
xor a
2014-05-25 17:51:53 +00:00
ld [wJoyIgnore], a
2015-08-31 02:38:41 +00:00
ld [wRoute6GateCurScript], a
2014-05-18 18:19:10 +00:00
ret
Route6GateMovePlayerDownScript:
ld hl, wd730
2014-05-18 18:19:10 +00:00
set 7, [hl]
ld a, D_DOWN
ld [wSimulatedJoypadStatesEnd], a
2014-05-18 18:19:10 +00:00
ld a, $1
ld [wSimulatedJoypadStatesIndex], a
2014-05-18 18:19:10 +00:00
xor a
ld [wSpritePlayerStateData2MovementByte1], a
ld [wOverrideSimulatedJoypadStatesMask], a
2014-05-18 18:19:10 +00:00
ret
Route6Gate_TextPointers:
def_text_pointers
dw_const SaffronGateGuardText, TEXT_ROUTE6GATE_GUARD
dw_const SaffronGateGuardGeeImThirstyText, TEXT_ROUTE6GATE_GUARD_GEE_IM_THIRSTY
dw_const SaffronGateGuardGiveDrinkText, TEXT_ROUTE6GATE_GUARD_GIVE_DRINK