(svn r3384) - NewGRF fix: running cost should be halved for dual head vehicles.

This commit is contained in:
peter1138 2006-01-07 13:20:02 +00:00
parent 1cfabfbb09
commit 473b3072ea
1 changed files with 11 additions and 2 deletions

View File

@ -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;
}
}