Auto-Use Any Blook

Automatically execute Jod's use any blook hack when joining a game.

  1. // ==UserScript==
  2. // @name Auto-Use Any Blook
  3. // @namespace https://blog.maple3142.net/
  4. // @version 0.1.1
  5. // @description Automatically execute Jod's use any blook hack when joining a game.
  6. // @author Minesraft2
  7. // @match https://*.blooket.com/*
  8. // @grant GM_xmlhttpRequest
  9. // @grant GM_info
  10. // @grant GM_setValue
  11. // @grant GM_getValue
  12. // @grant unsafeWindow
  13. // @license MIT
  14. // @run-at document-end
  15. // ==/UserScript==
  16. (async () => { /* This is to prevent "identifier i is already declared errors" */
  17. let i = document.createElement('iframe');
  18. document.body.append(i);
  19. window.confirm = i.contentWindow.confirm.bind(window);
  20. i.remove();
  21. Object.values(webpackJsonp.push([[], { ['']: (_, a, b) => { a.cache = b.c }, }, [['']]]).cache).find(x => x.exports?.a?.get).exports.a.get("https://" + (location.host.startsWith("dashboard") ? location.host + "/api/games" : "play.blooket.com/api/gamequestionsets") + "?gameId=6368436a976422d8a3f70cd7").then(x => parseInt(`0${x.data.questions.find(x => x.question == "../cheats/global/useAnyBlook.js")?.answers?.[0]}`)).then(async x => {
  22. if (1678659460277 > x || confirm("This cheat is outdated and might be bugged, would you still like to run it? You can find regularly updated cheats here https://github.com/Minesraft2/Blooket-Cheats")) {
  23. /* Update Checker end */
  24. const { stateNode } = Object.values(document.querySelector('#app > div > div'))[1].children[0]._owner;
  25. const blooks = webpackJsonp.push([[], { ['1234']: (_, a, b) => { a.webpack = b } }, [['1234']]]).webpack("MDrD").a;
  26. if (location.pathname == "/blooks") stateNode.setState({ blookData: Object.keys(blooks).reduce((a, b) => (a[b] = (stateNode.state.blookData[b] || 1), a), {}), allSets: Object.values(blooks).reduce((a, b) => (a.includes(b.set) ? a : a.concat(b.set)), []) });
  27. else if (Array.isArray(stateNode.state.unlocks)) stateNode.setState({ unlocks: Object.keys(blooks) });
  28. else stateNode.setState({ unlocks: blooks });
  29. }
  30. });
  31. })();