作者cjcat2266 (CJ Cat)
看板Flash
标题Re: [问题] 阵列的问题
时间Sun May 31 10:39:40 2009
※ 引述《HornyDragon (好色龙)》之铭言:
: 今天场景上已经有许多射出的子弹,存在同一阵列里,分别为
: bulletArray[1] , bulletArray[2] , bulletArray[3] ...........
: 场景中并有许多不同目标,分别是
: balls[1] , balls[2] , balls[3] ...........等。
: 现在的问题是,当我使用balls[i].hitTest(bulletArray[i])
: 来检定子弹是否击中目标时,
: 这样写会变成特定的子弹要打中特定的目标才有效啊 <囧>
请跳脱单回圈的窠臼,使用双回圈吧 :)
for (var i:Number = 0; i < balls.length; i++) {
for (var j:Number = 0; j < bullets.length; j++) {
if (balls[i].hitTest(bullets[j])) {
//ball #i is hit
//...
continue;
}
}
}
那个continue会跳出内回圈,继续执行下一个外回圈
因为一个球只要被打中了,就没有必要继续检察剩下的子弹
--
CJ Cat = Croa'J Cat = Cockroach Cat = 西街凯特 = 蜚蠊猫 = 蟑螂猫
Blog
http://cjcat.blogspot.com
Gallery
http://cjcat2266.deviantart.com
ptt2 Board CJWorkshop - 阿多比闪光(Adobe Flash)研讨区
--
※ 发信站: 批踢踢实业坊(ptt.cc)
◆ From: 61.228.83.243
※ 编辑: cjcat2266 来自: 61.228.83.243 (05/31 11:31)
1F:推 HornyDragon:吓........!! 05/31 13:43
2F:推 etrexetrex:如果那个球是一个点的话 05/31 23:26
3F:→ etrexetrex:你可以一开始就把子弹放在一个容器内 05/31 23:27
4F:→ etrexetrex:然後 容器.hitTest(球座标 , true) 05/31 23:27
5F:→ Jerrynet:楼上这招好像不错@_@ 06/01 01:42
6F:推 etrexetrex:比较不用想回圈XD 06/01 14:31
7F:推 HornyDragon:二楼的作法好棒XDDDDDDD 06/01 14:31