ActionScriptは、フレームアクションとムービークリップアクション、ボタンアクションの3カ所に記述します。フレームアクションはフレームのキーフレーム上に記述し、キーフレームの位置を再生する前に記述されたActionScriptを実行します。ムービークリップ・ボタンアクションは、ムービークリップ・ボタンのそれぞれのインスタンスにActionScriptを記述し、そのインスタンスで発生するイベントに応じて実行します。
.フレームアクション

ムービークリップアクション

ボタンアクション

簡単にActionScriptを確認する場合は、フレームアクションを使います。この章でも、しばらくはフレームアクションを使って、ActionScriptの解説をします。適当な位置に、キーフレームを追加して下さい。タイムラインを選択した状態で、右クリック(MacではCommand+クリック)し、コンテキストメニューから【】を選択します。キーフレームを追加した後、メニューの【ウィンドウ/アクション】を選択すると、ActionScriptを記述するためのスクリプトウィンドウが表示されます。
.キーフレームの追加

アクションウィンドウの表示

ActionScriptには2種類の記述方法が用意され、ノーマルモードとエキスパートモードがあります。ノーマルモードは、左のツリーから使用するアクションを選択し、設定項目を埋めてActionScriptを記述するスタイルで、エキスパートモードは、テキストエディタと同じように直接ActionScriptを入力するスタイルです。本書では、エキスパートモードで説明します。モードを切り替えるには、右上にある矢印をクリックします。メニューが表示されるので、ここでエキスパートモードに変更します。
スクリプトウィンドウに下の文を打ってください。
| trace( "Hello"); |
ActionScriptの動作を確認するためにメニューの【制御/ムービーのプレビュー】を選択し、ムービープレビューをします。ActionScriptを入力するだけでは動かないので、ムービープレビューは必ず使用します。プレビューすると再生位置が設定したキーフレームの位置にくると、出力ウィンドウが開いてHelloと表示します。また、ムービーは繰り返し再生されるので、キーフレームの位置に来るたびにHelloと表示します。
実行後の出力ウィンドウ

○ActionScriptの文法
先ほどのムービーを次に下のように書き換えて下さい。
| trace "Hello" |
Helloが表示されず、エラーがあるため出力ウィンドウに表示されます。
図12.出力ウィンドウにエラー表示
このように、ActionScriptには決まった書き方があり、これを文法と呼びます。文法に沿っていない書き方をするとプレビュー前にエラーを表示します。エラーの出たムービーは正常に再生できないので、すぐに閉じて下さい。
本題に戻って、アクションウィンドウに記述したActionScriptを見て下さい。ここで使用している trace() をtrace関数と呼びます。関数とはある特定の機能を持っているもので、trace()は出力ウィンドウに表示するための関数です。また、trace()関数は、引数として "Hello" を受け取っています。引数とは、関数に与えるスイッチのようなものでこれによって関数の動作を変化させることができます。()内に記述された内容が引数として関数に渡されます。
|
trace( "Good bye"); |
と書き換えれば、Helloの変わりに Good bye が表示されるようになります。
ここで、表示したい文字を ""でくくっていますが、これはActionScriptでは文字列のデータを意味します。 データについては後で説明します。
図13.関数の作り

最後の ; は文の終わりを意味します。文とは、ActionScriptの動作の最小単位で、これでひとつの動作を表します。同じ行に続けて文を書く場合には、文の区切りをつけるために、; をつけます。
例
| trace( "Hello" ); trace( "Hello" ); trace( "Hello" ); |
また、スペースやタブ、改行は、文の構成を崩さない部分であればいくつらでも挿入することができます。適度に挿入して見やすくできます。
例
| trace ("Hello"); trace( "Hello" ); trace ( "Hello" ) ; |
ActionScript内でコメントを残すことができます。コメントにされた部分は、ActionScriptと評価せず実行に影響を与えません。コメントの記述方法には2種類あり、行単位とブロック単位に分けられます。
// : //以降から改行までの内容をコメントとします。
/* ... */ : この範囲内に含まれる内容をすべてコメントとします。
例
|
// コメントです。 /* |