void Update() { if (spawnTimer.HasPassed(1.0f / spawnRate)) { spawnTimer.Reset(); Vector3 offset = box.size; offset.x *= Random.Range(-0.5f, 0.5f); offset.y *= Random.Range(-0.5f, 0.5f); Vector3 pos = transform.position + offset; var star = GameObject.Instantiate(starPrefab, pos, Quaternion.identity) as GameObject; SpawnFolder.SetParent(star, "Stars"); var size = Random.Range(minSpawnSize, 1.0f); star.transform.localScale *= size; var data = new StarData(); data.star = star; data.size = size; spawnedStars.Add(data); } for (int i = spawnedStars.Count - 1; i >= 0; i--) { var star = spawnedStars[i]; star.star.transform.position += Vector3.down * star.size * baseMoveSpeed * Time.deltaTime; if (star.star.transform.position.y < -transform.position.y) { spawnedStars.RemoveAt(i); GameObject.Destroy(star.star); } } }
void Update() { if (timer.HasPassed(spawnTime)) { timer.Reset(); GameObject obj = GameObject.Instantiate(enemyPrefab, transform.position, Quaternion.identity) as GameObject; SpawnFolder.SetParent(obj, "Enemies"); } }
private void Shoot() { int numBullets = NumBullets(); for (int i = 0; i < numBullets; i++) { Vector3 offset = OffsetForBullet(i, numBullets); offset.Scale(box.size * 0.5f); offset.Scale(transform.localScale); Vector3 vel = VelocityForBullet(i, numBullets); GameObject obj = GameObject.Instantiate(gun.data.bulletPrefab, transform.position + offset, Quaternion.identity) as GameObject; obj.GetComponent <Bullet>().Init(vel); SpawnFolder.SetParent(obj, "Bullets"); gun.bulletsFired++; } }