local Players = game:GetService("Players") local TweenService = game:GetService("TweenService") local player = Players.LocalPlayer local mouse = player:GetMouse() local teleportSpeed = 80 local debounce = false local function makeMarker(position) local part = Instance.new("Part") part.Anchored = true part.CanCollide = false part.Shape = Enum.PartType.Ball part.Color = Color3.fromRGB(0, 255, 255) part.Material = Enum.Material.Neon part.Size = Vector3.new(1,1,1) part.Position = position + Vector3.new(0, 2, 0) part.Parent = workspace game:GetService("Debris"):AddItem(part, 0.5) local tween = TweenService:Create(part, TweenInfo.new(0.5, Enum.EasingStyle.Sine, Enum.EasingDirection.Out), { Transparency = 1, Size = Vector3.new(0.2,0.2,0.2) }) tween:Play() end mouse.Button1Down:Connect(function() if debounce then return end debounce = true local character = player.Character or player.CharacterAdded:Wait() local root = character:FindFirstChild("HumanoidRootPart") if not root then debounce = false return end if not mouse.Hit then debounce = false return end local targetPos = mouse.Hit.p makeMarker(targetPos) local distance = (root.Position - targetPos).Magnitude local travelTime = distance / teleportSpeed local tween = TweenService:Create( root, TweenInfo.new(travelTime, Enum.EasingStyle.Sine, Enum.EasingDirection.Out), {CFrame = CFrame.new(targetPos + Vector3.new(0, 3, 0))} ) tween:Play() tween.Completed:Wait() task.wait(0.2) debounce = false end)