Показать сообщение отдельно
Старый 29.04.2013, 14:51   #1
Alex_Witcher
Нуждающийся
 
Регистрация: 15.02.2012
Сообщений: 53
Написано одно полезное сообщение
можно-ли моментально прервать КОРОУТИН во время выполнения "ожидания" ?

Всем привет, подскажите по короутинам, можно-ли моментально прервать этот метод во время выполнения "ожидания" ? StopCoroutine не то, он выполняется только когда коротин заканчивает свой "шаг ожидания". Ну например выполняется yield return new WaitForSeconds(10) , и тут прежде чем прошло 10 секунд, я хочу завершить это "ожидание".

вот есть у меня:

IEnumerator Down()
{

for (int i=k;i>-1;i--)
{
ii=i;

if (i==1 && s==1)
{
t=0.1f;
}
//////Когда выполнилось условие ниже, надо прервать выполнение этого метода МОМЕНТАЛЬНО
if (faz==true)
{

t=0.0f;
StartCoroutine(Up());
GameObject.Find("Main Camera").GetComponent<mainscript>().skore++;
if (a[0]==shagost1)
b[0]=0;
if (a[2]==shagost3)
b[2]=0;

shag=(k-1)*2;
shagost=shag;
yield break;


}
else
{
shagost--;
}
guiTexture.texture=foods[i];

guiTexture.pixelInset=new Rect(-Screen.width*0.07f,Screen.height*pos[i],Screen.height*0.08f,Screen.height*0.08f);

yield return new WaitForSeconds(t);


}

}

yield break-вроде не помогает
__________________
unity3d, 1я поделка.
https://play.google.com/store/apps/d...GVsaWNmcmVlIl0.
(Offline)
 
Ответить с цитированием