Advertisement
Notepad95

ROBLOX Spear

Nov 14th, 2016
537
0
Never
Not a member of Pastebin yet? Sign Up, it unlocks many cool features!
Lua 12.04 KB | None | 0 0
  1. --Spear Gifted by Mohamed91111, Regular Script!
  2.  
  3. local player = game.Players.Chowderpat
  4. if script.Parent:IsA("Tool") then return end
  5. tool = Instance.new("Tool")
  6. script.Parent = tool
  7. tool.GripPos = Vector3.new(0, -1, 0)
  8. tool.Name = "Le Lanza"
  9. tool.Parent = player.Backpack
  10. local clicks = Instance.new("NumberValue")
  11. clicks.Parent = tool
  12. clicks.Value = 0
  13. handle = Instance.new("Part")
  14. handle.Name = "Handle"
  15. handle.Size = Vector3.new(1,7,1)
  16. handle.TopSurface = 0
  17. handle.BottomSurface = 0
  18. handle.BrickColor = BrickColor.new("Brown")
  19. local mesh = Instance.new("CylinderMesh")
  20. mesh.Parent = handle
  21. mesh.Scale = Vector3.new(0.3, 1, 0.3)
  22.  
  23. --NECESSARY NEEDS
  24.  
  25. local sla = Instance.new("Sound")
  26. sla.Parent = handle
  27. sla.Volume = 1
  28. sla.SoundId = "rbxasset://sounds\\swordslash.wav"
  29.  
  30. local handle2 = Instance.new("Part")
  31. handle2.Size = Vector3.new(1,1,2)
  32. handle2.TopSurface = 0
  33. handle2.BottomSurface = 0
  34. handle2.BrickColor = BrickColor.new("Medium stone grey")
  35. handle2.CanCollide = false
  36. local mesh2 = Instance.new("SpecialMesh")
  37. mesh2.Parent = handle2
  38. mesh2.MeshType = "FileMesh"
  39. mesh2.MeshId = "http://www.roblox.com/asset/?id=1033714"
  40. mesh2.Scale = Vector3.new(0.3, 1.7, 0.3)
  41. local handle3 = Instance.new("Part")
  42. handle3.Size = Vector3.new(1,1,1)
  43. handle3.TopSurface = 0
  44. handle3.BottomSurface = 0
  45. handle3.BrickColor = BrickColor.new("Medium stone grey")
  46. handle3.CanCollide = false
  47. local mesh3 = Instance.new("SpecialMesh")
  48. mesh3.Parent = handle3
  49. mesh3.MeshType = "FileMesh"
  50. mesh3.MeshId = "http://www.roblox.com/asset/?id=1033714"
  51. mesh3.Scale = Vector3.new(0.3, 0.5, 0.3)
  52. local handle4 = Instance.new("Part")
  53. handle4.Size = Vector3.new(1,1,1)
  54. handle4.TopSurface = 0
  55. handle4.BottomSurface = 0
  56. handle4.CanCollide = false
  57. handle4.BrickColor = BrickColor.new(21)
  58. local mesh4 = Instance.new("BlockMesh")
  59. mesh4.Parent = handle4
  60. mesh4.Scale = Vector3.new(0.296, 5, 0.1)
  61. local handle5 = handle4:clone()
  62. handle5.Mesh.Scale = Vector3.new(0.1,5,0.296)
  63. handle5.Name = "Handle5"
  64. local handle6 = Instance.new("Part")
  65. handle6.Size = Vector3.new(1,1,1)
  66. handle6.TopSurface = 0
  67. handle6.BottomSurface = 0
  68. handle6.CanCollide = false
  69. handle6.BrickColor = BrickColor.new(21)
  70. local mesh6 = Instance.new("SpecialMesh")
  71. mesh6.Parent = handle6
  72. mesh6.Scale = Vector3.new(0.36, 0.4, 0.36)
  73. local handle7 = handle6:clone()
  74. local handle8 = handle6:clone()
  75. handle.Parent = tool
  76. handle2.Parent = tool
  77. handle3.Parent = tool
  78. handle4.Parent = tool
  79. handle5.Parent = tool
  80. handle6.Parent = tool
  81. handle7.Parent = tool
  82. handle8.Parent = tool
  83.  
  84. brick1 = Instance.new("Part")
  85. brick1.Parent = player.Character
  86. brick1.formFactor = "Symmetric"
  87. brick1.Size = Vector3.new(1,1,1)
  88. brick1.CFrame = player.Character.Torso.CFrame * CFrame.new(-1.5,0.5,0)
  89. brick1.Shape = "Ball"
  90. brick1.CanCollide = false
  91. brick1.Transparency = 1
  92. mesh1 = Instance.new("SpecialMesh")
  93. mesh1.Parent = brick1
  94. mesh1.MeshType = "Sphere"
  95. mesh1.Scale = Vector3.new(1.4,1.4,1.4)
  96. brick2 = Instance.new("Part")
  97. brick2.Parent = player.Character
  98. brick2.formFactor = "Symmetric"
  99. brick2.Size = Vector3.new(1,1,1)
  100. brick2.CFrame = player.Character.Torso.CFrame * CFrame.new(1.5,0.5,0)
  101. brick2.Shape = "Ball"
  102. brick2.CanCollide = false
  103. brick2.Transparency = 1
  104. mesh2 = Instance.new("SpecialMesh")
  105. mesh2.Parent = brick2
  106. mesh2.MeshType = "Sphere"
  107. mesh2.Scale = Vector3.new(1.4,1.4,1.4)
  108. wads = Instance.new("Weld")
  109. wads.Parent = player.Character.Torso
  110. wads.Part0 = wads.Parent
  111. wads.Part1 = brick1
  112. wads.C1 = CFrame.new(-1.5,-0.5,0)
  113. wads2 = Instance.new("Weld")
  114. wads2.Parent = player.Character.Torso
  115. wads2.Part0 = wads2.Parent
  116. wads2.Part1 = brick2
  117. wads2.C1 = CFrame.new(1.5,-0.5,0)
  118. lewe = Instance.new("Weld")
  119. riwe = Instance.new("Weld")
  120. lewe.C1 = CFrame.fromEulerAnglesXYZ(-1,0,-0.7) * CFrame.new(-0.28,0.25,0.3)
  121. riwe.C1 = CFrame.fromEulerAnglesXYZ(-1.57,-0.4,-1.46) * CFrame.new(0,0.3,0.5)
  122.  
  123. --OnEquip function
  124.  
  125. function equip()
  126. lewe.Parent = brick2
  127. lewe.Part0 = lewe.Parent
  128. lewe.Part1 = player.Character["Left Arm"]
  129. lewe.C1 = CFrame.fromEulerAnglesXYZ(-1,0,-0.7) * CFrame.new(-0.28,0.25,0.3)
  130. riwe.Parent = brick1
  131. riwe.Part0 = riwe.Parent
  132. riwe.Part1 = player.Character["Right Arm"]
  133. riwe.C1 = CFrame.fromEulerAnglesXYZ(-1.57,-0.4,-1.46) * CFrame.new(0,0.3,0.5)
  134. local w1 = Instance.new("Weld")
  135. w1.Parent = handle
  136. w1.Part0 = w1.Parent
  137. w1.Part1 = handle2
  138. w1.C1 = CFrame.new(0, -3.6, 0)
  139. local w2 = Instance.new("Weld")
  140. w2.Parent = handle
  141. w2.Part0 = w1.Parent
  142. w2.Part1 = handle3
  143. w2.C1 = CFrame.fromEulerAnglesXYZ(0,0,3.2) * CFrame.new(0, -2.79, 0)
  144. local w3 = Instance.new("Weld")
  145. w3.Parent = handle
  146. w3.Part0 = w1.Parent
  147. w3.Part1 = handle4
  148. w3.C1 = CFrame.new(0, 0.5, 0)
  149. local w4 = Instance.new("Weld")
  150. w4.Parent = handle
  151. w4.Part0 = w1.Parent
  152. w4.Part1 = handle5
  153. w4.C1 = CFrame.new(0, 0.5, 0)
  154. local w5 = Instance.new("Weld")
  155. w5.Parent = handle
  156. w5.Part0 = w1.Parent
  157. w5.Part1 = handle6
  158. w5.C1 = CFrame.new(0, 1, 0)
  159. local w6 = Instance.new("Weld")
  160. w6.Parent = handle
  161. w6.Part0 = w1.Parent
  162. w6.Part1 = handle7
  163. w6.C1 = CFrame.new(0, 1.5, 0)
  164. local w7 = Instance.new("Weld")
  165. w7.Parent = handle
  166. w7.Part0 = w1.Parent
  167. w7.Part1 = handle8
  168. w7.C1 = CFrame.new(0, 0.5, 0)
  169. end
  170. local fire = Instance.new("Fire")
  171. fire.Parent = handle
  172. fire.Size = 1
  173. fire.Heat = 5
  174. local fire2 = Instance.new("Fire")
  175. fire2.Parent = handle4
  176. fire2.Size = 1
  177. fire2.Heat = 5
  178. fire.Enabled = false
  179. fire2.Enabled = false
  180.  
  181. --KILL FUNCTION
  182.  
  183. function b(h)
  184.     if h.Parent.className == "Hat" then return end
  185.     local hum = h.Parent:findFirstChild("Humanoid")
  186.     if hum ~= nil then
  187.         local par = game.Players:findFirstChild(h.Parent.Name)
  188.         if par ~= nil then
  189.             local dam = math.random(5,15)
  190.             hum.Health = hum.Health - dam
  191.             local sho = Instance.new("BillboardGui")
  192.             sho.Parent = game.Workspace
  193.             sho.Size = UDim2.new(0,150,0,150)
  194.             sho.Adornee = hum.Parent.Head
  195.             local showdmg = Instance.new("TextLabel")
  196.             showdmg.Parent = sho
  197.             showdmg.Size = UDim2.new(0,40,0,40)
  198.             showdmg.Text = dam
  199.             showdmg.TextColor = BrickColor.new("Really black")
  200.             showdmg.BackgroundColor = BrickColor.new("Bright red")
  201.             showdmg.FontSize = "Size12"
  202.             showdmg.Position = UDim2.new(0,math.random(-70,70),0,math.random(-120,-60))
  203.             showdmg.BackgroundTransparency = 0
  204.             showdmg.Visible = true
  205.             for i=1, 4 do
  206.                 local blood = Instance.new("Part")
  207.                 blood.Parent = game.Workspace
  208.                 blood.BrickColor = BrickColor.new(21)
  209.                 blood.formFactor = "Plate"
  210.                 blood.Size = Vector3.new(1, 0.4, 1)
  211.                 blood.CFrame = h.CFrame
  212.                 blood.TopSurface = "Smooth"
  213.                 blood.BottomSurface = "Smooth"
  214.                 blood.Name = "Blood"
  215.                 blood.Anchored = false
  216.                 blood.Velocity = Vector3.new(math.random(-20,20), math.random(-10,30), math.random(-20,20))
  217.                 blood.RotVelocity = Vector3.new(math.random(-30,40), math.random(-30,30), math.random(-30,30))
  218.                 blood.CanCollide = false
  219.                 blood:breakJoints()
  220.                 local mesff = Instance.new("SpecialMesh")
  221.                 mesff.Parent = blood
  222.                 mesff.MeshType = "Brick"
  223.                 mesff.Scale = Vector3.new(0.6, 0.6, 0.6)
  224.             end
  225.             wait(0.5)
  226.             sho:remove()
  227.         end
  228.     end
  229. end
  230.  
  231. handle2.Touched:connect(b)
  232.  
  233. riwesa = riwe.C1
  234. lewesa = lewe.C1
  235.  
  236. function effect()
  237.     local p1 = handle:clone()
  238.     p1.Parent = game.Workspace
  239.     p1.BrickColor = BrickColor.new(21)
  240.     p1.Transparency = 0.2
  241.     p1.CFrame = handle.CFrame
  242.     p1.CanCollide = false
  243.     p1.Anchored = true
  244.     p1.Sound:remove()
  245.     local p2 = handle2:clone()
  246.     p2.Parent = game.Workspace
  247.     p2.BrickColor = BrickColor.new(21)
  248.     p2.Transparency = 0.2
  249.     p2.CFrame = handle2.CFrame
  250.     p2.CanCollide = false
  251.     p2.Anchored = true 
  252.     local p3 = handle3:clone()
  253.     p3.Parent = game.Workspace
  254.     p3.BrickColor = BrickColor.new(21)
  255.     p3.Transparency = 0.2
  256.     p3.CFrame = handle3.CFrame
  257.     p3.CanCollide = false
  258.     p3.Anchored = true
  259.     coroutine.resume(coroutine.create(function()
  260.         for i = 1, 8 do
  261.             wait(0.01)
  262.             p1.Transparency = p1.Transparency + 0.1
  263.             p2.Transparency = p2.Transparency + 0.1
  264.             p3.Transparency = p3.Transparency + 0.1
  265.         end
  266.         p1:remove()
  267.         p2:remove()
  268.         p3:remove()
  269.     end))
  270. end
  271. --ATTACKS START HERE
  272.  
  273. function att1()
  274.         for i = 1, 9 do
  275.             wait(0.01)
  276.             riwe.C1 = riwe.C1 * CFrame.fromEulerAnglesXYZ(-0.3,-0.1,0.2)
  277.             lewe.C1 = lewe.C1 * CFrame.fromEulerAnglesXYZ(0,0,-0.2)
  278.             effect()
  279.         end
  280.         for i = 1, 7 do
  281.             wait(0.01)
  282.             riwe.C1 = riwe.C1 * CFrame.fromEulerAnglesXYZ(0.6,0,0)
  283.             lewe.C1 = lewe.C1 * CFrame.fromEulerAnglesXYZ(0,0,0.45)
  284.             effect()
  285.         end
  286.         wait(0.01)
  287.         riwe.C1 = riwesa
  288.         lewe.C1 = lewesa
  289. end
  290.  
  291. function att2()
  292.         for i = 1, 6 do
  293.             wait(0.01)
  294.             riwe.C1 = riwe.C1 * CFrame.fromEulerAnglesXYZ(0,0.4,0.3)
  295.             effect()
  296.         end
  297.         wait(0.01)
  298.         riwe.C1 = riwesa
  299. end
  300. function att3()
  301.         for i = 1, 6 do
  302.             wait(0.01)
  303.             riwe.C1 = riwe.C1 * CFrame.fromEulerAnglesXYZ(0,-0.08,0.2)
  304.             lewe.C1 = lewe.C1 * CFrame.fromEulerAnglesXYZ(0,0.08,-0.16)  
  305.             effect()
  306.         end
  307.         for i = 1, 4 do
  308.             wait(0.01)
  309.             riwe.C1 = riwe.C1 * CFrame.fromEulerAnglesXYZ(-0.35,0,0)
  310.             lewe.C1 = lewe.C1 * CFrame.fromEulerAnglesXYZ(-0.35,0,0)  
  311.             effect()
  312.         end
  313.         for i = 1, 4 do
  314.             wait(0.01)
  315.             riwe.C1 = riwe.C1 * CFrame.fromEulerAnglesXYZ(0.9,0,0)
  316.             lewe.C1 = lewe.C1 * CFrame.fromEulerAnglesXYZ(0.9,0,0)  
  317.             effect()
  318.         end
  319.         wait(0.01)
  320.         riwe.C1 = riwesa
  321.         lewe.C1 = lewesa
  322. end
  323.  
  324. function att4()
  325.         local spin = Instance.new("BodyAngularVelocity")
  326.         spin.maxTorque = Vector3.new(1000000,1000000,1000000)
  327.         spin.angularvelocity = Vector3.new(0,15,0)
  328.         for i = 1, 4 do
  329.             wait(0.02)
  330.             riwe.C1 = riwe.C1 * CFrame.fromEulerAnglesXYZ(0,0.4,0.3)
  331.             lewe.C1 = lewe.C1 * CFrame.fromEulerAnglesXYZ(0,-0.4,0)  
  332.         end
  333.         spin.Parent = player.Character.Torso
  334.         for i = 1, 20 do
  335.             wait(0.01)
  336.             local num = math.random(1,3)
  337.             if num == 1 then
  338.                 sla:Play()
  339.                 sla.Pitch = math.random(0.7,1)
  340.             end
  341.             local part = Instance.new("Part")
  342.             part.Parent = game.Workspace
  343.             part.formFactor = "Symmetric"
  344.             part.Size = Vector3.new(2,1,1)
  345.             part.TopSurface = 0
  346.             part.BottomSurface = 0
  347.             part.BrickColor = BrickColor.new(21)
  348.             part.Transparency = 0.2
  349.             part.CFrame = handle2.CFrame
  350.             part.CanCollide = false
  351.             part.Anchored = true
  352.             local mes = Instance.new("BlockMesh")
  353.             mes.Parent = part
  354.             mes.Scale = Vector3.new(1,1,1)
  355.             coroutine.resume(coroutine.create(function()
  356.                 for i = 1, 8 do
  357.                     wait(0.02)
  358.                     part.Transparency = part.Transparency + 0.1
  359.                 end
  360.                 part:remove()
  361.             end))
  362.         end
  363.         spin:remove()
  364.         sla.Pitch = 1
  365.         riwe.C1 = riwesa
  366.         lewe.C1 = lewesa
  367. end
  368.  
  369. function att5()
  370.         tool.GripPos = Vector3.new(0, 0.5, 0)
  371.         for i = 1, 6 do
  372.             wait(0.01)
  373.             riwe.C1 = riwe.C1 * CFrame.fromEulerAnglesXYZ(-0.1,0,0)
  374.             lewe.C1 = lewe.C1 * CFrame.fromEulerAnglesXYZ(0.04,0,0)  
  375.         end
  376.         sla:Play()
  377.         for i = 1, 25 do
  378.             wait(0.01)
  379.             local num = math.random(1,2)
  380.             if num == 1 then
  381.                 sla:Play()
  382.                 sla.Pitch = math.random(0.6,1)
  383.             end
  384.             riwe.C1 = riwe.C1 * CFrame.fromEulerAnglesXYZ(0,0,0.75)
  385.             lewe.C1 = lewe.C1 * CFrame.fromEulerAnglesXYZ(0,0,0)  
  386.             effect()
  387.         end
  388.         for i = 1, 3 do
  389.             wait(0.01)
  390.             riwe.C1 = riwe.C1 * CFrame.fromEulerAnglesXYZ(0.2,0,0)
  391.             lewe.C1 = lewe.C1 * CFrame.fromEulerAnglesXYZ(-0.08,0,0)  
  392.         end
  393.         sla.Pitch = 1
  394.         wait(0.01)
  395.         tool.GripPos = Vector3.new(0, -1, 0)
  396.         riwe.C1 = riwesa
  397.         lewe.C1 = lewesa
  398. end
  399.  
  400. --Click function
  401.  
  402. debounce = false
  403. function hit()
  404.     clicks.Value = clicks.Value + 1
  405.     if clicks.Value == 1 then
  406.         debounce = false
  407.         sla:Play()
  408.         att1()
  409.         debounce = true
  410.     end
  411.     if clicks.Value == 2 then
  412.         debounce = false
  413.         sla:Play()
  414.         att2()
  415.         debounce = true
  416.     end
  417.     if clicks.Value == 3 then
  418.         debounce = false
  419.         sla:Play()
  420.         att3()
  421.     end
  422.     if clicks.Value == 4 then
  423.         debounce = false
  424.         sla:Play()
  425.         att4()
  426.         handle.Touched:connect(b)
  427.     end
  428.     if clicks.Value == 5 then
  429.         debounce = false
  430.         sla:Play()
  431.         att5()
  432.         clicks.Value = 0
  433.         debounce = true
  434.         handle.Touched:connect(b)
  435.     end
  436. end
  437.  
  438. function onActivated()
  439.     if not tool.Enabled then
  440.         return
  441.     end
  442.  
  443.     tool.Enabled = false
  444.     hit()
  445.     tool.Enabled = true
  446.  
  447. end
  448.  
  449. tool.Activated:connect(onActivated)
  450.  
  451. function uneq()
  452. lewe.Part0 = nil
  453. lewe.Part1 = nil
  454. riwe.Part0 = nil
  455. riwe.Part1 = nil
  456. end
  457. tool.Unequipped:connect(uneq)
  458. tool.Equipped:connect(equip)
Advertisement
Add Comment
Please, Sign In to add comment
Advertisement