Untitled
Never
// urun.js (async () => { function y(e, t = {}, ...a) { var o = document.createElement(e); if ("object" == typeof t.style) { let e = ""; for (const i in t.style) e += `${i.replace(/[A-Z]/g,e=>"-"+e.toLowerCase())}: ${t.style[i]}; `; t.style = e } for (const n in t) o[n] = t[n]; for (const r of a) o.append(r); return o } var e, t, a, o, i, n, r, s; console.log("%c Blooket Cheats %c\n\tBy OneMinesraft2#4560", "color: #0bc2cf; font-size: 3rem", "color: #8000ff; font-size: 1rem"), console.log("%c\tgui.js", "color: #0bc2cf; font-size: 1rem"), console.log("%c\tStar the github repo!%c https://github.com/Minesraft2/Blooket-Cheats", "color: #ffd000; font-size: 1rem", ""); const l = { data: null, setItem(e, i) { return e.split(".").reduce((e, t, a, o) => (++a == o.length && (e[t] = i), e[t]), this.data), localStorage.setItem("JODGUISettings", JSON.stringify(this.data)), this.data }, deleteItem(e) { return e.split(".").reduce((e, t, a, o) => (++a == o.length && delete e[t], e[t]), this.data), localStorage.setItem("JODGUISettings", JSON.stringify(this.data)), this.data }, setData(e) { this.data = e, localStorage.setItem("JODGUISettings", JSON.stringify(this.data)) } }; try { l.data = JSON.parse(localStorage.getItem("JODGUISettings") || "{}"); for (const N of ["backgroundColor", "cheatList", "contentBackground", "defaultButton", "disabledButton", "enabledButton", "infoColor", "inputColor", "textColor"]) l.data[N] && (l.setItem("theme." + N, l.data[N]), l.deleteItem(N)) } catch { l.setData({}) } let c, d, p, u, m, h, g, f, w; const b = y("div", { id: "JODGUI", style: { top: Math.max(10, window.innerHeight - 600) / 2 + "px", left: Math.max(10, window.innerWidth - 1e3) / 2 + "px", transform: `scale(${l.data.scale})`, position: "fixed", height: "80%", width: "80%", maxHeight: "600px", maxWidth: "1000px", zIndex: "999", display: "block" } }, c = y("style", { id: "variables", innerHTML: `:root {--backgroundColor: ${l.data?.theme?.backgroundColor||"rgb(11, 194, 207)"};--infoColor: ${l.data?.theme?.infoColor||"#9a49aa"};--cheatList: ${l.data?.theme?.cheatList||"#9a49aa"};--defaultButton: ${l.data?.theme?.defaultButton||"#9a49aa"};--disabledButton: ${l.data?.theme?.disabledButton||"#A02626"};--enabledButton: ${l.data?.theme?.enabledButton||"#47A547"};--textColor: ${l.data?.theme?.textColor||"white"};--inputColor: ${l.data?.theme?.inputColor||"#7a039d"};--contentBackground: ${l.data?.theme?.contentBackground||"rgb(64, 17, 95)"};}` }), y("style", { innerHTML: '.alertList::-webkit-scrollbar{display:none;}.alertList{-ms-overflow-style: none;scrollbar-width: none;}.contentWrapper::-webkit-scrollbar{display:none;}.contentWrapper{-ms-overflow-style: none;scrollbar-width: none;}.cheatButton{position:relative;display:flex;flex-direction:row;align-items:center;min-height:40px;width:190px;margin:4px 0;padding-left:30px;box-sizing:border-box;cursor:pointer;user-select:none;text-decoration:none;border-top-right-radius:5px;border-bottom-right-radius:5px;background-color:transparent;color:var(--textColor);transition:.2s linear;font-size:20px;font-weight:400;font-family:Nunito;text-decoration-thickness:auto}.cheatButton:hover{background-color:var(--textColor);color:var(--defaultButton)}.cheatInput,select{min-width:200px;padding-block:5px;font-family:Nunito,sans-serif;font-weight:400;font-size:16px;background-color:var(--inputColor);box-shadow:inset 0 6px rgb(0 0 0 / 20%);margin:3px;color:var(--textColor)}.bigButton:hover{filter:brightness(110%);transform:translateY(-2px)}.bigButton:active{transform:translateY(2px)}.cheatList::-webkit-scrollbar{width:10px}.cheatList::-webkit-scrollbar-track{background:var(--cheatList)}.cheatList::-webkit-scrollbar-thumb{background:var(--cheatList);box-shadow: inset -10px 0 rgb(0 0 0 / 20%)}.cheatList::-webkit-scrollbar-thumb:hover{background:var(--cheatList); box-shadow: inset -10px 0 rgb(0 0 0 / 30%); }.scriptButton:hover{filter:brightness(120%)}.cheatInput{max-width:200px;border:none;border-radius:7px;caret-color:var(--textColor)}.cheatInput::placeholder{color:var(--textColor)}.cheatInput:focus,select:focus{outline:0}.cheatInput::-webkit-inner-spin-button,.cheatInput::-webkit-outer-spin-button{-webkit-appearance:none;margin:0}.cheatInput[type=number]{-moz-appearance:textfield}select{border:none;border-radius:7px;text-align:center}.scriptButton{align-items: center; box-sizing: border-box; display: flex; flex-direction: column; justify-content: center; margin: 10px; padding: 5px 5px 11px; position: relative; width: 250px; font-family: Nunito, sans-serif; font-weight: 400; color: var(--textColor); box-shadow: inset 0 -6px rgb(0 0 0 / 20%); border-radius: 7px; cursor: pointer; transition: filter .25s;}.tooltip::after {content: "";position: absolute;width: 10px;height: 10px;background-color: inherit;top: -5px;left: 50%;margin-left: -6px;transform: rotate(135deg)}' }), d = y("div", { style: { width: "100%", height: "100%", position: "relative", outline: "3px solid #3a3a3a", borderRadius: "15px", overflow: "hidden" } }, y("div", { id: "background", style: { display: "block", top: "0", left: "0", height: "100%", overflowY: "hidden", overflowX: "hidden", position: "absolute", width: "100%", background: "var(--backgroundColor)", visibility: "visible" } }, y("div", { id: "backgroundImage", style: { backgroundImage: "url(https://ac.blooket.com/dashboard/65a43218fd1cabe52bdf1cda34613e9e.png)", display: "block", height: "200%", position: "absolute", width: "200%", top: "50%", left: "50%", backgroundPositionX: "-100px", backgroundPositionY: "-100px", backgroundSize: "550px", visibility: "visible", transform: "translate(-50%,-50%) rotate(15deg)", appearance: "none", opacity: "0.175" } })), u = y("div", { id: "controls", style: { display: "flex", alignItems: "center", justifyContent: "center", paddingBottom: "8px", paddingInline: "15px", position: "absolute", left: "220px", top: "0", visibility: "visible", zIndex: "5", height: "52px", width: "max-content", background: "var(--infoColor)", boxShadow: "inset 0 -8px rgb(0 0 0 / 20%), 0 0 4px rgb(0 0 0 / 15%)", borderBottomRightRadius: "10px", color: "var(--textColor)", fontFamily: "Nunito, sans-serif", fontWeight: "700", userSelect: "text" }, innerText: ([{ ctrl: e, shift: t, alt: a, key: o }, { ctrl: i, shift: n, alt: r, key: s }] = [l.data.hide || { ctrl: !0, key: "e" }, l.data.close || { ctrl: !0, key: "x" }], `${[e&&"Ctrl",t&&"Shift",a&&"Alt",o&&o.toUpperCase()].filter(Boolean).join(" + ")} to hide | ${[i&&"Ctrl",n&&"Shift",r&&"Alt",s&&s.toUpperCase()].filter(Boolean).join(" + ")} for quick disable\nClick and drag here`), update: ({ ctrl: e, shift: t, alt: a, key: o } = { ctrl: !0, key: "e" }, { ctrl: i, shift: n, alt: r, key: s } = { ctrl: !0, key: "x" }) => u.innerText = `${[e&&"Ctrl",t&&"Shift",a&&"Alt",o&&o.toUpperCase()].filter(Boolean).join(" + ")} to hide | ${[i&&"Ctrl",n&&"Shift",r&&"Alt",s&&s.toUpperCase()].filter(Boolean).join(" + ")} for quick disable\nClick and drag here` }), y("div", { id: "credits", style: { display: "flex", alignItems: "center", justifyContent: "center", paddingBottom: "8px", position: "absolute", right: "0", top: "0", visibility: "visible", zIndex: "5", height: "47px", width: "280px", background: "var(--infoColor)", boxShadow: "inset 0 -8px rgb(0 0 0 / 20%), 0 0 4px rgb(0 0 0 / 15%)", borderBottomLeftRadius: "10px", color: "var(--textColor)", fontFamily: "Nunito, sans-serif", fontWeight: "700", userSelect: "text" }, innerHTML: "Created by OneMinesraft2#4560" }), m = y("div", { id: "controlButtons", style: { display: "flex", alignItems: "center", justifyContent: "center", position: "absolute", right: "0", bottom: "0", visibility: "visible", zIndex: "5", height: "55px", width: "165px", background: "#none", borderLeft: "3px solid black", borderTop: "3px solid black", borderTopLeftRadius: "10px", color: "white", fontFamily: "Nunito, sans-serif", fontWeight: "700", userSelect: "text", overflow: "hidden", pointerEvents: "all" } }, h = y("button", { style: { height: "55px", width: "55px", fontFamily: "Nunito", color: "white", backgroundColor: "#00a0ff", border: "none", fontSize: "2rem", cursor: "move" }, innerHTML: "✥" }), y("button", { style: { height: "55px", width: "55px", fontFamily: "Nunito", color: "white", backgroundColor: "grey", border: "none", fontSize: "2rem", fontWeight: "bolder", cursor: "pointer" }, innerHTML: "-", onclick: function () { let t = !1; return () => { for (var e of [...d.children]) e != m && (t ? e.style.display = e.style._display : (e.style._display = e.style.display, e.style.display = "none")); d.style.height = t ? "100%" : "55px", d.style.width = t ? "100%" : "165px", b.style.top = parseInt(b.style.top) + (b.offsetHeight - 55) * (t ? -1 : 1) + "px", b.style.left = parseInt(b.style.left) + (b.offsetWidth - 165) * (t ? -1 : 1) + "px", b.style.pointerEvents = t ? "unset" : "none", t = !t } }() }), y("button", { style: { height: "55px", width: "55px", fontFamily: "Nunito", color: "white", backgroundColor: "red", border: "none", fontSize: "2rem", fontWeight: "bolder", cursor: "pointer" }, innerHTML: "X", onclick: j })), p = y("div", { className: "cheatList", style: { overflowY: "scroll", background: "var(--cheatList)", boxShadow: "inset -10px 0 rgb(0 0 0 / 20%)", zIndex: "5", width: "220px", position: "absolute", top: "0", left: "0", height: "100%", fontFamily: "Titan One", color: "var(--textColor)", fontSize: "40px", textAlign: "center", paddingTop: "20px", userSelect: "none", padding: "20px 10px 20px 0", boxSizing: "border-box", display: "flex", flexDirection: "column" }, innerHTML: '<span style="text-shadow: 1px 1px rgb(0 0 0 / 40%)">Cheats</span>' }, y("a", { className: "bigButton", style: { cursor: "pointer", display: "block", fontFamily: "Titan One", margin: "20px auto 10px", position: "relative", transition: ".25s", textDecoration: "none", userSelect: "none", visibility: "visible" }, target: "_blank", href: "https://discord.gg/QznzysxvX4", innerHTML: `<div style="background: rgba(0,0,0,.25); border-radius: 5px; display: block; width: 100%; height: 100%; left: 0; top: 0; position: absolute; transform: translateY(2px); width: 100%; transition: transform .6s cubic-bezier(.3,.7,.4,1)"></div>\n <div style="background-color: rgb(11, 194, 207); filter: brightness(.7); position: absolute; top: 0; left: 0; width: 100%; height: 100%; border-radius: 5px;"></div>\n <div style="font-weight: 400; background-color: rgb(11, 194, 207); color: white; display: flex; flex-direction: row; align-items: center; justify-content: center; text-align: center; padding: 5px; border-radius: 5px; transform: translateY(-4px); transition: transform .6s cubic-bezier(.3,.7,.4,1)">\n <div style="font-family: Titan One, sans-serif; color: white; font-size: 26px; text-shadow: 2px 2px rgb(0 0 0 / 20%); height: 40px; padding: 0 15px; display: flex; flex-direction: row; align-items: center; justify-content: center">\n <svg style="filter: drop-shadow(2px 2px 0 rgb(0 0 0 / 20%))" xmlns="http://www.w3.org/2000/svg" width="35" height="35" fill="currentColor" viewBox="0 -1 21 16">\n <path d="M13.545 2.907a13.227 13.227 0 0 0-3.257-1.011.05.05 0 0 0-.052.025c-.141.25-.297.577-.406.833a12.19 12.19 0 0 0-3.658 0 8.258 8.258 0 0 0-.412-.833.051.051 0 0 0-.052-.025c-1.125.194-2.22.534-3.257 1.011a.041.041 0 0 0-.021.018C.356 6.024-.213 9.047.066 12.032c.001.014.01.028.021.037a13.276 13.276 0 0 0 3.995 2.02.05.05 0 0 0 .056-.019c.308-.42.582-.863.818-1.329a.05.05 0 0 0-.01-.059.051.051 0 0 0-.018-.011 8.875 8.875 0 0 1-1.248-.595.05.05 0 0 1-.02-.066.051.051 0 0 1 .015-.019c.084-.063.168-.129.248-.195a.05.05 0 0 1 .051-.007c2.619 1.196 5.454 1.196 8.041 0a.052.052 0 0 1 .053.007c.08.066.164.132.248.195a.051.051 0 0 1-.004.085 8.254 8.254 0 0 1-1.249.594.05.05 0 0 0-.03.03.052.052 0 0 0 .003.041c.24.465.515.909.817 1.329a.05.05 0 0 0 .056.019 13.235 13.235 0 0 0 4.001-2.02.049.049 0 0 0 .021-.037c.334-3.451-.559-6.449-2.366-9.106a.034.034 0 0 0-.02-.019Zm-8.198 7.307c-.789 0-1.438-.724-1.438-1.612 0-.889.637-1.613 1.438-1.613.807 0 1.45.73 1.438 1.613 0 .888-.637 1.612-1.438 1.612Zm5.316 0c-.788 0-1.438-.724-1.438-1.612 0-.889.637-1.613 1.438-1.613.807 0 1.451.73 1.438 1.613 0 .888-.631 1.612-1.438 1.612Z"/>\n </svg>\n Discord\n </div>\n </div>` })), y("div", { className: "contentWrapper", style: { position: "absolute", left: "220px", top: "70px", overflowY: "scroll", width: "calc(100% - 220px)", height: "calc(100% - 70px)", borderRadius: "7px" } }, y("div", { id: "content", style: { position: "absolute", inset: "27px 50px 50px 50px" } }, g = y("div", { className: "tooltip", style: { position: "absolute", top: "0", left: "0", backgroundColor: "black", height: "fit-content", maxWidth: "300px", zIndex: "5", borderRadius: "7.5px", color: "white", display: "flex", justifyContent: "center", alignItems: "center", padding: "5px", paddingInline: "15px", pointerEvents: "none", opacity: "0", textAlign: "center" }, innerText: "description" }), f = y("div", { style: { alignItems: "center", boxSizing: "border-box", display: "flex", flexDirection: "row", flexWrap: "wrap", justifyContent: "space-evenly", padding: "20px 5px 20px", position: "relative", width: "100%", fontFamily: "Nunito, sans-serif", fontWeight: "400", color: "var(--textColor)", background: "var(--contentBackground)", boxShadow: "inset 0 -6px rgb(0 0 0 / 20%)", borderRadius: "7px" } }, w = y("div", { className: "headerText", style: { boxSizing: "border-box", display: "block", height: "45px", left: "-10px", padding: "4px 4px 8px", position: "absolute", top: "-28px", backgroundColor: "#ef7426", boxShadow: "0 4px rgb(0 0 0 / 20%), inset 0 -4px rgb(0 0 0 / 20%)", borderRadius: "7px" } }, y("div", { style: { alignItems: "center", boxSizing: "border-box", display: "flex", height: "100%", justifyContent: "center", padding: "0 15px", width: "100%", fontFamily: "Titan One, sans-serif", fontSize: "26px", fontWeight: "400", textShadow: "-1px -1px 0 #646464, 1px -1px 0 #646464, -1px 1px 0 #646464, 2px 2px 0 #646464", color: "white", background: "linear-gradient(#fcd843,#fcd843 50%,#feb31a 50.01%,#feb31a)", borderRadius: "5px" } }))))))); for (const T of document.querySelectorAll("#JODGUI")) T.remove(); function v(e, t, a, o) { const i = y("div", { className: "cheatButton", innerHTML: ("string" == typeof t ? `<img style="height: 30px; margin-right: 5px" src="${t}">` : t || "") + e, onclick: () => k(i.innerText, a, o) }); return p.appendChild(i), i.onclick } async function k(e, l, t) { f.innerHTML = "", w.firstChild.innerText = e + (t ? "" : " Cheats"), f.append(w); for (let s = 0; s < l.length; s++) { let { name: e, description: t, type: a, inputs: o, enabled: i, run: n, element: r } = l[s]; if (!r) { const g = y("div", { className: "scriptButton", style: { background: "toggle" == a ? i ? "var(--enabledButton)" : "var(--disabledButton)" : "var(--defaultButton)" } }, y("div", { className: "cheatName", innerHTML: e })); if (g.dataset.description = t, g.onclick = function ({ target: e, key: t }) { (e == g || e.classList.contains("cheatName") || "Enter" == t && e.classList.contains("cheatInput")) && (t = [...g.children].slice(1), n.apply(this, t.map(e => "number" == e.type ? parseInt("0" + e.value) : "SELECT" == e.nodeName ? JSON.parse(e.value) : e.data || e.value)), "toggle" == a && (g.style.background = this.enabled ? "var(--enabledButton)" : "var(--disabledButton)"), x.alerts?.[0].addLog(`${"toggle"==a?this.enabled?"Enabled":"Disabled":"Ran"} <strong>${this.name}</strong>` + (o?.length ? ` with inputs: (${t.map(e=>"SELECT"==e.nodeName?e.selectedOptions[0].innerText:e.value).join(", ")})` : ""), "toggle" == a ? this.enabled ? "var(--enabledButton)" : "var(--disabledButton)" : null)) }.bind(l[s]), o?.length) for (let t = 0; t < o.length; t++) { var { name: c, type: d, options: p, min: u, max: m, value: h } = o[t]; let e; try { e = await ("function" == typeof p ? p?.() : p) } catch { e = [] } if ("options" == d && e?.length) { const b = document.createElement("select"); e.forEach(e => { var t = document.createElement("option"); t.value = JSON.stringify(e?.value || e), t.innerHTML = e?.name || e, b.appendChild(t) }), g.appendChild(b) } else if ("function" == d) { const v = document.createElement("input"); v.classList.add("cheatInput"), v.placeholder = c, v.style.textAlign = "center"; let e = !(v.readOnly = !0); v.onclick = async () => { e || (v.value = "Waiting for input...", e = !0, v.data = await o[t].function(e => v.value = e + "..."), e = !1, v.value = v.value.slice(0, -3)) }, g.appendChild(v) } else { p = document.createElement("input"); p.classList.add("cheatInput"), "number" == d && (p.type = "number", p.min = u, p.max = m, p.value = h || (null != u ? u : 0)), p.placeholder = c, p.style.textAlign = "center", p.onkeyup = g.onclick, g.appendChild(p) } } l[s].element = g } f.appendChild(l[s].element) } } document.body.appendChild(b); const x = { global: [{ name: "Auto Answer (Toggle)", description: "Toggles auto answer on", type: "toggle", enabled: !1, data: null, run: function () { this.enabled ? (this.enabled = !1, clearInterval(this.data), this.data = null) : (this.enabled = !0, this.data = setInterval(() => { var { state: { question: e, stage: t, feedback: a }, props: { client: { question: o } } } = Object.values(document.querySelector("body > div > div > div"))[1].children[0]._owner["stateNode"]; const i = e || o; try { "typing" != i.qType ? ("feedback" === t || a ? document.querySelector('[class*="feedback"]')?.firstChild : [...document.querySelectorAll('[class*="answerContainer"]')][i.answers.map((e, t) => i.correctAnswers.includes(e) ? t : null).filter(e => null != e)[0]])?.click?.() : Object.values(document.querySelector("[class*='typingAnswerWrapper']"))[1].children._owner.stateNode.sendAnswer(i.answers[0]) } catch {} }, 50)) } }, { name: "Highlight Answers (Toggle)", description: "Toggles highlight answers on", type: "toggle", enabled: !1, data: null, run: function () { this.enabled ? (this.enabled = !1, clearInterval(this.data), this.data = null) : (this.enabled = !0, this.data = setInterval(() => { const { state: a, props: o } = Object.values(document.querySelector("body > div > div > div"))[1].children[0]._owner["stateNode"]; [...document.querySelectorAll('[class*="answerContainer"]')].forEach((e, t) => { (a.question || o.client.question).correctAnswers.includes((a.question || o.client.question).answers[t]) ? e.style.backgroundColor = "rgb(0, 207, 119)" : e.style.backgroundColor = "rgb(189, 15, 38)" }) }, 50)) } }, { name: "Auto Sell Dupes On Open", description: "Sells the blook you unlock when you open a pack if you already have one (Doesn't sell Legendaries or rarer)", type: "toggle", enabled: !1, data: null, run: function () { if (this.enabled) this.enabled = !1, window.fetch = this.data; else { this.enabled = !0; let e = webpackJsonp.push([ [], { [1234]: (e, t, a) => { t.webpack = a } }, [ ["1234"] ] ])["webpack"], o = Object.values(e.c).find(e => e.exports.a?.sellBlook).exports.a["sellBlook"], i = webpackJsonp.push([ [], { rarity: (e, t, a) => { t.rarity = e => a("MDrD").a[e].rarity } }, [ ["rarity"] ] ])["rarity"], n = Object.values(e.c).find(e => e.exports?.a?.get).exports.a; this.data = window.fetch, window._fetch ||= window.fetch, window.fetch = async function (e, t) { const a = await _fetch(e, t); return e.endsWith("PurchaseBlookBox") ? await new Promise(e => { a.clone().text().then(async e => { try { var t = e.match(/[a-z A-Z]/g).join(""), { unlocks: a } = (await n.get("https://dashboard.blooket.com/api/users"))["data"]; a[t] && !["Legendary", "Chroma", "Mystical"].includes(i(t)) && (await o({ blook: t, numToSell: 1 }), console.info("Sold duplicate " + t)) } catch {} }), e(a) }) : a } } } }, { name: "Auto Answer", description: "Click the correct answer for you", run: function () { const { state: { question: a, stage: e, feedback: t }, props: { client: { question: o } } } = Object.values(document.querySelector("body > div > div > div"))[1].children[0]._owner["stateNode"]; try { "typing" != a.qType ? ("feedback" === e || t ? document.querySelector('[class*="feedback"]')?.firstChild : [...document.querySelectorAll('[class*="answerContainer"]')][(a || o).answers.map((e, t) => (a || o).correctAnswers.includes(e) ? t : null).filter(e => null != e)[0]])?.click?.() : Object.values(document.querySelector("[class*='typingAnswerWrapper']"))[1].children._owner.stateNode.sendAnswer(a.answers[0]) } catch {} } }, { name: "Spam Buy Blooks", description: "Opens a box an amount of times", inputs: [{ name: "Box", type: "options", options: () => new Promise(e => { e(Object.keys(Object.values(webpackJsonp.push([ [], { [1234]: (e, t, a) => { t.webpack = a } }, [ ["1234"] ] ]).webpack.c).find(e => !isNaN(e?.exports?.a?.Space)).exports.a || {})) }) }, { name: "Amount", type: "number" }], run: function (a, o) { var e = document.createElement("iframe"); document.body.append(e), window.alert = e.contentWindow.alert.bind(window), window.prompt = e.contentWindow.prompt.bind(window), window.confirm = e.contentWindow.confirm.bind(window), e.remove(); let i = webpackJsonp.push([ [], { [1234]: (e, t, a) => { t.webpack = a } }, [ ["1234"] ] ])["webpack"], t = Object.values(i.c).find(e => e.exports?.a?.get).exports.a, c = Object.values(i.c).find(e => e.exports.a?.purchaseBlookBox).exports.a["purchaseBlookBox"]; a = a.split(" ").map(e => e.charAt(0).toUpperCase() + e.slice(1).toLowerCase()).join(" "), t.get("https://dashboard.blooket.com/api/users").then(async ({ data: { tokens: e } }) => { var t = Object.values(i.c).find(e => !isNaN(e?.exports?.a?.Space)).exports.a || { Medieval: 20, Breakfast: 20, Wonderland: 20, Blizzard: 25, Space: 20, Bot: 20, Aquatic: 20, Safari: 20, Dino: 25, "Ice Monster": 25, Outback: 25 }; let l = Math.min(Math.floor(e / t[a]), o); if (0 == l) 0 < o && alert("You do not have enough tokens!"); else { let n = confirm("Would you like to alert blooks upon unlocking?"), r = {}, s = Date.now(), t = !1; for (let i = 0; i < l && (await c({ boxName: a }).then(({ isNewToUser: e, tokens: t, unlockedBlook: a }) => { r[a] ||= 0, r[a]++; var o = Date.now(); n && alert(`${a} (${i+1}/${l}) ${e?"NEW! ":""}${t} tokens left`), s += Date.now() - o }).catch(e => t = !0), !t); i++); alert(`(${Date.now()-s}ms) Results:\n` + Object.entries(r).map(([e, t]) => ` ${e} ` + t).join(`\n`)) } }).catch(() => alert("There was an error user data!")) } }, { name: "Flood Game", description: "Floods a game with a number of fake accounts", inputs: [{ name: "Game ID", type: "string" }, { name: "Name", type: "string" }, { name: "Amount", type: "number" }, { name: "Blook", type: "options", options: async () => { var e = webpackJsonp.push([ [], { [1234]: (e, t, a) => { t.webpack = a } }, [ ["1234"] ] ])["webpack"]; return Object.keys(Object.values(e.c).find(e => e.exports.a?.Chick && e.exports.a?.Elephant).exports.a) } }, { name: "Banner", type: "options", options: Object.entries({ Starter: "starter", Chalkboard: "chalkboard", Slime: "slime", Bookshelf: "bookshelf", "Toaster Pastry": "toasterPastry", Theater: "theater", Sushi: "sushi", Workbench: "workbench", Spooky: "spooky", Spiders: "spiders", Coffin: "coffin", Pumpkins: "pumpkins", "Falling Blocks": "fallingBlocks", Racetrack: "racetrack", Harvest: "harvest", Leaves: "leaves", "Fall Picnic": "fallPicnic", "Winter Drive": "winterDrive", "Winter Train": "winterTrain", Ice: "ice", Gifts: "gifts", "Christmas Tree": "christmasTree", "Soccer Field": "soccerField", "Winter Landscape": "winterLandscape", "Football Field": "footballField", "Outer Space": "outerSpace", "Hockey Rink": "hockeyRink", "Music Class": "musicClass", "Ice Cream Sandwich": "iceCreamSandwich", "Science Class": "scienceClass", "Fish Tank": "fishTank", "Art Class": "artClass", Clockwork: "clockwork", "Love Letter": "loveLetter", Farm: "farm", Chocolate: "chocolate", "Tech Chip": "techChip", Fire: "fire", "Orange Ice Pop": "orangeIcePop" }).map(([e, t]) => ({ name: e, value: t })) }], run: async function (i, n, e, r, s) { var t = webpackJsonp.push([ [], { [1234]: (e, t, a) => { t.webpack = a } }, [ ["1234"] ] ])["webpack"]; const l = Object.values(t.c).find(e => e.exports?.a?.get).exports.a, c = Object.values(t.c).find(e => e.exports?.a?.initializeApp).exports.a; for (let o = 1; o <= e; o++)(async () => { var { success: e, fbToken: t, fbShardURL: a } = (await l.put("https://fb.blooket.com/c/firebase/join", { id: i, name: "" + n + o }))["data"]; e && (e = c.initializeApp({ apiKey: "AIzaSyCA-cTOnX19f6LFnDVVsHXya3k6ByP_MnU", authDomain: "blooket-2020.firebaseapp.com", projectId: "blooket-2020", storageBucket: "blooket-2020.appspot.com", messagingSenderId: "741533559105", appId: "1:741533559105:web:b8cbb10e6123f2913519c0", measurementId: "G-S3H5NGN10Z", databaseURL: a }, "" + n + o), await (a = c.auth(e)).setPersistence(c.auth.Auth.Persistence.NONE).catch(console.error), await a.signInWithCustomToken(t).catch(console.error), await e.database().ref(i + "/c/" + n + o).set({ b: r, bg: s }), e.delete()) })(), await new Promise(e => setTimeout(e, 100)) } }, { name: "Get Daily Rewards", description: "Gets max daily tokens and xp", run: function () { var a, e = document.createElement("iframe"); document.body.append(e), window.alert = e.contentWindow.alert.bind(window), e.remove(), location.href.includes("play.blooket.com") ? (a = Object.values(webpackJsonp.push([ [], { "": (e, t, a) => { t.cache = a.c } }, [ [""] ] ]).cache).find(e => e.exports?.a?.get).exports.a).post("https://play.blooket.com/api/playersessions/solo", { gameMode: "Factory" }).then(({ data: { t } }) => { a.get("https://play.blooket.com/api/users/me").then(({ data: { name: e } }) => { a.put("https://play.blooket.com/api/users/add-rewards", { t: t, name: e, addedTokens: 500, addedXp: 300 }).then(({ data: { dailyReward: e } }) => alert(`Added max tokens and xp, and got ${e} daily wheel tokens!`)).catch(() => alert("There was an error when adding rewards.")) }).catch(() => alert("There was an error user data.")) }) : (alert("This cheat only works on play.blooket.com, opening a new tab."), window.open("https://play.blooket.com/")) } }, { name: "Use Any Blook", description: "Allows you to play as any blook", run: function () { const a = Object.values(document.querySelector("body > div > div > div"))[1].children[0]._owner["stateNode"]; var e = webpackJsonp.push([ [], { [1234]: (e, t, a) => { t.webpack = a } }, [ ["1234"] ] ]).webpack("MDrD").a; "/blooks" == location.pathname ? a.setState({ blookData: Object.keys(e).reduce((e, t) => (e[t] = a.state.blookData[t] || 1, e), {}), allSets: Object.values(e).reduce((e, t) => e.includes(t.set) ? e : e.concat(t.set), []) }) : Array.isArray(a.state.unlocks) ? a.setState({ unlocks: Object.keys(e) }) : a.setState({ unlocks: e }) } }, { name: "Every Answer Correct", description: "Sets every answer to be correct", run: function () { var e = Object.values(document.querySelector("body > div > div > div"))[1].children[0]._owner["stateNode"]; e.freeQuestions = e.questions = e.props.client.questions.map(e => ({ ...e, correctAnswers: e.answers })) } }, { name: "Highlight Answers", description: "Colors answers to be red or green highlighting the correct ones", run: function () { const { state: a, props: o } = Object.values(document.querySelector("body > div > div > div"))[1].children[0]._owner["stateNode"]; [...document.querySelectorAll('[class*="answerContainer"]')].forEach((e, t) => { (a.question || o.client.question).correctAnswers.includes((a.question || o.client.question).answers[t]) ? e.style.backgroundColor = "rgb(0, 207, 119)" : e.style.backgroundColor = "rgb(189, 15, 38)" }) } }, { name: "Remove Name Limit", description: "Sets the name limit to 120, which is the actual max name length limit", run: function () { var e = document.createElement("iframe"); document.body.append(e), window.alert = e.contentWindow.alert.bind(window), e.remove(), document.querySelector('input[class*="nameInput"]').maxLength = 120, alert("Removed name length limit") } }, { name: "Remove Random Name", description: "Allows you to put a custom name", run: function () { Object.values(document.querySelector("body > div > div > div"))[1].children[0]._owner.stateNode.setState({ isRandom: !1, client: { name: "" } }), document.querySelector('[class*="nameInput"]')?.focus?.() } }, { name: "Sell Cheap Duplicates", description: "Sells all of your uncommon to epic dupes (not legendaries+)", run: function () { var e = document.createElement("iframe"); document.body.append(e), window.alert = e.contentWindow.alert.bind(window), window.confirm = e.contentWindow.confirm.bind(window), e.remove(); let t = webpackJsonp.push([ [], { [1234]: (e, t, a) => { t.webpack = a } }, [ ["1234"] ] ])["webpack"], a = Object.values(t.c).find(e => e.exports?.a?.get).exports.a, i = Object.values(t.c).find(e => e.exports.a?.sellBlook).exports.a["sellBlook"]; a.get("https://dashboard.blooket.com/api/users").then(async ({ data: { unlocks: e } }) => { e = Object.entries(e).filter(([e, t]) => 1 < t && !["Legendary", "Chroma", "Mystical"].includes(webpackJsonp.push([ [], { [1234]: (e, t, a) => { t.webpack = a } }, [ ["1234"] ] ]).webpack("MDrD").a[e].rarity)); if (confirm("Are you sure you want to sell your uncommon to epic dupes?")) { var t, a, o = Date.now(); for ([t, a] of e) await i({ blook: t, numToSell: a - 1 }); alert(`(${Date.now()-o}ms) Results:\n` + e.map(([e, t]) => ` ${e} ` + (t - 1)).join(`\n`)) } }).catch(() => alert("There was an error user data!")) } }, { name: "Sell Duplicate Blooks", description: "Sell all duplicate blooks leaving you with 1 each", run: function () { var e = document.createElement("iframe"); document.body.append(e), window.alert = e.contentWindow.alert.bind(window), window.confirm = e.contentWindow.confirm.bind(window), e.remove(); let t = webpackJsonp.push([ [], { [1234]: (e, t, a) => { t.webpack = a } }, [ ["1234"] ] ])["webpack"], a = Object.values(t.c).find(e => e.exports?.a?.get).exports.a, i = Object.values(t.c).find(e => e.exports.a?.sellBlook).exports.a["sellBlook"]; a.get("https://dashboard.blooket.com/api/users").then(async ({ data: { unlocks: e } }) => { e = Object.entries(e).filter(e => 1 < e[1]); if (confirm("Are you sure you want to sell your dupes?")) { var t, a, o = Date.now(); for ([t, a] of e) await i({ blook: t, numToSell: a - 1 }); alert(`(${Date.now()-o}ms) Results:\n` + e.map(([e, t]) => ` ${e} ` + (t - 1)).join(`\n`)) } }).catch(e => (alert("There was an error user data!"), console.info(e))) } }, { name: "Simulate Pack", description: "Simulate opening a pack", inputs: [{ name: "Pack", type: "options", options: async () => Array.from(document.querySelectorAll('[class*="packShadow"]')).map(e => e.alt) }], run: function () { try { let m = webpackJsonp.push([ [], { [1234]: (e, t, a) => { t.webpack = a } }, [ ["1234"] ] ])["webpack"], e = Object.values(m.c), t = e.find(e => e.exports?.a?.Chick?.set).exports.a, o = e.find(e => e.exports.a?.Breakfast).exports.a, i = (Object.entries(t).reduce((e, [t, a]) => (o[a.realSet || a.set] && (e[t] = a), e), {}), Object.values(m.c).find(e => e.exports?.Class).exports), h = {}; class r extends i.Scene { constructor(e) { super(), this.rarity = e.toLowerCase() } preload() { switch (this.rarity) { case "uncommon": this.load.svg("uncommon-1", "https://media.blooket.com/image/upload/v1658567787/Media/market/particles/square_green.svg", { width: 25, height: 25 }), this.load.svg("uncommon-2", "https://media.blooket.com/image/upload/v1658567787/Media/market/particles/square_light_green.svg", { width: 25, height: 25 }), this.load.svg("uncommon-3", "https://media.blooket.com/image/upload/v1658567785/Media/market/particles/circle_dark_green.svg", { width: 25, height: 25 }), this.load.svg("uncommon-4", "https://media.blooket.com/image/upload/v1658567785/Media/market/particles/serpentine_dark_green.svg", { width: 30, height: 30 }), this.load.svg("uncommon-5", "https://media.blooket.com/image/upload/v1658567785/Media/market/particles/triangle_light_green.svg", { width: 30, height: 30 }), this.load.svg("uncommon-6", "https://media.blooket.com/image/upload/v1658567785/Media/market/particles/serpentine_light_green.svg", { width: 30, height: 30 }), this.load.svg("uncommon-7", "https://media.blooket.com/image/upload/v1658567785/Media/market/particles/triangle_green.svg", { width: 30, height: 30 }); break; case "rare": this.load.svg("rare-1", "https://media.blooket.com/image/upload/v1658567765/Media/market/particles/square_light_blue.svg", { width: 25, height: 25 }), this.load.svg("rare-2", "https://media.blooket.com/image/upload/v1658567765/Media/market/particles/square_dark_blue.svg", { width: 25, height: 25 }), this.load.svg("rare-3", "https://media.blooket.com/image/upload/v1658567763/Media/market/particles/triangle_blue.svg", { width: 30, height: 30 }), this.load.svg("rare-4", "https://media.blooket.com/image/upload/v1658567763/Media/market/particles/serpentine_blue.svg", { width: 30, height: 30 }), this.load.svg("rare-5", "https://media.blooket.com/image/upload/v1658567763/Media/market/particles/triangle_light_blue.svg", { width: 30, height: 30 }), this.load.svg("rare-6", "https://media.blooket.com/image/upload/v1658567763/Media/market/particles/serpentine_light_blue.svg", { width: 30, height: 30 }), this.load.svg("rare-7", "https://media.blooket.com/image/upload/v1658567763/Media/market/particles/circle_dark_blue.svg", { width: 25, height: 25 }); break; case "epic": this.load.svg("epic-1", "https://media.blooket.com/image/upload/v1658790239/Media/market/particles/red.svg", { width: 25, height: 25 }), this.load.svg("epic-2", "https://media.blooket.com/image/upload/v1658790237/Media/market/particles/light_red.svg", { width: 25, height: 25 }), this.load.svg("epic-3", "https://media.blooket.com/image/upload/v1658790239/Media/market/particles/serpentine_red.svg", { width: 30, height: 30 }), this.load.svg("epic-4", "https://media.blooket.com/image/upload/v1658790239/Media/market/particles/serpentine_dark_red.svg", { width: 30, height: 30 }), this.load.svg("epic-5", "https://media.blooket.com/image/upload/v1658790237/Media/market/particles/triangle_red.svg", { width: 30, height: 30 }), this.load.svg("epic-6", "https://media.blooket.com/image/upload/v1658790237/Media/market/particles/triangle_light_red.svg", { width: 30, height: 30 }), this.load.svg("epic-7", "https://media.blooket.com/image/upload/v1658790237/Media/market/particles/circle_dark_red.svg", { width: 25, height: 25 }); break; case "legendary": this.load.svg("legendary-1", "https://media.blooket.com/image/upload/v1658567740/Media/market/particles/square_orange.svg", { width: 25, height: 25 }), this.load.svg("legendary-2", "https://media.blooket.com/image/upload/v1658567740/Media/market/particles/square_light_orange.svg", { width: 25, height: 25 }), this.load.svg("legendary-3", "https://media.blooket.com/image/upload/v1658567738/Media/market/particles/circle_orange.svg", { width: 25, height: 25 }), this.load.svg("legendary-4", "https://media.blooket.com/image/upload/v1658567738/Media/market/particles/serpentine_orange.svg", { width: 30, height: 30 }), this.load.svg("legendary-5", "https://media.blooket.com/image/upload/v1658567738/Media/market/particles/serpentine_light_orange.svg", { width: 30, height: 30 }), this.load.svg("legendary-6", "https://media.blooket.com/image/upload/v1658567738/Media/market/particles/circle_dark_orange.svg", { width: 25, height: 25 }), this.load.svg("legendary-7", "https://media.blooket.com/image/upload/v1658567738/Media/market/particles/triangle_dark_orange.svg", { width: 30, height: 30 }); break; case "chroma": this.load.svg("chroma-1", "https://media.blooket.com/image/upload/v1658790246/Media/market/particles/square_turquoise.svg", { width: 25, height: 25 }), this.load.svg("chroma-2", "https://media.blooket.com/image/upload/v1658790246/Media/market/particles/square_light_turquoise.svg", { width: 25, height: 25 }), this.load.svg("chroma-3", "https://media.blooket.com/image/upload/v1658790244/Media/market/particles/serpentine_dark_turquoise.svg", { width: 30, height: 30 }), this.load.svg("chroma-4", "https://media.blooket.com/image/upload/v1658790244/Media/market/particles/serpentine_turquoise.svg", { width: 30, height: 30 }), this.load.svg("chroma-5", "https://media.blooket.com/image/upload/v1658790244/Media/market/particles/triangle_turquoise.svg", { width: 30, height: 30 }), this.load.svg("chroma-6", "https://media.blooket.com/image/upload/v1658790244/Media/market/particles/triangle_light_turquoise.svg", { width: 30, height: 30 }), this.load.svg("chroma-7", "https://media.blooket.com/image/upload/v1658790244/Media/market/particles/circle_dark_turquoise.svg", { width: 25, height: 25 }) } } create() { h.scene = this, h.rarity = "", h.particles = this.physics.add.group({ classType: new i.Class({ Extends: i.GameObjects.Image, initialize: function () { i.GameObjects.Image.call(this, h.scene, 0, 0, "uncommon-1"), this.setDepth(3), this.lifespan = 0 }, spawn: function (e, t, a, o, i, n, r, s, l) { this.setTexture(l), this.setActive(!0), this.setVisible(!0), this.setPosition(e, t), this.setScale(a), this.targets = [], h.scene.physics.velocityFromAngle(o, i, this.body.velocity), this.body.setGravityY(n), this.body.setAngularVelocity(r), this.lifespan = s }, update: function (e, t) { this.lifespan -= t, 0 < this.lifespan || (this.setActive(!1), this.setVisible(!1)) } }), runChildUpdate: !0 }), this.nextParticle = 0, this.numExplosions = 0, this.game.events.on("start-particles", e => { h.rarity = e, this.numExplosions = "Uncommon" === e ? 75 : "Rare" === e ? 100 : -1 }) } update(e, t) { const a = m("74sb"); function o(e) { switch (e) { case "center": var t = Object(a.l)(-115, -65); return { x: h.scene.cameras.main.worldView.width / 2, y: h.scene.cameras.main.worldView.height / 2, scale: Object(a.l)(.7, 1), angle: t, velocity: Object(a.l)(600, 750), gravity: 700, angVelocity: (-90 < t ? 1 : -1) * Object(a.l)(125, 175), lifespan: 2500 }; case "right-bottom": return { x: h.scene.cameras.main.worldView.width, y: h.scene.cameras.main.worldView.height, scale: Object(a.l)(.7, 1), angle: Object(a.l)(-160, -110), velocity: Object(a.l)(600, 750), gravity: 500, angVelocity: Object(a.l)(-175, -125), lifespan: 2500 }; case "left-bottom": return { x: 0, y: h.scene.cameras.main.worldView.height, scale: Object(a.l)(.7, 1), angle: Object(a.l)(-70, -20), velocity: Object(a.l)(600, 750), gravity: 500, angVelocity: Object(a.l)(125, 175), lifespan: 2500 }; case "top": return { x: Object(a.l)(0, h.scene.cameras.main.worldView.width), y: -50, scale: Object(a.l)(.7, 1), angle: 90, velocity: Object(a.l)(0, 50), gravity: 700, angVelocity: Object(a.l)(-150, 150), lifespan: 2500 }; case "right-shower": return { x: h.scene.cameras.main.worldView.width, y: Object(a.l)(0, h.scene.cameras.main.worldView.height), scale: Object(a.l)(.7, 1), angle: Object(a.l)(-180, -130), velocity: Object(a.l)(600, 750), gravity: 500, angVelocity: Object(a.l)(-175, -125), lifespan: 2500 }; case "left-shower": return { x: 0, y: Object(a.l)(0, h.scene.cameras.main.worldView.height), scale: Object(a.l)(.7, 1), angle: Object(a.l)(-50, 0), velocity: Object(a.l)(600, 750), gravity: 500, angVelocity: Object(a.l)(125, 175), lifespan: 2500 }; case "right-diamond": t = Object(a.l)(0, h.scene.cameras.main.worldView.height); return { x: h.scene.cameras.main.worldView.width, y: t, scale: Object(a.l)(.7, 1), angle: t > h.scene.cameras.main.worldView.height / 2 ? -150 : -210, velocity: Object(a.l)(600, 750), gravity: 0, angVelocity: Object(a.l)(-175, -125), lifespan: 2500 }; case "left-diamond": t = Object(a.l)(0, h.scene.cameras.main.worldView.height); return { x: 0, y: t, scale: Object(a.l)(.7, 1), angle: t > h.scene.cameras.main.worldView.height / 2 ? -30 : 30, velocity: Object(a.l)(600, 750), gravity: 0, angVelocity: Object(a.l)(125, 175), lifespan: 2500 }; default: return {} } } if (h.rarity && 0 !== this.numExplosions && (this.nextParticle -= t, this.nextParticle <= 0)) { switch (h.rarity) { case "Uncommon": for (let e = 0; e < 2; e++) { var i = h.particles.get(); i && i.spawn.apply(i, Object.values(o("center")).concat("uncommon-" + Object(a.m)(1, 8))) } break; case "Rare": for (var n = 0; n < 2; n++) { var r = h.particles.get(); r && r.spawn.apply(r, Object.values(o(n % 2 == 0 ? "left-bottom" : "right-bottom")).concat("rare-" + Object(a.m)(1, 8))) } break; case "Epic": for (var s = 0; s < 2; s++) { var l = h.particles.get(); l && l.spawn.apply(l, Object.values(o(s % 2 == 0 ? "left-shower" : "right-shower")).concat("epic-" + Object(a.m)(1, 8))) } break; case "Legendary": for (var c = 0; c < 3; c++) { var d = h.particles.get(); d && d.spawn.apply(d, Object.values(o("top")).concat("legendary-" + Object(a.m)(1, 8))) } break; case "Chroma": for (var p = 0; p < 3; p++) { var u = h.particles.get(); u && u.spawn.apply(u, Object.values(o(p % 2 == 0 ? "left-diamond" : "right-diamond")).concat("chroma-" + Object(a.m)(1, 8))) } } this.nextParticle = 20, 0 < this.numExplosions && (this.numExplosions = Math.max(this.numExplosions - 1, 0)) } } } return function (e) { if ("/market" !== window.location.pathname) return alert("This must be ran on the market page"); var t, a = Object.values(document.querySelector("body > div > div > div"))[1].children[0]._owner["stateNode"]; let n = m("fGzD"); (n = Object.keys(n.a).reduce((e, t) => (e.packs.includes(t) && (e.data[t] = Object.fromEntries(n.b(t))), e), { packs: Array.from(document.querySelectorAll('[class*="packShadow"]')).map(e => e.alt), data: {} }).data)[e] ? (e = function (e) { var t = [], a = Object.keys(n[e]); for (const i of a) t.push(n[e][i] + (t[a.indexOf(i) - 1] || 0)); const o = t[t.length - 1] * Math.random(); return a[t.findIndex(e => e >= o)] }(e), t = Object.values(m.c).find(e => e.exports?.a?.Elephant).exports.a, a.setState({ loadingPack: !1, openPack: !0, unlockedBlook: e, tokens: a.state.tokens, newUnlock: !0, game: { type: i.WEBGL, parent: "phaser-market", width: "100%", height: "100%", scale: { mode: i.Scale.NONE, autoCenter: i.Scale.CENTER_BOTH }, transparent: !0, physics: { default: "arcade" }, scene: new r(t[e].rarity) }, canOpen: !0 })) : alert("I couldn't find that box!") } } catch {} }() }, { name: "Simulate Unlock", description: "Simulate unlocking most of the blooks", inputs: [{ name: "Blook", type: "options", options: async () => { let a = webpackJsonp.push([ [], { [1234]: (e, t, a) => { t.webpack = a } }, [ ["1234"] ] ])["webpack"]; return Object.keys(Object.entries(Object.values(a.c).find(e => Object.values(e.exports?.a || {})[0]?.set).exports.a).reduce((e, t) => (Object.values(a.c).find(e => 15 == e.exports.a?.Breakfast).exports.a[t[1].realSet || t[1].set] && (e[t[0]] = t[1]), e), {})) } }], run: function () { try { let m = webpackJsonp.push([ [], { [1234]: (e, t, a) => { t.webpack = a } }, [ ["1234"] ] ])["webpack"], e = Object.values(m.c), t = e.find(e => e.exports?.a?.Chick?.set).exports.a, o = e.find(e => e.exports.a?.Breakfast).exports.a, a = Object.entries(t).reduce((e, [t, a]) => (o[a.realSet || a.set] && (e[t] = a), e), {}), i = Object.values(m.c).find(e => e.exports?.Class).exports, h = {}; class n extends i.Scene { constructor(e) { super(), this.rarity = e.toLowerCase() } preload() { switch (this.rarity) { case "uncommon": this.load.svg("uncommon-1", "https://media.blooket.com/image/upload/v1658567787/Media/market/particles/square_green.svg", { width: 25, height: 25 }), this.load.svg("uncommon-2", "https://media.blooket.com/image/upload/v1658567787/Media/market/particles/square_light_green.svg", { width: 25, height: 25 }), this.load.svg("uncommon-3", "https://media.blooket.com/image/upload/v1658567785/Media/market/particles/circle_dark_green.svg", { width: 25, height: 25 }), this.load.svg("uncommon-4", "https://media.blooket.com/image/upload/v1658567785/Media/market/particles/serpentine_dark_green.svg", { width: 30, height: 30 }), this.load.svg("uncommon-5", "https://media.blooket.com/image/upload/v1658567785/Media/market/particles/triangle_light_green.svg", { width: 30, height: 30 }), this.load.svg("uncommon-6", "https://media.blooket.com/image/upload/v1658567785/Media/market/particles/serpentine_light_green.svg", { width: 30, height: 30 }), this.load.svg("uncommon-7", "https://media.blooket.com/image/upload/v1658567785/Media/market/particles/triangle_green.svg", { width: 30, height: 30 }); break; case "rare": this.load.svg("rare-1", "https://media.blooket.com/image/upload/v1658567765/Media/market/particles/square_light_blue.svg", { width: 25, height: 25 }), this.load.svg("rare-2", "https://media.blooket.com/image/upload/v1658567765/Media/market/particles/square_dark_blue.svg", { width: 25, height: 25 }), this.load.svg("rare-3", "https://media.blooket.com/image/upload/v1658567763/Media/market/particles/triangle_blue.svg", { width: 30, height: 30 }), this.load.svg("rare-4", "https://media.blooket.com/image/upload/v1658567763/Media/market/particles/serpentine_blue.svg", { width: 30, height: 30 }), this.load.svg("rare-5", "https://media.blooket.com/image/upload/v1658567763/Media/market/particles/triangle_light_blue.svg", { width: 30, height: 30 }), this.load.svg("rare-6", "https://media.blooket.com/image/upload/v1658567763/Media/market/particles/serpentine_light_blue.svg", { width: 30, height: 30 }), this.load.svg("rare-7", "https://media.blooket.com/image/upload/v1658567763/Media/market/particles/circle_dark_blue.svg", { width: 25, height: 25 }); break; case "epic": this.load.svg("epic-1", "https://media.blooket.com/image/upload/v1658790239/Media/market/particles/red.svg", { width: 25, height: 25 }), this.load.svg("epic-2", "https://media.blooket.com/image/upload/v1658790237/Media/market/particles/light_red.svg", { width: 25, height: 25 }), this.load.svg("epic-3", "https://media.blooket.com/image/upload/v1658790239/Media/market/particles/serpentine_red.svg", { width: 30, height: 30 }), this.load.svg("epic-4", "https://media.blooket.com/image/upload/v1658790239/Media/market/particles/serpentine_dark_red.svg", { width: 30, height: 30 }), this.load.svg("epic-5", "https://media.blooket.com/image/upload/v1658790237/Media/market/particles/triangle_red.svg", { width: 30, height: 30 }), this.load.svg("epic-6", "https://media.blooket.com/image/upload/v1658790237/Media/market/particles/triangle_light_red.svg", { width: 30, height: 30 }), this.load.svg("epic-7", "https://media.blooket.com/image/upload/v1658790237/Media/market/particles/circle_dark_red.svg", { width: 25, height: 25 }); break; case "legendary": this.load.svg("legendary-1", "https://media.blooket.com/image/upload/v1658567740/Media/market/particles/square_orange.svg", { width: 25, height: 25 }), this.load.svg("legendary-2", "https://media.blooket.com/image/upload/v1658567740/Media/market/particles/square_light_orange.svg", { width: 25, height: 25 }), this.load.svg("legendary-3", "https://media.blooket.com/image/upload/v1658567738/Media/market/particles/circle_orange.svg", { width: 25, height: 25 }), this.load.svg("legendary-4", "https://media.blooket.com/image/upload/v1658567738/Media/market/particles/serpentine_orange.svg", { width: 30, height: 30 }), this.load.svg("legendary-5", "https://media.blooket.com/image/upload/v1658567738/Media/market/particles/serpentine_light_orange.svg", { width: 30, height: 30 }), this.load.svg("legendary-6", "https://media.blooket.com/image/upload/v1658567738/Media/market/particles/circle_dark_orange.svg", { width: 25, height: 25 }), this.load.svg("legendary-7", "https://media.blooket.com/image/upload/v1658567738/Media/market/particles/triangle_dark_orange.svg", { width: 30, height: 30 }); break; case "chroma": this.load.svg("chroma-1", "https://media.blooket.com/image/upload/v1658790246/Media/market/particles/square_turquoise.svg", { width: 25, height: 25 }), this.load.svg("chroma-2", "https://media.blooket.com/image/upload/v1658790246/Media/market/particles/square_light_turquoise.svg", { width: 25, height: 25 }), this.load.svg("chroma-3", "https://media.blooket.com/image/upload/v1658790244/Media/market/particles/serpentine_dark_turquoise.svg", { width: 30, height: 30 }), this.load.svg("chroma-4", "https://media.blooket.com/image/upload/v1658790244/Media/market/particles/serpentine_turquoise.svg", { width: 30, height: 30 }), this.load.svg("chroma-5", "https://media.blooket.com/image/upload/v1658790244/Media/market/particles/triangle_turquoise.svg", { width: 30, height: 30 }), this.load.svg("chroma-6", "https://media.blooket.com/image/upload/v1658790244/Media/market/particles/triangle_light_turquoise.svg", { width: 30, height: 30 }), this.load.svg("chroma-7", "https://media.blooket.com/image/upload/v1658790244/Media/market/particles/circle_dark_turquoise.svg", { width: 25, height: 25 }) } } create() { h.scene = this, h.rarity = "", h.particles = this.physics.add.group({ classType: new i.Class({ Extends: i.GameObjects.Image, initialize: function () { i.GameObjects.Image.call(this, h.scene, 0, 0, "uncommon-1"), this.setDepth(3), this.lifespan = 0 }, spawn: function (e, t, a, o, i, n, r, s, l) { this.setTexture(l), this.setActive(!0), this.setVisible(!0), this.setPosition(e, t), this.setScale(a), this.targets = [], h.scene.physics.velocityFromAngle(o, i, this.body.velocity), this.body.setGravityY(n), this.body.setAngularVelocity(r), this.lifespan = s }, update: function (e, t) { this.lifespan -= t, 0 < this.lifespan || (this.setActive(!1), this.setVisible(!1)) } }), runChildUpdate: !0 }), this.nextParticle = 0, this.numExplosions = 0, this.game.events.on("start-particles", e => { h.rarity = e, this.numExplosions = "Uncommon" === e ? 75 : "Rare" === e ? 100 : -1 }) } update(e, t) { const a = m("74sb"); function o(e) { switch (e) { case "center": var t = Object(a.l)(-115, -65); return { x: h.scene.cameras.main.worldView.width / 2, y: h.scene.cameras.main.worldView.height / 2, scale: Object(a.l)(.7, 1), angle: t, velocity: Object(a.l)(600, 750), gravity: 700, angVelocity: (-90 < t ? 1 : -1) * Object(a.l)(125, 175), lifespan: 2500 }; case "right-bottom": return { x: h.scene.cameras.main.worldView.width, y: h.scene.cameras.main.worldView.height, scale: Object(a.l)(.7, 1), angle: Object(a.l)(-160, -110), velocity: Object(a.l)(600, 750), gravity: 500, angVelocity: Object(a.l)(-175, -125), lifespan: 2500 }; case "left-bottom": return { x: 0, y: h.scene.cameras.main.worldView.height, scale: Object(a.l)(.7, 1), angle: Object(a.l)(-70, -20), velocity: Object(a.l)(600, 750), gravity: 500, angVelocity: Object(a.l)(125, 175), lifespan: 2500 }; case "top": return { x: Object(a.l)(0, h.scene.cameras.main.worldView.width), y: -50, scale: Object(a.l)(.7, 1), angle: 90, velocity: Object(a.l)(0, 50), gravity: 700, angVelocity: Object(a.l)(-150, 150), lifespan: 2500 }; case "right-shower": return { x: h.scene.cameras.main.worldView.width, y: Object(a.l)(0, h.scene.cameras.main.worldView.height), scale: Object(a.l)(.7, 1), angle: Object(a.l)(-180, -130), velocity: Object(a.l)(600, 750), gravity: 500, angVelocity: Object(a.l)(-175, -125), lifespan: 2500 }; case "left-shower": return { x: 0, y: Object(a.l)(0, h.scene.cameras.main.worldView.height), scale: Object(a.l)(.7, 1), angle: Object(a.l)(-50, 0), velocity: Object(a.l)(600, 750), gravity: 500, angVelocity: Object(a.l)(125, 175), lifespan: 2500 }; case "right-diamond": t = Object(a.l)(0, h.scene.cameras.main.worldView.height); return { x: h.scene.cameras.main.worldView.width, y: t, scale: Object(a.l)(.7, 1), angle: t > h.scene.cameras.main.worldView.height / 2 ? -150 : -210, velocity: Object(a.l)(600, 750), gravity: 0, angVelocity: Object(a.l)(-175, -125), lifespan: 2500 }; case "left-diamond": t = Object(a.l)(0, h.scene.cameras.main.worldView.height); return { x: 0, y: t, scale: Object(a.l)(.7, 1), angle: t > h.scene.cameras.main.worldView.height / 2 ? -30 : 30, velocity: Object(a.l)(600, 750), gravity: 0, angVelocity: Object(a.l)(125, 175), lifespan: 2500 }; default: return {} } } if (h.rarity && 0 !== this.numExplosions && (this.nextParticle -= t, this.nextParticle <= 0)) { switch (h.rarity) { case "Uncommon": for (let e = 0; e < 2; e++) { var i = h.particles.get(); i && i.spawn.apply(i, Object.values(o("center")).concat("uncommon-" + Object(a.m)(1, 8))) } break; case "Rare": for (var n = 0; n < 2; n++) { var r = h.particles.get(); r && r.spawn.apply(r, Object.values(o(n % 2 == 0 ? "left-bottom" : "right-bottom")).concat("rare-" + Object(a.m)(1, 8))) } break; case "Epic": for (var s = 0; s < 2; s++) { var l = h.particles.get(); l && l.spawn.apply(l, Object.values(o(s % 2 == 0 ? "left-shower" : "right-shower")).concat("epic-" + Object(a.m)(1, 8))) } break; case "Legendary": for (var c = 0; c < 3; c++) { var d = h.particles.get(); d && d.spawn.apply(d, Object.values(o("top")).concat("legendary-" + Object(a.m)(1, 8))) } break; case "Chroma": for (var p = 0; p < 3; p++) { var u = h.particles.get(); u && u.spawn.apply(u, Object.values(o(p % 2 == 0 ? "left-diamond" : "right-diamond")).concat("chroma-" + Object(a.m)(1, 8))) } } this.nextParticle = 20, 0 < this.numExplosions && (this.numExplosions = Math.max(this.numExplosions - 1, 0)) } } } return function (e) { var t = document.createElement("iframe"); document.body.append(t), window.alert = t.contentWindow.alert.bind(window), window.prompt = t.contentWindow.prompt.bind(window), t.remove(), "/market" == window.location.pathname ? (t = Object.values(document.querySelector("body > div > div > div"))[1].children[0]._owner["stateNode"], t.setState({ loadingPack: !1, openPack: !0, unlockedBlook: e, newUnlock: !0, game: { type: i.WEBGL, parent: "phaser-market", width: "100%", height: "100%", scale: { mode: i.Scale.NONE, autoCenter: i.Scale.CENTER_BOTH }, transparent: !0, physics: { default: "arcade" }, scene: new n(a[e].rarity) }, canOpen: !0 })) : alert("This can only be ran on the market page!") } } catch {} }() }, { name: "Unlock Plus Gamemodes", description: "Allows you to play any gamemode that is plus only", run: function () { Object.values(document.querySelector("body > div > div > div"))[1].children[0]._owner.stateNode.setState(e => (e.gameModes.forEach(e => e.plusOnly = !1), e)) } }], brawl: [{ name: "Double Enemy XP", description: "Doubles enemy XP drop value", run: function () { for (const a of Object.values(document.querySelector("body > div > div > div"))[1].children[0]._owner.stateNode.state.game.scene.physics.world.colliders._active.filter(e => e.callbackContext?.toString().includes("invulnerableTime"))) { var t = a.object2; let e = t.classType.prototype.start; t.classType.prototype.start = function () { e.apply(this, arguments), this.val *= 2 }, t.children.entries.forEach(e => e.val *= 2) } } }, { name: "Half Enemy Speed", description: "Makes enemies move 2x slower", run: function () { for (const a of Object.values(document.querySelector("body > div > div > div"))[1].children[0]._owner.stateNode.state.game.scene.physics.world.colliders._active.filter(e => e.callbackContext?.toString().includes("invulnerableTime"))) { var t = a.object2; let e = t.classType.prototype.start; t.classType.prototype.start = function () { e.apply(this, arguments), this.speed *= .5 }, t.children.entries.forEach(e => e.speed *= .5) } } }, { name: "Instant Kill", description: "Sets all enemies health to 1", run: function () { for (const a of Object.values(document.querySelector("body > div > div > div"))[1].children[0]._owner.stateNode.state.game.scene.physics.world.colliders._active.filter(e => e.callbackContext?.toString().includes("invulnerableTime"))) { var t = a.object2; let e = t.classType.prototype.start; t.classType.prototype.start = function () { e.apply(this, arguments), this.hp = 1 }, t.children.entries.forEach(e => e.hp = 1) } } }, { name: "Invincibility", description: "Makes you invincible", run: function () { for (const e of Object.values(document.querySelector("body > div > div > div"))[1].children[0]._owner.stateNode.state.game.scene.physics.world.colliders._active.filter(e => e.callbackContext?.toString().includes("invulnerableTime"))) e.collideCallback = () => {} } }, { name: "Magnet", description: "Pulls all xp towards you", run: function () { Object.values(document.querySelector("body > div > div > div"))[1].children[0]._owner.stateNode.state.game.scene.physics.world.colliders._active.find(e => e.collideCallback?.toString().includes("magnetTime")).collideCallback({ active: !0 }, { active: !0, setActive() {}, setVisible() {} }) } }, { name: "Max Current Abilities", description: "Maxes out all your current abilities", run: function () { const a = Object.values(document.querySelector("body > div > div > div"))[1].children[0]._owner["stateNode"]; for (var [t, o] of Object.entries(a.state.abilities)) for (let e = 0; e < 10 - o; e++) a.state.game.scene.game.events.emit("level up", t, a.state.abilities[t]++); a.setState({ level: a.state.game.scene.level = [1, 3, 5, 10, 15, 25, 35].sort((e, t) => Math.abs(e - a.state.level) - Math.abs(t - a.state.level))[0] - 1 }) } }, { name: "Next Level", description: "Skips to the next level", run: function () { var e = Object.values(document.querySelector("body > div > div > div"))[1].children[0]._owner["stateNode"], { object1: t, object2: a } = e.state.game.scene.physics.world.colliders._active.find(e => e.collideCallback?.toString().includes('emit("xp"')); a.get().spawn(t.x, t.y, (1 === (a = e.state.level) ? 1 : a < 5 ? 5 : a < 10 ? 10 : a < 20 ? 20 : a < 30 ? 30 : a < 40 ? 40 : a < 50 ? 50 : 100) - e.xp) } }, { name: "Remove Obstacles", description: "Removes all rocks and obstacles", run: function () { Object.values(document.querySelector("body > div > div > div"))[1].children[0]._owner.stateNode.state.game.scene.physics.world.bodies.entries.forEach(e => { try { e.gameObject.frame.texture.key.includes("obstacle") && e.gameObject.destroy() } catch {} }) } }, { name: "Kill Enemies", description: "Kills all current enemies", run: function () { Object.values(document.querySelector("body > div > div > div"))[1].children[0]._owner.stateNode.state.game.scene.physics.world.bodies.entries.forEach(e => e?.gameObject?.receiveDamage?.(e.gameObject.hp, 1)) } }, { name: "Reset Health", description: "Resets health and gives invincibility for 3 seconds", run: function () { Object.values(document.querySelector("body > div > div > div"))[1].children[0]._owner.stateNode.state.game.scene.game.events._events.respawn.fn() } }], cafe: [{ name: "Max Items", description: "Maxes out items in the shop (Only usable in the shop)", run: function () { var e = document.createElement("iframe"); document.body.append(e), window.alert = e.contentWindow.alert.bind(window), e.remove(), "/cafe/shop" !== window.location.pathname ? alert("This can only be run in the shop") : (e = Object.values(document.querySelector("body > div > div > div"))[1].children[0]._owner["stateNode"], e.setState({ items: Object.fromEntries(Object.entries(e.state.items).map(e => [e[0], 5])) })) } }, { name: "Remove Customers", description: "Skips the current customers (Not usable in the shop)", run: function () { const a = Object.values(document.querySelector("body > div > div > div"))[1].children[0]._owner["stateNode"]; a.state.customers.forEach((e, t) => Object.keys(e).length && a.removeCustomer(t, !0)) } }, { name: "Reset Abilities", description: "Resets used abilities in shop (Only usable in the shop)", run: function () { var e = document.createElement("iframe"); document.body.append(e), window.alert = e.contentWindow.alert.bind(window), e.remove(), "/cafe/shop" !== window.location.pathname ? alert("This can only be run in the shop") : (e = Object.values(document.querySelector("body > div > div > div"))[1].children[0]._owner["stateNode"], e.setState({ abilities: Object.fromEntries(Object.entries(e.state.abilities).map(e => [e[0], 5])) })) } }, { name: "Set Cash", description: "Sets cafe cash", inputs: [{ name: "Amount", type: "number" }], run: function (e) { var t = Object.values(document.querySelector("body > div > div > div"))[1].children[0]._owner["stateNode"]; t.setState({ cafeCash: e }), t.props.liveGameController.setVal({ path: "c/" + t.props.client.name, val: { b: t.props.client.blook, ca: e } }) } }, { name: "Stock Food", description: "Stocks all food to 99 (Not usable in the shop)", run: function () { var e = document.createElement("iframe"); document.body.append(e), window.alert = e.contentWindow.alert.bind(window), e.remove(), "/cafe" !== window.location.pathname ? alert("This can't be run in the shop") : (e = Object.values(document.querySelector("body > div > div > div"))[1].children[0]._owner["stateNode"], e.setState({ foods: e.state.foods.map(e => ({ ...e, stock: 99, level: 5 })) })) } }], crypto: [{ name: "Choice ESP", description: "Shows what each choice will give you", type: "toggle", enabled: !1, data: null, run: function () { this.enabled ? (this.enabled = !1, clearInterval(this.data), this.data = null) : (this.enabled = !0, this.data = setInterval(() => { var e, t = Object.values(document.querySelector("body > div > div > div"))[1].children[0]._owner["stateNode"], t = t.state.choices[0]["text"], a = document.querySelector("[class^=styles__feedbackContainer___]"); a.children.length <= 4 && ((e = document.createElement("div")).style.color = "white", e.style.fontFamily = "Inconsolata,Helvetica,monospace,sans-serif", e.style.fontSize = "2em", e.style.display = "flex", e.style.justifyContent = "center", e.style.marginTop = "675px", e.innerText = t, a.append(e)) }, 50)) } }, { name: "Password ESP", description: "Highlights the correct password", type: "toggle", enabled: !1, data: null, run: function () { this.enabled ? (this.enabled = !1, clearInterval(this.data), this.data = null) : (this.enabled = !0, this.data = setInterval(() => { let t = Object.values(document.querySelector("body > div > div > div"))[1].children[0]._owner.stateNode["state"]; "hack" == t.stage && [...document.querySelector("div[class^=styles__buttonContainer]").children].forEach(e => { e.innerText != t.correctPassword && (e.style.outlineColor = "rgba(255, 64, 64, 0.8)", e.style.backgroundColor = "rgba(255, 64, 64, 0.8)", e.style.textShadow = "0 0 1px #f33") }) }, 50)) } }, { name: "Always Triple", description: "Always get triple crypto", type: "toggle", enabled: !1, data: null, run: function () { this.enabled ? (this.enabled = !1, clearInterval(this.data), this.data = null) : (this.enabled = !0, this.data = setInterval(() => Object.values(document.querySelector("body > div > div > div"))[1].children[0]._owner.stateNode.setState({ choices: [{ type: "mult", val: 3, rate: .075, blook: "Brainy Bot", text: "Triple Crypto" }] }), 50)) } }, { name: "Auto Guess", description: "Automatically guess the correct password", type: "toggle", enabled: !1, data: null, run: function () { this.enabled ? (this.enabled = !1, clearInterval(this.data), this.data = null) : (this.enabled = !0, this.data = setInterval(() => { var e = Object.values(document.querySelector("body > div > div > div"))[1].children[0]._owner.stateNode["state"]; if ("hack" == e.stage) for (const t of document.querySelector("div[class^=styles__buttonContainer]").children) t.innerText == e.correctPassword && t.click() }, 50)) } }, { name: "Remove Hack", description: "Removes an attacking hack", run: function () { Object.values(document.querySelector("body > div > div > div"))[1].children[0]._owner.stateNode.setState({ hack: "" }) } }, { name: "Set Crypto", description: "Sets crypto", inputs: [{ name: "Amount", type: "number" }], run: function (e) { var t = Object.values(document.querySelector("body > div > div > div"))[1].children[0]._owner["stateNode"]; t.setState({ crypto: e, crypto2: e }), t.props.liveGameController.setVal({ path: "c/".concat(t.props.client.name), val: { b: t.props.client.blook, p: t.state.password, cr: e } }) } }, { name: "Set Password", description: "Sets hacking password", inputs: [{ name: "Custom Password", type: "string" }], run: function (e) { var t = Object.values(document.querySelector("body > div > div > div"))[1].children[0]._owner["stateNode"]; t.setState({ password: e }), t.props.liveGameController.setVal({ path: "c/".concat(t.props.client.name), val: { b: t.props.client.blook, p: e, cr: t.state.crypto } }) } }, { name: "Steal Player's Crypto", description: "Steals all of someone's crypto", inputs: [{ name: "Player", type: "options", options: () => { let e = Object.values(document.querySelector("body > div > div > div"))[1].children[0]._owner["stateNode"]; return new Promise(t => e.props.liveGameController._liveApp ? e.props.liveGameController.getDatabaseVal("c", e => e && t(Object.keys(e))) : t([])) } }], run: function (a) { let o = Object.values(document.querySelector("body > div > div > div"))[1].children[0]._owner["stateNode"]; o.props.liveGameController.getDatabaseVal("c", e => { var t; e && Object.keys(e).map(e => e.toLowerCase()).includes(a.toLowerCase()) && ([e, { cr: t }] = Object.entries(e).find(([e]) => e.toLowerCase() == a.toLowerCase()), o.setState({ crypto: o.state.crypto + t, crypto2: o.state.crypto + t }), o.props.liveGameController.setVal({ path: "c/".concat(o.props.client.name), val: { b: o.props.client.blook, p: o.state.password, cr: o.state.crypto + t, tat: e + ":" + t } })) }) } }], defense: [{ name: "Earthquake", description: "Shuffles around towers", run: function () { let o = Object.values(document.querySelector("body > div > div > div"))[1].children[0]._owner["stateNode"], i = (o.setState({ eventName: "Earthquake", event: { short: "e", color: "#805500", icon: "fas fa-mountain", desc: "All of your towers get mixed up", rate: .02 }, buyTowerName: "", buyTower: {} }, () => o.eventTimeout = setTimeout(() => o.setState({ event: {}, eventName: "" }), 6e3)), o.tiles.forEach(a => a.forEach((e, t) => 3 === e && (a[t] = 0))), o.tiles.flatMap((e, a) => e.map((e, t) => 0 === e && { x: t, y: a })).filter(Boolean).sort(() => .5 - Math.random())); o.towers.forEach(e => { var { x: t, y: a } = i.shift(); e.move(t, a, o.tileSize), o.tiles[a][t] = 3 }) } }, { name: "Max Tower Stats", description: "Makes all placed towers overpowered", run: function () { var e = Object.values(document.querySelector("body > div > div > div"))[1].children[0]._owner["stateNode"]; e.towers.forEach(e => { e.range = 100, e.fullCd = e.cd = 0, e.damage = 1e6 }) } }, { name: "Remove Ducks", description: "Removes ducks", run: function () { let { ducks: e, tiles: t } = Object.values(document.querySelector("body > div > div > div"))[1].children[0]._owner["stateNode"]; e.forEach(e => { t[e.y][e.x] = 0 }), e.length = 0 } }, { name: "Remove Enemies", description: "Removes all the enemies", run: function () { var e = Object.values(document.querySelector("body > div > div > div"))[1].children[0]._owner["stateNode"]; e.enemies = e.futureEnemies = [] } }, { name: "Remove Obstacles", description: "Lets you place towers anywhere", run: function () { var e = Object.values(document.querySelector("body > div > div > div"))[1].children[0]._owner["stateNode"]; e.tiles = e.tiles.map(e => e.fill(0)) } }, { name: "Set Damage", description: "Sets damage", inputs: [{ name: "Damage", type: "number" }], run: function (e) { Object.values(document.querySelector("body > div > div > div"))[1].children[0]._owner.stateNode.dmg = e } }, { name: "Set Round", description: "Sets the current round", inputs: [{ name: "Round", type: "number" }], run: function (e) { Object.values(document.querySelector("body > div > div > div"))[1].children[0]._owner.stateNode.setState({ round: e }) } }, { name: "Set Tokens", description: "Sets the amount of tokens you have", inputs: [{ name: "Tokens", type: "number" }], run: function (e) { Object.values(document.querySelector("body > div > div > div"))[1].children[0]._owner.stateNode.setState({ tokens: e }) } }], defense2: [{ name: "Max Tower Stats", description: "Makes all placed towers overpowered", run: function () { Object.values(document.querySelector("body > div > div > div"))[1].children[0]._owner.stateNode.state.towers.forEach(e => { if (e.stats.dmg = 1e6, e.stats.fireRate = 50, e.stats.ghostDetect = !0, e.stats.maxTargets = 1e6, e.stats.numProjectiles &&= 100, e.stats.range = 100, e.stats.auraBuffs) for (const t in e.stats.auraBuffs) e.stats.auraBuffs[t] *= 100 }) } }, { name: "Kill Enemies", description: "Kills all the enemies", run: function () { var e = Object.values(document.querySelector("body > div > div > div"))[1].children[0]._owner["stateNode"]; e.state.game.scene.enemyQueue.length = 0, e.state.game.scene.physics.world.bodies.entries.forEach(e => e?.gameObject?.receiveDamage?.(e.gameObject.hp, 1)) } }, { name: "Set Coins", description: "Sets coins", inputs: [{ name: "Coins", type: "number" }], run: function (e) { Object.values(document.querySelector("body > div > div > div"))[1].children[0]._owner.stateNode.setState({ coins: e }) } }, { name: "Set Health", description: "Sets the amount of health you have", inputs: [{ name: "Health", type: "number" }], run: function (e) { Object.values(document.querySelector("body > div > div > div"))[1].children[0]._owner.stateNode.setState({ health: e }) } }, { name: "Set Round", description: "Sets the current round", inputs: [{ name: "Round", type: "number" }], run: function (e) { Object.values(document.querySelector("body > div > div > div"))[1].children[0]._owner.stateNode.setState({ round: e }) } }], dinos: [{ name: "Auto Choose", description: "Automatically choose the best fossil when excavating", type: "toggle", enabled: !1, data: null, run: function () { this.enabled ? (this.enabled = !1, clearInterval(this.data), this.data = null) : (this.enabled = !0, this.data = setInterval(() => { const t = webpackJsonp.push([ [], { [1234]: (e, t, a) => { t.webpack = a } }, [ ["1234"] ] ])["webpack"]; var e = (() => { const e = Object.values(t("74sb")).find(e => e.toString().includes("rate")); return () => e([{ type: "fossil", val: 10, rate: .1, blook: "Amber" }, { type: "fossil", val: 25, rate: .1, blook: "Dino Egg" }, { type: "fossil", val: 50, rate: .175, blook: "Dino Fossil" }, { type: "fossil", val: 75, rate: .175, blook: "Stegosaurus" }, { type: "fossil", val: 100, rate: .15, blook: "Velociraptor" }, { type: "fossil", val: 125, rate: .125, blook: "Brontosaurus" }, { type: "fossil", val: 250, rate: .075, blook: "Triceratops" }, { type: "fossil", val: 500, rate: .025, blook: "Tyrannosaurus Rex" }, { type: "mult", val: 1.5, rate: .05 }, { type: "mult", val: 2, rate: .025 }], 3) })(); try { var o = Object.values(document.querySelector("body > div > div > div"))[1].children[0]._owner["stateNode"]; if ("excavate" === o.state.stage) { o.state.choices.length || (o.state.choices = e()); let t = 0, a = -1; for (let e = 0; e < o.state.choices.length; e++) { var { type: i, val: n } = o.state.choices[e], r = ("fossil" == i ? o.state.fossils + n * o.state.fossilMult : o.state.fossils * n) || 0; r <= t && "mult" != i || (t = r, a = e + 1) } document.querySelector('div[class^="styles__rockRow"] > div[role="button"]:nth-child(' + a + ")").click() } } catch {} }, 50)) } }, { name: "Rock ESP", description: "Shows what is under the rocks", type: "toggle", enabled: !1, data: null, run: function () { this.enabled ? (this.enabled = !1, clearInterval(this.data), this.data = null) : (this.enabled = !0, this.data = setInterval(() => { let o = Object.values(document.querySelector("body > div > div > div"))[1].children[0]._owner["stateNode"]; const e = [...document.querySelector('[class*="rockButton"]').parentElement.children]; e.every(e => e.querySelector("div")) || o.setState({ choices: [{ type: "fossil", val: 10, rate: .1, blook: "Amber" }, { type: "fossil", val: 25, rate: .1, blook: "Dino Egg" }, { type: "fossil", val: 50, rate: .175, blook: "Dino Fossil" }, { type: "fossil", val: 75, rate: .175, blook: "Stegosaurus" }, { type: "fossil", val: 100, rate: .15, blook: "Velociraptor" }, { type: "fossil", val: 125, rate: .125, blook: "Brontosaurus" }, { type: "fossil", val: 250, rate: .075, blook: "Triceratops" }, { type: "fossil", val: 500, rate: .025, blook: "Tyrannosaurus Rex" }, { type: "mult", val: 1.5, rate: .05 }, { type: "mult", val: 2, rate: .025 }].sort(() => .5 - Math.random()).slice(0, 3) }, () => { e.forEach((e, t) => { var t = o.state.choices[t], a = (e.querySelector("div") && e.querySelector("div").remove(), document.createElement("div")); a.style.color = "white", a.style.fontFamily = "Macondo", a.style.fontSize = "1em", a.style.display = "flex", a.style.justifyContent = "center", a.style.transform = "translateY(25px)", a.innerText = "fossil" === t.type ? `+${99999999<Math.round(t.val*o.state.fossilMult)?Object.values(webpack("74sb")).find(e=>e.toString().includes("×"))(Math.round(t.val*o.state.fossilMult)):Math.round(t.val*o.state.fossilMult)} Fossils` : `x${t.val} Fossils Per Excavation`, e.append(a) }) }) }, 50)) } }, { name: "Set Fossils", description: "Sets the amount of fossils you have", inputs: [{ name: "Fossils", type: "number" }], run: function (e) { var t = Object.values(document.querySelector("body > div > div > div"))[1].children[0]._owner["stateNode"]; t.setState({ fossils: e }), t.props.liveGameController.setVal({ path: "c/" + t.props.client.name, val: { b: t.props.client.blook, f: e, ic: t.state.isCheating } }) } }, { name: "Set Multiplier", description: "Sets fossil multiplier", inputs: [{ name: "Multiplier", type: "number" }], run: function (e) { var t = Object.values(document.querySelector("body > div > div > div"))[1].children[0]._owner["stateNode"]; t.setState({ fossilMult: e }) } }, { name: "Stop Cheating", description: "Undoes cheating so that you can't be caught", run: function () { var e = Object.values(document.querySelector("body > div > div > div"))[1].children[0]._owner["stateNode"]; e.setState({ isCheating: !1 }), e.props.liveGameController.setVal({ path: `c/${e.props.client.name}/ic`, val: !1 }) } }], doom: [{ name: "Fill Deck", description: "Fills your deck with every maxed out card and artifact (Only works on towers page)", run: function () { var e = document.createElement("iframe"); if (document.body.append(e), window.alert = e.contentWindow.alert.bind(window), e.remove(), "/tower/map" == window.location.pathname) { var { a: e, c: t } = webpackJsonp.push([ [], { "": (e, t, a) => { t.cache = a.c } }, [ [""] ] ]).cache.gvfT.exports, a = Object.values(document.querySelector("body > div > div > div"))[1].children[0]._owner["stateNode"]; a.props.tower.artifacts = Object.keys(e), a.props.tower.cards = Object.entries(t).map(([e, t]) => ({ ...t, blook: e, strength: 20, charisma: 20, wisdom: 20 })); try { a.props.addTowerNode() } catch {} a.setState({ showDeck: !1 }) } else alert("You need to be on the map to run this cheat!") } }, { name: "Max Cards", description: "Maxes out all the cards in your deck", run: function () { var e = document.createElement("iframe"); document.body.append(e), window.alert = e.contentWindow.alert.bind(window), e.remove(), "/tower/map" == window.location.pathname ? (e = Object.values(document.querySelector("body > div > div > div"))[1].children[0]._owner["stateNode"], e.props.tower.cards.forEach(e => { e.strength = 20, e.charisma = 20, e.wisdom = 20 })) : alert("You need to be on the map to run this cheat!") } }, { name: "Max Health", description: "Fills the player's health", run: function () { var e = document.createElement("iframe"); document.body.append(e), window.alert = e.contentWindow.alert.bind(window), e.remove(), "/tower/battle" == window.location.pathname ? Object.values(document.querySelector("body > div > div > div"))[1].children[0]._owner.stateNode.setState({ myHealth: 100 }) : alert("You need to be in battle to run this cheat!") } }, { name: "Max Card Stats", description: "Maxes out player's current card (Only works on attribute select page)", run: function () { var e = document.createElement("iframe"), e = (document.body.append(e), window.alert = e.contentWindow.alert.bind(window), e.remove(), Object.values(document.querySelector("body > div > div > div"))[1].children[0]._owner)["stateNode"]; "select" !== e.state.phase ? alert("You must be on the attribute selection page!") : e.setState({ myCard: { ...e.state.myCard, strength: 20, charisma: 20, wisdom: 20 } }) } }, { name: "Min Enemy Stats", description: "Makes the enemy card stats all 0 (Only works on attribute select page)", run: function () { var e = document.createElement("iframe"), e = (document.body.append(e), window.alert = e.contentWindow.alert.bind(window), e.remove(), Object.values(document.querySelector("body > div > div > div"))[1].children[0]._owner)["stateNode"]; "select" !== e.state.phase ? alert("You must be on the attribute selection page!") : e.setState({ enemyCard: { ...e.state.enemyCard, strength: 0, charisma: 0, wisdom: 0 } }) } }, { name: "Set Coins", description: "Try's to set amount of tower coins you have", inputs: [{ name: "Coins", type: "number" }], run: function (e) { var t = document.createElement("iframe"); if (document.body.append(t), window.alert = t.contentWindow.prompt.bind(window), t.remove(), "/tower/battle" == window.location.pathname) { var t = parseInt("0" + alert("How many coins would you like?")), a = Object.values(document.querySelector("body > div > div > div"))[1].children[0]._owner["stateNode"]; try { a.props.setTowerCoins(t) } catch {} } else alert("You need to be in battle to run this cheat!") } }], factory: [{ name: "Choose Blook", description: "Gives you a blook", inputs: [{ name: "Blook", type: "options", options: [{ name: "Chick", color: "#ffcd05", class: "🌽", rarity: "Common", cash: [3, 7, 65, 400, 2500], time: [1, 1, 1, 1, 1], price: [300, 3e3, 3e4, 2e5] }, { name: "Chicken", color: "#ed1c24", class: "🌽", rarity: "Common", cash: [10, 40, 200, 1400, 1e4], time: [5, 4, 3, 2, 1], price: [570, 4e3, 5e4, 8e5] }, { name: "Cow", color: "#58595b", class: "🌽", rarity: "Common", cash: [25, 75, 1500, 25e3, 25e4], time: [15, 10, 10, 10, 5], price: [500, 9500, 16e4, 4e6] }, { name: "Duck", color: "#4ab96d", class: "🌽", rarity: "Common", cash: [4, 24, 200, 3e3, 4e4], time: [3, 3, 3, 3, 3], price: [450, 4200, 7e4, 11e5] }, { name: "Goat", color: "#c59a74", class: "🌽", rarity: "Common", cash: [5, 28, 200, 1300, 12e3], time: [3, 3, 2, 2, 2], price: [500, 6400, 45e3, 5e5] }, { name: "Horse", color: "#995b3c", class: "🌽", rarity: "Common", cash: [5, 20, 270, 1800, 15e3], time: [2, 2, 2, 2, 2], price: [550, 8200, 65e3, 6e5] }, { name: "Pig", color: "#f6a9cb", class: "🌽", rarity: "Common", cash: [20, 50, 1300, 8e3, 8e4], time: [7, 7, 7, 7, 5], price: [400, 11e3, 8e4, 13e5] }, { name: "Sheep", color: "#414042", class: "🌽", rarity: "Common", cash: [6, 25, 250, 1500, 11e3], time: [3, 3, 3, 2, 2], price: [500, 5e3, 5e4, 43e4] }, { name: "Cat", color: "#f49849", class: "🐾", rarity: "Common", cash: [5, 18, 170, 1700, 13e3], time: [2, 2, 2, 2, 2], price: [480, 5500, 6e4, 5e5] }, { name: "Dog", color: "#995b3c", class: "🐾", rarity: "Common", cash: [7, 25, 220, 1900, 9e3], time: [3, 3, 2, 2, 1], price: [460, 6600, 7e4, 73e4] }, { name: "Goldfish", color: "#f18221", class: "🐾", rarity: "Common", cash: [5, 40, 350, 3500, 35e3], time: [3, 3, 3, 3, 3], price: [750, 7200, 84e3, 95e4] }, { name: "Rabbit", color: "#e7bf9a", class: "🐾", rarity: "Common", cash: [3, 18, 185, 800, 7e3], time: [2, 2, 2, 1, 1], price: [500, 5800, 56e3, 55e4] }, { name: "Hamster", color: "#ce9176", class: "🐾", rarity: "Common", cash: [10, 45, 450, 4500, 45e3], time: [4, 4, 4, 4, 4], price: [650, 6500, 8e4, 93e4] }, { name: "Turtle", color: "#619a3c", class: "🐾", rarity: "Common", cash: [23, 120, 1400, 15e3, 17e4], time: [10, 10, 10, 10, 10], price: [700, 8500, 11e4, 13e5] }, { name: "Puppy", color: "#414042", class: "🐾", rarity: "Common", cash: [4, 10, 75, 500, 3e3], time: [1, 1, 1, 1, 1], price: [450, 4e3, 35e3, 25e4] }, { name: "Kitten", color: "#58595b", class: "🐾", rarity: "Common", cash: [4, 8, 60, 400, 2e3], time: [1, 1, 1, 1, 1], price: [350, 3500, 26e3, 17e4] }, { name: "Bear", color: "#995b3c", class: "🌲", rarity: "Common", cash: [12, 70, 550, 4500, 1e5], time: [7, 7, 6, 5, 5], price: [550, 5500, 63e3, 16e5] }, { name: "Moose", color: "#995b3c", class: "🌲", rarity: "Common", cash: [8, 45, 400, 3500, 26e3], time: [5, 5, 4, 4, 3], price: [520, 6500, 58e3, 7e5] }, { name: "Fox", color: "#f49849", class: "🌲", rarity: "Common", cash: [7, 15, 80, 550, 3e3], time: [2, 2, 1, 1, 1], price: [400, 4e3, 36e3, 24e4] }, { name: "Raccoon", color: "#6d6e71", class: "🌲", rarity: "Common", cash: [5, 14, 185, 1900, 19e3], time: [2, 2, 2, 2, 2], price: [400, 5e3, 71e3, 8e5] }, { name: "Squirrel", color: "#d25927", class: "🌲", rarity: "Common", cash: [3, 10, 65, 470, 2600], time: [1, 1, 1, 1, 1], price: [420, 3600, 32e3, 21e4] }, { name: "Owl", color: "#594a42", class: "🌲", rarity: "Common", cash: [4, 17, 155, 1500, 15e3], time: [2, 2, 2, 2, 2], price: [500, 4800, 55e3, 58e4] }, { name: "Hedgehog", color: "#3f312b", class: "🌲", rarity: "Common", cash: [11, 37, 340, 2200, 3e4], time: [5, 4, 3, 2, 2], price: [540, 7e3, 77e3, 12e5] }, { name: "Seal", color: "#7ca1d5", class: "❄️", rarity: "Common", cash: [6, 17, 150, 1200, 13e3], time: [2, 2, 2, 2, 2], price: [480, 4500, 43e3, 52e4] }, { name: "Arctic Fox", color: "#7ca1d5", class: "❄️", rarity: "Common", cash: [5, 18, 180, 850, 8500], time: [2, 2, 2, 1, 1], price: [520, 550, 61e3, 68e4] }, { name: "Snowy Owl", color: "#feda3f", class: "❄️", rarity: "Common", cash: [5, 20, 190, 1900, 16e3], time: [3, 3, 2, 2, 2], price: [370, 5300, 76e3, 62e4] }, { name: "Arctic Hare", color: "#7ca1d5", class: "❄️", rarity: "Common", cash: [6, 19, 85, 900, 7e3], time: [2, 2, 1, 1, 1], price: [540, 5200, 66e3, 55e4] }, { name: "Penguin", color: "#fb8640", class: "❄️", rarity: "Common", cash: [4, 21, 310, 3200, 33e3], time: [3, 3, 3, 3, 3], price: [400, 6500, 76e3, 87e4] }, { name: "Baby Penguin", color: "#414042", class: "❄️", rarity: "Common", cash: [3, 8, 70, 450, 2700], time: [1, 1, 1, 1, 1], price: [420, 3300, 33e3, 23e4] }, { name: "Polar Bear", color: "#7ca1d5", class: "❄️", rarity: "Common", cash: [12, 75, 700, 6500, 85e3], time: [8, 7, 6, 5, 5], price: [630, 7e3, 91e3, 14e5] }, { name: "Walrus", color: "#7d4f33", class: "❄️", rarity: "Common", cash: [11, 46, 420, 3700, 51e3], time: [5, 5, 4, 4, 4], price: [550, 6200, 68e3, 1e6] }, { name: "Tiger", color: "#f18221", class: "🌴", rarity: "Common", cash: [6, 20, 100, 975, 7500], time: [3, 3, 1, 1, 1], price: [390, 6e3, 7e4, 61e4] }, { name: "Jaguar", color: "#fbb040", class: "🌴", rarity: "Common", cash: [8, 28, 230, 1600, 17e3], time: [3, 3, 2, 2, 2], price: [390, 6e3, 7e4, 61e4] }, { name: "Toucan", color: "#ffca34", class: "🌴", rarity: "Common", cash: [9, 20, 175, 625, 3800], time: [2, 2, 2, 1, 1], price: [520, 4800, 42e3, 3e5] }, { name: "Cockatoo", color: "#7ca1d5", class: "🌴", rarity: "Common", cash: [6, 35, 160, 1700, 18e3], time: [4, 4, 2, 2, 2], price: [500, 5e3, 63e3, 7e5] }, { name: "Macaw", color: "#00aeef", class: "🌴", rarity: "Common", cash: [3, 8, 85, 850, 8500], time: [1, 1, 1, 1, 1], price: [480, 5400, 62e3, 63e4] }, { name: "Parrot", color: "#ed1c24", class: "🌴", rarity: "Common", cash: [3, 9, 90, 900, 9e3], time: [1, 1, 1, 1, 1], price: [540, 5700, 65e3, 69e4] }, { name: "Panther", color: "#2f2c38", class: "🌴", rarity: "Common", cash: [12, 28, 215, 2100, 21e3], time: [5, 3, 2, 2, 2], price: [530, 6500, 76e3, 87e4] }, { name: "Anaconda", color: "#8a9143", class: "🌴", rarity: "Common", cash: [3, 15, 85, 1500, 7600], time: [1, 2, 1, 2, 1], price: [410, 5100, 58e3, 59e4] }, { name: "Orangutan", color: "#bc6234", class: "🌴", rarity: "Common", cash: [13, 52, 570, 4300, 7e4], time: [5, 5, 5, 4, 4], price: [600, 7e3, 8e4, 14e5] }, { name: "Capuchin", color: "#e0b0a6", class: "🌴", rarity: "Common", cash: [4, 14, 160, 780, 8200], time: [2, 2, 2, 1, 1], price: [390, 4700, 57e3, 68e4] }, { name: "Elf", color: "#a7d054", class: "⚔️", rarity: "Uncommon", cash: [5e3, 15e3, 15e4, 15e5, 1e7], time: [1, 1, 1, 1, 1], price: [8e5, 9e6, 11e7, 8e8] }, { name: "Witch", color: "#4ab96d", class: "⚔️", rarity: "Uncommon", cash: [18e3, 6e4, 4e4, 4e6, 35e6], time: [3, 3, 2, 2, 2], price: [11e5, 12e6, 15e7, 14e8] }, { name: "Wizard", color: "#5a459c", class: "⚔️", rarity: "Uncommon", cash: [19500, 65e3, 44e4, 46e5, 4e6], time: [3, 3, 2, 2, 2], price: [13e5, 135e5, 16e7, 16e8] }, { name: "Fairy", color: "#df6d9c", class: "⚔️", rarity: "Uncommon", cash: [18500, 6e4, 62e4, 44e5, 38e6], time: [3, 3, 3, 2, 2], price: [12e5, 125e5, 15e6, 15e8] }, { name: "Slime Monster", color: "#2fa04a", class: "⚔️", rarity: "Uncommon", cash: [35e3, 14e4, 1e6, 11e6, 11e7], time: [5, 5, 4, 4, 4], price: [16e5, 15e6, 2e8, 23e8] }, { name: "Jester", color: "#be1e2d", class: "⚔️", rarity: "Rare", cash: [25e3, 1e5, 68e4, 65e5, 32e6], time: [3, 3, 2, 2, 1], price: [2e6, 21e6, 23e7, 26e8] }, { name: "Dragon", color: "#2fa04a", class: "⚔️", rarity: "Rare", cash: [36e3, 15e4, 15e5, 15e6, 15e7], time: [4, 4, 4, 4, 4], price: [23e5, 24e6, 27e7, 3e9] }, { name: "Unicorn", color: "#f6afce", class: "⚔️", rarity: "Epic", cash: [24e3, 15e4, 14e5, 7e6, 75e6], time: [2, 2, 2, 1, 1], price: [45e5, 45e6, 55e7, 65e8] }, { name: "Queen", color: "#9e1f63", class: "⚔️", rarity: "Rare", cash: [24e3, 95e3, 95e4, 97e5, 95e6], time: [3, 3, 3, 3, 3], price: [19e5, 2e7, 23e7, 25e8] }, { name: "King", color: "#ee2640", class: "⚔️", rarity: "Legendary", cash: [75e3, 4e5, 6e6, 9e7, 125e7], time: [5, 5, 5, 5, 5], price: [6e6, 95e6, 16e8, 25e9] }, { name: "Two of Spades", color: "#414042", class: "🏰", rarity: "Uncommon", cash: [4500, 14e3, 14e4, 14e5, 9e6], time: [1, 1, 1, 1, 1], price: [77e4, 83e5, 98e6, 71e7] }, { name: "Eat Me", color: "#d58c55", class: "🏰", rarity: "Uncommon", cash: [13e3, 45e3, 45e4, 45e5, 5e7], time: [2, 2, 2, 2, 2], price: [13e5, 14e6, 16e7, 2e9] }, { name: "Drink Me", color: "#dd7399", class: "🏰", rarity: "Uncommon", cash: [12e3, 4e4, 4e5, 4e6, 45e6], time: [2, 2, 2, 2, 2], price: [12e5, 12e6, 14e7, 18e8] }, { name: "Alice", color: "#4cc9f5", class: "🏰", rarity: "Uncommon", cash: [13e3, 42e3, 21e4, 21e5, 23e6], time: [2, 2, 1, 1, 1], price: [12e5, 13e6, 15e7, 19e8] }, { name: "Queen of Hearts", color: "#d62027", class: "🏰", rarity: "Uncommon", cash: [23e3, 87e3, 62e4, 75e5, 9e7], time: [4, 4, 3, 3, 3], price: [13e5, 13e6, 18e7, 24e8] }, { name: "Dormouse", color: "#89d6f8", class: "🏰", rarity: "Rare", cash: [17e3, 68e3, 7e5, 35e5, 35e6], time: [2, 2, 1, 1, 1], price: [2e6, 22e6, 25e7, 28e8] }, { name: "White Rabbit", color: "#ffcd05", class: "🏰", rarity: "Rare", cash: [26e3, 105e3, 11e6, 77e5, 72e6], time: [3, 3, 3, 2, 2], price: [2e6, 23e6, 28e7, 29e8] }, { name: "Cheshire Cat", color: "#dd7399", class: "🏰", rarity: "Rare", cash: [32e3, 1e5, 9e5, 9e6, 6e7], time: [4, 3, 3, 3, 2], price: [18e5, 19e6, 22e7, 24e8] }, { name: "Caterpillar", color: "#00c0f3", class: "🏰", rarity: "Epic", cash: [1e4, 7e4, 65e4, 75e5, 85e6], time: [1, 1, 1, 1, 1], price: [42e5, 42e6, 54e7, 69e8] }, { name: "Mad Hatter", color: "#914f93", class: "🏰", rarity: "Epic", cash: [38e3, 25e4, 15e5, 14e6, 8e7], time: [3, 3, 2, 2, 1], price: [48e5, 48e6, 52e7, 66e8] }, { name: "King of Hearts", color: "#c62127", class: "🏰", rarity: "Legendary", cash: [8e4, 42e4, 68e5, 1e8, 15e8], time: [5, 5, 5, 5, 5], price: [7e6, 11e7, 18e8, 3e10] }, { name: "Earth", color: "#416eb5", class: "🚀", rarity: "Uncommon", cash: [15e3, 45e3, 6e5, 65e5, 65e6], time: [3, 3, 3, 3, 3], price: [1e6, 11e6, 15e7, 17e8] }, { name: "Meteor", color: "#c68c3c", class: "🚀", rarity: "Uncommon", cash: [23e3, 65e3, 7e5, 45e5, 2e7], time: [5, 4, 3, 2, 1], price: [95e4, 13e6, 16e7, 16e8] }, { name: "Stars", color: "#19184d", class: "🚀", rarity: "Uncommon", cash: [1e4, 4e4, 2e5, 2e6, 18e6], time: [2, 2, 1, 1, 1], price: [14e5, 14e6, 15e7, 15e8] }, { name: "Alien", color: "#8dc63f", class: "🚀", rarity: "Uncommon", cash: [3e4, 1e5, 1e6, 11e6, 85e6], time: [4, 4, 4, 4, 4], price: [15e5, 17e6, 19e7, 17e8] }, { name: "Planet", color: "#9dc6ea", class: "🚀", rarity: "Rare", cash: [25e3, 1e5, 9e5, 9e6, 9e7], time: [3, 3, 3, 3, 3], price: [2e6, 21e6, 21e7, 24e8] }, { name: "UFO", color: "#a15095", class: "🚀", rarity: "Rare", cash: [17e3, 7e4, 7e5, 7e6, 7e7], time: [2, 2, 2, 2, 2], price: [21e5, 23e6, 25e7, 28e8] }, { name: "Spaceship", color: "#ffcb29", class: "🚀", rarity: "Epic", cash: [6e4, 32e4, 21e5, 15e6, 85e6], time: [5, 4, 3, 2, 1], price: [48e5, 46e6, 54e7, 68e8] }, { name: "Astronaut", color: "#9bd4ee", class: "🚀", rarity: "Legendary", cash: [45e3, 26e4, 25e5, 38e6, 55e7], time: [3, 3, 2, 2, 2], price: [65e5, 1e8, 17e8, 27e9] }, { name: "Lil Bot", color: "#3e564a", class: "🤖", rarity: "Uncommon", cash: [4e3, 12e3, 18e4, 19e5, 25e6], time: [1, 1, 1, 1, 1], price: [73e4, 12e6, 13e7, 19e8] }, { name: "Lovely Bot", color: "#f179af", class: "🤖", rarity: "Uncommon", cash: [16e3, 65e3, 65e4, 48e5, 42e6], time: [3, 3, 3, 2, 2], price: [13e5, 14e6, 17e7, 16e8] }, { name: "Angry Bot", color: "#f1613a", class: "🤖", rarity: "Uncommon", cash: [22e3, 85e3, 8e5, 62e5, 65e6], time: [4, 4, 4, 3, 3], price: [12e5, 13e6, 15e7, 17e8] }, { name: "Happy Bot", color: "#51ba6b", class: "🤖", rarity: "Uncommon", cash: [11e3, 45e3, 5e5, 25e5, 3e7], time: [2, 2, 2, 1, 1], price: [14e5, 15e6, 18e7, 24e8] }, { name: "Watson", color: "#d69b5a", class: "🤖", rarity: "Rare", cash: [24e3, 1e5, 1e6, 1e7, 1e8], time: [3, 3, 3, 3, 3], price: [2e6, 22e6, 24e7, 26e8] }, { name: "Buddy Bot", color: "#9dc6ea", class: "🤖", rarity: "Rare", cash: [22e3, 95e3, 65e4, 65e5, 65e6], time: [3, 3, 2, 2, 2], price: [19e5, 21e6, 23e7, 25e8] }, { name: "Brainy Bot", color: "#9ecf7a", class: "🤖", rarity: "Epic", cash: [5e4, 25e4, 21e5, 21e6, 17e7], time: [4, 3, 3, 3, 2], price: [5e6, 46e6, 5e8, 67e8] }, { name: "Mega Bot", color: "#d71f27", class: "🤖", rarity: "Legendary", cash: [8e4, 43e4, 42e5, 62e6, 1e9], time: [5, 5, 3, 3, 3], price: [7e6, 12e7, 19e8, 35e9] }].map(e => ({ name: e.name, value: JSON.stringify(e) })) }], run: function (e) { var t = document.createElement("iframe"), t = (document.body.append(t), window.alert = t.contentWindow.alert.bind(window), t.remove(), Object.values(document.querySelector("body > div > div > div"))[1].children[0]._owner)["stateNode"]; 10 <= t.state.blooks.length && alert("Choose a blook to replace"), t.chooseBlook(JSON.parse(e)) } }, { name: "Free Upgrades", description: "Sets upgrade prices to 0 for all current blooks", run: function () { var e = Object.values(document.querySelector("body > div > div > div"))[1].children[0]._owner["stateNode"]; e.setState(e => ({ ...e, blooks: e.blooks.map(e => ({ ...e, price: [0, 0, 0, 0] })) })) } }, { name: "Max Blooks", description: "Maxes out all your blooks' levels", run: function () { Object.values(document.querySelector("body > div > div > div"))[1].children[0]._owner.stateNode.state.blooks.forEach(e => e.level = 4) } }, { name: "Remove Glitches", description: "Removes all enemy glitches", run: function () { var e = Object.values(document.querySelector("body > div > div > div"))[1].children[0]._owner["stateNode"]; e.setState({ bits: 0, ads: [], hazards: [], color: "", lol: !1, joke: !1, slow: !1, dance: !1, glitch: "", glitcherName: "", glitcherBlook: "" }), clearTimeout(e.adTimeout), clearInterval(e.hazardInterval), clearTimeout(e.nightTimeout), clearTimeout(e.glitchTimeout), clearTimeout(e.lolTimeout), clearTimeout(e.jokeTimeout), clearTimeout(e.slowTimeout), clearTimeout(e.danceTimeout), clearTimeout(e.nameTimeout) } }, { name: "Send Glitch", description: "Sends a glitch to everyone else playing", inputs: [{ name: "Glitch", type: "options", options: Object.entries({ lb: "Lunch Break", as: "Ad Spam", e37: "Error 37", nt: "Night Time", lo: "#LOL", j: "Jokester", sm: "Slow Mo", dp: "Dance Party", v: "Vortex", r: "Reverse", f: "Flip", m: "Micro" }).map(([e, t]) => ({ name: t, value: e })) }], run: function (e) { var t = Object.values(document.querySelector("body > div > div > div"))[1].children[0]._owner["stateNode"]; t.safe = !0, t.props.liveGameController.setVal({ path: `c/${t.props.client.name}/tat`, val: e }) } }, { name: "Set All MegaBot", description: "Sets all your blooks to maxed out Mega Bots", run: function () { Object.values(document.querySelector("body > div > div > div"))[1].children[0]._owner.stateNode.setState({ blooks: new Array(10).fill({ name: "Mega Bot", color: "#d71f27", class: "🤖", rarity: "Legendary", cash: [8e4, 43e4, 42e5, 62e6, 1e9], time: [5, 5, 3, 3, 3], price: [7e6, 12e7, 19e8, 35e9], active: !1, level: 4, bonus: 5.5 }) }) } }, { name: "Set Cash", description: "Sets amount of cash you have", inputs: [{ name: "Cash", type: "number" }], run: function (e) { Object.values(document.querySelector("body > div > div > div"))[1].children[0]._owner.stateNode.setState({ cash: e }) } }], fishing: [{ name: "Frenzy", description: "Sets everyone to frenzy mode", run: function () { var e = Object.values(document.querySelector("body > div > div > div"))[1].children[0]._owner["stateNode"]; e.props.liveGameController.setVal({ path: "c/" + e.props.client.name, val: { b: e.props.client.blook, w: e.state.weight, f: "Frenzy", s: !0 } }) } }, { name: "Remove Distractions", description: "Removes distractions", type: "toggle", enabled: !1, data: null, run: function () { this.enabled ? (this.enabled = !1, clearInterval(this.data), this.data = null) : (this.enabled = !0, this.data = setInterval(() => { Object.values(document.querySelector("body > div > div > div"))[1].children[0]._owner.stateNode.setState({ party: "" }) }, 50)) } }, { name: "Send Distraction", description: "Sends a distraction to everyone", inputs: [{ name: "Distraction", type: "options", options: ["Crab", "Jellyfish", "Frog", "Pufferfish", "Octopus", "Narwhal", "Megalodon", "Blobfish", "Baby Shark"] }], run: function (e) { var t = document.createElement("iframe"), t = (document.body.append(t), window.alert = t.contentWindow.alert.bind(window), t.remove(), Object.values(document.querySelector("body > div > div > div"))[1].children[0]._owner)["stateNode"]; t.safe = !0, t.props.liveGameController.setVal({ path: "c/" + t.props.client.name, val: { b: t.props.client.blook, w: t.state.weight, f: e, s: !0 } }) } }, { name: "Set Lure", description: "Sets fishing lure (range 1 - 5)", inputs: [{ name: "Lure (1 - 5)", type: "number", min: 1, max: 5 }], run: function (e) { Object.values(document.querySelector("body > div > div > div"))[1].children[0]._owner.stateNode.setState({ lure: Math.max(Math.min(e - 1, 4), 0) }) } }, { name: "Set Weight", description: "Sets weight", inputs: [{ name: "Weight", type: "number" }], run: function (e) { var t = Object.values(document.querySelector("body > div > div > div"))[1].children[0]._owner["stateNode"]; t.setState({ weight: e, weight2: e }), t.props.liveGameController.setVal({ path: "c/" + t.props.client.name, val: { b: t.props.client.blook, w: e, f: ["Crab", "Jellyfish", "Frog", "Pufferfish", "Octopus", "Narwhal", "Megalodon", "Blobfish", "Baby Shark"][Math.floor(9 * Math.random())] } }) } }], flappy: [{ name: "Toggle Ghost", description: "Lets you go through the pipes", type: "toggle", enabled: !1, run: function () { this.enabled = !this.enabled, Object.values(document.querySelector("#phaser-bouncy"))[1].children[0]._owner.stateNode.state.game.scene.physics.world.bodies.entries.forEach(e => e.gameObject.frame.texture.key.startsWith("blook") && (e.checkCollision.none = this.enabled, e.gameObject.setAlpha(this.enabled ? .5 : 1))) } }, { name: "Set Score", description: "Sets flappy blook score", inputs: [{ name: "Score", type: "number" }], run: function (e) { Object.values(document.querySelector("#phaser-bouncy"))[1].children[0]._owner.stateNode.setState({ score: e }) } }], gold: [{ name: "Always Triple", description: "Always get triple gold", type: "toggle", enabled: !1, data: null, run: function () { let t = Object.values(document.querySelector("body > div > div > div"))[1].children[0]._owner["stateNode"]; t._choosePrize ||= t.choosePrize, this.enabled ? (this.enabled = !1, clearInterval(this.data), this.data = null, t.choosePrize = t._choosePrize || t.choosePrize) : (this.enabled = !0, this.data = setInterval(() => { t.choosePrize = function (e) { t.state.choices[e] = { type: "multiply", val: 3, text: "Triple Gold!", blook: "Unicorn" }, t._choosePrize(e) } }, 50)) } }, { name: "Auto Choose", description: "Automatically picks the option that would give you the most gold", type: "toggle", enabled: !1, data: null, run: function () { this.enabled ? (this.enabled = !1, clearInterval(this.data), this.data = null) : (this.enabled = !0, this.data = setInterval(async () => { try { let o = Object.values(document.querySelector("body > div > div > div"))[1].children[0]._owner["stateNode"]; if ("prize" === o.state.stage) { var i = Object.entries(await new Promise(t => o.props.liveGameController.getDatabaseVal("c", e => e && t(e))) || []).filter(e => e[0] != o.props.client.name).sort((e, t) => t[1].g - e[1].g)[0]?.[1]?.g || 0; let a = 0; index = -1; for (let t = 0; t < o.state.choices.length; t++) { var { type: n, val: r } = o.state.choices[t]; let e = o.state.gold; switch (n) { case "gold": e = o.state.gold + r || o.state.gold; break; case "multiply": case "divide": e = Math.round(o.state.gold * r) || o.state.gold; break; case "swap": e = i || o.state.gold; case "take": e = o.state.gold + i * r || o.state.gold }(e || 0) <= a || (a = e, index = t + 1) } document.querySelector(`div[class^='styles__choice${index}']`).click() } } catch {} }, 50)) } }, { name: "Chest ESP", description: "Shows what each chest will give you", type: "toggle", enabled: !1, data: null, run: function () { this.enabled ? (this.enabled = !1, clearInterval(this.data), this.data = null) : (this.enabled = !0, this.data = setInterval(() => { Object.values(document.querySelector("body > div > div > div"))[1].children[0]._owner.stateNode.state.choices.forEach(({ text: e }, t) => { var a, t = document.querySelector(`div[class^='styles__choice${t+1}']`); t && !t.querySelector("div") && ((a = document.createElement("div")).style.color = "white", a.style.fontFamily = "Eczar", a.style.fontSize = "2em", a.style.display = "flex", a.style.justifyContent = "center", a.style.transform = "translateY(200px)", a.innerText = e, t.append(a)) }) }, 50)) } }, { name: "Reset Players Gold", description: "Sets a player's gold to 0", inputs: [{ name: "Player", type: "options", options: () => { let e = Object.values(document.querySelector("body > div > div > div"))[1].children[0]._owner["stateNode"]; return new Promise(t => e.props.liveGameController._liveApp ? e.props.liveGameController.getDatabaseVal("c", e => e && t(Object.keys(e))) : t([])) } }], run: function (e) { var { props: t, state: a } = Object.values(document.querySelector("body > div > div > div"))[1].children[0]._owner["stateNode"]; t.liveGameController.setVal({ path: "c/".concat(t.client.name), val: { b: t.client.blook, g: a.gold, tat: e + ":swap:0" } }) } }, { name: "Set Gold", description: "Sets amount of gold", inputs: [{ name: "Gold", type: "number" }], run: function (e) { var t = Object.values(document.querySelector("body > div > div > div"))[1].children[0]._owner["stateNode"]; t.setState({ gold: e, gold2: e }), t.props.liveGameController.setVal({ path: "c/".concat(t.props.client.name), val: { b: t.props.client.blook, g: e } }) } }, { name: "Swap Gold", description: "Swaps gold with someone", inputs: [{ name: "Player", type: "options", options: () => { let e = Object.values(document.querySelector("body > div > div > div"))[1].children[0]._owner["stateNode"]; return new Promise(t => e.props.liveGameController._liveApp ? e.props.liveGameController.getDatabaseVal("c", e => e && t(Object.keys(e))) : t([])) } }], run: function (t) { let a = Object.values(document.querySelector("body > div > div > div"))[1].children[0]._owner["stateNode"]; a.props.liveGameController.getDatabaseVal("c", e => { e?.[t] && (e = e[t]["g"], a.props.liveGameController.setVal({ path: "c/".concat(a.props.client.name), val: { b: a.props.client.blook, g: e, tat: t + ":swap:" + a.state.gold } }), a.setState({ gold: e, gold2: e })) }) } }, { name: "Reset All Players' Gold", description: "Set's everyone else's gold to 0", run: function () { var e = document.createElement("iframe"); document.body.append(e), window.alert = e.contentWindow.alert.bind(window), e.remove(); let { props: a, state: o } = Object.values(document.querySelector("body > div > div > div"))[1].children[0]._owner["stateNode"], i = 0; a.liveGameController.getDatabaseVal("c", async e => { if (e) for (const t of Object.keys(e)) a.liveGameController.setVal({ path: "c/".concat(a.client.name), val: { b: a.client.blook, g: o.gold, tat: t + ":swap:0" } }), i++, await new Promise(e => setTimeout(e, 4e3)); alert(`Reset ${i} players' gold!`) }) } }], kingdom: [{ name: "Choice ESP", description: "Shows you what will happen if you say Yes or No", type: "toggle", enabled: !1, data: null, run: function () { if (this.enabled) this.enabled = !1, clearInterval(this.data), Array.from(document.getElementsByClassName("choiceESP")).forEach(e => e.remove()), this.data = null; else { this.enabled = !0; let a = ["materials", "people", "happiness", "gold"], o = Object.fromEntries([...document.querySelectorAll("[class^=styles__statContainer]")].map((e, t) => [a[t], e])); this.data = setInterval(() => { var { guest: e, phase: t } = Object.values(document.querySelector("body > div > div > div"))[1].children[0]._owner.stateNode.state; "choice" == t && (Array.from(document.getElementsByClassName("choiceESP")).forEach(e => e.remove()), Object.entries(e.yes || {}).forEach(e => { var t; "msg" != e[0] && a.includes(e[0]) && ((t = document.createElement("div")).className = "choiceESP", t.style = "font-size: 24px; color: rgb(75, 194, 46); font-weight: bolder;", t.innerText = String(e[1]), o[e[0]].appendChild(t)) }), Object.entries(e.no || {}).forEach(e => { var t; "msg" != e[0] && a.includes(e[0]) && ((t = document.createElement("div")).className = "choiceESP", t.style = "font-size: 24px; color: darkred; font-weight: bolder;", t.innerText = String(e[1]), o[e[0]].appendChild(t)) })) }, 50) } } }, { name: "Disable Tax Toucan", description: "Tax evasion", run: function () { Object.values(document.querySelector("body > div > div > div"))[1].children[0]._owner.stateNode.taxCounter = Number.MAX_VALUE } }, { name: "Max Stats", description: "Sets all resources to the max", run: function () { Object.values(document.querySelector("body > div > div > div"))[1].children[0]._owner.stateNode.setState({ materials: 100, people: 100, happiness: 100, gold: 100 }) } }, { name: "Set Guests", description: "Sets the amount of guests you've seen", inputs: [{ name: "Guests", type: "number" }], run: function (e) { Object.values(document.querySelector("body > div > div > div"))[1].children[0]._owner.stateNode.setState({ guestScore: e }) } }, { name: "Skip Guest", description: "Skips the current guest", run: function () { Object.values(document.querySelector("body > div > div > div"))[1].children[0]._owner.stateNode.nextGuest() } }], racing: [{ name: "Instant Win", description: "Instantly Wins the race", run: function () { const e = Object.values(document.querySelector("body > div > div > div"))[1].children[0]._owner["stateNode"]; e.setState({ progress: e.state.goalAmount }, () => { const { question: a } = e["state"]; try { [...document.querySelectorAll('[class*="answerContainer"]')][a.answers.map((e, t) => a.correctAnswers.includes(e) ? t : null).filter(e => null != e)[0]]?.click?.() } catch {} }) } }], royale: [{ name: "Auto Answer (Toggle)", description: "Toggles auto answer on", type: "toggle", enabled: !1, data: null, run: function () { this.enabled ? (this.enabled = !1, clearInterval(this.data), this.data = null) : (this.enabled = !0, this.data = setInterval(() => { var e = Object.values(document.querySelector("body > div > div > div"))[1].children[0]._owner["stateNode"]; e?.onAnswer?.(!0, e.props.client.question.correctAnswers[0]) }, 50)) } }, { name: "Auto Answer", description: "Chooses the correct answer for you", run: function () { var e = Object.values(document.querySelector("body > div > div > div"))[1].children[0]._owner["stateNode"]; e?.onAnswer?.(!0, e.props.client.question.correctAnswers[0]) } }], rush: [{ name: "Set Blooks", description: "Sets amount of blooks you or your team has", inputs: [{ name: "Blooks", type: "number" }], run: function (e) { var t = Object.values(document.querySelector("body > div > div > div"))[1].children[0]._owner["stateNode"]; t.setState({ numBlooks: e }), t.isTeam ? t.props.liveGameController.setVal({ path: `a/${t.props.client.name}/bs`, val: e }) : t.props.liveGameController.setVal({ path: `c/${t.props.client.name}/bs`, val: numDefense }) } }, { name: "Set Defense", description: "Sets amount of defense you or your team has (Max 4)", inputs: [{ name: "Defense (max 4)", type: "number", max: 4 }], run: function (e) { var e = Math.min(e, 4), t = Object.values(document.querySelector("body > div > div > div"))[1].children[0]._owner["stateNode"]; t.setState({ numDefense: e }), t.isTeam ? t.props.liveGameController.setVal({ path: `a/${t.props.client.name}/d`, val: e }) : t.props.liveGameController.setVal({ path: `c/${t.props.client.name}/d`, val: e }) } }], workshop: [{ name: "Remove Distractions", description: "Removes all enemy distractions", run: function () { Object.values(document.querySelector("body > div > div > div"))[1].children[0]._owner.stateNode.setState({ fog: !1, dusk: !1, wind: !1, plow: !1, blizzard: !1, force: !1, canada: !1, trees: [!1, !1, !1, !1, !1, !1, !1, !1, !1, !1] }) } }, { name: "Send Distraction", description: "Sends a distraction to everyone else playing", inputs: [{ name: "Distraction", type: "options", options: Object.entries({ c: "Oh Canada", b: "Blizzard", f: "Fog Spell", d: "Dark & Dusk", w: "Howling Wind", g: "Gift Time!", t: "TREES", s: "Snow Plow", fr: "Use The Force" }).map(([e, t]) => ({ name: t, value: e })) }], run: function (e) { var t = Object.values(document.querySelector("body > div > div > div"))[1].children[0]._owner["stateNode"]; t.safe = !0, t.props.liveGameController.setVal({ path: `c/${t.props.client.name}/tat`, val: e }) } }, { name: "Set Toys", description: "Sets amount of toys", inputs: [{ name: "Toys", type: "number" }], run: function (e) { var t = Object.values(document.querySelector("body > div > div > div"))[1].children[0]._owner["stateNode"]; t.setState({ toys: e }), t.props.liveGameController.setVal({ path: "c/".concat(t.props.client.name), val: { b: t.props.client.blook, t: e } }) } }, { name: "Set Toys Per Question", description: "Sets amount of toys per question", inputs: [{ name: "Toys Per Question", type: "number" }], run: function (e) { Object.values(document.querySelector("body > div > div > div"))[1].children[0]._owner.stateNode.setState({ toysPerQ: e }) } }, { name: "Swap Toys", description: "Swaps toys with someone", inputs: [{ name: "Player", type: "options", options: () => { let e = Object.values(document.querySelector("body > div > div > div"))[1].children[0]._owner["stateNode"]; return new Promise(t => e.props.liveGameController._liveApp ? e.props.liveGameController.getDatabaseVal("c", e => e && t(Object.keys(e))) : t([])) } }], run: function (a) { let o = Object.values(document.querySelector("body > div > div > div"))[1].children[0]._owner["stateNode"]; o.props.liveGameController.getDatabaseVal("c", e => { var t; e && Object.keys(e).map(e => e.toLowerCase()).includes(a.toLowerCase()) && ([e, { t }] = Object.entries(e).find(([e]) => e.toLowerCase() == a.toLowerCase()), o.props.liveGameController.setVal({ path: "c/".concat(o.props.client.name), val: { b: o.props.client.blook, t: t, tat: e + ":swap:" + o.state.toys } }), o.setState({ toys: t })) }) } }], settings: [{ name: "Import Settings", description: "Import a custom theme", inputs: [{ name: "JSON Data", type: "string" }], run: function (e) { try { JSON.parse(e) } catch (e) { return alert("Invalid JSON provided") } e = { backgroundColor: "rgb(11, 194, 207)", infoColor: "#9a49aa", cheatList: "#9a49aa", defaultButton: "#9a49aa", disabledButton: "#A02626", enabledButton: "#47A547", textColor: "white", inputColor: "#7a039d", contentBackground: "rgb(64, 17, 95)", ...JSON.parse(e) }, l.setItem("theme", e); for (const t in e) c.sheet.cssRules[0].style.setProperty("--" + t, e[t]) } }, { name: "Export Settings", description: "Export the current theme to JSON", run: async function () { await navigator.clipboard.writeText(JSON.stringify(l.data.theme, null, 4)), prompt("Text copied to clipboard. (Paste below to test)") } }, { name: "Defaults", description: "Changes all the settings to a preset", inputs: [{ name: "Theme", type: "options", options: [{ name: "Default", value: { backgroundColor: "rgb(11, 194, 207)", infoColor: "#9a49aa", cheatList: "#9a49aa", defaultButton: "#9a49aa", disabledButton: "#A02626", enabledButton: "#47A547", textColor: "white", inputColor: "#7a039d", contentBackground: "rgb(64, 17, 95)" } }, { name: "Blacket", value: { backgroundColor: "#4f4f4f", infoColor: "#2f2f2f", cheatList: "#2f2f2f", defaultButton: "#4f4f4f", disabledButton: "#eb6234", enabledButton: "#00c20c", textColor: "white", inputColor: "#3f3f3f", contentBackground: "#2f2f2f" } }, { name: "Skool.lol", value: { backgroundColor: "linear-gradient(90deg, rgba(104,45,140,1) 220px, rgba(237,30,121,1) 100%)", cheatList: "#1e2124", infoColor: "#1e2124", defaultButton: "#36393e", inputColor: "#1e2124", enabledButton: "#9c9a9a", textColor: "white", disabledButton: "#171717", contentBackground: "#292929" } }, { name: "Blue - Purple Background", value: { backgroundColor: "linear-gradient(162.5deg, rgba(0,183,255,1) 220px, rgba(128,0,255,1) 100%)" } }, { name: "Saint Patricks Background", value: { backgroundColor: "rgb(9, 148, 65)" } }, { name: "Halloween Background", value: { backgroundColor: "rgb(41, 41, 41)" } }, { name: "Fall Background", value: { backgroundColor: "rgb(224, 159, 62)" } }, { name: "Winter Background", value: { backgroundColor: "linear-gradient(rgb(49, 170, 224), rgb(187, 221, 255))" } }, { name: "Crypto Hack", value: { backgroundColor: "radial-gradient(#11581e,#041607)", infoColor: "#1a1a1a", cheatList: "#1a1a1a", defaultButton: "rgb(88 175 88)", disabledButton: "#A02626", enabledButton: "#0b601b", textColor: "white", inputColor: "rgb(0 0 0 / 25%)", contentBackground: "#11581e" } }, { name: "Fishing Frenzy", value: { backgroundColor: "linear-gradient(180deg,#9be2fe 0,#67d1fb)", infoColor: "#c8591e", cheatList: "#c8591e", defaultButton: "#ff751a", disabledButton: "#bf0e0e", enabledButton: "#2fb62f", textColor: "white", inputColor: "rgb(0 0 0 / 25%)", contentBackground: "radial-gradient(#02b0ea 40%, #1d86ea)" } }, { name: "Deceptive Dinos", value: { backgroundColor: 'radial-gradient(rgba(220, 184, 86, 0), rgba(220, 184, 86, 0.4)), url("https://ac.blooket.com/play/111cb7e0ee6607ac3d1a13d534c0e0f1.png"), #ead49a', infoColor: "#af8942", cheatList: "#af8942", defaultButton: "#af8942", disabledButton: "#A02626", enabledButton: "#47A547", textColor: "white", inputColor: "rgb(0 0 0 / 10%)", contentBackground: "radial-gradient(rgba(1,104,162,.6),rgba(24,55,110,.5)),radial-gradient(#2783b4 1.5px,#18376e 0) center / 24px 24px" } }, { name: "Blook Rush", value: { backgroundColor: "repeating-linear-gradient(45deg,white,white 8%,#e6e6e6 0,#e6e6e6 16%)", defaultButton: "#36c", inputColor: "rgb(0 0 0 / 25%)", infoColor: "#36c", cheatList: "#36c", contentBackground: "#888", textColor: "white", disabledButton: "#A02626", enabledButton: "#47A547" } }, { name: "Factory", value: { defaultButton: "#1563bf", infoColor: "#a5aabe", cheatList: "#a5aabe", contentBackground: "#2d313d", backgroundColor: "#3a3a3a", enabledButton: "rgb(75, 194, 46)", disabledButton: "#9a49aa", inputColor: "rgb(0 0 0 / 25%)", textColor: "white" } }, { name: "Cafe", value: { backgroundColor: "linear-gradient(90deg,rgba(200,0,0,.5) 50%,transparent 0) center / 50px 50px,linear-gradient(rgba(200,0,0,0.5) 50%,transparent 0) white center / 50px 50px", defaultButton: "#0bc2cf", inputColor: "rgb(0 0 0 / 25%)", infoColor: "#ac7339", cheatList: "#ac7339", contentBackground: "rgb(64, 64, 64)", textColor: "white", disabledButton: "#A02626", enabledButton: "#47A547" } }, { name: "Tower of Doom", value: { backgroundColor: "rgb(41 41 41)", disabledButton: "rgb(151, 15, 5)", defaultButton: "#333", inputColor: "rgb(0 0 0 / 25%)", contentBackground: "#404040", enabledButton: "#4bc22e", textColor: "white", infoColor: "#9a49aa", cheatList: "#9a49aa" } }, { name: "Monster Brawl", value: { defaultButton: "rgb(45, 51, 67)", backgroundColor: "rgb(78, 95, 124)", inputColor: "rgb(0 0 0 / 25%)", contentBackground: "linear-gradient(0deg,#374154,#4f5b74)", infoColor: "#374154", cheatList: "#374154", textColor: "white", enabledButton: "#47A547", disabledButton: "#A02626" } }, { name: "Tower Defense 2", value: { backgroundColor: "url(https://media.blooket.com/image/upload/v1676164454/Media/defense/backgroundTd1-02.svg) center / cover", cheatList: "#a33c22", infoColor: "#a33c22", defaultButton: "#40b1d8", inputColor: "#3e8cbe", contentBackground: "#293c82", enabledButton: "#47A547", disabledButton: "#A02626", textColor: "white" } }] }], run: function (e) { l.setItem("theme", { ...l.data.theme, ...e }); for (const t in e) c.sheet.cssRules[0].style.setProperty("--" + t, e[t]) } }, { name: "Scale", description: "Forces the GUI to scale from 25%-100%", inputs: [{ type: "number", name: "Percent scale", min: 25, max: 100, value: 100 * (l.data.scale || 1) }], run: function (e) { e = Math.min(Math.max(e, 25), 100), l.setItem("scale", e / 100), b.style.transform = `scale(${e/100})` } }, { name: "Hide Keybind", description: "Change the hide keybind (Click button after input to change)", inputs: [{ type: "function", name: "Input", function: i => O(({ shift: e, ctrl: t, alt: a, key: o }) => i("" + [t && "Ctrl", e && "Shift", a && "Alt", o && o.toUpperCase()].filter(Boolean).join(" + "))) }], run: function (e) { l.setItem("hide", e), u.update(l.data.hide || { ctrl: !0, key: "e" }, l.data.close || { ctrl: !0, key: "x" }) } }, { name: "Close Keybind", description: "Change the quick close keybind (Click button after input to change)", inputs: [{ type: "function", name: "Input", function: i => O(({ shift: e, ctrl: t, alt: a, key: o }) => i("" + [t && "Ctrl", e && "Shift", a && "Alt", o && o.toUpperCase()].filter(Boolean).join(" + "))) }], run: function (e) { l.setItem("close", e), u.update(l.data.hide || { ctrl: !0, key: "e" }, l.data.close || { ctrl: !0, key: "x" }) } }, { name: "Background Color", description: "Changes the background color of the GUI", inputs: [{ type: "string", name: "Color" }], run: function (e) { c.sheet.cssRules[0].style.setProperty("--backgroundColor", e), l.setItem("theme.backgroundColor", e) } }, { name: "Category List Color", description: "Changes the categories list background color", inputs: [{ type: "string", name: "Color" }], run: function (e) { c.sheet.cssRules[0].style.setProperty("--cheatList", e), l.setItem("theme.cheatList", e) } }, { name: "Info Color", description: "Changes the color of the information at the top of the GUI", inputs: [{ type: "string", name: "Color" }], run: function (e) { c.sheet.cssRules[0].style.setProperty("--infoColor", e), l.setItem("theme.infoColor", e) } }, { name: "Button Color", description: "Changes the color of the cheats", inputs: [{ type: "string", name: "Color" }], run: function (e) { c.sheet.cssRules[0].style.setProperty("--defaultButton", e), l.setItem("theme.defaultButton", e) } }, { name: "Enabled Toggle Color", description: "Changes the color of enabled toggle cheats", inputs: [{ type: "string", name: "Color" }], run: function (e) { l.setItem("theme.enabledButton", e) } }, { name: "Disabled Toggle Color", description: "Changes the color of disabled toggle cheats", inputs: [{ type: "string", name: "Color" }], run: function (e) { c.sheet.cssRules[0].style.setProperty("--disabledButton", e), l.setItem("theme.disabledButton", e) } }, { name: "Text Color", description: "Changes the text color", inputs: [{ type: "string", name: "Color" }], run: function (e) { c.sheet.cssRules[0].style.setProperty("--textColor", e), l.setItem("theme.textColor", e) } }, { name: "Input Color", description: "Changes the color of inputs, like the set gold number input", inputs: [{ type: "string", name: "Color" }], run: function (e) { c.sheet.cssRules[0].style.setProperty("--inputColor", e), l.setItem("theme.inputColor", e) } }, { name: "Content Color", description: "Changes the background color of the cheats", inputs: [{ type: "string", name: "Color" }], run: function (e) { c.sheet.cssRules[0].style.setProperty("--contentBackground", e), l.setItem("theme.contentBackground", e) } }], alerts: [{ element: y("div", { className: "alertContainer", style: { margin: "15px 15px 5px 15px", backgroundColor: "rgb(0 0 0 / 50%)", width: "95%", height: "370px", borderRadius: "7px", display: "block", alignItems: "center", justifyContent: "center" } }, y("ul", { className: "alertList", style: { margin: "10px 10px 0 10px", padding: "0", listStyleType: "none", display: "flex", flexDirection: "column-reverse", height: "355px", overflowY: "scroll", wordWrap: "break-word" } }, y("li", { style: { margin: "5px" } }, y("span", { style: { color: "var(--textColor)" }, innerText: "[LOG] GUI opened" })))), addLog(e, t) { return this.element.firstChild.prepend(y("li", { style: { margin: "5px" } }, y("span", { style: { color: t || "var(--textColor)" }, innerHTML: "[LOG] " + e }))) }, addAlert(e, t, a) { return this.element.firstChild.prepend(y("li", { style: { margin: "5px" } }, y("img", { src: t || this.blookData?.Black?.url, alt: "blook", draggable: !1, style: { height: "22.5px", margin: "0 10px -5px 0" } }), y("strong", {}, e), " ", a)) }, connection: null, data: {}, updateLeaderboard(e) { this.leaderboardEl || this.addLeaderboard(), this.leaderboard.innerHTML = ""; for (var { blook: t, name: a, value: o } of e) this.leaderboard.append(y("li", { style: { fontSize: "2rem", paddingInline: "72px 15px", paddingBlock: "1.25px", position: "relative" } }, y("img", { src: this.blookData?.[t]?.url || this.blookData.Black.url, alt: t, draggable: !1, style: { height: "45px", position: "absolute", left: "15px" } }), a, y("span", { innerText: this.parseNumber(parseInt(o)), style: { float: "right" } }))) }, parseNumber(o = 0) { var i = o; if (o < 1e3) return i.toString(); var e = ["", "K", "M", "B", "T"], a = Math.floor((o.toString().length - 1) / 3); if (a < e.length) { let t = 0; for (let e = 3; 1 <= e && !((t = parseFloat((0 !== a ? o / Math.pow(1e3, a) : o).toPrecision(e))).toString().replace(/[^a-zA-Z 0-9]+/g, "").length <= 3); e--); i = (t = t % 1 != 0 ? t.toFixed(1) : t) + e[a] } else { let e = o, t = 0; for (; 100 <= e; t++) e = Math.floor(e / 10); let a = ""; var n = ["⁰", "¹", "²", "³", "⁴", "⁵", "⁶", "⁷", "⁸", "⁹"]; for (const r of (t + 1).toString().split("")) a += n[Number(r)]; i = e / 10 + " × 10" + a } return i }, addLeaderboard() { this.blookData ||= Object.values(webpackJsonp.push([ [], { "": (e, t, a) => { t.cache = a.c } }, [ [""] ] ]).cache).find(e => e.exports?.a?.Alice && e.exports?.a?.Alien).exports.a, this.element.append(this.leaderboardEl = y("div", { id: "leaderboardContent", style: { position: "absolute", inset: "110% 0px" } }, y("div", { style: { alignItems: "center", boxSizing: "border-box", display: "flex", flexDirection: "row", flexWrap: "wrap", justifyContent: "space-evenly", padding: "20px 5px 20px", position: "relative", width: "100%", fontFamily: "Nunito, sans-serif", fontWeight: "400", color: "var(--textColor)", background: "var(--contentBackground)", boxShadow: "inset 0 -6px rgb(0 0 0 / 20%)", borderRadius: "7px" } }, y("div", { className: "headerText", style: { boxSizing: "border-box", display: "block", height: "45px", left: "-10px", padding: "4px 4px 8px", position: "absolute", top: "-28px", backgroundColor: "#ef7426", boxShadow: "0 4px rgb(0 0 0 / 20%), inset 0 -4px rgb(0 0 0 / 20%)", borderRadius: "7px" } }, y("div", { style: { alignItems: "center", boxSizing: "border-box", display: "flex", height: "100%", justifyContent: "center", padding: "0 15px", width: "100%", fontFamily: "Titan One, sans-serif", fontSize: "26px", fontWeight: "400", textShadow: "-1px -1px 0 #646464, 1px -1px 0 #646464, -1px 1px 0 #646464, 2px 2px 0 #646464", color: "white", background: "linear-gradient(#fcd843,#fcd843 50%,#feb31a 50.01%,#feb31a)", borderRadius: "5px" }, innerText: "Leaderboard" })), y("div", { className: "alertContainer", style: { margin: "15px 15px 5px 15px", backgroundColor: "rgb(0 0 0 / 50%)", width: "95%", height: "370px", borderRadius: "7px", display: "flex", alignItems: "center", justifyContent: "center" } }, this.leaderboard = y("nl", { className: "alertList", style: { marginTop: "10px", padding: "0", listStyleType: "decimal", width: "100%", height: "355px", overflowY: "scroll", wordWrap: "break-word" } }))))) }, async connect() { try { var e = Object.values(document.querySelector("body > div > div > div"))[1].children[0]._owner["stateNode"]; if (!e?.props?.liveGameController?._liveGameCode) return !1; this.connection = await e.props.liveGameController.getDatabaseRef("c"); const w = this.blookData = Object.values(webpackJsonp.push([ [], { "": (e, t, a) => { t.cache = a.c } }, [ [""] ] ]).cache).find(e => e.exports?.a?.Alice && e.exports?.a?.Alien).exports.a, k = this.getGamemode(), x = { lb: "Lunch Break", as: "Ad Spam", e37: "Error 37", nt: "Night Time", lo: "#LOL", j: "Jokester", sm: "Slow Mo", dp: "Dance Party", v: "Vortex", r: "Reverse", f: "Flip", m: "Micro" }; this.connection.on("value", e => { var t = e.val() || {}; if (t && this.diffObjects(this.data, t)) { var a, o, i, n, r, s, l, c, d = this.diffObjects(this.data, t); this.data = t; let e; switch (k) { case "racing": e = Object.entries(t).map(([e, { b: t, pr: a }]) => ({ name: e, blook: t, value: a || 0 })); case "classic": e = Object.entries(t).map(([e, { b: t, p: a }]) => ({ name: e, blook: t, value: a || 0 })); case "royale": e = Object.entries(t).map(([e, { b: t, e: a }]) => ({ name: e, blook: t, value: a || 0 })); case "workshop": e = Object.entries(t).map(([e, { b: t, t: a }]) => ({ name: e, blook: t, value: a || 0 })); case "brawl": e = Object.entries(t).map(([e, { b: t, xp: a }]) => ({ name: e, blook: t, value: a || 0 })); case "defense": case "defense2": e = Object.entries(t).map(([e, { b: t, d: a }]) => ({ name: e, blook: t, value: a || 0 })); case "gold": for (const h in d) d[h].tat && ([a, o] = d[h].tat.split(":"), "swap" == o ? this.addAlert(h, w[t[h].b]?.url, "just swapped with " + a) : this.addAlert(h, w[t[h].b]?.url, `just took ${this.parseNumber(parseInt(o))} gold from ` + a)); e = Object.entries(t).map(([e, { b: t, g: a }]) => ({ name: e, blook: t, value: a || 0 })); break; case "hack": for (const g in d) d[g].tat && ([i, n] = d[g].tat.split(":"), this.addAlert(g, w[t[g].b]?.url, `just took ${this.parseNumber(parseInt(n))} crypto from ` + i)); e = Object.entries(t).map(([e, { b: t, cr: a }]) => ({ name: e, blook: t, value: a || 0 })); break; case "fishing": for (const b in d) "Frenzy" == d[b].f ? this.addAlert(b, w[t[b].b]?.url, "just started a frenzy") : d[b].s && this.addAlert(b, w[t[b].b]?.url, `just sent a ${d[b].f} distraction`); e = Object.entries(t).map(([e, { b: t, w: a }]) => ({ name: e, blook: t, value: a || 0 })); break; case "dino": for (const v in d) d[v].tat && ([r, s] = d[v].tat.split(":"), "true" == s ? this.addAlert(v, w[t[v].b]?.url, `just caught ${r} CHEATING!`) : this.addAlert(v, w[t[v].b]?.url, "investigated " + r)); e = Object.entries(t).map(([e, { b: t, f: a }]) => ({ name: e, blook: t, value: a || 0 })); break; case "cafe": for (const y in d) d[y].up && ([l, c] = d[y].up.split(":"), c) && this.addAlert(y, w[t[y].b]?.url, `upgraded ${l} to level ` + c); e = Object.entries(t).map(([e, { b: t, ca: a }]) => ({ name: e, blook: t, value: a || 0 })); break; case "factory": for (const f in d) { var p, u, m = d[f]; m.g ? this.addAlert(f, w[t[f].b]?.url, `activated the ${x[m.g]} glitch!`) : m.s ? ([p, u] = m.s.split("-"), this.addAlert(f, w[t[f].b]?.url, `has a ${p} ${u} synergy!`)) : m.t && this.addAlert(f, w[t[f].b]?.url, "now has 10 Blooks!") } e = Object.entries(t).map(([e, { b: t, ca: a }]) => ({ name: e, blook: t, value: a || 0 })) } this.updateLeaderboard(e.sort((e, t) => t.value - e.value)) } }) } catch { return !1 } }, diffObjects(e, t) { var a, o = {}; for (const i in e) i in t && ("object" == typeof e[i] && "object" == typeof t[i] ? (a = this.diffObjects(e[i], t[i])) && 0 !== Object.keys(a).length && (o[i] = a) : JSON.stringify(e[i]) !== JSON.stringify(t[i]) && (o[i] = t[i])); for (const n in t) n in e || (o[n] = t[n]); return 0 == Object.keys(o).length ? null : o }, getGamemode() { switch (window.location.pathname) { case "/play/racing": return "racing"; case "/play/factory": return "factory"; case "/play/classic/get-ready": case "/play/classic/question": case "/play/classic/answer/sent": case "/play/classic/answer/result": case "/play/classic/standings": return "classic"; case "/play/battle-royale/match/preview": case "/play/battle-royale/question": case "/play/battle-royale/answer/sent": case "/play/battle-royale/answer/result": case "/play/battle-royale/match/result": return "royale"; case "/play/toy": return "workshop"; case "/play/gold": return "gold"; case "/play/brawl": return "brawl"; case "/play/hack": return "hack"; case "/play/fishing": return "fishing"; case "/play/rush": return "rush"; case "/play/dino": return "dino"; case "/tower/map": case "/tower/battle": case "/tower/rest": case "/tower/risk": case "/tower/shop": case "/tower/victory": return "doom"; case "/cafe": case "/cafe/shop": return "cafe"; case "/defense": return "defense"; case "/play/defense2": return "defense2"; case "/kingdom": return "kingdom"; default: return !1 } } }] }; function C(e, t) { var a, o, i = 0, n = 0; e.onpointerdown = function (e = window.event) { i = e.clientX, n = e.clientY, document.onpointerup = function () { document.onpointerup = null, document.onpointermove = null }, document.onpointermove = function (e = window.event) { a = i - e.clientX, o = n - e.clientY, i = e.clientX, n = e.clientY; t.style.top = t.offsetTop - o + "px", t.style.left = t.offsetLeft - a + "px" } } } v("Alerts", null, x.alerts, !0), v("Global", "https://media.blooket.com/image/upload/v1661496291/Media/uiTest/Games_Played_2.svg", x.global)(), v("Gold Quest", "https://media.blooket.com/image/upload/v1661496292/Media/uiTest/Gold.svg", x.gold), v("Cafe", "https://media.blooket.com/image/upload/v1655161189/Media/survivor/Pizza_lvl1.svg", x.cafe), v("Crypto Hack", "https://media.blooket.com/image/upload/v1661496293/Media/uiTest/CryptoIcon.svg", x.crypto), v('<span style="font-size: 17px">Deceptive Dinos</span>', ['<img style="height: 30px; margin-left: 8px; margin-right: 12px" src="https://media.blooket.com/image/upload/v1655161325/Media/survivor/Dog.svg">'], x.dinos), v('<span style="font-size: 18px">Tower Defense</span>', ['<img style="width: 30px; margin-right: 5px" src="https://media.blooket.com/image/upload/v1657235025/Media/survivor/Laser_Lvl1.svg">'], x.defense), v('<span style="font-size: 16px">Tower Defense 2</span>', ['<img style="width: 30px; margin-right: 5px; rotate: 45deg" src="https://media.blooket.com/image/upload/v1593095354/Media/defense/missile.svg">'], x.defense2), v("Factory", "https://media.blooket.com/image/upload/v1661496293/Media/uiTest/Factory_Upgrades.svg", x.factory), v('<span style="font-size: 19px">Fishing Frenzy</span>', "https://media.blooket.com/image/upload/v1661496295/Media/uiTest/Fish_Weight.svg", x.fishing), v("Flappy Blook", "https://media.blooket.com/image/upload/v1645222006/Blooks/yellowBird.svg", x.flappy), v('<span style="font-size: 17px">Tower of Doom</span>', ['<img style="height: 30px; margin-left: 5px; margin-right: 10px" src="https://media.blooket.com/image/upload/v1657235023/Media/survivor/cards-05.svg">'], x.doom), v('<span style="font-size: 18px">Crazy Kingdom</span>', "https://media.blooket.com/image/upload/v1655161323/Media/survivor/Jester_lvl1.svg", x.kingdom), v("Racing", "https://media.blooket.com/image/upload/v1661496295/Media/uiTest/Racing_Progress.svg", x.racing), v("Battle Royale", "https://media.blooket.com/image/upload/v1655936179/Media/br/VS_Lightning_Bolt_Bottom.svg", x.royale), v("Blook Rush", "data:image/png;base64,iVBORw0KGgoAAAANSUhEUgAAAIAAAACACAYAAADDPmHLAAAABHNCSVQICAgIfAhkiAAAAAlwSFlzAAADdgAAA3YBfdWCzAAAABl0RVh0U29mdHdhcmUAd3d3Lmlua3NjYXBlLm9yZ5vuPBoAAA7YSURBVHic7Z17tFxVfcc/e59zZib3kcfN456YQObOTB43PBIKoeIqSlwIBXwiCCytXe2qxabSWrAqLKmwXKthVRe2BFxitYpasSIPV0sI8mhV5GHVdpWaoCRIvAnZSW/uzeuG3Nec/jFzk8mYOXNm73PmeT7/zt6/s+/d399vv/cWnufRSSilZgEXAZcBl42MHF5m23KrlPJBKcU9mUx6pLElrC+iEwSglFpOscIpVH5q5rfh4YPH0wkBlmUNW5b8oZTyi9ls+ol6l7XetKUAyrz8ciBbKW2pAMqRUk62e3RoGwH4ebkffgIopV2jQ8sKoOjl6zlR6RW93I+gAiinGB22SSkfklJsatXo0FICUEqt4ESFv4WAXu6HrgBKKYkOPypGh+8bG60TTS0ApVQXJ3t5JuxvhCGAcorR4aVidLg7k0kPh/6RkGg6AUTh5X5EIYBSmj06NFwA9fByP6IWQDnNFh0aIgCl1EpO9vJk3QtRpN4CKKUYHfYXo8O92Wx6S93LUA8BFL38rZyo9IHIPxqQRgqgHCnlVEl02FSP6BCZAIpefjmFCn8zDfRyP5pJAKWURIdnin2HSKJDaAJQSnVzclveNF7uR7MKoJyy6HBPJpPeF4ZdIwEopVZxosKb1sv9aBUBlFIWHb6UzaY3a9uqRQBFLy9ty9O6H24WWlEA5RSjwy+llA8X+w6Bo0NVASilBjlR4RfSgl5+KiY9eP6g4IWhad7Xf4Qu2VzzIboUo8NISXR41De9nwCUUpcAj4ddyEaxaxyeHhU8PQLPHBSMTQP7FoHwWDBrnPPnjXFd/yHW9kw0uqihkUolbsnlBjZW+t2ukl+GXJ66MunBcwcFT48WKv7loxUSeoLhoyk2H02xefd8HHuK5b2v8/sLj3DNosOtHh0svx+rCaDlKPXyHx0UHJ2u3cbklM3W0V62jvZy58tu20YHaAMBTOTh+UMBvFwXn+hw9cLD9FgtHR1aUwBDx4pePlpoy3W8XJfy6DD/eHQ4zDk94/UrSEi0hAAm8vDcjJePCLa/3ugSFfEE+4+meOxoisd2z8dxCtHhkvmFvkMrRIemFcBvSrz8x3X2cl0mJ222jvSydaSXv9/uMr9rnHVzxri2/zDn9jZndGgaATStl+viCfaPpdgylmLLa80bHRoqgFIvf+aA4PV8I0sTLc0aHeoqgBkvf2qkUPE7Wt3LdSmPDvYUudmF6HBtnaND5ALYWdqWt7mX6zI5ZbNtpJdtI738w3aXvlnjrJtXiA7nRTyyiEwAvxiDP31J8kqnerkunmDkaIrHj6Z4vDjvsHHVHi7tC3uCo0BkU737JkRc+SEwOWXz6rgTmf2WnuuPMScWQIcTC6DDiQXQ4cQC6HBiAXQ4sQA6nFgAHU4sgA4nFkCHEwugw4kF0OHEAuhwYgF0OLEAOpxqAtDei2sL3Zwx5SQx2kY16fdjNQFob+mYazfHrtd2YFFCf0+8EOKw3+/VBKC9D2lu02w4b30WJ40ORRzw+zG6CBDdLqaO4w3JKZPsvjdgRBYBeq24HxAKAvodowhgJACjbZ1z4mbAGCHM9tELge8l1pEKIO4HmGNL44MUo34/VhPAEUD7RoR5sQCMSVjGAtjr96OvAFzX9YBdul+e68RDQVOSBgKQUk5mMmlfA0FmAod0CxA3AeZ02SYCEGNV0wSwoy2ABfFQ0Jg5tv4QUAjh2/5DxAI4o1s3Z8wMqw0OhwohVLU0kQpgTU/cBzDlonn6AzEhxM5qaYIIoKqRSmS7oMf3lroYP4TweNNsEwHwUrU0QQTwM90CSOCsHt3cMT3JSaPZVCnFg1XTVEvguu5e4BXdQsTNgD6ndx3TzlscAv5v1XQB7T2rW5A1cQTQZk2vvgAsSwaav4leAL1xBNBl/Tz9W0GklC8EShfQ3nO6BUmnYHY8IVQzQnqcP1t/CCileCRQuoD2XqSwLlAzgrgfoENvckJ7w6YQwhOCh4OkDfQN13WngUAh5VSc26ubs3PJdRu1/6OZTDrQIl4tItPuB7xzQRwBauUPFus/ZWNZ8hdB09ZFAIPdsKpLN3fnkXCmuNhsBjDw87S1COB5QNuVr1wUR4GgrOvT6m4dR0rxjcBpgyZ0XfcAsE2rRMB7FnrEWwSD8eElVRfxKmJZcjyTSQeevq+1o6ndDCxNwrrZurk7h57khNGzNJYlX60lfa0C+GGN6U/iyoVxM1CNCxf4nuOoipTyP2pKX6P9h4Gqu0wq8Y4FXrxV3A8BG5b6nuPwzy4EUopP15KnJgG4rnsEeKCmUpXQ58BF8+IoUIm+WcdIGxwCsW1reyaT9t0EWo7OZNNXNfIc5z0LTXK3N5cuNAv/ti3vqjWP1uPRSqmXgVzNGSk8GvHGn0n2NMsTOvsWNboEAFjWNM+8cYf2YxFSysnVq5cnas6n9TX4mmY+EhI+elrcDJRzqXvA6KUQx7F+oJNPVwD3gf6h9ev6PZa2xRPU4WBZ09w+sN/IhpTyFq18Oplc190FPKGTF8ARcRQo5YrFB0gZvE9s29ZwNpv+T528JlfE/JNBXq7p91iWMrHQHtjWNJ9Om3m/bVvf1M1rIoDvgf/JUz9sATeeHkeBdy0ZIWHg/UIIr9axfynaAnBddxz4lm5+gPcu9MjMMrHQ2jj2FJ9Ka/tQwYZjvZjJpA/p5je9JcyoGbAE3NTBUeDKJaPGz7ZZlnWHSX6teYBSlFI/B87RzZ8H1v9c8qtoXkWrToPmARL2FC9csMNoatyy5OuDg8uNdlqEcU/graYF+Gwu33EXFv51bq/xuojj2H9nWg7j/7vruo8CT5rYOH82/NnSzmkKzpp/iGsXmW36sG1rJJcbuM20LGE53k0YTAwBfGKZx+oOOE2cdCb58mDVQ7tVcRz7+hCKE44AXNf9Hww7hI6ATSvyOG29XOyxcdUeugyGfQCJhP3LbDb93TBKFGbT+ynAaDlrdTd8fFn7NgW/13+Atxls9oTCuN+2ratCKlJ4AigeIjUakgBsWOq15dax7tQEm1bsM7aTSNhPBjn0GZSwO993Ar8xMSApNAXd7XSvgPC4e/Vrxr1+KeWUZcn3hVOoos0wjbmuewz4pKmdZSm4baB9moK3LxnhPIOrXmZIJOwvZjJp/T1jpyCK4fe3MThGNsMHXI9r+ltfBKfPHmNjZtjYjm1bR6QUfxlCkU4idAEU7xa8MQxbn8t5XNzXuiLo6zrGw2fvDsWW49gfq3bnnw6RTMC5rvss8B1TO7aAL63yOK8FD5d2Jyf43toho5W+GRzHHspm0/eGUKzfIsoZ2I9S5ZrSIMyS8I0z8qxoobOFCXuKB9YOMdfgkscZpBR527beGUKxTm0/KsOu6+4BrsPg2ZkZ5trw7TPyvKEFtpFZ1jT3rRniNLM7/o+TTDofy2bT/x2KsVMQ6RqM67r/juFi0QyLkwURNPP1s0LkuevM3ZzZrX+0q5Rk0vl+Njvw+VCMVaAei3B3AP8WhqHlXYXmYFYzLh0Kj79ZtYc3zzGb6ZvBcay9liUvC8WYD5H/K4ujgg8Cr4Zh77xe+PKgR6qZRCA8PpLby1ULzVb4ZpBSTjmOfUEUvf7f+lbUHwBwXXcUuBoI5TjIW+d5PHJ2nv6aj0GEj5R5/nb1Lq43uNGjFCEgmXT+OJNJ/zoUg1Womx+5rvtTCiODUFjTA4+tyTf0QupUYpJ/Pmcn75gf3namRCJxfzabDnzBgynGW8JqRSn1TeD9Ydk7Og1//ivBlv2aE+2aW8IWdB/jwbN30Wf2oNNJOI796sqV2YHQDAagES3p9UDgS4yq0WXBVwY9NtRxR9FZ8w/xxO/sDLXyLUuOO471u6EZDEjdBeC67hhwFZr3Dp4KCdya9rhzuRf5hpJ3nzbMt87YE+o9B0IIL5Fwrsxk0ubrxTXSkL6067ovAR+gyru2tXJdv8e/nJmP5LEqIfN8cuVrfMbwDN+pSCadO7LZ9ObQDQeg7n2AUpRS76KwZhBqf373OHxiu+Cp0QBuGqAP0Nd1jLsG97AmpAmeUlKpxMZcbkDrYGcYNFQAAEqpy4GHgNAneh/5P8GtrwiG/eKMjwCkzHPtacPcvEz/1q5KFIZ7idtyuYHbQzdeSzkaLQAApdQlwCNA6AfFDk7B7b8W3L+3QjSoIIBls8e4d1CxJKQ5/VKEECSTzi253MDG0I3XWpZmEACAUmo98K9AJCP7Hx8UfHy74JXymdoyAdj2NH+V3csH+82ua6mEEIJUyrkx6jn+oDSNAACUUhcCm4FInpkYz8PnhwRf2CWYnPmzSwSwdsEhvrByL73mr3WeEiGEl0o5N2SzA/dE8gENmkoAAEqpC4AtQGR7g7eNwc07JC8cAvYtoic5wWdWKKP7eatRqPzE9dls+h8j+4gGTScAAKXUOuBxYF6U33lyRPDskMeGJeHM41eiWPl/lM2m74v0Qxo0pQAAlFLnULiGZn6U3xkerkvlvz+bTd8f6Yc0aaZF1ZNwXfe/gPVAXVbFokBKOZVKJa5q1sqHJhYAgOu6LwJrgab9B1bCceydqZSTzmbTDzW6LH40bRNQjlLqD4G7CXmEEHYTIITwkknnK7ncwIdCNRwRTR0BSnFd9z4KN5H8tNFlqYRlWWOpVOJtrVL50EICAHBddzvwJuCzGLxeEgWJhPOTZNJelM2mn2p0WWqhZZqAcpRSFwNfBxab2DFtAqQU+UTCuTmXGzC+rqURtKwAAJRSCyncXn6Frg0TATiOtc9x7LdkMumqr3Q3Ky0tgBmUUjdQaBZqXlHUEYAQkEg4312+PHN1zZmbjJbqA1TCdd1NwLkY3F8cFNu29qdSyXe3Q+VDm0SAUpRSVwCfA1YFSR80AliWnHAce2MYN3M1E20RAUopXlt3FnADYLx/qziufyCZdOa0W+VDG0aAUpRSc4GbgQ1UmECqFAGEEJ7j2D+xbXlNLe/wtRptLYAZlFJ9FCLCXwB9pb+VC6CwQ9f+gWXJP8lk0jvqV8rG0BECmEEp1UPhXMJNFOcPZgQgpcg7jv2oZckP1fryVivTUQKYQSmVpHBg9cOjo4dXOY79oJTiIybXrrcq/w99zo6mO4xCQAAAAABJRU5ErkJggg==", x.rush), v('<span style="font-size: 18px">Monster Brawl</span>', ['<img style="height: 28px; margin-left: 5px; margin-right: 8px" src="https://media.blooket.com/image/upload/v1655233787/Media/survivor/xp/Blue_xp_2.svg">'], x.brawl), v('<span style="font-size: 15px">Santa\'s Workshop</span>', ['<img style="height: 28px; margin-left: 3px; margin-right: 6px" src="data:image/svg+xml;base64,PD94bWwgdmVyc2lvbj0iMS4wIiBlbmNvZGluZz0iaXNvLTg4NTktMSI/Pgo8IS0tIEdlbmVyYXRvcjogQWRvYmUgSWxsdXN0cmF0b3IgMTkuMC4wLCBTVkcgRXhwb3J0IFBsdWctSW4gLiBTVkcgVmVyc2lvbjogNi4wMCBCdWlsZCAwKSAgLS0+CjxzdmcgdmVyc2lvbj0iMS4xIiBpZD0iQ2FwYV8xIiB4bWxucz0iaHR0cDovL3d3dy53My5vcmcvMjAwMC9zdmciIHhtbG5zOnhsaW5rPSJodHRwOi8vd3d3LnczLm9yZy8xOTk5L3hsaW5rIiB4PSIwcHgiIHk9IjBweCIKCSB2aWV3Qm94PSIwIDAgNTEyIDUxMiIgc3R5bGU9ImVuYWJsZS1iYWNrZ3JvdW5kOm5ldyAwIDAgNTEyIDUxMjsiIHhtbDpzcGFjZT0icHJlc2VydmUiPgo8cGF0aCBzdHlsZT0iZmlsbDojRkZERTc2OyIgZD0iTTQzMy42NjEsMjM3LjgzN2MtNC40OTctNi4yMTQtNC44OC0xNC40NC0xLjIyNS0yMS4xODRjMTEuMzY1LTIwLjk2NywxNy43NzMtNDUuMDE0LDE3LjY1MS03MC41NjYKCUM0NDkuNzAxLDY0Ljg2OSwzODIuNTY0LTEuMDM3LDMwMS4zNTIsMC4wMTJjLTgwLjE4MywxLjAzNi0xNDQuODY0LDY2LjM1OS0xNDQuODY0LDE0Ni43ODhjMCwzMi41NTMsMTAuNTk1LDYyLjYzLDI4LjUyNiw4Ni45NzIKCWM3Ljc1MywxMC41MjYsNy4yMTMsMjUuMS0xLjU0MywzNC44MDhjLTEzLjI5NywxNC43NDEtNDEuOTM1LDI0LjMwNi0xMDIuNTk1LTE2LjI3N2MtNi42NTItNC40NS0xNC40NjItNi44NjQtMjIuNDY1LTYuODY0bDAsMAoJYy0xOS45NDcsMC0zNi44MzMsMTQuNjI4LTM5Ljc3NiwzNC4zNTdDNy44ODksMzUxLjgxNiw2LjUyLDUxMiwyMDYuOTY2LDUxMmg3MS4wODNDNDY2LjA1LDUxMiw1MTYuMTI3LDM1MS44MDEsNDMzLjY2MSwyMzcuODM3eiIvPgo8Zz4KCTxwYXRoIHN0eWxlPSJmaWxsOiNGRkI2NDE7IiBkPSJNMTgzLjQ3LDI2OC41ODJjLTMuOTMsNC4zNTctOS4yMDIsOC4yNjEtMTYuMjQ0LDEwLjU1MmMyNC40NjksNS44ODIsMzguODItMS4zMTksNDcuMTQ5LTEwLjU1MgoJCWM4Ljc1Ny05LjcwOCw5LjI5Ni0yNC4yODEsMS41NDMtMzQuODA4Yy0xNy45My0yNC4zNDItMjguNTI2LTU0LjQyLTI4LjUyNi04Ni45NzNjMC03NS44MzMsNTcuNTAzLTEzOC4yMjYsMTMxLjI4MS0xNDUuOTgKCQljLTUuNjg5LTAuNjAxLTExLjQ2Ny0wLjg4NC0xNy4zMjMtMC44MDljLTgwLjE4MywxLjAzNi0xNDQuODY0LDY2LjM1OS0xNDQuODY0LDE0Ni43ODhjMCwzMi41NTMsMTAuNTk1LDYyLjYzLDI4LjUyNiw4Ni45NzMKCQlDMTkyLjc2NiwyNDQuMywxOTIuMjI2LDI1OC44NzMsMTgzLjQ3LDI2OC41ODJ6Ii8+Cgk8cGF0aCBzdHlsZT0iZmlsbDojRkZCNjQxOyIgZD0iTTQ5LjUzOSwyNzkuNzk2YzIuMTM3LTE0LjMxNywxMS42MTgtMjUuOTQyLDI0LjI4Mi0zMS4yNDVjLTQuODY2LTIuMDIyLTEwLjA5MS0zLjExLTE1LjQxMi0zLjExCgkJbDAsMGMtMTkuOTQ3LDAtMzYuODMzLDE0LjYyOC0zOS43NzYsMzQuMzU3QzcuODg5LDM1MS44MTYsNi41Miw1MTIsMjA2Ljk2Niw1MTJoMzAuOTA1QzM3LjQyNSw1MTIsMzguNzk0LDM1MS44MTYsNDkuNTM5LDI3OS43OTZ6CgkJIi8+Cgk8cGF0aCBzdHlsZT0iZmlsbDojRkZCNjQxOyIgZD0iTTgwLjUxOCwzNDQuMzM2Yy04Ljc2Niw4LjY1Ni0xMC4yNzcsMjIuMjY4LTMuNTk4LDMyLjYxOQoJCWMxOS41MDQsMzAuMjI3LDY4LjM1MSw4Ni4yODMsMTYyLjM3Miw4Ni4yODNjNTcuMjU2LDAsMTE3Ljc5MS0zNS44MDksMTI5LjA2NC05NS4wOTdjOS4zMS00OC45NjYtMTkuMjQ2LTEwOC44MjEtNzUuMzMtMTA2LjI0NwoJCWMtNDEuMDk3LDEuODg3LTY1LjEzNSwzNy40MTUtOTkuODY1LDUzLjg0MWMtMjQuMzk4LDExLjU0LTUwLjg0NCwxOC42NTEtNzcuNjg3LDIxLjMwNwoJCUMxMDIuNjk4LDMzOC4zMDYsOTAuODA1LDMzNC4xNzgsODAuNTE4LDM0NC4zMzZ6Ii8+CjwvZz4KPHBhdGggc3R5bGU9ImZpbGw6IzM4NDg0QTsiIGQ9Ik0zODguMzk0LDExMC44MzNjLTMuNTAyLDAtNi42NzQtMi4zOTYtNy41MTMtNS45NTFsLTMuNzE1LTE1LjczCgljLTAuOTgxLTQuMTUzLDEuNTkxLTguMzE1LDUuNzQzLTkuMjk1YzQuMTUyLTAuOTc5LDguMzE1LDEuNTkxLDkuMjk1LDUuNzQzbDMuNzE1LDE1LjczYzAuOTgxLDQuMTUzLTEuNTkxLDguMzE1LTUuNzQzLDkuMjk1CglDMzg5LjU4LDExMC43NjUsMzg4Ljk4MiwxMTAuODMzLDM4OC4zOTQsMTEwLjgzM3oiLz4KPHBhdGggc3R5bGU9ImZpbGw6I0ZGQjY0MTsiIGQ9Ik00MjcuNjE4LDY4Ljk5NGMwLDAsMy4xOTgsNDUuODMyLTE4LjAzMyw2Ni41OTFjLTIxLjIzMSwyMC43NTksMTQuMTU0LDUzLjMxNCw1Ni4xNDUsMjIuNjQ2CgljNi4wMzItNC40MDUsMTIuMTQzLTcuMjA0LDE4LjE4NC04Ljc2OGM3Ljc3Ny0yLjAxMiwxMy4yNDMtOC45NjcsMTMuMjQzLTE2Ljk5OWwwLDBjMC03LjcyNC01LjAzMS0xNC41OTctMTIuNDM4LTE2Ljc4NgoJYy00LjkyNS0xLjQ1Ni0xMS4xOC0yLjMyNS0xOC41MTYtMS4zMjVjMCwwLDI1LjM5My0yMi4xMzgsMTkuMTE5LTQ3Ljc1M2MtMi4wMjctOC4yOC0xMS44NTYtMTEuNzI2LTE4LjgzNi02LjgzMgoJQzQ1Ny40NjEsNjYuMDk0LDQ0My40NTQsNzIuNzY0LDQyNy42MTgsNjguOTk0eiIvPgo8Zz4KPC9nPgo8Zz4KPC9nPgo8Zz4KPC9nPgo8Zz4KPC9nPgo8Zz4KPC9nPgo8Zz4KPC9nPgo8Zz4KPC9nPgo8Zz4KPC9nPgo8Zz4KPC9nPgo8Zz4KPC9nPgo8Zz4KPC9nPgo8Zz4KPC9nPgo8Zz4KPC9nPgo8Zz4KPC9nPgo8Zz4KPC9nPgo8L3N2Zz4K">'], x.workshop), v("Settings", null, x.settings, !0), C(u, b), C(h, b), window.addEventListener("keydown", M); let S = setInterval(() => { x.alerts[0].connection ? clearInterval(S) : x.alerts[0].connect() }, 5e3); function j() { b.remove(), clearInterval(S); for (const e in x) for (const t of x[e]) t.enabled && t.run(); Object.keys(x).forEach(e => x[e].forEach(e => e.enabled && (e.run(), k(...currentMode)))), window.removeEventListener("keydown", M) } function M(e) { var t = l.data.hide || { ctrl: !0, key: "e" }, a = l.data.close || { ctrl: !0, key: "x" }; (t.ctrl && e.ctrlKey || !t.ctrl && !e.ctrlKey) && (t.shift && e.shiftKey || !t.shift && !e.shiftKey) && (t.alt && e.altKey || !t.alt && !e.altKey) && e.key.toLowerCase() == t.key ? (e.preventDefault(), b.style.display = "block" === b.style.display ? "none" : "block") : (a.ctrl && e.ctrlKey || !a.ctrl && !e.ctrlKey) && (a.shift && e.shiftKey || !a.shift && !e.shiftKey) && (a.alt && e.altKey || !a.alt && !e.altKey) && e.key.toLowerCase() == a.key && (e.preventDefault(), j()) } function O(c, d = window) { return new Promise(t => { const a = {}; let o, i, n, r; const s = e => { e.preventDefault(), a[e.code] = !0, o ||= e.shiftKey, i ||= e.ctrlKey, n ||= e.altKey, ["shift", "control", "alt", "meta"].includes(e.key.toLowerCase()) || (r = e.key.toLowerCase()), c?.({ shift: o, ctrl: i, alt: n, key: r }) }, l = e => { delete a[e.code], 0 < Object.keys(a).length || (d.removeEventListener("keydown", s), d.removeEventListener("keyup", l), t({ shift: o, ctrl: i, alt: n, key: r })) }; d.addEventListener("keydown", s), d.addEventListener("keyup", l) }) } b.addEventListener("mousemove", e => { var t, a; "cheatName" != e.target.className && "scriptButton" != e.target.className ? "0" != g.style.opacity && (g.animate([{ opacity: .9 }, { opacity: 0 }], { duration: 200 }), g.style.opacity = "0") : (e = "scriptButton" == e.target.className ? e.target : e.target.parentElement, g.innerText == e.dataset.description && "0.9" == g.style.opacity || (t = e.getBoundingClientRect(), a = e.offsetParent.getBoundingClientRect(), g.innerText = e.dataset.description, "0" == g.style.opacity && (g.animate([{ opacity: 0 }, { opacity: .9 }], { duration: 200 }), g.style.opacity = "0.9"), g.style.left = t.x - a.x + (t.width - g.clientWidth) / 2 + "px", g.style.top = t.y - a.y + t.height + "px")) }) })();
Raw Text
-
Pastebin.ai
C | 1 hour ago
-
asfgh
1 hour ago
-
dffsd dsfdfs fsddf dfsdfsfddfs
2 hours ago
-
sadfgwqertyasdfg
2 hours ago
-
🔞 Adult Telegram Channels 🔞
3 hours ago
-
✅✅ Spy cam, incest, banned videos ✅✅
3 hours ago
-
17 TERABYTE PREMIUM ÇP FOR SALE
3 hours ago
-
dfdddsf dsdddd sddfd dsdsfdf
3 hours ago
-
asdfgbhadsfdgfg
3 hours ago
-
✅✅ Spy cam, incest, banned videos ✅✅
3 hours ago