Как добавить Tilemap в сборный дом? - PullRequest
1 голос
/ 03 февраля 2020

У меня есть префаб Bomb, который динамически добавляется в центр 2D-плитки при нажатии клавиш с помощью сценария BombSpawner. Когда бомба взрывается, я хочу, чтобы она воздействовала на несколько плиток в моей Ground карте тайлов.

Взрыв находится внутри скрипта BombController, который является частью моего Bomb префаба. Я попытался получить доступ к карте тайлов, добавив ее вручную в префаб:

public Tilemap tilemap;

Но это не работает. Я могу перетаскивать карту тайла только в Bomb, когда он находится в сцене, а не в префаб.

Есть ли способ получить доступ к карте тайла Ground в скрипте BombController?

Ответы [ 2 ]

0 голосов
/ 04 февраля 2020

Итак, это то, что нормально в единстве, когда вы работаете с префабами. Компоненты / сценарии можно назначать только в любом месте префаба, если этот компонент / скрипт является частью самого префаба.

Если компонент / скрипт находится в иерархии сцены, но не в префабе. В твоем случае это был Tilemap объект. который был в вашей иерархии сцены, но не был частью вашего сборного. Даже если вы редактируете префаб непосредственно в виде сцены (не путайте с префаб-редактором, который выглядит так же, как вид сцены). и сохраните префаб, BombController.tilemap всегда будет нулевым (Нет). Нечто вроде

No assignment in Inspector

0 голосов
/ 04 февраля 2020

вы пытались импортировать эту библиотеку из Unity с помощью UnityEngine.Tilemaps; и затем сделать эту переменную publi c Tilemap tilemap; введите описание изображения здесь

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