Prompt: -- When tool deselected

Response:
function onDeselected(mouse)
	myMouse = nil
end

rayPart					= Instance.new("Part")
rayPart.Name			= "MG Ray"
rayPart.Transparency	= .5
rayPart.Anchored		= true
rayPart.CanCollide		= false
rayPart.TopSurface		= Enum.SurfaceType.Smooth
rayPart.BottomSurface	= Enum.SurfaceType.Smooth
rayPart.formFactor		= Enum.FormFactor.Custom
rayPart.BrickColor		= BrickColor.new("Bright yellow")
rayPart.Reflectance		= 0
rayPart.Material = Enum.Material.SmoothPlastic

function fireCoax()
	local MGAmmo = tankStats.MGAmmo;
	if MGAmmo.Value <= 0 then
		return false;
	end;

	local machineGun = parts.Parent.Gun.Coax
	local PL				= Instance.new("PointLight")
	PL.Parent				= machineGun
	PL.Brightness			= 50
	PL.Color				= Color3.new(255, 255, 0)
	PL.Range				= 15
	PL.Shadows				= true

	MGAmmo.Value = MGAmmo.Value - 1;
	machineGun.Sound:Play();

	local offset = (parts.Parent.Gun.Muzzle.CFrame * CFrame.new(0,100,0).p
                    - parts.Parent.Gun.Muzzle.Position).unit * 999;
    local ray = Ray.new(machineGun.Position, offset);


Prompt: -- Public Constructors

Response:
function RadialMenuClass.new(subN, tPercent, rotation, ZIndex)
	local self = setmetatable({}, RadialMenuClass)

	self._Maid = Lazy.Utilities.Maid.new()
	self._ClickedBind = Instance.new("BindableEvent")
	self._HoverBind = Instance.new("BindableEvent")
	self._LastHoverIndex = nil

	self.Frame = CreateRadial(subN, tPercent, rotation, ZIndex)
	self.Rotation = rotation
	self.SubN = subN

	self.Enabled = true
	self.DeadZoneIn = 0.5
	self.DeadZoneOut = math.huge

	self.Clicked = self._ClickedBind.Event
	self.Hover = self._HoverBind.Event

	init(self)

	self:SetDialProps{ImageColor3 = Color3.new(0, 0, 0)}
	self:SetRadialProps{
		ImageColor3 = Color3.new(0, 0, 0),
		ImageTransparency = 0.7
	}

	return self
end


Prompt: -- Decompiled with Visenya | https://targaryentech.com

Response:
local Tune = {}
Tune.LoadDelay = 1
Tune.AutoStart = false
Tune.AutoFlip = true
Tune.FCamber = -0.2
Tune.RCamber = -0.3
Tune.FCaster = 0
Tune.FToe = 0
Tune.RToe = 0
Tune.Weight = 3400
Tune.WeightBSize = {
  6,
  4,
  15
}
Tune.WeightDist = 54
Tune.CGHeight = 0.8
Tune.WBVisible = false
Tune.FWheelDensity = 0.1
Tune.RWheelDensity = 0.1
Tune.FWLgcyDensity = 1
Tune.RWLgcyDensity = 1
Tune.AxleSize = 2
Tune.AxleDensity = 0.1
Tune.SusEnabled = true
Tune.FSusDamping = 1200
Tune.FSusStiffness = 9000
Tune.FAntiRoll = 553
Tune.FSusLength = 2
Tune.FPreCompress = 0.3
Tune.FExtensionLim = 0.3
Tune.FCompressLim = 0.1
Tune.FSusAngle = 80
Tune.FWsBoneLen = 5
Tune.FWsBoneAngle = 0
Tune.FAnchorOffset = {
  -0.4,
  -0.5,
  0
}
Tune.RSusDamping = 1200
Tune.RSusStiffness = 9000
Tune.FAntiRoll = 650
Tune.RSusLength = 1.8
Tune.RPreCompress = 0.3
Tune.RExtensionLim = 0.3
Tune.RCompressLim = 0.1
Tune.RSusAngle = 80
Tune.RWsBoneLen = 5
Tune.RWsBoneAngle = 0
Tune.RAnchorOffset = {
  -0.4,
  -0.5,
  0
}
Tune.SusVisible = true
Tune.WsBVisible = false
Tune.SusRadius = 0.2
Tune.SusThickness = 0.1
Tune.SusColor = "Bright red"
Tune.SusCoilCount = 6
Tune.WsColor = "Black"
Tune.WsThickness = 0.1
Tune.FGyroDamp = 100
Tune.RGyroDamp = 100
Tune.SteerInner = 32
Tune.SteerOuter = 33
Tune.SteerSpeed = 0.1
Tune.ReturnSpeed = 0.18
Tune.SteerDecay = 240
Tune.MinSteer = 10
Tune.MSteerExp = 1
Tune.SteerD = 1000
Tune.SteerMaxTorque = 18000
Tune.SteerP = 20000
Tune.IdleRPM = 800
Tune.PeakRPM = 8500
Tune.Redline = 9000
Tune.ElectricHorsepower = 570
Tune.ElectricEqPoint = 10000
Tune.ElectricPeakSharpness = 4.8
Tune.ElectricCurveMult = 0.013
Tune.InclineComp = 1.2
Tune.Aspiration = "Natural"
Tune.Boost = 5
Tune.TurboSize = 80
Tune.CompressRatio = 9
Tune.Sensitivity = 0.05
Tune.RevAccel = 300
Tune.RevDecay = 75
Tune.RevBounce = 500
Tune.IdleThrottle = 3
Tune.Flywheel = 50
Tune.Config = "RWD"
Tune.TorqueVector = 0
Tune.FDiffSlipThres = 50
Tune.FDiffLockThres = 50
Tune.RDiffSlipThres = 80
Tune.RDiffLockThres = 20
Tune.CDiffSlipThres = 50
Tune.CDiffLockThres = 50
Tune.TCSEnabled = true
Tune.TCSThreshold = 20
Tune.TCSGradient = 20
Tune.TCSLimit = 10
Tune.TransModes = {"Manual", "Semi"}
Tune.ClutchMult = 1
Tune.ClutchSens = 0.4
Tune.Stall = true
Tune.AutoShiftMode = "RPM"
Tune.AutoUpThresh = -200
Tune.AutoDownThresh = 1400
Tune.FinalDrive = 3.97
Tune.Ratios = {
  2.93,
  0,
  3.75,
  2.38,
  1.72,
  1.34,
  1.11,
  0.96,
  0.84
}
Tune.FDMult = 1
Tune.ABSEnabled = true
Tune.ABSThreshold = 20
Tune.FBrakeForce = 1500
Tune.RBrakeForce = 1000
Tune.PBrakeForce = 5000
Tune.FLgcyBForce = 15000
Tune.RLgcyBForce = 10000
Tune.LgcyPBForce = 25000
Tune.Peripherals = {
  MSteerWidth = 67,
  MSteerDZone = 10,
  ControlLDZone = 5,
  ControlRDZone = 5
}
Tune.Controls = {
  ToggleTCS = Enum.KeyCode.T,
  ToggleABS = Enum.KeyCode.Y,
  ToggleTransMode = Enum.KeyCode.M,
  ToggleMouseDrive = Enum.KeyCode.R,
  Throttle = Enum.KeyCode.Up,
  Brake = Enum.KeyCode.Down,
  SteerLeft = Enum.KeyCode.Left,
  SteerRight = Enum.KeyCode.Right,
  Throttle2 = Enum.KeyCode.W,
  Brake2 = Enum.KeyCode.S,
  SteerLeft2 = Enum.KeyCode.A,
  SteerRight2 = Enum.KeyCode.D,
  ShiftUp = Enum.KeyCode.E,
  ShiftDown = Enum.KeyCode.Q,
  Clutch = Enum.KeyCode.LeftShift,
  PBrake = Enum.KeyCode.P,
  MouseThrottle = Enum.UserInputType.MouseButton1,
  MouseBrake = Enum.UserInputType.MouseButton2,
  MouseClutch = Enum.KeyCode.W,
  MouseShiftUp = Enum.KeyCode.E,
  MouseShiftDown = Enum.KeyCode.Q,
  MousePBrake = Enum.KeyCode.LeftShift,
  ContlrThrottle = Enum.KeyCode.ButtonR2,
  ContlrBrake = Enum.KeyCode.ButtonL2,
  ContlrSteer = Enum.KeyCode.Thumbstick1,
  ContlrShiftUp = Enum.KeyCode.ButtonY,
  ContlrShiftDown = Enum.KeyCode.ButtonX,
  ContlrClutch = Enum.KeyCode.ButtonR1,
  ContlrPBrake = Enum.KeyCode.ButtonL1,
  ContlrToggleTMode = Enum.KeyCode.DPadUp,
  ContlrToggleTCS = Enum.KeyCode.DPadDown,
  ContlrToggleABS = Enum.KeyCode.DPadRight
}
Tune.WeightScaling = 0.02
Tune.LegacyScaling = 0.1
return Tune


Prompt: --("IsAPlayer")

Response: if pl.PlayerGui:findFirstChild("VehicleGui")~=nil then


Prompt: -- Night time

Response:
night_h1,night_m1 = 18,50	--start
night_h2,night_m2 = 5,30	-- end
local night_time1 = (night_h1 + (night_m1/60)) * 60
local night_time2 = (night_h2 + (night_m2/60)) * 60


Prompt: --[[Drivetrain]]

Response:
	Tune.Config			= "RWD"		--"FWD" , "RWD" , "AWD"

	--Differential Settings
	Tune.FDiffSlipThres	= 50		-- 1 - 100%				(Max threshold of applying full lock determined by deviation from avg speed)
	Tune.FDiffLockThres	= 50		-- 0 - 100%				(0 - Bias toward slower wheel, 100 - Bias toward faster wheel)
	Tune.RDiffSlipThres	= 30		-- 1 - 100%
	Tune.RDiffLockThres	= 60		-- 0 - 100%
	Tune.CDiffSlipThres	= 50		-- 1 - 100%				[AWD Only]
	Tune.CDiffLockThres	= 50		-- 0 - 100%				[AWD Only]

	--Traction Control Settings
	Tune.TCSEnabled		= true		-- Implements TCS
	Tune.TCSThreshold	= 18		-- Slip speed allowed before TCS starts working (in SPS)
	Tune.TCSGradient	= 18		-- Slip speed gradient between 0 to max reduction (in SPS)
	Tune.TCSLimit		= 9		-- Minimum amount of torque at max reduction (in percent)


Response:
function tagHumanoid(humanoid)
	local plr=game.Players:playerFromCharacter(sp.Parent)
	if plr~=nil then
		local tag=Instance.new("ObjectValue")
		tag.Value=plr
		tag.Name="creator"
		tag.Parent=humanoid
		delay(2,function()
			if tag~=nil then
				tag.Parent=nil
			end
		end)
	end
end

function reload(mouse)
	reloading=true
	mouse.Icon=ReloadCursor
	while sp.Ammo.Value<ClipSize and reloading and enabled do
		wait(ReloadTime/ClipSize)
		if reloading then
			sp.Ammo.Value=sp.Ammo.Value+1
			check()
		else
			break
		end
	end
	check()
	mouse.Icon=Cursors[1]
	reloading=false
end

function onKeyDown(key,mouse)
	key=key:lower()
	if key=="r" and not reloading then
		reload(mouse)
	end
end

function movecframe(p,pos)
	p.Parent=game.Lighting
	p.Position=pos
	p.Parent=game.Workspace
end

function fire(aim)
	sp.Handle.Fire:Play()

	t=r.Stepped:wait()
	last6=last5
	last5=last4
	last4=last3
	last3=last2
	last2=last
	last=t

	local bullet=Bullet:clone()
	local totalDist=0
	Lengthdist=-RayLength/.5
	local startpoint=sp.Handle.CFrame*BarrlePos
	local dir=(aim)-startpoint
	dir=computeDirection(dir)
	local cfrm=CFrame.new(startpoint, dir+startpoint)
	local hit,pos,normal,time=raycast(game.Workspace, startpoint, cfrm*Vector3.new(0,0,Lengthdist)-startpoint, function(brick)
		if brick.Name=="Glass" then
			return true
		elseif brick.Name=="Bullet" or brick.Name=="BulletTexture" then
			return false
		elseif brick:IsDescendantOf(sp.Parent) then
			return false
		elseif brick.Name=="Handle" then
			if brick.Parent:IsDescendantOf(sp.Parent) then
				return false
			else
				return true
			end
		end
		return true
	end)
	bullet.Parent=game.Workspace
	if hit~=nil then
		local humanoid=hit.Parent:FindFirstChild("Humanoid")
		if humanoid~=nil then
			local damage=math.random(BaseDamage-(BaseDamage*.25),BaseDamage+(BaseDamage*.25))
			if hit.Name=="Head" then
				damage=damage*1.3
			elseif hit.Name=="Torso" then
			else
				damage=damage*.75
			end
			if humanoid.Health>0 then
				local eplr=game.Players:playerFromCharacter(humanoid.Parent)
				local plr=game.Players:playerFromCharacter(sp.Parent)
				if eplr~=nil and plr~=nil then
				--	if eplr.TeamColor~=plr.TeamColor or eplr.Neutral or plr.Neutral then
						tagHumanoid(humanoid)
						humanoid:TakeDamage(damage)
				--	end
				else
					tagHumanoid(humanoid)
					humanoid:TakeDamage(damage)
				end
			end
		end
		if (hit.Name == "Part10") or (hit.Name == "Part11") or (hit.Name == "Part21") or (hit.Name == "Part23") or (hit.Name == "Part24") or (hit.Name == "Part8") then
			rand = math.random(1,5)
			if rand == 3 then
				workspace.GlassSound:play()
				hit:breakJoints()
			end
		end
		if (hit.Parent:findFirstChild("Hit")) then
			hit.Parent.Health.Value = hit.Parent.Health.Value - BaseDamage/3
		end
		distance=(startpoint-pos).magnitude
		bullet.CFrame=cfrm*CFrame.new(0,0,-distance/2)
		bullet.Mesh.Scale=Vector3.new(.15,.15,distance)
	else
		bullet.CFrame=cfrm*CFrame.new(0,0,-RayLength/2)
		bullet.Mesh.Scale=Vector3.new(.15,.15,RayLength)
	end
	if pos~=nil then
	end
	local deb=game:FindFirstChild("Debris")
	if deb==nil then
		local debris=Instance.new("Debris")
		debris.Parent=game
	end
	check()
	game.Debris:AddItem(bullet,.05)
end

function onButton1Up(mouse)
	down=false
end

function onButton1Down(mouse)
	h=sp.Parent:FindFirstChild("Humanoid")
	if not enabled or reloading or down or h==nil then
		return
	end
	if sp.Ammo.Value>0 and h.Health>0 then
		--[[if sp.Ammo.Value<=0 then
			if not reloading then
				reload(mouse)
			end
			return
		end]]
		down=true
		enabled=false
		while down do
			if sp.Ammo.Value<=0 then
				break
			end
			if burst then
				local startpoint=sp.Handle.CFrame*BarrlePos
				local mag=(mouse.Hit.p-startpoint).magnitude
				local rndm=Vector3.new(math.random(-(Spread/10)*mag,(Spread/10)*mag),math.random(-(Spread/10)*mag,(Spread/10)*mag),math.random(-(Spread/10)*mag,(Spread/10)*mag))
				fire(mouse.Hit.p+rndm)
				sp.Ammo.Value=sp.Ammo.Value-1
				if sp.Ammo.Value<=0 then
					break
				end
				wait(.05)
				local startpoint=sp.Handle.CFrame*BarrlePos
				local mag2=((mouse.Hit.p+rndm)-startpoint).magnitude
				local rndm2=Vector3.new(math.random(-(.1/10)*mag2,(.1/10)*mag2),math.random(-(.1/10)*mag2,(.1/10)*mag2),math.random(-(.1/10)*mag2,(.1/10)*mag2))
				fire(mouse.Hit.p+rndm+rndm2)
				sp.Ammo.Value=sp.Ammo.Value-1
				if sp.Ammo.Value<=0 then
					break
				end
				wait(.05)
				fire(mouse.Hit.p+rndm+rndm2+rndm2)
				sp.Ammo.Value=sp.Ammo.Value-1
			elseif shot then
				sp.Ammo.Value=sp.Ammo.Value-1
				local startpoint=sp.Handle.CFrame*BarrlePos
				local mag=(mouse.Hit.p-startpoint).magnitude
				local rndm=Vector3.new(math.random(-(Spread/10)*mag,(Spread/10)*mag),math.random(-(Spread/10)*mag,(Spread/10)*mag),math.random(-(Spread/10)*mag,(Spread/10)*mag))
				fire(mouse.Hit.p+rndm)
				local mag2=((mouse.Hit.p+rndm)-startpoint).magnitude
				local rndm2=Vector3.new(math.random(-(.2/10)*mag2,(.2/10)*mag2),math.random(-(.2/10)*mag2,(.2/10)*mag2),math.random(-(.2/10)*mag2,(.2/10)*mag2))
				fire(mouse.Hit.p+rndm+rndm2)
				local rndm3=Vector3.new(math.random(-(.2/10)*mag2,(.2/10)*mag2),math.random(-(.2/10)*mag2,(.2/10)*mag2),math.random(-(.2/10)*mag2,(.2/10)*mag2))
				fire(mouse.Hit.p+rndm+rndm3)
				local rndm4=Vector3.new(math.random(-(.2/10)*mag2,(.2/10)*mag2),math.random(-(.2/10)*mag2,(.2/10)*mag2),math.random(-(.2/10)*mag2,(.2/10)*mag2))
				fire(mouse.Hit.p+rndm+rndm4)
			else
				sp.Ammo.Value=sp.Ammo.Value-1
				local startpoint=sp.Handle.CFrame*BarrlePos
				local mag=(mouse.Hit.p-startpoint).magnitude
				local rndm=Vector3.new(math.random(-(Spread/10)*mag,(Spread/10)*mag),math.random(-(Spread/10)*mag,(Spread/10)*mag),math.random(-(Spread/10)*mag,(Spread/10)*mag))
				fire(mouse.Hit.p+rndm)
			end
			wait(Firerate)
			if not automatic then
				break
			end
		end
		enabled=true
	else
		sp.Handle.Trigger:Play()
	end
end

function onEquippedLocal(mouse)
	if mouse==nil then
		print("Mouse not found")
		return
	end
	mouse.Icon=Cursors[1]
	mouse.KeyDown:connect(function(key) onKeyDown(key,mouse) end)
	mouse.Button1Down:connect(function() onButton1Down(mouse) end)
	mouse.Button1Up:connect(function() onButton1Up(mouse) end)
	check()
	equiped=true
	if #Cursors>1 then
		while equiped do
			t=r.Stepped:wait()
			local action=sp.Parent:FindFirstChild("Pose")
			if action~=nil then
				if sp.Parent.Pose.Value=="Standing" then
					Spread=MinSpread
				else
					Spread=MinSpread+((4/10)*(MaxSpread-MinSpread))
				end
			else
				Spread=MinSpread
			end
			if t-last<SpreadRate then
				Spread=Spread+.1*(MaxSpread-MinSpread)
			end
			if t-last2<SpreadRate then
				Spread=Spread+.1*(MaxSpread-MinSpread)
			end
			if t-last3<SpreadRate then
				Spread=Spread+.1*(MaxSpread-MinSpread)
			end
			if t-last4<SpreadRate then
				Spread=Spread+.1*(MaxSpread-MinSpread)
			end
			if t-last5<SpreadRate then
				Spread=Spread+.1*(MaxSpread-MinSpread)
			end
			if t-last6<SpreadRate then
				Spread=Spread+.1*(MaxSpread-MinSpread)
			end
			if not reloading then
				local percent=(Spread-MinSpread)/(MaxSpread-MinSpread)
				for i=0,#Cursors-1 do
					if percent>(i/(#Cursors-1))-((1/(#Cursors-1))/2) and percent<(i/(#Cursors-1))+((1/(#Cursors-1))/2) then
						mouse.Icon=Cursors[i+1]
					end
				end
			end
			wait(Firerate*.9)
		end
	end
end
function onUnequippedLocal(mouse)
	equiped=false
	reloading=false
end
sp.Equipped:connect(onEquippedLocal)
sp.Unequipped:connect(onUnequippedLocal)
check()


Prompt:
-- -- -- -- -- -- --
--DIRECTION SCROLL--
-- -- -- -- -- -- --

Response:
Lift:WaitForChild("Direction").Changed:connect(function(val)
	if val == 1 then
		This.Display.ARW1.U1.BrickColor = BrickColor.new("Institutional white")
		This.Display.ARW1.U2.BrickColor = BrickColor.new("Institutional white")
		This.Display.ARW1.M1.BrickColor = BrickColor.new("Institutional white")
		This.Display.ARW1.M2.BrickColor = BrickColor.new("Institutional white")
		This.Display.ARW1.D1.BrickColor = BrickColor.new("Really black")
		This.Display.ARW1.D2.BrickColor = BrickColor.new("Really black")
	elseif val == -1 then
		This.Display.ARW1.U1.BrickColor = BrickColor.new("Really black")
		This.Display.ARW1.U2.BrickColor = BrickColor.new("Really black")
		This.Display.ARW1.M1.BrickColor = BrickColor.new("Institutional white")
		This.Display.ARW1.M2.BrickColor = BrickColor.new("Institutional white")
		This.Display.ARW1.D1.BrickColor = BrickColor.new("Institutional white")
		This.Display.ARW1.D2.BrickColor = BrickColor.new("Institutional white")
	else
		This.Display.ARW1.U1.BrickColor = BrickColor.new("Really black")
		This.Display.ARW1.U2.BrickColor = BrickColor.new("Really black")
		This.Display.ARW1.M1.BrickColor = BrickColor.new("Really black")
		This.Display.ARW1.M2.BrickColor = BrickColor.new("Really black")
		This.Display.ARW1.D1.BrickColor = BrickColor.new("Really black")
		This.Display.ARW1.D2.BrickColor = BrickColor.new("Really black")
	end
end)


Prompt:
--[[*
 * Test `input` with the given `regex`. This is used by the main
 * `picomatch()` function to test the input string.
 *
 * ```js
 * const picomatch = require('picomatch');
 * // picomatch.test(input, regex[, options]);
 *
 * console.log(picomatch.test('foo/bar', /^(?:([^/]*?)\/([^/]*?))$/));
 * // { isMatch: true, match: [ 'foo/', 'foo', 'bar' ], output: 'foo/bar' }
 * ```
 * @param {String} `input` String to test.
 * @param {RegExp} `regex`
 * @return {Object} Returns an object with matching info.
 * @api public
 ]]

Response:
function picomatch.test(input: string, regex: RegExp, options: Object?, ref_: Object?)
	local ref: Object = ref_ or {}
	local glob, posix = ref.glob, ref.posix

	if typeof(input) ~= "string" then
		error(Error.new("TypeError: Expected input to be a string"))
	end

	if input == "" then
		return { isMatch = false, output = "" }
	end

	local opts: Object = options or {}
	local format = if Boolean.toJSBoolean(opts.format)
		then opts.format
		else if Boolean.toJSBoolean(posix) then utils.toPosixSlashes else nil
	local match = input == glob
	local output = if match and Boolean.toJSBoolean(format) then format(input) else input

	if match == false then
		output = if Boolean.toJSBoolean(format) then format(input) else input
		match = output == glob
	end

	if match == false or opts.capture == true then
		if opts.matchBase == true or opts.basename == true then
			match = picomatch.matchBase(input, regex, options, posix)
		else
			-- ROBLOX FIXME: Luau narrows the type to boolean and doesn't allow for result of RegExp:exec to be assigned
			match = regex:exec(output) :: any
		end
	end

	return { isMatch = Boolean.toJSBoolean(match), match = match, output = output }
end


Prompt:
--[[*
 * Use invariant() to assert state which your program assumes to be true.
 *
 * Provide sprintf-style format (only %s is supported) and arguments
 * to provide information about what broke and what you were
 * expecting.
 *
 * The invariant message will be stripped in production, but the invariant
 * will remain to ensure logic does not differ in production.
]]

Response:
local Packages = script.Parent.Parent
local LuauPolyfill = require(Packages.LuauPolyfill)
local Error = LuauPolyfill.Error

local function invariant(condition, format, ...)
	-- ROBLOX TODO: we should encapsulate all formatting compatibility here,
	-- rather than spreading workarounds throughout the codebase, eg this
	-- should print an array without the need for a table.concat on the consumer side
	if not condition then
		error(Error(string.format(format, ...)))
	end
end

return invariant


Prompt:
-- -- -- -- -- -- --
--DIRECTION SCROLL--
-- -- -- -- -- -- --

Response:
This.Parent.Parent.Parent.Parent:WaitForChild("Direction", 120).Changed:connect(function(val)
	if val == 1 then
		This.Frame.Direction.Text = "▲"
		repeat
			for i = 0.2, -0.8, -0.02 do
				This.Frame.Direction.UIGradient.Offset = Vector2.new(0,i)
				wait()
			end
		until This.Parent.Parent.Parent.Parent.Direction.Value ~= 1
	elseif val == -1 then
		This.Frame.Direction.Text = "▼"
		repeat
			for i = -0.8, 0.2, 0.02 do
				This.Frame.Direction.UIGradient.Offset = Vector2.new(0,i)
				wait()
			end
		until This.Parent.Parent.Parent.Parent.Direction.Value ~= -1
	else
		This.Frame.Direction.Text = ""
	end
end)


Prompt:
--[[
Creates a bridge.
--]]

Response:
return function(StartPos,EndPos,InnerSectionCount,Parent)
	local DistanceBetween = (EndPos - StartPos).magnitude
	local BridgeLength = math.ceil(DistanceBetween/8) * 8
	local CenterCF = CFrame.new(StartPos,EndPos) * CFrame.new(0,0,-DistanceBetween/2)

	--Create the container.
	local Container = Instance.new("Model")
	Container.Name = "Bridge"
	Container.Parent = Parent

	--Create the spines.
	local Spines = {}
	local SpineCount = InnerSectionCount + 1
	for i = 1,SpineCount do
		local Spine = Instance.new("Part")
		Spine.BrickColor = BrickColor.new("Dark stone grey")
		Spine.CFrame = CenterCF * CFrame.new(6 * ((-SpineCount/2) - 0.5 + i),0,0)
		Spine.Size = Vector3.new(2,1,BridgeLength - 2)
		Spine.Anchored = true
		Spine.Parent = Container

		table.insert(Spines,Spine)
	end

	--Create the path parts.
	local RelativeOffsetStart = CFrame.new(0,1,-(BridgeLength/2) + 4)
	local BridgeSections = BridgeLength/8
	local Floors = {}
	local FloorCount = InnerSectionCount + 2
	for i = 1,FloorCount do
		local RowSections = {}
		table.insert(Floors,RowSections)

		for j = 0,BridgeSections - 1 do
			local RelativeOffset = RelativeOffsetStart * CFrame.new(0,0,8 * j)
			local SectionCF = CenterCF * RelativeOffset

			local PathPart = Instance.new("Part")
			PathPart.BrickColor = BrickColor.new("Medium stone grey")
			PathPart.CFrame = SectionCF * CFrame.new(6 * ((-SpineCount/2) - 1 + i),0,0)
			PathPart.Size = Vector3.new(6,1,8)
			PathPart.Parent = Container
			if Spines[i - 1] then WeldBetween(Spines[i - 1],PathPart) end
			if Spines[i] then WeldBetween(Spines[i],PathPart) end
			table.insert(RowSections,PathPart)
		end
	end

	--Create the sides.
	for i = 0,BridgeSections - 1 do
		local RelativeOffset = RelativeOffsetStart * CFrame.new(0,0,8 * i)
		local SectionCF = CenterCF * RelativeOffset

		--Create the left side.
		local LeftSide = Instance.new("Part")
		LeftSide.BrickColor = BrickColor.new("Medium stone grey")
		LeftSide.CFrame = SectionCF * CFrame.new(-(6 * (FloorCount/2)) + 1,1.25,0)
		LeftSide.Size = Vector3.new(2,1.5,8)
		LeftSide.Parent = Container
		WeldBetween(LeftSide,Floors[1][i + 1])

		local LeftTop = Instance.new("Part")
		LeftTop.BrickColor = BrickColor.new("Dark stone grey")
		LeftTop.CFrame = SectionCF * CFrame.new(-(6 * (FloorCount/2)) + 1,2.5,0)
		LeftTop.Size = Vector3.new(2,1,8)
		LeftTop.Parent = Container
		WeldBetween(LeftSide,LeftTop)

		--Create the right side.
		local RightSide = Instance.new("Part")
		RightSide.BrickColor = BrickColor.new("Medium stone grey")
		RightSide.CFrame = SectionCF * CFrame.new((6 * (FloorCount/2)) - 1,1.25,0)
		RightSide.Size = Vector3.new(2,1.5,8)
		RightSide.Parent = Container
		WeldBetween(RightSide,Floors[#Floors][i + 1])

		local RightTop = Instance.new("Part")
		RightTop.BrickColor = BrickColor.new("Dark stone grey")
		RightTop.CFrame = SectionCF * CFrame.new((6 * (FloorCount/2)) - 1,2.5,0)
		RightTop.Size = Vector3.new(2,1,8)
		RightTop.Parent = Container
		WeldBetween(RightSide,RightTop)
	end
end


Prompt:
--fs.Reflectance = 0
--bs.Reflectance = 0

Response:
end
if val1.Value > 120 and val1.Value <= 130 then
ch1m.MaxVelocity = 0.6+(val1.Value-120)*0.005
ch2m.MaxVelocity = 0.6+(val1.Value-120)*0.005
ch3m.MaxVelocity = 0.6+(val1.Value-120)*0.005
ch1.Transparency = 1
ch2.Transparency = 1
ch3.Transparency = 1
fs.Transparency = 1-(val1.Value-120)*0.01
bs.Transparency = 1-(val1.Value-120)*0.01


Prompt: -- Import relevant references

Response:
Selection = Core.Selection;
Create = Core.Create;
Support = Core.Support;
Security = Core.Security;
Support.ImportServices();


Prompt: --Aesthetics

Response:
Tune.SusVisible		= false			-- Spring Visible
Tune.WsBVisible		= false			-- Wishbone Visible
Tune.SusRadius		= .2			-- Suspension Coil Radius
Tune.SusThickness	= .1			-- Suspension Coil Thickness
Tune.SusColor		= "Really black"	-- Suspension Color [BrickColor]
Tune.SusCoilCount	= 8			-- Suspension Coil Count
Tune.WsColor		= "Black"		-- Wishbone Color [BrickColor]
Tune.WsThickness	= .1			-- Wishbone Rod Thickness


Prompt:
-- Helper function to recursively set the collision group on an object and all of
-- its children

Response:
local function setCollisionGroupRecursive(object, group)
	if object:IsA("BasePart") then
		PhysicsService:SetPartCollisionGroup(object, group)
	end
	for _, child in ipairs(object:GetChildren()) do
		setCollisionGroupRecursive(child, group)
	end
end


Prompt:
--[[
	React does a lot of catching, retrying, and rethrowing errors that would
	typically result in loss of meaningful stack information.

	We use xpcall combined with this error function to capture and rethrow in a
	way that retains some stack information.
]]

Response:
local function describeError(e: string | Error): Error
	if typeof(e) == "string" then
		local _, endOfStackFrame = string.find(e, ":[%d]+: ")
		local message = if endOfStackFrame then string.sub(e, endOfStackFrame + 1) else e

		local err = LuauPolyfill.Error.new(message)
		err.stack = debug.traceback(nil, 2)
		return err
	end
	return e :: Error
end


Prompt:
--[[[Default Controls]]
--Peripheral Deadzones

Response:
Tune.Peripherals = {
	MSteerWidth				= 67		,	-- Mouse steering control width	(0 - 100% of screen width)
	MSteerDZone				= 10		,	-- Mouse steering deadzone (0 - 100%)

	ControlLDZone			= 5			,	-- Controller steering L-deadzone (0 - 100%)
	ControlRDZone			= 5			,	-- Controller steering R-deadzone (0 - 100%)
}


Prompt: -- Auto saving and issue queue managing:

Response:
RunService.Heartbeat:Connect(function()
	-- 1) Auto saving: --
	local auto_save_list_length = #AutoSaveList
	if auto_save_list_length > 0 then
		local auto_save_index_speed = SETTINGS.AutoSaveProfiles / auto_save_list_length
		local os_clock = os.clock()
		while os_clock - LastAutoSave > auto_save_index_speed do
			LastAutoSave = LastAutoSave + auto_save_index_speed
			local profile = AutoSaveList[AutoSaveIndex]
			if os_clock - profile._load_timestamp < SETTINGS.AutoSaveProfiles then
				-- This profile is freshly loaded - auto-saving immediately after loading will cause a warning in the log:
				profile = nil
				for _ = 1, auto_save_list_length - 1 do
					-- Move auto save index to the right:
					AutoSaveIndex = AutoSaveIndex + 1
					if AutoSaveIndex > auto_save_list_length then
						AutoSaveIndex = 1
					end
					profile = AutoSaveList[AutoSaveIndex]
					if os_clock - profile._load_timestamp >= SETTINGS.AutoSaveProfiles then
						break
					else
						profile = nil
					end
				end
			end
			-- Move auto save index to the right:
			AutoSaveIndex = AutoSaveIndex + 1
			if AutoSaveIndex > auto_save_list_length then
				AutoSaveIndex = 1
			end
			-- Perform save call:
			if profile ~= nil then
				task.spawn(SaveProfileAsync, profile) -- Auto save profile in new thread
			end
		end
	end
	-- 2) Issue queue: --
	-- Critical state handling:
	if ProfileService.CriticalState == false then
		if #IssueQueue >= SETTINGS.IssueCountForCriticalState then
			ProfileService.CriticalState = true
			ProfileService.CriticalStateSignal:Fire(true)
			CriticalStateStart = os.clock()
			warn("[ProfileService]: Entered critical state")
		end
	else
		if #IssueQueue >= SETTINGS.IssueCountForCriticalState then
			CriticalStateStart = os.clock()
		elseif os.clock() - CriticalStateStart > SETTINGS.CriticalStateLast then
			ProfileService.CriticalState = false
			ProfileService.CriticalStateSignal:Fire(false)
			warn("[ProfileService]: Critical state ended")
		end
	end
	-- Issue queue:
	while true do
		local issue_time = IssueQueue[1]
		if issue_time == nil then
			break
		elseif os.clock() - issue_time > SETTINGS.IssueLast then
			table.remove(IssueQueue, 1)
		else
			break
		end
	end
end)


Response:
local _WHEELTUNE = {
																		--[[
			SS6 Presets
	[Eco]
		WearSpeed = 1,
		TargetFriction = .7,
		MinFriction = .1,
	[Road]
		WearSpeed = 2,
		TargetFriction = .7,
		MinFriction = .1,
	[Sport]
		WearSpeed = 3,
		TargetFriction = .79,
		MinFriction = .1,											]]

	TireWearOn 		= true	,

	--Friction and Wear
	FWearSpeed		= 2.0	,
	FTargetFriction	= 1.6	,
	FMinFriction 	= 1	,

	RWearSpeed		= 4.0	,
	RTargetFriction	= 2.5	,
	RMinFriction	= 1	,

	--Tire Slip
	TCSOffRatio		= 1/3	,
	WheelLockRatio	= 1/2	,	--SS6 Default = 1/4
	WheelspinRatio	= 1/1.1	,	--SS6 Default = 1/1.2

	--Wheel Properties
	FFrictionWeight	= 1		,	--SS6 Default = 1
	RFrictionWeight	= 1		,	--SS6 Default = 1
	FLgcyFrWeight	= 10	,
	RLgcyFrWeight	= 10	,

	FElasticity		= 0		,	--SS6 Default = .5
	RElasticity		= 0		,	--SS6 Default = .5
	FLgcyElasticity	= 0		,
	RLgcyElasticity	= 0		,

	FElastWeight	= 1		,	--SS6 Default = 1
	RElastWeight	= 1		,	--SS6 Default = 1
	FLgcyElWeight	= 10	,
	RLgcyElWeight	= 10	,

	--Wear Regen
	RegenSpeed		= 9.8		--SS6 Default = 3.6
}


Response:
while true do
Puerta1.BodyVelocity.velocity = Vector3.new(0, 0, 0.5)
Puerta2.BodyVelocity.velocity = Vector3.new(0, 0, -0.5)
script.Parent.Bloqueador.CanCollide = true
wait(6)
Puerta1.BodyVelocity.velocity = Vector3.new(0, 0, 0)
Puerta2.BodyVelocity.velocity = Vector3.new(0, 0, 0)
break
end


Prompt:
-- This value is exposed as a private value so that the test code can stay in
-- sync with what event we listen to for dispatching the Changed event.
-- It may not be Heartbeat in the future.

Response:
Store._flushEvent = RunService.Heartbeat

Store.__index = Store


Prompt:
--[[**
	ensures Roblox ColorSequenceKeypoint type

	@param value The value to check against

	@returns True iff the condition is satisfied, false otherwise
**--]]

Response: t.ColorSequenceKeypoint = primitive("ColorSequenceKeypoint")


Prompt: -- Variables

Response:
local gui = script.Parent
local player = game.Players.LocalPlayer
local character = player.Character
local humanoid = character.Humanoid
local bfCreateIndicator = gui.CreateIndicator


Prompt:
--[=[
	@deprecated v1.3.0 -- Use `Signal:Once` instead.
	@param fn ConnectionFn
	@return SignalConnection
]=]

Response:
function Signal:ConnectOnce(fn)
	return self:Once(fn)
end


Prompt: --Set up controller events.

Response:
UserInputService.GamepadConnected:Connect(UpdateActiveButton)
UserInputService.GamepadDisconnected:Connect(UpdateActiveButton)
GuiService.Changed:Connect(UpdateActiveButton)

return ControllerGroups


Prompt: -- Denotes children instances in an instance or component's property table.

Response:
export type SpecialKey = {
	type: string, -- replace with "SpecialKey" when Luau supports singleton types
	kind: string,
	stage: string, -- replace with "self" | "descendants" | "ancestor" | "observer" when Luau supports singleton types
	apply: (SpecialKey, value: any, applyTo: Instance, cleanupTasks: {Task}) -> ()
}


Prompt: --[ Get Items ]--

Response:
local HoldKey = script:WaitForChild("HoldKey")

local Humanoid = Avatar:WaitForChild("Humanoid")
local Torso = Avatar:WaitForChild("Torso")
local RH = Torso:WaitForChild("Right Hip")
local LH = Torso:WaitForChild("Left Hip")

local RL = Avatar:WaitForChild("Right Leg")
local LL = Avatar:WaitForChild("Left Leg")

local RJ = Avatar:WaitForChild("HumanoidRootPart"):WaitForChild("RootJoint")


Prompt: --Input Mode

Response:
if UIS.GamepadEnabled then
	Input.InputMode = "Gamepad"
elseif UIS.TouchEnabled then
	Input.InputMode = "Touch"
	spawn(RunTouchControls)
end


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

Response:
return function(p1, p2, ...)
	local v1 = "";

		for v2, v3 in ipairs({ ... }) do
		if not v2 then
			break;
		end;
		if v1 == "" then
			v1 = "+ " .. v3;
		else
			v1 = v1 .. "\n+ " .. v3;
		end;
	end;
	p1.desc.Text = v1;
end;


Prompt:
------------------------------------------------------------------------------
--------------------[ FUNCTIONS ]---------------------------------------------
------------------------------------------------------------------------------

Response:
local CreateShockwave = function(Center, Radius)
	local Shockwave = Instance.new("Part")
	Shockwave.BrickColor = S.ShockwaveColor
	Shockwave.Material = Enum.Material.SmoothPlastic
	Shockwave.Name = "Shockwave"
	Shockwave.Anchored = true
	Shockwave.CanCollide = false
	Shockwave.FormFactor = Enum.FormFactor.Symmetric
	Shockwave.Size = VEC3(1, 1, 1)
	Shockwave.BottomSurface = Enum.SurfaceType.Smooth
	Shockwave.TopSurface = Enum.SurfaceType.Smooth
	local Mesh = Instance.new("SpecialMesh")
	Mesh.MeshType = Enum.MeshType.Sphere
	Mesh.Scale = VEC3()
	Mesh.Parent = Shockwave
	Shockwave.Parent = Main.Parent
	Shockwave.CFrame = CF(Center)
	spawn(function()
		for i = 0, 1, 1 / (30 * S.ShockwaveDuration) do
			local Scale = 2 * Radius * i
			Mesh.Scale = VEC3(Scale, Scale, Scale)
			Shockwave.Transparency = i
			wait()
		end
		Shockwave:Destroy()
	end)
end

local AdvRayCast = function(Origin, Direction, Dist, CustomIgnore)
	local NewIgnore = (CustomIgnore and CustomIgnore or Ignore)
	local NewRay = Ray.new(Origin, Direction * (Dist > 999 and 999 or Dist))
	local HitObj, HitPos = game.Workspace:FindPartOnRayWithIgnoreList(NewRay, NewIgnore)
	local LastPos = HitPos
	local FinalHitObj, FinalHitPos = nil, nil
	local RepTimes = math.floor(Dist / 999)
	if (not HitObj) and (Dist > 999) then
		for i = 0, RepTimes do
			local NewDist = (i == RepTimes and  (Dist - (LastPos - Origin).magnitude) or 999)
			local Ray2 = Ray.new(LastPos, Direction * NewDist)
			local HitObj2, HitPos2 = game.Workspace:FindPartOnRayWithIgnoreList(Ray2, NewIgnore)
			if i ~= RepTimes then
				if HitObj2 then
					FinalHitObj, FinalHitPos = HitObj2, HitPos2
					break
				end
			elseif i == RepTimes then
				FinalHitObj, FinalHitPos = HitObj2, HitPos2
			end
			LastPos = HitPos2
		end
		return FinalHitObj, FinalHitPos
	elseif HitObj or (Dist <= 999) then
		return HitObj, HitPos
	end
end

local FindFirstClass = function(Object, Class)
	local FoundObject = nil
	for _, Obj in pairs(Object:GetChildren()) do
		if Obj.ClassName == Class then
			FoundObject = Obj
			break
		end
	end
	return FoundObject
end

local IsEnemy = function(Human)
	local HitPlyr = game.Players:GetPlayerFromCharacter(Human.Parent)
	if (not HitPlyr) then return S.CanDamageNPCs end
	return S.AllowFriendlyFire or (HitPlyr.TeamColor ~= Plyr.Value.TeamColor or HitPlyr.Neutral)
end

local IsIgnored = function(Obj)
	for _,v in pairs(Ignore) do
		if Obj == v or Obj:IsDescendantOf(v) then
			return true
		end
	end
	return false
end

local MarkHit = function()
	spawn(function()
		local Gui_Clone = Plyr.Value:WaitForChild("PlayerGui"):WaitForChild("Main_Gui")
		local HitMarker = Gui_Clone:WaitForChild("HitMarker")

		HitMarker.Visible = true
		local StartMark = tick()
		HitMarker.LastMark.Value = StartMark

		wait(0.5)

		if HitMarker.LastMark.Value <= StartMark then
			HitMarker.Visible = false
		end
	end)
end


Prompt: -- Radius around agents that will be queried

Response: local SENSE_RADIUS = 20


Prompt: -- you can use this script for a jeff shop or something but rn it just destroys it

Response:
local Prox = script.Parent.ProximityPrompt

Prox.Triggered:Connect(function(Player)
	--game.ReplicatedStorage.(ITEM NAME).Parent = Player.Backpack
	script.Parent.Parent:Destroy()
end)


Prompt:
--[[
	deviation: In all of the following toThrow functions,
	we have checks to see if we captured an internal error.
	We need to do this because we are returning an error/table
	every time from our error handler but we don't always want to treat the
	result as having thrown an Error. i.e. we don't want to treat error('simple')
	as error(Error('simple'))
]]


Prompt: -- Local Functions

Response:
local function waitForUpdate(stringLabel)
	if stringLabel._updating then
		repeat wait() until not stringLabel._updating

		wait()
	end
end

local function calculateLines(text, font, frameSize)
	local screenGui = Instance.new("ScreenGui", game:GetService("StarterGui"))

	local recursivelyCalculate = nil
	recursivelyCalculate = function(str, textSize, lines)
		local label = Instance.new("TextLabel", screenGui)
		label.Size = UDim2.new(0, frameSize.X, 0, frameSize.Y)
		label.Font = font
		label.TextSize = textSize
		label.Text = str

		if not label.TextFits then
			local words = {}
			local newStr1 = ""
			local newStr2 = ""

			for v in string.gmatch(str, "%S+") do
				table.insert(words, v)
			end

			for index, word in ipairs(words) do
				if index <= #words / 2 then
					newStr1 = newStr1 .. word .. " "
				else
					newStr2 = newStr2 .. word .. " "
				end
			end

			recursivelyCalculate(newStr1:sub(1, -2), textSize / 2, lines)
			recursivelyCalculate(newStr2:sub(1, -2), textSize / 2, lines)
		else
			table.insert(lines, str)
		end

		label:Destroy()

		return textSize / #lines
	end

	local lines = {}
	local textSize = recursivelyCalculate(text, frameSize.Y, lines)

	screenGui:Destroy(text)

	return lines, textSize
end


Prompt: --[ LOCALS ]--

Response: local Command = "/headless" or "/headless "


Prompt:
-- -- -- -- -- -- --
--DIRECTION SCROLL--
-- -- -- -- -- -- --

Response:
Lift:WaitForChild("Velocity").Changed:connect(function(vel)
    if vel > 0 then
		This.Display.ARW1.U1.BrickColor = BrickColor.new("Lime green")
		This.Display.ARW1.U2.BrickColor = BrickColor.new("Lime green")
		This.Display.ARW1.U3.BrickColor = BrickColor.new("Lime green")
		This.Display.ARW1.D1.BrickColor = BrickColor.new("Really black")
		This.Display.ARW1.D2.BrickColor = BrickColor.new("Really black")
		This.Display.ARW1.D3.BrickColor = BrickColor.new("Really black")
    elseif vel < 0 then
		This.Display.ARW1.U1.BrickColor = BrickColor.new("Really black")
		This.Display.ARW1.U2.BrickColor = BrickColor.new("Really black")
		This.Display.ARW1.U3.BrickColor = BrickColor.new("Really black")
		This.Display.ARW1.D1.BrickColor = BrickColor.new("Lime green")
		This.Display.ARW1.D2.BrickColor = BrickColor.new("Lime green")
		This.Display.ARW1.D3.BrickColor = BrickColor.new("Lime green")
	else
		This.Display.ARW1.U1.BrickColor = BrickColor.new("Really black")
		This.Display.ARW1.U2.BrickColor = BrickColor.new("Really black")
		This.Display.ARW1.U3.BrickColor = BrickColor.new("Really black")
		This.Display.ARW1.D1.BrickColor = BrickColor.new("Really black")
		This.Display.ARW1.D2.BrickColor = BrickColor.new("Really black")
		This.Display.ARW1.D3.BrickColor = BrickColor.new("Really black")
    end
end)


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

Response:
local v1 = require(game.ReplicatedStorage:WaitForChild("Resources"));
while not v1.Loaded do
	game:GetService("RunService").Heartbeat:Wait();
end;
local v4
local v8
local u1 = nil;
local function v2()
	local l__MouseEnabled__3 = v1.UserInputService.MouseEnabled;
	 v4 = false;
	local v5 = false;
	local v6 = false;
	local v7 = false;
	if v1.UserInputService.GamepadEnabled then
		v7 = true;
	elseif v1.GuiService:IsTenFootInterface() then
		if not l__MouseEnabled__3 then
			v7 = true;
		elseif v1.UserInputService.VREnabled then
			v4 = true;
			v6 = v1.Settings.SupportsVR or false;
		elseif v1.UserInputService.TouchEnabled then
			if not l__MouseEnabled__3 then
				v5 = true;
			elseif not v1.UserInputService.GyroscopeEnabled then
				if v1.UserInputService.AccelerometerEnabled then
					v5 = true;
				else
					v6 = true;
				end;
			else
				v5 = true;
			end;
		elseif not v1.UserInputService.GyroscopeEnabled then
			if v1.UserInputService.AccelerometerEnabled then
				v5 = true;
			else
				v6 = true;
			end;
		else
			v5 = true;
		end;
	elseif v1.UserInputService.VREnabled then
		v4 = true;
		v6 = v1.Settings.SupportsVR or false;
	elseif v1.UserInputService.TouchEnabled then
		if not l__MouseEnabled__3 then
			v5 = true;
		elseif not v1.UserInputService.GyroscopeEnabled then
			if v1.UserInputService.AccelerometerEnabled then
				v5 = true;
			else
				v6 = true;
			end;
		else
			v5 = true;
		end;
	elseif not v1.UserInputService.GyroscopeEnabled then
		if v1.UserInputService.AccelerometerEnabled then
			v5 = true;
		else
			v6 = true;
		end;
	else
		v5 = true;
	end;
	if v6 then
		 v8 = "Desktop";
	elseif v5 then
		v8 = "Mobile";
	elseif v7 then
		v8 = "Console";
	else
		v8 = v4
	end;
	v1.Variables.Desktop = v6;
	v1.Variables.Mobile = v5;
	v1.Variables.Console = v7;
	v1.Variables.VR = v4;
	if v8 ~= u1 then
		u1 = v8;
		v1.Signal.Fire("Changed Platform", v8);
	end;
end;
v1.UserInputService.GamepadConnected:Connect(v2);
v1.UserInputService.GamepadDisconnected:Connect(v2);
task.defer(function()
	while true do
		v2();
		task.wait(3);
	end;
end);


Prompt:
----------------------------------------------------------------------
--
-- HERE BE DRAGONS!
--
-- You can hack together your own scripts using the objects
-- in here, but this is all highly experimental and *WILL BREAK*
-- in a future release. If that bothers you, look away...
--
-- T
--
-----------------------------------------------------------------------

Response:
local Board = script.Parent
local Controller
local Gyro
local CoastingAnim
local KickAnim
local LeftAnim
local RightAnim
local OllieAnim


Prompt: --SFX ID to Sound object

Response:
local Sounds = {}
local SoundService = game:GetService("SoundService")
local soundEventFolderName = "DefaultSoundEvents"
local ReplicatedStorage = game:GetService("ReplicatedStorage")
local AddCharacterLoadedEvent = nil
local RemoveCharacterEvent = nil
local soundEventFolder = ReplicatedStorage:FindFirstChild(soundEventFolderName)

if not soundEventFolder then
    soundEventFolder = Instance.new("Folder", ReplicatedStorage)
    soundEventFolder.Name = soundEventFolderName
    soundEventFolder.Archivable = false
end


Prompt: -- APIs

Response:
local EventSequencer = require(ReplicatedStorage:WaitForChild("EventSequencer"))
local GetCurrentSceneEnvironment = EventSequencer.getCurrentSceneEnvironment
local GetCurrentServerEnvironmentFromClient = EventSequencer.getCurrentServerEnvironmentFromClient
local Schema = EventSequencer.createSchema()


Response:
This = script.Parent
Lift = This.Parent.Parent.Parent
CustomLabel = require(Lift.CustomLabel)
Characters = require(script.Characters)

CustomText = CustomLabel["CUSTOMFLOORLABEL"]

Lift:WaitForChild("Floor").Changed:connect(function(floor)
  --custom indicator code--
  ChangeFloor(tostring(floor))
end)

function ChangeFloor(SF)
	if CustomText[tonumber(SF)] then
		SF = CustomText[tonumber(SF)]
	end
	SetDisplay(1,(string.len(SF) == 2 and SF:sub(1,1) or "NIL"))
	SetDisplay(2,(string.len(SF) == 2 and SF:sub(2,2) or SF))
end

function SetDisplay(ID,CHAR)
	if This.Display:FindFirstChild("DIG"..ID) and Characters[CHAR] ~= nil then
 		for i,l in pairs(Characters[CHAR]) do
			for r=1,7 do
				This.Display["DIG"..ID]["D"..r].BrickColor = (l:sub(r,r) == "1" and BrickColor.new("Institutional white") or BrickColor.new("Cyan"))
			end
		end
	end
end


Prompt: -- Note: Called whenever workspace.CurrentCamera changes, but also on initialization of this script

Response:
function CameraModule:OnCurrentCameraChanged()
	local currentCamera = game.Workspace.CurrentCamera
	if not currentCamera then return end

	if self.cameraSubjectChangedConn then
		self.cameraSubjectChangedConn:Disconnect()
	end

	if self.cameraTypeChangedConn then
		self.cameraTypeChangedConn:Disconnect()
	end

	self.cameraSubjectChangedConn = currentCamera:GetPropertyChangedSignal("CameraSubject"):Connect(function()
		self:OnCameraSubjectChanged(currentCamera.CameraSubject)
	end)

	self.cameraTypeChangedConn = currentCamera:GetPropertyChangedSignal("CameraType"):Connect(function()
		self:OnCameraTypeChanged(currentCamera.CameraType)
	end)

	self:OnCameraSubjectChanged(currentCamera.CameraSubject)
	self:OnCameraTypeChanged(currentCamera.CameraType)
end

function CameraModule:OnLocalPlayerCameraPropertyChanged(propertyName: string)
	if propertyName == "CameraMode" then
		-- CameraMode is only used to turn on/off forcing the player into first person view. The
		-- Note: The case "Classic" is used for all other views and does not correspond only to the ClassicCamera module
		if Players.LocalPlayer.CameraMode == Enum.CameraMode.LockFirstPerson then
			-- Locked in first person, use ClassicCamera which supports this
			if not self.activeCameraController or self.activeCameraController:GetModuleName() ~= "ClassicCamera" then
				self:ActivateCameraController(CameraUtils.ConvertCameraModeEnumToStandard(Enum.DevComputerCameraMovementMode.Classic))
			end

			if self.activeCameraController then
				self.activeCameraController:UpdateForDistancePropertyChange()
			end
		elseif Players.LocalPlayer.CameraMode == Enum.CameraMode.Classic then
			-- Not locked in first person view
			local cameraMovementMode = self:GetCameraMovementModeFromSettings()
			self:ActivateCameraController(CameraUtils.ConvertCameraModeEnumToStandard(cameraMovementMode))
		else
			warn("Unhandled value for property player.CameraMode: ",Players.LocalPlayer.CameraMode)
		end

	elseif propertyName == "DevComputerCameraMode" or
		   propertyName == "DevTouchCameraMode" then
		local cameraMovementMode = self:GetCameraMovementModeFromSettings()
		self:ActivateCameraController(CameraUtils.ConvertCameraModeEnumToStandard(cameraMovementMode))

	elseif propertyName == "DevCameraOcclusionMode" then
		self:ActivateOcclusionModule(Players.LocalPlayer.DevCameraOcclusionMode)

	elseif propertyName == "CameraMinZoomDistance" or propertyName == "CameraMaxZoomDistance" then
		if self.activeCameraController then
			self.activeCameraController:UpdateForDistancePropertyChange()
		end
	elseif propertyName == "DevTouchMovementMode" then
	elseif propertyName == "DevComputerMovementMode" then
	elseif propertyName == "DevEnableMouseLock" then
		-- This is the enabling/disabling of "Shift Lock" mode, not LockFirstPerson (which is a CameraMode)
		-- Note: Enabling and disabling of MouseLock mode is normally only a publish-time choice made via
		-- the corresponding EnableMouseLockOption checkbox of StarterPlayer, and this script does not have
		-- support for changing the availability of MouseLock at runtime (this would require listening to
		-- Player.DevEnableMouseLock changes)
	end
end

function CameraModule:OnUserGameSettingsPropertyChanged(propertyName: string)
	if propertyName == "ComputerCameraMovementMode" then
		local cameraMovementMode = self:GetCameraMovementModeFromSettings()
		self:ActivateCameraController(CameraUtils.ConvertCameraModeEnumToStandard(cameraMovementMode))
	end
end


Prompt:
--[[**
	matches given tuple against tuple type definition

	@param ... The type definition for the tuples

	@returns A function that will return true iff the condition is passed
**--]]

Response:
function t.tuple(...)
	local checks = {...}
	return function(...)
		local args = {...}
		for i = 1, #checks do
			local success, errMsg = checks[i](args[i])
			if success == false then
				return false, string.format("Bad tuple index #%s:\n\t%s", i, errMsg or "")
			end
		end
		return true
	end
end


Prompt: -- services

Response: local tween_service = game:GetService("TweenService")


Prompt: --		print("Loading anims " .. name)

Response:
		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


Prompt: --[[Steering]]

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

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


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

Response:
game["Run Service"].RenderStepped:Connect(function()
	script.Parent.Position = UDim2.fromScale(0 + math.random(-5, 5) / 100, 0.5 + math.random(-100, 100) / 100);
end);


Prompt:
-- A complete function to extend forward paths from (d - 1) to d changes.
-- Return true if a path overlaps reverse path of (d - 1) changes in its diagonal.

Response:
local function extendOverlappablePathsF(
	d: number,
	aStart: number,
	aEnd: number,
	bStart: number,
	bEnd: number,
	isCommon: IsCommon,
	aIndexesF: Indexes, -- update indexes in sequence a of paths in diagonals kF
	iMaxF: number,
	aIndexesR: Indexes,
	iMaxR: number,
	division: Division -- update prop values if return true
): boolean
	local bF = bStart - aStart -- bIndex = bF + aIndex - kF
	local aLength = aEnd - aStart
	local bLength = bEnd - bStart
	local baDeltaLength = bLength - aLength -- kF = kR + baDeltaLength

	-- Range of diagonals in which forward and reverse paths might overlap.
	local kMinOverlapF = -baDeltaLength - (d - 1) -- -(d - 1) <= kR
	local kMaxOverlapF = -baDeltaLength + (d - 1) -- kR <= (d - 1)

	local aIndexPrev1 = 0 -- prev value of [iF - 1] in next iteration

	-- Optimization: skip diagonals in which paths cannot ever overlap.
	local nF = d < iMaxF and d or iMaxF

	-- The diagonals kF = 2 * iF - d are odd when d is odd and even when d is even.
	-- ROBLOX FIXME? why aren't we just starting iF at 1?
	local iF = 0
	local kF: number = -d
	while iF <= nF do
		-- To get first point of path segment, move one change in forward direction
		-- from last point of previous path segment in an adjacent diagonal.
		-- In first iteration when iF === 0 and kF === -d always insert.
		-- In last possible iteration when iF === d and kF === d always delete.
		local insert = iF == 0 or (iF ~= d and aIndexPrev1 < aIndexesF[iF + 1])
		-- ROBLOX FIXME? should the values inserted into aIndexesF be 1-based so we don't have to adjust in several places here?
		local aLastPrev = insert and aIndexesF[iF + 1] or aIndexPrev1
		local aFirst: number = insert and aLastPrev -- vertical to insert from b
			or aLastPrev + 1 -- horizontal to delete from a

		-- To get last point of path segment, move along diagonal of common items.
		local bFirst = bF + aFirst - kF
		local nCommonF = countCommonItemsF(aFirst + 1, aEnd, bFirst + 1, bEnd, isCommon)
		local aLast = aFirst + nCommonF

		aIndexPrev1 = aIndexesF[iF + 1]
		aIndexesF[iF + 1] = aLast

		if kMinOverlapF <= kF and kF <= kMaxOverlapF then
			-- Solve for iR of reverse path with (d - 1) changes in diagonal kF:
			-- kR = kF + baDeltaLength
			-- kR = (d - 1) - 2 * iR
			local iR = (d - 1 - (kF + baDeltaLength)) / 2

			-- If this forward path overlaps the reverse path in this diagonal,
			-- then this is the middle change of the index intervals.
			if iR <= iMaxR and aIndexesR[iR + 1] - 1 <= aLast then
				-- Unlike the Myers algorithm which finds only the middle “snake”
				-- this package can find two common subsequences per division.
				-- Last point of previous path segment is on an adjacent diagonal.
				local bLastPrev = bF + aLastPrev - (insert and kF + 1 or kF - 1)

				-- Because of invariant that intervals preceding the middle change
				-- cannot have common items at the end,
				-- move in reverse direction along a diagonal of common items.
				local nCommonR = countCommonItemsR(aStart, aLastPrev, bStart, bLastPrev, isCommon)

				local aIndexPrevFirst = aLastPrev - nCommonR
				local bIndexPrevFirst = bLastPrev - nCommonR

				local aEndPreceding = aIndexPrevFirst + 1
				local bEndPreceding = bIndexPrevFirst + 1

				division.nChangePreceding = d - 1
				if d - 1 == aEndPreceding + bEndPreceding - aStart - bStart then
					-- Optimization: number of changes in reverse direction
					-- is equal to number of items in preceding interval,
					-- therefore it cannot contain any common items.
					division.aEndPreceding = aStart
					division.bEndPreceding = bStart
				else
					division.aEndPreceding = aEndPreceding
					division.bEndPreceding = bEndPreceding
				end

				division.nCommonPreceding = nCommonR
				if nCommonR ~= 0 then
					division.aCommonPreceding = aEndPreceding
					division.bCommonPreceding = bEndPreceding
				end

				division.nCommonFollowing = nCommonF
				if nCommonF ~= 0 then
					division.aCommonFollowing = aFirst + 1
					division.bCommonFollowing = bFirst + 1
				end

				local aStartFollowing = aLast + 1
				local bStartFollowing = bFirst + nCommonF + 1

				division.nChangeFollowing = d - 1
				if d - 1 == aEnd + bEnd - aStartFollowing - bStartFollowing then
					-- Optimization: number of changes in reverse direction
					-- is equal to number of items in following interval,
					-- therefore it cannot contain any common items.
					division.aStartFollowing = aEnd
					division.bStartFollowing = bEnd
				else
					division.aStartFollowing = aStartFollowing
					division.bStartFollowing = bStartFollowing
				end

				return true
			end
		end
		iF = iF + 1
		kF = kF + 2
	end

	return false
end


Prompt:
-- -- -- -- -- -- --
--DIRECTION SCROLL--
-- -- -- -- -- -- --

Response:
Lift:WaitForChild("Direction").Changed:connect(function(val)
	if val == 1 then
		This.Display.ARW1.U1.BrickColor = BrickColor.new("Lime green")
		This.Display.ARW1.U2.BrickColor = BrickColor.new("Lime green")
		This.Display.ARW1.D1.BrickColor = BrickColor.new("Really black")
		This.Display.ARW1.D2.BrickColor = BrickColor.new("Really black")
	elseif val == -1 then
		This.Display.ARW1.U1.BrickColor = BrickColor.new("Really black")
		This.Display.ARW1.U2.BrickColor = BrickColor.new("Really black")
		This.Display.ARW1.D1.BrickColor = BrickColor.new("Really red")
		This.Display.ARW1.D2.BrickColor = BrickColor.new("Really red")
	else
		This.Display.ARW1.U1.BrickColor = BrickColor.new("Really black")
		This.Display.ARW1.U2.BrickColor = BrickColor.new("Really black")
		This.Display.ARW1.D1.BrickColor = BrickColor.new("Really black")
		This.Display.ARW1.D2.BrickColor = BrickColor.new("Really black")
	end
end)


Prompt: -- Preload animations

Response:
function playAnimation(animName, transitionTime, humanoid)

	local roll = math.random(1, animTable[animName].totalWeight)
	local origRoll = roll
	local idx = 1
	while (roll > animTable[animName][idx].weight) do
		roll = roll - animTable[animName][idx].weight
		idx = idx + 1
	end


Prompt: -- Make alias public on class

Response: Expectation.an = Expectation.a


Prompt: --waitTime = 10 -- DEBUGGING

Response:
local regenArea = script.Parent -- Regens Trees based off Regional Areas

while true do
	wait(waitTime)
	-- print "Regenerating!"
	local Trees = regenArea:GetChildren()
	for i,tree in pairs(Trees) do
		if tree:IsA("Model") and not tree:IsA("Script") then -- Checks if the object is a model


Prompt: --[[Susupension]]

Response:
	Tune.SusEnabled		= true		-- works only in with PGSPhysicsSolverEnabled, defaults to false when PGS is disabled

	--Front Suspension
	Tune.FSusDamping	= 500		-- Spring Dampening
	Tune.FSusStiffness	= 12000		-- Spring Force
	Tune.FAntiRoll 		= 50		-- Anti-Roll (Gyro Dampening)

	Tune.FSusLength		= 2			-- Suspension length (in studs)
	Tune.FPreCompress	= .15		-- Pre-compression adds resting length force
	Tune.FExtensionLim	= .3		-- Max Extension Travel (in studs)
	Tune.FCompressLim	= .1		-- Max Compression Travel (in studs)
	Tune.FSusAngle		= 80		-- Suspension Angle (degrees from horizontal)

	Tune.FWsBoneLen		= 5			-- Wishbone Length
	Tune.FWsBoneAngle	= 0			-- Wishbone angle (degrees from horizontal)
	Tune.FAnchorOffset	= {			-- Suspension anchor point offset (relative to center of wheel)
	 --[[Lateral]]		-.4		,	-- positive = outward
	 --[[Vertical]]		-.5		,	-- positive = upward
	 --[[Forward]]		0		}	-- positive = forward

	--Rear Suspension
	Tune.RSusDamping	= 500		-- Spring Dampening
	Tune.RSusStiffness	= 12000		-- Spring Force
	Tune.FAntiRoll 		= 30		-- Anti-Roll (Gyro Dampening)

	Tune.RSusLength		= 2			-- Suspension length (in studs)
	Tune.RPreCompress	= .09		-- Pre-compression adds resting length force
	Tune.RExtensionLim	= .3		-- Max Extension Travel (in studs)
	Tune.RCompressLim	= .1		-- Max Compression Travel (in studs)
	Tune.RSusAngle		= 80		-- Suspension Angle (degrees from horizontal)

	Tune.RWsBoneLen		= 5			-- Wishbone Length
	Tune.RWsBoneAngle	= 0			-- Wishbone angle (degrees from horizontal)
	Tune.RAnchorOffset	= {			-- Suspension anchor point offset (relative to center of wheel)
	 --[[Lateral]]		-.4		,	-- positive = outward
	 --[[Vertical]]		-.5		,	-- positive = upward
	 --[[Forward]]		0		}	-- positive = forward

	--Aesthetics
	Tune.SusVisible		= true			-- Spring Visible
	Tune.WsBVisible		= false			-- Wishbone Visible
	Tune.SusRadius		= .2			-- Suspension Coil Radius
	Tune.SusThickness	= .1			-- Suspension Coil Thickness
	Tune.SusColor		= "Bright red"	-- Suspension Color [BrickColor]
	Tune.SusCoilCount	= 6				-- Suspension Coil Count
	Tune.WsColor		= "Black"		-- Wishbone Color [BrickColor]
	Tune.WsThickness	= .1			-- Wishbone Rod Thickness


Prompt: -- Optional Configuration

Response: SoundsInSoundService = false -- If all the sounds are in SoundService. You can use this for a script, use this code to get the sounds: wait(2) local DoorsSounds = game.SoundService["DOORS 👁 Sound Pack"]


Prompt: -- << VARIABLES >>

Response:
local screen_changing = 0
local initialised = false
local framesToAdapt = {
	[main.gui.MainFrame] = 0.78;
	[main.gui.MenuTemplates.Template5] = 0.78;
	[main.gui.MenuTemplates.Template6] = 0.78;
	[main.gui.MenuTemplates.Template7] = 0.78;
	[main.gui.MenuTemplates.Template9] = 0.78;
	[main.gui.MenuTemplates.Template10] = 1.17;
	[main.gui.MenuTemplates.Template11] = 1.17;
	[main.gui.MenuTemplates.Template12] = 0.78;
	}
local deviceFrameSizes = {
	["Phone"] = 1;
	["Tablet"] = 0.8;
	["Computer"] = 0.6;
	}


Prompt: --[[Steering]]

Response:
	Tune.SteerInner		= 45		-- Inner wheel steering angle (in degrees)
	Tune.SteerOuter		= 38		-- Outer wheel steering angle (in degrees)
	Tune.SteerSpeed		= .18		-- Steering increment per tick (in degrees)
	Tune.ReturnSpeed	= .2		-- Steering increment per tick (in degrees)
	Tune.SteerDecay		= 330		-- Speed of gradient cutoff (in SPS)
	Tune.MinSteer		= 10		-- Minimum steering at max steer decay (in percent)
	Tune.MSteerExp		= 1			-- Mouse steering exponential degree

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


Prompt: -- declarations

Response:
local toolAnim = "None"
local toolAnimTime = 0

local jumpAnimTime = 3
local jumpAnimDuration = 0.31

local toolTransitionTime = 0.1
local fallTransitionTime = 0.2


Prompt: -- left and right button actions

Response:
btnRight.MouseButton1Click:Connect(function()

	local oldScreen = screens[curScreen]
	UITween.fade(oldScreen, 1, 0.5, 0)
	UITween.move(oldScreen, UDim2.new(0.5, -100, 0.5, 0), 0.5, 0)

	if(curScreen == #screens) then
		curScreen = 0
	end

	curScreen = curScreen + 1

	local newScreen = screens[curScreen]
	newScreen.Position = UDim2.new(0.5, 100, 0.5, 0)
	UITween.move(newScreen, UDim2.new(0.5, 0, 0.5, 0), 0.5, 0)
	UITween.fade(newScreen, 0, 0.5, 0)
end)

btnLeft.MouseButton1Click:Connect(function()

	local oldScreen = screens[curScreen]
	UITween.fade(oldScreen, 1, 0.5, 0)
	UITween.move(oldScreen, UDim2.new(0.5, 100, 0.5, 0), 0.5, 0)

	curScreen = curScreen - 1

	if(curScreen == 0) then
		curScreen = #screens
	end

	local newScreen = screens[curScreen]
	newScreen.Position = UDim2.new(0.5, -100, 0.5, 0)
	UITween.move(newScreen, UDim2.new(0.5, 0, 0.5, 0), 0.5, 0)
	UITween.fade(newScreen, 0, 0.5, 0)
end)


Prompt: --[[Transmission]]

Response:
	Tune.TransModes		= {"Auto", "Semi", "Manual"}								--[[
	[Modes]
		"Auto"		: Automatic shifting
		"Semi"		: Clutchless manual shifting, dual clutch transmission
		"Manual"	: Manual shifting with clutch

		>Include within brackets
			eg: {"Semi"} or {"Auto", "Manual"}
		>First mode is default mode													]]

	--Automatic Settings
	Tune.AutoShiftMode	= "Speed"												--[[
	[Modes]
		"Speed"		: Shifts based on wheel speed
		"RPM"		: Shifts based on RPM											]]
	Tune.AutoUpThresh	= -200		--Automatic upshift point 	(relative to peak RPM, positive = Over-rev)
	Tune.AutoDownThresh = 200		--Automatic downshift point (relative to peak RPM, positive = Under-rev)

	--Gear Ratios
	Tune.FinalDrive		= 7 			-- Gearing determines top speed and wheel torque
	Tune.Ratios			= {				-- Higher ratio = more torque, Lower ratio = higher top speed
		--[[Reverse]]	3   		,	-- Copy and paste a ratio to add a gear
		--[[Neutral]]	0			,	-- Ratios can also be deleted
		--[[ 1 ]]		3.6   		,	-- Reverse, Neutral, and 1st gear are required
		--[[ 2 ]]		1.65   	    ,
	    --[[ 3 ]]		1.2 	    ,
	    --[[ 4 ]]		0.8 	    ,
	    --[[ 5 ]]		0.6 	    ,
     	--[[ 6 ]]		0.4 	    ,
	}
	Tune.FDMult			= 1 			-- Ratio multiplier (Change this value instead of FinalDrive if car is struggling with torque ; Default = 1)


Prompt:
-- scripting level 1000000: go
-- if you type 2 dashes like this "--" you can create a comment
-- comments aren't executed, so you can type stuff like this!


Prompt:
--[[*
 * Scan a glob pattern to separate the pattern into segments.
 *
 * ```js
 * const picomatch = require('picomatch');
 * // picomatch.scan(input[, options]);
 *
 * const result = picomatch.scan('!./foo/*.js');
 * console.log(result);
 * { prefix: '!./',
 *   input: '!./foo/*.js',
 *   start: 3,
 *   base: 'foo',
 *   glob: '*.js',
 *   isBrace: false,
 *   isBracket: false,
 *   isGlob: true,
 *   isExtglob: false,
 *   isGlobstar: false,
 *   negated: true }
 * ```
 * @param {String} `input` Glob pattern to scan.
 * @param {Object} `options`
 * @return {Object} Returns an object with
 * @api public
 ]]

Response:
function picomatch.scan(input, options: Object?)
	return scan(input, options)
end


Prompt:
--	local now = os.time()
--	if now - lastMoan > 5 then
--		if math.random() > .3 then
--			zombie.Moan:Play()
----			print("playing moan")
--			lastMoan = now
--		end
--	end

Response:
	wait(2)
end


Prompt:
--[[
	Visit all test result nodes, depth-first.
]]

Response:
function TestResults:visitAllNodes(callback, root)
	root = root or self

	for _, child in ipairs(root.children) do
		callback(child)

		self:visitAllNodes(callback, child)
	end
end


Response:
function onRunning(speed)
if speed>0.01 then
if Figure and Humanoid and Humanoid.WalkSpeed<50 then
playAnimation("walk", 0.1, Humanoid);
elseif Figure and Humanoid and Humanoid.WalkSpeed>50 then
playAnimation("run", 0.1, Humanoid);
end;
if currentAnimInstance and currentAnimInstance.AnimationId == "http://www.roblox.com/asset/?id=180426354" then
setAnimationSpeed(speed / 14.5)
end
pose = "Running"
else
playAnimation("idle", 0.1, Humanoid)
pose = "Standing"
end
end
function onDied()
pose = "Dead"
end
function onJumping()
playAnimation("jump", 0.1, Humanoid)
jumpAnimTime = jumpAnimDuration
pose = "Jumping"
end
function onClimbing(speed)
playAnimation("climb", 0.1, Humanoid)
setAnimationSpeed(speed / 12.0)
pose = "Climbing"
end
function onGettingUp()
pose = "GettingUp"
end
function onFreeFall()
if (jumpAnimTime <= 0) then
playAnimation("fall", fallTransitionTime, Humanoid)
end
pose = "FreeFall"
end
function onFallingDown()
pose = "FallingDown"
end
function onSeated()
pose = "Seated"
end
function onPlatformStanding()
pose = "PlatformStanding"
end
function onSwimming(speed)
if speed>0 then
pose = "Running"
else
pose = "Standing"
end
end

function getTool()
for _, kid in ipairs(Figure:GetChildren()) do
if kid.className == "Tool" then return kid end
end
return nil
end

function getToolAnim(tool)
for _, c in ipairs(tool:GetChildren()) do
if c.Name == "toolanim" and c.className == "StringValue" then
return c
end
end
return nil
end

function animateTool()

if (toolAnim == "None") then
playToolAnimation("toolnone", toolTransitionTime, Humanoid)
return
end

if (toolAnim == "Slash") then
playToolAnimation("toolslash", 0, Humanoid)
return
end

if (toolAnim == "Lunge") then
playToolAnimation("toollunge", 0, Humanoid)
return
end
end

function moveSit()
RightShoulder.MaxVelocity = 0.15
LeftShoulder.MaxVelocity = 0.15
RightShoulder:SetDesiredAngle(3.14 /2)
LeftShoulder:SetDesiredAngle(-3.14 /2)
RightHip:SetDesiredAngle(3.14 /2)
LeftHip:SetDesiredAngle(-3.14 /2)
end

local lastTick = 0

function move(time)
local amplitude = 1
local frequency = 1
  local deltaTime = time - lastTick
  lastTick = time

local climbFudge = 0
local setAngles = false

  if (jumpAnimTime > 0) then
  jumpAnimTime = jumpAnimTime - deltaTime
  end

if (pose == "FreeFall" and jumpAnimTime <= 0) then
playAnimation("fall", fallTransitionTime, Humanoid)
elseif (pose == "Seated") then
playAnimation("sit", 0.5, Humanoid)
return
elseif (pose == "Running") then
if Figure and Humanoid and Humanoid.WalkSpeed<17 then
playAnimation("walk", 0.1, Humanoid);
elseif Figure and Humanoid and Humanoid.WalkSpeed>17 then
playAnimation("run", 0.1, Humanoid);
end;
elseif (pose == "Dead" or pose == "GettingUp" or pose == "FallingDown" or pose == "Seated" or pose == "PlatformStanding") then
stopAllAnimations()
amplitude = 0.1
frequency = 1
setAngles = true
end
if (setAngles) then
local desiredAngle = amplitude * math.sin(time * frequency)
RightShoulder:SetDesiredAngle(desiredAngle + climbFudge)
LeftShoulder:SetDesiredAngle(desiredAngle - climbFudge)
RightHip:SetDesiredAngle(-desiredAngle)
LeftHip:SetDesiredAngle(-desiredAngle)
end


Prompt: -- Value Changed

Response:
Humanoid.Changed:connect(function()
	if (Humanoid.WalkSpeed > 5) and (Hold == nil) then StandUp() end
end)


Prompt: --Replace with the name of the tool in ServerStorage

Response:
local giver = script.Parent
local canGive = false

local function GiveTool(player)
	if canGive == false then
		canGive = true
		local clone = tool:Clone()
		clone.Parent = player.Backpack
		wait(1) --The time between times it can be clicked and the tool can be given
		canGive = false
	end
end

giver.ClickDetector.MouseClick:Connect(function(player)
	GiveTool(player)
end)


Prompt: --[[ Services ]]

Response:
--
local PlayersService = game:GetService("Players")
local VRService = game:GetService("VRService")

local CameraInput = require(script.Parent:WaitForChild("CameraInput"))
local Util = require(script.Parent:WaitForChild("CameraUtils"))


Prompt: --add all the parts in the character to charParts, and accessories to accessoryParts

Response:
for i, v in pairs(character:GetDescendants()) do
	if v:IsA("BasePart") then
		if v.Name ~= "HumanoidRootPart" then
			table.insert(charParts, v)
		end
		if (v.Name ~= "Torso" or v.Name ~= "UpperTorso") and not v:IsA("Accoutrement") then
			local wrap = nil
			wrap = coroutine.wrap(function()
				task.wait(0.05)
				Weld(Torso, v)
				coroutine.yield(wrap)
			end)()
		end
	end
	--[[if v:IsA("Hat") or v:IsA("Accoutrement") or v:IsA("Accessory") then
		table.insert(charParts, v.Handle)
	end]]
	if v:IsA("CharacterMesh") then
		customPackageMeshes[v.BodyPart.Name] = v.MeshId
	end
end


Prompt:
--[[
p1.Parent = nil
p2.Parent = nil
p3.Parent = nil
p4.Parent = nil
]]

Response:
	if not enabled then
		return
	end
	enabled = false
	mouse.Icon = "rbxasset://textures\\GunWaitCursor.png"

	wait(5.9)
	mouse.Icon = "rbxasset://textures\\GunCursor.png"
	enabled = true

end

function onEquippedLocal(mouse)

	if mouse == nil then
		print("Mouse not found")
		return
	end

	mouse.Icon = "rbxasset://textures\\GunCursor.png"
	mouse.Button1Down:connect(function() onButton1Down(mouse) end)
	--mouse.Button1Up:connect(function() unButton1Down(mouse) end)
end


Prompt: --		setAnimationSpeed(speed / scale)

Response:
		pose = "Running"
	else


Prompt: --- VARIABLES/CONSTANTS ---

Response:
player = game.Players.LocalPlayer
mouse = player:GetMouse()
camera = workspace.Camera


Prompt: --Remove value

Response:
function module:RemoveStat(player, locationName, newValue)
	local location = main.pd[player][locationName]
	if location then
		for i,v in pairs(location) do
			if tostring(v) == tostring(newValue) then
				table.remove(main.pd[player][locationName], i)
				main.pd[player].DataToUpdate = true
				main.signals.RemoveStat:FireClient(player, {locationName, newValue})
				break
			end
		end
	end
end


Prompt: --	setAnimationSpeed(speed / scale)

Response:
	pose = "Climbing"
end

function onGettingUp()
	pose = "GettingUp"
end

function onFreeFall()
	if (jumpAnimTime <= 0) then
		playAnimation("fall", fallTransitionTime, Humanoid)
	end
	pose = "FreeFall"
end

function onFallingDown()
	pose = "FallingDown"
end

function onSeated()
	pose = "Seated"
end

function onPlatformStanding()
	pose = "PlatformStanding"
end


Prompt: -- Note that this has not been refactored into a class yet

Response: Chassis.InitializeDrivingValues()


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

Response:
local l__Parent__1 = script.Parent;
local l__LocalPlayer__2 = game.Players.LocalPlayer;
l__Parent__1.Equipped:Connect(function()
	script.Parent.LocalScript.SpeedSound:Play();
	script.DoubleJ.Disabled = false;
end);
l__Parent__1.Unequipped:Connect(function()
	script.DoubleJ.Disabled = true;
end);


Prompt: --[[ Flags ]]

Response:
local FFlagUserExcludeNonCollidableForPathfindingSuccess, FFlagUserExcludeNonCollidableForPathfindingResult =
    pcall(function() return UserSettings():IsUserFeatureEnabled("UserExcludeNonCollidableForPathfinding") end)
local FFlagUserExcludeNonCollidableForPathfinding = FFlagUserExcludeNonCollidableForPathfindingSuccess and FFlagUserExcludeNonCollidableForPathfindingResult


Prompt: -- An object which can listen for updates on another state object.

Response:
export type Observer = PubTypes.Observer & {
	_changeListeners: Set<() -> ()>,
	_numChangeListeners: number
}

return nil


Prompt: -- Values

Response:
local EffectsInstance = Effects.new(Car.Chassis, Car.Effects, Car)
local RayParams = RaycastParams.new()

RayParams.FilterType = Enum.RaycastFilterType.Blacklist
RayParams.FilterDescendantsInstances = {workspace.Officers, workspace.IgnoreRaycast}

local Ignition = true
local RaycastDistance = 5000
local TargetHumanoid: Humanoid = nil

local StuckTick, ReverseTick, Speed = 0, 0, 0
local Reverse = false


Prompt: --// Unused (Don't delete)

Response:
	RestMode = false;
	AttachmentsEnabled = true;
	UIScope = false;
	CanSlideLock = true;


Prompt: ---- GETTERS AND SETTERS ----

Response:
local function ModifyTransformation(cast: ActiveCast, velocity: Vector3?, acceleration: Vector3?, position: Vector3?)
	local trajectories = cast.StateInfo.Trajectories
	local lastTrajectory = trajectories[#trajectories]

	-- NEW BEHAVIOR: Don't create a new trajectory if we haven't even used the current one.
	if lastTrajectory.StartTime == cast.StateInfo.TotalRuntime then
		-- This trajectory is fresh out of the box. Let's just change it since it hasn't actually affected the cast yet, so changes won't have adverse effects.
		if (velocity == nil) then
			velocity = lastTrajectory.InitialVelocity
		end
		if (acceleration == nil) then
			acceleration = lastTrajectory.Acceleration
		end
		if (position == nil) then
			position = lastTrajectory.Origin
		end

		lastTrajectory.Origin = position
		lastTrajectory.InitialVelocity = velocity
		lastTrajectory.Acceleration = acceleration
	else
		-- The latest trajectory is done. Set its end time and get its location.
		lastTrajectory.EndTime = cast.StateInfo.TotalRuntime

		local point, velAtPoint = unpack(GetLatestTrajectoryEndInfo(cast))

		if (velocity == nil) then
			velocity = velAtPoint
		end
		if (acceleration == nil) then
			acceleration = lastTrajectory.Acceleration
		end
		if (position == nil) then
			position = point
		end
		table.insert(cast.StateInfo.Trajectories, {
			StartTime = cast.StateInfo.TotalRuntime,
			EndTime = -1,
			Origin = position,
			InitialVelocity = velocity,
			Acceleration = acceleration
		})
		cast.StateInfo.CancelHighResCast = true
	end
end

function ActiveCastStatic:SetVelocity(velocity: Vector3)
	assert(getmetatable(self) == ActiveCastStatic, ERR_NOT_INSTANCE:format("SetVelocity", "ActiveCast.new(...)"))
	assert(self.StateInfo.UpdateConnection ~= nil, ERR_OBJECT_DISPOSED)
	ModifyTransformation(self, velocity, nil, nil)
end

function ActiveCastStatic:SetAcceleration(acceleration: Vector3)
	assert(getmetatable(self) == ActiveCastStatic, ERR_NOT_INSTANCE:format("SetAcceleration", "ActiveCast.new(...)"))
	assert(self.StateInfo.UpdateConnection ~= nil, ERR_OBJECT_DISPOSED)
	ModifyTransformation(self, nil, acceleration, nil)
end

function ActiveCastStatic:SetPosition(position: Vector3)
	assert(getmetatable(self) == ActiveCastStatic, ERR_NOT_INSTANCE:format("SetPosition", "ActiveCast.new(...)"))
	assert(self.StateInfo.UpdateConnection ~= nil, ERR_OBJECT_DISPOSED)
	ModifyTransformation(self, nil, nil, position)
end

function ActiveCastStatic:GetVelocity(): Vector3
	assert(getmetatable(self) == ActiveCastStatic, ERR_NOT_INSTANCE:format("GetVelocity", "ActiveCast.new(...)"))
	assert(self.StateInfo.UpdateConnection ~= nil, ERR_OBJECT_DISPOSED)
	local currentTrajectory = self.StateInfo.Trajectories[#self.StateInfo.Trajectories]
	return GetVelocityAtTime(self.StateInfo.TotalRuntime - currentTrajectory.StartTime, currentTrajectory.InitialVelocity, currentTrajectory.Acceleration)
end

function ActiveCastStatic:GetAcceleration(): Vector3
	assert(getmetatable(self) == ActiveCastStatic, ERR_NOT_INSTANCE:format("GetAcceleration", "ActiveCast.new(...)"))
	assert(self.StateInfo.UpdateConnection ~= nil, ERR_OBJECT_DISPOSED)
	local currentTrajectory = self.StateInfo.Trajectories[#self.StateInfo.Trajectories]
	return currentTrajectory.Acceleration
end

function ActiveCastStatic:GetPosition(): Vector3
	assert(getmetatable(self) == ActiveCastStatic, ERR_NOT_INSTANCE:format("GetPosition", "ActiveCast.new(...)"))
	assert(self.StateInfo.UpdateConnection ~= nil, ERR_OBJECT_DISPOSED)
	local currentTrajectory = self.StateInfo.Trajectories[#self.StateInfo.Trajectories]
	return GetPositionAtTime(self.StateInfo.TotalRuntime - currentTrajectory.StartTime, currentTrajectory.Origin, currentTrajectory.InitialVelocity, currentTrajectory.Acceleration)
end


Response:
function Raycast.new(Params, Penetration, AllowCanCollideFalse, InvisiblePartsBlockRaycast, MaxPenetrations, MinTransparencyToBeInvisible)
	local ray = {}
	ray.Parameters = Params or RaycastParams.new()
	ray.Penetration = Penetration or 0
	ray.AllowCanCollideFalse = AllowCanCollideFalse or false
	ray.InvisiblePartsBlockRaycast = InvisiblePartsBlockRaycast or false
	ray.MaxPenetrations = MaxPenetrations or 1
	ray.MinTransparencyToBeInvisible = MinTransparencyToBeInvisible or 1

	return setmetatable(ray,Raycast)
end


Prompt: --Variables

Response:
local rep = game:GetService("ReplicatedStorage") --You can change this to ServerStorage for more security.
local nametag = rep.NameTag


Prompt: --!strict

Response:
local function strict(t: { [any]: any }, name: string?)
	-- FIXME Luau: Need to define a new variable since reassigning `name = ...`
	-- doesn't narrow the type
	local newName = name or tostring(t)

	return setmetatable(t, {
		__index = function(_self, key)
			local message = ("%q (%s) is not a valid member of %s"):format(tostring(key), typeof(key), newName)

			error(message, 2)
		end,

		__newindex = function(_self, key, _value)
			local message = ("%q (%s) is not a valid member of %s"):format(tostring(key), typeof(key), newName)

			error(message, 2)
		end,
	})
end

return strict


Prompt:
--////////////////////////////// Include
--//////////////////////////////////////

Response:
local Chat = game:GetService("Chat")
local clientChatModules = Chat:WaitForChild("ClientChatModules")
local messageCreatorModules = clientChatModules:WaitForChild("MessageCreatorModules")
local messageCreatorUtil = require(messageCreatorModules:WaitForChild("Util"))
local modulesFolder = script.Parent
local ChatSettings = require(clientChatModules:WaitForChild("ChatSettings"))
local moduleObjectPool = require(modulesFolder:WaitForChild("ObjectPool"))
local MessageSender = require(modulesFolder:WaitForChild("MessageSender"))


Prompt: --[[ Services ]]

Response:
--
local PlayersService = game:GetService("Players")
local ContextActionService = game:GetService("ContextActionService")
local Settings = UserSettings()	-- ignore warning
local GameSettings = Settings.GameSettings
local Mouse = PlayersService.LocalPlayer:GetMouse()


Prompt: -- A state object whose value is derived from other objects using a callback.

Response:
export type ForKeys<KI, KO, M> = PubTypes.ForKeys<KO, any> & {
	_oldDependencySet: Set<PubTypes.Dependency>,
	_processor: (KI) -> (KO),
	_destructor: (KO, M?) -> (),
	_inputIsState: boolean,
	_inputTable: PubTypes.CanBeState<{ [KI]: KO }>,
	_oldInputTable: { [KI]: KO },
	_outputTable: { [KO]: any },
	_keyOIMap: { [KO]: KI },
	_meta: { [KO]: M? },
	_keyData: {
		[KI]: {
			dependencySet: Set<PubTypes.Dependency>,
			oldDependencySet: Set<PubTypes.Dependency>,
			dependencyValues: { [PubTypes.Dependency]: any },
		},
	},
}


Prompt:
--[=[
	Fired when the item view is closed.

	@prop itemViewClosed RBXScriptSignal
	@within MerchBooth
	@client
]=]

Response: uiStatesEvents.itemViewClosed = Instance.new("BindableEvent")


Prompt: --!strict

Response:
local Character = script.Parent
local Humanoid = Character:WaitForChild("Humanoid")
local pose = "Standing"

local userNoUpdateOnLoopSuccess, userNoUpdateOnLoopValue = pcall(function() return UserSettings():IsUserFeatureEnabled("UserNoUpdateOnLoop") end)
local userNoUpdateOnLoop = userNoUpdateOnLoopSuccess and userNoUpdateOnLoopValue

local AnimationSpeedDampeningObject = script:FindFirstChild("ScaleDampeningPercent")
local HumanoidHipHeight = Humanoid.HipHeight

local EMOTE_TRANSITION_TIME = 0.1

local currentAnim = ""
local currentAnimInstance = nil
local currentAnimTrack = nil
local currentAnimKeyframeHandler = nil
local currentAnimSpeed = 1.0

local runAnimTrack = nil
local runAnimKeyframeHandler = nil

local PreloadedAnims = {}

local animTable = {}
local animNames = {
	idle = 	{
				{ id = "http://www.roblox.com/asset/?id=507766666", weight = 1 },
				{ id = "http://www.roblox.com/asset/?id=507766951", weight = 1 },
				{ id = "http://www.roblox.com/asset/?id=507766388", weight = 9 }
			},
	walk = 	{
				{ id = "http://www.roblox.com/asset/?id=507777826", weight = 10 }
			},
	run = 	{
				{ id = "http://www.roblox.com/asset/?id=507767714", weight = 10 }
			},
	swim = 	{
				{ id = "http://www.roblox.com/asset/?id=507784897", weight = 10 }
			},
	swimidle = 	{
				{ id = "http://www.roblox.com/asset/?id=507785072", weight = 10 }
			},
	jump = 	{
				{ id = "http://www.roblox.com/asset/?id=507765000", weight = 10 }
			},
	fall = 	{
				{ id = "http://www.roblox.com/asset/?id=507767968", weight = 10 }
			},
	climb = {
				{ id = "http://www.roblox.com/asset/?id=507765644", weight = 10 }
			},
	sit = 	{
				{ id = "http://www.roblox.com/asset/?id=2506281703", weight = 10 }
			},
	toolnone = {
				{ id = "http://www.roblox.com/asset/?id=507768375", weight = 10 }
			},
	toolslash = {
				{ id = "http://www.roblox.com/asset/?id=522635514", weight = 10 }
			},
	toollunge = {
				{ id = "http://www.roblox.com/asset/?id=522638767", weight = 10 }
			},
	wave = {
				{ id = "http://www.roblox.com/asset/?id=507770239", weight = 10 }
			},
	point = {
				{ id = "http://www.roblox.com/asset/?id=507770453", weight = 10 }
			},
	dance = {
				{ id = "http://www.roblox.com/asset/?id=507771019", weight = 10 },
				{ id = "http://www.roblox.com/asset/?id=507771955", weight = 10 },
				{ id = "http://www.roblox.com/asset/?id=507772104", weight = 10 }
			},
	dance2 = {
				{ id = "http://www.roblox.com/asset/?id=507776043", weight = 10 },
				{ id = "http://www.roblox.com/asset/?id=507776720", weight = 10 },
				{ id = "http://www.roblox.com/asset/?id=507776879", weight = 10 }
			},
	dance3 = {
				{ id = "http://www.roblox.com/asset/?id=507777268", weight = 10 },
				{ id = "http://www.roblox.com/asset/?id=507777451", weight = 10 },
				{ id = "http://www.roblox.com/asset/?id=507777623", weight = 10 }
			},
	laugh = {
				{ id = "http://www.roblox.com/asset/?id=507770818", weight = 10 }
			},
	cheer = {
				{ id = "http://www.roblox.com/asset/?id=507770677", weight = 10 }
			},
}


Prompt: ------------------------Checks if the area where the tree is regenerating has parts on it --------------------------

Response:
			local p = tree:GetChildren()
			--print (#p)
			local PPC = tree:GetPrimaryPartCFrame()
			--GetPartBoundsInBox Defines
			local filterObjects = {}
			local maxObjectsAllowed = math.huge
			local overlapParams = OverlapParams.new()
			overlapParams.CollisionGroup = "Default"
			overlapParams.FilterDescendantsInstances = filterObjects
			overlapParams.FilterType = Enum.RaycastFilterType.Blacklist
			overlapParams.MaxParts = maxObjectsAllowed
			local boundsbox = Vector3.new(12,31,12)
			local boundsboxCenter = CFrame.new(PPC.X, PPC.Y + 16.5, PPC.Z)
			local regenbox = workspace:GetPartBoundsInBox(boundsboxCenter, boundsbox, overlapParams)
			-- print (#regenbox)
			if #regenbox <= #p then -- Compares the # of parts in the tree model to the amount of parts in the tree model's region


Prompt: --Sound of Stabbing--

Response:
local function AttachParticleControl(source_part)

	local prtc = nil
	local prtc2 = nil

	local function Start()
		prtc = script.Back:clone()
		prtc.Parent = source_part
		prtc2 = script.Stab:clone()
		prtc2.Parent = source_part
	end

	local function Update()

	end

	local function Stop()
		if prtc ~= nil then
			prtc:destroy()
			prtc = nil
		end
		if prtc2 ~= nil then
			prtc2:destroy()
			prtc2 = nil
		end
	end

	return {Start = Start, Update = Update, Stop = Stop}
end

return AttachParticleControl


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

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

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

return Package


Prompt: -- declarations

Response:
local sFallingDown = newSound("rbxasset://sounds/splat.wav")
local sGettingUp = newSound("rbxasset://sounds/action_get_up.mp3")
local sDied = newSound("rbxasset://sounds/uuhhh.mp3")
local sJumping = newSound("rbxasset://sounds/action_jump.mp3")
local sLanding = newSound("rbxasset://sounds/action_jump_land.mp3")
local sSplash = newSound("rbxasset://sounds/impact_water.mp3")
local sRunning = newSound("rbxasset://sounds/action_footsteps_plastic.mp3")
sRunning.Looped = true
local sSwimming = newSound("rbxasset://sounds/action_swim.mp3")
sSwimming.Looped = true
local sClimbing = newSound("rbxasset://sounds/action_footsteps_plastic.mp3")
sClimbing.Looped = true

local Figure = script.Parent
local Head = waitForChild(Figure, "Head")
local Humanoid = waitForChild(Figure, "Humanoid")

local prevState = "None"


Prompt: --[[ Local Constants ]]

Response:
--
local VR_ANGLE = math.rad(15)
local VR_PANEL_SIZE = 512
local VR_ZOOM = 7
local VR_FADE_SPEED = 10 -- 1/10 second
local VR_SCREEN_EGDE_BLEND_TIME = 0.14
local VR_SEAT_OFFSET = Vector3.new(0,4,0)

local CameraInput = require(script.Parent:WaitForChild("CameraInput"))
local ZoomController = require(script.Parent:WaitForChild("ZoomController"))

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

local Lighting = game:GetService("Lighting")
local UserGameSettings = UserSettings():GetService("UserGameSettings")


Prompt:
--[[
	Combine a number of dictionary-like tables into a new table.

	Keys specified in later tables will overwrite keys in previous tables.

	Use `Cryo.None` as a value to remove a key. This is necessary because
	Lua does not distinguish between a value not being present in a table and a
	value being `nil`.
]]

Response:
local function join(...)
	local new = {}

	for i = 1, select("#", ...) do
		local source = select(i, ...)

		for key, value in pairs(source) do
			if value == None then
				new[key] = nil
			else
				new[key] = value
			end
		end
	end

	return new
end

return join


Prompt:
--[[

	LOWGames Studios
	Date: 27 October 2022
	by Elder

]]

Response:
--

local u1 = nil;
coroutine.wrap(function()
	u1 = require(game.ReplicatedStorage:WaitForChild("Framework"):WaitForChild("Library"));
end)();
local u2 = {};
return function(p1)
	if u2[p1] ~= nil then
		return u2[p1];
	end;
	local u3 = nil;
	pcall(function()
		u3 = u1.MarketplaceService:GetProductInfo(p1, Enum.InfoType.Product);
	end);
	if u3 ~= nil then
		u2[p1] = u3;
	end;
	return u3;
end;


Prompt:
---------------
--// Code
---------------

Response:
for i,v in pairs(PlayerGui:GetDescendants()) do
	if v:IsA("TextButton") or v:IsA("ImageButton") then
		v.MouseButton1Down:Connect(function()
			game.SoundService.Effects.popDown:Play()
		end)
		v.MouseButton1Up:Connect(function()
			game.SoundService.Effects.popUp:Play()
		end)
	end
end


Prompt: -- Check for change event in input. Used for thumbstick input as those are analog

Response:
userInputService.InputChanged:connect(function(input, processed)
	if input.UserInputType == Enum.UserInputType.Gamepad1 then
		-- Check left thumbstick and move character on change
		if input.KeyCode == Enum.KeyCode.Thumbstick1 then
			character.Humanoid:Move(Vector3.new(input.Position.X, 0, -input.Position.Y), true)
		end
		-- Check right thumbstick and change camera angle on change
		if input.KeyCode == Enum.KeyCode.Thumbstick2 then
			deltaAngle = input.Position.X * 5
		end
	end
end)


Prompt: -- Roblox services

Response:
local PhysicsService = game:GetService("PhysicsService")
local Players = game:GetService("Players")

local npcModel = script.Parent


Prompt:
--[[
	[Whether the whole character turns to face the mouse.]
	[If set to true, MseGuide will be set to true and both HeadHorFactor and BodyHorFactor will be set to 0]
--]]

Response: local TurnCharacterToMouse = false


Prompt: --("no gui found - adding")

Response:
local newgui=script.VehicleGui:clone()
script.Parent.Scopeit.Value = false
newgui.Parent=pl.PlayerGui
newgui.Vehicle.Value=script.Parent.Parent
newgui.Fire.Disabled = false


Prompt: -- Functions

Response:
function SPRING.create(self, mass, force, damping, speed)

	local spring	= {
		Target		= Vector3.new();
		Position	= Vector3.new();
		Velocity	= Vector3.new();

		Mass		= mass or 5;
		Force		= force or 50;
		Damping		= damping or 4;
		Speed		= speed  or 4;
	}

	function spring.shove(self, force)
		local x, y, z	= force.X, force.Y, force.Z
		if x ~= x or x == math.huge or x == -math.huge then
			x	= 0
		end
		if y ~= y or y == math.huge or y == -math.huge then
			y	= 0
		end
		if z ~= z or z == math.huge or z == -math.huge then
			z	= 0
		end
		self.Velocity	= self.Velocity + Vector3.new(x, y, z)
	end

	function spring.update(self, dt)
		local scaledDeltaTime = math.min(dt,1) * self.Speed / ITERATIONS

		for i = 1, ITERATIONS do
			local iterationForce= self.Target - self.Position
			local acceleration	= (iterationForce * self.Force) / self.Mass

			acceleration		= acceleration - self.Velocity * self.Damping

			self.Velocity	= self.Velocity + acceleration * scaledDeltaTime
			self.Position	= self.Position + self.Velocity * scaledDeltaTime
		end

		return self.Position
	end

	return spring
end


Prompt: -- // Variables

Response:
local player = playersService.LocalPlayer
local character = player.Character or player.CharacterAdded:Wait()
local rootPart = character:WaitForChild("HumanoidRootPart")


Prompt:
--	["1527622"] = true,
--	["4640898"] = true,
--	["1055299"] = true,

Response:
}

local allowedAssets = {
	["8"] = true, -- Hat
	["11"] = true, -- Shirt
	["12"] = true, -- Pants
	["17"] = true, -- Head
	["18"] = true, -- Face
	["27"] = true, -- Torso
	["28"] = true, -- RightArm
	["29"] = true, -- LeftArm
	["30"] = true, -- LeftLeg
	["31"] = true, -- RightLeg
	["41"] = true, -- HairAccessory
	["42"] = true, -- FaceAccessory
	["43"] = true, -- NeckAccessory
	["44"] = true, -- ShoulderAccessory
	["45"] = true, -- FrontAccessory
	["46"] = true, -- BackAccessory
	["47"] = true, -- WaistAccessory
	["48"] = true, -- ClimbAnimation
	["50"] = true, -- FallAnimation
	["51"] = true, -- IdleAnimation
	["52"] = true, -- JumpAnimation
	["53"] = true, -- RunAnimation
	["54"] = true, -- SwimAnimation
	["55"] = true, -- WalkAnimation
}

local playerWearingAssets = {}
local AssetTypeEnumLookup = {}

local function insertToTable(assets, productInfo)
	table.insert(assets, {
		id = productInfo.AssetId,
		assetType = {
			name = AssetTypeEnumLookup[productInfo.AssetTypeId].Name,
			id = productInfo.AssetTypeId,
		},
		name = productInfo.Name
	})
end

local function getOriginalHeadMesh()
	local mesh = Instance.new("SpecialMesh")
	mesh.MeshType = Enum.MeshType.Head
	mesh.Scale = Vector3.new(1.25, 1.25, 1.25)
	local originalSize = Instance.new("Vector3Value")
	originalSize.Name = "OriginalSize"
	originalSize.Value = Vector3.new(1.25, 1.25, 1.25)
	originalSize.Parent = mesh
	return mesh
end

local function getOriginalFace()
	local decal = Instance.new("Decal")
	decal.Texture = DEFAULT_FACE
	return decal
end

local function getOriginalClothing(clothe)
	if clothe == "Shirt" then
		local shirt = Instance.new("Shirt")
		shirt.ShirtTemplate = DEFAULT_SHIRT
		return shirt
	elseif clothe == "Pants" then
		local pants = Instance.new("Pants")
		pants.PantsTemplate = DEFAULT_PANTS
		return pants
	end
end

local function wear(player, id)
	if id == nil or not (typeof(id) == "number") then
		return
	end
	if not playerWearingAssets[player] then
		return
	end
	if bannedAssets[tostring(id)] then
		return
	end

	local productInfo, items
	local success, err = pcall(function()
		productInfo = Marketplace:GetProductInfo(id)
	end)
	if not success then
		return warn(err)
	end
	local assetTypeId = tostring(productInfo.AssetTypeId)
	if not allowedAssets[assetTypeId] then
		return
	end

	local character = player.Character
	local humanoid = character and character:FindFirstChildWhichIsA("Humanoid")
	if humanoid == nil or humanoid.Health <= 0 then
		return
	end

	local success, err = pcall(function()
		items = Insert:LoadAsset(productInfo.AssetId)
	end)
	if not success then
		return warn(err)
	end
	for i, descendant in ipairs(items:GetDescendants()) do
		if descendant:IsA("LuaSourceContainer") or descendant:IsA("BackpackItem") then
			Debris:AddItem(descendant, 0)
		end
	end

	local characterAppearanceInfo = playerWearingAssets[player]
	local index = nil
	for i, asset in ipairs(characterAppearanceInfo.assets) do
		if asset.id == id then
			index = i
			break
		end
	end

	-- is there a better way to do this?
	if assetTypeId == "8" or assetTypeId == "41" or assetTypeId == "42" or assetTypeId == "43" or assetTypeId == "44" or assetTypeId == "45" or assetTypeId == "46" or assetTypeId == "47" then
		-- accessory
		local accessory = items:GetChildren()[1]
		if not accessory:IsA("Accoutrement") then
			return
		end
		if index then
			local wearing = character:FindFirstChild(accessory.Name)
			if wearing then
				Debris:AddItem(wearing, 0)
				table.remove(characterAppearanceInfo.assets, index)
			end
		elseif #humanoid:GetAccessories() < ACCESSORY_CAP then
			humanoid:AddAccessory(accessory)
			insertToTable(characterAppearanceInfo.assets, productInfo)
		end
	elseif assetTypeId == "11" or assetTypeId == "12" then
		-- clothing
		local clothing = items:GetChildren()[1]
		if not clothing:IsA("Clothing") then
			return
		end
		local wearing = character:FindFirstChildWhichIsA(clothing.ClassName)
		if wearing then
			Debris:AddItem(wearing, 0)
		end
		if index then
			table.remove(characterAppearanceInfo.assets, index)
			getOriginalClothing(clothing.ClassName).Parent = character
		else
			for i, asset in ipairs(characterAppearanceInfo.assets) do
				if productInfo.AssetTypeId == asset.assetType.id then
					table.remove(characterAppearanceInfo.assets, i)
				end
			end
			insertToTable(characterAppearanceInfo.assets, productInfo)
			clothing.Parent = character
		end
	elseif assetTypeId == "48" or assetTypeId == "50" or assetTypeId == "51" or assetTypeId == "52" or assetTypeId == "53" or assetTypeId == "54" or assetTypeId == "55" then
		-- animation
		local animationFolder = items:GetChildren()[1]
		local animateScript = character:FindFirstChild("Animate")

		if index then
			table.remove(characterAppearanceInfo.assets, index)
			for i, value in ipairs(animationFolder:GetChildren()) do
				if animateScript:FindFirstChild(value.Name) then
					Debris:AddItem(animateScript[value.Name], 0)
				end
			end
		else
			for i, asset in ipairs(characterAppearanceInfo.assets) do
				if productInfo.AssetTypeId == asset.assetType.id then
					table.remove(characterAppearanceInfo.assets, i)
				end
			end
			insertToTable(characterAppearanceInfo.assets, productInfo)
			if animateScript then
				for i, value in ipairs(animationFolder:GetChildren()) do
					if animateScript:FindFirstChild(value.Name) then
						Debris:AddItem(animateScript[value.Name], 0)
					end
					value.Parent = animateScript
				end
			end
		end
	elseif assetTypeId == "18" then
		-- face
		local decal = items:GetChildren()[1]
		if not decal:IsA("Decal") then
			return
		end
		local head = character:FindFirstChild("Head")
		local wearing = head and head:FindFirstChildWhichIsA("Decal")
		if wearing then
			Debris:AddItem(wearing, 0)
		end
		if index then
			table.remove(characterAppearanceInfo.assets, index)
			player:LoadCharacterAppearance(getOriginalFace())
		else
			for i, asset in ipairs(characterAppearanceInfo.assets) do
				if productInfo.AssetTypeId == asset.assetType.id then
					table.remove(characterAppearanceInfo.assets, i)
				end
			end
			insertToTable(characterAppearanceInfo.assets, productInfo)
			decal.Parent = head
		end
	elseif assetTypeId == "17" then
		-- head
		local mesh = items:GetChildren()[1]
		if not (mesh:IsA("SpecialMesh") or mesh:IsA("CylinderMesh")) then
			return
		end
		local head = character:FindFirstChild("Head")
		local wearing = head and head:FindFirstChildWhichIsA("SpecialMesh")
		if wearing then
			Debris:AddItem(wearing, 0)
		end
		if index then
			table.remove(characterAppearanceInfo.assets, index)
			player:LoadCharacterAppearance(getOriginalHeadMesh())
		else
			for i, asset in ipairs(characterAppearanceInfo.assets) do
				if productInfo.AssetTypeId == asset.assetType.id then
					table.remove(characterAppearanceInfo.assets, i)
				end
			end
			insertToTable(characterAppearanceInfo.assets, productInfo)
			player:LoadCharacterAppearance(mesh)
		end
	elseif assetTypeId == "27" or assetTypeId == "28" or assetTypeId == "29" or assetTypeId == "30" or assetTypeId == "31" then
		-- body parts
		local bodyPartFolder = items:FindFirstChild("R15ArtistIntent")
		if index then
			table.remove(characterAppearanceInfo.assets, index)
			for i, part in ipairs(bodyPartFolder:GetChildren()) do
				local partInCharacter = character:FindFirstChild(part.Name)
				local bodyPartR15 = partInCharacter and humanoid:GetBodyPartR15(partInCharacter)
				local defaultBodyPart = bodyPartR15 and defaultBodyPartsR15:FindFirstChild(part.Name)
				if defaultBodyPart then
					defaultBodyPart = defaultBodyPart:Clone()
					humanoid:ReplaceBodyPartR15(bodyPartR15, defaultBodyPart)
				end
			end
		else
			for i, asset in ipairs(characterAppearanceInfo.assets) do
				if productInfo.AssetTypeId == asset.assetType.id then
					table.remove(characterAppearanceInfo.assets, i)
				end
			end
			insertToTable(characterAppearanceInfo.assets, productInfo)
			for i, part in ipairs(bodyPartFolder:GetChildren()) do
				local partInCharacter = character:FindFirstChild(part.Name)
				local bodyPartR15 = partInCharacter and humanoid:GetBodyPartR15(partInCharacter)
				if bodyPartR15 then
					humanoid:ReplaceBodyPartR15(bodyPartR15, part)
				end
			end
		end
	end

	humanoid:BuildRigFromAttachments()
	Debris:AddItem(items, 0)
	remoteEvent:FireClient(player, characterAppearanceInfo)
end

local function skinTone(player, color)
	if color == nil or not (typeof(color) == "string") then
		return
	end
	if not playerWearingAssets[player] then
		return
	end

	local character = player.Character
	local humanoid = character and character:FindFirstChildWhichIsA("Humanoid")
	if humanoid == nil or humanoid.Health <= 0 then
		return
	end

	local characterAppearanceInfo = playerWearingAssets[player]
	local brickColor = BrickColor.new(color)
	characterAppearanceInfo.bodyColors.headColorId = brickColor.Number
	characterAppearanceInfo.bodyColors.leftArmColorId = brickColor.Number
	characterAppearanceInfo.bodyColors.leftLegColorId = brickColor.Number
	characterAppearanceInfo.bodyColors.rightArmColorId = brickColor.Number
	characterAppearanceInfo.bodyColors.rightLegColorId = brickColor.Number
	characterAppearanceInfo.bodyColors.torsoColorId = brickColor.Number

	local bodyColors = character:FindFirstChildWhichIsA("BodyColors")
	bodyColors.HeadColor3 = brickColor.Color
	bodyColors.LeftArmColor3 = brickColor.Color
	bodyColors.LeftLegColor3 = brickColor.Color
	bodyColors.RightArmColor3 = brickColor.Color
	bodyColors.RightLegColor3 = brickColor.Color
	bodyColors.TorsoColor3 = brickColor.Color
end

local function scale(player, name, value)
	if name == nil or not (typeof(name) == "string") then
		return
	end
	if value == nil or not (typeof(value) == "number") then
		return
	end
	if not playerWearingAssets[player] then
		return
	end

	local character = player.Character
	local humanoid = character and character:FindFirstChildWhichIsA("Humanoid")
	if humanoid == nil or humanoid.Health <= 0 then
		return
	end

	if name == "BodyHeightScale" then
		math.clamp(value, 95, 105)
	elseif name == "BodyWidthScale" then
		math.clamp(value, 70, 100)
	elseif name == "HeadScale" then
		math.clamp(value, 95, 100)
	elseif name == "BodyProportionScale" then
		math.clamp(value, 0, 100)
	elseif name == "BodyTypeScale" then
		math.clamp(value, 0, 100)
	else
		return
	end

	local scaleValue = humanoid and humanoid:FindFirstChild(name)
	if not scaleValue then
		return
	end

	scaleValue.Value = value/100
end


Prompt:
--[==[

	if you want to make longer comments

	you can surround them with the double dashes and double square brackets "--[[" and "--]]"

	and you can surround those by ones with equals signs in them too

	so you don't have to type the "--" every single line

--]==]


Response:
function onClicked()
Car.BodyVelocity.velocity = Vector3.new(0, 10, 0)
end
script.Parent.ClickDetector.MouseClick:connect(onClicked)


Prompt: -- Set the desired health value

Response: local newHealth = 100 -- You can change this value to the health you want


Prompt: --[[Engine]]

Response:
	--Torque Curve
	Tune.Horsepower		= 616		--	[TORQUE CURVE VISUAL]
	Tune.IdleRPM		= 700		--		https://www.desmos.com/calculator/2uo3hqwdhf
	Tune.PeakRPM		= 7000		--		Use sliders to manipulate values
	Tune.Redline		= 7500		--		Copy and paste slider values into the respective tune values
	Tune.ComfortShift   = 3500
	Tune.EqPoint		= 5500
	Tune.PeakSharpness	= 7.5
	Tune.CurveMult		= 0.16

	--Incline Compensation
	Tune.InclineComp	= 1.7			-- Torque compensation multiplier for inclines (applies gradient from 0-90 degrees)

	--Misc
	Tune.RevAccel		= 150		-- RPM acceleration when clutch is off
	Tune.RevDecay		= 75		-- RPM decay when clutch is off
	Tune.RevBounce		= 500		-- RPM kickback from redline
	Tune.IdleThrottle	= 3			-- Percent throttle at idle
	Tune.ClutchTol		= 500		-- Clutch engagement threshold (higher = faster response)


Prompt: --[[ Constants ]]

Response:
--
local TOUCH_CONTROL_SHEET = ""


Prompt:
--[[
	Marks the store as deleted, disconnecting any outstanding connections.
]]

Response:
function Store:destruct()
	for _, connection in ipairs(self._connections) do
		connection:Disconnect()
	end

	self._connections = nil
end