add player formatting and checking for active multiplayer instance

This commit is contained in:
2025-02-13 17:15:46 +10:00
parent fff9a3eb11
commit 07cfb07cc6
7 changed files with 46 additions and 29 deletions

View File

@@ -11,6 +11,7 @@ const FALL_ACCELERATION: float = 25
@export var _respawn_height: float = -100
var _peer_id: int = 1
var _respawn_point: Vector3
@onready var _camera: Camera3D = $Camera3D
@@ -18,32 +19,32 @@ var _respawn_point: Vector3
func _enter_tree() -> void:
set_multiplayer_authority(str(name).to_int())
_peer_id = str(name).to_int()
set_multiplayer_authority(_peer_id)
func _ready() -> void:
_name_label.text = str(name)
if not is_multiplayer_authority():
return
_respawn_point = global_position
_camera.make_current()
Referencer.player = self
Referencer.main_camera = _camera
print("Player ", name, " ready")
Referencer.camera = _camera
print("Player ", Networker.format_player(_peer_id), " ready")
func _exit_tree() -> void:
if not is_multiplayer_authority():
if Networker.is_active() and not is_multiplayer_authority():
return
Referencer.player = null
Referencer.main_camera = null
print("Player ", name, " exiting tree")
Referencer.camera = null
print("Player ", Networker.format_player(_peer_id), " exiting tree")
func _process(delta: float) -> void:
if not is_multiplayer_authority():
if Networker.is_active() and not is_multiplayer_authority():
Debugger.vector(
"look" + str(name),
_camera.global_position,