From 404ec68570bd8181ec273841047ee3abbe97f2bf Mon Sep 17 00:00:00 2001 From: Anuken Date: Fri, 8 Dec 2017 19:59:04 -0500 Subject: [PATCH] Changed pathfinding algorithm slightly, added debugging for paths --- core/assets/maps/test3.png | Bin 6335 -> 1529 bytes core/assets/shaders/outline.fragment | 2 +- core/src/io/anuke/mindustry/Vars.java | 2 + core/src/io/anuke/mindustry/ai/Pathfind.java | 53 +++++++++++++----- .../src/io/anuke/mindustry/core/Renderer.java | 21 ++++++- core/src/io/anuke/mindustry/core/UI.java | 6 +- .../io/anuke/mindustry/entities/Player.java | 2 + .../mindustry/entities/enemies/Enemy.java | 19 +++++-- .../mindustry/ui/MindustrySettingsDialog.java | 2 +- .../io/anuke/mindustry/world/SpawnPoint.java | 1 + core/src/io/anuke/mindustry/world/World.java | 8 ++- desktop/mindustry-saves/0.mins | Bin 3824 -> 6584 bytes desktop/mindustry-saves/1.mins | Bin 3767 -> 6655 bytes desktop/mindustry-saves/7.mins | Bin 2866 -> 5289 bytes 14 files changed, 91 insertions(+), 25 deletions(-) diff --git a/core/assets/maps/test3.png b/core/assets/maps/test3.png index aa0b38402596e7f2a23edcc1877aab3b0defcfec..34e5a233de22e8ccfe7212f9950f302690c60f34 100644 GIT binary patch literal 1529 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