This local script doesn't make the surface GUI children visible?
game.Players.LocalPlayer.Character.Humanoid:GetPropertyChangedSignal("Sit"):Connect(function()
if game.Players.LocalPlayer.Character.Humanoid.Sit == true then
script.Parent.Screen.SurfaceGui.ScrollingFrame.Visible = true
script.Parent.Screen.SurfaceGui.Laptop.Visible = true
else
script.Parent.Screen.SurfaceGui.ScrollingFrame.Visible = false
script.Parent.Screen.SurfaceGui.Laptop.Visible = false
end
end

2 comments
because sit isnt a property so you cant check that, you have to check the humanoid:GetState() or whatever that one is called
Humanoid.Sit is actually a property...