(svn r115) Fix: monorail/maglev became available around 1927
authordominik
Mon, 23 Aug 2004 07:50:01 +0000
changeset 114 6a2af0c2d0db
parent 113 cc110ea79126
child 115 3a3c64e7be82
(svn r115) Fix: monorail/maglev became available around 1927
engine.c
table/engines.h
--- a/engine.c	Sun Aug 22 19:40:50 2004 +0000
+++ b/engine.c	Mon Aug 23 07:50:01 2004 +0000
@@ -404,15 +404,25 @@
 		}
 	}
 
+	e->flags = (e->flags & ~ENGINE_INTRODUCING) | ENGINE_AVAILABLE;
+	InvalidateWindowClasses(WC_BUILD_VEHICLE);
+
 	// Now available for all players
 	e->player_avail = (byte)-1;
+
+	// Do not introduce new rail wagons
+	if ((byte)index < NUM_TRAIN_ENGINES) {
+		const RailVehicleInfo *rvi = &_rail_vehicle_info[index];
+		if(rvi->flags & RVI_WAGON)
+			return;
+	}
+
+	// make maglev / monorail available
 	FOR_ALL_PLAYERS(p) {
 		if (p->is_active)
 			UPDATE_PLAYER_RAILTYPE(e,p);
 	}
 
-	e->flags = (e->flags & ~ENGINE_INTRODUCING) | ENGINE_AVAILABLE;
-	
 	if ((byte)index < NUM_TRAIN_ENGINES) {
 		AddNewsItem(index, NEWS_FLAGS(NM_CALLBACK, 0, NT_NEW_VEHICLES, DNC_TRAINAVAIL), 0, 0);
 	} else if ((byte)index < NUM_TRAIN_ENGINES + NUM_ROAD_ENGINES) {
@@ -422,8 +432,6 @@
 	} else {
 		AddNewsItem(index, NEWS_FLAGS(NM_CALLBACK, 0, NT_NEW_VEHICLES, DNC_AIRCRAFTAVAIL), 0, 0);
 	}
-
-	InvalidateWindowClasses(WC_BUILD_VEHICLE);
 }
 
 void EnginesMonthlyLoop()
--- a/table/engines.h	Sun Aug 22 19:40:50 2004 +0000
+++ b/table/engines.h	Mon Aug 23 07:50:01 2004 +0000
@@ -2,7 +2,7 @@
 #define MW(a,b,c,d,e,f) {a,b|0x80,c,d,((e)<<4)|(f)}
 
 EngineInfo _engine_info[TOTAL_NUM_ENGINES] = {
-	MK(  4809,  20,  15,  30,   0,   1), /* 0 */
+	MK(  1827,  20,  15,  30,   0,   1), /* 0 */
 	MK( 12784,  20,  22,  30,   0,   6), /* 1 */
 	MK(  9497,  20,  20,  50,   0,   8), /* 2 */
 	MK( 11688,  20,  20,  30,   0,   8), /* 3 */