mirror of
https://github.com/zeldaret/tp
synced 2026-06-28 19:20:51 -04:00
more d_save funcs OK, initial map out of dcomifg_play_c and it's classes
This commit is contained in:
@@ -1,42 +1,17 @@
|
||||
#ifndef __D_COM_INF_GAME_H_
|
||||
#define __D_COM_INF_GAME_H_
|
||||
|
||||
#include "d/d_attention/d_attention.h"
|
||||
#include "d/d_bg/d_bg_s/d_bg_s.h"
|
||||
#include "d/d_bg/d_bg_w/d_bg_w_base/d_bg_w_base.h"
|
||||
#include "d/d_cc/d_cc_s/d_cc_s.h"
|
||||
#include "d/d_drawlist/d_drawlist.h"
|
||||
#include "d/d_event/d_event/d_event.h"
|
||||
#include "d/d_event/d_event_manager/d_event_manager.h"
|
||||
#include "d/d_resource/d_resource.h"
|
||||
#include "d/d_save/d_save/d_save.h"
|
||||
|
||||
class dComIfG_play_c {
|
||||
public:
|
||||
void ct(void);
|
||||
void init(void);
|
||||
u8 unk[0x100];
|
||||
};
|
||||
|
||||
class dCcMassS_Mng {
|
||||
public:
|
||||
u8 unk[0x274];
|
||||
};
|
||||
|
||||
class dAttDraw_c {
|
||||
public:
|
||||
u8 unk[0x178];
|
||||
};
|
||||
|
||||
class dAttList_c {
|
||||
u8 unk[0x14];
|
||||
};
|
||||
|
||||
class dDlst_window_c {
|
||||
u8 unk[0x2C];
|
||||
};
|
||||
|
||||
class dComIfG_camera_info_class {
|
||||
u8 unk[0x38];
|
||||
};
|
||||
|
||||
struct mDoExt_bckAnm {};
|
||||
#include "d/d_stage/d_stage.h"
|
||||
#include "d/d_vibration/d_vibration.h"
|
||||
|
||||
struct item_func {
|
||||
float hearts; // bf80
|
||||
@@ -59,38 +34,95 @@ struct item_func {
|
||||
s16 seeds; // bfb6
|
||||
};
|
||||
|
||||
// 16 bytes too big, figure out later
|
||||
class dComIfG_camera_info_class {
|
||||
public:
|
||||
private:
|
||||
u8 field_0x0[12];
|
||||
cXyz field_0xc;
|
||||
cXyz field_0x18;
|
||||
};
|
||||
|
||||
class dDlst_window_c {
|
||||
public:
|
||||
private:
|
||||
float view_port1;
|
||||
float view_port2;
|
||||
float view_port3;
|
||||
float view_port4;
|
||||
float view_port5;
|
||||
float view_port6;
|
||||
float scissor1;
|
||||
float scissor2;
|
||||
float scissor3;
|
||||
float scissor4;
|
||||
int camera_id;
|
||||
};
|
||||
|
||||
class dComIfG_play_c {
|
||||
public:
|
||||
void ct(void);
|
||||
void init(void);
|
||||
u32 getNowVibration();
|
||||
dStage_roomControl_c& getRoomControl() { return room_control; }
|
||||
item_func& getGiveItem() { return give_item; }
|
||||
u8& getUnkHeart() { return unk_heart; }
|
||||
private:
|
||||
/* 0x00000 */ dBgS dbgs;
|
||||
/* 0x0143C */ dCcS dccs;
|
||||
/* 0x03F08 */ u8 field_0x3f08[0x16];
|
||||
/* 0x03F1E */ dStage_nextStage_c next_stage;
|
||||
/* 0x03F2F */ u8 padding;
|
||||
/* 0x03F30 */ dStage_stageDt_c stage_data;
|
||||
/* 0x03F34 */ dStage_roomControl_c room_control;
|
||||
/* 0x03FD8 */ dEvt_control_c event_control;
|
||||
/* 0x0409C */ u8 field_0x409c[0x24];
|
||||
/* 0x040C0 */ dEvent_manager_c event_manager;
|
||||
/* 0x0475B */ u8 field_0x475B[0x2D];
|
||||
/* 0x04788 */ void* vtable;
|
||||
/* 0x0478C */ u8 field_0x478c[0x1C];
|
||||
/* 0x047A8 */ dAttDraw_c attention_draw;
|
||||
/* 0x0490C */ u8 field_0x490c[0x1AC];
|
||||
/* 0x04AB8 */ dAttList_c attention_list1;
|
||||
/* 0x04ACC */ u8 field_0x4acc[0x94];
|
||||
/* 0x04B60 */ dAttList_c attention_list2;
|
||||
/* 0x04B74 */ u8 field_0x4b74[0x44];
|
||||
/* 0x04BB8 */ dAttList_c attention_list3;
|
||||
/* 0x04BCC */ u8 field_0x4bcc[0xBC];
|
||||
/* 0x04c88 */ void* vtable2;
|
||||
/* 0x04C8C */ u8 field_0x4c8c[0x55];
|
||||
/* 0x04CE1 */ u8 field_0x4ce1[0x37];
|
||||
/* 0x04D18 */ dVibration_c vibration;
|
||||
/* 0x04DA8 */ u8 field_0x4da8[0x5C];
|
||||
/* 0x04E04 */ u32 field_0x4e04;
|
||||
/* 0x04E08 */ u8 field_0x4e08[0x4];
|
||||
/* 0x04E0C */ u8 field_0x4e0c[0x4];
|
||||
/* 0x04E10 */ dDlst_window_c draw_list_window;
|
||||
/* 0x04ED4 */ dComIfG_camera_info_class camera_info;
|
||||
/* 0x04E60 */ u8 field_0x4e60[0x28];
|
||||
/* 0x04E88 */ item_func give_item;
|
||||
/* 0x04EC0 */ u8 field_0x4ec0[0xBE];
|
||||
/* 0x04F7E */ u8 unk_heart;
|
||||
/* 0x04F7F */ u8 field_0x4f7f[0x79];
|
||||
/* 0x04FF8 */ u32 field_0x4ff8;
|
||||
/* 0x04FFC */ u32 field_0x4ffc;
|
||||
/* 0x05000 */ u32 field_0x5000;
|
||||
/* 0x05004 */ u32 field_0x5004;
|
||||
/* 0x05008 */ u8 field_0x5008[0x1C];
|
||||
/* 0x05024 */ u8 field_0x5024[8];
|
||||
};
|
||||
|
||||
class dComIfG_inf_c {
|
||||
public:
|
||||
item_func& getPlayGiveItem() { return play.getGiveItem(); }
|
||||
u8& getPlayUnkHeart() { return play.getUnkHeart(); }
|
||||
/* 0x00000 */ dSv_info_c info;
|
||||
/* 0x00EEC */ u8 unk2[0x4C];
|
||||
/* 0x00EEC */ u8 field_0xeec[0x3C];
|
||||
/* 0x00F28 */ u32 saveTotalTime;
|
||||
/* 0x00F2C */ u32 saveStartTime;
|
||||
/* 0x00F30 */ u32 field_0xf30;
|
||||
/* 0x00F34 */ u32 field_0xf34;
|
||||
/* 0x00F38 */ dComIfG_play_c play;
|
||||
/* 0x01038 */ u8 unk3[0x3B50];
|
||||
/* 0x04B88 */ dCcMassS_Mng mass_mng;
|
||||
/* 0x04DFC */ u8 unk4[0xCC]; // might be part of dCcMassS_Mng
|
||||
/* 0x04EC8 */ dEvt_control_c event_control;
|
||||
/* 0x04FF8 */ dEvent_manager_c event_manager; // 0x6C8
|
||||
/* 0x056C0 */ u8 unk5[0x20]; // vtables?
|
||||
/* 0x056E0 */ dAttDraw_c att_draw;
|
||||
/* 0x05858 */ u8 unk6[0x198];
|
||||
/* 0x059F0 */ dAttList_c att_list1;
|
||||
/* 0x05A04 */ u8 unk8[0x94];
|
||||
/* 0x05A98 */ dAttList_c att_list2;
|
||||
/* 0x05AAC */ u8 unk9[0x44];
|
||||
/* 0x05AF0 */ dAttList_c att_list3;
|
||||
/* 0x05B04 */ u8 unk10[0x244];
|
||||
/* 0x05D48 */ dDlst_window_c draw_list_window;
|
||||
/* 0x05D74 */ dComIfG_camera_info_class camera_info_class;
|
||||
/* 0x05DAC */ u8 unk11[0x14];
|
||||
/* 0x05DC0 */ item_func give_item;
|
||||
/* 0x05DF8 */ u8 unk35[0x144];
|
||||
/* 0x05F3C */ u32 unk12;
|
||||
/* 0x05F30 */ u32 unk13;
|
||||
/* 0x05F34 */ u32 unk14;
|
||||
/* 0x05F38 */ u32 unk15;
|
||||
/* 0x05F3C */ u32 unk16;
|
||||
/* 0x05F40 */ u8 unk17[0x24];
|
||||
/* 0x05F64 */ dDlst_list_c draw_list_list;
|
||||
/* 0x05FD8 */ u8 unk35[0x1612C];
|
||||
/* 0x1C104 */ u8 unk18[0x1F4]; // might be part of dDlst_list_c
|
||||
/* 0x1C2F8 */ dRes_info_c resource_info1;
|
||||
/* 0x1C31C */ u8 unk19[0x11DC];
|
||||
@@ -114,4 +146,35 @@ public:
|
||||
|
||||
extern dComIfG_inf_c g_dComIfG_gameInfo;
|
||||
|
||||
// int dComIfGp_roomControl_getZoneNo(int zone_no) {
|
||||
// return g_dComIfG_gameInfo.play.getRoomControl().getZoneNo(zone_no);
|
||||
// }
|
||||
|
||||
// BOOL dComIfGs_isEventBit(u16 event_no) {
|
||||
// return g_dComIfG_gameInfo.info.getSaveFile().getEventFlags().isEventBit(event_no);
|
||||
// }
|
||||
|
||||
// void dComIfGs_offEventBit(u16 event_no) {
|
||||
// g_dComIfG_gameInfo.info.getSaveFile().getEventFlags().offEventBit(event_no);
|
||||
// }
|
||||
|
||||
// BOOL dComIfGs_isItemFirstBit(u8 i_no) {
|
||||
// return g_dComIfG_gameInfo.info.getSaveFile().getPlayerGetItem().isFirstBit(i_no);
|
||||
// }
|
||||
|
||||
// void dComIfGs_setItem(int item_slot, u8 item_id) {
|
||||
// g_dComIfG_gameInfo.info.getSaveFile().getPlayer().getPlayerItem().setItem(item_slot, item_id);
|
||||
// }
|
||||
|
||||
// u16 dComIfGs_getOil(void) {
|
||||
// return g_dComIfG_gameInfo.info.getSaveFile()
|
||||
// .getPlayer()
|
||||
// .getPlayerStatusA()
|
||||
// .getCurrentLanternOil();
|
||||
// }
|
||||
|
||||
// void dComIfGs_setOil(u16 oil_value) {
|
||||
// g_dComIfG_gameInfo.info.getSaveFile().getPlayer().getPlayerStatusA().setLanternOil(oil_value);
|
||||
// }
|
||||
|
||||
#endif
|
||||
Reference in New Issue
Block a user