public void RandomizeActivePrefab()
        {
            if (NumberOfPrefabs != 0)
            {
                int    prefabIndex     = UnityEngine.Random.Range(0, NumberOfPrefabs);
                Prefab newActivePrefab = GetPrefabByIndex(prefabIndex);

                _prefabs.MarkEntity(newActivePrefab);
                NewPrefabWasActivatedMessage.SendToInterestedListeners(newActivePrefab);
            }
        }
        public void SetActivePrefab(Prefab newActivePrefab)
        {
            if (newActivePrefab != null && !ContainsPrefab(newActivePrefab))
            {
                return;
            }
            if (PrefabActivationValidationCallback != null && !PrefabActivationValidationCallback(newActivePrefab))
            {
                return;
            }

            _prefabs.MarkEntity(newActivePrefab);
            NewPrefabWasActivatedMessage.SendToInterestedListeners(newActivePrefab);
        }