Просмотр полной версии : дальнейшее проигрывание символа после нескольких повторов
Napalmnsk
22.11.2011, 10:54
Добрый день!
Есть символ, на котором 30 фреймов. Нужно сделать, чтоб символ проиграл сначала с 1-15 фрейм 10 раз, а затем после 10 повторов, начал проигрывать с 16 по 30 фрейм.
1. Простой способ, код в кадрах самого мувика:
Кадр 15:
if (!count) count = 1;
if (count < 10)
{
count++;
gotoAndPlay(1);
}
Кадр 30:
stop();
2. Посложнее, полностью программно.
Код в кадре основного таймлайна, mc - инстанс-нейм мувика на сцене, в его первом кадре стоит stop(), поскольку движение по кадрам полностью программное.
var passCount:Number = 0; //для учета прохождений
mc.onEnterFrame = function ()
{
if (passCount < 10)
{
if (this._currentframe < 15)
{
this.nextFrame();
}
else
{
passCount++;
this.gotoAndStop(1);
}
}
if (passCount == 10)
{
passCount++;
this.gotoAndStop(16);
}
if (passCount > 10)
{
this.nextFrame();
}
if (this._currentframe == 30)
{
this.stop();
}
};
Napalmnsk
22.11.2011, 12:30
mooncar, большое спасибо за развернутый ответ, с двумя вариантами!
Использовал первый вариант, чтоб не мудрить :) При первом проходе все работает, но со второго прохода почему-то повторы с 15 кадра не работают - напрямую идет переход с 15 на 16 фрейм, минуя 10 повторений (т.е. экшн на 15 кадре на втором и последующих проходах не срабатывает).
Пожалуйста! Я толком не отлаживал :)
Napalmnsk
22.11.2011, 13:10
не могли бы Вы подсказать как все-таки сделать на первом примере, чтоб этот цикл повторялся? Сейчас ролик работает так - с 1-15 фрейм, затем повтор 10 раз, следом идет 16-30, потом идет второй проход ролика с 1-15 и сразу 16 по 30 фрейм и т.д. без 10 повторений.
Первый - это который с кодом в самом мувике?
stop() в конце поставьте, и после одного прохода 16-30 мувик остановится.
Или вы хотите чтобы вся эта анимация со всеми повторами повторялось?
В последнем кадре запишите
delete count;
Тогда по достижению последнего кадра будет удалена переменная count, в которой учитывается количество проходов, и снова выполнится условие if (!count) по достижению 15-го кадра.
Разберитесь, как все это работает.
PS. Проходами я называю повторения 1-15 и далее, а вы, по-видимому, когда повторяется вся анимация...
Napalmnsk
22.11.2011, 13:31
да первый который в самом клипе, но мне нужно чтоб он постоянно повторялся, я стоп поэтому и не ставил.
Просто при повторном прохождении не включается 10 повторений.
Добавлено через 8 минут
Спасибо!!!! Все заработало!
Работает на vBulletin ® версия 3.7.3. Copyright ©2000-2026, Jelsoft Enterprises Ltd. Перевод: zCarot
Copyright © 1999-2008 Flasher.ru. All rights reserved.