Jump to content

SuperAIOF2PRunecrafter


Recommended Posts

Posted (edited)

INFO && FEATURES

  • Start script almost anywhere
  • Completes "Rune Mysteries" quest if GUI option is selected
  • Runs to selected altar and crafts runes
  • Runs to bank and withdraws more rune essence
  • Automatically withdraws and equips required tiara
  • Logs out when out of essence
  • Does not support any features not listed above

REQUIREMENTS:

  • Rune essence or Pure essence in bank
  • Appropriate tiara equipped, in inventory or in bank
  • Appropriate runecrafting level for selected altar

PAINT:

Spoiler

0fd8c28fd6d75282e9d0034265a8b78c.png

GUI:

Spoiler

0fb60c8769df784131bc5cb5bd485b68.png

DOWNLOAD:

http://www.mediafire.com/file/b50yxvbd79y2abd/SuperAIOF2PRunecrafter.jar

SOURCE:

https://github.com/superuserOSBot/OSBot

UPDATE LOG:

Spoiler

1.00 - initial release

1.01 - added ability to automatically use "Pure essence" when no more "Rune essence" is available

 

Edited by superuser
  • Like 2
Posted

for anyone who wants to see the code
 

Quote

package core;

import customized.Paint;
import java.awt.EventQueue;
import java.awt.Graphics2D;
import javax.swing.JCheckBox;
import javax.swing.JComboBox;
import org.osbot.rs07.api.Quests;
import org.osbot.rs07.api.Quests.Quest;
import org.osbot.rs07.script.Script;
import org.osbot.rs07.script.ScriptManifest;
import tasks.AirRunes;
import tasks.BodyRunes;
import tasks.FireRunes;
import tasks.MindRunes;
import tasks.RuneMysteries;
import tasks.WaterRunes;

@ScriptManifest(author="superuser", info="Makes all free to play runes. Has option to also complete Rune Mysteries", name="SuperAIOF2PRunecrafter", version=1.0D, logo="http://i63.tinypic.com/2kizk1.png")
public class Main extends Script
{
  public GUI GUIwindow;
  boolean GUI_INITIALIZED = false;
  
  public static boolean runeMysteries = false;
  public static boolean airRunes = false;
  public static boolean mindRunes = false;
  public static boolean waterRunes = false;
  public static boolean earthRunes = false;
  public static boolean fireRunes = false;
  public static boolean bodyRunes = false;
  public Main() {}
  
  public static enum State { BODY_RUNES,  FIRE_RUNES,  EARTH_RUNES,  WATER_RUNES,  MIND_RUNES,  AIR_RUNES,  RUNE_MYSTERIES,  WAIT;
  }
  
  public State getState() throws InterruptedException {
    if ((runeMysteries) && (!getQuests().isComplete(Quests.Quest.RUNE_MYSTERIES))) {
      return State.RUNE_MYSTERIES;
    }
    if (airRunes) {
      return State.AIR_RUNES;
    }
    if (mindRunes) {
      return State.MIND_RUNES;
    }
    if (waterRunes) {
      return State.WATER_RUNES;
    }
    if (earthRunes) {
      return State.EARTH_RUNES;
    }
    if (fireRunes) {
      return State.FIRE_RUNES;
    }
    if (bodyRunes) {
      return State.BODY_RUNES;
    }
    return State.WAIT;
  }
  
  public int onLoop() throws InterruptedException {
    switch (getState())
    {
    case AIR_RUNES: 
      BodyRunes.doTask(this);
      break;
    case BODY_RUNES: 
      FireRunes.doTask(this);
      break;
    case EARTH_RUNES: 
      tasks.EarthRunes.doTask(this);
      break;
    case FIRE_RUNES: 
      WaterRunes.doTask(this);
      break;
    case MIND_RUNES: 
      MindRunes.doTask(this);
      break;
    case RUNE_MYSTERIES: 
      AirRunes.doTask(this);
      break;
    case WAIT: 
      RuneMysteries.doTask(this);
      break;
    case WATER_RUNES: 
      Script.sleep(1000L);
      break;
    default: 
      Script.sleep(1000L);
    }
    
    return 73;
  }
  
  public void onPaint(Graphics2D g2d) {
    Paint.drawScriptName(this, g2d);
    Paint.drawMain(this, g2d);
    Paint.drawExperienceTrackers(this, g2d);
  }
  
  public void onStart() throws InterruptedException {
    log("Starting GUI...");
    EventQueue.invokeLater(new Runnable()
    {
      public void run()
      {
        GUIwindow = new GUI();
        GUI_INITIALIZED = true;
        GUIwindow.setVisible(true);
        
        log("GUI started");
        log("Waiting for GUI to be compelted...");
      }
    });
    while ((!GUI_INITIALIZED) || (GUIwindow.isVisible())) {
      sleep(200L);
    }
    log("GUI finished");
    
    if (GUI.chckbxRuneMysteries.isSelected()) {
      log("Complete Rune Mysteries");
      runeMysteries = true;
    }
    
    String selectedItem = (String)GUI.cbxTasks.getSelectedItem();
    String str1; switch ((str1 = selectedItem).hashCode()) {case 65834:  if (str1.equals("Air")) break; break; case 2076098:  if (str1.equals("Body")) {} break; case 2189910:  if (str1.equals("Fire")) {} break; case 2398322:  if (str1.equals("Mind")) {} break; case 66725930:  if (str1.equals("Earth")) {} break; case 83350775:  if (!str1.equals("Water")) {
        break label294;
        log("Air Altar");
        airRunes = true;
        return;
        
        log("Mind Altar");
        mindRunes = true;
        return;
      } else {
        log("Water Altar");
        waterRunes = true;
        return;
        
        log("Earth Altar");
        earthRunes = true;
        return;
        
        log("Fire Altar");
        fireRunes = true;
        return;
        
        log("Body Altar");
        bodyRunes = true; }
      break; }
    label294:
    log("No Altar Selected");
    stop();
  }
  
  public void onExit() {}
}

 

Posted (edited)
On 10/09/2017 at 3:38 AM, kazemaru said:

this guy xD

you gotta learn alot kid

No need to offend the guy, he's contributing to OSBot. It's pretty jerky posting the source yourself.  Maybe you're the kid who has "alot" to learn

14 hours ago, psychotisis said:

Forgive me, but has anyone actually downloaded this? Clean link? always wary of such things.

It's clean

 

Gz on your release btw.

Edited by Zappster
  • Like 5

Create an account or sign in to comment

You need to be a member in order to leave a comment

Create an account

Sign up for a new account in our community. It's easy!

Register a new account

Sign in

Already have an account? Sign in here.

Sign In Now
  • Recently Browsing   0 members

    • No registered users viewing this page.
×
×
  • Create New...