From cd32d878a443d046066dfdebb3ee4d6092b8a8eb Mon Sep 17 00:00:00 2001 From: Alexander Bielen Date: Tue, 6 Nov 2018 12:14:08 +0100 Subject: [PATCH] [TASK]Improved solving and implemented usage of Items class --- .../org/parabot/randoms/oswar/ItemPicker.java | 21 +++++++++---------- 1 file changed, 10 insertions(+), 11 deletions(-) diff --git a/src/main/java/org/parabot/randoms/oswar/ItemPicker.java b/src/main/java/org/parabot/randoms/oswar/ItemPicker.java index 1717aec..ecfb5a7 100644 --- a/src/main/java/org/parabot/randoms/oswar/ItemPicker.java +++ b/src/main/java/org/parabot/randoms/oswar/ItemPicker.java @@ -1,13 +1,12 @@ package org.parabot.randoms.oswar; -import org.json.simple.JSONObject; import org.parabot.core.Core; import org.parabot.environment.api.utils.Time; -import org.parabot.environment.api.utils.WebUtil; import org.parabot.environment.randoms.Random; import org.parabot.environment.randoms.RandomType; import org.rev317.min.api.methods.Game; import org.rev317.min.api.methods.Interfaces; +import org.rev317.min.api.methods.Items; import org.rev317.min.api.methods.Menu; @@ -16,11 +15,12 @@ import org.rev317.min.api.methods.Menu; */ public class ItemPicker implements Random { private final int INTERFACE_ID = 33300; - private final String URL = "http://bdn.parabot.org/api/v2/data/items/"; @Override public boolean activate() { - return Game.isLoggedIn() && Interfaces.getOpenInterfaceId() == INTERFACE_ID; + return Game.isLoggedIn() + && Interfaces.getOpenInterfaceId() == INTERFACE_ID + && !Interfaces.getInterface(INTERFACE_ID + 3).getMessage().contains("0:00"); } @Override @@ -31,16 +31,15 @@ public class ItemPicker implements Random { String message = Interfaces.getInterface(INTERFACE_ID + 2).getMessage(); String itemName = message.substring(message.indexOf("'") + 1, message.indexOf("'", message.indexOf("'") + 1)); + Core.verbose("Have to select item: "+itemName); + for(int i = INTERFACE_ID + 11; i <= INTERFACE_ID + 17; i += 3) { try { int id = Interfaces.getInterface(i).getItems()[0]; + String name = Items.getName(id); - String response = WebUtil.getContents(URL.concat("" + id)); - JSONObject json = (JSONObject) WebUtil.getJsonParser().parse(response); - JSONObject result = (JSONObject) WebUtil.getJsonParser().parse(json.get("result").toString()); - - if(result.get("name").equals(itemName)) { - Core.verbose("Attempting solution"); + if(name != null && name.toLowerCase().startsWith(itemName.toLowerCase())) { + Core.verbose("Attempting solution: "+name); Menu.sendAction(315,0,0,i+1,2); break; } @@ -63,4 +62,4 @@ public class ItemPicker implements Random { public RandomType getRandomType() { return RandomType.SCRIPT; } -} \ No newline at end of file +}