KRUNKER.IO AIMBOT, XRAY, SPINBOT, WIREFRAME, FOV BOX, AND 3RD PERSON BY DOGEWARE

Krunker's Mod Menu Aimbot targets nearest VISIBLE player. Adjust Smoothing for precision. Use Xray to see through walls, wireframe for players & world, and more

  1. // ==UserScript==
  2. // @name KRUNKER.IO AIMBOT, XRAY, SPINBOT, WIREFRAME, FOV BOX, AND 3RD PERSON BY DOGEWARE
  3. // @namespace http://tampermonkey.net/
  4. // @version 1.3
  5. // @description Krunker's Mod Menu Aimbot targets nearest VISIBLE player. Adjust Smoothing for precision. Use Xray to see through walls, wireframe for players & world, and more
  6. // @author DOGEWARE
  7. // @match *://krunker.io/*
  8. // @match *://browserfps.com/*
  9. // @exclude *://krunker.io/social*
  10. // @exclude *://krunker.io/editor*
  11. // @icon https://media.giphy.com/media/CxYGmxv0Oyz4I/giphy.gif
  12. // @grant none
  13. // @require https://unpkg.com/three@0.150.0/build/three.min.js
  14. // @antifeature ads
  15. // ==/UserScript==
  16.  
  17. const THREE = window.THREE;
  18. function showPopup(message) {
  19. var popupContainer = document.createElement('div')
  20. popupContainer.style.position = 'fixed'
  21. popupContainer.style.top = '0'
  22. popupContainer.style.left = '0'
  23. popupContainer.style.width = '100%'
  24. popupContainer.style.backgroundColor = '#333'
  25. popupContainer.style.color = '#fff'
  26. popupContainer.style.padding = '10px'
  27. popupContainer.style.textAlign = 'center'
  28. popupContainer.style.zIndex = '9999'
  29.  
  30. var textElement = document.createElement('div')
  31. textElement.textContent = message
  32. textElement.style.fontSize = '18px'
  33. textElement.style.color = '#fff'
  34. textElement.style.fontFamily = '"Roboto", "Helvetica Neue", Helvetica, Arial, sans-serif';
  35.  
  36. var buttonContainer = document.createElement('div');
  37. buttonContainer.style.display = 'inline-block';
  38.  
  39. var button1 = document.createElement('button');
  40. button1.textContent = 'Get 24 Hour Key';
  41. button1.style.padding = '5px 10px';
  42. button1.style.backgroundColor = '#ff6600';
  43. button1.style.border = 'none';
  44. button1.style.borderRadius = '5px';
  45. button1.style.color = '#fff';
  46. button1.style.cursor = 'pointer';
  47. button1.style.fontFamily = '"Roboto", "Helvetica Neue", Helvetica, Arial, sans-serif';
  48. buttonContainer.appendChild(button1);
  49. button1.addEventListener('click', function() {
  50. window.open("https://dogescripts.pages.dev/script/key-unlock?script4key=krunker.io&reviewscript=491124-krunker-io-aimbot-xray-spinbot-wireframe-fov-box-and-3rd-person-by-dogeware");
  51. });
  52. var closeButton = document.createElement('button');
  53. closeButton.textContent = 'Close';
  54. closeButton.style.padding = '5px 10px';
  55. closeButton.style.backgroundColor = '#ff6600';
  56. closeButton.style.border = 'none';
  57. closeButton.style.borderRadius = '5px';
  58. closeButton.style.color = '#fff';
  59. closeButton.style.cursor = 'pointer';
  60. closeButton.style.marginLeft = '10px';
  61. closeButton.style.fontFamily = '"Roboto", "Helvetica Neue", Helvetica, Arial, sans-serif';
  62.  
  63. closeButton.addEventListener('click', function() {
  64. document.body.removeChild(popupContainer);
  65. });
  66.  
  67. popupContainer.appendChild(textElement);
  68. popupContainer.appendChild(buttonContainer);
  69. popupContainer.appendChild(closeButton);
  70.  
  71. document.body.appendChild(popupContainer);
  72. }
  73.  
  74. const alertMsg = `
  75. 🚀 Time to Power Up! 🚀
  76.  
  77. Attention! 📣 Access to this script now requires our exclusive license key for activation. 🛡️ Secure yours now by visiting our official page at dogescripts.pages.dev. It's quick and easy, taking just a few seconds. Remember, this process needs to be completed about twice a day to keep things running smoothly. Let's level up together! 💪
  78.  
  79. 🫷 Ads OnClick (Popunder) If You Get Redirected Please Close Page👍
  80. `;
  81.  
  82. const urlParams = new URLSearchParams(window.location.search);
  83. const currentDate = new Date();
  84. const day = currentDate.getDate();
  85.  
  86. const Start = ["H7", "J6", "P9", "H8"];
  87. const End = ["BJ8", "C8Y", "PLOG", "C149"];
  88.  
  89. let paidKey = urlParams.get('paid_key');
  90. let normalKey = urlParams.get('key');
  91.  
  92. let paidKeyExpirationTime = localStorage.getItem("paid_key_expiration");
  93.  
  94. let isValidKey = false;
  95.  
  96. if (paidKey && paidKey.endsWith("DONT_SHARE_WITH_ANYONE")) {
  97. if (!paidKeyExpirationTime || parseInt(paidKeyExpirationTime) < currentDate.getTime()) {
  98. localStorage.setItem("paid_key", paidKey);
  99. paidKeyExpirationTime = currentDate.getTime() + (24 * 60 * 60 * 1000); // Set expiration for 24 hours
  100. localStorage.setItem("paid_key_expiration", paidKeyExpirationTime);
  101. isValidKey = true;
  102. } else {
  103. isValidKey = true;
  104. }
  105. } else if (localStorage.getItem("paid_key") && parseInt(localStorage.getItem("paid_key_expiration")) >= currentDate.getTime()) {
  106. isValidKey = true;
  107. } else if (normalKey) {
  108. for (const startStr of Start) {
  109. if (normalKey.startsWith(startStr)) {
  110. for (const endStr of End) {
  111. if (normalKey.endsWith(endStr)) {
  112. isValidKey = true;
  113. break;
  114. }
  115. }
  116. break;
  117. }
  118. }
  119. } else {
  120. // Redirect to get the basic key
  121. alert(alertMsg); // Prompt to visit the page to get the basic key
  122. location.href = `https://dogescripts.pages.dev/games/?script=${location.hostname}`;
  123. return;
  124. }
  125.  
  126. // Check if the paid key has expired
  127. if (isValidKey && parseInt(localStorage.getItem("paid_key_expiration")) < currentDate.getTime()) {
  128. isValidKey = false;
  129. }
  130.  
  131. if (isValidKey) {
  132. showPopup(`Remove ADS On this ${location.hostname} Script For 24 Hours For Free!`);
  133. urlParams.delete("key");
  134. urlParams.delete("paid_key");
  135. history.replaceState(null, null, "/" + urlParams.toString());
  136. console.log('Valid Key');
  137. } else {
  138. alert("Your Paid_Key Has Expired")
  139. localStorage.removeItem("paid_key_expiration")
  140. location.href = `https://dogescripts.pages.dev/games/?script=${location.hostname}`;
  141. return;
  142. }
  143.  
  144.  
  145. let WorldScene;
  146. let intersections;
  147. let DOGEWARE = {
  148. player: {
  149. wireframe: true,
  150. opacity: 1,
  151. charmsColor: "#000000"
  152. },
  153. spin: {
  154. spinbot: false,
  155. speed: 0.1,
  156. spinAngle: 0
  157. },
  158. ESP: {
  159. BoxESP: true,
  160. Charms: true,
  161. wireframe: false,
  162. layer: 2,
  163. opacity: 0.3
  164. },
  165. Cam: {
  166. x: 0,
  167. y: 0,
  168. z: 0
  169. },
  170. aimbot: {
  171. krunkAimbot: true,
  172. smoothingFactor: 0.6,
  173. AimOffset: 0.6,
  174. far: 100000,
  175. },
  176. }
  177. let norms = {
  178. allowTarget: true,
  179. console: console.log,
  180. injectTime: 3000
  181. }
  182. const origialArrayPush = Array.prototype.push
  183. const getMainScene = function(object) {
  184. if(object && object.parent && object.parent.type === "Scene" && object.parent.name === "Main") {
  185. WorldScene = object.parent;
  186. norms.console(WorldScene)
  187. Array.prototype.push = origialArrayPush;
  188. }
  189. return origialArrayPush.apply(this, arguments);
  190. };
  191.  
  192. const ESPMatrix = new THREE.EdgesGeometry(new THREE.BoxGeometry( 5, 13, 0.02 ).translate(0,5,0));
  193.  
  194. const ESPMaterial = new THREE.RawShaderMaterial({
  195. vertexShader: `
  196. attribute vec3 position;
  197.  
  198. uniform mat4 projectionMatrix;
  199. uniform mat4 modelViewMatrix;
  200.  
  201. void main() {
  202. vec4 pos = projectionMatrix * modelViewMatrix * vec4(position, 1.0);
  203. pos.z = 0.9999;
  204. gl_Position = pos;
  205. }
  206. `,
  207. fragmentShader: `
  208. void main() {
  209. gl_FragColor = vec4(1.0, 0.0, 0.0, 1.0);
  210. }
  211. `,
  212. depthTest: false,
  213. depthWrite: false,
  214. transparent: true
  215. });
  216. function HBO() {
  217. requestAnimationFrame.call(window, HBO);
  218. if(!WorldScene) {
  219. window.setTimeout(() => {
  220. Array.prototype.push = getMainScene;
  221. }, norms.injectTime)
  222. }
  223. const entities = []
  224. let myController
  225. let PlayerTarget
  226. let RangeFactor = Infinity
  227.  
  228. WorldScene.children.forEach(child => {
  229. if(child.material)child.material.wireframe = DOGEWARE.ESP.wireframe
  230. if(child.type === 'Object3D') {
  231. try {
  232. const Camera = child.children[0]?.children[0]
  233. if(Camera && Camera.type === 'PerspectiveCamera') {
  234. myController = child
  235. } else {
  236. entities.push(child)
  237. }
  238. } catch {}
  239. }
  240. });
  241. if(!myController) {
  242. Array.prototype.push = getMainScene
  243. return
  244. }
  245. function DoSpin(){
  246. DOGEWARE.spin.spinAngle += DOGEWARE.spin.speed
  247. const targetRotationY = DOGEWARE.spin.spinAngle % (Math.PI * 2)
  248. myController.children[0].rotation.y += (targetRotationY - myController.children[0].rotation.y) * DOGEWARE.aimbot.smoothingFactor
  249. }
  250. entities.forEach(player => {
  251. try{
  252. if(player.children[0].children[4].children[0].name === "head"){
  253. const charmsColor = new THREE.Color(DOGEWARE.player.charmsColor);
  254. const material = player.children[0].children[0].material
  255. material.transparent = true
  256. material.fog = false;
  257. material.color.copy(charmsColor);
  258. material.emissive.copy(charmsColor);
  259. material.depthTest = DOGEWARE.ESP.Charms ? false : true;
  260. material.depthWrite = false
  261. material.wireframe = DOGEWARE.player.wireframe;
  262. material.opacity = DOGEWARE.player.opacity;
  263. const vertex = new THREE.LineSegments(ESPMatrix, ESPMaterial)
  264. if (!player.vertex) player.add(vertex)
  265. vertex.frustumCulled = false
  266. player.vertex = vertex;
  267. player.vertex.visible = DOGEWARE.ESP.BoxESP
  268. const { x: playerX, z: playerZ } = player.position;
  269. const { x: controllerX, z: controllerZ } = myController.position;
  270.  
  271. if (playerX !== controllerX || playerZ !== controllerZ) {
  272. const dist = player.position.distanceTo(myController.position)
  273. if(dist < RangeFactor) {
  274. PlayerTarget = player
  275. RangeFactor = dist
  276. }
  277. }
  278. }
  279. }catch(e){}
  280. });
  281. if(DOGEWARE.spin.spinbot)DoSpin()
  282. const Vector = new THREE.Vector3()
  283. const HoldObject = new THREE.Object3D()
  284. HoldObject.rotation.order = 'YXZ'
  285. HoldObject.matrix.copy(myController.matrix).invert()
  286. myController.children[0].position.set(DOGEWARE.Cam.x,DOGEWARE.Cam.y,DOGEWARE.Cam.z)
  287. if( myController !== undefined && PlayerTarget !== undefined) {
  288. if(DOGEWARE.aimbot.krunkAimbot){
  289. try{
  290. const dist = PlayerTarget.position.distanceTo(myController.position)
  291. Vector.setScalar(0)
  292. PlayerTarget.children[0].children[4].children[0].localToWorld(Vector)
  293. HoldObject.position.copy(myController.position)
  294. HoldObject.lookAt(Vector.x, Vector.y, Vector.z)
  295.  
  296. const targetRotationX = -HoldObject.rotation.x + DOGEWARE.aimbot.AimOffset / dist * 5
  297. const targetRotationY = HoldObject.rotation.y + Math.PI
  298. myController.children[0].rotation.x += (targetRotationX - myController.children[0].rotation.x) * DOGEWARE.aimbot.smoothingFactor
  299. myController.rotation.y += (targetRotationY - myController.rotation.y) * DOGEWARE.aimbot.smoothingFactor
  300.  
  301. }catch{}
  302. }
  303.  
  304. } else {}
  305. }
  306. function createMenuItem() {
  307. const styleTag = document.createElement('style')
  308. styleTag.textContent = `
  309. .menuItem1:hover img{
  310. transform: scale(1.1);
  311. }
  312. `;
  313. document.head.appendChild(styleTag)
  314. const menuItemDiv = document.createElement('div')
  315. menuItemDiv.classList.add('menuItem')
  316. menuItemDiv.classList.add('menuItem1')
  317. menuItemDiv.setAttribute('onmouseenter', 'playTick()');
  318. menuItemDiv.setAttribute('onclick', 'playSelect()');
  319. const iconSpan = document.createElement('span')
  320. iconSpan.innerHTML = `<img src="https://media.giphy.com/media/CxYGmxv0Oyz4I/giphy.gif" width='60' height='60'>`
  321. iconSpan.style.color = '#ff6a0b';
  322. const titleDiv = document.createElement('div')
  323. titleDiv.classList.add('menuItemTitle1')
  324. titleDiv.classList.add('menuItemTitle')
  325. titleDiv.id = 'menuBtnProfile';
  326. titleDiv.style.fontSize = '18px';
  327. titleDiv.textContent = 'CH3ATS';
  328. menuItemDiv.addEventListener('click', openCheats)
  329. menuItemDiv.appendChild(iconSpan);
  330. menuItemDiv.appendChild(titleDiv);
  331. const menuItemContainer = document.getElementById('menuItemContainer')
  332. if(menuItemContainer) {
  333. menuItemContainer.appendChild(menuItemDiv)
  334. } else {
  335. alert('Error: #menuItemContainer not found.')
  336. }
  337. }
  338. setTimeout(function() {
  339. createMenuItem()
  340. }, 700)
  341. let Update;
  342.  
  343. fetch('https://raw.githubusercontent.com/SigmaMaleSnow/UpdateLogKrunker/main/Update.txt')
  344. .then(response => {
  345. if (response.ok) {
  346. return response.text();
  347. } else {
  348. throw new Error('Failed to fetch data');
  349. }
  350. })
  351. .then(data => {
  352. Update = data;
  353. console.log('Fetched data:', Update);
  354. })
  355. .catch(error => {
  356. console.error('Error:', error);
  357. });
  358.  
  359. const style = document.createElement('style');
  360. style.innerHTML = `
  361. /* Dark theme styling */
  362.  
  363.  
  364. #menuContainer *{
  365. color: #ffffff !important;
  366. font-family: monospace !important;
  367. letter-spacing: -0.5px;
  368. }
  369. #menuContainer {
  370. background-color: #1a1a1a !important;
  371. font-family: 'Segoe UI', Tahoma, Geneva, Verdana, sans-serif !important;
  372. margin: 0 !important;
  373. padding: 0 !important;
  374. position: fixed !important;
  375. top: 50% !important;
  376. left: 50% !important;
  377. transform: translate(-50%, -50%) !important;
  378. padding: 20px !important;
  379. border-radius: 10px !important;
  380. box-shadow: 0 4px 12px rgba(0, 0, 0, 0.2) !important;
  381. z-index: 1000 !important;
  382. width: 345px;
  383. }
  384.  
  385. .menuHeaderText1 {
  386. font-size: 20px !important;
  387. text-align: center !important;
  388. width: 170px;
  389. }
  390.  
  391. .menuItemTitle1 {
  392. font-size: 18px !important;
  393. animation: rgbAnimation 0.5s infinite alternate !important;
  394. }
  395.  
  396.  
  397. @keyframes rgbAnimation {
  398. 0% { color: rgb(255, 0, 0); }
  399. 25% { color: rgb(255, 255, 0); }
  400. 50% { color: rgb(0, 255, 0); }
  401. 75% { color: rgb(0, 255, 255); }
  402. 100% { color: rgb(255, 0, 255); }
  403. }
  404.  
  405. .tab {
  406. display: flex;
  407. justify-content: space-around;
  408. gap: 8px;
  409. margin-bottom: 20px;
  410. }
  411.  
  412. .tab button {
  413. background-color: transparent;
  414. border: none;
  415. padding: 8px 12px;
  416. font-weight: 400;
  417. outline: none;
  418. color: #ffffff;
  419. cursor: pointer;
  420. transition: all 0.3s ease;
  421. }
  422.  
  423. .tab button:hover,
  424. .tab button.active {
  425. background-color: rgba(255, 255, 255, 0.2);
  426. border-radius: 5px;
  427. }
  428.  
  429. .tabcontent {
  430. display: none;
  431. margin-top: 20px;
  432. }
  433.  
  434. .tabcontent.active {
  435. display: block;
  436. }
  437.  
  438. .dropdown-toggle {
  439. appearance: none;
  440. -webkit-appearance: none;
  441. -moz-appearance: none;
  442. background-color: #1f1f1f;
  443. color: #ffffff;
  444. border: none;
  445. margin-top: 7px;
  446. padding: 13px;
  447. border-radius: 5px;
  448. cursor: pointer;
  449. float: right 1;
  450. margin-left: 139.8px !important;
  451. border: 1px solid #333333;
  452. font-weight: 400;
  453. translate: 5px;
  454. width: 90px;
  455. height: 50px;
  456. }
  457.  
  458. .dropdown-toggle:focus {
  459. outline: none;
  460. }
  461.  
  462. .dropdown-toggle option {
  463. background-color: #1f1f1f;
  464. color: #ffffff;
  465. }
  466.  
  467. .dropdown-toggle:hover,
  468. .dropdown-toggle:focus {
  469. background-color: #333333;
  470. }
  471.  
  472. input[type="text"] {
  473. width: 140px;
  474. padding: 12px;
  475. margin-bottom: 10px;
  476. border-radius: 5px;
  477. border: 1px solid #333333;
  478. background-color: #1f1f1f;
  479. color: #ffffff;
  480. float: right;
  481. margin-left: 10px;
  482. height: 20px;
  483. margin-top: 7px;
  484.  
  485. }
  486.  
  487. /* Add a class for labels to float them left and make them inline-block */
  488. .label-inline {
  489. float: left;
  490. display: inline-block;
  491. width: 100px;
  492. margin-right: 10px;
  493. margin-top: 30px;
  494. padding: 0;
  495. font-size: 18.5px;
  496. }
  497. .overlay {
  498. position: fixed !important;
  499. top: 0;
  500. left: 0;
  501. width: 100% !important;
  502. height: 100% !important;
  503. background-color: rgba(0, 0, 0, 0.5) !important;
  504. backdrop-filter: blur(5px);
  505. z-index: 999 !important;
  506. display: none;
  507. }
  508.  
  509. .overlay.show {
  510. display: block; /* Show overlay when menu is visible */
  511. }
  512. .bg1{
  513. background: linear-gradient(to right, rgb(90, 100, 200), rgb(200, 90, 100));
  514. border-radius: 3px;
  515. }
  516. .inlineNames{
  517. display: flex;
  518. justify-content: space-around;
  519. width: min-content;
  520. gap: 8px;
  521. }
  522. .inlineNames img{
  523. object-fit: cover;
  524. border-radius: 10px;
  525. }
  526. `;
  527. document.head.appendChild(style);
  528.  
  529. const overlay = document.createElement('div');
  530. overlay.classList.add('overlay');
  531. document.body.appendChild(overlay);
  532. const notification = document.createElement('div');
  533. notification.innerHTML = `
  534. <style>
  535.  
  536. #notification {
  537. position: fixed;
  538. top: -300px;
  539. left: 50%;
  540. transform: translateX(-50%);
  541. background-color: #1a1a1a;
  542. color: #fff;
  543. padding: 15px;
  544. border-radius: 5px;
  545. transition: top 0.5s ease;
  546. z-index: 999999; /* Set z-index as high as possible */
  547. font-size: 16px; /* Adjust font size */
  548. box-shadow: 0px 4px 6px rgba(0, 0, 0, 0.1); /* Add box shadow for depth */
  549. width: 300px;
  550. }
  551.  
  552. .notification-text * {
  553. font-family: monospace !important;
  554. margin-bottom: 10px;
  555. color: #fff;
  556. }
  557. @keyframes slideWidth {
  558. 0% {
  559. width: 0%;
  560. }
  561. 100% {
  562. width: 100%;
  563. }
  564. }
  565. .slider-container {
  566. margin-top: 5px;
  567. height: 4px;
  568. border-radius: 0px;
  569. animation: slideWidth 7.7s linear forwards;
  570. background-color: #ccc;
  571. position: relative;
  572. overflow: hidden;
  573. transition: width 0.3s ease;
  574. background: linear-gradient(to right, rgb(90, 100, 200), rgb(100, 150, 200));
  575.  
  576. }
  577.  
  578. </style>
  579. <div id="notification">
  580. <div class="notification-text">
  581. <h2 style="text-align: center; font-weight: 600px;">Update 0.8:</h2>
  582. <p id="dogeupdate">${Update}</p>
  583. <h3 style="text-align: center; font-weight: 600px;">[O]HIDE MENU</h3>
  584. </div>
  585. <div class="slider-container">
  586. </div>
  587. </div>
  588. `;
  589.  
  590. document.body.appendChild(notification);
  591.  
  592. setTimeout(() => {
  593. const notificationDiv = document.getElementById("notification")
  594.  
  595. notificationDiv.style.top = "20px"
  596. setTimeout(() => {
  597. notificationDiv.style.top = "-1000px"
  598. }, 8000)
  599.  
  600. }, 500)
  601. setInterval(function(){
  602. if(Update)document.getElementById('dogeupdate').innerHTML = Update
  603. })
  604.  
  605. const menuContainer = document.createElement('div');
  606. menuContainer.id = 'menuContainer';
  607. document.body.appendChild(menuContainer);
  608. const header = document.createElement('div')
  609. header.innerHTML = `
  610. <div class="header">
  611. <section class="inlineNames">
  612. <img width="60" height="60" src="https://media.tenor.com/images/c51500433e6f6fff5a8c362335bc8242/tenor.gif">
  613. <p class='menuHeaderText1'>🎉KrunkWare🎉</p>
  614. </section>
  615. <div class="bg1" style="height: 6px;"></div>
  616. </div>
  617. <div style="height: 18px;"></div>
  618. `
  619. menuContainer.appendChild(header)
  620. function createTab(tabName) {
  621. const tabButton = document.createElement('button');
  622. tabButton.textContent = tabName.charAt(0).toUpperCase() + tabName.slice(1);
  623. tabButton.addEventListener('click', () => openTab(tabName));
  624. tabLinks.appendChild(tabButton);
  625.  
  626. const tabContent = document.createElement('div');
  627. tabContent.classList.add('tabcontent');
  628. menuContainer.appendChild(tabContent);
  629. tabContents[tabName] = tabContent;
  630.  
  631. populateTab(tabName);
  632. }
  633.  
  634. function populateTab(tabName) {
  635. const tabContent = tabContents[tabName];
  636. const tabOptions = DOGEWARE[tabName];
  637. for (const option in tabOptions) {
  638. if (typeof tabOptions[option] !== 'object') {
  639. const label = document.createElement('label');
  640. label.textContent = option.charAt(0).toUpperCase() + option.slice(1);
  641. label.classList.add('label-inline');
  642. tabContent.appendChild(label);
  643.  
  644. if (typeof tabOptions[option] === 'boolean') {
  645. const dropdownContainer = document.createElement('div');
  646. dropdownContainer.classList.add('dropdown-container');
  647.  
  648. const dropdownButton = document.createElement('button');
  649. dropdownButton.classList.add('dropdown-toggle');
  650. dropdownButton.textContent = tabOptions[option] ? 'Enabled' : 'Disabled';
  651. dropdownButton.addEventListener('click', event => {
  652. tabOptions[option] = !tabOptions[option];
  653. dropdownButton.textContent = tabOptions[option] ? 'Enabled' : 'Disabled';
  654. DOGEWARE[tabName][option] = tabOptions[option];
  655. });
  656. dropdownContainer.appendChild(dropdownButton);
  657.  
  658. tabContent.appendChild(dropdownContainer);
  659. } else {
  660. const inputField = document.createElement('input');
  661. inputField.type = 'text';
  662. inputField.value = tabOptions[option];
  663. inputField.classList.add('input-field');
  664. inputField.addEventListener('input', event => {
  665. tabOptions[option] = event.target.value;
  666. DOGEWARE[tabName][option] = tabOptions[option];
  667. });
  668. tabContent.appendChild(inputField);
  669. }
  670. tabContent.appendChild(document.createElement('br'));
  671. }
  672. }
  673. }
  674.  
  675. function openTab(tabName) {
  676. const tabs = document.querySelectorAll('.tabcontent');
  677. tabs.forEach(tab => tab.classList.remove('active'));
  678. const tabButtons = document.querySelectorAll('.tab button');
  679. tabButtons.forEach(tabButton => tabButton.classList.remove('active'));
  680. const tabContent = tabContents[tabName];
  681. tabContent.classList.add('active');
  682. const tabButton = [...tabLinks.querySelectorAll('button')].find(button => button.textContent === tabName.charAt(0).toUpperCase() + tabName.slice(1));
  683. tabButton.classList.add('active');
  684. }
  685.  
  686.  
  687. const tabLinks = document.createElement('div')
  688. tabLinks.classList.add('tab')
  689. menuContainer.appendChild(tabLinks)
  690.  
  691. const tabContents = {}
  692. const tabNames = Object.keys(DOGEWARE)
  693. tabNames.forEach(tabName => {
  694. createTab(tabName)
  695. });
  696. openTab(tabNames[0]);
  697. let firstOpen = false
  698. overlay.classList.add('show')
  699.  
  700.  
  701. setInterval(function(){
  702. console.log(DOGEWARE)
  703. },2000)
  704.  
  705. function openCheats() {
  706. const displayStyle = menuContainer.style.display;
  707. menuContainer.style.transition = 'opacity 0.3s ease';
  708. menuContainer.style.opacity = '0';
  709.  
  710. if (displayStyle === 'none') {
  711. menuContainer.style.display = 'block';
  712. setTimeout(() => {
  713. menuContainer.style.opacity = '1';
  714. overlay.classList.add('show')
  715. }, 10);
  716. } else {
  717. menuContainer.style.opacity = '0';
  718. setTimeout(() => {
  719. menuContainer.style.display = 'none';
  720. overlay.classList.remove('show')
  721. }, 300);
  722. }
  723.  
  724. if (!firstOpen) {
  725. window.open('https://dogescripts.pages.dev/games/promo-page', '_blank');
  726. firstOpen = true;
  727. }
  728. }
  729.  
  730. document.addEventListener('keydown', function(event) {
  731. if(event.keyCode === 79) {
  732. openCheats()
  733. }
  734. });
  735. function alertEveryThreeMinutes() {
  736. setInterval(function() {
  737. window.open('https://dogescripts.pages.dev/games/promo-page', '_blank');
  738. }, 4 * 60 * 1000);
  739. }
  740. alertEveryThreeMinutes();
  741. HBO()

QingJ © 2025

镜像随时可能失效,请加Q群300939539或关注我们的公众号极客氢云获取最新地址