Disconnect Logic
This commit is contained in:
parent
5fbdc61bec
commit
83b109e4bc
1 changed files with 12 additions and 0 deletions
|
|
@ -27,6 +27,7 @@ func host_game():
|
|||
peer.create_server(PORT, MAX_CLIENTS)
|
||||
multiplayer.multiplayer_peer = peer
|
||||
multiplayer.peer_connected.connect(_on_player_connected)
|
||||
multiplayer.peer_disconnected.connect(_on_player_disconnected)
|
||||
print("Server gestartet. id=" + str(multiplayer.get_unique_id()))
|
||||
|
||||
func join_game(ip = "127.0.0.1"):
|
||||
|
|
@ -39,6 +40,17 @@ func _on_player_connected(id):
|
|||
# Standardmäßig in Area 1 starten
|
||||
change_player_area(id, "keuwin_grasland")
|
||||
|
||||
func _on_player_disconnected(id):
|
||||
if not multiplayer.is_server(): return
|
||||
|
||||
print("Player disconnected with id: ", id)
|
||||
|
||||
# Der MultiplayerSpawner entfernt den Node automatisch aus dem Szenenbaum.
|
||||
# Unsere einzige Aufgabe ist es, unseren internen Zustand aufzuräumen.
|
||||
if player_worlds.has(id):
|
||||
print("Removing player ", id, " from internal tracking.")
|
||||
player_worlds.erase(id)
|
||||
|
||||
func change_player_area(id: int, area_key: String):
|
||||
if not multiplayer.is_server(): return
|
||||
print("Server is loading ", area_key)
|
||||
|
|
|
|||
Loading…
Add table
Add a link
Reference in a new issue