PDA

Просмотр полной версии : Flash Player 6 vs 7


Злыдень
07.01.2006, 09:28
Я тут парился и не мог сделать свой скролинг на примере вот этого исходника http://stl.net.ua/tmp/source.rar

Мой никак не работал хотя все скрипты были одинаковые, потом я сменил в настройках проигрывать в Flash Player 6 вместо 7, и всё заработало....с чем это связано? Баг? Глюк? Подскажите плз.

Antares
07.01.2006, 16:22
В новых плеерах -- новые возможности. Видимо, в твоем коде есть MovieClip.getNextHighestDepth();

Вообще подумай, зачем у плееров версии, если бы они функционалом не различались

Antares
07.01.2006, 16:22
Да, темы называй осмысленно. Иначе приму меры.

Злыдень
07.01.2006, 22:42
Архивчик был не такой уж большой, чтобы строить предположения на счёт его содержания.

З.Ы. Сорь за название :)

Antares
08.01.2006, 00:01
Хехе... вот это у тебя антиквариат, там 4рочный синтаксис.
По верхам основная ошибка одна -- не учтен регистр в loadMovie, но до конца это пролему не решает. Я тебе искренне советую найти другой исходник, потому что делать на основе существующего -- самому себе грабли расстилать.

Второй момент -- используется загружаемый контент. Под какую версию плеера он -- неизвестно, а значит и неизвестно нет ли у нас двух глобалов, неизвестно, что используется там и т.п. Потому что редкий очень уж случай -- при AS1 работает в 6, но не работает в 7.

Резюмируя: дальше смотреть сейчас некогда, мой совет - найти нормалный исходник скроллера, их в сети туева хуча.

Злыдень
08.01.2006, 00:44
Я этот имходник урезал до немогу...осталось 3 скрипта
onClipEvent (enterFrame) {
Y = (getProperty(_parent.Norman, _y)-(_parent.top))*(_parent.factor);
newY = oldY-(Y+oldY)/(_parent.ease);
setProperty(_parent.WindowIN.Nadine, _y, newY);
oldY = newY;
}
on (press) {
startDrag(this, false, _parent.slide, _parent.top, _parent.slide, _parent.bottom);
}
on (release, releaseOutside) {
stopDrag();
}

top = -157.0;
bottom = -91.0;
slide = 70.0;
factor = 2.6;
ease = 1;

Какой из них не поддерживает 7-ой плейер и на что заменить? :) Скажи плз.

Злыдень
08.01.2006, 07:58
Выяснил, что в таком виде сколинг работает и в 7-ом плейере

onClipEvent (enterFrame) {
Y = (getProperty(_parent.Norman, _y)-(_parent.top))*(_parent.factor);
setProperty(_parent.WindowIN.Nadine, _y, Y);
}


Теперь вот не пойму как строчка
newY = oldY-(Y+oldY)/(_parent.ease);
придавала плавность движению и на что её заменить для 7-ого плейера.

Памагите нубу, пажааалыста.

Madasan
08.01.2006, 09:41
getProperty и setProperty давно устаревшие функции и не рекомендованы к использованию самой макромедией (помню кто-то жаловался что оно не работало), да и за onClipEvent () тут на форуме кто-то обещал руки отрывать, так что ты пооккуратней.!!
а последняя строчка никаких строк, что были бы специфичны для версии не содержит. А вабще проще все поломать и построить новое... (имхо)!

Злыдень
08.01.2006, 10:30
Кому проще а кому и нет....для меня вообще AS- тёмный лес, в который я не люблю ходить :)

Antares
08.01.2006, 15:38
if( !Y ) Y = 0; // дело в том, что переменная у тебя с самого начала не определена
newY = oldY - ( Y + oldY )/_parent.ease;