Ver Mensaje Individual
  #1 (permalink)  
Antiguo 16/01/2015, 17:09
Bordex
 
Fecha de Ingreso: enero-2015
Ubicación: Gijon
Mensajes: 10
Antigüedad: 9 años, 3 meses
Puntos: 1
Pregunta Problema al llamar función

Tengo un problema, el cual se trata que tengo tres botones los cuales llaman cada uno a una función distinta, dos de ellos funcionan correctamente y llaman a la función cada vez que se pulsan.
El problema radica en el tercero, el cual solo llama a la función la primera vez que pulso el boton, las siguientes veces no llama a la función.

Les dejo el código de la parte conflictiva, si necesitan el codigo completo haganmelo saber.

<HTML>
<head>
<script type="text/javascript">
function impacto()
{
var circunstancia=document.getElementById("circunstanc ia").value
//ataque
var dado=parseFloat(document.getElementById("dado").va lue)
var bonifAtaque=parseFloat(document.getElementById("bo nifAtaque").value)
var otrosBonif=parseFloat(document.getElementById("otr osBonif").value)
//Calculo Circunstancias
if(circunstancia=="Normal")
bonifAtaque=bonifAtaque
if(circunstancia=="Ventaja en combate frente al objetivo")
bonifAtaque=bonifAtaque+2
if(circunstancia=="Atacante tumbado")
bonifAtaque=bonifAtaque-2
if(circunstancia=="Atacante impedido")
bonifAtaque=bonifAtaque-2
if(circunstancia=="Objetivo con cobertura")
bonifAtaque=bonifAtaque-2
if(circunstancia=="Objetivo con cobertura superior")
bonifAtaque=bonifAtaque-5
if(circunstancia=="Objetivo con ocultación (sólo c/c y a distancia)")
bonifAtaque=bonifAtaque-2
if(circunstancia=="Objetivo con ocultación total (sólo c/c y a distancia)")
bonifAtaque=bonifAtaque-5
if(circunstancia=="Distancia larga (sólo ataques con arma)")
bonifAtaque=bonifAtaque-2
if(circunstancia=="Ataque en carga (sólo c/c)")
bonifAtaque=bonifAtaque+1
ataque=dado+bonifAtaque+otrosBonif
//defensa
var CA=parseFloat(document.getElementById("CA").value)
var FORT=parseFloat(document.getElementById("FORT").va lue)
var REF=parseFloat(document.getElementById("REF").valu e)
var VOL=parseFloat(document.getElementById("VOL").valu e)
var bonifdef=parseFloat(document.getElementById("bonif .def").value)
defensa=CA+FORT+REF+VOL+bonifdef
impacto=ataque-defensa
if (impacto>=0)
{
if (dado==20)
document.getElementById("impacto").value="Si (Crit)"
if (dado==1)
document.getElementById("impacto").value="No (Fallo)"
else
document.getElementById("impacto").value="Si "+"("+impacto+")"
}
else{
document.getElementById("impacto").value="No"+"("+ impacto+")"
document.getElementById("daño").value=0
}
}
</script>
</head>
<body>
<fieldset>
<legend>Tirada Ataque</legend>
Circunstancia: <select id="circunstancia">
<option>Normal</option>
<option>Ventaja en combate frente al objetivo</option>
<option>Atacante tumbado</option>
<option>Atacante impedido</option>
<option>Objetivo con cobertura</option>
<option>Objetivo con cobertura superior</option>
<option>Objetivo con ocultación (sólo c/c y a distancia)</option>
<option>Objetivo con ocultación total (sólo c/c y a distancia)</option>
<option>Distancia larga (sólo ataques con arma)</option>
<option>Ataque en carga (sólo c/c)</option>
</select>

<table>

<tr><td>
<fieldset><legend>Atacante</legend>
Dado: <input type="text" id="dado" size="1/4" value="0">
Bonif.Ataque: <input type="text" id="bonifAtaque" size="1/4" value="0">
Otros bonificadores: <input type="text" id="otrosBonif" size="1/4" value="0"
</fieldset></td><td>
<fieldset><legend>Defensor</legend>
CA: <input type="text" id="CA" size="1/4" value="0">
FORT: <input type="text" id="FORT" size="1/4" value="0">
REF: <input type="text" id="REF" size="1/4" value="0">
VOL: <input type="text" id="VOL" size="1/4" value="0">
Otros Bonificadores: <input type="text" id="bonif.def" size="1/4" value="0">
</fieldset></td></table><br>
Impacto: <input type="text" id="impacto" size="4" readonly> <button onclick="impacto()">Calcular</button>
</body>
</HTML>