From cd0aaf656380484ee74b9df6ed5576c098d435a2 Mon Sep 17 00:00:00 2001 From: Dethrace Labs <78985374+dethrace-labs@users.noreply.github.com> Date: Sat, 27 Sep 2025 07:37:15 +1200 Subject: [PATCH] RematerialiseOpponentOnNearestSection effectively matching --- src/DETHRACE/common/opponent.c | 9 +++++---- 1 file changed, 5 insertions(+), 4 deletions(-) diff --git a/src/DETHRACE/common/opponent.c b/src/DETHRACE/common/opponent.c index 2c920eeb..21845d72 100644 --- a/src/DETHRACE/common/opponent.c +++ b/src/DETHRACE/common/opponent.c @@ -2082,6 +2082,7 @@ int RematerialiseOpponentOnNearestSection(tOpponent_spec* pOpponent_spec, br_sca return 1; } section_no = FindNearestPathSection(&pOpponent_spec->car_spec->car_master_actor->t.t.translate.t, &direction_v, &intersect, &distance); + start = &gProgram_state.AI_vehicles.path_nodes[gProgram_state.AI_vehicles.path_sections[section_no].node_indices[0]].p; finish = &gProgram_state.AI_vehicles.path_nodes[gProgram_state.AI_vehicles.path_sections[section_no].node_indices[1]].p; BrVector3Copy(&pOpponent_spec->car_spec->car_master_actor->t.t.translate.t, &intersect); PointActorAlongThisBloodyVector(pOpponent_spec->car_spec->car_master_actor, &direction_v); @@ -2089,12 +2090,12 @@ int RematerialiseOpponentOnNearestSection(tOpponent_spec* pOpponent_spec, br_sca if (RematerialiseOpponent(pOpponent_spec, pSpeed)) { pOpponent_spec->car_spec->brake_force = 0.0f; pOpponent_spec->car_spec->acc_force = 0.0f; - distance_to_end = BrVector3Length(&car_to_end); - if (distance_to_end >= 5.0f) { - pOpponent_spec->car_spec->acc_force = pOpponent_spec->car_spec->M / 2.0f; - } else { + + if (distance_to_end < 5.0f) { pOpponent_spec->car_spec->brake_force = pOpponent_spec->car_spec->M * 15.0f; + } else { + pOpponent_spec->car_spec->acc_force = pOpponent_spec->car_spec->M / 2.0f; } } return 0;