diff options
author | Rangi <remy.oukaour+rangi42@gmail.com> | 2018-10-28 00:31:01 -0400 |
---|---|---|
committer | Rangi <remy.oukaour+rangi42@gmail.com> | 2018-10-28 00:32:00 -0400 |
commit | 0525c7d507ecda0fd3f5452886ed13973f21bd80 (patch) | |
tree | 9b3da193a80d9d93f17109e2fd4e2c15593da7b9 | |
parent | 97019bae61eb8bd177aa36588e0efb2edc163b0a (diff) |
Wording
-rw-r--r-- | Improve-the-outdoor-sprite-system.md | 8 |
1 files changed, 4 insertions, 4 deletions
diff --git a/Improve-the-outdoor-sprite-system.md b/Improve-the-outdoor-sprite-system.md index c0786e4..ba812bf 100644 --- a/Improve-the-outdoor-sprite-system.md +++ b/Improve-the-outdoor-sprite-system.md @@ -405,7 +405,7 @@ Edit [data/maps/outdoor_sprites.asm](../blob/master/data/maps/outdoor_sprites.as + db 0 ; end ``` -Now we're done! These new sets are easier to define and debug than before. For example, here's the one for Olivine City's map group: +Now it works! These new sets are easier to define and debug than before. For example, here's the one for Olivine City's map group: ``` ; OlivineCity and Route40 are connected @@ -446,8 +446,8 @@ Some things to note about the new system: Two sprites are just copies of other sprites, but with the walking frames removed: -- `SPRITE_STANDING_YOUNGSTER` is a non-walking version of `SPRITE_YOUNGSTER` used by `OlivineGroupSprites` and `CianwoodGroupSprites` -- `SPRITE_KURT_OUTSIDE` is a non-walking version of `SPRITE_KURT` used by `AzaleaGroupSprites` +- `SPRITE_STANDING_YOUNGSTER` is a non-walking version of `SPRITE_YOUNGSTER` used by `OlivineGroupSprites` and `CianwoodGroupSprites`. +- `SPRITE_KURT_OUTSIDE` is a non-walking version of `SPRITE_KURT` used by `AzaleaGroupSprites`. This used to be necessary because if there were ten or more walking sprites, you couldn't control which nine would be loaded first and have their walking frames available; it was up to `LoadAndSortSprites`. @@ -466,7 +466,7 @@ Three sprites are actually variable sprites: At first glance, it makes sense why these variable sprites exist. They're a neat way to have ten or more walking sprites: if you know that only nine will be needed at a time, then a variable sprite can look like one now and another later. -...Except, all three of those are used in outdoor sprite sets with enough room for more walking sprites! `VioletGroupSprites` and `EcruteakGroupSprites` only use 8 of max 9; `AzaleaGroupSprites` uses 6 of max 9; and `OlivineGroupSprites` and `CianwoodGroupSprites` use 8 of max 9. +...Except, all three of those are used in outdoor sprite sets with enough room for more walking sprites! Out of a maximum 9 walking sprites, `VioletGroupSprites` and `EcruteakGroupSprites` only use 8; `AzaleaGroupSprites` uses 6; and `OlivineGroupSprites` and `CianwoodGroupSprites` use 8. It turns out that Crystal doesn't need these variable sprites, but Gold and Silver did. Crystal is exclusive to the GameBoy Color, so it has twice as much VRAM, and it's able to load walking frames for every sprite in bank 1 while still having room for standing-still sprites in bank 0. But Gold and Silver supported the Super GameBoy, which only had one VRAM bank; so still sprites like `SPRITE_POKE_BALL` and `SPRITE_SLOWPOKE` used up the same space budget as walking sprites. |