如何在pyGame窗口中插入控制台?

4
我在制作一个文本冒险游戏,我想要加入 pyGame 动画、插图和 HUD!如何引入这个控制台?谢谢!
2个回答

2

++。实现基本控制台比听起来容易得多。 - Eli Bendersky
你介意给我提供一些实现基本控制台的示例代码吗?我试图使用pyGame-console库,但似乎与3.1存在兼容性问题。 - Declan
我从未尝试在Pygame中实现控制台 - 我一直认为这会很棘手。但是如果Eli说比听起来容易,我可能会稍后尝试一下。听起来像一个有趣的项目。 - Peter Collingridge

0

对于您的游戏,您可以使用subsurface来处理不同屏幕“部分”。

使用Python 3x会遇到多个库的问题,这些库未为您预编译。如果可以的话,使用2.7或2.6将简化事情。(有一个Python2.7二进制文件,但不在首页上)

控制台并不太难。您需要拆分组件,决定您需要什么。 从一个小项目开始,逐步实现功能。

  1. 键盘输入,将字母打印到控制台上
  2. 从字符串中渲染文本
    1. 位块缓存的文本。如果你感兴趣,稍后会有演示代码。
  3. dict() 字符串命令,其值为函数名称。
  4. 绘制最后10行文本
  5. up = 滚动浏览命令历史记录
  6. 允许使用命令别名,例如 "n" 和 "north" 将指向 move_north
    1. 使用类实现:Command()。它存储所有别名的列表。

commands = { "n" : move_north, "s" : move_south, "fps" : toggle_fps, "help" : print_help }

按回车键时,如果键存在,则调用dict的值:

if cmd in commands:
    commands[cmd]()
    # same as commands["n"]()

你甚至可以让控制台的print_help()函数使用函数文档字符串。


网页内容由stack overflow 提供, 点击上面的
可以查看英文原文,
原文链接