diff options
author | Rangi <remy.oukaour+rangi42@gmail.com> | 2019-01-01 15:06:23 -0500 |
---|---|---|
committer | Rangi <remy.oukaour+rangi42@gmail.com> | 2019-01-01 23:33:10 -0500 |
commit | c7796024590fec48ac79756793c1a6e3b54daf8f (patch) | |
tree | 0d61caa7ebe429995a61e800d1d78c3a82aec886 /scripts/CinnabarLabFossilRoom.asm | |
parent | 90430e6dee9e207dc0b618d07566f83617343f60 (diff) |
Rename map files, labels, and constants to be consistent and work with Polished Map
Diffstat (limited to 'scripts/CinnabarLabFossilRoom.asm')
-rwxr-xr-x | scripts/CinnabarLabFossilRoom.asm | 109 |
1 files changed, 109 insertions, 0 deletions
diff --git a/scripts/CinnabarLabFossilRoom.asm b/scripts/CinnabarLabFossilRoom.asm new file mode 100755 index 00000000..f5f03a19 --- /dev/null +++ b/scripts/CinnabarLabFossilRoom.asm @@ -0,0 +1,109 @@ +CinnabarLabFossilRoom_Script: + jp EnableAutoTextBoxDrawing + +CinnabarLabFossilRoom_TextPointers: + dw Lab4Text1 + dw Lab4Text2 + +Lab4Script_GetFossilsInBag: +; construct a list of all fossils in the player's bag + xor a + ld [wFilteredBagItemsCount], a + ld de, wFilteredBagItems + ld hl, FossilsList +.loop + ld a, [hli] + and a + jr z, .done + push hl + push de + ld [wd11e], a + ld b, a + predef GetQuantityOfItemInBag + pop de + pop hl + ld a, b + and a + jr z, .loop + + ; A fossil's in the bag + ld a, [wd11e] + ld [de], a + inc de + push hl + ld hl, wFilteredBagItemsCount + inc [hl] + pop hl + jr .loop +.done + ld a, $ff + ld [de], a + ret + +FossilsList: + db DOME_FOSSIL + db HELIX_FOSSIL + db OLD_AMBER + db $00 + +Lab4Text1: + TX_ASM + CheckEvent EVENT_GAVE_FOSSIL_TO_LAB + jr nz, .asm_75d96 + ld hl, Lab4Text_75dc6 + call PrintText + call Lab4Script_GetFossilsInBag + ld a, [wFilteredBagItemsCount] + and a + jr z, .asm_75d8d + callba GiveFossilToCinnabarLab + jr .asm_75d93 +.asm_75d8d + ld hl, Lab4Text_75dcb + call PrintText +.asm_75d93 + jp TextScriptEnd +.asm_75d96 + CheckEventAfterBranchReuseA EVENT_LAB_STILL_REVIVING_FOSSIL, EVENT_GAVE_FOSSIL_TO_LAB + jr z, .asm_75da2 + ld hl, Lab4Text_75dd0 + call PrintText + jr .asm_75d93 +.asm_75da2 + call LoadFossilItemAndMonNameBank1D + ld hl, Lab4Text_75dd5 + call PrintText + SetEvent EVENT_LAB_HANDING_OVER_FOSSIL_MON + ld a, [wFossilMon] + ld b, a + ld c, 30 + call GivePokemon + jr nc, .asm_75d93 + ResetEvents EVENT_GAVE_FOSSIL_TO_LAB, EVENT_LAB_STILL_REVIVING_FOSSIL, EVENT_LAB_HANDING_OVER_FOSSIL_MON + jr .asm_75d93 + +Lab4Text_75dc6: + TX_FAR _Lab4Text_75dc6 + db "@" + +Lab4Text_75dcb: + TX_FAR _Lab4Text_75dcb + db "@" + +Lab4Text_75dd0: + TX_FAR _Lab4Text_75dd0 + db "@" + +Lab4Text_75dd5: + TX_FAR _Lab4Text_75dd5 + db "@" + +Lab4Text2: + TX_ASM + ld a, $3 + ld [wWhichTrade], a + predef DoInGameTradeDialogue + jp TextScriptEnd + +LoadFossilItemAndMonNameBank1D: + jpba LoadFossilItemAndMonName |