邮件订阅
5ucms仿站,FLASH文字特效六合一
作者: 来源: 日期:2017/1/14 20:04:50 浏览量:31(滞后) 人气:LOADING...(实时) 【

5ucms仿站,FLASH文字特效六合一
我们平时在flash中见到的文字特效都是一种效果,本实例将告诉您如何将同一段文字在一个动画中实现六中不同的效果,通过简单的代码控制即可实现,下面我们就来一起学习:)

我们的制作思路是:将不同效果的as控制代码放到不同的mc中,然后通过对mc的调用,从而实现了对文字特效的控制。

特效控制mc的制作:

特效1:

1. 首先建立一个movie clip,命名为appear,进入mc的编辑区后`,给图层layer1的第1桢加as:

this._alpha = 0;

var act;

stop();

//初始化,设置文本开始为不可见

2. 在第2桢插入一个关键桢,然后用文本工具画一个文本框,并在properties面板中设置此文本框为dynamic text动态文本框,并给文本框设置变量名text,如图1所示:




图1

3.然后在第三桢插入一个关键桢,加如下as:

if (this._alpha<100) {

this._alpha = this._alpha+4;

gotoAndPlay (2);

} else {

this._alpha = 100;

stop ();

}

//通过对文本_alpha透明度属性的控制,实现文字渐显的效果,3. 最后的时间线如图2所示:




图2

下面按照特效1完全一样的方法,制作其余5个特效控制mc,唯一一点不同的是每个mc的第3关键桢的控制代码不同,分别如下所示:

特效2(mc falldown)

if (this._alpha<100) {

this._alpha = this._alpha+5;

this._y = this._y+2;

gotoAndPlay (2);

} else {

this._alpha = 100;

stop ();

}

//在特效1----文字渐显效果的基础上,通过控制文本的_y属性实现文字的下坠效果
特效3(mc random x&y)

a=this._x;

b=this._y;

if (Number(a)!=_root.rancon:x[i] or Number(b)!=_root.rancon:y[i]) {

this._x=this._x+(_root.rancon:x[i]-Number(a))/15;

this._y=this._y+(_root.rancon:y[i]-Number(b))/15;

//read the origan values in the rancon mc and set step number!

chax=Math.abs(this._x-_root.rancon:x[i])

chay=Math.abs(this._y-_root.rancon:y[i])

if(Number(chax)<1 && Number(chay)<1){

this._x=_root.rancon:x[i];

this._y=_root.rancon:y[i];

}

this._alpha = this._alpha+5;

gotoAndPlay (2);

} else {

this._alpha = 100;

stop ();

}

//通过利用random()随机函数控制字母的_y和_x属性,来达到字母随机出现在舞台上,//并渐显的效果
特效4(mc x && y)

if (this._alpha<100) {

this._alpha = this._alpha+5;

this._y = this._y+2;

this._x= this._x+2;

gotoAndPlay (2);

} else {

this._alpha = 100;

stop ();

}

//通过控制字母的_x和_y属性,实现文本从舞台四周向中间靠拢的效果

特效5(mc xscale)

if (this._alpha<100) {

this._alpha = this._alpha+5;

this._x = this._x+5;

this._xscale = this._xscale-100;

gotoAndPlay (2);

} else {

this._alpha = 100;

stop ();

}

//通过控制字母的_xscale属性,实现字母横向伸缩并渐显的效果
特效6(mc yscale)

if (this._alpha<100) {

this._alpha = this._alpha+5;

this._y = this._y+3;

this._yscale = this._yscale-50;

gotoAndPlay (2);

} else {

this._alpha = 100;

stop ();

}

//通过控制字母的_yscale属性,实现字母纵向伸缩并渐显的效果

到此,六种文字特效的控制代码就写好了,下面还需要编写对mc控制代码进行控制的mc,听起来蛮复杂的,其实很简单的,请跟我来。总体控制mc的制作:

新建一个movie clip组件,命名为con,插入三个关键桢,在第1桢添加如下as:

i=1;j=1;m=50;n=1;

var b =new Array();//ready for random

textnumber=length(_root:text);//read the length of text

for(i;i<=textnumber;i++){

duplicateMovieClip("/text", "text" add i, i);

set ("/text" add i add "/:text", _root:text.charAt(i, 1));//write a value from text to the duplicate mc

_root["text" add i]._x=30+n*9;//set the char''s _x

_root["text" add i]._y=m;// set the lines

if(i%45!=0){

n++;

}else{

m=m+30; //change the number of lines

n=1;

}

}

for (j;j<=textnumber;j++) {

a=1+random(textnumber);

if (Number(eval("/text" add a add "/:act"))==0) {

b[j]=a;//thank for janlay to make me understand how to range random number

set("/text" add a add "/:act",1);//to diffrent the true or false.

}else{

j--;//It''s important.Don''t forget it,or you will lost some mc.

}

}

//利用数组,对舞台上的文本框中的单个字母进行存取,并加以控制,结合各个不同特效的控制代码,从而实现了不同效果的实现。
再第2关键桢加入如下as:

_root["text" add b[j]].play();

在第3关键桢加如下as:

j--;

if(Number(j)>=0){

gotoAndPlay (2);

}else{

stop();

}

//判断文本是否已经都处理完

好了,游戏的所有控制部分都做好了,剩下的任务就是把它们组织到一起,布置主场景了。

布置主场景:

回到主场景中,分别在图层layer1的1,3,5,7,9,11桢插入6个关键桢,每个关键桢的内容基本上也是相同的,首先以第1关键桢为例说明。

首先我们制作一个简单的按钮,用来选择不同的特效,然后依此排列6个在舞台的中间,如图3所示:


給第1个按钮加as:

on (release) {

gotoAndStop (1);

}

給第2个按钮加as:

on (release) {

gotoAndStop (2);

}

給第3个按钮加as:

on (release) {

gotoAndStop (3);

}

給第4个按钮加as:

on (release) {

gotoAndStop (4);

}

給第5个按钮加as:

on (release) {

gotoAndStop (5);

}

給第6个按钮加as:

on (release) {

gotoAndStop (6);

}
//上面的代码作用都一样,都是跳到有某种文字特效控制mc的那桢,以便mc对文字

//进行控制

最后給第一桢加as: stop();

然后需要设置我们的主角,表演特效的文本,用文本工具在舞台的上方写一些文字,内容可以任意,注意,不要写在舞台上哦,一定要写在舞台的上方,如图4所示:




图4

然后就要设置控制特效的mc了,将mc con拖到场景中,在properties面板中取名为con,这个控制mc是每一祯都需要的,因为它的作用是控制动画总体,然后每一桢再放入分别控制不同特效的控制mc,都在properties面板中取名为text,将mc appear放到第1桢,将mc falldown放到第3桢,将mc random x&y放到第5桢,将mc x && y放到第7桢,将mc xscale放到第9桢,将mc yscale放到第11桢,最后,给每一个关键祯加上as:stop(),即可。

到此为止,整个动画就完成了,您也可以将自己的特效做成单独的控制mc,然后运用到主场景中,这样,您的特效就越来越多,这也可以成为积累文字特效的一种方法。



选择5ucms.org 选择未来

本站推荐: 5ucms模板下载 5ucms插件下载 仿站联系Q3876307       [复制给好友] [打印] [关闭] [返回] [顶部]
上一篇:5ucms帮助用FlashMX模拟舞台五彩灯
下一篇:5ucms培训,用FLASH制作抢手棋
本站声明:本网站所载文章等内容,目的在于传递更多信息,并不代表本网赞同其观点和对其真实性负责。如涉及作品内容、版权及其它问题,请在30日内与本网联系(Email:3876307#qq.com),我们将在第一时间删除内容。若原创内容转载请注明出处。
5ucms仿站,FLASH文字特效六合一的关键词:
评论信息
相关分类
本周热门
本月热门
关于我们 - 版权/免责 申明 - 建站服务 - 网站地图 - 稿件投递 - 联系我们 - 5ucms
Copyright © 2008-2015 www.5ucms.org