タイトル画面
↓
プレー画面
↓
ゲームクリア画面
↓
タイトル画面
↓
プレー画面
上のような感じで処理をしたいのですが
ゲームクリア画面からタイトル画面に戻った後に
もう1度プレーすることができません。
変数などの値が初期値に戻っていないせいだと思うのですが・・・
どうすればいいですか?
質問なのですが
Re:質問なのですが
初期化が不可能だという理由が全く分かりません。
まぁ、ソースコードを見ていないので、これ以上は何とも言えませんが…
タイトル画面
↓
プレー画面
↓
ゲームクリア画面
↓
タイトル画面
↓
プレー画面
少なくとも、こういう流れにしたいのならば、タイトル画面とプレイ画面の間で初期化処理をすればいいだけの話だと思いますよ。
提示されている情報だけでは、これ以上のアドバイスは不可能です。
まぁ、ソースコードを見ていないので、これ以上は何とも言えませんが…
タイトル画面
↓
プレー画面
↓
ゲームクリア画面
↓
タイトル画面
↓
プレー画面
少なくとも、こういう流れにしたいのならば、タイトル画面とプレイ画面の間で初期化処理をすればいいだけの話だと思いますよ。
提示されている情報だけでは、これ以上のアドバイスは不可能です。
Re:質問なのですが
仰る意味はわかりますが、機能の分担をさせていたいため起こる事です。しっかりモジュールわけをしたり、きっちり切り離しが出来る書き方をしましょう。
メインループの中に全部処理をわけずに入れてしまっているからでしょう。
今の状態変数でも用意しておいて、その状態変数によって任意の関数を呼んでやるようにすれば解決します。
そうでなくても、初期化関数をiniとでもするなら、初期化させたいときにini関数を呼んでやるだけのことなので、なんら難しくないと思います。
ゲームプログラミングの館にメイン関数の書き方の例をあげています。
別に一般的なやり方なわけでなく、私の勝手な書き方ですが・・。
メイン関数内には関数の呼び出し以外の記述はなるべくかかないようにし、機能の分担をしっかりさせる事で、切り離しが可能になります。
http://l.huu.cc/g/#34
リンク先でいうならfunction_statesが0の時、初期化させるようにしておけば、初期化させたいとき、function_statesを0にするだけでOKです。
メインループの中に全部処理をわけずに入れてしまっているからでしょう。
今の状態変数でも用意しておいて、その状態変数によって任意の関数を呼んでやるようにすれば解決します。
そうでなくても、初期化関数をiniとでもするなら、初期化させたいときにini関数を呼んでやるだけのことなので、なんら難しくないと思います。
ゲームプログラミングの館にメイン関数の書き方の例をあげています。
別に一般的なやり方なわけでなく、私の勝手な書き方ですが・・。
メイン関数内には関数の呼び出し以外の記述はなるべくかかないようにし、機能の分担をしっかりさせる事で、切り離しが可能になります。
http://l.huu.cc/g/#34
リンク先でいうならfunction_statesが0の時、初期化させるようにしておけば、初期化させたいとき、function_statesを0にするだけでOKです。