Hey, my tp system used to work but it just suddenly broke, I’m not sure what broke it so I don’t know how to fix it 
Does anyone have any idea? Here is the code.
local Players = game:GetService("Players")
local ReplicatedStorage = game:GetService("ReplicatedStorage")
local ServerScriptService = game:GetService("ServerScriptService")
local ServerStorage = game:GetService("ServerStorage")
local Modules = ServerScriptService:WaitForChild("Modules")
local Remotes = ReplicatedStorage:WaitForChild("Remotes")
local TeleportRemote = Remotes.RequestTeleport
local Utils = require(Modules:WaitForChild("Utils"))
local CharacterAbilities = require(Modules:WaitForChild("CharacterAbilities"))
TeleportRemote.OnServerEvent:Connect(function(plr, mouse)
local Data = Utils.GetData(plr)
if not Data then return plr:Kick(Utils.Error("No data.")) end
local PlayerChar = Data.Character.Value
if PlayerChar ~= "None" then
local plrchar = plr.Character
local Head = plrchar.Head
local TPRange = CharacterAbilities[PlayerChar].TPRange
local Magnitude = (Head.Position - mouse).Magnitude
local HumanoidRootPart = plrchar.HumanoidRootPart
local Mana = Data.Mana
local TPManaCost = CharacterAbilities[PlayerChar].TPManaCost
if Data.lockedOnto.Value ~= "None" then
local playerlocked = Data.lockedOnto.Value
local Players = game:GetService("Players")
local playertar = Players:FindFirstChild(playerlocked)
local targetchar = playertar.Character
local targethead = targetchar.Head
local Magnitude2 = (Head.Position - targethead.Position).Magnitude
if TPRange > Magnitude2 then
if Data.Mana.Value > TPManaCost then
local OFFSET = 4
targetchar:WaitForChild("HumanoidRootPart").CFrame = plrchar:WaitForChild("HumanoidRootPart").CFrame * CFrame.new(0, 0, -OFFSET)
local oldmanaval = Data.Mana.Value
local resultmana = oldmanaval - TPManaCost
Data.Mana.Value = resultmana
else
end
end
elseif TPRange > Magnitude then
if Data.Mana.Value > TPManaCost then
HumanoidRootPart.Position = mouse
local oldmanaval = Data.Mana.Value
local resultmana = oldmanaval - TPManaCost
Data.Mana.Value = resultmana
else
end
elseif Magnitude > 0 then
if Data.Mana.Value > TPManaCost then
HumanoidRootPart.Position = (mouse - Head.Position).Unit * TPRange + Head.Position
local oldmanaval = Data.Mana.Value
local resultmana = oldmanaval - TPManaCost
Data.Mana.Value = resultmana
end
end
end)```