PDA

Просмотр полной версии : Вопрос по перемещению по мувику


lapsha
30.04.2006, 19:48
Ситуация такая: сначала проигрывается весь клип, затем стоп и появляется меню (несколько кнопок), предлогающее посмотреть отдельфые фрагменты клипа. Как сделать, чтобы, кликнув на кнопку, проигрывался только фрагмент клипа (например с 10 по 20 кадр), а не с 10 кадра и до конца клипа?

KUZEN
30.04.2006, 19:54
Вешать на onEnterFrame и проверять текущий кадр (_currentframe) и если он равен 20 stop();

aaum
30.04.2006, 19:56
:rolleyes: мда... я бы сделал это по дедовски... создал бы кучу урезанных клипов.. их, деревня

RandomUser
30.04.2006, 20:00
button1.onRelease=function() {
frame_end=20;
frame_start=10;
gotoAndPlay(frame_start);
onEnterFrame=function() {
if(_currentframe==frame_end) {
stop();
delete onEnterFrame;
}
};

};
Где-то так...

lapsha
30.04.2006, 21:19
Спасибо, буду пробовать. "Дедовский" способ думаю самый надежный))

deep70
03.05.2006, 00:00
Начал тему здесь http://flasher.ru/forum/showthread.php?t=79039
Послали сюда.
Код на 80% из сэмпла про закгузку картинок.
Но по сценарию : при нажатии какой-л. кнопки мувиклип должен обесцветиться (_alpha = 0), затем переходим на другой кадр и мувиклип снова должен стать видимым.
У меня же происходит сначала переход на другой кадр, а затем fade out и fade in.
//переменные
mov._alpha = 100;
mcvar = 1;
//при нажатии на кноку переходим на соседний кадр мувиклипа mov
_root.bnext.onPress = function() {
if (mcvar<3 && !fadeIn && !fadeOut) {
fadeOut = true;
mcvar++;
_root.mov.gotoAndStop(mcvar);
}
};
_root.bback.onPress = function() {
if (mcvar>1 && !fadeIn && !fadeOut) {
fadeOut = true;
mcvar--;
_root.mov.gotoAndStop(mcvar);
}
};
_root.mov.onEnterFrame = function() {
// при нажатии кнопки происходит
// fade out - переход на кадр mcvar - fade in
if (_root.mov._alpha>10 && fadeOut) {
_root.mov._alpha -= 10;
}
if (_root.mov._alpha<10) {
_root.mov.gotoAndStop(mcvar);
fadeOut = false;
fadeIn = true;
}
if (_root.mov._alpha<100 && fadeIn && !fadeOut) {
_root.mov._alpha += 10;
} else {
fadeIn = false;
}
};
чужому глазу виднее.
что я пропустил?

0xFFFFFF
03.05.2006, 00:10
дык у тебя ж переход на другую картинку СРАЗУ после нажанития, а не после fadeOut...

deep70
03.05.2006, 00:50
дык у тебя ж переход на другую картинку СРАЗУ после нажанития, а не после fadeOut...
Спасибо. Действительно, пока носом не ткнули.:rolleyes:
Кнопка теперь обрабатывается так:
_root.bnext.onPress = function() {
if (mcvar<3 && !fadeIn && !fadeOut) {
fadeOut = true;
mcvar++;
if (_root.mov._alpha == 0) {
_root.mov.gotoAndStop(mcvar);
}
}
};
Мож бывет и оптимальней, но проверки состояния mov._alpha хватило. :)

0xFFFFFF
03.05.2006, 01:00
Спасибо. Действительно, пока носом не ткнули.:rolleyes:
Кнопка теперь обрабатывается так:
_root.bnext.onPress = function() {
if (mcvar<3 && !fadeIn && !fadeOut) {
fadeOut = true;
mcvar++;
if (_root.mov._alpha == 0) {
_root.mov.gotoAndStop(mcvar);
}
}
};
Мож бывет и оптимальней, но проверки состояния mov._alpha хватило. :)
и что, работает??

deep70
03.05.2006, 01:10
Да... А что, не должно?

0xFFFFFF
03.05.2006, 01:29
сомнительно как-то.. после второго нажатия?

deep70
03.05.2006, 01:40
Добавил кадры в mov - до 10 и в
_root.bnext.onPress = function() {
if (mcvar<10 && !fadeIn && !fadeOut) {
fadeOut = true;
mcvar++;
if (_root.mov._alpha == 0) {
_root.mov.gotoAndStop(mcvar);
}
}
};
10 вместо 3 поставил
работает и вперед и назад :)

0xFFFFFF
03.05.2006, 02:05
ааа.. вот как..
мне кажется можно сократить

_root.bnext.onPress = function() {
if (mcvar<10 && !fadeIn && !fadeOut) {
fadeOut = true;
mcvar++;
//if (_root.mov._alpha == 0) {
// _root.mov.gotoAndStop(mcvar);
//}
//удалить предыдущие три без ущерба..
}
};

deep70
03.05.2006, 02:09
:) а я, блин, в обход, как "№рмальный герой"...

0xFFFFFF
03.05.2006, 02:22
да нормально сделано.. только лишнего немного :) я предпочитаю аттачить клипы из библиотеки и обходиться без излишнего таймлайна