PDA

Просмотр полной версии : Как остановить увеличение размера объекта?


Elmira
05.03.2003, 17:34
Нужно, чтобы объект плавно увеличился в размерах, затем остановился и поменял цвет.
Пишу на MovieClip (Name=text):
onClipEvent (enterFrame) {
var clr;
_xscale += 1;
_yscale += 1;
if (text._xscale==100){
clr = new Color(this);
clr.setRGB(200, 200, 200);
stop();
}
}
Подскажите, что не так?

:confused:

Nox Noctis
05.03.2003, 17:45
да все так, просто от стопа функция онЕнетрФрейм не останавливается =)

можно так:onClipEvent (enterFrame) {
if (_xscale == 100 && !clr) {
clr = new Color(this);
clr.setRGB(200, 200, 200);
} else {
_xscale += 1;
_yscale += 1;
}
}

Elmira
05.03.2003, 17:59
В этом случае объект менятет цвет сразу и продолжает увеличивается (не останавливается).......

llllllllll
05.03.2003, 17:59
а еще лучше вешать не на onClipEvent(EnterFrame){ ... }, а на function onEnterFrame(){ ... }, тогда его можно удалить за ненадобностью =) -> delete this.onEnterFrame =)

Nox Noctis
05.03.2003, 18:02
ээ... я там написал
if (_xscale == 100.....
вместо
if (text._xscale == 100

сорри =)

Elmira
05.03.2003, 18:18
Увы, это ничего не изменило...

Nox Noctis
05.03.2003, 18:25
а ! я не просек что 'text' это имя твоего клипа... торможу... =)
так что в первом моем сообщении код написан правильно.

у тебя клип увеличивается до тех пор пока не достигнет исходного размера (масштаб 100%)

ну вот ты это и получила... у тебя видимо у клипа и так исходно _xscale и _yscale равны 100, так что сразу происходит изменение цвета.

WD`
06.03.2003, 00:44
1.

f=0;
onClipEvent (enterFrame) {
if(f==0)
{
if(_xscale<100)
{
_xscale++;_yscale++;
}
else
{
clr = new Color(this);clr.setRGB(200, 200, 200);f=1;
}}}


2.

onEnterFrame=function()
{
if(_xscale<100)
{_xscale++;_yscale++;}
else
{clr = new Color(this);clr.setRGB(200, 200, 200);
onEnterFrame=Null;}
}


ЗЫ: второй вариант никогда не пробовал:) так что не обещаю:)

Elmira
11.03.2003, 13:08
Спасибо всем большое! :)