feat: 完成房间添加和移除玩家逻辑
This commit is contained in:
@@ -3,7 +3,13 @@ extends Node
|
||||
var peer: ENetMultiplayerPeer = ENetMultiplayerPeer.new()
|
||||
|
||||
var max_player_num: int
|
||||
var player_num: int
|
||||
var player_num: int = 0
|
||||
var players_id: Array[int]
|
||||
var players_data: Dictionary[int, Dictionary]
|
||||
var reaction_area: Dictionary[int, Array]
|
||||
var card_order: Array[int]
|
||||
var deck_cards: Dictionary[String, int]
|
||||
var max_hp: int
|
||||
|
||||
func create_server(playern: int) -> void:
|
||||
max_player_num = playern
|
||||
@@ -34,12 +40,33 @@ func _on_peer_disconnected(id: int):
|
||||
|
||||
|
||||
func add_player(id: int) -> void:
|
||||
pass
|
||||
if player_num >= max_player_num:
|
||||
return
|
||||
player_num += 1
|
||||
players_data[id] = {
|
||||
"id": id,
|
||||
"nickname": "Player%d" % [player_num],
|
||||
"cards": [],
|
||||
"hp": max_hp,
|
||||
}
|
||||
reaction_area[id] = []
|
||||
players_id.append(id)
|
||||
|
||||
|
||||
func remove_player(id: int) -> void:
|
||||
pass
|
||||
player_num -= 1
|
||||
players_data.erase(id)
|
||||
reaction_area.erase(id)
|
||||
players_id.erase(id)
|
||||
|
||||
|
||||
func start_game() -> void:
|
||||
func server_start_game() -> void:
|
||||
if player_num <= max_player_num:
|
||||
return
|
||||
if multiplayer.is_server():
|
||||
client_start_game.rpc()
|
||||
|
||||
|
||||
@rpc("any_peer", "call_local", "reliable")
|
||||
func client_start_game() -> void:
|
||||
pass
|
||||
|
||||
Reference in New Issue
Block a user