From 12f51d477e0c7d7036008a61af6a724feaa5d039 Mon Sep 17 00:00:00 2001 From: Patrick 'Quezler' Mounier Date: Wed, 1 Jan 2020 20:17:52 +0100 Subject: [PATCH] Purge anti collision --- .../mindustry/entities/units/Hivemind.java | 26 +------------------ 1 file changed, 1 insertion(+), 25 deletions(-) diff --git a/core/src/mindustry/entities/units/Hivemind.java b/core/src/mindustry/entities/units/Hivemind.java index e05a07b8fc..3fdca472da 100644 --- a/core/src/mindustry/entities/units/Hivemind.java +++ b/core/src/mindustry/entities/units/Hivemind.java @@ -3,48 +3,24 @@ package mindustry.entities.units; import arc.*; import arc.util.*; import arc.struct.*; -import mindustry.entities.*; import mindustry.entities.type.base.*; -import mindustry.world.*; import static mindustry.Vars.*; public class Hivemind{ private static long lastFrameUpdated = -1; private static Interval timer = new Interval(1); - private static ObjectMap dibstc = new ObjectMap<>(); - private static ObjectMap dibsct = new ObjectMap<>(); public static void update(){ if(Core.graphics.getFrameId() == lastFrameUpdated) return; lastFrameUpdated = Core.graphics.getFrameId(); if(!timer.get(30)) return; - dibstc.clear(); - dibsct.clear(); ObjectSet craters = new ObjectSet<>(); unitGroup.all().each(e -> e instanceof CraterUnit, crater -> craters.add((CraterUnit)crater)); craters.each(crater -> { - if(occupied(crater, crater.aspires())){ - crater.purpose = crater.on(); - }else{ - crater.purpose = crater.aspires(); - } - dibstc.put(crater.purpose, crater); - dibsct.put(crater, crater.purpose); + crater.purpose = crater.aspires(); }); } - - private static boolean occupied(CraterUnit crater, Tile tile){ - final boolean[] result = {false}; - - Units.allEntities(tile, unit -> { - if(unit != crater && dibsct.get((CraterUnit)unit) != tile) result[0] = true; - }); - - if(dibstc.containsKey(tile) && dibstc.get(tile) != crater) result[0] = true; - - return result[0]; - } }