目前我正在开发平台类型的游戏。我有一个for循环来检查天气或不是球员脚接触地面。我有这个;
for (i=0; i<5; i++) { //There are 5 floors
if (this.feet.hitTest(_root["g"+i])) {
_root.mc.groundTouch = true; //triggers the mc falling
}
}
只有当其中一个楼层存在时才能正常工作(IE如果floor1在舞台上,但是floor2-5不在舞台上);所以试着反击它我尝试使用;
for (i=0; i<5; i++) {
if (this.feet.hitTest(_root["floor"+i])) {
_root.mc.groundTouch = true; //triggers the mc falling
}
if (!this.feet.hitTest(_root["floor"+i])) {
_root.mc.groundTouch = false;
}
}
这显然不起作用,因为为了使其正常运行, _root.mc.feet 必须触及所有5个“floor”实例。
所以我的问题是;
如果 _root.mc.feet 触及任何楼层实例,我如何获取 _root.mc.groundTouch = true 的代码,但请 _root。 mc.groundTouch = false 只有在没有触及任何楼层实例的情况下?
我知道,如果我真的想要,我可以做一些像
if (_root.mc.feet.hitTest(_root.floor1) && !_root.mc.feet.hitTest(_root.floor2) && etc)
但是为了节省自己的时间,并且让自己能够添加楼层而不会更改 i&lt; 5 到我所拥有的楼层数量,我更希望有一种更简单的方法可以做些什么来做with for循环。
提前感谢您,非常感谢您的帮助
答案 0 :(得分:0)
_root.mc.groundTouch = false;
for (i=0; i<5; i++) { //There are 5 floors
if (this.feet.hitTest(_root["g"+i])) {
_root.mc.groundTouch = true; //triggers the mc falling
break;
}
}
if (_root.mc.groundTouch) // you are touching one or more of the floors