有了沿路跑的小怪,现在加个炮进去,如果小怪跑到炮的射程内,炮会旋转自己的炮管瞄准小怪,然后不停的打,如果小怪跑出了范围,则停止发射。
现在做武器,先做炮管,"插入" >> "新建元件",在元件内部画上一根直线,在属性面板中选择黑色,6像素的宽度,注意注册点的位置。接着,,"插入" >> "新建元件",在元件内部绘制一个圆,然后新建一个图层,从库面板中拖一个“元件一”到舞台,注意注册点对齐。选中炮管在属性面板中命名为"pipe"。回到"场景一",在地图层上新建一个图层,然后从库中拖一个“元件二”到舞台上,选中它,在属性面板中命名为"canon".
然后再侦听函数里面写下下面的代码:
//设置武器,
var disx:Number = monster.x - canon.x;
var disy:Number = monster.y - canon.y;
//武器与小怪的距离
var s:Number = Math.sqrt(disx*disx + disy*disy);
//120为武器的射程
if(s < 120)
{
var a:Number = Math.atan2(disy, disx);
//调整炮管指向小怪
canon.pipe.rotation = a * (180/Math.PI);
}
运行可以看到当小怪离武器足够近的时候,炮管会调整角度对准小怪的。。。