1
1
mirror of https://github.com/Rundll86/Dog-Lynx-And-HCN.git synced 2026-05-27 22:41:56 +08:00
Files
Dog-Lynx-And-HCN/scripts/Contents/Panels/SelectIntialFeed.gd
T
fallingshrimp 7a0cf96d7d feat: 添加武器升华系统及相关UI组件
实现武器升华功能,包括:
- 新增SublimateOption类处理升华选项
- 添加SublimateOptionHandler UI组件
- 在武器卡片中集成升华界面
- 重构武器描述生成逻辑
- 新增钻石资源消耗机制
- 优化UI布局和样式
- 修复多处类型引用错误
2026-05-10 11:49:17 +08:00

61 lines
1.6 KiB
GDScript

@tool
extends FullscreenPanelBase
class_name SelectInitialFeedPanel
@onready var initialFeedSelection: HBoxContainer = $%initialFeedSelection
@onready var initialWeaponSelection: HBoxContainer = $%initialWeaponSelection
@onready var startBtn: Button = $%startBtn
@onready var title1: Label = $%title1
@onready var title2: Label = $%title2
func _ready():
startBtn.pressed.connect(
func():
startBtn.disabled = true
UIState.closeCurrentPanel()
StarterPanel.selectingFeed = false
)
func beforeOpen(_args: Array = []):
clearFeeds()
clearWeapons()
var feedCounted = 0
var weaponCounted = 0
ComponentManager.feeds.shuffle()
for feed in ComponentManager.feeds:
var card = feed.instantiate() as Feed
card.freeToBuy = true
if card.topic == CategoryStore.Topic.WEAPON:
if weaponCounted < OutGameStorage.maxInitialWeaponCount:
initialWeaponSelection.add_child(card)
card.selected.connect(
func(_x):
if WorldManager.isRelease():
clearWeapons()
title2.hide()
if !title1.visible:
startBtn.pressed.emit()
)
weaponCounted += 1
else:
if feedCounted < OutGameStorage.maxInitialFeedCount:
initialFeedSelection.add_child(card)
card.selected.connect(
func(_x):
if WorldManager.isRelease():
clearFeeds()
title1.hide()
if !title2.visible:
startBtn.pressed.emit()
)
feedCounted += 1
func afterOpen(_args: Array = []):
startBtn.disabled = false
func clearFeeds():
for feed in initialFeedSelection.get_children():
feed.queue_free()
func clearWeapons():
for weapon in initialWeaponSelection.get_children():
weapon.queue_free()