aboutsummaryrefslogtreecommitdiffstats
path: root/engine/overworld/hidden_objects.asm
diff options
context:
space:
mode:
authordannye <33dannye@gmail.com>2026-01-17 22:38:33 -0600
committerdannye <33dannye@gmail.com>2026-01-17 22:38:33 -0600
commitbc2354dd6626ce28bb9561547ed2107cfa56c18e (patch)
tree5902d4c3389253c76b7c3351e0d7dfecb551c28d /engine/overworld/hidden_objects.asm
parentIdentify characters in `_OakSpeechText2B` and `Printer_GetMonStats.IDNo` (#144) (diff)
parentUse macros for `WildMonEncounterSlotChances` (#562) (diff)
downloadpokeyellow-bc2354dd6626ce28bb9561547ed2107cfa56c18e.tar.gz
pokeyellow-bc2354dd6626ce28bb9561547ed2107cfa56c18e.tar.xz
pokeyellow-bc2354dd6626ce28bb9561547ed2107cfa56c18e.zip
Merge branch 'master' of https://github.com/pret/pokered
Diffstat (limited to 'engine/overworld/hidden_objects.asm')
-rw-r--r--engine/overworld/hidden_objects.asm107
1 files changed, 0 insertions, 107 deletions
diff --git a/engine/overworld/hidden_objects.asm b/engine/overworld/hidden_objects.asm
deleted file mode 100644
index 84108986..00000000
--- a/engine/overworld/hidden_objects.asm
+++ /dev/null
@@ -1,107 +0,0 @@
-; if a hidden object was found, stores $00 in [hDidntFindAnyHiddenObject], else stores $ff
-CheckForHiddenObject::
- ld hl, hItemAlreadyFound
- xor a
- ld [hli], a ; [hItemAlreadyFound]
- ld [hli], a ; [hSavedMapTextPtr]
- ld [hli], a ; [hSavedMapTextPtr + 1]
- ld [hl], a ; [hDidntFindAnyHiddenObject]
- ld hl, HiddenObjectMaps
- ld de, 3
- ld a, [wCurMap]
- call IsInArray
- jr nc, .noMatch
- inc hl
- ld a, [hli]
- ld h, [hl]
- ld l, a
- push hl
- ld hl, wHiddenObjectFunctionArgument
- xor a
- ld [hli], a
- ld [hli], a
- ld [hl], a
- pop hl
-.hiddenObjectLoop
- ld a, [hli]
- cp $ff
- jr z, .noMatch
- ld [wHiddenObjectY], a
- ld b, a
- ld a, [hli]
- ld [wHiddenObjectX], a
- ld c, a
- call CheckIfCoordsInFrontOfPlayerMatch
- ldh a, [hCoordsInFrontOfPlayerMatch]
- and a
- jr z, .foundMatchingObject
- inc hl
- inc hl
- inc hl
- inc hl
- push hl
- ld hl, wHiddenObjectIndex
- inc [hl]
- pop hl
- jr .hiddenObjectLoop
-.foundMatchingObject
- ld a, [hli]
- ld [wHiddenObjectFunctionArgument], a
- ld a, [hli]
- ld [wHiddenObjectFunctionRomBank], a
- ld a, [hli]
- ld h, [hl]
- ld l, a
- ret
-.noMatch
- ld a, $ff
- ldh [hDidntFindAnyHiddenObject], a
- ret
-
-; checks if the coordinates in front of the player's sprite match Y in b and X in c
-; [hCoordsInFrontOfPlayerMatch] = $00 if they match, $ff if they don't match
-CheckIfCoordsInFrontOfPlayerMatch:
- ld a, [wSpritePlayerStateData1FacingDirection]
- cp SPRITE_FACING_UP
- jr z, .facingUp
- cp SPRITE_FACING_LEFT
- jr z, .facingLeft
- cp SPRITE_FACING_RIGHT
- jr z, .facingRight
-; facing down
- ld a, [wYCoord]
- inc a
- jr .upDownCommon
-.facingUp
- ld a, [wYCoord]
- dec a
-.upDownCommon
- cp b
- jr nz, .didNotMatch
- ld a, [wXCoord]
- cp c
- jr nz, .didNotMatch
- jr .matched
-.facingLeft
- ld a, [wXCoord]
- dec a
- jr .leftRightCommon
-.facingRight
- ld a, [wXCoord]
- inc a
-.leftRightCommon
- cp c
- jr nz, .didNotMatch
- ld a, [wYCoord]
- cp b
- jr nz, .didNotMatch
-.matched
- xor a
- jr .done
-.didNotMatch
- ld a, $ff
-.done
- ldh [hCoordsInFrontOfPlayerMatch], a
- ret
-
-INCLUDE "data/events/hidden_objects.asm"