スポンサーサイト

上記の広告は1ヶ月以上更新のないブログに表示されています。
新しい記事を書く事で広告が消せます。

アクションスクリプトを書く

FLASHを作る際にさまざまな動作を行うためには、"命令文"が必要になってきます。

この命令文がFLASHでは"アクションスクリプト"と呼ばれます。

例えば、フレームを飛ばしたり、止めたり。
時間情報を獲得したり、ボタンを作ったり。

複雑な処理をするには、必ず用います。


さて、実際にアクションスクリプトを入れてみましょう。

1.レイヤーで右クリック→アクションレイヤーを挿入

すると"フレームアクション"というアイテムがレイヤーに表示されました。
次にアクションスクリプトを打ち込む画面ですが、

2.フレームアクションをクリック。
3.右下に出る"スクリプト編集"をクリック。

スクリプトエディタが表示されたと思います。
レイヤーの下で小さく表示される方は、[>>]を押して、別ウィンドウで表示できます。


アクションスクリプトがまったく分からなくても簡易モードで一部できますが、使ったこと無いので省略(ぉ。


簡単ですがアクションスクリプトの説明を終えます。


当サイトでも、アクションスクリプトを紹介しますが、検索するといっぱい出てきますw
でもSuzukaでは使えないものもあるので注意。


なお、以降スクリプトを説明する際には、変数を用いる場合があります。
スポンサーサイト

タイムライン制御

フレームを移動、停止するための主なアクションスクリプトを紹介します。

  • play();
    フレーム移動を開始。

  • nextFrame(); , prevFrame();
    nextFrame();は次のフレームに移動し停止。
    prevFrame();は前のフレームに移動し停止。

  • gotoAndPlay(移動先フレーム);
    任意のフレームへ移動。"()"内に移動先のフレーム数を入れる。

  • stop();
    フレーム移動を停止。

これをアクションレイヤーに書き込み、作用させたいフレームに置けば完了です。
(" ; (セミコロン) "を最後につけるのを忘れずに!)

よく使うのは、gotoAndPlay();やstop();でしょうか(オイラ的に。



■注意:gotoAndPlay();

仮に gotoAndPlay(10); を5フレーム目に入れたとします。
この場合、5フレーム目になった瞬間に10フレーム目に飛ばされます。

つまり、5フレーム目が10フレーム目なわけです。

なので5フレーム目に画像や他のアクションスクリプトを入れても反映されません。

5フレームの次に10フレームにしたい場合は、6フレーム目にgotoAndPlay(10);をいれましょう。



*あったら便利なgotoAndStop();はswf4では使えないようなので注意。

四則演算

変数に入れる数は、四則演算 + , - , × , ÷ が可能です。

これらはそれぞれ + , - , *(アスタリスク) , /(スラッシュ) で表せます。

例えば、
    x = 10 + 5 ;
であれば、x = 15 ; と同義です。

算数でよくあるミスですが
    x = 10 + 5 * 3 ;
は、x = 45 ; ではなく x = 25 ; です。

x = 45 ; にしたい場合、
    x = ( 10 + 5 ) * 3 ;
と"( )"を使って書きます。
なお、大括弧とか中括弧とかは用いずに、全て"( )"で統一します。


もう少し複雑にして、
    a = 3 ;
    bc = 5 ;
    def = ( a + bc ) / 4 ;
    gotoAndPlay( def + 1 ) ;
とした場合、

・・・

3フレーム目に移動します(多分。

こんな感じで複雑な式も変数を使えば見やすく書くことができます。

random

ランダムに数字を得られるスクリプトが
    random(数字)
です。

例えば、
    r = random( 10 ) ;
と書き込んだ場合、

ランダムに r = { 0 , 1 , 2 , 3 , 4 , 5 , 6 , 7 , 8 , 9 } ; が得られます。

大切なのは、0 から始まること。r = 10 ; は得られません。


これを使って"おみくじ"なんかも作れます(CLICKボタンは除く)。

クリックで瞬間おみくじスタート!(凶・大凶でも怒らないでね☆)


あぁ、凶だ...。

・・・

では作ってみましょう。

  1. テキストアイテム[大吉],[中吉],[凶],[大凶]を作り、レイヤーに移動。

  2. .これらのアイテムをそれぞれ2,3,4,5フレームに置く。

  3. アクションレイヤーを1フレーム目に挿入し、アクションスクリプト
      r = random(4);
      gotoAndPlay(r+2);
    を書く。

  4. もう1つアクションレイヤーを作り、
      stop();
    と書く。

  5. このアクションレイヤーのフレームをコピーし、2~5フレーム目に貼り付ける(又は上書き)。

こんな感じです(名称は変えています)。


プレビューを押しましょう。

(いきなりですが)大吉、中吉、凶、大凶もいずれかが現れたでしょうか。

プレビューを何度も押すと、違うおみくじの結果が得られると思います。

文字を入れる

変数は数値以外に、文字(文字列:String)を入れることができます。

例えば、
    t = "フラッシュ" ;
と書けば、t の中には フラッシュ という文字列が入ります。

このとき、文字列の最初と最後は " " で囲んでください。

また、
    t = 10 ;
は数値ですが、
    t = "10" ;
だと文字列になるので、演算はできません。

同様に
    t = flash ;
だと、flashは変数となりますが、
    t = "flash" ;
では文字列になります。


文字列を入れるときには、次のような特殊な文字列もあります。
  • \n
    文章の改行。

  • \t
    スペースを入れる。

  • \"
    " を入れる。

  • \'
    ' を入れる。

  • \\
    \ を入れる。

この \ には、文字化けを防ぐ効果もありますので、記号の後などには \ をいれると良いかもしれません。

プロフィール

クロワッサン@

Author:クロワッサン@
FLASHへの質問はコメントにて。

↓携帯サイトはコチラ

QRコード
*FLASHと画像で萌えサイト

カテゴリ

スポンサードリンク

検索フォーム

月別アーカイブ

最新記事

最新コメント

Twitter

Twitter < > Reload

Copyright © クロワッサン@
上記広告は1ヶ月以上更新のないブログに表示されています。新しい記事を書くことで広告を消せます。