首页 > 解决方案 > 使用对 Textfield Unity 的引用编译错误

问题描述

已解决:“GetKeyDown”不应使用“Enter”,而应为“Return”

您好,我一直在从事 Unity 项目,我不确定这是否是正确的地方,但是当我尝试运行以下 C# 脚本时,我不断收到编译器错误。移动脚本正在运行并且没有导致任何错误,我只是在添加文本脚本后出现编译器错误。

using System.Collections.Generic;
using UnityEngine;
using UnityEngine.UI;

public class MovementScript2 : MonoBehaviour
{
    public static int playersScore = 0;
    Text score;
   
    void Start()
    {
        score = GetComponent<Text> ();
    }
    public float moveSpeed = 15f;
    public float turnSpeed = 70f;

    void Update()
    {
        if (Input.GetKey(KeyCode.UpArrow))
            transform.Translate(Vector3.forward * moveSpeed * Time.deltaTime);

        if (Input.GetKey(KeyCode.DownArrow))
            transform.Translate(-Vector3.forward * moveSpeed * Time.deltaTime);

        if (Input.GetKey(KeyCode.LeftArrow))
            transform.Rotate(Vector3.up, -turnSpeed * Time.deltaTime);

        if (Input.GetKey(KeyCode.RightArrow))
            transform.Rotate(Vector3.up, turnSpeed * Time.deltaTime);

        if (Input.GetKeyDown(KeyCode.Enter))
            playersScore += 10;

            score.text = "Score: " + playersScore;
    }
}

标签: c#visual-studiounity3d

解决方案


它与错误消息状态完全相同:KeyCode.Enter不存在。

我想你更想使用的是KeyCode.Return


推荐阅读