void OnTriggerEnter2D(Collider2D col) { if (col.gameObject.tag.Equals("FriendlyBullet")) { FriendlyBullet b = col.gameObject.GetComponent <FriendlyBullet>(); //Debug.Log(col.gameObject.GetComponent<Rigidbody2D>().velocity); if (b != null) { float dmg = b.getSpeed() / 5; health -= dmg; Debug.Log("lost " + dmg + " health"); } } }
void OnTriggerEnter2D(Collider2D col) { if (col.gameObject.tag.Equals("FriendlyBullet")) { Spawner.enemiesThisRound++; Spawner.enemiesAlive++; GameObject ghostSpawn = Instantiate(ghost, transform.position, Quaternion.identity) as GameObject; FriendlyBullet b = col.gameObject.GetComponent <FriendlyBullet>(); //Debug.Log(col.gameObject.GetComponent<Rigidbody2D>().velocity); if (b != null) { health -= 50; //Debug.Log("lost " + dmg + " health"); } } }
void OnCollisionEnter2D(Collision2D col) { if (col.gameObject.tag.Equals("FriendlyBullet")) { FriendlyBullet b = col.gameObject.GetComponent <FriendlyBullet>(); //Debug.Log(col.gameObject.GetComponent<Rigidbody2D>().velocity); if (b != null) { recentlyHit = true; float dmg = b.getSpeed() / 5; health -= dmg; //Debug.Log("lost " + dmg + " health"); Destroy(col.gameObject); } } }
void Shoot(Vector2 aim, float speed, bool fullyCharged) { anim.SetTrigger("Throw"); Vector2 dir = aim - (new Vector2(transform.position.x, transform.position.y)); dir.Normalize(); GameObject bullet = Instantiate(friendlyBullet, transform.position, Quaternion.identity) as GameObject; bullet.GetComponent <Rigidbody2D>().velocity = dir * speed; FriendlyBullet b = bullet.GetComponent <FriendlyBullet>(); b.setSpeed(speed); if (fullyCharged && charges > 0) { charges--; txtCharges.text = "Charged Shots: " + charges.ToString(); b.transform.localScale += new Vector3(1, 1, 0); bullet.GetComponent <CircleCollider2D>().isTrigger = true; } }
void OnCollisionEnter2D(Collision2D col) { if (col.gameObject.tag.Equals("FriendlyBullet")) { FriendlyBullet b = col.gameObject.GetComponent <FriendlyBullet>(); //Debug.Log(col.gameObject.GetComponent<Rigidbody2D>().velocity); if (b != null) { float dmg = b.getSpeed() / 5; health -= dmg; //Debug.Log("lost " + dmg + " health"); Destroy(col.gameObject); } } else if (col.gameObject.tag.Equals("Player")) { Spawner.enemiesAlive--; Spawner.enemiesKilled++; Destroy(this.gameObject); } }
void OnCollisionEnter2D(Collision2D col) { if (col.gameObject.tag.Equals("FriendlyBullet")) { FriendlyBullet b = col.gameObject.GetComponent <FriendlyBullet>(); //Debug.Log(col.gameObject.GetComponent<Rigidbody2D>().velocity); if (b != null) { int x = Random.Range(0, 3); if (x == 0) { GameObject healthPack = Instantiate(hp, transform.position, Quaternion.identity) as GameObject; } Spawner.enemiesAlive--; Spawner.enemiesKilled++; float dmg = b.getSpeed() / 5; Destroy(this.gameObject); Destroy(col.gameObject); } } }
public void Shoot() { if (!alive) { return; } FriendlyBullet bullet = new FriendlyBullet((int)(X + 2 * Width * Scale * 1.1f), (int)(Y + Height * Scale / 2)); bullet.X = X + 2 * Width * Scale * 1.1f; bullet.Y = Y + Height * Scale / 2; bullet.Vx = 50f; if (PhysicsSprite.lastdir) { bullet.X = X - 50; bullet.Vx *= -1; } else { bullet.X = X + Width + 50; } Engine.canvas.csAdd(bullet); }
void OnCollisionEnter2D(Collision2D col) { if (col.gameObject.tag.Equals("FriendlyBullet")) { for (int i = 0; i < 3; i++) { Vector2 spawnLocation = new Vector2(Random.Range(-80, 80), Random.Range(-50, 50)); Spawner.enemiesAlive++; Spawner.enemiesThisRound++; GameObject e = Instantiate(ghost, spawnLocation, Quaternion.identity) as GameObject; } FriendlyBullet b = col.gameObject.GetComponent <FriendlyBullet>(); //Debug.Log(col.gameObject.GetComponent<Rigidbody2D>().velocity); if (b != null) { health -= 20; //Debug.Log("lost " + dmg + " health"); Destroy(col.gameObject); } } }
public void PlayerFire(Player player) { if (player.upgradeStage == -1) { return; } if (player.upgradeStage == 0) { if (currentKeyState.IsKeyDown(Keys.Space)) { if (player.firingTimer <= 0) { playerBulletSprite = new FriendlyBullet(); playerBulletSprite.SetTexture(playerBulletTexture); playerBulletSprite.UpperLeft = new Vector2(player.UpperLeft.X + (playerSprite.GetWidth() / 2) - (playerBulletSprite.GetWidth() / 2), playerSprite.UpperLeft.Y); playerBulletSprite.SetSpeedAndDirection(10, 90); friendlyBullets.AddLast(playerBulletSprite); playerSprite.firingTimer = playerSprite.firingDelay - 1; } } } if (player.upgradeStage == 1) { if (currentKeyState.IsKeyDown(Keys.Space)) { if (player.firingTimer <= 0) { playerBulletSprite = new FriendlyBullet(); playerBulletSprite.SetTexture(playerBulletTexture); playerBulletSprite.UpperLeft = new Vector2(player.UpperLeft.X + (playerSprite.GetWidth() / 2) - (playerBulletSprite.GetWidth()), playerSprite.UpperLeft.Y); playerBulletSprite.SetSpeedAndDirection(10, 90); friendlyBullets.AddLast(playerBulletSprite); playerBulletSprite = new FriendlyBullet(); playerBulletSprite.SetTexture(playerBulletTexture); playerBulletSprite.UpperLeft = new Vector2(player.UpperLeft.X + (playerSprite.GetWidth() / 2), playerSprite.UpperLeft.Y); playerBulletSprite.SetSpeedAndDirection(10, 90); friendlyBullets.AddLast(playerBulletSprite); playerSprite.firingTimer = playerSprite.firingDelay - 1; } } } if (player.upgradeStage == 2) { if (player.upgradeCounter == 0) { if (currentKeyState.IsKeyDown(Keys.Space)) { if (player.firingTimer <= 0) { playerBulletSprite = new FriendlyBullet(); playerBulletSprite.SetTexture(playerBulletTexture); playerBulletSprite.UpperLeft = new Vector2(player.UpperLeft.X + (player.GetWidth() / 2) - (playerBulletSprite.GetWidth()), playerSprite.UpperLeft.Y); playerBulletSprite.SetSpeedAndDirection(10, 90); friendlyBullets.AddLast(playerBulletSprite); playerBulletSprite = new FriendlyBullet(); playerBulletSprite.SetTexture(playerBulletTexture); playerBulletSprite.UpperLeft = new Vector2(player.UpperLeft.X + (player.GetWidth() / 2), playerSprite.UpperLeft.Y); playerBulletSprite.SetSpeedAndDirection(10, 90); friendlyBullets.AddLast(playerBulletSprite); player.firingTimer = 2; player.upgradeCounter = 1; } } } else if (player.upgradeCounter == 1) { if (player.firingTimer <= 0) { playerBulletSprite = new FriendlyBullet(); playerBulletSprite.SetTexture(playerBulletTexture); playerBulletSprite.UpperLeft = new Vector2(player.UpperLeft.X + (player.GetWidth() / 2) - (playerBulletSprite.GetWidth() / 2), playerSprite.UpperLeft.Y); playerBulletSprite.SetSpeedAndDirection(10, 90); friendlyBullets.AddLast(playerBulletSprite); player.firingTimer = playerSprite.firingDelay - 1; player.upgradeCounter = 0; } } else { player.upgradeCounter = 0; } } if (player.upgradeStage == 3) { if (player.upgradeCounter == 0) { if (currentKeyState.IsKeyDown(Keys.Space)) { if (player.firingTimer <= 0) { playerBulletSprite = new FriendlyBullet(); playerBulletSprite.SetTexture(playerBulletTexture); playerBulletSprite.UpperLeft = new Vector2(player.UpperLeft.X + (player.GetWidth() / 2) - (playerBulletSprite.GetWidth()), playerSprite.UpperLeft.Y); playerBulletSprite.SetSpeedAndDirection(10, 90); friendlyBullets.AddLast(playerBulletSprite); playerBulletSprite = new FriendlyBullet(); playerBulletSprite.SetTexture(playerBulletTexture); playerBulletSprite.UpperLeft = new Vector2(player.UpperLeft.X + (player.GetWidth() / 2), playerSprite.UpperLeft.Y); playerBulletSprite.SetSpeedAndDirection(10, 90); friendlyBullets.AddLast(playerBulletSprite); playerBulletSprite = new FriendlyBullet(); playerBulletSprite.SetTexture(playerBulletTexture); playerBulletSprite.UpperLeft = new Vector2(player.UpperLeft.X + (player.GetWidth() / 2) + (playerBulletSprite.GetWidth() / 2), playerSprite.UpperLeft.Y); playerBulletSprite.SetSpeedAndDirection(10, -90); playerBulletSprite.ChangeRotationAngle(-180); friendlyBullets.AddLast(playerBulletSprite); player.firingTimer = 2; player.upgradeCounter = 1; } } } else if (player.upgradeCounter == 1) { if (currentKeyState.IsKeyDown(Keys.Space)) { if (player.firingTimer <= 0) { playerBulletSprite = new FriendlyBullet(); playerBulletSprite.SetTexture(playerBulletTexture); playerBulletSprite.UpperLeft = new Vector2(player.UpperLeft.X + (player.GetWidth() / 2) - (playerBulletSprite.GetWidth()), playerSprite.UpperLeft.Y); playerBulletSprite.SetSpeedAndDirection(10, 90); friendlyBullets.AddLast(playerBulletSprite); playerBulletSprite = new FriendlyBullet(); playerBulletSprite.SetTexture(playerBulletTexture); playerBulletSprite.UpperLeft = new Vector2(player.UpperLeft.X + (player.GetWidth() / 2), playerSprite.UpperLeft.Y); playerBulletSprite.SetSpeedAndDirection(10, 90); friendlyBullets.AddLast(playerBulletSprite); player.firingTimer = 2; player.upgradeCounter = 2; } } } else if (player.upgradeCounter == 2) { if (player.firingTimer <= 0) { playerBulletSprite = new FriendlyBullet(); playerBulletSprite.SetTexture(playerBulletTexture); playerBulletSprite.UpperLeft = new Vector2(player.UpperLeft.X + (player.GetWidth() / 2) - (playerBulletSprite.GetWidth() / 2), playerSprite.UpperLeft.Y); playerBulletSprite.SetSpeedAndDirection(10, 90); friendlyBullets.AddLast(playerBulletSprite); player.firingTimer = playerSprite.firingDelay - 1; player.upgradeCounter = 0; } } else { player.upgradeCounter = 0; } } playerSprite.firingTimer -= 1; }