Advertisement
wamandnj

Untitled

Jun 12th, 2019
632
0
Never
Not a member of Pastebin yet? Sign Up, it unlocks many cool features!
  1. if game:GetService("RunService"):IsClient() then error("Script must be server-side in order to work; use h/ and not hl/") end
  2. local Player,Mouse,mouse,UserInputService,ContextActionService = owner
  3. local RealPlayer = Player
  4. 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
  5.     script.Parent = InternalData.RealOwner.Character
  6.     local Event = Instance.new("RemoteEvent");Event.Name = "UserInput";InternalData.Event = Event
  7.     local function createObject (connections, index)
  8.         local proxy = newproxy (true);local meta = getmetatable (proxy);
  9.         local runbind = function (self, i, ...) connections[i]:Fire (...); end;
  10.         while (#connections > 0) do connections[table.remove(connections, 1)] = Instance.new ('BindableEvent');end;
  11.         meta.__index = function (self, i)
  12.             if (i == 'TriggerEvent') then return runbind end;
  13.             return connections[i] and connections[i].Event or index[i];
  14.         end;
  15.         meta.__newindex = index;meta.__metatable = false;return proxy
  16.     end;
  17.     local Mouse = createObject({"KeyUp","KeyDown","Button1Down","Button1Up"},{["Target"] = nil;["Hit"] = CFrame.new()})
  18.     local UserInputService = createObject({"InputBegan","InputEnded"},{})
  19.     local ContextActionService = {Actions={},BindAction = function(self,actionName,Func,touch,...)
  20.         self.Actions[actionName] = Func and {Name=actionName,Function=Func,Keys={...}} or nil
  21.     end};ContextActionService.UnBindAction = ContextActionService.BindAction
  22.     Event.OnServerEvent:Connect(function(FiredBy,Input)
  23.         if FiredBy ~= InternalData.RealOwner then return end
  24.         if Input.MouseEvent then
  25.             Mouse.Target = Input.Target;Mouse.Hit = Input.Hit
  26.         elseif Input.Sound then
  27.             if InternalData.SoundLoudness[Input.Sound] then InternalData.SoundLoudness[Input.Sound] = Input.Loudness end
  28.         else
  29.             local Begin = Input.UserInputState == Enum.UserInputState.Begin
  30.             if Input.UserInputType == Enum.UserInputType.MouseButton1 then return Mouse:TriggerEvent(Begin and "Button1Down" or "Button1Up") end
  31.             for _,Action in pairs(ContextActionService.Actions) do
  32.                 for _,Key in pairs(Action.Keys) do if Key==Input.KeyCode then Action.Function(Action.Name,Input.UserInputState,Input) end end
  33.             end
  34.             Mouse:TriggerEvent(Begin and "KeyDown" or "KeyUp",Input.KeyCode.Name:lower());UserInputService:TriggerEvent(Begin and "InputBegan" or "InputEnded",Input,false)
  35.         end
  36.     end)
  37.     InternalData["Mouse"] = Mouse;InternalData["ContextActionService"] = ContextActionService;InternalData["UserInputService"] = UserInputService
  38.     Event.Parent = NLS([[
  39.         local Player = owner;
  40.         local Sounds = {};
  41.         local Event = script:WaitForChild("UserInput");
  42.         local UserInputService = game:GetService("UserInputService");
  43.         local Mouse = Player:GetMouse();
  44.         local Input = function(Input,gameProcessedEvent)
  45.             if gameProcessedEvent then return end
  46.             Event:FireServer({KeyCode=Input.KeyCode,UserInputType=Input.UserInputType,UserInputState=Input.UserInputState})
  47.         end
  48.         Event.OnClientEvent:connect(function(Args)
  49.             if Args[1] == "NewSound" then table.insert(Sounds,Args[2]) end
  50.         end)
  51.         UserInputService.InputBegan:Connect(Input);UserInputService.InputEnded:Connect(Input)
  52.         local Hit,Target
  53.         while wait(1/30) do
  54.             for x,Sound in pairs(Sounds) do
  55.                 if Sound.Parent then Event:FireServer({["Sound"]=Sound,["Loudness"]=Sound.PlaybackLoudness}) end
  56.             end
  57.             if Hit ~= Mouse.Hit or Target ~= Mouse.Target then
  58.                 Hit = Mouse.Hit;Target = Mouse.Target;
  59.                 Event:FireServer({["MouseEvent"]=true,["Target"]=Target,["Hit"]=Hit})
  60.             end
  61.         end
  62.     ]],InternalData.RealOwner.Character)
  63. end
  64. InternalData.NewOwner = setmetatable({},{
  65.     __index = function (self,Index)
  66.             local Type = type(InternalData.RealOwner[Index])
  67.             if Type == "function" then
  68.                 if Index:lower() == "getmouse" or Index:lower() == "mouse" then
  69.                 return function (self)return InternalData["Mouse"] end
  70.                 end
  71.             return function (self,...)return InternalData.RealOwner[Index](InternalData.RealOwner,...) end
  72.         elseif Index == "FakePlayer" then
  73.             return true
  74.         end
  75.         return InternalData.RealOwner[Index]
  76.     end;
  77.     __tostring = function(self) return tostring(InternalData.RealOwner) end
  78. })
  79. --LoadLibrary("RbxUtility").Create
  80. InternalData.LoadLibrary = LoadLibrary;LoadLibrary = function(Library)
  81.     if Library == "RbxUtility" then
  82.         return setmetatable({},{
  83.             __tostring = function() return "RbxUtility" end;
  84.             __index = function(self, Index)
  85.                 if Index:lower() == "create" then
  86.                     return function(Type)
  87.                         return function(Data)
  88.                             Data = Data or {}
  89.                             local Inst = Instance.new(Type)
  90.                             for x,y in pairs(Data) do
  91.                                 if InternalData.RealObjs[y] then y = InternalData.RealObjs[y] end
  92.                                 if y == owner then y = InternalData.RealOwner end
  93.                                 Inst[x] = y
  94.                             end
  95.                             return Inst
  96.                         end
  97.                     end
  98.                 end
  99.                 return InternalData.LoadLibrary(Library)[Index]
  100.             end
  101.         })
  102.     end
  103.     return InternalData.LoadLibrary(Library)
  104. end
  105. InternalData.RealInstance = Instance;Instance = setmetatable({},{
  106.     __index = function (self,Index)
  107.         if Index:lower() == 'new' then
  108.             return function (Type, Parent)
  109.                 if Parent == owner then Parent = InternalData.RealOwner end
  110.                 if InternalData.RealObjs[Parent] then Parent = InternalData.RealObjs[Parent] end
  111.                 local Real = InternalData.RealInstance.new(Type,Parent)
  112.                 if not Type then return end
  113.                 if Type == "BillboardGui" then
  114.                     local ToReturn = setmetatable({},{
  115.                         __index = function (self,Index)
  116.                             if type(Real[Index]) == "function" then
  117.                                 if Index:lower() == "clone" then
  118.                                     return function (self)
  119.                                         local Real = Real:Clone()
  120.                                         local ToReturn = setmetatable({RealObject = Real},{
  121.                                             __index = function (self,Index)
  122.                                                 if type(Real[Index]) == "function" then return function (self,...) return Real[Index](Real,...)end end
  123.                                                 return Real[Index]
  124.                                             end;
  125.                                             __newindex = function (self,Index,Value)
  126.                                                 if InternalData.RealObjs[Value] then Value = InternalData.RealObjs[Value] end
  127.                                                 if Value == owner then Value = InternalData.RealOwner end
  128.                                                 Real[Index] = Value
  129.                                             end;
  130.                                             __tostring = function(self) return tostring(Real) end;
  131.                                         })
  132.                                         InternalData.RealObjs[ToReturn] = Real;return ToReturn;
  133.                                     end
  134.                                 end
  135.                                 return function (self,...) return Real[Index](Real,...)end
  136.                             end
  137.                             return Real[Index]
  138.                         end;
  139.                         __newindex = function (self,Index,Value)
  140.                             if InternalData.RealObjs[Value] then Value = InternalData.RealObjs[Value] end
  141.                             if Value == owner then Value = InternalData.RealOwner end
  142.                             Real[Index] = Value
  143.                         end;
  144.                         __tostring = function(self) return tostring(Real) end;
  145.                     })
  146.                     InternalData.RealObjs[ToReturn] = Real;return ToReturn;
  147.                 elseif Type:lower() == "sound" then
  148.                     Real.Parent = owner.Character;
  149.                     local ToReturn = setmetatable({RealObject = Real},{
  150.                         __index = function (self,Index)
  151.                             if Index:lower() == "playbackloudness" then
  152.                                 return InternalData.SoundLoudness[Real] or 0
  153.                             elseif type(Real[Index]) == "function" then
  154.                                 if Index:lower() == "clone" then
  155.                                     return function (self)
  156.                                         local Real = Real:Clone()
  157.                                         local ToReturn = setmetatable({},{
  158.                                             __index = function (self,Index)
  159.                                                 if type(Real[Index]) == "function" then return function (self,...) return Real[Index](Real,...)end end
  160.                                                 return Real[Index]
  161.                                             end;
  162.                                             __newindex = function (self,Index,Value)
  163.                                                 if InternalData.RealObjs[Value] then Value = InternalData.RealObjs[Value] end
  164.                                                 if Value == owner then Value = InternalData.RealOwner end
  165.                                                 Real[Index] = Value
  166.                                             end;
  167.                                             __tostring = function(self) return tostring(Real) end;
  168.                                         })
  169.                                         InternalData.RealObjs[ToReturn] = Real;return ToReturn;
  170.                                     end
  171.                                 end
  172.                                 return function (self,...) return Real[Index](Real,...)end
  173.                             end
  174.                             return Real[Index]
  175.                         end;
  176.                         __newindex = function (self,Index,Value)
  177.                             if InternalData.RealObjs[Value] then Value = InternalData.RealObjs[Value] end
  178.                             if Value == owner then Value = InternalData.RealOwner end
  179.                             Real[Index] = Value
  180.                         end;
  181.                         __tostring = function(self) return tostring(Real) end;
  182.                     })
  183.                     InternalData.RealObjs[ToReturn] = Real;InternalData.SoundLoudness[Real] = 0;repeat wait() until InternalData.Event.Parent InternalData.Event:FireClient(InternalData.RealOwner,{"NewSound",Real}) return ToReturn;
  184.                 else
  185.                     local ToReturn = setmetatable({RealObject = Real},{
  186.                         __index = function (self,Index)
  187.                             if type(Real[Index]) == "function" then
  188.                                 if Index:lower() == "clone" then
  189.                                     return function (self)
  190.                                         local Real = Real:Clone()
  191.                                         local ToReturn = setmetatable({},{
  192.                                             __index = function (self,Index)
  193.                                                 if type(Real[Index]) == "function" then return function (self,...) return Real[Index](Real,...)end end
  194.                                                 return Real[Index]
  195.                                             end;
  196.                                             __newindex = function (self,Index,Value)
  197.                                                 if InternalData.RealObjs[Value] then Value = InternalData.RealObjs[Value] end
  198.                                                 if Value == owner then Value = InternalData.RealOwner end
  199.                                                 Real[Index] = Value
  200.                                             end;
  201.                                             __tostring = function(self) return tostring(Real) end;
  202.                                         })
  203.                                         InternalData.RealObjs[ToReturn] = Real;return ToReturn;
  204.                                     end
  205.                                 end
  206.                                 return function (self,...) return Real[Index](Real,...)end
  207.                             end
  208.                             return Real[Index]
  209.                         end;
  210.                         __newindex = function (self,Index,Value)
  211.                             if InternalData.RealObjs[Value] then Value = InternalData.RealObjs[Value] end
  212.                             if Value == owner then Value = InternalData.RealOwner end
  213.                             Real[Index] = Value
  214.                         end;
  215.                         __tostring = function(self) return tostring(Real) end;
  216.                     })
  217.                     InternalData.RealObjs[ToReturn] = Real;return ToReturn;
  218.                 end
  219.             end
  220.         end
  221.         return InternalData.RealInstance[Index]
  222.     end;
  223.     __tostring = function(self) return tostring(InternalData.RealInstance) end;
  224. });
  225. InternalData.RealGame = game;game = setmetatable({},{
  226.     __index = function (self,Index)
  227.         if InternalData.RealGame[Index] then
  228.             local Type = type(InternalData.RealGame[Index])
  229.             if Type == "function" then
  230.                 if Index:lower() == "getservice" or Index:lower() == "service" then
  231.                     return function (self,Service)
  232.                         local FakeServices = {
  233.                             ["players"] = function()
  234.                                 return setmetatable({},{
  235.                                     __index = function (self2,Index2)
  236.                                         local RealService = InternalData.RealGame:GetService(Service)
  237.                                         local Type2 = type(RealService[Index2])
  238.                                         if Type2 == "function" then
  239.                                             return function (self,...) return RealService[Index2](RealService,...)end
  240.                                         else
  241.                                             if Index2:lower() == "localplayer" then return InternalData.NewOwner end
  242.                                             return RealService[Index2]
  243.                                         end
  244.                                     end;
  245.                                     __tostring = function(self) return tostring(InternalData.RealGame:GetService(Service)) end
  246.                                 })
  247.                             end;
  248.                             ["contextactionservice"] = function() return InternalData["ContextActionService"] end;
  249.                             ["userinputservice"] = function() return InternalData["UserInputService"] end;
  250.                             ["debris"] = function()
  251.                                 return setmetatable({},{
  252.                                     __index = function(self2,Index2)
  253.                                         local RealService = InternalData.RealGame:GetService(Service)
  254.                                         local Type2 = type(RealService[Index2])
  255.                                         if Type2 == "function" then
  256.                                             if Index2:lower() == "additem" then
  257.                                                 return function (self,Item,Time)
  258.                                                     if InternalData.RealObjs[Item] then Item = InternalData.RealObjs[Item] end
  259.                                                     return RealService:AddItem(Item,Time)
  260.                                                 end
  261.                                             end
  262.                                             return function (self,...) return RealService[Index2](RealService,...) end
  263.                                         end
  264.                                         return RealService[Index2]
  265.                                     end;
  266.                                     __tostring = function(self) return tostring(InternalData.RealGame:GetService("Debris")) end
  267.                                 })
  268.                             end;
  269.                             ["runservice"] = function()
  270.                                 return setmetatable({},{
  271.                                     __index = function(self2,Index2)
  272.                                         local RealService = InternalData.RealGame:GetService(Service)
  273.                                         local Type2 = type(RealService[Index2])
  274.                                         if Type2 == "function" then
  275.                                             return function (self,...) return RealService[Index2](RealService,...) end
  276.                                         else
  277.                                             local RunServices = {
  278.                                                 ["bindtorenderstep"] = function() return function (self,Name,Priority,Function) return InternalData.RealGame:GetService("RunService").Stepped:Connect(Function) end end;
  279.                                                 ["renderstepped"] = function() return RealService["Stepped"] end
  280.                                             }
  281.                                             if RunServices[Index2:lower()] then return RunServices[Index2:lower()]() end
  282.                                             return RealService[Index2]
  283.                                         end
  284.                                     end;
  285.                                     __tostring = function(self) return tostring(InternalData.RealGame:GetService("RunService")) end
  286.                                 })
  287.                             end
  288.                         }
  289.                         if FakeServices[Service:lower()] then return FakeServices[Service:lower()]() end
  290.                         return InternalData.RealGame:GetService(Service)
  291.                     end
  292.                 end
  293.                 return function (self,...) return InternalData.RealGame[Index](InternalData.RealGame,...) end
  294.             else
  295.                 if game:GetService(Index) then return game:GetService(Index) end
  296.                 return InternalData.RealGame[Index]
  297.             end
  298.         end
  299.         return nil
  300.     end;
  301.     __tostring = function(self) return tostring(InternalData.game) end
  302. });Game = game;owner = game:GetService("Players").LocalPlayer;script = Instance.new("Script");print("Complete!")
  303.  
  304. --By Rufus14
  305. mouse = game.Players.LocalPlayer:GetMouse()
  306. --
  307. model = Instance.new("Model", workspace.CurrentCamera)
  308. model.Name = "FPSArms"
  309. local humanoidiiiiiilololololol = Instance.new("Humanoid",  model)
  310. game.Players.LocalPlayer.Character.Archivable = true
  311. rhandclone = game.Players.LocalPlayer.Character["Right Arm"]:Clone()
  312. rhandclone:BreakJoints()
  313. local rhandcloneweld = Instance.new("Weld", rhandclone)
  314. rhandcloneweld.Part0 = game.Players.LocalPlayer.Character["Right Arm"]
  315. rhandcloneweld.Part1 = rhandclone
  316. rhandcloneweld.C0 = CFrame.new(0,0,0.5)
  317. rhandclone.Parent = model
  318. rhandclone.Transparency = 1
  319. --
  320. lhandclone = game.Players.LocalPlayer.Character["Left Arm"]:Clone()
  321. lhandclone:BreakJoints()
  322. local lhandcloneweld = Instance.new("Weld", lhandclone)
  323. lhandcloneweld.Part0 = game.Players.LocalPlayer.Character["Left Arm"]
  324. lhandcloneweld.Part1 = lhandclone
  325. lhandcloneweld.C0 = CFrame.new(0,0,0.5)
  326. lhandclone.Parent = model
  327. lhandclone.Transparency = 1
  328. --
  329. game.Players.LocalPlayer.Character.Torso.Neck.C1 = CFrame.new(0,-0.7,0)
  330. local rhandweld = Instance.new("Weld", game.Players.LocalPlayer.Character.Torso)
  331. rhandweld.Part0 = game.Players.LocalPlayer.Character.Torso
  332. rhandweld.Part1 = game.Players.LocalPlayer.Character["Right Arm"]
  333. rhandweld.C1 = CFrame.new(0,1,0)
  334. local lhandweld = Instance.new("Weld", game.Players.LocalPlayer.Character["Right Arm"])
  335. lhandweld.Part0 = game.Players.LocalPlayer.Character["Right Arm"]
  336. lhandweld.Part1 = game.Players.LocalPlayer.Character["Left Arm"]
  337. 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)
  338. canlo = true
  339. function canloo()
  340.     canlo = false
  341. end
  342. game.Players.LocalPlayer.Character.Humanoid.Died:connect(canloo)
  343. function look()
  344.     if mouse.Target then
  345.         if mouse.Target.Parent ~= "FPSArms" and canlo then
  346.             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))
  347.             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)
  348.             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)
  349.         end
  350.     else
  351.         if canlo then
  352.             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))
  353.         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)
  354.         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)
  355.         end
  356.     end
  357. end
  358. game:GetService("RunService").RenderStepped:connect(look)
  359. --Converted with ttyyuu12345's model to script plugin v4
  360. function sandbox(var,func)
  361.     local env = getfenv(func)
  362.     local newenv = setmetatable({},{
  363.         __index = function(self,k)
  364.             if k=="script" then
  365.                 return var
  366.             else
  367.                 return env[k]
  368.             end
  369.         end,
  370.     })
  371.     setfenv(func,newenv)
  372.     return func
  373. end
  374. cors = {}
  375. mas = Instance.new("Model",game:GetService("Lighting"))
  376. Part0 = Instance.new("Part")
  377. Sound1 = Instance.new("Sound")
  378. SpecialMesh2 = Instance.new("SpecialMesh")
  379. Part0.Name = "Shotgun"
  380. Part0.Parent = mas
  381. Part0.BrickColor = BrickColor.new("Really black")
  382. Part0.Reflectance = 1
  383. Part0.CanCollide = false
  384. Part0.FormFactor = Enum.FormFactor.Custom
  385. Part0.Size = Vector3.new(0.770000994, 0.930003285, 3.75999236)
  386. Part0.CFrame = CFrame.new(0.730844021, 5.84272289, -1.70900095, 0.999999881, 0, 0, 0, 0.999999881, 0, 0, 0, 0.99999994)
  387. Part0.Color = Color3.new(0.0666667, 0.0666667, 0.0666667)
  388. Part0.Position = Vector3.new(0.730844021, 5.84272289, -1.70900095)
  389. Part0.Color = Color3.new(0.0666667, 0.0666667, 0.0666667)
  390. Sound1.Name = "Fire"
  391. Sound1.Parent = Part0
  392. Sound1.SoundId = "rbxassetid://636316879"
  393. Sound1.Volume = 1
  394. SpecialMesh2.Parent = Part0
  395. SpecialMesh2.MeshId = "http://www.roblox.com/asset/?id=94219391"
  396. SpecialMesh2.Scale = Vector3.new(0.75, 0.75, 0.75)
  397. SpecialMesh2.TextureId = "rbxassetid://1153072548"
  398. SpecialMesh2.MeshType = Enum.MeshType.FileMesh
  399. SpecialMesh2.Scale = Vector3.new(0.75, 0.75, 0.75)
  400. for i,v in pairs(mas:GetChildren()) do
  401.     v.Parent = game:GetService("Players").LocalPlayer.Character
  402.     pcall(function() v:MakeJoints() end)
  403. end
  404. mas:Destroy()
  405. for i,v in pairs(cors) do
  406.     spawn(function()
  407.         pcall(v)
  408.     end)
  409. end
  410. --
  411. function die()
  412.     script:Remove()
  413. end
  414. game.Players.LocalPlayer.Character.Humanoid.Died:connect(die)
  415. gunclone = Part0:Clone()
  416. gunclone:BreakJoints()
  417. gunclone.Transparency = 1
  418. local guncloneweld = Instance.new("Weld", gunclone)
  419. guncloneweld.Part0 = Part0
  420. guncloneweld.Part1 = gunclone
  421. guncloneweld.C0 = CFrame.new(0,-0.5,0)
  422. gunclone.Parent = model
  423. --
  424. Weld0 = Instance.new("Weld", game.Players.LocalPlayer.Character["Right Arm"])
  425. 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)
  426. Weld0.Part0 = game.Players.LocalPlayer.Character["Right Arm"]
  427. Weld0.Part1 = Part0
  428. shooting = false
  429. local deflect = Instance.new("Sound", game.Players.LocalPlayer.Character.Head)
  430. deflect.MaxDistance = 100
  431. deflect.Volume = 10
  432. deflect.SoundId = "rbxassetid://341519743"
  433. deflect.Looped = true
  434. local hitsound = Instance.new("Sound", game.Players.LocalPlayer.Character.Head)
  435. hitsound.Volume = 10
  436. hitsound.SoundId = "rbxassetid://1489924400"
  437. local hedshot = Instance.new("Sound", game.Players.LocalPlayer.Character.Head)
  438. hedshot.Volume = 10
  439. hedshot.SoundId = "rbxassetid://147936251"
  440. local wubwub = Instance.new("Sound", game.Players.LocalPlayer.Character.Head)
  441. wubwub.Volume = 5
  442. wubwub.SoundId = "rbxassetid://425221796"
  443. wubbing = false
  444. function wubing(key)
  445.     key = key:lower()
  446.     if key == "q" then
  447.         if not wubbing then
  448.             wubbing = true
  449.             wubwub:Play()
  450.         else
  451.             wubbing = false
  452.             wubwub:Stop()
  453.         end
  454.     end
  455. end
  456. mouse.KeyDown:connect(wubing)
  457. function shootdemskids()
  458.     if not shooting then
  459.         shooting = true
  460.         Sound1:Play()
  461.         local light = Instance.new("PointLight", Part0)
  462.         light.Brightness = 10
  463.         for i = 1,5 do
  464.             local projectile = Instance.new("Part", workspace)
  465.             local clonede = deflect:Clone()
  466.             clonede.Parent = projectile
  467.             clonede:Play()
  468.             projectile.Size = Vector3.new(0.2,0.2,2.5)
  469.             projectile.CanCollide = false
  470.             projectile.CFrame = Part0.CFrame * CFrame.new(0,0,-4)
  471.             projectile.Material = "Neon"
  472.             projectile.Name = "Bullett"
  473.             projectile.CFrame = CFrame.new(projectile.Position, mouse.Hit.p)
  474.             local vel = Instance.new("BodyVelocity", projectile)
  475.             vel.MaxForce = Vector3.new(math.huge,math.huge,math.huge)
  476.             vel.Velocity = mouse.Hit.lookVector * 1000 + Vector3.new(math.random(-50,50),math.random(-50,50),0)
  477.             game.Debris:AddItem(projectile, 10)
  478.             local function damag(part)
  479.                 if part.Parent:findFirstChild("ragged") then
  480.                     projectile:destroy()
  481.                 end
  482.                 if part.Name ~= "Shotgun" and part.Name ~= "Bullett" then
  483.                     if part.Parent.ClassName == "Accessory" or part.Parent.Parent.ClassName == "Accessory" or part.ClassName == "Accessory" then
  484.                        
  485.                     else
  486.                         projectile:destroy()
  487.                     end
  488.                 end
  489.                 local humanoid = part.Parent:findFirstChildOfClass("Humanoid")
  490.                 if humanoid then
  491.                     if humanoid.Parent:findFirstChild("ragged") then
  492.                         projectile:Remove()
  493.                     end
  494.                 end
  495.                 if humanoid and part.Name ~= "Shotgun" and part.Name ~= "Bullett" and humanoid.Parent:findFirstChild("ragged") == nil then
  496.                     local damage = math.random(20,40)
  497.                     if part.Name == "Head" then
  498.                         hedshot:Play()
  499.                                 humanoid.Parent.Head.Transparency = 1
  500.                                 for i,v in pairs(humanoid.Parent:GetChildren()) do
  501.                                     if v.ClassName == "Accessory" or v.ClassName == "Hat" then
  502.                                         local handle = v:findFirstChild("Handle")
  503.                                         if handle then
  504.                                             handle.Transparency = 1
  505.                                         end
  506.                                     end
  507.                                 end
  508.                                 for i,v in pairs(humanoid.Parent.Head:GetChildren()) do
  509.                                     if v.ClassName == "Decal" then
  510.                                         v:destroy()
  511.                                     end
  512.                                 end
  513.                                 humanoid.Health = 0
  514.                             end
  515.                     if humanoid.Health <= damage then
  516.                         local ragdolled = Instance.new("BoolValue", humanoid.Parent)
  517.                         ragdolled.Name = "ragged"
  518.                         local uppertorso = humanoid.Parent:findFirstChild("UpperTorso")
  519.                         if uppertorso then
  520.                             humanoid.Parent:BreakJoints()
  521.                             while humanoid.Health >= 0.000000000001 do
  522.                                 game:GetService("RunService").RenderStepped:wait()
  523.                             end
  524.                             if humanoid.Parent:findFirstChild("HumanoidRootPart") then
  525.                                 humanoid.Parent.HumanoidRootPart.CanCollide = false
  526.                             end
  527.                             local function makeballlimb(attachone, attachtwo, upperang, lowang, twist)
  528.                                 local constraint = Instance.new("BallSocketConstraint", humanoid.Parent)
  529.                                 constraint.Attachment0 = attachone
  530.                                 constraint.Attachment1 = attachtwo
  531.                                 constraint.LimitsEnabled = true
  532.                                 constraint.TwistLimitsEnabled = true
  533.                                 constraint.TwistLowerAngle = lowang
  534.                                 constraint.TwistUpperAngle = upperang
  535.                                 constraint.UpperAngle = twist
  536.                             end
  537.                             local function makehingelimb(attachone, attachtwo, upperang, lowang)
  538.                                 local constraint = Instance.new("HingeConstraint", humanoid.Parent)
  539.                                 constraint.Attachment0 = attachone
  540.                                 constraint.Attachment1 = attachtwo
  541.                                 constraint.LimitsEnabled = true
  542.                                 constraint.LowerAngle = lowang
  543.                                 constraint.UpperAngle = upperang
  544.                             end
  545.                             for i,v in pairs(humanoid.Parent:GetChildren()) do --scan player
  546.                                 if v.ClassName == "Accessory" then
  547.                                     local findhandle = v:findFirstChild("Handle") --finding handle in accesorry
  548.                                     if findhandle then
  549.                                         local attach = findhandle:findFirstChildOfClass("Attachment")
  550.                                         for q,w in pairs(humanoid.Parent:GetChildren()) do --scan player
  551.                                             if w.Name == "UpperTorso" or w.Name == "Head" then
  552.                                                 attach1 = w:findFirstChild(attach.Name) --finding attachment in head/uppertorso
  553.                                             end
  554.                                         end
  555.                                         if attach and attach1 then
  556.                                             local constraint = Instance.new("HingeConstraint", humanoid.Parent) --making fake weld
  557.                                             constraint.Attachment0 = attach
  558.                                             constraint.Attachment1 = attach1
  559.                                             constraint.LimitsEnabled = true
  560.                                             constraint.LowerAngle = 0
  561.                                             constraint.UpperAngle = 0
  562.                                         end
  563.                                     end
  564.                                 end
  565.                             end
  566.                             if humanoid.Parent:findFirstChild("Head") and humanoid.Parent:findFirstChild("UpperTorso") then
  567.                                         local attachment = Instance.new("Attachment", humanoid.Parent.Head)
  568.                                         attachment.Position = Vector3.new(0, -0.5, 0)
  569.                                         attachment.Name = "lol"
  570.                                         attachment.Visible = false
  571.                                         humanoid.Parent.UpperTorso.NeckAttachment.Visible = false
  572.                                         humanoid.Parent.UpperTorso.NeckAttachment.Position = humanoid.Parent.UpperTorso.NeckAttachment.Position + Vector3.new(0,0,0)
  573.                                         local ball = Instance.new("BallSocketConstraint", humanoid.Parent)
  574.                                         ball.Attachment0 = humanoid.Parent.UpperTorso.NeckAttachment
  575.                                         ball.Attachment1 = attachment
  576.                                         ball.LimitsEnabled = true
  577.                                         ball.TwistLimitsEnabled = true
  578.                                         ball.UpperAngle = 40
  579.                                         ball.Restitution = 0.5
  580.                                         ball.TwistUpperAngle = 40
  581.                                         ball.TwistLowerAngle = -40
  582.                                         local  collidepartofleftleg = Instance.new("Part", humanoid.Parent.UpperTorso)
  583.                                         collidepartofleftleg.Name = "Bone"
  584.                                         collidepartofleftleg.Size = Vector3.new(0.7,0.7,0.7)
  585.                                         collidepartofleftleg.Transparency = 1
  586.                                         collidepartofleftleg:BreakJoints()
  587.                                         local weeld = Instance.new("Weld", collidepartofleftleg)
  588.                                         weeld.Part0 = collidepartofleftleg
  589.                                         weeld.Part1 = humanoid.Parent["Head"]
  590.                                         if humanoid.Parent.Head:findFirstChild("Neck") then
  591.                                             humanoid.Parent.Head.Neck:destroy()
  592.                                         end
  593.                                         if humanoid.Parent.Head:findFirstChild("face") then
  594.                                             humanoid.Parent.Head.face.Texture = "http://www.roblox.com/asset/?id=810245460"
  595.                                         end
  596.                             end
  597.                             local LeftUpperLeg = humanoid.Parent:findFirstChild("LeftUpperLeg")
  598.                             local LeftLowerLeg = humanoid.Parent:findFirstChild("LeftLowerLeg")
  599.                             --
  600.                             local RightUpperLeg = humanoid.Parent:findFirstChild("RightUpperLeg")
  601.                             local RightLowerLeg = humanoid.Parent:findFirstChild("RightLowerLeg")
  602.                             --
  603.                             local RightUpperArm = humanoid.Parent:findFirstChild("RightUpperArm")
  604.                             local RightLowerArm = humanoid.Parent:findFirstChild("RightLowerArm")
  605.                             --
  606.                             local LeftUpperArm = humanoid.Parent:findFirstChild("LeftUpperArm")
  607.                             local LeftLowerArm = humanoid.Parent:findFirstChild("LeftLowerArm")
  608.                             --Foot & Hands--
  609.                            
  610.                             local LeftFoot = humanoid.Parent:findFirstChild("LeftFoot")
  611.                             local RightFoot = humanoid.Parent:findFirstChild("RightFoot")
  612.                             --
  613.                             local LeftHand = humanoid.Parent:findFirstChild("LeftHand")
  614.                             local RightHand = humanoid.Parent:findFirstChild("RightHand")
  615.                            
  616.                             --END--
  617.                             --TORSOS--
  618.                            
  619.                             local UpperTorso = humanoid.Parent:findFirstChild("UpperTorso")
  620.                             local LowerTorso = humanoid.Parent:findFirstChild("LowerTorso")
  621.                            
  622.                             --END--
  623.                             local function search(datone)
  624.                                 for i,v in pairs(datone:GetChildren()) do
  625.                                     search(v)
  626.                                     if v.ClassName == "Sound" then
  627.                                         v.Volume = 0
  628.                                     end
  629.                                 end
  630.                             end
  631.                             search(humanoid.Parent)
  632.                             local clonede = hitsound:Clone()
  633.                             clonede.Parent = part
  634.                             clonede:Play()
  635.                             if part.Name == "Head" then
  636.                                 humanoid.Parent.Head.Transparency = 1
  637.                                 for i,v in pairs(humanoid.Parent:GetChildren()) do
  638.                                     if v.ClassName == "Accessory" or v.ClassName == "Hat" then
  639.                                         local handle = v:findFirstChild("Handle")
  640.                                         if handle then
  641.                                             handle.Transparency = 1
  642.                                         end
  643.                                     end
  644.                                 end
  645.                                 for i,v in pairs(humanoid.Parent.Head:GetChildren()) do
  646.                                     if v.ClassName == "Decal" then
  647.                                         v:destroy()
  648.                                     end
  649.                                 end
  650.                                 humanoid.Parent:BreakJoints()
  651.                             end
  652.                             if LowerTorso then
  653.                                 if LeftUpperLeg then
  654.                                     local function uncollidee()
  655.                                         LeftUpperLeg.CanCollide = false
  656.                                     end
  657.                                     game:GetService("RunService").Stepped:connect(uncollidee)
  658.                                     makeballlimb(LowerTorso["LeftHipRigAttachment"], LeftUpperLeg["LeftHipRigAttachment"], 50,-50, 90)
  659.                                 end
  660.                                 if RightUpperLeg then
  661.                                     local function uncollidee()
  662.                                         RightUpperLeg.CanCollide = false
  663.                                     end
  664.                                     game:GetService("RunService").Stepped:connect(uncollidee)
  665.                                     makeballlimb(LowerTorso["RightHipRigAttachment"], RightUpperLeg["RightHipRigAttachment"], 50,-50, 90)
  666.                                 end
  667.                                 if LeftLowerLeg then
  668.                                     makehingelimb(LeftUpperLeg["LeftKneeRigAttachment"], LeftLowerLeg["LeftKneeRigAttachment"], 0,-90)
  669.                                 end
  670.                                 if RightLowerLeg then
  671.                                     makehingelimb(RightUpperLeg["RightKneeRigAttachment"], RightLowerLeg["RightKneeRigAttachment"], 0,-90)
  672.                                 end
  673.                                 if LeftFoot then
  674.                                     makehingelimb(LeftLowerLeg["LeftAnkleRigAttachment"], LeftFoot["LeftAnkleRigAttachment"], 30, -30)
  675.                                 end
  676.                                 if RightFoot then
  677.                                     makehingelimb(RightLowerLeg["RightAnkleRigAttachment"], RightFoot["RightAnkleRigAttachment"], 30, -30)
  678.                                 end
  679.                                 if UpperTorso then
  680.                                     makehingelimb(UpperTorso["WaistRigAttachment"], LowerTorso["WaistRigAttachment"], 30, -30)
  681.                                 end
  682.                             end
  683.                             if UpperTorso then
  684.                                 local vel = Instance.new("BodyVelocity", UpperTorso)
  685.                                 vel.MaxForce = Vector3.new(math.huge,math.huge,math.huge)
  686.                                 vel.Velocity = game.Players.LocalPlayer.Character.Torso.CFrame.lookVector * 10
  687.                                 game.Debris:AddItem(vel, 0.1)
  688.                                 local canhit = true
  689.                                 local hitval = 15
  690.                                 local uptor = humanoid.Parent.UpperTorso
  691.                                 if RightUpperArm then
  692.                                     local function uncollidee()
  693.                                         RightUpperArm.CanCollide = false
  694.                                     end
  695.                                     game:GetService("RunService").Stepped:connect(uncollidee)
  696.                                     makeballlimb(RightUpperArm["RightShoulderRigAttachment"], UpperTorso["RightShoulderRigAttachment"], 90,-50, 180)
  697.                                 end
  698.                                 if RightLowerArm then
  699.                                     makehingelimb(RightLowerArm["RightElbowRigAttachment"], RightUpperArm["RightElbowRigAttachment"], 0,-90)
  700.                                 end
  701.                                 if RightHand then
  702.                                     makehingelimb(RightHand["RightWristRigAttachment"], RightLowerArm["RightWristRigAttachment"], 30,30)
  703.                                 end
  704.                                 if LeftUpperArm then
  705.                                     local function uncollidee()
  706.                                         LeftUpperArm.CanCollide = false
  707.                                     end
  708.                                     game:GetService("RunService").Stepped:connect(uncollidee)
  709.                                     makeballlimb(LeftUpperArm["LeftShoulderRigAttachment"], UpperTorso["LeftShoulderRigAttachment"], 90,-50, 180)
  710.                                 end
  711.                                 if LeftLowerArm then
  712.                                     makehingelimb(LeftLowerArm["LeftElbowRigAttachment"], LeftUpperArm["LeftElbowRigAttachment"], 0,-90)
  713.                                 end
  714.                                 if LeftHand then
  715.                                     makehingelimb(LeftHand["LeftWristRigAttachment"], LeftLowerArm["LeftWristRigAttachment"], 30,30)
  716.                                 end
  717.                             end
  718.                         elseif humanoid.Parent:findFirstChild("Torso") then
  719.                             humanoid.Parent.Archivable = true
  720.                             humanoid.PlatformStand = true
  721.                             local function search(datone)
  722.                                 for i,v in pairs(datone:GetChildren()) do
  723.                                     search(v)
  724.                                     if v.ClassName == "Sound" then
  725.                                         v.Volume = 0
  726.                                     end
  727.                                 end
  728.                             end
  729.                             search(humanoid.Parent)
  730.                             local clonede = hitsound:Clone()
  731.                             clonede.Parent = part
  732.                             clonede:Play()
  733.                             if part.Name == "Head" then
  734.                                 humanoid.Parent.Head.Transparency = 1
  735.                                 for i,v in pairs(humanoid.Parent:GetChildren()) do
  736.                                     if v.ClassName == "Accessory" or v.ClassName == "Hat" then
  737.                                         local handle = v:findFirstChild("Handle")
  738.                                         if handle then
  739.                                             handle.Transparency = 1
  740.                                         end
  741.                                     end
  742.                                 end
  743.                                 for i,v in pairs(humanoid.Parent.Head:GetChildren()) do
  744.                                     if v.ClassName == "Decal" then
  745.                                         v:destroy()
  746.                                     end
  747.                                 end
  748.                                 humanoid.Parent:BreakJoints()
  749.                             end
  750.                             local clone = humanoid.Parent:Clone()
  751.                             clone.Parent = workspace
  752.                             game.Debris:AddItem(clone, 60)
  753.                             for i,v in pairs(clone:GetChildren()) do
  754.                                 if v.ClassName == "Script" or v.ClassName == "LocalScript" then
  755.                                     v:Remove()
  756.                                 end
  757.                                 for i,p in pairs(v:GetChildren()) do
  758.                                 if p.ClassName == "Weld" or p.ClassName == "Motor6D" or p.ClassName == "BodyVelocity" then
  759.                                     p:Remove()
  760.                                 end
  761.                             end
  762.                             end
  763.                             for i,t in pairs(humanoid.Parent:GetChildren()) do
  764.                                 if t.ClassName == "Accessory" or t.ClassName == "ForceField" then
  765.                                     t:Remove()
  766.                                 end
  767.                             end
  768.                             local vel = Instance.new("BodyVelocity", clone.Torso)
  769.                             vel.MaxForce = Vector3.new(math.huge,math.huge,math.huge)
  770.                             vel.Velocity = game.Players.LocalPlayer.Character.Torso.CFrame.lookVector * 15
  771.                             game.Debris:AddItem(vel, 0.1)
  772.                             vel = Instance.new("BodyVelocity", clone.Torso)
  773.                             vel.Velocity = clone.Torso.CFrame.lookVector * -5
  774.                             vel.MaxForce = Vector3.new(math.huge,math.huge,math.huge)
  775.                             using = false
  776.                             hit = Instance.new("Sound", clone.Torso)
  777.                             hit.SoundId = "rbxassetid://260430060"
  778.                             hit.Volume = 0
  779.                             hit1 = Instance.new("Sound", clone.Torso)
  780.                             hit1.SoundId = "rbxassetid://138087186"
  781.                             hit1.Volume = 0
  782.                             hit2 = Instance.new("Sound", clone.Torso)
  783.                             hit2.SoundId = "rbxassetid://131237241"
  784.                             hit2.Volume = 0
  785.                             hit3 = Instance.new("Sound", clone.Torso)
  786.                             hit3.SoundId = "rbxassetid://278062209"
  787.                             hit3.Volume = 0
  788.                             hit3.TimePosition = 0.33
  789.                             ded = Instance.new("Sound", clone.Torso)
  790.                             ded.SoundId = "rbxassetid://418892870"
  791.                             ded.Volume = 0
  792.                             local leftarm = clone:findFirstChild("Left Arm")
  793.                             local rightrm = clone:findFirstChild("Right Arm")
  794.                             local leftleg = clone:findFirstChild("Left Leg")
  795.                             local rightleg = clone:findFirstChild("Right Leg")
  796.                             local head = clone:findFirstChild("Head")
  797.                             for i, g in pairs(humanoid.Parent:GetChildren()) do
  798.                                 if g.ClassName == "Part" then
  799.                                     g:destroy()
  800.                                 end
  801.                             end
  802.                             for i, h in pairs(humanoid.Parent:GetChildren()) do
  803.                                 if h.ClassName == "Accesory" then
  804.                                     h:destroy()
  805.                                 end
  806.                             end
  807.                             for z,x in pairs(clone:GetChildren()) do
  808.                                     if x.ClassName == "Accessory" then
  809.                                         local handle = x:findFirstChild("Handle")
  810.                                         if handle then
  811.                                             local attachment = handle:findFirstChildOfClass("Attachment")
  812.                                             if attachment then
  813.                                                 for q,w in pairs(clone:GetChildren()) do
  814.                                                     if w.Name == "Torso" or w.Name == "Head" then
  815.                                                         local anotherone = w:findFirstChild(attachment.Name)
  816.                                                         if attachment and anotherone then
  817.                                                             local constraint = Instance.new("HingeConstraint", clone) --making fake weld
  818.                                                             constraint.Attachment0 = attachment
  819.                                                             constraint.Attachment1 = anotherone
  820.                                                             constraint.LimitsEnabled = true
  821.                                                             constraint.LowerAngle = 0
  822.                                                             constraint.UpperAngle = 0
  823.                                                         end
  824.                                                     end
  825.                                                 end
  826.                                             end
  827.                                         end
  828.                                     end
  829.                                 end
  830.                             if head and clone.Torso:findFirstChild("NeckAttachment") then
  831.                                         local attachment = Instance.new("Attachment", clone.Head)
  832.                                         attachment.Position = Vector3.new(0, -0.5, 0)
  833.                                         attachment.Name = "lol"
  834.                                         attachment.Visible = false
  835.                                         clone.Torso.NeckAttachment.Visible = false
  836.                                         clone.Torso.NeckAttachment.Position = clone.Torso.NeckAttachment.Position + Vector3.new(0,0,0)
  837.                                         local ball = Instance.new("BallSocketConstraint", clone)
  838.                                         ball.Attachment0 = clone.Torso.NeckAttachment
  839.                                         ball.Attachment1 = attachment
  840.                                         ball.LimitsEnabled = true
  841.                                         ball.TwistLimitsEnabled = true
  842.                                         ball.UpperAngle = 90
  843.                                         ball.Restitution = 0.5
  844.                                         ball.TwistUpperAngle = 90
  845.                                         ball.TwistLowerAngle = -90
  846.                                         local  collidepartofleftleg = Instance.new("Part", clone.Torso)
  847.                                         collidepartofleftleg.Name = "Bone"
  848.                                         collidepartofleftleg.Size = Vector3.new(0.7,0.7,0.7)
  849.                                         collidepartofleftleg.Transparency = 1
  850.                                         collidepartofleftleg:BreakJoints()
  851.                                         local weeld = Instance.new("Weld", collidepartofleftleg)
  852.                                         weeld.Part0 = collidepartofleftleg
  853.                                         weeld.Part1 = clone["Head"]
  854.                                     end
  855.                             if leftleg ~= nil then
  856.                             leftleg:BreakJoints()
  857.                             local glue = Instance.new("Glue", clone.Torso)
  858.                             glue.Part0 = clone.Torso
  859.                             glue.Part1 = leftleg
  860.                             glue.Name = "Left leg"
  861.                             local collider = Instance.new("Part", leftleg)
  862.                             collider.Position = Vector3.new(0,999,0)
  863.                             collider.Size = Vector3.new(1.5, 1, 1)
  864.                             collider.Shape = "Cylinder"
  865.                             local weld = Instance.new("Weld", collider)
  866.                             weld.Part0 = leftleg
  867.                             weld.Part1 = collider
  868.                             weld.C0 = CFrame.new(0,-0.2,0) * CFrame.fromEulerAnglesXYZ(0, 0, math.pi/2)
  869.                             collider.TopSurface = "Smooth"
  870.                             collider.BottomSurface = "Smooth"
  871.                             collider.formFactor = "Symmetric"
  872.                             glue.C0 = CFrame.new(-0.5, -1, 0, -0, -0, -1, 0, 1, 0, 1, 0, 0)
  873.                             glue.C1 = CFrame.new(-0, 1, 0, -0, -0, -1, 0, 1, 0, 1, 0, 0)
  874.                             collider.Transparency = 1
  875.                             end
  876.                             ------------
  877.                             if rightleg ~= nil then
  878.                             rightleg:BreakJoints()
  879.                             local glue1 = Instance.new("Glue", clone.Torso)
  880.                             glue1.Part0 = clone.Torso
  881.                             glue1.Part1 = rightleg
  882.                             glue1.Name = "Right leg"
  883.                             local collider1 = Instance.new("Part", rightleg)
  884.                             collider1.Position = Vector3.new(0,999,0)
  885.                             collider1.Size = Vector3.new(1.5, 1, 1)
  886.                             collider1.Shape = "Cylinder"
  887.                             local weld1 = Instance.new("Weld", collider1)
  888.                             weld1.Part0 = rightleg
  889.                             weld1.Part1 = collider1
  890.                             weld1.C0 = CFrame.new(0,-0.2,0) * CFrame.fromEulerAnglesXYZ(0, 0, math.pi/2)
  891.                             collider1.TopSurface = "Smooth"
  892.                             collider1.BottomSurface = "Smooth"
  893.                             collider1.formFactor = "Symmetric"
  894.                             glue1.C0 = CFrame.new(0.5, -1, 0, 0, 0, 1, 0, 1, 0, -1, -0, -0)
  895.                             glue1.C1 = CFrame.new(0, 1, 0, 0, 0, 1, 0, 1, 0, -1, -0, -0)
  896.                             collider1.Transparency = 1
  897.                             end
  898.                             ------------
  899.                             if rightrm ~= nil then
  900.                             rightrm:BreakJoints()
  901.                             rightrm.CFrame = clone.Torso.CFrame * CFrame.new(1.7,0,0)
  902.                             local glue11 = Instance.new("Glue", clone.Torso)
  903.                             glue11.Part0 = clone.Torso
  904.                             glue11.Part1 = rightrm
  905.                             glue11.Name = "Right shoulder"
  906.                             local collider11 = Instance.new("Part", rightrm)
  907.                             collider11.Position = Vector3.new(0,9999,0)
  908.                             collider11.Size = Vector3.new(1.5,1,1)
  909.                             collider11.Shape = "Cylinder"
  910.                             local weld11 = Instance.new("Weld", collider11)
  911.                             weld11.Part0 = rightrm
  912.                             weld11.Part1 = collider11
  913.                             weld11.C0 = CFrame.new(0,-0.2,0) * CFrame.fromEulerAnglesXYZ(0, 0, math.pi/2)
  914.                             collider11.TopSurface = "Smooth"
  915.                             collider11.BottomSurface = "Smooth"
  916.                             collider11.formFactor = "Symmetric"
  917.                             glue11.C0 = CFrame.new(1.5, 0.5, 0, 0, 0, 1, 0, 1, 0, -1, 0, 0)
  918.                             glue11.C1 = CFrame.new(0, 0.5, 0, 0, 0, 1, 0, 1, 0, -1, 0, 0)
  919.                             collider11.Transparency = 1
  920.                             end
  921.                             ------------
  922.                             if leftarm ~= nil then
  923.                             leftarm.CFrame = clone.Torso.CFrame * CFrame.new(-1.7,0,0)
  924.                             leftarm:BreakJoints()
  925.                             local glue111 = Instance.new("Glue", clone.Torso)
  926.                             glue111.Part0 = clone.Torso
  927.                             glue111.Part1 = leftarm
  928.                             glue111.Name = "Left shoulder"
  929.                             local collider111 = Instance.new("Part", leftarm)
  930.                             collider111.Position = Vector3.new(0,9999,0)
  931.                             collider111.Size = Vector3.new(1.5,1,1)
  932.                             collider111.Shape = "Cylinder"
  933.                             local weld111 = Instance.new("Weld", collider111)
  934.                             weld111.Part0 = leftarm
  935.                             weld111.Part1 = collider111
  936.                             weld111.C0 = CFrame.new(0,-0.2,0) * CFrame.fromEulerAnglesXYZ(0, 0, math.pi/2)
  937.                             collider111.TopSurface = "Smooth"
  938.                             collider111.BottomSurface = "Smooth"
  939.                             collider111.formFactor = "Symmetric"
  940.                             glue111.C0 = CFrame.new(-1.5, 0.5, 0, 0, 0, -1, 0, 1, 0, 1, 0, 0)
  941.                             glue111.C1 = CFrame.new(0, 0.5, 0, 0, 0, -1, 0, 1, 0, 1, 0, 0)
  942.                             collider111.Transparency = 1
  943.                             ----------------
  944.                             sensoring = Instance.new("Part", clone.Torso)
  945.                             sensoring.Size = Vector3.new(1.2,1.1,0.8)
  946.                             sensoring.CanCollide = false
  947.                             sensoring.Position = clone.Torso.Position
  948.                             local welder = Instance.new("Weld", sensoring)
  949.                             welder.Part0 = clone.Torso
  950.                             welder.Part1 = sensoring
  951.                             welder.C0 = welder.C0 * CFrame.new(0,0,1.05)
  952.                             sensoring.Transparency = 1
  953.                             -----------------
  954.                             sensoring1 = Instance.new("Part", clone.Torso)
  955.                             sensoring1.Size = Vector3.new(1.2,1.1,0.8)
  956.                             sensoring1.CanCollide = false
  957.                             sensoring1.Position = clone.Torso.Position
  958.                             local welder1 = Instance.new("Weld", sensoring)
  959.                             welder1.Part0 = clone.Torso
  960.                             welder1.Part1 = sensoring1
  961.                             welder1.C0 = welder1.C0 * CFrame.new(0,0,-1.05)
  962.                             sensoring1.Transparency = 1
  963.                             end
  964.                             local mathname = math.random(1,10)
  965.                             if mathname == 1 then
  966.                                 clone.Name = humanoid.Parent.Name.." (Shot to death by "..game.Players.LocalPlayer.Name..")"
  967.                             end
  968.                             if mathname == 2 then
  969.                                 clone.Name = humanoid.Parent.Name.." (Killed by "..game.Players.LocalPlayer.Name..")"
  970.                             end
  971.                             if mathname == 3 then
  972.                                 clone.Name = humanoid.Parent.Name.." (Shot by "..game.Players.LocalPlayer.Name..")"
  973.                             end
  974.                             if mathname == 4 then
  975.                                 clone.Name = humanoid.Parent.Name.." (Rekted by "..game.Players.LocalPlayer.Name..")"
  976.                             end
  977.                             if mathname == 5 then
  978.                                 clone.Name = humanoid.Parent.Name.." (rip by "..game.Players.LocalPlayer.Name..")"
  979.                             end
  980.                             if mathname == 6 then
  981.                                 clone.Name = humanoid.Parent.Name.." (rest in piss "..humanoid.Parent.Name.." by "..game.Players.LocalPlayer.Name..")"
  982.                             end
  983.                             if mathname == 7 then
  984.                                 clone.Name = humanoid.Parent.Name.." (rip in pepperoni "..humanoid.Parent.Name.." by "..game.Players.LocalPlayer.Name..")"
  985.                             end
  986.                             if mathname == 8 then
  987.                                 clone.Name = humanoid.Parent.Name.." (uuhhh.wav'd by "..game.Players.LocalPlayer.Name..")"
  988.                             end
  989.                             if mathname == 9 then
  990.                                 clone.Name = humanoid.Parent.Name.." (oof'd by "..game.Players.LocalPlayer.Name..")"
  991.                             end
  992.                             if mathname == 10 then
  993.                                 clone.Name = humanoid.Parent.Name.." (insert child hurt sound by "..game.Players.LocalPlayer.Name..")"
  994.                             end
  995.                             ded:Play()
  996.                             vel:destroy()
  997.                             wait(0.5)
  998.                             local function touch()
  999.                                 if not using then
  1000.                                     using = true
  1001.                                     local Math = math.random(1,4)
  1002.                                     if Math == 1 then
  1003.                                         hit:Play()
  1004.                                     end
  1005.                                     if Math == 2 then
  1006.                                         hit1:Play()
  1007.                                     end
  1008.                                     if Math == 3 then
  1009.                                         hit2:Play()
  1010.                                     end
  1011.                                     if Math == 4 then
  1012.                                         hit3:Play()
  1013.                                     end
  1014.                                     wait(0.1)
  1015.                                     using = false
  1016.                                 end
  1017.                             end
  1018.                             sensoring.Touched:connect(touch)
  1019.                             sensoring1.Touched:connect(touch)
  1020.                             while true do
  1021.                                 if clone:findFirstChild("Head") then
  1022.                                     clone.Head.CanCollide = false
  1023.                                 end
  1024.                                 game:GetService("RunService").Stepped:wait()
  1025.                             end
  1026.                         end
  1027.                     else
  1028.                         local clonede = hitsound:Clone()
  1029.                         clonede.Parent = part
  1030.                         clonede:Play()
  1031.                         humanoid.Health = humanoid.Health - damage
  1032.                     end
  1033.                 end
  1034.             end
  1035.             projectile.Touched:connect(damag)
  1036.         end
  1037.         for i = 1,5 do
  1038.             rhandweld.C1 = rhandweld.C1 * CFrame.new(0,-0.2,0) * CFrame.fromEulerAnglesXYZ(-0.04,0,0)
  1039.             game:GetService("RunService").RenderStepped:wait()
  1040.         end
  1041.         light:destroy()
  1042.         for i = 1,10 do
  1043.             rhandweld.C1 = rhandweld.C1 * CFrame.new(0,0.1,0) * CFrame.fromEulerAnglesXYZ(0.02,0,0)
  1044.             game:GetService("RunService").RenderStepped:wait()
  1045.         end
  1046.         rhandweld.C1 = CFrame.new(0,1,0)
  1047.         shooting = false
  1048.     end
  1049. end
  1050. mouse.Button1Down:connect(shootdemskids)
  1051. while true do
  1052.     if (workspace.CurrentCamera.CFrame.p - game.Players.LocalPlayer.Character.Head.Position).magnitude < 2 then
  1053.         gunclone.Transparency = 0
  1054.         rhandclone.Transparency = 0
  1055.         lhandclone.Transparency = 0
  1056.     else
  1057.         gunclone.Transparency = 1
  1058.         rhandclone.Transparency = 1
  1059.         lhandclone.Transparency = 1
  1060.     end
  1061.     if Sound1.Parent == nil then
  1062.         Sound1.Parent = Part0
  1063.     end
  1064.     if deflect.Parent == nil then
  1065.         deflect.Parent = Part0
  1066.     end
  1067.     if hitsound.Parent == nil then
  1068.         hitsound.Parent = Part0
  1069.     end
  1070.     if hedshot.Parent == nil then
  1071.         hedshot.Parent = Part0
  1072.     end
  1073.     if wubwub.Parent == nil then
  1074.         wubwub.Parent = Part0
  1075.     end
  1076.     game:GetService("RunService").RenderStepped:wait()
  1077. end
Advertisement
Add Comment
Please, Sign In to add comment
Advertisement