src/rail_cmd.cpp
changeset 6432 226650eb2ef3
parent 6427 7dc1012757d8
child 6452 beefb2a80325
equal deleted inserted replaced
6431:137965651de7 6432:226650eb2ef3
   654 	} else {
   654 	} else {
   655 		if (p2 != 0 && sigvar != GetSignalVariant(tile)) {
   655 		if (p2 != 0 && sigvar != GetSignalVariant(tile)) {
   656 			/* convert signals <-> semaphores */
   656 			/* convert signals <-> semaphores */
   657 			cost = _price.build_signals + _price.remove_signals;
   657 			cost = _price.build_signals + _price.remove_signals;
   658 		} else {
   658 		} else {
   659 			// it is free to change orientation/pre-exit-combo signals
   659 			/* it is free to change orientation/pre-exit-combo signals */
   660 			cost = 0;
   660 			cost = 0;
   661 		}
   661 		}
   662 	}
   662 	}
   663 
   663 
   664 	if (flags & DC_EXEC) {
   664 	if (flags & DC_EXEC) {
   739 
   739 
   740 	if (CmdFailed(ValidateAutoDrag(&trackdir, tile, end_tile))) return CMD_ERROR;
   740 	if (CmdFailed(ValidateAutoDrag(&trackdir, tile, end_tile))) return CMD_ERROR;
   741 
   741 
   742 	track = TrackdirToTrack(trackdir); /* trackdir might have changed, keep track in sync */
   742 	track = TrackdirToTrack(trackdir); /* trackdir might have changed, keep track in sync */
   743 
   743 
   744 	// copy the signal-style of the first rail-piece if existing
   744 	/* copy the signal-style of the first rail-piece if existing */
   745 	if (HasSignals(tile)) {
   745 	if (HasSignals(tile)) {
   746 		signals = _m[tile].m3 & SignalOnTrack(track);
   746 		signals = _m[tile].m3 & SignalOnTrack(track);
   747 		if (signals == 0) signals = SignalOnTrack(track); /* Can this actually occur? */
   747 		if (signals == 0) signals = SignalOnTrack(track); /* Can this actually occur? */
   748 
   748 
   749 		/* copy signal/semaphores style (independent of CTRL) */
   749 		/* copy signal/semaphores style (independent of CTRL) */