PDA

Просмотр полной версии : каждый ... как он хочет


Max N Chubin_
16.11.2001, 16:03
недавно встала задача сделать управляемый с клавиатуры объект. Попросту говоря курсор. Дык вот столкнулся с неприятным моментом. При нажатии на клавишу происходит одна отработка нажатия, потом пауза и после паузы идет автоповтор нажатия. собственно говоря это гадко! дык вот ВОПРОС :
кто решал проблему?
я то решил см. вложенный файл, но сдается мне не оптимально.
итак?

Max N Chubin_
16.11.2001, 16:11
упс файл не подцепил..
дурацкий предпросмотр сбрасывает путь к файлу...

gOloVasTicK '~
16.11.2001, 16:28
А чем такой вариант не устраивает?

Max N Chubin_
16.11.2001, 16:45
:p ВОТ! ВОт где грабли лежали!!! Спасибо!
а я делал почти так же только как гинеколог, через...
сорри, творческий запор был...

Max N Chubin_
16.11.2001, 17:01
Только у тебя тоже есть косячок небольшой...
(у меня то косяк побольше был, спички есть)
:)

Суть такая... это просто замечание, скажи если я неправ...

представь жмешь ВЛЕВО и держишь
клип движется

, потом не отпуская ВЛЕВО жмешь ВПРАВО и держишь
клип меняет направление - это ГУД...

дальше.
отпускаешь кнопку ВПРАВО, но кнопку ВЛЕВО продолжаешь держать ( с самого начала)
и что мы видим? клип остановился!
а надо?
чтобы полз влево!
то же с ВВЕРХ-ВНИЗ
мелочь, но для управления в игрушке существенно!

gOloVasTicK '~
16.11.2001, 17:03
Ты кстати исходник не приложил. В следущий раз уж прикладывай. А то уж больно неудобно через АСВ ковырять.

gOloVasTicK '~
16.11.2001, 17:05
Просто я подумал что для тебя эт не так важно. А не катиться он потому что не обрабатывается доун клавиши. Исправить можно довольно легко если добавить пару && in IF

believe
16.11.2001, 17:17
А зачем
onClipEvent (enterFrame) {
this._x += x;
this._y += y;
Разве нельзя обойтись без переменных х и у, а сразу воспользоваться свойствами
Кстати и this в данном случае по-моему никчему

... до основания, а затем... :)

gOloVasTicK '~
16.11.2001, 17:26
2believe:
Вот как раз здесь энтрфрейм и нужен, т.к. вопрос как раз и состоял в том как избавиться от паузы между первой обработкой кейдаун и последующими повторами.
this действительно не нужен :) привычка :p

2Max N Chubin_:
Ваааще если по чесному, то надо так :) Зри в аттач

Max N Chubin_
16.11.2001, 17:32
Наверное ты прав...
но почему то я запал на описанный мной выше вариант...
попробую попозжее слепить.
щас есть срочная задача как раз гинекологического плана.
:)
в любом случае спасибо за идею!
;)

Max N Chubin_
16.11.2001, 17:34
special to believe

батенька, суть вопроса вам станет ясна если вы нарисуете скрипт движения самостоятельно...

believe
16.11.2001, 18:22
Во-первых обращение ко мне "батенька" возвращает "false" ;), во-вторых самостоятельно я писал(А)! эту хрень многократно, просто не сразу въехала в хитрость gOloVasTicK'~а - Много скопилось всякого мусора в голове к концу дня - мыслям тяжело ходить :)

///Так выпьем за то, что они, видимо, еще есть :D

believe
16.11.2001, 18:26
...пятница все-таки ... вечер :)

Max N Chubin_
23.11.2001, 14:55
после долгих и извращенных реализаций родился новый вариант см. в атаче там решена проблема следующего характера:
действие__________________________!___реакция
нажали ВЛЕВО держим_______________едем влево
жмем ВПРАВО (удерживая влево)______едем вправо
отпускаем ВПРАВО (удерживая ВЛЕВО)_стоим

а надо чтобы снова ехал влево и так со всеми направлениями.

был и другой вариант в котором при нажатии на 2 кн. противопол. направл. объект просто не двиг. в этой плоскости

решение оригинальное и изящное:
запоминаем время нажатия кнопок и при обнаружении нажатия 2х кнопок противоположного направления сравниваем время, и движемся в направлении, кнопка которого была нажата позже.
Автор решения Березняков Костя http://b-kost.com

Критика? Есть возражения?
и мои извинения 2 believe! Не хотел обидеть! Я очень по доброму обратился слегка картявя. :) Мир=true; ??

believe
23.11.2001, 15:59
Ok :)