88 lines
		
	
	
	
		
			2.6 KiB
		
	
	
	
		
			Lua
		
	
	
	
	
	
			
		
		
	
	
			88 lines
		
	
	
	
		
			2.6 KiB
		
	
	
	
		
			Lua
		
	
	
	
	
	
local INPUT_LOOK_LR = 1
 | 
						|
local INPUT_LOOK_UD = 2
 | 
						|
local INPUT_CHARACTER_WHEEL = 19
 | 
						|
local INPUT_SPRINT = 21
 | 
						|
local INPUT_MOVE_UD = 31
 | 
						|
local INPUT_MOVE_LR = 30
 | 
						|
local INPUT_VEH_ACCELERATE = 71
 | 
						|
local INPUT_VEH_BRAKE = 72
 | 
						|
local INPUT_PARACHUTE_BRAKE_LEFT = 152
 | 
						|
local INPUT_PARACHUTE_BRAKE_RIGHT = 153
 | 
						|
 | 
						|
--------------------------------------------------------------------------------
 | 
						|
 | 
						|
local BASE_CONTROL_MAPPING = {
 | 
						|
  -- Rotation
 | 
						|
  LOOK_X = INPUT_LOOK_LR,
 | 
						|
  LOOK_Y = INPUT_LOOK_UD,
 | 
						|
 | 
						|
  -- Position
 | 
						|
  MOVE_X = INPUT_MOVE_LR,
 | 
						|
  MOVE_Y = INPUT_MOVE_UD,
 | 
						|
  MOVE_Z = { INPUT_PARACHUTE_BRAKE_LEFT, INPUT_PARACHUTE_BRAKE_RIGHT },
 | 
						|
 | 
						|
  -- Multiplier
 | 
						|
  MOVE_FAST = INPUT_SPRINT,
 | 
						|
  MOVE_SLOW = INPUT_CHARACTER_WHEEL
 | 
						|
}
 | 
						|
 | 
						|
--------------------------------------------------------------------------------
 | 
						|
 | 
						|
local BASE_CONTROL_SETTINGS = {
 | 
						|
  -- Rotation
 | 
						|
  LOOK_SENSITIVITY_X = 5,
 | 
						|
  LOOK_SENSITIVITY_Y = 5,
 | 
						|
 | 
						|
  -- Position
 | 
						|
  BASE_MOVE_MULTIPLIER = 0.85,
 | 
						|
  FAST_MOVE_MULTIPLIER = 6,
 | 
						|
  SLOW_MOVE_MULTIPLIER = 6,
 | 
						|
}
 | 
						|
 | 
						|
--------------------------------------------------------------------------------
 | 
						|
 | 
						|
local BASE_CAMERA_SETTINGS = {
 | 
						|
  --Camera
 | 
						|
  FOV = 50.0,
 | 
						|
 | 
						|
  -- On enable/disable
 | 
						|
  ENABLE_EASING = true,
 | 
						|
  EASING_DURATION = 250,
 | 
						|
 | 
						|
  -- Keep position/rotation
 | 
						|
  KEEP_POSITION = false,
 | 
						|
  KEEP_ROTATION = false
 | 
						|
}
 | 
						|
 | 
						|
--------------------------------------------------------------------------------
 | 
						|
 | 
						|
_G.KEYBOARD_CONTROL_MAPPING = table.copy(BASE_CONTROL_MAPPING)
 | 
						|
_G.GAMEPAD_CONTROL_MAPPING = table.copy(BASE_CONTROL_MAPPING)
 | 
						|
 | 
						|
-- Swap up/down movement (LB for down, RB for up)
 | 
						|
_G.GAMEPAD_CONTROL_MAPPING.MOVE_Z[1] = INPUT_PARACHUTE_BRAKE_LEFT
 | 
						|
_G.GAMEPAD_CONTROL_MAPPING.MOVE_Z[2] = INPUT_PARACHUTE_BRAKE_RIGHT
 | 
						|
 | 
						|
-- Use LT and RT for speed
 | 
						|
_G.GAMEPAD_CONTROL_MAPPING.MOVE_FAST = INPUT_VEH_ACCELERATE
 | 
						|
_G.GAMEPAD_CONTROL_MAPPING.MOVE_SLOW = INPUT_VEH_BRAKE
 | 
						|
 | 
						|
--------------------------------------------------------------------------------
 | 
						|
 | 
						|
_G.KEYBOARD_CONTROL_SETTINGS = table.copy(BASE_CONTROL_SETTINGS)
 | 
						|
_G.GAMEPAD_CONTROL_SETTINGS = table.copy(BASE_CONTROL_SETTINGS)
 | 
						|
 | 
						|
-- Gamepad sensitivity can be reduced by BASE.
 | 
						|
_G.GAMEPAD_CONTROL_SETTINGS.LOOK_SENSITIVITY_X = 2
 | 
						|
_G.GAMEPAD_CONTROL_SETTINGS.LOOK_SENSITIVITY_Y = 2
 | 
						|
 | 
						|
--------------------------------------------------------------------------------
 | 
						|
 | 
						|
_G.CAMERA_SETTINGS = table.copy(BASE_CAMERA_SETTINGS)
 | 
						|
 | 
						|
--------------------------------------------------------------------------------
 | 
						|
 | 
						|
-- Create some convenient variables.
 | 
						|
-- Allows us to access controls and config without a gamepad switch.
 | 
						|
_G.CONTROL_MAPPING  = CreateGamepadMetatable(_G.KEYBOARD_CONTROL_MAPPING, _G.GAMEPAD_CONTROL_MAPPING)
 | 
						|
_G.CONTROL_SETTINGS = CreateGamepadMetatable(_G.KEYBOARD_CONTROL_SETTINGS, _G.GAMEPAD_CONTROL_SETTINGS)
 |