aboutsummaryrefslogtreecommitdiffstats
diff options
context:
space:
mode:
-rw-r--r--engine/events/hidden_objects/bookshelves.asm4
-rw-r--r--engine/gfx/sprite_oam.asm4
-rw-r--r--engine/overworld/sprite_collisions.asm38
-rw-r--r--home/hidden_objects.asm2
-rw-r--r--ram/hram.asm13
-rw-r--r--ram/wram.asm2
6 files changed, 30 insertions, 33 deletions
diff --git a/engine/events/hidden_objects/bookshelves.asm b/engine/events/hidden_objects/bookshelves.asm
index b58444af..813cfc49 100644
--- a/engine/events/hidden_objects/bookshelves.asm
+++ b/engine/events/hidden_objects/bookshelves.asm
@@ -24,7 +24,7 @@ PrintBookshelfText::
pop af
call PrintPredefTextID
xor a
- ldh [hFFDB], a
+ ldh [hInteractedWithBookshelf], a
ret
.nextBookshelfEntry1
inc hl
@@ -33,7 +33,7 @@ PrintBookshelfText::
jr .loop
.noMatch
ld a, $ff
- ldh [hFFDB], a
+ ldh [hInteractedWithBookshelf], a
farjp PrintCardKeyText
INCLUDE "data/tilesets/bookshelf_tile_ids.asm"
diff --git a/engine/gfx/sprite_oam.asm b/engine/gfx/sprite_oam.asm
index 69956a31..4a31ab5e 100644
--- a/engine/gfx/sprite_oam.asm
+++ b/engine/gfx/sprite_oam.asm
@@ -28,7 +28,7 @@ PrepareOAMData::
inc e
inc e
ld a, [de] ; [x#SPRITESTATEDATA1_IMAGEINDEX]
- ld [wd5cd], a
+ ld [wSpriteImageIndexBackup], a
cp $ff ; off-screen (don't draw)
jr nz, .visible
@@ -98,7 +98,7 @@ PrepareOAMData::
push bc
ld b, a
- ld a, [wd5cd] ; temp copy of [x#SPRITESTATEDATA1_IMAGEINDEX]
+ ld a, [wSpriteImageIndexBackup]
swap a ; high nybble determines sprite used (0 is always player sprite, next are some npcs)
and $f
diff --git a/engine/overworld/sprite_collisions.asm b/engine/overworld/sprite_collisions.asm
index dc57d5b9..46c29e3e 100644
--- a/engine/overworld/sprite_collisions.asm
+++ b/engine/overworld/sprite_collisions.asm
@@ -80,7 +80,7 @@ DetectCollisionBetweenSprites:
and $f0
or c
- ldh [hFF90], a ; store Y coordinate adjusted for direction of movement
+ ldh [hCollidingSpriteTempYValue], a ; y adjusted for direction of movement
ld a, [hli] ; a = [i#SPRITESTATEDATA1_XSTEPVECTOR] (-1, 0, or 1)
call SetSpriteCollisionValues
@@ -93,7 +93,7 @@ DetectCollisionBetweenSprites:
and $f0
or c
- ldh [hFF91], a ; store X coordinate adjusted for direction of movement
+ ldh [hCollidingSpriteTempXValue], a ; x adjusted for direction of movement
ld a, l
add 7
@@ -103,15 +103,15 @@ DetectCollisionBetweenSprites:
ld [hld], a ; zero [i#SPRITESTATEDATA1_0D] XXX what's this for?
ld [hld], a ; zero [i#SPRITESTATEDATA1_COLLISIONDATA]
- ldh a, [hFF91]
+ ldh a, [hCollidingSpriteTempXValue]
ld [hld], a ; [i#SPRITESTATEDATA1_XADJUSTED]
- ldh a, [hFF90]
+ ldh a, [hCollidingSpriteTempYValue]
ld [hl], a ; [i#SPRITESTATEDATA1_YADJUSTED]
xor a ; zero the loop counter
.loop
- ldh [hFF8F], a ; store loop counter
+ ldh [hCollidingSpriteOffset], a
swap a
ld e, a
ldh a, [hCurrentSpriteOffset]
@@ -155,7 +155,7 @@ DetectCollisionBetweenSprites:
cpl
inc a
.noCarry1
- ldh [hFF90], a ; store the distance between the two sprites' adjusted Y values
+ ldh [hCollidingSpriteTempYValue], a ; store the distance between the two sprites' adjusted Y values
; Use the carry flag set by the above subtraction to determine which sprite's
; Y coordinate is larger. This information is used later to set
@@ -177,11 +177,11 @@ DetectCollisionBetweenSprites:
ld b, 9
.next1
- ldh a, [hFF90] ; a = distance between adjusted Y coordinates
+ ldh a, [hCollidingSpriteTempYValue] ; a = distance between adjusted Y coordinates
sub b
- ldh [hFF92], a ; store distance adjusted using sprite i's direction
+ ldh [hCollidingSpriteAdjustedDistance], a
ld a, b
- ldh [hFF90], a ; store 7 or 9 depending on sprite i's delta Y
+ ldh [hCollidingSpriteTempYValue], a ; store 7 or 9 depending on sprite i's delta Y
jr c, .checkXDistance
; If sprite j's delta Y is 0, then b = 7, else b = 9.
@@ -194,7 +194,7 @@ DetectCollisionBetweenSprites:
ld b, 9
.next2
- ldh a, [hFF92] ; a = distance adjusted using sprite i's direction
+ ldh a, [hCollidingSpriteAdjustedDistance]
sub b ; adjust distance using sprite j's direction
jr z, .checkXDistance
jr nc, .next ; go to next sprite if distance is still positive after both adjustments
@@ -226,7 +226,7 @@ DetectCollisionBetweenSprites:
cpl
inc a
.noCarry2
- ldh [hFF91], a ; store the distance between the two sprites' adjusted X values
+ ldh [hCollidingSpriteTempXValue], a ; store the distance between the two sprites' adjusted X values
; Use the carry flag set by the above subtraction to determine which sprite's
; X coordinate is larger. This information is used later to set
@@ -248,11 +248,11 @@ DetectCollisionBetweenSprites:
ld b, 9
.next3
- ldh a, [hFF91] ; a = distance between adjusted X coordinates
+ ldh a, [hCollidingSpriteTempXValue] ; a = distance between adjusted X coordinates
sub b
- ldh [hFF92], a ; store distance adjusted using sprite i's direction
+ ldh [hCollidingSpriteAdjustedDistance], a
ld a, b
- ldh [hFF91], a ; store 7 or 9 depending on sprite i's delta X
+ ldh [hCollidingSpriteTempXValue], a ; store 7 or 9 depending on sprite i's delta X
jr c, .collision
; If sprite j's delta X is 0, then b = 7, else b = 9.
@@ -265,15 +265,15 @@ DetectCollisionBetweenSprites:
ld b, 9
.next4
- ldh a, [hFF92] ; a = distance adjusted using sprite i's direction
+ ldh a, [hCollidingSpriteAdjustedDistance]
sub b ; adjust distance using sprite j's direction
jr z, .collision
jr nc, .next ; go to next sprite if distance is still positive after both adjustments
.collision
- ldh a, [hFF91] ; a = 7 or 9 depending on sprite i's delta X
+ ldh a, [hCollidingSpriteTempXValue] ; a = 7 or 9 depending on sprite i's delta X
ld b, a
- ldh a, [hFF90] ; a = 7 or 9 depending on sprite i's delta Y
+ ldh a, [hCollidingSpriteTempYValue] ; a = 7 or 9 depending on sprite i's delta Y
inc l
; If delta X isn't 0 and delta Y is 0, then b = %0011, else b = %1100.
@@ -296,7 +296,7 @@ DetectCollisionBetweenSprites:
; to indicate which sprite the collision occurred with
inc l
inc l
- ldh a, [hFF8F] ; a = loop counter
+ ldh a, [hCollidingSpriteOffset]
ld de, SpriteCollisionBitTable
add a
add e
@@ -313,7 +313,7 @@ DetectCollisionBetweenSprites:
ld [hl], a
.next
- ldh a, [hFF8F] ; a = loop counter
+ ldh a, [hCollidingSpriteOffset]
inc a
cp $10
jp nz, .loop
diff --git a/home/hidden_objects.asm b/home/hidden_objects.asm
index 6e7d980a..2e3510b0 100644
--- a/home/hidden_objects.asm
+++ b/home/hidden_objects.asm
@@ -26,7 +26,7 @@ CheckForHiddenObjectOrBookshelfOrCardKeyDoor::
jr .done
.hiddenObjectNotFound
farcall PrintBookshelfText
- ldh a, [hFFDB]
+ ldh a, [hInteractedWithBookshelf]
and a
jr z, .done
.nothingFound
diff --git a/ram/hram.asm b/ram/hram.asm
index 0607a484..72e9e13a 100644
--- a/ram/hram.asm
+++ b/ram/hram.asm
@@ -85,10 +85,10 @@ hSpriteScreenX:: db
hSpriteScreenY:: db
NEXTU
-hFF8F:: db
-hFF90:: db
-hFF91:: db
-hFF92:: db
+hCollidingSpriteOffset:: db
+hCollidingSpriteTempYValue:: db
+hCollidingSpriteTempXValue:: db
+hCollidingSpriteAdjustedDistance:: db
ENDU
hTilePlayerStandingOn:: db
@@ -327,11 +327,8 @@ hItemCounter::
hSavedCoordIndex::
hMissableObjectIndex::
hGymTrashCanRandNumMask::
+hInteractedWithBookshelf::
db
-
-NEXTU
-hFFDB:: db
-hFFDC:: db
ENDU
ds 1
diff --git a/ram/wram.asm b/ram/wram.asm
index 753a9678..8c246b8a 100644
--- a/ram/wram.asm
+++ b/ram/wram.asm
@@ -1914,7 +1914,7 @@ wMissableObjectFlagsEnd::
ds 7
; temp copy of SPRITESTATEDATA1_IMAGEINDEX (used for sprite facing/anim)
-wd5cd:: db
+wSpriteImageIndexBackup:: db
; each entry consists of 2 bytes
; * the sprite ID (depending on the current map)