diff --git a/scripting/shavit-replay.sp b/scripting/shavit-replay.sp index b5499115..074c22e7 100644 --- a/scripting/shavit-replay.sp +++ b/scripting/shavit-replay.sp @@ -817,7 +817,17 @@ public Action OnPlayerRunCmd(int client, int &buttons, int &impulse, float vel[3 MakeVectorFromPoints(vecCurrentPosition, vecPosition, vecVelocity); ScaleVector(vecVelocity, gF_Tickrate); - TeleportEntity(client, NULL_VECTOR, vecAngles, vecVelocity); + float fDistance = GetVectorDistance(vecCurrentPosition, vecPosition); + + if((gI_ReplayTick[iReplayBotStyle] % RoundToFloor(gF_Tickrate * 1.5)) == 0 && GetVectorLength(vecVelocity) < 2.0 * fDistance) + { + TeleportEntity(client, vecPosition, vecAngles, vecVelocity); + } + + else + { + TeleportEntity(client, NULL_VECTOR, vecAngles, vecVelocity); + } return Plugin_Changed; }