开启左侧

下雨和停雨实例

[复制链接]
清灯竹影 发表于 2014-5-27 15:32:35 | 显示全部楼层 |阅读模式 打印 上一主题 下一主题
先上传文件。抽空来讨论教材里这个制作过程。下雨和停雨.swf(73.89K)

建议参考另一种方法:http://www.etthink.com/thread-20060-1-1.html
参与人数 1金钱 +10 +1 收起 理由
etthink + 10 + 1

查看全部评分总评分 : 金钱 +10 +1

欢迎大家多发帖,参与讨论,增进彼此了解。

精彩评论12

正序浏览
etthink 发表于 2014-6-10 12:30:34 来自手机 | 显示全部楼层
不更新了吗wechat:lang_wechat_threadmessage
欢迎大家多发帖,参与讨论,增进彼此了解。
清灯竹影 发表于 2014-6-10 16:41:51 | 显示全部楼层
最近工作比较忙。我尽快抽时间附上教程。
欢迎大家多发帖,参与讨论,增进彼此了解。
 楼主| 清灯竹影 发表于 2014-6-10 16:51:49 | 显示全部楼层
先提供这个课件的制作思路(来自教材):
      这个实例的制作思路是,先制作一个影片剪辑元件,在这个元件舞台上绘制一条斜的白线表示雨,然后用循环程序将这个影片剪辑从库中复制多个到舞台上,并随机定位。此实例还要制作一个帧循环,在每一次帧循环中,都要把这些影片剪辑重新随机定位,这样才能形成下雨的动态效果。
      在帧循环中,要随机定位这些影片剪辑,就必须全部找到这些影片剪辑,也就是“遍历显示列表”。找到这些影片剪辑后,才能随机再设置其坐标。这里用的方法是,在创建影片剪辑时就给这些影片剪辑有规律的命名,然后通过实例名就能可以找到它们。
    雨逐渐停止的效果其实就是不断从显示列表中删除影片剪辑的过程,这也在一个帧循环中完成,每次循环删除一个影片剪辑,完全删除以后停止。
欢迎大家多发帖,参与讨论,增进彼此了解。
 楼主| 清灯竹影 发表于 2014-6-10 16:52:31 | 显示全部楼层
尽快提供具体制作步骤
欢迎大家多发帖,参与讨论,增进彼此了解。
 楼主| 清灯竹影 发表于 2014-6-11 10:47:12 | 显示全部楼层
一、制作所需元件
1、新建flash文件,帧频设低一点,
2、新建mc,命名“细雨”,在该元件内绘制一条斜的白色细线,作为雨下落时所形成的白线。
3、新建按钮元件,命名为“雨停”,并修改按钮元件文本为“雨停”
欢迎大家多发帖,参与讨论,增进彼此了解。
 楼主| 清灯竹影 发表于 2014-6-11 10:49:15 | 显示全部楼层
二、为“细雨”元件设置
1、在元件库的“细雨”元件右击,选择“属性”,打开“高级”设置
2、勾选”为ActionScript"导出,把“类”名设为“yu"
欢迎大家多发帖,参与讨论,增进彼此了解。
 楼主| 清灯竹影 发表于 2014-6-11 10:51:04 | 显示全部楼层
三、布置主场景
1、在主场景把图层一命名为背景,在背景图层第5帧插入普通帧
2、导入背景图片
3、插入新图层,命名为”按钮“选中”按钮“图层第一帧,从元件库里拖出”雨停“按钮到舞台右下角,命名为”ty_btn"
欢迎大家多发帖,参与讨论,增进彼此了解。
 楼主| 清灯竹影 发表于 2014-6-11 10:53:51 | 显示全部楼层
四、编写从库中复制影片剪辑的程序
1、插入新图层,命名为as
2、选中as图层第一帧,输入下面程序
import flash.events.MouseEvent;

for (var i=1; i<150; i++)
{
        var yu_mc=new yu();
        yu_mc.x = Math.random() * 550;
        yu_mc.y = Math.random() * 400;
        addChild(yu_mc);
        yu_mc.name = "yu" + i;
}
ty_btn.addEventListener(MouseEvent.CLICK,ty);
function ty(event:MouseEvent):void
{
        gotoAndPlay(4);
}
var k:uint = 1;
欢迎大家多发帖,参与讨论,增进彼此了解。
 楼主| 清灯竹影 发表于 2014-6-11 10:54:46 | 显示全部楼层
五、在as图层第二帧,插入关键帧,输入下面程序
for (var j=1;j<150;j++){
        getChildByName("yu"+j).x=Math.random()*550;
        getChildByName("yu"+j).y=Math.random()*400;
}
欢迎大家多发帖,参与讨论,增进彼此了解。
 楼主| 清灯竹影 发表于 2014-6-11 10:56:32 | 显示全部楼层
在as图层第三帧输入
gotoAndPlay(2);
欢迎大家多发帖,参与讨论,增进彼此了解。
 楼主| 清灯竹影 发表于 2014-6-11 10:57:10 | 显示全部楼层
在as图层第四帧输入
removeChild(getChildByName("yu"+k));
for (var m=k+1; m<150; m++)
{
        getChildByName("yu" + m).x = Math.random() * 550;
        getChildByName("yu" + m).y = Math.random() * 400;
}
欢迎大家多发帖,参与讨论,增进彼此了解。
 楼主| 清灯竹影 发表于 2014-6-11 10:57:40 | 显示全部楼层
在as图层第五帧输入
k++;
if (k == 150)
{
        stop();
}
else
{
        gotoAndPlay(4);
}
欢迎大家多发帖,参与讨论,增进彼此了解。
您需要登录后才可以回帖 登录 | 立即注册

本版积分规则

推荐阅读更多+
会员达人更多+
广告位

最新信息

更多+

关注我们:教育技术人

官方微信

官方微博

教育技术热线:

13955453231

学教育技术,上教育技术论坛!

教育技术论坛征稿范围:教育技术应用案例、教程文章、优秀作品等。

Email:sf@etthink.com

Copyright   ©2007-2026  应用思考-教育技术论坛  Powered by©Discuz!  技术支持:且行资源    ( 皖ICP备10014945号-4 )