- ベストアンサー
ゲームの結果表示について
いつもお世話になっています。 ActionScript初心者のkinkan71と申します。 現在、クイズ形式のゲームを作っていて、最後のフレームに点数を表示させることはできるようになったのですが、その点数に応じて表示させるメッセージを変えるには、どのようにすれば良いでしょうか? クイズは全部で5問あり、結果が3点以上の場合と、2点以下の場合で、表示させるメッセージを別のものにしたいと考えています。さらに、メッセージの表示場所は、点数表示と同じフレームにしたいと思います。 どうぞ、よろしくお願いいたします。
- みんなの回答 (1)
- 専門家の回答
質問者が選んだベストアンサー
- ベストアンサー
おそらく (おそらくの話です) 何か変数を作って, その変数に, 得点をプラスする計算式の値を代入していると思います。 この変数名を仮に「myVariable」としておきます。 > 最後のフレームに点数を表示させる ということなので, 最終フレームにテキストフィールドを用意されているのだと思います。 ですから,同じ最終フレームのステージ上に 例えば「myMassage」という "インスタンス名" のダイナミックテキストのテキストフィールドを用意して, 最終フレームに次のようなスクリプトを書けば良いと思います。 ダイナミックテキストのテキストフィールドは複数行の設定にしてあるという仮定です。 ------------------------------------------------ // とりあえずストップ stop (); // --この辺に「myVariable」などの計算式が来る?-- // if文で 3以上 と 2以下 の場合で表示される文を変える if (myVariable>=3) { _root.myMassage.text = "合格!\n次の問題にも挑戦しよう。"; } else { _root.myMassage.text = "残念!\n再チャレンジしてね。"; } ------------------------------------------------ なお, ダイナミックテキストのテキストフィールドにインスタンス名が付けられるのは, Flash MX 以降です。 Flash 5 の場合は「myMassage」という "変数名" のダイナミックテキストのテキストフィールドを用意し, 最終フレームに書くスクリプトは次のようになります。 ------------------------------------------------ // とりあえずストップ stop (); // --この辺に「myVariable」などの計算式が来る?-- // if文で 3以上 と 2以下 の場合で表示される文を変える if (myVariable>=3) { _root.myMassage = "合格!\n次の問題にも挑戦しよう。"; } else { _root.myMassage = "残念!\n再チャレンジしてね。"; } ------------------------------------------------ 「\n」は改行コード(newline)です。
お礼
sassakunさま いつも本当にありがとうございます! 今回も頂いたアドバイスに従って、思い通りの結果表示ができるようになりました m(._.)m 変数で得た値を「if文」で振り分けるのかな?というところまでは考えたのですが、その後がまったくお手上げでしたので、本当に助かりました。 ありがとうございました。