Jump to content

fabiana

Members
  • Posts

    6
  • Joined

  • Last visited

  • Feedback

    0%

Posts posted by fabiana

  1. import java.awt.Color;
    import java.awt.Graphics2D;
    import org.osbot.rs07.script.Script;
    import org.osbot.rs07.script.ScriptManifest;
    import org.osbot.rs07.api.map.Position;
    import org.osbot.rs07.api.model.RS2Object;
    import org.osbot.rs07.api.ui.Skill;
    import org.osbot.rs07.api.ui.Tab;

    @ScriptManifest(author = "Pildurass", info = "Collects mort myre fungus", name ="Shrooms", version = 1.0, logo = "http://i.imgur.com/xI60cq3.png")
    public class Shrooms extends Script {
        public int trips, shroomholder, shroomcount;
        private long startTime;
        private Color bg;
        String state;
        @SuppressWarnings("unused")
        private Color box;
        public int statsX;
        public int statsY;
        public void onStart() {
            trips = (int) getInventory().getAmount(563);
            startTime = System.currentTimeMillis();
            bg = new Color(69, 53, 15, 125);
            box = new Color(0, 0, 0);
            statsX = 313;
            statsY = 344;
        }
        public void onPaint(Graphics2D g1) {
            long millis = System.currentTimeMillis() - startTime;
            Graphics2D g = g1;
            g.setColor(bg);
            g.fillRect(statsX, statsY, 184, 115);
            g.setColor(Color.green);
            g.drawRect(statsX, statsY, 184, 115);
            g.setColor(Color.white);
            g.drawString((new StringBuilder("Fungi Picker v")).append("0.1 | Author : Pildurass").toString(), statsX + 5, statsY + 15);
            g.drawString((new StringBuilder("State: ")).append(status).toString(), statsX + 5, statsY + 30);
            g.drawString((new StringBuilder("Time ran: ")).append(timeToString((int)millis)).toString(), statsX + 5, statsY + 45);
            g.drawString((new StringBuilder("Fungi Gained: ")).append(shroomcount).toString(), statsX + 5, statsY + 60);
            g.drawString((new StringBuilder("Fungi/Hour: ")).append(perHour((int)(shroomcount), System.currentTimeMillis() - millis)).toString(), statsX + 5, statsY + 75);
        }
        public static String perHour(int gained, long startTime)
        {
            int i = (int)(((double)gained * 3600000D) / (double)(System.currentTimeMillis() - startTime));
            return (new StringBuilder()).append(i).toString();
        }
        public static String timeToString(long time)
        {
            int seconds = (int)(time / 1000L) % 60;
            int minutes = (int)((time / 60000L) % 60L);
            int hours = (int)((time / 0x36ee80L));
            return (new StringBuilder(String.valueOf(hours))).append(":").append(minutes).append(":").append(seconds).toString();
        }
        public final Position toGate[] = {
                new Position(3497, 3482, 0), new Position(3481, 3476, 0), new Position(3466, 3473, 0), new Position(3453, 3465, 0), new Position(3444, 3458, 0)
            };
        public final Position toShroomArea[] = {
                new Position(3433, 3450, 0), new Position(3424, 3441, 0), new Position(3466, 3473, 0), new Position(3421, 3439, 0)
            };
        public final Position toBank[] = {
                new Position(3494, 3479, 0), new Position(3502, 3489, 0), new Position(3511, 3480, 0)            
        };
        public final Position toSpot[] = {
                new Position(3421, 3439, 0)            
        };
        public void walkPath(Position path[]) {
            for (int i = 0; i < path.length; i++) {
                localWalker.walk(path);
            }
        }
        public void walkBank() {
            status = "Walking to Bank";
            walkPath(toBank);
            while(myPlayer().isMoving()) {
            }
        }
        public void bank() {
            status="Banking";
            RS2Object banks = objects.closest(new String[] {"Bank booth"});
            localWalker.walk(banks.getPosition());
            while(myPlayer().isMoving()) {
            }
            banks.interact("Bank");        
        }
        public void storeitems() {
              status = "Storing Items";
              shroomholder += 25;
              getInventory().getItem(2970).interact("Deposit-All");
              if (skills.getDynamic(Skill.HITPOINTS) <= 60) {
                  getBank().withdraw(379, 3);
              }
        }
        public void openDoor() {
            status = "Opening Door";
            RS2Object portal = objects.closest(new String[] {"Portal"});
              getTabs().open(Tab.INVENTORY);
              new Position(portal.getPosition().getX() - 3, portal.getPosition().getY(), portal.getPosition().getZ()).interact(getBot(), "Walk here");
              getDoorHandler().handleNextObstacle(new Position(portal.getPosition().getX() - 4, portal.getPosition().getY(), portal.getPosition().getZ()));
        }
        public void rechargingPrayer() {
            status = "Recharging Prayer";
            RS2Object altar = objects.closest(new String[] {"Altar"});
              altar.interact("Pray");
              if (skills.getDynamic(Skill.PRAYER) != skills.getStatic(Skill.PRAYER)) {
                  altar.interact("Pray");
              }
        }
        public void exiting() {
            status = "Exiting House";
            RS2Object tpFocus = objects.closest(new String[] {"Teleportation focus"});
            RS2Object portal = objects.closest(new String[] {"Kharyrll Portal"});
              localWalker.walk(tpFocus.getPosition());
              portal.interact("Enter");
        }
        public void picking() {
             status = "Picking Fungi";
             shroomcount = (int) getInventory().getAmount(2970) + shroomholder;
            RS2Object fungi = objects.closest(new String[] {"Fungi on log"});
            fungi.interact("Pick");
        }
        public void walktologs() {
             status = "Walking to logs";
             walkPath(toShroomArea);
             while(myPlayer().isMoving()) {
             }
        }
        public void opengate() {
             status = "Opening Gate";
            RS2Object gate = objects.closest(new String[] {"Gate"});
             localWalker.walk(gate.getPosition());
             while (myPlayer().isMoving()){
             }
             gate.interact("Open");
        }
        public void walktobank() {
             status = "Walking to bank";
             walkPath(toBank);
        }
        public void teleporttohouse() {
              status = "Teleporting to house";
              getTabs().open(Tab.MAGIC);
              getInterfaces().getChild(192, 23).interact("Cast");
        }
        public void returntospot() {
             status = "Getting Situated";
             shroomcount = (int) getInventory().getAmount(2970) + shroomholder;
             new Position(3421, 3439, 0).interact(getBot(), "Walk here");
        }
        public void castbloom(){
             status = "Casting bloom";
              getTabs().open(Tab.INVENTORY);
             getInventory().getItem(2963).interact("Cast Bloom");
        }
        public void walktogate() {
             status = "Walking to gate"; 
             walkPath(toGate);
             while (myPlayer().isMoving()) {
             }
        }
        public void eat() {
            status = "Eating";
            getBank().close();
              getTabs().open(Tab.INVENTORY);
            getInventory().interact("Eat", 379);
        }
        public String status = "Initializing...";
        public int onLoop() {
            RS2Object bankss = objects.closest(new String[] {"Bank booth"});
            RS2Object gate = objects.closest(new String[] {"Gate"});
            RS2Object logs = objects.closest(new String[] {"Rotting log"});
            RS2Object fungi = objects.closest(new String[] {"Fungi on log"});
            RS2Object portal = objects.closest(new String[] {"Portal"});
            RS2Object door = objects.closest(13103);
            if (getColorPicker().isColorAt(573, 133, new Color(175, 176, 162))) {
                status = "Toggling Run";
                interfaces.getChild(548, 94).interact("Toggle Run");
                return 500;
            }
            if (getInventory().contains(379)) {
                eat();
                return 500;
            }
            if (bankss != null) {
                if (bankss.isVisible() && getInventory().getAmount(2970) != 0 && !bank.isOpen() && myPosition().getY() > 3473) {
                    bank();
                    return 2000;
                }
            }
            if (myPosition().getY() < 3457 && myPosition().getY() > 3430 && getInventory().isFull() && skills.getDynamic(Skill.PRAYER) == skills.getStatic(Skill.PRAYER) || myPosition().getY() >= 3625 && myPosition().getY() <= 3640) {
                teleporttohouse();
                return 500;
            }
            if (myPosition().getY() > 3471 && myPosition().getY() <= 3479 && myPosition().getY() >= 3489 && myPosition().getY() <= 3503) {
                walkBank();
                return 500;
            }
            if (getInventory().isFull()) {
                    if (portal != null) {
                        if (skills.getDynamic(Skill.PRAYER) == skills.getStatic(Skill.PRAYER) && door != null) {
                            exiting();
                            return 500;
                        }
                        if (skills.getDynamic(Skill.PRAYER) != skills.getStatic(Skill.PRAYER) && door != null && (portal.getPosition().getX() - 3) == myPlayer().getPosition().getX()) {
                            rechargingPrayer();
                            return 500;
                        }
                        if (skills.getDynamic(Skill.PRAYER) != skills.getStatic(Skill.PRAYER) && door != null) {
                            rechargingPrayer();
                            return 500;
                        }
                        if (getDoorHandler().canReachOrOpen(new Position(portal.getPosition().getX() - 4, portal.getPosition().getY(), portal.getPosition().getZ()))) {
                            openDoor();
                            return 500;
                        }
                    }
                    if (bankss != null && myPosition().getY() > 3473) {
                        if (!getBank().isOpen()) {
                            bank();
                            return 2000;
                        }
                        if (getBank().isOpen()) {
                            storeitems();
                            return 500;
                        }    
                    }
            }
            if (fungi != null && !getInventory().isFull() && skills.getDynamic(Skill.PRAYER) != 0 && fungi.getPosition().getX() <= 3423) {
                picking();
                return 500;
            }
            if (myPosition().getY() <= 3457 && myPosition().getY() >= 3443) {
                walktologs();
                return 500;
            }
            if (myPosition().getX() >= 3489 && myPosition().getX() <= 3504 && myPosition().getY() >= 3471 && myPosition().getY() <= 3477) {
                walktobank();
                return 500;
            }
            if (getInventory().isFull() && myPosition().getY() < 3480) {
                teleporttohouse();
                return 500;
            }
            if (gate != null && myPosition().getY() > 3457 && myPosition().getY() <= 3465) {
                    opengate();        
                    return 500;
            }
            if (logs != null && myPosition().getY() <= 3457) {
                if (myPosition().getY() == 3439 && myPosition().getX() == 3421) {
                    castbloom();
                    return 1000;
                } else {
                    returntospot();
                    return 500;
                }
            }
            if (!getInventory().isFull() && skills.getDynamic(Skill.PRAYER) != 0) {
                walktogate();
                return 500;
            }
            if (bank.isOpen()) {
                storeitems();
                return 500;
            }
            return 500;
        }
        public void onExit() {
            
        }
    }

×
×
  • Create New...