当前位置: 首页 > 图文教程 > Flash动画 > Flash动画制作 > Flash MX 编程深层次应用-Flash射击游戏(4)

Flash动画制作
Flash5任意两点间随机画线(二)
Flash5的DATE对象(一)
Flash5任意两点间随机画线(四)
Flash 神奇遮罩之图片篇(2)
Flash 神奇遮罩之应用篇(3)
Flash MX的自由变形工具(4)
利用Flash MX模板制作XML动态菜单(3)
Freehand和Flash的结合应用(9)
Flash5 位移操作(一)
Flash5任意两点间随机画线(五)
Flash 神奇遮罩之应用篇(2)
Flash 神奇遮罩教程之以假乱真篇
Flash 神奇遮罩之透明度篇(3)
实例学用Flash MX增强的AS功能(3)
利用Flash MX模板制作XML动态菜单(5)
Flash5任意两点间随机画线(一)
Flash层的运用(二)
Flash 神奇遮罩之应用篇(4)
Flash 神奇遮罩之综合篇(2)
Flash 神奇遮罩之综合篇(1)

Flash动画制作 中的 Flash MX 编程深层次应用-Flash射击游戏(4)


出处:互联网   整理: 软晨网(RuanChen.com)   发布: 2009-11-22   浏览: 74 ::
收藏到网摘: n/a

6.2 游戏制作(前台)(3)

    

在初始化时需用程序把多余的部分隐藏起来,仅显示正常飞船的数。其程序如下:

for (i=5; i>=my_plane_number; i--) {

    eval("my_plane_num_"+i)._visible = false;

}

当我的飞船爆炸时就同时减少一个显示,代码如下:

_root["my_plane_num_"+(_root.my_plane_number-1)]._visible = false;

_root.my_plane_number--;

这个代码已经包含在前面的飞船控制程序中了。如果此时我们接到一个令牌,就应先对_root.my_plane_number1,再将对应的小飞船显示出来。

最后,来看看加命令牌中的程序:

onClipEvent (enterFrame) {

    _parent._x += random(6)-3;

    _parent._y += 5;

    if((_parent._x>_root.play_width)||(_parent._x<0) || (_parent._y>_root.play_height) || (_parent._y<0)) {

             _parent.removeMovieClip();

    }

   //如果我的飞船与令牌相撞击,就表示我已经接到令牌

    if (_parent.hitTest(_root.my_plane)) {

             // 播放接到令牌时的声音

             _root.get_pai.start();

        _root["my_plane_num_"+_root.my_plane_number]._visible = true;

             _root.my_plane_number++;

       //如果接到令牌后,就清除之

        _parent.unloadMovie();

    }

}

在这里,令牌移动的x坐标位置在正负3个点之内,而y坐标位置每次向下移动5个点,这样就保证了令牌的随机下落,而不会呆板地直线下落。当然了,令牌如果移出屏幕还没有被飞船接到,就清除它。

2.增加血量

同理,增加血量令牌程序如下:

onClipEvent (enterFrame) {

    _parent._x += random(6)-3;

    _parent._y += 5;

    if((_parent._x>_roo