summaryrefslogtreecommitdiff
path: root/include
diff options
context:
space:
mode:
Diffstat (limited to 'include')
-rw-r--r--include/d/a/npc/d_a_npc_honeycomb.h56
1 files changed, 49 insertions, 7 deletions
diff --git a/include/d/a/npc/d_a_npc_honeycomb.h b/include/d/a/npc/d_a_npc_honeycomb.h
index f04640a2..507d6936 100644
--- a/include/d/a/npc/d_a_npc_honeycomb.h
+++ b/include/d/a/npc/d_a_npc_honeycomb.h
@@ -1,20 +1,62 @@
#ifndef D_A_NPC_HONEYCOMB_H
#define D_A_NPC_HONEYCOMB_H
+#include "common.h"
#include "d/a/e/d_a_en_base.h"
+#include "d/col/bg/d_bg_s_acch.h"
+#include "d/d_cc.h"
+#include "m/m3d/m_smdl.h"
#include "m/m_vec.h"
+#include "nw4r/g3d/res/g3d_resfile.h"
class dAcNpcHc_c : public dAcEnBase_c {
public:
- dAcNpcHc_c() {}
+ dAcNpcHc_c() : mRes(nullptr) {}
virtual ~dAcNpcHc_c() {}
+ virtual bool createHeap() override;
+ virtual int create() override;
+ virtual int actorExecute() override;
+ virtual int draw() override;
+ virtual int doDelete() override;
- // private:
- /* 0x378 */ u8 field_0x378[0x915 - 0x378];
- /* 0x915 */ u8 field_0x915;
- /* 0x916 */ u8 field_0x916;
- /* 0x917 */ u8 field_0x917[0x928 - 0x917];
- /* 0x928 */ mVec3_c field_0x928;
+ u8 getBeeAngerTimer() const {
+ return mBeeAngerTimer;
+ }
+
+ bool isPlayerObstructed() const {
+ return mPlayerObstructed;
+ }
+
+ const mVec3_c &getActualPosition() const {
+ return mActualPosition;
+ }
+
+private:
+ /* 0x374 */ nw4r::g3d::ResFile mRes;
+ /* 0x378 */ m3d::smdl_c mModel;
+ /* 0x398 */ dBgS_AcchCir mAcchCir;
+ /* 0x3F4 */ dBgS_ObjAcch mObjAcch;
+ /* 0x7A4 */ dCcD_Linked_Sph mSph;
+ /* 0x904 */ dColliderLinkedList mCollider;
+ /* 0x910 */ u8 mNoCollisionTimer;
+ /* 0x911 */ bool mIsBlown;
+ /* 0x912 */ u8 mFallDownTimer;
+ /* 0x913 */ u8 mDeathTimer;
+ /* 0x914 */ u8 mGustBellowsTimer;
+ /* 0x915 */ u8 mBeeAngerTimer;
+ /* 0x916 */ bool mPlayerObstructed;
+ /* 0x917 */ u8 mSceneflag;
+ /* 0x918 */ s8 field_0x918;
+ /* 0x919 */ // padding
+ /* 0x91A */ s16 mUnusedTimer1;
+ /* 0x91C */ s16 mUnusedTimer2;
+ /* 0x91E */ s16 mRandomnessTimer;
+ /* 0x920 */ f32 field_0x920;
+ /* 0x924 */ f32 field_0x924;
+ /* 0x928 */ mVec3_c mActualPosition;
+ /* 0x934 */ mVec3_c field_0x934;
+
+ void handleCollider();
};
#endif