Recovering recoil

Hello so I have a recoil system for my guns but how would I make it so the player looks at the center of the screen after the recoil.

			if newGun.Automatic then
				camera.CFrame *= CFrame.Angles(math.rad(5), 0, 0)
			else
				camera.CFrame *= CFrame.Angles(math.rad(10), 0, 0)
			end

You could try to get the original camera cframe before shooting like a renderstepped getting the Original camera Cframe, then when shot, the renderstepped stops and the currentcamera cframe tweens back to the original camera cfame

I could do that but I want the player to look straight forward.

I was thinking that, maybe set the Y axis of angles to 0 (if it does a Y axis) after shooting (tween to it)

That’s what I’m trying to do and figure out

Then tween the CurrentCamera Y axis angle cframe to 0 or infact find a number which takes the camera to the center

I can’t I tried these

camera.CFrame *= CFrame.Angles(math.rad(camera.CFrame.X), math.rad(camera.CFrame.Y) + math.rad(10), math.rad(camera.CFrame.Z))

Was there an error or did it work but badly also try not to *=, (I’m not good with Cframe angles), try =

I’m still not getting it.

camera.CFrame *= CFrame.Angles(math.rad(5), 0, 0)

This is making it go up I just want it to go down now

camera.CFrame *= CFrame.Angles(math.rad(-5), 0, 0)

I could do this but what about my automatic guns. It would look so messed up if it just kept going up and down rapidly repeatingly

Hello still haven’t found out a solution

You could make a variable or debounce. When the gun is shooting, it should be false. This Variable can be called “returnrecoil” then do this. Make sure when the key is lifted up the variable becomes true

if return recoil == true then
camera.CFrame *= CFrame.Angles(math.rad(-5), 0, 0)
end