local G=game:GetService("\082\101\112\108\105\099\097\116\101\100\083\116\111\114\097\103\101")local h=game:GetService("\085\115\101\114\073\110\112\117\116\083\101\114\118\105\099\101")local F=require(G.Source.InputCategorizer)local e=require(G.Source.SharedConstants.InputCategory)local o={}local function m()local G=F.getLast()~=e.Gamepad h.MouseIconEnabled=G end function o.start()F.changed:Connect(m)m()end return o
--[[
	Listens for input type changes and disables the mouse cursor during
	gamepad input, and enables it during non-gamepad input.

	This disables the dot on-screen while using a gamepad.
--]]

local ReplicatedStorage = game:GetService("ReplicatedStorage")
local UserInputService = game:GetService("UserInputService")

local InputCategorizer = require(ReplicatedStorage.Source.InputCategorizer)
local InputCategory = require(ReplicatedStorage.Source.SharedConstants.InputCategory)

local GamepadMouseDisabler = {}

local function updateCursorEnabled()
	local shouldEnable = InputCategorizer.getLast() ~= InputCategory.Gamepad
	UserInputService.MouseIconEnabled = shouldEnable
end

function GamepadMouseDisabler.start()
	InputCategorizer.changed:Connect(updateCursorEnabled)
	updateCursorEnabled()
end

return GamepadMouseDisabler
