トピック
shoum shoum0403

フラグって何ですか?

タイトルの通りフラグの使い道やメリット、例などをあげてもらえると とても助かります
1そうだね
プレイ済み
返信[1]
親投稿
nobu divine-creator
フラグは分岐の条件として必要でしょう?! 選択肢を選ぶだけで分岐していくのなら、フラグ無しでも平気ですけど、 鍵を手に入れている場合は、扉が開けられるけど、 鍵を手に入れていない場合は、扉が開けられない…とか、 鍵を持っているかいないかがフラグです。 分岐する時に、フラグによって判定しなければ、正しく分岐できずに、 鍵を持っていないのに扉を開けられてしまいます!
2そうだね
プレイ済み
返信[2]
親投稿
STiNGER STiNGER8901
例えば、戦車が一度に一発ずつしか大砲を撃てないとします。 この場合、「大砲を撃って画面に弾が出ている間は、次の大砲を撃たせない」という処理が必要になります。 そこで、フラグです。 FIREという変数を用意して、大砲を撃てる状態の時はFIRE==0に、大砲を撃ったらFIRE==1に。弾が画面から消えたらまたFIRE==0に戻します。
1そうだね
プレイ済み
返信[3]
親投稿
shoum shoum0403
IF KAGI==1 THEN ドアが開く ⬆︎のような感じですか??
0そうだね
プレイ済み
返信[4]
親投稿
れい rei-nntnd
やったかやらないか、あるかないかといった情報を忘れないように保存しておく装置。 「おれこの戦争が終わったら結婚するんだ…」とか「ここは俺に任せて先に行け!」っていうと、「死亡フラグ」が立つ。 敵が大砲を撃ったときに、そのフラグがたってると弾が当たって死ぬ。 メリットは、大砲を撃ったとき、兵士全員の発言を全て調べなくていい点。 死亡フラグが立ってたら殺せばいい。
3そうだね
プレイ済み
返信[5]
親投稿
NN aA1NNNN
↑それ違う。ネタかもしれないが一応不適切な用語が入っていたため通報しました。今後このような事が無いようにしてください
0そうだね
プレイ済み
返信[6]
親投稿
ボーネン gurigura2003
俺、この戦いが終わったら 基地の人に…いろいろ花束とか… かってあげたりするんです… 有名な死亡フラグです()
1そうだね
プレイ済み
返信[7]
親投稿
STiNGER STiNGER8901
大砲の例に補足。 Aボタンを押してもFIREが1の時は、弾を撃つ処理は無視します。 Aボタンが押されて、且つFIRE==0で弾を撃つ処理が実行されます。
0そうだね
プレイ済み
返信[8]
親投稿
nobu divine-creator
不適切な言葉は入っているけど、フラグとしては合ってるんじゃ…。 そのセリフを言ったキャラの結末はその通りだし…。 「ここは俺に任せろ!」はカッコいいセリフなんですけどね~。 フラグを通過したら、変数を1にして判定すると、分かりやすいですよね。
1そうだね
プレイ済み
返信[9]
親投稿
Hanzo rzsense
山田洋次監督の『幸福(しあわせ)の黄色いハンカチ』ってご存知ですか?殺人事件を起こして刑務所に服役していた夫が、妻に宛てて「もし自分の出所を待っていてくれるなら、家の軒先に黄色いハンカチを1枚、目印に掲げておいて欲しい」と葉書を出すわけです。出所した夫は、もはや妻が待っているはずがないと思いつつ、家に戻ってみると、そこには何十枚もの黄色いハンカチが掲げられていた、と。 さて、フラグとは、flag(旗)、つまり状態を表す目印のことです。「黄色いハンカチ」は「妻は夫の帰りを待っている」という状態を表すフラグだったと言えるでしょう。
2そうだね
プレイ済み
返信[10]
親投稿
とるて alulu-ami157
何もしてない時の状態の変数Aを0とします(A=0)。 ここで今、何かのボタンを押したとします。 何かボタンが押されたら変数Aを1にします(A=1)。 つまりどういうことかというと、Aの値が1ならボタンを押している。というのを表しています。 いわゆる条件式などで使用します。 A=0 ↑変数に0を入れる B=BUTTON() IF B==#A THEN A=1 ↑Aボタンが押されたら変数Aに1を代入。 IF A==1 THEN BEEP 1 ↑Aが1なら(=Aボタンが押されたら)効果音1番を鳴らす。
1そうだね
プレイ済み
返信[11]
親投稿
とるて alulu-ami157
通常は条件を満たしているかどうかを判断するときに使います(?)。 日本語が難しいですね… …うーん。 ・RPGで○○のアイテムを持っていたらイベントが起きる。 こういう時に使ったりします。 こんな感じで大丈夫かな?
0そうだね
プレイ済み
返信[12]
親投稿
shoum shoum0403
あまり理解しきれてないですが、とにかく変数をうまく使ってみます たくさんのご回答ありがとうございました
0そうだね
プレイ済み
返信[13]
親投稿
ツララさんも言われてるようにフラグは条件によって処理を変化させたい(分岐)で使いますよね。フラグというと基本ON/OFFの2パターンが多いですが変数は数値なのでビット判定しない限りは3パターン以上の分岐に使うこともありますしね。 例ではやっぱりゲーム的にはアドベンチャーやRPGで出てくるパターンが多いですが、それ以外でもプログラム上は内部的にフラグで処理を分岐させるようなケースは多いと思います。 死亡フラグもそうですがフラグという言葉はプログラム以外でもよく使うし、その辺逆に混乱する? まあ雰囲気は同じですけどね〜
0そうだね
プレイ済み
返信[14]
親投稿
Villit nakahara1226
鍵を持ってたらドアが開くみたいな。 大体そんな感じ。
1そうだね
プレイ済み
返信[15]
親投稿
れい rei-nntnd
フラグの説明で通報されるとは思わなかった 判断と結果に時間的解離が在るときに使う記憶手法の名称。 なので死亡フラグは正しくフラグだよ。 時間的解離がないときは使わない。 ナース「nobu先生!患者の心臓が止まりました!」 nobu先生「助けられなかったか…。死亡フラグが立ってしまった」 っていうのは間違い。
2そうだね
プレイ済み
返信[16]
親投稿
Hanzo rzsense
死亡フラグと聞いて私が真っ先に思い至るのは「ファイナルデスティネーション」というアメリカのホラーサスペンス映画のシリーズです。一作目は、飛行機事故を予知して搭乗を取り止めたおかげで、一旦は難を逃れたかに見えた若者たちが、やがてそれぞれ別の事故で次々に凄惨な死を遂げるというものです。結局彼らは、飛行機事故を回避した時点で、既に死亡フラグが立ってしまっていたわけです。
1そうだね
プレイ済み
返信[17]
親投稿
nobu divine-creator
仕方ない……こうなったら、瀕死大変仲間を助ける反魂香~♪(※フラグ関係なし!)
0そうだね
プレイ済み
返信[18]
親投稿
れい rei-nntnd
> 特定の人に死亡フラグが立ったという事は、逆に言えばその他の人全員に生存フラグが立ったという使い方も出来るんですよね。 これが実はとても難しい問題。 「フラグ」ってのは特定のイベントの際に「結果」を判断するもの。つまり「xxフラグ」の「xx」前には「動作」が入る。 普通生存ってのは動作ではなく状態。無理やり動作と解釈するなら、「最後の審判」みたいな、参加者全員が生きるか死ぬか判断されるイベントがあることになる。 この辺に「状態」と「フラグ」の使い分けがある。 「毒」はHPが徐々に減っていく「状態」を表すので「毒」フラグとは言わない。 「三日後死亡」ってのも、特定のイベントではないので「状態」 「王様にあったら投獄」はたぶんフラグ。 「宿屋にいっても回復しない」は…微妙。
0そうだね
プレイ済み
返信[19]
親投稿
れい rei-nntnd
> れいさんって何かいつも間違い探しばかりしてる様に見受けられますけど、 ? 間違ってるなんていってないよ。 >>参加者全員が生きるか死ぬか判断されるイベントがあることになる。 >当たり前でしょう。そういう前提の体くらい文脈から読めませんか? だからフラグと状態と違って面白いよねって話をしてる。 「死亡フラグ」の論理を逆に「生存フラグ」という形にすると 普通生きてる状態が普通死ぬ世界になる。 だから難しく、そして面白い。
0そうだね
プレイ済み
返信[20]
親投稿
プログラム的には状態をビットで管理する事があるので、その場合は状態自体を状態フラグと呼ぶこともあるし、言葉って難しいですよね。 また生存、死亡のように排他的なフラグは両方を持つことは普通はしないので、どっちを主にするかで考え方も変わりますよね〜
0そうだね
プレイ済み
返信[21]
親投稿
shoum shoum0403
メイドイン俺をもっている人は分かるかと思いますけど、スイッチみたいなもんですかね〜
0そうだね
プレイ済み
返信[22]
親投稿
メイドイン俺はもってませんがスイッチはON/OFFなのでフラグの概念ですし、プログラム上のフラグ(ビット管理)をスイッチというメタファーで表している、って事じゃないかなって思いますね。 もし数値をメタファーで表すならボリュームみたいなものになるかもしれませんし、フラグのスイッチはわかりやすいですよね。
0そうだね
プレイ済み