【问题标题】:Assets\BlinkScript.cs(9,12): error CS0246: The type or namespace name 'Text' could not be foundAssets\BlinkScript.cs(9,12):错误 CS0246:找不到类型或命名空间名称“文本”
【发布时间】:2021-02-14 23:46:49
【问题描述】:

每次我尝试开始游戏时都会出现错误

Assets\BlinkScript.cs(9,12):错误 CS0246:找不到类型或命名空间名称“Text”(您是否缺少 using 指令或程序集引用?)

我尝试了一切,现在我不知道该怎么做是我的代码有人请帮助我

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

public class BlinkScript : MonoBehaviour
{
    public int Uses;
    public float cooldown, distance, speed, destinationMultiplier, cameraHeight;
    public Text UIText;
    public Transform Cam;
    public LayerMask layerMask;

    int maxUses;
    float cooldownTimer;
    bool blinking = false;
    Vector3 destination;
    ParticleSystem trail;


    void Start()
    {
        trail = transform.Find("trail").GetComponent<ParticleSystem>();
        maxUses = Uses;
        cooldownTimer = cooldown;
        UItext.text = Uses.ToString();
    }

    void Update()
    {
        if(Input.GetKeyDown(keyCode.Q))
        {
            Blink();
        }

        if (Uses < maxUses)
        {
            if (cooldownTimer > 0) cooldownTimer -= Time.deltaTime;
            else { Uses += 1; cooldownTimer = cooldown; UItext.text = Uses.ToString(); }
        }

        if (Blinking)
        {
            var dist = Vector3.Distance(transform.position, destination);
            if(dist > 0.5f)
            {
                transform.position = Vector3.MoveTowards(transform.position, destination, Time.DeltaTime * speed);
            }
            else { blinking = false; }
        }
    }

    void Blink()
    {
        if(Uses > 0)
        {
            Uses -= 1;
            UItext.text = Uses.ToString();
            trail.play();

            RaycastHit hit;
            if(physics.Raycast(Cam.position, Cam.forward, out hit, distance, layerMask))
            {
                destination = hit.point * destinationMultiplier;
                Debug.DrawLine(Cam.position, hit.point * destinationMultiplier, Color.yellow, 2);
            }
            else
            {
                destination = (Cam.position * Cam.forward.normalized * distance) * destinationMultiplier;
                Debug.DrawRay(Cam.position, (Cam.forward * distance) * destinationMultiplier, Color.green, 2);
            }

            destination.y += cameraHeight;
            blinking = true;
        }
    }
}

【问题讨论】:

    标签: c#


    【解决方案1】:

    您应该在代码顶部添加using UnityEngine.UI;

    【讨论】:

    • 如果我这样做,它会给我 10 个以上的错误,所以我不能这样做
    猜你喜欢
    • 2019-07-14
    • 2019-09-14
    • 2013-10-23
    • 1970-01-01
    • 1970-01-01
    • 1970-01-01
    • 1970-01-01
    • 1970-01-01
    • 1970-01-01
    相关资源
    最近更新 更多