Create random spawn
This commit is contained in:
parent
1d13cb09df
commit
12216448ba
@ -11,6 +11,9 @@ public class OverMind : MonoBehaviour
|
||||
[SerializeField] private GameObject characterObject;
|
||||
[SerializeField] private float mobMoveSpeed;
|
||||
|
||||
[SerializeField] private GameObject mobPull;
|
||||
[SerializeField] private GameObject activeMobs;
|
||||
|
||||
private List<GameObject> _pullEnemies;
|
||||
|
||||
public struct MobParameters
|
||||
@ -22,13 +25,16 @@ public struct MobParameters
|
||||
void Start()
|
||||
{
|
||||
PreHeaterSpawn();
|
||||
StartCoroutine (spawnMobsCourutine());
|
||||
}
|
||||
|
||||
private void PreHeaterSpawn()
|
||||
{
|
||||
for (var i = 0; i < pullSize; i++)
|
||||
{
|
||||
var newMob = Instantiate(mob,transform);
|
||||
var newMob = Instantiate(mob,mobPull.transform);
|
||||
//_mobsPull.Add(newMob);
|
||||
newMob.SetActive(false);
|
||||
|
||||
var newMobParameters = new MobParameters
|
||||
{
|
||||
@ -39,8 +45,44 @@ private void PreHeaterSpawn()
|
||||
newMob.GetComponent<Mob>().SetupMob(newMobParameters);
|
||||
}
|
||||
}
|
||||
|
||||
Vector3 GenerateRandomSpawnMobPoint()
|
||||
{
|
||||
var spawnBorder = 2f;
|
||||
Vector3 stageDimensions = Camera.main.ScreenToWorldPoint(new Vector3(Screen.width, Screen.height,0));
|
||||
print(stageDimensions);
|
||||
var xCoords = new Vector3(stageDimensions.x, stageDimensions.x + spawnBorder);
|
||||
var yCoords = new Vector3(stageDimensions.y, stageDimensions.y + spawnBorder);
|
||||
|
||||
var spawnPoint = new Vector3(
|
||||
Random.Range(xCoords.x, xCoords.y),
|
||||
Random.Range(xCoords.x, xCoords.y),
|
||||
0
|
||||
);
|
||||
|
||||
return spawnPoint;
|
||||
}
|
||||
|
||||
|
||||
IEnumerator spawnMobsCourutine()
|
||||
{
|
||||
while(true)
|
||||
{
|
||||
Debug.Log ("OnCoroutine: "+(int)Time.time);
|
||||
yield return new WaitForSeconds(1f);
|
||||
|
||||
var mobToSpawn = mobPull.transform.GetChild(0);
|
||||
|
||||
mobToSpawn.transform.position = GenerateRandomSpawnMobPoint();
|
||||
mobToSpawn.parent = activeMobs.transform;
|
||||
|
||||
mobToSpawn.gameObject.SetActive(true);
|
||||
|
||||
}
|
||||
}
|
||||
// Update is called once per frame
|
||||
void Update()
|
||||
{
|
||||
|
||||
}
|
||||
}
|
||||
|
Loading…
Reference in New Issue
Block a user