Yield WaitForSeconds() working randomly?

In the following code, it works for a few times and the all of a sudden it would stop at the yiels waitforseconds and not return, it prints the first 13 but not the second one, thats after its been working for uo to 100 times?

function strans13(){
var ms2 = a14.GetComponent("StartInstant") as StartInstant;

var ms3 = a15.GetComponent("StartInstant") as StartInstant;

var ms4 = a16.GetComponent("StartInstant") as StartInstant;

var tet1 = ms2.clonet.GetComponent("movespacemen") as movespacemen;

var tet2 = ms3.clonet.GetComponent("movespacemen") as movespacemen;

var tet3 = ms4.clonet.GetComponent("movespacemen") as movespacemen;

tet1.trans = true;

tet2.trans = true;

tet3.trans = true;

print("13");

yield new WaitForSeconds(tytt);

print("13");

var staa13 = a13.GetComponent("StartInstant") as StartInstant;

random();

staa13.capt = tempc;

staa13.alien = tempa;

staa13.SetUp();

poepsa13();

Instantiate(tele,a16.transform.position,a16.transform.rotation);

tytt=1.0;

}

Anyones that can help please.
Thanx
Gordon

Where is tytt set? Is it only in one (other) place? If it’s getting modified, that might explain a longer wait.

Also, instead of always outputting ‘13’ try different things like ‘13a’ and ‘13b’ to help track what’s what.

Also, why do you have ‘new’ in there? The docs http://unity3d.com/support/documentation/ScriptReference/WaitForSeconds.WaitForSeconds.html
don’t have that.