summaryrefslogtreecommitdiff
path: root/src/order.h
diff options
context:
space:
mode:
Diffstat (limited to 'src/order.h')
-rw-r--r--src/order.h12
1 files changed, 6 insertions, 6 deletions
diff --git a/src/order.h b/src/order.h
index a9ccf383e..2887972ec 100644
--- a/src/order.h
+++ b/src/order.h
@@ -116,18 +116,18 @@ struct Order : PoolItem<Order, OrderID, &_Order_pool> {
void FreeChain();
};
-#define MAX_BACKUP_ORDER_COUNT 40
-
struct BackuppedOrders {
+ BackuppedOrders() : order(NULL) { }
+
VehicleID clone;
VehicleOrderID orderindex;
- Order order[MAX_BACKUP_ORDER_COUNT + 1];
+ Order *order;
uint16 service_interval;
char name[32];
};
VARDEF TileIndex _backup_orders_tile;
-VARDEF BackuppedOrders _backup_orders_data[1];
+VARDEF BackuppedOrders _backup_orders_data;
static inline VehicleOrderID GetMaxOrderIndex()
{
@@ -200,8 +200,8 @@ static inline Order UnpackOrder(uint32 packed)
}
/* Functions */
-void BackupVehicleOrders(const Vehicle *v, BackuppedOrders *order);
-void RestoreVehicleOrders(const Vehicle* v, const BackuppedOrders* order);
+void BackupVehicleOrders(const Vehicle *v, BackuppedOrders *order = &_backup_orders_data);
+void RestoreVehicleOrders(const Vehicle *v, const BackuppedOrders *order = &_backup_orders_data);
void RemoveOrderFromAllVehicles(OrderType type, DestinationID destination);
void InvalidateVehicleOrder(const Vehicle *v);
bool VehicleHasDepotOrders(const Vehicle *v);