Take planets by killing what defends them
#211 conquest is the fight now: a planet registers the garrison its setup authors, each defender's own death counts against it, and the last one takes the world. The capture points - stand in a ring, wait out a timer, once per ring - are gone, along with the editor palette that placed them. #212 conquest opens a dialog on the surface naming the research points recovered; the award travels with the signal, after it is banked. #209 the prologue's charted sectors go with the breach, so the map the survivors keep is of where they now are - and "chart 30 sectors" is no longer complete before they have flown anywhere. #218 enemy variety is gated on the FLEET, not on wave strength: a starting fleet meets chasers only at any wave number, and each vessel past three opens one more kind. Co-Authored-By: Claude Opus 5 <noreply@anthropic.com> Claude-Session: https://claude.ai/code/session_019AJMdB7iuHuLFZM1aBu3GD
This commit is contained in:
parent
78836882af
commit
6e13b6397c
42 changed files with 540 additions and 749 deletions
|
|
@ -1,9 +1,9 @@
|
|||
extends Label
|
||||
|
||||
# Polls GameState directly, same convention as ResourceReadout, so it stays
|
||||
# correct without anyone having to push updates into it. Hidden
|
||||
# entirely when the current planet has no capture points (e.g. no setup
|
||||
# resolved for it) rather than showing "0/0".
|
||||
# correct without anyone having to push updates into it. Hidden entirely when
|
||||
# the current planet has no garrison (e.g. no setup resolved for it) rather
|
||||
# than showing "0/0".
|
||||
|
||||
# A direct script preload, not the bare "PlanetDefinitions" global class_name
|
||||
# - the same load-order hazard PlanetSurfaceController's setup_host comment
|
||||
|
|
@ -20,7 +20,7 @@ func _process(_delta: float) -> void:
|
|||
visible = false
|
||||
return
|
||||
var planet_id: String = GameState.planet_id
|
||||
var total: int = GameState.total_capture_points(planet_id)
|
||||
var total: int = GameState.garrison_total(planet_id)
|
||||
if total <= 0:
|
||||
visible = false
|
||||
return
|
||||
|
|
@ -39,7 +39,8 @@ func _process(_delta: float) -> void:
|
|||
if not _was_conquered:
|
||||
_flash()
|
||||
else:
|
||||
text = "CAPTURED %d/%d" % [GameState.captured_point_count(planet_id), total]
|
||||
# #211: what is left to fight, counted down, rather than rings held.
|
||||
text = "GARRISON %d/%d" % [GameState.garrison_remaining(planet_id), total]
|
||||
_was_conquered = conquered
|
||||
|
||||
|
||||
|
|
|
|||
Loading…
Reference in a new issue