void FlameBulletFire() { GameObject bullet = Instantiate(flameBullet, flame1.gameObject.transform.position, Quaternion.identity); float cosMoving = Mathf.Cos(this.transform.eulerAngles.y / 180 * Mathf.PI); float sinMoving = Mathf.Sin(this.transform.eulerAngles.y / 180 * Mathf.PI); //Moving bullet.GetComponent <Rigidbody>().velocity = new Vector3(sinMoving * GameMechanics.Mechanics.FlamerBulletSpeed, 0, cosMoving * GameMechanics.Mechanics.FlamerBulletSpeed); FlameBullet bullatIn = bullet.GetComponent <FlameBullet>(); if (GameMechanics.Mechanics.flameDamage) { bullatIn.damage = damage + GameMechanics.Mechanics.BonusFlameDamage; } else { bullatIn.damage = damage; } if (GameMechanics.Mechanics.burningTime) { bullatIn.burningTime = GameMechanics.Mechanics.FlamerBurningTime + GameMechanics.Mechanics.BonusBurningTime; } else { bullatIn.burningTime = GameMechanics.Mechanics.FlamerBurningTime; } bullatIn.lifeTime = GameMechanics.Mechanics.FlamerBulletLifeTime; bullatIn.RadiusModification = GameMechanics.Mechanics.FlamerRadiusModification; }
void OnTriggerEnter2D(Collider2D collision) { if (collision.gameObject.tag == "Player") { //Debug.Log("you hit the " + name); collision.gameObject.GetComponent <Character>().SayTextHit(); collision.gameObject.GetComponent <Character>().Hit = true; //! Reduce player health collision.gameObject.GetComponent <Character>().GetDamage(damage); } if (collision.gameObject.tag == "Bullet") { //Debug.Log("bullet hit!"); Bullet bullet = collision.gameObject.GetComponent <Bullet>(); //! Reduce Enemy health by bullet power life -= bullet.Damage; Destroy(collision.gameObject); if (life <= 0) { GameManager.UpdateScore(1); Destroy(gameObject); } } if (collision.gameObject.tag == "Flame") { Debug.Log("flame hit!"); FlameBullet bullet = collision.gameObject.GetComponent <FlameBullet>(); //! Reduce Enemy health by bullet power life -= bullet.Damage; Destroy(collision.gameObject); if (life <= 0) { GameManager.UpdateScore(1); Destroy(gameObject); } } }