summaryrefslogtreecommitdiff
path: root/scripts/Museum1F2.asm
diff options
context:
space:
mode:
Diffstat (limited to 'scripts/Museum1F2.asm')
-rwxr-xr-xscripts/Museum1F2.asm209
1 files changed, 209 insertions, 0 deletions
diff --git a/scripts/Museum1F2.asm b/scripts/Museum1F2.asm
new file mode 100755
index 00000000..512a3295
--- /dev/null
+++ b/scripts/Museum1F2.asm
@@ -0,0 +1,209 @@
+Func_f1c1b::
+ ld a, [wYCoord]
+ cp 4
+ jr nz, .asm_f1c2c
+ ld a, [wXCoord]
+ cp 13
+ jp z, .asm_f1cde
+ jr .asm_f1c48
+
+.asm_f1c2c
+ cp $3
+ jr nz, .asm_f1c38
+ ld a, [wXCoord]
+ cp 12
+ jp z, .asm_f1cde
+.asm_f1c38
+ CheckEvent EVENT_BOUGHT_MUSEUM_TICKET
+ jr nz, .asm_f1c4f
+ ld hl, Museum1FText_f1d20
+ call PrintText
+ jp .asm_f1cfc
+
+.asm_f1c48
+ CheckEvent EVENT_BOUGHT_MUSEUM_TICKET
+ jr z, .asm_f1c58
+.asm_f1c4f
+ ld hl, Museum1FText_f1d25
+ call PrintText
+ jp .asm_f1cfc
+
+.asm_f1c58
+ ld a, $13
+ ld [wTextBoxID], a
+ call DisplayTextBoxID
+ xor a
+ ldh [hJoyHeld], a
+ ld hl, Museum1FText_f1d02
+ call PrintText
+ call YesNoChoice
+ ld a, [wCurrentMenuItem]
+ and a
+ jr nz, .asm_f1cbf
+ xor a
+ ldh [hMoney], a
+ ldh [hMoney + 1], a
+ ld a, $50
+ ldh [hMoney + 2], a
+ call HasEnoughMoney
+ jr nc, .asm_f1c89
+ ld hl, Museum1FText_f1d0c
+ call PrintText
+ jp .asm_f1cbf
+
+.asm_f1c89
+ ld hl, Museum1FText_f1d07
+ call PrintText
+ SetEvent EVENT_BOUGHT_MUSEUM_TICKET
+ xor a
+ ld [wPriceTemp], a
+ ld [wPriceTemp + 1], a
+ ld a, $50
+ ld [wPriceTemp + 2], a
+ ld hl, wPriceTemp + 2
+ ld de, wPlayerMoney + 2
+ ld c, 3
+ predef SubBCDPredef
+ ld a, $13
+ ld [wTextBoxID], a
+ call DisplayTextBoxID
+ ld a, SFX_PURCHASE
+ call PlaySoundWaitForCurrent
+ call WaitForSoundToFinish
+ jr .asm_f1cd7
+
+.asm_f1cbf
+ ld hl, Museum1FText_f1cfd
+ call PrintText
+ ld a, $1
+ ld [wSimulatedJoypadStatesIndex], a
+ ld a, D_DOWN
+ ld [wSimulatedJoypadStatesEnd], a
+ call StartSimulatingJoypadStates
+ call UpdateSprites
+ jr .asm_f1cfc
+
+.asm_f1cd7
+ ld a, $1
+ ld [wMuseum1FCurScript], a
+ jr .asm_f1cfc
+
+.asm_f1cde
+ ld hl, Museum1FText_f1d11
+ call PrintText
+ call YesNoChoice
+ ld a, [wCurrentMenuItem]
+ cp 0
+ jr nz, .asm_f1cf6
+ ld hl, Museum1FText_f1d16
+ call PrintText
+ jr .asm_f1cfc
+
+.asm_f1cf6
+ ld hl, Museum1FText_f1d1b
+ call PrintText
+.asm_f1cfc
+ ret
+
+Museum1FText_f1cfd:
+ text_far _Museum1FText_5c21a
+ text_end
+
+Museum1FText_f1d02:
+ text_far _Museum1FText_5c21f
+ text_end
+
+Museum1FText_f1d07:
+ text_far _Museum1FText_5c224
+ text_end
+
+Museum1FText_f1d0c:
+ text_far _Museum1FText_5c229
+ text_end
+
+Museum1FText_f1d11:
+ text_far _Museum1FText_5c22e
+ text_end
+
+Museum1FText_f1d16:
+ text_far _Museum1FText_5c233
+ text_end
+
+Museum1FText_f1d1b:
+ text_far _Museum1FText_5c238
+ text_end
+
+Museum1FText_f1d20:
+ text_far _Museum1FText_5c23d
+ text_end
+
+Museum1FText_f1d25:
+ text_far _Museum1FText_5c242
+ text_end
+
+Func_f1d2a::
+ ld hl, Museum1FText_f1d31
+ call PrintText
+ ret
+
+Museum1FText_f1d31:
+ text_far _Museum1FText_5c251
+ text_end
+
+Func_f1d36::
+ CheckEvent EVENT_GOT_OLD_AMBER
+ jr nz, .got_item
+ ld hl, Museum1FText_5c28e
+ call PrintText
+ lb bc, OLD_AMBER, 1
+ call GiveItem
+ jr nc, .bag_full
+ SetEvent EVENT_GOT_OLD_AMBER
+ ld a, HS_OLD_AMBER
+ ld [wMissableObjectIndex], a
+ predef HideObject
+ ld hl, ReceivedOldAmberText
+ jr .done
+.bag_full
+ ld hl, Museum1FText_5c29e
+ jr .done
+.got_item
+ ld hl, Museum1FText_5c299
+.done
+ call PrintText
+ ret
+
+Museum1FText_5c28e:
+ text_far _Museum1FText_5c28e
+ text_end
+
+ReceivedOldAmberText:
+ text_far _ReceivedOldAmberText
+ sound_get_item_1
+ text_end
+
+Museum1FText_5c299:
+ text_far _Museum1FText_5c299
+ text_end
+
+Museum1FText_5c29e:
+ text_far _Museum1FText_5c29e
+ text_end
+
+Func_f1d80::
+ ld hl, Museum1FText_f1d87
+ call PrintText
+ ret
+
+Museum1FText_f1d87:
+ text_far _Museum1FText_5c2ad
+ text_end
+
+Func_f1d8c::
+ ld hl, Museum1FText_f1d93
+ call PrintText
+ ret
+
+Museum1FText_f1d93:
+ text_far _Museum1FText_5c2bc
+ text_end