Not a member of Pastebin yet?
Sign Up,
it unlocks many cool features!
- package me.wonderfulmang.aow.styles;
- import java.util.ArrayList;
- import java.util.List;
- import org.osbot.rs07.api.map.Area;
- import org.osbot.rs07.api.model.Item;
- import org.osbot.rs07.api.model.NPC;
- import org.osbot.rs07.utility.ConditionalSleep;
- import me.wonderfulmang.aow.Main;
- import me.wonderfulmang.aow.TreeType;
- import me.wonderfulmang.aow.WoodcuttingState;
- public class WoodcuttingStyle {
- protected Area woodCuttingArea;
- protected String areaName;
- protected Area bank;
- public Main main;
- protected TreeType selectedTree;
- protected List<TreeType> treeList = new ArrayList<TreeType>();
- public WoodcuttingStyle(String areaName, Area bank,Main main) {
- this.areaName = areaName;
- this.bank = bank;
- }
- public WoodcuttingState getState() {
- if(main == null)
- {
- return WoodcuttingState.UNKNOWN;
- }else{
- main.log("main is not null");
- }
- if(main.inventory.isFull()){
- if(bank == null)
- {
- main.log("Bank is null");
- return WoodcuttingState.UNKNOWN;
- }
- if(bank.contains(main.myPlayer()))
- return WoodcuttingState.BANKING;
- return WoodcuttingState.WALKING_TO_BANK;
- }
- if(getWoodCuttingArea() == null)
- {
- main.log("WoodcuttingArea is null");
- return WoodcuttingState.UNKNOWN;
- }
- if(!getWoodCuttingArea().contains(main.myPlayer()))
- return WoodcuttingState.WALKING_TO_TREES;
- if(main.myPlayer().getInteracting() != null)
- {
- if(selectedTree == null)
- {
- main.log("Selected tree is null...");
- return WoodcuttingState.UNKNOWN;
- }
- if(main.myPlayer().getInteracting().getName().equalsIgnoreCase(selectedTree.getName()))
- {
- return WoodcuttingState.CHOPPING;
- }else{
- return WoodcuttingState.UNKNOWN;
- }
- }else{
- return WoodcuttingState.WAITING;
- }
- }
- public String getAreaName() {
- return areaName;
- }
- public Area getWoodCuttingArea() {
- return woodCuttingArea;
- }
- public TreeType getSelectedTreeType() {
- return selectedTree;
- }
- public void setSelectedTree(TreeType selectedTree) {
- this.selectedTree = selectedTree;
- }
- public Area getBank() {
- return bank;
- }
- public List<TreeType> getTreeList() {
- return treeList;
- }
- public int runStyle()
- {
- switch(getState())
- {
- case BANKING:
- if(!main.getBank().isOpen())
- {
- try {
- if(main.getBank().open())
- {
- new ConditionalSleep(5000,6000)
- {
- @Override
- public boolean condition() throws InterruptedException {
- return main.getBank().isOpen();
- }
- }.sleep();
- if(main.selectedHatchet == null)
- {
- main.log("Selected hatchet is null...");
- return Main.random(200,300);
- }
- main.getBank().depositAll(selectedTree.getLogName());
- for(Item item : main.getInventory().getItems())
- {
- if(item == null)
- continue;
- if(!item.getName().equalsIgnoreCase(main.selectedHatchet.getName()))
- {
- main.getBank().depositAll(item.getName());
- }
- }
- main.getBank().close();
- }
- } catch (InterruptedException e) {
- e.printStackTrace();
- }
- }
- return Main.random(300,1500);
- case CHOPPING:
- break;
- case UNKNOWN:
- main.getWalking().webWalk(bank.getRandomPosition());
- return Main.random(200,300);
- case WAITING:
- NPC tree = main.npcs.closest(selectedTree.getName());
- if(tree == null)
- return Main.random(500,1500);
- if(!main.myPlayer().isInteracting(tree))
- {
- tree.interact("Chop down");
- return Main.random(1100,3000);
- }
- return Main.random(1000,1500);
- case WALKING_TO_BANK:
- main.getWalking().webWalk(bank.getRandomPosition());
- break;
- case WALKING_TO_TREES:
- main.getWalking().webWalk(getWoodCuttingArea().getRandomPosition());
- return Main.random(200,500);
- default:
- main.getWalking().webWalk(bank.getRandomPosition());
- break;
- }
- return Main.random(200,300);
- }
- }
Add Comment
Please, Sign In to add comment