mirror of
https://github.com/2006-Scape/Parabot-Randoms.git
synced 2026-07-07 16:49:11 +00:00
Merge pull request #62 from AlexanderBielen/feature/oswar-item-pick-event
[FEATURE]Added OSWar pick item random event
This commit is contained in:
@@ -7,6 +7,7 @@ import org.parabot.randoms.elkoy.AntiDetector;
|
|||||||
import org.parabot.randoms.elkoy.LogoutDisabler;
|
import org.parabot.randoms.elkoy.LogoutDisabler;
|
||||||
import org.parabot.randoms.elkoy.MouseOnScreen;
|
import org.parabot.randoms.elkoy.MouseOnScreen;
|
||||||
import org.parabot.randoms.elkoy.QuestionSolver;
|
import org.parabot.randoms.elkoy.QuestionSolver;
|
||||||
|
import org.parabot.randoms.oswar.ItemPicker;
|
||||||
import org.parabot.randoms.pkhonor.*;
|
import org.parabot.randoms.pkhonor.*;
|
||||||
import org.parabot.randoms.runewild.MacAddressFix;
|
import org.parabot.randoms.runewild.MacAddressFix;
|
||||||
import org.parabot.randoms.soulplay.RandomUUID;
|
import org.parabot.randoms.soulplay.RandomUUID;
|
||||||
@@ -44,6 +45,9 @@ public class Core {
|
|||||||
// SoulPlay
|
// SoulPlay
|
||||||
randoms.add(new RandomUUID());
|
randoms.add(new RandomUUID());
|
||||||
|
|
||||||
|
//OSWar
|
||||||
|
randoms.add(new ItemPicker());
|
||||||
|
|
||||||
StringBuilder sb = new StringBuilder();
|
StringBuilder sb = new StringBuilder();
|
||||||
sb.append("Possible randoms:\n");
|
sb.append("Possible randoms:\n");
|
||||||
int randomCount = 0;
|
int randomCount = 0;
|
||||||
|
|||||||
@@ -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;
|
||||||
|
}
|
||||||
|
}
|
||||||
Reference in New Issue
Block a user