diff options
Diffstat (limited to 'Add-a-new-move.md')
-rw-r--r-- | Add-a-new-move.md | 13 |
1 files changed, 5 insertions, 8 deletions
diff --git a/Add-a-new-move.md b/Add-a-new-move.md index 9064298..b31ebff 100644 --- a/Add-a-new-move.md +++ b/Add-a-new-move.md @@ -33,18 +33,15 @@ Edit [constants/move_constants.asm](../blob/master/constants/move_constants.asm) ... const BEAT_UP ; fb + const NASTY_PLOT ; fc - NUM_ATTACKS EQU const_value + -1 - -- const MOVE_OR_ANIM_FC ; fc - const MOVE_OR_ANIM_FD ; fd - const MOVE_OR_ANIM_FE ; fe + NUM_ATTACKS EQU const_value - 1 ; Battle animations use the same constants as the moves up to this point + const_next $ff const ANIM_SWEET_SCENT_2 ; ff ... ``` -Move constants are actually a subset of battle animation constants. $01 to $FB are the 251 constants from `POUND` to `BEAT_UP`; then `MOVE_OR_ANIM_FC`, `MOVE_OR_ANIM_FD`, and `MOVE_OR_ANIM_FE` are unused; then `ANIM_SWEET_SCENT_2` and above correspond to animations beyond the ones played for moves (throwing Poké Balls, showing confusion, etc). Anyway, those three `MOVE_OR_ANIM_*` constants can all be used for new moves. +Move constants are actually a subset of battle animation constants. $01 to $FB are the 251 constants from `POUND` to `BEAT_UP`; then $FC, $FD, and $FE are unused; then starting at $FF, `ANIM_SWEET_SCENT_2` and above correspond to animations beyond the ones played for moves (throwing Poké Balls, showing confusion, etc). Anyway, those three unused values can all be used for new moves. ## 2. Give it a name and description @@ -192,9 +189,9 @@ It's pretty easy to replace the unused moves 252, 253, and 254 ($FC, $FD, and $F ### 6.1. Prepare move $FF -Let's say the 255th move will be Fake Out. First, follow the steps as usual. Define `FAKE_OUT` after `MOVE_OR_ANIM_FE`; give it a name, description, and battle properties (`FAKE_OUT, EFFECT_FAKE_OUT, 40, NORMAL, 100, 10, 0`); give it an animation (it can share `BattleAnim_Tackle`); and add it to Pokémon learnsets. +Let's say the 255th move will be Fake Out. First, follow the steps as usual. Define `FAKE_OUT` after your move $FE; give it a name, description, and battle properties (`FAKE_OUT, EFFECT_FAKE_OUT, 40, NORMAL, 100, 10, 0`); give it an animation (it can share `BattleAnim_Tackle`); and add it to Pokémon learnsets. -Remember, this time we're introducing a new constant, not replacing an old one. So `FAKE_OUT` gets added between `MOVE_OR_ANIM_FE` and `ANIM_SWEET_SCENT_2`; `ANIM_SWEET_SCENT_2` will be shifted from $FF to $100; `ANIM_THROW_POKE_BALL` from $100 to $101; and so on. +Remember, this time we're introducing a new constant, not replacing an old one. So you also need to change `const_next $ff` to `const_next $100` for the battle animation constants, or just remove the `const_next` since there's no longer a gap between moves and battle animations. This means `ANIM_SWEET_SCENT_2` will be shifted from $FF to $100; `ANIM_THROW_POKE_BALL` from $100 to $101; and so on. ### 6.2. Swap move $FF with Struggle |