Exemple #1
0
 public void ClashedWithOtherMelee(MeleeDamagingCollider otherMelee)
 {
     _mouvementManager.AddKnockBack(otherMelee);
     otherMelee.Consumed();
     OnMeleeClashed();
     ClashFX(otherMelee);
 }
Exemple #2
0
    public void RoutedTriggerEnter(Collider2D collision)
    {
        var damaging = collision.gameObject.GetComponent <IDamaging>();

        if (damaging != null)
        {
            switch (damaging.TypeOfDamage)
            {
            case DamageType.Melee:
                _meleeColliderLimiter++;
                if (_meleeColliderLimiter == 1)
                {
                    AbsordBullets(damaging);
                    StartCoroutine(ResetMeleeLimiter());
                    MeleeDamagingCollider melee = damaging as MeleeDamagingCollider;
                    m_AbsorbAudioSource = PlayNewSound(m_AbsorbAudioSource, melee._meleeAttack.Clash);
                }
                break;

            case DamageType.Explosive:
                AbsordBullets(damaging);
                m_AbsorbAudioSource = PlayNewSound(m_AbsorbAudioSource, AbrosbExplosion);
                break;

            default:
                AbsordBullets(damaging);
                m_AbsorbAudioSource = PlayNewSound(m_AbsorbAudioSource, AbsorbBullet);
                break;
            }
            damaging.Consumed();
        }
    }
Exemple #3
0
    private void ClashFX(MeleeDamagingCollider otherMelee)
    {
        PlayClashSFX();
        GameObject toParent = gameObject;

        if (otherMelee.HasPreferredImpactPoint)
        {
            toParent = otherMelee.gameObject;
        }
        InstatiateParticle(ClashingParticle, toParent, true);
        InstatiateParticle(CrowdParticle, toParent, false, _CrowdFxTimer);
    }
Exemple #4
0
 private void ClashFX(MeleeDamagingCollider otherMelee)
 {
     PlayClashSFX();
     GameObject toParent = gameObject;
     if (otherMelee.HasPreferredImpactPoint)
     {
         toParent = otherMelee.gameObject;
     }
     InstatiateParticle(ClashingParticle, toParent, true);
     InstatiateParticle(CrowdParticle, toParent, false, _CrowdFxTimer);
 }
Exemple #5
0
 public void ClashedWithOtherMelee(MeleeDamagingCollider otherMelee)
 {
     _mouvementManager.AddKnockBack(otherMelee);
     otherMelee.Consumed();
     OnMeleeClashed();
     ClashFX(otherMelee);
 }