Adding Relative location to a pawn

Hey, I’m a little stuck on this at the moment. I have an actor that can freely rotate around the Z axis.

This means if this Pawn hits an object, it will spin around (and the camera is fixed it will spin also). When attepting to move this pawn as it’s spinning however, the inputs still are mapped to add World Location.

I essentially have the below at the moment. Are there any functions available which would add relative location to the pawn?

I haven’t been able to get a system to work from googling. Hoping for a push in the right direction, but any help is much appreciated! :slight_smile:

//Move the Player
FVector DesireMovementDirection = FVector(PlayerPawnInput.MovementInput.Y, PlayerPawnInput.MovementInput.X, 0.0f);
FVector Pos = GetActorLocation();
Pos.X += DesireMovementDirection.X * MoveSpeed * DeltaTime;
Pos.Y += DesireMovementDirection.Y * MoveSpeed * DeltaTime;
SetActorLocation(Pos);
}