d_map_path_dmap OK (#2201)

* d_map_path_dmap work

* d_map_path_dmap OK

* Probable inheritance for dalv4CandleDemoTag_c

* daObjFuta_c OK

* daObjHHASHI_c OK
This commit is contained in:
hatal175
2024-10-08 01:32:29 +03:00
committed by GitHub
parent 24b6124609
commit 1f3948e40e
62 changed files with 753 additions and 5547 deletions
+8 -2
View File
@@ -1,6 +1,8 @@
#ifndef D_A_E_FM_H
#define D_A_E_FM_H
#include "f_op/f_op_actor_mng.h"
#include "Z2AudioLib/Z2Creature.h"
/**
* @ingroup actors-enemies
@@ -11,9 +13,13 @@
*
*/
class e_fm_class : public fopEn_enemy_c {
public:
/* 804F9B64 */ e_fm_class();
private:
/* 0x5ac */ u8 field_0x5ac[0x1b084 - 0x5ac];
/* 0x005AC */ u8 field_0x5ac[0x63c - 0x5ac];
/* 0x0063C */ Z2CreatureFM field_0x63c;
/* 0x00760 */ u8 field_0x760[0x1828 - 0x760];
/* 0x01828 */ u8 field_0x1828;
/* 0x01829 */ u8 field_0x1829[0x1b084 - 0x1829];
};
STATIC_ASSERT(sizeof(e_fm_class) == 0x1b084);
@@ -2,6 +2,7 @@
#define D_A_OBJ_HFUTA_H
#include "f_op/f_op_actor_mng.h"
#include "d/bg/d_bg_s_movebg_actor.h"
/**
* @ingroup actors-objects
@@ -11,26 +12,45 @@
* @details
*
*/
class daObjFuta_c : public fopAc_ac_c {
class daObjFuta_c : public dBgS_MoveBgActor {
public:
enum Mode {
MODE_0,
MODE_1,
MODE_2,
};
typedef void (daObjFuta_c::*modeFunc)();
/* 80C1DD8C */ void initBaseMtx();
/* 80C1DDC8 */ void setBaseMtx();
/* 80C1DE94 */ void Create();
/* 80C1DF2C */ void CreateHeap();
/* 80C1DF9C */ void create1st();
/* 80C1E020 */ void Execute(f32 (**)[3][4]);
/* 80C1DE94 */ int Create();
/* 80C1DF2C */ int CreateHeap();
/* 80C1DF9C */ int create1st();
/* 80C1E020 */ int Execute(f32 (**)[3][4]);
/* 80C1EB38 */ void mode_proc_call();
/* 80C1EBDC */ void mode_wait();
/* 80C1EC44 */ void mode_move();
/* 80C1ECB4 */ void mode_end();
/* 80C1ECC4 */ void Draw();
/* 80C1ED68 */ void Delete();
/* 80C1ECC4 */ int Draw();
/* 80C1ED68 */ int Delete();
void setMode(u8 mode) { mMode = mode; }
private:
/* 0x568 */ u8 field_0x568[0x5cc - 0x568];
/* 0x5A0 */ request_of_phase_process_class mPhase;
/* 0x5A8 */ J3DModel* mModel;
/* 0x5AC */ cXyz mTransM;
/* 0x5B8 */ csXyz mZXYRotationM;
/* 0x5BE */ u8 mMode;
/* 0x5BF */ u8 field_0x5bf;
/* 0x5C0 */ int field_0x5c0;
/* 0x5C4 */ f32 field_0x5c4;
/* 0x5C8 */ u8 field_0x5c8;
/* 0x5CA */ u16 mRotationIndex;
};
STATIC_ASSERT(sizeof(daObjFuta_c) == 0x5cc);
//STATIC_ASSERT(sizeof(daObjFuta_c) == 0x5cc);
#endif /* D_A_OBJ_HFUTA_H */
@@ -2,6 +2,8 @@
#define D_A_OBJ_HHASHI_H
#include "f_op/f_op_actor_mng.h"
#include "d/bg/d_bg_s_movebg_actor.h"
#include "d/cc/d_cc_d.h"
/**
* @ingroup actors-objects
@@ -11,7 +13,7 @@
* @details
*
*/
class daObjHHASHI_c : public fopAc_ac_c {
class daObjHHASHI_c : public dBgS_MoveBgActor {
public:
/* 8057F9B8 */ void initCcCylinder();
/* 8057FA18 */ void setCcCylinder();
@@ -21,19 +23,39 @@ public:
/* 80580358 */ void Wall_Check(s16);
/* 8058043C */ void Hahen_Motion(s16);
/* 805805F4 */ void CheckCull();
/* 805807C4 */ void checkViewArea(int);
/* 805807C4 */ bool checkViewArea(int);
/* 80580854 */ void Rolling(cXyz*, f32, f32, s8);
/* 80580A48 */ void Roll_Set(cXyz*, f32, s16);
/* 80580C80 */ void setBaseMtx();
/* 80580DA4 */ void CreateHeap();
/* 80580EA0 */ void create();
/* 805811CC */ void Create();
/* 80581210 */ void Execute(f32 (**)[3][4]);
/* 805812BC */ void Draw();
/* 8058140C */ void Delete();
/* 80580DA4 */ int CreateHeap();
/* 80580EA0 */ int create();
/* 805811CC */ int Create();
/* 80581210 */ int Execute(f32 (**)[3][4]);
/* 805812BC */ int Draw();
/* 8058140C */ int Delete();
private:
/* 0x568 */ u8 field_0x568[0x119c - 0x568];
/* 0x05A0 */ int field_0x5a0;
/* 0x05A4 */ int field_0x5a4;
/* 0x05A8 */ s8 field_0x5a8;
/* 0x05AA */ s16 field_0x5aa;
/* 0x05AC */ int field_0x5ac;
/* 0x05B0 */ cXyz field_0x5b0[50];
/* 0x0808 */ cXyz field_0x808[50];
/* 0x0A60 */ cXyz field_0xa60[50];
/* 0x0CB8 */ f32 field_0xcb8;
/* 0x0CBC */ csXyz field_0xcbc[50];
/* 0x0DE8 */ csXyz field_0xde8[50];
/* 0x0F14 */ u8 field_0xf14[50];
/* 0x0F46 */ s16 field_0xf46;
/* 0x0F48 */ int field_0xf48;
/* 0x0F4C */ J3DModel* mModel;
/* 0x0F50 */ J3DModel* mShardModels[50];
/* 0x1018 */ request_of_phase_process_class mPhase;
/* 0x1020 */ dCcD_Stts mStts;
/* 0x105c */ dCcD_Cyl mCyl;
/* 0x1198 */ u8 field_0x1198;
/* 0x1199 */ u8 field_0x1199;
};
STATIC_ASSERT(sizeof(daObjHHASHI_c) == 0x119c);
@@ -5,12 +5,6 @@
#include "d/event/d_event_lib.h"
#include "rel/d/a/obj/d_a_obj_lv4EdShutter/d_a_obj_lv4EdShutter.h"
// idk how this works atm. dEvLib_callback_c seems to need to be inherited, but this data comes
// before it. the fopAc_ac_c struct size is 100% correct, so do not change it
struct temp {
/* 0x568 */ u8 field_0x568[0x570 - 0x568];
};
/**
* @ingroup actors-objects
* @class dalv4CandleDemoTag_c
@@ -19,7 +13,7 @@ struct temp {
* @details
*
*/
class dalv4CandleDemoTag_c : public fopAc_ac_c, temp, public dEvLib_callback_c {
class dalv4CandleDemoTag_c : public fopAc_ac_c, public request_of_phase_process_class, public dEvLib_callback_c {
public:
dalv4CandleDemoTag_c() : dEvLib_callback_c(this) {}