mirror of
https://github.com/zeldaret/tww.git
synced 2026-06-18 15:15:44 -04:00
Realmatch dComIfGp_event_runCheck inline
dComIfGp_event_runCheck's return type being different from the inner inline runCheck's return type apparently causes the compiler to double up the g_dComIfG_gameInfo load in certain functions. And also fix dComIfGp_event_chkEventFlag which had the same issue.
This commit is contained in:
@@ -2490,7 +2490,7 @@ inline void dComIfGp_clearMesgAnimeTagInfo() {
|
||||
* === EVENT ===
|
||||
*/
|
||||
|
||||
inline BOOL dComIfGp_event_runCheck() {
|
||||
inline bool dComIfGp_event_runCheck() {
|
||||
return g_dComIfG_gameInfo.play.getEvent().runCheck();
|
||||
}
|
||||
|
||||
@@ -2510,7 +2510,7 @@ inline void dComIfGp_event_offEventFlag(s16 flag) {
|
||||
g_dComIfG_gameInfo.play.getEvent().offEventFlag(flag);
|
||||
}
|
||||
|
||||
inline BOOL dComIfGp_event_chkEventFlag(s16 flag) {
|
||||
inline u16 dComIfGp_event_chkEventFlag(s16 flag) {
|
||||
return g_dComIfG_gameInfo.play.getEvent().chkEventFlag(flag);
|
||||
}
|
||||
|
||||
|
||||
@@ -914,11 +914,9 @@ void daAgb_c::FlagsSend(u32 stage_type) {
|
||||
if (dKyw_gbwind_use_check()) {
|
||||
mFlags.field_0xb_6 = 1;
|
||||
s16 r3;
|
||||
// Fakematch: using the dComIfGp_event_runCheck inline breaks the match
|
||||
// if (dComIfGp_event_runCheck() && (dComIfGp_evmng_startCheck("TACT_WINDOW2_SHIP") || dComIfGp_evmng_startCheck("TACT_WINDOW2"))) {
|
||||
if (g_dComIfG_gameInfo.play.getEvent().runCheck() &&
|
||||
(dComIfGp_evmng_startCheck("TACT_WINDOW2_SHIP") || dComIfGp_evmng_startCheck("TACT_WINDOW2")))
|
||||
{
|
||||
if (dComIfGp_event_runCheck() &&
|
||||
(dComIfGp_evmng_startCheck("TACT_WINDOW2_SHIP") || dComIfGp_evmng_startCheck("TACT_WINDOW2"))
|
||||
) {
|
||||
r3 = field_0x658;
|
||||
} else {
|
||||
cXyz* wind_vec = dKyw_get_wind_vec();
|
||||
|
||||
@@ -957,9 +957,7 @@ BOOL daNpc_kam_c::eventProc() {
|
||||
}
|
||||
|
||||
int staffId = dComIfGp_evmng_getMyStaffId(l_staff_name);
|
||||
// The dComIfGp_event_runCheck inline breaks the codegen here.
|
||||
// if (dComIfGp_event_runCheck() && !checkCommandTalk()) {
|
||||
if (g_dComIfG_gameInfo.play.getEvent().runCheck() && !checkCommandTalk()) {
|
||||
if (dComIfGp_event_runCheck() && !checkCommandTalk()) {
|
||||
if (staffId != -1) {
|
||||
int actIdx = dComIfGp_evmng_getMyActIdx(staffId, cut_name_tbl, ARRAY_SIZE(cut_name_tbl), 1, 0);
|
||||
if (actIdx == -1) {
|
||||
|
||||
@@ -215,20 +215,18 @@ BOOL daObjZouk::Act_c::jokai_demo() {
|
||||
|
||||
/* 000012F0-00001510 .text _execute__Q29daObjZouk5Act_cFv */
|
||||
bool daObjZouk::Act_c::_execute() {
|
||||
fopAc_ac_c* actor = this;
|
||||
set_mtx();
|
||||
texture_scroll();
|
||||
fopAcM_rollPlayerCrash(this, 288.0f, 0x0D);
|
||||
if (!jokai_demo())
|
||||
play_stop_joint_anime();
|
||||
if (param_get_arg0() == 0) {
|
||||
dBgS* bgsp = dComIfG_Bgsp();
|
||||
if (dComIfGp_event_runCheck()) {
|
||||
if (mBgBefore != NULL && mBgAfter != NULL) {
|
||||
if (mBgAfter->ChkUsed())
|
||||
bgsp->Release(mBgAfter);
|
||||
dComIfG_Bgsp()->Release(mBgAfter);
|
||||
if (!mBgBefore->ChkUsed()) {
|
||||
bgsp->Regist(mBgBefore, actor);
|
||||
dComIfG_Bgsp()->Regist(mBgBefore, this);
|
||||
mBgBefore->SetCrrFunc(NULL);
|
||||
mBgMode = 0;
|
||||
}
|
||||
@@ -239,8 +237,8 @@ bool daObjZouk::Act_c::_execute() {
|
||||
} else {
|
||||
if (mBgMode == 0 && dComIfGs_isCollect(0, 1) && mBgBefore != NULL && mBgAfter != NULL) {
|
||||
if (mBgBefore->ChkUsed())
|
||||
bgsp->Release(mBgBefore);
|
||||
bgsp->Regist(mBgAfter, actor);
|
||||
dComIfG_Bgsp()->Release(mBgBefore);
|
||||
dComIfG_Bgsp()->Regist(mBgAfter, this);
|
||||
mBgAfter->SetCrrFunc(NULL);
|
||||
mBgMode = 1;
|
||||
}
|
||||
|
||||
@@ -3141,13 +3141,9 @@ BOOL daPy_lk_c::execute() {
|
||||
offNoResetFlg1(daPyFlg1_EQUIP_DRAGON_SHIELD);
|
||||
}
|
||||
|
||||
// Using the dComIfGp_event_runCheck inline breaks the match
|
||||
// if (dComIfGp_event_runCheck()) {
|
||||
if (g_dComIfG_gameInfo.play.getEvent().runCheck()) {
|
||||
if (dComIfGp_event_runCheck()) {
|
||||
mStaffIdx = dComIfGp_evmng_getMyStaffId("Link", this);
|
||||
// Using the dComIfGp_event_chkEventFlag inline breaks the match
|
||||
// if (mEvtInfo.checkCommandDoor() && !dComIfGp_event_chkEventFlag(0x4) && mHeldItemType == 0x101) {
|
||||
if (mEvtInfo.checkCommandDoor() && !g_dComIfG_gameInfo.play.getEvent().chkEventFlag(0x4) && mHeldItemType == 0x101) {
|
||||
if (mEvtInfo.checkCommandDoor() && !dComIfGp_event_chkEventFlag(0x4) && mHeldItemType == 0x101) {
|
||||
fopAc_ac_c* equipActor = mActorKeepEquip.getActor();
|
||||
if (equipActor) {
|
||||
s16 angle = shape_angle.y + 0x8000;
|
||||
@@ -3573,9 +3569,7 @@ BOOL daPy_lk_c::execute() {
|
||||
|
||||
offNoResetFlg1((daPy_FLG1)(daPyFlg1_NPC_CALL_COMMAND | daPyFlg1_VINE_CATCH));
|
||||
|
||||
// Using the dComIfGp_event_runCheck inline breaks the match
|
||||
// if (dComIfGp_event_runCheck() || checkNoControll()) {
|
||||
if (g_dComIfG_gameInfo.play.getEvent().runCheck() || checkNoControll()) {
|
||||
if (dComIfGp_event_runCheck() || checkNoControll()) {
|
||||
dComIfGp_setDoStatus(0);
|
||||
dComIfGp_setRStatus(0);
|
||||
} else {
|
||||
|
||||
@@ -159,9 +159,7 @@ BOOL daPy_npc_c::initialRestartOption(s8 option, int save) {
|
||||
|
||||
/* 8015ABD8-8015AC74 .text checkNowPosMove__10daPy_npc_cFPCc */
|
||||
BOOL daPy_npc_c::checkNowPosMove(const char* pName) {
|
||||
// Using the dComIfGp_event_runCheck inline makes the codegen not match.
|
||||
// if (!dComIfGp_event_runCheck()) {
|
||||
if (!g_dComIfG_gameInfo.play.getEvent().runCheck()) {
|
||||
if (!dComIfGp_event_runCheck()) {
|
||||
return TRUE;
|
||||
}
|
||||
if (mEvtInfo.checkCommandTalk()) {
|
||||
|
||||
@@ -1048,9 +1048,7 @@ void daRd_c::modeCryWait() {
|
||||
onIkari();
|
||||
setBtkAnm(3);
|
||||
}
|
||||
// The dComIfGp_event_runCheck inline breaks the codegen here.
|
||||
// if (dComIfGp_event_runCheck()) {
|
||||
if (g_dComIfG_gameInfo.play.getEvent().runCheck()) {
|
||||
if (dComIfGp_event_runCheck()) {
|
||||
mTimer1 = 60;
|
||||
mTimer2 = 45;
|
||||
} else if (isAnm(AnmPrm_WALK)) {
|
||||
|
||||
Reference in New Issue
Block a user