🏠 Home 

NitroType Perfect Nitros

Highlights the largest words for perfect nitros.


Install this script?
// ==UserScript==
// @name         NitroType Perfect Nitros
// @namespace    https://github.com/Ray-Adams
// @version      1.0.0
// @description  Highlights the largest words for perfect nitros.
// @author       Ray Adams/Silas Davos
// @match        https://www.nitrotype.com/race
// @match        https://www.nitrotype.com/race/*
// @run-at       document-end
// @grant        none
// @license MIT
// ==/UserScript==
(() => {
const options = {
highlightColor: 'white',
intervalMs: 100
};
const client = () => {
if (document.body.contains(document.querySelector('.dash-letter'))) {
clearInterval(intervalId);
// Generate word list from DOM
let wordList = []
for (let words of document.getElementsByClassName('dash-word')) {
wordList.push(
words.textContent.replace(/\s/g, '')
)
}
// Find the largest words
let largestWords = [];
for (let word of wordList) {
if (typeof largestWords[0] === 'undefined' || largestWords[0].length === word.length) {
largestWords.push(word);
}
if (word.length > largestWords[0].length) {
largestWords = [word];
}
}
// Return all occurrences of a specific value
Array.prototype.indexesOf=function(t){for(var r=[],n=this.length-1;0<=n;n--)this[n]===t&&r.unshift(n);return r};
// Find the indexes of the largest words in wordList
let largestWordIndexes = []
for (let values of wordList.values()) {
if (largestWords.includes(values)) largestWordIndexes.push(
wordList.indexesOf(values)
)
}
// Flatten array and remove duplicate values
largestWordIndexes = [...new Set(largestWordIndexes.flat())];
// Highlight largest words
for (let indexes of largestWordIndexes) {
document.getElementsByClassName('dash-word')[indexes].style.backgroundColor = options.highlightColor
}
}
}
const intervalId = setInterval(client, options.intervalMs);
console.info('Perfect Nitros Activated.')
})()