Форум Flasher.ru

Форум Flasher.ru (http://www.flasher.ru/forum/index.php)
-   ActionScript 1.0/2.0 (http://www.flasher.ru/forum/forumdisplay.php?f=93)
-   -   speed stop\движение за мышью до границы (http://www.flasher.ru/forum/showthread.php?t=109232)

priroda 10.03.2008 17:44

speed stop\движение за мышью до границы
 
Код:

if ((_y < 100) and (_y > -360)) {
        if (_root._ymouse < center) {
                accel = 1;
        } else if (_root._ymouse > center) {
                accel = -1;
        }
        if (_ymouse > -340) {
                accel = -_y;
        } else if (_ymouse < -40) {
                accel = -_y;
        }
        mouse = (_root._ymouse - center) / -1.2;
        speed = mouse + accel;
        _y = _y + speed * .1;


iNils 10.03.2008 17:58

По _ymouse и определяйте, нужно двигать или нет.

priroda 10.03.2008 18:21

двигаю по _y до тех пор ПОКА. а когда настуает ПОКА - по _y двигать не надо
PS немного не поняла вашей установки.

priroda 10.03.2008 18:22

я не знаю как поставить условие. если вы об отслеживании _ymouse

iNils 10.03.2008 18:25

Вот кусок вашего кода
Код:

if (_root._ymouse <A) {
        accel = 1;
} else if (_root._ymouse >A) {
        accel = -1;
}

В зависимости от положений мыши, вы задаете направление движения. А теперь вам надо таким же образом останавливать клип или нет.

priroda 10.03.2008 18:35

Код:

if ((_root._ymouse>60)or(_root._ymouse<-340)) {
        accel = 0;
}

?непонимаю
почему нет?

что нужно написать чтоб движение равнялось 0

iNils 10.03.2008 18:39

Код:

if ((_root._ymouse < 60) || (_root._ymouse > -340)) {
        if (_root._ymouse < A) {
                accel = 1;
        } else if (_root._ymouse > A) {
                accel = -1;
        }
        if (_y > -440) {
                accel = -_y;
        } else if (_y < -40) {
                accel = -_y;
        }
        mouse = (_root._ymouse - center) / -1.2;
        speed = mouse + accel;
        _y = _y + speed * .1;
        trace (_y);
}

И не надо заниматься мультипостингом.

priroda 10.03.2008 18:44

извините

не работает
хорошо я спрошу подругому.
всё тоже самое - ваш код а в конце поставить else. что нужно написать в else чтоб движение перестало идти. accel=0 это не то. а что тогда. или так не делается

по идее должно работать. но почему то..

iNils 10.03.2008 19:28

Я предупреждал про мультипостинг, когда хотите что-то добавить, используйте кнопку http://www.flasher.ru/forum/images/r...ttons/edit.gif и редактируйте последнее сообщение, а не создавайте несколько сообщений подряд.

accel - это ускорение.
скорость движениея форумируется так speed = mouse + accel, и когда вы ускорнения делаете равным нулю, то получаете speed = mouse + 0. В результате объект продолжает двигаться, так как mouse имеет не нулевое значение.

priroda 10.03.2008 19:38

закройте пожалуйста тему. всё равно здесь никто ничего не поймет с таким разбросом. спасибо за время. дальше я разберусь


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

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