public void InitSpawner(ISpawner spawner) { spawner.offspring = new List <GameObject>(); spawner.currentDirectory = spawner.GetGameObject().GetComponentInParent <Directory>(); spawner.currentMomentum = spawner.GetSpawnFrequency(); IOTerminal.I.onTerminalTimePast.AddListener(spawner.OnTerminalTimePast); if (spawner is IEntitySpawner) { InitEntitySpawner(spawner as IEntitySpawner); return; } InitEntityComponentSpawner(spawner as IEntityComponentSpawner); }