#1
by にこよん » 6年前
とあるシューティングゲームでリプレイ機能なるものを作ってみたいと思ったのですが、
そのようにして作ればいいのでしょうか?
効率のいい仕組みが知りたいです(DXライブラリを使って実装する場合の)
プレイ時⇒思いついたのは入力されたキーボードを毎ループ保存する(数秒おきにファイルに保存
再生時⇒fileから読み込んだキーボードの値をキーボードから打ち込まれたようにGetKeyから返す
ただ、GetRandを多用しているためプレイヤーが全く同じ動きをしても意味がありません
なのでGetRandのラッパー関数を作成して
int GetRand_Replay(int RandMax) {
static int s = 0;
SRand(s);
GetRand(RandMax);
}のようにすれば多分GetRandが呼ばれる順番も同じになるはずなのでできるかなと思ったのですが
ファイルに書き出し続けることなども含めいろいろ無理があるように感じます
参考になるサイトなどをご教授くださいm(__)m
とあるシューティングゲームでリプレイ機能なるものを作ってみたいと思ったのですが、
そのようにして作ればいいのでしょうか?
効率のいい仕組みが知りたいです(DXライブラリを使って実装する場合の)
プレイ時⇒思いついたのは入力されたキーボードを毎ループ保存する(数秒おきにファイルに保存
再生時⇒fileから読み込んだキーボードの値をキーボードから打ち込まれたようにGetKeyから返す
ただ、GetRandを多用しているためプレイヤーが全く同じ動きをしても意味がありません
なのでGetRandのラッパー関数を作成して
int GetRand_Replay(int RandMax) {
static int s = 0;
SRand(s);
GetRand(RandMax);
}のようにすれば多分GetRandが呼ばれる順番も同じになるはずなのでできるかなと思ったのですが
ファイルに書き出し続けることなども含めいろいろ無理があるように感じます
参考になるサイトなどをご教授くださいm(__)m