Potential ship fix

This commit is contained in:
Chris Bell 2024-12-19 09:04:45 -06:00
parent dd7aa1899f
commit d82445114d

View File

@ -71,9 +71,11 @@ func _physics_process(_delta):
angular_velocity.y = clamp(angular_velocity.y, -max_turn_speed, max_turn_speed)
# Self level slowly if host
global_rotation.x = lerpf(global_rotation.x, 0, 0.1)
global_rotation.z = lerpf(global_rotation.z, 0, 0.1)
# Sync position and rotation for all players except the piloting player
if piloting_player == null or !piloting_player.is_network_authority:
if old_global_position_cache != global_position:
NetworkManager.sync_property(uuid, "global_position", global_position)
@ -110,7 +112,13 @@ func _add_ship_helm(_ship_helm_scene: PackedScene):
func _on_property_update(uuid: String, property_name: String, value: Variant):
if NetworkManager.node_map.has(uuid):
var node = NetworkManager.node_map[uuid]
if node != self:
node.set(property_name, value)
else:
if property_name == "global_position" and (global_position - value).length() > 0.01:
global_position = value
elif property_name == "global_rotation" and (global_rotation - value).length() > 0.01:
global_rotation = value
else:
printerr("Received property update but node_id is wrong? Expected " + str(uuid) + " but got " + str(uuid))