Advertisement
phl0w

Untitled

Jun 13th, 2012
46
0
Never
Not a member of Pastebin yet? Sign Up, it unlocks many cool features!
text 2.63 KB | None | 0 0
  1. import org.powerbot.concurrent.Task;
  2. import org.powerbot.concurrent.strategy.Strategy;
  3. import org.powerbot.game.api.ActiveScript;
  4. import org.powerbot.game.api.Manifest;
  5. import org.powerbot.game.api.methods.Calculations;
  6. import org.powerbot.game.api.methods.Walking;
  7. import org.powerbot.game.api.methods.interactive.Players;
  8. import org.powerbot.game.api.methods.node.SceneEntities;
  9. import org.powerbot.game.api.methods.tab.Inventory;
  10. import org.powerbot.game.api.util.Filter;
  11. import org.powerbot.game.api.util.Time;
  12. import org.powerbot.game.api.wrappers.Tile;
  13. import org.powerbot.game.api.wrappers.node.Item;
  14. import org.powerbot.game.api.wrappers.node.SceneObject;
  15.  
  16. @Manifest(authors = { "lildarkb0y" }, name = "PowerLobster-beta", description = "Powerfishes lobster anywhere", version = 0.1)
  17. public class PowerLobster extends ActiveScript {
  18.  
  19. private final int FISH_ID = 377;
  20. private Tile[] destinationTiles = new Tile[3];
  21.  
  22. @Override
  23. protected void setup() {
  24. provide(new Fish());
  25. provide(new Drop());
  26. provide(new Walk());
  27. destinationTiles[0] = new Tile(2836, 3432, 0);
  28. destinationTiles[1] = new Tile(2844, 3430, 0);
  29. destinationTiles[2] = new Tile(2854, 3424, 0);
  30. }
  31.  
  32. private class Fish extends Strategy implements Task {
  33. @Override
  34. public void run() {
  35. SceneObject fishingSpot = SceneEntities
  36. .getNearest(new Filter<SceneObject>() {
  37. public boolean accept(SceneObject entity) {
  38. return entity.getId() == 2759;
  39. }
  40. });
  41.  
  42. if (fishingSpot != null) {
  43. if (fishingSpot.isOnScreen()) {
  44. fishingSpot.interact("Cage");
  45. Time.sleep(1000);
  46. }
  47. }
  48. }
  49.  
  50. @Override
  51. public boolean validate() {
  52. return Inventory.getCount() < 28
  53. && Players.getLocal().getAnimation() == -1;
  54. }
  55. }
  56.  
  57. private class Walk extends Strategy implements Task {
  58. SceneObject fishingSpot = SceneEntities
  59. .getNearest(new Filter<SceneObject>() {
  60. public boolean accept(SceneObject entity) {
  61. return entity.getId() == 377;
  62. }
  63. });
  64.  
  65. @Override
  66. public void run() {
  67. while (!fishingSpot.isOnScreen()) {
  68. Walking.walk(destinationTiles[0]);
  69. Time.sleep(1500);
  70. }
  71. }
  72.  
  73. @Override
  74. public boolean validate() {
  75. return fishingSpot != null
  76. && Calculations.distanceTo(fishingSpot) > 15;
  77. }
  78.  
  79. }
  80.  
  81. private class Drop extends Strategy implements Task {
  82.  
  83. @Override
  84. public void run() {
  85. for (Item i : Inventory.getItems()) {
  86. if (i.getId() == FISH_ID) {
  87. i.getWidgetChild().interact("Drop");
  88. Time.sleep(200, 300);
  89. }
  90. }
  91. }
  92.  
  93. @Override
  94. public boolean validate() {
  95. return Inventory.getCount() == 28;
  96. }
  97.  
  98. }
  99.  
  100. }
Advertisement
Add Comment
Please, Sign In to add comment
Advertisement