Взаимодействие пользователя с игрой - полный перевод справки
2012-02-23 08:52:00 (читать в оригинале)
Перевод английской справки по Tululoo Game Maker.Статья о взаимодействии пользователя с игрой в Tululoo Game Maker. + обозначения кнопок (в оригинальной статье отсутствует!). + добавки Космо Мизраил Горыныча Следующие функции отслеживают нажатия клавиатуры:
- keyboard_check(key) - возвращает, зажата ли указанная кнопка (true или false)
- keyboard_check_pressed(key) - возвращает, нажали ли указанную кнопку
- keyboard_check_released(key) - возвращает, отпустили ли указанную кнопку
Следующие функции и переменные отслеживают положение мыши в окне игры:
- mouse_x -хранит координату мыши по горизонтали
- mouse_y - хранит координату мыши по вертикали
- mouse_check() - возвращает, зажата ли левая кнопка мыши (true или false)
- mouse_check_pressed() - возвращает, нажали ли левую кнопку мыши
- mouse_check_released() - возвращает, отпустили ли левую кнопку мыши
Начиная с версии 1.2.0, были включены переменные-альтернативы указанных выше переменных:
- key_down[key] - возвращает, зажата ли указанная кнопка (true или false)
- key_pressed[key] - возвращает, нажали ли указанную кнопку
- key_released[key] - возвращает, отпустили ли указанную кнопку
- mouse_down - возвращает, зажата ли левая кнопка мыши (true или false)
- mouse_pressed - возвращает, нажали ли левую кнопку мыши
- mouse_released - возвращает, отпустили ли левую кнопку мыши
Есть и другие функции управления мышью и клавиатурой:
- hide_mouse() - прячет стандартный указатель (только в игре)
- show_mouse() - вновь показывает стандартный указатель
- pause_game(key) - останавливает игру, пока не будет нажата указанная кнопка. Игра останавливается после всего события, поэтому ставить паузы между строками кода бессмысленно.
Список кнопок клавиатуры, которые мы указываем в функциях выше:
- vk_left
- vk_right
- vk_up
- vk_down
- vk_enter
- vk_escape
- vk_space
- vk_shift
- vk_control
- vk_alt
- vk_backspace
- vk_tab
- vk_home
- vk_end
- vk_delete
- vk_insert
- vk_pageup
- vk_pagedown
- vk_pause
- vk_printscreen
- vk_f1 ... vk_f12
- vk_numpad0 ... vk_numpad9
- vk_multiply
- vk_divide
- vk_add
- vk_subtract
- vk_decimal
Нажатие букв мы проверяем следующими переменными:
Таким образом, мы можем написать простой код движения вашего игрока с помощью стрелок клавиатуры:
if (keyboard_check(vk_left)) x -= 4;
if (keyboard_check(vk_right)) x += 4;
if (keyboard_check(vk_up)) y -= 4;
if (keyboard_check(vk_down)) y += 4;