コード例 #1
0
 public void run() {
   stop:
   while (running) {
     BotUtils.sysMsg("Carrot Farmer Started", Color.WHITE);
     window = BotUtils.gui().add(new StatusWindow(), 300, 200);
     for (Gob gob : gobs) {
       GameUI gui = HavenPanel.lui.root.findchild(GameUI.class);
       IMeter.Meter stam = gui.getmeter("stam", 0);
       if (stam.a <= 30) {
         BotUtils.drink();
       }
       BotUtils.pfRightClick(gob, 0);
       while (ui.root.findchild(FlowerMenu.class) == null) {
         sleep(100);
       }
       @SuppressWarnings("deprecation")
       FlowerMenu menu = ui.root.findchild(FlowerMenu.class);
       if (menu != null) {
         for (FlowerMenu.Petal opt : menu.opts) {
           if (opt.name.equals("Harvest")) {
             menu.choose(opt);
             menu.destroy();
           }
         }
       }
       while (BotUtils.findObjectById(gob.id) != null) {
         sleep(100);
       }
       // Some better method should be implemented, but now it just waits a bit for items
       // to appear on inventory and stuff
       sleep(100);
       GItem item = BotUtils.getItemAtHand();
       if (item == null) {
         Inventory inv = BotUtils.playerInventory();
         for (Widget w = inv.child; w != null; w = w.next) {
           if (w instanceof GItem && isCarrot((GItem) w)) {
             item = (GItem) w;
             break;
           }
         }
         BotUtils.takeItem(item);
       }
       // Planttaa, siemen käteen tähän vaiheeseen mennessä
       BotUtils.mapInteractClick(1);
       while (BotUtils.findNearestStageCrop(5, 0, "gfx/terobjs/plants/carrot") == null) {
         sleep(100);
       }
       //  TODO Droppaa kaikki siemenet tms. invistä + kädestä = saa toimimaan kaikkiin
       // siemeniin joku hieno
       //	juttu jolla saa valittua mitä kasvia farmaa jne.
     }
     running = false;
   }
   window.destroy();
 }