d_a_obj_bmWindow OK (#2148)

This commit is contained in:
hatal175
2024-05-05 19:13:52 +03:00
committed by GitHub
parent 9f55d3f37a
commit 5d87d0cfa2
37 changed files with 401 additions and 2292 deletions
+2 -1
View File
@@ -295,7 +295,7 @@ public:
FLG2_UNK_80000 = 0x80000,
FLG2_FORCE_GAMEOVER = 0x40000,
FLG2_UNK_20000 = 0x20000,
FLG2_UNK_10000 = 0x10000,
FLG2_WOLF_DASH_AUTO_JUMP = 0x10000,
FLG2_SCN_CHG_START = 0x8000,
FLG2_UNK_4000 = 0x4000,
FLG2_UNK_2000 = 0x2000,
@@ -831,6 +831,7 @@ public:
void onForceGameOver() { onNoResetFlg2(FLG2_FORCE_GAMEOVER); }
u32 checkBoarSingleBattle() const { return checkNoResetFlg2(FLG2_BOAR_SINGLE_BATTLE); }
u32 checkWolfDashAutoJump() const { return checkNoResetFlg2(FLG2_WOLF_DASH_AUTO_JUMP); }
void changeOriginalDemo() {
mDemo.setOriginalDemoType();
+1 -5
View File
@@ -3,6 +3,7 @@
#include "SSystem/SComponent/c_xyz.h"
#include "f_op/f_op_scene.h"
#include "m_Do/m_Do_hostIO.h"
class mDoDvdThd_mountXArchive_c;
class mDoDvdThd_toMainRam_c;
@@ -24,11 +25,6 @@ public:
#endif
};
class mDoHIO_entry_c {
public:
virtual ~mDoHIO_entry_c() {}
};
class dScnPly_preLoad_HIO_c : public mDoHIO_entry_c {
public:
/* 8025ADC0 */ virtual ~dScnPly_preLoad_HIO_c() {}
+12
View File
@@ -9,6 +9,7 @@
#include "d/bg/d_bg_s_lin_chk.h"
#include "d/bg/d_bg_s_wtr_chk.h"
#include "d/bg/d_bg_s_roof_chk.h"
#include "m_Do/m_Do_hostIO.h"
#define fopAcM_SetupActor(ptr,ClassName) \
if (!fopAcM_CheckCondition(ptr, fopAcCnd_INIT_e)) { \
@@ -61,6 +62,17 @@ struct fopAcM_search_prm {
/* 0x0A */ s8 mSubType;
};
// define to avoid vtable mess in WIP TUs
#ifndef HIO_entry_c_NO_VIRTUAL
struct fOpAcm_HIO_entry_c : public mDoHIO_entry_c {
virtual ~fOpAcm_HIO_entry_c() {}
};
#else
struct fOpAcm_HIO_entry_c {
~fOpAcm_HIO_entry_c();
};
#endif
class l_HIO {
public:
/* 8001E098 */ ~l_HIO() {}
@@ -2,5 +2,88 @@
#define D_A_OBJ_BMWINDOW_H
#include "dolphin/types.h"
#include "d/bg/d_bg_s_movebg_actor.h"
#include "d/cc/d_cc_d.h"
#include "f_op/f_op_actor_mng.h"
class daBmWindow_c : public dBgS_MoveBgActor
{
public:
enum Mode {
WAIT,
BREAK,
BREAK_EFF,
};
/* 80BB8350 */ void setBaseMtx();
/* 80BB8400 */ int CreateHeap();
/* 80BB846C */ int create();
/* 80BB88D8 */ int Execute(Mtx**);
/* 80BB8930 */ void windowProc();
/* 80BB8B3C */ void init_modeWait();
/* 80BB8B48 */ void modeWait();
/* 80BB8FDC */ int checkActorInRectangle(fopAc_ac_c*, cXyz const*, cXyz const*);
/* 80BB90E0 */ void init_modeBreak();
/* 80BB920C */ void modeBreak();
/* 80BB922C */ void init_modeBreakEff();
/* 80BB9304 */ void modeBreakEff();
/* 80BB9324 */ void setBreakEffect(int);
/* 80BB9494 */ int Draw();
/* 80BB9548 */ int Delete();
/* 0x5A0 */ request_of_phase_process_class mPhase;
/* 0x5A8 */ J3DModel* mModel;
/* 0x5AC */ u8 mMode;
/* 0x5B0 */ dCcD_Stts field_0x5b0;
/* 0x5B0 */ dCcD_Cyl field_0x5ec[7];
/* 0xE98 */ u8 field_0xe90;
/* 0xE98 */ u8 field_0xe91;
/* 0xE98 */ u32 field_0xe94;
/* 0xE98 */ csXyz field_0xe98;
/* 0xEA0 */ f32 field_0xea0;
/* 0xEA0 */ f32 field_0xea4;
/* 0xEA0 */ f32 field_0xea8;
/* 0xEA0 */ f32 field_0xeac;
/* 0xEA0 */ f32 field_0xeb0;
/* 0xEA0 */ f32 field_0xeb4;
/* 0xEB8 */ cXyz field_0xeb8;
/* 0xEA0 */ f32 field_0xec4;
/* 0xEA0 */ f32 field_0xec8;
/* 0xEA0 */ f32 field_0xecc;
/* 0xEA0 */ f32 field_0xed0;
/* 0xEA0 */ f32 field_0xed4;
/* 0xEA0 */ f32 field_0xed8;
/* 0xEDC */ u16 field_0xedc;
/* 0xEDE */ u8 field_0xede;
static dCcD_SrcGObjInf const mCcDObjInfo;
static dCcD_SrcCyl mCcDCyl;
};
class daBmWindow_HIO_c : public fOpAcm_HIO_entry_c {
public:
/* 80BB820C */ daBmWindow_HIO_c();
/* 80BB964C */ virtual ~daBmWindow_HIO_c() {}
/* 0x04 */ u8 field_0x04;
/* 0x05 */ u8 field_0x05;
/* 0x08 */ f32 field_0x08;
/* 0x0c */ f32 field_0x0c;
/* 0x10 */ f32 field_0x10;
/* 0x14 */ f32 field_0x14;
/* 0x18 */ f32 field_0x18;
/* 0x1C */ f32 field_0x1c;
/* 0x20 */ f32 field_0x20;
/* 0x24 */ f32 field_0x24;
/* 0x28 */ f32 field_0x28;
/* 0x2C */ f32 field_0x2c;
/* 0x30 */ f32 field_0x30;
/* 0x34 */ f32 field_0x34;
/* 0x38 */ u8 field_0x38;
/* 0x39 */ u8 field_0x39;
/* 0x3A */ u8 field_0x3a;
/* 0x3B */ u8 field_0x3b;
};
#endif /* D_A_OBJ_BMWINDOW_H */