I'm coding it where a keyboard input would cause a fire to a server script, creating sort of a forcefield surrounding the player by using cframes and welding. However, it appears that there is a delay because I would be teleported a few steps back when the forcefield appears.
Does anyone know how to fix this?
Local Script
UIS.InputBegan:Connect(function(input, isTyping) if isTyping then return elseif input.KeyCode == Enum.KeyCode.F then if debounce == false and isBroken.Value == false then if isActive == false then ended = false isActive = true Block:FireServer(isActive) end end end end)
Server Script
local blockfield = Meshes:WaitForChild("BlockField"):Clone() blockfield.CFrame = hrp.CFrame blockfield.Parent = Character local weld = Instance.new("ManualWeld") weld.Part0 = blockfield weld.Part1 = hrp weld.C0 = weld.Part0.CFrame:toObjectSpace(weld.Part1.CFrame) weld.Parent = weld.Part0