EZ_HACK_MOD_GG BY "EZ_HACK"👍 CREATET SUPER PRO v 1.4

A mod suitable for professionals only, not automatic, only automatic healing.

当前为 2024-06-01 提交的版本,查看 最新版本

  1. // ==UserScript==
  2. // @name EZ_HACK_MOD_GG BY "EZ_HACK"👍 CREATET SUPER PRO v 1.4
  3. // @namespace no
  4. // @license MIT
  5. // @version 1.4
  6. // @author EZ HACK
  7. // @description A mod suitable for professionals only, not automatic, only automatic healing.
  8. // @match *://*.moomoo.io/*
  9. // @match *://dev.moomoo.io/*
  10. // @match *://sandbox.moomoo.io/*
  11. // @require https://greasyfork.org/scripts/478839-moomoo-io-packet-code/code/MooMooio%20Packet%20Code.js
  12. // @require https://cdn.jsdelivr.net/npm/msgpack-lite@0.1.26/dist/msgpack.min.js
  13. // @require https://greasyfork.org/scripts/423602-msgpack/code/msgpack.js
  14. // @grant none
  15. // @icon https://i.imgur.com/Q7vI76D.png
  16. // @downloadURL
  17. // ==/UserScript==
  18. /*
  19. Key code :
  20. R__insta kill
  21. T__revers insta
  22. F__trap
  23. V__spieks
  24. O__4 spieaks
  25. C__no hat
  26. N__auto 3 mill
  27. G__ boster hat / wanter cap / Fish hat
  28. H__ 2 turret
  29. E__tank gear / solder helmet If you have a problem with the E button, press the number zero
  30. 0-zero__tank gear / solder helmet
  31. Q __speed auto heal
  32. U__store Menu
  33. Y__alliance Menu
  34. L__on / off funy
  35. CLICK FORWARD__ tank gear / solder helmet
  36. Right click__ nice DMG
  37. Space__1 spieks + DMG
  38. Shift__solder helmet
  39. Click scroll wheel__ 4 trap
  40. INSERT__Hide accessories
  41. B__chat(turret pls)
  42. M__chat(fuck Israel)
  43. */
  44. const PASSWORD = "EZ HACK MOD";
  45. let password = prompt("Enter Your Password!");
  46. while (password !== PASSWORD) {
  47. alert("LOL");
  48. password = prompt("Enter Password");
  49. }
  50. document.getElementById('enterGame').innerText = "⇏ ‍ ‍ Enter_game. ‍ ‍ ‍⇍";
  51. document.getElementById("enterGame").addEventListener("mouseenter", function() {
  52. document.getElementById('enterGame').innerText = "⇏ Enter_game. ‍⇍";
  53. });
  54. document.getElementById("enterGame").addEventListener("mouseleave", function() {
  55. document.getElementById('enterGame').innerText = "⇏ ‍ ‍ Enter_game. ‍ ‍ ‍⇍";
  56. });
  57. $('#itemInfoHolder').css({
  58. 'text-align': 'center',
  59. 'top': '25px',
  60. 'left': '440px',
  61. 'right': '350px',
  62. 'max-width': '350px'
  63. });
  64. document.getElementById('chatBox').innerHTML = 'Hi LOL-_-';
  65. document.getElementById('gameName').innerHTML = '';
  66. setTimeout(() => {
  67. document.getElementById('gameName').innerHTML = 'Loading..';
  68. setTimeout(() => {
  69. document.getElementById('gameName').innerHTML = 'E';
  70. setTimeout(() => {
  71. document.getElementById('gameName').innerHTML = 'EZ';
  72. setTimeout(() => {
  73. document.getElementById('gameName').innerHTML = 'EZ ';
  74. setTimeout(() => {
  75. document.getElementById('gameName').innerHTML = 'EZ H';
  76. setTimeout(() => {
  77. document.getElementById('gameName').innerHTML = 'EZ HA';
  78. setTimeout(() => {
  79. document.getElementById('gameName').innerHTML = 'EZ HAC';
  80. setTimeout(() => {
  81. document.getElementById('gameName').innerHTML = 'EZ HACK';
  82. setTimeout(() => {
  83. document.getElementById('gameName').innerHTML = 'EZ HACK ';
  84. setTimeout(() => {
  85. document.getElementById('gameName').innerHTML = 'EZ HACK MOD v1.4';
  86. }, 120);
  87. }, 120);
  88. }, 120);
  89. }, 120);
  90. }, 120);
  91. }, 120);
  92. }, 120);
  93. }, 120);
  94. }, 120);
  95. }, 120);
  96. document.getElementById('loadingText').innerHTML = 'Loading...';
  97. setTimeout(() => {
  98. document.getElementById('loadingText').innerHTML = 'loading_Game';
  99. }, 710);
  100. (function () {
  101. 'use strict';
  102. let allianceMenu = document.getElementById('allianceMenu');
  103. let storeMenu = document.getElementById('storeMenu');
  104. document.addEventListener('keydown', function (event) {
  105. if (shouldHandleMenus(event)) {
  106. if (event.key === 'y') {
  107. toggleMenu(allianceMenu, storeMenu);
  108. } else if (event.key === 'u') {
  109. toggleMenu(storeMenu, allianceMenu);
  110. }
  111. if (event.key === 'Y') {
  112. toggleMenu(allianceMenu, storeMenu);
  113. } else if (event.key === 'U') {
  114. toggleMenu(storeMenu, allianceMenu);
  115. }
  116. }
  117. });
  118. function shouldHandleMenus(event) {
  119. const chatboxActive = document.activeElement.id.toLowerCase() === 'chatbox';
  120. const allianceInputActive = document.activeElement.id.toLowerCase() === 'allianceinput';
  121. return !chatboxActive && !allianceInputActive;
  122. }
  123. function toggleMenu(menu, otherMenu) {
  124. if (menu.style.display === 'none' || menu.style.display === '') {
  125. menu.style.display = 'block';
  126. if (otherMenu.style.display !== 'none') {
  127. otherMenu.style.display = 'none';
  128. }
  129. } else {
  130. menu.style.display = 'none';
  131. }
  132. }
  133. })();
  134. document.getElementById('loadingText').innerHTML = '....LOL HACK -_-....'
  135. document.getElementById('gameName').style.textShadow = 'none';
  136. document.getElementById('gameName').style.fontSize = "155px";
  137. document.getElementById('linksContainer2').style.background = "grey";
  138. document.getElementById('mapDisplay').height = '450';
  139. document.getElementById('mapDisplay').width = '450';
  140. document.getElementById('diedText').innerHTML = "its..ok";
  141. document.getElementById('diedText').style.color = "grey";
  142. $("#moomooio_728x90_home").parent().css({display: "none"});
  143. document.getElementById('linksContainer2').innerHTML = 'EZ HACK MOD' ;
  144. document.querySelector("#gameName").innerHTML = "EZ HACK";
  145. document.getElementById("storeHolder").style = "height: 345px; width: 410px;";
  146. document.getElementById('enterGame').innerText = "EZ HACK MOD";
  147. document.getElementById("enterGame").style.color = "#000000";
  148. document.getElementById("enterGame").style.backgroundColor = "grey";
  149. document.title = ' EZ HACK MOD';
  150. $("#mapDisplay").css({background: `url('https://i.imgur.com/aGpK7hj.png')`});
  151. $("#wideAdCard").remove();
  152. $("#storeDisplay1").remove();
  153. $("#adCard").remove();
  154. $("#promoImgHolder").remove();
  155. let style = document.createElement('style')
  156. style.appendChild(document.createTextNode(`
  157. `))
  158. document.head.appendChild(style)
  159. let replaceInterval = setInterval(() => {
  160. if (CanvasRenderingContext2D.prototype.roundRect) {
  161. CanvasRenderingContext2D.prototype.roundRect = ((oldFunc) => function() { if (this.fillStyle == "#8ecc51") this.fillStyle = `hsl(180, 100%, 50%)`; return oldFunc.call(this, ...arguments); })(CanvasRenderingContext2D.prototype.roundRect);
  162. clearInterval(replaceInterval);
  163. }}, 10);
  164. setInterval(() => {
  165. if (autoaim == true) {
  166. doNewSend(["D", [nearestEnemyAngle]]);
  167. }
  168. }, 10);
  169. var spikeType;
  170. var isEnemyNear;
  171. var nearestEnemyAngle;
  172. var autoaim = false;
  173. var primary;
  174. var secondary;
  175. var foodType;
  176. let hitBack = false;
  177. let stackInsta = false;
  178. let anti = true;
  179. let hitTToggle = 1;
  180. let hitToggle = 0;
  181. let hatToggle = 1;
  182. let ais = [];
  183. let ws;
  184. let x = 0;
  185. let y = 0;
  186. let msgpack5 = window.msgpack;
  187. let scale = 45;
  188. let placeOffset = 5;
  189. let crashing;
  190. let cmds = {
  191. autoheal: false,
  192. automill: false
  193. }
  194. let inv = {
  195. primary: null,
  196. secondary: null,
  197. food: null,
  198. wall: null,
  199. spike: null,
  200. trap: null,
  201. mill: null,
  202. mine: null,
  203. boostPad: null,
  204. spikeType: null,
  205. turret: null,
  206. spawnpad: null
  207. };
  208. let myPlayer = {
  209. sid: null,
  210. hp: null,
  211. x: null,
  212. y: null,
  213. dir: null,
  214. buildIndex: null,
  215. weaponIndex: null,
  216. weaponVariant: null,
  217. team: null,
  218. isLeader: null,
  219. skinIndex: null,
  220. tailIndex: null,
  221. iconIndex: null
  222. };
  223. let enemy;
  224. let nearestEnemy;
  225. let enemyInf = { hat: null, x: null, y: null, weaponIndex: null}
  226. document.msgpack = window.msgpack;
  227. WebSocket.prototype.oldSend = WebSocket.prototype.send;
  228. WebSocket.prototype.send = function (e) {
  229. ws || (document.ws = this, ws = this, document.ws.addEventListener("message", hookWS));
  230. this.oldSend(e);
  231. };
  232. function dist(a, b){
  233. return Math.sqrt( Math.pow((b.y-a[2]), 2) + Math.pow((b.x-a[1]), 2) );
  234. }
  235. function handleMessage(m){
  236. let temp = msgpack5.decode(new Uint8Array(m.data));
  237. let data;
  238. if(temp.length > 1) {
  239. data = [temp[0], ...temp[1]];
  240. if (data[1] instanceof Array){
  241. data = data;
  242. }
  243. } else {
  244. data = temp;
  245. }
  246. let item = data[0];
  247. if(!data) {return};
  248. }
  249. let join = message => Array.isArray(message) ? [...message] : [...message];
  250. let hookWS = ms => {
  251. let tmpData = msgpack5.decode(new Uint8Array(ms.data));
  252. let data;
  253. if(tmpData.length > 1) { data = [tmpData[0], ...tmpData[1]]; if (data[1] instanceof Array){ data = data } } else { data = tmpData }
  254. let item = data[0];
  255. if(!data) {return};
  256. if (item == "C" && myPlayer.sid == null){
  257. myPlayer.sid = data[1];
  258. }
  259. if (item == "O" && data[1] == myPlayer.sid) {
  260. let hp = data[2]
  261. if (hp < 91) {
  262. let c;
  263. if (hp < 100) c = 2;
  264. for (let i=0;i<c;i++) setTimeout(() => { place(foodType); }, i * 0.2);
  265. for (let i=0;i<2;i++) setTimeout(() => { place(foodType); }, i * 0);
  266. }
  267. }
  268. /*if (data[2] < 62 && data[2] > 41 && anti == true && (nearestEnemy[5] == 5 || nearestEnemy[5] == 3)) {
  269. //console.log("anti insta - polearm");
  270. doNewSend(["c", [0, 22, 0]]);
  271. place(inv.food);
  272. for (let i=0;i<2;i++) { place(inv.food); }
  273. setTimeout(() => {
  274. place(inv.food);
  275. doNewSend(["c", [0, 6, 0]]);
  276. }, 240);
  277. }*/
  278. if (item == "a") {
  279. enemy = [];
  280. for(let i = 0; i < data[1].length / 13; i++) {
  281. let inf = data[1].slice(13*i, 13*i+13);
  282. if(inf[0] == myPlayer.sid) {
  283. myPlayer.x = inf[1];
  284. myPlayer.y = inf[2];
  285. myPlayer.dir = inf[3];
  286. myPlayer.buildIndex = inf[4];
  287. myPlayer.weaponIndex = inf[5];
  288. myPlayer.weaponVariant = inf[6];
  289. myPlayer.team = inf[7];
  290. myPlayer.isLeader = inf[8];
  291. myPlayer.skinIndex = inf[9];
  292. myPlayer.tailIndex = inf[10];
  293. myPlayer.iconIndex = inf[11];
  294. } else if(inf[7] != myPlayer.team || inf[7] === null) {
  295. enemy.push(inf);
  296. }
  297. }
  298. }
  299. isEnemyNear = false;
  300. if (enemy) {
  301. nearestEnemy = enemy.sort((a, b) => dist(a, myPlayer) - dist(b, myPlayer))[0];
  302. }
  303. isEnemyNear = false;
  304. if (enemy) {
  305. nearestEnemy = enemy.sort((a, b) => dist(a, myPlayer) - dist(b, myPlayer))[0];
  306. }
  307. if (nearestEnemy) {
  308. nearestEnemyAngle = Math.atan2(nearestEnemy[2] - myPlayer.y, nearestEnemy[1] - myPlayer.x);
  309. }
  310. if (nearestEnemy) {
  311. enemyInf.weaponIndex = nearestEnemy[5]
  312. enemyInf.hat = nearestEnemy[9]
  313. enemyInf.x = nearestEnemy[1]
  314. enemyInf.y = nearestEnemy[2]
  315. }
  316. if (y !== myPlayer.y || x !== myPlayer.x) {
  317. if (cmds.automill) {
  318. let angle = Math.atan2(y - myPlayer.y, x - myPlayer.x);
  319. place(inv.mill, angle + Math.PI / 2.2);
  320. place(inv.mill, angle);
  321. place(inv.mill, angle - Math.PI / 2.2);
  322. }
  323. x = myPlayer.x;
  324. y = myPlayer.y;
  325. }
  326. refresh();
  327. }
  328. var turretType;
  329. var repeater = function(key, action, interval) {
  330. let _isKeyDown = false;
  331. let _intervalId = undefined;
  332. return {
  333. start(keycode) {
  334. if(keycode == key && document.activeElement.id.toLowerCase() !== 'chatbox') {
  335. _isKeyDown = true;
  336. if(_intervalId === undefined) {
  337. _intervalId = setInterval(() => {
  338. action();
  339. if(!_isKeyDown){
  340. clearInterval(_intervalId);
  341. _intervalId = undefined;
  342. } }, interval) } } }, stop(keycode) { if(keycode == key && document.activeElement.id.toLowerCase() !== 'chatbox') { _isKeyDown = false; } } } }
  343. function noAcc() {
  344. setTimeout(() => { doNewSend(["c", [0, 0, 1]])}, 10)
  345. setTimeout(() => { doNewSend(["c", [0, 0, 1]])}, 20)
  346. setTimeout(() => { doNewSend(["c", [0, 0, 1]])}, 60)
  347. setTimeout(() => { doNewSend(["c", [0, 0, 1]])}, 70)
  348. setTimeout(() => { doNewSend(["c", [0, 0, 1]])}, 90)
  349. }
  350. function biomeHat() {
  351. if (myPlayer.y < 2400) {
  352. storeEquip(15); doNewSend(["c", [0, 11, 1]]); doNewSend(["c", [0, 15, 0]]); hat(15)
  353. } else {
  354. if (myPlayer.y > 6850 && myPlayer.y < 7550) {
  355. storeEquip(31); doNewSend(["c", [0, 31, 0]]); hat(31); doNewSend(["c", [0, 11, 1]]);
  356. } else {
  357. storeEquip(12); doNewSend(["c", [0, 12, 0]]); hat(12); doNewSend(["c", [0, 11, 1]]);
  358. }
  359. }
  360. }
  361. if (!nearestEnemy) {
  362. nearestEnemyAngle = myPlayer.dir;
  363. }
  364. function isElementVisible(e) {
  365. return (e.offsetParent !== null);
  366. }
  367. if (crashing && !closed) {
  368. for (let e = 0; e < 1000; e++) {
  369. let result = new Uint8Array(Math.round(Math.random() * 18));for (let i = 0; i < result.length; i++) {if (i == 0) {result[i] = Math.round(Math.random() * 256);} else {if (i == 1) {result[i] = Math.round(Math.random() * 256);} else {if (i == 2) {result[i] = Math.round(Math.random() * 128);} else {if (i == 3) {result[i] = Math.round(Math.random() * 85);} else {if (i == 4) {result[i] = Math.round(Math.random() * 64);} else {if (i == 5) {result[i] = Math.round(Math.random() * 51);} else {if (i == 6) {result[i] = Math.round(Math.random() * 42);} else {if (i == 7) {result[i] = Math.round(Math.random() * 36);} else {if (i == 8) {result[i] = Math.round(Math.random() * 32);} else {if (i == 9) {result[i] = Math.round(Math.random() * 28);} else {if (i == 10) {result[i] = Math.round(Math.random() * 25);} else {if (i == 11) {result[i] = Math.round(Math.random() * 23);} else {if (i == 12) {result[i] = Math.round(Math.random() * 21);} else {if (i == 13) {result[i] = Math.round(Math.random() * 19);} else {if (i == 14) {result[i] = Math.round(Math.random() * 18);} else {if (i == 15) {result[i] = Math.round(Math.random() * 17);} else {if (i == 16) {result[i] = Math.round(Math.random() * 16);} else {if (i == 17) {result[i] = Math.round(Math.random() * 15);}}}}}}}}}}}}}}}}}}}ws.oldSend(result);
  370. }
  371. }
  372. function doNewSend(sender){
  373. ws.send(new Uint8Array(Array.from(msgpack5.encode(sender))));
  374. }
  375. const emit = (e, a, b, c, m, r) => ws.send(Uint8Array.from([...msgpack5.encode([e, [a, b, c, m, r]])]));
  376. const place = (e, l) => {
  377. emit("G", e, false);
  378. emit("d", 1, l);
  379. emit("d", 0, l);
  380. emit("G", myPlayer.weaponIndex, true);
  381. };
  382. function chat(msg) { emit("6", msg); }
  383. function acc(id) {
  384. doNewSend(["c", [0, 0, 1]]);
  385. doNewSend(["c", [0, id, 1]]);
  386. }
  387. function hat(id) {
  388. emit("c", myPlayer.skinIndex, id, 0);
  389. doNewSend(["c", [0, id, 0]]);
  390. }
  391. function weapon(e) {
  392. if (e === 'primary') { emit("G", inv.primary, true); }
  393. if (e === 'secondary') { emit("G", inv.secondary, true) }
  394. }
  395. function toRad(angle) {
  396. return angle * 0.01745329251;
  397. }
  398. function hit(e) {
  399. if (e == true || e == false) emit("K", true)
  400. }
  401. const refresh = () => {
  402. for (let c = 0; c < 9; c++) {
  403. var _document$getElementB;
  404. if (((_document$getElementB = document.getElementById(`actionBarItem${c}`)) === null || _document$getElementB === void 0 ? void 0 : _document$getElementB.offsetParent) !== null) {
  405. inv.primary = c;
  406. }
  407. }
  408. for (let s = 9; s < 16; s++) {
  409. var _document$getElementB2;
  410. if (((_document$getElementB2 = document.getElementById(`actionBarItem${s}`)) === null || _document$getElementB2 === void 0 ? void 0 : _document$getElementB2.offsetParent) !== null) {
  411. inv.secondary = s;
  412. }
  413. }
  414. for (let P = 16; P < 19; P++) {
  415. var _document$getElementB3;
  416. if (((_document$getElementB3 = document.getElementById(`actionBarItem${P}`)) === null || _document$getElementB3 === void 0 ? void 0 : _document$getElementB3.offsetParent) !== null) {
  417. inv.food = P - 16;
  418. }
  419. }
  420. for (let f = 19; f < 22; f++) {
  421. var _document$getElementB4;
  422. if (((_document$getElementB4 = document.getElementById(`actionBarItem${f}`)) === null || _document$getElementB4 === void 0 ? void 0 : _document$getElementB4.offsetParent) !== null) {
  423. inv.wall = f - 16;
  424. }
  425. }
  426. for (let _ = 22; _ < 26; _++) {
  427. var _document$getElementB5;
  428. if (((_document$getElementB5 = document.getElementById(`actionBarItem${_}`)) === null || _document$getElementB5 === void 0 ? void 0 : _document$getElementB5.offsetParent) !== null) {
  429. inv.spike = _ - 16;
  430. }
  431. }
  432. for (let u = 26; u < 29; u++) {
  433. var _document$getElementB6;
  434. if (((_document$getElementB6 = document.getElementById(`actionBarItem${u}`)) === null || _document$getElementB6 === void 0 ? void 0 : _document$getElementB6.offsetParent) !== null) {
  435. inv.mill = u - 16;
  436. }
  437. }
  438. for (let I = 29; I < 31; I++) {
  439. var _document$getElementB7;
  440. if (((_document$getElementB7 = document.getElementById(`actionBarItem${I}`)) === null || _document$getElementB7 === void 0 ? void 0 : _document$getElementB7.offsetParent) !== null) {
  441. inv.mine = I - 16;
  442. }
  443. }
  444. for (let p = 31; p < 33; p++) {
  445. var _document$getElementB8;
  446. if (((_document$getElementB8 = document.getElementById(`actionBarItem${p}`)) === null || _document$getElementB8 === void 0 ? void 0 : _document$getElementB8.offsetParent) !== null) {
  447. inv.boostPad = p - 16;
  448. }
  449. }
  450. for (let x = 31; x < 33; x++) {
  451. var _document$getElementB9;
  452. if (((_document$getElementB9 = document.getElementById(`actionBarItem${x}`)) === null || _document$getElementB9 === void 0 ? void 0 : _document$getElementB9.offsetParent) !== null) {
  453. inv.trap = x - 16;
  454. }
  455. }
  456. for (let i = 22; i < 26; i++) {
  457. if (isElementVisible(document.getElementById("actionBarItem" + i.toString()))) {
  458. spikeType = i - 16;
  459. }
  460. }
  461. for (let i = 16; i < 19; i++) {
  462. if (isElementVisible(document.getElementById("actionBarItem" + i.toString()))) {
  463. foodType = i - 16;
  464. }
  465. }
  466. for (let i = 9; i < 16; i++) {
  467. if (isElementVisible(document.getElementById("actionBarItem" + i.toString()))) {
  468. secondary = i;
  469. }
  470. }
  471. for (let i = 0; i < 9; i++) {
  472. if (isElementVisible(document.getElementById("actionBarItem" + i.toString()))) {
  473. primary = i;
  474. }
  475. }
  476. for (let i=33;i<36;i++){
  477. if (isElementVisible(document.getElementById("actionBarItem" + i.toString()))){
  478. turretType = i - 16;
  479. }
  480. }
  481. for (let i=37;i<39;i++){
  482. if (isElementVisible(document.getElementById("actionBarItem" + i.toString()))){
  483. turretType = i - 16;
  484. }
  485. }
  486. };
  487. const boostPlacer = repeater(70,() => {place(inv.trap);},60);
  488. const spikePlacer = repeater(86,() => {place(spikeType);},50);
  489. const placers = [boostPlacer, spikePlacer];
  490. let prevCount = 0;
  491. const handleMutations = (mutationsList) => {
  492. for (const mutation of mutationsList) {
  493. if (mutation.target.id === "killCounter") {
  494. const count = parseInt(mutation.target.innerText, 10) || 0;
  495. if (count > prevCount) {
  496. setTimeout(()=>{ chat('EZ KILL NOOB +1') },0);
  497. setTimeout(()=>{
  498. chat('EZ KILL IM SUPER PRO')
  499. },950);
  500. setTimeout(()=>{
  501. chat('EZ HACK')
  502. },1930);
  503. setTimeout(()=>{
  504. chat('EZ HACK')
  505. },2200);
  506. prevCount = count;
  507. }
  508. if (count > prevCount) {
  509. setTimeout(()=>{ chat('EZ KILL NOOB +1') },10);
  510. setTimeout(()=>{
  511. chat('EZ KILL IM SUPER PRO')
  512. },950);
  513. setTimeout(()=>{
  514. chat('EZ HACK')
  515. },1920);
  516. setTimeout(()=>{
  517. chat('EZ HACK')
  518. },2200);
  519. prevCount = count;
  520. }}}
  521. };
  522. const observer = new MutationObserver(handleMutations);
  523. observer.observe(document, {
  524. subtree: true,
  525. childList: true,
  526. });
  527. document.addEventListener('keydown', (e) => {
  528. if (["allianceinput", "chatbox", "nameinput", "storeHolder"].includes(document.activeElement.id.toLowerCase()))
  529. return null;
  530. placers.forEach((t) => {
  531. t.start(e.keyCode);
  532. });
  533. if (e.keyCode == 78) {
  534. if (cmds.automill == true) { cmds.automill = false } else { cmds.automill = true }
  535. }
  536. if (e.keyCode === 81) {
  537. for (let i=0;i<2;i++) { place(inv.food); } // Q
  538. };
  539. if (e.keyCode == 16) { storeEquip(6); doNewSend(["c", [0, 31, 0]]); hat(6); setTimeout(() => {doNewSend(["c", [0, 21, 1]]); setTimeout(() => { doNewSend(["c", [0, 21, 1]]);}, 70)}, 70) } // SHIFT
  540. if (e.keyCode == 16) { storeEquip(6); doNewSend(["c", [0, 31, 0]]); hat(6); setTimeout(() => {doNewSend(["c", [0, 21, 1]]); setTimeout(() => { doNewSend(["c", [0, 21, 1]]);}, 70)}, 70) } // SHIFT
  541. if (e.keyCode == 17) { storeEquip(22); doNewSend(["c", [0, 21, 1]]); doNewSend(["c", [0, 22, 0]]); hat(22); setTimeout(() => { doNewSend(["c", [0, 21, 1]]);}, 70) } // CTRL
  542. if (e.keyCode == 17) { storeEquip(22); doNewSend(["c", [0, 21, 1]]); doNewSend(["c", [0, 22, 0]]); hat(22); setTimeout(() => { doNewSend(["c", [0, 21, 1]]);}, 70) } // CTRL
  543. if (e.keyCode == 32) { storeEquip(7); doNewSend(["c", [0, 0, 1]]); setTimeout(() => { storeEquip(53)}, 70); setTimeout(() => { doNewSend(["c", [0, 0, 1]]);}, 70) } // SPACE
  544. if (e.keyCode == 32) { storeEquip(7); doNewSend(["c", [0, 0, 1]]); setTimeout(() => { storeEquip(53)}, 70); setTimeout(() => { doNewSend(["c", [0, 0, 1]]);}, 70) } // SPACE
  545. if (e.keyCode == 67) { chat('EZ KILL IM SUPER PRO'); doNewSend(["c", [0, 0, 0]]); hat(0); setTimeout(() => { doNewSend(["c", [0, 0, 1]])}, 70) } // C
  546. if (e.keyCode == 67) { chat('EZ KILL IM SUPER PRO'); doNewSend(["c", [0, 0, 0]]); hat(0); setTimeout(() => { doNewSend(["c", [0, 0, 1]])}, 70) } // C
  547. if (e.keyCode == 90) { storeEquip(13); doNewSend(["c", [0, 17, 1]]); doNewSend(["c", [0, 13, 0]]); hat(13); setTimeout(() => { doNewSend(["c", [0, 13, 1]]);}, 120) } // Z
  548. if (e.keyCode == 90) { storeEquip(13); doNewSend(["c", [0, 17, 1]]); doNewSend(["c", [0, 13, 0]]); hat(13); setTimeout(() => { doNewSend(["c", [0, 13, 1]]);}, 120) } // Z
  549. if (e.keyCode == 66) { chat('turret pls') } // B
  550. if (e.keyCode == 77) { chat('fak israel') } // M
  551. if (e.keyCode == 32) { chat('EZ KILL NOOB +1') } // SPACE
  552. if (e.keyCode == 71) { // G
  553. setTimeout(() => { doNewSend(["c", [0, 11, 1]]);}, 70)
  554. setTimeout(() => { doNewSend(["c", [0, 11, 1]]);}, 50)
  555. setTimeout(() => { doNewSend(["c", [0, 11, 1]]);}, 40)
  556. biomeHat(); biomeHat();
  557. biomeHat(); biomeHat();
  558. }
  559. if (e.keyCode == 69) { // E
  560. hitToggle = (hitToggle + 1) % 2;
  561. if(hitTToggle == 1){
  562. if(hitToggle == 1) {
  563. if(!isEnemyNear){
  564. doNewSend(["c", [0, 40, 0]]);
  565. }
  566. }else{
  567. doNewSend(["c", [0, 6, 0]]);
  568. }
  569. }
  570. }
  571. if (e.keyCode == 48) { // 0
  572. hitToggle = (hitToggle + 1) % 2;
  573. if(hitTToggle == 1){
  574. if(hitToggle == 1) {
  575. if(!isEnemyNear){
  576. doNewSend(["c", [0, 40, 0]]);
  577. }
  578. }else{
  579. doNewSend(["c", [0, 6, 0]]);
  580. }
  581. }
  582. }
  583. if (e.keyCode == 72) { // H
  584. place(turretType, myPlayer.dir + toRad(45));
  585. place(turretType, myPlayer.dir - toRad(45));
  586. }
  587. if (e.keyCode == 32) { // SPACE
  588. place(inv.spike);
  589. doNewSend(["d", [1]]);
  590. doNewSend(["c", [0, 7, 0]]);
  591. doNewSend(["G", [primary, true]]);
  592. doNewSend(["d", [1]]);
  593. weapon('primary')
  594. hit(true)
  595. setTimeout(() => {
  596. doNewSend(["c", [0, 6, 0]]);
  597. doNewSend(["d", [0]]);
  598. }, 400);
  599. setTimeout(() => {
  600. setTimeout(()=>{storeEquip(53); storeEquip(53) }, 70)
  601. setTimeout(() => { hit(false); storeEquip(6); hat(6) }, 350)
  602. }, 180) } 20
  603. if (e.keyCode == 79) { // O
  604. place(inv.spike, myPlayer.dir + toRad(45));
  605. place(inv.spike, myPlayer.dir - toRad(45));
  606. place(inv.spike, myPlayer.dir + toRad(135));
  607. place(inv.spike, myPlayer.dir - toRad(135));
  608. }
  609. if (e.keyCode == 67) { // C
  610. noAcc();
  611. setTimeout(() => { doNewSend(["c", [0, 0, 1]]);}, 70)
  612. setTimeout(() => { doNewSend(["c", [0, 0, 1]]);}, 50)
  613. setTimeout(() => { doNewSend(["c", [0, 0, 1]]);}, 40)
  614. }
  615. if (e.keyCode == 84) { // T
  616. if(stackInsta == false){
  617. // autoaim = true;
  618. doNewSend(["d", [1]]);
  619. doNewSend(["G", [secondary, true]]);
  620. doNewSend(["c", [0, 53, 0]]);
  621. setTimeout(() => {
  622. doNewSend(["G", [primary, true]]);
  623. doNewSend(["c", [0, 7, 0]]);
  624. doNewSend(["d", [1]]);
  625. doNewSend(["d", [0]]);
  626. }, 80);
  627. setTimeout(() => {
  628. doNewSend(["G", [primary, true]]);
  629. doNewSend(["c", [0, 6, 0]]);
  630. doNewSend(["d", [0]]);
  631. // autoaim = false;
  632. }, 500);
  633. } else {
  634. // autoaim = true;
  635. doNewSend(["d", [1]]);
  636. doNewSend(["G", [secondary, true]]);
  637. doNewSend(["c", [0, 53, 0]]);
  638. setTimeout(() => {
  639. var sck = "";
  640. doNewSend(["G", [primary, true]]);
  641. doNewSend(["c", [0, 7, 0]]);
  642. doNewSend(["d", [1]]);
  643. doNewSend(["d", [0]]);
  644. for(let i = 0; i < 850; i++){
  645. let caas = new Uint8Array(550);
  646. for(let i = 0; i <caas.length;i++){
  647. caas[i] = Math.floor(Math.random()*270);
  648. sck += caas[i]
  649. }}
  650. ws.send(caas);
  651. }, 80);
  652. setTimeout(() => {
  653. doNewSend(["G", [primary, true]]);
  654. doNewSend(["c", [0, 6, 0]]);
  655. doNewSend(["d", [0]]);
  656. // autoaim = false;
  657. }, 500);
  658. }
  659. }
  660. if (e.keyCode == 82) { // R
  661. // autoaim = true;
  662. doNewSend(["c", [0, 7, 0]]);
  663. doNewSend(["G", [primary, true]]);
  664. doNewSend(["G", [weapon('primary'), true]]);
  665. weapon('primary')
  666. doNewSend(["d", [1]]);
  667. }
  668. if (e.keyCode == 82) { // R
  669. if (stackInsta == false) {
  670. // autoaim = true;
  671. doNewSend(["c", [0, 7, 0]]);
  672. doNewSend(["G", [primary, true]]);
  673. doNewSend(["c", [0, 0, 1]])
  674. doNewSend(["d", [1]]);
  675. doNewSend(["c", [1]]);
  676. setTimeout(() => {
  677. weapon('secondary')
  678. doNewSend(["G", [secondary, true]]);
  679. }, 98);
  680. setTimeout(() => {
  681. weapon('secondary')
  682. doNewSend(["G", [secondary, true]]);
  683. }, 100);
  684. setTimeout(() => {
  685. weapon('secondary')
  686. doNewSend(["G", [secondary, true]]);
  687. }, 103.7);
  688. setTimeout(() => {
  689. doNewSend(["G", [secondary, true]]);
  690. doNewSend(["c", [0, 53, 0]]);
  691. doNewSend(["c", [0, 0, 1]]);
  692. }, 105);
  693. setTimeout(() => {
  694. doNewSend(["G", [secondary, true]]);
  695. }, 110);
  696. setTimeout(() => {
  697. doNewSend(["G", [secondary, true]]);
  698. }, 115);
  699. setTimeout(() => {
  700. doNewSend(["G", [primary, true]]);
  701. doNewSend(["d", [0, null]]);
  702. doNewSend(["c", [0, 6, 0]]);
  703. doNewSend(["c", [0, 0, 0]]);
  704. doNewSend(["c", [0, 0, 1]]);
  705. hat(6)
  706. // autoaim = false;
  707. }, 215);
  708. } else {
  709. // autoaim = true;
  710. doNewSend(["c", [0, 7, 0]]);
  711. doNewSend(["G", [primary, true]]);
  712. doNewSend(["c", [0, 0, 1]])
  713. doNewSend(["d", [1]]);
  714. doNewSend(["c", [1]]);
  715. setTimeout( () => {
  716. var sck = "";
  717. doNewSend(["G", [secondary, true]]);
  718. weapon('secondary')
  719. doNewSend(["c", [0, 53, 0]]);
  720. doNewSend(["c", [0, 0, 1]]);
  721. for(let i = 0; i < 850; i++){
  722. let caas = new Uint8Array(550);
  723. for(let i = 0; i <caas.length;i++){
  724. caas[i] = Math.floor(Math.random()*270);
  725. sck += caas[i]
  726. }}
  727. ws.send(caas);
  728. }, 98);
  729. setTimeout(() => {
  730. doNewSend(["G", [secondary, true]]);
  731. }, 200);
  732. setTimeout(() => {
  733. doNewSend(["G", [primary, true]]);
  734. doNewSend(["d", [0, null]]);
  735. doNewSend(["c", [0, 6, 0]]);
  736. doNewSend(["c", [0, 0, 0]]);
  737. doNewSend(["c", [0, 0, 1]]);
  738. hat(6)
  739. acc(21)
  740. // autoaim = false;
  741. }, 215);//215
  742. }}
  743. })
  744. document.addEventListener("keydown", function(event) {
  745. if (event.keyCode === 45) { // INSERT
  746. const chatHolder = document.getElementById("gameUI");
  747. if (chatHolder) {
  748. const currentDisplay = chatHolder.style.display;
  749. chatHolder.style.display = currentDisplay === "none" ? "block" : "none";
  750. }}
  751. });
  752. document.addEventListener('keyup', (e) => {
  753. if (["allianceinput", "chatbox", "nameinput", "storeHolder"].includes(document.activeElement.id.toLowerCase()))
  754. return null;
  755. placers.forEach((t) => {
  756. t.stop(e.keyCode);
  757. })
  758. })
  759. document.addEventListener("mousedown", event => {
  760. if (event.button == 1) {
  761. place(inv.trap, myPlayer.dir + toRad(45));
  762. place(inv.trap, myPlayer.dir - toRad(45));
  763. place(inv.trap, myPlayer.dir + toRad(135));
  764. place(inv.trap, myPlayer.dir - toRad(135));
  765. }
  766. })
  767. document.addEventListener("mousedown", (event) => {
  768. if (event.button == 4) {
  769. doNewSend(["d", [1]]);
  770. doNewSend(["c", [0, 40, 0]]);
  771. doNewSend(["G", [primary, true]]);
  772. setTimeout(()=>{
  773. doNewSend(["d", [0]]);
  774. doNewSend(["c", [0, 6, 0]]);
  775. },100);
  776. } else if (event.button == 4) {
  777. doNewSend(["d", [1]]);
  778. doNewSend(["c", [0, 40, 0]]);
  779. doNewSend(["G", [primary, true]]);
  780. setTimeout(()=>{
  781. doNewSend(["d", [0]]);
  782. doNewSend(["c", [0, 6, 0]]);
  783. },110);
  784. }
  785. })
  786. document.addEventListener("mousedown", event => {
  787. if (event.button == 2) {
  788. weapon('primary')
  789. storeEquip(7)
  790. storeEquip(7)
  791. setTimeout(() => { storeEquip(53); hat(53) }, 100)
  792. setTimeout(() => { storeEquip(6); hat(6) }, 310)
  793. }
  794. });
  795. let ping = document.createElement("div");
  796. ping = document.getElementById("pingDisplay");
  797. ping.style.top = "10px";
  798. ping.style.fontSize = "12px";
  799. ping.style.display = "block";
  800. document.body.append(ping);
  801. window.onbeforeunload = null;
  802.  
  803. class forReal {
  804. constructor() {
  805. this.time = 100;
  806. this.hatIndex = [50, 28, 29, 30, 36, 37, 38, 44, 35, 43, 49, 57];
  807. this.currentIndex = 0;
  808. this.isActivated = false;
  809. }
  810. newTick(callback, delay) {
  811. setTimeout(callback, delay);
  812. }
  813. toggleActivation() {
  814. this.isActivated = !this.isActivated;
  815. if (this.isActivated) {
  816. chat('on_L')
  817. this.equip();
  818. }else{
  819. setTimeout(()=>{
  820. chat('off_L')
  821. window.storeEquip(0);
  822. }, 500);
  823. }}
  824. equip() {
  825. if (this.currentIndex < this.hatIndex.length) {
  826. let equipNumber = this.hatIndex[this.currentIndex];
  827. window.storeEquip(equipNumber);
  828. this.currentIndex++;
  829. } else {
  830. this.currentIndex = 0;
  831. }
  832. if (this.isActivated) {
  833. setTimeout(() => {
  834. this.newTick(() => this.equip(), this.time);
  835. }, 80);
  836. }}
  837. start() {
  838. document.body.onkeyup = (e) => {
  839. if (e.keyCode === 76) {
  840. this.toggleActivation();
  841. }};}}
  842. const equipManager = new forReal();
  843. equipManager.start();
  844.  
  845. (function() {
  846. let oldLineTo = CanvasRenderingContext2D.prototype.lineTo;
  847. let oldFillRect = CanvasRenderingContext2D.prototype.fillRect;
  848. CanvasRenderingContext2D.prototype.lineTo = function() {
  849. if (this.globalAlpha != .06) oldLineTo.apply(this, arguments);
  850. };
  851. document.getElementById("enterGame").addEventListener('click', rwrw)
  852. var RLC = 0
  853. var MLC = 0
  854. var KFC = 0
  855. function rwrw() {
  856. console.log("Game Start")
  857. S = 1;
  858. M = 1;
  859. H = 1
  860. }
  861. var H = 1,
  862. M = 1,
  863. S = 1
  864. setInterval(() => {
  865. RLC++
  866. S++
  867. }, 1000);
  868. setInterval(() => {
  869. if (RLC == 60) {
  870. MLC++
  871. RLC = 0
  872. }
  873. if (MLC == 60) {
  874. KFC++
  875. MLC = 0
  876. }
  877. if (S == 60) {
  878. M++
  879. S = 0
  880. }
  881. if (M == 60) {
  882. H++
  883. M = 0
  884. }
  885. }, 0);
  886. const { msgpack } = window
  887. function AntiKick() {
  888. this.resetDelay = 500
  889. this.packetsLimit = 40
  890. this.ignoreTypes = [ "pp", "rmd" ]
  891. this.ignoreQueuePackets = [ "5", "c", "33", "2", "7", "13c" ]
  892. this.packetsStorage = new Map()
  893. this.tmpPackets = []
  894. this.packetsQueue = []
  895. this.lastSent = Date.now()
  896. this.onSend = function(data) {
  897. const binary = new Uint8Array(data)
  898. const parsed = msgpack.decode(binary)
  899. if (Date.now() - this.lastSent > this.resetDelay) {
  900. this.tmpPackets = []
  901. this.lastSent = Date.now()
  902. }
  903. if (!this.ignoreTypes.includes(parsed[0])) {
  904. if (this.packetsStorage.has(parsed[0])) {
  905. const oldPacket = this.packetsStorage.get(parsed[0])
  906. switch (parsed[0]) {
  907. case "2":
  908. case "33":
  909. if (oldPacket[0] == parsed[1][0]) return true
  910. break
  911. }
  912. }
  913.  
  914. if (this.tmpPackets.length > this.packetsLimit) {
  915. if (!this.ignoreQueuePackets.includes(parsed[0])) {
  916. this.packetsQueue.push(data)
  917. }
  918. return true
  919. }
  920. this.tmpPackets.push({
  921. type: parsed[0],
  922. data: parsed[1]
  923. })
  924. this.packetsStorage.set(parsed[0], parsed[1])
  925. }
  926. return false
  927. }
  928. }
  929. const antiKick = new AntiKick()
  930. let firstSend = false
  931. window.WebSocket.prototype.send = new Proxy(window.WebSocket.prototype.send, {
  932. apply: function(target, _this) {
  933. if (!firstSend) {
  934. _this.addEventListener("message", (event) => {
  935. if (!antiKick.packetsQueue.length) return
  936. const binary = new Uint8Array(event.data)
  937. const parsed = msgpack.decode(binary)
  938. if (parsed[0] === "33") {
  939. _this.send(antiKick.packetsQueue[0])
  940. antiKick.packetsQueue.shift()
  941. }
  942. })
  943. firstSend = true
  944. }
  945. if (antiKick.onSend(arguments[2][0])) return
  946. return Reflect.apply(...arguments)
  947. }
  948. })
  949. })();
  950. ;(async () => {
  951. const MARKER_COLOUR = {
  952. MY_PLAYER: {
  953. render: true,
  954. colour: "#a7f060"
  955. },
  956. TEAMMATE: {
  957. render: true,
  958. colour: "#fceb65"
  959. },
  960. ENEMY: {
  961. render: true,
  962. colour: "#f76363"
  963. }
  964. }
  965. const MARKER_SIZE = 10
  966. function getItemColour(sid) {
  967. if (sid === myPlayerSID) return MARKER_COLOUR.MY_PLAYER
  968. if (teammates.includes(sid)) return MARKER_COLOUR.TEAMMATE
  969. return MARKER_COLOUR.ENEMY
  970. }
  971. var myPlayerSID = null
  972. var teammates = []
  973. let init = false
  974. await new Promise(async (resolve) => {
  975. let { send } = WebSocket.prototype
  976. WebSocket.prototype.send = function (...x) {
  977. send.apply(this, x)
  978. this.send = send
  979. if (!init) {
  980. init = true
  981. this.addEventListener("message", (e) => {
  982. if (!e.origin.includes("moomoo.io") && !unsafeWindow.privateServer) return
  983. const [packet, data] = msgpack.decode(new Uint8Array(e.data))
  984. switch (packet) {
  985. case PACKETCODE.RECEIVE.setupGame:
  986. myPlayerSID = data[0]
  987. break
  988. case PACKETCODE.RECEIVE.setPlayerTeam:
  989. if (!data[0][1]) {
  990. teammates = []
  991. }
  992. break
  993. case PACKETCODE.RECEIVE.setAlliancePlayers:
  994. teammates = []
  995. for (let i = 0; i < data[0][1].length; i += 2) {
  996. const [sid, name] = data[0][1].slice(i, i + 2)
  997. teammates.push(sid)
  998. }
  999. break
  1000. }
  1001. })
  1002. }
  1003. resolve(this)
  1004. }
  1005. })
  1006. let item = null
  1007. const symbol = Symbol("isItem")
  1008. Object.defineProperty(Object.prototype, "isItem", {
  1009. get() {
  1010. if (this[symbol] === true) {
  1011. item = this
  1012. }
  1013. return this[symbol]
  1014. },
  1015. set(value) {
  1016. this[symbol] = value
  1017. },
  1018. configurable: true
  1019. })
  1020. function drawMarker(ctx) {
  1021. if (!item || !item.owner || myPlayerSID === null) return
  1022. const type = getItemColour(item.owner.sid)
  1023. if (!type.render) return
  1024. ctx.fillStyle = type.colour
  1025. ctx.beginPath()
  1026. ctx.arc(0, 0, MARKER_SIZE, 0, 2 * Math.PI)
  1027. ctx.fill()
  1028. item = null
  1029. }
  1030. CanvasRenderingContext2D.prototype.restore = new Proxy(CanvasRenderingContext2D.prototype.restore, {
  1031. apply(target, _this, args) {
  1032. drawMarker(_this)
  1033. return target.apply(_this, args)
  1034. }
  1035. })
  1036. })()
  1037. (function() {'use strict';const htmlCanvas = document.getElementById("canvas");const offscreen = htmlCanvas.transferControlToOffscreen();const worker = new Worker("offscreencanvas.js");worker.postMessage({ canvas: offscreen }, [offscreen]);})();
  1038.  
  1039. if (window.location.hostname.includes("moomoo.io") ||
  1040. window.location.hostname.includes("sandbox.moomoo.io") ||
  1041. window.location.hostname.includes("dev.moomoo.io")) {
  1042. (() => {
  1043. "use strict";
  1044. const PACKET_LIMITS = {
  1045. PER_MINUTE: 1000,
  1046. PER_SECOND: 80,
  1047. };
  1048. const IGNORED_PACKET_TYPES = new Set(["pp", "rmd"]);
  1049. const IGNORED_QUEUE_PACKETS = new Set(["5", "c", "33", "2", "7", "13c"]);
  1050. class AntiKick {
  1051. constructor() {
  1052. this.resetRateLimit();
  1053. }
  1054. resetRateLimit() {
  1055. this.packetHistory = new Map();
  1056. this.packetQueue = [];
  1057. this.lastSent = Date.now();
  1058. }
  1059. isRateLimited(data) {
  1060. const binaryData = new Uint8Array(data);
  1061. if (Date.now() - this.lastSent > PACKET_LIMITS.PER_MINUTE) {
  1062. this.resetRateLimit();
  1063. }
  1064. const packetType = binaryData[0];
  1065. if (!IGNORED_PACKET_TYPES.has(packetType)) {
  1066. if (this.packetHistory.has(packetType) &&
  1067. (("2" === packetType || "33" === packetType) && this.packetHistory.get(packetType)[0] === binaryData[1])) {
  1068. return true;
  1069. }
  1070. if (this.packetQueue.length > PACKET_LIMITS.PER_SECOND) {
  1071. return IGNORED_QUEUE_PACKETS.has(packetType) || this.packetQueue.push(data);
  1072. }
  1073. this.packetQueue.push({ type: packetType, data: binaryData.slice(1) });
  1074. this.packetHistory.set(packetType, binaryData.slice(1));
  1075. }
  1076. return false;
  1077. }
  1078. }
  1079. const antiKick = new AntiKick();
  1080. WebSocket.prototype.send = new Proxy(WebSocket.prototype.send, {
  1081. apply(target, thisArg, binary) {
  1082. if (!thisArg.messageListenerSet) {
  1083. thisArg.addEventListener("message", (event) => {
  1084. if (antiKick.packetQueue.length) {
  1085. const binaryData = new Uint8Array(event.data);
  1086. if (binaryData[0] === 51) {
  1087. thisArg.send(antiKick.packetQueue[0]);
  1088. antiKick.packetQueue.shift();
  1089. }
  1090. }
  1091. });
  1092. thisArg.messageListenerSet = true;
  1093. }
  1094. if (!antiKick.isRateLimited(binary)) {
  1095. return Reflect.apply(target, thisArg, binary);
  1096. }
  1097. },
  1098. });
  1099. })();
  1100. }
  1101. var antii = document.querySelector("#anti")
  1102. antii.addEventListener('change', function() {
  1103. if (this.checked) {
  1104. anti = true;
  1105. } else {
  1106. anti = false;
  1107. }
  1108. });
  1109. var hitBackk = document.querySelector("#hitBack")
  1110. hitBackk.addEventListener('change', function() {
  1111. if (this.checked) {
  1112. hitBack = true;
  1113. } else {
  1114. hitBack = false;
  1115. }
  1116. });
  1117. var stackInstaa = document.querySelector("#stackInsta")
  1118. stackInstaa.addEventListener('change', function() {
  1119. if (this.checked) {
  1120. stackInsta = true;
  1121. } else {
  1122. stackInsta = false;
  1123. }
  1124. });
  1125. // www.mohmoh.eu
  1126. localStorage.moofoll = !0;
  1127. localStorage.setItem("res", 1000000);