Timing explosions

Here’s what I am trying to do: instantiate 3 explosions in rapid succession along the lenght of a ship; Problem is, my math is really bad here and all booms go off at once:
var explosionRing : GameObject;

function Start() {
	Instantiate(explosionRing, transform.position, transform.rotation);
	yield WaitForSeconds (0.5);	
	Instantiate(explosionRing, transform.position, transform.rotation);
	yield WaitForSeconds (0.5);	
	Instantiate(explosionRing, transform.position, transform.rotation);
	yield WaitForSeconds (0.5);	
	Instantiate(explosionRing, transform.position, transform.rotation);
    Destroy(gameObject);
	
}

What’s wrong with this tiny fellow?

For starters, you put the “Destroy(gameObject);” code at the bottom, meaning it applies to only one explosion. What I suggest is using this code after each, then placing a timing code so that the next explosion only occurs after the last explosion has occured (or, in coding terms, been destroyed as a Game Object).