ノベル風のクイズゲームを作ろうとしています。
クイズ画面を作っていてどうしてもわからない部分があったので質問させていただきます。
ちなみに英語の並び替えクイズです。
クイズ画面は次のように展開させようとしています。
問題文出力→選択肢出力→選択肢選択→正誤判定
プログラムを添付します。
http://kansai2channeler.hp.infoseek.co. ... g/9285.cpp
初心者なりに作ったものです。
長くて申し訳ありません。
それで、問題なのは「クイズ画面 talk.cpp」の部分です。
①問題文→選択肢の順番で出力したいのですが、どうすればいいでしょうか?
②並び替え問題なので、選択肢を選択するという処理を4回繰り返したいのですが、うまくいかない。
1回選択肢を選んだ後であと3回同じことを繰り返させるために、goto文でlabel1というところまで飛ばしてい ます。どうすればいいでしょう?
長々とすみません。
ここ何日もずっと考えているんですが、まったくわかりません。
ちょっとしたアドバイスでもいいので、よろしくお願いします。
どなたかお願いします。
Re:どなたかお願いします。
>問題文→選択肢の順番で出力したいのですが、どうすればいいでしょうか
その順番で出力してくださいっとしかいいようがない気がするのですが・・・
もっと具体的に今どういう状況で、どういう風にうまくいっていないのか
と書いたほうが良い回答が得られるかと思います。
>並び替え問題なので、選択肢を選択するという処理を4回繰り返したいのですが、うまくいかない。
>1回選択肢を選んだ後であと3回同じことを繰り返させるために、goto文でlabel1というところまで飛ばしています。
これもどのようにうまくいかないか記述するべきだと思います。
なぜgoto文を使用しているかはこの際置いておきます。
その順番で出力してくださいっとしかいいようがない気がするのですが・・・
もっと具体的に今どういう状況で、どういう風にうまくいっていないのか
と書いたほうが良い回答が得られるかと思います。
>並び替え問題なので、選択肢を選択するという処理を4回繰り返したいのですが、うまくいかない。
>1回選択肢を選んだ後であと3回同じことを繰り返させるために、goto文でlabel1というところまで飛ばしています。
これもどのようにうまくいかないか記述するべきだと思います。
なぜgoto文を使用しているかはこの際置いておきます。
Re:どなたかお願いします。
①のほうは実行してみると、問題文と選択肢が同時に出てきている状態です。
②のほうは、自分でもどう説明したらいいのかわからないのですが・・・
選択肢を↓↑で選んでエンターを押す、そしてもう一度↓↑で選ぼうとして↓↑を押す、あるいはもう一度エンターを押すと、正解かどうかが表示されてしまう。
ためしに、解答(answer[0][5])のほうをすべて同じ選択肢(AAAA)という風にすると、Aを1回えらんでエンターを押すと正解という風に表示されました。
おそらく、処理が行われていないか、1回の処理で4回分ということになっているのかもしれません。
URLを添付しましたが、クリックしてもうまく表示されない時はURLを貼り付けてやってみてください。
②のほうは、自分でもどう説明したらいいのかわからないのですが・・・
選択肢を↓↑で選んでエンターを押す、そしてもう一度↓↑で選ぼうとして↓↑を押す、あるいはもう一度エンターを押すと、正解かどうかが表示されてしまう。
ためしに、解答(answer[0][5])のほうをすべて同じ選択肢(AAAA)という風にすると、Aを1回えらんでエンターを押すと正解という風に表示されました。
おそらく、処理が行われていないか、1回の処理で4回分ということになっているのかもしれません。
URLを添付しましたが、クリックしてもうまく表示されない時はURLを貼り付けてやってみてください。
Re:どなたかお願いします。
プログラムは読んでませんが、あて推量で・・・
>問題文と選択肢が同時に出てきている状態です。
ある程度のウェイトをはさむなり、キー入力待ちにして、エンター押したら選択肢が出るようにしたり
で良いのではないでしょうか。
(2)のほうはキー入力判定ルーチンで特定のキー(エンター)を押さないと抜けないようにすればいいだけではないでしょうか?
>問題文と選択肢が同時に出てきている状態です。
ある程度のウェイトをはさむなり、キー入力待ちにして、エンター押したら選択肢が出るようにしたり
で良いのではないでしょうか。
(2)のほうはキー入力判定ルーチンで特定のキー(エンター)を押さないと抜けないようにすればいいだけではないでしょうか?
Re:どなたかお願いします。
①に関して質問です。
自分の作ったプログラムでは
for(){
問題文出力
}
for(){
選択肢出力
}
という風になっています。
for(){
問題文出力
}
WaitTimer(20);
for(){
選択肢出力
}
としても、問題文と選択肢が同時に表示されます。
あと、for文のそれぞれ前にif(CheckHitKey(KEY_INPUT_RETURN)){をおくと、問題文と選択肢が表示されなくなりました。
どこを直せばよいでしょうか?
自分の作ったプログラムでは
for(){
問題文出力
}
for(){
選択肢出力
}
という風になっています。
for(){
問題文出力
}
WaitTimer(20);
for(){
選択肢出力
}
としても、問題文と選択肢が同時に表示されます。
あと、for文のそれぞれ前にif(CheckHitKey(KEY_INPUT_RETURN)){をおくと、問題文と選択肢が表示されなくなりました。
どこを直せばよいでしょうか?
Re:どなたかお願いします。
初投稿になります。Kubouといいます。
> WaitTimer(20);
ですが、当該関数は引数がミリ秒単位です。
20ミリ秒waitを入れても侮ヲ上は一瞬となるため同時に侮ヲされるように見えるのだと思います。
1000で1秒なのでそれなりに大きい数字を入れるとwaitがかかるように見えると思います。
> WaitTimer(20);
ですが、当該関数は引数がミリ秒単位です。
20ミリ秒waitを入れても侮ヲ上は一瞬となるため同時に侮ヲされるように見えるのだと思います。
1000で1秒なのでそれなりに大きい数字を入れるとwaitがかかるように見えると思います。