Обнаружение столкновений с контроллером персонажей в Unity 3D - PullRequest
0 голосов
/ 15 апреля 2020

У меня есть плеер, который использует контроллер персонажа для перемещения, я поместил спрайт в сцену, и я хотел бы сделать это, когда мой игрок сталкивается со спрайтом, я отключаю спрайт, например, если игрок захватывает спрайт ( которая является 64 бензопилой Doom). Конечно, столкновения спрайта хорошо работают со всем, но не с игроком. Как я могу получить надлежащее столкновение между ними?

Спасибо и извините за мой английский sh

1 Ответ

0 голосов
/ 15 апреля 2020

Вы можете сделать это следующим образом: 1-Прикрепить скрипт "Pickable" к спрайту. 2-Присоедините скрипт «Player» к контроллеру персонажа.

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

public class Pickable : MonoBehaviour
{
    public float radius = 1f;
    private void Start()
    {
        SphereCollider collider = gameObject.AddComponent<SphereCollider>();
        collider.center = Vector3.zero;
        collider.radius = radius;
        collider.isTrigger = true;
    }
}

Вот другой скрипт.

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

public class Player : MonoBehaviour
{
    private void OnTriggerEnter(Collider other)
    {
        Pickable pickable = other.GetComponent<Pickable>();
        if(pickable != null)
        {
            Destroy(other.gameObject);
        }
    }
}
...