Exemple #1
0
 void BlowUp()
 {
     if (!exploded)
     {
         exploded = true;
         if (this != null)
         {
             Collider2D[] hitThings = Physics2D.OverlapCircleAll(transform.position, blastRadius);
             if (hitThings != null)
             {
                 for (int i = 0; i < hitThings.Length; i++)
                 {
                     if (hitThings[i].tag == "Player1(Black)" || hitThings[i].tag == "Player2(White)" || hitThings[i].tag == "Player3" || hitThings[i].tag == "Player4")
                     {
                         enemyHealthScript = hitThings[i].GetComponent <PlayerHealth>();
                         if (enemyHealthScript.teamCount != teamCount)
                         {
                             enemyHealthScript.Damage(blastDamage, false);
                         }
                     }
                     else if (hitThings[i].tag == "Enemy")
                     {
                         aiHealthScript = hitThings[i].GetComponent <EnemyHealth>();
                         aiHealthScript.DamageEnemy(blastDamage);
                     }
                     else if (hitThings[i].tag == "Asteroid")
                     {
                         asteroidScript = hitThings[i].GetComponent <Asteroid>();
                         asteroidScript.DamageAsteroid(blastDamage);
                     }
                     else if (hitThings[i].tag == "RocketAmmo")
                     {
                         rocketScript = hitThings[i].GetComponent <RemoteLauncherShot>();
                         if (rocketScript.teamCount != teamCount)
                         {
                             rocketScript.DestroyThis();
                         }
                     }
                     else if (hitThings[i].tag == "DamageBug")
                     {
                         damageBugScript = hitThings[i].transform.GetComponent <DamageBug>();
                         if (damageBugScript.teamCount != teamCount)
                         {
                             //damage the bug
                             damageBugScript.DamageThis(blastDamage);
                         }
                     }
                     else if (hitThings[i].tag == "AutoTurretHitBox")
                     {
                         autoTurretScript = hitThings[i].transform.GetComponentInParent <AutoTurret>();
                         if (autoTurretScript != null)
                         {
                             if (autoTurretScript.teamCount != teamCount)
                             {
                                 //damage the Turret
                                 autoTurretScript.DamageThis(blastDamage);
                             }
                         }
                     }
                     else if (hitThings[i].tag == "TripMine")
                     {
                         tripMineScript = hitThings[i].transform.GetComponent <TripMine>();
                         if (tripMineScript.teamCount != teamCount)
                         {
                             //Blow up tripMine
                             tripMineScript.BlowUp();
                         }
                     }
                     else if (hitThings[i].tag == "Junk")
                     {
                         junkScript = hitThings[i].GetComponent <JunkHealth>();
                         junkScript.DamageJunk(blastDamage);
                     }
                 }
                 DestroyThis();
             }
             else
             {
                 //Debug.Log("hit nothin");
             }
             DestroyThis();
         }
     }
 }
Exemple #2
0
 void BlowUp()
 {
     if (this != null)
     {
         Collider2D[] hitThings = Physics2D.OverlapCircleAll(transform.position, range);
         if (hitThings != null)
         {
             for (int i = 0; i < hitThings.Length; i++)
             {
                 if (hitThings[i].tag == "Player1(Black)" || hitThings[i].tag == "Player2(White)" || hitThings[i].tag == "Player3" || hitThings[i].tag == "Player4")
                 {
                     playerHealthScript = hitThings[i].GetComponent <PlayerHealth>();
                     if (playerHealthScript.teamCount != teamCount)
                     {
                         playerHealthScript.Damage(grenadeDamage, false);
                     }
                 }
                 else if (hitThings[i].tag == "Asteroid")
                 {
                     asteroidScript = hitThings[i].GetComponent <Asteroid>();
                     asteroidScript.DamageAsteroid(grenadeDamage);
                 }
                 else if (hitThings[i].tag == "RocketAmmo")
                 {
                     rocketScript = hitThings[i].GetComponent <RemoteLauncherShot>();
                     if (rocketScript.teamCount != teamCount)
                     {
                         rocketScript.DestroyThis();
                     }
                 }
                 else if (hitThings[i].tag == "DamageBug")
                 {
                     damageBugScript = hitThings[i].transform.GetComponent <DamageBug>();
                     if (damageBugScript.teamCount != teamCount)
                     {
                         //damage the bug
                         damageBugScript.DamageThis(grenadeDamage);
                     }
                 }
                 else if (hitThings[i].tag == "AutoTurretHitBox")
                 {
                     autoTurretScript = hitThings[i].transform.GetComponentInParent <AutoTurret>();
                     if (autoTurretScript != null)
                     {
                         if (autoTurretScript.teamCount != teamCount)
                         {
                             //damage the Turret
                             autoTurretScript.DamageThis(grenadeDamage);
                         }
                     }
                 }
                 else if (hitThings[i].tag == "TripMine")
                 {
                     tripMineScript = hitThings[i].transform.GetComponent <TripMine>();
                     if (tripMineScript.teamCount != teamCount)
                     {
                         //Blow up tripMine
                         tripMineScript.BlowUp();
                     }
                 }
                 else if (hitThings[i].tag == "Junk")
                 {
                     junkScript = hitThings[i].GetComponent <JunkHealth>();
                     junkScript.DamageJunk(grenadeDamage);
                 }
             }
         }
         Destroy(this.gameObject, 3f);
     }
 }