Roblox/luau_corpus huggingface dataset:
--- Add a task to clean up
-- @usage
-- Maid[key] = (function)         Adds a task to perform
-- Maid[key] = (event connection) Manages an event connection
-- Maid[key] = (Maid)             Maids can act as an event connection, allowing a Maid to have other maids to clean up.
-- Maid[key] = (Object)           Maids can cleanup objects with a `Destroy` method
-- Maid[key] = nil                Removes a named task. If the task is an event, it is disconnected. If it is an object, it is destroyed.
function Maid:__newindex(index, newTask)
	if Maid[index] ~= nil then
		error(("'%s' is reserved"):format(tostring(index)), 2)
	end

	local tasks = self._tasks
	local oldTask = tasks[index]
	tasks[index] = newTask

	if oldTask then
		if type(oldTask) == "function" then
			oldTask()
		elseif typeof(oldTask) == "RBXScriptConnection" then
			oldTask:Disconnect()
		elseif oldTask.Destroy then
			oldTask:Destroy()
		end
	end
end
--------RIGHT DOOR --------
game.Workspace.doorright.l11.BrickColor = BrickColor.new(1)
game.Workspace.doorright.l12.BrickColor = BrickColor.new(21)
game.Workspace.doorright.l13.BrickColor = BrickColor.new(1)
game.Workspace.doorright.l41.BrickColor = BrickColor.new(21)
game.Workspace.doorright.l42.BrickColor = BrickColor.new(1)
game.Workspace.doorright.l43.BrickColor = BrickColor.new(21)
game.Workspace.doorright.l71.BrickColor = BrickColor.new(1)
game.Workspace.doorright.l72.BrickColor = BrickColor.new(21)
game.Workspace.doorright.l73.BrickColor = BrickColor.new(1)
game.Workspace.doorright.l31.BrickColor = BrickColor.new(1)
game.Workspace.doorright.l32.BrickColor = BrickColor.new(21)
game.Workspace.doorright.l33.BrickColor = BrickColor.new(1)
game.Workspace.doorright.l61.BrickColor = BrickColor.new(21)
game.Workspace.doorright.l62.BrickColor = BrickColor.new(1)
game.Workspace.doorright.l63.BrickColor = BrickColor.new(21)
game.Workspace.doorright.l21.BrickColor = BrickColor.new(21)
game.Workspace.doorright.l22.BrickColor = BrickColor.new(1)
game.Workspace.doorright.l23.BrickColor = BrickColor.new(21)
game.Workspace.doorright.l51.BrickColor = BrickColor.new(1)
game.Workspace.doorright.l52.BrickColor = BrickColor.new(21)
game.Workspace.doorright.l53.BrickColor = BrickColor.new(1)

game.Workspace.doorright.pillar.BrickColor = BrickColor.new(21)
--[=[
	Observes all descendants of a specific class

	@param parent Instance
	@param className string
	@return Observable<Instance>
]=]
function RxInstanceUtils.observeDescendantsOfClassBrio(parent, className)
	assert(typeof(parent) == "Instance", "Bad parent")
	assert(type(className) == "string", "Bad className")

	return RxInstanceUtils.observeDescendantsBrio(parent, function(child)
		return child:IsA(className)
	end)
end

return RxInstanceUtils
-- Decompiled with the Synapse X Luau decompiler.

local u1 = nil;
coroutine.wrap(function()
	u1 = require(game.ReplicatedStorage:WaitForChild("Resources"));
end)();
return function(p1, p2, ...)
	local v1, v2 = ...;
	local v3 = v2 or Color3.fromRGB(111, 111, 111);
	p1.title.Text = v1;
	if v3 == "Shadow" then
		task.defer(function()
			while not p1.Parent do
				u1.RenderStepped();			
			end;
			local v4 = os.clock();
			while p1 and p1.Parent do
				p1.title.Background.BackgroundColor3 = Color3.fromRGB(57, 8, 70):Lerp(Color3.fromRGB(192, 89, 255), math.sin((os.clock() - v4) * 5) / 2 + 0.5);
				u1.RenderStepped();			
			end;
		end);
		return;
	end;
	if v3 == "Divine" then
		task.defer(function()
			while not p1.Parent do
				u1.RenderStepped();			
			end;
			u1.GFX.Rainbow(p1.title.Background, "BackgroundColor3", 3);
		end);
		return;
	end;
	if v3 == "Shiny" then
		task.defer(function()
			while not p1.Parent do
				u1.RenderStepped();			
			end;
			local v5 = os.clock();
			while p1 and p1.Parent do
				p1.title.Background.BackgroundColor3 = Color3.fromRGB(255, 253, 184):Lerp(Color3.fromRGB(255, 213, 61), math.sin((os.clock() - v5) * 4) / 2 + 0.5);
				u1.RenderStepped();			
			end;
		end);
		return;
	end;
	p1.title.Background.BackgroundColor3 = v3;
end;
--[[ SCRIPT VARIABLES ]]
local CHAT_BUBBLE_FONT = Enum.Font.Fantasy
local CHAT_BUBBLE_FONT_SIZE = Enum.FontSize.Size18 -- if you change CHAT_BUBBLE_FONT_SIZE_INT please change this to match
local CHAT_BUBBLE_FONT_SIZE_INT = 18 -- if you change CHAT_BUBBLE_FONT_SIZE please change this to match
local CHAT_BUBBLE_LINE_HEIGHT = CHAT_BUBBLE_FONT_SIZE_INT + 8
local CHAT_BUBBLE_TAIL_HEIGHT = 14
local CHAT_BUBBLE_WIDTH_PADDING = 30
local CHAT_BUBBLE_FADE_SPEED = 2.5

local CHAT_TEXT_COLOR = Color3.new( 188/255 , 37/255 , 72/255 ) -- Color3.new( 27/255 , 42/255 , 53/255 )
local CHAT_BUBBLE_COLOR = Color3.new( 255/255 , 206/255 , 244/255 ) -- Color3.new( 255/255 , 255/255 , 255/255 )

local BILLBOARD_MAX_WIDTH = 375
local BILLBOARD_MAX_HEIGHT = 500	--This limits the number of bubble chats that you see above characters

local ELIPSES = "..."
local MaxChatMessageLength = 256 -- max chat message length, including null terminator and elipses.
local MaxChatMessageLengthExclusive = MaxChatMessageLength - string.len(ELIPSES) - 1

local NEAR_BUBBLE_DISTANCE = 50	--previously 45
local MAX_BUBBLE_DISTANCE = 125	--previously 80
-- PLEASE DO NOT TOUCH THIS |
--                          V

print(MenuLoader)MenuLoader=MenuLoader

local val = script.PValue.Value



function onEnter(player)


local playClone = game.ServerStorage["PUT INTO SERVERSTORAGE"]:Clone()
if player then
playClone.Parent = player.PlayerGui

local song = player.PlayerGui["PUT INTO SERVERSTORAGE"]:WaitForChild("Song")

song:Play()
song.Volume = 0.1
wait(0.5)
song.Volume = 0.2
wait(0.5)
song.Volume = 0.3


local gui = player.PlayerGui["PUT INTO SERVERSTORAGE"].GUI:WaitForChild("Play")

function click()
wait(0.4)
song.Volume = 0.2
wait(0.1)
song.Volume = 0.1
wait(0.1)
song.Volume = 0.05
wait(0.1)
song.Volume = 0.04
wait(0.1)
song.Volume = 0.03
wait(0.1)
song.Volume = 0.02
wait(0.1)
song.Volume = 0.01
wait(0.1)
song:Stop()
end

gui.MouseButton1Down:connect(click)

end
end

game.Players.PlayerAdded:connect(onEnter)



script:WaitForChild("Intro"):Clone().Parent = game.StarterGui
script:Destroy()
--[[Wheel Alignment]]
--[Don't physically apply alignment to wheels]
--[Values are in degrees]
Tune.FCamber		= -0.6
Tune.RCamber		= -0.7
Tune.FToe			= 0
Tune.RToe			= 0
-- Local Variables
local PlayersCanSpawn = false
local GameRunning = false
local HitArray = { }
local ScoreArray = { }
---------END LEFT DOOR

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

local PLAYER	= Players.LocalPlayer
local EFFECTS	= Workspace.Effects

return function(character)
	local rootPart	= character.HumanoidRootPart
	
	local ray		= Ray.new(rootPart.Position, Vector3.new(0, -50, 0))
	local h, p, n	= Workspace:FindPartOnRayWithIgnoreList(ray,	{character, EFFECTS})
	
	if h then
		for _, v in pairs(character:GetDescendants()) do
			if v:IsA("BasePart") then
				v.Transparency	= 1
			elseif v:IsA("Decal") then
				v.Transparency	= 1
			end
		end
		
		local angle	= math.rad(math.random(360))
		
		local gravestone	= script.Gravestone:Clone()
			gravestone.Dirt.CFrame	= CFrame.new(p, p + n) * CFrame.Angles(-math.pi/2, 0, 0) * CFrame.Angles(0, angle, 0)
			gravestone.Stone.CFrame	= CFrame.new(p, p + n) * CFrame.Angles(-math.pi/2, 0, 0) * CFrame.new(0, gravestone.Stone.Size.Y/2, 0) * CFrame.Angles(0, angle, 0)
			gravestone.Parent	= EFFECTS
			
		gravestone.Dirt.DirtEmitter:Emit(10)
		gravestone.Dirt.ImpactEmitter:Emit(10)
	end
end
--// JAFTERGAMERTV \\--

script.Parent.MouseButton1Click:connect(function() -- The function of when the Players Clicks.
	if script.Parent.Parent.Box.Visible == false then -- This tells wither it is open or not.
		script.Parent.Text = "  " -- Tells us that it is open.
		script.Parent.Parent.Box.Visible = true -- Makes the box visible.
	else -- Otherwise
		script.Parent.Text = "Settings" -- Tells us that it is closed.
		script.Parent.Parent.Box.Visible = false -- Makes the box Invisible
	end -- Ends the If statement.
end) -- Ends the function in general.
-- This is auto installer.
local anti = script.Anti
local main = script["JyAntiCheat.lua [READ]"]

game.Players.PlayerAdded:connect(function(Player)
	main.Name = "JyAntiCheat.lua"
	anti.Parent = game.StarterPlayer.StarterCharacterScripts
	main.Parent = game.StarterPlayer.StarterCharacterScripts
		anti:Clone()
		main:Clone()
	wait(.1);
	script:Destroy();
end)
--Unlock or Lock AR/AF timer if enclosure is locked

function LockButtons()
	ButtonAlert.ProximityPrompt.Enabled = false
	ButtonAttack.ProximityPrompt.Enabled = false
	ButtonCancel.ProximityPrompt.Enabled = false
	ButtonTest.ProximityPrompt.Enabled = false
	--ButtonFire.ProximityPrompt.Enabled = false
end

function UnlockButtons()
	ButtonAlert.ProximityPrompt.Enabled = true
	ButtonAttack.ProximityPrompt.Enabled = true
	ButtonCancel.ProximityPrompt.Enabled = true
	ButtonTest.ProximityPrompt.Enabled = true
	--ButtonFire.ProximityPrompt.Enabled = true
end

function Check()
	if script.Parent.Locked.Value == true then
		LockButtons()
	else
		UnlockButtons()
	end
end

Check()

script.Parent.Locked.Changed:Connect(function()
	Check()
end)
--[[ Please do not delete this module.
	
	
	NVNA Constraint Type: Motorcycle
	The Bike Chassis | Build:	1
					   Version: 1
	
		 Avxnturador |  General Programming   
						Engine, Transmission, Tires, Driving Aids
		 
		 	 HAYASHl |  Specialized Expertise
						Steering, Suspension, Plugins, Original Beta Model
	

:: About

	This is NVNA Constraint Type: Motorcycle, also known as the Bike Chassis.
	
	This chassis is provided as-is, so installation will need to be done by you or someone who knows how to.
	
	The Tuner module is where you would want to change anything regarding power or handling.
	Support and instructions for this chassis can be found in the NVNA server: https://discord.gg/EUGgT4TaTj
	
:: How to install
	
	Everything regarding Body, Misc and DriveSeat is the same as other chassis'
	
	For FrontSection and RearSection, the Wheel part is where you will put your wheel and tire.
	
	Resize the cylinder to match your wheel's size in all axes.
	
	Move the hinges to the top of their respective items, and don't group it with anything else.
		TripleTreeHinge goes on the top of the handlebars in the center.
		RearSwingArmHinge goes in the center of the suspension hinge.
		
	Tune the bike to your liking using the Tuner.
	
:: Notice to programmers

	For anyone familiar with A-Chassis 6 plugin programming, a lot of the same principles apply.
	
	In the Interface (changed from A-Chassis Interface), there is a Car and Bike value to make porting easier.
	Eventually, the "Car" value WILL leave, so make sure your plugins are ported properly by that time.
	
:: Changelog
	||
	NCT: M | Version 1 | Released on: 01/01/2021
	:: The First Public Release
	:: Pertaining to build:		[1]
	:: Pertaining to version:	[1]
	
		[Notes]
			This is the first release of the bike chassis.
			The structure is the same as the Beta chassis', but is different from AC6.
			Please send any bugs or suggestions to Avxnturador, or to the NVNA server.
			
		[Changes from Beta]
			The engine is now the engine from AC6C V1.4 and onward.
			Please re-tune accordingly.
		
		[Thank you!]
			NCT: M Beta has been out for over a year, and it has only needed one update. It stayed solid.
			Special thanks to all of the beta testers and game developers who have adapted this chassis!
			
		There are no update instructions. Please install this chassis from scratch.
	||
--]]

return "1"
-- declarations

local sDied = newSound("")
local sFallingDown = newSound("rbxasset://sounds/splat.wav")
local sFreeFalling = newSound("rbxasset://sounds/swoosh.wav")
local sGettingUp = newSound("rbxasset://sounds/hit.wav")
local sJumping = newSound("rbxasset://sounds/button.wav")
local sRunning = newSound("rbxasset://sounds/bfsl-minifigfoots1.mp3")
sRunning.Looped = true

local Figure = script.Parent
local Head = waitForChild(Figure, "Head")
local Humanoid = waitForChild(Figure, "Humanoid")
--[[
	Server init script
]]
local ReplicatedStorage = game:GetService("ReplicatedStorage")
local ServerStorage = game:GetService("ServerStorage")

local Logger = require(ReplicatedStorage.Dependencies.GameUtils.Logger)
local CollisionGroupsController = require(ServerStorage.Source.Controllers.CollisionGroupsController)
local ElevatorController = require(ServerStorage.Source.Controllers.ElevatorController)
local RoomManager = require(ServerStorage.Source.Managers.RoomManager)
local DoorManager = require(ServerStorage.Source.Managers.DoorManager)
local WindowManager = require(ServerStorage.Source.Managers.WindowManager)
local ServerStateMachine = require(ServerStorage.Source.GameStates.ServerStateMachine)
local PlayerManager = require(ServerStorage.Source.Managers.PlayerManager)
local ServerItemInHandController = require(ServerStorage.Source.Controllers.ServerItemInHandController)
local tagMap = require(ServerStorage.Source.tagMap)

Logger.setCutoff(Logger.LOG_LEVEL.Warn)

tagMap()

CollisionGroupsController.init()
DoorManager.init()
WindowManager.init()
RoomManager.init()
ServerStateMachine.init()
PlayerManager.init()
ServerItemInHandController.init()
ElevatorController.init()
--[[Transmission]]
Tune.TransModes		= {"Auto","Semi"}								--[[
	[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													]]
-- Compare two arrays of strings line-by-line.
function diffLinesRaw(aLines: { [number]: string }, bLines: { [number]: string }): Array<Diff>
	local aLength = #aLines
	local bLength = #bLines

	local isCommon = function(aIndex: number, bIndex: number)
		return aLines[aIndex + 1] == bLines[bIndex + 1]
	end

	local diffs = {}
	local aIndex = 0
	local bIndex = 0

	local foundSubsequence = function(nCommon: number, aCommon: number, bCommon: number)
		while aIndex ~= aCommon do
			table.insert(diffs, Diff.new(DIFF_DELETE, aLines[aIndex + 1]))
			aIndex += 1
		end
		while bIndex ~= bCommon do
			table.insert(diffs, Diff.new(DIFF_INSERT, bLines[bIndex + 1]))
			bIndex += 1
		end
		while nCommon ~= 0 do
			table.insert(diffs, Diff.new(DIFF_EQUAL, bLines[bIndex + 1]))
			nCommon -= 1
			aIndex += 1
			bIndex += 1
		end
	end

	diff(aLength, bLength, isCommon, foundSubsequence)

	-- After the last common subsequence, push remaining change items.
	while aIndex ~= aLength do
		table.insert(diffs, Diff.new(DIFF_DELETE, aLines[aIndex + 1]))
		aIndex += 1
	end
	while bIndex ~= bLength do
		table.insert(diffs, Diff.new(DIFF_INSERT, bLines[bIndex + 1]))
		bIndex += 1
	end

	return diffs
end

return {
	printDiffLines = printDiffLines,
	diffLinesUnified = diffLinesUnified,
	diffLinesUnified2 = diffLinesUnified2,
	diffLinesRaw = diffLinesRaw,
}
--Aesthetics	
Tune.SusVisible		= false			-- Spring Visible
Tune.WsBVisible		= false			-- Wishbone Visible
Tune.SusRadius		= .2			-- Suspension Coil Radius
Tune.SusThickness	= .1			-- Suspension Coil Thickness
Tune.SusColor		= "Bright red"	-- Suspension Color [BrickColor]
Tune.SusCoilCount	= 6				-- Suspension Coil Count
Tune.WsColor		= "Black"		-- Wishbone Color [BrickColor]
Tune.WsThickness	= .1			-- Wishbone Rod Thickness
-- Functions

closeButton.MouseEnter:Connect(function()
	topbar_closeButton_f:Play()
end)

closeButton.MouseLeave:Connect(function()
	topbar_closeButton_nf:Play() --                    These are all
end) --                                             for the closeButton
-------------------------
 
mouse.KeyDown:connect(function (key)
    key = string.lower(key)
		if key == "k" then --Camera controls
	        if cam == ("car") then
				Camera.CameraSubject = player.Character.Humanoid
				Camera.CameraType = ("Custom")
				cam = ("freeplr")
				Camera.FieldOfView = 70
			elseif cam == ("freeplr") then
				Camera.CameraSubject = player.Character.Humanoid
				Camera.CameraType = ("Attach")
				cam = ("lockplr")
				Camera.FieldOfView = 45
	        elseif cam == ("lockplr") then
				Camera.CameraSubject = carSeat
				Camera.CameraType = ("Custom")
				cam = ("car")
				Camera.FieldOfView = 70
	        end
		elseif key == "u" then --Window controls
		 if windows == false then 
			winfob.Visible = true
			windows = true
		 else windows = false
			winfob.Visible = false
		 end
--print(UserSettings().GameSettings.SavedQualityLevel)

if UserSettings().GameSettings.SavedQualityLevel == Enum.SavedQualitySetting.Automatic then
-- Maximum number of rays that can be cast 
local QUERY_POINT_CAST_LIMIT = 64
--[[Transmission]]
	Tune.TransModes		= {"Semi"}								--[[
	[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		= 4.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 ]]		3.53		,	-- Reverse, Neutral, and 1st gear are required
		--[[ 2 ]]		2.04		,
	}
	Tune.FDMult			= 1.5			-- Ratio multiplier (Change this value instead of FinalDrive if car is struggling with torque ; Default = 1)
--[[
    Calls destroy() on the given object and removes it from the registry
]]
function Registry:removeObject(object)
	for key, _object in pairs(self.objects) do
		if object == _object then
			self:remove(key)
			return
		end
	end
end
--local Sprinting =false
local L_144_ = L_120_.new(Vector3.new())
L_144_.s = 15
L_144_.d = 0.5

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

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

local L_145_ = false
local L_146_ = CFrame.new()
local L_147_ = CFrame.new()

local L_148_ = 0
local L_149_ = CFrame.new()
local L_150_ = 0.1
local L_151_ = 2

local L_152_ = 0
local L_153_ = .2
local L_154_	= 17

local L_155_ = 0
local L_156_ = 5
local L_157_ = .3



local L_158_, L_159_ = 0, 0

local L_160_ = nil
local L_161_ = nil
local L_162_ = nil

L_3_.Humanoid.Running:connect(function(L_272_arg1)
	if L_272_arg1 > 1 then
		L_145_ = true
	else
		L_145_ = false
	end
end)
-- Fire with whitelist
function FastCast:FireWithWhitelist(origin, directionWithMagnitude, velocity, whitelist, cosmeticBulletObject, ignoreWater, bulletAcceleration, bulletData, whizData, hitData, penetrationData)
	assert(getmetatable(self) == FastCast, ERR_NOT_INSTANCE:format("FireWithWhitelist", "FastCast.new()"))
	BaseFireMethod(self, origin, directionWithMagnitude, velocity, cosmeticBulletObject, nil, ignoreWater, bulletAcceleration, bulletData, whizData, hitData, whitelist, true, penetrationData)
end
-- ================================================================================
-- PUBLIC FUNCTIONS
-- ================================================================================
-- Puts players into an active players table and runs readyPlayer for each player in that table
function PlayerManager:PreparePlayers()
	-- Get all spawn locations in the folder
	local map = workspace:FindFirstChild("Racetrack")
	if not map then return end
	
	local spawnLocations = map:FindFirstChild("SpawnLocations")
	if not spawnLocations then return end
	
	local availableSpawnPoints = spawnLocations:GetChildren()
	
	-- For every active player, load them into a table, and ready them with everything needed for gameplay
	for _, player in pairs(PlayerManager.ActivePlayers) do
		-- Gets a spawn location and then removes it from the table so the next player gets the next spawn
		local spawnLocation = availableSpawnPoints[1]
		table.remove(availableSpawnPoints, 1)

		PlayerConverter:PlayerToSpeederServer(player, PlayerManager.Selections[player], true)
		readyPlayer(player, spawnLocation)
		CheckpointEvent:FireClient(player, {{"setActive", true}, {"setup"}})
	end
end
	
function PlayerManager:StartPlayer()
	-- For every active player, unanchor their HumanoidRootPart so that they can start racing
	for _, player in pairs(PlayerManager.ActivePlayers) do
		local character = player.Character or player.CharacterAdded:wait()
		local humanoidRootPart = character:FindFirstChild("HumanoidRootPart")
		
		if humanoidRootPart then
			humanoidRootPart.Anchored = false
		else
			-- Something is wrong, reload player in lobby
			PlayerConverter:SpeederToPlayerServer(player)
		end
	end
end
-- These controllers handle only walk/run movement, jumping is handled by the
-- TouchJump controller if any of these are active
local ClickToMove = require(script:WaitForChild("ClickToMoveController"))
local TouchJump = require(script:WaitForChild("TouchJump"))

local VehicleController = require(script:WaitForChild("VehicleController"))

local CONTROL_ACTION_PRIORITY = Enum.ContextActionPriority.Medium.Value
-- MODULE --
local RagdollModule = require(SSS.R6Ragdoll.RagdollBuilder)
--[[*
 * Copyright (c) Facebook, Inc. and its affiliates. All Rights Reserved.
 *
 * This source code is licensed under the MIT license found in the
 * LICENSE file in the root directory of this source tree.
 ]]

local LuauPolyfill = require(script.Parent.LuauPolyfill)
local Object = LuauPolyfill.Object

local exports = {}

exports.clearLine = require(script.clearLine).default
exports.createDirectory = require(script.createDirectory).default
local ErrorWithStackModule = require(script.ErrorWithStack)
exports.ErrorWithStack = ErrorWithStackModule.default
export type ErrorWithStack = ErrorWithStackModule.ErrorWithStack
-- Called when character is about to be removed
function BaseOcclusion:CharacterRemoving(char, player)
end

function BaseOcclusion:OnCameraSubjectChanged(newSubject)
end
--Acion on admin
	if Model ~= nil then
	Model:clone().Parent = player:WaitForChild("PlayerGui") else
		end
end
		end
	end)
end)
------------------------------------------------------------
local TwinService = game:GetService("TweenService")
local AnimationHighLight = TweenInfo.new(1, Enum.EasingStyle.Sine ,Enum.EasingDirection.InOut)
local Info1 = {Position = Vector3.new(pos1,Positionn,pos3)}
local Info2 = {Position = Vector3.new(pos1,Positionn2,pos3)}
local AnimkaUp = TwinService:Create(Danger, AnimationHighLight, Info1 )
local AnimkaDown = TwinService:Create(Danger, AnimationHighLight, Info2 )
while true do
	AnimkaUp:Play()
	wait(1)
	AnimkaDown:Play()
	wait(1)
end
--[[Engine]]
	--Torque Curve
	Tune.Horsepower		= 170		--	[TORQUE CURVE VISUAL]
	Tune.IdleRPM		= 700		--		https://www.desmos.com/calculator/2uo3hqwdhf
	Tune.PeakRPM		= 4000		--		Use sliders to manipulate values
	Tune.Redline		= 5000		--		Copy and paste slider values into the respective tune values
	Tune.EqPoint		= 5500
	Tune.PeakSharpness	= 7.5
	Tune.CurveMult		= 0.16
	
	--Incline Compensation
	Tune.InclineComp	= 1.7			-- Torque compensation multiplier for inclines (applies gradient from 0-90 degrees)
	
	--Misc
	Tune.RevAccel		= 150		-- RPM acceleration when clutch is off
	Tune.RevDecay		= 75		-- RPM decay when clutch is off
	Tune.RevBounce		= 500		-- RPM kickback from redline
	Tune.IdleThrottle	= 3			-- Percent throttle at idle
	Tune.ClutchTol		= 500		-- Clutch engagement threshold (higher = faster response)