Plane Rotation Z Value Limited

I’m trying to make the plane rotate but whenever I try to rotate my plane above or below, it won’t allow me to, I don’t understand why this shake occurs.

Here’s a video indicating the problem since I definitely know some wants to see the problem.

Here’s a code that handles the rotation.

local maxBank = 90 -- max angle for rotating
local bank = ((((mouse.ViewSizeX/2)-mouse.X)/(mouse.ViewSizeX/2))*maxBank)

Main.Move.Velocity = Main.CFrame.LookVector*throttle.Value
-- sets the move velocity of the plane
Main.Move.maxForce = Vector3.new(math.huge,math.huge,math.huge)

Main.Gyro.CFrame = (mouse.Hit*CFrame.Angles(0,0,math.rad(bank)))
-- sets the rotation cframe of the plane
Main.Gyro.maxTorque = Vector3.new(math.huge,math.huge,math.huge)

If anyone can help me, reply down below. Thanks.

If I had to guess, it’s because you’re trying to directly set the CFrame instead of setting the rotation velocity.

Maybe you want BodyAngularVelocity | Roblox Creator Documentation instead of BodyGyro.

1 Like

Now I have a new problem. I decided to use BodyAngularVelocity, suggested by @nicemike40.

The problem is that I don’t know how to use mouse.hit on BodyAngularVelocity. If anyone can answer this question, please reply.

(I’m also looking for answers outside of using BodyAngularVelocity)