■四年生三学期■

 もうすでに、「_root.」というアクションスクリプト(AS)の記述法を学んでいますが、
今回はASの基本中の基本である変数を扱います。

◆変数◆
 変数がどうゆうものか知るためにテキストボックスを作ってみましょう。
 まず、ファイルリストに↓のようなテキストを作ります。


 テキスト欄は空白のままです。

 次にそれを複製(ID0002)し、「自動サイズ」にチェックを入れ、下のみっつのチェックボックスのチェックを外します。


 そのふたつをイベントリストに追加し、適当な位置に配置してください。


 ID0001がテキストボックスとして表示されています。
それをクリックし、何かを書き込んでみてください。
 書き込んだ内容が、変数nameの値になり、同じ変数nameのID0002に渡され表示されます。

 ここでは変数に「name」という文字列を使いましたが、任意の半角英文字で勝手につけることができます。

 ASではこの変数のように自分で任意の名前を付けて扱う項目がいくつかあります。
ネーミングする際にいくつかのルールがありますので、気をつけてください。

◆ネーミングのルール◆
1.使えるのは半角英数字のみ
2.大文字小文字は書き分ける
3.一文字目には数字は使えない
4.演算子(後述)に使う+、-、>、=などは使えない
5.予約語(後述)であるif、break、delete、function、withなどは使えない

 予約語は英単語ですので、ネーミングする際は日本語をローマ字でhensuとかmigitobiみたいにするといいでしょう。
 また、予約語にはj、q、zで始まるものはありませんから、それを一文字目に持ってくることをお勧めします。

◎当小学校のみでのお約束◎
 ASが混み入ってくると、何が予約語か、任意のネーミングした項目かが見分けづらくなってくるので、
以下のように定めます。

変数:先頭にjを付け、二文字目を大文字にする。例、jHensu、jNamae
ファンクション(後述):先頭にqを付け、二文字目を大文字にする。例、qMawaru、qTobu
インスタンス名(後述):先頭にzを付け、二文字目を大文字にする。例、zHanabi、zHiruyoru


注意:Flashの規格が、FlashMXまでは大文字小文字を識別しなかったのが、Flash8以降は識別されるようになりました。
 しかし、わざわざNameとNAMEとnameを使い分けることは混乱の元ですからやめましょう。


 変数と聞くと、扱えるのが数字だけのような気がしますが、上で試したように文字列も扱うことができます。

 では、ID0001とID0002の変数名をnameからjNamaeに変更してください。

 ファイルリストでID0003に「いらっしゃいませ」と書いたテキストを作り、サイズを20にします。

 同様に
ID0004は「さん」
ID0005「名前」
ID0006「▲」(MSPゴシック、Bを255に)
というテキストを作り、イベントリストに↓のように加えます。


 ▲=テキスト0006はボタンにしラベル「ようこそ」へジャンプするように設定します。

 プレビューすると↓こうなります。



 テキストボックスにどんな文字が記入されるか前もって予測できない変数jNamaeのような場合は、
フォントには必ず「_ゴシック」のように「_」が付いたものを使ってください。
 それらはデバイスフォントと呼ばれ、どんなパソコンででも表示される文字だからです。

 MPSゴシックなどの「_」が付いていない埋め込みフォントは、
そのフォントがインストールされているパソコンでしか表示されないため、
ファイルリストで使われた文字だけをパラフラがいったん画像として取り込むことによって、
表示できるようにしていたわけです。
 ですから、ファイルリストに追加していない文字をテキストボックスに記入されても、フラッシュでは表示されません。

 また、「_」が付いていないフォントが画像として使えたのに、「_」が付いたフォントは画像として使えなかった理由もそうゆうことだったのです。

 変数で扱う文字列に「_」が付いていないフォントを扱いたい場合は、
テキスト欄にその文字を全部記入してしまいます。
 数千文字もある日本語と違いアルファベットや数字なら数に限りがあります。
アルファベッドならA〜Zの26文字だけ、全角半角大文字小文字をすべてでも104文字、
数字なら0〜9までたった10文字だけです。

 実際にやってみましょう↓。


 これをイベントリストに加え↓のようにします。



 ではいよいよ、スクリプトエディタを使ってASを書いてみましょう。
 まず↓の例で反転させてある位置になるように「アクション スクリプト」を挿入します。


 フレーム7の方を反転させ、イベントリストの下に収納したスクリプトエディタを引き上げ、そこに↓のように記入します。


 フレーム20の「アクション スクリプト」のスクリプトエディタには「jCount-=1;」と記入します。

 当小学校では、命令を与える部分の式を、指示式と呼ぶことにします。
 スクリプトによる指示式の終わりには必ず「;」を付けてください。

 書いたスクリプトが正しいかどうかを調べてくれる構文チェックボタンで
エラーが出る場合は、たいてい「;」の書き忘れです。

 プレビューしてみましょう↓

 カウントされます。

 フレーム7の「jCount=10;」で「jCountを10にする」という指示をしました。

 フレーム20の「jCount-=1;」は「jCount=jCount-1;」という意味です。
 こうゆう数式は以前「イベントの詳細設定」でも見ましたね。
左辺のjCountは新しく設定したい値で、右辺のjCountは今までの値という意味なのです。
 つまり「新しいjCountは、今までのjCountから1を引いたものにする」という指示なのです。
 さらに、ラベル「カウント」をループ(繰り返し)させて、何度もスクリプトを読み込ませてありますから…
jCount=10;
jCount=jCount-1;
jCount=jCount-1;
jCount=jCount-1;



…となり、カウントされるという仕組みです
 フレームカウントが合計12になるようにしてあるのは、FPSが12なので、秒数をカウントしたわけです。

 変数を扱う演算には通常の数式の記号ではなく演算子を使います。

演算演算子記述法1記述法2
足し算a+bの和を求める+a=a+b;a+=b;
引き算a-bの差を求める-a=a-b;a-=b;
掛け算a×bの積を求める*a=a*b;a*=b;
割り算a÷bの商を求める/a=a/b;a/=b;
割り算a÷bの剰余(余り)を求める%a=a%b;a%=b;
単に1を足す++a=a+1;a++;
単に1を引く--a=a-1;a--;

 タイムラインに置くスクリプトをフレームアクションと呼びます。

◎当小学校のみでのお約束◎
タイムライン上に置かれたスクリプト:Rフレームアクション
タイムラインの先頭に特別に置かれたスクリプト:Sフレームアクション
と、呼ぶことにします。



 ここまでのプロジェクトファイルは、まだ使いますのでhensu.pflと名前をつけて保存してください。

◎プロジェクトファイルsample43.pfl

 四年生の過程はこれで終了です。
 五年生に進級してください。

五年生一学期へ

TOPへ

inserted by FC2 system