Advertisement
Not a member of Pastebin yet?
Sign Up,
it unlocks many cool features!
- 000<html>
- <head>
- <script src="https://cdn.jsdelivr.net/npm/comfy.js@latest/dist/comfy.min.js"></script>
- <style>
- img {
- top: 0px;
- left: 0px;
- position: absolute;
- padding: 0px 0px 0px 0px;
- margin: 0px 0px 0px 0px;
- /* width: 1280px;
- height: 720px; */
- }
- </style>
- </head>
- <body>
- <audio id="audio" controls="" style="visibility: hidden;">
- <source id="source" type="audio/mp3">
- </audio>
- <script type="text/javascript">
- const elements = {
- source: document.querySelector("#source"),
- audio: document.querySelector("#audio")
- };
- const viewers = {
- doubledubbel: ['viewerintrosnormalized/Double_Strikers.mp3',
- 'viewerintrosnormalized/DoubleDubbel_intro_II.mp3'],
- jackofallmasters: ['viewerintrosnormalized/jackofmasters.mp3']
- }
- let eventQueue = [];
- var set = new Set();
- var synSpecial = 'viewerintrosnormalized/synfull.mp3';
- var rand = Math.random();
- var nextPerson = "";
- ComfyJS.onChat = (user, message, flags, self, extra) => {
- songSelector(viewers, extra.username, set);
- audioController();
- }
- function songSelector(array, user, set) {
- if (array[user]) {
- if (hasSpoken(user, set)) {
- console.log("match " + user);
- switch (user) {
- case 'synthesiur':
- if (rand < 0.05) {
- eventQueue.push(synSpecial);
- } else {
- eventQueue.push(array[user]);
- }
- break;
- default:
- var nextPerson = getRandomValue(viewers, user);
- eventQueue.push(getRandomValue(viewers, user));
- console.log("added " + eventQueue);
- break;
- }
- }
- }
- }
- function hasSpoken(user, set) {
- return !set.has(user) && set.add(user);
- }
- async function audioController() {
- if (audio.paused) {
- if (eventQueue[0] === undefined) {} else {
- elements.source.src = eventQueue[0];
- console.log('played: ' + eventQueue[0]);
- const audio = elements.audio;
- await timeout(100)
- audio.load()
- audio.volume = 0.7;
- audio.play()
- eventQueue.shift()
- }
- }
- }
- function timeout(ms) {
- return new Promise(resolve => setTimeout(resolve, ms));
- }
- function getRandomValue(inputObject, key) {
- if (key in inputObject) {
- const values = inputObject[key];
- if (values.length > 0) {
- const randomIndex = Math.floor(Math.random() * values.length);
- return values[randomIndex];
- } else {
- return "No values associated with the key.";
- }
- } else {
- return "Key not found in the object.";
- }
- }
- ComfyJS.Init("riekelt");
- </script>
- </body>
- </html>
Advertisement
Add Comment
Please, Sign In to add comment
Advertisement