MihailRis / VoxelEngine-Cpp

Minecraft-like game engine in C++ with OpenGL
754 stars 79 forks source link

add lua function block/unblock bindings #339

Closed ChancellorIkseew closed 3 weeks ago

ChancellorIkseew commented 3 weeks ago

Добавлена возможность заблокировать из Lua скрипта использование выбранной настройки управления игрока.

Например: input.disable_binding("movement.left") заблокирует движение игрока влево. input.enable_binding("movement.left") разблокирует обратно.

Структуре Binding добавлено поле enable. По умолчанию равно true. Метод pollEvents класса Events теперь не обрабатывает нажатие биндов, у которых enable равен false.

При выходе из мира все бинды принимают значение enable true. Это сделано на случай, что игрок выйдет из мира до разблокировки бинда.

Классу Events добавлен метод enableBindings. Вызывается в функции l_close_world.

Нововведение сделано по запросу мододелов.