summaryrefslogtreecommitdiff
path: root/include
diff options
context:
space:
mode:
Diffstat (limited to 'include')
-rw-r--r--include/d/actor/d_a_obj_groundwater.h60
-rw-r--r--include/d/d_bg_s_movebg_actor.h2
-rw-r--r--include/d/d_com_inf_game.h4
3 files changed, 57 insertions, 9 deletions
diff --git a/include/d/actor/d_a_obj_groundwater.h b/include/d/actor/d_a_obj_groundwater.h
index c0ca0b8ffd..b5f4bd3ed2 100644
--- a/include/d/actor/d_a_obj_groundwater.h
+++ b/include/d/actor/d_a_obj_groundwater.h
@@ -1,7 +1,10 @@
#ifndef D_A_OBJ_GROUNDWATER_H
#define D_A_OBJ_GROUNDWATER_H
+#include "SSystem/SComponent/c_phase.h"
+#include "d/d_bg_s_movebg_actor.h"
#include "f_op/f_op_actor_mng.h"
+#include "m_Do/m_Do_hostIO.h"
/**
* @ingroup actors-objects
@@ -11,13 +14,23 @@
* @details
*
*/
-class daGrdWater_c : public fopAc_ac_c {
+class daGrdWater_c : public dBgS_MoveBgActor {
public:
+ typedef void (daGrdWater_c::*modeFunc)();
+
+ enum Mode {
+ WAIT,
+ LEVEL_UP_A,
+ LEVEL_DOWN_A,
+ LEVEL_UP_B,
+ LEVEL_DOWN_B,
+ };
+
/* 80C13540 */ void setBaseMtx();
- /* 80C13618 */ void CreateHeap();
- /* 80C139E4 */ void create();
+ /* 80C13618 */ int CreateHeap();
+ /* 80C139E4 */ int create();
/* 80C13DB0 */ daGrdWater_c();
- /* 80C13FEC */ void Execute(f32 (**)[3][4]);
+ /* 80C13FEC */ int Execute(Mtx**);
/* 80C14194 */ void init_modeWait();
/* 80C141A0 */ void modeWait();
/* 80C141A4 */ void init_modeLevelUpA();
@@ -28,19 +41,48 @@ public:
/* 80C14414 */ void modeLevelUpB();
/* 80C14484 */ void init_modeLevelDownB();
/* 80C144F8 */ void modeLevelDownB();
- /* 80C14554 */ void Draw();
- /* 80C147EC */ void Delete();
+ /* 80C14554 */ int Draw();
+ /* 80C147EC */ int Delete();
+
+ u8 getSw() { return fopAcM_GetParamBit(this, 8, 8); }
+ u8 getSw2() { return fopAcM_GetParamBit(this, 16, 8); }
private:
- /* 0x568 */ u8 field_0x568[0x6f4 - 0x568];
+ /* 0x5A0 */ request_of_phase_process_class mPhase;
+ /* 0x5A8 */ J3DModel* mModel1;
+ /* 0x5AC */ J3DModel* mModel2;
+ /* 0x5B0 */ mDoExt_btkAnm mBtk1;
+ /* 0x5C8 */ mDoExt_btkAnm mBtk2;
+ /* 0x5E0 */ mDoExt_brkAnm mBrk1;
+ /* 0x5F8 */ mDoExt_brkAnm mBrk2;
+ /* 0x610 */ mDoExt_bckAnm mBck1a;
+ /* 0x62C */ mDoExt_bckAnm mBck1b;
+ /* 0x648 */ mDoExt_bckAnm mBck1c;
+ /* 0x664 */ mDoExt_bckAnm mBck1d;
+ /* 0x680 */ mDoExt_bckAnm mBck2a;
+ /* 0x69C */ mDoExt_bckAnm mBck2b;
+ /* 0x6B8 */ mDoExt_bckAnm mBck2c;
+ /* 0x6D4 */ mDoExt_bckAnm mBck2d;
+ /* 0x6F0 */ u8 field_0x6f0;
+ /* 0x6F1 */ u8 field_0x6f1;
+ /* 0x6F2 */ u8 mMode;
+ /* 0x6F3 */ u8 field_0x6f3;
};
STATIC_ASSERT(sizeof(daGrdWater_c) == 0x6f4);
-class daGrdWater_HIO_c {
+class daGrdWater_HIO_c : public mDoHIO_entry_c {
public:
/* 80C134AC */ daGrdWater_HIO_c();
- /* 80C148A8 */ ~daGrdWater_HIO_c();
+ /* 80C148A8 */ virtual ~daGrdWater_HIO_c() {}
+
+ /* 0x04 */ u8 field_0x04;
+ /* 0x05 */ u8 field_0x05;
+ /* 0x06 */ u8 field_0x06;
+ /* 0x07 */ u8 field_0x07;
+ /* 0x08 */ f32 field_0x08;
+ /* 0x0C */ f32 field_0x0c;
+ /* 0x10 */ f32 field_0x10;
};
diff --git a/include/d/d_bg_s_movebg_actor.h b/include/d/d_bg_s_movebg_actor.h
index d8c605808b..27c3f90200 100644
--- a/include/d/d_bg_s_movebg_actor.h
+++ b/include/d/d_bg_s_movebg_actor.h
@@ -36,4 +36,6 @@ public:
static MoveBGActor_SetFunc m_set_func;
};
+STATIC_ASSERT(sizeof(dBgS_MoveBgActor) == 0x5a0);
+
#endif /* D_BG_D_BG_S_MOVEBG_ACTOR_H */
diff --git a/include/d/d_com_inf_game.h b/include/d/d_com_inf_game.h
index 6397000621..6c7f1f2797 100644
--- a/include/d/d_com_inf_game.h
+++ b/include/d/d_com_inf_game.h
@@ -3947,6 +3947,10 @@ inline void dComIfGd_setListDarkBG() {
g_dComIfG_gameInfo.drawlist.setXluListDarkBG();
}
+inline void dComIfGd_setXluListDarkBG() {
+ g_dComIfG_gameInfo.drawlist.setXluListDarkBG();
+}
+
inline void dComIfGd_setList() {
g_dComIfG_gameInfo.drawlist.setOpaList();
g_dComIfG_gameInfo.drawlist.setXluList();