Greasy Fork

Keystrokes for Sploop.io

Keystrokes made for Sploop.io! | For support please join our Discord - https://discord.gg/zpVgaMdrrd

目前为 2023-04-07 提交的版本。查看 最新版本

作者
Ashureth
评分
0 0 0
版本
0.3
创建于
2023-04-07
更新于
2023-04-07
大小
4.4 KB
许可证
MIT
适用于

// ==UserScript==
// @name Keystrokes for Sploop.io
// @version 0.2
// @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
// ==/UserScript==

// VERIONS

/*
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.
*/


function Blocking() {
return document.getElementById('chat-wrapper').offsetParent == null && document.getElementById('clan-menu').offsetParent == null;
}

let html = `



Q

W

E

A

S

D

━━━━━

`
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;
}
});