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:
LagoLunatic
2024-02-02 20:34:16 -05:00
parent b6c878a652
commit b46e897826
7 changed files with 15 additions and 31 deletions
+4 -6
View File
@@ -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;
}