diff --git a/src/openrct2-ui/windows/Footpath.cpp b/src/openrct2-ui/windows/Footpath.cpp index c7dabfbf67..32fed7dc57 100644 --- a/src/openrct2-ui/windows/Footpath.cpp +++ b/src/openrct2-ui/windows/Footpath.cpp @@ -1193,6 +1193,7 @@ namespace OpenRCT2::Ui::Windows { return; } + _provisionalFootpath.tiles.clear(); auto mapPos = FootpathGetPlacePositionFromScreenPosition(screenCoords); if (!mapPos) @@ -1256,24 +1257,7 @@ namespace OpenRCT2::Ui::Windows if (isLeftMousePressed) return; - MapInvalidateSelectionRect(); - gMapSelectFlags.unset(MapSelectFlag::enableArrow); - - auto mapPos = FootpathGetPlacePositionFromScreenPosition(screenCoords); - if (!mapPos) - { - gMapSelectFlags.unset(MapSelectFlag::enable); - return; - } - - auto placement = WindowFootpathGetPlacementFromScreenCoords(screenCoords); - - // Set map selection - gMapSelectFlags.set(MapSelectFlag::enable); - gMapSelectType = MapSelectType::full; - - setMapSelectRange(*mapPos); - WindowFootpathSetProvisionalPathDragArea(getMapSelectRange(), placement.baseZ); + WindowFootpathSetProvisionalPathAtPoint(screenCoords); } void WindowFootpathPlacePath()