mirror of
https://github.com/Rundll86/Dog-Lynx-And-HCN.git
synced 2026-06-03 18:27:13 +08:00
feat: 添加武器升华系统及相关UI组件
实现武器升华功能,包括: - 新增SublimateOption类处理升华选项 - 添加SublimateOptionHandler UI组件 - 在武器卡片中集成升华界面 - 重构武器描述生成逻辑 - 新增钻石资源消耗机制 - 优化UI布局和样式 - 修复多处类型引用错误
This commit is contained in:
@@ -0,0 +1,30 @@
|
||||
@tool
|
||||
extends Control
|
||||
class_name SublimateOptionHandler
|
||||
|
||||
signal apply()
|
||||
|
||||
@onready var nameLabel: Label = $%name
|
||||
@onready var applyBtn: Button = $%applyBtn
|
||||
@onready var costItemShow: ItemShow = $%costItem
|
||||
|
||||
var use: SublimateOption;
|
||||
|
||||
func _ready():
|
||||
nameLabel.label_settings = nameLabel.label_settings.duplicate()
|
||||
applyBtn.pressed.connect(
|
||||
func():
|
||||
if UIState.player.useItem({ItemStore.ItemType.DIAMOND: use.cost}):
|
||||
apply.emit()
|
||||
else:
|
||||
UIState.showTip("钻石数量不足!", TipBox.MessageType.ERROR)
|
||||
)
|
||||
rebuildInfo()
|
||||
|
||||
func rebuildInfo():
|
||||
if is_instance_valid(use):
|
||||
nameLabel.label_settings.font_color = CategoryStore.qualityColorMap[use.quality]
|
||||
nameLabel.label_settings.outline_color = CategoryStore.qualityColorMap[use.quality]
|
||||
nameLabel.text = use.displayName
|
||||
applyBtn.text = use.description
|
||||
costItemShow.count = use.cost
|
||||
Reference in New Issue
Block a user