using UnityEngine; using RR.Game2D.Core; using RR.Game2D.Behaviour; namespace RR.Game2D.Entities.Projectiles { public class BasicProjectile : Projectile2D { protected override void OnHit(Collision2D target, Vector2 point, Vector2 relativeVelocity) { //var health = target.GetComponentInParent(); //if (health != null) //{ // health.ApplyDamage(damage); // if (knockback > 0f) // { // var targetRb = target.attachedRigidbody; // if (targetRb != null) // { // var dir = relativeVelocity.sqrMagnitude > 0.0001f // ? relativeVelocity.normalized // : (Vector2)(target.transform.position - transform.position).normalized; // targetRb.AddForce(dir * knockback, ForceMode2D.Impulse); // } // } //} var player = GameManager.Instance.PlayerObj; if (target.collider.CompareTag("Player")) player.GetComponent().Die(); else if (target.collider.CompareTag("Projectile") || target.collider.CompareTag("Enemy")) Despawn(); base.OnHit(target, point, relativeVelocity); } } }