F95-Zone Auto-Redirect (Optimized)

Fast, reliable auto-redirect for masked download links

За да инсталирате този скрипт, трябва да имате инсталирано разширение като Tampermonkey, Greasemonkey или Violentmonkey.

За да инсталирате този скрипт, трябва да инсталирате разширение, като например Tampermonkey или Violentmonkey.

За да инсталирате този скрипт, трябва да имате инсталирано разширение като Tampermonkey или Violentmonkey.

За да инсталирате този скрипт, трябва да имате инсталирано разширение като Tampermonkey или Userscripts.

За да инсталирате скрипта, трябва да инсталирате разширение като Tampermonkey.

За да инсталирате този скрипт, трябва да имате инсталиран скриптов мениджър.

(Вече имам скриптов мениджър, искам да го инсталирам!)

За да инсталирате този стил, трябва да инсталирате разширение като Stylus.

За да инсталирате този стил, трябва да инсталирате разширение като Stylus.

За да инсталирате този стил, трябва да инсталирате разширение като Stylus.

За да инсталирате този стил, трябва да имате инсталиран мениджър на потребителски стилове.

За да инсталирате този стил, трябва да имате инсталиран мениджър на потребителски стилове.

За да инсталирате този стил, трябва да имате инсталиран мениджър на потребителски стилове.

(Вече имам инсталиран мениджър на стиловете, искам да го инсталирам!)

// ==UserScript==
// @name         F95-Zone Auto-Redirect (Optimized)
// @namespace    https://f95zone.to
// @version      2.0
// @description  Fast, reliable auto-redirect for masked download links
// @author       SlightlyGarbage
// @author       IrisV3rm (Original Author)
// @homepageURL  https://github.com/IrisV3rm
// @license      MIT
// @copyright    2026, IrisV3rm, SlightlyGarbage
// @match        https://f95zone.to/masked/*
// @icon         https://www.google.com/s2/favicons?sz=64&domain=f95zone.to
// @run-at       document-start
// @grant        none
// ==/UserScript==

(function () {
    'use strict';

    function tryRedirect() {
        const link = document.querySelector('a.host_link');
        if (link && link.href) {
            document.title = 'Redirecting...';
            link.click();
            return true;
        }
        return false;
    }

    if (tryRedirect()) return;

    const observer = new MutationObserver(() => {
        if (tryRedirect()) {
            observer.disconnect();
        }
    });

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