Document battle_cursor.c + Code cleanup in ov92_021D0D80.c. (#1151)

This commit is contained in:
Tai-disc
2026-05-17 19:31:35 +02:00
committed by GitHub
parent e3b7149868
commit 4185d87f55
9 changed files with 987 additions and 1448 deletions

View File

@@ -11,11 +11,11 @@
void ov16_02268744(BgConfig *param0);
void ov16_022687A0(BgConfig *param0);
void *ov16_022687C8(NARC *param0, NARC *param1, BattleSystem *battleSys, int param3, u8 *param4);
void *ov16_022687C8(NARC *unused1, NARC *param1, BattleSystem *battleSys, int param3, u8 *param4);
void ov16_02268A14(UnkStruct_ov16_02268A14 *param0);
void ov16_02268A88(UnkStruct_ov16_02268A14 *param0);
void ov16_02268B8C(UnkStruct_ov16_02268A14 *param0);
void ov16_02268C04(NARC *param0, NARC *param1, UnkStruct_ov16_02268A14 *param2, int param3, int param4, void *param5);
void ov16_02268C04(NARC *unused, NARC *param1, UnkStruct_ov16_02268A14 *param2, int param3, int param4, void *param5);
void ov16_02268D40(NARC *param0, UnkStruct_ov16_02268A14 *param1);
void ov16_0226914C(UnkStruct_ov16_02268A14 *param0, const u8 *param1);
void ov16_02269168(UnkStruct_ov16_02268A14 *param0, u8 param1[], u8 param2[]);
@@ -26,8 +26,8 @@ BOOL ov16_02269348(UnkStruct_ov16_02268A14 *param0);
int ov16_02269368(int param0, int param1);
void ov16_0226940C(UnkStruct_ov16_02268A14 *param0);
void ov16_0226947C(UnkStruct_ov16_02268A14 *param0, int param1, int param2);
void ov16_0226AC98(UnkStruct_ov16_02268A14 *param0, int param1, const MoveDisplayInfo *param2);
void ov16_0226BCCC(UnkStruct_ov16_02268A14 *param0, int param1);
void ov16_0226AC98(UnkStruct_ov16_02268A14 *param0, int param1, const MoveDisplayInfo *moveDisplayInfo);
void ov16_Dummy3(UnkStruct_ov16_02268A14 *param0, int param1);
BOOL ov16_0226BCD0(UnkStruct_ov16_02268A14 *param0);
int ov16_0226CD08(UnkStruct_ov16_02268A14 *param0);
void ov16_0226CD10(UnkStruct_ov16_02268A14 *param0, int param1);

File diff suppressed because it is too large Load Diff

View File

@@ -3275,7 +3275,7 @@ static void Task_PlayerSetCommandSelection(SysTask *task, void *data)
v11.isWaitingForPartner = BattleSystem_IsSlot2WaitingForPartner(commandSetData->battleSys, commandSetData->battler, commandSetData->switchingOrCanPickCommandMask);
if (battlerData->unk_193) {
ov16_0226BCCC(v2, 1);
ov16_Dummy3(v2, 1);
if (BattleSystem_GetBattleStatusMask(commandSetData->battleSys) & BATTLE_STATUS_FIRST_BATTLE) {
ov16_02268C04(bgNarc, objNarc, v2, 6, 0, &v11);
@@ -3349,7 +3349,7 @@ static void Task_PlayerSetCommandSelection(SysTask *task, void *data)
NARC *objNarc = NARC_ctor(NARC_INDEX_BATTLE__GRAPHIC__PL_BATT_OBJ, HEAP_ID_BATTLE);
ov16_02268C04(bgNarc, objNarc, v2, 0, 0, NULL);
ov16_0226BCCC(v2, 0);
ov16_Dummy3(v2, 0);
ov16_0226846C(healthbox);
Healthbox_Deactivate(commandSetData->healthbox);
ov16_022647D8(battlerData);
@@ -3361,7 +3361,7 @@ static void Task_PlayerSetCommandSelection(SysTask *task, void *data)
NARC *objNarc = NARC_ctor(NARC_INDEX_BATTLE__GRAPHIC__PL_BATT_OBJ, HEAP_ID_BATTLE);
ov16_02268C04(bgNarc, objNarc, v2, 0, 0, NULL);
ov16_0226BCCC(v2, 0);
ov16_Dummy3(v2, 0);
ov16_0226846C(healthbox);
Healthbox_Deactivate(commandSetData->healthbox);
ov16_022647D8(battlerData);
@@ -3396,7 +3396,7 @@ static void Task_PlayerSetCommandSelection(SysTask *task, void *data)
NARC *objNarc = NARC_ctor(NARC_INDEX_BATTLE__GRAPHIC__PL_BATT_OBJ, HEAP_ID_BATTLE);
ov16_02268C04(bgNarc, objNarc, v2, 0, 0, NULL);
ov16_0226BCCC(v2, 0);
ov16_Dummy3(v2, 0);
ov16_0226846C(healthbox);
Healthbox_Deactivate(commandSetData->healthbox);
ov16_022647D8(battlerData);
@@ -3568,7 +3568,7 @@ static void Task_PlayerShowMoveSelectMenu(SysTask *task, void *data)
case 2:
if (moveSelectMenuData->input != 0xFF) {
if ((BattleSystem_GetBattleType(moveSelectMenuData->battleSys) & BATTLE_TYPE_DOUBLES) == FALSE) {
ov16_0226BCCC(v2, 0);
ov16_Dummy3(v2, 0);
ov16_0226846C(healthbox);
Healthbox_Deactivate(moveSelectMenuData->healthbox);
ov16_022647D8(battlerData);
@@ -3722,7 +3722,7 @@ static void Task_PlayerShowTargetSelectMenu(SysTask *task, void *data)
ov16_0226846C(healthbox);
if (targetSelectMenuData->unk_32 == 1) {
ov16_0226BCCC(v2, 0);
ov16_Dummy3(v2, 0);
}
}
@@ -4727,7 +4727,7 @@ static void Task_PlayerShowYesNoMenu(SysTask *task, void *data)
ov16_02268C04(bgNarc, objNarc, v2, 0, 0, NULL);
if (yesNoMenuData->input == 1) {
ov16_0226BCCC(v2, 0);
ov16_Dummy3(v2, 0);
}
yesNoMenuData->state = 4;

View File

@@ -727,7 +727,7 @@ static void BtlIOCmd_ClearTouchScreen(BattleSystem *battleSys, BattlerData *batt
v0 = ov16_0223E02C(battleSys);
ov16_02268C04(v3, v4, v0, 0, 0, NULL);
ov16_0226BCCC(v0, 0);
ov16_Dummy3(v0, 0);
NARC_dtor(v3);
NARC_dtor(v4);

View File

@@ -371,21 +371,20 @@ static u16 CalculateGBABoxMonChecksum(GBABoxPokemon *gbaBoxMon)
union GBAPokemonSubstruct *substruct1 = GetGBASubstruct(gbaBoxMon, gbaBoxMon->personality, 1);
union GBAPokemonSubstruct *substruct2 = GetGBASubstruct(gbaBoxMon, gbaBoxMon->personality, 2);
union GBAPokemonSubstruct *substruct3 = GetGBASubstruct(gbaBoxMon, gbaBoxMon->personality, 3);
s32 i;
for (i = 0; i < (s32)NELEMS(substruct0->raw); i++) {
for (int i = 0; i < (int)NELEMS(substruct0->raw); i++) {
checksum += substruct0->raw[i];
}
for (i = 0; i < (s32)NELEMS(substruct1->raw); i++) {
for (int i = 0; i < (int)NELEMS(substruct1->raw); i++) {
checksum += substruct1->raw[i];
}
for (i = 0; i < (s32)NELEMS(substruct2->raw); i++) {
for (int i = 0; i < (int)NELEMS(substruct2->raw); i++) {
checksum += substruct2->raw[i];
}
for (i = 0; i < (s32)NELEMS(substruct3->raw); i++) {
for (int i = 0; i < (int)NELEMS(substruct3->raw); i++) {
checksum += substruct3->raw[i];
}

View File

@@ -19,6 +19,8 @@
#include "wifi_history_save_data.h"
#include "wifi_list.h"
#include "res/text/bank/country_names.h"
typedef struct {
u16 country;
u8 region;
@@ -1118,7 +1120,7 @@ static BOOL ov66_022336C4(UnkStruct_ov66_022336C4 *param0)
u32 country = WiFiHistory_GetCountry(param0->wiFiHistory);
u32 region = WiFiHistory_GetRegion(param0->wiFiHistory);
if (country == 0) {
if (country == Country_Text_None) {
return 0;
}

View File

@@ -38,6 +38,8 @@
#include "unk_020996D0.h"
#include "wifi_history_save_data.h"
#include "res/text/bank/country_names.h"
typedef struct UnkStruct_ov92_021D1530_t {
u16 unk_00;
s16 unk_02;
@@ -68,14 +70,14 @@ typedef struct {
WiFiHistory *wiFiHistory;
Options *options;
UnkStruct_ov92_021D1B24_sub1 unk_0C;
BgConfig *unk_B810;
BgConfig *bgConfig;
Window unk_B814;
Window unk_B824;
Window unk_B834;
Window unk_B844;
ListMenu *unk_B854;
ListMenu *listMenu;
StringList *unk_B858;
Menu *unk_B85C;
Menu *menu;
MessageLoader *unk_B860;
int unk_B864;
int unk_B868;
@@ -92,7 +94,7 @@ typedef struct {
VecFx32 unk_BAB4;
VecFx32 unk_BAC0;
Camera *camera;
CameraAngle unk_BAD0;
CameraAngle cameraAngle;
u16 unk_BAD8;
VecFx32 unk_BADC;
int unk_BAE8;
@@ -107,11 +109,11 @@ typedef struct {
int unk_BB08;
int unk_BB0C;
int unk_BB10;
int unk_BB14;
int unk_BB18;
int unk_BB1C;
int unk_BB20;
BOOL unk_BB24;
int country1;
int region1;
int country2;
int region2;
BOOL hasInteractedOutsideJapan;
int unk_BB28;
} UnkStruct_ov92_021D1B24;
@@ -121,9 +123,9 @@ typedef struct {
} UnkStruct_ov92_021D2958;
BOOL ov92_021D2854(int param0);
int ov92_021D0D80(ApplicationManager *appMan, int *param1);
int ov92_021D0D80(ApplicationManager *appMan, int *unused);
int ov92_021D0EB8(ApplicationManager *appMan, int *param1);
int ov92_021D1478(ApplicationManager *appMan, int *param1);
int ov92_021D1478(ApplicationManager *appMan, int *unused);
static void ov92_021D14F0(void);
static void ov92_021D1510(void);
static void ov92_021D1888(UnkStruct_ov92_021D1B24 *param0, NARC *param1);
@@ -294,9 +296,8 @@ static const ListMenuTemplate Unk_ov92_021D29C8 = {
0x0
};
int ov92_021D0D80(ApplicationManager *appMan, int *param1)
int ov92_021D0D80(ApplicationManager *appMan, int *unused)
{
UnkStruct_ov92_021D1B24 *v0;
enum HeapID heapID = HEAP_ID_50;
SetVBlankCallback(NULL, NULL);
@@ -309,29 +310,25 @@ int ov92_021D0D80(ApplicationManager *appMan, int *param1)
Heap_Create(HEAP_ID_APPLICATION, heapID, 0x80000);
v0 = ApplicationManager_NewData(appMan, sizeof(UnkStruct_ov92_021D1B24), heapID);
UnkStruct_ov92_021D1B24 *v0 = ApplicationManager_NewData(appMan, sizeof(UnkStruct_ov92_021D1B24), heapID);
memset(v0, 0, sizeof(UnkStruct_ov92_021D1B24));
v0->heapID = heapID;
if (gGameLanguage == JAPANESE) {
v0->unk_BAF0 = TRUE;
} else {
v0->unk_BAF0 = FALSE;
}
v0->unk_BAF0 = gGameLanguage == JAPANESE;
SaveData *saveData = ApplicationManager_Args(appMan);
v0->wiFiHistory = SaveData_WiFiHistory(saveData);
v0->unk_BB14 = WiFiHistory_GetCountry(v0->wiFiHistory);
v0->unk_BB18 = WiFiHistory_GetRegion(v0->wiFiHistory);
v0->unk_BB24 = WiFiHistory_HasInteractedOutsideJapan(v0->wiFiHistory);
v0->country1 = WiFiHistory_GetCountry(v0->wiFiHistory);
v0->region1 = WiFiHistory_GetRegion(v0->wiFiHistory);
v0->hasInteractedOutsideJapan = WiFiHistory_HasInteractedOutsideJapan(v0->wiFiHistory);
v0->options = SaveData_GetOptions(saveData);
ov92_021D14F0();
ov92_021D1510();
Easy3D_Init(v0->heapID);
v0->unk_B810 = BgConfig_New(v0->heapID);
v0->bgConfig = BgConfig_New(v0->heapID);
GXLayers_TurnBothDispOn();
Text_ResetAllPrinters();
@@ -383,8 +380,8 @@ int ov92_021D0EB8(ApplicationManager *appMan, int *param1)
}
break;
case 2:
if (ov92_021D1B70(v0, 0, 1) == 1) {
if (v0->unk_BB14 == 0) {
if (ov92_021D1B70(v0, 0, 1) == TRUE) {
if (v0->country1 == Country_Text_None) {
*param1 = 3;
} else {
*param1 = 14;
@@ -392,13 +389,13 @@ int ov92_021D0EB8(ApplicationManager *appMan, int *param1)
}
break;
case 3:
if (ov92_021D1B70(v0, 1, 1) == 1) {
if (ov92_021D1B70(v0, 1, 1) == TRUE) {
ov92_021D1C4C(v0, &v0->unk_B824, &Unk_ov92_021D290C, &Unk_ov92_021D29A8, Unk_ov92_021D2958);
*param1 = 4;
}
break;
case 4: {
int v3 = ListMenu_ProcessInput(v0->unk_B854);
int v3 = ListMenu_ProcessInput(v0->listMenu);
if (v3 == 0xffffffff) {
break;
@@ -423,17 +420,17 @@ int ov92_021D0EB8(ApplicationManager *appMan, int *param1)
} break;
case 5:
if (ov92_021D1B70(v0, 2, 1) == 1) {
v0->unk_B85C = Menu_MakeYesNoChoice(v0->unk_B810, &Unk_ov92_021D292C, (512 - (18 + 12)) - 9, 7, v0->heapID);
v0->menu = Menu_MakeYesNoChoice(v0->bgConfig, &Unk_ov92_021D292C, (512 - (18 + 12)) - 9, 7, v0->heapID);
*param1 = 6;
}
break;
case 6: {
u32 v4 = Menu_ProcessInputAndHandleExit(v0->unk_B85C, v0->heapID);
u32 v4 = Menu_ProcessInputAndHandleExit(v0->menu, v0->heapID);
switch (v4) {
case 0:
if (v0->unk_BAF0 == 1) {
v0->unk_BB1C = 103;
if (v0->unk_BAF0 == TRUE) {
v0->country2 = Country_Text_Japan;
*param1 = 9;
} else {
*param1 = 7;
@@ -446,14 +443,14 @@ int ov92_021D0EB8(ApplicationManager *appMan, int *param1)
} break;
case 7:
if (ov92_021D1B70(v0, 3, 1) == 1) {
v0->unk_BB1C = 0;
v0->country2 = 0;
ov92_021D1CF4(v0, &v0->unk_B824, &Unk_ov92_021D2914, &Unk_ov92_021D29C8, 694, sub_02099780(0), sub_0209979C(0));
*param1 = 8;
}
break;
case 8: {
int v5 = ListMenu_ProcessInput(v0->unk_B854);
int v5 = ListMenu_ProcessInput(v0->listMenu);
if (v5 == 0xffffffff) {
break;
@@ -468,12 +465,12 @@ int ov92_021D0EB8(ApplicationManager *appMan, int *param1)
switch (v5) {
default: {
v0->unk_BB1C = v5;
v0->country2 = v5;
if (ov92_021D2854(v0->unk_BB1C) == 1) {
if (ov92_021D2854(v0->country2) == TRUE) {
*param1 = 9;
} else {
v0->unk_BB20 = 0;
v0->region2 = 0;
*param1 = 11;
}
} break;
@@ -484,18 +481,18 @@ int ov92_021D0EB8(ApplicationManager *appMan, int *param1)
}
} break;
case 9:
if (ov92_021D1B70(v0, 4, 1) == 1) {
v0->unk_BB20 = 0;
if (ov92_021D1B70(v0, 4, 1) == TRUE) {
v0->region2 = 0;
{
u32 v6 = sub_020996D4(v0->unk_BB1C);
u32 v6 = sub_020996D4(v0->country2);
ov92_021D1CF4(v0, &v0->unk_B824, &Unk_ov92_021D2914, &Unk_ov92_021D29C8, sub_0209972C(v6), sub_02099780(v6), sub_0209979C(v6));
}
*param1 = 10;
}
break;
case 10: {
int v7 = ListMenu_ProcessInput(v0->unk_B854);
int v7 = ListMenu_ProcessInput(v0->listMenu);
if (v7 == 0xffffffff) {
break;
@@ -505,17 +502,17 @@ int ov92_021D0EB8(ApplicationManager *appMan, int *param1)
Sound_PlayEffect(SEQ_SE_CONFIRM);
if (v7 != 0xfffffffe) {
u32 v8 = sub_020996D4(v0->unk_BB1C);
u32 v8 = sub_020996D4(v0->country2);
v7 = sub_02099780(v8)[v7];
}
switch (v7) {
default:
v0->unk_BB20 = v7;
v0->region2 = v7;
*param1 = 11;
break;
case 0xfffffffe:
if (v0->unk_BAF0 == 1) {
if (v0->unk_BAF0 == TRUE) {
*param1 = 3;
} else {
*param1 = 7;
@@ -523,25 +520,25 @@ int ov92_021D0EB8(ApplicationManager *appMan, int *param1)
}
} break;
case 11:
ov92_021D1EBC(v0, v0->unk_BB1C, v0->unk_BB20);
ov92_021D1EBC(v0, v0->country2, v0->region2);
*param1 = 12;
break;
case 12:
if (ov92_021D1B70(v0, 5, 1) == 1) {
v0->unk_B85C = Menu_MakeYesNoChoice(v0->unk_B810, &Unk_ov92_021D292C, (512 - (18 + 12)) - 9, 7, v0->heapID);
v0->menu = Menu_MakeYesNoChoice(v0->bgConfig, &Unk_ov92_021D292C, (512 - (18 + 12)) - 9, 7, v0->heapID);
*param1 = 13;
}
break;
case 13: {
u32 v9 = Menu_ProcessInputAndHandleExit(v0->unk_B85C, v0->heapID);
u32 v9 = Menu_ProcessInputAndHandleExit(v0->menu, v0->heapID);
switch (v9) {
case 0:
ov92_021D1F74(v0);
WiFiHistory_SetCountryAndRegion(v0->wiFiHistory, v0->unk_BB1C, v0->unk_BB20);
WiFiHistory_SetCountryAndRegion(v0->wiFiHistory, v0->country2, v0->region2);
v0->unk_BB14 = v0->unk_BB1C;
v0->unk_BB18 = v0->unk_BB20;
v0->country1 = v0->country2;
v0->region1 = v0->region2;
*param1 = 14;
break;
case 0xfffffffe:
@@ -551,10 +548,10 @@ int ov92_021D0EB8(ApplicationManager *appMan, int *param1)
}
} break;
case 14:
if ((v0->unk_BAF0 == 1) && (v0->unk_BB24 == 0)) {
v0->unk_BAF4 = 0;
if (v0->unk_BAF0 == TRUE && !v0->hasInteractedOutsideJapan) {
v0->unk_BAF4 = FALSE;
} else {
v0->unk_BAF4 = 1;
v0->unk_BAF4 = TRUE;
}
ov92_021D2254(v0);
@@ -565,7 +562,7 @@ int ov92_021D0EB8(ApplicationManager *appMan, int *param1)
Window_FillRectWithColor(&v0->unk_B814, 15, 0, 0, 27 * 8, 4 * 8);
Window_DrawStandardFrame(&v0->unk_B834, 0, (512 - (18 + 12)) - 9, 7);
if (v0->unk_BB14 != 0) {
if (v0->country1 != Country_Text_None) {
ov92_021D1DEC(v0);
}
@@ -584,7 +581,7 @@ int ov92_021D0EB8(ApplicationManager *appMan, int *param1)
Sound_PlayEffect(SEQ_SE_DP_DECIDE);
Window_FillRectWithColor(&v0->unk_B814, 15, 0, 0, 27 * 8, 4 * 8);
if (v0->unk_BB14 == 0) {
if (v0->country1 == Country_Text_None) {
v0->unk_BAE8 = 2;
*param1 = 3;
} else {
@@ -613,7 +610,7 @@ int ov92_021D0EB8(ApplicationManager *appMan, int *param1)
v11 = ov92_021D2460(v0, gSystem.pressedKeys, gSystem.heldKeys);
if ((v11 == 1) && (v0->unk_BB28 == 1)) {
if (v11 == TRUE && v0->unk_BB28 == TRUE) {
v0->unk_BB28 = 0;
ov92_021D1F90(v0);
}
@@ -649,7 +646,7 @@ int ov92_021D0EB8(ApplicationManager *appMan, int *param1)
ov92_021D1B24(v0);
ov92_021D2210(v0);
MessageLoader_Free(v0->unk_B860);
(*param1) = 0;
*param1 = 0;
v1 = 1;
}
break;
@@ -660,7 +657,7 @@ int ov92_021D0EB8(ApplicationManager *appMan, int *param1)
return v1;
}
int ov92_021D1478(ApplicationManager *appMan, int *param1)
int ov92_021D1478(ApplicationManager *appMan, int *unused)
{
UnkStruct_ov92_021D1B24 *v0 = ApplicationManager_Data(appMan);
enum HeapID heapID = v0->heapID;
@@ -672,7 +669,7 @@ int ov92_021D1478(ApplicationManager *appMan, int *param1)
Camera_Delete(v0->camera);
StringTemplate_Free(v0->unk_B870);
Easy3D_Shutdown();
Heap_Free(v0->unk_B810);
Heap_Free(v0->bgConfig);
SetVBlankCallback(NULL, NULL);
ApplicationManager_FreeData(appMan);
Heap_Destroy(heapID);
@@ -719,20 +716,18 @@ static void ov92_021D1530(UnkStruct_ov92_021D1B24 *param0)
param0->unk_0C.unk_00 = 0;
{
void *v1;
UnkStruct_ov92_021D1530 *v2;
u32 v3;
int v4, v5;
v1 = LoadMemberFromOpenNARC_OutFileSize(v0, 18, 0, param0->heapID, 0, &v3);
void *v1 = LoadMemberFromOpenNARC_OutFileSize(v0, 18, 0, param0->heapID, 0, &v3);
v2 = (UnkStruct_ov92_021D1530 *)v1;
v5 = v3 / 6;
int v5 = v3 / 6;
v2++;
for (v4 = 1; v4 < v5; v4++) {
for (int i = 1; i < v5; i++) {
if (v2->unk_00 != 2) {
ov92_021D1634(param0, param0->unk_0C.unk_00, v2->unk_02, v2->unk_04, v4, 0);
ov92_021D1634(param0, param0->unk_0C.unk_00, v2->unk_02, v2->unk_04, i, 0);
param0->unk_0C.unk_00++;
}
@@ -745,9 +740,9 @@ static void ov92_021D1530(UnkStruct_ov92_021D1B24 *param0)
void *v6;
UnkStruct_ov69_0225C980 *v7;
u32 v8, v9;
int v10, v11, v12, v13;
int v11, v13;
v12 = 1;
int v12 = 1;
v11 = sub_020996D0();
while (v12 < v11) {
@@ -758,8 +753,8 @@ static void ov92_021D1530(UnkStruct_ov92_021D1B24 *param0)
v7++;
for (v10 = 1; v10 < v13; v10++) {
ov92_021D1634(param0, param0->unk_0C.unk_00, v7->unk_00, v7->unk_02, sub_02099748(v12), v10);
for (int i = 1; i < v13; i++) {
ov92_021D1634(param0, param0->unk_0C.unk_00, v7->unk_00, v7->unk_02, sub_02099748(v12), i);
param0->unk_0C.unk_00++;
v7++;
}
@@ -794,13 +789,11 @@ static void ov92_021D1634(UnkStruct_ov92_021D1B24 *param0, u32 param1, s16 param
static void ov92_021D16A8(UnkStruct_ov92_021D1B24 *param0)
{
int v0;
for (v0 = 0; v0 < param0->unk_0C.unk_00; v0++) {
if ((param0->unk_0C.unk_04[v0].unk_2A == param0->unk_BB14) && (param0->unk_0C.unk_04[v0].unk_2C == param0->unk_BB18)) {
param0->unk_0C.unk_04[v0].unk_28 = 3;
param0->unk_BAB4.x = param0->unk_0C.unk_04[v0].unk_00;
param0->unk_BAB4.y = param0->unk_0C.unk_04[v0].unk_02;
for (int i = 0; i < param0->unk_0C.unk_00; i++) {
if (param0->unk_0C.unk_04[i].unk_2A == param0->country1 && param0->unk_0C.unk_04[i].unk_2C == param0->region1) {
param0->unk_0C.unk_04[i].unk_28 = 3;
param0->unk_BAB4.x = param0->unk_0C.unk_04[i].unk_00;
param0->unk_BAB4.y = param0->unk_0C.unk_04[i].unk_02;
}
}
}
@@ -820,16 +813,16 @@ static void ov92_021D1700(UnkStruct_ov92_021D1B24 *param0)
if ((gSystem.touchX >= (25 * 8)) && (gSystem.touchX <= ((25 + 6) * 8)) && (gSystem.touchY >= (21 * 8)) && (gSystem.touchY <= ((21 + 2) * 8))) {
param0->unk_BAF8 = PAD_BUTTON_B;
return;
} else {
param0->unk_BAFC = 0;
param0->unk_BB08 = 0;
param0->unk_BB0C = 0;
param0->unk_BB10 = 0;
param0->unk_BAF8 = 0;
param0->unk_BB00 = gSystem.touchX;
param0->unk_BB04 = gSystem.touchY;
param0->unk_BB10 = 4;
}
param0->unk_BAFC = 0;
param0->unk_BB08 = 0;
param0->unk_BB0C = 0;
param0->unk_BB10 = 0;
param0->unk_BAF8 = 0;
param0->unk_BB00 = gSystem.touchX;
param0->unk_BB04 = gSystem.touchY;
param0->unk_BB10 = 4;
}
if (gSystem.touchHeld) {
@@ -905,30 +898,30 @@ static void ov92_021D1818(int param0, int param1, int *param2, int *param3, int
static void ov92_021D1888(UnkStruct_ov92_021D1B24 *param0, NARC *param1)
{
Bg_InitFromTemplate(param0->unk_B810, BG_LAYER_SUB_2, &Unk_ov92_021D2970, 0);
Bg_ClearTilemap(param0->unk_B810, BG_LAYER_SUB_2);
Bg_InitFromTemplate(param0->unk_B810, BG_LAYER_SUB_3, &Unk_ov92_021D298C, 0);
Graphics_LoadTilesToBgLayerFromOpenNARC(param1, 5, param0->unk_B810, 7, 0, 0, 0, param0->heapID);
Bg_InitFromTemplate(param0->bgConfig, BG_LAYER_SUB_2, &Unk_ov92_021D2970, 0);
Bg_ClearTilemap(param0->bgConfig, BG_LAYER_SUB_2);
Bg_InitFromTemplate(param0->bgConfig, BG_LAYER_SUB_3, &Unk_ov92_021D298C, 0);
Graphics_LoadTilesToBgLayerFromOpenNARC(param1, 5, param0->bgConfig, 7, 0, 0, 0, param0->heapID);
Graphics_LoadPaletteFromOpenNARC(param1, 6, 4, 0 * (2 * 16), (2 * 16) * 4, param0->heapID);
Graphics_LoadTilemapToBgLayerFromOpenNARC(param1, 7, param0->unk_B810, 7, 0, 0, 0, param0->heapID);
LoadMessageBoxGraphics(param0->unk_B810, BG_LAYER_SUB_2, 512 - (18 + 12), 6, Options_Frame(param0->options), param0->heapID);
LoadStandardWindowGraphics(param0->unk_B810, BG_LAYER_SUB_2, (512 - (18 + 12)) - 9, 7, 0, param0->heapID);
Graphics_LoadTilemapToBgLayerFromOpenNARC(param1, 7, param0->bgConfig, 7, 0, 0, 0, param0->heapID);
LoadMessageBoxGraphics(param0->bgConfig, BG_LAYER_SUB_2, 512 - (18 + 12), 6, Options_Frame(param0->options), param0->heapID);
LoadStandardWindowGraphics(param0->bgConfig, BG_LAYER_SUB_2, (512 - (18 + 12)) - 9, 7, 0, param0->heapID);
Font_LoadTextPalette(4, 4 * (2 * 16), param0->heapID);
Bg_ClearTilesRange(6, 32, 0, param0->heapID);
Bg_MaskPalette(BG_LAYER_SUB_2, 0x4753);
Window_AddFromTemplate(param0->unk_B810, &param0->unk_B814, &Unk_ov92_021D2934);
Window_AddFromTemplate(param0->bgConfig, &param0->unk_B814, &Unk_ov92_021D2934);
Window_FillRectWithColor(&param0->unk_B814, 15, 0, 0, 27 * 8, 4 * 8);
Window_DrawMessageBoxWithScrollCursor(&param0->unk_B814, 0, 512 - (18 + 12), 6);
param0->unk_B864 = 0;
Bg_InitFromTemplate(param0->unk_B810, BG_LAYER_MAIN_2, &Unk_ov92_021D2970, 0);
Bg_ClearTilemap(param0->unk_B810, BG_LAYER_MAIN_2);
Bg_InitFromTemplate(param0->unk_B810, BG_LAYER_MAIN_3, &Unk_ov92_021D298C, 0);
Graphics_LoadTilesToBgLayerFromOpenNARC(param1, 5, param0->unk_B810, 3, 0, 0, 0, param0->heapID);
Bg_InitFromTemplate(param0->bgConfig, BG_LAYER_MAIN_2, &Unk_ov92_021D2970, 0);
Bg_ClearTilemap(param0->bgConfig, BG_LAYER_MAIN_2);
Bg_InitFromTemplate(param0->bgConfig, BG_LAYER_MAIN_3, &Unk_ov92_021D298C, 0);
Graphics_LoadTilesToBgLayerFromOpenNARC(param1, 5, param0->bgConfig, 3, 0, 0, 0, param0->heapID);
Graphics_LoadPaletteFromOpenNARC(param1, 6, 0, 0 * (2 * 16), (2 * 16) * 4, param0->heapID);
Graphics_LoadTilemapToBgLayerFromOpenNARC(param1, 7, param0->unk_B810, 3, 0, 0, 0, param0->heapID);
LoadStandardWindowGraphics(param0->unk_B810, BG_LAYER_MAIN_2, (512 - (18 + 12)) - 9, 7, 0, param0->heapID);
Graphics_LoadTilemapToBgLayerFromOpenNARC(param1, 7, param0->bgConfig, 3, 0, 0, 0, param0->heapID);
LoadStandardWindowGraphics(param0->bgConfig, BG_LAYER_MAIN_2, (512 - (18 + 12)) - 9, 7, 0, param0->heapID);
Font_LoadTextPalette(0, 4 * (2 * 16), param0->heapID);
Bg_ClearTilesRange(BG_LAYER_MAIN_2, 32, 0, param0->heapID);
Bg_MaskPalette(BG_LAYER_MAIN_2, 0x0);
@@ -949,7 +942,7 @@ static void ov92_021D1888(UnkStruct_ov92_021D1B24 *param0, NARC *param1)
Bg_LoadPalette(2, &v4, 2, 4 * (2 * 16) + 15 * 2);
}
Window_AddFromTemplate(param0->unk_B810, &param0->unk_B834, &Unk_ov92_021D2924);
Window_AddFromTemplate(param0->bgConfig, &param0->unk_B834, &Unk_ov92_021D2924);
Window_FillRectWithColor(&param0->unk_B834, 15, 0, 0, 27 * 8, 4 * 8);
MessageLoader_GetString(param0->unk_B860, 12, v0);
@@ -969,10 +962,10 @@ static void ov92_021D1B24(UnkStruct_ov92_021D1B24 *param0)
{
Window_Remove(&param0->unk_B834);
Window_Remove(&param0->unk_B814);
Bg_FreeTilemapBuffer(param0->unk_B810, BG_LAYER_MAIN_2);
Bg_FreeTilemapBuffer(param0->unk_B810, BG_LAYER_SUB_2);
Bg_FreeTilemapBuffer(param0->unk_B810, BG_LAYER_MAIN_3);
Bg_FreeTilemapBuffer(param0->unk_B810, BG_LAYER_SUB_3);
Bg_FreeTilemapBuffer(param0->bgConfig, BG_LAYER_MAIN_2);
Bg_FreeTilemapBuffer(param0->bgConfig, BG_LAYER_SUB_2);
Bg_FreeTilemapBuffer(param0->bgConfig, BG_LAYER_MAIN_3);
Bg_FreeTilemapBuffer(param0->bgConfig, BG_LAYER_SUB_3);
}
static BOOL ov92_021D1B70(UnkStruct_ov92_021D1B24 *param0, u32 param1, int param2)
@@ -1003,7 +996,7 @@ static BOOL ov92_021D1B70(UnkStruct_ov92_021D1B24 *param0, u32 param1, int param
return v0;
}
static void ov92_021D1C38(ListMenu *param0, u32 param1, u8 param2)
static void ov92_021D1C38(ListMenu *listMenu, u32 unused, u8 param2)
{
if (param2 == 0) {
Sound_PlayEffect(SEQ_SE_CONFIRM);
@@ -1015,7 +1008,7 @@ static void ov92_021D1C4C(UnkStruct_ov92_021D1B24 *param0, Window *param1, const
ListMenuTemplate v0;
int v1;
Window_AddFromTemplate(param0->unk_B810, param1, param2);
Window_AddFromTemplate(param0->bgConfig, param1, param2);
param0->unk_B858 = StringList_New(param3->count, param0->heapID);
for (v1 = 0; v1 < param3->count; v1++) {
@@ -1026,7 +1019,7 @@ static void ov92_021D1C4C(UnkStruct_ov92_021D1B24 *param0, Window *param1, const
v0.choices = param0->unk_B858;
v0.window = param1;
v0.cursorCallback = ov92_021D1C38;
param0->unk_B854 = ListMenu_New(&v0, 0, 0, param0->heapID);
param0->listMenu = ListMenu_New(&v0, 0, 0, param0->heapID);
Window_DrawStandardFrame(v0.window, 1, (512 - (18 + 12)) - 9, 7);
Window_CopyToVRAM(param1);
@@ -1038,7 +1031,7 @@ static void ov92_021D1CF4(UnkStruct_ov92_021D1B24 *param0, Window *param1, const
MessageLoader *v1;
int v2;
Window_AddFromTemplate(param0->unk_B810, param1, param2);
Window_AddFromTemplate(param0->bgConfig, param1, param2);
v1 = MessageLoader_Init(MSG_LOADER_PRELOAD_ENTIRE_BANK, NARC_INDEX_MSGDATA__PL_MSG, param4, param0->heapID);
param0->unk_B858 = StringList_New(param6, param0->heapID);
@@ -1054,7 +1047,7 @@ static void ov92_021D1CF4(UnkStruct_ov92_021D1B24 *param0, Window *param1, const
v0.window = param1;
v0.cursorCallback = ov92_021D1C38;
param0->unk_B854 = ListMenu_New(&v0, 0, 0, param0->heapID);
param0->listMenu = ListMenu_New(&v0, 0, 0, param0->heapID);
Window_DrawStandardFrame(v0.window, 1, (512 - (18 + 12)) - 9, 7);
Window_CopyToVRAM(param1);
@@ -1064,7 +1057,7 @@ static void ov92_021D1DB4(UnkStruct_ov92_021D1B24 *param0)
{
Window_EraseStandardFrame(&param0->unk_B824, 0);
Window_Remove(&param0->unk_B824);
ListMenu_Free(param0->unk_B854, NULL, NULL);
ListMenu_Free(param0->listMenu, NULL, NULL);
StringList_Free(param0->unk_B858);
}
@@ -1073,12 +1066,12 @@ static void ov92_021D1DEC(UnkStruct_ov92_021D1B24 *param0)
String *v0 = String_Init(0x400, param0->heapID);
String *v1 = String_Init(0x400, param0->heapID);
Window_AddFromTemplate(param0->unk_B810, &param0->unk_B844, &Unk_ov92_021D291C);
Window_AddFromTemplate(param0->bgConfig, &param0->unk_B844, &Unk_ov92_021D291C);
Window_FillRectWithColor(&param0->unk_B844, 15, 0, 0, 27 * 8, 6 * 8);
Window_DrawStandardFrame(&param0->unk_B844, 0, (512 - (18 + 12)) - 9, 7);
StringTemplate_SetCountryName(param0->unk_B870, 0, param0->unk_BB14);
StringTemplate_SetCityName(param0->unk_B870, 1, param0->unk_BB14, param0->unk_BB18);
StringTemplate_SetCountryName(param0->unk_B870, 0, param0->country1);
StringTemplate_SetCityName(param0->unk_B870, 1, param0->country1, param0->region1);
MessageLoader_GetString(param0->unk_B860, 13, v1);
StringTemplate_Format(param0->unk_B870, v0, v1);
@@ -1096,7 +1089,7 @@ static void ov92_021D1EBC(UnkStruct_ov92_021D1B24 *param0, int param1, int param
String *v0 = String_Init(64, param0->heapID);
String *v1 = String_Init(64, param0->heapID);
Window_AddFromTemplate(param0->unk_B810, &param0->unk_B844, &Unk_ov92_021D291C);
Window_AddFromTemplate(param0->bgConfig, &param0->unk_B844, &Unk_ov92_021D291C);
Window_FillRectWithColor(&param0->unk_B844, 15, 0, 0, 27 * 8, 6 * 8);
Window_DrawStandardFrame(&param0->unk_B844, 0, (512 - (18 + 12)) - 9, 7);
@@ -1399,33 +1392,33 @@ static BOOL ov92_021D2460(UnkStruct_ov92_021D1B24 *param0, int param1, int param
static BOOL ov92_021D2644(UnkStruct_ov92_021D1B24 *param0)
{
fx32 v0 = Camera_GetDistance(param0->camera);
fx32 distance = Camera_GetDistance(param0->camera);
BOOL v1 = 0;
switch (param0->unk_BAD8) {
case 1:
if (v0 > (0x50000 + 0x8000)) {
v0 -= 0x8000;
if (distance > (0x50000 + 0x8000)) {
distance -= 0x8000;
param0->unk_BAC0.x -= 0x80;
param0->unk_BAC0.y = param0->unk_BAC0.x;
} else {
v0 = 0x50000;
distance = 0x50000;
v1 = 1;
}
break;
case 0:
if (v0 < (0x128000 - 0x8000)) {
v0 += 0x8000;
if (distance < (0x128000 - 0x8000)) {
distance += 0x8000;
param0->unk_BAC0.x += 0x80;
param0->unk_BAC0.y = param0->unk_BAC0.x;
} else {
v0 = 0x128000;
distance = 0x128000;
v1 = 1;
}
break;
}
Camera_SetDistance(v0, param0->camera);
Camera_SetDistance(distance, param0->camera);
return v1;
}
@@ -1505,9 +1498,9 @@ BOOL ov92_021D2854(int param0)
{
if (ov92_021D16F8(param0)) {
return 1;
} else {
return 0;
}
return 0;
}
static void ov92_021D2868(UnkStruct_ov92_021D28C0 *param0)

View File

@@ -39,6 +39,7 @@
#include "unk_02099500.h"
#include "constdata/const_020ED570.h"
#include "res/text/bank/country_names.h"
#include "res/text/bank/union_room.h"
typedef void (*UnkFuncPtr_0205B43C)(UnkStruct_0205B43C *);
@@ -965,7 +966,7 @@ int UnionRoom_GetTrainerCasePlayerMessage(StringTemplate *strTemplate)
u8 playerRegion = CommInfo_PlayerRegion(CommSys_CurNetId());
u8 commRegion = CommInfo_PlayerRegion(CommSys_CurNetId() ^ 1);
if (commCountry == 0) {
if (commCountry == Country_Text_None) {
return UnionRoom_Text_PlayersTrainerCase;
}

View File

@@ -53,7 +53,7 @@ int WiFiHistory_GetGeonetCommunicatedWith(const WiFiHistory *wiFiHistory, int co
GF_ASSERT(country < 256);
GF_ASSERT(region < 64);
if (country == 0) {
if (country == Country_Text_None) {
return 0;
}