PDA

Просмотр полной версии : Отслеживать присутствие мышки над флэшкой


Quod
31.10.2003, 17:24
Тема такая: объект летает за курсором мыши, но не могу ни как сделать чтоб объект возвращался в нужную точку если мышь находиться не над флэшкой, бегает по такой формуле

onClipEvent (enterFrame) {
_x+=(_parent._xmouse-_x)*.05;
_y+=(_parent._ymouse-_y)*.05;
}

WeB
31.10.2003, 17:49
вообще когда мышка уходит за края флеша то объек останавливается полюбому, ты попробуй сделать рамочку по краям флэшки, которая при контакте с мышкой будет отводить твой объект в даное положение. если я правильно тебя понял.

Quod
31.10.2003, 17:58
Пробовал сделать так, но если мышку резко дернуть с флэшки, то контакта может и не быть, и тогда объект зависает... может какойнить прямоугольник нарисовать надо во всю флэшку, и который при движении по ниму мыши будет говорить что мол все "ОК" можна рабоотать, а если нет, то объект возвращать? Вот тока еще не знаю как это делать.... я вообще-то новичек...

Quod
31.10.2003, 19:18
и еще, как сделать движение объекта из любой точки в нужную? Например тот же Символ надо передвинуть плавно (как бы изображая полет) в точку 50,50 но исходная точка может быть как 10,10 так 70,70 или 2,100 по осям координат X,Y

Плиз, очень нужно....

Techmaker
31.10.2003, 19:27
можно сделать кнопку на всё поле с специальным кодом, который провиряет мышка над ней(кнопкой) или нет, но при этом все остальные кнопки под этой кнопкой будут недоступны для юзера :)

Оригинал написал(а) Quod
и еще, как сделать движение объекта из любой точки в нужную? Например тот же Символ надо передвинуть плавно (как бы изображая полет) в точку 50,50 но исходная точка может быть как 10,10 так 70,70 или 2,100 по осям координат X,Y

Плиз, очень нужно....
а что эта формула не подходит?
_x+=(next_x-_x)*.05;

Quod
31.10.2003, 19:56
интерессно что же за спец код? я просто чайник еще в этом деле, просто сайт делаю и вот понадобилося.... плиз, выложите кто-нить исходничек маленький, а то совсем пропадаю... в замен конечно у меня особого ни чего нету, но могу выложить на своем сайте линку. Плиз очень надо.

Techmaker
01.11.2003, 09:28
исходник для флэш МХ (6)
посмотри, соотвецтвенно если _global.mouse_inside будет true то мышь внутри флэшки, а если false то мышь вне флэшки.
в зависимости от этой переменной и указывай направление символу, т.е. если true например - пусть бегает за мышью, а если false - пусть бежит в какую-то точку.

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

sergwizard
01.11.2003, 20:40
Да, это конечно очень полезная вещь - мувик, в котором нельзя работать интерактивно...
И скажи-ка мне, Techmaker, вот эта загадачная строчка
if(tt++>5){ tt=0;...} - это зачем? "tt" - это что-то волшебное?

Techmaker
01.11.2003, 22:16
Оригинал написал(а) sergwizard
И скажи-ка мне, Techmaker, вот эта загадачная строчка
if(tt++>5){ tt=0;...} - это зачем? "tt" - это что-то волшебное?
:D ничего тут волшебного нету, я просто увеличел период(интервал) через который происходит вывод значения переменной в окне "Output" (это чтобы не засорять окно)
ну а сэтИнтервал мне лень писать :)

sergwizard
01.11.2003, 22:31
Интересная запись, НО РАБОТАЕТ!
Так ты не ответил на главный вопрос: зачем такая проверка мышки нужна, если она убивает весь мувик?

Quod
01.11.2003, 22:45
Мммда... тяжеловато мне будет.... повозился, поковырял... крыша моя уехала.... вот значит мувик 600х100 этот мувик я хочу вставить на страничку (не этот конечно а похожий) и мне надо чтоб если по нему поводишь мышью то акула летит на мышку, а если убрал то она пролетит в точку скажем х=300, у=50.... парюсь уже кучу времени, но из-за не знания ActionScript ни какого эффекту.....

Techmaker
01.11.2003, 22:49
Оригинал написал(а) sergwizard
Так ты не ответил на главный вопрос: зачем такая проверка мышки нужна, если она убивает весь мувик? почему же убивает? :)
она только порализует все(но ТОЛЬКО) кнопки, а сайт можно сделать и из одних мувиклипов, а вместо обработчиков событий для кнопок(например onRelease, onRollOver.... и другие) использовать свои функции и эффекты(используя hitTest() и Key.isDown())
я не говорю, что это будет легко сделать каждому, но возможно :)

Techmaker
01.11.2003, 22:53
2Quod
щас посмотрим :)

Techmaker
01.11.2003, 23:07
ну это было не так уж и сложно :)
держи исходник (Flash MX 6)

и ещё, у тебя флэш какой версии?

Quod
01.11.2003, 23:18
Агромная СПАСИБА, фсе работает как надо.... что с меня?
ЗЫ Flash MX 6.0

Techmaker
01.11.2003, 23:30
Оригинал написал(а) Quod
что с меня?
ничего :)
Оригинал написал(а) Quod
ЗЫ Flash MX 6.0
ну значит всё номана :) ;)