4463e524aa
Auto-format all GDScript files using gdformat from gdtoolkit. This is a baseline formatting pass to ensure consistent style: - Normalizes indentation and spacing - Wraps long lines to 100 characters - Removes trailing whitespace - Standardizes blank lines between functions 68 files reformatted, 8 files left unchanged (3rd-party addon files with parse errors excluded).
50 lines
1.0 KiB
GDScript
50 lines
1.0 KiB
GDScript
extends CanvasLayer
|
|
|
|
const DEBUG_LOGS := false
|
|
|
|
@export var simulation_manager: Node
|
|
|
|
@onready var village_stats_label: Label = $VillagePanel/MarginContainer/VillageStatsLabel
|
|
|
|
|
|
func _ready() -> void:
|
|
if simulation_manager == null:
|
|
push_error("VillageUI: simulation_manager missing")
|
|
return
|
|
|
|
if simulation_manager.has_signal("village_changed"):
|
|
simulation_manager.village_changed.connect(_on_village_changed)
|
|
else:
|
|
push_error("VillageUI: SimulationManager has no village_changed signal")
|
|
|
|
if "village" in simulation_manager:
|
|
_on_village_changed(simulation_manager.village)
|
|
|
|
|
|
func _on_village_changed(village: SimVillage) -> void:
|
|
village_stats_label.text = (
|
|
"""
|
|
Village
|
|
|
|
Food: %s
|
|
Wood: %s
|
|
Safety: %s
|
|
Knowledge: %s
|
|
Starving: %s
|
|
|
|
Food Mod: %.2f
|
|
Safety Mod: %.2f
|
|
Knowledge Mod: %.2f
|
|
"""
|
|
% [
|
|
round(village.food),
|
|
round(village.wood),
|
|
round(village.safety),
|
|
round(village.knowledge),
|
|
simulation_manager.get_starving_count(),
|
|
village.food_modifier,
|
|
village.safety_modifier,
|
|
village.knowledge_modifier
|
|
]
|
|
)
|