@GmDvlpr

Уничтожение объекта юнити, Что делать?

Создаю игру на андроид, в которой появляются объекты и когда на них тапаешь, то они уничтожаются.

Я использую void OnMouseDown(), потом в нем пишу, что мне нужно уничтожать объект
using System.Collections;
using System.Collections.Generic;
using UnityEngine;
using UnityEngine.UI;

public class Hitenemy : MonoBehaviour
{
    public GameObject man;
    GameObject enemy;
    public Text score;
    public int count = 0;
    void Start()
    {
        StartCoroutine(Spawn());
    }

    
    void Update()
    {
        
    }

    IEnumerator Spawn()
    {
        while (true)
        {
            man.transform.position = new Vector2(Random.Range(-2.21f, 2.195f), Random.Range(-4.354f, 2.498f));
           enemy= Instantiate(man);
            yield return new WaitForSeconds(1.5f);

            //   Destroy(enemy);
            // yield return new WaitForSeconds(1.5f);
        }
    }

    private void OnMouseDown()
    {
        enemy=GameObject.FindWithTag("Player");
        Destroy(enemy);
        count++;
       score.text = count.ToString();
    }
}


Потом я привязываю скрипт к 3д объекту, из которого убрал mesh renderer
Когда запускаю игру, то куда бы я не нажал, счет будет увеличиваться, а объекты как появятся сразу удаляются, а я хочу, чтоб я именно нажимал на объекты, а не на 3д объект.
К камере пытался привязать скрипт, но там пообще ничего не нажиматеся
  • Вопрос задан
  • 156 просмотров
Пригласить эксперта
Ответы на вопрос 2
freeExec
@freeExec
Участник OpenStreetMap
В месте нажатия нужно делать Reycast, чтобы определить есть ли там что или это пустое место.
Ответ написан
Комментировать
GavriKos
@GavriKos Куратор тега Unity
Или как сказал freeExec, или - вешать скрипт на КАЖДЫЙ объект (при условии что на нем есть коллайдер), и уничтожать не мифического Player, а именно этот объект - Destroy(gameObject)
Ответ написан
Комментировать
Ваш ответ на вопрос

Войдите, чтобы написать ответ

Похожие вопросы