Тип или имя пространства имен `Player 'не найдено - PullRequest
0 голосов
/ 05 октября 2018

PL, я работаю над проектом в Unity и Visual Studio, и это продолжает давать мне ошибку, смотрите.

using UnityEngine;
using UnityEditor.Build.Player;

public class Obsticle : MonoBehaviour {

    public int damage = 1;
    public float speed;

    private void Update()
    {
        transform.Translate(Vector2.left * speed * Time.deltaTime);
    }

    void OnTriggerEnter2D(Collider2D other)
    {
        if (other.CompareTag("Player")) {

            other.GetComponent<Player>().health -= damage;
            Debug.Log(other.GetComponent<Player>().health);
            Destroy(gameObject);
        }
    }
}

1 Ответ

0 голосов
/ 05 октября 2018

Прежде всего создание собственного класса игрока вызывает конфликты.измените имя класса, также не используйте символ.лол.Я использую Гая.тег игрока в порядке, и рекомендуется.также:

void OnTriggerEnter2D(Collider2D other)
    {
        if (other.gameObject.Tag=="Player") {

            other.GetComponent<Guy>().health -= damage;
            Debug.Log(other.GetComponent<Guy>().health);
            Destroy(gameObject);
        }
    }

это один из моих методов OnTrigger класса захвата,

private void OnTriggerEnter2D(Collider2D collision)
    {
        if (collision.gameObject.tag == "Player")
        {

            //destroy 'obsticle'
            Destroy(this.gameObject);
        }
    }
...