diff --git a/3d/truck_town/vehicle.gd b/3d/truck_town/vehicle.gd index 45870dac..4a27512e 100644 --- a/3d/truck_town/vehicle.gd +++ b/3d/truck_town/vehicle.gd @@ -10,6 +10,8 @@ var steer_target = 0 export var engine_force_value = 40 func _physics_process(delta): + var fwd_mps = transform.basis.xform_inv(linear_velocity).x + if Input.is_action_pressed("ui_left"): steer_target = STEER_LIMIT elif Input.is_action_pressed("ui_right"): @@ -23,7 +25,10 @@ func _physics_process(delta): engine_force = 0 if Input.is_action_pressed("ui_down"): - brake = 1 + if (fwd_mps >= -1): + engine_force = -engine_force_value + else: + brake = 1 else: brake = 0.0