mirror of https://github.com/OpenTTD/OpenTTD.git
(svn r6858) - Fix (r6855): Handle rail vehicles with no capacity (N/A) by setting cargo type to CT_INVALID and handling it later. STR_8838_N_A is not a valid cargo type...
This commit is contained in:
parent
6d2c7b4fdf
commit
df8b06dec6
|
@ -139,7 +139,7 @@ static void DrawTrainEngineInfo(EngineID engine, int x, int y, int maxw)
|
||||||
SetDParam(5, rvi->cargo_type);
|
SetDParam(5, rvi->cargo_type);
|
||||||
SetDParam(6, rvi->capacity << multihead);
|
SetDParam(6, rvi->capacity << multihead);
|
||||||
} else {
|
} else {
|
||||||
SetDParam(5, STR_8838_N_A);
|
SetDParam(5, CT_INVALID);
|
||||||
}
|
}
|
||||||
DrawStringMultiCenter(x, y, STR_VEHICLE_INFO_COST_WEIGHT_SPEED_POWER, maxw);
|
DrawStringMultiCenter(x, y, STR_VEHICLE_INFO_COST_WEIGHT_SPEED_POWER, maxw);
|
||||||
}
|
}
|
||||||
|
|
|
@ -731,7 +731,8 @@ static char *FormatString(char *buff, const char *str, const int32 *argv, uint c
|
||||||
// Layout now is:
|
// Layout now is:
|
||||||
// 8bit - cargo type
|
// 8bit - cargo type
|
||||||
// 16-bit - cargo count
|
// 16-bit - cargo count
|
||||||
StringID cargo_str = _cargoc.names_long[GetInt32(&argv)];
|
CargoID cargo = GetInt32(&argv);
|
||||||
|
StringID cargo_str = (cargo == CT_INVALID) ? STR_8838_N_A : _cargoc.names_long[cargo];
|
||||||
buff = GetStringWithArgs(buff, cargo_str, argv++);
|
buff = GetStringWithArgs(buff, cargo_str, argv++);
|
||||||
break;
|
break;
|
||||||
}
|
}
|
||||||
|
|
14
train_gui.c
14
train_gui.c
|
@ -269,9 +269,10 @@ void DrawTrainEnginePurchaseInfo(int x, int y, EngineID engine_number)
|
||||||
};
|
};
|
||||||
|
|
||||||
/* Cargo type + capacity, or N/A */
|
/* Cargo type + capacity, or N/A */
|
||||||
SetDParam(0, STR_8838_N_A);
|
if (rvi->capacity == 0) {
|
||||||
SetDParam(2, STR_EMPTY);
|
SetDParam(0, CT_INVALID);
|
||||||
if (rvi->capacity != 0) {
|
SetDParam(2, STR_EMPTY);
|
||||||
|
} else {
|
||||||
SetDParam(0, rvi->cargo_type);
|
SetDParam(0, rvi->cargo_type);
|
||||||
SetDParam(1, (rvi->capacity * (CountArticulatedParts(engine_number) + 1)) << multihead);
|
SetDParam(1, (rvi->capacity * (CountArticulatedParts(engine_number) + 1)) << multihead);
|
||||||
SetDParam(2, STR_9842_REFITTABLE);
|
SetDParam(2, STR_9842_REFITTABLE);
|
||||||
|
@ -317,9 +318,10 @@ void DrawTrainWagonPurchaseInfo(int x, int y, EngineID engine_number)
|
||||||
y += 10;
|
y += 10;
|
||||||
|
|
||||||
/* Cargo type + capacity, or N/A */
|
/* Cargo type + capacity, or N/A */
|
||||||
SetDParam(0, STR_8838_N_A);
|
if (rvi->capacity == 0) {
|
||||||
SetDParam(2, STR_EMPTY);
|
SetDParam(0, CT_INVALID);
|
||||||
if (rvi->capacity != 0) {
|
SetDParam(2, STR_EMPTY);
|
||||||
|
} else {
|
||||||
SetDParam(0, rvi->cargo_type);
|
SetDParam(0, rvi->cargo_type);
|
||||||
SetDParam(1, rvi->capacity * (CountArticulatedParts(engine_number) + 1));
|
SetDParam(1, rvi->capacity * (CountArticulatedParts(engine_number) + 1));
|
||||||
SetDParam(2, refittable ? STR_9842_REFITTABLE : STR_EMPTY);
|
SetDParam(2, refittable ? STR_9842_REFITTABLE : STR_EMPTY);
|
||||||
|
|
Loading…
Reference in New Issue