Advertisement
Not a member of Pastebin yet?
Sign Up,
it unlocks many cool features!
- package scripts.clues;
- import java.util.ArrayList;
- import org.tribot.api.General;
- import org.tribot.api.Timing;
- import org.tribot.api.types.generic.Condition;
- import org.tribot.api.util.ABCUtil;
- import org.tribot.api2007.Banking;
- import org.tribot.api2007.Equipment;
- import org.tribot.api2007.Interfaces;
- import org.tribot.api2007.Equipment.SLOTS;
- import org.tribot.api2007.Inventory;
- import org.tribot.api2007.Skills.SKILLS;
- import org.tribot.api2007.types.RSItem;
- import org.tribot.api2007.types.RSItemDefinition;
- import scripts.clues.types.EquipmentRequirement;
- import scripts.methods.Methods;
- public class Equipped {
- private final ABCUtil abc = new ABCUtil();
- private ArrayList<String> playerEquipment = new ArrayList<String>();
- private Main main;
- public Equipped(Main main) {
- setMain(main);
- }
- public boolean wearItem(RSItem[] items) {
- if(items.length == 0)
- return false;
- RSItem item = items[0];
- RSItemDefinition def = item.getDefinition();
- if(def == null)
- return false;
- String[] actions = def.getActions();
- if(actions.length == 0)
- return false;
- General.sleep(abc.DELAY_TRACKER.ITEM_INTERACTION.next());
- abc.DELAY_TRACKER.ITEM_INTERACTION.reset();
- if(item.click(actions[0])) {
- return Timing.waitCondition(new Condition() {
- @Override
- public boolean active() {
- return Equipment.isEquipped(item.getID());
- }
- }, General.random(4000, 6000));
- }
- return false;
- }
- public Object[][] getItemRequirements(String[] items) {
- getMain().println("Searching for item requirements...");
- Object[][] req = new Object[4][2];
- int index = 0;
- for(Object[] r : req) {
- r[0] = null;
- r[1] = 0;
- }
- for(String s : items) {
- for(EquipmentRequirement e : EquipmentRequirement.values()) {
- if(!s.equals(e.getName()))
- continue;
- for(Object[] o : e.getReq()) {
- SKILLS skill = (SKILLS) o[0];
- if(skill == null)
- continue;
- int lvl = (Integer) o[1];
- req[index][0] = skill;
- req[index][1] = lvl;
- index++;
- getMain().println(s + " requires " + lvl + " " + Methods.correctCapitalization(skill.toString()) + "!");
- }
- }
- }
- return req;
- }
- public boolean setEquipment() {
- for(SLOTS s : SLOTS.values()) {
- if(s.equals(SLOTS.AMULET)
- || s.equals(SLOTS.RING))
- continue;
- RSItem i = Equipment.getItem(s);
- if(i == null)
- continue;
- RSItemDefinition def = i.getDefinition();
- if(def == null)
- continue;
- String name = def.getName();
- if(name == null || name.length() == 0)
- continue;
- playerEquipment.add(def.getName());
- }
- String s = "Setting Equipment: ";
- for(String item : playerEquipment)
- s = s + " " + item + ", ";
- getMain().println(s);
- return true;
- }
- public boolean unequipAllItems() {
- getMain().setStatus("Removing All Equipment");
- for(SLOTS s : SLOTS.values()) {
- if(Inventory.isFull())
- getMain().eatFood();
- General.sleep(abc.DELAY_TRACKER.ITEM_INTERACTION.next());
- abc.DELAY_TRACKER.ITEM_INTERACTION.reset();
- Equipment.remove(s);
- }
- return !isWearingEquipment();
- }
- public boolean wearRequiredEquipment(String[] required) {
- getMain().setStatus("Wearing Required Equipment");
- if(Banking.isBankScreenOpen())
- Banking.close();
- if(!Banking.isBankScreenOpen()) {
- for(int i = 0; i < required.length; i++)
- if(required[i].length() > 0)
- wearItem(Inventory.find(required[i]));
- for(String s : required)
- if(!Equipment.isEquipped(s))
- return false;
- return true;
- }
- return false;
- }
- public boolean checkEquipment() {
- if(!isWearingOriginalEquipment() && hasOriginalEquipment()) {
- wearOriginalEquipment();
- return Timing.waitCondition(new Condition() {
- @Override
- public boolean active() {
- return isWearingOriginalEquipment();
- }
- }, General.random(4000, 6000));
- }
- return false;
- }
- public boolean wearOriginalEquipment() {
- getMain().setStatus("Equipping Original Equipment");
- Interfaces.closeAll();
- for(String itemName : playerEquipment) {
- if(Equipment.isEquipped(itemName))
- continue;
- wearItem(Inventory.find(itemName));
- }
- return isWearingOriginalEquipment();
- }
- public boolean isWearingRequiredEquipment(ClueTask task) {
- if(task.getEmoteClue() != null) {
- String[] items = task.getEmoteClue().getItems();
- if(items[0].equals(""))
- return !isWearingEquipment();
- return isWearingEmoteEquipment(items);
- }
- return false;
- }
- public boolean hasRing() {
- return Inventory.getCount(Constants.DUEL_RING_ID) > 0
- || Equipment.isEquipped(Constants.DUEL_RING_ID);
- }
- public boolean hasNecklace() {
- return Inventory.getCount(Constants.GAMES_NECKLACE_ID) > 0
- || Equipment.isEquipped(Constants.GAMES_NECKLACE_ID);
- }
- public boolean isWearingEquipment() {
- for(SLOTS s : SLOTS.values())
- if(Equipment.getItem(s) != null)
- return true;
- return false;
- }
- public boolean isWearingEmoteEquipment(String[] items) {
- for(int i = 0; i < items.length; i++)
- if(items[i].length() > 0)
- if(!Equipment.isEquipped(items[i]))
- return false;
- return true;
- }
- public boolean isWearingOriginalEquipment() {
- for(String s : playerEquipment)
- if(!Equipment.isEquipped(s))
- return false;
- return true;
- }
- public boolean hasOriginalEquipment() {
- for(String s : playerEquipment)
- if(!Equipment.isEquipped(s)
- && !getMain().hasItem(s, 1))
- return false;
- return true;
- }
- public boolean hasEmoteEquipment(String[] items) {
- for(String s : items)
- if(!getMain().hasItem(s, 1)
- && !Equipment.isEquipped(items))
- return false;
- return true;
- }
- public Main getMain() {
- return main;
- }
- public void setMain(Main main) {
- this.main = main;
- }
- public ArrayList<String> getPlayerEquipment() {
- return playerEquipment;
- }
- public void setPlayerEquipment(ArrayList<String> playerEquipment) {
- this.playerEquipment = playerEquipment;
- }
- }
Advertisement
Add Comment
Please, Sign In to add comment
Advertisement