![]() |
|
||||||||||
|
|||||
|
[+1.3 16.11.06]
Регистрация: Sep 2005
Адрес: Москва
Сообщений: 19
|
Здраствуйте
я создал movie clip с кнопкой, бегающий от мышки принажатии на него, используя следущий скрипт: on (press) { if (this.hitTest(_root._xmouse, _root._ymouse, true)) { this._x = random(365); this._y = random(233); } } Как сделать так, чтобы спустя какое-то время (несколько секунд) после перемещения, movie clip возвращался в первоначальные координаты? |
|
|||||
|
Регистрация: Mar 2006
Адрес: Odessa
Сообщений: 157
|
Не понял, зачем тебе здесь hitTest, если при нажатии на клип он всегда будет срабатывать...
Нажимаешь F1, а в строку поиска вводиш setInterval или clearInterval... |
|
|||||
import mx.utils.Delegate;
var timeOutID:Number=null;
var oldButtonX:Number=null;
var oldButtonY:Number=null;
button.onPress=Delegate.create(this,onButtonPress);
function onButtonPress():Void{
clearInterval(timeOutID);
oldButtonX=button._x;
oldButtonY=button._y;
button._x=100*Math.random();
button._y=100*Math.random();
timeOutID=setTimeout(returnToOldPlace,1000);
};
function returnToOldPlace():Void{
button._x=oldButtonX;
button._y=oldButtonY;
};
|
|
|||||
|
да тока лучше в returnToOldPlace() поставить clearInterval
а то када на 1 переменную повесят 15 интервалов... мне жалко ету переменную...
__________________
Тут мужик танцует и поёт про флэш |
|
|||||
|
[+1.3 16.11.06]
Регистрация: Sep 2005
Адрес: Москва
Сообщений: 19
|
var timeOutID:Number=0;
var oldButtonX:Number=0; var oldButtonY:Number=0; Я вбил вот этот скрипт, кнопка перемещается по рандому, но не возвращается на исходную позицию: var timeOutID:Number=0; var oldButtonX:Number=0; var oldButtonY:Number=0; button.onPress=this.onButtonPress; function onButtonPress() { clearInterval(timeOutID); oldButtonX=button._x; oldButtonY=button._y; button._x=Math.random()*100; button._y=Math.random()*100; timeOutID=setTimeout(returnToOldPlace,10); }; function returnToOldPlace() { button._x=oldButtonX; button._y=oldButtonY; }; |
|
|||||
|
Канешно работать не будет!
Функции setTimeout в жизни у флэша небыло. Был setInterval Лови, пенчекряка (хто такой пенчекряка?) var timeOutID:Number=0;
var oldButtonX:Number=0;
var oldButtonY:Number=0;
var timeOutID:Number=0;
var oldButtonX:Number=0;
var oldButtonY:Number=0;
button.onPress=this.onButtonPress;
function onButtonPress() {
oldButtonX=button._x;
oldButtonY=button._y;
button._x=Math.floor(Math.random()*500);
button._y=Math.floor(Math.random()*500);
timeOutID=setInterval(returnToOldPlace,500);
};
function returnToOldPlace() {
clearInterval(timeOutID);
button._x=oldButtonX;
button._y=oldButtonY;
};
__________________
Тут мужик танцует и поёт про флэш |
|
|||||
|
Ух ты! Вдруг вычитал што setTimeout есть..
Извиняюсь за тот пост - помоему тады должно быть _global.setTimeout... лана кароч не бери в голову. Пользуйся тем.
__________________
Тут мужик танцует и поёт про флэш |
|
|||||
|
Использовать _global необходимо только во внешних .as файлах (классах), а _root работает без _global.
|
![]() |
![]() |
Часовой пояс GMT +4, время: 13:57. |
|
|
« Предыдущая тема | Следующая тема » |
|
|