diff options
| author | Ash Ketchum <no-reply@sl0p.foo> | 2026-07-15 13:58:35 +0200 |
|---|---|---|
| committer | Ash Ketchum <no-reply@sl0p.foo> | 2026-07-15 13:58:35 +0200 |
| commit | 76925904c16bef43eea7d8d08f864880695525fd (patch) | |
| tree | 5bcd3d6d095ce2264995a09febd388f6e2ead46a /maps.asm | |
| parent | explore: rewrite as an instant screen-paging camera (diff) | |
| download | pokeyellow-76925904c16bef43eea7d8d08f864880695525fd.tar.gz pokeyellow-76925904c16bef43eea7d8d08f864880695525fd.tar.xz pokeyellow-76925904c16bef43eea7d8d08f864880695525fd.zip | |
explore: direction arrows showing where you can move
Overlay real ▲▼◀▶ arrow sprites at the screen edges for every direction the
camera can currently page: either there's more map that way, or the map has a
connection that way. Arrows update live -- e.g. at a connectionless edge that
direction's arrow disappears.
Implementation: the font has only a down-arrow ($ee) and right-arrow ($ed), so
up/left are made with CGB OBJ Y/X-flip (the emulator supports OBJ flips). Drawn
as 4 sprites in wShadowOAM (8x8 OBJ mode, font loaded so $ed/$ee are OBJ-
reachable at 0x8ed0/0x8ee0). Set wUpdateSpritesEnabled=$ff after building them so
the vblank PrepareOAMData leaves shadow OAM alone instead of repopulating the
player sprite over the arrows.
Verified: Pallet mid-map shows all 4; Viridian shows N/S/W (no E); paging to a
connectionless edge drops that arrow and it returns on the way back.
Diffstat (limited to 'maps.asm')
0 files changed, 0 insertions, 0 deletions
