(svn r3384) - NewGRF fix: running cost should be halved for dual head vehicles.
authorpeter1138
Sat, 07 Jan 2006 13:20:02 +0000
changeset 2836 b5e8424f5955
parent 2835 dd39a5ad0e10
child 2837 bbd6f3f4b814
(svn r3384) - NewGRF fix: running cost should be halved for dual head vehicles.
newgrf.c
--- a/newgrf.c	Sat Jan 07 13:13:49 2006 +0000
+++ b/newgrf.c	Sat Jan 07 13:20:02 2006 +0000
@@ -250,6 +250,9 @@
 			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 @@
 				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;
 				}
 			}