mirror of https://github.com/OpenRCT2/OpenRCT2.git
fix #3224: Maze designs clear fences and walls
This commit is contained in:
parent
d626d9d5f2
commit
8c6e5cd9ae
|
@ -5592,9 +5592,10 @@ int ride_get_refund_price(int ride_id)
|
||||||
continue;
|
continue;
|
||||||
}
|
}
|
||||||
|
|
||||||
|
// Using GAME_COMMAND_FLAG_2 for below commands as a HACK to stop fences from being removed
|
||||||
RCT2_GLOBAL(0x00F4413A, money32) += game_do_command(
|
RCT2_GLOBAL(0x00F4413A, money32) += game_do_command(
|
||||||
x,
|
x,
|
||||||
GAME_COMMAND_FLAG_APPLY | (0 << 8),
|
GAME_COMMAND_FLAG_APPLY | GAME_COMMAND_FLAG_2 | (0 << 8),
|
||||||
y,
|
y,
|
||||||
ride_id | (2 << 8),
|
ride_id | (2 << 8),
|
||||||
GAME_COMMAND_SET_MAZE_TRACK,
|
GAME_COMMAND_SET_MAZE_TRACK,
|
||||||
|
@ -5603,7 +5604,7 @@ int ride_get_refund_price(int ride_id)
|
||||||
|
|
||||||
RCT2_GLOBAL(0x00F4413A, money32) += game_do_command(
|
RCT2_GLOBAL(0x00F4413A, money32) += game_do_command(
|
||||||
x,
|
x,
|
||||||
GAME_COMMAND_FLAG_APPLY | (1 << 8),
|
GAME_COMMAND_FLAG_APPLY | GAME_COMMAND_FLAG_2 | (1 << 8),
|
||||||
y + 16,
|
y + 16,
|
||||||
ride_id | (2 << 8),
|
ride_id | (2 << 8),
|
||||||
GAME_COMMAND_SET_MAZE_TRACK,
|
GAME_COMMAND_SET_MAZE_TRACK,
|
||||||
|
@ -5612,7 +5613,7 @@ int ride_get_refund_price(int ride_id)
|
||||||
|
|
||||||
RCT2_GLOBAL(0x00F4413A, money32) += game_do_command(
|
RCT2_GLOBAL(0x00F4413A, money32) += game_do_command(
|
||||||
x + 16,
|
x + 16,
|
||||||
GAME_COMMAND_FLAG_APPLY | (2 << 8),
|
GAME_COMMAND_FLAG_APPLY | GAME_COMMAND_FLAG_2 | (2 << 8),
|
||||||
y + 16,
|
y + 16,
|
||||||
ride_id | (2 << 8),
|
ride_id | (2 << 8),
|
||||||
GAME_COMMAND_SET_MAZE_TRACK,
|
GAME_COMMAND_SET_MAZE_TRACK,
|
||||||
|
@ -5621,7 +5622,7 @@ int ride_get_refund_price(int ride_id)
|
||||||
|
|
||||||
RCT2_GLOBAL(0x00F4413A, money32) += game_do_command(
|
RCT2_GLOBAL(0x00F4413A, money32) += game_do_command(
|
||||||
x + 16,
|
x + 16,
|
||||||
GAME_COMMAND_FLAG_APPLY | (3 << 8),
|
GAME_COMMAND_FLAG_APPLY | GAME_COMMAND_FLAG_2 | (3 << 8),
|
||||||
y,
|
y,
|
||||||
ride_id | (2 << 8),
|
ride_id | (2 << 8),
|
||||||
GAME_COMMAND_SET_MAZE_TRACK,
|
GAME_COMMAND_SET_MAZE_TRACK,
|
||||||
|
|
|
@ -3420,7 +3420,7 @@ money32 place_maze_design(uint8 flags, uint8 rideIndex, uint16 mazeEntry, sint16
|
||||||
}
|
}
|
||||||
|
|
||||||
if (flags & GAME_COMMAND_FLAG_APPLY) {
|
if (flags & GAME_COMMAND_FLAG_APPLY) {
|
||||||
if (!(flags & GAME_COMMAND_FLAG_ALLOW_DURING_PAUSED)) {
|
if (!(flags & GAME_COMMAND_FLAG_GHOST)) {
|
||||||
footpath_remove_litter(x, y, z);
|
footpath_remove_litter(x, y, z);
|
||||||
map_remove_walls_at(floor2(x, 32), floor2(y, 32), z, z + 32);
|
map_remove_walls_at(floor2(x, 32), floor2(y, 32), z, z + 32);
|
||||||
}
|
}
|
||||||
|
@ -5242,7 +5242,7 @@ money32 set_maze_track(uint16 x, uint8 flags, uint8 direction, uint16 y, uint8 r
|
||||||
}
|
}
|
||||||
|
|
||||||
if ((flags & GAME_COMMAND_FLAG_APPLY) != 0) {
|
if ((flags & GAME_COMMAND_FLAG_APPLY) != 0) {
|
||||||
if ((flags & GAME_COMMAND_FLAG_ALLOW_DURING_PAUSED) == 0) {
|
if (!(flags & GAME_COMMAND_FLAG_GHOST) && !(flags & GAME_COMMAND_FLAG_2)) {
|
||||||
footpath_remove_litter(x, y, z);
|
footpath_remove_litter(x, y, z);
|
||||||
map_remove_walls_at(floor2(x, 32), floor2(y, 32), z, z + 32);
|
map_remove_walls_at(floor2(x, 32), floor2(y, 32), z, z + 32);
|
||||||
}
|
}
|
||||||
|
|
Loading…
Reference in New Issue