mirror of
https://github.com/zeldaret/tp
synced 2026-07-08 14:36:36 -04:00
d_a_tag_hjump / d_a_scene_exit2 OK (#361)
* d_a_tag_hjump OK * d_a_scene_exit2 OK * remove asm
This commit is contained in:
@@ -208,6 +208,7 @@ public:
|
||||
MtxP GetBaseMtxP() { return pm_base; }
|
||||
bool ChkNoCalcVtx() { return field_0x88 & 2; }
|
||||
bool ChkFlush() { return field_0x91 & 8; }
|
||||
void SetLock() { field_0x88 |= 0x80; }
|
||||
|
||||
public:
|
||||
/* 0x18 */ MtxP pm_base;
|
||||
|
||||
@@ -2936,6 +2936,11 @@ inline int i_dComIfGp_evmng_getMyStaffId(const char* pName, fopAc_ac_c* pActor,
|
||||
return dComIfGp_getPEvtManager()->getMyStaffId(pName, pActor, param_2);
|
||||
}
|
||||
|
||||
inline int dComIfGp_evmng_getMyActIdx(int i_staffIdx, char** param_1, int param_2, int param_3,
|
||||
int param_4) {
|
||||
return dComIfGp_getPEvtManager()->getMyActIdx(i_staffIdx, param_1, param_2, param_3, param_4);
|
||||
}
|
||||
|
||||
inline int dComIfGp_evmng_getIsAddvance(int param_0) {
|
||||
return dComIfGp_getPEvtManager()->getIsAddvance(param_0);
|
||||
}
|
||||
|
||||
@@ -301,6 +301,10 @@ inline dJntCol_c* fopAcM_GetJntCol(fopAc_ac_c* i_actor) {
|
||||
return i_actor->mJntCol;
|
||||
}
|
||||
|
||||
inline void fopAcM_setCullSizeFar(fopAc_ac_c* i_actor, f32 i_far) {
|
||||
i_actor->mCullSizeFar = i_far;
|
||||
}
|
||||
|
||||
inline f32 fopAcM_getCullSizeFar(const fopAc_ac_c* i_actor) {
|
||||
return i_actor->mCullSizeFar;
|
||||
}
|
||||
|
||||
@@ -39,6 +39,7 @@ private:
|
||||
class daHorse_c : public fopAc_ac_c {
|
||||
public:
|
||||
enum daHorse_ERFLG0 {
|
||||
/* 0x001 */ ERFLG0_UNK_1 = 0x1,
|
||||
/* 0x010 */ MOVE_ACCEPT = 0x10,
|
||||
/* 0x080 */ RIDE_RUN_FLG = 0x80,
|
||||
/* 0x100 */ CUT_TURN_CANCEL = 0x100,
|
||||
@@ -157,6 +158,7 @@ public:
|
||||
bool checkEndResetStateFlg0(daHorse_ERFLG0 flag) { return mEndResetStateFlg0 & flag; }
|
||||
bool checkStateFlg0(daHorse_FLG0 flag) const { return mStateFlg0 & flag; }
|
||||
f32 getNormalMaxSpeedF() { return mNormalMaxSpeedF; }
|
||||
f32 getLashMaxSpeedF() { return mLashMaxSpeedF; }
|
||||
void changeDemoMoveAngle(s16 angle) { mDemoMoveAngle = angle; }
|
||||
void setDemoStickR(f32 stick) { mDemoStickR = stick; }
|
||||
void i_changeDemoMode(u32 param_0, int param_1) { field_0x1740 = param_0; field_0x1728 = param_1; }
|
||||
@@ -166,6 +168,7 @@ public:
|
||||
void offRideFlg() { (this->*mpOffRideFlgFn)(); }
|
||||
void onStateFlg0(daHorse_FLG0 flag) { mStateFlg0 |= flag; }
|
||||
void offStateFlg0(daHorse_FLG0 flag) { mStateFlg0 &= ~flag; }
|
||||
void onEndResetStateFlg0(daHorse_ERFLG0 i_flag) { mEndResetStateFlg0 |= i_flag;}
|
||||
void offNoDrawWait() { offStateFlg0(NO_DRAW_WAIT); }
|
||||
int checkSpecialWallHit(const cXyz& param_0) { return (this->*mpCheckSpecialWallHitFn)(param_0); }
|
||||
|
||||
@@ -173,6 +176,13 @@ public:
|
||||
bool checkTurnStand() const { return checkResetStateFlg0(TURN_STAND); }
|
||||
bool checkRodeoMode() const { return checkStateFlg0(RODEO_MODE); }
|
||||
|
||||
void onTagJump(f32 param_0, f32 param_1, f32 param_2) {
|
||||
field_0x1768 = param_0;
|
||||
field_0x176c = param_1;
|
||||
field_0x1770 = param_2;
|
||||
onEndResetStateFlg0(ERFLG0_UNK_1);
|
||||
}
|
||||
|
||||
static u8 const m_footJointTable[8];
|
||||
static f32 const m_callLimitDistance2;
|
||||
|
||||
|
||||
@@ -1,6 +1,48 @@
|
||||
#ifndef D_A_SCENE_EXIT2_H
|
||||
#define D_A_SCENE_EXIT2_H
|
||||
|
||||
#include "dolphin/types.h"
|
||||
#include "f_op/f_op_actor_mng.h"
|
||||
|
||||
class daScExit_c : public fopAc_ac_c {
|
||||
public:
|
||||
enum act_e {
|
||||
WAIT_e,
|
||||
START_e,
|
||||
SCENE_CHG_e,
|
||||
};
|
||||
|
||||
enum action_e {
|
||||
ACTION_WAIT_e,
|
||||
ACTION_ORDER_EVENT_e,
|
||||
ACTION_EVENT_e,
|
||||
ACTION_DEAD_e,
|
||||
};
|
||||
|
||||
/* 8059E158 */ void initBaseMtx();
|
||||
/* 8059E178 */ void setBaseMtx();
|
||||
/* 8059E1B0 */ int Create();
|
||||
/* 8059E230 */ int create();
|
||||
/* 8059E2C0 */ int execute();
|
||||
/* 8059E2E4 */ void event_proc_call();
|
||||
/* 8059E3A0 */ void actionWait();
|
||||
/* 8059E408 */ void actionOrderEvent();
|
||||
/* 8059E488 */ void actionEvent();
|
||||
/* 8059E504 */ void actionDead();
|
||||
/* 8059E508 */ int demoProc();
|
||||
/* 8059E6CC */ BOOL checkArea();
|
||||
/* 8059E714 */ int draw();
|
||||
/* 8059E71C */ int _delete();
|
||||
|
||||
int getSceneID() { return fopAcM_GetParamBit(this, 0, 8); }
|
||||
void setAction(u8 i_action) { mAction = i_action; }
|
||||
|
||||
/* 0x568 */ request_of_phase_process_class mPhase;
|
||||
/* 0x570 */ int mStaffID;
|
||||
/* 0x574 */ f32 mRadius;
|
||||
/* 0x578 */ s16 mEventID;
|
||||
/* 0x57A */ u8 mToolID;
|
||||
/* 0x57B */ u8 mAction;
|
||||
/* 0x57C */ u8 mTimer;
|
||||
};
|
||||
|
||||
#endif /* D_A_SCENE_EXIT2_H */
|
||||
|
||||
@@ -1,6 +1,32 @@
|
||||
#ifndef D_A_TAG_HJUMP_H
|
||||
#define D_A_TAG_HJUMP_H
|
||||
|
||||
#include "dolphin/types.h"
|
||||
#include "d/bg/d_bg_s_movebg_actor.h"
|
||||
#include "f_op/f_op_actor_mng.h"
|
||||
|
||||
class daTagHjump_c : public dBgS_MoveBgActor {
|
||||
public:
|
||||
enum Type_e {
|
||||
TYPE_TRIGGER_e = 0,
|
||||
TYPE_OBJECT_e = 3,
|
||||
};
|
||||
|
||||
/* 805A3B24 */ int create();
|
||||
/* 805A3DA0 */ ~daTagHjump_c();
|
||||
/* 805A3E70 */ int execute();
|
||||
|
||||
/* 805A3AB8 */ virtual int CreateHeap();
|
||||
/* 805A4154 */ virtual int Draw();
|
||||
|
||||
/* 0x5A0 */ request_of_phase_process_class mPhase;
|
||||
/* 0x5A8 */ J3DModel* mpModel;
|
||||
/* 0x5AC */ u8 mType;
|
||||
/* 0x5AD */ u8 field_0x5ad;
|
||||
/* 0x5AE */ s16 field_0x5ae;
|
||||
/* 0x5B0 */ u16 mOnFlagID;
|
||||
/* 0x5B2 */ u16 mOffFlagID;
|
||||
/* 0x5B4 */ f32 field_0x5b4;
|
||||
/* 0x5B8 */ f32 field_0x5b8;
|
||||
};
|
||||
|
||||
#endif /* D_A_TAG_HJUMP_H */
|
||||
|
||||
Reference in New Issue
Block a user