Difference between revisions of "Widget:RuneDisp"
From Official Runecraft Wiki
(Oh god I hope this works) |
|||
Line 12: | Line 12: | ||
var runefiles = '<!--{$runefiles}-->'; | var runefiles = '<!--{$runefiles}-->'; | ||
− | document.write('<model-viewer bounds="tight" src="' + runefile + '" ar ar-modes="scene-viewer webxr quick-look" camera-controls poster="poster.webp" shadow-intensity="1" environment-image="neutral" exposure="1" camera-orbit="0deg 65deg auto"></model-viewer>'); | + | if (multilayer == "false") { |
+ | document.write('<model-viewer id="rune" bounds="tight" src="' + runefile + '" ar ar-modes="scene-viewer webxr quick-look" camera-controls poster="poster.webp" shadow-intensity="1" environment-image="neutral" exposure="1" camera-orbit="0deg 65deg auto"></model-viewer>'); | ||
+ | } | ||
+ | |||
+ | else { | ||
+ | document.write('<model-viewer id="MLrune" bounds="tight" src="' + runefile + '" ar ar-modes="scene-viewer webxr quick-look" camera-controls poster="poster.webp" shadow-intensity="1" environment-image="neutral" exposure="1" camera-orbit="0deg 65deg auto"><div class="controls"><div>Layer: <select id="layer"></select></div></div></model-viewer>'); | ||
+ | |||
+ | var layer = runefiles.length; | ||
+ | |||
+ | const modelViewerLayers = document.querySelector("model-viewer#MLrune"); | ||
+ | const select = document.querySelector('#layer') | ||
+ | |||
+ | modelViewerLayers.addEventListener('load', () => { | ||
+ | for (const rne of runefiles) { | ||
+ | |||
+ | const option = document.createElement('option'); | ||
+ | option.value = rne; | ||
+ | if (layer == activationlayer) { | ||
+ | option.textContent = 'Activation Layer'; | ||
+ | } else { | ||
+ | option.textContent = 'Layer '+layer; | ||
+ | } | ||
+ | select.appendChild(option); | ||
+ | layer--; | ||
+ | } | ||
+ | // add default option | ||
+ | const option = document.createElement('option'); | ||
+ | option.value = runefile; | ||
+ | option.textContent = 'Full Rune' | ||
+ | select.appendChild(option); | ||
+ | }); | ||
+ | |||
+ | select.addEventListener('input', (event) => { | ||
+ | modelViewerLayers.src = event.target.value; | ||
+ | }); | ||
+ | |||
+ | |||
+ | } | ||
</script> | </script> | ||
</includeonly> | </includeonly> |
Revision as of 16:26, 14 January 2022