added the game

This commit is contained in:
JHDev2006
2025-09-13 16:30:32 +01:00
parent 5ef689109b
commit 3773bdaf64
3616 changed files with 263702 additions and 0 deletions

64
Scripts/UI/BooSelect.gd Normal file
View File

@@ -0,0 +1,64 @@
extends Control
@onready var cursor: Label = %Cursor
var selected_boo := 0
var active := false
var lvl_idx := 0
signal boo_selected
signal cancelled
signal boo_changed
@onready var boos := [%Boo1, %Boo2, %Boo3, %Boo4, %Boo5]
func _process(_delta: float) -> void:
if active:
handle_input()
BooRaceHandler.boo_colour = selected_boo
for i in boos:
i.get_node("Cursor").visible = selected_boo == i.get_index()
func open() -> void:
grab_focus()
selected_boo = int(BooRaceHandler.cleared_boo_levels[lvl_idx])
update_visuals()
show()
await get_tree().process_frame
active = true
func update_visuals() -> void:
var idx := 0
for i in boos:
i.modulate = Color.WHITE if (int(BooRaceHandler.cleared_boo_levels[lvl_idx]) >= idx or Global.debug_mode) else Color.DIM_GRAY
idx += 1
func handle_input() -> void:
var old_colour = selected_boo
if Input.is_action_just_pressed("ui_left"):
selected_boo -= 1
if Input.is_action_just_pressed("ui_right"):
selected_boo += 1
selected_boo = clamp(selected_boo, 0, 4)
BooRaceHandler.boo_colour = selected_boo
if old_colour != selected_boo:
print(selected_boo)
boo_changed.emit()
if Input.is_action_just_pressed("ui_back"):
cancelled.emit()
close()
if Input.is_action_just_pressed("ui_accept"):
if int(BooRaceHandler.cleared_boo_levels[lvl_idx]) < selected_boo and not Global.debug_mode:
AudioManager.play_sfx("bump")
else:
select_world()
func select_world() -> void:
boo_selected.emit()
close()
func close() -> void:
active = false
hide()