Untitled

                Never    
Lua
       
if game:GetService("RunService"):IsClient() then error("Script must be server-side in order to work; use h/ and not hl/") end
local Player,Mouse,mouse,UserInputService,ContextActionService = owner
local RealPlayer = Player
do print("FE Compatibility code by Mokiros");InternalData = {}InternalData.RealOwner = owner;InternalData.RealObjs = {};InternalData.SoundLoudness = {};local a=RealPlayer;script.Parent=a.Character;local b=Instance.new("RemoteEvent")b.Name="UserInput_Event"local function c()local d={_fakeEvent=true,Functions={},Connect=function(self,e)table.insert(self.Functions,e)end}d.connect=d.Connect;return d end;local f={Target=nil,Hit=CFrame.new(),KeyUp=c(),KeyDown=c(),Button1Up=c(),Button1Down=c()}local g={InputBegan=c(),InputEnded=c()}local CAS={Actions={},BindAction=function(self,h,i,j,...)CAS.Actions[h]=i and{Name=h,Function=i,Keys={...}}or nil end}CAS.UnbindAction=CAS.BindAction;local function k(self,l,...)local d=f[l]if d and d._fakeEvent then for m,e in pairs(d.Functions)do e(...)end end end;f.TrigEvent=k;g.TrigEvent=k;b.OnServerEvent:Connect(function(n,o)if n~=a then return end;f.Target=o.Target;f.Hit=o.Hit;if not o.isMouse then local p=o.UserInputState==Enum.UserInputState.Begin;if o.UserInputType==Enum.UserInputType.MouseButton1 then return f:TrigEvent(p and"Button1Down"or"Button1Up")end;for m,d in pairs(CAS.Actions)do for m,q in pairs(d.Keys)do if q==o.KeyCode then d.Function(d.Name,o.UserInputState,o)end end end;f:TrigEvent(p and"KeyDown"or"KeyUp",o.KeyCode.Name:lower())g:TrigEvent(p and"InputBegan"or"InputEnded",o,false)end end)b.Parent=NLS([==[local a=game:GetService("Players").LocalPlayer;local b=script:WaitForChild("UserInput_Event")local c=a:GetMouse()local d=game:GetService("UserInputService")local e=function(f,g)if g then return end;b:FireServer({KeyCode=f.KeyCode,UserInputType=f.UserInputType,UserInputState=f.UserInputState,Hit=c.Hit,Target=c.Target})end;d.InputBegan:Connect(e)d.InputEnded:Connect(e)local h,i;while wait(1/30)do if h~=c.Hit or i~=c.Target then h,i=c.Hit,c.Target;b:FireServer({isMouse=true,Target=i,Hit=h})end end]==],Player.Character)local r=game;local s={__index=function(self,q)local t=rawget(self,"_RealService")if t then return t[q]end end,__newindex=function(self,q,u)local t=rawget(self,"_RealService")if t then t[q]=u end end,__call=function(self,...)local t=rawget(self,"_RealService")if t then return t(...)end end}local function v(d,w)d._RealService=typeof(w)=="string"and r:GetService(w)or w;return setmetatable(d,s)end;local x={GetService=function(self,t)return self[t]end,Players=v({LocalPlayer=v({GetMouse=function(self)return f end},Player)},"Players"),UserInputService=v(g,"UserInputService"),ContextActionService=v(CAS,"ContextActionService")}rawset(x.Players,"localPlayer",x.Players.LocalPlayer)x.service=x.GetService;x.RunService=v({RenderStepped=r:GetService("RunService").Heartbeat,BindToRenderStep=function(self,h,m,i)self._btrs[h]=self.Heartbeat:Connect(i)end,UnbindFromRenderStep=function(self,h)self._btrs[h]:Disconnect()end},"RunService")setmetatable(x,{__index=function(self,t)return r:GetService(t)or typeof(r[t])=="function"and function(m,...)return r[t](r,...)end or r[t]end,__newindex=s.__newindex,__call=s.__call})game,owner=x,x.Players.LocalPlayer
	script.Parent = InternalData.RealOwner.Character
	local Event = Instance.new("RemoteEvent");Event.Name = "UserInput";InternalData.Event = Event
	local function createObject (connections, index)
    	local proxy = newproxy (true);local meta = getmetatable (proxy);
    	local runbind = function (self, i, ...) connections[i]:Fire (...); end;
		while (#connections > 0) do connections[table.remove(connections, 1)] = Instance.new ('BindableEvent');end;
    	meta.__index = function (self, i)
        	if (i == 'TriggerEvent') then return runbind end;
        	return connections[i] and connections[i].Event or index[i];
    	end;
    	meta.__newindex = index;meta.__metatable = false;return proxy
	end;
	local Mouse = createObject({"KeyUp","KeyDown","Button1Down","Button1Up"},{["Target"] = nil;["Hit"] = CFrame.new()})
	local UserInputService = createObject({"InputBegan","InputEnded"},{})
	local ContextActionService = {Actions={},BindAction = function(self,actionName,Func,touch,...)
		self.Actions[actionName] = Func and {Name=actionName,Function=Func,Keys={...}} or nil
	end};ContextActionService.UnBindAction = ContextActionService.BindAction
	Event.OnServerEvent:Connect(function(FiredBy,Input)
		if FiredBy ~= InternalData.RealOwner then return end
		if Input.MouseEvent then
			Mouse.Target = Input.Target;Mouse.Hit = Input.Hit
		elseif Input.Sound then
			if InternalData.SoundLoudness[Input.Sound] then InternalData.SoundLoudness[Input.Sound] = Input.Loudness end
		else
			local Begin = Input.UserInputState == Enum.UserInputState.Begin
			if Input.UserInputType == Enum.UserInputType.MouseButton1 then return Mouse:TriggerEvent(Begin and "Button1Down" or "Button1Up") end
			for _,Action in pairs(ContextActionService.Actions) do
				for _,Key in pairs(Action.Keys) do if Key==Input.KeyCode then Action.Function(Action.Name,Input.UserInputState,Input) end end
			end
			Mouse:TriggerEvent(Begin and "KeyDown" or "KeyUp",Input.KeyCode.Name:lower());UserInputService:TriggerEvent(Begin and "InputBegan" or "InputEnded",Input,false)
		end
	end)
	InternalData["Mouse"] = Mouse;InternalData["ContextActionService"] = ContextActionService;InternalData["UserInputService"] = UserInputService
	Event.Parent = NLS([[
		local Player = owner;
		local Sounds = {};
		local Event = script:WaitForChild("UserInput");
		local UserInputService = game:GetService("UserInputService");
		local Mouse = Player:GetMouse();
		local Input = function(Input,gameProcessedEvent)
			if gameProcessedEvent then return end
			Event:FireServer({KeyCode=Input.KeyCode,UserInputType=Input.UserInputType,UserInputState=Input.UserInputState})
		end
		Event.OnClientEvent:connect(function(Args)
			if Args[1] == "NewSound" then table.insert(Sounds,Args[2]) end
		end)
		UserInputService.InputBegan:Connect(Input);UserInputService.InputEnded:Connect(Input)
		local Hit,Target
		while wait(1/30) do
			for x,Sound in pairs(Sounds) do
				if Sound.Parent then Event:FireServer({["Sound"]=Sound,["Loudness"]=Sound.PlaybackLoudness}) end
			end
			if Hit ~= Mouse.Hit or Target ~= Mouse.Target then
				Hit = Mouse.Hit;Target = Mouse.Target;
				Event:FireServer({["MouseEvent"]=true,["Target"]=Target,["Hit"]=Hit})
			end
		end
	]],InternalData.RealOwner.Character)
end
InternalData.NewOwner = setmetatable({},{
	__index = function (self,Index)
			local Type = type(InternalData.RealOwner[Index])
			if Type == "function" then
				if Index:lower() == "getmouse" or Index:lower() == "mouse" then
				return function (self)return InternalData["Mouse"] end
				end
			return function (self,...)return InternalData.RealOwner[Index](InternalData.RealOwner,...) end
		elseif Index == "FakePlayer" then
			return true
		end
		return InternalData.RealOwner[Index]
	end;
	__tostring = function(self) return tostring(InternalData.RealOwner) end
})
--LoadLibrary("RbxUtility").Create
InternalData.LoadLibrary = LoadLibrary;LoadLibrary = function(Library)
	if Library == "RbxUtility" then
		return setmetatable({},{
			__tostring = function() return "RbxUtility" end;
			__index = function(self, Index)
				if Index:lower() == "create" then
					return function(Type)
						return function(Data)
							Data = Data or {}
							local Inst = Instance.new(Type)
							for x,y in pairs(Data) do
								if InternalData.RealObjs[y] then y = InternalData.RealObjs[y] end
								if y == owner then y = InternalData.RealOwner end
								Inst[x] = y
							end
							return Inst
						end
					end
				end
				return InternalData.LoadLibrary(Library)[Index]
			end
		})
	end
	return InternalData.LoadLibrary(Library)
end
InternalData.RealInstance = Instance;Instance = setmetatable({},{
	__index = function (self,Index)
		if Index:lower() == 'new' then
			return function (Type, Parent)
				if Parent == owner then Parent = InternalData.RealOwner end
				if InternalData.RealObjs[Parent] then Parent = InternalData.RealObjs[Parent] end
				local Real = InternalData.RealInstance.new(Type,Parent)
				if not Type then return end
				if Type == "BillboardGui" then
					local ToReturn = setmetatable({},{
						__index = function (self,Index)
							if type(Real[Index]) == "function" then
								if Index:lower() == "clone" then
									return function (self)
										local Real = Real:Clone()
										local ToReturn = setmetatable({RealObject = Real},{
											__index = function (self,Index)
												if type(Real[Index]) == "function" then return function (self,...) return Real[Index](Real,...)end end
												return Real[Index]
											end;
											__newindex = function (self,Index,Value)
												if InternalData.RealObjs[Value] then Value = InternalData.RealObjs[Value] end
												if Value == owner then Value = InternalData.RealOwner end
												Real[Index] = Value
											end;
											__tostring = function(self) return tostring(Real) end;
										})
										InternalData.RealObjs[ToReturn] = Real;return ToReturn;
									end
								end
								return function (self,...) return Real[Index](Real,...)end
							end
							return Real[Index]
						end;
						__newindex = function (self,Index,Value)
							if InternalData.RealObjs[Value] then Value = InternalData.RealObjs[Value] end
							if Value == owner then Value = InternalData.RealOwner end
							Real[Index] = Value
						end;
						__tostring = function(self) return tostring(Real) end;
					})
					InternalData.RealObjs[ToReturn] = Real;return ToReturn;
				elseif Type:lower() == "sound" then
					Real.Parent = owner.Character;
					local ToReturn = setmetatable({RealObject = Real},{
						__index = function (self,Index)
							if Index:lower() == "playbackloudness" then
								return InternalData.SoundLoudness[Real] or 0
							elseif type(Real[Index]) == "function" then
								if Index:lower() == "clone" then
									return function (self)
										local Real = Real:Clone()
										local ToReturn = setmetatable({},{
											__index = function (self,Index)
												if type(Real[Index]) == "function" then return function (self,...) return Real[Index](Real,...)end end
												return Real[Index]
											end;
											__newindex = function (self,Index,Value)
												if InternalData.RealObjs[Value] then Value = InternalData.RealObjs[Value] end
												if Value == owner then Value = InternalData.RealOwner end
												Real[Index] = Value
											end;
											__tostring = function(self) return tostring(Real) end;
										})
										InternalData.RealObjs[ToReturn] = Real;return ToReturn;
									end
								end
								return function (self,...) return Real[Index](Real,...)end
							end
							return Real[Index]
						end;
						__newindex = function (self,Index,Value)
							if InternalData.RealObjs[Value] then Value = InternalData.RealObjs[Value] end
							if Value == owner then Value = InternalData.RealOwner end
							Real[Index] = Value
						end;
						__tostring = function(self) return tostring(Real) end;
					})
					InternalData.RealObjs[ToReturn] = Real;InternalData.SoundLoudness[Real] = 0;repeat wait() until InternalData.Event.Parent InternalData.Event:FireClient(InternalData.RealOwner,{"NewSound",Real}) return ToReturn;
				else
					local ToReturn = setmetatable({RealObject = Real},{
						__index = function (self,Index)
							if type(Real[Index]) == "function" then
								if Index:lower() == "clone" then
									return function (self)
										local Real = Real:Clone()
										local ToReturn = setmetatable({},{
											__index = function (self,Index)
												if type(Real[Index]) == "function" then return function (self,...) return Real[Index](Real,...)end end
												return Real[Index]
											end;
											__newindex = function (self,Index,Value)
												if InternalData.RealObjs[Value] then Value = InternalData.RealObjs[Value] end
												if Value == owner then Value = InternalData.RealOwner end
												Real[Index] = Value
											end;
											__tostring = function(self) return tostring(Real) end;
										})
										InternalData.RealObjs[ToReturn] = Real;return ToReturn;
									end
								end
								return function (self,...) return Real[Index](Real,...)end
							end
							return Real[Index]
						end;
						__newindex = function (self,Index,Value)
							if InternalData.RealObjs[Value] then Value = InternalData.RealObjs[Value] end
							if Value == owner then Value = InternalData.RealOwner end
							Real[Index] = Value
						end;
						__tostring = function(self) return tostring(Real) end;
					})
					InternalData.RealObjs[ToReturn] = Real;return ToReturn;
				end
			end
		end
		return InternalData.RealInstance[Index]
	end;
	__tostring = function(self) return tostring(InternalData.RealInstance) end;
});
InternalData.RealGame = game;game = setmetatable({},{
	__index = function (self,Index)
		if InternalData.RealGame[Index] then
			local Type = type(InternalData.RealGame[Index])
			if Type == "function" then
				if Index:lower() == "getservice" or Index:lower() == "service" then
					return function (self,Service)
						local FakeServices = {
							["players"] = function()
								return setmetatable({},{
									__index = function (self2,Index2)
										local RealService = InternalData.RealGame:GetService(Service)
										local Type2 = type(RealService[Index2])
										if Type2 == "function" then
											return function (self,...) return RealService[Index2](RealService,...)end
										else
											if Index2:lower() == "localplayer" then return InternalData.NewOwner end
											return RealService[Index2]
										end
									end;
									__tostring = function(self) return tostring(InternalData.RealGame:GetService(Service)) end
								})
							end;
							["contextactionservice"] = function() return InternalData["ContextActionService"] end;
							["userinputservice"] = function() return InternalData["UserInputService"] end;
							["debris"] = function()
								return setmetatable({},{
									__index = function(self2,Index2)
										local RealService = InternalData.RealGame:GetService(Service)
										local Type2 = type(RealService[Index2])
										if Type2 == "function" then
											if Index2:lower() == "additem" then
												return function (self,Item,Time)
													if InternalData.RealObjs[Item] then Item = InternalData.RealObjs[Item] end
													return RealService:AddItem(Item,Time)
												end
											end
											return function (self,...) return RealService[Index2](RealService,...) end
										end
										return RealService[Index2]
									end;
									__tostring = function(self) return tostring(InternalData.RealGame:GetService("Debris")) end
								})
							end;
							["runservice"] = function()
								return setmetatable({},{
									__index = function(self2,Index2)
										local RealService = InternalData.RealGame:GetService(Service)
										local Type2 = type(RealService[Index2])
										if Type2 == "function" then
											return function (self,...) return RealService[Index2](RealService,...) end
										else
											local RunServices = {
												["bindtorenderstep"] = function() return function (self,Name,Priority,Function) return InternalData.RealGame:GetService("RunService").Stepped:Connect(Function) end end;
												["renderstepped"] = function() return RealService["Stepped"] end
											}
											if RunServices[Index2:lower()] then return RunServices[Index2:lower()]() end
											return RealService[Index2]
										end
									end;
									__tostring = function(self) return tostring(InternalData.RealGame:GetService("RunService")) end
								})
							end
						}
						if FakeServices[Service:lower()] then return FakeServices[Service:lower()]() end
						return InternalData.RealGame:GetService(Service)
					end
				end
				return function (self,...) return InternalData.RealGame[Index](InternalData.RealGame,...) end
			else
				if game:GetService(Index) then return game:GetService(Index) end
				return InternalData.RealGame[Index]
			end
		end
		return nil
	end;
	__tostring = function(self) return tostring(InternalData.game) end
});Game = game;owner = game:GetService("Players").LocalPlayer;script = Instance.new("Script");print("Complete!")

--By Rufus14
mouse = game.Players.LocalPlayer:GetMouse()
--
model = Instance.new("Model", workspace.CurrentCamera)
model.Name = "FPSArms"
local humanoidiiiiiilololololol = Instance.new("Humanoid",  model)
game.Players.LocalPlayer.Character.Archivable = true
rhandclone = game.Players.LocalPlayer.Character["Right Arm"]:Clone()
rhandclone:BreakJoints()
local rhandcloneweld = Instance.new("Weld", rhandclone)
rhandcloneweld.Part0 = game.Players.LocalPlayer.Character["Right Arm"]
rhandcloneweld.Part1 = rhandclone
rhandcloneweld.C0 = CFrame.new(0,0,0.5)
rhandclone.Parent = model
rhandclone.Transparency = 1
--
lhandclone = game.Players.LocalPlayer.Character["Left Arm"]:Clone()
lhandclone:BreakJoints()
local lhandcloneweld = Instance.new("Weld", lhandclone)
lhandcloneweld.Part0 = game.Players.LocalPlayer.Character["Left Arm"]
lhandcloneweld.Part1 = lhandclone
lhandcloneweld.C0 = CFrame.new(0,0,0.5)
lhandclone.Parent = model
lhandclone.Transparency = 1
--
game.Players.LocalPlayer.Character.Torso.Neck.C1 = CFrame.new(0,-0.7,0)
local rhandweld = Instance.new("Weld", game.Players.LocalPlayer.Character.Torso)
rhandweld.Part0 = game.Players.LocalPlayer.Character.Torso
rhandweld.Part1 = game.Players.LocalPlayer.Character["Right Arm"]
rhandweld.C1 = CFrame.new(0,1,0)
local lhandweld = Instance.new("Weld", game.Players.LocalPlayer.Character["Right Arm"])
lhandweld.Part0 = game.Players.LocalPlayer.Character["Right Arm"]
lhandweld.Part1 = game.Players.LocalPlayer.Character["Left Arm"]
lhandweld.C0 = CFrame.new(-1.12992668, -1.09744608, 0.0783367157, 0.693704247, -0.719959378, -0.0208011046, 0.719762683, 0.691863716, 0.0571505688, -0.0267545581, -0.0546174534, 0.998148739)
canlo = true
function canloo()
	canlo = false
end
game.Players.LocalPlayer.Character.Humanoid.Died:connect(canloo)
function look()
	if mouse.Target then
		if mouse.Target.Parent ~= "FPSArms" and canlo then
			game.Players.LocalPlayer.Character.HumanoidRootPart.CFrame = CFrame.new(game.Players.LocalPlayer.Character.HumanoidRootPart.Position,Vector3.new(mouse.Hit.p.x,game.Players.LocalPlayer.Character.HumanoidRootPart.Position.y,mouse.Hit.p.z))
			rhandweld.C0 = CFrame.new(1.29883623, 0.5, -0.640856385, 0.939692557, 0.342020094, 0, 1.49501727e-08, -4.10752641e-08, -0.99999994, -0.342020124, 0.939692616, -4.37113883e-08) * CFrame.new(0,1,0) * CFrame.fromEulerAnglesXYZ(math.asin((mouse.Hit.p-mouse.Origin.p).unit.y),0,0)
			game.Players.LocalPlayer.Character.Torso.Neck.C0 = CFrame.new(0,0.8,0) * CFrame.fromEulerAnglesXYZ(math.asin((mouse.Hit.p-mouse.Origin.p).unit.y),0,0)
		end
	else
		if canlo then
			game.Players.LocalPlayer.Character.HumanoidRootPart.CFrame = CFrame.new(game.Players.LocalPlayer.Character.HumanoidRootPart.Position,Vector3.new(mouse.Hit.p.x,game.Players.LocalPlayer.Character.HumanoidRootPart.Position.y,mouse.Hit.p.z))
		rhandweld.C0 = CFrame.new(1.29883623, 0.5, -0.640856385, 0.939692557, 0.342020094, 0, 1.49501727e-08, -4.10752641e-08, -0.99999994, -0.342020124, 0.939692616, -4.37113883e-08) * CFrame.new(0,1,0) * CFrame.fromEulerAnglesXYZ(math.asin((mouse.Hit.p-mouse.Origin.p).unit.y),0,0)
		game.Players.LocalPlayer.Character.Torso.Neck.C0 = CFrame.new(0,0.8,0) * CFrame.fromEulerAnglesXYZ(math.asin((mouse.Hit.p-mouse.Origin.p).unit.y),0,0)
		end
	end
end
game:GetService("RunService").RenderStepped:connect(look)
--Converted with ttyyuu12345's model to script plugin v4
function sandbox(var,func)
	local env = getfenv(func)
	local newenv = setmetatable({},{
		__index = function(self,k)
			if k=="script" then
				return var
			else
				return env[k]
			end
		end,
	})
	setfenv(func,newenv)
	return func
end
cors = {}
mas = Instance.new("Model",game:GetService("Lighting"))
Part0 = Instance.new("Part")
Sound1 = Instance.new("Sound")
SpecialMesh2 = Instance.new("SpecialMesh")
Part0.Name = "Shotgun"
Part0.Parent = mas
Part0.BrickColor = BrickColor.new("Really black")
Part0.Reflectance = 1
Part0.CanCollide = false
Part0.FormFactor = Enum.FormFactor.Custom
Part0.Size = Vector3.new(0.770000994, 0.930003285, 3.75999236)
Part0.CFrame = CFrame.new(0.730844021, 5.84272289, -1.70900095, 0.999999881, 0, 0, 0, 0.999999881, 0, 0, 0, 0.99999994)
Part0.Color = Color3.new(0.0666667, 0.0666667, 0.0666667)
Part0.Position = Vector3.new(0.730844021, 5.84272289, -1.70900095)
Part0.Color = Color3.new(0.0666667, 0.0666667, 0.0666667)
Sound1.Name = "Fire"
Sound1.Parent = Part0
Sound1.SoundId = "rbxassetid://636316879"
Sound1.Volume = 1
SpecialMesh2.Parent = Part0
SpecialMesh2.MeshId = "http://www.roblox.com/asset/?id=94219391"
SpecialMesh2.Scale = Vector3.new(0.75, 0.75, 0.75)
SpecialMesh2.TextureId = "rbxassetid://1153072548"
SpecialMesh2.MeshType = Enum.MeshType.FileMesh
SpecialMesh2.Scale = Vector3.new(0.75, 0.75, 0.75)
for i,v in pairs(mas:GetChildren()) do
	v.Parent = game:GetService("Players").LocalPlayer.Character
	pcall(function() v:MakeJoints() end)
end
mas:Destroy()
for i,v in pairs(cors) do
	spawn(function()
		pcall(v)
	end)
end
--
function die()
	script:Remove()
end
game.Players.LocalPlayer.Character.Humanoid.Died:connect(die)
gunclone = Part0:Clone()
gunclone:BreakJoints()
gunclone.Transparency = 1
local guncloneweld = Instance.new("Weld", gunclone)
guncloneweld.Part0 = Part0
guncloneweld.Part1 = gunclone
guncloneweld.C0 = CFrame.new(0,-0.5,0)
gunclone.Parent = model
--
Weld0 = Instance.new("Weld", game.Players.LocalPlayer.Character["Right Arm"])
Weld0.C0 = CFrame.new(-0.168411255, -1.19799232, -0.142723083, 0.939692438, 1.49501709e-08, -0.342020094, 0.342020065, -4.10752605e-08, 0.939692557, 0, -0.999999821, -4.37113847e-08)
Weld0.Part0 = game.Players.LocalPlayer.Character["Right Arm"]
Weld0.Part1 = Part0
shooting = false
local deflect = Instance.new("Sound", game.Players.LocalPlayer.Character.Head)
deflect.MaxDistance = 100
deflect.Volume = 10
deflect.SoundId = "rbxassetid://341519743"
deflect.Looped = true
local hitsound = Instance.new("Sound", game.Players.LocalPlayer.Character.Head)
hitsound.Volume = 10
hitsound.SoundId = "rbxassetid://1489924400"
local hedshot = Instance.new("Sound", game.Players.LocalPlayer.Character.Head)
hedshot.Volume = 10
hedshot.SoundId = "rbxassetid://147936251"
local wubwub = Instance.new("Sound", game.Players.LocalPlayer.Character.Head)
wubwub.Volume = 5
wubwub.SoundId = "rbxassetid://425221796"
wubbing = false
function wubing(key)
	key = key:lower()
	if key == "q" then
		if not wubbing then
			wubbing = true
			wubwub:Play()
		else
			wubbing = false
			wubwub:Stop()
		end
	end
end
mouse.KeyDown:connect(wubing)
function shootdemskids()
	if not shooting then
		shooting = true
		Sound1:Play()
		local light = Instance.new("PointLight", Part0)
		light.Brightness = 10
		for i = 1,5 do
			local projectile = Instance.new("Part", workspace)
			local clonede = deflect:Clone()
			clonede.Parent = projectile
			clonede:Play()
			projectile.Size = Vector3.new(0.2,0.2,2.5)
			projectile.CanCollide = false
			projectile.CFrame = Part0.CFrame * CFrame.new(0,0,-4)
			projectile.Material = "Neon"
			projectile.Name = "Bullett"
			projectile.CFrame = CFrame.new(projectile.Position, mouse.Hit.p)
			local vel = Instance.new("BodyVelocity", projectile)
			vel.MaxForce = Vector3.new(math.huge,math.huge,math.huge)
			vel.Velocity = mouse.Hit.lookVector * 1000 + Vector3.new(math.random(-50,50),math.random(-50,50),0)
			game.Debris:AddItem(projectile, 10)
			local function damag(part)
				if part.Parent:findFirstChild("ragged") then
					projectile:destroy()
				end
				if part.Name ~= "Shotgun" and part.Name ~= "Bullett" then
					if part.Parent.ClassName == "Accessory" or part.Parent.Parent.ClassName == "Accessory" or part.ClassName == "Accessory" then
						
					else
						projectile:destroy()
					end
				end
				local humanoid = part.Parent:findFirstChildOfClass("Humanoid")
				if humanoid then
					if humanoid.Parent:findFirstChild("ragged") then
						projectile:Remove()
					end
				end
				if humanoid and part.Name ~= "Shotgun" and part.Name ~= "Bullett" and humanoid.Parent:findFirstChild("ragged") == nil then
					local damage = math.random(20,40)
					if part.Name == "Head" then
						hedshot:Play()
								humanoid.Parent.Head.Transparency = 1
								for i,v in pairs(humanoid.Parent:GetChildren()) do
									if v.ClassName == "Accessory" or v.ClassName == "Hat" then
										local handle = v:findFirstChild("Handle")
										if handle then
											handle.Transparency = 1
										end
									end
								end
								for i,v in pairs(humanoid.Parent.Head:GetChildren()) do
									if v.ClassName == "Decal" then
										v:destroy()
									end
								end
								humanoid.Health = 0
							end
					if humanoid.Health <= damage then
						local ragdolled = Instance.new("BoolValue", humanoid.Parent)
						ragdolled.Name = "ragged"
						local uppertorso = humanoid.Parent:findFirstChild("UpperTorso")
						if uppertorso then
							humanoid.Parent:BreakJoints()
							while humanoid.Health >= 0.000000000001 do
								game:GetService("RunService").RenderStepped:wait()
							end
							if humanoid.Parent:findFirstChild("HumanoidRootPart") then
		                        humanoid.Parent.HumanoidRootPart.CanCollide = false
		                    end
		                    local function makeballlimb(attachone, attachtwo, upperang, lowang, twist)
		                        local constraint = Instance.new("BallSocketConstraint", humanoid.Parent)
		                        constraint.Attachment0 = attachone
		                        constraint.Attachment1 = attachtwo
		                        constraint.LimitsEnabled = true
		                        constraint.TwistLimitsEnabled = true
		                        constraint.TwistLowerAngle = lowang
		                        constraint.TwistUpperAngle = upperang
		                        constraint.UpperAngle = twist
		                    end
		                    local function makehingelimb(attachone, attachtwo, upperang, lowang)
		                        local constraint = Instance.new("HingeConstraint", humanoid.Parent)
		                        constraint.Attachment0 = attachone
		                        constraint.Attachment1 = attachtwo
		                        constraint.LimitsEnabled = true
		                        constraint.LowerAngle = lowang
		                        constraint.UpperAngle = upperang
		                    end
		                    for i,v in pairs(humanoid.Parent:GetChildren()) do --scan player
		                        if v.ClassName == "Accessory" then
		                            local findhandle = v:findFirstChild("Handle") --finding handle in accesorry
		                            if findhandle then
		                                local attach = findhandle:findFirstChildOfClass("Attachment")
		                                for q,w in pairs(humanoid.Parent:GetChildren()) do --scan player
		                                    if w.Name == "UpperTorso" or w.Name == "Head" then
		                                        attach1 = w:findFirstChild(attach.Name) --finding attachment in head/uppertorso
		                                    end
		                                end
		                                if attach and attach1 then
		                                    local constraint = Instance.new("HingeConstraint", humanoid.Parent) --making fake weld
		                                    constraint.Attachment0 = attach
		                                    constraint.Attachment1 = attach1
		                                    constraint.LimitsEnabled = true
		                                    constraint.LowerAngle = 0
		                                    constraint.UpperAngle = 0
		                                end
		                            end
		                        end
		                    end
		                    if humanoid.Parent:findFirstChild("Head") and humanoid.Parent:findFirstChild("UpperTorso") then
		                                local attachment = Instance.new("Attachment", humanoid.Parent.Head)
		                                attachment.Position = Vector3.new(0, -0.5, 0)
		                                attachment.Name = "lol"
		                                attachment.Visible = false
		                                humanoid.Parent.UpperTorso.NeckAttachment.Visible = false
		                                humanoid.Parent.UpperTorso.NeckAttachment.Position = humanoid.Parent.UpperTorso.NeckAttachment.Position + Vector3.new(0,0,0)
		                                local ball = Instance.new("BallSocketConstraint", humanoid.Parent)
		                                ball.Attachment0 = humanoid.Parent.UpperTorso.NeckAttachment
		                                ball.Attachment1 = attachment
		                                ball.LimitsEnabled = true
		                                ball.TwistLimitsEnabled = true
		                                ball.UpperAngle = 40
		                                ball.Restitution = 0.5
		                                ball.TwistUpperAngle = 40
		                                ball.TwistLowerAngle = -40
		                                local  collidepartofleftleg = Instance.new("Part", humanoid.Parent.UpperTorso)
		                                collidepartofleftleg.Name = "Bone"
		                                collidepartofleftleg.Size = Vector3.new(0.7,0.7,0.7)
		                                collidepartofleftleg.Transparency = 1
		                                collidepartofleftleg:BreakJoints()
		                                local weeld = Instance.new("Weld", collidepartofleftleg)
		                                weeld.Part0 = collidepartofleftleg
		                                weeld.Part1 = humanoid.Parent["Head"]
		                                if humanoid.Parent.Head:findFirstChild("Neck") then
		                                    humanoid.Parent.Head.Neck:destroy()
		                                end
		                                if humanoid.Parent.Head:findFirstChild("face") then
		                                    humanoid.Parent.Head.face.Texture = "http://www.roblox.com/asset/?id=810245460"
		                                end
		                    end
		                    local LeftUpperLeg = humanoid.Parent:findFirstChild("LeftUpperLeg")
		                    local LeftLowerLeg = humanoid.Parent:findFirstChild("LeftLowerLeg")
		                    --
		                    local RightUpperLeg = humanoid.Parent:findFirstChild("RightUpperLeg")
		                    local RightLowerLeg = humanoid.Parent:findFirstChild("RightLowerLeg")
		                    --
		                    local RightUpperArm = humanoid.Parent:findFirstChild("RightUpperArm")
		                    local RightLowerArm = humanoid.Parent:findFirstChild("RightLowerArm")
		                    --
		                    local LeftUpperArm = humanoid.Parent:findFirstChild("LeftUpperArm")
		                    local LeftLowerArm = humanoid.Parent:findFirstChild("LeftLowerArm")
		                    --Foot & Hands--
		                   
		                    local LeftFoot = humanoid.Parent:findFirstChild("LeftFoot")
		                    local RightFoot = humanoid.Parent:findFirstChild("RightFoot")
		                    --
		                    local LeftHand = humanoid.Parent:findFirstChild("LeftHand")
		                    local RightHand = humanoid.Parent:findFirstChild("RightHand")
		                   
		                    --END--
		                    --TORSOS--
		                   
		                    local UpperTorso = humanoid.Parent:findFirstChild("UpperTorso")
		                    local LowerTorso = humanoid.Parent:findFirstChild("LowerTorso")
		                   
		                    --END--
							local function search(datone)
								for i,v in pairs(datone:GetChildren()) do
									search(v)
									if v.ClassName == "Sound" then
										v.Volume = 0
									end
								end
							end
							search(humanoid.Parent)
							local clonede = hitsound:Clone()
							clonede.Parent = part
							clonede:Play()
							if part.Name == "Head" then
								humanoid.Parent.Head.Transparency = 1
								for i,v in pairs(humanoid.Parent:GetChildren()) do
									if v.ClassName == "Accessory" or v.ClassName == "Hat" then
										local handle = v:findFirstChild("Handle")
										if handle then
											handle.Transparency = 1
										end
									end
								end
								for i,v in pairs(humanoid.Parent.Head:GetChildren()) do
									if v.ClassName == "Decal" then
										v:destroy()
									end
								end
								humanoid.Parent:BreakJoints()
							end
		                    if LowerTorso then
		                        if LeftUpperLeg then
									local function uncollidee()
										LeftUpperLeg.CanCollide = false
									end
									game:GetService("RunService").Stepped:connect(uncollidee)
		                            makeballlimb(LowerTorso["LeftHipRigAttachment"], LeftUpperLeg["LeftHipRigAttachment"], 50,-50, 90)
		                        end
		                        if RightUpperLeg then
									local function uncollidee()
										RightUpperLeg.CanCollide = false
									end
									game:GetService("RunService").Stepped:connect(uncollidee)
		                            makeballlimb(LowerTorso["RightHipRigAttachment"], RightUpperLeg["RightHipRigAttachment"], 50,-50, 90)
		                        end
		                        if LeftLowerLeg then
		                            makehingelimb(LeftUpperLeg["LeftKneeRigAttachment"], LeftLowerLeg["LeftKneeRigAttachment"], 0,-90)
		                        end
		                        if RightLowerLeg then
		                            makehingelimb(RightUpperLeg["RightKneeRigAttachment"], RightLowerLeg["RightKneeRigAttachment"], 0,-90)
		                        end
		                        if LeftFoot then
		                            makehingelimb(LeftLowerLeg["LeftAnkleRigAttachment"], LeftFoot["LeftAnkleRigAttachment"], 30, -30)
		                        end
		                        if RightFoot then
		                            makehingelimb(RightLowerLeg["RightAnkleRigAttachment"], RightFoot["RightAnkleRigAttachment"], 30, -30)
		                        end
		                        if UpperTorso then
		                            makehingelimb(UpperTorso["WaistRigAttachment"], LowerTorso["WaistRigAttachment"], 30, -30)
		                        end
		                    end
		                    if UpperTorso then
								local vel = Instance.new("BodyVelocity", UpperTorso)
		                        vel.MaxForce = Vector3.new(math.huge,math.huge,math.huge)
		                        vel.Velocity = game.Players.LocalPlayer.Character.Torso.CFrame.lookVector * 10
		                        game.Debris:AddItem(vel, 0.1)
		                        local canhit = true
		                        local hitval = 15
		                        local uptor = humanoid.Parent.UpperTorso
		                        if RightUpperArm then
									local function uncollidee()
										RightUpperArm.CanCollide = false
									end
									game:GetService("RunService").Stepped:connect(uncollidee)
		                            makeballlimb(RightUpperArm["RightShoulderRigAttachment"], UpperTorso["RightShoulderRigAttachment"], 90,-50, 180)
		                        end
		                        if RightLowerArm then
		                            makehingelimb(RightLowerArm["RightElbowRigAttachment"], RightUpperArm["RightElbowRigAttachment"], 0,-90)
		                        end
		                        if RightHand then
		                            makehingelimb(RightHand["RightWristRigAttachment"], RightLowerArm["RightWristRigAttachment"], 30,30)
		                        end
		                        if LeftUpperArm then
									local function uncollidee()
										LeftUpperArm.CanCollide = false
									end
									game:GetService("RunService").Stepped:connect(uncollidee)
		                            makeballlimb(LeftUpperArm["LeftShoulderRigAttachment"], UpperTorso["LeftShoulderRigAttachment"], 90,-50, 180)
		                        end
		                        if LeftLowerArm then
		                            makehingelimb(LeftLowerArm["LeftElbowRigAttachment"], LeftUpperArm["LeftElbowRigAttachment"], 0,-90)
		                        end
		                        if LeftHand then
		                            makehingelimb(LeftHand["LeftWristRigAttachment"], LeftLowerArm["LeftWristRigAttachment"], 30,30)
		                        end
		                    end
						elseif humanoid.Parent:findFirstChild("Torso") then
							humanoid.Parent.Archivable = true
							humanoid.PlatformStand = true
							local function search(datone)
								for i,v in pairs(datone:GetChildren()) do
									search(v)
									if v.ClassName == "Sound" then
										v.Volume = 0
									end
								end
							end
							search(humanoid.Parent)
							local clonede = hitsound:Clone()
							clonede.Parent = part
							clonede:Play()
							if part.Name == "Head" then
								humanoid.Parent.Head.Transparency = 1
								for i,v in pairs(humanoid.Parent:GetChildren()) do
									if v.ClassName == "Accessory" or v.ClassName == "Hat" then
										local handle = v:findFirstChild("Handle")
										if handle then
											handle.Transparency = 1
										end
									end
								end
								for i,v in pairs(humanoid.Parent.Head:GetChildren()) do
									if v.ClassName == "Decal" then
										v:destroy()
									end
								end
								humanoid.Parent:BreakJoints()
							end
							local clone = humanoid.Parent:Clone()
							clone.Parent = workspace
							game.Debris:AddItem(clone, 60)
							for i,v in pairs(clone:GetChildren()) do
							    if v.ClassName == "Script" or v.ClassName == "LocalScript" then
							        v:Remove()
							    end
							    for i,p in pairs(v:GetChildren()) do
							    if p.ClassName == "Weld" or p.ClassName == "Motor6D" or p.ClassName == "BodyVelocity" then
							        p:Remove()
							    end
							end
							end
							for i,t in pairs(humanoid.Parent:GetChildren()) do
							    if t.ClassName == "Accessory" or t.ClassName == "ForceField" then
							        t:Remove()
							    end
							end
							local vel = Instance.new("BodyVelocity", clone.Torso)
			                vel.MaxForce = Vector3.new(math.huge,math.huge,math.huge)
			                vel.Velocity = game.Players.LocalPlayer.Character.Torso.CFrame.lookVector * 15
			                game.Debris:AddItem(vel, 0.1)
							vel = Instance.new("BodyVelocity", clone.Torso)
							vel.Velocity = clone.Torso.CFrame.lookVector * -5
							vel.MaxForce = Vector3.new(math.huge,math.huge,math.huge)
							using = false
							hit = Instance.new("Sound", clone.Torso)
							hit.SoundId = "rbxassetid://260430060"
							hit.Volume = 0
							hit1 = Instance.new("Sound", clone.Torso)
							hit1.SoundId = "rbxassetid://138087186"
							hit1.Volume = 0
							hit2 = Instance.new("Sound", clone.Torso)
							hit2.SoundId = "rbxassetid://131237241"
							hit2.Volume = 0
							hit3 = Instance.new("Sound", clone.Torso)
							hit3.SoundId = "rbxassetid://278062209"
							hit3.Volume = 0
							hit3.TimePosition = 0.33
							ded = Instance.new("Sound", clone.Torso)
							ded.SoundId = "rbxassetid://418892870"
							ded.Volume = 0
							local leftarm = clone:findFirstChild("Left Arm")
							local rightrm = clone:findFirstChild("Right Arm")
							local leftleg = clone:findFirstChild("Left Leg")
							local rightleg = clone:findFirstChild("Right Leg")
							local head = clone:findFirstChild("Head")
							for i, g in pairs(humanoid.Parent:GetChildren()) do
							    if g.ClassName == "Part" then
							        g:destroy()
							    end
							end
							for i, h in pairs(humanoid.Parent:GetChildren()) do
							    if h.ClassName == "Accesory" then
							        h:destroy()
							    end
							end
							for z,x in pairs(clone:GetChildren()) do
			                        if x.ClassName == "Accessory" then
			                            local handle = x:findFirstChild("Handle")
			                            if handle then
			                                local attachment = handle:findFirstChildOfClass("Attachment")
			                                if attachment then
			                                    for q,w in pairs(clone:GetChildren()) do
			                                        if w.Name == "Torso" or w.Name == "Head" then
			                                            local anotherone = w:findFirstChild(attachment.Name)
			                                            if attachment and anotherone then
			                                                local constraint = Instance.new("HingeConstraint", clone) --making fake weld
			                                                constraint.Attachment0 = attachment
			                                                constraint.Attachment1 = anotherone
			                                                constraint.LimitsEnabled = true
			                                                constraint.LowerAngle = 0
			                                                constraint.UpperAngle = 0
			                                            end
			                                        end
			                                    end
			                                end
			                            end
			                        end
			                    end
							if head and clone.Torso:findFirstChild("NeckAttachment") then
							            local attachment = Instance.new("Attachment", clone.Head)
							            attachment.Position = Vector3.new(0, -0.5, 0)
							            attachment.Name = "lol"
							            attachment.Visible = false
							            clone.Torso.NeckAttachment.Visible = false
							            clone.Torso.NeckAttachment.Position = clone.Torso.NeckAttachment.Position + Vector3.new(0,0,0)
							            local ball = Instance.new("BallSocketConstraint", clone)
							            ball.Attachment0 = clone.Torso.NeckAttachment
							            ball.Attachment1 = attachment
							            ball.LimitsEnabled = true
							            ball.TwistLimitsEnabled = true
							            ball.UpperAngle = 90
							            ball.Restitution = 0.5
							            ball.TwistUpperAngle = 90
							            ball.TwistLowerAngle = -90
							            local  collidepartofleftleg = Instance.new("Part", clone.Torso)
							            collidepartofleftleg.Name = "Bone"
							            collidepartofleftleg.Size = Vector3.new(0.7,0.7,0.7)
							            collidepartofleftleg.Transparency = 1
							            collidepartofleftleg:BreakJoints()
							            local weeld = Instance.new("Weld", collidepartofleftleg)
							            weeld.Part0 = collidepartofleftleg
							            weeld.Part1 = clone["Head"]
							        end
							if leftleg ~= nil then
							leftleg:BreakJoints()
							local glue = Instance.new("Glue", clone.Torso)
							glue.Part0 = clone.Torso
							glue.Part1 = leftleg
							glue.Name = "Left leg"
							local collider = Instance.new("Part", leftleg)
							collider.Position = Vector3.new(0,999,0)
							collider.Size = Vector3.new(1.5, 1, 1)
							collider.Shape = "Cylinder"
							local weld = Instance.new("Weld", collider)
							weld.Part0 = leftleg
							weld.Part1 = collider
							weld.C0 = CFrame.new(0,-0.2,0) * CFrame.fromEulerAnglesXYZ(0, 0, math.pi/2)
							collider.TopSurface = "Smooth"
							collider.BottomSurface = "Smooth"
							collider.formFactor = "Symmetric"
							glue.C0 = CFrame.new(-0.5, -1, 0, -0, -0, -1, 0, 1, 0, 1, 0, 0)
							glue.C1 = CFrame.new(-0, 1, 0, -0, -0, -1, 0, 1, 0, 1, 0, 0)
							collider.Transparency = 1
							end
							------------
							if rightleg ~= nil then
							rightleg:BreakJoints()
							local glue1 = Instance.new("Glue", clone.Torso)
							glue1.Part0 = clone.Torso
							glue1.Part1 = rightleg
							glue1.Name = "Right leg"
							local collider1 = Instance.new("Part", rightleg)
							collider1.Position = Vector3.new(0,999,0)
							collider1.Size = Vector3.new(1.5, 1, 1)
							collider1.Shape = "Cylinder"
							local weld1 = Instance.new("Weld", collider1)
							weld1.Part0 = rightleg
							weld1.Part1 = collider1
							weld1.C0 = CFrame.new(0,-0.2,0) * CFrame.fromEulerAnglesXYZ(0, 0, math.pi/2)
							collider1.TopSurface = "Smooth"
							collider1.BottomSurface = "Smooth"
							collider1.formFactor = "Symmetric"
							glue1.C0 = CFrame.new(0.5, -1, 0, 0, 0, 1, 0, 1, 0, -1, -0, -0)
							glue1.C1 = CFrame.new(0, 1, 0, 0, 0, 1, 0, 1, 0, -1, -0, -0)
							collider1.Transparency = 1
							end
							------------
							if rightrm ~= nil then
							rightrm:BreakJoints()
							rightrm.CFrame = clone.Torso.CFrame * CFrame.new(1.7,0,0)
							local glue11 = Instance.new("Glue", clone.Torso)
							glue11.Part0 = clone.Torso
							glue11.Part1 = rightrm
							glue11.Name = "Right shoulder"
							local collider11 = Instance.new("Part", rightrm)
							collider11.Position = Vector3.new(0,9999,0)
							collider11.Size = Vector3.new(1.5,1,1)
							collider11.Shape = "Cylinder"
							local weld11 = Instance.new("Weld", collider11)
							weld11.Part0 = rightrm
							weld11.Part1 = collider11
							weld11.C0 = CFrame.new(0,-0.2,0) * CFrame.fromEulerAnglesXYZ(0, 0, math.pi/2)
							collider11.TopSurface = "Smooth"
							collider11.BottomSurface = "Smooth"
							collider11.formFactor = "Symmetric"
							glue11.C0 = CFrame.new(1.5, 0.5, 0, 0, 0, 1, 0, 1, 0, -1, 0, 0)
							glue11.C1 = CFrame.new(0, 0.5, 0, 0, 0, 1, 0, 1, 0, -1, 0, 0)
							collider11.Transparency = 1
							end
							------------
							if leftarm ~= nil then
							leftarm.CFrame = clone.Torso.CFrame * CFrame.new(-1.7,0,0)
							leftarm:BreakJoints()
							local glue111 = Instance.new("Glue", clone.Torso)
							glue111.Part0 = clone.Torso
							glue111.Part1 = leftarm
							glue111.Name = "Left shoulder"
							local collider111 = Instance.new("Part", leftarm)
							collider111.Position = Vector3.new(0,9999,0)
							collider111.Size = Vector3.new(1.5,1,1)
							collider111.Shape = "Cylinder"
							local weld111 = Instance.new("Weld", collider111)
							weld111.Part0 = leftarm
							weld111.Part1 = collider111
							weld111.C0 = CFrame.new(0,-0.2,0) * CFrame.fromEulerAnglesXYZ(0, 0, math.pi/2)
							collider111.TopSurface = "Smooth"
							collider111.BottomSurface = "Smooth"
							collider111.formFactor = "Symmetric"
							glue111.C0 = CFrame.new(-1.5, 0.5, 0, 0, 0, -1, 0, 1, 0, 1, 0, 0)
							glue111.C1 = CFrame.new(0, 0.5, 0, 0, 0, -1, 0, 1, 0, 1, 0, 0)
							collider111.Transparency = 1
							----------------
							sensoring = Instance.new("Part", clone.Torso)
							sensoring.Size = Vector3.new(1.2,1.1,0.8)
							sensoring.CanCollide = false
							sensoring.Position = clone.Torso.Position
							local welder = Instance.new("Weld", sensoring)
							welder.Part0 = clone.Torso
							welder.Part1 = sensoring
							welder.C0 = welder.C0 * CFrame.new(0,0,1.05)
							sensoring.Transparency = 1
							-----------------
							sensoring1 = Instance.new("Part", clone.Torso)
							sensoring1.Size = Vector3.new(1.2,1.1,0.8)
							sensoring1.CanCollide = false
							sensoring1.Position = clone.Torso.Position
							local welder1 = Instance.new("Weld", sensoring)
							welder1.Part0 = clone.Torso
							welder1.Part1 = sensoring1
							welder1.C0 = welder1.C0 * CFrame.new(0,0,-1.05)
							sensoring1.Transparency = 1
							end
							local mathname = math.random(1,10) 
							if mathname == 1 then
								clone.Name = humanoid.Parent.Name.." (Shot to death by "..game.Players.LocalPlayer.Name..")"
							end
							if mathname == 2 then
								clone.Name = humanoid.Parent.Name.." (Killed by "..game.Players.LocalPlayer.Name..")"
							end
							if mathname == 3 then
								clone.Name = humanoid.Parent.Name.." (Shot by "..game.Players.LocalPlayer.Name..")"
							end
							if mathname == 4 then
								clone.Name = humanoid.Parent.Name.." (Rekted by "..game.Players.LocalPlayer.Name..")"
							end
							if mathname == 5 then
								clone.Name = humanoid.Parent.Name.." (rip by "..game.Players.LocalPlayer.Name..")"
							end
							if mathname == 6 then
								clone.Name = humanoid.Parent.Name.." (rest in piss "..humanoid.Parent.Name.." by "..game.Players.LocalPlayer.Name..")"
							end
							if mathname == 7 then
								clone.Name = humanoid.Parent.Name.." (rip in pepperoni "..humanoid.Parent.Name.." by "..game.Players.LocalPlayer.Name..")"
							end
							if mathname == 8 then
								clone.Name = humanoid.Parent.Name.." (uuhhh.wav'd by "..game.Players.LocalPlayer.Name..")"
							end
							if mathname == 9 then
								clone.Name = humanoid.Parent.Name.." (oof'd by "..game.Players.LocalPlayer.Name..")"
							end
							if mathname == 10 then
								clone.Name = humanoid.Parent.Name.." (insert child hurt sound by "..game.Players.LocalPlayer.Name..")"
							end
							ded:Play()
							vel:destroy()
							wait(0.5)
							local function touch()
							    if not using then
							        using = true
							        local Math = math.random(1,4)
							        if Math == 1 then
							            hit:Play()
							        end
							        if Math == 2 then
							            hit1:Play()
							        end
							        if Math == 3 then
							            hit2:Play()
							        end
							        if Math == 4 then
							            hit3:Play()
							        end
							        wait(0.1)
							        using = false
							    end
							end
							sensoring.Touched:connect(touch)
							sensoring1.Touched:connect(touch)
							while true do
								if clone:findFirstChild("Head") then
									clone.Head.CanCollide = false
							    end
							    game:GetService("RunService").Stepped:wait()
							end
						end
					else
						local clonede = hitsound:Clone()
						clonede.Parent = part
						clonede:Play()
						humanoid.Health = humanoid.Health - damage
					end
				end
			end
			projectile.Touched:connect(damag)
		end
		for i = 1,5 do
			rhandweld.C1 = rhandweld.C1 * CFrame.new(0,-0.2,0) * CFrame.fromEulerAnglesXYZ(-0.04,0,0)
			game:GetService("RunService").RenderStepped:wait()
		end
		light:destroy()
		for i = 1,10 do
			rhandweld.C1 = rhandweld.C1 * CFrame.new(0,0.1,0) * CFrame.fromEulerAnglesXYZ(0.02,0,0)
			game:GetService("RunService").RenderStepped:wait()
		end
		rhandweld.C1 = CFrame.new(0,1,0)
		shooting = false
	end
end
mouse.Button1Down:connect(shootdemskids)
while true do
	if (workspace.CurrentCamera.CFrame.p - game.Players.LocalPlayer.Character.Head.Position).magnitude < 2 then
		gunclone.Transparency = 0
		rhandclone.Transparency = 0
		lhandclone.Transparency = 0
	else
		gunclone.Transparency = 1
		rhandclone.Transparency = 1
		lhandclone.Transparency = 1
	end
	if Sound1.Parent == nil then
		Sound1.Parent = Part0
	end
	if deflect.Parent == nil then
		deflect.Parent = Part0
	end
	if hitsound.Parent == nil then
		hitsound.Parent = Part0
	end
	if hedshot.Parent == nil then
		hedshot.Parent = Part0
	end
	if wubwub.Parent == nil then
		wubwub.Parent = Part0
	end
	game:GetService("RunService").RenderStepped:wait()
end

Raw Text