Flash中枪战游戏基础制作

2008-04-02 10:33:35来源:互联网 阅读 ()

新老客户大回馈,云服务器低至5折


  枪战游戏主要应用的代码

  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)) {

  _parent.gotoAndPlay(5);

  }

  }

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

  
// 分数加100

  _root.scores = 100;

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

  _root.copyman();

  // 删除此MC

  removeMovieClip(this);


  


  
演示效果:


  


  


  

  


标签:

版权申明:本站文章部分自网络,如有侵权,请联系:west999com@outlook.com
特别注意:本站所有转载文章言论不代表本站观点,本站所提供的摄影照片,插画,设计作品,如需使用,请与原作者联系,版权归原作者所有

上一篇: Flash8.0专业版及播放器新特性

下一篇: Flash设计制作精美的图标