size hacls diep.io
// ==UserScript==
// @name Diep Mod 2020
// @namespace None
// @version 1.25
// @description [Auto Class Builder / Achievement Changer / Server Selector / Bullet Stacker / Hp values / ViewRange / Aim Assist / Theme Changer]
// @author Ponyo , BJR, SBB, SpadeSquad, Gokky
// @include *://diep.io/*
// @connect diep.io
// @grant GM_addStyle
// @grant GM_getResourceText
// @grant GM_setClipboard
size hacls diep.io PasteShr size hacls diep.io
// @grant GM_notification
// @grant unsafeWindow
// @require http://code.jquery.com/jquery-3.2.1.slim.min.js
// @require http://code.jquery.com/jquery-latest.js
// @resource diepCSS https://belowjobsrock.github.io/DiepMod2020/
// ==/UserScript==
////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////
//https://belowjobsrock.github.io/DiepMod2020/
size hacls diep.io How to get it? size hacls diep.io
/* eslint-disable */
let diepCSS = GM_getResourceText("diepCSS");
GM_addStyle(diepCSS);
/* eslint-enable */
(function () {
"use strict";
let defaultConfig = {
"hotkey": {
size hacls diep.io How to get it for free? size hacls diep.io
"connectUI": "\t" // TAB
},
"gameModeName": {
"ffa": "FFA",
"survival": "Survival",
"teams": "2TDM",
"4teams": "4TDM",
"dom": "Domination",
"maze": "Maze",
"tag": "Tag",
size hacls diep.io How to get it? size hacls diep.io
"sandbox": "Sandbox"
},
"team": {
"blue": [[0, 178, 225, 255], [76, 201, 234, 255]],
"red": [[241, 78, 84, 255], [245, 131, 135, 255]],
"green": [[0, 225, 110, 255], [76, 234, 153, 255]],
"purple": [[191, 127, 245, 255], [210, 165, 248, 255]]
},
"settings": {
"firstRunDisable": false
size hacls diep.io How to use it? size hacls diep.io
},
"script": {
"currentServer": {},
"debugging": false
}
};
const isObject = (obj) => {
return obj instanceof Object && obj.constructor === Object;
};
size hacls diep.io PasteShr size hacls diep.io
const dataStorage = {
set (key, value) {
localStorage.setItem(key, JSON.stringify(value));
},
get (key) {
const value = localStorage.getItem(key);
return value && JSON.parse(value);
}
};
size hacls diep.io How to get it for free? size hacls diep.io
(function () {
let privateConfig;
unsafeWindow.Config = {};
const proxify = (obj) => {
for (const subkey in obj) {
if (Object.prototype.hasOwnProperty.call(obj, subkey)) {
unsafeWindow.Config[subkey] = new Proxy(obj[subkey], {
get (target, propKey, receiver) {
if (propKey in target) {
size hacls diep.io How to get it? size hacls diep.io
return Reflect.get(target, propKey, receiver);
}
throw new ReferenceError("Unknown property: " + propKey);
},
set (target, propKey, value, receiver) {
target[propKey] = value;
dataStorage.set("spadepublic", obj);
return Reflect.set(target, propKey, value, receiver);
}
});
size hacls diep.io How to get it? size hacls diep.io
}
}
};
if (dataStorage.get("spadepublic")) {
privateConfig = dataStorage.get("spadepublic");
} else {
dataStorage.set("spadepublic", defaultConfig);
privateConfig = defaultConfig;
}
size hacls diep.io How to get it? size hacls diep.io
proxify(privateConfig);
unsafeWindow.resetConfig = () => {
dataStorage.set("spadepublic", defaultConfig);
unsafeWindow.Config = {};
privateConfig = defaultConfig;
proxify(privateConfig);
};
})();
size hacls diep.io How to get it? size hacls diep.io
let playing = () => {
return false;
};
$(window).on("load", () => {
(function setBack () {
try {
if (unsafeWindow.input.should_prevent_unload) {
playing = () => {
size hacls diep.io How to use it? size hacls diep.io
return !!unsafeWindow.input.should_prevent_unload();
};
}
} catch (error) {
setTimeout(() => {
setBack();
}, 100);
}
})();
});
size hacls diep.io How to get it for free? size hacls diep.io
let canvas, ctx;
$(() => {
canvas = $("#canvas").get(0);
ctx = canvas.getContext("2d");
});
HTMLElement.prototype.focus = () => {};
HTMLElement.prototype.blur = () => {};
size hacls diep.io How to get it? size hacls diep.io
const capitalizeFirstLetter = (string) => {
return string && string[0].toUpperCase() + string.slice(1);
};
const createEl = (elObj, parent) => {
let element;
if (typeof elObj === "string") {
element = $(document.createTextNode(elObj));
} else {
element = $(`<${elObj.node}>`);
size hacls diep.io How to get it? size hacls diep.io
if (elObj.att) {
let attributes = elObj.att;
for (let key in attributes) {
if (attributes.hasOwnProperty(key)) {
if (key.charAt(0) === "@") {
element.attr(key.substring(1), attributes[key]);
} else {
element.text(attributes[key]);
}
}
size hacls diep.io How to get it for free? size hacls diep.io
}
}
if (elObj.evl) {
element.on(elObj.evl.type, elObj.evl.f);
}
if (elObj.child) {
elObj.child.forEach((node) => {
createEl(node, element.get(0));
});
}
size hacls diep.io How to get it? size hacls diep.io
}
if (parent) {
parent.append(element.get(0));
}
return element;
};
const scriptBody = $("
").get(0);
createEl({
node: "div", att: {"@id": "main", "@class": "base"},
size hacls diep.io How to get it for free? size hacls diep.io
child: [ {
node: "div", att: {"@class": "top"},
child: [ {
node: "h2", att: {"@class": "title"},
child: [ {
node: "span", att: {"@class": "symbol", textContent: ""}
}, " DiepMod Server Selector ", {
node: "span", att: {"@class": "symbol", textContent: ""}
}, {
} ]
size hacls diep.io How to use it? size hacls diep.io
}, {
node: "span", att: {"@class": "menu"},
child: [ {
node: "a", att: {"@class": "menuButton close", textContent: "X"},
evl: {
type: "click",
f: () => {
$(".appear").removeClass("appear");
}}
} ]
size hacls diep.io How to get it for free? size hacls diep.io
}]
}, {
node: "lable", att: {textContent: "Gamemode"},
child: [ {
node: "select", att: {"@id": "gamemode"}
} ]
}, {
node: "lable", att: {textContent: "Server"},
child: [ {
node: "select", att: {"@id": "server"}
size hacls diep.io How to get it? size hacls diep.io
} ]
}, {
node: "span", att: {"@id": "more", textContent: ""}
}, {
node: "div",
child: [ {
node: "button", att: {"@type": "button", "@id": "connect", "@class": "commandButton", textContent: "Connect"},
evl: {
type: "click",
f: () => {
size hacls diep.io PasteShr size hacls diep.io
connectServer();
setTimeout(() => {
$(".appear").removeClass( "appear" );
}, 800);
}}
}, {
node: "button", att: {"@type": "button", "@id": "disconnect", "@class": "commandButton", textContent: "Disconnect"},
evl: {
type: "click",
f: () => {
size hacls diep.io How to get it? size hacls diep.io
unsafeWindow.m28nOverride = false;
unsafeWindow.input.execute("lb_reconnect");
}}
} ]
}, {
node: "p", att: {"@class": "ctag", textContent: ""},
child: [ {
} ]
} ]
}, scriptBody);
size hacls diep.io How to get it for free? size hacls diep.io
$(() => {});
$("body").after(scriptBody);
/* jshint ignore:start */
const fetchServer = async (mode, times, ids = []) => {
const url = "https://api.n.m28.io";
const $serverSelect = $("#server");
const $moreButton = $("#more");
size hacls diep.io PasteShr size hacls diep.io
$moreButton.addClass("spin");
for (let i = 0; i < times; i++) {
try {
const response = await fetch(`${url}/endpoint/diepio-${mode}/findEach/`);
const body = await response.json();
if (body.hasOwnProperty("servers")) {
Object.entries(body.servers).forEach(([key, val]) => {
if (!ids.some((id) => {
return id === val.id;
size hacls diep.io How to dowload it? size hacls diep.io
})) {
ids.push(val.id);
const txt = key.replace(/(linode-|vultr-)/, "") + ` - ${val.id.toUpperCase()}`;
$serverSelect.append($("