I made this teleport script that teleports a player forward and leaves a part behind that is being tween animated
Whenever I would use it it would lag the whole game, I saw some solutions which are to make the tween client sided but How would everyone in the server see the tween? Is there a way to fix this without making the tween clientsided if not how do I make it so everyone else can see it?
clientsided Input script
local Plr = game.Players.LocalPlayer
local Char = Plr.Character
local Hum = Char:WaitForChild("Humanoid")
local HumRoot = Char.HumanoidRootPart
local remoteloc = game.ReplicatedStorage.InstantTransmision
local remote = game.ReplicatedStorage.InstantTransmision.Transmission
local R = remoteloc.FirstStage
local DB = false
local UIS = game:GetService("UserInputService")
UIS.InputBegan:Connect(function(input, IsTyping)
if DB == true then return end
if IsTyping then return
elseif input.KeyCode == Enum.KeyCode.LeftControl then
HumRoot.CFrame = HumRoot.CFrame + HumRoot.CFrame.LookVector*10
remote:FireServer()
end
end)
Serversided script
local remote = game.ReplicatedStorage.InstantTransmision.Transmission
remote.OnServerEvent:Connect(function(plr)
local Char = plr.Character
local Hum = Char:WaitForChild("Humanoid")
local HumRoot = Char.HumanoidRootPart
local partloc = game.ServerStorage.Classes.UnArmed.Transmission
local Tp = partloc:Clone()
Tp.Parent = workspace
local TS = game:GetService("TweenService")
local Info = TweenInfo.new(
0.3,
Enum.EasingStyle.Elastic,
Enum.EasingDirection.Out,
0,
true,
0
)
local goals = {
Size = Tp.circ1.Size*1.5,
}
local goals2 = {
Size = Tp.circ2.Size*1.5,
}
local goals3 = {
Size = Tp.Union.Size*1.5,
}
local Tween = TS:Create(Tp.circ1, Info, goals)
local Tween2 = TS:Create(Tp.circ2, Info, goals2)
local Tween3 = TS:Create(Tp.Union, Info, goals3)
Tween:Play()
Tween2:Play()
Tween3:Play()
Tp.TransSound:Play()
Tp.CFrame = HumRoot.CFrame + Vector3.new(0,3,0)
game.Debris:AddItem(Tp, 1)
end)
