Flash動畫--隨機前往某影格

Actionscript 3.0的相關指令
Math.random()--傳回0至1,包含小數的數值,通常搭配floor()或ceil()取整數
Math.floor()--無條件捨去至整數值
Math.ceil()--無條件進位至整數值
Math.round()--四捨五入至整數值
Math.abs()--絕對值
Math.max()--兩數比較取大值
Math.min()--兩數比較取小值

gotoAndStop(N)--跳至第N個影格,並停止

按下按鈕元件"random_btn"隨機前往1-6影格,取得1至6的一個數值
製作步驟如下:
1.於"圖層1"插入6個空白關鍵影格
2.依序在每一個影格分別輸入數字1至6
3.放入按鈕元件,步驟如下:
  3-1.新增圖層,命名為button
  3-2.視窗>內建元件庫>按鈕>挑選按鈕
  3-3.拖曳該按鈕元件至舞台指定的位置
  3-4.修改按鈕元件的文字(預設為Enter)與大小,步驟如下:
    3-4-1.編輯該按鈕元件(元件庫>選該按鈕>滑鼠右鍵>編輯)
    3-4-2.選取該按鈕元件的text圖層的關鍵影格,自行修改文字內容
    3-4-3.修改按鈕元件尺寸,需針對每個圖層的每個關鍵影格修改(建議不改)
    3-4-4.同上步驟,也可修改其它屬性
4.重新替每一個按鈕元件命名,步驟如下:
  4-1.於舞台選取該按鈕元件
  4-2.修改按鈕元件名稱(屬性>實體名稱)
  4-3.命名為random_btn
5.輸入相關activescript3.0語法,步驟如下:
  5-1.開新圖層,命名為action,將圖層上移至頂層
  5-2.選action圖層,第一個影格(空白關鍵影格)
  5-3.開啟"動作"視窗面板(三種方法:F9快速鍵;視窗>動作;於該影格按滑鼠右鍵,選"動作")
  5-4.輸入指令 stop();
  5-5.複製並貼上下方的相關語法指令:


stop();
random_btn.addEventListener(MouseEvent.CLICK,pressing);
function pressing(Event:MouseEvent) {
gotoAndStop(Math.floor(Math.random()*6)+1);
}


下圖以六張骰子圖取代1-6的數字









2 則留言:

  1. 受益良多 感謝!

    回覆刪除
  2. 请问如果不需要按钮该怎么做?比如我制作了一段影片里面有几个片段是分开的,我想要的是每次打开那个flash,就随机播放其中一段。

    回覆刪除