Strudels

Lair Beast Lyre Embigginator

Jun 21st, 2026 (edited)
449
0
Never
Not a member of Pastebin yet? Sign Up, it unlocks many cool features!
  1. // ==UserScript==
  2. // @name         Lair Beast Lyre Embigginator
  3. // @namespace    http://tampermonkey.net/
  4. // @version      22/6/26
  5. // @description  Increases the size of the lyre and moves it to the middle of the screen. Allows you to go straight to the Lair Beast from the entrance and auto mutes the tab.
  6. // @author       Rippy
  7. // @match        http*://*.neopets.com/prehistoric/thebeast.phtml*
  8. // @icon         https://www.google.com/s2/favicons?sz=64&domain=neopets.com
  9. // @grant        GM_audio
  10. // ==/UserScript==
  11.  
  12. (function() {
  13.     'use strict';
  14.  
  15.     // Change true to false if you don't want the tab to automatically mute
  16.     const MUTE = true;
  17.  
  18.     if (MUTE) {
  19.         GM_audio.setMute({ isMuted: true }, function(err) { // just copied wholesale from the documentation
  20.             if (err) console.error('mute failed:', err);
  21.             else console.log('tab muted');
  22.         });
  23.     }
  24.  
  25.     if (!$(".lair-beast-timer").length) { // if not on cooldown
  26.         let clickCount = 0;
  27.         $("#LairBeastStep1 > .button-grid2__2020").before(`<div style="display:grid; grid-template: auto; grid-gap:10px; margin:10px auto; width: 90%; max-width:480px;"><button class="button-default__2020 button-green__2020"  onclick="proceedForward('4')" onkeyup="clickElement(event)">Go straight to the Lair Beast!</button></div>`);
  28.         $($("#LairBeastStep1 > p")[1]).append(`<br><br><b>Note: </b>If you have not completed The Void Within's Epilogue yet, click on "Enter the Cave" just to be safe!`);
  29.        $("#LairBeastLyre").append("<div id='lyrecount' style='position:relative;'></div>");
  30.        const updateDisplay = () => {
  31.            if ($("#LairBeastLyre").is(":visible")) {
  32.                $("#LairBeastLyre").css({ width: "200px", height: "200px", position: "absolute", top: "50%", left: "50%", transform: "translate(-50%, -50%)"});
  33.                $("#lyrecount").html(`<p style='color:white; font-size:25px; font-family:Cafeteria;'>Clicked ${clickCount}/5 times</p>`);
  34.            }
  35.        };
  36.        const _clickLyre = clickLyre;
  37.        clickLyre = () => {
  38.            _clickLyre();
  39.            clickCount++;
  40.            updateDisplay();
  41.        };
  42.        if ($("#LairBeastLyre")) {
  43.            setInterval(updateDisplay, 10); // mutation observer doesn't seem to fire reliably on LairBeastStep4, cba to investigate since you get like 1 attempt per day
  44.         }
  45.     }
  46. })();
Advertisement
Add Comment
Please, Sign In to add comment