您需要先安装一个扩展,例如 篡改猴、Greasemonkey 或 暴力猴,之后才能安装此脚本。
您需要先安装一个扩展,例如 篡改猴 或 暴力猴,之后才能安装此脚本。
您需要先安装一个扩展,例如 篡改猴 或 暴力猴,之后才能安装此脚本。
您需要先安装一个扩展,例如 篡改猴 或 Userscripts ,之后才能安装此脚本。
您需要先安装一款用户脚本管理器扩展,例如 Tampermonkey,才能安装此脚本。
您需要先安装用户脚本管理器扩展后才能安装此脚本。
Automatically claim channel points, enable theater mode, and claim prime rewards on https://gaming.amazon.com/
当前为
// ==UserScript== // @name Twitch Enhancements // @namespace http://tampermonkey.net/ // @version 0.2 // @description Automatically claim channel points, enable theater mode, and claim prime rewards on https://gaming.amazon.com/ // @author JJJ // @match https://www.twitch.tv/* // @match https://gaming.amazon.com/* // @match https://www.twitch.tv/drops/inventory* // @icon https://th.bing.com/th/id/R.d71be224f193da01e7e499165a8981c5?rik=uBYlAxJ4XyXmJg&riu=http%3a%2f%2fpngimg.com%2fuploads%2ftwitch%2ftwitch_PNG28.png&ehk=PMc5m5Fil%2bhyq1zilk3F3cuzxSluXFBE80XgxVIG0rM%3d&risl=&pid=ImgRaw&r=0 // @grant none // @license MIT // ==/UserScript== (function () { 'use strict'; // Constants const PLAYER_SELECTOR = '.video-player'; const THEATER_MODE_BUTTON_SELECTOR = 'button[aria-label="Modo cine (alt+t)"]'; const CLOSE_MENU_BUTTON_SELECTOR = 'button[aria-label="Close Menu"]'; const CLOSE_MODAL_BUTTON_SELECTOR = 'button[aria-label="Close modal"]'; const THEATER_MODE_CLASS = 'theatre-mode'; const CLAIMABLE_BONUS_SELECTOR = '.claimable-bonus__icon'; const CLAIM_DROPS_SELECTOR = '[class="ScCoreButton-sc-ocjdkq-0 ScCoreButtonPrimary-sc-ocjdkq-1 ejeLlX eHSNkH"]'; const PRIME_REWARD_SELECTOR = 'span[data-a-target="tw-button-text"] p[data-a-target="buy-box_call-to-action-text"][title="Get in-game content"], p[data-a-target="buy-box_call-to-action-text"][title="Get game"]'; let claiming = false; // Check if MutationObserver is supported const MutationObserver = window.MutationObserver || window.WebKitMutationObserver || window.MozMutationObserver; // Function to click a button function clickButton(buttonSelector) { const observer = new MutationObserver((mutationsList, observer) => { for (let mutation of mutationsList) { if (mutation.addedNodes.length) { const button = document.querySelector(buttonSelector); if (button) { button.click(); observer.disconnect(); return; } } } }); observer.observe(document, { childList: true, subtree: true }); } // Function to enable theater mode function enableTheaterMode() { const player = document.querySelector(PLAYER_SELECTOR); if (player) { if (!player.classList.contains(THEATER_MODE_CLASS)) { clickButton(THEATER_MODE_BUTTON_SELECTOR); } } else { console.error('Player not found'); } } // Function to hide the global menu function hideGlobalMenu() { const GLOBAL_MENU_SELECTOR = 'div.ScBalloonWrapper-sc-14jr088-0.eEhNFm'; const globalMenu = document.querySelector(GLOBAL_MENU_SELECTOR); if (globalMenu) { globalMenu.style.display = 'none'; } else { console.error('Global menu not found'); } } // Function to automatically claim channel points function autoClaimBonus() { if (MutationObserver) { console.log('Auto claimer is enabled.'); let observer = new MutationObserver(mutationsList => { for (let mutation of mutationsList) { if (mutation.type === 'childList') { let bonus = document.querySelector(CLAIMABLE_BONUS_SELECTOR); if (bonus && !claiming) { bonus.click(); let date = new Date(); claiming = true; setTimeout(() => { console.log('Claimed at ' + date.toLocaleString()); claiming = false; }, Math.random() * 1000 + 2000); } } } }); observer.observe(document.body, { childList: true, subtree: true }); } else { console.log('MutationObserver is not supported in this browser.'); } } // Function to claim prime rewards function claimPrimeReward() { const element = document.querySelector(PRIME_REWARD_SELECTOR); if (element) { element.click(); } } // Function to claim drops function claimDrops() { var onMutate = function (mutationsList) { mutationsList.forEach(mutation => { if (document.querySelector(CLAIM_DROPS_SELECTOR)) document.querySelector(CLAIM_DROPS_SELECTOR).click(); }) } var observer = new MutationObserver(onMutate); observer.observe(document.body, { childList: true, subtree: true }); } setTimeout(enableTheaterMode, 1000); setTimeout(autoClaimBonus, 1000); setTimeout(claimPrimeReward, 1000); setTimeout(() => clickButton(CLOSE_MENU_BUTTON_SELECTOR), 1000); setTimeout(() => clickButton(CLOSE_MODAL_BUTTON_SELECTOR), 1000); setTimeout(hideGlobalMenu, 1000); setTimeout(claimDrops, 1000); setInterval(function () { if (window.location.href.startsWith('https://www.twitch.tv/drops/inventory')) { window.location.reload(); } }, 15 * 60000); })();
QingJ © 2025
镜像随时可能失效,请加Q群300939539或关注我们的公众号极客氢云获取最新地址