public void Shoot() { if (player != null && transform.position.y != player.transform.position.y) { Vector2 target = player.transform.position; Vector2 loc = transform.position; Quaternion Rotation = Quaternion.Euler(0, 0, 90 + Mathf.Atan((loc.y - target.y) / (loc.x - target.x)) * 180 / Mathf.PI); GameObject bullet = Gameobjectspool.GetBullet(loc, Rotation, 9); bullet.SetActive(true); } }
private void Update() { RB.MovePosition(transform.position + transform.up * speed); if (Current_lifetime >= Max_lifetime) { Gameobjectspool.ReturnBullet(gameObject); } else { Current_lifetime += Time.deltaTime; } }
void Awake() { ScreenUtils.Initialize(); Gameobjectspool.initialize(); spawntime = Random.Range(MinTime, MaxTime); GameObject dummy = Gameobjectspool.GetEnemy(); BoxCollider2D dumdum = dummy.GetComponent <BoxCollider2D>(); hight = dumdum.size.y / 2; width = dumdum.size.x / 2; Gameobjectspool.ReturnEnemy(dummy); }
private void OnCollisionEnter2D(Collision2D collision) { if (collision.gameObject.CompareTag("Enemy")) { Gameobjectspool.ReturnEnemy(collision.gameObject); } else if (collision.gameObject.CompareTag("Player")) { collision.gameObject.SetActive(false); } Current_lifetime = 0f; Gameobjectspool.ReturnBullet(gameObject); }
//spawns the enemies void Spawn() { Vector3 loc = new Vector3(ScreenUtils.ScreenRight + width, Random.Range(ScreenUtils.ScreenBottom + hight, ScreenUtils.ScreenTop - hight), -Camera.main.transform.position.z); if (Physics2D.OverlapCircle(loc, width) == null) { GameObject enemy = Gameobjectspool.GetEnemy(); enemy.transform.position = loc; enemy.SetActive(true); } else { Spawn(); } }
void Update() { if (transform.position.y + width > ScreenUtils.ScreenTop || transform.position.y - width < ScreenUtils.ScreenBottom) { transform.position = new Vector3(transform.position.x, Mathf.Clamp(transform.position.y, ScreenUtils.ScreenBottom, ScreenUtils.ScreenTop), 0); } if (Input.GetAxis("Vertical") > 0 && transform.position.y + width < ScreenUtils.ScreenTop) { RB.MovePosition(transform.position + Vector3.up * Speed); } else if (Input.GetAxis("Vertical") < 0 && transform.position.y - width > ScreenUtils.ScreenBottom) { RB.MovePosition(transform.position - Vector3.up * Speed); } if (Input.GetKeyDown(KeyCode.Space)) { GameObject bullet = Gameobjectspool.GetBullet(transform.position, Quaternion.Euler(0, 0, -90), 8); bullet.SetActive(true); } }
private void OnBecameInvisible() { Gameobjectspool.ReturnEnemy(gameObject); }
void OnCollisionEnter2D(Collision2D collision) { Gameobjectspool.ReturnEnemy(gameObject); HUD.Score(); collision.gameObject.SetActive(false); }
void OnBecameInvisible() { Current_lifetime = 0f; Gameobjectspool.ReturnBullet(gameObject); }