Форум Flasher.ru

Форум Flasher.ru (http://www.flasher.ru/forum/index.php)
-   ActionScript (http://www.flasher.ru/forum/forumdisplay.php?f=5)
-   -   Следовать за мышкой (http://www.flasher.ru/forum/showthread.php?t=25070)

Countach 25.12.2001 21:33

Следовать за мышкой
 
Вложений: 1
Драсте! Тут такая проблема, что-то никак не соображу как сделать то :(
Вообщем надо чтобы мувик следовал за мышкой НО не резко а плавно летал за ней :)

Вот никак не пойму принцип :(, люди скажите или если не сильно в лом, то поправьте исходник, это должно быть оч просто, но застрял

ЗЫ в исходниках смотрел этого не нашел :)
люди вы моя последняя надежда :)

John Connor 25.12.2001 22:20

Вложений: 1
на скорую руку - убегаю домой! =)

Countach 25.12.2001 23:10

ВАУ
 
Блин, огромнейшее тебе спасибо, я просто даже растерян от простоты исполнения, но так и не сильно понял, как же это работает то так.
Люди объясните пожалуйста, будьте снисходительны, ваще же не понял умора :(
Код:

onClipEvent (enterFrame) {
    _x = (_x*5+_root._xmouse)/6;
    _y = (_y*5+_root._ymouse)/6;
}

1. Почему onClipEvent (enterFrame), а не просто без этого, зачем он здесь нужен?? :confused:

2. _x = (_x*5+_root._xmouse)/6; - :) как это работает
_х (позиция феи)=(равняется) ???????

Вот чё это например - _x*5

RFMitrio 26.12.2001 00:51

on[enterFrame]-чтоб работало как в цикле ( здесь нельзя организовывать бесконечный цикл for(;;) как в си, поэтому привязываем работу скрипта к клипу, чтобы это событие происходило с частотой кадров - именно это делает enterFrame )
_x*5 - абсцисса умножить на 5 и все! Я не понял, зачем именно такое выражение ( исходник не смотрел), но раз так надо, так надо :) :)

Countach 26.12.2001 01:53

Код:

onClipEvent (enterFrame)
EQUAL
Код:

i=1;
for(k=0; k<i; ) { ... }

Но тока приминимо непосредственно к акшонам мувика??? Вот еще вопрос? Если у меня стоит 24fps, то как часто этот луп будет исполнятся??? CPU speed??? nope i don't think so :(

Цитата:

_x*5 - абсцисса умножить на 5 и все!
не ну это я понял, просто нафиг это делать?? Ваще хотелось бы детально в этом разобраться :)
Народ помогите плиз :)

ish 26.12.2001 02:14

2Countach сорри, но ты хелп то вобще к флэшу читал?
onClipEvent(event) {
// place your code here
}

обработчик событий мувика
в данном, частном случае
onClipEvent(enterFrame) {
// your code
}
, `уоur code` будет выпонятся каждый раз когда плэйер будет переходит на фрейм, а делает он это согласно установке fps, то бишь если стоит 12fps код будет выполнятся 12 раз в секунду (теоритически) и тп.

Countach 26.12.2001 02:36

Иш пасибо все понял :)
Хелп не читал, сори времени ваще ни фига не было, хоть через недельку гляну что там к чему
Просто раньше с такой фигней не сталкивался :) а тут оч срочно было, но спасибо всем кто помог ;)

Rishat 26.12.2001 03:40

На счёт цифр: число, на которое делишь, всегда должно быть больше на единицу числа, на которое умножаешь
Это что-то типа геометрической прогрессии насколько я помню математику
Т.е. если соблюдать вышеизложенное правило то координаты какого-то графического объекта и координаты курсора мышки в конечном итоге будут равны.
Если эти числа увеличивать, соблюдая при этом разницу в единицу между ними, ты просто будешь замедлять полёт своей бабочки.

vol 26.12.2001 11:31

А еще - посмотри уроки
 
Уильям Б. выложил целый урок на эту тему - "... и о прочих зверях флэшевого зоопарка".

Countach 26.12.2001 16:02

Ребят всем пасиба, вчера был абсолютно никакой, типа рождество было :) во
Седня как глянул чё спрашивал аж блин стыдно стало, ну да ниче :)

ЗЫ как работает _x = (_x*5+_root._xmouse)/6;
если кому то понадобится и если кто-то не понял (хотя сомневаюсь :))
вообщем берем координату мувика- множим на 5 (мона и на другое число, там уже мона и поиграться с этим) + данная координата мыши (к ней и нуна лететь) / 6 - это и будет следущ координата мувика (она как правило на ЧУТОЧКУ больше предидушей)

Пример
данная координата мувика по Х = 100
а мышка переместилась на Х = 200
(100*5+200)/6=700/6=116,666666........

Отсюда следует, что с Х=100 мувик перемесится на Х=116,6666......
;)

Еще раз пасиба всем


Часовой пояс GMT +4, время: 12:16.

Copyright © 1999-2008 Flasher.ru. All rights reserved.
Работает на vBulletin®. Copyright ©2000 - 2026, Jelsoft Enterprises Ltd. Перевод: zCarot
Администрация сайта не несёт ответственности за любую предоставленную посетителями информацию. Подробнее см. Правила.