Flash专栏: 基础教程 | 技巧运用 | MTV实例教程 | 游戏实例教程 | 实例教程 | AS教程(new)
photoshop专栏: 基础 | 进阶 | 技巧总汇 | 精彩实例 | 文字特效 | 滤镜魔术 | 实际应用
网页设计: Dreamweaver教程 | FireWorks教程 | CorelDraw设计 | Freehand/Illustrator教程 | 音乐转换教程
首页 | Flash专栏 | Dreamweaver专栏 | FireWorks专栏 | photoshop精彩教程 | CorelDraw教程 | Freehand/Illustrator教程 | 音频视频制作教程
 
Flash专栏>flash游戏实例教程>Flash cs4教程:经典简单的“填色”游戏

  日期:2009-04-25 14 作者:木易 来源:eNet硅谷动力

简介:本例将制作一个经典的简单的“填色”游戏。游戏内容是,控制吸管吸取颜色,给人换上不同颜色的着装。

  本例内容所涉及到的知识点:

  Color类以及Startdrag()、Mouse.hide()、Mouse.show()方法等。

  1.Color类和Color中的SetRGB()改变颜色。

  2.使用Startdrag()实现鼠标跟随效果,使用Mouse.hide()和Mouse.show()实现隐藏和显示鼠标的效果。

游戏操作方法 

  玩家通过控制吸管单击颜色按钮,吸取所点的颜色,然后在用吸管单击图中某一区域,此区域就会填充相应的颜色。如果感觉选取的颜色不合适,可以单击“清除”按钮,清除图片颜色。效果如下图“填色”所示。

  


  实例-填色

  一.素材准备

  1. 声音素材

  在这个游戏中只有4个音效,分别是“上一张”和“下一张”两个按钮上的翻页音效“素材声音1”和“素材声音2”、吸管吸取颜料时的音效“素材声音3”、“清除”按钮上的清除音效“素材声音4”,声音素材请到本站相关板块下载。

  2.元件素材

  (1)在这个游戏里用到两个图形元件,是背景图形元件和显示区图形元件。新建“背景”图形元件,作为游戏的整体背景,如图1所示。新建“显示区”图形元件,用来放置需要填色的影片剪辑,如图2所示。     


图2


  (2)制作两个翻页按钮“上一张”和“下一张”同时加入和Play按钮一样的音效。如图3和图4所示。

  


图3


  
图4

(3)制作一个Play按钮,作为游侠的开始按钮。按Ctrl+F8组合键新建按钮,然后在“弹起”帧绘制一个“play”字样的图形。同时在“指针经过”帧和“按下”帧加入声音“素材声音1”和“素材声音2”,如图5所示。

  
图5
(4).制作清除按钮,用于清除图片上添加的颜色,按下帧加入声音,加入“素材声音4”。效果如图6所示。


图6
(5).制作颜色按钮,用于选取颜色。在“按下”帧加入“素材声音3”素材,如图7所示。在这里制作好一个颜色按钮以后,用同样的方法在制作九个不同颜色的按钮,并分别加入“素材声音3”素材。分别摆放成如图8所示。

  
图7

 


图8


 (6).下面的来制作影片剪辑,按Ctrl+F8组合键新建“boy”影片剪辑。把图层名称改为“底”,然后绘制一个大一点的白色圆形,分成均匀的4份并转换影片剪辑。在新增一个图层,命名为“轮廓”,在这个图层上绘制一个小男孩的轮廓。在“底”层上新增多层,在每层上分别绘制小男孩的头发、衣服、鞋、鞋底等,并转换为影片剪辑,如图9所示。

 图9


  制作完男孩的影片剪辑,用同样的方法制作“girl”和“man”两个影片剪辑,如图10和图11所示。


图10 


图11

(7).新建“吸管”影片剪辑。在第1帧制作一个吸管吸取“颜料”影片剪辑。在第4帧插入关键帧,把“颜料”影片剪辑缩小一些,并把第1帧与第4帧之间创建补间动画。新增图层2,在这层制作一个吸管,在第2帧插入关键帧,把吸管缩小一点。新增图层3,选择图层3的第一帧,打开其动作面板添加

  “stop();”语句。

   选择第4帧插入关键帧,在动作面板上添加以下代码:

  gotoAndStop(1); //该影片剪辑跳转到第1帧并停止播放

  如图12所示:

  


图12


(8).新建“小图标1”影片剪辑,在第1帧绘制一个boy图像。为了美观,在boy图像下面添加一个背景。同样的方法制作“小图标2”和“小图标3”。如图13所示。  


图13

(9).新建“sound”影片剪辑,在第1帧绘制一个小矩形,打开其动作面板,添加“stop();”语句。在第2帧添加“声音3”,并且在第3帧插入若干帧直到波形全部显示。如图14所示。

  图14


  (10).新建“控制吸管”影片剪辑,在第1帧绘制一个小矩形,用来添加程序控制吸管。如图15所示。  


图15


  3.颜色控制

  (1).新建flash文档,舞台大小设置为550x400像素,颜色设置为灰色,帧频默认,保存文档为“颜色控制”。将我们在前面准备好的boy影片剪辑和两个颜色按钮拖入舞台。设置boy影片剪辑的实例名称为“boy”。如图16所示。  


图16


  (2).选中第1帧打开动作面板添加“var sezhi;”语句,定义色值变量。接下来选中黄颜色按钮打开动作面板,添加如下代码:

  on (release) {

   _root.sezhi = 16765734;

   //赋予变量sezhi的值为16765734

  }

  选中蓝色按钮打开动作面板,添加如下代码:

  on (release) {

   _root.sezhi = 3368703;

  }

  效果如图17和18所示:


图17 


图18


  (3).打开boy实例,设置它的“发”影片剪辑的实例名称为“a1”,以此类推,设置实例中影片剪辑的实例名称为“a2”、“a3“···。选中a1打开动作面板,添加如下代码:

  on (release) {

   _root.boy.a1color = new Color(_root.boy.a1);

   //新建作用于影片剪辑a1的颜色对象

   _root.boy.a1color.setRGB(_root.sezhi);

   //设置影片剪辑a1的颜色

  } //如图19所示

  


图19


  (4).将a1中的代码分别复制到其它a2、a3、a4·····实例中。这里要注意,将语句中的颜色对象改为与它对应的实例名称。例如a2实例中的代码如下:

  on (release) {

   _root.boy.a2color = new Color(_root.boy.a2);

   _root.boy.a2color.setRGB(_root.sezhi);

  }//如图20所示:

  


图20


  4.游戏实现

  1.新建flash文档,舞台大小设置为550x400像素,颜色默认,帧频设置为30帧/秒,保存文档名为“填色”

  2.在“填色”文档时间轴添加如图21所示图层:

  


图21
3.为了方便舞台时间轴的跳转,在“标签”图层的第2帧、第4帧、第6帧分别添加tu1、tu2、tu3帧标签。

  4.选择“背景”图层第1帧,在素材中将“ 背景”图形元件拖入舞台,然后在舞台上添加游戏名称。选择“按钮”图层第1帧,从做好的影片剪辑素材中将Play按钮剪辑拖入舞台。选择“图”图层的第1帧,从素材中将3个小图标拖入舞台,并将它们排列整齐,得到如图22所示效果。

  5.选中Play按钮打开其动作面板,添加如下代码:

  on (release) {

   play();

  }

  6.选择“小图标1”,在其动作面板上添加如下代码:

  onClipEvent (enterFrame) { //反复执行下面的语句

   this.onRollOver = function() { //鼠标指针移至该影片剪辑上时

   this.onEnterFrame = function() { //反复执行下面的语句

   if (this._xscale<100) { //如果这个影片剪辑的横缩放比例小于100

   this._xscale = this._yscale += 5; //则横纵缩放比例递增

   }

   };

   };

   this.onRollOut = function() { //鼠标指针移开该影片剪辑上时

   this.onEnterFrame = function() {

   if (this._xscale>80) { //如果这个影片剪辑的横缩放比例小于80

   this._xscale = this._yscale -= 5; //则横纵缩放比例递减

   }

   };

   };

   this.onRelease = function() { //单击该影片剪辑时

   _root.gotoAndPlay("tu1"); //跳转到tu1帧,并且播放

   };

  }

  这些代码实现效果是鼠标移动到小图标上,小图标逐渐增大,而鼠标移开时,小图标又回复到原来的状态。单击小图标会跳转到相应的帧播放。

  7.将上步中在“小图标1”上的代码分别复制到其它两个小图标的动作面板上,要注意的是,它的跳转的帧分别要更改成“tu2”和“tu3”。
8.选择“显示区”层的第2帧,从素材中将10个颜色按钮,两个翻页按钮和清除按钮拖入舞台,放到适当位置。

  9.选择白颜色按钮,在它的动作面板中添加代码,并将这些语句复制到其它9个颜色按钮的动作面板上,在这里要注意,给变量_root.sezhi赋的值要与按钮颜色的色值相对应。

  白颜色按钮代码如下:

  on (press) {

   _root.sezhi = 16777215; //赋予变量sezhi的值为16777215

  }

  on (press, release) {

   myColor = new Color(_root.xiguan.yanliao); //新建作用于吸管里颜料的颜色对象

   myColor.setRGB(_root.sezhi); //设置影片剪辑yanliao的颜色

  }

  选择“下一张”按钮,在其动作面板上添加如下代码:

  on (rollOver) { //鼠标指针移至该按钮上时

   Mouse.show(); //鼠标显示

   setProperty("_root.xiguan", _alpha, "0"); //实例“xiguan”的透明度为0

  }

  on (rollOut) { //鼠标指针移开该按钮上时

   Mouse.hide(); //鼠标隐藏

   startDrag("_root.xiguan", true); //实例“xiguan”随鼠标

   setProperty("_root.xiguan", _alpha, "100"); //实例“xiguan”的透明度为100

  }

  on (release) {

   _root.gotoAndPlay("tu2");

  }

  选择“清除”按钮,在其动作面板添加如下代码:

  on (rollOver) {

   Mouse.show();

   setProperty("_root.xiguan", _alpha, "0");

  }

  on (rollOut) {

   Mouse.hide();

   startDrag("_root.xiguan", true);

   setProperty("_root.xiguan", _alpha, "100");

  }

  on (release) {

   _root.gotoAndPlay("tu1");

  }

  10.选择“图”图层的第3帧,从素材中将boy影片剪辑拖入舞台的左侧,实例名称命名为“boy”。打开boy实例,设置“发”影片剪辑的实例名称为“a1”,依此类推,设置boy实例中其它剪辑的名称为“a2”、“a3”···。选中a1打开动作面板,添加如下代码:

  on (release) {

   _root.boy.a1color = new Color(_root.boy.a1);

   _root.boy.a1color.setRGB(_root.sezhi);

   _root.sound.play();

  }

  把上面a1中的代码分别复制到其它的a2、a3···实例中。需要注意的是,要将语句中的颜色对象改为与它们各自的实例名称分别对应。
12.选择“吸管”层的第2帧,从素材中将“吸管”影片剪辑拖入舞台,实例名称命名为“xiguan”。

  13.选择“显示区”层第2帧,从素材中将“控制吸管”和“sound”两个影片剪辑拖入到场景中但不要放在舞台上,sound影片剪辑实例名称命名为“sound”。选择影片剪辑“控制吸管”的实例,在其动作面板上添加以下代码:

   onClipEvent (mouseDown) { //当鼠标按下时

   _root.xiguan.gotoAndPlay(2); //实例“xiguan”跳转到第2帧,并开始播放

  }

  14.选择“程序”层的第1帧,在其动作面板上添加如下语句:

  stop();

  var sezhi;

  选择第2帧,在其动作面板上添加如下代码:

  Mouse.hide();

  startDrag("_root.xiguan", true); //隐藏鼠标,实现吸管跟随

  选择第3帧,在其动作面板添加如下代码:

  stop();

  制作完成以后如图22所示

  


图22


  到这我们完成了第一个图的填色游戏

  15.接下来你在第4帧和第7帧制作其它两张图的填色游戏,制作过程和第一张的制作过程相同,这里就不在给大家介绍了,又不明白的可以参考我提供的源文件。

 
 
高手云集 版权所有 1998-2009