/* A simple bot for PrimeDice. * Interrupts and restarts autobet after N losses. */ var lastBalance = 0; var lossCount = 0; var t; var state = "none"; function startRolling(balanceId, lossLimit) { $(".btn.btn--primary.btn--huge.btn--block.text--center.mg-1").trigger("click"); console.log("starting this roll"); lastBalance = parseFloat($("#" + balanceId).text()); $("#" + balanceId).bind("DOMSubtreeModified", function(e) { if(state == "none") { state = "eval"; var balance = parseFloat($("#" + balanceId).text()); if(balance < lastBalance) { lossCount += 1; } else { lossCount = 0; } console.log("> balance = " + balance + ", lastBalance = " + lastBalance + "; lossCount = " + lossCount + "; lossLimit = " + lossLimit + "; state = " + state); lastBalance = balance; if(lossCount >= lossLimit) { console.log("stopping this roll"); $(".btn.btn--primary.btn--huge.btn--block.text--center.mg-1").trigger("click"); lossCount = 0; setTimeout(function(){ $(".btn.btn--primary.btn--huge.btn--block.text--center.mg-1").trigger("click"); }, 3000); } state = "none"; e.stopPropagation(); } }); } /* call to run, balance id example 'ember534' */ startRolling("ember534", 5);