所以这是一个奇怪的错误,我得到的是因为我的框架上有四个电影剪辑,我在游戏中像蛙儿一样在屏幕上来回奔跑。其中三个工作,第四个工作,即使我基本上所有这些都有相同的代码。为什么我会得到一个错误,而不是其他3错误?这是我的代码:
if((chris.x - laneOne) >= 0 && !turn1){
chris.scaleX = 1;
chris.x -= laneOne;
turn1 = false;
}else{
turn1 = true;
}
if((chris.x + laneOne) <= 500 && turn1){
chris.scaleX = -1;
chris.x += laneOne;
turn1 = true;
}else{
turn1 = false;
}
//Lane 2
if((kate.x - laneTwo) >= 0 && !turn2){
kate.scaleX = 1;
kate.x -= laneTwo;
turn2 = false;
}else{
turn2 = true;
}
if((kate.x + laneTwo) <= 500 && turn2){
kate.scaleX = -1;
kate.x += laneTwo;
turn2 = true;
}else{
turn2 = false;
}
//Lane 3
/*if((seth.x - laneThree) >= 0 && !turn3){
seth.scaleX = 1;
seth.x -= laneThree;
turn3 = false;
}else{
turn3 = true;
}
if((seth.x + laneThree) <= 500 && turn3){
seth.scaleX = -1;
seth.x += laneThree;
turn3 = true;
}else{
turn3 = false;
}*/
//Lane 4
if((mel.x - laneFour) >= 0 && !turn4){
mel.scaleX = 1;
mel.x -= laneFour;
turn4 = false;
}else{
turn4 = true;
}
if((mel.x + laneFour) <= 500 && turn4){
mel.scaleX = -1;
mel.x += laneFour;
turn4 = true;
}else{
turn4 = false;
}
Seth是一个不起作用的,但基本上这使得这些运行角色的影片剪辑看起来像来回运行而且这些泳道是他们前进的速度而且转弯只是为了确保他们一路走到一边。
这是我的第一个问题。
我的第二个问题是我在同一帧上有一个角色,我想通过键盘移动他,我使用的是senocular的keyObject类,除非我最小化屏幕然后重新打开屏幕,否则它不起作用。一旦我重新打开屏幕就可以了。
我有一种预感,这两个问题都与电影剪辑没有完全加载有关,但我是flash和as3的新手,所以任何帮助都会非常感激。此外,如果需要更多的澄清请求它,所以我可以得到一些帮助,因为我已经有这个问题大约2天了,仍然无法弄明白!
答案 0 :(得分:0)
问题1:使用trace()来查明由于某种原因是否未定义'seth'。由于您粘贴的代码没有提到Seth,我无法在那里提出更好的建议... [编辑:StackOverflow正在截断我的iPhone上的代码,但跟踪仍然是我如何调试问题,寻找未定义的属性]
问题2:确保将关键侦听器添加到舞台而不是子对象。这样,您无需在侦听器工作之前单击Swf获得焦点。
[编辑2:想出如何查看代码 - 'seth'代码块被注释掉了,这是你的问题吗?]
答案 1 :(得分:0)