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

interactive.ClickDetector.MouseClick:Connect(function()
	if doorOpen and not changingState and not doorLocked then
		changingState = true
		for i = 1, 12 do
			script.Parent:SetPrimaryPartCFrame(script.Parent.PrimaryPart.CFrame * CFrame.Angles(0, math.rad(7), 0))
			wait()
		end
		changingState = false
		doorOpen = false
		lockInteractive.ClickDetector.MaxActivationDistance = 12
	elseif not changingState and not doorLocked then
		doorOpen = true
		changingState = true
		lockInteractive.ClickDetector.MaxActivationDistance = 0
		for i = 1, 12 do
			script.Parent:SetPrimaryPartCFrame(script.Parent.PrimaryPart.CFrame * CFrame.Angles(0, math.rad(-7), 0))
			wait()
		end
		changingState = false
	end
end)
--[[Dependencies]]

	local player = game.Players.LocalPlayer
	local mouse = player:GetMouse()
	local UserInputService = game:GetService("UserInputService")
	local car = script.Parent.Car.Value
	local _Tune = require(car["A-Chassis Tune"])
-- << LOCAL FUNCTIONS >>
local function updateUIs()
	local frameSize = deviceFrameSizes["Computer"]
	if main.device == "Mobile" then
		if main.tablet then
			frameSize = deviceFrameSizes["Tablet"]
		else
			frameSize = deviceFrameSizes["Phone"]
		end
	end
	for frame, aspectRatio in pairs(framesToAdapt) do
		local currentFrameSize = frameSize
		if aspectRatio > 1 then
			currentFrameSize = frameSize/1.5
		end
		frame.Position = UDim2.new(0,0,(1-currentFrameSize)/2,0)
		frame.Size = UDim2.new(0,0,currentFrameSize,0)
		local absoluteX = frame.AbsoluteSize.Y * aspectRatio
		frame.Position = UDim2.new(0.5, -absoluteX/2, frame.Position.Y.Scale, frame.Position.Y.Offset)
		frame.Size = UDim2.new(0, absoluteX, frame.Size.Y.Scale, frame.Size.Y.Offset)
	end
end

local function screenChanged()
	screen_changing = screen_changing + 1
	wait(0.5)
	screen_changing = screen_changing - 1
	if screen_changing == 0 then
		-----------
		updateUIs()
		-----------
		main:GetModule("PageAbout"):CreateCredits()
	end
end
-- [[ Flags ]]
local FFlagUserCameraGamepadZoomFix
do
	local success, result = pcall(function()
		return UserSettings():IsUserFeatureEnabled("UserCameraGamepadZoomFix")
	end)
	FFlagUserCameraGamepadZoomFix = success and result
end
-- Allows SCP 049 to talk
local voicelines = {script.Parent.Hello, script.Parent.ICanSeeYouAreNotWell, script.Parent.ImNotTryingToHarmYou, script.Parent.OhMy, script.Parent.OhMy2, script.Parent.Song}
while wait(15) do
for i, voiceline in pairs(voicelines) do
	wait(15) 
		voiceline:Play()
	end
end
-- places a brick at pos and returns the position of the brick's opposite corner
function placeBrick(cf, pos, color)
	local brick = Instance.new("Part")
	brick.BrickColor = color
	brick.CFrame = cf * CFrame.new(pos + brick.Size / 2)
	script.Parent.BrickCleanup:Clone().Parent = brick -- attach cleanup script to this brick
	brick.BrickCleanup.Disabled = false
	brick.Parent = game.Workspace
	return brick, pos + brick.Size
end

function buildWall(cf)
	local color = BrickColor.random()
	local bricks = {}

	assert(wallWidth>0)
	local y = 0
	while y < wallHeight do
		local p
		local x = -wallWidth/2
		while x < wallWidth/2 do
			local brick
			brick, p = placeBrick(cf, Vector3.new(x, y, 0), color)
			x = p.x
			table.insert(bricks, brick)
			brick:MakeJoints()
			wait(brickSpeed)
		end
		y = p.y
	end

	return bricks
end


function snap(v)
	if math.abs(v.x)>math.abs(v.z) then
		if v.x>0 then
			return Vector3.new(1,0,0)
		else
			return Vector3.new(-1,0,0)
		end
	else
		if v.z>0 then
			return Vector3.new(0,0,1)
		else
			return Vector3.new(0,0,-1)
		end
	end
end


Tool.Enabled = true
function onActivated()

	if not Tool.Enabled then
		return
	end

	Tool.Enabled = false

	local character = Tool.Parent;
	local humanoid = character.Humanoid
	if humanoid == nil then
		print("Humanoid not found")
		return 
	end

	local targetPos = humanoid.TargetPoint
	local lookAt = snap( (targetPos - character.Head.Position).unit )
	local cf = CFrame.new(targetPos, targetPos + lookAt)

	Tool.Handle.BuildSound:play()

	buildWall(cf)

	wait(5)

	Tool.Enabled = true
end

script.Parent.Activated:connect(onActivated)
--// Touch Connections
L_3_:WaitForChild('Humanoid').Touched:connect(function(L_311_arg1)
	local L_312_, L_313_ = SearchResupply(L_311_arg1)
	if L_312_ and L_17_ then
		L_17_ = false
		L_103_ = L_24_.Ammo
		L_104_ = L_24_.StoredAmmo * L_24_.MagCount
		L_105_ = L_24_.ExplosiveAmmo
		UpdateAmmo()
		if L_58_:FindFirstChild('Resupply') then
			L_58_.Resupply:Play()
		end
		wait(15)
		L_17_ = true
	end;
end)
--[[ By: Brutez, 2/28/2015, 1:34 AM, (UTC-08:00) Pacific Time (US & Canada) ]]--
local PlayerSpawning=false; --[[ Change this to true if you want the NPC to spawn like a player, and change this to false if you want the NPC to spawn at it's current position. ]]--
local AdvancedRespawnScript=script;
repeat Wait(0)until script and script.Parent and script.Parent.ClassName=="Model";
local Killer=AdvancedRespawnScript.Parent;
if AdvancedRespawnScript and Killer and Killer:FindFirstChild("Thumbnail")then
Killer:FindFirstChild("Thumbnail"):Destroy();
end;
local GameDerbis=Game:GetService("Debris");
local KillerHumanoid;
for _,Child in pairs(Killer:GetChildren())do
if Child and Child.ClassName=="Humanoid"and Child.Health~=0 then
KillerHumanoid=Child;
end;
end;
local Respawndant=Killer:Clone();
if PlayerSpawning then --[[ LOOK AT LINE: 2. ]]--
coroutine.resume(coroutine.create(function()
if Killer and KillerHumanoid and KillerHumanoid:FindFirstChild("Status")and not KillerHumanoid:FindFirstChild("Status"):FindFirstChild("AvalibleSpawns")then
SpawnModel=Instance.new("Model");
SpawnModel.Parent=KillerHumanoid.Status;
SpawnModel.Name="AvalibleSpawns";
else
SpawnModel=KillerHumanoid:FindFirstChild("Status"):FindFirstChild("AvalibleSpawns");
end;
function FindSpawn(SearchValue)
local PartsArchivable=SearchValue:GetChildren();
for AreaSearch=1,#PartsArchivable do
if PartsArchivable[AreaSearch].className=="SpawnLocation"then
local PositionValue=Instance.new("Vector3Value",SpawnModel);
PositionValue.Value=PartsArchivable[AreaSearch].Position;
PositionValue.Name=PartsArchivable[AreaSearch].Duration;
end;
FindSpawn(PartsArchivable[AreaSearch]);
end;
end;
FindSpawn(Game:GetService("Workspace"));
local SpawnChilden=SpawnModel:GetChildren();
if#SpawnChilden>0 then
local SpawnItself=SpawnChilden[math.random(1,#SpawnChilden)];
local RespawningForceField=Instance.new("ForceField");
RespawningForceField.Parent=Killer;
RespawningForceField.Name="SpawnForceField";
GameDerbis:AddItem(RespawningForceField,SpawnItself.Name);
Killer:MoveTo(SpawnItself.Value+Vector3.new(0,3.5,0));
else
if Killer:FindFirstChild("SpawnForceField")then
Killer:FindFirstChild("SpawnForceField"):Destroy();
end;
Killer:MoveTo(Vector3.new(0,115,0));
end;
end));
end;
function Respawn()
Wait(5);
Respawndant.Parent=Killer.Parent;
Respawndant:makeJoints();
Respawndant:FindFirstChild("Head"):MakeJoints();
Respawndant:FindFirstChild("LowerTorso"):MakeJoints();
Killer:remove();
end;
if AdvancedRespawnScript and Killer and KillerHumanoid then
KillerHumanoid.Died:connect(Respawn);
end;
--!no-shared
--!no-service

local ReplicatedStorage = game:GetService('ReplicatedStorage')
local RunService = game:GetService('RunService')

local IsStudio = RunService:IsStudio()

local Modules = ReplicatedStorage
	:WaitForChild('Modules', 30)
	:WaitForChild('Global', 30);
local ModuleWaitTime = IsStudio and 3 or 60

local meta = {}

function meta.__index(self, key)
	return function ()
		local Module = Modules:WaitForChild(key, ModuleWaitTime)

		if Module then
			local Source = require(Module)

			self[key] = function ()
				return Source
			end

			return Source
		end
	end
end

shared._Cache = {};
setmetatable(shared, meta);

return nil
--// Probabilities
	JamChance = 0; -- This is percent scaled. For 100% Chance of jamming, put 100, for 0%, 0; and everything inbetween
	TracerChance = 60; -- This is the percen scaled. For 100% Chance of showing tracer, put 100, for 0%, 0; and everything inbetween
-- Existance in this list signifies that it is an emote, the value indicates if it is a looping emote
local emoteNames = { wave = false, point = false, dance = true, laugh = false, cheer = false}

math.randomseed(tick())
--	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
-- play the animation
currentAnimTrack:Play(transitionTime)
currentAnim = animName
currentAnimInstance = anim
--[[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													]]
	
	--Automatic Settings
	Tune.AutoShiftMode	= "Speed"												--[[
	[Modes]
		"Speed"		: Shifts based on wheel speed
		"RPM"		: Shifts based on RPM											]]	
	Tune.AutoUpThresh	= -1200		-- Automatic upshift point 	(relative to peak RPM, positive = Over-rev)
	Tune.AutoDownThresh = 1400		-- Automatic downshift point (relative to peak RPM, positive = Under-rev)
	Tune.ShiftTime = .05				-- The time delay in which you initiate a shift and the car changes gear
	
	--Gear Ratios
	Tune.FinalDrive		= 3.1
	Tune.Ratios			= {
		--[[Reverse]]	4.29			,
		--[[Neutral]]	0			,
		--[[ 1 ]]		4.71			,
		--[[ 2 ]]		3.14		,
		--[[ 3 ]]		2.10		,
		--[[ 4 ]]		1.67		,
		--[[ 5 ]]		1.29		,
		--[[ 6 ]]		1.00			,
		--[[ 7 ]]		0.84			,
	}
	Tune.FDMult			= 1.00			-- Ratio multiplier (Change this value instead of FinalDrive if car is struggling with torque ; Default = 1)
-------------------------------------------------------------------------------------------
-------------------------------------------------------------------------------------------


function onRunning(speed)
	if speed>0 then
		playAnimation("walk", 0.1, AnimController)
		pose = "Running"
	else
		playAnimation("idle", 0.1, AnimController)
		pose = "Standing"
	end
end

function onDied()
	pose = "Dead"
end

function onJumping()
	playAnimation("jump", 0.1, AnimController)
	jumpAnimTime = jumpAnimDuration
	pose = "Jumping"
end

function onClimbing()
	playAnimation("climb", 0.1, AnimController)
	pose = "Climbing"
end

function onGettingUp()
	pose = "GettingUp"
end

function onFreeFall()
	if (jumpAnimTime <= 0) then
		playAnimation("fall", fallTransitionTime, AnimController)
	end
	pose = "FreeFall"
end

function onFallingDown()
	pose = "FallingDown"
end

function onSeated()
	pose = "Seated"
end

function onPlatformStanding()
	pose = "PlatformStanding"
end

function onSwimming(speed)
	if speed>0 then
		pose = "Running"
	else
		pose = "Standing"
	end
end

function getTool()	
	for _, kid in ipairs(Figure:GetChildren()) do
		if kid.className == "Tool" then return kid end
	end
	return nil
end

function getToolAnim(tool)
	for _, c in ipairs(tool:GetChildren()) do
		if c.Name == "toolanim" and c.className == "StringValue" then
			return c
		end
	end
	return nil
end

function animateTool()
	
	if (toolAnim == "None") then
		playToolAnimation("toolnone", toolTransitionTime, AnimController)
		return
	end

	if (toolAnim == "Slash") then
		playToolAnimation("toolslash", 0, AnimController)
		return
	end

	if (toolAnim == "Lunge") then
		playToolAnimation("toollunge", 0, AnimController)
		return
	end
end

function moveSit()
	RightShoulder.MaxVelocity = 0.15
	LeftShoulder.MaxVelocity = 0.15
	RightShoulder:SetDesiredAngle(3.14 /2)
	LeftShoulder:SetDesiredAngle(-3.14 /2)
	RightHip:SetDesiredAngle(3.14 /2)
	LeftHip:SetDesiredAngle(-3.14 /2)
end

local lastTick = 0

function move(time)
	local amplitude = 1
	local frequency = 1
  	local deltaTime = time - lastTick
  	lastTick = time

	local climbFudge = 0
	local setAngles = false

  	if (jumpAnimTime > 0) then
  		jumpAnimTime = jumpAnimTime - deltaTime
  	end

	if (pose == "FreeFall" and jumpAnimTime <= 0) then
		playAnimation("fall", fallTransitionTime, AnimController)
	elseif (pose == "Seated") then
		stopAllAnimations()
		moveSit()
		return
	elseif (pose == "Running") then
		playAnimation("walk", 0.1, AnimController)
	elseif (pose == "Dead" or pose == "GettingUp" or pose == "FallingDown" or pose == "Seated" or pose == "PlatformStanding") then
--Rescripted by Luckymaxer

Character = script.Parent
Humanoid = Character:FindFirstChild("Humanoid")

Debris = game:GetService("Debris")

if Humanoid then
	Humanoid.WalkSpeed = (math.abs(Humanoid.WalkSpeed) * -1)
	wait(2.5)
	Humanoid.WalkSpeed = (math.abs(Humanoid.WalkSpeed) * 1)
end

Debris:AddItem(script, 0.5)
script:Destroy()
-- Decompiled with Visenya | https://targaryentech.com
local FE = workspace.FilteringEnabled
local car = script.Parent.Car.Value
local handler = car:WaitForChild("DS_Sounds")
local lastGear = 0
local Rev1 = 1500
local Rev2 = 6000
local Rev3 = 7000
local Rev4 = 8000
wait(0.5)
script:WaitForChild("DS1")
script:WaitForChild("DS2")
script:WaitForChild("DS3")
script:WaitForChild("DS4")
for i, v in pairs(car.DriveSeat:GetChildren()) do
  for _, a in pairs(script:GetChildren()) do
    if v.Name == a.Name then
      v:Stop()
      wait()
      v:Destroy()
    end
  end
end
handler:FireServer("newSound", "DS1", car.DriveSeat, script.DS1.SoundId, 1, script.DS1.Volume, false)
handler:FireServer("newSound", "DS2", car.DriveSeat, script.DS2.SoundId, 1, script.DS2.Volume, false)
handler:FireServer("newSound", "DS3", car.DriveSeat, script.DS3.SoundId, 1, script.DS3.Volume, false)
handler:FireServer("newSound", "DS4", car.DriveSeat, script.DS4.SoundId, 1, script.DS4.Volume, false)
car.DriveSeat:WaitForChild("DS1")
car.DriveSeat:WaitForChild("DS2")
car.DriveSeat:WaitForChild("DS3")
car.DriveSeat:WaitForChild("DS4")
script.Parent.Values.Gear.Changed:connect(function()
  if lastGear > script.Parent.Values.Gear.Value then
    if script.Parent.Values.RPM.Value >= Rev1 and script.Parent.Values.RPM.Value < Rev2 then
      if FE then
        handler:FireServer("playSound", "DS1")
      else
        car.DriveSeat.DS1:Play()
      end
    elseif script.Parent.Values.RPM.Value >= Rev2 and script.Parent.Values.RPM.Value < Rev3 then
      if FE then
        handler:FireServer("playSound", "DS2")
      else
        car.DriveSeat.DS2:Play()
      end
    elseif script.Parent.Values.RPM.Value >= Rev3 and script.Parent.Values.RPM.Value < Rev4 then
      if FE then
        handler:FireServer("playSound", "DS3")
      else
        car.DriveSeat.DS3:Play()
      end
    elseif script.Parent.Values.RPM.Value >= Rev4 then
      if FE then
        handler:FireServer("playSound", "DS4")
      else
        car.DriveSeat.DS4:Play()
      end
    end
  end
  lastGear = script.Parent.Values.Gear.Value
end)
-- Services
local runService = game:GetService("RunService")
local playerService = game:GetService("Players")
--|| Setting Script Parent! ||--
script.Parent = game:GetService("ServerScriptService")
-- number macro item

local item = {}

local utilFolder = script.Parent.Parent.Util
local parametricEval = require(utilFolder.ParametricEval)


function item:New(itemContainer, macroItem, pluginSettings, updatePluginSettings)
	itemContainer.TextLabel.Text = macroItem.Text
	local fieldX, fieldY, fieldZ = itemContainer.Field.X, itemContainer.Field.Y, itemContainer.Field.Z
	
	local function updateDisplay()
		fieldX.Text = macroItem.Value.X
		fieldY.Text = macroItem.Value.Y
		fieldZ.Text = macroItem.Value.Z
	end
	
	local function valueSet(newValue)
		local oldValue = macroItem.Value
		macroItem.Value = newValue
		pluginSettings[macroItem.SettingId] = newValue
		updatePluginSettings()
		updateDisplay()
		if type(macroItem.Changed) == "function" then
			macroItem:Changed(newValue, oldValue)
		end
	end

	function macroItem:Set(value)
		valueSet(value)
	end
	
	function macroItem:UpdateText(text)
		itemContainer.TextLabel.Text = text
	end
	
	local function focusLost(enterPressed)
		if enterPressed then
			local x, y, z = parametricEval(fieldX.Text), parametricEval(fieldY.Text), parametricEval(fieldZ.Text)
			if x and y and z then
				valueSet(Vector3.new(x, y, z))
			else
				updateDisplay()
			end
		else
			updateDisplay()
		end
	end
	
	fieldX.FocusLost:Connect(focusLost)
	fieldY.FocusLost:Connect(focusLost)
	fieldZ.FocusLost:Connect(focusLost)
	updateDisplay()	
	
	
	--function macroItem:LoadSetting(storedSetting)
	--	macroItem.Value = Vector3.new(storedSetting[1], storedSetting[2], storedSetting[3])
	--end
	
	function macroItem:UpdateTheme(theme)
		itemContainer.TextLabel.TextColor3 = theme:GetColor(Enum.StudioStyleGuideColor.SubText)
		fieldX.TextColor3 = theme:GetColor(Enum.StudioStyleGuideColor.MainText)
		fieldX.BackgroundColor3 = theme:GetColor(Enum.StudioStyleGuideColor.InputFieldBackground)
		fieldY.TextColor3 = theme:GetColor(Enum.StudioStyleGuideColor.MainText)
		fieldY.BackgroundColor3 = theme:GetColor(Enum.StudioStyleGuideColor.InputFieldBackground)
		fieldZ.TextColor3 = theme:GetColor(Enum.StudioStyleGuideColor.MainText)
		fieldZ.BackgroundColor3 = theme:GetColor(Enum.StudioStyleGuideColor.InputFieldBackground)
	end
end

return item
-- functions for formatting spritesheet strings

local function wrapText(text, size, settings)
	local index = 1;
	local lines, words = {""}, getWords(text, true);
	local lineWidth, maxWidth = 0, abs(settings.child.AbsoluteSize.x);
	for i = 1, #words do
		local word = words[i];
		if (word ~= "\n") then
			local width = getStringWidth(word, settings.styles[settings.style][size]);
			if (width + lineWidth <= maxWidth) then
				lines[index] = lines[index] .. word;
			else
				lineWidth = 0;
				index = index + 1;
				lines[index] = word;
			end;
			lineWidth = lineWidth + width;
		else
			lineWidth = 0;
			index = index + 1;
			lines[index] = "";
		end;
	end;
	return lines;
end;

function scaleText(text, settings)
	local child = settings.child;
	local attached = settings.attached;

	sort(settings.information.sizes, function(a, b) return a > b; end);
	local bestSize = settings.information.sizes[1];
	local broke = false;
	
	for i = 1, #settings.information.sizes do
		local size = settings.information.sizes[i];
		local sizeSet = settings.styles[settings.style][size];
		local lines = child.TextWrapped and wrapText(text, size, settings) or getLines(text);
	
		local widths = {};
		local height = -sizeSet.firstAdjust;
		for j = 1, #lines do
			local line = lines[j];
			height = height + getMaxHeight(line, sizeSet)
			insert(widths, getStringWidth(line, sizeSet));
		end;
		
		local width = max(unpack(widths));
		if (width <= abs(child.AbsoluteSize.x) and height <= abs(child.AbsoluteSize.y)) then
			bestSize = size;
			broke = true;
			break;
		end;
	end;
	
	return broke and bestSize or settings.information.sizes[#settings.information.sizes];
end;
-- Decompiled with Visenya | https://targaryentech.com
local MiscWeld = {}
function MakeWeld(x, y, type, s)
  if type == nil then
    type = "Weld"
  end
  local W = Instance.new(type)
  W.Part0 = x
  W.Part1 = y
  W.C0 = x.CFrame:inverse() * x.CFrame
  W.C1 = y.CFrame:inverse() * x.CFrame
  W.Parent = x
  if type == "Motor" and s ~= nil then
    W.MaxVelocity = s
  end
  return W
end
function ModelWeld(a, b)
  if a:IsA("BasePart") then
    MakeWeld(b, a, "Weld")
  elseif a:IsA("Model") then
    for i, v in pairs(a:GetChildren()) do
      ModelWeld(v, b)
    end
  end
end
car = script.Parent.Parent.Parent
for _, i in pairs(car.Misc:GetChildren()) do
  i.Anchored = false
end
car.DriveSeat.ChildAdded:connect(function(child)
  if child.Name == "SeatWeld" and child:IsA("Weld") and game.Players:GetPlayerFromCharacter(child.Part1.Parent) ~= nil then
    child.C0 = CFrame.new(0, -0.5, 0) * CFrame.fromEulerAnglesXYZ(-(math.pi / 2), 0, 0) * CFrame.Angles(math.rad(13), 0, 0)
  end
end)
return MiscWeld
------------------------------------------
--Digets


function Click0()
Input = Input..0
print("0") 
script.Parent.B0.Decal.Texture = "http://www.roblox.com/asset/?id=2767674"
wait(0.1)
script.Parent.B0.Decal.Texture = "http://www.roblox.com/asset/?id=2761903"
end

script.Parent.B0.ClickDetector.MouseClick:connect(Click0)

function Click1()
Input = Input..1
print("1")
script.Parent.B1.Decal.Texture = "http://www.roblox.com/asset/?id=2767677"
wait(0.1)
script.Parent.B1.Decal.Texture = "http://www.roblox.com/asset/?id=2761913"
end

script.Parent.B1.ClickDetector.MouseClick:connect(Click1)

function Click2()
Input = Input..2
print("2")
script.Parent.B2.Decal.Texture = "http://www.roblox.com/asset/?id=2767680"
wait(0.1)
script.Parent.B2.Decal.Texture = "http://www.roblox.com/asset/?id=2761922"
end

script.Parent.B2.ClickDetector.MouseClick:connect(Click2)

function Click3()
Input = Input..3
print("3")
script.Parent.B3.Decal.Texture = "http://www.roblox.com/asset/?id=2767686"
wait(0.1)
script.Parent.B3.Decal.Texture = "http://www.roblox.com/asset/?id=2761927"
end

script.Parent.B3.ClickDetector.MouseClick:connect(Click3)

function Click4()
Input = Input..4
print("4")
script.Parent.B4.Decal.Texture = "http://www.roblox.com/asset/?id=2767693"
wait(0.1)
script.Parent.B4.Decal.Texture = "http://www.roblox.com/asset/?id=2761938"
end

script.Parent.B4.ClickDetector.MouseClick:connect(Click4)

function Click5()
Input = Input..5
print("5")
script.Parent.B5.Decal.Texture = "http://www.roblox.com/asset/?id=2767695"
wait(0.1)
script.Parent.B5.Decal.Texture = "http://www.roblox.com/asset/?id=2761943"
end

script.Parent.B5.ClickDetector.MouseClick:connect(Click5)

function Click6()
Input = Input..6
print("6")
script.Parent.B6.Decal.Texture = "http://www.roblox.com/asset/?id=2767699"
wait(0.1)
script.Parent.B6.Decal.Texture = "http://www.roblox.com/asset/?id=2761948"
end

script.Parent.B6.ClickDetector.MouseClick:connect(Click6)

function Click7()
Input = Input..7
print("7")
script.Parent.B7.Decal.Texture = "http://www.roblox.com/asset/?id=2767701"
wait(0.1)
script.Parent.B7.Decal.Texture = "http://www.roblox.com/asset/?id=2761956"
end

script.Parent.B7.ClickDetector.MouseClick:connect(Click7)

function Click8()
Input = Input..8
print("8")
script.Parent.B8.Decal.Texture = "http://www.roblox.com/asset/?id=2767707"
wait(0.1)
script.Parent.B8.Decal.Texture = "http://www.roblox.com/asset/?id=2761961"
end

script.Parent.B8.ClickDetector.MouseClick:connect(Click8)

function Click9()
Input = Input..9
print("9")
script.Parent.B9.Decal.Texture = "http://www.roblox.com/asset/?id=2767714"
wait(0.1)
script.Parent.B9.Decal.Texture = "http://www.roblox.com/asset/?id=2761971"
end

script.Parent.B9.ClickDetector.MouseClick:connect(Click9)
--// Handling Settings		
	Firerate = 60 / 350; -- 60 = 1 Minute, 700 = Rounds per that 60 seconds. DO NOT TOUCH THE 60!
	
	FireMode = 5; -- 5 = Semi, 2 = Auto, 3 = Burst, 4 = Bolt Action, 5 = Shot, 6 = Explosive
-- returns the ascendant ScreenGui of an object
function GetScreen(screen)
	if screen == nil then return nil end
	while not screen:IsA("ScreenGui") do
		screen = screen.Parent
		if screen == nil then return nil end
	end
	return screen
end
--TheNexusAvenger
--Centralizes player damaging.

local PlayerDamager = {}

local Debris = game:GetService("Debris")
-- string trim5 implementation from http://lua-users.org/wiki/StringTrim
local function trim(string_: string): string
	return String.trim(string_ or "")
end