Beispiel #1
0
    private void OnTriggerEnter2D(Collider2D collision)
    {
        if (collision.tag == "Obstacle")
        {
            if (!isInvulnerable)
            {
                if (collision.GetComponent <ObstacleController>() is DoveObstacle)
                {
                    collision.GetComponent <DoveObstacle>().DoveDeath();
                }

                if (!Bonuses.IsBonusShield)
                {
                    if (collision.GetComponent <ObstacleController>().typeOfObstacle == ObstacleController.TypeOfObstacle.WireBreak)
                    {
                        Game.ElectronHP = 0;
                    }
                    else
                    {
                        Game.ElectronHP--;
                        animator.SetTrigger("ElectronDamage");
                        particalAnimator.SetTrigger("ElectronDamage");
                        isInvulnerable = true;
                        StartCoroutine(InvulnerableTimer());
                    }
                }
            }
        }
        if (collision.tag == "Bonus")
        {
            if (collision.transform.GetComponent <BonusInditification>().bonus == BonusInditification.BonusType.Shield)
            {
                StartCoroutine(ShieldActive(Bonuses.bonusesTime));
            }
            Bonuses.ActiveBonus(collision.transform.GetComponent <BonusInditification>().bonus);
            Destroy(collision.gameObject);
        }
    }