mirror of https://github.com/zeldaret/tp.git
d_a_mg_fish matching (#2450)
This commit is contained in:
parent
15463d89bf
commit
3c2a99e701
|
|
@ -258,7 +258,7 @@ lbl_78_data_10 = .data:0x00000010; // type:object size:0x10
|
|||
check_kind = .data:0x00000020; // type:object size:0x8 scope:global
|
||||
vib_p$3694 = .data:0x00000028; // type:object size:0x10 scope:local
|
||||
learn_d$3913 = .data:0x00000038; // type:object size:0x5 scope:local
|
||||
swim_path127 = .data:0x00000040; // type:object size:0x2B0 scope:global
|
||||
swim_path = .data:0x00000040; // type:object size:0x2B0 scope:global
|
||||
joint_offset_LM$5310 = .data:0x000002F0; // type:object size:0xC scope:local
|
||||
joint_offset_BG$5311 = .data:0x000002FC; // type:object size:0x8 scope:local
|
||||
joint_offset_NP$5312 = .data:0x00000304; // type:object size:0x18 scope:local
|
||||
|
|
@ -303,12 +303,13 @@ __global_destructor_chain = .bss:0x00000000; // type:object size:0x4 scope:globa
|
|||
@1014 = .bss:0x00000038; // type:object size:0x1 scope:local
|
||||
@1012 = .bss:0x0000003C; // type:object size:0x1 scope:local
|
||||
@1010 = .bss:0x00000040; // type:object size:0x1 scope:local
|
||||
@1009 = .bss:0x00000044; // type:object size:0x1 scope:local
|
||||
@1007 = .bss:0x00000044; // type:object size:0x1 scope:local
|
||||
lbl_78_bss_46 = .bss:0x00000046; // type:object size:0x1 data:byte
|
||||
@3674 = .bss:0x00000048; // type:object size:0xC scope:local
|
||||
l_HIO = .bss:0x00000054; // type:object size:0x1C scope:global data:byte
|
||||
s_fish_ct = .bss:0x00000070; // type:object size:0x4 scope:global data:4byte
|
||||
@7455 = .bss:0x00000074; // type:object size:0xC scope:local
|
||||
init$5256 = .bss:0x00000080; // type:object size:0x1 scope:local
|
||||
@7458 = .bss:0x00000084; // type:object size:0xC scope:local
|
||||
@7459 = .bss:0x00000090; // type:object size:0xC scope:local
|
||||
@7460 = .bss:0x0000009C; // type:object size:0xC scope:local
|
||||
|
|
|
|||
|
|
@ -1541,7 +1541,7 @@ config.libs = [
|
|||
ActorRel(MatchingFor("GZ2E01"), "d_a_kytag10"),
|
||||
ActorRel(MatchingFor("GZ2E01"), "d_a_kytag11"),
|
||||
ActorRel(MatchingFor("GZ2E01"), "d_a_kytag14"),
|
||||
ActorRel(NonMatching, "d_a_mg_fish"),
|
||||
ActorRel(MatchingFor("GZ2E01"), "d_a_mg_fish"),
|
||||
ActorRel(NonMatching, "d_a_npc_besu"),
|
||||
ActorRel(Equivalent, "d_a_npc_fairy_seirei"),
|
||||
ActorRel(MatchingFor("GZ2E01"), "d_a_npc_fish"),
|
||||
|
|
|
|||
|
|
@ -7,11 +7,16 @@
|
|||
#include "d/d_bg_s_acch.h"
|
||||
#include "d/d_cc_d.h"
|
||||
|
||||
/**
|
||||
* @ingroup actors-unsorted
|
||||
* @class mf_ke_s
|
||||
* @brief Fishing line ("keburu")
|
||||
*
|
||||
* @details
|
||||
*/
|
||||
struct mf_ke_s {
|
||||
/* 80535F74 */ ~mf_ke_s();
|
||||
/* 80535FD4 */ mf_ke_s();
|
||||
|
||||
/* 0x00 */ u8 field_0x0[0x48];
|
||||
/* 0x00 */ cXyz mControlPoints[5];
|
||||
/* 0x3C */ cXyz mMovementDir;
|
||||
};
|
||||
|
||||
/**
|
||||
|
|
@ -22,59 +27,86 @@ struct mf_ke_s {
|
|||
* @details
|
||||
*
|
||||
*/
|
||||
class mg_fish_class : public fopEn_enemy_c {
|
||||
class mg_fish_class {
|
||||
public:
|
||||
/* 0x0 */ fopEn_enemy_c actor;
|
||||
/* 0x5AC */ request_of_phase_process_class mPhaseReq;
|
||||
/* 0x5B4 */ s16 field_0x5b4;
|
||||
/* 0x5B6 */ s16 field_0x5b6;
|
||||
/* 0x5B8 */ s16 field_0x5b8;
|
||||
/* 0x5BC */ f32 field_0x5bc;
|
||||
/* 0x5C0 */ cXyz field_0x5c0;
|
||||
/* 0x5CC */ u8 field_0x5cc[0xc];
|
||||
/* 0x5D8 */ f32 field_0x5d8;
|
||||
/* 0x5DC */ f32 field_0x5dc;
|
||||
/* 0x5B4 */ s16 mBobTimer;
|
||||
/* 0x5B6 */ s16 mCurAction;
|
||||
/* 0x5B8 */ s16 mActionPhase;
|
||||
/* 0x5BC */ f32 mJointScale;
|
||||
/* 0x5C0 */ cXyz mNextPos;
|
||||
/* 0x5CC */ s16 mMovementYaw;
|
||||
/* 0x5CE */ s16 mMovementPitch;
|
||||
/* 0x5D0 */ s16 mMaxStep;
|
||||
/* 0x5D2 */ s16 mCurSwimStep;
|
||||
/* 0x5D4 */ f32 field_0x5d4;
|
||||
/* 0x5D8 */ f32 mSurfaceY;
|
||||
/* 0x5DC */ f32 mGroundY;
|
||||
/* 0x5E0 */ cXyz field_0x5e0;
|
||||
/* 0x5EC */ f32 field_0x5ec;
|
||||
/* 0x5F0 */ f32 field_0x5f0;
|
||||
/* 0x5F4 */ u8 field_0x5f4[8];
|
||||
/* 0x5F0 */ f32 mDistToPlayer;
|
||||
/* 0x5F4 */ s16 mYawToPlayer;
|
||||
/* 0x5F6 */ s16 field_0x5f6;
|
||||
/* 0x5F8 */ s16 field_0x5f8;
|
||||
/* 0x5FC */ char* mResName;
|
||||
/* 0x600 */ mDoExt_McaMorf* mpMorf;
|
||||
/* 0x604 */ J3DAnmTransform* field_0x604;
|
||||
/* 0x608 */ u8 field_0x608[4];
|
||||
/* 0x604 */ J3DAnmTransform* mAnmTransform;
|
||||
/* 0x608 */ u32 mShadowId;
|
||||
/* 0x60C */ int mAnmID;
|
||||
/* 0x610 */ mDoExt_brkAnm* mpBrkAnm;
|
||||
/* 0x614 */ J3DModel* mpModel[3];
|
||||
/* 0x620 */ mDoExt_btpAnm* mpBtpAnm;
|
||||
/* 0x624 */ s16 field_0x624;
|
||||
/* 0x626 */ u8 field_0x626[2];
|
||||
/* 0x628 */ s16 field_0x628;
|
||||
/* 0x62A */ u8 field_0x62a[8];
|
||||
/* 0x632 */ u16 field_0x632;
|
||||
/* 0x624 */ s16 field_0x624[5];
|
||||
/* 0x62E */ s16 field_0x62e;
|
||||
/* 0x630 */ s16 mRemainingHookTime;
|
||||
/* 0x632 */ s16 field_0x632;
|
||||
/* 0x634 */ u8 mGedouKind;
|
||||
/* 0x635 */ u8 mKind2;
|
||||
/* 0x638 */ cXyz field_0x638;
|
||||
/* 0x644 */ u16 field_0x644;
|
||||
/* 0x646 */ u8 field_0x646[0x1e];
|
||||
/* 0x664 */ cXyz field_0x664[10];
|
||||
/* 0x6DC */ csXyz field_0x6dc[10];
|
||||
/* 0x718 */ s16 field_0x718[10];
|
||||
/* 0x72C */ int field_0x72c;
|
||||
/* 0x730 */ s16 field_0x730;
|
||||
/* 0x732 */ u8 field_0x732[0xe];
|
||||
/* 0x644 */ s16 mRotZ;
|
||||
/* 0x648 */ u32 mBaitId;
|
||||
/* 0x64C */ u32 mRodId;
|
||||
/* 0x650 */ f32 field_0x650;
|
||||
/* 0x654 */ f32 field_0x654;
|
||||
/* 0x658 */ s8 mHookedState;
|
||||
/* 0x659 */ s8 field_0x659;
|
||||
/* 0x65A */ s8 field_0x65a;
|
||||
/* 0x65B */ u8 field_0x65b;
|
||||
/* 0x65C */ u8 field_0x65c;
|
||||
/* 0x65D */ u8 field_0x65d;
|
||||
/* 0x660 */ f32 field_0x660;
|
||||
/* 0x664 */ cXyz mJointTranslations[10];
|
||||
/* 0x6DC */ csXyz mJointRotations[10];
|
||||
/* 0x718 */ s16 jointYaws1[10];
|
||||
/* 0x72C */ s32 mNumJoints;
|
||||
/* 0x730 */ s16 jointYaws2[6];
|
||||
/* 0x73C */ f32 field_0x73c;
|
||||
/* 0x740 */ f32 field_0x740;
|
||||
/* 0x744 */ u8 field_0x744[0x10];
|
||||
/* 0x744 */ f32 mBobAmp;
|
||||
/* 0x748 */ f32 field_0x748;
|
||||
/* 0x74C */ f32 field_0x74c;
|
||||
/* 0x750 */ u8 field_0x750;
|
||||
/* 0x754 */ mf_ke_s field_0x754[2];
|
||||
/* 0x7E4 */ mDoExt_3DlineMat0_c field_0x7e4;
|
||||
/* 0x7E4 */ mDoExt_3DlineMat0_c mLineMat;
|
||||
/* 0x800 */ Z2Creature mSound;
|
||||
/* 0x890 */ dBgS_AcchCir mAcchCir;
|
||||
/* 0x8D0 */ dBgS_ObjAcch mAcch;
|
||||
/* 0xAA8 */ dCcD_Stts mCcStatus;
|
||||
/* 0xAE4 */ dCcD_Cyl mCcCyl;
|
||||
/* 0xC20 */ u8 field_0xc20[0x1c];
|
||||
/* 0xC20 */ u32 field_0xc20;
|
||||
/* 0xC24 */ u8 field_0xc24[0xc28 - 0xc24];
|
||||
/* 0xC28 */ s32 mEmitterIds[3];
|
||||
/* 0xC34 */ u32 field_0xc34;
|
||||
/* 0xC38 */ u32 field_0xc38;
|
||||
/* 0xC3C */ u8 field_0xc3c;
|
||||
/* 0xC3D */ u8 field_0xc3d[0xb];
|
||||
/* 0xC3D */ u8 mCaughtType;
|
||||
/* 0xC3E */ u8 field_0xc3e;
|
||||
/* 0xC3F */ u8 field_0xc3f;
|
||||
/* 0xC40 */ f32 field_0xc40;
|
||||
/* 0xC44 */ u8 field_0xc44;
|
||||
/* 0xC48 */ J3DJointCallBack mNodeCallBack;
|
||||
/* 0xC4C */ u32 field_0xc4c;
|
||||
/* 0xC4C */ u32 mSkullfishId;
|
||||
};
|
||||
|
||||
STATIC_ASSERT(sizeof(mg_fish_class) == 0xC50);
|
||||
|
|
@ -82,7 +114,17 @@ STATIC_ASSERT(sizeof(mg_fish_class) == 0xC50);
|
|||
class daMg_Fish_HIO_c {
|
||||
public:
|
||||
/* 80529D2C */ daMg_Fish_HIO_c();
|
||||
/* 805360A8 */ ~daMg_Fish_HIO_c();
|
||||
/* 805360A8 */ virtual ~daMg_Fish_HIO_c() {}
|
||||
|
||||
/* 0x4 */ s8 field_0x4;
|
||||
/* 0x8 */ f32 field_0x8;
|
||||
/* 0xC */ f32 field_0xc;
|
||||
/* 0x10 */ f32 field_0x10;
|
||||
/* 0x14 */ f32 field_0x14;
|
||||
/* 0x18 */ u8 field_0x18;
|
||||
/* 0x19 */ u8 field_0x19;
|
||||
/* 0x1A */ u8 field_0x1a;
|
||||
/* 0x1B */ u8 field_0x1b;
|
||||
};
|
||||
|
||||
|
||||
|
|
|
|||
|
|
@ -9,7 +9,14 @@
|
|||
#include "f_op/f_op_actor_mng.h"
|
||||
|
||||
struct mg_rod_s {
|
||||
/* 0x0 */ cXyz field_0x0[16];
|
||||
/* 0x0 */ u8 field_0x0[0x14 - 0x0];
|
||||
/* 0x14 */ void* field_0x14;
|
||||
/* 0x18 */ u8 field_0x18[0x2E - 0x18];
|
||||
/* 0x2E */ s16 field_0x2e;
|
||||
/* 0x30 */ s16 field_0x30;
|
||||
/* 0x32 */ u8 field_0x32[0x54 - 0x32];
|
||||
/* 0x54 */ u32 field_0x54;
|
||||
/* 0x58 */ u8 field_0x58[0xC0 - 0x58];
|
||||
};
|
||||
|
||||
struct mg_line_s {
|
||||
|
|
@ -43,7 +50,14 @@ public:
|
|||
bool checkRodEquipPermission() { return field_0x1514 == 0; }
|
||||
bool checkReelSpin() { return field_0x14f0 != 0; }
|
||||
|
||||
/* 0x0568 */ u8 field_0x568[0x590 - 0x568];
|
||||
/* 0x0568 */ u8 field_0x568[0x57A - 0x568];
|
||||
/* 0x057A */ s16 field_0x57a;
|
||||
/* 0x057C */ u8 field_0x57c[0x57E - 0x57C];
|
||||
/* 0x057E */ s16 field_0x57e;
|
||||
/* 0x0580 */ s16 field_0x580;
|
||||
/* 0x0582 */ u8 field_0x582[0x584 - 0x582];
|
||||
/* 0x0584 */ s16 field_0x584;
|
||||
/* 0x0586 */ u8 field_0x586[0x590 - 0x586];
|
||||
/* 0x0590 */ f32 field_0x590;
|
||||
/* 0x0594 */ u8 field_0x594[0x5A4 - 0x594];
|
||||
/* 0x05A4 */ mg_rod_s field_0x5a4;
|
||||
|
|
@ -53,9 +67,11 @@ public:
|
|||
/* 0x06C4 */ u8 field_0x6c4[0x6C8 - 0x6C4];
|
||||
/* 0x06C8 */ cXyz field_0x6c8;
|
||||
/* 0x06D4 */ cXyz field_0x6d4;
|
||||
/* 0x06E0 */ u8 field_0x6e0[0x6EC - 0x6E0];
|
||||
/* 0x06E0 */ s16 field_0x6e0;
|
||||
/* 0x06E2 */ u8 field_0x6e2[0x6EC - 0x6E2];
|
||||
/* 0x06EC */ cXyz field_0x6ec;
|
||||
/* 0x06F8 */ u8 field_0x6f8[0x71C - 0x6F8];
|
||||
/* 0x06F8 */ f32 field_0x6f8;
|
||||
/* 0x06FC */ u8 field_0x6fc[0x71C - 0x6FC];
|
||||
/* 0x071C */ csXyz field_0x71c[6];
|
||||
/* 0x0740 */ u8 field_0x740[0x744 - 0x740];
|
||||
/* 0x0744 */ cXyz field_0x744;
|
||||
|
|
@ -63,36 +79,91 @@ public:
|
|||
/* 0x075C */ u8 field_0x75c[0x764 - 0x75C];
|
||||
/* 0x0764 */ cXyz field_0x764;
|
||||
/* 0x0770 */ mg_line_s field_0x770;
|
||||
/* 0x0C20 */ u8 field_0xc20[0xF7C - 0xC20];
|
||||
/* 0x0C20 */ u8 field_0xc20[0xF5C - 0xC20];
|
||||
/* 0x0F5C */ f32 field_0xf5c;
|
||||
/* 0x0F60 */ f32 field_0xf60;
|
||||
/* 0x0F64 */ f32 field_0xf64;
|
||||
/* 0x0F68 */ u8 field_0xf68[0xF7C - 0xF68];
|
||||
/* 0x0F7C */ s16 field_0xf7c;
|
||||
/* 0x0F7E */ s16 field_0xf7e;
|
||||
/* 0x0F80 */ u8 field_0xf80[0xFAC - 0xF80];
|
||||
/* 0x0F80 */ s8 field_0xf80;
|
||||
/* 0x0F81 */ u8 field_0xf81[0xFAC - 0xF81];
|
||||
/* 0x0FAC */ mg_hook_s field_0xfac[2];
|
||||
/* 0x0FEC */ u8 field_0xfec[0x100D - 0xFEC];
|
||||
/* 0x0FEC */ u8 field_0xfec[0xFFC - 0xFEC];
|
||||
/* 0x0FFC */ s16 field_0xffc;
|
||||
/* 0x0FFE */ u8 field_0xffe[2];
|
||||
/* 0x1000 */ s16 field_0x1000;
|
||||
/* 0x1002 */ u8 field_0x1002[2];
|
||||
/* 0x1004 */ s16 field_0x1004;
|
||||
/* 0x1006 */ s16 field_0x1006;
|
||||
/* 0x1008 */ s8 field_0x1008;
|
||||
/* 0x1009 */ s8 field_0x1009;
|
||||
/* 0x100A */ s8 field_0x100a;
|
||||
/* 0x100B */ u8 field_0x100b[1];
|
||||
/* 0x100C */ u8 field_0x100c;
|
||||
/* 0x100D */ s8 field_0x100d;
|
||||
/* 0x100E */ u8 field_0x100e[0x1060 - 0x100E];
|
||||
/* 0x100E */ u8 field_0x100e[1];
|
||||
/* 0x100F */ s8 field_0x100f;
|
||||
/* 0x1010 */ u8 field_0x1010[0x102C - 0x1010];
|
||||
/* 0x102C */ s8 field_0x102c;
|
||||
/* 0x102D */ s8 field_0x102d;
|
||||
/* 0x102E */ u8 field_0x102e[0x1060 - 0x102E];
|
||||
/* 0x1060 */ cXyz mHookPosition;
|
||||
/* 0x106C */ cXyz field_0x106c;
|
||||
/* 0x1078 */ cXyz field_0x1078;
|
||||
/* 0x1084 */ csXyz field_0x1084;
|
||||
/* 0x108A */ u8 field_0x108a[0x10B4 - 0x108A];
|
||||
/* 0x108A */ u8 field_0x108a[0x1090 - 0x108A];
|
||||
/* 0x1090 */ f32 field_0x1090;
|
||||
/* 0x1094 */ u8 field_0x1094[0x10A4 - 0x1094];
|
||||
/* 0x10A4 */ s8 field_0x10a4;
|
||||
/* 0x10A5 */ s8 field_0x10a5;
|
||||
/* 0x10A6 */ s8 field_0x10a6;
|
||||
/* 0x10A7 */ s8 field_0x10a7;
|
||||
/* 0x10A8 */ s8 field_0x10a8;
|
||||
/* 0x10A9 */ s8 field_0x10a9;
|
||||
/* 0x10AA */ s8 field_0x10aa;
|
||||
/* 0x10AB */ u8 field_0x10ab;
|
||||
/* 0x10AC */ s32 mFishId;
|
||||
/* 0x10B0 */ s16 field_0x10b0;
|
||||
/* 0x10B2 */ u8 field_0x10b2[2];
|
||||
/* 0x10B4 */ Z2Creature field_0x10b4;
|
||||
/* 0x1144 */ u8 field_0x1144[0x1190 - 0x1144];
|
||||
/* 0x1144 */ u8 field_0x1144[0x114A - 0x1144];
|
||||
/* 0x114A */ s16 field_0x114a;
|
||||
/* 0x114C */ s16 field_0x114c;
|
||||
/* 0x114E */ u8 field_0x114e[0x1178 - 0x114E];
|
||||
/* 0x1178 */ u32 field_0x1178;
|
||||
/* 0x117C */ u8 field_0x117c[0x1190 - 0x117C];
|
||||
/* 0x1190 */ dBgS_AcchCir field_0x1190;
|
||||
/* 0x11D0 */ dBgS_ObjAcch field_0x11d0;
|
||||
/* 0x13A8 */ u8 field_0x13a8[0x13B4 - 0x13A8];
|
||||
/* 0x13B4 */ s16 field_0x13b4;
|
||||
/* 0x13B6 */ s16 field_0x13b6;
|
||||
/* 0x13B8 */ u8 field_0x13b8[0x1474 - 0x13B8];
|
||||
/* 0x13B8 */ u8 field_0x13b8[0x1408 - 0x13B8];
|
||||
/* 0x1408 */ f32 field_0x1408;
|
||||
/* 0x140C */ u8 field_0x140c[0x1410 - 0x140C];
|
||||
/* 0x1410 */ f32 field_0x1410;
|
||||
/* 0x1414 */ u8 field_0x1414[0x146D - 0x1414];
|
||||
/* 0x146D */ s8 field_0x146d;
|
||||
/* 0x146E */ u8 field_0x146e[0x1474 - 0x146E];
|
||||
/* 0x1474 */ dMsgFlow_c mMsgFlow;
|
||||
/* 0x14C0 */ u8 field_0x14c0[0x14C8 - 0x14C0];
|
||||
/* 0x14C0 */ u8 field_0x14c0[0x14C2 - 0x14C0];
|
||||
/* 0x14C2 */ s16 field_0x14c2;
|
||||
/* 0x14C4 */ u8 field_0x14c4[0x14C8 - 0x14C4];
|
||||
/* 0x14C8 */ f32 mRodStickX;
|
||||
/* 0x14CC */ f32 mRodStickY;
|
||||
/* 0x14D0 */ u8 field_0x14d0[0x14F0 - 0x14D0];
|
||||
/* 0x14F0 */ int field_0x14f0;
|
||||
/* 0x14F4 */ u8 field_0x14f4[0x1514 - 0x14F4];
|
||||
/* 0x14D0 */ u8 field_0x14d0[0x14D8 - 0x14D0];
|
||||
/* 0x14D8 */ f32 field_0x14d8;
|
||||
/* 0x14DC */ f32 field_0x14dc;
|
||||
/* 0x14E0 */ u8 field_0x14e0[0x14F0 - 0x14E0];
|
||||
/* 0x14F0 */ s32 field_0x14f0;
|
||||
/* 0x14F4 */ u8 field_0x14f4[0x14FC - 0x14F4];
|
||||
/* 0x14F4 */ s16 field_0x14fc;
|
||||
/* 0x14F4 */ u8 field_0x14fe[0x1508 - 0x14FE];
|
||||
/* 0x1508 */ f32 field_0x1508;
|
||||
/* 0x150C */ u8 field_0x150c[0x1514 - 0x150C];
|
||||
/* 0x1514 */ u8 field_0x1514;
|
||||
/* 0x1515 */ u8 field_0x1515[0x1518 - 0x1515];
|
||||
/* 0x1515 */ u8 field_0x1515;
|
||||
/* 0x1516 */ u8 field_0x1516[0x1518 - 0x1516];
|
||||
/* 0x1518 */ dCcD_Stts field_0x1518;
|
||||
/* 0x1554 */ dCcD_Sph field_0x1554;
|
||||
/* 0x168C */ u8 field_0x168c;
|
||||
|
|
|
|||
|
|
@ -475,7 +475,7 @@ public:
|
|||
ERFLG0_UNK_200000 = 0x200000,
|
||||
ERFLG0_UNK_100000 = 0x100000,
|
||||
ERFLG0_UNK_80000 = 0x80000,
|
||||
ERFLG0_UNK_40000 = 0x40000,
|
||||
ERFLG0_FISHING_ROD_GET_FISH = 0x40000,
|
||||
ERFLG0_UNK_20000 = 0x20000,
|
||||
ERFLG0_UNK_10000 = 0x10000,
|
||||
ERFLG0_UNK_4000 = 0x4000,
|
||||
|
|
@ -928,6 +928,7 @@ public:
|
|||
void onNotAutoJump() { onEndResetFlg0(ERFLG0_NOT_AUTO_JUMP); }
|
||||
void onNotHang() { onEndResetFlg0(ERFLG0_NOT_HANG); }
|
||||
void onWolfFchainPull() { onEndResetFlg0(ERFLG0_WOLF_FCHAIN_PULL); }
|
||||
void onFishingRodGetFish() { onEndResetFlg0(ERFLG0_FISHING_ROD_GET_FISH); }
|
||||
void onShieldBackBone() { onEndResetFlg1(ERFLG1_GANON_FINISH); }
|
||||
void onWolfEyeKeep() { onEndResetFlg1(ERFLG1_WOLF_EYE_KEEP); }
|
||||
void onPortalWarpMidnaAtnKeep() { onEndResetFlg2(ERFLG2_PORTAL_WARP_MIDNA_ATN_KEEP); }
|
||||
|
|
@ -1143,6 +1144,10 @@ public:
|
|||
onEndResetFlg2(ERFLG2_UNK_2);
|
||||
}
|
||||
|
||||
void onFishingRelease() {
|
||||
this->mEndResetFlg0 |= 0x4000000;
|
||||
}
|
||||
|
||||
static daMidna_c* m_midnaActor;
|
||||
|
||||
void setGiantPuzzle() { mSpecialMode = SMODE_WOLF_PUZZLE; }
|
||||
|
|
|
|||
|
|
@ -106,8 +106,8 @@ dBgS& dComIfG_Bgsp();
|
|||
|
||||
class dKy_tevstr_c;
|
||||
class cBgS_PolyInfo;
|
||||
typedef int (*heapCallbackFunc)(fopAc_ac_c*);
|
||||
typedef int (*createFunc)(void*);
|
||||
typedef int (*heapCallbackFunc)(fopAc_ac_c*);
|
||||
|
||||
struct DOUBLE_POS {
|
||||
double x, y, z;
|
||||
|
|
@ -219,7 +219,7 @@ inline fopAc_ac_c* fopAcM_Search(fopAcIt_JudgeFunc i_judgeFunc, void* i_process)
|
|||
}
|
||||
|
||||
inline fopAc_ac_c* fopAcM_SearchByID(fpc_ProcID id) {
|
||||
return (fopAc_ac_c*)fopAcIt_Judge((fopAcIt_JudgeFunc)fpcSch_JudgeByID, &id);
|
||||
return (fopAc_ac_c*)fopAcIt_Judge(fpcSch_JudgeByID, &id);
|
||||
}
|
||||
|
||||
inline fpc_ProcID fopAcM_GetLinkId(const fopAc_ac_c* i_actor) {
|
||||
|
|
|
|||
|
|
@ -1249,7 +1249,7 @@ int daAlink_c::procCanoeFishingReel() {
|
|||
|
||||
setFishGetFace();
|
||||
|
||||
if (checkEndResetFlg0(ERFLG0_UNK_40000)) {
|
||||
if (checkEndResetFlg0(ERFLG0_FISHING_ROD_GET_FISH)) {
|
||||
procCanoeFishingGetInit();
|
||||
} else if (checkEndResetFlg0(ERFLG0_UNK_20000)) {
|
||||
resetUpperAnime(UPPER_2, -1.0f);
|
||||
|
|
|
|||
File diff suppressed because it is too large
Load Diff
|
|
@ -802,8 +802,8 @@ static cXyz ground_search(npc_ne_class* i_this) {
|
|||
static void* s_fish_sub(void* i_proc, void* i_this) {
|
||||
npc_ne_class* _this = static_cast<npc_ne_class*>(i_this);
|
||||
if (fopAc_IsActor(i_proc) && fopAcM_GetName(i_proc) == PROC_MG_FISH) {
|
||||
mg_fish_class* fish = static_cast<mg_fish_class*>(i_proc);
|
||||
if (fish->field_0x5b6 == 0x35 && fish->field_0x5b8 >= 10) {
|
||||
mg_fish_class* fish = (mg_fish_class*)i_proc;
|
||||
if (fish->mCurAction == 0x35 && fish->mActionPhase >= 10) {
|
||||
_this->mFishID = fopAcM_GetID(fish);
|
||||
return i_proc;
|
||||
}
|
||||
|
|
@ -2852,7 +2852,7 @@ static void demo_camera(npc_ne_class* i_this) {
|
|||
}
|
||||
|
||||
if (i_this->mDemoCounter <= 38) {
|
||||
mg_fish_class* fish = static_cast<mg_fish_class*>(fopAcM_SearchByID(i_this->mFishID));
|
||||
mg_fish_class* fish = (mg_fish_class*)fopAcM_SearchByID(i_this->mFishID);
|
||||
if (i_this->mDemoCounter == 0) {
|
||||
vec.x = 0.0f;
|
||||
vec.y = 0.0f;
|
||||
|
|
@ -2860,10 +2860,10 @@ static void demo_camera(npc_ne_class* i_this) {
|
|||
MtxPosition(&vec, &i_this->mDemoFishPos);
|
||||
i_this->mDemoFishPos += i_this->current.pos;
|
||||
}
|
||||
fish->current.pos.x = i_this->mDemoFishPos.x;
|
||||
fish->current.pos.z = i_this->mDemoFishPos.z;
|
||||
fish->actor.current.pos.x = i_this->mDemoFishPos.x;
|
||||
fish->actor.current.pos.z = i_this->mDemoFishPos.z;
|
||||
if (i_this->mDemoCounter >= 25) {
|
||||
cLib_addCalc2(&fish->current.pos.y, i_this->mAcch.GetGroundH() + 10.0f,
|
||||
cLib_addCalc2(&fish->actor.current.pos.y, i_this->mAcch.GetGroundH() + 10.0f,
|
||||
0.2f, 30.0f);
|
||||
}
|
||||
if (i_this->mDemoCounter == 38) {
|
||||
|
|
@ -3128,15 +3128,15 @@ static int daNpc_Ne_Execute(npc_ne_class* i_this) {
|
|||
}
|
||||
|
||||
if (i_this->mFishID != -1 && i_this->field_0xcc0) {
|
||||
mg_fish_class* fish = static_cast<mg_fish_class*>(fopAcM_SearchByID(i_this->mFishID));
|
||||
mg_fish_class* fish = (mg_fish_class*)fopAcM_SearchByID(i_this->mFishID);
|
||||
PSMTXCopy(model->getAnmMtx(4), mDoMtx_stack_c::get());
|
||||
mDoMtx_stack_c::ZrotM(-19000);
|
||||
mDoMtx_stack_c::scaleM(0.5f, 0.5f, 0.5f);
|
||||
mDoMtx_stack_c::transM(5.0f, 35.0f, 15.0f);
|
||||
fish->mpMorf->getModel()->setBaseTRMtx(mDoMtx_stack_c::get());
|
||||
int ivar3 = cM_ssin(g_Counter.mTimer * 15000) * 1500.0f;
|
||||
for (int i = 0; i <= fish->field_0x72c; i++) {
|
||||
fish->field_0x718[i] = ivar3;
|
||||
for (int i = 0; i <= fish->mNumJoints; i++) {
|
||||
fish->jointYaws1[i] = ivar3;
|
||||
}
|
||||
for (u16 i = 1; i < fish->mpMorf->getModel()->getModelData()->getJointNum(); i++) {
|
||||
fish->mpMorf->getModel()->getModelData()
|
||||
|
|
@ -3144,8 +3144,8 @@ static int daNpc_Ne_Execute(npc_ne_class* i_this) {
|
|||
}
|
||||
fish->mpMorf->play(NULL, 0, 0);
|
||||
fish->mpMorf->modelCalc();
|
||||
fish->current.pos = i_this->eyePos;
|
||||
fish->eyePos = i_this->eyePos;
|
||||
fish->actor.current.pos = i_this->eyePos;
|
||||
fish->actor.eyePos = i_this->eyePos;
|
||||
}
|
||||
|
||||
if (i_this->current.pos.y - i_this->home.pos.y < -5000.0f && fopAcM_CheckCondition(i_this, 4)) {
|
||||
|
|
|
|||
Loading…
Reference in New Issue