Fully working menu system

This commit is contained in:
2ndbeam 2024-05-18 12:37:36 +03:00
commit 6eef2c781c
11 changed files with 93 additions and 9 deletions

View file

@ -21,4 +21,4 @@ enum Action {
## Action type. Should have same size as item_ids
@export var item_actions: Array[Action]
## Should have same size as other arrays
@export var item_data: Array
@export var item_data: Array[MenuResource]

View file

@ -0,0 +1,8 @@
extends MenuResource
class_name MenuMenuResource
@export var item: StringName
func load() -> Menu:
return ResourceLoader.load(item)

View file

@ -0,0 +1,3 @@
extends Resource
class_name MenuResource

View file

@ -0,0 +1,8 @@
extends MenuResource
class_name ScriptMenuResource
@export var item: StringName
func load() -> GDScript:
return ResourceLoader.load(item)

View file

@ -6,5 +6,8 @@ class_name TransitButton
## This is used when button_up is activated
var id: int = -1
func _init():
get_tree().create_timer(0.05).timeout.connect(_ready)
func _ready():
button_up.connect(get_parent().transit_menu.bind(id))