Mercurial > hg > openttd
changeset 1894:a21efd984d93 draft
(svn r2400) - Fix: [newgrf] Load power for dual-headed engines correctly
author | hackykid <hackykid@openttd.org> |
---|---|
date | Thu, 02 Jun 2005 21:38:50 +0000 |
parents | 62c40e7e36b0 |
children | 8711ec773543 |
files | newgrf.c |
diffstat | 1 files changed, 9 insertions(+), 2 deletions(-) [+] |
line wrap: on
line diff
--- a/newgrf.c +++ b/newgrf.c @@ -225,6 +225,9 @@ FOR_EACH_OBJECT { uint16 power = grf_load_word(&buf); + if (rvi[i].flags & RVI_MULTIHEAD) + power /= 2; + rvi[i].power = power; dewagonize(power, engine + i); } @@ -269,9 +272,13 @@ uint8 dual = grf_load_byte(&buf); if (dual != 0) { - rvi[i].flags |= 1; + if (!(rvi[i].flags & RVI_MULTIHEAD)) // adjust power if needed + rvi[i].power /= 2; + rvi[i].flags |= RVI_MULTIHEAD; } else { - rvi[i].flags &= ~1; + if (rvi[i].flags & RVI_MULTIHEAD) // adjust power if needed + rvi[i].power *= 2; + rvi[i].flags &= ~RVI_MULTIHEAD; } } } break;