actionscript 3 - 随机对象选择
actionscript 3 - random object selection
所以我希望一个单位能够随机瞄准玩家单位或玩家盟友。
我将所有盟军船只存储在一个数组中,玩家分别在舞台上。
以下是创建子弹的代码,删除了不相关的内容。
private function createBullet(): void {
var rand = allies[Math.floor(Math.random()*allies.length)];
_endX = rand.x
_endY = rand.y
}
使用上面的代码,我可以让它们以随机盟友飞船为目标,但我也希望它在随机选择目标时包括玩家飞船 (_player),但我无法将玩家添加到盟友数组中,所以我不知道真的确定要做什么。
当你用一个随机数乘以数组的长度时,长度加一。
如果生成的索引等于盟友长度,这意味着 "rand" 是 _player.
var randomIndex:int = Math.floor(Math.random() * (allies.length + 1));
var rand:*;
if (randomIndex == allies.length - 1)
rand = _player;
else
rand = allies[randomIndex];
...
所以我希望一个单位能够随机瞄准玩家单位或玩家盟友。 我将所有盟军船只存储在一个数组中,玩家分别在舞台上。
以下是创建子弹的代码,删除了不相关的内容。
private function createBullet(): void {
var rand = allies[Math.floor(Math.random()*allies.length)];
_endX = rand.x
_endY = rand.y
}
使用上面的代码,我可以让它们以随机盟友飞船为目标,但我也希望它在随机选择目标时包括玩家飞船 (_player),但我无法将玩家添加到盟友数组中,所以我不知道真的确定要做什么。
当你用一个随机数乘以数组的长度时,长度加一。 如果生成的索引等于盟友长度,这意味着 "rand" 是 _player.
var randomIndex:int = Math.floor(Math.random() * (allies.length + 1));
var rand:*;
if (randomIndex == allies.length - 1)
rand = _player;
else
rand = allies[randomIndex];
...