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';} } if (bgmPlayerDiv) {bgmPlayerDiv.style.display = 'none';} }
} }
var shoploop = new Audio("/meta/FishieFishie.ogg"); var shoploop = new Audio("");
shoploop.loop = true; shoploop.loop = true;
shoploop.volume = 0.1; // prevent clipping shoploop.volume = 0.1; // prevent clipping
function activatebgmplayer() { function activatebgmplayer() {
shoploop = new Audio("/meta/FishieFishie.ogg");
document.getElementById("shopbgm").innerHTML = "Play"; document.getElementById("shopbgm").innerHTML = "Play";
document.getElementById('bgmplayer').classList.add('bgmplayerdisplayed'); document.getElementById('bgmplayer').classList.add('bgmplayerdisplayed');
document.getElementById("bgmplrtitle").innerText="BGM player"; document.getElementById("bgmplrtitle").style.marginTop="0px"; document.getElementById("bgmplrtitle").innerText="BGM player"; document.getElementById("bgmplrtitle").style.marginTop="0px";
} }
function deactivatebgmplayer() { function deactivatebgmplayer() {
shoploop = new Audio("/meta/FishieFishie.ogg");
document.getElementById('bgmplayer').classList.remove('bgmplayerdisplayed'); document.getElementById('bgmplayer').classList.remove('bgmplayerdisplayed');
document.getElementById("bgmplrtitle").innerText="bgm plr.."; document.getElementById("bgmplrtitle").style.marginTop="-5px"; 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() { function showspinner() {
if (spinner === true) { if (spinner === true) {
loading = new Audio("/media/load.wav"); loading = new Audio("/media/load.wav");
document.getElementById("wscspinnerbg").style.display="block"; 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 */ /* moved down for compatability */
loading.loop = true; loading.loop = true;
@ -14,7 +19,6 @@ if (spinner === true) {
} }
function stopspinner() { function stopspinner() {
document.getElementById("wscspinnerbg").style.display="none"; document.getElementById("wscspinnerbg").style.display="none";
loading.pause(); loading.pause();
} }
@ -22,20 +26,17 @@ loading.pause();
function loadup() { function loadup() {
var timee = setTimeout(loadup,100);
/* i hate javascript sometime :))))))) */
if (loadvolume > 0) { if (loadvolume > 0) {
loadvolume += 0.01; loadvolume += 0.01;
} }
if (loadvolume >= 0.4) { if (loadvolume >= 0.4) {
loadvolume = 0; loadvolume = 0;
clearTimeout(timee);
} }
loading.volume = loadvolume; loading.volume = loadvolume;
playsound = setTimeout(loadup, 100);
} }
document.addEventListener("DOMContentLoaded", () => { document.addEventListener("DOMContentLoaded", () => {
const userAgent = navigator.userAgent.toLowerCase(); const userAgent = navigator.userAgent.toLowerCase();
@ -48,16 +49,13 @@ if (isConsoleBrowser) {browserageworkswithloader = false;}
else else
{ {
browserageworkswithloader = true; browserageworkswithloader = true;
stopspinner(); document.getElementById("wscspinnerbg").style.display="none";
document.querySelectorAll("a").forEach(link => { document.querySelectorAll("a").forEach(link => {
link.addEventListener("click", showspinner); 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) // Wii Shop BGM Player, suggested by @legamer66 (https://discord.com/channels/1346485785284575335/1346485786039681056/1351527080546009259)
var checkbgmplayerstatus = null; var bgmplayercompatable = false;
function hideConsoleControls() { function hideConsoleControls() {
const userAgent = navigator.userAgent.toLowerCase(); const userAgent = navigator.userAgent.toLowerCase();
const isConsoleBrowser = const isConsoleBrowser =
@ -8,12 +8,11 @@ function hideConsoleControls() {
userAgent.includes('nintendo 3ds') || userAgent.includes('nintendo 3ds') ||
userAgent.includes('nintendo'); userAgent.includes('nintendo');
// they can't play music so rip // they can't play music so rip
if (isConsoleBrowser) {checkbgmplayerstatus = false; const bgmPlayerDiv = document.getElementById('bgmplayer'); if (isConsoleBrowser) {bgmplayercompatable = false; const bgmPlayerDiv = document.getElementById('bgmplayer'); if (bgmPlayerDiv) {bgmPlayerDiv.style.display = 'none';} else {bgmplayercompatable = true;} }
if (bgmPlayerDiv) {bgmPlayerDiv.style.display = 'none';} else {checkbgmplayerstatus = false;} }
} }
var shoploop = new Audio("/meta/shop.wav"); var shoploop = new Audio("");
shoploop.loop = true; shoploop.loop = true;
var initialvolume = 0 || 0.0; var initialvolume = 0 || 0.0;
shoploop.volume = initialvolume; shoploop.volume = initialvolume;
@ -58,11 +57,12 @@ if (wmtwebsiteBGMwasplaying === 'paused') {
window.onload = function() { window.onload = function() {
if (checkbgmplayerstatus === true) { if (bgmplayercompatable === true) {
var wmtwebsiteBGMwasplaying = localStorage.getItem("wmtwebsiteBGM"); var wmtwebsiteBGMwasplaying = localStorage.getItem("wmtwebsiteBGM");
if (wmtwebsiteBGMwasplaying === 'playing') { if (wmtwebsiteBGMwasplaying === 'playing') {
shoploop = new Audio("/meta/shop.wav");
activatebgmplayerfocus(); activatebgmplayerfocus();
document.getElementById("shopbgmselector").href = "javascript:playBGMonload();"; document.getElementById("shopbgmselector").href = "javascript:playBGMonload();";
} else { } else {
@ -83,6 +83,7 @@ if (wmtwebsiteBGMwasplaying === 'paused') {
/* bgm check for all pages */ /* bgm check for all pages */
function activatebgmplayerfocus() { function activatebgmplayerfocus() {
shoploop = new Audio("/meta/shop.wav");
bgmplayerfocus(); bgmplayerfocus();
document.getElementById('bgmplayer').classList.add('bgmplayeropenanim'); document.getElementById('bgmplayer').classList.add('bgmplayeropenanim');
document.getElementById("bgmplrtitle").innerText="BGM player"; document.getElementById("bgmplrtitle").style.marginTop="0px"; document.getElementById("bgmplrtitle").innerText="BGM player"; document.getElementById("bgmplrtitle").style.marginTop="0px";
@ -96,6 +97,7 @@ function bgmplayerfocus() {
} }
window.onbeforeunload = function() { window.onbeforeunload = function() {
shoploop = new Audio("/meta/shop.wav");
localStorage.setItem("bgmlooppoint", shoploop.currentTime); localStorage.setItem("bgmlooppoint", shoploop.currentTime);
}; };
@ -156,12 +158,14 @@ var volchangee = setTimeout(fadeinbgm,13);
function activatebgmplayer() { function activatebgmplayer() {
shoploop = new Audio("/meta/shop.wav");
document.getElementById('bgmplayer').classList.add('bgmplayerdisplayed'); document.getElementById('bgmplayer').classList.add('bgmplayerdisplayed');
document.getElementById("shopbgm").innerText = "Play"; document.getElementById("shopbgm").innerText = "Play";
document.getElementById("bgmplrtitle").innerText="BGM player"; document.getElementById("bgmplrtitle").style.marginTop="0px"; document.getElementById("bgmplrtitle").innerText="BGM player"; document.getElementById("bgmplrtitle").style.marginTop="0px";
document.getElementById("bgmplayer").style.backdropFilter="blur(1.8px)"; document.getElementById("bgmplayer").style.backdropFilter="blur(1.8px)";
} }
function deactivatebgmplayer() { function deactivatebgmplayer() {
shoploop = new Audio("/meta/shop.wav");
document.getElementById('bgmplayer').classList.remove('bgmplayerdisplayed'); document.getElementById('bgmplayer').classList.remove('bgmplayerdisplayed');
document.getElementById("bgmplrtitle").innerText="bgm plr.."; document.getElementById("bgmplrtitle").style.marginTop="-5px"; 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"; document.getElementById("bgmplayer").style.backgroundColor="#0000"; document.getElementById("bgmplayer").style.backgroundColor="#0000"; document.getElementById("bgmplayer").style.border="1px solid #34BEED";