local D=script.Parent.Bike.Value local J=workspace.CurrentCamera local I=game:GetService("\082\117\110\083\101\114\118\105\099\101")D.DriveSeat.ChildRemoved:connect(function(D)if D.Name=="\083\101\097\116\087\101\108\100"then I:UnbindFromRenderStep("\077\067\097\109")J.CameraType=Enum.CameraType.Custom end end)script.Parent.Values.MouseSteerOn.Changed:connect(function(f)if script.Parent.Values.MouseSteerOn.Value then I:BindToRenderStep("\077\067\097\109",Enum.RenderPriority.Camera.Value,function()J.CameraType=Enum.CameraType.Scriptable local I=math.min(1,D.DriveSeat.Velocity.Magnitude/500)local f=((D.DriveSeat.Position+Vector3.new(0,8+I*2,0))-D.DriveSeat.CFrame.lookVector*17)+(D.DriveSeat.Velocity.Unit*-7)*I J.CoordinateFrame=CFrame.new(f,D.DriveSeat.Position)end)else I:UnbindFromRenderStep("\077\067\097\109")J.CameraType=Enum.CameraType.Custom end end)


local car = script.Parent.Bike.Value
local cam = workspace.CurrentCamera
local RS = game:GetService("RunService")

car.DriveSeat.ChildRemoved:connect(function(child)
	if child.Name=="SeatWeld" then
		RS:UnbindFromRenderStep("MCam")
		cam.CameraType = Enum.CameraType.Custom
	end
end)

script.Parent.Values.MouseSteerOn.Changed:connect(function(property)
	if script.Parent.Values.MouseSteerOn.Value then
		RS:BindToRenderStep("MCam",Enum.RenderPriority.Camera.Value,function()	
			cam.CameraType = Enum.CameraType.Scriptable
			local pspeed = math.min(1,car.DriveSeat.Velocity.Magnitude/500)
			local cc = car.DriveSeat.Position+Vector3.new(0,8+(pspeed*2),0)-(car.DriveSeat.CFrame.lookVector*17)+(car.DriveSeat.Velocity.Unit*-7*pspeed)
			cam.CoordinateFrame = CFrame.new(cc,car.DriveSeat.Position)
		end)
	else
		RS:UnbindFromRenderStep("MCam")
		cam.CameraType = Enum.CameraType.Custom
	end
end)
