From f06eca96f9035d0649f2c729f1822c8aa68f1acb Mon Sep 17 00:00:00 2001 From: Luna Date: Sun, 13 May 2018 21:13:38 -0400 Subject: [PATCH] Fix errors from lobby (not bugs / functionality) --- project.godot | 2 +- scenes/lobby.tscn | 50 +++++++++++++++++--------------------------------- scripts/custom_game.gd | 5 +++++ scripts/lobby.gd | 16 ++++------------ scripts/networking.gd | 15 +++++++++------ 5 files changed, 36 insertions(+), 52 deletions(-) diff --git a/project.godot b/project.godot index 29645c9..9e4b16b 100644 --- a/project.godot +++ b/project.godot @@ -20,7 +20,7 @@ util="*res://scripts/util.gd" [display] -window/stretch/mode="viewport" +window/stretch/mode="2d" [input] diff --git a/scenes/lobby.tscn b/scenes/lobby.tscn index a1a6f2b..50ccad5 100644 --- a/scenes/lobby.tscn +++ b/scenes/lobby.tscn @@ -5,23 +5,23 @@ [ext_resource path="res://scenes/hero_select.tscn" type="PackedScene" id=3] [ext_resource path="res://assets/DejaVuSansMono.ttf" type="DynamicFontData" id=4] -[sub_resource type="DynamicFont" id=5] +[sub_resource type="DynamicFont" id=1] size = 30 use_mipmaps = false use_filter = false font_data = ExtResource( 4 ) -[sub_resource type="DynamicFontData" id=3] +[sub_resource type="DynamicFontData" id=2] font_path = "res://assets/DejaVuSansMono.ttf" -[sub_resource type="DynamicFont" id=4] +[sub_resource type="DynamicFont" id=3] size = 16 use_mipmaps = false use_filter = false -font_data = SubResource( 3 ) +font_data = SubResource( 2 ) [node name="Lobby" type="Control"] @@ -82,7 +82,7 @@ mouse_filter = 2 mouse_default_cursor_shape = 0 size_flags_horizontal = 1 size_flags_vertical = 4 -custom_fonts/font = SubResource( 5 ) +custom_fonts/font = SubResource( 1 ) text = "Select your hero" percent_visible = 1.0 lines_skipped = 0 @@ -160,53 +160,37 @@ percent_visible = 1.0 lines_skipped = 0 max_lines_visible = -1 -[node name="Players" type="Control" parent="." index="4"] - -anchor_left = 0.0 -anchor_top = 0.0 -anchor_right = 0.0 -anchor_bottom = 0.0 -margin_left = 494.0 -margin_top = 128.0 -margin_right = 534.0 -margin_bottom = 168.0 -rect_pivot_offset = Vector2( 0, 0 ) -mouse_filter = 0 -mouse_default_cursor_shape = 0 -size_flags_horizontal = 1 -size_flags_vertical = 1 - -[node name="PlayerList" type="Label" parent="Players" index="0"] +[node name="PlayerList" type="Label" parent="." index="4"] anchor_left = 0.5 anchor_top = 0.5 anchor_right = 0.5 anchor_bottom = 0.5 -margin_left = -14.0 -margin_top = 2.0 -margin_right = 487.0 -margin_bottom = 280.0 +margin_left = 480.0 +margin_top = 130.0 +margin_right = 981.0 +margin_bottom = 408.0 rect_pivot_offset = Vector2( 0, 0 ) mouse_filter = 2 mouse_default_cursor_shape = 0 size_flags_horizontal = 1 size_flags_vertical = 4 -custom_fonts/font = SubResource( 4 ) +custom_fonts/font = SubResource( 3 ) text = "Waiting for players to connect...." percent_visible = 1.0 lines_skipped = 0 max_lines_visible = -1 -[node name="StartGame" type="Button" parent="Players" index="1"] +[node name="StartGame" type="Button" parent="." index="5"] anchor_left = 0.0 anchor_top = 0.0 anchor_right = 0.0 anchor_bottom = 0.0 -margin_left = 2.0 -margin_top = 325.0 -margin_right = 124.0 -margin_bottom = 365.0 +margin_left = 496.0 +margin_top = 453.0 +margin_right = 618.0 +margin_bottom = 493.0 rect_pivot_offset = Vector2( 0, 0 ) focus_mode = 2 mouse_filter = 0 @@ -221,7 +205,7 @@ text = "Ready!" flat = false align = 1 -[node name="VSeparator" type="VSeparator" parent="." index="5"] +[node name="VSeparator" type="VSeparator" parent="." index="6"] anchor_left = 0.0 anchor_top = 0.0 diff --git a/scripts/custom_game.gd b/scripts/custom_game.gd index 881d02d..653ce27 100644 --- a/scripts/custom_game.gd +++ b/scripts/custom_game.gd @@ -10,10 +10,15 @@ func _ready(): func _start_server(): networking.start_server(_get_port()) + _show_lobby() func _start_client(): var ip = get_node("IP").text networking.start_client(ip, _get_port()) + _show_lobby() + +func _show_lobby(): + get_tree().change_scene("res://scenes/lobby.tscn") func _get_port(): var port = util.args.get_value("-port") diff --git a/scripts/lobby.gd b/scripts/lobby.gd index e3aa839..5056288 100644 --- a/scripts/lobby.gd +++ b/scripts/lobby.gd @@ -2,6 +2,7 @@ extends Control var port = null # Defined by command-line argument with default +var player_info = [] var my_info = {} var server_playing = true var global_server_ip = "nv.cosinegaming.com" @@ -17,18 +18,9 @@ var matchmaker_tcp func _ready(): add_child(matchmaking) - get_node("GameBrowser/Play").connect("pressed", self, "connect_global_server") - get_node("PlayerSettings/HeroSelect").connect("item_selected", self, "select_hero") - get_node("PlayerSettings/Username").connect("text_changed", self, "resend_name") - get_node("JoinedGameLobby/StartGame").connect("pressed", self, "start_game") - get_node("CustomGame/Server").connect("pressed", self, "_server_init") - get_node("CustomGame/Client").connect("pressed", self, "_client_init") - get_node("CustomGame/Singleplayer").connect("pressed", self, "_singleplayer_init") - get_node("CustomGame/LevelSelect").connect("item_selected", self, "select_level") - - get_tree().connect("network_peer_connected", self, "_player_connected") - get_tree().connect("network_peer_disconnected", self, "_player_disconnected") - get_tree().connect("connected_to_server", self, "_connected_ok") + get_node("Username").connect("text_changed", self, "resend_name") + get_node("StartGame").connect("pressed", self, "start_game") + # get_node("CustomGame/LevelSelect").connect("item_selected", self, "select_level") TODO func collect_info(): if not "username" in my_info: diff --git a/scripts/networking.gd b/scripts/networking.gd index b43c4f3..2abab75 100644 --- a/scripts/networking.gd +++ b/scripts/networking.gd @@ -13,6 +13,10 @@ var my_info = {} func _ready(): add_child(matchmaking) + get_tree().connect("network_peer_connected", self, "_player_connected") + get_tree().connect("network_peer_disconnected", self, "_player_disconnected") + get_tree().connect("connected_to_server", self, "_connected_ok") + # func connect_global_server(): TODO # ip = global_server_ip # _client_init() @@ -66,12 +70,11 @@ func disconnect_player(id): rpc("unregister_player", id) # call_deferred("render_player_list") TODO -# func connect_player(): - # rpc("register_player", get_tree().get_network_unique_id(), my_info) - # if "start_game" in my_info and my_info.start_game: - # rpc_id(1, "start_game") - # get_node("JoinedGameLobby").show() TODO - # is_connected = true +func connect_player(): + rpc("_register_player", get_tree().get_network_unique_id(), {}) + if util.args.get_value("-start-game"): + rpc_id(1, "start_game") + # is_connected = true TODO remote func _register_player(new_peer, info): players[new_peer] = info