I don't think I see anything that prevents the character from moving. I am not able to jump, walk, or anything that involves me having to press a key to move my character. The script is in StarterPlayerScripts, and it is a local script.
local player = game.Players.LocalPlayer local gyro = nil local flashlight = nil local mouse = player:GetMouse() mouse.TargetFilter = game.Workspace local runService = game:GetService("RunService") local function onCharacterAdded(character) local torso = character:WaitForChild("Torso") gyro = Instance.new("BodyGyro", torso) gyro.P = 1000000 gyro.MaxTorque = Vector3.new(0, 10000, 0) flashlight = Instance.new("PointLight", torso) end local function isnan(x) return x ~= x end local function onRenderStep() if gyro then local mouseHit = mouse.Hit.p if not (isnan(mouseHit.X) or isnan(mouseHit.Y) or isnan(mouseHit.Z)) then gyro.CFrame = CFrame.new(player.Character.Torso.Position, mouseHit) end end end while not player.Character do wait() end onCharacterAdded(player.Character) player.CharacterAdded:connect(onCharacterAdded) runService:BindToRenderStep('TrackMouse', Enum.RenderPriority.Input.Value, onRenderStep)
If you can find any way to allow the character some movement, please let me know.