Пятница, 29 Марта 2024, 11:45

Приветствую Вас Гость

[ Новые сообщения · Игроделы · Правила · Поиск ]
  • Страница 1 из 1
  • 1
Форум игроделов » Движки для разработки игр и сложные системы разработки » Unity » Как обеспечить связь скриптов?
Как обеспечить связь скриптов?
Voronin1337Дата: Вторник, 14 Марта 2017, 23:38 | Сообщение # 1
был не раз
Сейчас нет на сайте
Как обеспечить связь скриптов?
EchoITДата: Вторник, 14 Марта 2017, 23:52 | Сообщение # 2
старожил
Сейчас нет на сайте
Voronin1337, тащемта, ничего сложного тут нет, просто берёшь и связываешь, без задней мысли.



Долгожданный анонсик: State of War

Сообщение отредактировал EchoIT - Среда, 15 Марта 2017, 00:06
URGINSANДата: Среда, 15 Марта 2017, 00:40 | Сообщение # 3
почти ветеран
Сейчас нет на сайте
Voronin1337, реально, научись гуглить, это уже не смешно.

Чтобы обеспечить связь скриптов, надо сначала получить ссылку на объект, в котором скрипт, затем указать там нужный скрипт, затем сделать в нем то, что тебе нужно.
Небольшой пример:

1. (Поиск объекта по имени)
Код

GameObject.Find("точное имя объекта в сцене в кавычках").GetComponent<точное название скрипта без кавычек>().переменная скрипта, которую надо юзать;


2. (Поиск скрипта в объявленном объекте)
Код

    public GameObject obj;

    void Start()
    {
        obj.GetComponent<Health>().health -= 1; // ищем скрипт у объекта, и в этом скрипте уменьшаем переменную
    }

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

3. (Глобальная переменная (статическая))
Код

    public static bool death = false;

    void Update()
    {
        if (death)
            health = 0; // у всех ботов в сцене жизнь станет = 0 и они подохнут.
    }
    // обращаться к глобальным переменным так:
    НазваниеСкрипта.Переменная;
    // пример:
    botController.health = 0; // то есть при статических переменных не нужно получать ссылку на объект, просто указываешь название скрипта и переменную нужную

Но учти, после перезапуска сцены переменная сохранит свое значение.

Все, с тебя по-любому плюс.


Я на драйве

Сообщение отредактировал URGINSAN - Среда, 15 Марта 2017, 00:41
Форум игроделов » Движки для разработки игр и сложные системы разработки » Unity » Как обеспечить связь скриптов?
  • Страница 1 из 1
  • 1
Поиск:

Все права сохранены. GcUp.ru © 2008-2024 Рейтинг