Advertisement
astronaut32

gravity hammer

Dec 14th, 2016
265
0
Never
Not a member of Pastebin yet? Sign Up, it unlocks many cool features!
text 9.56 KB | None | 0 0
  1. lp=game.Players.LocalPlayer
  2. pl=lp.Character mouse=lp:GetMouse()
  3. rshr = Instance.new("Weld",pl.Torso)
  4. rshr.Part0 = pl.Torso;rshr.Part1 = pl['Right Arm']
  5. rshr.C1 = CFrame.new(-1.5,0,0)
  6. LerpTo = CFrame.new(-1.5,0,0)
  7. asds=false Parts={}
  8. deb=false
  9. function getAngles(cf)
  10. local sx,sy,sz,m00,m01,m02,m10,m11,m12,m20,m21,m22 = cf:components()
  11. return math.atan2(-m12,m22),math.asin(m02),math.atan2(-m01,m00)end
  12. Lerp = {Number = function(C1,C2,inc)
  13. return C1 + (C2 - C1) * inc
  14. end;CFrame = function(C1,C2,inc)
  15. local x1,y1,z1 = getAngles(C1)
  16. local x2,y2,z2 = getAngles(C2)
  17. return CFrame.new(Lerp.Number(C1.X,C2.X,inc),Lerp.Number(C1.Y,C2.Y,inc), Lerp.Number(C1.Z,C2.Z,inc)) * CFrame.Angles(Lerp.Number(x1,x2,inc),Lerp.Number(y1,y2,inc),Lerp.Number(z1,z2,inc))
  18. end;}
  19. Part = function(x,y,z,color,tr,cc,an,parent)
  20. local p = Instance.new('Part',parent or Weapon)
  21. p.formFactor = 'Custom'
  22. p.Size = Vector3.new(x,y,z)
  23. p.BrickColor = BrickColor.new(color)
  24. p.CanCollide = cc
  25. p.Transparency = tr
  26. p.Anchored = an
  27. p.TopSurface,p.BottomSurface = 0,0
  28. return p end
  29. fir = function(n1,n2,n3,n4,n5,n6,hs,fs,parent)
  30. local fi = Instance.new('Fire',parent or Weapon)
  31. fi.Color=Color3.new(n1,n2,n3)
  32. fi.Heat=hs
  33. fi.SecondaryColor=Color3.new(n4,n5,n6)
  34. fi.Size=fs
  35. return fi end
  36. wPart = function(x,y,z,color,tr,cc,an,parent)
  37. local wp = Instance.new('WedgePart',parent or Weapon)
  38. wp.formFactor = 'Custom'
  39. wp.Size = Vector3.new(x,y,z)
  40. wp.BrickColor = BrickColor.new(color)
  41. wp.CanCollide = cc
  42. wp.Transparency = tr
  43. wp.Anchored = an
  44. wp.TopSurface,wp.BottomSurface = 0,0
  45. return wp end
  46. Weld = function(p0,p1,x,y,z,rx,ry,rz,par)
  47. p0.Position = p1.Position
  48. local w = Instance.new('Motor',par or p0)
  49. w.Part0 = p0
  50. w.Part1 = p1
  51. w.C1 = CFrame.new(x,y,z)*CFrame.Angles(rx,ry,rz)
  52. return w end
  53. Mesh = function(par,num,x,y,z)
  54. local msh = _
  55. if num == 1 then msh = Instance.new("CylinderMesh",par)
  56. elseif num == 2 then msh = Instance.new("SpecialMesh",par) msh.MeshType = 3
  57. elseif num == 3 then msh = Instance.new("BlockMesh",par)
  58. elseif num == 4 then msh = Instance.new("SpecialMesh",par) msh.MeshType = "Torso"
  59. elseif type(num) == 'string' then msh = Instance.new("SpecialMesh",par) msh.MeshId = num
  60. end msh.Scale = Vector3.new(x,y,z)
  61. return msh end function TweenCFrame(part,cframe,q)
  62. local c0 = part.CFrame
  63. for i = -90,90,q do
  64. local r = ((math.sin(math.rad(i))+1)/2)
  65. part.CFrame = CFrame.new(c0.p:lerp(cframe.p,r))
  66. wait()end end
  67. cube = function(pos)
  68. for i=1,6 do local ascube = Part(1.5,1.5,1.5,'Teal',0,false,true,mo)
  69. ascube.CFrame= pos table.insert(Parts,ascube)
  70. coroutine.wrap(function()
  71. TweenCFrame(ascube,pos+Vector3.new(math.random(-20,20),10,math.random(-20,20)),10)
  72. ascube.Anchored=false
  73. end)()end end
  74. s1 = Instance.new("Sound",pl.Torso)s1.SoundId = "http://www.roblox.com/asset/?id=30299564"
  75. s2 = Instance.new("Sound",pl.Torso)s2.SoundId = "http://www.roblox.com/asset/?id=30172281"
  76. s3 = Instance.new("Sound",pl.Torso)s3.SoundId = "http://www.roblox.com/asset/?id=30172373"
  77. s4 = Instance.new("Sound",pl.Torso)s4.SoundId = "http://www.roblox.com/asset/?id=32656754"
  78. s5 = Instance.new("Sound",pl.Torso)s5.SoundId = "http://www.roblox.com/asset/?id=32656713"
  79. s6 = Instance.new("Sound",pl.Torso)s6.SoundId = "http://www.roblox.com/asset/?id=31758934"
  80. mo=Instance.new("Model",pl)
  81. mpa= Part(.25,3,.25,'Really black',0,false,false,mo)
  82. mwl= Weld(mpa,pl.Torso,0,.5,.5,0,0,math.pi/3.5,mo)
  83. pa= Part(.4,1,.4,'Teal',0,false,false,mo)
  84. wl= Weld(pa,mpa,0,-1,0,0,0,0,mo)
  85. m= Mesh(pa,1,1,1,1)
  86. pa= Part(.4,.5,.4,'Teal',0,false,false,mo)
  87. wl= Weld(pa,mpa,0,1.25,0,0,0,0,mo)
  88. m= Mesh(pa,1,1,1,1)
  89. pa= Part(.5,.5,.5,'Teal',0,false,false,mo)
  90. wl= Weld(pa,mpa,0,-1.5,0,math.pi/10,math.pi/4,0,mo)
  91. pa= Part(.5,.5,.5,'Teal',0,false,false,mo)
  92. wl= Weld(pa,mpa,0,-1.5,0,math.pi/5,math.pi/8,0,mo)
  93. pa= Part(.4,.4,.4,'Teal',0,false,false,mo)
  94. wl= Weld(pa,mpa,0,1.5,0,math.pi/10,math.pi/4,0,mo)
  95. pa= Part(.4,.4,.4,'Teal',0,false,false,mo)
  96. wl= Weld(pa,mpa,0,1.5,0,math.pi/5,math.pi/8,0,mo)
  97. pa= Part(.75,.76,.75,'Dark stone grey',0,false,false,mo)
  98. wl= Weld(pa,mpa,0,1.9,0,0,0,0,mo)
  99. pa= Part(.75,.25,.75,'Teal',0,false,false,mo)
  100. wl= Weld(pa,mpa,-.5,1.9,0,0,0,math.pi/2,mo)m= Mesh(pa,4,1,1,1)
  101. pa= Part(.75,.5,.75,'Really black',0,false,false,mo)
  102. wl= Weld(pa,mpa,-.5,1.9,0,math.pi/2,0,math.pi/2,mo)m= Mesh(pa,4,1,1,1)
  103. pa= wPart(.75,.2,.4,'Really black',0,false,false,mo)
  104. wl= Weld(pa,mpa,.2,2.375,0,0,math.pi/2,0,mo)
  105. pa= wPart(.75,.2,.4,'Really black',0,false,false,mo)
  106. wl= Weld(pa,mpa,.2,1.9,.475,math.pi/2,math.pi/2,0,mo)
  107. pa= wPart(.75,.2,.4,'Really black',0,false,false,mo)
  108. wl= Weld(pa,mpa,.2,1.9,-.475,-math.pi/2,math.pi/2,0,mo)
  109. pa= wPart(.75,.2,.4,'Really black',0,false,false,mo)
  110. wl= Weld(pa,mpa,.2,1.425,0,math.pi/1,math.pi/2,0,mo)
  111. asd= Part(.1,1.13,1.13,'Teal',0,false,false,mo)
  112. wl= Weld(asd,mpa,.5,1.9,0,0,0,0,mo)
  113. function eq()
  114. s6:play()
  115. LerpTo = CFrame.new(-1,0,0) * CFrame.Angles(-math.rad(-70),math.rad(70),0) * CFrame.new(-0.4,-0.5,-0.1)
  116. wait(0.1)
  117. mwl.Part1 = pl['Right Arm']
  118. mwl.C1 = CFrame.new(0,-1,0)*CFrame.Angles(-math.pi/2,math.pi/2,0)
  119. LerpTo = CFrame.new(-1.5,0,0) * CFrame.Angles(-math.rad(40),math.rad(30),0) * CFrame.new(0,0.1,1)
  120. seq=true end function dc() seq=false s6:play()
  121. LerpTo = CFrame.new(-1,0,0) * CFrame.Angles(-math.rad(-70),math.rad(70),0) * CFrame.new(-0.4,-0.5,-0.1)
  122. wait(0.1)
  123. mwl.Part1 = pl.Torso
  124. mwl.C1 = CFrame.new(0,.5,.5)*CFrame.Angles(0,0,math.pi/3.5)
  125. LerpTo = CFrame.new(-1.5,0,0)end function hit()
  126. asds=true wait(0.2) asds=false end
  127. function grav() if seq==true then if deb==true then return end deb=true
  128. LerpTo = CFrame.new(-1.5,0,0) * CFrame.Angles(-math.rad(115),0,-math.rad(30)) * CFrame.new(0,0,0.5)
  129. s1:play()
  130. wait(0.2)
  131. LerpTo = CFrame.new(-1.5,0,0) * CFrame.Angles(-math.rad(20),0,math.rad(30)) * CFrame.new(0,-.3,0.5)
  132. wait(0.2)
  133. LerpTo = CFrame.new(-1.5,0,0) * CFrame.Angles(-math.rad(40),math.rad(30),0) * CFrame.new(0,0.1,1)
  134. deb=false
  135. hit()end end
  136. function fly()
  137. if seq==true then
  138. LerpTo = CFrame.new(-1.5,0,0) * CFrame.Angles(-math.rad(115),0,-math.rad(30)) * CFrame.new(0,0,0.5)
  139. s1:play()
  140. wait(0.2)
  141. LerpTo = CFrame.new(-1.5,0,0) * CFrame.Angles(-math.rad(20),0,math.rad(30)) * CFrame.new(0,-.3,0.5)
  142. wait(0.2)
  143. expa= Part(.4,.5,.4,'Really black',0,false,true,mo)
  144. spm= Mesh(expa,'http://www.roblox.com/asset/?id=3270017',0,0,0)
  145. expa.CFrame=pl.Torso.CFrame*CFrame.Angles(math.pi/2,0,0)-Vector3.new(0,3,0)
  146. s4:play()
  147. for i=1,10 do wait()
  148. spm.Scale=spm.Scale+Vector3.new(5,5,2)
  149. expa.Transparency=expa.Transparency +.1 end expa:remove()
  150. cube(pl.Torso.CFrame)
  151. v=game.Players:GetChildren() for i = 1, #v do
  152. dist = (v[i].Character.Torso.Position - pl.Torso.Position).magnitude
  153. if dist <= 20 and v[i].Character.Name ~= pl.Name then
  154. coroutine.wrap(function()
  155. local bps=Instance.new("BodyPosition",v[i].Character.Torso)bps.position=v[i].Character.Torso.Position+Vector3.new(0,20,0) bps.maxForce=Vector3.new(1e1000,1e1000,1e1000)
  156. wait(.5) bps:remove()
  157. v[i].Character.Humanoid:TakeDamage(50)
  158. end)() end end
  159. LerpTo = CFrame.new(-1.5,0,0) * CFrame.Angles(-math.rad(40),math.rad(30),0) * CFrame.new(0,0.1,1)
  160. end
  161. end
  162. function onKeyDown(key)
  163. key = key:lower()
  164. if key == "e" then a=not a
  165. if a then eq()else dc()end end
  166. if key == "q" then fly() end
  167. if key == "r" then th() end end
  168.  
  169. function onClicked() grav() end
  170. game:service'RunService'.RenderStepped:connect(function()
  171. rshr.C1 = Lerp.CFrame(rshr.C1,LerpTo,0.2)end)
  172. mouse.KeyDown:connect(onKeyDown)
  173. mouse.Button1Down:connect(function() onClicked(mouse) end)
  174. function touch(hit) if hit.Parent:findFirstChild("Humanoid") ~= nil then
  175. if asds==false then return end deb=true asds=false s2:play()
  176. expa= Part(.4,.5,.4,'Really black',0,false,true,mo)
  177. spm= Mesh(expa,'http://www.roblox.com/asset/?id=3270017',0,0,0)
  178. expa.CFrame=pl.Torso.CFrame*CFrame.Angles(math.pi/2,0,0)-Vector3.new(0,3,0)
  179. expa2= Part(.4,.5,.4,'Teal',0,false,true,mo)
  180. spm2= Mesh(expa2,'http://www.roblox.com/asset/?id=1185246',0,0,0)
  181. expa2.CFrame=pl.Torso.CFrame
  182. for i=1,10 do wait()for _,v in pairs(mo:GetChildren()) do if v.ClassName=="Part" or v.ClassName=="WedgePart" then v.Transparency=v.Transparency+.1 end end
  183. expa2.CFrame=pl.Torso.CFrame*CFrame.Angles(0,i,0)
  184. spm.Scale=spm.Scale+Vector3.new(4,4,4)
  185. spm2.Scale=spm2.Scale+Vector3.new(2,2,2)
  186. end expa:remove()expa2:remove()
  187. LerpTo = CFrame.new(-1.5,0,0)bps=Instance.new("BodyPosition",pl.Torso)bps.position=pl.Torso.Position+Vector3.new(0,20,0) bps.maxForce=Vector3.new(1e1000,1e1000,1e1000)
  188. dds=bps:Clone() dds.Parent=hit.Parent.Torso dds.position=pl.Torso.Position+Vector3.new(0,40,0)
  189. wait(.5) s3:play()
  190. for i=1,6 do
  191. expa= Part(.4,.5,.4,'Really black',0,false,true,mo)
  192. spm= Mesh(expa,'http://www.roblox.com/asset/?id=3270017',0,0,0)
  193. expa2= Part(.4,.5,.4,'Teal',0,false,true,mo)
  194. spm2= Mesh(expa2,'http://www.roblox.com/asset/?id=1185246',0,0,0)
  195. expa2.CFrame=pl.Torso.CFrame+Vector3.new(0,7,0)
  196. cube(expa2.CFrame) s5:play()
  197. for i=1,10 do wait()
  198. expa.CFrame=pl.Torso.CFrame*CFrame.Angles(0,math.rad(i*10),math.rad(i*10))+Vector3.new(0,7,0)
  199. spm.Scale=spm.Scale+Vector3.new(2,2,2)
  200. spm2.Scale=spm2.Scale+Vector3.new(2,2,2)
  201. expa.Transparency=expa.Transparency +.1
  202. expa2.Transparency=expa2.Transparency +.1
  203. end wait(.1)
  204. for i,v in pairs(Parts)do
  205. coroutine.wrap(function()
  206. TweenCFrame(v,CFrame.new(hit.Parent.Torso.Position),30)
  207. v:remove()
  208. end)()end wait(.1)
  209. hit.Parent.Humanoid:TakeDamage(10)Parts={}
  210. expa:remove()expa2:remove()
  211. end
  212. bps:remove()dds:remove()
  213. for i=1,10 do wait()for _,v in pairs(mo:GetChildren()) do if v.ClassName=="Part" or v.ClassName=="WedgePart" then v.Transparency=v.Transparency-.1 end end end
  214. LerpTo = CFrame.new(-1.5,0,0) * CFrame.Angles(-math.rad(40),math.rad(30),0) * CFrame.new(0,0.1,1)
  215. deb=false
  216. end end asd.Touched:connect(touch)
Advertisement
Add Comment
Please, Sign In to add comment
Advertisement