summaryrefslogtreecommitdiff
path: root/scripts/ViridianMart.asm
diff options
context:
space:
mode:
authorDaniel Harding <33dannye@gmail.com>2019-01-13 22:38:16 -0600
committerGitHub <noreply@github.com>2019-01-13 22:38:16 -0600
commit725b86ebbec23bd1f53fd60bf0201c904fee951d (patch)
treea37f4d33c5b77635c7ff72b91a73fcd90c4af915 /scripts/ViridianMart.asm
parent108245cb21abb3abac051b7db84ed6c694192a61 (diff)
parentc7796024590fec48ac79756793c1a6e3b54daf8f (diff)
Merge pull request #196 from Rangi42/polishedmaps
Rename map files, labels, and constants to be consistent and work with Polished Map
Diffstat (limited to 'scripts/ViridianMart.asm')
-rwxr-xr-xscripts/ViridianMart.asm94
1 files changed, 94 insertions, 0 deletions
diff --git a/scripts/ViridianMart.asm b/scripts/ViridianMart.asm
new file mode 100755
index 00000000..b90d331c
--- /dev/null
+++ b/scripts/ViridianMart.asm
@@ -0,0 +1,94 @@
+ViridianMart_Script:
+ call ViridianMartScript_1d47d
+ call EnableAutoTextBoxDrawing
+ ld hl, ViridianMart_ScriptPointers
+ ld a, [wViridianMartCurScript]
+ jp CallFunctionInTable
+
+ViridianMartScript_1d47d:
+ CheckEvent EVENT_OAK_GOT_PARCEL
+ jr nz, .asm_1d489
+ ld hl, ViridianMart_TextPointers
+ jr .asm_1d48c
+.asm_1d489
+ ld hl, ViridianMart_TextPointers2
+.asm_1d48c
+ ld a, l
+ ld [wMapTextPtr], a
+ ld a, h
+ ld [wMapTextPtr+1], a
+ ret
+
+ViridianMart_ScriptPointers:
+ dw ViridianMartScript0
+ dw ViridianMartScript1
+ dw ViridianMartScript2
+
+ViridianMartScript0:
+ call UpdateSprites
+ ld a, $4
+ ld [hSpriteIndexOrTextID], a
+ call DisplayTextID
+ ld hl, wSimulatedJoypadStatesEnd
+ ld de, RLEMovement1d4bb
+ call DecodeRLEList
+ dec a
+ ld [wSimulatedJoypadStatesIndex], a
+ call StartSimulatingJoypadStates
+ ld a, $1
+ ld [wViridianMartCurScript], a
+ ret
+
+RLEMovement1d4bb:
+ db D_LEFT, $01
+ db D_UP, $02
+ db $ff
+
+ViridianMartScript1:
+ ld a, [wSimulatedJoypadStatesIndex]
+ and a
+ ret nz
+ call Delay3
+ ld a, $5
+ ld [hSpriteIndexOrTextID], a
+ call DisplayTextID
+ lb bc, OAKS_PARCEL, 1
+ call GiveItem
+ SetEvent EVENT_GOT_OAKS_PARCEL
+ ld a, $2
+ ld [wViridianMartCurScript], a
+ ; fallthrough
+ViridianMartScript2:
+ ret
+
+ViridianMart_TextPointers:
+ dw ViridianMartText1
+ dw ViridianMartText2
+ dw ViridianMartText3
+ dw ViridianMartText4
+ dw ViridianMartText5
+ViridianMart_TextPointers2:
+ dw ViridianCashierText
+ dw ViridianMartText2
+ dw ViridianMartText3
+
+ViridianMartText1:
+ TX_FAR _ViridianMartText1
+ db "@"
+
+ViridianMartText4:
+ TX_FAR _ViridianMartText4
+ db "@"
+
+ViridianMartText5:
+ TX_FAR ViridianMartParcelQuestText
+ TX_SFX_KEY_ITEM
+ db "@"
+
+ViridianMartText2:
+ TX_FAR _ViridianMartText2
+ db "@"
+
+ViridianMartText3:
+ TX_FAR _ViridianMartText3
+ db "@"