Skip to content

Instantly share code, notes, and snippets.

@rawsh
Created August 28, 2018 17:45
Show Gist options
  • Star 0 You must be signed in to star a gist
  • Fork 0 You must be signed in to fork a gist
  • Save rawsh/fde6472bcb4aca89b05c7c9c2a086195 to your computer and use it in GitHub Desktop.
Save rawsh/fde6472bcb4aca89b05c7c9c2a086195 to your computer and use it in GitHub Desktop.
"use strict";
// ==UserScript==
// @name Vertix.io Aimbotaaaa
// @description Aim at the closest player by pressing Shift.
// @match http://vertix.io
// @match http://www.vertix.io
// @version 1.0
//
// @namespace https://greasyfork.org/users/119655
// ==/UserScript==
var active = false;
var interval = void 0;
function activate(event) {
event.preventDefault();
if (event.keyCode === 16 && !active) {
c.removeEventListener("mousemove", gameInput, false);
active = true;
interval = setInterval(aimClosestPlayer, 10);
}
}
function deactivate(event) {
event.preventDefault();
if (event.keyCode === 16) {
active = false;
clearInterval(interval);
c.addEventListener("mousemove", gameInput, false);
}
}
c.addEventListener("keydown", activate, false);
c.addEventListener("keyup", deactivate, false);
function getOtherPlayers(gameObjects, myTeam) {
return gameObjects.filter(function (o) {
return o.type === 'player' && o.dead === false && o.name !== player.name && o.team !== myTeam;
});
}
function getMyPlayer(gameObjects) {
return gameObjects.filter(function (o) {
return o.name === player.name;
})[0];
}
function distance(x1, y1, x2, y2) {
return Math.sqrt(Math.pow(x2 - x1, 2) + Math.pow(y2 - y1, 2));
}
function getClosestPlayer(gameObjects) {
var myTeam = getMyPlayer(gameObjects).team;
var otherPlayers = getOtherPlayers(gameObjects, myTeam);
var closestDistance = Infinity;
var closestPlayer = void 0;
otherPlayers.forEach(function (p) {
var d = distance(player.x, player.y, p.x, p.y);
if (d < closestDistance) {
closestPlayer = p;
closestDistance = d;
}
});
return closestPlayer;
}
function getAngle(x1, y1, x2, y2) {
return Math.atan2(y1 - y2, x1 - x2);
}
var angles = [];
var distances = [];
const add = (a, b) => a + b;
function setTarget(angle, distance) {
angles.push(angle);
distances.push(distance);
var suma = angles.reduce(add);
var sumd = distances.reduce(add);
console.log(suma, sumd);
target.f = suma / (angles.length);
target.d = distance;
if (angles.length > 5) {
angles.shift();
}
if (distances.length > 5) {
distances.shift();
}
}
function aimClosestPlayer() {
var closestPlayer = getClosestPlayer(gameObjects);
if (!closestPlayer) {
return;
}
var angle = getAngle(player.x, player.y, closestPlayer.x, closestPlayer.y);
var distance = 100;
setTarget(angle, distance);
targetChanged = true;
}
Sign up for free to join this conversation on GitHub. Already have an account? Sign in to comment