feat: fix gatcha, and login flow connection

This commit is contained in:
2026-04-24 02:50:16 +08:00
parent d97109aa8d
commit 5a08db38de
15 changed files with 400 additions and 145 deletions
+32
View File
@@ -29,6 +29,7 @@ extends Control
@onready var leaderboard_btn = %LeaderboardBtn
@onready var shop_btn = %CartBtn
@onready var top_right_profile_btn = %ProfileBtn
@onready var banner1_btn = %Banner1
# UI References - Room List
@onready var room_list_panel = $RoomListPanel
@@ -161,6 +162,12 @@ func _ready():
# Shop Button
if shop_btn:
shop_btn.pressed.connect(_on_shop_pressed)
# Banner1 → Gacha
if banner1_btn:
banner1_btn.disabled = false
banner1_btn.text = "✨ Gacha"
banner1_btn.pressed.connect(_on_banner1_pressed)
if leaderboard_btn:
leaderboard_btn.pressed.connect(_on_leaderboard_pressed)
@@ -788,6 +795,31 @@ func _on_shop_pressed() -> void:
shop.closed.connect(func(): if main_menu_panel: main_menu_panel.show())
shop.show_panel()
func _on_banner1_pressed() -> void:
var gacha_scene = load("res://scenes/ui/gacha_panel.tscn")
if not gacha_scene:
connection_status.text = "Gacha panel not found"
return
var gacha = gacha_scene.instantiate()
gacha.set_anchors_and_offsets_preset(Control.PRESET_FULL_RECT)
add_child(gacha)
if main_menu_panel: main_menu_panel.hide()
# GachaPanel emits "closed" from its BackBtn handler
if gacha.has_signal("closed"):
gacha.closed.connect(func():
gacha.queue_free()
if main_menu_panel: main_menu_panel.show()
)
else:
# Fallback: listen for BackBtn directly
var back = gacha.get_node_or_null("%BackBtn")
if back:
back.pressed.connect(func():
gacha.queue_free()
if main_menu_panel: main_menu_panel.show()
)
func _on_leaderboard_pressed() -> void:
if not leaderboard_panel_instance:
var leaderboard_panel_scene := load("res://scenes/ui/leaderboard_panel.tscn")
+2 -1
View File
@@ -125,7 +125,7 @@ alignment = 1
[node name="BalanceLbl" type="Label" parent="MainMargin/MainVBox/ContentHBox/LeftPanel/LeftMargin/LeftVBox/BalanceRow"]
layout_mode = 2
theme_override_colors/font_color = Color(0.7, 0.7, 0.7)
theme_override_colors/font_color = Color(0.7, 0.7, 0.7, 1)
theme_override_font_sizes/font_size = 13
text = "Balance:"
@@ -214,6 +214,7 @@ unique_name_in_owner = true
layout_mode = 2
size_flags_horizontal = 3
size_flags_vertical = 3
theme_override_colors/default_color = Color(0.35, 0.2, 0.1, 1)
theme_override_font_sizes/font_size = 13
text = ""
fit_content = true