Advertisement
pakin2549

Untitled

Apr 20th, 2019
129
0
Never
Not a member of Pastebin yet? Sign Up, it unlocks many cool features!
  1. ------------------------------------------------------------------------
  2. -- Made by Cronizete --
  3. ------------------------------------------------------------------------
  4.  
  5. if game:GetService("RunService"):IsClient() then error("Script must be server-side in order to work; use h/ and not hl/") end
  6. local Player,Mouse,mouse,UserInputService,ContextActionService = owner
  7. local RealPlayer = Player
  8. do print("FE Compatibility code by Mokiros")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(),Button2Up=c(),Button2Down=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;if o.UserInputType==Enum.UserInputType.MouseButton2 then return f:TrigEvent(p and"Button2Down"or"Button2Up")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 typeof(t[q])=="function"and function(m,...)return t[q](t,...)end or t[q]end end,__newindex=function(self,q,u)local t=rawget(self,"_RealService")if t then t[q]=u 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 rawget(self,t)or r:GetService(t)end,Players=v({LocalPlayer=v({GetMouse=function(self)return f end},Player)},"Players"),UserInputService=v(g,"UserInputService"),ContextActionService=v(CAS,"ContextActionService"),RunService=v({_btrs={},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")}rawset(x.Players,"localPlayer",x.Players.LocalPlayer)x.service=x.GetService;v(x,game)game,owner=x,x.Players.LocalPlayer end
  9.  
  10. ------------------------------------------------------------------------
  11. -- Things --
  12. ------------------------------------------------------------------------
  13.  
  14. plr = owner
  15. char = plr.Character
  16. mouse = plr:GetMouse()
  17. lleg,rleg,larm,rarm,hed = char["Left Leg"],char["Right Leg"],char["Left Arm"],char["Right Arm"],char["Head"]
  18. rutprt,torso = char.HumanoidRootPart,char.Torso
  19. otheranims,swimming,hum,stopanim,cooldown = false,false,char:FindFirstChildOfClass'Humanoid',false,false
  20. TweenService = game:GetService("TweenService")
  21. stopanim2 = false -- larm
  22. stopanim3 = false -- head
  23.  
  24. hammer = Instance.new('Part', char)
  25. hammer.Name = "Hammer"
  26. hammer.CanCollide = true
  27. hammer.Position = char.Head.Position
  28. hammer.Size = Vector3.new(1.71, 1.31, 3.2)
  29. hammer.Locked = true
  30. mesh = Instance.new('SpecialMesh', hammer)
  31. mesh.MeshId = "rbxassetid://3092672086"
  32. mesh.TextureId = "rbxassetid://2988727630"
  33. mesh.Scale = Vector3.new(1.05, 1.05, 1.05)
  34.  
  35. fx = Instance.new('Part', char)
  36. fx.Anchored = false
  37. fx.CanCollide = false
  38. fx.Transparency = 1
  39. fx.Size = Vector3.new(1.77, 0.85, 1.05)
  40. weld = Instance.new('Weld', fx)
  41. weld.Part0 = fx
  42. weld.Part1 = hammer
  43. weld.C0 = CFrame.new(0, 0, -1.2)
  44.  
  45. func = hammer.Touched:connect(function(hit)
  46. if not hit.Parent:FindFirstChildOfClass'Humanoid' then
  47. wait(1)
  48. hammer.Anchored = true
  49. func:disconnect()
  50. end
  51. end)
  52.  
  53. function gettorso(a)
  54. return a:FindFirstChild'Torso' or a:FindFirstChild'UpperTorso' or a:FindFirstChild'LowerTorso' or a:FindFirstChild'HumanoidRootPart'
  55. end
  56.  
  57. ------------------------------------------------------------------------
  58. -- Animate Stuff --
  59. ------------------------------------------------------------------------
  60. char.Animate.Disabled=true
  61. local fldb={['w']=false,['a']=false,['s']=false,['d']=false}
  62. local RunSpeed=30
  63.  
  64. local WlkSpeed=16
  65. local SwimSpeed=14
  66. local SwimDashSpeed=28
  67. local anim = "Idling"
  68. local lastanim = "Idling"
  69. local val = 0
  70. local syne = 0
  71. local num = 0
  72. local runtime = 0
  73. local pseudohead=hed:Clone()
  74. for i,x in pairs(pseudohead:GetChildren()) do if not x.ClassName:find('Mesh') then x:Destroy() end end
  75. pseudohead.Name='PseudoHead'
  76. pseudohead.Parent=char.Head
  77. local pseudoweld=Instance.new('Weld',torso)
  78. pseudoweld.Part0=hed
  79. pseudoweld.Name='PseudoHedWld'
  80. pseudoweld.Part1=pseudohead
  81. hed.Transparency=1
  82.  
  83. coroutine.wrap(function() for i,x in pairs(hed:GetChildren()) do if x:IsA('Sound') then x:Destroy() end end end)()
  84.  
  85. function Lerp(a, b, i)
  86. local com1 = {a.X, a.Y, a.Z, a:toEulerAnglesXYZ()}
  87. local com2 = {b.X, b.Y, b.Z, b:toEulerAnglesXYZ()}
  88. local calx = com1[1] + (com2[1] - com1[1]) * i
  89. local caly = com1[2] + (com2[2] - com1[2]) * i
  90. local calz = com1[3] + (com2[3] - com1[3]) * i
  91. local cala = com1[4] + (com2[4] - com1[4]) * i
  92. local calb = com1[5] + (com2[5] - com1[5]) * i
  93. local calc = com1[6] + (com2[6] - com1[6]) * i
  94. return CFrame.new(calx, caly, calz) * CFrame.Angles(cala, calb, calc)
  95. end
  96.  
  97. function TwnSingleNumber(s,f,m)
  98. local wot=s+(f-s)*m
  99. return wot
  100. end
  101.  
  102. function TwnVector3(q,w,e)
  103. local begin={q.x,q.y,q.z}
  104. local ending={w.x,w.y,w.z}
  105. local bgx=begin[1]+(ending[1]-begin[1])*e
  106. local bgy=begin[2]+(ending[2]-begin[2])*e
  107. local bgz=begin[3]+(ending[3]-begin[3])*e
  108. return Vector3.new(bgx,bgy,bgz)
  109. end
  110.  
  111. newWeld = function(wld, wp0, wp1, wc0x, wc0y, wc0z)
  112. wld = Instance.new("Weld", wp1)
  113. wld.Part0 = wp0
  114. wld.Part1 = wp1
  115. wld.C0 = CFrame.new(wc0x, wc0y, wc0z)
  116. end
  117.  
  118. local angles = CFrame.Angles
  119. function clerp(a, b, t)
  120. return a:lerp(b, t)
  121. end
  122.  
  123. newWeld(law, torso, larm, -1.5, 0.5, 0)
  124. newWeld(raw, torso, rarm, 1.5, 0.5, 0)
  125. newWeld(llw, torso, lleg, -.5, -2, 0)
  126. newWeld(rlw, torso, rleg, .5, -2, 0)
  127. newWeld(hw, torso, hed, 0, 1.5, 0)
  128. local rutwald=Instance.new('Weld',rutprt)
  129. rutwald.Part0=rutprt
  130. rutwald.Part1=torso
  131. rutprt.Weld.C1=CFrame.new(0,0,0)*CFrame.Angles(math.rad(0),math.rad(0),0)
  132. larm.Weld.C1 = CFrame.new(0, 0.5, 0)*CFrame.Angles(math.rad(0),0,0)
  133. rarm.Weld.C1 = CFrame.new(0, 0.5, 0)*CFrame.Angles(math.rad(0),0,0)
  134. rleg.Weld.C1=CFrame.new(0,0,0)*CFrame.Angles(math.rad(0),0,0)
  135. lleg.Weld.C1=CFrame.new(0,0,0)*CFrame.Angles(math.rad(0),0,0)
  136.  
  137. ------------------------------------------------------------------------
  138. -- idk --
  139. ------------------------------------------------------------------------
  140.  
  141. wind = Instance.new('Sound', hammer)
  142. wind.SoundId = "rbxassetid://866649671"
  143. wind.PlaybackSpeed = 1.5
  144. wind.Volume = 1
  145. wind.Looped = true
  146.  
  147. grab = Instance.new('Sound', rarm)
  148. grab.SoundId = "rbxassetid://1296135936"
  149. grab.Volume = 1
  150. grab.Looped = false
  151.  
  152. drop = Instance.new('Sound', hammer)
  153. drop.SoundId = "rbxassetid://873196972"
  154. drop.Volume = 1
  155. drop.Looped = false
  156.  
  157. ghit = Instance.new('Sound', hammer)
  158. ghit.SoundId = "rbxassetid://873196789"
  159. ghit.Volume = 5
  160. ghit.Looped = false
  161.  
  162. gyro = Instance.new('BodyGyro', hammer)
  163. gyro.MaxTorque = Vector3.new(math.huge, math.huge, math.huge)
  164. gyro.CFrame = CFrame.Angles(math.rad(90), 0, 0)
  165.  
  166. holding = false
  167.  
  168. fakearm = rarm:Clone()
  169. fakearm.Name = "fakearm"
  170. fakearm:ClearAllChildren''
  171. fakearm.Parent = char
  172. fakearm.Transparency = 1
  173. fakearm.CanCollide = false
  174. weld = Instance.new('Weld', fakearm)
  175. weld.Part0 = fakearm
  176. weld.Part1 = rarm
  177. weld.C0 = CFrame.new(0, 0, 1)
  178.  
  179. ------------------------------------------------------------------------
  180. -- Lightning --
  181. ------------------------------------------------------------------------
  182.  
  183. Part0 = Instance.new("Part")
  184. ParticleEmitter1 = Instance.new("ParticleEmitter")
  185. Part0.Name = "lightning"
  186. Part0.Parent = nil
  187. Part0.Transparency = 1
  188. Part0.FormFactor = Enum.FormFactor.Symmetric
  189. Part0.Size = Vector3.new(0.820000052, 1.76999962, 2)
  190. Part0.CFrame = CFrame.new(26.3400002, 0.884999812, 44.9500122, 1, 0, 0, 0, 1, 0, 0, 0, 1)
  191. Part0.Position = Vector3.new(26.3400002, 0.884999812, 44.9500122)
  192. ParticleEmitter1.Name = "Lightning"
  193. ParticleEmitter1.Parent = Part0
  194. ParticleEmitter1.Rotation = NumberRange.new(0, 360)
  195. ParticleEmitter1.Size = NumberSequence.new(1.0429447889328,3.3742332458496,0,3.3435583114624,0,3.3742332458496,0,3.6503071784973,0.030674934387207,3.7730062007904,0,3.8036811351776,0,3.8343560695648,0,3)
  196. ParticleEmitter1.Color = ColorSequence.new(Color3.new(0.27451, 0.607843, 1),Color3.new(1, 1, 1))
  197. ParticleEmitter1.LightEmission = 1
  198. ParticleEmitter1.Texture = "http://www.roblox.com/asset/?id=243098098"
  199. ParticleEmitter1.Lifetime = NumberRange.new(1, 1)
  200. ParticleEmitter1.Rate = 12312311808
  201. ParticleEmitter1.Speed = NumberRange.new(0, 0)
  202. ParticleEmitter1.Enabled = true
  203. ParticleEmitter1.Color = ColorSequence.new(Color3.new(0.27451, 0.607843, 1),Color3.new(1, 1, 1))
  204.  
  205. function Lightning(Part0,Part1,Times,Offset,Color,Thickness,Trans)
  206. local magz = (Part0 - Part1).magnitude
  207. local curpos = Part0
  208. local trz = {-Offset,Offset}
  209. for i=1,Times do
  210. local li = Instance.new("Part", torso)
  211. li.Name = "Lightning"
  212. li.TopSurface =0
  213. li.Material = "Neon"
  214. li.BottomSurface = 0
  215. li.Anchored = true
  216. li.Locked = true
  217. li.Transparency = Trans or 0.4
  218. li.BrickColor = BrickColor.new(Color)
  219. li.formFactor = "Custom"
  220. li.CanCollide = false
  221. li.Size = Vector3.new(Thickness,Thickness,magz/Times)
  222. local Offzet = Vector3.new(trz[math.random(1,2)],trz[math.random(1,2)],trz[math.random(1,2)])
  223. local trolpos = CFrame.new(curpos,Part1)*CFrame.new(0,0,magz/Times).p+Offzet
  224.  
  225. if Times == i then
  226. local magz2 = (curpos - Part1).magnitude
  227. li.Size = Vector3.new(Thickness,Thickness,magz2)
  228. li.CFrame = CFrame.new(curpos,Part1)*CFrame.new(0,0,-magz2/2)
  229. else
  230. li.CFrame = CFrame.new(curpos,trolpos)*CFrame.new(0,0,magz/Times/2)
  231. end
  232.  
  233. curpos = li.CFrame*CFrame.new(0,0,magz/Times/2).p
  234. game.Debris:AddItem(li,.1)
  235. end
  236. end
  237.  
  238. BodyParts = {}
  239. Bounding = {}
  240. --table.insert(BodyParts, fx)
  241.  
  242. for _, v in pairs(BodyParts) do
  243. local temp = {X=nil, Y=nil, Z=nil}
  244. temp.X = v.Size.X/2 * 10
  245. temp.Y = v.Size.Y/2 * 10
  246. temp.Z = v.Size.Z/2 * 10
  247. Bounding[v.Name] = temp
  248. end
  249.  
  250. spawn(function()
  251. while wait(math.random(1,7)/10) do
  252. if #BodyParts ~= 0 and #Bounding ~= 0 then
  253. local Body1 = BodyParts[math.random(#BodyParts)]
  254. local Body2 = BodyParts[math.random(#BodyParts)]
  255. local Pos1 = Vector3.new(
  256. math.random(-Bounding[Body1.Name].X, Bounding[Body1.Name].X)/10,
  257. math.random(-Bounding[Body1.Name].Y, Bounding[Body1.Name].Y)/10,
  258. math.random(-Bounding[Body1.Name].Z, Bounding[Body1.Name].Z)/10
  259. )
  260. local Pos2 = Vector3.new(
  261. math.random(-Bounding[Body2.Name].X, Bounding[Body2.Name].X)/10,
  262. math.random(-Bounding[Body2.Name].Y, Bounding[Body2.Name].Y)/10,
  263. math.random(-Bounding[Body2.Name].Z, Bounding[Body2.Name].Z)/10
  264. )
  265. local SPos1 = Body1.Position + Pos1
  266. local SPos2 = Body2.Position + Pos2
  267. Lightning(SPos1, SPos2, 4, 3, "Cyan", .3, .56)
  268. end
  269. end
  270. end)
  271.  
  272. ------------------------------------------------------------------------
  273. -- Keys --
  274. ------------------------------------------------------------------------
  275.  
  276. using = false
  277.  
  278. function weldhammer()
  279. hammer.Anchored = false
  280. hammer.CanCollide = false
  281. grab:Play()
  282. weld = Instance.new('Weld', hammer)
  283. weld.Part0 = rarm
  284. weld.Part1 = hammer
  285. weld.C0 = CFrame.new(0, -0.6, -0.7) * CFrame.Angles(math.rad(0), math.rad(180), math.rad(90))
  286. end
  287.  
  288. function gethammer()
  289. if (fakearm.Position - hammer.Position).magnitude >= 15 then
  290. stopanim = true
  291. using = true
  292. hammer.CanCollide = false
  293. hammer.Anchored = true
  294. wind:Play()
  295.  
  296. -- a = hammer.Touched:connect(function(hit)
  297. -- if hit.Parent:FindFirstChildOfClass'Humanoid' and hit.Parent.Name ~= plr.Name then
  298. -- ghit:Play()
  299. -- if hit.Parent:FindFirstChildOfClass'Humanoid'.MaxHealth <= 100 and hit.Parent:FindFirstChild'HumanoidRootPart' then
  300. -- hit.Parent:FindFirstChildOfClass'Humanoid':TakeDamage(hit.Parent:FindFirstChildOfClass'Humanoid'.MaxHealth/2/2/2)
  301. -- elseif not hit.Parent:FindFirstChildOfClass'Humanoid'.MaxHealth <= 100 then
  302. -- hit.Parent:BreakJoints''
  303. -- elseif hit:IsA'Part' or hit:IsA'MeshPart' or hit:IsA'BasePart' or hit:IsA'UnionOperation' then
  304. -- hit.Anchored = false
  305. -- bv = Instance.new('BodyVelocity', hit)
  306. -- bv.MaxForce = Vector3.new(2e9, 2e9, 2e9)
  307. -- bv.Velocity = -hit.CFrame.lookVector * 50
  308. -- game:service'Debris':AddItem(bv, 0.2)
  309. -- end
  310. -- end
  311. -- end)
  312.  
  313. for i = 0,4 do
  314. wait()
  315. rarm.Weld.C0 = clerp(rarm.Weld.C0, rarm.Weld.C0 * CFrame.new(0,0,0)*CFrame.Angles(math.rad(0), math.rad(0), math.rad(140)), .1)
  316. end
  317. repeat wait()
  318. hammer.CFrame = clerp(hammer.CFrame, fakearm.CFrame * CFrame.new(0, -0.6, 0) * CFrame.Angles(0, math.rad(180), math.rad(90)), .1)
  319. if (fakearm.Position - hammer.Position).magnitude >= 3 then
  320. wind.Volume = 3
  321. else
  322. wind.Volume = (fakearm.Position - hammer.Position).magnitude
  323. end
  324. until (fakearm.Position - hammer.Position).magnitude <= .7
  325.  
  326. a:Disconnect()
  327. hammer.Anchored = false
  328. hammer.CanCollide = false
  329. weldhammer()
  330. wind:Stop()
  331. wait(.3)
  332. stopanim = false
  333. using = false
  334. end
  335. end
  336.  
  337. function drophammer()
  338. a = hammer.Touched:connect(function(hit)
  339. if not hit.Parent:FindFirstChildOfClass'Humanoid' then
  340. drop:Play()
  341. wait(1)
  342. hammer.Anchored = true
  343. a:disconnect()
  344. end
  345. end)
  346.  
  347. hammer.Anchored = false
  348. for _, a in pairs(hammer:children'') do
  349. if a:IsA'Weld' then
  350. a:Destroy''
  351. end
  352. end
  353. hammer.CanCollide = true
  354. end
  355.  
  356. function attacktargets()
  357. if #targets >= 1 and holding then
  358. using = true
  359. hum.WalkSpeed = 0
  360. hum.JumpPower = 0
  361.  
  362. for i = 1,75 do
  363. swait()
  364. larm.Weld.C0 = clerp(larm.Weld.C0, larm.Weld.C0 * CFrame.new(0,0,0)*CFrame.Angles(math.rad(91), math.rad(-6), math.rad(-19)), 0.1)
  365. rarm.Weld.C0 = clerp(rarm.Weld.C0, rarm.Weld.C0 * CFrame.new(0,0,0)*CFrame.Angles(-math.rad(-165), math.rad(0), math.rad(0)), 0.1)
  366. end
  367. hum.WalkSpeed = 16
  368. hum.JumpPower = 50
  369. hammer.Anchored = true
  370. for _, a in pairs(hammer:children'') do
  371. if a:IsA'Weld' then
  372. a:Destroy''
  373. end
  374. end
  375. hammer.CanCollide = false
  376. holding = false
  377. for _, a in pairs(targets) do
  378. ttorso = gettorso(a)
  379. if a ~= nil and gettorso(a) and a:FindFirstChildOfClass'Humanoid' then
  380. repeat wait() a:FindFirstChildOfClass'Humanoid'.WalkSpeed = 5 hammer.CFrame = clerp(hammer.CFrame, ttorso.CFrame * CFrame.Angles(0, math.rad(ttorso.CFrame.lookVector.Y), 0), 0.1) until (hammer.Position - ttorso.Position).magnitude <= 6
  381. a:BreakJoints''
  382. ghit:Play()
  383. end
  384. end
  385. for _, a in pairs(rotate) do
  386. if a ~= nil then
  387. a:Destroy''
  388. end
  389. end
  390. targets = {}
  391. rotate = {}
  392. hammer.CanCollide = false
  393.  
  394.  
  395.  
  396. stopanim = true
  397. hammer.CanCollide = false
  398. hammer.Anchored = true
  399. wind:Play()
  400.  
  401. for i = 0,4 do
  402. wait()
  403. rarm.Weld.C0 = clerp(rarm.Weld.C0, rarm.Weld.C0 * CFrame.new(0,0,0)*CFrame.Angles(math.rad(0), math.rad(0), math.rad(140)), .1)
  404. end
  405. repeat wait()
  406. hammer.CFrame = clerp(hammer.CFrame, fakearm.CFrame * CFrame.new(0, -0.6, 0) * CFrame.Angles(0, math.rad(180), math.rad(90)), .13)
  407. if (fakearm.Position - hammer.Position).magnitude >= 3 then
  408. wind.Volume = 3
  409. else
  410. wind.Volume = (fakearm.Position - hammer.Position).magnitude
  411. end
  412. until (fakearm.Position - hammer.Position).magnitude <= .7
  413.  
  414. hammer.Anchored = false
  415. hammer.CanCollide = false
  416. weldhammer()
  417. wind:Stop()
  418. holding = true
  419. wait(.3)
  420. stopanim = false
  421. using = false
  422. end
  423. end
  424.  
  425. function bgrab()
  426. for _, a in pairs(workspace:children'') do
  427. if a:FindFirstChildOfClass'Humanoid' and gettorso(a) and a.Name ~= plr.Name then
  428. ttorso = gettorso(a)
  429. if (ttorso.Position - rutprt.Position).magnitude <= 3 then
  430. using = true
  431. target2 = a
  432. stopanim2 = true
  433. target:FindFirstChildOfClass'Humanoid'.WalkSpeed = 0
  434. target:FindFirstChildOfClass'Humanoid'.JumpPower = 0
  435. hum.WalkSpeed = 0
  436. hum.JumpPower = 0
  437. for i = 0,25 do
  438. swait()
  439. larm.Weld.C0 = clerp(larm.Weld.C0, CFrame.new(-1.5,.525,0) * CFrame.Angles(math.rad(100), math.rad(20), math.rad(20)), 0.1)
  440. end
  441. weld = Instance.new('Weld', rutprt)
  442. weld.Part0 = rutprt
  443. weld.Part1 = ttorso
  444. weld.C0 = CFrame.new(-0.5, 0, -1.2)
  445.  
  446. wait(.1)
  447.  
  448.  
  449. ttorso.Anchored = true
  450. b = Instance.new('Part', char)
  451. b.Anchored = true
  452. b.CanCollide = false
  453. b.Transparency = 1
  454. b.CFrame = hed.CFrame
  455. b.Position = hed.Position + Vector3.new(0, 50, 0) + hed.CFrame.lookVector * 500
  456.  
  457. d = Instance.new('Part', char)
  458. d.Anchored = true
  459. d.CanCollide = false
  460. d.Transparency = 1
  461. d.CFrame = hed.CFrame
  462. d.Position = hed.Position - Vector3.new(0, 5.6, 0) + hed.CFrame.lookVector * -45
  463.  
  464. wait(.5)
  465. for i = 1,75 do
  466. swait()
  467. rarm.Weld.C0 = clerp(rarm.Weld.C0, rarm.Weld.C0 * CFrame.new(0,0,0)*CFrame.Angles(-math.rad(-165), math.rad(0), math.rad(0)), 0.1)
  468. end
  469. drophammer()
  470. wind:Play()
  471.  
  472. repeat wait()
  473. hammer.Anchored = true
  474. hammer.CFrame = clerp(hammer.CFrame, b.CFrame, 0.1)
  475. wind.Volume = (hammer.Position - d.Position).magnitude
  476. until (hammer.Position - b.Position).magnitude <= 5
  477.  
  478. repeat wait()
  479. hammer.Anchored = true
  480. hammer.CFrame = clerp(hammer.CFrame, d.CFrame, 0.1)
  481. wind.Volume = (hammer.Position - d.Position).magnitude
  482. until (hammer.Position - d.Position).magnitude <= 45
  483.  
  484. target2:BreakJoints''
  485. ghit:Play()
  486. wind:Stop()
  487. wait(.1)
  488. stopanim2 = false
  489. hum.WalkSpeed = 16
  490. hum.JumpPower = 50
  491. b:Destroy''
  492. d:Destroy''
  493. hammer.Anchored = false
  494. weldhammer()
  495. grab:Play()
  496. using = false
  497. end
  498. end
  499. end
  500. end
  501.  
  502. function shield()
  503. using = true
  504. hum.WalkSpeed = 0
  505. hum.JumpPower = 0
  506. for i = 1,75 do
  507. swait()
  508. larm.Weld.C0 = clerp(larm.Weld.C0, larm.Weld.C0 * CFrame.new(0,0,0)*CFrame.Angles(math.rad(91), math.rad(-6), math.rad(-19)), 0.1)
  509. rarm.Weld.C0 = clerp(rarm.Weld.C0, rarm.Weld.C0 * CFrame.new(0,0,0)*CFrame.Angles(-math.rad(-165), math.rad(0), math.rad(0)), 0.1)
  510. end
  511. hum.WalkSpeed = 16
  512. hum.JumpPower = 50
  513. drophammer()
  514. hammer.Anchored = true
  515. hammer.CanCollide = true
  516. using = false
  517. end
  518.  
  519. function stopshield()
  520. gethammer()
  521. end
  522.  
  523. --function transform()
  524. -- stopanim = true
  525. -- stopanim3 = true
  526. -- hum.WalkSpeed = 0
  527. -- hum.JumpPower = 0
  528. -- for i = 0,7 do
  529. -- wait()
  530. -- hammer.Weld.C0 = clerp(hammer.Weld.C0, CFrame.new(0, -2.5, -0.7) * CFrame.Angles(math.rad(-85), math.rad(180), math.rad(90)), 0.1)
  531. -- rarm.Weld.C0 = clerp(rarm.Weld.C0, rarm.Weld.C0 * CFrame.new(0,0,0)*CFrame.Angles(-math.rad(-179), math.rad(0), math.rad(15)), 0.1)
  532. -- hed.Weld.C0 = clerp(hed.Weld.C0, hed.Weld.C0 * CFrame.new(0,0,0.2)*CFrame.Angles(math.rad(40), math.rad(0), math.rad(0)), 0.1)
  533. -- end
  534. -- a = Instance.new('Part', char)
  535. -- a.Name = "hello"
  536. -- a.Size = Vector3.new(0.2, 0.2, 0.2)
  537. -- a.Anchored = true
  538. -- a.CanCollide = false
  539. -- a.Position = hammer.Position + Vector3.new(0, 75, 0)
  540. --
  541. -- wait(3)
  542. -- table.insert(BodyParts, fx)
  543. -- wait(4)
  544. --
  545. -- spawn(function()
  546. -- for i = 0,45 do
  547. -- swait()
  548. -- hammer.Weld.C0 = clerp(hammer.Weld.C0, CFrame.new(0, -0.6, -0.7) * CFrame.Angles(math.rad(0), math.rad(180), math.rad(90)), 0.07)
  549. -- end
  550. -- end)
  551. --
  552. -- hum.WalkSpeed = 16
  553. -- hum.JumpPower = 50
  554. -- stopanim = false
  555. -- stopanim3 = false
  556. --end
  557.  
  558. ------------------------------------------------------------------------
  559. -- Target --
  560. ------------------------------------------------------------------------
  561.  
  562. bg = Instance.new('BillboardGui', plr.PlayerGui)
  563. bg.Size = UDim2.new(15, 0, 15, 0)
  564. bg.AlwaysOnTop = true
  565. il = Instance.new('ImageLabel', bg)
  566. il.Image = "rbxassetid://142406345"
  567. il.BackgroundTransparency = 1
  568. il.Size = UDim2.new(1, 0, 1, 0)
  569. il.ImageColor3 = Color3.new(0,0,0)
  570.  
  571. home = false
  572. down = false
  573. barrier = false
  574. targets = {}
  575. rotate = {}
  576.  
  577. mouse.KeyDown:connect(function(k)
  578. key = k:lower()
  579. if key == "g" and not barrier and not using then
  580. attacktargets()
  581. end
  582.  
  583. if key == "e" and not cooldown and not barrier and not using then
  584. cooldown = true
  585. if not holding and (fakearm.Position - hammer.Position).magnitude >= 15 then
  586. holding = true
  587. gethammer()
  588. elseif holding then
  589. holding = false
  590. drophammer()
  591. end
  592. wait(.3)
  593. cooldown = false
  594. end
  595.  
  596. if key == "q" and not cooldown and holding and not barrier and not using then
  597. cooldown = true
  598. using = true
  599. hum.WalkSpeed = 0
  600. hum.JumpPower = 0
  601. for i = 1,75 do
  602. swait()
  603. larm.Weld.C0 = clerp(larm.Weld.C0, larm.Weld.C0 * CFrame.new(0,0,0)*CFrame.Angles(math.rad(91), math.rad(-6), math.rad(-19)), 0.1)
  604. rarm.Weld.C0 = clerp(rarm.Weld.C0, rarm.Weld.C0 * CFrame.new(0,0,0)*CFrame.Angles(-math.rad(-165), math.rad(0), math.rad(0)), 0.1)
  605. end
  606. hum.WalkSpeed = 16
  607. hum.JumpPower = 50
  608. holding = false
  609. drophammer()
  610. for i = 1,25 do
  611. wait()
  612. hammer.CFrame = clerp(hammer.CFrame, CFrame.new(9999,0,9999), 0.1)
  613. end
  614. wait(.5)
  615. cooldown = false
  616. using = false
  617. end
  618.  
  619. if key == "f" and holding and not cooldown and not barrier and not using then
  620. cooldown = true
  621. bgrab()
  622. wait(.2)
  623. cooldown = false
  624. end
  625.  
  626. if key == "v" and holding and not using then
  627. if not barrier then
  628. shield()
  629. barrier = true
  630. else
  631. barrier = false
  632. stopshield()
  633. end
  634. end
  635. end)
  636.  
  637. mouse.Button1Down:connect(function()
  638. if home and holding then
  639. clone = bg:clone()
  640. clone.Parent = plr.PlayerGui
  641. clone.ImageLabel.ImageColor3 = Color3.new(255,255,255)
  642. clone.Name = "hi"
  643. if gettorso(mouse.Target.Parent) then
  644. clone.Adornee = gettorso(mouse.Target.Parent)
  645. table.insert(targets, mouse.Target.Parent)
  646. table.insert(rotate, clone)
  647. elseif not gettorso(mouse.Target.Parent) then
  648. clone:Destroy''
  649. end
  650. end
  651. end)
  652.  
  653. spawn(function()
  654. while wait() do
  655.  
  656. il.Rotation = il.Rotation + 5
  657. if holding and mouse.Target and mouse.Target.Parent and gettorso(mouse.Target.Parent) and mouse.Target.Parent:FindFirstChildOfClass'Humanoid' and mouse.Target.Parent:FindFirstChildOfClass'Humanoid'.Health ~= 0 then
  658. target = mouse.Target.Parent
  659.  
  660. home = true
  661. il.ImageTransparency = 0
  662. bg.Adornee = gettorso(target)
  663. elseif not mouse.Target then
  664. il.ImageTransparency = 1
  665. home = false
  666. elseif not mouse.Target.Parent then
  667. il.ImageTransparency = 1
  668. home = false
  669. elseif not mouse.Target.Parent:FindFirstChildOfClass'Humanoid' then
  670. il.ImageTransparency = 1
  671. home = false
  672. end
  673.  
  674. end
  675. end)
  676.  
  677. spawn(function()
  678. while wait() do
  679. for _, a in pairs(rotate) do
  680. if a ~= nil then
  681. a.ImageLabel.Rotation = a.ImageLabel.Rotation + 5
  682. elseif targets <= 0 then
  683. a:Destroy''
  684. end
  685. end
  686. end
  687. end)
  688.  
  689. ------------------------------------------------------------------------
  690. -- Manual Pickup --
  691. ------------------------------------------------------------------------
  692.  
  693. hammer.Touched:connect(function(hit)
  694. if not holding and not using and hammer.Anchored and hit.Parent.Name == plr.Name then
  695. holding = true
  696. hammer.Anchored = false
  697. hammer.CanCollide = false
  698. weldhammer()
  699. end
  700. end)
  701.  
  702. ------------------------------------------------------------------------
  703. -- Important functions --
  704. ------------------------------------------------------------------------
  705.  
  706. died = false
  707.  
  708. function swait(num)
  709. if num == 0 or num == nil then
  710. game:service("RunService").Stepped:wait(0)
  711. else
  712. for i = 0, num do
  713. game:service("RunService").Stepped:wait(0)
  714. end
  715. end
  716. end
  717.  
  718. spawn(function()
  719. while wait() do
  720. if holding and hammer:FindFirstChildOfClass'Weld' then
  721. hammer.Anchored = false
  722. end
  723. end
  724. end)
  725.  
  726. x = 0
  727. spawn(function()
  728. while wait() do
  729. if barrier then
  730. x = x + 0.6
  731. hammer.CFrame = rutprt.CFrame * CFrame.Angles(0,0.1-x,0) * CFrame.new(25,0,0)
  732.  
  733. for _, a in pairs(workspace:children'') do
  734. ttorso = gettorso(a)
  735. if a:FindFirstChildOfClass'Humanoid' and a:FindFirstChildOfClass'Humanoid'.Health ~= 0 and a.Name ~= plr.Name and gettorso(a) and (ttorso.Position - hammer.Position).magnitude <= 15 then
  736. a:BreakJoints''
  737. ghit:Play()
  738. elseif a:FindFirstChildOfClass'Humanoid' and not gettorso(a) then
  739. a:BreakJoints''
  740. end
  741. end
  742.  
  743. for _, a in pairs(workspace:children'') do
  744. ttorso = gettorso(a)
  745. if a:FindFirstChildOfClass'Humanoid' and a:FindFirstChildOfClass'Humanoid'.Health ~= 0 and a.Name ~= plr.Name and gettorso(a) and (ttorso.Position - rutprt.Position).magnitude <= 10 then
  746. a:BreakJoints''
  747. ghit:Play()
  748. elseif a:FindFirstChildOfClass'Humanoid' and not a:FindFirstChild'HumanoidRootPart' then
  749. a:BreakJoints''
  750. end
  751. end
  752.  
  753. if x == 1 then
  754. x = 0.1
  755. end
  756. end
  757. end
  758. end)
  759.  
  760. ------------------------------------------------------------------------
  761. -- Animations --
  762. ------------------------------------------------------------------------
  763.  
  764. while true do
  765. swait()
  766.  
  767. if holding then
  768. gyro.Parent = nil
  769. elseif not holding then
  770. gyro.Parent = hammer
  771. gyro.Name = "hamma"
  772. end
  773.  
  774. ypcall(function()
  775. if anim~=lastanim then
  776. runtime=0
  777. end
  778. lastanim=anim
  779. hum.CameraOffset=(rutprt.CFrame:toObjectSpace(hed.CFrame)).p+Vector3.new(0,-1.25,0)
  780. syne=syne+.95
  781. if not otheranims and not swimming then
  782. if (torso.Velocity*Vector3.new(1, 0, 1)).magnitude < 1 and not hum.Jump then-- and torso.Velocity.y<5 and torso.Velocity.y>-5
  783. anim="Idling"
  784. elseif hum.FloorMaterial ~= Enum.Material.Air and (rutprt.Velocity*Vector3.new(1, 0, 1)).magnitude > 1 and (rutprt.Velocity*Vector3.new(1, 0, 1)).magnitude < RunSpeed-10 and not hum.Jump then-- and torso.Velocity.y<5 and torso.Velocity.y>-5
  785. anim="Walking"
  786. elseif (torso.Velocity*Vector3.new(1, 0, 1)).magnitude > RunSpeed-10 and not hum.Jump then-- and torso.Velocity.y<5 and torso.Velocity.y>-5
  787. anim="Sprinting"
  788. elseif torso.Velocity.y < -1 then
  789. anim='Falling'
  790. end
  791. end
  792.  
  793. if anim=="Idling" and hum.WalkSpeed ~= 0 then
  794. idlesineinc=35
  795.  
  796. if not stopanim then
  797. rarm.Weld.C0=clerp(rarm.Weld.C0,CFrame.new(1.5,.55+math.cos(syne/idlesineinc)/25,0)*CFrame.Angles(math.rad(1),math.rad(0),math.rad(6)),.1)
  798. end
  799.  
  800. if not stopanim2 then
  801. larm.Weld.C0=clerp(larm.Weld.C0,CFrame.new(-1.5,.55+math.cos(syne/idlesineinc)/25,0)*CFrame.Angles(math.rad(0),0,math.rad(-6)),.1)
  802. end
  803.  
  804. if not stopanim3 then
  805. hed.Weld.C0=clerp(hed.Weld.C0,CFrame.new(0,1.5+math.cos(syne/idlesineinc)/50,0)*CFrame.Angles(math.cos(syne/idlesineinc)/40,0,0),.1)
  806. end
  807.  
  808. lleg.Weld.C0=clerp(lleg.Weld.C0,CFrame.new(-.55,-1.9-math.cos(syne/idlesineinc)/20,(math.cos(syne/idlesineinc)/35))*CFrame.Angles(-(math.cos(syne/idlesineinc)/35),0,math.rad(-2.5)),.1)
  809. rleg.Weld.C0=clerp(rleg.Weld.C0,CFrame.new(.55,-1.9-math.cos(syne/idlesineinc)/20,(math.cos(syne/idlesineinc)/35))*CFrame.Angles(-(math.cos(syne/idlesineinc)/35),0,math.rad(2.5)),.1)
  810. rutprt.Weld.C0=clerp(rutprt.Weld.C0,CFrame.new(0,-.1+math.cos(syne/idlesineinc)/20,0)*CFrame.Angles(math.cos(syne/idlesineinc)/35+math.rad(0),math.rad(0),math.rad(0)),.1)
  811. end
  812.  
  813. if anim=="Walking" and hum.WalkSpeed ~= 0 then
  814. if not stopanim then
  815. rarm.Weld.C0=clerp(rarm.Weld.C0,CFrame.new(1.5,.525+math.cos(syne/15)/25,0)*CFrame.Angles(math.cos(syne/6)/1.25,math.rad(5),-(math.cos(syne/6.75)/15)+math.rad(3)),.1)
  816. end
  817.  
  818. if not stopanim2 then
  819. larm.Weld.C0=clerp(larm.Weld.C0,CFrame.new(-1.5,.525+math.cos(syne/15)/25,0)*CFrame.Angles(-(math.cos(syne/6)/1.25),0,-(math.cos(syne/6.75)/15)-math.rad(3)),.1)
  820. end
  821.  
  822. if not stopanim3 then
  823. hed.Weld.C0=clerp(hed.Weld.C0,CFrame.new(0,1.5+math.cos(syne/20)/50,0)*CFrame.Angles(-math.cos(syne/3)/20,0,0),.1)
  824. end
  825.  
  826. lleg.Weld.C0=clerp(lleg.Weld.C0,CFrame.new(-.55,-1.9-math.cos(syne/6)/10,-(math.cos(syne/6)/1.125))*CFrame.Angles(math.cos(syne/6)/1.125,0,math.rad(-2.5)),.1)
  827. rleg.Weld.C0=clerp(rleg.Weld.C0,CFrame.new(.55,-1.9-math.cos(syne/6)/10,math.cos(syne/6)/1.125)*CFrame.Angles(-(math.cos(syne/6)/1.125),0,math.rad(2.5)),.1)
  828. rutprt.Weld.C0=clerp(rutprt.Weld.C0,CFrame.new(0,-.1+math.cos(syne/3.375)/20,math.cos(syne/3)/5)*CFrame.Angles(math.cos(syne/3)/20+math.rad(-3.5),math.cos(syne/6)/10,-math.cos(syne/6)/30+math.sin(rutprt.RotVelocity.y/2)/7.5),.1)
  829. end
  830.  
  831. if hum.WalkSpeed == 0 then
  832. if not stopanim then
  833. rarm.Weld.C0=clerp(rarm.Weld.C0,CFrame.new(1.5,.55+math.cos(syne/idlesineinc)/25,0)*CFrame.Angles(math.rad(1),math.rad(0),math.rad(6)),.1)
  834. end
  835.  
  836. if not stopanim2 then
  837. larm.Weld.C0=clerp(larm.Weld.C0,CFrame.new(-1.5,.55+math.cos(syne/idlesineinc)/25,0)*CFrame.Angles(math.rad(0),0,math.rad(-6)),.1)
  838. end
  839.  
  840. if not stopanim3 then
  841. hed.Weld.C0=clerp(hed.Weld.C0,CFrame.new(0,1.5+math.cos(syne/idlesineinc)/50,0)*CFrame.Angles(math.cos(syne/idlesineinc)/40,0,0),.1)
  842. end
  843.  
  844. lleg.Weld.C0=clerp(lleg.Weld.C0,CFrame.new(-.55,-1.9-math.cos(syne/idlesineinc)/20,(math.cos(syne/idlesineinc)/35))*CFrame.Angles(-(math.cos(syne/idlesineinc)/35),0,math.rad(-2.5)),.1)
  845. rleg.Weld.C0=clerp(rleg.Weld.C0,CFrame.new(.55,-1.9-math.cos(syne/idlesineinc)/20,(math.cos(syne/idlesineinc)/35))*CFrame.Angles(-(math.cos(syne/idlesineinc)/35),0,math.rad(2.5)),.1)
  846. rutprt.Weld.C0=clerp(rutprt.Weld.C0,CFrame.new(0,-.1+math.cos(syne/idlesineinc)/20,0)*CFrame.Angles(math.cos(syne/idlesineinc)/35+math.rad(0),math.rad(0),math.rad(0)),.1)
  847. end
  848.  
  849. if 1 < rutprt.Velocity.y and hum.FloorMaterial == Enum.Material.Air and hum.JumpPower ~= 0 then
  850. hed.Weld.C0=clerp(hed.Weld.C0,CFrame.new(0,1.5,-.3)*CFrame.Angles(math.rad(-40),0,0),.065)
  851. rarm.Weld.C0=clerp(rarm.Weld.C0,CFrame.new(1.5,.525,0)*CFrame.Angles(math.rad(10),0,math.rad(70)),.1)
  852. larm.Weld.C0=clerp(larm.Weld.C0,CFrame.new(-1.5,.525,0)*CFrame.Angles(math.rad(10),0,math.rad(-70)),.1)
  853. lleg.Weld.C0=clerp(lleg.Weld.C0,CFrame.new(-.55,-1.2,0)*CFrame.Angles(math.rad(-14),0,math.rad(-2.5)),.1)
  854. rleg.Weld.C0=clerp(rleg.Weld.C0,CFrame.new(.55,-1.9,0)*CFrame.Angles(math.rad(0),0,math.rad(2.5)),.1)
  855. rutprt.Weld.C0=clerp(rutprt.Weld.C0,CFrame.new(0,-.1+math.cos(syne/20)/20,0)*CFrame.Angles(math.rad(10),math.rad(0),math.rad(0)),.1)
  856. elseif -1 > rutprt.Velocity.y and hum.FloorMaterial == Enum.Material.Air then
  857. hed.Weld.C0=clerp(hed.Weld.C0,CFrame.new(0,1.5,-.3)*CFrame.Angles(math.rad(-40),0,0),.065)
  858. rarm.Weld.C0=clerp(rarm.Weld.C0,CFrame.new(1.5,.525,0)*CFrame.Angles(math.rad(10),0,math.rad(70)),.06)
  859. larm.Weld.C0=clerp(larm.Weld.C0,CFrame.new(-1.5,.525,0)*CFrame.Angles(math.rad(10),0,math.rad(-70)),.06)
  860. lleg.Weld.C0=clerp(lleg.Weld.C0,CFrame.new(-.55,-1.2,0)*CFrame.Angles(math.rad(-14),0,math.rad(-2.5)),.06)
  861. rleg.Weld.C0=clerp(rleg.Weld.C0,CFrame.new(.55,-1.9,0)*CFrame.Angles(math.rad(0),0,math.rad(2.5)),.06)
  862. rutprt.Weld.C0=clerp(rutprt.Weld.C0,CFrame.new(0,-.1+math.cos(syne/20)/20,0)*CFrame.Angles(math.rad(10),math.rad(0),math.rad(0)),.06)
  863. end
  864. end)
  865. end
Advertisement
Add Comment
Please, Sign In to add comment
Advertisement