您需要先安装一个扩展,例如 篡改猴、Greasemonkey 或 暴力猴,之后才能安装此脚本。
您需要先安装一个扩展,例如 篡改猴 或 暴力猴,之后才能安装此脚本。
您需要先安装一个扩展,例如 篡改猴 或 暴力猴,之后才能安装此脚本。
您需要先安装一个扩展,例如 篡改猴 或 Userscripts ,之后才能安装此脚本。
您需要先安装一款用户脚本管理器扩展,例如 Tampermonkey,才能安装此脚本。
您需要先安装用户脚本管理器扩展后才能安装此脚本。
I put the coordinates in the minimap xD
// ==UserScript== // @name Diep Tool S // @name:en Diep Tool S // @description I put the coordinates in the minimap xD // @description:en I put the coordinates in the minimap xD // @version 1.0.0 // @author mememe // @match https://diep.io/* // @require https://gf.qytechs.cn/scripts/433681-diepapi/code/diepAPI.js?version=1041213 // @grant none // @namespace https://gf.qytechs.cn/users/914545 // ==/UserScript== 'use strict'; const { Vector } = window.diepAPI.core; const { scaling, player, game, minimap } = window.diepAPI.apis; const { backgroundOverlay } = window.diepAPI.tools; const ctx = backgroundOverlay.ctx; // Bases (width = 67 * 50) const blue_base = new Vector(-11150 + 1675, -11150 + 1675); const purple_base = new Vector(11150 - 1675, -11150 + 1675); const green_base = new Vector(-11150 + 1675, 11150 - 1675); const red_base = new Vector(11150 - 1675, 11150 - 1675); // Base Drones const danger_radius = new Vector(5250, 0); const attack_radius = new Vector(3800, 0); const locationContainer = document.createElement("div"); locationContainer.style = "pointer-events: none; position: fixed; top:10px; left:10px; font-family: Ubuntu; color: #FFFFFF; font-size: 30px;"; document.body.appendChild(locationContainer); (() => { "use strict"; const canvas = document.getElementById("canvas"); const ctx = canvas.getContext("2d"); class Arrow { constructor() { this.values = [ "IzAwMDAwMA==", "MA==", "MC4zNQ==", "TGVhZGVy", "cmVk" ]; this.context = CanvasRenderingContext2D.prototype; this.FindArrow(); } Hook(target, callback) { this.context[target] = new Proxy(this.context[target], { apply(type, _this, args) { callback(_this, args); return type.apply(_this, args); }, }); } FindArrow() { this.Hook("moveTo", (_this, args) => { if (_this.fillStyle == atob(this.values[0]) && _this.globalAlpha == atob(this.values[1])) { _this.globalAlpha = atob(this.values[2]); _this.fillStyle = atob(this.values[4]); } }); this.Hook("drawImage", (_this, args) => { if (_this.globalAlpha == atob(this.values[1])) { _this.globalAlpha = atob(this.values[2]); } }); } } new Arrow(); setInterval(() => { if (document.getElementById("loading").innerText == "") { setTimeout(() => { let g = [ "(" + player.position["x"] + "," + player.position["y"] + ")"] locationContainer.innerHTML = `<p>${g[0]}</p>`; }, 100); } }); })(); function drawZones() { ctx.save(); ctx.globalAlpha = 0.08; if (player.gamemode === '4teams') { let center; const radius1 = scaling.toCanvasUnits(danger_radius).x; const radius2 = scaling.toCanvasUnits(attack_radius).x; //blue center = scaling.toCanvasPos(blue_base); ctx.fillStyle = '#006480'; ctx.beginPath(); ctx.arc(center.x, center.y, radius1, 0, 2 * Math.PI); ctx.fill(); ctx.fillStyle = '#ff6480'; ctx.beginPath(); ctx.arc(center.x, center.y, radius2, 0, 2 * Math.PI); ctx.fill(); //purple center = scaling.toCanvasPos(purple_base); ctx.fillStyle = '#644280'; ctx.beginPath(); ctx.arc(center.x, center.y, radius1, 0, 2 * Math.PI); ctx.fill(); ctx.fillStyle = '#ff4280'; ctx.beginPath(); ctx.arc(center.x, center.y, radius2, 0, 2 * Math.PI); ctx.fill(); //green center = scaling.toCanvasPos(green_base); ctx.fillStyle = '#00803e'; ctx.beginPath(); ctx.arc(center.x, center.y, radius1, 0, 2 * Math.PI); ctx.fill(); ctx.fillStyle = '#ff803e'; ctx.beginPath(); ctx.arc(center.x, center.y, radius2, 0, 2 * Math.PI); ctx.fill(); //red center = scaling.toCanvasPos(red_base); ctx.fillStyle = '#963033'; ctx.beginPath(); ctx.arc(center.x, center.y, radius1, 0, 2 * Math.PI); ctx.fill(); ctx.fillStyle = '#ff3033'; ctx.beginPath(); ctx.arc(center.x, center.y, radius2, 0, 2 * Math.PI); ctx.fill(); const canvas = document.getElementById("canvas"); let minictx = canvas.getContext("2d"); let mmsizecut_x = minimap.minimapDim["x"] / 5 let mmsizecut_y = minimap.minimapDim["y"] /5 minictx.textBaseline = 'center'; minictx.textAlign = 'center'; minictx.beginPath(); minictx.fillStyle = "#000000"; // A1 minictx.rect(minimap.minimapPos["x"], minimap.minimapPos["y"], mmsizecut_x , mmsizecut_y); minictx.fillText("A1", minimap.minimapPos["x"] + mmsizecut_x / 2, minimap.minimapPos["y"] + mmsizecut_y / 2); // A2 minictx.rect(minimap.minimapPos["x"] + mmsizecut_x, minimap.minimapPos["y"], mmsizecut_x , mmsizecut_y); minictx.fillText("A2", minimap.minimapPos["x"] + mmsizecut_x + mmsizecut_x / 2, minimap.minimapPos["y"] + mmsizecut_y / 2); // A3 minictx.rect(minimap.minimapPos["x"] + 2 * mmsizecut_x, minimap.minimapPos["y"], mmsizecut_x , mmsizecut_y); minictx.fillText("A3", minimap.minimapPos["x"] + 2 * mmsizecut_x + mmsizecut_x / 2, minimap.minimapPos["y"] + mmsizecut_y / 2); // A4 minictx.rect(minimap.minimapPos["x"] + 3 * mmsizecut_x, minimap.minimapPos["y"], mmsizecut_x , mmsizecut_y); minictx.fillText("A4", minimap.minimapPos["x"] + 3 * mmsizecut_x + mmsizecut_x / 2, minimap.minimapPos["y"] + mmsizecut_y / 2); // A5 minictx.rect(minimap.minimapPos["x"] + 4 * mmsizecut_x, minimap.minimapPos["y"], mmsizecut_x , mmsizecut_y); minictx.fillText("A5", minimap.minimapPos["x"] + 4 * mmsizecut_x + mmsizecut_x / 2, minimap.minimapPos["y"] + mmsizecut_y / 2); // B1 minictx.rect(minimap.minimapPos["x"], minimap.minimapPos["y"] + mmsizecut_y, mmsizecut_x , mmsizecut_y); minictx.fillText("B1", minimap.minimapPos["x"] + mmsizecut_x / 2, minimap.minimapPos["y"] + mmsizecut_y + mmsizecut_y / 2); // B2 minictx.rect(minimap.minimapPos["x"] + mmsizecut_x, minimap.minimapPos["y"] + mmsizecut_y, mmsizecut_x , mmsizecut_y); minictx.fillText("B2", minimap.minimapPos["x"] + mmsizecut_x + mmsizecut_x / 2, minimap.minimapPos["y"] + mmsizecut_y + mmsizecut_y / 2); // B3 minictx.rect(minimap.minimapPos["x"] + 2 * mmsizecut_x, minimap.minimapPos["y"] + mmsizecut_y, mmsizecut_x , mmsizecut_y); minictx.fillText("B3", minimap.minimapPos["x"] + 2 * mmsizecut_x + mmsizecut_x / 2, minimap.minimapPos["y"] + mmsizecut_y + mmsizecut_y / 2); // B4 minictx.rect(minimap.minimapPos["x"] + 3 * mmsizecut_x, minimap.minimapPos["y"] + mmsizecut_y, mmsizecut_x , mmsizecut_y); minictx.fillText("B4", minimap.minimapPos["x"] + 3 * mmsizecut_x + mmsizecut_x / 2, minimap.minimapPos["y"] + mmsizecut_y + mmsizecut_y / 2); // B5 minictx.rect(minimap.minimapPos["x"] + 4 * mmsizecut_x, minimap.minimapPos["y"] + mmsizecut_y, mmsizecut_x , mmsizecut_y); minictx.fillText("B5", minimap.minimapPos["x"] +4 * mmsizecut_x + mmsizecut_x / 2, minimap.minimapPos["y"] + mmsizecut_y + mmsizecut_y / 2); // C1 minictx.rect(minimap.minimapPos["x"], minimap.minimapPos["y"] + 2 * mmsizecut_y, mmsizecut_x , mmsizecut_y); minictx.fillText("C1", minimap.minimapPos["x"] + mmsizecut_x / 2, minimap.minimapPos["y"] + 2 * mmsizecut_y + mmsizecut_y / 2); // C2 minictx.rect(minimap.minimapPos["x"] + mmsizecut_x, minimap.minimapPos["y"] + 2 *mmsizecut_y, mmsizecut_x , mmsizecut_y); minictx.fillText("C2", minimap.minimapPos["x"] + mmsizecut_x + mmsizecut_x / 2, minimap.minimapPos["y"] + 2 * mmsizecut_y + mmsizecut_y / 2); // C3 minictx.rect(minimap.minimapPos["x"] + 2 * mmsizecut_x, minimap.minimapPos["y"] + 2 *mmsizecut_y, mmsizecut_x , mmsizecut_y); minictx.fillText("C3", minimap.minimapPos["x"] + 2 * mmsizecut_x + mmsizecut_x / 2, minimap.minimapPos["y"] + 2 * mmsizecut_y + mmsizecut_y / 2); // C4 minictx.rect(minimap.minimapPos["x"] + 3 * mmsizecut_x, minimap.minimapPos["y"] + 2 *mmsizecut_y, mmsizecut_x , mmsizecut_y); minictx.fillText("C4", minimap.minimapPos["x"] + 3 * mmsizecut_x + mmsizecut_x / 2, minimap.minimapPos["y"] + 2 * mmsizecut_y + mmsizecut_y / 2); // C5 minictx.rect(minimap.minimapPos["x"] + 4 * mmsizecut_x, minimap.minimapPos["y"] + 2 *mmsizecut_y, mmsizecut_x , mmsizecut_y); minictx.fillText("C5", minimap.minimapPos["x"] + 4 * mmsizecut_x + mmsizecut_x / 2, minimap.minimapPos["y"] + 2 * mmsizecut_y + mmsizecut_y / 2); // D1 minictx.rect(minimap.minimapPos["x"], minimap.minimapPos["y"] + 3 * mmsizecut_y, mmsizecut_x , mmsizecut_y); minictx.fillText("D1", minimap.minimapPos["x"] + mmsizecut_x / 2, minimap.minimapPos["y"] + 3 * mmsizecut_y + mmsizecut_y / 2); // D2 minictx.rect(minimap.minimapPos["x"] + mmsizecut_x, minimap.minimapPos["y"] + 3 * mmsizecut_y, mmsizecut_x , mmsizecut_y); minictx.fillText("D2", minimap.minimapPos["x"] + mmsizecut_x + mmsizecut_x / 2, minimap.minimapPos["y"] + 3 * mmsizecut_y + mmsizecut_y / 2); // D3 minictx.rect(minimap.minimapPos["x"] + 2 * mmsizecut_x, minimap.minimapPos["y"] + 3 * mmsizecut_y, mmsizecut_x , mmsizecut_y); minictx.fillText("D3", minimap.minimapPos["x"] + 2 * mmsizecut_x + mmsizecut_x / 2, minimap.minimapPos["y"] + 3 * mmsizecut_y + mmsizecut_y / 2); // D4 minictx.rect(minimap.minimapPos["x"] + 3 * mmsizecut_x, minimap.minimapPos["y"] + 3 * mmsizecut_y, mmsizecut_x , mmsizecut_y); minictx.fillText("D4", minimap.minimapPos["x"] + 3 * mmsizecut_x + mmsizecut_x / 2, minimap.minimapPos["y"] + 3 * mmsizecut_y + mmsizecut_y / 2); // D5 minictx.rect(minimap.minimapPos["x"] + 4 * mmsizecut_x, minimap.minimapPos["y"] + 3 * mmsizecut_y, mmsizecut_x , mmsizecut_y); minictx.fillText("D5", minimap.minimapPos["x"] + 4 * mmsizecut_x + mmsizecut_x / 2, minimap.minimapPos["y"] + 3 * mmsizecut_y + mmsizecut_y / 2); // E1 minictx.rect(minimap.minimapPos["x"], minimap.minimapPos["y"] + 4 * mmsizecut_y, mmsizecut_x , mmsizecut_y); minictx.fillText("E1", minimap.minimapPos["x"] + mmsizecut_x / 2, minimap.minimapPos["y"] + 4 * mmsizecut_y + mmsizecut_y / 2); // E2 minictx.rect(minimap.minimapPos["x"] + mmsizecut_x, minimap.minimapPos["y"] + 4 * mmsizecut_y, mmsizecut_x , mmsizecut_y); minictx.fillText("E2", minimap.minimapPos["x"] + mmsizecut_x + mmsizecut_x / 2, minimap.minimapPos["y"] + 4 * mmsizecut_y + mmsizecut_y / 2); // E3 minictx.rect(minimap.minimapPos["x"] + 2 * mmsizecut_x, minimap.minimapPos["y"] + 4 * mmsizecut_y, mmsizecut_x , mmsizecut_y); minictx.fillText("E3", minimap.minimapPos["x"] + 2 * mmsizecut_x + mmsizecut_x / 2, minimap.minimapPos["y"] + 4 * mmsizecut_y + mmsizecut_y / 2); // E4 minictx.rect(minimap.minimapPos["x"] + 3 * mmsizecut_x, minimap.minimapPos["y"] + 4 * mmsizecut_y, mmsizecut_x , mmsizecut_y); minictx.fillText("E4", minimap.minimapPos["x"] + 3 * mmsizecut_x + mmsizecut_x / 2, minimap.minimapPos["y"] + 4 * mmsizecut_y + mmsizecut_y / 2); // E5 minictx.rect(minimap.minimapPos["x"] + 4 * mmsizecut_x, minimap.minimapPos["y"] + 4 * mmsizecut_y, mmsizecut_x , mmsizecut_y); minictx.fillText("E5", minimap.minimapPos["x"] + 4 * mmsizecut_x + mmsizecut_x / 2, minimap.minimapPos["y"] + 4 * mmsizecut_y + mmsizecut_y / 2); minictx.stroke() ; } else if (player.gamemode === 'teams') { let coords1; let coords2; //blue coords1 = scaling.toCanvasPos(new Vector(-11150, -11150)); coords2 = scaling.toCanvasPos(new Vector(-11150 + 5500, 11150)); ctx.fillStyle = '#006480'; ctx.fillRect(coords1.x, coords1.y, coords2.x - coords1.x, coords2.y - coords1.y); coords2 = scaling.toCanvasPos(new Vector(-11150 + 4150, 11150)); ctx.fillStyle = '#ff6480'; ctx.fillRect(coords1.x, coords1.y, coords2.x - coords1.x, coords2.y - coords1.y); //red coords1 = scaling.toCanvasPos(new Vector(11150, -11150)); coords2 = scaling.toCanvasPos(new Vector(11150 - 5500, 11150)); ctx.fillStyle = '#963033'; ctx.fillRect(coords1.x, coords1.y, coords2.x - coords1.x, coords2.y - coords1.y); coords2 = scaling.toCanvasPos(new Vector(11150 - 4150, 11150)); ctx.fillStyle = '#ff3033'; ctx.fillRect(coords1.x, coords1.y, coords2.x - coords1.x, coords2.y - coords1.y); } //pentagon nest let coords1; let coords2; coords1 = scaling.toCanvasPos(new Vector(-1115, -1115)); coords2 = scaling.toCanvasPos(new Vector(1115, 1115)); ctx.fillStyle = '#8aff69'; ctx.fillRect(coords1.x, coords1.y, coords2.x - coords1.x, coords2.y - coords1.y); ctx.restore(); } game.once('ready', () => { game.on('frame', () => { drawZones(); }); });
QingJ © 2025
镜像随时可能失效,请加Q群300939539或关注我们的公众号极客氢云获取最新地址