在Flash的ActionScript 3

问题描述:

进入对象生成随机起点,我们有这个游戏,你控制的是维护自身的利益,从来袭炮弹舞台中间的化身。如果它用胳膊或腿撞击它们,你会得到+1,但如果它们碰到头部或躯干,你会得到-1。但不能弄清楚如何在给定的路径上随机产生它们。见下图。希望他们能够从侧面进来却有着相同的“目标区” - 这将是头&躯干。在Flash的ActionScript 3

继承人的形象,不可能岗位形象,因为我没有足够的点数明显。

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

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

逻辑的出发点可能是这样的:

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

对人物的颗粒的实际行驶可以做一大堆不同的方式。但最简单的可能是正义之举每个粒子的Event.ENTER_FRAME事件一点点接近自己的目标。一些简单的三角应该会让你在那里。

或者,您可以使用一些脚本化的Tweens将粒子移动到目标位置一段时间。

+1

很好的回答。如果您知道起始x/y坐标和结束x/y坐标,则也可以使用矢量实现而不是trig。然后,可以将速度设置为变量,然后将该变量用作标准化矢量的标量。 –