Gnome agility scirpt? Any1 got?

Discussion in 'Archives' started by cX jaxhax Xc, Dec 18, 2008.

Thread Status:
Not open for further replies.
Gnome agility scirpt? Any1 got?
  1. Unread #1 - Dec 18, 2008 at 8:48 PM
  2. cX jaxhax Xc
    Joined:
    Feb 19, 2007
    Posts:
    425
    Referrals:
    2
    Sythe Gold:
    0

    cX jaxhax Xc Forum Addict
    Banned

    Gnome agility scirpt? Any1 got?

    Does any1 have a gility script that does gnome agility course?
     
  3. Unread #2 - Dec 18, 2008 at 8:54 PM
  4. EH PK
    Joined:
    Apr 6, 2008
    Posts:
    166
    Referrals:
    0
    Sythe Gold:
    0

    EH PK Active Member
    Banned

    Gnome agility scirpt? Any1 got?

    Code:
    import java.awt.*;
    import java.util.ArrayList;
    
    import com.speljohan.rsbot.bot.Bot;
    import com.speljohan.rsbot.event.events.ServerMessageEvent;
    import com.speljohan.rsbot.event.listeners.*;
    import com.speljohan.rsbot.script.*;
    import com.speljohan.rsbot.script.wrappers.*;
    import com.speljohan.rsbot.accessors.*;
    
    public class GnomeAgilityCourse extends Script implements PaintListener {
        public String getName() {
            return "Gnome Agility Course";
        }
    
        public double getVersion() {
            return 1.2;
        }
    
        public String getAuthor() {
            return "Mike";
        }
    
        public String getScriptCategory() {
            return "Agility";
        }
    
        public String getScriptDescription() {
            return "Start in the Gnome Agility Course.";
        }
    
        Color BG = new Color(123, 123, 123, 100);
        Color GREEN = new Color(0, 255, 0, 255);
        Color RED = new Color(255, 0, 0, 255);
        int startingxp = -1;
        long startTime = -1;
        public boolean onStart(String[] args) {
            startingxp = -1;
            startTime = -1;
            Bot.getEventManager().addListener(PaintListener.class, this);
            return true;
        }
    
        public void onFinish() {
            Bot.getEventManager().removeListener(PaintListener.class, this);
        }
        public int getState() {
            if(isInArea(2471,3430,2477,3435)) // Walking on Log
                return 0;
            if(isInArea(2478,3420,2482,3420)) // On Rope
                return 0;
            if(isInArea(2483,3432, 2488,3434)) // In Pipe
                return 0;
            if(isInArea(2471,3426,2477,3429) && getPlane() == 0) // After log, before net1
                return 2;
            if(isInArea(2471,3422,2476,3424) && getPlane() == 1) // After Net, Before Tree-Branch1
                return 3;
            if(isInArea(2472,3418,2477,3421) && getPlane() == 2) // After Tree-Branch, Before Rope
                return 4;
            if(isInArea(2483,3418,2488,3421) && getPlane() == 2) // After Rope, Before Tree-Branch2
                return 5;
            if(isInArea(2481,3417,2490,3425) && getPlane() == 0) // After Tree-Branch2, Before Net2
                return 6;
            if(isInArea(2481,3427,2490,3431) && getPlane() == 0) // After Net2, Before Pipe
                return 7;
            if(getPlane() == 0)
                return 1; //Log
            return -1;
    
        }
        public RSTile tile(int state) {
            switch(state) {
                case 0:
                    return null;
                case 1: // Log
                    return new RSTile(2474,3435);
    
                case 2: // Net1
                    return new RSTile(2476-random(0,6),3425);
    
                case 3: // TreeBranch1
                    return new RSTile(2473,3422);
                case 4: // Rope
                    return new RSTile(2478,3420);
    
                case 5: // TreeBranch2
                    if(random(0,5)==1)
                        return new RSTile(2487,3420);
                    return new RSTile(2486,3419);
    
                case 6: // Net2
                    return new RSTile(2483+random(0,6),3426);
    
                case 7: // Pipe 
                    int pipe = whichPipe();
                    if(pipe==1)
                        return new RSTile(2484,3431);
                    if(pipe==2)
                        return new RSTile(2487,3431);
                    return null;
            }
            return null;
        }
        public int whichPipe() {
            int[] validPlayers = Bot.getClient().getPlayerIndexArray();
            Player[] players = Bot.getClient().getPlayerArray();
            boolean left = true;
            boolean right = true;
            for (int element : validPlayers) {
            try {
                if (players[element] == null) {
                    continue;
                }
                RSPlayer player = new RSPlayer(players[element]);
                int x=player.getLocation().getX();
                int y=player.getLocation().getY();
                if(x==2484 && y>=3432 && y<=3435) {
                    left = false;
                    log("Player is in west pipe");
                }
                if(x==2487 && y>=3432 && y<=3435) {
                    right = false;
                    log("Player is in east pipe");
                }
                } catch (Exception e) {}
            }
            if(left==true && random(0,2) == 1)
                return 1;
            if(right==true)
                return 2;
            log("Both pipes are taken! Waiting!");
            return -1;
            
        }
        public boolean isInArea(int x1, int y1, int x2, int y2) {
            int x=getMyPlayer().getLocation().getX();
            int y=getMyPlayer().getLocation().getY();
            if(x>=x1 && y>=y1 && x<=x2 && y<=y2)
                return true;
            return false;
        }
        
        private void checkRun() {
                if (!isRunning() && getEnergy() > 30)
                    setRun(true);
            }
    
        public int loop() {
            RSPlayer me = getMyPlayer();
            for(int i=0;i<=50;i++)
                if(me.getAnimation() != -1 || me.isMoving())
                    return random(50,100);
                else
                    wait(random(9,12));
            int state = getState();
            log("State: "+state);
            RSTile spot = tile(state);
            if(spot==null)
                return random(50,100);
            checkRun();
            switch(state) {
                case 0:
                break;
                case 1: // Log
                    if(!atTile2(spot,-20,.5,.5, "Walk-across"))
                        if(distanceTo(spot) > 6)
                            walkPathMM(randomizePath(generatePath(spot),2,2),16);
                        else
                            turnToTile(spot);
                break;
    
                case 2: // Net1
                    if(!atTile2(spot, random(50,200), .5, .5, "Climb-over"))
                        if(distanceTo(spot) > 6)
                            walkPathMM(randomizePath(generatePath(spot),2,2),16);
                        else
                            turnToTile(spot);
                break;
    
                case 3: // TreeBranch1
                    if(!atTile2(spot, random(125,135), .5, .5, "Climb"))
                        if(distanceTo(spot) > 6)
                            walkPathMM(randomizePath(generatePath(spot),2,2),16);
                        else
                            turnToTile(spot);
                break;
    
                case 4: // Rope
                    if(!atTile2(spot, 0, .5, .3, "Walk-on"))
                        if(distanceTo(spot) > 6)
                            walkPathMM(randomizePath(generatePath(spot),2,2),16);
                        else
                            turnToTile(spot);
                break;
    
                case 5: // TreeBranch2
                    if(!atTile2(spot, random(80,90), .5, .5, "Climb-down"))
                        if(distanceTo(spot) > 6)
                            walkPathMM(randomizePath(generatePath(spot),2,2),16);
                        else
                            turnToTile(spot);
                break;
    
                case 6: // Net2
                    if(!atTile2(spot, random(50,200), .5, .5, "Climb-over"))
                        if(distanceTo(spot) > 6)
                            walkPathMM(randomizePath(generatePath(spot),2,2),16);
                        else
                            turnToTile(spot);
                break;
    
                case 7: // Pipe 
                    if(!atTile2(spot, random(40,50), .5, .5, "Squeeze-through"))
                        if(distanceTo(spot) > 6)
                            walkPathMM(randomizePath(generatePath(spot),2,2),16);
                        else
                            turnToTile(spot);
                break;
    
                default: //Stop Script
                return -1;
            }
            return random(100, 200);
        }
    
        public boolean atTile2(RSTile tile, int h, double xd, double yd, String action) {
            try {
                Point location = Calculations.tileToScreen(tile.getX(), tile.getY(), .5, .5, h);
                if (location.x == -1 || location.y == -1) return false;
                    moveMouse(location, 3, 3);
                if (getMenuItems().get(0).toLowerCase().contains(action.toLowerCase())) {
                    clickMouse(true);
                } else {
                    clickMouse(false);
                    if (!atMenu(action)) return false;
                }
                wait(random(500, 1000));
                while (true) {
                    if (!getMyPlayer().isMoving()) break;
                    wait(random(500, 1000));
                }
                return true;
            } catch (Exception e) {
                return false;
            }
        }
        public RSTile[] generatePath(RSTile tile) {
            return generatePath(getMyPlayer().getLocation().getX(),getMyPlayer().getLocation().getY(), tile.getX(), tile.getY());
        }
        public RSTile[] generatePath(RSTile tile, RSTile tile2) {
            return generatePath(tile.getX(), tile.getY(), tile2.getX(), tile2.getY());
        }
        public RSTile[] generatePath(int startX, int startY, int destinationX, int destinationY) { //most credits to aftermath
            double dx, dy;
            ArrayList<RSTile> list = new ArrayList<RSTile>();
            
            list.add(new RSTile(startX, startY));
            while(Math.hypot(destinationY - startY, destinationX - startX) > 8) {
                dx = destinationX - startX;
                dy = destinationY - startY;
                            int gamble = random(14,17);
                while(Math.hypot(dx, dy) > gamble) {
                    dx *= .95;
                    dy *= .95;
                }
                startX += (int) dx;
                startY += (int) dy;
                list.add(new RSTile(startX, startY));
            }
            list.add(new RSTile(destinationX, destinationY));
            return list.toArray(new RSTile[list.size()]);
            
        }
    
    
        public void onRepaint(Graphics g) { // stole transparent box from ~alex~'s
            if (isLoggedIn()) {
                if(startingxp==-1) {
                    startingxp=skills.getCurrentSkillExp(STAT_AGILITY);
                    startTime=System.currentTimeMillis();
                }
    
                long millis = System.currentTimeMillis() - startTime;
                long seconds2 = millis / 1000;
                long hours = millis / (1000 * 60 * 60);
                millis -= hours * 1000 * 60 * 60;
                long minutes = millis / (1000 * 60);
                millis -= minutes * 1000 * 60;
                long seconds = millis / 1000;
                String hoursString = "";
                String minutesString = "";
                String secondsString = seconds + "";
                String type = "seconds";
                if (minutes > 0) {
                    minutesString = minutes + ":";
                    type = "minutes";
                }
                if (hours > 0) {
                    hoursString = hours + ":";
                    type = "hours";
                }
                if (minutesString.length() == 1) {
                    minutesString = "0" + minutesString;
                }
                if (hoursString.length() == 1) {
                    hoursString = "0" + hoursString;
                }
                if (secondsString.length() == 1) {
                    secondsString = "0" + secondsString;
                }
                int x = 18;
                int y = 18;
                g.setColor(BG);
                g.fill3DRect(14, 25, 210, 165, true);
                g.setColor(GREEN);
                g.drawString(getName() + " v" + getVersion() + " by " + getAuthor(), x, y += 20);
                g.drawString("Running for " + hoursString + minutesString
                        + secondsString + " " + type + ".", x, y += 20);
                g.setColor(RED);
                g.drawString("Gained " + (skills.getCurrentSkillExp(STAT_AGILITY)-startingxp) + " experience.", x, y += 20);
                if (seconds2 != 0) {
                    g.drawString("Averaging " + ((skills.getCurrentSkillExp(STAT_AGILITY)-startingxp) * 3600 / seconds2) + " experience per hour.", x, y += 20);
                }
    
            }
        }
    }
     
  5. Unread #3 - Dec 18, 2008 at 9:04 PM
  6. cX jaxhax Xc
    Joined:
    Feb 19, 2007
    Posts:
    425
    Referrals:
    2
    Sythe Gold:
    0

    cX jaxhax Xc Forum Addict
    Banned

    Gnome agility scirpt? Any1 got?

    i love you.
    in a non sexual way.
     
  7. Unread #4 - Dec 19, 2008 at 6:41 AM
  8. Administrator_1337
    Joined:
    Aug 9, 2008
    Posts:
    112
    Referrals:
    0
    Sythe Gold:
    0

    Administrator_1337 Active Member

    Gnome agility scirpt? Any1 got?

    ^^

    nice lol

    and why dont u try mm arena.. gnome fails hard
     
< Selling Level 48 Pure [Willing To Go First] | [PayPal] BUYING D CLAWS!! >

Users viewing this thread
1 guest
Thread Status:
Not open for further replies.


 
 
Adblock breaks this site