![]() |
|
||||||||||
|
|||||
|
Регистрация: Feb 2008
Сообщений: 15
|
У меня есть мувиКлип - шарик.
Этот шарик движется по оси Х вправо/влево в зависимости от положения мышки (это я уже сделала). А как мне ограничить это движение? Я не хочу, чтобы его мотало по всему экрану, я хочу, что бы ДОПУСТИМ он отклонялся на 3 см туда, на 4 сюда .... Мне видимо надо дописать какое то условие в IF? Плиз, не отправляйте меня в вакансии. Я хочу не просто иметь, я хочу ПОНЯТЬ. ![]() Последний раз редактировалось Mueller; 15.03.2008 в 22:44. |
|
|||||
|
Регистрация: Mar 2008
Сообщений: 6
|
|
|
|||||
|
...
модератор форума
Регистрация: Sep 2006
Адрес: Minsk
Сообщений: 4,286
|
Если startDrag'ом двигаете, то можно задать ограничивающий прямоугольник.
startDrag([lockCenter:Boolean], [left:Number], [top:Number], [right:Number], [bottom:Number]) |
|
|||||
|
Регистрация: Feb 2008
Сообщений: 15
|
Нет, не stratDrag. Как я понимаю, там больше программирования, что мне пока не осилить. Хотя, оччччень полезно уметь как и ограничивающий прямоугольник задавать, так и координаты ...
Код у меня вот такой onClipEvent (enterFrame) {
mx = _root._xmouse;
if (mx<_x) {
dx = _x-mx;
} else {
dx = mx-_x;
}
moveSpeedx = dx/100;
if (mx<_x) {
_x = _x-moveSpeedx;
} else {
_x = _x+moveSpeedx;
}
Спасибо вам обоим! Последний раз редактировалось Mueller; 16.03.2008 в 13:51. |
|
|||||
|
Регистрация: Mar 2008
Сообщений: 6
|
Прицепил рабочий пример с моим алгоритмом.
Разбирайтесь. |
|
|||||
|
Регистрация: Feb 2008
Сообщений: 15
|
Спасибо !!! не ожидала ! Правда здесь нет зависимости от мышки, но думаю, разобраться можно ... Спасибо !!!
|
|
|||||
|
Регистрация: Feb 2008
Сообщений: 15
|
И все же мне нужна ваша помощь!
Не получается у меня ... Мой шарик совсем встал. Проверьте, пожалуйста, код. В чем ошибка? onClipEvent (enterFrame) {
\\ задаю ограничивающие координаты по Х. (ТАК можно делать?)
max_x = 1000;
min_x = 500;
mx = _root._xmouse;
\\ ну а дальше сами условия пошли ...
if (mx<min_x)
mx=min_x;
if (mx>max_x)
mx=max_x;
if (mx<_x) {
dx = _x-mx;
} else {
dx = mx-_x;
}
moveSpeedx = dx/100;
if (mx<_x) {
_x = _x-moveSpeedx;
} else {
_x = _x+moveSpeedx;
}
|
|
|||||
|
[+1 18.03.08]
Регистрация: Nov 2006
Сообщений: 223
|
if (mx<min_x)
mx=min_x;
if (mx>max_x)
mx=max_x;
if (mx<_x) {
dx = _x-mx;
} else {
dx = mx-_x;
}
moveSpeedx = dx/100;
if (mx<_x) {
_x = _x-moveSpeedx;
} else {
_x = _x+moveSpeedx;
}
Всё это пишется в одну строчку: |
|
|||||
|
Регистрация: Feb 2008
Сообщений: 15
|
Цитата:
Теперь буду знать, что можно все значительно сократить : ) А моя надежда на помощь так и зависла ... как же ограничить движение и оставить зависимость? Ну не подключать же девичье слезы : )) |
|
|||||
|
[+1 18.03.08]
Регистрация: Nov 2006
Сообщений: 223
|
|
![]() |
![]() |
Часовой пояс GMT +4, время: 21:37. |
|
|
« Предыдущая тема | Следующая тема » |
|
|