gAvailablePokemonNames

This commit is contained in:
DizzyEggg 2024-10-29 12:16:13 +01:00
parent 131ad370d5
commit 94edb4caec
70 changed files with 421 additions and 555 deletions

View File

@ -702,7 +702,7 @@ _0806F098: .4byte gDungeon
_0806F09C: .4byte 0x00000ccc
_0806F0A0: .4byte gUnknown_8106F24
_0806F0A4: .4byte gUnknown_8106F04
_0806F0A8: .4byte gUnknown_202DFE8
_0806F0A8: .4byte gAvailablePokemonNames + 0x50
_0806F0AC: .4byte gUnknown_80FAE00
_0806F0B0:
ldr r0, _0806F15C

View File

@ -594,7 +594,7 @@ _08084680:
ldr r0, _080846A0
b _080846B4
.align 2, 0
_0808469C: .4byte gUnknown_202E038
_0808469C: .4byte gAvailablePokemonNames + 160
_080846A0: .4byte gUnknown_80FA54C
_080846A4:
adds r0, r6, 0

View File

@ -26,7 +26,9 @@ struct MonPortraitMsg
u8 unkE;
};
extern s32 gFormatData_202DE30[10];
extern u8 gFormatItems[4][80];
extern u8 gAvailablePokemonNames[10][80];
// code_80130A8.s
void sub_8013E54(void);

View File

@ -3,6 +3,6 @@
#include "structs/dungeon_entity.h"
void SetMessageArgument(char buffer[], Entity *entity, u32 param_3);
void SetMessageArgument(u8 *buffer, Entity *entity, u32 param_3);
#endif // GUARD_CODE_8045A00_H
#endif // GUARD_CODE_8045A00_H

View File

@ -3,7 +3,7 @@
#include "structs/dungeon_entity.h"
void SetMessageArgument_2(char buffer[], EntityInfo *param_2, s32 colorNum);
void SetMessageArgument_2(u8 *buffer, EntityInfo *param_2, s32 colorNum);
bool8 HasNegativeStatus(Entity *pokemon);
bool8 IsSleeping(Entity *pokemon);
bool8 HasLowHealth(Entity *pokemon);

View File

@ -12,8 +12,6 @@
#include "text2.h"
#include "structs/struct_sub80095e4.h"
extern u32 gFormatData_202DE30;
static EWRAM_DATA_2 struct_Sub80095E4_2 *sAdventureLog = {0};
#include "data/adventure_log.h"
@ -110,32 +108,32 @@ static void DisplayAdventureLog(void)
switch (temp) {
case 12:
v1 = sub_80978B8();
gFormatData_202DE30 = (s16)v1;
gFormatData_202DE30[0] = (s16)v1;
PrintFormatStringOnWindow(8, sub_8013800(&sAdventureLog->s0.input, i), GetAdventureLogLine(temp), sAdventureLog->s0.unk34, 0);
break;
case 7:
v2 = sub_8097880();
gFormatData_202DE30 = (s16)v2;
gFormatData_202DE30[0] = (s16)v2;
PrintFormatStringOnWindow(8, sub_8013800(&sAdventureLog->s0.input, i), GetAdventureLogLine(temp), sAdventureLog->s0.unk34, 0);
break;
case 11:
v3 = sub_8097838();
gFormatData_202DE30 = (s16)v3;
gFormatData_202DE30[0] = (s16)v3;
PrintFormatStringOnWindow(8, sub_8013800(&sAdventureLog->s0.input, i), GetAdventureLogLine(temp), sAdventureLog->s0.unk34, 0);
break;
case 8:
v4 = sub_80977B8();
gFormatData_202DE30 = v4;
gFormatData_202DE30[0] = v4;
PrintFormatStringOnWindow(8, sub_8013800(&sAdventureLog->s0.input, i), GetAdventureLogLine(temp), sAdventureLog->s0.unk34, 0);
break;
case 9:
v5 = sub_80977F8();
gFormatData_202DE30 = v5;
gFormatData_202DE30[0] = v5;
PrintFormatStringOnWindow(8, sub_8013800(&sAdventureLog->s0.input, i), GetAdventureLogLine(temp), sAdventureLog->s0.unk34, 0);
break;
case 10:
v6 = sub_8097870();
gFormatData_202DE30 = (s16)v6;
gFormatData_202DE30[0] = (s16)v6;
// fallthrough
default:
PrintFormatStringOnWindow(8, sub_8013800(&sAdventureLog->s0.input, i), GetAdventureLogLine(temp), sAdventureLog->s0.unk34, 0);

View File

@ -127,7 +127,6 @@ extern void (*gUnknown_203B088)(s32 a0);
extern MenuStruct gUnknown_202EBC0;
extern u8 gUnknown_202EB80[];
extern u8 gUnknown_202E628[];
extern u8 gAvailablePokemonNames[][80];
extern u8 gPlayerName[][80];
extern u8 gTeamName[];
extern u8 gUnknown_202E5D8[];
@ -166,6 +165,8 @@ bool8 AppendString_8014FA8(const u8 *, u8 **, u8 *, u16 r3);
EWRAM_DATA s32 gFormatData_202DE30[10] = {0};
// 'i', apparently only i0 and i1 are actually used though it's yet to be verified
EWRAM_DATA u8 gFormatItems[4][80] = {0};
// 'm' which probably stands for 'monster', available through m0 to m9
EWRAM_DATA u8 gAvailablePokemonNames[10][80] = {0};
void sub_8014144(void)
{

View File

@ -9,8 +9,6 @@
#include "text_util.h"
#include "text1.h"
extern u8 gAvailablePokemonNames[]; // 202DF98
static EWRAM_DATA_2 struct unkStruct_203B200 *sUnknown_203B200 = {0};
#include "data/code_801602C.h"
@ -105,9 +103,9 @@ static void sub_8016110(void)
case CONFIRM_NAME_MENU_PROMPT:
BuildConfirmNameMenu();
if (sUnknown_203B200->unk4 == 1)
sub_80922B4(gAvailablePokemonNames, sUnknown_203B200->pokeName, POKEMON_NAME_LENGTH);
sub_80922B4(gAvailablePokemonNames[0], sUnknown_203B200->pokeName, POKEMON_NAME_LENGTH);
else
sub_80922B4(gAvailablePokemonNames, sUnknown_203B200->pokeName, POKEMON_NAME_LENGTH);
sub_80922B4(gAvailablePokemonNames[0], sUnknown_203B200->pokeName, POKEMON_NAME_LENGTH);
CreateMenuDialogueBoxAndPortrait(sIsNameOKPrompt, 0, 3, sUnknown_203B200->menus, 0, 4, 0, NULL, 32);
break;

View File

@ -9,10 +9,6 @@
#include "moves.h"
#include "pokemon_mid.h"
extern u8 gAvailablePokemonNames[]; // 202DF98
extern u8 gUnknown_202E1C8[];
extern u8 gUnknown_202E218[160];
static EWRAM_DATA_2 unkStruct_203B22C *sUnknown_203B22C = {0};
#include "data/code_801AFA4.h"
@ -33,7 +29,7 @@ bool8 sub_801AFA4(u32 index)
sUnknown_203B22C->teamItemIndex = index;
sUnknown_203B22C->id = gTeamInventoryRef->teamItems[index].id;
sUnknown_203B22C->moveID = GetItemMoveID(sUnknown_203B22C->id);
sub_8092C84(gUnknown_202E1C8, sUnknown_203B22C->moveID);
sub_8092C84(gAvailablePokemonNames[7], sUnknown_203B22C->moveID);
sub_8099690(0);
if (GetNumMonsAbleToLearnItemMove() == 0)
@ -116,7 +112,7 @@ static void sub_801B178(void)
u8 *bufferPtr;
for (monIndex = 0; monIndex < sUnknown_203B22C->monsAbleToLearnMove; monIndex++) {
bufferPtr = gAvailablePokemonNames + (80 * monIndex);
bufferPtr = gAvailablePokemonNames[monIndex];
PrintPokeNameToBuffer(bufferPtr, &gRecruitedPokemonRef->pokemon[sUnknown_203B22C->unk50[monIndex]]);
sUnknown_203B22C->menuItems[monIndex].text = bufferPtr;
sUnknown_203B22C->menuItems[monIndex].menuAction = monIndex + 4;
@ -143,7 +139,7 @@ static void sub_801B200(void)
default:
sUnknown_203B22C->chosenPokemon = sUnknown_203B22C->unk50[temp - 4];
sUnknown_203B22C->pokeStruct = &gRecruitedPokemonRef->pokemon[sUnknown_203B22C->chosenPokemon];
PrintPokeNameToBuffer(gUnknown_202E218, sUnknown_203B22C->pokeStruct);
PrintPokeNameToBuffer(gAvailablePokemonNames[8], sUnknown_203B22C->pokeStruct);
unk_CopyMoves4To8(sUnknown_203B22C->moves, sUnknown_203B22C->pokeStruct->moves);
for (moveIndex = 0; moveIndex < MAX_MON_MOVES * 2; moveIndex++) {
@ -230,4 +226,4 @@ UNUSED static bool8 sub_801B374(u8 id)
return FALSE;
}
return TRUE;
}
}

View File

@ -11,8 +11,6 @@
#include "text1.h"
#include "text2.h"
extern u8 gAvailablePokemonNames[]; // 202DF98
static EWRAM_DATA_2 unkStruct_203B230 *sUnknown_203B230 = {0};
#include "data/code_801B3C0.h" // 80DBA4C
@ -83,7 +81,7 @@ static void sub_801B480(void)
CallPrepareTextbox_8008C54(sUnknown_203B230->unk24);
sub_80073B8(sUnknown_203B230->unk24);
preload = sUnknown_203B230->unk10[sUnknown_203B230->unk8];
strcpy(gAvailablePokemonNames, preload->pokeName);
strcpy(gAvailablePokemonNames[0], preload->pokeName);
PrintFormatStringOnWindow(16, 0, sFmtPkmn0, sUnknown_203B230->unk24, 0); // {POKEMON_0}
PrintFormatStringOnWindow(4, 16, sUnknown_203B230->unk10[sUnknown_203B230->unk8]->unk4, sUnknown_203B230->unk24, 0);
sub_80073E0(sUnknown_203B230->unk24);
@ -147,4 +145,4 @@ static void sub_801B590(void)
sub_801B46C(2);
break;
}
}
}

View File

@ -17,8 +17,6 @@
#include "text1.h"
#include "text2.h"
extern u8 gAvailablePokemonNames[]; // 202DF98
static EWRAM_DATA_2 unkStruct_203B234 *sUnknown_203B234 = {0};
#include "data/code_801B60C.h" // 80DBA58
@ -57,7 +55,7 @@ bool8 sub_801B60C(u32 r0, u8 id, u8 quantity)
sUnknown_203B234->unk14.unk0 = 0;
sUnknown_203B234->unk14.unk4 = 0;
sUnknown_203B234->unk14.unk8 = 1;
PrintColoredPokeNameToBuffer(gAvailablePokemonNames, GetPlayerPokemonStruct(), COLOR_YELLOW);
PrintColoredPokeNameToBuffer(gAvailablePokemonNames[0], GetPlayerPokemonStruct(), COLOR_YELLOW);
sub_8090E14(gFormatItems[0], &sUnknown_203B234->unk10, &sUnknown_203B234->unk14);
sub_801B748(0);
return TRUE;

View File

@ -30,8 +30,6 @@
#include "wonder_mail_802C4C8.h"
#include "wonder_mail_802C860.h"
extern u8 gAvailablePokemonNames[]; // 202DF98
static EWRAM_DATA_2 struct unk_203B250 *sUnknown_203B250 = {0};
static EWRAM_DATA_2 u32 sUnknown_203B254 = {0};
@ -248,8 +246,8 @@ static void sub_801D3A8(void)
case 0:
case 1:
if (sUnknown_203B250->pokeStruct != NULL) {
PrintColoredPokeNameToBuffer(gAvailablePokemonNames, sUnknown_203B250->pokeStruct, 7);
sUnknown_203B250->unk18.unk0 = gAvailablePokemonNames;
PrintColoredPokeNameToBuffer(gAvailablePokemonNames[0], sUnknown_203B250->pokeStruct, 7);
sUnknown_203B250->unk18.unk0 = gAvailablePokemonNames[0];
sub_8012D60(&sUnknown_203B250->unk18, sUnknown_203B250->unk68, 0, sUnknown_203B250->unkA8, sUnknown_203B250->menuAction, 0);
}
else {
@ -325,7 +323,7 @@ static void sub_801D4C0(void)
loopMax++;
}
else {
strcpy(gAvailablePokemonNames, sTripleQuestionMark);
strcpy(gAvailablePokemonNames[0], sTripleQuestionMark);
if (sub_8096E2C()) {
sUnknown_203B250->unk68[loopMax].text = gCommonFriend[0];

View File

@ -12,8 +12,6 @@
#include "text1.h"
#include "text2.h"
extern u8 gAvailablePokemonNames[];
// TODO: UNIFY WITH struct_Sub80095E4
struct unkStruct_203B278
{
@ -149,7 +147,7 @@ void sub_801F9A4(void)
CallPrepareTextbox_8008C54(gUnknown_203B278->unk5C);
sub_80073B8(gUnknown_203B278->unk5C);
name = &(gUnknown_203B278->unk14[gUnknown_203B278->unkC]->pokeName);
strcpy(gAvailablePokemonNames, *name);
strcpy(gAvailablePokemonNames[0], *name);
PrintFormatStringOnWindow(0x10,0,gUnknown_80DC310,gUnknown_203B278->unk5C,0); // $m0
PrintFormatStringOnWindow(4,0x10,gUnknown_203B278->unk14[gUnknown_203B278->unkC]->unk4,gUnknown_203B278->unk5C,0);
sub_80073E0(gUnknown_203B278->unk5C);

View File

@ -17,8 +17,6 @@
#include "text1.h"
#include "text2.h"
extern u8 gAvailablePokemonNames[]; // 202DF98
static EWRAM_DATA_2 unkStruct_203B294 *sUnknown_203B294 = {0};
#include "data/code_80227B8.h"
@ -44,8 +42,8 @@ bool8 sub_80227B8(PokemonStruct1 *pkmn)
sUnknown_203B294->pokeStruct = pkmn;
if (pkmn != NULL) {
PrintColoredPokeNameToBuffer(gAvailablePokemonNames, pkmn, COLOR_WHITE_2);
PrintColoredPokeNameToBuffer(gAvailablePokemonNames + 80, pkmn, COLOR_YELLOW);
PrintColoredPokeNameToBuffer(gAvailablePokemonNames[0], pkmn, COLOR_WHITE_2);
PrintColoredPokeNameToBuffer(gAvailablePokemonNames[1], pkmn, COLOR_YELLOW);
if (HasGummiItem())
sub_8022924(0);
@ -53,8 +51,8 @@ bool8 sub_80227B8(PokemonStruct1 *pkmn)
sub_8022924(17);
}
else {
strcpy(gAvailablePokemonNames, sTripleQuestionMark);
strcpy(gAvailablePokemonNames + 80, sTripleQuestionMark);
strcpy(gAvailablePokemonNames[0], sTripleQuestionMark);
strcpy(gAvailablePokemonNames[1], sTripleQuestionMark);
if (GetNumberOfFilledInventorySlots() == 0)
sub_8022924(18);

View File

@ -13,7 +13,6 @@
#include "text1.h"
#include "text2.h"
extern u8 gUnknown_202E1C8[];
extern u8 gUnknown_202E5D8[];
static EWRAM_DATA_2 struct unkStruct_203B2FC *sUnknown_203B2FC = {0};
@ -118,11 +117,11 @@ static void sub_802DC9C(void)
switch (sUnknown_203B2FC->state) {
case 0:
CopyYellowMonsterNametoBuffer(gUnknown_202E5D8, sUnknown_203B2FC->jobInfo->clientSpecies);
CopyYellowMonsterNametoBuffer(gUnknown_202E1C8, sUnknown_203B2FC->jobInfo->clientSpecies);
CopyYellowMonsterNametoBuffer(gAvailablePokemonNames[7], sUnknown_203B2FC->jobInfo->clientSpecies);
speciesText = GetMonSpecies(sUnknown_203B2FC->jobInfo->clientSpecies);
strcpy(gUnknown_202E1C8 - 560, speciesText);
strcpy(gAvailablePokemonNames[0], speciesText);
speciesText = GetMonSpecies(sUnknown_203B2FC->jobInfo->targetSpecies);
strcpy(gUnknown_202E1C8 - 480, speciesText);
strcpy(gAvailablePokemonNames[1], speciesText);
UnlockExclusivePokemon(sUnknown_203B2FC->jobInfo->clientSpecies);
BufferItemName(gFormatItems[0], sUnknown_203B2FC->jobInfo->targetItem, NULL);
sUnknown_203B2FC->fallbackState = 6;

View File

@ -13,8 +13,6 @@
#include "dungeon_util.h"
#include "structs/str_dungeon.h"
extern u8 gAvailablePokemonNames[]; // 202DF98
extern const u16 gUnknown_80F67DC[4];
extern const u16 gUnknown_80F67E4[4];
extern const s32 gUnknown_80F67EC[8];
@ -113,7 +111,7 @@ void sub_80427AC(void)
enInfo->unkF3 = FALSE;
sub_80429A0(entity);
if (!enInfo->isNotTeamMember) {
SetMessageArgument(gAvailablePokemonNames, entity, 0);
SetMessageArgument(gAvailablePokemonNames[0], entity, 0);
DisplayDungeonLoggableMessageTrue(entity, *gPtrFeralFoundItemMessage);
}
}

View File

@ -382,7 +382,6 @@ extern void sub_8042B0C(Entity *);
extern s16 gUnknown_2026E4E;
extern u8 gUnknown_202F32C;
extern u8 gUnknown_202F1A8;
extern s32 gFormatData_202DE30;
extern s32 gUnknown_202EDC8;
extern Entity *gLeaderPointer;
@ -403,7 +402,6 @@ extern const u8 *const gUnknown_80F89D8;
extern const s16 gUnknown_80F6850[];
extern const s16 gDungeonMusic[];
extern u8 gAvailablePokemonNames[];
extern OpenedFile *gDungeonNameBannerPalette;
void xxx_dungeon_8042F6C(struct UnkStruct_xxx_dungeon_8042F6C *r8)
@ -508,8 +506,8 @@ void xxx_dungeon_8042F6C(struct UnkStruct_xxx_dungeon_8042F6C *r8)
}
if (r9) {
gFormatData_202DE30 = gDungeon->unk67B;
if (gFormatData_202DE30 != 0) {
gFormatData_202DE30[0] = gDungeon->unk67B;
if (gFormatData_202DE30[0] != 0) {
DisplayDungeonMessage(0, gUnknown_80FEC48, 1);
}
else {
@ -533,7 +531,7 @@ void xxx_dungeon_8042F6C(struct UnkStruct_xxx_dungeon_8042F6C *r8)
if (sub_8099394(&sp)) {
unkStruct_203B480 *mailStr = GetMailatIndex(sp);
if (mailStr->rescuesAllowed) {
gFormatData_202DE30 = mailStr->rescuesAllowed;
gFormatData_202DE30[0] = mailStr->rescuesAllowed;
DisplayDungeonMessage(0, gUnknown_81002B8, 1);
}
else {
@ -1082,7 +1080,7 @@ bool8 sub_8043ED0(bool8 a0)
Entity *leader = GetLeader();
if (EntityExists(leader)) {
if (!a0) {
strcpy(gAvailablePokemonNames, gDungeon->faintStringBuffer);
strcpy(gAvailablePokemonNames[0], gDungeon->faintStringBuffer);
DisplayDungeonMessage(0, gUnknown_80F89B4, 1);
}
sub_8042B0C(leader);
@ -1094,7 +1092,7 @@ bool8 sub_8043ED0(bool8 a0)
Entity *leader = GetLeader();
if (EntityExists(leader)) {
if (!a0) {
strcpy(gAvailablePokemonNames, gDungeon->faintStringBuffer);
strcpy(gAvailablePokemonNames[0], gDungeon->faintStringBuffer);
DisplayDungeonMessage(0, gUnknown_80F89D4, 1);
}
sub_8042B0C(leader);
@ -1106,7 +1104,7 @@ bool8 sub_8043ED0(bool8 a0)
Entity *leader = GetLeader();
if (EntityExists(leader)) {
if (!a0) {
strcpy(gAvailablePokemonNames, gDungeon->faintStringBuffer);
strcpy(gAvailablePokemonNames[0], gDungeon->faintStringBuffer);
DisplayDungeonMessage(0, gUnknown_80F89D8, 1);
}
sub_8042B0C(leader);

View File

@ -64,7 +64,7 @@ s32 GetTeamMemberEntityIndex(Entity *pokemon)
return -1;
}
void SetMessageArgument(char buffer[], Entity *entity, u32 param_3)
void SetMessageArgument(u8 *buffer, Entity *entity, u32 param_3)
{
switch(GetEntityType(entity))
{

View File

@ -26,8 +26,6 @@
#include "structs/str_dungeon.h"
#include "structs/str_position.h"
extern u8 gAvailablePokemonNames[];
extern s16 gTypeGummiIQBoost[NUM_TYPES][NUMBER_OF_GUMMIS];
extern u8 *gUnknown_80F89F4[];
@ -222,7 +220,7 @@ void sub_80479B8(char param_1, char param_2, u8 param_3, Entity *pokemon, Entity
}
PlaySoundEffect(0x14d);
sub_8045BF8(gFormatItems[0],item);
SetMessageArgument(gAvailablePokemonNames,target,0);
SetMessageArgument(gAvailablePokemonNames[0],target,0);
TryDisplayDungeonLoggableMessage3(pokemon,target,*gUnknown_80FDBB8); // $m0 caught the $i0
info->heldItem = *item;
sub_806A6E8(target);
@ -597,7 +595,7 @@ void RawstBerryItemAction(Entity *pokemon, Entity *target)
SendNonVolatileEndMessage(pokemon, target);
else
{
SetMessageArgument(gAvailablePokemonNames, target, 0);
SetMessageArgument(gAvailablePokemonNames[0], target, 0);
// Pointer to "But nothing happened!"
TryDisplayDungeonLoggableMessage3(pokemon, target, *gUnknown_80FB580);
}
@ -611,7 +609,7 @@ void HungerSeedItemAction(Entity *pokemon, Entity * target)
else
{
entityInfo = target->info;
SetMessageArgument(gAvailablePokemonNames, target, 0);
SetMessageArgument(gAvailablePokemonNames[0], target, 0);
if (IQSkillIsEnabled(target, IQ_SELF_CURER))
TryDisplayDungeonLoggableMessage3(pokemon, target, *gPtrSelfHealPreventedHungerMessage);
else
@ -1041,7 +1039,7 @@ bool8 sub_8048D50(Entity * pokemon, Item *item)
else
{
if ((entityInfo->muzzled.muzzled == TRUE) && (IsEdibleItem(item->id))) {
SetMessageArgument(gAvailablePokemonNames,pokemon,0);
SetMessageArgument(gAvailablePokemonNames[0],pokemon,0);
TryDisplayDungeonLoggableMessage(pokemon,*gUnknown_80FDCA4);
return FALSE;
}

View File

@ -1702,8 +1702,6 @@ extern void sub_8041AE0(Entity *pokemon);
extern void sub_807EC28(bool8);
extern void sub_8083CE0(u8 param_1);
extern u8 gAvailablePokemonNames[];
extern u8 gUnknown_202749A[];
extern MenuInputStruct gUnknown_202EE10;
@ -1755,7 +1753,7 @@ void sub_805F02C(void)
sub_803F508(r7);
sub_8041AD0(leader);
sub_8041AE0(GetLeader());
SetMessageArgument(gAvailablePokemonNames, r7, 0);
SetMessageArgument(gAvailablePokemonNames[0], r7, 0);
TryDisplayDungeonLoggableMessage(r7, gUnknown_80F9BB0);
sub_807EC28(FALSE);
r8->unk64 = 0;
@ -2118,7 +2116,7 @@ void ShowFieldMenu(u8 a0_, bool8 a1)
break;
}
else {
SetMessageArgument(gAvailablePokemonNames, GetLeader(), 0);
SetMessageArgument(gAvailablePokemonNames[0], GetLeader(), 0);
DisplayDungeonMessage(0, gUnknown_80FDE18, 1);
}
}
@ -2243,7 +2241,7 @@ void DrawFieldMenu(u8 a0)
gFormatData_202DE30[0] = gTeamInventoryRef->teamMoney;
PrintFormatStringOnWindow(0x73, 12, gUnknown_80F9190, 2, 0);
GetWeatherName(gAvailablePokemonNames, GetApparentWeather(NULL));
GetWeatherName(gAvailablePokemonNames[0], GetApparentWeather(NULL));
PrintFormatStringOnWindow(0x73, 24, gUnknown_80F91A8, 2, 0);
gFormatData_202DE30[0] = hours;
@ -2254,7 +2252,7 @@ void DrawFieldMenu(u8 a0)
Entity *teamMon = gDungeon->teamPokemon[i];
if (EntityExists(teamMon)) {
EntityInfo *monInfo = teamMon->info;
SetMessageArgument(gAvailablePokemonNames, teamMon, 0);
SetMessageArgument(gAvailablePokemonNames[0], teamMon, 0);
gFormatData_202DE30[0] = monInfo->HP;
gFormatData_202DE30[1] = monInfo->maxHPStat;
PrintFormatStringOnWindow(4, yLoop, gUnknown_80F91E0, 2, 0);
@ -2775,7 +2773,7 @@ void CreateFieldItemMenu(s32 a0, Entity *a1, bool8 a2, bool8 a3, UnkTextStruct3
break;
case 3: {
Item *item = &a1->info->heldItem;
SetMessageArgument_2(gAvailablePokemonNames, a1Info, 0);
SetMessageArgument_2(gAvailablePokemonNames[0], a1Info, 0);
PrintFormatStringOnWindow(x, 0, gUnknown_80FE940, 0, 0);
if (item->flags & ITEM_FLAG_EXISTS) {
gUnknown_202EE10.unk1A++;
@ -2789,7 +2787,7 @@ void CreateFieldItemMenu(s32 a0, Entity *a1, bool8 a2, bool8 a3, UnkTextStruct3
Entity *chosenTeamMember = gDungeon->teamPokemon[sUnknown_202F248[a0] - MAX_TEAM_MEMBERS];
if (EntityExists(chosenTeamMember)) {
Item *item = &chosenTeamMember->info->heldItem;
SetMessageArgument_2(gAvailablePokemonNames, chosenTeamMember->info, 0);
SetMessageArgument_2(gAvailablePokemonNames[0], chosenTeamMember->info, 0);
PrintFormatStringOnWindow(x, 0, gUnknown_80FE940, 0, 0);
if (item->flags & ITEM_FLAG_EXISTS) {
gUnknown_202EE10.unk1A++;
@ -3381,33 +3379,33 @@ void DrawFieldTeamMenu(struct UnkFieldTeamMenuStruct *a0, UnkTextStruct3 *a1, bo
EntityInfo *monInfo = teamMon->info;
s32 color = (a0->unk14[i] != 0) ? 6 : 2;
sub_8070968(gAvailablePokemonNames, monInfo, color);
sub_8070968(gAvailablePokemonNames[0], monInfo, color);
if (sub_806A538(gRecruitedPokemonRef->pokemon2[monInfo->teamIndex].unkA)) {
if (monInfo->HP <= monInfo->maxHPStat / 4) {
strcpy(gAvailablePokemonNames + 0x50, gHeartRedTiny);
strcpy(gAvailablePokemonNames[1], gHeartRedTiny);
}
else if (monInfo->HP <= (monInfo->maxHPStat / 4) * 2) {
strcpy(gAvailablePokemonNames + 0x50, gHeartRedSmall);
strcpy(gAvailablePokemonNames[1], gHeartRedSmall);
}
else if (monInfo->HP <= (monInfo->maxHPStat / 4) * 3) {
strcpy(gAvailablePokemonNames + 0x50, gHeartRedMedium);
strcpy(gAvailablePokemonNames[1], gHeartRedMedium);
}
else {
strcpy(gAvailablePokemonNames + 0x50, gHeartRedLarge);
strcpy(gAvailablePokemonNames[1], gHeartRedLarge);
}
}
else {
if (monInfo->HP <= monInfo->maxHPStat / 4) {
strcpy(gAvailablePokemonNames + 0x50, gHeartYellowTiny);
strcpy(gAvailablePokemonNames[1], gHeartYellowTiny);
}
else if (monInfo->HP <= (monInfo->maxHPStat / 4) * 2) {
strcpy(gAvailablePokemonNames + 0x50, gHeartYellowSmall);
strcpy(gAvailablePokemonNames[1], gHeartYellowSmall);
}
else if (monInfo->HP <= (monInfo->maxHPStat / 4) * 3) {
strcpy(gAvailablePokemonNames + 0x50, gHeartYellowMedium);
strcpy(gAvailablePokemonNames[1], gHeartYellowMedium);
}
else {
strcpy(gAvailablePokemonNames + 0x50, gHeartYellowLarge);
strcpy(gAvailablePokemonNames[1], gHeartYellowLarge);
}
}
@ -3711,7 +3709,7 @@ void PrintMonTactics(s32 firstId, u8 *tacticIds, EntityInfo *mon, s32 windowId)
if (tactic == TACTIC_UNUSED)
break;
CopyTacticsNameToBuffer(gAvailablePokemonNames, tactic);
CopyTacticsNameToBuffer(gAvailablePokemonNames[0], tactic);
if (mon->tactic == tactic) {
PrintFormatStringOnWindow(0x10, y, gUnknown_8106BEC, windowId, 0);
}

View File

@ -9,9 +9,6 @@
#include "items.h"
#include "code_80130A8.h"
extern u8 gAvailablePokemonNames[];
extern u8 gUnknown_202DFE8[];
extern u8 *gUnknown_80F8BE0[];
extern u8 *gItemStickyCannotMove1[];
extern u8 *gItemStickyCannotMove2[];
@ -139,7 +136,7 @@ void HandleGiveItemAction(Entity *param_1)
}
else
{
SetMessageArgument(gUnknown_202DFE8,entity,0);
SetMessageArgument(gAvailablePokemonNames[1],entity,0);
if (((info2->heldItem).flags & ITEM_FLAG_EXISTS)) {
if (((info2->heldItem).flags & ITEM_FLAG_STICKY)) {
sub_8045BF8(gFormatItems[1],&info2->heldItem);
@ -216,7 +213,7 @@ void HandleTakeItemAction(Entity *param_1)
item = *heldItem;
item.flags &= ~(ITEM_FLAG_SET);
sub_8045BF8(gFormatItems[0],&item);
SetMessageArgument(gAvailablePokemonNames,entity,0);
SetMessageArgument(gAvailablePokemonNames[0],entity,0);
heldItem->id = ITEM_NOTHING;
heldItem->quantity = 0;
heldItem->flags = 0;
@ -262,7 +259,7 @@ void sub_8066BD4(Entity *param_1)
item->flags &= ~(ITEM_FLAG_SET);
sub_8045BF8(gFormatItems[0],heldItem);
sub_8045BF8(gFormatItems[1],item);
SetMessageArgument(gUnknown_202DFE8,entity,0);
SetMessageArgument(gAvailablePokemonNames[1],entity,0);
temp = info->heldItem;
info->heldItem = *item;
*item = temp;
@ -330,7 +327,7 @@ void HandlePlaceItemAction(Entity *param_1)
item->flags = 0;
FillInventoryGaps();
PlaySoundEffect(0x14d);
SetMessageArgument(gAvailablePokemonNames,entity,0);
SetMessageArgument(gAvailablePokemonNames[0],entity,0);
TryDisplayDungeonLoggableMessage(entity,*gUnknown_80F8E28);
sub_807AB38(entity,gDungeon->unk3A08);
}

View File

@ -30,7 +30,6 @@ struct unkStruct_80F520C
extern struct unkStruct_80F520C gUnknown_80F520C[];
extern u8 gAvailablePokemonNames[];
extern u8 gUnknown_80F51E4[];
extern u8 *gUnknown_80FCC7C[];
extern u8 *gUnknown_80FCCAC[];
@ -173,7 +172,7 @@ void sub_8069F9C(Entity *pokemon,Entity * target,Move *move)
}
iVar6->abilities[abilityIndex] = local_20[randomIndex];
gDungeon->unkC = 1;
SetMessageArgument(gAvailablePokemonNames,target,0);
SetMessageArgument(gAvailablePokemonNames[0],target,0);
TryDisplayDungeonLoggableMessage3(pokemon,target,*gUnknown_80FCC7C);
sub_8042900(target);
sub_806ABAC(pokemon,target);
@ -191,7 +190,7 @@ _0806A068:
iVar6->types[0] = type;
iVar6->types[1] = TYPE_NONE;
iVar6->isColorChanged = TRUE;
SetMessageArgument(gAvailablePokemonNames,target,0);
SetMessageArgument(gAvailablePokemonNames[0],target,0);
__src = GetUnformattedTypeString(iVar6->types[0]);
strcpy(gFormatItems[0],__src);
TryDisplayDungeonLoggableMessage3(pokemon,target,*gUnknown_80FCCAC);
@ -216,7 +215,7 @@ void sub_806A120(Entity * pokemon, Entity * target, Move* move)
entityInfo->types[0] = uVar2_u32;
entityInfo->types[1] = 0;
sub_8041BBC(target);
SetMessageArgument(gAvailablePokemonNames,target,0);
SetMessageArgument(gAvailablePokemonNames[0],target,0);
typeString = GetUnformattedTypeString(uVar2_u32);
strcpy(gFormatItems[0],typeString);
TryDisplayDungeonLoggableMessage3(pokemon,target,*gUnknown_80FDCC8);

View File

@ -37,7 +37,6 @@
#include "dungeon_message.h"
extern u8 gUnknown_202F221;
extern u8 gUnknown_202DFE8[];
extern void sub_806BFC0(EntityInfo *, u32);
@ -319,9 +318,6 @@ extern const u8 *const gUnknown_80F9D8C[];
extern const u8 *const gUnknown_80F9D84[];
extern const u8 *const gUnknown_80F9D28[];
extern u8 gAvailablePokemonNames[];
extern u32 gFormatData_202DE30;
void HandleDealingDamage(Entity *attacker, Entity *target, struct DamageStruct *dmgStruct, bool32 isFalseSwipe, bool32 giveExp, s16 arg4, bool32 arg8, s32 argC)
{
bool32 r9;
@ -517,14 +513,14 @@ static bool8 HandleDealingDamageInternal(Entity *attacker, Entity *target, struc
}
if (arg4 != 0x20E && HasAbility(target, ABILITY_STURDY) && dmgStruct->dmg == 9999) {
SetMessageArgument(gUnknown_202DFE8, target, 0);
SetMessageArgument(gAvailablePokemonNames[1], target, 0);
TryDisplayDungeonLoggableMessage3(attacker, target, gUnknown_80FCA90);
sub_8042238(attacker, target);
dmgStruct->unkF = 1;
return FALSE;
}
if (targetData->immobilize.immobilizeStatus == STATUS_FROZEN) {
SetMessageArgument(gUnknown_202DFE8, target, 0);
SetMessageArgument(gAvailablePokemonNames[1], target, 0);
TryDisplayDungeonLoggableMessage3(attacker, target, gUnknown_80F9600);
sub_8042238(attacker, target);
dmgStruct->unkF = 1;
@ -565,8 +561,8 @@ static bool8 HandleDealingDamageInternal(Entity *attacker, Entity *target, struc
}
}
SetMessageArgument(gAvailablePokemonNames, attacker, 0);
SetMessageArgument(gAvailablePokemonNames + 0x50, target, 0);
SetMessageArgument(gAvailablePokemonNames[0], attacker, 0);
SetMessageArgument(gAvailablePokemonNames[1], target, 0);
if (dmgStruct->dmg == 0) {
if (sub_8045888(attacker) && sub_8045888(target)) {
if (targetData->unk152 == 0) {
@ -598,7 +594,7 @@ static bool8 HandleDealingDamageInternal(Entity *attacker, Entity *target, struc
else {
const u8 *str;
gFormatData_202DE30 = dmgStruct->dmg;
gFormatData_202DE30[0] = dmgStruct->dmg;
str = gUnknown_80F9764[dmgStruct->residualDmgType];
ASM_MATCH_TRICK(dmgStruct);
@ -712,8 +708,8 @@ static bool8 HandleDealingDamageInternal(Entity *attacker, Entity *target, struc
r8 = 0;
targetData->unk14C = 0;
SetMessageArgument(gAvailablePokemonNames, attacker, 0);
SetMessageArgument(gAvailablePokemonNames + 0x50, target, 0);
SetMessageArgument(gAvailablePokemonNames[0], attacker, 0);
SetMessageArgument(gAvailablePokemonNames[1], target, 0);
if (dmgStruct->residualDmgType == 19 || dmgStruct->residualDmgType == 20) {
if (targetData->isNotTeamMember) {
TryDisplayDungeonLoggableMessage3(attacker, target, gUnknown_80F9E44);
@ -788,7 +784,7 @@ static bool8 HandleDealingDamageInternal(Entity *attacker, Entity *target, struc
sub_806A390(target);
sub_806CCB4(target, sub_806CEBC(target));
EntityUpdateStatusSprites(target);
SetMessageArgument(gUnknown_202DFE8, target, 0);
SetMessageArgument(gAvailablePokemonNames[1], target, 0);
DisplayDungeonLoggableMessageTrue(attacker, gUnknown_80FD46C);
sub_806F63C(target);
return FALSE;
@ -845,8 +841,8 @@ static bool8 HandleDealingDamageInternal(Entity *attacker, Entity *target, struc
sub_806A390(target);
sub_806CCB4(target, sub_806CEBC(target));
EntityUpdateStatusSprites(target);
SetMessageArgument(gAvailablePokemonNames, target, 0);
SetMessageArgument(gAvailablePokemonNames + 0x50, teamMember, 0);
SetMessageArgument(gAvailablePokemonNames[0], target, 0);
SetMessageArgument(gAvailablePokemonNames[1], teamMember, 0);
DisplayDungeonLoggableMessageTrue(attacker, gUnknown_80FD484);
sub_806F63C(target);
return FALSE;
@ -899,7 +895,7 @@ static bool8 HandleDealingDamageInternal(Entity *attacker, Entity *target, struc
sub_806A390(target);
sub_806CCB4(target, sub_806CEBC(target));
EntityUpdateStatusSprites(target);
SetMessageArgument(gUnknown_202DFE8, target, 0);
SetMessageArgument(gAvailablePokemonNames[1], target, 0);
DisplayDungeonLoggableMessageTrue(attacker, gUnknown_80FD46C);
sub_806F63C(target);
return FALSE;

View File

@ -25,8 +25,6 @@
#include "type_chart.h"
extern u8 gUnknown_202E628[];
extern u8 gUnknown_202E088[];
extern u8 gAvailablePokemonNames[];
extern u8 gUnknown_202EE70[MAX_TEAM_BODY_SIZE];
extern s16 gUnknown_80F5008;
extern s16 gUnknown_80F5700[];
@ -38,7 +36,6 @@ extern u8 *gUnknown_80FA030[];
extern u8 *gUnknown_80F9FE8[];
extern u8 *gUnknown_80FA004[];
extern u8 *gUnknown_80FA0C8[];
extern u8 gUnknown_202E088[];
extern u8 *gUnknown_80FA120[];
extern u8 *gUnknown_80FA090[];
@ -745,7 +742,7 @@ bool8 sub_806FA5C(Entity *entity1, Entity *entity2, struct unkStruct_8069D4C *pa
entity2->unk22 = 0;
sub_807A0CC(entity1, entity2);
sub_806CE68(entity2, direction);
CopyCyanMonsterNametoBuffer(gAvailablePokemonNames,param_3->id);
CopyCyanMonsterNametoBuffer(gAvailablePokemonNames[0],param_3->id);
if (DisplayDungeonYesNoMessage(0,*gUnknown_80F9FE8,1) == 0) {
if (param_3->id != MONSTER_JIRACHI) {
@ -814,11 +811,11 @@ bool8 sub_806FA5C(Entity *entity1, Entity *entity2, struct unkStruct_8069D4C *pa
DisplayDungeonMessage(0,*gUnknown_80FA0C8,1);
}
}
sub_808D9DC(gAvailablePokemonNames,pokeStruct2,0);
sub_808D9DC(gAvailablePokemonNames[0],pokeStruct2,0);
TryDisplayDungeonLoggableMessage(entity1,*gUnknown_80FA0F0);
if (flag) {
leader = xxx_call_GetLeader();
SetMessageArgument(gAvailablePokemonNames,leader,0);
SetMessageArgument(gAvailablePokemonNames[0],leader,0);
sub_8092558(gUnknown_202E628,friendArea);
PlaySound(0xce);
DisplayDungeonMessage(0,*gUnknown_80FA120,1);
@ -1077,12 +1074,12 @@ bool8 sub_806FDF4(Entity *entity1,Entity *entity2,Entity **entityPtr)
}
if (flag) {
leader = xxx_call_GetLeader();
SetMessageArgument(gAvailablePokemonNames,leader,0);
SetMessageArgument(gAvailablePokemonNames[0],leader,0);
sub_8092558(gUnknown_202E628,friendArea);
PlaySound(0xce);
DisplayDungeonMessage(0,*gUnknown_80FA120,1);
}
sub_808D9DC(gUnknown_202E088,pokeStruct2,0);
sub_808D9DC(gAvailablePokemonNames[3],pokeStruct2,0);
*entityPtr = local_2c;
}
return TRUE;

View File

@ -28,10 +28,6 @@ struct unkStruct_806B7F8
EWRAM_DATA s32 gUnknown_202F31C[2] = {0, 0};
EWRAM_DATA s32 gUnknown_202F324[2] = {0, 0};
extern s32 gFormatData_202DE30[5];
extern u8 gAvailablePokemonNames[];
extern s16 gUnknown_80F4DA6;
extern s16 gUnknown_80F4DA8;
extern s16 gUnknown_80F4DAA;
@ -103,7 +99,7 @@ void sub_8071B48(void)
if (dungeon->unk662 > 900) {
entity2 = dungeon->unk17B34;
if ((EntityExists(entity2)) && (entity2->spawnGenID == dungeon->unk17B40)) {
SetMessageArgument(gAvailablePokemonNames,entity2,0);
SetMessageArgument(gAvailablePokemonNames[0],entity2,0);
entityPtr = entity2;
}
}
@ -548,7 +544,7 @@ void sub_8072008(Entity *pokemon, Entity *target, s32 level, u8 param_4, u8 para
for(tacticIndex = 0; tacticIndex < NUM_TACTICS; tacticIndex++)
{
if ((tacticsBuffer1[tacticIndex] == 0) && (tacticsBuffer2[tacticIndex] == 1)) {
SetMessageArgument(gAvailablePokemonNames,target,0);
SetMessageArgument(gAvailablePokemonNames[0],target,0);
CopyTacticsNameToBuffer(gFormatItems[0],tacticIndex);
TryDisplayDungeonLoggableMessage3(pokemon,target,*gUnknown_80FF730);
}
@ -557,7 +553,7 @@ void sub_8072008(Entity *pokemon, Entity *target, s32 level, u8 param_4, u8 para
info->expGainedInTurn = 0;
info->unk149 = 0;
if ((flag == 0) && (param_4 != 0)) {
SetMessageArgument(gAvailablePokemonNames,target,0);
SetMessageArgument(gAvailablePokemonNames[0],target,0);
TryDisplayDungeonLoggableMessage3(pokemon,target,*gUnknown_80F9B74);
}
}
@ -575,7 +571,7 @@ void sub_807218C(Entity *pokemon)
info = pokemon->info;
sub_806A2BC(pokemon, 0);
SetMessageArgument_2(gAvailablePokemonNames, info, 0);
SetMessageArgument_2(gAvailablePokemonNames[0], info, 0);
if(sub_8070BC0(pokemon))
{
r3 = 0;
@ -672,7 +668,7 @@ void LevelDownTarget(Entity *pokemon, Entity *target, u32 level)
if(!flag)
{
SetMessageArgument(gAvailablePokemonNames, target, 0);
SetMessageArgument(gAvailablePokemonNames[0], target, 0);
TryDisplayDungeonLoggableMessage3(pokemon, target, *gUnknown_80F9B94);
}
}
@ -713,7 +709,7 @@ bool8 sub_80723D0(Entity *pokemon, Entity *target, u8 param_3, u8 param_4)
sub_8083D58();
gFormatData_202DE30[0] = level;
SetMessageArgument_2(gAvailablePokemonNames, info, 0);
SetMessageArgument_2(gAvailablePokemonNames[0], info, 0);
DisplayDungeonLoggableMessage(target, *gUnknown_80F9E80);
}
else
@ -721,7 +717,7 @@ bool8 sub_80723D0(Entity *pokemon, Entity *target, u8 param_3, u8 param_4)
if(!flag)
sub_8083D58();
gFormatData_202DE30[0] = level;
SetMessageArgument_2(gAvailablePokemonNames, info, 0);
SetMessageArgument_2(gAvailablePokemonNames[0], info, 0);
DisplayDungeonLoggableMessageTrue(target, *gUnknown_80F9E80);
}
}
@ -863,7 +859,7 @@ bool8 sub_80725A4(Entity *pokemon, Entity *target)
}
SetMessageArgument_2(gAvailablePokemonNames, info, 0);
SetMessageArgument_2(gAvailablePokemonNames[0], info, 0);
if(info->level != oldLevel)
{

View File

@ -13,8 +13,6 @@
#include "structs/map.h"
#include "structs/str_pokemon.h"
extern u8 gAvailablePokemonNames[];
extern u8 gUnknown_202DFE8[];
extern Position gAdjacentTileOffsets[];
extern u8 *gUnknown_80FE2EC[];
@ -111,8 +109,8 @@ void sub_8072B78(Entity *pokemon, Entity *target, s16 id)
id_s32 = id;
entityInfo = target->info;
SetMessageArgument_2(gAvailablePokemonNames,entityInfo,0);
CopyCyanMonsterNametoBuffer(gAvailablePokemonNames + 0x50,id_s32);
SetMessageArgument_2(gAvailablePokemonNames[0],entityInfo,0);
CopyCyanMonsterNametoBuffer(gAvailablePokemonNames[1],id_s32);
file = GetSpriteData(id_s32);
fu(entityInfo, id_s32);
GetPokemonLevelData(&levelData,id_s32,entityInfo->level);

View File

@ -65,8 +65,6 @@ extern void sub_807EC28(bool8);
extern s32 gUnknown_202F378;
extern u8 gUnknown_202F32D;
extern u8 gUnknown_202DFE8[];
extern u8 gAvailablePokemonNames[];
extern const u8 *gMonTerrifiedCouldntPickUpItem;
extern const u8 *gMonPickedUpItem;
@ -140,7 +138,7 @@ void sub_8073D14(Entity *entity)
return;
if (sub_8044B28())
return;
SetMessageArgument(gAvailablePokemonNames, entity, 0);
SetMessageArgument(gAvailablePokemonNames[0], entity, 0);
if (entityInfo->isTeamLeader)
return;
if (entityInfo->shopkeeper == 1)
@ -157,7 +155,7 @@ void sub_8073D14(Entity *entity)
if (ShouldMonsterRunAwayAndShowEffect(entity, TRUE)) {
sub_8045BF8(gFormatItems[0], groundItem);
SetMessageArgument(gAvailablePokemonNames, entity, 0);
SetMessageArgument(gAvailablePokemonNames[0], entity, 0);
DisplayDungeonLoggableMessageTrue(entity, gMonTerrifiedCouldntPickUpItem);
}
else if (!_entityInfo->isNotTeamMember && GetItemCategory(groundItem->id) == CATEGORY_POKE) {
@ -267,7 +265,7 @@ void sub_8073D14(Entity *entity)
DisplayDungeonLoggableMessageTrue(entity, gMonPickedUpItem2);
}
else if (AddItemToInventory(groundItem)) {
SetMessageArgument(gAvailablePokemonNames, entity, 0);
SetMessageArgument(gAvailablePokemonNames[0], entity, 0);
DisplayDungeonLoggableMessageTrue(entity, gMonCouldntPickUpItem);
}
else {
@ -573,7 +571,7 @@ void sub_8074094(Entity *entity)
UseAttack(NULL);
if (!EntityExists(entity) || sub_8044B28())
return;
SetMessageArgument(gUnknown_202DFE8, entity, 0);
SetMessageArgument(gAvailablePokemonNames[1], entity, 0);
TryDisplayDungeonLoggableMessage(entity, gUnknown_80FEB30);
TrySendImmobilizeSleepEndMsg(entity, entity);
if (entityInfo->protection.protectionStatus == STATUS_PROTECT) {
@ -613,7 +611,7 @@ void sub_8074094(Entity *entity)
if (entityInfo->charging.chargingStatusTurns == 0) {
entityInfo->charging.chargingStatus = 0;
entityInfo->unk14A = 0;
SetMessageArgument(gAvailablePokemonNames, entity, 0);
SetMessageArgument(gAvailablePokemonNames[0], entity, 0);
TryDisplayDungeonLoggableMessage(entity, gUnknown_80FABD8);
}
}
@ -769,7 +767,7 @@ void TickStatusHeal(Entity *entity)
if (entityInfo->terrifiedTurns != 0) {
sub_80838EC(&entityInfo->terrifiedTurns);
if (entityInfo->terrifiedTurns == 0) {
SetMessageArgument(gAvailablePokemonNames, entity, 0);
SetMessageArgument(gAvailablePokemonNames[0], entity, 0);
TryDisplayDungeonLoggableMessage(entity, gPtrStenchWavedOffMessage);
}
}
@ -793,7 +791,7 @@ void TickStatusHeal(Entity *entity)
s32 newSpdStage = CalcSpeedStage(entity);
if (oldSpdStage != newSpdStage) {
SetMessageArgument(gAvailablePokemonNames, entity, 0);
SetMessageArgument(gAvailablePokemonNames[0], entity, 0);
TryDisplayDungeonLoggableMessage(entity, gUnknown_80FA124[newSpdStage]);
}
}

View File

@ -23,8 +23,6 @@
#include "structs/dungeon_entity.h"
#include "structs/str_dungeon.h"
extern u8 gAvailablePokemonNames[0x58];
extern u8 gUnknown_202DFE8[0x58];
extern u8 *gUnknown_80FA8BC[];
extern u8 *gUnknown_80FA824[];
extern u8 *gUnknown_80FA81C[];
@ -218,7 +216,7 @@ void MuzzleTarget(Entity *pokemon, Entity *target)
if ((EntityExists(target)) && (!HasSafeguardStatus(pokemon, target, TRUE))) {
entityInfo = target->info;
SetMessageArgument(gAvailablePokemonNames,target,0);
SetMessageArgument(gAvailablePokemonNames[0],target,0);
if (entityInfo->muzzled.muzzled != TRUE) {
entityInfo->muzzled.muzzled = TRUE;
entityInfo->muzzled.muzzledTurns = CalculateStatusTurns(target,gUnknown_80F4F1C, TRUE) + 1;
@ -252,7 +250,7 @@ void TransformStatusTarget(Entity * pokemon, Entity * target)
if (entityInfo->transformStatus.transformStatus == STATUS_TRANSFORMED)
TryDisplayDungeonLoggableMessage3(pokemon, target, *gUnknown_80FBF04);
else {
SetMessageArgument(gAvailablePokemonNames, target, 0);
SetMessageArgument(gAvailablePokemonNames[0], target, 0);
iVar5 = sub_803D870(auStack544, 0);
if (iVar5 == 0)
@ -282,7 +280,7 @@ void TransformStatusTarget(Entity * pokemon, Entity * target)
sub_806CF98(target);
nullsub_87(target);
sub_806CCB4(target, sub_806CEBC(target));
CopyCyanMonsterNametoBuffer(gUnknown_202DFE8, entityInfo->apparentID);
CopyCyanMonsterNametoBuffer(gAvailablePokemonNames[1], entityInfo->apparentID);
TryDisplayDungeonLoggableMessage3(pokemon, target, *gUnknown_80FBEC0);
EntityUpdateStatusSprites(target);
}
@ -303,7 +301,7 @@ void MobileStatusTarget(Entity * pokemon, Entity * target)
if (entityInfo->transformStatus.transformStatus == STATUS_TRANSFORMED) {
SendTransformEndMessage(pokemon,target);
}
SetMessageArgument(gAvailablePokemonNames,target,0);
SetMessageArgument(gAvailablePokemonNames[0],target,0);
if (entityInfo->transformStatus.transformStatus != STATUS_MOBILE) {
entityInfo->transformStatus.transformStatus = STATUS_MOBILE;
entityInfo->transformStatus.transformStatusTurns = CalculateStatusTurns(target,gUnknown_80F4F04, FALSE) + 1;
@ -332,7 +330,7 @@ void ExposeStatusTarget(Entity * pokemon, Entity * target, s16 param_3)
if ((EntityExists(target)) && (!HasSafeguardStatus(pokemon,target,TRUE))) {
entityInfo = target->info;
SetMessageArgument(gAvailablePokemonNames,target,0);
SetMessageArgument(gAvailablePokemonNames[0],target,0);
if (entityInfo->hitChanceStages[1] > 10) {
entityInfo->hitChanceStages[1] = 10;
flag = TRUE;
@ -388,7 +386,7 @@ void BlindTarget(Entity *pokemon, Entity *target)
if ((EntityExists(target)) && (!HasSafeguardStatus(pokemon, target, TRUE))) {
entityInfo = target->info;
SetMessageArgument(gAvailablePokemonNames,target,0);
SetMessageArgument(gAvailablePokemonNames[0],target,0);
if (entityInfo->eyesightStatus.eyesightStatus != STATUS_BLINKER) {
entityInfo->eyesightStatus.eyesightStatus = STATUS_BLINKER;
entityInfo->eyesightStatus.eyesightStatusTurns = CalculateStatusTurns(target,gUnknown_80F4F08, TRUE) + 1;
@ -415,7 +413,7 @@ void CrossEyeVisionTarget(Entity *pokemon, Entity *target)
if(!HasSafeguardStatus(pokemon, target, TRUE))
{
entityInfo = target->info;
SetMessageArgument(gAvailablePokemonNames,target,0);
SetMessageArgument(gAvailablePokemonNames[0],target,0);
if (entityInfo->eyesightStatus.eyesightStatus != STATUS_CROSS_EYED) {
sub_8041E1C(target);
TryDisplayDungeonLoggableMessage3(pokemon,target,*gUnknown_80FB834);
@ -441,7 +439,7 @@ void RestoreVisionTarget(Entity *pokemon, Entity *target)
if (EntityExists(target)) {
entityInfo = target->info;
SetMessageArgument(gAvailablePokemonNames,target,0);
SetMessageArgument(gAvailablePokemonNames[0],target,0);
if (entityInfo->eyesightStatus.eyesightStatus != STATUS_EYEDROPS) {
entityInfo->eyesightStatus.eyesightStatus = STATUS_EYEDROPS;
entityInfo->eyesightStatus.eyesightStatusTurns = CalculateStatusTurns(target,gUnknown_80F4F10, FALSE) + 1;
@ -509,7 +507,7 @@ void RaiseAtkStatTarget(Entity * pokemon, Entity *target, s32 increment)
EntityInfo *entityInfo;
if (EntityExists(target)) {
SetMessageArgument(gAvailablePokemonNames,target,0);
SetMessageArgument(gAvailablePokemonNames[0],target,0);
entityInfo = GetEntInfo(target);
oldStat = entityInfo->atk;
@ -539,7 +537,7 @@ void RaiseSpAtkStatTarget(Entity * pokemon, Entity *target, s32 increment)
EntityInfo *entityInfo;
if (EntityExists(target)) {
SetMessageArgument(gAvailablePokemonNames,target,0);
SetMessageArgument(gAvailablePokemonNames[0],target,0);
entityInfo = GetEntInfo(target);
oldStat = entityInfo->spAtk;
@ -569,7 +567,7 @@ void RaiseDefStatTarget(Entity * pokemon, Entity *target, s32 increment)
EntityInfo *entityInfo;
if (EntityExists(target)) {
SetMessageArgument(gAvailablePokemonNames,target,0);
SetMessageArgument(gAvailablePokemonNames[0],target,0);
entityInfo = GetEntInfo(target);
oldStat = entityInfo->def;
@ -599,7 +597,7 @@ void RaiseSpDefStatTarget(Entity * pokemon, Entity *target, s32 increment)
EntityInfo *entityInfo;
if (EntityExists(target)) {
SetMessageArgument(gAvailablePokemonNames,target,0);
SetMessageArgument(gAvailablePokemonNames[0],target,0);
entityInfo = GetEntInfo(target);
oldStat = entityInfo->spDef;
@ -626,7 +624,7 @@ void LongTossStatusTarget(Entity * pokemon, Entity * target)
EntityInfo *entityInfo;
entityInfo = target->info;
SetMessageArgument(gUnknown_202DFE8,target,0);
SetMessageArgument(gAvailablePokemonNames[1],target,0);
if (entityInfo->itemStatus.itemStatus != STATUS_LONG_TOSS) {
entityInfo->itemStatus.itemStatus = STATUS_LONG_TOSS;
sub_8041EA4(target);
@ -643,7 +641,7 @@ void PierceStatusTarget(Entity * pokemon, Entity * target)
EntityInfo *entityInfo;
entityInfo = target->info;
SetMessageArgument(gUnknown_202DFE8,target,0);
SetMessageArgument(gAvailablePokemonNames[1],target,0);
if (entityInfo->itemStatus.itemStatus != STATUS_PIERCE) {
entityInfo->itemStatus.itemStatus = STATUS_PIERCE;
sub_8041EB4(target);
@ -667,7 +665,7 @@ void SetChargeStatusTarget(Entity *pokemon, Entity *target, u8 newStatus, Move *
if (EntityExists(target)) {
entityInfo = target->info;
SetMessageArgument(gAvailablePokemonNames,target,0);
SetMessageArgument(gAvailablePokemonNames[0],target,0);
if ((entityInfo->charging.chargingStatus == newStatus) && (newStatus == STATUS_ENRAGED)) {
TryDisplayDungeonLoggableMessage3(pokemon,target,*gUnknown_80FC074);
}
@ -742,7 +740,7 @@ void CounterStatusTarget(Entity * pokemon, Entity * target, u8 newStatus)
if (EntityExists(target)) {
entityInfo = target->info;
SetMessageArgument(gAvailablePokemonNames,target,0);
SetMessageArgument(gAvailablePokemonNames[0],target,0);
if (entityInfo->protection.protectionStatus == newStatus) {
TryDisplayDungeonLoggableMessage3(pokemon,target,*gUnknown_80FB10C);
}
@ -764,7 +762,7 @@ void SafeguardStatusTarget(Entity * pokemon, Entity * target)
if (EntityExists(target)) {
entityInfo = target->info;
SetMessageArgument(gAvailablePokemonNames,target,0);
SetMessageArgument(gAvailablePokemonNames[0],target,0);
if (entityInfo->protection.protectionStatus != STATUS_SAFEGUARD) {
entityInfo->protection.protectionStatus = STATUS_SAFEGUARD;
entityInfo->protection.protectionStatusTurns = CalculateStatusTurns(target, gUnknown_80F4E88, FALSE) + 1;
@ -784,7 +782,7 @@ void MistStatusTarget(Entity * pokemon, Entity * target)
if (EntityExists(target)) {
entityInfo = target->info;
SetMessageArgument(gAvailablePokemonNames,target,0);
SetMessageArgument(gAvailablePokemonNames[0],target,0);
if (entityInfo->protection.protectionStatus != STATUS_MIST) {
entityInfo->protection.protectionStatus = STATUS_MIST;
entityInfo->protection.protectionStatusTurns = CalculateStatusTurns(target, gUnknown_80F4E8C, FALSE) + 1;
@ -804,7 +802,7 @@ void WishStatusTarget(Entity * pokemon, Entity * target)
if (EntityExists(target)) {
entityInfo = target->info;
SetMessageArgument(gAvailablePokemonNames,target,0);
SetMessageArgument(gAvailablePokemonNames[0],target,0);
if (entityInfo->protection.protectionStatus != STATUS_WISH) {
entityInfo->protection.protectionStatus = STATUS_WISH;
entityInfo->protection.protectionStatusTurns = CalculateStatusTurns(target, gUnknown_80F4EB4, FALSE) + 1;
@ -824,7 +822,7 @@ void MagicCoatStatusTarget(Entity * pokemon, Entity * target)
if (EntityExists(target)) {
entityInfo = target->info;
SetMessageArgument(gAvailablePokemonNames,target,0);
SetMessageArgument(gAvailablePokemonNames[0],target,0);
if (entityInfo->protection.protectionStatus != STATUS_MAGIC_COAT) {
entityInfo->protection.protectionStatus = STATUS_MAGIC_COAT;
entityInfo->protection.protectionStatusTurns = CalculateStatusTurns(target, gUnknown_80F4E90, FALSE) + 1;
@ -844,7 +842,7 @@ void LightScreenStatusTarget(Entity * pokemon, Entity * target)
if (EntityExists(target)) {
entityInfo = target->info;
SetMessageArgument(gAvailablePokemonNames,target,0);
SetMessageArgument(gAvailablePokemonNames[0],target,0);
if (entityInfo->protection.protectionStatus != STATUS_LIGHT_SCREEN) {
entityInfo->protection.protectionStatus = STATUS_LIGHT_SCREEN;
entityInfo->protection.protectionStatusTurns = CalculateStatusTurns(target, gUnknown_80F4E84, FALSE) + 1;
@ -864,7 +862,7 @@ void ReflectStatusTarget(Entity * pokemon, Entity * target)
if (EntityExists(target)) {
entityInfo = target->info;
SetMessageArgument(gAvailablePokemonNames,target,0);
SetMessageArgument(gAvailablePokemonNames[0],target,0);
if (entityInfo->protection.protectionStatus != STATUS_REFLECT) {
entityInfo->protection.protectionStatus = STATUS_REFLECT;
entityInfo->protection.protectionStatusTurns = CalculateStatusTurns(target, gUnknown_80F4E80, FALSE) + 1;
@ -888,11 +886,11 @@ void ProtectStatusTarget(Entity * pokemon, Entity * target)
if (entityInfo->protection.protectionStatus != STATUS_PROTECT) {
entityInfo->protection.protectionStatus = STATUS_PROTECT;
entityInfo->protection.protectionStatusTurns = CalculateStatusTurns(target, gUnknown_80F4ED4, FALSE) + 1;
SetMessageArgument(gAvailablePokemonNames,target,0);
SetMessageArgument(gAvailablePokemonNames[0],target,0);
TryDisplayDungeonLoggableMessage3(pokemon,target,*gUnknown_80FB9B0);
}
else {
SetMessageArgument(gAvailablePokemonNames,target,0);
SetMessageArgument(gAvailablePokemonNames[0],target,0);
TryDisplayDungeonLoggableMessage3(pokemon,target,*gUnknown_80FB9D8);
}
EntityUpdateStatusSprites(target);
@ -905,7 +903,7 @@ void MirrorCoatStatusTarget(Entity * pokemon, Entity * target)
if (EntityExists(target)) {
entityInfo = target->info;
SetMessageArgument(gAvailablePokemonNames,target,0);
SetMessageArgument(gAvailablePokemonNames[0],target,0);
if (entityInfo->protection.protectionStatus != STATUS_MIRROR_COAT) {
entityInfo->protection.protectionStatus = STATUS_MIRROR_COAT;
entityInfo->protection.protectionStatusTurns = CalculateStatusTurns(target, gUnknown_80F4EE8, FALSE) + 1;
@ -925,7 +923,7 @@ void EndureStatusTarget(Entity * pokemon, Entity * target)
if (EntityExists(target)) {
entityInfo = target->info;
SetMessageArgument(gAvailablePokemonNames,target,0);
SetMessageArgument(gAvailablePokemonNames[0],target,0);
if (entityInfo->protection.protectionStatus != STATUS_ENDURING) {
entityInfo->protection.protectionStatus = STATUS_ENDURING;
entityInfo->protection.protectionStatusTurns = CalculateStatusTurns(target, gUnknown_80F4EF8, FALSE) + 1;
@ -945,7 +943,7 @@ void MirrorMoveStatusTarget(Entity * pokemon, Entity * target)
if (EntityExists(target)) {
entityInfo = target->info;
SetMessageArgument(gAvailablePokemonNames,target,0);
SetMessageArgument(gAvailablePokemonNames[0],target,0);
if (entityInfo->protection.protectionStatus != STATUS_MIRROR_MOVE) {
entityInfo->protection.protectionStatus = STATUS_MIRROR_MOVE;
entityInfo->protection.protectionStatusTurns = CalculateStatusTurns(target, gUnknown_80F4F18, FALSE) + 1;
@ -970,7 +968,7 @@ void Conversion2StatusTarget(Entity * pokemon, Entity * target)
TryDisplayDungeonLoggableMessage3(pokemon,target,*gPtrForecastPreventsConversion2Message);
else
{
SetMessageArgument(gAvailablePokemonNames,target,0);
SetMessageArgument(gAvailablePokemonNames[0],target,0);
if (entityInfo->protection.protectionStatus != STATUS_CONVERSION2) {
entityInfo->protection.protectionStatus = STATUS_CONVERSION2;
entityInfo->protection.protectionStatusTurns = CalculateStatusTurns(target, gUnknown_80F4F20, FALSE) + 1;
@ -991,7 +989,7 @@ void VitalThrowStatusTarget(Entity * pokemon, Entity * target)
if (EntityExists(target)) {
entityInfo = target->info;
SetMessageArgument(gAvailablePokemonNames,target,0);
SetMessageArgument(gAvailablePokemonNames[0],target,0);
if (entityInfo->protection.protectionStatus != STATUS_VITAL_THROW) {
entityInfo->protection.protectionStatus = STATUS_VITAL_THROW;
entityInfo->protection.protectionStatusTurns = CalculateStatusTurns(target, gUnknown_80F4F24, FALSE) + 1;
@ -1044,7 +1042,7 @@ void sub_8079E34(Entity * pokemon, Entity * target, bool8 param_3)
else if (param_3 != 0) {
sub_80420C8(target);
}
SetMessageArgument(gAvailablePokemonNames,target,0);
SetMessageArgument(gAvailablePokemonNames[0],target,0);
if (statChanged) {
TryDisplayDungeonLoggableMessage3(pokemon,target,*gUnknown_80FBD18);
}
@ -1161,7 +1159,7 @@ void SendSleepEndMessage(Entity * pokemon, Entity * target, bool8 param_3, bool8
return;
}
entityInfo = target->info;
SetMessageArgument(gAvailablePokemonNames,target,0);
SetMessageArgument(gAvailablePokemonNames[0],target,0);
switch(entityInfo->sleep.sleep) {
case STATUS_NONE:
case 6:
@ -1211,7 +1209,7 @@ void SendNonVolatileEndMessage(Entity * pokemon, Entity * target)
return;
}
entityInfo = target->info;
SetMessageArgument(gAvailablePokemonNames,target,0);
SetMessageArgument(gAvailablePokemonNames[0],target,0);
switch(entityInfo->nonVolatile.nonVolatileStatus) {
case STATUS_NONE:
case 5:
@ -1242,7 +1240,7 @@ void SendImmobilizeEndMessage(Entity * pokemon, Entity *target)
return;
}
entityInfo = target->info;
SetMessageArgument(gAvailablePokemonNames,target,0);
SetMessageArgument(gAvailablePokemonNames[0],target,0);
switch(entityInfo->immobilize.immobilizeStatus) {
case STATUS_NONE:
case 8:
@ -1282,7 +1280,7 @@ void SendVolatileEndMessage(Entity * pokemon, Entity *target)
return;
}
entityInfo = target->info;
SetMessageArgument(gAvailablePokemonNames,target,0);
SetMessageArgument(gAvailablePokemonNames[0],target,0);
switch(entityInfo->volatileStatus.volatileStatus) {
case STATUS_NONE:
case 8:
@ -1322,7 +1320,7 @@ void SendProtectionEndMessage(Entity * pokemon, Entity *target)
return;
}
entityInfo = target->info;
SetMessageArgument(gAvailablePokemonNames,target,0);
SetMessageArgument(gAvailablePokemonNames[0],target,0);
switch(entityInfo->protection.protectionStatus) {
case STATUS_NONE:
case 0xF:
@ -1379,7 +1377,7 @@ void SendWaitingEndMessage(Entity * pokemon, Entity * target, u8 waitingStatus)
if (EntityExists(target)) {
entityInfo = target->info;
SetMessageArgument(gAvailablePokemonNames,target,0);
SetMessageArgument(gAvailablePokemonNames[0],target,0);
switch(entityInfo->waitingStruct.waitingStatus) {
case STATUS_NONE:
case 4:
@ -1402,7 +1400,7 @@ void SendWaitingEndMessage(Entity * pokemon, Entity * target, u8 waitingStatus)
sub_806CCB4(target,uVar3);
gDungeon->decoyActive = FALSE;
if (waitingStatus != STATUS_DECOY) {
SetMessageArgument(gAvailablePokemonNames,target,0);
SetMessageArgument(gAvailablePokemonNames[0],target,0);
TryDisplayDungeonLoggableMessage(target,*gUnknown_80FA9A0);
}
break;
@ -1418,7 +1416,7 @@ void SendLinkedEndMessage(Entity * pokemon, Entity * target)
if (EntityExists(target)) {
entityInfo = target->info;
SetMessageArgument(gAvailablePokemonNames,target,0);
SetMessageArgument(gAvailablePokemonNames[0],target,0);
switch(entityInfo->linked.linkedStatus)
{
case STATUS_NONE:
@ -1444,7 +1442,7 @@ void SendMoveEndMessage(Entity * pokemon, Entity * target)
return;
}
entityInfo = target->info;
SetMessageArgument(gAvailablePokemonNames,target,0);
SetMessageArgument(gAvailablePokemonNames[0],target,0);
switch(entityInfo->moveStatus.moveStatus) {
case STATUS_NONE:
case 5:
@ -1477,7 +1475,7 @@ void SendTransformEndMessage(Entity * pokemon, Entity *target)
return;
}
entityInfo = target->info;
SetMessageArgument(gAvailablePokemonNames,target,0);
SetMessageArgument(gAvailablePokemonNames[0],target,0);
switch(entityInfo->transformStatus.transformStatus) {
case STATUS_NONE:
case 4:
@ -1512,7 +1510,7 @@ void SendEyesightEndMessage(Entity * pokemon,Entity * target)
return;
}
entityInfo = target->info;
SetMessageArgument(gAvailablePokemonNames,target,0);
SetMessageArgument(gAvailablePokemonNames[0],target,0);
switch(entityInfo->eyesightStatus.eyesightStatus) {
case STATUS_NONE:
case 4:
@ -1544,7 +1542,7 @@ void SendMuzzledEndMessage(Entity * pokemon, Entity * target)
return;
}
entityInfo = target->info;
SetMessageArgument(gAvailablePokemonNames,target,0);
SetMessageArgument(gAvailablePokemonNames[0],target,0);
switch(entityInfo->muzzled.muzzled) {
case FALSE:
case 2:
@ -1594,7 +1592,7 @@ void SendThawedMessage(Entity *pokemon, Entity *target)
entityInfo->immobilize.immobilizeStatus = STATUS_NONE;
entityInfo->immobilize.immobilizeStatusTurns = 0;
entityInfo->immobilize.immobilizeStatusDamageCountdown = 0;
SetMessageArgument(gAvailablePokemonNames,target,0);
SetMessageArgument(gAvailablePokemonNames[0],target,0);
TryDisplayDungeonLoggableMessage3(pokemon,target,*gUnknown_80FA8BC); // $m0 thawed out!
EntityUpdateStatusSprites(target);
}

View File

@ -20,7 +20,6 @@
#include "move_util.h"
extern u32 gUnknown_202EDCC;
extern u8 gAvailablePokemonNames[];
extern s16 gUnknown_80F4F90;
extern u8 *gUnknown_80FCA10[];
@ -71,11 +70,11 @@ void sub_807CD9C(Entity *pokemon, Entity *target, u32 direction)
else
{
if (pokemon == target) {
SetMessageArgument(gAvailablePokemonNames,target,0);
SetMessageArgument(gAvailablePokemonNames[0],target,0);
TryDisplayDungeonLoggableMessage3(pokemon,target,*gUnknown_80FCA10); // {POKEMON_0} couldn't be knocked flying!
return;
}
SetMessageArgument(gAvailablePokemonNames,target,0);
SetMessageArgument(gAvailablePokemonNames[0],target,0);
if (HasAbility(target,ABILITY_SUCTION_CUPS)) {
TryDisplayDungeonLoggableMessage3(pokemon,target,*gUnknown_80FCBCC); // {POKEMON_0} is anchored! It can't be knocked flying!
return;
@ -227,7 +226,7 @@ void sub_807D148(Entity *pokemon, Entity *target, u32 param_3, Position *pos)
info = target->info;
flag = FALSE;
SetMessageArgument(gAvailablePokemonNames,target,0);
SetMessageArgument(gAvailablePokemonNames[0],target,0);
if (HasAbility(target,ABILITY_SUCTION_CUPS)) {
TryDisplayDungeonLoggableMessage3(pokemon,target,*gUnknown_80FCAE8);
return;

View File

@ -30,7 +30,6 @@ extern u8 *gUnknown_80F9C4C[];
extern u8 *gUnknown_80F9C70[];
extern u8 *gUnknown_80F9C8C[];
extern u8 *gUnknown_80F9CBC[];
extern u8 gAvailablePokemonNames[];
extern u8 *gUnknown_80FCAC0[];
void sub_807E1A0(Entity *pokemon,Entity *target,u8 moveType,s16 param_4,s32 param_5)
@ -75,12 +74,12 @@ void sub_807E254(Entity *pokemon,Entity *target)
if (HasAbility(pokemon, ABILITY_SUCTION_CUPS)) {
SetMessageArgument(gAvailablePokemonNames,pokemon,0);
SetMessageArgument(gAvailablePokemonNames[0],pokemon,0);
TryDisplayDungeonLoggableMessage3(pokemon,target,*gUnknown_80FCAC0); // $m0 is anchored! It won't switch places
}
else if(HasAbility(target, ABILITY_SUCTION_CUPS))
{
SetMessageArgument(gAvailablePokemonNames,target,0);
SetMessageArgument(gAvailablePokemonNames[0],target,0);
TryDisplayDungeonLoggableMessage3(pokemon,target,*gUnknown_80FCAC0); // $m0 is anchored! It won't switch places
}
else

View File

@ -1,13 +1,11 @@
#include "global.h"
#include "code_8084778.h"
#include "code_80130A8.h"
#include "code_80958E8.h"
#include "mailbox.h"
#include "pokemon_mid.h"
#include "structs/str_dungeon.h"
extern u8 gUnknown_202E088[];
extern const u8 gUnknown_8107224[];
void sub_8084778(void)
@ -15,12 +13,12 @@ void sub_8084778(void)
s32 i;
WonderMail *wm;
strcpy(gUnknown_202E088, gUnknown_8107224);
strcpy(gAvailablePokemonNames[3], gUnknown_8107224);
for (i = 0; i < MAX_ACCEPTED_JOBS; i++) {
wm = GetJobSlotInfo(i);
if (wm->mailType == MAIL_TYPE_TAKEN_JOB && gDungeon->dungeonLocation.id == wm->unk4.dungeon.id && wm->missionType == WONDER_MAIL_MISSION_TYPE_ESCORT_CLIENT) {
CopyCyanMonsterNametoBuffer(gUnknown_202E088, wm->targetSpecies);
CopyCyanMonsterNametoBuffer(gAvailablePokemonNames[3], wm->targetSpecies);
break;
}
}

View File

@ -15,9 +15,6 @@ struct unkStruct_8113080
u8 *text;
};
extern u8 gAvailablePokemonNames[];
extern s32 gFormatData_202DE30[2];
extern const u8 *gUnknown_811383C[];
extern const u8 *gUnknown_8113850[];
extern const u8 *gUnknown_8113868[];
@ -87,11 +84,11 @@ void sub_8094558(u32 param_1,u8 *param_2,UnkDungeonGlobal_unk1CE98_sub *param_3)
sub_80073B8(param_1);
PrintFormatStringOnWindow(0x10,0,param_2,param_1,0);
PrintYellowDungeonNametoBuffer(gAvailablePokemonNames, &param_3->dungeonLocation);
PrintYellowDungeonNametoBuffer(gAvailablePokemonNames[0], &param_3->dungeonLocation);
PrintFormatStringOnWindow(4,0x10,*gUnknown_8113850,param_1,0); // #+Place: $m0
y = 0x1A;
sub_80922B4(gAvailablePokemonNames, param_3->buffer1, POKEMON_NAME_LENGTH);
sub_80922B4(gAvailablePokemonNames + 0x50, param_3->buffer2, POKEMON_NAME_LENGTH);
sub_80922B4(gAvailablePokemonNames[0], param_3->buffer1, POKEMON_NAME_LENGTH);
sub_80922B4(gAvailablePokemonNames[1], param_3->buffer2, POKEMON_NAME_LENGTH);
if (sub_8094528(param_3->moveID) != 0) {
// $m1 was defeated by
xxx_format_string(*gUnknown_8113868,buffer,(u8*)((u32 **)&buffer + 50),0); // TODO: fix this hack

View File

@ -35,7 +35,6 @@
#include "targeting.h"
#include "tile_types.h"
extern char gAvailablePokemonNames[];
extern char *gPtrCouldntBeUsedMessage;
extern char *gPtrItsaMonsterHouseMessage;
@ -90,7 +89,7 @@ void RunMonsterAI(Entity *pokemon, u32 unused)
if (CheckVariousConditions(pokemon))
{
pokemonInfo->useHeldItem = FALSE;
SetMessageArgument(gAvailablePokemonNames, pokemon, 0);
SetMessageArgument(gAvailablePokemonNames[0], pokemon, 0);
TryDisplayDungeonLoggableMessage(pokemon, gPtrCouldntBeUsedMessage);
return;
}

View File

@ -45,8 +45,6 @@ extern const u8 *const gUnknown_80FC6A8[];
extern const u8 *const gUnknown_80FC714[];
extern const u8 *const gUnknown_80FC718[];
extern u8 gAvailablePokemonNames[];
EWRAM_DATA bool8 gCanAttackInDirection[NUM_DIRECTIONS] = {0};
EWRAM_DATA u8 gPotentialAttackTargetDirections[NUM_DIRECTIONS] = {0};
EWRAM_DATA s32 gPotentialAttackTargetWeights[NUM_DIRECTIONS] = {0};
@ -1020,20 +1018,20 @@ void HandleUseOrbAction(Entity *pokemon)
}
if (entityInfo->volatileStatus.volatileStatus == 1) {
SetMessageArgument(gAvailablePokemonNames, pokemon, 0);
SetMessageArgument(gAvailablePokemonNames[0], pokemon, 0);
TryDisplayDungeonLoggableMessage(pokemon, *gUnknown_80FC714);
r4 = FALSE;
r8 = FALSE;
}
else if (entityInfo->volatileStatus.volatileStatus == 7) {
SetMessageArgument(gAvailablePokemonNames, pokemon, 0);
SetMessageArgument(gAvailablePokemonNames[0], pokemon, 0);
TryDisplayDungeonLoggableMessage(pokemon, *gUnknown_80FC718);
r4 = FALSE;
r8 = FALSE;
}
else if (entityInfo->nonVolatile.nonVolatileStatus == 4)
{
SetMessageArgument(gAvailablePokemonNames, pokemon, 0);
SetMessageArgument(gAvailablePokemonNames[0], pokemon, 0);
TryDisplayDungeonLoggableMessage(pokemon, *gUnknown_80FC6A8);
r4 = FALSE;
r8 = FALSE;

View File

@ -32,7 +32,6 @@ extern u8 gUnknown_202F222;
extern u8 gUnknown_202F32C;
extern u8 gUnknown_202F32D;
extern u8 gUnknown_203B434;
extern u8 gAvailablePokemonNames[];
extern u8 *gUnknown_80FA5B4[];
extern u8 *gUnknown_80FE478[];
@ -283,7 +282,7 @@ bool8 sub_8072CF4(Entity *entity)
sub_80671A0(entity);
break;
}
SetMessageArgument(gAvailablePokemonNames,entity,0);
SetMessageArgument(gAvailablePokemonNames[0],entity,0);
TryDisplayDungeonLoggableMessage(entity,*gUnknown_80FE6D4);
break;
case ACTION_TALK_FIELD:
@ -311,7 +310,7 @@ bool8 sub_8072CF4(Entity *entity)
HandleThrowItemAIAction(entity);
break;
case ACTION_SECOND_THOUGHTS:
SetMessageArgument(gAvailablePokemonNames,entity,0);
SetMessageArgument(gAvailablePokemonNames[0],entity,0);
TryDisplayDungeonLoggableMessage(entity,*gUnknown_80FE478);
break;
default:

View File

@ -31,8 +31,6 @@
#include "trap.h"
extern u32 gUnknown_202EDC8;
extern u8 gUnknown_202E038[0x50];
extern u8 gAvailablePokemonNames[0x58];
extern const s16 gUnknown_80F57CA;
extern const s16 gUnknown_80F57CC;
@ -526,8 +524,8 @@ void sub_8086B14(void)
sub_8086A3C(skarmoryEntity);
diglettEntity->info->unk15C = 1;
sub_8085860(leaderEntity->pos.x,leaderEntity->pos.y - 2);
CopyMonsterNametoBuffer(gUnknown_202E038,MONSTER_DIGLETT);
CopyMonsterNametoBuffer(gUnknown_202E038 + 0x50, MONSTER_SKARMORY);
CopyMonsterNametoBuffer(gAvailablePokemonNames[2],MONSTER_DIGLETT);
CopyMonsterNametoBuffer(gAvailablePokemonNames[3], MONSTER_SKARMORY);
}
void sub_8086B94(void)
@ -670,9 +668,9 @@ void sub_8086E9C(void)
sub_80855E4(sub_8086A3C);
sub_808563C(sub_8086A3C);
sub_8085860(leaderEntity->pos.x,leaderEntity->pos.y - 3);
CopyMonsterNametoBuffer(gUnknown_202E038, MONSTER_METAPOD);
CopyMonsterNametoBuffer(gUnknown_202E038 + 0x50, MONSTER_GENGAR);
CopyMonsterNametoBuffer(gUnknown_202E038 + 0xA0, MONSTER_CATERPIE);
CopyMonsterNametoBuffer(gAvailablePokemonNames[2], MONSTER_METAPOD);
CopyMonsterNametoBuffer(gAvailablePokemonNames[3], MONSTER_GENGAR);
CopyMonsterNametoBuffer(gAvailablePokemonNames[4], MONSTER_CATERPIE);
}
void sub_8086F00(void)
@ -684,9 +682,9 @@ void sub_8086F00(void)
sub_8085930(DIRECTION_NORTH);
sub_80855E4(sub_8086A3C);
sub_8085860(leaderEntity->pos.x,leaderEntity->pos.y - 3);
CopyMonsterNametoBuffer(gUnknown_202E038, MONSTER_METAPOD);
CopyMonsterNametoBuffer(gUnknown_202E038 + 0x50, MONSTER_GENGAR);
CopyMonsterNametoBuffer(gUnknown_202E038 + 0xA0, MONSTER_CATERPIE);
CopyMonsterNametoBuffer(gAvailablePokemonNames[2], MONSTER_METAPOD);
CopyMonsterNametoBuffer(gAvailablePokemonNames[3], MONSTER_GENGAR);
CopyMonsterNametoBuffer(gAvailablePokemonNames[4], MONSTER_CATERPIE);
}
// From @jiangzhengwenjz:
@ -837,8 +835,8 @@ void sub_8087230(void)
SetFacingDirection(zapdosEntity, DIRECTION_SOUTH);
sub_8086A3C(zapdosEntity);
sub_8085860(leaderEntity->pos.x, leaderEntity->pos.y - 3);
CopyMonsterNametoBuffer(gUnknown_202E038, MONSTER_SHIFTRY);
CopyMonsterNametoBuffer(gUnknown_202E038 + 0x50, MONSTER_ZAPDOS);
CopyMonsterNametoBuffer(gAvailablePokemonNames[2], MONSTER_SHIFTRY);
CopyMonsterNametoBuffer(gAvailablePokemonNames[3], MONSTER_ZAPDOS);
}
void sub_808729C(void)
@ -860,8 +858,8 @@ void sub_808729C(void)
sub_8086A3C(zapdosEntity);
}
sub_8085860(leaderEntity->pos.x,leaderEntity->pos.y - 3);
CopyMonsterNametoBuffer(gUnknown_202E038, MONSTER_SHIFTRY);
CopyMonsterNametoBuffer(gUnknown_202E038 + 0x50, MONSTER_ZAPDOS);
CopyMonsterNametoBuffer(gAvailablePokemonNames[2], MONSTER_SHIFTRY);
CopyMonsterNametoBuffer(gAvailablePokemonNames[3], MONSTER_ZAPDOS);
}
void sub_8087334(u8 param_1, u8 param_2)
@ -1068,7 +1066,7 @@ void sub_80877E8(void)
SetFacingDirection(moltresEntity, DIRECTION_SOUTH);
sub_8086A3C(moltresEntity);
sub_8085860(leaderEntity->pos.x + -3,leaderEntity->pos.y + -2);
CopyMonsterNametoBuffer(gUnknown_202E038, MONSTER_MOLTRES);
CopyMonsterNametoBuffer(gAvailablePokemonNames[2], MONSTER_MOLTRES);
}
void sub_8087848(void)
@ -1097,7 +1095,7 @@ void sub_8087848(void)
XPos = GetCameraXPos();
YPos = GetCameraYPos();
sub_803F878(XPos, YPos + -0x1000);
CopyMonsterNametoBuffer(gUnknown_202E038,MONSTER_MOLTRES);
CopyMonsterNametoBuffer(gAvailablePokemonNames[2],MONSTER_MOLTRES);
}
void sub_80878F4(u8 param_1, u8 param_2)
@ -1477,7 +1475,7 @@ void sub_8087F54(void)
SetFacingDirection(articunoEntity, DIRECTION_SOUTH);
sub_8086A3C(articunoEntity);
sub_8085860(leaderEntity->pos.x,leaderEntity->pos.y + -3);
CopyMonsterNametoBuffer(gUnknown_202E038, MONSTER_ARTICUNO);
CopyMonsterNametoBuffer(gAvailablePokemonNames[2], MONSTER_ARTICUNO);
}
void sub_8087FB4(void)
@ -1491,7 +1489,7 @@ void sub_8087FB4(void)
sub_8085930(DIRECTION_NORTH);
SetFacingDirection(articunoEntity, DIRECTION_SOUTH);
sub_806CDD4(articunoEntity, 0xF, DIRECTION_SOUTH);
CopyMonsterNametoBuffer(gUnknown_202E038, MONSTER_ARTICUNO);
CopyMonsterNametoBuffer(gAvailablePokemonNames[2], MONSTER_ARTICUNO);
}
void sub_8087FF8(void)
@ -1514,7 +1512,7 @@ void sub_8087FF8(void)
sub_8086A3C(articunoEntity);
}
sub_8085860(leaderEntity->pos.x,leaderEntity->pos.y + -3);
CopyMonsterNametoBuffer(gUnknown_202E038, MONSTER_ARTICUNO);
CopyMonsterNametoBuffer(gAvailablePokemonNames[2], MONSTER_ARTICUNO);
}
void sub_8088088(u8 param_1, u8 param_2)
@ -1770,8 +1768,8 @@ void sub_808862C(void)
SetFacingDirection(groudonEntity, DIRECTION_SOUTH);
sub_8086A3C(groudonEntity);
sub_8085860(leaderEntity->pos.x,leaderEntity->pos.y -3);
CopyMonsterNametoBuffer(gUnknown_202E038, MONSTER_GROUDON);
CopyMonsterNametoBuffer(gUnknown_202E038 + 0x50, MONSTER_ALAKAZAM);
CopyMonsterNametoBuffer(gAvailablePokemonNames[2], MONSTER_GROUDON);
CopyMonsterNametoBuffer(gAvailablePokemonNames[3], MONSTER_ALAKAZAM);
}
void sub_80886C4(void)
@ -1798,8 +1796,8 @@ void sub_80886C4(void)
XPos = GetCameraXPos();
YPos = GetCameraYPos();
sub_803F878(XPos,YPos + -0x1000);
CopyMonsterNametoBuffer(gUnknown_202E038, MONSTER_GROUDON);
CopyMonsterNametoBuffer(gUnknown_202E038 + 0x50, MONSTER_ALAKAZAM);
CopyMonsterNametoBuffer(gAvailablePokemonNames[2], MONSTER_GROUDON);
CopyMonsterNametoBuffer(gAvailablePokemonNames[3], MONSTER_ALAKAZAM);
}
void sub_808875C(void)
@ -1825,8 +1823,8 @@ void sub_808875C(void)
sub_80861D4(groudonEntity,0xf,DIRECTION_SOUTH);
}
sub_8085860(leaderEntity->pos.x,leaderEntity->pos.y - 3);
CopyMonsterNametoBuffer(gUnknown_202E038, MONSTER_GROUDON);
CopyMonsterNametoBuffer(gUnknown_202E038 + 0x50, MONSTER_ALAKAZAM);
CopyMonsterNametoBuffer(gAvailablePokemonNames[2], MONSTER_GROUDON);
CopyMonsterNametoBuffer(gAvailablePokemonNames[3], MONSTER_ALAKAZAM);
}
void sub_8088818(u8 param_1, u8 param_2)
@ -2087,8 +2085,8 @@ void sub_8088DC0(void)
sub_8086A3C(alakazamEntity);
sub_806CDD4(alakazamEntity,0xe,DIRECTION_SOUTH);
sub_8085860(leaderEntity->pos.x,leaderEntity->pos.y - 3);
CopyMonsterNametoBuffer(gUnknown_202E038, MONSTER_GROUDON);
CopyMonsterNametoBuffer(gUnknown_202E038 + 0x50, MONSTER_ALAKAZAM);
CopyMonsterNametoBuffer(gAvailablePokemonNames[2], MONSTER_GROUDON);
CopyMonsterNametoBuffer(gAvailablePokemonNames[3], MONSTER_ALAKAZAM);
}
void sub_8088E5C(void)
@ -2108,8 +2106,8 @@ void sub_8088E5C(void)
sub_8068FE0(groudonEntity,0x21c,0);
sub_8068FE0(alakazamEntity,0x21c,0);
sub_8085860(leaderEntity->pos.x,leaderEntity->pos.y + -3);
CopyMonsterNametoBuffer(gUnknown_202E038, MONSTER_GROUDON);
CopyMonsterNametoBuffer(gUnknown_202E038 + 0x50, MONSTER_ALAKAZAM);
CopyMonsterNametoBuffer(gAvailablePokemonNames[2], MONSTER_GROUDON);
CopyMonsterNametoBuffer(gAvailablePokemonNames[3], MONSTER_ALAKAZAM);
}
void sub_8088EE8(void)
@ -2353,7 +2351,7 @@ void sub_80892C8(void)
SetFacingDirection(RayquazaEntity, DIRECTION_SOUTH);
sub_8086A3C(RayquazaEntity);
sub_8085860(leaderEntity->pos.x,leaderEntity->pos.y - 3);
CopyMonsterNametoBuffer(gUnknown_202E038,MONSTER_RAYQUAZA);
CopyMonsterNametoBuffer(gAvailablePokemonNames[2],MONSTER_RAYQUAZA);
}
void sub_8089328(void)
@ -2375,7 +2373,7 @@ void sub_8089328(void)
sub_8086A3C(rayquazaEntity);
}
sub_8085860(leaderEntity->pos.x,leaderEntity->pos.y - 3);
CopyMonsterNametoBuffer(gUnknown_202E038,MONSTER_RAYQUAZA);
CopyMonsterNametoBuffer(gAvailablePokemonNames[2],MONSTER_RAYQUAZA);
}
void sub_80893B4(u8 param_1, u8 param_2)
@ -2662,7 +2660,7 @@ void sub_8089914(void)
SetFacingDirection(MewtwoEntity, DIRECTION_SOUTH);
sub_8086A3C(MewtwoEntity);
sub_8085860(leaderEntity->pos.x,leaderEntity->pos.y - 3);
CopyMonsterNametoBuffer(gUnknown_202E038,MONSTER_MEWTWO);
CopyMonsterNametoBuffer(gAvailablePokemonNames[2],MONSTER_MEWTWO);
}
void sub_8089978(void)
@ -2686,7 +2684,7 @@ void sub_8089978(void)
sub_8086A3C(MewtwoEntity);
}
sub_8085860(leaderEntity->pos.x,leaderEntity->pos.y - 3);
CopyMonsterNametoBuffer(gUnknown_202E038,MONSTER_MEWTWO);
CopyMonsterNametoBuffer(gAvailablePokemonNames[2],MONSTER_MEWTWO);
}
void sub_8089A00(u8 param_1, u8 param_2)
@ -2811,7 +2809,7 @@ void sub_8089C44(void)
sub_8085930(DIRECTION_NORTH);
SetFacingDirection(EnteiEntity, DIRECTION_SOUTH);
sub_8085860(leaderEntity->pos.x,leaderEntity->pos.y);
CopyMonsterNametoBuffer(gUnknown_202E038, MONSTER_ENTEI);
CopyMonsterNametoBuffer(gAvailablePokemonNames[2], MONSTER_ENTEI);
}
@ -2832,7 +2830,7 @@ void sub_8089C90(void)
SetFacingDirection(EnteiEntity, DIRECTION_SOUTH);
}
sub_8085860(leaderEntity->pos.x,leaderEntity->pos.y);
CopyMonsterNametoBuffer(gUnknown_202E038, MONSTER_ENTEI);
CopyMonsterNametoBuffer(gAvailablePokemonNames[2], MONSTER_ENTEI);
}
void sub_8089CFC(u8 param_1, u8 param_2)
@ -2940,7 +2938,7 @@ void sub_8089EFC(void)
sub_8085930(DIRECTION_NORTH);
SetFacingDirection(RaikouEntity, DIRECTION_SOUTH);
sub_8085860(leaderEntity->pos.x,leaderEntity->pos.y);
CopyMonsterNametoBuffer(gUnknown_202E038, MONSTER_RAIKOU);
CopyMonsterNametoBuffer(gAvailablePokemonNames[2], MONSTER_RAIKOU);
}
@ -2956,7 +2954,7 @@ void sub_8089F44(void)
sub_8085930(DIRECTION_NORTH);
SetFacingDirection(RaikouEntity, DIRECTION_SOUTH);
sub_8085860(leaderEntity->pos.x,leaderEntity->pos.y);
CopyMonsterNametoBuffer(gUnknown_202E038, MONSTER_RAIKOU);
CopyMonsterNametoBuffer(gAvailablePokemonNames[2], MONSTER_RAIKOU);
}
@ -2977,7 +2975,7 @@ void sub_8089F8C(void)
SetFacingDirection(RaikouEntity, DIRECTION_SOUTH);
}
sub_8085860(leaderEntity->pos.x,leaderEntity->pos.y);
CopyMonsterNametoBuffer(gUnknown_202E038, MONSTER_RAIKOU);
CopyMonsterNametoBuffer(gAvailablePokemonNames[2], MONSTER_RAIKOU);
}
void sub_8089FF0(u8 param_1, u8 param_2)
@ -3097,7 +3095,7 @@ void sub_808A264(void)
SetFacingDirection(SuicuneEntity, DIRECTION_SOUTH);
sub_8086A3C(SuicuneEntity);
sub_8085860(leaderEntity->pos.x,leaderEntity->pos.y - 3);
CopyMonsterNametoBuffer(gUnknown_202E038, MONSTER_SUICUNE);
CopyMonsterNametoBuffer(gAvailablePokemonNames[2], MONSTER_SUICUNE);
}
void sub_808A2C0(void)
@ -3112,7 +3110,7 @@ void sub_808A2C0(void)
sub_8085930(DIRECTION_NORTH);
SetFacingDirection(SuicuneEntity, DIRECTION_SOUTH);
sub_8085860(leaderEntity->pos.x,leaderEntity->pos.y);
CopyMonsterNametoBuffer(gUnknown_202E038, MONSTER_SUICUNE);
CopyMonsterNametoBuffer(gAvailablePokemonNames[2], MONSTER_SUICUNE);
}
void sub_808A308(void)
@ -3132,7 +3130,7 @@ void sub_808A308(void)
SetFacingDirection(SuicuneEntity, DIRECTION_SOUTH);
}
sub_8085860(leaderEntity->pos.x,leaderEntity->pos.y);
CopyMonsterNametoBuffer(gUnknown_202E038, MONSTER_SUICUNE);
CopyMonsterNametoBuffer(gAvailablePokemonNames[2], MONSTER_SUICUNE);
}
void sub_808A36C(u8 param_1, u8 param_2)
@ -3273,7 +3271,7 @@ void sub_808A608(void)
SetFacingDirection(HoOhEntity, DIRECTION_SOUTH);
sub_8086A3C(HoOhEntity);
sub_8085860(leaderEntity->pos.x,leaderEntity->pos.y + -6);
CopyMonsterNametoBuffer(gUnknown_202E038, MONSTER_HO_OH);
CopyMonsterNametoBuffer(gAvailablePokemonNames[2], MONSTER_HO_OH);
}
void sub_808A668(void)
@ -3296,7 +3294,7 @@ void sub_808A668(void)
sub_8086A3C(HoOhEntity);
}
sub_8085860(leaderEntity->pos.x,leaderEntity->pos.y - 6);
CopyMonsterNametoBuffer(gUnknown_202E038, MONSTER_HO_OH);
CopyMonsterNametoBuffer(gAvailablePokemonNames[2], MONSTER_HO_OH);
}
void sub_808A6E8(u8 param_1, u8 param_2)
@ -3449,7 +3447,7 @@ void sub_808A9E4(void)
sub_80855E4(sub_8086A3C);
SetFacingDirection(LatiosEntity, DIRECTION_NORTH);
sub_8085860(leaderEntity->pos.x,leaderEntity->pos.y - 4);
CopyMonsterNametoBuffer(gUnknown_202E038, MONSTER_LATIOS);
CopyMonsterNametoBuffer(gAvailablePokemonNames[2], MONSTER_LATIOS);
}
void sub_808AA3C(void)
@ -3465,7 +3463,7 @@ void sub_808AA3C(void)
sub_80855E4(sub_8086A3C);
SetFacingDirection(LatiosEntity, DIRECTION_NORTH);
sub_8085860(leaderEntity->pos.x,leaderEntity->pos.y - 3);
CopyMonsterNametoBuffer(gUnknown_202E038, MONSTER_LATIOS);
CopyMonsterNametoBuffer(gAvailablePokemonNames[2], MONSTER_LATIOS);
}
void sub_808AA94(void)
@ -3481,7 +3479,7 @@ void sub_808AA94(void)
sub_80855E4(sub_8086A3C);
sub_8068FE0(LatiosEntity,0x21c,0);
sub_8085860(leaderEntity->pos.x,leaderEntity->pos.y - 3);
CopyMonsterNametoBuffer(gUnknown_202E038, MONSTER_LATIOS);
CopyMonsterNametoBuffer(gAvailablePokemonNames[2], MONSTER_LATIOS);
}
void sub_808AAF0(u8 param_1, u8 param_2)
@ -3595,7 +3593,7 @@ void sub_808ACC0(void)
sub_8098044(0x22);
sub_8098044(0x1d);
sub_80855E4(SetupRegiFacingDirection);
CopyMonsterNametoBuffer(gUnknown_202E038, MONSTER_REGIROCK);
CopyMonsterNametoBuffer(gAvailablePokemonNames[2], MONSTER_REGIROCK);
}
}
@ -3622,7 +3620,7 @@ void sub_808AD48(void)
sub_8098044(0x22);
sub_8098044(0x1d);
sub_80855E4(SetupRegiFacingDirection);
CopyMonsterNametoBuffer(gUnknown_202E038, MONSTER_REGICE);
CopyMonsterNametoBuffer(gAvailablePokemonNames[2], MONSTER_REGICE);
}
}
@ -3650,7 +3648,7 @@ void sub_808ADCC(void)
sub_8098044(0x22);
sub_8098044(0x1d);
sub_80855E4(SetupRegiFacingDirection);
CopyMonsterNametoBuffer(gUnknown_202E038, MONSTER_REGISTEEL);
CopyMonsterNametoBuffer(gAvailablePokemonNames[2], MONSTER_REGISTEEL);
}
}
@ -3730,7 +3728,7 @@ void sub_808AFB0(u8 param_1)
sub_8052D44(IDStack,leaderEntity,0);
if (!sub_8098100(0x22) && (param_1 == 0x2E) && (!sub_8098100(0x1d)) && (sub_80860A8(ITEM_ROCK_PART) != 0)) {
sub_8097FD0(0x1d);
SetMessageArgument(gAvailablePokemonNames,GetLeader(),0);
SetMessageArgument(gAvailablePokemonNames[0],GetLeader(),0);
// {POKEMON_0} obtained the Rock Part that Regirock was guarding
DisplayDungeonDialogue(&gRegirockPostFightDialogue_2);
sub_80421C0(0,0xd4);
@ -3748,7 +3746,7 @@ void sub_808B030(u8 param_1)
sub_8052D44(IDStack,leaderEntity,0);
if (!sub_8098100(0x22) && (param_1 == 0x2F) && (!sub_8098100(0x1d)) && (sub_80860A8(ITEM_ICE_PART) != 0)) {
sub_8097FD0(0x1d);
SetMessageArgument(gAvailablePokemonNames,GetLeader(),0);
SetMessageArgument(gAvailablePokemonNames[0],GetLeader(),0);
// {POKEMON_0} obtained the Ice Part that Regice was guarding
DisplayDungeonDialogue(&gRegicePostFightDialogue_2);
sub_80421C0(0,0xd4);
@ -3766,7 +3764,7 @@ void sub_808B0B0(u8 param_1)
sub_8052D44(IDStack,leaderEntity,0);
if (!sub_8098100(0x22) && (param_1 == 0x30) && (!sub_8098100(0x1d)) && (sub_80860A8(ITEM_STEEL_PART) != 0)) {
sub_8097FD0(0x1d);
SetMessageArgument(gAvailablePokemonNames, GetLeader(), 0);
SetMessageArgument(gAvailablePokemonNames[0], GetLeader(), 0);
// {POKEMON_0} obtained the Steel Part that Registeel was guarding
DisplayDungeonDialogue(&gRegisteelPostFightDialogue_2);
sub_80421C0(0,0xd4);
@ -3882,7 +3880,7 @@ void sub_808B2F4(void)
SetFacingDirection(jirachiEntity, DIRECTION_SOUTH);
sub_8086A3C(jirachiEntity);
sub_8085860(leaderEntity->pos.x,leaderEntity->pos.y - 3);
CopyMonsterNametoBuffer(gUnknown_202E038, MONSTER_JIRACHI);
CopyMonsterNametoBuffer(gAvailablePokemonNames[2], MONSTER_JIRACHI);
}
void sub_808B35C(void)
@ -3907,7 +3905,7 @@ void sub_808B35C(void)
}
sub_8085860(leaderEntity->pos.x,leaderEntity->pos.y - 3);
CopyMonsterNametoBuffer(gUnknown_202E038, MONSTER_JIRACHI);
CopyMonsterNametoBuffer(gAvailablePokemonNames[2], MONSTER_JIRACHI);
}
void sub_808B3E4(u8 param_1, u8 param_2, u8 param_3)
@ -3967,7 +3965,7 @@ void sub_808B50C(void)
Entity * jirachiEntity;
jirachiEntity = GetEntityFromClientType(0x1a);
CopyMonsterNametoBuffer(gUnknown_202E038, MONSTER_JIRACHI);
CopyMonsterNametoBuffer(gAvailablePokemonNames[2], MONSTER_JIRACHI);
sub_80855E4(sub_808BBA8);
sub_808BBA8(jirachiEntity);
sub_8041888(0);
@ -4008,7 +4006,7 @@ void JirachiWish(void)
Position pos3;
jirachiEntity = GetEntityFromClientType(0x1a);
CopyMonsterNametoBuffer(gUnknown_202E038, MONSTER_JIRACHI);
CopyMonsterNametoBuffer(gAvailablePokemonNames[2], MONSTER_JIRACHI);
sub_80855E4(sub_808BBA8);
sub_808BBA8(jirachiEntity);
sub_8041888(0);
@ -4119,7 +4117,7 @@ void JirachiWish(void)
UnlockFriendArea(friendArea);
PlaySoundEffect(0xd4);
leaderEntity = GetLeader();
SetMessageArgument(gAvailablePokemonNames,leaderEntity,0);
SetMessageArgument(gAvailablePokemonNames[0],leaderEntity,0);
WriteFriendAreaName(gFormatItems[0],friendArea,FALSE);
// Obtained the friend area!
DisplayDungeonDialogue(&gUnknown_8105B68);
@ -4386,7 +4384,7 @@ void sub_808BDEC(void)
SetFacingDirection(lugiaEntity, DIRECTION_SOUTH);
}
sub_8085860(leaderEntity->pos.x,leaderEntity->pos.y - 3);
CopyMonsterNametoBuffer(gUnknown_202E038, MONSTER_LUGIA);
CopyMonsterNametoBuffer(gAvailablePokemonNames[2], MONSTER_LUGIA);
}
void sub_808BE70(u8 param_1,u8 param_2,u8 param_3)
@ -4527,9 +4525,8 @@ void sub_808C10C(void)
XPos = GetCameraXPos();
YPos = GetCameraYPos();
sub_803F878(XPos,YPos + -0x1000);
CopyMonsterNametoBuffer(gUnknown_202E038,MONSTER_KYOGRE);
// TODO: gUnknown_202E088 doesn't match but gUnknown_202E038 + 0x50 does
CopyMonsterNametoBuffer(gUnknown_202E038 + 0x50, MONSTER_GROUDON);
CopyMonsterNametoBuffer(gAvailablePokemonNames[2],MONSTER_KYOGRE);
CopyMonsterNametoBuffer(gAvailablePokemonNames[3], MONSTER_GROUDON);
}
void sub_808C1A4(u8 param_1,u8 param_2,u8 param_3)
@ -4642,7 +4639,7 @@ void sub_808C3A0(void)
sub_808563C(SetupDeoxysFacingDirection);
}
sub_8085860(leaderEntity->pos.x,leaderEntity->pos.y - 3);
CopyMonsterNametoBuffer(gUnknown_202E038, MONSTER_DEOXYS_NORMAL);
CopyMonsterNametoBuffer(gAvailablePokemonNames[2], MONSTER_DEOXYS_NORMAL);
}
void sub_808C414(u8 param_1,u8 param_2,u8 param_3)
@ -4745,7 +4742,7 @@ void sub_808C5C0(void)
XPos = GetCameraXPos();
YPos = GetCameraYPos();
sub_803F878(XPos,YPos - 0x1000);
CopyMonsterNametoBuffer(gUnknown_202E038, MONSTER_CELEBI);
CopyMonsterNametoBuffer(gAvailablePokemonNames[2], MONSTER_CELEBI);
}
void nullsub_100(u8 r0, u8 r1, u8 r3)
@ -4947,7 +4944,7 @@ void sub_808C9C4(void)
sub_80855E4(sub_8086A3C);
SetFacingDirection(medichamEntity, DIRECTION_SOUTH);
sub_8085860(leaderEntity->pos.x, leaderEntity->pos.y - 3);
CopyMonsterNametoBuffer(gUnknown_202E038, MONSTER_MEDICHAM);
CopyMonsterNametoBuffer(gAvailablePokemonNames[2], MONSTER_MEDICHAM);
}
void MedichamRescueDialogue(void)
@ -5014,7 +5011,7 @@ void sub_808CB5C(void)
sub_8085930(DIRECTION_NORTH);
sub_8068FE0(medichamEntity, 0x21C, 0);
sub_8085860(leaderEntity->pos.x, leaderEntity->pos.y);
CopyMonsterNametoBuffer(gUnknown_202E038, MONSTER_MEDICHAM);
CopyMonsterNametoBuffer(gAvailablePokemonNames[2], MONSTER_MEDICHAM);
}
void DummyFightDialogue(void)
@ -5034,7 +5031,7 @@ void sub_808CBB0(void)
sub_80855E4(sub_8086A3C);
SetFacingDirection(smeargleEntity, DIRECTION_SOUTH);
sub_8085860(leaderEntity->pos.x, leaderEntity->pos.y - 3);
CopyMonsterNametoBuffer(gUnknown_202E038, MONSTER_SMEARGLE);
CopyMonsterNametoBuffer(gAvailablePokemonNames[2], MONSTER_SMEARGLE);
}
void SmeargleRescueDialogue(void)
@ -5105,7 +5102,7 @@ void sub_808CD44(void)
sub_80855E4(sub_8086A3C);
sub_8068FE0(smeargleEntity, 540, 0);
sub_8085860(leaderEntity->pos.x, leaderEntity->pos.y - 3);
CopyMonsterNametoBuffer(gUnknown_202E038, MONSTER_SMEARGLE);
CopyMonsterNametoBuffer(gAvailablePokemonNames[2], MONSTER_SMEARGLE);
}
void sub_808CD9C(void)

View File

@ -12,7 +12,6 @@
#include "pokemon.h"
#include "structs/str_dungeon.h"
extern u8 gAvailablePokemonNames[];
extern s32 gUnknown_810A3F0[];
extern u8 *gUnknown_80FA408[];
extern u8 *gUnknown_810531C[];
@ -150,7 +149,7 @@ void MusicBoxCreation(void)
sub_80416E0(&entity->pixelPos,0x10c,FALSE);
sub_80421C0(entity,0xd7);
sub_803E708(0x3c,0x41);
SetMessageArgument(gAvailablePokemonNames,entity,0);
SetMessageArgument(gAvailablePokemonNames[0],entity,0);
DisplayDungeonMessage(0,*gUnknown_81053A8,1);
sub_803E708(10,0x41);
PlaySoundEffect(0xd4);

View File

@ -50,9 +50,7 @@ extern u8 gUnknown_203B434;
extern void (*gUnknown_203B08C)(s32);
extern void (*gUnknown_203B084)(s32 a0);
extern void (*gUnknown_203B080)(s32 a0);
extern u8 gAvailablePokemonNames[];
extern u8 gUnknown_202E5D8[];
extern u8 gUnknown_202DFE8[];
extern UnkTextStruct1 gUnknown_2027370[4];
extern s32 gUnknown_202EDCC;
extern u8 gFontPalette[];
@ -435,24 +433,24 @@ void DisplayDungeonDialogue(const struct DungeonDialogueStruct *dialogueInfo)
EntityInfo *leaderInfo = GetEntInfo(leader);
PokemonStruct2 *monStruct2 = &gRecruitedPokemonRef->pokemon2[leaderInfo->teamIndex];
sub_808DA0C(gAvailablePokemonNames, monStruct2);
sub_808DA0C(gAvailablePokemonNames[0], monStruct2);
leaderId = leaderInfo->apparentID;
}
else {
leaderId = MONSTER_NONE;
strcpy(gAvailablePokemonNames, gUnknown_80F7AF8); // ??
strcpy(gAvailablePokemonNames[0], gUnknown_80F7AF8); // ??
}
if (partner != NULL) {
EntityInfo *partnerInfo = GetEntInfo(partner);
PokemonStruct2 *monStruct2 = &gRecruitedPokemonRef->pokemon2[partnerInfo->teamIndex];
sub_808DA0C(gUnknown_202DFE8, monStruct2);
sub_808DA0C(gAvailablePokemonNames[1], monStruct2);
partnerId = partnerInfo->apparentID;
}
else {
partnerId = MONSTER_NONE;
strcpy(gUnknown_202DFE8, gUnknown_80F7AF8); // ??
strcpy(gAvailablePokemonNames[1], gUnknown_80F7AF8); // ??
}
switch (dialogueInfo->unk4) {
@ -462,7 +460,7 @@ void DisplayDungeonDialogue(const struct DungeonDialogueStruct *dialogueInfo)
break;
case 426:
dialogueMonId = partnerId;
sprintfStatic(gUnknown_202E5D8, gUnknown_80F7AFC, gUnknown_202DFE8);
sprintfStatic(gUnknown_202E5D8, gUnknown_80F7AFC, gAvailablePokemonNames[1]);
break;
case 427:
dialogueMonId = MONSTER_NONE;
@ -624,20 +622,20 @@ s32 DisplayDungeonMenuMessage(struct MonDialogueSpriteInfo *monSpriteInfo, const
void sub_8052D44(s16 *ids, Entity *leader, Entity *partner)
{
if (EntityExists(leader)) {
SetMessageArgument(gAvailablePokemonNames, leader, 0);
SetMessageArgument(gAvailablePokemonNames[0], leader, 0);
ids[0] = GetEntInfo(leader)->apparentID;
}
else {
strcpy(gAvailablePokemonNames, gUnknown_80F7AF8);
strcpy(gAvailablePokemonNames[0], gUnknown_80F7AF8);
ids[0] = 0;
}
if (EntityExists(partner)) {
SetMessageArgument(gUnknown_202DFE8, partner, 0);
SetMessageArgument(gAvailablePokemonNames[1], partner, 0);
ids[1] = GetEntInfo(partner)->apparentID;
}
else {
strcpy(gUnknown_202DFE8, gUnknown_80F7AF8);
strcpy(gAvailablePokemonNames[1], gUnknown_80F7AF8);
ids[1] = 0;
}
}

View File

@ -368,8 +368,6 @@ extern const u8 *const gUnknown_80F93A4;
extern const u8 *const gUnknown_80F9384;
extern const u8 *const gUnknown_80F9380;
extern u8 gAvailablePokemonNames[];
extern u8 gUnknown_202DFE8[];
extern Entity *gUnknown_203B438;
EWRAM_DATA s32 gUnknown_202F208 = 0;
@ -554,7 +552,7 @@ static void UseMoveAgainstTargets(Entity **targetsArray, Entity *attacker, Move
s16 targetFlags = GetMoveTargetAndRangeForPokemon(attacker, move, FALSE);
s32 targetFlagsAnd = targetFlags & 0xF;
if ((targetFlagsAnd == 0 || targetFlagsAnd == 4 || targetFlagsAnd == 5 || targetFlagsAnd == 2) && !r4) {
SetMessageArgument(gUnknown_202DFE8, currTarget, 0);
SetMessageArgument(gAvailablePokemonNames[1], currTarget, 0);
TryDisplayDungeonLoggableMessage3(attacker, currTarget, gUnknown_80FC574); // protected itself!
moveHits = FALSE;
}
@ -567,7 +565,7 @@ static void UseMoveAgainstTargets(Entity **targetsArray, Entity *attacker, Move
if (moveHits) {
if (HasAbility(currTarget, ABILITY_SOUNDPROOF) && IsSoundMove(move)) {
SetMessageArgument(gUnknown_202DFE8, currTarget, 0);
SetMessageArgument(gAvailablePokemonNames[1], currTarget, 0);
TryDisplayDungeonLoggableMessage3(attacker, currTarget, gUnknown_8100524); // Soundproof suppressed the sound move!
moveHits = FALSE;
}
@ -598,7 +596,7 @@ static void UseMoveAgainstTargets(Entity **targetsArray, Entity *attacker, Move
else {
sub_80421C0(attacker, 0x157);
}
SetMessageArgument_2(gUnknown_202DFE8, GetEntInfo(currTarget), 0);
SetMessageArgument_2(gAvailablePokemonNames[1], GetEntInfo(currTarget), 0);
// Interesting that these 3 strings are the same. Curious if that's the case in Blue/Europe versions.
if (attacker == currTarget) {
TryDisplayDungeonLoggableMessage3(attacker, attacker, gUnknown_80F9380); // The move missed
@ -1701,7 +1699,7 @@ static s32 TryHitTarget(Entity *attacker, Entity *target, Move *move, struct Dam
HandleDealingDamage(attacker, target, dmgStruct, isFalseSwipe, TRUE, unk, TRUE, 0);
}
else {
SetMessageArgument_2(gUnknown_202DFE8, GetEntInfo(target), 0);
SetMessageArgument_2(gAvailablePokemonNames[1], GetEntInfo(target), 0);
if (sub_8045888(attacker) && sub_8045888(target)) {
sub_803ED30(9999, target, 1, -1);
TryDisplayDungeonLoggableMessage4(attacker, target, gUnknown_80F9688); // It took no damage!
@ -1808,17 +1806,17 @@ bool32 sub_8055A00(Entity *attacker, s32 firstMoveId, s32 var_34, s32 itemId, s3
attackerInfo->abilityEffectFlags = 0;
attackerInfo->unk159 = 0;
if (attackerInfo->volatileStatus.volatileStatus == STATUS_CRINGE) {
SetMessageArgument(gAvailablePokemonNames, attacker, 0);
SetMessageArgument(gAvailablePokemonNames[0], attacker, 0);
TryDisplayDungeonLoggableMessage(attacker, gUnknown_80FC714); // is cringing!
return FALSE;
}
else if (attackerInfo->volatileStatus.volatileStatus == STATUS_INFATUATED) {
SetMessageArgument(gAvailablePokemonNames, attacker, 0);
SetMessageArgument(gAvailablePokemonNames[0], attacker, 0);
TryDisplayDungeonLoggableMessage(attacker, gUnknown_80FC718); // is infatuated!
return FALSE;
}
else if (attackerInfo->nonVolatile.nonVolatileStatus == STATUS_PARALYSIS) {
SetMessageArgument(gAvailablePokemonNames, attacker, 0);
SetMessageArgument(gAvailablePokemonNames[0], attacker, 0);
TryDisplayDungeonLoggableMessage(attacker, gUnknown_80FC6A8); // is paralyzed!
return FALSE;
}
@ -2009,7 +2007,7 @@ static void TriggerTargetAbilityEffect(Entity *attacker)
InfatuateStatusTarget(attacker, attacker, TRUE);
}
if (entInfo->abilityEffectFlags & ABILITY_FLAG_STENCH) {
SetMessageArgument(gAvailablePokemonNames, attacker, 0);
SetMessageArgument(gAvailablePokemonNames[0], attacker, 0);
TryDisplayDungeonLoggableMessage(attacker, gUnknown_80FEFD0); // A horrid stench billowed out
sub_80428A0(attacker);
entInfo->terrifiedTurns = gUnknown_80F5004;
@ -2077,7 +2075,7 @@ bool8 TryUseChosenMove(struct Entity *attacker, u32 r6, s32 itemId, u32 var_30,
}
}
SetMessageArgument_2(gAvailablePokemonNames, GetEntInfo(attacker), 0);
SetMessageArgument_2(gAvailablePokemonNames[0], GetEntInfo(attacker), 0);
sub_80928C0(gFormatItems[0], move, NULL);
if (MoveMatchesChargingStatus(attacker, move)) {
msg = gUnknown_80FC72C; // mon loosed move
@ -2099,14 +2097,14 @@ bool8 TryUseChosenMove(struct Entity *attacker, u32 r6, s32 itemId, u32 var_30,
}
if (GetEntInfo(attacker)->muzzled.muzzled == TRUE && FailsWhileMuzzled(move->id)) {
SetMessageArgument(gAvailablePokemonNames, attacker, 0);
SetMessageArgument(gAvailablePokemonNames[0], attacker, 0);
TryDisplayDungeonLoggableMessage(attacker, msg);
sub_803E708(0xA, 0x3F);
TryDisplayDungeonLoggableMessage(attacker, gUnknown_80FC710); // is muzzled!
return FALSE;
}
else if (!moveUsable) {
SetMessageArgument_2(gAvailablePokemonNames, GetEntInfo(attacker), 0);
SetMessageArgument_2(gAvailablePokemonNames[0], GetEntInfo(attacker), 0);
if (itemId == 0) {
sub_80928C0(gFormatItems[0], move, NULL);
TryDisplayDungeonLoggableMessage(attacker, msg);
@ -2231,7 +2229,7 @@ bool8 sub_8056468(Entity *entity, Move *move, const u8 *str, Entity **unkArray,
}
if (r7) {
SetMessageArgument_2(gAvailablePokemonNames, GetEntInfo(entity), 0);
SetMessageArgument_2(gAvailablePokemonNames[0], GetEntInfo(entity), 0);
if (itemId == 0) {
sub_80928C0(gFormatItems[0], move, NULL);
}

View File

@ -19,7 +19,6 @@
const s16 gItemMasterMinWildLevel[] = {16};
extern u8 gAvailablePokemonNames[];
extern const u8 *gUnknown_80FC31C;
extern const u8 * gUnknown_80FCEFC;
extern const u8 * gUnknown_80FC2FC;
@ -29,7 +28,7 @@ bool8 HasSafeguardStatus(Entity * pokemon, Entity * target, bool8 displayMessage
{
if (target->info->protection.protectionStatus == STATUS_SAFEGUARD) {
if (displayMessage) {
SetMessageArgument(gAvailablePokemonNames,target,0);
SetMessageArgument(gAvailablePokemonNames[0],target,0);
TryDisplayDungeonLoggableMessage3(pokemon,target,gUnknown_80FC2FC);
}
return TRUE;
@ -41,7 +40,7 @@ bool8 sub_8071728(Entity * pokemon, Entity * target, bool8 displayMessage)
{
if (target->info->protection.protectionStatus == STATUS_MIST) {
if (displayMessage) {
SetMessageArgument(gAvailablePokemonNames, target, 0);
SetMessageArgument(gAvailablePokemonNames[0], target, 0);
TryDisplayDungeonLoggableMessage3(pokemon, target, gUnknown_80FC31C);
}
return TRUE;
@ -49,7 +48,7 @@ bool8 sub_8071728(Entity * pokemon, Entity * target, bool8 displayMessage)
else {
if (HasAbility(target, ABILITY_CLEAR_BODY) || HasAbility(target, ABILITY_WHITE_SMOKE)) {
if (displayMessage) {
SetMessageArgument(gAvailablePokemonNames, target, 0);
SetMessageArgument(gAvailablePokemonNames[0], target, 0);
TryDisplayDungeonLoggableMessage3(pokemon, target, gUnknown_80FCEFC);
}
return TRUE;

View File

@ -13,8 +13,6 @@
static EWRAM_DATA_2 FelicityBankWork *sFelicityBankWork = {0};
extern u32 gFormatData_202DE30;
extern u8 gUnknown_202E1C8[];
extern u8 gUnknown_202E5D8[];
#include "data/felicity_bank.h"
@ -62,9 +60,9 @@ bool8 CreateFelicityBank(s32 mode)
sFelicityBankWork->menuAction = 0;
sFelicityBankWork->mode = mode;
CopyYellowMonsterNametoBuffer(gUnknown_202E5D8, MONSTER_PERSIAN);
CopyYellowMonsterNametoBuffer(gUnknown_202E1C8, MONSTER_PERSIAN);
CopyYellowMonsterNametoBuffer(gAvailablePokemonNames[7], MONSTER_PERSIAN);
monName = GetMonSpecies(MONSTER_PERSIAN);
strcpy(gUnknown_202E1C8 - 80, monName);
strcpy(gAvailablePokemonNames[6], monName);
if (sFelicityBankWork->mode == FEL_MODE_ASLEEP)
sFelicityBankWork->monPortraitPtr = NULL;
@ -179,7 +177,7 @@ static void UpdateFelicityBankDialogue(void)
CreateMenuDialogueBoxAndPortrait(gCommonFelicity[sFelicityBankWork->mode][FEL_DLG_HOW_MAY_I_SERVE__NO_MONEY], 0, sFelicityBankWork->menuAction,
sFelicityBankWork->unk14, sFelicityBankWork->unk54, 4, 0, sFelicityBankWork->monPortraitPtr, 0xC);
else {
gFormatData_202DE30 = gTeamInventoryRef->teamSavings;
gFormatData_202DE30[0] = gTeamInventoryRef->teamSavings;
CreateMenuDialogueBoxAndPortrait(gCommonFelicity[sFelicityBankWork->mode][FEL_DLG_HOW_MAY_I_SERVE__HAS_MONEY], 0, sFelicityBankWork->menuAction,
sFelicityBankWork->unk14, sFelicityBankWork->unk54, 4, 0, sFelicityBankWork->monPortraitPtr, 0xC);
}
@ -193,7 +191,7 @@ static void UpdateFelicityBankDialogue(void)
if (gTeamInventoryRef->teamSavings == 0)
CreateDialogueBoxAndPortrait(gCommonFelicity[sFelicityBankWork->mode][FEL_DLG_BYE__NO_MONEY], 0, sFelicityBankWork->monPortraitPtr, 0x10D);
else {
gFormatData_202DE30 = gTeamInventoryRef->teamSavings;
gFormatData_202DE30[0] = gTeamInventoryRef->teamSavings;
CreateDialogueBoxAndPortrait(gCommonFelicity[sFelicityBankWork->mode][FEL_DLG_BYE__HAS_MONEY], 0, sFelicityBankWork->monPortraitPtr, 0x10D);
}
break;
@ -232,7 +230,7 @@ static void UpdateFelicityBankDialogue(void)
break;
case FELICITY_BANK_STORE_RECEIPT:
sFelicityBankWork->fallbackState = 1;
gFormatData_202DE30 = sFelicityBankWork->chosenAmount;
gFormatData_202DE30[0] = sFelicityBankWork->chosenAmount;
CreateDialogueBoxAndPortrait(gCommonFelicity[sFelicityBankWork->mode][FEL_DLG_DEPOSIT__RECEIPT], 0, sFelicityBankWork->monPortraitPtr, 0x10D);
break;
case FELICITY_BANK_TAKE:
@ -246,7 +244,7 @@ static void UpdateFelicityBankDialogue(void)
}
else {
sFelicityBankWork->fallbackState = FELICITY_BANK_TAKE_HOW_MUCH;
gFormatData_202DE30 = gTeamInventoryRef->teamSavings;
gFormatData_202DE30[0] = gTeamInventoryRef->teamSavings;
CreateDialogueBoxAndPortrait(gCommonFelicity[sFelicityBankWork->mode][FEL_DLG_WITHDRAW__HOW_MUCH], 0, sFelicityBankWork->monPortraitPtr, 0x10D);
}
break;
@ -270,7 +268,7 @@ static void UpdateFelicityBankDialogue(void)
break;
case FELICITY_BANK_TAKE_DEPOSIT:
sFelicityBankWork->fallbackState = 1;
gFormatData_202DE30 = sFelicityBankWork->chosenAmount;
gFormatData_202DE30[0] = sFelicityBankWork->chosenAmount;
CreateDialogueBoxAndPortrait(gCommonFelicity[sFelicityBankWork->mode][FEL_DLG_WITHDRAW__RECEIPT], 0, sFelicityBankWork->monPortraitPtr, 0x10D);
break;
}

View File

@ -26,8 +26,6 @@
#include "text1.h"
#include "text2.h"
extern u8 gAvailablePokemonNames[];
EWRAM_DATA_2 unkStruct_203B2B4 *gUnknown_203B2B4 = {0};
#include "data/friend_list_menu.h"
@ -201,8 +199,8 @@ void sub_8025518(void)
sub_8025E68(3,&gUnknown_203B2B4->item2);
}
sub_8023DA4();
PrintColoredPokeNameToBuffer(gAvailablePokemonNames,gUnknown_203B2B4->pokeStruct,7);
PrintColoredPokeNameToBuffer(gAvailablePokemonNames + 0x50,gUnknown_203B2B4->pokeStruct,6);
PrintColoredPokeNameToBuffer(gAvailablePokemonNames[0],gUnknown_203B2B4->pokeStruct,7);
PrintColoredPokeNameToBuffer(gAvailablePokemonNames[1],gUnknown_203B2B4->pokeStruct,6);
sub_8012D60(&gUnknown_203B2B4->unk78,gUnknown_203B2B4->unkC8,0,gUnknown_203B2B4->unk108,gUnknown_203B2B4->menuAction1,2);
break;
case FRIEND_LIST_MENU_STATE_SUMMARY:

View File

@ -31,7 +31,6 @@
extern void SetFriendRescueMenuState(u32);
extern char gUnknown_202E5D8[0x50];
extern char gAvailablePokemonNames[0x50];
extern TeamInventory *gTeamInventoryRef;
@ -327,7 +326,7 @@ u32 CreateFriendRescueMenu(void)
gUnknown_203B33C->speciesNum = -1;
CopyYellowMonsterNametoBuffer(gUnknown_202E5D8, MONSTER_PELIPPER);
monName = GetMonSpecies(MONSTER_PELIPPER);
strcpy(gAvailablePokemonNames,monName);
strcpy(gAvailablePokemonNames[0],monName);
for(counter = 0; counter < 0x36; counter++){
gUnknown_203B33C->passwordBuffer[counter] = 0;
}
@ -2918,7 +2917,7 @@ void sub_80352A4(void)
sub_802F2C0();
CopyYellowMonsterNametoBuffer(gUnknown_202E5D8, MONSTER_PELIPPER);
monName = GetMonSpecies(MONSTER_PELIPPER);
strcpy(gAvailablePokemonNames, monName);
strcpy(gAvailablePokemonNames[0], monName);
mailIndex = GetMailIndex(6, gUnknown_203B33C->unk420);
DeleteMailAtIndex(mailIndex);
SetFriendRescueMenuState(0x70);

View File

@ -14,8 +14,6 @@
#include "text1.h"
#include "text2.h"
extern u8 gAvailablePokemonNames[]; // 202DF98
static EWRAM_DATA_2 GulpinShopWork *sGulpinShopWork = {0};
#include "data/gulpin_shop.h"
@ -153,8 +151,8 @@ static void sub_801EA28(void)
break;
case 4:
sub_801EC7C();
sub_8092C84(gAvailablePokemonNames, sGulpinShopWork->unk1C);
sub_8092C84(&gAvailablePokemonNames[0x50], sGulpinShopWork->unk1E);
sub_8092C84(gAvailablePokemonNames[0], sGulpinShopWork->unk1C);
sub_8092C84(gAvailablePokemonNames[1], sGulpinShopWork->unk1E);
switch (sGulpinShopWork->mode) {
case GULPIN_SHOP_MODE_AWAKE:

View File

@ -22,10 +22,6 @@
EWRAM_DATA_2 unkStruct_203B27C *gUnknown_203B27C = {0};
extern u8 gAvailablePokemonNames[]; // 202DF98
extern u8 gUnknown_202DFE8[];
extern u8 gUnknown_202E128[];
extern u8 gUnknown_202E1C8[];
extern u8 gUnknown_202E5D8[];
#include "data/gulpin_shop_801FB50.h"
@ -93,10 +89,10 @@ bool8 sub_801FB50(u32 mode)
gUnknown_203B27C->mode = mode;
gUnknown_203B27C->unk15 = FALSE;
CopyYellowMonsterNametoBuffer(gUnknown_202E5D8, MONSTER_GULPIN);
CopyYellowMonsterNametoBuffer(gUnknown_202E1C8, MONSTER_GULPIN);
CopyYellowMonsterNametoBuffer(gAvailablePokemonNames[7], MONSTER_GULPIN);
name = GetMonSpecies(MONSTER_GULPIN);
strcpy(gUnknown_202E1C8 - 80, name);
PrintPokeNameToBuffer(gUnknown_202E1C8 - 0xF0, GetPlayerPokemonStruct());
strcpy(gAvailablePokemonNames[6], name);
PrintPokeNameToBuffer(gAvailablePokemonNames[4], GetPlayerPokemonStruct());
if (gUnknown_203B27C->mode == GULPIN_SHOP_MODE_ASLEEP)
gUnknown_203B27C->monPortraitPtr = NULL;
@ -353,7 +349,7 @@ static void sub_801FF28(void)
case 0x19:
sub_8094060(gUnknown_203B27C->moves,gUnknown_203B27C->pokeStruct->moves);
gUnknown_203B27C->fallbackState = 0x10;
sub_8092C84(gAvailablePokemonNames,gUnknown_203B27C->unk1E);
sub_8092C84(gAvailablePokemonNames[0],gUnknown_203B27C->unk1E);
CreateDialogueBoxAndPortrait(gCommonGulpin[gUnknown_203B27C->mode][GULPIN_DLG_10],0,gUnknown_203B27C->monPortraitPtr,0x10d);
break;
case 0x1a:
@ -401,7 +397,7 @@ static void sub_801FF28(void)
break;
case 0x22:
sub_80208B0();
sub_8092C84(gUnknown_202DFE8,gUnknown_203B27C->unk20);
sub_8092C84(gAvailablePokemonNames[1],gUnknown_203B27C->unk20);
if (gUnknown_203B27C->isNextMoveLinked) {
CreateMenuDialogueBoxAndPortrait(gCommonGulpin[gUnknown_203B27C->mode][GULPIN_DLG_18],0,0x11,gUnknown_203B27C->unk7C,gUnknown_203B27C->unkBC,4,0,
gUnknown_203B27C->monPortraitPtr,0xc);
@ -413,7 +409,7 @@ static void sub_801FF28(void)
break;
case 0x23:
gUnknown_203B27C->fallbackState = 0x1f;
sub_8092C84(gUnknown_202DFE8,gUnknown_203B27C->unk20);
sub_8092C84(gAvailablePokemonNames[1],gUnknown_203B27C->unk20);
if (gUnknown_203B27C->isNextMoveLinked)
{
CreateDialogueBoxAndPortrait(gCommonGulpin[gUnknown_203B27C->mode][GULPIN_DLG_20],0,gUnknown_203B27C->monPortraitPtr,0x10d);
@ -695,14 +691,14 @@ static void sub_8020A80(void)
gUnknown_203B27C->speciesNum = sub_8023B44();
gUnknown_203B27C->pokeStruct = &gRecruitedPokemonRef->pokemon[gUnknown_203B27C->speciesNum];
gUnknown_203B27C->isTeamLeader = gUnknown_203B27C->pokeStruct->isTeamLeader;
PrintPokeNameToBuffer(gUnknown_202E128, gUnknown_203B27C->pokeStruct);
PrintPokeNameToBuffer(gAvailablePokemonNames[5], gUnknown_203B27C->pokeStruct);
sub_801FDA8(0x11);
break;
case 4:
gUnknown_203B27C->speciesNum = sub_8023B44();
gUnknown_203B27C->pokeStruct = &gRecruitedPokemonRef->pokemon[gUnknown_203B27C->speciesNum];
gUnknown_203B27C->isTeamLeader = gUnknown_203B27C->pokeStruct->isTeamLeader;
PrintPokeNameToBuffer(gUnknown_202E128, gUnknown_203B27C->pokeStruct);
PrintPokeNameToBuffer(gAvailablePokemonNames[5], gUnknown_203B27C->pokeStruct);
sub_801FDA8(0x12);
break;
case 0:

View File

@ -12,8 +12,6 @@
#include "text1.h"
#include "text2.h"
extern u8 gAvailablePokemonNames[]; // 202DF98
static EWRAM_DATA_2 struct IQSkillInfoMenu *sIQSkillInfoMenu = {0};
#include "data/iq_skill_info_menu.h"
@ -97,7 +95,7 @@ static void sub_801C6E4(void)
CallPrepareTextbox_8008C54(sIQSkillInfoMenu->unk24);
sub_80073B8(sIQSkillInfoMenu->unk24);
preload = sIQSkillInfoMenu->unk10[sIQSkillInfoMenu->unk8];
strcpy(gAvailablePokemonNames, preload->pokeName);
strcpy(gAvailablePokemonNames[0], preload->pokeName);
PrintFormatStringOnWindow(16, 0, sFmtPkmn0, sIQSkillInfoMenu->unk24, 0); // {POKEMON_0}
PrintFormatStringOnWindow(4, 16, sIQSkillInfoMenu->unk10[sIQSkillInfoMenu->unk8]->unk4, sIQSkillInfoMenu->unk24, 0);
sub_80073E0(sIQSkillInfoMenu->unk24);

View File

@ -20,7 +20,6 @@ extern const char gUnknown_81097A4[];
extern s32 gPowersOfTen[];
extern u8 gHighDigits[];
extern u16 gGummiStatBoostLUT[];
extern u32 gFormatData_202DE30;
extern u8* gPtrTypeText; // ptr to "Type\0"
extern u8* gPtrPPD0Text; // ptr to "PP {VALUE_0} \0"
extern u32 gUnknown_81097E8[4]; // some sort of lookup table (16, 18, 20, 22)
@ -661,7 +660,7 @@ u32 sub_80913E0(Item* slot, u32 a2, struct subStruct_203B240 ** a3)
typestring = GetUnformattedTypeString(moves_data);
PrintFormatStringOnWindow(64, 84, typestring, a2, 0);
result = GetMoveBasePP(buffer8);
gFormatData_202DE30 = result;
gFormatData_202DE30[0] = result;
PrintFormatStringOnWindow(128, 84, gPtrPPD0Text, a2, 0);
}

View File

@ -14,7 +14,6 @@
#include "text1.h"
#include "text2.h"
extern u8 gUnknown_202E1C8[];
extern u8 gUnknown_202E5D8[];
EWRAM_DATA_2 struct KangaskhanStorageWork *gKangaskhanStorageWork = {0};
@ -57,9 +56,9 @@ bool8 CreateKangaskhanStorage(u32 mode)
gKangaskhanStorageWork->menuAction3 = 0;
gKangaskhanStorageWork->mode = mode;
CopyYellowMonsterNametoBuffer(gUnknown_202E5D8, MONSTER_KANGASKHAN);
CopyYellowMonsterNametoBuffer(gUnknown_202E1C8, MONSTER_KANGASKHAN);
CopyYellowMonsterNametoBuffer(gAvailablePokemonNames[7], MONSTER_KANGASKHAN);
monName = GetMonSpecies(MONSTER_KANGASKHAN);
strcpy(gUnknown_202E1C8 - 0x50, monName);
strcpy(gAvailablePokemonNames[6], monName);
if (gKangaskhanStorageWork->mode == KANG_MODE_ASLEEP)
gKangaskhanStorageWork->monPortraitPtr = NULL;

View File

@ -18,8 +18,6 @@
#include "text1.h"
#include "text2.h"
extern u32 gFormatData_202DE30;
extern u8 gUnknown_202E1C8[];
extern u8 gUnknown_202E5D8[];
static EWRAM_DATA_2 KecleonBrosWork1 *sKecleonBrosWork1 = {0};
@ -75,33 +73,33 @@ bool8 CreateKecleonBros(u32 mode)
sKecleonBrosWork1->isKecleonItemShop = TRUE;
sKecleonBrosWork1->monPortraitPtr = &sKecleonBrosWork1->monPortrait;
CopyYellowMonsterNametoBuffer(gUnknown_202E5D8, MONSTER_KECLEON);
CopyYellowMonsterNametoBuffer(gUnknown_202E1C8, MONSTER_KECLEON);
CopyYellowMonsterNametoBuffer(gAvailablePokemonNames[7], MONSTER_KECLEON);
monName = GetMonSpecies(MONSTER_KECLEON);
strcpy(gUnknown_202E1C8 - 0x50, monName);
strcpy(gAvailablePokemonNames[6], monName);
break;
case KECLEON_BROS_MODE_ITEMS_ASLEEP:
sKecleonBrosWork1->isKecleonItemShop = TRUE;
sKecleonBrosWork1->monPortraitPtr = NULL;
CopyYellowMonsterNametoBuffer(gUnknown_202E5D8, MONSTER_KECLEON);
CopyYellowMonsterNametoBuffer(gUnknown_202E1C8, MONSTER_KECLEON);
CopyYellowMonsterNametoBuffer(gAvailablePokemonNames[7], MONSTER_KECLEON);
monName = GetMonSpecies(MONSTER_KECLEON);
strcpy(gUnknown_202E1C8 - 0x50, monName);
strcpy(gAvailablePokemonNames[6], monName);
break;
case KECLEON_BROS_MODE_WARES_AWAKE:
sKecleonBrosWork1->isKecleonItemShop = FALSE;
sKecleonBrosWork1->monPortraitPtr = &sKecleonBrosWork1->monPortrait;
CopyYellowMonsterNametoBuffer(gUnknown_202E5D8, MONSTER_KECLEON);
CopyYellowMonsterNametoBuffer(gUnknown_202E1C8, MONSTER_KECLEON);
CopyYellowMonsterNametoBuffer(gAvailablePokemonNames[7], MONSTER_KECLEON);
monName = GetMonSpecies(MONSTER_KECLEON);
strcpy(gUnknown_202E1C8 - 0x50, monName);
strcpy(gAvailablePokemonNames[6], monName);
break;
case KECLEON_BROS_MODE_WARES_ASLEEP:
sKecleonBrosWork1->isKecleonItemShop = FALSE;
sKecleonBrosWork1->monPortraitPtr = NULL;
CopyYellowMonsterNametoBuffer(gUnknown_202E5D8, MONSTER_KECLEON);
CopyYellowMonsterNametoBuffer(gUnknown_202E1C8, MONSTER_KECLEON);
CopyYellowMonsterNametoBuffer(gAvailablePokemonNames[7], MONSTER_KECLEON);
monName = GetMonSpecies(MONSTER_KECLEON);
strcpy(gUnknown_202E1C8 - 0x50, monName);
strcpy(gAvailablePokemonNames[6], monName);
break;
default:
break;
@ -340,7 +338,7 @@ static void UpdateKecleonStoreDialogue(void)
case KECLEON_STORE_BUY_ITEM:
BuildKecleonBrosYesNoMenu();
sub_8090E14(gFormatItems[0], &sKecleonBrosWork1->soldItem, 0);
gFormatData_202DE30 = sKecleonBrosWork1->itemSellPrice;
gFormatData_202DE30[0] = sKecleonBrosWork1->itemSellPrice;
SetKecleonPortraitSpriteId(FALSE);
CreateMenuDialogueBoxAndPortrait(gCommonKecleonBros[sKecleonBrosWork1->mode][KECLEON_DLG_05], 0, 5,sKecleonBrosWork1->menuItems, NULL, 4, 0, sKecleonBrosWork1->monPortraitPtr, 12);
break;
@ -393,7 +391,7 @@ static void UpdateKecleonStoreDialogue(void)
case KECLEON_STORE_SELL_ITEM:
BuildKecleonBrosYesNoMenu();
sub_8090E14(gFormatItems[0], &sKecleonBrosWork1->soldItem, NULL);
gFormatData_202DE30 = sKecleonBrosWork1->itemSellPrice;
gFormatData_202DE30[0] = sKecleonBrosWork1->itemSellPrice;
SetKecleonPortraitSpriteId(FALSE);
CreateMenuDialogueBoxAndPortrait(gCommonKecleonBros[sKecleonBrosWork1->mode][KECLEON_DLG_09], 0, 5, sKecleonBrosWork1->menuItems, NULL, 4, 0, sKecleonBrosWork1->monPortraitPtr, 12);
break;
@ -414,7 +412,7 @@ static void UpdateKecleonStoreDialogue(void)
break;
case KECLEON_STORE_SELL_ALL_ITEMS:
BuildKecleonBrosYesNoMenu();
gFormatData_202DE30 = sKecleonBrosWork1->inventoryItemSellPrice;
gFormatData_202DE30[0] = sKecleonBrosWork1->inventoryItemSellPrice;
SetKecleonPortraitSpriteId(FALSE);
CreateMenuDialogueBoxAndPortrait(gCommonKecleonBros[sKecleonBrosWork1->mode][KECLEON_DLG_10], 0, 5, sKecleonBrosWork1->menuItems, NULL, 4, 0, sKecleonBrosWork1->monPortraitPtr, 12);
break;

View File

@ -61,7 +61,6 @@ enum LuminousCaveMenuActions
};
extern u8 gAvailablePokemonNames[]; // 202DF98
extern u8 gPlayerName[]; // 202E2B8
static EWRAM_DATA_2 LuminousCaveWork *sLuminousCaveWork = {0};
@ -313,9 +312,9 @@ static void UpdateLuminousCaveDialogue(void)
break;
case LUMINOUS_CAVE_EVOLVED:
monName = GetMonSpecies(sLuminousCaveWork->pokeStruct->speciesNum);
strcpy(gAvailablePokemonNames,monName);
strcpy(gAvailablePokemonNames[0],monName);
monName = GetMonSpecies(sLuminousCaveWork->evolveStatus.targetEvolveSpecies);
strcpy(gAvailablePokemonNames + 0x50,monName);
strcpy(gAvailablePokemonNames[1],monName);
sLuminousCaveWork->evolutionComplete = TRUE;
sub_80977D0();
sub_808F734(sLuminousCaveWork->pokeStruct,sLuminousCaveWork->evolveStatus.targetEvolveSpecies);

View File

@ -15,8 +15,6 @@
#include "text1.h"
#include "text2.h"
extern u8 gAvailablePokemonNames[]; // 202DF98
extern u8 gUnknown_202E1C8[];
extern u8 gPlayerName[]; // 202E2B8
extern u8 gUnknown_202E5D8[];
@ -95,9 +93,9 @@ bool8 MakuhitaDojo_New(u32 mode)
sMakuhitaDojoWork1->monPortraitPtr = &sMakuhitaDojoWork1->monPortrait;
CopyYellowMonsterNametoBuffer(gUnknown_202E5D8, MONSTER_MAKUHITA);
CopyYellowMonsterNametoBuffer(gUnknown_202E1C8, MONSTER_MAKUHITA);
CopyYellowMonsterNametoBuffer(gAvailablePokemonNames[7], MONSTER_MAKUHITA);
monName = GetMonSpecies(MONSTER_MAKUHITA);
strcpy(gUnknown_202E1C8 - 0x50, monName);
strcpy(gAvailablePokemonNames[6], monName);
faceFile = GetDialogueSpriteDataPtr(MONSTER_MAKUHITA);
sMakuhitaDojoWork1->monPortrait.faceFile = faceFile;
@ -202,7 +200,7 @@ static void MakuhitaDojo_UpdateDialogue(void)
sMakuhitaDojoWork1->fallbackState = 13;
dLoc.id = sub_80A2740(sMakuhitaDojoWork1->unk10);
dLoc.floor = 1;
PrintYellowDungeonNametoBuffer(gAvailablePokemonNames, &dLoc);
PrintYellowDungeonNametoBuffer(gAvailablePokemonNames[0], &dLoc);
CreateDialogueBoxAndPortrait(gCommonMakuhita[sMakuhitaDojoWork1->dlgMode][MAKUHITA_DLG_4], 0, sMakuhitaDojoWork1->monPortraitPtr, 0x10D);
break;
case 7:

View File

@ -29,11 +29,8 @@ struct unkStruct_203B310
EWRAM_DATA_2 struct unkStruct_203B310 *gUnknown_203B310 = {0};
extern u8 gUnknown_202E038[];
extern u8 gUnknown_202E628[];
extern u8 gUnknown_202E5D8[];
extern u8 gAvailablePokemonNames[];
extern u32 gFormatData_202DE30;
enum FriendRewardStates
{
@ -129,7 +126,7 @@ u32 sub_802F204(unkStruct_802F204 *r0, bool8 displayClientSprite)
// NOTE: dumb var to get correct ordering
preload = gUnknown_203B310;
strcpy(gUnknown_202E5D8, preload->unk10->clientName);
PrintPokeNameToBuffer(gAvailablePokemonNames, GetPlayerPokemonStruct());
PrintPokeNameToBuffer(gAvailablePokemonNames[0], GetPlayerPokemonStruct());
gUnknown_203B310->monPortrait.faceFile = GetDialogueSpriteDataPtr(gUnknown_203B310->unk10->clientSpecies);
gUnknown_203B310->monPortrait.faceData = NULL;
@ -215,7 +212,7 @@ void HandleMissionReward(void)
SetRewardSceneState(PREP_FRIEND_AREA_REWARD);
}
else {
gFormatData_202DE30 = moneyReward;
gFormatData_202DE30[0] = moneyReward;
if (gUnknown_203B310->displayClientDialogueSprite) {
CreateDialogueBoxAndPortrait(gUnknown_80E0434,0,&gUnknown_203B310->monPortrait,0x10d);
gUnknown_203B310->nextState = MONEY_REWARD;
@ -341,7 +338,7 @@ void HandleMissionReward(void)
else {
gUnknown_203B310->nextState = REWARD_EXIT;
}
gFormatData_202DE30 = gUnknown_203B310->unk10->teamRankPtsReward;
gFormatData_202DE30[0] = gUnknown_203B310->unk10->teamRankPtsReward;
CreateDialogueBoxAndPortrait(gUnknown_80E0670,0,0,0x101);
}
break;
@ -349,9 +346,9 @@ void HandleMissionReward(void)
PlaySound(0xc9);
gUnknown_203B310->nextState = REWARD_EXIT;
rankString = GetTeamRankString(gUnknown_203B310->currTeamRank);
strcpy(gUnknown_202E038,rankString);
strcpy(gAvailablePokemonNames[2],rankString);
rankString = GetTeamRankString(GetRescueTeamRank());
strcpy(gUnknown_202E038 + 0x50,rankString);
strcpy(gAvailablePokemonNames[3],rankString);
CreateDialogueBoxAndPortrait(gUnknown_80E06A8,0,0,0x101);
break;
case REWARD_EXIT:

View File

@ -33,9 +33,6 @@
#include "weather.h"
#include "called_move_data.h"
extern u8 gAvailablePokemonNames[];
extern u8 gUnknown_202DFE8[];
extern const u8 *const gUnknown_80FD350;
extern const u8 *const gUnknown_80FD370;
extern u8 *gUnknown_80FE3BC[];
@ -454,8 +451,8 @@ bool8 PainSplitMoveAction(Entity *attacker, Entity *target, Move *move, s32 para
if (targetInfo->HP > targetInfo->maxHPStat) {
targetInfo->HP = targetInfo->maxHPStat;
}
SetMessageArgument(gAvailablePokemonNames,attacker,0);
SetMessageArgument(gAvailablePokemonNames + 0x50,target,0);
SetMessageArgument(gAvailablePokemonNames[0],attacker,0);
SetMessageArgument(gAvailablePokemonNames[1],target,0);
SetExpMultplier(attackerInfo);
// $m0 and $m1 shared their HP
@ -627,7 +624,7 @@ bool8 sub_8057D9C(Entity * pokemon, Entity * target, Move *move, s32 param_4)
}
}
SetMessageArgument(gUnknown_202DFE8, target, 0);
SetMessageArgument(gAvailablePokemonNames[1], target, 0);
if (flag) {
TryDisplayDungeonLoggableMessage3(pokemon, target, gUnknown_80FD350);
}
@ -731,7 +728,7 @@ bool8 sub_8057FF4(Entity *pokemon, Entity *target, Move *move, s32 param_4)
if (flashFireStatus != FLASH_FIRE_STATUS_NONE) {
if (target->info->unk152 == 0) {
target->info->unk152 = 1;
SetMessageArgument(gUnknown_202DFE8,target,0);
SetMessageArgument(gAvailablePokemonNames[1],target,0);
if (flashFireStatus == FLASH_FIRE_STATUS_MAXED) {
TryDisplayDungeonLoggableMessage3(pokemon,target,*gUnknown_80FAE00); // Fire moves won't become stronger
}
@ -783,7 +780,7 @@ bool8 GrudgeMoveAction(Entity *pokemon, Entity * target, Move *move, s32 param_4
hasGrudge = FALSE;
entityInfo = target->info;
SetMessageArgument(gUnknown_202DFE8,target,0);
SetMessageArgument(gAvailablePokemonNames[1],target,0);
if (entityInfo->grudge) {
TryDisplayDungeonLoggableMessage3(pokemon,target,*gUnknown_80FD2B4);
}
@ -1410,7 +1407,7 @@ bool8 PsychUpMoveAction(Entity * pokemon, Entity * target, Move * move, u32 para
iVar4->offensiveMultipliers[index] = iVar3->offensiveMultipliers[index];
iVar4->defensiveMultipliers[index] = iVar3->defensiveMultipliers[index];
}
SetMessageArgument(gAvailablePokemonNames,target,0);
SetMessageArgument(gAvailablePokemonNames[0],target,0);
TryDisplayDungeonLoggableMessage3(pokemon,target,*gUnknown_80FBD58); // It psyched itself up!
SetExpMultplier(iVar4);
return TRUE;
@ -2173,7 +2170,7 @@ bool8 sub_8059E54(Entity * pokemon,Entity * target,Move * move,u32 param_4,u8 pa
movePower = GetMovePower(pokemon,move);
moveCritChance = GetMoveCritChance(move);
sub_806EAF4(pokemon,target,moveType,movePower,moveCritChance,local_30,0x100,move->id,0);
SetMessageArgument_2(gAvailablePokemonNames,pokemon->info,0);
SetMessageArgument_2(gAvailablePokemonNames[0],pokemon->info,0);
TryDisplayDungeonLoggableMessage3(pokemon,target,*gUnknown_80FC7C8);
local_30[0] = local_30[0] / 2;
if (local_30[0] == 0) {
@ -2223,7 +2220,7 @@ bool8 sub_8059FC8(Entity * pokemon,Entity * target,Move * move,u32 param_4,u8 pa
movePower = GetMovePower(pokemon,move);
moveCritChance = GetMoveCritChance(move);
sub_806EAF4(pokemon,target,moveType,movePower,moveCritChance,local_30,0x200,move->id,0);
SetMessageArgument_2(gAvailablePokemonNames,pokemon->info,0);
SetMessageArgument_2(gAvailablePokemonNames[0],pokemon->info,0);
TryDisplayDungeonLoggableMessage3(pokemon,target,*gUnknown_80FC7C8);
local_30[0] = local_30[0] / 2;
if (local_30[0] == 0) {
@ -2279,8 +2276,8 @@ bool8 sub_805A120(Entity * pokemon,Entity * target, Move *move, u32 param_4)
r8 = target->info;
sp = r8;
SetMessageArgument(gAvailablePokemonNames,pokemon,0);
SetMessageArgument(gAvailablePokemonNames + 0x50,target,0);
SetMessageArgument(gAvailablePokemonNames[0],pokemon,0);
SetMessageArgument(gAvailablePokemonNames[1],target,0);
if (HasAbility(target, ABILITY_STICKY_HOLD)) {
TryDisplayDungeonLoggableMessage3(pokemon,target,*gUnknown_80FCCE4);
return FALSE;
@ -2597,8 +2594,8 @@ bool8 KnockOffMoveAction(Entity *pokemon, Entity *target, Move *move, u32 param_
entityInfo = GetEntInfo(pokemon);
targetEntityInfo = GetEntInfo(target);
SetMessageArgument(gAvailablePokemonNames, pokemon, 0);
SetMessageArgument(gAvailablePokemonNames + 0x50, target, 0);
SetMessageArgument(gAvailablePokemonNames[0], pokemon, 0);
SetMessageArgument(gAvailablePokemonNames[1], target, 0);
if (HasAbility(target, ABILITY_STICKY_HOLD))
{
TryDisplayDungeonLoggableMessage3(pokemon,target,*gUnknown_80FCCE8);
@ -2775,7 +2772,7 @@ bool8 BellyDrumMoveAction(Entity * pokemon,Entity * target, Move *move, u32 para
flag = TRUE;
}
else {
SetMessageArgument(gAvailablePokemonNames,pokemon,0);
SetMessageArgument(gAvailablePokemonNames[0],pokemon,0);
TryDisplayDungeonLoggableMessage3(pokemon,target,*gUnknown_80FC5CC);
}
return flag;

View File

@ -36,7 +36,6 @@
#include "targeting.h"
#include "tile_types.h"
extern char gAvailablePokemonNames[];
extern u8 *gUnknown_80FB380[];
extern u8 *gUnknown_80FB384[];
extern u8 *gUnknown_80FB338[];
@ -227,7 +226,7 @@ void sub_8075C58(Entity * pokemon, Entity * target, s32 turns, u8 displayMessage
bool8 CannotSleep(Entity * pokemon, Entity * target, u8 param_3, bool8 displayMessage)
{
if ((!EntityExists(target)) ||
((SetMessageArgument(gAvailablePokemonNames,target,0), param_3 != 0 &&
((SetMessageArgument(gAvailablePokemonNames[0],target,0), param_3 != 0 &&
(HasSafeguardStatus(pokemon,target,displayMessage))))) {
return TRUE;
}
@ -376,7 +375,7 @@ void SleeplessStatusTarget(Entity * pokemon, Entity * target)
if ((entityInfo->sleep.sleep == STATUS_SLEEP) || (entityInfo->sleep.sleep == STATUS_NAPPING) || (entityInfo->sleep.sleep == STATUS_NIGHTMARE)) {
isAsleep = TRUE;
}
SetMessageArgument(gAvailablePokemonNames, target, 0);
SetMessageArgument(gAvailablePokemonNames[0], target, 0);
if (entityInfo->sleep.sleep != STATUS_SLEEPLESS)
{
@ -408,7 +407,7 @@ void PausedStatusTarget(Entity * pokemon, Entity * target, u8 param_3, s32 turns
if ((param_3 != 0) && (HasSafeguardStatus(pokemon,target,displayMessage))) {
return;
}
SetMessageArgument_2(gAvailablePokemonNames,entityInfo,0);
SetMessageArgument_2(gAvailablePokemonNames[0],entityInfo,0);
if (entityInfo->volatileStatus.volatileStatus != STATUS_PAUSED) {
entityInfo->volatileStatus.volatileStatus = STATUS_PAUSED;
entityInfo->volatileStatus.volatileStatusTurns = turns + 1;
@ -441,14 +440,14 @@ void InfatuateStatusTarget(Entity * pokemon, Entity * target, bool8 displayMessa
entityInfo = target->info;
if (!HasSafeguardStatus(pokemon,target,displayMessage)) {
if (HasAbility(target,ABILITY_OBLIVIOUS)) {
SetMessageArgument(gAvailablePokemonNames,target,0);
SetMessageArgument(gAvailablePokemonNames[0],target,0);
if (displayMessage) {
TryDisplayDungeonLoggableMessage3(pokemon,target,*gUnknown_80FCC4C);
}
}
else
{
SetMessageArgument_2(gAvailablePokemonNames,entityInfo,0);
SetMessageArgument_2(gAvailablePokemonNames[0],entityInfo,0);
if (entityInfo->volatileStatus.volatileStatus != STATUS_INFATUATED) {
entityInfo->volatileStatus.volatileStatus = STATUS_INFATUATED;
entityInfo->volatileStatus.volatileStatusTurns = CalculateStatusTurns(target,gUnknown_80F4F00,TRUE) + 1;
@ -480,7 +479,7 @@ void BurnedStatusTarget(Entity * pokemon, Entity * target, u8 param_3, bool8 dis
if (!HasSafeguardStatus(pokemon,target,displayMessage)) {
entityInfo = target->info;
SetMessageArgument_2(gAvailablePokemonNames,entityInfo,0);
SetMessageArgument_2(gAvailablePokemonNames[0],entityInfo,0);
if (HasAbility(target, ABILITY_WATER_VEIL)) {
if (displayMessage)
TryDisplayDungeonLoggableMessage3(pokemon,target,*gUnknown_80FCE5C);
@ -537,7 +536,7 @@ void BurnedStatusTarget(Entity * pokemon, Entity * target, u8 param_3, bool8 dis
if ((EntityExists(entity)) && (GetEntityType(entity) == ENTITY_MONSTER)) {
if (!hasSynchronized) {
hasSynchronized = TRUE;
SetMessageArgument_2(gAvailablePokemonNames,entityInfo,0);
SetMessageArgument_2(gAvailablePokemonNames[0],entityInfo,0);
TryDisplayDungeonLoggableMessage3(pokemon,target,*gUnknown_80FF01C);
}
if (sub_807167C(target,entity) == TREATMENT_TREAT_AS_ENEMY) {
@ -567,7 +566,7 @@ void PoisonedStatusTarget(Entity * pokemon, Entity * target, bool8 displayMessag
if (!HasSafeguardStatus(pokemon,target,displayMessage)) {
entityInfo = target->info;
SetMessageArgument_2(gAvailablePokemonNames,entityInfo,0);
SetMessageArgument_2(gAvailablePokemonNames[0],entityInfo,0);
if (HasHeldItem(target, ITEM_PECHA_SCARF)) {
if (displayMessage)
TryDisplayDungeonLoggableMessage3(pokemon,target,*gUnknown_80FD524);
@ -624,7 +623,7 @@ void PoisonedStatusTarget(Entity * pokemon, Entity * target, bool8 displayMessag
if ((EntityExists(entity)) && (GetEntityType(entity) == ENTITY_MONSTER)) {
if (!hasSynchronized) {
hasSynchronized = TRUE;
SetMessageArgument_2(gAvailablePokemonNames,entityInfo,0);
SetMessageArgument_2(gAvailablePokemonNames[0],entityInfo,0);
TryDisplayDungeonLoggableMessage3(pokemon,target,*gUnknown_80FF01C);
}
if (sub_807167C(target,entity) == TREATMENT_TREAT_AS_ENEMY) {
@ -656,7 +655,7 @@ void BadlyPoisonedStatusTarget(Entity * pokemon, Entity * target, bool8 displayM
if (!HasSafeguardStatus(pokemon,target,displayMessage)) {
entityInfo = target->info;
SetMessageArgument_2(gAvailablePokemonNames,entityInfo,0);
SetMessageArgument_2(gAvailablePokemonNames[0],entityInfo,0);
if (HasHeldItem(target, ITEM_PECHA_SCARF)) {
if (displayMessage)
TryDisplayDungeonLoggableMessage3(pokemon,target,*gUnknown_80FD524);
@ -706,7 +705,7 @@ void BadlyPoisonedStatusTarget(Entity * pokemon, Entity * target, bool8 displayM
if ((EntityExists(entity)) && (GetEntityType(entity) == ENTITY_MONSTER)) {
if (!hasSynchronized) {
hasSynchronized = TRUE;
SetMessageArgument_2(gAvailablePokemonNames,entityInfo,0);
SetMessageArgument_2(gAvailablePokemonNames[0],entityInfo,0);
TryDisplayDungeonLoggableMessage3(pokemon,target,*gUnknown_80FF01C);
}
if (sub_807167C(target,entity) == TREATMENT_TREAT_AS_ENEMY) {
@ -732,7 +731,7 @@ void FrozenStatusTarget(Entity * pokemon, Entity * target, bool8 displayMessage)
return;
}
SetMessageArgument(gAvailablePokemonNames, target, 0);
SetMessageArgument(gAvailablePokemonNames[0], target, 0);
entityInfo = target->info;
if ((entityInfo->immobilize.immobilizeStatus != STATUS_FROZEN) && !HasSafeguardStatus(pokemon,target,displayMessage)) {
@ -783,10 +782,10 @@ void SqueezedStatusTarget(Entity * pokemon, Entity * target, s16 param_3, bool32
sub_8076CB4(entityInfo->unk9C);
}
else if (entityInfo->immobilize.immobilizeStatus == STATUS_INGRAIN) {
SetMessageArgument(gAvailablePokemonNames,target,0);
SetMessageArgument(gAvailablePokemonNames[0],target,0);
TryDisplayDungeonLoggableMessage3(pokemon,target,*gUnknown_80FA844);
}
SetMessageArgument(gAvailablePokemonNames,target,0);
SetMessageArgument(gAvailablePokemonNames[0],target,0);
if (entityInfo->immobilize.immobilizeStatus != STATUS_CONSTRICTION) {
entityInfo->immobilize.immobilizeStatus = STATUS_CONSTRICTION;
entityInfo->immobilize.immobilizeStatusTurns = CalculateStatusTurns(target,gUnknown_80F4E58,TRUE) + 1;
@ -813,10 +812,10 @@ void ImmobilizedStatusTarget(Entity * pokemon, Entity * target)
sub_8076CB4(entityInfo->unk9C);
}
else if (entityInfo->immobilize.immobilizeStatus == STATUS_INGRAIN) {
SetMessageArgument(gAvailablePokemonNames,target,0);
SetMessageArgument(gAvailablePokemonNames[0],target,0);
TryDisplayDungeonLoggableMessage3(pokemon,target,*gUnknown_80FA844);
}
SetMessageArgument(gAvailablePokemonNames,target,0);
SetMessageArgument(gAvailablePokemonNames[0],target,0);
if (entityInfo->immobilize.immobilizeStatus != STATUS_SHADOW_HOLD) {
entityInfo->immobilize.immobilizeStatus = STATUS_SHADOW_HOLD;
entityInfo->immobilize.immobilizeStatusTurns = CalculateStatusTurns(target,gUnknown_80F4E54,TRUE) + 1;
@ -841,7 +840,7 @@ void IngrainedStatusTarget(Entity * pokemon, Entity * target)
if (entityInfo->immobilize.immobilizeStatus == STATUS_WRAP || entityInfo->immobilize.immobilizeStatus == STATUS_WRAPPED) {
sub_8076CB4(entityInfo->unk9C);
}
SetMessageArgument(gAvailablePokemonNames,target,0);
SetMessageArgument(gAvailablePokemonNames[0],target,0);
if (entityInfo->immobilize.immobilizeStatus != STATUS_INGRAIN) {
entityInfo->immobilize.immobilizeStatus = STATUS_INGRAIN;
entityInfo->immobilize.immobilizeStatusTurns = CalculateStatusTurns(target,gUnknown_80F4E60,TRUE) + 1;
@ -888,7 +887,7 @@ void WrapTarget(Entity * pokemon, Entity * target)
targetEntityInfo->unk9C = *piVar3;
*piVar3 +=1;
nullsub_69(pokemon, target);
SetMessageArgument(gAvailablePokemonNames,target,0);
SetMessageArgument(gAvailablePokemonNames[0],target,0);
TryDisplayDungeonLoggableMessage3(pokemon,target,*gUnknown_80FB6D8);
sub_806CE94(target,8);
goto _08076C98;
@ -896,19 +895,19 @@ void WrapTarget(Entity * pokemon, Entity * target)
}
}
if (pokemonEntityData->immobilize.immobilizeStatus == STATUS_WRAP) {
SetMessageArgument(gAvailablePokemonNames,pokemon,0);
SetMessageArgument(gAvailablePokemonNames[0],pokemon,0);
TryDisplayDungeonLoggableMessage3(pokemon,target,*gUnknown_80FB6FC);
}
if (targetEntityInfo->immobilize.immobilizeStatus == STATUS_WRAP) {
SetMessageArgument(gAvailablePokemonNames,target,0);
SetMessageArgument(gAvailablePokemonNames[0],target,0);
TryDisplayDungeonLoggableMessage3(pokemon,target,*gUnknown_80FB6FC);
}
if (pokemonEntityData->immobilize.immobilizeStatus == STATUS_WRAPPED) {
SetMessageArgument(gAvailablePokemonNames,pokemon,0);
SetMessageArgument(gAvailablePokemonNames[0],pokemon,0);
TryDisplayDungeonLoggableMessage3(pokemon,target,*gUnknown_80FB718);
}
if (targetEntityInfo->immobilize.immobilizeStatus == STATUS_WRAPPED) {
SetMessageArgument(gAvailablePokemonNames,target,0);
SetMessageArgument(gAvailablePokemonNames[0],target,0);
TryDisplayDungeonLoggableMessage3(pokemon,target,*gUnknown_80FB718);
}
_08076C98:
@ -950,7 +949,7 @@ void PetrifiedStatusTarget(Entity * pokemon, Entity * target)
if ((u8)(targetEntityInfo->immobilize.immobilizeStatus - 3U) < 2) {
sub_8076CB4(targetEntityInfo->unk9C);
}
SetMessageArgument(gAvailablePokemonNames,target,0);
SetMessageArgument(gAvailablePokemonNames[0],target,0);
if (targetEntityInfo->immobilize.immobilizeStatus != STATUS_PETRIFIED) {
targetEntityInfo->immobilize.immobilizeStatus = STATUS_PETRIFIED;
if (targetEntityInfo->isTeamLeader) {
@ -1004,19 +1003,19 @@ void LowerAttackStageTarget(Entity * pokemon, Entity * target, s32 index, s32 de
return;
}
if (HasHeldItem(target, ITEM_TWIST_BAND)) {
SetMessageArgument(gAvailablePokemonNames,target,0);
SetMessageArgument(gAvailablePokemonNames[0],target,0);
TryDisplayDungeonLoggableMessage3(pokemon,target,*gUnknown_80FD550);
}
else {
if ((!HasAbility(target, ABILITY_HYPER_CUTTER)) || (index != STAT_STAGE_ATK)) goto _08076EE4;
SetMessageArgument(gAvailablePokemonNames,target,0);
SetMessageArgument(gAvailablePokemonNames[0],target,0);
TryDisplayDungeonLoggableMessage3(pokemon,target,*gUnknown_80FCA60);
}
}
else {
_08076EE4:
entityInfo = target->info;
SetMessageArgument(gAvailablePokemonNames,target,0);
SetMessageArgument(gAvailablePokemonNames[0],target,0);
sub_8041F28(target,index);
if (decrement == 1) {
strcpy(gFormatItems[1],*gUnknown_80FC0E4);
@ -1056,7 +1055,7 @@ void LowerDefenseStageTarget(Entity * pokemon, Entity * target, s32 index, s32 d
}
if (!param_5 || !sub_8071728(pokemon,target,displayMessage)) {
entityInfo = target->info;
SetMessageArgument(gAvailablePokemonNames,target,0);
SetMessageArgument(gAvailablePokemonNames[0],target,0);
sub_8041F4C(target,index);
if (decrement == 1) {
strcpy(gFormatItems[1],*gUnknown_80FC0E4);
@ -1089,7 +1088,7 @@ void RaiseAttackStageTarget(Entity * pokemon, Entity * target, s32 index, s32 in
return;
}
entityInfo = target->info;
SetMessageArgument(gAvailablePokemonNames,target,0);
SetMessageArgument(gAvailablePokemonNames[0],target,0);
sub_8041F70(target,index);
if (index != STAT_STAGE_ATK) {
strcpy(gFormatItems[0],*gUnknown_80FC0C8);
@ -1129,7 +1128,7 @@ void RaiseDefenseStageTarget(Entity * pokemon, Entity * target, s32 index, s32 i
return;
}
entityInfo = target->info;
SetMessageArgument(gAvailablePokemonNames,target,0);
SetMessageArgument(gAvailablePokemonNames[0],target,0);
sub_8041F94(target,index);
if (index != STAT_STAGE_DEF) {
strcpy(gFormatItems[0],*gUnknown_80FC0AC);

View File

@ -14,10 +14,6 @@ static EWRAM_DATA OpenedFile *sWazaParametersFile = {0};
static EWRAM_DATA MoveDataEntry *sMovesData = {0};
static EWRAM_DATA MoveLearnset *sMoveLearnsets = {0}; // 420 entries, aka (MONSTER_DEOXYS_SPEED + 1), aka (MONSTER_MUNCHLAX)
// ???
extern u32 gFormatData_202DE30;
extern u8 gAvailablePokemonNames[]; // 202DF98
// data_8107010.s
extern const unkStruct_80928C0 gUnknown_81098C4;
extern const u8 gUnknown_81098D0[];
@ -1386,7 +1382,7 @@ s32 unk_PrintMoveDescription(s32 x, Move *move, s32 a3, struct subStruct_203B240
u8 buffer[800];
sub_80073B8(a3);
sub_80928C0(gAvailablePokemonNames, move, 0);
sub_80928C0(gAvailablePokemonNames[0], move, 0);
PrintFormatStringOnWindow(8 * x + 16, 0, gUnknown_8109930, a3, 0);
y = 19;
moveDescription = sMovesData[move->id].description;
@ -1410,14 +1406,14 @@ static void unk_MovePrintData(Move *move, s32 y)
const u8 *text;
sub_80078A4(y, 4, 72, 200, COLOR_WHITE_2);
sub_8092D54(gAvailablePokemonNames, move);
sub_8092D54(gAvailablePokemonNames[0], move);
PrintFormatStringOnWindow(4, 74, gUnknown_810CF00, y, 0);
PrintFormatStringOnWindow(4, 86, gPtrTypeText, y, 0);
type = GetMoveType(move);
text = GetUnformattedTypeString(type);
PrintFormatStringOnWindow(64, 86, text, y, 0);
power = GetMoveBasePower(move);
gFormatData_202DE30 = power;
gFormatData_202DE30[0] = power;
}
static void CopyAndResetMove(Move *dest, Move *src)

View File

@ -28,8 +28,6 @@
// TODO: Clean this
extern u8 gAvailablePokemonNames[]; // 202DF98
static EWRAM_DATA_2 unkStruct_203B2B8 *sUnknown_203B2B8 = {0};
#include "data/party_list_menu.h"
@ -202,15 +200,15 @@ void HandlePartyListMenuCallback(void)
case PARTY_LIST_STATE_MAIN_MENU:
sub_8026E08(3);
sub_8026DAC(0,&sUnknown_203B2B8->item2);
PrintColoredPokeNameToBuffer(gAvailablePokemonNames,sUnknown_203B2B8->pokeStruct,7);
PrintColoredPokeNameToBuffer(gAvailablePokemonNames + 0x50,sUnknown_203B2B8->pokeStruct,6);
PrintColoredPokeNameToBuffer(gAvailablePokemonNames[0],sUnknown_203B2B8->pokeStruct,7);
PrintColoredPokeNameToBuffer(gAvailablePokemonNames[1],sUnknown_203B2B8->pokeStruct,6);
sub_8012D60(&sUnknown_203B2B8->unk7C,sUnknown_203B2B8->unk16C,0,sUnknown_203B2B8->unk20C,sUnknown_203B2B8->menuAction1,2);
break;
case PARTY_LIST_STATE_MAIN_MENU_1:
sub_8026E08(3);
sub_8026DAC(0,&sUnknown_203B2B8->item2);
PrintColoredPokeNameToBuffer(gAvailablePokemonNames,sUnknown_203B2B8->pokeStruct,7);
PrintColoredPokeNameToBuffer(gAvailablePokemonNames + 0x50,sUnknown_203B2B8->pokeStruct,6);
PrintColoredPokeNameToBuffer(gAvailablePokemonNames[0],sUnknown_203B2B8->pokeStruct,7);
PrintColoredPokeNameToBuffer(gAvailablePokemonNames[1],sUnknown_203B2B8->pokeStruct,6);
sub_8012EA4(&sUnknown_203B2B8->unk7C,1);
break;
case PARTY_LIST_STATE_SUMMARY:
@ -794,9 +792,9 @@ void sub_8026E08(u32 r0)
CallPrepareTextbox_8008C54(r0);
sub_80073B8(r0);
sub_80922B4(gAvailablePokemonNames, sUnknown_203B2B8->pokeStruct->name, POKEMON_NAME_LENGTH);
sub_80922B4(gAvailablePokemonNames[0], sUnknown_203B2B8->pokeStruct->name, POKEMON_NAME_LENGTH);
sub_808D930(buffer, sUnknown_203B2B8->pokeStruct->speciesNum);
sprintfStatic(buffer1, sUnknown_80DD6E0, gAvailablePokemonNames);
sprintfStatic(buffer1, sUnknown_80DD6E0, gAvailablePokemonNames[0]);
x = sub_8008ED0(buffer1);
PrintStringOnWindow(((sUnknown_80DD370.unkC << 3) - x) / 2, 3, buffer1, r0, 0);
sub_80073E0(r0);

View File

@ -39,8 +39,6 @@ enum
PERSONALITY_TEST_END,
};
extern u8 gAvailablePokemonNames[]; // 202DF98
static EWRAM_DATA_2 struct PersonalityTestTracker *sPersonalityTestTracker = {0};
#include "data/personality_test1.h"
@ -377,7 +375,7 @@ static void PromptNewQuestion(void)
static void PrintPersonalityTypeDescription(void)
{
CopyMonsterNametoBuffer(gAvailablePokemonNames, sPersonalityTestTracker->StarterID);
CopyMonsterNametoBuffer(gAvailablePokemonNames[0], sPersonalityTestTracker->StarterID);
CreateDialogueBoxAndPortrait(sPersonalityTypeDescriptionTable[sPersonalityTestTracker->playerNature], 0, 0, 0x101);
}

View File

@ -12,8 +12,6 @@
#include "text1.h"
#include "text2.h"
extern u8 gAvailablePokemonNames[]; // 202DF98
static EWRAM_DATA_2 struct unkStruct_203B2D4 *sUnknown_203B2D4 = {0};
#include "data/pokemon_news2.h"
@ -145,12 +143,12 @@ static void sub_802BC08(void)
void sub_802BC7C(void)
{
PrintPokeNameToBuffer(gAvailablePokemonNames, sub_808D3BC());
PrintPokeNameToBuffer(gAvailablePokemonNames[0], sub_808D3BC());
if (gGameOptionsRef->playerGender == FEMALE)
strcpy(gAvailablePokemonNames + 80, sShe);
strcpy(gAvailablePokemonNames[1], sShe);
else
strcpy(gAvailablePokemonNames + 80, sHe);
strcpy(gAvailablePokemonNames[1], sHe);
}
static void sub_802BCC4(void)
@ -173,4 +171,4 @@ static void sub_802BCC4(void)
else
mailTextPtr++;
}
}
}

View File

@ -22,7 +22,6 @@ enum PostOfficeStates
RETURN_TO_GET_HELP,
};
extern u8 gAvailablePokemonNames[]; // 202DF98
extern u8 gUnknown_202E5D8[];
static EWRAM_DATA_2 PostOfficeWork *sPostOfficeHelper = {0};
@ -52,7 +51,7 @@ bool8 CreateHelperPelipperMenu(s16 speciesID)
sPostOfficeHelper = MemoryAlloc(sizeof(PostOfficeWork), 8);
CopyYellowMonsterNametoBuffer(gUnknown_202E5D8, species_32);
monName = GetMonSpecies(species_32);
strcpy(gAvailablePokemonNames, monName);
strcpy(gAvailablePokemonNames[0], monName);
sPostOfficeHelper->monPortrait.faceFile = NULL;
sPostOfficeHelper->monPortrait.faceData = NULL;

View File

@ -24,8 +24,6 @@
#include "structs/map.h"
#include "structs/str_dungeon.h"
extern u8 gAvailablePokemonNames[];
extern u8 *gUnknown_80FBD78[];
extern u8 *gUnknown_80FBD9C[];
extern u8 *gUnknown_80FBE40[];
@ -217,7 +215,7 @@ void UpdateFlashFireBoost(Entity * pokemon, Entity *target)
if (EntityExists(target)) {
entityInfo = target->info;
entityInfo_1 = entityInfo;
SetMessageArgument(gAvailablePokemonNames,target,0);
SetMessageArgument(gAvailablePokemonNames[0],target,0);
flashFireBoost = UpdateFlashFireBoost_sub(entityInfo);
if (entityInfo_1->flashFireBoost != flashFireBoost) {
entityInfo_1->flashFireBoost = flashFireBoost;
@ -247,21 +245,21 @@ void ChangeAttackMultiplierTarget(Entity *pokemon, Entity *target, u32 statStage
}
if ((HasHeldItem(target,ITEM_TWIST_BAND)) && (param_4 < 0x100)) {
SetMessageArgument(gAvailablePokemonNames,target,0);
SetMessageArgument(gAvailablePokemonNames[0],target,0);
TryDisplayDungeonLoggableMessage3(pokemon,target,*gUnknown_80FD550);
return;
}
if (HasAbility(target, ABILITY_HYPER_CUTTER) && (statStage == STAT_STAGE_ATK) && (param_4 < 0x100)) {
if (displayMessage) {
SetMessageArgument(gAvailablePokemonNames,target,0);
SetMessageArgument(gAvailablePokemonNames[0],target,0);
TryDisplayDungeonLoggableMessage3(pokemon,target,*gUnknown_80FCA60);
}
return;
}
entityInfo = target->info;
SetMessageArgument(gAvailablePokemonNames,target,0);
SetMessageArgument(gAvailablePokemonNames[0],target,0);
oldMulti = entityInfo->offensiveMultipliers[statStage];
if (param_4 < 0x100) {
@ -312,7 +310,7 @@ void ChangeDefenseMultiplierTarget(Entity *pokemon, Entity *target, u32 statStag
}
entityInfo = target->info;
SetMessageArgument(gAvailablePokemonNames,target,0);
SetMessageArgument(gAvailablePokemonNames[0],target,0);
oldMulti = entityInfo->defensiveMultipliers[statStage];
if (param_4 < 0x100) {
@ -349,7 +347,7 @@ void RaiseAccuracyStageTarget(Entity * pokemon, Entity * target, s32 statStage)
if (EntityExists(target)) {
entityInfo = target->info;
SetMessageArgument(gAvailablePokemonNames,target,0);
SetMessageArgument(gAvailablePokemonNames[0],target,0);
sub_8042040(target,statStage);
if (statStage != STAT_STAGE_ACCURACY) {
strcpy(gFormatItems[0],*gUnknown_80FC090);
@ -383,13 +381,13 @@ void LowerAccuracyStageTarget(Entity * pokemon, Entity * target, s32 statStage,
if (HasAbility(target, ABILITY_KEEN_EYE) && (statStage == STAT_STAGE_ACCURACY)){
if(displayMessage)
{
SetMessageArgument(gAvailablePokemonNames,target,0);
SetMessageArgument(gAvailablePokemonNames[0],target,0);
TryDisplayDungeonLoggableMessage3(pokemon,target,*gUnknown_80FCA64);
}
}
else {
entityInfo = target->info;
SetMessageArgument(gAvailablePokemonNames,target,0);
SetMessageArgument(gAvailablePokemonNames[0],target,0);
sub_8042060(target,statStage);
if (entityInfo->hitChanceStages[statStage] != 0) {
entityInfo->hitChanceStages[statStage]--;
@ -411,13 +409,13 @@ void CringeStatusTarget(Entity * pokemon,Entity * target, bool8 displayMessage)
if (EntityExists(target)) {
if (!HasSafeguardStatus(pokemon, target, displayMessage)) {
if (HasAbility(target, ABILITY_INNER_FOCUS)){
SetMessageArgument(gAvailablePokemonNames,target,0);
SetMessageArgument(gAvailablePokemonNames[0],target,0);
if(displayMessage)
TryDisplayDungeonLoggableMessage3(pokemon,target,*gUnknown_80FCC18);
}
else {
entityInfo = target->info;
SetMessageArgument(gAvailablePokemonNames,target,0);
SetMessageArgument(gAvailablePokemonNames[0],target,0);
if(entityInfo->volatileStatus.volatileStatus != STATUS_CRINGE)
{
entityInfo->volatileStatus.volatileStatus = STATUS_CRINGE;
@ -446,7 +444,7 @@ void ParalyzeStatusTarget(Entity * pokemon, Entity * target, bool8 displayMessag
if ((EntityExists(target)) && (!HasSafeguardStatus(pokemon,target,displayMessage))) {
if (HasAbility(target, ABILITY_LIMBER)) {
SetMessageArgument(gAvailablePokemonNames,target,0);
SetMessageArgument(gAvailablePokemonNames[0],target,0);
if (displayMessage) {
TryDisplayDungeonLoggableMessage3(pokemon,target,*gUnknown_80FCBF8);
}
@ -455,7 +453,7 @@ void ParalyzeStatusTarget(Entity * pokemon, Entity * target, bool8 displayMessag
{
bVar6 = TRUE;
entityInfo = target->info;
SetMessageArgument(gAvailablePokemonNames,target,0);
SetMessageArgument(gAvailablePokemonNames[0],target,0);
if (entityInfo->nonVolatile.nonVolatileStatus != STATUS_PARALYSIS) {
entityInfo->nonVolatile.nonVolatileStatus = STATUS_PARALYSIS;
entityInfo->nonVolatile.nonVolatileStatusTurns = CalculateStatusTurns(target,gUnknown_80F4E50,TRUE) + 1;
@ -479,7 +477,7 @@ void ParalyzeStatusTarget(Entity * pokemon, Entity * target, bool8 displayMessag
if ((EntityExists(mapPokemonEntity)) && (GetEntityType(mapPokemonEntity) == ENTITY_MONSTER)) {
if (!bVar7) {
bVar7 = TRUE;
SetMessageArgument_2(gAvailablePokemonNames,entityInfo,0);
SetMessageArgument_2(gAvailablePokemonNames[0],entityInfo,0);
TryDisplayDungeonLoggableMessage3(pokemon,target,*gUnknown_80FF01C);
}
if (sub_807167C(target,mapPokemonEntity) == 1) {
@ -507,7 +505,7 @@ void RaiseMovementSpeedTarget(Entity * pokemon, Entity * target, s32 turns, bool
turns = CalculateStatusTurns(target,gUnknown_80F4E40,FALSE) + 1;
}
entityInfo = target->info;
SetMessageArgument(gAvailablePokemonNames,target,0);
SetMessageArgument(gAvailablePokemonNames[0],target,0);
movSpeed = CalcSpeedStage(target);
if (movSpeed == MAX_SPEED_STAGE) {
if (displayMessage)
@ -552,7 +550,7 @@ void LowerMovementSpeedTarget(Entity * pokemon, Entity * target, s32 levels, boo
return;
}
entityInfo = target->info;
SetMessageArgument(gAvailablePokemonNames,target,0);
SetMessageArgument(gAvailablePokemonNames[0],target,0);
movSpeed = CalcSpeedStage(target);
if (movSpeed == 0) {
if (displayMessage)
@ -595,7 +593,7 @@ void ConfuseStatusTarget(Entity * pokemon, Entity * target, bool8 displayMessage
return;
}
SetMessageArgument(gAvailablePokemonNames,target,0);
SetMessageArgument(gAvailablePokemonNames[0],target,0);
if (HasHeldItem(target,ITEM_PERSIM_BAND)) {
if (displayMessage)
TryDisplayDungeonLoggableMessage3(pokemon,target,*gUnknown_80FD500);
@ -629,7 +627,7 @@ void CowerStatusTarget(Entity * pokemon, Entity * target, bool8 displayMessage)
if ((EntityExists(target)) && (!HasSafeguardStatus(pokemon,target,displayMessage))) {
entityInfo = target->info;
SetMessageArgument(gAvailablePokemonNames,target,0);
SetMessageArgument(gAvailablePokemonNames[0],target,0);
if (entityInfo->volatileStatus.volatileStatus != STATUS_COWERING) {
entityInfo->volatileStatus.volatileStatus = STATUS_COWERING;
entityInfo->volatileStatus.volatileStatusTurns = CalculateStatusTurns(target,gUnknown_80F4ECC,TRUE) + 1;
@ -686,7 +684,7 @@ void HealTargetHP(Entity *pokemon, Entity *target, s32 param_3, s32 param_4, boo
EntityUpdateStatusSprites(target);
gFormatData_202DE30[0] = HP;
gFormatData_202DE30[1] = maxHPStat;
SetMessageArgument(gAvailablePokemonNames,target,0);
SetMessageArgument(gAvailablePokemonNames[0],target,0);
if ((HP == 0) && (maxHPStat == 0)) {
if (displayMessage_u8)
TryDisplayDungeonLoggableMessage3(pokemon,target,*gUnknown_80FB204); // $m0's HP remained unchanged
@ -733,7 +731,7 @@ void HandleScannerOrb(Entity* pokemon, Entity* target)
{
target->info->scanning = TRUE;
nullsub_75(target);
SetMessageArgument(gAvailablePokemonNames, target, 0);
SetMessageArgument(gAvailablePokemonNames[0], target, 0);
TryDisplayDungeonLoggableMessage3(pokemon,target,*gUnknown_80FAEA0); // Item locations became evident
sub_803F580(0);
sub_8040A84();
@ -758,7 +756,7 @@ void HandleStairsOrb(Entity* pokemon, Entity* target)
{
target->info->stairSpotter = TRUE;
nullsub_76(target);
SetMessageArgument(gAvailablePokemonNames,target,0);
SetMessageArgument(gAvailablePokemonNames[0],target,0);
TryDisplayDungeonLoggableMessage3(pokemon,target,*gUnknown_80FAEC8);
sub_803F580(0);
sub_8040A84();
@ -778,7 +776,7 @@ void HandleRadarOrb(Entity* pokemon, Entity* target)
{
target->info->powerEars = TRUE;
nullsub_77(target);
SetMessageArgument(gAvailablePokemonNames,target,0);
SetMessageArgument(gAvailablePokemonNames[0],target,0);
TryDisplayDungeonLoggableMessage3(pokemon,target,*gUnknown_80FAFAC);
sub_803F580(0);
sub_8040A84();
@ -804,7 +802,7 @@ void HandleLeechSeed(Entity * pokemon, Entity * target, bool8 displayMessage)
if (HasSafeguardStatus(pokemon,target,displayMessage)) {
return;
}
SetMessageArgument(gAvailablePokemonNames,target,0);
SetMessageArgument(gAvailablePokemonNames[0],target,0);
if (MonsterIsType(target, TYPE_GRASS)) {
if (displayMessage)
TryDisplayDungeonLoggableMessage3(pokemon,target,*gPtrCantLeechSeedMonMessage);
@ -877,7 +875,7 @@ void DestinyBondStatusTarget(Entity * pokemon, Entity * target)
if (((EntityExists(target)) && (GetEntityType(pokemon) == ENTITY_MONSTER)) &&
(GetEntityType(target) == ENTITY_MONSTER)) {
entityInfo = pokemon->info;
SetMessageArgument(gAvailablePokemonNames,pokemon,0);
SetMessageArgument(gAvailablePokemonNames[0],pokemon,0);
linkedStatus = &entityInfo->linked.linkedStatus;
if (entityInfo->linked.linkedStatus != STATUS_DESTINY_BOND)
{
@ -914,7 +912,7 @@ void SureShotStatusTarget(Entity *pokemon, Entity * target, s32 turns)
if (EntityExists(target)) {
entityInfo = target->info;
SetMessageArgument(gAvailablePokemonNames,target,0);
SetMessageArgument(gAvailablePokemonNames[0],target,0);
if (entityInfo->moveStatus.moveStatus != STATUS_SURE_SHOT) {
entityInfo->moveStatus.moveStatus = STATUS_SURE_SHOT;
entityInfo->moveStatus.moveStatusTurns = turns + 1;
@ -934,7 +932,7 @@ void WhifferStatusTarget(Entity *pokemon, Entity * target, s32 turns)
if (EntityExists(target) && !HasSafeguardStatus(pokemon, target, TRUE)) {
entityInfo = target->info;
SetMessageArgument(gAvailablePokemonNames,target,0);
SetMessageArgument(gAvailablePokemonNames[0],target,0);
if (entityInfo->moveStatus.moveStatus != STATUS_WHIFFER) {
entityInfo->moveStatus.moveStatus = STATUS_WHIFFER;
entityInfo->moveStatus.moveStatusTurns = turns + 1;
@ -954,7 +952,7 @@ void FixedDamageStatusTarget(Entity *pokemon, Entity * target)
if (EntityExists(target)) {
entityInfo = target->info;
SetMessageArgument(gAvailablePokemonNames,target,0);
SetMessageArgument(gAvailablePokemonNames[0],target,0);
if (entityInfo->moveStatus.moveStatus != STATUS_SET_DAMAGE) {
entityInfo->moveStatus.moveStatus = STATUS_SET_DAMAGE;
entityInfo->moveStatus.moveStatusTurns = CalculateStatusTurns(target, gUnknown_80F4EC4, FALSE) + 1;
@ -974,7 +972,7 @@ void FocusEnergyStatusTarget(Entity *pokemon, Entity * target)
if (EntityExists(target)) {
entityInfo = target->info;
SetMessageArgument(gAvailablePokemonNames,target,0);
SetMessageArgument(gAvailablePokemonNames[0],target,0);
if (entityInfo->moveStatus.moveStatus != STATUS_FOCUS_ENERGY) {
entityInfo->moveStatus.moveStatus = STATUS_FOCUS_ENERGY;
entityInfo->moveStatus.moveStatusTurns = CalculateStatusTurns(target, gUnknown_80F4EC8, FALSE) + 1;
@ -999,7 +997,7 @@ void sub_80783C4(Entity * pokemon, Entity * target, u8 param_3)
if ((EntityExists(target)) && (!HasSafeguardStatus(pokemon, target, TRUE))) {
targetEntityInfo = target->info;
SetMessageArgument(gAvailablePokemonNames,target,0);
SetMessageArgument(gAvailablePokemonNames[0],target,0);
if (targetEntityInfo->waitingStruct.waitingStatus == STATUS_DECOY) {
TryDisplayDungeonLoggableMessage3(pokemon,target,*gUnknown_80FB994);
}
@ -1014,7 +1012,7 @@ void sub_80783C4(Entity * pokemon, Entity * target, u8 param_3)
}
}
sub_8041D38(target);
SetMessageArgument(gAvailablePokemonNames,target,0);
SetMessageArgument(gAvailablePokemonNames[0],target,0);
if (targetEntityInfo->waitingStruct.waitingStatus != STATUS_NONE) {
SendWaitingEndMessage(pokemon,target, STATUS_DECOY);
}
@ -1074,7 +1072,7 @@ void CurseStatusTarget(Entity *pokemon, Entity * target)
targetEntityInfo->waitingStruct.waitingStatusTurns = CalculateStatusTurns(target,gUnknown_80F4EA4,TRUE) + 1;
targetEntityInfo->waitingStruct.curseDamageCountdown = 0;
}
SetMessageArgument(gAvailablePokemonNames,target,0);
SetMessageArgument(gAvailablePokemonNames[0],target,0);
TryDisplayDungeonLoggableMessage3(pokemon,target,*gUnknown_80FB004);
}
else {
@ -1114,7 +1112,7 @@ void SnatchStatusTarget(Entity * pokemon, Entity * target)
gDungeon->snatchPokemon = target;
gDungeon->unk17B3C = targetEntityInfo->unk98;
SetMessageArgument(gAvailablePokemonNames,target,0);
SetMessageArgument(gAvailablePokemonNames[0],target,0);
TryDisplayDungeonLoggableMessage3(pokemon,target,*gUnknown_80FB01C);
EntityUpdateStatusSprites(target);
}
@ -1126,7 +1124,7 @@ void TauntStatusTarget(Entity * pokemon, Entity * target)
if ((EntityExists(target)) && (!HasSafeguardStatus(pokemon,target,TRUE))) {
entityInfo = target->info;
SetMessageArgument(gAvailablePokemonNames,target,0);
SetMessageArgument(gAvailablePokemonNames[0],target,0);
if (entityInfo->volatileStatus.volatileStatus != STATUS_TAUNTED) {
entityInfo->volatileStatus.volatileStatus = STATUS_TAUNTED;
entityInfo->volatileStatus.volatileStatusTurns = CalculateStatusTurns(target,gUnknown_80F4ED8,TRUE) + 1;
@ -1146,7 +1144,7 @@ void HandleStockpile(Entity * pokemon, Entity * target)
if ((EntityExists(target))) {
entityInfo = target->info;
SetMessageArgument(gAvailablePokemonNames,target,0);
SetMessageArgument(gAvailablePokemonNames[0],target,0);
if (entityInfo->stockpileStage < MAX_STOCKPILE_STAGE) {
entityInfo->stockpileStage++;
sub_804178C(1);
@ -1172,7 +1170,7 @@ void InvisibleStatusTarget(Entity * pokemon, Entity * target)
if (targetEntityInfo_1->transformStatus.transformStatus == STATUS_TRANSFORMED) {
SendTransformEndMessage(pokemon,target);
}
SetMessageArgument(gAvailablePokemonNames,target,0);
SetMessageArgument(gAvailablePokemonNames[0],target,0);
if (targetEntityInfo_1->transformStatus.transformStatus != STATUS_INVISIBLE) {
targetEntityInfo_1->transformStatus.transformStatus = STATUS_INVISIBLE;
targetEntityInfo_1->transformStatus.transformStatusTurns = CalculateStatusTurns(target,gUnknown_80F4EE4,FALSE) + 1;
@ -1193,7 +1191,7 @@ void PerishSongTarget(Entity * pokemon, Entity * target)
if (EntityExists(target) && !HasSafeguardStatus(pokemon, target, TRUE)) {
nullsub_82(target);
entityInfo = target->info;
SetMessageArgument(gAvailablePokemonNames,target,0);
SetMessageArgument(gAvailablePokemonNames[0],target,0);
if (entityInfo->perishSongTurns == 0) {
entityInfo->perishSongTurns = CalculateStatusTurns(target,gUnknown_80F4EEC,FALSE) + 1;
TryDisplayDungeonLoggableMessage3(pokemon,target,*gUnknown_80FBB04);
@ -1219,11 +1217,11 @@ void EncoreStatusTarget(Entity *pokemon,Entity *target)
if ((EntityInfo->moves.moves[index].moveFlags & MOVE_FLAG_EXISTS) && (movePtr->moveFlags & MOVE_FLAG_LAST_USED)) break;
}
if ((index == MAX_MON_MOVES) && ((EntityInfo->moves.struggleMoveFlags & MOVE_FLAG_LAST_USED) == 0)) {
SetMessageArgument(gAvailablePokemonNames,target,0);
SetMessageArgument(gAvailablePokemonNames[0],target,0);
TryDisplayDungeonLoggableMessage3(pokemon,target,*gUnknown_80FBBD4);
}
else {
SetMessageArgument(gAvailablePokemonNames,target,0);
SetMessageArgument(gAvailablePokemonNames[0],target,0);
if (EntityInfo->volatileStatus.volatileStatus != STATUS_ENCORE) {
EntityInfo->volatileStatus.volatileStatus = STATUS_ENCORE;
EntityInfo->volatileStatus.volatileStatusTurns = CalculateStatusTurns(target,gUnknown_80F4EF4,TRUE) + 1;
@ -1253,7 +1251,7 @@ void sub_8078A58(struct Entity *pokemon, struct Entity *target, s32 param_3, s32
bellyBefore = targetInfo->maxBelly;
targetInfo->maxBelly = FixedPoint_Subtract(bellyBefore, sp0);
targetInfo->belly = FixedPoint_Min(targetInfo->belly, targetInfo->maxBelly);
SetMessageArgument(gAvailablePokemonNames, target, 0);
SetMessageArgument(gAvailablePokemonNames[0], target, 0);
if (FixedPointToInt(bellyBefore) != FixedPointToInt(targetInfo->maxBelly)) {
sub_8041D9C(target);
@ -1267,7 +1265,7 @@ void sub_8078A58(struct Entity *pokemon, struct Entity *target, s32 param_3, s32
bellyBefore = targetInfo->belly;
targetInfo->belly = FixedPoint_Subtract(bellyBefore, sp8);
SetMessageArgument(gAvailablePokemonNames, target, 0);
SetMessageArgument(gAvailablePokemonNames[0], target, 0);
if (FixedPointToInt(bellyBefore) != FixedPointToInt(targetInfo->belly)) {
nullsub_84(target);
@ -1329,12 +1327,12 @@ void sub_8078B5C(Entity *pokemon, Entity *target, u32 bellyIncrement, s32 maxBel
TryDisplayDungeonLoggableMessage3(pokemon,target,*gUnknown_80FBE64); // $m0's belly filled up full!
}
if (FixedPointToInt(sp_0x20) == FixedPointToInt(targetInfo->maxBelly)) {
SetMessageArgument(gAvailablePokemonNames,target,0);
SetMessageArgument(gAvailablePokemonNames[0],target,0);
if (displayMessage) TryDisplayDungeonLoggableMessage3(pokemon,target,*gUnknown_80FBDF0); // $m0's belly won't get any bigger!
}
else {
sub_8041DB0(target);
SetMessageArgument(gAvailablePokemonNames,target,0);
SetMessageArgument(gAvailablePokemonNames[0],target,0);
if (displayMessage) TryDisplayDungeonLoggableMessage3(pokemon,target,*gUnknown_80FBDC4); // m0's max belly size increased!
}
}
@ -1351,7 +1349,7 @@ void sub_8078B5C(Entity *pokemon, Entity *target, u32 bellyIncrement, s32 maxBel
*bellyPtr = *puVar8;
}
nullsub_85(target);
SetMessageArgument(gAvailablePokemonNames,target,0);
SetMessageArgument(gAvailablePokemonNames[0],target,0);
if (FixedPointToInt(oldBelly) == FixedPointToInt(*bellyPtr)) {
if (displayMessage) TryDisplayDungeonLoggableMessage3(pokemon,target,*gUnknown_80FBE14); // $m0's belly didn't change!
}

View File

@ -100,10 +100,8 @@ extern u8 *gUnknown_80FAFF0[];
extern u32 gUnknown_80F4F58;
extern u32 gUnknown_8106A4C;
extern s16 gUnknown_80F4E74[];
extern u8 gAvailablePokemonNames[];
extern u8 *gUnknown_80FD450[];
extern u8 *gUnknown_80FD434[];
extern u8 gUnknown_202DFE8[];
extern s16 gUnknown_80F4F80;
extern u8 *gUnknown_80FF678[];
extern u8 *gUnknown_80FD0B8[];
@ -228,7 +226,7 @@ bool8 HandleColorChange(Entity * pokemon, Entity * target)
entityInfo->types[0] = newType;
entityInfo->types[1] = TYPE_NONE;
entityInfo->isColorChanged = TRUE;
SetMessageArgument(gUnknown_202DFE8,target,0);
SetMessageArgument(gAvailablePokemonNames[1],target,0);
typeString = GetUnformattedTypeString(newType);
strcpy(gFormatItems[0], typeString);
TryDisplayDungeonLoggableMessage3(pokemon,target,*gUnknown_80FEB08);
@ -441,7 +439,7 @@ bool8 MimicMoveAction(Entity * pokemon, Entity * target, Move *move, s32 param_4
}
}
}
SetMessageArgument(gAvailablePokemonNames,pokemon,0);
SetMessageArgument(gAvailablePokemonNames[0],pokemon,0);
if (moveCounter != 0) {
SetExpMultplier(entityInfo);
TryDisplayDungeonLoggableMessage3(pokemon,target,*gUnknown_80FDCE4);
@ -699,8 +697,8 @@ bool8 sub_805BA50(Entity * pokemon, Entity * target, Move *move, s32 param_4)
iVar3 = pokemon->info;
iVar5 = target->info;
iVar6 = target->info;
SetMessageArgument(gAvailablePokemonNames, pokemon, 0);
SetMessageArgument(gAvailablePokemonNames + 0x50, target, 0);
SetMessageArgument(gAvailablePokemonNames[0], pokemon, 0);
SetMessageArgument(gAvailablePokemonNames[1], target, 0);
if (HasAbility(target, ABILITY_STICKY_HOLD)) {
return TRUE;
}
@ -860,7 +858,7 @@ bool8 TransferOrbAction(Entity *pokemon, Entity * target, Move *move, s32 param_
entityInfo = target->info;
targetID = entityInfo->id;
oldID = entityInfo->id;
SetMessageArgument(gAvailablePokemonNames,target,0);
SetMessageArgument(gAvailablePokemonNames[0],target,0);
if (entityInfo->clientType != CLIENT_TYPE_NONE) {
TryDisplayDungeonLoggableMessage3(pokemon,target,*gUnknown_80FD450);
return FALSE;
@ -877,7 +875,7 @@ bool8 TransferOrbAction(Entity *pokemon, Entity * target, Move *move, s32 param_
TryDisplayDungeonLoggableMessage3(pokemon,target,*gUnknown_80FD450);
}
else {
CopyCyanMonsterNametoBuffer(gUnknown_202DFE8, targetID);
CopyCyanMonsterNametoBuffer(gAvailablePokemonNames[1], targetID);
TryDisplayDungeonLoggableMessage3(pokemon,target,*gUnknown_80FD434);
sub_806BB6C(target, targetID);
didTransfer = TRUE;
@ -885,7 +883,7 @@ bool8 TransferOrbAction(Entity *pokemon, Entity * target, Move *move, s32 param_
}
}
else {
SetMessageArgument(gAvailablePokemonNames,target,0);
SetMessageArgument(gAvailablePokemonNames[0],target,0);
TryDisplayDungeonLoggableMessage3(pokemon,target,*gUnknown_80FD450);
}
return didTransfer;
@ -923,7 +921,7 @@ bool8 sub_805BEC8(Entity * pokemon, Entity * target, Move *move, s32 param_4)
bool8 EscapeOrbAction(Entity * pokemon, Entity * target, Move *move, s32 param_4)
{
SetMessageArgument(gAvailablePokemonNames,pokemon,0);
SetMessageArgument(gAvailablePokemonNames[0],pokemon,0);
if (gDungeon->unk66E != 0) {
TryDisplayDungeonLoggableMessage3(pokemon,target,*gUnknown_80FD4DC); // $m0 can't escape!
}

View File

@ -21,14 +21,13 @@ extern const char *gPtrWrappedByMessage[];
extern const char *gPtrBideMessage[];
extern const char *gPtrPausedMessage[];
extern const char *gPtrInfatuatedMessage[];
extern u8 gAvailablePokemonNames[];
extern u8 *gUnknown_80F95EC[];
extern char *gPtrMoveInterruptedMessage[];
bool8 HasStatusAffectingActions(Entity *pokemon)
{
EntityInfo *pokemonInfo = pokemon->info;
SetMessageArgument(gAvailablePokemonNames, pokemon, 0);
SetMessageArgument(gAvailablePokemonNames[0], pokemon, 0);
SetMonsterActionFields(&pokemonInfo->action, ACTION_PASS_TURN);
switch (pokemonInfo->sleep.sleep)
{
@ -118,7 +117,7 @@ bool8 sub_80701A4(Entity *pokemon)
pokemonInfo = pokemon->info;
flag = FALSE;
SetMessageArgument(gAvailablePokemonNames, pokemon, 0);
SetMessageArgument(gAvailablePokemonNames[0], pokemon, 0);
SetMonsterActionFields(&pokemonInfo->action, ACTION_PASS_TURN);
switch(pokemonInfo->sleep.sleep)
{

View File

@ -55,7 +55,7 @@ s32 sub_8070828(Entity *pokemon, bool8 displayMessage)
}
}
void SetMessageArgument_2(char buffer[], EntityInfo *param_2, s32 colorNum)
void SetMessageArgument_2(u8 *buffer, EntityInfo *param_2, s32 colorNum)
{
if (((gDungeon->unk181e8.blinded ||
gDungeon->unk181e8.hallucinating) ||

View File

@ -77,8 +77,6 @@ const Item gUnknown_80DED44 =
};
extern char gUnknown_202E5D8[0x50];
extern char gAvailablePokemonNames[0x50];
const UnkTextStruct2 gUnknown_80DED48 =
{
@ -249,7 +247,7 @@ u32 CreateThankYouMailPelipper(void)
CopyYellowMonsterNametoBuffer(gUnknown_202E5D8, MONSTER_PELIPPER);
monName = GetMonSpecies(MONSTER_PELIPPER);
strcpy(gAvailablePokemonNames, monName);
strcpy(gAvailablePokemonNames[0], monName);
faceFile = GetDialogueSpriteDataPtr(MONSTER_PELIPPER);
sUnknown_203B2C4->monPortrait.faceFile = faceFile;
@ -1231,7 +1229,7 @@ void sub_802AB98(void)
sub_802F2C0();
CopyYellowMonsterNametoBuffer(gUnknown_202E5D8, MONSTER_PELIPPER);
monName = GetMonSpecies(MONSTER_PELIPPER);
strcpy(gAvailablePokemonNames, monName);
strcpy(gAvailablePokemonNames[0], monName);
DeleteMailAtIndex(GetMailIndex(6, sUnknown_203B2C4->unk430));
SetThankYouMailMenuState(0x24);
break;

View File

@ -17,8 +17,6 @@
#include "text2.h"
#include "trade_items_menu.h"
extern u32 gFormatData_202DE30;
static EWRAM_DATA_2 struct TradeItemsMenu *sTradeItemsMenu = {0};
#include "data/trade_items_menu.h"
@ -528,7 +526,7 @@ void sub_8036B28(void)
sub_8036F74();
break;
case TRADE_ITEMS_SEND_ITEM_CONFIRM:
gFormatData_202DE30 = sTradeItemsMenu->unk14.unk0;
gFormatData_202DE30[0] = sTradeItemsMenu->unk14.unk0;
BufferItemName(gFormatItems[0],sTradeItemsMenu->itemToSend.id,NULL);
CreateMenuDialogueBoxAndPortrait(sFmtWillBeSentPrompt,0,5, sUnknown_80E6154,0,4,0,0,0x101);
break;
@ -587,17 +585,17 @@ void sub_8036B28(void)
break;
case 0xe:
if (sTradeItemsMenu->unk24C.quantity == 0) {
gFormatData_202DE30 = sTradeItemsMenu->unk244.quantity;
gFormatData_202DE30[0] = sTradeItemsMenu->unk244.quantity;
BufferItemName(gFormatItems[0],sTradeItemsMenu->unk244.itemIdx.id,NULL);
}
else {
gFormatData_202DE30 = sTradeItemsMenu->unk24C.quantity;
gFormatData_202DE30[0] = sTradeItemsMenu->unk24C.quantity;
BufferItemName(gFormatItems[0],sTradeItemsMenu->unk24C.itemIdx.id,NULL);
}
CreateDialogueBoxAndPortrait(sFmtYouReceived,0,0,0x101);
break;
case 0xd:
gFormatData_202DE30 = sTradeItemsMenu->unk14.unk0;
gFormatData_202DE30[0] = sTradeItemsMenu->unk14.unk0;
BufferItemName(gFormatItems[0],sTradeItemsMenu->itemToSend.id,NULL);
CreateDialogueBoxAndPortrait(sFmtYouSent,0,0,0x101);
break;

View File

@ -22,8 +22,6 @@
#include "structs/map.h"
#include "structs/str_dungeon.h"
extern u8 gAvailablePokemonNames[];
extern u8 *gTrapNames[];
extern u8 *gUnknown_80FC5FC[];
extern u8 *gUnknown_80FC5F8[];
@ -248,7 +246,7 @@ void sub_807FE9C(Entity *pokemon, Position *pos, int param_3, char param_4)
return;
}
trapData = GetTrapData(entity);
GetTrapName(gAvailablePokemonNames,trapData->id);
GetTrapName(gAvailablePokemonNames[0],trapData->id);
target = tile->monster;
if ((target != NULL) && (GetEntityType(target) != ENTITY_MONSTER)) {
target = NULL;
@ -565,7 +563,7 @@ void HandlePitfallTrap(Entity *pokemon, Entity *target, Tile *tile)
}
else
{
SetMessageArgument(gAvailablePokemonNames,target,0);
SetMessageArgument(gAvailablePokemonNames[0],target,0);
if (info->isNotTeamMember) {
TryDisplayDungeonLoggableMessage3(pokemon,target,*gUnknown_80F970C); // $m0 fell into the pitfall!
}

View File

@ -18,9 +18,6 @@
#include "wigglytuff_shop2.h"
#include "wigglytuff_shop3.h"
extern u32 gFormatData_202DE30[2];
extern u8 gAvailablePokemonNames[]; // 202DF98
extern u8 gUnknown_202E1C8[];
extern u8 gUnknown_202E5D8[];
extern u8 gUnknown_202E628[];
@ -67,9 +64,9 @@ bool8 CreateWigglytuffShop(u32 mode)
sWigglytuffShop3Work->menuAction2 = 0;
sWigglytuffShop3Work->mode = mode;
CopyYellowMonsterNametoBuffer(gUnknown_202E5D8, MONSTER_WIGGLYTUFF);
CopyYellowMonsterNametoBuffer(gUnknown_202E1C8, MONSTER_WIGGLYTUFF);
CopyYellowMonsterNametoBuffer(gAvailablePokemonNames[7], MONSTER_WIGGLYTUFF);
str = GetMonSpecies(MONSTER_WIGGLYTUFF);
strcpy(gUnknown_202E1C8 - 80, str);
strcpy(gAvailablePokemonNames[6], str);
if (sWigglytuffShop3Work->mode == 1)
sWigglytuffShop3Work->monPortraitPtr = NULL;
@ -305,7 +302,7 @@ static void UpdateWigglytuffDialogue(void)
}
string = GetMonSpecies(sWigglytuffShop3Work->chosenSpecies);
strcpy(gAvailablePokemonNames, string);
strcpy(gAvailablePokemonNames[0], string);
WriteFriendAreaName(gUnknown_202E628, sWigglytuffShop3Work->chosenFriendArea, FALSE);
CreateDialogueBoxAndPortrait(gCommonWigglytuff[sWigglytuffShop3Work->mode][WIGGLY_DLG_14], 0, sWigglytuffShop3Work->monPortraitPtr, 0x10d);
break;

View File

@ -33,7 +33,6 @@ extern u32 sub_8031050();
extern void sub_80310B4();
extern char gUnknown_202E5D8[0x50];
extern char gAvailablePokemonNames[0x50];
extern void nullsub_130(void);
extern void sub_8028348(void);
@ -201,7 +200,7 @@ u32 sub_8027F88(void)
sUnknown_203B2C0->speciesNum = -1;
CopyYellowMonsterNametoBuffer(gUnknown_202E5D8, MONSTER_PELIPPER);
monName = GetMonSpecies(MONSTER_PELIPPER);
strcpy(gAvailablePokemonNames, monName);
strcpy(gAvailablePokemonNames[0], monName);
faceFile = GetDialogueSpriteDataPtr(MONSTER_PELIPPER);
sUnknown_203B2C0->monPortrait.faceFile = faceFile;
sUnknown_203B2C0->monPortrait.faceData = (void *) faceFile->data;

View File

@ -40,7 +40,6 @@ static EWRAM_DATA_2 struct unkStruct_203B2C8 *sUnknown_203B2C8 = {0};
extern void sub_80920D8(u8 *buffer);
extern char gUnknown_202E5D8[0x50];
extern char gAvailablePokemonNames[0x50];
extern void sub_802B548(u32);
extern void sub_802B560(void);
@ -218,7 +217,7 @@ void sub_802B57C(void)
sub_802F2C0();
CopyYellowMonsterNametoBuffer(gUnknown_202E5D8, MONSTER_PELIPPER);
monName = GetMonSpecies(MONSTER_PELIPPER);
strcpy(gAvailablePokemonNames, monName);
strcpy(gAvailablePokemonNames[0], monName);
sub_802B548(2);
}
}

View File

@ -184,21 +184,6 @@ gUnknown_202DE19: /* 202DE19 (sub_800F990 - sub_8010014) */
.align 4
.include "src/code_80140DC.o"
gAvailablePokemonNames: /* 202DF98 [used everywhere tbh] gAvailablePokemonNames[80][] */
.space 80
gUnknown_202DFE8: /* 202DFE8 (sub_801FF28 - PierceStatusTarget) */
.space 80
gUnknown_202E038: /* 202E038 (HandleMissionReward - sub_808CD44) [{ARG_POKEMON_2}] */
.space 80
gUnknown_202E088: /* 202E088 (sub_806FDF4 - sub_808C10C) [{ARG_POKEMON_3}]? */
.space 160
gUnknown_202E128: /* 202E128 (sub_8020A80) */
.space 160
gUnknown_202E1C8: /* 202E1C8 (CreateFelicityBank - MakuhitaDojo_New) */
.space 80
gUnknown_202E218: /* 202E218 (sub_801B200) */
.space 160
gPlayerName: /* 202E2B8 (UpdateLuminousCaveDialogue - sub_80A14E8) */
.space 800
gUnknown_202E5D8: /* 202E5D8 [used everywhere tbh] */