From 8514737d46227a90aa29312ec24a679d0a5cf59d Mon Sep 17 00:00:00 2001 From: TakaRikka <38417346+TakaRikka@users.noreply.github.com> Date: Sat, 12 Oct 2024 15:11:17 -0700 Subject: [PATCH] d_a_alink work / bump dtk version (#2205) --- configure.py | 2 +- .../JSystem/J3DGraphAnimator/J3DModelData.h | 2 +- include/SSystem/SComponent/c_cc_d.h | 3 + include/d/actor/d_a_alink.h | 27 +- include/d/actor/d_a_b_bq.h | 4 +- include/d/actor/d_a_canoe.h | 2 +- include/d/actor/d_a_horse.h | 2 + include/d/actor/d_a_midna.h | 2 +- include/d/actor/d_a_myna.h | 4 +- include/d/actor/d_a_player.h | 20 +- include/d/d_bg_s.h | 4 +- include/d/d_bg_s_acch.h | 2 +- include/d/d_bg_w_base.h | 1 + include/d/d_camera.h | 2 +- include/d/d_cc_d.h | 17 +- include/d/d_com_inf_game.h | 13 +- include/d/d_event.h | 6 +- include/d/d_gameover.h | 6 +- include/d/d_kankyo.h | 3 +- include/d/d_msg_object.h | 4 +- include/d/d_stage.h | 2 +- include/f_op/f_op_actor.h | 2 +- include/f_op/f_op_actor_mng.h | 4 +- include/f_op/f_op_msg_mng.h | 4 +- include/f_op/f_op_overlap_mng.h | 4 +- include/f_op/f_op_scene_mng.h | 4 +- include/f_op/f_op_scene_req.h | 4 +- include/f_pc/f_pc_create_req.h | 5 +- include/f_pc/f_pc_creator.h | 4 +- include/f_pc/f_pc_executor.h | 5 +- include/f_pc/f_pc_layer.h | 6 +- include/f_pc/f_pc_manager.h | 6 +- include/f_pc/f_pc_node_req.h | 7 +- src/d/actor/d_a_alink_damage.inc | 720 +++++++++++- src/d/actor/d_a_alink_demo.inc | 2 +- src/d/actor/d_a_alink_guard.inc | 4 +- src/d/actor/d_a_alink_hook.inc | 2 +- src/d/actor/d_a_alink_link.inc | 1007 ++++++++--------- src/d/actor/d_a_myna.cpp | 8 +- src/d/d_bg_s.cpp | 6 +- src/d/d_bg_s_acch.cpp | 4 +- src/d/d_camera.cpp | 4 +- src/d/d_cc_d.cpp | 4 +- src/d/d_com_inf_game.cpp | 12 +- src/d/d_event.cpp | 6 +- src/d/d_gameover.cpp | 4 +- src/d/d_kankyo.cpp | 4 +- src/d/d_msg_object.cpp | 4 +- src/d/d_s_room.cpp | 6 +- src/f_op/f_op_actor_mng.cpp | 12 +- src/f_op/f_op_msg_mng.cpp | 10 +- src/f_op/f_op_overlap_mng.cpp | 4 +- src/f_op/f_op_scene_mng.cpp | 6 +- src/f_op/f_op_scene_req.cpp | 4 +- src/f_pc/f_pc_base.cpp | 4 +- src/f_pc/f_pc_create_iter.cpp | 4 +- src/f_pc/f_pc_create_req.cpp | 6 +- src/f_pc/f_pc_creator.cpp | 4 +- src/f_pc/f_pc_executor.cpp | 6 +- src/f_pc/f_pc_layer.cpp | 6 +- src/f_pc/f_pc_layer_tag.cpp | 8 +- src/f_pc/f_pc_manager.cpp | 6 +- src/f_pc/f_pc_node_req.cpp | 6 +- src/f_pc/f_pc_priority.cpp | 8 +- 64 files changed, 1369 insertions(+), 705 deletions(-) diff --git a/configure.py b/configure.py index 6f7f09b735..e2375c58bc 100644 --- a/configure.py +++ b/configure.py @@ -151,7 +151,7 @@ if not config.non_matching: # Tool versions config.binutils_tag = "2.42-1" config.compilers_tag = "20240706" -config.dtk_tag = "v1.1.0" +config.dtk_tag = "v1.1.1" config.objdiff_tag = "v2.3.0" config.sjiswrap_tag = "v1.1.1" config.wibo_tag = "0.6.11" diff --git a/include/JSystem/J3DGraphAnimator/J3DModelData.h b/include/JSystem/J3DGraphAnimator/J3DModelData.h index 17557f4495..a2ac2d0f57 100644 --- a/include/JSystem/J3DGraphAnimator/J3DModelData.h +++ b/include/JSystem/J3DGraphAnimator/J3DModelData.h @@ -71,7 +71,7 @@ public: bool checkBBoardFlag() const { return mbHasBillboard == 1; } bool isLocked() { return mMaterialTable.isLocked(); } void entryTexMtxAnimator(J3DAnmTextureSRTKey* anm) { mMaterialTable.entryTexMtxAnimator(anm); } - void entryTevRegAnimator(J3DAnmTevRegKey* anm) { mMaterialTable.entryTevRegAnimator(anm); } + int entryTevRegAnimator(J3DAnmTevRegKey* anm) { return mMaterialTable.entryTevRegAnimator(anm); } void entryTexNoAnimator(J3DAnmTexPattern* anm) { mMaterialTable.entryTexNoAnimator(anm); } int removeTexNoAnimator(J3DAnmTexPattern* anm) { return mMaterialTable.removeTexNoAnimator(anm); diff --git a/include/SSystem/SComponent/c_cc_d.h b/include/SSystem/SComponent/c_cc_d.h index 48536ec566..eb5b37dfd8 100644 --- a/include/SSystem/SComponent/c_cc_d.h +++ b/include/SSystem/SComponent/c_cc_d.h @@ -348,6 +348,7 @@ public: void SetActor(void* ac) { mp_actor = (fopAc_ac_c*)ac; } cXyz* GetCCMoveP() { return &m_cc_move; } fpc_ProcID GetApid() const { return m_apid; } + u8 GetDmg() const { return m_dmg; } }; // Size = 0x1C STATIC_ASSERT(0x1C == sizeof(cCcD_Stts)); @@ -380,6 +381,7 @@ public: u32 MskRPrm(u32 mask) { return mRPrm & mask; } void OnSPrmBit(u32 flag) { mSPrm |= flag; } void OffSPrmBit(u32 flag) { mSPrm &= ~flag; } + u32 ChkSPrm(u32 prm) const { return MskSPrm(prm); } void Set(cCcD_SrcObjCommonBase const& src) { mSPrm = src.mSPrm; } }; @@ -517,6 +519,7 @@ public: cCcD_Obj* GetAtHitObj() { return mObjAt.GetHitObj(); } cCcD_Obj* GetTgHitObj() { return mObjTg.GetHitObj(); } cCcD_Obj* GetCoHitObj() { return mObjCo.GetHitObj(); } + u32 ChkAtSPrm(u32 prm) { return mObjAt.ChkSPrm(prm); } }; // Size = 0x40 diff --git a/include/d/actor/d_a_alink.h b/include/d/actor/d_a_alink.h index 992a13f920..f8c00df8ef 100644 --- a/include/d/actor/d_a_alink.h +++ b/include/d/actor/d_a_alink.h @@ -145,7 +145,7 @@ public: /* 800D0B8C */ virtual ~daAlink_matAnm_c(); /* 8009D90C */ virtual void calc(J3DMaterial*) const; - static void decMorfFrame() {} + static void decMorfFrame() { cLib_calcTimer(&m_morf_frame); } static void setMorfFrame(u8 i_frame) { m_morf_frame = i_frame; } static u8 m_morf_frame; @@ -681,6 +681,7 @@ public: FTANM_UNK_9B = 0x9B, FTANM_UNK_9C = 0x9C, FTANM_UNK_9D = 0x9D, + FTANM_UNK_9E = 0x9E, FTANM_UNK_9F = 0x9F, FTANM_UNK_A0 = 0xA0, FTANM_UNK_A1 = 0xA1, @@ -1774,12 +1775,12 @@ public: /* 800D72BC */ int setDamagePoint(int i_dmgAmount, int i_checkZoraMag, int i_setDmgTimer, int); /* 800D7478 */ void setDamagePointNormal(int); /* 800D74A4 */ void setLandDamagePoint(int); - /* 800D74F4 */ Vec* getDamageVec(dCcD_GObjInf*); + /* 800D74F4 */ cXyz* getDamageVec(dCcD_GObjInf*); /* 800D76C4 */ void setDashDamage(); /* 800D7768 */ static BOOL checkIcePolygonDamage(cBgS_PolyInfo*); /* 800D77C8 */ BOOL checkMagicArmorNoDamage(); - /* 800D7820 */ void checkPolyDamage(); - /* 800D7A98 */ bool checkElecReturnDamage(dCcD_GObjInf&, fopAc_ac_c**); + /* 800D7820 */ int checkPolyDamage(); + /* 800D7A98 */ BOOL checkElecReturnDamage(dCcD_GObjInf&, fopAc_ac_c**); /* 800D7B18 */ void damageTimerCount(); /* 800D7BE8 */ bool checkHugeAttack(int) const; /* 800D7C14 */ bool checkLargeAttack(int) const; @@ -1800,7 +1801,7 @@ public: /* 800DB418 */ int procCoElecDamage(); /* 800DB5B0 */ int procStEscapeInit(); /* 800DB610 */ int procStEscape(); - /* 800DB6A4 */ int procDkCaughtInit(unsigned int); + /* 800DB6A4 */ int procDkCaughtInit(fpc_ProcID); /* 800DB860 */ int procDkCaught(); /* 800DBC98 */ void setScreamWaitAnime(); /* 800DBD1C */ int procScreamWaitInit(); @@ -3048,7 +3049,7 @@ public: virtual void onFrollCrashFlg(u8, int); virtual MtxP getModelJointMtx(u16); virtual MtxP getHeadMtx(); - virtual bool setHookshotCarryOffset(unsigned int, cXyz const*); + virtual bool setHookshotCarryOffset(fpc_ProcID, cXyz const*); virtual BOOL checkCutJumpCancelTurn() const; virtual bool checkIronBallReturn() const; virtual bool checkIronBallGroundStop() const; @@ -3137,8 +3138,8 @@ public: virtual BOOL checkCutJumpMode() const; u32 checkModeFlg(u32 pFlag) const { return mModeFlg & pFlag; } - bool checkSmallUpperGuardAnime() const { return checkUpperAnime(0x16); } - bool checkFmChainGrabAnime() const { return checkUpperAnime(0x62) || checkUpperAnime(0x2A0); } + BOOL checkSmallUpperGuardAnime() const { return checkUpperAnime(0x16); } + BOOL checkFmChainGrabAnime() const { return checkUpperAnime(0x62) || checkUpperAnime(0x2A0); } Z2WolfHowlMgr* i_getWolfHowlMgrP() { return &mZ2WolfHowlMgr; } // this might be a fake match, but helps fix usage in many functions @@ -3199,8 +3200,9 @@ public: BOOL checkCopyRodReadyAnime() const { return mEquipItem == COPY_ROD && checkUpperAnime(0x54); } BOOL checkCanoeFishingWaitAnime() const { return checkUpperAnime(0x5D) || checkUpperAnime(0x260); } BOOL checkCopyRodControllAnime() const { return checkUpperAnime(0x202); } + BOOL checkWolfHeadDamageAnime() const { return checkUpperAnime(0x2A7); } - s16 checkWolfEyeUp() const { return mWolfEyeUp; } + int checkWolfEyeUp() const { return mWolfEyeUp; } void onModeFlg(u32 flag) { mModeFlg |= flag; } void offModeFlg(u32 flag) { mModeFlg &= ~flag; } bool swordButton() { return itemButtonCheck(8); } @@ -3249,7 +3251,7 @@ public: const daAlink_AnmData* getAnmData(daAlink_ANM anmID) const { return &m_anmDataTable[anmID]; } const daAlink_FaceTexData* getFaceTexData(daAlink_FTANM i_anmID) const { return &m_faceTexDataTable[i_anmID]; } - BOOL checkReinRide() const { return mRideStatus == 1 || mRideStatus == 2; } + u32 checkReinRide() const { return mRideStatus == 1 || mRideStatus == 2; } int getGrassHowlEventActor() const { return field_0x3198; } MtxP getShieldMtx() const { return mShieldModel->getBaseTRMtx(); } MtxP getMagneBootsMtx() { return mMagneBootMtx; } @@ -3582,8 +3584,8 @@ public: /* 0x02854 */ daPy_actorKeep_c mCargoCarryAcKeep; /* 0x0285C */ daPy_actorKeep_c field_0x285c; /* 0x02864 */ dMsgFlow_c mMsgFlow; - /* 0x028B0 */ unsigned int mShieldArrowIDs[16]; - /* 0x028F0 */ unsigned int mMsgClassID; + /* 0x028B0 */ fpc_ProcID mShieldArrowIDs[16]; + /* 0x028F0 */ fpc_ProcID mMsgClassID; /* 0x028F4 */ int mAtnActorID; /* 0x028F8 */ int field_0x28f8; /* 0x028FC */ int field_0x28fc; @@ -3722,6 +3724,7 @@ public: union { s16 field_0x3008; s16 mHowlExitID; + s16 mIceFreezeTimer; } /* 0x03008 */ mProcVar0; union { s16 field_0x300a; diff --git a/include/d/actor/d_a_b_bq.h b/include/d/actor/d_a_b_bq.h index 0bbe9fe33e..6c3d46aaf6 100644 --- a/include/d/actor/d_a_b_bq.h +++ b/include/d/actor/d_a_b_bq.h @@ -39,8 +39,8 @@ public: /* 0x06D0 */ f32 mDistToPlayer; /* 0x06D4 */ s16 mTimers[5]; /* 0x06DE */ s16 field_0x6de; - /* 0x06E0 */ unsigned int mTentacleIDs[2]; - /* 0x06E8 */ unsigned int mMonkeyBombID; + /* 0x06E0 */ fpc_ProcID mTentacleIDs[2]; + /* 0x06E8 */ fpc_ProcID mMonkeyBombID; /* 0x06EC */ u8 field_0x6ec; /* 0x06ED */ s8 mColpatType; /* 0x06F0 */ f32 mColpatBlend; diff --git a/include/d/actor/d_a_canoe.h b/include/d/actor/d_a_canoe.h index 044dddd85c..9081cce828 100644 --- a/include/d/actor/d_a_canoe.h +++ b/include/d/actor/d_a_canoe.h @@ -37,7 +37,7 @@ public: bool checkJumpRideFlg() { return mJumpRideFlg; } void incShapeOffsetY(f32 offset) { mShapeOffsetY += offset; } void incShapeAngleZ(s16 incZ) { shape_angle.z += incZ; } - void onRodID(unsigned int i_rodID) { mRodID = i_rodID; } + void onRodID(fpc_ProcID i_rodID) { mRodID = i_rodID; } void setWaterFallDownSe() { field_0x141c.startSound(Z2SE_AL_CANOE_FALL_DW, 0, -1); } void setPosAndAngle(cXyz const* i_pos, s16 i_angle) { diff --git a/include/d/actor/d_a_horse.h b/include/d/actor/d_a_horse.h index 83b3e78fc2..8e14f97df2 100644 --- a/include/d/actor/d_a_horse.h +++ b/include/d/actor/d_a_horse.h @@ -206,6 +206,8 @@ public: bool checkGetOff() const { return fabsf(speedF) < 3.0f; } bool checkEnemySearch() { return checkResetStateFlg0(ENEMY_SEARCH); } bool checkOriginalDemo() const { return field_0x16b8 == 3; } + s16 checkCowHit() const { return mCowHit; } + s16 getCowHitAngle() const { return mCowHitAngle; } void onTagJump(f32 param_0, f32 param_1, f32 param_2) { field_0x1768 = param_0; diff --git a/include/d/actor/d_a_midna.h b/include/d/actor/d_a_midna.h index 79d1ebeee2..8919fc302a 100644 --- a/include/d/actor/d_a_midna.h +++ b/include/d/actor/d_a_midna.h @@ -51,7 +51,7 @@ public: void onForcePanic(); u32 checkForceNormalColor() const; u32 checkForceTiredColor() const; - bool checkMidnaTired(); + static bool checkMidnaTired(); void onNoServiceWait(); /* 804BC3E0 */ void modelCallBack(int); diff --git a/include/d/actor/d_a_myna.h b/include/d/actor/d_a_myna.h index 9e8fd96983..176fab59d4 100644 --- a/include/d/actor/d_a_myna.h +++ b/include/d/actor/d_a_myna.h @@ -87,7 +87,7 @@ public: /* 80948644 */ void attack2_move(); /* 809486F8 */ void attack2_talk_init(); /* 80948734 */ void attack2_talk_move(); - /* 809487EC */ void soldoutItem(unsigned int); + /* 809487EC */ void soldoutItem(fpc_ProcID); /* 80948828 */ bool fly_attack_move(); /* 80948ADC */ bool fly_return_move(); /* 80948DFC */ void fly_body_wave(); @@ -95,7 +95,7 @@ public: /* 80948FAC */ int chkEvent(); /* 809490B8 */ int orderEvent(); /* 80949128 */ void deleteItem(int); - /* 80949144 */ void deleteItem(unsigned int); + /* 80949144 */ void deleteItem(fpc_ProcID); /* 80949190 */ void initiate(); /* 80949408 */ void setItemInfo(); /* 80949544 */ void setRoomNo(); diff --git a/include/d/actor/d_a_player.h b/include/d/actor/d_a_player.h index 7124160dca..3ed8224f10 100644 --- a/include/d/actor/d_a_player.h +++ b/include/d/actor/d_a_player.h @@ -255,7 +255,7 @@ public: }; enum daPy_FLG1 { - FLG1_UNK_40000000 = 0x40000000, + FLG1_ICE_FREEZE = 0x40000000, FLG1_UNK_20000000 = 0x20000000, FLG1_UNK_10000000 = 0x10000000, FLG1_UNK_4000000 = 0x4000000, @@ -387,6 +387,8 @@ public: ERFLG1_UNK_100000 = 0x100000, ERFLG1_UNK_40000 = 0x40000, ERFLG1_UNK_10000 = 0x10000, + ERFLG1_UNK_8000 = 0x8000, + ERFLG1_UNK_4000 = 0x4000, ERFLG1_UNK_2000 = 0x2000, ERFLG1_UNK_1000 = 0x1000, ERFLG1_UNK_800 = 0x800, @@ -437,6 +439,7 @@ public: }; enum daPy_RFLG1 { + RFLG1_UNK_400 = 0x400, RFLG1_UNK_200 = 0x200, RFLG1_UNK_100 = 0x100, RFLG1_UNK_80 = 0x80, @@ -551,8 +554,8 @@ public: static void setPlayerDamage(int, int); static void setMidnaMotionNum(int); static void setMidnaFaceNum(int); - BOOL checkShieldGet(); - BOOL checkSwordGet(); + static BOOL checkShieldGet(); + static BOOL checkSwordGet(); void changeDemoParam2(s16); cXyz getHeadTopPos() const; BOOL checkThrowDamage() const { return checkNoResetFlg1(FLG1_THROW_DAMAGE); } @@ -641,7 +644,7 @@ public: virtual void onFrollCrashFlg(u8, int); // weak virtual MtxP getModelJointMtx(u16); virtual MtxP getHeadMtx(); - virtual bool setHookshotCarryOffset(unsigned int, cXyz const*); + virtual bool setHookshotCarryOffset(fpc_ProcID, cXyz const*); virtual BOOL checkCutJumpCancelTurn() const { return FALSE; } virtual bool checkIronBallReturn() const; virtual bool checkIronBallGroundStop() const; @@ -766,12 +769,13 @@ public: bool checkSceneChangeAreaStart() const { return checkNoResetFlg2(FLG2_SCN_CHG_START); } bool checkFrontRollCrash() const { return checkResetFlg0(RFLG0_FRONT_ROLL_CRASH); } bool checkWolfAttackReverse() const { return checkResetFlg1(RFLG1_WOLF_ATTACK_REVERSE); } - bool checkFreezeDamage() const { return checkNoResetFlg1(FLG1_UNK_40000000); } + bool checkFreezeDamage() const { return checkNoResetFlg1(FLG1_ICE_FREEZE); } bool checkWolfTagLockJumpReady() const { return checkResetFlg0(RFLG0_UNK_20000); } bool getGrabUpEnd() const { return checkResetFlg0(RFLG0_GRAB_UP_END); } bool getGrabPutStart() const { return checkResetFlg0(RFLG0_GRAB_PUT_START); } bool checkSwimUp() const { return checkNoResetFlg0(FLG0_SWIM_UP); } BOOL checkHorseZelda() const { return checkNoResetFlg2(FLG2_HORSE_ZELDA); } + BOOL checkSpecialHorseRide() { return checkNoResetFlg2(daPy_FLG2(FLG2_HORSE_ZELDA | FLG2_UNK_1000000 | FLG2_UNK_800000)); } void onBossRoomWait() { onEndResetFlg0(ERFLG0_BOSS_ROOM_WAIT); } void onBeeFollow() { onEndResetFlg0(ERFLG0_BEE_FOLLOW); } @@ -852,10 +856,10 @@ public: cXyz* getRightHandPosP() { return &mRightHandPos; } u32 checkWolf() const { return checkNoResetFlg1(FLG1_IS_WOLF); } - BOOL checkEquipHeavyBoots() const { return checkNoResetFlg0(FLG0_EQUIP_HVY_BOOTS); } - BOOL checkMagneBootsOn() const { return checkNoResetFlg0(FLG0_MAGNE_BOOTS_ON); } + u32 checkEquipHeavyBoots() const { return checkNoResetFlg0(FLG0_EQUIP_HVY_BOOTS); } + u32 checkMagneBootsOn() const { return checkNoResetFlg0(FLG0_MAGNE_BOOTS_ON); } BOOL checkFastSwordCut() const { return checkNoResetFlg0(FLG0_UNK_80000); } - bool checkMidnaRide() const { return checkNoResetFlg0(FLG0_MIDNA_RIDE); } + u32 checkMidnaRide() const { return checkNoResetFlg0(FLG0_MIDNA_RIDE); } void onPlayerNoDraw() { onNoResetFlg0(FLG0_PLAYER_NO_DRAW); } void offPlayerNoDraw() { offNoResetFlg0(FLG0_PLAYER_NO_DRAW); } void onPushPullKeep() { onNoResetFlg0(FLG0_PUSH_PULL_KEEP); } diff --git a/include/d/d_bg_s.h b/include/d/d_bg_s.h index e34f5bf6c2..b8207d72d5 100644 --- a/include/d/d_bg_s.h +++ b/include/d/d_bg_s.h @@ -21,7 +21,7 @@ public: void Release(); virtual ~cBgS_ChkElm() {} - virtual void Regist2(dBgW_Base*, unsigned int, void*); + virtual void Regist2(dBgW_Base*, fpc_ProcID, void*); bool ChkUsed() const { return m_used; } }; // Size: 0x14 @@ -35,7 +35,7 @@ public: public: cBgS() {} - bool Regist(dBgW_Base*, unsigned int, void*); + bool Regist(dBgW_Base*, fpc_ProcID, void*); int Release(dBgW_Base*); bool LineCross(cBgS_LinChk*); f32 GroundCross(cBgS_GndChk*); diff --git a/include/d/d_bg_s_acch.h b/include/d/d_bg_s_acch.h index 09f2eb2fd5..9b1adf9095 100644 --- a/include/d/d_bg_s_acch.h +++ b/include/d/d_bg_s_acch.h @@ -101,7 +101,7 @@ public: /* 80077178 */ f32 GetWallAllLowH_R(); /* 800771E4 */ f32 GetSpeedY(); /* 80077200 */ f32 GetWallAddY(Vec&); - /* 80077278 */ void SetNowActorInfo(int, void*, unsigned int); + /* 80077278 */ void SetNowActorInfo(int, void*, fpc_ProcID); /* 80077288 */ void SetWallPolyIndex(int, int); /* 800772E8 */ void CalcMovePosWork(); /* 8007732C */ void CalcWallRR(); diff --git a/include/d/d_bg_w_base.h b/include/d/d_bg_w_base.h index 3d7174c8a1..f1e924e519 100644 --- a/include/d/d_bg_w_base.h +++ b/include/d/d_bg_w_base.h @@ -4,6 +4,7 @@ #include "SSystem/SComponent/c_bg_s_poly_info.h" #include "SSystem/SComponent/c_bg_w.h" #include "SSystem/SComponent/c_m3d_g_pla.h" +#include "f_pc/f_pc_base.h" class cBgS_GndChk; class cBgS_LinChk; diff --git a/include/d/d_camera.h b/include/d/d_camera.h index 0b31947d99..79d334354a 100644 --- a/include/d/d_camera.h +++ b/include/d/d_camera.h @@ -363,7 +363,7 @@ public: /* 80181490 */ void onHorseDush(); /* 80181500 */ void GetForceLockOnActor(); /* 80181534 */ void ForceLockOn(fopAc_ac_c*); - /* 80181560 */ void ForceLockOff(unsigned int); + /* 80181560 */ void ForceLockOff(fpc_ProcID); /* 8018159C */ void ForceLockOff(fopAc_ac_c*); /* 80181E20 */ cXyz Up(); /* 80181E64 */ cXyz Eye(); diff --git a/include/d/d_cc_d.h b/include/d/d_cc_d.h index 6cfdc09d80..6ec77a91ea 100644 --- a/include/d/d_cc_d.h +++ b/include/d/d_cc_d.h @@ -116,12 +116,12 @@ public: /* 8008523C */ virtual ~dCcD_GStts() {} void ClrAt() { mAt = 0; } void ClrTg() { mTg = 0; } - void SetAtApid(unsigned int id) { mAtApid = id; } - void SetTgApid(unsigned int id) { mTgApid = id; } + void SetAtApid(fpc_ProcID id) { mAtApid = id; } + void SetTgApid(fpc_ProcID id) { mTgApid = id; } u8 GetRoomId() { return mRoomId; } void SetRoomId(int id) { mRoomId = id; } - unsigned int GetAtOldApid() { return mAtOldApid; } - unsigned int GetTgOldApid() { return mTgOldApid; } + fpc_ProcID GetAtOldApid() { return mAtOldApid; } + fpc_ProcID GetTgOldApid() { return mTgOldApid; } bool ChkNoActor() { return field_0x1C & 1;} bool ChkNoneActorPerfTblId() { return field_0x08 == 0xFFFF; } dCcG_At_Spl GetAtSpl() { return (dCcG_At_Spl)mAt; } @@ -174,7 +174,7 @@ public: dCcD_GAtTgCoCommonBase() { ct(); } /* 8008364C */ void ClrActorInfo(); /* 80083660 */ void ct(); - /* 80083678 */ void SetHitApid(unsigned int); + /* 80083678 */ void SetHitApid(fpc_ProcID); /* 80083688 */ fopAc_ac_c* GetAc(); /* 80083704 */ void Set(dCcD_SrcGAtTgCoCommonBase const&); /* 80083718 */ void SetEffCounterTimer(); @@ -359,9 +359,9 @@ public: dCcD_HitCallback GetCoHitCallback() { return mGObjCo.GetHitCallback(); } dCcD_HitCallback GetAtHitCallback() { return mGObjAt.GetHitCallback(); } dCcD_HitCallback GetTgHitCallback() { return mGObjTg.GetHitCallback(); } - void SetCoHitApid(unsigned int apid) { mGObjCo.SetHitApid(apid); } - void SetAtHitApid(unsigned int apid) { mGObjAt.SetHitApid(apid); } - void SetTgHitApid(unsigned int apid) { mGObjTg.SetHitApid(apid); } + void SetCoHitApid(fpc_ProcID apid) { mGObjCo.SetHitApid(apid); } + void SetAtHitApid(fpc_ProcID apid) { mGObjAt.SetHitApid(apid); } + void SetTgHitApid(fpc_ProcID apid) { mGObjTg.SetHitApid(apid); } void OnCoHitNoActor() { mGObjCo.OnRPrm(1); } void OffCoHitNoActor() { mGObjCo.OffRPrm(1); } void OnAtHitNoActor() { mGObjAt.OnRPrm(2); } @@ -404,6 +404,7 @@ public: cXyz* GetTgHitPosP() { return mGObjTg.GetHitPosP(); } cXyz* GetTgRVecP() { return mGObjTg.GetRVecP(); } bool ChkTgHookshotThrough() { return mGObjTg.ChkSPrm(0x80); } + bool ChkTgShieldHit() { return mGObjTg.ChkRPrm(2); } static const Z2SoundID m_hitSeID[24]; diff --git a/include/d/d_com_inf_game.h b/include/d/d_com_inf_game.h index 7a19fa9dd5..276a4cfbe5 100644 --- a/include/d/d_com_inf_game.h +++ b/include/d/d_com_inf_game.h @@ -493,7 +493,7 @@ public: } void setPlayerStatus(int param_0, int i, u32 flag) { mPlayerStatus[param_0][i] |= flag; } void clearPlayerStatus(int param_0, int i, u32 flag) { mPlayerStatus[param_0][i] &= ~flag; } - bool checkPlayerStatus(int param_0, int i, u32 flag) { return flag & mPlayerStatus[param_0][i]; } + u32 checkPlayerStatus(int param_0, int i, u32 flag) { return flag & mPlayerStatus[param_0][i]; } int getPlayerCameraID(int i) { return mPlayerCameraID[i * 8]; } int getCameraPlayer1ID(int i) { return mCameraInfo[i].field_0x5; } @@ -813,7 +813,7 @@ public: /* 0x1DDF8 */ u8 mFadeBrightness; /* 0x1DDF9 */ u8 mWorldDark; /* 0x1DDFA */ s8 field_0x1ddfa; - /* 0x1DDFB */ s8 field_0x1ddfb; + /* 0x1DDFB */ s8 mPolyDamageOff; /* 0x1DDFC */ s8 field_0x1ddfc; /* 0x1DE00 */ u32 field_0x1de00; /* 0x1DE04 */ u32 field_0x1de04; @@ -1009,6 +1009,7 @@ s8 dComIfGs_BossLife_public_Get(); u8 dComIfGs_checkGetInsectNum(); u8 dComIfGs_getSelectMixItemNoArrowIndex(int i_selmixItemIdx); BOOL dComIfGs_isStageTbox(int i_stageNo, int i_no); +s8 dComIfGs_PolyDamageOff_Check(); inline void dComIfGs_init() { g_dComIfG_gameInfo.info.init(); @@ -1993,11 +1994,11 @@ inline void dComIfGp_init() { g_dComIfG_gameInfo.play.init(); } -inline bool dComIfGp_checkPlayerStatus0(int param_0, u32 flag) { +inline u32 dComIfGp_checkPlayerStatus0(int param_0, u32 flag) { return g_dComIfG_gameInfo.play.checkPlayerStatus(param_0, 0, flag); } -inline bool dComIfGp_checkPlayerStatus1(int param_0, u32 flag) { +inline u32 dComIfGp_checkPlayerStatus1(int param_0, u32 flag) { return g_dComIfG_gameInfo.play.checkPlayerStatus(param_0, 1, flag); } @@ -2005,7 +2006,7 @@ inline void dComIfGp_setItemLifeCount(float amount, u8 type) { g_dComIfG_gameInfo.play.setItemLifeCount(amount, type); } -inline void dComIfGp_setItemRupeeCount(int amount) { +inline void dComIfGp_setItemRupeeCount(s32 amount) { g_dComIfG_gameInfo.play.setItemRupeeCount(amount); } @@ -3341,7 +3342,7 @@ inline void dComIfGp_event_setItemPartner(void* param_0) { g_dComIfG_gameInfo.play.getEvent().setPtI(param_0); } -inline void dComIfGp_event_setItemPartnerId(unsigned int id) { +inline void dComIfGp_event_setItemPartnerId(fpc_ProcID id) { g_dComIfG_gameInfo.play.getEvent().setPtI_Id(id); } diff --git a/include/d/d_event.h b/include/d/d_event.h index ecf410bc36..4f1c92504a 100644 --- a/include/d/d_event.h +++ b/include/d/d_event.h @@ -125,7 +125,7 @@ public: dStage_MapEvent_dt_c* getStageEventDt(); void sceneChange(int exitId); u32 getPId(void*); - fopAc_ac_c* convPId(unsigned int); + fopAc_ac_c* convPId(fpc_ProcID); void* getStbDemoData(char* resName); static dStage_MapEvent_dt_c* searchMapEventData(u8 mapToolID, s32 roomNo); static dStage_MapEvent_dt_c* searchMapEventData(u8 mapToolID); @@ -134,7 +134,7 @@ public: void setPt2(void* ptr); void setPtT(void* ptr); void setPtI(void* ptr); - void setPtI_Id(unsigned int id); + void setPtI_Id(fpc_ProcID id); void setPtD(void* ptr); void setGtItm(u8 itemNo); @@ -155,7 +155,7 @@ public: void setCullRate(f32 f) { mCullRate = f; } BOOL chkTalkXY() { return field_0xed == 1 || field_0xed == 2; } - bool isOrderOK() { return mEventStatus == 0 || mEventStatus == 2; } + BOOL isOrderOK() { return mEventStatus == 0 || mEventStatus == 2; } fopAc_ac_c* getPt1() { return convPId(mPt1); } fopAc_ac_c* getPt2() { return convPId(mPt2); } fopAc_ac_c* getPtT() { return convPId(mPtT); } diff --git a/include/d/d_gameover.h b/include/d/d_gameover.h index e1eae61b9e..46ab16304c 100644 --- a/include/d/d_gameover.h +++ b/include/d/d_gameover.h @@ -81,9 +81,9 @@ public: }; // Size: 0x11C s32 d_GameOver_Create(u8 param_0); -bool d_GameOver_Delete(unsigned int& i_id); +bool d_GameOver_Delete(fpc_ProcID& i_id); -inline s32 d_GameOver_CheckDelete(unsigned int& id) { +inline s32 d_GameOver_CheckDelete(fpc_ProcID& id) { if (id != UINT32_MAX) { dGameover_c* gameover = (dGameover_c*)fopMsgM_SearchByID(id); @@ -97,7 +97,7 @@ inline s32 d_GameOver_CheckDelete(unsigned int& id) { return 0; } -inline s32 d_GameOver_animeStart(unsigned int& id) { +inline s32 d_GameOver_animeStart(fpc_ProcID& id) { if (id != UINT32_MAX) { dGameover_c* gameover = (dGameover_c*)fopMsgM_SearchByID(id); diff --git a/include/d/d_kankyo.h b/include/d/d_kankyo.h index 21cd96a26e..21cdd5abd4 100644 --- a/include/d/d_kankyo.h +++ b/include/d/d_kankyo.h @@ -4,6 +4,7 @@ #include "JSystem/J3DGraphBase/J3DStruct.h" #include "d/d_kankyo_wether.h" #include "m_Do/m_Do_ext.h" +#include "f_pc/f_pc_base.h" class JPABaseEmitter; class cBgS_PolyInfo; @@ -30,7 +31,7 @@ void dKy_GxFog_set(); static void GxFog_set(); static void GxXFog_set(); u8 dKy_pol_argument_get(cBgS_PolyInfo const* i_poly); -void dKy_Sound_set(cXyz i_pos, int param_1, unsigned int i_actorID, int param_3); +void dKy_Sound_set(cXyz i_pos, int param_1, fpc_ProcID i_actorID, int param_3); void dKy_bg_MAxx_proc(void* param_0); void dKy_change_colpat(u8 colpat); void dKy_BossLight_set(cXyz* param_0, _GXColor* param_1, f32 param_2, u8 param_3); diff --git a/include/d/d_msg_object.h b/include/d/d_msg_object.h index bd4f077c5e..4b413d2519 100644 --- a/include/d/d_msg_object.h +++ b/include/d/d_msg_object.h @@ -118,7 +118,7 @@ public: /* 802380F4 */ static bool getString(u32, J2DTextBox*, J2DTextBox*, JUTFont*, COutFont_c*, char*, char*, char*, s16*); /* 80238174 */ static void* getMsgDtPtr(); - /* 80238188 */ static void setProcessID(unsigned int); + /* 80238188 */ static void setProcessID(fpc_ProcID); /* 8023819C */ static msg_class* getActor(); /* 802381C0 */ static fopAc_ac_c* getpTalkActor(); /* 802381D4 */ static int getIdx(); @@ -181,7 +181,7 @@ public: void onCameraCancelFlagLocal() { mCameraCancelFlag = true; } void offCameraCancelFlagLocal() { mCameraCancelFlag = false; } void onKillMessageFlagLocal() { mKillMessageFlag = true; } - void setProcessIDLocal(unsigned int id) { mProcessID = id; } + void setProcessIDLocal(fpc_ProcID id) { mProcessID = id; } void setPortalMessageIDLocal(u16 msgID) { mPortalMessageID = msgID; } void setInsectItemNoLocal(u8 itemNo) { mInsectItemNo = itemNo; } void setLetterNameIDLocal(u16 nameID) { mLetterNameID = nameID; } diff --git a/include/d/d_stage.h b/include/d/d_stage.h index 5f66ac7032..45b8898841 100644 --- a/include/d/d_stage.h +++ b/include/d/d_stage.h @@ -833,7 +833,7 @@ public: static void onNoChangeRoom() { mNoChangeRoom = true; } static void setProcID(u32 id) { mProcID = id; } static u32 getProcID() { return mProcID; } - static void setStatusProcID(int i_roomNo, unsigned int i_id) { mStatus[i_roomNo].mProcID = i_id; } + static void setStatusProcID(int i_roomNo, fpc_ProcID i_id) { mStatus[i_roomNo].mProcID = i_id; } static int getStatusProcID(int i_roomNo) { return mStatus[i_roomNo].mProcID; } static void setRegionNo(int i_roomNo, u8 i_regionNo) { mStatus[i_roomNo].mRegionNo = i_regionNo; } static void setZoneCount(int i_roomNo, int count) { mStatus[i_roomNo].mZoneCount = count; } diff --git a/include/f_op/f_op_actor.h b/include/f_op/f_op_actor.h index dd76d7f88e..07feb9b429 100644 --- a/include/f_op/f_op_actor.h +++ b/include/f_op/f_op_actor.h @@ -125,7 +125,7 @@ public: void beforeProc(); void onCondition(u16); void offCondition(u16); - bool checkCommandCatch(); + BOOL checkCommandCatch(); BOOL checkCommandDoor(); BOOL checkCommandDemoAccrpt() { return mCommand == dEvtCmd_INDEMO_e; } diff --git a/include/f_op/f_op_actor_mng.h b/include/f_op/f_op_actor_mng.h index 1103ed83fa..fcf43fa269 100644 --- a/include/f_op/f_op_actor_mng.h +++ b/include/f_op/f_op_actor_mng.h @@ -487,11 +487,11 @@ void* fopAcM_fastCreate(const char* p_actorName, u32 parameter, const cXyz* pAct const csXyz* p_angle, const cXyz* p_scale, createFunc p_createFunc, void* p_createFuncData); -s32 fopAcM_createChild(s16 procName, unsigned int parentPId, u32 parameters, const cXyz* p_pos, +s32 fopAcM_createChild(s16 procName, fpc_ProcID parentPId, u32 parameters, const cXyz* p_pos, int roomNo, const csXyz* p_angle, const cXyz* p_scale, s8 subType, createFunc p_createFunc); -s32 fopAcM_createChildFromOffset(s16 procName, unsigned int parentProcID, u32 actorParams, +s32 fopAcM_createChildFromOffset(s16 procName, fpc_ProcID parentProcID, u32 actorParams, const cXyz* p_pos, int roomNo, const csXyz* p_angle, const cXyz* p_scale, s8 subType, createFunc p_createFunc); diff --git a/include/f_op/f_op_msg_mng.h b/include/f_op/f_op_msg_mng.h index 8e41c92f4e..e0df017a9b 100644 --- a/include/f_op/f_op_msg_mng.h +++ b/include/f_op/f_op_msg_mng.h @@ -41,14 +41,14 @@ s32 fopMsgM_create(s16 param_0, fopAc_ac_c* param_1, cXyz* param_2, u32* param_3 fopMsgCreateFunc createFunc); void fopMsgM_Delete(void* process); fopMsg_prm_class* fopMsgM_GetAppend(void* msg); -void fopMsgM_setMessageID(unsigned int); +void fopMsgM_setMessageID(fpc_ProcID); void fopMsgM_destroyExpHeap(JKRExpHeap*); f32 fopMsgM_valueIncrease(int param_0, int param_1, u8 param_2); s32 fopMsgM_setStageLayer(void*); int fopMsgM_messageSet(u32 i_msgIdx, fopAc_ac_c* i_actorP, u32 param_2); int fopMsgM_messageSet(u32 param_0, u32 param_1); int fopMsgM_messageSetDemo(u32 param_0); -msg_class* fopMsgM_SearchByID(unsigned int param_0); +msg_class* fopMsgM_SearchByID(fpc_ProcID param_0); char* fopMsgM_messageGet(char* msg, u32 string_id); s32 fop_Timer_create(s16 param_0, u8 param_1, u32 param_2, u8 param_3, u8 param_4, f32 param_5, f32 param_6, f32 param_7, f32 param_8, fopMsgCreateFunc createFunc); diff --git a/include/f_op/f_op_overlap_mng.h b/include/f_op/f_op_overlap_mng.h index ddc709c0f3..12c2503190 100644 --- a/include/f_op/f_op_overlap_mng.h +++ b/include/f_op/f_op_overlap_mng.h @@ -10,7 +10,7 @@ int fopOvlpM_SceneIsStart(); void fopOvlpM_Management(); int fopOvlpM_IsOutReq(overlap_task_class* i_this); void fopOvlpM_Done(overlap_task_class* i_this); -void fopOvlpM_ToldAboutID(unsigned int param_1); +void fopOvlpM_ToldAboutID(fpc_ProcID param_1); int fopOvlpM_IsPeek(); int fopOvlpM_IsDone(); int fopOvlpM_IsDoingReq(); @@ -19,4 +19,4 @@ request_base_class* fopOvlpM_Request(s16 param_1, u16 param_2); int fopOvlpM_Cancel(); void fopOvlpM_Init(); -#endif \ No newline at end of file +#endif diff --git a/include/f_op/f_op_scene_mng.h b/include/f_op/f_op_scene_mng.h index 6be68ae1e7..55cb5579a5 100644 --- a/include/f_op/f_op_scene_mng.h +++ b/include/f_op/f_op_scene_mng.h @@ -6,9 +6,9 @@ typedef struct base_process_class base_process_class; -scene_class* fopScnM_SearchByID(unsigned int id); +scene_class* fopScnM_SearchByID(fpc_ProcID id); int fopScnM_ChangeReq(scene_class*, s16, s16, u16); -unsigned int fopScnM_DeleteReq(scene_class*); +fpc_ProcID fopScnM_DeleteReq(scene_class*); int fopScnM_CreateReq(s16, s16, u16, u32); u32 fopScnM_ReRequest(s16, u32); void fopScnM_Management(void); diff --git a/include/f_op/f_op_scene_req.h b/include/f_op/f_op_scene_req.h index e83310a90e..a3c35934f9 100644 --- a/include/f_op/f_op_scene_req.h +++ b/include/f_op/f_op_scene_req.h @@ -20,7 +20,7 @@ public: // cPhs__Step fopScnRq_phase_ClearOverlap(scene_request_class* param_1); s32 fopScnRq_Request(int, scene_class*, s16, void*, s16, u16); -s32 fopScnRq_ReRequest(unsigned int, s16, void*); +s32 fopScnRq_ReRequest(fpc_ProcID, s16, void*); void fopScnRq_Handler(void); -#endif \ No newline at end of file +#endif diff --git a/include/f_pc/f_pc_create_req.h b/include/f_pc/f_pc_create_req.h index f357aeef1f..743bf91252 100644 --- a/include/f_pc/f_pc_create_req.h +++ b/include/f_pc/f_pc_create_req.h @@ -6,6 +6,7 @@ #include "f_pc/f_pc_create_tag.h" #include "f_pc/f_pc_method.h" #include "f_pc/f_pc_method_tag.h" +#include "f_pc/f_pc_base.h" typedef struct base_process_class base_process_class; typedef struct layer_class layer_class; @@ -28,8 +29,8 @@ typedef struct create_request { layer_class* mpLayer; } create_request; // Size: 0x48 -bool fpcCtRq_isCreatingByID(create_tag* pTag, unsigned int* pId); -BOOL fpcCtRq_IsCreatingByID(unsigned int id); +bool fpcCtRq_isCreatingByID(create_tag* pTag, fpc_ProcID* pId); +BOOL fpcCtRq_IsCreatingByID(fpc_ProcID id); void fpcCtRq_CreateQTo(create_request* pReq); void fpcCtRq_ToCreateQ(create_request* pReq); BOOL fpcCtRq_Delete(create_request* pReq); diff --git a/include/f_pc/f_pc_creator.h b/include/f_pc/f_pc_creator.h index 582abf5f39..b37a2ce88a 100644 --- a/include/f_pc/f_pc_creator.h +++ b/include/f_pc/f_pc_creator.h @@ -2,11 +2,11 @@ #ifndef F_PC_CREATOR_H_ #define F_PC_CREATOR_H_ -#include "dolphin/types.h" +#include "f_pc/f_pc_base.h" typedef struct base_process_class base_process_class; -BOOL fpcCt_IsCreatingByID(unsigned int id); +BOOL fpcCt_IsCreatingByID(fpc_ProcID id); s32 fpcCt_IsDoing(base_process_class* pProc); BOOL fpcCt_Abort(base_process_class* pProc); void fpcCt_Handler(void); diff --git a/include/f_pc/f_pc_executor.h b/include/f_pc/f_pc_executor.h index 6c15d16378..53a19b986f 100644 --- a/include/f_pc/f_pc_executor.h +++ b/include/f_pc/f_pc_executor.h @@ -4,12 +4,13 @@ #include "f_pc/f_pc_layer_iter.h" #include "f_pc/f_pc_line_iter.h" +#include "f_pc/f_pc_base.h" typedef struct base_process_class base_process_class; base_process_class* fpcEx_Search(fpcLyIt_JudgeFunc pFunc, void* pUserData); -base_process_class* fpcEx_SearchByID(unsigned int id); -BOOL fpcEx_IsExist(unsigned int id); +base_process_class* fpcEx_SearchByID(fpc_ProcID id); +BOOL fpcEx_IsExist(fpc_ProcID id); s32 fpcEx_ToLineQ(base_process_class* pProc); s32 fpcEx_ExecuteQTo(base_process_class* pProc); s32 fpcEx_Execute(base_process_class* pProc); diff --git a/include/f_pc/f_pc_layer.h b/include/f_pc/f_pc_layer.h index 4f7e0046b7..3930dfb49f 100644 --- a/include/f_pc/f_pc_layer.h +++ b/include/f_pc/f_pc_layer.h @@ -5,7 +5,7 @@ #include "SSystem/SComponent/c_list.h" #include "SSystem/SComponent/c_node.h" #include "SSystem/SComponent/c_tree.h" -#include "dolphin/types.h" +#include "f_pc/f_pc_base.h" typedef struct create_tag_class create_tag_class; typedef struct process_method_tag_class process_method_tag_class; @@ -26,8 +26,8 @@ typedef struct layer_class { void fpcLy_SetCurrentLayer(layer_class* pLayer); layer_class* fpcLy_CurrentLayer(void); layer_class* fpcLy_RootLayer(void); -layer_class* fpcLy_Layer(unsigned int id); -layer_class* fpcLy_Search(unsigned int id); +layer_class* fpcLy_Layer(fpc_ProcID id); +layer_class* fpcLy_Search(fpc_ProcID id); void fpcLy_Regist(layer_class* pLayer); void fpcLy_CreatedMesg(layer_class* pLayer); diff --git a/include/f_pc/f_pc_manager.h b/include/f_pc/f_pc_manager.h index e808099465..57895a485f 100644 --- a/include/f_pc/f_pc_manager.h +++ b/include/f_pc/f_pc_manager.h @@ -63,7 +63,7 @@ inline void* fpcM_GetAppend(const void* proc) { return ((base_process_class*)proc)->mpUserData; } -inline BOOL fpcM_IsExecuting(unsigned int id) { +inline BOOL fpcM_IsExecuting(fpc_ProcID id) { return fpcEx_IsExist(id); } @@ -83,7 +83,7 @@ void fpcM_Draw(void* pProc); s32 fpcM_DrawIterater(fpcM_DrawIteraterFunc pFunc); s32 fpcM_Execute(void* pProc); s32 fpcM_Delete(void* pProc); -BOOL fpcM_IsCreating(unsigned int pID); +BOOL fpcM_IsCreating(fpc_ProcID pID); void fpcM_Management(fpcM_ManagementFunc pFunc1, fpcM_ManagementFunc pFunc2); void fpcM_Init(); base_process_class* fpcM_FastCreate(s16 pProcTypeID, FastCreateReqFunc param_2, void* param_3, @@ -91,6 +91,6 @@ base_process_class* fpcM_FastCreate(s16 pProcTypeID, FastCreateReqFunc param_2, s32 fpcM_IsPause(void* pProc, u8 param_2); void fpcM_PauseEnable(void* pProc, u8 param_2); void fpcM_PauseDisable(void* pProc, u8 param_2); -void* fpcM_JudgeInLayer(unsigned int pLayerID, fpcCtIt_JudgeFunc pFunc, void* pUserData); +void* fpcM_JudgeInLayer(fpc_ProcID pLayerID, fpcCtIt_JudgeFunc pFunc, void* pUserData); #endif diff --git a/include/f_pc/f_pc_node_req.h b/include/f_pc/f_pc_node_req.h index a99c22d028..bc8f13327f 100644 --- a/include/f_pc/f_pc_node_req.h +++ b/include/f_pc/f_pc_node_req.h @@ -4,6 +4,7 @@ #include "SSystem/SComponent/c_phase.h" #include "f_pc/f_pc_method.h" #include "f_pc/f_pc_method_tag.h" +#include "f_pc/f_pc_base.h" typedef struct layer_class layer_class; typedef struct process_node_class process_node_class; @@ -64,7 +65,7 @@ node_create_request* fpcNdRq_CreateNode(u32 pRequestSize, s16 param_2, void* par node_create_request* fpcNdRq_Request(u32 param_1, int param_2, process_node_class* param_3, s16 param_4, void* param_5, node_create_request_method_class* pNodeCreateRequestMethodClass); -s32 fpcNdRq_ReChangeNode(unsigned int pRequestId, s16 param_2, void* param_3); -s32 fpcNdRq_ReRequest(unsigned int pRequestId, s16 param_2, void* param_3); +s32 fpcNdRq_ReChangeNode(fpc_ProcID pRequestId, s16 param_2, void* param_3); +s32 fpcNdRq_ReRequest(fpc_ProcID pRequestId, s16 param_2, void* param_3); -#endif \ No newline at end of file +#endif diff --git a/src/d/actor/d_a_alink_damage.inc b/src/d/actor/d_a_alink_damage.inc index cf7bacb6a3..fdf9e1160e 100644 --- a/src/d/actor/d_a_alink_damage.inc +++ b/src/d/actor/d_a_alink_damage.inc @@ -3,6 +3,8 @@ * Player Damage action handling */ +#include "d/actor/d_a_alink.h" + /* 800D6D94-800D6DA4 0D16D4 0010+00 0/0 0/0 2/2 .text getFreezeR__9daAlink_cCFv */ s16 daAlink_c::getFreezeR() const { return daAlinkHIO_damage_c0::m.mFreezeR; @@ -154,25 +156,24 @@ f32 daAlink_c::damageMagnification(int i_checkZoraMag, int param_1) { if (param_1 == 0 && checkNoResetFlg3(FLG3_UNK_40000000) && !checkEndResetFlg2(ERFLG2_UNK_40)) { - base_mag = 1.5f; /* 1.5 */ + base_mag = 1.5f; } else { - base_mag = 1.0f; /* 1.0 */ + base_mag = 1.0f; } if (checkWolf() && !checkCargoCarry() && param_1 == 0) { - return /* 2.0 */ 2.0f * base_mag; + return 2.0f * base_mag; } if (checkZoraWearAbility() && i_checkZoraMag) { - return /* 10.0 */ 10.0f * base_mag; + return 10.0f * base_mag; } return base_mag; } /* 800D72BC-800D7478 0D1BFC 01BC+00 6/6 1/1 0/0 .text setDamagePoint__9daAlink_cFiiii */ -// regalloc and literals -#ifdef NONMATCHING +// NONMATCHING - regalloc int daAlink_c::setDamagePoint(int i_dmgAmount, int i_checkZoraMag, int i_setDmgTimer, int param_3) { if (i_dmgAmount <= 0) { dComIfGp_setItemLifeCount(-i_dmgAmount, 0); @@ -195,7 +196,7 @@ int daAlink_c::setDamagePoint(int i_dmgAmount, int i_checkZoraMag, int i_setDmgT dComIfGp_setItemLifeCount(-magnified_dmg, 0); } - onResetFlg1(0x400); + onResetFlg1(RFLG1_UNK_400); mSwordUpTimer = 0; if (i_setDmgTimer) { @@ -204,14 +205,8 @@ int daAlink_c::setDamagePoint(int i_dmgAmount, int i_checkZoraMag, int i_setDmgT } field_0x3006 = 0; - return 0; } -#else -int daAlink_c::setDamagePoint(int param_0, int param_1, int param_2, int param_3) { - // NONMATCHING -} -#endif /* 800D7478-800D74A4 0D1DB8 002C+00 6/6 0/0 0/0 .text setDamagePointNormal__9daAlink_cFi */ @@ -228,8 +223,36 @@ void daAlink_c::setLandDamagePoint(int i_dmgAmount) { /* 800D74F4-800D76C4 0D1E34 01D0+00 11/11 0/0 0/0 .text getDamageVec__9daAlink_cFP12dCcD_GObjInf */ -Vec* daAlink_c::getDamageVec(dCcD_GObjInf* param_0) { - // NONMATCHING +cXyz* daAlink_c::getDamageVec(dCcD_GObjInf* i_hitObj) { + cXyz* vec = i_hitObj->GetTgRVecP(); + cXyz sp40; + + f32 var_f31 = vec->abs2XZ(); + + if (checkResetFlg1(RFLG1_UNK_2)) { + sp40.set(cM_ssin(shape_angle.y) * -10.0f, 0.0f, cM_scos(shape_angle.y) * -10.0f); + i_hitObj->SetTgRVec(sp40); + } else if (var_f31 < 0.1f) { + if (i_hitObj->GetTgHitAc() != NULL) { + sp40 = current.pos - i_hitObj->GetTgHitAc()->current.pos; + } else { + sp40 = current.pos - *i_hitObj->GetTgHitPosP(); + } + + var_f31 = sp40.abs2(); + if (var_f31 < 0.1f) { + sp40.x = cM_ssin(shape_angle.y) * -10.0f; + sp40.y = 0.0f; + sp40.z = cM_scos(shape_angle.y) * -10.0f; + } else { + sp40 *= 10.0f / JMAFastSqrt(var_f31); + } + + i_hitObj->SetTgRVec(sp40); + } + + multVecMagneBootInvMtx(vec); + return vec; } /* 800D76C4-800D7768 0D2004 00A4+00 1/1 0/0 0/0 .text setDashDamage__9daAlink_cFv */ @@ -258,13 +281,64 @@ BOOL daAlink_c::checkMagicArmorNoDamage() { } /* 800D7820-800D7A98 0D2160 0278+00 1/1 0/0 0/0 .text checkPolyDamage__9daAlink_cFv */ -void daAlink_c::checkPolyDamage() { - // NONMATCHING +int daAlink_c::checkPolyDamage() { + if (dComIfGs_PolyDamageOff_Check()) { + return 0; + } + + if (checkEndResetFlg1(ERFLG1_UNK_4000)) { + return 4; + } + + int var_r29; + if (!checkBoardRide() && mLinkAcch.i_ChkGroundHit()) { + if (dComIfG_Bgsp().ChkPolySafe(mLinkAcch.m_gnd) && (dKy_pol_argument_get(&mLinkAcch.m_gnd) & 0x60)) { + var_r29 = 1; + if (checkIcePolygonDamage(&mLinkAcch.m_gnd)) { + var_r29 |= 0x80; + } + + cM3dGPla sp38; + dComIfG_Bgsp().GetTriPla(mLinkAcch.m_gnd, &sp38); + field_0x311e = sp38.mNormal.atan2sX_Z(); + return var_r29; + } + } + + if (!checkBoardRide() && ((checkWaterPolygonUnder() && dComIfG_Bgsp().ChkPolySafe(mLinkAcch.m_wtr) && ((dKy_pol_argument_get(&mLinkAcch.m_wtr) & 0x60) || field_0x2fbc == 6)) || (checkModeFlg(0x40) && field_0x33bc < field_0x33b8 && -1000000000.0f != field_0x33b8 && ((field_0x2fc6 & 0x60) || field_0x2fc5 == 6) && (field_0x2fc5 != 6 || !(field_0x33b8 > field_0x33d8 + daAlinkHIO_basic_c0::m.mLavaDeathDepth))))) { + return 2; + } + + if (mLinkAcch.ChkWallHit()) { + dBgS_AcchCir* acch_cir = mAcchCir; + + for (int i = 0; i < 3; i++) { + if (acch_cir->ChkWallHit()) { + if (dComIfG_Bgsp().ChkPolySafe(*acch_cir) && (dKy_pol_argument_get(acch_cir) & 0x60)) { + var_r29 = 3; + + field_0x311e = acch_cir->GetWallAngleY(); + if (checkIcePolygonDamage(acch_cir)) { + var_r29 |= 0x80; + } + + if (dKy_pol_argument_get(acch_cir) & 0x20) { + var_r29 |= 0x40; + } + + return var_r29; + } + } + acch_cir++; + } + } + + return field_0x2fca; } /* 800D7A98-800D7B18 0D23D8 0080+00 1/1 0/0 0/0 .text * checkElecReturnDamage__9daAlink_cFR12dCcD_GObjInfPP10fopAc_ac_c */ -bool daAlink_c::checkElecReturnDamage(dCcD_GObjInf& param_0, fopAc_ac_c** param_1) { +BOOL daAlink_c::checkElecReturnDamage(dCcD_GObjInf& param_0, fopAc_ac_c** param_1) { if (param_0.ChkAtHit() && param_0.GetAtHitGObj() != NULL) { dCcD_GObjInf* gobj_p = (dCcD_GObjInf*)param_0.GetAtHitGObj(); @@ -313,18 +387,541 @@ bool daAlink_c::checkLargeAttack(int param_0) const { /* 800D7C40-800D8F3C 0D2580 12FC+00 1/1 0/0 0/0 .text checkDamageAction__9daAlink_cFv */ BOOL daAlink_c::checkDamageAction() { - // NONMATCHING + s16 spE = field_0x3006; + field_0x3006 = 0; + + u8 spA = field_0x2fca; + field_0x2fca = 0; + + if (checkAnmEnd(&mUpperFrameCtrl[2])) { + if (checkDashDamageAnime()) { + resetUpperAnime(UPPER_2, daAlinkHIO_damage_c0::m.mDashDmgAnm.mInterpolation); + } else if (checkWolfHeadDamageAnime()) { + resetUpperAnime(UPPER_2, 3.0f); + } else if (checkSmallUpperGuardAnime()) { + resetUpperAnime(UPPER_2, 3.0f); + setUpperGuardAnime(-1.0f); + } else if (checkZoraSwimDamageAnime()) { + resetUpperAnime(UPPER_2, 3.0f); + } + } + + if (checkEndResetFlg0(ERFLG0_UNK_40)) { + if (getSumouMode()) { + cancelSumouMode(); + } + + if (checkEndResetFlg1(ERFLG1_UNK_80)) { + return procOctaIealSpitInit(); + } + + if (checkEndResetFlg0(ERFLG0_UNK_40000000)) { + return commonFallInit(4); + } + + if (mProcID == PROC_WOLF_CARGO_CARRY && mProcVar2.field_0x300c == 0) { + offNoResetFlg0(FLG0_UNK_100000); + } + + return procCoLargeDamageInit(-3, 1, 0, 0, NULL, 0); + } + + if (checkEventRun()) { + offNoResetFlg1(FLG1_UNK_1); + offNoResetFlg0(FLG0_UNK_20000); + return 0; + } + + if (checkNoResetFlg1(FLG1_UNK_1)) { + if (!checkModeFlg(0x70C52) && !checkWolf() && procDkCaughtInit(field_0x28f8)) { + return 1; + } + + if (mProcID != PROC_DK_CAUGHT) { + offNoResetFlg1(FLG1_UNK_1); + } + } + + if (checkNoResetFlg0(FLG0_UNK_20000)) { + if ((!checkModeFlg(0x70C52)) && (!checkWolf()) && (!checkDkCaught2Anime())) { + setUpperAnimeBase(getMainBckData(ANM_HORSE_WAIT_D_B)->m_underID); + setFacePriAnime(ANM_HORSE_WAIT_D_B); + field_0x30f6 = daAlinkHIO_damCaught_c0::m.field_0x14; + field_0x2f96 = 1; + field_0x2f97 = 6; + onNoResetFlg1(FLG1_UNK_100000); + return procWaitInit(); + } + + if (!checkDkCaught2Anime()) { + offNoResetFlg0(FLG0_UNK_20000); + } + } + + if (checkEndResetFlg0(ERFLG0_UNK_80)) { + if (checkEndResetFlg1(ERFLG1_UNK_80)) { + return procOctaIealSpitInit(); + } + + if (checkEndResetFlg0(ERFLG0_UNK_40000000)) { + return commonFallInit(4); + } + + return procCoLargeDamageInit(-3, 1, 0, 0, NULL, 0); + } + + if (checkEndResetFlg1(ERFLG1_UNK_400)) { + return procCoSandWallHitInit(); + } + + if (checkNoResetFlg2(FLG2_UNK_1000)) { + if (commonLargeDamageUpInit(-4, 1, 0, 0)) { + current.pos = field_0x3744; + shape_angle.y = field_0x3104; + current.angle.y = shape_angle.y; + return 1; + } + return 0; + } + + if (mDamageTimer != 0) { + return checkWolfBarrierHitReverse(); + } + + dCcD_GObjInf* var_r29 = NULL; + for (int i = 0; i < 3; i++) { + if (field_0x850[i].ChkTgHit() && (field_0x2fb8 == 0 || (1 << i) == 0)) { + var_r29 = &field_0x850[i]; + break; + } + } + + if (var_r29 == NULL && checkWolf()) { + var_r29 = &field_0xFB8; + } + + if (checkEndResetFlg1(ERFLG1_UNK_8000) && checkWolf()) { + return procWolfCargoCarryInit(); + } + + BOOL armor_no_dmg = checkMagicArmorNoDamage(); + fopAc_ac_c* sp30 = NULL; + field_0x2fca = spA; + int sp2C = checkPolyDamage(); + field_0x2fca = 0; + field_0x3006 = spE; + + if (sp2C & 0x80) { + field_0x3006++; + if (field_0x3006 < daAlinkHIO_damage_c0::m.mFreezeTime) { + sp2C = 0; + } + } else if (field_0x3006 > 3) { + field_0x3006 -= 3; + } else { + field_0x3006 = 0; + } + + if (sp2C != 0) { + int sp28 = (sp2C & 7); + setDamagePoint(1, sp2C & 0x80, TRUE, 0); + + if (checkWolf()) { + mDamageTimer = daAlinkHIO_damage_c0::m.mWolfFloorInvincibleTime; + setDamageColorTime(); + } + + if (checkModeFlg(0x4000000)) { + dComIfGp_getVibration().StartShock(2, 0x1F, cXyz(0.0f, 1.0f, 0.0f)); + + if (checkWolf()) { + setWolfHeadDamage(); + } else { + voiceStart(Z2SE_AL_V_DAMAGE_S); + seStartOnlyReverb(Z2SE_AL_DAMAGE_NORMAL); + } + } else { + if (!checkModeFlg(0x40000) && ((sp2C & 0x40) || (!mLinkAcch.i_ChkGroundHit() && (sp28 == 3 || sp28 == 4)))) { + dComIfGp_getVibration().StartShock(2, 0x1F, cXyz(0.0f, 1.0f, 0.0f)); + + int sp24; + if (sp2C & 0x80) { + sp24 = 1; + } else { + sp24 = 0; + } + + if (sp28 == 4) { + field_0x311e = shape_angle.y; + } + + return procCoLargeDamageInit(-5, 1, 0, 0, NULL, sp24); + } + + dComIfGp_getVibration().StartShock(2, 0x1F, cXyz(0.0f, 1.0f, 0.0f)); + + if (checkWolf()) { + if (checkModeFlg(0x40000)) { + setWolfHeadDamage(); + } else if (sp2C & 0x80) { + return procWolfDamageInit(NULL); + } else { + return procCoPolyDamageInit(); + } + } else if (checkModeFlg(0x40000)) { + return procSwimDamageInit(NULL); + } else if (sp2C & 0x80) { + return procDamageInit(NULL, 0); + } else { + return procCoPolyDamageInit(); + } + } + } else if ((mEquipItem == 0x103 || (checkHookshotItem(mEquipItem) && !mAtCps[0].ChkAtSPrm(0x20))) && (checkElecReturnDamage(mAtCps[0], &sp30) || checkElecReturnDamage(mAtCps[1], &sp30) || checkElecReturnDamage(mAtCps[2], &sp30))) { + setDamagePointNormal(2); + onResetFlg1(RFLG1_UNK_2); + dComIfGp_getVibration().StartShock(4, 0x1F, cXyz(0.0f, 1.0f, 0.0f)); + + if (checkModeFlg(0x4000000)) { + if (checkWolf()) { + setWolfHeadDamage(); + } else { + voiceStart(Z2SE_AL_V_DAMAGE_S); + seStartOnlyReverb(Z2SE_AL_DAMAGE_NORMAL); + } + } else { + return procCoElecDamageInit(sp30, NULL, 0); + } + } else if (var_r29 != NULL && var_r29->ChkTgHit() && mProcID != PROC_GUARD_SLIP) { + fopAc_ac_c* tghit_ac = var_r29->GetTgHitAc(); + s16 tghit_ac_name; + if (tghit_ac != NULL) { + tghit_ac_name = fopAcM_GetName(tghit_ac); + } else { + tghit_ac_name = PROC_ALINK; + } + + dCcD_GObjInf* tghit_gobj = var_r29->GetTgHitGObj(); + int at_spl; + u8 at_mtrl; + if (tghit_gobj != NULL) { + at_spl = tghit_gobj->GetAtSpl(); + at_mtrl = tghit_gobj->GetAtMtrl(); + } else { + at_spl = field_0x814.GetAtSpl(); + at_mtrl = dCcD_MTRL_NONE; + } + + if (at_spl == 8 && checkWolf()) { + at_spl = 1; + } + + if (var_r29->ChkTgShieldHit()) { + setGuardSe(var_r29); + + if (checkHugeAttack(at_spl)) { + dComIfGp_getVibration().StartShock(5, 1, cXyz(0.0f, 1.0f, 0.0f)); + } else if (checkLargeAttack(at_spl)) { + dComIfGp_getVibration().StartShock(4, 1, cXyz(0.0f, 1.0f, 0.0f)); + } else if (at_spl == 8) { + dComIfGp_getVibration().StartShock(2, 1, cXyz(0.0f, 1.0f, 0.0f)); + } else { + dComIfGp_getVibration().StartShock(3, 1, cXyz(0.0f, 1.0f, 0.0f)); + } + + if (!armor_no_dmg && at_mtrl == dCcD_MTRL_FIRE && checkWoodShieldEquip() && field_0x2fcb == 0 && !field_0x2e44.checkPassNum(15)) { + field_0x2fcb = 120; + seStartOnlyReverb(Z2SE_AL_BURN_START); + } + + if ((mProcID != PROC_GUARD_ATTACK || (tghit_ac_name != PROC_E_TK_BALL && tghit_ac_name != PROC_KN_BULLET)) && !checkModeFlg(0x4000000)) { + if (at_spl == 10 || at_spl == 11 || at_spl == 9) { + return procGuardBreakInit(); + } + + if (!armor_no_dmg) { + if (var_r29->ChkTgShield()) { + if (checkHorseRide()) { + if ((checkLargeAttack(at_spl) || checkHugeAttack(at_spl)) && (!checkSpecialHorseRide())) { + return procHorseHangInit(var_r29, 0); + } + } else if (at_spl == 8 || checkModeFlg(0x70C52)) { + if (!checkModeFlg(0x400) && mEquipItem != IRONBALL) { + setSmallGuard(var_r29); + } + } else { + return procGuardSlipInit(at_spl, var_r29); + } + } else if (var_r29->ChkTgSpShield()) { + return procGuardSlipInit(at_spl, var_r29); + } + } + } + } else { + int dmg = field_0x814.GetDmg(); + if (var_r29->ChkTgHit() && tghit_gobj != NULL && tghit_gobj->GetAtType() == AT_TYPE_BOMB) { + if (checkNoResetFlg3(FLG3_UNK_40000000)) { + dmg = 1; + } else { + dmg = 2; + } + } + + if (at_mtrl == dCcD_MTRL_UNK_5) { + dComIfGp_getVibration().StartShock(4, 0x1F, cXyz(0.0f, 1.0f, 0.0f)); + } else if (checkHugeAttack(at_spl)) { + dComIfGp_getVibration().StartShock(8, 0x1F, cXyz(0.0f, 1.0f, 0.0f)); + } else if (checkLargeAttack(at_spl)) { + dComIfGp_getVibration().StartShock(4, 0x1F, cXyz(0.0f, 1.0f, 0.0f)); + } else { + dComIfGp_getVibration().StartShock(2, 0x1F, cXyz(0.0f, 1.0f, 0.0f)); + } + + setDamagePoint(dmg, at_mtrl == dCcD_MTRL_FIRE || at_mtrl == dCcD_MTRL_ICE, TRUE, 0); + + if (armor_no_dmg && at_mtrl != dCcD_MTRL_UNK_5 && at_mtrl != dCcD_MTRL_ICE) { + setGuardSe(var_r29); + } else if (at_mtrl == dCcD_MTRL_FIRE) { + seStartOnlyReverb(Z2SE_AL_BURN_START); + if (at_spl == 8) { + initFirePointDamageEffect(var_r29->GetTgHitPosP(), var_r29); + } else { + initFirePointDamageEffectAll(); + } + } + + if (checkModeFlg(0x4000000)) { + if (checkWolf()) { + setWolfHeadDamage(); + } else if (!armor_no_dmg) { + voiceStart(Z2SE_AL_V_DAMAGE_S); + seStartOnlyReverb(Z2SE_AL_DAMAGE_NORMAL); + } + } else if (at_mtrl == dCcD_MTRL_UNK_5 && !checkSpecialHorseRide()) { + return procCoElecDamageInit(var_r29->GetTgHitAc(), var_r29, at_spl); + } else if (checkReinRide()) { + if (at_mtrl == dCcD_MTRL_UNK_5) { + return procCoLargeDamageInit(-1, 1, 0, 0, var_r29, 0); + } + + if (!checkBoarSingleBattle() && (mProcID == PROC_HORSE_HANG || mProcID == PROC_BOAR_RUN || mProcID == PROC_HORSE_RUN || checkLargeAttack(at_spl) || checkHugeAttack(at_spl))) { + setHorseZeldaDamage(); + procCoLargeDamageInit(-1, 1, 0, 0, var_r29, 0); + onModeFlg(0x2000); + return 1; + } + + if (!armor_no_dmg) { + if (checkHorseNotDamageReaction()) { + voiceStart(Z2SE_AL_V_DAMAGE_S); + seStartOnlyReverb(Z2SE_AL_DAMAGE_NORMAL); + } else if (at_spl == 8 || checkHorseZelda()) { + return procHorseDamageInit(var_r29); + } else { + return procHorseHangInit(var_r29, 1); + } + } + } else if (checkModeFlg(0x40000)) { + if (checkWolf()) { + setWolfHeadDamage(); + } else if (!armor_no_dmg) { + return procSwimDamageInit(var_r29); + } + } else if (dmg == 0 && !checkWolf() && (at_spl == 10 || at_spl == 11 || at_spl == 9) && mLinkAcch.i_ChkGroundHit() && !checkModeFlg(0x70C52)) { + return procGuardBreakInit(); + } else if (checkHugeAttack(at_spl)) { + return procCoLargeDamageInit(-1, 0, 0, 0, var_r29, 0); + } else if (checkModeFlg(0x70C52) || checkLargeAttack(at_spl)) { + if (checkModeFlg(0x10000) && !checkLargeAttack(at_spl)) { + voiceStart(Z2SE_AL_V_DAMAGE_S); + seStartOnlyReverb(Z2SE_AL_DAMAGE_NORMAL); + procFallInit(1, daAlinkHIO_autoJump_c0::m.mFallInterpolation); + onModeFlg(8); + return 1; + } + + if (at_spl == 8 && (mProcID == PROC_WOLF_ROPE_MOVE || mProcID == PROC_WOLF_ROPE_SUBJECTIVITY || mProcID == PROC_WOLF_ROPE_STAGGER)) { + cXyz* sp14 = getDamageVec(var_r29); + if ((s16)(sp14->atan2sX_Z() - shape_angle.y) >= 0) { + return procWolfRopeHangInit(2); + } + return procWolfRopeHangInit(3); + } + + return procCoLargeDamageInit(-1, 1, 0, 0, var_r29, 0); + } else if (!armor_no_dmg || at_mtrl == dCcD_MTRL_ICE) { + if (checkDashAnime() && at_mtrl != dCcD_MTRL_ICE) { + setDashDamage(); + } else if (mProcID == PROC_WOLF_MOVE && at_mtrl != dCcD_MTRL_ICE && mNormalSpeed > field_0x594 * 0.7f) { + setWolfHeadDamage(); + } else if (checkWolf()) { + return procWolfDamageInit(var_r29); + } else { + return procDamageInit(var_r29, 0); + } + } + } + } + + if (checkHorseRide()) { + daHorse_c* horsep = dComIfGp_getHorseActor(); + if (horsep->checkCowHit() != 0) { + current.angle.y = horsep->getCowHitAngle(); + + if (checkBoarSingleBattle()) { + dComIfGp_getVibration().StartShock(8, 0x1F, cXyz(0.0f, 1.0f, 0.0f)); + return procCoLargeDamageInit(-1, 0, 0, 0, NULL, 0); + } + + dComIfGp_getVibration().StartShock(4, 0x1F, cXyz(0.0f, 1.0f, 0.0f)); + return procCoLargeDamageInit(-1, 1, 0, 0, NULL, 0); + } + } + + field_0x814.ClrTg(); + field_0x814.ClrAt(); + return checkWolfBarrierHitReverse(); } /* 800D8F3C-800D9514 0D387C 05D8+00 2/2 0/0 0/0 .text procDamageInit__9daAlink_cFP12dCcD_GObjInfi */ +// NONMATCHING - cLib_minMaxLimit appears to have issues when using s16 int daAlink_c::procDamageInit(dCcD_GObjInf* param_0, int param_1) { - // NONMATCHING + BOOL freeze_player; + + if (!param_1 && (param_0 == NULL || (param_0->GetTgHitGObj() != NULL && param_0->GetTgHitGObj()->GetAtMtrl() == dCcD_MTRL_ICE))) { + freeze_player = true; + voiceStart(Z2SE_AL_V_DAMAGE_FREEZE); + seStartOnlyReverb(Z2SE_AL_FREEZE); + } else { + seStartOnlyReverb(Z2SE_AL_DAMAGE_NORMAL); + freeze_player = false; + + if (!param_1) { + voiceStart(Z2SE_AL_V_DAMAGE_S); + } + } + + if (checkIronBallWaitAnime() && !freeze_player && !param_1) { + return 1; + } + + commonProcInit(PROC_DAMAGE); + + cXyz sp7C; + f32 var_f31; + f32 var_f30 = cM_ssin(shape_angle.y); + f32 var_f29 = cM_scos(shape_angle.y); + + cXyz* var_r29; + if (param_0 != NULL) { + var_r29 = getDamageVec(param_0); + } else if (param_1) { + s16 var_r24 = field_0x3102 + 0x8000; + sp7C.set(cM_ssin(var_r24), 0.0f, cM_scos(var_r24)); + var_r29 = &sp7C; + offModeFlg(8); + } else { + sp7C.set(cM_ssin(field_0x311e), 0.0f, cM_scos(field_0x311e)); + var_r29 = &sp7C; + } + + cXyz sp88(var_r29->z * -var_f30 + var_r29->x * var_f29, + var_r29->y, + var_r29->z * var_f29 + var_r29->x * var_f30); + + mProcVar2.field_0x300c = cLib_minMaxLimit(cM_atan2s(sp88.z, sp88.y), -daAlinkHIO_damNormal_c0::m.field_0x50, daAlinkHIO_damNormal_c0::m.field_0x50); + mProcVar3.field_0x300e.x = cLib_minMaxLimit(cM_atan2s(sp88.x, -JMAFastSqrt(sp88.y * sp88.y + sp88.z * sp88.z)), -daAlinkHIO_damNormal_c0::m.field_0x52, daAlinkHIO_damNormal_c0::m.field_0x52); + + if (freeze_player) { + var_f31 = 0.0f; + } else if (mTargetedActor != NULL) { + var_f31 = daAlinkHIO_atnMove_c0::m.mWaitAnmSpeed; + } else { + var_f31 = daAlinkHIO_noActAtnMove_c0::m.mWaitAnmSpeed; + } + + if (checkAtnLeftAnime()) { + setUnderAnime(0x1A, UNDER_2, var_f31, 0.0f, -1, -1.0f); + } else if (checkAtnRightAnime()) { + setUnderAnime(0x1C, UNDER_2, var_f31, 0.0f, -1, -1.0f); + } + + int direction = getDirectionFromAngle(cM_atan2s(-sp88.x, -sp88.z)); + if (direction == DIR_FORWARD) { + setSingleAnimeParam(ANM_DMG_SMALL_A, &daAlinkHIO_damNormal_c0::m.field_0x0); + field_0x3478 = daAlinkHIO_damNormal_c0::m.field_0x0.mCheckFrame; + } else if (direction == DIR_BACKWARD) { + setSingleAnimeParam(ANM_DMG_SMALL_B, &daAlinkHIO_damNormal_c0::m.field_0x14); + field_0x3478 = daAlinkHIO_damNormal_c0::m.field_0x14.mCheckFrame; + } else if (direction == DIR_LEFT) { + setSingleAnimeParam(ANM_DMG_SMALL_LEFT, &daAlinkHIO_damNormal_c0::m.field_0x28); + field_0x3478 = daAlinkHIO_damNormal_c0::m.field_0x28.mCheckFrame; + } else { + setSingleAnimeParam(ANM_DMG_SMALL_RIGHT, &daAlinkHIO_damNormal_c0::m.field_0x3C); + field_0x3478 = daAlinkHIO_damNormal_c0::m.field_0x3C.mCheckFrame; + } + + current.angle.y = var_r29->atan2sX_Z(); + mProcVar3.field_0x300e.y = current.angle.y; + + mNormalSpeed = var_r29->absXZ() * daAlinkHIO_damNormal_c0::m.field_0x58 + daAlinkHIO_damNormal_c0::m.field_0x54; + if (mNormalSpeed > daAlinkHIO_move_c0::m.mMaxSpeed) { + mNormalSpeed = daAlinkHIO_move_c0::m.mMaxSpeed; + } + + daPy_frameCtrl_c* frame_ctrl = mUnderFrameCtrl; + field_0x347c = M_PI / (frame_ctrl->getEnd() - frame_ctrl->getStart()); + + if (freeze_player) { + frame_ctrl->setRate(daAlinkHIO_damNormal_c0::m.field_0x60); + frame_ctrl->setEnd(7); + mNormalSpeed = 0.0f; + mProcVar0.mIceFreezeTimer = 90; + onNoResetFlg1(FLG1_ICE_FREEZE); + } else { + mProcVar0.mIceFreezeTimer = 0; + } + + mProcVar1.field_0x300a = 0; + return 1; } /* 800D9514-800D96DC 0D3E54 01C8+00 1/0 0/0 0/0 .text procDamage__9daAlink_cFv */ int daAlink_c::procDamage() { - // NONMATCHING + daPy_frameCtrl_c* frame_ctrl = mUnderFrameCtrl; + f32 var_f30 = frame_ctrl->getFrame() - frame_ctrl->getStart(); + f32 var_f31 = cM_fsin(field_0x347c * var_f30); + + mBodyAngle.x = mProcVar2.field_0x300c * var_f31; + mBodyAngle.z = -mProcVar3.field_0x300e.x * var_f31; + mBodyAngle.y = 0; + + cLib_chaseF(&mNormalSpeed, 0.0f, daAlinkHIO_damNormal_c0::m.field_0x5C); + + if (checkFreezeDamage()) { + freezeTimerDamage(); + } + + if (checkAnmEnd(frame_ctrl)) { + current.angle.y = shape_angle.y; + + if (!checkFreezeDamage()) { + checkNextAction(0); + } else if (mProcVar0.mIceFreezeTimer == 0) { + seStartOnlyReverb(Z2SE_AL_FREEZE_RECOVER); + procStEscapeInit(); + onModeFlg(8); + } + } else if (frame_ctrl->getFrame() > field_0x3478) { + current.angle.y = shape_angle.y; + onModeFlg(4); + + if (!checkNextAction(1)) { + current.angle.y = mProcVar3.field_0x300e.y; + } + } + + return 1; } /* 800D96DC-800D9E88 0D401C 07AC+00 12/12 0/0 0/0 .text @@ -454,9 +1051,8 @@ int daAlink_c::procStEscapeInit() { commonProcInit(PROC_HUMAN_ST_ESCAPE); setSingleAnimeParam(ANM_FROZEN_FREE, &daAlinkHIO_damCaught_c0::m.field_0x0); - f32 tmp_7 = 7.0f; - mUnderFrameCtrl[0].setFrame(tmp_7); - getNowAnmPackUnder(UNDER_0)->setFrame(tmp_7); + mUnderFrameCtrl[0].setFrame(7.0f); + getNowAnmPackUnder(UNDER_0)->setFrame(7.0f); mNormalSpeed = 0.0f; return 1; @@ -561,8 +1157,76 @@ int daAlink_c::procCoSandWallHit() { /* 800DBED8-800DC214 0D6818 033C+00 1/1 0/0 0/0 .text procCoLavaReturnInit__9daAlink_cFi */ -int daAlink_c::procCoLavaReturnInit(int param_0) { - // NONMATCHING +int daAlink_c::procCoLavaReturnInit(BOOL i_sandReturn) { + if (!dComIfGp_event_compulsory(this, 0, 0xFFFF)) { + return 0; + } + + mDemo.setSpecialDemoType(); + u32 chk_40 = checkModeFlg(0x40); + + if (!commonProcInitNotSameProc(PROC_LAVA_RETURN)) { + return 1; + } + + if (chk_40) { + current.pos.x = field_0x3834.x; + current.pos.z = field_0x3834.z; + } + + onNoResetFlg0(FLG0_SWIM_UP); + + if (checkWolf()) { + setSingleAnimeWolfBase(WANM_SWIM_DROWN); + setFaceBasicTexture(FTANM_UNK_9E); + + if (i_sandReturn) { + voiceStart(Z2SE_WL_V_FALL_QUICKSAND); + } else { + voiceStart(Z2SE_WL_V_FALL_MAGMA); + } + } else { + setSingleAnimeBase(ANM_SWIM_DROWN); + + if (mEquipItem == 0x103) { + field_0x2f92 = 100; + } + + if (i_sandReturn) { + voiceStart(Z2SE_AL_V_FALL_QUICKSAND); + } else { + voiceStart(Z2SE_AL_V_FALL_MAGMA); + } + } + + if (i_sandReturn) { + seStartOnlyReverb(Z2SE_AL_SINK_SAND_PITFALL); + field_0x2fbd = 0xFF; + offModeFlg(0x40000); + + field_0x2060->getOldFrameTransInfo(0)->mTranslate.y += field_0x3458; + mSinkShapeOffset -= field_0x3458; + field_0x2f99 = 0; + field_0x32cc = 5; + field_0x3198 = 4; + } else { + seStartOnlyReverb(Z2SE_AL_SINK_MAGMA); + + cXyz particle_pos(current.pos.x, mWaterY, current.pos.z); + dComIfGp_particle_set(0x8757, &particle_pos, &tevStr, NULL, NULL); + dComIfGp_particle_set(0x8758, &particle_pos, &tevStr, NULL, NULL); + field_0x32cc = 4; + field_0x3198 = 8; + } + + field_0x3080 = 0; + mDamageTimer = 0; + mNormalSpeed = 0.0f; + field_0x3194 = 1; + + u32 id = fopAcM_GetID(this); + dCam_getBody()->StartEventCamera(9, id, "Type", 1, &field_0x3194, 0); + return 1; } /* 800DC214-800DC278 0D6B54 0064+00 1/0 0/0 0/0 .text procCoLavaReturn__9daAlink_cFv */ @@ -618,7 +1282,7 @@ int daAlink_c::procCoSwimFreezeReturnInit() { field_0x3080 = 0; mDamageTimer = 0; mNormalSpeed = 0.0f; - onNoResetFlg1(FLG1_UNK_40000000); + onNoResetFlg1(FLG1_ICE_FREEZE); field_0x3194 = 1; u32 id = fopAcM_GetID(this); @@ -631,7 +1295,7 @@ int daAlink_c::procCoSwimFreezeReturnInit() { int daAlink_c::procCoSwimFreezeReturn() { if (mProcVar2.field_0x300c == 0) { if (checkRestartDead(4, 1)) { - onNoResetFlg1(FLG1_UNK_40000000); + onNoResetFlg1(FLG1_ICE_FREEZE); } else { u32 mode = 4; setLastSceneDamage(4, &mode); diff --git a/src/d/actor/d_a_alink_demo.inc b/src/d/actor/d_a_alink_demo.inc index 9f05cc0acb..de1b4eff56 100644 --- a/src/d/actor/d_a_alink_demo.inc +++ b/src/d/actor/d_a_alink_demo.inc @@ -199,7 +199,7 @@ int daAlink_c::checkDemoAction() { if (!checkCanoeRide()) { daCanoe_c* canoe_p = (daCanoe_c*)fopAcIt_Judge((fopAcIt_JudgeFunc)daAlink_searchCanoe, NULL); - unsigned int rodID = + fpc_ProcID rodID = fopAcM_create(PROC_MG_ROD, 0xD, &mLeftHandPos, -1, NULL, NULL, -1); canoe_p->onRodID(rodID); return procCanoeJumpRideInit(NULL); diff --git a/src/d/actor/d_a_alink_guard.inc b/src/d/actor/d_a_alink_guard.inc index 6290a9da05..d9ad458a9b 100644 --- a/src/d/actor/d_a_alink_guard.inc +++ b/src/d/actor/d_a_alink_guard.inc @@ -91,7 +91,7 @@ void daAlink_c::stickArrowIncrement(int param_0) { /* 800DC8C4-800DCA2C 0D7204 0168+00 0/0 0/0 1/1 .text * setArrowShieldActor__9daAlink_cFP10fopAc_ac_ci */ void daAlink_c::setArrowShieldActor(fopAc_ac_c* i_actor, int param_1) { - unsigned int new_arrow_id = fopAcM_GetID(i_actor); + fpc_ProcID new_arrow_id = fopAcM_GetID(i_actor); int arrow_num = 0; for (; arrow_num < 16; arrow_num++) { @@ -309,4 +309,4 @@ int daAlink_c::procTurnMoveInit(int param_0) { /* 800DE380-800DE64C 0D8CC0 02CC+00 1/0 0/0 0/0 .text procTurnMove__9daAlink_cFv */ int daAlink_c::procTurnMove() { // NONMATCHING -} \ No newline at end of file +} diff --git a/src/d/actor/d_a_alink_hook.inc b/src/d/actor/d_a_alink_hook.inc index bf8623d4a4..b01f029f31 100644 --- a/src/d/actor/d_a_alink_hook.inc +++ b/src/d/actor/d_a_alink_hook.inc @@ -190,7 +190,7 @@ void daAlink_c::setHookshotCatchNow() { /* 80108A90-80108B34 1033D0 00A4+00 1/0 0/0 0/0 .text setHookshotCarryOffset__9daAlink_cFUiPC4cXyz */ -bool daAlink_c::setHookshotCarryOffset(unsigned int i_carryActorID, cXyz const* i_posOffset) { +bool daAlink_c::setHookshotCarryOffset(fpc_ProcID i_carryActorID, cXyz const* i_posOffset) { if (dComIfGp_checkPlayerStatus1(0, 0x10000)) { fopAc_ac_c* carryActor_p = mCargoCarryAcKeep.getActor(); diff --git a/src/d/actor/d_a_alink_link.inc b/src/d/actor/d_a_alink_link.inc index 97310d4e8b..c07676402d 100644 --- a/src/d/actor/d_a_alink_link.inc +++ b/src/d/actor/d_a_alink_link.inc @@ -2291,45 +2291,7 @@ int daAlink_c::procGoronRideWait() { // NONMATCHING } -/* ############################################################################################## */ -/* 8039207C-80392088 01E6DC 000C+00 0/1 0/0 0/0 .rodata @74748 */ -#pragma push -#pragma force_active on -SECTION_RODATA static u8 const lit_74748[12] = { - 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, -}; -COMPILER_STRIP_GATE(0x8039207C, &lit_74748); -#pragma pop - -/* 80392088-80392094 01E6E8 000C+00 0/1 0/0 0/0 .rodata localBoomCatchPos$74910 */ -#pragma push -#pragma force_active on -SECTION_RODATA static Vec const localBoomCatchPos = { - 18.7f, - 146.3f, - 69.2f, -}; -COMPILER_STRIP_GATE(0x80392088, &localBoomCatchPos); -#pragma pop - -/* 80392094-80392094 01E6F4 0000+00 0/0 0/0 0/0 .rodata @stringBase0 */ -#pragma push -#pragma force_active on -SECTION_DEAD static char const* const stringBase_803925D1 = "Alink"; -SECTION_DEAD static char const* const stringBase_803925D7 = "kiko_yami"; -SECTION_DEAD static char const* const stringBase_803925E1 = "fire_insect"; -SECTION_DEAD static char const* const stringBase_803925ED = "MapToolCamera19"; -SECTION_DEAD static char const* const stringBase_803925FD = "yami_mog"; -SECTION_DEAD static char const* const stringBase_80392606 = "R_SP109"; -SECTION_DEAD static char const* const stringBase_8039260E = "MapToolCamera1"; -SECTION_DEAD static char const* const stringBase_8039261D = "MapToolCamera2"; -SECTION_DEAD static char const* const stringBase_8039262C = "MapToolCamera23"; -/* @stringBase0 padding */ -SECTION_DEAD static char const* const pad_8039263C = "\0\0\0"; -#pragma pop - /* 800C8700-800CAFA8 0C3040 28A8+00 1/1 0/0 0/0 .text execute__9daAlink_cFv */ -#ifdef NONMATCHING int daAlink_c::execute() { loadModelDVD(); @@ -2603,20 +2565,16 @@ int daAlink_c::execute() { event_name = NULL; } - if (event_name != NULL) { - if (!strcmp(event_name, "kiko_yami") || !strcmp(event_name, "fire_insect") || - (checkStageName("F_SP108") && - (!strcmp(event_name, "MapToolCamera19") || !strcmp(event_name, "yami_mog"))) || - (checkStageName("R_SP109") && - (!strcmp(event_name, "MapToolCamera1") || !strcmp(event_name, "MapToolCamera2") || - !strcmp(event_name, "MapToolCamera19") || !strcmp(event_name, "fire_insect"))) || - (checkStageName("F_SP115") && !strcmp(event_name, "MapToolCamera23"))) - { + if (event_name != NULL && (!strcmp(event_name, "kiko_yami") || !strcmp(event_name, "fire_insect") || + (checkStageName("F_SP108") && + (!strcmp(event_name, "MapToolCamera19") || !strcmp(event_name, "yami_mog"))) || + (checkStageName("R_SP109") && + (!strcmp(event_name, "MapToolCamera1") || !strcmp(event_name, "MapToolCamera2") || + !strcmp(event_name, "MapToolCamera19") || !strcmp(event_name, "fire_insect"))) || + (checkStageName("F_SP115") && !strcmp(event_name, "MapToolCamera23")))) + { mWolfEyeUp = daAlinkHIO_wolf_c0::m.mSensesLingerTime + 1; - } - } - - if (checkEndResetFlg1(ERFLG1_UNK_200) || (checkDungeon() && eventInfo.checkCommandDoor()) || + } else if (checkEndResetFlg1(ERFLG1_WOLF_EYE_KEEP) || (checkDungeon() && eventInfo.checkCommandDoor()) || mProcID == PROC_WOLF_GET_SMELL || mProcID == PROC_WOLF_DIG || mProcID == PROC_WOLF_DIG_THROUGH || checkNoResetFlg0(FLG0_UNK_4000) || dComIfGp_checkPlayerStatus1(0, 0x1000000) || @@ -2732,548 +2690,553 @@ int daAlink_c::execute() { playFaceTextureAnime(); - cXyz old_pos = current.pos; - posMove(); - - if (checkWolf()) { - wolfBgCheck(); - } else if (checkModeFlg(MODE_SWIMMING)) { - swimBgCheck(120.0f); - } - - cXyz pos = current.pos; - field_0x3528 = speed; - - mLinkAcch.ClrGroundHit(); - mLinkAcch.CrrPos(dComIfG_Bgsp()); - - if (checkMagneBootsOn()) { - current.pos = pos; - } - - if (!mLinkAcch.ChkGroundHit() && !mLinkAcch.ChkRoofHit() && getZoraSwim()) { - current.pos.y = pos.y; - } - - iceSlipBgCheck(); - setWaterY(); - autoGroundHit(); - - if (checkNoResetFlg0(FLG0_UNDERWATER) || - (checkPossibleWaterInMode() && !checkNoResetFlg0(FLG0_SWIM_UP))) { - f32 var_f31; - if (mProcID == PROC_HOOKSHOT_FLY) { - var_f31 = current.pos.y - (field_0x598 * 0.5f); - } else if (dComIfGp_checkPlayerStatus1(0, 0x2000000)) { - var_f31 = (-65.0f + current.pos.y) - daAlinkHIO_swim_c0::m.mInitHeight; - } else { - var_f31 = current.pos.y; + cXyz old_pos = current.pos; + posMove(); + + if (checkWolf()) { + wolfBgCheck(); + } else if (checkModeFlg(MODE_SWIMMING)) { + swimBgCheck(120.0f); } - if (!checkNoResetFlg0(FLG0_UNK_80) || - mWaterY - var_f31 <= daAlinkHIO_swim_c0::m.mInitHeight) + cXyz pos = current.pos; + field_0x3528 = speed; + + mLinkAcch.ClrGroundHit(); + mLinkAcch.CrrPos(dComIfG_Bgsp()); + + if (checkMagneBootsOn()) { + current.pos = pos; + } + + if (!mLinkAcch.ChkGroundHit() && !mLinkAcch.ChkRoofHit() && getZoraSwim()) { + current.pos.y = pos.y; + } + + iceSlipBgCheck(); + setWaterY(); + autoGroundHit(); + + if (checkNoResetFlg0(FLG0_UNDERWATER) || + (checkPossibleWaterInMode() && !checkNoResetFlg0(FLG0_SWIM_UP))) { - swimOutAfter(0); - } - } + f32 var_f31; + if (mProcID == PROC_HOOKSHOT_FLY) { + var_f31 = current.pos.y - (field_0x598 * 0.5f); + } else if (dComIfGp_checkPlayerStatus1(0, 0x2000000)) { + var_f31 = (current.pos.y + -65.0f) - (daAlinkHIO_swim_c0::m.mInitHeight - 5.0f); + } else { + var_f31 = current.pos.y; + } - if (mProcID == PROC_TOOL_DEMO || mProcID == PROC_GANON_FINISH) { - J3DTransformInfo ti; - field_0x1f20->getAnm(0)->getTransform(0, &ti); - mDoMtx_stack_c::transS(old_pos); - mDoMtx_stack_c::YrotM(shape_angle.y); - - Vec tmp; - mDoMtx_stack_c::multVec(&tmp, ¤t.pos); - speed.y = 0.0f; - - if (field_0x3198 != 0) { - if (mLinkAcch.GetGroundH() != -1000000000.0f) { - current.pos.y = mLinkAcch.GetGroundH(); + if (!checkNoResetFlg0(FLG0_UNK_80) || + mWaterY - var_f31 <= daAlinkHIO_swim_c0::m.mInitHeight - 5.0f) + { + swimOutAfter(0); } } - } else if (mProcID == PROC_HOOKSHOT_FLY || mProcID == PROC_MAGNE_BOOTS_FLY || - (checkModeFlg(MODE_ROPE_WALK | MODE_VINE_CLIMB | MODE_UNK_800 | MODE_RIDING) && - mProcID != PROC_HORSE_GETOFF && mProcID != PROC_WOLF_CHAIN_READY && - !checkBoardRide())) - { - current.pos = pos; - } else if (checkModeFlg(MODE_UNK_4000)) { - if (mProcID == PROC_DOOR_OPEN || mProcID == PROC_HANG_LEVER_DOWN) { + + if (mProcID == PROC_TOOL_DEMO || mProcID == PROC_GANON_FINISH) { + J3DTransformInfo ti; + field_0x1f20->getAnm(0)->getTransform(0, &ti); + mDoMtx_stack_c::transS(old_pos); + mDoMtx_stack_c::YrotM(shape_angle.y); + + Vec tmp = {0.0f, 0.0f, 0.0f}; + tmp.x = ti.mTranslate.x; + tmp.z = ti.mTranslate.z; + mDoMtx_stack_c::multVec(&tmp, ¤t.pos); + speed.y = 0.0f; + + if (field_0x3198 != 0) { + if (mLinkAcch.GetGroundH() != -1000000000.0f) { + current.pos.y = mLinkAcch.GetGroundH(); + } + } + } else if (mProcID == PROC_HOOKSHOT_FLY || mProcID == PROC_MAGNE_BOOTS_FLY || + (checkModeFlg(MODE_ROPE_WALK | MODE_VINE_CLIMB | MODE_UNK_800 | MODE_RIDING) && + mProcID != PROC_HORSE_GETOFF && mProcID != PROC_WOLF_CHAIN_READY && + !checkBoardRide())) + { + current.pos = pos; + } else if (checkModeFlg(MODE_UNK_4000)) { + if (mProcID == PROC_DOOR_OPEN || mProcID == PROC_HANG_LEVER_DOWN) { + current.pos.y = old_pos.y; + speed.y = 0.0f; + } + current.pos.x = pos.x; + current.pos.z = pos.z; + } else if (checkFlyAtnWait() || mProcID == PROC_WARP) { current.pos.y = old_pos.y; speed.y = 0.0f; } - current.pos.x = pos.x; - current.pos.z = pos.z; - } else if (checkFlyAtnWait() || mProcID == PROC_WARP) { - current.pos.y = old_pos.y; - speed.y = 0.0f; - } - field_0x3178 = field_0x3174; + field_0x3178 = field_0x3174; - if (mLinkAcch.GetGroundH() != -1000000000.0f) { - setRoomInfo(); + if (mLinkAcch.GetGroundH() != -1000000000.0f) { + setRoomInfo(); - if (!checkModeFlg(MODE_PLAYER_FLY) && !checkMagneBootsOn() && mProcID != PROC_TOOL_DEMO && - mProcID != PROC_GANON_FINISH && mProcID != PROC_DUNGEON_WARP && - (field_0x2f8c == 1 || field_0x2f8c == 3)) - { - setStepsOffset(); - } else { - field_0x2b9c = 0.0f; - if (!checkModeFlg(MODE_SWIMMING)) { - field_0x2b98 = 0.0f; - } - } - - if (checkModeFlg(MODE_UNK_2000000)) { - setShapeAngleOnGround(); - } - - if (!checkRestartRoom() && !checkDeadHP()) { - checkSceneChange(dComIfG_Bgsp().GetExitId(mLinkAcch.m_gnd)); - } - - if (mLinkAcch.ChkGroundHit()) { - if (dComIfG_Bgsp().ChkMoveBG(mLinkAcch.m_gnd)) { - dComIfG_Bgsp().MoveBgTransPos(mLinkAcch.m_gnd, true, &field_0x34ec, NULL, NULL); - } - - if (checkNoResetFlg0(FLG0_UNK_80) && !checkNoResetFlg0(FLG0_UNDERWATER) && - mWaterY >= mLinkAcch.GetGroundH()) + if (!checkModeFlg(MODE_PLAYER_FLY) && !checkMagneBootsOn() && mProcID != PROC_TOOL_DEMO && + mProcID != PROC_GANON_FINISH && mProcID != PROC_DUNGEON_WARP && + (field_0x2f8c == 1 || field_0x2f8c == 3)) { - mPolySound = dKy_pol_sound_get(&mLinkAcch.m_wtr); - } else if (checkEndResetFlg0(ERFLG0_UNK_200000)) { - mPolySound = 11; + setStepsOffset(); } else { - mPolySound = dKy_pol_sound_get(&mLinkAcch.m_gnd); + field_0x2b9c = 0.0f; + if (!checkModeFlg(MODE_SWIMMING)) { + field_0x2b98 = 0.0f; + } } - field_0x2ff0 = getGroundAngle(&mLinkAcch.m_gnd, shape_angle.y); - } else { - if (mProcID == PROC_TOOL_DEMO || mProcID == PROC_GANON_FINISH) { - if (checkNoResetFlg0(FLG0_UNK_80) && mWaterY >= mLinkAcch.GetGroundH()) { + if (checkModeFlg(MODE_UNK_2000000)) { + setShapeAngleOnGround(); + } + + if (!checkRestartRoom() && !checkDeadHP()) { + checkSceneChange(dComIfG_Bgsp().GetExitId(mLinkAcch.m_gnd)); + } + + if (mLinkAcch.ChkGroundHit()) { + if (dComIfG_Bgsp().ChkMoveBG(mLinkAcch.m_gnd)) { + dComIfG_Bgsp().MoveBgTransPos(mLinkAcch.m_gnd, true, &field_0x34ec, NULL, NULL); + } + + if (checkNoResetFlg0(FLG0_UNK_80) && !checkNoResetFlg0(FLG0_UNDERWATER) && + mWaterY >= mLinkAcch.GetGroundH()) + { mPolySound = dKy_pol_sound_get(&mLinkAcch.m_wtr); } else if (checkEndResetFlg0(ERFLG0_UNK_200000)) { mPolySound = 11; } else { mPolySound = dKy_pol_sound_get(&mLinkAcch.m_gnd); } - } else if (checkModeFlg(MODE_SWIMMING) && checkNoResetFlg0(FLG0_UNK_80)) { + + field_0x2ff0 = getGroundAngle(&mLinkAcch.m_gnd, shape_angle.y); + } else { + if (mProcID == PROC_TOOL_DEMO || mProcID == PROC_GANON_FINISH) { + if (checkNoResetFlg0(FLG0_UNK_80) && mWaterY >= mLinkAcch.GetGroundH()) { + mPolySound = dKy_pol_sound_get(&mLinkAcch.m_wtr); + } else if (checkEndResetFlg0(ERFLG0_UNK_200000)) { + mPolySound = 11; + } else { + mPolySound = dKy_pol_sound_get(&mLinkAcch.m_gnd); + } + } else if (checkModeFlg(MODE_SWIMMING) && checkNoResetFlg0(FLG0_UNK_80)) { + mPolySound = dKy_pol_sound_get(&mLinkAcch.m_wtr); + } else { + mPolySound = 0; + } + + field_0x2ff0 = 0; + } + mDoAud_setLinkGroupInfo(dComIfG_Bgsp().GetGrpSoundId(mLinkAcch.m_gnd)); + } else { + field_0x3174 = -1; + field_0x2ff0 = 0; + field_0x2fbb = 16; + field_0x2fbd = 0; + field_0x2fa8 = 0; + + if (checkModeFlg(MODE_SWIMMING) && dComIfG_Bgsp().ChkPolySafe(mLinkAcch.m_wtr)) { mPolySound = dKy_pol_sound_get(&mLinkAcch.m_wtr); } else { mPolySound = 0; } - field_0x2ff0 = 0; - } - mDoAud_setLinkGroupInfo(dComIfG_Bgsp().GetGrpSoundId(mLinkAcch.m_gnd)); - } else { - field_0x3174 = -1; - field_0x2ff0 = 0; - field_0x2fbb = 16; - field_0x2fbd = 0; - field_0x2fa8 = 0; - - if (checkModeFlg(MODE_SWIMMING) && dComIfG_Bgsp().ChkPolySafe(mLinkAcch.m_wtr)) { - mPolySound = dKy_pol_sound_get(&mLinkAcch.m_wtr); - } else { - mPolySound = 0; - } - - if (!checkRestartRoom() && !checkDeadHP()) { - checkSceneChange(0x3F); - } - } - - if (checkMagneBootsOn()) { - field_0x2fbd = 0; - field_0x2f5c.mPosition = current.pos; - field_0x2f5c.mPow = 100.0f; - - if (checkNoResetFlg0(FLG0_UNK_2000)) { - mPolySound = dKy_pol_sound_get(&mMagneLineChk); - field_0x2ff0 = 0; - field_0x3174 = dComIfG_Bgsp().GetGroundCode(mMagneLineChk); - field_0x2fbb = dComIfG_Bgsp().GetPolyAtt0(mMagneLineChk); - field_0x2fa8 = dComIfG_Bgsp().GetSpecialCode(mMagneLineChk); - setMagneBootsMtx(&mMagneLineChk, 0); - } else { - mPolySound = 0; - field_0x2ff0 = 0; - field_0x3174 = -1; - field_0x2fbb = 16; - field_0x2fa8 = 0; - } - } else { - field_0x2f5c.mPow = 0.0f; - if (mProcID != PROC_MAGNE_BOOTS_FLY) { - mMagneBootsTopVec = cXyz::BaseY; - } - } - - if (dComIfGp_evmng_startCheck(l_peepEventName)) { - if (field_0x2ff2 > 0) { - field_0x2ff2--; - } else if (dComIfGp_evmng_startCheck(l_peepEventName)) { - startPeepChange(); - } - } - - if (checkModeFlg(MODE_VINE_CLIMB) && mProcVar2.field_0x300c != 0 && - dComIfG_Bgsp().ChkPolySafe(mPolyInfo1)) - { - mZ2Link.framework(dKy_pol_sound_get(&mPolyInfo1), mVoiceReverbIntensity); - } else { - mZ2Link.framework(mPolySound, mVoiceReverbIntensity); - } - - if (field_0x2d7c != NULL) { - mZ2Link.updateAnime(field_0x2d7c->getFrame(), field_0x2d7c->getRate()); - } - - if (mProcID != PROC_DAMAGE && mProcID != PROC_SWIM_DAMAGE && mProcID != PROC_HORSE_DAMAGE) { - setMoveSlantAngle(); - - if (checkReinRide() && checkUpperGuardAnime()) { - setBodyAngleRideReadyAnime(); - } else if (!checkSmallUpperGuardAnime() && !checkWolf()) { - if (!checkModeFlg(MODE_UNK_20000000)) { - if (checkUpperGuardAnime()) { - setBodyAngleXReadyAnime(0); - } else if (!checkUpperReadyThrowAnime()) { - cLib_addCalcAngleS(&mBodyAngle.x, 0, 4, 0x0C00, 0x0180); - } - } - - if (!checkModeFlg(MODE_UNK_40000000)) { - cLib_addCalcAngleS(&mBodyAngle.y, 0, 4, 0x0C00, 0x0180); + if (!checkRestartRoom() && !checkDeadHP()) { + checkSceneChange(0x3F); } } - } - setMatrix(); - setNeckAngle(); + if (checkMagneBootsOn()) { + field_0x2fbd = 0; + field_0x2f5c.mPosition = current.pos; + field_0x2f5c.mPow = 100.0f; - if (field_0x2fcc != 0) { - field_0x2fcc--; - } - - if (!checkWolf()) { - setHatAngle(); - - if (field_0x2fb0 != 0) { - field_0x2fb0--; + if (checkNoResetFlg0(FLG0_UNK_2000)) { + mPolySound = dKy_pol_sound_get(&mMagneLineChk); + field_0x2ff0 = 0; + field_0x3174 = dComIfG_Bgsp().GetGroundCode(mMagneLineChk); + field_0x2fbb = dComIfG_Bgsp().GetPolyAtt0(mMagneLineChk); + field_0x2fa8 = dComIfG_Bgsp().GetSpecialCode(mMagneLineChk); + setMagneBootsMtx(&mMagneLineChk, 0); + } else { + mPolySound = 0; + field_0x2ff0 = 0; + field_0x3174 = -1; + field_0x2fbb = 16; + field_0x2fa8 = 0; + } + } else { + field_0x2f5c.mPow = 0.0f; + if (mProcID != PROC_MAGNE_BOOTS_FLY) { + mMagneBootsTopVec = cXyz::BaseY; + } } - footBgCheck(); - handBgCheck(); + if (dComIfGp_evmng_startCheck(l_peepEventName)) { + if (field_0x2ff2 > 0) { + field_0x2ff2--; + } else if (dComIfGp_evmng_startCheck(l_peepEventName)) { + startPeepChange(); + } + } - field_0x30c8 = mBodyAngle.y >> 1; - modelCalc(mpLinkModel); + if (checkModeFlg(MODE_VINE_CLIMB) && mProcVar2.field_0x300c != 0 && + dComIfG_Bgsp().ChkPolySafe(mPolyInfo1)) + { + mZ2Link.framework(dKy_pol_sound_get(&mPolyInfo1), mVoiceReverbIntensity); + } else { + mZ2Link.framework(mPolySound, mVoiceReverbIntensity); + } - if (field_0x2fcb != 0) { - if (checkWoodShieldEquip() && mWaterY < mShieldModel->getBaseTRMtx()[1][3]) { - field_0x2fcb--; + if (field_0x2d7c != NULL) { + mZ2Link.updateAnime(field_0x2d7c->getFrame(), field_0x2d7c->getRate()); + } - if (field_0x2fcb == 0) { - dMeter2Info_setShield(NO_ITEM, true); - stickArrowIncrement(1); - setWoodShieldBurnOutEffect(); + if (mProcID != PROC_DAMAGE && mProcID != PROC_SWIM_DAMAGE && mProcID != PROC_HORSE_DAMAGE) { + setMoveSlantAngle(); - // "Your shield burned up..." - dMeter2Info_setFloatingMessage(2047, 90, false); - - stage_stag_info_class* pstag = dComIfGp_getStage()->getStagInfo(); - if (dStage_stagInfo_GetSaveTbl(pstag) == 0x11 && - !dComIfGs_isItemFirstBit(HYLIA_SHIELD)) - { - fopAcM_onSwitch(this, 0x6F); + if (checkReinRide() && checkUpperGuardAnime()) { + setBodyAngleRideReadyAnime(); + } else if (!checkSmallUpperGuardAnime() && !checkWolf()) { + if (!checkModeFlg(MODE_UNK_20000000)) { + if (checkUpperGuardAnime()) { + setBodyAngleXReadyAnime(0); + } else if (!checkUpperReadyThrowAnime()) { + cLib_addCalcAngleS(&mBodyAngle.x, 0, 4, 0x0C00, 0x0180); } - seStartOnlyReverb(Z2SE_AL_WOOD_SHIELD_BURN); } - } else { - clearWoodShieldBurnEffect(); + + if (!checkModeFlg(MODE_UNK_40000000)) { + cLib_addCalcAngleS(&mBodyAngle.y, 0, 4, 0x0C00, 0x0180); + } } } - if (checkShieldGet() && !checkWoodShieldEquip()) { - stickArrowIncrement(1); + setMatrix(); + setNeckAngle(); + + if (field_0x2fcc != 0) { + field_0x2fcc--; } - setItemMatrix(0); - } else { - daMidna_c* pmidna = getMidnaActor(); - - if (mClothesChangeWaitTimer == 0) { - if ((pmidna->checkMidnaTired() || pmidna->checkForceTiredColor()) && - !pmidna->checkForceNormalColor()) - { - mpWlMidnaModel->getModelData()->entryTevRegAnimator(mpDMidnaBrk); - mpWlMidnaMaskModel->getModelData()->entryTevRegAnimator(mpDMidnaMaskBrk); - mpWlMidnaHandModel->getModelData()->entryTevRegAnimator(mpDMidnaHandBrk); - mpWlMidnaHairModel->getModelData()->entryTevRegAnimator(mpDMidnaHairHandBrk); - } else { - mpWlMidnaModel->getModelData()->removeTevRegAnimator(mpDMidnaBrk); - mpWlMidnaMaskModel->getModelData()->removeTevRegAnimator(mpDMidnaMaskBrk); - mpWlMidnaHandModel->getModelData()->removeTevRegAnimator(mpDMidnaHandBrk); - mpWlMidnaHairModel->getModelData()->removeTevRegAnimator(mpDMidnaHairHandBrk); - } - } - - wolfFootBgCheck(); - setWolfTailAngle(); - modelCalc(mpLinkModel); - checkWolfUseAbility(); - - if (checkWolfEyeUp() != 0) { - mWolfEyeUpTimer++; - if (mWolfEyeUpTimer > 30) { - mWolfEyeUpTimer = 30; - } - } else if (mWolfEyeUpTimer != 0) { - mWolfEyeUpTimer--; - } - - setWolfItemMatrix(); - } - - if (checkFmChainGrabAnime()) { - mNowAnmPackUpper[2].setRatio(1.0f); - } - - setBodyPartPos(); - - if (!checkWolf() && checkEndResetFlg0(ERFLG0_UNK_800000)) { - setHatAngle(); - modelCalc(mpLinkModel); - } - - setHangWaterY(); - setCollision(); - setAttentionPos(); - setLight(); - setEffect(); - - if (mClothesChangeWaitTimer != 0) { - mDoMtx_stack_c::copy(mpLinkModel->getBaseTRMtx()); if (!checkWolf()) { - mDoMtx_stack_c::transM(0.0f, 0.0f, 30.0f); + setHatAngle(); + + if (field_0x2fb0 != 0) { + field_0x2fb0--; + } + + footBgCheck(); + handBgCheck(); + + field_0x30c8 = mBodyAngle.y >> 1; + modelCalc(mpLinkModel); + + if (field_0x2fcb != 0) { + if (checkWoodShieldEquip() && mWaterY < mShieldModel->getBaseTRMtx()[1][3]) { + field_0x2fcb--; + + if (field_0x2fcb == 0) { + dMeter2Info_setShield(NO_ITEM, true); + stickArrowIncrement(1); + setWoodShieldBurnOutEffect(); + + // "Your shield burned up..." + dMeter2Info_setFloatingMessage(2047, 90, false); + + stage_stag_info_class* pstag = dComIfGp_getStage()->getStagInfo(); + if (dStage_stagInfo_GetSaveTbl(pstag) == 0x11 && + !dComIfGs_isItemFirstBit(HYLIA_SHIELD)) + { + fopAcM_onSwitch(this, 0x6F); + } + seStartOnlyReverb(Z2SE_AL_WOOD_SHIELD_BURN); + } + } else { + clearWoodShieldBurnEffect(); + } + } + + if (checkShieldGet() && !checkWoodShieldEquip()) { + stickArrowIncrement(1); + } + setItemMatrix(0); + } else { + daMidna_c* pmidna = (daMidna_c*)getMidnaActor(); + + if (mClothesChangeWaitTimer == 0) { + if ((pmidna->checkMidnaTired() || pmidna->checkForceTiredColor()) && + !pmidna->checkForceNormalColor()) + { + mpWlMidnaModel->getModelData()->entryTevRegAnimator(mpDMidnaBrk); + mpWlMidnaMaskModel->getModelData()->entryTevRegAnimator(mpDMidnaMaskBrk); + mpWlMidnaHandModel->getModelData()->entryTevRegAnimator(mpDMidnaHandBrk); + mpWlMidnaHairModel->getModelData()->entryTevRegAnimator(mpDMidnaHairHandBrk); + } else { + mpWlMidnaModel->getModelData()->removeTevRegAnimator(mpDMidnaBrk); + mpWlMidnaMaskModel->getModelData()->removeTevRegAnimator(mpDMidnaMaskBrk); + mpWlMidnaHandModel->getModelData()->removeTevRegAnimator(mpDMidnaHandBrk); + mpWlMidnaHairModel->getModelData()->removeTevRegAnimator(mpDMidnaHairHandBrk); + } + } + + wolfFootBgCheck(); + setWolfTailAngle(); + modelCalc(mpLinkModel); + checkWolfUseAbility(); + + if (checkWolfEyeUp() != 0) { + mWolfEyeUpTimer++; + if (mWolfEyeUpTimer > 30) { + mWolfEyeUpTimer = 30; + } + } else if (mWolfEyeUpTimer != 0) { + mWolfEyeUpTimer--; + } + + setWolfItemMatrix(); } - mpWlChangeModel->setBaseTRMtx(mDoMtx_stack_c::get()); - mpWlChangeModel->calc(); - } + if (checkFmChainGrabAnime()) { + mNowAnmPackUpper[2].setRatio(1.0f); + } - mSight.mLockCursor.update(); - setGrabItemPos(); + setBodyPartPos(); - checkRoofRestart(); - mExitID = 0x3F; - mpScnChg = NULL; + if (!checkWolf() && checkEndResetFlg0(ERFLG0_UNK_800000)) { + setHatAngle(); + modelCalc(mpLinkModel); + } - cMtx_multVec(mpLinkModel->getAnmMtx(0), &localBoomCatchPos, &field_0x3534); + setHangWaterY(); + setCollision(); + setAttentionPos(); + setLight(); + setEffect(); - if (checkResetFlg0(RFLG0_UNK_10)) { - mZ2Link.setResumeAttack(true); - } else { - mZ2Link.setResumeAttack(false); - } + if (mClothesChangeWaitTimer != 0) { + mDoMtx_stack_c::copy(mpLinkModel->getBaseTRMtx()); - if (!checkEventRun() && checkNoResetFlg0(FLG0_UNK_80) && - (mWaterY > current.pos.y + 40.0f || checkModeFlg(MODE_SWIMMING)) && - getMoveBGActorName(mLinkAcch.m_wtr, TRUE) == PROC_Obj_Onsen) - { - if (mHotspringRecoverTimer != 0) { - mHotspringRecoverTimer--; + if (!checkWolf()) { + mDoMtx_stack_c::transM(0.0f, 0.0f, 30.0f); + } + + mpWlChangeModel->setBaseTRMtx(mDoMtx_stack_c::get()); + mpWlChangeModel->calc(); + } + + mSight.mLockCursor.update(); + setGrabItemPos(); + + checkRoofRestart(); + mExitID = 0x3F; + mpScnChg = NULL; + + static Vec const localBoomCatchPos = {18.7f, 146.3f, 69.2f}; + cMtx_multVec(mpLinkModel->getAnmMtx(0), &localBoomCatchPos, &field_0x3534); + + if (checkResetFlg0(RFLG0_UNK_10)) { + mZ2Link.setResumeAttack(true); + } else { + mZ2Link.setResumeAttack(false); + } + + if (!checkEventRun() && checkNoResetFlg0(FLG0_UNK_80) && + (mWaterY > current.pos.y + 40.0f || checkModeFlg(MODE_SWIMMING)) && + getMoveBGActorName(mLinkAcch.m_wtr, TRUE) == PROC_Obj_Onsen) + { + if (mHotspringRecoverTimer != 0) { + mHotspringRecoverTimer--; + } else { + mHotspringRecoverTimer = daAlinkHIO_basic_c0::m.mHotspringRecoverTime; + dComIfGp_setItemLifeCount(1.0f, 1); + } } else { mHotspringRecoverTimer = daAlinkHIO_basic_c0::m.mHotspringRecoverTime; - dComIfGp_setItemLifeCount(1.0f, 1); - } - } else { - mHotspringRecoverTimer = daAlinkHIO_basic_c0::m.mHotspringRecoverTime; - } - - if ((checkAttentionLock() || !checkUpperReadyThrowAnime()) && - mProcID != PROC_HOOKSHOT_WALL_SHOOT && mProcID != PROC_HOOKSHOT_ROOF_SHOOT) - { - mFastShotTime = 0; - } - - if (checkDeadHP()) { - eventInfo.offCondition(fopAcCnd_NOEXEC_e); - } else if (!checkMagneBootsOn()) { - f32 var_f31_2; - if (mLinkAcch.ChkGroundHit()) { - cM3dGPla plane; - dComIfG_Bgsp().GetTriPla(mLinkAcch.m_gnd, &plane); - var_f31_2 = plane.mNormal.y; - } else { - var_f31_2 = -1.0f; } - if (cBgW_CheckBGround(var_f31_2) && !checkModeFlg(MODE_PLAYER_FLY)) { - eventInfo.onCondition(0x5D); - } else if (checkModeFlg(MODE_SWIMMING) || mProcID == PROC_WOLF_ROPE_MOVE || - ((checkReinRide() || checkCanoeRide() || checkSpinnerRide()) && - !checkNoResetFlg3(FLG3_UNK_80000) && !checkModeFlg(MODE_JUMP))) + if (checkAttentionLock() || (!checkUpperReadyThrowAnime() && + mProcID != PROC_HOOKSHOT_WALL_SHOOT && mProcID != PROC_HOOKSHOT_ROOF_SHOOT)) { + mFastShotTime = 0; + } + + if (checkDeadHP()) { + eventInfo.offCondition(fopAcCnd_NOEXEC_e); + } else if (!checkMagneBootsOn()) { + f32 var_f31_2; + if (mLinkAcch.ChkGroundHit()) { + cM3dGPla plane; + dComIfG_Bgsp().GetTriPla(mLinkAcch.m_gnd, &plane); + var_f31_2 = plane.mNormal.y; + } else { + var_f31_2 = -1.0f; + } + + if (cBgW_CheckBGround(var_f31_2) && !checkModeFlg(MODE_PLAYER_FLY)) { + eventInfo.onCondition(0x5D); + } else if (checkModeFlg(MODE_SWIMMING) || mProcID == PROC_WOLF_ROPE_MOVE || + ((checkReinRide() || checkCanoeRide() || checkSpinnerRide()) && + !checkNoResetFlg3(FLG3_UNK_80000) && !checkModeFlg(MODE_JUMP))) + { + eventInfo.onCondition(dEvtCnd_CANTALK_e); + if (checkReinRide() || checkCanoeRide()) { + eventInfo.onCondition(dEvtCnd_CANGETITEM_e); + } + } + } else if (checkMagneBootsOn() && cBgW_CheckBGround(mMagneBootsTopVec.y)) { eventInfo.onCondition(dEvtCnd_CANTALK_e); - if (checkReinRide() || checkCanoeRide()) { - eventInfo.onCondition(dEvtCnd_CANGETITEM_e); - } } - } else if (checkMagneBootsOn() && cBgW_CheckBGround(mMagneBootsTopVec.y)) { - eventInfo.onCondition(dEvtCnd_CANTALK_e); - } - if (checkEndResetFlg1(ERFLG1_UNK_40000) && checkMidnaRide() && checkWolf()) { - getMidnaActor()->onForcePanic(); - } + if (checkEndResetFlg1(ERFLG1_UNK_40000) && checkMidnaRide() && checkWolf()) { + getMidnaActor()->onForcePanic(); + } - field_0x30fe = 0; - field_0x372c = cXyz::Zero; - field_0x2fb8 = 0; + field_0x30fe = 0; + field_0x372c = cXyz::Zero; + field_0x2fb8 = 0; - if (checkMagicArmorWearAbility() && mClothesChangeWaitTimer == 0) { - if (checkMagicArmorNoDamage() && !checkEventRun()) { - if (field_0x2fc3 == 0) { - field_0x2fc3 = 10; - dComIfGp_setItemRupeeCount(-1); - } else { - field_0x2fc3--; + if (checkMagicArmorWearAbility() && mClothesChangeWaitTimer == 0) { + if (checkMagicArmorNoDamage() && !checkEventRun()) { + if (field_0x2fc3 == 0) { + field_0x2fc3 = 10; + dComIfGp_setItemRupeeCount(-1); + } else { + field_0x2fc3--; + } + } + + if (dComIfGs_getRupee() == 0 && field_0x2fd7 != 0) { + setMagicArmorBrk(0); + seStartOnlyReverb(Z2SE_AL_M_ARMER_TURNOFF); + mZ2Link.setLinkState(5); + } else if (dComIfGs_getRupee() != 0 && field_0x2fd7 == 0) { + setMagicArmorBrk(1); + seStartOnlyReverb(Z2SE_AL_M_ARMER_RECOVER); + mZ2Link.setLinkState(4); } } - if (dComIfGs_getRupee() == 0 && field_0x2fd7 != 0) { - setMagicArmorBrk(0); - seStartOnlyReverb(Z2SE_AL_M_ARMER_TURNOFF); - mZ2Link.setLinkState(5); - } else if (dComIfGs_getRupee() == 0 && field_0x2fd7 == 0) { - setMagicArmorBrk(1); - seStartOnlyReverb(Z2SE_AL_M_ARMER_RECOVER); - mZ2Link.setLinkState(4); + if (!checkWolf()) { + for (u8 i = 0; i < 2; i++) { + u8 tmp = (i + 1) % 2; + if (dComIfGp_getSelectItem(i) == EMPTY_BOTTLE && (field_0x2fae & (1 << i)) && + dComIfGp_getSelectItem(tmp) == EMPTY_BOTTLE) + { + field_0x2fae |= (u8)(1 << tmp); + } + } } - } - if (!checkWolf()) { for (int i = 0; i < 2; i++) { - u8 tmp = (i + 1) & 1; - if (dComIfGp_getSelectItem(i) == EMPTY_BOTTLE && (field_0x2fae & (1 << i)) && - dComIfGp_getSelectItem(tmp) == EMPTY_BOTTLE) - { - field_0x2fae |= (1 << tmp); + if (!(field_0x2fae & (1 << i)) && !(field_0x2faf & (1 << i))) { + dMeter2Info_offUseButton(4 << i); } } - } - for (int i = 0; i < 2; i++) { - if (!(field_0x2fae & (1 << i)) && !(field_0x2faf & (1 << i))) { - dMeter2Info_offUseButton(4 << i); + if (!(field_0x2fae & 0x40) && !(field_0x2faf & 0x40)) { + dMeter2Info_offUseButton(0x40); } - } - if (!(field_0x2fae & 0x40) && !(field_0x2faf & 0x40)) { - dMeter2Info_offUseButton(0x40); - } - - if (!(field_0x2fae & 0x8) && !(field_0x2faf & 0x8)) { - dMeter2Info_offUseButton(2); - if (getSumouMode()) { - dMeter2Info_offUseButton(1); + if (!(field_0x2fae & 0x8) && !(field_0x2faf & 0x8)) { + dMeter2Info_offUseButton(2); + if (getSumouMode()) { + dMeter2Info_offUseButton(1); + } } - } - field_0x2faf = field_0x2fae; + field_0x2faf = field_0x2fae; - for (int i = 0; i < 4; i++) { - cXyz tmp(current.pos.x + 500.0f, current.pos.y + 500.0f, current.pos.z + 500.0f); - if (i != field_0x2fa3 - 1) { - field_0x354c[i] = tmp; + for (int i = 0; i < 4; i++) { + cXyz tmp(current.pos.x + 500.0f, current.pos.y + 500.0f, current.pos.z + 500.0f); + if (i != field_0x2fa3 - 1) { + field_0x354c[i] = tmp; + } } - } - if (checkEventRun()) { - if (mProcID != PROC_GRASS_WHISTLE_WAIT) { - setDoStatus(0); - } - setRStatus(0); - } else if (dComIfGp_getDoStatus() == 0x86 || dComIfGp_getDoStatus() == 0x8B) { - setDoStatus(3); - } else if (dComIfGp_getDoStatus() == 0x89) { - setDoStatus(8); - } else if (dComIfGp_getDoStatus() == 0x93) { - setDoStatusEmphasys(0x19); - } else if (dComIfGp_getDoStatus() == 0x8E) { - setDoStatusEmphasys(0x15); - } else { - if (dComIfGp_getDoStatus() == 0x8C) { - setDoStatus(0); - } else if (checkStageName("F_SP127") && checkCanoeRide() && dComIfGp_getDoStatus() == 4) { - setDoStatus(0); - } else if (dComIfGp_getDoStatus() == 0x90) { - setDoStatus(0); - } else if (dComIfGp_getDoStatus() == 0x98) { - setDoStatusEmphasys(0x39); - } else if (dComIfGp_getDoStatus() == 0x99) { - setDoStatusEmphasys(0x15); - } else if (dComIfGp_getDoStatus() == 0x91) { - if (checkWolf() || - (field_0x27f4 != NULL && - (field_0x27f4->speedF > 0.1f || - (checkGoatCatchActor(field_0x27f4) && fopAcM_GetName(field_0x27f4) != PROC_COW)))) - { - setDoStatusEmphasys(0x15); - } else { + if (checkEventRun()) { + if (mProcID != PROC_GRASS_WHISTLE_WAIT) { setDoStatus(0); } - } else if (dComIfGp_getDoStatus() == 0x97) { - if (current.pos.y + 200.0f < mWaterY) { - setDoStatus(0x4C); - } else { - setDoStatus(0); - } - } else if (dComIfGp_getDoStatus() == 0x19 && dComIfGp_getHorseActor() != NULL && - dComIfGp_getHorseActor()->getZeldaActor() != NULL) - { - setDoStatus(0x19); - } else if (dComIfGp_getDoStatus() == 5 && field_0x27f4 != NULL && - (fopAcM_GetName(field_0x27f4) == PROC_Obj_WindStone || - fopAcM_GetName(field_0x27f4) == PROC_Obj_SmWStone)) - { - setDoStatusEmphasys(0x3B); - } else if (dComIfGp_getDoStatus() == 0x14) { - if (checkEndResetFlg1(ERFLG1_UNK_4000000)) { - setDoStatusEmphasys(0x61); - } else if (checkEndResetFlg1(ERFLG1_UNK_10000000)) { - setDoStatusEmphasys(0x14); - } - } - - int grab_status = getWallGrabStatus(); - if (checkWolf()) { - if (grab_status == 0x15) { - setWallGrabStatus(0x3F, 2); - } else if (grab_status == 0x96) { - setWallGrabStatus(0xC, checkChainEmphasys()); - } + setRStatus(0); } else { - if (grab_status == 0x96) { - setWallGrabStatus(0x15, checkChainEmphasys()); + if (dComIfGp_getDoStatus() == 0x86 || dComIfGp_getDoStatus() == 0x8B) { + setDoStatus(3); + } else if (dComIfGp_getDoStatus() == 0x89) { + setDoStatus(8); + } else if (dComIfGp_getDoStatus() == 0x93) { + setDoStatusEmphasys(0x19); + } else if (dComIfGp_getDoStatus() == 0x8E) { + setDoStatusEmphasys(0x15); + } else if (dComIfGp_getDoStatus() == 0x8C) { + setDoStatus(0); + } else if (checkStageName("F_SP127") && checkCanoeRide() && dComIfGp_getDoStatus() == 4) { + setDoStatus(0); + } else if (dComIfGp_getDoStatus() == 0x90) { + setDoStatus(0); + } else if (dComIfGp_getDoStatus() == 0x98) { + setDoStatusEmphasys(0x39); + } else if (dComIfGp_getDoStatus() == 0x99) { + setDoStatusEmphasys(0x15); + } else if (dComIfGp_getDoStatus() == 0x91) { + if (checkWolf() || + (field_0x27f4 != NULL && + (field_0x27f4->speedF > 0.1f || + (checkGoatCatchActor(field_0x27f4) && fopAcM_GetName(field_0x27f4) != PROC_COW)))) + { + setDoStatusEmphasys(0x15); + } else { + setDoStatus(0); + } + } else if (dComIfGp_getDoStatus() == 0x97) { + if (current.pos.y + 200.0f < mWaterY) { + setDoStatus(0x4C); + } else { + setDoStatus(0); + } + } else if (dComIfGp_getDoStatus() == 0x19 && dComIfGp_getHorseActor() != NULL && + dComIfGp_getHorseActor()->getZeldaActor() != NULL) + { + setDoStatus(0x19); + } else if (dComIfGp_getDoStatus() == 5 && field_0x27f4 != NULL && + (fopAcM_GetName(field_0x27f4) == PROC_Obj_WindStone || + fopAcM_GetName(field_0x27f4) == PROC_Obj_SmWStone)) + { + setDoStatusEmphasys(0x3B); + } else if (dComIfGp_getDoStatus() == 0x14) { + if (checkEndResetFlg1(ERFLG1_UNK_4000000)) { + setDoStatusEmphasys(0x61); + } else if (checkEndResetFlg1(ERFLG1_UNK_10000000)) { + setDoStatusEmphasys(0x14); + } } - if (dComIfGp_getRStatus() == 0x3A && checkShieldAttackEmphasys() == 0) { - setRStatus(0); + int grab_status = getWallGrabStatus(); + if (checkWolf()) { + if (grab_status == 0x15) { + setWallGrabStatus(0x3F, 2); + } else if (grab_status == 0x96) { + setWallGrabStatus(0xC, checkChainEmphasys()); + } + } else { + if (grab_status == 0x96) { + setWallGrabStatus(0x15, checkChainEmphasys()); + } + + if (dComIfGp_getRStatus() == 0x3A && checkShieldAttackEmphasys() == 0) { + setRStatus(0); + } } } - } - mDoAud_setLinkHp(dComIfGs_getLife(), dComIfGs_getMaxLifeGauge()); + mDoAud_setLinkHp(dComIfGs_getLife(), dComIfGs_getMaxLifeGauge()); + } if (dComIfGp_att_getCatghTarget() != NULL && !checkWolf()) { - if (checkRideOn() && checkCastleTownUseItem(EMPTY_BOTTLE)) { + if (!checkRideOn() && checkCastleTownUseItem(EMPTY_BOTTLE)) { dComIfGp_setBottleStatus(0x6C, 0); } } @@ -3318,11 +3281,6 @@ int daAlink_c::execute() { return 1; } -#else -int daAlink_c::execute() { - // NONMATCHING -} -#endif /* 800CAFA8-800CAFC8 0C58E8 0020+00 1/0 0/0 0/0 .text daAlink_Execute__FP9daAlink_c */ static int daAlink_Execute(daAlink_c* i_this) { @@ -4050,18 +4008,41 @@ int daAlink_c::procCoSwimSubjectivityInit() { /* 800CF018-800CF100 0C9958 00E8+00 1/0 0/0 0/0 .text procCoSwimSubjectivity__9daAlink_cFv */ int daAlink_c::procCoSwimSubjectivity() { // NONMATCHING + onResetFlg0(RFLG0_UNK_4000000); + setTalkStatus(); + + if (orderTalk(1)) { + return 1; + } + + if (checkNoResetFlg0(FLG0_SWIM_UP)) { + setSwimUpDownOffset(); + } + + if (checkSubjectEnd(0)) { + seStartSystem(Z2SE_SUBJ_VIEW_OUT); + + if (checkWolf()) { + procWolfSwimWaitInit(0); + } else { + procSwimWaitInit(0); + } + } else { + setBodyAngleToCamera(); + } + + return 1; } /* 800CF100-800CF1B8 0C9A40 00B8+00 1/1 0/0 0/0 .text procCoPeepSubjectivityInit__9daAlink_cFv */ int daAlink_c::procCoPeepSubjectivityInit() { commonProcInit(PROC_PEEP_SUBJECTIVITY); - f32 tmp_0 = 0.0f; - mNormalSpeed = tmp_0; + mNormalSpeed = 0.0f; if (checkWolf()) { - setSingleAnimeWolfBaseSpeed(WANM_WAIT, tmp_0, 3.0f); + setSingleAnimeWolfBaseSpeed(WANM_WAIT, 0.0f, 3.0f); } else { - setSingleAnimeBaseSpeed(ANM_WAIT, tmp_0, 3.0f); + setSingleAnimeBaseSpeed(ANM_WAIT, 0.0f, 3.0f); } onPlayerNoDraw(); diff --git a/src/d/actor/d_a_myna.cpp b/src/d/actor/d_a_myna.cpp index b56785610d..15a6e55cc3 100644 --- a/src/d/actor/d_a_myna.cpp +++ b/src/d/actor/d_a_myna.cpp @@ -1733,7 +1733,7 @@ void daMyna_c::attack2_talk_move() { } /* 809487EC-80948828 002C6C 003C+00 0/0 0/0 2/2 .text soldoutItem__8daMyna_cFUi */ -void daMyna_c::soldoutItem(unsigned int i_itemId) { +void daMyna_c::soldoutItem(fpc_ProcID i_itemId) { for (int i = 0; i < mNumShopItems; i++) { if (i_itemId == mShopItems[i].mTargetActorID) { mShopItems[i].mItemStatus = 3; @@ -1968,7 +1968,7 @@ void daMyna_c::deleteItem(int i_itemIndex) { /* 80949144-80949190 0035C4 004C+00 0/0 0/0 0/0 .text deleteItem__8daMyna_cFUi */ // Nonmatching, no clue what's going on here #ifdef NONMATCHING -void daMyna_c::deleteItem(unsigned int i_itemId) { +void daMyna_c::deleteItem(fpc_ProcID i_itemId) { for (int i = 0; i < mNumShopItems; i++) { if (i_itemId == mShopItems[i].mTargetActorID) { mShopItems[i].mTargetActorID = -1; @@ -1977,7 +1977,7 @@ void daMyna_c::deleteItem(unsigned int i_itemId) { } } #else -void daMyna_c::deleteItem(unsigned int param_0) { +void daMyna_c::deleteItem(fpc_ProcID param_0) { // NONMATCHING } #endif @@ -2884,4 +2884,4 @@ static u8 data_8094BB2C[4]; static u8 data_8094BB30[4]; #pragma pop -/* 8094B24C-8094B24C 00009C 0000+00 0/0 0/0 0/0 .rodata @stringBase0 */ \ No newline at end of file +/* 8094B24C-8094B24C 00009C 0000+00 0/0 0/0 0/0 .rodata @stringBase0 */ diff --git a/src/d/d_bg_s.cpp b/src/d/d_bg_s.cpp index b24727deec..139e15393c 100644 --- a/src/d/d_bg_s.cpp +++ b/src/d/d_bg_s.cpp @@ -18,7 +18,7 @@ void cBgS_ChkElm::Init() { } /* 80074110-80074128 06EA50 0018+00 1/0 0/0 0/0 .text Regist2__11cBgS_ChkElmFP9dBgW_BaseUiPv */ -void cBgS_ChkElm::Regist2(dBgW_Base* p_data, unsigned int actor_id, void* p_actor) { +void cBgS_ChkElm::Regist2(dBgW_Base* p_data, fpc_ProcID actor_id, void* p_actor) { m_used = true; m_bgw_base_ptr = p_data; m_actor_id = actor_id; @@ -38,7 +38,7 @@ void cBgS_ChkElm::Release() { static int l_SetCounter; /* 80074144-80074250 06EA84 010C+00 1/1 0/0 0/0 .text Regist__4cBgSFP9dBgW_BaseUiPv */ -bool cBgS::Regist(dBgW_Base* p_data, unsigned int actor_id, void* p_actor) { +bool cBgS::Regist(dBgW_Base* p_data, fpc_ProcID actor_id, void* p_actor) { if (p_data == NULL) { return true; } else if (p_data->ChkUsed()) { @@ -907,4 +907,4 @@ f32 dBgS_GetNY(cBgS_PolyInfo const& poly) { dComIfG_Bgsp().GetTriPla(poly, &pla); return pla.mNormal.y; -} \ No newline at end of file +} diff --git a/src/d/d_bg_s_acch.cpp b/src/d/d_bg_s_acch.cpp index 9b34d2f813..6f88296b7b 100644 --- a/src/d/d_bg_s_acch.cpp +++ b/src/d/d_bg_s_acch.cpp @@ -589,7 +589,7 @@ f32 dBgS_Acch::GetWallAddY(Vec& param_0) { /* 80077278-80077288 071BB8 0010+00 0/0 2/2 0/0 .text SetNowActorInfo__9dBgS_AcchFiPvUi */ -void dBgS_Acch::SetNowActorInfo(int bg_index, void* param_1, unsigned int param_2) { +void dBgS_Acch::SetNowActorInfo(int bg_index, void* param_1, fpc_ProcID param_2) { m_bg_index = bg_index; field_0x7c = param_1; field_0x80 = param_2; @@ -660,4 +660,4 @@ bool dBgS_Acch::ChkLineDown() { return m_flags & LINE_DOWN; } -#pragma nosyminline on \ No newline at end of file +#pragma nosyminline on diff --git a/src/d/d_camera.cpp b/src/d/d_camera.cpp index 2489c238f8..d4541dcf40 100644 --- a/src/d/d_camera.cpp +++ b/src/d/d_camera.cpp @@ -4294,7 +4294,7 @@ void dCamera_c::ForceLockOn(fopAc_ac_c* param_0) { } /* 80181560-8018159C 17BEA0 003C+00 1/1 0/0 0/0 .text ForceLockOff__9dCamera_cFUi */ -void dCamera_c::ForceLockOff(unsigned int param_0) { +void dCamera_c::ForceLockOff(fpc_ProcID param_0) { // NONMATCHING } @@ -5034,4 +5034,4 @@ extern "C" void checkEndMessage__12daTagMwait_cFv() { // NONMATCHING } -/* 80393F68-80393F68 0205C8 0000+00 0/0 0/0 0/0 .rodata @stringBase0 */ \ No newline at end of file +/* 80393F68-80393F68 0205C8 0000+00 0/0 0/0 0/0 .rodata @stringBase0 */ diff --git a/src/d/d_cc_d.cpp b/src/d/d_cc_d.cpp index f37704a578..102f672064 100644 --- a/src/d/d_cc_d.cpp +++ b/src/d/d_cc_d.cpp @@ -26,7 +26,7 @@ void dCcD_GAtTgCoCommonBase::ct() { } /* 80083678-80083688 07DFB8 0010+00 0/0 2/2 0/0 .text SetHitApid__22dCcD_GAtTgCoCommonBaseFUi */ -void dCcD_GAtTgCoCommonBase::SetHitApid(unsigned int hitApid) { +void dCcD_GAtTgCoCommonBase::SetHitApid(fpc_ProcID hitApid) { mApid = hitApid; mAc = NULL; } @@ -461,4 +461,4 @@ void dCcD_Sph::MoveCAt(cXyz& pos) { cCcD_ShapeAttr* dCcD_Sph::GetShapeAttr() { return this; -} \ No newline at end of file +} diff --git a/src/d/d_com_inf_game.cpp b/src/d/d_com_inf_game.cpp index ff5eb14518..1fded32d65 100644 --- a/src/d/d_com_inf_game.cpp +++ b/src/d/d_com_inf_game.cpp @@ -956,7 +956,7 @@ void dComIfG_inf_c::ct() { play.ct(); mWorldDark = 0; field_0x1ddfa = -1; - field_0x1ddfb = 0; + mPolyDamageOff = false; field_0x1de00 = 0; field_0x1de04 = 0; field_0x1de08 = 0; @@ -2245,12 +2245,12 @@ BOOL dComIfGs_Wolf_Change_Check() { return is_wolf; } -void dComIfGs_PolyDamageOff_Set(s8 param_0) { - g_dComIfG_gameInfo.field_0x1ddfb = param_0; +void dComIfGs_PolyDamageOff_Set(s8 i_setting) { + g_dComIfG_gameInfo.mPolyDamageOff = i_setting; } -u8 dComIfGs_PolyDamageOff_Check() { - return g_dComIfG_gameInfo.field_0x1ddfb; +s8 dComIfGs_PolyDamageOff_Check() { + return g_dComIfG_gameInfo.mPolyDamageOff; } void dComIfGs_shake_kandelaar() { @@ -2370,4 +2370,4 @@ u8 dComIfGs_staffroll_next_go_check() { GXColor g_whiteColor = {255, 255, 255, 255}; /* 8045060C-80450610 00008C 0004+00 0/0 3/3 3/3 .sdata g_saftyWhiteColor */ -GXColor g_saftyWhiteColor = {160, 160, 160, 255}; \ No newline at end of file +GXColor g_saftyWhiteColor = {160, 160, 160, 255}; diff --git a/src/d/d_event.cpp b/src/d/d_event.cpp index 1028ca36e7..2665db02ff 100644 --- a/src/d/d_event.cpp +++ b/src/d/d_event.cpp @@ -1080,7 +1080,7 @@ u32 dEvt_control_c::getPId(void* actor) { } /* 800432EC-8004331C 03DC2C 0030+00 7/7 13/13 16/16 .text convPId__14dEvt_control_cFUi */ -fopAc_ac_c* dEvt_control_c::convPId(unsigned int id) { +fopAc_ac_c* dEvt_control_c::convPId(fpc_ProcID id) { return (fopAc_ac_c*)fopAcIt_Judge(fpcSch_JudgeByID, &id); } @@ -1207,7 +1207,7 @@ void dEvt_control_c::setPtI(void* ptr) { mPtI = getPId(ptr); } -void dEvt_control_c::setPtI_Id(unsigned int id) { +void dEvt_control_c::setPtI_Id(fpc_ProcID id) { mPtI = id; } @@ -1220,4 +1220,4 @@ void dEvt_control_c::setGtItm(u8 itemNo) { } /* 80379DC6-80379DD0 006426 0008+02 0/0 0/0 0/0 .rodata None */ -static char const* const stringBase_80379DC6 = "GIVEMAN"; \ No newline at end of file +static char const* const stringBase_80379DC6 = "GIVEMAN"; diff --git a/src/d/d_gameover.cpp b/src/d/d_gameover.cpp index bc5a920a1b..a758e94b5b 100644 --- a/src/d/d_gameover.cpp +++ b/src/d/d_gameover.cpp @@ -958,7 +958,7 @@ s32 d_GameOver_Create(u8 i_gameoverType) { } /* 8019C008-8019C06C 196948 0064+00 0/0 1/1 0/0 .text d_GameOver_Delete__FRUi */ -bool d_GameOver_Delete(unsigned int& i_id) { +bool d_GameOver_Delete(fpc_ProcID& i_id) { if (i_id != UINT32_MAX) { fopMsgM_Delete(fopMsgM_SearchByID(i_id)); i_id = -1; @@ -996,4 +996,4 @@ extern "C" void __dt__12dMenu_save_cFv() { // NONMATCHING } -/* 80394C28-80394C28 021288 0000+00 0/0 0/0 0/0 .rodata @stringBase0 */ \ No newline at end of file +/* 80394C28-80394C28 021288 0000+00 0/0 0/0 0/0 .rodata @stringBase0 */ diff --git a/src/d/d_kankyo.cpp b/src/d/d_kankyo.cpp index b8e3404251..762f35ae78 100644 --- a/src/d/d_kankyo.cpp +++ b/src/d/d_kankyo.cpp @@ -4888,7 +4888,7 @@ static void dKy_Sound_init() { } /* 801A81C0-801A8474 1A2B00 02B4+00 0/0 5/5 27/27 .text dKy_Sound_set__F4cXyziUii */ -void dKy_Sound_set(cXyz i_pos, int param_1, unsigned int i_actorID, int param_3) { +void dKy_Sound_set(cXyz i_pos, int param_1, fpc_ProcID i_actorID, int param_3) { // NONMATCHING } @@ -6259,4 +6259,4 @@ void dKy_bg_MAxx_proc(void* param_0) { // dScnKy_env_light_c::~dScnKy_env_light_c() { extern "C" void __dt__18dScnKy_env_light_cFv() { // NONMATCHING -} \ No newline at end of file +} diff --git a/src/d/d_msg_object.cpp b/src/d/d_msg_object.cpp index d1c3fd43ac..a0337a8288 100644 --- a/src/d/d_msg_object.cpp +++ b/src/d/d_msg_object.cpp @@ -2888,7 +2888,7 @@ void* dMsgObject_c::getMsgDtPtr() { } /* 80238188-8023819C 232AC8 0014+00 0/0 0/0 1/1 .text setProcessID__12dMsgObject_cFUi */ -void dMsgObject_c::setProcessID(unsigned int id) { +void dMsgObject_c::setProcessID(fpc_ProcID id) { dMsgObject_getMsgObjectClass()->setProcessIDLocal(id); } @@ -3263,4 +3263,4 @@ extern "C" void setActorPos__19jmessage_tReferenceF4cXyz() { // NONMATCHING } -/* 80399660-80399660 025CC0 0000+00 0/0 0/0 0/0 .rodata @stringBase0 */ \ No newline at end of file +/* 80399660-80399660 025CC0 0000+00 0/0 0/0 0/0 .rodata @stringBase0 */ diff --git a/src/d/d_s_room.cpp b/src/d/d_s_room.cpp index a57bada88f..82186dc92f 100644 --- a/src/d/d_s_room.cpp +++ b/src/d/d_s_room.cpp @@ -121,7 +121,7 @@ static int deleteJugge(void* i_obj, void*) { } /* 8025B174-8025B194 255AB4 0020+00 1/1 0/0 0/0 .text isCreatingCallback__FP10create_tagPUi */ -static void* isCreatingCallback(create_tag* param_1, unsigned int* param_2) { +static void* isCreatingCallback(create_tag* param_1, fpc_ProcID* param_2) { void* tagData = param_1->mBase.mpTagData; if (*(*((int**)tagData + 0x11) + 3) == *param_2) { return tagData; @@ -130,7 +130,7 @@ static void* isCreatingCallback(create_tag* param_1, unsigned int* param_2) { } /* 8025B194-8025B1D0 255AD4 003C+00 2/2 0/0 0/0 .text isCreating__FUi */ -static bool isCreating(unsigned int param_0) { +static bool isCreating(fpc_ProcID param_0) { return fpcCtIt_Judge((fpcCtIt_JudgeFunc)isCreatingCallback, ¶m_0); } @@ -445,4 +445,4 @@ scene_process_profile_definition g_profile_ROOM_SCENE = { 0, // mParameters &g_fopScn_Method.mBase, // sub_method (process_method_class*)&l_dScnRoom_Method, // mpMtd -}; \ No newline at end of file +}; diff --git a/src/f_op/f_op_actor_mng.cpp b/src/f_op/f_op_actor_mng.cpp index 32f4070709..2477af3cd4 100644 --- a/src/f_op/f_op_actor_mng.cpp +++ b/src/f_op/f_op_actor_mng.cpp @@ -294,7 +294,7 @@ void fopAcM_setRoomLayer(void* i_proc, int i_roomNo) { } /* 800199BC-80019A2C 0142FC 0070+00 0/0 4/4 114/114 .text fopAcM_SearchByID__FUiPP10fopAc_ac_c */ -s32 fopAcM_SearchByID(unsigned int i_actorID, fopAc_ac_c** i_outActor) { +s32 fopAcM_SearchByID(fpc_ProcID i_actorID, fopAc_ac_c** i_outActor) { if (fpcM_IsCreating(i_actorID)) { *i_outActor = NULL; } else { @@ -340,7 +340,7 @@ fopAcM_prm_class* fopAcM_CreateAppend() { * createAppend__FUsUlPC4cXyziPC5csXyzPC4cXyzScUi */ fopAcM_prm_class* createAppend(u16 i_enemyNo, u32 i_parameters, const cXyz* i_pos, int i_roomNo, const csXyz* i_angle, const cXyz* i_scale, s8 i_subType, - unsigned int i_parentProcID) { + fpc_ProcID i_parentProcID) { fopAcM_prm_class* params = fopAcM_CreateAppend(); if (params == NULL) { return NULL; @@ -391,7 +391,7 @@ void fopAcM_delete(fopAc_ac_c* i_actor) { } /* 80019CB8-80019D18 0145F8 0060+00 0/0 3/3 12/12 .text fopAcM_delete__FUi */ -s32 fopAcM_delete(unsigned int i_actorID) { +s32 fopAcM_delete(fpc_ProcID i_actorID) { void* actor = fopAcM_SearchByID(i_actorID); if (actor != NULL) { @@ -455,7 +455,7 @@ void* fopAcM_fastCreate(const char* p_actorName, u32 i_parameters, const cXyz* i /* 80019EF0-80019F78 014830 0088+00 0/0 1/1 105/105 .text * fopAcM_createChild__FsUiUlPC4cXyziPC5csXyzPC4cXyzScPFPv_i */ -s32 fopAcM_createChild(s16 i_procName, unsigned int i_parentProcID, u32 i_parameters, +s32 fopAcM_createChild(s16 i_procName, fpc_ProcID i_parentProcID, u32 i_parameters, const cXyz* i_pos, int i_roomNo, const csXyz* i_angle, const cXyz* i_scale, s8 i_subType, createFunc i_createFunc) { fopAcM_prm_class* prm = createAppend(0xFFFF, i_parameters, i_pos, i_roomNo, i_angle, i_scale, @@ -469,7 +469,7 @@ s32 fopAcM_createChild(s16 i_procName, unsigned int i_parentProcID, u32 i_parame /* 80019F78-8001A138 0148B8 01C0+00 0/0 0/0 6/6 .text * fopAcM_createChildFromOffset__FsUiUlPC4cXyziPC5csXyzPC4cXyzScPFPv_i */ -s32 fopAcM_createChildFromOffset(s16 i_procName, unsigned int i_parentProcID, u32 i_parameters, +s32 fopAcM_createChildFromOffset(s16 i_procName, fpc_ProcID i_parentProcID, u32 i_parameters, const cXyz* i_pos, int i_roomNo, const csXyz* i_angle, const cXyz* i_scale, s8 i_subType, createFunc i_createFunc) { fopAc_ac_c* parent_actor = fopAcM_SearchByID(i_parentProcID); @@ -2460,4 +2460,4 @@ bool fopAcM_wt_c::waterCheck(cXyz const* i_pos) { } /* 8001DE10-8001DE14 018750 0004+00 0/0 1/1 0/0 .text fopAcM_initManager__Fv */ -void fopAcM_initManager() {} \ No newline at end of file +void fopAcM_initManager() {} diff --git a/src/f_op/f_op_msg_mng.cpp b/src/f_op/f_op_msg_mng.cpp index f4791ac7be..ec597cb8e5 100644 --- a/src/f_op/f_op_msg_mng.cpp +++ b/src/f_op/f_op_msg_mng.cpp @@ -39,7 +39,7 @@ s32 fopMsgM_setStageLayer(void* param_0) { } /* 8001FA24-8001FA44 01A364 0020+00 3/3 14/14 4/4 .text fopMsgM_SearchByID__FUi */ -msg_class* fopMsgM_SearchByID(unsigned int i_id) { +msg_class* fopMsgM_SearchByID(fpc_ProcID i_id) { return (msg_class*)fpcEx_SearchByID(i_id); } @@ -66,7 +66,7 @@ SECTION_SDATA2 static u8 lit_3902[4] = { /* 8001FA6C-8001FB50 01A3AC 00E4+00 1/1 0/0 0/0 .text createAppend__FP10fopAc_ac_cP4cXyzPUlPUlUi */ static fopMsg_prm_class* createAppend(fopAc_ac_c* i_actor, cXyz* i_pos, u32* i_msgID, u32* param_3, - unsigned int param_4) { + fpc_ProcID param_4) { fopMsg_prm_class* params = static_cast(cMl::memalignB(-4, sizeof(fopMsg_prm_class))); @@ -102,7 +102,7 @@ static fopMsg_prm_class* createAppend(fopAc_ac_c* i_actor, cXyz* i_pos, u32* i_m */ static fopMsg_prm_timer* createTimerAppend(int i_mode, u32 i_limitMs, u8 i_type, u8 param_3, f32 param_4, f32 param_5, f32 param_6, f32 param_7, - unsigned int param_8) { + fpc_ProcID param_8) { fopMsg_prm_timer* appen = (fopMsg_prm_timer*)cMl::memalignB(-4, sizeof(fopMsg_prm_timer)); if (appen == NULL) { @@ -284,7 +284,7 @@ char* fopMsgM_messageGet(char* i_stringBuf, u32 i_msgId) { } /* 80020100-80020108 01AA40 0008+00 0/0 1/1 0/0 .text fopMsgM_setMessageID__FUi */ -void fopMsgM_setMessageID(unsigned int msg_id) { +void fopMsgM_setMessageID(fpc_ProcID msg_id) { i_msgID = msg_id; } @@ -410,4 +410,4 @@ JKRExpHeap* fopMsgM_createExpHeap(u32 i_heapSize, JKRHeap* i_heap) { /* 800203E0-80020400 01AD20 0020+00 0/0 3/3 0/0 .text fopMsgM_destroyExpHeap__FP10JKRExpHeap */ void fopMsgM_destroyExpHeap(JKRExpHeap* i_heap) { i_heap->destroy(); -} \ No newline at end of file +} diff --git a/src/f_op/f_op_overlap_mng.cpp b/src/f_op/f_op_overlap_mng.cpp index d5afe44a66..a725442c33 100644 --- a/src/f_op/f_op_overlap_mng.cpp +++ b/src/f_op/f_op_overlap_mng.cpp @@ -45,7 +45,7 @@ void fopOvlpM_Done(overlap_task_class* pTaskClass) { } /* 8001E540-8001E558 018E80 0018+00 0/0 1/1 0/0 .text fopOvlpM_ToldAboutID__FUi */ -void fopOvlpM_ToldAboutID(unsigned int param_1) { +void fopOvlpM_ToldAboutID(fpc_ProcID param_1) { l_fopOvlpM_overlap[0] ? l_fopOvlpM_overlap[0]->field_0x20[0x32] = param_1 : 0; } @@ -116,4 +116,4 @@ int fopOvlpM_Cancel() { } /* 8001E6E8-8001E6EC 019028 0004+00 0/0 1/1 0/0 .text fopOvlpM_Init__Fv */ -void fopOvlpM_Init() {} \ No newline at end of file +void fopOvlpM_Init() {} diff --git a/src/f_op/f_op_scene_mng.cpp b/src/f_op/f_op_scene_mng.cpp index a5cbc42dd9..2e93330f8f 100644 --- a/src/f_op/f_op_scene_mng.cpp +++ b/src/f_op/f_op_scene_mng.cpp @@ -8,7 +8,7 @@ #include "f_op/f_op_scene_req.h" /* 8001ECB0-8001ECE0 0195F0 0030+00 0/0 7/7 1/1 .text fopScnM_SearchByID__FUi */ -scene_class* fopScnM_SearchByID(unsigned int id) { +scene_class* fopScnM_SearchByID(fpc_ProcID id) { return (scene_class*)fopScnIt_Judge((fop_ScnItFunc)fpcSch_JudgeByID, &id); } @@ -30,7 +30,7 @@ int fopScnM_ChangeReq(scene_class* i_scene, s16 param_2, s16 param_3, u16 param_ /* 8001ED3C-8001ED84 01967C 0048+00 0/0 1/1 0/0 .text fopScnM_DeleteReq__FP11scene_class */ -unsigned int fopScnM_DeleteReq(scene_class* i_scene) { +fpc_ProcID fopScnM_DeleteReq(scene_class* i_scene) { u32 sceneRequestID = fopScnRq_Request(1, i_scene, 0x7FFF, 0, 0x7FFF, 0); return sceneRequestID != 0xFFFFFFFF; } @@ -56,4 +56,4 @@ void fopScnM_Management() { } /* 8001EE30-8001EE34 019770 0004+00 0/0 1/1 0/0 .text fopScnM_Init__Fv */ -void fopScnM_Init() {} \ No newline at end of file +void fopScnM_Init() {} diff --git a/src/f_op/f_op_scene_req.cpp b/src/f_op/f_op_scene_req.cpp index ca4b6faf0e..939acafe3d 100644 --- a/src/f_op/f_op_scene_req.cpp +++ b/src/f_op/f_op_scene_req.cpp @@ -159,11 +159,11 @@ s32 fopScnRq_Request(int param_1, scene_class* i_scene, s16 param_3, void* param } /* 8001F0FC-8001F11C 019A3C 0020+00 0/0 1/1 0/0 .text fopScnRq_ReRequest__FUisPv */ -s32 fopScnRq_ReRequest(unsigned int param_1, s16 param_2, void* param_3) { +s32 fopScnRq_ReRequest(fpc_ProcID param_1, s16 param_2, void* param_3) { return fpcNdRq_ReRequest(param_1, param_2, param_3); } /* 8001F11C-8001F13C 019A5C 0020+00 0/0 1/1 0/0 .text fopScnRq_Handler__Fv */ void fopScnRq_Handler() { fpcNdRq_Handler(); -} \ No newline at end of file +} diff --git a/src/f_pc/f_pc_base.cpp b/src/f_pc/f_pc_base.cpp index 6ed9a17c8f..b79d0a65de 100644 --- a/src/f_pc/f_pc_base.cpp +++ b/src/f_pc/f_pc_base.cpp @@ -78,7 +78,7 @@ s32 fpcBs_Delete(base_process_class* i_proc) { } /* 80020820-8002091C 00FC+00 s=0 e=2 z=0 None .text fpcBs_Create__FsUiPv */ -base_process_class* fpcBs_Create(s16 i_procTypeID, unsigned int i_procID, void* i_data) { +base_process_class* fpcBs_Create(s16 i_procTypeID, fpc_ProcID i_procID, void* i_data) { process_profile_definition* procProfDef; base_process_class* procClass; u32 size; @@ -130,4 +130,4 @@ s32 fpcBs_SubCreate(base_process_class* i_proc) { i_proc->mUnk2 = 5; return cPhs_ERROR_e; } -} \ No newline at end of file +} diff --git a/src/f_pc/f_pc_create_iter.cpp b/src/f_pc/f_pc_create_iter.cpp index bd6aa7ac52..cb1cc2961e 100644 --- a/src/f_pc/f_pc_create_iter.cpp +++ b/src/f_pc/f_pc_create_iter.cpp @@ -37,10 +37,10 @@ void* fpcCtIt_filter_JudgeInLayer(create_tag* i_createTag, fpcCtIt_jilprm_c* i_i } /* 80020A94-80020ACC 0038+00 s=0 e=1 z=0 None .text fpcCtIt_JudgeInLayer__FUiPFPvPv_PvPv */ -void* fpcCtIt_JudgeInLayer(unsigned int i_layerID, fpcCtIt_JudgeFunc i_judgeFunc, void* i_data) { +void* fpcCtIt_JudgeInLayer(fpc_ProcID i_layerID, fpcCtIt_JudgeFunc i_judgeFunc, void* i_data) { fpcCtIt_jilprm_c data; data.mLayerID = i_layerID; data.mFunc = i_judgeFunc; data.mpUserData = i_data; return fpcCtIt_Judge((fpcCtIt_JudgeFunc)fpcCtIt_filter_JudgeInLayer, &data); -} \ No newline at end of file +} diff --git a/src/f_pc/f_pc_create_req.cpp b/src/f_pc/f_pc_create_req.cpp index f605b23ee7..07a01a84b8 100644 --- a/src/f_pc/f_pc_create_req.cpp +++ b/src/f_pc/f_pc_create_req.cpp @@ -13,13 +13,13 @@ /* 80020ACC-80020AE8 001C+00 s=1 e=0 z=0 None .text fpcCtRq_isCreatingByID__FP10create_tagPUi */ -bool fpcCtRq_isCreatingByID(create_tag* i_createTag, unsigned int* i_procID) { +bool fpcCtRq_isCreatingByID(create_tag* i_createTag, fpc_ProcID* i_procID) { create_request* pReq = static_cast(i_createTag->mBase.mpTagData); return pReq->mBsPcId == *i_procID; } /* 80020AE8-80020B20 0038+00 s=0 e=2 z=0 None .text fpcCtRq_IsCreatingByID__FUi */ -BOOL fpcCtRq_IsCreatingByID(unsigned int i_id) { +BOOL fpcCtRq_IsCreatingByID(fpc_ProcID i_id) { return fpcCtIt_Judge((fpcLyIt_JudgeFunc)fpcCtRq_isCreatingByID, &i_id) != NULL ? TRUE : FALSE; } @@ -130,4 +130,4 @@ create_request* fpcCtRq_Create(layer_class* i_layer, u32 i_size, create_request_ } return pReq; -} \ No newline at end of file +} diff --git a/src/f_pc/f_pc_creator.cpp b/src/f_pc/f_pc_creator.cpp index 3c1cf9b948..62f002044e 100644 --- a/src/f_pc/f_pc_creator.cpp +++ b/src/f_pc/f_pc_creator.cpp @@ -12,7 +12,7 @@ // /* 80020EA8-80020EC8 0020+00 s=0 e=1 z=0 None .text fpcCt_IsCreatingByID__FUi */ -BOOL fpcCt_IsCreatingByID(unsigned int i_id) { +BOOL fpcCt_IsCreatingByID(fpc_ProcID i_id) { return fpcCtRq_IsCreatingByID(i_id); } @@ -29,4 +29,4 @@ BOOL fpcCt_Abort(base_process_class* i_proc) { /* 80020F10-80020F30 0020+00 s=0 e=1 z=0 None .text fpcCt_Handler__Fv */ void fpcCt_Handler() { fpcCtRq_Handler(); -} \ No newline at end of file +} diff --git a/src/f_pc/f_pc_executor.cpp b/src/f_pc/f_pc_executor.cpp index 1bd53269db..0327d6e729 100644 --- a/src/f_pc/f_pc_executor.cpp +++ b/src/f_pc/f_pc_executor.cpp @@ -14,7 +14,7 @@ base_process_class* fpcEx_Search(fpcLyIt_JudgeFunc i_judgeFunc, void* i_data) { } /* 80021358-8002139C 0044+00 s=1 e=5 z=30 None .text fpcEx_SearchByID__FUi */ -base_process_class* fpcEx_SearchByID(unsigned int i_id) { +base_process_class* fpcEx_SearchByID(fpc_ProcID i_id) { if (i_id + 2 <= 1) return NULL; @@ -22,7 +22,7 @@ base_process_class* fpcEx_SearchByID(unsigned int i_id) { } /* 8002139C-800213C4 0028+00 s=0 e=7 z=42 None .text fpcEx_IsExist__FUi */ -BOOL fpcEx_IsExist(unsigned int i_id) { +BOOL fpcEx_IsExist(fpc_ProcID i_id) { return fpcEx_SearchByID(i_id) != NULL ? TRUE : FALSE; } @@ -85,4 +85,4 @@ s32 fpcEx_ToExecuteQ(base_process_class* i_proc) { /* 80021568-80021588 0020+00 s=0 e=1 z=0 None .text fpcEx_Handler__FPFPvPv_i */ void fpcEx_Handler(fpcLnIt_QueueFunc i_queueFunc) { fpcLnIt_Queue(i_queueFunc); -} \ No newline at end of file +} diff --git a/src/f_pc/f_pc_layer.cpp b/src/f_pc/f_pc_layer.cpp index a243ddbe7d..291d5cc26b 100644 --- a/src/f_pc/f_pc_layer.cpp +++ b/src/f_pc/f_pc_layer.cpp @@ -111,7 +111,7 @@ layer_class* fpcLy_CurrentLayer() { } /* 800216FC-8002174C 0050+00 s=1 e=0 z=0 None .text fpcLy_Search__FUi */ -layer_class* fpcLy_Search(unsigned int i_id) { +layer_class* fpcLy_Search(fpc_ProcID i_id) { layer_class* layer_p = fpcLy_RootLayer(); while (layer_p != NULL) { if (layer_p->mLayerID == i_id) { @@ -123,7 +123,7 @@ layer_class* fpcLy_Search(unsigned int i_id) { } /* 8002174C-800217BC 0070+00 s=0 e=5 z=0 None .text fpcLy_Layer__FUi */ -layer_class* fpcLy_Layer(unsigned int i_id) { +layer_class* fpcLy_Layer(fpc_ProcID i_id) { if (i_id == 0 || fpcLy_RootLayer()->mLayerID == i_id) { return fpcLy_RootLayer(); } else if (i_id == ~2 || fpcLy_CurrentLayer()->mLayerID == i_id) { @@ -176,4 +176,4 @@ void fpcLy_Create(layer_class* i_layer, void* i_node, node_list_class* i_nodeLis cTr_Create(&i_layer->mNodeListTree, (i_layer->mNodeListTree).mpLists, (i_layer->mNodeListTree).mNumLists); fpcLy_Regist(i_layer); -} \ No newline at end of file +} diff --git a/src/f_pc/f_pc_layer_tag.cpp b/src/f_pc/f_pc_layer_tag.cpp index 181d31fe0d..d0b96f21eb 100644 --- a/src/f_pc/f_pc_layer_tag.cpp +++ b/src/f_pc/f_pc_layer_tag.cpp @@ -8,7 +8,7 @@ /* 80021CD4-80021DCC 00F8+00 s=1 e=1 z=0 None .text * fpcLyTg_ToQueue__FP26layer_management_tag_classUiUsUs */ -s32 fpcLyTg_ToQueue(layer_management_tag_class* i_LyTag, unsigned int i_layerID, u16 i_listID, +s32 fpcLyTg_ToQueue(layer_management_tag_class* i_LyTag, fpc_ProcID i_layerID, u16 i_listID, u16 i_listPriority) { if (i_LyTag->mpLayer == NULL && i_layerID == -1) { return 0; @@ -48,7 +48,7 @@ s32 fpcLyTg_QueueTo(layer_management_tag_class* i_LyTag) { /* 80021E2C-80021EB0 0084+00 s=0 e=1 z=0 None .text * fpcLyTg_Move__FP26layer_management_tag_classUiUsUs */ -s32 fpcLyTg_Move(layer_management_tag_class* i_LyTag, unsigned int i_layerID, u16 i_listID, +s32 fpcLyTg_Move(layer_management_tag_class* i_LyTag, fpc_ProcID i_layerID, u16 i_listID, u16 i_listPriority) { layer_class* layer = fpcLy_Layer(i_layerID); if (layer == NULL) { @@ -63,7 +63,7 @@ s32 fpcLyTg_Move(layer_management_tag_class* i_LyTag, unsigned int i_layerID, u1 /* 80021EB0-80021F64 00B4+00 s=0 e=1 z=0 None .text * fpcLyTg_Init__FP26layer_management_tag_classUiPv */ -s32 fpcLyTg_Init(layer_management_tag_class* i_LyTag, unsigned int i_id, void* i_data) { +s32 fpcLyTg_Init(layer_management_tag_class* i_LyTag, fpc_ProcID i_id, void* i_data) { static layer_management_tag_class crear = { NULL, NULL, NULL, NULL, 0, NULL, 0xFFFF, 0xFFFF, }; @@ -78,4 +78,4 @@ s32 fpcLyTg_Init(layer_management_tag_class* i_LyTag, unsigned int i_id, void* i } else { return 0; } -} \ No newline at end of file +} diff --git a/src/f_pc/f_pc_manager.cpp b/src/f_pc/f_pc_manager.cpp index 7296a35f59..3c433790db 100644 --- a/src/f_pc/f_pc_manager.cpp +++ b/src/f_pc/f_pc_manager.cpp @@ -38,7 +38,7 @@ s32 fpcM_Delete(void* i_proc) { } /* 80022138-80022158 0020+00 s=0 e=6 z=43 None .text fpcM_IsCreating__FUi */ -BOOL fpcM_IsCreating(unsigned int pID) { +BOOL fpcM_IsCreating(fpc_ProcID pID) { return fpcCt_IsCreatingByID(pID); } @@ -121,7 +121,7 @@ void fpcM_PauseDisable(void* i_proc, u8 i_flag) { } /* 800223B4-80022428 0074+00 s=0 e=1 z=0 None .text fpcM_JudgeInLayer__FUiPFPvPv_PvPv */ -void* fpcM_JudgeInLayer(unsigned int i_layerID, fpcCtIt_JudgeFunc i_judgeFunc, void* i_data) { +void* fpcM_JudgeInLayer(fpc_ProcID i_layerID, fpcCtIt_JudgeFunc i_judgeFunc, void* i_data) { layer_class* layer = fpcLy_Layer(i_layerID); if (layer != NULL) { void* ret = fpcCtIt_JudgeInLayer(i_layerID, i_judgeFunc, i_data); @@ -132,4 +132,4 @@ void* fpcM_JudgeInLayer(unsigned int i_layerID, fpcCtIt_JudgeFunc i_judgeFunc, v } else { return NULL; } -} \ No newline at end of file +} diff --git a/src/f_pc/f_pc_node_req.cpp b/src/f_pc/f_pc_node_req.cpp index 2b1c261e74..81d8b8fd2b 100644 --- a/src/f_pc/f_pc_node_req.cpp +++ b/src/f_pc/f_pc_node_req.cpp @@ -316,7 +316,7 @@ node_create_request* fpcNdRq_Request(u32 i_requestSize, int i_reqType, } /* 80023098-80023110 0078+00 s=1 e=0 z=0 None .text fpcNdRq_ReChangeNode__FUisPv */ -s32 fpcNdRq_ReChangeNode(unsigned int i_requestID, s16 i_procName, void* i_data) { +s32 fpcNdRq_ReChangeNode(fpc_ProcID i_requestID, s16 i_procName, void* i_data) { request_node_class* currentNode; node_create_request* found; currentNode = (request_node_class*)l_fpcNdRq_Queue.mpHead; @@ -336,6 +336,6 @@ s32 fpcNdRq_ReChangeNode(unsigned int i_requestID, s16 i_procName, void* i_data) } /* 80023110-80023130 0020+00 s=0 e=1 z=0 None .text fpcNdRq_ReRequest__FUisPv */ -s32 fpcNdRq_ReRequest(unsigned int i_requestID, s16 i_procName, void* i_data) { +s32 fpcNdRq_ReRequest(fpc_ProcID i_requestID, s16 i_procName, void* i_data) { return fpcNdRq_ReChangeNode(i_requestID, i_procName, i_data); -} \ No newline at end of file +} diff --git a/src/f_pc/f_pc_priority.cpp b/src/f_pc/f_pc_priority.cpp index cc763088c3..9f9713faa2 100644 --- a/src/f_pc/f_pc_priority.cpp +++ b/src/f_pc/f_pc_priority.cpp @@ -77,7 +77,7 @@ s32 fpcPi_Delete(process_priority_class* i_procPriority) { } /* 800232B4-800232E8 0034+00 s=2 e=0 z=0 None .text fpcPi_IsNormal__FUiUsUs */ -s32 fpcPi_IsNormal(unsigned int i_layer, u16 i_listID, u16 i_priority) { +s32 fpcPi_IsNormal(fpc_ProcID i_layer, u16 i_listID, u16 i_priority) { if ((i_layer < 0xFFFFFFFE) && (i_listID < 0xFFFE) && (i_priority < 0xFFFE)) return 1; @@ -86,7 +86,7 @@ s32 fpcPi_IsNormal(unsigned int i_layer, u16 i_listID, u16 i_priority) { /* 800232E8-80023428 0140+00 s=0 e=3 z=0 None .text * fpcPi_Change__FP22process_priority_classUiUsUs */ -s32 fpcPi_Change(process_priority_class* i_procPriority, unsigned int i_layer, u16 i_listID, u16 i_priority) { +s32 fpcPi_Change(process_priority_class* i_procPriority, fpc_ProcID i_layer, u16 i_listID, u16 i_priority) { base_process_class* pProc = (base_process_class*)i_procPriority->mBase.mpTagData; BOOL changed = 0; @@ -151,7 +151,7 @@ s32 fpcPi_Handler() { /* 800234BC-80023564 00A8+00 s=0 e=1 z=0 None .text * fpcPi_Init__FP22process_priority_classPvUiUsUs */ -s32 fpcPi_Init(process_priority_class* i_procPriority, void* i_data, unsigned int i_layer, u16 i_listID, +s32 fpcPi_Init(process_priority_class* i_procPriority, void* i_data, fpc_ProcID i_layer, u16 i_listID, u16 i_priority) { if (!fpcPi_IsNormal(i_layer, i_listID, i_priority)) return 0; @@ -170,4 +170,4 @@ s32 fpcPi_Init(process_priority_class* i_procPriority, void* i_data, unsigned in /* ############################################################################################## */ /* 804505F0-804505F8 0008+00 s=0 e=5 z=1 None .sdata None */ -s8 data_804505F0 = 0xFF; \ No newline at end of file +s8 data_804505F0 = 0xFF;