Flash AS 实例进阶 循环按钮

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

  这篇教程为“Flash AS 实例进阶教程”的一部分。查看全套教程>>>>。

  源文件下载

  >>>>>点击查看动画效果<<<<<

  实例2-1循环按钮

⑴ 基本思路

  ①按钮触发事件发生后有可执行的两个以上的命令。

  ②由条件判断语句来执行不同的命令。

  ③按钮的外观要有相应的切换(如果需要)。

  此外还有不同的思路,将若干个按钮放在一个 MC 不同的关键帧上,执行一次按钮动作后跳转帧,效果虽然相同,但制作麻烦,不符合我们使用 AS 的理念,不作为本节学习的内容。 (见源文件 21.2

(2)新知识点

  %(模)的应用, n%m 的意思是 n 除以 m 的余数,例如 10%3 的返回值是 1 , 3%10 的返回值是 3 ,一个递增变量对一个常数求模可以得到一组有规律的循环变量,其用途是很广的。

(3)实例说明

  ①场景上是一个有补间动作且在第 1 帧停止的 MC 。

  ②右下角是两个分别写有“ stop ”和“ play ”的影片剪辑元件和一个隐形按钮,分别放在不同的图层,但叠放在相同位置。

  ③由隐形按钮上的脚本循环控制 3 个 MC 的播放状态,循环周期为 2 次

  ④由左下角按钮上的脚本循环控制有补间动作的 MC ,循环周期为 3 次。

  (4)编写动作脚本

  ①在图层 7 的第 1 帧输入:

复制代码
代码如下:

   _root.huan_mc.stop();
   _root.huan_mc.shu_mc.stop();
   i=0;
   n=0;// 变量初始化

  ②在隐形按钮上输入:

复制代码
代码如下:

 on (release) {
    if (i == 0) {
      _root.huan_mc.play();
      _root.huan_mc.shu_mc.play();
      p._visible = 0;
      i = 1;
    } else {
      _root.huan_mc.stop();
      _root.huan_mc.shu_mc.stop();
      i = 0;
      p._visible = 1;
    }
  }

        ③在另一按钮上输入:


复制代码
代码如下:

 on (release) {
    _root.huan_mc.play();
    _root.huan_mc.shu_mc.play();
    p._visible = 0;
    n++;
    m = n%3; // n模3的值赋给 m
    if (m == 1) {
      _root.huan_mc.shu_mc._rotation = 90;// shu_mc 旋转 90 度
    }
    if (m == 2) {
      _root.huan_mc.shu_mc._rotation = 180; // shu_mc 旋转 180 度
    }
    if (m == 0) {
      _root.huan_mc.shu_mc._rotation = 0; // shu_mc 保持原角度
    }
  }
  

  (5)小结

  本讲虽然没有涉及太多的新知识,但开始着重思路训练,为今后学习打好基础,并开始积累和掌握动作脚本编写方法。 

  (6)课后练习

  利用教程提供的源文件里的影片剪辑“环”,再作一循环按钮, 每点击按钮两下分别显示 3 种不同形态,向前走,向后走,和躺下不动,见效果。

  >>>>>点击查看动画效果<<<<<

  练习2-1

  这篇教程为“Flash AS 实例进阶教程”的一部分。查看全套教程>>>>。

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

Flash cs6怎么创建XML文档?

Flash cs6怎么创建XML文档?XML是扩展的标记语言,想要在flash中使用XML,该怎么使用呢?下面我摩恩就来看看在Flash中表示XML文档的技巧,需要的朋友可以参考下
收藏 0 赞 0 分享

flash怎么绘制太阳花简笔画?

flash怎么绘制太阳花简笔画?flash中想要画一朵太阳花,该怎么绘制简笔画效果的太阳花呢?下面我们就来看看详细的教程,需要的朋友可以参考下
收藏 0 赞 0 分享

Flash CS6带\b符号正则表达式怎么匹配?

Flash CS6带\b符号正则表达式怎么匹配?Flash CS6中正则表达式需要匹配,那么带/b符号的正则表达式该怎么匹配呢?下面我们就来看看详细的教程,需要的朋友可以参考下
收藏 0 赞 0 分享

flash怎么画小女孩的头像?

flash怎么画小女孩的头像?flash中想要画一个小女孩头像,该怎么画小女孩头像呢?下面我们就来看看详细的教程,很简单,需要的朋友可以参考下
收藏 0 赞 0 分享

flash怎么快速画一排松树?

flash怎么快速画一排松树?flash中想要画松树,该怎么快速画一排松树呢?下面我们就来看看flash绘制松树的教程,很简单,需要的朋友可以参考下
收藏 0 赞 0 分享

flash怎么将匹配字符串保存在同一数组?

flash怎么将匹配字符串保存在同一数组?文章中有很多想用的字符串,想要将相同的字符串放到同一数组,该怎么实现恩?下面我们 就来看看纤细的教程,需要的朋友可以参考下
收藏 0 赞 0 分享

flash正则表达式转义字符怎么使用?

flash正则表达式转义字符怎么使用?flash cs6中正则表达式中出现了^和$字符,需要使用转义符,该怎么使用转义字符呢?下面我们就来看看详细的教程,需要的朋友可以参考下
收藏 0 赞 0 分享

Flash怎么使用exec搜索匹配的字符串?

Flash怎么使用exec搜索匹配的字符串?Flash cs6中想要使用用exec方法搜索匹配的字符串,该怎么使用exec呢?下面我们就来看看详细的教程,需要的朋友可以参考下
收藏 0 赞 0 分享

flash2015怎么绘制彩色铅笔?

flash2015怎么绘制彩色铅笔?flash cc 2015中想要画一只彩色铅笔,该怎么画彩色铅笔呢?下面我们就来看看flash画彩色铅笔的教程,需要的朋友可以参考下
收藏 0 赞 0 分享

Flash怎么输出字符串中的反斜杠?

Flash怎么输出字符串中的反斜杠?flash cs6中的字符串输出的时候,发现反斜杠/没有输出出来,该怎么解决呢?下面我们就来看看详细的教程,需要的朋友可以参考下
收藏 0 赞 0 分享
查看更多