Example #1
0
    private IEnumerator CreateEnemy(SingleEnemy enemy)
    {
        EnemyTrajectory component = null;

        for (int i = 0; i < enemy.count; i++)
        {
            while (!MainSettings.NotPause)
            {
                yield return(null);
            }
            GameObject go = MainSettings.CurPoolManager.GetObject(enemy.enemyObj.name, enemy.selfPosition, Quaternion.Euler(0, 0, 0));
            if (go != null)
            {
                component = go.transform.GetComponent <EnemyTrajectory>();
                if (component != null)
                {
                    component.Trajectory = enemy.trajectory;
                    component.speed      = enemy.speed;
                    MainSettings.Enemylist.Add(go);
                    yield return(new WaitForSeconds(enemy.timeDelay));
                }
                else
                {
                    MainSettings.Enemylist.Remove(go);
                    go.GetComponent <PoolObject>().ReturnToPool();
                    yield break;
                }
            }
        }
    }
Example #2
0
 /// <summary>
 /// Adds enemies to the _allEnemies list and activates them when added
 /// </summary>
 /// <param name="enemiesToAdd">The enemies to add</param>
 private void AddEnemies(List <MoveAttack> enemiesToAdd)
 {
     // Add each enemy to the list
     foreach (MoveAttack singEnemy in enemiesToAdd)
     {
         if (singEnemy != null)
         {
             SingleEnemy singEnemyScriptRef = singEnemy.GetComponent <SingleEnemy>();
             if (singEnemyScriptRef != null && !_allEnemies.Contains(singEnemyScriptRef))
             {
                 // Add the enemy
                 _allEnemies.Add(singEnemyScriptRef);
                 // Turn them active
                 singEnemy.gameObject.SetActive(true);
             }
         }
     }
 }
Example #3
0
 public void Initiate(SingleEnemy settings)
 {
     this.startPos     = settings.StartPos;
     this.endPos       = settings.EndPos;
     this.movementType = settings.Movement;
 }
Example #4
0
    void Start()
    {
        SingleEnemy        en;
        List <SingleEnemy> lst;

        #region Creating Scenario (sin center)
        lst = new List <SingleEnemy>();
        en  = new SingleEnemy(Enemy02, 0.2f, 10, 1, 4, new Vector3(0, 15, -10));
        lst.Add(en);
        Checkpoints.Add(390, new EnemyInstance(lst, true));
        #endregion

        #region Creating Scenario (droids)
        lst = new List <SingleEnemy>();
        lst.Add(new SingleEnemy(Enemy04, 0f, 1, 6, 1, new Vector3(0, 15, -10)));
        lst.Add(new SingleEnemy(Enemy04, 0f, 1, 7, 1, new Vector3(0, 15, -10)));
        lst.Add(en);
        Checkpoints.Add(385, new EnemyInstance(lst, true));
        #endregion

        #region Creating Scenario (sin left)
        lst = new List <SingleEnemy>();
        en  = new SingleEnemy(Enemy02, 0.2f, 10, 2, 4, new Vector3(-15, 15, -10));
        lst.Add(en);
        Checkpoints.Add(380, new EnemyInstance(lst, true));
        #endregion

        #region Creating Scenario (sin right)
        lst = new List <SingleEnemy>();
        en  = new SingleEnemy(Enemy02, 0.2f, 10, 3, 4, new Vector3(15, 15, -5));
        lst.Add(en);
        Checkpoints.Add(370, new EnemyInstance(lst, true));
        #endregion

        #region Creating Scenario (bezie01 Left)
        lst = new List <SingleEnemy>();
        en  = new SingleEnemy(Enemy06, 0.25f, 20, 10, 4, new Vector3(-30, 15, -5));
        lst.Add(en);
        Checkpoints.Add(360, new EnemyInstance(lst, true));
        #endregion

        #region Creating Scenario (bezie01 right)
        lst = new List <SingleEnemy>();
        en  = new SingleEnemy(Enemy07, 0.25f, 20, 10, 4, new Vector3(30, 15, -5));
        lst.Add(en);
        Checkpoints.Add(350, new EnemyInstance(lst, true));
        #endregion

        #region Creating Scenario (Wall)

        lst = new List <SingleEnemy>();
        for (int i = -36; i < 36; i = i + 3)
        {
            en = new SingleEnemy(Enemy03, 0f, 1, 4, 1, new Vector3(i, 15, -10));
            lst.Add(en);
        }
        Checkpoints.Add(340, new EnemyInstance(lst, true));
        #endregion
        #region Creating Scenario (droids)

        lst = new List <SingleEnemy>();
        //lst.Add(new SingleEnemy(Enemy04, 0f, 1, 6, 1, new Vector3(0, 15, -10)));
        //lst.Add(new SingleEnemy(Enemy04, 0f, 1, 7, 1, new Vector3(0, 15, -10)));
        lst.Add(new SingleEnemy(Enemy05, 0f, 1, 6, 1, new Vector3(0, 15, -10)));
        lst.Add(new SingleEnemy(Enemy05, 0f, 1, 7, 1, new Vector3(0, 15, -10)));
        Checkpoints.Add(338, new EnemyInstance(lst, true));
        #endregion
        #region Creating Scenario (droids)

        lst = new List <SingleEnemy>();
        //lst.Add(new SingleEnemy(Enemy04, 0f, 1, 6, 1, new Vector3(0, 15, -10)));
        //lst.Add(new SingleEnemy(Enemy04, 0f, 1, 7, 1, new Vector3(0, 15, -10)));
        lst.Add(new SingleEnemy(Enemy08, 0f, 1, 10, 1, new Vector3(0, 15, -10)));
        Checkpoints.Add(325, new EnemyInstance(lst, true));
        #endregion

        StartCoroutine(CheckPoints());
        StartCoroutine(CheckPoints());
        MainSettings.NotPause = true;
    }
Example #5
0
 public void Initiate(SingleEnemy settings)
 {
     this.startPos = settings.StartPos;
     this.endPos = settings.EndPos;
     this.movementType = settings.Movement;
 }