mirror of
https://github.com/pret/pmd-red.git
synced 2026-09-30 23:17:19 -04:00
3e5dd1d047
* death by 74 files * 20% reached * doc move stuff in pokemon * fix undef reference * doc more and plumb a few more constanst for num party members and num moves * that struct is def PokemonMove.. clean up all code with it
98 lines
2.2 KiB
C
98 lines
2.2 KiB
C
#include "global.h"
|
|
#include "play_time.h"
|
|
#include "file_system.h"
|
|
#include "dungeon_global_data.h"
|
|
|
|
extern struct DungeonGlobalData *gDungeonGlobalData;
|
|
extern s32 gUnknown_80F6568[];
|
|
extern u8 gUnknown_202EE01;
|
|
extern const char gUnknown_80F6604; // "zmappat"
|
|
extern struct FileArchive gDungeonFileArchive;
|
|
extern struct OpenedFile *gUnknown_202EE04;
|
|
|
|
extern void sub_803F7BC(void);
|
|
extern void sub_80060EC(void);
|
|
extern void sub_800CB20(void);
|
|
extern void LoadBufferedInputs(void);
|
|
extern void xxx_call_update_bg_sound_input(void);
|
|
extern void sub_8083F58(void);
|
|
extern void sub_8011860(void);
|
|
|
|
extern void sub_803F580(u32);
|
|
extern void sub_8049ED4();
|
|
extern void sub_8040A84();
|
|
extern void sub_80522A8(u32, const char *);
|
|
|
|
extern const char *gUnknown_80FD040; // It became brighter on the floor
|
|
|
|
struct unk8049590
|
|
{
|
|
u32 unk0;
|
|
u16 unk4;
|
|
};
|
|
|
|
extern struct unk8049590 *sub_8049590(u32, u32);
|
|
|
|
// Luminous Orb???
|
|
void sub_804002C(u32 param_1)
|
|
{
|
|
struct unk8049590 *iVar1;
|
|
int innerCounter;
|
|
int iVar3;
|
|
int iVar4;
|
|
|
|
gDungeonGlobalData->unk1820B = 1;
|
|
iVar3 = 0;
|
|
do {
|
|
innerCounter = 0;
|
|
iVar4 = iVar3 + 1;
|
|
do {
|
|
iVar1 = sub_8049590(innerCounter, iVar3);
|
|
iVar1->unk4 = iVar1->unk4 | 1;
|
|
innerCounter++;
|
|
} while (innerCounter < 0x38);
|
|
iVar3 = iVar4;
|
|
} while (iVar4 < 0x20);
|
|
sub_803F580(0);
|
|
sub_8049ED4();
|
|
sub_8040A84();
|
|
sub_80522A8(param_1, gUnknown_80FD040);
|
|
}
|
|
|
|
void sub_8040094(u8 r0)
|
|
{
|
|
gDungeonGlobalData->unk18217 = r0;
|
|
sub_803F7BC();
|
|
sub_80060EC();
|
|
IncrementPlayTime(gPlayTimeRef);
|
|
sub_800CB20();
|
|
LoadBufferedInputs();
|
|
xxx_call_update_bg_sound_input();
|
|
sub_8083F58();
|
|
sub_8011860();
|
|
}
|
|
|
|
void sub_80400D4(void)
|
|
{
|
|
s32 temp;
|
|
temp = gDungeonGlobalData->unk18200;
|
|
if(temp == 0)
|
|
return;
|
|
if(temp > 0x1E)
|
|
temp = 0x1F;
|
|
gDungeonGlobalData->unk181FC = gUnknown_80F6568[temp];
|
|
gDungeonGlobalData->unk18200--;
|
|
if(gDungeonGlobalData->unk18200 == 0)
|
|
gDungeonGlobalData->unk18200 = gDungeonGlobalData->unk18204;
|
|
}
|
|
|
|
void sub_8040124(void)
|
|
{
|
|
gUnknown_202EE01 = 0;
|
|
}
|
|
|
|
void sub_8040130(void)
|
|
{
|
|
gUnknown_202EE04 = OpenFileAndGetFileDataPtr(&gUnknown_80F6604, &gDungeonFileArchive);
|
|
}
|