袁幼阶靠谱作文网

 找回密码
 立即注册
搜索
热搜: 活动 交友 discuz
查看: 14936|回复: 0
打印 上一主题 下一主题

大家要学FLASH动画编程吗?跟我来-平面设计唐勇抛砖帖4

[复制链接]

36

主题

0

好友

387

积分

管理员

Rank: 9Rank: 9Rank: 9

跳转到指定楼层
楼主
发表于 2012-11-1 15:35:20 |只看该作者 |倒序浏览
排版不太方便。。我还是纯文字吧。。

首先呢,我们新建一个flash文件,名字就叫"下落的方块.fla".绑定一个类:StageBox  ,然后,新建一个StageBox 的类。    (什么。。。什么叫绑定类?不懂?百度。。。。)

好吧,我说说,绑定类,就是说。。flash整个动画是一个大对象。这个对象,就必须是一个类的实例。所以我们要写这个类,作为整个动画的顶层类。

(如果关于类和实例之间的关系不明白,请自学JAVA面向对象编程思想。)

然后在舞台上画个方块,啥颜色,你喜欢就行,把它变成元件。。名字吗,就起个box.再给box绑定一个类叫Box.(在新建的时候就可以绑好。不懂操作打我电话。。。1588888888)

这个Box类就是StageBox的子类了。。父类跟子类就像像洋葱一样层层包含的关系。。你懂的。再多说一句:StageBox就是整个动画,Box就是那个方块。

我们先从方块Box开始写代码:

那么我们先构思一下。。。box它一出来在什么地方?即然是上面落下,肯定是在上方,那水平位置肯定是随机,而且一出现,肯定是往下掉。

那么, 我们在构造函数里,先初始化它的位置:this.x=Math.random()*500;(水平位置随机), this.y=0,(在最上面)。
那么位置定好了,怎么让它下落呢。。我们可以用一个循环事件的侦听器,让它纵坐标不停的加:addEventListener(Event.ENTER_FRAME,movebox);

好,这是第一个关键:侦听器。我来解释一下。侦听器是JAVA语方一个特有的工具。你可以把它当作一个函数。这个东西,就像你给一个电影剪辑添加一个监控。它能随时监控到它相关的事件。并且在发生某些特殊事件时,触发一个动作。这个动作就是一个带Event类型参数的一系列指令。利Event类型参数的各种属性,可以得知到所侦听事件的各种详情。你可以利用Event事件来判断决定触发事件的时间点,这个可以在后面的方法里实现。

我们所添加的这个事件侦听器,是一个播放侦听器,它监控帧的播放状态,如果不使用IF判断函数,那么,那在每播放一侦,它都会触发方法里的动作。下面我们看方法所写的代码:

public function moveBox(event:Event){
  
   this.y+=5;//纵坐标第侦向下移动5个像素
   if (this.y>300){
    removeEventListener(Event.ENTER_FRAME,moveBox); //当坐票大于300时,删除侦听器。。就是说不用侦听了
                MovieClip(parent).removeBox(this); //把自己也给删掉
                parent.removeChild(this);//此时父类实例,要删掉一个节点。因为自己不在了,节点也要删,不然占个位置,浪费。
    }
好了,这个Box类的代码就是这些。






   
回复

使用道具 举报

您需要登录后才可以回帖 登录 | 立即注册

Archiver|手机版|袁幼阶靠谱作文网

GMT+8, 2024-11-23 19:35 , Processed in 0.156343 second(s), 23 queries .

Powered by Discuz! X2.5

© 2001-2012 Comsenz Inc.

回顶部