despawn runner or chaser on disconnect

This commit is contained in:
2025-02-21 17:59:23 +09:00
parent 591225996d
commit ca63d4594c
15 changed files with 85 additions and 97 deletions
+6 -9
View File
@@ -26,9 +26,8 @@ func _ready() -> void:
get_tree().change_scene_to_packed.call_deferred(main_menu_scene)
func connect_to_ip(runner: bool = true, ip: String = "") -> void:
if ip.is_empty():
ip = IP_ADDRESS
if ip.is_empty(): ip = IP_ADDRESS
runner_client_selection = runner
print("Connecting to: %s" % ip)
@@ -46,25 +45,23 @@ func _on_connect(id: int) -> void:
func _on_disconnect(id: int) -> void:
print("Client ID #%s disconnected" % id)
pass
if not multiplayer.is_server(): return
get_tree().get_current_scene().despawn_player(id)
func _on_connect_client() -> void:
request_is_runner.rpc_id(1, runner_client_selection)
print("[%s] Connected to server" % multiplayer.get_unique_id())
pass
func _on_disconnect_client() -> void:
print("[%s] Disconnected" % multiplayer.get_unique_id())
pass
func _on_server_closed_client() -> void:
print("[%s] Server closed" % multiplayer.get_unique_id())
pass
@rpc("any_peer", "call_remote", "reliable")
func request_is_runner(runner: bool) -> void:
if not multiplayer.is_server():
return
if not multiplayer.is_server(): return
var id := multiplayer.get_remote_sender_id()
runner_dict[id] = runner