Lerp and Tween are not the same. Tween gets something from A to B. Start to Finish. When you Lerp something you are taking it from A to B in an interval of sorts. using :Lerp(Stuff,1) Will set it instantly to its destination while using :Lerp(Stuff,0) wont move it at all. Essentially by using lerp all you are doing is moving it partially to its destination and by running it in a loop you are moving it over and over. An example below:
I think the best solution would be to use an actual Animation for the arm swaying and find another method to attach the arms to the camera.
If I call :Lerp(Stuff,.5) It will go half way. I then call :Lerp(Stuff,.5) again and now its 3/4 of the way to its destination. Because it originally when half way, and then it went half of that which is 1/4. 1/2 + 1/4 = 3/4. The more you call this the closer and closer it will get to its destination.
So essentially I need to use tween service then. Sway animations I donāt see how that could be made dynamically when they are preset animations. I wouldnāt actually think it would be this hard to implement. I obviously switched from setprimarypart to welding to camera with motor6d and weld constraints.
Do you think I just need to make a part that is always at camera thats invisible and attach the rig to that part and move the rig around than the camera part. I would think that would make things complicated then it needs to just for sway and I would have similar issues. Tween service will have to be better and maybe I can get the sway to work properly. ObjectSpace didnāt seem to work well and ToOrientation also.
Thanks for replying this thing is getting old to me but Iām determined to get it working because it makes it look a little more polished. Btw the breathing is sine waves so the only animation is holding gun.