# HG changeset patch # User hackykid # Date 1117748330 0 # Node ID 0053e4f13db8b60ebef9411b15acc6fc3d79cc0d # Parent 278bddd649be750e0cf4cf07e3011329931866a8 (svn r2400) - Fix: [newgrf] Load power for dual-headed engines correctly diff -r 278bddd649be -r 0053e4f13db8 newgrf.c --- a/newgrf.c Thu Jun 02 19:55:37 2005 +0000 +++ b/newgrf.c Thu Jun 02 21:38:50 2005 +0000 @@ -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;