您需要先安装一个扩展,例如 篡改猴、Greasemonkey 或 暴力猴,之后才能安装此脚本。
您需要先安装一个扩展,例如 篡改猴 或 暴力猴,之后才能安装此脚本。
您需要先安装一个扩展,例如 篡改猴 或 暴力猴,之后才能安装此脚本。
您需要先安装一个扩展,例如 篡改猴 或 Userscripts ,之后才能安装此脚本。
您需要先安装一款用户脚本管理器扩展,例如 Tampermonkey,才能安装此脚本。
您需要先安装用户脚本管理器扩展后才能安装此脚本。
An exploit that will add useful features!
// ==UserScript== // @name Commodore Clicker Exploit // @namespace https://waa.ai/spinpy // @version 1.5 // @description An exploit that will add useful features! // @author Spinfal // @match http://c64clicker.com/ // @grant none // ==/UserScript== (function() { 'use strict'; const spin = document.createElement('p'); // if you steal my code and change it, youre a big poopie head and no one likes you. spin.innerHTML = '<br><img src="https://www.google.com/s2/favicons?domain=www.spinfal.ga" draggable="false"> Exploit made by <a href="https://waa.ai/spinpy" target="_blank">Spin, aka Spinfal <3</a>'; document.getElementsByClassName('foot')[0].appendChild(spin); function setPrice() { if (localStorage.getItem('c64click.units.0.currPrice') === '16' || localStorage.getItem('ran') === null) { for (let i=0; i < 9; i++) { console.log(`${i} set to 0`); localStorage.setItem(`c64click.units.${i}.currPrice`, 0); } localStorage.setItem('ran', true); window.location.reload(); } } setPrice(); function loadButtons() { const mod = document.createElement('li'); // change pixel amount mod.innerHTML = '<img src="https://www.google.com/s2/favicons?domain=www.spinfal.ga" draggable="false"> Change pixel count'; mod.setAttribute('id', 'option2'); mod.setAttribute('class', 'active'); mod.setAttribute('onclick', "let amount = prompt('new amount'); if (isNaN(parseInt(amount))) { alert('that wasnt a number!'); } else { localStorage.setItem('c64click.bank', parseInt(amount)); localStorage.setItem('c64click.produced', parseInt(amount)); window.location.reload(); }"); document.getElementsByTagName('ul')[3].append(mod); const cps = document.createElement('li'); // change cps amount cps.innerHTML = '<img src="https://www.google.com/s2/favicons?domain=www.spinfal.ga" draggable="false"> Change cps count'; cps.setAttribute('id', 'option3'); cps.setAttribute('class', 'active'); cps.setAttribute('onclick', "let amount = prompt('new amount'); if (isNaN(parseInt(amount))) { alert('that wasnt a number!'); } else { localStorage.setItem('c64click.cps', parseInt(amount)); window.location.reload(); }"); document.getElementsByTagName('ul')[3].append(cps); const power = document.createElement('li'); // change click power power.innerHTML = '<img src="https://www.google.com/s2/favicons?domain=www.spinfal.ga" draggable="false"> Change click power'; power.setAttribute('id', 'option4'); power.setAttribute('class', 'active'); power.setAttribute('onclick', "let amount = prompt('new amount'); if (isNaN(parseInt(amount))) { alert('that wasnt a number!'); } else { localStorage.setItem('c64click.clickPower', parseInt(amount)); window.location.reload(); }"); document.getElementsByTagName('ul')[3].append(power); const load = document.createElement('button'); // reload exploit load.innerText = 'Reload Exploit'; load.setAttribute('onclick', "for (let i=0; i < 9; i++) { console.log(`${i} set to 0`); localStorage.setItem(`c64click.units.${i}.currPrice`, 0); } localStorage.setItem('ran', true); window.location.reload();"); document.getElementsByClassName('status')[0].append(load); const br = document.createElement('br'); // just a br document.getElementsByClassName('status')[0].append(br); const disk = document.createElement('button'); // toggle disk selector disk.innerText = 'Toggle Disk Selection'; disk.setAttribute('onclick', "document.getElementsByTagName('div')[19].classList.toggle('hidden');"); document.getElementsByClassName('status')[0].append(disk); const br2 = document.createElement('br'); // just a br document.getElementsByClassName('status')[0].append(br2); var status = 'off'; var auto; const click = document.createElement('button'); // toggle autoclicker click.innerText = 'Toggle Auto Clicker'; click.setAttribute('onclick', "if (status === '' || status === 'off') { auto = setInterval(function() { document.getElementById('click').click(); }, 0); status = 'on'; } else if (status === 'on') { clearInterval(auto); status = 'off'; }"); document.getElementsByClassName('status')[0].append(click); } setTimeout(function() { loadButtons(); }, 300); })();