2012-01-31 17 views
0

私はrougelikeを作成しようとしていますが、私は別のレイヤーのウィンドウを使用しています。一番下のものがマップで、上のものがエンティティレイヤです。私はプレイヤーキャラクターを持っており、スクリーン上でそれらを動かしたい。私は新しい@(プレイヤーが表現されている方法)をどこに移動しているのかを印刷しています。その前に地図レイヤーを見ることができるように、キャラクターの位置に空白を入れようとしています。私はNULLを使ってみましたが、^ @を出力します。私は何を使うことができますか?PDCursesの空白文字

答えて

0

空白の文字(' ')を使用するか、32または0x20のほうが好きな場合は、使用してください。

NULLが実際に定義されています

#define NULL 0 

だからあなたはASCIIコード0の文字を書いている、それは時々はCtrl + @として表現NUL文字、である、または^ @。

+0

''または32を使用する際の問題は、基本的にバックグラウンドを表示しない空白を残すことです。そこで、白いアイテムを持つマップレイヤーの代わりに、それはちょうど黒い四角形になります。 – user975989

+0

ああ、そうだ。わかりませんが、私はPDCursesに透明なウィンドウがないと思います。一番最初のレイヤーが再描画されないなど、偶然にもうまくいきます。その場合、後ろのレイヤーにある文字を確認して、そのレイヤーに描画してください。しかし、あなたがそうするなら、最初の層は必要ありません! – rodrigo

+0

ええ、それは問題です。私はブランクを取得する方法がない場合は、私はちょうどそれを使用しますね。 – user975989

0

現代のマシンでは、各編集後に画面を消去して画面全体を完全に再描画すると、パフォーマンス上の問題が発生しない可能性があります。私はそれが最適な解決策ではないことを知っていますが、その種のトレイルアーチファクトをなくすことができます。

関連する問題