Библиотека для создания Unity InputActions с поддержкой переназначения клавиш прямо в игре. Предоставляет альтернативный интерфейс для настройки привязок клавиш, что позволяет модам добавлять настраиваемые в игре бинды.
Установка и использование
Этот мод является зависимостью для других модификаций и не добавляет контент самостоятельно, но обеспечивает возможность добавлять настраиваемые клавиши.
Хранение настроек привязок
- Версия 0.7.0 и выше:
- Глобальные настройки:
AppData/LocalLow/ZeekerssRBLX/Lethal Company/InputUtils/controls - Локальные настройки:
BepInEx/config/controls
- Глобальные настройки:
- Версия от 0.4.1 до 0.6.x:
BepInEx/config/controls - Версия 0.4.0 и ниже:
BepInEx/controls
Совместимость с версией Lethal Company
InputUtils официально поддерживает только последнюю версию игры и публичные бета-версии, если они доступны. Использование более старых версий происходит на свой страх и риск и не гарантирует поддержку.
Рекомендуемый способ установки
Для установки рекомендуется использовать менеджер модов. Без менеджера модов поддержка не предоставляется.
Интеграция для разработчиков
Для начала работы добавьте пакет NuGet в ваш проект, например, через .csproj:
<ItemGroup> <PackageReference Include="Rune580.Mods.LethalCompany.InputUtils" Version="0.7.3" />
</ItemGroup>
Если NuGet использовать не хотите, скачайте DLL из последнего релиза и добавьте ссылку в проект.
Создание привязок
- Создайте подкласс
LcInputActions, который будет содержать все нужныеInputAction. - Объявите свойства с атрибутом
[InputAction], указывающим параметры привязки.
public class MyInputActions : LcInputActions { [InputAction(KeyboardControl.G, Name = "Взрыв")] public InputAction ExplodeKey { get; set; }
}
Обязательные параметры атрибута
- Укажите один из вариантов: путь клавиатуры/мыши (
kbmPath) или перечислениеKeyboardControlилиMouseControl.
Опциональные параметры
- Отображаемое имя (
Name) для меню привязок. - Путь или перечисление для геймпада (
GamepadPathилиGamepadControl). - Взаимодействия (
KbmInteractions,GamepadInteractions). - Тип действия (
ActionType).
Создание привязок во время выполнения
- Переопределите метод
CreateInputActions(in InputActionMapBuilder builder). - Используйте builder для определения действий и вызовите
Finish()для каждого.
Использование привязок
- Создайте единственный экземпляр класса InputActions.
- Обращайтесь к ним через этот экземпляр.
InputActionsInstance.ExplodeKey.triggered
Для дискретных действий рекомендуется подписываться на событие performed:
ExplodeKey.performed += OnExplodeKeyPressed;
Использование InputUtils как опциональной зависимости
- Добавьте атрибут
[BepInDependency]с флагомSoftDependencyв свой плагин. - Проверяйте наличие мода перед обращением к InputUtils.
Сборка
- При необходимости скопируйте и настройте файл
LethalCompanyInputUtils.csproj.user. - Соберите проект с помощью IDE или командой
dotnet build.







