示例#1
0
    private void SpawnEgg(EggScript egg)
    {
        GenericSpawnPoint spawnPoint =
            EggSpawnPoints[Random.Range(0, EggSpawnPoints.Count - 1)];

        SpawnObject(spawnPoint.transform.position, egg.gameObject);
    }
示例#2
0
    private void SpawnEnemy(EnemyScript enemy, Transform target)
    {
        GenericSpawnPoint spawnPoint =
            EnemySpawnPoints[Random.Range(0, EnemySpawnPoints.Count - 1)];

        SpawnObject(spawnPoint.transform.position, enemy.gameObject);
        enemy.target = target;
    }
示例#3
0
 public void Spawn(GenericSpawnPoint location)
 {
     this.CurrentHealth = MaxHealth;
     this.Respawns--;
     this.GetComponent <Collider2D>().enabled = true;
     this.IsDead             = false;
     this.transform.position = location.transform.position;
 }
示例#4
0
    public IEnumerator SpawnPlayerCoroutine(PlayerScript player)
    {
        Debug.Log($"Started spawn player coroutine on : {player}");
        yield return(new WaitForSeconds(SpawnTimeSec));

        GenericSpawnPoint spawnPoint =
            PlayerSpawnPoints[Random.Range(0, PlayerSpawnPoints.Count - 1)];

        player.Spawn(spawnPoint);
        Debug.Log($"Ended spawn player coroutine on : {player}");
    }
示例#5
0
    // Start is called before the first frame update
    void Start()
    {
        Init();

        //Place participating players at spawnpoints
        foreach (PlayerScript player in players)
        {
            GenericSpawnPoint spawnPoint =
                PlayerSpawnPoints[Random.Range(0, PlayerSpawnPoints.Count - 1)];
            player.transform.position = spawnPoint.transform.position;
        }

        SpawnEgg(egg);

        //Spawn all initial enemies
        StartCoroutine(SpawnEnemiesCoroutine(enemySpawnCooldownTime, egg.transform));
    }
示例#6
0
 public void Spawn(GenericSpawnPoint location)
 {
     this.transform.position = location.transform.position;
 }