为游戏创建 shell 输出,但不希望窗口随着游戏板的每次更新而滚动。怎么做?
在 Ruby 中工作。
curses
你能很好地控制你的应用程序的文本输出吗?
使用以下内容效果很好。不使用宝石。
require "curses"
include Curses
class Display
def self.show board
win = Window.new(20, 200, 0, 0) # 20 lines x 200 chars
win.addstr board
win.refresh
win.close
end
def self.initialize
crmode
curs_set 0 # Hide cursor
init_screen
end
end
如何使用:
Display.initialize
while true do
Display.show board
board.update # Or whatever the game needs to do...
end
参考:http ://www.ruby-doc.org/stdlib-1.9.3/libdoc/curses/rdoc/Curses.html