Interaction Reference
Module defined in `lua/common/jbeam/interaction.lua`. Loads and merges `.interaction.json` files for vehicle input action definitions.
Module defined in lua/common/jbeam/interaction.lua. Loads and merges .interaction.json files for vehicle input action definitions.
Exports
Functions
M.process(vehicle)
Discovers and loads all *.interaction.json files from the vehicle directory and /vehicles/common/. Validates file version (must be 2). Merges interactionGroups, actionCategories, and actions from all files into the vehicle data as vehicle.interactionGroups, vehicle.actionCategories, and vehicle.inputActions.
- Parameters:
vehicle- table - The assembled vehicle data table (must havevehicle.vehicleDirectoryset)
- Returns:
self(module table, for chaining)
Internal Notes
- Supported file version: 2 (files with other versions are skipped with an error log).
- Each action gets a
sourcefield set to the originating filename. - Vehicle-specific interaction files are loaded after common ones;
tableMergemeans vehicle files override common ones on conflict. - Used by
core/input/actions.luaon the GE side.
Groups Reference
Module defined in `lua/common/jbeam/groups.lua`. Processes group arrays on JBeam rows, converting group name lists into indexed lookup tables and assigning group IDs.
IO Reference
Module defined in `lua/common/jbeam/io.lua`. Handles reading, parsing, and caching of `.jbeam` files. Provides part lookup by name and slot type.