1
using System.Collections;
using System.Collections.Generic;
using System.Globalization;
using System.Security.Cryptography.X509Certificates;
using UnityEngine;
using UnityEngine.UI;

public class LetterRandomiser : MonoBehaviour
{
    public char[] characters; 

    public Text textbox; 

    public InputField mainInputField;

    void Start() /*when the game starts*/
    {
        char c = characters[Random.Range(0,characters.Length)];
        textbox.text = c.ToString(); 
    }

    void Update()
    {
        if (Input.GetKeyDown(KeyCode.KeypadEnter) && mainInputField.text.Contains(textbox.text) == true)
        {
            char c = characters[Random.Range(0, characters.Length)];
            textbox.text = c.ToString();
            mainInputField.text = "";
        }
        else if (Input.GetKeyDown(KeyCode.KeypadEnter) && mainInputField.text.Contains(textbox.text) == false)
        {
            mainInputField.text = "";
        }
    }
}

参考我的游戏

我正在尝试对我的游戏进行编程,以便两个文本框(firstChar 和 secondChar)分别选择一个随机生成的字母。

然后当玩家在输入框中输入一个单词时,游戏会检查该单词是否包含随机生成的两个。

如果是这样,那么程序将再次随机化这两个文本框,并且输入字段将为空白。

否则程序不会随机化这两个文本框,玩家将不得不重试。

但是该程序不起作用。没有错误,但是当我按下回车键时,没有任何反应,如图所示。

4

1 回答 1

1

由@DerDingens 回答。

您正在检查 KeypadEnter。正常/大 Enter ist 返回:docs.unity3d.com/ScriptReference/KeyCode.KeypadEnter.html。

于 2020-11-09T13:33:57.083 回答