You might wanna check the order in wich the values of an event get returned. At line 5, the object body is nil. So either you’re sending nil, or it doesn’t exist.
On the second one, body is declared as a cframe. What you can do there is game.workspace[player.name] to get the character, and then work from there.
Can we know what is being passed as “body” argument from the client? The thing is that you’re trying to FindFirstChild of a CFrame Value, whereas thats not even a method for CFrame values and in the first screenshot the body argument is basically nil.
@Jermartynojm You probably need to see the error more carefully, the error is in the :FindFirstChild method, its not a valid method of CFrame and in the first screenshot, the “body” argument is nil.
if turnedOn == true then
local goDir = planeModel.Body.CFrame.LookVector
local basePosition = planeModel.Body.Position
local planeBody = planeModel.Body
local mousePosition = GetMouseHit(workspace)
local velMaxF = Vector3.new(400000, 400000, 400000)
local bGyroMaxT = Vector3.new(900000, 900000, 900000)
onEvent:FireServer(mousePosition, planeSpeed, goDir, planeBody, velMaxF, bGyroMaxT)
else
local planeBody = planeModel.Body
offEvent:FireServer(planeBody)
end