blob: c0e7eac51402f9db79b5ca750e00b62f9eadd4cf (
plain)
1
2
3
4
5
6
7
8
9
10
11
12
13
14
15
16
17
18
19
20
21
22
23
24
25
26
27
28
29
30
31
32
33
34
35
36
37
38
39
40
41
42
43
44
45
46
47
48
49
50
51
52
53
54
55
56
57
58
59
60
61
62
63
64
65
66
67
68
69
70
71
72
73
74
75
76
77
78
79
80
81
82
83
84
85
86
87
88
89
|
#include "global.h"
#include "code_80521D0.h"
#include "dungeon_entity.h"
#include "dungeon_global_data.h"
#include "file_system.h"
#include "play_time.h"
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 const char *gUnknown_80FD040; // It became brighter on the floor
extern struct MapTile *GetMapEntity(u32, u32);
// Luminous Orb???
void HandleLuminousOrbAction(struct DungeonEntity *param_1)
{
struct MapTile *mapTile;
int XCoord;
int YCoord;
gDungeonGlobalData->unk1820B = 1;
for(YCoord = 0; YCoord < DUNGEON_MAX_SIZE_Y; YCoord++)
{
for(XCoord = 0; XCoord < DUNGEON_MAX_SIZE_X; XCoord++)
{
mapTile = GetMapEntity(XCoord, YCoord);
mapTile->unk4 = mapTile->unk4 | 1;
}
}
sub_803F580(0);
sub_8049ED4();
sub_8040A84();
SendMessage(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);
}
|