finish blackout.c

This commit is contained in:
red031000
2023-12-16 14:43:25 +00:00
parent 6fb4680e20
commit c855d1d445
27 changed files with 130 additions and 204 deletions

View File

@@ -187,8 +187,7 @@ Static arm9
Object encounter.o
Object unk_02047500.o
Object unk_020476CC.o
Object blackout_src.o
Object blackout_asm.o
Object blackout.o
Object unk_020484A8.o
Object unk_02048904.o
Object script_pokemon_util.o

View File

@@ -1,148 +0,0 @@
.include "asm/macros.inc"
.include "global.inc"
.extern Blackout_DrawMessage
.text
thumb_func_start Task_BlackOut
Task_BlackOut: ; 0x0204837C
push {r3-r7, lr}
sub sp, #0x18
add r5, r0, #0x0
bl TaskManager_GetFieldSystem
add r6, r0, #0x0
add r0, r5, #0x0
bl TaskManager_GetStatePtr
add r4, r0, #0x0
ldr r0, [r4, #0x0]
cmp r0, #0x6
bhi _02048488
add r0, r0, r0
add r0, pc
ldrh r0, [r0, #0x6]
lsl r0, r0, #0x10
asr r0, r0, #0x10
add pc, r0
_020483A2: ; jump table (using 16-bit offset)
.short _020483B0 - _020483A2 - 2; case 0
.short _020483E8 - _020483A2 - 2; case 1
.short _020483F8 - _020483A2 - 2; case 2
.short _0204840C - _020483A2 - 2; case 3
.short _02048434 - _020483A2 - 2; case 4
.short _02048442 - _020483A2 - 2; case 5
.short _02048482 - _020483A2 - 2; case 6
_020483B0:
ldr r0, [r6, #0xc]
bl Save_LocalFieldData_Get
add r7, r0, #0x0
bl LocalFieldData_GetBlackoutSpawn
add r1, sp, #0x4
str r0, [sp, #0x0]
bl GetDeathWarpData
add r0, r7, #0x0
bl LocalFieldData_GetSpecialSpawnWarpPtr
add r1, r0, #0x0
ldr r0, [sp, #0x0]
bl GetSpecialSpawnWarpData
add r0, r5, #0x0
add r1, sp, #0x4
bl sub_02049160
add r0, r6, #0x0
bl sub_020637F0
ldr r0, [r4, #0x0]
add r0, r0, #0x1
str r0, [r4, #0x0]
b _02048488
_020483E8:
mov r0, #0x0
mov r1, #0x14
bl GF_SndStartFadeOutBGM
ldr r0, [r4, #0x0]
add r0, r0, #0x1
str r0, [r4, #0x0]
b _02048488
_020483F8:
bl sub_02005404
cmp r0, #0x0
bne _02048488
bl sub_0204AB0C
ldr r0, [r4, #0x0]
add r0, r0, #0x1
str r0, [r4, #0x0]
b _02048488
_0204840C:
mov r0, #0xf
mvn r0, r0
mov r1, #0x37
mov r2, #0x1
bl SetBlendBrightness
mov r0, #0xf
mvn r0, r0
mov r1, #0x3f
mov r2, #0x2
bl SetBlendBrightness
add r0, r6, #0x0
add r1, r5, #0x0
bl Blackout_DrawMessage
ldr r0, [r4, #0x0]
add r0, r0, #0x1
str r0, [r4, #0x0]
b _02048488
_02048434:
add r0, r5, #0x0
bl CallTask_RestoreOverworld
ldr r0, [r4, #0x0]
add r0, r0, #0x1
str r0, [r4, #0x0]
b _02048488
_02048442:
mov r0, #0x0
mov r1, #0x3f
mov r2, #0x3
bl SetBlendBrightness
bl sub_02034E8C
add r7, r0, #0x0
ldr r0, [r6, #0xc]
bl Save_LocalFieldData_Get
bl LocalFieldData_GetBlackoutSpawn
cmp r7, r0
bne _0204846E
mov r2, #0x0
ldr r1, _02048490 ; =0x000007E4
add r0, r5, #0x0
add r3, r2, #0x0
bl QueueScript
b _0204847A
_0204846E:
mov r2, #0x0
ldr r1, _02048494 ; =0x000007E5
add r0, r5, #0x0
add r3, r2, #0x0
bl QueueScript
_0204847A:
ldr r0, [r4, #0x0]
add r0, r0, #0x1
str r0, [r4, #0x0]
b _02048488
_02048482:
add sp, #0x18
mov r0, #0x1
pop {r3-r7, pc}
_02048488:
mov r0, #0x0
add sp, #0x18
pop {r3-r7, pc}
nop
_02048490: .word 0x000007E4
_02048494: .word 0x000007E5
thumb_func_start CallTask_BlackOut
CallTask_BlackOut: ; 0x02048498
ldr r3, _020484A0 ; =TaskManager_Call
ldr r1, _020484A4 ; =Task_BlackOut
mov r2, #0x0
bx r3
.balign 4
_020484A0: .word TaskManager_Call
_020484A4: .word Task_BlackOut

View File

@@ -39,7 +39,7 @@ sub_02034D98: ; 0x02034D98
add r0, r4, #0x0
add r0, #0x8c
bl sub_02055468
bl sub_02034E8C
bl GetMomSpawnId
add r4, #0x68
strh r0, [r4, #0x0]
pop {r4, pc}

View File

@@ -81,8 +81,8 @@ _02034E88:
sub r0, r0, #0x1
pop {r3, pc}
thumb_func_start sub_02034E8C
sub_02034E8C: ; 0x02034E8C
thumb_func_start GetMomSpawnId
GetMomSpawnId: ; 0x02034E8C
mov r0, #0x1
bx lr

View File

@@ -949,7 +949,7 @@ _02049080:
str r0, [r4, #0x0]
b _020490B6
_02049090:
bl sub_02005404
bl GF_SndGetFadeTimer
cmp r0, #0x0
bne _020490B6
ldr r1, [r4, #0x4]
@@ -1142,7 +1142,7 @@ _02049206:
str r0, [r4, #0x0]
b _0204923C
_02049216:
bl sub_02005404
bl GF_SndGetFadeTimer
cmp r0, #0x0
bne _0204923C
ldr r1, [r4, #0x4]
@@ -1309,7 +1309,7 @@ _0204934A:
str r0, [r4, #0x0]
b _02049390
_02049364:
bl sub_02005404
bl GF_SndGetFadeTimer
cmp r0, #0x0
bne _02049390
ldr r1, [r5, #0x0]
@@ -1542,7 +1542,7 @@ _02049512:
str r0, [r4, #0x0]
b _02049570
_0204952C:
bl sub_02005404
bl GF_SndGetFadeTimer
cmp r0, #0x0
bne _02049570
ldr r1, [r6, #0x0]
@@ -1756,7 +1756,7 @@ _020496BC:
str r0, [r4, #0x0]
b _02049712
_020496CC:
bl sub_02005404
bl GF_SndGetFadeTimer
cmp r0, #0x0
bne _02049712
ldr r1, [r5, #0x0]
@@ -2188,7 +2188,7 @@ _02049A14:
str r0, [r4, #0x0]
b _02049AB2
_02049A42:
bl sub_02005404
bl GF_SndGetFadeTimer
cmp r0, #0x0
bne _02049AB2
mov r0, #0x0
@@ -2346,7 +2346,7 @@ _02049B76:
str r0, [r4, #0x0]
b _02049BDC
_02049B9C:
bl sub_02005404
bl GF_SndGetFadeTimer
cmp r0, #0x0
bne _02049BDC
mov r0, #0x0
@@ -2825,7 +2825,7 @@ _02049F58:
str r0, [r4, #0x0]
b _02049F8E
_02049F68:
bl sub_02005404
bl GF_SndGetFadeTimer
cmp r0, #0x0
bne _02049F8E
ldr r1, [r4, #0x4]

View File

@@ -326,7 +326,7 @@ _0204C416:
str r0, [r4, #0x0]
b _0204C458
_0204C41E:
bl sub_02005404
bl GF_SndGetFadeTimer
cmp r0, #0x0
bne _0204C458
ldr r1, [r6, #0x0]

View File

@@ -338,7 +338,7 @@ _02060A74:
bl IsPaletteFadeFinished
cmp r0, #0x0
beq _02060A84
bl sub_02005404
bl GF_SndGetFadeTimer
cmp r0, #0x0
beq _02060A8A
_02060A84:

View File

@@ -170,8 +170,8 @@ sub_020637E0: ; 0x020637E0
pop {r3, pc}
.balign 4
thumb_func_start sub_020637F0
sub_020637F0: ; 0x020637F0
thumb_func_start FieldSystem_ClearFollowingTrainer
FieldSystem_ClearFollowingTrainer: ; 0x020637F0
push {r4, lr}
ldr r0, [r0, #0xc]
bl Save_VarsFlags_Get

View File

@@ -345,7 +345,7 @@
.extern sub_02005350
.extern sub_0200538C
.extern GF_SndStartFadeOutBGM
.extern sub_02005404
.extern GF_SndGetFadeTimer
.extern sub_02005410
.extern sub_0200541C
.extern sub_02005454
@@ -2568,7 +2568,7 @@
.extern Save_LocalFieldData_Get
.extern sub_02034E48
.extern sub_02034E60
.extern sub_02034E8C
.extern GetMomSpawnId
.extern GetSpecialSpawnWarpData
.extern GetDeathWarpData
.extern sub_02034EF8
@@ -4685,7 +4685,7 @@
.extern sub_020637A8
.extern sub_020637C4
.extern sub_020637E0
.extern sub_020637F0
.extern FieldSystem_ClearFollowingTrainer
.extern sub_02063808
.extern sub_02063888
.extern sub_020638BC

View File

@@ -458,7 +458,7 @@ _022399FA:
str r0, [r4, #0xc]
b _02239AA4
_02239A0A:
bl sub_02005404
bl GF_SndGetFadeTimer
cmp r0, #0
bne _02239AA4
ldr r0, [r4, #0xc]
@@ -517,7 +517,7 @@ _02239A72:
str r0, [r4, #0xc]
b _02239AA4
_02239A84:
bl sub_02005404
bl GF_SndGetFadeTimer
cmp r0, #0
bne _02239AA4
ldr r0, [r4, #0xc]

View File

@@ -36965,7 +36965,7 @@ _0223F308:
strb r0, [r4, #0x10]
pop {r3, r4, r5, pc}
_0223F318:
bl sub_02005404
bl GF_SndGetFadeTimer
cmp r0, #0
bne _0223F3A0
ldrb r0, [r4, #0x10]
@@ -47042,7 +47042,7 @@ _02244132:
strb r0, [r4, #0x10]
pop {r4, r5, r6, r7, pc}
_0224415A:
bl sub_02005404
bl GF_SndGetFadeTimer
cmp r0, #0
bne _022441B2
mov r0, #6
@@ -47738,7 +47738,7 @@ _0224469E:
bl IsBrightnessTransitionActive
cmp r0, #1
bne _02244700
bl sub_02005404
bl GF_SndGetFadeTimer
cmp r0, #0
bne _02244700
ldr r0, [r4]

View File

@@ -41019,7 +41019,7 @@ _021EA42E:
_021EA438:
cmp r0, #1
bne _021EA458
bl sub_02005404
bl GF_SndGetFadeTimer
cmp r0, #0
bne _021EA458
mov r0, #1

View File

@@ -2735,7 +2735,7 @@ _021D89E2:
str r0, [r4]
b _021D8C64
_021D89F2:
bl sub_02005404
bl GF_SndGetFadeTimer
cmp r0, #0
beq _021D89FC
_021D89FA:

View File

@@ -268,7 +268,7 @@ _021D76FA:
ldr r2, [r4]
add r0, #0xb4
bl ov63_021D8260
bl sub_02005404
bl GF_SndGetFadeTimer
cmp r0, #0
bne _021D779C
ldr r0, _021D77A8 ; =0x00000495
@@ -298,7 +298,7 @@ _021D773C:
ldr r2, [r4]
add r0, #0xb4
bl ov63_021D8260
bl sub_02005404
bl GF_SndGetFadeTimer
cmp r0, #0
bne _021D779C
ldr r0, _021D77A8 ; =0x00000495

View File

@@ -338,7 +338,7 @@ _0222D8A6:
bl IsPaletteFadeFinished
cmp r0, #0
beq _0222D8BC
bl sub_02005404
bl GF_SndGetFadeTimer
cmp r0, #0
bne _0222D8BC
add sp, #0xc

View File

@@ -1,5 +1,6 @@
#include "blackout.h"
#include "bg_window.h"
#include "brightness.h"
#include "constants/maps.h"
#include "constants/rgb.h"
#include "msgdata/msg.naix"
@@ -8,17 +9,30 @@
#include "gf_gfx_loader.h"
#include "PAD_pad.h"
#include "render_window.h"
#include "save_local_field_data.h"
#include "script.h" //TODO: temp include, remove when structs are split
#include "text.h"
#include "unk_020051F4.h"
#include "unk_0204AF24.h"
static void Blackout_InitDisplays(BgConfig *bgConfig);
/*static*/ void Blackout_DrawMessage(FieldSystem *fieldSystem, TaskManager *taskManager);
static void Blackout_DrawMessage(FieldSystem *fieldSystem, TaskManager *taskManager);
static BOOL Task_ShowPrintedBlackoutMessage(TaskManager *taskManager);
static void Blackout_PrintMessage(BlackoutScreenEnvironment *environment, s32 msgNo, u8 x, u8 y);
extern void BeginNormalPaletteFade(u32 pattern, u32 typeTop, u32 typeBottom, u16 colour, u32 duration, u32 framesPer, HeapID heapId);
extern BOOL IsPaletteFadeFinished(void);
extern SaveData *FieldSystem_GetSaveData(FieldSystem *fieldSystem);
extern LocalFieldData *Save_LocalFieldData_Get(SaveData *save);
extern u16 LocalFieldData_GetBlackoutSpawn(LocalFieldData *localFieldData);
extern void GetDeathWarpData(u16 spawnId, Location *dest);
extern void GetSpecialSpawnWarpData(u16 spawnId, Location *dest);
extern Location *LocalFieldData_GetSpecialSpawnWarpPtr(LocalFieldData *localFieldData);
extern void sub_02049160(TaskManager *taskManager, Location *location);
extern void FieldSystem_ClearFollowingTrainer(FieldSystem *fieldSystem);
extern void QueueScript(TaskManager *taskManager, u16 script, LocalMapObject *lastInteracted, void *param3);
extern void sub_0204AB0C(void);
extern u16 GetMomSpawnId(void);
static const struct GraphicsBanks Blackout_GraphicsBanks = {
.bg = GX_VRAM_BG_128_B,
@@ -73,7 +87,7 @@ static void Blackout_InitDisplays(BgConfig *bgConfig) {
GfGfxLoader_GXLoadPal(NARC_GRAPHIC_FONT, NARC_font_narc_0006_NCLR, GF_PAL_LOCATION_MAIN_BG, GF_PAL_SLOT_13_OFFSET, 0x20, HEAP_ID_FIELD);
}
/*static*/ void Blackout_DrawMessage(FieldSystem *fieldSystem, TaskManager *taskManager) {
static void Blackout_DrawMessage(FieldSystem *fieldSystem, TaskManager *taskManager) {
BlackoutScreenEnvironment *env = AllocFromHeap(HEAP_ID_FIELD, sizeof(BlackoutScreenEnvironment));
GF_ASSERT(env != NULL);
@@ -156,3 +170,60 @@ static void Blackout_PrintMessage(BlackoutScreenEnvironment *environment, s32 ms
String_Delete(tmpStr);
String_Delete(finStr);
}
BOOL Task_BlackOut(TaskManager *taskManager) {
FieldSystem *fieldSystem = TaskManager_GetFieldSystem(taskManager);
u32 *state = TaskManager_GetStatePtr(taskManager);
LocalFieldData *localFieldData;
Location deathWarp;
u16 deathSpawn;
switch (*state) {
case 0:
localFieldData = Save_LocalFieldData_Get(fieldSystem->saveData);
deathSpawn = LocalFieldData_GetBlackoutSpawn(localFieldData);
GetDeathWarpData(deathSpawn, &deathWarp);
GetSpecialSpawnWarpData(deathSpawn, LocalFieldData_GetSpecialSpawnWarpPtr(localFieldData));
sub_02049160(taskManager, &deathWarp);
FieldSystem_ClearFollowingTrainer(fieldSystem);
(*state)++;
break;
case 1:
GF_SndStartFadeOutBGM(0, 20);
(*state)++;
break;
case 2:
if (GF_SndGetFadeTimer() == 0) {
sub_0204AB0C();
(*state)++;
}
break;
case 3:
SetBlendBrightness(-16, (GXBlendPlaneMask)(GX_BLEND_PLANEMASK_BD | GX_BLEND_PLANEMASK_OBJ | GX_BLEND_PLANEMASK_BG2 | GX_BLEND_PLANEMASK_BG1 | GX_BLEND_PLANEMASK_BG0), SCREEN_MASK_MAIN);
SetBlendBrightness(-16, (GXBlendPlaneMask)(GX_BLEND_PLANEMASK_BD | GX_BLEND_PLANEMASK_OBJ | GX_BLEND_PLANEMASK_BG3 | GX_BLEND_PLANEMASK_BG2 | GX_BLEND_PLANEMASK_BG1 | GX_BLEND_PLANEMASK_BG0), SCREEN_MASK_SUB);
Blackout_DrawMessage(fieldSystem, taskManager);
(*state)++;
break;
case 4:
CallTask_RestoreOverworld(taskManager);
(*state)++;
break;
case 5:
SetBlendBrightness(0, (GXBlendPlaneMask)(GX_BLEND_PLANEMASK_BD | GX_BLEND_PLANEMASK_OBJ | GX_BLEND_PLANEMASK_BG3 | GX_BLEND_PLANEMASK_BG2 | GX_BLEND_PLANEMASK_BG1 | GX_BLEND_PLANEMASK_BG0), SCREEN_MASK_MAIN | SCREEN_MASK_SUB);
if (GetMomSpawnId() == LocalFieldData_GetBlackoutSpawn(Save_LocalFieldData_Get(fieldSystem->saveData))) {
QueueScript(taskManager, 0x7E4, NULL, NULL);
} else {
QueueScript(taskManager, 0x7E5, NULL, NULL);
}
(*state)++;
break;
case 6:
return TRUE;
}
return FALSE;
}
void CallTask_BlackOut(TaskManager *taskManager) {
TaskManager_Call(taskManager, Task_BlackOut, NULL);
}

View File

@@ -1,5 +1,6 @@
#include "global.h"
#include "encounter.h"
#include "blackout.h"
#include "constants/battle.h"
#include "constants/game_stats.h"
#include "save_vars_flags.h"
@@ -27,7 +28,6 @@ extern void sub_02047FA4(BattleSetup *setup, FieldSystem *fieldSystem);
extern BattleSetup *ov06_02244558(u32 param0, FieldSystem *fieldSystem);
extern s32 sub_020475A0(BattleSetup *battleSetup);
extern s32 sub_020475B0(BattleSetup *battleSetup);
extern BOOL Task_BlackOut(TaskManager *taskManager);
extern void sub_0205DD40(u32 param0);
extern u32 sub_0205E128(u32 param0);
extern void sub_0205DED4(FieldSystem *fieldSystem, u32 winFlag, u32 param2);

View File

@@ -3,6 +3,7 @@
#include "PAD_pad.h"
#include "bag.h"
#include "bg_window.h"
#include "blackout.h"
#include "camera.h"
#include "constants/global_fieldmap.h"
#include "constants/items.h"
@@ -249,7 +250,6 @@ extern u16 sub_02053678(u32 trainerId, PlayerGender playerGender, u32 param2);
extern u16 sub_020536D0(PlayerGender playerGender, u16 param1, u16 param2);
extern void sub_02049EA4(TaskManager *taskManager);
extern void LocalFieldData_SetBlackoutSpawn(LocalFieldData *localFieldData, u16 spawnPoint);
extern void CallTask_BlackOut(TaskManager *taskManager);
extern void HealParty(Party *playerParty);
extern void sub_02050024(void);
extern u32 sub_02031810(void);

View File

@@ -65,7 +65,7 @@ BOOL sub_02041464(struct ScriptContext* ctx)
{
#pragma unused(ctx)
if(sub_02005404() == 0)
if(GF_SndGetFadeTimer() == 0)
return TRUE;
else
return FALSE;

View File

@@ -3,6 +3,7 @@
#include "SPI_mic.h"
#include "SPI_pm.h"
#include "unk_020040F4.h"
#include "unk_020051F4.h"
#include "sound_chatot.h"
static struct SoundData sSoundDataBuffer;
@@ -17,10 +18,6 @@ void sub_02004088(struct SoundData *);
void sub_020040A4(struct SoundData *);
void sub_020040DC(void);
extern void sub_0200521C(int);
extern void sub_0200538C(int, int, int);
extern BOOL sub_02005404(void);
void InitSoundData(struct SaveChatotSoundClip * chatot, struct Options * options)
{
struct SoundData * sdat = GetSoundDataPointer();
@@ -59,26 +56,26 @@ void sub_02003C40(void)
sub_02003CE8(2);
break;
case 3:
if (!sub_02005404())
if (GF_SndGetFadeTimer() == 0)
sub_02003CE8(2);
break;
case 4:
if (!sub_02005404())
if (GF_SndGetFadeTimer() == 0)
sub_02003CE8(2);
break;
case 5:
if (!sub_02005404() && !sub_02004D94())
if (GF_SndGetFadeTimer() == 0 && !sub_02004D94())
{
sub_020040DC();
sub_0200521C(sdat->unk_BCD0E);
}
break;
case 6:
if (!sub_02005404() && !sub_02004D94())
if (GF_SndGetFadeTimer() == 0 && !sub_02004D94())
{
sub_020040DC();
sub_0200521C(sdat->unk_BCD0E);
sub_0200538C(0x7F, (int)sdat->unk_BCD08, 0);
sub_0200538C(0x7F, sdat->unk_BCD08, 0);
}
break;
}

View File

@@ -1341,7 +1341,7 @@ void sub_0200516C(u32 param0)
void sub_020051AC(void)
{
if (sub_02005404() == 0 && GF_SndPlayerGetSeqNo(GetSoundPlayer(0)) != -1 &&
if (GF_SndGetFadeTimer() == 0 && GF_SndPlayerGetSeqNo(GetSoundPlayer(0)) != -1 &&
sub_02004124() != 0x47e)
{

View File

@@ -124,7 +124,7 @@ void sub_02005374()
sub_02003CE8(0);
}
void sub_0200538C(s32 param0, u16 param1, u32 param2)
void sub_0200538C(s32 param0, u32 param1, u32 param2)
{
u8 r0 = sub_020048D0(sub_02004124());
if (r0 == 0xff)
@@ -151,7 +151,7 @@ void GF_SndStartFadeOutBGM(u16 param0, u16 param1)
return;
}
if (!sub_02005404())
if (GF_SndGetFadeTimer() == 0)
{
GF_SndPlayerMoveVolume(sub_02004018(r6), param0, param1);
sub_02004D74(param1);
@@ -160,7 +160,7 @@ void GF_SndStartFadeOutBGM(u16 param0, u16 param1)
sub_02003CE8(4);
}
u16 sub_02005404()
u16 GF_SndGetFadeTimer()
{
return *(u16 *)sub_02003D38(6);
}

View File

@@ -38,7 +38,7 @@ BOOL sub_0204AF6C(struct TaskManager *taskManager)
return FALSE;
}
void CallTask_RestoreOverworld(struct TaskManager *taskManager) //TODO: RestoreOverworld
void CallTask_RestoreOverworld(struct TaskManager *taskManager)
{
struct FieldSystem *fieldSystem = TaskManager_GetFieldSystem(taskManager);
if(sub_0203739C(fieldSystem))

View File

@@ -16,5 +16,7 @@ typedef struct BlackoutScreenEnvironment {
MessageFormat *msgFmt;
} BlackoutScreenEnvironment;
BOOL Task_BlackOut(TaskManager *taskManager);
void CallTask_BlackOut(TaskManager *taskManager);
#endif //POKEDIAMOND_BLACKOUT_H

View File

@@ -0,0 +1,8 @@
#ifndef POKEDIAMOND_SAVE_LOCAL_FIELD_DATA_H
#define POKEDIAMOND_SAVE_LOCAL_FIELD_DATA_H
typedef struct LocalFieldData {
} LocalFieldData; //TODO: populate
#endif //POKEDIAMOND_SAVE_LOCAL_FIELD_DATA_H

View File

@@ -6,6 +6,7 @@
#include "camera.h"
#include "fashion_case.h"
#include "field_player_avatar.h"
#include "save_local_field_data.h"
#include "msgdata.h"
#include "render_window.h"
#include "save.h"
@@ -67,10 +68,6 @@ typedef struct ScrCmdUnkStruct00F4 {
void *unk2C;
} ScrCmdUnkStruct00F4; //todo identify and move to own file
typedef struct LocalFieldData {
} LocalFieldData; //todo fill out and move to own file
typedef struct RoamerSaveData {
} RoamerSaveData; //todo: fill out and move to own file

View File

@@ -12,9 +12,9 @@ u32 sub_020052B8(u16 param0, u32 param1, int playerNo);
u32 sub_02005308(u32 param0, u16 param1);
void sub_02005350(u16 param0, u32 param1);
void sub_02005374();
void sub_0200538C(s32 param0, u16 param1, u32 param2);
void sub_0200538C(s32 param0, u32 param1, u32 param2);
void GF_SndStartFadeOutBGM(u16 param0, u16 param1);
u16 sub_02005404();
u16 GF_SndGetFadeTimer();
u16 sub_02005410(u16 param0);
void sub_0200541C();
void sub_02005454();