summaryrefslogtreecommitdiff
path: root/include
diff options
context:
space:
mode:
Diffstat (limited to 'include')
-rw-r--r--include/d/actor/d_a_npc_worm.h2
-rw-r--r--include/d/actor/d_a_obj_kamakiri.h85
-rw-r--r--include/d/actor/d_a_player.h1
-rw-r--r--include/d/d_insect.h8
-rw-r--r--include/d/d_menu_insect.h2
5 files changed, 82 insertions, 16 deletions
diff --git a/include/d/actor/d_a_npc_worm.h b/include/d/actor/d_a_npc_worm.h
index 5dc4035056..ae8a3408f7 100644
--- a/include/d/actor/d_a_npc_worm.h
+++ b/include/d/actor/d_a_npc_worm.h
@@ -14,7 +14,7 @@
*/
class npc_worm_class : public dInsect_c {
public:
- bool check_release() { return field_0x56C == 1; }
+ bool check_release() { return field_0x56c == 1; }
/* 0x590 */ request_of_phase_process_class mPhase;
/* 0x598 */ u8 field_0x598;
diff --git a/include/d/actor/d_a_obj_kamakiri.h b/include/d/actor/d_a_obj_kamakiri.h
index 557d996fb7..94004759d5 100644
--- a/include/d/actor/d_a_obj_kamakiri.h
+++ b/include/d/actor/d_a_obj_kamakiri.h
@@ -1,7 +1,11 @@
#ifndef D_A_OBJ_KAMAKIRI_H
#define D_A_OBJ_KAMAKIRI_H
+#include "JSystem/JHostIO/JORMContext.h"
+#include "JSystem/JHostIO/JORReflexible.h"
+#include "d/d_cc_d.h"
#include "d/d_insect.h"
+#include "d/actor/d_a_player.h"
/**
* @ingroup actors-objects
@@ -11,14 +15,14 @@
* @details
*
*/
-class daObjKAM_c : public fopAc_ac_c {
+class daObjKAM_c : public dInsect_c {
public:
/* 80C351BC */ void InitCcSph();
/* 80C35228 */ void SetCcSph();
- /* 80C352A0 */ void CreateHeap();
+ /* 80C352A0 */ int CreateHeap();
/* 80C35684 */ void ShopWaitAction();
/* 80C357EC */ void WaitAction();
- /* 80C35970 */ void WallCheck();
+ /* 80C35970 */ int WallCheck();
/* 80C35BE4 */ void SpeedSet();
/* 80C35CF0 */ void WallWalk();
/* 80C36138 */ void WalkAction();
@@ -30,22 +34,83 @@ public:
/* 80C36E34 */ void ParticleSet();
/* 80C36F58 */ void BoomChk();
/* 80C37324 */ void ObjHit();
- /* 80C374AC */ void Execute();
- /* 80C37724 */ void Delete();
+ /* 80C374AC */ int Execute();
+ /* 80C37724 */ int Delete();
/* 80C3778C */ void setBaseMtx();
- /* 80C378F4 */ void CreateChk();
- /* 80C37AA0 */ void create();
+ int Draw() {
+ if (mDraw != 0) {
+ Z_BufferChk();
+ J3DModel* model = mpMorfSO->getModel();
+ g_env_light.settingTevStruct(0x10, &current.pos, &tevStr);
+ g_env_light.setLightTevColorType_MAJI(model, &tevStr);
+ mpBtkAnm->entry(model->getModelData());
+ mpBrkAnm->entry(model->getModelData());
+ mpMorfSO->entryDL();
+ if (field_0x9c0 == 0) {
+ _GXTexObj* texObj = dDlst_shadowControl_c::getSimpleTex();
+ dComIfGd_setSimpleShadow(&current.pos, mObjAcch.GetGroundH(), 15.0f, mObjAcch.m_gnd, 0, -0.6f, texObj);
+ }
+ }
+ return 1;
+ }
+ /* 80C378F4 */ u8 CreateChk();
+ /* 80C37AA0 */ int create();
private:
- /* 0x568 */ u8 field_0x568[0xa68 - 0x568];
+ /* 0x590 */ dCcD_Stts mStts;
+ /* 0x5CC */ dCcD_Sph mSphere;
+ /* 0x704 */ daPy_boomerangMove_c mBoomerangMove;
+ /* 0x710 */ dBgS_AcchCir mAcchCir;
+ /* 0x750 */ dBgS_ObjAcch mObjAcch;
+ /* 0x928 */ dBgS_GndChk mGndChk;
+ /* 0x928 */ u8 field_0x97c[0x980 - 0x97c];
+ /* 0x980 */ u8 field_0x980;
+ /* 0x981 */ u8 field_0x981;
+ /* 0x982 */ s16 field_0x982[3];
+ /* 0x988 */ f32 field_0x988;
+ /* 0x98C */ f32 field_0x98c;
+ /* 0x990 */ s16 field_0x990;
+ /* 0x992 */ u8 field_0x992[0x99a - 0x992];
+ /* 0x99A */ csXyz field_0x99a;
+ /* 0x9A0 */ s16 field_0x9a0;
+ /* 0x9A2 */ s16 mNormalYaw;
+ /* 0x9A4 */ s16 field_0x9a4;
+ /* 0x9A8 */ f32 field_0x9a8;
+ /* 0x9AC */ f32 field_0x9ac;
+ /* 0x9B0 */ mDoExt_brkAnm* mpBrkAnm;
+ /* 0x9B4 */ mDoExt_btkAnm* mpBtkAnm;
+ /* 0x9B8 */ f32 field_0x9b8;
+ /* 0x9BC */ u32 field_0x9bc;
+ /* 0x9C0 */ u8 field_0x9c0;
+ /* 0x9C1 */ u8 field_0x9c1;
+ /* 0x9C2 */ u8 field_0x9c2;
+ /* 0x9C4 */ Z2Creature mCreatureSound;
+ /* 0xA54 */ u8 field_0xa44[0xa58 - 0xa54];
+ /* 0xA58 */ mDoExt_McaMorfSO* mpMorfSO;
+ /* 0xA5C */ request_of_phase_process_class mPhase;
+ /* 0xA64 */ u8 field_0xa64;
};
STATIC_ASSERT(sizeof(daObjKAM_c) == 0xa68);
-class daObj_KamHIO_c {
+class daObj_KamHIO_c : public JORReflexible {
public:
/* 80C3518C */ daObj_KamHIO_c();
- /* 80C38360 */ ~daObj_KamHIO_c();
+ /* 80C38360 */ virtual ~daObj_KamHIO_c() {}
+ void genMessage(JORMContext* context) {
+ // Golden insect (stag beetle)
+ context->genLabel("黄金蟲(カブト)", 0x80000001, 0, NULL, -1, -1, 0x200, 0x18);
+ // Model scale (male)
+ context->genSlider("モデルスケール(オス)", &mModelScaleMale, 0.1f, 4.0f, 0, NULL, -1, -1, 0x200,
+ 0x18);
+ // Model scale (female)
+ context->genSlider("モデルスケール(メス)", &mModelScaleFemale, 0.1f, 4.0f, 0, NULL, -1, -1, 0x200,
+ 0x18);
+ }
+
+ s8 field_0x4;
+ f32 mModelScaleFemale;
+ f32 mModelScaleMale;
};
diff --git a/include/d/actor/d_a_player.h b/include/d/actor/d_a_player.h
index 52462826fc..db0c3d5627 100644
--- a/include/d/actor/d_a_player.h
+++ b/include/d/actor/d_a_player.h
@@ -33,6 +33,7 @@ public:
class daPy_boomerangMove_c {
public:
/* 8015E5B0 */ void initOffset(cXyz const*);
+ void initOffset(cXyz const* xyz, dCcD_GObjInf const*) { initOffset(xyz); }
/* 8015E654 */ int posMove(cXyz*, s16*, fopAc_ac_c*, s16);
/* 8015E87C */ void bgCheckAfterOffset(cXyz const*);
diff --git a/include/d/d_insect.h b/include/d/d_insect.h
index be52453e8e..a007046a68 100644
--- a/include/d/d_insect.h
+++ b/include/d/d_insect.h
@@ -21,19 +21,19 @@ public:
/* 8015E078 */ void Insect_GetDemoMain();
/* 8015E26C */ void CalcZBuffer(f32);
- /* 80110648 */ virtual void Insect_Release() { field_0x56C = 1; }
+ /* 80110648 */ virtual void Insect_Release() { field_0x56c = 1; }
bool ChkGetDemo() { return m_mode > 0; }
void setItemNo(u8 i_itemNo) { m_itemNo = i_itemNo; }
void setSaveBitNo(s16 i_saveBitNo) { m_saveBitNo = i_saveBitNo; }
- bool CheckZ() { return (u32)field_0x57C > field_0x578; }
+ bool CheckZ() { return (u32)field_0x57c > field_0x578; }
public:
- /* 0x56C */ u8 field_0x56C;
+ /* 0x56C */ u8 field_0x56c;
/* 0x56D */ bool mDraw;
/* 0x570 */ u32 mParticleKey1;
/* 0x574 */ u32 mParticleKey2;
/* 0x578 */ u32 field_0x578;
- /* 0x57C */ f32 field_0x57C;
+ /* 0x57C */ f32 field_0x57c;
/* 0x580 */ u8 m_itemNo;
/* 0x581 */ u8 mSex;
/* 0x582 */ s16 m_saveBitNo;
diff --git a/include/d/d_menu_insect.h b/include/d/d_menu_insect.h
index 7b428d4cb2..8a856d9eb3 100644
--- a/include/d/d_menu_insect.h
+++ b/include/d/d_menu_insect.h
@@ -43,7 +43,7 @@ public:
/* 801D9E20 */ bool isGiveInsect(int, int);
/* 801D9ED4 */ static bool isGiveInsect(u8);
/* 801D9E7C */ static bool isCatchInsect(u8);
- /* 801D9F3C */ static u8 isCatchNotGiveInsect(u8);
+ /* 801D9F3C */ static bool isCatchNotGiveInsect(u8);
/* 801D9F8C */ void cursorMove();
/* 801DA1EC */ void setCursorPos();
/* 801DA2FC */ u8 dpdMove();