summaryrefslogtreecommitdiff
path: root/include
diff options
context:
space:
mode:
authorPheenoh <pheenoh@gmail.com>2023-02-20 00:53:33 -0700
committerGitHub <noreply@github.com>2023-02-20 00:53:33 -0700
commitfa1f47f7a134cdc203207ec0b273ca7d32542d52 (patch)
tree3cfc43d7aca0d1442b9a8d1a8438aed64b0120a9 /include
parent8471d1d6ccb714dbf5968b2ad9da8b1be6b4919e (diff)
d_a_guard_mng OK, d_a_obj_smoke OK, d_a_tag_smk_emt OK, d_a_hitobj OK (#298)
* d_a_guard_mng OK * d_a_obj_smoke OK * d_a_tag_smk_emt OK * d_a_hitobj attempt * fixes * rm comment * cc_sph_src * rename and move mGuardDataTbl
Diffstat (limited to 'include')
-rw-r--r--include/rel/d/a/d_a_guard_mng/d_a_guard_mng.h66
-rw-r--r--include/rel/d/a/d_a_hitobj/d_a_hitobj.h13
-rw-r--r--include/rel/d/a/obj/d_a_obj_smoke/d_a_obj_smoke.h19
-rw-r--r--include/rel/d/a/tag/d_a_tag_smk_emt/d_a_tag_smk_emt.h17
4 files changed, 111 insertions, 4 deletions
diff --git a/include/rel/d/a/d_a_guard_mng/d_a_guard_mng.h b/include/rel/d/a/d_a_guard_mng/d_a_guard_mng.h
index e35b243e7c..46e9113819 100644
--- a/include/rel/d/a/d_a_guard_mng/d_a_guard_mng.h
+++ b/include/rel/d/a/d_a_guard_mng/d_a_guard_mng.h
@@ -1,6 +1,70 @@
#ifndef D_A_GUARD_MNG_H
#define D_A_GUARD_MNG_H
-#include "dolphin/types.h"
+#include "f_op/f_op_actor_mng.h"
+#include "rel/d/a/tag/d_a_tag_guard/d_a_tag_guard.h"
+#include "d/com/d_com_inf_game.h"
+
+class daGuardMng_c : public fopAc_ac_c {
+public:
+ void countMerchantNum() {
+ mMerchantNum++;
+ }
+
+ int execute() {
+ static u32 const mGuardDataTbl[2] = {
+ 0x00000200, 0x00000201,
+ };
+
+ if (!daPy_py_c::i_checkNowWolf() || field_0x573 >= mLimitNum) {
+ return 1;
+ } else {
+ if (field_0x571 < mMerchantNum) {
+ field_0x571 = mMerchantNum;
+ }
+
+ checkMerchantNum();
+
+ if (mpTagGuard) {
+ if (field_0x571 > mMerchantNum && 3 < (field_0x571 - mMerchantNum)) {
+ mpTagGuard->createGuard(mGuardDataTbl[0]);
+ field_0x573++;
+ field_0x571 = mMerchantNum;
+ dComIfGs_onSaveDunSwitch(0x3c);
+ }
+ }
+ }
+
+ return 1;
+ }
+
+ u8 getLimitNum() {
+ return fopAcM_GetParam(this) & 0xff;
+ }
+
+ void create_init() {
+ mLimitNum = getLimitNum();
+ field_0x573 = 0;
+ }
+
+ int create() {
+ if (!fopAcM_CheckCondition(this, 8)) {
+ new (this) daGuardMng_c();
+ fopAcM_OnCondition(this, 8);
+ }
+ create_init();
+ return cPhs_COMPLEATE_e;
+ }
+
+ /* 80837B9C */ u8 checkMerchantNum();
+ /* 80837BEC */ void checkAppearTag(daTagGuard_c*);
+
+ /* 0x568 */ daTagGuard_c* mpTagGuard;
+ /* 0x56C */ f32 field_0x56c;
+ /* 0x570 */ u8 mMerchantNum;
+ /* 0x571 */ u8 field_0x571;
+ /* 0x572 */ u8 mLimitNum;
+ /* 0x573 */ u8 field_0x573;
+};
#endif /* D_A_GUARD_MNG_H */
diff --git a/include/rel/d/a/d_a_hitobj/d_a_hitobj.h b/include/rel/d/a/d_a_hitobj/d_a_hitobj.h
index a56423417d..496e8e053e 100644
--- a/include/rel/d/a/d_a_hitobj/d_a_hitobj.h
+++ b/include/rel/d/a/d_a_hitobj/d_a_hitobj.h
@@ -1,6 +1,17 @@
#ifndef D_A_HITOBJ_H
#define D_A_HITOBJ_H
-#include "dolphin/types.h"
+#include "f_op/f_op_actor_mng.h"
+#include "d/com/d_com_inf_game.h"
+
+class hitobj_class : public fopAc_ac_c {
+public:
+ /* 0x568 */ request_of_phase_process_class mPhase;
+ /* 0x570 */ u8 field_0x570;
+ /* 0x571 */ u8 field_0x571;
+ /* 0x572 */ s16 field_0x572;
+ /* 0x574 */ dCcD_Stts field_0x574;
+ /* 0x5B0 */ dCcD_Sph field_0x5b0;
+};
#endif /* D_A_HITOBJ_H */
diff --git a/include/rel/d/a/obj/d_a_obj_smoke/d_a_obj_smoke.h b/include/rel/d/a/obj/d_a_obj_smoke/d_a_obj_smoke.h
index 587527f6cb..01dd9e784b 100644
--- a/include/rel/d/a/obj/d_a_obj_smoke/d_a_obj_smoke.h
+++ b/include/rel/d/a/obj/d_a_obj_smoke/d_a_obj_smoke.h
@@ -1,6 +1,23 @@
#ifndef D_A_OBJ_SMOKE_H
#define D_A_OBJ_SMOKE_H
-#include "dolphin/types.h"
+#include "f_op/f_op_actor_mng.h"
+#include "d/com/d_com_inf_game.h"
+
+class daObjSmoke_c : public fopAc_ac_c {
+public:
+ u8 getSwbit() {
+ return fopAcM_GetParamBit(this,0,8);
+ }
+
+ /* 80CDCE78 */ void initBaseMtx();
+ /* 80CDCE98 */ void setBaseMtx();
+ /* 80CDCEF0 */ int Create();
+ /* 80CDCF9C */ int create();
+ /* 80CDD004 */ int execute();
+ /* 80CDD0B8 */ int _delete();
+
+ /* 0x568 */ JPABaseEmitter* mParticle;
+};
#endif /* D_A_OBJ_SMOKE_H */
diff --git a/include/rel/d/a/tag/d_a_tag_smk_emt/d_a_tag_smk_emt.h b/include/rel/d/a/tag/d_a_tag_smk_emt/d_a_tag_smk_emt.h
index da839d2a14..46e8db31ac 100644
--- a/include/rel/d/a/tag/d_a_tag_smk_emt/d_a_tag_smk_emt.h
+++ b/include/rel/d/a/tag/d_a_tag_smk_emt/d_a_tag_smk_emt.h
@@ -1,6 +1,21 @@
#ifndef D_A_TAG_SMK_EMT_H
#define D_A_TAG_SMK_EMT_H
-#include "dolphin/types.h"
+#include "f_op/f_op_actor_mng.h"
+#include "d/com/d_com_inf_game.h"
+
+class daTagSmkEmt_c : public fopAc_ac_c {
+public:
+ /* 80D612D8 */ daTagSmkEmt_c();
+ /* 80D61324 */ virtual ~daTagSmkEmt_c();
+ /* 80D61384 */ int create();
+ /* 80D613DC */ int Delete();
+ /* 80D61400 */ int draw();
+ /* 80D61408 */ int execute();
+ /* 80D61410 */ void createSmkEmt();
+ /* 80D61500 */ void deleteSmkEmt();
+
+ /* 0x56C */ JPABaseEmitter* mParticles[3];
+};
#endif /* D_A_TAG_SMK_EMT_H */