Exemplo n.º 1
0
 void OnTriggerEnter2D(Collider2D other)
 {
     if (!explodeTriggerFired)         /*inimigos do solo por ex n sao deletados dps de explodir, por isso essa checagem */
     //o que colidiu pode ser o player ou municao ( damageDelar) ou municao (AmmoHandler)
     {
         DamageDealer damageDealer = other.GetComponent <DamageDealer>();
         AmmoHandler  projectile   = other.GetComponent <AmmoHandler>();
         /* só importa o player e o projetil dele, qqr outra coisa que colidir com um inimigo será indiferente a ele */
         if (!damageDealer && !projectile)
         {
             return;
         }
         /*destroi municoes do player quando tocar no inimigo*/
         if (other.gameObject.tag == Constantes.PLAYERPROJETIL)
         {
             if (projectile)
             {
                 ProcessHit(projectile);
                 projectile.GetComponent <AmmoHandler>().InstantiateEffect();
                 projectile.DestroyMe();
             }
             else
             {
                 Debug.LogWarning(Constantes.MISSING_AMMO_HANDLER_SCRIPT);
             }
         }
         else if (other.gameObject.tag == Constantes.PLAYER)
         {
             if (damageDealer)               /*reduzira a vida do player em 55% se colidiur com um inimigo */
             {
                 damageDealer.HitDueDirectColision(GetHitPercentage());
             }
         }
     }
 }
Exemplo n.º 2
0
    void OnTriggerEnter2D(Collider2D other)
    {
        AmmoHandler projectile = other.GetComponent <AmmoHandler>();

        /* só importa o player e o projetil dele, qqr outra coisa que colidir com um inimigo será indiferente a ele */
        if (!projectile)
        {
            return;
        }
        /*checagem do destroye aqui é só pra o tiro atravessar o objeto depis de destrui-lo xD*/
        if (other.gameObject.tag == Constantes.PLAYERPROJETIL && !destroyed)
        {
            projectile.GetComponent <AmmoHandler>().InstantiateEffect();
            //	projectile.DestroyMe();
            RemoveHealth(projectile.GetDamage());
        }
    }
Exemplo n.º 3
0
 private void ProjectileHandler(AmmoHandler playerProjectile)
 {
     playerProjectile.GetComponent <AmmoHandler>().InstantiateEffect();
     playerProjectile.DestroyMe();
     audioManager.play_die_audio();
 }