Response:
function DoorClose()
	if Shaft00.MetalDoor.CanCollide == false then
		Shaft00.MetalDoor.CanCollide = true
		while Shaft00.MetalDoor.Transparency > 0.0 do
			Shaft00.MetalDoor.Transparency = Shaft00.MetalDoor.Transparency - .1
			wait(0.000001)
		end
		Car.BodyVelocity.velocity = Vector3.new(0, 20, 0)	--Change 10 to change the speed.
	end
	if Shaft01.MetalDoor.CanCollide == false then
		Shaft01.MetalDoor.CanCollide = true
		while Shaft01.MetalDoor.Transparency > 0.0 do
			Shaft01.MetalDoor.Transparency = Shaft01.MetalDoor.Transparency - .1
			wait(0.000001)
		end
		Car.BodyVelocity.velocity = Vector3.new(0, 20, 0)
	end
	if Shaft02.MetalDoor.CanCollide == false then
		Shaft02.MetalDoor.CanCollide = true
		while Shaft02.MetalDoor.Transparency > 0.0 do
			Shaft02.MetalDoor.Transparency = Shaft02.MetalDoor.Transparency - .1
			wait(0.000001)
		end
		Car.BodyVelocity.velocity = Vector3.new(0, 20, 0)
	end
	if Shaft03.MetalDoor.CanCollide == false then
		Shaft03.MetalDoor.CanCollide = true
		while Shaft03.MetalDoor.Transparency > 0.0 do
			Shaft03.MetalDoor.Transparency = Shaft03.MetalDoor.Transparency - .1
			wait(0.000001)
		end
		Car.BodyVelocity.velocity = Vector3.new(0, 20, 0)
	end
	if Shaft04.MetalDoor.CanCollide == false then
		Shaft04.MetalDoor.CanCollide = true
		while Shaft04.MetalDoor.Transparency > 0.0 do
			Shaft04.MetalDoor.Transparency = Shaft04.MetalDoor.Transparency - .1
			wait(0.000001)
		end
		Car.BodyVelocity.velocity = Vector3.new(0, 20, 0)
	end
	if Shaft05.MetalDoor.CanCollide == false then
		Shaft05.MetalDoor.CanCollide = true
		while Shaft05.MetalDoor.Transparency > 0.0 do
			Shaft05.MetalDoor.Transparency = Shaft05.MetalDoor.Transparency - .1
			wait(0.000001)
		end

	end
	if Shaft06.MetalDoor.CanCollide == false then
		Shaft06.MetalDoor.CanCollide = true
		while Shaft06.MetalDoor.Transparency > 0.0 do
			Shaft06.MetalDoor.Transparency = Shaft06.MetalDoor.Transparency - .1
			wait(0.000001)
		end
		Car.BodyVelocity.velocity = Vector3.new(0, -20, 0)
	end
	if Shaft07.MetalDoor.CanCollide == false then
		Shaft07.MetalDoor.CanCollide = true
		while Shaft07.MetalDoor.Transparency > 0.0 do
			Shaft07.MetalDoor.Transparency = Shaft07.MetalDoor.Transparency - .1
			wait(0.000001)
		end
		Car.BodyVelocity.velocity = Vector3.new(0, -20, 0)
	end
	if Shaft08.MetalDoor.CanCollide == false then
		Shaft08.MetalDoor.CanCollide = true
		while Shaft08.MetalDoor.Transparency > 0.0 do
			Shaft08.MetalDoor.Transparency = Shaft08.MetalDoor.Transparency - .1
			wait(0.000001)
		end
		Car.BodyVelocity.velocity = Vector3.new(0, -20, 0)
	end
	if Shaft09.MetalDoor.CanCollide == false then
		Shaft09.MetalDoor.CanCollide = true
		while Shaft09.MetalDoor.Transparency > 0.0 do
			Shaft09.MetalDoor.Transparency = Shaft09.MetalDoor.Transparency - .1
			wait(0.000001)
		end
		Car.BodyVelocity.velocity = Vector3.new(0, -20, 0)
	end
	if Shaft10.MetalDoor.CanCollide == false then
		Shaft10.MetalDoor.CanCollide = true
		while Shaft10.MetalDoor.Transparency > 0.0 do
			Shaft10.MetalDoor.Transparency = Shaft10.MetalDoor.Transparency - .1
			wait(0.000001)
		end
		Car.BodyVelocity.velocity = Vector3.new(0, -20, 0)
	end
	if Shaft11.MetalDoor.CanCollide == false then
		Shaft11.MetalDoor.CanCollide = true
		while Shaft11.MetalDoor.Transparency > 0.0 do
			Shaft11.MetalDoor.Transparency = Shaft11.MetalDoor.Transparency - .1
			wait(0.000001)
		end
		Car.BodyVelocity.velocity = Vector3.new(0, -20, 0)
	end
	if Shaft12.MetalDoor.CanCollide == false then
		Shaft12.MetalDoor.CanCollide = true
		while Shaft12.MetalDoor.Transparency > 0.0 do
			Shaft12.MetalDoor.Transparency = Shaft12.MetalDoor.Transparency - .1
			wait(0.000001)
		end
		Car.BodyVelocity.velocity = Vector3.new(0, -20, 0)
	end
	if Shaft13.MetalDoor.CanCollide == false then
		Shaft13.MetalDoor.CanCollide = true
		while Shaft13.MetalDoor.Transparency > 0.0 do
			Shaft13.MetalDoor.Transparency = Shaft13.MetalDoor.Transparency - .1
			wait(0.000001)
		end
		Car.BodyVelocity.velocity = Vector3.new(0, -20, 0)
	end
end

function onClicked()
DoorClose()

end

script.Parent.MouseButton1Click:connect(onClicked)

script.Parent.MouseButton1Click:connect(function()
	if clicker == true
		then clicker = false
	else
		return

	end
end)

script.Parent.MouseButton1Click:connect(function()
Car.Touched:connect(function(otherPart)
	if otherPart == Elevator.Floors.F06
		then StopE() DoorOpen()
	end
end)end)

function StopE()
 Car.BodyVelocity.velocity = Vector3.new(0, 0, 0)
 Car.BodyPosition.position = Elevator.Floors.F06.Position
	clicker = true
end

function DoorOpen()
	while Shaft05.MetalDoor.Transparency < 1.0 do
	Shaft05.MetalDoor.Transparency = Shaft05.MetalDoor.Transparency + .1
	wait(0.000001)
	end
	Shaft05.MetalDoor.CanCollide = false
end


Prompt: -- Connect mobile sprint button state change to update walk speed

Response:
if UserInputService.TouchEnabled then
	while task.wait(0.1) do
		updateWalkSpeed()
	end
end


Prompt: -- Shows initial value if anything is currently in the CurrencyToCollect


Prompt: --solves the problem of tools falling thru houses

Response:
local connectedtools = {}

function GetConnection(tool)
	for _,v in pairs(connectedtools) do
		if v == tool then
			return true
		end
	end
	return false
end

game.Players.PlayerAdded:connect(function(plr)
	plr.CharacterAdded:connect(function(char)
		char.ChildAdded:connect(function(child)
			if child:IsA("Tool") and not GetConnection(child) then
				child.Changed:connect(function(property)
					if child and child.Parent ~= nil and property == "Parent" then
						wait(1/30)
						local handle = child:FindFirstChild("Handle")
						if child.Parent == workspace then
							if handle and handle:CanSetNetworkOwnership() and plr then
								handle:SetNetworkOwner(plr)
							end
						else
							if handle and handle:CanSetNetworkOwnership() and plr then
								handle:SetNetworkOwnershipAuto()
							end
						end
					end
				end)
				table.insert(connectedtools,child)
			end
		end)
	end)
end)

while true do --clean table
	wait(1)
	for i,v in pairs(connectedtools) do
		if v.Parent == nil then
			connectedtools[i] = nil
		end
	end
end


Prompt: ------------------------------------------Gun info

Response:
wait(1)
ToolName="M4"
ClipSize=30
ReloadTime=0
Firerate= 0
MinSpread=0.001
MaxSpread=0.0015
SpreadRate=0
Bulletdrop = 0.00001
automatic = false
burst = false
shot = true
Tool = script.Parent
enabled = true
local skateboardId = 65068906
local arms = nil
local torso = nil
local weld33 = nil -- right arm
local weld55 = nil -- left arm
local welds = {}

BarrlePos=Vector3.new(0,0,0)Cursors={"http://www.roblox.com/asset/?id=47894837"}
ReloadCursor="rbxasset://textures\\GunWaitCursor.png"

barrel_1  = script.Parent:findFirstChild("barrelpos1") or script.Parent.Handle
barrel_2 = script.Parent:findFirstChild("barrelpos2") or script.Parent.Handle

double = false	--Double Wielded
doublemode = 1 -- 1 is alternating, 2 is both


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

Response:
local u1 = Random.new();
return function(...)
	local v14
	local v1 = { ... };
	if #v1 < 2 then
		return v1[1] and v1[1][1];
	end;
	local v2 = u1:NextNumber();
	(function()
		local v3 = 0;

			for v4, v5 in ipairs(v1) do
			if not v4 then
				break;
			end;
			v3 = v3 + v5[2];
		end;

			for v7, v8 in ipairs(v1) do
			if not v7 then
				break;
			end;
			v8[2] = v8[2] / v3;
		end;
	end)();
	local v10 = 0;
		for v11, v12 in ipairs(v1) do
		if not v11 then
			 v14 = nil;
			break;
		end;
		v10 = v10 + v12[2];
		if v2 <= v10 then
			v14 = v12;
			break;
		end;
	end;
	return v14[1], v2;
end;


Prompt:
--[[
	Main RenderStep Update. The camera controller and occlusion module both have opportunities
	to set and modify (respectively) the CFrame and Focus before it is set once on CurrentCamera.
	The camera and occlusion modules should only return CFrames, not set the CFrame property of
	CurrentCamera directly.
--]]

Response:
local last=CFrame.new()
function CameraModule:Update(dt)
	--local Framerate = dt / (1/60)
	if self.activeCameraController then
		if FFlagUserCameraToggle then
			self.activeCameraController:UpdateMouseBehavior()
		end

		local newCameraCFrame, newCameraFocus = self.activeCameraController:Update(dt)
		self.activeCameraController:ApplyVRTransform()
		if self.activeOcclusionModule then
			newCameraCFrame, newCameraFocus = self.activeOcclusionModule:Update(dt, newCameraCFrame, newCameraFocus)
		end

		Players.LocalPlayer.CAM.Value=newCameraCFrame

		local new=newCameraCFrame

		-- Here is where the new CFrame and Focus are set for this render frame
		if _G.COFF then
			local off=_G.COFF or CFrame.new()
			game.Workspace.CurrentCamera.CFrame = last:lerp(new*off,0.4)--newCameraCFrame
		else
			workspace.CurrentCamera.CFrame = newCameraCFrame
		end
		game.Workspace.CurrentCamera.Focus = newCameraFocus

		last=new

		-- Update to character local transparency as needed based on camera-to-subject distance
		if self.activeTransparencyController then
			self.activeTransparencyController:Update()
		end
	end
end


Prompt: --// All global vars will be wiped/replaced except script

Response:
return function(data, env)
	if env then
		setfenv(1, env)
	end

	local playergui = service.PlayerGui
	local localplayer = service.Players.LocalPlayer
	local gui = service.New("ScreenGui")
	local toggle = service.New("ImageButton", gui)
	local gTable = client.UI.Register(gui)

	local clickSound = service.New("Sound")
	clickSound.Parent = toggle
	clickSound.Volume = 0.25
	clickSound.SoundId = "rbxassetid://156286438"

	if client.UI.Get("HelpButton", gui, true) then
		gui:Destroy()
		gTable:Destroy()
		return nil
	end

	gTable.Name = "HelpButton"
	gTable.CanKeepAlive = false

	toggle.Name = "Toggle"
	toggle.BackgroundTransparency = 1
	toggle.Position = UDim2.new(1, -45, 1, -45)
	toggle.Size = UDim2.new(0, 40, 0, 40)
	toggle.Image = client.HelpButtonImage
	toggle.ImageTransparency = 0.35
	toggle.Modal = client.Variables.ModalMode
	toggle.ClipsDescendants = true

	--if client.UI.Get("Chat") then
	--	toggle.Position = UDim2.new(1, -(45+40),1, -45)
	--end

	toggle.MouseButton1Down:Connect(function()
		spawn(function()
			local effect = Instance.new("ImageLabel", toggle)
			effect.AnchorPoint = Vector2.new(0.5, 0.5)
			effect.BorderSizePixel = 0
			effect.ZIndex = toggle.ZIndex + 1
			effect.BackgroundTransparency = 1
			effect.ImageTransparency = 0.8
			effect.Image = "rbxasset://textures/whiteCircle.png"
			effect.Position = UDim2.new(0.5, 0, 0.5, 0)
			effect:TweenSize(UDim2.new(0, toggle.AbsoluteSize.X * 2.5, 0, toggle.AbsoluteSize.X * 2.5), Enum.EasingDirection.Out, Enum.EasingStyle.Linear, 0.2)
			wait(0.2)
			effect:Destroy()
		end)
		local found = client.UI.Get("UserPanel",nil,true)
		if found then
			found.Object:Destroy()
		else
			clickSound:Play()
			client.UI.Make("UserPanel",{})
		end
	end)

	gTable:Ready()
end


Prompt: -- When player joins, have them spawn at the lobby

Response:
local function onPlayerJoin(player)
	LeaderboardManager.new(player)
end


Prompt: --Torso


Prompt: -- Request limit bookkeeping:

Response:
local Budgets = {}

local budgetRequestQueues = {
	[Enum.DataStoreRequestType.GetAsync] = {};
	[Enum.DataStoreRequestType.GetSortedAsync] = {};
	[Enum.DataStoreRequestType.OnUpdate] = {};
	[Enum.DataStoreRequestType.SetIncrementAsync] = {};
	[Enum.DataStoreRequestType.SetIncrementSortedAsync] = {};
}

local function initBudget()
	for requestType, const in pairs(ConstantsMapping) do
		Budgets[requestType] = const.START
	end
	Budgets[Enum.DataStoreRequestType.UpdateAsync] = math.min(
		Budgets[Enum.DataStoreRequestType.GetAsync],
		Budgets[Enum.DataStoreRequestType.SetIncrementAsync]
	)
end

local function updateBudget(req, const, dt, n)
	if not Constants.BUDGETING_ENABLED then
		return
	end
	local rate = const.RATE + n * const.RATE_PLR
	Budgets[req] = math.min(
		Budgets[req] + dt * rate,
		const.MAX_FACTOR * rate
	)
end

local function stealBudget(budget)
	if not Constants.BUDGETING_ENABLED then
		return
	end
	for _, requestType in pairs(budget) do
		if Budgets[requestType] then
			Budgets[requestType] = math.max(0, Budgets[requestType] - 1)
		end
	end
	Budgets[Enum.DataStoreRequestType.UpdateAsync] = math.min(
		Budgets[Enum.DataStoreRequestType.GetAsync],
		Budgets[Enum.DataStoreRequestType.SetIncrementAsync]
	)
end

local function checkBudget(budget)
	if not Constants.BUDGETING_ENABLED then
		return true
	end
	for _, requestType in pairs(budget) do
		if Budgets[requestType] and Budgets[requestType] < 1 then
			return false
		end
	end
	return true
end

if RunService:IsServer() then
	-- Only do budget/throttle updating on server (in case package required on client)

	initBudget()

	delay(0, function() -- Thread that increases budgets and de-throttles requests periodically
		local lastCheck = tick()
		while wait(Constants.BUDGET_UPDATE_INTERVAL) do
			local now = tick()
			local dt = (now - lastCheck) / 60
			lastCheck = now
			local n = #Players:GetPlayers()

			for requestType, const in pairs(ConstantsMapping) do
				updateBudget(requestType, const, dt, n)
			end
			Budgets[Enum.DataStoreRequestType.UpdateAsync] = math.min(
				Budgets[Enum.DataStoreRequestType.GetAsync],
				Budgets[Enum.DataStoreRequestType.SetIncrementAsync]
			)

			for _, budgetRequestQueue in pairs(budgetRequestQueues) do
				for i = #budgetRequestQueue, 1, -1 do
					local request = budgetRequestQueue[i]

					local thread = request.Thread
					local budget = request.Budget
					local key = request.Key
					local lock = request.Lock
					local cache = request.Cache

					if not (lock and (lock[key] or tick() - (cache[key] or 0) < Constants.WRITE_COOLDOWN)) and checkBudget(budget) then
						table.remove(budgetRequestQueue, i)
						stealBudget(budget)
						coroutine.resume(thread)
					end
				end
			end
		end
	end)

	game:BindToClose(function()
		for requestType, const in pairs(ConstantsMapping) do
			Budgets[requestType] = math.max(
				Budgets[requestType],
				Constants.BUDGET_ONCLOSE_BASE * (const.RATE / Constants.BUDGET_BASE)
			)
		end
		Budgets[Enum.DataStoreRequestType.UpdateAsync] = math.min(
			Budgets[Enum.DataStoreRequestType.GetAsync],
			Budgets[Enum.DataStoreRequestType.SetIncrementAsync]
		)
	end)

end

function MockDataStoreManager.GetGlobalData()
	return Data.GlobalDataStore
end

function MockDataStoreManager.GetData(name, scope)
	assert(type(name) == "string")
	assert(type(scope) == "string")

	if not Data.DataStore[name] then
		Data.DataStore[name] = {}
	end
	if not Data.DataStore[name][scope] then
		Data.DataStore[name][scope] = {}
	end

	return Data.DataStore[name][scope]
end

function MockDataStoreManager.GetOrderedData(name, scope)
	assert(type(name) == "string")
	assert(type(scope) == "string")

	if not Data.OrderedDataStore[name] then
		Data.OrderedDataStore[name] = {}
	end
	if not Data.OrderedDataStore[name][scope] then
		Data.OrderedDataStore[name][scope] = {}
	end

	return Data.OrderedDataStore[name][scope]
end

function MockDataStoreManager.GetDataInterface(data)
	return Interfaces[data]
end

function MockDataStoreManager.SetDataInterface(data, interface)
	assert(type(data) == "table")
	assert(type(interface) == "table")

	Interfaces[data] = interface
end

function MockDataStoreManager.GetBudget(requestType)
	if Constants.BUDGETING_ENABLED then
		return math.floor(Budgets[requestType] or 0)
	else
		return math.huge
	end
end

function MockDataStoreManager.YieldForWriteLockAndBudget(callback, key, writeLock, writeCache, budget)
	assert(type(callback) == "function")
	assert(type(key) == "string")
	assert(type(writeLock) == "table")
	assert(type(writeCache) == "table")
	assert(#budget > 0)

	local mainRequestType = budget[1]

	if #budgetRequestQueues[mainRequestType] >= Constants.THROTTLE_QUEUE_SIZE then
		return false -- no room in throttle queue
	end

	callback() -- would i.e. trigger a warning in output

	table.insert(budgetRequestQueues[mainRequestType], 1, {
		Key = key;
		Lock = writeLock;
		Cache = writeCache;
		Thread = coroutine.running();
		Budget = budget;
	})
	coroutine.yield()

	return true
end

function MockDataStoreManager.YieldForBudget(callback, budget)
	assert(type(callback) == "function")
	assert(#budget > 0)

	local mainRequestType = budget[1]

	if checkBudget(budget) then
		stealBudget(budget)
	elseif #budgetRequestQueues[mainRequestType] >= Constants.THROTTLE_QUEUE_SIZE then
		return false -- no room in throttle queue
	else
		callback() -- would i.e. trigger a warning in output

		table.insert(budgetRequestQueues[mainRequestType], 1, {
			After = 0; -- no write lock
			Thread = coroutine.running();
			Budget = budget;
		})
		coroutine.yield()
	end

	return true
end

function MockDataStoreManager.ExportToJSON()
	local export = {}

	if next(Data.GlobalDataStore) ~= nil then -- GlobalDataStore not empty
		export.GlobalDataStore = Data.GlobalDataStore
	end
	export.DataStore = Utils.prepareDataStoresForExport(Data.DataStore) -- can be nil
	export.OrderedDataStore = Utils.prepareDataStoresForExport(Data.OrderedDataStore) -- can be nil

	return HttpService:JSONEncode(export)
end


Prompt: --detect when player sits, tell player to press space to jump, detect when player presses space. Then remove the intructions

Response:
if IsNewPlayer and not UIS.TouchEnabled then
	script.Parent.Changed:connect(function(prop)
		if prop == "Visible" and not UIS.TouchEnabled then
			if script.Parent.Visible then
				keyboardInput = UIS.InputBegan:connect(function(input,gameProcessed)
					if input.UserInputType == Enum.UserInputType.Keyboard and input.KeyCode == Enum.KeyCode.Space then
						script.Parent:Destroy()
					end
				end)
				wait(7)
				script.Parent.Visible = false
			else
				if keyboardInput then keyboardInput:disconnect() keyboardInput = nil  end
			end

		end
	end)

	local humanoid = game.Players.LocalPlayer.Character:WaitForChild("Humanoid",5)
	humanoid.Seated:connect(function(active,seat)
		if active and seat and seat.Parent then
			if not ShowedExitMessage and seat.Name == "Driver" then
				script.Parent.Frame.TextLabel.Text = "Exit Car"
				ShowedExitMessage = true
				wait(2)
				script.Parent.Visible = true

			elseif not ShowedStandMessage and seat.Name ~= "Driver" then
				script.Parent.Frame.TextLabel.Text = "Stand Up"
				ShowedStandMessage = true
				wait(.5)
				script.Parent.Visible = true

			end
		end
	end)
else
	script.Parent:Destroy()

end


Prompt: --MOT is up and down while MOT2 is side to side

Response:
wt = 0.07

while wait(0.01) do

if values.Gear.Value == -1 then
	MOT2.DesiredAngle = -0.2
	wait(wt)
	MOT.DesiredAngle = 0.2
end

if values.Gear.Value == 0 then
	MOT.DesiredAngle = 0
	wait(wt)
	MOT2.DesiredAngle = 0
end

if values.Gear.Value == 1 then
	MOT2.DesiredAngle = 0.2
	wait(wt)
	MOT.DesiredAngle = -0.2
	end
if values.Gear.Value == 2 then
	MOT.DesiredAngle = 0.2
	wait(wt)
	MOT2.DesiredAngle = 0.2
	end

if values.Gear.Value == 3 then
	MOT.DesiredAngle = -0.2
	wait(wt)
	MOT2.DesiredAngle = 0
	end
if values.Gear.Value == 4 then
	MOT.DesiredAngle = 0.2
	wait(wt)
	MOT2.DesiredAngle = 0
end

if values.Gear.Value == 5 then
	MOT.DesiredAngle = -0.2
	wait(wt)
	MOT2.DesiredAngle = -0.2
end

if values.Gear.Value == 6 then
	MOT.DesiredAngle = 0.2
	wait(wt)
	MOT2.DesiredAngle = -0.2
end

end


Prompt: --make blood disappear

Response:
while script.Parent.Mesh.Scale.X<1 do
game:GetService("RunService").Stepped:wait()
script.Parent.Mesh.Scale=Vector3.new(script.Parent.Mesh.Scale.X+0.05,0.1,script.Parent.Mesh.Scale.Z+0.05)

end
wait(math.random(5,20))
while script.Parent.Decal.Transparency<1 do
game:GetService("RunService").Stepped:wait()
script.Parent.Decal.Transparency=script.Parent.Decal.Transparency+.1
end
script.Parent:remove()


Prompt: --griptcf = CFrame.new(0, -1, 0) * CFrame.fromEulerAnglesXYZ(-math.pi/2+0.5, 0, 0)

Response:
script.Parent.Unequipped:connect(function()
	--Bring_Arm_Down animation
	for i = 1, 0, -0.05 do
		wait()
		RW.C0 = CFrame.new(1.5, 0.5, 0) * CFrame.fromEulerAnglesXYZ(1.3*i, 0, -0.5*i)
		LW.C0 = CFrame.new(-1.5, 0.5, 0) * CFrame.fromEulerAnglesXYZ(1.7*i, 0, 0.8*i)
		LW.C1 = CFrame.new(-0.3*i, 0.5+1.2*i, 0)
	end
	RW.Parent = nil
	LW.Parent = nil
	RSH.Parent = player.Character.Torso
	LSH.Parent = player.Character.Torso
end)

function HomeRunHit(part)
	local h = (part.Parent or game):FindFirstChild("Humanoid") --or findfirstchild optimization
	if h then
		h.Sit = true
		wait()
		h.Jump = true
		h.Parent.Torso.Velocity = (CFrame.new(script.Parent.Handle.Position, h.Parent.Torso.Position).lookVector * 100) + Vector3.new(0, 30, 0)
		h.Parent.Torso.RotVelocity = Vector3.new(math.random(-100, 100), math.random(-100, 100), math.random(-100, 100))
	end
end

function HomeRun()
	for i = 0, 1, 0.1 do
		if anim ~= "homerun" then return end
		wait()
		RW.C0 = CFrame.new(1.5, 0.5, 0) * CFrame.fromEulerAnglesXYZ(1.3+1.2*i, -0.5*i, -0.5+i)
		--R.C0 = CFrame.new(1.5, 0.5, 0) * CFrame.fromEulerAnglesXYZ(2.5, -0.5, 0.5)
		LW.C0 = CFrame.new(-1.5+0.5*i, 0.5, -0.5*i) * CFrame.fromEulerAnglesXYZ(1.7, 0, 0.8)
		--L.C0 = CFrame.new(-1.0, 0.5, -0.5) * CFrame.fromEulerAnglesXYZ(1.7, 0, 1)
	end
	--start homerunhit connection--
	local con = script.Parent.Handle.Touched:connect(HomeRunHit)
	----------------------------------------
	for i = 0, 1, 0.2 do
		wait()
		RW.C0 = CFrame.new(1.5, 0.5, 0) * CFrame.fromEulerAnglesXYZ(2.5, -0.5-1.7*i, 0.5+0.5*i)
		--R.C0 = CFrame.new(1.5, 0.5, 0) * CFrame.fromEulerAnglesXYZ(2.5, -2.2, 1)
		LW.C0 = CFrame.new(-1-0.5*i, 0.5, -0.5+0.5*i) * CFrame.fromEulerAnglesXYZ(1.7, 0, 0.8-1.2*i)
		LW.C1 = CFrame.new(0, 0.5-i, 0)
		GRP.C0 = CFrame.new(0, -1, 0) * CFrame.fromEulerAnglesXYZ(-1-2*i, 0, 0)
	end
	for i = 0, 1, 0.2 do
		wait()
		RW.C0 = CFrame.new(1.5, 0.5, 0) * CFrame.fromEulerAnglesXYZ(2.5, -2.2-0.6*i, 1)
	end
	wait(0.1)
	----end homerun connection---
	con:disconnect()
	--------------------------------------
	for i = 0, 1, 0.1 do
		wait()
		RW.C0 = CFrame.new(1.5, 0.5, 0) * CFrame.fromEulerAnglesXYZ(2.5-1.2*i, -2.8+2.8*i, 1-1.5*i)
		--RW.C0 = CFrame.new(1.5, 0.5, 0) * CFrame.fromEulerAnglesXYZ(1.3, 0, -0.5)
		LW.C0 = CFrame.new(-1.5, 0.5, 0) * CFrame.fromEulerAnglesXYZ(1.7, 0, -0.4+1.2*i)
		LW.C1 = CFrame.new(0, -0.5+i*2, 0)
		--LW.C0 = CFrame.new(-1.5, 0.5, 0) * CFrame.fromEulerAnglesXYZ(1.7, 0, 0.8)
		GRP.C0 = CFrame.new(0, -1, 0) * CFrame.fromEulerAnglesXYZ(-3+2*i, 0, 0)
	end
end

function Whack()
	for i = 0, 1, 0.2 do
		if anim ~= "norm" then return end
		wait()
		RW.C0 = CFrame.new(1.5, 0.5, 0) * CFrame.fromEulerAnglesXYZ(1.3+i, 0, -0.5+0.5*i)
		LW.C0 = CFrame.new(-1.5, 0.5, 0) * CFrame.fromEulerAnglesXYZ(1.7-0.25*i, 0, 0.8-0.6*i)
	end
	for i = 0, 1, 0.25 do
		if anim ~= "norm" then return end
		wait()
		RW.C0 = CFrame.new(1.5, 0.5, 0) * CFrame.fromEulerAnglesXYZ(2.3-2.5*i, 0, 0)
		LW.C0 = CFrame.new(-1.5, 0.5, 0) * CFrame.fromEulerAnglesXYZ(1.45-0.25*i, 0, 0.2)
		GRP.C0 = CFrame.new(0, -1, 0) * CFrame.fromEulerAnglesXYZ(-1-0.5*i, 0, 0)
	end
	--insert camshake and hit nearby people
	for _, p in pairs(game.Players:GetChildren()) do
		if p.Character:FindFirstChild("Torso") then
			if (p.Character.Torso.Position - (script.Parent.Handle.CFrame*CFrame.new(0, -3, 0)).p).magnitude < 10 then
				local s = script.Parent._CamShake:clone()
				s.Disabled = false
				s.Parent = p.Backpack
				if p ~= player then
					p.Character.Humanoid.Sit = true
					delay(0.1, function() p.Character.Humanoid.Jump = true end)
					p.Character.Torso.RotVelocity = Vector3.new(math.random(-10, 10), math.random(-10, 10), math.random(-10, 10))
				end
			end
		end
	end
	------
	for i = 0, 1, 0.2 do
		if anim ~= "norm" then return end
		wait()
		RW.C0 = CFrame.new(1.5, 0.5, 0) * CFrame.fromEulerAnglesXYZ(-0.2+1.5*i, 0, -0.5*i)
		LW.C0 = CFrame.new(-1.5, 0.5, 0) * CFrame.fromEulerAnglesXYZ(1.2+0.5*i, 0, 0.2+0.6*i)
		GRP.C0 = CFrame.new(0, -1, 0) * CFrame.fromEulerAnglesXYZ(-1.5+0.5*i, 0, 0)
	end
end

local a = false
local co = nil


Prompt: --[[Wheel Configuration]]

Response:
	--Store Reference Orientation Function
	function getParts(model,t,a)
		for i,v in pairs(model:GetChildren()) do
			if v:IsA("BasePart") then table.insert(t,{v,a.CFrame:toObjectSpace(v.CFrame)})
			elseif v:IsA("Model") then getParts(v,t,a)
			end
		end
	end

	--PGS/Legacy
	local fDensity = _Tune.FWheelDensity
	local rDensity = _Tune.RWheelDensity

	local fDistX=_Tune.FWsBoneLen*math.cos(math.rad(_Tune.FWsBoneAngle))
	local fDistY=_Tune.FWsBoneLen*math.sin(math.rad(_Tune.FWsBoneAngle))
	local rDistX=_Tune.RWsBoneLen*math.cos(math.rad(_Tune.RWsBoneAngle))
	local rDistY=_Tune.RWsBoneLen*math.sin(math.rad(_Tune.RWsBoneAngle))

	local fSLX=_Tune.FSusLength*math.cos(math.rad(_Tune.FSusAngle))
	local fSLY=_Tune.FSusLength*math.sin(math.rad(_Tune.FSusAngle))
	local rSLX=_Tune.RSusLength*math.cos(math.rad(_Tune.RSusAngle))
	local rSLY=_Tune.RSusLength*math.sin(math.rad(_Tune.RSusAngle))

	for _,v in pairs(Drive) do
		--Apply Wheel Density
		if v.Name=="FL" or v.Name=="FR" or v.Name=="F" then
			if v:IsA("BasePart") then
				if v.CustomPhysicalProperties == nil then v.CustomPhysicalProperties = PhysicalProperties.new(v.Material) end
				v.CustomPhysicalProperties = PhysicalProperties.new(
					fDensity,
					v.CustomPhysicalProperties.Friction,
					v.CustomPhysicalProperties.Elasticity,
					v.CustomPhysicalProperties.FrictionWeight,
					v.CustomPhysicalProperties.ElasticityWeight
				)
			end
		else
			if v:IsA("BasePart") then
				if v.CustomPhysicalProperties == nil then v.CustomPhysicalProperties = PhysicalProperties.new(v.Material) end
				v.CustomPhysicalProperties = PhysicalProperties.new(
					rDensity,
					v.CustomPhysicalProperties.Friction,
					v.CustomPhysicalProperties.Elasticity,
					v.CustomPhysicalProperties.FrictionWeight,
					v.CustomPhysicalProperties.ElasticityWeight
				)
			end
		end

		--Resurface Wheels
		for _,a in pairs({"Top","Bottom","Left","Right","Front","Back"}) do
			v[a.."Surface"]=Enum.SurfaceType.SmoothNoOutlines
		end

		--Store Axle-Anchored/Suspension-Anchored Part Orientation
		local WParts = {}

		local tPos = v.Position-car.DriveSeat.Position
		if v.Name=="FL" or v.Name=="RL" then
			v.CFrame = car.DriveSeat.CFrame*CFrame.Angles(math.rad(90),0,math.rad(90))
		else
			v.CFrame = car.DriveSeat.CFrame*CFrame.Angles(math.rad(90),0,math.rad(-90))
		end
		v.CFrame = v.CFrame+tPos

		if v:FindFirstChild("Parts")~=nil then
			getParts(v.Parts,WParts,v)
		end
		if v:FindFirstChild("Fixed")~=nil then
			getParts(v.Fixed,WParts,v)
		end

		--Align Wheels
		if v.Name=="FL" then
			v.CFrame = v.CFrame*CFrame.Angles(math.rad(_Tune.FCamber),math.rad(-_Tune.FCaster),math.rad(_Tune.FToe))
		elseif v.Name=="FR" then
			v.CFrame = v.CFrame*CFrame.Angles(math.rad(_Tune.FCamber),math.rad(_Tune.FCaster),math.rad(-_Tune.FToe))
		elseif v.Name=="RL" then
			v.CFrame = v.CFrame*CFrame.Angles(math.rad(_Tune.RCamber),math.rad(-_Tune.FCaster),math.rad(_Tune.RToe))
		elseif v.Name=="RR" then
			v.CFrame = v.CFrame*CFrame.Angles(math.rad(_Tune.RCamber),math.rad(_Tune.FCaster),math.rad(-_Tune.RToe))
		end

		--Re-orient Axle-Anchored/Suspension-Anchored Parts
		for _,a in pairs(WParts) do
			a[1].CFrame=v.CFrame:toWorldSpace(a[2])
		end


Prompt: --		child.C0 = CFrame.new(0,-0.6,0)*CFrame.fromEulerAnglesXYZ(-(math.pi/2),0,0) --// Reposition player

Response:
		if child.Part1.Name == "HumanoidRootPart" then
			player = game.Players:GetPlayerFromCharacter(child.Part1.Parent)
				if player and (not player.PlayerGui:FindFirstChild("Screen")) then --// The part after the "and" prevents multiple GUI's to be copied over.
					GUI.CarSeat.Value = script.Parent --// Puts a reference of the seat in this ObjectValue, now you can use this ObjectValue's value to find the car directly.
					GUI:Clone().Parent = player.PlayerGui --// Compact version
					script.Parent.Parent.Body.Lights.Runner.Material = "Neon"
					script.Parent.Parent.Body.Dash.Screen.SurfaceGui.Enabled = true
					script.Parent.Parent.Body.Dash.Screen2.SurfaceGui.Enabled = true
					script.Parent.Occupied.Value = true
				end
		end
	end
end)

script.Parent.ChildRemoved:connect(function(child)
	if child:IsA("Weld") then
		if child.Part1.Name == "HumanoidRootPart" then
			game.Workspace.CurrentCamera.FieldOfView = 70
			player = game.Players:GetPlayerFromCharacter(child.Part1.Parent)
			if player and player.PlayerGui:FindFirstChild("SS3") then
				player.PlayerGui:FindFirstChild("SS3"):Destroy()
				script.Parent.Parent.Body.Lights.Runner.Material = "SmoothPlastic"
				script.Parent.Parent.Body.Dash.Screen.SurfaceGui.Enabled = false
				script.Parent.Parent.Body.Dash.Screen2.SurfaceGui.Enabled = false
				script.Parent.Occupied.Value = false
			end
		end
	end
end)


Prompt: -- Right Arms

Response:
character.RagdollRig.ConstraintRightUpperArm.Attachment0 = RUA
character.RagdollRig.ConstraintRightUpperArm.Attachment1 = RUARig
character.RagdollRig.ConstraintRightLowerArm.Attachment0 = RLA
character.RagdollRig.ConstraintRightLowerArm.Attachment1 = RLARig
character.RagdollRig.ConstraintRightHand.Attachment0 = RH
character.RagdollRig.ConstraintRightHand.Attachment1 = RHRig


Prompt: -- Roact

Response:
local new = Roact.createElement
local NotificationDialog = require(script:WaitForChild('NotificationDialog'))


Prompt:
--[=[
	Returns if the pane is visible
	@return boolean
]=]

Response:
function BasicPane:IsVisible()
	return self._visible
end


Prompt:
--local PurchaseActive = false
--local MPS = game:GetService("MarketplaceService")
--local Players = game:GetService("Players")
--local Cart = {}
--local IsRobuxPurchaseActive = false
--local WasPurchaseDeclined = false
--script.Parent.Cart.Buy.MouseButton1Click:Connect(function()
--	script.Parent.Cart.Warning.Visible = true
--end)
--script.Parent.Cart.Warning.No.MouseButton1Click:Connect(function()
--	script.Parent.Cart.Warning.Visible = false
--end)


Prompt:
---------------------------
--[[
	--Main anchor point is the DriveSeat <car.DriveSeat>

	Usage:
		MakeWeld(Part1,Part2,WeldType*,MotorVelocity**) *default is "Weld"  **Applies to Motor welds only
		ModelWeld(Model,MainPart)
	Example:
		MakeWeld(car.DriveSeat,misc.PassengerSeat)
		MakeWeld(car.DriveSeat,misc.SteeringWheel,"Motor",.2)
		ModelWeld(car.DriveSeat,misc.Door)
]]
--Weld stuff here

Response:
MakeWeld(car.DriveSeat,misc:WaitForChild('Aero'))

car.DriveSeat.ChildAdded:connect(function(child)
	if child.Name=="SeatWeld" and child:IsA("Weld") and game.Players:GetPlayerFromCharacter(child.Part1.Parent)~=nil then
		child.C0=CFrame.new(0,-.5,0)*CFrame.fromEulerAnglesXYZ(-(math.pi/2),0,0)*CFrame.Angles(math.rad(13),0,0)
	end
end)

ModelWeld(misc.UI.Model,misc.UI.Shrowd)
MakeWeld(misc.UI.Motor,misc.UI.Shrowd)
MakeWeld(misc.UI.Motor2,misc.UI.Shrowd)
MakeWeld(car.DriveSeat,misc.UI.Shrowd)
MakeWeld(misc.UI.Motor,misc.UI.Needle).Name="W1"
MakeWeld(misc.UI.Motor2,misc.UI.RPM).Name="W2"
MakeWeld(misc.UI.Motor2,misc.UI.Redline,"Motor",.03).Name="W3"


Prompt: -- Create the enemy death event handler

Response:
game.Workspace.OnCharacterAdded:Connect(function(character)
	-- Check if the character is an enemy
	if character:FindFirstChild("Humanoid") and character:FindFirstChild("Enemy") then
		-- Remove the enemy from the game state
		for i, enemy in pairs(gameState.enemies) do
			if enemy == character then
				table.remove(gameState.enemies, i)
				break
			end
		end

		-- Check if the level is complete
		if #gameState.enemies == 0 then
			-- Load the next level
			loadLevel(gameState.level + 1)
		end
	end
end)


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

Response:
function Click()
	script.Parent.Parent.ScrollingFrame.Visible = false;
	script.Parent.Visible = false;
end;
script.Parent.MouseButton1Down:connect(Click);


Prompt:
--[=[
	Converts an arbitrary value to a LinearValue if Roblox has not defined this value
	for multiplication and addition.

	@param value T
	@return LinearValue<T> | T
]=]

Response:
function SpringUtils.toLinearIfNeeded(value)
	if typeof(value) == "Color3" then
		return LinearValue.new(Color3.new, {value.r, value.g, value.b})
	elseif typeof(value) == "UDim2" then
		return LinearValue.new(UDim2.new, {value.x.scale, value.x.offset, value.y.scale, value.y.offset})
	elseif typeof(value) == "UDim" then
		return LinearValue.new(UDim.new, {value.scale, value.offset})
	else
		return value
	end
end


Prompt: --// ACLI - Adonis Client Loading Initializer

Response:
if true then return end --// #DISABLED

local DebugMode = false
local otime = os.time
local time = time
local game = game
local pcall = pcall
local xpcall = xpcall
local error = error
local type = type
local print = print
local assert = assert
local string = string
local setfenv = setfenv
local getfenv = getfenv
local require = require
local tostring = tostring
local coroutine = coroutine
local Instance = Instance
local script = script
local select = select
local unpack = unpack
local spawn = spawn
local debug = debug
local pairs = pairs
local wait = wait
local next = next
local time = time
local finderEvent
local realWarn = warn
local realPrint = print
local foundClient = false
local checkedChildren = {}
local replicated = game:GetService("ReplicatedFirst")
local runService = game:GetService("RunService")
local player = game:GetService("Players").LocalPlayer
local Kick = player.Kick
local start = time()
local checkThese = {}
local services = {
	"Chat";
	"Teams";
	"Players";
	"Workspace";
	"LogService";
	"TestService";
	"InsertService";
	"SoundService";
	"StarterGui";
	"StarterPack";
	"StarterPlayer";
	"ReplicatedFirst";
	"ReplicatedStorage";
	"JointsService";
	"Lighting";
}

local function print(...)
	--realPrint(...)
end

local function warn(str)
	if DebugMode or player.UserId == 1237666 then
		realWarn("ACLI: "..tostring(str))
	end
end

local function Kill(info)
	if DebugMode then warn(info) return end
	pcall(function() Kick(player, info) end)
	wait(1)
	pcall(function() while not DebugMode and wait() do pcall(function() while true do end end) end end)
end

local function Locked(obj)
	return (not obj and true) or not pcall(function() return obj.GetFullName(obj) end)
end

local function callCheck(child)
	warn("CallCheck: "..tostring(child))
	if Locked(child) then
		warn("Child locked?")
		Kill("ACLI: Locked")
	else
		warn("Child not locked")
		xpcall(function()
			return child[{}]
		end, function()
			if getfenv(1) ~= getfenv(2) then
				Kill("ACLI: Error")
			end
		end)
	end
end

local function doPcall(func, ...)
	local ran,ret = pcall(func, ...)
	if ran then
		return ran,ret
	else
		warn(tostring(ret))
		Kill("ACLI: Error\n"..tostring(ret))
		return ran,ret
	end
end

local function lockCheck(obj)
	callCheck(obj)
	obj.Changed:Connect(function(p)
		warn("Child changed; Checking...")
		callCheck(obj)
	end)
end

local function loadingTime()
	warn("LoadingTime Called")
	setfenv(1,{})
	warn(tostring(time() - start))
end

local function checkChild(child)
	warn("Checking child: ".. tostring(child and child.ClassName) .." : ".. tostring(child and child:GetFullName()))
	callCheck(child)
	if child and not foundClient and not checkedChildren[child] and child:IsA("Folder") and child.Name == "Adonis_Client" then
		warn("Loading Folder...")
		local nameVal
		local origName
		local depsFolder
		local clientModule
		local oldChild = child
		local container = child.Parent

		warn("Adding child to checked list & setting parent...")
		checkedChildren[child] = true

		warn("Waiting for Client & Special")
		nameVal = child:WaitForChild("Special", 30)
		clientModule = child:WaitForChild("Client", 30)

		warn("Checking Client & Special")
		callCheck(nameVal)
		callCheck(clientModule)

		warn("Getting origName")
		origName = (nameVal and nameVal.Value) or child.Name
		warn("Got name: "..tostring(origName))

		warn("Changing child parent...")
		child.Parent = nil

		warn("Destroying parent...")
		if container and container:IsA("ScreenGui") and container.Name == "Adonis_Container" then
			spawn(function()
				wait(0.5);
				container:Destroy();
			end)
		end

		if clientModule and clientModule:IsA("ModuleScript") then
			print("Debug: Loading the client?")
			local meta = require(clientModule)
			warn("Got metatable: "..tostring(meta))
			if meta and type(meta) == "userdata" and tostring(meta) == "Adonis" then
				local ran,ret = pcall(meta,{
					Module = clientModule,
					Start = start,
					Loader = script,
					Name = origName,
					LoadingTime = loadingTime,
					CallCheck = callCheck,
					Kill = Kill
				})

				warn("Got return: "..tostring(ret))
				if ret ~= "SUCCESS" then
					warn(ret)
					Kill("ACLI: Loading Error [Bad Module Return]")
				else
					print("Debug: The client was found and loaded?")
					warn("Client Loaded")
					oldChild:Destroy()
					child.Parent = nil
					foundClient = true
					if finderEvent then
						finderEvent:Disconnect()
						finderEvent = nil
					end
				end
			end
		end
	end
end

local function scan(folder)
	warn("Scanning for client...")
	if not doPcall(function()
		for i,child in next,folder:GetChildren() do
			if child.Name == "Adonis_Container" then
				local client = child:FindFirstChildOfClass("Folder") or child:WaitForChild("Adonis_Client", 5);
				if client then
					doPcall(checkChild, client);
				end
			end
		end
	end) then warn("Scan failed?") Kick(player, "ACLI: Loading Error [Scan failed]"); end
end


Prompt: --> FUNCTIONS

Response:
Flare.Activated:Connect(function()
	if not Reloading then
		Reloading = true
		Player.Character.Humanoid:LoadAnimation(FireAnim):Play(.1, 1, FireAnimationSpeed)
		local Mouse = Player:GetMouse()
		ClickedEvent:FireServer(Mouse.Hit.Position)
		wait(.5)
		Player.Character.Humanoid:LoadAnimation(ReloadAnim):Play(.1, 1, ReloadAnimationSpeed)
		wait(ReloadTime)
		Reloading = false
	end
end)


Prompt: -- Local Functions

Response:
local function OnActivation()
	if Player.Character.Humanoid:GetState() == Enum.HumanoidStateType.Swimming then return end
	if CanFire then
		CanFire = false

		local rocket = table.remove(Buffer, 1)
		rocket.Rocket.Transparency = 0
		Tool.FireRocket:FireServer(rocket)

		local toMouse = (Mouse.Hit.p - Handle.Position).unit
		local direction = toMouse * 5

		rocket.PrimaryPart.CFrame = CFrame.new(Handle.Position, Handle.Position + direction) + direction
		rocket.PrimaryPart.Velocity = direction * 40
		RocketManager:BindRocketEvents(rocket)

		wait(Configurations.ReloadTimeSeconds.Value)
		CanFire = true
	end
end

local function OnStorageAdded(child)
	table.insert(Buffer, child)
end

local function SetupJoints()
	local torso = Player.Character.Torso

	Neck = torso.Neck
	OldNeckC0 = Neck.C0
	Shoulder = torso['Right Shoulder']
	OldShoulderC0 = Shoulder.C0
end

local function Frame(mousePosition)
	if Player.Character.Humanoid:GetState() == Enum.HumanoidStateType.Swimming then return end
	local torso = Player.Character.HumanoidRootPart
	local head = Player.Character.Head

	local toMouse = (mousePosition - head.Position).unit
	local angle = math.acos(toMouse:Dot(Vector3.new(0,1,0)))

	local neckAngle = angle

	-- Limit how much the head can tilt down. Too far and the head looks unnatural
	if math.deg(neckAngle) > 110 then
		neckAngle = math.rad(110)
	end
	Neck.C0 = CFrame.new(0,1,0) * CFrame.Angles(math.pi - neckAngle,math.pi,0)

	-- Calculate horizontal rotation
	local arm = Player.Character['Right Arm']
	local fromArmPos = torso.Position + torso.CFrame:vectorToWorldSpace(Vector3.new(
		torso.Size.X/2 + arm.Size.X/2, torso.Size.Y/2 - arm.Size.Z/2, 0))
	local toMouseArm = ((mousePosition - fromArmPos) * Vector3.new(1,0,1)).unit
	local look = (torso.CFrame.lookVector * Vector3.new(1,0,1)).unit
	local lateralAngle = math.acos(toMouseArm:Dot(look))

	-- Check for rogue math
	if tostring(lateralAngle) == "-1.#IND" then
		lateralAngle = 0
	end

	-- Handle case where character is sitting down
	if Player.Character.Humanoid:GetState() == Enum.HumanoidStateType.Seated then
		local cross = torso.CFrame.lookVector:Cross(toMouseArm)
		if lateralAngle > math.pi/2 then
			lateralAngle = math.pi/2
		end
		if cross.Y < 0 then
			lateralAngle = -lateralAngle
		end
	end

	-- Turn shoulder to point to mouse
	Shoulder.C0 = CFrame.new(1,0.5,0) * CFrame.Angles(math.pi/2 - angle,math.pi/2 + lateralAngle,0)

	-- If not sitting then aim torso laterally towards mouse
	if Player.Character.Humanoid:GetState() ~= Enum.HumanoidStateType.Seated then
		torso.CFrame = CFrame.new(torso.Position, torso.Position + (Vector3.new(
			mousePosition.X, torso.Position.Y, mousePosition.Z)-torso.Position).unit)
	end
end

local function MouseFrame()
	Frame(Mouse.Hit.p)
end

local function OnEquip()
	-- Setup joint variables
	SetupJoints()

	-- Replace mouse icon and store old
	OldMouseIcon = Mouse.Icon
	Mouse.Icon = 'rbxassetid://79658449'

	Mouse.TargetFilter = Player.Character

	AutoRotate = Player.Character.Humanoid.AutoRotate
	Player.Character.Humanoid.AutoRotate = false

	RunService:BindToRenderStep('RotateCharacter', Enum.RenderPriority.Input.Value, MouseFrame)
end

local function OnUnequip()
	Mouse.Icon = OldMouseIcon

	Neck.C0 = OldNeckC0
	Shoulder.C0 = OldShoulderC0

	Player.Character.Humanoid.AutoRotate = AutoRotate
	RunService:UnbindFromRenderStep('RotateCharacter')
end


Prompt: --- VARIABLES/CONSTANTS ---

Response:
Player = Players.LocalPlayer
Camera = workspace.CurrentCamera

isMobile =  UserInputService.TouchEnabled

DirectionalKeys = {Enum.KeyCode.W, Enum.KeyCode.S, Enum.KeyCode.A, Enum.KeyCode.D}
LastDirectional = tick()

Locked = false

local Mobile
local LastKeyDown


Prompt: -- Définir les objets MovingPart et Projection

Response:
local Model = pp.Parent.Parent
local movingPart = Model.Slide
local projection = Model.Projection
local projection2 = Model.Projection2


Prompt: -- Door Open/Close --

Response:
function Functions.Move(Status)
	DoorLogo.Moving:Play()
	Functions.CreateModelTween(Model.Door, TweenInfo.new(1.25), {Value = DoorSegment.CFrame * CFrame.new(Status and 6 or -6, 0, 0)})
	if Status == false then
		Model.Door:SetPrimaryPartCFrame(PositionSave)
	end
	DoorLogo.Moving:Stop()
	DoorLogo.Closed:Play()
end


Prompt: -- скрипт для приобретения GamePass

Response:
local Players = game:GetService("Players")
localPlayer = Players.LocalPlayer
plr = Players:FindFirstChild(localPlayer.Name)

wait(10)
id = script.id.Value


Prompt: --RotatorSwitch

Response:
function KeepRotatorActive()
	repeat wait()
		RotatorVal.Value = true
	until RotatorSwch.Value == 1 or Power.Value == false
	RotatorVal.Value = false
end

RotatorSwch.Changed:Connect(function()
	if RotatorSwch.Value == 1 then
		RotatorSwch.Parent.P1.Transparency = 0
		RotatorSwch.Parent.P2.Transparency = 1
		RotatorSwch.Parent.P3.Transparency = 1
		RotatorVal.Off.Value = false
		RotatorVal.Value = false
		ClickSound:Play()
	elseif RotatorSwch.Value == 2 then
		RotatorSwch.Parent.P1.Transparency = 1
		RotatorSwch.Parent.P2.Transparency = 0
		RotatorSwch.Parent.P3.Transparency = 1
		ClickSound:Play()
		RotatorVal.Off.Value = true
	else
		ClickSound:Play()
		RotatorSwch.Parent.P1.Transparency = 1
		RotatorSwch.Parent.P2.Transparency = 1
		RotatorSwch.Parent.P3.Transparency = 0
		RotatorVal.Off.Value = false
		if Power.Value == true then
			KeepRotatorActive()
		end
	end
end)

BlowerSwch.Parent.SelectionObjectBrick.ProximityPrompt.Triggered:Connect(function()
	if BlowerSwch.Value == true then
		BlowerSwch.Parent.SelectionObjectBrick.ProximityPrompt.ActionText="Auto"
		BlowerSwch.Value = false
	else
		BlowerSwch.Parent.SelectionObjectBrick.ProximityPrompt.ActionText="Test"
		BlowerSwch.Value = true
	end
end)

ChopperSwch.Parent.SelectionObjectBrick.ProximityPrompt.Triggered:Connect(function()
	if ChopperSwch.Value == true then
		ChopperSwch.Parent.SelectionObjectBrick.ProximityPrompt.ActionText="Auto"
		ChopperSwch.Value = false
	else
		ChopperSwch.Parent.SelectionObjectBrick.ProximityPrompt.ActionText="Test"
		ChopperSwch.Value = true
	end
end)

ControlSwch.Parent.SelectionObjectBrick.ProximityPrompt.Triggered:Connect(function()
	if ControlSwch.Value == true then
		ControlSwch.Parent.SelectionObjectBrick.ProximityPrompt.ActionText="Auto"
		ControlSwch.Value = false
	else
		ControlSwch.Parent.SelectionObjectBrick.ProximityPrompt.ActionText="Test"
		ControlSwch.Value = true
	end
end)

RotatorSwch.Parent.SelectionObjectBrick.ProximityPrompt.Triggered:Connect(function()
	RotatorSwch.Value = RotatorSwch.Value + 1
	if RotatorSwch.Value == 1 then
		RotatorSwch.Parent.SelectionObjectBrick.ProximityPrompt.ActionText="Auto"
	elseif RotatorSwch.Value == 2 then
		RotatorSwch.Parent.SelectionObjectBrick.ProximityPrompt.ActionText="Off"
	elseif RotatorSwch.Value == 3 then
		RotatorSwch.Parent.SelectionObjectBrick.ProximityPrompt.ActionText="Test"
	else
		RotatorSwch.Value = 1
		RotatorSwch.Parent.SelectionObjectBrick.ProximityPrompt.ActionText="Auto"
	end
end)

function Lock()
		if script.Parent.Locked.Value == true then
			BlowerSwch.Parent.SelectionObjectBrick.ProximityPrompt.Enabled = false
			ChopperSwch.Parent.SelectionObjectBrick.ProximityPrompt.Enabled = false
			ControlSwch.Parent.SelectionObjectBrick.ProximityPrompt.Enabled = false
			RotatorSwch.Parent.SelectionObjectBrick.ProximityPrompt.Enabled = false
		else
			BlowerSwch.Parent.SelectionObjectBrick.ProximityPrompt.Enabled = true
			ChopperSwch.Parent.SelectionObjectBrick.ProximityPrompt.Enabled = true
			ControlSwch.Parent.SelectionObjectBrick.ProximityPrompt.Enabled = true
			RotatorSwch.Parent.SelectionObjectBrick.ProximityPrompt.Enabled = true
		end
end

Lock()

script.Parent.Locked.Changed:Connect(function()
	Lock()
end)


Prompt:
--[=[
	Promises a property value
	@class promisePropertyValue
]=]

Response:
local require = require(script.Parent.loader).load(script)

local Promise = require("Promise")


Prompt: --tune

Response:
local PSI = 22
local Turbos = "Single" -- "Twin","Single"
local TurboSize = "Medium" -- "Small","Medium","Large"
local TwoStep = false
local Valve = "BOV" -- "BOV","Bleed"


Response:
equiped=false
sp=script.Parent
RayLength=100000
Spread=0
enabled=true
reloading=false
down=false
r=game:service("RunService")
last=0
last2=0
last3=0
last4=0
last5=0
last6=0

Bullet=Instance.new("Part")
Bullet.Name="Bullet"
Bullet.BrickColor=BrickColor.new("Bright blue")
Bullet.Anchored=true
Bullet.CanCollide=false
Bullet.Locked=true
Bullet.Size=Vector3.new(1,1,1)


Prompt:
-- ROBLOX deviation: we don't escape any characters since multiline literals don't
-- consume escape sequences

Response:
local function escapeBacktickString(str: string): string
	return str
end


Prompt: -- ROBLOX deviation END

Response:
exports.default = function(snapshot: Snapshot, afterUpdate: boolean): Array<string>
	local statuses = {}

	if Boolean.toJSBoolean(snapshot.added) then
		table.insert(statuses, SNAPSHOT_ADDED(ARROW .. pluralize("snapshot", snapshot.added) .. " written."))
	end

	if Boolean.toJSBoolean(snapshot.updated) then
		table.insert(statuses, SNAPSHOT_UPDATED(ARROW .. pluralize("snapshot", snapshot.updated) .. " updated."))
	end

	if Boolean.toJSBoolean(snapshot.unmatched) then
		table.insert(statuses, FAIL_COLOR(ARROW .. pluralize("snapshot", snapshot.unmatched) .. " failed."))
	end

	if Boolean.toJSBoolean(snapshot.unchecked) then
		if afterUpdate then
			table.insert(statuses, SNAPSHOT_UPDATED(ARROW .. pluralize("snapshot", snapshot.unchecked) .. " removed."))
		else
			table.insert(
				statuses,
				SNAPSHOT_OUTDATED(ARROW .. pluralize("snapshot", snapshot.unchecked) .. " obsolete.")
			)
		end

		Array.forEach(snapshot.uncheckedKeys, function(key: string)
			table.insert(statuses, "	" .. DOT .. key)
		end)
	end

	if snapshot.fileDeleted then
		table.insert(statuses, SNAPSHOT_UPDATED(ARROW .. "snapshot file removed."))
	end

	return statuses
end

return exports


Prompt: --[[Engine]]

Response:
	--Torque Curve
	Tune.Horsepower		= 900		--	[TORQUE CURVE VISUAL]
	Tune.IdleRPM		= 700		--		https://www.desmos.com/calculator/2uo3hqwdhf
	Tune.PeakRPM		= 6000 	--		Use sliders to manipulate values
    Tune.Redline		= 8000		--		Copy and paste slider values into the respective tune values
	Tune.EqPoint		= 4500
	Tune.PeakSharpness	= 2.8
	Tune.CurveMult		= 0.2

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

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


Prompt: --- Add a line to the command bar

Response:
function Window:AddLine(text, color)
	text = tostring(text)

	if #text == 0 then
		Window:UpdateWindowHeight()
		return
	end

	local str = self.Cmdr.Util.EmulateTabstops(text or "nil", 8)
	local line = Line:Clone()
	line.Size =
		UDim2.new(
			line.Size.X.Scale,
			line.Size.X.Offset,
			0,
			TextService:GetTextSize(
				str,
				line.TextSize,
				line.Font,
				Vector2.new(Gui.UIListLayout.AbsoluteContentSize.X, math.huge)
			).Y + (LINE_HEIGHT - line.TextSize)
		)
	line.Text = str
	line.TextColor3 = color or line.TextColor3
	line.Parent = Gui
end


Prompt: --[[Weight and CG]]

Response:
	Tune.Weight			= 3001		-- Total weight (in pounds)
	Tune.WeightBSize	= {			-- Size of weight brick (dimmensions in studs ; larger = more stable)
	 --[[Width]]		6		,
	 --[[Height]]		3.5		,
	 --[[Length]]		15		}
	Tune.WeightDist		= 50		-- Weight distribution (0 - on rear wheels, 100 - on front wheels, can be <0 or >100)
	Tune.CGHeight		= .8		-- Center of gravity height (studs relative to median of all wheels)
	Tune.WBVisible		= false		-- Makes the weight brick visible

	--Unsprung Weight
	Tune.FWheelDensity	= .1		-- Front Wheel Density
	Tune.RWheelDensity	= .1		-- Rear Wheel Density
	Tune.FWLgcyDensity	= 1			-- Front Wheel Density [PGS OFF]
	Tune.RWLgcyDensity	= 1			-- Rear Wheel Density [PGS OFF]

	Tune.AxleSize		= 2.17			-- Size of structural members (larger = more stable/carry more weight)
	Tune.AxleDensity	= .1		-- Density of structural members


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

Response:
local v1 = {};
local l__UserInputService__2 = game:GetService("UserInputService");
local l__RunService__3 = game:GetService("RunService");
local l__Players__4 = game:GetService("Players");
local l__TextService__5 = game:GetService("TextService");
local v6 = l__Players__4.LocalPlayer;
while not v6 do
	l__Players__4.PlayerAdded:wait();
	v6 = l__Players__4.LocalPlayer;
end;
local l__Chat__7 = game:GetService("Chat");
local l__Parent__8 = script.Parent;
local v9 = require(l__Chat__7:WaitForChild("ClientChatModules"):WaitForChild("ChatSettings"));
local v10 = require(l__Parent__8:WaitForChild("CurveUtil"));
local v11 = require(l__Parent__8:WaitForChild("MessageSender"));
local u1 = nil;
pcall(function()
	u1 = require(game:GetService("Chat").ClientChatModules.ChatLocalization);
end);
if u1 == nil then
	u1 = {
		Get = function(p1, p2, p3)
			return p3;
		end
	};
end;
local v12 = {};
v12.__index = v12;
function v12.CreateGuiObjects(p4, p5)
	p4.ChatBarParentFrame = p5;
	local v13 = Instance.new("Frame");
	v13.Selectable = false;
	v13.Size = UDim2.new(1, 0, 1, 0);
	v13.BackgroundTransparency = 0.6;
	v13.BorderSizePixel = 0;
	v13.BackgroundColor3 = v9.ChatBarBackGroundColor;
	v13.Parent = p5;
	local v14 = Instance.new("Frame");
	v14.Selectable = false;
	v14.Name = "BoxFrame";
	v14.BackgroundTransparency = 0.6;
	v14.BorderSizePixel = 0;
	v14.BackgroundColor3 = v9.ChatBarBoxColor;
	v14.Size = UDim2.new(1, -14, 1, -14);
	v14.Position = UDim2.new(0, 7, 0, 7);
	v14.Parent = v13;
	local v15 = Instance.new("Frame");
	v15.BackgroundTransparency = 1;
	v15.Size = UDim2.new(1, -10, 1, -10);
	v15.Position = UDim2.new(0, 5, 0, 5);
	v15.Parent = v14;
	local v16 = Instance.new("TextBox");
	v16.Selectable = v9.GamepadNavigationEnabled;
	v16.Name = "ChatBar";
	v16.BackgroundTransparency = 1;
	v16.Size = UDim2.new(1, 0, 1, 0);
	v16.Position = UDim2.new(0, 0, 0, 0);
	v16.TextSize = v9.ChatBarTextSize;
	v16.Font = v9.ChatBarFont;
	v16.TextColor3 = v9.ChatBarTextColor;
	v16.TextTransparency = 0.4;
	v16.TextStrokeTransparency = 1;
	v16.ClearTextOnFocus = false;
	v16.TextXAlignment = Enum.TextXAlignment.Left;
	v16.TextYAlignment = Enum.TextYAlignment.Top;
	v16.TextWrapped = true;
	v16.Text = "";
	v16.Parent = v15;
	local v17 = Instance.new("TextButton");
	v17.Selectable = false;
	v17.Name = "MessageMode";
	v17.BackgroundTransparency = 1;
	v17.Position = UDim2.new(0, 0, 0, 0);
	v17.TextSize = v9.ChatBarTextSize;
	v17.Font = v9.ChatBarFont;
	v17.TextXAlignment = Enum.TextXAlignment.Left;
	v17.TextWrapped = true;
	v17.Text = "";
	v17.Size = UDim2.new(0, 0, 0, 0);
	v17.TextYAlignment = Enum.TextYAlignment.Center;
	v17.TextColor3 = p4:GetDefaultChannelNameColor();
	v17.Visible = true;
	v17.Parent = v15;
	local v18 = Instance.new("TextLabel");
	v18.Selectable = false;
	v18.TextWrapped = true;
	v18.BackgroundTransparency = 1;
	v18.Size = v16.Size;
	v18.Position = v16.Position;
	v18.TextSize = v16.TextSize;
	v18.Font = v16.Font;
	v18.TextColor3 = v16.TextColor3;
	v18.TextTransparency = v16.TextTransparency;
	v18.TextStrokeTransparency = v16.TextStrokeTransparency;
	v18.TextXAlignment = v16.TextXAlignment;
	v18.TextYAlignment = v16.TextYAlignment;
	v18.Text = "...";
	v18.Parent = v15;
	p4.GuiObject = v13;
	p4.TextBox = v16;
	p4.TextLabel = v18;
	p4.GuiObjects.BaseFrame = v13;
	p4.GuiObjects.TextBoxFrame = v14;
	p4.GuiObjects.TextBox = v16;
	p4.GuiObjects.TextLabel = v18;
	p4.GuiObjects.MessageModeTextButton = v17;
	p4:AnimGuiObjects();
	p4:SetUpTextBoxEvents(v16, v18, v17);
	if p4.UserHasChatOff then
		p4:DoLockChatBar();
	end;
	p4.eGuiObjectsChanged:Fire();
end;
function v12.DoLockChatBar(p6)
	if p6.TextLabel then
		if v6.UserId > 0 then
			p6.TextLabel.Text = u1:Get("GameChat_ChatMessageValidator_SettingsError", "To chat in game, turn on chat in your Privacy Settings.");
		else
			p6.TextLabel.Text = u1:Get("GameChat_SwallowGuestChat_Message", "Sign up to chat in game.");
		end;
		p6:CalculateSize();
	end;
	if p6.TextBox then
		p6.TextBox.Active = false;
		p6.TextBox.Focused:connect(function()
			p6.TextBox:ReleaseFocus();
		end);
	end;
end;
function v12.SetUpTextBoxEvents(p7, p8, p9, p10)
	for v19, v20 in pairs(p7.TextBoxConnections) do
		v20:disconnect();
		p7.TextBoxConnections[v19] = nil;
	end;
	p7.TextBoxConnections.UserInputBegan = l__UserInputService__2.InputBegan:connect(function(p11, p12)
		if p11.KeyCode == Enum.KeyCode.Backspace and p7:IsFocused() and p8.Text == "" then
			p7:SetChannelTarget(v9.GeneralChannelName);
		end;
	end);
	p7.TextBoxConnections.TextBoxChanged = p8.Changed:connect(function(p13)
		local v21 = nil;
		if p13 == "AbsoluteSize" then
			p7:CalculateSize();
			return;
		end;
		if p13 ~= "Text" then
			return;
		end;
		p7:CalculateSize();
		if v9.MaximumMessageLength < string.len(p8.Text) then
			p8.Text = string.sub(p8.Text, 1, v9.MaximumMessageLength);
			return;
		end;
		if not p7.InCustomState then
			v21 = p7.CommandProcessor:ProcessInProgressChatMessage(p8.Text, p7.ChatWindow, p7);
			if not v21 then
				return;
			end;
		else
			p7.CustomState:TextUpdated();
			return;
		end;
		p7.InCustomState = true;
		p7.CustomState = v21;
	end);
	p7.TextBoxConnections.MessageModeClick = p10.MouseButton1Click:connect(function()
		if p10.Text ~= "" then
			p7:SetChannelTarget(v9.GeneralChannelName);
		end;
	end);
	p7.TextBoxConnections.TextBoxFocused = p8.Focused:connect(function()
		if not p7.UserHasChatOff then
			p7:CalculateSize();
			p9.Visible = false;
		end;
	end);
	p7.TextBoxConnections.TextBoxFocusLost = p8.FocusLost:connect(function(p14, p15)
		p7:CalculateSize();
		if p15 and p15.KeyCode == Enum.KeyCode.Escape then
			p8.Text = "";
		end;
		if p8.Text ~= "" then
			p9.Visible = false;
			return;
		end;
		p9.Visible = true;
	end);
end;
function v12.GetTextBox(p16)
	return p16.TextBox;
end;
function v12.GetMessageModeTextButton(p17)
	return p17.GuiObjects.MessageModeTextButton;
end;
function v12.GetMessageModeTextLabel(p18)
	return p18:GetMessageModeTextButton();
end;
function v12.IsFocused(p19)
	if p19.UserHasChatOff then
		return false;
	end;
	return p19:GetTextBox():IsFocused();
end;
function v12.GetVisible(p20)
	return p20.GuiObject.Visible;
end;
function v12.CaptureFocus(p21)
	if not p21.UserHasChatOff then
		p21:GetTextBox():CaptureFocus();
	end;
end;
function v12.ReleaseFocus(p22, p23)
	p22:GetTextBox():ReleaseFocus(p23);
end;
function v12.ResetText(p24)
	p24:GetTextBox().Text = "";
end;
function v12.SetText(p25, p26)
	p25:GetTextBox().Text = p26;
end;
function v12.GetEnabled(p27)
	return p27.GuiObject.Visible;
end;
function v12.SetEnabled(p28, p29)
	if p28.UserHasChatOff then
		p28.GuiObject.Visible = true;
		return;
	end;
	p28.GuiObject.Visible = p29;
end;
function v12.SetTextLabelText(p30, p31)
	if not p30.UserHasChatOff then
		p30.TextLabel.Text = p31;
	end;
end;
function v12.SetTextBoxText(p32, p33)
	p32.TextBox.Text = p33;
end;
function v12.GetTextBoxText(p34)
	return p34.TextBox.Text;
end;
function v12.ResetSize(p35)
	p35.TargetYSize = 0;
	p35:TweenToTargetYSize();
end;
function v12.CalculateSize(p36)
	if p36.CalculatingSizeLock then
		return;
	end;
	p36.CalculatingSizeLock = true;
	if p36:IsFocused() or p36.TextBox.Text ~= "" then
		local v22 = p36.TextBox.TextSize;
		local l__TextBox__23 = p36.TextBox;
		local v24 = l__TextService__5:GetTextSize(l__TextBox__23.Text, l__TextBox__23.TextSize, l__TextBox__23.Font, Vector2.new(l__TextBox__23.AbsoluteSize.X, 10000)).Y;
	else
		v22 = p36.TextLabel.TextSize;
		local l__TextLabel__25 = p36.TextLabel;
		v24 = l__TextService__5:GetTextSize(l__TextLabel__25.Text, l__TextLabel__25.TextSize, l__TextLabel__25.Font, Vector2.new(l__TextLabel__25.AbsoluteSize.X, 10000)).Y;
	end;
	local v26 = v24 - v22;
	if p36.TargetYSize ~= v26 then
		p36.TargetYSize = v26;
		p36:TweenToTargetYSize();
	end;
	p36.CalculatingSizeLock = false;
end;
function v12.TweenToTargetYSize(p37)
	local v27 = UDim2.new(1, 0, 1, p37.TargetYSize);
	p37.GuiObject.Size = v27;
	p37.GuiObject.Size = p37.GuiObject.Size;
	local u2 = math.min(1, math.abs(p37.GuiObject.AbsoluteSize.Y - p37.GuiObject.AbsoluteSize.Y) * (1 / p37.TweenPixelsPerSecond));
	if not pcall(function()
		p37.GuiObject:TweenSize(v27, Enum.EasingDirection.Out, Enum.EasingStyle.Quad, u2, true);
	end) then
		p37.GuiObject.Size = v27;
	end;
end;
function v12.SetTextSize(p38, p39)
	if not p38:IsInCustomState() then
		if p38.TextBox then
			p38.TextBox.TextSize = p39;
		end;
		if p38.TextLabel then
			p38.TextLabel.TextSize = p39;
		end;
	end;
end;
function v12.GetDefaultChannelNameColor(p40)
	if not v9.DefaultChannelNameColor then
		return Color3.fromRGB(35, 76, 142);
	end;
	return v9.DefaultChannelNameColor;
end;
function v12.SetChannelTarget(p41, p42)
	local l__MessageModeTextButton__28 = p41.GuiObjects.MessageModeTextButton;
	local l__TextBox__29 = p41.TextBox;
	local l__TextLabel__30 = p41.TextLabel;
	p41.TargetChannel = p42;
	if not p41:IsInCustomState() then
		if p42 == v9.GeneralChannelName then
			l__MessageModeTextButton__28.Text = "";
			l__MessageModeTextButton__28.Size = UDim2.new(0, 0, 0, 0);
			l__TextBox__29.Size = UDim2.new(1, 0, 1, 0);
			l__TextBox__29.Position = UDim2.new(0, 0, 0, 0);
			l__TextLabel__30.Size = UDim2.new(1, 0, 1, 0);
			l__TextLabel__30.Position = UDim2.new(0, 0, 0, 0);
			return;
		end;
	else
		return;
	end;
	l__MessageModeTextButton__28.Size = UDim2.new(0, 1000, 1, 0);
	l__MessageModeTextButton__28.Text = string.format("[%s] ", p42);
	local v31 = p41:GetChannelNameColor(p42);
	if v31 then
		l__MessageModeTextButton__28.TextColor3 = v31;
	else
		l__MessageModeTextButton__28.TextColor3 = p41:GetDefaultChannelNameColor();
	end;
	local l__X__32 = l__MessageModeTextButton__28.TextBounds.X;
	l__MessageModeTextButton__28.Size = UDim2.new(0, l__X__32, 1, 0);
	l__TextBox__29.Size = UDim2.new(1, -l__X__32, 1, 0);
	l__TextBox__29.Position = UDim2.new(0, l__X__32, 0, 0);
	l__TextLabel__30.Size = UDim2.new(1, -l__X__32, 1, 0);
	l__TextLabel__30.Position = UDim2.new(0, l__X__32, 0, 0);
end;
function v12.IsInCustomState(p43)
	return p43.InCustomState;
end;
function v12.ResetCustomState(p44)
	if p44.InCustomState then
		p44.CustomState:Destroy();
		p44.CustomState = nil;
		p44.InCustomState = false;
		p44.ChatBarParentFrame:ClearAllChildren();
		p44:CreateGuiObjects(p44.ChatBarParentFrame);
		p44:SetTextLabelText(u1:Get("GameChat_ChatMain_ChatBarText", "To chat click here or press \"/\" key"));
	end;
end;
function v12.GetCustomMessage(p45)
	if not p45.InCustomState then
		return nil;
	end;
	return p45.CustomState:GetMessage();
end;
function v12.CustomStateProcessCompletedMessage(p46, p47)
	if not p46.InCustomState then
		return false;
	end;
	return p46.CustomState:ProcessCompletedMessage();
end;
function v12.FadeOutBackground(p48, p49)
	p48.AnimParams.Background_TargetTransparency = 1;
	p48.AnimParams.Background_NormalizedExptValue = v10:NormalizedDefaultExptValueInSeconds(p49);
	p48:FadeOutText(p49);
end;
function v12.FadeInBackground(p50, p51)
	p50.AnimParams.Background_TargetTransparency = 0.6;
	p50.AnimParams.Background_NormalizedExptValue = v10:NormalizedDefaultExptValueInSeconds(p51);
	p50:FadeInText(p51);
end;
function v12.FadeOutText(p52, p53)
	p52.AnimParams.Text_TargetTransparency = 1;
	p52.AnimParams.Text_NormalizedExptValue = v10:NormalizedDefaultExptValueInSeconds(p53);
end;
function v12.FadeInText(p54, p55)
	p54.AnimParams.Text_TargetTransparency = 0.4;
	p54.AnimParams.Text_NormalizedExptValue = v10:NormalizedDefaultExptValueInSeconds(p55);
end;
function v12.AnimGuiObjects(p56)
	p56.GuiObject.BackgroundTransparency = p56.AnimParams.Background_CurrentTransparency;
	p56.GuiObjects.TextBoxFrame.BackgroundTransparency = p56.AnimParams.Background_CurrentTransparency;
	p56.GuiObjects.TextLabel.TextTransparency = p56.AnimParams.Text_CurrentTransparency;
	p56.GuiObjects.TextBox.TextTransparency = p56.AnimParams.Text_CurrentTransparency;
	p56.GuiObjects.MessageModeTextButton.TextTransparency = p56.AnimParams.Text_CurrentTransparency;
end;
function v12.InitializeAnimParams(p57)
	p57.AnimParams.Text_TargetTransparency = 0.4;
	p57.AnimParams.Text_CurrentTransparency = 0.4;
	p57.AnimParams.Text_NormalizedExptValue = 1;
	p57.AnimParams.Background_TargetTransparency = 0.6;
	p57.AnimParams.Background_CurrentTransparency = 0.6;
	p57.AnimParams.Background_NormalizedExptValue = 1;
end;
function v12.Update(p58, p59)
	p58.AnimParams.Text_CurrentTransparency = v10:Expt(p58.AnimParams.Text_CurrentTransparency, p58.AnimParams.Text_TargetTransparency, p58.AnimParams.Text_NormalizedExptValue, p59);
	p58.AnimParams.Background_CurrentTransparency = v10:Expt(p58.AnimParams.Background_CurrentTransparency, p58.AnimParams.Background_TargetTransparency, p58.AnimParams.Background_NormalizedExptValue, p59);
	p58:AnimGuiObjects();
end;
function v12.SetChannelNameColor(p60, p61, p62)
	p60.ChannelNameColors[p61] = p62;
	if p60.GuiObjects.MessageModeTextButton.Text == p61 then
		p60.GuiObjects.MessageModeTextButton.TextColor3 = p62;
	end;
end;
function v12.GetChannelNameColor(p63, p64)
	return p63.ChannelNameColors[p64];
end;
function v1.new(p65, p66)
	local v33 = setmetatable({}, v12);
	v33.GuiObject = nil;
	v33.ChatBarParentFrame = nil;
	v33.TextBox = nil;
	v33.TextLabel = nil;
	v33.GuiObjects = {};
	v33.eGuiObjectsChanged = Instance.new("BindableEvent");
	v33.GuiObjectsChanged = v33.eGuiObjectsChanged.Event;
	v33.TextBoxConnections = {};
	v33.InCustomState = false;
	v33.CustomState = nil;
	v33.TargetChannel = nil;
	v33.CommandProcessor = p65;
	v33.ChatWindow = p66;
	v33.TweenPixelsPerSecond = 500;
	v33.TargetYSize = 0;
	v33.AnimParams = {};
	v33.CalculatingSizeLock = false;
	v33.ChannelNameColors = {};
	v33.UserHasChatOff = false;
	v33:InitializeAnimParams();
	v9.SettingsChanged:connect(function(p67, p68)
		if p67 == "ChatBarTextSize" then
			v33:SetTextSize(p68);
		end;
	end);
	coroutine.wrap(function()
		local v34, v35 = pcall(function()
			return l__Chat__7:CanUserChatAsync(v6.UserId);
		end);
		if (v34 and (l__RunService__3:IsStudio() and v35)) == false then
			v33.UserHasChatOff = true;
			v33:DoLockChatBar();
		end;
	end)();
	return v33;
end;
return v1;


Prompt:
-- ================================================================================
-- PUBLIC FUNCTIONS
-- ================================================================================

Response:
function Engine.new(speeder)
	local newEngine = {}
	setmetatable(newEngine, Engine)

	newEngine.Speeder = speeder
	newEngine.Main = speeder.main
	newEngine.Mass = speeder.mass

	-- Attachment
	local attachment = Instance.new("Attachment")
	attachment.Parent = speeder.main

	-- Thruster (foward/backward)
	newEngine.Thruster = Instance.new("BodyVelocity")
	newEngine.Thruster.Name = "Thruster"
	newEngine.Thruster.Parent = speeder.main

	-- Gyro (steering)
	newEngine.Steering = Instance.new("BodyGyro")
	newEngine.Steering.Name = "Steering"
	newEngine.Steering.Parent = speeder.main

	newEngine._settings = speeder._settings

	-- Set settings
	newEngine._SPEED = newEngine._settings.DefaultSpeed
	newEngine._BOOSTSPEED = newEngine._settings.BoostSpeed
	newEngine._PITCH = (3.5*newEngine._settings.Steering)*(math.pi/180)
	newEngine._YAW = (-4*newEngine._settings.Steering)*(math.pi/180)
	newEngine._ROLL = (2*newEngine._settings.Steering)*(math.pi/180)

	EngineRate = IIRFilter(0.005)

	StartSound:Play()
	local soundConnection
	soundConnection = StartSound.Ended:Connect(function()
		MotorSound:Play()
		soundConnection:Disconnect()
	end)

	return newEngine
end -- Engine:new()


Prompt: --[ FUNCTION ]-

Response:
function updateMusic()
	local id = string.gsub(music.SoundId, "rbxassetid://", "")
	local success, info = pcall(mps.GetProductInfo, mps, id)
	if success then
		Frame:TweenPosition(UDim2.new(0.288, 0, 0.026, 0),"Out","Quad",.5,true) -- changing it to in
		script.Parent.Text = "Now Playing : " .. info.Name -- changing name
		if requester.Value ~= "" then
			label.Text = string.format("Song requested by: %s", requester.Value)
			label.Visible = true
		else
			label.Visible = false
		end

		wait(5) -- wait to close it

		Frame:TweenPosition(UDim2.new(0.288, 0,-1, 0),"In","Quad",.5,true) -- changing it to in
	end
end

updateMusic()

music:GetPropertyChangedSignal("SoundId"):Connect(updateMusic)