Advertisement
Not a member of Pastebin yet?
Sign Up,
it unlocks many cool features!
- import java.awt.Color;
- import java.awt.Font;
- import java.awt.Graphics;
- import java.awt.Graphics2D;
- import java.awt.Point;
- import java.awt.RenderingHints;
- import java.awt.event.KeyEvent;
- import java.util.Map;
- import java.util.List;
- import java.util.logging.Level;
- import org.rsbot.bot.Bot;
- import org.rsbot.event.events.ServerMessageEvent;
- import org.rsbot.event.listeners.PaintListener;
- import org.rsbot.event.listeners.ServerMessageListener;
- import org.rsbot.script.Script;
- import org.rsbot.script.ScriptManifest;
- import org.rsbot.script.wrappers.RSItemTile;
- import org.rsbot.script.wrappers.RSInterface;
- import org.rsbot.script.wrappers.RSNPC;
- import org.rsbot.script.wrappers.RSPlayer;
- import org.rsbot.script.wrappers.RSTile;
- import org.rsbot.script.wrappers.RSInterfaceComponent;
- import org.rsbot.script.wrappers.RSObject;
- @ScriptManifest(authors = { "Botter118" }, category = "Combat", name = "PlainSailing", version = 0.01, description = "<h3>" + "PlainSailing V0.01</h3>"
- + "<br>"
- + "<br>Is it worth the time?")
- public class PlainSailing extends Script implements PaintListener, ServerMessageListener {
- public long startTime;
- public int AttackStart;
- public int Strength; //To see what training step we're on :)
- public int Attack; //Ditto
- public int StrengthStart; //Levels Gained
- public int DefenceStart; //^^
- public int MagicStart; //^^
- public int RangeStart; //^^
- public int PrayerStart; //^^
- public int ConstitutionStart; //^^
- public int CBGained; //Combat levels gained
- public int dieCount; //times died :'(
- public int TotalCount; //total levels gained
- public RSNPC target;
- public String Target;
- public String finishString;
- public int pickup1 = 314;
- public int pickup2 = 0;
- public String status = "Starting Up...";
- public String abanStatus = "Loading Antiban";
- public boolean GainedLevel = true;
- public RSTile TargetTile1 = new RSTile(3238,3295);
- public RSTile TargetTile2 = new RSTile(3231,3296);
- public int EatHP = 55;
- public int FoodID = 333;
- public boolean FirstRun;
- public boolean NeedToBank = false;
- public int DoorID = 45208;
- public RSObject theDoor;
- public boolean WalkToChickens = false;
- public boolean WalkToCows = false;
- public boolean NeedToFight = true;
- public RSTile pickupTile1;
- public RSTile pickupTile2;
- public String pickup1string;
- public String pickup2string;
- public boolean NEEDTOCHECKGATE = false;
- public int mouseSpeed = random(5,7);
- public int[] stats = { STAT_ATTACK, STAT_STRENGTH, STAT_HITPOINTS, STAT_RANGE, STAT_PRAYER, STAT_MAGIC};
- public int randomSkill(int min, int max) {
- return min + (int) (java.lang.Math.random() * (max - min));
- }
- public String getAuthor() {
- return "Botter118";
- }
- public String getName() {
- return "PlainSailing";
- }
- public String getScriptCategory() {
- return "Combat";
- }
- public double getVersion() {
- return 0.01;
- }
- private final RenderingHints rh = new RenderingHints(
- RenderingHints.KEY_TEXT_ANTIALIASING,
- RenderingHints.VALUE_TEXT_ANTIALIAS_ON);
- public void CheckSpot() {
- openTab(TAB_STATS);
- wait(random(450,950));
- if(random(1,10) == 1) {
- openTab(TAB_INVENTORY);
- }else if(random(1,10) == 1) {
- sendText("Woot! Level :>", true);
- openTab(TAB_INVENTORY);
- }else if(random(1,10) == 1) {
- openTab(TAB_INVENTORY);
- sendText("woot", true);
- }else if(random(1,10) == 1) {
- sendText("that's another..", true);
- openTab(TAB_INVENTORY);
- }else if(random(1,10) == 1) {
- sendText("Here we go again :L", true);
- openTab(TAB_INVENTORY);
- }else if(random(1,10) == 1) {
- openTab(TAB_INVENTORY);
- sendText("Luls", true);
- }else{
- openTab(TAB_INVENTORY);
- }
- Attack = skills.getCurrentSkillLevel(STAT_ATTACK);
- Strength = skills.getCurrentSkillLevel(STAT_STRENGTH);
- if (Attack < 10) {
- Target = "Chicken";
- TargetTile1 = new RSTile(3238,3295);
- TargetTile2 = new RSTile(3231,3296);
- DoorID = 45208;
- pickup1 = 314;
- pickup1string = "Feather";
- pickup2 = 526;
- pickup2string = "Bone";
- finishString = "20 Attack and 20 Strength";
- int FightMode = getFightMode();
- if(FightMode != 0) {
- status = "Changing Mellee Style to Attack";
- setFightMode(0);
- }
- GainedLevel = false;
- }else{
- if (Strength < 10) {
- Target = "Chicken";
- TargetTile1 = new RSTile(3238,3295);
- TargetTile2 = new RSTile(3231,3296);
- DoorID = 45208;
- pickup1 = 314;
- pickup1string = "Feather";
- pickup2 = 526;
- pickup2string = "Bone";
- finishString = "20 Attack and 20 Strength";
- int FightMode = getFightMode();
- if(FightMode != 1) {
- status = "Changing Mellee Style to Attack";
- setFightMode(1);
- }
- GainedLevel = false;
- }else{
- if (Attack < 20) {
- Target = "Chicken";
- TargetTile1 = new RSTile(3238,3295);
- TargetTile2 = new RSTile(3231,3296);
- DoorID = 45208;
- pickup1 = 314;
- pickup1string = "Feather";
- pickup2 = 526;
- pickup2string = "Bone";
- finishString = "20 Attack and 20 Strength";
- int FightMode = getFightMode();
- if(FightMode != 0) {
- status = "Changing Mellee Style to Attack";
- setFightMode(0);
- }
- GainedLevel = false;
- }else{
- if (Strength < 20) {
- Target = "Chicken";
- TargetTile1 = new RSTile(3238,3295);
- TargetTile2 = new RSTile(3231,3296);
- setFightMode(1);
- DoorID = 45208;
- pickup1 = 314;
- pickup1string = "Feather";
- pickup2 = 526;
- pickup2string = "Bone";
- finishString = "20 Attack and 20 Strength";
- int FightMode = getFightMode();
- if(FightMode != 1) {
- status = "Changing Mellee Style to Attack";
- setFightMode(1);
- }
- GainedLevel = false;
- }else{
- if (Attack < 40) {
- Target = "Cow";
- TargetTile1 = new RSTile(3238,3295);
- TargetTile2 = new RSTile(3257,3283);
- DoorID = 45210;
- pickup2 = 526;
- pickup2string = "Bone";
- finishString = "40 Attack and 40 Strength";
- int FightMode = getFightMode();
- if(FightMode != 0) {
- status = "Changing Mellee Style to Attack";
- setFightMode(0);
- }
- GainedLevel = false;
- }else{
- if (Strength < 40) {
- Target = "Cow";
- TargetTile1 = new RSTile(3238,3295);
- TargetTile2 = new RSTile(3257,3283);
- DoorID = 45210;
- pickup2 = 526;
- pickup2string = "Bone";
- finishString = "40 Attack and 40 Strength";
- int FightMode = getFightMode();
- if(FightMode != 1) {
- status = "Changing Mellee Style to Attack";
- setFightMode(1);
- }
- GainedLevel = false;
- }else{
- stopScript();
- }
- }
- }
- }
- }
- }
- }
- protected int getMouseSpeed() {
- return mouseSpeed;
- }
- public void BankNOFOOD() {
- }
- public void Bank() {
- }
- public void Eat() {
- if ((getInventoryCount(FoodID) != 0)) {
- atInventoryItem(FoodID, "Eat");
- }
- if (waitForAnim(829) != -1) {
- while (getMyPlayer().getAnimation() != -1) {
- wait(random(300, 600));
- }
- }else{
- if ((getInventoryCount(FoodID) == 0) && isLoggedIn()) {
- log("No Food, banking");
- NeedToBank = true;
- }
- }
- }
- public void WalkToBank() {
- status = "Walking to bank...";
- }
- public void Welcome() {
- status = "Welcome to PlainSailing!";
- log("Thanks for using PlainSailing");
- log("~Botter118");
- }
- public void Antiban() {
- abanStatus = "Antiban Initialised!";
- wait(random(300,600));
- if(random(1,10) == 1){
- abanStatus = "Moving the mouse a little";
- moveMouseSlightly();
- abanStatus = "Antiban Finished";
- return;
- }
- if(random(1,10) == 1){
- abanStatus = "Moving the Camera";
- setCameraRotation(random(1,359));
- abanStatus = "Antiban Finished";
- return;
- }
- if(random(1,9) == 1) {
- abanStatus = "Moving the Mouse a Lot";
- moveMouse(random(7, 12), random(50, 500), random(100,500), 30);
- abanStatus = "Antiban Finished";
- return;
- }
- if(random(1,8) == 1) {
- Point mousePosition;
- if(getMyPlayer().isInCombat()){
- mousePosition = getMouseLocation();
- RSPlayer player = getNearestPlayerByLevel(3, 138);
- if (player != null && distanceTo(player) != 0) {
- abanStatus = "Right-clicking on Some Noob...";
- moveMouse(player.getScreenLocation(), 5, 5);
- wait(random(300, 700));
- clickMouse(false);
- wait(random(750, 1000));
- moveMouse(mousePosition, 15, 15);
- }
- abanStatus = "Antiban Finished";
- return;
- }
- }
- mouseSpeed = (random(5,13));
- if(random(1,30) > 26) {
- if(getCurrentTab() != TAB_STATS) {
- abanStatus = "Opening Stats Tab";
- wait(random(200,300));
- moveMouseSlightly();
- wait(random(220,330));
- openTab(TAB_STATS);
- abanStatus = "Hovering Skills";
- wait(random(500,2000));
- }
- if(random(1,3) == 1) {
- abanStatus = "Opening Inventory Tab";
- openTab(TAB_INVENTORY);
- abanStatus = "Antiban Finished";
- return;
- }
- }
- abanStatus = "Antiban Finished";
- return;
- }
- public int loop() {
- if(FirstRun == true) {
- Welcome();
- FirstRun = false;
- }
- if(GainedLevel == true) {
- CheckSpot();
- }
- if(getMyPlayer().getHPPercent() <= EatHP) {
- status = "Eating";
- Eat();
- if(NeedToBank = true) {
- WalkToBank();
- wait(random(300,600));
- Bank();
- }
- return random (500,700);
- }
- if(random(1,10) < 6) {
- getMouseSpeed();
- }
- while(getMyPlayer().isMoving()) {
- return random (20,30);
- }
- while(getMyPlayer().getAnimation() == 12309) {
- status = "Fighting";
- NeedToFight = false;
- return random (20,30);
- }
- while(getMyPlayer().getAnimation() == 395) {
- status = "Fighting";
- if(random(1,10) == 1) {
- Antiban();
- }
- NeedToFight = false;
- return random (20,30);
- }
- if(!getMyPlayer().isInCombat()) {
- NeedToFight = true;
- }
- if(isInventoryFull()) {
- if(getCurrentTab() != TAB_INVENTORY) {
- openTab(TAB_INVENTORY);
- }
- if(skills.getCurrentSkillLevel(STAT_PRAYER) < 31) {
- while(getInventoryCount(pickup2) != 0) {
- status = "Burying Bones";
- if(random(1,2) == 1) {
- moveMouseSlightly();
- }
- atInventoryItem(pickup2, "Bury");
- wait(random(750,900));
- }
- }
- if(isInventoryFull() && (Target == "Chicken")) {
- WalkToBank();
- wait(random(300,600));
- BankNOFOOD();
- return random(500,700);
- }
- if(isInventoryFull() && (Target == "Cow")) {
- WalkToBank();
- wait(random(300,600));
- BankNOFOOD();
- return random(500,700);
- }else{
- WalkToBank();
- wait(random(300,600));
- Bank();
- return random(500,600);
- }
- }
- if (getMyPlayer().getInteracting() == null && (!getMyPlayer().isInCombat() && (distanceTo(TargetTile2) < 8 && NEEDTOCHECKGATE == false && random(1,10) == 1))) {
- if(random(1,10) <= 7) {
- pickupTile1 = getGroundItemByID(pickup1);
- if(pickupTile1 != null) {
- status = "Picking up " + pickup1string + "s";
- atTile(pickupTile1, "Take " + pickup1string);
- wait(random(1000,3000));
- }
- pickupTile2 = getGroundItemByID(pickup2);
- if(pickupTile2 != null) {
- status = "Picking up " + pickup2string + "s";
- atTile(pickupTile2, "Take " + pickup2string);
- return random(1000,3000);
- }
- }else if(random(1,10) <= 2) {
- pickupTile2 = getGroundItemByID(pickup2);
- if(pickupTile2 != null) {
- status = "Picking up " + pickup2string + "s";
- atTile(pickupTile2, "Take " + pickup2string);
- return random(1000,3000);
- }
- pickupTile1 = getGroundItemByID(pickup1);
- if(pickupTile1 != null) {
- status = "Picking up " + pickup1string + "s";
- atTile(pickupTile1, "Take " + pickup1string);
- wait(random(1000,3000));
- }
- }else if(random(1,10) <= 2) {
- pickupTile1 = getGroundItemByID(pickup1);
- if(pickupTile1 != null) {
- status = "Picking up " + pickup1string + "s";
- atTile(pickupTile1, "Take " + pickup1string);
- wait(random(1000,3000));
- }
- Antiban();
- }else if(random(1,10) <= 2) {
- if(pickupTile2 != null) {
- status = "Picking up " + pickup2string + "s";
- atTile(pickupTile2, "Take " + pickup2string);
- return random(1000,3000);
- }
- Antiban();
- }else{
- if(pickupTile1 != null) {
- status = "Picking up " + pickup1string + "s";
- atTile(pickupTile1, "Take " + pickup1string);
- wait(random(1000,3000));
- }
- wait(random(600,1200));
- if(pickupTile2 != null) {
- status = "Picking up " + pickup2string + "s";
- atTile(pickupTile2, "Take " + pickup2string);
- return random(1000,3000);
- }
- return random(100,200);
- }
- }
- if (NEEDTOCHECKGATE == true && distanceTo(TargetTile2) > 6){
- try {
- status = "Walking to " + Target + "s";
- walkTo(TargetTile1);
- status = "Checking for the Gate...";
- RSObject theDoor = getNearestObjectByID(45208);
- if(theDoor == null) {
- status = "Gate is open, moving to the Chickens";
- NEEDTOCHECKGATE = false;
- }else{
- if(distanceTo(TargetTile1) < 4) {
- status = "Detected Gate, Attempting to open...";
- atObject(theDoor, "Open");
- status = "Gate is Open, waiting...";
- wait(random(800,1400));
- status = "Heading through the gate";
- walkTo(randomizeTile(TargetTile2,1,1));
- wait(random(600,800));
- if(distanceTo(TargetTile2) < 5) {
- WalkToChickens = false;
- NeedToFight = true;
- NEEDTOCHECKGATE = false;
- status = "About to attack chickens";
- return random(100,500);
- }else{
- return random(100,500);
- }
- }else{
- return random(100,500);
- }
- }
- } catch (final Exception ignored) {
- }
- }
- if(Target == "Chicken") {
- if(distanceTo(TargetTile2) > 8) {
- WalkToChickens = true;
- status = "Walking to Chickens";
- walkTo(randomizeTile(TargetTile1,1,1));
- moveMouseSlightly();
- NEEDTOCHECKGATE = true;
- }
- if(NeedToFight == true) {
- status = "Looking for " + Target + "s";
- RSNPC target = getNearestFreeNPCToAttackByName(Target);
- if(target == null) {
- return random (50,100);
- }
- if(!getMyPlayer().isInCombat()) {
- status = "Attacking a " + Target;
- if(random(1,3) == 1) {
- Point ChickenLocation = target.getScreenLocation();
- moveMouse(ChickenLocation);
- wait(random(100,200));
- atNPC(target, "Attack");
- }else{
- atNPC(target, "Attack");
- }
- wait(random(600,800));
- if(getMyPlayer().isInCombat()) {
- NeedToFight = false;
- return random(600,1200);
- }else{
- wait(random(600,800));
- if(getMyPlayer().isInCombat()) {
- NeedToFight = false;
- return random(600,1200);
- }else{
- atNPC(target, "Attack");
- return random(100,200);
- }
- }
- }
- if(getMyPlayer().isInCombat()) {
- NeedToFight = false;
- return random (150,500);
- }else{
- return random (150,500);
- }
- }
- return random(500,600);
- }
- if(Target == "Cow") {
- if(distanceTo(TargetTile2) > 35) {
- WalkToCows = true;
- status = "Walking to Cows";
- walkTo(randomizeTile(TargetTile1,1,1));
- moveMouseSlightly();
- NEEDTOCHECKGATE = true;
- }
- if(NeedToFight == true) {
- status = "Looking for " + Target + "s";
- RSNPC target = getNearestFreeNPCToAttackByName(Target);
- if(target == null) {
- return random (50,100);
- }
- if(!getMyPlayer().isInCombat()) {
- status = "Attacking a " + Target;
- atNPC(target, "Attack");
- wait(random(600,800));
- if(getMyPlayer().isInCombat()) {
- NeedToFight = false;
- return random(600,1200);
- }else{
- return random(100,200);
- }
- }
- if(getMyPlayer().isInCombat()) {
- NeedToFight = false;
- return random (150,500);
- }else{
- return random (150,500);
- }
- }
- return random(500,600);
- }
- return random (200,300);
- }
- public void onRepaint(Graphics g) {
- try{
- if(isLoggedIn()){
- long millis = System.currentTimeMillis() - startTime;
- long hours = millis / (1000 * 60 * 60);
- millis -= hours * 1000 * 60 * 60;
- long minutes = millis / (1000 * 60);
- millis -= minutes * 1000 * 60;
- long seconds = millis / 1000;
- ((Graphics2D)g).setRenderingHints(rh);
- g.setColor(new Color(102, 102, 255, 145));
- g.fillRoundRect(4, 255, 512, 82, 10, 10);
- g.setColor(new Color(102, 102, 255, 40));
- g.fillRoundRect(4, 303, 512, 36, 10, 10);
- g.setFont(new Font("Inkpen2 Chords", 0, 25));
- g.setColor(new Color(0, 0, 0));
- g.drawString("PlainSailing", 11, 279);
- g.drawString("- The Wonder Pure Maker", 106, 279);
- g.setFont(new Font("Brush Script MT", 0, 16));
- g.setColor(new Color(204, 0, 0));
- g.drawString("Died " + dieCount + " Times", 410, 360);
- g.setFont(new Font("Comic Sans MS", 0, 12));
- g.setColor(new Color(0, 0, 0));
- g.drawString("Attack Level: " + skills.getCurrentSkillLevel(STAT_ATTACK) + " (Gained " + (skills.getCurrentSkillLevel(STAT_ATTACK) - AttackStart) + ")", 11, 297);
- g.drawString("Strength Level: " + skills.getCurrentSkillLevel(STAT_STRENGTH) + " (Gained " + (skills.getCurrentSkillLevel(STAT_STRENGTH) - StrengthStart) + ")", 11, 313);
- g.drawString("Defence Level: " + skills.getCurrentSkillLevel(STAT_DEFENSE) + " (Gained " + (skills.getCurrentSkillLevel(STAT_DEFENSE) - DefenceStart) + ")", 11, 329);
- g.drawString("Prayer Level: " + skills.getCurrentSkillLevel(STAT_PRAYER) + " (Gained " + (skills.getCurrentSkillLevel(STAT_PRAYER) - PrayerStart) + ")", 174, 297);
- g.drawString("Magic Level: " + skills.getCurrentSkillLevel(STAT_MAGIC) + " (Gained " + (skills.getCurrentSkillLevel(STAT_MAGIC) - MagicStart) + ")", 174, 313);
- g.drawString("Range Level: " + skills.getCurrentSkillLevel(STAT_RANGE) + " (Gained " + (skills.getCurrentSkillLevel(STAT_RANGE) - DefenceStart) + ")", 174, 329);
- g.drawString("Constitution Level: " + skills.getCurrentSkillLevel(STAT_HITPOINTS) + " (Gained " + (skills.getCurrentSkillLevel(STAT_HITPOINTS) - ConstitutionStart) + ")", 332, 297);
- g.setFont(new Font("Marker Felt", 0, 18));
- g.setColor(new Color(255, 255, 255));
- g.drawString("Total Levels Gained: " + TotalCount, 5, 40);
- g.drawString("Combat Levels Gained: " + CBGained, 5, 65);
- g.setColor(new Color(0, 0, 0));
- g.setFont(new Font("Brush Script MT", 0, 18));
- g.drawString("Run Time: " + hours + ":" + minutes + ":" + seconds, 315, 279);
- g.drawString("'It's worth a try'", 332, 320);
- g.drawString("~Botter118", 444, 333);
- g.setColor(new Color(255, 255, 255));
- g.drawString("Antiban Status: " + abanStatus, 7, 206);
- g.drawString("Training on " + Target + "s until " + finishString, 7, 228);
- g.drawString("Status: " + status, 7, 250);
- }
- }catch(java.lang.Throwable t){
- t.printStackTrace();
- log.severe("Paint FAILED!");
- }
- }
- public void onFinish() {
- }
- public boolean onStart(final Map<String, String> args) {
- startTime = System.currentTimeMillis();
- RangeStart = skills.getCurrentSkillLevel(STAT_RANGE);
- AttackStart = skills.getCurrentSkillLevel(STAT_ATTACK);
- StrengthStart = skills.getCurrentSkillLevel(STAT_STRENGTH);
- DefenceStart = skills.getCurrentSkillLevel(STAT_DEFENSE);
- MagicStart = skills.getCurrentSkillLevel(STAT_MAGIC);
- ConstitutionStart = skills.getCurrentSkillLevel(STAT_HITPOINTS);
- PrayerStart = skills.getCurrentSkillLevel(STAT_PRAYER);
- FirstRun = true;
- NeedToFight = true;
- return true;
- }
- public void serverMessageRecieved(ServerMessageEvent e) {
- String message = e.getMessage();
- if(message.contains("Oh dear")){
- dieCount++;
- }else if(message.contains("You've just advanced a")){
- TotalCount++;
- GainedLevel = true;
- }else if(message.contains("Combat")){
- CBGained++;
- }
- }
- }
Advertisement
Add Comment
Please, Sign In to add comment
Advertisement