Add Torque in local space in C++

I am able to add torque to my objects, but it seems to be relative to the world and not to the actor, how do I change that? Currently using something like the following

void AFlightPawn::Pitch(float Val)
{
    AddTorque(FVector(0, Val * SpeedFactor * 1000, 0));
}

This got me very confused for a couple hours until I realized its just the failings of using Euler angles instead of Quaternions. No idea why such an advanced game engine wouldn’t use quaternions as the default (and why the left handed coordinate system whyyyyy).

Anyways:

This will rotate the actor around its own Z axis (Yaw).

FQuat myActorQuat = GetActorQuat();
MyMesh->AddTorque(myActorQuat.RotateVector(FVector(0.0f, 0.0f, myRotForce)), NAME_None, false);