第8回 インスタンスのプロパティ(11月13日)

本日の課題

  • インスタンスのプロパティ設定を使ったコンテンツを作成する
  • サンプル:
  • サンプルソースのダウンロード:091113.fla

    インスタンスのプロパティ

    • ムービークリップやボタンのインスタンスはそれぞれプロパティと呼ばれる属性を持っている
    • アクションスクリプトではプロパティの取得と設定ができる
    • プロパティを変更することでインスタンスの表示を自由に操作ができる
    • 例:ボタンクリックでインスタンスを右に回転させる
      rotation_btn.addEventListener(MouseEvent.MOUSE_DOWN, rot_r);
      function rot_r(e:MouseEvent) {
        my_mc.rotation += 45;
      }
    • 例:インスタンスをフレーム毎に右に移動させる
      my_mc.addEventListener(Event.ENTER_FRAME, move_right);
      function move_right(e:Event) {
        my_mc.x += 10;
      }
    • 主なプロパティ
      x, y, width, height, rotation, scaleX, scaleY, alpha

    条件分岐

    • 条件によって実行させたいアクションスクリプトを切り替えたい場合に用いる
    • 例:インスタンスがステージの右端まで移動したら左端に巻き戻す
      my_mc.addEventListener(Event.ENTER_FRAME, move_right);
      function move_right(e:Event) {
        my_mc.x += 10;
        if (my_mc.x > stage.stageWidth) {
          my_mc.x = 0;
        }
      }

    オリジナルプロパティ

    • ムービークリップのインスタンスにはオリジナルのプロパティを追加できる
    • インスタンス毎に番号や属性を持たせることができる
    • 例:インスタンスの移動方向をボタンで切り替える
      my_mc.x_speed = 0;
      my_mc.addEventListener(Event.ENTER_FRAME, move_mymc);
      function move_mymc(e:Event) {
        my_mc.x += my_mc.x_speed;
        if (my_mc.x < 0) {
          my_mc.x = stage.stageWidth;
        }
        if (my_mc.x > stage.stageWidth) {
          my_mc.x = 0;
        }
      }
      
      right_btn.addEventListener(MouseEvent.MOUSE_DOWN, move_r);
      function move_r(e:MouseEvent) {
        my_mc.x_speed = 10;
      }
      
      left_btn.addEventListener(MouseEvent.MOUSE_DOWN, move_l);
      function move_l(e:MouseEvent) {
        my_mc.y_speed = -10;
      }

    評価ポイント

    • プロパティの設定が正しくできているか?(20点)
    • フレーム毎のイベント処理が正しくできているか?(20点)
    • 条件分岐が正しく使えているか?(20点)
    • オリジナルのプロパティを活用できているか?(20点)
    • 効果的なインタラクティブムービーが作成できたか?(20点)

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

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

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