From 7e713ef0eb7d540d7c69ded9a3fbbfa8ce6f71ac Mon Sep 17 00:00:00 2001 From: Kermalis <29823718+Kermalis@users.noreply.github.com> Date: Thu, 14 Sep 2023 23:55:49 -0400 Subject: [PATCH] Luminous Cave data --- data/data_80DC464.s | 42 +--- include/code_8098BDC.h | 1 + include/luminous_cave.h | 26 +-- include/menu.h | 2 +- include/pokemon_3.h | 13 +- src/data/luminous_cave.h | 203 ++++++++++------- src/friend_area_action_menu.c | 1 - src/friend_list_menu.c | 1 - src/luminous_cave.c | 409 +++++++++++++++++----------------- src/party_list_menu.c | 1 - 10 files changed, 340 insertions(+), 359 deletions(-) diff --git a/data/data_80DC464.s b/data/data_80DC464.s index a9815c5aa..f01eb44f1 100644 --- a/data/data_80DC464.s +++ b/data/data_80DC464.s @@ -370,44 +370,4 @@ gUnknown_80DC9C8: @ 80DC9C8 .byte 0x02, 0x00, 0x02, 0x00 .byte 0x12, 0x00, 0x0e, 0x00 .byte 0x12, 0x00, 0x02, 0x00 - .byte 0x00, 0x00, 0x00, 0x00 - -@ luminous_cave -.string "pksdir0\0" - .align 2,0 - - .global gUnknown_80DC9E8 -gUnknown_80DC9E8: @ 80DC9E8 - .byte 0x00, 0x00, 0x00, 0x00 - .byte 0x03, 0x00, 0x00, 0x00 - .byte 0x00, 0x00, 0x00, 0x00 - .byte 0x00, 0x00, 0x00, 0x00 - .byte 0x00, 0x00, 0x00, 0x00 - .byte 0x00, 0x00, 0x00, 0x00 - - .global gUnknown_80DCA00 -gUnknown_80DCA00: @ 80DCA00 - .byte 0x00, 0x00, 0x00, 0x00 - .byte 0x03, 0x00, 0x00, 0x00 - .byte 0x14, 0x00, 0x04, 0x00 - .byte 0x06, 0x00, 0x03, 0x00 - .byte 0x03, 0x00, 0x00, 0x00 - .byte 0x00, 0x00, 0x00, 0x00 - - .global gUnknown_80DCA18 -gUnknown_80DCA18: @ 80DCA18 - .string "Evolve\0" - .align 2,0 - .4byte gUnknown_80DCA18 - - .global gUnknown_80DCA24 -gUnknown_80DCA24: @ 80DCA24 - .string "No\0" - .align 2,0 - .4byte gUnknown_80DCA24 - - .global gUnknown_80DCA2C -gUnknown_80DCA2C: @ 80DCA2C - .string "Yes\0" - .align 2,0 - .4byte gUnknown_80DCA2C \ No newline at end of file + .byte 0x00, 0x00, 0x00, 0x00 \ No newline at end of file diff --git a/include/code_8098BDC.h b/include/code_8098BDC.h index 49bfdc684..f807b23b5 100644 --- a/include/code_8098BDC.h +++ b/include/code_8098BDC.h @@ -2,6 +2,7 @@ #define GUARD_CODE_8098BDC_H // code_8098DBC.s +extern void nullsub_104(void); extern void sub_80993D8(void); extern void sub_80993E4(void); extern void sub_8099690(u32); diff --git a/include/luminous_cave.h b/include/luminous_cave.h index 3d695cca4..7ea21ffbf 100644 --- a/include/luminous_cave.h +++ b/include/luminous_cave.h @@ -7,21 +7,21 @@ #include "pokemon_3.h" #include "text.h" -struct unkStruct_203B2B0 +// size: 0x174 +typedef struct LuminousCaveWork { - // size: 0x174 - bool8 evolutionComplete; - EvolveStatus evolveStatus; - PokemonStruct1 *pokeStruct; + /* 0x0 */ bool8 evolutionComplete; + /* 0x4 */ EvolveStatus evolveStatus; + /* 0xC */ PokemonStruct1 *pokeStruct; /* 0x10 */ bool8 pokeRenamed; /* 0x14 */ u32 evoItem1_InvIndex; // inventory index of item /* 0x18 */ u32 evoItem2_InvIndex; // inventory index of item - Item chosenItem; - u32 state; - u32 fallbackState; - u32 menuAction1; - u32 menuAction2; - u32 menuAction3; + /* 0x1C */ Item chosenItem; + /* 0x20 */ u32 state; + /* 0x24 */ u32 fallbackState; + /* 0x28 */ u32 menuAction1; + /* 0x2C */ u32 menuAction2; + /* 0x30 */ u32 menuAction3; MenuItem unk34[8]; u16 unk74[0x8]; MenuStruct unk84; @@ -34,7 +34,7 @@ struct unkStruct_203B2B0 u8 unk111; u8 unk112; UnkTextStruct2 unk114[4]; -}; +} LuminousCaveWork; void CleanLuminousCave(void); bool8 HasEvolutionCompleted(void); @@ -42,4 +42,4 @@ bool8 HasEvolutionCompleted(void); u32 sub_802465C(void); u32 sub_80246F0(void); -#endif // GUARD_LUMINOUS_CAVE_H +#endif // GUARD_LUMINOUS_CAVE_H \ No newline at end of file diff --git a/include/menu.h b/include/menu.h index d0ba9cf7e..5ed4f66b7 100644 --- a/include/menu.h +++ b/include/menu.h @@ -45,4 +45,4 @@ typedef struct unkStructFor8013AA0 SpriteOAM unk28; } unkStructFor8013AA0; -#endif // GUARD_MENU_H +#endif // GUARD_MENU_H \ No newline at end of file diff --git a/include/pokemon_3.h b/include/pokemon_3.h index 6e79a87d5..17931c9b1 100644 --- a/include/pokemon_3.h +++ b/include/pokemon_3.h @@ -3,13 +3,14 @@ #include "pokemon.h" +// size: 0x8 typedef struct EvolveStatus { - u8 evoItem1; - u8 evoItem2; - u8 unk6; - u16 evolutionConditionStatus; - s16 targetEvolveSpecies; + /* 0x0 */ u8 evoItem1; + /* 0x1 */ u8 evoItem2; + /* 0x2 */ u8 unk6; + /* 0x4 */ u16 evolutionConditionStatus; + /* 0x6 */ s16 targetEvolveSpecies; } EvolveStatus; bool8 HasRecruitedMon(s16 species); @@ -29,4 +30,4 @@ void SetDefaultIQSkills(u8 *param_1, bool8 enableSelfCurer); void sub_808F468(PokemonStruct1 *param_1, EvolveStatus *evolveStatus, u8 param_3); u32 sub_808F734(PokemonStruct1 *pokemon, s16 _species); -#endif +#endif // GUARD_POKEMON_3_H \ No newline at end of file diff --git a/src/data/luminous_cave.h b/src/data/luminous_cave.h index 337a62c3b..33ff16e42 100644 --- a/src/data/luminous_cave.h +++ b/src/data/luminous_cave.h @@ -1,106 +1,137 @@ -ALIGNED(4) static const u8 sLuminousCaveSeekAwakening[] = _( - "{CENTER_ALIGN}...{WAIT_PRESS}A voice emanates from somewhere...{EXTRA_MSG}" - "{CENTER_ALIGN}...Ye who seek awakening...{EXTRA_MSG}" - "{CENTER_ALIGN}This is Luminous Cave.{WAIT_PRESS}\n" - "{CENTER_ALIGN}Do ye seek a new evolution?"); +ALIGNED(4) static const u8 sFill[] = _("pksdir0"); -ALIGNED(4) static const u8 sLuminousCaveAskEvolution[] = _( - "{CENTER_ALIGN}Do ye seek evolution?"); +// TODO: Add "$n0" to charmap -ALIGNED(4) static const u8 sLuminousCaveEvolutionInfo[] = _( - "{CENTER_ALIGN}There are those among Pokémon\n" - "{CENTER_ALIGN}that can evolve.{EXTRA_MSG}" - "{CENTER_ALIGN}Such Pokémon can evolve at this very\n" - "{CENTER_ALIGN}spot if they satisfy certain conditions.{EXTRA_MSG}" - "{CENTER_ALIGN}Evolution brings about changes\n" - "{CENTER_ALIGN}in appearance and abilities.{EXTRA_MSG}" - "{CENTER_ALIGN}Not only that{COMMA} some Pokémon even change\n" - "{CENTER_ALIGN}type and learn different moves.{EXTRA_MSG}" - "{CENTER_ALIGN}However...{WAIT_PRESS} The requirements for\n" - "{CENTER_ALIGN}evolution differ among Pokémon.{EXTRA_MSG}" - "{CENTER_ALIGN}Some become ready for evolution\n" - "{CENTER_ALIGN}merely by leveling up.{EXTRA_MSG}" - "{CENTER_ALIGN}Still others may need special items\n" - "{CENTER_ALIGN}to attain evolution.{EXTRA_MSG}" - "{CENTER_ALIGN}Ye must also be aware of this:{EXTRA_MSG}" - "{CENTER_ALIGN}Once it has evolved{COMMA} a Pokémon\n" - "{CENTER_ALIGN}can never regain its previous form.{EXTRA_MSG}" - "{CENTER_ALIGN}That is why ye must think carefully\n" - "{CENTER_ALIGN}before committing to evolution."); +static const UnkTextStruct2 sUnknown_80DC9E8 = { + 0, 0, 0, 0, + 3, + 0, 0, + 0, 0, + 0, 0, + NULL +}; -ALIGNED(4) static const u8 sLuminousCaveYeShallReturn[] = _( - "{CENTER_ALIGN}Ye shall return if evolution\n" - "{CENTER_ALIGN}is what ye seek..."); +static const UnkTextStruct2 sUnknown_80DCA00 = { + 0, 0, 0, 0, + 3, + 20, 4, + 6, 3, + 3, 0, + NULL +}; -ALIGNED(4) static const u8 sLuminousCaveGiveItem[] = _( - "{CENTER_ALIGN}Will ye give an item for evolution?"); +ALIGNED(4) static const u8 sEvolve0[] = _("Evolve"); +UNUSED ALIGNED(4) const u8* const sEvolve[] = { sEvolve0 }; -ALIGNED(4) static const u8 sLuminousCaveGiveAnotherItem[] = _( - "{CENTER_ALIGN}Will ye give yet another item?"); +ALIGNED(4) static const u8 sNo0[] = _("No"); +UNUSED ALIGNED(4) const u8* const sNo[] = { sNo0 }; -ALIGNED(4) static const u8 sLuminousCaveLackWhatIsNeeded[] = _( - "{CENTER_ALIGN}Alas{COMMA} ye seem to lack what is needed\n" - "{CENTER_ALIGN}for evolution."); +ALIGNED(4) static const u8 sYes0[] = _("Yes"); +UNUSED ALIGNED(4) const u8* const sYes[] = { sYes0 }; -ALIGNED(4) static const u8 sLuminousCaveOnlyOneItem[] = _( - "{CENTER_ALIGN}Ye seem to have but one item."); +ALIGNED(4) static const u8 sSeekEvolutionIntro[] = _( + "{CENTER_ALIGN}...{WAIT_PRESS}A voice emanates from somewhere...{EXTRA_MSG}" + "{CENTER_ALIGN}...Ye who seek awakening...{EXTRA_MSG}" + "{CENTER_ALIGN}This is Luminous Cave.{WAIT_PRESS}\n" + "{CENTER_ALIGN}Do ye seek a new evolution?"); -ALIGNED(4) static const u8 sLuminousCaveLetUsBegin[] = _( - "{CENTER_ALIGN}...Ye who seek awakening...\n" - "{CENTER_ALIGN}Let us begin."); +ALIGNED(4) static const u8 sSeekEvolutionPrompt[] = _( + "{CENTER_ALIGN}Do ye seek evolution?"); -ALIGNED(4) static const u8 sLuminousCaveChangedAppearance[] = _( - "{CENTER_ALIGN}...{WAIT_PRESS}$n0 is undergoing changes...{EXTRA_MSG}" - "{CENTER_ALIGN}$n0{APOSTROPHE}s appearance changed...{EXTRA_MSG}"); +ALIGNED(4) static const u8 sEvolveInfo[] = _( + "{CENTER_ALIGN}There are those among Pokémon\n" + "{CENTER_ALIGN}that can evolve.{EXTRA_MSG}" + "{CENTER_ALIGN}Such Pokémon can evolve at this very\n" + "{CENTER_ALIGN}spot if they satisfy certain conditions.{EXTRA_MSG}" + "{CENTER_ALIGN}Evolution brings about changes\n" + "{CENTER_ALIGN}in appearance and abilities.{EXTRA_MSG}" + "{CENTER_ALIGN}Not only that{COMMA} some Pokémon even change\n" + "{CENTER_ALIGN}type and learn different moves.{EXTRA_MSG}" + "{CENTER_ALIGN}However...{WAIT_PRESS} The requirements for\n" + "{CENTER_ALIGN}evolution differ among Pokémon.{EXTRA_MSG}" + "{CENTER_ALIGN}Some become ready for evolution\n" + "{CENTER_ALIGN}merely by leveling up.{EXTRA_MSG}" + "{CENTER_ALIGN}Still others may need special items\n" + "{CENTER_ALIGN}to attain evolution.{EXTRA_MSG}" + "{CENTER_ALIGN}Ye must also be aware of this:{EXTRA_MSG}" + "{CENTER_ALIGN}Once it has evolved{COMMA} a Pokémon\n" + "{CENTER_ALIGN}can never regain its previous form.{EXTRA_MSG}" + "{CENTER_ALIGN}That is why ye must think carefully\n" + "{CENTER_ALIGN}before committing to evolution."); -ALIGNED(4) static const u8 sLuminousCaveEvolved[] = _( - "{CENTER_ALIGN}It evolved from {COLOR_1 GREEN}{ARG_POKEMON_0}{END_COLOR_TEXT_1}\n" - "{CENTER_ALIGN}to {COLOR_1 YELLOW}{ARG_POKEMON_1}{END_COLOR_TEXT_1}!"); +ALIGNED(4) static const u8 sYeShallReturn[] = _( + "{CENTER_ALIGN}Ye shall return if evolution\n" + "{CENTER_ALIGN}is what ye seek..."); -ALIGNED(4) static const u8 sLuminousCaveComeAlone[] = _( - "{CENTER_ALIGN}...{EXTRA_MSG}" - "{CENTER_ALIGN}One cannot evolve if one\n" - "{CENTER_ALIGN}is in the company of others.{EXTRA_MSG}" - "{CENTER_ALIGN}Come alone if ye wish to evolve."); +ALIGNED(4) static const u8 sGiveItemPrompt[] = _( + "{CENTER_ALIGN}Will ye give an item for evolution?"); -ALIGNED(4) static const u8 sLuminousCaveLackLevel[] = _( - "{CENTER_ALIGN}...{EXTRA_MSG}" - "{CENTER_ALIGN}Ye cannot evolve yet.{EXTRA_MSG}" - "{CENTER_ALIGN}Ye have not high enough a level."); +ALIGNED(4) static const u8 sGiveAnotherItemPrompt[] = _( + "{CENTER_ALIGN}Will ye give yet another item?"); -ALIGNED(4) static const u8 sLuminousCaveCantEvolveAnymore[] = _( - "{CENTER_ALIGN}...{EXTRA_MSG}" - "{CENTER_ALIGN}Ye cannot evolve anymore."); +ALIGNED(4) static const u8 sLackWhatIsNeeded[] = _( + "{CENTER_ALIGN}Alas{COMMA} ye seem to lack what is needed\n" + "{CENTER_ALIGN}for evolution."); -ALIGNED(4) static const u8 sLuminousCaveLackFriendArea[] = _( - "{CENTER_ALIGN}...{EXTRA_MSG}" - "{CENTER_ALIGN}Ye cannot evolve yet.{EXTRA_MSG}" - "{CENTER_ALIGN}Ye need your Friend Area to evolve."); +ALIGNED(4) static const u8 sOnlyOneItem[] = _( + "{CENTER_ALIGN}Ye seem to have but one item."); -ALIGNED(4) static const u8 sLuminousCaveLackRoom[] = _( - "{CENTER_ALIGN}...{EXTRA_MSG}" - "{CENTER_ALIGN}Ye cannot evolve yet.{EXTRA_MSG}" - "{CENTER_ALIGN}The Friend Area to which ye shall go\n" - "{CENTER_ALIGN}has no room for ye."); +ALIGNED(4) static const u8 sLetUsBegin[] = _( + "{CENTER_ALIGN}...Ye who seek awakening...\n" + "{CENTER_ALIGN}Let us begin."); -ALIGNED(4) static const u8 sLuminousCaveLackIQ[] = _( - "{CENTER_ALIGN}...{EXTRA_MSG}" - "{CENTER_ALIGN}Ye cannot evolve yet.{EXTRA_MSG}" - "{CENTER_ALIGN}Ye seem to lack the IQ to evolve."); +ALIGNED(4) static const u8 sFmtChangedAppearance[] = _( + "{CENTER_ALIGN}...{WAIT_PRESS}$n0 is undergoing changes...{EXTRA_MSG}" + "{CENTER_ALIGN}$n0{APOSTROPHE}s appearance changed...{EXTRA_MSG}"); -ALIGNED(4) static const u8 sLuminousCaveLackItem[] = _( - "{CENTER_ALIGN}{CENTER_ALIGN}...{EXTRA_MSG}" - "{CENTER_ALIGN}Ye cannot evolve yet.{EXTRA_MSG}" - "{CENTER_ALIGN}Ye seem to lack an item to evolve."); +ALIGNED(4) static const u8 sFmtEvolved[] = _( + "{CENTER_ALIGN}It evolved from {COLOR_1 GREEN}{ARG_POKEMON_0}{END_COLOR_TEXT_1}\n" + "{CENTER_ALIGN}to {COLOR_1 YELLOW}{ARG_POKEMON_1}{END_COLOR_TEXT_1}!"); -ALIGNED(4) static const u8 sLuminousCaveCantEvolveYet[] = _( - "{CENTER_ALIGN}{CENTER_ALIGN}...{EXTRA_MSG}" - "{CENTER_ALIGN}Ye cannot evolve yet. "); +ALIGNED(4) static const u8 sComeAlone[] = _( + "{CENTER_ALIGN}...{EXTRA_MSG}" + "{CENTER_ALIGN}One cannot evolve if one\n" + "{CENTER_ALIGN}is in the company of others.{EXTRA_MSG}" + "{CENTER_ALIGN}Come alone if ye wish to evolve."); -ALIGNED(4) static const u8 sLuminousCaveGiveName[] = _( - "{CENTER_ALIGN}Ye must give a name to\n" - "{CENTER_ALIGN}the evolved Pokémon. "); +ALIGNED(4) static const u8 sLackLevel[] = _( + "{CENTER_ALIGN}...{EXTRA_MSG}" + "{CENTER_ALIGN}Ye cannot evolve yet.{EXTRA_MSG}" + "{CENTER_ALIGN}Ye have not high enough a level."); -ALIGNED(4) static const u8 sFill1[] = "pksdir0"; -// TODO: This may be for the file after, which has no data? -ALIGNED(4) static const u8 sFill2[] = "pksdir0"; \ No newline at end of file +ALIGNED(4) static const u8 sNoMoreEvolutions[] = _( + "{CENTER_ALIGN}...{EXTRA_MSG}" + "{CENTER_ALIGN}Ye cannot evolve anymore."); + +ALIGNED(4) static const u8 sLackFriendArea[] = _( + "{CENTER_ALIGN}...{EXTRA_MSG}" + "{CENTER_ALIGN}Ye cannot evolve yet.{EXTRA_MSG}" + "{CENTER_ALIGN}Ye need your Friend Area to evolve."); + +ALIGNED(4) static const u8 sLackFriendAreaRoom[] = _( + "{CENTER_ALIGN}...{EXTRA_MSG}" + "{CENTER_ALIGN}Ye cannot evolve yet.{EXTRA_MSG}" + "{CENTER_ALIGN}The Friend Area to which ye shall go\n" + "{CENTER_ALIGN}has no room for ye."); + +ALIGNED(4) static const u8 sLackIQ[] = _( + "{CENTER_ALIGN}...{EXTRA_MSG}" + "{CENTER_ALIGN}Ye cannot evolve yet.{EXTRA_MSG}" + "{CENTER_ALIGN}Ye seem to lack the IQ to evolve."); + +ALIGNED(4) static const u8 sLackItem[] = _( + "{CENTER_ALIGN}{CENTER_ALIGN}...{EXTRA_MSG}" + "{CENTER_ALIGN}Ye cannot evolve yet.{EXTRA_MSG}" + "{CENTER_ALIGN}Ye seem to lack an item to evolve."); + +ALIGNED(4) static const u8 sCannotEvolveYet[] = _( + "{CENTER_ALIGN}{CENTER_ALIGN}...{EXTRA_MSG}" + "{CENTER_ALIGN}Ye cannot evolve yet. "); + +ALIGNED(4) static const u8 sMustGiveName[] = _( + "{CENTER_ALIGN}Ye must give a name to\n" + "{CENTER_ALIGN}the evolved Pokémon. "); + +// TODO: These are for 2 files after, which have no data +ALIGNED(4) static const u8 sFill1[] = _("pksdir0"); +ALIGNED(4) static const u8 sFill2[] = _("pksdir0"); \ No newline at end of file diff --git a/src/friend_area_action_menu.c b/src/friend_area_action_menu.c index cbf01c9e8..e4eb31388 100644 --- a/src/friend_area_action_menu.c +++ b/src/friend_area_action_menu.c @@ -46,7 +46,6 @@ extern u8 sub_8027DCC(PokemonStruct1 *); extern void SetFriendAreaActionMenuState(u32); extern void PlaySound(u32); -extern void nullsub_104(); extern void sub_808D31C(PokemonStruct1 *); extern PokemonStruct1 *sub_808D3F8(void); diff --git a/src/friend_list_menu.c b/src/friend_list_menu.c index 6aac460ef..39605aac2 100644 --- a/src/friend_list_menu.c +++ b/src/friend_list_menu.c @@ -59,7 +59,6 @@ EWRAM_DATA_2 unkStruct_203B2B4 *gUnknown_203B2B4 = {0}; extern s16 sub_80A5728(void); extern u8 sub_8002658(s16); extern bool8 sub_8024108(u32); -extern void nullsub_104(void); extern void sub_808ED00(void); extern u32 sub_80244E4(void); diff --git a/src/luminous_cave.c b/src/luminous_cave.c index 33ea0d14b..be978c125 100644 --- a/src/luminous_cave.c +++ b/src/luminous_cave.c @@ -21,44 +21,6 @@ #include "text1.h" #include "text2.h" -extern u8 gAvailablePokemonNames[]; // 202DF98 -extern u8 gPlayerName[]; // 202E2B8 - -static EWRAM_DATA_2 struct unkStruct_203B2B0 *sUnknown_203B2B0 = {0}; - -extern const UnkTextStruct2 gUnknown_80DC9E8; -extern const UnkTextStruct2 gUnknown_80DCA00; -extern const u8 gUnknown_80DCA18[]; -extern const u8 gUnknown_80DCA24[]; -extern const u8 gUnknown_80DCA2C[]; - -#include "data/luminous_cave.h" - -// code_8098BDC.s -extern void nullsub_104(void); - -static void LuminousCave_AdvancetoFallbackState(void); -static bool8 LuminousCave_HasOnly1Member(void); -static void UpdateLuminousCaveDialogue(void); -static void UpdateLuminousCaveState(u32); - -static void sub_8024804(void); -static void sub_8024CFC(void); -static void sub_8024D48(void); -static void sub_8024DBC(void); -static void sub_8024E30(void); -static void sub_8024E9C(void); -static void sub_8024F00(void); -static void sub_8024F70(void); -static void sub_8024FD4(void); -static void sub_8025058(void); -static void sub_80250EC(void); -static void sub_802515C(void); -static void sub_80251CC(void); -static void sub_80251E8(void); -static void sub_8025204(void); -static void sub_8025254(void); - enum { LUMINOUS_CAVE_ENTRY, @@ -87,34 +49,63 @@ enum LUMINOUS_CAVE_CANT_EVOLVE_YET, }; +extern u8 gAvailablePokemonNames[]; // 202DF98 +extern u8 gPlayerName[]; // 202E2B8 + +static EWRAM_DATA_2 LuminousCaveWork *sLuminousCaveWork = {0}; + +#include "data/luminous_cave.h" + +static void LuminousCave_AdvancetoFallbackState(void); +static bool8 LuminousCave_HasOnly1Member(void); +static void UpdateLuminousCaveDialogue(void); +static void UpdateLuminousCaveState(u32); + +static void sub_8024804(void); +static void sub_8024CFC(void); +static void sub_8024D48(void); +static void sub_8024DBC(void); +static void sub_8024E30(void); +static void sub_8024E9C(void); +static void sub_8024F00(void); +static void sub_8024F70(void); +static void sub_8024FD4(void); +static void sub_8025058(void); +static void sub_80250EC(void); +static void sub_802515C(void); +static void sub_80251CC(void); +static void sub_80251E8(void); +static void sub_8025204(void); +static void sub_8025254(void); + u32 sub_802465C(void) { OpenedFile *faceFile; ResetUnusedInputStruct(); sub_800641C(NULL, TRUE, TRUE); - sUnknown_203B2B0 = MemoryAlloc(sizeof(struct unkStruct_203B2B0), 8); - sUnknown_203B2B0->menuAction1 = 0; - sUnknown_203B2B0->menuAction2 = 0; - sUnknown_203B2B0->menuAction3 = 0; - sUnknown_203B2B0->pokeStruct = GetPlayerPokemonStruct(); - sUnknown_203B2B0->pokeRenamed = IsPokemonRenamed(sUnknown_203B2B0->pokeStruct); - sUnknown_203B2B0->evolutionComplete = FALSE; + sLuminousCaveWork = MemoryAlloc(sizeof(LuminousCaveWork), 8); + sLuminousCaveWork->menuAction1 = 0; + sLuminousCaveWork->menuAction2 = 0; + sLuminousCaveWork->menuAction3 = 0; + sLuminousCaveWork->pokeStruct = GetPlayerPokemonStruct(); + sLuminousCaveWork->pokeRenamed = IsPokemonRenamed(sLuminousCaveWork->pokeStruct); + sLuminousCaveWork->evolutionComplete = FALSE; faceFile = GetDialogueSpriteDataPtr(MONSTER_GULPIN); - sUnknown_203B2B0->unk104 = faceFile; - sUnknown_203B2B0->unk108 = faceFile->data; - sUnknown_203B2B0->unk110 = 0; - sUnknown_203B2B0->unk111 = 0; - sUnknown_203B2B0->unk112 = 0; - sUnknown_203B2B0->unk10C = 2; - sUnknown_203B2B0->unk10E = 8; + sLuminousCaveWork->unk104 = faceFile; + sLuminousCaveWork->unk108 = faceFile->data; + sLuminousCaveWork->unk110 = 0; + sLuminousCaveWork->unk111 = 0; + sLuminousCaveWork->unk112 = 0; + sLuminousCaveWork->unk10C = 2; + sLuminousCaveWork->unk10E = 8; UpdateLuminousCaveState(LUMINOUS_CAVE_ENTRY); return TRUE; } u32 sub_80246F0(void) { - switch (sUnknown_203B2B0->state) { + switch (sLuminousCaveWork->state) { case LUMINOUS_CAVE_ENTRY: case LUMINOUS_CAVE_ASK_EVOLVE: sub_8024E9C(); @@ -159,21 +150,21 @@ u32 sub_80246F0(void) bool8 HasEvolutionCompleted(void) { - return sUnknown_203B2B0->evolutionComplete; + return sLuminousCaveWork->evolutionComplete; } void CleanLuminousCave(void) { - if (sUnknown_203B2B0 != NULL) { - CloseFile(sUnknown_203B2B0->unk104); - MemoryFree(sUnknown_203B2B0); - sUnknown_203B2B0 = NULL; + if (sLuminousCaveWork != NULL) { + CloseFile(sLuminousCaveWork->unk104); + MemoryFree(sLuminousCaveWork); + sLuminousCaveWork = NULL; } } static void UpdateLuminousCaveState(u32 newState) { - sUnknown_203B2B0->state = newState; + sLuminousCaveWork->state = newState; sub_8024804(); UpdateLuminousCaveDialogue(); } @@ -182,12 +173,12 @@ static void sub_8024804(void) { s32 i; - sub_8006518(sUnknown_203B2B0->unk114); + sub_8006518(sLuminousCaveWork->unk114); - switch (sUnknown_203B2B0->state) { + switch (sLuminousCaveWork->state) { case 8: case 13: - sUnknown_203B2B0->unk114[2] = gUnknown_80DCA00; + sLuminousCaveWork->unk114[2] = sUnknown_80DCA00; break; case LUMINOUS_CAVE_LET_US_BEGIN: case LUMINOUS_CAVE_CHANGED_APPEARANCE: @@ -202,44 +193,44 @@ static void sub_8024804(void) break; default: for (i = 0; i < 4; i++) - sUnknown_203B2B0->unk114[i] = gUnknown_80DC9E8; + sLuminousCaveWork->unk114[i] = sUnknown_80DC9E8; break; } ResetUnusedInputStruct(); - sub_800641C(sUnknown_203B2B0->unk114, TRUE, TRUE); + sub_800641C(sLuminousCaveWork->unk114, TRUE, TRUE); } static void UpdateLuminousCaveDialogue(void) { u8 *monName; - switch (sUnknown_203B2B0->state) { + switch (sLuminousCaveWork->state) { case LUMINOUS_CAVE_ENTRY: if (LuminousCave_HasOnly1Member()) - sUnknown_203B2B0->menuAction1 = 3; + sLuminousCaveWork->menuAction1 = 3; else - sUnknown_203B2B0->menuAction1 = 1; + sLuminousCaveWork->menuAction1 = 1; sub_8024CFC(); - sub_8014248(sLuminousCaveSeekAwakening,0,sUnknown_203B2B0->menuAction1,sUnknown_203B2B0->unk34,sUnknown_203B2B0->unk74,4,0,0,5); + sub_8014248(sSeekEvolutionIntro,0,sLuminousCaveWork->menuAction1,sLuminousCaveWork->unk34,sLuminousCaveWork->unk74,4,0,0,5); break; case LUMINOUS_CAVE_ASK_EVOLVE: sub_8024CFC(); - sub_8014248(sLuminousCaveAskEvolution,0,sUnknown_203B2B0->menuAction1,sUnknown_203B2B0->unk34,sUnknown_203B2B0->unk74,4,0,0,5); + sub_8014248(sSeekEvolutionPrompt,0,sLuminousCaveWork->menuAction1,sLuminousCaveWork->unk34,sLuminousCaveWork->unk74,4,0,0,5); break; case LUMINOUS_CAVE_EVOLVE_INFO: - sUnknown_203B2B0->fallbackState = LUMINOUS_CAVE_ASK_EVOLVE; - sub_80141B4(sLuminousCaveEvolutionInfo,0,0,0x105); + sLuminousCaveWork->fallbackState = LUMINOUS_CAVE_ASK_EVOLVE; + sub_80141B4(sEvolveInfo,0,0,0x105); break; case LUMINOUS_CAVE_SHALL_RETURN: - sUnknown_203B2B0->fallbackState = 4; + sLuminousCaveWork->fallbackState = 4; xxx_call_fade_in_new_bgm(MUS_FILE_SELECT,0x3c); - sub_80141B4(sLuminousCaveYeShallReturn,0,0,0x305); + sub_80141B4(sYeShallReturn,0,0,0x305); break; case LUMINOUS_CAVE_GIVE_ITEM_1: sub_8024D48(); - sub_8014248(sLuminousCaveGiveItem,0,sUnknown_203B2B0->menuAction2,sUnknown_203B2B0->unk34,sUnknown_203B2B0->unk74,4,0,0,5); + sub_8014248(sGiveItemPrompt,0,sLuminousCaveWork->menuAction2,sLuminousCaveWork->unk34,sLuminousCaveWork->unk74,4,0,0,5); break; case 6: sub_801A5D8(2,3,NULL,10); @@ -249,132 +240,132 @@ static void UpdateLuminousCaveDialogue(void) break; case LUMINOUS_CAVE_GIVE_ITEM_2: sub_8024DBC(); - sub_8014248(sLuminousCaveGiveAnotherItem,0,sUnknown_203B2B0->menuAction2,sUnknown_203B2B0->unk34,sUnknown_203B2B0->unk74,4,0,0,5); + sub_8014248(sGiveAnotherItemPrompt,0,sLuminousCaveWork->menuAction2,sLuminousCaveWork->unk34,sLuminousCaveWork->unk74,4,0,0,5); break; case 11: sub_801A5D8(2,3,NULL,10); - sub_801AEE4(sUnknown_203B2B0->evoItem1_InvIndex,1); + sub_801AEE4(sLuminousCaveWork->evoItem1_InvIndex,1); sub_801A9E0(); break; case 12: sub_801A8D0(TRUE); - sub_801AEE4(sUnknown_203B2B0->evoItem1_InvIndex,1); + sub_801AEE4(sLuminousCaveWork->evoItem1_InvIndex,1); sub_801A9E0(); break; case 8: case 13: sub_801A9E0(); sub_8024E30(); - sub_8012D60(&sUnknown_203B2B0->unk84,sUnknown_203B2B0->unk34,0,sUnknown_203B2B0->unk74, - sUnknown_203B2B0->menuAction3,2); + sub_8012D60(&sLuminousCaveWork->unk84,sLuminousCaveWork->unk34,0,sLuminousCaveWork->unk74, + sLuminousCaveWork->menuAction3,2); break; case 9: case 14: - sub_801B3C0(&sUnknown_203B2B0->chosenItem); + sub_801B3C0(&sLuminousCaveWork->chosenItem); break; case LUMINOUS_CAVE_LACK_WHAT_NEEDED: - sUnknown_203B2B0->fallbackState = LUMINOUS_CAVE_GIVE_ITEM_1; - sub_80141B4(sLuminousCaveLackWhatIsNeeded,0,0,0x105); + sLuminousCaveWork->fallbackState = LUMINOUS_CAVE_GIVE_ITEM_1; + sub_80141B4(sLackWhatIsNeeded,0,0,0x105); break; case LUMINOUS_CAVE_ONLY_ONE_ITEM: - sUnknown_203B2B0->fallbackState = LUMINOUS_CAVE_GIVE_ITEM_2; - sub_80141B4(sLuminousCaveOnlyOneItem,0,0,0x105); + sLuminousCaveWork->fallbackState = LUMINOUS_CAVE_GIVE_ITEM_2; + sub_80141B4(sOnlyOneItem,0,0,0x105); break; case LUMINOUS_CAVE_LET_US_BEGIN: sub_8025254(); - if((sUnknown_203B2B0->evolveStatus.evolutionConditionStatus & EVOLUTION_GOOD)) - sUnknown_203B2B0->fallbackState = LUMINOUS_CAVE_CHANGED_APPEARANCE; - else if(sUnknown_203B2B0->evolveStatus.evolutionConditionStatus == EVOLUTION_NO_MORE) - sUnknown_203B2B0->fallbackState = LUMINOUS_CAVE_CANT_EVOLVE_ANYMORE; - else if(sUnknown_203B2B0->evolveStatus.evolutionConditionStatus == EVOLUTION_LACK_LEVEL) - sUnknown_203B2B0->fallbackState = LUMINOUS_CAVE_LACK_LEVEL; - else if(sUnknown_203B2B0->evolveStatus.evolutionConditionStatus == EVOLUTION_LACK_IQ) - sUnknown_203B2B0->fallbackState = LUMINOUS_CAVE_LACK_IQ; - else if(sUnknown_203B2B0->evolveStatus.evolutionConditionStatus == EVOLUTION_LACK_FRIEND_AREA) - sUnknown_203B2B0->fallbackState = LUMINOUS_CAVE_LACK_FRIEND_AREA; - else if(sUnknown_203B2B0->evolveStatus.evolutionConditionStatus == EVOLUTION_LACK_ROOM) - sUnknown_203B2B0->fallbackState = LUMINOUS_CAVE_LACK_ROOM; - else if(sUnknown_203B2B0->evolveStatus.evolutionConditionStatus == EVOLUTION_LACK_ITEM) - sUnknown_203B2B0->fallbackState = LUMINOUS_CAVE_LACK_ITEM; + if((sLuminousCaveWork->evolveStatus.evolutionConditionStatus & EVOLUTION_GOOD)) + sLuminousCaveWork->fallbackState = LUMINOUS_CAVE_CHANGED_APPEARANCE; + else if(sLuminousCaveWork->evolveStatus.evolutionConditionStatus == EVOLUTION_NO_MORE) + sLuminousCaveWork->fallbackState = LUMINOUS_CAVE_CANT_EVOLVE_ANYMORE; + else if(sLuminousCaveWork->evolveStatus.evolutionConditionStatus == EVOLUTION_LACK_LEVEL) + sLuminousCaveWork->fallbackState = LUMINOUS_CAVE_LACK_LEVEL; + else if(sLuminousCaveWork->evolveStatus.evolutionConditionStatus == EVOLUTION_LACK_IQ) + sLuminousCaveWork->fallbackState = LUMINOUS_CAVE_LACK_IQ; + else if(sLuminousCaveWork->evolveStatus.evolutionConditionStatus == EVOLUTION_LACK_FRIEND_AREA) + sLuminousCaveWork->fallbackState = LUMINOUS_CAVE_LACK_FRIEND_AREA; + else if(sLuminousCaveWork->evolveStatus.evolutionConditionStatus == EVOLUTION_LACK_ROOM) + sLuminousCaveWork->fallbackState = LUMINOUS_CAVE_LACK_ROOM; + else if(sLuminousCaveWork->evolveStatus.evolutionConditionStatus == EVOLUTION_LACK_ITEM) + sLuminousCaveWork->fallbackState = LUMINOUS_CAVE_LACK_ITEM; else - sUnknown_203B2B0->fallbackState = LUMINOUS_CAVE_CANT_EVOLVE_YET; + sLuminousCaveWork->fallbackState = LUMINOUS_CAVE_CANT_EVOLVE_YET; xxx_call_fade_out_bgm(0x3c); - sub_80141B4(sLuminousCaveLetUsBegin,0,0,0x105); + sub_80141B4(sLetUsBegin,0,0,0x105); break; case LUMINOUS_CAVE_CHANGED_APPEARANCE: - PrintColoredPokeNameToBuffer(gPlayerName,sUnknown_203B2B0->pokeStruct, COLOR_CYAN); + PrintColoredPokeNameToBuffer(gPlayerName,sLuminousCaveWork->pokeStruct, COLOR_CYAN); PlaySound(0x1ff); - sUnknown_203B2B0->fallbackState = LUMINOUS_CAVE_EVOLVED; - sub_80141B4(sLuminousCaveChangedAppearance,0,0,0x105); + sLuminousCaveWork->fallbackState = LUMINOUS_CAVE_EVOLVED; + sub_80141B4(sFmtChangedAppearance,0,0,0x105); break; case LUMINOUS_CAVE_EVOLVED: - monName = GetMonSpecies(sUnknown_203B2B0->pokeStruct->speciesNum); + monName = GetMonSpecies(sLuminousCaveWork->pokeStruct->speciesNum); strcpy(gAvailablePokemonNames,monName); - monName = GetMonSpecies(sUnknown_203B2B0->evolveStatus.targetEvolveSpecies); + monName = GetMonSpecies(sLuminousCaveWork->evolveStatus.targetEvolveSpecies); strcpy(gAvailablePokemonNames + 0x50,monName); - sUnknown_203B2B0->evolutionComplete = TRUE; + sLuminousCaveWork->evolutionComplete = TRUE; sub_80977D0(); - sub_808F734(sUnknown_203B2B0->pokeStruct,sUnknown_203B2B0->evolveStatus.targetEvolveSpecies); + sub_808F734(sLuminousCaveWork->pokeStruct,sLuminousCaveWork->evolveStatus.targetEvolveSpecies); nullsub_104(); - sUnknown_203B2B0->pokeStruct = GetPlayerPokemonStruct(); - if (sUnknown_203B2B0->evoItem1_InvIndex != INVENTORY_SIZE) { - ClearItemSlotAt(sUnknown_203B2B0->evoItem1_InvIndex); + sLuminousCaveWork->pokeStruct = GetPlayerPokemonStruct(); + if (sLuminousCaveWork->evoItem1_InvIndex != INVENTORY_SIZE) { + ClearItemSlotAt(sLuminousCaveWork->evoItem1_InvIndex); } - if (sUnknown_203B2B0->evoItem2_InvIndex != INVENTORY_SIZE) { - ClearItemSlotAt(sUnknown_203B2B0->evoItem2_InvIndex); + if (sLuminousCaveWork->evoItem2_InvIndex != INVENTORY_SIZE) { + ClearItemSlotAt(sLuminousCaveWork->evoItem2_InvIndex); } FillInventoryGaps(); xxx_call_stop_fanfare_se(0x1ff); PlaySound(0xd2); - if (sUnknown_203B2B0->pokeRenamed) { - BoundedCopyStringtoBuffer(sUnknown_203B2B0->pokeStruct->name,GetMonSpecies(sUnknown_203B2B0->pokeStruct->speciesNum),POKEMON_NAME_LENGTH); + if (sLuminousCaveWork->pokeRenamed) { + BoundedCopyStringtoBuffer(sLuminousCaveWork->pokeStruct->name,GetMonSpecies(sLuminousCaveWork->pokeStruct->speciesNum),POKEMON_NAME_LENGTH); } - sUnknown_203B2B0->fallbackState = LUMINOUS_CAVE_SHALL_RETURN; - sub_80141B4(sLuminousCaveEvolved,0,0,0x105); + sLuminousCaveWork->fallbackState = LUMINOUS_CAVE_SHALL_RETURN; + sub_80141B4(sFmtEvolved,0,0,0x105); break; case LUMINOUS_CAVE_COME_ALONE: - sUnknown_203B2B0->fallbackState = LUMINOUS_CAVE_SHALL_RETURN; - sub_80141B4(sLuminousCaveComeAlone,0,0,0x105); + sLuminousCaveWork->fallbackState = LUMINOUS_CAVE_SHALL_RETURN; + sub_80141B4(sComeAlone,0,0,0x105); break; case LUMINOUS_CAVE_LACK_LEVEL: - sUnknown_203B2B0->fallbackState = LUMINOUS_CAVE_SHALL_RETURN; - sub_80141B4(sLuminousCaveLackLevel,0,0,0x105); + sLuminousCaveWork->fallbackState = LUMINOUS_CAVE_SHALL_RETURN; + sub_80141B4(sLackLevel,0,0,0x105); break; case LUMINOUS_CAVE_CANT_EVOLVE_ANYMORE: - sUnknown_203B2B0->fallbackState = LUMINOUS_CAVE_SHALL_RETURN; - sub_80141B4(sLuminousCaveCantEvolveAnymore,0,0,0x105); + sLuminousCaveWork->fallbackState = LUMINOUS_CAVE_SHALL_RETURN; + sub_80141B4(sNoMoreEvolutions,0,0,0x105); break; case LUMINOUS_CAVE_LACK_FRIEND_AREA: - sUnknown_203B2B0->fallbackState = LUMINOUS_CAVE_SHALL_RETURN; - sub_80141B4(sLuminousCaveLackFriendArea,0,0,0x105); + sLuminousCaveWork->fallbackState = LUMINOUS_CAVE_SHALL_RETURN; + sub_80141B4(sLackFriendArea,0,0,0x105); break; case LUMINOUS_CAVE_LACK_ROOM: - sUnknown_203B2B0->fallbackState = LUMINOUS_CAVE_SHALL_RETURN; - sub_80141B4(sLuminousCaveLackRoom,0,0,0x105); + sLuminousCaveWork->fallbackState = LUMINOUS_CAVE_SHALL_RETURN; + sub_80141B4(sLackFriendAreaRoom,0,0,0x105); break; case LUMINOUS_CAVE_LACK_IQ: - sUnknown_203B2B0->fallbackState = LUMINOUS_CAVE_SHALL_RETURN; - sub_80141B4(sLuminousCaveLackIQ,0,0,0x105); + sLuminousCaveWork->fallbackState = LUMINOUS_CAVE_SHALL_RETURN; + sub_80141B4(sLackIQ,0,0,0x105); break; case LUMINOUS_CAVE_LACK_ITEM: - sUnknown_203B2B0->fallbackState = LUMINOUS_CAVE_SHALL_RETURN; - sub_80141B4(sLuminousCaveLackItem,0,0,0x105); + sLuminousCaveWork->fallbackState = LUMINOUS_CAVE_SHALL_RETURN; + sub_80141B4(sLackItem,0,0,0x105); break; case LUMINOUS_CAVE_CANT_EVOLVE_YET: - sUnknown_203B2B0->fallbackState = LUMINOUS_CAVE_SHALL_RETURN; - sub_80141B4(sLuminousCaveCantEvolveYet,0,0,0x105); + sLuminousCaveWork->fallbackState = LUMINOUS_CAVE_SHALL_RETURN; + sub_80141B4(sCannotEvolveYet,0,0,0x105); break; case LUMINOUS_CAVE_PROMPT_NAME: xxx_call_fade_in_new_bgm(8,0x3c); - sUnknown_203B2B0->fallbackState = LUMINOUS_CAVE_FINISH_NAME; - sub_80141B4(sLuminousCaveGiveName,0,0,0x105); + sLuminousCaveWork->fallbackState = LUMINOUS_CAVE_FINISH_NAME; + sub_80141B4(sMustGiveName,0,0,0x105); break; case LUMINOUS_CAVE_FINISH_NAME: - if (sUnknown_203B2B0->pokeRenamed) { - BoundedCopyStringtoBuffer(sUnknown_203B2B0->pokeStruct->name,GetMonSpecies(sUnknown_203B2B0->pokeStruct->speciesNum),POKEMON_NAME_LENGTH); + if (sLuminousCaveWork->pokeRenamed) { + BoundedCopyStringtoBuffer(sLuminousCaveWork->pokeStruct->name,GetMonSpecies(sLuminousCaveWork->pokeStruct->speciesNum),POKEMON_NAME_LENGTH); } - sub_801602C(0,sUnknown_203B2B0->pokeStruct->name); + sub_801602C(0,sLuminousCaveWork->pokeStruct->name); break; default: break; @@ -385,22 +376,22 @@ static void sub_8024CFC(void) { s32 loopMax = 0; - MemoryFill16(sUnknown_203B2B0->unk74, 0, sizeof(sUnknown_203B2B0->unk74)); + MemoryFill16(sLuminousCaveWork->unk74, 0, sizeof(sLuminousCaveWork->unk74)); - sUnknown_203B2B0->unk34[loopMax].text = gUnknown_80DCA18; - sUnknown_203B2B0->unk34[loopMax].menuAction = 3; + sLuminousCaveWork->unk34[loopMax].text = sEvolve0; + sLuminousCaveWork->unk34[loopMax].menuAction = 3; loopMax += 1; - sUnknown_203B2B0->unk34[loopMax].text = *gCommonInfo; - sUnknown_203B2B0->unk34[loopMax].menuAction = 2; + sLuminousCaveWork->unk34[loopMax].text = gCommonInfo[0]; + sLuminousCaveWork->unk34[loopMax].menuAction = 2; loopMax += 1; - sUnknown_203B2B0->unk34[loopMax].text = *gCommonCancel; - sUnknown_203B2B0->unk34[loopMax].menuAction = 1; + sLuminousCaveWork->unk34[loopMax].text = gCommonCancel[0]; + sLuminousCaveWork->unk34[loopMax].menuAction = 1; loopMax += 1; - sUnknown_203B2B0->unk34[loopMax].text = NULL; - sUnknown_203B2B0->unk34[loopMax].menuAction = 1; + sLuminousCaveWork->unk34[loopMax].text = NULL; + sLuminousCaveWork->unk34[loopMax].menuAction = 1; } static void sub_8024D48(void) @@ -409,27 +400,27 @@ static void sub_8024D48(void) s32 loopMax; loopMax = 0; - MemoryFill16(sUnknown_203B2B0->unk74, 0, sizeof(sUnknown_203B2B0->unk74)); - sUnknown_203B2B0->unk34[loopMax].text = gUnknown_80DCA24; - sUnknown_203B2B0->unk34[loopMax].menuAction = 4; + MemoryFill16(sLuminousCaveWork->unk74, 0, sizeof(sLuminousCaveWork->unk74)); + sLuminousCaveWork->unk34[loopMax].text = sNo0; + sLuminousCaveWork->unk34[loopMax].menuAction = 4; loopMax += 1; - sUnknown_203B2B0->unk34[loopMax].text = gUnknown_80DCA2C; - sUnknown_203B2B0->unk34[loopMax].menuAction = 5; + sLuminousCaveWork->unk34[loopMax].text = sYes0; + sLuminousCaveWork->unk34[loopMax].menuAction = 5; loopMax += 1; - sUnknown_203B2B0->unk34[loopMax].text = *gCommonCancel; - sUnknown_203B2B0->unk34[loopMax].menuAction = 1; + sLuminousCaveWork->unk34[loopMax].text = gCommonCancel[0]; + sLuminousCaveWork->unk34[loopMax].menuAction = 1; loopMax += 1; - sUnknown_203B2B0->unk34[loopMax].text = NULL; - sUnknown_203B2B0->unk34[loopMax].menuAction = 1; + sLuminousCaveWork->unk34[loopMax].text = NULL; + sLuminousCaveWork->unk34[loopMax].menuAction = 1; for (index = 0; index < loopMax; index++) { - if (sUnknown_203B2B0->unk74[index] == 0) { - if (sUnknown_203B2B0->unk34[index].menuAction == sUnknown_203B2B0->menuAction2) + if (sLuminousCaveWork->unk74[index] == 0) { + if (sLuminousCaveWork->unk34[index].menuAction == sLuminousCaveWork->menuAction2) return; } } - sUnknown_203B2B0->menuAction2 = 4; + sLuminousCaveWork->menuAction2 = 4; } static void sub_8024DBC(void) @@ -438,29 +429,29 @@ static void sub_8024DBC(void) s32 loopMax; loopMax = 0; - MemoryFill16(sUnknown_203B2B0->unk74, 0, sizeof(sUnknown_203B2B0->unk74)); - sUnknown_203B2B0->unk34[loopMax].text = gUnknown_80DCA24; - sUnknown_203B2B0->unk34[loopMax].menuAction = 4; + MemoryFill16(sLuminousCaveWork->unk74, 0, sizeof(sLuminousCaveWork->unk74)); + sLuminousCaveWork->unk34[loopMax].text = sNo0; + sLuminousCaveWork->unk34[loopMax].menuAction = 4; loopMax += 1; - sUnknown_203B2B0->unk34[loopMax].text = gUnknown_80DCA2C; - sUnknown_203B2B0->unk34[loopMax].menuAction = 5; + sLuminousCaveWork->unk34[loopMax].text = sYes0; + sLuminousCaveWork->unk34[loopMax].menuAction = 5; loopMax += 1; - sUnknown_203B2B0->unk34[loopMax].text = *gCommonCancel; - sUnknown_203B2B0->unk34[loopMax].menuAction = 1; + sLuminousCaveWork->unk34[loopMax].text = gCommonCancel[0]; + sLuminousCaveWork->unk34[loopMax].menuAction = 1; loopMax += 1; - sUnknown_203B2B0->unk34[loopMax].text = NULL; - sUnknown_203B2B0->unk34[loopMax].menuAction = 1; + sLuminousCaveWork->unk34[loopMax].text = NULL; + sLuminousCaveWork->unk34[loopMax].menuAction = 1; for(index = 0; index < loopMax; index++) { - if(sUnknown_203B2B0->unk74[index] == 0) + if(sLuminousCaveWork->unk74[index] == 0) { - if(sUnknown_203B2B0->unk34[index].menuAction == sUnknown_203B2B0->menuAction2) + if(sLuminousCaveWork->unk34[index].menuAction == sLuminousCaveWork->menuAction2) return; } } - sUnknown_203B2B0->menuAction2 = 4; + sLuminousCaveWork->menuAction2 = 4; } static void sub_8024E30(void) @@ -469,26 +460,26 @@ static void sub_8024E30(void) s32 loopMax; loopMax = 0; - MemoryFill16(sUnknown_203B2B0->unk74, 0, sizeof(sUnknown_203B2B0->unk74)); - sUnknown_203B2B0->unk34[loopMax].text = gUnknown_80DCA2C; - sUnknown_203B2B0->unk34[loopMax].menuAction = 5; + MemoryFill16(sLuminousCaveWork->unk74, 0, sizeof(sLuminousCaveWork->unk74)); + sLuminousCaveWork->unk34[loopMax].text = sYes0; + sLuminousCaveWork->unk34[loopMax].menuAction = 5; loopMax += 1; - sUnknown_203B2B0->unk34[loopMax].text = *gCommonInfo; - sUnknown_203B2B0->unk34[loopMax].menuAction = 2; + sLuminousCaveWork->unk34[loopMax].text = gCommonInfo[0]; + sLuminousCaveWork->unk34[loopMax].menuAction = 2; loopMax += 1; - sUnknown_203B2B0->unk34[loopMax].text = NULL; - sUnknown_203B2B0->unk34[loopMax].menuAction = 1; + sLuminousCaveWork->unk34[loopMax].text = NULL; + sLuminousCaveWork->unk34[loopMax].menuAction = 1; for(index = 0; index < loopMax; index++) { - if(sUnknown_203B2B0->unk74[index] == 0) + if(sLuminousCaveWork->unk74[index] == 0) { - if(sUnknown_203B2B0->unk34[index].menuAction == sUnknown_203B2B0->menuAction3) + if(sLuminousCaveWork->unk34[index].menuAction == sLuminousCaveWork->menuAction3) return; } } - sUnknown_203B2B0->menuAction3 = 5; + sLuminousCaveWork->menuAction3 = 5; } static void sub_8024E9C(void) @@ -496,7 +487,7 @@ static void sub_8024E9C(void) s32 menuAction; if(sub_80144A4(&menuAction) == 0) { - if(menuAction != 1) sUnknown_203B2B0->menuAction1 = menuAction; + if(menuAction != 1) sLuminousCaveWork->menuAction1 = menuAction; switch(menuAction) { case 3: @@ -520,12 +511,12 @@ static void sub_8024F00(void) s32 menuAction; if(sub_80144A4(&menuAction) == 0) { - if(menuAction != 1) sUnknown_203B2B0->menuAction2 = menuAction; + if(menuAction != 1) sLuminousCaveWork->menuAction2 = menuAction; switch(menuAction) { case 4: - sUnknown_203B2B0->evoItem1_InvIndex = INVENTORY_SIZE; - sUnknown_203B2B0->evoItem2_InvIndex = INVENTORY_SIZE; + sLuminousCaveWork->evoItem1_InvIndex = INVENTORY_SIZE; + sLuminousCaveWork->evoItem2_InvIndex = INVENTORY_SIZE; UpdateLuminousCaveState(LUMINOUS_CAVE_LET_US_BEGIN); break; case 5: @@ -546,7 +537,7 @@ static void sub_8024F70(void) s32 menuAction; if(sub_80144A4(&menuAction) == 0) { - if(menuAction != 1) sUnknown_203B2B0->menuAction2 = menuAction; + if(menuAction != 1) sLuminousCaveWork->menuAction2 = menuAction; switch(menuAction) { case 4: @@ -570,13 +561,13 @@ static void sub_8024FD4(void) switch(sub_801A6E8(TRUE)) { case 3: - sUnknown_203B2B0->evoItem1_InvIndex = sub_801A8AC(); - sUnknown_203B2B0->evoItem2_InvIndex = INVENTORY_SIZE; - sUnknown_203B2B0->chosenItem = gTeamInventoryRef->teamItems[sUnknown_203B2B0->evoItem1_InvIndex]; + sLuminousCaveWork->evoItem1_InvIndex = sub_801A8AC(); + sLuminousCaveWork->evoItem2_InvIndex = INVENTORY_SIZE; + sLuminousCaveWork->chosenItem = gTeamInventoryRef->teamItems[sLuminousCaveWork->evoItem1_InvIndex]; UpdateLuminousCaveState(8); break; case 4: - sUnknown_203B2B0->chosenItem = gTeamInventoryRef->teamItems[sub_801A8AC()]; + sLuminousCaveWork->chosenItem = gTeamInventoryRef->teamItems[sub_801A8AC()]; sub_8099690(0); UpdateLuminousCaveState(9); break; @@ -592,17 +583,17 @@ static void sub_8025058(void) switch(sub_801A6E8(TRUE)) { case 3: - if(sUnknown_203B2B0->evoItem1_InvIndex != sub_801A8AC()) + if(sLuminousCaveWork->evoItem1_InvIndex != sub_801A8AC()) { - sUnknown_203B2B0->evoItem2_InvIndex = sub_801A8AC(); - sUnknown_203B2B0->chosenItem = gTeamInventoryRef->teamItems[sUnknown_203B2B0->evoItem2_InvIndex]; + sLuminousCaveWork->evoItem2_InvIndex = sub_801A8AC(); + sLuminousCaveWork->chosenItem = gTeamInventoryRef->teamItems[sLuminousCaveWork->evoItem2_InvIndex]; UpdateLuminousCaveState(0xD); } else PlayMenuSoundEffect(2); break; case 4: - sUnknown_203B2B0->chosenItem = gTeamInventoryRef->teamItems[sub_801A8AC()]; + sLuminousCaveWork->chosenItem = gTeamInventoryRef->teamItems[sub_801A8AC()]; sub_8099690(0); UpdateLuminousCaveState(0xE); break; @@ -619,10 +610,10 @@ static void sub_80250EC(void) menuAction = 0; sub_801A6E8(FALSE); - if(!sub_8012FD8(&sUnknown_203B2B0->unk84)) + if(!sub_8012FD8(&sLuminousCaveWork->unk84)) { - sub_8013114(&sUnknown_203B2B0->unk84, &menuAction); - if(menuAction != 1) sUnknown_203B2B0->menuAction3 = menuAction; + sub_8013114(&sLuminousCaveWork->unk84, &menuAction); + if(menuAction != 1) sLuminousCaveWork->menuAction3 = menuAction; } switch(menuAction) { @@ -646,10 +637,10 @@ static void sub_802515C(void) menuAction = 0; sub_801A6E8(FALSE); - if(!sub_8012FD8(&sUnknown_203B2B0->unk84)) + if(!sub_8012FD8(&sLuminousCaveWork->unk84)) { - sub_8013114(&sUnknown_203B2B0->unk84, &menuAction); - if(menuAction != 1) sUnknown_203B2B0->menuAction3 = menuAction; + sub_8013114(&sLuminousCaveWork->unk84, &menuAction); + if(menuAction != 1) sLuminousCaveWork->menuAction3 = menuAction; } switch(menuAction) { @@ -703,7 +694,7 @@ static void sub_8025204(void) { case 3: sub_80160D8(); - sUnknown_203B2B0->pokeRenamed = IsPokemonRenamed(sUnknown_203B2B0->pokeStruct); + sLuminousCaveWork->pokeRenamed = IsPokemonRenamed(sLuminousCaveWork->pokeStruct); UpdateLuminousCaveState(LUMINOUS_CAVE_SHALL_RETURN); break; default: @@ -716,27 +707,27 @@ static void LuminousCave_AdvancetoFallbackState(void) s32 temp; if(sub_80144A4(&temp) == 0) { - UpdateLuminousCaveState(sUnknown_203B2B0->fallbackState); + UpdateLuminousCaveState(sLuminousCaveWork->fallbackState); } } static void sub_8025254(void) { - if(sUnknown_203B2B0->evoItem1_InvIndex == INVENTORY_SIZE) - sUnknown_203B2B0->evolveStatus.evoItem1 = 0; + if(sLuminousCaveWork->evoItem1_InvIndex == INVENTORY_SIZE) + sLuminousCaveWork->evolveStatus.evoItem1 = 0; else { - sUnknown_203B2B0->evolveStatus.evoItem1 = gTeamInventoryRef->teamItems[sUnknown_203B2B0->evoItem1_InvIndex].id; + sLuminousCaveWork->evolveStatus.evoItem1 = gTeamInventoryRef->teamItems[sLuminousCaveWork->evoItem1_InvIndex].id; } - if(sUnknown_203B2B0->evoItem2_InvIndex == INVENTORY_SIZE) - sUnknown_203B2B0->evolveStatus.evoItem2 = 0; + if(sLuminousCaveWork->evoItem2_InvIndex == INVENTORY_SIZE) + sLuminousCaveWork->evolveStatus.evoItem2 = 0; else { - sUnknown_203B2B0->evolveStatus.evoItem2 = gTeamInventoryRef->teamItems[sUnknown_203B2B0->evoItem2_InvIndex].id; + sLuminousCaveWork->evolveStatus.evoItem2 = gTeamInventoryRef->teamItems[sLuminousCaveWork->evoItem2_InvIndex].id; } - sUnknown_203B2B0->evolveStatus.unk6 = RandInt(0xFF); - sub_808F468(sUnknown_203B2B0->pokeStruct, &sUnknown_203B2B0->evolveStatus, 1); + sLuminousCaveWork->evolveStatus.unk6 = RandInt(0xFF); + sub_808F468(sLuminousCaveWork->pokeStruct, &sLuminousCaveWork->evolveStatus, 1); } static bool8 LuminousCave_HasOnly1Member(void) diff --git a/src/party_list_menu.c b/src/party_list_menu.c index ed9548bbd..911b6599d 100644 --- a/src/party_list_menu.c +++ b/src/party_list_menu.c @@ -63,7 +63,6 @@ bool8 CanTakePokemonHeldItem(PokemonStruct1 *r0); extern PokemonStruct1 *sub_808D3F8(void); extern PokemonStruct1 *sub_808D3BC(void); extern s32 sub_8008ED0(u8 *); -extern void nullsub_104(void); extern u32 sub_8022860(void); extern void sub_8022908(void); extern u32 sub_80244E4(void);