I finished my script but when I try to run it, it simply won't run. In eclipse everything looks fine, but I guess there is some problem with the code that I can't understand.
package miner;
import org.osbot.rs07.api.map.Area; import org.osbot.rs07.api.map.Position; import org.osbot.rs07.api.model.Entity; import org.osbot.rs07.api.ui.Skill; import org.osbot.rs07.script.Script; import org.osbot.rs07.script.ScriptManifest;
@ScriptManifest(author = "Mex", info = "mi", logo = "mx", name = "Miner", version = 0)
public class miner extends Script {
Entity iron = objects.closest(7488, 7455); Entity tin = objects.closest(7486, 7485); Entity bankbooth = objects.closest(7409, 7478);
final Area BANK_AREA = new Area(3250, 3423, 3257, 3420); final Area MINING_AREA = new Area(3282, 3371, 3290, 3361); Position player = myPlayer().getPosition();
public void onStart() { log("Script started"); }
private enum State { MINEIRON, BANK, WALKBANK, WALKMINE, MINETIN, WAIT }
private State getState() {
if (MINING_AREA.contains(player) && skills.getStatic(Skill.MINING) >= 15) return State.MINEIRON;
if (MINING_AREA.contains(player) && skills.getStatic(Skill.MINING) < 15) return State.MINETIN;
if (getInventory().isFull()&& !BANK_AREA.contains(player)) return State.WALKBANK;
if (!getInventory().isFull() && !MINING_AREA.contains(player)) return State.WALKMINE;
if (BANK_AREA.contains(player)&& getInventory().isFull()) return State.BANK; return State.WAIT;
}
@@Override public int onLoop() throws InterruptedException { switch (getState()) {
case MINETIN: if (tin != null && !myPlayer().isAnimating() && !myPlayer().isMoving()) { tin.interact("Mine"); sleep(random(300, 600)); } break;
case MINEIRON: if (iron != null && !myPlayer().isAnimating() && !myPlayer().isMoving()) { iron.interact("Mine"); sleep(random(300, 600)); } break; case BANK: if (getBank().isOpen()) { bank.depositAllExcept("Bronze pickaxe", "Iron pickaxe", "Black pickaxe", "Mithril pickaxe", "Adamant pickaxe", "Rune pickaxe"); } else { if (bankbooth != null) { if (bankbooth.isVisible()) { bankbooth.interact("Bank"); sleep(random(1500, 2500)); } } } break; case WALKBANK: walking.walk(BANK_AREA); break; case WALKMINE: walking.walk(MINING_AREA); break; } return 0; }
public void onExit() { log("Thanks for using this script"); }
}