MediaWiki:KalkulatorPredkosci.js

Z Nelderim
Wersja z dnia 18:47, 7 mar 2025 autorstwa Levy (dyskusja | edycje) (Utworzono nową stronę "document.addEventListener("DOMContentLoaded", function () { let calcContainer = document.getElementById("weaponSpeedCalculator"); if (!calcContainer) return; calcContainer.innerHTML = ` <h2>Kalkulator Prędkości Broni</h2> <label>Podstawowa prędkość broni (sekundy): <input type="number" id="baseSpeed" value="2.5"></label><br> <label>Dexterity gracza: <input type="number" id="dexterity" value="100"></label><br> <label…")
(różn.) ← poprzednia wersja | przejdź do aktualnej wersji (różn.) | następna wersja → (różn.)

Uwaga: aby zobaczyć zmiany po opublikowaniu, może zajść potrzeba wyczyszczenia pamięci podręcznej przeglądarki.

  • Firefox / Safari: Przytrzymaj Shift podczas klikania Odśwież bieżącą stronę, lub naciśnij klawisze Ctrl+F5, lub Ctrl+R (⌘-R na komputerze Mac)
  • Google Chrome: Naciśnij Ctrl-Shift-R (⌘-Shift-R na komputerze Mac)
  • Edge: Przytrzymaj Ctrl, jednocześnie klikając Odśwież, lub naciśnij klawisze Ctrl+F5.
  • Opera: Naciśnij klawisze Ctrl+F5.
document.addEventListener("DOMContentLoaded", function () {
    let calcContainer = document.getElementById("weaponSpeedCalculator");
    if (!calcContainer) return;

    calcContainer.innerHTML = `
        <h2>Kalkulator Prędkości Broni</h2>
        <label>Podstawowa prędkość broni (sekundy): <input type="number" id="baseSpeed" value="2.5"></label><br>
        <label>Dexterity gracza: <input type="number" id="dexterity" value="100"></label><br>
        <label>Swing Speed Increase (%): <input type="number" id="ssi" value="30"></label><br>
        <button id="calculateSpeed">Oblicz</button>
        <p>Prędkość ataku: <span id="speedResult">---</span></p>
    `;

    document.getElementById("calculateSpeed").addEventListener("click", function () {
        let baseSpeed = parseFloat(document.getElementById("baseSpeed").value);
        let dexterity = parseInt(document.getElementById("dexterity").value, 10);
        let ssi = parseInt(document.getElementById("ssi").value, 10);

        let swingDelay = Math.max(1.25, (baseSpeed * (100 - Math.min(60, dexterity / 10))) / 100);
        swingDelay *= (1 - (Math.min(ssi, 60) / 100));

        document.getElementById("speedResult").textContent = swingDelay.toFixed(2) + " sekundy";
    });
});