Greasy Fork

Mass Macro, Double Split, Triple Split, Quadruple Split, Freeze

Mass Macro - W(Hold), 2xSplit - 2, 3xSplit - 3, 4xSplit - 4, Freeze Movement - S.

目前为 2018-11-09 提交的版本。查看 最新版本

// ==UserScript==
// @name         Mass Macro, Double Split, Triple Split, Quadruple Split, Freeze
// @namespace    http://tampermonkey.net/
// @version      1.1
// @description  Mass Macro - W(Hold), 2xSplit - 2, 3xSplit - 3, 4xSplit - 4, Freeze Movement - S.
// @author       Dropped Studios
// @match        http://abs0rb.me/*
// @match        http*://agar.io/*
// @match        http://agarabi.com/*
// @match        http://agarly.com/*
// @match        http://en.agar.bio/*
// @match        http://agar.pro/*
// @match        http://agario.se/*
// @match        http://agar.biz/*
// @match        http://bubble.am/*
// @grant        none
// @run-at       document-end
// ==/UserScript==
window.addEventListener('keydown', keydown);
window.addEventListener('keyup', keyup);
var Feed = false;
var Duration = 1;
var instructions = document.getElementById("instructions");
instructions.style.lineHeight = "1";
instructions.style.fontSize = "12.5px";
instructions.style.marginTop = "-30px";
instructions.innerHTML += "<center><span class='text-muted'><span> Press <b>4</b> to split 4x</span></span></center>" +
	"<center><span class='text-muted'><span> Press <b>3</b> to split 3x</span></span></center>" +
	"<center><span class='text-muted'><span> Press <b>2</b> to split 2x</span></span></center>" +
	"<center><span class='text-muted'><span> Press and hold <b>W</b> for macro feed</span></span></center>" +
	"<center><span class='text-muted'><span> Press <b>S</b> to freeze movement</span></span></center>";
function keydown(event) {
    if (event.keyCode == 87) {
        Feed = true;
        setTimeout(giveMass, Duration);
    }
    // Quad Split \/
    if (event.keyCode == 69 || event.keyCode == 52) {
        Split();
        setTimeout(Split, Duration);
        setTimeout(Split, Duration*2);
        setTimeout(Split, Duration*3);
    }
    // Triple Split \/
    if (event.keyCode == 51 || event.keyCode == 65) {
        Split();
        setTimeout(Split, Duration);
        setTimeout(Split, Duration*2);
    }
    // Double Split \/
    if (event.keyCode == 68 || event.keyCode == 50) {
        Split();
        setTimeout(Split, Duration);
    }
    // Split \/
    if (event.keyCode == 49) {
        Split();
    }
    //Freeze \/
    if (event.keyCode == 83) {
        X = window.innerWidth/2;
        Y = window.innerHeight/2;
        $("canvas").trigger($.Event("mousemove", {clientX: X, clientY: Y}));
    }
}
function keyup(event) {
    if (event.keyCode == 87) {
        Feed = false;
    }
}
//Mass Macro \/
function giveMass() {
    if (Feed) {
        window.onkeydown({keyCode: 87});
        window.onkeyup({keyCode: 87});
        setTimeout(giveMass, Duration);
    }
}
function Split() {
    $("body").trigger($.Event("keydown", { keyCode: 32}));
    $("body").trigger($.Event("keyup", { keyCode: 32}));
}
"use strict";

const hsl = hue => `hsl(${hue},100%,50%)`;

// ** FPS
let fpsBox = document.createElement("div");
fpsBox.style = `
	position: absolute;
	top: 0px;
	left: 0px;
	color: white;
	background: black;
	font-family: 'Ubuntu', monospace;
	font-weight: 400;
`;
document.body.appendChild(fpsBox);
let frames = 0;
setInterval(() => {
	fpsBox.textContent = "fps: " + frames;
	fpsBox.style.color = hsl(frames * 2 - 10);
	frames = 0;
}, 1E3);
const clearRectOld = CanvasRenderingContext2D.prototype.clearRect;
CanvasRenderingContext2D.prototype.clearRect = function() {
	if (this.canvas === window.canvas) {
		++frames;
	}
	return clearRectOld.apply(this, arguments);
};