【问题标题】:How do I check whether InputField.Text contains two randomly generated letters?如何检查 InputField.Text 是否包含两个随机生成的字母?
【发布时间】:2021-02-20 07:10:13
【问题描述】:
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 = "";
        }
    }
}

参考my game

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

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

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

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

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

【问题讨论】:

标签: c# unity3d card


【解决方案1】:

@DerDingens 回答。

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

【讨论】:

    猜你喜欢
    • 1970-01-01
    • 1970-01-01
    • 1970-01-01
    • 1970-01-01
    • 1970-01-01
    • 2020-12-12
    • 1970-01-01
    • 1970-01-01
    • 2015-01-04
    相关资源
    最近更新 更多