重要なお知らせ

「教えて! goo」は2025年9月17日(水)をもちまして、サービスを終了いたします。詳細はこちら>

電子書籍の厳選無料作品が豊富!

いつもお世話になっています。
ActionScript初心者のkinkan71と申します。

現在、クイズ形式のゲームを作っていて、最後のフレームに点数を表示させることはできるようになったのですが、その点数に応じて表示させるメッセージを変えるには、どのようにすれば良いでしょうか?

クイズは全部で5問あり、結果が3点以上の場合と、2点以下の場合で、表示させるメッセージを別のものにしたいと考えています。さらに、メッセージの表示場所は、点数表示と同じフレームにしたいと思います。

どうぞ、よろしくお願いいたします。

A 回答 (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)です。
    • good
    • 0
この回答へのお礼

sassakunさま

いつも本当にありがとうございます!

 今回も頂いたアドバイスに従って、思い通りの結果表示ができるようになりました
m(._.)m
変数で得た値を「if文」で振り分けるのかな?というところまでは考えたのですが、その後がまったくお手上げでしたので、本当に助かりました。

ありがとうございました。

お礼日時:2006/06/02 23:28

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