extends SceneTree func _initialize() -> void: var state: Node = root.get_node("GameState") state.vessel_deliveries.clear() state.transporters.clear() state.buildings.clear() state.reset_progression() var delivery_speed: float = state.vessel_stat("interceptor", "delivery_speed") var transport_speed: float = state.transporter_speed() if delivery_speed >= 300.0 or transport_speed >= 300.0: return _fail("logistics still rushes at delivery %.0f / transport %.0f" % [delivery_speed, transport_speed]) state.vessel_deliveries.append({"type": "interceptor", "from": Vector2.ZERO, "to": Vector2(900, 0), "progress": 0.0}) state._advance_vessel_deliveries(1.0) var delivery_progress: float = state.vessel_deliveries[0].progress if delivery_progress < 0.18 or delivery_progress > 0.22: return _fail("900-unit delivery advanced %.3f in one second" % delivery_progress) state.transporters.append({"hub_id": 0, "state": state.TRANSPORTER_RETURNING, "target_id": 0, "carrying": 0, "progress": 0.0, "from": Vector2.ZERO, "to": Vector2(600, 0)}) state._advance_transporters(1.0) var transport_progress: float = state.transporters[0].progress if transport_progress < 0.23 or transport_progress > 0.27: return _fail("600-unit transport leg advanced %.3f in one second" % transport_progress) print("delivery %.0f u/s, transporter %.0f u/s" % [delivery_speed, transport_speed]) print("TEST_LOGISTICS_TRAVEL_SPEED: PASS") quit(0) func _fail(message: String) -> void: print("TEST_LOGISTICS_TRAVEL_SPEED: FAIL (%s)" % message) quit(1)