From 797a3ccbea01f71b93ea425b86ec30c84485f8f3 Mon Sep 17 00:00:00 2001 From: =?UTF-8?q?=E9=99=A8=E8=90=BD=E5=9F=BA=E5=9B=B4=E8=99=BE?= <3161880837@qq.com> Date: Sun, 10 May 2026 09:07:20 +0800 Subject: [PATCH] =?UTF-8?q?refactor(UI):=20=E4=BC=98=E5=8C=96=E5=AD=97?= =?UTF-8?q?=E6=AE=B5=E6=98=BE=E7=A4=BA=E9=80=BB=E8=BE=91=E5=92=8C=E5=91=BD?= =?UTF-8?q?=E5=90=8D?= MIME-Version: 1.0 Content-Type: text/plain; charset=UTF-8 Content-Transfer-Encoding: 8bit 将字段显示逻辑重构为独立的rebuildFields方法 简化字段名称使其更直观 移除不必要的输入条件检查 --- scripts/Statemachine/UIState.gd | 11 ++++++----- scripts/Structs/Feed.gd | 1 + scripts/Tools/FieldStore.gd | 22 +++++++++++----------- 3 files changed, 18 insertions(+), 16 deletions(-) diff --git a/scripts/Statemachine/UIState.gd b/scripts/Statemachine/UIState.gd index e8c4aeb..25db04e 100644 --- a/scripts/Statemachine/UIState.gd +++ b/scripts/Statemachine/UIState.gd @@ -47,12 +47,11 @@ func _physics_process(_delta): energyContainer.visible = true if !fieldsAnimator.is_playing(): if showingFields: - if Input.is_action_just_released("showFields") || !(currentPanel is PausePanel): + if Input.is_action_just_pressed("showFields"): hideFields() else: - if Input.is_action_just_pressed("showFields") || currentPanel is PausePanel: + if Input.is_action_just_pressed("showFields"): showFields() - if Input.is_action_just_pressed("pause"): if currentPanel: if currentPanel is MakeFeedPanel: @@ -103,8 +102,7 @@ static func clearTips(): if child is TipBox: child.destroy() -static func showFields(): - showingFields = true +static func rebuildFields(): for i in fields.get_children(): fields.remove_child(i) for i in player.fields: @@ -112,6 +110,9 @@ static func showFields(): fields.add_child(QuickUI.graySmallText(i)) else: fields.add_child(FieldShow.create(i, player.fields[i], false, player, true)) +static func showFields(): + showingFields = true + rebuildFields() fieldsAnimator.play("show") static func hideFields(): showingFields = false diff --git a/scripts/Structs/Feed.gd b/scripts/Structs/Feed.gd index 10b323c..2bc8b66 100644 --- a/scripts/Structs/Feed.gd +++ b/scripts/Structs/Feed.gd @@ -67,6 +67,7 @@ func apply(entity: EntityBase): entity.weaponStore.add_child(instance) entity.rebuildWeaponIcons() hide() + UIState.rebuildFields() else: UIState.showTip("物品不足!", TipBox.MessageType.ERROR) selected.emit(allHave) diff --git a/scripts/Tools/FieldStore.gd b/scripts/Tools/FieldStore.gd index 406052e..ed9c5df 100644 --- a/scripts/Tools/FieldStore.gd +++ b/scripts/Tools/FieldStore.gd @@ -41,24 +41,24 @@ enum Entity { } static var entityMap = { Entity.MAX_HEALTH: "生命上限", - Entity.DAMAGE_MULTIPILER: "伤害倍率", + Entity.DAMAGE_MULTIPILER: "伤害", Entity.MOVEMENT_SPEED: "移动速度", Entity.ATTACK_SPEED: "攻击速度", Entity.CRIT_RATE: "暴击率", Entity.CRIT_DAMAGE: "暴击伤害", Entity.PENERATE: "穿透", - Entity.OFFSET_SHOOT: "散射角", - Entity.HEAL_ABILITY: "治疗量", - Entity.EXTRA_APPLE_MAX: "苹果上限", - Entity.ENERGY_MULTIPILER: "储能倍率", + Entity.OFFSET_SHOOT: "散射", + Entity.HEAL_ABILITY: "治疗倍率", + Entity.EXTRA_APPLE_MAX: "治疗数", + Entity.ENERGY_MULTIPILER: "储能", Entity.PENARATION_RESISTANCE: "穿透抗性", - Entity.PRICE_REDUCTION: "饲料降价", + Entity.PRICE_REDUCTION: "降价", Entity.EXTRA_BULLET_COUNT: "多重射击", - Entity.DROP_APPLE_RATE: "苹果掉落率", - Entity.FEED_COUNT_SHOW: "饲料列表", - Entity.FEED_COUNT_CAN_MADE: "可制作饲料", + Entity.DROP_APPLE_RATE: "吸血", + Entity.FEED_COUNT_SHOW: "增益数", + Entity.FEED_COUNT_CAN_MADE: "购买力", Entity.MAX_ENERGY: "能量上限", - Entity.LUCK_VALUE: "幸运值", + Entity.LUCK_VALUE: "幸运", Entity.SAVE_ENERGY: "节能", Entity.ENERGY_REGENERATION: "能量再生效率", Entity.DROPPED_ITEM_COLLECT_RADIUS: "拾取距离", @@ -68,7 +68,7 @@ static var entityMap = { Entity.GRAVITY: "引力", Entity.PERFECT_MISS_WINDOW: "闪避窗口", Entity.SUMMON_MAX: "召唤上限", - Entity.CHARGE_SPEED: "蓄力" + Entity.CHARGE_SPEED: "蓄力倍率" } static var entityMapType = { Entity.MAX_HEALTH: DataType.VALUE,