Document core FieldTask commands related to FieldMap

This commit is contained in:
Adrienn Tindall
2024-10-01 12:23:16 -04:00
parent 992b92e978
commit 1aab496bce
21 changed files with 129 additions and 129 deletions

View File

@@ -15,9 +15,9 @@ void FieldSystem_SetLoadNewGameSpawnTask(FieldSystem *fieldSystem);
void FieldSystem_SetLoadSavedGameMapTask(FieldSystem *fieldSystem);
void FieldSystem_StartLoadMapFromErrorTask(FieldSystem *fieldSystem);
void FieldSystem_StartChangeMapTask(TaskManager *param0, const Location *param1);
void sub_020539A0(TaskManager *param0, const Location *param1);
void FieldTask_ChangeMapByLocation(TaskManager *param0, const Location *param1);
void sub_020539E8(TaskManager *param0, int param1, int param2, int param3, int param4, int param5);
void sub_02053A80(TaskManager *param0, int param1, int param2, int param3, int param4, int param5);
void FieldTask_StartMapChangeFull(TaskManager *param0, int param1, int param2, int param3, int param4, int param5);
void sub_02053AB4(FieldSystem *fieldSystem, int param1, int param2, int param3, int param4, int param5);
void sub_02053AFC(TaskManager *param0, int param1, int param2, int param3, int param4, int param5);
void sub_02053CD4(TaskManager *param0, const Location *param1, u32 param2);

View File

@@ -19,7 +19,7 @@ Location *sub_0203A720(FieldOverworldState *param0);
Location *FieldOverworldState_GetEntranceLocation(FieldOverworldState *param0);
Location *FieldOverworldState_GetPrevLocation(FieldOverworldState *param0);
Location *sub_0203A72C(FieldOverworldState *param0);
Location *sub_0203A730(FieldOverworldState *param0);
Location *FieldOverworldState_GetSpecialLocation(FieldOverworldState *param0);
void sub_0203A734(FieldOverworldState *param0, Location *param1);
u16 *sub_0203A748(FieldOverworldState *param0);
u16 FieldOverworldState_GetWeather(const FieldOverworldState *param0);

View File

@@ -3,8 +3,8 @@
#include "struct_decls/struct_020508D4_decl.h"
void sub_02055820(TaskManager *param0);
void sub_02055868(TaskManager *param0);
void FieldTask_FinishFieldMap(TaskManager *param0);
void FieldTask_StartFieldMap(TaskManager *param0);
void sub_020558AC(TaskManager *param0);
void sub_020558F0(TaskManager *param0);
void sub_02055974(TaskManager *param0);

View File

@@ -135,7 +135,7 @@ typedef struct {
int unk_00;
BOOL unk_04;
Location unk_08;
} UnkStruct_02054538;
} MapChangeUnionData;
static BOOL FieldTask_ChangeMap(TaskManager *taskMan);
static BOOL FieldTask_LoadNewGameSpawn(TaskManager *taskMan);
@@ -226,7 +226,7 @@ static void FieldMapChange_SetNewLocation(FieldSystem *fieldSystem, const Locati
if (warpEvent->destWarpID == 0x100) {
Location *v3, *entrance;
v3 = sub_0203A730(fieldState);
v3 = FieldOverworldState_GetSpecialLocation(fieldState);
entrance = FieldOverworldState_GetEntranceLocation(fieldState);
*v3 = *entrance;
}
@@ -423,7 +423,7 @@ static void sub_020534BC(FieldSystem *fieldSystem)
{
if (fieldSystem->journal != NULL) {
FieldOverworldState *owState = SaveData_GetFieldOverworldState(fieldSystem->saveData);
Location *location = sub_0203A730(owState);
Location *location = FieldOverworldState_GetSpecialLocation(owState);
void *v2 = sub_0202BC58(location->mapId, 11);
Journal_SaveData(fieldSystem->journal, v2, 0);
}
@@ -443,7 +443,7 @@ static BOOL FieldSystem_IsSaveInUnionRoom(const FieldSystem *fieldSystem)
static void FieldSystem_SetLocationToUnionRoomExit(FieldSystem *fieldSystem)
{
Location *v0 = sub_0203A730(SaveData_GetFieldOverworldState(fieldSystem->saveData));
Location *v0 = FieldOverworldState_GetSpecialLocation(SaveData_GetFieldOverworldState(fieldSystem->saveData));
VarsFlags *varsFlags = SaveData_GetVarsFlags(fieldSystem->saveData);
Location_Set(v0, fieldSystem->location->mapId, -1, 8, 2, 1);
@@ -506,7 +506,7 @@ static BOOL FieldTask_LoadSavedGameMap(TaskManager *taskMan)
}
CommClub_ResetAvailable(varsFlags);
FieldMapChange_SetNewLocation(fieldSystem, sub_0203A730(fieldState));
FieldMapChange_SetNewLocation(fieldSystem, FieldOverworldState_GetSpecialLocation(fieldState));
FieldMapChange_InitTerrainCollisionManager(fieldSystem);
FieldMapChange_UpdateGameData(fieldSystem, 0);
FieldMapChange_CreateObjects(fieldSystem);
@@ -569,7 +569,7 @@ static BOOL FieldTask_LoadMapFromError(TaskManager *taskMan)
case 2:
fieldSystem->unk_7C = sub_0205B33C(fieldSystem);
fieldSystem->unk_80 = sub_0205C22C(fieldSystem->unk_7C);
sub_02055868(taskMan);
FieldTask_StartFieldMap(taskMan);
(*state)++;
break;
case 3:
@@ -628,7 +628,7 @@ static BOOL FieldTask_ChangeMap(TaskManager *taskMan)
(mapChangeData->state)++;
break;
case 1:
sub_020539A0(taskMan, &mapChangeData->nextLocation);
FieldTask_ChangeMapByLocation(taskMan, &mapChangeData->nextLocation);
(mapChangeData->state)++;
break;
case 2:
@@ -685,7 +685,7 @@ static BOOL FieldTask_ChangeMapSub(TaskManager *taskMan)
return 0;
}
void sub_020539A0(TaskManager *taskMan, const Location *nextLocation)
void FieldTask_ChangeMapByLocation(TaskManager *taskMan, const Location *nextLocation)
{
FieldSystem *fieldSystem = TaskManager_FieldSystem(taskMan);
MapChangeSubData *mapChangeSub = Heap_AllocFromHeapAtEnd(11, sizeof(MapChangeSubData));
@@ -706,7 +706,7 @@ void sub_020539E8(TaskManager *taskMan, int param1, int param2, int param3, int
Location location;
Location_Set(&location, param1, param2, param3, param4, param5);
sub_020539A0(taskMan, &location);
FieldTask_ChangeMapByLocation(taskMan, &location);
}
static BOOL FieldTask_ChangeMapFull(TaskManager *taskMan)
@@ -718,11 +718,11 @@ static BOOL FieldTask_ChangeMapFull(TaskManager *taskMan)
switch (mapChangeSub->state) {
case 0:
Sound_TryFadeInBGM(fieldSystem, nextLocation->mapId);
sub_02055820(taskMan);
FieldTask_FinishFieldMap(taskMan);
(mapChangeSub->state)++;
break;
case 1:
sub_020539A0(taskMan, &mapChangeSub->nextLocation);
FieldTask_ChangeMapByLocation(taskMan, &mapChangeSub->nextLocation);
(mapChangeSub->state)++;
break;
case 2:
@@ -731,7 +731,7 @@ static BOOL FieldTask_ChangeMapFull(TaskManager *taskMan)
}
Sound_PlayMapBGM(fieldSystem, nextLocation->mapId);
sub_02055868(taskMan);
FieldTask_StartFieldMap(taskMan);
(mapChangeSub->state)++;
break;
case 3:
@@ -742,7 +742,7 @@ static BOOL FieldTask_ChangeMapFull(TaskManager *taskMan)
return 0;
}
void sub_02053A80(TaskManager *taskMan, int mapId, int param2, int x, int z, int param5)
void FieldTask_StartMapChangeFull(TaskManager *taskMan, int mapId, int param2, int x, int z, int param5)
{
MapChangeSubData *mapChangeSub = Heap_AllocFromHeapAtEnd(11, sizeof(MapChangeSubData));
@@ -796,7 +796,7 @@ static BOOL sub_02053B44(TaskManager *taskMan)
break;
case 1:
PlayerAvatar_SetPlayerState(fieldSystem->playerAvatar, 0x0);
sub_020539A0(taskMan, &v1->unk_08);
FieldTask_ChangeMapByLocation(taskMan, &v1->unk_08);
(v1->unk_00)++;
break;
case 2:
@@ -828,7 +828,7 @@ static BOOL sub_02053BE4(TaskManager *taskMan)
switch (*state) {
case 0:
sub_02055820(taskMan);
FieldTask_FinishFieldMap(taskMan);
(*state)++;
break;
case 1:
@@ -851,7 +851,7 @@ static BOOL sub_02053C28(TaskManager *taskMan)
switch (*v0) {
case 0:
sub_02055868(taskMan);
FieldTask_StartFieldMap(taskMan);
(*v0)++;
break;
case 1:
@@ -918,7 +918,7 @@ static BOOL sub_02053D0C(TaskManager *taskMan)
break;
case 1:
PlayerAvatar_SetPlayerState(fieldSystem->playerAvatar, 0x0);
sub_020539A0(taskMan, &v1->unk_0C);
FieldTask_ChangeMapByLocation(taskMan, &v1->unk_0C);
(v1->unk_00)++;
break;
case 2:
@@ -958,7 +958,7 @@ static BOOL sub_02053DC4(TaskManager *taskMan)
switch (*v0) {
case 0:
sub_02055820(taskMan);
FieldTask_FinishFieldMap(taskMan);
(*v0)++;
break;
case 1:
@@ -982,7 +982,7 @@ static BOOL sub_02053E08(TaskManager *taskMan)
switch (*v0) {
case 0:
sub_02055868(taskMan);
FieldTask_StartFieldMap(taskMan);
(*v0)++;
break;
case 1:
@@ -1025,12 +1025,12 @@ static BOOL FieldTask_MapChangeWarp(TaskManager *taskMan)
case 1:
if (mapChangeWarpData->warpFinished) {
Sound_TryFadeInBGM(fieldSystem, nextLocation->mapId);
sub_02055820(taskMan);
FieldTask_FinishFieldMap(taskMan);
mapChangeWarpData->state++;
}
break;
case 2:
sub_020539A0(taskMan, &mapChangeWarpData->nextLocation);
FieldTask_ChangeMapByLocation(taskMan, &mapChangeWarpData->nextLocation);
mapChangeWarpData->state++;
break;
case 3:
@@ -1039,7 +1039,7 @@ static BOOL FieldTask_MapChangeWarp(TaskManager *taskMan)
}
Sound_PlayMapBGM(fieldSystem, nextLocation->mapId);
sub_02055868(taskMan);
FieldTask_StartFieldMap(taskMan);
mapChangeWarpData->state++;
break;
case 4:
@@ -1075,7 +1075,7 @@ void FieldSystem_StartMapChangeWarpTask(FieldSystem *fieldSystem, int param1, in
void *sub_02053FAC(FieldSystem *fieldSystem)
{
MapChangeUndergroundData *mapChangeUndergroundData;
Location *v1 = sub_0203A730(SaveData_GetFieldOverworldState(fieldSystem->saveData));
Location *v1 = FieldOverworldState_GetSpecialLocation(SaveData_GetFieldOverworldState(fieldSystem->saveData));
mapChangeUndergroundData = Heap_AllocFromHeapAtEnd(11, sizeof(MapChangeUndergroundData));
mapChangeUndergroundData->unk_00 = 0;
@@ -1213,7 +1213,7 @@ BOOL FieldTask_MapChangeToUnderground(TaskManager *taskMan)
}
break;
case 8:
sub_02055820(taskMan);
FieldTask_FinishFieldMap(taskMan);
(mapChangeUndergroundData->unk_00)++;
break;
case 9:
@@ -1230,7 +1230,7 @@ BOOL FieldTask_MapChangeToUnderground(TaskManager *taskMan)
sub_02004234(0);
Sound_ClearSpecialBGM(fieldSystem);
sub_02055868(taskMan);
FieldTask_StartFieldMap(taskMan);
(mapChangeUndergroundData->unk_00)++;
break;
case 11:
@@ -1281,7 +1281,7 @@ BOOL FieldTask_MapChangeFromUnderground(TaskManager *taskMan)
}
break;
case 3:
sub_02055820(taskMan);
FieldTask_FinishFieldMap(taskMan);
(mapChangeUndergroundData->unk_00)++;
break;
case 4:
@@ -1297,7 +1297,7 @@ BOOL FieldTask_MapChangeFromUnderground(TaskManager *taskMan)
sub_02004234(0);
Sound_ClearSpecialBGM(fieldSystem);
sub_02055868(taskMan);
FieldTask_StartFieldMap(taskMan);
(mapChangeUndergroundData->unk_00)++;
break;
case 6:
@@ -1392,25 +1392,25 @@ void sub_020544F0(TaskManager *taskMan, const Location *nextLocation)
static BOOL sub_02054538(TaskManager *taskMan)
{
FieldSystem *fieldSystem = TaskManager_FieldSystem(taskMan);
UnkStruct_02054538 *v1 = TaskManager_Environment(taskMan);
int *v2 = FieldTask_GetState(taskMan);
Location *v3 = &v1->unk_08;
MapChangeUnionData *mapChangeData = TaskManager_Environment(taskMan);
int *state = FieldTask_GetState(taskMan);
Location *v3 = &mapChangeData->unk_08;
switch (*v2) {
switch (*state) {
case 0:
Sound_TryFadeInBGM(fieldSystem, v3->mapId);
FieldSystem_StartWarpAnimation(fieldSystem, 1, &v1->unk_04);
(*v2)++;
FieldSystem_StartWarpAnimation(fieldSystem, 1, &mapChangeData->unk_04);
(*state)++;
break;
case 1:
if (v1->unk_04) {
sub_02055820(taskMan);
(*v2)++;
if (mapChangeData->unk_04) {
FieldTask_FinishFieldMap(taskMan);
(*state)++;
}
break;
case 2:
sub_020539A0(taskMan, &v1->unk_08);
(*v2)++;
FieldTask_ChangeMapByLocation(taskMan, &mapChangeData->unk_08);
(*state)++;
break;
case 3:
if (Sound_CheckFade() != 0) {
@@ -1418,43 +1418,43 @@ static BOOL sub_02054538(TaskManager *taskMan)
}
Sound_PlayMapBGM(fieldSystem, v3->mapId);
sub_02055868(taskMan);
(*v2)++;
FieldTask_StartFieldMap(taskMan);
(*state)++;
break;
case 4:
sub_020558F0(taskMan);
(*v2)++;
(*state)++;
break;
case 5:
Heap_FreeToHeap(v1);
return 1;
Heap_FreeToHeap(mapChangeData);
return TRUE;
}
return 0;
return FALSE;
}
void sub_020545EC(FieldSystem *fieldSystem)
{
Location *v0 = sub_0203A730(SaveData_GetFieldOverworldState(fieldSystem->saveData));
UnkStruct_02054538 *v1 = Heap_AllocFromHeapAtEnd(11, sizeof(UnkStruct_02054538));
Location *v0 = FieldOverworldState_GetSpecialLocation(SaveData_GetFieldOverworldState(fieldSystem->saveData));
MapChangeUnionData *mapChangeData = Heap_AllocFromHeapAtEnd(11, sizeof(MapChangeUnionData));
MI_CpuClear8(v1, sizeof(UnkStruct_02054538));
MI_CpuClear8(mapChangeData, sizeof(MapChangeUnionData));
v1->unk_08 = *v0;
mapChangeData->unk_08 = *v0;
sub_0205B388(fieldSystem);
sub_0205C2E0(fieldSystem->unk_80);
fieldSystem->mapLoadType = MAP_LOAD_TYPE_OVERWORLD;
FieldTask_Set(fieldSystem, sub_02054538, v1);
FieldTask_Set(fieldSystem, sub_02054538, mapChangeData);
fieldSystem->unk_7C = NULL;
}
static BOOL sub_02054648(TaskManager *taskMan)
{
FieldSystem *fieldSystem = TaskManager_FieldSystem(taskMan);
UnkStruct_02054538 *v1 = TaskManager_Environment(taskMan);
MapChangeUnionData *mapChangeData = TaskManager_Environment(taskMan);
int *state = FieldTask_GetState(taskMan);
Location *v3 = &v1->unk_08;
Location *v3 = &mapChangeData->unk_08;
switch (*state) {
case 0:
@@ -1463,11 +1463,11 @@ static BOOL sub_02054648(TaskManager *taskMan)
(*state)++;
break;
case 1:
sub_02055820(taskMan);
FieldTask_FinishFieldMap(taskMan);
(*state)++;
break;
case 2:
sub_020539A0(taskMan, &v1->unk_08);
FieldTask_ChangeMapByLocation(taskMan, &mapChangeData->unk_08);
(*state)++;
break;
case 3:
@@ -1476,21 +1476,21 @@ static BOOL sub_02054648(TaskManager *taskMan)
}
Sound_PlayMapBGM(fieldSystem, v3->mapId);
sub_02055868(taskMan);
FieldTask_StartFieldMap(taskMan);
(*state)++;
break;
case 4:
v1->unk_04 = 0;
FieldSystem_StartWarpAnimation(fieldSystem, 0, &v1->unk_04);
mapChangeData->unk_04 = 0;
FieldSystem_StartWarpAnimation(fieldSystem, 0, &mapChangeData->unk_04);
(*state)++;
break;
case 5:
if (v1->unk_04) {
if (mapChangeData->unk_04) {
(*state)++;
}
break;
case 6:
Heap_FreeToHeap(v1);
Heap_FreeToHeap(mapChangeData);
return TRUE;
}
@@ -1500,22 +1500,22 @@ static BOOL sub_02054648(TaskManager *taskMan)
void sub_02054708(TaskManager *taskMan)
{
FieldSystem *fieldSystem = TaskManager_FieldSystem(taskMan);
Location *v1 = sub_0203A730(SaveData_GetFieldOverworldState(fieldSystem->saveData));
UnkStruct_02054538 *v2 = Heap_AllocFromHeapAtEnd(11, sizeof(UnkStruct_02054538));
Location *location = FieldOverworldState_GetSpecialLocation(SaveData_GetFieldOverworldState(fieldSystem->saveData));
MapChangeUnionData *mapChangeData = Heap_AllocFromHeapAtEnd(11, sizeof(MapChangeUnionData));
MI_CpuClear8(v2, sizeof(UnkStruct_02054538));
Location_SetToPlayerLocation(v1, fieldSystem);
MI_CpuClear8(mapChangeData, sizeof(MapChangeUnionData));
Location_SetToPlayerLocation(location, fieldSystem);
Location_Set(&v2->unk_08, 466, -1, 8, 14, 0);
Location_Set(&mapChangeData->unk_08, 466, -1, 8, 14, 0);
fieldSystem->unk_7C = sub_0205B33C(fieldSystem);
fieldSystem->unk_80 = sub_0205C22C(fieldSystem->unk_7C);
fieldSystem->mapLoadType = MAP_LOAD_TYPE_UNION;
FieldTask_Start(taskMan, sub_02054648, v2);
FieldTask_Start(taskMan, sub_02054648, mapChangeData);
}
static BOOL sub_02054778(TaskManager *taskMan)
static BOOL FieldTask_ChangeMapColosseum(TaskManager *taskMan)
{
FieldSystem *fieldSystem = TaskManager_FieldSystem(taskMan);
MapChangeData *mapChangeData = TaskManager_Environment(taskMan);
@@ -1529,7 +1529,7 @@ static BOOL sub_02054778(TaskManager *taskMan)
(mapChangeData->state)++;
break;
case 1:
sub_020539A0(taskMan, &mapChangeData->nextLocation);
FieldTask_ChangeMapByLocation(taskMan, &mapChangeData->nextLocation);
(mapChangeData->state)++;
break;
case 2:
@@ -1538,7 +1538,7 @@ static BOOL sub_02054778(TaskManager *taskMan)
}
Sound_PlayMapBGM(fieldSystem, location->mapId);
sub_02055868(taskMan);
FieldTask_StartFieldMap(taskMan);
(mapChangeData->state)++;
break;
case 3:
@@ -1553,7 +1553,7 @@ void sub_02054800(TaskManager *taskMan, int mapId, int param2, int x, int z, int
{
Location nextLocation;
FieldSystem *fieldSystem = TaskManager_FieldSystem(taskMan);
Location *location = sub_0203A730(SaveData_GetFieldOverworldState(fieldSystem->saveData));
Location *location = FieldOverworldState_GetSpecialLocation(SaveData_GetFieldOverworldState(fieldSystem->saveData));
Location_SetToPlayerLocation(location, fieldSystem);
@@ -1566,13 +1566,13 @@ void sub_02054800(TaskManager *taskMan, int mapId, int param2, int x, int z, int
mapChangeData->state = 0;
mapChangeData->nextLocation = nextLocation;
FieldTask_Start(taskMan, sub_02054778, mapChangeData);
FieldTask_Start(taskMan, FieldTask_ChangeMapColosseum, mapChangeData);
}
void sub_02054864(TaskManager *taskMan)
{
FieldSystem *fieldSystem = TaskManager_FieldSystem(taskMan);
Location *location = sub_0203A730(SaveData_GetFieldOverworldState(fieldSystem->saveData));
Location *location = FieldOverworldState_GetSpecialLocation(SaveData_GetFieldOverworldState(fieldSystem->saveData));
fieldSystem->mapLoadType = MAP_LOAD_TYPE_OVERWORLD;
FieldSystem_StartChangeMapTask(fieldSystem->unk_10, location);

View File

@@ -84,7 +84,7 @@ Location *sub_0203A72C(FieldOverworldState *fieldState)
return &fieldState->unk_50;
}
Location *sub_0203A730(FieldOverworldState *fieldState)
Location *FieldOverworldState_GetSpecialLocation(FieldOverworldState *fieldState)
{
return &fieldState->unk_3C;
}

View File

@@ -1012,7 +1012,7 @@ static BOOL Field_MapConnection(const FieldSystem *fieldSystem, int playerX, int
if (v0->destWarpID == 0x100) {
GF_ASSERT(v0->destHeaderID == 0xfff);
*nextMap = *(sub_0203A730(SaveData_GetFieldOverworldState(fieldSystem->saveData)));
*nextMap = *(FieldOverworldState_GetSpecialLocation(SaveData_GetFieldOverworldState(fieldSystem->saveData)));
} else {
Location_Set(nextMap, v0->destHeaderID, v0->destWarpID, v0->x, v0->z, 1);
}

View File

@@ -3930,13 +3930,13 @@ BOOL sub_02041D60(ScriptContext *ctx)
static BOOL ScrCmd_0A1(ScriptContext *ctx)
{
sub_02055868(ctx->fieldSystem->unk_10);
FieldTask_StartFieldMap(ctx->fieldSystem->unk_10);
return 1;
}
static BOOL ScrCmd_1F8(ScriptContext *ctx)
{
sub_02055820(ctx->fieldSystem->unk_10);
FieldTask_FinishFieldMap(ctx->fieldSystem->unk_10);
return 1;
}
@@ -4608,7 +4608,7 @@ static BOOL ScrCmd_Warp(ScriptContext *ctx)
u16 z = ScriptContext_GetVar(ctx);
u16 direction = ScriptContext_GetVar(ctx);
sub_02053A80(ctx->taskManager, mapID, -1, x, z, direction);
FieldTask_StartMapChangeFull(ctx->taskManager, mapID, -1, x, z, direction);
return TRUE;
}
@@ -4963,7 +4963,7 @@ static BOOL ScrCmd_11C(ScriptContext *ctx)
Location *location;
u16 *v1 = ScriptContext_GetVarPointer(ctx);
location = sub_0203A730(SaveData_GetFieldOverworldState(ctx->fieldSystem->saveData));
location = FieldOverworldState_GetSpecialLocation(SaveData_GetFieldOverworldState(ctx->fieldSystem->saveData));
*v1 = ov5_021DCCC8(location->mapId);
return 0;

View File

@@ -1026,7 +1026,7 @@ BOOL sub_0203DBF0(TaskManager *param0)
switch (v2->unk_00) {
case 0:
if (!sub_020389B8()) {
sub_02055820(param0);
FieldTask_FinishFieldMap(param0);
}
v2->unk_00++;
@@ -1188,7 +1188,7 @@ static BOOL sub_0203DE98(TaskManager *param0)
switch (v2->unk_00) {
case 0:
sub_02055820(param0);
FieldTask_FinishFieldMap(param0);
v2->unk_00++;
break;
case 1:
@@ -1196,7 +1196,7 @@ static BOOL sub_0203DE98(TaskManager *param0)
v2->unk_00++;
break;
case 2:
sub_02055868(param0);
FieldTask_StartFieldMap(param0);
v2->unk_00++;
break;
case 3:

View File

@@ -224,7 +224,7 @@ BOOL sub_02049FA0(UnkStruct_0202D060 *param0)
void sub_02049FA8(FieldSystem *fieldSystem)
{
Location *v0 = sub_0203A730(SaveData_GetFieldOverworldState(fieldSystem->saveData));
Location *v0 = FieldOverworldState_GetSpecialLocation(SaveData_GetFieldOverworldState(fieldSystem->saveData));
Location_Set(v0, fieldSystem->location->mapId, -1, Player_GetXPos(fieldSystem->playerAvatar), Player_GetZPos(fieldSystem->playerAvatar), 0);
sub_0206AD9C(SaveData_GetVarsFlags(fieldSystem->saveData));

View File

@@ -63,7 +63,7 @@ static BOOL sub_020505A0(TaskManager *taskMan)
v1->unk_08++;
break;
case 1:
sub_02055820(taskMan);
FieldTask_FinishFieldMap(taskMan);
v1->unk_08++;
break;
case 2:
@@ -73,12 +73,12 @@ static BOOL sub_020505A0(TaskManager *taskMan)
Location v3;
Location_Set(&v3, 172, -1, 847, 561, 1);
sub_020539A0(taskMan, &v3);
FieldTask_ChangeMapByLocation(taskMan, &v3);
}
v1->unk_08++;
break;
case 3:
sub_02055868(taskMan);
FieldTask_StartFieldMap(taskMan);
v1->unk_08++;
break;
case 4:
@@ -99,7 +99,7 @@ static BOOL sub_020505A0(TaskManager *taskMan)
v1->unk_08++;
break;
case 7:
sub_02055820(taskMan);
FieldTask_FinishFieldMap(taskMan);
v1->unk_08++;
break;
case 8:
@@ -109,12 +109,12 @@ static BOOL sub_020505A0(TaskManager *taskMan)
Location v4;
Location_Set(&v4, 164, -1, v1->unk_04, v1->unk_06, 0);
sub_020539A0(taskMan, &v4);
FieldTask_ChangeMapByLocation(taskMan, &v4);
}
v1->unk_08++;
break;
case 9:
sub_02055868(taskMan);
FieldTask_StartFieldMap(taskMan);
v1->unk_08++;
break;
case 10:

View File

@@ -164,7 +164,7 @@ static BOOL sub_02050B30(TaskManager *taskMan)
(*v2)++;
break;
case 1:
sub_02055820(taskMan);
FieldTask_FinishFieldMap(taskMan);
(*v2)++;
break;
case 2:
@@ -192,7 +192,7 @@ static BOOL sub_02050B30(TaskManager *taskMan)
sub_020518B0(fieldSystem, v1->unk_10);
sub_02051988(fieldSystem, v1->unk_10);
sub_0206B48C(SaveData_GetVarsFlags(fieldSystem->saveData), v1->unk_10->unk_18C);
sub_02055868(taskMan);
FieldTask_StartFieldMap(taskMan);
(*v2)++;
break;
case 4:
@@ -247,7 +247,7 @@ static BOOL sub_02050CA8(TaskManager *taskMan)
(*v2)++;
break;
case 1:
sub_02055820(taskMan);
FieldTask_FinishFieldMap(taskMan);
(*v2)++;
break;
case 2:
@@ -263,7 +263,7 @@ static BOOL sub_02050CA8(TaskManager *taskMan)
GameRecords_IncrementTrainerScore(v3, TRAINER_SCORE_EVENT_UNK_21);
}
sub_02055868(taskMan);
FieldTask_StartFieldMap(taskMan);
(*v2)++;
break;
case 4:
@@ -384,7 +384,7 @@ static BOOL sub_02050EE0(TaskManager *taskMan)
v1->unk_00++;
break;
case 1:
sub_02055820(taskMan);
FieldTask_FinishFieldMap(taskMan);
v1->unk_00++;
break;
case 2:
@@ -419,7 +419,7 @@ static BOOL sub_02050EE0(TaskManager *taskMan)
}
}
sub_02055868(taskMan);
FieldTask_StartFieldMap(taskMan);
v1->unk_00++;
break;
case 4:
@@ -467,7 +467,7 @@ static BOOL sub_02051074(TaskManager *taskMan)
(*v2)++;
break;
case 1:
sub_02055820(taskMan);
FieldTask_FinishFieldMap(taskMan);
(*v2)++;
break;
case 2:
@@ -489,15 +489,15 @@ static BOOL sub_02051074(TaskManager *taskMan)
if (((*v3) == 0) && (v1->unk_10->unk_14 != 0x4)) {
Location *v6;
v6 = sub_0203A730(SaveData_GetFieldOverworldState(fieldSystem->saveData));
sub_020539A0(taskMan, v6);
v6 = FieldOverworldState_GetSpecialLocation(SaveData_GetFieldOverworldState(fieldSystem->saveData));
FieldTask_ChangeMapByLocation(taskMan, v6);
}
sub_02051988(fieldSystem, v1->unk_10);
(*v2)++;
break;
case 4:
sub_02055868(taskMan);
FieldTask_StartFieldMap(taskMan);
(*v2)++;
break;
case 5:
@@ -622,7 +622,7 @@ static BOOL sub_0205136C(TaskManager *taskMan)
(*v2)++;
break;
case 1:
sub_02055820(taskMan);
FieldTask_FinishFieldMap(taskMan);
(*v2)++;
break;
case 2:
@@ -636,7 +636,7 @@ static BOOL sub_0205136C(TaskManager *taskMan)
(*v2)++;
break;
case 4:
sub_02055868(taskMan);
FieldTask_StartFieldMap(taskMan);
(*v2)++;
break;
case 5:
@@ -701,7 +701,7 @@ static BOOL sub_020514E8(TaskManager *taskMan)
(*v2)++;
break;
case 1:
sub_02055820(taskMan);
FieldTask_FinishFieldMap(taskMan);
(*v2)++;
break;
case 2:
@@ -712,7 +712,7 @@ static BOOL sub_020514E8(TaskManager *taskMan)
(*v2)++;
break;
case 4:
sub_02055868(taskMan);
FieldTask_StartFieldMap(taskMan);
(*v2)++;
break;
case 5:

View File

@@ -227,7 +227,7 @@ BOOL sub_02052B2C(TaskManager *param0)
sub_0203A824(v4, &v2);
sub_0203A7F0(v4, sub_0203A72C(v3));
sub_020539A0(param0, &v2);
FieldTask_ChangeMapByLocation(param0, &v2);
sub_020705B4(fieldSystem);
}
(*v1)++;
@@ -249,7 +249,7 @@ BOOL sub_02052B2C(TaskManager *param0)
(*v1)++;
break;
case 4:
sub_02055868(param0);
FieldTask_StartFieldMap(param0);
(*v1)++;
break;
case 5:

View File

@@ -188,7 +188,7 @@ void sub_02052E58(TaskManager *param0)
v5 = Heap_AllocFromHeap(32, sizeof(UnkStruct_0205300C));
v3 = SaveData_GetVarsFlags(fieldSystem->saveData);
v4 = SaveData_GetTrainerInfo(fieldSystem->saveData);
v1 = sub_0203A730(SaveData_GetFieldOverworldState(fieldSystem->saveData));
v1 = FieldOverworldState_GetSpecialLocation(SaveData_GetFieldOverworldState(fieldSystem->saveData));
v2 = sub_0203A72C(SaveData_GetFieldOverworldState(fieldSystem->saveData));
v5->unk_00 = sub_0206A954(v3);

View File

@@ -23,7 +23,7 @@ static BOOL sub_02055808(TaskManager *param0)
return 0;
}
void sub_02055820(TaskManager *param0)
void FieldTask_FinishFieldMap(TaskManager *param0)
{
FieldSystem *fieldSystem = TaskManager_FieldSystem(param0);
@@ -47,7 +47,7 @@ static BOOL sub_02055850(TaskManager *param0)
return 0;
}
void sub_02055868(TaskManager *param0)
void FieldTask_StartFieldMap(TaskManager *param0)
{
FieldSystem *fieldSystem = TaskManager_FieldSystem(param0);
@@ -109,7 +109,7 @@ static BOOL sub_02055934(TaskManager *param0)
(*v0)++;
break;
case 1:
sub_02055820(param0);
FieldTask_FinishFieldMap(param0);
(*v0)++;
break;
case 2:
@@ -131,7 +131,7 @@ static BOOL sub_02055984(TaskManager *param0)
switch (*v0) {
case 0:
sub_02055868(param0);
FieldTask_StartFieldMap(param0);
(*v0)++;
break;
case 1:

View File

@@ -216,15 +216,15 @@ static BOOL sub_02056CFC(TaskManager *taskMan)
(v1->unk_00)++;
break;
case 1:
sub_02055820(taskMan);
FieldTask_FinishFieldMap(taskMan);
(v1->unk_00)++;
break;
case 2:
sub_020539A0(taskMan, &v1->unk_08);
FieldTask_ChangeMapByLocation(taskMan, &v1->unk_08);
(v1->unk_00)++;
break;
case 3:
sub_02055868(taskMan);
FieldTask_StartFieldMap(taskMan);
(v1->unk_00)++;
break;
case 4:

View File

@@ -64,7 +64,7 @@ static BOOL sub_0206C120(TaskManager *taskMan)
v1->unk_0C = 1;
break;
case 1:
sub_02055820(taskMan);
FieldTask_FinishFieldMap(taskMan);
v1->unk_0C = 2;
break;
case 2: {
@@ -77,11 +77,11 @@ static BOOL sub_0206C120(TaskManager *taskMan)
}
}
sub_020539A0(taskMan, v1->unk_08);
FieldTask_ChangeMapByLocation(taskMan, v1->unk_08);
v1->unk_0C = 3;
break;
case 3:
sub_02055868(taskMan);
FieldTask_StartFieldMap(taskMan);
v1->unk_0C = 4;
break;
case 4: {

View File

@@ -65,7 +65,7 @@ static BOOL sub_0206C680(TaskManager *param0)
v1->unk_04++;
break;
case 2:
sub_02055820(param0);
FieldTask_FinishFieldMap(param0);
v1->unk_04++;
break;
case 3:
@@ -73,7 +73,7 @@ static BOOL sub_0206C680(TaskManager *param0)
v1->unk_04++;
break;
case 4:
sub_02055868(param0);
FieldTask_StartFieldMap(param0);
v1->unk_04++;
break;
case 5:

View File

@@ -216,7 +216,7 @@ static BOOL sub_0206C964(TaskManager *taskMan)
ov5_021D42B0(fieldSystem->unk_50, fieldSystem->unk_54, 2);
}
sub_02055820(taskMan);
FieldTask_FinishFieldMap(taskMan);
v1->unk_00 = 4;
break;
case 4:

View File

@@ -176,7 +176,7 @@ static BOOL sub_02093448(TaskManager *param0)
switch (v1->unk_04) {
case 0:
sub_02055820(param0);
FieldTask_FinishFieldMap(param0);
v1->unk_04++;
break;
case 1:
@@ -246,7 +246,7 @@ static BOOL sub_02093448(TaskManager *param0)
v1->unk_04++;
break;
case 12:
sub_02055868(param0);
FieldTask_StartFieldMap(param0);
v1->unk_04++;
break;
default:
@@ -266,7 +266,7 @@ static BOOL sub_020935EC(TaskManager *param0)
switch (v1->unk_04) {
case 0:
sub_02055820(param0);
FieldTask_FinishFieldMap(param0);
v1->unk_04++;
break;
case 1:
@@ -363,7 +363,7 @@ static BOOL sub_020935EC(TaskManager *param0)
v1->unk_04++;
break;
case 8:
sub_02055868(param0);
FieldTask_StartFieldMap(param0);
v1->unk_04++;
break;
default:

View File

@@ -318,7 +318,7 @@ static BOOL sub_02097F38(TaskManager *param0)
switch (v0->unk_14) {
case 0:
sub_02055820(param0);
FieldTask_FinishFieldMap(param0);
v1->unk_20 = sub_0202CA1C(v0->unk_10);
sub_02097F20(v1, 0);
@@ -404,7 +404,7 @@ static BOOL sub_02097F38(TaskManager *param0)
v0->unk_14 = 1;
break;
case 5:
sub_02055868(param0);
FieldTask_StartFieldMap(param0);
v0->unk_14 = 6;
break;
case 6:

View File

@@ -201,7 +201,7 @@ static BOOL sub_0209843C(TaskManager *param0)
switch (v0->unk_00) {
case 0:
ov5_021E771C(v0->unk_0C.unk_00, 11);
sub_02055820(param0);
FieldTask_FinishFieldMap(param0);
v0->unk_00++;
break;
case 1:
@@ -262,7 +262,7 @@ static BOOL sub_0209843C(TaskManager *param0)
v0->unk_00++;
break;
case 5:
sub_02055868(param0);
FieldTask_StartFieldMap(param0);
v0->unk_00++;
break;
case 6: