summaryrefslogtreecommitdiff
path: root/src/engine_gui.cpp
diff options
context:
space:
mode:
authorglx <glx@openttd.org>2009-01-25 00:57:03 +0000
committerglx <glx@openttd.org>2009-01-25 00:57:03 +0000
commit470da22ac3dd297766a3064b8e72aa8c601c74c7 (patch)
treea8b3e55a2f1168021a45917b6fbf5777c3476634 /src/engine_gui.cpp
parent512cc98b35891a491b4e24a0a5f440f8b9e548d7 (diff)
downloadopenttd-470da22ac3dd297766a3064b8e72aa8c601c74c7.tar.xz
(svn r15263) -Codechange: added Engine::GetCost() to remove some code duplication.
Diffstat (limited to 'src/engine_gui.cpp')
-rw-r--r--src/engine_gui.cpp22
1 files changed, 14 insertions, 8 deletions
diff --git a/src/engine_gui.cpp b/src/engine_gui.cpp
index 679dd09fb..2593994b7 100644
--- a/src/engine_gui.cpp
+++ b/src/engine_gui.cpp
@@ -129,13 +129,14 @@ static void DrawTrainEngineInfo(EngineID engine, int x, int y, int maxw)
{
const RailVehicleInfo *rvi = RailVehInfo(engine);
int multihead = (rvi->railveh_type == RAILVEH_MULTIHEAD) ? 1 : 0;
+ const Engine *e = GetEngine(engine);
- SetDParam(0, (_price.build_railvehicle >> 3) * GetEngineProperty(engine, 0x17, rvi->cost_factor) >> 5);
+ SetDParam(0, e->GetCost());
SetDParam(2, GetEngineProperty(engine, 0x09, rvi->max_speed) * 10 / 16);
SetDParam(3, GetEngineProperty(engine, 0x0B, rvi->power));
SetDParam(1, GetEngineProperty(engine, 0x16, rvi->weight) << multihead);
- SetDParam(4, GetEngine(engine)->GetRunningCost());
+ SetDParam(4, e->GetRunningCost());
uint capacity = GetTotalCapacityOfArticulatedParts(engine, VEH_TRAIN);
if (capacity != 0) {
@@ -150,11 +151,13 @@ static void DrawTrainEngineInfo(EngineID engine, int x, int y, int maxw)
static void DrawAircraftEngineInfo(EngineID engine, int x, int y, int maxw)
{
const AircraftVehicleInfo *avi = AircraftVehInfo(engine);
- SetDParam(0, (_price.aircraft_base >> 3) * GetEngineProperty(engine, 0x0B, avi->cost_factor) >> 5);
+ const Engine *e = GetEngine(engine);
+
+ SetDParam(0, e->GetCost());
SetDParam(1, avi->max_speed * 10 / 16);
SetDParam(2, avi->passenger_capacity);
SetDParam(3, avi->mail_capacity);
- SetDParam(4, GetEngine(engine)->GetRunningCost());
+ SetDParam(4, e->GetRunningCost());
DrawStringMultiCenter(x, y, STR_A02E_COST_MAX_SPEED_CAPACITY, maxw);
}
@@ -162,10 +165,11 @@ static void DrawAircraftEngineInfo(EngineID engine, int x, int y, int maxw)
static void DrawRoadVehEngineInfo(EngineID engine, int x, int y, int maxw)
{
const RoadVehicleInfo *rvi = RoadVehInfo(engine);
+ const Engine *e = GetEngine(engine);
- SetDParam(0, (_price.roadveh_base >> 3) * GetEngineProperty(engine, 0x11, rvi->cost_factor) >> 5);
+ SetDParam(0, e->GetCost());
SetDParam(1, rvi->max_speed * 10 / 32);
- SetDParam(2, GetEngine(engine)->GetRunningCost());
+ SetDParam(2, e->GetRunningCost());
SetDParam(3, rvi->cargo_type);
SetDParam(4, GetTotalCapacityOfArticulatedParts(engine, VEH_ROAD));
@@ -175,11 +179,13 @@ static void DrawRoadVehEngineInfo(EngineID engine, int x, int y, int maxw)
static void DrawShipEngineInfo(EngineID engine, int x, int y, int maxw)
{
const ShipVehicleInfo *svi = ShipVehInfo(engine);
- SetDParam(0, GetEngineProperty(engine, 0x0A, svi->cost_factor) * (_price.ship_base >> 3) >> 5);
+ const Engine *e = GetEngine(engine);
+
+ SetDParam(0, e->GetCost());
SetDParam(1, GetEngineProperty(engine, 0x0B, svi->max_speed) * 10 / 32);
SetDParam(2, svi->cargo_type);
SetDParam(3, GetEngineProperty(engine, 0x0D, svi->capacity));
- SetDParam(4, GetEngine(engine)->GetRunningCost());
+ SetDParam(4, e->GetRunningCost());
DrawStringMultiCenter(x, y, STR_982E_COST_MAX_SPEED_CAPACITY, maxw);
}