问题标签 [libgosu]

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.

0 投票
2 回答
252 浏览

ruby - 如何使用 Ruby Gosu 库绘制子图像?

我正在尝试使用此子图像方法Image在屏幕上绘制实例的子图像。这样做似乎很简单,但是当我调用该函数时,它返回 a而不是 new 。NilClassImage

主图像定义为:

当我运行@bg_img.draw(0,0,0)它时,它会正常绘制图像,但是当我尝试将其转换为新图像时:

该变量test被分配了一个空值,因此不能.draw。我在这里做错了吗?或者,还有另一种绘制子图像的方法吗?提前致谢。

0 投票
3 回答
57 浏览

ruby - ruby catch 定义的类

在 Ruby Gosu 中构建瓷砖游戏或模拟总是让我最终得到一个由他们的班级保存的所有可用瓷砖的列表。例如[Pipe, PipeJunktion, Box, Pump]等等。每个类都定义在几个单独的文件之一中,这是我从主程序中需要的。现在,每次我向游戏添加新图块时,我都必须自己将类添加到此列表中。我想知道是否有办法从文件中捕获所有加载类。

类似于以下内容:

会很方便。或者这可以通过某种方式用模块解决吗?

0 投票
2 回答
4411 浏览

ruby - nil:NilClass (NoMethodError) 的未定义方法“-”

我不知道如何修复它,所以它从健康类变量中取出十个,因为它说这是一个错误。

这是main中的代码:

这是@object.attacked 导致的地方:

如果需要,还有 yaml 文件:

我试图将 .to_i 放在@health 之后,如下所示:

但它只是带来了另一个错误说:

0 投票
1 回答
203 浏览

ruby - Ruby/Gosu 获得弹跳图像

我正在关注“Learn game programming with ruby​​”一书,其中一个练习是使用 gosu 加载图像并使其从屏幕边缘反弹。我跟着练习,图像从左上角和左上角反弹得很好,但会在屏幕边缘下沉一段时间,然后从底部和右侧反弹。

我认为这与 ruby​​ 如何使用图像的右上角作为图像的坐标有关,但我认为

应该解决这个问题,我怎样才能让它像我想要的那样工作?提前致谢

0 投票
1 回答
118 浏览

ruby - Gosu 库与 windows 8.1 (ruby 2.3) 不兼容

我最近在 Windows OS 8.1 (Surface Pro 2) 上安装了 Ruby 2.3 和 Gosu 2d 游戏开发库。两者的安装都快速而成功。使用该库,我编写了一个基本程序(使用 Sublime Text 3),旨在生成一个空白窗口。尽管我尝试调试,控制台仍继续返回此错误消息:

这是我写的基本程序:>>>

<<<

一般来说,我对编程很陌生,所以我试图解释这个错误信息是徒劳的。我在装有 OSX Sierra 的 MacBook 上安装并使用了 Gosu,一切正常,让我相信问题与操作系统有关。我知道过去由于系统依赖性问题,Windows 操作系统上的 Gosu 库存在多个问题,但这些问题的解决方案已被证明无济于事。有人可以向我解释这个错误信息吗?Gosu 库是否可能与 Windows OS 8.1 不兼容,或者我跳过了在 Windows 上设置 Gosu 的步骤?

我会很感激我能得到的任何帮助。

0 投票
1 回答
65 浏览

ruby - 为什么 ruby​​-prof 将“Kernel#`”列为资源消耗?

ruby-prof用来确定我在 Ruby 中构建的小型 2D 游戏引擎的 CPU 时间在哪里。除了主Kernel#`条目之外,这里的一切看起来都很正常。这里的 Ruby 文档建议这是一个用于获取在子 shell 中运行的命令的 STDOUT 的函数:

用于命令的 ruby​​ 文档的图像

关于为什么会发生这种情况的任何建议?我相当有信心我没有在我的代码中使用它——除非它以某种方式被间接调用。不知道从哪里开始寻找那种东西。

0 投票
1 回答
41 浏览

ruby - Ruby I/O 存在问题

我对 Ruby 代码有相当多的了解,但我当前的项目确实存在问题。我使用 Gosu 制作 2D 游戏(一旦我弄清楚如何制作简单的 3D 游戏),所以我需要一个分辨率。

这就是我的问题所在,为什么 Ruby 在查看设置文件是否存在时总是给我一个错误?我一直试图让它与不存在的文件一起工作,这一直给我错误,“'initialize': No such file or directory @ rb_sysopen - ./settings.set (Errno::ENOENT)”最近几天让我很烦。当我离开创建文件时,该文件没有问题并且实际上按预期工作,但我希望它是如果文件被从某人的计算机上删除的地方,它会重建文件并使用默认值创建一个新文件。

这是它不断崩溃的区域:

我曾尝试在此站点以及许多其他站点上寻找修复程序,但到目前为止没有人能够提供帮助。

0 投票
1 回答
452 浏览

ruby - Ruby:在使用该对象循环列表时删除对象

所以我有多个列表来跟踪 2D 游戏中的对象,但如果这些对象离开屏幕,我想删除这些对象,以便它们不再更新。我下面的内容对我有用,但这不适用于其他语言。通常我必须创建另一个“销毁列表”来保存我想要销毁的对象,然后再次循环以删除它们,因为在迭代时无法从列表中删除对象而不会出现一些明显的故障。

Ruby 只是在执行此操作时没有显示任何可见的故障,还是 Ruby 的数组在从列表中删除多个可能的对象时工作方式不同,而它仍在迭代?

0 投票
0 回答
326 浏览

ruby - 嵌入 ruby​​ gosu 游戏以在浏览器中玩

我玩过一些 gosu 教程来使用我的 mac 创建一个简单的 gosu 游戏。我按照https://www.libgosu.org/ruby.html中的说明进行操作

我的问题是:可以使用诸如https://github.com/opal/opal-browser之类的东西使用宝石“蛋白石”将 gosu 游戏设置为在网站上运行

Opal 编译 game.rb 文件但不添加 gem。所以我得到一个错误,找不到需要文件。

我想设置一个 index.html 页面并在 Web 浏览器中运行游戏,并使用一个运行 bundle exec ruby​​ game.rb 的按钮,而不是从控制台运行文件。

这个问题Ruby: Running Gosu game from a web browser可能问过同样的问题,但我的问题是关于使用 Google Native Client 工具来解决它。

0 投票
1 回答
197 浏览

ruby - 我如何更改非 Ruby Gosu 的角色图像

我正在使用 ruby​​ gosu 库以原始口袋妖怪游戏的风格构建一个基本游戏。我设法弄清楚如何移动最初加载的精灵,但我不知道如何清除该精灵并在其位置绘制新的精灵,例如后视图。

我一直在查看文档并遇到了“插入”方法,尽管我不确定这是否是我想要的。有什么帮助吗?

我在初始化方法中创建了 var,然后像这样绘制它: