Иллюстрированный самоучитель по Flash-games


Урок 23. Ввод команд с клавиатуры


В предыдущем примере каждой части клипа соответствовала одна из пяти кнопок. Хотя основным средством управления во Hash-роликах являются кнопки, иногда в играх используется и прямой ввод с клавиатуры.
Существует два способа ввода с клавиатуры. Первый подразумевает особый вариант использования кнопок. Второй способ предполагает только код, который проверяет нажатие клавиш в определенный момент времени.
Для применения кнопочного метода создайте обычную кнопку Flash. Она не должна представлять из себя ничего особенного, так как будет расположена за пределами рабочего поля. Если кнопке назначен следующий код, она будет реагировать на клавишу "r" и использовать ее для перемещения клипа:

on (keyPress "r") {

circle._x++;

}

Имейте в виду, что событие keyPress чувствительны к регистру. Это значит, что если кнопке назначена клавиша "r", она не будет реагировать на нажатие комбинации Shift+R.

Исходный файл: Keyboardbutton.fla

ДЛЯ обозначения движений лучше использовать клавиши с изображением стрелок, а не буквы. Для указания данных клавиш используется специальный синтаксис. Ниже приведен сценарий, позволяющий пользователю перемешать клип в четырех направлениях. Вы можете также найти данный сценарий в файле Keyboardbutton.fla.

on (keyPress "") {

circle._x++;

on (keyPress "") {

circle._x—-;

on (keyPress "") {

circle._y--;

on (keyPress "") {

circle. _у++;

} }

Клавиши не очень удобно использовать в ситуациях, требующих быстрых и плавных движений. В таких случаях при помощи кодового объекта Key вы сможете проверить, нажата ли кнопка.

Если для проверки нажатия клавиши используется кнопка, при удерживании клавиши пользователем действие будет повторяться. Это происходит потому, что большинство компьютеров запрограммировано на повторение при удерживании клавиши. Время между первым и вторым нажатием одной и той же кнопки, а также между последовательным нажатием разных кнопок определяется параметрами настройки клавиатуры системы пользователя. В играх, где пользователь может удерживать кнопку для повторения действия, не следует полагаться на функциональные возможности клавиатуры. Лучше применять функцию Key. isDown (), которая рассматривается в данном разделе.




- Начало -  - Назад -  - Вперед -