1
1
mirror of https://github.com/Rundll86/Dog-Lynx-And-HCN.git synced 2026-05-28 06:51:54 +08:00

feat(多人游戏): 实现多人游戏状态同步和单机/多人模式切换

添加多人游戏状态管理,包括连接状态和玩家名称同步
修改WorldManager和EntityBase以支持多人游戏逻辑
在Starter面板中实现单机和多人游戏启动功能
This commit is contained in:
2025-11-13 22:23:39 +08:00
parent bdc9201dba
commit 8ed0837c9d
5 changed files with 29 additions and 9 deletions
+8 -3
View File
@@ -53,9 +53,16 @@ func rebuildAllPlayers(playerNames: Array[String]):
addPlayerName(i)
@rpc("any_peer")
func startMultiplayerGame():
MultiplayerState.isMultiplayer = true
WorldManager.rootNode.multiplayer.multiplayer_peer = MultiplayerState.connection
MultiplayerState.playerName = playerNameInput.text
MultiplayerState.connection = multiplayer.multiplayer_peer
for i in getPlayerNames():
EntityBase.generatePlayer(i)
UIState.closeCurrentPanel()
func startSingleplayerGame():
MultiplayerState.isMultiplayer = false
EntityBase.generatePlayer(playerNameInput.text)
Wave.next()
UIState.closeCurrentPanel()
@@ -74,9 +81,7 @@ func _ready():
)
startSingleplayerBtn.pressed.connect(
func():
EntityBase.generatePlayer(playerNameInput.text)
Wave.next()
UIState.closeCurrentPanel()
startSingleplayerGame()
)
startMultiplayerBtn.pressed.connect(
func():