From 4d72d3522b64706f4a2f3de4a1b5fc14a022f00b Mon Sep 17 00:00:00 2001 From: Jano211 <107213310+Jano211@users.noreply.github.com> Date: Sun, 5 Jan 2025 20:43:15 +0100 Subject: [PATCH] Better bumps on normal tracks --- DynObj.cpp | 18 +++++++++++++----- 1 file changed, 13 insertions(+), 5 deletions(-) diff --git a/DynObj.cpp b/DynObj.cpp index b9022a0f..46d099b5 100644 --- a/DynObj.cpp +++ b/DynObj.cpp @@ -3529,11 +3529,19 @@ bool TDynamicObject::Update(double dt, double dt1) .pitch( frequency ) .gain( volume ) .play(); - // crude bump simulation, drop down on even axles, move back up on the odd ones - //MoverParameters->AccVert += (MoverParameters->Vel*0.1f) * - MoverParameters->AccVert += - clamp(-1.0, 1.0, (MoverParameters->Vel / ( 1 + MoverParameters->Vmax )) * MyTrack->iDamageFlag * ((axleindex % 2) != 0 ? 1 : -1)); - + // crude bump simulation, drop down on even axles, move back up on + // the odd ones + // MoverParameters->AccVert += (MoverParameters->Vel*0.1f) * + if(MyTrack->eType == tt_Normal) + { + MoverParameters->AccVert += + clamp(0.0, 4.0, + (clamp(0.0, MoverParameters->Vmax, + MoverParameters->Vmax - + (MoverParameters->Vel + + MoverParameters->Vmax * 0.32f))) * + .05f * (MyTrack->iDamageFlag * 0.25f)); + } if (MyTrack->eType == tt_Switch){ MoverParameters->AccS += clamp(0.0, 1.0,