Advertisement
tripono

Untitled

Sep 8th, 2015
107
0
Never
Not a member of Pastebin yet? Sign Up, it unlocks many cool features!
text 29.89 KB | None | 0 0
  1. --my sword
  2.  
  3. function clerp(c1,c2,al)
  4. local com1 = {c1.X,c1.Y,c1.Z,c1:toEulerAnglesXYZ()}
  5. local com2 = {c2.X,c2.Y,c2.Z,c2:toEulerAnglesXYZ()}
  6. for i,v in pairs(com1) do
  7. com1[i] = v+(com2[i]-v)*al
  8. end
  9. return CFrame.new(com1[1],com1[2],com1[3]) * CFrame.Angles(select(4,unpack(com1)))
  10. end
  11.  
  12. local parts,last = {}
  13. local function scan(parent)
  14. for _,v in pairs(parent:GetChildren()) do
  15. if (v:IsA("BasePart")) then
  16. if (last) then
  17. local w = Instance.new("Weld")
  18. w.Name = ("%s_Weld"):format(v.Name)
  19. w.Part0,w.Part1 = last,v
  20. w.C0 = last.CFrame:inverse()
  21. w.C1 = v.CFrame:inverse()
  22. w.Parent = last
  23. end
  24. last = v
  25. table.insert(parts,v)
  26. end
  27. scan(v)
  28. end
  29. end
  30. scan(model)
  31. for _,v in pairs(parts) do
  32. v.Anchored = false
  33. v.Locked = true
  34. end
  35. for _,v in pairs(parts) do
  36. v.CanCollide = false
  37. end
  38.  
  39. local handle = Instance.new("Part", model)
  40. handle.FormFactor = "Custom"
  41. handle.BrickColor = BrickColor.new("Bright Purple")
  42. handle.Transparency = .8
  43. handle.TopSurface = 0
  44. handle.BottomSurface = 0
  45. handle.Size = Vector3.new(0, 0, 0)
  46.  
  47. local weldtohandle = Instance.new("Weld", char)
  48. weldtohandle.Part0 = handle
  49. weldtohandle.Part1 = obj18
  50.  
  51. local wld = Instance.new("Weld", handle)
  52. wld.Part0 = handle
  53. wld.Part1 = ra
  54. wld.C1 = CFrame.new(0, -1, 0) * CFrame.Angles(0, math.pi, 0)
  55.  
  56. rj.C0 = CFrame.new()
  57. rj.C1 = CFrame.new()
  58.  
  59. neck.C0 = CFrame.new(0, 1, 0)
  60. neck.C1 = CFrame.new(0, -0.5, 0)
  61.  
  62. local speed = 0.5
  63. local angle = 0
  64. local anglespeed = 1
  65. local STOPtrail = true
  66. rsc0 = rm.C0
  67. lsc0 = lm.C0
  68. llc0 = llegm.C0
  69. rlc0 = rlegm.C0
  70. rootc0 = rj.C0
  71. neckc0 = neck.C0
  72. swordc0 = wld.C0
  73. action = "None"
  74.  
  75. mouse.KeyDown:connect(function(k)
  76. if k == "e" then
  77. action = 'PowerSlash'
  78. end
  79. if string.byte(k) == 48 then
  80. if action == "Slash1" or action == "Slash2" then return end
  81. humanoid.WalkSpeed = 17
  82. end
  83. end)
  84. mouse.KeyUp:connect(function(k)
  85. if string.byte(k) == 48 then
  86. if action == "Slash1" or action == "Slash2" then return end
  87. humanoid.WalkSpeed = 10
  88. end
  89. end)
  90.  
  91. slash1 = true
  92. slash2 = false
  93.  
  94. punchsound = Instance.new("Sound", head)
  95. punchsound.SoundId = "rbxassetid://138285836"
  96. punchsound.Volume = 1
  97. slashsound = Instance.new("Sound", head)
  98. slashsound.SoundId = "rbxasset://sounds/swordslash.mp3"
  99. slashsound.Volume = 1
  100. icebreak = Instance.new("Sound")
  101. icebreak.SoundId = "rbxassetid://138122923"
  102. icebreak.Volume = .75
  103. chargesound = Instance.new("Sound", head)
  104. chargesound.Volume = 10
  105. chargesound.SoundId = "rbxassetid://2101137"
  106. freezes = Instance.new("Sound")
  107. freezes.SoundId = "rbxassetid://136572767"
  108. freezes.Volume = 10
  109. mouse.Button1Down:connect(function()
  110. if slash1 and action == "None" then
  111. slashsound:play()
  112. action = "Slash1"
  113. slash1 = false
  114. slash2 = true
  115. return
  116. elseif slash2 and action == "None" then
  117. slashsound:play()
  118. action = "Slash2"
  119. slash1 = true
  120. slash2 = false
  121. return
  122. end
  123.  
  124.  
  125. end)
  126.  
  127. humanoid.Jumping:connect(function()
  128. action = "Jumping"
  129. end)
  130.  
  131. local controllerService = game:GetService("ControllerService")
  132. local controller = controllerService:GetChildren()[1]
  133.  
  134. do
  135. local trail = {}
  136. local obj = obj16
  137. for i = 1, 8 do
  138. local p = Instance.new("Part")
  139. p.BrickColor = obj.BrickColor
  140. p.formFactor = "Custom"
  141. p.Size = Vector3.new(1,1,1)
  142. p.Locked = true
  143. p.Anchored = true
  144. p.CanCollide = false
  145. local mesh = Instance.new("CylinderMesh", p)
  146. mesh.Name = "Mesh"
  147. table.insert(trail,{p,0})
  148. end
  149. local lastpos = obj.Position
  150. local updatethis = 0
  151. local dontdothis = false
  152. game:service'RunService'.Stepped:connect(function()
  153. if STOPtrail == false then
  154. do
  155. local effect = Instance.new("Part", char)
  156. effect.CanCollide = false
  157. effect.FormFactor = 'Custom'
  158. effect.Size = Vector3.new(.2,.2,.2)
  159. effect.Transparency = .1
  160. effect.Anchored = true
  161. effect.CFrame = obj2.CFrame * CFrame.new(math.random(-1,1)/2, -math.random(-2,4), math.random(-1,1)/2) * CFrame.Angles(math.random(1,4), math.random(1,4), math.random(1,4))
  162. effect.BrickColor = obj16.BrickColor
  163. local effectmesh = Instance.new("BlockMesh", effect)
  164. effectmesh.Scale = Vector3.new(.5, .5, .5)
  165. coroutine.wrap(function()
  166. while wait() and effect and effect.Transparency <= 1 do
  167. effectmesh.Scale = effectmesh.Scale + Vector3.new(.25, .25, .25)
  168. effect.Transparency = effect.Transparency + .1
  169. end
  170. effect:Destroy()
  171. end)()
  172. end
  173. updatethis = ((updatethis) % 8) + 1
  174. local dstnc = (obj.Position - lastpos).magnitude
  175. trail[updatethis][1].Mesh.Scale = Vector3.new(.2,dstnc,.2)
  176. trail[updatethis][1].Parent = obj.Parent
  177. trail[updatethis][1].CFrame = CFrame.new((obj.Position + lastpos)/2,obj.Position) * CFrame.Angles(math.pi/2, 0, 0)
  178. trail[updatethis][2] = 0
  179. for i,v in pairs(trail) do
  180. v[2] = v[2] + .15
  181. v[1].Transparency = v[2]
  182. end
  183. lastpos = obj.Position
  184. else
  185. for i,v in pairs(trail) do
  186. v[2] = v[2] + 1
  187. v[1].Transparency = v[2]
  188. end
  189. end
  190. lastpos = obj.Position
  191. end)
  192. end
  193.  
  194.  
  195. while wait() do
  196. angle = (angle % 100) + anglespeed/10
  197. mvmnt = math.pi * math.sin(math.pi*2/100*(angle*10))
  198. local rscf = rsc0
  199. local lscf = lsc0
  200. local rlcf = rlc0
  201. local llcf = llc0
  202. local rjcf = CFrame.new()
  203. local ncf = neckc0
  204. local hndlcf = swordc0
  205. local ray = Ray.new(rootpart.Position, Vector3.new(0, -5.1, 0))
  206. local hitz, enz = workspace:FindPartOnRay(ray, char)
  207. if not hitz and torso.Velocity.y <= -0.5 then
  208. if action == "None" then
  209. speed = 0.3
  210. anglespeed = 1/2
  211. rjcf = rootc0 * CFrame.Angles(math.pi/18, 0, 0)
  212. rscf = rsc0 * CFrame.Angles(-math.pi/.8, 0, 0)
  213. lscf = lsc0 * CFrame.Angles(-math.pi/.8, 0, 0)
  214. rlcf = rlc0 * CFrame.new(0, .4, -.3) * CFrame.Angles(-math.pi/20, 0, math.rad(5))
  215. llcf = llc0 * CFrame.new(0, .4, -.3) * CFrame.Angles(-math.pi/20, 0, -math.rad(5))
  216. end
  217. elseif action == "Jumping" then
  218. for waiting = 0, 10 do
  219. rjcf = rootc0 * CFrame.Angles(-math.pi/18, 0, 0)
  220. rscf = rsc0 * CFrame.Angles(-math.pi/10, 0, 0)
  221. lscf = lsc0 * CFrame.Angles(-math.pi/10, 0, 0)
  222. rlcf = rlc0 * CFrame.new(0, 0.7, -0.5) * CFrame.Angles(-math.pi/14, 0, 0)
  223. llcf = llc0 * CFrame.Angles(-math.pi/20, 0, 0)
  224. hndlcf = swordc0
  225. rm.C0 = clerp(rm.C0,rscf,speed)
  226. lm.C0 = clerp(lm.C0,lscf,speed)
  227. rj.C0 = clerp(rj.C0,rjcf,speed)
  228. neck.C0 = clerp(neck.C0,ncf,speed)
  229. rlegm.C0 = clerp(rlegm.C0,rlcf,speed)
  230. llegm.C0 = clerp(llegm.C0,llcf,speed)
  231. wld.C0 = clerp(wld.C0,hndlcf,speed)
  232. wait()
  233. end
  234. action = "None"
  235. elseif action == "PowerSlash" then
  236. speed = .5
  237. anglespeed = 0
  238. for slash1 = 0, 40 do
  239. angle = (angle % 100) + anglespeed/10
  240. mvmnt = math.pi * math.sin(math.pi*2/100*(angle*10))
  241. ncf = neckc0 * CFrame.Angles(math.pi*.25, 0, 0)
  242. rjcf = rootc0
  243. rscf = rsc0 * CFrame.Angles(math.pi/1.25, 0, 0)
  244. lscf = lsc0
  245. rlcf = rlc0 * CFrame.Angles(0, 0, math.rad(5.5))
  246. llcf = llc0 * CFrame.Angles(0, 0, -math.rad(5.5))
  247. hndlcf = swordc0 * CFrame.Angles(math.pi*.25, 0, 0)
  248. if slash1 >= 10 then
  249. local effect = Instance.new("Part", char)
  250. effect.CanCollide = false
  251. effect.FormFactor = 'Custom'
  252. effect.Size = Vector3.new(.25,.25,.25)
  253. effect.Transparency = .1
  254. effect.Anchored = true
  255. effect.CFrame = obj2.CFrame * CFrame.new(math.random(-1,1), math.random(-1,5), math.random(-1,1)) * CFrame.Angles(math.random(1,4), math.random(1,4), math.random(1,4))
  256. effect.BrickColor = BrickColor.new"Bright Purple"
  257. local effectmesh = Instance.new("BlockMesh", effect)
  258. coroutine.wrap(function()
  259. if not chargesound.IsPlaying then chargesound:play() end
  260. while wait() and effect and effect.Transparency <= 1 do
  261. effectmesh.Scale = effectmesh.Scale + Vector3.new(.55, .55, .55)
  262. effect.Transparency = effect.Transparency + .1
  263. end
  264. effect:Destroy()
  265. end)()
  266. end
  267. if Vector3.new(torso.Velocity.x, 0, torso.Velocity.z).magnitude >= 2 then
  268. anglespeed = 5
  269. rlcf = rlc0 * CFrame.Angles(math.sin(-angle)*.55, 0, math.rad(5))
  270. llcf = llc0 * CFrame.Angles(math.sin(angle)*.55, 0, -math.rad(5))
  271. end
  272. rm.C0 = clerp(rm.C0,rscf,speed)
  273. lm.C0 = clerp(lm.C0,lscf,speed)
  274. rj.C0 = clerp(rj.C0,rjcf,speed)
  275. neck.C0 = clerp(neck.C0,ncf,speed)
  276. rlegm.C0 = clerp(rlegm.C0,rlcf,speed)
  277. llegm.C0 = clerp(llegm.C0,llcf,speed)
  278. wld.C0 = clerp(wld.C0,hndlcf,speed)
  279. wait()
  280. end
  281. for slash2 = 0, 20 do
  282. angle = (angle % 100) + anglespeed/10
  283. mvmnt = math.pi * math.sin(math.pi*2/100*(angle*10))
  284. ncf = neckc0
  285. rjcf = rootc0
  286. rscf = rsc0 * CFrame.Angles(math.pi/2, 0, math.pi/2.5)
  287. lscf = lsc0 * CFrame.Angles(math.pi/2, 0, -math.pi/2.5)
  288. rlcf = rlc0 * CFrame.Angles(0, 0, math.rad(5.5))
  289. llcf = llc0 * CFrame.Angles(0, 0, -math.rad(5.5))
  290. hndlcf = swordc0 * CFrame.Angles(-math.pi/2, 0, 0)
  291. if Vector3.new(torso.Velocity.x, 0, torso.Velocity.z).magnitude >= 2 then
  292. anglespeed = 5
  293. rlcf = rlc0 * CFrame.Angles(math.sin(-angle)*.55, 0, math.rad(5.5))
  294. llcf = llc0 * CFrame.Angles(math.sin(angle)*.55, 0, -math.rad(5.5))
  295. end
  296. rm.C0 = clerp(rm.C0,rscf,speed)
  297. lm.C0 = clerp(lm.C0,lscf,speed)
  298. rj.C0 = clerp(rj.C0,rjcf,speed)
  299. neck.C0 = clerp(neck.C0,ncf,speed)
  300. rlegm.C0 = clerp(rlegm.C0,rlcf,speed)
  301. llegm.C0 = clerp(llegm.C0,llcf,speed)
  302. wld.C0 = clerp(wld.C0,hndlcf,speed)
  303. wait()
  304. end
  305. for slash3 = 0, 10 do
  306. angle = (angle % 100) + anglespeed/10
  307. mvmnt = math.pi * math.sin(math.pi*2/100*(angle*10))
  308. ncf = neckc0
  309. rjcf = rootc0
  310. rscf = rsc0 * CFrame.Angles(math.pi/2, 0, -math.pi/2.5)
  311. lscf = lsc0 * CFrame.Angles(math.pi/2, 0, math.pi/2.5)
  312. rlcf = rlc0 * CFrame.Angles(0, 0, math.rad(5.5))
  313. llcf = llc0 * CFrame.Angles(0, 0, -math.rad(5.5))
  314. hndlcf = swordc0 * CFrame.Angles(-math.pi/2, 0, 0)
  315. if Vector3.new(torso.Velocity.x, 0, torso.Velocity.z).magnitude >= 2 then
  316. anglespeed = 10
  317. rlcf = rlc0 * CFrame.Angles(math.sin(-angle)*.55, 0, math.rad(5.5))
  318. llcf = llc0 * CFrame.Angles(math.sin(angle)*.55, 0, -math.rad(5.5))
  319. end
  320. rm.C0 = clerp(rm.C0,rscf,speed)
  321. lm.C0 = clerp(lm.C0,lscf,speed)
  322. rj.C0 = clerp(rj.C0,rjcf,speed)
  323. neck.C0 = clerp(neck.C0,ncf,speed)
  324. rlegm.C0 = clerp(rlegm.C0,rlcf,speed)
  325. llegm.C0 = clerp(llegm.C0,llcf,speed)
  326. wld.C0 = clerp(wld.C0,hndlcf,speed)
  327. wait()
  328. end
  329. coroutine.wrap(function()
  330. chargesound:stop()
  331. local circle = Instance.new("Part", char)
  332. circle.Anchored = true
  333. circle.FormFactor = 'Custom'
  334. circle.BrickColor = BrickColor.new('Bright Green')
  335. circle.Size = Vector3.new(3, .2, 3)
  336. circle.Transparency = .3
  337. circle.CFrame = torso.CFrame * CFrame.new(0, -3, 0)
  338. game:service'Debris':AddItem(circle, 3)
  339. Instance.new("CylinderMesh", circle)
  340. for i = 1, 5 do
  341. circle.Mesh.Scale = circle.Mesh.Scale + Vector3.new(1+i, 0, 1+i)
  342. wait()
  343. end
  344. for angle = 1, 360, 5 do
  345. local p = Instance.new('Part', circle)
  346. p.Size = Vector3.new(4, 8, 4)
  347. p.BrickColor = BrickColor.new("Bright Blue")
  348. p.Anchored = true
  349. p.CFrame = circle.CFrame
  350. * CFrame.new(0, -5, 0)
  351. * CFrame.Angles(0, math.rad(angle), 0)
  352. * CFrame.new(0, 0, 30)
  353. * CFrame.Angles(math.random(-1,1)/2, 0, math.random(-1,1)/2)
  354. Instance.new("SpecialMesh", p).MeshId = "rbxassetid://25646277"
  355. p.Mesh.Scale = Vector3.new(7,40,7)
  356. end
  357. for i,v in pairs(workspace:children()) do
  358. coroutine.wrap(function()
  359. if v and v:findFirstChild("Humanoid") and v.Name ~= char.Name and v:findFirstChild("Torso") and (v:findFirstChild("Torso").Position - circle.Position).magnitude <= 29 then
  360. v:findFirstChild("Torso").Anchored = true
  361. local freezesound = freezes:clone()
  362. freezesound.Parent = v:findFirstChild'Torso'
  363. freezesound:play()
  364. for i = 1, 10 do
  365. coroutine.wrap(function()
  366. local freeze = Instance.new("Part", workspace)
  367. freeze.Anchored = true
  368. freeze.Size = Vector3.new(4.5,4.1,4.9)
  369. freeze.CFrame = v:findFirstChild'Torso'.CFrame * CFrame.new(math.random(-2, 2), -math.random() - 2.5, math.random(-2, 2)) * CFrame.Angles(math.random(-2, 2),math.random(-2, 2),math.random(-2, 2))
  370. freeze.CanCollide = false
  371. freeze.TopSurface = 0
  372. freeze.BottomSurface = 0
  373. freeze.Transparency = .5
  374. freeze.BrickColor = BrickColor.new'Bright Purple'
  375. wait(10)
  376. freeze.Anchored = false
  377. freeze:breakJoints()
  378. freeze:breakJoints()
  379. freeze:breakJoints()
  380. freeze:breakJoints()
  381. game:service'Debris':AddItem(freeze, 10)
  382. end)()
  383. end
  384. v:findFirstChild("Humanoid"):TakeDamage(50.9)
  385. wait(10)
  386. local icebreaksound = icebreak:clone()
  387. icebreaksound.Parent = v:findFirstChild'Torso'
  388. icebreaksound:play()
  389. v:findFirstChild("Torso").Anchored = false
  390. end
  391. end)()
  392. end
  393. end)()
  394. action = 'None'
  395. elseif action == "Slash1" then
  396. STOPtrail = false
  397. speed = 0.3
  398. anglespeed = 0
  399. for slash1 = 0, 12 do
  400. angle = (angle % 100) + anglespeed/10
  401. mvmnt = math.pi * math.sin(math.pi*2/100*(angle*10))
  402. ncf = neckc0 * CFrame.Angles(0, -math.rad(45), 0)
  403. rjcf = rootc0 * CFrame.new(0, 0, -.6) * CFrame.Angles(0, math.rad(45), 0)
  404. rscf = rsc0 * CFrame.new(-.35, 0, -.5) * CFrame.Angles(math.rad(165), 0, -math.rad(65))
  405. lscf = lsc0 * CFrame.new(.35, 0, 0) * CFrame.Angles(math.rad(165), 0, math.rad(25))
  406. rlcf = rlc0 * CFrame.Angles(math.rad(12.5), -math.rad(45), math.rad(10.5))
  407. llcf = llc0 * CFrame.Angles(-math.rad(12.5), -math.rad(45), -math.rad(10.5))
  408. hndlcf = swordc0 * CFrame.Angles(math.pi/2, math.pi, -math.rad(105))
  409. if Vector3.new(torso.Velocity.x, 0, torso.Velocity.z).magnitude >= 2 then
  410. anglespeed = 5
  411. rlcf = rlc0 * CFrame.Angles(math.sin(-angle)*.55, -math.rad(45), math.rad(10.5))
  412. llcf = llc0 * CFrame.Angles(math.sin(angle)*.55, -math.rad(45), -math.rad(10.5))
  413. end
  414. rm.C0 = clerp(rm.C0,rscf,speed)
  415. lm.C0 = clerp(lm.C0,lscf,speed)
  416. rj.C0 = clerp(rj.C0,rjcf,speed)
  417. neck.C0 = clerp(neck.C0,ncf,speed)
  418. rlegm.C0 = clerp(rlegm.C0,rlcf,speed)
  419. llegm.C0 = clerp(llegm.C0,llcf,speed)
  420. wld.C0 = clerp(wld.C0,hndlcf,speed)
  421. wait()
  422. end
  423. coroutine.wrap(function()
  424. for slash2 = 0, 19 do
  425. angle = (angle % 100) + anglespeed/10
  426. mvmnt = math.pi * math.sin(math.pi*2/100*(angle*10))
  427. ncf = neckc0 * CFrame.Angles(-math.pi/15, -math.rad(45), 0)
  428. rjcf = rootc0 * CFrame.new(0, 0, -.6) * CFrame.Angles(0, math.rad(45), 0)
  429. rscf = rsc0 * CFrame.new(-.35, 0, -.5) * CFrame.Angles(math.rad(45), 0, -math.rad(65))
  430. lscf = lsc0 * CFrame.new(.35, 0, 0) * CFrame.Angles(math.rad(45), 0, math.rad(25))
  431. rlcf = rlc0 * CFrame.Angles(math.rad(12.5), -math.rad(45), math.rad(10.5))
  432. llcf = llc0 * CFrame.Angles(-math.rad(12.5), -math.rad(45), -math.rad(10.5))
  433. hndlcf = swordc0 * CFrame.Angles(math.pi/2, math.pi, -math.rad(105))
  434. if Vector3.new(torso.Velocity.x, 0, torso.Velocity.z).magnitude >= 2 then
  435. anglespeed = 5
  436. rlcf = rlc0 * CFrame.Angles(math.sin(-angle)*.55, -math.rad(45), math.rad(10.5))
  437. llcf = llc0 * CFrame.Angles(math.sin(angle)*.55, -math.rad(45), -math.rad(10.5))
  438. end
  439. rm.C0 = clerp(rm.C0,rscf,speed)
  440. lm.C0 = clerp(lm.C0,lscf,speed)
  441. rj.C0 = clerp(rj.C0,rjcf,speed)
  442. neck.C0 = clerp(neck.C0,ncf,speed)
  443. rlegm.C0 = clerp(rlegm.C0,rlcf,speed)
  444. llegm.C0 = clerp(llegm.C0,llcf,speed)
  445. wld.C0 = clerp(wld.C0,hndlcf,speed)
  446. wait()
  447. end
  448. STOPtrail = true
  449. end)()
  450. wait(.05)
  451. for i,v in pairs(workspace:children()) do
  452. if v and v:findFirstChild("Humanoid") and v.Name ~= char.Name and v:findFirstChild("Torso") and (v:findFirstChild("Torso").Position - obj2.Position).magnitude <= 5 then
  453. coroutine.wrap(function()
  454. v:findFirstChild("Humanoid"):TakeDamage(20.25)
  455. punchsound:play()
  456. v:findFirstChild'Humanoid'.PlatformStand = true
  457. local gyro = Instance.new("BodyGyro", v:findFirstChild'Torso')
  458. gyro.maxTorque = Vector3.new(1/0,1/0,1/0)
  459. gyro.cframe = torso.CFrame * CFrame.Angles(math.pi/2, 0, 0)
  460. game:service'Debris':AddItem(gyro, .1)
  461. wait(.75)
  462. v:findFirstChild'Humanoid'.PlatformStand = false
  463. end)()
  464. end
  465. end
  466. wait(.15)
  467. for i,v in pairs(workspace:children()) do
  468. if v and v:findFirstChild("Humanoid") and v.Name ~= char.Name and v:findFirstChild("Torso") and (v:findFirstChild("Torso").Position - obj2.Position).magnitude <= 5 then
  469. v:findFirstChild("Humanoid"):TakeDamage(20.25)
  470. if not punchsound.IsPlaying then
  471. coroutine.wrap(function()
  472. punchsound:play()
  473. v:findFirstChild'Humanoid'.PlatformStand = true
  474. local gyro = Instance.new("BodyGyro", v:findFirstChild'Torso')
  475. gyro.maxTorque = Vector3.new(1/0,1/0,1/0)
  476. gyro.cframe = torso.CFrame * CFrame.Angles(math.pi/2, 0, 0)
  477. game:service'Debris':AddItem(gyro, .1)
  478. wait(.75)
  479. v:findFirstChild'Humanoid'.PlatformStand = false
  480. end)()
  481. end
  482. end
  483. end
  484. wait(.2)
  485. punchsound:stop()
  486. humanoid.WalkSpeed = 20
  487. controller.Parent = controllerService
  488. action="None"
  489. elseif action == "Slash2" then
  490. STOPtrail = false
  491. humanoid.WalkSpeed = 10
  492. speed = 0.3
  493. anglespeed = 0
  494. for slash1 = 0, 12 do
  495. angle = (angle % 100) + anglespeed/10
  496. mvmnt = math.pi * math.sin(math.pi*2/100*(angle*10))
  497. ncf = neckc0 * CFrame.Angles(0, 0, 0)
  498. rjcf = rootc0 * CFrame.Angles(0, -math.rad(15), 0)
  499. rscf = rsc0 * CFrame.Angles(math.pi/2.2, 0, math.pi/2.5)
  500. lscf = lsc0 * CFrame.Angles(math.pi/14, 0, math.pi/24)
  501. rlcf = rlc0 * CFrame.Angles(-math.rad(2.5), 0, math.rad(5))
  502. llcf = llc0 * CFrame.Angles(math.rad(4.5), 0, -math.rad(5))
  503. hndlcf = swordc0 * CFrame.Angles(-math.pi/8, -math.pi/2, 0)
  504. if Vector3.new(torso.Velocity.x, 0, torso.Velocity.z).magnitude >= 2 then
  505. anglespeed = 5
  506. rlcf = rlc0 * CFrame.Angles(math.sin(-angle)*.55, 0, math.rad(.5))
  507. llcf = llc0 * CFrame.Angles(math.sin(angle)*.55, 0, -math.rad(.5))
  508. end
  509. rm.C0 = clerp(rm.C0,rscf,speed)
  510. lm.C0 = clerp(lm.C0,lscf,speed)
  511. rj.C0 = clerp(rj.C0,rjcf,speed)
  512. neck.C0 = clerp(neck.C0,ncf,speed)
  513. rlegm.C0 = clerp(rlegm.C0,rlcf,speed)
  514. llegm.C0 = clerp(llegm.C0,llcf,speed)
  515. wld.C0 = clerp(wld.C0,hndlcf,speed)
  516. wait()
  517. end
  518. coroutine.wrap(function()
  519. for slash2 = 0, 19 do
  520. angle = (angle % 100) + anglespeed/10
  521. mvmnt = math.pi * math.sin(math.pi*2/100*(angle*10))
  522. ncf = neckc0 * CFrame.Angles(0, 0, 0)
  523. rjcf = rootc0 * CFrame.new(0, 0, -.3) * CFrame.Angles(0, math.rad(15), 0)
  524. rscf = rsc0 * CFrame.Angles(math.pi/2.2, 0, -math.pi/4)
  525. lscf = lsc0 * CFrame.Angles(-math.rad(30), 0, -math.pi/19)
  526. rlcf = rlc0 * CFrame.Angles(math.rad(10.5), 0, math.rad(5))
  527. llcf = llc0 * CFrame.Angles(-math.rad(.5), 0, -math.rad(5))
  528. if Vector3.new(torso.Velocity.x, 0, torso.Velocity.z).magnitude >= 2 then
  529. anglespeed = 5
  530. rlcf = rlc0 * CFrame.Angles(math.sin(-angle)*.55, 0, math.rad(.5))
  531. llcf = llc0 * CFrame.Angles(math.sin(angle)*.55, 0, -math.rad(.5))
  532. end
  533. hndlcf = swordc0 * CFrame.Angles(-math.pi/2, math.pi/2, math.pi/16)
  534. rm.C0 = clerp(rm.C0,rscf,speed)
  535. lm.C0 = clerp(lm.C0,lscf,speed)
  536. rj.C0 = clerp(rj.C0,rjcf,speed)
  537. neck.C0 = clerp(neck.C0,ncf,speed)
  538. rlegm.C0 = clerp(rlegm.C0,rlcf,speed)
  539. llegm.C0 = clerp(llegm.C0,llcf,speed)
  540. wld.C0 = clerp(wld.C0,hndlcf,speed)
  541. wait()
  542. end
  543. STOPtrail = true
  544. end)()
  545. wait(.05)
  546. for i,v in pairs(workspace:children()) do
  547. if v and v:findFirstChild("Humanoid") and v.Name ~= char.Name and v:findFirstChild("Torso") and (v:findFirstChild("Torso").Position - obj2.Position).magnitude <= 5 then
  548. coroutine.wrap(function()
  549. v:findFirstChild("Humanoid"):TakeDamage(90.25)
  550. punchsound:play()
  551. v:findFirstChild'Humanoid'.PlatformStand = true
  552. local gyro = Instance.new("BodyGyro", v:findFirstChild'Torso')
  553. gyro.maxTorque = Vector3.new(1/0,1/0,1/0)
  554. gyro.cframe = torso.CFrame * CFrame.Angles(math.pi/2, 0, 0)
  555. game:service'Debris':AddItem(gyro, .05)
  556. wait(.75)
  557. v:findFirstChild'Humanoid'.PlatformStand = false
  558. end)()
  559. end
  560. end
  561. wait(.15)
  562. for i,v in pairs(workspace:children()) do
  563. if v and v:findFirstChild("Humanoid") and v.Name ~= char.Name and v:findFirstChild("Torso") and (v:findFirstChild("Torso").Position - obj2.Position).magnitude <= 5 then
  564. v:findFirstChild("Humanoid"):TakeDamage(30.25)
  565. coroutine.wrap(function()
  566. if not punchsound.IsPlaying then
  567. punchsound:play()
  568. v:findFirstChild'Humanoid'.PlatformStand = true
  569. local gyro = Instance.new("BodyGyro", v:findFirstChild'Torso')
  570. gyro.maxTorque = Vector3.new(1/0,1/0,1/0)
  571. gyro.cframe = torso.CFrame * CFrame.Angles(math.pi/2, 0, 0)
  572. game:service'Debris':AddItem(gyro, .05)
  573. wait(.75)
  574. v:findFirstChild'Humanoid'.PlatformStand = false
  575. end
  576. end)()
  577. end
  578. end
  579. wait(.4)
  580. punchsound:stop()
  581. action="None"
  582. elseif Vector3.new(torso.Velocity.x, 0, torso.Velocity.z).magnitude <= 2 then
  583. if action == "None" then
  584. speed = 0.3
  585. anglespeed = 1/2.5
  586. ncf = neckc0 * CFrame.Angles(math.sin(angle)*0.075, 0, 0)
  587. rjcf = rootc0
  588. rscf = rsc0 * CFrame.Angles(-math.pi/24+math.sin(-angle)*0.05, -math.rad(15), math.rad(5))
  589. lscf = lsc0 * CFrame.Angles(-math.pi/24+math.sin(-angle)*0.05, 0, -math.rad(5))
  590. rlcf = rlc0 * CFrame.Angles(-math.rad(2.5), 0, math.rad(2.5))
  591. llcf = llc0 * CFrame.Angles(math.rad(4.5), 0, -math.rad(2.5))
  592. hndlcf = swordc0 * CFrame.Angles(math.pi/14, 0, 0)
  593. end
  594. elseif Vector3.new(torso.Velocity.x, 0, torso.Velocity.z).magnitude <= 16 then
  595. if action == "None" then
  596. speed = 0.3
  597. anglespeed = 3
  598. ncf = neckc0 * CFrame.Angles(0, 0, 0)
  599. rjcf = rootc0
  600. rscf = rsc0 * CFrame.Angles(-math.pi/24+math.sin(angle)*.05, -math.rad(15), math.rad(5))
  601. lscf = lsc0 * CFrame.Angles(math.sin(-angle)*.65, 0, -math.rad(5))
  602. rlcf = rlc0 * CFrame.new(0, .075 + -math.cos(-angle)*.075, -.05+math.sin(angle)*0.1) * CFrame.Angles(math.sin(-angle)*.45, 0, math.rad(.5))
  603. llcf = llc0 * CFrame.new(0, .075 - -math.cos(angle)*.075, -.05-math.sin(angle)*0.1) * CFrame.Angles(math.sin(angle)*.45, 0, -math.rad(.5))
  604. hndlcf = swordc0 * CFrame.Angles(math.pi/14, 0, 0)
  605. end
  606. elseif Vector3.new(torso.Velocity.x, 0, torso.Velocity.z).magnitude >= 16 then
  607. if action == "None" then
  608. speed = 0.3
  609. anglespeed = 4
  610. ncf = neckc0 * CFrame.Angles(0, -math.sin(angle)*.1, 0)
  611. rscf = rsc0 * CFrame.Angles(-math.pi/3.5,0,0)
  612. lscf = lsc0 * CFrame.new(0, 0, math.sin(angle)*0.125) * CFrame.Angles(math.pi/24+math.sin(-angle)*1.1, 0, math.abs(mvmnt)*0.02)
  613. rjcf = rootc0 * CFrame.new(0, 0, 0) * CFrame.Angles(math.abs(math.sin(angle))*0.055 + -math.pi/18, math.sin(angle)*.1, math.sin(angle)*.045)
  614. rlcf = rlc0 * CFrame.new(0, .3 + -math.cos(-angle)*.3, -.2+math.sin(angle)*0.25) * CFrame.Angles(-math.pi/18+math.sin(-angle)*1.3, 0, math.rad(.5))
  615. llcf = llc0 * CFrame.new(0, .3 - -math.cos(angle)*.3, -.05-math.sin(angle)*0.25) * CFrame.Angles(-math.pi/18+math.sin(angle)*1.3, 0, -math.rad(.5))
  616. hndlcf = swordc0 * CFrame.Angles(-math.pi/2, 0, 0)
  617. end
  618. end
  619. rm.C0 = clerp(rm.C0,rscf,speed)
  620. lm.C0 = clerp(lm.C0,lscf,speed)
  621. rj.C0 = clerp(rj.C0,rjcf,speed)
  622. neck.C0 = clerp(neck.C0,ncf,speed)
  623. rlegm.C0 = clerp(rlegm.C0,rlcf,speed)
  624. llegm.C0 = clerp(llegm.C0,llcf,speed)
  625. wld.C0 = clerp(wld.C0,hndlcf,speed)
  626. end
Advertisement
Add Comment
Please, Sign In to add comment
Advertisement