mirror of
https://github.com/zeldaret/tp
synced 2026-08-18 13:43:24 -04:00
Work on d_a_tag_wljump (#351)
This commit is contained in:
+10
-6
@@ -6243,6 +6243,9 @@ public:
|
||||
|
||||
class mDoExt_morf_c;
|
||||
|
||||
inline BOOL dComIfGs_isTransformLV(int i_no);
|
||||
inline BOOL i_dComIfGs_isEventBit(const u16);
|
||||
|
||||
typedef int (daMidna_c::*daMidna_func)();
|
||||
class daMidna_c : public fopAc_ac_c {
|
||||
public:
|
||||
@@ -6257,6 +6260,7 @@ public:
|
||||
FLG0_NPC_FAR = 0x40000,
|
||||
FLG0_NO_INPUT = 0x4000,
|
||||
FLG0_NO_DRAW = 0x2000,
|
||||
FLG0_UNK_800 = 0x800,
|
||||
FLG0_UNK_200 = 0x200,
|
||||
};
|
||||
|
||||
@@ -6272,6 +6276,9 @@ public:
|
||||
u32 checkForceNormalColor() const;
|
||||
u32 checkForceTiredColor() const;
|
||||
bool checkMidnaTired();
|
||||
bool i_checkMidnaTired() {
|
||||
return dComIfGs_isTransformLV(3) && !i_dComIfGs_isEventBit(0x1e08);
|
||||
}
|
||||
void onNoServiceWait();
|
||||
/* 804BC3E0 */ void modelCallBack(int);
|
||||
/* 804BC5C4 */ void changeUpperBck();
|
||||
@@ -6330,6 +6337,7 @@ public:
|
||||
BOOL checkNpcFar() { return checkStateFlg0(FLG0_NPC_FAR); }
|
||||
BOOL checkNoDraw() const { return checkStateFlg0(FLG0_NO_DRAW); }
|
||||
BOOL checkNoInput() const { return checkStateFlg0(FLG0_NO_INPUT); }
|
||||
BOOL checkWolfNoPos() const { return checkStateFlg0(FLG0_UNK_800); }
|
||||
int checkMetamorphoseEnable() { return (this->*mpFunc)(); }
|
||||
int checkShadowModelDrawDemoForce() const { return checkStateFlg1(FLG1_SHADOW_MODEL_DRAW_DEMO_FORCE); }
|
||||
|
||||
@@ -6362,12 +6370,8 @@ public:
|
||||
return 0;
|
||||
}
|
||||
|
||||
int checkShadowModeTalkWait() const {
|
||||
if (mDemoType != 2 && mDemoType != 1) {
|
||||
return 0;
|
||||
}
|
||||
|
||||
return 1;
|
||||
bool checkShadowModeTalkWait() const {
|
||||
return (field_0x84e == 2 || field_0x84e == 1) ;
|
||||
}
|
||||
|
||||
void setShadowReturn() { mDemoType = 4; }
|
||||
|
||||
@@ -176,6 +176,7 @@ private:
|
||||
class daMidna_c;
|
||||
class daPy_py_c;
|
||||
inline daPy_py_c* dComIfGp_getLinkPlayer();
|
||||
inline BOOL i_dComIfGs_isEventBit(const u16);
|
||||
|
||||
class daPy_py_c : public fopAc_ac_c {
|
||||
public:
|
||||
@@ -788,6 +789,7 @@ public:
|
||||
inline static BOOL i_checkNowWolf() { return dComIfGp_getLinkPlayer()->i_checkWolf(); }
|
||||
inline bool checkZoraWearFlg() const;
|
||||
inline bool checkMagicArmorWearFlg() const;
|
||||
inline static BOOL i_checkFirstMidnaDemo() { return i_dComIfGs_isEventBit(0xc10); }
|
||||
|
||||
static daMidna_c* getMidnaActor() { return m_midnaActor; }
|
||||
|
||||
|
||||
@@ -215,6 +215,9 @@ public:
|
||||
int GetActionCount() { return mActionCount; }
|
||||
int GetLockonCount() { return mLockonCount; }
|
||||
bool Lockon() { return LockonTruth() || chkFlag(0x20000000); } // only matches with -O2?
|
||||
int ZHintRequest(fopAc_ac_c *param_1, int param_2) {
|
||||
return mZHintTarget.request(param_1, param_2);
|
||||
}
|
||||
|
||||
static type_tbl_entry loc_type_tbl[3];
|
||||
static type_tbl_entry act_type_tbl[5];
|
||||
|
||||
@@ -2,5 +2,36 @@
|
||||
#define D_A_TAG_WLJUMP_H
|
||||
|
||||
#include "dolphin/types.h"
|
||||
#include "f_op/f_op_actor.h"
|
||||
#include "d/msg/d_msg_flow.h"
|
||||
#include "d/com/d_com_inf_game.h"
|
||||
|
||||
struct dPath;
|
||||
|
||||
struct daTagWljump_c : fopAc_ac_c {
|
||||
/* 80D64EB8 */ int create();
|
||||
/* 80D65004 */ ~daTagWljump_c();
|
||||
/* 80D65090 */ int execute();
|
||||
/* 80D6589C */ int draw();
|
||||
|
||||
int dComIfGp_att_ZHintRequest(fopAc_ac_c *param_1, int param_2) {
|
||||
return dComIfGp_getAttention().ZHintRequest(param_1, param_2);
|
||||
}
|
||||
|
||||
/* 0x568 */ s8 field_0x568;
|
||||
/* 0x568 */ s8 field_0x569;
|
||||
/* 0x568 */ u8 field_0x56a;
|
||||
/* 0x568 */ u8 field_0x56b;
|
||||
/* 0x56C */ u8 field_0x56c[4];
|
||||
/* 0x570 */ u8 field_0x570;
|
||||
/* 0x571 */ u8 field_0x571;
|
||||
/* 0x572 */ u8 field_0x572;
|
||||
/* 0x573 */ u8 field_0x573;
|
||||
/* 0x574 */ s16 field_0x574;
|
||||
/* 0x574 */ u16 field_0x576;
|
||||
/* 0x578 */ dMsgFlow_c mMsgFlow;
|
||||
/* 0x5C4 */ dPath* field_0x5c4;
|
||||
/* 0x5C8 */ f32 field_0x5c8;
|
||||
};
|
||||
|
||||
#endif /* D_A_TAG_WLJUMP_H */
|
||||
|
||||
Reference in New Issue
Block a user