【发布时间】:2021-07-22 06:39:12
【问题描述】:
我正在使用 Godot 创建一个网页游戏。
为了关闭游戏,我尝试使用`get_tree().quit()`。
如果我在 IDE 上使用它,它可以工作。当我在我的服务器上尝试它时(导出项目后)它不起作用。
我确定导出设置没问题。
如何关闭游戏?
还有,如何添加超文本链接(类似于 html `` 标签)?
谢谢你的回答,对不起我的英语不好
【问题讨论】:
标签: html game-engine godot
【问题讨论】:
标签: html game-engine godot
在网络上,使用
get_tree().quit()
应该可以。也就是说,它应该停止运行时。游戏将不会继续运行。 它不会关闭浏览器选项卡。事实上,浏览器对关闭标签的脚本有限制。
注意:确保您使用的是 Godot 3.2.3 或更新版本(请参阅 #39604)。 我试过了,效果很好。
您可以使用LinkButton,这是一个看起来像超链接的按钮。并且您想将其"pressed" 信号连接到您使用OS.shell_open 的脚本,例如:
OS.shell_open("https://example.com")
注意:这会在网络导出中产生一个新标签。在桌面上,它会打开默认浏览器。
由于您询问关闭游戏和建立链接,我冒昧地猜测您真正想要的是导航(离开游戏并转到另一个页面),您可以通过 JavaScript.eval 完成此操作,例如:
JavaScript.eval("window.location.href='https://example.com'")
注意:这只能用于网络导出。
您可以使用OS.get_name 来识别平台。
例如,您可以这样做:
if OS.get_name() == "HTML5":
JavaScript.eval("window.location.href='https://example.com'")
else:
OS.shell_open("https://example.com")
如果这是一个 web 构建,它将导航浏览器,但如果不是,它将尝试打开默认浏览器。
【讨论】: