Changeset - r2214:59bf23688ead
[Not reviewed]
master
0 5 0
celestar - 19 years ago 2005-07-28 06:09:15
celestar@openttd.org
(svn r2732) -Codechange: Cleaned the order flags some more. Hit some inconsistencies while trying to locate bug 1244167
5 files changed with 37 insertions and 19 deletions:
0 comments (0 inline, 0 general)
aircraft_cmd.c
Show inline comments
 
@@ -1124,7 +1124,7 @@ static void ProcessAircraftOrder(Vehicle
 
	}
 

	
 
	if (v->current_order.type == OT_GOTO_DEPOT &&
 
			(v->current_order.flags & (OF_UNLOAD | OF_FULL_LOAD)) == (OF_UNLOAD | OF_FULL_LOAD) &&
 
			(v->current_order.flags & (OF_PART_OF_ORDERS | OF_SERVICE_IF_NEEDED)) == (OF_PART_OF_ORDERS | OF_SERVICE_IF_NEEDED) &&
 
 			!VehicleNeedsService(v)) {
 
			v->cur_order_index++;
 
		}
order.h
Show inline comments
 
/* $Id$ */
 

	
 
/** @file order.h
 
  */
 

	
 
#ifndef ORDER_H
 
#define ORDER_H
 

	
 
@@ -19,29 +22,44 @@ enum {
 

	
 
/* Order flags -- please use OFB instead OF and use HASBIT/SETBIT/CLEARBIT */
 

	
 
/* Order flag masks - these are for direct bit operations */
 
enum {
 
/** Order flag masks - these are for direct bit operations */
 
enum OrderFlagMasks {
 
	//Flags for stations:
 
	OF_TRANSFER       = 0x1,
 
	OF_UNLOAD         = 0x2,
 
	OF_FULL_LOAD      = 0x4, // Also used when to force an aircraft into a depot
 
	/** vehicle will transfer cargo (i. e. not deliver to nearby industry/town even if accepted there) */
 
	OF_TRANSFER           = 0x1,
 
	/** If OF_TRANSFER is not set, drop any cargo loaded. If accepted, deliver, otherwise cargo remains at the station.
 
      * No new cargo is loaded onto the vehicle whatsoever */
 
	OF_UNLOAD             = 0x2,
 
	/** Wait for full load of all vehicles, or of at least one cargo type, depending on patch setting
 
	  * @todo make this two different flags */
 
	OF_FULL_LOAD          = 0x4,
 

	
 
	//Flags for depots:
 
	OF_PART_OF_ORDERS	= 0x2,
 
	OF_HALT_IN_DEPOT  = 0x4,
 
	/** The current depot-order was initiated because it was in the vehicle's order list */
 
	OF_PART_OF_ORDERS	  = 0x2,
 
	/** if OF_PART_OF_ORDERS is not set, this will cause the vehicle to be stopped in the depot */
 
	OF_HALT_IN_DEPOT      = 0x4,
 
	/** if OF_PART_OF_ORDERS is set, this will cause the order only be come active if the vehicle needs servicing */
 
	OF_SERVICE_IF_NEEDED  = 0x4, //used when OF_PART_OF_ORDERS is set.
 

	
 
	//Common flags
 
	OF_NON_STOP  = 0x8
 
	/** This causes the vehicle not to stop at intermediate OR the destination station (depending on patch settings)
 
	  * @todo make this two different flags */
 
	OF_NON_STOP           = 0x8
 
};
 

	
 
/* Order flags bits - these are for the *BIT macros */
 
/** Order flags bits - these are for the *BIT macros
 
  * for descrption of flags, see OrderFlagMasks
 
  * @see OrderFlagMasks
 
  */
 
enum {
 
	OFB_TRANSFER       = 0,
 
	OFB_UNLOAD         = 1,
 
	OFB_FULL_LOAD      = 2,
 
	OFB_PART_OF_ORDERS = 1,
 
	OFB_HALT_IN_DEPOT  = 2,
 
	OFB_NON_STOP       = 3
 
	OFB_TRANSFER          = 0,
 
	OFB_UNLOAD            = 1,
 
	OFB_FULL_LOAD         = 2,
 
	OFB_PART_OF_ORDERS    = 1,
 
	OFB_HALT_IN_DEPOT     = 2,
 
	OFB_SERVICE_IF_NEEDED = 2,
 
	OFB_NON_STOP          = 3
 
};
 

	
 

	
roadveh_cmd.c
Show inline comments
 
@@ -630,7 +630,7 @@ static void ProcessRoadVehOrder(Vehicle 
 
	}
 

	
 
	if (v->current_order.type == OT_GOTO_DEPOT &&
 
			(v->current_order.flags & (OF_UNLOAD | OF_FULL_LOAD)) == (OF_UNLOAD | OF_FULL_LOAD) &&
 
			(v->current_order.flags & (OF_PART_OF_ORDERS | OF_SERVICE_IF_NEEDED)) == (OF_PART_OF_ORDERS | OF_SERVICE_IF_NEEDED) &&
 
			!VehicleNeedsService(v)) {
 
		v->cur_order_index++;
 
	}
ship_cmd.c
Show inline comments
 
@@ -220,7 +220,7 @@ static void ProcessShipOrder(Vehicle *v)
 
	}
 

	
 
	if (v->current_order.type == OT_GOTO_DEPOT &&
 
			(v->current_order.flags & (OF_UNLOAD | OF_FULL_LOAD)) == (OF_UNLOAD | OF_FULL_LOAD) &&
 
			(v->current_order.flags & (OF_PART_OF_ORDERS | OF_SERVICE_IF_NEEDED)) == (OF_PART_OF_ORDERS | OF_SERVICE_IF_NEEDED) &&
 
			!VehicleNeedsService(v)) {
 
		v->cur_order_index++;
 
	}
train_cmd.c
Show inline comments
 
@@ -2156,7 +2156,7 @@ static bool ProcessTrainOrder(Vehicle *v
 
	}
 

	
 
	if (v->current_order.type == OT_GOTO_DEPOT &&
 
			(v->current_order.flags & (OF_UNLOAD | OF_FULL_LOAD)) ==  (OF_UNLOAD | OF_FULL_LOAD) &&
 
			(v->current_order.flags & (OF_PART_OF_ORDERS | OF_SERVICE_IF_NEEDED)) ==  (OF_PART_OF_ORDERS | OF_SERVICE_IF_NEEDED) &&
 
			!VehicleNeedsService(v)) {
 
		v->cur_order_index++;
 
	}
0 comments (0 inline, 0 general)