Diep Tool S

I put the coordinates in the minimap xD

Tendrás que instalar una extensión para tu navegador como Tampermonkey, Greasemonkey o Violentmonkey si quieres utilizar este script.

You will need to install an extension such as Tampermonkey to install this script.

Necesitarás instalar una extensión como Tampermonkey o Violentmonkey para instalar este script.

Necesitarás instalar una extensión como Tampermonkey o Userscripts para instalar este script.

Necesitará instalar una extensión como Tampermonkey para instalar este script.

Necesitarás instalar una extensión para administrar scripts de usuario si quieres instalar este script.

(Ya tengo un administrador de scripts de usuario, déjame instalarlo)

Necesitará instalar una extensión como Stylus para instalar este estilo.

Necesitará instalar una extensión como Stylus para instalar este estilo.

Necesitará instalar una extensión como Stylus para instalar este estilo.

Necesitará instalar una extensión del gestor de estilos de usuario para instalar este estilo.

Necesitará instalar una extensión del gestor de estilos de usuario para instalar este estilo.

Necesitará instalar una extensión del gestor de estilos de usuario para instalar este estilo.

(Ya tengo un administrador de estilos de usuario, déjame instalarlo)

// ==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://greatest.deepsurf.us/scripts/433681-diepapi/code/diepAPI.js?version=1041213
// @grant        none
// @namespace https://greatest.deepsurf.us/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();
    });
});