Просмотр полной версии : Как остановить увеличение размера объекта?
Нужно, чтобы объект плавно увеличился в размерах, затем остановился и поменял цвет.
Пишу на 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;
}
}
В этом случае объект менятет цвет сразу и продолжает увеличивается (не останавливается).......
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
сорри =)
Увы, это ничего не изменило...
Nox Noctis
05.03.2003, 18:25
а ! я не просек что 'text' это имя твоего клипа... торможу... =)
так что в первом моем сообщении код написан правильно.
у тебя клип увеличивается до тех пор пока не достигнет исходного размера (масштаб 100%)
ну вот ты это и получила... у тебя видимо у клипа и так исходно _xscale и _yscale равны 100, так что сразу происходит изменение цвета.
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;}
}
ЗЫ: второй вариант никогда не пробовал:) так что не обещаю:)
Работает на vBulletin ® версия 3.7.3. Copyright ©2000-2026, Jelsoft Enterprises Ltd. Перевод: zCarot
Copyright © 1999-2008 Flasher.ru. All rights reserved.