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();
___________________
この状態で「シーンプレビュー」すると、ボタンにより動くアニメーションが再現されるぞ!。