fix loader + reduce stress on browsers by not loading the music file until needed :)

This commit is contained in:
TheWiiArchivist wmt 2025-08-14 21:04:24 -05:00
parent 08d52b434a
commit 355c0caf24
3 changed files with 23 additions and 19 deletions

View File

@ -153,16 +153,18 @@ function hideConsoleControls() {
if (bgmPlayerDiv) {bgmPlayerDiv.style.display = 'none';} }
}
var shoploop = new Audio("/meta/FishieFishie.ogg");
var shoploop = new Audio("");
shoploop.loop = true;
shoploop.volume = 0.1; // prevent clipping
function activatebgmplayer() {
shoploop = new Audio("/meta/FishieFishie.ogg");
document.getElementById("shopbgm").innerHTML = "Play";
document.getElementById('bgmplayer').classList.add('bgmplayerdisplayed');
document.getElementById("bgmplrtitle").innerText="BGM player"; document.getElementById("bgmplrtitle").style.marginTop="0px";
}
function deactivatebgmplayer() {
shoploop = new Audio("/meta/FishieFishie.ogg");
document.getElementById('bgmplayer').classList.remove('bgmplayerdisplayed');
document.getElementById("bgmplrtitle").innerText="bgm plr.."; document.getElementById("bgmplrtitle").style.marginTop="-5px";
}

View File

@ -1,9 +1,14 @@
var loading = null; var loadvolume; var browserageworkswithloader = false; var spinner = true;
var loading = new Audio(""); var loadvolume; var browserageworkswithloader = false; var spinner = true; var shouldaloadedalr = null; var playsound = null;
function showspinner() {
if (spinner === true) {
loading = new Audio("/media/load.wav");
document.getElementById("wscspinnerbg").style.display="block";
setTimeout(stopspinner,3100);
if (shouldaloadedalr) {clearTimeout(shouldaloadedalr);}
shouldaloadedalr = setTimeout(stopspinner,3100);
if (playsound) {clearTimeout(playsound);}
/* moved down for compatability */
loading.loop = true;
@ -14,7 +19,6 @@ if (spinner === true) {
}
function stopspinner() {
document.getElementById("wscspinnerbg").style.display="none";
loading.pause();
}
@ -22,20 +26,17 @@ loading.pause();
function loadup() {
var timee = setTimeout(loadup,100);
/* i hate javascript sometime :))))))) */
if (loadvolume > 0) {
loadvolume += 0.01;
}
if (loadvolume >= 0.4) {
loadvolume = 0;
clearTimeout(timee);
}
loading.volume = loadvolume;
loading.volume = loadvolume;
playsound = setTimeout(loadup, 100);
}
document.addEventListener("DOMContentLoaded", () => {
const userAgent = navigator.userAgent.toLowerCase();
@ -48,16 +49,13 @@ if (isConsoleBrowser) {browserageworkswithloader = false;}
else
{
browserageworkswithloader = true;
stopspinner();
document.getElementById("wscspinnerbg").style.display="none";
document.querySelectorAll("a").forEach(link => {
link.addEventListener("click", showspinner);
});
}
function stopspinner() {
document.getElementById("wscspinnerbg").style.display="none";
loading.pause();
}
});

View File

@ -1,5 +1,5 @@
// Wii Shop BGM Player, suggested by @legamer66 (https://discord.com/channels/1346485785284575335/1346485786039681056/1351527080546009259)
var checkbgmplayerstatus = null;
var bgmplayercompatable = false;
function hideConsoleControls() {
const userAgent = navigator.userAgent.toLowerCase();
const isConsoleBrowser =
@ -8,12 +8,11 @@ function hideConsoleControls() {
userAgent.includes('nintendo 3ds') ||
userAgent.includes('nintendo');
// they can't play music so rip
if (isConsoleBrowser) {checkbgmplayerstatus = false; const bgmPlayerDiv = document.getElementById('bgmplayer');
if (bgmPlayerDiv) {bgmPlayerDiv.style.display = 'none';} else {checkbgmplayerstatus = false;} }
if (isConsoleBrowser) {bgmplayercompatable = false; const bgmPlayerDiv = document.getElementById('bgmplayer'); if (bgmPlayerDiv) {bgmPlayerDiv.style.display = 'none';} else {bgmplayercompatable = true;} }
}
var shoploop = new Audio("/meta/shop.wav");
var shoploop = new Audio("");
shoploop.loop = true;
var initialvolume = 0 || 0.0;
shoploop.volume = initialvolume;
@ -58,11 +57,12 @@ if (wmtwebsiteBGMwasplaying === 'paused') {
window.onload = function() {
if (checkbgmplayerstatus === true) {
if (bgmplayercompatable === true) {
var wmtwebsiteBGMwasplaying = localStorage.getItem("wmtwebsiteBGM");
if (wmtwebsiteBGMwasplaying === 'playing') {
shoploop = new Audio("/meta/shop.wav");
activatebgmplayerfocus();
document.getElementById("shopbgmselector").href = "javascript:playBGMonload();";
} else {
@ -83,6 +83,7 @@ if (wmtwebsiteBGMwasplaying === 'paused') {
/* bgm check for all pages */
function activatebgmplayerfocus() {
shoploop = new Audio("/meta/shop.wav");
bgmplayerfocus();
document.getElementById('bgmplayer').classList.add('bgmplayeropenanim');
document.getElementById("bgmplrtitle").innerText="BGM player"; document.getElementById("bgmplrtitle").style.marginTop="0px";
@ -96,6 +97,7 @@ function bgmplayerfocus() {
}
window.onbeforeunload = function() {
shoploop = new Audio("/meta/shop.wav");
localStorage.setItem("bgmlooppoint", shoploop.currentTime);
};
@ -156,12 +158,14 @@ var volchangee = setTimeout(fadeinbgm,13);
function activatebgmplayer() {
shoploop = new Audio("/meta/shop.wav");
document.getElementById('bgmplayer').classList.add('bgmplayerdisplayed');
document.getElementById("shopbgm").innerText = "Play";
document.getElementById("bgmplrtitle").innerText="BGM player"; document.getElementById("bgmplrtitle").style.marginTop="0px";
document.getElementById("bgmplayer").style.backdropFilter="blur(1.8px)";
}
function deactivatebgmplayer() {
shoploop = new Audio("/meta/shop.wav");
document.getElementById('bgmplayer').classList.remove('bgmplayerdisplayed');
document.getElementById("bgmplrtitle").innerText="bgm plr.."; document.getElementById("bgmplrtitle").style.marginTop="-5px";
document.getElementById("bgmplayer").style.backgroundColor="#0000"; document.getElementById("bgmplayer").style.backgroundColor="#0000"; document.getElementById("bgmplayer").style.border="1px solid #34BEED";