Inquest - Shake screen

Shakes screen when timer runs low

Versión del día 26/10/2023. Echa un vistazo a la versión más reciente.

// ==UserScript==
// @name         Inquest - Shake screen
// @description  Shakes screen when timer runs low
// @version      1.4
// @author       Fruity- [2259700] | Francois Robbertze
// @namespace    https://greasyfork.org/en/users/1156949
// @copyright    none
// @license      MIT
// @match        https://www.torn.com/*
// @grant        none
// ==/UserScript==
(() => {
    'use strict';
    const THRESHOLD = 2;

    const shakescreen = (timer, div) => {
        const tval = timer.textContent.trim();
        const tparts = tval.split(':');

        if (tparts.length === 2) {
            const min = parseInt(tparts[0]);
            const seconds = parseInt(tparts[1]);
            if (min < THRESHOLD) {
                div.style.animation = 'tilt-shaking 0.2s infinite';
            } else {
                if (div) {
                    div.removeAttribute('style');
                }
            }
        }
    }

    const styleElement = document.createElement('style');
    styleElement.innerHTML = `
        @keyframes tilt-shaking {
          0% { transform: rotate(0deg); }
          25% { transform: rotate(0.5deg); }
          50% { transform: rotate(0deg); }
          75% { transform: rotate(-0.5deg); }
          100% { transform: rotate(0deg); }
        }
    `;
    document.head.appendChild(styleElement);
    const div = document.querySelector('.content.responsive-sidebar-container.logged-in');
    const timer = document.querySelector('.bar-timeleft___B9RGV');
    const checkTimer = () => {

        if (div && timer) {
            shakescreen(timer, div);
        }
    };
    setInterval(checkTimer, 1000);
})();