Вешать скрипт на копию объекта

у меня есть спавнер, и нужно чтоб он через время удалял объект что заспавнил, и вот я думаю. как мне повесить скрипт на уже СОЗДАННУЮ КОПИЮ, или как-то указать ее. в скрипте самого спавнера просто прописать

        `LifeTime += 1f * Time.deltaTime;
        if (LifeTime >= EndTime) 
        {
            Destroy (Object.gameObject);
        }`

недостаточно, он просто удаляет именно шаблон с которого и создается копия.

То ли я дурак, то ли лыжи и в действительности не едут, а если и едут то в обратную сторону моего развития, по всей видимости. Я находил что-то похожее, но там лишь удаление САМОГО объекта, а мне лишь нужно через время удалять ту копию что создал спавнер. Корутины и триггер что будет удалять их не предлагать, ничего не меняется от этого, я пробовал уже. а триггер мне попросту не подходит, по определенным причинам


Ответы (1 шт):

Автор решения: Aoki
[SerializeField] private GameObject enemyPrefab;
    private GameObject _enemy;
 

    // Update is called once per frame
    void Update()
    {
        if(_enemy == null)
        {
            _enemy = Instantiate(enemyPrefab) as GameObject;
            _enemy.transform.position = new Vector3(0, 2, 0);
            float angle = UnityEngine.Random.Range(0, 360);
            _enemy.transform.Rotate(0, angle, 0);
        }
    }

Сериализованная переменная для связи с объектом шаблоном. Закрытая переменная для слежения за экземпляром врага в сцене. В условие: порождаем нового врага, только если враг на сцене отсутствует. При помощи метода Instantiate, копируем шаблон.

Я тоже новичок, но достичь подобной цели, мне помогло.

→ Ссылка