それでは、実際にparaflaでASを使う方法に進む。
paraflaで扱うASには、フレームアクション ボタンアクション クリップアクションの3種類がある。
まずは、基本中の基本であるフレームアクションについて解説する。
変数の操作や分岐などの処理を、ごくごく普通に、「アクション:スクリプト」に入力するのが、フレームアクションである。
アクションイベントの中に<スクリプト>がある
[スクリプトを編集]ボタンを押すとスクリプトを書くウィンドウが開くので、書いたら閉じる。
「コメント」欄は使われないので、自分でわかりやすいように名前をつけておく。
以上で終了。このアクションが実行される時に、スクリプトの内容が実行される。
アクションイベントとノリは全く同じである。
さて、ここで一つ命令を紹介する。
gotoAndPlay
指定のフレームへジャンプする命令使い方: gotoAndPlay(数 または 文字列);
説明:
gotoAndPlayは、「アクション:ラベルへジャンプ」と「アクション:フレームジャンプ」の両方の機能を持つジャンプ命令である。
()の中が数字であれば、そのフレームへジャンプする。
()の中が文字列であれば、そのラベルへジャンプする。ラベル名は全角文字が使われていない事が望ましい。
例:
gotoAndPlay(1); // 1フレーム目、つまり先頭へジャンプする gotoAndPlay("start"); // 「start」というラベルへジャンプする
スクリプトの中でジャンプをしたい場合にはこの命令を使う。
この命令が使えれば、変数の操作・分岐・ジャンプの3つにより、最低限の条件判定は出来るようになる。
なお、こういった命令の名前も大文字小文字を区別しないので、gotoandplayでもGOTOANDPLAYでも好きなように書いて構わないが、やはりお手本通りに書く事を推奨する。
では、ここまでに覚えた事を使って、「ボタンを押すと大吉・吉・凶のどれかが表示される」という、おみくじflashを作る。
基本的な事は以下である。
・「押せ」というテキストを表示し、ボタン待ちをする。
・1〜3の範囲の乱数を出し、結果として覚える。
・結果が1の時は大吉と表示するためのラベルへジャンプする。
・2と3の時も同様にジャンプする。
・最後にボタン待ちをしてから、最初に戻る。
ボタン待ちとは、ボタンを表示し、それが押されるまでそこで停止する事。
面倒なので表示は全てテキストにする。
左ペインに、以下の内容のテキストを作成する。
・「押せ」
・「大吉!」
・「吉!」
・「凶!?」
イベントを作っていく。
・ラベル「開始」
・テキスト「押せ」を表示(位置=0)
ボタンにする:アクション:ラベルへジャンプ「_NextLabel」
・アクション:停止
・ラベル
・アクション:スクリプト「乱数で結果を出す」
・アクション:スクリプト「結果を調べてジャンプする」
kekka = int(Math.random()*3)+1;
・アクション:停止 ←完全に分割された(連続しないはずの)処理の境目には、必ず「停止」を置く
if (kekka == 1) { gotoAndPlay("daikiti"); } if (kekka == 2) { gotoAndPlay("kiti"); } if (kekka == 3) { gotoAndPlay("kyou"); } // switchを使う場合 switch (kekka) { case 1: gotoAndPlay("daikiti"); break; case 2: gotoAndPlay("kiti"); break; case 3: gotoAndPlay("kyou"); break; }
・ラベル「daikiti」
・テキスト「大吉!」を表示(位置=0)
ボタンにする:アクション:ラベルへジャンプ「開始」
・アクション:停止
・ラベル「kiti」
・テキスト「吉!」を表示(位置=0)
ボタンにする:アクション:ラベルへジャンプ「開始」
・アクション:停止
・ラベル「kyou」
・テキスト「凶!?」を表示(位置=0)
ボタンにする:アクション:ラベルへジャンプ「開始」
・アクション:停止
ここまでの講義で、これは全て、どこで何をやっているのか理解出来る筈である。
わからない部分があった場合は、戻って復習。
正しく動くflashが作成出来たら、ここまでは合格である。
次は、休憩がてら簡単な話をしよう。