Advertisement
Not a member of Pastebin yet?
Sign Up,
it unlocks many cool features!
- package core;
- import org.osbot.rs07.api.map.Area;
- import org.osbot.rs07.api.map.Position;
- import org.osbot.rs07.api.map.constants.Banks;
- import org.osbot.rs07.api.model.RS2Object;
- import org.osbot.rs07.api.ui.Skill;
- import org.osbot.rs07.script.Script;
- import org.osbot.rs07.script.ScriptManifest;
- import java.awt.*;
- @ScriptManifest(author = "Lucas", info = "Mine any ore", name = "Basic Miner", version = 0, logo = "")
- public class BasicMiner extends Script {
- private long startTime;
- private long timetoLvl;
- public long timesoFar;
- public long xp;
- public long lvlsGained;
- public long xpHr;
- public long timenextLvl;
- public final String formatTime(final long ms) {
- long s = ms / 1000, m = s / 60, h = m / 60;
- s %= 60;
- m %= 60;
- h %= 24;
- return String.format("%02d:%02d:%02d", h, m, s);
- }
- public final String formattimetoLvl(final long ms) {
- long s = ms / 1000, m = s / 60, h = m / 60;
- s %= 60;
- m %= 60;
- h %= 24;
- return String.format("%02d:%02d:%02d", h, m, s);
- }
- @Override
- public void onStart() {
- // Tracking a single skill
- getExperienceTracker().start(Skill.MINING);
- timetoLvl = getExperienceTracker().getGainedXPPerHour(Skill.MINING);
- // Gets current start time of the system
- startTime = System.currentTimeMillis();
- // walks to mining area
- walking.webWalk(new Area(3181, 3380, 3185, 3374));
- log("I can't believe script writing is this easy! I love learning!");
- }
- Area miningspot = new Area(3174, 3364, 3177, 3368);
- public int onLoop() throws InterruptedException {
- if (inventory.isFull()) {
- if (Banks.VARROCK_WEST.contains(myPlayer())) {
- if (bank.isOpen()) {
- bank.depositAll();
- } else {
- bank.open();
- }
- } else {
- bank.close();
- walking.webWalk(Banks.VARROCK_WEST);
- }
- } else {
- if (miningspot.contains(myPlayer())) {
- if (myPlayer().isUnderAttack()) {
- walking.webWalk(new Position(3169, 3399, 0));
- // walking.webWalk(new Area(3173, 3383, 3179, 3390));
- Thread.sleep(10000);// so it stays there
- } else {
- if (players.get(3175, 3367) != null) {
- worlds.hopToF2PWorld();
- }
- if (!myPlayer().isAnimating()) {
- RS2Object vein = objects.closest(11365);
- if (vein != null) {
- vein.interact("Mine");
- sleep(random(2000, 3000));
- }
- }
- }
- } else {
- getWalking().walk(miningspot);
- }
- }
- return 200;
- }
- @Override
- public void onExit() {
- log("Thanks for using this wonderful script!");
- }
- @Override
- public void onPaint(Graphics2D g) {
- g.setFont(g.getFont().deriveFont(18.0f));
- long runTime = System.currentTimeMillis() - startTime;
- long timenextLvl = getExperienceTracker().getTimeToLevel(Skill.MINING) - timetoLvl;
- // Getting the amount of XP gained since we started the Experience Tracker
- xp = getExperienceTracker().getGainedXP(Skill.MINING);
- // Getting the number of levels gained since we started the Experience Tracker
- lvlsGained = getExperienceTracker().getGainedLevels(Skill.MINING);
- // Getting the amount of XP gained per hour since we started the Experience
- // Tracker
- xpHr = getExperienceTracker().getGainedXPPerHour(Skill.MINING);
- // Getting the time until we reach the next level in this skill
- timenextLvl = getExperienceTracker().getTimeToLevel(Skill.MINING);
- g.drawString("Elapsed Time: " + formatTime(runTime), 20, 220);
- g.drawString("Time to next lvl: " + formattimetoLvl(timenextLvl), 20, 235);
- g.drawString("XP so far: " + (xp), 20, 250);
- g.drawString("lvls gained: " + (lvlsGained), 20, 265);
- g.drawString("XP per hour: " + (xpHr), 20, 280);
- }
- }
Advertisement
Add Comment
Please, Sign In to add comment
Advertisement