雀魂 Mortal 举报小帮手 & 复制牌谱 URL

自动选择 "Mortal 3.0" 并勾选 "显示 rating",同时在牌谱 URL 输入框旁添加复制按钮

当前为 2025-03-15 提交的版本,查看 最新版本

// ==UserScript==
// @name         雀魂 Mortal 举报小帮手 & 复制牌谱 URL
// @name:zh-TW   雀魂 Mortal 舉報小幫手 & 複製牌譜 URL
// @name:zh-CN   雀魂 Mortal 举报小帮手 & 复制牌谱 URL
// @name:ja      雀魂 Mortal レポートアシスタント & 牌譜 URL コピー
// @name:en      Mahjong Soul Mortal Report Assistant & Copy Log URL
// @author       Scott
// @version      0.2

// @description  自动选择 "Mortal 3.0" 并勾选 "显示 rating",同时在牌谱 URL 输入框旁添加复制按钮
// @description:zh-TW   自動選擇 "Mortal 3.0" 並勾選 "顯示 rating",同時在牌譜 URL 輸入框旁添加複製按鈕
// @description:zh-CN   自动选择 "Mortal 3.0" 并勾选 "显示 rating",同时在牌谱 URL 输入框旁添加复制按钮
// @description:ja      "Mortal 3.0" を自動選択し、"表示 rating" をチェックし、牌譜 URL 入力欄にコピーボタンを追加
// @description:en      Automatically select "Mortal 3.0" and check "Show rating", and add a copy button next to the log URL input field

// @match        *://mjai.ekyu.moe/*
// @grant        none

// @license      MIT
// @namespace    https://gf.qytechs.cn/zh-CN/users/1284613
// ==/UserScript==

(function () {
  "use strict";

  // ==================== 举报小帮手功能 ====================
  function selectMortalNetwork() {
    const selectElement = document.querySelector("#mortal-model-tag");
    if (selectElement) {
      selectElement.value = "3.0";
      selectElement.dispatchEvent(new Event("change", { bubbles: true }));
    }
  }

  function checkShowRating() {
    const ratingCheckbox = document.querySelector('input[name="show-rating"]');
    if (ratingCheckbox && !ratingCheckbox.checked) {
      ratingCheckbox.checked = true;
      ratingCheckbox.dispatchEvent(new Event("change", { bubbles: true }));
    }
  }

  function initReportHelper() {
    selectMortalNetwork();
    checkShowRating();
  }

  // ==================== 复制牌谱 URL 功能 ====================
  function addCopyButton() {
    const label = document.querySelector('label.radio');
    if (label) {
      const copyButton = document.createElement("button");
      copyButton.type = "button"; // 指定按钮类型
      copyButton.id = "copy-url-button";
      copyButton.className = "copy-button";
      copyButton.textContent = "复制 URL";
      label.appendChild(copyButton);
    }

    // 添加样式
    const style = document.createElement("style");
    style.textContent = `
      .copy-button {
        margin-left: 10px;
        padding: 5px 10px;
        background-color: #4CAF50;
        color: white;
        border: none;
        border-radius: 4px;
        cursor: pointer;
      }
      .copy-button:hover {
        background-color: #45a049;
      }
    `;
    document.head.appendChild(style);

    // 复制功能
    const inputField = document.querySelector('input[name="log-url"]');
    const copyButton = document.getElementById("copy-url-button");

    if (inputField && copyButton) {
      copyButton.addEventListener("click", (event) => {
        event.preventDefault(); // 阻止默认行为
        event.stopPropagation(); // 阻止事件冒泡

        inputField.select();
        inputField.setSelectionRange(0, 99999); // 兼容移动设备
        document.execCommand("copy");
        alert("URL 已复制到剪贴板!");
      });
    }
  }

  // ==================== 初始化 ====================
  function init() {
    initReportHelper(); // 初始化举报小帮手功能
    addCopyButton();    // 初始化复制牌谱 URL 功能
  }

  // 等待 DOM 加载完成
  window.addEventListener("load", init);
})();

QingJ © 2025

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