【问题标题】:Close a game in Godot在 Godot 中关闭游戏
【发布时间】:2021-07-22 06:39:12
【问题描述】:

我正在使用 Godot 创建一个网页游戏。
为了关闭游戏,我尝试使用`get_tree().quit()`。
如果我在 IDE 上使用它,它可以工作。当我在我的服务器上尝试它时(导出项目后)它不起作用。
我确定导出设置没问题。
如何关闭游戏?
还有,如何添加超文本链接(类似于 html `` 标签)?
谢谢你的回答,对不起我的英语不好

【问题讨论】:

    标签: html game-engine godot


    【解决方案1】:

    退出游戏

    在网络上,使用

    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 构建,它将导航浏览器,但如果不是,它将尝试打开默认浏览器。

    【讨论】:

      猜你喜欢
      • 2021-07-22
      • 2021-02-26
      • 2014-11-08
      • 1970-01-01
      • 2021-04-14
      • 2010-09-10
      • 1970-01-01
      • 2018-05-25
      • 1970-01-01
      相关资源
      最近更新 更多