diff --git a/core/src/io/anuke/mindustry/input/InputHandler.java b/core/src/io/anuke/mindustry/input/InputHandler.java index 672e1e1352..dec7f927fc 100644 --- a/core/src/io/anuke/mindustry/input/InputHandler.java +++ b/core/src/io/anuke/mindustry/input/InputHandler.java @@ -804,12 +804,12 @@ public abstract class InputHandler implements InputProcessor, GestureListener{ void iterateLine(int startX, int startY, int endX, int endY, Cons cons){ Array points; boolean diagonal = Core.input.keyDown(Binding.diagonal_placement); - if(Core.settings.getBool("swapdiagonal")){ + if(Core.settings.getBool("swapdiagonal") && mobile){ diagonal = !diagonal; } if(diagonal){ - points = PlaceUtils.normalizeDiagonal(startX, startY, endX, endY); + points = PlaceUtils.pathfindLine(startX, startY, endX, endY); }else{ points = PlaceUtils.normalizeLine(startX, startY, endX, endY); } diff --git a/core/src/io/anuke/mindustry/input/PlaceUtils.java b/core/src/io/anuke/mindustry/input/PlaceUtils.java index 79a358e286..fa21a9a021 100644 --- a/core/src/io/anuke/mindustry/input/PlaceUtils.java +++ b/core/src/io/anuke/mindustry/input/PlaceUtils.java @@ -16,7 +16,7 @@ public class PlaceUtils{ private static Array points = new Array<>(); /** Normalize a diagonal line into points. */ - public static Array normalizeDiagonal(int startX, int startY, int endX, int endY){ + public static Array pathfindLine(int startX, int startY, int endX, int endY){ Pools.freeAll(points); points.clear(); return bres.lineNoDiagonal(startX, startY, endX, endY, Pools.get(Point2.class, Point2::new), points);