345 lines
28 KiB
Plaintext
345 lines
28 KiB
Plaintext
<!DOCTYPE html>
|
|
|
|
|
|
|
|
<!--
|
|
|
|
This file is from ${date}, there is no official eagler download link anymore, check the websites and discords of your favorite eagler servers for new versions
|
|
|
|
Be aware that some server owners are lazy and do not update their client regularly
|
|
|
|
Compile it yourself here: https://gitlab.com/lax1dude/eaglercraftx-1.8/
|
|
|
|
-->
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
<html>
|
|
<head>
|
|
<meta charset="UTF-8" />
|
|
<meta name="viewport" content="width=device-width, initial-scale=1.0" />
|
|
<meta name="description" content="EaglercraftX 1.8 Offline" />
|
|
<meta name="keywords" content="eaglercraft, eaglercraftx, minecraft, 1.8, 1.8.8" />
|
|
<title>EaglercraftX 1.8</title>
|
|
<meta property="og:locale" content="en-US" />
|
|
<meta property="og:type" content="website" />
|
|
<meta property="og:title" content="EaglercraftX 1.8 Offline" />
|
|
<meta property="og:description" content="this file is not a website, whoever uploaded it to this URL is a dumbass" />
|
|
<script type="text/javascript">
|
|
"use strict";
|
|
|
|
|
|
// %%%%%%%%% launch options %%%%%%%%%%%%
|
|
|
|
window.eaglercraftXOpts = { container: "game_frame" };
|
|
|
|
// %%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%
|
|
|
|
|
|
${classes_js}
|
|
|
|
window.eaglercraftXOpts.assetsURI = ${assets_epk};
|
|
|
|
var launchInterval = -1;
|
|
var launchCounter = 1;
|
|
var launchCountdownNumberElement = null;
|
|
var launchCountdownProgressElement = null;
|
|
|
|
function launchTick() {
|
|
launchCountdownNumberElement.innerText = "" + Math.floor(6.0 - launchCounter * 0.06);
|
|
launchCountdownProgressElement.style.width = "" + launchCounter + "%";
|
|
if(++launchCounter > 100) {
|
|
clearInterval(launchInterval);
|
|
setTimeout(() => { document.getElementById("launch_countdown_screen").remove(); main(); }, 50);
|
|
}
|
|
}
|
|
|
|
window.addEventListener("load", () => {
|
|
launchCountdownNumberElement = document.getElementById("launchCountdownNumber");
|
|
launchCountdownProgressElement = document.getElementById("launchCountdownProgress");
|
|
launchInterval = setInterval(launchTick, 50);
|
|
});
|
|
|
|
</script>
|
|
|
|
<style>
|
|
#loadingScreen {
|
|
transition: background-color 0.4s;
|
|
position: absolute;
|
|
left: 0px;
|
|
top: 0px;
|
|
width: 100vw;
|
|
height: 100vh;
|
|
background-color: white;
|
|
}
|
|
#logo {
|
|
transition: all 0.4s;
|
|
position: absolute;
|
|
width: 50%;
|
|
left: 50vw;
|
|
top: 50vh;
|
|
transform: translate(-50%, -50%);
|
|
}
|
|
#mojangLogo{
|
|
transition: all 0.4s;
|
|
position: absolute;
|
|
width: 50%;
|
|
left: 50vw;
|
|
top: 50vh;
|
|
transform: translate(-50%, -50%);
|
|
filter: invert(100%);
|
|
opacity: 0;
|
|
}
|
|
#progressBar{
|
|
transition: opacity 0.2s;
|
|
border: solid 5px black;
|
|
position: relative;
|
|
width: 80vw;
|
|
height: 30px;
|
|
left: 50vw;
|
|
top:-10%;
|
|
border-radius: 30px;
|
|
transform: translateX(-50%);
|
|
}
|
|
#progressBarInside{
|
|
transition: width 0.2s;
|
|
width:0%;
|
|
height:100%;
|
|
background-color: black;
|
|
border-radius: 30px;
|
|
}
|
|
#progress{
|
|
transition: all 0.4s;
|
|
position: relative;
|
|
top: -15%;
|
|
text-align: center;
|
|
font-family: sans-serif;
|
|
}
|
|
#kys{
|
|
width: 100px;
|
|
height: 80vh;
|
|
}
|
|
</style>
|
|
<script>
|
|
let hasUserInteractionHappened = false;
|
|
|
|
document.addEventListener("DOMContentLoaded", () => {
|
|
document.body.addEventListener("click", () => {
|
|
hasUserInteractionHappened = true;
|
|
});
|
|
});
|
|
|
|
function updateLoadingScreen(evt){
|
|
let percent = Math.round((evt.loaded / evt.total)*100);
|
|
let loadedMB = Math.round((evt.loaded/1024)/1024);
|
|
let totalMB = Math.round((evt.total/1024)/1024);
|
|
document.getElementById("progress").innerText = "Downloading assets: "+percent+"% ("+loadedMB+"MB / "+totalMB+"MB)";
|
|
document.getElementById("progressBarInside").style.width = percent+"%";
|
|
}
|
|
function showDecompressing(){
|
|
document.getElementById("progressBar").style.opacity = "0%";
|
|
document.getElementById("progress").innerText = "Decompressing assets...";
|
|
}
|
|
function showEnableScreen(){
|
|
if (!hasUserInteractionHappened){
|
|
document.getElementById("logo").style.width = "75%";
|
|
document.getElementById("logo").style.top = "30vh";
|
|
document.getElementById("progress").style.top = "-25%";
|
|
document.getElementById("progress").innerText = "Click anywhere on the screen to start Shadow Client!";
|
|
}
|
|
}
|
|
function showEaglerLoadingScreen(){
|
|
document.getElementById("progress").innerText = "Loading Minecraft...";
|
|
document.getElementById("logo").style.width = "50%";
|
|
document.getElementById("logo").style.top = "50vh";
|
|
document.getElementById("progress").style.top = "-15%";
|
|
}
|
|
|
|
function showMojangScreen() {
|
|
document.getElementById("loadingScreen").style.backgroundColor = "#f0323e";
|
|
document.getElementById("logo").style.opacity = "0";
|
|
document.getElementById("mojangLogo").style.opacity = "100%";
|
|
document.getElementById("progress").style.color = "white";
|
|
}
|
|
|
|
function die() {
|
|
// wait for actual mojang screen to die
|
|
setTimeout(() => {
|
|
document.getElementById("progress").style.opacity = "0";
|
|
document.getElementById("mojangLogo").style.transition = "all 0.8s";
|
|
document.getElementById("mojangLogo").style.width = "300%";
|
|
document.getElementById("loadingScreen").style.transition = "all 0.4s";
|
|
document.getElementById("loadingScreen").style.opacity = "0";
|
|
setTimeout(() => {
|
|
document.getElementById("loadingScreen").style.display = "none";
|
|
}, 400);
|
|
}, 500);
|
|
|
|
}
|
|
|
|
function returnHasUserInteractionHappened(){
|
|
return hasUserInteractionHappened;
|
|
}
|
|
</script>
|
|
<div id="loadingScreen">
|
|
<img id="logo" src="data:image/svg+xml;base64,PD94bWwgdmVyc2lvbj0iMS4wIiBzdGFuZGFsb25lPSJubyI/Pgo8IURPQ1RZUEUgc3ZnIFBVQkxJQyAiLS8vVzNDLy9EVEQgU1ZHIDIwMDEwOTA0Ly9FTiIKICJodHRwOi8vd3d3LnczLm9yZy9UUi8yMDAxL1JFQy1TVkctMjAwMTA5MDQvRFREL3N2ZzEwLmR0ZCI+CjxzdmcgdmVyc2lvbj0iMS4wIiB4bWxucz0iaHR0cDovL3d3dy53My5vcmcvMjAwMC9zdmciCiB3aWR0aD0iMjI1NS4wMDAwMDBwdCIgaGVpZ2h0PSI1NzIuMDAwMDAwcHQiIHZpZXdCb3g9IjAgMCAyMjU1LjAwMDAwMCA1NzIuMDAwMDAwIgogcHJlc2VydmVBc3BlY3RSYXRpbz0ieE1pZFlNaWQgbWVldCI+Cgo8ZyB0cmFuc2Zvcm09InRyYW5zbGF0ZSgwLjAwMDAwMCw1NzIuMDAwMDAwKSBzY2FsZSgwLjEwMDAwMCwtMC4xMDAwMDApIgpmaWxsPSIjMDAwMDAwIiBzdHJva2U9Im5vbmUiPgo8cGF0aCBkPSJNNTc5MiA1NDIwIGMtNzU4IC03OCAtMTM1NSAtNjI1IC0xNTAxIC0xMzc1IC02NyAtMzQ2IC0xMiAtNzM0IDE1MQotMTA2MCAyMDIgLTQwNiA1NDcgLTcwNSA5NzggLTg0OSAxOTggLTY2IDI4OSAtODAgNTI1IC04MCAyMjggMCAzMDEgMTAgNDg1CjY1IDM0NiAxMDIgNjU2IDMxOSA4NzkgNjE1IDEwOSAxNDYgMjIxIDM4MSAyNjkgNTY5IDgyIDMxNiA3OCA1OTYgLTExIDkxMQotMTc3IDYxOCAtNzExIDEwODggLTEzNTIgMTE4OSAtMTE4IDE4IC0zMTkgMjUgLTQyMyAxNXogbTM2MyAtODgxIGMyNTEgLTY1CjQ2MSAtMjUyIDU2MiAtNDk5IDQ0IC0xMDcgNTcgLTE3OSA1NiAtMzEwIC0xIC0yMzcgLTg3IC00MjkgLTI2NiAtNTk2IC0zMTcKLTI5NSAtNzk4IC0yOTcgLTExMDkgLTUgLTEyMSAxMTMgLTE5MSAyMjEgLTIzNiAzNjEgLTExNSAzNTggMzMgNzQ5IDM1OSA5NTMKMTkxIDExOSA0MTcgMTUzIDYzNCA5NnoiLz4KPHBhdGggZD0iTTIwMCA1MzYwIGMtMjAgLTIwIC0yMCAtMzMgLTIwIC0xNjIwIGwwIC0xNjAxIDI1IC0yNCAyNCAtMjUgMzUwIDAKYzM2NyAwIDM5NCAzIDQwNSA0NCAzIDExIDYgNTIxIDYgMTEzMSAwIDc3MCAzIDExMjIgMTEgMTE1MCAxNCA1MiAxMDIgMTM5CjE0OCAxNDggMTkgNCA5NCA3IDE2OCA3IDE0NiAwIDE4NSAtMTAgMjM2IC01OCA2NSAtNjIgNjIgLTE0IDY3IC04MjAgbDUgLTczNAoyNCAtMTkgYzIyIC0xOCA0MyAtMTkgMzcwIC0xOSAxOTAgMCAzNTYgMyAzNjkgNiA1MyAxNSA1MiA2IDUyIDc3NCAwIDY4MCAxCjcxMiAxOSA3NDggMTEgMjAgMzIgNDkgNDggNjQgNTEgNDkgODkgNTggMjQzIDU4IDE1NyAwIDE5MiAtOSAyNDggLTYzIDcyIC02OQo2NyAzMyA2OSAtMTIzMSBsMyAtMTEzOSAyMiAtMjQgMjEgLTIzIDM1OSAwIDM1OSAwIDI0IDI1IDI1IDI0IDAgMTE4NiAwIDExODYKLTI1IDI0IGMtMjQgMjUgLTI1IDI1IC0yMzMgMjUgLTIzMSAwIC0yODAgOCAtMzY0IDYxIC0yNSAxNyAtNjYgNTEgLTkxIDc4Ci05NSAxMDEgLTExOSAxOTUgLTExNyA0NDEgMyAyMTAgMyAyMDYgLTE2IDIyNCAtMTQgMTQgLTE1NiAxNiAtMTQxNSAxNiAtMTM4NgowIC0xMzk5IDAgLTE0MTkgLTIweiIvPgo8cGF0aCBkPSJNODgzMCA1MzYwIGMtMTkgLTE5IC0yMCAtMzMgLTIwIC0zODQgbDAgLTM2NSAyNiAtMjAgYzI2IC0yMSAzMyAtMjEKODEzIC0yMSA1OTkgMCA3OTAgLTMgNzk5IC0xMiA5IC05IDEyIC0xODcgMTIgLTczOCAwIC04MjAgMyAtNzkwIC03MyAtODU2Ci0yMyAtMjAgLTUyIC00MCAtNjQgLTQ1IC0xMyAtNSAtMTk1IC05IC00MDUgLTEwIC00MjQgLTEgLTQ3MiA0IC02MTAgNjMgLTI3MgoxMTUgLTQ1OCAzNjEgLTUwOCA2NzMgLTYgMzYgLTE2IDY1IC0yNyA3MyAtMTMgOSAtMTA0IDEyIC0zNzQgMTIgLTE5NyAwIC0zNjUKLTMgLTM3NCAtNiAtMzUgLTE0IC00MiAtNTYgLTI5IC0xNzcgNjUgLTU2NyA0MTQgLTEwNTUgOTI5IC0xMjk3IDEyMSAtNTcgMjI1Ci05MiAzNzYgLTEyNyAxMTIgLTI1IDEyMSAtMjYgNTk4IC0zMCAzNjUgLTQgNDg5IC0yIDUwNiA3IDQwIDIxIDQ1IDUxIDQ1IDI2NAowIDIzMSA3IDI2NyA2OSAzNjQgNDcgNzIgMTM4IDE0NCAyMTQgMTY5IDQwIDEyIDEwNyAxOCAyODAgMjIgMjExIDYgMjMwIDcKMjQzIDI1IDEyIDE3IDE0IDE5OSAxNCAxMjA4IDAgMTE3NSAwIDExODggLTIwIDEyMDggLTIwIDIwIC0zMyAyMCAtMTIxMCAyMAotMTE3NyAwIC0xMTkwIDAgLTEyMTAgLTIweiIvPgo8cGF0aCBkPSJNMTMwOTUgNTM2OSBjLTEzMyAtMjMgLTE3OSAtMzUgLTI4NSAtNzAgLTYzNSAtMjA5IC0xMDcxIC03NzMgLTExMjAKLTE0NDkgLTEzIC0xODAgLTEzIC0xNjY5IDAgLTE3MDcgNiAtMTcgMjIgLTM1IDM2IC00MiAxNyAtNyAxMzUgLTExIDM3NSAtMTEKbDM1MCAwIDI0IDI1IDI1IDI0IDAgODQ1IGMwIDkxNCAtMSA5MDUgNTUgMTA1MiA5MSAyNDEgMzAyIDQzMiA1NjAgNTA2IDc4IDIyCjkyIDIzIDQ5MSAyMyBsNDEwIDAgNDIgLTI4IGMyMyAtMTUgNTQgLTQ2IDY5IC02OSBsMjggLTQxIDMgLTI2MCAzIC0yNTkgLTI1Ci01MyBjLTI4IC01NiAtNzggLTk4IC0xMzcgLTExNSAtMjAgLTYgLTIzMCAtMTAgLTUxMSAtMTAgLTQ2MyAwIC00NzkgLTEgLTQ5OAotMjAgLTExIC0xMSAtMjIgLTMwIC0yNSAtNDIgLTMgLTEzIC01IC0xNzggLTMgLTM2NiBsMyAtMzQ0IDI0IC0xOSBjMjIgLTE4CjQ2IC0xOSA1MDAgLTE5IDMwNSAwIDQ5MCAtNCA1MTQgLTExIDQ5IC0xMyAxMTUgLTczIDEzOCAtMTI0IDE3IC0zNiAxOSAtNzEKMTkgLTM0MyBsMCAtMzAzIDI1IC0yNCAyNCAtMjUgMzYwIDAgYzM1OCAwIDM2MCAwIDM4MSAyMiAyMCAyMiAyMCAyOCAyMCAxMjE0CjAgMTA3MCAtMiAxMTk0IC0xNiAxMjA4IC0yMyAyNCAtNDAgMjUgLTI3NCAyOCBsLTIxNSAzIC02NSAzMiBjLTk5IDQ5IC0xNjMKMTExIC0yMDcgMjAxIGwtMzggNzcgLTMgMjE1IGMtMSAxMTggLTUgMjI1IC03IDIzNyAtMTIgNTUgNCA1MyAtNTE4IDUyIC0yNjUKLTEgLTUwNCAtNSAtNTMyIC0xMHoiLz4KPHBhdGggZD0iTTE1NDMwIDUzNjAgYy0yMCAtMjAgLTIwIC0zMyAtMjAgLTE2MjAgbDAgLTE2MDEgMjUgLTI0IDI0IC0yNSAzNTEKMCBjMzQ4IDAgMzgyIDMgNDAyIDM0IDQgNiA4IDUxMyA4IDExMjcgMCAxMjMyIC0yIDExODUgNjMgMTI1MCA3MSA3MiAzNyA2OQo3NzIgNjkgNjE3IDAgNjYzIC0yIDcwMCAtMTkgNDMgLTE5IDEwMCAtNzggMTE2IC0xMTggNSAtMTQgOSAtNDc1IDkgLTExNDIgMAotNzU1IDMgLTExMjggMTAgLTExNDggNiAtMTcgMjIgLTM1IDM2IC00MiAxNyAtNyAxMzUgLTExIDM3NSAtMTEgbDM1MCAwIDI1CjI1IDI0IDI0IC0yIDExOTIgLTMgMTE5MSAtMjQgMTkgYy0yMSAxNyAtNDEgMTkgLTIzMCAxOSAtMjIzIDAgLTI3NSA4IC0zNTcKNTYgLTUzIDMxIC0xMzYgMTE4IC0xNjMgMTcyIC0xOSAzNyAtNTIgMTQ0IC01MCAxNjAgMSA0IDEgOTQgMCAyMDAgLTEgMTc4IC0yCjE5MyAtMjEgMjEyIC0yMCAyMCAtMzMgMjAgLTEyMTAgMjAgLTExNzcgMCAtMTE5MCAwIC0xMjEwIC0yMHoiLz4KPHBhdGggZD0iTTIwNDU1IDUzNjUgYy0yNTMgLTQwIC00OTUgLTE0MCAtNzA2IC0yOTEgLTQxNCAtMjk3IC02NTggLTc5MiAtNjU5Ci0xMzM2IC0xIC00NDQgMTcyIC04NTggNDkyIC0xMTc4IDI1NCAtMjU0IDYyMSAtNDI1IDk4NiAtNDYwIDk4IC05IDEzNCAtMgoxNDkgMjkgNCA5IDEwIDE1OSAxMyAzMzMgbDUgMzE2IDMwIDQzIGMxOSAyNyA1MCA1NCA4NCA3MSBsNTMgMjggMjMwIDAgYzI1MgowIDI5NyAtNyAzNTIgLTUyIDc0IC02MSA3NiAtNzAgNzYgLTQwNyAwIC0zMTggMyAtMzQwIDQ3IC0zNjAgMTYgLTcgMTM4IC0xMQozNzIgLTExIDMyOSAwIDM1MCAxIDM3MiAxOSBsMjQgMTkgMCA3ODIgMCA3ODIgLTI0IDE5IGMtMjIgMTggLTUwIDE5IC03OTUgMTkKLTY3MiAtMSAtNzc0IC0zIC03OTEgLTE2IC0xOSAtMTQgLTIwIC0zMCAtMjUgLTI4NyAtNSAtMjU2IC02IC0yNzQgLTI3IC0zMTMKLTI1IC00OCAtODMgLTEwMSAtMTI5IC0xMjAgLTkzIC0zOSAtMjYwIDcgLTM3NSAxMDMgLTEzMSAxMTAgLTIzMyAyNjYgLTI4MAo0MjggLTE5IDY1IC0yNCAxMDMgLTIzIDIwNSAwIDEzMyAxNSAyMTggNTYgMzI1IDkxIDIzMyAyODUgNDEyIDUyOCA0ODcgbDc1CjIyIDg4NyA2IGM4MzQgNSA4ODggNiA5MDUgMjMgMTYgMTYgMTggNDcgMjEgMzY1IDIgMTkxIDAgMzU3IC0zIDM2OSAtMTQgNTYKNDMgNTMgLTkzOCA1MiAtNjc3IC0xIC05MjIgLTQgLTk4MiAtMTR6Ii8+CjxwYXRoIGQ9Ik02NDYwIDEzMDAgYy0xNDEgLTIyIC0yMzcgLTgxIC0yODcgLTE3OSAtMjggLTUzIC0zMyAtNzQgLTMzIC0xMzAgMAotMTc5IDgzIC0yNjcgMzM1IC0zNTYgNDQgLTE2IDkyIC0zNyAxMDcgLTQ3IDc4IC01NCAzNCAtMTY4IC02NSAtMTY4IC01MSAwCi05NiAyMiAtMTU2IDc2IC0yNyAyNCAtNTUgNDQgLTYyIDQ0IC0xNiAwIC0xNjEgLTk0IC0xODQgLTEyMCAtMjQgLTI2IC0xMwotNTEgNDYgLTEwNCAxNjMgLTE0NyA0MjMgLTE2OSA2MTAgLTUxIDk4IDYxIDE0MiAxNDYgMTQzIDI3NSAxIDY5IC0zIDkzIC0yMQoxMjYgLTQ2IDg2IC0xMjEgMTM4IC0zMjEgMjIwIC01OSAyNCAtMTE1IDUzIC0xMjQgNjUgLTI1IDI5IC0yMiA3MSA1IDk3IDUwCjQ3IDEwNiAzNiAxOTAgLTM3IDI3IC0yMiA1OCAtNDEgNjkgLTQxIDMxIDAgMTk4IDEyNyAxOTggMTUxIDAgMjIgLTc2IDkwCi0xMzggMTIyIC0xMDAgNTIgLTIxMiA3MiAtMzEyIDU3eiIvPgo8cGF0aCBkPSJNMTQzMTYgMTI4OSBjLTcyIC0xNyAtMTg0IC03OCAtMjQzIC0xMzMgLTExNSAtMTA3IC0xNzMgLTI0MyAtMTczCi00MDcgMCAtMzY1IDMxNiAtNjIwIDY3NSAtNTQ0IDE5NiA0MSAzNDEgMTc4IDQxMSAzODUgMjggODQgMjYgMjM0IC01IDMyOAotMjkgODggLTgzIDE3NSAtMTQ3IDIzNiAtNTMgNTEgLTE2MyAxMTIgLTIzOCAxMzIgLTU3IDE1IC0yMjAgMTcgLTI4MCAzegptMjA2IC0yOTkgYzk3IC0yNyAxODAgLTEzNiAxODAgLTIzOCAxIC03OCAtMjQgLTEzMyAtODYgLTE4OSAtNTEgLTQ3IC0xMTIKLTczIC0xNzEgLTczIC00NSAwIC0xMzAgMzkgLTE2NyA3NyAtOTggMTAxIC0xMDQgMjM3IC0xNiAzMzggNzEgODEgMTY1IDExMQoyNjAgODV6Ii8+CjxwYXRoIGQ9Ik0xNTk0OSAxMjc3IGMtMTE2IC00MCAtMTg3IC0xMDYgLTIyMCAtMjA1IC0xNyAtNTIgLTcgLTE3OSAxOSAtMjI5CjQ0IC04NiAxNDAgLTE1MSAzMTAgLTIwOSAxMDkgLTM4IDE0NiAtNjggMTQ2IC0xMTkgMCAtNzcgLTk0IC0xMjAgLTE3OCAtODAKLTE3IDggLTU1IDM1IC04MyA2MCAtMjggMjUgLTU3IDQ1IC02NSA0NSAtMTcgMCAtMTc5IC0xMTIgLTE5MiAtMTMyIC0xMyAtMjEKMzggLTg0IDEwNiAtMTMxIDgwIC01NSAxNTcgLTgwIDI3MSAtODUgODQgLTQgMTA4IC0xIDE4MCAyMiAxMTIgMzUgMTcyIDgyCjIxNyAxNzAgMjcgNTMgMzUgODMgMzggMTM2IDEwIDE2NSAtNjcgMjUxIC0zMTAgMzUxIC0xNjcgNjkgLTIwNCAxMDcgLTE2MgoxNjcgNDEgNTkgMTA2IDUxIDE5OSAtMjQgNzggLTYxIDY2IC02MyAxODYgMjcgNDggMzcgNzkgNjcgNzkgNzggMCAyMiAtNzAgODkKLTEzMSAxMjQgLTEwNyA2MiAtMjg1IDc3IC00MTAgMzR6Ii8+CjxwYXRoIGQ9Ik03NjU4IDEyNjkgYy0xNSAtOSAtMTggLTI2IC0xOCAtMTE5IDAgLTU5IDMgLTExNSA2IC0xMjQgNSAtMTQgMjcKLTE2IDE0NCAtMTYgMTIwIDAgMTM5IC0yIDE1MyAtMTggMTUgLTE3IDE3IC01OCAxNyAtMzc5IDAgLTE5OSAzIC0zNjggNiAtMzc3CjUgLTEzIDI3IC0xNiAxMzggLTE2IDg5IDAgMTM2IDQgMTQ0IDEyIDkgOSAxMiAxMDcgMTIgMzc4IDAgMzQzIDEgMzY4IDE4IDM4MwoxNSAxNCA0MiAxNyAxNTUgMTcgMTYxIDAgMTQ5IC0xMiAxNDUgMTUwIGwtMyAxMDUgLTQwIDcgYy02MyAxMSAtODU3IDggLTg3NwotM3oiLz4KPHBhdGggZD0iTTkzMzggMTI2OSBjLTEwIC02IC0xNCAtNzAgLTE2IC0yNzEgLTUgLTQyMCAxMyAtNTUwIDkyIC02NTcgNzMgLTk5CjE4MSAtMTQ0IDM1NiAtMTQ4IDIxOSAtNSAzNjAgNjAgNDMwIDE5OCA1MiAxMDEgNTMgMTExIDU3IDUwMSBsNCAzNjcgLTIyIDExCmMtMTUgOCAtNjAgMTEgLTE0MyA3IC02NiAtMyAtMTIyIC02IC0xMjMgLTYgLTEgLTEgLTMgLTE1MSAtNiAtMzMzIC0zIC0xODMKLTggLTM0NiAtMTIgLTM2MSAtMTEgLTQyIC02NSAtOTQgLTExMSAtMTA2IC05NiAtMjYgLTE4OCAyNCAtMjEyIDExNCAtOCAzMQotMTIgMTQ2IC0xMiAzNjAgbDAgMzE1IC0yNyAxMSBjLTMxIDEyIC0yMzUgMTAgLTI1NSAtMnoiLz4KPHBhdGggZD0iTTExMDY2IDEyNjQgYy0xNCAtMTQgLTE2IC03NSAtMTYgLTUxOCAwIC00MjkgMiAtNTA1IDE1IC01MTYgMTAgLTkKNzggLTExIDI2NyAtNyAyNDAgNCAyNTcgNSAzMzQgMzAgMjM1IDc3IDM1NCAyNDIgMzU0IDQ5MiAwIDE2NyAtNDAgMjc1IC0xMzgKMzcyIC02MSA2MSAtMTY0IDExNCAtMjY3IDEzOSAtMTAzIDI0IC01MjcgMzEgLTU0OSA4eiBtNDcxIC0yNjkgYzEyMCAtMzYgMTc1Ci0xMTIgMTc1IC0yNDMgMCAtMTI1IC00NCAtMTk5IC0xNDEgLTI0MCAtNTcgLTI0IC0xNTkgLTM2IC0xOTQgLTIzIGwtMjcgMTEgMAoyNDMgYzAgMTc2IDMgMjQ2IDEyIDI1NSAxNyAxNyAxMTQgMTUgMTc1IC0zeiIvPgo8cGF0aCBkPSJNMTI4MzggMTI3MyBjLTE2IC00IC0xOCAtNDAgLTIwIC01MDkgLTIgLTI3OCAwIC01MTQgNCAtNTI1IDcgLTE4CjE2IC0xOSAxNTAgLTE3IGwxNDMgMyAzIDUxNCBjMSAzNDAgLTEgNTE4IC04IDUyNSAtMTAgMTAgLTIzNyAxNyAtMjcyIDl6Ii8+CjwvZz4KPC9zdmc+Cg==">
|
|
<img id="mojangLogo" src="data:image/svg+xml;base64,PD94bWwgdmVyc2lvbj0iMS4wIiBzdGFuZGFsb25lPSJubyI/Pgo8IURPQ1RZUEUgc3ZnIFBVQkxJQyAiLS8vVzNDLy9EVEQgU1ZHIDIwMDEwOTA0Ly9FTiIKICJodHRwOi8vd3d3LnczLm9yZy9UUi8yMDAxL1JFQy1TVkctMjAwMTA5MDQvRFREL3N2ZzEwLmR0ZCI+CjxzdmcgdmVyc2lvbj0iMS4wIiB4bWxucz0iaHR0cDovL3d3dy53My5vcmcvMjAwMC9zdmciCiB3aWR0aD0iMjI1NS4wMDAwMDBwdCIgaGVpZ2h0PSI1NzIuMDAwMDAwcHQiIHZpZXdCb3g9IjAgMCAyMjU1LjAwMDAwMCA1NzIuMDAwMDAwIgogcHJlc2VydmVBc3BlY3RSYXRpbz0ieE1pZFlNaWQgbWVldCI+Cgo8ZyB0cmFuc2Zvcm09InRyYW5zbGF0ZSgwLjAwMDAwMCw1NzIuMDAwMDAwKSBzY2FsZSgwLjEwMDAwMCwtMC4xMDAwMDApIgpmaWxsPSIjMDAwMDAwIiBzdHJva2U9Im5vbmUiPgo8cGF0aCBkPSJNNTc5MiA1NDIwIGMtNzU4IC03OCAtMTM1NSAtNjI1IC0xNTAxIC0xMzc1IC02NyAtMzQ2IC0xMiAtNzM0IDE1MQotMTA2MCAyMDIgLTQwNiA1NDcgLTcwNSA5NzggLTg0OSAxOTggLTY2IDI4OSAtODAgNTI1IC04MCAyMjggMCAzMDEgMTAgNDg1CjY1IDM0NiAxMDIgNjU2IDMxOSA4NzkgNjE1IDEwOSAxNDYgMjIxIDM4MSAyNjkgNTY5IDgyIDMxNiA3OCA1OTYgLTExIDkxMQotMTc3IDYxOCAtNzExIDEwODggLTEzNTIgMTE4OSAtMTE4IDE4IC0zMTkgMjUgLTQyMyAxNXogbTM2MyAtODgxIGMyNTEgLTY1CjQ2MSAtMjUyIDU2MiAtNDk5IDQ0IC0xMDcgNTcgLTE3OSA1NiAtMzEwIC0xIC0yMzcgLTg3IC00MjkgLTI2NiAtNTk2IC0zMTcKLTI5NSAtNzk4IC0yOTcgLTExMDkgLTUgLTEyMSAxMTMgLTE5MSAyMjEgLTIzNiAzNjEgLTExNSAzNTggMzMgNzQ5IDM1OSA5NTMKMTkxIDExOSA0MTcgMTUzIDYzNCA5NnoiLz4KPHBhdGggZD0iTTIwMCA1MzYwIGMtMjAgLTIwIC0yMCAtMzMgLTIwIC0xNjIwIGwwIC0xNjAxIDI1IC0yNCAyNCAtMjUgMzUwIDAKYzM2NyAwIDM5NCAzIDQwNSA0NCAzIDExIDYgNTIxIDYgMTEzMSAwIDc3MCAzIDExMjIgMTEgMTE1MCAxNCA1MiAxMDIgMTM5CjE0OCAxNDggMTkgNCA5NCA3IDE2OCA3IDE0NiAwIDE4NSAtMTAgMjM2IC01OCA2NSAtNjIgNjIgLTE0IDY3IC04MjAgbDUgLTczNAoyNCAtMTkgYzIyIC0xOCA0MyAtMTkgMzcwIC0xOSAxOTAgMCAzNTYgMyAzNjkgNiA1MyAxNSA1MiA2IDUyIDc3NCAwIDY4MCAxCjcxMiAxOSA3NDggMTEgMjAgMzIgNDkgNDggNjQgNTEgNDkgODkgNTggMjQzIDU4IDE1NyAwIDE5MiAtOSAyNDggLTYzIDcyIC02OQo2NyAzMyA2OSAtMTIzMSBsMyAtMTEzOSAyMiAtMjQgMjEgLTIzIDM1OSAwIDM1OSAwIDI0IDI1IDI1IDI0IDAgMTE4NiAwIDExODYKLTI1IDI0IGMtMjQgMjUgLTI1IDI1IC0yMzMgMjUgLTIzMSAwIC0yODAgOCAtMzY0IDYxIC0yNSAxNyAtNjYgNTEgLTkxIDc4Ci05NSAxMDEgLTExOSAxOTUgLTExNyA0NDEgMyAyMTAgMyAyMDYgLTE2IDIyNCAtMTQgMTQgLTE1NiAxNiAtMTQxNSAxNiAtMTM4NgowIC0xMzk5IDAgLTE0MTkgLTIweiIvPgo8cGF0aCBkPSJNODgzMCA1MzYwIGMtMTkgLTE5IC0yMCAtMzMgLTIwIC0zODQgbDAgLTM2NSAyNiAtMjAgYzI2IC0yMSAzMyAtMjEKODEzIC0yMSA1OTkgMCA3OTAgLTMgNzk5IC0xMiA5IC05IDEyIC0xODcgMTIgLTczOCAwIC04MjAgMyAtNzkwIC03MyAtODU2Ci0yMyAtMjAgLTUyIC00MCAtNjQgLTQ1IC0xMyAtNSAtMTk1IC05IC00MDUgLTEwIC00MjQgLTEgLTQ3MiA0IC02MTAgNjMgLTI3MgoxMTUgLTQ1OCAzNjEgLTUwOCA2NzMgLTYgMzYgLTE2IDY1IC0yNyA3MyAtMTMgOSAtMTA0IDEyIC0zNzQgMTIgLTE5NyAwIC0zNjUKLTMgLTM3NCAtNiAtMzUgLTE0IC00MiAtNTYgLTI5IC0xNzcgNjUgLTU2NyA0MTQgLTEwNTUgOTI5IC0xMjk3IDEyMSAtNTcgMjI1Ci05MiAzNzYgLTEyNyAxMTIgLTI1IDEyMSAtMjYgNTk4IC0zMCAzNjUgLTQgNDg5IC0yIDUwNiA3IDQwIDIxIDQ1IDUxIDQ1IDI2NAowIDIzMSA3IDI2NyA2OSAzNjQgNDcgNzIgMTM4IDE0NCAyMTQgMTY5IDQwIDEyIDEwNyAxOCAyODAgMjIgMjExIDYgMjMwIDcKMjQzIDI1IDEyIDE3IDE0IDE5OSAxNCAxMjA4IDAgMTE3NSAwIDExODggLTIwIDEyMDggLTIwIDIwIC0zMyAyMCAtMTIxMCAyMAotMTE3NyAwIC0xMTkwIDAgLTEyMTAgLTIweiIvPgo8cGF0aCBkPSJNMTMwOTUgNTM2OSBjLTEzMyAtMjMgLTE3OSAtMzUgLTI4NSAtNzAgLTYzNSAtMjA5IC0xMDcxIC03NzMgLTExMjAKLTE0NDkgLTEzIC0xODAgLTEzIC0xNjY5IDAgLTE3MDcgNiAtMTcgMjIgLTM1IDM2IC00MiAxNyAtNyAxMzUgLTExIDM3NSAtMTEKbDM1MCAwIDI0IDI1IDI1IDI0IDAgODQ1IGMwIDkxNCAtMSA5MDUgNTUgMTA1MiA5MSAyNDEgMzAyIDQzMiA1NjAgNTA2IDc4IDIyCjkyIDIzIDQ5MSAyMyBsNDEwIDAgNDIgLTI4IGMyMyAtMTUgNTQgLTQ2IDY5IC02OSBsMjggLTQxIDMgLTI2MCAzIC0yNTkgLTI1Ci01MyBjLTI4IC01NiAtNzggLTk4IC0xMzcgLTExNSAtMjAgLTYgLTIzMCAtMTAgLTUxMSAtMTAgLTQ2MyAwIC00NzkgLTEgLTQ5OAotMjAgLTExIC0xMSAtMjIgLTMwIC0yNSAtNDIgLTMgLTEzIC01IC0xNzggLTMgLTM2NiBsMyAtMzQ0IDI0IC0xOSBjMjIgLTE4CjQ2IC0xOSA1MDAgLTE5IDMwNSAwIDQ5MCAtNCA1MTQgLTExIDQ5IC0xMyAxMTUgLTczIDEzOCAtMTI0IDE3IC0zNiAxOSAtNzEKMTkgLTM0MyBsMCAtMzAzIDI1IC0yNCAyNCAtMjUgMzYwIDAgYzM1OCAwIDM2MCAwIDM4MSAyMiAyMCAyMiAyMCAyOCAyMCAxMjE0CjAgMTA3MCAtMiAxMTk0IC0xNiAxMjA4IC0yMyAyNCAtNDAgMjUgLTI3NCAyOCBsLTIxNSAzIC02NSAzMiBjLTk5IDQ5IC0xNjMKMTExIC0yMDcgMjAxIGwtMzggNzcgLTMgMjE1IGMtMSAxMTggLTUgMjI1IC03IDIzNyAtMTIgNTUgNCA1MyAtNTE4IDUyIC0yNjUKLTEgLTUwNCAtNSAtNTMyIC0xMHoiLz4KPHBhdGggZD0iTTE1NDMwIDUzNjAgYy0yMCAtMjAgLTIwIC0zMyAtMjAgLTE2MjAgbDAgLTE2MDEgMjUgLTI0IDI0IC0yNSAzNTEKMCBjMzQ4IDAgMzgyIDMgNDAyIDM0IDQgNiA4IDUxMyA4IDExMjcgMCAxMjMyIC0yIDExODUgNjMgMTI1MCA3MSA3MiAzNyA2OQo3NzIgNjkgNjE3IDAgNjYzIC0yIDcwMCAtMTkgNDMgLTE5IDEwMCAtNzggMTE2IC0xMTggNSAtMTQgOSAtNDc1IDkgLTExNDIgMAotNzU1IDMgLTExMjggMTAgLTExNDggNiAtMTcgMjIgLTM1IDM2IC00MiAxNyAtNyAxMzUgLTExIDM3NSAtMTEgbDM1MCAwIDI1CjI1IDI0IDI0IC0yIDExOTIgLTMgMTE5MSAtMjQgMTkgYy0yMSAxNyAtNDEgMTkgLTIzMCAxOSAtMjIzIDAgLTI3NSA4IC0zNTcKNTYgLTUzIDMxIC0xMzYgMTE4IC0xNjMgMTcyIC0xOSAzNyAtNTIgMTQ0IC01MCAxNjAgMSA0IDEgOTQgMCAyMDAgLTEgMTc4IC0yCjE5MyAtMjEgMjEyIC0yMCAyMCAtMzMgMjAgLTEyMTAgMjAgLTExNzcgMCAtMTE5MCAwIC0xMjEwIC0yMHoiLz4KPHBhdGggZD0iTTIwNDU1IDUzNjUgYy0yNTMgLTQwIC00OTUgLTE0MCAtNzA2IC0yOTEgLTQxNCAtMjk3IC02NTggLTc5MiAtNjU5Ci0xMzM2IC0xIC00NDQgMTcyIC04NTggNDkyIC0xMTc4IDI1NCAtMjU0IDYyMSAtNDI1IDk4NiAtNDYwIDk4IC05IDEzNCAtMgoxNDkgMjkgNCA5IDEwIDE1OSAxMyAzMzMgbDUgMzE2IDMwIDQzIGMxOSAyNyA1MCA1NCA4NCA3MSBsNTMgMjggMjMwIDAgYzI1MgowIDI5NyAtNyAzNTIgLTUyIDc0IC02MSA3NiAtNzAgNzYgLTQwNyAwIC0zMTggMyAtMzQwIDQ3IC0zNjAgMTYgLTcgMTM4IC0xMQozNzIgLTExIDMyOSAwIDM1MCAxIDM3MiAxOSBsMjQgMTkgMCA3ODIgMCA3ODIgLTI0IDE5IGMtMjIgMTggLTUwIDE5IC03OTUgMTkKLTY3MiAtMSAtNzc0IC0zIC03OTEgLTE2IC0xOSAtMTQgLTIwIC0zMCAtMjUgLTI4NyAtNSAtMjU2IC02IC0yNzQgLTI3IC0zMTMKLTI1IC00OCAtODMgLTEwMSAtMTI5IC0xMjAgLTkzIC0zOSAtMjYwIDcgLTM3NSAxMDMgLTEzMSAxMTAgLTIzMyAyNjYgLTI4MAo0MjggLTE5IDY1IC0yNCAxMDMgLTIzIDIwNSAwIDEzMyAxNSAyMTggNTYgMzI1IDkxIDIzMyAyODUgNDEyIDUyOCA0ODcgbDc1CjIyIDg4NyA2IGM4MzQgNSA4ODggNiA5MDUgMjMgMTYgMTYgMTggNDcgMjEgMzY1IDIgMTkxIDAgMzU3IC0zIDM2OSAtMTQgNTYKNDMgNTMgLTkzOCA1MiAtNjc3IC0xIC05MjIgLTQgLTk4MiAtMTR6Ii8+CjxwYXRoIGQ9Ik02NDYwIDEzMDAgYy0xNDEgLTIyIC0yMzcgLTgxIC0yODcgLTE3OSAtMjggLTUzIC0zMyAtNzQgLTMzIC0xMzAgMAotMTc5IDgzIC0yNjcgMzM1IC0zNTYgNDQgLTE2IDkyIC0zNyAxMDcgLTQ3IDc4IC01NCAzNCAtMTY4IC02NSAtMTY4IC01MSAwCi05NiAyMiAtMTU2IDc2IC0yNyAyNCAtNTUgNDQgLTYyIDQ0IC0xNiAwIC0xNjEgLTk0IC0xODQgLTEyMCAtMjQgLTI2IC0xMwotNTEgNDYgLTEwNCAxNjMgLTE0NyA0MjMgLTE2OSA2MTAgLTUxIDk4IDYxIDE0MiAxNDYgMTQzIDI3NSAxIDY5IC0zIDkzIC0yMQoxMjYgLTQ2IDg2IC0xMjEgMTM4IC0zMjEgMjIwIC01OSAyNCAtMTE1IDUzIC0xMjQgNjUgLTI1IDI5IC0yMiA3MSA1IDk3IDUwCjQ3IDEwNiAzNiAxOTAgLTM3IDI3IC0yMiA1OCAtNDEgNjkgLTQxIDMxIDAgMTk4IDEyNyAxOTggMTUxIDAgMjIgLTc2IDkwCi0xMzggMTIyIC0xMDAgNTIgLTIxMiA3MiAtMzEyIDU3eiIvPgo8cGF0aCBkPSJNMTQzMTYgMTI4OSBjLTcyIC0xNyAtMTg0IC03OCAtMjQzIC0xMzMgLTExNSAtMTA3IC0xNzMgLTI0MyAtMTczCi00MDcgMCAtMzY1IDMxNiAtNjIwIDY3NSAtNTQ0IDE5NiA0MSAzNDEgMTc4IDQxMSAzODUgMjggODQgMjYgMjM0IC01IDMyOAotMjkgODggLTgzIDE3NSAtMTQ3IDIzNiAtNTMgNTEgLTE2MyAxMTIgLTIzOCAxMzIgLTU3IDE1IC0yMjAgMTcgLTI4MCAzegptMjA2IC0yOTkgYzk3IC0yNyAxODAgLTEzNiAxODAgLTIzOCAxIC03OCAtMjQgLTEzMyAtODYgLTE4OSAtNTEgLTQ3IC0xMTIKLTczIC0xNzEgLTczIC00NSAwIC0xMzAgMzkgLTE2NyA3NyAtOTggMTAxIC0xMDQgMjM3IC0xNiAzMzggNzEgODEgMTY1IDExMQoyNjAgODV6Ii8+CjxwYXRoIGQ9Ik0xNTk0OSAxMjc3IGMtMTE2IC00MCAtMTg3IC0xMDYgLTIyMCAtMjA1IC0xNyAtNTIgLTcgLTE3OSAxOSAtMjI5CjQ0IC04NiAxNDAgLTE1MSAzMTAgLTIwOSAxMDkgLTM4IDE0NiAtNjggMTQ2IC0xMTkgMCAtNzcgLTk0IC0xMjAgLTE3OCAtODAKLTE3IDggLTU1IDM1IC04MyA2MCAtMjggMjUgLTU3IDQ1IC02NSA0NSAtMTcgMCAtMTc5IC0xMTIgLTE5MiAtMTMyIC0xMyAtMjEKMzggLTg0IDEwNiAtMTMxIDgwIC01NSAxNTcgLTgwIDI3MSAtODUgODQgLTQgMTA4IC0xIDE4MCAyMiAxMTIgMzUgMTcyIDgyCjIxNyAxNzAgMjcgNTMgMzUgODMgMzggMTM2IDEwIDE2NSAtNjcgMjUxIC0zMTAgMzUxIC0xNjcgNjkgLTIwNCAxMDcgLTE2MgoxNjcgNDEgNTkgMTA2IDUxIDE5OSAtMjQgNzggLTYxIDY2IC02MyAxODYgMjcgNDggMzcgNzkgNjcgNzkgNzggMCAyMiAtNzAgODkKLTEzMSAxMjQgLTEwNyA2MiAtMjg1IDc3IC00MTAgMzR6Ii8+CjxwYXRoIGQ9Ik03NjU4IDEyNjkgYy0xNSAtOSAtMTggLTI2IC0xOCAtMTE5IDAgLTU5IDMgLTExNSA2IC0xMjQgNSAtMTQgMjcKLTE2IDE0NCAtMTYgMTIwIDAgMTM5IC0yIDE1MyAtMTggMTUgLTE3IDE3IC01OCAxNyAtMzc5IDAgLTE5OSAzIC0zNjggNiAtMzc3CjUgLTEzIDI3IC0xNiAxMzggLTE2IDg5IDAgMTM2IDQgMTQ0IDEyIDkgOSAxMiAxMDcgMTIgMzc4IDAgMzQzIDEgMzY4IDE4IDM4MwoxNSAxNCA0MiAxNyAxNTUgMTcgMTYxIDAgMTQ5IC0xMiAxNDUgMTUwIGwtMyAxMDUgLTQwIDcgYy02MyAxMSAtODU3IDggLTg3NwotM3oiLz4KPHBhdGggZD0iTTkzMzggMTI2OSBjLTEwIC02IC0xNCAtNzAgLTE2IC0yNzEgLTUgLTQyMCAxMyAtNTUwIDkyIC02NTcgNzMgLTk5CjE4MSAtMTQ0IDM1NiAtMTQ4IDIxOSAtNSAzNjAgNjAgNDMwIDE5OCA1MiAxMDEgNTMgMTExIDU3IDUwMSBsNCAzNjcgLTIyIDExCmMtMTUgOCAtNjAgMTEgLTE0MyA3IC02NiAtMyAtMTIyIC02IC0xMjMgLTYgLTEgLTEgLTMgLTE1MSAtNiAtMzMzIC0zIC0xODMKLTggLTM0NiAtMTIgLTM2MSAtMTEgLTQyIC02NSAtOTQgLTExMSAtMTA2IC05NiAtMjYgLTE4OCAyNCAtMjEyIDExNCAtOCAzMQotMTIgMTQ2IC0xMiAzNjAgbDAgMzE1IC0yNyAxMSBjLTMxIDEyIC0yMzUgMTAgLTI1NSAtMnoiLz4KPHBhdGggZD0iTTExMDY2IDEyNjQgYy0xNCAtMTQgLTE2IC03NSAtMTYgLTUxOCAwIC00MjkgMiAtNTA1IDE1IC01MTYgMTAgLTkKNzggLTExIDI2NyAtNyAyNDAgNCAyNTcgNSAzMzQgMzAgMjM1IDc3IDM1NCAyNDIgMzU0IDQ5MiAwIDE2NyAtNDAgMjc1IC0xMzgKMzcyIC02MSA2MSAtMTY0IDExNCAtMjY3IDEzOSAtMTAzIDI0IC01MjcgMzEgLTU0OSA4eiBtNDcxIC0yNjkgYzEyMCAtMzYgMTc1Ci0xMTIgMTc1IC0yNDMgMCAtMTI1IC00NCAtMTk5IC0xNDEgLTI0MCAtNTcgLTI0IC0xNTkgLTM2IC0xOTQgLTIzIGwtMjcgMTEgMAoyNDMgYzAgMTc2IDMgMjQ2IDEyIDI1NSAxNyAxNyAxMTQgMTUgMTc1IC0zeiIvPgo8cGF0aCBkPSJNMTI4MzggMTI3MyBjLTE2IC00IC0xOCAtNDAgLTIwIC01MDkgLTIgLTI3OCAwIC01MTQgNCAtNTI1IDcgLTE4CjE2IC0xOSAxNTAgLTE3IGwxNDMgMyAzIDUxNCBjMSAzNDAgLTEgNTE4IC04IDUyNSAtMTAgMTAgLTIzNyAxNyAtMjcyIDl6Ii8+CjwvZz4KPC9zdmc+Cg==">
|
|
<div id="kys"></div>
|
|
<h2 id="progress">Downloading assets: 0%</h2>
|
|
<div id="progressBar"><div id="progressBarInside"></div></div>
|
|
</div>
|
|
|
|
<script type="text/javascript">
|
|
let controllerIndex = null;
|
|
|
|
//Left JoyStick
|
|
let leftRightAxis1 = 0;
|
|
let upDownAxis1 = 0;
|
|
|
|
//Right JoyStick
|
|
let leftRightAxis2 = 0;
|
|
let upDownAxis2 = 0;
|
|
|
|
const buttonStates = {};
|
|
|
|
window.addEventListener("gamepadconnected", (event) => {
|
|
const gamepad = event.gamepad;
|
|
controllerIndex = gamepad.index;
|
|
});
|
|
|
|
window.addEventListener("gamepaddisconnected",(event) => {
|
|
controllerIndex = null;
|
|
});
|
|
|
|
function handleSticks(axes) {
|
|
updateStick1(axes[0], axes[1]);
|
|
updateStick2(axes[2], axes[3]);
|
|
}
|
|
|
|
function updateStick1(leftRighAxis, upDownAxis) {
|
|
const multiplier = 25;
|
|
const stickLeftRight = leftRighAxis * multiplier;
|
|
const stickUpDown = upDownAxis * multiplier;
|
|
leftRightAxis1 = stickLeftRight;
|
|
upDownAxis1 = stickUpDown;
|
|
}
|
|
|
|
function updateStick2(leftRightAxis, upDownAxis) {
|
|
const multiplier = 25;
|
|
const stickLeftRight = leftRightAxis * multiplier;
|
|
const stickUpDown = upDownAxis * multiplier;
|
|
leftRightAxis2 = stickLeftRight;
|
|
upDownAxis2 = stickUpDown;
|
|
}
|
|
|
|
function controllerConnected() {
|
|
if(controllerIndex != null) {
|
|
return true;
|
|
}
|
|
return false;
|
|
}
|
|
|
|
function getCameraX() {
|
|
return leftRightAxis2;
|
|
}
|
|
|
|
function getCameraY() {
|
|
return upDownAxis2;
|
|
}
|
|
|
|
function isWalkingForward() {
|
|
if(upDownAxis1 < 0) {
|
|
return true;
|
|
}
|
|
return false;
|
|
}
|
|
|
|
function isWalkingBackward() {
|
|
if(upDownAxis1 > 0) {
|
|
return true;
|
|
}
|
|
return false;
|
|
}
|
|
|
|
function isWalkingLeft() {
|
|
if(leftRightAxis1 < 0) {
|
|
return true;
|
|
}
|
|
return false;
|
|
}
|
|
|
|
function isWalkingRight() {
|
|
if(leftRightAxis1 > 0) {
|
|
return true;
|
|
}
|
|
return false;
|
|
}
|
|
|
|
function isKeyDown(keyCode) {
|
|
const gamepads = navigator.getGamepads();
|
|
if (gamepads.length > 0) {
|
|
const gamepad = gamepads[0];
|
|
if (gamepad) {
|
|
const button = gamepad.buttons.find(btn => btn.value !== 0 && btn.keyCode === keyCode);
|
|
return !!button;
|
|
}
|
|
}
|
|
return false;
|
|
}
|
|
|
|
function isPressed(keyCode) {
|
|
const gamepads = navigator.getGamepads();
|
|
if (gamepads.length > 0) {
|
|
const gamepad = gamepads[0];
|
|
if (gamepad) {
|
|
const button = gamepad.buttons.find(btn => btn.keyCode === keyCode);
|
|
if (button.pressed && !buttonStates[keyCode]) {
|
|
buttonStates[keyCode] = true;
|
|
return true;
|
|
} else {
|
|
buttonStates[keyCode] = button.pressed;
|
|
return false;
|
|
}
|
|
}
|
|
}
|
|
return false;
|
|
}
|
|
|
|
function updateController() {
|
|
if(controllerConnected()) {
|
|
if(controllerIndex != null) {
|
|
const gamepad = navigator.getGamepads()[controllerIndex];
|
|
handleSticks(gamepad.axes);
|
|
}
|
|
}
|
|
requestAnimationFrame(updateController);
|
|
}
|
|
|
|
requestAnimationFrame(updateController);
|
|
</script>
|
|
<link type="image/png" rel="shortcut icon" href="data:image/png;base64,iVBORw0KGgoAAAANSUhEUgAAACAAAAAgCAIAAAD8GO2jAAAAAXNSR0IArs4c6QAAAARnQU1BAACxjwv8YQUAAAAJcEhZcwAAFiUAABYlAUlSJPAAAAR/SURBVEhLtZXZK3ZRFMYPcqXc+gv413DHxVuGIpIhkciQWaRccCNjSCkligwXSOZ5nmfv9zvn2e8+58V753sudmuvvdZ61l5r7XOc8H+GS/D19aUNkPz5+aktQH5/f//4+LBKZKuRkpUtQjCUYG5gD2T38vLy/PwsDfL9/f3Dw8PT05M0b29vnKLhCKCBT4L4gvBLBIei4//4+Hh1dUVEQutUuLu7E83FxQUGnKLBWKfQaA3S+AREVxaEOD8/Pzk50XpzcyMDcH19zdZG3N3d3dzc3Nvb01aX5pQUpQGGQJxcQpfNysoKhUIdHR1o1tbWbInYAgxIPDMzMy8vLzc3FxqOdMoRqwJK8G8ALUYIhHMiSEhIwI6CyIb0qQzC4eGhsXCc1tZWnZIEKzdQJQSXgKxfX18RCM3Z5eWlcfVAxKOjo+Pj49PTU88lTOk2NjbMsePc3t6SAfcgFdszOyMuAdeBg0CQi2lhYUHOeOLDCisN8FzcPFZXV3t7ezHY3t5GQ+6it+2xMASsKhEEWKsmRLRBBUpPvpJ/TpFKFBwKYAiITmicsbYhdHfJAltqhUCVsCQhwslmeXmZxiBQT9c0Ar9E2O3v72sYSE0N1yQArkKy0kBMXLqlZqIZHR3t6empqqqSDcBdhXEJSJ/bUc3q6uq+vj629GB9fR1WsLW1NTs7u7S0RN2locMjIyOEm5ubQ7+4uJienk4/+vv77Y1hwhLBEKhwWHitdVFfX9/Y2Gg2HuLi4owUAysrK8yCG97rh0+ApP5Q2ZycHFlPTExUVFRIBvn5+WhKSkp2dnaMKhptbW2426GgQ/rwuAQCZ1hwFayLiork9hMFBQV1dXVmE0BLS4vqw3QFB8kn4IAxoGPkYpxi4FeDmpqas7Mz4pClAgqGwD48rjY2NmacYqC0tJQ1KSlJWyE5OZkpUKkBAxZVIntAoZh04+Q48fHxPNGBgYHExMT29naj9cBodnZ2mo3jlJWVMeW2OGQck4B1amqqoaGhqamJjx2lGxwcpL0mUgR8fJhsWqJtSkoKU2SbHHUDpkhPBujd8xuQG6PJRM/Pz09PT7O1NNnZ2Tw3fgZkXVhYKCUlUhBATP+hCVyKZGky17RV0g04laayslJ6hlVeFHB4eFhKaogGd0LxtmTgE+hbhKDnPjMzgw8E3qGL2tpaBWpubjYqj2BoaEj6rq4uNATRZ0ZwCbiL6gXEzINk5vCBQJ9rMD4+rkA8QNK036uDg4Py8vLu7m680KjIBNR3zBDoWQM1g98snyB+VSoRW8C/UwR81/SvhgNj9JOTkwwVERUdRBEI0BAdLRVERkhLS8vIyEDQlrsTPTU1lVFhKxARvZgUlFLbegCf4BvIsbi4mIg4E5EogIHhiKCMtU0WUFiVy06j5fAJIDdSBDQw+PegDfBRcbOPwH4F9LuFWIIQdQNKwWqzIE0aoFUaBsw+SQuFw0uNtC9A+F4i3QNrbg3IDn+SAsHh+wYiEpeyBEMLv/cAO6KzAijxxB+Y4wisBhssJUhjEbPJf4Nw+B+JXqLW3bw+wQAAAABJRU5ErkJggg==" />
|
|
</head>
|
|
<body style="margin:0px;width:100vw;height:100vh;overflow:hidden;" id="game_frame">
|
|
<div style="margin:0px;width:100%;height:100%;font-family:sans-serif;display:flex;align-items:center;user-select:none;" id="launch_countdown_screen">
|
|
<div style="margin:auto;text-align:center;">
|
|
<h1>This file is from <span style="color:#AA0000;">${date}</span></h1>
|
|
<h2>Game will launch in <span id="launchCountdownNumber">5</span>...</h2>
|
|
<div style="border:2px solid black;width:100%;height:15px;padding:1px;margin-bottom:20vh;"><div id="launchCountdownProgress" style="background-color:#555555;width:0%;height:100%;"></div></div>
|
|
</div>
|
|
</div>
|
|
</body>
|
|
</html>
|
|
|
|
<!-- lax1dude was here -->
|
|
<!-- PeytonPlayz585 was also here :> -->
|