private IEnumerator DestroyDelayed() { yield return(new WaitForSeconds(delayTime)); particle.Stop(); PoolsManager.GetGameObjectsPool(poolTagName).Put(gameObject); }
protected override void OnEventTrigger() { #if UNITY_EDITOR Debug.Log("Crystal event " + gameObject.GetInstanceID()); #endif PoolsManager.GetGameObjectsPool(EngineSettings.Crystals.CrystalsPoolTagName).Put(gameObject); }
public void DestroyPlatform() { if (crystalRelated != null) { EventMonoBehaviour.TriggerObject(crystalRelated); crystalRelated = null; } PoolsManager.GetGameObjectsPool(EngineSettings.Platforms.PlatformsPoolTagName).Put(gameObject); }
public void GenerateCrystal() { var crystalChance = Random.Range(0, 100); if (crystalChance <= EngineSettings.Crystals.SpawnRandomChance) { var crystalGameObject = PoolsManager.GetGameObjectsPool(EngineSettings.Crystals.CrystalsPoolTagName).Take(); crystalGameObject.transform.position = transform.position + centerPosition; crystalGameObject.transform.parent = transform; crystalRelated = crystalGameObject; } }
private CargoEntity SpawnCargo() { var cargoObject = PoolsManager.GetGameObjectsPool(cargoList[randomCargoTypes[currentCargoIndex]].PoolName).Take(); var cargoEntity = cargoObject.GetComponent <CargoEntity>(); currentCargoIndex++; if (currentCargoIndex == cargoList.Count) { randomCargoTypes.Shuffle(random); currentCargoIndex = 0; } return(cargoEntity); }
public void TakeCrystal() { if (crystalRelated != null) { var particle = PoolsManager.GetGameObjectsPool(EngineSettings.Crystals.CrystalParticlesTagName).Take(); particle.transform.position = crystalRelated.transform.position + new Vector3(0f, 0.5f, 0f); particle.GetComponent <Particles.Particle>().PlayParticle(); EventMonoBehaviour.TriggerObject(crystalRelated); crystalRelated = null; EventsManager.CallEvent(Events.AddCrystal); } }
public void DestroyObject() { transform.rotation = Quaternion.identity; PoolsManager.GetGameObjectsPool(cargoList[cargoEntityType].PoolName).Put(gameObject); }