mirror of
https://github.com/zeldaret/tp
synced 2026-07-08 14:36:36 -04:00
d_a_e_bi & d_a_obj_fw equivalent (#2592)
* initial work * d_a_obj_fw equivalent * d_a_e_bi equivalent * Update d_a_obj_fw.cpp --------- Co-authored-by: hatal175 <hatal175@users.noreply.github.com>
This commit is contained in:
@@ -1,5 +1,8 @@
|
||||
#ifndef D_A_E_BI_H
|
||||
#define D_A_E_BI_H
|
||||
#include "d/d_bg_s_acch.h"
|
||||
#include "d/d_cc_d.h"
|
||||
#include "d/d_cc_uty.h"
|
||||
#include "f_op/f_op_actor_mng.h"
|
||||
|
||||
/**
|
||||
@@ -9,17 +12,75 @@
|
||||
*
|
||||
* @details
|
||||
*
|
||||
*/
|
||||
class e_bi_class : public fopEn_enemy_c {
|
||||
private:
|
||||
/* 0x5ac */ u8 field_0x5ac[0xc00 - 0x5ac];
|
||||
*/
|
||||
|
||||
class e_bi_class {
|
||||
public:
|
||||
/* 0x000 */ fopEn_enemy_c actor;
|
||||
/* 0x5AC */ request_of_phase_process_class mPhase;
|
||||
/* 0x5B4 */ u8 field_0x5b4;
|
||||
/* 0x5B5 */ u8 field_0x5b5;
|
||||
/* 0x5B6 */ u8 field_0x5b6;
|
||||
/* 0x5B7 */ u8 field_0x5b7;
|
||||
/* 0x5B8 */ mDoExt_McaMorfSO* mpModelMorf;
|
||||
/* 0x5BC */ Z2CreatureEnemy mSound;
|
||||
/* 0x660 */ f32 field_0x660;
|
||||
/* 0x664 */ int mAnm;
|
||||
/* 0x668 */ u32 mShadowKey;
|
||||
/* 0x66C */ s16 field_0x66c;
|
||||
/* 0x66E */ s16 mAction;
|
||||
/* 0x670 */ s16 field_0x670;
|
||||
/* 0x672 */ u8 field_0x672[0x680 - 0x672];
|
||||
/* 0x680 */ s16 field_0x680;
|
||||
/* 0x682 */ u8 field_0x682[0x684 - 0x682];
|
||||
/* 0x684 */ s16 field_0x684;
|
||||
/* 0x688 */ f32 field_0x688;
|
||||
/* 0x68C */ s16 field_0x68c[3];
|
||||
/* 0x692 */ s16 field_0x692;
|
||||
/* 0x694 */ s16 field_0x694;
|
||||
/* 0x696 */ s16 field_0x696;
|
||||
/* 0x698 */ s16 field_0x698;
|
||||
/* 0x69A */ u8 field_0x69a[0x6a2 - 0x69a];
|
||||
/* 0x6A2 */ s16 field_0x6a2;
|
||||
/* 0x6A4 */ s16 field_0x6a4;
|
||||
/* 0x6A6 */ s16 field_0x6a6;
|
||||
/* 0x6A8 */ f32 field_0x6a8;
|
||||
/* 0x6AC */ f32 field_0x6ac;
|
||||
/* 0x6B0 */ s8 field_0x6b0;
|
||||
/* 0x6B4 */ dCcD_Stts mStts;
|
||||
/* 0x6F0 */ dCcD_Cyl field_0x6f0;
|
||||
/* 0x82C */ dCcD_Sph field_0x82c;
|
||||
/* 0x964 */ dCcU_AtInfo mAtInfo;
|
||||
/* 0x988 */ u8 field_0x988;
|
||||
/* 0x98C */ dBgS_AcchCir mAcchCir;
|
||||
/* 0x9CC */ dBgS_ObjAcch mObjAcch;
|
||||
/* 0xBA4 */ fpc_ProcID field_0xba4;
|
||||
/* 0xBA8 */ fpc_ProcID field_0xba8;
|
||||
/* 0xBAC */ s8 field_0xbac;
|
||||
/* 0xBAD */ s8 field_0xbad;
|
||||
/* 0xBB0 */ cXyz field_0xbb0;
|
||||
/* 0xBBC */ u8 field_0xbbc[0xbc4 - 0xbbc];
|
||||
/* 0xBC4 */ u32 field_0xbc4[5];
|
||||
/* 0xBD8 */ u32 field_0xbd8[4];
|
||||
/* 0xBE8 */ u32 field_0xbe8;
|
||||
/* 0xBEC */ u8 field_0xbec[0xbfc - 0xbec];
|
||||
/* 0xBFC */ u8 field_0xbfc;
|
||||
};
|
||||
|
||||
STATIC_ASSERT(sizeof(e_bi_class) == 0xc00);
|
||||
|
||||
class daE_BI_HIO_c {
|
||||
class daE_BI_HIO_c : public JORReflexible {
|
||||
public:
|
||||
/* 8068A5EC */ daE_BI_HIO_c();
|
||||
/* 8068D2DC */ ~daE_BI_HIO_c();
|
||||
/* 8068D2DC */ virtual ~daE_BI_HIO_c() {}
|
||||
|
||||
/* 爆弾虫 - Bomb Bug */
|
||||
/* 0x04 */ s8 field_0x4;
|
||||
/* 0x08 */ f32 basic_size; // 基本サイズ - Basic Size
|
||||
/* 0x0C */ f32 search_range; // サーチ範囲 - Search Range
|
||||
/* 0x10 */ f32 track_range; // 追尾範囲 - Track Range
|
||||
/* 0x14 */ s16 time_to_get_going; // 動き出すまでの時間 - Time To Get Going
|
||||
/* 0x18 */ f32 movement_spd; // 移動速度 - Movement Speed
|
||||
};
|
||||
|
||||
|
||||
|
||||
@@ -10,18 +10,50 @@
|
||||
*
|
||||
* @details
|
||||
*
|
||||
*/
|
||||
class obj_fw_class : public fopAc_ac_c {
|
||||
private:
|
||||
/* 0x568 */ u8 field_0x568[0x628 - 0x568];
|
||||
*/
|
||||
|
||||
class obj_fw_class {
|
||||
public:
|
||||
/* 0x000 */ fopAc_ac_c actor;
|
||||
/* 0x568 */ request_of_phase_process_class mPhase;
|
||||
/* 0x570 */ u8 field_0x570;
|
||||
/* 0x574 */ J3DModel* mpModel;
|
||||
/* 0x578 */ s16 field_0x578;
|
||||
/* 0x57A */ s16 field_0x57a;
|
||||
/* 0x57C */ u8 field_0x57c[0x57e - 0x57c];
|
||||
/* 0x57E */ s16 field_0x57e[2];
|
||||
/* 0x584 */ f32 field_0x584;
|
||||
/* 0x588 */ f32 field_0x588;
|
||||
/* 0x58C */ f32 field_0x58c;
|
||||
/* 0x590 */ s16 field_0x590;
|
||||
/* 0x592 */ s16 field_0x592;
|
||||
/* 0x594 */ f32 field_0x594;
|
||||
/* 0x598 */ f32 field_0x598;
|
||||
/* 0x59C */ u8 field_0x59c[0x5a0 - 0x59c];
|
||||
/* 0x5A0 */ s16 field_0x5a0;
|
||||
/* 0x5A2 */ s16 field_0x5a2;
|
||||
/* 0x5A4 */ s16 field_0x5a4;
|
||||
/* 0x5A8 */ cXyz field_0x5a8;
|
||||
/* 0x5B4 */ u8 field_0x5b4[0x5b8 - 0x5b4];
|
||||
/* 0x5B8 */ Mtx mMtx;
|
||||
/* 0x5E8 */ dBgW* mpBgW;
|
||||
/* 0x5EC */ Z2SoundObjSimple mSound;
|
||||
/* 0x60C */ u8 field_0x60c[0x61c - 0x60c];
|
||||
/* 0x61C */ u32 field_0x61c;
|
||||
/* 0x620 */ u8 field_0x620[0x624 - 0x620];
|
||||
/* 0x624 */ u8 field_0x624;
|
||||
};
|
||||
|
||||
STATIC_ASSERT(sizeof(obj_fw_class) == 0x628);
|
||||
|
||||
class daObj_Fw_HIO_c {
|
||||
class daObj_Fw_HIO_c : public JORReflexible {
|
||||
public:
|
||||
/* 80BF204C */ daObj_Fw_HIO_c();
|
||||
/* 80BF2AB0 */ ~daObj_Fw_HIO_c();
|
||||
/* 80BF2AB0 */ virtual ~daObj_Fw_HIO_c() {}
|
||||
|
||||
/* 流木 - Driftwood */
|
||||
/* 0x4 */ s8 field_0x4;
|
||||
/* 0x8 */ f32 size; // 大きさ - Size
|
||||
};
|
||||
|
||||
|
||||
|
||||
@@ -88,6 +88,16 @@ public:
|
||||
return (fopAc_ac_c*)fopAcM_fastCreate(PROC_NBOMB, 0x11, i_pos, i_roomNo, i_angle, NULL, -1,
|
||||
NULL, NULL);
|
||||
}
|
||||
|
||||
static fopAc_ac_c* createEnemyBombHookshot(cXyz* i_pos, csXyz* i_angle, int i_roomNo) {
|
||||
return (fopAc_ac_c*)fopAcM_fastCreate(PROC_NBOMB, 13, i_pos, i_roomNo, i_angle, NULL, -1,
|
||||
NULL, NULL);
|
||||
}
|
||||
|
||||
static fopAc_ac_c* createEnemyBomb(cXyz* i_pos, csXyz* i_angle, int i_roomNo) {
|
||||
return (fopAc_ac_c*)fopAcM_fastCreate(PROC_NBOMB, 0xB, i_pos, i_roomNo, i_angle, NULL, -1,
|
||||
NULL, NULL);
|
||||
}
|
||||
};
|
||||
|
||||
#endif /* D_D_BOMB_H */
|
||||
|
||||
Reference in New Issue
Block a user