如何制作枪战游戏

枪战游戏的主要应用代码。

1.鼠标跟随startDrag(这个,真);用作标准具。

2.级别-级别控件swap depths();

3.碰撞检测hitTest(_root.gun.hit)

4.动态加载敌人:_ root . attach movie();

5.动态文本框制作显示分数

生产流程:

1.准备一个射击动画的瞄准镜。

2.一个敌人MC,里面有一个敌人被射杀的动画。敌方MC的连接ID在库中被命名为“man”。

3.动态文本框编码:首先,主时间轴的第一帧为:

//-主时间

中间轴代码。

//隐藏鼠标

mouse . hide();

//初始设置分数为0。

分数= 0;此变量必须对应于分数文本框的变量名。

//封装代码,建立新函数“copyman”

函数copyman() {

//将库中ID为“man”的MC复制到主场景,命名为“man”+_root.i,图层级别为_ root . I。

//注意:_root.i没有设置初始值,所以默认为无。

// _root.i++,即_root.i+1。

_root.attachMovie("man "," man"+_root.i,_ root . i++);

//设置新MC的位置

//将复制的新MC放在X轴在0到550之间,Y轴在0到400之间的随机坐标上。

_root["man"+_root.i]。_ x = random(550);

_root["man"+_root.i]。_ y = random(400);

}

//执行新功能

copy man();

然后将瞄准器MC拖到名为“gun”的舞台实例上,并编写为:

// -视线MC的代码。

onClipEvent (enterFrame) {

//实现鼠标跟随,将鼠标设置到这个MC的注册点。

startDrag(这个,真);

}

onClipEvent (mouseDown) {

//鼠标按下时运行到这个MC帧3(火动画)。

gotoAndPlay(3);

}

onClipEvent(加载){

//将次准直级别设置为9999。数字越高级别越高,防止瞄准被敌人覆盖。

this . swap depths(9999);

}

这个MC里面有一个火的动画。一个不可见的MC被添加到火动画的这个部分,该实例被称为“hit”。

让敌人MC在里面

敌方MC内部,第一帧是没拍的时候的画面。在此框架中,添加一个不可见的MC和AS:

//冲突检测

onClipEvent (enterFrame) {

//如果检测到瞄准器MC中的hit处于接触状态,则跳转到上一级的第五帧执行。

if (hitTest(_root.gun.hit)) {

_ parent . gotoandplay(5);

}

}

5帧之后,就是中枪后死亡的动画,最后一帧加的AS:

//分数加100

_ root . scores+= 100;

//运行复制人功能复制敌人。

_ root . copyman();

//删除这个MC

remove movie clip(this);