From 98439751061ef41beae8a90c435db9f6d1eb2be9 Mon Sep 17 00:00:00 2001 From: RedSparr0w Date: Wed, 16 Oct 2019 12:26:18 +1300 Subject: [PATCH] add initial drop stuff --- .idea/workspace.xml | 16 ++++----- src/main/java/ParaScript/data/Variables.java | 16 +++++++-- src/main/java/ParaScript/strategies/Drop.java | 36 +++++++++++++++++++ 3 files changed, 57 insertions(+), 11 deletions(-) create mode 100644 src/main/java/ParaScript/strategies/Drop.java diff --git a/.idea/workspace.xml b/.idea/workspace.xml index 1c413de..4ccf4ce 100644 --- a/.idea/workspace.xml +++ b/.idea/workspace.xml @@ -3,7 +3,7 @@ - + diff --git a/src/main/java/ParaScript/data/Variables.java b/src/main/java/ParaScript/data/Variables.java index fffa30d..991cddc 100644 --- a/src/main/java/ParaScript/data/Variables.java +++ b/src/main/java/ParaScript/data/Variables.java @@ -1,8 +1,6 @@ package ParaScript.data; -import ParaScript.data.variables.Ores; -import ParaScript.data.variables.Trees; -import ParaScript.data.variables.Zone; +import ParaScript.data.variables.*; import org.parabot.environment.api.utils.Timer; import org.rev317.min.api.methods.Skill; import org.rev317.min.api.wrappers.Tile; @@ -103,6 +101,18 @@ public class Variables { expGained = skill_to_train.getExperience() - baseExperience; } + public static int[] getItemIDs(){ + if (skill_to_train == null) return new int[]{-1}; + switch (skill_to_train.getName()){ + case "Woodcutting": + return woodcutting_tree_selected.getIDs(); + case "Mining": + return mining_ore_selected.getIDs(); + default: + return new int[]{-1}; + } + } + public static boolean shouldBankItems(){ if (skill_to_train == null) return true; switch (skill_to_train.getName()){ diff --git a/src/main/java/ParaScript/strategies/Drop.java b/src/main/java/ParaScript/strategies/Drop.java new file mode 100644 index 0000000..9f9f31e --- /dev/null +++ b/src/main/java/ParaScript/strategies/Drop.java @@ -0,0 +1,36 @@ +package ParaScript.strategies; + +import ParaScript.data.Variables; +import org.parabot.environment.api.utils.Time; +import org.parabot.environment.scripts.framework.Strategy; +import org.rev317.min.api.methods.Game; +import org.rev317.min.api.methods.Inventory; +import org.rev317.min.api.methods.Npcs; +import org.rev317.min.api.methods.Skill; +import org.rev317.min.api.wrappers.Item; +import org.rev317.min.api.wrappers.Npc; +import org.rev317.min.api.wrappers.TilePath; + +public class Drop implements Strategy { + private Item[] items; + + @Override + public boolean activate() { + items = Inventory.getItems(Variables.getItemIDs()); + return Variables.running + && Game.isLoggedIn() + && Variables.shouldDropItems() + && items != null + && items.length > 0; + } + + @Override + public void execute() { + for(Item item : items){ + if(item != null){ + item.drop(); + Time.sleep(1000); + } + } + } +} \ No newline at end of file