Beispiel #1
0
 private void StartLevel()
 {
     for (var i = 0; i < currentLevel.asteroidsCount; i++)
     {
         var       pos   = BorderDetector.GetRandomPosOnPerimeter();
         BaseEnemy enemy = Instantiate(currentLevel.asteroidPrefab, pos, Quaternion.Euler(0, 0, Random.Range(0f, 360f)));
         enemy.AddForwardForse(currentLevel.asteroidSpeed);
         gameManager.AddEnemy(enemy);
     }
 }
Beispiel #2
0
    protected void CreateParts()
    {
        float dAngle = 180f / (divideCount + 1);
        float angle  = UnityEngine.Random.Range(0, 360f);

        for (var i = 0; i < divideCount; i++)
        {
            BaseEnemy part = Instantiate(newEnemy, transform.position, Quaternion.Euler(0, 0, angle));
            part.transform.position = part.ShiftedPositionToSize(angle);
            part.AddForwardForse(_speed);
            angle += Random.Range(dAngle * 0.5f, dAngle * 1.5f);
            newEnemyCreated?.Invoke(part);
        }
    }