Vertix.io Aimbot

Aim at the closest player by pressing Shift.

  1. "use strict";
  2.  
  3. // ==UserScript==
  4. // @name Vertix.io Aimbot
  5. // @description Aim at the closest player by pressing Shift.
  6. // @match http://vertix.io
  7. // @match http://www.vertix.io
  8. // @version 1.0
  9. //
  10. // @namespace https://greasyfork.org/users/119655
  11. // ==/UserScript==
  12.  
  13. var active = false;
  14. var interval = void 0;
  15.  
  16. function activate(event) {
  17. event.preventDefault();
  18. if (event.keyCode === 16 && !active) {
  19. c.removeEventListener("mousemove", gameInput, false);
  20. active = true;
  21. interval = setInterval(aimClosestPlayer, 10);
  22. }
  23. }
  24.  
  25. function deactivate(event) {
  26. event.preventDefault();
  27. if (event.keyCode === 16) {
  28. active = false;
  29. clearInterval(interval);
  30. c.addEventListener("mousemove", gameInput, false);
  31. }
  32. }
  33.  
  34. c.addEventListener("keydown", activate, false);
  35. c.addEventListener("keyup", deactivate, false);
  36.  
  37. function getOtherPlayers(gameObjects, myTeam) {
  38. return gameObjects.filter(function (o) {
  39. return o.type === 'player' && o.dead === false && o.name !== player.name && o.team !== myTeam;
  40. });
  41. }
  42.  
  43. function getMyPlayer(gameObjects) {
  44. return gameObjects.filter(function (o) {
  45. return o.name === player.name;
  46. })[0];
  47. }
  48.  
  49. function distance(x1, y1, x2, y2) {
  50. return Math.sqrt(Math.pow(x2 - x1, 2) + Math.pow(y2 - y1, 2));
  51. }
  52.  
  53. function getClosestPlayer(gameObjects) {
  54. var myTeam = getMyPlayer(gameObjects).team;
  55. var otherPlayers = getOtherPlayers(gameObjects, myTeam);
  56. var closestDistance = Infinity;
  57. var closestPlayer = void 0;
  58. otherPlayers.forEach(function (p) {
  59. var d = distance(player.x, player.y, p.x, p.y);
  60. if (d < closestDistance) {
  61. closestPlayer = p;
  62. closestDistance = d;
  63. }
  64. });
  65. return closestPlayer;
  66. }
  67.  
  68. function getAngle(x1, y1, x2, y2) {
  69. return Math.atan2(y1 - y2, x1 - x2);
  70. }
  71.  
  72. function setTarget(angle, distance) {
  73. target.f = angle;
  74. target.d = distance;
  75. }
  76.  
  77. function aimClosestPlayer() {
  78. var closestPlayer = getClosestPlayer(gameObjects);
  79. if (!closestPlayer) {
  80. return;
  81. }
  82. var angle = getAngle(player.x, player.y, closestPlayer.x, closestPlayer.y);
  83. var distance = 100;
  84. setTarget(angle, distance);
  85. targetChanged = true;
  86. }