TagPro Highlight Own Ball

Highlights your own ball (optionally only after spawning)

このスクリプトの質問や評価の投稿はこちら通報はこちらへお寄せください。
// ==UserScript==
// @name         TagPro Highlight Own Ball
// @version      1.1
// @description  Highlights your own ball (optionally only after spawning)
// @author       Ko
// @include      http://tagpro-*.koalabeast.com:*
// @include      http://tagpro-*.koalabeast.com:*
// @include      http://tangent.jukejuice.com:*
// @include      http://tagpro-*.koalabeast.com/game
// @include      http://tagpro-*.koalabeast.com/game
// @include      http://tangent.jukejuice.com/game
// @include      http://*.newcompte.fr:*
// @license      MIT
// @namespace https://greasyfork.org/users/152992
// ==/UserScript==




////////////////////////////////////////////////////////////////////////////////////////////
//     ### --- OPTIONS --- ###                                                            //
////////////////////////////////////////////////////////////////////////////////////////  //
                                                                                      //  //
// This is the time (seconds) that the highlight should                               //  //
// be shown on the ball *after* respawning. Setting this                              //  //
// at 0 will make your ball highlighted forever.                                      //  //
const time = 0 ;                                                                      //  //
                                                                                      //  //
// Color of the highlight (seperate for red and blue balls)                           //  //
// All colors on this website are supported:                                          //  //
//     https://www.w3schools.com/colors/colors_hex.asp                                //  //
// Don't forget the "quotes"                                                          //  //
// If you do this wrong, the highlight will be black. Ugh.                            //  //
const red_color = "lightpink" ;                                                       //  //
const blue_color = "lightblue" ;                                                      //  //
                                                                                      //  //
// You can also use hexadecimal values for colors. Example:                           //  //
//     const red_color = 0xff0000;                                                    //  //
                                                                                      //  //
// The opacity of the highlight, between 0 and 1.                                     //  //
// If you choose 1, the real ball will be invisble,                                   //  //
// and only the color of the highlight will be visible.                               //  //
const alpha = 0.6 ;                                                                   //  //
                                                                                      //  //
// Want to highlight the ball you are spectating too?                                 //  //
// Change the next option to false ;                                                  //  //
const hide_while_spectating = true ;                                                  //  //
                                                                                      //  //
////////////////////////////////////////////////////////////////////////////////////////  //
//                                                     ### --- END OF OPTIONS --- ###     //
////////////////////////////////////////////////////////////////////////////////////////////






//////////////////////////////////////
// SCROLL FURTHER AT YOUR OWN RISK! //
//////////////////////////////////////






tagpro.ready(function(){

    var highlight = new PIXI.Graphics();

    function updateHighlight(attempt=0){
        // This function resets the color and ball to place the highlight on.
        // Usefull when switching teams, or looking at another ball while spectating.

        // 'you' could be your ball, OR the ball you are currently spectating.
        var you = tagpro.players[ tagpro.playerId ];

        if (!you || !you.sprites) return setTimeout(()=>updateHighlight(attempt+1),50);
        if (attempt > 60) return console.warn('TagPro Highlight Own Ball: Something went wrong. I can\'t show a highlight at the moment!');

        let color;
        if (you.team == 1) color = colors[red_color.toLowerCase()] || red_color;
        if (you.team == 2) color = colors[blue_color.toLowerCase()] || blue_color;


        highlight.beginFill( color , alpha ).drawCircle(20,20,19);

        // Adding the highlight to a ball,
        // will remove it from the previous one (if any)
        you.sprites.ball.addChild(highlight);

    }

    if (tagpro.playerId) updateHighlight();
    tagpro.socket.on('id',updateHighlight);

    var timeout;

    if (time) {

        tagpro.socket.on('p',function(p){
            p = p.u || p;

            for ( var player of p ) if (player.id == tagpro.playerId) {

                if (player.dead == false) {
                    highlight.visible = true;
                    clearTimeout(timeout);
                    timeout = setTimeout(()=> highlight.visible = false, time*1000 );
                }

                if (player.team) updateHighlight();

            }
        });
    }

    if (hide_while_spectating) {

        highlight.alpha = !tagpro.spectator && alpha;

        tagpro.socket.on('spectator', function(spectator) {
            highlight.alpha = !spectator && alpha;
            updateHighlight();
        });

    }



});









// List of color names

var colors = {"aliceblue":0xf0f8ff,
              "antiquewhite":0xfaebd7,
              "aqua":0x00ffff,
              "aquamarine":0x7fffd4,
              "azure":0xf0ffff,
              "beige":0xf5f5dc,
              "bisque":0xffe4c4,
              "black":0x000000,
              "blanchedalmond":0xffebcd,
              "blue":0x0000ff,
              "blueviolet":0x8a2be2,
              "brown":0xa52a2a,
              "burlywood":0xdeb887,
              "cadetblue":0x5f9ea0,
              "chartreuse":0x7fff00,
              "chocolate":0xd2691e,
              "coral":0xff7f50,
              "cornflowerblue":0x6495ed,
              "cornsilk":0xfff8dc,
              "crimson":0xdc143c,
              "cyan":0x00ffff,
              "darkblue":0x00008b,
              "darkcyan":0x008b8b,
              "darkgoldenrod":0xb8860b,
              "darkgray":0xa9a9a9,
              "darkgrey":0xa9a9a9,
              "darkgreen":0x006400,
              "darkkhaki":0xbdb76b,
              "darkmagenta":0x8b008b,
              "darkolivegreen":0x556b2f,
              "darkorange":0xff8c00,
              "darkorchid":0x9932cc,
              "darkred":0x8b0000,
              "darksalmon":0xe9967a,
              "darkseagreen":0x8fbc8f,
              "darkslateblue":0x483d8b,
              "darkslategray":0x2f4f4f,
              "darkslategrey":0x2f4f4f,
              "darkturquoise":0x00ced1,
              "darkviolet":0x9400d3,
              "deeppink":0xff1493,
              "deepskyblue":0x00bfff,
              "dimgray":0x696969,
              "dimgrey":0x696969,
              "dodgerblue":0x1e90ff,
              "firebrick":0xb22222,
              "floralwhite":0xfffaf0,
              "forestgreen":0x228b22,
              "fuchsia":0xff00ff,
              "gainsboro":0xdcdcdc,
              "ghostwhite":0xf8f8ff,
              "gold":0xffd700,
              "goldenrod":0xdaa520,
              "gray":0x808080,
              "grey":0x808080,
              "green":0x008000,
              "greenyellow":0xadff2f,
              "honeydew":0xf0fff0,
              "hotpink":0xff69b4,
              "indianred":0xcd5c5c,
              "indigo":0x4b0082,
              "ivory":0xfffff0,
              "khaki":0xf0e68c,
              "lavender":0xe6e6fa,
              "lavenderblush":0xfff0f5,
              "lawngreen":0x7cfc00,
              "lemonchiffon":0xfffacd,
              "lightblue":0xadd8e6,
              "lightcoral":0xf08080,
              "lightcyan":0xe0ffff,
              "lightgoldenrodyellow":0xfafad2,
              "lightgray":0xd3d3d3,
              "lightgrey":0xd3d3d3,
              "lightgreen":0x90ee90,
              "lightpink":0xffb6c1,
              "lightsalmon":0xffa07a,
              "lightseagreen":0x20b2aa,
              "lightskyblue":0x87cefa,
              "lightslategray":0x778899,
              "lightslategrey":0x778899,
              "lightsteelblue":0xb0c4de,
              "lightyellow":0xffffe0,
              "lime":0x00ff00,
              "limegreen":0x32cd32,
              "linen":0xfaf0e6,
              "magenta":0xff00ff,
              "maroon":0x800000,
              "mediumaquamarine":0x66cdaa,
              "mediumblue":0x0000cd,
              "mediumorchid":0xba55d3,
              "mediumpurple":0x9370db,
              "mediumseagreen":0x3cb371,
              "mediumslateblue":0x7b68ee,
              "mediumspringgreen":0x00fa9a,
              "mediumturquoise":0x48d1cc,
              "mediumvioletred":0xc71585,
              "midnightblue":0x191970,
              "mintcream":0xf5fffa,
              "mistyrose":0xffe4e1,
              "moccasin":0xffe4b5,
              "navajowhite":0xffdead,
              "navy":0x000080,
              "oldlace":0xfdf5e6,
              "olive":0x808000,
              "olivedrab":0x6b8e23,
              "orange":0xffa500,
              "orangered":0xff4500,
              "orchid":0xda70d6,
              "palegoldenrod":0xeee8aa,
              "palegreen":0x98fb98,
              "paleturquoise":0xafeeee,
              "palevioletred":0xdb7093,
              "papayawhip":0xffefd5,
              "peachpuff":0xffdab9,
              "peru":0xcd853f,
              "pink":0xffc0cb,
              "plum":0xdda0dd,
              "powderblue":0xb0e0e6,
              "purple":0x800080,
              "rebeccapurple":0x663399,
              "red":0xff0000,
              "rosybrown":0xbc8f8f,
              "royalblue":0x4169e1,
              "saddlebrown":0x8b4513,
              "salmon":0xfa8072,
              "sandybrown":0xf4a460,
              "seagreen":0x2e8b57,
              "seashell":0xfff5ee,
              "sienna":0xa0522d,
              "silver":0xc0c0c0,
              "skyblue":0x87ceeb,
              "slateblue":0x6a5acd,
              "slategray":0x708090,
              "slategrey":0x708090,
              "snow":0xfffafa,
              "springgreen":0x00ff7f,
              "steelblue":0x4682b4,
              "tan":0xd2b48c,
              "teal":0x008080,
              "thistle":0xd8bfd8,
              "tomato":0xff6347,
              "turquoise":0x40e0d0,
              "violet":0xee82ee,
              "wheat":0xf5deb3,
              "white":0xffffff,
              "whitesmoke":0xf5f5f5,
              "yellow":0xffff00,
              "yellowgreen":0x9acd32};