using UnityEngine;
using System.Collections;
public class Spawner : MonoBehaviour {
public GameObject fallingBlockPrefab;
public float timeLeft;
public float secondsBetweenSpawns = 1;
float nextSpawnTime;
public Vector2 spawnSizeMinMax;
public float spawnAngleMax;
Vector2 screenHalfSizeWorldUnits;
// Use this for initialization
void Start () {
screenHalfSizeWorldUnits = new Vector2 (Camera.main.aspect * Camera.main.orthographicSize, Camera.main.orthographicSize);
}
void FixedUpdate ()
{
timeLeft -= Time .deltaTime;
}
// Update is called once per frame
void Update ()
{
while (timeLeft >0)
{
if (Time.time > nextSpawnTime)
{
nextSpawnTime = Time.time + secondsBetweenSpawns;
float spawnAngle = Random.Range (-spawnAngleMax, spawnAngleMax);
float spawnSize = Random.Range (spawnSizeMinMax.x, spawnSizeMinMax.y);
Vector2 spawnPosition = new Vector2 (Random.Range (-screenHalfSizeWorldUnits.x, screenHalfSizeWorldUnits.x), screenHalfSizeWorldUnits.y + spawnSize / 0.2f);
GameObject newBlock = (GameObject)Instantiate (fallingBlockPrefab, spawnPosition, Quaternion.Euler (Vector3.forward * spawnAngle));
newBlock.transform.localScale = Vector2.one * spawnSize;
}
}
}
}