waves/public/assets/g/geomelt/index.html
2025-04-17 20:43:10 -05:00

154 lines
7.5 KiB
HTML

<!DOCTYPE html>
<html lang="en-us">
<head>
<meta charset="utf-8">
<meta name="viewport" content="width=device-width, initial-scale=1.0, user-scalable=no">
<link rel="stylesheet" href="game.css">
<style type="text/css">@font-face {font-family:Fredoka;font-style:normal;font-weight:400;src:url(/cf-fonts/v/fredoka/5.0.11/hebrew/wght/normal.woff2);unicode-range:U+0590-05FF,U+200C-2010,U+20AA,U+25CC,U+FB1D-FB4F;font-display:swap;}@font-face {font-family:Fredoka;font-style:normal;font-weight:400;src:url(/cf-fonts/v/fredoka/5.0.11/latin/wght/normal.woff2);unicode-range:U+0000-00FF,U+0131,U+0152-0153,U+02BB-02BC,U+02C6,U+02DA,U+02DC,U+0304,U+0308,U+0329,U+2000-206F,U+2074,U+20AC,U+2122,U+2191,U+2193,U+2212,U+2215,U+FEFF,U+FFFD;font-display:swap;}@font-face {font-family:Fredoka;font-style:normal;font-weight:400;src:url(/cf-fonts/v/fredoka/5.0.11/latin-ext/wght/normal.woff2);unicode-range:U+0100-02AF,U+0304,U+0308,U+0329,U+1E00-1E9F,U+1EF2-1EFF,U+2020,U+20A0-20AB,U+20AD-20CF,U+2113,U+2C60-2C7F,U+A720-A7FF;font-display:swap;}@font-face {font-family:Fredoka;font-style:normal;font-weight:500;src:url(/cf-fonts/v/fredoka/5.0.11/hebrew/wght/normal.woff2);unicode-range:U+0590-05FF,U+200C-2010,U+20AA,U+25CC,U+FB1D-FB4F;font-display:swap;}@font-face {font-family:Fredoka;font-style:normal;font-weight:500;src:url(/cf-fonts/v/fredoka/5.0.11/latin/wght/normal.woff2);unicode-range:U+0000-00FF,U+0131,U+0152-0153,U+02BB-02BC,U+02C6,U+02DA,U+02DC,U+0304,U+0308,U+0329,U+2000-206F,U+2074,U+20AC,U+2122,U+2191,U+2193,U+2212,U+2215,U+FEFF,U+FFFD;font-display:swap;}@font-face {font-family:Fredoka;font-style:normal;font-weight:500;src:url(/cf-fonts/v/fredoka/5.0.11/latin-ext/wght/normal.woff2);unicode-range:U+0100-02AF,U+0304,U+0308,U+0329,U+1E00-1E9F,U+1EF2-1EFF,U+2020,U+20A0-20AB,U+20AD-20CF,U+2113,U+2C60-2C7F,U+A720-A7FF;font-display:swap;}</style>
<title>Geometry Dash Meltdown</title>
<link rel="canonical" href="https://geometrydash.io/" data-react-helmet="true">
</head>
<body>
<div id="gameContainer" style="display: none;"></div>
<div id="loader">
<div class="logoBox">
<img class="logo" src="loading.png?v=1">
</div>
<div class="spinner"></div>
<div class="pos_progress">
<div class="progress">
<div class="posfull">
<progress id="p1" value="1" max="1"></progress>
</div>
</div>
</div>
</div>
<div class="container hidden" id="alert_rotate">
<div class="text-with-icon">
<span class="svg-icon pleaserotate-graphic" aria-hidden="true"><svg class="svg-icon__link">
<use xlink:href="#icon-rotate"></use>
</svg></span>
<p>Rotate your device to play like a pro</p>
</div>
</div>
<svg class="main-svg-sprite main-svg-sprite--icons" xmlns="http://www.w3.org/2000/svg" xmlns:xlink="http://www.w3.org/1999/xlink">
<symbol id="icon-rotate" viewBox="0 0 24 24">
<g>
<path d="m22.432 7.344-.688-.688-4.401-4.401-.688-.688c-.834-.834-2.288-.737-3.242.216l-11.629 11.632c-.953.953-1.05 2.407-.216 3.242l5.776 5.776c.834.834 2.288.737 3.242-.216l11.631-11.631c.953-.954 1.05-2.408.215-3.242zm-1.473 2.298-11.317 11.317c-.347.347-.875.382-1.179.079l-5.501-5.501c-.304-.304-.269-.832.079-1.179l11.317-11.317c.347-.347.875-.382 1.179-.079l.275.275c.304.304.269.832-.079 1.179-.347.347-.382.875-.079 1.179l2.751 2.751c.304.304.832.269 1.179-.079.347-.347.875-.382 1.179-.079l.275.275c.303.304.268.832-.079 1.179z" />
</g>
<g>
<path d="m13.836 24c-.336 0-.641-.202-.772-.513-.131-.313-.06-.674.18-.914l2.38-2.38c.167-.167.398-.257.633-.244.236.012.457.123.606.306l.882 1.079c2.697-1.433 4.555-4.265 4.581-7.504.004-.46.377-.83.836-.83h.007c.462.004.833.381.83.843-.043 5.556-4.6 10.113-10.156 10.157-.002 0-.004 0-.007 0z" />
</g>
<g>
<path d="m10.164 0c.336 0 .641.202.772.513.131.313.06.674-.18.914l-2.38 2.38c-.168.167-.399.258-.634.244-.236-.012-.457-.123-.606-.306l-.882-1.079c-2.697 1.433-4.555 4.265-4.581 7.504-.004.46-.378.83-.837.83-.002 0-.004 0-.007 0-.461-.004-.832-.381-.829-.843.044-5.556 4.601-10.113 10.157-10.157z" />
</g>
</symbol>
</svg>
</body>
<script src="Build/UnityLoader.js"></script>
<script>
UnityLoader.compatibilityCheck = function (e, t, r) { t(); };
var gameInstance = UnityLoader.instantiate("gameContainer", "Build/geometrmeltdown.json", { onProgress: UnityProgress });
const gameContainer = document.getElementById("gameContainer");
var progressElement = document.getElementById('p1');
function UnityProgress(gameInstance, progress) {
if (!gameInstance.Module) {
return;
}
const loader = document.querySelector("#loader");
if (!gameInstance.progress) {
const progress = document.querySelector("#loader .progress");
gameContainer.style.display = "none";
progress.style.display = "block";
loader.querySelector(".spinner").style.display = "none";
}
progressElement.value = progress;
if (progress === 1 && !gameInstance.removeTimeout) {
gameInstance.removeTimeout = setTimeout(function () {
loader.style.display = "none";
gameContainer.style.display = "block";
}, 2000);
}
}
</script>
<script>
window.onload = (event) => {
Resize();
screen.orientation.addEventListener("change", function(e) {
tapOrClick(e);
});
};
window.onresize = function () {
Resize();
};
var theElement = document.getElementById("gameContainer");
theElement.addEventListener("mouseup", tapOrClick, false);
theElement.addEventListener("touchend", tapOrClick, false);
function Resize() {
if (screen.availHeight > screen.availWidth) {
document.getElementById('alert_rotate').classList.remove('hidden');
// document.getElementById('gameContainer').classList.add('rotated');
} else {
// document.getElementById('gameContainer').classList.remove('rotated');
document.getElementById('alert_rotate').classList.add('hidden');
}
const innerWidth = window.innerWidth;
const innerHeight = window.innerHeight;
const loader = document.getElementById("loader");
const progress = document.querySelector("#loader .pos_progress");
const container = document.querySelector(".container");
const ratio = 1.77778;
if (innerHeight > innerWidth) {
container.style.display = "flex";
loader.style.width = innerWidth + 'px';
}
else {
container.style.display = "none";
if ((innerWidth / innerHeight) > ratio) {
loader.style.width = innerHeight * ratio + 'px';
}
else {
loader.style.width = '100%';
}
}
loader.style.top = (innerHeight - loader.offsetHeight) / 2 + 'px';
progress.style.top = loader.offsetHeight * 0.90 + 'px';
}
function tapOrClick(event) {
fullScreenAPI();
event.preventDefault();
return false;
}
function fullScreenAPI(){
var ua = navigator.userAgent.toLowerCase();
var isAndroid = ua.indexOf("android") > -1;
if(isAndroid) {
GoFullScreen(document.documentElement);
}
}
function GoFullScreen(element) {
if (!document.fullscreenElement && !document.mozFullScreenElement && !document.webkitFullscreenElement && !document.msFullscreenElement) {
if (element.requestFullscreen && document.fullscreenEnabled) {
element.requestFullscreen();
}
else if (element.mozRequestFullScreen) {
element.mozRequestFullScreen();
}
else if (element.webkitRequestFullscreen) {
element.webkitRequestFullscreen();
}
else if (element.msRequestFullscreen) {
element.msRequestFullscreen();
}
}
}
</script>
</html>