Esempio n. 1
0
    public void OnCreepTriger(Creep _creep)
    {
        float _distance = Vector3.Distance(_creep.transform.position, GameConstants.posCenter);

        if (Mathf.Abs(_distance - radiusShield) <= 0.1f)
        {
            for (int i = 0; i < listArc.Count; i++)
            {
                if (listArc[i].CheckCollision(_creep.index))
                {
                    SpawnController.instance.UnSpawnCreep(_creep.gameObject);
                    DrawArc _temp = listArc[i];
                    listArc.RemoveAt(i);
                    Destroy(_temp.gameObject);
                    score++;
                    return;
                }
            }
        }
        else
        {
            if (Mathf.Abs(_distance - hero.radius) <= 0.1f)
            {
                SpawnController.instance.UnSpawnCreep(_creep.gameObject);
                if (isOver == false)
                {
                    DrawCircles _temp = listCircle[0];
                    listCircle.RemoveAt(0);
                    Destroy(_temp.gameObject);
                    if (listCircle.Count == 0)
                    {
                        OnGameOver();
                    }
                }
                return;
            }
        }
    }
Esempio n. 2
0
 public void OnStartGame()
 {
     time  = 0;
     score = 0;
     if (listArc != null)
     {
         for (int i = 0; i < listArc.Count; i++)
         {
             Destroy(listArc[i].gameObject);
         }
     }
     listArc = new List <DrawArc>();
     SpawnController.instance.ResetSpawn();
     listCircle = new List <DrawCircles>();
     for (int i = 0; i < live; i++)
     {
         GameObject  _circle = Instantiate(pfCircle) as GameObject;
         DrawCircles _draw   = _circle.GetComponent <DrawCircles>();
         _draw.radius = RADIUS[i];
         listCircle.Add(_draw);
     }
     isOver = false;
 }