Refactor formatting functions and improve item production logic; update UI components for better layout and usability

This commit is contained in:
Kirill
2026-06-21 17:27:31 +03:00
parent 934d890887
commit 2d2979a1cf
10 changed files with 115 additions and 61 deletions
+15 -2
View File
@@ -12,6 +12,7 @@ signal action_pressed(page_id, amount: float)
]
var page_id: int = -1
var current_item_id = ""
var action_values: Dictionary = {
0: 0,
@@ -22,11 +23,23 @@ var action_values: Dictionary = {
}
func set_actions(item_id: String, value: float) -> void:
current_item_id = item_id
_set_action_values(_get_distribution(value))
func set_action_values(values: Array) -> void:
func _get_distribution(value: float) -> Array:
var distribution: Array = [value, 0, 0, 0, 0]
var exp_value = int(floor(log(abs(value)) / log(10.0)))
var floor_value = max(exp_value - 4, -1)
for ev in range(exp_value, floor_value, -1):
distribution.push_front(pow(10.0, ev))
return distribution
func _set_action_values(values: Array) -> void:
for ind in range(0, 5):
action_values[ind] = values[ind]
action_labels[ind].text = str(values[ind]) if values[ind] > 0 else ""
action_labels[ind].text = Global.format_number(values[ind]) if values[ind] > 0 else ""
func _on_action_button_pressed(button_id: int) -> void: