player.CameraMaxZoomDistance=.5 c.FieldOfView=100 humanoid.CameraOffset=Vector3.new(0,-0.25,-1.5)function lock(O)if O and O:IsA("\066\097\115\101\080\097\114\116")then O.LocalTransparencyModifier=O.Transparency O.Changed:connect(function(z)O.LocalTransparencyModifier=O.Transparency end)end end for O,z in pairs(char:GetChildren())do lock(z)end char.ChildAdded:connect(lock)c.Changed:connect(function(O)if O=="\067\097\109\101\114\097\083\117\098\106\101\099\116"then if c.CameraSubject and(c.CameraSubject:IsA("\068\114\105\118\101\083\101\097\116")and humanoid)then c.CameraSubject=humanoid end end end)


player.CameraMaxZoomDistance = 0.5
c.FieldOfView = 100 -- Things get trippy if we don't do this.
humanoid.CameraOffset = Vector3.new(0,-0.25,-1.5)

function lock(part)
	if part and part:IsA("BasePart") then
		part.LocalTransparencyModifier = part.Transparency
		part.Changed:connect(function (property)
			part.LocalTransparencyModifier = part.Transparency
		end)
	end
end

for _,v in pairs(char:GetChildren()) do
	lock(v)
end

char.ChildAdded:connect(lock)

c.Changed:connect(function (property)
	if property == "CameraSubject" then
		if c.CameraSubject and c.CameraSubject:IsA("DriveSeat") and humanoid then
			-- Vehicle seats try to change the camera subject to the seat itself. This isn't what we wan't really.
			c.CameraSubject = humanoid;
		end
	end
end)
