local ran = math.random(-200, 200)/10000
local TS = game.TweenService
local goal = {}
goal.CFrame = camera.CFrame * CFrame.Angles(0.03, ran, 0)
local tinf = TweenInfo.new(0.05)
local tween = TS:Create(camera, tinf, goal)
tween:Play()
This is the code that I use for the recoil. If I stand still, it works perfectly, but if I move and shoot, the camera stops, then moves up a bit (how it should), then teleports back to the character. I know that the problem is that the tween animates the whole camera, not only the rotation, but I don't know how to fix it. Is there a CFrame.Rotation or CFrame.Angle that I can use?
Sorry for my English and thanks for any help.

3 comments
Why are you using tweens in RenderStepped?
@Dovydas1118 Im not. It's inside a mouse click event
Have you tried creating the goal inside the TS:Create instead of referencing beforehand?