1

curses を使用して C++ で簡単なコンソール ゲームをいくつか作成しようとしています。私の最初のプロジェクトは、歩き回るための大きな部屋です。キャラクターは歩いているので、次のマスに行くと、そこにあったものを復元できます。問題は、特定の位置にある文字を変数に保存する方法がわからないことです。驚いたことに、curses の包括的なドキュメントが見つからないようです。私はこのような関数を探しています:

int storage = mvsavechar(1,1);

そのような機能は存在しますか?

4

3 に答える 3

1

あなたはmvinch()を探しています:

int storage = mvinch(1, 1) & A_CHARTEXT;
于 2010-11-05T15:48:22.767 に答える
0

画面の状態を80x24(またはその他)のchar配列に格納します。ただし、「広い部屋」のサイズに合わせてアレイのサイズを変更することもできます。部屋が非常に大きい場合は、(たとえば)座標とコンテンツのリンクリストを使用して、スパース配列に相当するものを格納できます。

初期の端末には画面の内容について問い合わせる機能がなかったため、Cursesにはおそらく必要な機能がありません。

呪いについてはよくわかりません。呪いが画面の内容の詳細を維持していれば、あなたが望むことは可能かもしれませんが、それは非常にありそうもないようです。

于 2010-11-05T15:42:55.987 に答える
0

部屋のデータをプログラムのある種のデータ構造に保存する必要があります。Cursesは出力ライブラリです。

于 2010-11-05T15:44:21.313 に答える