Prompt: --[[Controls]]

Response:
	local _CTRL = _Tune.Controls
	local Controls = Instance.new("Folder",script.Parent)
	Controls.Name = "Controls"
	for i,v in pairs(_CTRL) do
		local a=Instance.new("StringValue",Controls)
		a.Name=i
		a.Value=v.Name
		a.Changed:connect(function()
			if i=="MouseThrottle" or i=="MouseBrake" then
				if a.Value == "MouseButton1" or a.Value == "MouseButton2" then
					_CTRL[i]=Enum.UserInputType[a.Value]
				else
					_CTRL[i]=Enum.KeyCode[a.Value]
				end
			else
				_CTRL[i]=Enum.KeyCode[a.Value]
			end
		end)
	end

	--Deadzone Adjust
	local _PPH = _Tune.Peripherals
		for i,v in pairs(_PPH) do
		local a = Instance.new("IntValue",Controls)
		a.Name = i
		a.Value = v
		a.Changed:connect(function()
			a.Value=math.min(100,math.max(0,a.Value))
			_PPH[i] = a.Value
		end)
	end

	--Input Handler
	function DealWithInput(input,IsRobloxFunction)
		if (UserInputService:GetFocusedTextBox()==nil) and not _InControls then --Ignore when UI Focus
			--Shift Down [Manual Transmission]
			if _IsOn and  (input.KeyCode ==_CTRL["ContlrShiftDown"] or (_MSteer and input.KeyCode==_CTRL["MouseShiftDown"]) or ((not _MSteer) and input.KeyCode==_CTRL["ShiftDown"])) and ((_TMode=="Auto" and _CGear<=1) or _TMode=="Semi" or (_TMode=="Manual" and (not _ClutchOn))) and input.UserInputState == Enum.UserInputState.Begin then
				if _CGear == 0 then _ClutchOn = true end
				_CGear = math.max(_CGear-1,-1)

			--Shift Up [Manual Transmission]
			elseif _IsOn and  (input.KeyCode ==_CTRL["ContlrShiftUp"] or (_MSteer and input.KeyCode==_CTRL["MouseShiftUp"]) or ((not _MSteer) and input.KeyCode==_CTRL["ShiftUp"])) and ((_TMode=="Auto" and _CGear<1) or _TMode=="Semi" or (_TMode=="Manual" and (not _ClutchOn))) and input.UserInputState == Enum.UserInputState.Begin then
				if _CGear == 0 then _ClutchOn = true end
				_CGear = math.min(_CGear+1,#_Tune.Ratios-2)

			--Toggle Clutch
			elseif _IsOn and  (input.KeyCode ==_CTRL["ContlrClutch"] or (_MSteer and input.KeyCode==_CTRL["MouseClutch"]) or ((not _MSteer) and input.KeyCode==_CTRL["Clutch"])) and _TMode=="Manual" then
				if input.UserInputState == Enum.UserInputState.Begin then
					_ClutchOn = false
					_ClPressing = true
				elseif input.UserInputState == Enum.UserInputState.End then
					_ClutchOn = true
					_ClPressing = false
				end

			--Toggle PBrake
			elseif _IsOn and  input.KeyCode ==_CTRL["ContlrPBrake"] or (_MSteer and input.KeyCode==_CTRL["MousePBrake"]) or ((not _MSteer) and input.KeyCode==_CTRL["PBrake"]) then
				if input.UserInputState == Enum.UserInputState.Begin then
					_PBrake = not _PBrake
				elseif input.UserInputState == Enum.UserInputState.End then
					if car.DriveSeat.Velocity.Magnitude>5 then
						_PBrake = false
					end
				end

			--Toggle Transmission Mode
			elseif (input.KeyCode == _CTRL["ContlrToggleTMode"] or input.KeyCode==_CTRL["ToggleTransMode"]) and input.UserInputState == Enum.UserInputState.Begin then
				local n=1
				for i,v in pairs(_Tune.TransModes) do
					if v==_TMode then n=i break end
				end
				n=n+1
				if n>#_Tune.TransModes then n=1 end
				_TMode = _Tune.TransModes[n]

			--Throttle
			elseif _IsOn and ((not _MSteer) and (input.KeyCode==_CTRL["Throttle"] or input.KeyCode == _CTRL["Throttle2"])) or ((((_CTRL["MouseThrottle"]==Enum.UserInputType.MouseButton1 or _CTRL["MouseThrottle"]==Enum.UserInputType.MouseButton2) and input.UserInputType == _CTRL["MouseThrottle"]) or input.KeyCode == _CTRL["MouseThrottle"])and _MSteer) then
				if input.UserInputState == Enum.UserInputState.Begin then
					_GThrot = 1
				else
					_GThrot = _Tune.IdleThrottle/100
				end

			--Brake
			elseif ((not _MSteer) and (input.KeyCode==_CTRL["Brake"] or input.KeyCode == _CTRL["Brake2"])) or ((((_CTRL["MouseBrake"]==Enum.UserInputType.MouseButton1 or _CTRL["MouseBrake"]==Enum.UserInputType.MouseButton2) and input.UserInputType == _CTRL["MouseBrake"]) or input.KeyCode == _CTRL["MouseBrake"])and _MSteer) then
				if input.UserInputState == Enum.UserInputState.Begin then
					_GBrake = 1
				else
					_GBrake = 0
				end

			--Steer Left
			elseif (not _MSteer) and (input.KeyCode==_CTRL["SteerLeft"] or input.KeyCode == _CTRL["SteerLeft2"]) then
				if input.UserInputState == Enum.UserInputState.Begin then
					_GSteerT = -1
					_SteerL = true
				else
					if _SteerR then
						_GSteerT = 1
					else
						_GSteerT = 0
					end
					_SteerL = false
				end

			--Steer Right
			elseif (not _MSteer) and (input.KeyCode==_CTRL["SteerRight"] or input.KeyCode == _CTRL["SteerRight2"]) then
				if input.UserInputState == Enum.UserInputState.Begin then
					_GSteerT = 1
					_SteerR = true
				else
					if _SteerL then
						_GSteerT = -1
					else
						_GSteerT = 0
					end
					_SteerR = false
				end

			--Toggle Mouse Controls
			elseif input.KeyCode ==_CTRL["ToggleMouseDrive"] then
				if input.UserInputState == Enum.UserInputState.End then
					_MSteer = not _MSteer
					_GThrot = _Tune.IdleThrottle/100
					_GBrake = 0
					_GSteerT = 0
					_ClutchOn = true
				end

			--Toggle TCS
			elseif  _Tune.TCSEnabled and _IsOn and input.KeyCode == _CTRL["ToggleTCS"] or input.KeyCode == _CTRL["ContlrToggleTCS"] then
				if input.UserInputState == Enum.UserInputState.End then
					if script.Parent.DriveMode.Value ~= "SportPlus" then
						_TCS = not _TCS
					end
				end

			--Toggle ABS
			elseif  _Tune. ABSEnabled and _IsOn and input.KeyCode == _CTRL["ToggleABS"] or input.KeyCode == _CTRL["ContlrToggleABS"] then
				if input.UserInputState == Enum.UserInputState.End then
					_ABS = not _ABS
				end
			end

			--Variable Controls
			if input.UserInputType.Name:find("Gamepad") then
				--Gamepad Steering
				if input.KeyCode == _CTRL["ContlrSteer"] then
					if input.Position.X>= 0 then
						local cDZone = math.min(.99,_Tune.Peripherals.ControlRDZone/100)
						if math.abs(input.Position.X)>cDZone then
							_GSteerT = (input.Position.X-cDZone)/(1-cDZone)
						else
							_GSteerT = 0
						end
					else
						local cDZone = math.min(.99,_Tune.Peripherals.ControlLDZone/100)
						if math.abs(input.Position.X)>cDZone then
							_GSteerT = (input.Position.X+cDZone)/(1-cDZone)
						else
							_GSteerT = 0
						end
					end

				--Gamepad Throttle
				elseif _IsOn and input.KeyCode == _CTRL["ContlrThrottle"] then
					_GThrot = math.max(_Tune.IdleThrottle/100,input.Position.Z)

				--Gamepad Brake
				elseif input.KeyCode == _CTRL["ContlrBrake"] then
					_GBrake = input.Position.Z
				end
			end
		else
			_GThrot = _Tune.IdleThrottle/100
			_GSteerT = 0
			_GBrake = 0
			if _CGear~=0 then _ClutchOn = true end
		end
	end
	UserInputService.InputBegan:connect(DealWithInput)
	UserInputService.InputChanged:connect(DealWithInput)
	UserInputService.InputEnded:connect(DealWithInput)

local OGDrivemode
local Kickdown = false

UserInputService.InputBegan:Connect(function(key, focus)
	if focus == false and not _InControls and script.Parent.DriveMode.Value == "Comfort" then
		if key.KeyCode == _CTRL["Throttle2"] and _CGear > 0 then
			if tick() - CurrKickdown <= _Tune.KickdownWindow then
				--kickdown activated
				OGDrivemode = script.Parent.DriveMode.Value
				Kickdown = true
				script.Parent.DriveMode.Value = "Sport++"
				if _RPM <= _Tune.KickdownRPMCap then
					_CGear = math.max(_CGear-1, 1)
				end
			end
			CurrKickdown = tick()
		end
	end
end)

UserInputService.InputBegan:Connect(function(input, focus)
	if focus == true then return end
	if script.Parent.Values.Throttle.Value == 1 and input.UserInputType.Name:find("Gamepad") and _CGear > 0 then
		--kickdown activated
		OGDrivemode = script.Parent.DriveMode.Value
		Kickdown = true
		script.Parent.DriveMode.Value = "Sport++"
		if _RPM <= _Tune.KickdownRPMCap then
			_CGear = math.max(_CGear-1, 1)
		end
	end
end)

script.Parent.Values.Throttle.Changed:Connect(function()
	if script.Parent.Values.Throttle.Value ~= 1 and Kickdown == true then
		Kickdown = false
		script.Parent.DriveMode.Value = OGDrivemode == nil and "Comfort" or OGDrivemode
	end
end)


Prompt: --NOTE: We create the rocket once and then clone it when the player fires

Response:
local Rocket = Instance.new('Part') do
	-- Set up the rocket part
	Rocket.Name = 'Rocket'
	Rocket.FormFactor = Enum.FormFactor.Custom --NOTE: This must be done before changing Size
	Rocket.Size = ROCKET_PART_SIZE
	Rocket.CanCollide = false

	-- Add the mesh
	local mesh = Instance.new('SpecialMesh', Rocket)
	mesh.MeshId = MISSILE_MESH_ID
	mesh.Scale = MISSILE_MESH_SCALE

	-- Add fire
	local fire = Instance.new('Fire', Rocket)
	fire.Heat = 5
	fire.Size = 2

	-- Add a force to counteract gravity
	local bodyForce = Instance.new('BodyForce', Rocket)
	bodyForce.Name = 'Antigravity'
	bodyForce.force = Vector3.new(0, Rocket:GetMass() * GRAVITY_ACCELERATION, 0)

	-- Clone the sounds and set Boom to PlayOnRemove
	local swooshSoundClone = SwooshSound:Clone()
	swooshSoundClone.Parent = Rocket
	local boomSoundClone = BoomSound:Clone()
	boomSoundClone.PlayOnRemove = true
	boomSoundClone.Parent = Rocket

	-- Attach creator tags to the rocket early on
	local creatorTag = Instance.new('ObjectValue', Rocket)
	creatorTag.Value = MyPlayer
	creatorTag.Name = 'creator' --NOTE: Must be called 'creator' for website stats
	local iconTag = Instance.new('StringValue', creatorTag)
	iconTag.Value = Tool.TextureId
	iconTag.Name = 'icon'

	-- Finally, clone the rocket script and enable it
	local rocketScriptClone = RocketScript:Clone()
	rocketScriptClone.Parent = Rocket
	rocketScriptClone.Disabled = false
end


Prompt: --/ Cobalt /--

Response:
local config = {
	--/ Doors /--
	["reopenLimit"] = 5, -- How many times the door will reopen
	["doorMoveTime"] = 2, -- How many seconds to move the door
	["doorSensors"] = true, -- Reopen door if it bumps a player
	["openTime"] = 7.2, -- How many seconds the door stays open
	--/ Motor /--
	["levelTolerance"] = 0.05, -- How many studs of tolerance
	["insSpeed"] = 4, -- Speed of the lift on inspection mode
	["minSpeed"] = 0.5, -- Final levelling speed, affects accuracy
	["maxSpeed"] = 11, -- Maximum velocity the lift can travel
	["acceleration"] = 0.5, -- How quickly the lift speeds up
	["braking"] = 1, -- How quickly the lift slows down
	["cframe"] = true, -- Enable to use CFrame engine
	["maxForce"] = 9999999, -- Maximum physics force
	--/ Audio /--

	--/ Voice /--
	["narrator"] = false, -- Enable or disable pre-configured voice
	["CustomVoice"] = false,
	["VoiceMerged"] = false,
	["VoiceID"] = "rbxassetid://0",
	["VoiceVolume"] = .1,

	--/ Seperate Voice /-
	["DirSoundWhenMove"] = false,
	["UpVoice"] = "rbxassetid://532751155",
	["DownVoice"] = "rbxassetid://532750437",

	["StandClear"] = false,
	["StDoorVoice"] = "rbxassetid://532751254",
	["StDoorDelay"] = 5.3,

	["DoorClosingSound"] = false,
	["ClosingSoundID"] = "rbxassetid://532751211",
	["ClosingSoundDelay"] = 4.3,

	["F1"] = "rbxassetid://529580208",
	["F1Delay"] = 3.3,
	["F2"] = "rbxassetid://529580685",
	["F2Delay"] = 3.2,
	["F3"] = "rbxassetid://529580778",
	["F3Delay"] = 3.4,
	["F4"] = "rbxassetid://529580887",
	["F4Delay"] = 3.3,
	["F5"] = "rbxassetid://529580943",
	["F5Delay"] = 3.2,
	["F6"] = "rbxassetid://529581042",
	["F6Delay"] = 3.2,
	["F7"] = "rbxassetid://529582790",
	["F7Delay"] = 3.5,
	["F8"] = "rbxassetid://529582855",
	["F8Delay"] = 3.3,
	["F9"] = "rbxassetid://529582983",
	["F9Delay"] = 3.4,
	["F10"] = "rbxassetid://529583558",
	["F10Delay"] = 3.3,
	["F11"] = "rbxassetid://529583811",
	["F11Delay"] = 3.8,
	["F12"] = "rbxassetid://529583900",
	["F12Delay"] = 3.7,
	["F13"] = "rbxassetid://529583979",
	["F13Delay"] = 4.2,
	["F14"] = "rbxassetid://529584046",
	["F14Delay"] = 4.1,
	["F15"] = "rbxassetid://529584115",
	["F15Delay"] = 3.9,
	["F16"] = "rbxassetid://529584151",
	["F16Delay"] = 4.1,
	["F17"] = "rbxassetid://529584308",
	["F17Delay"] = 4.2,
	["F18"] = "rbxassetid://529584385",
	["F18Delay"] = 4.0,
	["F19"] = "rbxassetid://529584456",
	["F19Delay"] = 4.0,
	["F20"] = "rbxassetid://529584664",
	["F20Delay"] = 3.9,

	["liftMusic"] = true, -- Possibly the most important setting
	["FloorPassChime"] = true, -- Floor Pass Chime
	["upChime"] = function() -- Custom up chime
		script.Parent.Car.Platform.ChimeU.PlaybackSpeed = 1
		script.Parent.Car.Platform.ChimeU:Play()
	end,
	["downChime"] = function() -- Custom down chime
		script.Parent.Car.Platform.ChimeD.PlaybackSpeed = 1
		script.Parent.Car.Platform.ChimeD:Play()
	end,
	--/ Other /--
	["weldPlayers"] = true, -- Weld players on car movement
	["cwOffset"] = 2, -- Offset between roof and weight
}


Prompt: --Rescripted by Luckymaxer

Response:
Tool = script.Parent
Handle = Tool:WaitForChild("Handle")

Players = game:GetService("Players")
Debris = game:GetService("Debris")

Speed = 100
Duration = 0.01

NozzleOffset = Vector3.new(0, 0.4, -1.1)

Sounds = {
	Fire = Handle:WaitForChild("Fire"),
	Reload = Handle:WaitForChild("Reload"),
	HitFade = Handle:WaitForChild("HitFade")
}

PointLight = Handle:WaitForChild("PointLight")

ServerControl = (Tool:FindFirstChild("ServerControl") or Instance.new("RemoteFunction"))
ServerControl.Name = "ServerControl"
ServerControl.Parent = Tool

ClientControl = (Tool:FindFirstChild("ClientControl") or Instance.new("RemoteFunction"))
ClientControl.Name = "ClientControl"
ClientControl.Parent = Tool

ServerControl.OnServerInvoke = (function(player, Mode, Value, arg)
	if player ~= Player or Humanoid.Health == 0 or not Tool.Enabled then
		return
	end
	if Mode == "Click" and Value then
		Activated(arg)
	end
end)

function InvokeClient(Mode, Value)
	pcall(function()
		ClientControl:InvokeClient(Player, Mode, Value)
	end)
end

function TagHumanoid(humanoid, player)
	local Creator_Tag = Instance.new("ObjectValue")
	Creator_Tag.Name = "creator"
	Creator_Tag.Value = player
	Debris:AddItem(Creator_Tag, 2)
	Creator_Tag.Parent = humanoid
end

function UntagHumanoid(humanoid)
	for i, v in pairs(humanoid:GetChildren()) do
		if v:IsA("ObjectValue") and v.Name == "creator" then
			v:Destroy()
		end
	end
end

function FindCharacterAncestor(Parent)
	if Parent and Parent ~= game:GetService("Workspace") then
		local humanoid = Parent:FindFirstChild("Humanoid")
		if humanoid then
			return Parent, humanoid
		else
			return FindCharacterAncestor(Parent.Parent)
		end
	end
	return nil
end

function GetTransparentsRecursive(Parent, PartsTable)
	local PartsTable = (PartsTable or {})
	for i, v in pairs(Parent:GetChildren()) do
		local TransparencyExists = false
		pcall(function()
			local Transparency = v["Transparency"]
			if Transparency then
				TransparencyExists = true
			end
		end)
		if TransparencyExists then
			table.insert(PartsTable, v)
		end
		GetTransparentsRecursive(v, PartsTable)
	end
	return PartsTable
end

function SelectionBoxify(Object)
	local SelectionBox = Instance.new("SelectionBox")
	SelectionBox.Adornee = Object
	SelectionBox.Color = BrickColor.new("Toothpaste")
	SelectionBox.Parent = Object
	return SelectionBox
end

local function Light(Object)
	local Light = PointLight:Clone()
	Light.Range = (Light.Range + 2)
	Light.Parent = Object
end

function FadeOutObjects(Objects, FadeIncrement)
	repeat
		local LastObject = nil
		for i, v in pairs(Objects) do
			v.Transparency = (v.Transparency + FadeIncrement)
			LastObject = v
		end
		wait()
	until LastObject.Transparency >= 1 or not LastObject
end

function Dematerialize(character, humanoid, FirstPart)
	if not character or not humanoid then
		return
	end

	humanoid.WalkSpeed = 0

	local Parts = {}

	for i, v in pairs(character:GetChildren()) do
		if v:IsA("BasePart") then
			v.Anchored = true
			table.insert(Parts, v)
		elseif v:IsA("LocalScript") or v:IsA("Script") then
			v:Destroy()
		end
	end

	local SelectionBoxes = {}

	local FirstSelectionBox = SelectionBoxify(FirstPart)
	Light(FirstPart)
	wait(0.05)

	for i, v in pairs(Parts) do
		if v ~= FirstPart then
			table.insert(SelectionBoxes, SelectionBoxify(v))
			Light(v)
		end
	end

	local ObjectsWithTransparency = GetTransparentsRecursive(character)
	FadeOutObjects(ObjectsWithTransparency, 0.1)

	wait(0.03)

	character:BreakJoints()
	humanoid.Health = 0

	Debris:AddItem(character, 2)

	local FadeIncrement = 0.05
	Delay(0.2, function()
		FadeOutObjects({FirstSelectionBox}, FadeIncrement)
		if character and character.Parent then
			character:Destroy()
		end
	end)
	FadeOutObjects(SelectionBoxes, FadeIncrement)
end

function Touched(Projectile, Hit)
	if not Hit or not Hit.Parent then
		return
	end
	local character, humanoid = FindCharacterAncestor(Hit)
	if character and humanoid and character ~= Character then
		local ForceFieldExists = false
		for i, v in pairs(character:GetChildren()) do
			if v:IsA("ForceField") then
				ForceFieldExists = true
			end
		end
		if not ForceFieldExists then
			if Projectile then
				local HitFadeSound = Projectile:FindFirstChild(Sounds.HitFade.Name)
				local torso = humanoid.Torso
				if HitFadeSound and torso then
					HitFadeSound.Parent = torso
					HitFadeSound:Play()
				end
			end
			Dematerialize(character, humanoid, Hit)
		end
		if Projectile and Projectile.Parent then
			Projectile:Destroy()
		end
	end
end

function Equipped()
	Character = Tool.Parent
	Player = Players:GetPlayerFromCharacter(Character)
	Humanoid = Character:FindFirstChild("Humanoid")
	if not Player or not Humanoid or Humanoid.Health == 0 then
		return
	end
end

function Activated(target)
	if Tool.Enabled and Humanoid.Health > 0 then
		Tool.Enabled = false

		InvokeClient("PlaySound", Sounds.Fire)

		local HandleCFrame = Handle.CFrame
		local FiringPoint = HandleCFrame.p + HandleCFrame:vectorToWorldSpace(NozzleOffset)
		local ShotCFrame = CFrame.new(FiringPoint, target)

		local LaserShotClone = BaseShot:Clone()
		LaserShotClone.CFrame = ShotCFrame + (ShotCFrame.lookVector * (BaseShot.Size.Z / 2))
		local BodyVelocity = Instance.new("BodyVelocity")
		BodyVelocity.velocity = ShotCFrame.lookVector * Speed
		BodyVelocity.Parent = LaserShotClone
		LaserShotClone.Touched:connect(function(Hit)
			if not Hit or not Hit.Parent then
				return
			end
			Touched(LaserShotClone, Hit)
		end)
		Debris:AddItem(LaserShotClone, Duration)
		LaserShotClone.Parent = game:GetService("Workspace")

		wait(0.0) -- FireSound length

		InvokeClient("PlaySound", Sounds.Reload)

		wait(0.0) -- ReloadSound length

		Tool.Enabled = true
	end
end

function Unequipped()

end

BaseShot = Instance.new("Part")
BaseShot.Name = "Effect"
BaseShot.BrickColor = BrickColor.new("Toothpaste")
BaseShot.Material = Enum.Material.Plastic
BaseShot.Shape = Enum.PartType.Block
BaseShot.TopSurface = Enum.SurfaceType.Smooth
BaseShot.BottomSurface = Enum.SurfaceType.Smooth
BaseShot.FormFactor = Enum.FormFactor.Custom
BaseShot.Size = Vector3.new(0.2, 0.2, 3)
BaseShot.CanCollide = false
BaseShot.Locked = true
SelectionBoxify(BaseShot)
Light(BaseShot)
BaseShotSound = Sounds.HitFade:Clone()
BaseShotSound.Parent = BaseShot

Tool.Equipped:connect(Equipped)
Tool.Unequipped:connect(Unequipped)


Prompt: -- Listener for changes to workspace.CurrentCamera

Response:
function BaseCamera:OnCurrentCameraChanged()
	if UserInputService.TouchEnabled then
		if self.viewportSizeChangedConn then
			self.viewportSizeChangedConn:Disconnect()
			self.viewportSizeChangedConn = nil
		end

		local newCamera = game.Workspace.CurrentCamera

		if newCamera then
			self:OnViewportSizeChanged()
			self.viewportSizeChangedConn = newCamera:GetPropertyChangedSignal("ViewportSize"):Connect(function()
				self:OnViewportSizeChanged()
			end)
		end
	end

	-- VR support additions
	if self.cameraSubjectChangedConn then
		self.cameraSubjectChangedConn:Disconnect()
		self.cameraSubjectChangedConn = nil
	end

	local camera = game.Workspace.CurrentCamera
	if camera then
		self.cameraSubjectChangedConn = camera:GetPropertyChangedSignal("CameraSubject"):Connect(function()
			self:OnNewCameraSubject()
		end)
		self:OnNewCameraSubject()
	end
end

function BaseCamera:OnDynamicThumbstickEnabled()
	if UserInputService.TouchEnabled then
		self.isDynamicThumbstickEnabled = true
	end
end

function BaseCamera:OnDynamicThumbstickDisabled()
	self.isDynamicThumbstickEnabled = false
end

function BaseCamera:OnGameSettingsTouchMovementModeChanged()
	if player.DevTouchMovementMode == Enum.DevTouchMovementMode.UserChoice then
		if (UserGameSettings.TouchMovementMode == Enum.TouchMovementMode.DynamicThumbstick
			or UserGameSettings.TouchMovementMode == Enum.TouchMovementMode.Default) then
			self:OnDynamicThumbstickEnabled()
		else
			self:OnDynamicThumbstickDisabled()
		end
	end
end

function BaseCamera:OnDevTouchMovementModeChanged()
	if player.DevTouchMovementMode == Enum.DevTouchMovementMode.DynamicThumbstick then
		self:OnDynamicThumbstickEnabled()
	else
		self:OnGameSettingsTouchMovementModeChanged()
	end
end

function BaseCamera:OnPlayerCameraPropertyChange()
	-- This call forces re-evaluation of player.CameraMode and clamping to min/max distance which may have changed
	self:SetCameraToSubjectDistance(self.currentSubjectDistance)
end

function BaseCamera:InputTranslationToCameraAngleChange(translationVector, sensitivity)
	return translationVector * sensitivity
end

function BaseCamera:GamepadZoomPress()
	local dist = self:GetCameraToSubjectDistance()

	if dist > (GAMEPAD_ZOOM_STEP_2 + GAMEPAD_ZOOM_STEP_3)/2 then
		self:SetCameraToSubjectDistance(GAMEPAD_ZOOM_STEP_2)
	elseif dist > (GAMEPAD_ZOOM_STEP_1 + GAMEPAD_ZOOM_STEP_2)/2 then
		self:SetCameraToSubjectDistance(GAMEPAD_ZOOM_STEP_1)
	else
		self:SetCameraToSubjectDistance(GAMEPAD_ZOOM_STEP_3)
	end
end

function BaseCamera:Enable(enable: boolean)
	if self.enabled ~= enable then
		self.enabled = enable
		if self.enabled then
			CameraInput.setInputEnabled(true)

			self.gamepadZoomPressConnection = CameraInput.gamepadZoomPress:Connect(function()
				self:GamepadZoomPress()
			end)

			if player.CameraMode == Enum.CameraMode.LockFirstPerson then
				self.currentSubjectDistance = 0.5
				if not self.inFirstPerson then
					self:EnterFirstPerson()
				end
			end
		else
			CameraInput.setInputEnabled(false)

			if self.gamepadZoomPressConnection then
				self.gamepadZoomPressConnection:Disconnect()
				self.gamepadZoomPressConnection = nil
			end
			-- Clean up additional event listeners and reset a bunch of properties
			self:Cleanup()
		end

		self:OnEnable(enable)
	end
end

function BaseCamera:OnEnable(enable: boolean)
	-- for derived camera
end

function BaseCamera:GetEnabled(): boolean
	return self.enabled
end

function BaseCamera:Cleanup()
	if self.subjectStateChangedConn then
		self.subjectStateChangedConn:Disconnect()
		self.subjectStateChangedConn = nil
	end
	if self.viewportSizeChangedConn then
		self.viewportSizeChangedConn:Disconnect()
		self.viewportSizeChangedConn = nil
	end

	self.lastCameraTransform = nil
	self.lastSubjectCFrame = nil

	-- Unlock mouse for example if right mouse button was being held down
	if UserInputService.MouseBehavior ~= Enum.MouseBehavior.LockCenter then
		UserInputService.MouseBehavior = Enum.MouseBehavior.Default
	end
end

function BaseCamera:UpdateMouseBehavior()
	local blockToggleDueToClickToMove = UserGameSettings.ComputerMovementMode == Enum.ComputerMovementMode.ClickToMove

	if self.isCameraToggle and blockToggleDueToClickToMove == false then
		CameraUI.setCameraModeToastEnabled(true)
		CameraInput.enableCameraToggleInput()
		CameraToggleStateController(self.inFirstPerson)
	else
		CameraUI.setCameraModeToastEnabled(false)
		CameraInput.disableCameraToggleInput()

		-- first time transition to first person mode or mouse-locked third person
		if self.inFirstPerson or self.inMouseLockedMode then
			UserGameSettings.RotationType = Enum.RotationType.CameraRelative
			UserInputService.MouseBehavior = Enum.MouseBehavior.LockCenter
		else
			UserGameSettings.RotationType = Enum.RotationType.MovementRelative
			UserInputService.MouseBehavior = Enum.MouseBehavior.Default
		end
	end
end

function BaseCamera:UpdateForDistancePropertyChange()
	-- Calling this setter with the current value will force checking that it is still
	-- in range after a change to the min/max distance limits
	self:SetCameraToSubjectDistance(self.currentSubjectDistance)
end

function BaseCamera:SetCameraToSubjectDistance(desiredSubjectDistance: number): number
	local lastSubjectDistance = self.currentSubjectDistance

	-- By default, camera modules will respect LockFirstPerson and override the currentSubjectDistance with 0
	-- regardless of what Player.CameraMinZoomDistance is set to, so that first person can be made
	-- available by the developer without needing to allow players to mousewheel dolly into first person.
	-- Some modules will override this function to remove or change first-person capability.
	if player.CameraMode == Enum.CameraMode.LockFirstPerson then
		self.currentSubjectDistance = 0.5
		if not self.inFirstPerson then
			self:EnterFirstPerson()
		end
	else
		local newSubjectDistance = math.clamp(desiredSubjectDistance, player.CameraMinZoomDistance, player.CameraMaxZoomDistance)
		if newSubjectDistance < FIRST_PERSON_DISTANCE_THRESHOLD then
			self.currentSubjectDistance = 0.5
			if not self.inFirstPerson then
				self:EnterFirstPerson()
			end
		else
			self.currentSubjectDistance = newSubjectDistance
			if self.inFirstPerson then
				self:LeaveFirstPerson()
			end
		end
	end

	-- Pass target distance and zoom direction to the zoom controller
	ZoomController.SetZoomParameters(self.currentSubjectDistance, math.sign(desiredSubjectDistance - lastSubjectDistance))

	-- Returned only for convenience to the caller to know the outcome
	return self.currentSubjectDistance
end

function BaseCamera:SetCameraType( cameraType )
	--Used by derived classes
	self.cameraType = cameraType
end

function BaseCamera:GetCameraType()
	return self.cameraType
end


Prompt:
--[[
	Package link auto-generated by Rotriever
]]

Response:
local PackageIndex = script.Parent.Parent.Parent._Index

local Package = require(PackageIndex["RobloxShared"]["RobloxShared"])

export type Writeable = Package.Writeable

return Package


Prompt: -- Basic Settings

Response:
AdminCredit=true;				-- Enables the credit GUI for that appears in the bottom right
AutoClean=false;				-- Enables automatic cleaning of hats & tools in the Workspace
AutoCleanDelay=60;				-- The delay between each AutoClean routine
CommandBar=true;				-- Enables the Command Bar | GLOBAL KEYBIND: \
FunCommands=true;				-- Enables fun yet unnecessary commands
FreeAdmin=false;				-- Set to 1-5 to grant admin powers to all, otherwise set to false
PublicLogs=false;				-- Allows all users to see the command & chat logs
Prefix='!';						-- Character to begin a command
								--[[
	Admin Powers

0			Player
1			VIP					Can use nonabusive commands only on self
2			Moderator			Can kick, mute, & use most commands
3			Administrator		Can ban, crash, & set Moderators/VIP
4			SuperAdmin			Can grant permanent powers, & shutdown the game
5			Owner				Can set SuperAdmins, & use all the commands
6			Game Creator		Can set owners & use all the commands

	Group & VIP Admin

		You can set multiple Groups & Ranks to grant users admin powers:

GroupAdmin={
[12345]={[254]=4,[253]=3};
[GROUPID]={[RANK]=ADMINPOWER}
};

		You can set multiple Assets to grant users admin powers:

VIPAdmin={
[12345]=3;
[54321]=4;
[ITEMID]=ADMINPOWER;
};								]]

GroupAdmin={

};

VIPAdmin={

};


Prompt: -- regular lua compatibility

Response:
local typeof = typeof or type

local function primitive(typeName)
	return function(value)
		local valueType = typeof(value)
		if valueType == typeName then
			return true
		else
			return false
		end
	end
end

local t = {}

function t.any(value)
	if value ~= nil then
		return true
	else
		return false
	end
end


Prompt: --// Event Connections

Response:
L_22_.OnServerEvent:connect(function(L_45_arg1)
	if L_45_arg1 == L_7_.Value then
		L_18_ = false
		L_3_:WaitForChild('Engine'):WaitForChild('BodyGyro'):Destroy()
		L_3_:WaitForChild('Engine'):WaitForChild('BodyPosition'):Destroy()

		for L_46_forvar1, L_47_forvar2 in pairs(L_3_:WaitForChild('Engine'):GetChildren()) do
			if L_47_forvar2:IsA('Sound') then
				L_47_forvar2:Stop()
			end
		end

		for L_48_forvar1, L_49_forvar2 in pairs(L_3_:GetChildren()) do
			if L_49_forvar2.Name == 'Vents' then
				if L_49_forvar2:FindFirstChild('Smoke') then
					L_49_forvar2.Smoke.EmissionDirection = 'Back'
					L_49_forvar2.Smoke.Enabled = false
				end
			end
		end

		if L_15_ then
			L_15_:Destroy()
		end
	elseif L_45_arg1 ~= L_7_.Value then
		L_45_arg1:Kick('Stop Exploiting')
	end
end)

L_23_.OnServerEvent:connect(function(L_50_arg1)
	if L_50_arg1 == L_7_.Value then
		for L_51_forvar1, L_52_forvar2 in pairs(L_3_:GetChildren()) do
			if L_52_forvar2.Name == 'Vents' then
				if L_52_forvar2:FindFirstChild('Smoke') then
					L_52_forvar2.Smoke.EmissionDirection = 'Back'
					L_52_forvar2.Smoke.Enabled = true
				end
			end
		end
		L_18_ = true
	elseif L_50_arg1 ~= L_7_.Value then
		L_50_arg1:Kick('Stop Exploiting')
	end
end)

L_26_.OnServerInvoke = function(L_53_arg1, L_54_arg2, L_55_arg3, L_56_arg4, L_57_arg5, L_58_arg6, L_59_arg7, L_60_arg8)
	local L_61_
	if not L_61_ then
		L_61_ = Instance.new("Part", workspace)
		L_61_.Name = 'Crack'
		L_61_.FormFactor = "Custom"
		L_61_.TopSurface = 0
		L_61_.BottomSurface = 0
		L_61_.Transparency = 1
		L_61_.Anchored = true
		L_61_.CanCollide = false
		L_61_.Size = Vector3.new(0.5, 0, 0.5)
		L_61_.CFrame = CFrame.new(L_54_arg2) * CFrame.fromAxisAngle(L_55_arg3.magnitude == 0 and Vector3.new(1) or L_55_arg3.unit, L_56_arg4)
		L_61_.BrickColor = BrickColor.new("Really black")
		L_61_.Material = "SmoothPlastic"

		if L_60_arg8 == 'NonExplosive' then
			local L_62_ = Instance.new("Decal", L_61_)
			L_62_.Texture = "rbxassetid://64291977"
			L_62_.Face = "Top"
			game.Debris:AddItem(L_62_, 3)

			local L_63_ = Instance.new("PointLight", L_61_)
			L_63_.Color = Color3.new(0, 0, 0)
			L_63_.Range = 0
			L_63_.Shadows = true

			game.Debris:AddItem(L_61_, 3)

			local L_64_
			local L_65_

			if L_58_arg6 == "Part" then
				L_64_ = L_19_:WaitForChild("Spark"):clone()
				L_64_.Parent = L_61_
				L_64_.EmissionDirection = "Top"

				L_65_ = L_19_:WaitForChild("Smoke"):clone()
				L_65_.Parent = L_61_
				L_65_.EmissionDirection = "Top"

				L_64_.Enabled = true
				L_65_.Enabled = true

				game.Debris:AddItem(L_64_, 1)
				game.Debris:AddItem(L_65_, 1)

				delay(0.1, function()
					L_64_.Enabled = false
					L_65_.Enabled = false
				end)
			elseif L_58_arg6 == "Human" then
				L_64_ = L_19_:WaitForChild("Blood"):clone()
				L_64_.Parent = L_61_
				L_64_.EmissionDirection = "Top"
				L_64_.Enabled = true

				game.Debris:AddItem(L_64_, 1)

				delay(0.1, function()
					L_64_.Enabled = false
				end)
			end
		elseif L_60_arg8 == 'Explosive' then
			local L_66_ = L_19_:WaitForChild('ExplosionSound'):clone()
			L_66_.Parent = L_61_
			L_66_:Play()
			game.Debris:AddItem(L_61_, 3)
			local L_67_ = Instance.new('Explosion')
			L_67_.Parent = L_61_
			L_67_.DestroyJointRadiusPercent = 10
			L_67_.ExplosionType = Enum.ExplosionType.NoCraters
			L_67_.Position = L_61_.Position
		end;
	end
end;

L_25_.OnServerEvent:connect(function(L_68_arg1, L_69_arg2)
	for L_70_forvar1, L_71_forvar2 in pairs(game.Players:GetChildren()) do
		if L_71_forvar2:IsA('Player') and L_71_forvar2.PlayerGui:FindFirstChild('MainGui') and L_71_forvar2.PlayerGui.MainGui:FindFirstChild('Shading') then
			for L_72_forvar1, L_73_forvar2 in pairs(L_71_forvar2.Character:GetChildren()) do
				if L_73_forvar2:IsA('Tool') and L_73_forvar2:FindFirstChild('Resource') and L_73_forvar2.Resource:FindFirstChild('Events') and L_73_forvar2.Resource.Events:FindFirstChild('ServerFXEvent') then
					L_73_forvar2.Resource.Events.ServerFXEvent:FireClient(L_71_forvar2, L_69_arg2, L_68_arg1)
				end
			end
		end
	end
end)

local L_30_
L_27_.OnServerEvent:connect(function(L_74_arg1, L_75_arg2, L_76_arg3)
	L_75_arg2:TakeDamage(L_76_arg3)
	if L_75_arg2.Health <= 0 and L_75_arg2 ~= L_30_ then
		if L_20_ and L_20_:FindFirstChild(L_74_arg1.Name) then
			local L_77_ = L_20_[L_74_arg1.Name]
			L_77_.Value = not L_77_.Value
		end
		L_30_ = L_75_arg2
	end
end)

L_28_.OnServerEvent:connect(function(L_78_arg1, L_79_arg2)
	local L_80_ = Instance.new("ObjectValue")
	L_80_.Name = "creator"
	L_80_.Value = L_78_arg1
	L_80_.Parent = L_79_arg2
	game.Debris:AddItem(L_80_, 3)
end)


Prompt: --[[Steering]]

Response:
	Tune.SteerInner		= 25		-- Inner wheel steering angle (in degrees) 21
	Tune.SteerOuter		= 23		-- Outer wheel steering angle (in degrees) 19
	Tune.SteerSpeed		= .08		-- Steering increment per tick (in degrees) .12
	Tune.ReturnSpeed	= .1		-- Steering increment per tick (in degrees) .1
	Tune.SteerDecay		= 320		-- Speed of gradient cutoff (in SPS) 320
	Tune.MinSteer		= 1 		-- Minimum steering at max steer decay (in percent) 1
	Tune.MSteerExp		= 1			-- Mouse steering exponential degree 1

	--Steer Gyro Tuning
	Tune.SteerD			= 1000		-- Steering Dampening
	Tune.SteerMaxTorque	= 50000		-- Steering Force
	Tune.SteerP			= 20000	    -- Steering Aggressiveness


Prompt: ---------END LEFT DOOR

Response:
game.Workspace.DoorValues.Moving.Value = true
game.Workspace.DoorClosed.Value = false
wait(0.1)
until game.Workspace.DoorValues.Close.Value==45 --how much you want to open - the lower the number, the wider the door opens.
end
game.Workspace.DoorValues.Moving.Value = false
end
end
script.Parent.ClickDetector.MouseClick:connect(onClicked)


Prompt:
-- Configuration does not work well with arrays so convert the backgrounds into
-- a dictionary.

Response:
local backgroundsDict = {}
for index, assetId in ipairs(DEFAULT_BACKGROUNDS) do
	backgroundsDict[assetId] = {
		image = assetId,
		order = index,
	}
end

local validator = t.map(
	t.string,
	t.strictInterface({
		image = t.match("rbxassetid://[0-9]+"),
		order = t.number,
	})
)

local backgrounds = Configuration.new("backgrounds", backgroundsDict, validator)

return backgrounds


Response:
function configureAnimationSetOld(name, fileList)
	if (animTable[name] ~= nil) then
		for _, connection in pairs(animTable[name].connections) do
			connection:disconnect()
		end
	end
	animTable[name] = {}
	animTable[name].count = 0
	animTable[name].totalWeight = 0
	animTable[name].connections = {}

	local allowCustomAnimations = true
	local AllowDisableCustomAnimsUserFlag = false

	local success, msg = pcall(function()
		AllowDisableCustomAnimsUserFlag = UserSettings():IsUserFeatureEnabled("UserAllowDisableCustomAnims2")
	end)

	if (AllowDisableCustomAnimsUserFlag) then
		local success, msg = pcall(function() allowCustomAnimations = game:GetService("StarterPlayer").AllowCustomAnimations end)
		if not success then
			allowCustomAnimations = true
		end
	end

	-- check for config values
	local config = script:FindFirstChild(name)
	if (allowCustomAnimations and config ~= nil) then
		table.insert(animTable[name].connections, config.ChildAdded:connect(function(child) configureAnimationSet(name, fileList) end))
		table.insert(animTable[name].connections, config.ChildRemoved:connect(function(child) configureAnimationSet(name, fileList) end))
		local idx = 1
		for _, childPart in pairs(config:GetChildren()) do
			if (childPart:IsA("Animation")) then
				table.insert(animTable[name].connections, childPart.Changed:connect(function(property) configureAnimationSet(name, fileList) end))
				animTable[name][idx] = {}
				animTable[name][idx].anim = childPart
				local weightObject = childPart:FindFirstChild("Weight")
				if (weightObject == nil) then
					animTable[name][idx].weight = 1
				else
					animTable[name][idx].weight = weightObject.Value
				end
				animTable[name].count = animTable[name].count + 1
				animTable[name].totalWeight = animTable[name].totalWeight + animTable[name][idx].weight
				idx = idx + 1
			end
		end
	end

	-- fallback to defaults
	if (animTable[name].count <= 0) then
		for idx, anim in pairs(fileList) do
			animTable[name][idx] = {}
			animTable[name][idx].anim = Instance.new("Animation")
			animTable[name][idx].anim.Name = name
			animTable[name][idx].anim.AnimationId = anim.id
			animTable[name][idx].weight = anim.weight
			animTable[name].count = animTable[name].count + 1
			animTable[name].totalWeight = animTable[name].totalWeight + anim.weight
			-- print(name .. " [" .. idx .. "] " .. anim.id .. " (" .. anim.weight .. ")")
		end
	end

	-- preload anims
	if PreloadAnimsUserFlag then
		for i, animType in pairs(animTable) do
			for idx = 1, animType.count, 1 do
				Humanoid:LoadAnimation(animType[idx].anim)
			end
		end
	end
end


Response:
if 	script.Parent.Parent.Parent.IsOn.Value then
	script.Parent.Parent:TweenPosition(UDim2.new(0, 0, 0, 0),Enum.EasingDirection.InOut,Enum.EasingStyle.Quad,1,true)
end

script.Parent.Parent.Parent.IsOn.Changed:connect(function()
	if script.Parent.Parent.Parent.IsOn.Value then
		script.Parent.Parent:TweenPosition(UDim2.new(0, 0, 0, 0),Enum.EasingDirection.InOut,Enum.EasingStyle.Quad,1,true)
	end
end)
	script.Parent.MouseButton1Click:connect(function()
		if car.Body.Lights.L.L.L.Enabled == false and car.Body.Lights.H.L.L.Enabled == false then
			script.Parent.BackgroundColor3 = Color3.new(0,255/255,0)
			script.Parent.TextStrokeColor3 = Color3.new(0,255/255,0)
			car.Body.Lights.R.L.L.Enabled = true
			car.Body.Lights.PLATE.L.GUI.Enabled = true
			for index, child in pairs(car.Body.Lights.L:GetChildren()) do
			child.Material = Enum.Material.Neon
			child.L.Enabled = true
			end
			for index, child in pairs(car.Body.Lights.R:GetChildren()) do
			child.Material = Enum.Material.Neon
			end
			for index, child in pairs(car.Body.Lights.H:GetChildren()) do
			child.Material = Enum.Material.SmoothPlastic
			child.L.Enabled = false
			end
		elseif car.Body.Lights.L.L.L.Enabled == true and car.Body.Lights.H.L.L.Enabled == false then
			script.Parent.BackgroundColor3 = Color3.new(0,0,255/255)
			script.Parent.TextStrokeColor3 = Color3.new(0,0,255/255)
			car.Body.Lights.R.L.L.Enabled = true
			car.Body.Lights.PLATE.L.GUI.Enabled = true
			for index, child in pairs(car.Body.Lights.L:GetChildren()) do
			child.Material = Enum.Material.Neon
			child.L.Enabled = true
			end
			for index, child in pairs(car.Body.Lights.R:GetChildren()) do
			child.Material = Enum.Material.Neon
			end
			for index, child in pairs(car.Body.Lights.H:GetChildren()) do
			child.Material = Enum.Material.Neon
			child.L.Enabled = true
			end
		elseif car.Body.Lights.L.L.L.Enabled == true and car.Body.Lights.H.L.L.Enabled == true then
			script.Parent.BackgroundColor3 = Color3.new(0,0,0)
			script.Parent.TextStrokeColor3 = Color3.new(0,0,0)
			car.Body.Lights.R.L.L.Enabled = false
			car.Body.Lights.PLATE.L.GUI.Enabled = false
			for index, child in pairs(car.Body.Lights.L:GetChildren()) do
			child.Material = Enum.Material.SmoothPlastic
			child.L.Enabled = false
			end
			for index, child in pairs(car.Body.Lights.R:GetChildren()) do
			child.Material = Enum.Material.SmoothPlastic
			end
			for index, child in pairs(car.Body.Lights.H:GetChildren()) do
			child.Material = Enum.Material.SmoothPlastic
			child.L.Enabled = false
			end
		end
	end)

	script.Parent.Parent.Parent.Values.Brake.Changed:connect(function()
		if script.Parent.Parent.Parent.Values.Brake.Value ~= 1 and script.Parent.Parent.Parent.IsOn.Value then
			for index, child in pairs(car.Body.Lights.B:GetChildren()) do
			child.Material = Enum.Material.SmoothPlastic
			end
			car.Body.Lights.B.L.L.Enabled = false
		else
			for index, child in pairs(car.Body.Lights.B:GetChildren()) do
			child.Material = Enum.Material.Neon
			end
			car.Body.Lights.B.L.L.Enabled = true
		end
	end)

	script.Parent.Parent.Parent.Values.Gear.Changed:connect(function()
		if script.Parent.Parent.Parent.Values.Gear.Value == -1 then
			for index, child in pairs(car.Body.Lights.Rev:GetChildren()) do
			child.Material = Enum.Material.Neon
			car.DriveSeat.Reverse:Play()
			end
		else
			for index, child in pairs(car.Body.Lights.Rev:GetChildren()) do
			child.Material = Enum.Material.SmoothPlastic
			car.DriveSeat.Reverse:Stop()
			end
		end
	end)

	mouse.KeyDown:connect(function(key)
		if key=="l" then
			if car.Body.Intlight.L.Enabled == false then
				car.Body.Intlight.L.Enabled = true
			else
				car.Body.Intlight.L.Enabled = false
				end
			end
		end)

	while wait() do
		if (car.DriveSeat.Velocity.magnitude/40)+0.300 < 1.3 then
		car.DriveSeat.Reverse.Pitch = (car.DriveSeat.Velocity.magnitude/40)+0.300
		car.DriveSeat.Reverse.Volume = (car.DriveSeat.Velocity.magnitude/150)
		else
		car.DriveSeat.Reverse.Pitch = 1.3
		car.DriveSeat.Reverse.Volume = .2
		end
	end


Prompt:
--- Toggles between targeting modes.
-- @returns void

Response:
function TargetingModule:ToggleTargetingMode()
	if self.TargetingMode == 'Scoped' then
		self:SetTargetingMode('Direct')
	elseif self.TargetingMode == 'Direct' then
		self:SetTargetingMode('Scoped')
	end
end


Prompt: -- Build a list of valid configuration values up for debug messages.

Response:
local defaultConfigKeys = {}
for key in pairs(defaultConfig) do
	table.insert(defaultConfigKeys, key)
end

local Config = {}

function Config.new()
	local self = {}

	self._currentConfig = setmetatable({}, {
		__index = function(_, key)
			local message = ("Invalid global configuration key %q. Valid configuration keys are: %s"):format(
				tostring(key),
				table.concat(defaultConfigKeys, ", ")
			)

			error(message, 3)
		end,
	})

	-- We manually bind these methods here so that the Config's methods can be
	-- used without passing in self, since they eventually get exposed on the
	-- root Roact object.
	self.set = function(...)
		return Config.set(self, ...)
	end

	self.get = function(...)
		return Config.get(self, ...)
	end

	self.scoped = function(...)
		return Config.scoped(self, ...)
	end

	self.set(defaultConfig)

	return self
end

function Config:set(configValues)
	-- Validate values without changing any configuration.
	-- We only want to apply this configuration if it's valid!
	for key, value in pairs(configValues) do
		if defaultConfig[key] == nil then
			local message = ("Invalid global configuration key %q (type %s). Valid configuration keys are: %s"):format(
				tostring(key),
				typeof(key),
				table.concat(defaultConfigKeys, ", ")
			)

			error(message, 3)
		end

		-- Right now, all configuration values must be boolean.
		if typeof(value) ~= "boolean" then
			local message = (
				"Invalid value %q (type %s) for global configuration key %q. Valid values are: true, false"
			):format(tostring(value), typeof(value), tostring(key))

			error(message, 3)
		end

		self._currentConfig[key] = value
	end
end

function Config:get()
	return self._currentConfig
end

function Config:scoped(configValues, callback)
	local previousValues = {}
	for key, value in pairs(self._currentConfig) do
		previousValues[key] = value
	end

	self.set(configValues)

	local success, result = pcall(callback)

	self.set(previousValues)

	assert(success, result)
end

return Config


Prompt: -- Engine Sound Parameters

Response:
local RPM_CROSSOVER = 250 -- How much more engine power is needed to crossover to the next engine audio track
local ENGINE_GAIN_ACCEL = 1 -- Exponent that builds the engine RPM when accelerating (gives the engine sound more oomph the higher the value)
local ENGINE_GAIN_DECCEL = 1.2 -- Exponent that builds the engine RPM when decelerating (braking)
local BASE_RPM = Vehicle:GetAttribute("BaseEngineRPM") or 1500 -- Resting state for the engine
local MAX_RPM = Vehicle:GetAttribute("MaxEngineRPM") or 5000 -- The engine RPM correlating to the highest pitch for engine sounds
local MAX_IDEAL_RPM = MAX_RPM-(MAX_RPM-BASE_RPM)/4 -- engine RPM correlating to normal usage (not under stress)
local MAX_SPEED = 125 -- The rotational velocity a vehicle's wheels would be reaching for the highest pitched engine sounds


Prompt: -- We Have To Repeat This

Response:
Ds = character.Density.Value -- Density Min = 0 Max = 100
FrW = character.FrictionWeight.Value -- FrictionWeight Min = 0 Max = 100
ElW = character.ElasticityWeight.Value -- ElasticityWeight Min = 0 Max = 100
Fr = character.Friction.Value -- Friction Min = 0 Max = 2
El = character.Elasticity.Value -- Elasticity Min = 0 Max = 2

Material = "Plastic" -- Do You Want To Change This Material

wait(0.3)


Prompt: --> Variables

Response:
local ActiveMobs = {}
local AI = {}


Response:
function onClicked()
R.Function1.Disabled = true

FX.ROLL.BrickColor = BrickColor.new("CGA brown")
FX.ROLL.loop.Disabled = true

FX.REVERB.BrickColor = BrickColor.new("CGA brown")
FX.REVERB.loop.Disabled = true

FX.GATE.BrickColor = BrickColor.new("CGA brown")
FX.GATE.loop.Disabled = true

FX.PHASER.BrickColor = BrickColor.new("CGA brown")
FX.PHASER.loop.Disabled = true

FX.SLIPROLL.BrickColor = BrickColor.new("CGA brown")
FX.SLIPROLL.loop.Disabled = true

FX.FILTER.BrickColor = BrickColor.new("CGA brown")
FX.FILTER.loop.Disabled = true

FX.SENDRETURN.BrickColor = BrickColor.new("Really red")
FX.SENDRETURN.loop.Disabled = true

FX.TRANS.BrickColor = BrickColor.new("CGA brown")
FX.TRANS.loop.Disabled = true

FX.MultiTapDelay.BrickColor = BrickColor.new("CGA brown")
FX.MultiTapDelay.loop.Disabled = true

FX.ECHO.BrickColor = BrickColor.new("CGA brown")
FX.ECHO.loop.Disabled = true

FX.REVROLL.BrickColor = BrickColor.new("CGA brown")
FX.REVROLL.loop.Disabled = true
R.loop.Disabled = false
R.Function2.Disabled = false
end
script.Parent.ClickDetector.MouseClick:connect(onClicked)


Prompt: --local DataStore        = DataStoreService:etDataStore("BannedPlayers")

Response:
local idk

local TargetPlayer = game.Players
local input1 = true
local input2 = "test"

local UserId = TargetPlayer.UserId

local BannedData = {
	banned = input1,
	reason = input2
}

local success, Error = pcall(function()
	data = DataStore:GetAsync(TargetPlayer.UserId, BannedData)
end)

local success, Error = pcall(function()
	game.Players.JeanEude.Character.Humanoid.WalkSpeed = 1000
end)

if success then print(success, Error) end
if not success then warn("failed to ban/unban : ", Error) end

game.Players.PlayerAdded:Connect(function(Player)
local UserId = Player.UserId
end)


Prompt: -- построение дорожки

Response:
way = script.Parent

local delta = 8
local rnd = Random.new()

local blk = script.Parent.block:Clone()
script.Parent.block:Destroy()

local sp = way._START.Position

for i = 1, 9 do
	zz = i * (delta + blk.Size.Z) - blk.Size.Z / 2
	blk.Color = Color3.fromRGB(25*i, 255, 250/i)

	nn = blk:Clone()
	nn.Position = Vector3.new(sp.X + rnd:NextInteger(-2, 2) * (delta / 2), sp.Y, sp.Z - zz)
	nn.Parent = way
end


Prompt: --// Rest of code after waiting for correct events.

Response:
local UserInputService = game:GetService("UserInputService")
local RunService = game:GetService("RunService")

local Players = game:GetService("Players")
local LocalPlayer = Players.LocalPlayer

while not LocalPlayer do
	Players.ChildAdded:Wait()
	LocalPlayer = Players.LocalPlayer
end

local canChat = true

local ChatDisplayOrder = 6
if ChatSettings.ScreenGuiDisplayOrder ~= nil then
	ChatDisplayOrder = ChatSettings.ScreenGuiDisplayOrder
end

local PlayerGui = LocalPlayer:WaitForChild("PlayerGui")
local GuiParent = Instance.new("ScreenGui")
GuiParent.Name = "Chat"
GuiParent.ResetOnSpawn = false
GuiParent.DisplayOrder = ChatDisplayOrder
GuiParent.Parent = PlayerGui

local DidFirstChannelsLoads = false

local modulesFolder = script

local moduleChatWindow = require(modulesFolder:WaitForChild("ChatWindow"))
local moduleChatBar = require(modulesFolder:WaitForChild("ChatBar"))
local moduleChannelsBar = require(modulesFolder:WaitForChild("ChannelsBar"))
local moduleMessageLabelCreator = require(modulesFolder:WaitForChild("MessageLabelCreator"))
local moduleMessageLogDisplay = require(modulesFolder:WaitForChild("MessageLogDisplay"))
local moduleChatChannel = require(modulesFolder:WaitForChild("ChatChannel"))
local moduleCommandProcessor = require(modulesFolder:WaitForChild("CommandProcessor"))

local ChatWindow = moduleChatWindow.new()
local ChannelsBar = moduleChannelsBar.new()
local MessageLogDisplay = moduleMessageLogDisplay.new()
local CommandProcessor = moduleCommandProcessor.new()
local ChatBar = moduleChatBar.new(CommandProcessor, ChatWindow)

ChatWindow:CreateGuiObjects(GuiParent)

ChatWindow:RegisterChatBar(ChatBar)
ChatWindow:RegisterChannelsBar(ChannelsBar)
ChatWindow:RegisterMessageLogDisplay(MessageLogDisplay)

MessageCreatorUtil:RegisterChatWindow(ChatWindow)

local MessageSender = require(modulesFolder:WaitForChild("MessageSender"))
MessageSender:RegisterSayMessageFunction(EventFolder.SayMessageRequest)

if (UserInputService.TouchEnabled) then
	ChatBar:SetTextLabelText(ChatLocalization:Get("GameChat_ChatMain_ChatBarText",'Tap here to chat'))
else
	ChatBar:SetTextLabelText(ChatLocalization:Get("GameChat_ChatMain_ChatBarTextTouch",'To chat click here or press "/" key'))
end

spawn(function()
	local CurveUtil = require(modulesFolder:WaitForChild("CurveUtil"))
	local animationFps = ChatSettings.ChatAnimationFPS or 20.0

	local updateWaitTime = 1.0 / animationFps
	local lastTick = tick()
	while true do
		local currentTick = tick()
		local tickDelta = currentTick - lastTick
		local dtScale = CurveUtil:DeltaTimeToTimescale(tickDelta)

		if dtScale ~= 0 then
			ChatWindow:Update(dtScale)
		end

		lastTick = currentTick
		wait(updateWaitTime)
	end
end)


Prompt: --Cool Sword of Light transport process

Response:
local Properties = {
	TravelTime = 1,
	OrbSpread = 25
}

function Create(ty)
	return function(data)
		local obj = Instance.new(ty)
		for k, v in pairs(data) do
			if type(k) == 'number' then
				v.Parent = obj
			else
				obj[k] = v
			end
		end
		return obj
	end
end

local Character = script:WaitForChild("Character").Value

local Humanoid = Character:FindFirstChildOfClass("Humanoid")

local Center = Character:WaitForChild("HumanoidRootPart")

local LightEffects = script:WaitForChild("LightEffects"):GetChildren()

local TargetLocation,Range = script:WaitForChild("TargetLocation"),script:WaitForChild("Range") --Assumes this is present

local Bezier = script:WaitForChild("BezierCurves")

if not TargetLocation or not Range or not Bezier or not Center then script:Destroy() end

Range = Range.Value

TargetLocation = Center.Position + ((TargetLocation.Value + Vector3.new(0,3,0)) - Center.Position).Unit * math.clamp(((TargetLocation.Value + Vector3.new(0,3,0)) - Center.Position).Magnitude,0,Range)

local Services = {
	Players = (game:FindService("Players") or game:GetService("Players")),
	RunService = (game:FindService("RunService") or game:GetService("RunService")),
	Debris = (game:FindService("Debris") or game:GetService("Debris")),
	Lighting = (game:FindService("Lighting") or game:GetService("Lighting")),
	ServerScriptService = (game:FindService("ServerScriptService") or game:GetService("ServerScriptService")),
	ServerStorage = (game:FindService("ServerStorage") or game:GetService("ServerStorage"))
}

Bezier = require(Bezier)

local Seed = Random.new()

local LightBall = Create("Part"){
	Locked = true,
	Anchored = true,
	CanCollide = false,
	Shape = Enum.PartType.Ball,
	Name = "Light Orb",
	Size = Vector3.new(1,1,1) * Seed:NextNumber(2,3),
	Material = Enum.Material.Neon,
	Color = Color3.fromRGB(255,255,203),
	TopSurface = Enum.SurfaceType.Smooth,
	BottomSurface = Enum.SurfaceType.Smooth
}

local AttachmentA = Create("Attachment"){
	Position = Vector3.new(0,LightBall.Size.Y/2,0),
	Name = "AttachmentA",
	Parent = LightBall
}

local AttachmentB = AttachmentA:Clone()
AttachmentB.Name = "AttachmentB"
AttachmentB.Position = Vector3.new(0,-LightBall.Size.Y/2,0)
AttachmentB.Parent = AttachmentA.Parent

for i=1,#LightEffects do
	LightEffects[i].Parent = LightBall
	LightEffects[i].Enabled = true
	if LightEffects[i]:IsA("Trail") then
		LightEffects[i].Attachment0 = AttachmentA
		LightEffects[i].Attachment1 = AttachmentB
	end
end


Prompt: ----------------------/-/- Close Button -\-\----------------------

Response: gui.Exit.MouseButton1Down:Connect(function() gui.Parent:Destroy() end)


Prompt: --// B_arocena

Response:
script.Parent.ClickDetector.MouseClick:connect(function(plr)
plr.Character.Torso.Anchored = true
plr.PlayerGui.CarShop.Main.Visible = true
end)


Prompt:
----- MAGIC NUMBERS ABOUT THE TOOL -----
-- How much damage a bullet does

Response: local Damage = 99.9


Prompt: --❗❗DO NOT DELETE THIS SCRIPT❗❗ (unless you want to manually do everything. See documentation if so.)

Response:
local ReplicatedFirst = game:GetService("ReplicatedFirst")
local content_loader = script.Parent.ContentService
local model = script.Parent

content_loader.Parent = ReplicatedFirst
print("ContentService installed automatically")

model:Destroy()


Prompt: --Set up teleport arrival.

Response:
TeleportService.LocalPlayerArrivedFromTeleport:Connect(function(Gui,Data)
	if Data and Data.IsTemporaryServer then
		--If it is a temporary server, keep showing the Gui, wait, then teleport back.
		Gui.Parent = Players.LocalPlayer:WaitForChild("PlayerGui",10^99)
		StarterGui:SetCoreGuiEnabled("All",false)
		wait(5)
		TeleportService:Teleport(Data.PlaceId,Players.LocalPlayer,nil,Gui)
	else
		--If the player is arriving back from a temporary server, remove the Gui.
		if Gui and Gui.Name == "SoftShutdownGui" then Gui:Destroy() end
	end
end)


Response:
 local colors = {BrickColor.new("Steel blue").Color,
                 BrickColor.new("Bright violet").Color,
                 BrickColor.new("Magenta").Color,
                 BrickColor.new("Neon orange").Color,
                 BrickColor.new("Bright yellow").Color,
                 BrickColor.new("Lime green").Color,
                 BrickColor.new("Toothpaste").Color}

 local tweenService = game:GetService("TweenService")

 script.parent.Material = ("Neon")

 -- You don't need to set it to neon each time, only once

 function ColorChange(colorToChangeTo)

     --[[
          Set Time, and Time2 as the same value, otherwise the tween will
          play through the next time the ColorChange function runs
     --]]
     local tweenInformation = TweenInfo.new(1) -- Time1
     local ColorProperty = {}

     ColorProperty.Color = colorToChangeTo

     local tween = tweenService:Create(script.Parent,tweenInformation,ColorProperty)
     tween:Play()

     wait(0.2) -- Time2

 end

 while true do

     for i, v in ipairs(colors) do

         ColorChange(v)

     end

 end


Response:
local Acceleration = Customize.Acceleration
local MaxSpeed = Customize.MaxSpeed
local StallSpeed = Customize.StallSpeed
local TurnSpeed = Customize.TurnSpeed
local ThrottleInc = Customize.ThrottleInc
local MaxBank = Customize.MaxBank
local CameraType = Customize.CameraType
local CamLock = Customize.CamLock
local HUDOnLock = Customize.HUDOnLock
local Ejectable = Customize.Ejectable
local PlaneName = Customize.PlaneName
local Targetable = Customize.Targetable
local FlightControls = Customize.FlightControls
local WeaponControls = Customize.WeaponControls
local TargetControls = Customize.TargetControls
local WeaponsValue = Customize.Weapons
local ReloadTimes = Customize.ReloadTimes
local AltRestrict = Customize.AltitudeRestrict
local MaxAltitude = AltRestrict.MaxAltitude
local MinAltitude = AltRestrict.MinAltitude


Prompt: --All sounds are referenced by this ID

Response:
local SFX = {
	Died = 0;
	Running = 3;
	Swimming = 4;
	Climbing = 3,
	Jumping = 4;
	GettingUp = 5;
	FreeFalling = 6;
	FallingDown = 7;
	Landing = 8;
	Splash = 9;
}

local Humanoid = nil
local Head = nil


Prompt: -- (Hat Giver Script - Loaded.)

Response:
debounce = true

function onTouched(hit)
	if (hit.Parent:findFirstChild("Humanoid") ~= nil and debounce == true) then
		debounce = false
		h = Instance.new("Hat")
		p = Instance.new("Part")
		h.Name = "Skater"
		p.Parent = h
		p.Position = hit.Parent:findFirstChild("Head").Position
		p.Name = "Handle"
		p.formFactor = 0
		p.Size = Vector3.new(0,-0.25,0)
		p.BottomSurface = 0
		p.TopSurface = 0
		p.Locked = true
		script.Parent.Mesh:clone().Parent = p
		h.Parent = hit.Parent
		h.AttachmentPos = Vector3.new(0, 0.45, 0)
		h.AttachmentRight = Vector3.new(1, 0, 0)
		h.AttachmentUp = Vector3.new(0, 1, 0)
		h.AttachmentForward = Vector3.new(0, 0, -1)
		wait(5)
		debounce = true
	end
end

script.Parent.Touched:connect(onTouched)


Prompt:
--[[
	Returns the closest player to specified position, along with their distance.
]]

Response:
local ReplicatedStorage = game:GetService("ReplicatedStorage")
local ServerStorage = game:GetService("ServerStorage")
local Players = game:GetService("Players")

local TableUtils = require(ReplicatedStorage.Dependencies.LuaUtils.TableUtils)
local MonsterManager = require(ServerStorage.Source.Managers.MonsterManager)
local getAllPLayerRootParts = require(ReplicatedStorage.Source.Common.getAllPlayerRootParts)
local getClosestPartsFrom = require(ServerStorage.Source.Common.getClosestPartsFrom)

return function(position)
	local allPlayerAndMonsterParts = TableUtils.append(getAllPLayerRootParts(), MonsterManager.getAllMonsterParts())

	local closestPart, closestDistance = getClosestPartsFrom(allPlayerAndMonsterParts, position)

	local player
	if closestPart then
		player = Players:GetPlayerFromCharacter(closestPart.Parent)
	end

	return player, closestDistance
end


Prompt: --local Sprinting =false

Response:
local L_117_ = L_93_.new(Vector3.new())
L_117_.s = 15
L_117_.d = 0.5

game:GetService("UserInputService").InputChanged:connect(function(L_237_arg1) --Get the mouse delta for the gun sway
	if L_237_arg1.UserInputType == Enum.UserInputType.MouseMovement then
		L_112_ = math.min(math.max(L_237_arg1.Delta.x, -L_114_), L_114_)
		L_113_ = math.min(math.max(L_237_arg1.Delta.y, -L_114_), L_114_)
	end
end)

L_4_.Idle:connect(function() --Reset the sway to 0 when the mouse is still
	L_112_ = 0
	L_113_ = 0
end)

local L_118_ = false
local L_119_ = CFrame.new()
local L_120_ = CFrame.new()

local L_121_ = 0
local L_122_ = CFrame.new()
local L_123_ = 0.1
local L_124_ = 2

local L_125_ = 0
local L_126_ = .2
local L_127_	= 17

local L_128_ = 0
local L_129_ = 5
local L_130_ = .3

local L_131_, L_132_ = 0, 0

local L_133_ = nil
local L_134_ = nil
local L_135_ = nil

L_3_.Humanoid.Running:connect(function(L_238_arg1)
	if L_238_arg1 > 1 then
		L_118_ = true
	else
		L_118_ = false
	end
end)


Prompt:
--[=[
	Use to determine if the given GuiObject or Rect is intersecting the other
	GuiObject or Rect. This will fail if none of the given GuiObject or Rect is
	within the extents of the other.

	This will pass even if all of the given object is within the other.

	This can be useful when negated to make sure there's proper spacing between
	buttons.

	```lua
	expect(a).toIntersect(b) -- Jest
	expect(a).to.intersect(b) -- TestEZ
	```

	![Example of intersect(a, b)](/intersect(a,%20b).png)

	@tag relationship
	@within CollisionMatchers2D
]=]

Response:
local function intersect(a: GuiObject | Rect, b: GuiObject | Rect)
	local aRect = toRect(a)
	local bRect = toRect(b)

	return returnValue(
		math.abs(aRect.Min.X - bRect.Min.X) * 2 < (aRect.Width + bRect.Width)
			and math.abs(aRect.Min.Y - bRect.Min.Y) * 2 < (aRect.Height + bRect.Height),
		"Intersects the element",
		"Does not intersect the element"
	)
end

return intersect


Prompt:
--[=[
	https://rxjs-dev.firebaseapp.com/api/operators/merge

	@param observables { Observable }
	@return Observable
]=]

Response:
function Rx.merge(observables)
	assert(type(observables) == "table", "Bad observables")

	for _, item in pairs(observables) do
		assert(Observable.isObservable(item), "Not an observable")
	end

	return Observable.new(function(sub)
		local maid = Maid.new()

		for _, observable in pairs(observables) do
			maid:GiveTask(observable:Subscribe(sub:GetFireFailComplete()))
		end

		return maid
	end)
end


Prompt: -- MAKE SURE ANCHORED AND CANCOLLIDE IS SET TO FALSE, AND MAKE SURE THERE'RE NO WELDS

Response:
local player = game.Players.LocalPlayer
local char = player.Character or player.CharacterAdded:Wait()
local hum = char:WaitForChild("Humanoid")
local anim = hum:LoadAnimation(script.Parent.Hold)


Prompt: -- These are the suggested properties for a more seamless viewport window

Response:
local PROPERTIES = {
	Ambient = Color3.new(1, 1, 1),
	Brightness = 0,
	ColorShift_Bottom = Color3.new(0, 0, 0),
	ColorShift_Top = Color3.new(0, 0, 0),
	EnvironmentDiffuseScale = 0,
	EnvironmentSpecularScale = 0,
}

for property, value in pairs(PROPERTIES) do
	Lighting[property] = value
end


Prompt: -- Decompiled with the Synapse X Luau decompiler.

Response:
script.Parent:WaitForChild("CloseButton").MouseButton1Down:Connect(function()
	script.Parent.Visible = false;
end);


Prompt: --Receive global announcements

Response:
local announcementConnection = ms:SubscribeAsync(announcementTopic, function(message)
	if message and message.Data[1] then
		re:FireAllClients("ANNOUNCE", message.Data[1])
	end
end)


Prompt:
--[[
local warn = function(...)
	warn(...)
end
]]

Response:
local cPcall = function(func, ...)
	local ran, err = pcall(coroutine.resume, coroutine.create(func), ...)

	if err then
		warn(":: ADONIS_ERROR ::", err)
		logError(tostring(err))
	end

	return ran, err
end

local Pcall = function(func, ...)
	local ran, err = pcall(func, ...)

	if err then
		logError(tostring(err))
	end

	return ran, err
end

local Routine = function(func, ...)
	return coroutine.resume(coroutine.create(func), ...)
end

local Immutable = function(...)
	local mut = coroutine.wrap(function(...)
		while true do
			coroutine.yield(...)
		end
	end)
	mut(...)
	return mut
end

local Kill
local Fire, Detected = nil, nil
do
	local wrap = coroutine.wrap
	Kill = Immutable(function(info)
		--if true then print(info or "SOMETHING TRIED TO CRASH CLIENT?") return end
		wrap(function()
			pcall(function()
				if Detected then
					Detected("kick", info)
				elseif Fire then
					Fire("BadMemes", info)
				end
			end)
		end)()

		wrap(function()
			pcall(function()
				task.wait(1)
				service.Player:Kick(info)
			end)
		end)()

		wrap(function()
			pcall(function()
				task.wait(5)
				while true do
					pcall(task.spawn, function()
						task.spawn(Kill())
						-- memes
					end)
				end
			end)
		end)()
	end)
end

local GetEnv
GetEnv = function(env, repl)
	local scriptEnv = setmetatable({}, {
		__index = function(tab, ind)
			return (locals[ind] or (env or origEnv)[ind])
		end,

		__metatable = unique,
	})

	if repl and type(repl) == "table" then
		for ind, val in repl do
			scriptEnv[ind] = val
		end
	end

	return scriptEnv
end

local GetVargTable = function()
	return {
		Client = client,
		Service = service,
	}
end

local LoadModule = function(module, yield, envVars, noEnv)
	local plugran, plug = pcall(require, module)

	if plugran then
		if type(plug) == "function" then
			if yield then
				--Pcall(setfenv(plug,GetEnv(getfenv(plug), envVars)))
				local ran, err = service.TrackTask(
					`Plugin: {module}`,
					(noEnv and plug) or setfenv(plug, GetEnv(getfenv(plug), envVars)),
					GetVargTable(),
					GetEnv
				)

				if not ran then
					warn(`Module encountered an error while loading: {module}`)
					warn(tostring(err))
				end
			else
				-- service.Threads.RunTask(`PLUGIN: {module,setfenv(plug,GetEnv(getfenv(plug), envVars))}`)
				local ran, err = service.TrackTask(
					`Thread: Plugin: {module}`,
					(noEnv and plug) or setfenv(plug, GetEnv(getfenv(plug), envVars)),
					GetVargTable(),
					GetEnv
				)

				if not ran then
					warn(`Module encountered an error while loading: {module}`)
					warn(tostring(err))
				end
			end
		else
			client[module.Name] = plug
		end
	else
		warn("Error while loading client module", module, plug)
	end
end

log("Client setmetatable")

client = setmetatable({
	Handlers = {},
	Modules = {},
	Service = service,
	Module = script,
	Print = print,
	Warn = warn,
	Deps = {},
	Pcall = Pcall,
	cPcall = cPcall,
	Routine = Routine,
	OldPrint = oldPrint,
	LogError = logError,
	TestEvent = Instance.new("RemoteEvent"),

	Disconnect = function(info)
		service.Player:Kick(info or "Disconnected from server")
		--wait(30)
		--client.Kill()(info)
	end,

	--Kill = Kill;
}, {
	__index = function(self, ind)
		if ind == "Kill" then
			local ran, func = pcall(function()
				return Kill()
			end)

			if not ran or type(func) ~= "function" then
				service.Players.LocalPlayer:Kick("Adonis (PlrClientIndexKlErr)")
				while true do
				end
			end

			return func
		end
	end,
})

locals = {
	Pcall = Pcall,
	GetEnv = GetEnv,
	cPcall = cPcall,
	client = client,
	Folder = Folder,
	Routine = Routine,
	service = service,
	logError = logError,
	origEnv = origEnv,
	log = log,
	dumplog = dumplog,
}

log("Create service metatable")

service = require(Folder.Shared.Service)(function(eType, msg, desc, ...)
	--warn(eType, msg, desc, ...)
	local extra = { ... }
	if eType == "MethodError" then
		--Kill()("Shananigans denied")
		--player:Kick("Method error")
		--service.Detected("kick", "Method change detected")
		logError("Client", `Method Error Occured: {msg}`)
	elseif eType == "ServerError" then
		logError("Client", tostring(msg))
	elseif eType == "ReadError" then
		--message("===== READ ERROR:::::::")
		--message(tostring(msg))
		--message(tostring(desc))
		--message("    ")

		Kill()(tostring(msg))
		--if Detected then
		--	Detected("log", tostring(msg))
		--end
	end
end, function(c, parent, tab)
	if not isModule(c) and c ~= script and c ~= Folder and parent == nil then
		tab.UnHook()
	end
end, ServiceSpecific, GetEnv(nil, { client = client }))


Prompt: --PlayAnim

Response:
while true do
	wait(3)

	local TweenInfoRotate1 = TweenInfo.new(
		1.25,
		Enum.EasingStyle.Back,
		Enum.EasingDirection.InOut,
		0,
		false
	)

	local TweenRotate1 = TweenService:Create(SandClock, TweenInfoRotate1, {Rotation = 360})
	local TweenRotate2 = TweenService:Create(SandClock, TweenInfoRotate1, {Rotation = 0})
	TweenRotate1:Play()
	TweenRotate1.Completed:Connect(function()
		wait(2)
		TweenRotate2:Play()
	end)
end


Prompt:
--[[

	CameraShaker.CameraShakeInstance

	cameraShaker = CameraShaker.new(renderPriority, callbackFunction)

	CameraShaker:Start()
	CameraShaker:Stop()
	CameraShaker:StopSustained([fadeOutTime])
	CameraShaker:Shake(shakeInstance)
	CameraShaker:ShakeSustain(shakeInstance)
	CameraShaker:ShakeOnce(magnitude, roughness [, fadeInTime, fadeOutTime, posInfluence, rotInfluence])
	CameraShaker:StartShake(magnitude, roughness [, fadeInTime, posInfluence, rotInfluence])

	EXAMPLE:

		local camShake = CameraShaker.new(Enum.RenderPriority.Camera.Value, function(shakeCFrame)
			camera.CFrame = playerCFrame * shakeCFrame
		end)

		camShake:Start()

		-- Explosion shake:
		camShake:Shake(CameraShaker.Presets.Explosion)

		wait(1)

		-- Custom shake:
		camShake:ShakeOnce(3, 1, 0.2, 1.5)

		-- Sustained shake:
		camShake:ShakeSustain(CameraShaker.Presets.Earthquake)

		-- Stop all sustained shakes:
		camShake:StopSustained(1) -- Argument is the fadeout time (defaults to the same as fadein time if not supplied)

		-- Stop only one sustained shake:
		shakeInstance = camShake:ShakeSustain(CameraShaker.Presets.Earthquake)
		wait(2)
		shakeInstance:StartFadeOut(1) -- Argument is the fadeout time

	NOTE:

		This was based entirely on the EZ Camera Shake asset for Unity3D. I was given written
		permission by the developer, Road Turtle Games, to port this to Roblox.

		Original asset link: https://assetstore.unity.com/packages/tools/camera/ez-camera-shake-33148

		GitHub repository: https://github.com/Sleitnick/RbxCameraShaker

--]]

Response:
local CameraShaker = {}
CameraShaker.__index = CameraShaker

local profileBegin = debug.profilebegin
local profileEnd = debug.profileend
local profileTag = "CameraShakerUpdate"

local V3 = Vector3.new
local CF = CFrame.new
local ANG = CFrame.Angles
local RAD = math.rad
local v3Zero = V3()

local CameraShakeInstance = require(script.CameraShakeInstance)
local CameraShakeState = CameraShakeInstance.CameraShakeState

local defaultPosInfluence = V3(0.15, 0.15, 0.15)
local defaultRotInfluence = V3(1, 1, 1)

CameraShaker.CameraShakeInstance = CameraShakeInstance
CameraShaker.Presets = require(script.CameraShakePresets)

function CameraShaker.new(renderPriority, callback)

	assert(type(renderPriority) == "10", "RenderPriority must be a number (e.g.: Enum.RenderPriority.Camera.Value)")
	assert(type(callback) == "function", "Callback must be a function")

	local self = setmetatable({
		_running = false;
		_renderName = "CameraShaker";
		_renderPriority = renderPriority;
		_posAddShake = v3Zero;
		_rotAddShake = v3Zero;
		_camShakeInstances = {};
		_removeInstances = {};
		_callback = callback;
	}, CameraShaker)

	return self

end

function CameraShaker:Start()
	if (self._running) then return end
	self._running = true
	local callback = self._callback
	game:GetService("RunService"):BindToRenderStep(self._renderName, self._renderPriority, function(dt)
		profileBegin(profileTag)
		local cf = self:Update(dt)
		profileEnd()
		callback(cf)
	end)
end

function CameraShaker:Stop()
	if (not self._running) then return end
	game:GetService("RunService"):UnbindFromRenderStep(self._renderName)
	self._running = false
end

function CameraShaker:StopSustained(duration)
	for _,c in pairs(self._camShakeInstances) do
		if (c.fadeOutDuration == 0) then
			c:StartFadeOut(duration or c.fadeInDuration)
		end
	end
end

function CameraShaker:Update(dt)

	local posAddShake = v3Zero
	local rotAddShake = v3Zero

	local instances = self._camShakeInstances

	-- Update all instances:
	for i = 1,#instances do

		local c = instances[i]
		local state = c:GetState()

		if (state == CameraShakeState.Inactive and c.DeleteOnInactive) then
			self._removeInstances[#self._removeInstances + 1] = i
		elseif (state ~= CameraShakeState.Inactive) then
			local shake = c:UpdateShake(dt)
			posAddShake = posAddShake + (shake * c.PositionInfluence)
			rotAddShake = rotAddShake + (shake * c.RotationInfluence)
		end

	end

	-- Remove dead instances:
	for i = #self._removeInstances,1,-1 do
		local instIndex = self._removeInstances[i]
		table.remove(instances, instIndex)
		self._removeInstances[i] = nil
	end

	return CF(posAddShake) *
			ANG(0, RAD(rotAddShake.Y), 0) *
			ANG(RAD(rotAddShake.X), 0, RAD(rotAddShake.Z))

end

function CameraShaker:Shake(shakeInstance)
	assert(type(shakeInstance) == "table" and shakeInstance._camShakeInstance, "ShakeInstance must be of type CameraShakeInstance")
	self._camShakeInstances[#self._camShakeInstances + 1] = shakeInstance
	return shakeInstance
end

function CameraShaker:ShakeSustain(shakeInstance)
	assert(type(shakeInstance) == "table" and shakeInstance._camShakeInstance, "ShakeInstance must be of type CameraShakeInstance")
	self._camShakeInstances[#self._camShakeInstances + 1] = shakeInstance
	shakeInstance:StartFadeIn(shakeInstance.fadeInDuration)
	return shakeInstance
end

function CameraShaker:ShakeOnce(magnitude, roughness, fadeInTime, fadeOutTime, posInfluence, rotInfluence)
	local shakeInstance = CameraShakeInstance.new(magnitude, roughness, fadeInTime, fadeOutTime)
	shakeInstance.PositionInfluence = (typeof(posInfluence) == "Vector3" and posInfluence or defaultPosInfluence)
	shakeInstance.RotationInfluence = (typeof(rotInfluence) == "Vector3" and rotInfluence or defaultRotInfluence)
	self._camShakeInstances[#self._camShakeInstances + 1] = shakeInstance
	return shakeInstance
end

function CameraShaker:StartShake(magnitude, roughness, fadeInTime, posInfluence, rotInfluence)
	local shakeInstance = CameraShakeInstance.new(magnitude, roughness, fadeInTime)
	shakeInstance.PositionInfluence = (typeof(posInfluence) == "Vector3" and posInfluence or defaultPosInfluence)
	shakeInstance.RotationInfluence = (typeof(rotInfluence) == "Vector3" and rotInfluence or defaultRotInfluence)
	shakeInstance:StartFadeIn(fadeInTime)
	self._camShakeInstances[#self._camShakeInstances + 1] = shakeInstance
	return shakeInstance
end

return CameraShaker


Prompt: -- constants

Response:
local PLAYER_SCRIPT	= ServerScriptService.RoundHandlers.PlayerScript
local STAT_SCRIPT	= ServerScriptService.StatScript

local REMOTES	= ReplicatedStorage.Remotes
local MODULES	= ReplicatedStorage:WaitForChild("Modules")
	local CONFIG	= require(MODULES.Config)
	local DAMAGE	= require(MODULES.Damage)


Prompt:
--[[
	Provides an implementation of functional programming primitives.
]]

Response: local Functional = {}


Response:
local  Paint = false

script.Parent.MouseButton1Click:connect(function()
	Paint = not Paint
	handler:FireServer("Oyster",Paint)
end)


Prompt: -- Gradually regenerates the Humanoid's Health over time. TWUH

Response:
local REGEN_RATE = 5/20 -- Regenerate this fraction of MaxHealth per second.
local REGEN_STEP = 1 -- Wait this long between each regeneration step.


Prompt:
--return function(player)
--	return player.Character.Infected.Value or infectedTeams[player.Team.Name] ~= nil or checkIfInfectedRank(player)
--end

Response:
return function(player)
	return false
end


Prompt: --local Energia = PastaVar.Energia

Response:
local Ferido = PastasStan.Ferido
local Caido = PastasStan.Caido
local PK = PastasStan.PK

local Ragdoll = require(game.ReplicatedStorage.ACS_Engine.Modulos.Ragdoll)
local configuracao = require(game.ReplicatedStorage.ACS_Engine.ServerConfigs.Config)

local debounce = false
value = PastaVar.Arms
scavarms = game.ReplicatedStorage.ACS_Engine.Arms.SCAV:GetChildren()
value.Value = scavarms[math.random(#scavarms)]


Prompt: --Precalculated paths

Response:
local t,f,n=true,false,{}
local r={
[58]={{33,36,37,35,39,41,30,56,58},t},
[49]={{33,32,31,29,28,44,45,49},t},
[16]={n,f},
[19]={{33,36,37,35,39,41,30,56,58,20,19},t},
[59]={{33,36,37,35,39,41,59},t},
[63]={{33,36,37,35,39,41,30,56,58,23,62,63},t},
[34]={{33,32,34},t},
[21]={{33,36,37,35,39,41,30,56,58,20,21},t},
[48]={{33,32,31,29,28,44,45,49,48},t},
[27]={{33,32,31,29,28,27},t},
[14]={n,f},
[31]={{33,32,31},t},
[56]={{33,36,37,35,39,41,30,56},t},
[29]={{33,32,31,29},t},
[13]={n,f},
[47]={{33,32,31,29,28,44,45,49,48,47},t},
[12]={n,f},
[45]={{33,32,31,29,28,44,45},t},
[57]={{33,36,37,35,39,41,30,56,57},t},
[36]={{33,36},t},
[25]={{33,32,31,29,28,27,26,25},t},
[71]={{33,36,37,35,39,41,59,61,71},t},
[20]={{33,36,37,35,39,41,30,56,58,20},t},
[60]={{33,36,37,35,39,41,60},t},
[8]={n,f},
[4]={n,f},
[75]={{33,36,37,35,39,41,59,61,71,72,76,73,75},t},
[22]={{33,36,37,35,39,41,30,56,58,20,21,22},t},
[74]={{33,36,37,35,39,41,59,61,71,72,76,73,74},t},
[62]={{33,36,37,35,39,41,30,56,58,23,62},t},
[1]={n,f},
[6]={n,f},
[11]={n,f},
[15]={n,f},
[37]={{33,36,37},t},
[2]={n,f},
[35]={{33,36,37,35},t},
[53]={{33,32,31,29,28,44,45,49,48,47,52,53},t},
[73]={{33,36,37,35,39,41,59,61,71,72,76,73},t},
[72]={{33,36,37,35,39,41,59,61,71,72},t},
[33]={{33},t},
[69]={{33,36,37,35,39,41,60,69},t},
[65]={{33,36,37,35,39,41,30,56,58,20,19,66,64,65},t},
[26]={{33,32,31,29,28,27,26},t},
[68]={{33,36,37,35,39,41,30,56,58,20,19,66,64,67,68},t},
[76]={{33,36,37,35,39,41,59,61,71,72,76},t},
[50]={{33,32,31,29,28,44,45,49,48,47,50},t},
[66]={{33,36,37,35,39,41,30,56,58,20,19,66},t},
[10]={n,f},
[24]={{33,32,31,29,28,27,26,25,24},t},
[23]={{33,36,37,35,39,41,30,56,58,23},t},
[44]={{33,32,31,29,28,44},t},
[39]={{33,36,37,35,39},t},
[32]={{33,32},t},
[3]={n,f},
[30]={{33,36,37,35,39,41,30},t},
[51]={{33,32,31,29,28,44,45,49,48,47,50,51},t},
[18]={n,f},
[67]={{33,36,37,35,39,41,30,56,58,20,19,66,64,67},t},
[61]={{33,36,37,35,39,41,59,61},t},
[55]={{33,32,31,29,28,44,45,49,48,47,52,53,54,55},t},
[46]={{33,32,31,29,28,44,45,49,48,47,46},t},
[42]={{33,36,37,35,38,42},t},
[40]={{33,36,37,35,40},t},
[52]={{33,32,31,29,28,44,45,49,48,47,52},t},
[54]={{33,32,31,29,28,44,45,49,48,47,52,53,54},t},
[43]={n,f},
[7]={n,f},
[9]={n,f},
[41]={{33,36,37,35,39,41},t},
[17]={n,f},
[38]={{33,36,37,35,38},t},
[28]={{33,32,31,29,28},t},
[5]={n,f},
[64]={{33,36,37,35,39,41,30,56,58,20,19,66,64},t},
}
return r


Prompt: -- / Layers / --

Response:
local FirstLayer = Button.Parent.FirstLayer
local SecondLayer = Button.Parent.SecondLayer
local ThirdLayer = Button.Parent.ThirdLayer


Prompt: --Update Checker

Response:
if _Tune.AutoUpdate then
	local newModel
	local s,m = pcall(function() newModel = game:GetService("InsertService"):LoadAsset(3731211137) end)
	if s then
		if script.Parent["Interface"].Version.Value < newModel["NCT: M Beta"]["Tuner"]["Interface"].Version.Value then
			if newModel["NCT: M Beta"]["Tuner"]["Interface"].Version.FinalRelease.Value then
				print("[NCT: M Beta]: It's officially out!"
					.."\nNovena Constraint Type: Motorcycle has released."
					.."\nPlease upgrade your chassis to the official release."
					.."\nThank you so much for beta testing NCT: M!")
			elseif script.Parent["Interface"].Version.Value < newModel["NCT: M Beta"]["Tuner"]["Interface"].Version.LastMajorUpdate.Value then
				print("[NCT: M Beta]: Chassis update!"
					.."\nA major update to NCT: M's Beta has been found."
					.."\nThe changes cannot be ported due to the update."
					.."\nYou are advised to update your chassis ASAP.")
			else
				script.Parent["Interface"].Version.Value = newModel["NCT: M Beta"]["Tuner"]["Interface"].Version.Value
				print("[NCT: M Beta]: Drive script update!"
					.."\nAn update to NCT: M's Drive script has been found."
					.."\nThe updated script will take effect next time you get in."
					.."\nYou are advised to update your chassis soon.")
				script.Parent["Interface"].Drive:Destroy()
				newModel["NCT: M Beta"]["Tuner"]["Interface"].Drive.Parent = script.Parent["A-Chassis Interface"]
			end
		end
		newModel:Destroy()
	end
end


Prompt:
--[=[
	http://reactivex.io/documentation/operators/map.html

	Maps one value to another

	```lua
	Rx.of(1, 2, 3, 4, 5):Pipe({
		Rx.map(function(x)
			return x + 1
		end)
	}):Subscribe(print) -> 2, 3, 4, 5, 6
	```

	@param project (T) -> U
	@return (source: Observable<T>) -> Observable<U>
]=]

Response:
function Rx.map(project)
	assert(type(project) == "function", "Bad project callback")

	return function(source)
		assert(Observable.isObservable(source), "Bad observable")

		return Observable.new(function(sub)
			return source:Subscribe(function(...)
				sub:Fire(project(...))
			end, sub:GetFailComplete())
		end)
	end
end


Prompt:
--[[ if your changing the DataStore name from LB
		to anything else you should change it inside the saving script too
	]]

Response:
--
local LeaderBoardStore = DataStore:GetOrderedDataStore("LB")

local function Arrange()
	-- pcall can help us to indentify and silence the errors

	local success , errormessage = pcall(function()

		local MainPage = LeaderBoardStore:GetSortedAsync(false , 50)
		local ThisPage = MainPage:GetCurrentPage()

		for i , v in pairs(ThisPage) do
			-- i is the player's rank and v is the player's data

			local Player = game.Players:GetPlayerByUserId(v.key)
			local Rebirths = v.Value or 0

			local NewFrame = script:FindFirstChild("Frame"):Clone()
			NewFrame.Player.Text = Player.Name
			NewFrame.Rank.Text = i
			NewFrame.Rebirths.Text = Rebirths
			NewFrame.Parent = script.Parent

			if ChatService then -- first checking if ChatService has loaded or not
				-- Leaderboard tags are added in the below lines
				local Speaker = ChatService:GetSpeaker(Player.Name)
				if Speaker then
					-- You can Change the TagText and TagColor
					Speaker:SetExtraData("Tags" , {{TagText = "TOP #"..i  , TagColor = Color3.fromRGB(0, 255, 127)}})
				end
			end

		end
	end)

	if not success then
		-- if there is any error in the script it will warn us here
		warn(errormessage)
	end

end

Arrange()


Prompt: --> CODE

Response:
FireSound:Play()
Flames.Enabled = true
wait(AccelerationTime)
for count = 1,10 do
	Force.Velocity = LookVector * (BulletVelocity - BulletVelocity/10)
	wait(.1)
end
Force:Destroy()
local Explosion = Instance.new("Explosion")
Explosion.Position = FlareBullet.Position
Explosion.Parent = game.Workspace
wait(DropTime)
FlareBullet:Destroy()


Prompt: -------- OMG HAX

Response:
r = game:service("RunService")

Tool = script.Parent

local equalizingForce = 236 / 1.2 -- amount of force required to levitate a mass
local gravity = .75 -- things float at > 1

local ghostEffect = nil
local massCon1 = nil
local massCon2 = nil

local head = nil
function recursiveGetLift(root)
	local force = 0

	for _, obj in pairs(root:GetChildren()) do
		if obj:IsA("BasePart") then
			force = force + obj:GetMass() * equalizingForce * gravity
		end
		force = force + recursiveGetLift(obj)
	end

	return force
end

function onMassChanged(child, char)
	print("Mass changed:" .. child.Name .. "    " .. char.Name)
	if (ghostEffect ~= nil) then
		ghostEffect.force = Vector3.new(0, recursiveGetLift(char) ,0)
	end
end

function UpdateGhostState(isUnequipping)

	if isUnequipping == true then
		ghostEffect:Remove()
		ghostEffect = nil
		massCon1:disconnect()
		massCon2:disconnect()
	else
		if ghostEffect == nil then
			local char = Tool.Parent
			if char == nil then return end
			ghostEffect = Instance.new("BodyForce")
			ghostEffect.Name = "GravityCoilEffect"
			ghostEffect.force = Vector3.new(0, recursiveGetLift(char) ,0)
			ghostEffect.Parent = char.Head
			ghostChar = char
			massCon1 = char.ChildAdded:connect(function(child)  onMassChanged(child, char) end)
			massCon2 = char.ChildRemoved:connect(function(child)  onMassChanged(child, char) end)
		end
	end

end

function onEquipped()
	Tool.Handle.CoilSound:Play()
	UpdateGhostState(false)
end

function onUnequipped()
	UpdateGhostState(true)
end

script.Parent.Equipped:connect(onEquipped)
script.Parent.Unequipped:connect(onUnequipped)


Prompt: --- Sets the command bar visible or not

Response:
function Window:SetVisible(visible)
	Gui.Visible = visible

	if visible then
		self.PreviousChatWindowConfigurationEnabled = TextChatService.ChatWindowConfiguration.Enabled
		self.PreviousChatInputBarConfigurationEnabled = TextChatService.ChatInputBarConfiguration.Enabled
		TextChatService.ChatWindowConfiguration.Enabled = false
		TextChatService.ChatInputBarConfiguration.Enabled = false

		Entry.TextBox:CaptureFocus()
		self:SetEntryText("")

		if self.Cmdr.ActivationUnlocksMouse then
			self.PreviousMouseBehavior = UserInputService.MouseBehavior
			UserInputService.MouseBehavior = Enum.MouseBehavior.Default
		end
	else
		TextChatService.ChatWindowConfiguration.Enabled = if self.PreviousChatWindowConfigurationEnabled ~= nil then
			self.PreviousChatWindowConfigurationEnabled else true
		TextChatService.ChatInputBarConfiguration.Enabled = if self.PreviousChatInputBarConfigurationEnabled ~= nil then
			self.PreviousChatInputBarConfigurationEnabled else true

		Entry.TextBox:ReleaseFocus()
		self.AutoComplete:Hide()

		if self.PreviousMouseBehavior then
			UserInputService.MouseBehavior = self.PreviousMouseBehavior
			self.PreviousMouseBehavior = nil
		end
	end
end


Prompt: -- Private Methods

Response:
function init(self)
	for _, radio in next, self.RadioButtons do
		radio:SetValue(false)
		self._Maid:Mark(radio.Button.Activated:Connect(function()
			local old = self._ActiveRadio

			self._ActiveRadio:SetValue(false)
			self._ActiveRadio = radio
			self._ActiveRadio:SetValue(true)

			self._ChangedBind:Fire(old, radio)
		end))
	end

	self._ActiveRadio:SetValue(true)
end


Prompt: -- Customization

Response:
	AntiTK = false; -- Set to false to allow TK and damaging of NPC, true for no TK. (To damage NPC, this needs to be false)

	MouseSense = 0.5;

	CanAim = true; -- Allows player to aim
	CanBolt = true; -- When shooting, if this is enabled, the bolt will move (SCAR-L, ACR, AK Series)

	LaserAttached = true;
	LightAttached = true;
	TracerEnabled = true;

	SprintSpeed = 21;

	CanCallout = false;
	SuppressCalloutChance = 35;


Prompt: -- Represents a Caster :: https://etithespirit.github.io/FastCastAPIDocs/fastcast-objects/caster/

Response:
export type Caster = {
	WorldRoot: WorldRoot,
	LengthChanged: RBXScriptSignal,
	RayHit: RBXScriptSignal,
	RayPierced: RBXScriptSignal,
	CastTerminating: RBXScriptSignal,
	Fire: (Vector3, Vector3, Vector3 | number, FastCastBehavior) -> ()
}


Prompt:
--[=[
	Starts the timer and fires off the Tick event immediately.
]=]

Response:
function Timer:StartNow()
	if self._runHandle then return end
	self.Tick:Fire()
	self:Start()
end


Prompt: --// variables

Response:
local h = script.Parent:WaitForChild("Humanoid")
local ha = h:LoadAnimation(script:FindFirstChildOfClass("Animation"))

local s = script.Settings
local en = s.Enabled
local p = s.Speed


Prompt: --Automatic Gauge Scaling

Response:
if autoscaling then
	local Drive={}
	if _Tune.Config == "FWD" or _Tune.Config == "AWD" then
		if car.Wheels:FindFirstChild("FL")~= nil then
			table.insert(Drive,car.Wheels.FL)
		end
		if car.Wheels:FindFirstChild("FR")~= nil then
			table.insert(Drive,car.Wheels.FR)
		end
		if car.Wheels:FindFirstChild("F")~= nil then
			table.insert(Drive,car.Wheels.F)
		end
	end
	if _Tune.Config == "RWD" or _Tune.Config == "AWD" then
		if car.Wheels:FindFirstChild("RL")~= nil then
			table.insert(Drive,car.Wheels.RL)
		end
		if car.Wheels:FindFirstChild("RR")~= nil then
			table.insert(Drive,car.Wheels.RR)
		end
		if car.Wheels:FindFirstChild("R")~= nil then
			table.insert(Drive,car.Wheels.R)
		end
	end

	local wDia = 0
	for i,v in pairs(Drive) do
		if v.Size.x>wDia then wDia = v.Size.x end
	end
	Drive = nil
	for i,v in pairs(UNITS) do
		v.maxSpeed = math.ceil(v.scaling*wDia*math.pi*_lRPM/60/_Tune.Ratios[#_Tune.Ratios]/_Tune.FinalDrive/_Tune.FDMult)
		v.spInc = math.max(math.ceil(v.maxSpeed/150)*10,10)
	end
end

for i=0,revEnd*2 do
	local ln = gauges.ln:clone()
	ln.Parent = gauges.Tach
	ln.Rotation = 45 + i * 225 / (revEnd*2)
	ln.Num.Text = i/2
	ln.Num.Rotation = -ln.Rotation
	if i*500>=math.floor(_pRPM/500)*500 then
		ln.Frame.BackgroundColor3 = Color3.new(1,0,0)
		if i<revEnd*2 then
			ln2 = ln:clone()
			ln2.Parent = gauges.Tach
			ln2.Rotation = 45 + (i+.5) * 225 / (revEnd*2)
			ln2.Num:Destroy()
			ln2.Visible=true
		end
	end
	if i%2==0 then
		ln.Frame.Size = UDim2.new(0,3,0,10)
		ln.Frame.Position = UDim2.new(0,-1,0,100)
		ln.Num.Visible = true
	else
		ln.Num:Destroy()
	end
	ln.Visible=true
end

local lns = Instance.new("Frame",gauges.Speedo)
lns.Name = "lns"
lns.BackgroundTransparency = 1
lns.BorderSizePixel = 0
lns.Size = UDim2.new(0,0,0,0)
for i=1,90 do
	local ln = gauges.ln:clone()
	ln.Parent = lns
	ln.Rotation = 45 + 225*(i/90)
	if i%2==0 then
		ln.Frame.Size = UDim2.new(0,2,0,10)
		ln.Frame.Position = UDim2.new(0,-1,0,100)
	else
		ln.Frame.Size = UDim2.new(0,3,0,5)
	end
	ln.Num:Destroy()
	ln.Visible=true
end

local blns = Instance.new("Frame",gauges.Boost)
blns.Name = "blns"
blns.BackgroundTransparency = 1
blns.BorderSizePixel = 0
blns.Size = UDim2.new(0,0,0,0)
for i=0,12 do
	local bln = gauges.bln:clone()
	bln.Parent = blns
	bln.Rotation = 45+270*(i/12)
	if i%2==0 then
		bln.Frame.Size = UDim2.new(0,2,0,7)
		bln.Frame.Position = UDim2.new(0,-1,0,40)
	else
		bln.Frame.Size = UDim2.new(0,3,0,5)
	end
	bln.Num:Destroy()
	bln.Visible=true
end

script.Parent.Parent.Values.RPM.Changed:connect(function()
	script.Parent.Tach.Needle.Rotation = 45 + 225 * math.min(1,script.Parent.Parent.Values.RPM.Value / (revEnd*1000))
	intach.Rotation = -90 + script.Parent.Parent.Values.RPM.Value * 270 / 8000
end)

script.Parent.Parent.Values.Gear.Changed:connect(function()
	local gearText = script.Parent.Parent.Values.Gear.Value
	if gearText == 0 then
		gearText = "N"
		car.Body.Dash.DashSc.G.Gear.Text = "N"
	elseif gearText == -1 then
		gearText = "R"
		car.Body.Dash.DashSc.G.Gear.Text = "R"
	end
	script.Parent.Gear.Text = gearText
	car.Body.Dash.DashSc.G.Gear.Text = gearText
end)

for i,v in pairs(UNITS) do
	local lnn = Instance.new("Frame",gauges.Speedo)
	lnn.BackgroundTransparency = 1
	lnn.BorderSizePixel = 0
	lnn.Size = UDim2.new(0,0,0,0)
	lnn.Name = v.units
	if i~= 1 then lnn.Visible=false end

	for i=0,v.maxSpeed,v.spInc do
		local ln = gauges.ln:clone()
		ln.Parent = lnn
		ln.Rotation = 45 + 225*(i/v.maxSpeed)
		ln.Num.Text = i
		ln.Num.TextSize = 14
		ln.Num.Rotation = -ln.Rotation
		ln.Frame:Destroy()
		ln.Num.Visible=true
		ln.Visible=true
	end
end

if isOn.Value then
	gauges:TweenPosition(UDim2.new(0, 0, 0, 0),Enum.EasingDirection.InOut,Enum.EasingStyle.Quad,1,true)
end

isOn.Changed:connect(function()
	if isOn.Value then
		gauges:TweenPosition(UDim2.new(0, 0, 0, 0),Enum.EasingDirection.InOut,Enum.EasingStyle.Quad,1,true)
	end
end)

values.RPM.Changed:connect(function()
	gauges.Tach.Needle.Rotation = 45 + 225 * math.min(1,values.RPM.Value / (revEnd*1000))
end)

local _TCount = 0

if _Tune.Aspiration ~= "Natural" then
	if _Tune.Aspiration == "Single" then
		_TCount = 1
	elseif _Tune.Aspiration == "Double" then
		_TCount = 2
	end
	values.Boost.Changed:connect(function()
		local boost = (math.floor(values.Boost.Value)*1.2)-((_Tune.Boost*_TCount)/5)
		gauges.Boost.Needle.Rotation = 45 + 270 * math.min(1,(values.Boost.Value/(_Tune.Boost)/_TCount))
		gauges.PSI.Text = tostring(math.floor(boost).." PSI")
	end)
else
	gauges.Boost:Destroy()
end

values.Gear.Changed:connect(function()
	local gearText = values.Gear.Value
	if gearText == 0 then gearText = "N"
	elseif gearText == -1 then gearText = "R"
	end
	gauges.Gear.Text = gearText
end)

values.TCS.Changed:connect(function()
	if _Tune.TCSEnabled then
		if values.TCS.Value then
			gauges.TCS.TextColor3 = Color3.new(1,170/255,0)
			gauges.TCS.TextStrokeColor3 = Color3.new(1,170/255,0)
			if values.TCSActive.Value then
				wait()
				gauges.TCS.Visible = not gauges.TCS.Visible
			else
				wait()
				gauges.TCS.Visible = false
			end
		else
			gauges.TCS.Visible = true
			gauges.TCS.TextColor3 = Color3.new(1,0,0)
			gauges.TCS.TextStrokeColor3 = Color3.new(1,0,0)
		end
	else
		gauges.TCS.Visible = false
	end
end)

values.TCSActive.Changed:connect(function()
	if _Tune.TCSEnabled then
		if values.TCSActive.Value and values.TCS.Value then
			wait()
			gauges.TCS.Visible = not gauges.TCS.Visible
		elseif not values.TCS.Value then
			wait()
			gauges.TCS.Visible = true
		else
			wait()
			gauges.TCS.Visible = false
		end
	else
		gauges.TCS.Visible = false
	end
end)

gauges.TCS.Changed:connect(function()
	if _Tune.TCSEnabled then
		if values.TCSActive.Value and values.TCS.Value then
			wait()
			gauges.TCS.Visible = not gauges.TCS.Visible
		elseif not values.TCS.Value then
			wait()
			gauges.TCS.Visible = true
		end
	else
		if gauges.TCS.Visible then
			gauges.TCS.Visible = false
		end
	end
end)

script.Parent.Parent.Values.Velocity.Changed:connect(function(property)
	script.Parent.Speedo.Needle.Rotation = 45 + 225 * math.min(1,UNITS[currentUnits].scaling*script.Parent.Parent.Values.Velocity.Value.Magnitude/UNITS[currentUnits].maxSpeed)
	script.Parent.Speed.Text = math.floor(UNITS[currentUnits].scaling*script.Parent.Parent.Values.Velocity.Value.Magnitude) .. " "..UNITS[currentUnits].units
	inspd.Rotation = -90 + (270 / 160) * (math.abs(script.Parent.Parent.Values.Velocity.Value.Magnitude*((10/12) * (60/88))))
end)

values.ABS.Changed:connect(function()
	if _Tune.ABSEnabled then
		if values.ABS.Value then
			gauges.ABS.TextColor3 = Color3.new(1,170/255,0)
			gauges.ABS.TextStrokeColor3 = Color3.new(1,170/255,0)
			if values.ABSActive.Value then
				wait()
				gauges.ABS.Visible = not gauges.ABS.Visible
			else
				wait()
				gauges.ABS.Visible = false
			end
		else
			gauges.ABS.Visible = true
			gauges.ABS.TextColor3 = Color3.new(1,0,0)
			gauges.ABS.TextStrokeColor3 = Color3.new(1,0,0)
		end
	else
		gauges.ABS.Visible = false
	end
end)

values.ABSActive.Changed:connect(function()
	if _Tune.ABSEnabled then
		if values.ABSActive.Value and values.ABS.Value then
			wait()
			gauges.ABS.Visible = not gauges.ABS.Visible
		elseif not values.ABS.Value then
			wait()
			gauges.ABS.Visible = true
		else
			wait()
			gauges.ABS.Visible = false
		end
	else
		gauges.ABS.Visible = false
	end
end)

gauges.ABS.Changed:connect(function()
	if _Tune.ABSEnabled then
		if values.ABSActive.Value and values.ABS.Value then
			wait()
			gauges.ABS.Visible = not gauges.ABS.Visible
		elseif not values.ABS.Value then
			wait()
			gauges.ABS.Visible = true
		end
	else
		if gauges.ABS.Visible then
			gauges.ABS.Visible = false
		end
	end
end)

function PBrake()
	gauges.PBrake.Visible = values.PBrake.Value
end
values.PBrake.Changed:connect(PBrake)

function Gear()
	if values.TransmissionMode.Value == "Auto" then
		gauges.TMode.Text = "A/T"
		gauges.TMode.BackgroundColor3 = Color3.new(1,170/255,0)
	elseif values.TransmissionMode.Value == "Semi" then
		gauges.TMode.Text = "S/T"
		gauges.TMode.BackgroundColor3 = Color3.new(0, 170/255, 127/255)
	else
		gauges.TMode.Text = "M/T"
		gauges.TMode.BackgroundColor3 = Color3.new(1,85/255,.5)
	end
end
values.TransmissionMode.Changed:connect(Gear)

values.Velocity.Changed:connect(function(property)
	gauges.Speedo.Needle.Rotation = 45 + 225 * math.min(1,UNITS[currentUnits].scaling*values.Velocity.Value.Magnitude/UNITS[currentUnits].maxSpeed)
	gauges.Speed.Text = math.floor(UNITS[currentUnits].scaling*values.Velocity.Value.Magnitude) .. " "..UNITS[currentUnits].units
end)

mouse.KeyDown:connect(function(key)
	if key=="v" then
		gauges.Visible=not gauges.Visible
	end
end)

gauges.Speed.MouseButton1Click:connect(function()
	if currentUnits==#UNITS then
		currentUnits = 1
	else
		currentUnits = currentUnits+1
	end
	for i,v in pairs(gauges.Speedo:GetChildren()) do
		v.Visible=v.Name==UNITS[currentUnits].units or v.Name=="Needle" or v.Name=="lns"
	end
	gauges.Speed.Text = math.floor(UNITS[currentUnits].scaling*values.Velocity.Value.Magnitude) .. " "..UNITS[currentUnits].units
end)

wait(.1)
Gear()
PBrake()


Prompt:
--[=[
	@param ... any
	Fires the signal at _all_ clients with any arguments.

	:::note Outbound Middleware
	All arguments pass through any outbound middleware (if any)
	before being sent to the clients.
	:::
]=]

Response:
function RemoteSignal:FireAll(...: any)
	self._re:FireAllClients(self:_processOutboundMiddleware(nil, ...))
end


Prompt:
--[[
	lua-polynomials is a Lua module created by piqey
	(John Kushmer) for finding the roots of second-,
	third- and fourth- degree polynomials.
--]]


Prompt: --Made by Luckymaxer

Response:
Debris = game:GetService("Debris")

Camera = game:GetService("Workspace").CurrentCamera

Sounds = {
	RayHit = script:WaitForChild("Hit")
}

BasePart = Instance.new("Part")
BasePart.Shape = Enum.PartType.Block
BasePart.Material = Enum.Material.Plastic
BasePart.TopSurface = Enum.SurfaceType.Smooth
BasePart.BottomSurface = Enum.SurfaceType.Smooth
BasePart.FormFactor = Enum.FormFactor.Custom
BasePart.Size = Vector3.new(0.2, 0.2, 0.2)
BasePart.CanCollide = true
BasePart.Locked = true
BasePart.Anchored = false

BaseRay = BasePart:Clone()
BaseRay.Name = "Laser"
BaseRay.BrickColor = BrickColor.new("Bright yellow")
BaseRay.Material = Enum.Material.SmoothPlastic
BaseRay.Size = Vector3.new(0.2, 0.2, 0.2)
BaseRay.Anchored = true
BaseRay.CanCollide = false
BaseRayMesh = Instance.new("SpecialMesh")
BaseRayMesh.Name = "Mesh"
BaseRayMesh.MeshType = Enum.MeshType.Brick
BaseRayMesh.Scale = Vector3.new(0.2, 0.2, 1)
BaseRayMesh.Offset = Vector3.new(0, 0, 0)
BaseRayMesh.VertexColor = Vector3.new(1, 1, 1)
BaseRayMesh.Parent = BaseRay

function PlaySound(Position, Sound)
	local SoundPart = BasePart:Clone()
	SoundPart.Name = "ParticlePart"
	SoundPart.Transparency = 1
	SoundPart.Anchored = true
	SoundPart.CanCollide = false
	local SoundObject = Sound:Clone()
	SoundObject.Parent = SoundPart
	Debris:AddItem(SoundPart, 1.5)
	SoundPart.Parent = game:GetService("Workspace")
	SoundPart.CFrame = CFrame.new(Position)
	SoundObject:Play()
end

function FireRay(StartPosition, TargetPosition, Hit)

	local Vec = (TargetPosition - StartPosition)
	local Distance = Vec.magnitude
	local Direction = Vec.unit

	local PX = (StartPosition + (0.0 * Distance) * Direction)
	local PY = (StartPosition + (0.0 * Distance) * Direction)
	local PZ = (StartPosition + (0.0 * Distance) * Direction)

	local DX = (StartPosition - PX).magnitude
	local DY = (PX - PY).magnitude
	local DZ = (PY - PZ).magnitude

	local Limit = 2
	local AX = (PX + Vector3.new(math.random(math.max(-Limit, (-0.0 * DX)), math.min(Limit, (0.21 * DX))),math.random(math.max(-Limit, (-0.21 * DX)),math.min(Limit, (0.21 * DX))), math.random(math.max(-Limit, (-0.21 * DX)), math.min(Limit, (0.21 * DX)))))
	local AY = (PY + Vector3.new(math.random(math.max(-Limit, (-0.0 * DY)), math.min(Limit, (0.21 * DY))),math.random(math.max(-Limit, (-0.21 * DY)),math.min(Limit, (0.21 * DY))), math.random(math.max(-Limit, (-0.21 * DY)), math.min(Limit, (0.21 * DY)))))
	local AZ = (PZ + Vector3.new(math.random(math.max(-Limit, (-0.0 * DZ)), math.min(Limit, (0.21 * DZ))),math.random(math.max(-Limit, (-0.21 * DZ)),math.min(Limit, (0.21 * DZ))), math.random(math.max(-Limit, (-0.21 * DZ)), math.min(Limit, (0.21 * DZ)))))

	local Rays = {
		{Distance = (AX - StartPosition).magnitude, Direction = CFrame.new(StartPosition, AX)},
		{Distance = (AY - AX).magnitude, Direction = CFrame.new(AX, AY)},
		{Distance = (AZ - AY).magnitude, Direction = CFrame.new(AY, AZ)},
		{Distance = (TargetPosition - AZ).magnitude, Direction = CFrame.new(AZ, TargetPosition)},
	}

	for i, v in pairs(Rays) do
		local Ray = BaseRay:Clone()
		Ray.BrickColor = BrickColor.new("Bright yellow")
		Ray.Reflectance = 0.4
		Ray.Transparency = 0.7 --1
		local Mesh = Ray.Mesh
		Mesh.Scale = (Vector3.new(0.15, 0.15, (v.Distance / 1)) * 5)
		Ray.CFrame = (v.Direction * CFrame.new(0, 0, (-0.5 * v.Distance)))
		Debris:AddItem(Ray, (0.1 / (#Rays - (i - 1))))
		Ray.Parent = Camera
	end

end

pcall(function()
	local StartPosition = script:WaitForChild("StartPosition").Value
	local TargetPosition = script:WaitForChild("TargetPosition").Value
	local RayHit = script:WaitForChild("RayHit").Value
	FireRay(StartPosition, TargetPosition)
	if RayHit then
		PlaySound(TargetPosition, Sounds.RayHit)
	end
end)

Debris:AddItem(script, 1)


Prompt: --- Scan for world FX modules

Response:
for _, m in ipairs(script:GetChildren()) do
	if m.ClassName == "ModuleScript" then
		WorldFX[m.Name] = require(m)
	end
end


Response:
local _WHEELTUNE = {

	TireWearOn         = true    ,

    --Friction and Wear
    FWearSpeed        = .6    , --Don't change this
    FTargetFriction    = .93   , -- .88 to .93
    FMinFriction     = 0.35   , --Don't change this

    RWearSpeed        = .6    , --Don't change this
    RTargetFriction    = .93  , -- .88 to .93
    RMinFriction    = 0.35    , --Don't change this

    --Tire Slip
    TCSOffRatio        = 1     , --Don't change this
    WheelLockRatio    = 1/6    , --Don't change this
    WheelspinRatio    = 1/1.2  ,  --Don't change this

    --Wheel Properties
    FFrictionWeight    = 0.6      , --Don't change this
    RFrictionWeight    = 0.6      , --Don't change this
    FLgcyFrWeight    = 0        , --Don't change this
    RLgcyFrWeight    = 0        , --Don't change this

    FElasticity        = 0     , --Don't change this
    RElasticity        = 0     , --Don't change this
    FLgcyElasticity    = 0     , --Don't change this
    RLgcyElasticity    = 0     , --Don't change this

    FElastWeight    = 1      , --Don't change this
    RElastWeight    = 1      , --Don't change this
    FLgcyElWeight    = 10    , --Don't change this
    RLgcyElWeight    = 10    , --Don't change this

    --Wear Regen
    RegenSpeed        = 3.6		, --Don't change this
}