function ClientAvatarComponent.configurePhysics(Q)local T=Q.avatar:FindFirstChildOfClass("\072\117\109\097\110\111\105\100")for Q,S in pairs(Enum.HumanoidStateType:GetEnumItems())do if S~=Enum.HumanoidStateType.None and S~=Enum.HumanoidStateType.Physics then pcall(function()T:SetStateEnabled(S,false)end)end end T:SetStateEnabled(Enum.HumanoidStateType.Physics,true)T:ChangeState(Enum.HumanoidStateType.Physics)for Q,T in pairs(Q.avatar:GetDescendants())do if T:IsA("\066\097\115\101\080\097\114\116")then T.Massless=true T.Anchored=false T.CanCollide=false end end end function ClientAvatarComponent.updateStatus(T,Q) end
--[[
    Configures the avatar's Humanoid physics to ensure they do not clash with the vehicle
]]
function ClientAvatarComponent:configurePhysics()
	local humanoid = self.avatar:FindFirstChildOfClass("Humanoid")

	-- By disabling HumanoidStateTypes, we stop the Humanoid automatically entering them
	for _, stateType in pairs(Enum.HumanoidStateType:GetEnumItems()) do
		if stateType ~= Enum.HumanoidStateType.None and stateType ~= Enum.HumanoidStateType.Physics then
			-- Pcall here as some state types are not intended to be disabled
			pcall(function()
				humanoid:SetStateEnabled(stateType, false)
			end)
		end
	end

	-- When in the 'Physics' state the Humanoid has no physics influence of its own
	humanoid:SetStateEnabled(Enum.HumanoidStateType.Physics, true)
	humanoid:ChangeState(Enum.HumanoidStateType.Physics)

	-- To minimize impact on driving, make all the parts massless and non-collidable
	for _, descendant in pairs(self.avatar:GetDescendants()) do
		if descendant:IsA("BasePart") then
			descendant.Massless = true
			descendant.Anchored = false
			descendant.CanCollide = false
		end
	end
end

function ClientAvatarComponent:updateStatus(statuses)
	-- TODO: Steering animation
end
