Mira, estas son las cosas que encontré:
- No necesitas poner stop() en todos los frames, si tu navegación está hecha con gotoAndStop(), con la ultima instrucción de este comendo ya te estás deteniendo en el frame.
- No necesitas repetir la función en cada frame, con que la pondas en el frame 1 ya tienes, pues ya quedará declarada y cada vez que la llames ella se ejecutará.
- La variable puntos si la situas dentro de la función con var funciona como variable local, no estará accesible en los otros frames.
- Si tienes una variable puntos que acumula los puntos alcanzados no puedes crear otra variable punto para hacer un switch entre los resultados, porque la anterior variable se borraría.
- Tienes puesta una instrucción de if al final de la función que no tiene una sintaxis correcta aunque el flash no te devuelva ningún herror.
- En el frame número 6 tienes un gotoAndStop(15) por lo tanto nunca pasarías por los frames que estan entre el 6 y el 15
De todas maneras te mandaré el flash, pero posteo esto para que otros usuarios que buscaran sobre este tema sepan como resolverlo.
//---Primer frame (ejercicio 1)
Código :
p1.restrict = "0-9";
var puntos:Number = 0
var res:String = "1567";
function evalua() {
var respuesta = p2.getData();
switch (respuesta) {
case 0 :
resultado2.text = "No has conseguido ni un punto";
break;
case 1 :
resultado2.text = "Has conseguido 1 punto";
break;
case 2 :
resultado2.text = "Has conseguido 2 puntos. MUY BIEN";
break;
}
if (p1.text.toLowerCase() == res) {
puntos += respuesta;
nextFrame();
trace(puntos);
}
}
stop();
//---Ejercicio 2
Código :
p1.restrict = "0-9";
res = "78";
//---Ejercicio 3
Código :
p1.restrict = "0-9";
res = "203146";
//---Ejercicio 4
Código :
p1.restrict = "0-9";
res = "36000";
Saludos y no te preocupes, todos pasamos por estas cosas el dia que nos iniciamos en flash