Advertisement
Not a member of Pastebin yet?
Sign Up,
it unlocks many cool features!
- import org.apache.commons.math3.special.Beta;
- import org.dreambot.api.methods.container.impl.Inventory;
- import org.dreambot.api.methods.filter.Filter;
- import org.dreambot.api.methods.trade.Trade;
- import org.dreambot.api.methods.world.World;
- import org.dreambot.api.script.AbstractScript;
- import org.dreambot.api.script.Category;
- import org.dreambot.api.script.ScriptManifest;
- import org.dreambot.api.script.listener.InventoryListener;
- import org.dreambot.api.script.listener.MessageListener;
- import org.dreambot.api.utilities.Logger;
- import org.dreambot.api.wrappers.interactive.NPC;
- import org.dreambot.api.wrappers.interactive.Player;
- import org.dreambot.api.wrappers.items.Item;
- import org.dreambot.api.wrappers.widgets.chatbox.ChatboxMessage;
- import org.dreambot.api.wrappers.widgets.message.Message;
- import java.util.List;
- import java.util.Vector;
- @ScriptManifest(
- category = Category.MONEYMAKING, name = "Buyer", author = "Gomomo11", version = 0.01)
- public class Buyer extends AbstractScript implements MessageListener {
- String lastText = "";
- NPC shop;
- int tradeState = 0;
- int tmp = 0;
- long startTime = System.currentTimeMillis();
- int woadBought = 0;
- boolean switchWorld = false, bedWorld = false, doneSwitching = true;
- int currentThread = 0;
- Vector<Integer> last20 = new Vector();
- @Override
- public void onStart() {
- shop = getNpcs().closest("Dommik");
- currentThread = getInventory().count("Thread");
- log("0");
- for (int i = 0; i < 25; i++) {
- last20.add(0);
- }
- }
- boolean foundInLast20(int w) {
- log("foundinlast20: " + last20.size());
- if(last20.size() >= 100) {
- last20.clear();
- for (int i = 0; i < 25; i++) {
- last20.add(0);
- }
- sleep(250000);
- }
- for(int i = last20.size()-1; i >= last20.size()-20; i--) {
- if(last20.get(i) == w)
- return true;
- }
- return false;
- }
- @Override
- public int onLoop() {
- log("loop");
- try {
- if(getInventory().count("Coins") < 1000) {
- getTabs().logout();
- stop();
- }
- if(switchWorld) {
- log("switchworld true");
- doneSwitching = false;
- woadBought = getInventory().count("Thread") - currentThread;
- long secondSinceStart = (System.currentTimeMillis() - startTime) / 1000;
- double woadPerHour = (woadBought * 3600) / secondSinceStart;
- log("Thread/hr: " + (int)woadPerHour);
- int currentWorld = getClient().getCurrentWorld();
- log("1");
- World e = getWorlds().getRandomWorld(w -> w !=null && w.isF2P() && !w.isHighRisk()
- && !w.isLastManStanding() && !w.isPVP()
- && !w.equals(getClient().getCurrentWorld()) && w.getWorld() != 381 && w.getWorld() != 413 && w.getWorld() != 419 && w.getWorld() != 427 && w.getWorld() != 468 && w.getWorld() != 372 && w.getWorld() != 385 && w.getWorld() != 414 && w.getWorld() != 432 && w.getWorld() != 530 && w.getWorld() != 404);
- log("2");
- while(true) {
- log("world while");
- if(foundInLast20(e.getWorld())) {
- log("new world");
- e = getWorlds().getRandomWorld(w -> w !=null && w.isF2P() && !w.isHighRisk()
- && !w.isLastManStanding() && !w.isPVP()
- && !w.equals(getClient().getCurrentWorld()) && w.getWorld() != 381 && w.getWorld() != 413 && w.getWorld() != 419 && w.getWorld() != 427 && w.getWorld() != 468 && w.getWorld() != 372 && w.getWorld() != 385 && w.getWorld() != 414 && w.getWorld() != 432 && w.getWorld() != 530 && w.getWorld() != 404);
- } else
- break;
- }
- log("out of loop");
- getWorldHopper().hopWorld(e);
- getMouse().move();
- log("hopped");
- last20.add(e.getWorld());
- if (sleepUntil(()-> doneSwitching, 15000)) {
- log("Done switching world");
- sleep(14000, 16000);
- switchWorld = false;
- }
- } else {
- if(!getShop().isOpen()) {
- log("opening shop");
- shop = getNpcs().closest("Dommik");
- shop.interact("Trade");
- sleepUntil(() -> getShop().isOpen(), 4000);
- log("done opening shop");
- } else {
- boolean donebuying = false;
- int tries = 0;
- boolean failed = false;
- while(true) {
- log("shop while");
- int current = getInventory().count("Thread");
- if(getShop().get("Needle").getAmount() > 0)
- getShop().purchaseFive("Needle");
- if(getShop().get("Thread").getAmount() > 50)
- getShop().purchaseFifty("Thread");
- getShop().purchaseFifty("Thread");
- if(!sleepUntil(() -> getShop().get("Thread").getAmount() < 3, 4000)) {
- //failed = true;
- getMouse().move();
- sleep(300, 700);
- //break;
- }
- if(getShop().get("Thread").getAmount() < 3)
- break;
- }
- log("Done buying");
- getShop().close();
- sleepUntil(() -> !getShop().isOpen(), 4000);
- getMouse().move();
- sleep(14000, 16000);
- if(!failed)
- switchWorld = true;
- }
- }
- } catch(Exception e) {
- log(e.getLocalizedMessage());
- }
- return 0;
- }
- @Override
- public void onGameMessage(Message m) {
- try {
- //log("1: " + m.getMessage());
- if(m.getMessage().contains("Welcome to Old School RuneScape")) {
- doneSwitching = true;
- } else if(m.getMessage().contains("sdasd")) {
- bedWorld = true;
- }
- } catch (Exception e) {
- e.printStackTrace();
- }
- }
- @Override
- public void onPlayerMessage(Message m) {
- try {
- log("2: " + m.getMessage());
- } catch (Exception e) {
- e.printStackTrace();
- }
- }
- @Override
- public void onTradeMessage(Message message) {
- }
- @Override
- public void onPrivateInMessage(Message message) {
- }
- @Override
- public void onPrivateOutMessage(Message message) {
- }
- }
Advertisement
Add Comment
Please, Sign In to add comment
Advertisement