Warning: file_get_contents(/data/phpspider/zhask/data//catemap/6/opengl/4.json): failed to open stream: No such file or directory in /data/phpspider/zhask/libs/function.php on line 167

Warning: Invalid argument supplied for foreach() in /data/phpspider/zhask/libs/tag.function.php on line 1116

Notice: Undefined index: in /data/phpspider/zhask/libs/function.php on line 180

Warning: array_chunk() expects parameter 1 to be array, null given in /data/phpspider/zhask/libs/function.php on line 181
Unity3d 如何禁用游戏对象,使其在再次启动游戏时不会再次打开_Unity3d_Game Development - Fatal编程技术网

Unity3d 如何禁用游戏对象,使其在再次启动游戏时不会再次打开

Unity3d 如何禁用游戏对象,使其在再次启动游戏时不会再次打开,unity3d,game-development,Unity3d,Game Development,我制作了一个游戏,在这个游戏中,我询问用户的姓名,然后单击“下一步”按钮显示。 但每当我打开游戏时,它总是问我名字。 我想做一些事情,这样它会询问名字,然后保存它,并禁用以前的游戏对象,通过它询问三个名字。 因此,每当我打开游戏,它只显示我的名字,而不是问我的名字 您可以使用Playerprefs在本地保存名称。单击“下一步”按钮后,使用Playerprefs保存名称,如下所示 PlayerPrefs.SetString("Name", m_PlayerName); 在游戏开始时,您可以检查名

我制作了一个游戏,在这个游戏中,我询问用户的姓名,然后单击“下一步”按钮显示。 但每当我打开游戏时,它总是问我名字。 我想做一些事情,这样它会询问名字,然后保存它,并禁用以前的游戏对象,通过它询问三个名字。
因此,每当我打开游戏,它只显示我的名字,而不是问我的名字

您可以使用Playerprefs在本地保存名称。单击“下一步”按钮后,使用Playerprefs保存名称,如下所示

PlayerPrefs.SetString("Name", m_PlayerName);
在游戏开始时,您可以检查名称是否在本地设置,并根据需要禁用游戏对象。您可以检查名称密钥是否在本地存在,如下所示:

hasName = PlayerPrefs.HasKey("Name");
如果首选项中存在键,则返回true

因此,如果返回true,您可以禁用游戏对象,而不再询问名称。
但是,如果返回false,则表示用户尚未输入名称,因此您可以显示页面/游戏对象并要求用户输入其名称

如何保存名称?如果已设置名称,则再次运行游戏时,请禁用该对象