From be8dd14d36d53f1abf14900844aef382be4c8460 Mon Sep 17 00:00:00 2001 From: simon Date: Sat, 12 May 2018 19:09:00 -0400 Subject: [PATCH] Added method to find objects of particular type in a world --- .../java/net/simon987/npcplugin/HarvestTask.java | 4 +--- .../java/net/simon987/server/game/world/World.java | 13 +++++++++++++ 2 files changed, 14 insertions(+), 3 deletions(-) diff --git a/Plugin NPC/src/main/java/net/simon987/npcplugin/HarvestTask.java b/Plugin NPC/src/main/java/net/simon987/npcplugin/HarvestTask.java index 35fbb7d..2029168 100644 --- a/Plugin NPC/src/main/java/net/simon987/npcplugin/HarvestTask.java +++ b/Plugin NPC/src/main/java/net/simon987/npcplugin/HarvestTask.java @@ -45,9 +45,7 @@ public class HarvestTask extends NPCTask { if (pause == 0) { //Get biomass - /* todo replace by some sort of .collect call with object - id (See https://github.com/simon987/Much-Assembly-Required/pull/66)*/ - ArrayList biomass = npc.getWorld().findObjects(0x4000); + ArrayList biomass = npc.getWorld().findGameObjects("net.simon987.biomassplugin.BiomassBlob"); //Get closest one int minDist = Integer.MAX_VALUE; diff --git a/Server/src/main/java/net/simon987/server/game/world/World.java b/Server/src/main/java/net/simon987/server/game/world/World.java index a7a45e2..90113e8 100644 --- a/Server/src/main/java/net/simon987/server/game/world/World.java +++ b/Server/src/main/java/net/simon987/server/game/world/World.java @@ -131,6 +131,19 @@ public class World implements MongoSerializable { return matchingObjects; } + public ArrayList findGameObjects(String type) { + + ArrayList matchingObjects = new ArrayList<>(2); + + for (GameObject obj : gameObjects.values()) { + if ((obj.getClass().getName().equals(type))) { + matchingObjects.add(obj); + } + } + + return matchingObjects; + } + public void addObject(GameObject object) { gameObjects.put(object.getObjectId(), object); }