Randoloot/scripts/items/item_stat_modifier.gd
2026-10-11 17:16:45 +02:00

13 lines
584 B
GDScript

extends Resource
class_name ItemStatModifier
@export var stat_key: String = ""
@export var value: float = 0.0
@export var affix: ItemAffixDefinition
func get_display_text() -> String:
var label := affix.display_name if affix else ItemInstance.stat_name(stat_key)
var suffix := affix.unit if affix else ("%" if stat_key.ends_with("_percent") else "/s")
var displayed_value := value * ItemInstance.ENERGY_REGENERATION_BONUS_MULTIPLIER if stat_key == "energy_regeneration" else value
return "%s: %s%.2f %s" % [label, "+" if displayed_value >= 0.0 else "", displayed_value, suffix]