mirror of
https://github.com/Rundll86/Dog-Lynx-And-HCN.git
synced 2026-05-28 06:51:54 +08:00
feat: 添加游戏启动界面和着色器效果
- 新增启动界面背景和logo - 实现顶部和底部阴影着色器 - 添加难度选择滑块和角色名输入框 - 优化多人游戏按钮交互 - 修复编译提示面板的动画效果 - 更新UI主题样式
This commit is contained in:
@@ -4,10 +4,11 @@ extends FullscreenPanelBase
|
||||
func afterOpen(_args: Array = []):
|
||||
if WorldManager.isRelease():
|
||||
for key in ComponentManager.effects:
|
||||
var effect = EffectController.create(ComponentManager.getEffect(key), Vector2.ZERO, self)
|
||||
var effect = EffectController.create(ComponentManager.getEffect(key), Vector2.ZERO, self )
|
||||
effect.modulate.a = 0.01
|
||||
(effect.sounds.get_node("spawn") as AudioStreamPlayer2D).volume_db = - INF
|
||||
effect.shot()
|
||||
await TickTool.millseconds(3000)
|
||||
await TickTool.frame()
|
||||
UIState.setPanel("SelectInitialFeed")
|
||||
StarterPanel.buildingShader = false
|
||||
|
||||
@@ -1,5 +1,6 @@
|
||||
@tool
|
||||
extends FullscreenPanelBase
|
||||
class_name StarterPanel
|
||||
|
||||
@onready var diffEdit: HSlider = $"%diffEdit"
|
||||
@onready var startSingleplayerBtn: Button = $"%startSingleplayerBtn"
|
||||
@@ -18,6 +19,8 @@ var historyStack
|
||||
@onready var players: VBoxContainer = $"%players"
|
||||
@onready var playersList: VBoxContainer = $"%list"
|
||||
|
||||
static var buildingShader: bool = true
|
||||
|
||||
@rpc("any_peer")
|
||||
func mutexPlayer(player: String):
|
||||
if multiplayer.is_server():
|
||||
@@ -63,7 +66,7 @@ func startMultiplayerGame():
|
||||
func startSingleplayerGame():
|
||||
MultiplayerState.isMultiplayer = false
|
||||
MultiplayerState.playerName = playerNameInput.text
|
||||
EntityBase.generatePlayer(playerNameInput.text)
|
||||
UIState.player = EntityBase.generatePlayer(playerNameInput.text)
|
||||
WorldManager.rootNode.spawnWave(Vector2.ZERO)
|
||||
UIState.setPanel("CompilingTip")
|
||||
|
||||
@@ -87,8 +90,9 @@ func _ready():
|
||||
)
|
||||
startMultiplayerBtn.pressed.connect(
|
||||
func():
|
||||
startMultiplayerGame.rpc()
|
||||
startMultiplayerGame()
|
||||
# startMultiplayerGame.rpc()
|
||||
# startMultiplayerGame()
|
||||
UIState.showTip("敬请期待!", TipBox.MessageType.ERROR)
|
||||
)
|
||||
maxPlayerInput.text_changed.connect(
|
||||
func(text):
|
||||
@@ -127,7 +131,7 @@ func setState(state: MultiplayerState.ConnectionState):
|
||||
connectionState.text = "状态:%s" % MultiplayerState.stateTextMap[state]
|
||||
connectionState.modulate = MultiplayerState.stateColorMap[state]
|
||||
disconnectBtn.disabled = not MultiplayerState.isConnected()
|
||||
startMultiplayerBtn.disabled = not MultiplayerState.isConnected() || !multiplayer.is_server()
|
||||
# startMultiplayerBtn.disabled = not MultiplayerState.isConnected() || !multiplayer.is_server()
|
||||
serverConfig.visible = MultiplayerState.state == MultiplayerState.ConnectionState.CONNECTED_HOST
|
||||
players.visible = MultiplayerState.isConnected()
|
||||
func addPlayerName(playerName: String):
|
||||
|
||||
Reference in New Issue
Block a user