net: add players dict and lobby signals to NetworkManager
This commit is contained in:
@@ -8,6 +8,13 @@ signal connection_failed()
|
||||
var peers: Dictionary = {}
|
||||
var my_id: int = 0
|
||||
|
||||
var players: Dictionary = {} # peer_id (int) → {name: String, role: String}
|
||||
|
||||
signal player_joined(peer_id: int, player_name: String, role: String)
|
||||
signal player_left(peer_id: int)
|
||||
signal player_list_synced()
|
||||
signal game_started()
|
||||
|
||||
|
||||
func start_server(port: int, max_clients: int) -> void:
|
||||
var peer := ENetMultiplayerPeer.new()
|
||||
@@ -41,7 +48,10 @@ func _on_peer_connected(id: int) -> void:
|
||||
|
||||
func _on_peer_disconnected(id: int) -> void:
|
||||
peers.erase(id)
|
||||
players.erase(id)
|
||||
peer_disconnected.emit(id)
|
||||
player_left.emit(id)
|
||||
_broadcast_player_left.rpc(id)
|
||||
print("[Server] Peer getrennt: %d" % id)
|
||||
|
||||
|
||||
|
||||
Reference in New Issue
Block a user