Почему возникает ошибка Collision.gameObject.tag?C#

Место общения программистов C#
Ответить
Anonymous
 Почему возникает ошибка Collision.gameObject.tag?

Сообщение Anonymous »

Visual Studio и Unity выдают ошибку: [тег:CS0120: для нестатического поля, метода или свойства Collision.gameObject требуется ссылка на объект]. Это в строке 21 [тег:if (Collision .gameObject.tag == "Дверь")].
Скрипт предназначен для того, чтобы при столкновении объекта с дверью (имеет отдельный Тег «Дверь»), он включит аниматор двери и запустит анимацию (Открыть), а затем остановит ее, чтобы она не повторялась. Любые предложения или улучшения также приветствуются. Я видел, как другие люди использовали то же самое, но мне просто выдали ошибку. Что не так и как это исправить?

Код: Выделить всё

using System.Collections;
using System.Collections.Generic;
using Unity.VisualScripting;
using UnityEngine;

public class DoorOpen : MonoBehaviour
{
public Animator doorAnim;
public GameObject Door;
private BoxCollider boxCollider;

public void Start()
{
boxCollider = GetComponent();
doorAnim = Door.GetComponent();
doorAnim.enabled = false;
}

private void OnCollisionEnter(Collision collision)
{
if (Collision.gameObject.tag == "Door")
{
doorAnim.enabled = true;
doorAnim.Play("Open");
doorAnim.StopPlayback();
}
}

}
Как было сказано ранее, я попробовал сценарий «до» и в итоге получил ошибку [tag:CS0120: для нестатического поля, метода или свойства требуется ссылка на объект «Коллизия». .gameObject']. Я ожидал, что это будет просто так, когда коробка сталкивается с дверью, он включает аниматор, запускает анимацию, а затем останавливается; Но при обнаружении столкновения с дверью произошла ошибка.
Это строка с ошибкой: [tag:if (Collision.gameObject.tag == "Door")]
А это раздел с ошибками: collision.gameobject

Подробнее здесь: https://stackoverflow.com/questions/791 ... object-tag
Ответить

Быстрый ответ

Изменение регистра текста: 
Смайлики
:) :( :oops: :roll: :wink: :muza: :clever: :sorry: :angel: :read: *x)
Ещё смайлики…
   
К этому ответу прикреплено по крайней мере одно вложение.

Если вы не хотите добавлять вложения, оставьте поля пустыми.

Максимально разрешённый размер вложения: 15 МБ.

Вернуться в «C#»