Flash枪战游戏基础制作

王朝other·作者佚名  2008-05-19
窄屏简体版  字體: |||超大  

screen.width-333)this.width=screen.width-333" border=0

枪战游戏主要应用的代码

1.鼠标跟随 startDrag(this, true);用来做标准器

2.层级别的控制 swapDepths();

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

4.动态加载敌人: _root.attachMovie();

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

制作流程:

1.准备一个瞄准器MC,内含开火的动画

2.敌人MC一个,内含敌人中弹动画,在库中将敌人MC连接ID命名为“man"

3.动态文本框 编写代码: 首先主时间轴第一帧AS:

// ------主时间轴代码----------------

// 将鼠标隐藏

Mouse.hide();

// 初始设置分数为0

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

// 封装代码,建立新的函数"copyman"

function 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);

}

// 执行新函数

copyman();

然后将瞄准器MC拖到舞台实例名为“gun”在其MC上写AS:

// ----------准星MC的代码--------------

onClipEvent (enterFrame) {

// 实现鼠标跟随,并且所定鼠标到此MC的注册点

startDrag(this, true);

}

onClipEvent (mouseDown) {

// 当鼠标按下的时候运行到此MC第3帧(开火动画)执行

gotoAndPlay(3);

}

onClipEvent (load) {

// 设置次准星层级别为9999,数字越大层级越高,以免准星被敌人覆盖

this.swapDepths(9999);

}

此MC内部有个开火的动画在开火动画这一段加上一隐形MC,实例名为“hit”

制作敌人MC内部

敌人MC内部,第一帧为没有中弹时候的画面,在这帧再加入一隐形MC,加AS:

// 碰撞检测

onClipEvent (enterFrame) {

// 如果如果检测到于准星MC里的hit发生接触就在上一级跳转到第5帧(被毖了)执行.

if (hitTest(_root.gun.hit))

}

5帧以后为中弹后死亡的动画,在最后一帧加AS:

// 分数加100

_root.scores += 100;

//运行copyman的函数 复制敌人

_root.copyman();

// 删除此MC

removeMovieClip(this);

 
 
 
免责声明:本文为网络用户发布,其观点仅代表作者个人观点,与本站无关,本站仅提供信息存储服务。文中陈述内容未经本站证实,其真实性、完整性、及时性本站不作任何保证或承诺,请读者仅作参考,并请自行核实相关内容。
 
 
© 2005- 王朝網路 版權所有 導航