ref: a1fc73603e0719975cf74021b0f70e9dfdfa8ff3
parent: 7a2a20528136b9a2452a313cd50c46a45f9a5cb0
author: mid-kid <esteve.varela@gmail.com>
date: Thu Nov 30 15:27:25 EST 2017
Label all of PARTYMENUACTION_* It's pretty clear what it's used for. PartyMenuActionText is used for two things: 1) Storing what kind of action we're going to do (<$10) 2) Storing the text for some kind of healing stuff I'm not entirely sure (>=$f0) In the former case, if GetPartyMenuTilemapPointers is ran, it will be used to pick a sequence of actions that should be done, specified in the table, and it'll print the corresponding string using the PartyMenuStrings table. The items in the sequence of actions that should be done are in WritePartyMenuTilemap. Strangely enough, one possible value is left completely unused: PARTYMENUACTION_GIVE_MON_FEMALE. It works in the exact same way as it's male counterpart, and as such I don't believe it was used in the japanese version either, since it doesn't matter which gender your 'mon is when you put 'em in the daycare.
--- a/battle/core.asm
+++ b/battle/core.asm
@@ -2995,7 +2995,7 @@
PickPartyMonInBattle: ; 3d33c
.loop
- ld a, $2 ; Which PKMN?
+ ld a, PARTYMENUACTION_SWITCH ; Which PKMN?
ld [PartyMenuActionText], a
call JumpToPartyMenuAndPrintText
call SelectBattleMon
--- a/constants/item_constants.asm
+++ b/constants/item_constants.asm
@@ -416,16 +416,16 @@
; PartyMenuActionText
const_def
- const PARTYMENUACTION_00
+ const PARTYMENUACTION_CHOOSE_POKEMON
const PARTYMENUACTION_HEALING_ITEM
- const PARTYMENUACTION_02
- const PARTYMENUACTION_TEACH_TM
- const PARTYMENUACTION_04
+ const PARTYMENUACTION_SWITCH
+ const PARTYMENUACTION_TEACH_TMHM
+ const PARTYMENUACTION_MOVE
const PARTYMENUACTION_EVO_STONE
- const PARTYMENUACTION_06
- const PARTYMENUACTION_07
- const PARTYMENUACTION_08
- const PARTYMENUACTION_MOBILE
+ const PARTYMENUACTION_GIVE_MON
+ const PARTYMENUACTION_GIVE_MON_FEMALE ; unused
+ const PARTYMENUACTION_GIVE_ITEM
+ const PARTYMENUACTION_MOBILE ; mobile
const_value set $f0
const PARTYMENUTEXT_HEAL_PSN
--- a/engine/npctrade.asm
+++ b/engine/npctrade.asm
@@ -39,7 +39,7 @@
jr c, .done
; Select givemon from party
- ld b, 6
+ ld b, PARTYMENUACTION_GIVE_MON
callba SelectTradeOrDaycareMon
ld a, TRADE_CANCEL
jr c, .done
--- a/engine/pack.asm
+++ b/engine/pack.asm
@@ -603,7 +603,7 @@
push af
res NO_TEXT_SCROLL, a
ld [Options], a
- ld a, $8
+ ld a, PARTYMENUACTION_GIVE_ITEM
ld [PartyMenuActionText], a
call ClearBGPalettes
callba LoadPartyMenuGFX
--- a/engine/startmenu.asm
+++ b/engine/startmenu.asm
@@ -745,7 +745,7 @@
callba HoldSwitchmonIcon
callba InitPartyMenuNoCancel
- ld a, 4
+ ld a, PARTYMENUACTION_MOVE
ld [PartyMenuActionText], a
callba WritePartyMenuTilemap
callba PrintPartyMenuText
--- a/engine/tmhm2.asm
+++ b/engine/tmhm2.asm
@@ -80,7 +80,7 @@
callba LoadPartyMenuGFX
callba InitPartyMenuWithCancel
callba InitPartyMenuGFX
- ld a, $3 ; TeachWhichPKMNString
+ ld a, PARTYMENUACTION_TEACH_TMHM
ld [PartyMenuActionText], a
.loopback
callba WritePartyMenuTilemap
--- a/event/daycare.asm
+++ b/event/daycare.asm
@@ -123,7 +123,7 @@
jr c, .OnlyOneMon
ld a, DAYCARETEXT_WHICH_ONE
call PrintDayCareText
- ld b, 6
+ ld b, PARTYMENUACTION_GIVE_MON
callba SelectTradeOrDaycareMon
jr c, .Declined
ld a, [CurPartySpecies]
--- a/misc/mobile_12_2.asm
+++ b/misc/mobile_12_2.asm
@@ -316,7 +316,7 @@
call Function4aad3
Function4aa34: ; 4aa34
- ld a, $9
+ ld a, PARTYMENUACTION_MOBILE
ld [PartyMenuActionText], a
callba WritePartyMenuTilemap
xor a