2025-07-21 20:38:11 -06:00
|
|
|
extends Node
|
|
|
|
|
|
|
|
|
|
class_name InventoryMenu
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
@onready var inventory : Inventory
|
|
|
|
|
@onready var item_list : VBoxContainer = $CanvasLayer/PanelContainer/VBoxContainer/MarginContainer/ScrollContainer/VBoxContainer
|
|
|
|
|
var item_scene : PackedScene = preload("res://Scenes/Menu/InventoryUiItem.tscn")
|
|
|
|
|
|
|
|
|
|
func _ready() -> void:
|
|
|
|
|
$CanvasLayer.hide()
|
|
|
|
|
pass
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
func toggle_inventory() -> bool:
|
|
|
|
|
var canvas = $CanvasLayer
|
|
|
|
|
if canvas.visible == true:
|
|
|
|
|
$CanvasLayer.hide()
|
|
|
|
|
return false
|
|
|
|
|
else:
|
|
|
|
|
update_inventory()
|
|
|
|
|
$CanvasLayer.show()
|
|
|
|
|
return true
|
|
|
|
|
|
|
|
|
|
func update_inventory():
|
|
|
|
|
for i in inventory.items:
|
2025-07-22 00:50:08 -06:00
|
|
|
var match_found : bool = false
|
2025-07-21 20:38:11 -06:00
|
|
|
var new_item = item_scene.instantiate()
|
2025-07-22 00:50:08 -06:00
|
|
|
for j in item_list.get_children():
|
|
|
|
|
if j.id.text != str(i.item.id):
|
|
|
|
|
match_found = true
|
|
|
|
|
if !match_found || item_list.get_children().size() == 1:
|
|
|
|
|
item_list.add_child(new_item)
|
|
|
|
|
new_item.set_values(i.item.id, i.item.name, 10, 10)
|