Files
CarRacer/player_car.gd
2020-12-06 13:51:22 +01:00

25 lines
693 B
GDScript

extends PathFollow2D
export (float) var speed = 0.250
var position_on_track := 0.0
var target_on_track := 0.0
func _process(delta):
# Check if a lap was completed
if int(position_on_track) > Global.laps:
Global.laps += 1
# Move the player until target_on_track
elif target_on_track - position_on_track > 0.01:
# Speed up car as the target_on_track goes further
var speed_mod = int(clamp((target_on_track - position_on_track) / speed, 1.0, 4.0))
position_on_track += speed * delta * speed_mod
set_unit_offset(min(position_on_track, target_on_track))
else:
position_on_track = target_on_track
func _on_RaceTrack_player_moved(track_offset):
target_on_track = track_offset