Refactor gameplay menus into owned scenes
This commit is contained in:
parent
46196a1adb
commit
a17fe88197
50 changed files with 3449 additions and 3619 deletions
25
ui/menus/PlanningMenu.gd
Normal file
25
ui/menus/PlanningMenu.gd
Normal file
|
|
@ -0,0 +1,25 @@
|
|||
extends "res://ui/menus/ModalMenu.gd"
|
||||
|
||||
@onready var panel: Control = $Panel
|
||||
@onready var status: Label = $StatusLabel
|
||||
|
||||
|
||||
func _ready() -> void:
|
||||
super._ready()
|
||||
panel.changed.connect(refresh)
|
||||
|
||||
|
||||
func open_menu() -> void:
|
||||
super.open_menu()
|
||||
refresh()
|
||||
|
||||
|
||||
func refresh() -> void:
|
||||
panel.refresh()
|
||||
var short: PackedStringArray = PackedStringArray()
|
||||
for vessel_type in GameState.planned_vessel_types():
|
||||
var missing: int = GameState.vessel_shortfall(String(vessel_type))
|
||||
if missing > 0:
|
||||
short.append("%d %s" % [missing, GameState.vessel_name(String(vessel_type))])
|
||||
status.text = "Every standing order is met or already being built" if short.is_empty() \
|
||||
else "Short: %s" % ", ".join(short)
|
||||
Loading…
Reference in a new issue