// ==UserScript== // @name Vanis.io MOD // @namespace Vez's Vanis.io mod // @version 3.9.9 // @description Vez's auto respawn and skin changer // @author vez // @contact Discord: Vez#2777 // @match https://vanis.io/ // @grant none // @connect https://raw.githubusercontent.com // @resource https://raw.githubusercontent.com/taufik-nurrohman/color-picker/master/color-picker.min.css // @run-at document-end // @downloadURL https://update.greasyfork.icu/scripts/410194/Vanisio%20MOD.user.js // @updateURL https://update.greasyfork.icu/scripts/410194/Vanisio%20MOD.meta.js // ==/UserScript== const VEX = `

HUD COLOR

π˜‰π˜Άπ˜¨π˜΄ 𝘸π˜ͺ𝘭𝘭 𝘣𝘦 𝘧π˜ͺ𝘹𝘦π˜₯ 𝘴𝘰𝘰𝘯.

SKIN CHANGER

SKIN_1

SKIN_2

SKIN_3

SKIN_4

SKIN ROTATOR

EXTRAS

AUTO_RESPAWN

SKIP_STATS

Owner

Coded by Vez#3994

`; const VEX_BTN = ` `; document.querySelectorAll("#vanis-io_300x250")[0].innerHTML += VEX; document.querySelectorAll(".social-container")[0].innerHTML += VEX_BTN; setTimeout(()=>{ window._$ = selector => { const nodes = document.querySelectorAll(selector); return nodes.length == 1 ? nodes[0] : nodes; } window.VEX_PLAYER_SOCKET = null; window.VEX_PLAYER_X = 0; window.VEX_PLAYER_Y = 0; window.VEX_PLAYER_PACKET_SPAWN = []; window.VEX_PLAYER_SPAWN = () => { window.VEX_PLAYER_SOCKET._send(window.VEX_PLAYER_PACKET_SPAWN); }; window.VEX_PLAYER_MOVETO_X = 0; window.VEX_PLAYER_MOVETO_Y = 0; window.VEX_PLAYER_MOVE_STOP = false; window.VEX_PLAYER_MOVE_TO = false; window.VEX_PLAYER_MOVETO = (x,y) => { const packet = new DataView(new ArrayBuffer(9)); packet.setUint8(0, 16); packet.setInt32(1, x, true); packet.setInt32(5, y, true); window.VEX_PLAYER_SOCKET._send(packet); } window.VEX_PLAYER_SPLIT = () => { const packet = new DataView(new ArrayBuffer(2)); packet.setUint8(0, 17); packet.setUint8(1, window.VEX_PLAYER_X); window.VEX_PLAYER_SOCKET._send(packet); } window.VEX_OVERLAY_TOGGLE = () => { const state = (VEX_DOM_OVERLAY.style.right == "-325px") ? false : true; if(state){ VEX_OVERLAY_HIDE(); return; } VEX_OVERLAY_SHOW(); }; let VEX_HUD_COLOR = ""; let VEX_SKIN1 = ""; let VEX_SKIN2 = ""; let VEX_SKIN3 = ""; let VEX_SKIN4 = ""; let VEX_ROTATOR_STATE = false; const VEX_ROTATOR_DELAY = 1000; let VEX_EXTRAS_AR = false; let VEX_EXTRAS_AR_INTERVAL = null; let VEX_EXTRAS_SS = false; let VEX_EXTRAS_SS_INTERVAL = null; const VEX_DOM_OVERLAY = _$(".vex"); const VEX_DOM_HC = _$("#vex-hc"); const VEX_DOM_SKIN_INPUT = _$("#skinurl"); const VEX_DOM_SKIN1 = _$("#vex-s1"); const VEX_DOM_SKIN2 = _$("#vex-s2"); const VEX_DOM_SKIN3 = _$("#vex-s3"); const VEX_DOM_SKIN4 = _$("#vex-s4"); const VEX_DOM_ROTATOR_START = _$("#vex-r-start"); const VEX_DOM_ROTATOR_STOP = _$("#vex-r-stop"); const VEX_DOM_EXTRAS_AR = _$("#vex-e-ar"); const VEX_DOM_EXTRAS_SS = _$("#vex-e-ss"); const VEX_HUD_COLOR_FUNC = () => { for(const element of _$(".fade")) element.style.background = VEX_HUD_COLOR; _$("#overlay").style.background = "radial-gradient("+VEX_HUD_COLOR+" 300px,"+VEX_HUD_COLOR+")"; _$(".vex").style.background = VEX_HUD_COLOR; if(_$(".discord").length !== 0) _$(".discord").style.background = VEX_HUD_COLOR; //_$(".vex").style.boxShadow = "0 0 4px 2px " + VEX_HUD_COLOR; _$(".vex-button").style.background = VEX_HUD_COLOR; if(_$(".progress-bar").length !== 0) _$(".progress-bar").style.background = `repeating-linear-gradient(-45deg,${VEX_HUD_COLOR},${VEX_HUD_COLOR} 40px,#1e1e1e 0,#1e1e1e 80px)` if(_$(".fade-box")[0]) _$(".fade-box")[0].style.background = VEX_HUD_COLOR; if(_$(".fade-box")[1]) _$(".fade-box")[1].style.background = VEX_HUD_COLOR; }; let VEX_ROTATOR_INTERVAL = null; let VEX_ROTATOR_CURRENT = 1; const VEX_ROTATOR_FUNC_NEXT = () => { if(VEX_ROTATOR_CURRENT < 5) VEX_ROTATOR_CURRENT += 1; if(VEX_ROTATOR_CURRENT == 5) VEX_ROTATOR_CURRENT = 1; VEX_DOM_SKIN_INPUT.value = localStorage.getItem("vex-s"+VEX_ROTATOR_CURRENT); }; const VEX_ROTATOR_FUNC_PREV = () => { if(VEX_ROTATOR_CURRENT < 5) VEX_ROTATOR_CURRENT -= 1; if(VEX_ROTATOR_CURRENT == 0) VEX_ROTATOR_CURRENT = 1; VEX_DOM_SKIN_INPUT.value = localStorage.getItem("vex-s"+VEX_ROTATOR_CURRENT); }; const VEX_OVERLAY_SHOW = () => { VEX_DOM_OVERLAY.style.right = "0px"; }; const VEX_OVERLAY_HIDE = () => { VEX_DOM_OVERLAY.style.right = "-325px"; }; // VEX_DOM_OVERLAY.addEventListener('mouseenter', event => { // VEX_OVERLAY_SHOW(); // }, false); // VEX_DOM_OVERLAY.addEventListener('mouseleave', event => { // VEX_OVERLAY_HIDE(); // }, false); VEX_DOM_HC.addEventListener("change", event => { if(event.target.value == localStorage.getItem("vex-hc")) return; localStorage.setItem("vex-hc", event.target.value); VEX_HUD_COLOR = localStorage.getItem("vex-hc"); VEX_HUD_COLOR_FUNC(); }, false) VEX_DOM_SKIN1.addEventListener("change", event => { if(event.target.value == localStorage.getItem("vex-s1")) return; localStorage.setItem("vex-s1", event.target.value); VEX_SKIN1 = localStorage.getItem("vex-s1"); }, false) VEX_DOM_SKIN2.addEventListener("change", event => { if(event.target.value == localStorage.getItem("vex-s1")) return; localStorage.setItem("vex-s2", event.target.value); VEX_SKIN2 = localStorage.getItem("vex-s2"); }, false) VEX_DOM_SKIN3.addEventListener("change", event => { if(event.target.value == localStorage.getItem("vex-s1")) return; localStorage.setItem("vex-s3", event.target.value); VEX_SKIN3 = localStorage.getItem("vex-s3"); }, false) VEX_DOM_SKIN4.addEventListener("change", event => { if(event.target.value == localStorage.getItem("vex-s1")) return; localStorage.setItem("vex-s4", event.target.value); VEX_SKIN4 = localStorage.getItem("vex-s4"); }, false) VEX_DOM_ROTATOR_START.addEventListener('click', event => { VEX_ROTATOR_STATE = true; VEX_DOM_ROTATOR_STOP.className = ""; event.target.className += " active"; VEX_ROTATOR_CURRENT = 1; VEX_ROTATOR_INTERVAL = setInterval(VEX_ROTATOR_FUNC_NEXT, VEX_ROTATOR_DELAY); }, false); VEX_DOM_ROTATOR_STOP.addEventListener('click', event => { VEX_ROTATOR_STATE = false; VEX_DOM_ROTATOR_START.className = ""; event.target.className += " active"; VEX_ROTATOR_CURRENT = 1; clearInterval(VEX_ROTATOR_INTERVAL); }, false); VEX_DOM_EXTRAS_AR.addEventListener('change', event => { const state = event.target.checked; if(state == true){ if(VEX_DOM_EXTRAS_SS.checked == true) VEX_DOM_EXTRAS_SS.click(); VEX_EXTRAS_AR_INTERVAL = setInterval(()=>{ if(_$(".container")[2].style.display != "none"){ if(_$("button.continue").length === undefined && _$("button.continue").length !== 0){ _$("button.continue").click(); _$("#overlay").style.display = "none"; _$("#overlay").dispatchEvent(new KeyboardEvent("keydown",{ altKey: false, bubbles: true, cancelBubble: false, cancelable: true, charCode: 0, code: "Escape", composed: true, ctrlKey: false, currentTarget: null, defaultPrevented: false, detail: 0, eventPhase: 0, isComposing: false, isTrusted: true, key: "Escape", keyCode: 27, location: 0, metaKey: false, path: [document.body, document, document, window], repeat: false, returnValue: true, shiftKey: false, sourceCapabilities: new InputDeviceCapabilities({firesTouchEvents: false}), srcElement: document.body, target: document.body, type: "keydown", view: window, which: 27 })); _$("canvas#canvas").dispatchEvent(new KeyboardEvent("keydown",{ altKey: false, bubbles: true, cancelBubble: false, cancelable: true, charCode: 0, code: "Escape", composed: true, ctrlKey: false, currentTarget: null, defaultPrevented: false, detail: 0, eventPhase: 0, isComposing: false, isTrusted: true, key: "Escape", keyCode: 27, location: 0, metaKey: false, path: [document.body, document, document, window], repeat: false, returnValue: true, shiftKey: false, sourceCapabilities: new InputDeviceCapabilities({firesTouchEvents: false}), srcElement: document.body, target: document.body, type: "keydown", view: window, which: 27 })) _$("#overlay").dispatchEvent(new KeyboardEvent("keyup",{ altKey: false, bubbles: true, cancelBubble: false, cancelable: true, charCode: 0, code: "Escape", composed: true, ctrlKey: false, currentTarget: null, defaultPrevented: false, detail: 0, eventPhase: 0, isComposing: false, isTrusted: true, key: "Escape", keyCode: 27, location: 0, metaKey: false, path: [document.body, document, document, window], repeat: false, returnValue: true, shiftKey: false, sourceCapabilities: new InputDeviceCapabilities({firesTouchEvents: false}), srcElement: document.body, target: document.body, type: "keydown", view: window, which: 27 })); _$("canvas#canvas").dispatchEvent(new KeyboardEvent("keyup",{ altKey: false, bubbles: true, cancelBubble: false, cancelable: true, charCode: 0, code: "Escape", composed: true, ctrlKey: false, currentTarget: null, defaultPrevented: false, detail: 0, eventPhase: 0, isComposing: false, isTrusted: true, key: "Escape", keyCode: 27, location: 0, metaKey: false, path: [document.body, document, document, window], repeat: false, returnValue: true, shiftKey: false, sourceCapabilities: new InputDeviceCapabilities({firesTouchEvents: false}), srcElement: document.body, target: document.body, type: "keydown", view: window, which: 27 })) window.VEX_PLAYER_SPAWN(); } } }, 500); return; } clearInterval(VEX_EXTRAS_AR_INTERVAL); VEX_EXTRAS_AR_INTERVAL = null; }, false); VEX_DOM_EXTRAS_SS.addEventListener('change', event => { const state = event.target.checked; if(state == true){ VEX_EXTRAS_SS_INTERVAL = setInterval(()=>{ if(_$(".container")[2].style.display != "none"){ if(_$("button.continue").length === undefined && _$("button.continue").length !== 0) _$("button.continue").click(); } }, 500); return; } clearInterval(VEX_EXTRAS_SS_INTERVAL); VEX_EXTRAS_SS_INTERVAL = null; }, false); const init = () => { VEX_DOM_HC.value = localStorage.getItem("vex-hc") || ""; VEX_HUD_COLOR = VEX_DOM_HC.value; VEX_HUD_COLOR_FUNC(); VEX_DOM_SKIN1.value = localStorage.getItem("vex-s1") || ""; VEX_DOM_SKIN2.value = localStorage.getItem("vex-s2") || ""; VEX_DOM_SKIN3.value = localStorage.getItem("vex-s3") || ""; VEX_DOM_SKIN4.value = localStorage.getItem("vex-s4") || ""; VEX_DOM_ROTATOR_STOP.click(); VEX_DOM_EXTRAS_AR.checked = localStorage.getItem("vex-e-ar") || false; VEX_DOM_EXTRAS_SS.checked = localStorage.getItem("vex-e-ss") || false; }; WebSocket.prototype._send = WebSocket.prototype.send WebSocket.prototype.send = function(data) { if(data.byteLength > 9 && data[0] == 1) VEX_PLAYER_PACKET_SPAWN = data; window.VEX_PLAYER_SOCKET = this; if(data.byteLength == 9){ if(data.getUint8() == 16){ window.VEX_PLAYER_X = data.getInt32(1, true); window.VEX_PLAYER_Y = data.getInt32(5, true); if(window.VEX_PLAYER_MOVE_STOP && window.VEX_PLAYER_MOVE_TO){ window.VEX_PLAYER_MOVETO(window.VEX_PLAYER_MOVETO_X, window.VEX_PLAYER_MOVETO_Y); return; } if(window.VEX_PLAYER_MOVE_STOP) return; } } this._send(data); }; document.addEventListener('click', event => { console.log(event) }, false) setInterval(()=>{ VEX_HUD_COLOR_FUNC(); }, 200); init(); }, 25);