Slow logistics vessel travel
This commit is contained in:
parent
db0e6a0ec2
commit
20ba0011fa
8 changed files with 49 additions and 6 deletions
|
|
@ -368,7 +368,7 @@ var stored_vessels: Array = []
|
|||
# hangar. State is authoritative here so delivery continues off-screen.
|
||||
# {"type", "from", "to", "progress"}
|
||||
var vessel_deliveries: Array = []
|
||||
const VESSEL_DELIVERY_SPEED: float = 950.0
|
||||
const VESSEL_DELIVERY_SPEED: float = 180.0
|
||||
|
||||
signal order_completed(building_id: int, type: String)
|
||||
|
||||
|
|
@ -436,7 +436,7 @@ const SHIP_BASE_ACCEL: float = 450.0
|
|||
const SHIELD_BASE_CHARGES: int = 1
|
||||
const SHIELD_BASE_RECHARGE: float = 6.0
|
||||
const TRANSPORTER_BASE_LOAD: int = 20
|
||||
const TRANSPORTER_BASE_SPEED: float = 340.0
|
||||
const TRANSPORTER_BASE_SPEED: float = 150.0
|
||||
|
||||
var vessel_levels: Dictionary = {}
|
||||
|
||||
|
|
@ -987,7 +987,10 @@ func _advance_vessel_deliveries(delta: float) -> void:
|
|||
for i in range(vessel_deliveries.size() - 1, -1, -1):
|
||||
var delivery: Dictionary = vessel_deliveries[i]
|
||||
var distance: float = (delivery.from as Vector2).distance_to(delivery.to as Vector2)
|
||||
delivery.progress = float(delivery.progress) + delta / maxf(distance / VESSEL_DELIVERY_SPEED, 0.001)
|
||||
var delivery_speed: float = vessel_stat(String(delivery.type), "delivery_speed")
|
||||
if delivery_speed <= 0.0:
|
||||
delivery_speed = VESSEL_DELIVERY_SPEED
|
||||
delivery.progress = float(delivery.progress) + delta / maxf(distance / delivery_speed, 0.001)
|
||||
if float(delivery.progress) >= 1.0:
|
||||
stored_vessels.append(String(delivery.type))
|
||||
vessel_deliveries.remove_at(i)
|
||||
|
|
|
|||
Loading…
Reference in a new issue