29
2015
09

钟摆动画

问题来源:http://tieba.baidu.com/p/4071399378

问题描述:按照网上的说法,先做一个元件,把中心点拉到最上面。第一针和最后一针分别把元件做成钟摆摆动的效果。建立传统补间动画,但是原件只会移动不会旋转。就是说原件像钟摆那样从最低点运动到最高点但是元件本身不会进行旋转。后来建立补间运动在动画编辑器里制作才可以达到我想要的效果。是不是传统补间无法达到既运动同时原件又旋转的效果。
谢谢大神们的指导

24
2015
03

(十七)编程工具

工欲善其事,必先利其器。

在真正开始写大量代码之前,选择一个好的工具是很有必要的。

as代码编辑工具,用的最多的就是 FlashDevelop和Flash Builder了。

24
2015
03

(十六)自定义类

其实前边的3种都叫自定义类。

这次的例子,主要是看一下自定义类怎么用,有什么好处。

建议下载源码对应来看。

先看一下最终效果:

24
2015
03

(十五)类

前边认识了文档类和链接类。其实as里边一个类就是一个as文件。有的链接到fla文档,有的链接到元件,当然也可以什么都不链接。

前面我们都是点击flash软件里边的编辑,然后软件为我们创建好了一个类。什么都不链接的类怎么创建呢?

当然可以复制一个as文件,然后改改,变成一个新的类。安装了软件,右键,新建里边应该有“Flash ActionScript 文件”选项,创建出来就是一个as文件(打开文件,你会发现里边什么都没有)。或者在flash软件里边,点击“文件”->“新建”->"ActionScript3.0 类"。或者直接新建一个文本文档,把后缀名改成“.as”。

我的例子:

24
2015
03

(十四)链接类

前边认识了文档类,一个fla只能对应一个文档类。

再来看一下另一种类,我暂且叫它“链接类”,因为这种类是链接到库中的元件的。

24
2015
03

(十三)文档类

前面一直在帧上写代码,其实主要是为了不用考虑import。

现在来试着认识一下文档类。点击舞台上的空白区域,在属性面板里,有一个“类”,这个就是文档类了。

flash里边一般情况下是一个类对应一个as文件(不要较真),比如我们前面经常用到的MovieClip,这里的文档类我们写的是Main(注意不是Main.as),对应的是Main.as,Main.as其实就是一个文本文档。

填写好文档类之后,点击右边的编辑按钮,就会自动创建一个as文档,然后直接保存。默认应该是保存在和fla文件相同的目录下的。

30
2015
01

(十二)倒计时

计时是游戏中经常用到的功能,尤其是倒计时。实际上计时器、倒计时原理都是一样的。

这里我们介绍两种计时方式,基于enterFrame的和基于setTimeout的。

1、先看基于enterFrame的倒计时。

enterFrame事件应该已经比较熟悉了,flash默认的帧频是24,也就是播放每一帧的时间是1/24秒,大约是40毫秒。当然我们能够改成自己认为合适的帧频。如果使用24帧,我们要实现按秒倒计时的话,只需要每24帧减1秒就可以了。

先看效果:

30
2015
01

(十一)第一个小游戏

好多人都是上来就做游戏的,我也是,flash还一点都不会,就想着做一个游戏,然后一边碰壁一边学,最后第一个游戏还是夭折了。记得有一本书写的很好,好像叫《第二游戏说》,所以第一个游戏失败的话是很正常的,不要不肯放手。第一个游戏的作用不是做出来炫耀,而是带我们入门,让我们兴趣盎然的去了解一个工具,让我们知道为了做出一个游戏,我们还需要学习哪些东西。

经过前面的积淀,总算可以做游戏了,但是也不能好高骛远,做个超级玛丽、坦克大战的话还是算了。我们的第一个游戏很简单,点击舞台十次。效果如下:

30
2015
01

(十)代码实现动画

动画,无非就是定时改变显示的内容。flash里边的动画是基于帧的。帧频就是每一秒播放多少帧,1/帧频 就是播放一帧对应的时间。

将帧频理解为“每秒播放多少帧”不如理解为“flash的刷新频率”更合适,因为,如果我们在某一帧写上stop(),虽然不会再向下播放,但是播放的swf动画依然在不停的刷新。

每次刷新时,flash都会为我们发送一个事件enterFrame,同样,打开帮助,从MovieCLip的事件里边找到enterFrame

30
2015
01

(九)事件

用代码实现动画,或是与用户的互动,就必然要用到事件,而事件又不是很好理解,所以有必要单独拿出来说一下下。

事件,可以理解为消息。任何一个消息都有源头,我们暂时不需要知道,我们只需要知道,在as3中都有哪些消息,我们如何获得这些消息,获得之后又能做什么。