【问题标题】:How can I restart my game when game over?游戏结束后如何重新开始游戏?
【发布时间】:2021-01-06 16:17:50
【问题描述】:

我正在尝试统一制作一个 3d 飞扬小鸟游戏,但我不知道当小鸟撞到柱子时如何重新开始游戏。我是在 C# 中做的。

谢谢

【问题讨论】:

标签: c# unity3d


【解决方案1】:

你可以通过重新加载游戏场景来重新开始游戏

SceneManager.LoadScene("game_scene");

【讨论】:

  • 谢谢,但我想知道代码是什么,当它碰到柱子时,它实际上会做一些事情。
  • 我不知道 3D 对象,但据我所知,如果您的 GameObject 具有 Collider 组件,则统一 2D。有一个名为 OnColliderEnter2D() 的函数,带有一个 Collision 参数。当您的 GameObject 也使用碰撞器接触另一个 GameObject 时,可能会触发该功能。然后你可以简单地在它击中柱子时添加一个条件并重新启动场景
【解决方案2】:

您应该能够使用 SceneManager.LoadScene 重新加载场景。 虽然更好的选择可能只是创建一个函数,通过生成新关卡并重置玩家位置和统计数据来为您重新启动所有内容而无需重新加载场景。

【讨论】:

    【解决方案3】:

    你需要什么?

    1. 确保包含 sceneManager api
    2. 创建restartGame() 函数。
    3. 当鸟鸟撞到柱子时调用该函数。

    restartGame() 代码:

    public Void restartGame()
    {
        SceneManager.LoadScene("Your game scene name");
    }
    

    如果你不明白如何使用方法(functinos)check this

    【讨论】:

      【解决方案4】:

      您可以使用 Load Scene 方法将其加载到新场景中

      【讨论】:

        猜你喜欢
        • 1970-01-01
        • 1970-01-01
        • 1970-01-01
        • 1970-01-01
        • 1970-01-01
        • 2013-03-07
        • 2019-07-06
        • 1970-01-01
        • 1970-01-01
        相关资源
        最近更新 更多