mirror of
https://github.com/Rundll86/Dog-Lynx-And-HCN.git
synced 2026-06-04 02:37:12 +08:00
feat: 为角色添加显示名称并完善面板功能
为熊、公鸡、母鸡等角色添加displayName属性 修改FullscreenPanelBase及相关面板以支持参数传递 完善GameOver面板显示凶手信息功能 调整部分角色的节点索引和状态栏位置
This commit is contained in:
@@ -4,5 +4,7 @@ extends FullscreenPanelBase
|
||||
@onready var audio = $"%audio"
|
||||
@onready var deadreason = $"%deadreason"
|
||||
|
||||
func beforeOpen():
|
||||
func beforeOpen(args: Array = []):
|
||||
audio.play()
|
||||
var reasonTemplate = MathTool.randc_from(GameRule.deadReasons)
|
||||
deadreason.text = (reasonTemplate + "凶手是%s。") % args
|
||||
|
||||
@@ -39,7 +39,7 @@ func _ready():
|
||||
)
|
||||
avaliableFeeds.add_child(feed)
|
||||
|
||||
func beforeOpen():
|
||||
func beforeOpen(_args: Array = []):
|
||||
selectedCount = 0
|
||||
regenerateCards()
|
||||
|
||||
|
||||
@@ -3,7 +3,7 @@ extends FullscreenPanelBase
|
||||
|
||||
@onready var box = $"%box"
|
||||
|
||||
func beforeOpen():
|
||||
func beforeOpen(_args: Array = []):
|
||||
for weapon in UIState.player.weapons:
|
||||
weapon.show()
|
||||
UIState.player.weaponStore.remove_child(weapon)
|
||||
|
||||
@@ -260,7 +260,7 @@ func tryDie(by: BulletBase):
|
||||
EffectController.create(preload("res://components/Effects/DeadBlood.tscn"), texture.global_position).shot()
|
||||
await die()
|
||||
if isPlayer() and UIState.player == self:
|
||||
UIState.setPanel("GameOver")
|
||||
UIState.setPanel("GameOver", [displayName, by.launcher.displayName])
|
||||
func tryHeal(count: float):
|
||||
if inventory[ItemStore.ItemType.APPLE] > 0 and health < fields.get(FieldStore.Entity.MAX_HEALTH):
|
||||
inventory[ItemStore.ItemType.APPLE] -= 1
|
||||
|
||||
@@ -9,8 +9,8 @@ func hidePanel():
|
||||
await animator.animation_finished
|
||||
visible = false
|
||||
afterClose()
|
||||
func showPanel():
|
||||
beforeOpen()
|
||||
func showPanel(args: Array = []):
|
||||
beforeOpen(args)
|
||||
visible = true
|
||||
animator.play("show")
|
||||
await animator.animation_finished
|
||||
@@ -19,7 +19,7 @@ func _ready():
|
||||
visible = false
|
||||
|
||||
# 钩子
|
||||
func beforeOpen():
|
||||
func beforeOpen(_args: Array = []):
|
||||
pass
|
||||
func afterClose():
|
||||
pass
|
||||
|
||||
@@ -64,13 +64,13 @@ func _physics_process(_delta):
|
||||
if canOpen:
|
||||
setPanel("Weapon")
|
||||
|
||||
static func setPanel(targetName: String = ""):
|
||||
static func setPanel(targetName: String = "", args: Array = []):
|
||||
currentPanel = null
|
||||
for panel in panels.get_children():
|
||||
if panel is FullscreenPanelBase:
|
||||
if panel.name == targetName:
|
||||
currentPanel = panel
|
||||
panel.showPanel()
|
||||
panel.showPanel(args)
|
||||
else:
|
||||
panel.hidePanel()
|
||||
static func closeCurrentPanel():
|
||||
|
||||
Reference in New Issue
Block a user