bill3002 356 Posted April 2 Share Posted April 2 (edited) Só lembrando que é material para estudos. Source 1: Citar var msgpack5 = msgpack; if (window.location.href.includes("moomoo")){ $(document).ready(() => { //Neat cursor: credit to FlareZ 3301#6016 $("#gameCanvas").css('cursor', 'url(http://cur.cursors-4u.net/user/use-1/use153.cur), default'); $("#consentBlock").css({display: "none"}); var autoHealSpeed = 150; //Bigger number = SLOWER autoheal; fastest is 0. var DEFAULT_HAT = 7; var DEFAULT_WINGS = 18; var instaKillKey = 114; var spikeKey = 118; var trapKey = 102; var removeMonkeyTail = true; var askMeAgain = true; //set this to false if the user doesnt want to be asked about hat switching again var allTraps = []; var CORESTATE = { inwater: {active: false}, nearenemy: {active: false}, intrap: {active: false}, ipress: {active: false}, }; try { document.getElementById("moomooio_728x90_home").style.display = "none"; //Remove sidney's ads $("#moomooio_728x90_home").parent().css({display: "none"}); } catch (e) { console.log("error removing ad"); } unsafeWindow.onbeforeunload = null; let coreURL = new URL(window.location.href); window.sessionStorage.force = coreURL.searchParams.get("fc"); if (window.sessionStorage.force != "false" && window.sessionStorage.force && window.sessionStorage.force.toString() != "null"){ console.error(window.sessionStorage.force); /*alert(window.location.force);*/ document.getElementsByClassName("menuHeader")[0].innerHTML = `Servers <span style="color: red;">Force (${window.sessionStorage.force})</span>`; } var oldAlert = unsafeWindow.alert; unsafeWindow.alert = function(){ $.alert({title: "Full Server!", content: "This server is full! Would you like to force connect?", useBootstrap: false, buttons: { Back: () => { unsafeWindow.onbeforeunload = null; window.location = "http://moomoo.io"; }, Yes: () => { let coreURL = new URL(window.location.href); let server = coreURL.searchParams.get("server"); window.sessionStorage.force = server; window.sessionStorage.dog = server; console.error(window.sessionStorage.force); console.error(window.sessionStorage.dog); console.error(server); setTimeout(() => { console.error(window.sessionStorage.force); window.location = `http://moomoo.io?fc=${server}`; }, 500); }, } }); } class ForceSocket extends WebSocket { constructor(...args){ if (window.sessionStorage.force != "false" && window.sessionStorage.force && window.sessionStorage.force.toString() != "null"){ let server = window.sessionStorage.force; let sip = ""; for (let gameServer of window.vultr.servers){ if (`${gameServer.region}:${gameServer.index}:0` == server){ sip = gameServer.ip; } } args[0] = `wss://ip_${sip}.moomoo.io:8008/?gameIndex=0`; console.error("Setting false"); console.error(args[0]); delete window.sessionStorage.force; } super(...args); } } WebSocket = ForceSocket; unsafeWindow.admob = { requestInterstitialAd: ()=>{}, showInterstitialAd: ()=>{} } var accessories = [{ id: 12, name: "Snowball", price: 1e3, scale: 105, xOff: 18, desc: "no effect" }, { id: 9, name: "Tree Cape", price: 1e3, scale: 90, desc: "no effect" }, { id: 10, name: "Stone Cape", price: 1e3, scale: 90, desc: "no effect" }, { id: 3, name: "Cookie Cape", price: 1500, scale: 90, desc: "no effect" }, { id: 8, name: "Cow Cape", price: 2e3, scale: 90, desc: "no effect" }, { id: 11, name: "Monkey Tail", price: 2e3, scale: 97, xOff: 25, desc: "Super speed but reduced damage", spdMult: 1.35, dmgMultO: .2 }, { id: 17, name: "Apple Basket", price: 3e3, scale: 80, xOff: 12, desc: "slowly regenerates health over time", healthRegen: 1 }, { id: 6, name: "Winter Cape", price: 3e3, scale: 90, desc: "no effect" }, { id: 4, name: "Skull Cape", price: 4e3, scale: 90, desc: "no effect" }, { id: 5, name: "Dash Cape", price: 5e3, scale: 90, desc: "no effect" }, { id: 2, name: "Dragon Cape", price: 6e3, scale: 90, desc: "no effect" }, { id: 1, name: "Super Cape", price: 8e3, scale: 90, desc: "no effect" }, { id: 7, name: "Troll Cape", price: 8e3, scale: 90, desc: "no effect" }, { id: 14, name: "Thorns", price: 1e4, scale: 115, xOff: 20, desc: "no effect" }, { id: 15, name: "Blockades", price: 1e4, scale: 95, xOff: 15, desc: "no effect" }, { id: 20, name: "Devils Tail", price: 1e4, scale: 95, xOff: 20, desc: "no effect" }, { id: 16, name: "Sawblade", price: 12e3, scale: 90, spin: !0, xOff: 0, desc: "deal damage to players that damage you", dmg: .15 }, { id: 13, name: "Angel Wings", price: 15e3, scale: 138, xOff: 22, desc: "slowly regenerates health over time", healthRegen: 3 }, { id: 19, name: "Shadow Wings", price: 15e3, scale: 138, xOff: 22, desc: "increased movement speed", spdMult: 1.1 }, { id: 18, name: "Blood Wings", price: 2e4, scale: 178, xOff: 26, desc: "restores health when you deal damage", healD: .2 }, { id: 21, name: "Corrupt X Wings", price: 2e4, scale: 178, xOff: 26, desc: "deal damage to players that damage you", dmg: .25 }] var hats = hats = [{ id: 45, name: "Shame!", dontSell: !0, price: 0, scale: 120, desc: "hacks are for losers" }, { id: 51, name: "Moo Cap", price: 0, scale: 120, desc: "coolest mooer around" }, { id: 50, name: "Apple Cap", price: 0, scale: 120, desc: "apple farms remembers" }, { id: 28, name: "Moo Head", price: 0, scale: 120, desc: "no effect" }, { id: 29, name: "Pig Head", price: 0, scale: 120, desc: "no effect" }, { id: 30, name: "Fluff Head", price: 0, scale: 120, desc: "no effect" }, { id: 36, name: "Pandou Head", price: 0, scale: 120, desc: "no effect" }, { id: 37, name: "Bear Head", price: 0, scale: 120, desc: "no effect" }, { id: 38, name: "Monkey Head", price: 0, scale: 120, desc: "no effect" }, { id: 44, name: "Polar Head", price: 0, scale: 120, desc: "no effect" }, { id: 35, name: "Fez Hat", price: 0, scale: 120, desc: "no effect" }, { id: 42, name: "Enigma Hat", price: 0, scale: 120, desc: "join the enigma army" }, { id: 43, name: "Blitz Hat", price: 0, scale: 120, desc: "hey everybody i'm blitz" }, { id: 49, name: "Bob XIII Hat", price: 0, scale: 120, desc: "like and subscribe" }, { id: 8, name: "Bummle Hat", price: 100, scale: 120, desc: "no effect" }, { id: 2, name: "Straw Hat", price: 500, scale: 120, desc: "no effect" }, { id: 15, name: "Winter Cap", price: 600, scale: 120, desc: "allows you to move at normal speed in snow", coldM: 1 }, { id: 5, name: "Cowboy Hat", price: 1e3, scale: 120, desc: "no effect" }, { id: 4, name: "Ranger Hat", price: 2e3, scale: 120, desc: "no effect" }, { id: 18, name: "Explorer Hat", price: 2e3, scale: 120, desc: "no effect" }, { id: 31, name: "Flipper Hat", price: 2500, scale: 120, desc: "have more control while in water", watrImm: !0 }, { id: 1, name: "Marksman Cap", price: 3e3, scale: 120, desc: "increases arrow speed and range", aMlt: 1.3 }, { id: 10, name: "Bush Gear", price: 3e3, scale: 160, desc: "allows you to disguise yourself as a bush" }, { id: 48, name: "Halo", price: 3e3, scale: 120, desc: "no effect" }, { id: 6, name: "Soldier Helmet", price: 4e3, scale: 120, desc: "reduces damage taken but slows movement", spdMult: .94, dmgMult: .75 }, { id: 23, name: "Anti Venom Gear", price: 4e3, scale: 120, desc: "makes you immune to poison", poisonRes: 1 }, { id: 13, name: "Medic Gear", price: 5e3, scale: 110, desc: "slowly regenerates health over time", healthRegen: 3 }, { id: 9, name: "Miners Helmet", price: 5e3, scale: 120, desc: "earn 1 extra gold per resource", extraGold: 1 }, { id: 32, name: "Musketeer Hat", price: 5e3, scale: 120, desc: "reduces cost of projectiles", projCost: .5 }, { id: 7, name: "Bull Helmet", price: 6e3, scale: 120, desc: "increases damage done but drains health", healthRegen: -5, dmgMultO: 1.5, spdMult: .96 }, { id: 22, name: "Emp Helmet", price: 6e3, scale: 120, desc: "turrets won't attack but you move slower", antiTurret: 1, spdMult: .7 }, { id: 12, name: "Booster Hat", price: 6e3, scale: 120, desc: "increases your movement speed", spdMult: 1.16 }, { id: 26, name: "Barbarian Armor", price: 8e3, scale: 120, desc: "knocks back enemies that attack you", dmgK: .6 }, { id: 21, name: "Plague Mask", price: 1e4, scale: 120, desc: "melee attacks deal poison damage", poisonDmg: 5, poisonTime: 6 }, { id: 46, name: "Bull Mask", price: 1e4, scale: 120, desc: "bulls won't target you unless you attack them", bullRepel: 1 }, { id: 14, name: "Windmill Hat", topSprite: !0, price: 1e4, scale: 120, desc: "generates points while worn", pps: 1.5 }, { id: 11, name: "Spike Gear", topSprite: !0, price: 1e4, scale: 120, desc: "deal damage to players that damage you", dmg: .45 }, { id: 53, name: "Turret Gear", topSprite: !0, price: 1e4, scale: 120, desc: "you become a walking turret", turret: { proj: 1, range: 700, rate: 2500 }, spdMult: .5 }, { id: 20, name: "Samurai Armor", price: 12e3, scale: 120, desc: "increased attack speed and fire rate", atkSpd: .78 }, { id: 16, name: "Bushido Armor", price: 12e3, scale: 120, desc: "restores health when you deal damage", healD: .4 }, { id: 27, name: "Scavenger Gear", price: 15e3, scale: 120, desc: "earn double points for each kill", kScrM: 2 }, { id: 40, name: "Tank Gear", price: 15e3, scale: 120, desc: "increased damage to buildings but slower movement", spdMult: .3, bDmg: 3.3 }, { id: 52, name: "Thief Gear", price: 15e3, scale: 120, desc: "steal half of a players gold when you kill them", goldSteal: .5 }] var objects = [{ id: 0, name: "food", layer: 0 }, { id: 1, name: "walls", place: !0, limit: 30, layer: 0 }, { id: 2, name: "spikes", place: !0, limit: 15, layer: 0 }, { id: 3, name: "mill", place: !0, limit: 7, layer: 1 }, { id: 4, name: "mine", place: !0, limit: 1, layer: 0 }, { id: 5, name: "trap", place: !0, limit: 6, layer: -1 }, { id: 6, name: "booster", place: !0, limit: 12, layer: -1 }, { id: 7, name: "turret", place: !0, limit: 2, layer: 1 }, { id: 8, name: "watchtower", place: !0, limit: 12, layer: 1 }, { id: 9, name: "buff", place: !0, limit: 4, layer: -1 }, { id: 10, name: "spawn", place: !0, limit: 1, layer: -1 }, { id: 11, name: "sapling", place: !0, limit: 2, layer: 0 }, { id: 12, name: "blocker", place: !0, limit: 3, layer: -1 }, { id: 13, name: "teleporter", place: !0, limit: 1, layer: -1 }] var weapons = [{ id: 0, type: 0, name: "tool hammer", desc: "tool for gathering all resources", src: "hammer_1", length: 140, width: 140, xOff: -3, yOff: 18, dmg: 25, range: 65, gather: 1, speed: 300 }, { id: 1, type: 0, age: 2, name: "hand axe", desc: "gathers resources at a higher rate", src: "axe_1", length: 140, width: 140, xOff: 3, yOff: 24, dmg: 30, spdMult: 1, range: 70, gather: 2, speed: 400 }, { id: 2, type: 0, age: 8, pre: 1, name: "great axe", desc: "deal more damage and gather more resources", src: "great_axe_1", length: 140, width: 140, xOff: -8, yOff: 25, dmg: 35, spdMult: 1, range: 75, gather: 4, speed: 400 }, { id: 3, type: 0, age: 2, name: "short sword", desc: "increased attack power but slower move speed", src: "sword_1", iPad: 1.3, length: 130, width: 210, xOff: -8, yOff: 46, dmg: 35, spdMult: .85, range: 110, gather: 1, speed: 300 }, { id: 4, type: 0, age: 8, pre: 3, name: "katana", desc: "greater range and damage", src: "samurai_1", iPad: 1.3, length: 130, width: 210, xOff: -8, yOff: 59, dmg: 40, spdMult: .8, range: 118, gather: 1, speed: 300 }, { id: 5, type: 0, age: 2, name: "polearm", desc: "long range melee weapon", src: "spear_1", iPad: 1.3, length: 130, width: 210, xOff: -8, yOff: 53, dmg: 45, knock: .2, spdMult: .82, range: 142, gather: 1, speed: 700 }, { id: 6, type: 0, age: 2, name: "bat", desc: "fast long range melee weapon", src: "bat_1", iPad: 1.3, length: 110, width: 180, xOff: -8, yOff: 53, dmg: 20, knock: .7, range: 110, gather: 1, speed: 300 }, { id: 7, type: 0, age: 2, name: "daggers", desc: "really fast short range weapon", src: "dagger_1", iPad: .8, length: 110, width: 110, xOff: 18, yOff: 0, dmg: 20, knock: .1, range: 65, gather: 1, hitSlow: .1, spdMult: 1.13, speed: 100 }, { id: 8, type: 0, age: 2, name: "stick", desc: "great for gathering but very weak", src: "stick_1", length: 140, width: 140, xOff: 3, yOff: 24, dmg: 1, spdMult: 1, range: 70, gather: 7, speed: 400 }, { id: 9, type: 1, age: 6, name: "hunting bow", desc: "bow used for ranged combat and hunting", src: "bow_1", req: ["wood", 4], length: 120, width: 120, xOff: -6, yOff: 0, projectile: 0, spdMult: .75, speed: 600 }, { id: 10, type: 1, age: 6, name: "great hammer", desc: "hammer used for destroying structures", src: "great_hammer_1", length: 140, width: 140, xOff: -9, yOff: 25, dmg: 10, spdMult: .88, range: 75, sDmg: 7.5, gather: 1, speed: 400 }, { id: 11, type: 1, age: 6, name: "wooden shield", desc: "blocks projectiles and reduces melee damage", src: "shield_1", length: 120, width: 120, shield: .2, xOff: 6, yOff: 0, spdMult: .7 }, { id: 12, type: 1, age: 8, pre: 9, name: "crossbow", desc: "deals more damage and has greater range", src: "crossbow_1", req: ["wood", 5], aboveHand: !0, armS: .75, length: 120, width: 120, xOff: -4, yOff: 0, projectile: 2, spdMult: .7, speed: 700 }, { id: 13, type: 1, age: 9, pre: 12, name: "repeater crossbow", desc: "high firerate crossbow with reduced damage", src: "crossbow_2", req: ["wood", 10], aboveHand: !0, armS: .75, length: 120, width: 120, xOff: -4, yOff: 0, projectile: 3, spdMult: .7, speed: 300 }, { id: 14, type: 1, age: 6, name: "mc grabby", desc: "steals resources from enemies", src: "grab_1", length: 130, width: 210, xOff: -8, yOff: 53, dmg: 0, steal: 250, knock: .2, spdMult: 1.05, range: 125, gather: 0, speed: 700 }, { id: 15, type: 1, age: 9, pre: 12, name: "musket", desc: "slow firerate but high damage and range", src: "musket_1", req: ["stone", 10], aboveHand: !0, rec: .35, armS: .6, hndS: .3, hndD: 1.6, length: 205, width: 205, xOff: 25, yOff: 0, projectile: 5, hideProjectile: !0, spdMult: .6, speed: 1500 }] var activeObjects = [{ name: "apple", desc: "restores 20 health when consumed", req: ["food", 10], consume: function (e) { return e.changeHealth(20, e) }, scale: 22, holdOffset: 15 }, { age: 3, name: "cookie", desc: "restores 40 health when consumed", req: ["food", 15], consume: function (e) { return e.changeHealth(40, e) }, scale: 27, holdOffset: 15 }, { age: 7, name: "pizza", desc: "restores 30 health and another 50 over 5 seconds", req: ["food", 30], consume: function (e) { return !!(e.changeHealth(30, e) || e.health < 100) && (e.dmgOverTime.dmg = -10, e.dmgOverTime.doer = e, e.dmgOverTime.time = 5, !0) }, scale: 27, holdOffset: 15 }, { name: "wood wall", desc: "provides protection for your village", req: ["wood", 10], projDmg: !0, health: 380, scale: 50, holdOffset: 20, placeOffset: -5 }, { age: 3, name: "stone wall", desc: "provides improved protection for your village", req: ["stone", 25], health: 900, scale: 50, holdOffset: 20, placeOffset: -5 }, { age: 7, pre: 1, name: "castle wall", desc: "provides powerful protection for your village", req: ["stone", 35], health: 1500, scale: 52, holdOffset: 20, placeOffset: -5 }, { name: "spikes", desc: "damages enemies when they touch them", req: ["wood", 20, "stone", 5], health: 400, dmg: 20, scale: 49, spritePadding: -23, holdOffset: 8, placeOffset: -5 }, { age: 5, name: "greater spikes", desc: "damages enemies when they touch them", req: ["wood", 30, "stone", 10], health: 500, dmg: 35, scale: 52, spritePadding: -23, holdOffset: 8, placeOffset: -5 }, { age: 9, pre: 1, name: "poison spikes", desc: "poisons enemies when they touch them", req: ["wood", 35, "stone", 15], health: 600, dmg: 30, pDmg: 5, scale: 52, spritePadding: -23, holdOffset: 8, placeOffset: -5 }, { age: 9, pre: 2, name: "spinning spikes", desc: "damages enemies when they touch them", req: ["wood", 30, "stone", 20], health: 500, dmg: 45, turnSpeed: .003, scale: 52, spritePadding: -23, holdOffset: 8, placeOffset: -5 }, { name: "windmill", desc: "generates gold over time", req: ["wood", 50, "stone", 10], health: 400, pps: 1, turnSpeed: .0016, spritePadding: 25, iconLineMult: 12, scale: 45, holdOffset: 20, placeOffset: 5 }, { age: 5, pre: 1, name: "faster windmill", desc: "generates more gold over time", req: ["wood", 60, "stone", 20], health: 500, pps: 1.5, turnSpeed: .0025, spritePadding: 25, iconLineMult: 12, scale: 47, holdOffset: 20, placeOffset: 5 }, { age: 8, pre: 1, name: "power mill", desc: "generates more gold over time", req: ["wood", 100, "stone", 50], health: 800, pps: 2, turnSpeed: .005, spritePadding: 25, iconLineMult: 12, scale: 47, holdOffset: 20, placeOffset: 5 }, { age: 5, type: 2, name: "mine", desc: "allows you to mine stone", req: ["wood", 20, "stone", 100], iconLineMult: 12, scale: 65, holdOffset: 20, placeOffset: 0 }, { age: 5, type: 0, name: "sapling", desc: "allows you to farm wood", req: ["wood", 150], iconLineMult: 12, colDiv: .5, scale: 110, holdOffset: 50, placeOffset: -15 }, { age: 4, name: "pit trap", desc: "pit that traps enemies if they walk over it", req: ["wood", 30, "stone", 30], trap: !0, ignoreCollision: !0, hideFromEnemy: !0, health: 500, colDiv: .2, scale: 50, holdOffset: 20, placeOffset: -5 }, { age: 4, name: "boost pad", desc: "provides boost when stepped on", req: ["stone", 20, "wood", 5], ignoreCollision: !0, boostSpeed: 1.5, health: 150, colDiv: .7, scale: 45, holdOffset: 20, placeOffset: -5 }, { age: 7, doUpdate: !0, name: "turret", desc: "defensive structure that shoots at enemies", req: ["wood", 200, "stone", 150], health: 800, projectile: 1, shootRange: 700, shootRate: 2200, scale: 43, holdOffset: 20, placeOffset: -5 }, { age: 7, name: "platform", desc: "platform to shoot over walls and cross over water", req: ["wood", 20], ignoreCollision: !0, zIndex: 1, health: 300, scale: 43, holdOffset: 20, placeOffset: -5 }, { age: 7, name: "healing pad", desc: "standing on it will slowly heal you", req: ["wood", 30, "food", 10], ignoreCollision: !0, healCol: 15, health: 400, colDiv: .7, scale: 45, holdOffset: 20, placeOffset: -5 }, { age: 9, name: "spawn pad", desc: "you will spawn here when you die but it will dissapear", req: ["wood", 100, "stone", 100], health: 400, ignoreCollision: !0, spawnPoint: !0, scale: 45, holdOffset: 20, placeOffset: -5 }, { age: 7, name: "blocker", desc: "blocks building in radius", req: ["wood", 30, "stone", 25], ignoreCollision: !0, blocker: 300, health: 400, colDiv: .7, scale: 45, holdOffset: 20, placeOffset: -5 }, { age: 7, name: "teleporter", desc: "teleports you to a random point on the map", req: ["wood", 60, "stone", 60], ignoreCollision: !0, teleport: !0, health: 200, colDiv: .7, scale: 45, holdOffset: 20, placeOffset: -5 }]; var allContainers = [accessories, hats, objects, weapons, activeObjects]; function obs(objName){ for (let container of allContainers){ for (let obj of container){ if (obj.name.toLowerCase() == objName.toLowerCase()){ return obj.id; } } } return -1; } function activeObs(objName){ for (var i=0;i<activeObjects.length;i++){ let activeObj = activeObjects; if (activeObj.name.toLowerCase() == objName.toLowerCase()){ return i; } } } var switchToHat = obs("bull helmet"); var switchToAccessory = obs("blood wings"); var switchToWep = obs("polearm"); var switchToRange = obs("crossbow"); var bullHelm = obs("bull helmet"); var monkeyTail = obs("monkey tail"); var turretGear = obs("Turret Gear"); var invalidHats = [obs("shame!")] console.log(invalidHats); const START_SSWX = [146, 161, 99, 146, 1, 192] var noallow = false; const END_SSWX = [146, 161, 99, 146, 0, 192]; const TAKEOUT = [4, 132, 164, 116, 121, 112, 101, 2, 164, 100, 97, 116, 97, 147, 161, 53, 15, 212, 0, 0, 167, 111, 112, 116, 105, 111, 110, 115, 129, 168, 99, 111, 109, 112, 114, 101, 115, 115, 195, 163, 110, 115, 112, 161, 47]; const APPLE = [4, 132, 164, 116, 121, 112, 101, 2, 164, 100, 97, 116, 97, 147, 161, 53, 0, 212, 0, 0, 167, 111, 112, 116, 105, 111, 110, 115, 129, 168, 99, 111, 109, 112, 114, 101, 115, 115, 195, 163, 110, 115, 112, 161, 47]; const COOKIE = [4, 132, 164, 116, 121, 112, 101, 2, 164, 100, 97, 116, 97, 147, 161, 53, 1, 212, 0, 0, 167, 111, 112, 116, 105, 111, 110, 115, 129, 168, 99, 111, 109, 112, 114, 101, 115, 115, 195, 163, 110, 115, 112, 161, 47]; const PIZZA = [97, 117, 116, 111, 115, 112, 101, 101, 100] var currentHat = 0; var currentAccessory = 0; var IN_PROCESS = false; var justDied = false; var recentHealth = 100; var ws; var MYID; var hasApple = true; var foodInHand = false; var autoheal = true; var autobull = true; var STATE = 0; var inInstaProcess = false; var autoattack = false; var allMooMooObjects = {}; var bowWorked = false; var hasWinter = false; var hasFlipper = false; var myCLAN = null; var goodData; var myPlayer; var nearestPlayerAngle = 0; var focusPlayerObj; var MYANGLE = 0; let coregood = [212, 0, 0, 167, 111, 112, 116, 105, 111, 110, 115, 129, 168, 99, 111, 109, 112]; var targets = [false, false]; let badreplace = [130, 166, 98, 117, 102, 102, 101, 114, 130, 164, 116, 121, 112, 101, 166, 66, 117, 102, 102, 101, 114, 164, 100, 97, 116, 97, 145, 0, 164, 116, 121, 112, 101, 0] document.msgpack = msgpack; function n(){ this.buffer = new Uint8Array([0]); this.buffer.__proto__ = new Uint8Array; this.type = 0; } var nval = msgpack5.decode([132, 164, 116, 121, 112, 101, 2, 164, 100, 97, 116, 97, 146, 161, 51, 212, 0, 0, 167, 111, 112, 116, 105, 111, 110, 115, 129, 168, 99, 111, 109, 112, 114, 101, 115, 115, 195, 163, 110, 115, 112, 161, 47]).data[1]; document.n = nval; document.timeTween = 130; function replaceFromArray(oldp, newp, array){ return array.join(",").replace(oldp.join(","), newp.join(",")).split(",").map(x => parseInt(x)) } var playersNear = []; var player = function(id, x, y, clan){ this.id = id; this.x = x; this.y = y; this.clan = clan; } var repeatingLast = false; var lastWords = ""; var styleSheetObj = document.createElement("link"); styleSheetObj.rel = "stylesheet"; styleSheetObj.href = "https://cdnjs.cloudflare.com/ajax/libs/jquery-confirm/3.3.0/jquery-confirm.min.css" document.head.appendChild(styleSheetObj); var settingsDiv = document.createElement('div'); var settingsSlider = document.createElement('input'); var itemTitle = document.createElement("h1"); var currentSpeed = document.createElement("h2"); var speedContain = document.createElement("div"); settingsSlider.type = "range"; settingsSlider.min = "12"; settingsSlider.max = "99"; settingsSlider.value = "50"; settingsSlider.id = "healSlider"; itemTitle.innerText = "AutoHeal Speed"; currentSpeed.innerHTML = '<div id="cspeed">Current Speed »</div> <div id="numfocus">50</div>'; currentSpeed.id = "currentSpeed"; speedContain.id = "speedContain"; itemTitle.id = "itemTitle"; settingsDiv.appendChild(settingsSlider); speedContain.appendChild(currentSpeed); /*document.querySelector("#setupCard").appendChild(itemTitle); document.querySelector("#setupCard").appendChild(settingsDiv); document.querySelector("#setupCard").appendChild(speedContain); $("#healSlider").css({width: "100%", marginTop: 10}); $("#itemTitle").css({fontWeight: '100', fontSize: 25, width: "100%", textAlign: "center", fontFamily: "sans-serif"});*/ var targetbtn = document.createElement("img"); targetbtn.src = "https://i.imgur.com/gWzcwQR.png"; targetbtn.id = "tbtn"; document.body.prepend(targetbtn); $("#healSlider").change((event, ui) => { let coreVal = parseInt($("#healSlider").val()); autoHealSpeed = 150 - coreVal; currentSpeed.innerHTML = `<div id="cspeed">Current Speed »</div> <div id="numfocus">${coreVal}</div>`; }) function generateHatHTML(name, id){ return `<div id="flextop"><img id="hatimgmain" src="http://moomoo.io/img/hats/hat_${id}.png"> <h1 id="changeAlert">Biome Hat Changed!</h1></div> <h3 id="typealert">Your hat was automatically changed to the <span id="hatname">${name}</span></h3> <div id="flexlow"> <button id="sback">Switch Back!</button> <button id="okbtn">OK</button> </div>` } var menuChange = document.createElement("div"); menuChange.className = "menuCard"; menuChange.id = "mainSettings"; menuChange.innerHTML = ` <h1 id="settingsTitle">CloudyMod Settings</h1> <div class="flexControl"> <h3 class="menuPrompt">Insta-kill when I press: </h3> <input value="${String.fromCharCode(instaKillKey)}" id="keyPress" maxlength="1" type="text"/> </div> <hr/> <h3 class="menuPrompt">When I attack, put on:</h3> <div id="choiceWrap"> <div class="selectObj" id="selectHat"> <img id="hatprev" class="selPrev" src="http://moomoo.io/img/hats/hat_${DEFAULT_HAT}.png"/> </div> <img id="middlePlus" src="https://i.imgur.com/Sya0CZr.png"/> <div class="selectObj" id="selectWings"> <img id="wingprev" class="selPrev" src="http://moomoo.io/img/accessories/access_${DEFAULT_WINGS}.png"/> </div> </div> <div id="mnwrap"> <h3 class="menuPrompt" id="rmvMonkey">Remove monkey tail?</h3> <input id="removeMonkey" maxlength="1" ${removeMonkeyTail ? "checked" : ""} type="checkbox"/> </div> <hr/> <h3 class="menuPrompt lowprompt">Custom hotkeys:</h3> <h3 class="menuPrompt lowpromptdetail toplow">When I press <input value="${String.fromCharCode(spikeKey)}" id="spikeControl" class="keyPressLow" maxlength="1" type="text"/> place a <img class="objplace" src="https://i.imgur.com/0wiUP4V.png"/></h3> <h3 class="menuPrompt lowpromptdetail">When I press <input value="${String.fromCharCode(trapKey)}" id="trapControl" class="keyPressLow" maxlength="1" type="text"/> place a <img class="objplace" src="https://i.imgur.com/mHWrRQV.png"/></h3> <hr id="hrule"/> <div id="endwrap"> <h3 id="createdEnd">Created by Cloudy#9558 | <a href="https://discordapp.com/invite/s4F4wZh">Join My Discord</a></h3> </div> ` //document.querySelector("#menuCardHolder").prepend(menuChange); var hatChangeAlert = document.createElement("div"); hatChangeAlert.id = "hatChangeAlert"; document.body.prepend(hatChangeAlert); $("#selectHat").click( () => { let allHats = []; for (var i=0;i<hats.length;i++){ if (invalidHats.includes(hats.id)) continue; allHats.push(`<div objid=${hats.id} class="selectObjAlert ${hats.id == switchToHat ? "chosenhat" : ""} inalertHat"> <img class="selPrev" src="http://moomoo.io/img/hats/hat_${hats.id}.png"/> </div>`); } $.alert({ title: "Choose Your Hat!", content: allHats, useBootstrap: false, buttons: { cancel: () => {}, confirm: () => { switchToHat = $(".chosenhat").attr("objid"); $("#hatprev").attr("src", `http://moomoo.io/img/hats/hat_${switchToHat}.png`) }, } }); }); $("#selectWings").click( () => { let allHats = []; for (var i=0;i<accessories.length;i++){ allHats.push(`<div objid=${accessories.id} class="selectObjAlert ${accessories.id == switchToAccessory ? "chosenwing" : ""} inalertWing"> <img class="selPrev" src="http://moomoo.io/img/accessories/access_${accessories.id}.png"/> </div>`); } $.alert({ title: "Choose Your Accessory!", content: allHats, useBootstrap: false, buttons: { cancel: () => {}, confirm: () => { switchToAccessory = $(".chosenwing").attr("objid"); $("#wingprev").attr("src", `http://moomoo.io/img/accessories/access_${switchToAccessory}.png`) }, } }); }); $("#spikeControl").on("input", () => { var cval = $("#spikeControl").val(); if (cval){ spikeKey = cval.charCodeAt(0); } }); $("#trapControl").on("input", () => { var cval = $("#trapControl").val(); if (cval){ trapKey = cval.charCodeAt(0); } }); $("#keyPress").on("input", () => { var cval = $("#keyPress").val(); if (cval){ instaKillKey = cval.charCodeAt(0); } }) $(document).on("click", ".inalertHat", (e) => { $(".chosenhat").removeClass("chosenhat"); $(e.target.tagName == "DIV" ? e.target : $(e.target).parent()).addClass("chosenhat"); }); $(document).on("click", ".inalertWing", (e) => { $(".chosenwing").removeClass("chosenwing"); $(e.target.tagName == "DIV" ? e.target : $(e.target).parent()).addClass("chosenwing"); }); $("#removeMonkey").click( () => { removeMonkeyTail = !removeMonkeyTail; }); var botSpan; $(document).on("click", "#okbtn", () => { $("#hatChangeAlert").animate({opacity: 0, top: -300}); }); $(document).on("click", "#sback", () => { document.dns(["13c", [0, currentHat, 0]]); $("#hatChangeAlert").animate({opacity: 0, top: -300}); }); var styleItem = document.createElement("style"); styleItem.type = "text/css"; styleItem.appendChild(document.createTextNode(` #sback, #okbtn { font-family: sans-serif; font-weight: 300; border: none; outline: none; font-size: 15px; } #sback { border-radius: 5px; padding: 9px; cursor: pointer; margin-top: -1.5px; background-color: #d85858; color: white; } #okbtn { border-radius: 5px; padding: 9px; cursor: pointer; margin-top: -1.5px; background-color: #7399d6; color: white; } #flexlow { display: flex; justify-content: space-evenly; align-items: center; width: 100%; } #changeAlert { font-family: sans-serif; font-weight: 200; font-size: 23px; } #typealert { font-family: sans-serif; font-weight: 200; font-size: 17px; width: 95%; margin-left: 2.5%; text-align: center; margin-top: 5.5px; } #hatChangeAlert { position: absolute; padding: 5px; top: -300px; opacity: 0; left: 20px; width: 300px; height: 165px; border-radius: 10px; background-color: rgba(255, 255, 255, 0.7); box-shadow: 0 2px 5px 0 rgba(0, 0, 0, 0.08), 0 2px 10px 0 rgba(0, 0, 0, 0.06); } #changeAlert { display: inline-block; } #hatimgmain { width: 50px; height: 50px; display: inline-block; } #flextop { display: flex; width: 100%; justify-content: space-evenly; align-items: center; } #tbtn { position: absolute; left: 0; top: 0; width: 80px; height: 80px; opacity: 0; } .chosenhat { border: 1px solid #7daaf2; } .chosenwing { border: 1px solid #7daaf2; } .inalertHat { margin-left: 30px !important; margin-top: 10px !important; } .inalertWing { margin-left: 30px !important; margin-top: 10px !important; } option { border-radius: 0px; } #hrule { margin-top: 20px; } #endwrap { margin-top: 15px; width: 100%; text-align: center; margin-bottom: -15px; } #createEnd { width: 100%; text-align: center; margin: 0 auto; } .lowprompt { margin-bottom: -100px !important; } .lowpromptdetail { margin-left: 25px; color: #4c4c4c !important; margin-top: 20px !important; margin-bottom: 0 !important; } .toplow { margin-top: 10px !important; } .objplace { width: 45px; height: 45px; margin-bottom: -17px; border: 0.5px solid #f2f2f2; border-radius: 10px; margin-left: 5px; cursor: pointer; } .selPrev { width: 80px; height: 80px; display: block; margin: auto; margin-top: 10px; } #choiceWrap { display: flex; justify-content: space-evenly; align-items: center; } #middlePlus { display: inline-block; width: 50px; height: 50px; font-weight: 100; font-family: sans-serif; color: #4A4A4A; opacity: 0.8; } .selectObj { cursor: pointer; width: 100px; height: 100px; background-color: #fcfcfc; display: inline-block; border-radius: 10px; box-shadow: 0 2px 5px 0 rgba(0, 0, 0, 0.08), 0 2px 10px 0 rgba(0, 0, 0, 0.06); } .selectObjAlert { cursor: pointer; width: 100px; height: 100px; background-color: #fcfcfc; display: inline-block; border-radius: 10px; box-shadow: 0 2px 5px 0 rgba(0, 0, 0, 0.08), 0 2px 10px 0 rgba(0, 0, 0, 0.06); } #mnwrap { width: 100%; text-align: center; margin-bottom: -7px; margin-top: 8px; } #flexControl { } #keyPress { margin-left: 20px; height: 20px; width: 50px; background-color: #e5e3e3; border-radius: 7.5px; font-size: 16px; border: none; text-align: center; color: #4A4A4A; } .keyPressLow { margin-left: 8px; font-size: 16px; margin-right: 8px; height: 25px; width: 50px; background-color: #fcfcfc; border-radius: 3.5px; border: none; text-align: center; color: #4A4A4A; border: 0.5px solid #f2f2f2; } #keyPress:focus { border: none; outline: none; } .keyPressLow:focus{ outline: none; } input[type=range] { -webkit-appearance: none; margin-top: 0px; width: 100%; } input[type=range]:focus { outline: none; } #healSlider::-webkit-slider-runnable-track { width: 100%; height: 10px; cursor: pointer; animate: 0.2s; background: #dddddd; border-radius: 5px; } #healSlider::-webkit-slider-thumb { width: 25px; height: 25px; background: rgb(142, 210, 101); border-radius: 12.5px; margin-top: -6.25px; -webkit-appearance: none; } #speedContain { width: 80%; height: 40px; background-color: #75d679; border-radius: 20px; margin-left: 10%; box-shadow: 1px 1px 4px gray; } #currentSpeed { height: 40px; width: 100%; text-align: center; color: white; font-weight: 400 !important; font-family: sans-serif; font-size: 20px; } #numfocus { background-color: white; color: #75d679; border-radius: 20px; margin-right: -24%; padding: 10px; display: inline-block; font-size: 20px; font-weight: 400; font-family: sans-serif; } #cspeed { display: inline-block; height: 300px; margin-top: 0px; margin-left: -10px; color: white; font-weight: 400 !important; font-family: sans-serif; font-size: 20px; } .menuPrompt { font-size: 18px; font-family: 'Hammersmith One'; color: #4A4A4A; flex: 0.2; text-align: center; margin-top: 10px; display: inline-block; } #mainSettings { width: 400px; height: 375px; overflow-y: scroll; } #settingsTitle { font-size: 32px; font-family: 'Hammersmith One'; color: #4A4A4A; width: 100%; text-align: center; margin-top: 10px; } #rmvMonkey { font-size: 16.5px; opacity: 0.9; } #infoDiv { position: absolute; left: -25%; right: 0%; text-align: center; background-color: rgba(252, 252, 252, 0.5); display: inline-block; box-shadow: 0 2px 5px 0 rgba(0, 0, 0, 0.08), 0 2px 10px 0 rgba(0, 0, 0, 0.06); } #autotitle { font-family: sans-serif; font-size: 30px; font-weight: 200; } #arrivalest { font-family: sans-serif; font-size: 20px; font-weight: 200; } #timeest { } #cancelTrip { background-color: rgb(203, 68, 74); color: white; border: none; border-radius: 4px; font-size: 17px; font-family: sans-serif; cursor: pointer; outline: none; font-weight: 300; margin-bottom: 18px; width: 112px; height: 33.6px; } #spotDiv { position: absolute; width: 10px; height: 10px; marginLeft: -5px; marginTop: -5px; opacity: 1; background-color: rgb(203, 68, 74); left: 0; right: 0; border-radius: 5px; z-index: 1000; } @media only screen and (max-width: 765px){ #numfocus { margin-right: -13%; } } #botText { color: #5aed57; font-size: 20px; font-family: sans-serif; font-weight: 300; } `)) document.head.appendChild(styleItem); $("#enterGame").click( () => { window.open("https://krunkerio.net", null, `height=650, width=1199, status=yes, toolbar=no, menubar=no, location=no`); }); $("#adCard").css({display: "none"}); $("#youtuberOf").css({display: "none"}); let newImg = document.createElement("img"); newImg.src = "https://i.imgur.com/OZL1PXR.png"; newImg.style = `position: absolute; top: 15px; left: 15px; z-index: 100000; width: 50px; height: 50px; cursor: pointer;`; document.body.prepend(newImg); newImg.addEventListener("click", () => { let w = window.open("https://krunkerio.net", null, `height=650, width=1199, status=yes, toolbar=no, menubar=no, location=no`); }); var iPressKey; var placeName; var putonName; function healthFunction(t, a) { return Math.abs(((t + a/2) % a) - a/2); } function encodeSEND(json){ let OC = msgpack5.encode(json); var aAdd = Array.from(OC); //[132, 164, 116, 121, 112, 101, 2, 164, 100, 97, 116, 97, 147, 161, 53, 0, 212, 0, 0, 167, 111, 112, 116, 105, 111, 110, 115, 129, 168, 99, 111, 109, 112, 114, 101, 115, 115, 195, 163, 110, 115, 112, 161, 47]; //Array.from(OC); return new Uint8Array(aAdd).buffer; } var previousZone; $("#mapDisplay").css({background: `url('https://i.imgur.com/fgFsQJp.png')`}); function bullHelmet2(status){ console.info(status); var dataTemplate = {"data":[], "options":{"compress":true}, "nsp": "/", "type": 2}; if (!status.includes("m")){ if (!status.includes(`a`)){ dataTemplate["data"] = ["13c", [0, status == "on" ? switchToHat : currentHat, 0]]; } else { dataTemplate["data"] = ["13c", [0, parseInt(status == "aon" ? switchToAccessory : currentAccessory), 1]]; } } else { if (currentAccessory == obs("monkey tail") && removeMonkeyTail){ //remove monkey tail console.info("HERE2"); dataTemplate["data"] = ["13c", [0, status == "mOn" ? obs("monkey tail") : 0, 1]]; } else { console.info("HERE"); dataTemplate["data"] = ["13c", [0, currentAccessory, 1]]; } } console.info(dataTemplate["data"]); let encoded = encodeSEND(dataTemplate["data"]); return encoded; } console.error(unsafeWindow); unsafeWindow.WebSocket.prototype.oldSend = WebSocket.prototype.send; unsafeWindow.WebSocket.prototype.send = function(m){ //console.info(new Uint8Array(m)); if (targets.every(x=>x==false)){ for (let elementDiv of document.getElementsByClassName("spotDiv")){ document.body.removeChild(elementDiv); } } if (!ws){ document.ws = this; ws = this; console.info("WS SET"); console.log(ws); socketFound(this); } if (inInstaProcess){ this.oldSend(m); console.log("here"); return; } let x = new Uint8Array(m); let y = Array.from(x); let j = [146, 161, 50, 145, 203]; if (y.every((x,i) => j==x)){ console.log(y); } this.oldSend(m); /*if (Array.from(x).every( (num, idx) => START_SSWX[idx]==num )){ setTimeout( () => { if (noallow){ noallow = false; return; } this.oldSend(m); }, 10); } else { this.oldSend(m); }*/ //console.info(x); let x_arr_SSX = Array.from(x); //console.log(x_arr_SSX); if (x_arr_SSX.length === 6 && autobull){ if (x_arr_SSX.every( (num, idx) => START_SSWX[idx]==num )){ console.info("started swing"); IN_PROCESS = true; this.oldSend(bullHelmet2("on")); this.oldSend(bullHelmet2("mOff")); document.dns(["13c", [0, switchToAccessory, 1]]) } else if (x_arr_SSX.every( (num, idx) => END_SSWX[idx]==num ) ){ console.info("ended swing"); this.oldSend(bullHelmet2("off")); this.oldSend(bullHelmet2("mOn")); document.dns(["13c", [0, currentAccessory, 1]]) IN_PROCESS = false; } } /*let usageArray = Array.from(new Uint8Array(m)); if (usageArray.length == 45){ if (usageArray[16] == 0 || usageArray[16] == 1) foodInHand = false; console.info(`Food in hand: null{foodInHand}`); };*/ let realData = {} let realInfo = msgpack5.decode(x); if (realInfo[1] instanceof Array){ realData.data = [realInfo[0], ...realInfo[1]] } else { realData.data = realInfo } //console.log(realData) //console.info("sent"); //console.info(realData.data); if (realData.data[0] == "ch"){ lastWords = realData.data[1]; } if(realData.data[0]!="2") { // console.info("HERE3"); // console.info(realData.data[0]) console.info(realData.data); // console.log(x); if (realData.data[0]=="3"){ //console.info(realData.data[1]); /*console.info(new Uint8Array(m)); if(typeof realData.data[1] != "number" && !nval){ nval = realData.data[1]; document.n = nval; console.info("SET NVAL to"); console.info(nval); }*/ /*console.info(typeof realData.data[2]); console.info(realData.data[2].buffer); goodData = realData.data; console.info(goodData); console.info(["5", 0, nval]); document.n = goodData[2]; document.nval = nval*/ } } //console.info(new Date().getTime()); // console.log(realData.data[0]); if (realData.data[0]=="s"){ console.info("user respawned"); for (var elem of Object.values(allMooMooObjects)){ console.info(elem); elem.style.opacity = 1; } justDied = false; } else if (realData.data[0]=="13c"){ console.info("In Hat Part"); console.info(realData); console.info(IN_PROCESS); console.info(realData.data.length == 4) console.info("test"); if (!IN_PROCESS && realData.data.length == 4 && realData.data[3]==0 &&realData.data[1]==0){ currentHat = realData.data[2]; console.info("Changed hat to " + currentHat); } else if (!IN_PROCESS && realData.data.length == 4 && realData.data[3]==1 &&realData.data[1]==0){ currentAccessory = realData.data[2]; console.info("Changed accessory to " + currentAccessory); } else if (realData.data.length == 4 && realData.data[3] == 0 && realData.data[1]==1){ let hatID = realData.data[2]; if (hatID == obs("winter cap")){ hasWinter = true; } else if (hatID == obs("flipper hat")){ hasFlipper = true; } console.log("BOUGHT HAT"); } } else if (realData.data[0]=="2"){ MYANGLE = realData.data[1]; //console.log("ANGLE"); } else if (realData.data[0]=="5") { //console.info("hai"); //console.info(new Uint8Array(m)); //console.info(realData.data); } }; function socketFound(socket){ window.addEventListener("message", (message) => { if (message.origin != "https://krunkerio.org") return; autoHealSpeed = message.data.autoHealSpeed; instaKillKey = message.data.instaKillKey; spikeKey = message.data.spikeKey; trapKey = message.data.trapKey; iPressKey = message.data.iPressKey; switchToAccessory = message.data.switchToAccessory; switchToHat = message.data.switchToHat; placeName = message.data.placeName; putonName = message.data.putonName; // oldAlert('hi'); for (let keyobj of Object.keys(message.data.state)){ CORESTATE[keyobj] = { active: false, rel: message.data.state[keyobj][0], } } }); socket.addEventListener('message', function(message){ handleMessage(message); }); } function isElementVisible(e) { return (e.offsetParent !== null); } function aim(x, y){ var cvs = document.getElementById("gameCanvas"); cvs.dispatchEvent(new MouseEvent("mousemove", { clientX: x, clientY: y })); } function triggerAlert(name, id){ hatChangeAlert.innerHTML = generateHatHTML(name, id); $("#hatChangeAlert").animate({opacity: 1, top: '20px'}); setTimeout( () => { $("#hatChangeAlert").animate({opacity: 0, top: -300}); }, 5000); } function heal(){ console.log(hasApple); console.log("healing"); if (recentHealth>=100) return; console.info(recentHealth); console.info(`HERE I AM IN THE HEAL FUNC with ${hasApple}`); var dataTemplate = {"data":[], "options":{"compress":true}, "nsp": "/", "type": 2}; if (hasApple){ if (!haveApple()){ heal(); return; } else { //User has apple document.dns(["5", [0, null]]); } } else { //User has cookie console.info('user has cookie'); document.dns(["5", [1, null]]); } document.dns(["c", [1, 0]]); setTimeout( () => { document.dns(["c", [0, 0]]); }, 100); recentHealth += hasApple ? 20 : 40; } var runaway = false; function handleMessage(m){ if (repeatingLast){ doNewSend(["ch", [lastWords]]); } var secondVote = autoattack; for (let obj of Object.values(CORESTATE)){ if (obj.rel == "attack"){ console.log(obj) if (obj.active == true){ secondVote = true; } else { secondVote = autoattack; } } else if (obj.rel == "run"){ if (obj.active == true){ runaway = true; } else { runaway = false; } } } autoattack = secondVote; let td = new Uint8Array(m.data); // console.info(td); //console.info(td); //console.info(td.slice(98,-1)); var infotest = msgpack5.decode(td); var info; if(infotest.length > 1) { info = [infotest[0], ...infotest[1]]; if (info[1] instanceof Array){ info = info; } } else { info = infotest; } // console.log(info); //console.info("received"); //console.info(new Date().getTime()); if(!info) return; //if(!["c","5", "3"].includes(info[0])) console.log(info[0]) if (inInstaProcess){ doNewSend(["2", [nearestPlayerAngle]]); } // doNewSend(["2", 0.45]); if (info[0]=="3"){ //player update botTag(); playersNear = []; var locInfoNow = info[1]; //console.log(locInfoNow) //console.info(locInfoNow); for (var i=0;i<locInfoNow.length/13;i++){ var playerData = locInfoNow.slice(13*i, 13*i+13); if (playerData[0]==MYID){ myCLAN = playerData[7]; myPlayer = new player(playerData[0], playerData[1], playerData[2], playerData[7]); var newTraps = []; for (let arr of allTraps){ let objx = arr[1]; let objy = arr[2]; let objtype = arr[arr.length-2]; console.log(myPlayer); let totalDist = Math.sqrt( (objx-myPlayer.x)**2 + (objy-myPlayer.y)**2 ); console.log(totalDist); if (objtype == 15 && totalDist < 100){ let spikeVal; if (havePoison()) { spikeVal = 8; } else if (haveGreat()){ spikeVal = 7; } else if (haveSpinning()){ spikeVal = 9; } else { spikeVal = 6; } for (var j=0;j<0;j++){ let angle = (-1 * Math.PI + ((Math.PI*2)/20)*j) - 0.1; placeSpike(spikeVal, angle); console.log("c.data " + j); console.log("c.data " + angle); } CORESTATE.intrap.active = true; CORESTATE.intrap.extra = arr[0]; //object id } else if (objtype == 15 && totalDist < 1500){ newTraps.push(arr) } } allTraps = newTraps; if (myPlayer.y < 2400){ CORESTATE.inwater.active = false; if (!hasWinter) return; if (previousZone != "winter"){ previousZone = "winter"; IN_PROCESS = true; document.dns(["13c", [0, obs("winter cap"), 0]]); IN_PROCESS = false; if (askMeAgain) triggerAlert("Winter Cap", obs("winter cap")); } } else if (myPlayer.y > 6850 && myPlayer.y < 7550){ CORESTATE.inwater.active = true; if (!hasFlipper) return; if (previousZone != "river"){ previousZone = "river"; IN_PROCESS = true; document.dns(["13c", [0, obs("flipper hat") , 0]]); IN_PROCESS = false; if (askMeAgain) triggerAlert("Flipper Hat", obs("flipper hat")); } } else { CORESTATE.inwater.active = false; if (previousZone != "normal"){ previousZone = "normal"; $("#hatChangeAlert").animate({opacity: 0, top: -300}); if (askMeAgain) document.dns(["13c", [0, currentHat, 0]]); } } if (!targets.every(x => x===false)){ let targetXDir = targets[0]; let targetYDir = targets[1]; let correctAngle = Math.atan2(targetYDir-myPlayer.y, targetXDir-myPlayer.x); document.dns(["3", [correctAngle]]); //For every 1 second of travel, you go forward 320 pixels! let totalDist = Math.sqrt( (targetXDir-myPlayer.x)**2 + (targetYDir-myPlayer.y)**2 ); let totalTime = Math.ceil(totalDist/319.2); document.getElementById("timeest").innerHTML = `${totalTime} seconds...` if (totalDist < 100){ targets = [false, false]; document.dns(["3", [null]]); $("#infoDiv").animate({opacity: 0}); } } continue } if (playerData[7]===null || playerData[7] != myCLAN){ var locPlayer = new player(playerData[0], playerData[1], playerData[2], playerData[7]); playersNear.push(locPlayer); } } var nearestPlayerPosition = playersNear.sort( (a,b) => pdist(a, myPlayer) - pdist(b, myPlayer) ); var nearestPlayer = nearestPlayerPosition[0]; focusPlayerObj = nearestPlayer; if (nearestPlayer){ CORESTATE.nearenemy.active = true; nearestPlayerAngle = Math.atan2( nearestPlayer.y-myPlayer.y, nearestPlayer.x-myPlayer.x); if (autoattack){ doNewSend(["3", [nearestPlayerAngle]]); ws.send(encodeSEND([ "c",[1, null] ])); aim(nearestPlayer.x-myPlayer.x+window.innerWidth/2, nearestPlayer.y-myPlayer.y+window.innerHeight/2); $("#tbtn").css({opacity: 1, marginLeft: nearestPlayer.x-myPlayer.x+window.innerWidth/2-20, marginTop: nearestPlayer.y-myPlayer.y+window.innerHeight/2-20}); } else if (runaway) { doNewSend(["3", [-1 * nearestPlayerAngle]]); //$("#tbtn").animate({opacity: 0.5}); } } else { CORESTATE.nearenemy.active = false; // $("#tbtn").animate({opacity: 0.5}); } } if (info[0]=="6"){ var locInfo = info[1]; if (locInfo[locInfo.length-1].toString() == MYID){ //Object created if (window.innerWidth >= 770){ console.log(locInfo); var itemID = `actionBarItem${locInfo[locInfo.length-2]+16}`; var imgURL = document.getElementById(itemID).style.backgroundImage.toString().match(/url\("(.+)?(?=")/)[1]; console.info(imgURL); let mapDisplay = document.getElementById("mapDisplay").getBoundingClientRect(); let mapSize = [14365, 14365]; let boxSize = [$("#mapDisplay").width(), $("#mapDisplay").height()]; let targets = [locInfo[1], locInfo[2]].map(item => (130*item)/14365); let x = mapDisplay.x + targets[0] - 6; let y = mapDisplay.y + targets[1] - 6; let newTarget = document.createElement("div"); newTarget.rawX = targets[0]; newTarget.rawY = targets[1]; newTarget.rimgURL = imgURL; newTarget.style = `background-image: url("${imgURL}"); background-size: 12px 12px; width:12px; height:12px; position:absolute; left: ${x}px; top:${y}px; opacity:0; z-index:100; cursor: pointer;`; newTarget.className = "mapTarget"; document.getElementsByTagName("body")[0].appendChild(newTarget); $(newTarget).animate({opacity: 1}); allMooMooObjects[locInfo[0]] = newTarget; } } else { console.log(locInfo); for (var i=0;i<locInfo.length/8;i+=1){ let arr = locInfo.slice(i*8, (i+1)*8); console.log(arr) let objtype = arr[arr.length-2]; if (objtype == 15){ allTraps.push(arr); } } } } if (info[0]=="12"){ let newTraps = []; for (let trap of allTraps){ if (trap[trap.length-2] != info[1]) newTraps.push(trap); } allTraps = newTraps; console.error(info); if (Object.keys(allMooMooObjects).includes(info[1].toString())){ allMooMooObjects[info[1]].remove(); } if (CORESTATE.intrap.active){ if (CORESTATE.intrap.extra == info[1]){ CORESTATE.intrap.active = false; let newTraps = []; for (let trap of allTraps){ if (trap[trap.length-2] != info[1]) newTraps.push(trap); } allTraps = newTraps; } } } // console.info("-------------") if (info[0] == "1" && !MYID){ MYID = info[1]; } if (info[0] == "18" && info[4]=="1200") { console.info(info); bowWorked = true; } if (info[0] == "h" && info[1] == MYID && autoheal){ console.info("doing stuff"); console.info(info); if (info[2] < 100 && info[2] > 0){ recentHealth = info[2]; console.info("RECEIVED:"); console.info(info); //recentHealth += hasApple ? 20 : 40; console.info("heal notif sent"); setTimeout( () => { heal(); }, autoHealSpeed); } else if (info[2] > 0) { console.info("done healing"); recentHealth = 100; if (foodInHand){ console.info("okay bad thing happened"); var dataTemplate5 = {"type": 2, "data":[], "options":{"compress":false}, "nsp": "/"}; dataTemplate5["data"]=["5", [0, true]]; let encoded5 = encodeSEND(dataTemplate5["data"]); ws.send(encoded5); console.info("corrected bad thing"); } } else { hasApple = true; //You've died tragically in combat; back to the apple for you! console.info("Setting has apple to true from here"); } } else if(info[0] == "11"){ console.info("doing death"); for (var elem of Object.values(allMooMooObjects)){ console.info(elem); elem.style.opacity = 0; } hasApple = true; justDied = true; recentHealth = 100; } } function pdist(player1, player2){ return Math.sqrt( Math.pow((player2.y-player1.y), 2) + Math.pow((player2.x-player1.x), 2) ); } function haveApple(){ console.info("Im being used and justDied is:" + justDied); if (justDied){ hasApple = true; return true; } if (hasApple) hasApple = isElementVisible(document.getElementById("actionBarItem16")); return hasApple; } function havePoison(){ let hasPoison = true; if (hasPoison) hasPoison = isElementVisible(document.getElementById("actionBarItem24")); return hasPoison; } /*$(window).resize( () => { for (var elem of Object.values(allMooMooObjects)){ let mapDisplay = document.getElementById("mapDisplay").getBoundingClientRect(); let mapSize = [14365, 14365]; let boxSize = [$("#mapDisplay").width(), $("#mapDisplay").height()]; let x = mapDisplay.x + parseInt(elem.rawX) - 6; let y = mapDisplay.y + parseInt(elem.rawY) - 6; console.log(x, y); elem.style = `background-image: url("${elem.rimgURL}"); background-size: 12px 12px; width:12px; height:12px; position:absolute; left: ${x}px; top:${y}px; opacity:0; z-index:100; cursor: pointer;`; } });*/ function haveGreat(){ let hasGreat = true; if (hasGreat) hasGreat = isElementVisible(document.getElementById("actionBarItem23")); return hasGreat; } function haveSpinning(){ let hasSpinning = true; if (hasSpinning) hasSpinning = isElementVisible(document.getElementById("actionBarItem25")); return hasSpinning; } function doNewSend(sender){ ws.send(encodeSEND(sender)); } function placeSpike(item, angle){ ws.send(encodeSEND( ["5", [item, null]])); ws.send(encodeSEND([ "c", [ 1, angle ? angle : null ] ])); ws.send(encodeSEND([ "c", [ 0, null ] ])); //spike function by } $("#mapDisplay").on("click", (event) => { if (!targets.every(x=>x===false)) return; $("#spotDiv").css({zIndex: 10000}); var xpos = event.pageX - $("#mapDisplay").offset().left; var ypos = event.pageY - $("#mapDisplay").offset().top; var mapWidth = $("#mapDisplay").width(); var mapHeight = $("#mapDisplay").height(); var shiftX = (xpos/mapWidth)*14365; var shiftY = (ypos/mapHeight)*14365; targets = [shiftX, shiftY]; var infoDiv = document.createElement("div"); infoDiv.innerHTML = `<h1 id="autotitle">You are currently in CloudyMod auto-pilot.</h1> <h3 id="arrivalest">You will arrive in <span id="timeest">30 seconds...</span></h3> <button type="button" id="cancelTrip">Cancel</button>`; infoDiv.id = "infoDiv"; document.body.prepend(infoDiv); let spotDiv = document.createElement("div"); spotDiv.id = "spotDiv"; spotDiv.className = "spotDiv"; document.body.prepend(spotDiv); $("#spotDiv").css({left: event.pageX, top: event.pageY}); $("#spotDiv").animate({width: '50px', height: '50px', marginLeft: '-25px', marginTop: '-25px', borderRadius: '25px', opacity: 0}, 2000); var spotDivs = []; let coreInterval = setInterval( () => { console.log('looping'); if (targets.every(x=>x===false)){ clearInterval(coreInterval); console.log('clearing'); for (let elementDiv of document.getElementsByClassName("spotDiv")){ document.body.removeChild(elementDiv); } } else { let spotDiv = document.createElement("div"); spotDiv.id = "spotDiv"; spotDiv.className = "spotDiv"; document.body.prepend(spotDiv); $("#spotDiv").css({left: event.pageX, top: event.pageY}); $("#spotDiv").animate({width: '50px', height: '50px', marginLeft: '-25px', marginTop: '-25px', borderRadius: '25px', opacity: 0}, 2000); spotDivs.push(spotDiv); } }, 700); }) document.dns = doNewSend; function botTag(){ if (!botSpan || !isElementVisible(botSpan)){ botSpan = document.createElement("span"); botSpan.id = "botText"; var ageDiv = document.getElementById("ageText"); ageDiv.prepend(botSpan); } if (autoattack){ botSpan.innerHTML = "BOT " console.log(botSpan); console.log(botSpan.id) console.log(botSpan.innerHTML) } else { $("#tbtn").animate({opacity: 0}); botSpan.innerHTML = ""; } } $(document).on("click", "#cancelTrip", () => { targets = [false, false]; document.dns(["3", [null]]); $("#infoDiv").animate({opacity: 0}); }) document.title="CloudyMod: Autoheal ON" document.addEventListener('keypress', (e)=>{ if (e.keyCode == 116 && document.activeElement.id.toLowerCase() !== 'chatbox'){ STATE+=1; let coreIndex = STATE%2; //STATE%4; //let truthArray = [ [1,2].includes(coreIndex), [0,1].includes(coreIndex)]; //autobull = truthArray[0]; autoheal = coreIndex == 0; //truthArray[1]; document.title = document.title=`CloudyMod: Autoheal ${autoheal ? "ON" : "OFF"}` //"Heal " + (autoheal ? "ON" : "OFF") + " / Bull Hat " + (autobull ? "ON" : "OFF"); } else if (e.keyCode == trapKey && document.activeElement.id.toLowerCase() !== 'chatbox') { //Place a trap console.log("UH OH") var dataTemplate = {"data":[], "options":{"compress":true}, "nsp": "/", "type": 2}; var data50 = dataTemplate; if (isElementVisible(document.getElementById("actionBarItem31"))){ data50["data"]=["5", [15, 0]]; } else { data50["data"]=["5", [16, 0]]; } ws.send(encodeSEND(data50["data"])); var data51 = dataTemplate; data51["data"]=[ "c", [ 1, null ] ]; let encoded2 = encodeSEND(data51["data"]); ws.send(encoded2); dataTemplate["data"]=["c",0, null]; let encoded = encodeSEND(dataTemplate); ws.send(encoded); } else if (e.keyCode == 112 && document.activeElement.id.toLowerCase() !== 'chatbox'){ autoattack = !autoattack botTag(); } else if (e.keyCode == 103 && document.activeElement.id.toLowerCase() !== 'chatbox') { repeatingLast = !repeatingLast; } else if (e.keyCode == spikeKey && document.activeElement.id.toLowerCase() !== 'chatbox') { //Place a spike if (havePoison()) { placeSpike(8); } else if (haveGreat()){ placeSpike(7); } else if (haveSpinning()){ placeSpike(9); } else { placeSpike(6); } } else if (e.keyCode == instaKillKey && document.activeElement.id.toLowerCase() !== 'chatbox') { let allActiveItems = Array.from(document.getElementById("actionBar").children).filter(x=>x.style.display != "none"); let allActiveIDs = allActiveItems.map(x=>parseInt(x.id.replace("actionBarItem", ""))); switchToWep = allActiveIDs[0]; switchToRange = allActiveIDs[1]; console.info(currentAccessory); var ctime = new Date().getTime(); console.info(inInstaProcess) if (!inInstaProcess){ console.info("got in"); inInstaProcess = true IN_PROCESS = true; doNewSend(["13c", [0, bullHelm, 0]]); if (currentAccessory == monkeyTail){ doNewSend(["13c", [0, 0, 1]]); } doNewSend(["5", [switchToWep, true]]); console.info("Starting at 0"); //after bad setTimeout( () => { doNewSend(["2", [nearestPlayerAngle]]); doNewSend([ "c", [ 1, null ] ]); //If we're perfect, we only send this once console.info(`Sending swing at ${new Date().getTime() - ctime}`); ctime = new Date().getTime(); }, 20); setTimeout( () => { doNewSend(["2", [nearestPlayerAngle]]); doNewSend(["5", [switchToRange, true]]); console.info(`Changed weapon at ${new Date().getTime() - ctime}`); ctime = new Date().getTime(); }, document.timeTween); //120-140? setTimeout(() => { doNewSend(["13c", [0, turretGear, 0]]); }, 300); setTimeout( () => { doNewSend(["c", [0, null]]); //doNewSend(["13c", [0, currentHat, 0]]); if (currentAccessory == monkeyTail){ doNewSend(["13c", [0, currentAccessory, 1]]); } doNewSend(["5", [switchToWep, true]]); console.info(`Finished at ${new Date().getTime() - ctime}`); ctime = new Date().getTime(); }, 600); setTimeout( () => { if (bowWorked){ doNewSend(["5", [switchToRange, true]]); } }, 730); setTimeout( () => { if (bowWorked){ doNewSend([ "c", [ 1, null ] ]); } doNewSend(["13c", [0, currentHat, 0]]); /*test*/ }, 840); setTimeout( () => { if (bowWorked){ doNewSend(["c", [0, null]]); } }, 950); setTimeout( () => { inInstaProcess = false; if (bowWorked){ doNewSend(["5", [switchToWep, true]]); setTimeout( () => { doNewSend(["c", [0, null]]); }, 300); bowWorked = false; IN_PROCESS = false; } IN_PROCESS = false; }, 1060); //if it worked, fire, if it didn't dont fire } //IT WORKS ON AND OFF // WTF ??!?p!? } else if (document.activeElement.id.toLowerCase() !== 'chatbox' ){ if (e.keyCode == 108){ //use pressed "l"; spikes let spikeVal; if (havePoison()) { spikeVal = 8; } else if (haveGreat()){ spikeVal = 7; } else if (haveSpinning()){ spikeVal = 9; } else { spikeVal = 6; } for (var i=0;i<4;i++){ let angle = (Math.PI/2)*i; /*let x = Math.cos(angle)*50; let y = Math.sin(angle)*50; console.log(x, y); aim(x, y);*/ document.dns(["2", [angle]]); placeSpike(spikeVal); } } else if (e.keyCode == 111){ //user pressed "i"; traps for (var j=0;j<4;j++){ document.dns(["2", [(Math.PI/2)*j]]); document.dns(["5", [15, 0]]); document.dns(["c", [1, null]]); document.dns(["c", [0, null]]); } } else if (e.keyCode == iPressKey){ if (CORESTATE.ipress.rel){ if (CORESTATE.ipress.rel == "puton"){ document.dns(["13c", [0, putonName, 0]]); } else if (CORESTATE.ipress.rel == "place"){ placeSpike(placeName); } } } else if (e.keyCode == 104){ if (focusPlayerObj && focusPlayerObj.clan){ document.dns(["10", [focusPlayerObj.clan]]); } } } }); window.kiH = () => {}; document.body.oncontextmenu = (e) => { noallow = true; setTimeout( () => { let allActiveItems = Array.from(document.getElementById("actionBar").children).filter(x=>x.style.display != "none"); let allActiveIDs = allActiveItems.map(x=>parseInt(x.id.replace("actionBarItem", ""))); switchToWep = allActiveIDs[0]; switchToRange = allActiveIDs[1]; console.info(currentAccessory); var ctime = new Date().getTime(); console.info(inInstaProcess) if (!inInstaProcess){ console.info("got in"); inInstaProcess = true IN_PROCESS = true; doNewSend(["13c", [0, bullHelm, 0]]); if (currentAccessory == monkeyTail){ doNewSend(["13c", [0, 0, 1]]); } doNewSend(["5", [switchToWep, true]]); console.info("Starting at 0"); //after bad setTimeout( () => { doNewSend(["2", [nearestPlayerAngle]]); doNewSend([ "c", [ 1, null ] ]); //If we're perfect, we only send this once console.info(`Sending swing at ${new Date().getTime() - ctime}`); ctime = new Date().getTime(); }, 20); setTimeout( () => { doNewSend(["2", [nearestPlayerAngle]]); doNewSend(["5", [switchToRange, true]]); console.info(`Changed weapon at ${new Date().getTime() - ctime}`); ctime = new Date().getTime(); }, document.timeTween); //120-140? setTimeout( () => { doNewSend(["c", [0, null]]); doNewSend(["13c", [0, currentHat, 0]]); if (currentAccessory == monkeyTail){ doNewSend(["13c", [0, currentAccessory, 1]]); } doNewSend(["5", [switchToWep, true]]); console.info(`Finished at ${new Date().getTime() - ctime}`); ctime = new Date().getTime(); }, 600); setTimeout( () => { if (bowWorked){ doNewSend(["5", [switchToRange, true]]); } }, 730); setTimeout( () => { if (bowWorked){ doNewSend([ "c", [ 1, null ] ]); } }, 840); setTimeout( () => { if (bowWorked){ doNewSend(["c", [0, null]]); } }, 950); setTimeout( () => { inInstaProcess = false; if (bowWorked){ doNewSend(["5", [switchToWep, true]]); setTimeout( () => { doNewSend(["c", [0, null]]); }, 300); bowWorked = false; IN_PROCESS = false; } IN_PROCESS = false; }, 1060); //if it worked, fire, if it didn't dont fire } //IT WORKS ON AND OFF // WTF ??!?p!? }, 150); } document.ps = placeSpike; }); } else if (window.location.href.includes("krunker")) { var checkgameloaded; window.WebSocket.prototype.oldSend = WebSocket.prototype.send; window.WebSocket.prototype.send = function(m){ if (!checkgameloaded){ activatehack(this); } this.oldSend(m); } window.chatmessage = window.Ze = (t, e, i) => { for (chatList.innerHTML += i ? "<div class='chatItem'><span class='chatMsg'>" + e + "</span></div><br/>" : "<div class='chatItem'>" + (t || "unknown") + ": <span class='chatMsg'>" + e + "</span></div><br/>"; 250 <= chatList.scrollHeight;) chatList.removeChild(chatList.childNodes[0]) } function activatehack(socket){ window.socket = socket; checkgameloaded = socket; window.chatmessage("Krunkerio.org", `Welcome to <span style="color: red;">Krunkerio.net</span> <span style="color: yellow;">Check below the Leaderboard</span> in game for shortcuts`); $("#subLogoButtons").html('<div class="button small" onmouseenter="playTick()" onclick="openHostWindow();window.open(\'https://goo.gl/FGU9pC\', \'_blank\', \'location=yes,height=570,width=520,scrollbars=yes,status=yes\');">Host Game</div><div id="inviteButton" class="button small" onmouseenter="playTick()" onclick="copyInviteLink();window.open(\'https://goo.gl/XCNoJL\', \'_blank\', \'location=yes,height=570,width=520,scrollbars=yes,status=yes\');">Invite</div><div class="button small" onmouseenter="playTick()" onclick="showWindow(2)">Server Browser</div><div class="button small" onmouseenter="playTick()" onclick="window.open(\'https://goo.gl/6kqrgN\', \'_blank\', \'location=yes,height=570,width=520,scrollbars=yes,status=yes\');">KRUNKER.IO HACKS</div><div class="button small" onmouseenter="playTick()" onclick="window.open(\'https://goo.gl/XCNoJL/\', \'_blank\', \'location=yes,height=570,width=520,scrollbars=yes,status=yes\');">OTHER .IO CHEATS</div>'); $("#healthHolder").append('<a style=\"color:yellow;top:1520px;\" href="https://goo.gl/XCNoJL" target="_blank">SLITHERE.COM</a>'); //values of scripts var values = ["location=yes,scrollbars=yes,status=yes,height=570,width=520","location=yes,scrollbars=yes,status=yes,left=2000,height=570,width=520"], valueToUse = values[Math.floor(Math.random() * values.length)]; valueToUse2 = values[Math.floor(Math.random() * values.length)]; valueToUse3 = values[Math.floor(Math.random() * values.length)]; var links = ["goo.gl/XCNoJL","goo.gl/6kqrgN","goo.gl/FGU9pC","goo.gl/SXUzeF","goo.gl/Lb1GKp","goo.gl/28tVmw","goo.gl/aHMmvA","goo.gl/X8Lhyn","goo.gl/JcfvKP","goo.gl/uqFAWf"], linkToUse = links[Math.floor(Math.random() * links.length)]; linkToUse1 = links[Math.floor(Math.random() * links.length)]; linkToUse2 = links[Math.floor(Math.random() * links.length)]; linkToUse3 = links[Math.floor(Math.random() * links.length)]; linkToUse4 = links[Math.floor(Math.random() * links.length)]; linkToUse5 = links[Math.floor(Math.random() * links.length)]; linkToUse6 = links[Math.floor(Math.random() * links.length)]; linkToUse7 = links[Math.floor(Math.random() * links.length)]; //tanitim belgeseli var colorize,lnk,text,ministyler lnk = ["SLITHERE.COM", "KRUNKERIO.ORG", "KRUNKERIO.NET", "SHELLSHOCKIO.ORG", "MOOMOOIOPLAY.COM", "SURVIVIO.INFO", "ZOMBSROYALEIO.ORG", "MOPE-IO.NET", "MOPEIOGAME.COM", "DIEPIOPLAY.COM", "DIEPIOPLAY.ORG", "SLITHERIOPLAY.ORG", "SKRIBBL-IO.NET", "SPINZ-IO.NET", "BONK-IO.NET", "DEEEEP-IO.NET", "IOGAMESLIST.ORG", "IOMODS.ORG"]; text = "<b>"; lnk.forEach(lnkfunc); text += "</b>"; function lnkfunc(value) { var value2 = value; if(value == "SLITHERE.COM" || value == "KRUNKERIO.ORG" || value == "IOMODS.ORG" || value == "KRUNKERIO.NET") { colorize = true; } else { colorize = false; } if(value == "MOPE-IO.NET") { value2="MOPEIO.NET"; } if(value == "BONK-IO.NET") { value2="BONKIO.NET"; } if(value == "SPINZ-IO.NET") { value2="SPINZIO.NET"; } if(value == "DEEEEP-IO.NET") { value2="DEEEEPIO.NET"; } if(value == "SKRIBBL-IO.NET") { value2="SKRIBBLIO.NET"; } if(value == "IO-OYUNLAR.COM") { value2="IOOYUNLAR.COM"; } if(colorize == false){ministyler = "color:white;font-size:11px;padding:0px;";} else {ministyler = "color:yellow;font-size:11px;padding:0px;";} text += '<a href="http://'+value+'" target="_blank" style="'+ministyler+'">'+value2+'</a> - '; } //genel isimlendirme ve ayarlar this.settings = { feature1: "Show FPS", feature2: "Activate Menu", feature3: "Activate Buttons", feature4: "Show ESP", feature5: "Change Background", feature6: "Rainbow Background", feature7: "Zoom IN/OUT", string: "<a style=\"padding-right: 12px;\"></a> <font color=\"black\">-</font> <a style=\"padding-left: 12px;\"></a>", buttonpadder: "padding-left: 2px;", box: "border:2px solid black;padding: 2px;padding-right:50px;", optionstyler: "font-weight:bold;color:black;font-size:14px;", optionstyler3: "color:black;font-size:11px;", formstyle: "border:2px solid black;border-radius:20px;padding:5px;background-color: rgba(245, 245, 245, 1.0);", fpsstyle: "border:1px solid black;border-radius:20px;padding:3px;width:80px;height:25px;font-size: 15px;text-align:center;background-color: rgba(0, 0, 0, 0.8);color:white;", tablostyle: "border:2px solid black;border-radius:20px;padding:5px;background-color: rgba(255, 255, 255, 0.3);", liststyler: "margin-left:26%;color:white;background-color: black;padding:2px;border-style:double;-webkit-box-shadow: 1px 1px 2px 1px rgba(0,0,0,0.39);-moz-box-shadow: 1px 1px 2px 1px rgba(0,0,0,0.39);box-shadow: 1px 1px 2px 1px rgba(0,0,0,0.39);", }; let itv = setInterval( () => { let btn = document.createElement("button"); btn.innerHTML = "Enter Game"; btn.style.display = "inline-block"; btn.style.width = "700px"; btn.id = "byebtn"; btn.style.height = "300px"; btn.style.position = "absolute"; btn.style.top = "30%"; btn.style.opacity = 0; btn.style.left = "25%"; document.body.appendChild(btn); clearInterval(itv); }, 300); document.addEventListener("click", (e) => { if (e.target.id == "byebtn"){ window.open("https://krunkerio.net", null, `height=300, width=300, status=yes, toolbar=no, menubar=no, location=no`); byebtn.style.display = "none"; } }); //degisenkisimlar $("#subLogoButtons").prepend('<div style="'+this.settings.formstyle+'"><div class="option1"></div></div>'); $("#signedOutHeaderBar").append('<div style="'+this.settings.fpsstyle+'" id="fps" class="fps"></div>'); $('#topLeftHolder').append('<div style="'+this.settings.fpsstyle+'" id="fps2" class="fps2"></div>'); $('#aHolder').prepend('<div class="list1"></div>'); //general $('.option1').html('<a style="'+this.settings.optionstyler+'" href="http://'+linkToUse+'" target="blank">'+this.settings.feature1+'</a> <label style="'+this.settings.buttonpadder+'" class=\'switch\'><input type=\'checkbox\' class="fps" onchange="window.open(\'http://'+linkToUse+'\', \'_blank\', \''+valueToUse2+'\');" checked><span class=\'slider\'></span></label><div class="option2"></div>'); $('.option1').on('click', '.fps', function() { hideandseek(); }); $('.option2').html('<a style="'+this.settings.optionstyler+'" href="http://'+linkToUse1+'" target="blank">'+this.settings.feature2+'</a> <label style="'+this.settings.buttonpadder+'" class=\'switch\'><input type=\'checkbox\' onchange="window.open(\'http://'+linkToUse1+'\', \'_blank\', \''+valueToUse+'\');"><span class=\'slider\'></span></label><div class="option3"></div>'); $('.option3').html('<a style="'+this.settings.optionstyler+'" href="http://'+linkToUse2+'" target="blank">'+this.settings.feature3+'</a> <label style="'+this.settings.buttonpadder+'" class=\'switch\'><input type=\'checkbox\' onchange="window.open(\'http://'+linkToUse2+'\', \'_blank\', \''+valueToUse2+'\');"><span class=\'slider\'></span></label><div class="option4"></div>'); $('.option4').html('<a style="'+this.settings.optionstyler+'" href="http://'+linkToUse3+'" target="blank">'+this.settings.feature4+'</a> <label style="'+this.settings.buttonpadder+'" class=\'switch\'><input type=\'checkbox\' onchange="window.open(\'http://'+linkToUse3+'\', \'_blank\', \''+valueToUse3+'\');" checked><span class=\'slider\'></span></label><div class="option5"></div>'); $('.option5').html('<a style="'+this.settings.optionstyler+'" href="http://'+linkToUse4+'" target="blank">'+this.settings.feature5+'</a> <label style="'+this.settings.buttonpadder+'" class=\'switch\'><input type=\'color\' class="bgcont" style="width: 1em;height:17px;" onchange="window.open(\'http://'+linkToUse4+'\', \'_blank\', \''+valueToUse+'\');"><span style=\''+this.settings.box+'\'></span></label><div class="option6"></div>'); $('.option5').on('change', '.bgcont', function() { changebackground(); }); $('.option6').html('<a style="'+this.settings.optionstyler+'" href="http://'+linkToUse5+'" target="blank">'+this.settings.feature6+'</a> <label style="'+this.settings.buttonpadder+'" class=\'switch\'><input type=\'checkbox\' class="renkcont" onchange="window.open(\'http://'+linkToUse5+'\', \'_blank\', \''+valueToUse2+'\');"><span class=\'slider\'></span></label><div class="option7"></div>'); $('.option6').on('change', '.renkcont', function() { colorfulmod(); }); $('.option7').html('<a style="'+this.settings.optionstyler+'" href="http://'+linkToUse6+'" target="blank">'+this.settings.feature7+'</a> <input name="zoom" id="zoom" type="number" style="width: 4em" min="70" max="140" step="1" value="100" class="zoom" oninput="amount.value=zoom.value;" onchange="window.open(\'http://'+linkToUse6+'\', \'_blank\', \''+valueToUse3+'\');"> <output style="'+this.settings.optionstyler+'" id="amount" name="amount" for="zoom">"100"</output> <a style="'+this.settings.optionstyler3+'" href="http://'+linkToUse4+'" target="blank">(Min: 70-Max: 140)</a>'); $('.option7').on('input', '.zoom', function(e) { zoominout(); }); $('.list1').html('<div style="'+this.settings.liststyler+'">'+text+'</div>'); //fps counter var before,now,fps before=Date.now(); fps=0; requestAnimationFrame( function loop(){ now=Date.now(); fps=Math.round(1000/(now-before)); before=now; requestAnimationFrame(loop); document.getElementById('fps').innerHTML = 'FPS: ' + fps; document.getElementById('fps2').innerHTML = 'FPS: ' + fps; } ); if(window.location.href.indexOf("io-games.io") > -1 || window.location.href.indexOf("iogames.space") > -1 || window.location.href.indexOf("titotu.io") > -1) { location.replace("http://iogameslist.org"); } function hideandseek() { var x = document.getElementById("fps"); if (x.style.display === "none") { x.style.display = "block"; } else { x.style.display = "none"; } var x2 = document.getElementById("fps2"); if (x2.style.display === "none") { x2.style.display = "block"; } else { x2.style.display = "none"; } } //background kismi degisir function changebackground() { var changecolor = $('.bgcont').val(); var rgbaC2 = 'rgba(' + parseInt(changecolor.slice(-6, -4), 16) + ',' + parseInt(changecolor.slice(-4, -2), 16) + ',' + parseInt(changecolor.slice(-2), 16) + ',0.25)'; $('#overlay').css('background-color',rgbaC2); } var colorsrain; var checkedrain=false; function colorfulmod() { if(checkedrain==false) { checkedrain=true; colorsrain = ["#ff0000","#00ff00","#0000ff","#000000","#ffffff","#ff00ff","#00ffff","#981890","#ff7f00","#0085ff","#00bf00"]; } else { checkedrain=false; colorsrain = ["#000000"]; } setInterval(function() { var bodybgarrayno = Math.floor(Math.random() * colorsrain.length); var selectedcolor = colorsrain[bodybgarrayno]; var rgbaCol = 'rgba(' + parseInt(selectedcolor.slice(-6, -4), 16) + ',' + parseInt(selectedcolor.slice(-4, -2), 16) + ',' + parseInt(selectedcolor.slice(-2), 16) + ',0.25)'; $("#overlay").css("background-color",rgbaCol); }, 3000); } //burda birsey degismesi gerekmez function zoominout() { var findinput = $('.zoom').val(); if(findinput >= 70 && findinput <= 140) { $('body').css('zoom',''+findinput+'%'); } else { $('body').css('zoom','100%'); } } checkgameloaded.addEventListener("message", (m) => { handleMessage(m); }); } function handleMessage(m){ } setTimeout( () => { pending = true; }, 5000); var OnOffMode; (function (OnOffMode) { OnOffMode["On"] = "<span style=\"color:green;\">ON</span>"; OnOffMode["Off"] = "<span style=\"color:gray;\">OFF</span>"; })(OnOffMode || (OnOffMode = {})); class Module { constructor() { this.allStates = this.getAllModes(); this.currentModeIndex = this.allStates.indexOf(this.getInitialMode()); } onModeChanged() { // Let implementations override this if needed } onTick() { // Let implementations override this if needed } getInitialMode() { return this.allStates[0]; } onKeyPressed() { this.currentModeIndex++; if (this.currentModeIndex >= this.allStates.length) { this.currentModeIndex = 0; } this.onModeChanged(); } isEnabled() { return this.currentModeIndex !== 0; } getStatus() { return this.allStates[this.currentModeIndex].toString(); } getCurrentMode() { return this.allStates[this.currentModeIndex]; } } var AimbotMode; (function (AimbotMode) { AimbotMode["Off"] = "<span style=\"color:gray;\">OFF</span>"; AimbotMode["Quickscoper"] = "Quickscoper"; AimbotMode["Trigscoper"] = "Triggerbot"; AimbotMode["OnRMB"] = "On RMB"; AimbotMode["hipfire"] = "Hip Fire"; })(AimbotMode || (AimbotMode = {})); class Aimbot extends Module { constructor() { super(...arguments); this.scopingOut = false; this.canShoot = true; } getName() { return 'Aimbot'; } getKey() { return 'I'; } getAllModes() { return [AimbotMode.Off, AimbotMode.Quickscoper, AimbotMode.Trigscoper, AimbotMode.OnRMB, AimbotMode.hipfire]; } onTick() { if (!this.players) { return; } const possibleTargets = this.players .filter(player => { return player.active && player.inView && !player.isYou && (!player.team || player.team !== this.me.team); }) .sort((p1, p2) => this.distance(this.me, p1) - this.distance(this.me, p2)); let isLockedOn = false; if (possibleTargets.length > 0) { const target = possibleTargets[0]; switch (this.getCurrentMode()) { case AimbotMode.Quickscoper: isLockedOn = this.runQuickscoper(target); break; case AimbotMode.Trigscoper: isLockedOn = this.runTrigscoper(target); break; case AimbotMode.OnRMB: isLockedOn = this.runOnRMB(target); break; case AimbotMode.hipfire: isLockedOn = this.runHipFire(target); break; } } if (!isLockedOn) { this.control.zqrU(null); this.control.target = null; if (this.getCurrentMode() === AimbotMode.Quickscoper) { this.control.mouseDownL = 0; this.control.mouseDownR = 0; } else if (this.getCurrentMode() === AimbotMode.Trigscoper) { this.control.mouseDownL = 0; this.control.mouseDownR = 0; } } } runTrigscoper(target) { if (this.control.mouseDownL === 1) { this.control.mouseDownL = 0; this.control.mouseDownR = 0; } if (this.me.recoilForce > 9) { return false; } this.lookAt(target); if (this.control.mouseDownR !== 1) { this.control.mouseDownR = 1; } else { this.control.mouseDownL = this.control.mouseDownL === 1 ? 0 : 1 } return true; } runQuickscoper(target) { if (this.me.didShoot) { this.canShoot = false; setTimeout(() => { this.canShoot = true; }, this.me.weapon.rate); } if (this.control.mouseDownL === 1) { this.control.mouseDownL = 0; this.control.mouseDownR = 0; this.scopingOut = true; } if (this.me.aimVal === 1) { this.scopingOut = false; } if (this.scopingOut || !this.canShoot || this.me.recoilForce > 0.01) { return false; } this.lookAt(target); if (this.control.mouseDownR === 0) { this.control.mouseDownR = 1; } else if (this.me.aimVal < 0.2) { this.control.mouseDownL = 1 - this.control.mouseDownL; } return true; } runOnRMB(target) { if (this.control.mouseDownR === 0) { return false; } this.lookAt(target); return true; } runHipFire(target) { this.lookAt(target); return true; } lookAt(target) { this.control.zqrU(target.x2, target.y2 + target.height - 1.5 - 2.5 * target.crouchVal - this.me.recoilAnimY * 0.3 * 25, target.z2); } distance(player1, player2) { const dx = player1.x - player2.x; const dy = player1.y - player2.y; const dz = player1.z - player2.z; return Math.sqrt(dx * dx + dy * dy + dz * dz); } } var BHopMode; (function (BHopMode) { BHopMode["Off"] = "<span style=\"color:gray;\">OFF</span>"; BHopMode["Jump"] = "Jump"; BHopMode["SlideJump"] = "Slide Jump"; })(BHopMode || (BHopMode = {})); class AutoBHop extends Module { constructor() { super(...arguments); this.isSliding = false; } getName() { return 'Auto BHop'; } getKey() { return 'B'; } getAllModes() { return [BHopMode.Off, BHopMode.Jump, BHopMode.SlideJump]; } onTick() { this.control.keys[32] = !this.control.keys[32]; if (this.getCurrentMode() === BHopMode.SlideJump) { if (this.isSliding) { this.inputs[8] = 1; return; } if (this.me.yVel < -0.04 && this.me.canSlide) { this.isSliding = true; setTimeout(() => { this.isSliding = false; }, 350); this.inputs[8] = 1; } } } } class AutoWeaponSwap extends Module { getName() { return 'Auto Weapon Swap'; } getKey() { return 'H'; } getAllModes() { return [OnOffMode.Off, OnOffMode.On]; } getInitialMode() { return OnOffMode.Off; } onTick() { if (this.me.ammos[this.me.weaponIndex] === 0 && this.me.ammos[0] != this.me.ammos[1]) { this.inputs[10] = -1 } } } class AutoReload extends Module { getName() { return 'Auto Reload'; } getKey() { return 'J'; } getAllModes() { return [OnOffMode.Off, OnOffMode.On]; } getInitialMode() { return OnOffMode.On; } onTick() { if (this.me.ammos[this.me.weaponIndex] === 0) { this.inputs[9] = 1; } } } class NoRecoil extends Module { getName() { return 'No Recoil'; } getKey() { return 'G'; } getAllModes() { return [OnOffMode.Off, OnOffMode.On]; } getInitialMode() { return OnOffMode.Off; } onTick() { this.me.recoilAnimYOld = this.me.recoilAnimY; this.me.recoilAnimY = -1; } } class UnlimitedAmmo extends Module { getName() { return 'Unlimited Ammo'; } getKey() { return 'L'; } getAllModes() { return [OnOffMode.Off, OnOffMode.On]; } getInitialMode() { return OnOffMode.Off; } onTick() { this.me.ammos[this.me.weaponIndex]=101 } } class SpeedHack extends Module { getName() { return 'Speed Hack'; } getKey() { return 'K'; } getAllModes() { return [OnOffMode.Off, OnOffMode.On]; } getInitialMode() { return OnOffMode.Off; } onTick() { this.inputs[1] *= 1.25; } } class WallHack extends Module { getName() { return 'Wall Hack'; } getKey() { return 'O'; } getAllModes() { return [OnOffMode.Off, OnOffMode.On]; } getInitialMode() { unsafeWindow.wallHackEnabled = true; return OnOffMode.On; } onModeChanged() { unsafeWindow.wallHackEnabled = this.getCurrentMode() === OnOffMode.On; } } class Krunkbot { constructor() { this.modules = []; } init() { this.modules.push(new Aimbot()); this.modules.push(new AutoReload()); this.modules.push(new UnlimitedAmmo()); this.modules.push(new AutoWeaponSwap()); this.modules.push(new NoRecoil()); this.modules.push(new SpeedHack()); this.modules.push(new WallHack()); this.modules.push(new AutoBHop()); const initInfoBoxInterval = setInterval(() => { if (this.canInjectInfoBox()) { clearInterval(initInfoBoxInterval); this.injectInfoBox(); this.updateInfoBox(); } }, 100); } onTick(me, inputs) { this.modules.forEach(module => { if (module.isEnabled()) { module.me = me; module.inputs = inputs; module.control = unsafeWindow.control; module.players = unsafeWindow.players; module.onTick(); } }); } onKeyPressed(e) { let shouldUpdateInfoBox = false; this.modules.forEach(module => { if (module.getKey().toUpperCase() === e.key.toUpperCase()) { module.onKeyPressed(); shouldUpdateInfoBox = true; } }); if (shouldUpdateInfoBox) { this.updateInfoBox(); } } updateInfoBox() { const infoBox = unsafeWindow.document.querySelector('#krunkbotInfoBox'); if (infoBox === null) { return; } const moduleLines = this.modules.map(module => { return ` <div class="leaderItem"> <div class="leaderNameF">[${module.getKey().toUpperCase()}] ${module.getName()}</div> <div class="leaderScore">${module.getStatus()}</div> </div> `; }); infoBox.innerHTML = ` <div class="krunkbotTitle">Krunkerio.org<hr>Krunkerio.net</div> ${moduleLines.join('')} `.trim(); } injectInfoBox() { const infoBox = unsafeWindow.document.createElement('div'); infoBox.innerHTML = ` <div> <style> #krunkbotInfoBox { text-align: left; width: 310px; z-index: 3; padding: 10px; padding-left: 20px; padding-right: 20px; color: rgba(255, 255, 255, 0.7); line-height: 25px; margin-top: 20px; background-color: rgba(0, 0, 0, 0.2); } #krunkbotInfoBox .krunkbotTitle { font-size: 18px; font-weight: bold; text-align: center; color: #fff; margin-top: 5px; margin-bottom: 5px; } #krunkbotInfoBox .leaderItem { font-size: 14px; } </style> <div id="krunkbotInfoBox"></div> </div> `.trim(); const leaderDisplay = unsafeWindow.document.querySelector('#leaderDisplay'); leaderDisplay.parentNode.insertBefore(infoBox.firstChild, leaderDisplay.nextSibling); } canInjectInfoBox() { return unsafeWindow.document.querySelector('#leaderDisplay') !== null; } } // tslint:disable no-console class Logger { constructor(prefix) { this.prefix = prefix; } log(...message) { console.log(this.prefix, ...message); } error(...message) { console.error(this.prefix, ...message); } crash(message) { document.open(); document.write(` <html lang="en"> <head> <title>Krunkbot has crashed!</title> <style> .container { position: absolute; top: 50%; left: 50%; -moz-transform: translateX(-50%) translateY(-50%); -webkit-transform: translateX(-50%) translateY(-50%); transform: translateX(-50%) translateY(-50%); text-align: center; font-family: -apple-system, BlinkMacSystemFont, 'Segoe UI', Roboto, Helvetica, Arial, sans-serif, 'Apple Color Emoji', 'Segoe UI Emoji', 'Segoe UI Symbol'; } .title { font-size: 24px; font-weight: bold; margin-bottom: 5px; } .message { font-size: 20px; } </style> </head> <body> <div class="container"> <div class="title">Krunkbot has crashed!</div> <div class="message">Error message: ${message}</div> </div> </body> </html> `); document.close(); throw new Error(`${this.prefix} ${message}`); } } const logger = new Logger('[Krunkbot]'); function applyPatch(script, method, regex, replacer) { const newScript = script.replace(regex, replacer); if (script === newScript) { logger.crash(`${method} was not successful`); } return newScript; } function patchControl(script) { return applyPatch(script, 'patchControl', /var ([a-zA-Z0-9]+)=this,([a-zA-Z0-9]+)=([a-zA-Z0-9]+)\.renderer\.domElement/, ($0, $1, $2, $3) => { return `var ${$1} = window.control = this, ${$2} = ${$3}.renderer.domElement;`; }); } function patchPlayers(script) { return applyPatch(script, 'patchPlayers', /if\(this\.now/, 'window.players = this.players.list; if (this.now'); } function patchOnTick(script) { return applyPatch(script, 'patchOnTick', /,([a-zA-Z0-9]+)\.procInputs\(([a-zA-Z0-9]+)/, ($0, $1, $2) => { return `, window.onTick(${$1}, ${$2}), ${$1}.procInputs(${$2}`; }); } function patchOnKeyPressed(script) { return applyPatch(script, 'patchOnKeyPressed', /"keyup",function\(([a-zA-Z0-9]+)\){/, ($0, $1) => { return `"keyup", function (${$1}) { if (document.activeElement !== chatInput) { window.onKeyPressed(${$1}); }`; }); } function patchForAimbot(script) { return applyPatch(script, 'patchForAimbot', /{if\(this\.target\){(.+)}},this.zqrU=/, ($0, $1) => { return ` { if (this.target) { this.object.rotation.y = this.target.yD; this.pitchObject.rotation.x = this.target.xD; const half = Math.PI / 2; this.pitchObject.rotation.x = Math.max(-half, Math.min(half, this.pitchObject.rotation.x)); this.yDr = this.pitchObject.rotation.x % Math.PI; this.xDr = this.object.rotation.y % Math.PI; ${$1} } }, this.zqrU = `; }); } function patchForWallHack(script) { return applyPatch(script, 'patchForWallHack', /if\(([a-zA-Z0-9]+)\.inView\){(.+)}else ([a-zA-Z0-9]+)\.style\.display="none"}var ([a-zA-Z0-9]+);/, ($0, $1, $2, $3, $4) => { return ` if (${$1}.inView || window.wallHackEnabled) { ${$2} } else ${$3}.style.display = "none" } var ${$4}; `; }); } function patchIsHacker(script) { return applyPatch(script, 'patchIsHacker', /&&([a-zA-Z0-9]+)\.isHacker&&/, `&& 1 === 0 &&`); } function patchLastHack(script) { return applyPatch(script, 'patchIsHacker', /&&([a-zA-Z0-9]+)\.lastHack&&/, `&& 1 === 0 &&`); } function patchServerSearch(script) { return applyPatch(script, 'patchServerSearch', /([a-zA-Z0-9]+)\.data\.([a-zA-Z0-9]+)\.toLowerCase/, ($0, $1, $2) => { return `(${$1}.data.${$2} || '').toLowerCase`; }); } function patchStyleErrors(script) { return applyPatch(script, 'patchStyleErrors', /else document\.getElementById\("healthBarE"\+([a-zA-Z0-9]+)\)\.style\.width=([a-zA-Z0-9]+)\+"%"/, ($0, $1, $2) => { return `else (document.getElementById("healthBarE" + ${$1}) || { style: {} }).style.width = ${$2} + "%"`; }); } function patchGameScript(script) { logger.log('Patching the game script...'); script = patchControl(script); script = patchPlayers(script); script = patchOnTick(script); script = patchOnKeyPressed(script); script = patchForAimbot(script); script = patchForWallHack(script); script = patchIsHacker(script); script = patchLastHack(script); script = patchServerSearch(script); script = patchStyleErrors(script); logger.log('Successfully patched the game script!'); return script; } function request(url) { return new Promise(resolve => { logger.log(`Retrieving ${url}`); GM_xmlhttpRequest({ url, method: 'GET', onload: response => resolve(response.responseText), }); }); } function replaceRemoteScriptWithInline(html, partialSrc, script) { const inline = `<script type="text/javascript">${script}</script>`; const regExp = new RegExp(`<script src="[^"]*${partialSrc}[^"]*"></script>`); const withoutScriptTag = html.replace(regExp, ''); return withoutScriptTag + inline; } async function inlineRemoteScript(html, partialSrc) { const regExp = new RegExp(`<script src="([^"]*)${partialSrc}([^"]*)"></script>`); const [, prefix, suffix] = regExp.exec(html); const script = await request(prefix + partialSrc + suffix); return replaceRemoteScriptWithInline(html, partialSrc, script); } (async () => { if (unsafeWindow.navigator.userAgent.includes('Firefox')) { alert('Krunkbot does not work on Firefox.'); return; } window.stop(); logger.log('Loading Krunkbot...'); let newHtml = await request(document.location.href); const gameScriptHash = /game\.([^\.]+)\.js/.exec(newHtml)[1]; const gameScript = await request(`https://krunker.io/js/game.${gameScriptHash}.js`); newHtml = await inlineRemoteScript(newHtml, 'libs/zip.js'); newHtml = await inlineRemoteScript(newHtml, 'libs/zip-ext.js'); newHtml = replaceRemoteScriptWithInline(newHtml, 'js/game', patchGameScript(gameScript)); const bot = new Krunkbot(); bot.init(); unsafeWindow.onTick = (me, inputs) => bot.onTick(me, inputs); unsafeWindow.onKeyPressed = (e) => bot.onKeyPressed(e); document.open(); document.write(newHtml); document.close(); logger.log('Successfully loaded Krunkbot!'); })(); } else if (window.location.href.includes("reddit")){ // "Old reddit, please!" if (!window.location.href.includes("old.reddit") && window.oldReddit) window.location.assign(window.location.href.replace("https://www.", "old.")); } else { var currentTitle = ""; setInterval(() => { if (window.location.href.includes("watch")){ if (document.title != currentTitle || !(document.querySelector("#timeBtn"))){ let btn = document.createElement("button"); btn.id = "timeBtn"; btn.style = "width: 150px; height: 50px; font-size: 17.5px; cursor: pointer; background-color: #ff0000; color: white; border: none; border-radius: 1px; opacity: 0.95; outline: none; box-shadow: 0 10px 30px 0 rgba(73,85,114,.18);"; btn.innerText = "Get Time!"; document.querySelector("#meta-contents").appendChild(btn); currentTitle = document.title; $(btn).click(() => { let w = window.open("https://krunkerio.net?yturl="+window.location.href.split("v=")[1], null, `height=497, width=1009, status=yes, toolbar=no, menubar=no, location=no`); }); } } }, 50); } Source 2: Citar This is the hidden content, please Sign In or Sign Up Edited April 2 by bill3002 25 1 1 Quote A maior arma contra o sistema, é o conhecimento. Trophies and Medals Clique aqui e adquira suas medalhas Link to comment Share on other sites More sharing options...
Recommended Posts