Показать сообщение отдельно
Старый 07.04.2010, 22:22
mooncar вне форума Посмотреть профиль Отправить личное сообщение для mooncar Найти все сообщения от mooncar
  № 13  
Ответить с цитированием
mooncar
Модрон-ветеринар
 
Аватар для mooncar

администратор
Регистрация: May 2009
Адрес: г.Казань
Сообщений: 7,357
Отправить сообщение для mooncar с помощью ICQ Отправить сообщение для mooncar с помощью Skype™
Цитата:
Сообщение от MkTwo Посмотреть сообщение
Так как у меня клип состоит не из одного кадра, то он каждый раз при проходе через первый кадр сбрасывает величину приращения на исходные Как можно избежать этого?
Делайте все в одном кадре.
Или введите для этого флаговую переменную для проверки, нужно или нет выполнять эти действия, т.е. ограничение выполнения кода один раз.
Типа:
Код AS1/AS2:
if (!wasStarted) {
 
	var incX = 1;
	var incY = -2;
 
	var w = 16; 
	var h = 16; 
 
	mc.onEnterFrame=function() {
 
		mc._x += incX;
		mc._y += incY;
 
		if (mc._x > 240-w) {// Столкновение с правой границей
			mc._x = 240-w; 
			incX = -incX;// Меняем направление 
		}
		if (mc._x < w) {// Столкновение с левой границей
			mc._x = w;
			incX = -incX;// Меняем направление 
		}
		if (mc._y < h) {// Столкновение с верхней границей
			mc._y = h;
			incY = -incY;// Меняем направление 
		}
		if (mc._y > 350-h) { // Столкновение с нижней границей
			mc._y = 350-h;
			incY = -incY;// Меняем направление 
		}
	}
 
	var wasStarted = true ;
 
}


Последний раз редактировалось mooncar; 07.04.2010 в 22:29.