mirror of
https://github.com/pret/pokered.git
synced 2024-10-23 06:58:24 +00:00
9878f01e29
While doing so I replaced the StopAllMusic macro with a SFX_STOP_ALL_MUSIC constant and applied it throughout the code.
65 lines
1.1 KiB
NASM
65 lines
1.1 KiB
NASM
validateCoords: MACRO
|
|
IF \1 >= SCREEN_WIDTH
|
|
fail "x coord out of range"
|
|
ENDC
|
|
IF \2 >= SCREEN_HEIGHT
|
|
fail "y coord out of range"
|
|
ENDC
|
|
ENDM
|
|
|
|
;\1 = r
|
|
;\2 = X
|
|
;\3 = Y
|
|
;\4 = which tilemap (optional)
|
|
coord: MACRO
|
|
validateCoords \2, \3
|
|
IF _NARG >= 4
|
|
ld \1, \4 + SCREEN_WIDTH * \3 + \2
|
|
ELSE
|
|
ld \1, wTileMap + SCREEN_WIDTH * \3 + \2
|
|
ENDC
|
|
ENDM
|
|
|
|
;\1 = X
|
|
;\2 = Y
|
|
;\3 = which tilemap (optional)
|
|
aCoord: MACRO
|
|
validateCoords \1, \2
|
|
IF _NARG >= 3
|
|
ld a, [\3 + SCREEN_WIDTH * \2 + \1]
|
|
ELSE
|
|
ld a, [wTileMap + SCREEN_WIDTH * \2 + \1]
|
|
ENDC
|
|
ENDM
|
|
|
|
;\1 = X
|
|
;\2 = Y
|
|
;\3 = which tilemap (optional)
|
|
Coorda: MACRO
|
|
validateCoords \1, \2
|
|
IF _NARG >= 3
|
|
ld [\3 + SCREEN_WIDTH * \2 + \1], a
|
|
ELSE
|
|
ld [wTileMap + SCREEN_WIDTH * \2 + \1], a
|
|
ENDC
|
|
ENDM
|
|
|
|
;\1 = X
|
|
;\2 = Y
|
|
;\3 = which tilemap (optional)
|
|
dwCoord: MACRO
|
|
validateCoords \1, \2
|
|
IF _NARG >= 3
|
|
dw \3 + SCREEN_WIDTH * \2 + \1
|
|
ELSE
|
|
dw wTileMap + SCREEN_WIDTH * \2 + \1
|
|
ENDC
|
|
ENDM
|
|
|
|
;\1 = r
|
|
;\2 = X
|
|
;\3 = Y
|
|
;\4 = map width
|
|
overworldMapCoord: MACRO
|
|
ld \1, wOverworldMap + ((\2) + 3) + (((\3) + 3) * ((\4) + (3 * 2)))
|
|
ENDM
|