您需要先安装一个扩展,例如 篡改猴、Greasemonkey 或 暴力猴,之后才能安装此脚本。
您需要先安装一个扩展,例如 篡改猴 或 暴力猴,之后才能安装此脚本。
您需要先安装一个扩展,例如 篡改猴 或 暴力猴,之后才能安装此脚本。
您需要先安装一个扩展,例如 篡改猴 或 Userscripts ,之后才能安装此脚本。
您需要先安装一款用户脚本管理器扩展,例如 Tampermonkey,才能安装此脚本。
您需要先安装用户脚本管理器扩展后才能安装此脚本。
自动领取每日奖励
当前为
// ==UserScript== // @name Auto Loot // @namespace https://blog.chrxw.com // @version 0.5 // @description 自动领取每日奖励 // @author Chr_ // @include https://www.lootlink.me/* // @grant none // ==/UserScript== (function () { 'use strict'; showLabel(); dailyClaim(); add10xBtn(); })(); // 显示标签 function showLabel() { let uname = document.querySelector('#profileMenuInvoker>span'); let tag1 = document.createElement('span'); tag1.textContent = ' (反馈 |'; tag1.addEventListener('click', () => { window.open('https://keylol.com'); }); let tag2 = document.createElement('span'); tag2.textContent = ' By Chr_) '; tag2.addEventListener('click', () => { window.open('https://blog.chrxw.com'); }); uname.appendChild(tag1); uname.appendChild(tag2); } // 每日签到&自动开箱 function dailyClaim() { const MAX = 20; let tries = 0; clickDaily(); retry(() => { tries = 0; clickBox(); }, 3000); function clickDaily() { let coin = document.querySelector('#wallet2 a[data-modal-target="#crate-modal"]'); if (coin) { coin.click(); tries = 0; retry(claimCoin, 1000); } else { // retry(clickDaily, 500); } } function clickBox() { let coin = document.querySelector('#wallet2 div:not([style*="display:none"])>[src="/images/art/crate.png"]:not(.grayscale)'); if (coin) { coin.parentElement.click(); tries = 0; retry(claimCoin, 1000); } else { // retry(clickBox, 500); } } function claimCoin() { let claimbtn = document.querySelector("#cratetab > a"); if (claimbtn) { claimbtn.click(); tries = 0; retry(closePanel, 1000); } else { retry(claimCoin, 500); } } function closePanel() { let title = document.querySelector("#cratetab > h4"); if (title.textContent.search('Opened') != -1 || title.textContent.search('Received') != -1) { let closebtn = document.querySelector("#crate-modal > button"); closebtn.click(); } else { retry(closePanel, 500); } } function retry(foo, t) { console.log(foo.name); if (tries++ <= MAX) { setTimeout(() => { try { foo(); } catch (e) { console.log(e); throw e; } }, t); } else { console.log('操作超时'); } } } // 添加10连按钮 function add10xBtn() { let lootBtns = document.querySelectorAll('button[data-modal-target="#loot-modal"]'); let i = 0; for (let lootBtn of lootBtns) { let bar = lootBtn.parentElement.parentElement; let btn10x = document.createElement('button'); btn10x.id = 'loot10x' + (i).toString(); btn10x.onclick = loot10x; btn10x.className = 'float-right btn btn-lg u-btn-cyan g-color-white u-btn-hover-v2-1'; btn10x.textContent = '十连'; bar.children[0].insertBefore(btn10x, bar.children[0].children[0]); i++; } } // 十连 function loot10x(e) { const MAX = 50; const LOOT = 10; let tries = 0; let count = 0; clickLoot(); function clickLoot() { let t = e.originalTarget.id.match(/^loot10x(\d+)$/); t = t ? t[1] : 0; let lootBtns = document.querySelectorAll('button[data-modal-target="#loot-modal"]'); if (lootBtns == null) { alert('未找到Loot按钮'); return; } let lootBtn = lootBtns[Number(t)] lootBtn.click(); tries = 0; retry(claimLoot, 1000); } function claimLoot() { let lootbtn = document.querySelector('#rollit'); if (lootbtn) { document.getElementById('rollmessage').textContent = '当前第' + (count + 1).toString() + '抽'; lootbtn.click(); tries = 0; retry(waitLoot, 1000); } else { retry(claimLoot, 1000); } } function waitLoot() { let lootbtn = document.querySelector("#rollit"); if (lootbtn.textContent.search('Try') != -1) { if (count++ >= LOOT) { console.log('done'); return; }// 10连抽完结束 tries = 0; retry(claimLoot, 1000); } else { retry(waitLoot, 1000); } } function retry(foo, t) { console.log(foo.name); if (tries++ <= MAX) { setTimeout(() => { try { if (document.getElementById('rolltab') == null) { console.log('cancel'); return; } foo(); } catch (e) { console.log(e); throw e; } }, t); } else { console.log('操作超时'); } } }