266 lines
18 MiB
HTML
266 lines
18 MiB
HTML
|
<!DOCTYPE html>
|
||
|
<html style="width:100%;height:100%;background-color:black;">
|
||
|
<head>
|
||
|
<meta charset="UTF-8" />
|
||
|
<meta name="viewport" content="width=device-width, initial-scale=1.0, minimum-scale=1.0, maximum-scale=1.0" />
|
||
|
<meta name="description" content="EaglercraftL 1.9 Offline" />
|
||
|
<meta name="keywords" content="eaglercraft, eaglercraftx, minecraft, 1.8, 1.8.8" />
|
||
|
<title>EaglercraftL 1.9</title>
|
||
|
<meta property="og:locale" content="en-US" />
|
||
|
<meta property="og:type" content="website" />
|
||
|
<meta property="og:title" content="EaglercraftL 1.9" />
|
||
|
<meta property="og:description" content="Play minecraft 1.8 in your browser" />
|
||
|
<script type="text/javascript">
|
||
|
"use strict";
|
||
|
var relayId = Math.floor(Math.random() * 3);
|
||
|
|
||
|
// %%%%%%%%% launch options %%%%%%%%%%%%
|
||
|
|
||
|
window.eaglercraftXOptsHints = {
|
||
|
hintsVersion: 1,
|
||
|
container: "game_frame",
|
||
|
worldsDB: "worlds",
|
||
|
relays: [
|
||
|
{ addr: "wss://relay.deev.is/", comment: "lax1dude relay #1", primary: relayId === 0 },
|
||
|
{ addr: "wss://relay.lax1dude.net/", comment: "lax1dude relay #2", primary: relayId === 1 },
|
||
|
{ addr: "wss://relay.shhnowisnottheti.me/", comment: "ayunami relay #1", primary: relayId === 2 }
|
||
|
],
|
||
|
checkRelaysForUpdates: true
|
||
|
};
|
||
|
|
||
|
// %%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%
|
||
|
|
||
|
</script>
|
||
|
<style type="eaglercraft" id="eaglercraftXClientSignature">data:application/octet-stream;base64,RUFHU0lHAAEgU7ENrpfovNyZgYdyvhBejTP0jMxt6bB+jgLqs87aQvw/+Kr8R0sHlTQ8OohhP62ZbIEEPyEWqWj/6Za8ylvwBswTv7uLTtugw36Pq8di8sF0+ZCUw+WZe6A2AQi+eeCU61qqNGLZKSxrD5G7eHOeZtQIQiEVPFt7zRW/qR1BY/3CGZdCrDcqUXHEcJcysR17eek9maQPFf2quPwWpOmQAq1CyVEYxN/80NYmaZTMrnGA3UKrOHW5f1VSWTSUsS63V7Iv6Z/QwJTRFSkfxEBvfxyrXxrAmDYA3Z9W93fHVAHgKSQChyWPQ8bjmh9ApVkBV35J0Um17FgqtI2juPslAr0fiwgAAAAAAAD/Y2BgnNQbue82w7VPpuvins41F9awK3nIa3CMo/Ud5yXFwxerrCWvFl0tv1p0pZJBJS+1RC8nscIwpTQlVS81MT0ntSi5KDGtRK/MMN5CLzknMzWvhEHAFSHho2CoZ8nA75GfX5yZWhRSlJhXnJZaxMDAwMzAaqhnoGfAoBtakJJYkqpQkq9QamypkJiXolCUmptflqpQnFpUllqkUJyZkqqQnJ+fk5Jfnjf/tXrLuiafla07nJ5fnNT+S9FznuT1l6cS3UQ034UUND0XjPb4l7Oj4mKgVrHpLcYmbzYT1fdLlrxXnhstGGflp3XP6V5Dg63yreB9Vh93rWU5uHGOwb3rNaI3snI0vuo9XnmZVfCdm+lrl8Jo12mVteELpR7oNRtd/ykmul3ZeX7xg/nVselnJz/yOOjx6+Wm+7a1Kl6Piqxd1RvXejycGl0avPpiQAvQZ3whcxYFMbBkFqQVM1gnJaZVJqVmphmZmWQVpacWV2Xm5pQUGRkVF5mVl+abZFclZxdk5iWbZGfllCWmV2TkF2dkFRXmV2bkpy5kZTrHwF1anKqbDgyf8sRKBrWMkpKCYit9fZNUYMDkAINKLzNfH2SRvkpyZoqKvkpBYkmGSlq07QEG5tKiHAY5mIZScBjrlaTmllZV6FVUVukD+Ynlu7ZNRbVBE6YBKqAHMhyrJcY3xUpR9SrD9KaUpybp5WTmZWPqso/bMBuHjXlpJcUl+UWJ6ak49P6b6T8TVa8uTG9yTn5pSlpOYlGqLtjByfm5mPo3Jd3+iqpfCaa/3LgYh6XTvTpdsIclJPXDw3Kd1sJmiEJ1NIUZkLRfAk37cB0dMmaKOMIC7AJI2KNHBMRZiqIsfThCH0kvIiIguu6mPVyGqksVi67kNEQgQkMuoeoOYZeiRyBELwAE0fBqYAQAAA==</style>
|
||
|
<style type="eaglercraft" id="eaglercraftXClientBundle">data:application/octet-stream;base64,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
|
||
|
<script type="text/javascript">
|
||
|
"use strict";
|
||
|
(function(){
|
||
|
function eaglerBundleUnwrap(tagIn) { var e = document.getElementById(tagIn); var ret = e.innerText; document.head.removeChild(e); return ret; }
|
||
|
window.eaglercraftXClientSignature = eaglerBundleUnwrap("eaglercraftXClientSignature");
|
||
|
window.eaglercraftXClientBundle = eaglerBundleUnwrap("eaglercraftXClientBundle");
|
||
|
})();
|
||
|
</script>
|
||
|
<script type="text/javascript">
|
||
|
"use strict";
|
||
|
(function(){
|
||
|
(function(a){if("object"==typeof exports&&"undefined"!=typeof module)module.exports=a();else if("function"==typeof define&&define.amd)define([],a);else{var b;b="undefined"==typeof window?"undefined"==typeof global?"undefined"==typeof self?this:self:global:window,b.base64js=a()}})(function(){return function(){function b(d,e,g){function a(j,i){if(!e[j]){if(!d[j]){var f="function"==typeof require&&require;if(!i&&f)return f(j,!0);if(h)return h(j,!0);var c=new Error("Cannot find module '"+j+"'");throw c.code="MODULE_NOT_FOUND",c}var k=e[j]={exports:{}};d[j][0].call(k.exports,function(b){var c=d[j][1][b];return a(c||b)},k,k.exports,b,d,e,g)}return e[j].exports}for(var h="function"==typeof require&&require,c=0;c<g.length;c++)a(g[c]);return a}return b}()({"/":[function(a,b,c){'use strict';function d(a){var b=a.length;if(0<b%4)throw new Error("Invalid string. Length must be a multiple of 4");var c=a.indexOf("=");-1===c&&(c=b);var d=c===b?0:4-c%4;return[c,d]}function e(a,b,c){return 3*(b+c)/4-c}function f(a){var b,c,f=d(a),g=f[0],h=f[1],j=new m(e(a,g,h)),k=0,n=0<h?g-4:g;for(c=0;c<n;c+=4)b=l[a.charCodeAt(c)]<<18|l[a.charCodeAt(c+1)]<<12|l[a.charCodeAt(c+2)]<<6|l[a.charCodeAt(c+3)],j[k++]=255&b>>16,j[k++]=255&b>>8,j[k++]=255&b;return 2===h&&(b=l[a.charCodeAt(c)]<<2|l[a.charCodeAt(c+1)]>>4,j[k++]=255&b),1===h&&(b=l[a.charCodeAt(c)]<<10|l[a.charCodeAt(c+1)]<<4|l[a.charCodeAt(c+2)]>>2,j[k++]=255&b>>8,j[k++]=255&b),j}function g(a){return k[63&a>>18]+k[63&a>>12]+k[63&a>>6]+k[63&a]}function h(a,b,c){for(var d,e=[],f=b;f<c;f+=3)d=(16711680&a[f]<<16)+(65280&a[f+1]<<8)+(255&a[f+2]),e.push(g(d));return e.join("")}function j(a){for(var b,c=a.length,d=c%3,e=[],f=16383,g=0,j=c-d;g<j;g+=f)e.push(h(a,g,g+f>j?j:g+f));return 1===d?(b=a[c-1],e.push(k[b>>2]+k[63&b<<4]+"==")):2===d&&(b=(a[c-2]<<8)+a[c-1],e.push(k[b>>10]+k[63&b>>4]+k[63&b<<2]+"=")),e.join("")}c.byteLength=function(a){var b=d(a),c=b[0],e=b[1];return 3*(c+e)/4-e},c.toByteArray=f,c.fromByteArray=j;for(var k=[],l=[],m="undefined"==typeof Uint8Array?Array:Uint8Array,n="ABCDEFGHIJKLMNOPQRSTUVWXYZabcdefghijklmnopqrstuvwxyz0123456789+/",o=0,p=n.length;o<p;++o)k[o]=n[o],l[n.charCodeAt(o)]=o;l[45]=62,l[95]=63},{}]},{},[])("/")});
|
||
|
var sameOriginSupport = -1;
|
||
|
var checkSameOriginSupport = function(callback0) {
|
||
|
if(sameOriginSupport == -1) {
|
||
|
try {
|
||
|
(function(callback) {
|
||
|
if((typeof URL === "undefined") || (typeof URL.createObjectURL !== "function")) {
|
||
|
sameOriginSupport = 1;
|
||
|
callback(false);
|
||
|
}else {
|
||
|
var theObjURL = URL.createObjectURL(new Blob([new Uint8Array([69, 69, 69, 69])]));
|
||
|
if(!theObjURL) {
|
||
|
sameOriginSupport = 1;
|
||
|
callback(false);
|
||
|
}
|
||
|
doXHR(theObjURL, function(dataRet) {
|
||
|
if(dataRet) {
|
||
|
var typedArr = new Uint8Array(dataRet);
|
||
|
if(typedArr.length === 4 && typedArr[0] === 69 && typedArr[1] === 69 && typedArr[2] === 69 && typedArr[3] === 69) {
|
||
|
sameOriginSupport = 0;
|
||
|
callback(true);
|
||
|
}else {
|
||
|
sameOriginSupport = 1;
|
||
|
callback(false);
|
||
|
}
|
||
|
}else {
|
||
|
sameOriginSupport = 1;
|
||
|
callback(false);
|
||
|
}
|
||
|
});
|
||
|
}
|
||
|
})(function(valRet) {
|
||
|
if(!valRet) {
|
||
|
console.error("Same origin XHR support detected as false, using data: url...");
|
||
|
}
|
||
|
callback0(valRet);
|
||
|
});
|
||
|
}catch(ex) {
|
||
|
console.error("Same origin XHR support detection failed, using data: url...");
|
||
|
callback0(false);
|
||
|
}
|
||
|
}else {
|
||
|
callback0(!sameOriginSupport);
|
||
|
}
|
||
|
};
|
||
|
var blobToArrayBuffer = function(blobIn, callback) {
|
||
|
if(typeof blobIn.arrayBuffer === "undefined") {
|
||
|
blobIn.arrayBuffer().then(callback);
|
||
|
}else {
|
||
|
(function(phileReader) {
|
||
|
phileReader.addEventListener("load", function(evt) {
|
||
|
callback(phileReader.result);
|
||
|
});
|
||
|
phileReader.readAsArrayBuffer(blobIn);
|
||
|
})(new FileReader());
|
||
|
}
|
||
|
};
|
||
|
var completeXHR = function(callback, arg) {
|
||
|
if(!callback.comp) {
|
||
|
callback.comp = true;
|
||
|
callback.cb(arg);
|
||
|
}
|
||
|
};
|
||
|
var doXHR = function(urlIn, callback) {
|
||
|
(function(theXHRObj, callbackStruct){
|
||
|
theXHRObj.responseType = "arraybuffer";
|
||
|
theXHRObj.addEventListener("load", function(evt) { var stat = theXHRObj.status; if(stat === 0 || (stat >= 200 && stat < 400)) { completeXHR(callbackStruct, theXHRObj.response); } else { completeXHR(callbackStruct, null); } });
|
||
|
theXHRObj.addEventListener("error", function(evt) { completeXHR(callbackStruct, null); });
|
||
|
theXHRObj.open("GET", urlIn, true);
|
||
|
theXHRObj.send();
|
||
|
})(new XMLHttpRequest(), { cb: callback, comp: false });
|
||
|
};
|
||
|
var decodeBase64URL = function(urlIn, callbackOut) {
|
||
|
doXHR(urlIn, function(data) {
|
||
|
if(!data) {
|
||
|
try {
|
||
|
console.error("Caught an error decoding base64 via fetch, doing it the slow way instead...");
|
||
|
callbackOut(base64js.toByteArray(urlIn.substring(37)).buffer);
|
||
|
}catch(ex) {
|
||
|
console.error("Failed to decode base64!");
|
||
|
console.error(ex);
|
||
|
callbackOut(null);
|
||
|
}
|
||
|
}else {
|
||
|
callbackOut(data);
|
||
|
}
|
||
|
});
|
||
|
};
|
||
|
if(typeof window.DecompressionStream === "undefined") {
|
||
|
checkSameOriginSupport(function(soSupported) {
|
||
|
var theWorkerObj;
|
||
|
var workerSrc = "InVzZSBzdHJpY3QiOwovKiEgcGFrbyAyLjEuMCBodHRwczovL2dpdGh1Yi5jb20vbm9kZWNhL3Bha28gQGxpY2Vuc2UgKE1JVCBBTkQgWmxpYikgKi8KIWZ1bmN0aW9uKGUsdCl7Im9iamVjdCI9PXR5cGVvZiBleHBvcnRzJiYidW5kZWZpbmVkIiE9dHlwZW9mIG1vZHVsZT90KGV4cG9ydHMpOiJmdW5jdGlvbiI9PXR5cGVvZiBkZWZpbmUmJmRlZmluZS5hbWQ/ZGVmaW5lKFsiZXhwb3J0cyJdLHQpOnQoKGU9InVuZGVmaW5lZCIhPXR5cGVvZiBnbG9iYWxUaGlzP2dsb2JhbFRoaXM6ZXx8c2VsZikucGFrbz17fSl9KHRoaXMsKGZ1bmN0aW9uKGUpeyJ1c2Ugc3RyaWN0Ijt2YXIgdD1mdW5jdGlvbihlLHQsaSxuKXtmb3IodmFyIGE9NjU1MzUmZXwwLHI9ZT4+PjE2JjY1NTM1fDAsbz0wOzAhPT1pOyl7aS09bz1pPjJlMz8yZTM6aTtkb3tyPXIrKGE9YSt0W24rK118MCl8MH13aGlsZSgtLW8pO2ElPTY1NTIxLHIlPTY1NTIxfXJldHVybiBhfHI8PDE2fDB9LGk9bmV3IFVpbnQzMkFycmF5KGZ1bmN0aW9uKCl7Zm9yKHZhciBlLHQ9W10saT0wO2k8MjU2O2krKyl7ZT1pO2Zvcih2YXIgbj0wO248ODtuKyspZT0xJmU/Mzk4ODI5MjM4NF5lPj4+MTplPj4+MTt0W2ldPWV9cmV0dXJuIHR9KCkpLG49ZnVuY3Rpb24oZSx0LG4sYSl7dmFyIHI9aSxvPWErbjtlXj0tMTtmb3IodmFyIHM9YTtzPG87cysrKWU9ZT4+PjheclsyNTUmKGVedFtzXSldO3JldHVybi0xXmV9LGE9MTYyMDkscj1mdW5jdGlvbihlLHQpe3ZhciBpLG4scixvLHMsbCxmLGQsaCxjLHUsdyxiLG0sayxfLHYsZyxwLHkseCxFLFIsQSxaPWUuc3RhdGU7aT1lLm5leHRfaW4sUj1lLmlucHV0LG49aSsoZS5hdmFpbF9pbi01KSxyPWUubmV4dF9vdXQsQT1lLm91dHB1dCxvPXItKHQtZS5hdmFpbF9vdXQpLHM9cisoZS5hdmFpbF9vdXQtMjU3KSxsPVouZG1heCxmPVoud3NpemUsZD1aLndoYXZlLGg9Wi53bmV4dCxjPVoud2luZG93LHU9Wi5ob2xkLHc9Wi5iaXRzLGI9Wi5sZW5jb2RlLG09Wi5kaXN0Y29kZSxrPSgxPDxaLmxlbmJpdHMpLTEsXz0oMTw8Wi5kaXN0Yml0cyktMTtlOmRve3c8MTUmJih1Kz1SW2krK108PHcsdys9OCx1Kz1SW2krK108PHcsdys9OCksdj1iW3Uma107dDpmb3IoOzspe2lmKHU+Pj49Zz12Pj4+MjQsdy09ZywwPT09KGc9dj4+PjE2JjI1NSkpQVtyKytdPTY1NTM1JnY7ZWxzZXtpZighKDE2JmcpKXtpZigwPT0oNjQmZykpe3Y9YlsoNjU1MzUmdikrKHUmKDE8PGcpLTEpXTtjb250aW51ZSB0fWlmKDMyJmcpe1oubW9kZT0xNjE5MTticmVhayBlfWUubXNnPSJpbnZhbGlkIGxpdGVyYWwvbGVuZ3RoIGNvZGUiLFoubW9kZT1hO2JyZWFrIGV9cD02NTUzNSZ2LChnJj0xNSkmJih3PGcmJih1Kz1SW2krK108PHcsdys9OCkscCs9dSYoMTw8ZyktMSx1Pj4+PWcsdy09ZyksdzwxNSYmKHUrPVJbaSsrXTw8dyx3Kz04LHUrPVJbaSsrXTw8dyx3Kz04KSx2PW1bdSZfXTtpOmZvcig7Oyl7aWYodT4+Pj1nPXY+Pj4yNCx3LT1nLCEoMTYmKGc9dj4+PjE2JjI1NSkpKXtpZigwPT0oNjQmZykpe3Y9bVsoNjU1MzUmdikrKHUmKDE8PGcpLTEpXTtjb250aW51ZSBpfWUubXNnPSJpbnZhbGlkIGRpc3RhbmNlIGNvZGUiLFoubW9kZT1hO2JyZWFrIGV9aWYoeT02NTUzNSZ2LHc8KGcmPTE1KSYmKHUrPVJbaSsrXTw8dywodys9OCk8ZyYmKHUrPVJbaSsrXTw8dyx3Kz04KSksKHkrPXUmKDE8PGcpLTEpPmwpe2UubXNnPSJpbnZhbGlkIGRpc3RhbmNlIHRvbyBmYXIgYmFjayIsWi5tb2RlPWE7YnJlYWsgZX1pZih1Pj4+PWcsdy09Zyx5PihnPXItbykpe2lmKChnPXktZyk+ZCYmWi5zYW5lKXtlLm1zZz0iaW52YWxpZCBkaXN0YW5jZSB0b28gZmFyIGJhY2siLFoubW9kZT1hO2JyZWFrIGV9aWYoeD0wLEU9YywwPT09aCl7aWYoeCs9Zi1nLGc8cCl7cC09Zztkb3tBW3IrK109Y1t4KytdfXdoaWxlKC0tZyk7eD1yLXksRT1BfX1lbHNlIGlmKGg8Zyl7aWYoeCs9ZitoLWcsKGctPWgpPHApe3AtPWc7ZG97QVtyKytdPWNbeCsrXX13aGlsZSgtLWcpO2lmKHg9MCxoPHApe3AtPWc9aDtkb3tBW3IrK109Y1t4KytdfXdoaWxlKC0tZyk7eD1yLXksRT1BfX19ZWxzZSBpZih4Kz1oLWcsZzxwKXtwLT1nO2Rve0FbcisrXT1jW3grK119d2hpbGUoLS1nKTt4PXIteSxFPUF9Zm9yKDtwPjI7KUFbcisrXT1FW3grK10sQVtyKytdPUVbeCsrXSxBW3IrK109RVt4KytdLHAtPTM7cCYmKEFbcisrXT1FW3grK10scD4xJiYoQVtyKytdPUVbeCsrXSkpfWVsc2V7eD1yLXk7ZG97QVtyKytdPUFbeCsrXSxBW3IrK109QVt4KytdLEFbcisrXT1BW3grK10scC09M313aGlsZShwPjIpO3AmJihBW3IrK109QVt4KytdLHA+MSYmKEFbcisrXT1BW3grK10pKX1icmVha319YnJlYWt9fXdoaWxlKGk8biYmcjxzKTtpLT1wPXc+PjMsdSY9KDE8PCh3LT1wPDwzKSktMSxlLm5leHRfaW49aSxlLm5leHRfb3V0PXIsZS5hdmFpbF9pbj1pPG4/bi1pKzU6NS0oaS1uKSxlLmF2YWlsX291dD1yPHM/cy1yKzI1NzoyNTctKHItcyksWi5ob2xkPXUsWi5iaXRzPXd9LG89MTUscz1uZXcgVWludDE2QXJyYXkoWzMsNCw1LDYsNyw4LDksMTAsMTEsMTMsMTUsMTcsMTksMjMsMjcsMzEsMzUsNDMsNTEsNTksNjcsODMsOTksMTE1LDEzMSwxNjMsMTk1LDIyNywyNTgsMCwwXSksbD1uZXcgVWludDhBcnJheShbMTYsMTYsMTYsMTYsMTYsMTYsMTYsMTYsMTcsMTcsMTcsMTcsMTgsMTgsMTgsMTgsMTksMTksMTksMTksMjAsMjAsMjAsMjAsMjEsMjEsMjEsMjEsMTYsNzIsNzhdKSxmPW5ldyBVaW50MTZBcnJheShbMSwyLDMsNCw1LDcsOSwxMywxNywyNSwzMyw0OSw2NSw5NywxMjksMTkzLDI1NywzODUsNTEzLDc2OSwxMDI1LDE1MzcsMjA0OSwzMDczLDQwOTcsNjE0NSw4MTkzLDEyMjg5LDE2Mzg1LDI0NTc3LDAsMF0pLGQ9bmV3IFVpbnQ4QXJyYXkoWzE2LDE2LDE2LDE2LDE3LDE3LDE4LDE4LDE5LDE5LDIwLDIwLDIxLDIxLDIyLDIyLDIzLDIzLDI0LDI0LDI1LDI1LDI2LDI2LDI3LDI3LDI4LDI4LDI5LDI5LDY0LDY0XSksaD1mdW5jdGlvbihlLHQsaSxuLGEscixoLGMpe3ZhciB1LHcsYixtLGssXyx2LGcscCx5PWMuYml0cyx4PTAsRT0wLFI9MCxBPTAsWj0wLFM9MCxUPTAsTz0wLFU
|
||
|
if(soSupported) {
|
||
|
theWorkerObj = new Worker(URL.createObjectURL(new Blob([base64js.toByteArray(workerSrc).buffer], { type: "text/javascript" })));
|
||
|
}else {
|
||
|
theWorkerObj = new Worker("data:text/javascript;base64," + workerSrc);
|
||
|
}
|
||
|
theWorkerObj.addEventListener("message", function(evt) {
|
||
|
if(evt.data.status === "ready") {
|
||
|
decodeBase64URL(window.eaglercraftXClientBundle, function(cbData) {
|
||
|
if(cbData) {
|
||
|
theWorkerObj.postMessage(cbData);
|
||
|
}else {
|
||
|
alert("Failed to decode eaglercraftXClientBundle base64!");
|
||
|
}
|
||
|
});
|
||
|
}else if(evt.data.status === "success") {
|
||
|
if(soSupported) {
|
||
|
window.clientScriptSrcURL = URL.createObjectURL(new Blob([evt.data.data.buffer], { type: "text/javascript;charset=utf-8" }));
|
||
|
}else {
|
||
|
window.clientScriptSrcURL = "data:text/javascript;charset=utf-8;base64," + base64js.fromByteArray(evt.data.data);
|
||
|
}
|
||
|
}else {
|
||
|
alert("Failed to decompress classes.js via legacy javascript implementation!");
|
||
|
}
|
||
|
});
|
||
|
theWorkerObj.addEventListener("error", function(evt) {
|
||
|
console.error(evt.error);
|
||
|
});
|
||
|
});
|
||
|
}else {
|
||
|
var ds = new window.DecompressionStream("gzip");
|
||
|
var result = [];
|
||
|
var fetchStream = function(reader) {
|
||
|
var processData;
|
||
|
reader.read().then(processData = function(evt) {
|
||
|
if (evt.done) {
|
||
|
(function(blobObj){
|
||
|
checkSameOriginSupport(function(supported) {
|
||
|
if(supported) {
|
||
|
window.clientScriptSrcURL = URL.createObjectURL(blobObj);
|
||
|
}else {
|
||
|
blobToArrayBuffer(blobObj, function(arr) {
|
||
|
console.log(arr);
|
||
|
window.clientScriptSrcURL = "data:text/javascript;charset=utf-8;base64," + base64js.fromByteArray(new Uint8Array(arr));
|
||
|
});
|
||
|
}
|
||
|
});
|
||
|
})(new Blob(result, { type: "text/javascript;charset=utf-8" }));
|
||
|
result = [];
|
||
|
ds = null;
|
||
|
return;
|
||
|
}
|
||
|
result.push(evt.value);
|
||
|
return reader.read().then(processData);
|
||
|
});
|
||
|
};
|
||
|
decodeBase64URL(window.eaglercraftXClientBundle, function(cbData) {
|
||
|
if(cbData) {
|
||
|
fetchStream((new Blob([cbData])).stream().pipeThrough(ds).getReader());
|
||
|
}else {
|
||
|
alert("Failed to decode eaglercraftXClientBundle base64!");
|
||
|
}
|
||
|
});
|
||
|
}
|
||
|
})();
|
||
|
</script>
|
||
|
<script type="text/javascript">
|
||
|
"use strict";
|
||
|
(function(){
|
||
|
var launchInterval = -1;
|
||
|
var launchCounter = 1;
|
||
|
var launchCountdownNumberElement = null;
|
||
|
var launchCountdownProgressElement = null;
|
||
|
var launchSkipCountdown = false;
|
||
|
var launchTick = function() {
|
||
|
if(launchCounter > 100 || launchSkipCountdown) {
|
||
|
if(window.clientScriptSrcURL) {
|
||
|
clearInterval(launchInterval);
|
||
|
setTimeout(function() {
|
||
|
document.body.removeChild(document.getElementById("launch_countdown_screen"));
|
||
|
document.body.style.backgroundColor = "black";
|
||
|
var script = document.createElement("script");
|
||
|
script.type = "text/javascript";
|
||
|
script.src = window.clientScriptSrcURL;
|
||
|
window.clientScriptSrcURL = null;
|
||
|
document.head.appendChild(script);
|
||
|
}, 50);
|
||
|
}
|
||
|
return;
|
||
|
}
|
||
|
if(launchCounter === 100) {
|
||
|
document.getElementById("gameWillLaunchIn").innerText = "Decompressing...";
|
||
|
}else {
|
||
|
launchCountdownNumberElement.innerText = "" + Math.floor(6.0 - launchCounter * 0.06);
|
||
|
}
|
||
|
launchCountdownProgressElement.style.width = "" + launchCounter + "%";
|
||
|
++launchCounter;
|
||
|
};
|
||
|
window.addEventListener("load", function() {
|
||
|
launchCountdownNumberElement = document.getElementById("launchCountdownNumber");
|
||
|
launchCountdownProgressElement = document.getElementById("launchCountdownProgress");
|
||
|
launchInterval = setInterval(launchTick, 50);
|
||
|
document.getElementById("skipCountdown").addEventListener("click", function() {
|
||
|
launchSkipCountdown = true;
|
||
|
document.getElementById("gameWillLaunchIn").innerText = "Decompressing...";
|
||
|
});
|
||
|
document.getElementById("bootMenu").addEventListener("click", function() {
|
||
|
launchSkipCountdown = true;
|
||
|
document.getElementById("gameWillLaunchIn").innerText = "Decompressing...";
|
||
|
window.eaglercraftXOptsHints.showBootMenuOnLaunch = true;
|
||
|
});
|
||
|
});
|
||
|
})();
|
||
|
</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:100%;height:100%;overflow:hidden;background-color:white;" 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;">10/14/2024</span></h1>
|
||
|
<h3>Get the latest version at <a href="https://eaglercraft.com"><span style="color:#AA0000;">eaglercraft.com</span></a></h1>
|
||
|
<h2 id="gameWillLaunchIn">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>
|
||
|
<p style="margin-top:30px;"><button id="skipCountdown" autofocus>Skip Countdown</button> <button id="bootMenu">Enter Boot Menu</button></p></div>
|
||
|
</div>
|
||
|
</div>
|
||
|
</body>
|
||
|
</html>
|