Roblox/luau_corpus huggingface dataset:
--properties

local flicker = script.Parent.Base.PointLight

flicker.Brightness = 1.78

while true do                                        

	flicker.Brightness = 1.87

	wait (0.01)

	flicker.Brightness = 1.76

	wait (0.01)

	flicker.Brightness = 1.65

	wait (0.01)

	flicker.Brightness = 1.54

	wait (0.01)

	flicker.Brightness = 1.43


	wait (0.01)


	flicker.Brightness = 1.32

	wait (0.01)

	flicker.Brightness = 1.21

	wait (0.01)

	flicker.Brightness = 1.10

	wait (0.01)

	flicker.Brightness = 0.99

	wait (0.02)

	flicker.Brightness = 0.90

	wait(0.01)

	flicker.Brightness = 1.10

	wait (0.02)

	flicker.Brightness = 1.15

	wait (0.3)

	flicker.Brightness = 1.30

end
-- ALEX WAS HERE LOL

local v1 = {};
local u1 = nil;
coroutine.wrap(function()
	u1 = require(game.ReplicatedStorage:WaitForChild("Resources"));
end)();
function v1.Reward(p1)
	local v2 = u1.Saving.Get(p1);
	if not v2 then
		return;
	end;
	local v3 = u1.Directory.Ranks[v2.Rank];
	if #v3.rewards == 0 or os.time() - v2.RankTimer < v3.rewardCooldown then
		return;
	end;
	v2.RankTimer = os.time();
	for  v8, v9 in ipairs(v3.rewards) do
		local v7 = nil;
		local v10 = nil;
		v10, v7 = unpack(v9);
		if v10 == "Triple Coins Boost" then
			u1.Boosts.Give(p1, "Triple Coins", v7);
		elseif v10 == "Super Lucky Boost" then
			u1.Boosts.Give(p1, "Super Lucky", v7);
		elseif v10 == "Ultra Lucky Boost" then
			u1.Boosts.Give(p1, "Ultra Lucky", v7);
		elseif v10 == "Triple Damage Boost" then
			u1.Boosts.Give(p1, "Triple Damage", v7);
		else
			u1.Give.Currency(p1, v7, v10, false);
		end;	
	end;
	coroutine.wrap(function()
		u1.Network.Fire("Rewards Redeemed", p1, v3.rewards);
	end)();
	return true;
end;
function v1.Give(p2, p3)
	local v11 = u1.Saving.Get(p2);
	if not v11 then
		return;
	end;
	if v11.Rank ~= p3 then
		v11.Rank = p3;
		v11.RankProgress = 0;
		v11.RankTimer = 0;
		coroutine.wrap(function()
			u1.Network.FireAll("Rank Changed", p2, p3);
			u1.Signal.Fire("Rank Changed", p2, p3)
		end)();
		v1.Reward(p2);
	end;
end;
-- Close win dialog
local function closeDlg(input)
	local mouse = Enum.UserInputType.MouseButton1
	local touch = Enum.UserInputType.Touch
	
	if input.UserInputType == mouse or input.UserInputType == touch then
		dlg.Visible = false
	end
end
--{{ Important Values }}--

local playerStats = game.Players.LocalPlayer:WaitForChild("Drift Points")
local change = script.Parent
-- functions

local function RegisterAction(action, primary, secondary)
	local info	= {
		Primary		= primary;
		Secondary	= secondary;
	}
	
	actions[action]	= info
end

local function ActionFromInputObject(inputObject)
	for action, info in pairs(actions) do
		if info.Primary then
			if info.Primary.EnumType == Enum.KeyCode then
				if inputObject.KeyCode == info.Primary then
					return action
				end
			elseif info.Primary.EnumType == Enum.UserInputType then
				if inputObject.UserInputType == info.Primary then
					return action
				end
			end
		end
		
		if info.Secondary then
			if info.Secondary.EnumType == Enum.KeyCode then
				if inputObject.KeyCode == info.Secondary then
					return action
				end
			elseif info.Secondary.EnumType == Enum.UserInputType then
				if inputObject.UserInputType == info.Secondary then
					return action
				end
			end
		end
	end
end
-- Connect click events for the slider buttons
norm.MouseButton1Click:Connect(function()
	onSliderButtonClick(norm)
end)

fast.MouseButton1Click:Connect(function()
	onSliderButtonClick(fast)
end)

max.MouseButton1Click:Connect(function()
	onSliderButtonClick(max)
end)
--[=[
	Returns whether a value is a Brio.

	```lua
	print(Brio.isBrio("yolo")) --> false
	```
	@param value any
	@return boolean
]=]
function Brio.isBrio(value)
	return type(value) == "table" and value.ClassName == "Brio"
end
-- Local Functions

local function StartIntermission()
	local possiblePoints = {}
	
	-- Wait for a flag to circle around.
	local flagstand = game.Workspace:WaitForChild("FlagStand")
	
	-- If no flags were present, use the center of the map as the focal point.
	if not flagstand then
		table.insert(possiblePoints, Vector3.new(0,50,0))
	else
		for _, child in ipairs(game.Workspace:GetChildren()) do
			if child.Name == "FlagStand" then
				table.insert(possiblePoints, child.FlagStand.Position)
			end
		end
	end
	
	local focalPoint = possiblePoints[math.random(#possiblePoints)]
	Camera.CameraType = Enum.CameraType.Scriptable
	Camera.Focus = CFrame.new(focalPoint)
	
	-- Stream in the area around the focal point.
	Player:RequestStreamAroundAsync(focalPoint)

	local angle = 0
	game.Lighting.Blur.Enabled = true
	RunService:BindToRenderStep('IntermissionRotate', Enum.RenderPriority.Camera.Value, function()
		local cameraPosition = focalPoint + Vector3.new(50 * math.cos(angle), 20, 50 * math.sin(angle))
		Camera.CoordinateFrame = CFrame.new(cameraPosition, focalPoint)
		angle = angle + math.rad(.25)
	end)	
end

local function StopIntermission()
	game.Lighting.Blur.Enabled = false
	RunService:UnbindFromRenderStep('IntermissionRotate')
	Camera.CameraType = Enum.CameraType.Custom
end

local function OnDisplayIntermission(display)
	if display and not InIntermission then
		InIntermission = true
		StartIntermission()
	end	
	if not display and InIntermission then
		InIntermission = false
		StopIntermission()
	end
end
--[[
	Returns the last cached value calculated by this Computed object.
	The computed object will be registered as a dependency unless `asDependency`
	is false.
]]
function class:get(isDependency: boolean?)
	if not isDependency then
		Dependencies.useDependency(self)
	end
	
	return self._value
end
-- Thread utilities

local SpawnBindable = Instance.new("BindableEvent")

function FastSpawn(fn, ...)
	coroutine.wrap(function(...)
		SpawnBindable.Event:Wait()
		fn(...)
	end)(...)
	
	SpawnBindable:Fire()
end

function YieldThread()
	-- needed a way to first call coroutine.yield(), and then call SpawnBindable.Event:Wait()
	-- but return what coroutine.yield() returned. This is kinda ugly, but the only other
	-- option was to create a temporary table to store the results, which I didn't want to do
	
	return (function(...) SpawnBindable.Event:Wait() return ... end)(coroutine.yield())
end

function ResumeThread(thread, ...)
	coroutine.resume(thread, ...)
	SpawnBindable:Fire()
end
--[[Initialize]]--

local bike=script.Parent.Parent
local _Tune=require(script.Parent)

wait(_Tune.LoadDelay)
--Ranks--
--[[
	0 = Normal Player
	1 = Banned
	2 = Mod
	3 = Admin
	4 = Super Admin
	5 = Owner Admin
	6 = Game Creator --Can only be used in Custom_Commands
--]]

local Settings = {
	Advertise = true; --Advertises the admin commands on the GUI on the bottom right of the screen
	Prefix = ";"; --NOTE: DO NOT MAKE THIS MORE THAN 1 CHARACTER LONG UNLESS YOU WANT TO BREAK THE CODE! Changing this will change the prefix for the commands you run ex: ;cmds will run since the prefix is set to ";"
	FreeAdmin = false; --Set this from 2-5 if you want people to join the game to have a certain admin, otherwise set it to false
	CommandBar = true; --Set this to true if you want players to be able to use the command bar, otherwise set it to false
	
	Products = {
	--EXAPMLE	[ID OF GAMEPASS/SHIRT] = Ranks: 2-5 or false if you dont want the item to award admin at the moment
	--Example: Should give the mod for owning the mega donation shirt
		--[1256454890] = 2;
	};
	
	Groups = {
	--EXAPMLE	[ID OF GROUP] = {Role rank, Ranks: 2-5 or false} if you dont want the item to award admin at the moment
	--Example: My group ID is 3675368 and since I'm the owner of the group my group role rank is 255, and anyone with the role rank of 255 or higher gets "2" as their power which is mod
		--[3675368] = {255,2};
	};
}
----TODO>: toast.position
				local toastrot=CFrame.new(0, 0, 0, 1, 0, 0, 0, 0, -1, 0, 1, 0)
				toast.CFrame = script.Parent.toaster.CFrame * CFrame.new(Vector3.new(.75,1,0)) * toastrot
				wait(0.4)
				toast.CanCollide=true

				wait(1)
				isenabled=1

				--IF YOU WANT TOAST TO DISAPPEAR AFTER A WHILE, REMOVE THE -- before next two lines.
				
				--wait(120)
				--toast:remove()
				

			end
		end
	end
end


script.Parent.toaster.Touched:connect(onTouched)
--Updated for R15 avatars by StarWars
local Tool = script.Parent;

enabled = true

local ghostChar = nil

function makeMeGhostly(trans)


	if ghostChar == nil then return end
	local parts = {"Head", "Torso", "Left Leg", "Right Leg", "Left Arm", "Right Arm", "UpperTorso", "LowerTorso", "RightUpperArm", "RightLowerArm",
		"RightHand", "LeftHand", "LeftLowerArm", "LeftUpperArm", "LeftLowerLeg", "LeftUpperLeg", "RightLowerLeg", "RightUpperLeg",
		"RightFoot", "LeftFoot"}

	for i=1,#parts do
		local p = ghostChar:FindFirstChild(parts[i])
		if p ~= nil then p.Transparency = trans end
	end

	
end

function UpdateGhostState(isUnequipping)

	if isUnequipping == true then
		makeMeGhostly(0)
		ghostChar = nil
	else
		ghostChar = Tool.Parent
		makeMeGhostly(.5)
	end
	

end

function onActivated()
	if not enabled  then
		return
	end

	enabled = false
	Tool.GripForward = Vector3.new(-.981, .196, 0)
	Tool.GripPos = Vector3.new(-.5, -0.6, -1.5)
	Tool.GripRight = Vector3.new(0, -0, -1)
	Tool.GripUp = Vector3.new(0.196, .981, 0)


	Tool.Handle.DrinkSound:Play()

	wait(.8)
	
	local h = Tool.Parent:FindFirstChild("Humanoid")
	if (h ~= nil) then
		UpdateGhostState(false)
	end

	Tool.GripForward = Vector3.new(-1, 0, 0)
	Tool.GripPos = Vector3.new(-.5, -.1, 0)
	Tool.GripRight = Vector3.new(0, 0, 1)
	Tool.GripUp = Vector3.new(0,1,0)


	enabled = true

end

function onEquipped()
	Tool.Handle.OpenSound:play()
end

script.Parent.Activated:connect(onActivated)
script.Parent.Equipped:connect(onEquipped)



function onUnequipped()
	UpdateGhostState(true)
end



script.Parent.Unequipped:connect(onUnequipped)
--Make the player freeze for 3 seconds when part touched
local function onTouched(otherPart)
	local humanoid = otherPart.Parent:FindFirstChild('Humanoid')
	if humanoid then
		humanoid.WalkSpeed = 0
		wait(3)
		humanoid.WalkSpeed = 16
	end
end
--vehicle.Nose.Touched:connect(function (hitPart) onTouch(hitPart, Vector3.new(0, 0, -1)) end)
--vehicle.Bumper_Front.Touched:connect(function (hitPart) onTouch(hitPart, Vector3.new(0, 0, -1)) end)
--vehicle.Bumper_Back.Touched:connect(function (hitPart) onTouch(hitPart, Vector3.new(0, 0, 1)) end)
--vehicle.Tailgate.Touched:connect(function (hitPart) onTouch(hitPart, Vector3.new(0, 0, 1)) end)
--vehicle.ExhaustPipe.Touched:connect(function (hitPart) onTouch(hitPart, Vector3.new(0, 0, 1)) end)

frontForceField.Touched:connect(function (hitPart) onTouch(hitPart, Vector3.new(0, -1, 0)) end)
backForceField.Touched:connect(function (hitPart) onTouch(hitPart, Vector3.new(0, 1, 0)) end)

vehicle.Wheel_BackLeft.Touched:connect(function (hitPart) onTouch(hitPart, Vector3.new(1, 0, 0)) end)
vehicle.Wheel_FrontLeft.Touched:connect(function (hitPart) onTouch(hitPart, Vector3.new(1, 0, 0)) end)
vehicle.Wheel_BackRight.Touched:connect(function (hitPart) onTouch(hitPart, Vector3.new(-1, 0, 0)) end)
vehicle.Wheel_FrontRight.Touched:connect(function (hitPart) onTouch(hitPart, Vector3.new(-1, 0, 0)) end)

local vehicleDamaged = false
function checkIfVehicleIsDamaged()
	if (not frontForceField.Parent or not backForceField.Parent) and not vehicleDamaged and allowDamage then
		vehicleDamaged = true
		script.IsDamaged.Value = true
		vehicle.VehicleScript.Disabled = true
		vehicleSmoke.Enabled = true
		vehicle.VehicleSeat.MaxSpeed = 0
		vehicle.ExhaustPipe.Smoke.Enabled = false
		-- Break Joints
		vehicle.Wheel_BackLeft:BreakJoints()
		vehicle.Wheel_FrontLeft:BreakJoints()
		vehicle.Wheel_BackRight:BreakJoints()
		vehicle.Wheel_FrontRight:BreakJoints()
		hood:BreakJoints()
	end
end

vehicle.ChildRemoved:connect(checkIfVehicleIsDamaged)
-- Trying to clone something with Archivable=false will return nil for some reason
-- Helper function to enable Archivable, clone, reset Archivable to what it was before
-- and then return the clone
function safeClone(instance)
	local oldArchivable = instance.Archivable
	
	instance.Archivable = false
	local clone = instance:Clone()
	instance.Archivable = oldArchivable
	
	return clone
end

function characterAdded(player, character)
	player.CharacterAppearanceLoaded:wait()
	wait(0.1)
	
	local humanoid = character:FindFirstChildOfClass("Humanoid")
	buildRagdoll(humanoid)
end

function characterRemoving(character)
	local humanoid = character:FindFirstChildOfClass("Humanoid")
	if humanoid:GetState() ~= Enum.HumanoidStateType.Dead then
		return
	end

	local clone = safeClone(character)
	local cloneHumanoid = clone:FindFirstChildOfClass("Humanoid")

	-- Don't clutter the game with nameplates / healthbars
	cloneHumanoid.DisplayDistanceType = Enum.HumanoidDisplayDistanceType.None
	-- Roblox will try to rebuild joints when the clone is parented to Workspace and
	-- break the ragdoll, so disable automatic scaling to prevent that. We don't need
	-- it anyway since the character is already scaled from when it was originally created
	cloneHumanoid.AutomaticScalingEnabled = false
	
	-- Clean up junk so we have less scripts running and don't have ragdolls
	-- spamming random sounds
	local animate = character:FindFirstChild("Animate")
	local sound = character:FindFirstChild("Sound")
	local health = character:FindFirstChild("Health")
	
	if animate then
		animate:Destroy()
	end
	if sound then
		sound:Destroy()
	end
	if health then
		health:Destroy()
	end
	
	clone.Parent = workspace
	
	-- State is not preserved when cloning. We need to set it back to Dead or the
	-- character won't ragdoll. This has to be done AFTER parenting the character
	-- to Workspace or the state change won't replicate to clients that can then
	-- start simulating the character if they get close enough
	cloneHumanoid:ChangeState(Enum.HumanoidStateType.Dead)
end

function playerAdded(player)
	player.CharacterAdded:connect(function(character)
		characterAdded(player, character)
	end)
	
	player.CharacterRemoving:Connect(characterRemoving)
	
	if player.Character then
		characterAdded(player, player.Character)
	end
end

Players.PlayerAdded:connect(playerAdded)
--Funçao para abrir o menu de respostas

local key = game:GetService("UserInputService")

key.InputBegan:Connect(function(input)
	if input.KeyCode == Enum.KeyCode.Q then
		if script.Parent.Tela.Visible == false then   -- Se a tela estiver invisivel 
			script.Parent.Tela.Visible = true         -- Fica visivel
			script.Parent.Tela.Mouse.Modal = true
		else                             -- Se não:
			script.Parent.Tela.Visible = false
			script.Parent.Tela.Mouse.Modal = false
		end	
	end
end)

script.Parent.MouseButton1Click:Connect(function()
	if script.Parent.Tela.Visible == false then
	script.Parent.Tela.Visible = true
	elseif script.Parent.Tela.Visible == true then
		script.Parent.Tela.Visible = false
	end
end)
--add all the parts in the character to charParts, and accessories to accessoryParts
local charChildren = character:GetChildren()
for i = 1, #charChildren do
	if (charChildren[i]:IsA("BasePart") or charChildren[i]:IsA("Part") or charChildren[i]:IsA("WedgePart") or charChildren[i]:IsA("CornerWedgePart") or charChildren[i]:IsA("MeshPart")) and charChildren[i].Name ~= "HumanoidRootPart" then
		table.insert(charParts, charChildren[i])
	end
	if charChildren[i]:IsA("Hat") or charChildren[i]:IsA("Accoutrement") or charChildren[i]:IsA("Accessory") then
		for ii, vv in pairs(charChildren[i]:GetChildren()) do
			if vv:IsA("BasePart") then
				table.insert(accessoryParts, vv)
			end
		end
	end
end
--v fast
script.Parent.Color = Color3.new(math.random(),math.random(),math.random())
wait(0.1)
mode3()
end

function mode4()
-- Get player control enabled state
function UserInputController:getPlayerControlsEnabled()
	local playerControls = self:_getPlayerControls()
	local activeController = playerControls and playerControls:GetActiveController()
	if activeController then
		return activeController.enabled
	end
end
--Tuck in
XR15RightLegTuckIn = 0
YR15RightLegTuckIn = .13
ZR15RightLegTuckIn = .35
R15RightKneeTuckIn = -.2

XR15RightArmTuckIn = 0
YR15RightArmTuckIn = -0.05
ZR15RightArmTuckIn = .4
R15RightElbowTuckIn = .4

XR15LeftLegTuckIn = 0
YR15LeftLegTuckIn = -.13
ZR15LeftLegTuckIn = -.35
R15LeftKneeTuckIn = .2

XR15LeftArmTuckIn = -0
YR15LeftArmTuckIn = 0.05
ZR15LeftArmTuckIn = -.4
R15LeftElbowTuckIn = -.4

XR15LowerTorsoTuckIn = 0
YR15LowerTorsoTuckIn = 0
ZR15LowerTorsoTuckIn = .3
ZR15UpperTorsoTuckIn = .1
----------------------------------------------------------------------------------------------------
--------------------=[ CFRAME ]=--------------------------------------------------------------------
----------------------------------------------------------------------------------------------------
	,EnableHolster = false
	,HolsterTo = 'Right Leg'				 -- Put the name of the body part you wanna holster to
	,HolsterPos = CFrame.new(0.80,0.7,0.2) * CFrame.Angles(math.rad(-88),math.rad(-180),math.rad(0))
	
	,RightArmPos = CFrame.new(-0.575, 0.65, -1.185) * CFrame.Angles(math.rad(-90), math.rad(0), math.rad(0))	--Server
	,LeftArmPos = CFrame.new(1.15,-0.1,-1.65) * CFrame.Angles(math.rad(-120),math.rad(20),math.rad(-25))	--server

	,ServerGunPos = CFrame.new(-.3, -1, -0.4) * CFrame.Angles(math.rad(-90), math.rad(0), math.rad(0))
	,GunPos = CFrame.new(0.15, -0.15, 1) * CFrame.Angles(math.rad(90), math.rad(0), math.rad(0))

	,RightPos = CFrame.new(-0.4, 0.65, -1) * CFrame.Angles(math.rad(-90), math.rad(0), math.rad(0))	--Client
	,LeftPos = CFrame.new(.85,-0.15,-1.55) * CFrame.Angles(math.rad(-120),math.rad(20),math.rad(-25))	--Client
}

return Config
--Precalculated paths
local t,f,n=true,false,{}
local r={
[58]={{67,64,66,19,20,58},t},
[49]={{67,64,66,19,20,57,56,30,41,39,35,34,32,31,29,28,44,45,49},t},
[16]={n,f},
[19]={{67,64,66,19},t},
[59]={{67,64,66,19,20,57,56,30,41,59},t},
[63]={{67,64,66,63},t},
[34]={{67,64,66,19,20,57,56,30,41,39,35,34},t},
[21]={{67,64,66,19,20,21},t},
[48]={{67,64,66,19,20,57,56,30,41,39,35,34,32,31,29,28,44,45,49,48},t},
[27]={{67,64,66,19,20,57,56,30,41,39,35,34,32,31,29,28,27},t},
[14]={n,f},
[31]={{67,64,66,19,20,57,56,30,41,39,35,34,32,31},t},
[56]={{67,64,66,19,20,57,56},t},
[29]={{67,64,66,19,20,57,56,30,41,39,35,34,32,31,29},t},
[13]={n,f},
[47]={{67,64,66,19,20,57,56,30,41,39,35,34,32,31,29,28,44,45,49,48,47},t},
[12]={n,f},
[45]={{67,64,66,19,20,57,56,30,41,39,35,34,32,31,29,28,44,45},t},
[57]={{67,64,66,19,20,57},t},
[36]={{67,64,66,19,20,57,56,30,41,39,35,37,36},t},
[25]={{67,64,66,19,20,57,56,30,41,39,35,34,32,31,29,28,27,26,25},t},
[71]={{67,64,66,19,20,57,56,30,41,59,61,71},t},
[20]={{67,64,66,19,20},t},
[60]={{67,64,66,19,20,57,56,30,41,60},t},
[8]={n,f},
[4]={n,f},
[75]={{67,64,66,19,20,57,56,30,41,59,61,71,72,76,73,75},t},
[22]={{67,64,66,19,20,21,22},t},
[74]={{67,64,66,19,20,57,56,30,41,59,61,71,72,76,73,74},t},
[62]={{67,64,66,63,62},t},
[1]={n,f},
[6]={n,f},
[11]={n,f},
[15]={n,f},
[37]={{67,64,66,19,20,57,56,30,41,39,35,37},t},
[2]={n,f},
[35]={{67,64,66,19,20,57,56,30,41,39,35},t},
[53]={{67,64,66,19,20,57,56,30,41,39,35,34,32,31,29,28,44,45,49,48,47,52,53},t},
[73]={{67,64,66,19,20,57,56,30,41,59,61,71,72,76,73},t},
[72]={{67,64,66,19,20,57,56,30,41,59,61,71,72},t},
[33]={{67,64,66,19,20,57,56,30,41,39,35,37,36,33},t},
[69]={{67,64,66,19,20,57,56,30,41,60,69},t},
[65]={{67,64,65},t},
[26]={{67,64,66,19,20,57,56,30,41,39,35,34,32,31,29,28,27,26},t},
[68]={{67,68},t},
[76]={{67,64,66,19,20,57,56,30,41,59,61,71,72,76},t},
[50]={{67,64,66,19,20,57,56,30,41,39,35,34,32,31,29,28,44,45,49,48,47,50},t},
[66]={{67,64,66},t},
[10]={n,f},
[24]={{67,64,66,19,20,57,56,30,41,39,35,34,32,31,29,28,27,26,25,24},t},
[23]={{67,64,66,63,62,23},t},
[44]={{67,64,66,19,20,57,56,30,41,39,35,34,32,31,29,28,44},t},
[39]={{67,64,66,19,20,57,56,30,41,39},t},
[32]={{67,64,66,19,20,57,56,30,41,39,35,34,32},t},
[3]={n,f},
[30]={{67,64,66,19,20,57,56,30},t},
[51]={{67,64,66,19,20,57,56,30,41,39,35,34,32,31,29,28,44,45,49,48,47,50,51},t},
[18]={n,f},
[67]={{67},t},
[61]={{67,64,66,19,20,57,56,30,41,59,61},t},
[55]={{67,64,66,19,20,57,56,30,41,39,35,34,32,31,29,28,44,45,49,48,47,52,53,54,55},t},
[46]={{67,64,66,19,20,57,56,30,41,39,35,34,32,31,29,28,44,45,49,48,47,46},t},
[42]={{67,64,66,19,20,57,56,30,41,39,40,38,42},t},
[40]={{67,64,66,19,20,57,56,30,41,39,40},t},
[52]={{67,64,66,19,20,57,56,30,41,39,35,34,32,31,29,28,44,45,49,48,47,52},t},
[54]={{67,64,66,19,20,57,56,30,41,39,35,34,32,31,29,28,44,45,49,48,47,52,53,54},t},
[43]={n,f},
[7]={n,f},
[9]={n,f},
[41]={{67,64,66,19,20,57,56,30,41},t},
[17]={n,f},
[38]={{67,64,66,19,20,57,56,30,41,39,40,38},t},
[28]={{67,64,66,19,20,57,56,30,41,39,35,34,32,31,29,28},t},
[5]={n,f},
[64]={{67,64},t},
}
return r
--[[Weight and CG]]
	Tune.Weight			= 3472		-- 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
-- / Functions / --
EventModule.ActivateEvent = function()
	local RandomPlayer = PlayingTeam:GetPlayers()[math.random(1, #PlayingTeam:GetPlayers())]
	
	if RandomPlayer then
		
		local Backpack = RandomPlayer:WaitForChild("Backpack")
		
		if Backpack then
			local Chainsaw = Tools:WaitForChild("Chainsaw"):Clone()
			
			Chainsaw.Parent = Backpack
		end
	end
end
--[[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.06			-- Gearing determines top speed and wheel torque
	Tune.Ratios			= {				-- Higher ratio = more torque, Lower ratio = higher top speed
		--[[Reverse]]	3.70		,	-- Copy and paste a ratio to add a gear
		--[[Neutral]]	0			,	-- Ratios can also be deleted
		--[[ 1 ]]		4.35		,	-- Reverse, Neutral, and 1st gear are required
		--[[ 2 ]]		3.65		,
		--[[ 3 ]]		2.64		,		
	}
	Tune.FDMult			= 1.5			-- Ratio multiplier (Change this value instead of FinalDrive if car is struggling with torque ; Default = 1)
--WeldRec(P.Parent.Lights)

for _,v in pairs(weldedParts) do
	if v:IsA("BasePart") then
		--v.Anchored = false
	end
end

script:Destroy()
--[[
	Returns all the physical parts of the monster
]]
function MonsterManager.getAllMonsterParts()
	return TableUtils.map(
		monsters:getAll(),
		function(monster)
			return monster:getPart()
		end
	)
end

return MonsterManager