2012-02-16 80 views
7

我正在研究创建一个基于终端的RPG,以跨平台的方式编写此接受和推荐的方法是什么? 我不确定我将使用哪种语言,但是我将需要某些功能来移动光标并更改前景色。 受NetHack等游戏的启发,这种控制方式非常理想,我希望能够编写它,以便我可以在windows和unix系统上发布它。 我已经使用了C++的ncurses,我想知道是否有类似的东西用于跨平台项目。基于终端的RPG

考虑: 的Java C++ Ç C#

回答

2

如果您打算做终端图形,可以为VT-100终端转义代码编写自己的包装函数,其中可以更改前景色和背景色并移动光标。你所要做的就是编写正确的转义码。

http://www.termsys.demon.co.uk/vtansi.htm

而且,Java的可能是跨平台的最简单的方法,虽然它显然需要运行你的游戏th0e人已经安装了Java运行时。如果你仔细编写你的代码,C和C++可以是相当跨平台的,特别是如果你没有太多的外部依赖(这对于基于文本的游戏来说不应该是必需的)。

3

我不认为有一个平台无关的替代ncurses。你最好的选择是使用Unix系统的ncurses和Windows的pdcurses。由于这些API在很大程度上是相同的,你希望不会有太多重复的代码 - 只是几个#ifdef s在这里和那里。

+0

X11版本的pdcurses是否允许您在两个平台上使用相同的库? – Jason 2012-02-16 13:08:49

+0

@Jason不是如果你想要它是基​​于终端的(OP根据标题做的)。 X11版本将在其自己的窗口中运行,而不是终端。 – sepp2k 2012-02-16 13:10:23

+0

终端本身通常是一个X11应用程序......我并不想故意不愉快,但我认为除非他想运行游戏,否则应用程序的“外观”不会有太大区别在Linux/Unix上的实际纯文本终端模式下。 – Jason 2012-02-16 13:13:13