From 59c571a4b3420b9216ddd2ebbe13ea8eb66525f1 Mon Sep 17 00:00:00 2001 From: LagoLunatic Date: Tue, 23 Jan 2024 22:49:15 -0500 Subject: [PATCH] Clean up inlines for f_op_actor_mng --- configure.py | 2 +- include/d/d_com_inf_game.h | 39 ++++++++++--- include/d/d_event.h | 16 +++++- include/f_op/f_op_actor.h | 19 +++++-- include/f_op/f_op_actor_mng.h | 3 + src/d/actor/d_a_ib.cpp | 16 +++--- src/d/d_item.cpp | 80 +++++++++++++-------------- src/d/d_s_room.cpp | 2 +- src/f_op/f_op_actor_mng.cpp | 101 +++++++++++++--------------------- 9 files changed, 150 insertions(+), 128 deletions(-) diff --git a/configure.py b/configure.py index 727355c72..f311de2ed 100644 --- a/configure.py +++ b/configure.py @@ -285,7 +285,7 @@ config.libs = [ Object(Matching, "f_op/f_op_actor.cpp", extra_cflags=['-pragma "nosyminline on"']), Object(Matching, "f_op/f_op_actor_iter.cpp"), Object(Matching, "f_op/f_op_actor_tag.cpp"), - Object(NonMatching, "f_op/f_op_actor_mng.cpp"), + Object(NonMatching, "f_op/f_op_actor_mng.cpp", extra_cflags=['-pragma "nosyminline on"']), Object(Matching, "f_op/f_op_camera.cpp"), Object(Matching, "f_op/f_op_camera_mng.cpp"), Object(Matching, "f_op/f_op_overlap.cpp"), diff --git a/include/d/d_com_inf_game.h b/include/d/d_com_inf_game.h index f0accf08b..9d7477db1 100644 --- a/include/d/d_com_inf_game.h +++ b/include/d/d_com_inf_game.h @@ -233,6 +233,33 @@ public: class dADM_CharTbl : public cDT { public: + s32 GetNITEM0() { return mIndex_N_ITEM0; } + s32 GetNITEM1() { return mIndex_N_ITEM1; } + s32 GetNITEM2() { return mIndex_N_ITEM2; } + s32 GetNITEM3() { return mIndex_N_ITEM3; } + s32 GetNITEM4() { return mIndex_N_ITEM4; } + s32 GetNITEM5() { return mIndex_N_ITEM5; } + s32 GetNITEM6() { return mIndex_N_ITEM6; } + s32 GetNITEM7() { return mIndex_N_ITEM7; } + s32 GetNITEM8() { return mIndex_N_ITEM8; } + s32 GetNITEM9() { return mIndex_N_ITEM9; } + s32 GetNITEM10() { return mIndex_N_ITEM10; } + s32 GetNITEM11() { return mIndex_N_ITEM11; } + s32 GetNITEM12() { return mIndex_N_ITEM12; } + s32 GetNITEM13() { return mIndex_N_ITEM13; } + s32 GetNITEM14() { return mIndex_N_ITEM14; } + s32 GetNITEM15() { return mIndex_N_ITEM15; } + s32 GetPercent() { return mIndex_percent; } + s32 GetITEM0() { return mIndex_ITEM0; } + s32 GetITEM1() { return mIndex_ITEM1; } + s32 GetITEM2() { return mIndex_ITEM2; } + s32 GetITEM3() { return mIndex_ITEM3; } + s32 GetITEM4() { return mIndex_ITEM4; } + s32 GetITEM5() { return mIndex_ITEM5; } + s32 GetITEM6() { return mIndex_ITEM6; } + s32 GetITEM7() { return mIndex_ITEM7; } + +private: /* 0x28 */ s32 mIndex_ARG; /* 0x2C */ s32 mIndex_N_ITEM0; /* 0x30 */ s32 mIndex_N_ITEM1; @@ -2527,8 +2554,7 @@ inline s32 dComIfGp_event_orderOld(u16 eventType, u16 priority, u16 flag, u16 hi } inline fopAc_ac_c* dComIfGp_event_getTalkPartner() { - u32 t = g_dComIfG_gameInfo.play.getEvent().mPtTalk; - return g_dComIfG_gameInfo.play.getEvent().convPId(t); + return (fopAc_ac_c*)g_dComIfG_gameInfo.play.getEvent().getPtT(); } inline void dComIfGp_event_setTalkPartner(void* i_actor) { @@ -2536,18 +2562,15 @@ inline void dComIfGp_event_setTalkPartner(void* i_actor) { } inline fopAc_ac_c* dComIfGp_event_getItemPartner() { - u32 i = g_dComIfG_gameInfo.play.getEvent().mPtItem; - return g_dComIfG_gameInfo.play.getEvent().convPId(i); + return (fopAc_ac_c*)g_dComIfG_gameInfo.play.getEvent().getPtI(); } inline fopAc_ac_c* dComIfGp_event_getPt1() { - u32 pt1 = g_dComIfG_gameInfo.play.getEvent().mPt1; - return g_dComIfG_gameInfo.play.getEvent().convPId(pt1); + return (fopAc_ac_c*)g_dComIfG_gameInfo.play.getEvent().getPt1(); } inline fopAc_ac_c* dComIfGp_event_getPt2() { - u32 pt2 = g_dComIfG_gameInfo.play.getEvent().mPt2; - return g_dComIfG_gameInfo.play.getEvent().convPId(pt2); + return (fopAc_ac_c*)g_dComIfG_gameInfo.play.getEvent().getPt2(); } inline f32 dComIfGp_event_getCullRate() { diff --git a/include/d/d_event.h b/include/d/d_event.h index 021a6b41a..e7c151a13 100644 --- a/include/d/d_event.h +++ b/include/d/d_event.h @@ -91,7 +91,7 @@ public: dStage_Event_dt_c* getStageEventDt(); dStage_Event_dt_c* nextStageEventDt(void*); int getPId(void*); - fopAc_ac_c * convPId(unsigned int); + void* convPId(unsigned int); u8 getTactFreeMStick(int); u8 getTactFreeCStick(int); bool giveItemCut(u8); @@ -100,11 +100,15 @@ public: bool chkTalkXY() { return mTalkButton == 1 || mTalkButton == 2 || mTalkButton == 3; } void setPtI_Id(unsigned int id) { mPtItem = id; } void setPtI(void* actor) { mPtItem = getPId(actor); } + void* getPtI() { return convPId(mPtItem); } void setGtItm(u8 itemNo) { mGetItemNo = itemNo; } u8 getGtItm() { return mGetItemNo; } void setPtT(void* i_actor) { mPtTalk = getPId(i_actor); } + void* getPtT() { return convPId(mPtTalk); } void setPt1(void* i_actor) { mPt1 = getPId(i_actor); } + void* getPt1() { return convPId(mPt1); } void setPt2(void* i_actor) { mPt2 = getPId(i_actor); } + void* getPt2() { return convPId(mPt2); } u8 getPreItemNo() { return mItemNo; } f32 getCullRate() { return mCullFarClipRatio; } @@ -118,6 +122,14 @@ public: bool runCheck() { return mMode != 0; } u8 getMode() { return mMode; } + void checkHind(u16) {} + void chkPhoto() {} + void getMode() const {} + void offHindFlag(u16) {} + void onHindFlag(u16) {} + void setDebugStb(u8) {} + +public: /* 0x00 */ dEvt_order_c mOrder[8]; /* 0xC0 */ s8 mOrderCount; /* 0xC1 */ s8 mFirstOrderIdx; @@ -125,7 +137,7 @@ public: /* 0xC3 */ u8 mbEndProc; /* 0xC4 */ u32 mPt1; /* 0xC8 */ u32 mPt2; - /* 0xCC */ int mPtTalk; + /* 0xCC */ u32 mPtTalk; /* 0xD0 */ u32 mPtItem; /* 0xD4 */ u8 mGetItemNo; /* 0xD5 */ u8 field_0xD5[0xD6 - 0xD5]; diff --git a/include/f_op/f_op_actor.h b/include/f_op/f_op_actor.h index a125c70b0..fb51e1c9a 100644 --- a/include/f_op/f_op_actor.h +++ b/include/f_op/f_op_actor.h @@ -107,13 +107,13 @@ struct actor_process_profile_definition { /* 0x28 */ u32 mStatus; /* 0x2C */ u8 mGroup; /* 0x2D */ u8 mCullType; -}; +}; // Size: 0x30 // Unclear what this is. Only appears in 2 profiles (PLAYER,BG) struct actor_process_profile_definition2 { /* 0x00 */ actor_process_profile_definition def; /* 0x30 */ u32 field_0x30; -}; +}; // Size: 0x34 class JKRSolidHeap; @@ -220,7 +220,10 @@ public: /* 0xC */ f32 mRadius; fopAc_cullSizeSphere() {} - fopAc_cullSizeSphere(cXyz, f32); + fopAc_cullSizeSphere(cXyz p, f32 r) { + mCenter = p; + mRadius = r; + } ~fopAc_cullSizeSphere() {} #endif }; @@ -232,8 +235,14 @@ public: /* 0xC */ Vec mMax; #else fopAc_cullSizeBox() {} - fopAc_cullSizeBox(const fopAc_cullSizeBox&); - fopAc_cullSizeBox(cXyz, cXyz); + fopAc_cullSizeBox(const fopAc_cullSizeBox& box) { + mMin = box.mMin; + mMax = box.mMax; + } + fopAc_cullSizeBox(cXyz min, cXyz max) { + mMin = min; + mMax = max; + } ~fopAc_cullSizeBox() {} /* 0x0 */ cXyz mMin; diff --git a/include/f_op/f_op_actor_mng.h b/include/f_op/f_op_actor_mng.h index 1a4aec552..285ad07d5 100644 --- a/include/f_op/f_op_actor_mng.h +++ b/include/f_op/f_op_actor_mng.h @@ -71,6 +71,9 @@ struct fopAcM_search_prm { class l_HIO { public: ~l_HIO() {} + + void entry() {} + void erase() {} }; class dKy_tevstr_c; diff --git a/src/d/actor/d_a_ib.cpp b/src/d/actor/d_a_ib.cpp index af01898a8..7a6ef0a08 100644 --- a/src/d/actor/d_a_ib.cpp +++ b/src/d/actor/d_a_ib.cpp @@ -123,14 +123,14 @@ BOOL daIball_c::createItem() { int itemTableIdx = itemBitNo; u32 items[8]; - items[0] = dComIfGp_CharTbl()->GetInf(dComIfGp_CharTbl()->mIndex_ITEM0, itemTableIdx); - items[1] = dComIfGp_CharTbl()->GetInf(dComIfGp_CharTbl()->mIndex_ITEM1, itemTableIdx); - items[2] = dComIfGp_CharTbl()->GetInf(dComIfGp_CharTbl()->mIndex_ITEM2, itemTableIdx); - items[3] = dComIfGp_CharTbl()->GetInf(dComIfGp_CharTbl()->mIndex_ITEM3, itemTableIdx); - items[4] = dComIfGp_CharTbl()->GetInf(dComIfGp_CharTbl()->mIndex_ITEM4, itemTableIdx); - items[5] = dComIfGp_CharTbl()->GetInf(dComIfGp_CharTbl()->mIndex_ITEM5, itemTableIdx); - items[6] = dComIfGp_CharTbl()->GetInf(dComIfGp_CharTbl()->mIndex_ITEM6, itemTableIdx); - items[7] = dComIfGp_CharTbl()->GetInf(dComIfGp_CharTbl()->mIndex_ITEM7, itemTableIdx); + items[0] = dComIfGp_CharTbl()->GetInf(dComIfGp_CharTbl()->GetITEM0(), itemTableIdx); + items[1] = dComIfGp_CharTbl()->GetInf(dComIfGp_CharTbl()->GetITEM1(), itemTableIdx); + items[2] = dComIfGp_CharTbl()->GetInf(dComIfGp_CharTbl()->GetITEM2(), itemTableIdx); + items[3] = dComIfGp_CharTbl()->GetInf(dComIfGp_CharTbl()->GetITEM3(), itemTableIdx); + items[4] = dComIfGp_CharTbl()->GetInf(dComIfGp_CharTbl()->GetITEM4(), itemTableIdx); + items[5] = dComIfGp_CharTbl()->GetInf(dComIfGp_CharTbl()->GetITEM5(), itemTableIdx); + items[6] = dComIfGp_CharTbl()->GetInf(dComIfGp_CharTbl()->GetITEM6(), itemTableIdx); + items[7] = dComIfGp_CharTbl()->GetInf(dComIfGp_CharTbl()->GetITEM7(), itemTableIdx); for (int i = 0; i < 8; i++) { itemBitNo = -1; diff --git a/src/d/d_item.cpp b/src/d/d_item.cpp index d9dcb45a8..303aa72b8 100644 --- a/src/d/d_item.cpp +++ b/src/d/d_item.cpp @@ -2783,14 +2783,14 @@ u8 check_itemno(int itemNo) { u8 getEmonoItemFromLifeBallTable(u16 itemTableIdx) { u8 items[16]; - items[0] = dComIfGp_CharTbl()->GetInf(dComIfGp_CharTbl()->mIndex_ITEM0, itemTableIdx); - items[1] = dComIfGp_CharTbl()->GetInf(dComIfGp_CharTbl()->mIndex_ITEM1, itemTableIdx); - items[2] = dComIfGp_CharTbl()->GetInf(dComIfGp_CharTbl()->mIndex_ITEM2, itemTableIdx); - items[3] = dComIfGp_CharTbl()->GetInf(dComIfGp_CharTbl()->mIndex_ITEM3, itemTableIdx); - items[4] = dComIfGp_CharTbl()->GetInf(dComIfGp_CharTbl()->mIndex_ITEM4, itemTableIdx); - items[5] = dComIfGp_CharTbl()->GetInf(dComIfGp_CharTbl()->mIndex_ITEM5, itemTableIdx); - items[6] = dComIfGp_CharTbl()->GetInf(dComIfGp_CharTbl()->mIndex_ITEM6, itemTableIdx); - items[7] = dComIfGp_CharTbl()->GetInf(dComIfGp_CharTbl()->mIndex_ITEM7, itemTableIdx); + items[0] = dComIfGp_CharTbl()->GetInf(dComIfGp_CharTbl()->GetITEM0(), itemTableIdx); + items[1] = dComIfGp_CharTbl()->GetInf(dComIfGp_CharTbl()->GetITEM1(), itemTableIdx); + items[2] = dComIfGp_CharTbl()->GetInf(dComIfGp_CharTbl()->GetITEM2(), itemTableIdx); + items[3] = dComIfGp_CharTbl()->GetInf(dComIfGp_CharTbl()->GetITEM3(), itemTableIdx); + items[4] = dComIfGp_CharTbl()->GetInf(dComIfGp_CharTbl()->GetITEM4(), itemTableIdx); + items[5] = dComIfGp_CharTbl()->GetInf(dComIfGp_CharTbl()->GetITEM5(), itemTableIdx); + items[6] = dComIfGp_CharTbl()->GetInf(dComIfGp_CharTbl()->GetITEM6(), itemTableIdx); + items[7] = dComIfGp_CharTbl()->GetInf(dComIfGp_CharTbl()->GetITEM7(), itemTableIdx); for (int i = 0; i < 8; i++) { if (isEmono(items[i])) { @@ -2798,22 +2798,22 @@ u8 getEmonoItemFromLifeBallTable(u16 itemTableIdx) { } } - items[0] = dComIfGp_CharTbl()->GetInf(dComIfGp_CharTbl()->mIndex_N_ITEM0, itemTableIdx); - items[1] = dComIfGp_CharTbl()->GetInf(dComIfGp_CharTbl()->mIndex_N_ITEM1, itemTableIdx); - items[2] = dComIfGp_CharTbl()->GetInf(dComIfGp_CharTbl()->mIndex_N_ITEM2, itemTableIdx); - items[3] = dComIfGp_CharTbl()->GetInf(dComIfGp_CharTbl()->mIndex_N_ITEM3, itemTableIdx); - items[4] = dComIfGp_CharTbl()->GetInf(dComIfGp_CharTbl()->mIndex_N_ITEM4, itemTableIdx); - items[5] = dComIfGp_CharTbl()->GetInf(dComIfGp_CharTbl()->mIndex_N_ITEM5, itemTableIdx); - items[6] = dComIfGp_CharTbl()->GetInf(dComIfGp_CharTbl()->mIndex_N_ITEM6, itemTableIdx); - items[7] = dComIfGp_CharTbl()->GetInf(dComIfGp_CharTbl()->mIndex_N_ITEM7, itemTableIdx); - items[8] = dComIfGp_CharTbl()->GetInf(dComIfGp_CharTbl()->mIndex_N_ITEM8, itemTableIdx); - items[9] = dComIfGp_CharTbl()->GetInf(dComIfGp_CharTbl()->mIndex_N_ITEM9, itemTableIdx); - items[10] = dComIfGp_CharTbl()->GetInf(dComIfGp_CharTbl()->mIndex_N_ITEM10, itemTableIdx); - items[11] = dComIfGp_CharTbl()->GetInf(dComIfGp_CharTbl()->mIndex_N_ITEM11, itemTableIdx); - items[12] = dComIfGp_CharTbl()->GetInf(dComIfGp_CharTbl()->mIndex_N_ITEM12, itemTableIdx); - items[13] = dComIfGp_CharTbl()->GetInf(dComIfGp_CharTbl()->mIndex_N_ITEM13, itemTableIdx); - items[14] = dComIfGp_CharTbl()->GetInf(dComIfGp_CharTbl()->mIndex_N_ITEM14, itemTableIdx); - items[15] = dComIfGp_CharTbl()->GetInf(dComIfGp_CharTbl()->mIndex_N_ITEM15, itemTableIdx); + items[0] = dComIfGp_CharTbl()->GetInf(dComIfGp_CharTbl()->GetNITEM0(), itemTableIdx); + items[1] = dComIfGp_CharTbl()->GetInf(dComIfGp_CharTbl()->GetNITEM1(), itemTableIdx); + items[2] = dComIfGp_CharTbl()->GetInf(dComIfGp_CharTbl()->GetNITEM2(), itemTableIdx); + items[3] = dComIfGp_CharTbl()->GetInf(dComIfGp_CharTbl()->GetNITEM3(), itemTableIdx); + items[4] = dComIfGp_CharTbl()->GetInf(dComIfGp_CharTbl()->GetNITEM4(), itemTableIdx); + items[5] = dComIfGp_CharTbl()->GetInf(dComIfGp_CharTbl()->GetNITEM5(), itemTableIdx); + items[6] = dComIfGp_CharTbl()->GetInf(dComIfGp_CharTbl()->GetNITEM6(), itemTableIdx); + items[7] = dComIfGp_CharTbl()->GetInf(dComIfGp_CharTbl()->GetNITEM7(), itemTableIdx); + items[8] = dComIfGp_CharTbl()->GetInf(dComIfGp_CharTbl()->GetNITEM8(), itemTableIdx); + items[9] = dComIfGp_CharTbl()->GetInf(dComIfGp_CharTbl()->GetNITEM9(), itemTableIdx); + items[10] = dComIfGp_CharTbl()->GetInf(dComIfGp_CharTbl()->GetNITEM10(), itemTableIdx); + items[11] = dComIfGp_CharTbl()->GetInf(dComIfGp_CharTbl()->GetNITEM11(), itemTableIdx); + items[12] = dComIfGp_CharTbl()->GetInf(dComIfGp_CharTbl()->GetNITEM12(), itemTableIdx); + items[13] = dComIfGp_CharTbl()->GetInf(dComIfGp_CharTbl()->GetNITEM13(), itemTableIdx); + items[14] = dComIfGp_CharTbl()->GetInf(dComIfGp_CharTbl()->GetNITEM14(), itemTableIdx); + items[15] = dComIfGp_CharTbl()->GetInf(dComIfGp_CharTbl()->GetNITEM15(), itemTableIdx); for (int i = 0; i < 16; i++) { if (isEmono(items[i])) { @@ -2828,22 +2828,22 @@ u8 getEmonoItemFromLifeBallTable(u16 itemTableIdx) { u8 getItemFromLifeBallTableWithoutEmono(u16 itemTableIdx) { u8 items[16]; - items[0] = dComIfGp_CharTbl()->GetInf(dComIfGp_CharTbl()->mIndex_N_ITEM0, itemTableIdx); - items[1] = dComIfGp_CharTbl()->GetInf(dComIfGp_CharTbl()->mIndex_N_ITEM1, itemTableIdx); - items[2] = dComIfGp_CharTbl()->GetInf(dComIfGp_CharTbl()->mIndex_N_ITEM2, itemTableIdx); - items[3] = dComIfGp_CharTbl()->GetInf(dComIfGp_CharTbl()->mIndex_N_ITEM3, itemTableIdx); - items[4] = dComIfGp_CharTbl()->GetInf(dComIfGp_CharTbl()->mIndex_N_ITEM4, itemTableIdx); - items[5] = dComIfGp_CharTbl()->GetInf(dComIfGp_CharTbl()->mIndex_N_ITEM5, itemTableIdx); - items[6] = dComIfGp_CharTbl()->GetInf(dComIfGp_CharTbl()->mIndex_N_ITEM6, itemTableIdx); - items[7] = dComIfGp_CharTbl()->GetInf(dComIfGp_CharTbl()->mIndex_N_ITEM7, itemTableIdx); - items[8] = dComIfGp_CharTbl()->GetInf(dComIfGp_CharTbl()->mIndex_N_ITEM8, itemTableIdx); - items[9] = dComIfGp_CharTbl()->GetInf(dComIfGp_CharTbl()->mIndex_N_ITEM9, itemTableIdx); - items[10] = dComIfGp_CharTbl()->GetInf(dComIfGp_CharTbl()->mIndex_N_ITEM10, itemTableIdx); - items[11] = dComIfGp_CharTbl()->GetInf(dComIfGp_CharTbl()->mIndex_N_ITEM11, itemTableIdx); - items[12] = dComIfGp_CharTbl()->GetInf(dComIfGp_CharTbl()->mIndex_N_ITEM12, itemTableIdx); - items[13] = dComIfGp_CharTbl()->GetInf(dComIfGp_CharTbl()->mIndex_N_ITEM13, itemTableIdx); - items[14] = dComIfGp_CharTbl()->GetInf(dComIfGp_CharTbl()->mIndex_N_ITEM14, itemTableIdx); - items[15] = dComIfGp_CharTbl()->GetInf(dComIfGp_CharTbl()->mIndex_N_ITEM15, itemTableIdx); + items[0] = dComIfGp_CharTbl()->GetInf(dComIfGp_CharTbl()->GetNITEM0(), itemTableIdx); + items[1] = dComIfGp_CharTbl()->GetInf(dComIfGp_CharTbl()->GetNITEM1(), itemTableIdx); + items[2] = dComIfGp_CharTbl()->GetInf(dComIfGp_CharTbl()->GetNITEM2(), itemTableIdx); + items[3] = dComIfGp_CharTbl()->GetInf(dComIfGp_CharTbl()->GetNITEM3(), itemTableIdx); + items[4] = dComIfGp_CharTbl()->GetInf(dComIfGp_CharTbl()->GetNITEM4(), itemTableIdx); + items[5] = dComIfGp_CharTbl()->GetInf(dComIfGp_CharTbl()->GetNITEM5(), itemTableIdx); + items[6] = dComIfGp_CharTbl()->GetInf(dComIfGp_CharTbl()->GetNITEM6(), itemTableIdx); + items[7] = dComIfGp_CharTbl()->GetInf(dComIfGp_CharTbl()->GetNITEM7(), itemTableIdx); + items[8] = dComIfGp_CharTbl()->GetInf(dComIfGp_CharTbl()->GetNITEM8(), itemTableIdx); + items[9] = dComIfGp_CharTbl()->GetInf(dComIfGp_CharTbl()->GetNITEM9(), itemTableIdx); + items[10] = dComIfGp_CharTbl()->GetInf(dComIfGp_CharTbl()->GetNITEM10(), itemTableIdx); + items[11] = dComIfGp_CharTbl()->GetInf(dComIfGp_CharTbl()->GetNITEM11(), itemTableIdx); + items[12] = dComIfGp_CharTbl()->GetInf(dComIfGp_CharTbl()->GetNITEM12(), itemTableIdx); + items[13] = dComIfGp_CharTbl()->GetInf(dComIfGp_CharTbl()->GetNITEM13(), itemTableIdx); + items[14] = dComIfGp_CharTbl()->GetInf(dComIfGp_CharTbl()->GetNITEM14(), itemTableIdx); + items[15] = dComIfGp_CharTbl()->GetInf(dComIfGp_CharTbl()->GetNITEM15(), itemTableIdx); for (int i = 0; i < 8; i++) { int randIdx = cM_rndF(15.999f); diff --git a/src/d/d_s_room.cpp b/src/d/d_s_room.cpp index 2922a6fda..4863ab0e3 100644 --- a/src/d/d_s_room.cpp +++ b/src/d/d_s_room.cpp @@ -80,7 +80,7 @@ void* deleteJugge(void* i_this, void*) { /* 80236A38-80236B1C .text objectSetCheck__FP19room_of_scene_class */ void objectSetCheck(room_of_scene_class* i_this) { s32 roomNo = fopScnM_GetParam(i_this); - s32 hiddenFlag = (g_dComIfG_gameInfo.play.getRoomControl()->mStatus[roomNo].mFlags & 0x08); + s32 hiddenFlag = dComIfGp_roomControl_checkStatusFlag(roomNo, 0x08); if (!i_this->mbReLoaded) { if (!hiddenFlag) { diff --git a/src/f_op/f_op_actor_mng.cpp b/src/f_op/f_op_actor_mng.cpp index aaddb4dc7..40684914c 100644 --- a/src/f_op/f_op_actor_mng.cpp +++ b/src/f_op/f_op_actor_mng.cpp @@ -594,59 +594,51 @@ s32 fopAcM_cullingCheck(fopAc_ac_c* i_this) { if (isBox) { if (cullType == fopAc_CULLBOX_CUSTOM_e) { if (fopAcM_getCullSizeFar(i_this) > 0.0f) { - mDoLib_clipper::mClipper.setFar(cullFar * mDoLib_clipper::mSystemFar); - mDoLib_clipper::mClipper.calcViewFrustum(); - s32 ret = mDoLib_clipper::mClipper.clip(pMtx, &i_this->mCull.mBox.mMax, &i_this->mCull.mBox.mMin); - mDoLib_clipper::mClipper.setFar(mDoLib_clipper::mSystemFar); - mDoLib_clipper::mClipper.calcViewFrustum(); + mDoLib_clipper::changeFar(cullFar * mDoLib_clipper::getFar()); + s32 ret = mDoLib_clipper::clip(pMtx, &i_this->mCull.mBox.mMax, &i_this->mCull.mBox.mMin); + mDoLib_clipper::resetFar(); return ret; } else { - return mDoLib_clipper::mClipper.clip(pMtx, &i_this->mCull.mBox.mMax, &i_this->mCull.mBox.mMin); + return mDoLib_clipper::clip(pMtx, &i_this->mCull.mBox.mMax, &i_this->mCull.mBox.mMin); } } else { fopAc_cullSizeBox& cullBox = l_cullSizeBox[cullType]; if (fopAcM_getCullSizeFar(i_this) > 0.0f) { - mDoLib_clipper::mClipper.setFar(cullFar * mDoLib_clipper::mSystemFar); - mDoLib_clipper::mClipper.calcViewFrustum(); - s32 ret = mDoLib_clipper::mClipper.clip(pMtx, &cullBox.mMax, &cullBox.mMin); - mDoLib_clipper::mClipper.setFar(mDoLib_clipper::mSystemFar); - mDoLib_clipper::mClipper.calcViewFrustum(); + mDoLib_clipper::changeFar(cullFar * mDoLib_clipper::getFar()); + s32 ret = mDoLib_clipper::clip(pMtx, &cullBox.mMax, &cullBox.mMin); + mDoLib_clipper::resetFar(); return ret; } else { - return mDoLib_clipper::mClipper.clip(pMtx, &cullBox.mMax, &cullBox.mMin); + return mDoLib_clipper::clip(pMtx, &cullBox.mMax, &cullBox.mMin); } } } else { // Sphere if (cullType == fopAc_CULLSPHERE_CUSTOM_e) { if (fopAcM_getCullSizeFar(i_this) > 0.0f) { - mDoLib_clipper::mClipper.setFar(cullFar * mDoLib_clipper::mSystemFar); - mDoLib_clipper::mClipper.calcViewFrustum(); + mDoLib_clipper::changeFar(cullFar * mDoLib_clipper::getFar()); f32 radius = i_this->mCull.mSphere.mRadius; Vec center = i_this->mCull.mSphere.mCenter; Vec unusedCenter = center; - s32 ret = mDoLib_clipper::mClipper.clip(pMtx, center, radius); - mDoLib_clipper::mClipper.setFar(mDoLib_clipper::mSystemFar); - mDoLib_clipper::mClipper.calcViewFrustum(); + s32 ret = mDoLib_clipper::clip(pMtx, center, radius); + mDoLib_clipper::resetFar(); return ret; } else { f32 radius = i_this->mCull.mSphere.mRadius; - return mDoLib_clipper::mClipper.clip(pMtx, i_this->mCull.mSphere.mCenter, radius); + return mDoLib_clipper::clip(pMtx, i_this->mCull.mSphere.mCenter, radius); } } else { fopAc_cullSizeSphere& cullSphere = l_cullSizeSphere[cullType - fopAc_CULLSPHERE_0_e]; if (fopAcM_getCullSizeFar(i_this) > 0.0f) { - mDoLib_clipper::mClipper.setFar(cullFar * mDoLib_clipper::mSystemFar); - mDoLib_clipper::mClipper.calcViewFrustum(); + mDoLib_clipper::changeFar(cullFar * mDoLib_clipper::getFar()); f32 radius = cullSphere.mRadius; Vec center = cullSphere.mCenter; Vec unusedCenter = center; - s32 ret = mDoLib_clipper::mClipper.clip(pMtx, center, radius); - mDoLib_clipper::mClipper.setFar(mDoLib_clipper::mSystemFar); - mDoLib_clipper::mClipper.calcViewFrustum(); + s32 ret = mDoLib_clipper::clip(pMtx, center, radius); + mDoLib_clipper::resetFar(); return ret; } else { f32 radius = cullSphere.mRadius; - return mDoLib_clipper::mClipper.clip(pMtx, cullSphere.mCenter, radius); + return mDoLib_clipper::clip(pMtx, cullSphere.mCenter, radius); } } } @@ -935,7 +927,7 @@ s32 fopAcM_createRaceItem(cXyz* pos, int i_itemNo, int i_itemBitNo, csXyz* rot, i_itemNo = check_itemno(i_itemNo); u32 params = (i_itemBitNo & 0x7F) << 0x08 | i_itemNo & 0xFF | (param_7 & 0xF) << 0xF; - fopAcM_create(PROC_RACEITEM, params, pos, roomNo, rot, scale); + return fopAcM_create(PROC_RACEITEM, params, pos, roomNo, rot, scale); } /* 80026980-80026A68 .text fopAcM_createDemoItem__FP4cXyziiP5csXyziP4cXyzUc */ @@ -1168,22 +1160,22 @@ void* fopAcM_createItemFromEnemyTable(u16 itemTableIdx, int i_itemBitNo, int i_r int itemIdx = (int)cM_rndF(15.999f); cXyz scale = cXyz::Zero; - items[0] = dComIfGp_CharTbl()->GetInf(dComIfGp_CharTbl()->mIndex_N_ITEM0, itemTableIdx); - items[1] = dComIfGp_CharTbl()->GetInf(dComIfGp_CharTbl()->mIndex_N_ITEM1, itemTableIdx); - items[2] = dComIfGp_CharTbl()->GetInf(dComIfGp_CharTbl()->mIndex_N_ITEM2, itemTableIdx); - items[3] = dComIfGp_CharTbl()->GetInf(dComIfGp_CharTbl()->mIndex_N_ITEM3, itemTableIdx); - items[4] = dComIfGp_CharTbl()->GetInf(dComIfGp_CharTbl()->mIndex_N_ITEM4, itemTableIdx); - items[5] = dComIfGp_CharTbl()->GetInf(dComIfGp_CharTbl()->mIndex_N_ITEM5, itemTableIdx); - items[6] = dComIfGp_CharTbl()->GetInf(dComIfGp_CharTbl()->mIndex_N_ITEM6, itemTableIdx); - items[7] = dComIfGp_CharTbl()->GetInf(dComIfGp_CharTbl()->mIndex_N_ITEM7, itemTableIdx); - items[8] = dComIfGp_CharTbl()->GetInf(dComIfGp_CharTbl()->mIndex_N_ITEM8, itemTableIdx); - items[9] = dComIfGp_CharTbl()->GetInf(dComIfGp_CharTbl()->mIndex_N_ITEM9, itemTableIdx); - items[10] = dComIfGp_CharTbl()->GetInf(dComIfGp_CharTbl()->mIndex_N_ITEM10, itemTableIdx); - items[11] = dComIfGp_CharTbl()->GetInf(dComIfGp_CharTbl()->mIndex_N_ITEM11, itemTableIdx); - items[12] = dComIfGp_CharTbl()->GetInf(dComIfGp_CharTbl()->mIndex_N_ITEM12, itemTableIdx); - items[13] = dComIfGp_CharTbl()->GetInf(dComIfGp_CharTbl()->mIndex_N_ITEM13, itemTableIdx); - items[14] = dComIfGp_CharTbl()->GetInf(dComIfGp_CharTbl()->mIndex_N_ITEM14, itemTableIdx); - items[15] = dComIfGp_CharTbl()->GetInf(dComIfGp_CharTbl()->mIndex_N_ITEM15, itemTableIdx); + items[0] = dComIfGp_CharTbl()->GetInf(dComIfGp_CharTbl()->GetNITEM0(), itemTableIdx); + items[1] = dComIfGp_CharTbl()->GetInf(dComIfGp_CharTbl()->GetNITEM1(), itemTableIdx); + items[2] = dComIfGp_CharTbl()->GetInf(dComIfGp_CharTbl()->GetNITEM2(), itemTableIdx); + items[3] = dComIfGp_CharTbl()->GetInf(dComIfGp_CharTbl()->GetNITEM3(), itemTableIdx); + items[4] = dComIfGp_CharTbl()->GetInf(dComIfGp_CharTbl()->GetNITEM4(), itemTableIdx); + items[5] = dComIfGp_CharTbl()->GetInf(dComIfGp_CharTbl()->GetNITEM5(), itemTableIdx); + items[6] = dComIfGp_CharTbl()->GetInf(dComIfGp_CharTbl()->GetNITEM6(), itemTableIdx); + items[7] = dComIfGp_CharTbl()->GetInf(dComIfGp_CharTbl()->GetNITEM7(), itemTableIdx); + items[8] = dComIfGp_CharTbl()->GetInf(dComIfGp_CharTbl()->GetNITEM8(), itemTableIdx); + items[9] = dComIfGp_CharTbl()->GetInf(dComIfGp_CharTbl()->GetNITEM9(), itemTableIdx); + items[10] = dComIfGp_CharTbl()->GetInf(dComIfGp_CharTbl()->GetNITEM10(), itemTableIdx); + items[11] = dComIfGp_CharTbl()->GetInf(dComIfGp_CharTbl()->GetNITEM11(), itemTableIdx); + items[12] = dComIfGp_CharTbl()->GetInf(dComIfGp_CharTbl()->GetNITEM12(), itemTableIdx); + items[13] = dComIfGp_CharTbl()->GetInf(dComIfGp_CharTbl()->GetNITEM13(), itemTableIdx); + items[14] = dComIfGp_CharTbl()->GetInf(dComIfGp_CharTbl()->GetNITEM14(), itemTableIdx); + items[15] = dComIfGp_CharTbl()->GetInf(dComIfGp_CharTbl()->GetNITEM15(), itemTableIdx); if (isLimitedItem(items[itemIdx])) { if ( @@ -1215,7 +1207,7 @@ void* fopAcM_createItemFromEnemyTable(u16 itemTableIdx, int i_itemBitNo, int i_r /* 8002777C-800278D8 .text fopAcM_createIball__FP4cXyziiP5csXyzi */ s32 fopAcM_createIball(cXyz* p_pos, int itemTableIdx, int i_roomNo, csXyz* p_angle, int i_itemBitNo) { - int dropChance = dComIfGp_CharTbl()->GetInf(dComIfGp_CharTbl()->mIndex_percent, (u16)itemTableIdx); + int dropChance = dComIfGp_CharTbl()->GetInf(dComIfGp_CharTbl()->GetPercent(), (u16)itemTableIdx); int randPercent = cM_rndF(99.999f); if (strcmp(dComIfGp_getStartStageName(), "Cave09") == 0 || @@ -1445,7 +1437,10 @@ s32 fopAcM_getWaterY(const cXyz* pPos, f32* pDstWaterY) { /* 80028684-80028724 .text fopAcM_setGbaName__FP10fopAc_ac_cUcUcUc */ void fopAcM_setGbaName(fopAc_ac_c* i_this, u8 itemNo, u8 gbaName0, u8 gbaName1) { - if (dComIfGs_checkGetItem(itemNo) || (itemNo == BOW && (dComIfGs_checkGetItem(MAGIC_ARROW) || dComIfGs_checkGetItem(LIGHT_ARROW))) || (itemNo == MAGIC_ARROW && dComIfGs_checkGetItem(LIGHT_ARROW))) + if (dComIfGs_checkGetItem(itemNo) || + (itemNo == BOW && (dComIfGs_checkGetItem(MAGIC_ARROW) || dComIfGs_checkGetItem(LIGHT_ARROW))) || + (itemNo == MAGIC_ARROW && dComIfGs_checkGetItem(LIGHT_ARROW)) + ) i_this->mGbaName = gbaName1; else i_this->mGbaName = gbaName0; @@ -1467,23 +1462,3 @@ void fpoAcM_relativePos(fopAc_ac_c* i_this, cXyz* absPos, cXyz* relPos) { relPos->y = offset.y; relPos->z = offset.z * cM_scos(angle) - offset.x * cM_ssin(angle); } - -#ifndef __INTELLISENSE__ -/* 80029178-80029198 .text __ct__20fopAc_cullSizeSphereF4cXyzf */ -fopAc_cullSizeSphere::fopAc_cullSizeSphere(cXyz p, f32 r) { - mCenter = p; - mRadius = r; -} - -/* 80029198-800291CC .text __ct__17fopAc_cullSizeBoxFRC17fopAc_cullSizeBox */ -fopAc_cullSizeBox::fopAc_cullSizeBox(const fopAc_cullSizeBox& box) { - mMin = box.mMin; - mMax = box.mMax; -} - -/* 800291CC-80029200 .text __ct__17fopAc_cullSizeBoxF4cXyz4cXyz */ -fopAc_cullSizeBox::fopAc_cullSizeBox(cXyz min, cXyz max) { - mMin = min; - mMax = max; -} -#endif