您需要先安装一个扩展,例如 篡改猴、Greasemonkey 或 暴力猴,之后才能安装此脚本。
您需要先安装一个扩展,例如 篡改猴 或 暴力猴,之后才能安装此脚本。
您需要先安装一个扩展,例如 篡改猴 或 暴力猴,之后才能安装此脚本。
您需要先安装一个扩展,例如 篡改猴 或 Userscripts ,之后才能安装此脚本。
您需要先安装一款用户脚本管理器扩展,例如 Tampermonkey,才能安装此脚本。
您需要先安装用户脚本管理器扩展后才能安装此脚本。
shows colored usernames based on 40L Sprint time
- // ==UserScript==
- // @name Sprint Color Spectrum Sprint
- // @namespace http://tampermonkey.net/
- // @version 0.1
- // @description shows colored usernames based on 40L Sprint time
- // @author Oki
- // @match https://*.jstris.jezevec10.com/*
- // @grant none
- // ==/UserScript==
- /**************************
- Sprint Color Spectrum Script
- **************************/
- (function() {
- window.addEventListener('load', function(){
- function colorize(limit){
- Game["links"] = document.getElementsByTagName('a')
- for (var o = 0; (o < Game["links"].length) && limit; o++) {
- var regexp = /(https:\/\/jstris\.jezevec10\.com\/u\/)([^\/]*)(.*)/g;
- var parts = regexp.exec(Game["links"][o].href);
- if(parts && parts[2] && !parts[3]){
- var execEval=`limit--;
- var url = "https://jstris.jezevec10.com/api/u/"+parts[2]+"/records/1?mode=1"
- var xhr = new XMLHttpRequest();
- xhr.onreadystatechange = function() {
- if (this.readyState == 4 && this.status == 200) {
- var best = 25
- var worst = 100
- var a = [255,0,0] //best
- var b = [128,0,128] //medium
- var d = [0,255,255] //worst
- var min = JSON.parse(this.responseText).min;
- (min!=0&&min<best)&&(min=best);min>worst&&(min=worst);
- var c=2*((min-best)/(worst-best));1<=c&&(--c,a=b,b=d);
- var e=[parseInt(0|a[0]+(b[0]-a[0])*c,10),parseInt(0|a[1]+(b[1]-a[1])*c,10),parseInt(0|a[2]+(b[2]-a[2])*c,10)];
- var color = "rgb("+e[0]+","+e[1]+","+e[2]+")"
- min||(color='rgb(75,75,75)')
- Game["links"][`+o+`].style.color = color
- }
- };
- xhr.open("GET", url, true);
- xhr.send();`
- eval(execEval)
- }
- }
- }
- Game["colorize"] = colorize;
- if(typeof trim != "function"){var trim=a=>{a=a.slice(0,-1);a=a.substr(a.indexOf("{")+1);return a}}
- if(typeof getParams != "function"){var getParams=a=>{var params=a.slice(a.indexOf("(")+1);params=params.substr(0,params.indexOf(")")).split(",");return params}}
- var sendChatFunc = Live['prototype']['sendChat'].toString()
- var params3 = getParams(sendChatFunc)
- sendChatFunc = "if(chatInput.value.startsWith('/color')){amount=chatInput.value.split(' ')[1];Game['colorize'](+amount);chatInput.value='';msg=document.createElement('div');msg.className='chl srv';msg.innerHTML='Colorizing '+amount+' username(s)';ch1.appendChild(msg);return}" + trim(sendChatFunc)
- Live['prototype']["sendChat"] = new Function(...params3, sendChatFunc);
- });
- })();