diff --git a/.travis.yml b/.travis.yml
index 744d70b..fd5a452 100644
--- a/.travis.yml
+++ b/.travis.yml
@@ -32,7 +32,7 @@ env:
- secure: UG+b1tEgc8xv9x4r//2OAIK1RrYv6n209KTTFMMwcnAa7DI8HaP8nljRa5/VhDhuKHdlVrYH/tI90v7UVBs0GDVNwK5V17Io0fMm3FUGZekSthTCqqno5wAGa9r6a6mMLtSaSmIFeIKi0+0d2ZwplRuhj/dtEYjjBBj+kK8g4nE=
- secure: St/fecUDInFBCRriYqgp2F8PU9/SooorgxD9Mrs+b0EsC7AbtSsQXvdIv2Lp6xzdQ0VSXPcLIhULPOYrmBKnGQ/NjXTIZXxnroyQxxnI6xyEWIZwiHRY/bKRJDRbQTxD9NL32szKiDSwnw7pu6llF4D64UqQvziq4Gm6VohU75M=
- secure: bD15GVZWowiknbfLavh8CxSh0GsnF5kT4kZ6ggCuUDGyj0mzqf7dNRnchQIKkCG0WRYyTrFN4pEiygeywWsipEeAVv9Xhx3cuUZmzeQaR5KCWabSwJ8gK6jZd1YhcWmM9vrdPHobZr65MP0y/8mu/Fovgky9dY7KDf4G3SebNrM=
- - RANDOMS_VERSION=0.25.4
+ - RANDOMS_VERSION=0.26.1
cache:
directories:
diff --git a/pom.xml b/pom.xml
index 2b04f9e..0383c3e 100644
--- a/pom.xml
+++ b/pom.xml
@@ -6,7 +6,7 @@
org.parabot
randoms
- 0.25.4
+ 0.26.1
1.7
@@ -94,4 +94,4 @@
-
\ No newline at end of file
+
diff --git a/src/main/java/org/parabot/randoms/Core.java b/src/main/java/org/parabot/randoms/Core.java
index a6ee8f0..d51a62f 100755
--- a/src/main/java/org/parabot/randoms/Core.java
+++ b/src/main/java/org/parabot/randoms/Core.java
@@ -7,8 +7,9 @@ import org.parabot.randoms.elkoy.AntiDetector;
import org.parabot.randoms.elkoy.LogoutDisabler;
import org.parabot.randoms.elkoy.MouseOnScreen;
import org.parabot.randoms.elkoy.QuestionSolver;
-import org.parabot.randoms.locopk.MacAddressFix;
+import org.parabot.randoms.oswar.ItemPicker;
import org.parabot.randoms.pkhonor.*;
+import org.parabot.randoms.runewild.MacAddressFix;
import org.parabot.randoms.soulplay.RandomUUID;
import java.util.ArrayList;
@@ -35,7 +36,7 @@ public class Core {
randoms.add(new MouseOnScreen());
randoms.add(new AntiDetector());
- // LocoPK
+ // RuneWild
randoms.add(new MacAddressFix());
// Dreamscape
@@ -44,12 +45,23 @@ public class Core {
// SoulPlay
randoms.add(new RandomUUID());
- org.parabot.core.Core.verbose("Possible randoms:");
+ //OSWar
+ randoms.add(new ItemPicker());
+
+ StringBuilder sb = new StringBuilder();
+ sb.append("Possible randoms:\n");
+ int randomCount = 0;
for (Random random : randoms) {
if (random.getServer().equalsIgnoreCase(server)) {
- org.parabot.core.Core.verbose("-> " + random.getName());
+ sb.append("\t-> ").append(random.getName());
Context.getInstance().getRandomHandler().addRandom(random);
+ randomCount++;
}
}
+ final String toPrint = sb.append("\n").toString();
+ if (toPrint.contains("->")) {
+ org.parabot.core.Core.verbose(toPrint);
+ }
+ org.parabot.core.Core.verbose("[org.parabot.randoms.Core] A total of "+randomCount+" randoms have been loaded for server: "+server);
}
}
diff --git a/src/main/java/org/parabot/randoms/oswar/ItemPicker.java b/src/main/java/org/parabot/randoms/oswar/ItemPicker.java
new file mode 100644
index 0000000..dc6d2bd
--- /dev/null
+++ b/src/main/java/org/parabot/randoms/oswar/ItemPicker.java
@@ -0,0 +1,65 @@
+package org.parabot.randoms.oswar;
+
+import org.parabot.core.Core;
+import org.parabot.environment.api.utils.Time;
+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;
+
+/**
+ * @author AlexanderBielen
+ */
+public class ItemPicker implements Random {
+ private final int INTERFACE_ID = 33300;
+
+ @Override
+ public boolean activate() {
+ return Game.isLoggedIn()
+ && Interfaces.getOpenInterfaceId() == INTERFACE_ID
+ && Interfaces.getInterface(INTERFACE_ID + 3).getMessage() != null
+ && !Interfaces.getInterface(INTERFACE_ID + 3).getMessage().contains("0:00");
+ }
+
+ @Override
+ public void execute() {
+ Core.verbose("Item picker random event activated");
+ Time.sleep(2000);
+
+ 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);
+
+ if(name != null && name.toLowerCase().startsWith(itemName.toLowerCase())) {
+ Core.verbose("Attempting solution: "+name);
+ Menu.sendAction(315,0,0,i+1,2);
+ break;
+ }
+ } catch(Exception ignore) {}
+ }
+ Time.sleep(1000);
+ }
+
+ @Override
+ public String getName() {
+ return "Item picker";
+ }
+
+ @Override
+ public String getServer() {
+ return "OSWar";
+ }
+
+ @Override
+ public RandomType getRandomType() {
+ return RandomType.SCRIPT;
+ }
+}
diff --git a/src/main/java/org/parabot/randoms/locopk/MacAddressFix.java b/src/main/java/org/parabot/randoms/runewild/MacAddressFix.java
similarity index 61%
rename from src/main/java/org/parabot/randoms/locopk/MacAddressFix.java
rename to src/main/java/org/parabot/randoms/runewild/MacAddressFix.java
index deaa8fb..b866760 100644
--- a/src/main/java/org/parabot/randoms/locopk/MacAddressFix.java
+++ b/src/main/java/org/parabot/randoms/runewild/MacAddressFix.java
@@ -1,5 +1,7 @@
-package org.parabot.randoms.locopk;
+package org.parabot.randoms.runewild;
+import java.util.UUID;
+import org.parabot.api.output.Logger;
import org.parabot.core.Context;
import org.parabot.core.asm.ASMClassLoader;
import org.parabot.core.reflect.RefClass;
@@ -7,10 +9,9 @@ import org.parabot.core.reflect.RefField;
import org.parabot.environment.randoms.Random;
import org.parabot.environment.randoms.RandomType;
-import java.util.UUID;
-
/**
- * @author EmmaStone
+ * @author EmmaStone - Originally for LocoPK
+ * @author Shadowrs - fixed for RuneWild with additions
*/
public class MacAddressFix implements Random {
@@ -18,7 +19,7 @@ public class MacAddressFix implements Random {
@Override
public boolean activate() {
- return !done;
+ return true;
}
@Override
@@ -26,19 +27,40 @@ public class MacAddressFix implements Random {
try {
final ASMClassLoader classLoader = Context.getInstance().getASMClassLoader();
- RefClass createUID = new RefClass(classLoader.loadClass("com.locopk.client.rs.CreateUID"));
+ RefClass createUID = new RefClass(classLoader.loadClass("com.rw.client.rs.CreateUID"));
+
+
+ try {
+ Logger.info("MacAddressFix_RW", String.format(
+ "Before applying MAC override : %s | %s | %s",
+ createUID.getField("mac").getField().get(""),
+ createUID.getField("firstId").getField().get(""),
+ createUID.getField("secondId").getField().get("")));
+ } catch (IllegalAccessException e) {
+ e.printStackTrace();
+ }
String s1 = UUID.randomUUID().toString();
String s2 = UUID.randomUUID().toString();
RefField mac = createUID.getField("mac");
- mac.set(randomMacAddress());
+ mac.set("lolmkay");
RefField firstId = createUID.getField("firstId");
firstId.set(s1);
RefField secondId = createUID.getField("secondId");
secondId.set(s2);
+ try {
+ Logger.info("MacAddressFix_RW", String.format(
+ "Applied MAC override : %s | %s | %s",
+ mac.getField().get(""),
+ firstId.getField().get(""),
+ secondId.getField().get("")));
+ } catch (IllegalAccessException e) {
+ e.printStackTrace();
+ Logger.error("Macfix RW", e.getMessage());
+ }
} catch (ClassNotFoundException e) {
e.printStackTrace();
}
@@ -53,7 +75,7 @@ public class MacAddressFix implements Random {
@Override
public String getServer() {
- return "locopk";
+ return "RuneWild";
}
@Override