###########################################################################
#                           MechWarrior II                                #
#                         Input Mapping File                              #
#                                                                         #
#  This file allows you to configure the inputs to the MechWarrior sim.   #
#                                                                         #
###########################################################################

# Available controls
# torso_tilt
# torso_tilt_plus
# torso_tilt_minus
# torso_tilt_reset
# torso_pan
# torso_pan_plus
# torso_pan_minus
# torso_pan_set
# torso_pan_reset
# throttle
# legs_pan_delta
# jumpjet_enabled
# jumpjet_fire_left
# jumpjet_fire_right
# jumpjet_fire_forward
# jumpjet_fire_backward
# throttle_plus
# throttle_minus
# throttle_set
# weapon_fire
# weapon_cycle
# weapon_fire_group
# weapon_fire_group_1
# weapon_fire_group_2
# weapon_fire_group_3
# weapon_cycle_group
# toggle_group_fire
# legs_pan_minus
# legs_pan_plus
# advance_nav
# previous_nav
# reset_nav
# advance_target
# previous_target
# reset_target
# target_reticle
# target_friendly
# nearest_enemy
# target_last_shot
# inspect_target
# advance_gamepiece
# previous_gamepiece
# reset_gamepiece
# advance_gamething
# previous_gamething
# reset_gamething
# self_destruct
# autopilot
# pilot_tilt
# pilot_tilt_plus
# pilot_tilt_minus
# pilot_tilt_reset
# pilot_pan
# pilot_pan_plus
# pilot_pan_minus
# pilot_pan_reset
# glance_left
# glance_right
# glance_up
# glance_down
# eyepoint_tilt
# eyepoint_tilt_plus
# eyepoint_tilt_minus
# eyepoint_tilt_reset
# eyepoint_pan_delta
# eyepoint_pan_plus
# eyepoint_pan_minus
# eyepoint_pan_reset
# eyepoint_slide_delta
# eyepoint_slide_plus
# eyepoint_slide_minus
# track_distance_delta
# track_distance_plus
# track_distance_minus
# track_height_delta
# track_height_plus
# track_height_minus
# zoom_factor
# zoom_factor_plus
# zoom_factor_minus
# zoom_factor_reset
# menu_item
# menu_item_reset
# menu_value
# menu_value_reset
# menu_enter
# menu_abort

# Joystick Controls
weapon_fire {
	+ joystick	  Button1
}
weapon_cycle {
	+ joystick	  Button2
}
torso_tilt {
	- joystick	 Up/Down
	- keyboard	 Insert
}
legs_pan_delta {
	+ joystick	 Left/Right
	- keyboard	 Insert
}

# Track view/Free eye controls on a joystick
eyepoint_pan_delta {
	+ joystick	 Left/Right
	+ keyboard	 Insert
}
track_distance_delta {
	+ joystick	 Up/Down
	+ keyboard	 Insert
}

# Keyboard layout

# Weapon controls on the standard keyboard
weapon_fire {
	+ keyboard	 Space
}
weapon_cycle {
	+ keyboard	 Enter
}

# Weapon controls on the keypad
weapon_fire {
	+ keyboard	 KeypadEnter
	- keyboard	 Insert
}
weapon_cycle {
	+ keyboard	 Delete
}
weapon_fire_group_1 {
	+ keyboard	NumLock
	- keyboard	LeftControl  # Just because!
}
weapon_fire_group_2 {
	+ keyboard	GreySlash
}
weapon_fire_group_3 {
	+ keyboard	GreyStar
}

# Throttle control on the top -/+ keys
throttle_plus {
	+ keyboard	 Equal
}
throttle_minus {
	+ keyboard	 Minus
}

# Throttle control on the keypad -/+ keys
throttle_plus {
	+ keyboard	 GreyPlus
}
throttle_minus {
	+ keyboard	 GreyMinus
}

# Turning, on the keypad arrows
legs_pan_minus {
	+ keyboard	 LeftArrow
	- keyboard	 Insert
}
legs_pan_plus {
	+ keyboard	 RightArrow
	- keyboard	 Insert
}

# Turning, on the grey arrows
legs_pan_minus {
	+ keyboard	 GreyLeftArrow
	- keyboard	 Control
}
legs_pan_plus {
	+ keyboard	 GreyRightArrow
	- keyboard	 Control
}

# Torso tilting on the keypad arrows
torso_tilt_plus {
	+ keyboard	 UpArrow
	- keyboard	 Insert
}
torso_tilt_minus {
	+ keyboard	 DownArrow
	- keyboard	 Insert
}

# Torso tilting on the grey arrows
torso_tilt_plus {
	+ keyboard	 GreyUpArrow
	- keyboard	 Control
}
torso_tilt_minus {
	+ keyboard	 GreyDownArrow
	- keyboard	 Control
}

# Torso panning on the ./, (</>) keys
torso_pan_plus {
	+ keyboard	 Period
}
torso_pan_minus {
	+ keyboard	 Comma
}

# Torso panning on the keypad End/PgDn keys
torso_pan_plus {
	+ keyboard	 PageDown
	- keyboard	 Insert
	- keyboard	 j
}
torso_pan_minus {
	+ keyboard	 End
	- keyboard	 Insert
	- keyboard	 j
}

# Keypad 5 resets torso and pilot head
torso_tilt_reset {
	+ keyboard	 Keypad5
}
torso_pan_reset {
	+ keyboard	 Keypad5
}
pilot_tilt_reset {
	+ keyboard	 Keypad5
}
pilot_pan_reset {
	+ keyboard	 Keypad5
}

# Pilot head panning on keypad Home/PgUp keys
glance_right {
	+ keyboard	 PageUp
	- keyboard	 Insert
	- keyboard	 j
}
glance_left {
	+ keyboard	 Home
	- keyboard	 Insert
	- keyboard	 j
}

# Pilot head tilting/panning on the grey arrow keys (w/ Control)
pilot_tilt_minus {
	+ keyboard	 GreyDownArrow
	+ keyboard	 Control
	- keyboard	 j
}
pilot_tilt_plus {
	+ keyboard	 GreyUpArrow
	+ keyboard	 Control
	- keyboard	 j
}
pilot_pan_plus {
	+ keyboard	 GreyRightArrow
	+ keyboard	 Control
	- keyboard	 j
}
pilot_pan_minus {
	+ keyboard	 GreyLeftArrow
	+ keyboard	 Control
	- keyboard	 j
}

# View zooming on z/Shift-z
zoom_factor_plus {
	+ keyboard	z
	- keyboard	Shift
	- keyboard	Control
}
zoom_factor_minus {
	+ keyboard	z
	+ keyboard	Shift
	- keyboard	Control
}

# Jumpjets on the key pad ("j" key required)
jumpjet_enabled {
	+ keyboard	 j
}
jumpjet_fire_left {
	+ keyboard	 Home
	+ keyboard	 j
	- keyboard	 Insert
}
jumpjet_fire_right {
	+ keyboard	 PageUp
	+ keyboard	 j
	- keyboard	 Insert
}

# Jumpjets on the six grey keys ("j" key NOT needed)
jumpjet_fire_forward {
	+ keyboard	 GreyHome
}
jumpjet_fire_backward {
	+ keyboard	 GreyEnd
}
jumpjet_fire_left {
	+ keyboard	 GreyInsert
}
jumpjet_fire_right {
	+ keyboard	 GreyPageUp
}
legs_pan_minus {
	+ keyboard	 GreyDelete
}
legs_pan_plus {
	+ keyboard	 GreyPageDown
}
jumpjet_enabled {
	+ keyboard	 GreyHome
}
jumpjet_enabled {
	+ keyboard	 GreyEnd
}
jumpjet_enabled {
	+ keyboard	 GreyInsert
}
jumpjet_enabled {
	+ keyboard	 GreyPageUp
}
jumpjet_enabled {
	+ keyboard	 GreyDelete
}
jumpjet_enabled {
	+ keyboard	 GreyPageDown
}

# Free eye/track view controls on the keypad (w/ Insert)
eyepoint_pan_minus {
	+ keyboard	 LeftArrow
	+ keyboard	 Insert
}
eyepoint_pan_plus {
	+ keyboard	 RightArrow
	+ keyboard	 Insert
}
eyepoint_pan_minus {
	+ keyboard	 Home
	- keyboard	 Insert
}
eyepoint_pan_plus {
	+ keyboard	 PageUp
	- keyboard	 Insert
}
eyepoint_slide_minus {
	+ keyboard	 Delete
	+ keyboard	 Insert
}
eyepoint_slide_plus {
	+ keyboard	 KeypadEnter
	+ keyboard	 Insert
}
eyepoint_tilt_minus {
	+ keyboard	 PageDown
	+ keyboard	 Insert
}
eyepoint_tilt_plus {
	+ keyboard	 PageUp
	+ keyboard	 Insert
}
track_distance_minus {
	+ keyboard	 UpArrow
	+ keyboard	 Insert
}
track_distance_plus {
	+ keyboard	 DownArrow
	+ keyboard	 Insert
}
track_height_minus {
	+ keyboard	 End
	+ keyboard	 Insert
}
track_height_plus {
	+ keyboard	 Home
	+ keyboard	 Insert
}
track_distance_minus {
	+ keyboard	 z
	- keyboard	 Shift
}
track_distance_plus {
	+ keyboard	 z
	+ keyboard	 Shift
}

# Free eye/track view controls on the Ctrl-grey arrows
eyepoint_pan_minus {
	+ keyboard	 GreyLeftArrow
	+ keyboard	 Control
}
eyepoint_pan_plus {
	+ keyboard	 GreyRightArrow
	+ keyboard	 Control
}
track_distance_minus {
	+ keyboard	 GreyUpArrow
	+ keyboard	 Control
}
track_distance_plus {
	+ keyboard	 GreyDownArrow
	+ keyboard	 Control
}
