Flash射击游戏设计+需求分析(16)_毕业论文

毕业论文移动版

毕业论文 > 计算机论文 >

Flash射击游戏设计+需求分析(16)


var BOSS_random;
var BOSS_random_ok = true;
Boss出现后,由于它始终在一个固定位置停留,所以Boss载入后,我会给Boss设置一个固定位置。
//_root.attachMovie("BOSS_1", "BOSS_01", _root.picDepth++);
_root.BOSS_01._x = 550;
_root.BOSS_01._y = 150;
_root.BOSS_01._width = 300;
_root.BOSS_01._height = 225;
//定义BOSS攻击函数
function BOSS_fight_1(arg, n, X, Y) {
    //加载火光1
    var BOSS1_zidan_fire = _root.attachMovie("BOSS_zidan_fire", "BOSS_zidan_fire"+_root.picDepth, _root.picDepth++);
    BOSS1_zidan_fire._x = _root.BOSS_01._x+X;
    BOSS1_zidan_fire._y = _root.BOSS_01._y+Y;
    BOSS1_zidan_fire._width = BOSS1_zidan_fire._width/3;
    BOSS1_zidan_fire._height = BOSS1_zidan_fire._height/3;
    Boss的也是有一定轨迹,以下是对Boss子弹的代码:
    var BOSS1_zidan = _root.attachMovie("boss1-zidan_"+n, "boss1-zidan"+_root.picDepth, _root.picDepth++);
    BOSS1_zidan._x = _root.BOSS_01._x+X;
    BOSS1_zidan._y = _root.BOSS_01._y+Y;
    BOSS1_zidan._width = BOSS1_zidan._width/2;
    BOSS1_zidan._height = BOSS1_zidan._height/2;
5.5    相关物品及状态条设定
5.5.1    物品
小怪死亡后,会掉落物品如图5.3,会掉落一些物品。有的可以增加角色的血量,有的是增加角色的经验值还有一种就是增加角色的气槽值。如果主角碰到此类相关物品,那么系统就会提示:威力升级等提示语如图5.4
 
图5.3 掉落物品
 
图5.4 提示语
5.5.2    状态条
本游戏共有5个状态条如图(5.5):主角血条、主角能量条、主角经验条、主角气槽条、Boss血量条。
 
图5.5 状态条
这些状态条,会根据不同的状况下发生变化,或逐渐增加,或逐渐减少。但是不管怎么变,离不开两个字“碰撞”。下面一节我就会为大家介绍本游戏的碰撞效果。
5.6    关于碰撞
为了实现,击杀小怪以及Boss和被小怪以及Boss的子弹击伤效果等等,所以碰撞效果在游戏中是必不可少的。例如,小怪的子弹打到主角,主角的血条就会下降,同理,主角的子弹打到Boss,Boss的血条就会下降。具体如何实现,代码如下。
var zhujue01_teshu_Array = new Array();
function shoot_teshu(arg, a) {
    if (_root.zhujue_1p == "baoshi") {
        if (a == 1) {
            var zd_teshu = _root.attachMovie("zhujue01_teshu_"+a, "zhujue01_teshu1", _root.picDepth++);
            zd_teshu._x = _root.zhujue1._x;
            zd_teshu._y = _root.zhujue1._y;
            arg = arg/180*Math.PI;
            zd_teshu.xinc = speed*1.5;
            zd_teshu.yinc = speed*1.5;
            zd_teshu.inc = 1;
            zd_teshu.onEnterFrame = function() {
                zd_teshu.inc -= 0.05;
                zd_teshu._rotation += 50;
                if (this._x<0) { (责任编辑:qin)