void OnCollisionEnter2D(Collision2D other)
    {
        if (other.gameObject.tag == "Enemy")
        {
            if (!isInvuln)
            {
                int damage = other.gameObject.GetComponent <EnemyBase>().attackDamage;

                knockbackDirection = new Vector2(transform.position.x - other.transform.position.x, Vector2.up.y).normalized;

                if (PlayerBase.Instance.currentHealth > 1)
                {
                    StartCoroutine(KnockbackPlayer());
                    StartCoroutine(TempInvuln());
                    StartCoroutine(camEffects.CameraShake(camEffects.playerHitAmpGain, camEffects.playerHitShakeIntensity, camEffects.playerHitShakeLength));
                    StartCoroutine(FlashSprite());
                }
                PlayerBase.Instance.TakeDamage(damage);
            }
        }
    }
예제 #2
0
 void CauseDamage(EnemyBase target)
 {
     target.GetComponent <EnemyBase>().TakeDamage(damage);
     ApplyKnockbackToPlayer();
     StartCoroutine(camEffects.CameraShake(camEffects.enemyHitAmpGain, camEffects.enemyHitShakeIntensity, camEffects.enemyHitShakeLength));
 }