Advertisement
Not a member of Pastebin yet?
Sign Up,
it unlocks many cool features!
- import org.osbot.script.MethodProvider;
- import org.osbot.script.Script;
- import org.osbot.script.rs2.map.Position;
- import org.osbot.script.rs2.model.Entity;
- import org.osbot.script.rs2.model.Player;
- import org.osbot.script.rs2.model.RS2Object;
- import org.osbot.script.rs2.utility.Area;
- public class FroobsCowKiller extends Script{
- private final Area BANK_AREA = (new Area(3099, 3500, 3090, 3487));
- private final Area Cow_Area = (new Area(3253 , 3255 ,3264 , 3297) );
- final String BANKBOOTH = "Bankbooth";
- private int[][] path1 = new int[][] { {3245 , 3273 },{3240 , 3288},{3239 , 3304},{3247 , 3315},{3258 , 3325},{3270 , 3332},{3279 , 3323},{3277 , 3308},{3274 , 3290},{3274 , 3273},{3276 , 3257},{3278 , 3241},{3278 , 3225},{3278 , 3207},{3280 , 3192},{3277 , 3174},{3269 , 3168}};
- private int[][] path2 = new int[][] { { 3091, 3491 }, { 3088, 3484 },
- { 3093, 3475 }, { 3096, 3468 } };
- public void onstart(){
- }
- public void onexit(){
- }
- public int onloop() throws InterruptedException{
- Entity cow = closestAttackableNPCForName("Cow");
- Player player = client.getMyPlayer();
- Entity cowhide = closestGroundItem(1739);
- if (client.getInventory().isFull()) {
- walkToBank();
- } else {
- walkToCows();
- }
- if(player.isInArea(Cow_Area)){
- cow.interact("Attack");
- }
- if (player.isInArea(BANK_AREA) && client.getInventory().isFull()) {
- bankDeposit();
- }
- if(closestGroundItem(1739) != null){
- cowhide.interact("Take");
- }
- return 50;
- }
- public void onpaint(){
- }
- public void walkToBank() {
- WalkAlongPath(path1, true);
- }
- public void walkToCows() {
- WalkAlongPath(path2, true);
- }
- public boolean WalkAlongPath(int[][] path, boolean AscendThroughPath,
- int distanceFromEnd) {
- if (distanceToPoint(AscendThroughPath ? path[path.length - 1][0]
- : path[0][0], AscendThroughPath ? path[path.length - 1][1]
- : path[0][1]) <= distanceFromEnd)
- return true;
- else {
- WalkAlongPath(path, AscendThroughPath);
- return false;
- }
- }
- public void WalkAlongPath(int[][] path, boolean AscendThroughPath) {
- int destination = 0;
- for (int i = 0; i < path.length; i++)
- if (distanceToPoint(path[i][0], path[i][1]) < distanceToPoint(
- path[destination][0], path[destination][1]))
- destination = i;
- if (client.getMyPlayer().isMoving()
- && distanceToPoint(path[destination][0], path[destination][1]) > (isRunning() ? 3
- : 2))
- return;
- if (AscendThroughPath && destination != path.length - 1
- || !AscendThroughPath && destination != 0)
- destination += (AscendThroughPath ? 1 : -1);
- try {
- walk(new Position(path[destination][0], path[destination][1], 0));
- Thread.sleep(700 + MethodProvider.random(600));
- } catch (InterruptedException e) {
- e.printStackTrace();
- }
- }
- private int distanceToPoint(int pointX, int pointY) {
- return (int) Math.sqrt(Math
- .pow(client.getMyPlayer().getX() - pointX, 2)
- + Math.pow(client.getMyPlayer().getY() - pointY, 2));
- }
- public void bankDeposit() throws InterruptedException {
- RS2Object booth = closestObjectForName(new String[] { "Bank booth" });
- if ((booth != null) && (booth.interact("Bank"))) {
- booth.interact("Bank");
- sleep(2500);
- }
- while (this.client.getMyPlayer().isMoving()) {
- sleep(1500);
- }
- if (this.client.getBank().isOpen()) {
- this.client.getBank().depositAll();
- sleep(1000);
- }
- if (this.client.getInventory().isEmpty()) {
- this.client.getBank().close();
- }
- }
- }
Advertisement
Add Comment
Please, Sign In to add comment
Advertisement