Guest User

Untitled

a guest
Jun 22nd, 2018
75
0
Never
Not a member of Pastebin yet? Sign Up, it unlocks many cool features!
text 17.44 KB | None | 0 0
  1. package com.scripts;
  2.  
  3. import com.kbot2.handlers.eventSystem.eventListeners.PaintListener;
  4. import com.kbot2.handlers.eventSystem.eventListeners.ServerMessageListener;
  5. import com.kbot2.scriptable.Script;
  6. import com.kbot2.scriptable.methods.wrappers.*;
  7. import com.kbot2.scriptable.methods.data.Skills;
  8. import com.kbot2.scriptable.methods.data.GameScreen;
  9.  
  10. import java.awt.*;
  11. import javax.swing.*;
  12. import java.awt.event.ActionEvent;
  13. import java.awt.event.ActionListener;
  14.  
  15.  
  16. public class Fishin extends Script implements PaintListener, ActionListener, ServerMessageListener
  17. {
  18. final String[] fishOptions = { "Lobsters", "Shark", "Swordfish", "Big Net Fishing", "Trout/Salmon", "Herring/Sardine", "Shrimp/Anchovies" };
  19. final String[] locsOptions = { "Fishing Guild", "Barbarian", "Shilo Village", "Catherby", "Draynor" };
  20. boolean startYet = false;
  21. int catches;
  22. int startLvl = 1;
  23. int startExp;
  24. int randInt;
  25. int runAt;
  26. int chosFish;
  27. int chosBank;
  28. int chosBanker;
  29. int maxDistance = 6;
  30. int[] tools = {301, 311, 305, 307, 309, 313, 314, 303};
  31. long nextAnti = 0;
  32. long startTime = System.currentTimeMillis();
  33. String action;
  34. String statusMsg = "Starting...";
  35. Tile[] toBank = new Tile[] { new Tile(2594,3414), new Tile(2587,3420) };
  36. Tile[] toFish = new Tile[] { new Tile(2599,3421)};
  37. NPC selFish;
  38. NPC banker;
  39. Obj Bank;
  40. public boolean isBarbarian;
  41. public JFrame startup;
  42. public JComboBox fishList;
  43. public JComboBox locsList;
  44. public JButton start;
  45.  
  46.  
  47. public String getAuthor()
  48. {
  49. return "ToshiXZ";
  50. }
  51.  
  52. public boolean active()
  53. {
  54. return true;
  55. }
  56.  
  57. public String getName()
  58. {
  59. return "Fishin'!";
  60. }
  61.  
  62. public double getVersion()
  63. {
  64. return 0.4;
  65. }
  66.  
  67. public String getScriptCategory()
  68. {
  69. return "Fishing";
  70. }
  71.  
  72. public String getDescription()
  73. {
  74. return "Welcome to Fishin'! V 0.4! \nThe most stable and sophisticated kBot fishing script ever released.\n " +
  75. "Prepare to be amazed.";
  76. }
  77.  
  78. public boolean onStart()
  79. {
  80. startup = new JFrame("Select your fishin'!");
  81. startup.setLayout(new GridBagLayout());
  82. GridBagConstraints c = new GridBagConstraints();
  83. c.fill = GridBagConstraints.BOTH;
  84. c.anchor = GridBagConstraints.ABOVE_BASELINE_LEADING;
  85. c.gridx = 2;
  86. c.gridy = 2;
  87. c.gridheight = 2;
  88. c.gridwidth = 2;
  89.  
  90. locsList = new JComboBox(locsOptions);
  91. fishList = new JComboBox(fishOptions);
  92. startup.add(fishList, c);
  93. c.gridx = 4;
  94. startup.add(locsList, c);
  95. c.gridx = 6;
  96. start = new JButton("Let's get FISHIN'!");
  97. start.addActionListener(this);
  98. startup.add(start, c);
  99.  
  100. startup.pack();
  101. startup.setResizable(false);
  102. Dimension d = Toolkit.getDefaultToolkit().getScreenSize();
  103. Point p = new Point((int) d.getWidth()/2 - 250, (int) d.getHeight()/2 - 200);
  104. startup.setLocation(p);
  105. startup.setVisible(true);
  106. randInt = random(2000,35000);
  107. log("Let's...");
  108. sleep(300);
  109. log("Start...");
  110. sleep(300);
  111. log("FISHIN'!!!!!");
  112. return true;
  113. }
  114.  
  115. public void actionPerformed(ActionEvent e) {
  116. if(e.getActionCommand().equals("Let's get FISHIN'!"))
  117. {
  118.  
  119. if (fishList.getSelectedItem().equals("Lobsters") && locsList.getSelectedItem().equals("Fishing Guild"))
  120. {
  121. //Set variables
  122. action = "Cage";
  123. chosFish = 312;
  124. chosBank = 2213;
  125. chosBanker = 494;
  126. toBank = new Tile[] { new Tile(2594,3414), new Tile(2587,3420) };
  127. toFish = new Tile[] { new Tile(2599,3421)};
  128. startYet = true;
  129. }
  130. if (fishList.getSelectedItem().equals("Shark") && locsList.getSelectedItem().equals("Fishing Guild"))
  131. {
  132. //Set variables
  133. action = "Harpoon";
  134. chosFish = 313;
  135. chosBank = 2213;
  136. chosBanker = 494;
  137. toBank = new Tile[] { new Tile(2594,3414), new Tile(2587,3420) };
  138. toFish = new Tile[] { new Tile(2599,3421)};
  139. startYet = true;
  140. }
  141. if (fishList.getSelectedItem().equals("Swordfish") && locsList.getSelectedItem().equals("Fishing Guild"))
  142. {
  143. //Set variables
  144. action = "Harpoon";
  145. chosFish = 312;
  146. chosBank = 2213;
  147. toBank = new Tile[] { new Tile(2594,3414), new Tile(2587,3420) };
  148. toFish = new Tile[] { new Tile(2599,3421)};
  149. startYet = true;
  150. }
  151. if (fishList.getSelectedItem().equals("Big Net") && locsList.getSelectedItem().equals("Fishing Guild"))
  152. {
  153. //Set variables
  154. action = "Net";
  155. chosFish = 313;
  156. chosBank = 2213;
  157. chosBanker = 494;
  158. toBank = new Tile[] { new Tile(2594,3414), new Tile(2587,3420) };
  159. toFish = new Tile[] { new Tile(2599,3421)};
  160. startYet = true;
  161. }
  162. if (fishList.getSelectedItem().equals("Trout/Salmon") && locsList.getSelectedItem().equals("Barbarian"))
  163. {
  164. //Set variables
  165. action = "Lure";
  166. isBarbarian = true;
  167. chosFish = 328;
  168. chosBank = 26972;
  169. chosBanker = 5912;
  170. toBank = new Tile[] { new Tile(3109,3432), new Tile(3099,3439), new Tile(3096,3448), new Tile(3098,3458),
  171. new Tile(3099,3470), new Tile(3099,3478), new Tile(3094,3485), new Tile(3094,3492)};
  172. toFish = new Tile[] { new Tile(3094,3492), new Tile(3094,3485), new Tile(3099,3478), new Tile(3099,3470),
  173. new Tile(3098,3458), new Tile(3096,3448), new Tile(3099,3439), new Tile(3109,3432)};
  174. startYet = true;
  175. }
  176. if (fishList.getSelectedItem().equals("Bait Fishing") && locsList.getSelectedItem().equals("Barbarian"))
  177. {
  178. //Set variables
  179. action = "Bait";
  180. isBarbarian = true;
  181. chosFish = 328;
  182. chosBank = 26972;
  183. chosBanker = 5912;
  184. toBank = new Tile[] { new Tile(3109,3432), new Tile(3099,3439), new Tile(3096,3448), new Tile(3098,3458),
  185. new Tile(3099,3470), new Tile(3099,3478), new Tile(3094,3485), new Tile(3094,3492)};
  186. toFish = new Tile[] { new Tile(3094,3492), new Tile(3094,3485), new Tile(3099,3478), new Tile(3099,3470),
  187. new Tile(3098,3458), new Tile(3096,3448), new Tile(3099,3439), new Tile(3109,3432)};
  188. startYet = true;
  189. }
  190. if (fishList.getSelectedItem().equals("Lobsters") && locsList.getSelectedItem().equals("Catherby"))
  191. {
  192. //Set variables
  193. action = "Cage";
  194. chosFish = 321;
  195. chosBank = 2213;
  196. chosBanker = 495;
  197. maxDistance = 10;
  198. toBank = new Tile[] { new Tile(2809,3430), new Tile(2827,3437), new Tile(2816,3437)};
  199. toFish = new Tile[] { new Tile(2816,3437), new Tile(2827,3437), new Tile(2840,3434)};
  200. startYet = true;
  201. }
  202. if (fishList.getSelectedItem().equals("Swordfish") && locsList.getSelectedItem().equals("Catherby"))
  203. {
  204. //Set variables
  205. action = "Harpoon";
  206. chosFish = 321;
  207. chosBank = 2213;
  208. chosBanker = 495;
  209. maxDistance = 10;
  210. toBank = new Tile[] { new Tile(2809,3430), new Tile(2827,3437), new Tile(2816,3437)};
  211. toFish = new Tile[] { new Tile(2816,3437), new Tile(2827,3437), new Tile(2840,3434)};
  212. startYet = true;
  213. }
  214. if (fishList.getSelectedItem().equals("Shark") && locsList.getSelectedItem().equals("Catherby"))
  215. {
  216. //Set variables
  217. action = "Harpoon";
  218. chosFish = 322;
  219. chosBank = 2213;
  220. chosBanker = 495;
  221. maxDistance = 10;
  222. toBank = new Tile[] { new Tile(2809,3430), new Tile(2827,3437), new Tile(2816,3437)};
  223. toFish = new Tile[] { new Tile(2816,3437), new Tile(2827,3437), new Tile(2840,3434)};
  224. startYet = true;
  225. }
  226. if (fishList.getSelectedItem().equals("Shrimp/Anchovies") && locsList.getSelectedItem().equals("Draynor"))
  227. {
  228. //Set variables
  229. action = "Net";
  230. chosFish = 327;
  231. chosBank = 2213;
  232. chosBanker = 495;
  233. toBank = new Tile[] { new Tile(3095,3244)};
  234. toFish = new Tile[] { new Tile(3087,3230)};
  235. startYet = true;
  236. }
  237. if (fishList.getSelectedItem().equals("Herring/Sardine") && locsList.getSelectedItem().equals("Draynor"))
  238. {
  239. //Set variables
  240. action = "Bait";
  241. chosFish = 327;
  242. chosBank = 2213;
  243. chosBanker = 495;
  244. toBank = new Tile[] { new Tile(3095,3244)};
  245. toFish = new Tile[] { new Tile(3087,3230)};
  246. startYet = true;
  247. }
  248.  
  249. startExp = skills.getExperience(Skills.SKILL_FISHING);
  250. startLvl = skills.getLevel(Skills.SKILL_FISHING);
  251.  
  252. startup.setVisible(false);
  253. }
  254. }
  255.  
  256. public void onFinish()
  257. {
  258. log("Goodluck with fishin'!");
  259. }
  260.  
  261. public void onServerMessage(String sM)
  262. {
  263. if (sM.contains("You catch")) {
  264. catches ++;
  265.  
  266. }
  267. }
  268.  
  269. public void onRepaint(Graphics g)
  270. {
  271. if (startYet == true && gameScreen.getCurrentTab() == 3)
  272. {
  273. g.setColor(new Color(0, 0, 0, 100));
  274. int x = 550;
  275. int y = 210;
  276. g.fill3DRect(x, y, 730, 102, true);
  277. x += 5;
  278. y += 15;
  279.  
  280. long millis = System.currentTimeMillis() - startTime;
  281. double thours = (double)millis/(1000*60*60);
  282. long hours = millis / (1000 * 60 * 60);
  283. millis -= hours * (1000 * 60 * 60);
  284. long minutes = millis / (1000 * 60);
  285. millis -= minutes * (1000 * 60);
  286. long seconds = millis / 1000;
  287.  
  288. g.setColor(Color.red);
  289. g.drawString(getName() + " V" + getVersion(), x, y);
  290. g.setColor(Color.green);
  291. y += 15;
  292. g.drawString("Run time: " + (hours < 10 ? "0" : "") + hours + ":" + (minutes < 10 ? "0" : "") + minutes + ":" + (seconds < 10 ? "0" : "") + seconds, x, y);
  293.  
  294. g.setColor(Color.blue);
  295. y += 20;
  296. g.drawString("Status: " + statusMsg, x, y);
  297.  
  298. y += 15;
  299. g.drawString("Caught: " + catches + " " + fishList.getSelectedItem(), x, y);
  300.  
  301. if (catches > 1)
  302. {
  303. g.drawString("Catches to level: " + (catches == 0 ? "" : (skills.getExperienceToNextLevel(Skills.SKILL_FISHING)/((skills.getExperience(Skills.SKILL_FISHING) - startExp)/catches))), x, y + 15);
  304. }
  305.  
  306. g.drawString("Experience gained: " + (skills.getExperience(Skills.SKILL_FISHING) - startExp), x, y + 30);
  307.  
  308. }
  309.  
  310.  
  311. }
  312.  
  313. public boolean isRunning()
  314. {
  315. return botEnv.settings.getSetting(173) == 1;
  316. }
  317.  
  318. public boolean atFish()
  319. {
  320. selFish = npcs.getClosest(20, chosFish);
  321. if (selFish == null)
  322. {
  323. return false;
  324. }
  325. return distanceTo(selFish.getLocation()) <= maxDistance;
  326. }
  327. public boolean atBank()
  328. {
  329. banker = npcs.getClosest(20, chosBanker);
  330. if (banker == null)
  331. {
  332. return false;
  333. }
  334. return distanceTo(banker.getLocation()) <= 6;
  335. }
  336.  
  337. public int loop()
  338. {
  339. while (getMyPlayer().isMoving()) {
  340. sleep(random(200, 500));
  341. }
  342. if (startYet == false)
  343. {
  344. return (random(500,1000));
  345. }
  346. else if (getMyPlayer().getAnimation() != -1 )
  347. {
  348. if (System.currentTimeMillis() >= nextAnti) {
  349. antiBan();
  350. }
  351. return (random(200,500));
  352. }
  353. rMouseSpeed(1, 2);
  354. if (interfaces.getInterface("Collection Box") != null)
  355. {
  356. statusMsg = "Closing Collection Box >.>";
  357. Point p = new Point(426,75);
  358. mouse.clickMouse(p,3,3,true);
  359. return random(200,300);
  360. }
  361. else if (walking.getEnergy() >= runAt && !isRunning()) {
  362. statusMsg = "Setting run";
  363. walking.setRunning(true);
  364. runAt = random(20, 50);
  365. return random(100, 500);
  366. }
  367. else if (bank.isOpen() && inventory.isFull()) {
  368. statusMsg = "Depositing";
  369. bank.depositAllExcept(tools);
  370. sleep(random(200, 300));
  371. return random(200, 300);
  372. }
  373. else if (!inventory.isFull() && !atFish()) { //add distanceTo(Path)
  374. statusMsg = "Walking to fish";
  375. camera.setAltitude(true);
  376. if (isBarbarian) {
  377. walking.walkPath(toFish);
  378. } else {
  379. walking.walkPath(walking.randomizePath(toFish, 2, 2));
  380. }
  381. sleep(random(400,700));
  382. return random(400, 600);
  383. }
  384. else if (inventory.isFull() && !atBank()) {
  385. statusMsg = "Walking to bank";
  386. camera.setAltitude(true);
  387. if (isBarbarian) {
  388. walking.walkPath(toBank);
  389. } else {
  390. walking.walkPath(walking.randomizePath(toBank, 2, 2));
  391. }
  392. sleep(random(300,600));
  393. return random(400, 600);
  394. }
  395. else if (!inventory.isFull() && atFish()) {
  396. statusMsg = "FISHIN'!";
  397. selFish = npcs.getClosest(20, chosFish);
  398. selFish.doAction(action);
  399. sleep(random(500,700));
  400. return random(400, 600);
  401. }
  402. else if (inventory.isFull() && atBank())
  403. {
  404. statusMsg = "Opening bank";
  405. Bank = getClosestObject(20, chosBank);
  406. Bank.doAction("Use-quickly");
  407. sleep(random(300,500));
  408. return (random(500,1000)) ;
  409. }
  410.  
  411.  
  412. return (random(500, 1000));
  413. }
  414.  
  415. public void rMouseSpeed(int firstR, int secondR)
  416. {
  417. firstR *= 1000;
  418. secondR *= 1000;
  419. double newSpeed = random(firstR, secondR);
  420. newSpeed /= 1000;
  421. setMouseSpeed(newSpeed);
  422. }
  423.  
  424. public int antiBan()
  425. {
  426. nextAnti = System.currentTimeMillis() + (650 * random(3, 45) + random(0, 1000));
  427. int randAnti = random(1, 6);
  428. int newAngle = (camera.getAngle() + random(10, 650));
  429. int newAngle1 = (camera.getAngle() - random(10, 650));
  430.  
  431.  
  432. if(randAnti == 1)
  433. {
  434. gameScreen.openTab(GameScreen.TAB_STATS);
  435. mouse.moveMouse(random(663, 710), random(294, 318));
  436. int x = random(1,6);
  437. if (x == 3)
  438. {
  439. camera.setAltitude(false);
  440. } else if (x == 6)
  441. {
  442. camera.setAltitude(true);
  443. }
  444. return random(150, 750);
  445. }
  446.  
  447. if(randAnti == 2)
  448. {
  449. gameScreen.openTab(GameScreen.TAB_INVENTORY);
  450. mouse.moveMouse(random(10, 700), random(10, 700));
  451. int x = random(1,6);
  452. if (x == 3)
  453. {
  454. camera.setAltitude(false);
  455. } else if (x == 6)
  456. {
  457. camera.setAltitude(true);
  458. }
  459. return random(150, 750);
  460. }
  461.  
  462. if(randAnti == 3)
  463. {
  464. gameScreen.openTab(GameScreen.TAB_FRIENDS);
  465. mouse.moveMouse(random(10, 700), random(10, 700));
  466. gameScreen.openTab(GameScreen.TAB_INVENTORY);
  467. int x = random(1,6);
  468. if (x == 3)
  469. {
  470. camera.setAltitude(false);
  471. } else if (x == 6)
  472. {
  473. camera.setAltitude(true);
  474. }
  475. return random(150, 750);
  476. }
  477.  
  478. if(randAnti == 4)
  479. {
  480. mouse.moveMouse(random(10, 700), random(10, 700));
  481. gameScreen.openTab(GameScreen.TAB_INVENTORY);
  482. int x = random(1,6);
  483. if (x == 3)
  484. {
  485. camera.setAltitude(false);
  486. } else if (x == 6)
  487. {
  488. camera.setAltitude(true);
  489. }
  490. return random(150, 750);
  491. }
  492.  
  493. if(randAnti == 5)
  494. {
  495. camera.setAngle(newAngle);
  496. gameScreen.openTab(GameScreen.TAB_INVENTORY);
  497. int x = random(1,6);
  498. if (x == 3)
  499. {
  500. camera.setAltitude(false);
  501. } else if (x == 6)
  502. {
  503. camera.setAltitude(true);
  504. }
  505. return random(150, 750);
  506. }
  507.  
  508. if(randAnti == 6)
  509. {
  510. camera.setAngle(newAngle1);
  511. gameScreen.openTab(GameScreen.TAB_INVENTORY);
  512. int x = random(1,6);
  513. if (x == 3)
  514. {
  515. camera.setAltitude(false);
  516. } else if (x == 6)
  517. {
  518. camera.setAltitude(true);
  519. }
  520. return random(150, 750);
  521. }
  522. return random(150,750);
  523. }
  524.  
  525. }
Add Comment
Please, Sign In to add comment