mirror of https://github.com/OpenTTD/OpenTTD
(svn r3141) Replace incorrect railtype bitmask in CmdRailTrackHelper with appropriate GB()
parent
0412040bcc
commit
49335b4daa
|
@ -587,8 +587,9 @@ static int32 CmdRailTrackHelper(int x, int y, uint32 flags, uint32 p1, uint32 p2
|
||||||
Track track = (Track)GB(p2, 4, 3);
|
Track track = (Track)GB(p2, 4, 3);
|
||||||
Trackdir trackdir;
|
Trackdir trackdir;
|
||||||
byte mode = HASBIT(p2, 7);
|
byte mode = HASBIT(p2, 7);
|
||||||
|
RailType railtype = (RailType)GB(p2, 0, 4);
|
||||||
|
|
||||||
if (!ValParamRailtype(p2 & 0x3) || !ValParamTrackOrientation(track)) return CMD_ERROR;
|
if (!ValParamRailtype(railtype) || !ValParamTrackOrientation(track)) return CMD_ERROR;
|
||||||
if (p1 > MapSize()) return CMD_ERROR;
|
if (p1 > MapSize()) return CMD_ERROR;
|
||||||
trackdir = TrackToTrackdir(track);
|
trackdir = TrackToTrackdir(track);
|
||||||
|
|
||||||
|
@ -603,7 +604,7 @@ static int32 CmdRailTrackHelper(int x, int y, uint32 flags, uint32 p1, uint32 p2
|
||||||
if (flags & DC_EXEC) SndPlayTileFx(SND_20_SPLAT_2, TileVirtXY(x, y));
|
if (flags & DC_EXEC) SndPlayTileFx(SND_20_SPLAT_2, TileVirtXY(x, y));
|
||||||
|
|
||||||
for(;;) {
|
for(;;) {
|
||||||
ret = DoCommand(x, y, p2 & 0x3, TrackdirToTrack(trackdir), flags, (mode == 0) ? CMD_BUILD_SINGLE_RAIL : CMD_REMOVE_SINGLE_RAIL);
|
ret = DoCommand(x, y, railtype, TrackdirToTrack(trackdir), flags, (mode == 0) ? CMD_BUILD_SINGLE_RAIL : CMD_REMOVE_SINGLE_RAIL);
|
||||||
|
|
||||||
if (CmdFailed(ret)) {
|
if (CmdFailed(ret)) {
|
||||||
if ((_error_message != STR_1007_ALREADY_BUILT) && (mode == 0))
|
if ((_error_message != STR_1007_ALREADY_BUILT) && (mode == 0))
|
||||||
|
|
Loading…
Reference in New Issue