Форум 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=46454)

Дядя Ваня 04.07.2003 15:39

Система координат
 
Привет!
Подскажите, пожалуйста, как возможно сделать такую штуку. Очень необходимо.
В ФМХ надо создать некое подобие системы координат. Некую функцию. Чтобы в свойствах объекта пишешь что-то типа "передвинуться самому на условные координаты (45, 90)", а на самом деле он двигается не на 45 по оси х и не на 90 по оси у, а, допустим, по формуле "условноХ=х+20, условноУ=у+30", то есть на 65 по х и на 120 по у

+=Metlio=+ 04.07.2003 18:43

А что у тебя будет двигаться по этой оси?
Или просто как текстовая хрень? :rolleyes:

DUDE 05.07.2003 01:42

Так в чйм проблемма? так и говори ему куда надо двигатся!
my_movie_clip.x+=20 //или 30 или 40 или 300 сколько хочешь!

Murzin 05.07.2003 16:35

сделай на клипе функцию - nuka_move_davay(x,y)

в которой напиши,
_x=x*(там на че-то)/(тоже на че-то)
_y=y*(там на че-то)/(тоже на че-то)

ну или _parent._x= ....попробуй как работать будет

да и вызывай my_clip.nuka_move_davay(45,-90);

вот и все...)))

Дядя Ваня 06.07.2003 10:49

попробую

Дядя Ваня 07.07.2003 13:50

Пробовал, пробовал, не врубаюсь! :D
В первом кадре пишу:

function locateStar (a,d) {
_x=a*60;
_y=d*60;
}


Потом у меня два объекта, допустим, на сцене. В первом пишу:

onClipEvent (enterFrame) {
a=5;
d=100;
this.locateStar (a,d);
}


а во втором:

onClipEvent (enterFrame) {
a=100;
d=10;
this.locateStar (a,d);
}


Не работает!!

Murzin 07.07.2003 14:23

------------------------------------в первом кадре

function locateStar_x(a) {
return a*60;
}

function locateStar_y(a) {
return a*100;
}

--------------------------------- в объекте

onClipEvent (enterFrame) {
_x=_root.locateStar_x(5);
_y=_root.locateStar_y(3);
}

Дядя Ваня 07.07.2003 17:28

Murzin, спасибо, работает прекрассно. А можно ли сделать так, чтобы в объекте было написано только, на какие координаты передвигать, что то вроде:

onClipEvent(enterFrame){a=20,b=30}

, а где-нибудь в другом месте (например, на главной сцене в первом кадре) была бы команда, что-то типа:

allClips.locateStar(a,b)

&&

derhab 07.07.2003 19:06

Цитата:

Оригинал написал(а) Дядя Ваня
Пробовал, пробовал, не врубаюсь! :D
В первом кадре пишу:

function locateStar (a,d) {
_x=a*60;
_y=d*60;
}

Потом у меня два объекта, допустим, на сцене. В первом пишу:

onClipEvent (enterFrame) {
a=5;
d=100;
this.locateStar (a,d);
}
а во втором:

onClipEvent (enterFrame) {
a=100;
d=10;
this.locateStar (a,d);
}

Не работает!!


Естественно не работает:) Надо так:

onClipEvent (enterFrame) {
_root.locateStar (5,100);
}
во втором соответственно:

onClipEvent (enterFrame) {
_root.locateStar (100,10);
}

Murzin 07.07.2003 21:50

2DERHAB :

Вы попробуйте, не поленитесь, будет ли так работать или нет.
Прежде чем давать совет уважаемому Дяде Ване, я пробовал упражняться с разными тхисами, сельфами, рутами и парентами, в предложенном Вами слдучае, как показала практика, вся сцена сдвигается туда, куда ее посылают, так как в функции определенной в первом кадре - _х и _у = это глобальные координаты флешки

С уважением и со всем таким или типа того :))))


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

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