velho/godot/prefabs/ui/ui.gd

32 lines
808 B
GDScript

class_name UI
extends Node
@export var player: Player
@onready var inventory_ui: InventoryUI = %Inventory
@onready var clock_hand: TextureRect = %Hand
var manager: GameManager
func _ready():
manager = GameManager.from_node(self)
manager.time().time_advanced.connect(_on_time_advance)
player.entity_inventory.inventory.changed.connect(_on_player_inventory_changed)
update_inventory_ui()
update_clock_hand(manager.time().day_progress())
func _on_player_inventory_changed():
update_inventory_ui()
func update_inventory_ui():
inventory_ui.update(player.get_inventory())
func _on_time_advance(_now: int, _advanced_by: int):
update_clock_hand(manager.time().day_progress())
func update_clock_hand(progress: float):
clock_hand.rotation = progress * PI * 2.0
func on_day_end():
print("Day over!")