spaceship/CargoCounter.gd

33 lines
1.3 KiB
GDScript3
Raw Normal View History

extends NeonNumber
# What the fleet is CARRYING, shown under the banked total (#15, part 2 of
# #12). Since #14 ore is cargo until the fleet delivers it to the mothership,
# so without this, mining visibly does nothing - the banked figure above does
# not move until the fleet flies home, which reads as gathering being broken.
#
# Three things separate it from the banked readout, because colour alone is a
# weak signal on a phone screen in a game that is mostly teal:
# - amber rather than ore-teal, the same amber used elsewhere for ore in
# transit (the extractor derrick, the hauler route)
# - smaller, sitting UNDER the banked figure: subordinate to it, because
# this is the number that is not yours yet
# - present only while actually carrying something, so an empty hold is not
# a permanent zero taking up space next to the real total
#
# Reads GameState directly for the same reason ResourceCounter does: it stays
# correct across the space <-> planet-surface scene swap with nobody having
# to push updates into it.
const CARGO_GLOW: Color = Color(1.0, 0.78, 0.25)
const CARGO_CORE: Color = Color(0.22, 0.12, 0.0)
func _ready() -> void:
glow_color = CARGO_GLOW
core_color = CARGO_CORE
func _process(_delta: float) -> void:
visible = GameState.fleet_cargo > 0
if visible:
set_amount(GameState.fleet_cargo)