Execute HP

Add Execute Under X HP to Secondary Weapon

As of 28. 10. 2024. See the latest version.

You will need to install an extension such as Tampermonkey, Greasemonkey or Violentmonkey to install this script.

You will need to install an extension such as Tampermonkey to install this script.

You will need to install an extension such as Tampermonkey or Violentmonkey to install this script.

You will need to install an extension such as Tampermonkey or Userscripts to install this script.

You will need to install an extension such as Tampermonkey to install this script.

You will need to install a user script manager extension to install this script.

(I already have a user script manager, let me install it!)

You will need to install an extension such as Stylus to install this style.

You will need to install an extension such as Stylus to install this style.

You will need to install an extension such as Stylus to install this style.

You will need to install a user style manager extension to install this style.

You will need to install a user style manager extension to install this style.

You will need to install a user style manager extension to install this style.

(I already have a user style manager, let me install it!)

// ==UserScript==
// @name         Execute HP
// @namespace    http://tampermonkey.net/
// @version      1.1
// @description  Add Execute Under X HP to Secondary Weapon
// @author       Stig [2648238]
// @match        https://www.torn.com/loader.php?*
// @grant        none
// ==/UserScript==

const executePercent = 29; // Change this to your Execute %

(function() {
    'use strict';

    function getPercentage(value) {
        var raw = value * (executePercent / 100);
        return Math.floor(raw);
    }

    function waitForElement(selector, callback) {
        let el = document.querySelector(selector);
        if (el) {
            callback(el);
        } else {
            setTimeout(function() {
                waitForElement(selector, callback);
            }, 500); // checks every 500ms
        }
    }

    function getHealth() {
        var healthValueElements = document.querySelectorAll('[id^="player-health-value_"]');
        if (healthValueElements.length > 0) {
            for (let element of healthValueElements) {
                var healthText = element.textContent.trim();
                var maxHealth = healthText.split("/")[1].replace(",", "").trim(); // Extract maximum health value
                var value = parseFloat(maxHealth);

                if (!isNaN(value)) {
                    return getPercentage(value);
                }
            }
        }
        return 0; // Default return if no health value found
    }

    function render() {
        var weaponSecond = document.getElementById('weapon_second');
        if (weaponSecond) {
            var targetDiv = weaponSecond.querySelector('.bottom___XSBgG');
            if (targetDiv) {
                var newDiv = document.createElement('div');
                newDiv.className = 'custom-execute-under';

                var underHP = getHealth();
                newDiv.textContent = `Execute Under: ${underHP} HP`;
                targetDiv.parentNode.insertBefore(newDiv, targetDiv.nextSibling);

                // Add CSS
                var css = `.custom-execute-under {position: absolute; top: 70px; left: 24px; font-size: 10px; color: red;}`;
                var style = document.createElement('style');
                document.head.appendChild(style);
                style.appendChild(document.createTextNode(css));
            }
        }
    }

    waitForElement('.entry___m0IK_', function() {
        render();
    });
})();