function TargetingModule.BindTargetingModeHotkeys(s)local function P(P,m,T)if m.Name=="\069\110\100"then return Enum.ContextActionResult.Pass end local w=UserInputService:GetKeysPressed()local r=T:IsModifierKeyDown(Enum.ModifierKey.Shift)if#w~=2 or not r then return Enum.ContextActionResult.Pass end s:ToggleTargetingMode()s:UpdateTarget(nil,true)return Enum.ContextActionResult.Sink end ContextActionService:BindAction("\066\084\058 \084\111\103\103\108\101 \084\097\114\103\101\116\105\110\103 \077\111\100\101",P,false,Enum.KeyCode.T)local m=GetCore()m.Connections.UnbindTargetingModeHotkeys=m.Disabling:Connect(function()ContextActionService:UnbindAction("\066\084\058 \084\111\103\103\108\101 \084\097\114\103\101\116\105\110\103 \077\111\100\101")end)end function GetCore()return require(script.Parent)end return TargetingModule
--- Installs listener for targeting mode toggling hotkeys.
-- @returns void
function TargetingModule:BindTargetingModeHotkeys()
	local function Callback(Action, State, Input)
		if State.Name == "End" then
			return Enum.ContextActionResult.Pass
		end

		-- Ensure shift is held
		local KeysPressed = UserInputService:GetKeysPressed()
		local IsShiftHeld = Input:IsModifierKeyDown(Enum.ModifierKey.Shift)
		if (#KeysPressed ~= 2) or not IsShiftHeld then
			return Enum.ContextActionResult.Pass
		end

		-- Toggle between targeting modes
		self:ToggleTargetingMode()
		self:UpdateTarget(nil, true)

		-- Sink input
		return Enum.ContextActionResult.Sink
	end

	-- Install listener for T key
	ContextActionService:BindAction("BT: Toggle Targeting Mode", Callback, false, Enum.KeyCode.T)

	-- Unbind hotkey when tool is disabled
	local Core = GetCore()
	Core.Connections.UnbindTargetingModeHotkeys = Core.Disabling:Connect(function()
		ContextActionService:UnbindAction("BT: Toggle Targeting Mode")
	end)
end

function GetCore()
	return require(script.Parent)
end

return TargetingModule
