Flash 的replay 同 stop應該點寫?????

2011-11-22 8:12 pm
我用Flash CS5.5 Action Script 3.0

1) 重播的BUTTON應該寫什麼SCRIPT???

2)如果只播一次script 不是 stop()嗎???但為什麼沒反應??
因為我的場景有很多layer.....要每一個layer都加action stop 嗎???


很急!!!!!!!!唔該!!!!!!!
更新1:

對!就是有很多layer同時播而只播一次,然後在播完整個flash後可按一個button來重播。 1)是在場景的timeline內新增layer然後按你的方法加入stop(); 嗎?但還是不行喔... 出現--> 1026:constructor functions must be instance methods. 還是在每個movie clip內新增layer然後加入as呢? sorry..我是新手..不太懂AS的結構 2)而button也是在場景的timeline內打as嗎?我想在差不多完即尾10果格出現replay按鈕(但背景仍在動)可以點? thx sooo much!!!

回答 (1)

2011-11-22 9:36 pm
✔ 最佳答案
很久沒用了,希望還能幫到你。

1)你指的重播button是指? 播影片? 還是純粹在你stop後,想讓object重新replay一次?

2)應為stop();
注意一下分號有沒有遺漏掉。

要寫多少個stop(); 要視乎你想用什麼形式來處理那些object。

照你的情況來看,是有很多layer而只播放一次,然後在播放完整個flash後,可以按一個button來重播。

這情況只需放一個stop();在最後就可以了。

通常寫as都會在最頂的一層寫script,而非在不同的layer寫,這容易造成混亂。

在最頂的該層layer中,你只需在第一格和最後一格加入keyframe,然後在最後一格的keyframe中按F9編寫script。

鍵入stop();

這就可以使整個flash在播放一次後停止。
_____________________________________________________________

而另外,如果你的「重播」button是用來在影片完結後再播放一次的話,那就可用以下的方法處理。

首先畫出你button所需的object,然後用F8將其轉換成button,然後命名,不是在轉換成button時的命名,而是在轉換後按一下,屬性中的命名。(注意:要用as控制必需命名)

然後就可以開始寫這button的script,至於應該放置於哪裡,就要視乎你想該button何時可以生效,如果是一直都可以生效,就置於最前的一格,如果是想flash播放一次後,stop了的情況才生效,就把script置於最後的一格。

Script如下,當中My_btn為該button的命名,而mouseDown則為evnet名稱。這個script的效果是,當My_btn被滑鼠按下,則會將flash跳至第一格並播放。

My_btn.addEventListener(MouseEvent.MOUSE_DOWN, mouseDown);

function mouseDown(event:MouseEvent):void {
gotoAndPlay(1);
}
_______________________________________________________________

希望能幫到你的忙,如果我給的答案方向錯了,你可以提出讓我加以修正,但你亦需提供更詳盡的解釋,否則依然有機會答錯你的問題=D

2011-11-23 11:09:27 補充:
我寫了一個例子,可以下載來看看。(我是用CS4,as3,應該能相容)
http://dl.dropbox.com/u/15368661/example.fla

首先,
1026:constructor functions must be instance methods. <-這個問題我還真沒有遇過,上網查了一下好像是與preloader有關,你有沒有加入其他as?如有,嘗試部分減少,找出問題源頭才作調整。

另一點,是在backgrond timeline加as 還是在moive clip中加as,其實是皆可。
但要在timeline控制mc的話,則需為mc命名,然後用其名字來控制。

2011-11-23 11:13:46 補充:
例如:在bg timeline我們會直接寫stop();,如果要控制mc,則寫xx_mc.stop();

其次,btn的script寫在timeline的as,詳情可參考我的例子。

而在最後幾秒出現,我的例子也做了給你看,簡單來說有兩種常用方法,一種是設置alpha值來使其漸現,甚或是在其需出現的frame才加入它的key frame。另外,亦可以visible的方法控制。

xx_btn.visible = true/false (true為出現,false為隱藏,注意的是隱藏了也可以按)


收錄日期: 2021-04-24 23:40:03
原文連結 [永久失效]:
https://hk.answers.yahoo.com/question/index?qid=20111122000051KK00320

檢視 Wayback Machine 備份