From 1132209270a5b258b09dc20ace5330064167359c Mon Sep 17 00:00:00 2001 From: Sonic Dreamcaster Date: Sun, 2 Mar 2025 00:50:12 -0300 Subject: [PATCH] CoCarrier lag compensation --- src/overlays/ovl_i1/fox_co.c | 18 ++++++++++++------ 1 file changed, 12 insertions(+), 6 deletions(-) diff --git a/src/overlays/ovl_i1/fox_co.c b/src/overlays/ovl_i1/fox_co.c index e84b306e..dbdb48a1 100644 --- a/src/overlays/ovl_i1/fox_co.c +++ b/src/overlays/ovl_i1/fox_co.c @@ -2233,18 +2233,24 @@ void Corneria_CoCarrier_Update(CoCarrier* this) { Math_SmoothStepToF(&this->vel.y, 0.0f, 0.1f, 2.0f, 0.00001f); Math_SmoothStepToF(&this->vel.z, 0.0f, 0.1f, 2.0f, 0.00001f); - this->obj.rot.z -= 2.0f; - this->gravity = 1.0f; + // @port: Adjust gravity and rot to compensate the lack of lag. + // this->obj.rot.z -= 2.0f + // this->gravity = 1.0f; + this->obj.rot.z -= 2.0f - 0.86f; + this->gravity = 1.0f - 0.43f; if (this->obj.pos.y < (gGroundHeight + 150.0f)) { gCameraShake = 100; func_effect_80081A8C(this->obj.pos.x, this->obj.pos.y, this->obj.pos.z, 40.0f, 12); - this->timer_050 = 20; + + // @port: Adjust timings to compensate the lack of lag. + // this->timer_050 = 20; + this->timer_050 = 40; this->vel.y = -10.0f; this->gravity = 0.0f; this->fwork[17] = 20.0f; Corneria_CoCarrier_WaterSplash(this); - this->state = 10; + this->state = CARRIER_EXPLODE; } break; @@ -2263,8 +2269,8 @@ void Corneria_CoCarrier_Update(CoCarrier* this) { break; } - temp_a0 = (float*)SEGMENTED_TO_VIRTUAL(aCoCarrierUpperHitbox); - temp_a1 = (float*)SEGMENTED_TO_VIRTUAL(aCoCarrierBottomHitbox); + temp_a0 = (float*) SEGMENTED_TO_VIRTUAL(aCoCarrierUpperHitbox); + temp_a1 = (float*) SEGMENTED_TO_VIRTUAL(aCoCarrierBottomHitbox); temp_a0[9] = -100000.0f; temp_a0[3] = 172.0f; temp_a1[9] = -100000.0f;