blob: fcb9f821e9d27170847da2e36353378184a1866d (
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
90
91
92
93
94
95
96
97
98
99
100
101
102
103
104
105
106
107
108
109
110
111
112
113
114
115
116
117
118
119
120
121
122
123
124
125
126
|
#ifndef M_PLAY_H
#define M_PLAY_H
#include "m_collision_obj.h"
#include "m_event.h"
#include "m_submenu.h"
#include "ultra64.h"
#include "game.h"
#include "gfx.h"
#include "m_actor.h"
#include "m_kankyo.h"
#include "PreRender.h"
#include "unknown_structs.h"
#include "sys_matrix.h"
#include "unk.h"
#include "m_common_data.h"
#include "m_lib.h"
#include "m_view.h"
#include "m_lights.h"
#include "m_collision_bg.h"
#include "m_pause.h"
#include "m_fbdemo_fade.h"
#include "m_fbdemo_wipe1.h"
#include "m_fbdemo_triforce.h"
#include "m_scene.h"
#include "683030.h"
struct Actor;
struct ActorEntry;
struct Game_Play;
struct SceneDmaStatus;
typedef void (*Game_Play_unk_1C58)(struct Actor*);
typedef UNK_RET (*Game_Play_unk_2208)(struct Actor*, struct Game_Play*);
typedef void (*FBDemoInitProc)(void*);
typedef void (*FBDemoDestroyProc)(void*, struct Game_Play*);
typedef void (*FBDemoMoveProc)(void*, u8);
typedef void (*FBDemoDrawProc)(void*, Gfx**);
typedef void (*FBDemoStartUpProc)(void*);
typedef void (*FBDemoSetTypeProc)(void*, s32);
typedef void (*FBDemoSetColorProc)(void*, u32);
typedef void (*FBDemoUnkProc)(void);
typedef s32 (*FBDemoIsFinishProc)(void*);
typedef struct Game_PlayfbDemoInfo {
/* 0x00 */ FBDemoInitProc init;
/* 0x04 */ FBDemoDestroyProc destroy;
/* 0x08 */ FBDemoMoveProc move;
/* 0x0C */ FBDemoDrawProc draw;
/* 0x10 */ FBDemoStartUpProc startUp;
/* 0x14 */ FBDemoSetTypeProc setType;
/* 0x18 */ FBDemoSetColorProc setColor;
/* 0x1C */ FBDemoUnkProc unk_1C;
/* 0x20 */ FBDemoIsFinishProc isFinish;
} Game_PlayfbDemoInfo; // size = 0x24
typedef union Game_Play_FBDemo {
fbDemoWipe1 wipe1;
fbDemoTriforce triforce;
fbDemoFade fade;
} Game_Play_FBDemo; // size = 0x218
typedef struct Game_Play_Unk_1EE8 {
/* 0x000 */ Game_Play_FBDemo fbdemo;
/* 0x218 */ s32 wipeType;
/* 0x21C */ Game_PlayfbDemoInfo fbdemoInfo;
} Game_Play_Unk_1EE8; // size = 0x240
typedef struct Game_Play {
/* 0x0000 */ Game state;
/* 0x00E0 */ s16 unk_00E0;
/* 0x00E2 */ UNK_TYPE1 unk_00E2[0x2];
/* 0x00E4 */ s8 unk_00E4;
/* 0x00E5 */ s8 unk_00E5;
/* 0x00E6 */ UNK_TYPE1 unk_00E6[0x2];
/* 0x00E8 */ UNK_TYPE1 unk_00E8[0x24];
/* 0x010C */ void* unk_010C;
/* 0x0110 */ ObjectExchangeBank objectExchangeBank;
/* 0x1938 */ View view;
/* 0x1A60 */ Camera2 camera;
/* 0x1B98 */ Kankyo kankyo;
/* 0x1C60 */ Global_light glight;
/* 0x1C70 */ Pause pause;
/* 0x1C78 */ ActorInfo actorInfo;
/* 0x1CBC */ Submenu submenu;
/* 0x1DAC */ s8 unk_1DAC;
/* 0x1DAD */ UNK_TYPE1 unk_1DAD[0x3];
/* 0x1DB0 */ u8* groundTexPtrs[2];
/* 0x1DB8 */ u8* groundPalPtrs[2];
/* 0x1DC0 */ PreRender unk_1DC0;
/* 0x1E10 */ DoorInfo sceneDoorInfo;
/* 0x1E18 */ s32 unk_1E18;
/* 0x1E1C */ MtxF viewProjectionMtxF;
/* 0x1E5C */ MtxF billboardMtxF;
/* 0x1E9C */ Mtx* unk_1E9C;
/* 0x1EA0 */ u32 unk_1EA0;
/* 0x1EA4 */ UNK_TYPE1 unk_1EA4[0x1];
/* 0x1EA5 */ u8 unk_1EA5;
/* 0x1EA6 */ u8 unk_1EA6;
/* 0x1EA7 */ u8 unk_1EA7;
/* 0x1EA8 */ struct ActorEntry* unk_1EA8;
/* 0x1EAC */ struct ActorEntry* unk_1EAC;
/* 0x1EB0 */ s16* unk_1EB0;
/* 0x1EB4 */ s16* unk_1EB4;
/* 0x1EB8 */ s32 unk_1EB8;
/* 0x1EBC */ Event event;
/* 0x1ECC */ UNK_TYPE1 unk_1ECC[0x14];
/* 0x1EE0 */ u8 unk_1EE0;
/* 0x1EE1 */ u8 unk_1EE1;
/* 0x1EE2 */ u8 unk_1EE2;
/* 0x1EE3 */ u8 unk_1EE3;
/* 0x1EE4 */ UNK_TYPE1 unk_1EE4[0x4];
/* 0x1EE8 */ Game_Play_Unk_1EE8 unk_1EE8;
/* 0x2128 */ fbDemoFade unk_2128;
/* 0x2138 */ CollisionCheck unk_2138;
/* 0x2208 */ Game_Play_unk_2208 unk_2208;
/* 0x220C */ s32 unk_220C;
/* 0x2210 */ struct SceneDmaStatus* unk_2210;
/* 0x2214 */ UNK_TYPE1 unk_2214[0x1FC];
} Game_Play; // size = 0x2410
void play_init(Game* game);
void play_cleanup(Game* game);
#endif
|