Пример #1
0
    public void OnTriggerEnter2D(Collider2D other)
    {
        if (other.gameObject.tag == "Enemy")
        {
            _enemyHP = other.gameObject.GetComponentInParent <Enemy_HP>();

            if (_enemyHP == null)
            {
                _fenrirHP = other.gameObject.GetComponentInParent <Fenrir_HP>();
            }

            SoundManager.instance.PlaySound("sword_hit", _source, false);

            if (_enemyHP != null && !_enemyHP.thisIsABoss)
            {
                _enemyMovement = other.gameObject.GetComponentInParent <Enemy_Movement>();
                _enemyMovement.Knockback(250f, 250f);
            }

            if (_fenrirHP == null)
            {
                if (_enemyHP.HP > 0)
                {
                    _sword.AddCompletionByDamage(_specialCompletionPercent);
                }

                _enemyHP.TakeDamage(_damage);
            }
            else
            {
                if (_fenrirHP.HP > 0)
                {
                    _sword.AddCompletionByDamage(_specialCompletionPercent);
                }
                _fenrirHP.TakeDamage(_damage);
            }

            _fenrirHP      = null;
            _enemyHP       = null;
            _enemyMovement = null;
        }
        else if (other.gameObject.tag == "Head")
        {
            SoundManager.instance.PlaySound("sword_hit", _source, false);
            other.gameObject.GetComponent <Head>().SpillBlood();
        }
    }