我到处搜索并找到了一些编码寻的导弹的资源,但是由于我对动作脚本和一般编码有点陌生,我无法真正理解不同位的作用,更不用说将它们合并到我的游戏中了。
我正在为一个学校项目制作一个滚动射击游戏。有一种特殊的“第三级”武器,其工作原理如下:
- 当敌人在射程内时,武器会自动开火
- 武器瞄准最近的敌人并朝它走去
- 它也是导弹,所以它也需要旋转运动
- 当目标被摧毁时,导弹将自毁
我已经有了找出最近目标的代码:
for (var i in enemies)
{
var min = Infinity; // Set to infinity so the if statement will work
var tempDist = getDistance(enemies[i]); // tempDist stores the distance
if (tempDist < min && tempDist < 300)
{
min = tempDist;
closestEnemy = enemies[i];
}
}
(getDistance() 是一个函数,用于在我的代码中查找两个 MC 之间的距离)
我想要它做的是让最近的敌人存储标识符,如果附近没有目标,则存储“未定义”。寻的导弹 MC 有一个类应该通过 _root.playership.closestEnemy 不断更新最近敌人的位置。如果它是“未定义的”,它应该会爆炸。
玩家的飞船包含一个名为“enemies”的数组,其中包含所有生成的敌人的所有身份。我的装弹和发射率系统很好用,只是跟踪是问题所在。
任何帮助将不胜感激,谢谢!