mirror of
https://github.com/2006-Scape/Parabot-Randoms.git
synced 2026-07-02 16:49:09 +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.MouseOnScreen;
|
||||
import org.parabot.randoms.elkoy.QuestionSolver;
|
||||
import org.parabot.randoms.oswar.ItemPicker;
|
||||
import org.parabot.randoms.pkhonor.*;
|
||||
import org.parabot.randoms.runewild.MacAddressFix;
|
||||
import org.parabot.randoms.soulplay.RandomUUID;
|
||||
@@ -44,6 +45,9 @@ public class Core {
|
||||
// SoulPlay
|
||||
randoms.add(new RandomUUID());
|
||||
|
||||
//OSWar
|
||||
randoms.add(new ItemPicker());
|
||||
|
||||
StringBuilder sb = new StringBuilder();
|
||||
sb.append("Possible randoms:\n");
|
||||
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