我有一个drog和drag exercice。
dict[box_a]=obj1_mc;
dict[box_b]=obj2_mc;
dict[box_c]=obj3_mc;
对象我可以拖动它们并且盒子不能
function test_match(target,obj){
// if answer is good
if (dict[target]==obj) {
hits=hits+1;
textField.text=" Correct !!!";
obj.alpha=0.5;
// remove drag event
obj.removeEventListener(MouseEvent.MOUSE_DOWN, mouseDownHandler);
obj.removeEventListener(MouseEvent.MOUSE_UP, mouseUpHandler);
// quiz completed, all good
if (hits==max) {
textField.text="Congrats all good !!";
}
// if answer is bad
} else {
//if not good, still remove drag event
obj.alpha=0.5
obj.removeEventListener(MouseEvent.MOUSE_DOWN, mouseDownHandler);
obj.removeEventListener(MouseEvent.MOUSE_UP, mouseUpHandler);
textField.text="Incorrect";
}
//display the score so far
score_txt.text="your score is "+hits+" out of "+max;
}
这是我的代码。我的问题是,如果我拿一个对象并把它放在另一个对象(obj3_mc上的obj1_mc)上,它会像我把它放到 错误的盒子。我该怎么办?
答案 0 :(得分:0)
您需要检查dopped-on对象是否是有效对象之一,如果不是 - 忽略结果。您应该发布更多代码,因为这仅涵盖您的一小部分功能(实际测试)。
编辑:
好的,所以如果你编辑你的mouseUp-handler来包含一个检查,看它是否被放在任何一个盒子上;
if (target!=null && dict[target] ) {
test_match(target, obj);
} else {
这应该有用(未经测试)。