feat: adding the skin_shader_generator, and gacha base barebone
This commit is contained in:
@@ -33,6 +33,7 @@ signal profile_updated
|
||||
@onready var costume_tab_btn := %CostumeTabBtn as Button
|
||||
@onready var glove_tab_btn := %GloveTabBtn as Button
|
||||
@onready var acc_tab_btn := %AccTabBtn as Button
|
||||
@onready var frag_tab_btn := %FragTabBtn as Button
|
||||
@onready var drag_zone := %DragZone as Control
|
||||
@onready var character_root := %CharacterRoot as Node3D
|
||||
@onready var char_left_btn := %CharLeftBtn as Button
|
||||
@@ -173,6 +174,7 @@ func _connect_signals() -> void:
|
||||
costume_tab_btn.pressed.connect(func(): _on_category_tab_pressed("costume"))
|
||||
glove_tab_btn.pressed.connect(func(): _on_category_tab_pressed("glove"))
|
||||
acc_tab_btn.pressed.connect(func(): _on_category_tab_pressed("accessory"))
|
||||
frag_tab_btn.pressed.connect(func(): _on_category_tab_pressed("fragment"))
|
||||
|
||||
# Item grid slot buttons
|
||||
for i in _item_slots.size():
|
||||
@@ -248,13 +250,18 @@ func _highlight_active_tab() -> void:
|
||||
"head": head_tab_btn,
|
||||
"costume": costume_tab_btn,
|
||||
"glove": glove_tab_btn,
|
||||
"accessory": acc_tab_btn
|
||||
"accessory": acc_tab_btn,
|
||||
"fragment": frag_tab_btn
|
||||
}
|
||||
for cat: String in map:
|
||||
(map[cat] as Button).modulate = Color(1.3, 1.3, 0.4, 1) if cat == _current_category else Color.WHITE
|
||||
|
||||
func _rebuild_category_items() -> void:
|
||||
_category_items.clear()
|
||||
# Fragment tab handled separately
|
||||
if _current_category == "fragment":
|
||||
_rebuild_fragment_items()
|
||||
return
|
||||
var prefix := _current_category + "_"
|
||||
# Resolve the current character's node name (e.g. "Copper" → "Oldpop")
|
||||
var current_char_display: String = CHARACTERS[_loadout_index]
|
||||
@@ -283,6 +290,12 @@ func _rebuild_category_items() -> void:
|
||||
# ─────────────────────────────────────────────────────────────
|
||||
# Item grid
|
||||
# ─────────────────────────────────────────────────────────────
|
||||
func _rebuild_fragment_items() -> void:
|
||||
var frags: Dictionary = UserProfileManager.fragments
|
||||
for fid in ["frag_common", "frag_uncommon", "frag_rare"]:
|
||||
var count: int = frags.get(fid, 0)
|
||||
if count > 0: _category_items.append(fid)
|
||||
|
||||
func _populate_item_grid() -> void:
|
||||
var start: int = _current_page * ITEMS_PER_PAGE
|
||||
var total: int = _category_items.size()
|
||||
|
||||
Reference in New Issue
Block a user