aboutsummaryrefslogtreecommitdiff
path: root/client/game.gd
diff options
context:
space:
mode:
Diffstat (limited to 'client/game.gd')
-rw-r--r--client/game.gd32
1 files changed, 17 insertions, 15 deletions
diff --git a/client/game.gd b/client/game.gd
index 67b92679..ad9467ca 100644
--- a/client/game.gd
+++ b/client/game.gd
@@ -24,30 +24,32 @@ extends Node3D
var marker_target = Vector3(0,0,0)
var players := {}
-# Called when the node enters the scene tree for the first time.
func _ready():
+ mp.connect("connection_closed", func(reason: String):
+ Global.error_message = reason;
+ $SceneTransition.transition_to("res://menu/error_menu.tscn")
+ )
+
await mp.init
if mp.player_id == -1:
push_error("multiplayer has not been initialized")
- mp.connect("add_player",
- func(player: int, player_name: String, pos: Vector2, character: int):
- var player_instance: Player
- if player == mp.player_id:
- player_instance = ControllablePlayer.new(player, player_name, pos, character, self)
- camera.target = player_instance
- else:
- player_instance = Player.new(player, player_name, pos, character, self)
- players[player] = player_instance
- add_child(player_instance)
+ mp.connect("add_player", func(player: int, player_name: String, pos: Vector2, character: int):
+ var player_instance: Player
+ if player == mp.player_id:
+ player_instance = ControllablePlayer.new(player, player_name, pos, character, self)
+ camera.target = player_instance
+ else:
+ player_instance = Player.new(player, player_name, pos, character, self)
+ players[player] = player_instance
+ add_child(player_instance)
)
mp.connect("update_map", map.update)
- mp.connect("position",
- func(player: int, pos: Vector2, rot: float):
- var player_instance: Player = players[player]
- player_instance.update_position(pos, rot)
+ mp.connect("position", func(player: int, pos: Vector2, rot: float):
+ var player_instance: Player = players[player]
+ player_instance.update_position(pos, rot)
)
mp.connect("remove_player", func(id: int):