Greasy Fork 支持简体中文。

明日方舟网页剧情阅读辅助点击

在 https://prts.wiki/ 網站上,滾輪和按鍵操作輔助點擊,並添加 M 鍵靜音切換功能,方便劇情閲讀。

// ==UserScript==
// @name         明日方舟网页剧情阅读辅助点击
// @namespace    http://tampermonkey.net/
// @version      1.4
// @description  在 https://prts.wiki/ 網站上,滾輪和按鍵操作輔助點擊,並添加 M 鍵靜音切換功能,方便劇情閲讀。
// @author       kitsumiya
// @match        https://prts.wiki/*
// @license MIT
// ==/UserScript==

(function() {
    'use strict';

    let isMuted = false;

    if (window.location.hostname === 'prts.wiki') {

        document.addEventListener('wheel', function(event) {
            if (event.deltaY < 0) {
                event.preventDefault();
                clickButton('button_playback');
            } else {
                event.preventDefault();
                simulateClick();
            }
        });

        document.addEventListener('keydown', function(event) {
            if (event.code === 'Space') {
                event.preventDefault();
                simulateClick();
            } else if (event.code === 'ShiftLeft' || event.code === 'ShiftRight') {
                event.preventDefault();
                clickButton('button_auto');
            } else if (event.code === 'Enter') {
                event.preventDefault();
                clickButton('button_fullscreen');
            } else if (event.code === 'KeyM') {
                event.preventDefault();
                toggleMute();
            }
        });

        function simulateClick() {
            const targetElement = document.elementFromPoint(window.innerWidth / 2, window.innerHeight / 2);
            if (targetElement) {
                const clickEvent = new MouseEvent('click', {
                    bubbles: true,
                    cancelable: true,
                    view: window
                });
                targetElement.dispatchEvent(clickEvent);
            }
        }

        function clickButton(buttonId) {
            const button = document.getElementById(buttonId);
            if (button) {
                button.click();
            } else {
                console.warn(`未找到ID為 ${buttonId} 的按鈕`);
            }
        }

        function toggleMute() {
            const mediaElements = document.querySelectorAll('audio, video');
            isMuted = !isMuted;
            mediaElements.forEach(function(mediaElement) {
                mediaElement.muted = isMuted;
            });
            console.log(isMuted ? "音頻已靜音" : "音頻已恢復");
        }
    }
})();