最近我在csgojustice上写了一个用于自动投注的用户脚本。这是:
var delay = 10000
var btBet = document.getElementById("make-bet");
var loop = true
var input=document.createElement("input");
input.type="button";
input.value="Start";
input.onclick = start;
input.setAttribute("style", "font-size:18px;position:absolute;top:120px;right:40px;");
document.body.appendChild(input);
var input=document.createElement("input");
input.type="button";
input.value="Stop";
input.onclick = stop;
input.setAttribute("style", "font-size:18px;position:absolute;top:120px;right:130px;");
document.body.appendChild(input);
function start() {
loop = true;
roll();
}
function roll() {
if (loop === true) {
btBet.click();
refreshIntervalId = setInterval(roll2, delay); }
}
function roll2() {
btBet.click();
clearInterval(refreshIntervalId)'
roll()
}
function stop() {
loop = false;
}
当我点击开始按钮时,它开始执行。但是当我单击“停止”按钮时,它仍然会执行。但if (loop === true)
loop
false
时release APK
仍有debug APK
,但不会停止。
答案 0 :(得分:0)
我似乎无法体验您的问题 - 这个脚本对我来说很合适。
但我已经解决了一些问题。
roll2
功能。setTimeout
代替setInterval
,然后您不必每次都清除它clearTimeout
stop
var delay = 1000;
var btBet = document.getElementById("make-bet");
var loop = true;
var input=document.createElement("input");
input.type="button";
input.value="Start";
input.onclick = start;
input.setAttribute("style", "font-size:18px;position:absolute;top:120px;right:40px;");
document.body.appendChild(input);
var input=document.createElement("input");
input.type="button";
input.value="Stop";
input.onclick = stop;
input.setAttribute("style", "font-size:18px;position:absolute;top:120px;right:130px;");
document.body.appendChild(input);
function start() {
loop = true;
roll();
}
function roll() {
if (loop === true) {
console.log("roll");
refreshIntervalId = setTimeout(roll, delay);
}
}
function stop() {
loop = false;
clearTimeout(refreshIntervalId);
}