Показать сообщение отдельно
Старый 07.12.2009, 23:03
veles2008 вне форума Посмотреть профиль Отправить личное сообщение для veles2008 Найти все сообщения от veles2008
  № 1  
Ответить с цитированием
veles2008
 
Аватар для veles2008

Регистрация: Sep 2008
Сообщений: 158
По умолчанию цикл FOR не хочет останавливаться

На сцене есть поле ввода pole в котороя я ввожу количество повторений в цикле. Если ввожу 1 цикл работает 1 раз. Если ввожу число больше 1 то цикл выполняется бесконечно. Почему так?

Код AS1/AS2:
pole1 = 1;
var course:Array = new Array(); 
var step:Number = 10; 
var count:Number = 0;
povtoryt3.onPress = function () {
	txt.text +="Повторить" + "\n";
}
pole.onChanged = function(txt:TextField) {
	func();
}
function func() {
	pole1 = Number(pole.text);
}
powtor.onPress = function() {
	txt.text +=pole1 + ' ' + povy.text  +"\n";
}
moveBK.onPress = function  () {
course.push('VPEROD');
txt.text +="Вперёд" + ' ' + vp1.text  +"\n";
		}
		function moveIt () {
	if (count < course.length) {
		doMove (course[count]); 
		count++;
	}
	else {
		clearInterval (moveBk); 
		count = 0; 
		for (i in  course) {
			pusk.enabled = true;
		}
	}
	}
function doMove (direct:String) {
	switch (direct) {  
	case 'VPEROD' :
		var ss1=Number(vp1.text);
		bk._x += 20*ss1;
	    break;
    		}
}
_root.vp1.restrict = _root.pole.restrict = '0-9';
 
pusk.onRelease  = function  () {
	  this.enabled = false;
         //здесь проблема
	 for (var i:Number = 0; i<pole1; i++) {
		moveBk = setInterval(moveIt, 100);
	  }
}