Example #1
0
    IEnumerator Shoot()
    {
        canIFire = false;
        for (int i = 0; i < damage; i++)
        {
            if (SetTargetEnemy() != null)
            {
                EnemyDamage target = SetTargetEnemy();
                muzzleFlash.Emit(1);
                Instantiate(projectileParticle, new Vector3(target.transform.position.x, target.transform.position.y + 3, target.transform.position.z), Quaternion.identity);
                if (i == damage - 1)
                {
                    GetComponent <AudioSource>().PlayOneShot(lastGunShot, soundVolume * .6f);
                }
                else
                {
                    GetComponent <AudioSource>().PlayOneShot(gunShot);
                }
                target.ProcessDamageRecivedFromMarines();
            }
            yield return(new WaitForSeconds(.1f));
        }
        yield return(new WaitForSeconds(3f / fireRate));

        canIFire = true;
    }