Ejemplo n.º 1
0
    void OnTriggerEnter2D(Collider2D other)
    {
        if (other.gameObject.tag == "Enemy")
        {
            Destroy();
            other.GetComponent <Enemy>().Kill();
        }

        if (other.gameObject.tag == "Boss")
        {
            Destroy();
        }

        if (other.gameObject.tag == "PowerUp")
        {
            switch (other.gameObject.GetComponent <PowerUp>().GetPowerUpType())
            {
            case PowerUp.POWERUP_TYPE.FAST:
                currPowerUp = PowerUp.POWERUP_TYPE.FAST;
                timeSincePowerUpActivated = 0.0f;
                break;

            case PowerUp.POWERUP_TYPE.TRIPPLE:
                currPowerUp = PowerUp.POWERUP_TYPE.TRIPPLE;
                timeSincePowerUpActivated = 0.0f;
                break;

            case PowerUp.POWERUP_TYPE.BOMB:
                GameObject[] enemies = GameObject.FindGameObjectsWithTag("Enemy");
                foreach (GameObject e in enemies)
                {
                    e.GetComponent <Enemy>().Kill();
                }

                currPowerUp = PowerUp.POWERUP_TYPE.NONE;
                break;

            case PowerUp.POWERUP_TYPE.DAMAGE_ALL:
                currPowerUp = PowerUp.POWERUP_TYPE.DAMAGE_ALL;
                timeSincePowerUpActivated = 0.0f;
                break;

            default:
                currPowerUp = PowerUp.POWERUP_TYPE.NONE;
                break;
            }

            audioSource.PlayOneShot(powerUpSound);

            other.GetComponent <PowerUp>().Kill();
        }
    }
Ejemplo n.º 2
0
    void HandlePowerUps()
    {
        if (currPowerUp != PowerUp.POWERUP_TYPE.NONE)
        {
            timeSincePowerUpActivated += Time.deltaTime;
            if (timeSincePowerUpActivated >= timePowerUpsLast)
            {
                currPowerUp = PowerUp.POWERUP_TYPE.NONE;
            }
        }

        if (currPowerUp == PowerUp.POWERUP_TYPE.FAST)
        {
            currTimeBetweenMissileFire = timeBetweenMissileFire / 2;
        }
        else
        {
            currTimeBetweenMissileFire = timeBetweenMissileFire;
        }
    }