diff --git a/README.md b/README.md index 04796bb..e424f1e 100644 --- a/README.md +++ b/README.md @@ -54,3 +54,5 @@ game/ 除 `autoload` 目录下的单例脚本使用大驼峰式命名,其余脚本均应使用小蛇形式命令。所有节点均应使用大驼峰式命名。 除连接了信号或 HTTPRequest、MultiplayerAPI 的函数外,任何函数都不应该以下划线(`_`)开头。 + +函数之间只需间隔一行,无需间隔两行。 diff --git a/scripts/autoload/MultiGame.gd b/scripts/autoload/MultiGame.gd index dfdc699..6f7dc69 100644 --- a/scripts/autoload/MultiGame.gd +++ b/scripts/autoload/MultiGame.gd @@ -16,10 +16,18 @@ func create_server(playern: int) -> void: return multiplayer.multiplayer_peer = peer multiplayer.peer_connected.connect(_on_peer_connected) + multiplayer.peer_disconnected.connect(_on_peer_disconnected) func create_client(ip: String) -> void: peer.create_client(ip, 8989) multiplayer.multiplayer_peer = peer -func _on_peer_connected(id: int): - pass \ No newline at end of file +func _on_peer_connected(id: int) -> void: + players.append(id) + +func _on_peer_disconnected(id: int) -> void: + for i in range(players.size()): + if players[i] == id: + players.pop_at(i) + break +