![]() |
|
||||||||||
|
|||||
|
Проблема такая... На сцене имеются два приатаченых мувика, движением первого из них управляет клавиатура. Нужно заставить второй мувик повторять (копировать) движения первого. Думала сначала просто продублировать функции управляемого мувика во второй, чтобы они тогда уж оба слушали клаву... но что то кажется мне, что это не очень грамотно... Есть ли еще какой способ?
|
|
|||||
|
Регистрация: Jun 2006
Сообщений: 1,061
|
Можно привязать их x и y координаты,
Или что бы слушатель изменял определенную переменную, которую будешь прибавлять к их координатам |
|
|||||
|
Большой спасиб!)
в неподвижный мувик прописала что то вроде: работает)) Последний раз редактировалось iNils; 22.12.2006 в 12:46. |
|
|||||
|
Регистрация: Oct 2004
Сообщений: 149
|
для того что поторяет ( к примеру mov2 следит за mov1):
и никаких проблем ![]() |
|
|||||
|
Регистрация: Oct 2004
Сообщений: 149
|
пока набирал, у тебя решение само нашлось
![]() |
|
|||||
|
так тоже хорошо, и мож даже лучше)
вот кстати еще вопрос... знаю что onClipEvent(enterFrame) грузит проц, потому как непрерывно выполняется. А в варианте mc.onEnterFrame = function нагрузка меньше? можно ли что-то вообще другое использовать вместо enterFrame и все ли onClipEventы грузные? и еще как то говорят удалить можно эту функцию... насколько это действенно? |
|
|||||
|
Регистрация: Feb 2006
Адрес: Moscow
Сообщений: 552
|
onClipEvent(enterFrame) = .onEnterFrame
![]() Бегемот и гиппопотам... первая конструкция onClipEvent - считается устаревшей. Так как не есть возможность повесить событие на созданный программным путём MovieClip удаляется очень просто. Пример: var mc:MovieClip = this.createEmptyMovieClip("box_mc", this.getNextHighestDepth());
with(mc){
//рисуем квадрат
}
mc.onEnterFrame = function(){
this._x++;
if(this._x > 300){
trace("На этом движение закончено");
delete this.onEnterFrame;
}
}
Пример: var mc:MovieClip = this.createEmptyMovieClip("box_mc", this.getNextHighestDepth());
with(mc){
//рисуем квадрат
}
var intervalID:Number = setInterval(move_mc, 30, mc);
function move_mc(_mc:MovieClip):Void{
_mc._x++;
if(_mc._x > 300){
trace("На этом движение закончено");
clearInterval(intervalID);
}
}
__________________
Учимся правильно задавать вопросы Последний раз редактировалось Aziz Zaynutdinoff; 22.12.2006 в 01:22. |
|
|||||
|
Регистрация: Jul 2005
Сообщений: 188
|
а еще можно можно поизвращаться с startDrag
по startDrag начинаем перемещать mc2 setInterval'ом по stopDrag удаляем setInterval поидее когда не трогаешь , проц не напрягается . . . |
|
|||||
|
Регистрация: Sep 2006
Адрес: Zaporozhye, Ukraine
Сообщений: 141
|
если со startDrag то лучше onMouseMove
а еще лучше оба клипа в один общий поместить и его таскать |
|
|||||
|
Регистрация: Jul 2005
Сообщений: 188
|
Цитата:
|
![]() |
![]() |
Часовой пояс GMT +4, время: 09:56. |
|
|
« Предыдущая тема | Следующая тема » |
|
|