flash实例-打造鼠标触发火焰特效

所属分类: 媒体动画 / Flash教程 阅读数: 98
收藏 0 赞 0 分享

思路:导入背景素材,然后制作出焰火飘落特效。创建文档类,产生鼠标跟随的多角星形特效;创建元件类的扩展类,产生随机大小的火花效果。
  用鼠标在画面上划过,即可看到绚丽的互动特效
flash实例-打造鼠标触发火焰特效 脚本之家
  一、 制作焰火飘落特效
  (1)新建一个大小为500×300像素,帧频为30fps的空白文档。按Ctrl+R组合键导入西湖夜景.jpg”文件,然后设置其坐标为(0,0),如图1所示,再采用前面的方法在“属性”面板中添加Main文档类。
flash实例-打造鼠标触发火焰特效
图1 导入背景
  (2)按Ctrl+F8组合键新建一个影片剪辑(名称为Star_mc),进入该影片剪辑的编辑区域,然后按住Shift+Alt组合键的同时使用“椭圆工具”在该影片剪辑的中心点绘制一个圆形。
flash实例-打造鼠标触发火焰特效
图2 绘制圆形
  技巧与提示:图形的填充色类型为“放射状”,第1个色标颜色为(R:255,G:0,B:0),第2个色标颜色为(R:153,G:0,B:0),第3个色标颜色为(R:153,G:0,B:0),Alpha为0%。
  (3)新建一个star图层,再单击“工具箱”中的“多角星形工具”按钮 ,并在“属性”面板中设置好该工具的参数,然后按住Shift+Alt组合键的同时在影片剪辑的中心点绘制一个如图3所示的星形。
flash实例-打造鼠标触发火焰特效
图3 绘制多角星形
  (4)使用“选择工具”调整好星形的顶点位置,如图4所示。
flash实例-打造鼠标触发火焰特效
图4 调整顶点
  (5)选择调整好的多角星形,然后原位复制出一份,按Ctrl+Alt+S组合键打开“缩放和旋转”对话框,设置缩放为40%,再设置其颜色为白色,如图5所示。
flash实例-打造鼠标触发火焰特效
图5 拷贝并缩放图形
  (6)返回到“场景1”,按Ctrl+F8组合键新建一个影片剪辑(名称为Magic_mc),再设置填充类型为“放射状”,第1个色标颜色为 (R:255,G:255,B:255), 第2个色标颜色为(R:255,G:255,B:204),第3个色标颜色为(R:255,G:204,B:0),第4个色标颜色为 (R:255,G:102,B:0),第5个色标颜色为(R:153,G:0,B:0),Alpha为0%,然后按住Alt键的同时使用“矩形工具”以该 影片剪辑中心点为起点绘制一个如图6所示的矩形。
flash实例-打造鼠标触发火焰特效
图6 绘制矩形
  (7)使用“任意变形工具”选择矩形,然后按Ctrl+T组合键打开“变形”面板,设置旋转为45°,再单击“重制选区和变形”按钮 ,复制出3份图形,如图7所示。
flash实例-打造鼠标触发火焰特效
图7 复制图形
  (8)复制出5个图形,然后将其调整成如图8所示的颜色,再将复制出的图形转换为影片剪辑,并将其分别命名为01、02、03、04和05 。
flash实例-打造鼠标触发火焰特效
图8 复制图形
  (9)将01、02、03、04和05 影片剪辑分别放置在Magic_mc图层的5个关键帧上,然后分别为其添加不同的“发光”滤镜,再新建一个AS图层,最后在“动作-帧”面板中输入stop():程序,如图9所示。
flash实例-打造鼠标触发火焰特效
图9 应用滤镜效果
  二、 创建元件类 添加控制代码
  (1)采用前面的方法分别为Magic_mc和Star_mc影片剪辑添加元件类,如图10所示。
flash实例-打造鼠标触发火焰特效
图10 添加元件类
  (2)新建一个ActionScript文件,将其命名为Main,然后将其保存在该实例的文件夹中,再输入控制代码。
  * 该类为扩展元件类
  * @author lbynet
  * @version 0.1
  */
  package {
  import flash.display.MovieClip;
  import flash.events.Event;
  public class Magic_mc extends MovieClip {
  private var dis:Number;
  public function Magic_mc() {
  init();
  }
  private function init() {
  var Random = 1 + Math.round(Math.random()*4);
  this.gotoAndStop(Random);
  this.scaleX = this.scaleY = Math.random();
  //产生随机数-5到5之间的随机数
  dis = Math.round((Math.random()-.5)*10);
  this.addEventListener(Event.ENTER_FRAME,enterFrameHandler);
  }
  private function enterFrameHandler(event:Event) {
  this.y += 5;
  this.x += dis;
  this.scaleX -=.005;
  this.scaleY -=.005;
  }
  }
  }
  技巧与提示:
  第19和20行代码是为该元件类创建一个1~5之间的随机数,使该影片剪辑元件类在实例化(被创建时)时将播放头移到并停止在指定的时间帧上。
  Math.random()方法产生0~1之间的随机数,Math.random()*4方法返回到0~4之间的随机数,而 Math.round()方法用于向上或向下舍入为最接近的整数并返回该值,所以1+Math.round(Math.random()*4)方法取得 1~5之间的随机整数值;gotoAndStop()语句使影片剪辑的播放头移到并停止在指定的时间帧上。
  通过使用Math.random()-0.5 方法来生成-0.5~0.5之间的随机数,然后乘以10得到-5~5之间的随机数,再使用Math.round方法进行舍入并取得整数,这样当鼠标指针由下往上移动时,就会产生星火飘落的效果,如图11所示。
flash实例-打造鼠标触发火焰特效
图11 星火飘落效果
  第30行代码是为火花加入y轴坐标方向上的一个固定加速度,而第31行代码则是火花在x轴坐标方向上的一个-5~5之间的随机加速度值。
  (4)按Ctrl+Enter组合键发布程序。

flash素材下载

更多精彩内容其他人还在看

FLASH CLASS的基本编写规范

继续回来写教程。本来不想写这节的,因为这节的内容很多书上或者网上资料都有,而且写的比我要详细正规得多。但后来想想,还是写吧!为啥?凑篇幅呗~啊哈哈~而且后面几节要结合接宝的范例游戏,具体分析它的几个CLASS,所以,还是用一节把CLASS的写法说一下。可能我对CLASS
收藏 0 赞 0 分享

flash教程:使用拆分数字和文字的函数

flash的小函数:拆分数字和文字的函数. 以下为引用的内容: /* * 拆分数字和文字 */ public function splitNS(s:String):Object{ var tNum:String=""
收藏 0 赞 0 分享

通过实例学习Flash AS3.0——案例六

相关文章: 通过实例学习Flash AS3.0——案例五 首先声明:本人大菜鸟一个,刚接触AS3不久,许多理念还没来得及灌输,这些case都是从网上down的,但因为解说是英文的,不利我们学习,我就充当一个translater,顺便可以让自己巩固一下
收藏 0 赞 0 分享

用Flash AS制作逼真的下雨动画效果

Flash教程:用Flash AS制作逼真的下雨动画效果 先看下效果:(附.swf文件) 制作过程 一、新建一图层,大小随意; 二、新建元件(影片剪辑): 1、制作雨滴并下落。使用直线工具(颜色设为灰色,1像素)画一短直线,使用选择工具将直
收藏 0 赞 0 分享

通过实例学习Flash AS3.0——案例五

相关文章: 通过实例学习Flash AS3.0——案例四 首先声明:本人大菜鸟一个,刚接触AS3不久,许多理念还没来得及灌输,这些case都是从网上down的,但因为解说是英文的,不利我们学习,我就充当一个translater,顺便可以让自己巩固一下
收藏 0 赞 0 分享

Flash CS3制作Fla形式的组件

  本文为大家介绍如何制作Flash CS3中的[*.fla]形式的的组件(Component)。这种组件和SWC组件不同,它和CS3自带的组件一样能够双击进入组件里面编辑,是Flash CS3新增加的一种组件形态。下面我们制作一个MyButton组件为例子。   制作步骤:
收藏 0 赞 0 分享

通过实例学习Flash AS3.0——案例四

相关文章:通过实例学习AS3.0——案例三 首先声明:本人大菜鸟一个,刚接触AS3不久,许多理念还没来得及灌输,这些case都是从网上down的,但因为解说是英文的,不利我们学习,我就充当一个translater,顺便可以让自己巩固一下知识。
收藏 0 赞 0 分享

通过实例学习flash AS3.0——案例二

相关文章:通过实例学习AS3.0 --案例一 首先声明:本人大菜鸟一个,刚接触AS3不久,许多理念还没来得及灌输,这些case都是从网上down的,但因为解说是英文的,不利我们学习,我就充当一个translater,顺便可以让自己巩固一下知识。 水平有限,错误难免,欢
收藏 0 赞 0 分享

通过实例学习AS3.0——案例三

相关文章:通过实例学习flash AS3.0——案例二 首先声明:本人大菜鸟一个,刚接触AS3不久,许多理念还没来得及灌输,这些case都是从网上down的,但因为解说是英文的,不利我们学习,我就充当一个translater,顺便可以让自己巩固一下知
收藏 0 赞 0 分享

通过实例学习AS3.0

首先声明:本人大菜鸟一个,刚接触AS3不久,许多理念还没来得及灌输,这些case都是从网上down的,但因为解说是英文的,不利我们学习,我就充当一个translater,顺便可以让自己巩固一下知识。 水平有限,错误难免,欢迎大虾小虾,大鸟小鸟指正。 下面进入正题:
收藏 0 赞 0 分享
查看更多