* Some d_message demo matches

* More demo matches

* fix jpn
This commit is contained in:
LagoLunatic
2026-08-16 18:05:17 -04:00
committed by GitHub
parent 2d094c263e
commit e389a9b814
56 changed files with 591 additions and 448 deletions
+38 -15
View File
@@ -211,7 +211,7 @@ BOOL daBg_c::createHeap() {
if (bgw->Set(dzb, cBgW::GLOBAL_e, NULL))
return FALSE;
dStage_roomControl_c::setBgW(roomNo, bgw);
bgw->mWallCorrectPriority = 0;
bgw->SetPriority((cBgW::PRIORITY)0);
} else {
bgw = NULL;
}
@@ -226,9 +226,7 @@ static void escapeRestart() {
daPy_lk_c* player_p = daPy_getPlayerLinkActorClass();
dComIfGs_setTurnRestart(player_p->current.pos, player_p->shape_angle.y, fopAcM_GetRoomNo(player_p), player_p->getDayNightParamData());
if (dComIfG_getTimerMode() == 3) {
dComIfG_TimerDeleteRequest();
}
dComIfG_TimerDeleteRequest(3);
dComIfGp_setNextStage(dComIfGp_getStartStageName(), -3, dComIfGs_getTurnRestartRoomNo(), -1, 0.0f, 0, FALSE, 9);
}
@@ -313,6 +311,17 @@ BOOL daBg_c::execute() {
mUnloadTimer = 1;
#endif
} else {
#if VERSION == VERSION_DEMO
if (!mDoGph_gInf_c::isMonotone()) {
BgModel * bgm = &bg[0];
for (s32 i = 0; i < 4; i++, bgm++) {
if (bgm->btk != NULL)
bgm->btk->play();
if (bgm->brk != NULL)
bgm->brk->play();
}
}
#else
BgModel * bgm = &bg[0];
for (s32 i = 0; i < 4; i++, bgm++) {
if (!mDoGph_gInf_c::isMonotone() || i == 2) {
@@ -322,6 +331,7 @@ BOOL daBg_c::execute() {
bgm->brk->play();
}
}
#endif
}
return TRUE;
@@ -359,25 +369,28 @@ static cPhs_State daBg_Create(fopAc_ac_c* i_ac) {
cPhs_State daBg_c::create() {
fopAcM_ct(this, daBg_c);
s32 roomNo = fopAcM_GetParam(this);
int roomNo = fopAcM_GetParam(this);
JKRExpHeap * roomHeap = dStage_roomControl_c::getMemoryBlock(roomNo);
if (roomHeap != NULL) {
heap = JKRSolidHeap::create(-1, roomHeap, false);
JUT_ASSERT(0x2fd, heap != NULL);
JUT_ASSERT(DEMO_SELECT(796, 765), heap != NULL);
JKRHeap * oldHeap = mDoExt_setCurrentHeap(heap);
BOOL rt = createHeap();
JUT_ASSERT(0x302, rt == TRUE);
JUT_ASSERT(DEMO_SELECT(801, 770), rt == TRUE);
mDoExt_setCurrentHeap(oldHeap);
heap->adjustSize();
} else {
if (!fopAcM_entrySolidHeap(this, checkCreateHeap, 0)) {
#if VERSION == VERSION_DEMO
if (REG1_S(0) != 0 || !fopAcM_entrySolidHeap(this, checkCreateHeap, 0)) {
escapeRestart();
#else
dStage_escapeRestart();
#endif
return cPhs_ERROR_e;
}
#else
if (!fopAcM_entrySolidHeap(this, checkCreateHeap, 0)) {
dStage_escapeRestart();
return cPhs_ERROR_e;
}
#endif
}
BgModel * bgm = &bg[0];
@@ -406,17 +419,27 @@ cPhs_State daBg_c::create() {
}
}
if (bgw != NULL && dComIfG_Bgsp()->Regist(bgw, this)) {
#if VERSION == VERSION_DEMO
if (bgw != NULL && (REG1_S(0) != 0 || dComIfG_Bgsp()->Regist(bgw, this))) {
escapeRestart();
#else
dStage_escapeRestart();
#endif
return cPhs_ERROR_e;
}
#else
if (bgw != NULL && dComIfG_Bgsp()->Regist(bgw, this)) {
dStage_escapeRestart();
return cPhs_ERROR_e;
}
#endif
#if VERSION == VERSION_DEMO
dComIfGp_roomControl_getTevStr(roomNo)->mEnvrIdxOverride = 0xFF;
dComIfGp_roomControl_getTevStr(roomNo)->mRoomNo = roomNo;
#else
dKy_tevstr_init(dComIfGp_roomControl_getTevStr(roomNo), roomNo, 0xFF);
#endif
dComIfGp_roomControl_onStatusFlag(roomNo, 0x10);
return cPhs_COMPLEATE_e;
}
+1 -1
View File
@@ -463,7 +463,7 @@ void mDoExt_J3DModelPacketS::draw() {
while (mesh != NULL) {
if (!mesh->getShape()->checkFlag(J3DShpFlag_Hide)) {
matPacket = mpModel->getMatPacket(mesh->getIndex());
j3dSys.setTexture(matPacket->mpTexture);
j3dSys.setTexture(matPacket->getTexture());
j3dSys.setMatPacket(matPacket);
mesh->load();
setMaterial();
+30 -24
View File
@@ -99,12 +99,18 @@ void daDai_c::CreateInit() {
m850 = fpcM_ERROR_PROCESS_ID_e;
if (dComIfGs_getEventReg(m_savelabel[mSaveID])) {
void* dai_item = fopAcM_fastCreate(
fpcNm_STANDITEM_e,
dComIfGs_getEventReg(m_savelabel[mSaveID]),
&current.pos,
#if VERSION <= VERSION_JPN
void* pfVar3 = fopAcM_fastCreate(fpcNm_STANDITEM_e, dComIfGs_getEventReg(m_savelabel[mSaveID]), &current.pos, -1, &current.angle);
-1,
#else
void* pfVar3 = fopAcM_fastCreate(fpcNm_STANDITEM_e, dComIfGs_getEventReg(m_savelabel[mSaveID]), &current.pos, fopAcM_GetRoomNo(this), &current.angle);
fopAcM_GetRoomNo(this),
#endif
m850 = fopAcM_GetID(pfVar3);
&current.angle
);
m850 = fopAcM_GetID(dai_item);
incNowItemNum();
}
incNowDaizaNum();
@@ -181,16 +187,16 @@ void daDai_c::checkOrder() {
if (dComIfGp_evmng_startCheck(mEvtDaiItemIdx) && player->getGrabActorID() != fpcM_ERROR_PROCESS_ID_e) {
m850 = player->getGrabActorID();
daStandItem_c* pfVar2 = (daStandItem_c*)fopAcM_SearchByID(m850);
if (pfVar2 != NULL) {
m84B = pfVar2->mItemNo;
daStandItem_c* dai_item = (daStandItem_c*)fopAcM_SearchByID(m850);
if (dai_item != NULL) {
m84B = dai_item->mItemNo;
}
}
if (dComIfGp_evmng_endCheck(mEvtDaiItemIdx)) {
fopAc_ac_c* pfVar3 = fopAcM_SearchByID(m850);
if (pfVar3 != NULL) {
pfVar3->current.pos = current.pos;
fopAc_ac_c* dai_item = fopAcM_SearchByID(m850);
if (dai_item != NULL) {
dai_item->current.pos = current.pos;
}
dComIfGs_setEventReg(m_savelabel[mSaveID], m84B);
dComIfGs_setReserveItemEmpty();
@@ -279,15 +285,15 @@ bool daDai_c::_draw() {
/* 00000E48-00000EDC .text getMsg__7daDai_cFv */
u32 daDai_c::getMsg() {
u32 uVar2;
u32 msgNo;
if (dComIfGp_event_chkTalkXY()) {
uVar2 = 0xf13;
msgNo = 0xF13;
} else if (dComIfGs_getEventReg(m_savelabel[mSaveID])) {
uVar2 = 0xf0d;
msgNo = 0xF0D;
} else {
uVar2 = 0xf11;
msgNo = 0xF11;
}
return uVar2;
return msgNo;
}
/* 00000EDC-0000109C .text next_msgStatus__7daDai_cFPUl */
@@ -295,20 +301,20 @@ u16 daDai_c::next_msgStatus(u32* pMsgNo) {
u16 msgStatus = fopMsgStts_MSG_CONTINUES_e;
switch (*pMsgNo) {
case 0xF11:
*pMsgNo = 0xf12;
case 0xF11: // Check when empty
*pMsgNo = 0xF12;
break;
case 0xF0D:
case 0xF0D: // Check when item is placed, ask to remove
switch (mpCurrMsg->mSelectNum) {
case 0:
case 0: // Yes
if (dComIfGs_checkReserveItemEmpty() && getRotenItemNumInBag() < 3) {
fopAcM_seStart(this, JA_SE_LK_W_DAIZA_TAKEOFF, 0);
*pMsgNo = 0xf0f;
*pMsgNo = 0xF0F;
fopAc_ac_c* pfVar4 = fopAcM_SearchByID(m850);
if (pfVar4 != NULL) {
fopAcM_delete(pfVar4);
fopAc_ac_c* dai_item = fopAcM_SearchByID(m850);
if (dai_item != NULL) {
fopAcM_delete(dai_item);
}
u8 uVar5 = dComIfGs_getEventReg(m_savelabel[mSaveID]);
@@ -317,11 +323,11 @@ u16 daDai_c::next_msgStatus(u32* pMsgNo) {
decNowItemNum();
m84A = 0;
} else {
*pMsgNo = 0xf0e;
*pMsgNo = 0xF0E;
}
break;
case 1:
case 1: // No
default:
msgStatus = fopMsgStts_MSG_ENDS_e;
break;
+2 -2
View File
@@ -25,7 +25,7 @@ static BOOL daDisappear_Execute(disappear_class* i_this) {
if (dropType != daDisItem_NONE1_e && dropType != daDisItem_NONE3_e) {
if (dropType == daDisItem_HEART_CONTAINER_e) {
fopAcM_createItemForBoss(&i_this->current.pos, 0, i_this->current.roomNo, &i_this->current.angle, NULL, 0);
fopAcM_createItemForBoss(&i_this->current.pos, 0, fopAcM_GetRoomNo(i_this), &i_this->current.angle, NULL, 0);
}
else if (dropType >= daDisItem_HEART_e && dropType <= daDisItem_NONE13_e) {
// Special type for Keese (ki) spawned in the Puppet Ganon fight.
@@ -40,7 +40,7 @@ static BOOL daDisappear_Execute(disappear_class* i_this) {
}
}
else {
fopAcM_createIball(&i_this->current.pos, i_this->itemTableIdx, i_this->current.roomNo, &i_this->current.angle, i_this->mItemBitNo);
fopAcM_createIball(&i_this->current.pos, i_this->itemTableIdx, fopAcM_GetRoomNo(i_this), &i_this->current.angle, i_this->mItemBitNo);
}
}
}
+26 -22
View File
@@ -69,13 +69,12 @@ static void setEffectMtx(fopAc_ac_c* a_this, J3DModelData* modelData, float scal
mDoMtx_stack_c::scaleS(scale, scale, 1.0f);
mDoMtx_stack_c::concat(mtx_adj);
mDoMtx_stack_c::concat(reflMtx);
MtxP mtx = mDoMtx_stack_c::get();
mtx[0][3] = 0.0f;
mtx[1][3] = 0.0f;
mtx[2][3] = 0.0f;
mDoMtx_stack_c::get()[0][3] = 0.0f;
mDoMtx_stack_c::get()[1][3] = 0.0f;
mDoMtx_stack_c::get()[2][3] = 0.0f;
Mtx now_copy;
PSMTXCopy(mDoMtx_stack_c::get(), now_copy);
cMtx_copy(mDoMtx_stack_c::get(), now_copy);
for (u16 i = 0; i < modelData->getMaterialNum(); i++) {
J3DMaterial* mat = modelData->getMaterialNodePointer(i);
@@ -171,7 +170,10 @@ static void demo_camera(kui_class* i_this) {
i_this->field_0x2F8.y += REG8_F(0) + 200.0f;
cMtx_YrotS(*calc_mtx, i_this->current.angle.y);
cXyz vec(REG8_F(1) + 800.f, REG8_F(2), REG8_F(3) + 100.0f);
cXyz vec;
vec.x = REG8_F(1) + 800.f;
vec.y = REG8_F(2);
vec.z = REG8_F(3) + 100.0f;
cXyz posVec;
MtxPosition(&vec, &posVec);
@@ -311,21 +313,21 @@ static BOOL daKui_Execute(kui_class* i_this) {
cLib_addCalcAngleS2(&i_this->field_0x2E6, REG17_S(7) + 0x100, 1, REG17_S(8) + 0x40);
MtxTrans(actor->home.pos.x, actor->home.pos.y, actor->home.pos.z, FALSE);
mDoMtx_YrotM(*calc_mtx, actor->current.angle.y);
cMtx_YrotM(*calc_mtx, actor->current.angle.y);
MtxPush();
mDoMtx_YrotM(*calc_mtx, actor->shape_angle.y);
mDoMtx_XrotM(*calc_mtx, x + i_this->field_0x2E2);
mDoMtx_ZrotM(*calc_mtx, z);
mDoMtx_YrotM(*calc_mtx, -actor->shape_angle.y);
cMtx_YrotM(*calc_mtx, actor->shape_angle.y);
cMtx_XrotM(*calc_mtx, x + i_this->field_0x2E2);
cMtx_ZrotM(*calc_mtx, z);
cMtx_YrotM(*calc_mtx, -actor->shape_angle.y);
MtxScale(unk_f, unk_f, unk_f, TRUE);
i_this->mpModel->setBaseTRMtx(*calc_mtx);
MtxPull();
mDoMtx_YrotM(*calc_mtx, actor->shape_angle.y + REG0_S(5));
mDoMtx_XrotM(*calc_mtx, actor->current.angle.x + REG0_S(6));
mDoMtx_YrotM(*calc_mtx, -(actor->shape_angle.y + REG0_S(5) + 0x4000));
cMtx_YrotM(*calc_mtx, actor->shape_angle.y + REG0_S(5));
cMtx_XrotM(*calc_mtx, actor->current.angle.x + REG0_S(6));
cMtx_YrotM(*calc_mtx, -(actor->shape_angle.y + REG0_S(5) + 0x4000));
MtxScale(unk_f, 1.0, unk_f, TRUE);
i_this->mpModel2->setBaseTRMtx(*calc_mtx);
@@ -335,13 +337,13 @@ static BOOL daKui_Execute(kui_class* i_this) {
MtxPosition(&temp2, &actor->current.pos);
MtxTrans(actor->current.pos.x, actor->current.pos.y, actor->current.pos.z, FALSE);
mDoMtx_YrotM(*calc_mtx, actor->current.angle.y);
cMtx_YrotM(*calc_mtx, actor->current.angle.y);
MtxScale(actor->scale.x, actor->scale.y, actor->scale.z, TRUE);
cMtx_copy(*calc_mtx, i_this->field_0x2A8);
i_this->field_0x2D8->Move();
} else {
MtxTrans(actor->current.pos.x, actor->current.pos.y, actor->current.pos.z, FALSE);
mDoMtx_YrotM(*calc_mtx, actor->current.angle.y);
cMtx_YrotM(*calc_mtx, actor->current.angle.y);
if (i_this->type == 2 || i_this->type == 4) {
i_this->mpModel->setBaseTRMtx(*calc_mtx);
}
@@ -397,7 +399,7 @@ static BOOL daKui_IsDelete(kui_class*) {
/* 000012EC-00001340 .text daKui_Delete__FP9kui_class */
static BOOL daKui_Delete(kui_class* i_this) {
dComIfG_resDelete(&i_this->mPhs, "Kui");
dComIfG_resDeleteDemo(&i_this->mPhs, "Kui");
dComIfG_Bgsp()->Release(i_this->field_0x2D8);
return TRUE;
}
@@ -410,7 +412,7 @@ static BOOL daKui_CreateHeap(fopAc_ac_c* a_this) {
if (i_this->type == 3) {
// Bell body
modelData = (J3DModelData*)dComIfG_getObjectRes("Kui", dRes_INDEX_KUI_BDL_HKANE1_e);
JUT_ASSERT(0x353, modelData != NULL);
JUT_ASSERT(DEMO_SELECT(836, 851), modelData != NULL);
i_this->mpModel = mDoExt_J3DModel__create(modelData, 0, 0x11020203);
if (!i_this->mpModel) {
@@ -419,7 +421,7 @@ static BOOL daKui_CreateHeap(fopAc_ac_c* a_this) {
// Bell handle
modelData = (J3DModelData*)dComIfG_getObjectRes("Kui", dRes_INDEX_KUI_BDL_HKANE2_e);
JUT_ASSERT(0x35F, modelData != NULL);
JUT_ASSERT(DEMO_SELECT(848, 863), modelData != NULL);
i_this->mpModel2 = mDoExt_J3DModel__create(modelData, 0, 0x11020203);
if (!i_this->mpModel2) {
@@ -428,7 +430,7 @@ static BOOL daKui_CreateHeap(fopAc_ac_c* a_this) {
} else {
// Rope
modelData = (J3DModelData*)dComIfG_getObjectRes("Kui", dRes_INDEX_KUI_BDL_OBI_ROPETAG_e);
JUT_ASSERT(0x36B, modelData != NULL);
JUT_ASSERT(DEMO_SELECT(860, 875), modelData != NULL);
i_this->mpModel2 = mDoExt_J3DModel__create(modelData, 0x80000, 0x11000002);
if (!i_this->mpModel2) {
@@ -438,7 +440,7 @@ static BOOL daKui_CreateHeap(fopAc_ac_c* a_this) {
if (i_this->type == 2 || i_this->type == 4) {
// Rope swing attachment
modelData = (J3DModelData*)dComIfG_getObjectRes("Kui", dRes_INDEX_KUI_BDL_MROPESW_e);
JUT_ASSERT(0x377, modelData != NULL);
JUT_ASSERT(DEMO_SELECT(872, 887), modelData != NULL);
i_this->mpModel = mDoExt_J3DModel__create(modelData, 0x80000, 0x11000002);
if (!i_this->mpModel) {
@@ -468,11 +470,13 @@ static cPhs_State daKui_Create(fopAc_ac_c* a_this) {
kui_class* i_this;
cPhs_State result;
fopAcM_ct(a_this, kui_class);
fopAcM_ct_Retail(a_this, kui_class);
i_this = (kui_class*) a_this;
result = dComIfG_resLoad(&i_this->mPhs, "Kui");
if (result == cPhs_COMPLEATE_e) {
fopAcM_ct_Demo(a_this, kui_class);
if (fopAcM_GetParam(a_this) == -1) {
return cPhs_ERROR_e;
}
+4 -4
View File
@@ -135,12 +135,12 @@ static BOOL da_Npc_Ah_nodeCallBack(J3DNode* node, int calcTiming) {
MTXCopy(model->getAnmMtx(jointNo), *calc_mtx);
if(jointNo == i_this->m_jnt.getHeadJntNum()){
mDoMtx_XrotM(*calc_mtx, i_this->m_jnt.getHead_y());
cMtx_ZrotM(*calc_mtx, -i_this->m_jnt.getHead_x());
cMtx_XrotM(*calc_mtx, (s16)i_this->m_jnt.getHead_y());
cMtx_ZrotM(*calc_mtx, (s16)-i_this->m_jnt.getHead_x());
}
else if(jointNo == i_this->m_jnt.getBackboneJntNum()){
mDoMtx_XrotM(*calc_mtx, i_this->m_jnt.getBackbone_y());
cMtx_ZrotM(*calc_mtx, -i_this->m_jnt.getBackbone_x());
cMtx_XrotM(*calc_mtx, (s16)i_this->m_jnt.getBackbone_y());
cMtx_ZrotM(*calc_mtx, (s16)-i_this->m_jnt.getBackbone_x());
}
#if VERSION > VERSION_DEMO
MTXCopy(*calc_mtx, model->getAnmMtx(jointNo));
+4 -4
View File
@@ -192,8 +192,8 @@ static BOOL nodeCallBack_Bs(J3DNode* node, int calcTiming) {
MTXCopy(model->getAnmMtx(jntNo), *calc_mtx);
if (jntNo == i_this->getHeadJntNum()) {
cXyz offset(0.0f, 0.0f, 0.0f);
mDoMtx_XrotM(*calc_mtx, i_this->getHead_y());
cMtx_ZrotM(*calc_mtx, -i_this->getHead_x());
cMtx_XrotM(*calc_mtx, (s16)i_this->getHead_y());
cMtx_ZrotM(*calc_mtx, (s16)-i_this->getHead_x());
cXyz pos;
MtxPosition(&offset, &pos);
i_this->setAttentionBasePos(pos);
@@ -204,8 +204,8 @@ static BOOL nodeCallBack_Bs(J3DNode* node, int calcTiming) {
i_this->setEyePos(pos);
i_this->incAttnSetCount();
} else if (jntNo == i_this->getBackboneJntNum()) {
mDoMtx_XrotM(*calc_mtx, i_this->getBackbone_y());
cMtx_ZrotM(*calc_mtx, -i_this->getBackbone_x());
cMtx_XrotM(*calc_mtx, (s16)i_this->getBackbone_y());
cMtx_ZrotM(*calc_mtx, (s16)-i_this->getBackbone_x());
}
cMtx_copy(*calc_mtx, J3DSys::mCurrentMtx);
model->setAnmMtx(jntNo, *calc_mtx);
+1 -1
View File
@@ -986,7 +986,7 @@ static BOOL nodeCallBack_Hr(J3DNode* node, int calcTiming) {
i_this->setEyePos(temp2);
i_this->incAttnSetCount();
} else if (jntNo == i_this->getBackboneJntNum()) {
mDoMtx_XrotM(*calc_mtx, i_this->getBackbone_y());
cMtx_XrotM(*calc_mtx, (s16)i_this->getBackbone_y());
} else if (jntNo == i_this->m_waist_jnt_num) {
temp.set(0.0f, 0.0f, 0.0f);
MtxPosition(&temp, &i_this->mCloudPos);
+4 -1
View File
@@ -3965,7 +3965,10 @@ BOOL daNpc_Ji1_c::battleGuardCheck() {
if(field_0xC3C > 2) {
if(checkAction(&daNpc_Ji1_c::battleAction)) {
dComIfG_TimerDeleteRequest();
dTimer_c* timer = dComIfG_getTimerPtr();
if (timer != NULL) {
timer->deleteRequest();
}
if(isClearRecord(field_0xD70)) {
setClearRecord(field_0xD70);
+4 -4
View File
@@ -48,8 +48,8 @@ static BOOL nodeCallBack_Mk(J3DNode* node, int calcTiming) {
MTXCopy(model->getAnmMtx(jntNo), *calc_mtx);
if (jntNo == i_this->getHeadJntNum()) {
temp.setall(0.0f);
mDoMtx_XrotM(*calc_mtx, (s16)i_this->getHead_y());
mDoMtx_ZrotM(*calc_mtx, (s16)i_this->getHead_x());
cMtx_XrotM(*calc_mtx, (s16)i_this->getHead_y());
cMtx_ZrotM(*calc_mtx, (s16)i_this->getHead_x());
MtxPosition(&temp, &temp2);
i_this->setAttentionBasePos(temp2);
temp.set(20.0f, -20.0f, 0.0f);
@@ -59,8 +59,8 @@ static BOOL nodeCallBack_Mk(J3DNode* node, int calcTiming) {
i_this->incAttnSetCount();
} else if (jntNo == i_this->getBackboneJntNum()) {
mDoMtx_XrotM(*calc_mtx, i_this->getBackbone_y());
mDoMtx_ZrotM(*calc_mtx, i_this->getBackbone_x());
cMtx_XrotM(*calc_mtx, (s16)i_this->getBackbone_y());
cMtx_ZrotM(*calc_mtx, (s16)i_this->getBackbone_x());
}
cMtx_copy(*calc_mtx, J3DSys::mCurrentMtx);
model->setAnmMtx(jntNo, *calc_mtx);
+2 -2
View File
@@ -946,8 +946,8 @@ static BOOL nodeCallBack1(J3DNode* i_node, int i_param_2) {
MtxPosition(&local_28, &i_this->eyePos);
}
if (jntNo == i_this->m_jnt.getBackboneJntNum()) {
mDoMtx_XrotM(*calc_mtx, i_this->m_jnt.getBackbone_y());
mDoMtx_ZrotM(*calc_mtx, i_this->m_jnt.getBackbone_x());
cMtx_XrotM(*calc_mtx, (s16)i_this->m_jnt.getBackbone_y());
cMtx_ZrotM(*calc_mtx, (s16)i_this->m_jnt.getBackbone_x());
}
model->setAnmMtx(jntNo, *calc_mtx);
+5 -5
View File
@@ -588,16 +588,16 @@ static BOOL daNpc_Photo_nodeCallBack(J3DNode* node, int calcTiming) {
J3DJoint* joint = (J3DJoint*)node;
daNpcPhoto_c* i_this = (daNpcPhoto_c*)model->getUserArea();
s32 jntNo = joint->getJntNo();
cMtx_copy(model->getAnmMtx(jntNo), *calc_mtx);
MTXCopy(model->getAnmMtx(jntNo), *calc_mtx);
if(jntNo == i_this->m_jnt.getHeadJntNum()) {
mDoMtx_XrotM(*calc_mtx, i_this->m_jnt.getHead_y());
mDoMtx_ZrotM(*calc_mtx, -i_this->m_jnt.getHead_x());
cMtx_XrotM(*calc_mtx, (s16)i_this->m_jnt.getHead_y());
cMtx_ZrotM(*calc_mtx, (s16)-i_this->m_jnt.getHead_x());
}
if(jntNo == i_this->m_jnt.getBackboneJntNum()) {
mDoMtx_XrotM(*calc_mtx, i_this->m_jnt.getBackbone_y());
mDoMtx_ZrotM(*calc_mtx, -i_this->m_jnt.getBackbone_x());
cMtx_XrotM(*calc_mtx, (s16)i_this->m_jnt.getBackbone_y());
cMtx_ZrotM(*calc_mtx, (s16)-i_this->m_jnt.getBackbone_x());
}
model->setAnmMtx(jntNo, *calc_mtx);
+10 -7
View File
@@ -411,7 +411,11 @@ static u32 l_msg_xy_invalid_item_B[] = {
};
static u32 l_msg_xy_invalid_item_C[] = {
#if VERSION == VERSION_DEMO
0x29DE,
#else
0x29DD,
#endif
0x0000,
};
@@ -1586,16 +1590,15 @@ static BOOL daNpc_Roten_nodeCallBack(J3DNode* node, int calcTiming) {
daNpcRoten_c* i_this = (daNpcRoten_c*)model->getUserArea();
s32 jntNo = joint->getJntNo();
MtxP mtx = model->getAnmMtx(jntNo);
cMtx_copy(mtx, *calc_mtx);
MTXCopy(model->getAnmMtx(jntNo), *calc_mtx);
if(jntNo == i_this->m_jnt.getHeadJntNum()) {
mDoMtx_XrotM(*calc_mtx, i_this->m_jnt.getHead_y());
mDoMtx_ZrotM(*calc_mtx, -i_this->m_jnt.getHead_x());
cMtx_XrotM(*calc_mtx, (s16)i_this->m_jnt.getHead_y());
cMtx_ZrotM(*calc_mtx, (s16)-i_this->m_jnt.getHead_x());
}
if(jntNo == i_this->m_jnt.getBackboneJntNum()) {
mDoMtx_XrotM(*calc_mtx, i_this->m_jnt.getBackbone_y());
mDoMtx_ZrotM(*calc_mtx, -i_this->m_jnt.getBackbone_x());
cMtx_XrotM(*calc_mtx, (s16)i_this->m_jnt.getBackbone_y());
cMtx_ZrotM(*calc_mtx, (s16)-i_this->m_jnt.getBackbone_x());
}
model->setAnmMtx(jntNo, *calc_mtx);
@@ -1739,7 +1742,7 @@ cPhs_State daNpcRoten_c::createInit() {
weight = 0xFE;
}
gravity = -9.0f;
fopAcM_SetGravity(this, -9.0f);
field_0x99E = dComIfGp_evmng_getEventIdx("ROTEN_EXCHANGE_1ST");
field_0x9A0 = dComIfGp_evmng_getEventIdx("ROTEN_EXCHANGE_2ND");
+2 -2
View File
@@ -55,8 +55,8 @@ static BOOL nodeCallBack_Tt(J3DNode* node, int calcTiming) {
i_this->incAttnSetCount();
} else if (jntNo == i_this->getBackboneJntNum()) {
mDoMtx_XrotM(*calc_mtx, i_this->getBackbone_y());
mDoMtx_ZrotM(*calc_mtx, i_this->getBackbone_x());
cMtx_XrotM(*calc_mtx, (s16)i_this->getBackbone_y());
cMtx_ZrotM(*calc_mtx, (s16)i_this->getBackbone_x());
}
cMtx_copy(*calc_mtx, J3DSys::mCurrentMtx);
model->setAnmMtx(jntNo, *calc_mtx);
+1 -1
View File
@@ -80,7 +80,7 @@ cPhs_State daObjMonument::Act_c::_create() {
bool daObjMonument::Act_c::_delete() {
if (mpBgW != NULL && mpBgW->ChkUsed())
dComIfG_Bgsp()->Release(mpBgW);
dComIfG_resDelete(&mPhs, M_arcname);
dComIfG_resDeleteDemo(&mPhs, M_arcname);
return true;
}
+13 -10
View File
@@ -145,7 +145,7 @@ void Bgc_c::wrt_pos(const cXyz& pos) {
f32 roofY = pos.y + 400.0f;
groundPos.y -= 100.0f;
M_wrt_work.Set(groundPos, roofY);
if (dComIfG_Bgsp()->SplGrpChk(&M_wrt_work)) {
if (dComIfG_Bgsp()->WaterChk(&M_wrt_work)) {
mWaterY = M_wrt_work.GetHeight();
cLib_onBit(mStateFlags, BgcState_ABOVE_WATER_e);
if (mWaterY > pos.y) {
@@ -1399,12 +1399,16 @@ void Act_c::afl_sway() {
m610 *= temp;
}
f32 f1;
f32 f5;
f32 f0;
f32 f6;
f32 temp2 = m614 - m60C;
f32 temp1 = m618 - m610;
f32 f1 = -temp2 * attr()->m50;
f32 f5 = -temp1 * attr()->m50;
f32 f0 = -m61C * attr()->m54;
f32 f6 = -m620 * attr()->m54;
f1 = -temp2 * attr()->m50;
f5 = -temp1 * attr()->m50;
f0 = -m61C * attr()->m54;
f6 = -m620 * attr()->m54;
m61C += f1 + f0;
m620 += f5 + f6;
m614 += m61C;
@@ -1580,7 +1584,7 @@ void Act_c::mode_wait() {
if (r31 != -1) {
m634 = r31;
eff_smoke_slip_start();
daPy_getPlayerActorClass()->onPushPullKeep();
((daPy_py_c*)dComIfGp_getPlayer(0))->onPushPullKeep();
mode_walk_init();
if (cLib_checkBit(mPPLabel, dBgW::PPLABEL_PULL)) {
@@ -1650,7 +1654,7 @@ void Act_c::mode_walk() {
} else if (m634 == 3) {
m628--;
}
daPy_getPlayerActorClass()->offPushPullKeep();
((daPy_py_c*)dComIfGp_getPlayer(0))->offPushPullKeep();
mode_wait_init();
}
}
@@ -1864,9 +1868,8 @@ BOOL Act_c::Draw() {
int temp = mBgc.mMaxGroundIdx;
f32 groundH = mBgc.mGroundY[temp];
cM3dGPla* triPla = dComIfG_Bgsp()->GetTriPla(mBgc.M_gnd_work[temp]);
cXyz* norm = triPla->GetNP();
if (norm && groundH != -G_CM3D_F_INF) {
dComIfGd_setSimpleShadow(&current.pos, groundH, attr()->m10, norm, shape_angle.y, 1.0f, NULL);
if (triPla && groundH != -G_CM3D_F_INF) {
dComIfGd_setSimpleShadow(&current.pos, groundH, attr()->m10, &triPla->mNormal, shape_angle.y, 1.0f, NULL);
}
}
+2 -1
View File
@@ -63,9 +63,10 @@ cPhs_State daObj_Pbco_c::CreateInit() {
}
cPhs_State daObj_Pbco_c::_create() {
fopAcM_ct(this, daObj_Pbco_c);
fopAcM_ct_Retail(this, daObj_Pbco_c);
cPhs_State phase_state = dComIfG_resLoad(&mPhs, M_arcname);
if (phase_state == cPhs_COMPLEATE_e) {
fopAcM_ct_Demo(this, daObj_Pbco_c);
if (fopAcM_entrySolidHeap(this, CheckCreateHeap, 0x10000)) {
phase_state = CreateInit();
} else {
+4 -2
View File
@@ -26,13 +26,15 @@ daObjQuake_HIO_c::daObjQuake_HIO_c() {
/* 00000134-000002C4 .text _create__12daObjQuake_cFv */
cPhs_State daObjQuake_c::_create() {
fopAcM_ct(this, daObjQuake_c);
fopAcM_ct_Retail(this, daObjQuake_c);
if (dComIfGs_isSymbol(dSymbol_DIN_e)) {
return cPhs_STOP_e;
}
if (getPrmType() < 3) {
fopAcM_ct_Demo(this, daObjQuake_c);
fopAcM_offDraw(this);
mType = getPrmType();
m2A1 = false;
@@ -135,8 +137,8 @@ BOOL daObjQuake_c::_execute() {
u8 sch = getPrmSch();
bool var_r27 = false;
if (sch & dKy_get_schbit() && !dComIfGp_event_chkEventFlag(dEvtFlag_TALK_e)) {
f32 a = (m29C / 6.0f) * m290;
f32 b = (m298 / 6.0f) * m290;
f32 a = (m29C / 6.0f) * m290;
if (m294 >= b && m294 < a) {
var_r27 = true;
}
+34 -22
View File
@@ -59,7 +59,11 @@ const dCcD_SrcCyl daObjTpost_c::m_cyl_src = {
/* SrcObjAt Type */ 0,
/* SrcObjAt Atp */ 0,
/* SrcObjAt SPrm */ 0,
#if VERSION == VERSION_DEMO
/* SrcObjTg Type */ ~(AT_TYPE_WATER | AT_TYPE_UNK20000 | AT_TYPE_WIND | AT_TYPE_UNK400000 | AT_TYPE_LIGHT),
#else
/* SrcObjTg Type */ ~(AT_TYPE_BOOMERANG),
#endif
/* SrcObjTg SPrm */ cCcD_TgSPrm_Set_e | cCcD_TgSPrm_GrpAll_e,
/* SrcObjCo SPrm */ cCcD_CoSPrm_Set_e | cCcD_CoSPrm_IsOther_e | cCcD_CoSPrm_VsGrpAll_e,
/* SrcGObjAt Se */ 0,
@@ -85,7 +89,7 @@ const dCcD_SrcCyl daObjTpost_c::m_cyl_src = {
#ifdef __MWERKS__
static
#endif
const s32 daObjTpost_c::m_send_price[] = {
const int daObjTpost_c::m_send_price[] = {
0x05,
0x0A,
0x14
@@ -101,7 +105,7 @@ static BOOL createHeap_CB(fopAc_ac_c* i_this) {
/* 0000010C-0000022C .text _createHeap__12daObjTpost_cFv */
BOOL daObjTpost_c::_createHeap() {
J3DModelData* modelData = (J3DModelData*)dComIfG_getObjectRes(m_arc_name, dRes_INDEX_TORIPOST_BDL_VPOST_e);
JUT_ASSERT(132, modelData != NULL);
JUT_ASSERT(DEMO_SELECT(131, 132), modelData != NULL);
mMorf = new mDoExt_McaMorf(
modelData,
@@ -246,7 +250,8 @@ void daObjTpost_c::deliverLetter() {
/* 00000650-000006C0 .text getReceiveLetterNum__12daObjTpost_cFv */
s16 daObjTpost_c::getReceiveLetterNum() {
s16 num = 0;
for(int i = 1; i < (int)ARRAY_SIZE(m_letter); i++) {
int letter_count = ARRAY_SIZE(m_letter);
for(int i = 1; i < letter_count; i++) {
if(dLetter_isStock(m_letter[i].mEventReg)) {
num = num + 1;
}
@@ -257,12 +262,13 @@ s16 daObjTpost_c::getReceiveLetterNum() {
/* 000006C0-00000750 .text getReadableLetterNum__12daObjTpost_cFv */
s32 daObjTpost_c::getReadableLetterNum() {
s32 num = 0;
s32 startIdx = mNumReadable != 0 ? mNumReadable : 1;
s32 readable = mNumReadable;
int num = 0;
int letter_count = ARRAY_SIZE(m_letter);
int startIdx = mNumReadable != 0 ? mNumReadable : 1;
int readable = mNumReadable;
if(readable < (int)ARRAY_SIZE(m_letter)) {
for(int i = startIdx; i < (int)ARRAY_SIZE(m_letter); i++) {
if(readable < letter_count) {
for(int i = startIdx; i < letter_count; i++) {
if(!dLetter_isStock(m_letter[i].mEventReg)) {
continue;
}
@@ -339,7 +345,7 @@ u8 daObjTpost_c::checkSendPrice() {
/* 000007B8-0000092C .text getMsgXY__12daObjTpost_cFv */
int daObjTpost_c::getMsgXY() {
s32 msgId;
u32 msgNo;
GXColor col = {0x00, 0x00, 0x00, 0x80};
cXyz pos(REG12_F(0), REG12_F(1), REG12_F(2));
cXyz scale(2.0f, 2.0f, 2.0f);
@@ -347,7 +353,7 @@ int daObjTpost_c::getMsgXY() {
switch(mPreItemNo) {
case dItemNo_NOTE_TO_MOM_e:
case dItemNo_MAGGIES_LETTER_e:
msgId = 0xCE8;
msgNo = 0xCE8;
col.r = REG12_S(0) + 0x80;
col.g = REG12_S(1) + 0x80;
col.b = REG12_S(2) + 0x80;
@@ -360,38 +366,38 @@ int daObjTpost_c::getMsgXY() {
case dItemNo_MOBLINS_LETTER_e:
setAnm(AnmPrm_POST_PUTOUT, false);
field_0x8EA = 1;
msgId = 0xCEA;
msgNo = 0xCEA;
break;
default:
setAnm(AnmPrm_POST_PUTOUT, false);
field_0x8EA = 1;
msgId = 0xCE9;
msgNo = 0xCE9;
break;
}
return msgId;
return msgNo;
}
/* 0000092C-00000990 .text getMsgNormal__12daObjTpost_cFv */
int daObjTpost_c::getMsgNormal() {
s32 msgId;
u32 msgNo;
if(field_0x8EB) {
dComIfGp_setMessageCountNumber(field_0x8F0);
msgId = 0xCF7;
msgNo = 0xCF7;
field_0x8EB = 0;
}
else {
if(dKy_daynight_check() == dKy_TIME_DAY_e) {
msgId = 0xCE5;
msgNo = 0xCE5;
}
else {
msgId = 0xCE6;
msgNo = 0xCE6;
}
}
return msgId;
return msgNo;
}
/* 00000990-000009EC .text getMsg__12daObjTpost_cFv */
@@ -858,12 +864,16 @@ void daObjTpost_c::modeProc(daObjTpost_c::Proc_e proc, int newMode) {
/* 00001758-000018CC .text _execute__12daObjTpost_cFv */
bool daObjTpost_c::_execute() {
#if VERSION == VERSION_DEMO
mNumReadable = getReadableLetterNum();
#else
if(dComIfGs_isSymbol(dSymbol_DIN_e)) {
mNumReadable = getReadableLetterNum();
}
else {
mNumReadable = 0;
}
#endif
checkOrder();
setAttention();
@@ -879,7 +889,7 @@ bool daObjTpost_c::_execute() {
mAcch.CrrPos(*dComIfG_Bgsp());
mStts.Move();
if(mCyl.ChkTgHit()) {
daObj::HitSeStart(&eyePos, current.roomNo, &mCyl, 0x0B);
daObj::HitSeStart(&eyePos, fopAcM_GetRoomNo(this), &mCyl, 0x0B);
}
daObj::HitEff_kikuzu(this, &mCyl);
fopAcM_rollPlayerCrash(this, 40.0f, 7);
@@ -926,7 +936,7 @@ void daObjTpost_c::createInit() {
dLetter_autoStock(dSv_event_flag_c::LETTER_BAITO);
}
if(dComIfGs_isEventBit(dSv_event_flag_c::UNK_1E80)) {
if(dComIfGs_isEventBit(DEMO_SELECT(dSv_event_flag_c::UNK_2D04, dSv_event_flag_c::UNK_1E80))) {
dLetter_autoStock(dSv_event_flag_c::LETTER_ORCA);
}
@@ -972,11 +982,13 @@ void daObjTpost_c::getArg() {
/* 00001BA8-00001D88 .text _create__12daObjTpost_cFv */
cPhs_State daObjTpost_c::_create() {
fopAcM_ct(this, daObjTpost_c);
fopAcM_ct_Retail(this, daObjTpost_c);
getArg();
cPhs_State step = dComIfG_resLoad(&mPhs, m_arc_name);
if(step == cPhs_COMPLEATE_e) {
fopAcM_ct_Demo(this, daObjTpost_c);
if(fopAcM_entrySolidHeap(this, createHeap_CB, 0x7E0) == 0) {
return cPhs_ERROR_e;
}
@@ -989,7 +1001,7 @@ cPhs_State daObjTpost_c::_create() {
/* 00002094-000020C4 .text _delete__12daObjTpost_cFv */
bool daObjTpost_c::_delete() {
dComIfG_resDelete(&mPhs, m_arc_name);
dComIfG_resDeleteDemo(&mPhs, m_arc_name);
return true;
}
+11 -20
View File
@@ -1714,12 +1714,6 @@ BOOL daPy_lk_c::dProcWindChange() {
/* 80130F98-8013116C .text dProcStandItemPut_init__9daPy_lk_cFv */
BOOL daPy_lk_c::dProcStandItemPut_init() {
daPy_py_c* pdVar1;
fopAc_ac_c* pfVar2;
f32 dVar5;
double in_f4;
csXyz* angle;
if (mCurProc == daPyProc_DEMO_STAND_ITEM_PUT_e) {
return true;
}
@@ -1727,27 +1721,24 @@ BOOL daPy_lk_c::dProcStandItemPut_init() {
mNormalSpeed = 0.0f;
keepItemData();
mProcVar6.m3570 = 0;
pdVar1 = (daPy_py_c*)fopAcM_getEventPartner(this);
if (pdVar1 != NULL) {
cXyz local_20 = pdVar1->current.pos - current.pos;
fopAc_ac_c* event_partner = fopAcM_getEventPartner(this);
csXyz* angle;
if (event_partner != NULL) {
cXyz local_20 = event_partner->current.pos - current.pos;
angle = fopAcM_GetShapeAngle_p(this);
angle->y = fopAcM_searchActorAngleY(this, pdVar1);
dVar5 = local_20.absXZ();
if (0.0f < dVar5) {
in_f4 = 0.5;
}
m35C8 = dVar5 - 47.0f;
angle = fopAcM_GetShapeAngle_p(pdVar1);
angle->y = fopAcM_searchActorAngleY(this, event_partner);
m35C8 = local_20.absXZ() - 47.0f;
angle = fopAcM_GetShapeAngle_p(event_partner);
} else {
m35C8 = 15.0f;
angle = fopAcM_GetShapeAngle_p(this);
}
mProcVar6.m3570 = 1;
setSingleMoveAnime(ANM_GRABWAIT, m_HIO->mGrab.m.field_0x78, 0.0f, -1, -1.0f);
pfVar2 = (fopAc_ac_c*)fopAcM_fastCreate(fpcNm_STANDITEM_e, dComIfGp_event_getPreItemNo(), &current.pos, -1, angle);
if (pfVar2 != NULL) {
mActorKeepGrab.setData(pfVar2);
fopAcM_setCarryNow(pfVar2, FALSE);
fopAc_ac_c* stand_item = (fopAc_ac_c*)fopAcM_fastCreate(fpcNm_STANDITEM_e, dComIfGp_event_getPreItemNo(), &current.pos, -1, angle);
if (stand_item != NULL) {
mActorKeepGrab.setData(stand_item);
fopAcM_setCarryNow(stand_item, FALSE);
}
return true;
}
+2
View File
@@ -127,6 +127,8 @@ static BOOL daRaceItem_Execute(daRaceItem_c* i_this) {
/* 0000073C-00000C44 .text execute__12daRaceItem_cFv */
BOOL daRaceItem_c::execute() {
daPy_getPlayerActorClass();
m_timer++;
animPlay(1.0f, 1.0f, 1.0f, 1.0f, 1.0f);
eyePos = current.pos;
+11 -11
View File
@@ -426,7 +426,7 @@ bool daRd_c::createArrowHeap() {
};
mpJntHit = JntHit_create(mpMorf->getModel(), search_data, ARRAY_SIZE(search_data));
if (mpJntHit) {
jntHit = mpJntHit;
fopAcM_SetJntHit(this, mpJntHit);
} else {
return false;
}
@@ -669,7 +669,7 @@ bool daRd_c::checkTgHit() {
cXyz* hitPos = mCyl.GetTgHitPosP();
cc_at_check(this, &atInfo);
if (mHitType == 1 || mHitType == 7 || mHitType == 8 || health <= 0) {
dComIfGp_particle_set(dPa_name::ID_AK_JN_CRITICALHITFLASH, mCyl.GetTgHitPosP());
dComIfGp_particle_set(dPa_name::ID_AK_JN_CRITICALHITFLASH, hitPos);
cXyz scale(2.0f, 2.0f, 2.0f);
dComIfGp_particle_set(dPa_name::ID_AK_JN_CRITICALHIT, hitPos, &player->shape_angle, &scale);
if (health <= 0) {
@@ -1634,7 +1634,7 @@ bool daRd_c::_execute() {
if (mMode != MODE_SILENT_PRAY && mMode != MODE_DEATH && mMode != MODE_DAMAGE &&
mMode != MODE_ATTACK && mMode != MODE_CRY && mMode != MODE_CRY_WAIT)
{
daRd_c* corpse = (daRd_c*)fopAcIt_Judge(&searchNeadDeadRd_CB, this);
daRd_c* corpse = (daRd_c*)fopAcM_Search(&searchNeadDeadRd_CB, this);
if (corpse != NULL) {
mCorpseID = fopAcM_GetID(corpse);
modeProcInit(MODE_SILENT_PRAY);
@@ -1690,7 +1690,7 @@ bool daRd_c::_execute() {
lookBack();
}
if (mbIkari) {
if (isIkari()) {
cLib_addCalc2(&mD38, l_HIO.m60, 0.1f, l_HIO.m64);
} else {
cLib_addCalc2(&mD38, 0.0f, 0.1f, l_HIO.m64);
@@ -1888,13 +1888,13 @@ void daRd_c::createInit() {
/* 000046A4-00004720 .text getArg__6daRd_cFv */
void daRd_c::getArg() {
u32 params = fopAcM_GetParam(this);
mWhichIdleAnm = fopAcM_GetParamBit(params, 0x00, 1);
u8 radiusParam = fopAcM_GetParamBit(params, 0x01, 7);
s32 areaRadius = radiusParam;
mChecksSwitch = fopAcM_GetParamBit(params, 0x08, 8);
mSwNo = fopAcM_GetParamBit(params, 0x18, 8);
if ((s32)radiusParam == 0x7F) {
u32 param = fopAcM_GetParam(this);
mWhichIdleAnm = fopAcM_GetParamBit(param, 0x00, 1);
u8 radiusParam = fopAcM_GetParamBit(param, 0x01, 7);
int areaRadius = radiusParam;
mChecksSwitch = fopAcM_GetParamBit(param, 0x08, 8);
mSwNo = fopAcM_GetParamBit(param, 0x18, 8);
if (areaRadius == 0x7F) {
areaRadius = 0;
}
mAreaRadius = l_HIO.m30 + areaRadius;
+4 -4
View File
@@ -163,7 +163,7 @@ BOOL daSwhit0_c::CreateInit() {
mColSph.SetStts(&mColStatus);
mColSph.SetC(attention_info.position);
if (dComIfGs_isSwitch(getSwNo(), current.roomNo)) {
if (dComIfGs_isSwitch(getSwNo(), fopAcM_GetRoomNo(this))) {
mState = 4;
onFlag(0x01);
}
@@ -326,7 +326,7 @@ s32 daSwhit0_c::actionOnWait() {
}
if (getType() == 0x02) {
if (!dComIfGs_isSwitch(getSwNo(), current.roomNo)) {
if (!dComIfGs_isSwitch(getSwNo(), fopAcM_GetRoomNo(this))) {
offFlag(0x01);
mState = 0;
@@ -349,7 +349,7 @@ s32 daSwhit0_c::actionOnTimer() {
fopAcM_seStart(this, JA_SE_OBJ_COL_SWC_NSTONE, 0);
}
if (dComIfGs_isSwitch(getSwNo2(), current.roomNo)) {
if (dComIfGs_isSwitch(getSwNo2(), fopAcM_GetRoomNo(this))) {
mState = 4;
}
else if (mOnTimer > 0) {
@@ -359,7 +359,7 @@ s32 daSwhit0_c::actionOnTimer() {
offFlag(0x01);
mState = 0;
dComIfGs_offSwitch(getSwNo(), current.roomNo);
dComIfGs_offSwitch(getSwNo(), fopAcM_GetRoomNo(this));
}
return TRUE;
+6 -8
View File
@@ -70,8 +70,8 @@ bool daTagvolcano::Act_c::check_timer_clear() {
/* 00000338-000003BC .text _delete__Q212daTagvolcano5Act_cFv */
bool daTagvolcano::Act_c::_delete() {
if (check_timer_clear() && dComIfG_getTimerMode() == 3)
dComIfG_TimerDeleteRequest();
if (check_timer_clear())
dComIfG_TimerDeleteRequest(3);
fopAcM_offSwitch(this, prm_get_swSave());
return true;
}
@@ -103,8 +103,7 @@ bool daTagvolcano::Act_c::_execute() {
mDoAud_seStart(JA_SE_ISLE_TIMER_0);
dComIfGp_getVibration().StartShock(6, -33, cXyz(0.0f, 1.0f, 0.0f));
fopAcM_offSwitch(this, prm_get_swSave());
if (dComIfG_getTimerMode() == 3)
dComIfG_TimerDeleteRequest();
dComIfG_TimerDeleteRequest(3);
field_0x298 = 0;
field_0x299 = 0;
@@ -129,8 +128,8 @@ bool daTagvolcano::Act_c::_execute() {
}
} else {
if (dComIfGs_isTbox(prm_get_bitTRB())) {
if (dComIfG_getTimerPtr() != NULL && dComIfG_getTimerMode() == 3)
dComIfG_TimerDeleteRequest();
if (dComIfG_getTimerPtr() != NULL)
dComIfG_TimerDeleteRequest(3);
if (mType == 1)
dComIfGs_onEventBit(dSv_event_flag_c::UNK_1902);
else
@@ -148,8 +147,7 @@ bool daTagvolcano::Act_c::_execute() {
if (dComIfG_getTimerRestTimeMs() <= 0) {
mDoAud_seStart(JA_SE_ISLE_TIMER_0);
dComIfGp_getVibration().StartShock(6, -33, cXyz(0.0f, 1.0f, 0.0f));
if (dComIfG_getTimerMode() == 3)
dComIfG_TimerDeleteRequest();
dComIfG_TimerDeleteRequest(3);
field_0x2a4 = 1;
fopAcM_orderOtherEvent(this, "TAG_VOLCANO");