在Flash ActionScript 3中为传入对象生成随机起点

时间:2011-10-26 17:47:04

标签: flash actionscript-3

我们有这个游戏,你可以在舞台中间控制一个化身,保护自己不受传入的射弹。如果它用胳膊或腿击中它们就会获得+1,但如果它们击中头部或躯干,则得到-1。但无法弄清楚如何沿给定路径随机生成它们。见下图。希望他们从两侧进入,但拥有相同的“目的地区域” - 这将是头部和外部区域。躯干。

继承人的形象,无法张贴图片,因为我显然没有足够的分数。

http://img80.imageshack.us/img80/517/flashobjects.jpg

1 个答案:

答案 0 :(得分:1)

听起来您想要将每个衍生粒子的X值初始化为小于0(来自左侧),或大于stageWidth(来自右侧)。然后,你需要将它们放在朝向头部或躯干的轨迹上。

起点的逻辑可能是这样的:

var x:int = (Math.random() > .5) ? -10 : stage.stageWidth + 10;
var y:int = Math.random() * stage.stageHeight);

粒子朝向角色的实际行进可以通过一系列不同的方式完成。但最简单的可能是将Event.ENTER_FRAME事件上的每个粒子移动到更接近目标的位置。一些简单的三角学应该可以帮助你。

或者,您可以使用一些脚本化的Tween来在期望的时间段内将粒子移动到目的地。