Flash as教程:文字散射效果
第一部分:同一坐標(biāo)點(diǎn)散射,類似煙花效果
目標(biāo):大量文字從一個(gè)原點(diǎn)向四周散射
“大量”———————很顯然,要用到duplicatemovieclip或者attachmovie,這里我選擇attachmovie,至于
什么原因,以下我將闡述。
“散射”——————x,y偏移,結(jié)合Math.random()就是隨機(jī)偏移.隨機(jī)數(shù)的取值要有正且有負(fù),因?yàn)樯⑸涫撬拿姘朔降腦,Y偏移。
“一個(gè)原點(diǎn)”————這個(gè)效果的原理理解關(guān)鍵點(diǎn)就在這里,一個(gè)原點(diǎn),換句話說(shuō)就是將復(fù)制出來(lái)的MC坐標(biāo)歸于一個(gè)位置,這樣任意一個(gè)x,y偏移值,播放起來(lái)就是一個(gè)散射,他不同于那種“不同坐標(biāo)點(diǎn)散射”,即如果你把復(fù)制出來(lái)的坐標(biāo)值隨機(jī)設(shè)定,加上一個(gè)單純的x,y偏移,MC會(huì)到處亂飛,畫面會(huì)毫無(wú)規(guī)律。這一點(diǎn)一定要理解。
實(shí)現(xiàn)步驟:
1,隨便做個(gè)帶文字的MC,在庫(kù)中l(wèi)inkage名為mymc
2,舞臺(tái)時(shí)間軸代碼:
LEFT = 0;
TOP = 0;
RIGHT = Stage.width;
BOTTOM = Stage.height;
maxspeed=25
maxmc=100
minmc=20
function randrange(min,max){
var randomnum=Math.floor(Math.random()*(max-min 1)) min
return randomnum
}//自定義函數(shù),取兩數(shù)之間的隨機(jī)數(shù)
mcnum=randrange(minmc,maxmc)
trace(mcnum)//測(cè)試用
for(i=0;i<=mcnum;i ){
dupmc=attachMovie("mymc","mymc" i,10 i)
trace(dupmc)//測(cè)試用
dupmc._x=200
dupmc._y=200//設(shè)定同一個(gè)坐標(biāo)位置
dupmc._xscale=dupmc._yscale=randrange(0,100)
dupmc.speedx=randrange(-maxspeed,maxspeed)
dupmc.speedy=randrange(-maxspeed,maxspeed)//每一個(gè)復(fù)制出來(lái)的MC都會(huì)有一個(gè)隨機(jī)x,y偏移(從自己的負(fù)值到自身值,保證了坐標(biāo)既有正也有負(fù))
dupmc.onEnterFrame=function(){
this._x =this.speedx
this._y =this.speedy
if (this._x < LEFT || this._x > RIGHT || this._y < TOP || this._y > BOTTOM) {
this.removeMovieClip();
}//end if
}
}
ok,代碼結(jié)束,以下我談?wù)勎覟槭裁床挥胐uplicatemovieclip而用attachmovie
我們都知道把duplicatemovieclip或attachmovie前面加一個(gè)變量,很方便調(diào)整MC屬性,書寫也簡(jiǎn)單,但實(shí)
現(xiàn)方式有兩種。
起初我是用duplicatemovieclip,前面設(shè)定了一個(gè)變量,即:
dupmc=duplicatemovieclip("mymc","mymc" i,10 i)
trace(dupmc)//測(cè)試用
輸出undefined,而換成attachmovie就能正常輸出了
所以我選擇了attachmovie,但說(shuō)實(shí)在話,attachmovie也不是什么好鳥,MC一大,就會(huì)延遲進(jìn)度,所以這是個(gè)問(wèn)題,歡迎共同探討,我就來(lái)拋磚引玉。
相關(guān)文章

flash cs6鼠標(biāo)跟隨效果實(shí)現(xiàn)代碼分享
flash cs6想要實(shí)現(xiàn)鼠標(biāo)跟隨效果?該怎么制作呢?今天我們就來(lái)看看使用as2.0實(shí)現(xiàn)鼠標(biāo)跟隨效果的教程,需要的朋友可以參考下2019-05-19
Flash cs6怎么使用代碼輸入中英文文本?Flash cs6中可以使用文字工具直接輸入文本,也可以使用代碼來(lái)輸入文本,該怎么使用代碼輸入文本呢?請(qǐng)看下文詳細(xì)的教程,需要的朋友2018-03-11
flash as3.0抽象類怎么定義? as3.0中有很多抽象類,該怎么定義抽象類和抽象方法呢?下面我們就來(lái)看看簡(jiǎn)單的例子,需要的朋友可以參考下http://www.fzitv.net/softs/408402.2018-02-28
flash cs6中怎么使用ActionScript3.0?
flash cs6中怎么使用ActionScript3.0?flash cs6中想要使用ActionScript3.0功能,該怎么使用呢?下面我們就來(lái)看看詳細(xì)的教程,需要的朋友可以參考下2018-01-25
Flash中怎么實(shí)現(xiàn)鼠標(biāo)點(diǎn)擊決定圖像位置?
本教程給大家分享一個(gè)Flash小教程,教大家在Flash CS6中怎么實(shí)現(xiàn)鼠標(biāo)點(diǎn)擊決定圖像位置?方法很簡(jiǎn)單,感興趣的朋友歡迎前來(lái)一起分享學(xué)習(xí)2018-01-12
Flash中如何用代碼將圖片放在自己想要的舞臺(tái)位置?
本教程教腳本之家的ActionScript教程學(xué)習(xí)者在Flash中如何用代碼將圖片放在自己想要的舞臺(tái)位置,教程講解的詳細(xì),感興趣的朋友歡迎前來(lái)分享學(xué)習(xí)2017-11-20
在Flash CS6中使用with函數(shù)繪制背景圖教程
本教程教腳本之家的ActionScript教程學(xué)習(xí)者如何在Flash CS6中使用with函數(shù)繪制背景圖?教程一步步講解的挺詳細(xì),方法也不難,非常適合Flash新手入門學(xué)習(xí)2017-11-18
Flash怎么設(shè)置元件坐標(biāo)?flash使用代碼設(shè)置元件的坐標(biāo)的教程
Flash怎么設(shè)置元件坐標(biāo)?flash中導(dǎo)如的元件需要添加坐標(biāo),該怎么定位元件坐標(biāo)呢?下面我們就來(lái)看看flash使用代碼設(shè)置元件的坐標(biāo)的教程,需要的朋友可以參考下2017-10-11
Flash怎么制作來(lái)回?fù)u擺的花朵的動(dòng)畫?
Flash怎么制作來(lái)回?fù)u擺的花朵的動(dòng)畫?Flash中想要給花朵制作一段搖擺的動(dòng)畫效果,該怎么制作呢?下面我們就來(lái)看看詳細(xì)的教程,很簡(jiǎn)單,需要的朋友可以參考下2017-05-23
Flash怎么制作流動(dòng)七彩色的文字?想要讓文字動(dòng)起來(lái),該怎么使用flash給文字制作一個(gè)流動(dòng)七彩色的動(dòng)畫呢?下面我們就來(lái)看看詳細(xì)的教程,需要的朋友可以參考下2017-04-23











