e_arrow OK (#2072)

* e_arrow done

* remove asm
This commit is contained in:
TakaRikka
2024-02-15 23:51:12 -08:00
committed by GitHub
parent 9bc604134e
commit 0e05af5226
30 changed files with 791 additions and 3287 deletions
+2
View File
@@ -413,6 +413,7 @@ public:
RFLG0_UNK_10 = 0x10,
RFLG0_UNK_8 = 0x8,
RFLG0_UNK_2 = 0x2,
RFLG0_UNK_1 = 0x1,
};
enum daPy_RFLG1 {
@@ -761,6 +762,7 @@ public:
void onShieldBackBone() { i_onEndResetFlg1(ERFLG1_GANON_FINISH); }
void onWolfEyeKeep() { i_onEndResetFlg1(ERFLG1_WOLF_EYE_KEEP); }
void onFogFade() { i_onNoResetFlg2(FLG2_UNK_4000); }
BOOL checkStickArrowReset() const { return i_checkResetFlg0(RFLG0_UNK_1); }
void offCargoCarry() {
if (checkCargoCarry()) {
+8 -4
View File
@@ -41,12 +41,16 @@ public:
bool checkWaterBomb(fopAc_ac_c*);
bool checkInsectBombMove(fopAc_ac_c*);
static fopAc_ac_c* createNormalBombPlayer(cXyz* p_pos) {
return (fopAc_ac_c*)fopAcM_fastCreate(PROC_NBOMB, 8, p_pos, -1, NULL, NULL, -1, NULL, NULL);
static fopAc_ac_c* createNormalBombPlayer(cXyz* i_pos) {
return (fopAc_ac_c*)fopAcM_fastCreate(PROC_NBOMB, 8, i_pos, -1, NULL, NULL, -1, NULL, NULL);
}
static fopAc_ac_c* createWaterBombPlayer(cXyz* p_pos) {
return (fopAc_ac_c*)fopAcM_fastCreate(PROC_NBOMB, 9, p_pos, -1, NULL, NULL, -1, NULL, NULL);
static fopAc_ac_c* createNormalBombExplode(cXyz* i_pos) {
return (fopAc_ac_c*)fopAcM_fastCreate(PROC_NBOMB, 0, i_pos, -1, NULL, NULL, -1, NULL, NULL);
}
static fopAc_ac_c* createWaterBombPlayer(cXyz* i_pos) {
return (fopAc_ac_c*)fopAcM_fastCreate(PROC_NBOMB, 9, i_pos, -1, NULL, NULL, -1, NULL, NULL);
}
static fopAc_ac_c* createFlowerBomb(cXyz* i_pos, csXyz* i_angle, int param_2) {
+49 -1
View File
@@ -1,6 +1,54 @@
#ifndef D_A_E_ARROW_H
#define D_A_E_ARROW_H
#include "dolphin/types.h"
#include "f_op/f_op_actor_mng.h"
#include "d/com/d_com_inf_game.h"
enum e_arrow_action {
ACTION_ARROW_SHOT,
ACTION_ARROW_BG,
ACTION_ARROW_SPIN,
ACTION_ARROW_SHIELD,
ACTION_ARROW_FIRE,
ACTION_ARROW_BOUND,
};
enum e_arrow_type {
ARROW_TYPE_NORMAL,
ARROW_TYPE_FIRE,
ARROW_TYPE_BOMB,
};
class e_arrow_class : public fopEn_enemy_c {
public:
/* 0x5AC */ request_of_phase_process_class mPhase;
/* 0x5B4 */ J3DModel* mpModel;
/* 0x5B8 */ u8 mArrowType;
/* 0x5B9 */ u8 mFlags;
/* 0x5BC */ char* mResName;
/* 0x5C0 */ s16 field_0x5c0;
/* 0x5C2 */ s16 mAction;
/* 0x5C4 */ s16 mMode;
/* 0x5C6 */ s16 mTimers[4];
/* 0x5CE */ s16 field_0x5ce;
/* 0x5D0 */ f32 field_0x5d0;
/* 0x5D4 */ f32 field_0x5d4;
/* 0x5D8 */ cXyz field_0x5d8;
/* 0x5E4 */ dCcD_Stts mCcStts;
/* 0x620 */ dCcD_Sph mCcAtSph;
/* 0x758 */ dCcD_Sph mCcTgSph;
/* 0x890 */ dCcD_Sph mCcFireEffSph;
/* 0x9C8 */ cXyz field_0x9c8;
/* 0x9D4 */ cXyz field_0x9d4;
/* 0x9E0 */ u32 mStickSmokeEMKey;
/* 0x9E4 */ u32 mFireEMKeys[2];
/* 0x9EC */ u32 field_0x9ec;
/* 0x9F0 */ u32 field_0x9f0[4];
/* 0xA00 */ cXyz field_0xa00;
/* 0xA0C */ s16 field_0xa0c;
/* 0xA10 */ f32 field_0xa10;
/* 0xA14 */ u8 field_0xa14;
/* 0xA18 */ Z2SoundObjArrow mSound;
};
#endif /* D_A_E_ARROW_H */