From 39544768f2ff0ba889d6185d54f3ff5198c2b9e1 Mon Sep 17 00:00:00 2001 From: Luna Date: Sat, 26 May 2018 15:24:54 -0400 Subject: [PATCH] Fix non-blocking errors that clutter console --- scripts/lobby.gd | 36 +++++++++++++++++++++--------------- scripts/networking.gd | 4 ++-- 2 files changed, 23 insertions(+), 17 deletions(-) diff --git a/scripts/lobby.gd b/scripts/lobby.gd index 7aab4cb..fc00dd2 100644 --- a/scripts/lobby.gd +++ b/scripts/lobby.gd @@ -76,11 +76,13 @@ func _send_name(): networking.set_info_from_server("username", name) func _check_begun(): - var game_started = networking.players[1].begun - if game_started: - start_game_button.show() - # The "Ready" toggle doesn't really make sense on a started game - ready_button.hide() + if networking.players.has(1) and networking.players[1].has("begun"): + var game_started = networking.players[1].begun + if game_started: + start_game_button.show() + start_game_button.text = "Join game" + # The "Ready" toggle doesn't really make sense on a started game + ready_button.hide() func render_player_list(): _check_begun() @@ -89,17 +91,21 @@ func render_player_list(): for p in networking.players: var player = networking.players[p] # A spectating server is just a dedicated server, ignore it - if not (player.spectating and p == 1): - list += "%-15s " % player.username - list += "%-10s " % hero_names[player.hero] - var team_format = "%-11s" - if player.is_right_team: - list += team_format % "Right Team" - else: - list += team_format % "Left Team" - var ready_text = "Ready" if player.ready else "" + if p and player.has("spectating") and not (player.spectating and p == 1): + var username = player.username if player.has("username") else "Loading..." + list += "%-15s " % username + var hero = hero_names[player.hero] if player.has("hero") else "Loading..." + list += "%-10s " % hero + var team = "Loading..." + if player.has("is_right_team"): + if player.is_right_team: + team = "Right Team" + else: + team = "Left Team" + list += "%-11s" % team + var ready_text = "Ready" if player.has("ready") and player.ready else "" list += "%-6s" % ready_text - if player.spectating: + if player.has("spectating") and player.spectating: list += "Spectating" list += "\n" get_node("PlayerList").set_text(list) diff --git a/scripts/networking.gd b/scripts/networking.gd index 77a8bba..955098d 100644 --- a/scripts/networking.gd +++ b/scripts/networking.gd @@ -128,8 +128,8 @@ func _check_info(): if get_tree().is_network_server(): var ready = true for p in players: - if not players[p].spectating: - if not players[p].ready: + if not players[p].has("spectating") or not players[p].spectating: + if not players[p].has("ready") or not players[p].ready: ready = false if ready: start_game()