Click Through Store
目前為
// ==UserScript==
// @name MooMoo.io Click Through Store
// @description Click Through Store
// @author WEIRD
// @icon https://moomoo.io/img/favicon.png?v=1
// @match *://*.moomoo.io/*
// @run-at document-start
// @grant unsafeWindow
// @license MIT
// @version 0.1
// @namespace https://greasyfork.org/users/999838
// ==/UserScript==
(() => {
unsafeWindow.clickThroughStore = true
document.addEventListener("DOMContentLoaded", () => {
const style = document.createElement("style")
style.innerHTML = `
.joinAlBtn {
pointer-events: all !important;
}
.storeItem {
pointer-events: none !important;
}`
document.head.appendChild(style)
window.addEventListener("contextmenu", e => e.preventDefault())
function waitForElm(selector) {
return new Promise(resolve => {
if (document.querySelector(selector)) {
return resolve(document.querySelector(selector));
}
const observer = new MutationObserver(mutations => {
if (document.querySelector(selector)) {
resolve(document.querySelector(selector));
observer.disconnect();
}
});
observer.observe(document.body, {
childList: true,
subtree: true
});
});
}
function triggerMouseEvent(node, eventType) {
var clickEvent = document.createEvent('MouseEvents');
clickEvent.initEvent(eventType, true, true);
node.dispatchEvent(clickEvent);
}
waitForElm("#storeHolder").then(storeHolder => {
if (unsafeWindow.customStore) {
waitForElm("#customStoreHolder").then(customStoreHolder => {
customStoreHolder.addEventListener("mousedown", () => {
triggerMouseEvent(document.getElementById("gameCanvas"), "mousedown")
})
customStoreHolder.addEventListener("mouseup", () => {
triggerMouseEvent(document.getElementById("gameCanvas"), "mouseup")
})
})
} else {
storeHolder.addEventListener("mousedown", event => {
triggerMouseEvent(document.getElementById("gameCanvas"), "mousedown")
})
storeHolder.addEventListener("mouseup", event => {
triggerMouseEvent(document.getElementById("gameCanvas"), "mouseup")
})
}
})
})
})()