function gaussianDiceRoll(ev) { const assocField = ev.target.id.replace("Button", "Output") const assocDam = ev.target.id.replace("Button", "Input") let u = 0, v = 0; while(u === 0) u = Math.random(); while(v === 0) v = Math.random(); const mean = parseInt(document.getElementById(assocDam).value) const storeGaussVal = Math.sqrt( -2.0 * Math.log( u ) ) * Math.cos( 2.0 * Math.PI * v ); const elementToChange = document.getElementById(assocField) elementToChange.innerHTML = storeGaussVal*mean/3.6+mean return elementToChange.innerHTML } function selfSpellDamage(ev) { const Mana = document.getElementById("Mana").value const Time = document.getElementById("Time").value const assocDam = ev.target.id.replace("Press", "Field") const elementToChange = document.getElementById(assocDam) elementToChange.innerHTML = Math.round((Time**3-3*Mana*Time**2+3*Mana**2*Time-Mana**3)/3/Mana*100)/100 } //Ich hab da ne Formel gefunden, but I suspect it's not correct... document.getElementById("DamageButton").addEventListener("click", gaussianDiceRoll); document.getElementById("HealthPress").addEventListener("click", selfSpellDamage);