Don't like ads? PRO users don't see any ads ;-)
Guest

ShadowWine.java

By: a guest on Aug 12th, 2012  |  syntax: None  |  size: 2.54 KB  |  hits: 12  |  expires: Never
download  |  raw  |  embed  |  report abuse  |  print
Text below is selected. Please press Ctrl+C to copy to your clipboard. (⌘+C on Mac)
  1. import java.awt.Graphics;
  2. import org.powerbot.concurrent.Task;
  3. import org.powerbot.concurrent.strategy.Strategy;
  4. import org.powerbot.game.api.ActiveScript;
  5. import org.powerbot.game.api.Manifest;
  6. import org.powerbot.game.api.methods.interactive.NPCs;
  7. import org.powerbot.game.api.methods.tab.Inventory;
  8. import org.powerbot.game.api.methods.widget.Bank;
  9. import org.powerbot.game.api.util.Filter;
  10. import org.powerbot.game.api.util.Time;
  11. import org.powerbot.game.api.wrappers.node.Item;
  12. import org.powerbot.game.bot.event.MessageEvent;
  13. import org.powerbot.game.bot.event.listener.MessageListener;
  14. import org.powerbot.game.bot.event.listener.PaintListener;
  15.  
  16. @Manifest(version = 1.0, description = "Start Next to Grand Exchange", authors = { "_Shadow_" }, name = "ShadowWine")
  17. public class ShadowWine extends ActiveScript implements PaintListener,
  18.                 MessageListener {
  19.  
  20.         int jug = 1935;
  21.         int wine = 1993;
  22.         int jugnote;
  23.         int ani = 0;
  24.         int winesDrunk;
  25.  
  26.         int[] bankerID = { 3418, 2718 };
  27.  
  28.         @Override
  29.         public void messageReceived(MessageEvent arg0) {
  30.                 String msg = arg0.getMessage();
  31.                 if (msg.equals("You drink the wine.")) {
  32.                         winesDrunk++;
  33.                 }
  34.         }
  35.  
  36.         @Override
  37.         public void onRepaint(Graphics arg0) {
  38.  
  39.         }
  40.  
  41.         @Override
  42.         protected void setup() {
  43.                 provide(new drinkEm());
  44.                 provide(new bankEm());
  45.         }
  46.  
  47.         public void DrinkAll(final int... emjug) {
  48.                 for (Item item : Inventory.getItems(new Filter<Item>() {
  49.                         public boolean accept(Item arg0) {
  50.                                 for (int i : emjug) {
  51.                                         if (arg0.getId() == i)
  52.                                                 return false;
  53.                                 }
  54.                                 return true;
  55.                         }
  56.                 })) {
  57.                         item.getWidgetChild().interact("drink");
  58.                         Time.sleep(600);
  59.                 }
  60.         }
  61.  
  62.         public class drinkEm extends Strategy implements Task {
  63.  
  64.                 public boolean validate() {
  65.                         return Inventory.getItem(wine) != null;
  66.                 }
  67.  
  68.                 @Override
  69.                 public void run() {
  70.  
  71.                         Item winejug = Inventory.getItem(wine);
  72.                         if (Bank.isOpen()) {
  73.                                 Bank.close();
  74.                         } else {
  75.                                 DrinkAll(jug);
  76.                         }
  77.                 }
  78.  
  79.         }
  80.  
  81.         public class bankEm extends Strategy implements Task {
  82.  
  83.                 public boolean validate() {
  84.                         return Inventory.getItem(wine) == null;
  85.                 }
  86.  
  87.                 @Override
  88.                 public void run() {
  89.  
  90.                         if (Bank.isOpen()) {
  91.                                 if (Inventory.isFull()) {
  92.                                         Bank.depositInventory();
  93.                                         Time.sleep(1000);
  94.                                 } else {
  95.                                         Bank.withdraw(wine, 28);
  96.                                         Time.sleep(1000);
  97.                                 }
  98.                         } else {
  99.                                 if (NPCs.getNearest(bankerID) != null) {
  100.                                         if (NPCs.getNearest(bankerID).isOnScreen()) {
  101.                                                 if (NPCs.getNearest(bankerID).interact("Bank")) {
  102.                                                         Time.sleep(2000);
  103.                                                 }
  104.                                         }
  105.                                 }
  106.                         }
  107.                 }
  108.         }
  109. }