Stake.bet Auto Claim Reload 10 Mins with Timer, Flashing, and Sound

Automatically claims the first "Claim Reload" button every 10 minutes and 30 seconds with a countdown timer, flashing effect, sound notification, and page reload after 10 seconds.

目前為 2025-03-02 提交的版本,檢視 最新版本

// ==UserScript==
// @name         Stake.bet Auto Claim Reload 10 Mins with Timer, Flashing, and Sound
// @namespace    http://tampermonkey.net/
// @version      3.7
// @description  Automatically claims the first "Claim Reload" button every 10 minutes and 30 seconds with a countdown timer, flashing effect, sound notification, and page reload after 10 seconds.
// @author       jayfantz - tips accepted thank you and enjoy
// @match        https://stake.bet/*
// @grant        none
// ==/UserScript==

(function() {
    'use strict';

    // Function to create the countdown timer
    function createTimer() {
        const timer = document.createElement('div');
        Object.assign(timer.style, {
            position: 'fixed',
            top: '1.5cm',
            left: '0',
            backgroundColor: 'black',
            color: 'white',
            padding: '10px',
            fontFamily: 'monospace',
            fontSize: '20px',
            zIndex: '10000',
            borderRadius: '5px'
        });
        timer.id = 'countdown-timer';
        timer.textContent = '10:30';
        document.body.appendChild(timer);
        return timer;
    }

    // Function to update the countdown timer
    function updateTimer(timer, timeInSeconds) {
        const minutes = Math.floor(timeInSeconds / 60);
        const seconds = timeInSeconds % 60;
        timer.textContent = `${String(minutes).padStart(2, '0')}:${String(seconds).padStart(2, '0')}`;
        timer.style.backgroundColor = timeInSeconds <= 5 ? (timer.style.backgroundColor === 'black' ? 'red' : 'black') : 'black';
    }

    // Function to play a sound
    function playSound() {
        const sound = new Audio('https://assets.mixkit.co/active_storage/sfx/1121/1121-preview.mp3');
        sound.volume = 0.5;
        sound.play();
    }

    // Function to forcefully click a button
    function forceClick(element) {
        if (!element) return;
        element.scrollIntoView({ behavior: 'smooth', block: 'center' });
        ['mouseover', 'mousedown', 'mouseup', 'click'].forEach(eventType => {
            element.dispatchEvent(new MouseEvent(eventType, { bubbles: true, cancelable: true, view: window }));
        });
        console.log("Tried to force-click the button.");
    }

    // Function to find and click the first "Claim Reload" button
    function clickClaimReload() {
        let buttons = Array.from(document.querySelectorAll('button'));
        let reloadButton = buttons.find(button => button.innerText.trim().toLowerCase().includes('claim reload'));

        if (reloadButton) {
            console.log('Claim Reload button found!', reloadButton);
            forceClick(reloadButton); // Click the button
            playSound(); // Play sound immediately after clicking

            // Wait 10 seconds before reloading the page
            setTimeout(() => {
                location.reload(); // Reload the page after 10 seconds
            }, 10000); // 10 seconds delay
        } else {
            console.log('Claim Reload button not found!');
        }
    }

    // Function to check if we are on the rewards page
    function isOnRewardsPage() {
        return window.location.href.includes("tab=rewards&modal=claimReload");
    }

    // Main function to run the script
    function main() {
        if (isOnRewardsPage()) {
            console.log('Already on the rewards page.');
            clickClaimReload(); // Only click if we're on the right page
        } else {
            window.location.href = 'https://stake.bet/?tab=rewards&modal=claimReload';
            console.log('Navigating to the rewards page...');
        }
    }

    // Create the timer
    const timer = createTimer();
    let countdownTime = 630; // 10 minutes and 30 seconds

    // Update the timer every second
    const timerInterval = setInterval(() => {
        countdownTime -= 1;
        updateTimer(timer, countdownTime);

        if (countdownTime <= 0) {
            countdownTime = 630; // Reset the countdown time after it hits zero
            updateTimer(timer, countdownTime); // Reset the timer display
            main(); // Run the main function to click the button
        }
    }, 1000);

})();

QingJ © 2025

镜像随时可能失效,请加Q群300939539或关注我们的公众号极客氢云获取最新地址