K런 광고차단 스크립트

K런처의 좆같은 광고 차단 문구를 민주화 시키는 계엄군 스크립트

当前为 2024-07-01 提交的版本,查看 最新版本

// ==UserScript==
// @name         K런 광고차단 스크립트
// @namespace    http://tampermonkey.net/
// @version      5.24
// @description  K런처의 좆같은 광고 차단 문구를 민주화 시키는 계엄군 스크립트
// @author       ROACH
// @match        *://klauncher.kr/*
// @grant        none
// @run-at       document-start
// ==/UserScript==

(function() {
    'use strict';

    // Prevent ad-block detection scripts from executing
    const preventAdBlockDetection = function() {
        const originalFetch = window.fetch;
        window.fetch = function(...args) {
            if (args[0] && typeof args[0] === 'string' && args[0].includes('doubleclick.net')) {
                return new Promise((resolve) => {
                    resolve(new Response('', { status: 200 }));
                });
            }
            return originalFetch.apply(this, args);
        };

        // Mock common ad-block detection properties and functions
        Object.defineProperty(window, 'adBlockEnabled', { value: false, writable: false });
        window.detectAdBlock = function(callback) {
            callback(false);
        };
    };

    // Allow necessary JavaScript functions for login
    const allowLoginFunctions = function() {
        window.eval = Function.prototype;
        window.Function = Function.prototype;
        window.setTimeout = function(callback, delay) {
            if (typeof callback === 'function') {
                callback();
            }
        };
        window.setInterval = function(callback, interval) {
            if (typeof callback === 'function') {
                callback();
            }
        };
        document.write = function(content) {
            const tempDiv = document.createElement('div');
            tempDiv.innerHTML = content;
            document.body.appendChild(tempDiv);
        };
    };

    // Start mutation observer to block ad-related scripts
    const observer = new MutationObserver(mutations => {
        mutations.forEach(mutation => {
            mutation.addedNodes.forEach(node => {
                if (node.tagName === 'SCRIPT' && node.src.includes('adsbygoogle.js')) {
                    node.type = 'javascript/blocked';
                }
            });
        });
    });

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

    // Apply the prevention and allow functions
    preventAdBlockDetection();
    allowLoginFunctions();
})();