summaryrefslogtreecommitdiff
path: root/src
diff options
context:
space:
mode:
Diffstat (limited to 'src')
-rw-r--r--src/d/actor/d_a_salvage_tbox.cpp264
-rw-r--r--src/d/actor/d_a_ship.cpp28
-rw-r--r--src/d/actor/d_a_tbox.cpp10
-rw-r--r--src/d/d_magma.cpp4
4 files changed, 145 insertions, 161 deletions
diff --git a/src/d/actor/d_a_salvage_tbox.cpp b/src/d/actor/d_a_salvage_tbox.cpp
index de4c4717..cf4693cc 100644
--- a/src/d/actor/d_a_salvage_tbox.cpp
+++ b/src/d/actor/d_a_salvage_tbox.cpp
@@ -20,85 +20,80 @@ const f32 daSTBox_c::m_shadow_depth = 2000.0f;
const f32 daSTBox_c::m_shadow_scroll = -0.1f;
const f32 daSTBox_c::m_shadow_scale = 4.0f;
-
-
-
-
-
/* 00000078-00000128 .text getMaxWaterY__25daSTBox_shadowEcallBack_cFPQ29JGeometry8TVec3<f> */
-void daSTBox_shadowEcallBack_c::getMaxWaterY(JGeometry::TVec3<float>* shipPos) {
+void daSTBox_shadowEcallBack_c::getMaxWaterY(JGeometry::TVec3<f32>* shipPos) {
if (daSea_ChkArea(shipPos->x, shipPos->z)) {
f32 wave = daSea_calcWave(shipPos->x, shipPos->z);
shipPos->y = wave + 2.0f;
- f32 waterY = field_0x0C;
+ f32 waterY = mWaterFlatY;
if (waterY > shipPos->y) {
shipPos->y = waterY + 2.0f;
}
}
else {
- if (field_0x0C != -G_CM3D_F_INF ) {
- shipPos->y = field_0x0C + 2.0f;
+ if (mWaterFlatY != -G_CM3D_F_INF ) {
+ shipPos->y = mWaterFlatY + 2.0f;
}
else {
- shipPos->y = mpWaterFlatY;
+ shipPos->y = mWaterY;
}
}
}
/* 00000128-000002F4 .text execute__25daSTBox_shadowEcallBack_cFP14JPABaseEmitter */
void daSTBox_shadowEcallBack_c::execute(JPABaseEmitter* emitter) {
- GXColor diff;
GXColor amb;
- s16 yAngle;
- u8 alpha;
- f32 waterY;
- s16 alpha_arr[2];
- dKy_get_seacolor(&diff, &amb);
- emitter->setGlobalPrmColor(diff.r, diff.g, diff.b);
+ GXColor diff;
+ dKy_get_seacolor(&amb, &diff);
+ emitter->setGlobalPrmColor(amb.r, amb.g, amb.b);
if (field_0x4 != 0) {
- emitter->setMaxFrame(-1);
- emitter->stopCreateParticle();
+ emitter->becomeInvalidEmitter();
mpEmitter = NULL;
}
- if (emitter->mMaxFrame == 0 && field_0x4 == 0) {
- f32 scaleY = position.y;
- f32 scaleZ = position.z;
- emitter->setGlobalTranslation(position.x, scaleY, scaleZ);
+ if (emitter->isContinuousParticle() && field_0x4 == 0) {
+ JGeometry::TVec3<f32> trans(mPos.x, mPos.y, mPos.z);
+ emitter->setGlobalTranslation(trans);
+ s16 yAngle;
if (field_0x50 >= 0.0f) {
yAngle = mpAngle->y;
} else {
yAngle = (s16)(mpAngle->y + 0x8000);
}
- JGeometry::TVec3<s16> rotation((s16)0, yAngle, (s16)0);
+ JGeometry::TVec3<s16> rotation;
+ rotation.x = 0;
+ rotation.y = yAngle;
+ rotation.z = 0;
emitter->setGlobalRotation(rotation);
- waterY = mpWaterY;
- if (waterY < 0.0f || waterY > 2000.0f) {
+ f32 f3 = 2000.0f;
+ u8 alpha;
+ if (mDepth < 0.0f || mDepth > f3) {
alpha = 0;
} else {
- alpha = (double)(((2000.0f - waterY) * 120.0f) / 2000.0f);
+ u32 r0 = 120;
+ alpha = ((f32)r0 * (f3 - mDepth)) / f3;
}
emitter->setGlobalAlpha(alpha);
} else {
JGeometry::TVec3<f32> trans;
emitter->getGlobalTranslation(trans);
- trans.y = mpWaterFlatY;
+ trans.y = mWaterY;
emitter->setGlobalTranslation(trans);
- alpha_arr[0] = emitter->getGlobalAlpha();
- cLib_chaseS(alpha_arr, 0, 5);
- alpha_arr[0] = 0xff;
- emitter->setGlobalAlpha(alpha_arr[0]);
+ s16 alpha = emitter->getGlobalAlpha();
+ cLib_chaseS(&alpha, 0, 5);
+ alpha = 0xFF;
+ emitter->setGlobalAlpha(alpha);
}
- JSUPtrLink* link = emitter->getParticleList()->getFirstLink();
+ JSULink<JPABaseParticle>* link = emitter->getParticleList()->getFirst();
while(link != 0) {
- JSUPtrLink* next = link->getNext();
+ JSULink<JPABaseParticle>* nextLink = link->getNext();
- JPABaseParticle* ptcl = (JPABaseParticle*)link->getObjectPtr();
+ JPABaseParticle* ptcl = link->getObject();
JGeometry::TVec3<f32> ptclPos;
ptcl->getOffsetPosition(ptclPos);
getMaxWaterY(&ptclPos);
ptcl->setOffsetPosition(ptclPos);
- link = next;
+ link = nextLink;
}
}
@@ -106,22 +101,21 @@ void daSTBox_shadowEcallBack_c::execute(JPABaseEmitter* emitter) {
void daSTBox_shadowEcallBack_c::draw(JPABaseEmitter* emitter) {
f32 fVar2;
f32 fVar1;
- f32 fVar3;
u32 particleCount = emitter->getParticleList()->getNumLinks();
if (particleCount >= 6){
if (dPa_control_c::isStatus(1)) {
GXSetZMode(GX_FALSE, GX_NEVER, GX_FALSE);
}
u32 steps = (u32)((f32)particleCount * 0.33333334f);
- u32 stepsMinusOne = steps - 1;
- fVar3 = (1.0f / (f32)stepsMinusOne);
+ f32 f30 = 0.5f;
+ f32 fVar3 = (1.0f / (f32)(steps - 1));
GXSetCullMode(GX_CULL_NONE);
Mtx mtx;
- PSMTXIdentity(mtx);
- mtx[1][1] = mpDepth;
- mtx[1][3] = field_0x48 * emitter->getFrame();
+ cMtx_identity(mtx);
+ mtx[1][1] = mExScaleY;
+ mtx[1][3] = mExTransY * emitter->getFrame();
GXLoadTexMtxImm(mtx, GX_TEXMTX1, GX_MTX2x4);
- GXSetTexCoordGen2(GX_TEXCOORD1, GX_TG_MTX2x4, GX_TG_TEX0, GX_TEXMTX1, GX_FALSE, GX_PTIDENTITY);
+ GXSetTexCoordGen(GX_TEXCOORD1, GX_TG_MTX2x4, GX_TG_TEX0, GX_TEXMTX1);
JSULink<JPABaseParticle>* link = emitter->getParticleList()->getFirst();
u32 i = 0;
fVar1 = 0.0f;
@@ -130,22 +124,22 @@ void daSTBox_shadowEcallBack_c::draw(JPABaseEmitter* emitter) {
GXBegin(GX_TRIANGLESTRIP, GX_VTXFMT0, 6);
u32 j = 0;
fVar2 = 0.0f;
- for(; j < 3; j++) {
+ for(; j < ARRAY_SIZE(field_0x14); j++) {
JGeometry::TVec3<f32> ptclPos;
link->getObject()->getGlobalPosition(ptclPos);
getMaxWaterY(&ptclPos);
GXPosition3f32(ptclPos.x, ptclPos.y, ptclPos.z);
GXTexCoord2f32(fVar2, fVar1);
- GXPosition3f32(mPos[j].x, mPos[j].y, mPos[j].z);
+ GXPosition3f32(field_0x14[j].x, field_0x14[j].y, field_0x14[j].z);
GXTexCoord2f32(fVar2, fVar1 - fVar3);
- mPos[j].set(ptclPos);
- fVar2 += 0.5f;
+ field_0x14[j].set(ptclPos);
+ fVar2 += f30;
link = link->getNext();
}
GXEnd();
} else {
- for (int j = 0; j < 3; j++) {
- link->getObject()->getGlobalPosition(mPos[j]);
+ for (int j = 0; j < ARRAY_SIZE(field_0x14); j++) {
+ link->getObject()->getGlobalPosition(field_0x14[j]);
link = link->getNext();
}
}
@@ -154,7 +148,7 @@ void daSTBox_shadowEcallBack_c::draw(JPABaseEmitter* emitter) {
}
/* 00000570-000005D8 .text getWaterY__F4cXyz */
-f32 getWaterY(cXyz shipPos) {
+static f32 getWaterY(cXyz shipPos) {
f32 waterY;
shipPos.y += 500.0f;
if (daSea_ChkArea(shipPos.x, shipPos.z)) {
@@ -168,7 +162,7 @@ f32 getWaterY(cXyz shipPos) {
/* 000005D8-000006E8 .text _delete__9daSTBox_cFv */
bool daSTBox_c::_delete() {
- for (int i = 0; i < 3; i++) {
+ for (int i = 0; i < ARRAY_SIZE(field_0x29C); i++) {
if (field_0x29C[i] != NULL) {
field_0x29C[i]->quitImmortalEmitter();
field_0x29C[i]->becomeInvalidEmitter();
@@ -176,19 +170,12 @@ bool daSTBox_c::_delete() {
}
}
mRippleCallBack.end();
- JPABaseEmitter* callbackEmitter = shadowCallback.getEmitter();
- if (callbackEmitter != NULL) {
- callbackEmitter->mpEmitterCallBack = NULL;
- callbackEmitter = shadowCallback.getEmitter();
- callbackEmitter->setMaxFrame(-1);
- callbackEmitter->stopCreateParticle();
- }
- shadowCallback.setEmitter(NULL);
- dComIfG_resDelete(&field_0x290, m_arcname);
+ mShadowCallback.deleteCallBack();
+ dComIfG_resDelete(&mPhase, m_arcname);
u8 eventReg = dComIfGs_getEventReg(dSv_event_flag_c::UNK_ADFF);
- eventReg += 1;
if (field_0x331 == 2){
- dComIfGs_setEventReg(dSv_event_flag_c::UNK_ADFF,eventReg);
+ eventReg += 1;
+ dComIfGs_setEventReg(dSv_event_flag_c::UNK_ADFF, eventReg);
}
return TRUE;
}
@@ -202,7 +189,7 @@ static BOOL CheckCreateHeap(fopAc_ac_c* i_actor) {
/* 00000708-000007D4 .text CreateHeap__9daSTBox_cFv */
BOOL daSTBox_c::CreateHeap() {
J3DModelData* modelData = (J3DModelData*)dComIfG_getObjectRes(m_arcname, m_bdlidx[field_0x331]);
- JUT_ASSERT(0x1cd, modelData != NULL);
+ JUT_ASSERT(461, modelData != NULL);
mpModel = mDoExt_J3DModel__create(modelData, 0x80000, 0x11000022);
if (mpModel == NULL) {
return FALSE;
@@ -223,70 +210,71 @@ void daSTBox_c::CreateInit() {
field_0x324.x = craneTop.x;
field_0x324.y = craneTop.y;
field_0x324.z = craneTop.z;
- cullMtx = mpModel->getBaseTRMtx();
+ fopAcM_SetMtx(this, mpModel->getBaseTRMtx());
fopAcM_setCullSizeBox(this, -150.0f, -0.0f, -150.0f, 150.0f, 150.0f, 150.0f);
set_mtx();
- field_0x330 = base.base.mParameters;
+ field_0x330 = daSTBox_prm::getItemNo(this);
field_0x334 = 0;
+#if VERSION > VERSION_DEMO
field_0x336 = 0;
+#endif
for (int i = 0; i < 2; i++) {
- JPABaseEmitter* emitter = dComIfGp_particle_set(dPa_name::ID_IT_JN_LK_NURE_POTA00, &current.pos,
- &current.angle, NULL, 0xff, NULL, -1,
- NULL, NULL, NULL);
- field_0x29C[i] = emitter;
+ field_0x29C[i] = dComIfGp_particle_set(dPa_name::ID_IT_JN_LK_NURE_POTA00, &current.pos, &current.angle);
}
if (field_0x331 == 1 || field_0x331 == 2) {
- JPABaseEmitter* emitter = dComIfGp_particle_set(dPa_name::ID_IT_JN_LK_NURE_POTA00, &current.pos,
- &current.angle, NULL, 0xff, NULL, -1,
- NULL, NULL, NULL);
- field_0x2A4 = emitter;
+ field_0x29C[2] = dComIfGp_particle_set(dPa_name::ID_IT_JN_LK_NURE_POTA00, &current.pos, &current.angle);
- for (int i = 0; i < 3; i++) {
+ f32 f1 = 3.0f;
+ f32 f2 = 1.0f;
+ f32 f3 = 0.0f;
+ f32 f4 = 20.0f;
+ for (int i = 0; i < ARRAY_SIZE(field_0x29C); i++) {
if (field_0x29C[i] != NULL) {
field_0x29C[i]->becomeImmortalEmitter();
- JGeometry::TVec3<f32> globalScale(1.5f, 1.5f, 1.0f);
- field_0x29C[i]->setGlobalParticleScale(globalScale);
- JGeometry::TVec3<f32> emitterScale(3.0f, 1.0f, 3.0f);
+ field_0x29C[i]->setGlobalParticleScale(1.5f, 1.5f);
+ JGeometry::TVec3<f32> emitterScale(f1, f2, f1);
field_0x29C[i]->setEmitterScale(emitterScale);
- JGeometry::TVec3<f32> translation(0.0f, 20.0f, 0.0f);
+ JGeometry::TVec3<f32> translation(f3, f4, f3);
field_0x29C[i]->setEmitterTranslation(translation);
}
}
- if (shadowCallback.getEmitter() == NULL) {
- JPABaseEmitter* emitter = dComIfGp_particle_setShipTail(dPa_name::ID_AK_JN_SALVAGE00, &field_0x324,
- &current.angle, NULL, 0, &shadowCallback, -1,
- NULL, NULL, NULL);
- shadowCallback.position = field_0x324;
- shadowCallback.setField0x48(-0.1f);
- shadowCallback.setDepth(4.0f);
-
+ if (mShadowCallback.getEmitter() == NULL) {
+ dComIfGp_particle_setShipTail(dPa_name::ID_AK_JN_SALVAGE00, &field_0x324, &current.angle, NULL, 0, &mShadowCallback);
+ mShadowCallback.setPos(field_0x324);
+ mShadowCallback.setIndirectTexData(-0.1f, 4.0f);
}
} else if (field_0x331 == 0) {
+ f32 f1 = 3.5f;
+ f32 f2 = 1.0f;
+ f32 f3 = 0.0f;
+ f32 f4 = -20.0f;
for (int i = 0; i < 2; i++) {
if (field_0x29C[i] != NULL) {
+#if VERSION > VERSION_DEMO
field_0x29C[i]->becomeImmortalEmitter();
-
- JGeometry::TVec3<f32> globalScale(1.5f, 1.5f, 1.0f);
- field_0x29C[i]->setGlobalParticleScale(globalScale);
- JGeometry::TVec3<f32> emitterScale(3.5f, 1.0f, 3.5f);
+#endif
+ field_0x29C[i]->setGlobalParticleScale(1.5f, 1.5f);
+ JGeometry::TVec3<f32> emitterScale(f1, f2, f1);
field_0x29C[i]->setEmitterScale(emitterScale);
- JGeometry::TVec3<f32> translation(0.0f, -20.0f, 0.0f);
+ JGeometry::TVec3<f32> translation(f3, f4, f3);
field_0x29C[i]->setEmitterTranslation(translation);
}
}
}
- field_0x338 = -1;
+#if VERSION > VERSION_DEMO
+ mItemPID = -1;
+#endif
}
/* 00000ADC-00000BFC .text _create__9daSTBox_cFv */
cPhs_State daSTBox_c::_create() {
fopAcM_ct(this, daSTBox_c);
- field_0x331 = base.base.mParameters >> 8 & 0xf;
- cPhs_State phs_state = dComIfG_resLoad(&field_0x290, m_arcname);
+ field_0x331 = daSTBox_prm::getBoxType(this);
+ cPhs_State phs_state = dComIfG_resLoad(&mPhase, m_arcname);
if (phs_state == cPhs_COMPLEATE_e) {
if (!fopAcM_entrySolidHeap(this, CheckCreateHeap, m_heapsize[field_0x331])) {
return cPhs_ERROR_e;
@@ -300,7 +288,7 @@ cPhs_State daSTBox_c::_create() {
/* 00000BFC-00000C7C .text set_mtx__9daSTBox_cFv */
void daSTBox_c::set_mtx() {
mpModel->setBaseScale(scale);
- mDoMtx_stack_c::transS(current.pos);
+ mDoMtx_stack_c::transS(current.pos.x, current.pos.y, current.pos.z);
mDoMtx_stack_c::YrotM(current.angle.y);
mpModel->setBaseTRMtx(mDoMtx_stack_c::get());
}
@@ -328,17 +316,17 @@ bool daSTBox_c::_execute() {
static char* action_table[] = {"WAIT", "WAIT02", "WAIT_GETITEM", "WAIT_DUMMY", "DROP"};
int staffIdx = dComIfGp_evmng_getMyStaffId("STBox");
daShip_c* ship = (daShip_c*)dComIfGp_getShipActor();
- f32 waterY = 0.0;
+ f32 waterY = 0.0f;
cXyz m1020Pos;
int actIdx;
if (ship != NULL) {
- m1020Pos = ship->m1020;
+ m1020Pos.x = ship->getCraneRipplePosX();
+ m1020Pos.y = ship->getCraneRipplePosY();
+ m1020Pos.z = ship->getCraneRipplePosZ();
waterY = getWaterY(m1020Pos);
}
- if ((dComIfGp_event_runCheck())
- && !eventInfo.checkCommandTalk()
- && staffIdx != -1) {
- actIdx = dComIfGp_evmng_getMyActIdx(staffIdx, action_table, 5, 0, 0);
+ if ((dComIfGp_event_runCheck()) && !eventInfo.checkCommandTalk() && staffIdx != -1) {
+ actIdx = dComIfGp_evmng_getMyActIdx(staffIdx, action_table, ARRAY_SIZE(action_table), FALSE, 0);
if(actIdx == -1){
dComIfGp_evmng_cutEnd(staffIdx);
} else {
@@ -359,20 +347,12 @@ bool daSTBox_c::_execute() {
}
if (current.pos.y < waterY) {
- shadowCallback.setWaterFlatY(waterY + 2.0f);
- shadowCallback.field_0x0C = waterY + 2.0f;
- shadowCallback.setWaterY(waterY - current.pos.y);
- shadowCallback.position = m1020Pos;
-
+ mShadowCallback.setWaterY(waterY + 2.0f);
+ mShadowCallback.setWaterFlatY(waterY + 2.0f);
+ mShadowCallback.setDepth(waterY - current.pos.y);
+ mShadowCallback.setPos(m1020Pos);
} else {
- JPABaseEmitter* emitter = shadowCallback.getEmitter();
- if (emitter != NULL) {
- emitter->setEmitterCallBackPtr(NULL);
- emitter = shadowCallback.getEmitter();
- emitter->setMaxFrame(-1);
- emitter->stopCreateParticle();
- }
- shadowCallback.setEmitter(NULL);
+ mShadowCallback.deleteCallBack();
}
set_mtx();
return TRUE;
@@ -386,11 +366,17 @@ void daSTBox_c::initWait(int) {
/* 00000EBC-00000EC8 .text initWait02__9daSTBox_cFi */
void daSTBox_c::initWait02(int) {
field_0x332 = 20;
+#if VERSION == VERSION_DEMO
+ fpc_ProcID itemPID = fopAcM_createItemForTrBoxDemo(&current.pos, field_0x330, -1, dComIfGp_roomControl_getStayNo());
+ if (itemPID != fpcM_ERROR_PROCESS_ID_e) {
+ dComIfGp_event_setItemPartnerId(itemPID);
+ }
+#endif
}
/* 00000EC8-00000F50 .text initWaitGetItem__9daSTBox_cFi */
void daSTBox_c::initWaitGetItem(int) {
- fopDwTg_DrawQTo(&draw_tag);
+ fopAcM_offDraw(this);
for(int i = 0; i < 3; i++) {
if (field_0x29C[i] != NULL) {
field_0x29C[i]->quitImmortalEmitter();
@@ -408,7 +394,7 @@ void daSTBox_c::initWaitDummy(int) {
/* 00000F54-00000F64 .text initDrop__9daSTBox_cFi */
void daSTBox_c::initDrop(int) {
- gravity = -4.0f;
+ fopAcM_SetGravity(this, -4.0f);
}
const f32 crane_offset[] = {80.0f, 125.0f, 125.0f};
@@ -417,46 +403,46 @@ const f32 crane_offset[] = {80.0f, 125.0f, 125.0f};
BOOL daSTBox_c::actWait(int) {
daShip_c* ship = (daShip_c*)dComIfGp_getShipActor();
if (ship == NULL) {
- JUT_ASSERT(0x32b, FALSE);
+ JUT_ASSERT(DEMO_SELECT(804, 811), FALSE);
}
cXyz* craneTop = ship->getCraneTop();
if (craneTop == NULL) {
- JUT_ASSERT(0x332, FALSE);
+ JUT_ASSERT(DEMO_SELECT(811, 818), FALSE);
}
+#if VERSION > VERSION_DEMO
cXyz craneTopPos = *craneTop;
craneTopPos.y += 5000.0f;
f32 waterY = getWaterY(craneTopPos);
- current.angle.y = ship->shape_angle.y;
+#endif
+ current.angle.y = ship->getCraneHookAngleY();
cXyz craneTopPos2 = *craneTop;
craneTopPos2.y -= crane_offset[field_0x331];
current.pos = craneTopPos2;
attention_info.position = current.pos;
- if ((field_0x331 == 1 || field_0x331 == 2)
- && current.pos.y > waterY && (field_0x336 == 0)) {
+#if VERSION > VERSION_DEMO
+ if ((field_0x331 == 1 || field_0x331 == 2) && current.pos.y > waterY && (field_0x336 == 0)) {
mDoAud_subBgmStart(JA_BGM_BGN_GET_BOX);
field_0x336 = 1;
}
+#endif
if (field_0x335 == 0) {
- position = current.pos;
- position.y += 2500.0f;
- position.y = dBgS_GetWaterHeight(position);
- if (current.pos.y >position.y - 10.0f) {
- dComIfGp_particle_setShipTail(0x35c, &position,
- NULL, &scale, 0xff,
- &mRippleCallBack, -1,
- NULL, NULL, NULL);
+ mParticlePos = current.pos;
+ mParticlePos.y += 2500.0f;
+ mParticlePos.y = dBgS_GetWaterHeight(mParticlePos);
+ if (current.pos.y > mParticlePos.y - 10.0f) {
+ dComIfGp_particle_setShipTail(dPa_name::ID_IT_JN_HAMON01, &mParticlePos, NULL, &scale, 0xff, &mRippleCallBack);
mRippleCallBack.setRate(12.0f);
field_0x335 = 1;
}
}
- if ((field_0x331 == 1 || field_0x331 == 2) && ((field_0x338) == 0xffffffff)) {
- field_0x338 = fopAcM_createItemForTrBoxDemo(&current.pos,
- field_0x330, 0xffffffff,
- dStage_roomControl_c::mStayNo, 0, 0);
- if (field_0x338 != 0xffffffff) {
- g_dComIfG_gameInfo.play.mEvtCtrl.mPtItem = field_0x338;
+#if VERSION > VERSION_DEMO
+ if ((field_0x331 == 1 || field_0x331 == 2) && (mItemPID == fpcM_ERROR_PROCESS_ID_e)) {
+ mItemPID = fopAcM_createItemForTrBoxDemo(&current.pos, field_0x330, -1, dComIfGp_roomControl_getStayNo());
+ if (mItemPID != fpcM_ERROR_PROCESS_ID_e) {
+ dComIfGp_event_setItemPartnerId(mItemPID);
}
}
+#endif
return FALSE;
}
@@ -468,9 +454,8 @@ BOOL daSTBox_c::actDrop(int) {
}
if(current.pos.y < getWaterY(current.pos)) {
if(field_0x334 == 0) {
- s8 reverb = dComIfGp_getReverb(current.roomNo);
- mDoAud_seStart(JA_SE_OBJ_FALL_WATER_M, &eyePos, 0, reverb);
- fopKyM_createWpillar(&current.pos, 0.8, 1.0, 0);
+ fopAcM_seStart(this, JA_SE_OBJ_FALL_WATER_M, 0);
+ fopKyM_createWpillar(&current.pos, 0.8f, 1.0f, 0);
field_0x334 = 1;
}
mRippleCallBack.end();
@@ -483,8 +468,7 @@ BOOL daSTBox_c::actWait02(int) {
cXyz* pos = dComIfGp_getShipActor()->getCraneTop();
if (pos != NULL) {
cXyz cranePos = *pos;
- f32 offset = crane_offset[field_0x331];
- cranePos.y -= offset;
+ cranePos.y -= crane_offset[field_0x331];
current.pos = cranePos;
}
return FALSE;
diff --git a/src/d/actor/d_a_ship.cpp b/src/d/actor/d_a_ship.cpp
index a9ac1745..9e1791a8 100644
--- a/src/d/actor/d_a_ship.cpp
+++ b/src/d/actor/d_a_ship.cpp
@@ -3317,20 +3317,20 @@ void daShip_c::setRopePos() {
}
}
- m1020.x = r3->x;
- m1020.y = fVar2;
- m1020.z = r3->z;
+ mCraneRipplePos.x = r3->x;
+ mCraneRipplePos.y = fVar2;
+ mCraneRipplePos.z = r3->z;
if (mRipple.getEmitter() == NULL) {
- dComIfGp_particle_setShipTail(dPa_name::ID_AK_JN_HAMON00, &m1020, NULL, &ripple_scale, 0xFF, &mRipple);
+ dComIfGp_particle_setShipTail(dPa_name::ID_AK_JN_HAMON00, &mCraneRipplePos, NULL, &ripple_scale, 0xFF, &mRipple);
if (mRipple.getEmitter() != NULL) {
mRipple.setRate(0.0f);
if (m034F == 0) {
- fopKyM_createWpillar(&m1020, 0.7f, 0.7f, 0);
+ fopKyM_createWpillar(&mCraneRipplePos, 0.7f, 0.7f, 0);
- seStart(JA_SE_LK_SHIP_CRANE_DROP, &m1020);
+ seStart(JA_SE_LK_SHIP_CRANE_DROP, &mCraneRipplePos);
dComIfGp_getVibration().StartShock(3, 1, cXyz(0.0f, 1.0f, 0.0f));
}
@@ -3341,7 +3341,7 @@ void daShip_c::setRopePos() {
if (fVar17 < fVar2 && !m034F && mRopeCnt >= 20) {
m034F = 20;
- seStart(JA_SE_LK_SHIP_CRANE_LIFTUP, &m1020);
+ seStart(JA_SE_LK_SHIP_CRANE_LIFTUP, &mCraneRipplePos);
if (mCurMode != MODE_CRANE_UP_e) {
if (m19AC.getEmitter() == NULL) {
@@ -3356,7 +3356,7 @@ void daShip_c::setRopePos() {
}
}
- fopKyM_createWpillar(&m1020, 0.5f, 0.7f, 0);
+ fopKyM_createWpillar(&mCraneRipplePos, 0.5f, 0.7f, 0);
dComIfGp_getVibration().StartShock(3, 1, cXyz(0.0f, 1.0f, 0.0f));
@@ -3988,10 +3988,10 @@ BOOL daShip_c::execute() {
setRopePos();
mDoMtx_multVecZero(mpSalvageArmModel->getAnmMtx(VFNCR_JNT_V_CRANE_ROTATION_e), &m102C);
if (mProc == &daShip_c::procCrane || mProc == &daShip_c::procCraneUp) {
- m0434 = mRopeLine.getPos(0);
+ mCraneTop = mRopeLine.getPos(0);
}
else {
- m0434 = NULL;
+ mCraneTop = NULL;
}
}
else {
@@ -4001,7 +4001,7 @@ BOOL daShip_c::execute() {
mRopeCnt = 0;
- m0434 = NULL;
+ mCraneTop = NULL;
if (mPart == PART_CANNON_e) {
mDoMtx_multVecZero(mpCannonModel->getAnmMtx(VFNCN_JNT_CANON2_e), &m1038);
@@ -4127,8 +4127,8 @@ BOOL daShip_c::execute() {
spC0 = *m0428 - eyePos;
r23_2 = TRUE;
}
- else if ((mCurMode == 10 || mCurMode == 11) && m0434 && mRopeCnt > 0) {
- spC0 = *m0434 - eyePos;
+ else if ((mCurMode == 10 || mCurMode == 11) && mCraneTop && mRopeCnt > 0) {
+ spC0 = *mCraneTop - eyePos;
r23_2 = TRUE;
}
else if (mCurMode == 8 || distXz > 125.0f) {
@@ -4379,7 +4379,7 @@ BOOL daShip_c::shipDelete() {
mDoAud_seDeleteObject(&mTillerTopPos);
mDoAud_seDeleteObject(&m0444);
mDoAud_seDeleteObject(&m102C);
- mDoAud_seDeleteObject(&m1020);
+ mDoAud_seDeleteObject(&mCraneRipplePos);
mDoAud_seDeleteObject(&m1038);
dComIfGp_clearPlayerStatus1(0, daPyStts1_SAIL_e);
dComIfG_resDelete(&mPhs, l_arcName);
diff --git a/src/d/actor/d_a_tbox.cpp b/src/d/actor/d_a_tbox.cpp
index 8e639646..a096f0e0 100644
--- a/src/d/actor/d_a_tbox.cpp
+++ b/src/d/actor/d_a_tbox.cpp
@@ -562,7 +562,7 @@ s32 daTbox_c::boxCheck() {
cXyz playerChestDiff = player->current.pos - home.pos;
if (playerChestDiff.abs2XZ() < SQUARE(100.0f)) {
- if (fopAcM_seenActorAngleY(this, dComIfGp_getPlayer(0)) < 0x2000 && fopAcM_seenActorAngleY(player, this) < 0x2000) {
+ if (fopAcM_seenPlayerAngleY(this) < 0x2000 && fopAcM_seenActorAngleY(player, this) < 0x2000) {
return TRUE;
}
}
@@ -611,19 +611,19 @@ void daTbox_c::darkProc() {
/* 0000172C-000017CC .text volmProc__8daTbox_cFv */
void daTbox_c::volmProc() {
if (mOpenTimer == 36) {
- mSmokeEmitter->mGlobalPrmColor.a = 0xFF;
+ mSmokeEmitter->setGlobalAlpha(0xFF);
}
else if (mOpenTimer >= 0xB5) {
dKy_plight_cut(&mPLight);
dKy_efplight_cut(&mEfLight);
- mSmokeEmitter->mGlobalPrmColor.a = 0;
+ mSmokeEmitter->setGlobalAlpha(0);
mSmokeEmitter->becomeInvalidEmitter();
mSmokeEmitter = NULL;
}
else if (mOpenTimer > 0x9C) {
- mSmokeEmitter->mGlobalPrmColor.a = (0xB5 - mOpenTimer) * 0x0A;
+ mSmokeEmitter->setGlobalAlpha((0xB5 - mOpenTimer) * 0x0A);
}
}
@@ -896,7 +896,7 @@ void daTbox_c::OpenInit() {
mSmokeEmitter = dComIfGp_particle_set(dPa_name::ID_IT_JN_TAKARA_VOLM, &current.pos, &current.angle);
if (mSmokeEmitter != NULL) {
- mSmokeEmitter->mGlobalPrmColor.a = 0;
+ mSmokeEmitter->setGlobalAlpha(0);
}
}
diff --git a/src/d/d_magma.cpp b/src/d/d_magma.cpp
index 043cdc54..20450a5c 100644
--- a/src/d/d_magma.cpp
+++ b/src/d/d_magma.cpp
@@ -250,8 +250,8 @@ dMagma_packet_c::dMagma_packet_c() {
ResTIMG* col = (ResTIMG*)dComIfG_getObjectRes("Magma", dRes_INDEX_MAGMA_BTI_MAG_COL_e);
mDoLib_setResTimgObj(col, &mColTexObj, 0, NULL);
- mDoMtx_identity(mFloorMtx);
- mDoMtx_identity(mBallMtx);
+ cMtx_identity(mFloorMtx);
+ cMtx_identity(mBallMtx);
mTimer = 0.0f;
}