2019-01-01 20:06:23 +00:00
|
|
|
RocketHideoutElevator_Script:
|
2016-01-03 19:17:10 +00:00
|
|
|
ld hl, wCurrentMapScriptFlags
|
2024-09-24 15:39:44 +00:00
|
|
|
bit BIT_CUR_MAP_LOADED_1, [hl]
|
|
|
|
res BIT_CUR_MAP_LOADED_1, [hl]
|
2014-05-18 18:19:10 +00:00
|
|
|
push hl
|
2023-11-19 00:44:03 +00:00
|
|
|
call nz, RocketHideoutElevatorStoreWarpEntriesScript
|
2014-05-18 18:19:10 +00:00
|
|
|
pop hl
|
2024-09-24 15:39:44 +00:00
|
|
|
bit BIT_CUR_MAP_USED_ELEVATOR, [hl]
|
|
|
|
res BIT_CUR_MAP_USED_ELEVATOR, [hl]
|
2023-07-14 01:27:56 +00:00
|
|
|
call nz, RocketHideoutElevatorShakeScript
|
2014-05-18 18:19:10 +00:00
|
|
|
xor a
|
2014-09-13 07:50:56 +00:00
|
|
|
ld [wAutoTextBoxDrawingControl], a
|
2014-05-18 18:19:10 +00:00
|
|
|
inc a
|
2014-09-13 07:50:56 +00:00
|
|
|
ld [wDoNotWaitForButtonPressAfterDisplayingText], a
|
2014-05-18 18:19:10 +00:00
|
|
|
ret
|
|
|
|
|
2023-11-19 00:44:03 +00:00
|
|
|
RocketHideoutElevatorStoreWarpEntriesScript:
|
2014-09-13 07:50:56 +00:00
|
|
|
ld hl, wWarpEntries
|
2015-07-26 02:26:54 +00:00
|
|
|
ld a, [wWarpedFromWhichWarp]
|
2014-05-18 18:19:10 +00:00
|
|
|
ld b, a
|
2015-07-26 02:26:54 +00:00
|
|
|
ld a, [wWarpedFromWhichMap]
|
2014-05-18 18:19:10 +00:00
|
|
|
ld c, a
|
2023-11-19 00:44:03 +00:00
|
|
|
call .StoreWarpEntry
|
|
|
|
; fallthrough
|
|
|
|
.StoreWarpEntry:
|
2014-05-18 18:19:10 +00:00
|
|
|
inc hl
|
|
|
|
inc hl
|
|
|
|
ld a, b
|
|
|
|
ld [hli], a
|
|
|
|
ld a, c
|
|
|
|
ld [hli], a
|
|
|
|
ret
|
|
|
|
|
2023-07-14 01:27:56 +00:00
|
|
|
RocketHideoutElevatorScript:
|
2015-07-03 19:38:12 +00:00
|
|
|
ld hl, RocketHideoutElavatorFloors
|
2014-05-18 18:19:10 +00:00
|
|
|
call LoadItemList
|
2015-07-03 19:38:12 +00:00
|
|
|
ld hl, RocketHideoutElevatorWarpMaps
|
2015-08-13 05:14:31 +00:00
|
|
|
ld de, wElevatorWarpMaps
|
2023-11-19 00:44:03 +00:00
|
|
|
ld bc, RocketHideoutElevatorWarpMaps.End - RocketHideoutElevatorWarpMaps
|
2014-05-18 18:19:10 +00:00
|
|
|
call CopyData
|
|
|
|
ret
|
|
|
|
|
2016-06-12 00:24:04 +00:00
|
|
|
RocketHideoutElavatorFloors:
|
2020-07-16 15:19:05 +00:00
|
|
|
db 3 ; #
|
2015-08-10 15:03:55 +00:00
|
|
|
db FLOOR_B1F
|
|
|
|
db FLOOR_B2F
|
|
|
|
db FLOOR_B4F
|
2020-07-16 15:19:05 +00:00
|
|
|
db -1 ; end
|
2014-05-18 18:19:10 +00:00
|
|
|
|
|
|
|
; These specify where the player goes after getting out of the elevator.
|
2020-07-16 15:19:05 +00:00
|
|
|
RocketHideoutElevatorWarpMaps:
|
|
|
|
; warp number, map id
|
|
|
|
db 4, ROCKET_HIDEOUT_B1F
|
|
|
|
db 4, ROCKET_HIDEOUT_B2F
|
|
|
|
db 2, ROCKET_HIDEOUT_B4F
|
2023-11-19 00:44:03 +00:00
|
|
|
.End:
|
2014-05-18 18:19:10 +00:00
|
|
|
|
2023-07-14 01:27:56 +00:00
|
|
|
RocketHideoutElevatorShakeScript:
|
2014-05-18 18:19:10 +00:00
|
|
|
call Delay3
|
2020-07-07 01:18:22 +00:00
|
|
|
farcall ShakeElevator
|
2014-05-18 18:19:10 +00:00
|
|
|
ret
|
|
|
|
|
2019-01-01 20:06:23 +00:00
|
|
|
RocketHideoutElevator_TextPointers:
|
2023-07-14 01:27:56 +00:00
|
|
|
def_text_pointers
|
|
|
|
dw_const RocketHideoutElevatorText, TEXT_ROCKETHIDEOUTELEVATOR
|
2014-05-18 18:19:10 +00:00
|
|
|
|
2023-07-14 01:27:56 +00:00
|
|
|
RocketHideoutElevatorText:
|
2020-07-04 21:09:35 +00:00
|
|
|
text_asm
|
2014-05-18 18:19:10 +00:00
|
|
|
ld b, LIFT_KEY
|
|
|
|
call IsItemInBag
|
2023-07-14 01:27:56 +00:00
|
|
|
jr z, .no_key
|
|
|
|
call RocketHideoutElevatorScript
|
2015-07-03 19:38:12 +00:00
|
|
|
ld hl, RocketHideoutElevatorWarpMaps
|
2015-07-24 04:00:30 +00:00
|
|
|
predef DisplayElevatorFloorMenu
|
2023-07-14 01:27:56 +00:00
|
|
|
jr .text_script_end
|
|
|
|
.no_key
|
|
|
|
ld hl, .AppearsToNeedKeyText
|
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
|
|
|
.AppearsToNeedKeyText:
|
|
|
|
text_far _RocketHideoutElevatorAppearsToNeedKeyText
|
2020-07-06 16:39:29 +00:00
|
|
|
text_waitbutton
|
2020-07-04 21:09:35 +00:00
|
|
|
text_end
|