问题标签 [libtcod]
For questions regarding programming in ECMAScript (JavaScript/JS) and its various dialects/implementations (excluding ActionScript). Note JavaScript is NOT the same as Java! Please include all relevant tags on your question; e.g., [node.js], [jquery], [json], [reactjs], [angular], [ember.js], [vue.js], [typescript], [svelte], etc.
c++ - libtcod c++ 的键盘命令功能
我最近从 SFML 切换到 libtcod 来玩我的 rougelike,因为我发现 libtcod 更适合这类游戏。我找不到任何解决方案的一个问题是如何存储键盘绑定功能。
在 SFML 中,我可以为我的 keyfunctions 执行此操作
在 libtcod 中有一个 TCOD_Key_t 结构(它将替换地图中的 sf::Keyboard::Key),它适用于 F 键、Esc 等特殊键,但对于字母“无”。
有没有办法使用 libtcod 我可以将所有键盘功能放在一张地图中?
python - Python 2.7 缩进错误
尝试在 Python 解释器中运行我的程序时出现 IndentationError:
我正在使用python 2.7版
以下代码有什么问题?:
python - Python中的Libtcod访问冲突错误
所以,像许多人一样,我正在阅读关于在 python 中使用 libtcod 的 roguelikes 教程。 http://www.roguebasin.com/index.php?title=Complete_Roguelike_Tutorial,_using_python%2Blibtcod,_part_3
我终于让一切都运行起来了,但是我在某个特定命令上遇到了错误,我不知道如何修复它或者它到底有什么问题。它似乎在教程中使用相同的命令工作,据我所知,我的代码实际上是相同的,并且我使用的是作者提供的下载链接。我的项目文件夹中有 libtcodpy、dundalk12x12_gs_tc.png、libtcod.dll 和 SDL2.dll(复制并粘贴)。如果您需要查看 .py 的其余部分,则只需查看教程第 3 部分地牢生成中的代码。它和我的一模一样,唯一我看不到的是他的 libtcodpy 文件夹,但这是他的下载链接。错误是:
问题在于调用 libtcod.console_set_char_background(con, x, y, color_dark_wall, libtcod.BKGND_SET) 时的 renderall 函数
这是库函数
libtcodpy 与 libtcod.dll 和 SDL2.dll 一起位于我的项目文件夹中。都是 64 位的,包括 python 和我在 64 位 windows 10 上的 PyCharm IDE。早先尝试 32 位,找不到 SDL2.dll。虽然我自己已经修复了这些东西。现在我无法弄清楚什么是错误以及如何在教程 XX 中重写它。抱歉,第一次在这里发帖,没有在另一个线程中看到确切的解决方案,但还有其他一些关于 SDL 问题和 32 位与 64 位的问题。
请给我找一个关于如何在 python 中正确设置 libtcodpy 的非常详细、防延迟的 youtube 视频,或者让我知道我在搞砸什么。
python - SDL:无法创建窗口
我正在尝试使用 python 和 libtcod 创建简单的 roguelike。问题是当我尝试执行此代码时,控制台显示:
代码:
python-2.7 - Python Thread 一直冻结整个程序?
在此之前,我必须说我不像其他语言那样非常熟悉 python 编程。我对寻找其他解决方案非常(也)很恼火,所以提前感谢您的帮助。
我喜欢在空闲时间制作 Roguelike 游戏,所以我尝试了多种方法来使用 C++、C、C#、HTML5 等为我自己的游戏做自己的“引擎”实现和引擎。我以前从未使用过LibTCOD 因为我永远无法让它在 C++ 中工作,唉,这是我最喜欢的编程语言,这是一个我现在不打算谈论的问题,因为它在 C++ 线程中。
可怕的是,LibTCOD 看起来很棒,但提及和精确的文档太少,所以我几乎只能独自工作。最近几天我做了一个小python包来轻松管理python和windows的LibTCOD功能,并使主游戏代码尽可能小。
我尝试添加的最终实现是将主游戏循环传递给线程,处理每个基本游戏功能(如键盘/鼠标更改和屏幕更新),并通过函数调用运行它。
一切正常......但不是在第一个循环步骤之后,因为它冻结了一切并停止工作。
基本上这是有问题的代码:
那里使用的大多数变量都是为了更清晰的调试理解目的,(即使它冻结了“干净”功能)所以我必须把它们放在那里。
上面的'def'是从这里调用的:
对于“事件”系统,我在互联网上找到了这个:
注意:我正在使用 Python 2.7,这是唯一适用于该库的版本,真可惜。
我认为事件系统可能是主要问题。再次阅读代码,我想我也应该对 while 条件应用锁,因此对整个循环,还是没有必要?是否以正确的方式应用了锁?还是我应该使用其他方法使线程正常工作?
顺便提一下,如果主游戏循环在没有线程的主脚本上执行,则一切正常,但是当作为线程调用时一切都失败,或者即使它不是线程本身,而是从“外部”调用,就像在包,所以它不能是图书馆的问题(我认为)。
我不得不说,我只在 Python 中使用过 LibTCOD,因为我不能让它只在它上面工作(至少在 Windows 上)。如果有帮助,我已经看到 python 库的代码只是原始 C 库的“绑定”,所以理解 python 代码并不是什么大问题。对于最后一个陈述,我认为这也是 python 线程的问题,还是我错了?如果我可以做些什么来修复线程工具,请帮助我!
谢谢你们!我希望我的谈话没有让你感到厌烦。
python - Libtcod python 3 在尝试移动角色时崩溃?
我正在尝试制作一个基本的 roguelike 并遵循本教程:http : //www.roguebasin.com/index.php?title=Complete_Roguelike_Tutorial,_using_python3%2Blibtcod,_part_1 我尝试使用 libtcod 使角色响应鼠标移动。我按照教程进行,一切顺利,我的角色出现在屏幕上,但由于某种原因,当我尝试执行移动命令时程序崩溃了。作为参考,我的代码在这里:
我将问题发布到另一个论坛,他们说我应该将 playerx 和 playery 定义为全局,所以我将其添加到 handle_keys() 函数中,但它只是在启动时崩溃。
python - 在 MacOS 上为 Rougelike 安装 libtcod
我一直在关注 roguebasin 上的 Python3 指南(http://www.roguebasin.com/index.php?title=Complete_Roguelike_Tutorial,_using_python3%2Blibtcod,_part_0)并且在 libtcod 安装过程中卡住了。我已经完全按照指南进行操作,当涉及到验证 libtcod 安装时,运行命令时
我得到:
我不确定我做错了什么,或者我是否错过了任何步骤。关于如何验证是否已安装 libtcod 以便继续执行本指南的后续步骤的任何想法?
谢谢
编辑添加在我正在关注的指南的链接中
python - Heroku 服务器上的 Roguelike 游戏:Libtcod 依赖
我正在尝试在 Heroku Python 应用程序中提供游戏逻辑。我正在将libtcod 库用于一些基本任务(主要是视野计算),但我无法让它在那里运行。
现在它被挂在不存在的 libSDL 上。崩溃日志:
自述文件说:“为了能够在 Linux 上编译 libtcod,请确保安装了以下软件包:gcc、g++、make、zlib、libpng12、libsdl1.2、upx、electric-fence、libpng12-dev、libsdl1.2-开发“
我尝试将 libSDL 添加到我的 pipfile 和 requirements.txt 中,但这并不有效。