- import java.awt.Graphics;
- import org.powerbot.concurrent.Task;
- import org.powerbot.concurrent.strategy.Strategy;
- import org.powerbot.game.api.ActiveScript;
- import org.powerbot.game.api.Manifest;
- import org.powerbot.game.api.methods.interactive.NPCs;
- import org.powerbot.game.api.methods.tab.Inventory;
- import org.powerbot.game.api.methods.widget.Bank;
- import org.powerbot.game.api.util.Filter;
- import org.powerbot.game.api.util.Time;
- import org.powerbot.game.api.wrappers.node.Item;
- import org.powerbot.game.bot.event.MessageEvent;
- import org.powerbot.game.bot.event.listener.MessageListener;
- import org.powerbot.game.bot.event.listener.PaintListener;
- @Manifest(version = 1.0, description = "Start Next to Grand Exchange", authors = { "_Shadow_" }, name = "ShadowWine")
- public class ShadowWine extends ActiveScript implements PaintListener,
- MessageListener {
- int jug = 1935;
- int wine = 1993;
- int jugnote;
- int ani = 0;
- int winesDrunk;
- int[] bankerID = { 3418, 2718 };
- @Override
- public void messageReceived(MessageEvent arg0) {
- String msg = arg0.getMessage();
- if (msg.equals("You drink the wine.")) {
- winesDrunk++;
- }
- }
- @Override
- public void onRepaint(Graphics arg0) {
- }
- @Override
- protected void setup() {
- provide(new drinkEm());
- provide(new bankEm());
- }
- public void DrinkAll(final int... emjug) {
- for (Item item : Inventory.getItems(new Filter<Item>() {
- public boolean accept(Item arg0) {
- for (int i : emjug) {
- if (arg0.getId() == i)
- return false;
- }
- return true;
- }
- })) {
- item.getWidgetChild().interact("drink");
- Time.sleep(600);
- }
- }
- public class drinkEm extends Strategy implements Task {
- public boolean validate() {
- return Inventory.getItem(wine) != null;
- }
- @Override
- public void run() {
- Item winejug = Inventory.getItem(wine);
- if (Bank.isOpen()) {
- Bank.close();
- } else {
- DrinkAll(jug);
- }
- }
- }
- public class bankEm extends Strategy implements Task {
- public boolean validate() {
- return Inventory.getItem(wine) == null;
- }
- @Override
- public void run() {
- if (Bank.isOpen()) {
- if (Inventory.isFull()) {
- Bank.depositInventory();
- Time.sleep(1000);
- } else {
- Bank.withdraw(wine, 28);
- Time.sleep(1000);
- }
- } else {
- if (NPCs.getNearest(bankerID) != null) {
- if (NPCs.getNearest(bankerID).isOnScreen()) {
- if (NPCs.getNearest(bankerID).interact("Bank")) {
- Time.sleep(2000);
- }
- }
- }
- }
- }
- }
- }