Replace Train with Exercise

Replace "train" with "exercise" on Torn Gym page, to help people suffering with Siderodromophobia

スクリプトをインストールするには、Tampermonkey, GreasemonkeyViolentmonkey のような拡張機能のインストールが必要です。

You will need to install an extension such as Tampermonkey to install this script.

スクリプトをインストールするには、TampermonkeyViolentmonkey のような拡張機能のインストールが必要です。

スクリプトをインストールするには、TampermonkeyUserscripts のような拡張機能のインストールが必要です。

このスクリプトをインストールするには、Tampermonkeyなどの拡張機能をインストールする必要があります。

このスクリプトをインストールするには、ユーザースクリプト管理ツールの拡張機能をインストールする必要があります。

(ユーザースクリプト管理ツールは設定済みなのでインストール!)

このスタイルをインストールするには、Stylusなどの拡張機能をインストールする必要があります。

このスタイルをインストールするには、Stylus などの拡張機能をインストールする必要があります。

このスタイルをインストールするには、Stylus tなどの拡張機能をインストールする必要があります。

このスタイルをインストールするには、ユーザースタイル管理用の拡張機能をインストールする必要があります。

このスタイルをインストールするには、ユーザースタイル管理用の拡張機能をインストールする必要があります。

このスタイルをインストールするには、ユーザースタイル管理用の拡張機能をインストールする必要があります。

(ユーザースタイル管理ツールは設定済みなのでインストール!)

このスクリプトの質問や評価の投稿はこちら通報はこちらへお寄せください
// ==UserScript==
// @name         Replace Train with Exercise
// @namespace    http://tampermonkey.net/
// @version      1.0
// @description  Replace "train" with "exercise" on Torn Gym page, to help people suffering with Siderodromophobia
// @author       hexxeh[2428617]
// @license MIT
// @match        https://www.torn.com/gym.php
// @grant        none
// ==/UserScript==

(function() {
    'use strict';

    function replaceText(node) {
        if (node.nodeType === Node.TEXT_NODE) {
            node.textContent = node.textContent.replace(/\btrain\b/gi, 'exercise');
        } else if (node.nodeType === Node.ELEMENT_NODE) {
            // Replace text in input fields and buttons
            if (node.tagName === 'BUTTON' || node.tagName === 'INPUT') {
                node.value = node.value.replace(/\btrain\b/gi, 'exercise');
            }
            // Check for child nodes
            node.childNodes.forEach(replaceText);
        }
    }

    // Run replacement after the page fully loads
    window.addEventListener('load', () => {
        replaceText(document.body);
    });

    // Observe changes to the body for dynamic content
    const observer = new MutationObserver(() => {
        replaceText(document.body);
    });

    observer.observe(document.body, {
        childList: true,
        subtree: true
    });
})();