From 473b3072ea97b78f5863d27dcca48efb152dcb04 Mon Sep 17 00:00:00 2001 From: peter1138 Date: Sat, 7 Jan 2006 13:20:02 +0000 Subject: [PATCH] (svn r3384) - NewGRF fix: running cost should be halved for dual head vehicles. --- newgrf.c | 13 +++++++++++-- 1 file changed, 11 insertions(+), 2 deletions(-) diff --git a/newgrf.c b/newgrf.c index 189557157f..90a777a9e3 100644 --- a/newgrf.c +++ b/newgrf.c @@ -250,6 +250,9 @@ static bool RailVehicleChangeInfo(uint engine, int numinfo, int prop, byte **buf FOR_EACH_OBJECT { uint8 runcostfact = grf_load_byte(&buf); + if (rvi[i].flags & RVI_MULTIHEAD) + runcostfact /= 2; + rvi[i].running_cost_base = runcostfact; dewagonize(runcostfact, engine + i); } @@ -278,12 +281,18 @@ static bool RailVehicleChangeInfo(uint engine, int numinfo, int prop, byte **buf uint8 dual = grf_load_byte(&buf); if (dual != 0) { - if (!(rvi[i].flags & RVI_MULTIHEAD)) // adjust power if needed + if (!(rvi[i].flags & RVI_MULTIHEAD)) { + // adjust power and running cost if needed rvi[i].power /= 2; + rvi[i].running_cost_base /= 2; + } rvi[i].flags |= RVI_MULTIHEAD; } else { - if (rvi[i].flags & RVI_MULTIHEAD) // adjust power if needed + if (rvi[i].flags & RVI_MULTIHEAD) { + // adjust power and running cost if needed rvi[i].power *= 2; + rvi[i].running_cost_base /= 2; + } rvi[i].flags &= ~RVI_MULTIHEAD; } }