Vanis.io MOD

Vez's auto respawn and skin changer

Author
Vez Plays
Daily installs
1
Total installs
3,807
Ratings
1 0 0
Version
3.9.9
Created
2020-08-30
Updated
2021-01-26
License
N/A
Applies to

// ==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
// ==/UserScript==

const VEX = `

HUD COLOR

𝘉𝘶𝘨𝘴 𝘸𝘪𝘭𝘭 𝘣𝘦 𝘧𝘪𝘹𝘦𝘥 𝘴𝘰𝘰𝘯.


SKIN CHANGER

SKIN_1


SKIN_2


SKIN_3


SKIN_4


SKIN ROTATOR

START
STOP

EXTRAS

AUTO_RESPAWN


SKIP_STATS


Youtube

Owner

Coded by Vez#3994


Discord


`;

const VEX_BTN = `

Menu
`;

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