public void LaunchEnemy(int enemyType, int numberOfEnemies) { if (alive == true) { if (enemyType == 1) { for (int i = 0; i < numberOfEnemies; i++) { GameObject enemy = EnemyFollowPooler.current.GetPooledObject(); if (enemy == null) { return; } enemy.transform.position = position; enemy.transform.rotation = transform.rotation; enemy.SetActive(true); position = new Vector2((this.transform.position.x + (Random.Range(-1, 1) * .75f)), (this.transform.position.y + (Random.Range(-1, 1) * .75f))); } } else if (enemyType == 2) { position = new Vector2(this.transform.position.x, this.transform.position.y); for (int i = 0; i < numberOfEnemies; i++) { GameObject enemy = EnemyStraightPooler.current.GetPooledObject(); if (enemy == null) { return; } enemy.transform.position = position; enemy.transform.rotation = transform.rotation; enemy.SetActive(true); position = new Vector2((this.transform.position.x + (Random.Range(-1, 1) * .75f)), (this.transform.position.y + (Random.Range(-1, 1) * .75f))); } } else if (enemyType == 3) { /*angle = 360f / (float)numberOfEnemies; * enemyHeading = 0;*/ for (int i = 0; i < numberOfEnemies; i++) { GameObject enemy = EnemyDumbPooler.current.GetPooledObject(); enemyDumb = enemy.GetComponent <EnemyDumbScript>(); if (enemy == null) { return; } enemy.transform.position = transform.position; enemy.transform.rotation = transform.rotation; //enemyDumb.heading = new Vector2(0, 1); enemy.SetActive(true); //take angle if (enemyHeading > 360) { enemyHeading = enemyHeading - 360; } enemyDumb.heading = new Vector2(Mathf.Cos(enemyHeading * (180f / Mathf.PI)), Mathf.Sin(enemyHeading * (180f / Mathf.PI))); enemyHeading += 360f / (float)numberOfEnemies; //convert to radians -- radians = angle * (pi / 180) //convert radians to unit vector //u = cosine(radians), sine (radians) } } else if (enemyType == 4) { for (int i = 0; i < numberOfEnemies; i++) { GameObject enemy = EnemyAvoidPooler.current.GetPooledObject(); if (enemy == null) { return; } enemy.transform.position = position; enemy.transform.rotation = transform.rotation; enemy.SetActive(true); position = new Vector2((this.transform.position.x + (Random.Range(-1, 1) * .75f)), (this.transform.position.y + (Random.Range(-1, 1) * .75f))); } } this.transform.localScale = new Vector3(3f, 3f, 1f); if (colorWorks == true) { theCamera.backgroundColor = instrumentColor; songScript.cameraColor = instrumentColor; } } else { if (colorWorks == true) { theCamera.backgroundColor = instrumentColor; songScript.cameraColor = instrumentColor; } this.transform.localScale = new Vector3(3f, 3f, 1f); return; } this.transform.localScale = new Vector3(3f, 3f, 1f); position = this.transform.position; }
public void LaunchEnemy(int enemyType, int numberOfEnemies) { if (alive == true) { if (enemyType == 1) { for (int i = 0; i < numberOfEnemies; i++) { GameObject enemy = EnemyFollowPooler.current.GetPooledObject(); if (enemy == null) { return; } enemy.transform.position = position; enemy.transform.rotation = transform.rotation; enemy.SetActive(true); position = new Vector2((this.transform.position.x + (Random.Range(-1, 1) * .75f)), (this.transform.position.y + (Random.Range(-1, 1) * .75f))); } } else if (enemyType == 2) { position = new Vector2(this.transform.position.x, this.transform.position.y); for (int i = 0; i < numberOfEnemies; i++) { GameObject enemy = EnemyStraightPooler.current.GetPooledObject(); if (enemy == null) { return; } enemy.transform.position = position; enemy.transform.rotation = transform.rotation; enemy.SetActive(true); position = new Vector2((this.transform.position.x + (Random.Range(-1, 1) * .75f)), (this.transform.position.y + (Random.Range(-1, 1) * .75f))); } } else if (enemyType == 3) { /*angle = 360f / (float)numberOfEnemies; enemyHeading = 0;*/ for (int i = 0; i < numberOfEnemies; i++) { GameObject enemy = EnemyDumbPooler.current.GetPooledObject(); enemyDumb = enemy.GetComponent<EnemyDumbScript>(); if (enemy == null) { return; } enemy.transform.position = transform.position; enemy.transform.rotation = transform.rotation; //enemyDumb.heading = new Vector2(0, 1); enemy.SetActive(true); //take angle if (enemyHeading > 360) { enemyHeading = enemyHeading - 360; } enemyDumb.heading = new Vector2(Mathf.Cos(enemyHeading * (180f / Mathf.PI)), Mathf.Sin(enemyHeading * (180f / Mathf.PI))); enemyHeading += 360f / (float)numberOfEnemies; //convert to radians -- radians = angle * (pi / 180) //convert radians to unit vector //u = cosine(radians), sine (radians) } } else if (enemyType == 4) { for (int i = 0; i < numberOfEnemies; i++) { GameObject enemy = EnemyAvoidPooler.current.GetPooledObject(); if (enemy == null) { return; } enemy.transform.position = position; enemy.transform.rotation = transform.rotation; enemy.SetActive(true); position = new Vector2((this.transform.position.x + (Random.Range(-1, 1) * .75f)), (this.transform.position.y + (Random.Range(-1, 1) * .75f))); } } this.transform.localScale = new Vector3(3f, 3f, 1f); if (colorWorks == true) { theCamera.backgroundColor = instrumentColor; songScript.cameraColor = instrumentColor; } } else { if (colorWorks == true) { theCamera.backgroundColor = instrumentColor; songScript.cameraColor = instrumentColor; } this.transform.localScale = new Vector3(3f, 3f, 1f); return; } this.transform.localScale = new Vector3(3f, 3f, 1f); position = this.transform.position; }