diff options
Diffstat (limited to 'client/game.gd')
-rw-r--r-- | client/game.gd | 10 |
1 files changed, 9 insertions, 1 deletions
diff --git a/client/game.gd b/client/game.gd index e760186b..4e0bfe52 100644 --- a/client/game.gd +++ b/client/game.gd @@ -22,6 +22,7 @@ signal update_players(players: Dictionary) signal data_updated() signal player_set_input_enabled(b: bool) signal joined() +signal left() var player_id: int = -1 var item_names: Array = [] @@ -32,6 +33,8 @@ var tile_collide: Array = [] var tile_interact: Array = [] var map_names: Array = [] var in_lobby := false +var is_joined := false +var join_sent := false var marker_target = Vector3(0,0,0) var players := {} @@ -90,6 +93,7 @@ func _ready(): player_instance = ControllablePlayer.new(player, player_name, pos, character, self) camera.target = player_instance player_set_input_enabled.connect(player_instance.set_input_enabled) + is_joined = true joined.emit() else: player_instance = Player.new(player, player_name, pos, character, self) @@ -109,7 +113,10 @@ func _ready(): mp.remove_player.connect(func(id: int): var player: Player = players.get(id) if id == player_id: - camera.target = self + is_joined = false + join_sent = false + left.emit() + camera.target = $Center if player != null: if player.hand != null: player.hand.queue_free() @@ -235,6 +242,7 @@ func _ready(): ) func join(): + join_sent = true mp.send_join(Global.profile["username"], Global.profile["character"]) func _process(delta): |