我正在尝试使用hitTestPoint语法在所有选定对象都在正确的位置时启动计时器。当它们被拖过并在靠近它时释放时,它们都会捕捉到正确的位置。不幸的是我的计时器无法启动。我无法弄清楚为什么它不会开始。我的flash教授也无法弄清楚。我很快就会回答这个问题,希望我已经把你们所需要的一切都给了你们。
addEventListener(Event.ENTER_FRAME,completion);
function completion(event:Event):void
{
if (EYEOVERLEFT_MC.hitTestPoint(EYELEFT_MC.x,EYELEFT_MC.y) &&
EYEOVERRIGHT_MC.hitTestPoint(EYERIGHT_MC.x,EYERIGHT_MC.y) &&
NOSEOVER_MC.hitTestPoint(NOSEUNDER_MC.x,NOSEUNDER_MC.y) &&
LOCKOVER_MC.hitTestPoint(LOCKUNDER_MC.x,LOCKUNDER_MC.y) &&
ROSEOVER_MC.hitTestPoint(ROSEUNDER_MC.x,ROSEUNDER_MC.y) &&
CHAINOVER_MC.hitTestPoint(CHAINUNDER_MC.x,CHAINUNDER_MC.y) &&
LEAFOVER_MC.hitTestPoint(LEAFUNDER_MC.x,LEAFUNDER_MC.y)){
var timer:Timer = new Timer(1000,2);
timer.addEventListener(TimerEvent.TIMER_COMPLETE, timerComplete);
timer.start();
trace("Timer Start");
}
function timerComplete(e:TimerEvent):void
{
trace("Timer Finished");
}
removeEventListener(Event.ENTER_FRAME,completion);
nextFrame();
}
}
答案 0 :(得分:0)
答案很简单 - 你只是没有在if
陈述中做出正确的检查 - 并非所有这些都是真的。
因此,您需要检查每个(使用多个if语句)并查看问题所在。有些条件不合适,这可能是你的其他逻辑的结果(它会移动这些东西)。
我们无法帮助你,所以继续挖掘这个恐怖......
P.S。 很高兴尝试保持代码格式良好和设计良好。不要使用大写字母!
编辑:为什么要迁移到nextFrame?我不确定这个计时器是否合适:)