(svn r5061) - NewGRF: always use visual effect callback if it is defined, not just for powered wagons.
authorpeter1138
Wed, 31 May 2006 18:00:08 +0000
changeset 3926 eb6d2e32fc79
parent 3925 0b0c1fc5535e
child 3927 b6e0f409d92d
(svn r5061) - NewGRF: always use visual effect callback if it is defined, not just for powered wagons.
train_cmd.c
--- a/train_cmd.c	Wed May 31 17:40:48 2006 +0000
+++ b/train_cmd.c	Wed May 31 18:00:08 2006 +0000
@@ -167,14 +167,15 @@
 		if (!IsArticulatedPart(u)) {
 			// check if its a powered wagon
 			CLRBIT(u->u.rail.flags, VRF_POWEREDWAGON);
+
+			/* Check powered wagon / visual effect callback */
+			if (HASBIT(rvi_u->callbackmask, CBM_WAGON_POWER)) {
+				uint16 callback = GetVehicleCallback(CBID_TRAIN_WAGON_POWER, 0, 0, u->engine_type, u);
+
+				if (callback != CALLBACK_FAILED) u->u.rail.cached_vis_effect = callback;
+			}
+
 			if ((rvi_v->pow_wag_power != 0) && (rvi_u->flags & RVI_WAGON) && UsesWagonOverride(u)) {
-				if (HASBIT(rvi_u->callbackmask, CBM_WAGON_POWER)) {
-					uint16 callback = GetVehicleCallback(CBID_TRAIN_WAGON_POWER, 0, 0, u->engine_type, u);
-
-					if (callback != CALLBACK_FAILED)
-						u->u.rail.cached_vis_effect = callback;
-				}
-
 				if (u->u.rail.cached_vis_effect < 0x40) {
 					/* wagon is powered */
 					SETBIT(u->u.rail.flags, VRF_POWEREDWAGON); // cache 'powered' status