プロが教える店舗&オフィスのセキュリティ対策術

フラッシュ詳しい方にお願いします。
webcreators7月号 p042

こんな効果が使いたいのですが、初心者なので
よく分かりません。
特にフラグという言葉が分かりません。。。
2番、3番、4番のようなトランジョン効果のflaファイル
を誰か作れる方、ぜひ詳しい解説お願いします。
flaファイルをダウンロードさせてくれると嬉しいです。
よろしくお願いします。

A 回答 (1件)

おそらく雑誌に掲載された様々な画面効果のことだと思いますが、その記事を見たことがある人は限られています。


どんな効果なのかを具体的に書いて質問した方が、より的確な回答やアドバイスを得られると思いますよ。

-----------------

フラグ( flag )は「旗」という意味ですが。
例えば、

 成功した時:旗を上げる
 それ以外 :何もしない

このように取り決めをしておくと、旗を使って相手に合図を送ることができます。
プログラムでいうところのフラグも、これと同じ発想です。
ある条件(例えば処理が終了した・成功したなど)になった時や、ある現象が起きた場合などに、値を変えて知らせたり、判断の材料にするために使う変数のことを、フラグと言います。
つまり、フラグの正体はただの変数です。「フラグ」という特定の機能や関数が、Flash や ActionScript にあるわけではありません。普通の変数と同じように、自分で好きな名前を付けられますし、入れる値も値の使い方も自由に決められます。
一般的には、「成功・失敗」「可・不可」「終わった・終わらない」「ある・ない」のように2通りの判断に使うフラグには、「 true(真)・ false(偽)」が利用されます。
例えば end_flg という変数を用意して、画面エフェクトの描画が終了した時 true 、終了していない時は false と決めておくとします。この end_flg 変数がフラグになります。
描画を担当する方では、最初に end_flg に false を入れておいて、描画が終わった時に

 end_flg = true;

とフラグの内容を書き換えると、描画が終了したことを知らせることができます。このようにフラグの内容を書き換えることを、「フラグを立てる」とも言います。
描画の終了を知りたい方では、

 if( end_flg == true )
 {
  ・・・
 }

と、if 文で end_flg の内容を判断することで、描画が終了するまで待つ・描画終了後に何かをする、といった処理ができるようになります。


先述の旗の話で、

 成功した時 :旗を上げる
 失敗した時 :旗を横に振る
 異常事態発生:旗を縦に振る 
 それ以外  :何もしない

こんなふうに合図を決めておくと、1枚の旗で4通りの合図を送れます。
これと同じ考え方で、プログラムでのフラグも、

 成功した時 :1
 失敗した時 :-1
 異常事態発生:-2
 それ以外  :0

といった具合に変数に入れる数字を分けて、1つのフラグで4通りの状況を判断することもできます。

フラグをどのように使うか、いくつ使うかも、作る人の自由です。
例えば交通整理では、

 上り車線の車を通す :赤い旗を振る
 上り車線の車を止める:赤い旗を横にする
 下り車線の車を通す :白い旗を振る
 下り車線の車を止める:白い旗を横にする

といった合図の仕方があります。
この例ですと、合図は先の例と同じく4通りです。しかし、旗の振り方は「旗を振る」と「旗を横にする」の2つの代わりに、旗が2枚必要になっています。
交通整理は車線が2つありますから、1枚の旗で4通りの合図を作っていたのでは運転者に分かりにくく、事故にもつながりやすくなってしまいます。それよりも、「進め」「止まれ」の2つの合図で、2車線分の旗をそれぞれ用意した方が分かりやすいというわけです。
これをプログラムに置き換えるなら、4通りの判断をするのに、フラグとして使う変数が2つ必要ではありますが、フラグに入れる値は「 true 」と「 false 」だけで済むと言えます。判断したい条件は1か0かの2種類だけど、対象がたくさんあるような場合は、1つのフラグで管理するよりも、フラグをたくさん用意した方が分かりやすい場合もあります。


フラグ自体は確かにただの変数なのですが、いろいろな使い方や、考える時のコツがあります。フラグの利用次第では、複雑な処理を作ることもできます。
おそらく、その雑誌に載っているトランジョン効果も、フラグを画面描画の終了判断などに上手く使っているのだと思います。
    • good
    • 0

お探しのQ&Aが見つからない時は、教えて!gooで質問しましょう!