NAZYuy
@NAZYuy
Начинаю изучать Unity + C#

Как обратится к объектам на карте?

Начинаю изучать Unity + C#. В данный момент создаю игру похожую на Flappy Bird и столкнулся с такой проблемой. Хочу реализовать остановку всех объектов на карте при смерти игрока. Движение препятствий, мертвой зоны( сверху и снизу карты) и заднего фона происходит одним скриптом наложенным на эти объекты. В моем понимании для работоспособности моей идеи, надо задать обращение к объектам в скрипте, но я не знаю как это реализовать.
код прилагаю -
using System.Collections;
using System.Collections.Generic;
using Unity.VisualScripting;
using UnityEngine;

public class Map : MonoBehaviour
{
    private bool _isAlive = true;
    private BoxCollider2D BoxC;
    public float speed;
    public Transform[] enemy;
    void Start()
    {
        enemy = new Transform[transform.childCount];
        int i = 0;

        foreach (Transform t in transform)
        {
            enemy[i++] = t;  // Тут попытался реализовать группировку объектов ( возможно это надо убрать)
        }
    }
    void Update()
    {
        if (_isAlive)
        {
            transform.Translate(Vector2.left * (speed * Time.deltaTime));
        }
        if (!_isAlive) 
        {
            // КАК ОБРАТИТСЯ КО ВСЕМ ОБЪЕКТАМ НА КАРТЕ КРОМЕ НЕКОТОРЫХ ОПРЕДЕЛЕННЫХ
            {
                BoxC.enabled = false;
                transform.Translate(Vector2.left * (0 * Time.deltaTime));
            }
        }
    }
    private void OnTriggerEnter2D(Collider2D collision)
    {
        if (collision.tag == "Player")
        {
            _isAlive = false;
        }
    }
}
  • Вопрос задан
  • 68 просмотров
Пригласить эксперта
Ответы на вопрос 1
@Ezekiel4
Охотник на пиратов и сборщик монолитов
Если у вас всё движение завязано на вызовы Update/FixedUpdate/LateUpdate, то вы можете остановить всю игру (меню будет кликабельно), просто написав:

Time.timeScale = 0;

Только потом не забудьте вернуть обратно на 1 при рестарте.
Ответ написан
Ваш ответ на вопрос

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

Войти через центр авторизации
Похожие вопросы