按下新游戏按钮时,C#Unity 2D游戏菜单无法启动游戏

时间:2015-04-27 02:53:36

标签: menu unity3d 2d 2d-games

游戏应该在按下新游戏按钮时启动,但是当我在菜单中的任何位置按下鼠标左键时,团结会启动游戏。我将c#文件作为组件添加到新游戏按钮中,但它也没有完成任务。 这是我的代码:

using UnityEngine;
using System.Collections;

public class Newgame : MonoBehaviour {

    public void Update()
    {
        if (Input.GetMouseButtonDown(0))
        {
             Application.LoadLevel("TestScene1");
        }

    }
}

3 个答案:

答案 0 :(得分:3)

如果您使用的是 Unity 3D 4.6或以上

只需创建一些公共功能

public void loadScene()
{
    Application.LoadLevel("TestScene1");
}
单击

选择您创建的功能。

add click event

添加所选功能的步骤

  1. 添加该脚本具有对游戏对象的loadscene函数。

  2. 单击上面显示的单击(按钮)中的(+)按钮。

  3. 3.将游戏对象拖放到创建的字段中。

    1. 在下一个下拉列表中选择您的脚本而不是您的功能
    2. 这就是你很高兴。

答案 1 :(得分:0)

您是否检查了构建设置(文件>构建设置...)以确保已将TestScene1添加到“构建场景”部分(并且选中该框)?

答案 2 :(得分:0)

发生这种情况的原因是,如果用户在任何地方按下鼠标按钮,Input.GetMouseButtonDown将返回true,而不仅仅是脚本附加到的GameObject上。

如果您使用Unity 4.6或更高版本,Sundar Bons'答案是最好的方法。

如果没有,您可以使用OnGUI功能:

OnGUI()
{
    if (GUI.Button(new Rect(10, 10, 150, 100), "New Game"))
        Application.LoadLevel("TestScene1");
}

如果您使用此方法,请务必在调用Rect构造函数时更改硬编码值,以确保该按钮位于游戏的正确位置。