Advertisement
Prephy

AK47 (no instakill)

Aug 4th, 2021 (edited)
1,219
0
Never
Not a member of Pastebin yet? Sign Up, it unlocks many cool features!
  1. --AK47 by Protofer_S
  2. local Players = game:GetService("Players")
  3. local Player = owner
  4. local Tool = Instance.new("Tool") Tool.Name='AK47' Tool.CanBeDropped=false
  5. local Handle = Instance.new("Part",Tool) Handle.Size=Vector3.new(0.5, 0.99, 0.341) Handle.Name='Handle'
  6. local mesh = Instance.new("SpecialMesh",Handle) mesh.MeshId='rbxassetid://3824749' mesh.TextureId='rbxassetid://159740858' mesh.Scale=Vector3.new(2, 1.3, 1.1)
  7. Tool.GripForward=Vector3.new(0, 0, -1) Tool.GripPos=Vector3.new(0, -0.2, 0.8) Tool.GripRight=Vector3.new(1, 0, 0) Tool.GripUp=Vector3.new(0, 1, 0)
  8.  
  9. Tool.Parent=Player.Backpack
  10. tool = Tool
  11. local player = nil
  12. local remote = Instance.new("RemoteEvent",tool) remote.Name='hit'
  13. local pos = Vector3.new(0,0,0)
  14. local enabled=true
  15. local hitshot = Handle.CFrame
  16. script.Parent=Tool
  17. local run = game:GetService("RunService")
  18. local message
  19. local shooting
  20.  
  21.  
  22. function mouse()
  23.     NLS([[local Tool = script.Parent
  24. local Player = game:GetService("Players").LocalPlayer
  25. local remote = Tool:WaitForChild('hit',5)
  26. local mouse = Player:GetMouse()
  27. local run = game:GetService("RunService")
  28. local shooting=false
  29. local enabled=false
  30.  
  31. Tool.Equipped:Connect(function()
  32. enabled=true
  33. end)
  34.  
  35. Tool.Unequipped:Connect(function()
  36. enabled=false
  37. end)
  38.  
  39. mouse.Button1Down:connect(function(the)
  40.  
  41.     shooting=true
  42.  
  43. end)
  44.  
  45. mouse.Button1Up:connect(function(the)
  46.  
  47.     shooting=false
  48.  
  49. end)
  50.  
  51.  
  52.  
  53. run.RenderStepped:Connect(function()
  54.     if shooting==true then
  55.      if enabled==true then
  56.             remote:FireServer(mouse.Hit.p,true)
  57.         else
  58.             remote:FireServer(mouse.Hit.p,false)
  59.         end
  60.     else
  61.         remote:FireServer(mouse.Hit.p,false)
  62.     end
  63. end)
  64.  
  65.  
  66. ]],tool)
  67. end
  68.  
  69.  
  70. function effect(vict)
  71.     local headcf = vict
  72.     for i = 1,5 do
  73.         local bshpere2 = Instance.new("WedgePart",nil)
  74.         bshpere2.Size = Vector3.new(math.random(2,6),math.random(2,6),0.03)
  75.         bshpere2.Transparency = 1
  76.         bshpere2.CanCollide = false
  77.         bshpere2.Anchored = true
  78.         local decal = Instance.new("Decal",bshpere2)
  79.         decal.Texture = "rbxassetid://122022304"
  80.         local decal2 = Instance.new("Decal",bshpere2)
  81.         --decal2.Texture = "rbxassetid://122022304"
  82.         --decal2.Face = Enum.NormalId.Back
  83.         local dir = Vector3.new(math.random(-100,100),math.random(-100,100),math.random(-100,100)).Unit * 20
  84.         local ray = Ray.new(headcf.Position,dir)
  85.         local part,pos,normal = workspace:FindPartOnRay(ray,script.Parent,false,true)
  86.         if part ~= nil then
  87.             bshpere2.CFrame = CFrame.new(pos,pos + normal)
  88.             bshpere2.Parent = workspace
  89.         end
  90.         game:GetService("Debris"):AddItem(bshpere2,10)
  91.     end
  92. end
  93.  
  94. function effect2(death)
  95.     local BloodCount = 0
  96.     local tor = death
  97.     local MaxBlood = 10
  98.     run.Heartbeat:Connect(function()
  99.         if BloodCount < MaxBlood then
  100.             BloodCount = BloodCount +1
  101.             local blood1 = Instance.new("WedgePart")
  102.             blood1.Color = Color3.new(0.666667, 0, 0)
  103.             blood1.formFactor = 2
  104.             blood1.Material=Enum.Material.Glass
  105.             blood1.Transparency=.5
  106.             blood1.Size = Vector3.new(0.3, 0.3, 0.3)
  107.             blood1.BottomSurface = 1
  108.             blood1.TopSurface = 1
  109.             blood1.CFrame = tor.CFrame * CFrame.new(0,1,0)
  110.             blood1.Name = "Blood"
  111.             blood1.Parent = workspace
  112.             --local Script1 = script.Script:clone()
  113.             --Script1.Disabled = false
  114.             --Script1.Parent = blood1
  115.             local WaitTime = 1
  116.             game:GetService("Debris"):AddItem(blood1,10)
  117.             if WaitTime == 1 then
  118.                 wait()
  119.             end
  120.         end
  121.         if BloodCount == MaxBlood then
  122.             return end
  123.     end)
  124. end
  125.  
  126. Tool.Equipped:Connect(function()
  127.     wait()
  128.     Player = Players:GetPlayerFromCharacter(Tool.Parent)
  129.     enabled=true
  130. end)
  131.  
  132. Tool.Unequipped:Connect(function()
  133.     enabled=false
  134. end)
  135.  
  136. mouse()
  137.  
  138. function killhumanoid(hum)
  139.     coroutine.resume(coroutine.create(function()
  140.         while true do wait()
  141.             if hum:IsDescendantOf(workspace) then
  142.                 hum.Health=0
  143.             else
  144.                 break
  145.             end
  146.         end
  147.     end))
  148.  
  149. end
  150.  
  151. remote.OnServerEvent:Connect(function(m,mess,shot)
  152.     message=mess shooting=shot
  153. end)
  154. function bullet()
  155.     coroutine.resume(coroutine.create(function()
  156.         pcall(function()
  157.             local pos = Handle.CFrame * CFrame.new(.1,.55,0)
  158.             local bull = Instance.new("SpawnLocation") bull.CanCollide=false bull.Enabled=false bull.Neutral=false  bull.Massless=true bull.Color=Color3.new(1, 0.666667, 0) bull.Parent=tool bull.Size=Vector3.new(.3,.2,.2) bull.Name='Shell'
  159.             local M = Instance.new("SpecialMesh",bull) M.MeshId='rbxassetid://7191976822' M.Scale=Vector3.new(0.45, 0.65, 0.65)
  160.             bull.CFrame=pos*CFrame.Angles(0,math.rad(-90),0)
  161.             bull.Velocity = Vector3.new(math.random(0,3)*3,math.random(-1,1)*3,math.random(-2,2)*3)
  162.             wait(1)
  163.             bull:Destroy()
  164.         end)
  165.     end))
  166. end
  167.  
  168. run.Heartbeat:Connect(function()
  169.     if shooting==true then
  170.         local Humanoid = Player.Character:FindFirstChildOfClass('Humanoid')
  171.         if Humanoid then
  172.             pos=message
  173.             if enabled==true then
  174.                 enabled=false
  175.                 local shot = Handle:FindFirstChild('shot') if shot then
  176.                     shot.TimePosition=.1
  177.                     shot.Volume=math.random(2,5)
  178.                     shot:Play()
  179.                 else
  180.                     shot = Instance.new("Sound",Handle) shot.TimePosition=.1 shot.SoundId='rbxassetid://6154490497' shot.Name='shot' shot.Volume=2 shot:Play()
  181.                 end
  182.  
  183.                 hitshot = Handle.CFrame * CFrame.new(0,.39,-2)
  184.                 if Humanoid.Health > 0 then
  185.                     local ray = Ray.new(hitshot.p, (pos - hitshot.p).unit * 600)
  186.                     local part, position = workspace:FindPartOnRay(ray, Player.Character, false, true)
  187.                     local beam = Instance.new("WedgePart", workspace)
  188.                     beam.BrickColor =  BrickColor.new("Cool yellow")--player.TeamColor
  189.                     beam.Material = Enum.Material.Neon
  190.                     beam.Transparency = .3
  191.                     beam.Anchored = true
  192.                     beam.Locked = true
  193.                     beam.CanCollide = false
  194.                     bullet()
  195.                     local distance = (hitshot.p - position).magnitude
  196.                     beam.Size = Vector3.new(.05, .05, distance)
  197.                     beam.CFrame = CFrame.new(hitshot.p, position)*CFrame.new(0, 0, -distance / 2)
  198.  
  199.                     game:GetService("Debris"):AddItem(beam,0.1)
  200.  
  201.                     if part then
  202.  
  203.                         if part.Name=='Handle' then
  204.                             part.Anchored=false
  205.                             part:BreakJoints()
  206.                             part.Velocity = Vector3.new(math.random(-5,5)*10,math.random(-5,5)*10,math.random(-5,5)*10)
  207.                             part.CanCollide=false
  208.                         end
  209.                         local humanoid = part.Parent:FindFirstChildOfClass("Humanoid")
  210.                         if not humanoid then
  211.                             humanoid = part.Parent.Parent:FindFirstChildOfClass("Humanoid")
  212.                         end
  213.  
  214.                         if humanoid then
  215.                             if humanoid.Health>9e9 then humanoid.Health=0 killhumanoid(humanoid)
  216.                                 for i,v in pairs(part.Parent:GetDescendants()) do
  217.                                     if v:IsA("Constraint") or v:IsA("Attachment") or v:IsA("Weld") then v:Destroy()end
  218.                                     if v:IsA("BasePart") or v:IsA("FlagStand") then
  219.                                         v.Anchored=false
  220.                                         v:BreakJoints()
  221.                                     end
  222.                                 end
  223.                             else
  224.                                 humanoid.Health=humanoid.Health-math.random(9,20)
  225.                             end
  226.                         end
  227.                         if part.Name=='Head' then
  228.                             effect2(part)
  229.                             local gore = Instance.new("Sound",part) gore.SoundId='rbxassetid://429400881'  gore.Volume=.7 gore.PlayOnRemove=true gore:Play()
  230.                             part:BreakJoints()  part.Color=Color3.new(0.666667, 0, 0) --part.Name='dead'
  231.                             for i,v in pairs(part.Parent:GetDescendants()) do
  232.                                 if v:IsA("BasePart") then
  233.                                     v.Anchored=false
  234.                                     v:BreakJoints()
  235.                                     if v.Name=='Torso' then
  236.  
  237.                                     end
  238.                                 end
  239.                             end
  240.  
  241.                         --[[
  242.                         if humanoid then
  243.                             if humanoid.Health>0.1 then
  244.                             end
  245.                         end
  246.                         effect(part)
  247.                         ]]
  248.  
  249.                             local ded = part:FindFirstChildOfClass('Decal')  
  250.                             if ded then
  251.                                 ded.Texture='http://www.roblox.com/asset/?id=860143307'
  252.                             else
  253.                                 ded = Instance.new("Decal",ded) ded.Texture='http://www.roblox.com/asset/?id=860143307'
  254.                             end
  255.                     --[[
  256.                     local effect = Instance.new("ParticleEmitter",part)
  257.                     effect.Color=ColorSequence.new(Color3.new(0.666667, 0, 0))
  258.                     effect.Size=NumberSequence.new(0,0.7) effect.Texture='http://www.roblox.com/asset/?id=243457340' effect.Orientation=Enum.ParticleOrientation.FacingCamera effect.Acceleration=Vector3.new(0,-1.5,0)
  259.                     effect.Lifetime=NumberRange.new(1,2)
  260.                     effect.EmissionDirection=Enum.NormalId.Bottom   effect.Enabled=true effect.Rate=100 effect.Speed=NumberRange.new(4, 4)  effect.SpreadAngle=Vector2.new(10,10)
  261.                
  262.                     wait(.5)
  263.                     effect:Destroy()
  264.                     ]]
  265.                             wait()
  266.                             part:Destroy()
  267.                         end
  268.                     end
  269.  
  270.  
  271.  
  272.                 end
  273.                 wait(.04)
  274.                 enabled=true
  275.             end
  276.         end
  277.     end
  278. end)
  279.  
Advertisement
Add Comment
Please, Sign In to add comment
Advertisement