mirror of
https://github.com/zeldaret/tww.git
synced 2026-07-07 13:23:27 -04:00
D_a_npc_hr matching (#973)
* progress push * matching * documentation and cleanup * feedback from pr review
This commit is contained in:
+1
-1
@@ -1639,7 +1639,7 @@ config.libs = [
|
||||
ActorRel(NonMatching, "d_a_npc_gp1"),
|
||||
ActorRel(MatchingFor("GZLJ01", "GZLE01", "GZLP01"), "d_a_npc_hi1"),
|
||||
ActorRel(NonMatching, "d_a_npc_ho"),
|
||||
ActorRel(NonMatching, "d_a_npc_hr"),
|
||||
ActorRel(Matching, "d_a_npc_hr"),
|
||||
ActorRel(NonMatching, "d_a_npc_jb1"),
|
||||
ActorRel(NonMatching, "d_a_npc_ji1"),
|
||||
ActorRel(Matching, "d_a_npc_kamome"),
|
||||
|
||||
+234
-106
@@ -4,170 +4,298 @@
|
||||
#include "f_op/f_op_actor.h"
|
||||
#include "d/d_cc_d.h"
|
||||
#include "d/d_particle.h"
|
||||
#include "d/d_npc.h"
|
||||
|
||||
class daNpc_Wind_Eff {
|
||||
class daNpc_Wind_Eff{
|
||||
public:
|
||||
|
||||
enum WindEffStates {
|
||||
WIND_EFF_INACTIVE = 0,
|
||||
WIND_EFF_FADE_IN = 1,
|
||||
WIND_EFF_ACTIVE = 2,
|
||||
WIND_EFF_FADE_OUT = 3,
|
||||
};
|
||||
|
||||
void init();
|
||||
void remove();
|
||||
void create(cXyz*);
|
||||
void end();
|
||||
BOOL create(cXyz*);
|
||||
BOOL end();
|
||||
void proc();
|
||||
void setspd();
|
||||
void move();
|
||||
|
||||
public:
|
||||
/* 0x00 */ int m00;
|
||||
/* 0x04 */ u8 m04[0x14 - 0x04];
|
||||
/* 0x00 */ dPa_followEcallBack mpFollowECallBack;
|
||||
/* 0x14 */ cXyz mPos;
|
||||
/* 0x20 */ cXyz mVel;
|
||||
/* 0x2C */ cXyz* m2C;
|
||||
/* 0x30 */ f32 m30;
|
||||
/* 0x34 */ u8 m34;
|
||||
/* 0x35 */ u8 m35[0x38 - 0x35];
|
||||
};
|
||||
/* 0x20 */ cXyz mSpeed;
|
||||
/* 0x2C */ cXyz* mpSquallPos;
|
||||
/* 0x30 */ f32 mAlphaFactor;
|
||||
/* 0x34 */ u8 mWindEffState;
|
||||
/* 0x35 */ u8 field_0x35[0x38 - 0x35];
|
||||
}; // Size: 0x38
|
||||
|
||||
class daNpc_Wind_Clothes {
|
||||
public:
|
||||
void setSquallPos(int);
|
||||
void create(fopAc_ac_c*, unsigned char, float*, int);
|
||||
void end();
|
||||
BOOL create(fopAc_ac_c*, u8, f32*, int);
|
||||
BOOL end();
|
||||
void proc();
|
||||
void init();
|
||||
void remove();
|
||||
|
||||
public:
|
||||
/* 0x000 */ daNpc_Wind_Eff mEff[4];
|
||||
/* 0x000 */ daNpc_Wind_Eff mWindEff[4];
|
||||
/* 0x0E0 */ s16 mSquallCounter[4];
|
||||
/* 0x0E8 */ cXyz mSquallPos[4];
|
||||
/* 0x118 */ u8 m118;
|
||||
/* 0x119 */ u8 m119[0x11C - 0x119];
|
||||
/* 0x11C */ fpc_ProcID mActorProcID;
|
||||
/* 0x120 */ f32 m120;
|
||||
/* 0x124 */ f32 m124;
|
||||
/* 0x128 */ f32 m128;
|
||||
/* 0x12C */ f32 m12C;
|
||||
/* 0x130 */ f32 m130;
|
||||
};
|
||||
/* 0x118 */ u8 mSquallState;
|
||||
/* 0x119 */ u8 field_0x119[0x11C - 0x119];
|
||||
/* 0x11C */ fpc_ProcID mProcId;
|
||||
/* 0x120 */ f32 squallOrbitParam[5];
|
||||
|
||||
/*
|
||||
squallOrbitParam[0] = centerOffsetX
|
||||
squallOrbitParam[1] = centerOffsetY
|
||||
squallOrbitParam[2] = orbitRadius
|
||||
squallOrbitParam[3] = layerSpacingZ
|
||||
squallOrbitParam[4] = baseOffsetZ
|
||||
*/
|
||||
|
||||
}; // Size: 0x134
|
||||
|
||||
class daNpc_Hr_c : public fopAc_ac_c {
|
||||
public:
|
||||
void ChkOrder(unsigned char) {}
|
||||
void ClrOrder() {}
|
||||
void SetOrder(unsigned char) {}
|
||||
void chkEvFlag(unsigned short) {}
|
||||
void chkFlag(unsigned short) {}
|
||||
void clrEvFlag(unsigned short) {}
|
||||
void clrFlag(unsigned short) {}
|
||||
void getBackboneJntNum() {}
|
||||
void getBackbone_y() {}
|
||||
void getHeadJntNum() {}
|
||||
void getHead_x() {}
|
||||
void getHead_y() {}
|
||||
void incAttnSetCount() {}
|
||||
void setAction(int (daNpc_Hr_c::*)(void*), void*) {}
|
||||
void setAttentionBasePos(cXyz) {}
|
||||
void setEvFlag(unsigned short) {}
|
||||
void setEyePos(cXyz) {}
|
||||
void setFlag(unsigned short) {}
|
||||
enum HrFlags {
|
||||
HR_FLAG_00000001 = 0x00000001,
|
||||
HR_FLAG_00000002 = 0x00000002,
|
||||
HR_FLAG_00000008 = 0x00000008,
|
||||
HR_FLAG_00000010 = 0x00000010,
|
||||
HR_FLAG_00000020 = 0x00000020,
|
||||
HR_FLAG_00000040 = 0x00000040,
|
||||
HR_FLAG_00000080 = 0x00000080,
|
||||
HR_FLAG_00000100 = 0x00000100,
|
||||
HR_FLAG_00000200 = 0x00000200,
|
||||
HR_FLAG_00000400 = 0x00000400,
|
||||
HR_FLAG_00000800 = 0x00000800,
|
||||
};
|
||||
|
||||
void getShapeType();
|
||||
void getSwbit();
|
||||
void XyCheckCB(int);
|
||||
enum EvFlags {
|
||||
EVFLAG_LOCK_ROTATION = 0x00000001,
|
||||
EVFLAG_SKIP_UPDATE = 0x00000002,
|
||||
EVFLAG_TORNADO_ACTIVE = 0x00000008,
|
||||
EVFLAG_EVENT_CHANGE_REQ = 0x00000010,
|
||||
EVFLAG_TACT_SOUND_ACTIVE = 0x00000020,
|
||||
};
|
||||
|
||||
enum HrStates {
|
||||
HR_STATE_WAIT_01 = 0,
|
||||
HR_STATE_WAIT_02 = 1,
|
||||
HR_STATE_TALK = 2,
|
||||
HR_STATE_HT_TACT = 3,
|
||||
|
||||
HR_STATE_RT_SEARCH = 5,
|
||||
HR_STATE_RT_HIDE = 6,
|
||||
HR_STATE_RT_INTRO = 7,
|
||||
HR_STATE_RT_ANGRY = 8,
|
||||
HR_STATE_RT_HIT_0 = 9,
|
||||
HR_STATE_RT_HIT_1 = 10,
|
||||
|
||||
HR_STATE_HT_HIDE = 11,
|
||||
HR_STATE_RT_WIN = 12,
|
||||
};
|
||||
|
||||
enum ActionStatus {
|
||||
ACTION_STARTING = 0,
|
||||
ACTION_ONGOING = 1,
|
||||
ACTION_ENDING = -1,
|
||||
};
|
||||
|
||||
enum TalkStates {
|
||||
TALK_INIT = 0,
|
||||
TALK_MSG_CREATE = 1,
|
||||
TALK_ACTIVE = 2,
|
||||
TALK_FINISHED = -1
|
||||
};
|
||||
|
||||
typedef int (daNpc_Hr_c::*ActionFunc)(void*);
|
||||
|
||||
bool ChkOrder(u8 temp) { return mOrderFlags & temp; }
|
||||
void ClrOrder() { mOrderFlags = 0; }
|
||||
void SetOrder(u8 temp) { mOrderFlags |= temp; }
|
||||
bool chkEvFlag(u16 evFlag) { return (mEvFlags & evFlag) == evFlag; }
|
||||
bool chkFlag(u16 flag) { return (mFlags & flag) == flag; }
|
||||
void clrEvFlag(u16 evFlag) { mEvFlags &= ~evFlag; }
|
||||
void clrFlag(u16 flag) { mFlags &= ~flag; }
|
||||
s8 getBackboneJntNum() { return m_jnt.getBackboneJntNum(); }
|
||||
s16 getBackbone_y() { return m_jnt.getBackbone_y(); }
|
||||
s8 getHeadJntNum() { return m_jnt.getHeadJntNum(); }
|
||||
s16 getHead_x() { return m_jnt.getHead_x(); }
|
||||
s16 getHead_y() { return m_jnt.getHead_y(); }
|
||||
|
||||
void incAttnSetCount() {
|
||||
if (mAttnSetCount != 0xff) {
|
||||
mAttnSetCount++;
|
||||
}
|
||||
}
|
||||
|
||||
BOOL setAction(ActionFunc actionFunc, void* arg) {
|
||||
if (mCurrActionFunc != actionFunc) {
|
||||
if (mCurrActionFunc != NULL) {
|
||||
mActionStatus = ACTION_ENDING;
|
||||
(this->*mCurrActionFunc)(arg);
|
||||
}
|
||||
mCurrActionFunc = actionFunc;
|
||||
mActionStatus = ACTION_STARTING;
|
||||
(this->*mCurrActionFunc)(arg);
|
||||
}
|
||||
return TRUE;
|
||||
}
|
||||
|
||||
void setAttentionBasePos(cXyz i_attnBasePos) { mAttnBasePos = i_attnBasePos; }
|
||||
void setEvFlag(u16 evFlag) { mEvFlags |= evFlag;}
|
||||
void setEyePos(cXyz i_eyePos) { mEyePos = i_eyePos; }
|
||||
void setFlag(u16 flag) { mFlags |= flag; }
|
||||
|
||||
daNpc_Hr_c();
|
||||
int getShapeType();
|
||||
int getSwbit();
|
||||
s16 XyCheckCB(int);
|
||||
void onHide(int);
|
||||
void offHide(int);
|
||||
void defaultSetPos(cXyz*);
|
||||
void getNowEventAction();
|
||||
s32 getNowEventAction();
|
||||
void demoInitWind();
|
||||
void demoProcWind(int);
|
||||
bool demoProcWind(int);
|
||||
void demoInitWait();
|
||||
void demoProcWait();
|
||||
BOOL demoProcWait();
|
||||
void demoInitSpeak();
|
||||
void demoProcSpeak();
|
||||
void demoProcPatten();
|
||||
void demoProcTact0();
|
||||
void demoProcTact1();
|
||||
void demoProcTact2();
|
||||
void demoProcTact3();
|
||||
void calcKaijou(int);
|
||||
BOOL demoProcSpeak();
|
||||
BOOL demoProcPatten();
|
||||
BOOL demoProcTact0();
|
||||
BOOL demoProcTact1();
|
||||
BOOL demoProcTact2();
|
||||
BOOL demoProcTact3();
|
||||
int calcKaijou(int);
|
||||
void demoInitMove();
|
||||
void demoInitSmall();
|
||||
void demoProcSmall();
|
||||
void demoProcMove();
|
||||
BOOL demoProcSmall();
|
||||
bool demoProcMove();
|
||||
void demoInitChange();
|
||||
void demoInitCom();
|
||||
void demoProcCom();
|
||||
void demoProc();
|
||||
bool demoProc();
|
||||
void node_Ht_ant(int);
|
||||
void initTexPatternAnm(bool);
|
||||
BOOL initTexPatternAnm(bool);
|
||||
void playTexPatternAnm();
|
||||
void setTexPtn(signed char);
|
||||
void setAnm(signed char);
|
||||
void setTexPtn(s8);
|
||||
void setAnm(s8);
|
||||
void setAnmStatus();
|
||||
void eventOrder();
|
||||
void checkOrder();
|
||||
void next_msgStatus(unsigned long*);
|
||||
void getMsg();
|
||||
u16 next_msgStatus(u32*);
|
||||
u32 getMsg();
|
||||
void setCollision();
|
||||
void nextAnm(signed char, int);
|
||||
void msgAnm(unsigned char);
|
||||
void nextAnm(s8, int);
|
||||
void msgAnm(u8);
|
||||
void talkInit();
|
||||
void talk();
|
||||
void init();
|
||||
u16 talk();
|
||||
BOOL init();
|
||||
void setAttention(bool);
|
||||
void getNowJointY();
|
||||
int getNowJointY();
|
||||
void getTornadoPos(int, cXyz*);
|
||||
void rideTornado();
|
||||
void getLookBackMode();
|
||||
bool rideTornado();
|
||||
u8 getLookBackMode();
|
||||
void lookBack();
|
||||
void rt_search();
|
||||
void rt_hide();
|
||||
void rt_intro();
|
||||
bool rt_search();
|
||||
bool rt_hide();
|
||||
bool rt_intro();
|
||||
void to_rt_hit();
|
||||
void to_rt_tact();
|
||||
void rt_angry();
|
||||
void rt_win();
|
||||
void rt_hit0();
|
||||
void rt_hit1();
|
||||
void ht_hide();
|
||||
void wait01();
|
||||
void wait02();
|
||||
bool rt_angry();
|
||||
bool rt_win();
|
||||
bool rt_hit0();
|
||||
bool rt_hit1();
|
||||
bool ht_hide();
|
||||
bool wait01();
|
||||
bool wait02();
|
||||
void endTalk();
|
||||
void endTact();
|
||||
void setEmitFlash(float);
|
||||
void setEmitFlash(f32);
|
||||
void smokeProc();
|
||||
void talk01();
|
||||
void ht_tact01();
|
||||
void wait_action(void*);
|
||||
bool talk01();
|
||||
bool ht_tact01();
|
||||
BOOL wait_action(void*);
|
||||
BOOL _draw();
|
||||
BOOL _execute();
|
||||
BOOL _delete();
|
||||
cPhs_State _create();
|
||||
void CreateHeap();
|
||||
BOOL CreateHeap();
|
||||
|
||||
public:
|
||||
/* 0x290 */ u8 m290[0x294 - 0x290];
|
||||
/* 0x294 */ cXyz mPos;
|
||||
/* 0x2A0 */ u8 m2A0[0x2A8 - 0x2A0];
|
||||
/* 0x2A8 */ request_of_phase_process_class mResHrPhs;
|
||||
/* 0x2B0 */ u8 m2B0[0x314 - 0x2B0];
|
||||
/* 0x314 */ cCcD_Obj mObj0;
|
||||
/* 0x364 */ u8 m364[0x42C - 0x364];
|
||||
/* 0x42C */ cM3dGCyl m42C;
|
||||
/* 0x444 */ u8 m444[0x598 - 0x444];
|
||||
/* 0x598 */ cM3dGCyl m598;
|
||||
/* 0x5B0 */ u8 m5B0[0x608 - 0x5B0];
|
||||
/* 0x608 */ u16 m608;
|
||||
/* 0x60A */ u8 m60A[0x60C - 0x60A];
|
||||
/* 0x60C */ u8 m60C;
|
||||
/* 0x60D */ u8 m60D[0x610 - 0x60D];
|
||||
/* 0x290 */ s8 m_waist_jnt_num;
|
||||
/* 0x291 */ u8 field_0x291[0x294 - 0x291];
|
||||
/* 0x294 */ cXyz mCloudPos;
|
||||
/* 0x2A0 */ s16 mEventIdx;
|
||||
/* 0x2A2 */ s8 mAnmIdx;
|
||||
/* 0x2A3 */ u8 field_0x2A3[0x2A4 - 0x2A3];
|
||||
/* 0x2A4 */ s16 mHeadRotation;
|
||||
/* 0x2A6 */ u8 field_0x2A6[0x2A8 - 0x2A6];
|
||||
/* 0x2A8 */ request_of_phase_process_class mPhs;
|
||||
/* 0x2B0 */ mDoExt_McaMorf* mpHrMorf;
|
||||
/* 0x2B4 */ J3DModel* mpBrowModel;
|
||||
/* 0x2B8 */ mDoExt_McaMorf* mpAntennaMorf;
|
||||
/* 0x2BC */ J3DAnmTexPattern* m_head_tex_pattern;
|
||||
/* 0x2C0 */ mDoExt_btpAnm mBtpAnm;
|
||||
/* 0x2D4 */ u8 mBlinkFrame;
|
||||
/* 0x2D5 */ u8 field_0x2D5[0x2D6 - 0x2D5];
|
||||
/* 0x2D6 */ s16 mBlinkTimer;
|
||||
/* 0x2D8 */ dCcD_Stts mStts;
|
||||
/* 0x314 */ dCcD_Cyl mCyl;
|
||||
/* 0x444 */ dCcD_Stts mStts2;
|
||||
/* 0x480 */ dCcD_Cyl mCyl2;
|
||||
/* 0x5B0 */ dNpc_JntCtrl_c m_jnt;
|
||||
/* 0x5E4 */ cXyz mEyePos;
|
||||
/* 0x5F0 */ cXyz mAttnBasePos;
|
||||
/* 0x5FC */ s16 mMaxHeadTurnVelocity;
|
||||
/* 0x5FE */ s8 mAnmEnded;
|
||||
/* 0x5FF */ u8 mAttnSetCount;
|
||||
/* 0x600 */ f32 mAnmTimer;
|
||||
/* 0x604 */ u32 mCurrMsgNo;
|
||||
/* 0x608 */ u16 mFlags;
|
||||
/* 0x60A */ u8 field_0x60A;
|
||||
/* 0x60B */ u8 mHitCount;
|
||||
/* 0x60C */ u8 mHitDelayTimer;
|
||||
/* 0x60D */ u8 field_0x60D[0x610 - 0x60D];
|
||||
/* 0x610 */ dPa_followEcallBack mSmokeCallBack;
|
||||
/* 0x624 */ u8 m624[0x638 - 0x624];
|
||||
/* 0x638 */ u8 m638;
|
||||
/* 0x639 */ u8 m639[0x63A - 0x639];
|
||||
/* 0x63A */ u8 mType;
|
||||
/* 0x63B */ u8 m63B[0x694 - 0x63B];
|
||||
#if VERSION == VERSION_DEMO
|
||||
JPABaseEmitter* mpEmitter;
|
||||
#endif
|
||||
/* 0x624 */ fpc_ProcID mProcId;
|
||||
/* 0x628 */ ActionFunc mCurrActionFunc;
|
||||
/* 0x634 */ s8 mTexPatternIdx;
|
||||
/* 0x635 */ u8 mMsgAnmIdx;
|
||||
/* 0x636 */ u8 mAnmLoopCount;
|
||||
/* 0x637 */ u8 mOrderFlags;
|
||||
/* 0x638 */ s8 mState;
|
||||
/* 0x639 */ s8 mReturnState;
|
||||
/* 0x63A */ s8 mType;
|
||||
/* 0x63B */ s8 mActionStatus;
|
||||
/* 0x63C */ s8 mTalkState;
|
||||
/* 0x63D */ u8 field_0x63D[0x640 - 0x63D];
|
||||
/* 0x640 */ int mStaffIdx;
|
||||
/* 0x644 */ u32 mMsgNo;
|
||||
/* 0x648 */ f32 mScaleFactor;
|
||||
/* 0x64C */ u8 field_0x64C[0x650 - 0x64C];
|
||||
/* 0x650 */ s16 mMoveTimer;
|
||||
/* 0x652 */ s16 mBrakeTime;
|
||||
/* 0x654 */ cXyz mTargetPos;
|
||||
/* 0x660 */ s16 mTargetAngle;
|
||||
/* 0x662 */ u8 mEvFlags;
|
||||
/* 0x663 */ u8 field_0x663[0x664 - 0x663];
|
||||
/* 0x664 */ cXyz mPrevAntennaPos;
|
||||
/* 0x670 */ cXyz mAntennaVelocity;
|
||||
/* 0x67C */ cXyz mAntennaOffset;
|
||||
/* 0x688 */ cXyz mAntennaRotation;
|
||||
/* 0x694 */ daNpc_Wind_Clothes mClothes;
|
||||
/* 0x7C8 */ u8 m7C8[0x828 - 0x7C8];
|
||||
};
|
||||
}; // Size: 0x7C8
|
||||
|
||||
#endif /* D_A_NPC_HR_H */
|
||||
|
||||
@@ -63,6 +63,7 @@ public:
|
||||
MODE_CANNON_e = 9,
|
||||
MODE_CRANE_e = 10,
|
||||
MODE_CRANE_UP_e = 11,
|
||||
MODE_TORNADO_UP_e = 12,
|
||||
MODE_START_MODE_WARP_e = 13,
|
||||
MODE_TACT_WARP_e = 14,
|
||||
MODE_START_MODE_THROW_e = 16,
|
||||
@@ -142,8 +143,8 @@ public:
|
||||
daTornado_c* getTornadoActor() const { return mTornadoActor; }
|
||||
fopAc_ac_c* getWhirlActor() const { return mWhirlActor; }
|
||||
#endif
|
||||
void checkTornadoFlg() const {}
|
||||
void checkTornadoUp() const {}
|
||||
bool checkTornadoFlg() const { return mTornadoID != fpcM_ERROR_PROCESS_ID_e; }
|
||||
bool checkTornadoUp() const { return mCurMode == MODE_TORNADO_UP_e; }
|
||||
f32 getBeltSpeed() const { return m1044.absXZ(); }
|
||||
s16 getCannonAngleX() const { return shape_angle.x + m0396 - 0x4000; }
|
||||
s16 getCannonAngleY() const { return shape_angle.y + m0394; }
|
||||
|
||||
@@ -3225,6 +3225,14 @@ inline u16 dComIfGp_event_checkHind(u16 i_hindFlag) {
|
||||
return g_dComIfG_gameInfo.play.getEvent()->checkHind(i_hindFlag);
|
||||
}
|
||||
|
||||
inline void dComIfGp_event_onHindFlag(u16 flag) {
|
||||
g_dComIfG_gameInfo.play.getEvent()->onHindFlag(flag);
|
||||
}
|
||||
|
||||
inline void dComIfGp_event_offHindFlag(u16 flag) {
|
||||
g_dComIfG_gameInfo.play.getEvent()->offHindFlag(flag);
|
||||
}
|
||||
|
||||
/**
|
||||
* Returns the button (X Y or Z) that was used to start this event.
|
||||
* @return The dTalkXYButton_e of the button the player used to initiate this event.
|
||||
@@ -3389,6 +3397,10 @@ inline char* dComIfGp_evmng_getMyActName(int staffIdx) {
|
||||
return dComIfGp_getPEvtManager()->getMyActName(staffIdx);
|
||||
}
|
||||
|
||||
inline s32 dComIfGp_evmng_getMySubstanceNum(int staffIdx, char* name) {
|
||||
return dComIfGp_getPEvtManager()->getMySubstanceNum(staffIdx, name);
|
||||
}
|
||||
|
||||
inline f32* dComIfGp_evmng_getMyFloatP(int staffIdx, char* name) {
|
||||
return reinterpret_cast<f32*>(dComIfGp_getPEvtManager()->getMySubstanceP(staffIdx, name, dEvDtData_c::TYPE_FLOAT));
|
||||
}
|
||||
|
||||
@@ -369,6 +369,7 @@ void dKyw_pwind_cylinder_set(WIND_INFLUENCE*);
|
||||
cXyz dKyw_pntwind_get_vecpow(cXyz* pPos);
|
||||
void dKyw_evt_wind_set(s16 i_windX, s16 i_windY);
|
||||
void dKyw_evt_wind_set_go();
|
||||
void dKyw_tact_wind_set(s16 i_windX, s16 i_windY);
|
||||
void dKyw_get_AllWind_vec(cXyz* param_0, cXyz* i_direction, f32* i_power);
|
||||
cXyz dKyw_get_AllWind_vecpow(cXyz* param_0);
|
||||
int dKyw_get_tactwind_dir();
|
||||
|
||||
+1
-1
@@ -159,7 +159,7 @@ enum {
|
||||
/* 0x97 */ DSNAP_TYPE_UNK97,
|
||||
/* 0x98 */ DSNAP_TYPE_BTSW,
|
||||
/* 0x99 */ DSNAP_TYPE_DR,
|
||||
/* 0x9A */ DSNAP_TYPE_UNK9A,
|
||||
/* 0x9A */ DSNAP_TYPE_HR,
|
||||
/* 0x9B */ DSNAP_TYPE_UNK9B,
|
||||
/* 0x9C */ DSNAP_TYPE_CB1,
|
||||
/* 0x9D */ DSNAP_TYPE_UNK9D,
|
||||
|
||||
@@ -615,6 +615,7 @@ fopAc_ac_c* fopAcM_searchFromName4Event(char* name, s16 eventID);
|
||||
|
||||
BOOL fopAcM_getWaterY(const cXyz*, f32*);
|
||||
void fpoAcM_relativePos(fopAc_ac_c* actor, cXyz* p_inPos, cXyz* p_outPos);
|
||||
void fpoAcM_absolutePos(fopAc_ac_c* actor, cXyz* p_inPos, cXyz* p_outPos);
|
||||
|
||||
void fopAcM_setGbaName(fopAc_ac_c* i_this, u8 itemNo, u8 gbaName0, u8 gbaName1);
|
||||
|
||||
|
||||
+1911
-150
File diff suppressed because it is too large
Load Diff
Reference in New Issue
Block a user