Esempio n. 1
0
    void OnTriggerEnter(Collider collider)
    {
        GameObject collidingObject = collider.gameObject;

        if (collidingObject.tag == "Projectile" && !IsOffScreen())
        {
            ProjectileController projectile = collidingObject.GetComponent <ProjectileController>();
            AudioManager.instance.PlaySoundWithRandomPitch(projectile.GetHitClip(), 0.5f, 1.5f);
            TakeDamage(projectile.Damage, projectile.transform.position);
            projectile.Disable();
            diffMng.SetHitPct(true, projectile.GetWeaponType());
        }
    }
Esempio n. 2
0
    void OnTriggerEnter(Collider collider)
    {
        if (collider.tag == "ExperiencePickup")
        {
            Pickup exp = collider.gameObject.GetComponent <Pickup>();
            if (exp != null)
            {
                GainExperience(exp.GetValue());
                experiencePickupEffect.Play(true);
                exp.DestroyPickup(true);
                AudioManager.instance.PlaySoundWithRandomPitch(pickupSounds[Random.Range(0, pickupSounds.Length)], 0.75f, 1.25f);
            }
        }

        if (collider.tag == "HealthPickup")
        {
            Pickup hp = collider.gameObject.GetComponent <Pickup>();
            if (hp != null)
            {
                curHealth += hp.GetValue();
                curHealth  = Mathf.Clamp(curHealth, 0, maxHealth);
                healthPickupEffect.Play(true);
                hp.DestroyPickup(true);
                AudioManager.instance.PlaySoundWithRandomPitch(pickupSounds[Random.Range(0, pickupSounds.Length)], 0.75f, 1.25f);
            }
        }

        if (collider.tag == "EnemyProjectile")
        {
            ProjectileController projectile = collider.gameObject.GetComponent <ProjectileController>();
            if (projectile != null)
            {
                TakeDamage(projectile.Damage, projectile.transform.position);
                AudioManager.instance.PlaySoundWithRandomPitch(projectile.GetHitClip(), 0.5f, 1.5f);
                projectile.Disable();
            }
        }

        if (collider.tag == "Enemy")
        {
            EnemyBehaviour enemy = collider.gameObject.GetComponent <EnemyBehaviour>();
            if (enemy != null)
            {
                TakeDamage(enemy.CollisionDamage, enemy.transform.position);
                AudioManager.instance.PlaySoundWithRandomPitch(enemy.GetRandomDeathSound(), 0.75f, 1.25f);
                enemy.TakeDamage(enemy.CollisionDamage, transform.position);
            }
        }
    }