Several more actors matching for demo

This commit is contained in:
LagoLunatic 2025-09-19 18:57:49 -04:00
parent 0e9059b633
commit 1a828e61ab
5 changed files with 21 additions and 12 deletions

View File

@ -479,7 +479,7 @@ config.libs = [
Object(NonMatching, "d/d_map.cpp"),
Object(MatchingFor("GZLJ01", "GZLE01", "GZLP01"), "d/d_com_inf_game.cpp"),
Object(Matching, "d/d_com_lib_game.cpp"),
Object(MatchingFor("GZLJ01", "GZLE01", "GZLP01"), "d/d_com_static.cpp"),
Object(Matching, "d/d_com_static.cpp"),
Object(Matching, "d/d_lib.cpp"),
Object(MatchingFor("GZLJ01", "GZLE01", "GZLP01"), "d/d_save.cpp"),
Object(Matching, "d/d_save_init.cpp"),
@ -491,7 +491,7 @@ config.libs = [
Object(MatchingFor("GZLJ01", "GZLE01", "GZLP01"), "d/d_a_obj_tribox_static.cpp"),
Object(Matching, "d/d_a_ship_static.cpp"),
Object(Matching, "d/d_a_boko_static.cpp"),
Object(MatchingFor("GZLJ01", "GZLE01", "GZLP01"), "d/d_a_bomb_static.cpp"),
Object(Matching, "d/d_a_bomb_static.cpp"),
Object(Matching, "d/d_a_branch_static.cpp"),
Object(Matching, "d/d_a_mgameboard_static.cpp"),
Object(Matching, "d/d_a_itembase_static.cpp"),
@ -1465,7 +1465,7 @@ config.libs = [
ActorRel(Matching, "d_a_spotbox"),
ActorRel(Matching, "d_a_ssk"),
ActorRel(Matching, "d_a_stone"),
ActorRel(Equivalent, "d_a_stone2"),
ActorRel(MatchingFor("D44J01"), "d_a_stone2"),
ActorRel(Matching, "d_a_swc00"),
ActorRel(MatchingFor("GZLJ01", "GZLE01", "GZLP01"), "d_a_swhit0"),
ActorRel(Matching, "d_a_swtdoor"),
@ -1738,7 +1738,7 @@ config.libs = [
ActorRel(NonMatching, "d_a_obj_trap"),
ActorRel(NonMatching, "d_a_obj_tribox"),
ActorRel(NonMatching, "d_a_obj_try"),
ActorRel(MatchingFor("GZLJ01", "GZLE01", "GZLP01"), "d_a_obj_usovmc"),
ActorRel(Matching, "d_a_obj_usovmc"),
ActorRel(Matching, "d_a_obj_vfan"),
ActorRel(MatchingFor("GZLJ01", "GZLE01", "GZLP01"), "d_a_obj_vgnfd"),
ActorRel(Matching, "d_a_obj_vmc"),
@ -1747,7 +1747,7 @@ config.libs = [
ActorRel(NonMatching, "d_a_obj_volcano"),
ActorRel(NonMatching, "d_a_obj_vtil"),
ActorRel(NonMatching, "d_a_obj_vyasi"),
ActorRel(MatchingFor("GZLJ01", "GZLE01", "GZLP01"), "d_a_obj_xfuta"),
ActorRel(Matching, "d_a_obj_xfuta"),
ActorRel(MatchingFor("GZLJ01", "GZLE01", "GZLP01"), "d_a_obj_zouK"),
ActorRel(NonMatching, "d_a_oship"),
ActorRel(NonMatching, "d_a_ph"),
@ -1768,11 +1768,11 @@ config.libs = [
ActorRel(Matching, "d_a_tag_etc"),
ActorRel(Matching, "d_a_tag_island"),
ActorRel(NonMatching, "d_a_tag_kf1"),
ActorRel(MatchingFor("GZLJ01", "GZLE01", "GZLP01"), "d_a_tag_ret"),
ActorRel(Matching, "d_a_tag_ret"),
ActorRel(MatchingFor("GZLJ01", "GZLE01", "GZLP01"), "d_a_tag_volcano"),
ActorRel(MatchingFor("GZLJ01", "GZLE01", "GZLP01"), "d_a_title"),
ActorRel(NonMatching, "d_a_tn"),
ActorRel(MatchingFor("GZLJ01", "GZLE01", "GZLP01"), "d_a_toge"),
ActorRel(Matching, "d_a_toge"),
ActorRel(MatchingFor("GZLJ01", "GZLE01", "GZLP01"), "d_a_tori_flag"),
ActorRel(MatchingFor("GZLJ01", "GZLE01", "GZLP01"), "d_a_wall"),
ActorRel(Matching, "d_a_warpfout"),

View File

@ -50,7 +50,7 @@ BOOL daObjUsovmc::Act_c::Delete() {
/* 00000298-000002E4 .text Mthd_Delete__Q211daObjUsovmc5Act_cFv */
BOOL daObjUsovmc::Act_c::Mthd_Delete() {
BOOL ret = MoveBGDelete();
dComIfG_resDelete(&mPhs, M_arcname);
dComIfG_resDeleteDemo(&mPhs, M_arcname);
return ret;
}

View File

@ -47,11 +47,15 @@ bool Act_c::create_heap() {
mpModel = mDoExt_J3DModel__create(mdl_data, 0, 0x11000002);
#if VERSION == VERSION_DEMO
return mdl_data != NULL ? TRUE : FALSE;
#else
bool ret = FALSE;
if (mdl_data != NULL && this->mpModel != NULL) {
ret = TRUE;
}
return ret;
#endif
}
/* 0000015C-00000214 .text _create__Q210daObjXfuta5Act_cFv */

View File

@ -48,9 +48,11 @@ namespace daTagRet {
cPhs_State Act_c::_create() {
fopAcM_SetupActor(this, daTagRet::Act_c);
#if VERSION > VERSION_DEMO
if (checkItemGet(dItem_PEARL_FARORE_e, TRUE)) {
return cPhs_STOP_e;
}
#endif
mStts.Init(0xFF, 0xFF, this);
mCyl.Set(cyl_check_src);

View File

@ -122,7 +122,7 @@ BOOL daToge_c::Create() {
mSwitchNo = daToge_prm::getSwitchNo(this);
if (dComIfGs_isSwitch(mSwitchNo, fopAcM_GetHomeRoomNo(this))) {
if (fopAcM_isSwitch(this, mSwitchNo)) {
unk470 = m_y_min;
mEventState = 2;
}
@ -237,6 +237,9 @@ void daToge_c::search_wind() {
/* 00000AE0-00000C1C .text toge_move__8daToge_cFv */
void daToge_c::toge_move() {
f32 f31 = 30.0f;
f32 f30 = 15.0f;
int timer = 0xA;
bool r30 = true;
switch (mEventState) {
case 0:
@ -249,7 +252,7 @@ void daToge_c::toge_move() {
// Fallthrough
case 2:
// m_y_min is also -150.0f, so that might be related
cLib_addCalc(&unk470, -150.0f, 0.1f, 30.0f, 15);
cLib_addCalc(&unk470, -150.0f, 0.1f, f31, f30);
break;
case 3:
toge_seStart(JA_SE_OBJ_TOGETOGE_OUT);
@ -257,11 +260,11 @@ void daToge_c::toge_move() {
r30 = false;
// Fallthrough
case 4:
if (cLib_addCalc(&unk470, unk474, 0.1f, 30.0f, 15.0f) == 0) {
if (cLib_addCalc(&unk470, unk474, 0.1f, f31, f30) == 0) {
if (unk470 < 0) {
unk474 = 0;
} else if (unk485 != 0) {
unk486 = 0xA;
unk486 = timer;
mEventState = 1;
unk485 = 0;
} else {