Advertisement
Not a member of Pastebin yet?
Sign Up,
it unlocks many cool features!
- import main.hooks.zenyte.Category;
- import main.hooks.zenyte.ChatMessage;
- import main.hooks.zenyte.Context;
- import main.robot.script.Script;
- import net.runelite.api.GameObject;
- import net.runelite.api.TileObject;
- import net.runelite.api.WallObject;
- import net.runelite.api.coords.WorldPoint;
- import java.awt.*;
- import java.util.Arrays;
- import java.util.List;
- import java.util.Optional;
- public class Launch extends Script {
- public Category scriptDefinitions() {
- Category cat = new Category();
- cat.setAuthor("Altaiir");
- cat.setDescription("Amethyst Miner");
- cat.setTitle("Amethyst Miner..");
- cat.setVersion(1.0D);
- return cat;
- }
- private enum State {
- TOGGLE_RUN, MINE, BANK, DEPOSIT
- }
- private Optional<State> state = Optional.empty();
- private State getState() {
- Context con = auto.getContext();
- if (!con.runActive() && con.getRunEnergy() >= 80) {
- return State.TOGGLE_RUN;
- } else if (auto.getInventory().inventoryFull()) {
- return State.BANK;
- } else if (auto.getBank().bankOpen() && !auto.getInventory().inventoryFull()) {
- return State.DEPOSIT;
- }
- return State.MINE;
- }
- @Override
- public void onExecute() {
- }
- private List<Integer> listOfObjects = Arrays.asList(30371, 30372);
- @Override
- public void onProcess() {
- state = Optional.of(getState());
- System.out.println(state.get());
- switch (state.get()) {
- case MINE:
- if (auto.getPlayers().getLocalPlayer().getAnimation() == -1) {
- Optional<WallObject> optional = Arrays.stream(auto.getWallObjects().getLocalObjects()).filter(obj -> listOfObjects.contains(obj.getId())).findFirst();
- if (optional.isPresent()) {
- WallObject ameth = optional.get();
- if (auto.getWallObjects().visibleOnScreen(ameth)) {
- auto.getWallObjects().click(ameth, "mine");
- auto.sleepCondition(() -> (auto.getPlayers().getLocalPlayer().getAnimation() != -1));
- } else {
- auto.getWallObjects().clickOnMinimap(ameth);
- auto.sleepCondition(() -> auto.getWallObjects().visibleOnScreen(ameth));
- }
- }
- }
- break;
- case TOGGLE_RUN:
- auto.getContext().toggleRun();
- auto.sleep(250);
- break;
- case DEPOSIT:
- auto.getBank().depositInventory();
- auto.sleep(500);
- auto.getBank().closeBank();
- auto.sleep(500);
- break;
- case BANK:
- Optional<GameObject> bankOptional = Arrays.stream(auto.getObjects().getLocalObjects()).filter(obj -> obj.getId() == 4483).findFirst();
- if (bankOptional.isPresent()) {
- GameObject bank = bankOptional.get();
- if (auto.getObjects().visibleOnScreen(bank)) {
- auto.getObjects().clickOption(bank, "use");
- auto.sleepCondition(() -> auto.getBank().bankOpen());
- } else {
- auto.getObjects().clickOnMinimap(bank);
- auto.sleepCondition(() -> auto.getObjects().visibleOnScreen(bank));
- }
- } else {
- WorldPoint point = auto.getPlayers().getLocalPlayer().getWorldLocation();
- auto.getPathing().walkToCoord(point.getX() - 5, point.getY());
- auto.sleep(1000);
- }
- break;
- }
- }
- @Override
- public void onTerminate() {
- }
- @Override
- public void onChatMessage(ChatMessage chatMessage) {
- }
- @Override
- public Graphics paint(Graphics graphics) {
- return null;
- }
- }
Advertisement
Add Comment
Please, Sign In to add comment
Advertisement