呪いで特定のスペースを占めるキャラクターを保存するにはどうすればよいですか?
質問
Cursesを使用してC ++でシンプルなコンソールゲームを作成し始めています。最初のプロジェクトは、歩き回るための大きな部屋です。キャラクターが歩いているので、彼が次の広場に歩いて行くと、そこにあったものは何でも復元できます。問題は、特定の位置でキャラクターを変数に保存する方法がわからないことです。驚いたことに、包括的な呪いのドキュメントを見つけることができないようです。私はこのような機能を探しています:
int storage = mvsavechar(1,1);
そのような機能は存在しますか?
解決
あなたが探しています mvinch():
int storage = mvinch(1, 1) & A_CHARTEXT;
他のヒント
あなたはあなたのプログラムの何らかのデータ構造に部屋のデータを保存する必要があります。 Cursesは出力ライブラリです。
スクリーン状態を80x24(または何でも)チャーアレイに保存します。しかし、おそらくあなたはあなたの「大きな部屋」の寸法に合うように配列をサイズするでしょう。部屋が非常に大きい場合は、(たとえば)座標と内容のリンクされたリストを使用して、スパースアレイに相当するものを保存できます。
初期端末にはおそらく画面の内容について尋問される能力がなかったため、呪いはおそらくあなたが望む関数を持っていないでしょう。
呪いについてはあまり知りません。呪いが画面の内容の詳細を維持した場合、あなたが望むことは可能かもしれませんが、それは非常にありそうもないようです。
所属していません StackOverflow