您需要先安装一个扩展,例如 篡改猴、Greasemonkey 或 暴力猴,之后才能安装此脚本。
您需要先安装一个扩展,例如 篡改猴 或 暴力猴,之后才能安装此脚本。
您需要先安装一个扩展,例如 篡改猴 或 暴力猴,之后才能安装此脚本。
您需要先安装一个扩展,例如 篡改猴 或 Userscripts ,之后才能安装此脚本。
您需要先安装一款用户脚本管理器扩展,例如 Tampermonkey,才能安装此脚本。
您需要先安装用户脚本管理器扩展后才能安装此脚本。
Allows you to drag the Painter with the Middle Mouse Button
// ==UserScript== // @name Move Painter with Middle Mouse Button // @namespace http://tampermonkey.com/ // @version 1.1 // @description Allows you to drag the Painter with the Middle Mouse Button // @author MTP3 // @license 0BSD // @match *://manyland.com/* // @icon http://manyland.com/favicon.ico // @grant none // ==/UserScript== // don't worry about all the warnings // tampermonkey couldn't possibly know about some of the things manyland defines let replacePainter = () => { if (ig.game.painter.movable) { //ig.game.sounds.success.play(); return; } let teleportElement = (element, x, y) => { if (!element) return; jQuery(element).css("left", x + "px"); jQuery(element).css("top", y + "px"); }; let offsetElement = (element, x, y) => { if (!element) return; let pos = jQuery(element).position(); teleportElement(element, x + pos.left, y + pos.top); }; ig.game.painter.updateCursorPos = (e) => { if (!ig.game.painter.isRunning) ig.game.painter.moving = false; if (!ig.game.painter.moving) return; let painter = ig.game.painter; let pos = jQuery(ig.game.painter.canvas).position(); let x = e.movementX; let y = e.movementY; offsetElement(ig.game.painter.canvas, x, y); offsetElement($(".painterInputBox")[0], x, y); ig.game.painter.oldMouseX = e.offsetX; ig.game.painter.oldMouseY = e.offsetY; }; document.addEventListener('mousemove', ig.game.painter.updateCursorPos); document.addEventListener('mousedown', (e) => { if (e.button == 1) ig.game.painter.moving = true; }); document.addEventListener('mouseup', (e) => { if (e.button == 1) ig.game.painter.moving = false; }); ig.game.painter.movable = true; //ig.game.sounds.success.play(); }; // A loader I have to have here so tampermonkey doesn't not load my script // and/or crash manyland by accident (() => { let loading = setInterval(() => { if (typeof ig === "undefined") return; else if (typeof ig.game === "undefined") return; else if (typeof ig.game.painter === "undefined") return; clearInterval(loading); replacePainter(); }, 250); })();