engine.h
changeset 3956 92362ba224b7
parent 3866 b13553406a0a
child 3997 8a997effbcec
equal deleted inserted replaced
3955:b96f96b31403 3956:92362ba224b7
    19 	byte running_cost_class;
    19 	byte running_cost_class;
    20 	byte engclass; // 0: steam, 1: diesel, 2: electric
    20 	byte engclass; // 0: steam, 1: diesel, 2: electric
    21 	byte capacity;
    21 	byte capacity;
    22 	CargoID cargo_type;
    22 	CargoID cargo_type;
    23 	byte ai_rank;
    23 	byte ai_rank;
    24 	byte callbackmask; // see CallbackMask enum
       
    25 	uint16 pow_wag_power;
    24 	uint16 pow_wag_power;
    26 	byte pow_wag_weight;
    25 	byte pow_wag_weight;
    27 	byte visual_effect; // NOTE: this is not 100% implemented yet, at the moment it is only used as a 'fallback' value
    26 	byte visual_effect; // NOTE: this is not 100% implemented yet, at the moment it is only used as a 'fallback' value
    28 	                    //       for when the 'powered wagon' callback fails. But it should really also determine what
    27 	                    //       for when the 'powered wagon' callback fails. But it should really also determine what
    29 	                    //       kind of visual effect to generate for a vehicle (default, steam, diesel, electric).
    28 	                    //       kind of visual effect to generate for a vehicle (default, steam, diesel, electric).
    39 	CargoID cargo_type;
    38 	CargoID cargo_type;
    40 	uint16 capacity;
    39 	uint16 capacity;
    41 	byte running_cost;
    40 	byte running_cost;
    42 	byte sfx;
    41 	byte sfx;
    43 	byte refittable;
    42 	byte refittable;
    44 	byte callbackmask;
       
    45 } ShipVehicleInfo;
    43 } ShipVehicleInfo;
    46 
    44 
    47 typedef struct AircraftVehicleInfo {
    45 typedef struct AircraftVehicleInfo {
    48 	byte image_index;
    46 	byte image_index;
    49 	byte base_cost;
    47 	byte base_cost;
    52 	byte sfx;
    50 	byte sfx;
    53 	byte acceleration;
    51 	byte acceleration;
    54 	byte max_speed;
    52 	byte max_speed;
    55 	byte mail_capacity;
    53 	byte mail_capacity;
    56 	uint16 passenger_capacity;
    54 	uint16 passenger_capacity;
    57 	byte callbackmask;
       
    58 } AircraftVehicleInfo;
    55 } AircraftVehicleInfo;
    59 
    56 
    60 typedef struct RoadVehicleInfo {
    57 typedef struct RoadVehicleInfo {
    61 	byte image_index;
    58 	byte image_index;
    62 	byte base_cost;
    59 	byte base_cost;
    63 	byte running_cost;
    60 	byte running_cost;
    64 	byte sfx;
    61 	byte sfx;
    65 	byte max_speed;
    62 	byte max_speed;
    66 	byte capacity;
    63 	byte capacity;
    67 	CargoID cargo_type;
    64 	CargoID cargo_type;
    68 	byte callbackmask;
       
    69 } RoadVehicleInfo;
    65 } RoadVehicleInfo;
    70 
    66 
    71 /** Information about a vehicle
    67 /** Information about a vehicle
    72   * @see table/engines.h
    68   * @see table/engines.h
    73   */
    69   */
    78 	byte base_life;
    74 	byte base_life;
    79 	byte railtype:4;
    75 	byte railtype:4;
    80 	byte climates:4;
    76 	byte climates:4;
    81 	uint32 refit_mask;
    77 	uint32 refit_mask;
    82 	byte misc_flags;
    78 	byte misc_flags;
       
    79 	byte callbackmask;
    83 } EngineInfo;
    80 } EngineInfo;
    84 
    81 
    85 typedef struct Engine {
    82 typedef struct Engine {
    86 	uint16 intro_date;
    83 	uint16 intro_date;
    87 	uint16 age;
    84 	uint16 age;