RR: Append Drone In Sea Wars

As title.

目前为 2023-06-16 提交的版本。查看 最新版本

// ==UserScript==
// @name         RR: Append Drone In Sea Wars
// @namespace    -
// @version      1.0
// @description  As title.
// @author       LianSheng
// @match        https://rivalregions.com/*
// @match        http://rivalregions.com/*
// @match        https://m.rivalregions.com/*
// @match        http://m.rivalregions.com/*
// @icon         https://www.google.com/s2/favicons?sz=64&domain=rivalregions.com
// @grant        none
// @run-at       document-start
// @license      MIT
// ==/UserScript==

(() => {
    function appendDroneHandler() {
        const battleship = document.querySelector(".war_select_u .war_w_unit[url='18']");

        if (battleship) {
            const maxAlphaDamage = document.querySelector("#war_max_span_equal").innerText.replace(".", "") - 0;
            /** @type {HTMLDivElement} */
            const drone = battleship.cloneNode(true);
            /** @type {HTMLSpanElement} */
            const span = drone.children[0];
            /** @type {HTMLInputElement} */
            const input = drone.children[1];
            /** @type {HTMLInputElement} */
            const battleshipInput = battleship.children[1];

            drone.setAttribute("url", "27");
            drone.setAttribute("damage", "6000");
            drone.setAttribute("style", "background-image: url(//static.rivalregions.com/static/images/icons/white/storage_27.png);");
            drone.style.marginRight = "25px";
            span.setAttribute("url", "27");
            span.setAttribute("damage", "6000");
            span.innerText = "???";
            input.setAttribute("url", "27");
            input.setAttribute("damage", "6000");
            input.max = 99999;
            input.value = 0;

            span.onclick = () => {
                battleshipInput.value = 0;
                input.value = Math.floor(maxAlphaDamage / 6000);
                battleshipInput.dispatchEvent(new Event("keyup"));
            }

            input.onkeyup = () => {
                battleshipInput.dispatchEvent(new Event("keyup"));
            }

            if (location.hostname.startsWith("m")) {
                input.readOnly = true;

                input.onclick = () => {
                    const quantity = prompt("Please enter the number of lazer drones you want to use.") - 0;

                    if (quantity) {
                        input.value = quantity;
                        battleshipInput.dispatchEvent(new Event("keyup"));
                    }
                }
            }

            battleship.insertAdjacentElement("afterend", drone);
        }
    }

    window.addEventListener("hashchange", appendDroneHandler);
    window.addEventListener("load", () => setTimeout(appendDroneHandler, 3e3));
})();

QingJ © 2025

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