4

C で単純な端末ベースのダンジョン スタイルのゲームを作成しようとしていますが、ユーザーが影響を与えるさまざまなプロセスについてリアルタイムのフィードバックをユーザーに提供したいと考えています。

何年も前に kbhit() を使用したことを覚えていますが、プログラムの実行中に CPU が 100% になったことも覚えています。これは絶対に避けたいです。そして、私は今Linuxで働いています。

テキストベースのアドベンチャー ゲームのダンジョンにいるとしましょう。ダンジョンは封印されています。部屋の空気はこれだけです。そこに長くいるほど、酸素が少なくなります。部屋の酸素レベルをリアルタイムで報告しながら、同時にユーザーからのコマンドを受け入れたいです。

これを行う方法はありますか?

編集:私が持っていた1つのアイデアは、2つのターミナルウィンドウを使用することでした。コマンドは 1 つの端末で取得され、それらのコマンドの結果はテキスト ファイルに書き込まれます。もう一方の端末には、リアルタイムのものを実行するプログラムが実行されており、レートなどの更新について同じテキスト ファイルを定期的にチェックします。理想的には、これを 1 つのウィンドウで実行したいと考えています。

4

1 に答える 1

3

確かにそれを行う方法があります。ncursesを見てください。それが進むべき道だと思います。

于 2014-06-07T20:50:01.493 に答える