diff options
author | libjet <libj3t@gmail.com> | 2020-05-21 15:34:41 +0100 |
---|---|---|
committer | libjet <libj3t@gmail.com> | 2020-05-21 15:34:41 +0100 |
commit | 0de5cf5629714c8781db58472b077b5fe58920be (patch) | |
tree | 1f58eac52e6173d6fe3ba264f086b602f97d4e95 | |
parent | 562c8da5cbdc931428b36f7503386babd7ce7fc8 (diff) |
Add card_key.asm and basement_key.asm
-rwxr-xr-x | engine/events/basement_key.asm | 32 | ||||
-rwxr-xr-x | engine/events/card_key.asm | 37 | ||||
-rw-r--r-- | main.asm | 8 |
3 files changed, 73 insertions, 4 deletions
diff --git a/engine/events/basement_key.asm b/engine/events/basement_key.asm new file mode 100755 index 00000000..ab8c39ce --- /dev/null +++ b/engine/events/basement_key.asm @@ -0,0 +1,32 @@ +_BasementKey: +; Are we even in the right map to use this? + ld a, [wMapGroup] + cp GROUP_GOLDENROD_UNDERGROUND + jr nz, .nope + + ld a, [wMapNumber] + cp MAP_GOLDENROD_UNDERGROUND + jr nz, .nope +; Are we on the tile in front of the door? + call GetFacingTileCoord + ld a, d + cp 22 + jr nz, .nope + ld a, e + cp 10 + jr nz, .nope +; Let's use the Basement Key + ld hl, .BasementKeyScript + call QueueScript + ld a, TRUE + ld [wItemEffectSucceeded], a + ret + +.nope + ld a, FALSE + ld [wItemEffectSucceeded], a + ret + +.BasementKeyScript: + closetext + farsjump BasementDoorScript diff --git a/engine/events/card_key.asm b/engine/events/card_key.asm new file mode 100755 index 00000000..c15b1def --- /dev/null +++ b/engine/events/card_key.asm @@ -0,0 +1,37 @@ +_CardKey: +; Are we even in the right map to use this? + ld a, [wMapGroup] + cp GROUP_RADIO_TOWER_3F + jr nz, .nope + + ld a, [wMapNumber] + cp MAP_RADIO_TOWER_3F + jr nz, .nope +; Are we facing the slot? + ld a, [wPlayerDirection] + and %1100 + cp OW_UP + jr nz, .nope + + call GetFacingTileCoord + ld a, d + cp 18 + jr nz, .nope + ld a, e + cp 6 + jr nz, .nope +; Let's use the Card Key. + ld hl, .CardKeyScript + call QueueScript + ld a, TRUE + ld [wItemEffectSucceeded], a + ret + +.nope + ld a, FALSE + ld [wItemEffectSucceeded], a + ret + +.CardKeyScript: + closetext + farsjump CardKeySlotScript @@ -362,13 +362,12 @@ INCLUDE "engine/events/fishing_gfx.asm" INCLUDE "engine/events/poisonstep.asm" INCLUDE "engine/events/sweet_scent.asm" INCLUDE "engine/events/squirtbottle.asm" +INCLUDE "engine/events/card_key.asm" +INCLUDE "engine/events/basement_key.asm" -_CardKey:: - dr $507ac, $507e7 -_BasementKey:: - dr $507e7, $50819 _SacredAsh:: dr $50819, $5087d + CopyMonToTempMon:: dr $5087d, $50940 PrintMonTypes:: @@ -408,6 +407,7 @@ CalcExpAtLevel:: dr $51550, $5161b _SwitchPartyMons:: dr $5161b, $51749 + INCLUDE "engine/gfx/load_pics.asm" INCLUDE "engine/pokemon/move_mon_wo_mail.asm" INCLUDE "data/pokemon/base_stats.asm" |