Improve ECB behaviour, add ECB interpolation, wall/ceiling support etc (#94)
CI / build-and-test (push) Successful in 1m43s
CI / production-build (push) Successful in 11m52s

Reviewed-on: #94
Co-authored-by: Álex Román Núñez <eirexe@eirteam.moe>
This commit was merged in pull request #94.
This commit is contained in:
2026-10-13 19:20:29 +00:00
committed by EIREXE
parent f1da5c1172
commit 472a0b6a19
7 changed files with 874 additions and 163 deletions
+4 -6
View File
@@ -134,12 +134,10 @@ pub fn collision_interrupt(
}
let res = ctx.air_collide_with_stage(can_ignore_soft_platforms)?;
let diff = res.hit_position - ctx.translation.0;
ctx.ecb.bottom -= diff;
ctx.ecb.top -= diff;
ctx.ecb.left -= diff;
ctx.ecb.right -= diff;
ctx.translation.0 = res.hit_position;
ctx.translation.0 = res.resolved_translation;
let bottom_offset = ctx.ecb.rebase_onto_bottom();
ctx.translation.0 += bottom_offset;
*ctx.desired_ecb = crate::fighter::ecb::FighterDesiredECB::from(*ctx.ecb);
ctx.presentation_snap.0 = true;
ctx.surface.land(res.line_id, ctx.ledge_info);
Some(FighterState::Land(LandingState::create(landing_type)))