Несколько контрольных точек / зон возрождения - PullRequest
0 голосов
/ 26 августа 2018

enter image description here

В основном у меня есть три класса, чтобы попытаться собрать контрольные точки и респаун на последнем достигнутом.Код кажется нормальным, однако я получаю нулевую ошибку ссылки при достижении контрольной точки во время выполнения.Кажется, проблема в Unity.

private CheckPoint cp;

Я не могу получить что-либо, чтобы войти в раздел инспектора для этого экземпляра.Конечно, я делаю вызов при запуске

 cp = GameObject.FindGameObjectWithTag("Checkpoint").GetComponent<CheckPoint>();

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

enter image description here

1 Ответ

0 голосов
/ 27 августа 2018

1. Проверьте, есть ли у вас несколько игровых объектов с тегом "CheckPoint".

cp = GameObject.FindGameObjectWithTag("Checkpoint").GetComponent<CheckPoint>();

собирается найти первый gameObject с этим тегом и попытаться получить ваш компонент. Если компонента нет, вы получите нулевую ссылку

2. Используйте это вместо

FindObjectsOfType<Checkpoint>();

для получения дополнительной информации: https://docs.unity3d.com/ScriptReference/Object.FindObjectsOfType.html

3. Используйте список / массив / любой другой контейнер в вашем классе "CheckpointManager" и вМетод Start () для каждой контрольной точки:

CheckpointManager.container.add(this);

это должно быть намного проще в управлении, и вам не нужно будет использовать теги.

Добро пожаловать на сайт PullRequest, где вы можете задавать вопросы и получать ответы от других членов сообщества.
...