mirror of
				https://github.com/JHDev2006/Super-Mario-Bros.-Remastered-Public.git
				synced 2025-11-04 08:35:41 +00:00 
			
		
		
		
	
		
			
				
	
	
		
			46 lines
		
	
	
		
			1.0 KiB
		
	
	
	
		
			GDScript
		
	
	
	
	
	
			
		
		
	
	
			46 lines
		
	
	
		
			1.0 KiB
		
	
	
	
		
			GDScript
		
	
	
	
	
	
extends Control
 | 
						|
@onready var cursor: TextureRect = $Cursor
 | 
						|
 | 
						|
var selected_index := 0
 | 
						|
 | 
						|
signal selected
 | 
						|
signal cancelled
 | 
						|
 | 
						|
var active := false
 | 
						|
 | 
						|
@onready var choices := [$PanelContainer/MarginContainer/VBoxContainer/HBoxContainer/Yes, $PanelContainer/MarginContainer/VBoxContainer/HBoxContainer/No]
 | 
						|
 | 
						|
func _process(_delta: float) -> void:
 | 
						|
	if active:
 | 
						|
		handle_input()
 | 
						|
	cursor.global_position.x = choices[selected_index].global_position.x - 6
 | 
						|
 | 
						|
func open() -> void:
 | 
						|
	show()
 | 
						|
	AudioManager.play_global_sfx("pause")
 | 
						|
	selected_index = 1
 | 
						|
	await get_tree().process_frame
 | 
						|
	active = true
 | 
						|
	await selected
 | 
						|
	hide()
 | 
						|
 | 
						|
func handle_input() -> void:
 | 
						|
	if Input.is_action_just_pressed("ui_left"):
 | 
						|
		selected_index -= 1
 | 
						|
	if Input.is_action_just_pressed("ui_right"):
 | 
						|
		selected_index += 1
 | 
						|
	if Input.is_action_just_pressed("ui_back"):
 | 
						|
		close()
 | 
						|
		cancelled.emit()
 | 
						|
	selected_index = clamp(selected_index, 0, 1)
 | 
						|
	if Input.is_action_just_pressed("ui_accept"):
 | 
						|
		select()
 | 
						|
 | 
						|
func select() -> void:
 | 
						|
	selected.emit()
 | 
						|
	close()
 | 
						|
 | 
						|
func close() -> void:
 | 
						|
	active = false
 | 
						|
	hide()
 |