summaryrefslogtreecommitdiff
diff options
context:
space:
mode:
-rw-r--r--docs/bugs_and_glitches.md11
-rwxr-xr-xengine/overworld.asm6
-rwxr-xr-xengine/player_movement.asm3
3 files changed, 15 insertions, 5 deletions
diff --git a/docs/bugs_and_glitches.md b/docs/bugs_and_glitches.md
index 596463a09..a72e4afc3 100644
--- a/docs/bugs_and_glitches.md
+++ b/docs/bugs_and_glitches.md
@@ -878,6 +878,8 @@ This is a bug with `DoPlayerMovement.CheckWarp` in [engine/player_movement.asm](
; making bumps silent.
ld a, [WalkingDirection]
+ ; cp STANDING
+ ; jr z, .not_warp
ld e, a
ld d, 0
ld hl, .EdgeWarps
@@ -889,6 +891,7 @@ This is a bug with `DoPlayerMovement.CheckWarp` in [engine/player_movement.asm](
ld a, 1
ld [wd041], a
ld a, [WalkingDirection]
+ ; This is in the wrong place.
cp STANDING
jr z, .not_warp
```
@@ -1221,8 +1224,8 @@ In [engine/overworld.asm](/engine/overworld.asm):
```asm
LoadSpriteGFX: ; 14306
-; Bug: b is not preserved, so
-; it's useless as a next count.
+; Bug: b is not preserved, so it's useless as a next count.
+; Uncomment the lines below to fix.
ld hl, UsedSprites
ld b, SPRITE_GFX_LIST_CAPACITY
@@ -1241,13 +1244,15 @@ LoadSpriteGFX: ; 14306
ret
.LoadSprite:
+ ; push bc
call GetSprite
+ ; pop bc
ld a, l
ret
; 1431e
```
-**Fix:** Surround `call GetSprite` with `push bc`/`pop bc`.
+**Fix:** Uncomment `push bc` and `pop bc`.
## `ChooseWildEncounter` doesn't really validate the wild Pokémon species
diff --git a/engine/overworld.asm b/engine/overworld.asm
index 90291b616..a085d1d5a 100755
--- a/engine/overworld.asm
+++ b/engine/overworld.asm
@@ -389,8 +389,8 @@ AddSpriteGFX: ; 142e5
LoadSpriteGFX: ; 14306
-; Bug: b is not preserved, so
-; it's useless as a next count.
+; Bug: b is not preserved, so it's useless as a next count.
+; Uncomment the lines below to fix.
ld hl, UsedSprites
ld b, SPRITE_GFX_LIST_CAPACITY
@@ -409,7 +409,9 @@ LoadSpriteGFX: ; 14306
ret
.LoadSprite:
+ ; push bc
call GetSprite
+ ; pop bc
ld a, l
ret
; 1431e
diff --git a/engine/player_movement.asm b/engine/player_movement.asm
index 5bc3e1f0b..34ca81fe9 100755
--- a/engine/player_movement.asm
+++ b/engine/player_movement.asm
@@ -409,6 +409,8 @@ DoPlayerMovement:: ; 80000
; making bumps silent.
ld a, [WalkingDirection]
+ ; cp STANDING
+ ; jr z, .not_warp
ld e, a
ld d, 0
ld hl, .EdgeWarps
@@ -420,6 +422,7 @@ DoPlayerMovement:: ; 80000
ld a, 1
ld [wd041], a
ld a, [WalkingDirection]
+ ; This is in the wrong place.
cp STANDING
jr z, .not_warp