waypoint.c
changeset 3242 1cefa03f0d5e
parent 3157 40de8616c04c
child 3267 591027d10884
equal deleted inserted replaced
3241:ffde1325bab8 3242:1cefa03f0d5e
   211 		wp->town_cn = 0;
   211 		wp->town_cn = 0;
   212 	}
   212 	}
   213 
   213 
   214 	if (flags & DC_EXEC) {
   214 	if (flags & DC_EXEC) {
   215 		const StationSpec *spec = NULL;
   215 		const StationSpec *spec = NULL;
   216 		MakeRailWaypoint(tile, GetTileOwner(tile), axis, GB(_m[tile].m3, 0, 4), wp->index);
   216 		MakeRailWaypoint(tile, GetTileOwner(tile), axis, GetRailType(tile), wp->index);
   217 		MarkTileDirtyByTile(tile);
   217 		MarkTileDirtyByTile(tile);
   218 
   218 
   219 		if (GB(p1, 0, 8) < GetNumCustomStations(STAT_CLASS_WAYP))
   219 		if (GB(p1, 0, 8) < GetNumCustomStations(STAT_CLASS_WAYP))
   220 			spec = GetCustomStation(STAT_CLASS_WAYP, GB(p1, 0, 8));
   220 			spec = GetCustomStation(STAT_CLASS_WAYP, GB(p1, 0, 8));
   221 
   221 
   298 
   298 
   299 		wp->deleted = 30; // let it live for this many days before we do the actual deletion.
   299 		wp->deleted = 30; // let it live for this many days before we do the actual deletion.
   300 		RedrawWaypointSign(wp);
   300 		RedrawWaypointSign(wp);
   301 
   301 
   302 		if (justremove) {
   302 		if (justremove) {
   303 			MakeRailNormal(tile, GetTileOwner(tile), GetRailWaypointBits(tile), GB(_m[tile].m3, 0, 4));
   303 			MakeRailNormal(tile, GetTileOwner(tile), GetRailWaypointBits(tile), GetRailType(tile));
   304 			MarkTileDirtyByTile(tile);
   304 			MarkTileDirtyByTile(tile);
   305 		} else {
   305 		} else {
   306 			DoClearSquare(tile);
   306 			DoClearSquare(tile);
   307 			SetSignalsOnBothDir(tile, direction == AXIS_X ? TRACK_X : TRACK_Y);
   307 			SetSignalsOnBothDir(tile, direction == AXIS_X ? TRACK_X : TRACK_Y);
   308 		}
   308 		}