|
@@ -148,17 +148,12 @@ public:
|
|
|
Money profit_this_year; ///< Profit this year << 8, low 8 bits are fract
|
|
|
Money profit_last_year; ///< Profit last year << 8, low 8 bits are fract
|
|
|
Money value; ///< Value of the vehicle
|
|
|
|
|
|
CargoPayment *cargo_payment; ///< The cargo payment we're currently in
|
|
|
|
|
|
/* Used for timetabling. */
|
|
|
uint32 current_order_time; ///< How many ticks have passed since this order started.
|
|
|
int32 lateness_counter; ///< How many ticks late (or early if negative) this vehicle is.
|
|
|
Date timetable_start; ///< When the vehicle is supposed to start the timetable.
|
|
|
|
|
|
Rect coord; ///< NOSAVE: Graphical bounding box of the vehicle, i.e. what to redraw on moves.
|
|
|
|
|
|
Vehicle *hash_viewport_next; ///< NOSAVE: Next vehicle in the visual location hash.
|
|
|
Vehicle **hash_viewport_prev; ///< NOSAVE: Previous vehicle in the visual location hash.
|
|
|
|
|
|
Vehicle *hash_tile_next; ///< NOSAVE: Next vehicle in the tile location hash.
|
|
@@ -224,21 +219,18 @@ public:
|
|
|
byte day_counter; ///< Increased by one for each day
|
|
|
byte tick_counter; ///< Increased by one for each tick
|
|
|
byte running_ticks; ///< Number of ticks this vehicle was not stopped this day
|
|
|
|
|
|
byte vehstatus; ///< Status
|
|
|
Order current_order; ///< The current order (+ status, like: loading)
|
|
|
VehicleOrderID cur_implicit_order_index;///< The index to the current implicit order
|
|
|
|
|
|
union {
|
|
|
OrderList *list; ///< Pointer to the order list for this vehicle
|
|
|
Order *old; ///< Only used during conversion of old save games
|
|
|
} orders; ///< The orders currently assigned to the vehicle.
|
|
|
|
|
|
byte vehicle_flags; ///< Used for gradual loading and other miscellaneous things (@see VehicleFlags enum)
|
|
|
|
|
|
uint16 load_unload_ticks; ///< Ticks to wait before starting next cycle.
|
|
|
GroupID group_id; ///< Index of group Pool array
|
|
|
byte subtype; ///< subtype (Filled with values from #EffectVehicles/#TrainSubTypes/#AircraftSubTypes)
|
|
|
|
|
|
NewGRFCache grf_cache; ///< Cache of often used calculated NewGRF values
|
|
|
VehicleCache vcache; ///< Cache of often used vehicle values.
|
|
@@ -595,26 +587,17 @@ public:
|
|
|
inline void CopyVehicleConfigAndStatistics(const Vehicle *src)
|
|
|
{
|
|
|
this->CopyConsistPropertiesFrom(src);
|
|
|
|
|
|
this->unitnumber = src->unitnumber;
|
|
|
|
|
|
this->cur_implicit_order_index = src->cur_implicit_order_index;
|
|
|
this->current_order = src->current_order;
|
|
|
this->dest_tile = src->dest_tile;
|
|
|
|
|
|
this->profit_this_year = src->profit_this_year;
|
|
|
this->profit_last_year = src->profit_last_year;
|
|
|
|
|
|
this->current_order_time = src->current_order_time;
|
|
|
this->lateness_counter = src->lateness_counter;
|
|
|
this->timetable_start = src->timetable_start;
|
|
|
|
|
|
if (HasBit(src->vehicle_flags, VF_TIMETABLE_STARTED)) SetBit(this->vehicle_flags, VF_TIMETABLE_STARTED);
|
|
|
if (HasBit(src->vehicle_flags, VF_AUTOFILL_TIMETABLE)) SetBit(this->vehicle_flags, VF_AUTOFILL_TIMETABLE);
|
|
|
if (HasBit(src->vehicle_flags, VF_AUTOFILL_PRES_WAIT_TIME)) SetBit(this->vehicle_flags, VF_AUTOFILL_PRES_WAIT_TIME);
|
|
|
}
|
|
|
|
|
|
|
|
|
bool HandleBreakdown();
|
|
|
|
|
|
bool NeedsAutorenewing(const Company *c, bool use_renew_setting = true) const;
|