Scripting Helpers is winding down operations and is now read-only. More info→
Ad
Log in to vote
0

I have a teleport script. It works but has a potential of breaking, How do I fix it?

Asked by 6 years ago

This is in two parts. Local script and normal script. They are connected using a remote event. In general it works. But occasionally it can break, but not commonly. I am asking today to get rid of the bugs entirely! Thanks so much you guys are awesome!

Here is normal script:

local ReplicatedStorage = game:GetService("ReplicatedStorage")
local TriggerEvent = Instance.new("RemoteEvent", ReplicatedStorage)
TriggerEvent.Name = "TeleportEventCyan"

local plr = game.Players.LocalPlayer
local MyBody = plr.Character

local flash = script.Light
local sparks = script.Sparkles

local function onTriggerFired(player)
script.Parent.Activated:connect(function()
end)
end

TriggerEvent.OnServerEvent:Connect(onTriggerFired)

And here is local script (Main one)

local ReplicatedStorage = game:GetService("ReplicatedStorage")
local TriggerEvent = ReplicatedStorage:WaitForChild("TeleportEventCyan")

local plr = game.Players.LocalPlayer
local MyBody = plr.Character
local mouse = plr:GetMouse()
local human = MyBody:FindFirstChild("Humanoid")
local Torso = MyBody:FindFirstChild("Torso") or MyBody:FindFirstChild("UpperTorso") and MyBody:FindFirstChild("LowerTorso")
local Torso1 = MyBody:FindFirstChild("Torso") or MyBody:FindFirstChild("UpperTorso")

local flash = script.Light
local sparks = script.Sparkles

script.Parent.Activated:connect(function()
    script.Use:play()
    flash:Clone()
    flash.Parent = Torso1
    sparks:Clone()
    sparks.Parent = Torso1
    wait(0.25)
    Torso1.Sparkles:remove()
    Torso1.Light:remove()
    local hit = CFrame.new(Vector3.new(-720.8, 20, 35.2))
    MyBody:MoveTo(hit.p)
    Torso:MoveTo(hit.p)
end)

TriggerEvent:FireServer()

function deleteondeath()
TriggerEvent:remove()
script.Parent:Destroy()
end

human.Died:connect(deleteondeath) 

Answer this question