我正在尝试构建猜词游戏。我的输入字段应该接受一个字符串,如果正确,请转到下一页;如果不正确,请返回到菜单页。目前,我的场景将转到下一场景以获取正确和错误答案。
public class anser : MonoBehaviour {
private string secretWord = "eje";
private string guessWord;
public void GetInput(string guessWord) {
//Invoke ("CompareGuesses", 1f);
if (secretWord == guessWord) {
SceneManager.LoadScene ("Front Page");
} else if (secretWord != guessWord) {
SceneManager.LoadScene ("Question2");
}
}
}
答案 0 :(得分:2)
我不确定guessWord
字段的用途,您所需要的只是guessWord
方法的GetInput()
参数。
此外,您需要确保场景名称正确(检查大写字母和空格),并确保其他脚本实际上正在调用GetInput()
方法(您未发布任何代码)调用此方法)。
这是代码的清理版本,应执行您想要的操作:
// The class name "anser" was misspelled. Also you typically use PascalCase for class names.
public class Answer : MonoBehaviour
{
private string secretWord = "eje";
public void GetInput(string guessWord)
{
if (secretWord == guessWord.ToLower())
{
SceneManager.LoadScene("Question2");
return; // eliminates the need for an else clause
}
SceneManager.LoadScene("Front Page");
}
}
编辑:根据Scriven在评论中的建议,我更改了LoadScene()
参数以反映OP的期望行为。还为guessWord
参数添加了一点输入验证。