2011-05-01 13 views
1

嗨,所以我通過控制檯窗口進行遊戲,我想知道是否有任何方法可以讓一個或兩個文本字符的位置改變或消失。通常要做到這一點,我必須告訴控制檯重新輸入每一個字符和線條,但這需要很長的時間(1秒fps加0.5秒重新輸入場景)。如何讓控制檯文本刷新而不是重新鍵入?

有什麼方法可以重新新鮮或更改控制檯上顯示的一行或兩行或「字符」,這樣等待控制檯重新輸入我的24行,每一行串? (由文字組成的場景)

謝謝! =)

btw ...有沒有人記得,在窗口中的小復活節彩蛋是一個完整的星球大戰電影在控制檯中的文本?我希望遊戲能夠像那樣平滑!

+1

'telnet towel.blinkenlights.nl' – 2011-05-01 03:18:26

回答

3

您需要使用外部庫來與控制檯交互,因爲C++沒有這些功能,但這是可能的。

我的這種東西的goto是ncurses。它非常簡單,快速設置和跨平臺。但它的舊的,它的年齡顯示。 (如果你在windows上,你必須使用pdcurses;相同的功能,不同的包)。

還有控制檯特定的方式來做到這一點。特別是,Windows提供了用於執行這些操作的API。

3

您需要ncurses庫。 查看console print w/o scrolling的原因和示例。

另外谷歌的流氓/ urogue/nethack遊戲的源已經這樣做。

+0

是的,我用這個來實現我的操作系統作業「生產者 - 消費者」。 – 2011-05-01 03:36:57

相關問題