第6回 アクションスクリプト基礎(10月30日)

本日の課題

  • アクションスクリプトを使ったインタラクティブコンテンツを作成する
  • サンプル:
  • サンプルソースのダウンロード:091030.fla

アクションスクリプト(Action Script)とは

  • Flashに搭載されているプログラム言語のこと
  • 文法はJavaScriptに近い
  • play, stop, gotoAndPlay などの簡単な命令でタイムラインをコントロールできる
  • アクションスクリプトにもバージョンがありFlash CS3にはver3.0が実装されている
  • この授業ではアクションスクリプト3.0を使用する
  • 新規ファイル作成時は「Flash ファイル (AS 3.0)」を選択する
  • アクションスクリプトの動きはムービープレビューで確認する

フレームアクション

  • フレームに記述されたアクションスクリプトのこと
  • キーフレームにのみ記述できる
  • そのフレームが再生される前に自動的に実行される
  • 特定のフレームでタイムラインを停止させたい場合やフレームに配置されているボタンのアクションを設定する場合などに使う
  • どのレイヤーのキーフレームにも記述できるが、専用のレイヤーを使う方が視覚的にわかりやすい
  • 例:ムービーを停止させるアクション
    this.stop();

イベント

  • ボタンがクリックされた時にアクションを実行させるにはボタンのインスタンスがマウスのイベントを処理できるように設定する必要がある
  • アクションでタイムライン上のボタンを指定するにはインスタンスに名前を付けておく必要がある
  • インスタンス名は必ず半角英数で設定し名前の後ろは「_btn」を付ける(例:next_btn)
  • イベントを処理する際のアクションは関数(function)にまとめておく
  • 例えばnext_btnというインスタンス名のボタンをクリックしたときにムービーを再生するアクションは次のようになる
    next_btn.addEventListener(MouseEvent.MOUSE_UP, go_next);
    function go_next(e:MouseEvent) {
      this.play();
    }
    ※go_nextは任意の関数名

ラベル

  • gotoAndPlay()で再生フレームを移動させる場合、数値での指定ではフレームの挿入や削除の度に数値を変更する必要がある
  • フレームにラベル(名前)を付けて指定すればフレーム数が変化してもアクションを変更する必要がない
  • どのレイヤーのキーフレームにも設定できるが、専用のレイヤーを使う方が視覚的にわかりやすい
  • 例えばmenu_btnというインスタンス名のボタンをクリックしたときにmenuというラベルのフレームを再生するアクションは次のようになる:
    menu_btn.addEventListener(MouseEvent.MOUSE_UP, go_menu);
    function go_menu(e:MouseEvent) {
      this.gotoAndPlay("menu");
    }

評価ポイント

  • アクションが正しく場所に設定できているか?(20点)
  • インスタンス名が正しく設定できているか?(20点)
  • ボタンのアクションが正しく設定できているか?(20点)
  • フレームの移動が正しくできているか?(20点)
  • 効果的なインタラクティブムービーが作成できたか?(20点)

必ずFlashファイル(*.fla)を提出する

ファイル名に全角文字や記号を使わないこと

提出期限は授業日の翌週の火曜日の午後9時まで