예제 #1
0
        private IEnumerator DeactiveSelfDelayed(GameObject visual, float duration)
        {
            yield return(new WaitForSeconds(duration));

            visual.SetActive(false);
            DeathAnimVisualizerPool.ReturnEffectObject(visual);
        }
예제 #2
0
        private void PlayDeathEffect()
        {
            var visual = DeathAnimVisualizerPool.GetEffectObject();

            visual.transform.position = transform.position + Vector3.up * SimulationSettings.DeathEffectSpawnHeight;
            visual.SetActive(true);
            StartCoroutine(DeactiveSelfDelayed(visual, visual.GetComponent <ParticleSystem>().duration));
        }
 private void PlayDeathAnimation()
 {
     DeathAnimVisualizerPool.ShowEffect(transform.position);
     characterModelVisualizer.SetModelVisibility(false);
 }
예제 #4
0
 private void Awake()
 {
     Instance = this;
     InitializePool(ResourceRegistry.DeathEffectPrefab);
 }