Agar Movement Keys - Works After Update ☑

Use arrow keys to move.

目前为 2016-06-19 提交的版本。查看 最新版本

// ==UserScript==
// @name         Agar Movement Keys - Works After Update ☑
// @namespace    http://tampermonkey.net/
// @description  Use arrow keys to move.
// @version      0.1
// @match        http://agar.io/*
// @grant        none
// ==/UserScript==

(function() {
	'use strict';

	var keysDown = [];
	var X = 0;
	var Y = 0;

	document.addEventListener("keydown", function(event) {
		console.log(event.keyCode);
		switch(event.keyCode) {
			case 37: //left
				if (keysDown.indexOf(37) == -1) {
					keysDown[keysDown.length] = 37;
					update();
				}
				break;
			case 38: //up
				if (keysDown.indexOf(38) == -1) {
					keysDown[keysDown.length] = 38;
					update();
				}
				break;
			case 39: //right
				if (keysDown.indexOf(39) == -1) {
					keysDown[keysDown.length] = 39;
					update();
				}
				break;
			case 40: //down
				if (keysDown.indexOf(40) == -1) {
					keysDown[keysDown.length] = 40;
					update();
				}
				break;
		}
	});

	document.addEventListener("keyup", function(event) {
		switch(event.keyCode) {
			case 37: //left
				keysDown.splice(keysDown.indexOf(37), 1);
				update();
				break;
			case 38: //up
				keysDown.splice(keysDown.indexOf(38), 1);
				update();
				break;
			case 39: //right
				keysDown.splice(keysDown.indexOf(39), 1);
				update();
				break;
			case 40: //down
				keysDown.splice(keysDown.indexOf(40), 1);
				update();
				break;
		}
	});

	function update() {
		if (keysDown.length === 0) {
			X = window.innerWidth/2;
			Y = window.innerHeight/2;
			$("canvas").trigger($.Event("mousemove", {clientX: X, clientY: Y}));
		} else if (keysDown.length == 1) {
			switch (keysDown[0]) {
				case 37: //left
					X = window.innerWidth/2-window.innerHeight/2;
					Y = window.innerHeight/2;
					$("canvas").trigger($.Event("mousemove", {clientX: X, clientY: Y}));
					break;
				case 38: //up
					X = window.innerWidth/2;
					Y = 0;
					$("canvas").trigger($.Event("mousemove", {clientX: X, clientY: Y}));
					break;
				case 39: //right
					X = window.innerWidth/2+window.innerHeight/2;
					Y = window.innerHeight/2;
					$("canvas").trigger($.Event("mousemove", {clientX: X, clientY: Y}));
					break;
				case 40: //down
					X = window.innerWidth/2;
					Y = window.innerHeight;
					$("canvas").trigger($.Event("mousemove", {clientX: X, clientY: Y}));
					break;
			}
		} else if (keysDown.length == 2) {
			if (keysDown.indexOf(37) != -1 && keysDown.indexOf(38) != -1) {
				X = window.innerWidth/2-(window.innerHeight/2*0.70710678118);
				Y = window.innerHeight/2-(window.innerHeight/2*0.70710678118);
				$("canvas").trigger($.Event("mousemove", {clientX: X, clientY: Y}));
			} else if (keysDown.indexOf(38) != -1 && keysDown.indexOf(39) != -1) {
				X = window.innerWidth/2+(window.innerHeight/2*0.70710678118);
				Y = window.innerHeight/2-(window.innerHeight/2*0.70710678118);
				$("canvas").trigger($.Event("mousemove", {clientX: X, clientY: Y}));
			} else if (keysDown.indexOf(39) != -1 && keysDown.indexOf(40) != -1) {
				X = window.innerWidth/2+(window.innerHeight/2*0.70710678118);
				Y = window.innerHeight/2+(window.innerHeight/2*0.70710678118);
				$("canvas").trigger($.Event("mousemove", {clientX: X, clientY: Y}));
			} else if (keysDown.indexOf(40) != -1 && keysDown.indexOf(37) != -1) {
				X = window.innerWidth/2-(window.innerHeight/2*0.70710678118);
				Y = window.innerHeight/2+(window.innerHeight/2*0.70710678118);
				$("canvas").trigger($.Event("mousemove", {clientX: X, clientY: Y}));
			} else {
				X = window.innerWidth/2;
				Y = window.innerHeight/2;
				$("canvas").trigger($.Event("mousemove", {clientX: X, clientY: Y}));
			}
		}
	}
})();

QingJ © 2025

镜像随时可能失效,请加Q群300939539或关注我们的公众号极客氢云获取最新地址