-
Notifications
You must be signed in to change notification settings - Fork 1k
Remove Some Japanese Text Grammar Functions
YakiNeen edited this page Dec 1, 2023
·
2 revisions
Code by JoJoBear13 (in ShinPokered)
...
-_Used1Text::
- text_start
- line "used @"
- text_end
-_Used2Text::
- text_start
- line "used @"
- text_end
+_UsedText::
+ text_start
+ line "used @"
+ text_end
...
...
-_ExclamationPoint1Text::
- text "!"
- done
-_ExclamationPoint2Text::
- text "!"
- done
-_ExclamationPoint3Text::
- text "!"
- done
-_ExclamationPoint4Text::
- text "!"
- done
-_ExclamationPoint5Text::
- text "!"
- done
+_ExclamationPointText::
+ text "!"
+ done
...
...
-_UnaffectedText::
- text "<TARGET>'s"
- line "unaffected!"
- prompt
...
...
-; this function wastes time calling DetermineExclamationPointTextNum
-; and choosing between Used1Text and Used2Text, even though
-; those text strings are identical and both continue at PrintInsteadText
-; this likely had to do with Japanese grammar that got translated,
-; but the functionality didn't get removed
MonName1Text:
text_far _MonName1Text
text_asm
ldh a, [hWhoseTurn]
and a
ld a, [wPlayerMoveNum]
ld hl, wPlayerUsedMove
jr z, .playerTurn
ld a, [wEnemyMoveNum]
ld hl, wEnemyUsedMove
.playerTurn
ld [hl], a
ld [wd11e], a
- call DetermineExclamationPointTextNum
- ld a, [wMonIsDisobedient]
- and a
- ld hl, Used2Text
- ret nz
- ld a, [wd11e]
- cp 3
- ld hl, Used2Text
- ret c
- ld hl, Used1Text
+ ld hl, UsedText
ret
-Used1Text:
- text_far _Used1Text
- text_asm
- jr PrintInsteadText
-Used2Text:
- text_far _Used2Text
- text_asm
- ; fall through
+UsedText:
+ text_far _UsedText
+ text_asm
+ ; fall through
...
...
PrintMoveName:
ld hl, _PrintMoveName
ret
_PrintMoveName:
text_far _MoveNameText
text_asm
- ld hl, ExclamationPointPointerTable
- ld a, [wd11e] ; exclamation point num
- add a
- push bc
- ld b, $0
- ld c, a
- add hl, bc
- pop bc
- ld a, [hli]
- ld h, [hl]
- ld l, a
- ret
+ ld hl, ExclamationPointText
+ ret
+ExclamationPointText:
+ text_far _ExclamationPointText
+ text_end
+ ret
-ExclamationPointPointerTable:
- dw ExclamationPoint1Text
- dw ExclamationPoint2Text
- dw ExclamationPoint3Text
- dw ExclamationPoint4Text
- dw ExclamationPoint5Text
-ExclamationPoint1Text:
- text_far _ExclamationPoint1Text
- text_end
-ExclamationPoint2Text:
- text_far _ExclamationPoint2Text
- text_end
-ExclamationPoint3Text:
- text_far _ExclamationPoint3Text
- text_end
-ExclamationPoint4Text:
- text_far _ExclamationPoint4Text
- text_end
-ExclamationPoint5Text:
- text_far _ExclamationPoint5Text
- text_end
-; this function does nothing useful
-; if the move being used is in set [1-4] from ExclamationPointMoveSets,
-; use ExclamationPoint[1-4]Text
-; otherwise, use ExclamationPoint5Text
-; but all five text strings are identical
-; this likely had to do with Japanese grammar that got translated,
-; but the functionality didn't get removed
-DetermineExclamationPointTextNum:
- push bc
- ld a, [wd11e] ; move ID
- ld c, a
- ld b, $0
- ld hl, ExclamationPointMoveSets
-.loop
- ld a, [hli]
- cp $ff
- jr z, .done
- cp c
- jr z, .done
- and a
- jr nz, .loop
- inc b
- jr .loop
-.done
- ld a, b
- ld [wd11e], a ; exclamation point num
- pop bc
- ret
-INCLUDE "data/moves/grammar.asm"
PrintMoveFailureText:
ld de, wPlayerMoveEffect
ldh a, [hWhoseTurn]
and a
jr z, .playersTurn
ld de, wEnemyMoveEffect
.playersTurn
ld hl, DoesntAffectMonText
ld a, [wDamageMultipliers]
and $7f
jr z, .gotTextToPrint
ld hl, AttackMissedText
ld a, [wCriticalHitOrOHKO]
cp $ff
jr nz, .gotTextToPrint
- ld hl, UnaffectedText
+ ld hl, IsUnaffectedText
.gotTextToPrint
push de
call PrintText
xor a
ld [wCriticalHitOrOHKO], a
pop de
ld a, [de]
cp JUMP_KICK_EFFECT
ret nz
...
...
-UnaffectedText:
- text_far _UnaffectedText
- text_end
...
delete data\moves\grammar.asm.