Added first setup of level-based system
This commit is contained in:
30
UI/Menus/MainMenu/level_selecter_main_menu.gd
Normal file
30
UI/Menus/MainMenu/level_selecter_main_menu.gd
Normal file
@@ -0,0 +1,30 @@
|
||||
class_name MainMenuLevelSelector extends PanelContainer
|
||||
|
||||
signal level_selected(specs: LevelSpecs)
|
||||
|
||||
var side: int = 0
|
||||
|
||||
@export var levels: Array[LevelSpecs] = []
|
||||
|
||||
func _on_button_pressed() -> void:
|
||||
side = 0
|
||||
$VBoxContainer/Label.text = "Standard Campaign Mode"
|
||||
|
||||
|
||||
func _on_button_2_pressed() -> void:
|
||||
side = 1
|
||||
$VBoxContainer/Label.text = "Endless Mode with random waves and all unlocked equipment"
|
||||
|
||||
|
||||
func _ready() -> void:
|
||||
var i: int = 0
|
||||
for level: LevelSpecs in levels:
|
||||
i += 1
|
||||
var button: Button = Button.new()
|
||||
button.text = "Level " + str(i)
|
||||
$VBoxContainer.add_child(button)
|
||||
button.pressed.connect(start_level.bind(i - 1))
|
||||
|
||||
|
||||
func start_level(level: int) -> void:
|
||||
level_selected.emit(levels[level])
|
||||
Reference in New Issue
Block a user