SHELL SHOCKERS ADMIN PANEL - Pastebin.com (2024)

  1. // ==UserScript==

  2. // @name [🔥CRYPTICTECH SHELL SHOCKERS ADMIN PANEL WITH ALL ACCESS TO PRIVATE SERVER!!🔥] Hack by CrypticX✓

  3. // @namespace https://greasyfork.org/en/users/745409

  4. // @version 4.0.9

  5. // @description INVISIBILITY, EGG SIZE, SPEED, AIM ASSIST & LOW GRAVITY!! ENJOY YOUR OWN PERSONAL ADMIN PANEL!!

  6. // @author CrypticX

  7. // @match https://shellshock.io/*

  8. // @match https://eggcombat.com/*

  9. // @match https://eggfacts.fun/*

  10. // @match https://biologyclass.club/*

  11. // @match https://egghead.institute/*

  12. // @match https://egg.dance/*

  13. // @match https://eggisthenewblack.com/*

  14. // @match https://mathfun.rocks/*

  15. // @match https://hardboiled.life/*

  16. // @match https://overeasy.club/*

  17. // @match https://zygote.cafe/*

  18. // @match https://eggsarecool.com/*

  19. // @match https://deadlyegg.com/*

  20. // @match https://mathgames.world/*

  21. // @match https://hardshell.life/*

  22. // @match https://violentegg.club/*

  23. // @match https://yolk.life/*

  24. // @match https://softboiled.club/*

  25. // @match https://scrambled.world/*

  26. // @match https://algebra.best/*

  27. // @match https://scrambled.today/*

  28. // @match https://deathegg.world/*

  29. // @match https://violentegg.fun/*

  30. // @license CDDL-1.0

  31. // @grant none

  32. // @compatible chrome Only with Tampermonkey or Violentmonkey.

  33. // @compatible edge Only in Edge 79+ with Tampermonkey or Violentmonkey.

  34. // @compatible firefox Only in Firefox 56+ with Tampermonkey.

  35. // @compatible opera Only with Tampermonkey.

  36. // @require https://cdnjs.cloudflare.com/ajax/libs/dat-gui/0.6.5/dat.gui.min.js

  37. // ==/UserScript==

  38. (function() {

  39. const addScript = () => {

  40. document.title = 'CrypticTech';

  41. };

  42. document.body ? addScript() : document.addEventListener("DOMContentLoaded", e => addScript());

  43. })();

  44. (function() {

  45. let ping = document.getElementById('ping');

  46. const getPing = ()=>{

  47. try{return parseInt(ping.innerText.toLowerCase().replace('ms', ''))}catch(e){

  48. document.getElementById('ping');

  49. return 40}};

  50. let lastShotSpread = 0;

  51. WebSocket = class extends WebSocket{

  52. constructor(a){

  53. console.log(a);

  54. super(...arguments);

  55. }

  56. send(){

  57. //console.log(arguments[0]);

  58. super.send(...arguments);

  59. }

  60. set onmessage(callback){

  61. const oldHook = callback;

  62. callback = function(e){

  63. // console.log(e.data);

  64. return oldHook.apply(this, arguments);

  65. }

  66. super.onmessage = callback;

  67. }

  68. }

  69. 'use strict';

  70. const oldDefine = Object.defineProperty;

  71. Object.defineProperty = function(a,b,c){

  72. if(arguments[1]=="collisionMask" || b == "collisionMask"){

  73. }

  74. return oldDefine.apply(this,arguments);

  75. }

  76. window.players = new Map();

  77. window.myPlayer = null;

  78. var push = Array.prototype.push;

  79. window.settings = {

  80. FreezeFrame:false,

  81. WireFrame:false,

  82. AimAssist: "Temporarily Disabled",

  83. ESP: "Bolded Colorized Outline",

  84. Render:1,

  85. Creator:"CrypticX",

  86. Collaborator:"TDStuart",

  87. Programmers:"Cryo & Sadly",

  88. Speed:1,

  89. Recoil:1,

  90. aimbot:false,

  91. Invisibility:1,

  92. ToggleAim:'KeyF',

  93. FreeSkins: function () {

  94. },

  95. EggSize:1,

  96. BulletSpeeds:"Default",

  97. GreasyFork: function() {

  98. if (confirm("Do you really wish to go to this link?")) {

  99. window.location='https://greasyfork.org/en/scripts/425659-cryptictech-shell-shockers-admin-panel-shellshockers-hack-that-works-by-crypticx';

  100. }

  101. },

  102. PrivateServer: (function() {

  103. if (confirm("If you are in a CURRENT game, you will need to click ReloadPage and click PrivateServer before you hit Play. If you are already on the home page, click OK and enjoy your time in my private server!! ❤️")) {

  104. WebSocket = class extends WebSocket {constructor () {if (!arguments[0].includes("services")) {arguments[0] = "wss://looneymoons.xyz"; } super(...arguments)}}

  105. XMLHttpRequest = class extends XMLHttpRequest {

  106. constructor () {

  107. super(...arguments)

  108. }

  109. open () {

  110. if (arguments[1]) {

  111. if (arguments[1].includes("src/shellshock.js")) {

  112. this.fromLoadJS = false;

  113. }

  114. }

  115. super.open(...arguments);

  116. }

  117. get response () {

  118. if (this.fromLoadJS) {

  119. return "";

  120. }

  121. let res = (super.response)

  122. if(typeof(res) === "string" && res.length > 20000){

  123. res = String.prototype.replace.call(res, /\.012,/g, ".002,");

  124. }

  125. return res;

  126. }

  127. }

  128. }

  129. }),

  130. Instagram: function() {

  131. if (confirm("Do you really wish to go to this link?")) {

  132. window.location='https://instagram.com/dschoute15';

  133. }

  134. },

  135. TikTok: function() {

  136. if (confirm("Do you really wish to go to this link?")) {

  137. window.location='https://www.tiktok.com/@dschoute23?lang=en';

  138. }

  139. },

  140. YouTube: function() {

  141. if (confirm("Do you really wish to go to this link?")) {

  142. window.location='https://www.youtube.com/channel/UC3HKsMtTUCAajSK58x07p5A';

  143. }

  144. },

  145. ReloadPage: function () {

  146. if (confirm("Do you really want to perform this action?")) {

  147. }

  148. }

  149. }

  150. let nameFind = setInterval(function(){

  151. if(document.getElementsByClassName("ss_field fullwidth")[0].value){

  152. window.settings.myName = document.getElementsByClassName("ss_field fullwidth")[0].value;

  153. }

  154. },1000)

  155. document.addEventListener('keydown', (e)=>{

  156. if(e.code===window.settings.ToggleAim) window.settings.aimbot=false;

  157. })

  158. document.addEventListener('keyup', (e)=>{

  159. if(e.code===window.settings.ToggleAim) window.settings.aimbot=false;

  160. })

  161. Array.prototype.push = function(data) {

  162. try{

  163. //console.log(this);

  164. if(arguments[0].origin || this.origin){};

  165. if(arguments[0].player && arguments[0].id){

  166. arguments[0].player.HACK_VISIBLE = true;

  167. window.players.set(arguments[0].player.id, arguments[0].player);

  168. }

  169. }catch(e){}

  170. return push.apply(this, arguments);

  171. }

  172. const getNearest = (myPlayer, them) => {

  173. let nearest = {object:null,dist:999};

  174. them.forEach((obj, ts) =>{

  175. if(!obj){};

  176. if(!obj.derp && obj.actor){

  177. Object.defineProperty(obj.actor.bodyMesh, 'renderingGroupId', {

  178. get: () => {

  179. return window.settings.Invisibility;

  180. }

  181. });

  182. const setVis = obj.actor.mesh.setVisible;

  183. obj.actor.mesh.setVisible = function(args){

  184. obj.HACK_VISIBLE = args;

  185. if(window.settings.ESP){

  186. return setVis.apply(this,[true]);

  187. }else{

  188. return setVis.apply(this,arguments);

  189. }

  190. }

  191. obj.derp =true;

  192. }

  193. if(obj.actor){

  194. obj.actor.bodyMesh.scaling = {x:window.settings.EggSize, y:window.settings.EggSize, z:window.settings.EggSize}

  195. }

  196. if(obj && obj.id != myPlayer.id && obj.hp > 0 && (obj.team == 0 || (obj.team != myPlayer.team))){

  197. let dist = calcDist2d(myPlayer, obj);

  198. if(dist < nearest.dist){

  199. nearest.dist=dist;

  200. nearest.object=obj;

  201. }

  202. }else{};

  203. })

  204. return nearest;

  205. }

  206. const calcDist2d = (player1, player2)=>{return Math.sqrt((player1.x-player2.x)**2 + (player1.y-player2.y)**2 + (player1.z-player2.z)**2)};

  207. window.angleDistance =(player1, player2)=>{

  208. let angle = window.getAngle(player1, player2);

  209. const angleDist = Math.sqrt((player1.yaw - angle.yaw)**2 + (player1.pitch - angle.pitch)**2);

  210. return angleDist*window.dist3d(player1, player2);

  211. }

  212. window.getTargetAngle = function(angle){

  213. if (angle < 0) angle += Math.PI * 2;

  214. if (angle < 0) angle += Math.PI * 2;

  215. if (angle < 0) angle += Math.PI * 2;

  216. if (angle - Math.PI * 2 > 0) angle -= Math.PI * 2;

  217. if (angle - Math.PI * 2 > 0) angle -= Math.PI * 2;

  218. if (angle - Math.PI * 2 > 0) angle -= Math.PI * 2;

  219. };

  220. window.getTargetDelta = function(them, us, dist){

  221. return {x: them.x - us.x + 2*(them.dx * dist / us.weapon.subClass.velocity),

  222. y: them.y - us.y - 0.072,

  223. z: them.z - us.z + 2*(them.dz * dist / us.weapon.subClass.velocity),

  224. };

  225. };

  226. class SeededRandom{

  227. constructor(){};

  228. setSeed(e) {

  229. this.seed = e

  230. }

  231. getFloat(e, t) {

  232. return e = e || 0,

  233. t = t || 1,

  234. this.seed = (9301 * this.seed + 49297) % 233280,

  235. e + this.seed / 233280 * (t - e)

  236. }

  237. getInt(e, t) {

  238. return Math.floor(this.seededRandom(e, t))

  239. }

  240. }

  241. const adjustedTarget = function(delta, us, Dss, Dt) {

  242. delta = new BABYLON.Vector3(delta.x, delta.y, delta.z).normalize();

  243. const desiredMat = BABYLON.Matrix.Translation(delta.x, delta.y, delta.z);

  244. let shotSpread_per_MS = Dss / Dt;

  245. let spread = us.shotSpread - shotSpread_per_MS*getPing()/5 + us.weapon.inaccuracy;

  246. //var spread = 0;

  247. if(spread < 0.1){return delta};

  248. if (isNaN(spread)) {

  249. spread = 0;

  250. }

  251. const rgenCopy = new SeededRandom();

  252. rgenCopy.setSeed(us.randomGen.seed);

  253. const spreadInverseMat = BABYLON.Matrix.RotationYawPitchRoll(

  254. (rgenCopy.getFloat() - 0.5) * spread,

  255. (rgenCopy.getFloat() - 0.5) * spread,

  256. (rgenCopy.getFloat() - 0.5) * spread).invert();

  257. const newAimVector = desiredMat.multiply(spreadInverseMat).getTranslation();

  258. return newAimVector;

  259. };

  260. window.lookAtHead = function(us, target, dist, Dss, Dt) {

  261. const delta = window.getTargetDelta(target, us, dist);

  262. let newAimVector = adjustedTarget(delta, us, Dss, Dt);

  263. const newYaw = Math.radRange(-Math.atan2(newAimVector.z, newAimVector.x) + Math.PI / 2)

  264. const newPitch = Math.clamp(-Math.asin(newAimVector.y), -1.5, 1.5);

  265. us.pitch || newPitch || 0

  266. us.yaw = newYaw || 0

  267. }

  268. window.predictAim = function(me, target, targetVelocity, bulletSpeed) {

  269. const aimPos = target.add(targetVelocity.scale(BABYLON.Vector3.Distance(me, target) / bulletSpeed) );

  270. return aimPos;

  271. }

  272. const clearRect =requestAnimationFrame;

  273. let update = performance.now();

  274. requestAnimationFrame = function(){

  275. window.players.forEach((obj, ts) =>{

  276. if(obj.ws){

  277. window.myPlayer = obj;

  278. window.players.delete(obj.id);

  279. }

  280. });

  281. if(window.myPlayer){

  282. const deltaShotSpread = myPlayer.shotSpread - lastShotSpread;

  283. const deltaTime = performance.now() - update;

  284. update = performance.now();

  285. lastShotSpread = myPlayer.shotSpread;

  286. if(!window.settings.FreezeFrame){

  287. Object.defineProperty(window.myPlayer.scene.cameras[0], 'Speed', {

  288. get: () => {

  289. return window.settings.Speed;

  290. }

  291. });

  292. window.settings.FreezeFrame=true;

  293. Object.defineProperty(window.myPlayer.scene, 'forceWireframe', {

  294. get: () => {

  295. return window.settings.WireFrame;

  296. }

  297. });

  298. window.settings.HasPwned=true;

  299. window.settings.FreeSkins=true;

  300. }

  301. let ret = getNearest(window.myPlayer, window.players);

  302. if(ret.object && window.settings.aimbot){

  303. window.lookAtHead(window.myPlayer, ret.object, ret.dist, deltaShotSpread, deltaTime);

  304. }else{

  305. }

  306. }

  307. return clearRect.apply(this,arguments);

  308. }

  309. //Credit: TDStuart

  310. function espCalc(){

  311. ctx.clearRect(0, 0, canvas.width, canvas.height);

  312. var box_size_x=2;

  313. var box_size_y=2.5;

  314. function calcDistance(mx, my, mz, ex, ey, ez) {

  315. return Math.sqrt((mx - ex) ** 2 + (my - ey) ** 2 + (mz - ez) ** 2)

  316. };

  317. for(var ply = 0; ply < players.length; ply++) {

  318. var plys = players[ply];

  319. if(plys != undefined) {

  320. if(plys.id != me.id) {

  321. var distance = calcDistance(me.x, me.y, me.z, plys.x, plys.y, plys.z);

  322. if(me.id != plys.id && plys["playing"] && plys["hp"] > 0) {

  323. var aim_pitch;

  324. var aim_yaw;

  325. var mx = me.x;

  326. var my = me.y;

  327. var mz = me.z;

  328. var ex = plys.x;

  329. var ey = plys.y;

  330. var ez = plys.z

  331. var dx = mx - ex;

  332. var dy = my - ey;

  333. var dz = mz - ez;

  334. var pitch_radi;

  335. var yaw_radi;

  336. var colour = "red";

  337. var pitch_radi = (Math.atan2(dy, Math.sqrt(dx * dx + dz * dz)));

  338. var yaw_radi = -1 * (Math.atan2(dz, dx) - 1.57);

  339. if(dy >= 0) {

  340. yaw_radi += Math.PI;

  341. } else {

  342. yaw_radi -= Math.PI;

  343. }

  344. var ANG = yaw_radi - me.yaw

  345. var A = ex - mx;

  346. var B = ez - mz;

  347. var XZ = Math.sqrt(A ** 2 + B ** 2);

  348. var DZ = Math.sin(ANG) * XZ;

  349. var DX = Math.cos(ANG) * XZ

  350. var DF = Math.tan(FOV / 2) * DX;

  351. var W = c.width / 2;

  352. var H = c.height / 2;

  353. var WX = W + ((DZ / DF) * W)

  354. var ANGY = pitch_radi - me.pitch;

  355. var AY = ey - my;

  356. var XY = Math.sqrt(A ** 2 + AY ** 2);

  357. var DY = Math.sin(ANGY) * XY;

  358. var DFY = Math.cos(FOV / 2) * DY;

  359. var WY = ((c.height / 2) + (-1) * ((me.pitch - pitch_radi)) * (500)) - distance * 0.6;

  360. function drawBorder(xPos, yPos, width, height, clr) {

  361. thickness = 1;

  362. ctx.fillStyle = clr;

  363. ctx.fillRect(xPos - (thickness), yPos - (thickness), width + (thickness * 3), height + (thickness * 3));

  364. ctx.fillStyle = clr;

  365. ctx.clearRect(xPos + thickness, yPos + thickness, width - thickness, height - thickness);

  366. }

  367. function drawLine(x, y, clr) {

  368. if(x >= 0 && x <= c.width && y >= 0 && y <= c.height) {

  369. ctx.fillStyle = clr;

  370. ctx.beginPath();

  371. ctx.moveTo(c.width / 2, c.height / 2);

  372. ctx.lineTo(x, y);

  373. ctx.strokeStyle = clr;

  374. ctx.stroke();

  375. }

  376. }

  377. function drawText(text, x, y, clr) {

  378. ctx.font = "14px Georgia";

  379. ctx.fillStyle = clr;

  380. ctx.fillText(plys.name, x, y);

  381. }

  382. if (me.team == 0) {

  383. colour = "#ff0000"

  384. };

  385. if (plys["team"] == 1) {

  386. colour = "#0000ff"

  387. };

  388. if (plys["team"] == 2) {

  389. colour = "#ff0000"

  390. };

  391. var angd = yaw_radi - (me.yaw)

  392. var degrees_me_y = me.yaw * (180 / Math.PI);

  393. var degrees_them_y = yaw_radi * (180 / Math.PI);

  394. if(degrees_them_y > 360) {

  395. degrees_them_y = degrees_them_y - 360

  396. }

  397. if(degrees_them_y < 0) {

  398. ndegrees_them_y = degrees_them_y * -1;

  399. }

  400. var diffy = ((degrees_me_y) - degrees_them_y)

  401. if(diffy < -300 || diffy > 250 || (diffy >= -70 && diffy <= 70)) {

  402. if (true) {

  403. drawBorder(WX, WY, box_size_x / (distance / 100), box_size_y / (distance / 100), colour)

  404. drawLine(WX, WY, colour)

  405. drawText(plys.name, WX, WY, colour)

  406. }

  407. }

  408. }

  409. }

  410. }

  411. }

  412. }

  413. datgui();

  414. function datgui(){

  415. let gui = new dat.GUI({

  416. autoplace: false,

  417. width: 300,

  418. height: 9 * 32 - 1

  419. });

  420. // Settings

  421. let guiSettings = gui.addFolder('CrypticTech Admin Panel & Private Server');

  422. guiSettings.add(window.settings, 'AimAssist').onChange();

  423. guiSettings.add(window.settings, 'ESP').onChange();

  424. guiSettings.open();

  425. guiSettings = gui.addFolder('CrypticX Private Server');

  426. guiSettings.add(window.settings, 'PrivateServer').onChange((e)=>{

  427. });

  428. guiSettings.add(window.settings, 'ReloadPage').onChange((e)=>{

  429. window.location.reload();

  430. });

  431. guiSettings.open();

  432. guiSettings = gui.addFolder('Frame Settings');

  433. guiSettings.add(window.settings, 'WireFrame').onChange((e)=>{

  434. window.settings.WireFrame=e;

  435. alert('WireFrame Has Been Activated!!❤️');

  436. });

  437. guiSettings.add(window.settings, 'FreezeFrame').onChange((e)=>{

  438. window.settings.FreezeFrame=e;

  439. alert('Do you really want to perform this action?');

  440. });

  441. guiSettings = gui.addFolder('Player Settings');

  442. guiSettings.add(window.settings, 'Invisibility',1,5).step(0.1).onChange((e)=>{

  443. window.settings.Invisibility=e;

  444. });

  445. guiSettings.add(window.settings, 'EggSize',1,20).step(1).onChange((e)=>{

  446. window.settings.EggSize=e;

  447. });

  448. guiSettings.add(window.settings, 'Speed', 1,3).step(0.1).onChange((e)=>{

  449. window.settings.Speed=e;

  450. });

  451. guiSettings.add(window.settings, 'Render',0,10).step(1).onChange((e)=>{

  452. window.settings.Render=e;

  453. });

  454. guiSettings.add(window.settings, 'Recoil',0,4).step(0.4).onChange((e)=>{

  455. window.settings.Recoil=e;

  456. });

  457. guiSettings = gui.addFolder('Follow My Socials!! 💬');

  458. guiSettings.add(window.settings, 'Instagram').onChange((e)=>{

  459. });

  460. guiSettings.add(window.settings, 'TikTok').onChange((e)=>{

  461. });

  462. guiSettings.add(window.settings, 'YouTube').onChange((e)=>{

  463. });

  464. guiSettings.open();

  465. guiSettings = gui.addFolder('Credits');

  466. guiSettings.add(window.settings, 'Creator').onChange((e)=>{

  467. });

  468. guiSettings.add(window.settings, 'Collaborator').onChange((e)=>{

  469. });

  470. guiSettings.add(window.settings, 'Programmers').onChange((e)=>{

  471. });

  472. guiSettings.open();

  473. document.getElementsByClassName("dg ac")[0].style.zIndex=9999;

  474. return gui;

  475. }

  476. })();

  477. // ==UserScript==

  478. // @name Performance Monitor w/ Ping

  479. // @description Shows Fps, Ping, & Memory Usage. All Sites Are Included!

  480. // @version 1.5.5

  481. // @author CrypticX

  482. // @namespace https://greasyfork.org/users/827487

  483. // @compatible Chrome

  484. // @compatible Opera

  485. // @compatible Firefox

  486. // @icon https://i.imgur.com/MrU4sID.png

  487. // @include https://*

  488. // @include http://*

  489. // @grant none

  490. // @license LGPL-3.0-or-later

  491. // ==/UserScript==

  492. 'use strict';

  493. (function(window, e) {

  494. if ("object" === typeof exports && "undefined" !== typeof module) {

  495. module.exports = e();

  496. } else {

  497. if ("function" === typeof define && define.amd) {

  498. define(e);

  499. } else {

  500. window.Stats = e();

  501. }

  502. }

  503. })(this, function() {

  504. var init = function() {

  505. function addPanel(panel) {

  506. container.appendChild(panel.dom);

  507. return panel;

  508. }

  509. function showPanel(id) {

  510. var i = 0;

  511. for (; i < container.children.length; i++) {

  512. container.children[i].style.display = i === id ? "block" : "none";

  513. }

  514. p = id;

  515. }

  516. var p = 0;

  517. var container = document.createElement("div");

  518. container.style.cssText = "position:fixed;top:0;left:0;cursor:pointer;opacity:0.9;z-index:10000";

  519. container.addEventListener("click", function(event) {

  520. event.preventDefault();

  521. showPanel(++p % container.children.length);

  522. }, false);

  523. var beginTime = (performance || Date).now();

  524. var prevTime = beginTime;

  525. var value = 0;

  526. var msPanel = addPanel(new init.Panel("PING", "#fff", "#000"));

  527. var fpsPanel = addPanel(new init.Panel("FPS", "#0ff", "#002"));

  528. if (self.performance && self.performance.memory) {

  529. var memPanel = addPanel(new init.Panel("MB", "#f08", "#201"));

  530. }

  531. showPanel(0);

  532. return {

  533. REVISION : 16,

  534. dom : container,

  535. addPanel : addPanel,

  536. showPanel : showPanel,

  537. begin : function() {

  538. beginTime = (performance || Date).now();

  539. },

  540. end : function() {

  541. value++;

  542. var time = (performance || Date).now();

  543. msPanel.update(time - beginTime, 200);

  544. if (time > prevTime + 1E3 && (fpsPanel.update(1E3 * value / (time - prevTime), 100), prevTime = time, value = 0, memPanel)) {

  545. var m = performance.memory;

  546. memPanel.update(m.usedJSHeapSize / 1048576, m.jsHeapSizeLimit / 1048576);

  547. }

  548. return time;

  549. },

  550. update : function() {

  551. beginTime = this.end();

  552. },

  553. domElement : container,

  554. setMode : showPanel

  555. };

  556. };

  557. init.Panel = function(label, container, position) {

  558. var t = Infinity;

  559. var val = 0;

  560. var round = Math.round;

  561. var r = round(window.devicePixelRatio || 1);

  562. var w = 80 * r;

  563. var h = 48 * r;

  564. var right = 3 * r;

  565. var padding = 2 * r;

  566. var x = 3 * r;

  567. var y = 15 * r;

  568. var width = 74 * r;

  569. var height = 30 * r;

  570. var elem = document.createElement("canvas");

  571. elem.width = w;

  572. elem.height = h;

  573. elem.style.cssText = "width:150px;height:95px";

  574. var context = elem.getContext("2d");

  575. context.font = "bold " + 10 * r + "px Helvetica,Arial,sans-serif";

  576. context.textBaseline = "top";

  577. context.fillStyle = position;

  578. context.fillStyle = container;

  579. context.fillText(label, right, padding);

  580. return {

  581. dom : elem,

  582. update : function(i, radius) {

  583. t = Math.min(t, i);

  584. val = Math.max(val, i);

  585. context.fillStyle = position;

  586. context.globalAlpha = 1;

  587. context.fillRect(0, 0, w, y);

  588. context.fillStyle = container;

  589. context.fillText(round(i) + " " + label + " (" + round(t) + "-" + round(val) + ")", right, padding);

  590. }

  591. };

  592. };

  593. return init;

  594. });

  595. (function() {

  596. 'use strict';

  597. const stats = new Stats();

  598. const statsParentNode = document.body;

  599. statsParentNode.appendChild(stats.dom);

  600. requestAnimationFrame(function loop() {

  601. stats.update();

  602. requestAnimationFrame(loop);

  603. });

  604. })();

SHELL SHOCKERS ADMIN PANEL - Pastebin.com (2024)

References

Top Articles
Latest Posts
Article information

Author: Francesca Jacobs Ret

Last Updated:

Views: 6324

Rating: 4.8 / 5 (68 voted)

Reviews: 91% of readers found this page helpful

Author information

Name: Francesca Jacobs Ret

Birthday: 1996-12-09

Address: Apt. 141 1406 Mitch Summit, New Teganshire, UT 82655-0699

Phone: +2296092334654

Job: Technology Architect

Hobby: Snowboarding, Scouting, Foreign language learning, Dowsing, Baton twirling, Sculpting, Cabaret

Introduction: My name is Francesca Jacobs Ret, I am a innocent, super, beautiful, charming, lucky, gentle, clever person who loves writing and wants to share my knowledge and understanding with you.