summaryrefslogtreecommitdiff
path: root/src/ui/stats_display/scripts/progression_label.gd
diff options
context:
space:
mode:
authorDavid Luevano Alvarado <david@luevano.xyz>2022-06-04 23:00:58 -0600
committerDavid Luevano Alvarado <david@luevano.xyz>2022-06-04 23:00:58 -0600
commit36abc689d783774ce4f2d7b5a1bb621d8684be45 (patch)
treea3dbed6069fbd8d9a588c7510ce581af3e847af0 /src/ui/stats_display/scripts/progression_label.gd
parent9a2bcf02c2623c8f3e8f5e74e70b3c0333790484 (diff)
added more ui for after gameplay, generalized basic food
Diffstat (limited to 'src/ui/stats_display/scripts/progression_label.gd')
-rw-r--r--src/ui/stats_display/scripts/progression_label.gd48
1 files changed, 48 insertions, 0 deletions
diff --git a/src/ui/stats_display/scripts/progression_label.gd b/src/ui/stats_display/scripts/progression_label.gd
new file mode 100644
index 0000000..d4a0da0
--- /dev/null
+++ b/src/ui/stats_display/scripts/progression_label.gd
@@ -0,0 +1,48 @@
+class_name ProgressionLabel
+extends MarginContainer
+
+enum Type {
+ BODY_SEGMENT,
+ EMPTY
+}
+
+export(int) var TYPE: int = Type.EMPTY
+export(String) var PREFIX: String
+export(float) var BEFORE_VALUE: float
+export(float) var AFTER_VALUE: float = -1.0
+
+onready var label_prefix: Label = $HBox/Prefix
+onready var label_stats: Label = $HBox/Stats
+onready var texture_rect: TextureRect = $HBox/Center/VBox/TextureRect
+
+
+var textures: Dictionary = {
+ Type.BODY_SEGMENT: preload("res://ui/hud/progress_bars/sprites/grow_progress_icon.png"),
+ Type.EMPTY: preload("res://ui/stats_display/sprites/sep_8x8.png")
+}
+
+var _fmt: String = "%s->%s"
+var _fmt_partial: String = "%s"
+var _fmt_prefix: String = " %s "
+
+
+func _ready() -> void:
+ set_properties(TYPE, PREFIX, BEFORE_VALUE, AFTER_VALUE)
+
+
+func set_properties(icon: int, prefix: String, before: float, after: float=-1.0) -> void:
+ texture_rect.texture = textures[icon]
+ if after == -1.0:
+ label_stats.text =_fmt_partial % before
+ else:
+ label_stats.text =_fmt % [before, after]
+ if after > before:
+ label_stats.add_color_override("font_color", Color.green)
+ elif after < before:
+ label_stats.add_color_override("font_color", Color.red)
+ if not prefix.empty():
+ label_prefix.text = _fmt_prefix % prefix
+ else:
+ label_prefix.text = " "
+ label_prefix.update()
+ label_stats.update()