お久しぶりに投稿します。
前回で当たり判定ができるようになりました。
当たったらいちいちウィンドウを閉じて開く動作がめんどくさいので
Cのキーを押したらコンテニューができるというプログラムを書きたいです。
横スクロールで敵に当たったときにプレイヤーと背景と敵を最初の位置に戻したいです。
どうやって書けば良いのでしょうか?
説明が下手ですが回答宜しくお願いします。
コンテニューの仕方
- softya(ソフト屋)
- 副管理人
- 記事: 11677
- 登録日時: 15年前
- 住所: 東海地方
- 連絡を取る:
Re: コンテニューの仕方
まず、ゲームオーバーの状態とゲームプレイ中の状態を変数で持つ必要があります。
ゲームオーバー中なら、ゲームの進行を停止してGAMEOVERを表示してCキーが押されるのを検出します。
あと初期状態に戻すには、もう一度変数に初期の値を設定するだけです。
ゲームオーバー中なら、ゲームの進行を停止してGAMEOVERを表示してCキーが押されるのを検出します。
あと初期状態に戻すには、もう一度変数に初期の値を設定するだけです。
by softya(ソフト屋) 方針:私は仕組み・考え方を理解して欲しいので直接的なコードを回答することはまれですので、すぐコードがほしい方はその旨をご明記下さい。私以外の方と交代したいと思います(代わりの方がいる保証は出来かねます)。
Re: コンテニューの仕方
回答ありがとうございます。
変数を持つということは、具体的に書くと
敵やプレイヤーの全てのif文にGameplay==1&&を追加して
当たったら
Gameplay=0
にし、Cを押すと
Gameplay=1
にすると元になるんですか?
変数を持つということは、具体的に書くと
敵やプレイヤーの全てのif文にGameplay==1&&を追加して
当たったら
Gameplay=0
にし、Cを押すと
Gameplay=1
にすると元になるんですか?
- softya(ソフト屋)
- 副管理人
- 記事: 11677
- 登録日時: 15年前
- 住所: 東海地方
- 連絡を取る:
Re: コンテニューの仕方
敵やプレーヤーの処理は別の関数に分離すべきだと思います。
その関数自体を呼び出さなければ、ゲームは進行しません。
if文は、その関数を呼び出すかどうかの制御として使います。
ちなみに、初期状態に戻すのは別ですよ。
その関数自体を呼び出さなければ、ゲームは進行しません。
if文は、その関数を呼び出すかどうかの制御として使います。
ちなみに、初期状態に戻すのは別ですよ。
by softya(ソフト屋) 方針:私は仕組み・考え方を理解して欲しいので直接的なコードを回答することはまれですので、すぐコードがほしい方はその旨をご明記下さい。私以外の方と交代したいと思います(代わりの方がいる保証は出来かねます)。
Re: コンテニューの仕方
お早い回答ありがとうございます。
敵とプレイヤーは、分割したいと思います。
初期の状態に戻すには1にするだけではならないのですか?
敵とプレイヤーは、分割したいと思います。
初期の状態に戻すには1にするだけではならないのですか?
- softya(ソフト屋)
- 副管理人
- 記事: 11677
- 登録日時: 15年前
- 住所: 東海地方
- 連絡を取る:
Re: コンテニューの仕方
> 初期の状態に戻すには1にするだけではならないのですか?
Gameplay=1になったとして他の変数は変化しません。例えるなら、散らかった机(変数)は勝手に元に戻りません。
自分で一つ一つ元に状態に戻して下さい。
これの意味がよく分からないならC言語の入門で勉強されたほうが良いと思います。
Gameplay=1になったとして他の変数は変化しません。例えるなら、散らかった机(変数)は勝手に元に戻りません。
自分で一つ一つ元に状態に戻して下さい。
これの意味がよく分からないならC言語の入門で勉強されたほうが良いと思います。
by softya(ソフト屋) 方針:私は仕組み・考え方を理解して欲しいので直接的なコードを回答することはまれですので、すぐコードがほしい方はその旨をご明記下さい。私以外の方と交代したいと思います(代わりの方がいる保証は出来かねます)。
Re: コンテニューの仕方
有り難う御座います。
一つ一つ直せばいいんですね!
分かりやすい例もありがとうございます。
理解できたので早速試してみます。
一つ一つ直せばいいんですね!
分かりやすい例もありがとうございます。
理解できたので早速試してみます。