I am trying to use hitTestObject and enter_frame to create a "Test" page where the user drags an "answer box to another box, and if the answer is correct it displays the word "correct, if not "wrong", but I have four questions (q1) and 4 answers (a1), and after the first answer is entered, it doesn't do anything else, unless I move the square out of the correct answer.
How do I get it to work and ignore previous responses? I'm using the drag/drop commands as well.
-
finalTest.addEventListener(Event.ENTER_FRAME, detectCollision);
function detectCollision (evt: Event) : void {
if(a1.hitTestObject(q1)) {
finalTest.checkText.text = "Correct answer";
}
else if(a1.hitTestObject(q2)) {
finalTest.checkText.text = "wrong";
}
else if(a1.hitTestObject(q3)) {
finalTest.checkText.text = "wrong";
}
else if(a1.hitTestObject(q4)) {
finalTest.checkText.text = "wrong";
}
else if(a2.hitTestObject(q2)) {
finalTest.checkText.text = "Correct answer";
}
else if(a2.hitTestObject(q1)) {
finalTest.checkText.text = "wrong";
}
else if(a2.hitTestObject(q3)) {
finalTest.checkText.text = "wrong";
}
else if(a2.hitTestObject(q4)) {
finalTest.checkText.text = "wrong";
}
else if(a3.hitTestObject(q3)) {
finalTest.checkText.text = "Correct answer";
}
else if(a3.hitTestObject(q1)) {
finalTest.checkText.text = "wrong";
}
else if(a3.hitTestObject(q2)) {
finalTest.checkText.text = "wrong";
}
else if(a3.hitTestObject(q4)) {
finalTest.checkText.text = "wrong";
}
else if(a4.hitTestObject(q4)) {
finalTest.checkText.text = "Correct answer";
}
else if(a4.hitTestObject(q1)) {
finalTest.checkText.text = "wrong";
}
else if(a4.hitTestObject(q2)) {
finalTest.checkText.text = "wrong";
}
else if(a4.hitTestObject(q3)) {
finalTest.checkText.text = "wrong";
}
else {
finalTest.checkText.text = " ";
}
}