This must seem like a weird question, but here it goes.
So in my game, my guns are created by CFraming the head of the player to the players mouse. I then CFrame the gun and arms to the head of the player. What im trying to do is delay the CFrame so i wont get the current Frame's CFrame it will be like the last frames CFrame. I dont want to loose the 60 frame speed i currently have with this weapon either. ( just so i dont have a stuttery weapon)
function load()
Tool = script.Parent
Player = game.Players.LocalPlayer
Camera = game.Workspace.CurrentCamera
Mouse = Player:GetMouse()
local weld1 = Instance.new("Weld")
weld1.Parent = Game.JointsService
weld1.C1 = Player.Character.Head.CFrame:toObjectSpace(Player.Character.Torso.CFrame)
weld1.Part0 = Player.Character.Torso
weld1.Part1 = Player.Character.Head
game:GetService("RunService").RenderStepped:connect(function() --What makes the head aim to the mouse
weld1.C1 = CFrame.new(Player.Character.Head.CFrame.p, Mouse.Hit.p):toObjectSpace(Player.Character.Torso.CFrame)
end)
end
wait(2)
load()
This is the script i use that makes the players head look torward their mouse.
Im looking to not run the current CFrame but make it delayed.

2 comments
While delay is a great solution for running a function after a certain amount of time, it doesn't fulfill the requirements listed in this post! He wants to keep the code running according to frame speed. There's no guarantee that delay will wait exactly as long as a frame lasts!
Ahh...Thank you.