C Z Full Auto

Auto-click angry, love, sad, flame, haha, or like emoji then claim

// ==UserScript==
// @name         C Z Full Auto
// @namespace    http://tampermonkey.net/
// @version      2.5
// @description  Auto-click angry, love, sad, flame, haha, or like emoji then claim
// @author       👽
// @match        https://coinszon.com/faucet
// @match        https://coinszon.com/firewall
// @grant        none
// @license      MIT
//
//   OOOOO   TTTTT  RRRRR    EEEEE   W   W   OOOOO
//  O     O    T    R    R   E       W   W  O     O
//  O     O    T    RRRRR    EEEE    W W W  O     O
//  O     O    T    R  R     E       WW WW  O     O
//   OOOOO     T    R   R    EEEEE   W   W   OOOOO
//
// ==/UserScript==

(function() {
    'use strict';

    let inactivityTimeout;

    // Function to reset the inactivity timeout
    function resetInactivityTimer() {
        clearTimeout(inactivityTimeout); // Clear previous timeout
        console.log("⏰ Inactivity timer reset."); // Debug log to track the reset action
        inactivityTimeout = setTimeout(() => {
            console.log('⏰ Inactivity detected. Refreshing page...');
            location.reload(); // Refresh the page after 30 seconds of inactivity
        }, 30000); // 30 seconds timeout
    }

    // Function to solve the emoji captcha
    function solveCaptcha() {
        resetInactivityTimer(); // Reset inactivity timer on action

        const questionDiv = document.querySelector('div.emoji-emoji-emoji-captcha-options[data-id="emoji-captcha-question-text"]');
        if (!questionDiv) {
            console.log('Captcha question not found.');
            return false;
        }

        const questionText = questionDiv.textContent.trim();
        console.log('Captcha question:', questionText);

        // Map emoji names to their data-icon attribute values
        const emojiMap = {
            'Angry': 'angry.gif',
            'Love': 'love.gif',
            'Sad': 'sad.gif',
            'Flame': 'flame.gif',
            'Haha': 'haha.gif',
            'Like': 'like.gif',
        };

        // Extract the emoji name from the question text, e.g. "Please click on the : Like"
        const match = questionText.match(/Please click on the : (\w+)/);
        if (match && match[1]) {
            const emojiName = match[1];
            const emojiIcon = emojiMap[emojiName];
            if (emojiIcon) {
                const emojiOption = document.querySelector(`div.emoji-captcha-item[data-icon="${emojiIcon}"]`);
                if (emojiOption) {
                    emojiOption.click();
                    console.log(`Clicked on ${emojiName} emoji.`);
                    return true; // Emoji clicked successfully
                } else {
                    console.log(`${emojiName} emoji option not found.`);
                }
            } else {
                console.log(`Emoji "${emojiName}" not recognized in map.`);
            }
        } else {
            console.log('No emoji name found in captcha question.');
        }

        return false; // Emoji not clicked
    }

    // Function to click the "Collect your reward" button on Faucet page
    function collectRewardFaucet() {
        resetInactivityTimer(); // Reset inactivity timer on action

        const claimButton = document.querySelector('button[type="submit"].claim-btn');
        if (claimButton) {
            claimButton.click();
            console.log('🎉 Collected your reward on faucet page!');
        } else {
            console.log('Claim button not found on faucet page yet.');
        }
    }

    // Function to click the "Unlock" button on Firewall page
    function unlockFirewall() {
        resetInactivityTimer(); // Reset inactivity timer on action

        const unlockButton = document.querySelector('button[type="submit"].btn-primary.rounded-3');
        if (unlockButton) {
            unlockButton.click();
            console.log('🎉 Unlock button clicked on firewall page!');
        } else {
            console.log('Unlock button not found on firewall page yet.');
        }
    }

    // Function to automatically click the "Claim Now" button after page refresh
    function claimNowAfterRefresh() {
        resetInactivityTimer(); // Reset inactivity timer on action

        console.log('🌍 Page refreshed. Clicking "Claim Now" button...');
        const claimNowButton = document.querySelector('button[type="submit"].go-btn');
        if (claimNowButton) {
            claimNowButton.click();
            console.log('🎉 Clicked on "Claim Now" button after page refresh!');
        } else {
            console.log('Claim Now button not found.');
        }
    }

    // Main script to run after page load
    window.addEventListener('load', () => {
        resetInactivityTimer(); // Start inactivity timer when page loads

        setTimeout(() => {
            // Solve the captcha first
            if (solveCaptcha()) {
                console.log('Captcha solved, now performing actions...');

                // Check if we are on the faucet page
                if (window.location.href.includes('faucet')) {
                    // If on faucet page, collect the reward
                    collectRewardFaucet();
                }
                // Check if we are on the firewall page
                else if (window.location.href.includes('firewall')) {
                    // If on firewall page, click the "Unlock" button
                    unlockFirewall();
                }

                // Wait for the page to refresh, then automatically click the "Claim Now" button
                setTimeout(() => {
                    claimNowAfterRefresh();
                }, 5000); // Wait 5 seconds before clicking "Claim Now" after refresh
            }
        }, 10000); // Wait for 10 seconds after page load before starting captcha solving
    });

})();