-
Notifications
You must be signed in to change notification settings - Fork 56
Commit
- Loading branch information
There are no files selected for viewing
Original file line number | Diff line number | Diff line change |
---|---|---|
@@ -0,0 +1 @@ | ||
{"version":1,"defaultHost":"<from-proxy>","defaultProxy":"proxy.mcraft.fun","mapsProvider":"https://maps.mcraft.fun/","promoteServers":[{"ip":"kaboom.pw","version":"1.18.2","description":"Chaos and destruction server. Free for everyone."},{"ip":"go.mineberry.org","version":"1.18.2","description":"One of the best servers here. Join now!"},{"ip":"sus.shhnowisnottheti.me","version":"1.18.2","description":"Creative, your own 'boxes' (islands)"}]} |
Original file line number | Diff line number | Diff line change |
---|---|---|
@@ -0,0 +1,109 @@ | ||
<!DOCTYPE html> | ||
<html> | ||
<head> | ||
<meta name="darkreader-lock"> | ||
<script> | ||
window.startLoad = Date.now() | ||
</script> | ||
<!-- // #region initial loader --> | ||
<script async> | ||
const loadingDiv = /* html */ ` | ||
<div class="initial-loader" style="position: fixed;transition:opacity 0.2s;inset: 0;background:black;display: flex;justify-content: center;align-items: center;font-family: -apple-system, BlinkMacSystemFont, 'Segoe UI', Roboto, Oxygen, Ubuntu, Cantarell, 'Open Sans', 'Helvetica Neue', Arial, Helvetica, sans-serif;gap: 15px;" ontransitionend="this.remove()"> | ||
<div> | ||
<img src="./loading-bg.jpg" alt="Prismarine Web Client" style="position:fixed;inset:0;width:100%;height:100%;z-index: -2;object-fit: cover;filter: blur(3px);"> | ||
<div style="position: fixed;inset: 0;z-index: -1;background-color: rgba(0, 0, 0, 0.8);"></div> | ||
</div> | ||
<div> | ||
<div style="font-size: calc(var(--font-size) * 1.8);color: lightgray;" class="title">Loading...</div> | ||
<div style="font-size: var(--font-size);color: rgb(176, 176, 176);margin-top: 3px;text-align: center" class="subtitle">A true Minecraft client in your browser!</div> | ||
</div> | ||
</div> | ||
` | ||
const insertLoadingDiv = () => { | ||
const loadingDivElem = document.createElement('div') | ||
loadingDivElem.innerHTML = loadingDiv | ||
if (!window.pageLoaded) { | ||
document.documentElement.appendChild(loadingDivElem) | ||
} | ||
// load error handling | ||
const onError = (message) => { | ||
console.log(message) | ||
if (document.querySelector('.initial-loader') && document.querySelector('.initial-loader').querySelector('.title').textContent !== 'Error') { | ||
document.querySelector('.initial-loader').querySelector('.title').textContent = 'Error' | ||
document.querySelector('.initial-loader').querySelector('.subtitle').textContent = message | ||
if (window.navigator.maxTouchPoints > 1) window.location.hash = '#dev' // show eruda | ||
} | ||
} | ||
window.addEventListener('unhandledrejection', (e) => onError(e.reason)) | ||
window.addEventListener('error', (e) => onError(e.message)) | ||
} | ||
insertLoadingDiv() | ||
document.addEventListener('DOMContentLoaded', () => { | ||
// move loading div to the end of body | ||
const loadingDivElem = document.querySelector('.initial-loader'); | ||
const newContainer = document.body; // replace with your new container | ||
if (loadingDivElem) newContainer.appendChild(loadingDivElem); | ||
}) | ||
</script> | ||
<script type="module" async> | ||
const checkLoadEruda = () => { | ||
if (window.location.hash === '#dev') { | ||
// todo precache (check offline)? | ||
import('https://cdn.skypack.dev/eruda').then(({ default: eruda }) => { | ||
eruda.init() | ||
}) | ||
} | ||
} | ||
checkLoadEruda() | ||
window.addEventListener('hashchange', (e) => { | ||
setTimeout(() => { | ||
checkLoadEruda() | ||
}) | ||
}) | ||
</script> | ||
<style> | ||
html { | ||
background: black; | ||
} | ||
.initial-loader { | ||
--font-size: 20px; | ||
} | ||
@media screen and (min-width: 550px) { | ||
.initial-loader { | ||
--font-size: 30px; | ||
} | ||
} | ||
@media screen and (min-width: 950px) { | ||
.initial-loader { | ||
--font-size: 50px; | ||
} | ||
} | ||
</style> | ||
<!-- // #endregion --> | ||
<!-- <script type="module"> | ||
window.loadPluginScript = async ({ pluginName, script }) => { | ||
window.loadedPlugins[pluginName] = await import(script) | ||
} | ||
</script> --> | ||
<title>Prismarine Web Client</title> | ||
<link rel="favicon" href="favicon.png"> | ||
<link rel="icon" type="image/png" href="favicon.png" /> | ||
<link rel="canonical" href="https://mcraft.fun"> | ||
<meta name="description" content="Minecraft web client running in your browser"> | ||
<meta name="keywords" content="Play, Minecraft, Online, Web, Java, Server, Single player, Javascript, PrismarineJS, Voxel, WebGL, Three.js"> | ||
<meta name="date" content="2024-07-11" scheme="YYYY-MM-DD"> | ||
<meta name="language" content="English"> | ||
<meta name="theme-color" content="#349474"> | ||
<meta name='viewport' content='width=device-width, initial-scale=1.0, maximum-scale=1.0, user-scalable=no, viewport-fit=cover'> | ||
<meta property="og:title" content="Prismarine Web Client" /> | ||
<meta property="og:type" content="website" /> | ||
<meta property="og:image" content="favicon.png" /> | ||
<meta name="format-detection" content="telephone=no"> | ||
<link rel="manifest" href="manifest.json" crossorigin="use-credentials"> | ||
<meta charset="UTF-8"><script defer src="./static/js/lib-polyfill.4c3d4bb4.js"></script><script defer src="./static/js/lib-lodash.6ca29103.js"></script><script defer src="./static/js/lib-react.23d1c0e4.js"></script><script defer src="./static/js/170.db2503c4.js"></script><script defer src="./static/js/index.acce83f8.js"></script><link href="./static/css/170.fdd8e9b7.css" rel="stylesheet"><link href="./static/css/index.5695391c.css" rel="stylesheet"></head> | ||
<body> | ||
<div id="react-root"></div> | ||
<div id="ui-root"></div> | ||
<!-- inject script --> | ||
</body> | ||
</html> |
Original file line number | Diff line number | Diff line change |
---|---|---|
@@ -0,0 +1,17 @@ | ||
{ | ||
"name": "Prismarine Web Client", | ||
"short_name": "Prismarine Web Client", | ||
"scope": "./", | ||
"start_url": "./", | ||
"icons": [ | ||
{ | ||
"src": "favicon.png", | ||
"sizes": "720x720" | ||
} | ||
], | ||
"background_color": "#349474", | ||
"theme_color": "#349474", | ||
"lang": "en-US", | ||
"orientation": "landscape", | ||
"display": "standalone" | ||
} |
Large diffs are not rendered by default.
Large diffs are not rendered by default.
Original file line number | Diff line number | Diff line change |
---|---|---|
@@ -0,0 +1,4 @@ | ||
<!-- just redirect to /playground/ --> | ||
<script> | ||
window.location.href = `/playground/${window.location.search}` | ||
</script> |
Original file line number | Diff line number | Diff line change |
---|---|---|
@@ -0,0 +1,42 @@ | ||
<!DOCTYPE html> | ||
<html> | ||
<head> | ||
<title>Renderer Playground</title> | ||
<meta name='viewport' content='width=device-width, initial-scale=1.0, maximum-scale=1.0, user-scalable=no, viewport-fit=cover'> | ||
<style type="text/css"> | ||
html { | ||
overflow: hidden; | ||
background: black; | ||
} | ||
|
||
html, body { | ||
height: 100%; | ||
|
||
margin: 0; | ||
padding: 0; | ||
} | ||
|
||
canvas { | ||
height: 100%; | ||
width: 100%; | ||
font-size: 0; | ||
|
||
margin: 0; | ||
padding: 0; | ||
} | ||
@font-face { | ||
font-family: mojangles; | ||
src: url(../../../assets/mojangles.ttf); | ||
} | ||
</style> | ||
<script> | ||
if (window.location.pathname.endsWith('playground')) { | ||
// add trailing slash | ||
window.location.href = `${window.location.origin}${window.location.pathname}/${window.location.search}` | ||
} | ||
</script> | ||
<meta charset="UTF-8"><script defer src="./static/js/lib-polyfill.1c2731ef.js"></script><script defer src="./static/js/lib-react.d98be978.js"></script><script defer src="./static/js/lib-lodash.da5a12e1.js"></script><script defer src="./static/js/185.a2c816a6.js"></script><script defer src="./static/js/index.7d3d5d1a.js"></script><link href="./static/css/index.0918aa3b.css" rel="stylesheet"></head> | ||
<body> | ||
<div id="root"></div> | ||
</body> | ||
</html> |
Large diffs are not rendered by default.
Large diffs are not rendered by default.
Large diffs are not rendered by default.
Some generated files are not rendered by default. Learn more about how customized files appear on GitHub.
Large diffs are not rendered by default.
Original file line number | Diff line number | Diff line change |
---|---|---|
@@ -0,0 +1,45 @@ | ||
/*! | ||
Copyright (c) 2018 Jed Watson. | ||
Licensed under the MIT License (MIT), see | ||
http://jedwatson.github.io/classnames | ||
*/ | ||
|
||
/*! | ||
|
||
JSZip v3.10.1 - A JavaScript class for generating and reading zip files | ||
<http://stuartk.com/jszip> | ||
|
||
(c) 2009-2016 Stuart Knightley <stuart [at] stuartk.com> | ||
Dual licenced under the MIT license or GPLv3. See https://raw.github.com/Stuk/jszip/main/LICENSE.markdown. | ||
|
||
JSZip uses the library pako released under the MIT license : | ||
https://github.com/nodeca/pako/blob/main/LICENSE | ||
*/ | ||
|
||
/*! | ||
* The buffer module from node.js, for the browser. | ||
* | ||
* @author Feross Aboukhadijeh <[email protected]> <http://feross.org> | ||
* @license MIT | ||
*/ | ||
|
||
/*! | ||
* The buffer module from node.js, for the browser. | ||
* | ||
* @author Feross Aboukhadijeh <https://feross.org> | ||
* @license MIT | ||
*/ | ||
|
||
/*! ieee754. BSD-3-Clause License. Feross Aboukhadijeh <https://feross.org/opensource> */ | ||
|
||
/*! safe-buffer. MIT License. Feross Aboukhadijeh <https://feross.org/opensource> */ | ||
|
||
/** | ||
* lil-gui | ||
* https://lil-gui.georgealways.com | ||
* @version 0.18.2 | ||
* @author George Michael Brower | ||
* @license MIT | ||
*/ | ||
|
||
/** @license URI.js v4.4.1 (c) 2011 Gary Court. License: http://github.com/garycourt/uri-js */ |
Large diffs are not rendered by default.
Large diffs are not rendered by default.
Large diffs are not rendered by default.
Original file line number | Diff line number | Diff line change |
---|---|---|
@@ -0,0 +1,8 @@ | ||
/** | ||
* @license | ||
* Lodash <https://lodash.com/> | ||
* Copyright OpenJS Foundation and other contributors <https://openjsf.org/> | ||
* Released under MIT license <https://lodash.com/license> | ||
* Based on Underscore.js 1.8.3 <http://underscorejs.org/LICENSE> | ||
* Copyright Jeremy Ashkenas, DocumentCloud and Investigative Reporters & Editors | ||
*/ |
Large diffs are not rendered by default.
Large diffs are not rendered by default.
Original file line number | Diff line number | Diff line change |
---|---|---|
@@ -0,0 +1,39 @@ | ||
/** | ||
* @license React | ||
* react-dom.production.min.js | ||
* | ||
* Copyright (c) Facebook, Inc. and its affiliates. | ||
* | ||
* This source code is licensed under the MIT license found in the | ||
* LICENSE file in the root directory of this source tree. | ||
*/ | ||
|
||
/** | ||
* @license React | ||
* react-jsx-runtime.production.min.js | ||
* | ||
* Copyright (c) Facebook, Inc. and its affiliates. | ||
* | ||
* This source code is licensed under the MIT license found in the | ||
* LICENSE file in the root directory of this source tree. | ||
*/ | ||
|
||
/** | ||
* @license React | ||
* react.production.min.js | ||
* | ||
* Copyright (c) Facebook, Inc. and its affiliates. | ||
* | ||
* This source code is licensed under the MIT license found in the | ||
* LICENSE file in the root directory of this source tree. | ||
*/ | ||
|
||
/** | ||
* @license React | ||
* scheduler.production.min.js | ||
* | ||
* Copyright (c) Facebook, Inc. and its affiliates. | ||
* | ||
* This source code is licensed under the MIT license found in the | ||
* LICENSE file in the root directory of this source tree. | ||
*/ |
Some generated files are not rendered by default. Learn more about how customized files appear on GitHub.