По пунктам:Сообщение от REX
1. Автогенератор.
Это такой модуль, который отслеживает скорость поворота обзора. При удержании хатки скорость возрастает, если стоит ускорение >1. При обзоре шлемом/камерой скорость просто зависит от скорости поворота головы.
Так вот, как только скорость превышает предел, то автогенератор (он должен быть активным разумеется, включенным то есть) даёт команду подконтрольному (связанному) ему генератору сгенерировать последовательность нажатий кнопок столько раз, сколько указано в его настройках. Генератор генерит к примеру 8 раз кнопку PgUp и расширяет угол обзора.
Автогенератор и далее контролирует скорость обзора. Если мы продолжаем быстро вращать камерой - осматриваемся, то и обзор будет всё ещё широким - много видно, чего и требуется при поиске чего-то вокруг.
Если скорость замедлилась и стала ниже выбранного порога, то включается сикундомер, который отсчитывает интервал времени, который опять же настраивается. Как только интервал отсчитался, то автогенератор даёт команду генератору отрабоать отбратно - сгенерировать Home к примеру теже 8 раз. При этом угол обзора сужается.
Применение на практике - нужен один генератор для управления углом обзора. Нужен настроенный на него автогенератор.
Летим, плавно глядим по сторонам. Вид нормальный.
Долетели до боя. Начали вертеть обзором - крутить головой. Обзор расширился. Поймали цель в прицел. Перестали крутить головой - обзор сузился -покрупнее нам цель показали. Нужно при это быстро назад оглянуться - нет ли хвоста - только обернулись, а обзор услужливо опять расширился. Опять же если цель проскочили и ищем где она - опять начали головой вертеть - опять широкий обзор.
Таймаут введён для того, чобы генератор туда и обратно непрерывно не отрабатывал - неудобно это.А вот с небольшой задержкой вполне.
2. Маппинг кнопок.
Поставим простую задачу:
Есть кнопка 8 - это предполагаемый Шифт. (хотя такой шифт можно хоть на мышке использовать и для каждой функции может быть свой шифт)
Далее есть кнопка №1 - гашетка для всех пушек и пулемётов.
Необходимо при нажатии кнопки 1 стрелять из пушек и пулемётов а при зажатом шифте 8+1 стрелять пристрелочно только с пелемётов.
Так как обе функции - стрелять из всего и стрелять из пулемётов это внешние для NV функции, то придётся для обеих использовать генераторы.
Берём генератор №9. В качестве горячей клавиши выбираем (Код кнопки) первый джойстик кнопка 1. Это огонь из всего.
Берём генератор №10. В качестве горячей клавиши выбираем комбинацию (№1 Код кнопки) первый джойстик кнопка 1, (№2 Код кнопки) первый джойстик кнопка 8. То есть для первого джоя и вверху (№1) и внизу (№2) назначены кнопки - 1 и 8. (порядок без разницы). Записываем всё это в INI.
Теперь нам нужно настроить параметры генераторов: "Кнопки"/"Генератор кнопок"/"Нажатие KGen1...":
Выбираем наш номер генератора 9, Ставим "режим маппера", код кнопки "Enter" - по Enter будет стрельба из всех стволов. Записываем конечно в INI.
Выбираем второй номер генератора 10, Ставим "режим маппера", код кнопки "BackSpace" - по BackSpace будет стрельба из пулемётов. Записываем в INI.
Теперь остаётся только настроить Ил-2 так, чтобы по кнопке Enter он стрелял из всех стволов, а по BackSpace из пулемётов.
После этого можно тестировать:
Нажатие кнопки 1 Джоя приведёт к нажатию кнопки Enter и Ил будет стрелять из всего.
Нажатие кнопки 8 ни к чему не должно привести если ничего другого не повешено на неё.
Нажатие кнопки 8 и 1 одновременно приведёт к нажатию кнопки BackSpace и Ил будет стрелять из пулемётов.
Отпускание кнопок приведёт в прекращению стрельбы.
Пордок нажатия кнопок в 2х кнопочных комбинациях не имеет роли, то есть зажав кнопку 1 и периодически отпуская кнопку 8 получим эффект прекращения стрельбы из пушек в мементы нажатия кнопки 8. Пулемёты будут стрелять постоянно, пока нажата кнопка 1.
Разумеется описанные кнопки и функции приведены только в качестве примера и могут меняться по своему усмотрению.
Внимание: Для стрельбы и т.п. где требуется именно удержание кнопки (пока нажата стреляем) не забудьте включить галочка "Режим маппера" для генератора, иначе стрельба не начнётся даже если вы будуте долго жать кнопку.