Jump to content

anyone that can make a script that picks up body runes in lumbridge castle? would help me a bunch <3


Recommended Posts

  • Global Moderators
On 4/9/2022 at 12:27 AM, BGBM said:

anyone that can make a script that picks up body runes in lumbridge castle? would help me a bunch ❤️

I do not believe that script would be worth making. You honestly probably could try making it yourself. Doesnt seem like a hard script to write at all. If you need help, join our discord and ask for assistance in #scripting or look at some open source scipts on the forums for guidance.

 

Link to comment
Share on other sites

  • 4 months later...
On 4/9/2022 at 5:27 AM, BGBM said:

anyone that can make a script that picks up body runes in lumbridge castle? would help me a bunch ❤️

Hey man,

I'm newly trying to learn Java and taking up writing little scripts like this to help me learn.

I assume you meant Mind Runes in Lumbridge Castle? As I don't know where the Body Runes spawn is (if you I'm wrong let me know and I can change this). Anyway wrote a very basic script that will loot the Mind Rune at the bottom of the stairs then hop to another world to loot another. It will only hop to F2P worlds that don't have restrictions (E.g. 750 total etc) or PVP. There are probably better ways to do this but it's working as expected.

Here is the code;

import com.epicbot.api.shared.APIContext;
import com.epicbot.api.shared.GameType;
import com.epicbot.api.shared.entity.GroundItem;
import com.epicbot.api.shared.script.LoopScript;
import com.epicbot.api.shared.script.ScriptManifest;
import com.epicbot.api.shared.util.paint.frame.PaintFrame;

import java.awt.*;
import java.util.Random;

@ScriptManifest(name = "Lumbridge Rune Looter", gameType = GameType.OS)
public class LumbridgeRuneLooter extends LoopScript {

    @Override
    public boolean onStart(String... strings) {
        return true;
    }

    private int[] worlds = {301, 308, 316, 326, 335, 371, 379, 380, 382, 383, 384, 394, 397, 398, 399, 417, 418, 425, 426, 430, 431, 433, 434, 435, 436, 437, 451, 452, 453, 454, 455, 456, 469, 470, 471, 472, 473, 475, 476, 483, 497, 498, 499, 500, 501, 536, 537, 542, 543, 544, 545, 546, 547, 552, 553, 554, 555, 556, 557, 562, 563, 564, 565, 566, 567, 571, 573, 574, 575, 576};

    private int rollDice(int maxRoll){
        Random diceRoll = new Random();
        int roll = diceRoll.nextInt(maxRoll);
        return roll;
    }

    private void hopWorld(){
        int newWorld = worlds[rollDice(69)];
        if(newWorld != getAPIContext().world().getCurrent()){
            System.out.println("Hopping to world: " + newWorld);
            getAPIContext().world().hop(newWorld);
        } else {
            return;
        }
    }

    @Override
    protected int loop() {
        GroundItem mindRune = getAPIContext().groundItems().query().id(558).results().nearest();
        if(mindRune == null){
            hopWorld();
        } else {
            System.out.println("Looting..");
            mindRune.interact("Take");
        }
        return 600;
    }

    @Override
    protected void onPaint(Graphics2D g, APIContext ctx) {
        PaintFrame frame = new PaintFrame("Lumbridge Rune Looter");
        frame.addLine("idk how to make", "GUI");
        frame.draw(g, 0, 170, ctx);
    }
}

 

 

  • Thanks 1
Link to comment
Share on other sites

Join the conversation

You can post now and register later. If you have an account, sign in now to post with your account.

Guest
Reply to this topic...

×   Pasted as rich text.   Paste as plain text instead

  Only 75 emoji are allowed.

×   Your link has been automatically embedded.   Display as a link instead

×   Your previous content has been restored.   Clear editor

×   You cannot paste images directly. Upload or insert images from URL.

×
×
  • Create New...