Pinkstack/roblox-luau-corpus-text huggingface dataset:
-- GlobalUpdates object:



local GlobalUpdates = {
	--[[
		_updates_latest = {}, -- [table] {update_index, {{update_id, version_id, update_locked, update_data}, ...}}
		_pending_update_lock = {update_id, ...} / nil, -- [table / nil]
		_pending_update_clear = {update_id, ...} / nil, -- [table / nil]
		
		_new_active_update_listeners = [ScriptSignal] / nil, -- [table / nil]
		_new_locked_update_listeners = [ScriptSignal] / nil, -- [table / nil]
		
		_profile = Profile / nil, -- [Profile / nil]
		
		_update_handler_mode = true / nil, -- [bool / nil]
	--]]
}
GlobalUpdates.__index = GlobalUpdates
--GreenEgg--



EggEvent.Hitbox.Touched:Connect(function(hit)
	if hit.Parent:IsA("Tool") and hit.Parent.Name == ToolRequired2 then
		if game.ReplicatedStorage.ItemSwitching.Value == true then
			hit.Parent:Destroy()
		end
		EggEvent.SoundPart.Insert:Play()
		EggEvent.GreenEgg.Transparency = 0
		EggEvent.LocksLeft.Value = EggEvent.LocksLeft.Value - 1
		script.Disabled = true
		EggEvent.Hitbox.GreenEggHint:Destroy()
	end
end)

EggEvent.Hitbox.ClickDetector.MouseClick:Connect(function(plr)
	if plr.Backpack:FindFirstChild(ToolRequired2) then
		if game.ReplicatedStorage.ItemSwitching.Value == true then
			plr.Backpack:FindFirstChild(ToolRequired2):Destroy()
		end
		EggEvent.SoundPart.Insert:Play()
		EggEvent.GreenEgg.Transparency = 0
		EggEvent.LocksLeft.Value = EggEvent.LocksLeft.Value - 1	
		script.Disabled = true
		EggEvent.Hitbox.GreenEggHint:Destroy()
	end
end)
-- Functions



local function sendItemToStorage(toolToTransfer)
	
	-- Send item to the weapon storage

	local iContainer = mFrame.Parent

	local folder_prefabs = game.ReplicatedStorage.Prefabs
	local prefab_itemSlot = folder_prefabs.ItemSlot

	local itemSlot = prefab_itemSlot:Clone()
	itemSlot.Parent = iContainer

	itemSlot.equip.Text = toolToTransfer.Name

	itemSlot.ItemName.Value = toolToTransfer.Name

	toolToTransfer:Destroy()
end

local function equipItem()
	-- Dequip current item in player
	
	for i, obj in pairs(char:GetChildren()) do
		if obj:IsA("Tool") then
			sendItemToStorage(obj)
		end
	end
	
	for i, obj in pairs(plr.Backpack:GetChildren()) do
		if obj:IsA("Tool") then
			sendItemToStorage(obj)
		end
	end
	
	-- Equip item
	
	local itemRegistry = game.ReplicatedStorage.ItemRegistry
	local itemToEquip = itemRegistry:FindFirstChild(value_item.Value)
	
	local itemClone = itemToEquip:Clone()
	
	itemClone.Parent = plr.Backpack

	
	mFrame:Destroy()
end
--[=[
	Returns a Service object which is a reflection of the remote objects
	within the Client table of the given service. Throws an error if the
	service is not found.

	If a service's Client table contains RemoteSignals and/or RemoteProperties,
	these values are reflected as
	[ClientRemoteSignals](https://sleitnick.github.io/RbxUtil/api/ClientRemoteSignal) and
	[ClientRemoteProperties](https://sleitnick.github.io/RbxUtil/api/ClientRemoteProperty).

	```lua
	-- Server-side service creation:
	local MyService = Knit.CreateService {
		Name = "MyService",
		Client = {
			MySignal = Knit.CreateSignal(),
			MyProperty = Knit.CreateProperty("Hello"),
		},
	}
	function MyService:AddOne(player, number)
		return number + 1
	end

	-------------------------------------------------

	-- Client-side service reflection:
	local MyService = Knit.GetService("MyService")

	-- Call a method:
	local num = MyService:AddOne(5) --> 6

	-- Fire a signal to the server:
	MyService.MySignal:Fire("Hello")

	-- Listen for signals from the server:
	MyService.MySignal:Connect(function(message)
		print(message)
	end)

	-- Observe the initial value and changes to properties:
	MyService.MyProperty:Observe(function(value)
		print(value)
	end)
	```

	:::caution
	Services are only exposed to the client if the service has remote-based
	content in the Client table. If not, the service will not be visible
	to the client. `KnitClient.GetService` will only work on services that
	expose remote-based content on their Client tables.
	:::
]=]


function KnitClient.GetService(serviceName: string): Service
	local service = services[serviceName]
	if service then
		return service
	end
	assert(started, "Cannot call GetService until Knit has been started")
	assert(type(serviceName) == "string", "ServiceName must be a string; got " .. type(serviceName))
	return BuildService(serviceName)
end
--RedEgg--



Event.Hitbox.Touched:Connect(function(hit)
	if hit.Parent:IsA("Tool") and hit.Parent.Name == ToolRequired1 then
		if game.ReplicatedStorage.ItemSwitching.Value == true then
			hit.Parent:Destroy()
		end
		Event.RedGear.Transparency = 0
		Event.Glass.Insert:Play()
		Event.LocksLeft.Value = Event.LocksLeft.Value - 1
		script.Disabled = true
	end
end)

Event.Hitbox.ClickDetector.MouseClick:Connect(function(plr)
	if plr.Backpack:FindFirstChild(ToolRequired1) then
		if game.ReplicatedStorage.ItemSwitching.Value == true then
			plr.Backpack:FindFirstChild(ToolRequired1):Destroy()
		end
		Event.RedGear.Transparency = 0
		Event.Glass.Insert:Play()
		Event.LocksLeft.Value = Event.LocksLeft.Value - 1
		script.Disabled = true
	end
end)
--[[
	A show of two tracks begins on every hour.
	When there is not a show going on, the PreShowVenue will be active.
]]





local replicatedStorage = game:GetService("ReplicatedStorage")
local EventSequencer = require(replicatedStorage:WaitForChild("EventSequencer"))
local scenesFolder = replicatedStorage:WaitForChild("SequencerScenes")


local PSV_SCENE = scenesFolder:WaitForChild("PreShowVenue")
local SHOW_SCENES = {
	scenesFolder:WaitForChild("Track1"),
	scenesFolder:WaitForChild("Track2"),
}

local year = 2022
local month = 6
local day = 1
local hour = 0
local minute = 0
local second = 0
local millisecond = 0
--[[Engine]]


	--Torque Curve
	Tune.Horsepower		= 840		--	[TORQUE CURVE VISUAL]
	Tune.IdleRPM		= 950		--		https://www.desmos.com/calculator/2uo3hqwdhf
	Tune.PeakRPM		= 7500		--		Use sliders to manipulate values
	Tune.Redline		= 9400
	Tune.EqPoint		= 9400
	Tune.PeakSharpness	= 9.4
	Tune.CurveMult		= 0.13
	
	--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)
--//Server Animations


	RightHighReady = CFrame.new(-1, -1, -1.4) * CFrame.Angles(math.rad(-160), math.rad(0), math.rad(0));
	LeftHighReady = CFrame.new(.85,-0.35,-1.15) * CFrame.Angles(math.rad(-170),math.rad(60),math.rad(15));

	RightLowReady = CFrame.new(-1, 0.5, -1.25) * CFrame.Angles(math.rad(-60), math.rad(0), math.rad(0));
	LeftLowReady = CFrame.new(1.25,1.15,-1.35) * CFrame.Angles(math.rad(-60),math.rad(35),math.rad(-25));

	RightPatrol = CFrame.new(-1, -.35, -1.5) * CFrame.Angles(math.rad(-80), math.rad(-80), math.rad(0));
	LeftPatrol = CFrame.new(1,1.25,-.75) * CFrame.Angles(math.rad(-90),math.rad(-45),math.rad(-25));

	RightAim = CFrame.new(-.575, 0.1, -1) * CFrame.Angles(math.rad(-90), math.rad(0), math.rad(0));
	LeftAim = CFrame.new(1.4,0.25,-1.45) * CFrame.Angles(math.rad(-120),math.rad(35),math.rad(-25));
	
	RightSprint = CFrame.new(-1, 0.5, -1.25) * CFrame.Angles(math.rad(-60), math.rad(0), math.rad(0));
	LeftSprint = CFrame.new(1.25,1.15,-1.35) * CFrame.Angles(math.rad(-60),math.rad(35),math.rad(-25));

	ShootPos = CFrame.new(0,0,.25);
	
}

return module
-- constants



local PLAYER_DATA	= ReplicatedStorage.PlayerData

local TIER_SKIP_ID	= 0
local CURRENCY_IDS	= {
	[0]	= 100;
	[0]	= 250;
	[0]	= 500;
	[0]	= 1000;
	[0]	= 5000;
	[0]	= 10000;
}
--!strict


local INDENT = "  "
local inspect = require(script.Parent.Parent.util).inspect

return function()
	local console = {}
	local indentDepth = 0

	local function indent()
		return string.rep(INDENT, indentDepth)
	end

	function console.log(content, ...)
		local message
		if typeof(content) == "string" then
			message = string.format(content, ...)
		else
			message = inspect(content)
		end
		print(indent() .. message)
	end

	function console.debug(content, ...)
		local message
		if typeof(content) == "string" then
			message = string.format(content, ...)
		else
			message = inspect(content)
		end
		print(indent() .. message)
	end

	function console.info(content, ...)
		local message
		if typeof(content) == "string" then
			message = string.format(content, ...)
		else
			message = inspect(content)
		end
		print(indent() .. message)
	end

	function console.warn(content, ...)
		local message
		if typeof(content) == "string" then
			message = string.format(content, ...)
		else
			message = inspect(content)
		end
		warn(indent() .. message)
	end

	function console.error(content, ...)
		-- JS' `console.error` doesn't interrupt execution like Lua's `error`,
		-- which is more similar to throwing an exception in JS.
		local message
		if typeof(content) == "string" then
			message = string.format(content, ...)
		else
			message = inspect(content)
		end
		warn(indent() .. message)
	end

	function console.group(content, ...)
		local message
		if typeof(content) == "string" then
			message = string.format(content, ...)
		else
			message = inspect(content)
		end
		print(indent() .. message)
		indentDepth = indentDepth + 1
	end

	function console.groupCollapsed(content, ...)
		-- There's no smart console, so this is equivalent to `console.group`
		local message
		if typeof(content) == "string" then
			message = string.format(content, ...)
		else
			message = inspect(content)
		end
		print(indent() .. message)
		indentDepth = indentDepth + 1
	end

	function console.groupEnd()
		if indentDepth > 0 then
			indentDepth = indentDepth - 1
		end
	end

	return console
end
-- Expanding the blood part size function


local expandBlood = function(part)
    
    local randomIncrement = math.random(5, 10) / 10
    
    local tween = tweenPartSize(part, 5, Enum.EasingDirection.Out, Vector3.new(part.Size.X + randomIncrement, 0.1, part.Size.Z + randomIncrement))
    
    spawn(function()
        tween.Completed:Wait()
        tween:Destroy()
    end)
end
-- [[ Dummiez's Data Store Score Board ]]
-- This script updates the Data store with the values from the remote function.



wait(1)

local score = game:GetService("DataStoreService"):GetOrderedDataStore(script.DataStore.Value)

function script.UploadScore.OnServerInvoke(player)
	print("working")
	local inv = player:FindFirstChild(script.Original.Value)
	local storedValue = inv:FindFirstChild(script.Score.Value).Value ~= 0 and math.floor(math.log(inv:FindFirstChild(script.Score.Value).Value) / math.log(1.0000001)) or 0
	score:SetAsync(player.Name,storedValue)
	--score:SetAsync(player.Name, inv:FindFirstChild(script.Score.Value).Value)
	print("worked")
end
--	local hit, position = workspace:FindPartOnRayWithIgnoreList(ray, ignoreList)


	local hit, position = workspace:FindPartOnRay(ray, parts.Parent);
	
	if hit then -- Leaderboard Supported
		if hit.Parent:IsA("Model") then
			local player = game.Players:GetPlayerFromCharacter(hit.Parent);
			local DriverKOs = script.Parent.Parent.Parent.leaderstats:findFirstChild("KOs")
			local humanoid = hit.Parent:findFirstChild("Humanoid");
			print("XD")
			if player and humanoid then
				if player.TeamColor ~= parts.Parent.Tank.Value then --Not a teammate
					if humanoid.Health >0 then
						humanoid:takeDamage(MGDamage);
						if humanoid.Health <=0 then
							DriverKOs.Value = DriverKOs.Value + 1
						end
					end
				end
			end
		
	

				
		end
	end
	
	local distance = (position - machineGun.Position).magnitude;
	
	local rayPart	= rayPart:clone();
	rayPart.Size	= Vector3.new(.2, distance, .2);
	rayPart.CFrame	= CFrame.new(position, machineGun.Position)
						* CFrame.new(0, 0, -distance/2)
						* CFrame.Angles(math.rad(90),0,0);
	rayPart.Parent	= workspace;
	game.Debris:AddItem(rayPart, .03)
	game.Debris:AddItem(PL, .03)
	
	local MGFlash =	parts.Parent.Gun.Coax.GUI:clone()
	MGFlash.Flash.Rotation = math.random(0,360)
	MGFlash.Parent = parts.Parent.Gun.Coax
   	MGFlash.Enabled = true
	game.Debris:AddItem(MGFlash,.01)
	
	wait();

	wait();
	
	return true;
end
--[[Weight and CG]]


	Tune.Weight			= 2780		-- 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
--[[Sword Part Class]]

--
	
local SwordPart =
{
	Damage = 15,
	AttackTime = 1,
	CoolDown = 1,
	
	LastSwing = 0,
	LastHit = 0,

	Part= nil,
	Owner = nil,--player object that owns this sword
	
	OnHit = nil,
	OnHitHumanoid = nil,
	OnAttackReady = nil,
	OnAttack = nil,
	
	
	SwingSound = nil,
	HitSound = nil,
	SwingAnimation = nil, --animation track!
	
	ActiveConnections = {},
	
}
do
	UTIL.MakeClass(SwordPart)
	function SwordPart.New(npart,nowner)
		local init= UTIL.DeepCopy(SwordPart)
		init.Part= npart
		init.Owner = nowner
		table.insert(init.ActiveConnections,init.Part.Touched:connect(function(hit) init:SwordTouch(hit) end))
		
		init.OnHit = InternalEvent.New()
		init.OnHitHumanoid = InternalEvent.New()
		init.OnAttackReady = InternalEvent.New()
		init.OnAttack = InternalEvent.New()
		
		return init
	end
	
	function SwordPart:SwordTouch(hit)
		if tick()-self.LastSwing >self.AttackTime or tick()-self.LastHit<self.AttackTime then return end
		self.OnHit:Fire(hit)
		local character,humanoid = UTIL.FindCharacterAncestor(hit)
		if character and character ~= self.Owner.Character then
			humanoid:TakeDamage(self.Damage)
			self.OnHitHumanoid:Fire(humanoid,hit)
			self.LastHit = tick()
			if self.HitSound then
				self.HitSound:Play()
			end
		end
		
	end
	
	function SwordPart:DoSwing()
		if tick()-self.LastSwing<self.AttackTime+self.CoolDown then
			return
		end
		
		if self.SwingAnimation then
			self.SwingAnimation:Play()
		end
		if self.SwingSound then
			self.SwingSound:Play()
		end
		self.LastSwing = tick()
		self.OnAttack:Fire()
	end
	
	function SwordPart:Destroy()
		for _,i in pairs(self.ActiveConnections) do
			i:disconnect()
		end
	end
end
do
	local Handle = script.Parent
	local Tool = Handle.Parent
	
	local Player = game.Players.LocalPlayer
	local Character = UTIL.WaitForValidCharacter(Player)
	local SwingAni = UTIL.Instantiate"Animation"
	{AnimationId = "http://www.roblox.com/Asset?ID=89289879"}
	
	local HitSound = Handle:WaitForChild('Hit')
	local SwingSound = Handle:WaitForChild('Swing')
	
	local SwingAniTrack
	
	local Sword
	
	
	Tool.Equipped:connect(function(mouse)
		Sword = SwordPart.New(Handle,Player)
		Sword.Damage = 15
		Sword.HitSound = HitSound
		Sword.SwingSound = SwingSound
		Character = UTIL.WaitForValidCharacter(Player)
		local Humanoid = Character:FindFirstChild('Humanoid')

		SwingAniTrack = Humanoid:LoadAnimation(SwingAni)
		Sword.SwingAnimation = SwingAniTrack
		
		Sword.OnHitHumanoid:Connect(function(humanoid,hit)
			local myTorso = Character:FindFirstChild('Torso')
			local torso = humanoid.Parent:FindFirstChild('Torso')
			if not torso or not myTorso then return end
			
			if hit.Name=='Right Arm' or hit.Name=='Left Arm' or hit.Name=='Right Leg' or hit.Name=='Left Leg' then
				hit:WeldJoints()
				WeldUtil.WeldBetween(hit, Handle)
				delay(1,function() hit:WeldJoints() end )
			end
		end)
		
		mouse.Button1Down:connect(function()
			Sword:DoSwing()
		end)
	end)
	Tool.Unequipped:connect(function()
		Sword:Destroy()
	end)

end
--DO NOT CHANGE ANYTHING INSIDE OF THIS SCRIPT BESIDES WHAT YOU ARE TOLD TO UNLESS YOU KNOW WHAT YOU'RE DOING OR THE SCRIPT WILL NOT WORK!!


local hitPart = script.Parent
local debounce = true
local tool = game.ServerStorage.CatAgility -- Change "Sword" to the name of your tool, make sure your tool is in ServerStorage

hitPart.Touched:Connect(function(hit)
	if debounce == true then
		if hit.Parent:FindFirstChild("Humanoid") then
			local plr = game.Players:FindFirstChild(hit.Parent.Name)
			if plr then
				debounce = false
				hitPart.BrickColor = BrickColor.new("Bright red")
				tool:Clone().Parent = plr.Backpack
				wait(3) -- Change "3" to however long you want the player to have to wait before they can get the tool again
				debounce = true
				hitPart.BrickColor = BrickColor.new("Bright green")
			end
		end
	end
end)
-- ROBLOX upstream: https://github.com/facebook/jest/blob/v27.4.7/packages/pretty-format/src/plugins/lib/escapeHTML.ts
--[[*
 * 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 exports = {}
local function escapeHTML(str: string): string
	return str:gsub("<", "&lt;"):gsub(">", "&gt;")
end
exports.default = escapeHTML
return exports
-- / Functions / --


local function CreateNoise(GridX, GridZ, Seed)
	local GridY = math.noise(
		(GridX * Configuration.Frequency.Value) / 10,
		(GridZ * Configuration.Frequency.Value) / 10,
		Seed
	) * Random.new():NextNumber(19.5, 20)
		
	return (GridY)
end

local function CreateNewGrass(Size, Position, Parent)
	local ExistingBlock = Parent:FindFirstChild(Position.X..", "..Position.Z)
	
	if ExistingBlock then
		print("existing")
		
	else
		local Block = Instance.new("Part")
		Block.Parent = Parent

		-- / Properties / --
		Block.Name = Position.X..", "..Position.Z
		Block.Anchored = true
		Block.Size = Size
		Block.Position = Position

		-- / Visuals / --
		
		if Block.Position.Y <= -1 then
			Block.Color = Color3.fromRGB(255, 220, 114)
			Block.Material = Enum.Material.Sand
			
		elseif Block.Position.Y > -1 and Block.Position.Y <= 1.25 then
			Block.Color = Color3.fromRGB(100, 100, 100)
			Block.Material = Enum.Material.Rock
			
		else
			Block.Color = Color3.fromRGB(0, 85, 0)
			Block.Material = Enum.Material.Grass
			
		end
	end
	---game.Workspace.Terrain:FillBlock(CFrame.new(Position), Size, Enum.Material.Grass)

end

local function CreateNewChunk(ChunkPositionX, ChunkPositionZ)
	if not Chunks:FindFirstChild(ChunkPositionX..", "..ChunkPositionZ) then
		print(ChunkPositionX..", "..ChunkPositionZ)
		
		local NewChunk = Instance.new("StringValue")
		NewChunk.Parent = Chunks
		
		NewChunk.Name = ChunkPositionX..", "..ChunkPositionZ
		
		local Water = game.Workspace.Terrain:FillBlock(CFrame.new(ChunkPositionX, -10, ChunkPositionZ), Vector3.new(Configuration.ChunkSize.Value, 16, Configuration.ChunkSize.Value), Enum.Material.Water)
		
		for iX = ChunkPositionX + (Configuration.ChunkSize.Value / 2), (ChunkPositionX - (Configuration.ChunkSize.Value / 2)) + 4, -Configuration.Grid.Value do
			for iZ = ChunkPositionZ + (Configuration.ChunkSize.Value / 2), (ChunkPositionZ - (Configuration.ChunkSize.Value / 2)) + 4, -Configuration.Grid.Value do
				local GridY = CreateNoise(iX, iZ)

				CreateNewGrass(Configuration.GrassSize.Value, Vector3.new(iX, GridY, iZ), NewChunk)

			end

			task.wait()
		end
	end
end

if not Chunks:FindFirstChild("0, 0") then
	CreateNewChunk(0, 0)
	
end
--------END RIGHT DOOR --------



game.Workspace.doorleft.l11.BrickColor = BrickColor.new(21)
game.Workspace.doorleft.l12.BrickColor = BrickColor.new(1)
game.Workspace.doorleft.l13.BrickColor = BrickColor.new(21)
game.Workspace.doorleft.l41.BrickColor = BrickColor.new(1)
game.Workspace.doorleft.l42.BrickColor = BrickColor.new(21)
game.Workspace.doorleft.l43.BrickColor = BrickColor.new(1)
game.Workspace.doorleft.l71.BrickColor = BrickColor.new(21)
game.Workspace.doorleft.l72.BrickColor = BrickColor.new(1)
game.Workspace.doorleft.l73.BrickColor = BrickColor.new(21)
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.doorleft.l21.BrickColor = BrickColor.new(1)
game.Workspace.doorleft.l22.BrickColor = BrickColor.new(21)
game.Workspace.doorleft.l23.BrickColor = BrickColor.new(1)
game.Workspace.doorleft.l51.BrickColor = BrickColor.new(21)
game.Workspace.doorleft.l52.BrickColor = BrickColor.new(1)
game.Workspace.doorleft.l53.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.doorleft.l31.BrickColor = BrickColor.new(21)
game.Workspace.doorleft.l32.BrickColor = BrickColor.new(1)
game.Workspace.doorleft.l33.BrickColor = BrickColor.new(21)
game.Workspace.doorleft.l61.BrickColor = BrickColor.new(1)
game.Workspace.doorleft.l62.BrickColor = BrickColor.new(21)
game.Workspace.doorleft.l63.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.doorleft.pillar.BrickColor = BrickColor.new(21)
game.Workspace.doorright.pillar.BrickColor = BrickColor.new(21)

end
end
script.Parent.ClickDetector.MouseClick:connect(onClicked)
--Beta SpeedAI June 2012 -- Still has logic bugs - Look for updates..
-- Kill added.
-- co-operate/other "AI"s
-- Climb "Truss" Parts
-- Offset Ray
-- Swim - Does not work. Don't know why.
-- Adjusted Jump Ray
-- Ray Graphics On/Off - flip line 90
-- Delay next cycle, if Falling.
-- Diagonal movement - I should add right-hand logic as well...


 
local number = 1 + math.random()
local BRAINWave = .6 -- AND line 38: Wait() between cycles of main loop
local hum = nil  -- Will be a pointer to the Humanoid of our AI.

wait(number)  --  hold on a sec.  and spread multiple instances.
--		carSeat.Parent.Body.Dash.Screen.G.Radio.Song.Text = "PRESET 2"
--		carSeat.Parent.Body.Dash.Screen.G.Radio.Title.Text = ""


	elseif carSeat.Stations.mood.Value == 2 then
		carSeat.Parent.Body.MP.Sound:Stop()
		carSeat.Stations.mood.Value = 3
--[[
function luaU:make_setF(filename)
  local buff = {}
        buff.h = io.open(filename, "wb")
  if not buff.h then return nil end
  local writer =
    function(s, buff)  -- chunk writer
      if not buff.h then return 0 end
      if not s then
        if buff.h:close() then return 0 end
      else
        if buff.h:write(s) then return 0 end
      end
      return 1
    end
  return writer, buff
end--]]
--[[Steering]]


	Tune.SteerInner		= 46		-- Inner wheel steering angle (in degrees)
	Tune.SteerOuter		= 47		-- Outer wheel steering angle (in degrees)
	Tune.SteerSpeed		= 1		-- Steering increment per tick (in degrees)
	Tune.ReturnSpeed	= .1		-- Steering increment per tick (in degrees)
	Tune.SteerDecay		= 320		-- Speed of gradient cutoff (in SPS)
	Tune.MinSteer		= 10		-- Minimum steering at max steer decay (in percent)
	Tune.MSteerExp		= 1			-- Mouse steering exponential degree
	
	--Steer Gyro Tuning
	Tune.SteerD			= 1000		-- Steering Dampening
	Tune.SteerMaxTorque	= 50000		-- Steering Force
	Tune.SteerP			= 100000	-- Steering Aggressiveness