private void OnCollisionEnter2D(Collision2D collision) { if (damageOnCollision && collision.gameObject.GetComponent <PlayerLife>()) { if (collision.gameObject.GetComponent <PlayerLife>().CanPlayerBeHit()) { StartCoroutine(InvFrames(collision)); PlayerLife pLife = collision.gameObject.GetComponent <PlayerLife>(); pLife.PlayerLifeDecrease(); _particles.gameObject.transform.position = collision.gameObject.transform.position; _particles.Play(); Rigidbody2D pBody = pLife.gameObject.GetComponent <Rigidbody2D>(); Vector2 difference = pBody.transform.position - transform.position; difference = difference.normalized * knockBack; pBody.position += difference; } } }