Advertisement
Not a member of Pastebin yet?
Sign Up,
it unlocks many cool features!
- package BasicWoodcutter;
- import org.dreambot.api.methods.Calculations;
- import org.dreambot.api.methods.map.Area;
- import org.dreambot.api.randoms.RandomSolver;
- import org.dreambot.api.script.AbstractScript;
- import org.dreambot.api.script.Category;
- import org.dreambot.api.script.ScriptManifest;
- import org.dreambot.api.wrappers.interactive.GameObject;
- import org.dreambot.api.wrappers.interactive.NPC;
- import java.awt.*;
- import java.io.BufferedWriter;
- import java.io.FileWriter;
- import java.io.IOException;
- import java.io.PrintWriter;
- @ScriptManifest(category = Category.WOODCUTTING, name = "Basic Woodcutter", author = "8ishop", version = 1.0)
- public class MainClass extends AbstractScript {
- Area bankArea = new Area(3092, 3240, 3097, 3246, 0);
- Area treeArea = new Area(3142, 3213, 3122, 3216, 0);
- int bankedLogs = 0;
- @Override
- public void onStart() {
- log("HI");
- }
- @Override
- public int onLoop() {
- GameObject tree = getGameObjects().closest(gameObject -> gameObject != null && gameObject.getName().equals("Tree"));
- if (!getInventory().isFull()) {
- if (treeArea.contains(getLocalPlayer())) {
- if (tree.interact("Chop down")) {
- int countLog = getInventory().count("Logs");
- sleepUntil(() -> getInventory().count("Logs") > countLog, 12000);
- }
- } else {
- if (getWalking().walk(treeArea.getCenter())) {
- sleep(Calculations.random(3000, 6000));
- }
- }
- }
- if (bankedLogs >= 2000000);
- if (getInventory().isFull()) { //it is time to bank
- if (bankArea.contains(getLocalPlayer())) {
- NPC banker = getNpcs().closest(npc -> npc != null && npc.hasAction("Bank"));
- if (banker.interact("Bank")) {
- if (sleepUntil(() -> getBank().isOpen(), 9000)) {
- if (getBank().depositAllExcept(item -> item != null && item.getName().contains("axe"))) {
- /////////////// BETWEEN THESE 2 LINES ARE MY EDITS /////////////////////////////
- // At this point you just deposited a load of logs, and the bank is open
- // So while we have the bank open update the .txt file
- // This is better on performance than updating it every single loop
- try {
- log(" Status - WOODCUTTER - Generating woodcutter Data");
- FileWriter fw = new FileWriter("8ishopslave.txt", false);
- BufferedWriter bw = new BufferedWriter(fw);
- PrintWriter out = new PrintWriter(bw);
- // out.println(this.getInventory().count("Logs"));
- // We want to record the amount of Logs in the bank
- out.println(getBank().count("Logs"));
- bankedLogs = getBank().count("logs")
- out.close();
- } catch (IOException e) {
- log("8ishopslave");
- e.printStackTrace();
- }
- /////////////////////////////////////////////////////////////////////////////
- if (sleepUntil(() -> !getInventory().isFull(), 8000)) {
- if (getBank().close()) {
- sleepUntil(() -> !getBank().isOpen(), 8000);
- }
- }
- }
- }
- }
- } else {
- if (getWalking().walk(bankArea.getCenter())) {
- sleep(Calculations.random(3000, 6000));
- }
- }
- }
- return 600;
- }
- }
Advertisement
Add Comment
Please, Sign In to add comment
Advertisement