Public repository for MUR pre alpha
You can not select more than 25 topics Topics must start with a letter or number, can include dashes ('-') and can be up to 35 characters long.
 
 
 
 
 

29 lines
769 B

extends Spatial
var road_ray:RayCast
var collider
var road:Road
var road_index:int = 0
puppet var slave_transform:Transform
signal road_entered(road)
func _ready():
road_ray = get_node("ray")
func _physics_process(delta):
if is_network_master():
if road_ray.is_colliding():
if road_ray.get_collider() != collider:
var parent = road_ray.get_collider().get_parent()
if parent is Road && (road == null && road_index == parent.get_index() || road.get_index() == parent.get_index() - 1) && !parent.is_preview():
collider = road_ray.get_collider()
road = parent
road_index = road.get_index()
emit_signal("road_entered",road)
rset_unreliable("slave_transform", get_global_transform())
else:
set_global_transform(slave_transform)