Files
GMTKGameJam2020/Assets/Scripts/GMScript.cs
T

76 lines
1.7 KiB
C#
Raw Normal View History

using System.Collections;
using System.Collections.Generic;
using UnityEngine;
public class GMScript : MonoBehaviour
{
public GameObject obstacle;
public GameObject enemy;
private float obstacleSpawnTime;
private float obstacleTime = 0.0f;
private float enemySpawnTime;
private float enemyTime = 0.0f;
private Transform playerPos;
void Start()
{
playerPos = GameObject.FindWithTag("Player").transform;
obstacleSpawnTime = Random.Range(5.0f, 15.0f);
enemySpawnTime = Random.Range(5.0f, 15.0f);
}
// Update is called once per frame
void Update()
{
obstacleTime += Time.deltaTime;
enemyTime += Time.deltaTime;
if(obstacleTime > obstacleSpawnTime)
{
Instantiate(obstacle, new Vector2(Random.Range(-8.0f, 8.0f), Random.Range(-4.0f, 4.0f)),
Quaternion.Euler(0,0,Random.Range(0.0f, 360.0f)));
obstacleSpawnTime = Random.Range(5.0f, 15.0f);
obstacleTime = 0.0f;
}
if(enemyTime > enemySpawnTime)
{
Instantiate(enemy, new Vector2(Random.Range(-8.0f, 8.0f), Random.Range(-4.0f, 4.0f)),
Quaternion.identity);
enemySpawnTime = Random.Range(5.0f, 15.0f);
enemyTime = 0.0f;
}
}
Vector2 ValidSpawn()
{
bool valid = false;
Vector2 spawn;
do{
spawn = new Vector2(Random.Range(-8.0f, 8.0f), Random.Range(-4.0f, 4.0f));
if((spawn.x > playerPos.position.x + 2 || spawn.x < playerPos.position.x - 2)
&& (spawn.y > playerPos.position.y + 2 || spawn.y < playerPos.position.y - 2))
{
valid = true;
}
}while(!valid);
return spawn;
}
}