diff options
author | Colton G. Rushton <colton51919@gmail.com> | 2020-01-19 17:06:53 -0400 |
---|---|---|
committer | Colton G. Rushton <colton51919@gmail.com> | 2020-01-19 17:06:53 -0400 |
commit | 8d4513d2ee706913b4fab27ddca8931bec13f659 (patch) | |
tree | 94aa21c51d96355b7127046f947145d41cc72791 | |
parent | 320b70b601356e1ac0fbd5090a8d3b9ed6746d91 (diff) |
Added in a new wiki page explaining how to restore the move grammar to how it was in Japanese Crystal, just in a localized state now.
-rw-r--r-- | Restore-and-localize-the-Japanese-move-grammar.md | 165 |
1 files changed, 165 insertions, 0 deletions
diff --git a/Restore-and-localize-the-Japanese-move-grammar.md b/Restore-and-localize-the-Japanese-move-grammar.md new file mode 100644 index 0000000..8647209 --- /dev/null +++ b/Restore-and-localize-the-Japanese-move-grammar.md @@ -0,0 +1,165 @@ +In Japanese, there are five ways to say "*POKéMON* used *MOVE*!": + +- "*POKéMON*の *MOVE* つかった!" ("*POKéMON* used *MOVE*!") +- "*POKéMON*の *MOVE*した!" ("*POKéMON* did *MOVE*!") +- "*POKéMON*の *MOVE* した!" ("*POKéMON* did *MOVE*!" for long move names) +- "*POKéMON*の *MOVE* こうげき!" ("*POKéMON*'s *MOVE* attack!") +- "*POKéMON*の *MOVE*!" ("*POKéMON*'s *MOVE*!") + +This tutorial will showcase how to localize and restore the grammar table that once held the code responsible for showing these five ways. This tutorial will also fix grammatical issues with some of the move text. + + +## Contents + +1. [Add in new, translated move text and fix other text](#1-add-in-new-translated-move-text-and-fix-other-text) +2. [Make the move text show properly ingame](#2-make-the-move-text-show-properly-ingame) + +## 1. Add in new, translated move text and fix other text + +Edit [data/text/common_2.asm](../blob/master/data/text/common_2.asm): + +```diff + _ActorNameText:: + text "<USER>@" + text_end + +_UsedMove1Text:: +- text_start ++ text " used" +- line "used @" ++ line "@" + text_end + +_UsedMove2Text:: ++_UsedMove3Text:: +- text_start ++ text " did" +- line "used @" ++ line "@" + text_end ++ ++_UsedMove4Text:: ++_UsedMove5Text:: ++ text "'s" ++ line "@" ++ text_end ++ +_UsedInsteadText:: +- text "instead," ++ text " instead used" +- cont "@" ++ line "@" + text_end + +_MoveNameText:: + text_ram wStringBuffer2 + text_end +- +- text_end ; unused + +_EndUsedMove1Text:: ++_EndUsedMove2Text:: ++_EndUsedMove3Text:: ++_EndUsedMove5Text:: + text "!" + done + +-_EndUsedMove2Text:: +- text "!" +- done +- +-_EndUsedMove3Text:: +- text "!" +- done +- +_EndUsedMove4Text:: +- text "!" ++ text " attack!" + done +- +-_EndUsedMove5Text:: +- text "!" +- done +``` + +## 2. Make the move text show properly ingame + +Edit [engine/battle/used_move_text.asm](../blob/master/engine/battle/used_move_text.asm): + +```diff + push hl + farcall CheckUserIsCharging + pop hl + jr nz, .grammar + + ; update last move + ld a, [wMoveGrammar] + ld [hl], a + ld [de], a + +.grammar + call GetMoveGrammar ; convert move id to grammar index +- +-; everything except 'instead' made redundant in localization + + ; check obedience + ld a, [wAlreadyDisobeyed] + and a +- ld hl, UsedMove2Text + ret nz + + ; check move grammar + ld a, [wMoveGrammar] +- cp $3 ++ and a +- ld hl, UsedMove2Text ++ ld hl, UsedMove1Text +- ret c ++ ret z ++ dec a +- ld hl, UsedMove1Text ++ ld hl, UsedMove2Text ++ ret z ++ dec a ++ ld hl, UsedMove3Text ++ ret z ++ dec a ++ ld hl, UsedMove4Text ++ ret z ++ ld hl, UsedMove5Text + ret + +UsedMove1Text: + text_far _UsedMove1Text + text_asm + jr UsedMoveText_CheckObedience + +UsedMove2Text: + text_far _UsedMove2Text + text_asm ++ jr UsedMoveText_CheckObedience ++ ++UsedMove3Text: ++ text_far _UsedMove3Text ++ text_asm ++ jr UsedMoveText_CheckObedience ++ ++UsedMove4Text: ++ text_far _UsedMove4Text ++ text_asm ++ jr UsedMoveText_CheckObedience ++ +-UsedMove2Text: ++UsedMove5Text: + text_far _UsedMove2Text + text_asm +UsedMoveText_CheckObedience: +; check obedience + ld a, [wAlreadyDisobeyed] + and a + jr z, .GetMoveNameText +-; print "instead," ++; print "instead used" + ld hl, .UsedInsteadText + ret +```
\ No newline at end of file |