PDA

Просмотр полной версии : конвертировать FlashPlayer6 в FlashPlayer8


polol
30.05.2011, 10:18
доброе утро всем!

подскажите кто еще помнит as1: как переделать этот скрипт, чтобы он корректно работал с FlashPlayer 8+. На данный момент в опциях Publish он еще работает, если выбрать as2, но отказывается, если player выше версии 6.

cols = 7;
rows = 10;
y = 100;
fl=100;
for (z=-cols/2; z<cols/2; z++) {
angle=start+=.9;
for (x=-rows/2; x<rows/2; x++) {
mymc=attachMovie("mymc", "l"+i, 20000-i++);
scale = fl/(fl+z*20+75);
mymc.x = (x*450)*scale+270;
mymc.y = (y)*scale+150;
mymc._xscale=mymc._yscale=scale*100;
// mymc._alpha=scale*100;
mymc.onEnterFrame = wave;
mymc.angle=angle+=.7;
mymc.speed=.1;
mymc.height=20;
}
}
function wave(){
this._x=this.x;
this._y=this.y+Math.sin(this.angle+=this.speed)*this.height;
}

dark256
30.05.2011, 11:32
на какие номера строк ругается?

в ФОР добавьте var

lexa2000lexa
30.05.2011, 12:16
В вашем коде не определенна переменная i, следовательно не происходит атача так как неправильно определяется глубина.
Также нужно определить переменную start.

polol
30.05.2011, 13:15
да вот даже не ругается, просто тупо не делает. просветите, что такое ФОР?

Добавлено через 2 минуты
@ lexa2000lexa попробую. start он вообще воспринимает как родную функцию, инфу про нее не нашел, впервые вижу такую

lexa2000lexa
30.05.2011, 13:30
Вам нужно их просто определетьcols = 7;
rows = 10;
y = 100;
fl=100;
i=0;
start=0;
for (z=-cols/2; z<cols/2; z++) {
angle=start+=.9;
for (x=-rows/2; x<rows/2; x++) {
mymc=attachMovie("mymc", "l"+i, 20000-i++);
scale = fl/(fl+z*20+75);
mymc.x = (x*450)*scale+270;
mymc.y = (y)*scale+150;
mymc._xscale=mymc._yscale=scale*100;
// mymc._alpha=scale*100;
mymc.onEnterFrame = wave;
mymc.angle=angle+=.7;
mymc.speed=.1;
mymc.height=20;
}
}
function wave(){
this._x=this.x;
this._y=this.y+Math.sin(this.angle+=this.speed)*this.height;
}
так как в 6 плеере неопределенная переменная считалась 0 а выше это уже было NaN, соответственно расчены давали не коректный результат.

dark256
30.05.2011, 13:33
for (z=-cols/2; z<cols/2; z++)

надо так:

for ( var z=-cols/2; z<cols/2; z++)

Ну и к тому же пихать в счетный цикл нецелые индексы - ересь :)