|
|
|
@ -418,7 +418,7 @@ static int DrawCargoCapacityInfo(int left, int right, int y, EngineID engine, Ve
|
|
|
|
|
SetDParam(0, c);
|
|
|
|
|
SetDParam(1, cap[c]);
|
|
|
|
|
SetDParam(2, refittable ? STR_REFITTABLE : STR_EMPTY);
|
|
|
|
|
DrawString(left, right, y, STR_PURCHASE_INFO_CAPACITY, TC_FROMSTRING);
|
|
|
|
|
DrawString(left, right, y, STR_PURCHASE_INFO_CAPACITY);
|
|
|
|
|
y += FONT_HEIGHT_NORMAL;
|
|
|
|
|
|
|
|
|
|
/* Only show as refittable once */
|
|
|
|
@ -435,7 +435,7 @@ static int DrawRailWagonPurchaseInfo(int left, int right, int y, EngineID engine
|
|
|
|
|
|
|
|
|
|
/* Purchase cost */
|
|
|
|
|
SetDParam(0, e->GetCost());
|
|
|
|
|
DrawString(left, right, y, STR_PURCHASE_INFO_COST, TC_FROMSTRING);
|
|
|
|
|
DrawString(left, right, y, STR_PURCHASE_INFO_COST);
|
|
|
|
|
y += FONT_HEIGHT_NORMAL;
|
|
|
|
|
|
|
|
|
|
/* Wagon weight - (including cargo) */
|
|
|
|
@ -443,7 +443,7 @@ static int DrawRailWagonPurchaseInfo(int left, int right, int y, EngineID engine
|
|
|
|
|
SetDParam(0, weight);
|
|
|
|
|
uint cargo_weight = (e->CanCarryCargo() ? GetCargo(e->GetDefaultCargoType())->weight * e->GetDisplayDefaultCapacity() >> 4 : 0);
|
|
|
|
|
SetDParam(1, cargo_weight + weight);
|
|
|
|
|
DrawString(left, right, y, STR_PURCHASE_INFO_WEIGHT_CWEIGHT, TC_FROMSTRING);
|
|
|
|
|
DrawString(left, right, y, STR_PURCHASE_INFO_WEIGHT_CWEIGHT);
|
|
|
|
|
y += FONT_HEIGHT_NORMAL;
|
|
|
|
|
|
|
|
|
|
/* Wagon speed limit, displayed if above zero */
|
|
|
|
@ -451,7 +451,7 @@ static int DrawRailWagonPurchaseInfo(int left, int right, int y, EngineID engine
|
|
|
|
|
uint max_speed = e->GetDisplayMaxSpeed();
|
|
|
|
|
if (max_speed > 0) {
|
|
|
|
|
SetDParam(0, max_speed);
|
|
|
|
|
DrawString(left, right, y, STR_PURCHASE_INFO_SPEED, TC_FROMSTRING);
|
|
|
|
|
DrawString(left, right, y, STR_PURCHASE_INFO_SPEED);
|
|
|
|
|
y += FONT_HEIGHT_NORMAL;
|
|
|
|
|
}
|
|
|
|
|
}
|
|
|
|
@ -459,7 +459,7 @@ static int DrawRailWagonPurchaseInfo(int left, int right, int y, EngineID engine
|
|
|
|
|
/* Running cost */
|
|
|
|
|
if (rvi->running_cost_class != 0xFF) {
|
|
|
|
|
SetDParam(0, e->GetRunningCost());
|
|
|
|
|
DrawString(left, right, y, STR_PURCHASE_INFO_RUNNINGCOST, TC_FROMSTRING);
|
|
|
|
|
DrawString(left, right, y, STR_PURCHASE_INFO_RUNNINGCOST);
|
|
|
|
|
y += FONT_HEIGHT_NORMAL;
|
|
|
|
|
}
|
|
|
|
|
|
|
|
|
@ -474,26 +474,26 @@ static int DrawRailEnginePurchaseInfo(int left, int right, int y, EngineID engin
|
|
|
|
|
/* Purchase Cost - Engine weight */
|
|
|
|
|
SetDParam(0, e->GetCost());
|
|
|
|
|
SetDParam(1, e->GetDisplayWeight());
|
|
|
|
|
DrawString(left, right, y, STR_PURCHASE_INFO_COST_WEIGHT, TC_FROMSTRING);
|
|
|
|
|
DrawString(left, right, y, STR_PURCHASE_INFO_COST_WEIGHT);
|
|
|
|
|
y += FONT_HEIGHT_NORMAL;
|
|
|
|
|
|
|
|
|
|
/* Max speed - Engine power */
|
|
|
|
|
SetDParam(0, e->GetDisplayMaxSpeed());
|
|
|
|
|
SetDParam(1, e->GetPower());
|
|
|
|
|
DrawString(left, right, y, STR_PURCHASE_INFO_SPEED_POWER, TC_FROMSTRING);
|
|
|
|
|
DrawString(left, right, y, STR_PURCHASE_INFO_SPEED_POWER);
|
|
|
|
|
y += FONT_HEIGHT_NORMAL;
|
|
|
|
|
|
|
|
|
|
/* Max tractive effort - not applicable if old acceleration or maglev */
|
|
|
|
|
if (_settings_game.vehicle.train_acceleration_model != TAM_ORIGINAL && rvi->railtype != RAILTYPE_MAGLEV) {
|
|
|
|
|
SetDParam(0, e->GetDisplayMaxTractiveEffort());
|
|
|
|
|
DrawString(left, right, y, STR_PURCHASE_INFO_MAX_TE, TC_FROMSTRING);
|
|
|
|
|
DrawString(left, right, y, STR_PURCHASE_INFO_MAX_TE);
|
|
|
|
|
y += FONT_HEIGHT_NORMAL;
|
|
|
|
|
}
|
|
|
|
|
|
|
|
|
|
/* Running cost */
|
|
|
|
|
if (rvi->running_cost_class != 0xFF) {
|
|
|
|
|
SetDParam(0, e->GetRunningCost());
|
|
|
|
|
DrawString(left, right, y, STR_PURCHASE_INFO_RUNNINGCOST, TC_FROMSTRING);
|
|
|
|
|
DrawString(left, right, y, STR_PURCHASE_INFO_RUNNINGCOST);
|
|
|
|
|
y += FONT_HEIGHT_NORMAL;
|
|
|
|
|
}
|
|
|
|
|
|
|
|
|
@ -501,7 +501,7 @@ static int DrawRailEnginePurchaseInfo(int left, int right, int y, EngineID engin
|
|
|
|
|
if (rvi->pow_wag_power != 0) {
|
|
|
|
|
SetDParam(0, rvi->pow_wag_power);
|
|
|
|
|
SetDParam(1, rvi->pow_wag_weight);
|
|
|
|
|
DrawString(left, right, y, STR_PURCHASE_INFO_PWAGPOWER_PWAGWEIGHT, TC_FROMSTRING);
|
|
|
|
|
DrawString(left, right, y, STR_PURCHASE_INFO_PWAGPOWER_PWAGWEIGHT);
|
|
|
|
|
y += FONT_HEIGHT_NORMAL;
|
|
|
|
|
};
|
|
|
|
|
|
|
|
|
@ -516,12 +516,12 @@ static int DrawRoadVehPurchaseInfo(int left, int right, int y, EngineID engine_n
|
|
|
|
|
/* Purchase cost - Max speed */
|
|
|
|
|
SetDParam(0, e->GetCost());
|
|
|
|
|
SetDParam(1, e->GetDisplayMaxSpeed());
|
|
|
|
|
DrawString(left, right, y, STR_PURCHASE_INFO_COST_SPEED, TC_FROMSTRING);
|
|
|
|
|
DrawString(left, right, y, STR_PURCHASE_INFO_COST_SPEED);
|
|
|
|
|
y += FONT_HEIGHT_NORMAL;
|
|
|
|
|
|
|
|
|
|
/* Running cost */
|
|
|
|
|
SetDParam(0, e->GetRunningCost());
|
|
|
|
|
DrawString(left, right, y, STR_PURCHASE_INFO_RUNNINGCOST, TC_FROMSTRING);
|
|
|
|
|
DrawString(left, right, y, STR_PURCHASE_INFO_RUNNINGCOST);
|
|
|
|
|
y += FONT_HEIGHT_NORMAL;
|
|
|
|
|
|
|
|
|
|
return y;
|
|
|
|
@ -535,19 +535,19 @@ static int DrawShipPurchaseInfo(int left, int right, int y, EngineID engine_numb
|
|
|
|
|
/* Purchase cost - Max speed */
|
|
|
|
|
SetDParam(0, e->GetCost());
|
|
|
|
|
SetDParam(1, e->GetDisplayMaxSpeed());
|
|
|
|
|
DrawString(left, right, y, STR_PURCHASE_INFO_COST_SPEED, TC_FROMSTRING);
|
|
|
|
|
DrawString(left, right, y, STR_PURCHASE_INFO_COST_SPEED);
|
|
|
|
|
y += FONT_HEIGHT_NORMAL;
|
|
|
|
|
|
|
|
|
|
/* Cargo type + capacity */
|
|
|
|
|
SetDParam(0, e->GetDefaultCargoType());
|
|
|
|
|
SetDParam(1, e->GetDisplayDefaultCapacity());
|
|
|
|
|
SetDParam(2, refittable ? STR_REFITTABLE : STR_EMPTY);
|
|
|
|
|
DrawString(left, right, y, STR_PURCHASE_INFO_CAPACITY, TC_FROMSTRING);
|
|
|
|
|
DrawString(left, right, y, STR_PURCHASE_INFO_CAPACITY);
|
|
|
|
|
y += FONT_HEIGHT_NORMAL;
|
|
|
|
|
|
|
|
|
|
/* Running cost */
|
|
|
|
|
SetDParam(0, e->GetRunningCost());
|
|
|
|
|
DrawString(left, right, y, STR_PURCHASE_INFO_RUNNINGCOST, TC_FROMSTRING);
|
|
|
|
|
DrawString(left, right, y, STR_PURCHASE_INFO_RUNNINGCOST);
|
|
|
|
|
y += FONT_HEIGHT_NORMAL;
|
|
|
|
|
|
|
|
|
|
return y;
|
|
|
|
@ -562,7 +562,7 @@ static int DrawAircraftPurchaseInfo(int left, int right, int y, EngineID engine_
|
|
|
|
|
/* Purchase cost - Max speed */
|
|
|
|
|
SetDParam(0, e->GetCost());
|
|
|
|
|
SetDParam(1, e->GetDisplayMaxSpeed());
|
|
|
|
|
DrawString(left, right, y, STR_PURCHASE_INFO_COST_SPEED, TC_FROMSTRING);
|
|
|
|
|
DrawString(left, right, y, STR_PURCHASE_INFO_COST_SPEED);
|
|
|
|
|
y += FONT_HEIGHT_NORMAL;
|
|
|
|
|
|
|
|
|
|
/* Cargo capacity */
|
|
|
|
@ -571,20 +571,20 @@ static int DrawAircraftPurchaseInfo(int left, int right, int y, EngineID engine_
|
|
|
|
|
SetDParam(1, e->GetDisplayDefaultCapacity());
|
|
|
|
|
SetDParam(2, CT_MAIL);
|
|
|
|
|
SetDParam(3, avi->mail_capacity);
|
|
|
|
|
DrawString(left, right, y, STR_PURCHASE_INFO_AIRCRAFT_CAPACITY, TC_FROMSTRING);
|
|
|
|
|
DrawString(left, right, y, STR_PURCHASE_INFO_AIRCRAFT_CAPACITY);
|
|
|
|
|
} else {
|
|
|
|
|
/* Note, if the default capacity is selected by the refit capacity
|
|
|
|
|
* callback, then the capacity shown is likely to be incorrect. */
|
|
|
|
|
SetDParam(0, cargo);
|
|
|
|
|
SetDParam(1, e->GetDisplayDefaultCapacity());
|
|
|
|
|
SetDParam(2, refittable ? STR_REFITTABLE : STR_EMPTY);
|
|
|
|
|
DrawString(left, right, y, STR_PURCHASE_INFO_CAPACITY, TC_FROMSTRING);
|
|
|
|
|
DrawString(left, right, y, STR_PURCHASE_INFO_CAPACITY);
|
|
|
|
|
}
|
|
|
|
|
y += FONT_HEIGHT_NORMAL;
|
|
|
|
|
|
|
|
|
|
/* Running cost */
|
|
|
|
|
SetDParam(0, e->GetRunningCost());
|
|
|
|
|
DrawString(left, right, y, STR_PURCHASE_INFO_RUNNINGCOST, TC_FROMSTRING);
|
|
|
|
|
DrawString(left, right, y, STR_PURCHASE_INFO_RUNNINGCOST);
|
|
|
|
|
y += FONT_HEIGHT_NORMAL;
|
|
|
|
|
|
|
|
|
|
return y;
|
|
|
|
@ -619,7 +619,7 @@ int DrawVehiclePurchaseInfo(int left, int right, int y, EngineID engine_number)
|
|
|
|
|
if (new_y == y) {
|
|
|
|
|
SetDParam(0, CT_INVALID);
|
|
|
|
|
SetDParam(2, STR_EMPTY);
|
|
|
|
|
DrawString(left, right, y, STR_PURCHASE_INFO_CAPACITY, TC_FROMSTRING);
|
|
|
|
|
DrawString(left, right, y, STR_PURCHASE_INFO_CAPACITY);
|
|
|
|
|
y += FONT_HEIGHT_NORMAL;
|
|
|
|
|
} else {
|
|
|
|
|
y = new_y;
|
|
|
|
@ -635,7 +635,7 @@ int DrawVehiclePurchaseInfo(int left, int right, int y, EngineID engine_number)
|
|
|
|
|
if (new_y == y) {
|
|
|
|
|
SetDParam(0, CT_INVALID);
|
|
|
|
|
SetDParam(2, STR_EMPTY);
|
|
|
|
|
DrawString(left, right, y, STR_PURCHASE_INFO_CAPACITY, TC_FROMSTRING);
|
|
|
|
|
DrawString(left, right, y, STR_PURCHASE_INFO_CAPACITY);
|
|
|
|
|
y += FONT_HEIGHT_NORMAL;
|
|
|
|
|
} else {
|
|
|
|
|
y = new_y;
|
|
|
|
@ -655,12 +655,12 @@ int DrawVehiclePurchaseInfo(int left, int right, int y, EngineID engine_number)
|
|
|
|
|
/* Design date - Life length */
|
|
|
|
|
SetDParam(0, ymd.year);
|
|
|
|
|
SetDParam(1, e->lifelength);
|
|
|
|
|
DrawString(left, right, y, STR_PURCHASE_INFO_DESIGNED_LIFE, TC_FROMSTRING);
|
|
|
|
|
DrawString(left, right, y, STR_PURCHASE_INFO_DESIGNED_LIFE);
|
|
|
|
|
y += FONT_HEIGHT_NORMAL;
|
|
|
|
|
|
|
|
|
|
/* Reliability */
|
|
|
|
|
SetDParam(0, e->reliability * 100 >> 16);
|
|
|
|
|
DrawString(left, right, y, STR_PURCHASE_INFO_RELIABILITY, TC_FROMSTRING);
|
|
|
|
|
DrawString(left, right, y, STR_PURCHASE_INFO_RELIABILITY);
|
|
|
|
|
y += FONT_HEIGHT_NORMAL;
|
|
|
|
|
}
|
|
|
|
|
|
|
|
|
|