• 締切済み

格闘ゲームのコマンド判定について

格闘ゲームで、プレーヤーが入力したキーに対して動きを与えるときに、プログラム的にはどのように実現すればよいでしょうか? 配列に順に入れていって、それを判定するとか言う方法でしょうか? どなたかおねがいします。

みんなの回答

  • toysmith
  • ベストアンサー率37% (570/1525)
回答No.2

コマンド体系にもよりますが、「配列に溜め込んで入力終了後に判定」というやり方では難しいと思います。 たとえばストリートファイター系のコマンド体系で←→Pを1コマンドとした場合、←(ガード)なのか←→Pなのかを判定するのは「配列の溜め込むやり方」では難しくなります。 タメ系のキャラを採用するとなるとタメ時間判定が加わるため、単純にキー操作だけを配列に入れても役に立ちません。 これが「バーチャファイター的2択あり」になるともっとややこしいことになります。 #1の回答とかぶりますが、UMLに「状態図」という書式があります。 体系化された状態遷移図としては最もポピュラーで参考書も多いので状態遷移をUML状態図で書いてみるのはどうでしょう。

amplitude
質問者

お礼

お答えどうもです。 友達と、あれは配列じゃないのか、いやもしかしたらリストかも・・・とかいう話をしていたのですが、タメ系のキャラを考えると確かに厳しいですね。。 UML状態図、がんばって勉強しようと思います。 ありがとうございました。

  • a-kuma
  • ベストアンサー率50% (1122/2211)
回答No.1

こういうのは「状態遷移表」を使って実装します。 ・今の状態 ・状態毎に、あるイベントを受け付けたときの   ・すべき挙動   ・次の状態 を持つように作ります。 どんな情報処理の教科書でも、状態遷移については記述されているはずなので、 詳しくは、そちらを勉強してください。

amplitude
質問者

お礼

回答ありがとうございます。 状態遷移表・・・去年、習ったような覚えがあるのでなんとなくイメージはつかめました。 ただ、うる覚えなので、本を読んでみます。 ありがとうございました。

関連するQ&A