您需要先安装一个扩展,例如 篡改猴、Greasemonkey 或 暴力猴,之后才能安装此脚本。
您需要先安装一个扩展,例如 篡改猴 或 暴力猴,之后才能安装此脚本。
您需要先安装一个扩展,例如 篡改猴 或 暴力猴,之后才能安装此脚本。
您需要先安装一个扩展,例如 篡改猴 或 Userscripts ,之后才能安装此脚本。
您需要先安装一款用户脚本管理器扩展,例如 Tampermonkey,才能安装此脚本。
您需要先安装用户脚本管理器扩展后才能安装此脚本。
change title to show a 30 second timer on split, number of nodes, and rough coordinates
// ==UserScript== // @name chopcoin timer/nodecount/coordinates // @namespace namespace // @description change title to show a 30 second timer on split, number of nodes, and rough coordinates // @include http://chopcoin.io/ // @version 1.1 // @grant none // ==/UserScript== var timer = 0; var timerFloat = 0; var xCoord = 0; var yCoord = 0; var nodeCount = 0; var frequency = 2; // how many times per second to update title var id = 0; var ign = "nothing"; var precision = 1000; // number to divide the board by, since its 12,000 x 12,000 setTitle(); window.addEventListener("keydown", dealWithKeyboard, false); function setTitle() { getCoords(); if (timerFloat != 0) { timerFloat -= 1/frequency; timer = Math.round(timerFloat); } document.title = timer + " | " + nodeCount + " | " + xCoord + " : " + yCoord + ' ' + ign; setTimeout(function(){ setTitle(); }, 1000/frequency); } function getCoords() { id = chopcoin.game.nodes.player_id['length'] - 1; // hackish way to identify my blob if (!chopcoin.game.nodes.player_id[id]) id = -1; // chopcoin doesnt clear out on spectate xCoord = 0; yCoord = 0; nodeCount = 0; var rawNodes = chopcoin.game.nodes['all']; for(var i=0; i<rawNodes.length; i++) { if (id == -1 && rawNodes[i]._name) id = rawNodes[i].id; // while in spectate mode, take the id of the first node that has a name if (rawNodes[i].id == id) ign = rawNodes[i]._name; // should be in a seperate for loop to get name? if (rawNodes[i]._name == ign) { nodeCount++; //xCoord += Math.round(rawNodes[i].x / 1000); //yCoord += Math.round(rawNodes[i].y / 1000); xCoord += rawNodes[i].x; yCoord += rawNodes[i].y; //console.log(xCoord + " : " + yCoord + " nodecount=" + nodeCount + ", name=" + ign); } } xCoord = Math.round(xCoord / nodeCount/ precision); yCoord = Math.round(yCoord / nodeCount/ precision); if(isNaN(xCoord)) xCoord = 0; // why are we getting NaNs here sometimes if(isNaN(yCoord)) yCoord = 0; } function dealWithKeyboard(e) { if (e.keyCode == "32") timerFloat = 30; }