// ==UserScript==
// @name Keystrokes for Sploop.io
// @version 0.4
// @description Keystrokes made for Sploop.io! | For support please join our Discord - https://discord.gg/zpVgaMdrrd
// @author Ashureth
// @match *://*sploop.io/*
// @license MIT
// @grant none
// @namespace Keystrokes
// @downloadURL none
// ==/UserScript==
// VERSIONS
/*
0.2 - Fixed some key bugs
0.3 - Fixed so that keys don't react when you're chatting or if you are in the clan tab.
0.4 - Added some smooth color changing to the keystrokes
*/
function Blocking() {
return document.getElementById('chat-wrapper').offsetParent == null && document.getElementById('clan-menu').offsetParent == null && document.getElementById('play-text').offsetParent == null;
}
let html = `
`
let backgroundd = document.getElementById('backgroundd');
let HeldKeys = [];
let EToggle = false;
setInterval(() => {
if(document.getElementById('play-text').offsetParent !== null) {
EToggle = false;
}
var Element;
let arr = ['W', 'A', 'S', 'D', 'E', 'Q', 'Space'];
for(let i of arr) {
i != 'E' && document.getElementById(`key${i}`) && (document.getElementById(`key${i}`).style.background = '#2F3336');
}
for(let Key in HeldKeys) {
if(HeldKeys[Key] != 'E' && HeldKeys[Key] != null) {
Element = document.getElementById(`key${HeldKeys[Key]}`);
if(Element) {
Element.style.background = '#52585e'
}
} else {
Element = document.getElementById(`keyE`);
Element.style.background = EToggle ? '#52585e' : '#2F3336';
}
}
});
document.body.insertAdjacentHTML('beforeend', html);
let game = document.getElementById('game-canvas');
window.addEventListener('keydown', e => {
if(!Blocking()) return;
let isSpace = e.key === ' ';
if(isSpace) {
HeldKeys['Space'] = 'Space';
} else {
if(e.key == 'e') {
EToggle = !EToggle;
} else {
HeldKeys[e.key.toUpperCase()] = e.key.toUpperCase();
}
}
});
window.addEventListener('keyup', e => {
let isSpace = e.key === ' ';
if(isSpace) {
HeldKeys['Space'] = null;
} else {
HeldKeys[e.key.toUpperCase()] = null;
}
});