Flash アクション・スクリプト講座 〜その1〜

【【ボタンを押すと…アニメが始まる】】

0、「ActionScript2.0」で新規作成する。
(ActionScript2.0でないと、ボタンにスクリプトを記入できないのだ)

1、<ボタンを作る>

「メニュー」→「挿入」→「グラフィックシンボル」を作る。

「グラフィックシンボル」として楕円など適当な図形を描き、上に「ボタン」と文字書きする。
 →ライブラリに保存される。

「メニュー」→「挿入」→「ボタンシンボル」を作る。
ボタンシンボルの「アップ」画面に、ライブラリから「ボタン」のグラフィックを配置。

<ボタン作成の詳細解説>

ボタンシンボルでは「アップ」が(画面に表示されるボタン画像)、
「オーバー」が(カーソルが乗った時のボタン画像)、
「ダウン」が(カーソルでボタンをクリックした時のボタン画像)のこと。

ボタンシンボルの「アップ」画面に、ライブラリから「ボタン」のグラフィックを配置。

ボタンシンボルの「オーバー」画面で、「メニュー」→「挿入」→「タイムライン」→「キーフレーム」とするとアップの画面がそのままペーストされる。
「オーバー」画面上のボタンを指定し(クリックすると青いフレームで指定される)、
「プロパティ(ライブラリなどと同様、タブ表示がある)」で「カラー効果」を操作するなどして、
カーソルが乗ったときのボタンの変化を作る。
(これらに音声を付けることもできる)

ボタンシンボルの「ダウン」画面で、
「メニュー」→「挿入」→「タイムライン」→「キーフレーム」とすると
オーバーの画面がそのままペーストされる。
「オーバー」画面上のボタンを指定し矢印キーを使って、右へいくつか、下へいくつか移動させる。
(押されて右下へ沈む感じが表現できる)

またオーバー画面と同様「ダウン」画面上のボタンを指定し、
「プロパティ」タブで「カラー効果」を操作するなどして、
クリックしたときのボタンの変化を作っても良い。
(これらに音声を付けることもできる:カチッ!とか:)


2、<動く素材のセット>

四角などの図形をグラフィックで用意する。

タイムラインに「動く素材」として準備したグラフィックを配置し、アニメーションを作成する。
このレイヤー名を「アニメーション」と名付ける。


3、<シーンのセットとスクリプトの記入>

別レイヤーを用意し(自動的にアニメの時間帯同様にフレームができる)、
ボタンを配置する。このレイヤーに「ボタン」と記名する。

止めたい場所(ここでは第1コマ目)のボタンレイヤーの画面上のボタン自体を指定した状態で、
右クリックでメニューを出し「アクション」を選択→アクションスクリプト記入欄を出す。
ここに「(カーソルを)プレス(クリック)したとき、2番のコマへ進む」という意味の、
以下の文字列を記入する。

別の数字のコマで止まる場合は、文字列のカッコ内の数値はそのコマ番号の次の番号を記入する。
___________________

on (press) {
gotoAndPlay(2);
}

___________________
(このアクションスクリプトは「ボタン」に記入されている)

なお、動作開始のコマの番号は、そのコマに名前を記入(ラベリング)してあれば、
番号でなく「名前」を記入してもそこへ飛んでくれる。

その場合「ラベル(つまり「名付け」)」というレイヤーを新たに作って、
飛びたいコマの場所に「空白キーフレーム」を作り、
そこを指定した状態で「プロパティ」タブを開き、
タブ内の「ラベル」に名前を記入しておく。

この場合、
上の「gotoAndPlay(2)」の「2」の代わりにラベルに記入したそれぞれ名前を記入すれば良い。
ただし、名前を記入する時は必ずダブルクォーテーションマークで("名前"のように)囲むこと。

Flashのプログラムでは和文字でも大丈夫だが、
Webに乗せる「html」などではアルファベットしか受け付けないため、
アルファベットで書く癖をつけると良いかもしれない。

例えば「takusan」とか「banana」という名前がラベルされたコマがあれば、
「gotoAndPlay("takusan")」とか「gotoAndPlay("banana")」とかにしておけば飛んでくれる。


<動きを「止める」ためのスクリプト>

動きを「止める」ことは、Flash作成作業に大変重要だ。
これが無いと、再生が開始されると、無計画に動画が終わりまで走って行ってしまう。

そこで……、
更に別レイヤーを用意し(これにも自動的にアニメの時間帯同様にフレームができる)、
このレイヤーに「スクリプト」と記名する。

止めたい場所(ここでは第1コマ目)に「空白キーフレーム」を配置する。
この空白キーフレームに「全体の画像の動きをここで止める」という意味の、
以下の文字列を記入する。

別の数字のコマで止まる場合でも、ただ止まるだけなら同じ文字列でOK。
___________________

stop();

___________________

この状態で「シーンプレビュー」すると、ボタンにより動くアニメーションが再現されるぞ!。