又是我了,我终于让数学生成器工作,看看答案是否正确或不正确,万岁!但是,这是编程,并且出现了另一个错误,darn-it。
所以我添加了一个评分系统,在第一个正确的答案中它给了我1分,但在第二个正确的答案它没有给我另一个点,它保持在1点。此外,有没有办法阻止verificar
按钮,直到按下startButton
按钮? (所以试试我的数学生成器的人不要作弊!)非常感谢你的帮助!
import flash.utils.Timer;
import flash.events.MouseEvent;
import flash.events.TimerEvent;
stop()
var reloj:Timer = new Timer(1000,60);
startButton.addEventListener(MouseEvent.CLICK, startTimer);
reloj.addEventListener(TimerEvent.TIMER, moveHand);
reloj.addEventListener(TimerEvent.TIMER_COMPLETE, endTimer);
function startTimer(e:MouseEvent):void {
reloj.start();
startButton.visible = false;
}
function moveHand(e:TimerEvent):void {
segundero.rotation = segundero.rotation + 6
}
function endTimer(e:TimerEvent):void {
trace("Se agotó el tiempo");
gotoAndPlay (1, "1");
}
nuevo.addEventListener(MouseEvent.CLICK, generarPregunta);
function generarPregunta(MouseEvent):void {
var random1:Number = Math.floor(Math.random()*25)
var random2:Number = Math.floor(Math.random()*25)
var array:Array = new Array ("+","-","*","/")
var randomIndex:int = Math.floor (Math.random()*4)
SimbMat.text = array [ randomIndex ]
numI.text = random1 + ""
numD.text = random2 + ""
}
verificar.addEventListener(MouseEvent.CLICK, verificarRespuesta);
function verificarRespuesta(MouseEvent):void {
var puntaje:int = 0
if (String(SimbMat.text) == "+") {
if (Number(numI.text) + Number(numD.text) == Number(imput.text)) {
trace("correcto")
puntaje++;
updateScore();
generarPregunta(MouseEvent);
} else {
trace("incorrecto")
}
} else if (String(SimbMat.text) == "-") {
if (Number(numI.text) - Number(numD.text) == Number(imput.text)) {
trace("correcto")
puntaje++;
updateScore();
generarPregunta(MouseEvent);
}
else {
trace("incorrecto")
}
} else if (String(SimbMat.text) == "*") {
if (Number(numI.text) * Number(numD.text) == Number(imput.text)) {
trace("correcto")
puntaje++;
updateScore();
generarPregunta(MouseEvent);
} else {
trace("incorrecto")
}
} else if (String(SimbMat.text) == "/") {
if (Number(numI.text) / Number(numD.text) == Number(imput.text)) {
trace("correcto")
puntaje++;
updateScore();
generarPregunta(MouseEvent);
} else {
trace("incorrecto")
}
}
function updateScore() :void {
score.text = "Puntaje: " + puntaje;
}
}
答案 0 :(得分:0)
但是在第二个正确答案中,它没有给我另一个观点,它 保持在1点。
现在,puntaje每次都重置为零。 你应该在verificarRespuesta函数之外定义puntaje(总点数?)。
var puntaje:int;
function startTimer(e:MouseEvent):void {
reloj.start();
// reset to zero here?
puntaje = 0;
startButton.visible = false;
}
另外,有没有办法阻止verificar按钮,直到 按下startButton按钮?
首先设置enable=false
或visible=false
,并在startTimer或generarPregunta函数内部设置为true。像这样。
// set enable=false first
verificar.enable = false;
function generarPregunta(MouseEvent):void {
var random1:Number = Math.floor(Math.random()*25);
var random2:Number = Math.floor(Math.random()*25);
var array:Array = new Array ("+","-","*","/");
var randomIndex:int = Math.floor (Math.random()*4);
SimbMat.text = array [ randomIndex ];
numI.text = random1 + "";
numD.text = random2 + "";
verificar.enable = true;
}