Fix errors and incorrect behavior when reconnecting
parent
7cb93f1192
commit
2cc72db9f6
12
Game.gd
12
Game.gd
|
@ -16,7 +16,7 @@ var settingmap = {
|
||||||
"nickname": "set_nickname"
|
"nickname": "set_nickname"
|
||||||
}
|
}
|
||||||
|
|
||||||
onready var peer = NetworkedMultiplayerENet.new()
|
var peer = NetworkedMultiplayerENet.new()
|
||||||
var local_player = null setget set_local_player
|
var local_player = null setget set_local_player
|
||||||
|
|
||||||
func set_local_player(player):
|
func set_local_player(player):
|
||||||
|
@ -206,6 +206,9 @@ func free_client():
|
||||||
player_list_item.queue_free()
|
player_list_item.queue_free()
|
||||||
|
|
||||||
peer.close_connection()
|
peer.close_connection()
|
||||||
|
|
||||||
|
get_tree().network_peer = null
|
||||||
|
local_player = null
|
||||||
|
|
||||||
func quit():
|
func quit():
|
||||||
get_tree().quit()
|
get_tree().quit()
|
||||||
|
@ -222,7 +225,7 @@ func get_player_data():
|
||||||
|
|
||||||
return player_data
|
return player_data
|
||||||
|
|
||||||
sync func check_players(player_data):
|
remote func check_players(player_data):
|
||||||
for player_name in player_data:
|
for player_name in player_data:
|
||||||
if not $Players.has_node(player_name):
|
if not $Players.has_node(player_name):
|
||||||
var player = player_scene.instance()
|
var player = player_scene.instance()
|
||||||
|
@ -255,6 +258,8 @@ func join_game():
|
||||||
|
|
||||||
var player_data = get_player_data()
|
var player_data = get_player_data()
|
||||||
|
|
||||||
|
set_network_master(1)
|
||||||
|
|
||||||
rpc("set_player_data", player_data)
|
rpc("set_player_data", player_data)
|
||||||
|
|
||||||
func on_player_added(player):
|
func on_player_added(player):
|
||||||
|
@ -281,8 +286,6 @@ master func set_player_data(player_data):
|
||||||
check_players(player_data)
|
check_players(player_data)
|
||||||
var new_player_data = get_player_data()
|
var new_player_data = get_player_data()
|
||||||
|
|
||||||
print(new_player_data)
|
|
||||||
|
|
||||||
rpc("check_players", new_player_data)
|
rpc("check_players", new_player_data)
|
||||||
|
|
||||||
func on_peer_disconnected(id):
|
func on_peer_disconnected(id):
|
||||||
|
@ -291,6 +294,7 @@ func on_peer_disconnected(id):
|
||||||
rpc("remove_player", id)
|
rpc("remove_player", id)
|
||||||
|
|
||||||
func on_connection_established():
|
func on_connection_established():
|
||||||
|
print("connection_established")
|
||||||
join_game()
|
join_game()
|
||||||
|
|
||||||
func on_connection_failed():
|
func on_connection_failed():
|
||||||
|
|
|
@ -53,7 +53,6 @@ onready var nickname = "guest" setget set_nickname
|
||||||
func set_health(value):
|
func set_health(value):
|
||||||
health = value
|
health = value
|
||||||
$HUD.updateHealth(value)
|
$HUD.updateHealth(value)
|
||||||
print(value)
|
|
||||||
$Billboard.rpc("set_health", value)
|
$Billboard.rpc("set_health", value)
|
||||||
#$Billboard.set_health(value)
|
#$Billboard.set_health(value)
|
||||||
|
|
||||||
|
@ -274,7 +273,6 @@ func reload():
|
||||||
weapon.reload()
|
weapon.reload()
|
||||||
|
|
||||||
func _input(event):
|
func _input(event):
|
||||||
|
|
||||||
if is_dead:
|
if is_dead:
|
||||||
return
|
return
|
||||||
|
|
||||||
|
@ -339,8 +337,6 @@ func _ready():
|
||||||
# only show the debug label on local machine
|
# only show the debug label on local machine
|
||||||
if name != String(get_tree().get_network_unique_id()):
|
if name != String(get_tree().get_network_unique_id()):
|
||||||
debug.hide()
|
debug.hide()
|
||||||
print(get_tree().get_network_unique_id())
|
|
||||||
print(name)
|
|
||||||
|
|
||||||
# Called every frame. 'delta' is the elapsed time since the previous frame.
|
# Called every frame. 'delta' is the elapsed time since the previous frame.
|
||||||
#func _process(delta):
|
#func _process(delta):
|
||||||
|
|
Reference in New Issue