第三話 TQC認證 第三類 基礎ActionScript  檔案下載
EX1.嬰兒手推車
  • 開啟檔案FLD0301.FLA。
  • 將檔案尺寸設為777*120,背景色為#66CCFF,影格速率 20 FPS。
  • 從元件庫拖曳嬰兒手推車影片片段元件,置於場景右方。
  • 並在50.100.150影格上,插入關鍵影格,影格動作 STOP,並在各個關鍵影格中,移動手推車位置。
  • 從元件庫拖曳NEXT與BACK按鈕元件,置於場景中的站牌處。
  • 依序在按鈕元件上增加動作 goto
  • 第一個NEXT按鈕 gotoAndplay(51);
  • 第二個NEXT按鈕 gotoAndplay(101);
  • 第三個BACK按鈕 gotoAndplay(1);
EX2.FASHION COLOR
  • 開啟檔案FLD0302.FLA。
  • 檔案 / 匯入 / 匯入至舞台,找到FLDHAND.png ,修改 / 轉換為元件,影片片段,名稱及實體名稱命名為hand。
  • 點2下hand元件,進入此元件的編輯環境,利用6個影格,製作上下左右晃動的動畫。
  • 視窗 / 其他面板 / 場景SHIFT+F2,新增一場景(7),並命名為 Scene 6,從元件庫將ma2-5拖曳至場景中,對齊左緣。
  • 再利用文字工具,輸入"BACK",字型Arial Black,大小為25,色彩為#FFFFFF,修改 / 轉換為元件,按鈕元件
  • 加上按鈕動作,如下。
    on (release) {
    gotoAndPlay("Scene 1", 1);
    }
  • 並將此按鈕 編輯 / 複製,原地貼上於Scene2~6中。
  • 並將Scene1~6場景加上影格動作 stop();
  • 回到Scene 1場景中,從元件庫中拖曳出color1~5按鈕元件,於按鈕區圖層,放在各個手指上。
  • 個別位color1~5按鈕元件加動作,如下:(不同按鈕前往不同場景)
    on (release) {
    gotoAndPlay("Scene 2", 1);
    }
    on (rollOut) {
    hand.play();
    }
    on (rollOver) {
    hand.stop();
    }

EX3.蝴蝶的一生

  • 開啟檔案FLD0303.FLA。
  • 先將影格速率改為 9 FPS.
  • 在元件庫中,於movie影片片段元件上,右鍵 / 連結,勾選"匯出給ActionScript使用",識別名稱為FLD_MC.
  • 將場景上的4各按鈕,分別設定實體名稱為bt1~bt4.
  • 於as圖層第一個影格,增加影格動作,如下:

    bt1.onRelease=function(){
    duplicateMovieClip("mc","mc1",99)
    }

    bt2.onRelease=function(){
    attachMovie("FLD_MC","movie",1)
    movie._x=150;
    movie._y=210;
    }

    bt3.onRelease=function(){
    loadMovieNum("FLDbutterfly.swf",1);
    }

    bt4.onRelease=function(){
    tqctext.scroll=0;
    loadVariables("FLDbutterfly.txt",_root);
    }
  • 場景中的動態文字旁的往下按鈕之動作:

    on(release){
    tqctxt.scroll+=3;
    }

  • 場景中的動態文字旁的往上按鈕之動作:

    on(release){
    tqctxt.scroll-=3;
    }
EX4.加法練習
  • 開啟檔案FLD0304.FLA。
  • 於Scene 1場景中的AS圖層,加上影格動作stop();。
  • 從元件庫拖曳"計算式"影片片段元件,置於場景中X=280.Y=220,實體名稱為ans。
  • 答案1的按鈕元件動作為:
    on (rollOver) {
    ans.gotoAndStop(2);
    }
    on (rollOut) {
    ans.gotoAndStop(1);
    }
    on(press){
    gotoAndStop("wrong",1)
    }
  • 答案2的按鈕元件動作為:
    on (rollOver) {
    ans.gotoAndStop(3);
    }
    on (rollOut) {
    ans.gotoAndStop(1);
    }
    on(press){
    gotoAndStop("right",1)
    }
  • 答案3的按鈕元件動作為:
    on (rollOver) {
    ans.gotoAndStop(4);
    }
    on (rollOut) {
    ans.gotoAndStop(1);
    }
    on(press){
    gotoAndStop("wrong",1)
    }
  • 場景right結束的按鈕元件動作為:
    on (release) {
    fscommand("quit");
    }
  • 場景wrongt重新作答的按鈕元件動作為:
    on (release) {
    gotoAndPlay("Scene 1", 1);
    }
EX5.滿天氣球飛行飛機
  • 開啟檔案FLD0305.FLA。
  • 飛機影片片段元件的動作:(實體名稱為plane)
    onClipEvent (load) {
    this.swapDepths(4);
    }
  • 氣球影片片段元件的動作:(實體名稱為balloon)
    onClipEvent (load) {
    ff=random(5)+1;
    delta_y=random(10)+1;
    _x=random(550);
    _y=400;
    _alpha=random(51)+50;
    _xscale=random(101)+20;
    _yscale=_xscale;
    this.swapDepths(random(9));
    }

    onClipEvent(enterFrame){
    gotoAndStop(ff);
    _y-=delta_y;
    if(_y<-100){
    _x=random(550);
    _y=400;
    _alpha=random(51)+50;
    _xscale=random(101)+20;
    _yscale=_xscale;
    this.swapDepths(random(9));
    }
    }
  • 於場景中的影格動作,第一個影格的影格動作:
    for(i=1;i<=10;i++){
    balloon.duplicateMovieClip("balloon"+i,i);
    }

  • 進入開關的影片片段元件,第一個影格的按鈕元件動作:
    on (release) {
    _root.plane.stop();
    gotoAndStop(2);
    }

  • 進入開關的影片片段元件,第二個影格的按鈕元件動作:
    on (release) {
    _root.plane.play();
    gotoAndStop(1);
    }
EX6.桌上時鐘
  • 開啟檔案FLD0306.FLA。
  • 先進入時真分針秒針影片片段元件的編輯環境,調整其中心點為下方。
  • 從元件庫個別拖曳影片片段元件,於個別圖層中,置於場景中,對齊中心點。
  • 於秒針影片片段元件,加上動作:
    onClipEvent(enterFrame){
    now=new Date();
    sec=now.getSeconds();
    _rotation=sec*6;
    }

  • 於分針影片片段元件,加上動作:
    onClipEvent(enterFrame){
    now=new Date();
    min=now.getMinutes();
    _rotation=min*6;
    }

  • 於時針影片片段元件,加上動作:
    onClipEvent(enterFrame){
    now=new Date();
    hr=now.getHours();
    min=now.getMinutes();
    _rotation=hr*30+min*0.5;
    }
EX7.汽車展示

  • 先將影格速率改為 9 FPS.
  • 進入場景中汽車影片片段之編輯環境,新增一圖層,將原件庫中的隱形按鈕,拖曳並於汽車置中對齊.
  • 並於第一影格中增加影格動作,flag=1;.
  • 回到場景中,於汽車影片片段上增加動作如下:

    on(release){
    flag ++;
    if(flag%2==0){
    stop();
    }else{
    play();
    }
    }

  • 於元件庫中,點2下"拖曳"影片片段元件,進入編輯環境,於按紐元件上增加動作如下:

    on(press){
    startDrag("",false,0,-100,0,100);
    }
    on(release,releaseOutside){
    stopDrag();
    }

  • 回到場景中,選取大小捲軸上的動態文字,設定實體名稱為:ss .
  • 進入大小捲軸影片片段元件編輯環境,於第一個影格加入影格動作如下:

    y=button._y;
    out=(100-y)/200;
    setProperty(eval("_root.car"),_xscale,out*100);
    setProperty(eval("_root.car"),_yscale,out*100);
    _root.ss=int(out*100)+"%";


    第2個影格加入影格動作:gotoAndPlay(1);
  • 回到場景中,選取旋轉捲軸上的動態文字,設定實體名稱為:angle.
  • 進入旋轉捲軸影片片段元件編輯環境,於第一個影格加入影格動作如下:

    y=button._y;
    out=(100-y)/200;
    setProperty(eval("_root.car"),_rotation,out*360-180);
    _root.angle=int((out*360)-180)+"%";


    第2個影格加入影格動作:gotoAndPlay(1);