![]() |
Не понятная задержка в движение обьекта
Есть следующий код для передвижения объекта.
Код AS3:
Если пользователь поочередно нажимает клавиши движения то все нормально. Но в случае если он нажал сразу две кнопки и потом одну отпустил а вторую оставил нажатый то происходит задержка около секунды прежде чем объект начинает двигаться :( Подскажите что я сделал не так? Или в данном случае может вообще какоето другое решение нужно использовать? Заранее благодарю за ответ. |
Код AS3:
|
D12, это не нужно.
Проблема в логике: Нажал первую клавишу: началось движение. Нажал 2ю: ничего не произошло, т к одно из направлений true Отпустил первую: все направления стали false А когда держишь клавишу, через определенный интервал событие нажатия происходит повторно(зажимаем "а" и сначала одна буква, затем еще допечатываются). И в этот раз, т к все false, начинается движение в другую сторону. Все логично. |
Передвигать можно так:
Клавиатура получает события нажатия и отпускания кнопок. Т.е. если нажать кнопку вверх (событие KEY_DOWN) триггерДвиженияВерх = true, то объект в это время будет двигаться вверх, пока кнопка нажата, до тех пор пока не наступит событие отпускания кнопоки вверх KEY_UP объект перестанет двигаться вверх (триггерДвиженияВерх = false) Т.е. независимое управление. пример http://www.dnadillo.dn.ua/fla/Car-2D.html |
Цитата:
|
| Часовой пояс GMT +4, время: 15:27. |
Copyright © 1999-2008 Flasher.ru. All rights reserved.
Работает на vBulletin®. Copyright ©2000 - 2026, Jelsoft Enterprises Ltd. Перевод: zCarot
Администрация сайта не несёт ответственности за любую предоставленную посетителями информацию. Подробнее см. Правила.