Add gas bomber skill-shot vessel

This commit is contained in:
Loïc Wisniewski 2026-08-15 04:45:15 +02:00
commit 1d9afcbc2e
28 changed files with 882 additions and 85 deletions

View file

@ -23,7 +23,7 @@ func _process(delta: float) -> bool:
return false
var definitions: Array = VESSEL_DEFINITIONS.all()
var fleet_definitions: Array = VESSEL_DEFINITIONS.fleet()
if fleet_definitions.size() != 2 \
if fleet_definitions.size() != 3 \
or fleet_definitions.any(func(definition): return definition.has_capability("transport")):
return _fail("logistics transporters leaked into the combat-fleet catalog")
if ships.size() != definitions.size():
@ -45,7 +45,13 @@ func _process(delta: float) -> bool:
or definitions[1].hull_points.size() != 6
or definitions[1].icon != IconButton.Icon.SHIELD_VESSEL):
return _fail("shield vessel is not an unarmed hexagon")
if ships[2].has_capability("weapon") or not ships[2].has_capability("transport"):
var gas_index: int = VESSEL_DEFINITIONS.ORDER.find(GameState.VESSEL_GAS_BOMBER)
if gas_index < 0 or ships[gas_index].has_capability("weapon") \
or not ships[gas_index].definition.has_capability("gas_bomber"):
return _fail("gas bomber is not an unarmed skill vessel")
var transporter_index: int = VESSEL_DEFINITIONS.ORDER.find(GameState.VESSEL_TRANSPORTER)
if ships[transporter_index].has_capability("weapon") \
or not ships[transporter_index].has_capability("transport"):
return _fail("transporter capabilities were composed incorrectly")
print("TEST_VESSEL_COMPOSITION: PASS")
quit(0)