extends Node @export var xp: float = 0: set(value): xp = value xp_changed.emit(xp) @export var money: float = 500: set(value): money = value money_changed.emit(money) @export var level: int = 0: set(value): level = value level_changed.emit(level) signal xp_changed(new_xp) signal money_changed(new_money) signal level_changed(new_level) signal give_experience(xp_amount) signal give_money(money_amount) func _ready() -> void: give_experience.connect(_on_give_experience) give_money.connect(_on_give_money) func _on_give_experience(amount: float) -> void: xp += amount if xp >= 100: while xp >= 100: level += 1 xp -= 100 func _on_give_money(amount: float) -> void: money += amount