예제 #1
0
 void PauseTimer(EventCore.FreezeData data)
 {
     if (isActive)
     {
         timeToBreakCurrent += freezeTime;
         StartCoroutine(FreezeTimer());
         StopCoroutine(FreezeTimer());
     }
 }
    IEnumerator Freeze()
    {
        canFreezeTime = false;
        EventCore.FreezeData data = new EventCore.FreezeData();
        EventCore.Instance.eventFreeze.Invoke(data);
        GameObject[] thing = GameObject.FindGameObjectsWithTag("Enemy");
        foreach (GameObject enemy in thing)
        {
            if (enemy != null)
            {
                enemySpeed = enemy.GetComponent <EnemyPathfinding>().speed;
                enemy.GetComponent <UnityEngine.AI.NavMeshAgent>().speed = 0;
            }
        }
        yield return(new WaitForSeconds(freezeTime));

        foreach (GameObject enemy in thing)
        {
            if (enemy != null)
            {
                enemy.GetComponent <UnityEngine.AI.NavMeshAgent>().speed = enemySpeed;
            }
        }
    }
예제 #3
0
 public void TowerFreeze(EventCore.FreezeData arg0)
 {
     freezeSound = FMODUnity.RuntimeManager.CreateInstance(freezeRef);
     freezeSound.start();
 }
예제 #4
0
 void Freeze(EventCore.FreezeData data)
 {
     currentSpawnTimer += freezeTime;
 }