Reroll to a good corruption!
// ==UserScript==
// @name RECK
// @namespace http://tampermonkey.net
// @match https://melvoridle.com
// @match https://melvoridle.com/*
// @match https://www.melvoridle.com/*
// @match https://test.melvoridle.com/*
// @grant none
// @version 1.02
// @author Gardens#3738
// @description Reroll to a good corruption!
// ==/UserScript==
window.reroll = function(equipmentSlot, rollsLeft = 20, lastMods = "default") {
let cost = getRandomModifierCost(equipmentSlot);
let element = document.getElementById("corruption-equipment-slot-" + equipmentSlot);
// if modding possible
if (rollsLeft > 0 && gp >= cost && equippedItems[equipmentSlot] > 0) {
// let currentText;
// get current mods
if (lastMods == "default")
lastMods = element.innerHTML;
// reroll
getEquipmentCorruption(equipmentSlot);
let modHTML = element.innerHTML;
console.log("modHTML")
console.log(modHTML)
console.log("lastMods")
console.log(lastMods)
console.log();
// if same mods or bad mods, reroll
let goodMod = false;
for (let child of element.children) {
if (child.outerHTML.indexOf("success") != -1 &&
child.innerHTML.toLowerCase().indexOf("movement") == -1 &&
child.innerHTML.toLowerCase().indexOf("stamina") == -1 &&
child.innerHTML.toLowerCase().indexOf("teleportation") == -1 &&
child.innerHTML.toLowerCase().indexOf("update") == -1 &&
child.innerHTML.toLowerCase().indexOf("gang") == -1 &&
child.innerHTML.length > 0) {
goodMod = true;
} else {}
}
if (goodMod == false || modHTML == lastMods) {
setTimeout(() => {
reroll(equipmentSlot, rollsLeft - 1, modHTML)
}, 50);
} else
return;
}
}
window.enableCorruptionReroller = function(retries = 20) {
if (document.getElementById("corruption-equipment-slot-0")) {
for (let i = 0; i < 20; i++) {
let element = document.getElementById("corruption-equipment-slot-" + i);
if (element) {
element.parentElement.parentElement.setAttribute("onclick", `reroll(${i})`)
}
}
console.log("RECK enabled. Reroll away! - Gardens")
} else {
if (retries == 0) {
"RECK: retries ran out. Maybe you're not in Chaos Mode?";
} else {
setTimeout(() => enableCorruptionReroller(retries - 1), 1000);
}
}
}
enableCorruptionReroller();