Advertisement
Guest User

mining script

a guest
Jan 14th, 2021
228
0
Never
Not a member of Pastebin yet? Sign Up, it unlocks many cool features!
Java 3.66 KB | None | 0 0
  1. package core;
  2.  
  3. import org.osbot.rs07.api.map.Area;
  4. import org.osbot.rs07.api.map.Position;
  5. import org.osbot.rs07.api.map.constants.Banks;
  6. import org.osbot.rs07.api.model.RS2Object;
  7. import org.osbot.rs07.api.ui.Skill;
  8. import org.osbot.rs07.script.Script;
  9. import org.osbot.rs07.script.ScriptManifest;
  10.  
  11. import java.awt.*;
  12.  
  13. @ScriptManifest(author = "Lucas", info = "Mine any ore", name = "Basic Miner", version = 0, logo = "")
  14. public class BasicMiner extends Script {
  15.  
  16.     private long startTime;
  17.     private long timetoLvl;
  18.  
  19.     public long timesoFar;
  20.     public long xp;
  21.     public long lvlsGained;
  22.     public long xpHr;
  23.     public long timenextLvl;
  24.  
  25.     public final String formatTime(final long ms) {
  26.         long s = ms / 1000, m = s / 60, h = m / 60;
  27.         s %= 60;
  28.         m %= 60;
  29.         h %= 24;
  30.         return String.format("%02d:%02d:%02d", h, m, s);
  31.     }
  32.  
  33.     public final String formattimetoLvl(final long ms) {
  34.         long s = ms / 1000, m = s / 60, h = m / 60;
  35.         s %= 60;
  36.         m %= 60;
  37.         h %= 24;
  38.         return String.format("%02d:%02d:%02d", h, m, s);
  39.     }
  40.  
  41.     @Override
  42.     public void onStart() {
  43.  
  44.         // Tracking a single skill
  45.         getExperienceTracker().start(Skill.MINING);
  46.  
  47.         timetoLvl = getExperienceTracker().getGainedXPPerHour(Skill.MINING);
  48.  
  49.         // Gets current start time of the system
  50.         startTime = System.currentTimeMillis();
  51.  
  52.         // walks to mining area
  53.         walking.webWalk(new Area(3181, 3380, 3185, 3374));
  54.  
  55.         log("I can't believe script writing is this easy! I love learning!");
  56.     }
  57.  
  58.     Area miningspot = new Area(3174, 3364, 3177, 3368);
  59.  
  60.     public int onLoop() throws InterruptedException {
  61.         if (inventory.isFull()) {
  62.             if (Banks.VARROCK_WEST.contains(myPlayer())) {
  63.                 if (bank.isOpen()) {
  64.                     bank.depositAll();
  65.                 } else {
  66.                     bank.open();
  67.                 }
  68.             } else {
  69.                 bank.close();
  70.                 walking.webWalk(Banks.VARROCK_WEST);
  71.             }
  72.         } else {
  73.  
  74.             if (miningspot.contains(myPlayer())) {
  75.                 if (myPlayer().isUnderAttack()) {
  76.                     walking.webWalk(new Position(3169, 3399, 0));
  77.                     // walking.webWalk(new Area(3173, 3383, 3179, 3390));
  78.  
  79.                     Thread.sleep(10000);// so it stays there
  80.                 } else {
  81.                    
  82.                     if (players.get(3175, 3367) != null) {
  83.                         worlds.hopToF2PWorld();
  84.                     }
  85.                    
  86.                     if (!myPlayer().isAnimating()) {
  87.                         RS2Object vein = objects.closest(11365);
  88.                         if (vein != null) {
  89.                             vein.interact("Mine");
  90.                             sleep(random(2000, 3000));
  91.                         }
  92.                     }
  93.                 }
  94.  
  95.             } else {
  96.                 getWalking().walk(miningspot);
  97.             }
  98.  
  99.         }
  100.         return 200;
  101.     }
  102.  
  103.     @Override
  104.     public void onExit() {
  105.         log("Thanks for using this wonderful script!");
  106.     }
  107.  
  108.     @Override
  109.     public void onPaint(Graphics2D g) {
  110.  
  111.         g.setFont(g.getFont().deriveFont(18.0f));
  112.  
  113.         long runTime = System.currentTimeMillis() - startTime;
  114.  
  115.         long timenextLvl = getExperienceTracker().getTimeToLevel(Skill.MINING) - timetoLvl;
  116.  
  117.         // Getting the amount of XP gained since we started the Experience Tracker
  118.         xp = getExperienceTracker().getGainedXP(Skill.MINING);
  119.  
  120.         // Getting the number of levels gained since we started the Experience Tracker
  121.         lvlsGained = getExperienceTracker().getGainedLevels(Skill.MINING);
  122.  
  123.         // Getting the amount of XP gained per hour since we started the Experience
  124.         // Tracker
  125.         xpHr = getExperienceTracker().getGainedXPPerHour(Skill.MINING);
  126.  
  127.         // Getting the time until we reach the next level in this skill
  128.         timenextLvl = getExperienceTracker().getTimeToLevel(Skill.MINING);
  129.  
  130.         g.drawString("Elapsed Time: " + formatTime(runTime), 20, 220);
  131.         g.drawString("Time to next lvl: " + formattimetoLvl(timenextLvl), 20, 235);
  132.         g.drawString("XP so far: " + (xp), 20, 250);
  133.         g.drawString("lvls gained: " + (lvlsGained), 20, 265);
  134.         g.drawString("XP per hour: " + (xpHr), 20, 280);
  135.     }
  136.  
  137. }
Advertisement
Add Comment
Please, Sign In to add comment
Advertisement