Added controller activation signal

This commit is contained in:
2024-02-24 15:30:41 +01:00
parent 3ba39992bc
commit d1b46fb9e0
10 changed files with 42 additions and 24 deletions

View File

@ -21,10 +21,9 @@ func handle_packet(data: PackedByteArray):
%Client.log("Add player: %s %s @ %v" % [player_id, player_name, server_position])
var player := spawn_player(player_id, server_position)
player.set_player_name(player_name)
spawn_player(player_id, player_name, server_position)
func spawn_player(id: String, position: Vector3) -> Player:
func spawn_player(id: String, nick: String, position: Vector3) -> Player:
var player: Player
if Global.players.has(id):
@ -32,20 +31,23 @@ func spawn_player(id: String, position: Vector3) -> Player:
if id == Global.account.id:
Global.player = player
return player
player = player_scene.instantiate()
player.id = id
player.position = position
var controller: Controller
if id == Global.account.id:
player.controller = PlayerController.new(player)
controller = PlayerController.new(player)
Global.player = player
main_player_spawned.emit(player)
else:
player.controller = ProxyController.new(player)
player.add_child(player.controller)
controller = ProxyController.new(player)
player.set_player_name(nick)
player.add_child(controller)
Global.players.add(player)
controller.control(player)
return player