В приведенном ниже коде я пытаюсь создать экземпляр игрового объекта и добавить компонент в экспозицию в Editor, но в Unity возникает ошибка, приведенная ниже. Кажется, _currentPiece не может быть добавлен в ExposeToEditor, и я пытаюсь найти решение для этого. Какой будет обходной путь?
ошибка CS1061: «SnapPiece» не содержит определения для «AddComponent», и нет доступного метода расширения «AddComponent», принимающего первый аргумент типа «SnapPiece» (вы пропустили директиву using или ссылка на сборку?)
public class SnappableSpawner : MonoBehaviour
{
public GameObject prefabSnapPiece;
public float initialDistanceToSpawnAt = 1f;
private float _currentDistanceToPositionAt;
private SnapPiece _currentPiece;
private int _spawnSuffix = 1;
public void SpawnGhostToMouse()
{
if( _currentPiece == null )
{
_snapMode = PointerSnapMode.ABSOLUTE_PROJECTION;
_currentDistanceToPositionAt = initialDistanceToSpawnAt;
_currentPiece = GameObject.Instantiate( prefabSnapPiece ).GetComponent<SnapPiece>();
_currentPiece.name = "Spawned-"+_spawnSuffix;
_spawnSuffix++;
ExposeToEditor exposeToEditor = _currentPiece.AddComponent<ExposeToEditor>();
IRTE editor = IOC.Resolve<IRTE>();
editor.Undo.RegisterCreatedObjects(new[] { exposeToEditor });
}
}