(svn r6456) - Replace single colour scheme for passenger wagons with separate schemes for each of steam, diesel or electric engines. Savegames from the previous revision will not load.
This commit is contained in:
@@ -2174,7 +2174,9 @@ STR_LIVERY_MONORAIL :Monorail Engine
|
|||||||
STR_LIVERY_MAGLEV :Maglev Engine
|
STR_LIVERY_MAGLEV :Maglev Engine
|
||||||
STR_LIVERY_DMU :DMU
|
STR_LIVERY_DMU :DMU
|
||||||
STR_LIVERY_EMU :EMU
|
STR_LIVERY_EMU :EMU
|
||||||
STR_LIVERY_PASSENGER_WAGON :Passenger Coach
|
STR_LIVERY_PASSENGER_WAGON_STEAM :Passenger Coach (Steam)
|
||||||
|
STR_LIVERY_PASSENGER_WAGON_DIESEL :Passenger Coach (Diesel)
|
||||||
|
STR_LIVERY_PASSENGER_WAGON_ELECTRIC :Passenger Coach (Electric)
|
||||||
STR_LIVERY_FREIGHT_WAGON :Freight Wagon
|
STR_LIVERY_FREIGHT_WAGON :Freight Wagon
|
||||||
STR_LIVERY_BUS :Bus
|
STR_LIVERY_BUS :Bus
|
||||||
STR_LIVERY_TRUCK :Lorry
|
STR_LIVERY_TRUCK :Lorry
|
||||||
|
4
livery.h
4
livery.h
@@ -16,7 +16,9 @@ typedef enum LiverySchemes {
|
|||||||
LS_MAGLEV,
|
LS_MAGLEV,
|
||||||
LS_DMU,
|
LS_DMU,
|
||||||
LS_EMU,
|
LS_EMU,
|
||||||
LS_PASSENGER_WAGON,
|
LS_PASSENGER_WAGON_STEAM,
|
||||||
|
LS_PASSENGER_WAGON_DIESEL,
|
||||||
|
LS_PASSENGER_WAGON_ELECTRIC,
|
||||||
LS_FREIGHT_WAGON,
|
LS_FREIGHT_WAGON,
|
||||||
|
|
||||||
/* Road vehicles */
|
/* Road vehicles */
|
||||||
|
@@ -269,7 +269,7 @@ static const StringID _colour_dropdown[] = {
|
|||||||
/* Association of liveries to livery classes */
|
/* Association of liveries to livery classes */
|
||||||
static const LiveryClass livery_class[LS_END] = {
|
static const LiveryClass livery_class[LS_END] = {
|
||||||
LC_OTHER,
|
LC_OTHER,
|
||||||
LC_RAIL, LC_RAIL, LC_RAIL, LC_RAIL, LC_RAIL, LC_RAIL, LC_RAIL, LC_RAIL, LC_RAIL,
|
LC_RAIL, LC_RAIL, LC_RAIL, LC_RAIL, LC_RAIL, LC_RAIL, LC_RAIL, LC_RAIL, LC_RAIL, LC_RAIL, LC_RAIL,
|
||||||
LC_ROAD, LC_ROAD,
|
LC_ROAD, LC_ROAD,
|
||||||
LC_SHIP, LC_SHIP,
|
LC_SHIP, LC_SHIP,
|
||||||
LC_AIRCRAFT, LC_AIRCRAFT, LC_AIRCRAFT,
|
LC_AIRCRAFT, LC_AIRCRAFT, LC_AIRCRAFT,
|
||||||
@@ -278,7 +278,7 @@ static const LiveryClass livery_class[LS_END] = {
|
|||||||
/* Number of liveries in each class, used to determine the height of the livery window */
|
/* Number of liveries in each class, used to determine the height of the livery window */
|
||||||
static const byte livery_height[] = {
|
static const byte livery_height[] = {
|
||||||
1,
|
1,
|
||||||
9,
|
11,
|
||||||
2,
|
2,
|
||||||
2,
|
2,
|
||||||
3,
|
3,
|
||||||
|
15
vehicle.c
15
vehicle.c
@@ -2322,8 +2322,19 @@ static PalSpriteID GetEngineColourMap(EngineID engine_type, PlayerID player, Eng
|
|||||||
|
|
||||||
if (cargo_type == CT_INVALID) cargo_type = rvi->cargo_type;
|
if (cargo_type == CT_INVALID) cargo_type = rvi->cargo_type;
|
||||||
if (rvi->flags & RVI_WAGON) {
|
if (rvi->flags & RVI_WAGON) {
|
||||||
scheme = (cargo_type == CT_PASSENGERS || cargo_type == CT_MAIL || cargo_type == CT_VALUABLES) ?
|
if (cargo_type == CT_PASSENGERS || cargo_type == CT_MAIL || cargo_type == CT_VALUABLES) {
|
||||||
LS_PASSENGER_WAGON : LS_FREIGHT_WAGON;
|
if (parent_engine_type == INVALID_ENGINE) {
|
||||||
|
scheme = LS_PASSENGER_WAGON_STEAM;
|
||||||
|
} else {
|
||||||
|
switch (RailVehInfo(parent_engine_type)->engclass) {
|
||||||
|
case 0: scheme = LS_PASSENGER_WAGON_STEAM; break;
|
||||||
|
case 1: scheme = LS_PASSENGER_WAGON_DIESEL; break;
|
||||||
|
case 2: scheme = LS_PASSENGER_WAGON_ELECTRIC; break;
|
||||||
|
}
|
||||||
|
}
|
||||||
|
} else {
|
||||||
|
scheme = LS_FREIGHT_WAGON;
|
||||||
|
}
|
||||||
} else {
|
} else {
|
||||||
bool is_mu = HASBIT(_engine_info[engine_type].misc_flags, EF_RAIL_IS_MU);
|
bool is_mu = HASBIT(_engine_info[engine_type].misc_flags, EF_RAIL_IS_MU);
|
||||||
|
|
||||||
|
Reference in New Issue
Block a user