// ==UserScript==
// @name Tetrio Quick Profile Lookup
// @namespace http://tampermonkey.net/
// @version 0.1
// @description none
// @author username0554 (discord)
// @license MIT
// @match *://tetr.io/*
// @icon https://www.google.com/s2/favicons?sz=64&domain=tetr.io
// @grant none
// @downloadURL https://update.greasyfork.icu/scripts/476167/Tetrio%20Quick%20Profile%20Lookup.user.js
// @updateURL https://update.greasyfork.icu/scripts/476167/Tetrio%20Quick%20Profile%20Lookup.meta.js
// ==/UserScript==
let div = document.createElement("div");
div.id = "hud";
div.style = `
position: absolute;
top: 20px; left: 20px;
width:250px; height:auto;
font: 20px HUN;
background: black;
z-index: 1000;
color: white;
text-align: center;
padding: 10px;
border-radius: 5px;
`
div.innerHTML = `
Quick Profile Lookup
?'s profile
Current Rank:
Peak Rank:
APM: 0 APM
PPS: 0 PPS
40L: 0:00
BLITZ: 1
Made by username0554!
`;
document.body.appendChild(div);
document.getElementById("profileFetch").addEventListener("click", function () {
// BASIC USER DATA
let name = window.prompt("username, lowercased")
document.getElementById("profileName").innerHTML = name;
fetch("https://ch.tetr.io/api/users/" + name).then(e => e.json()).then(function (e) {
if(e.success) {
document.getElementById("cRank").src = "https://tetr.io/res/league-ranks/" + e.data.user.league.rank + ".png"
document.getElementById("pRank").src = "https://tetr.io/res/league-ranks/" + e.data.user.league.bestrank + ".png"
document.getElementById("tAPM").innerHTML = e.data.user.league.apm;
document.getElementById("tPPS").innerHTML = e.data.user.league.pps;
document.getElementById("tPPS").innerHTML = e.data.user.league.pps;
} else {
alert("failed to fetch");
}
});
//GAME RECORDS 40L, BLITZ
fetch("https://ch.tetr.io/api/users/"+ name + "/records").then(e => e.json()).then(function (e) {
if(e.success) {
document.getElementById("40L").innerHTML = (function (str) {
return str.substring(0, str.length - 3) + "." + str.substring(str.length-3);
}(Math.round(e.data.records["40l"].record.endcontext.finalTime).toString()));
document.getElementById("BLTZ").innerHTML = e.data.records.blitz.record.endcontext.score;
} else {
alert("failed to fetch");
}
});
});