(svn r8429) -Codechange: Add a name for AircraftVehicleInfo subtype helicopter and remove some magic numbers related to the subtype.

This commit is contained in:
Darkvater 2007-01-27 12:45:55 +00:00
parent 50ca901b40
commit 08c21c0c61
4 changed files with 11 additions and 8 deletions

View File

@ -45,8 +45,11 @@ typedef struct ShipVehicleInfo {
bool refittable; bool refittable;
} ShipVehicleInfo; } ShipVehicleInfo;
/* AircraftVehicleInfo subtypes */ /* AircraftVehicleInfo subtypes, bitmask type.
* If bit 0 is 0 then it is a helicopter, otherwise it is a plane
* in which case bit 1 tells us whether it's a big(fast) plane or not */
enum { enum {
AIR_HELI = 0,
AIR_CTOL = 1, // Conventional Take Off and Landing, i.e. planes AIR_CTOL = 1, // Conventional Take Off and Landing, i.e. planes
AIR_FAST = 2 AIR_FAST = 2
}; };

View File

@ -745,15 +745,15 @@ static bool AircraftVehicleChangeInfo(uint engine, int numinfo, int prop, byte *
case 0x09: /* Helicopter */ case 0x09: /* Helicopter */
FOR_EACH_OBJECT { FOR_EACH_OBJECT {
if (grf_load_byte(&buf) == 0) { if (grf_load_byte(&buf) == 0) {
avi[i].subtype = 0; avi[i].subtype = AIR_HELI;
} else { } else {
SB(avi[i].subtype, 0, 1, 1); SB(avi[i].subtype, 0, 1, 1); // AIR_CTOL
} }
} }
break; break;
case 0x0A: /* Large */ case 0x0A: /* Large */
FOR_EACH_OBJECT SB(avi[i].subtype, 1, 1, (grf_load_byte(&buf) != 0 ? 1 : 0)); FOR_EACH_OBJECT SB(avi[i].subtype, 1, 1, (grf_load_byte(&buf) != 0 ? 1 : 0)); // AIR_FAST
break; break;
case 0x0B: /* Cost factor */ case 0x0B: /* Cost factor */

View File

@ -518,7 +518,7 @@ const ShipVehicleInfo orig_ship_vehicle_info[NUM_SHIP_ENGINES] = {
* @param i passenger_capacity * @param i passenger_capacity
*/ */
#define AVI(a, b, c, d, e, f, g, h, i) { a, b, c, d, {e}, f, g, h, i } #define AVI(a, b, c, d, e, f, g, h, i) { a, b, c, d, {e}, f, g, h, i }
#define H 0 #define H AIR_HELI
#define P AIR_CTOL #define P AIR_CTOL
#define J AIR_CTOL | AIR_FAST #define J AIR_CTOL | AIR_FAST
const AircraftVehicleInfo orig_aircraft_vehicle_info[NUM_AIRCRAFT_ENGINES] = { const AircraftVehicleInfo orig_aircraft_vehicle_info[NUM_AIRCRAFT_ENGINES] = {

View File

@ -2891,9 +2891,9 @@ static SpriteID GetEngineColourMap(EngineID engine_type, PlayerID player, Engine
const AircraftVehicleInfo *avi = AircraftVehInfo(engine_type); const AircraftVehicleInfo *avi = AircraftVehInfo(engine_type);
if (cargo_type == CT_INVALID) cargo_type = CT_PASSENGERS; if (cargo_type == CT_INVALID) cargo_type = CT_PASSENGERS;
switch (avi->subtype) { switch (avi->subtype) {
case 0: scheme = LS_HELICOPTER; break; case AIR_HELI: scheme = LS_HELICOPTER; break;
case 1: scheme = LS_SMALL_PLANE; break; case AIR_CTOL: scheme = LS_SMALL_PLANE; break;
case 3: scheme = LS_LARGE_PLANE; break; case AIR_CTOL | AIR_FAST: scheme = LS_LARGE_PLANE; break;
} }
break; break;
} }