Instantiate the same gameobject multiple times at once

So i am trying to create code where by when I shoot, bullets will shoot out of my gun at the same time, from 3 different positions. If I do a singular instantiate, it works fine, like below:

   IEnumerator ShotgunCoolDown()
{
PistolGunEffect.SetActive(false);
canShoot = true;
yield return new WaitForSeconds(0.45f);
GetComponent<AudioSource>().PlayOneShot(PistolGunSound);
canShoot = false;
StartCoroutine(COPlayOneShot("Fire"));
RifleGunEffect.GetComponent<ParticleSystem>().Play();
(Instantiate(PistolBullet, ShotgunPoint.transform.position, transform.root.rotation) as GameObject).GetComponent<BulletScript>().Activate();
yield return new WaitForSeconds(0.25f);
}


However if i add multiple instantiates with different positionings, it will spawn the bullet for a millisecond before disappearing:

     IEnumerator ShotgunCoolDown()
{
PistolGunEffect.SetActive(false);
canShoot = true;
yield return new WaitForSeconds(0.45f);
GetComponent<AudioSource>().PlayOneShot(PistolGunSound);
canShoot = false;
StartCoroutine(COPlayOneShot("Fire"));
RifleGunEffect.GetComponent<ParticleSystem>().Play();
(Instantiate(PistolBullet, ShotgunPoint.transform.position, transform.root.rotation) as GameObject).GetComponent<BulletScript>().Activate();
(Instantiate(PistolBullet, ShotgunPoint1.transform.position, transform.root.rotation) as GameObject).GetComponent<BulletScript>().Activate();
(Instantiate(PistolBullet, ShotgunPoint2.transform.position, transform.root.rotation) as GameObject).GetComponent<BulletScript>().Activate();
yield return new WaitForSeconds(0.25f);
}


Any ideas how to address this?

• without any further detail I can just guess that if your bullets have colliders and they are too close they could trigger each other the collision and thus destroy. If that's not the case, I guess could be of help to understand what you BulletScript consists of – Leggy7 Aug 14 '16 at 22:51
• I wish I could comment. Try disabling the colliders for the bullets to see if they don't destroy. How are you handling bullet destroy perhaps they don't need to be destroyed if they collide with another bullet. – kodaman Aug 14 '16 at 23:17
• It might also help to see the physical points where the bullets are instantiated. Maybe a front view of the shotgun, with the three points visible? If you can put a break point in your code directly after instantiating the third bullet, we might even be able to get a freeze-frame of the bullets "firing" from the gun the instant they are created. This would be especially helpful; be sure to select one of the bullets in scene view before screenshotting, as this should make the collider visible. – Gnemlock Aug 15 '16 at 1:21