コード例 #1
0
    // Update is called once per frame
    void Update()
    {
        elapsedSinceSpawn += Time.deltaTime;
        if (elapsedSinceSpawn >= spawnDelay)
        {
            if (liveEnemies.Count < enemyCap)
            {
                GameObject newEnemyObj = Instantiate(enemyPrefab);
                newEnemyObj.transform.position = myCell.transform.position;
                Brawler newBrawler = newEnemyObj.GetComponent <Brawler>();
                newBrawler.SetStartingCell(myCell);
                newBrawler.SetGenerator(this);

                liveEnemies.Add(newEnemyObj);
            }
            elapsedSinceSpawn = 0;
        }
    }
コード例 #2
0
    private void SpawnBrawler()
    {
        int numColumns = NumCellsX;
        int numRows    = NumCellsZ;

        int spawnColumn = Random.Range(MinEnemyDistFromPlayer, numColumns);
        int spawnRow    = Random.Range(MinEnemyDistFromPlayer, numRows);

        Cell       brawlerSpawnCell = GetCellAt(spawnColumn, spawnRow);
        Vector3    cellpos          = brawlerSpawnCell.transform.position;
        Vector3    spawnPos         = new Vector3(cellpos.x, 0.0f, cellpos.z);
        GameObject BrawlerObj       = Instantiate(brawlerPrefab);

        BrawlerObj.transform.position = spawnPos;

        Brawler newBrawler = BrawlerObj.GetComponent <Brawler>();

        newBrawler.SetStartingCell(brawlerSpawnCell);
    }