如何检查 InputField.Text 是否包含两个随机生成的字母?
How do I check whether InputField.Text contains two randomly generated letters?
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)分别选择一个随机生成的字母。
然后当玩家在输入框中输入单词时,游戏会检查该单词是否包含随机生成的两个单词。
如果是,则程序将再次随机化两个文本框,输入字段将为空白。
否则程序不会随机化这两个文本框,玩家将不得不重试。
但是该程序不起作用。没有错误,但是当我按回车键时,没有任何反应,如图所示。
由@DerDingens 回答。
You are checking for KeypadEnter. The normal / big Enter ist Return:
docs.unity3d.com/ScriptReference/KeyCode.KeypadEnter.html.
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)分别选择一个随机生成的字母。
然后当玩家在输入框中输入单词时,游戏会检查该单词是否包含随机生成的两个单词。
如果是,则程序将再次随机化两个文本框,输入字段将为空白。
否则程序不会随机化这两个文本框,玩家将不得不重试。
但是该程序不起作用。没有错误,但是当我按回车键时,没有任何反应,如图所示。
由@DerDingens 回答。
You are checking for KeypadEnter. The normal / big Enter ist Return: docs.unity3d.com/ScriptReference/KeyCode.KeypadEnter.html.