ryanswagg20

Sword

Sep 9th, 2016
170
0
Never
Not a member of Pastebin yet? Sign Up, it unlocks many cool features!
text 39.09 KB | None | 0 0
  1. local plr = game.Players.LocalPlayer
  2.  
  3. local char = plr.Character
  4.  
  5. animate = char:findFirstChild("Animate")
  6.  
  7. animate:Destroy()
  8.  
  9.  
  10.  
  11. local par = script and script.Parent or char
  12.  
  13. pcall(function()
  14.  
  15. par.Pandas:Destroy()
  16.  
  17. end)
  18.  
  19. if script then
  20.  
  21. script.Name = "Pandas"
  22.  
  23. end
  24.  
  25. local m = Instance.new("Model",char)
  26.  
  27. m.Name = "Pandas"
  28.  
  29.  
  30.  
  31. function weld(a,b,c,d)
  32.  
  33. local w = Instance.new("Weld",a)
  34.  
  35. w.Part0 = a
  36.  
  37. w.Part1 = b
  38.  
  39. w.C0 = c or CFrame.new()
  40.  
  41. w.C1 = d or CFrame.new()
  42.  
  43. return w
  44.  
  45. end
  46.  
  47.  
  48.  
  49. local part = Instance.new("Part")
  50.  
  51. part.Material = "SmoothPlastic"
  52.  
  53. part.TopSurface,part.BottomSurface = 0,0
  54.  
  55. part.FormFactor = "Custom"
  56.  
  57. part.Size = Vector3.new(.2,.2,.2)
  58.  
  59. part:BreakJoints()
  60.  
  61. part.TopSurface = "SmoothNoOutlines"
  62.  
  63. part.BottomSurface = "SmoothNoOutlines"
  64.  
  65. part.RightSurface = "SmoothNoOutlines"
  66.  
  67. part.LeftSurface = "SmoothNoOutlines"
  68.  
  69. part.CanCollide = false
  70.  
  71.  
  72.  
  73. do
  74.  
  75. local function CFrameFromTopBack(at, top, back)
  76.  
  77. local right = top:Cross(back)
  78.  
  79. return CFrame.new(at.x, at.y, at.z,
  80.  
  81. right.x, top.x, back.x,
  82.  
  83. right.y, top.y, back.y,
  84.  
  85. right.z, top.z, back.z)
  86.  
  87. end
  88.  
  89.  
  90.  
  91. function Triangle(a, b, c)
  92.  
  93. local edg1 = (c-a):Dot((b-a).unit)
  94.  
  95. local edg2 = (a-b):Dot((c-b).unit)
  96.  
  97. local edg3 = (b-c):Dot((a-c).unit)
  98.  
  99. if edg1 <= (b-a).magnitude and edg1 >= 0 then
  100.  
  101. a, b, c = a, b, c
  102.  
  103. elseif edg2 <= (c-b).magnitude and edg2 >= 0 then
  104.  
  105. a, b, c = b, c, a
  106.  
  107. elseif edg3 <= (a-c).magnitude and edg3 >= 0 then
  108.  
  109. a, b, c = c, a, b
  110.  
  111. else
  112.  
  113. assert(false, "unreachable")
  114.  
  115. end
  116.  
  117.  
  118.  
  119. local len1 = (c-a):Dot((b-a).unit)
  120.  
  121. local len2 = (b-a).magnitude - len1
  122.  
  123. local width = (a + (b-a).unit*len1 - c).magnitude
  124.  
  125.  
  126.  
  127. local maincf = CFrameFromTopBack(a, (b-a):Cross(c-b).unit, -(b-a).unit)
  128.  
  129.  
  130.  
  131. local list = {}
  132.  
  133.  
  134.  
  135. if len1 > 0.01 then
  136.  
  137. local w1 = Instance.new('WedgePart', m)
  138.  
  139. w1.Material = "SmoothPlastic"
  140.  
  141. w1.TopSurface = "SmoothNoOutlines"
  142.  
  143. w1.BottomSurface = "SmoothNoOutlines"
  144.  
  145. w1.RightSurface = "SmoothNoOutlines"
  146.  
  147. w1.LeftSurface = "SmoothNoOutlines"
  148.  
  149. w1.TopSurface,w1.BottomSurface = 0,0
  150.  
  151. w1.FormFactor = 'Custom'
  152.  
  153. w1.BrickColor = part.BrickColor
  154.  
  155. w1.Transparency = part.Transparency
  156.  
  157. w1.Reflectance = part.Reflectance
  158.  
  159. w1.Material = part.Material
  160.  
  161. w1.CanCollide = part.CanCollide
  162.  
  163. local sz = Vector3.new(0.2, width, len1)
  164.  
  165. w1.Size = sz
  166.  
  167. local sp = Instance.new("SpecialMesh",w1)
  168.  
  169. sp.MeshType = "Wedge"
  170.  
  171. sp.Scale = Vector3.new(0,1,1) * sz/w1.Size
  172.  
  173. w1:BreakJoints()
  174.  
  175. w1.Anchored = true
  176.  
  177. w1.CFrame = maincf*CFrame.Angles(math.pi,0,math.pi/2)*CFrame.new(0,width/2,len1/2)
  178.  
  179. table.insert(list,w1)
  180.  
  181. end
  182.  
  183.  
  184.  
  185. if len2 > 0.01 then
  186.  
  187. local w2 = Instance.new('WedgePart', m)
  188.  
  189. w2.Material = "SmoothPlastic"
  190.  
  191.  
  192.  
  193. w2.TopSurface = "SmoothNoOutlines"
  194.  
  195. w2.BottomSurface = "SmoothNoOutlines"
  196.  
  197. w2.RightSurface = "SmoothNoOutlines"
  198.  
  199. w2.LeftSurface = "SmoothNoOutlines"
  200.  
  201. w2.TopSurface,w2.BottomSurface = 0,0
  202.  
  203. w2.FormFactor = 'Custom'
  204.  
  205. w2.BrickColor = part.BrickColor
  206.  
  207. w2.Transparency = part.Transparency
  208.  
  209. w2.Reflectance = part.Reflectance
  210.  
  211. w2.Material = part.Material
  212.  
  213. w2.CanCollide = part.CanCollide
  214.  
  215. local sz = Vector3.new(0.2, width, len2)
  216.  
  217. w2.Size = sz
  218.  
  219. local sp = Instance.new("SpecialMesh",w2)
  220.  
  221. sp.MeshType = "Wedge"
  222.  
  223. sp.Scale = Vector3.new(0,1,1) * sz/w2.Size
  224.  
  225. w2:BreakJoints()
  226.  
  227. w2.Anchored = true
  228.  
  229. w2.CFrame = maincf*CFrame.Angles(math.pi,math.pi,-math.pi/2)*CFrame.new(0,width/2,-len1 - len2/2)
  230.  
  231. table.insert(list,w2)
  232.  
  233. end
  234.  
  235. return unpack(list)
  236.  
  237. end
  238.  
  239.  
  240.  
  241. function WeldTriangle(p, a, b, c)
  242.  
  243. local edg1 = (c-a):Dot((b-a).unit)
  244.  
  245. local edg2 = (a-b):Dot((c-b).unit)
  246.  
  247. local edg3 = (b-c):Dot((a-c).unit)
  248.  
  249. if edg1 <= (b-a).magnitude and edg1 >= 0 then
  250.  
  251. a, b, c = a, b, c
  252.  
  253. elseif edg2 <= (c-b).magnitude and edg2 >= 0 then
  254.  
  255. a, b, c = b, c, a
  256.  
  257. elseif edg3 <= (a-c).magnitude and edg3 >= 0 then
  258.  
  259. a, b, c = c, a, b
  260.  
  261. else
  262.  
  263. assert(false, "unreachable")
  264.  
  265. end
  266.  
  267.  
  268.  
  269. local len1 = (c-a):Dot((b-a).unit)
  270.  
  271. local len2 = (b-a).magnitude - len1
  272.  
  273. local width = (a + (b-a).unit*len1 - c).magnitude
  274.  
  275.  
  276.  
  277. local maincf = CFrameFromTopBack(a, (b-a):Cross(c-b).unit, -(b-a).unit)
  278.  
  279.  
  280.  
  281. if len1 > 0.01 then
  282.  
  283. local w1 = Instance.new('WedgePart', m)
  284.  
  285. w1.Material = "SmoothPlastic"
  286.  
  287. w1.TopSurface = "SmoothNoOutlines"
  288.  
  289. w1.BottomSurface = "SmoothNoOutlines"
  290.  
  291. w1.RightSurface = "SmoothNoOutlines"
  292.  
  293. w1.LeftSurface = "SmoothNoOutlines"
  294.  
  295. w1.Material = "SmoothPlastic"
  296.  
  297. w1.TopSurface,w1.BottomSurface = 0,0
  298.  
  299. w1.FormFactor = 'Custom'
  300.  
  301. w1.BrickColor = part.BrickColor
  302.  
  303. w1.Transparency = part.Transparency
  304.  
  305. w1.Reflectance = part.Reflectance
  306.  
  307. w1.Material = part.Material
  308.  
  309. w1.CanCollide = part.CanCollide
  310.  
  311. local sz = Vector3.new(0.2, width, len1)
  312.  
  313. w1.Size = sz
  314.  
  315. local sp = Instance.new("SpecialMesh",w1)
  316.  
  317. sp.MeshType = "Wedge"
  318.  
  319. sp.Scale = Vector3.new(0,1,1) * sz/w1.Size
  320.  
  321. w1:BreakJoints()
  322.  
  323. weld(p,w1,maincf*CFrame.Angles(math.pi,0,math.pi/2)*CFrame.new(0,width/2,len1/2))
  324.  
  325. end
  326.  
  327.  
  328.  
  329. if len2 > 0.01 then
  330.  
  331. local w2 = Instance.new('WedgePart', m)
  332.  
  333. w2.Material = "SmoothPlastic"
  334.  
  335. w2.TopSurface = "SmoothNoOutlines"
  336.  
  337. w2.BottomSurface = "SmoothNoOutlines"
  338.  
  339. w2.RightSurface = "SmoothNoOutlines"
  340.  
  341. w2.LeftSurface = "SmoothNoOutlines"
  342.  
  343.  
  344. w2.TopSurface,w2.BottomSurface = 0,0
  345.  
  346. w2.FormFactor = 'Custom'
  347.  
  348. w2.BrickColor = part.BrickColor
  349.  
  350. w2.Transparency = part.Transparency
  351.  
  352. w2.Reflectance = part.Reflectance
  353.  
  354. w2.Material = part.Material
  355.  
  356. w2.CanCollide = part.CanCollide
  357.  
  358. local sz = Vector3.new(0.2, width, len2)
  359.  
  360. w2.Size = sz
  361.  
  362. local sp = Instance.new("SpecialMesh",w2)
  363.  
  364. sp.MeshType = "Wedge"
  365.  
  366. sp.Scale = Vector3.new(0,1,1) * sz/w2.Size
  367.  
  368. w2:BreakJoints()
  369.  
  370. weld(p,w2,maincf*CFrame.Angles(math.pi,math.pi,-math.pi/2)*CFrame.new(0,width/2,-len1 - len2/2))
  371.  
  372. end
  373.  
  374. end
  375.  
  376. end
  377.  
  378.  
  379.  
  380. function newpart()
  381.  
  382. local p = part:Clone()
  383.  
  384. p.Parent = m
  385.  
  386. return p
  387.  
  388. end
  389.  
  390.  
  391.  
  392. local h = newpart()
  393.  
  394. h.Transparency = 1
  395.  
  396. local griphand = CFrame.new(0,-.95,0)
  397.  
  398. local grip = weld(char["Right Arm"],h,CFrame.new(0,-.95,0),CFrame.Angles(math.pi/2,0,math.pi/2))
  399.  
  400.  
  401.  
  402.  
  403.  
  404. part.BrickColor = BrickColor.new("Really black")
  405.  
  406. for i=0,1,.1 do
  407.  
  408. local s = math.abs(i-.5)*2
  409.  
  410. local x = newpart()
  411.  
  412. x.Size = Vector3.new(.35-.1*s,.2,.2)
  413.  
  414. x.Material = "SmoothPlastic"
  415.  
  416. local sp = Instance.new("SpecialMesh",x)
  417.  
  418. sp.MeshType = "Sphere"
  419.  
  420. sp.Scale = Vector3.new(1,1,.85)
  421.  
  422. weld(h,x,CFrame.new(0,-.5+1*i,0) * CFrame.Angles(0,0,.35))
  423.  
  424. end
  425.  
  426.  
  427.  
  428.  
  429.  
  430.  
  431.  
  432. local n = 3892026
  433.  
  434. for i in plr.Name:gmatch(".") do
  435.  
  436. n = n + i:byte()
  437.  
  438. end
  439.  
  440. math.randomseed(n) math.random() math.random() math.random()
  441.  
  442.  
  443.  
  444. local themeColor = BrickColor.new ("Light stone grey")
  445.  
  446. local themeRef = .01
  447.  
  448.  
  449.  
  450. math.randomseed(tick()) math.random() math.random() math.random()
  451.  
  452.  
  453.  
  454. local metalColor = BrickColor.new("Dark stone grey")
  455.  
  456. local metalRef = .5
  457.  
  458. local bladeColor = BrickColor.new("Medium stone grey")
  459.  
  460. local bladeRef = .4
  461.  
  462.  
  463.  
  464. part.BrickColor = metalColor
  465.  
  466. part.Reflectance = metalRef
  467.  
  468. local x = newpart()
  469.  
  470. x.Size = Vector3.new(.2,.2,.2)
  471.  
  472. Instance.new("CylinderMesh",x).Scale = Vector3.new(.6,7,.6)
  473.  
  474. weld(h,x,CFrame.new(.035,0,0))
  475.  
  476. local x = newpart()
  477.  
  478. x.Size = Vector3.new(.2,.2,.2)
  479.  
  480. Instance.new("CylinderMesh",x).Scale = Vector3.new(.6,7,.6)
  481.  
  482. weld(h,x,CFrame.new(-.035,0,0))
  483.  
  484. local x = newpart()
  485.  
  486. x.Size = Vector3.new(.2,.2,.2)
  487.  
  488. Instance.new("CylinderMesh",x).Scale = Vector3.new(.6,7,.6)
  489.  
  490. weld(h,x,CFrame.new(0,0,0))
  491.  
  492.  
  493.  
  494. local x = newpart()
  495.  
  496. x.Size = Vector3.new(.34,.2,.34)
  497.  
  498. Instance.new("CylinderMesh",x).Scale = Vector3.new(1,.6,1)
  499.  
  500. weld(h,x,CFrame.new(0,-.75,0)*CFrame.Angles(math.pi/2,0,0))
  501.  
  502.  
  503.  
  504. part.BrickColor = BrickColor.new("Really black")
  505.  
  506. local x = newpart()
  507.  
  508. x.Size = Vector3.new(.28,.2,.28)
  509.  
  510. Instance.new("CylinderMesh",x).Scale = Vector3.new(1,.605,1)
  511.  
  512. weld(h,x,CFrame.new(0,-.75,0)*CFrame.Angles(math.pi/2,0,0))
  513.  
  514.  
  515.  
  516. part.BrickColor = metalColor
  517.  
  518. local x = newpart()
  519.  
  520. x.Size = Vector3.new(.27,.2,.27)
  521.  
  522. Instance.new("CylinderMesh",x).Scale = Vector3.new(1,.61,1)
  523.  
  524. weld(h,x,CFrame.new(0,-.75,0)*CFrame.Angles(math.pi/2,0,0))
  525.  
  526.  
  527.  
  528. part.BrickColor = BrickColor.new("Really black")
  529.  
  530. local x = newpart()
  531.  
  532. x.Size = Vector3.new(.2,.2,.2)
  533.  
  534. Instance.new("BlockMesh",x).Scale = Vector3.new(1.2,.615,.2)
  535.  
  536. weld(h,x,CFrame.new(0,-.75,0)*CFrame.Angles(math.pi/2,0,0))
  537.  
  538. local x = newpart()
  539.  
  540. x.Size = Vector3.new(.2,.2,.2)
  541.  
  542. Instance.new("BlockMesh",x).Scale = Vector3.new(.2,.613,1.2)
  543.  
  544. weld(h,x,CFrame.new(0,-.75,0)*CFrame.Angles(math.pi/2,0,0))
  545.  
  546. local x = newpart()
  547.  
  548. x.Size = Vector3.new(.2,.2,.2)
  549.  
  550. Instance.new("BlockMesh",x).Scale = Vector3.new(.1,.612,.72)
  551.  
  552. weld(h,x,CFrame.new(.065,-.75,0)*CFrame.Angles(math.pi/2,0,0))
  553.  
  554. local x = newpart()
  555.  
  556. x.Size = Vector3.new(.2,.2,.2)
  557.  
  558. Instance.new("BlockMesh",x).Scale = Vector3.new(.1,.612,.72)
  559.  
  560. weld(h,x,CFrame.new(-.065,-.75,0)*CFrame.Angles(math.pi/2,0,0))
  561.  
  562. local x = newpart()
  563.  
  564. x.Size = Vector3.new(.2,.2,.2)
  565.  
  566. Instance.new("BlockMesh",x).Scale = Vector3.new(.72,.611,.1)
  567.  
  568. weld(h,x,CFrame.new(0,-.75+.065,0)*CFrame.Angles(math.pi/2,0,0))
  569.  
  570. local x = newpart()
  571.  
  572. x.Size = Vector3.new(.2,.2,.2)
  573.  
  574. Instance.new("BlockMesh",x).Scale = Vector3.new(.72,.611,.1)
  575.  
  576. weld(h,x,CFrame.new(0,-.75-.065,0)*CFrame.Angles(math.pi/2,0,0))
  577.  
  578.  
  579.  
  580.  
  581.  
  582. part.BrickColor = themeColor
  583.  
  584. part.Reflectance = themeRef
  585.  
  586. local x = newpart()
  587.  
  588. x.Size = Vector3.new(.2,.2,.2)
  589.  
  590. Instance.new("BlockMesh",x).Scale = Vector3.new(1.16,.619,.16)
  591.  
  592. weld(h,x,CFrame.new(0,-.75,0)*CFrame.Angles(math.pi/2,0,0))
  593.  
  594. local x = newpart()
  595.  
  596. x.Size = Vector3.new(.2,.2,.2)
  597.  
  598. Instance.new("BlockMesh",x).Scale = Vector3.new(.16,.618,1.16)
  599.  
  600. weld(h,x,CFrame.new(0,-.75,0)*CFrame.Angles(math.pi/2,0,0))
  601.  
  602. local x = newpart()
  603.  
  604. x.Size = Vector3.new(.2,.2,.2)
  605.  
  606. Instance.new("BlockMesh",x).Scale = Vector3.new(.06,.617,.68)
  607.  
  608. weld(h,x,CFrame.new(.065,-.75,0)*CFrame.Angles(math.pi/2,0,0))
  609.  
  610. local x = newpart()
  611.  
  612. x.Size = Vector3.new(.2,.2,.2)
  613.  
  614. Instance.new("BlockMesh",x).Scale = Vector3.new(.06,.617,.68)
  615.  
  616. weld(h,x,CFrame.new(-.065,-.75,0)*CFrame.Angles(math.pi/2,0,0))
  617.  
  618. local x = newpart()
  619.  
  620. x.Size = Vector3.new(.2,.2,.2)
  621.  
  622. Instance.new("BlockMesh",x).Scale = Vector3.new(.68,.616,.06)
  623.  
  624. weld(h,x,CFrame.new(0,-.75+.065,0)*CFrame.Angles(math.pi/2,0,0))
  625.  
  626. local x = newpart()
  627.  
  628. x.Size = Vector3.new(.2,.2,.2)
  629.  
  630. Instance.new("BlockMesh",x).Scale = Vector3.new(.68,.616,.06)
  631.  
  632. weld(h,x,CFrame.new(0,-.75-.065,0)*CFrame.Angles(math.pi/2,0,0))
  633.  
  634. local x = newpart()
  635.  
  636. x.Size = Vector3.new(.345,.2,.345)
  637.  
  638. Instance.new("CylinderMesh",x).Scale = Vector3.new(1,.1,1)
  639.  
  640. weld(h,x,CFrame.new(0,-.75,.049)*CFrame.Angles(math.pi/2,0,0))
  641.  
  642. local x = newpart()
  643.  
  644. x.Size = Vector3.new(.345,.2,.345)
  645.  
  646. Instance.new("CylinderMesh",x).Scale = Vector3.new(1,.1,1)
  647.  
  648. weld(h,x,CFrame.new(0,-.75,-.049)*CFrame.Angles(math.pi/2,0,0))
  649.  
  650.  
  651.  
  652. part.BrickColor = metalColor
  653.  
  654. part.Reflectance = metalRef
  655.  
  656.  
  657.  
  658. local c = CFrame.new(0.035,.52,0)
  659.  
  660. for i=0,1,.2 do
  661.  
  662. local s = 1-math.abs(i-.5)*2
  663.  
  664. local x = newpart()
  665.  
  666. x.Size = Vector3.new(.2,.2,.2)
  667.  
  668. Instance.new("CylinderMesh",x).Scale = Vector3.new(.6,.5,.6)
  669.  
  670. local c2 = c*CFrame.new(-.06,0,0)*CFrame.Angles(0,0,-s*.65)*CFrame.new(.06,.05,0)
  671.  
  672. weld(h,x,c2)
  673.  
  674. c = c2*CFrame.new(0,0.05,0)
  675.  
  676. end
  677.  
  678. local x = newpart()
  679.  
  680. x.Size = Vector3.new(.2,.2,.2)
  681.  
  682. local sp = Instance.new("SpecialMesh",x)
  683.  
  684. sp.MeshType = "Sphere"
  685.  
  686. sp.Scale = Vector3.new(.6,.6,.6)
  687.  
  688. weld(h,x,c)
  689.  
  690.  
  691.  
  692. local c = CFrame.new(-0.035,.52,0)
  693.  
  694. for i=0,1,.2 do
  695.  
  696. local s = 1-math.abs(i-.5)*2
  697.  
  698. local x = newpart()
  699.  
  700. x.Size = Vector3.new(.2,.2,.2)
  701.  
  702. Instance.new("CylinderMesh",x).Scale = Vector3.new(.6,.5,.6)
  703.  
  704. local c2 = c*CFrame.new(.06,0,0)*CFrame.Angles(0,0,s*.65)*CFrame.new(-.06,.05,0)
  705.  
  706. weld(h,x,c2)
  707.  
  708. c = c2*CFrame.new(0,0.05,0)
  709.  
  710. end
  711.  
  712. local x = newpart()
  713.  
  714. x.Size = Vector3.new(.2,.2,.2)
  715.  
  716. local sp = Instance.new("SpecialMesh",x)
  717.  
  718. sp.MeshType = "Sphere"
  719.  
  720. sp.Scale = Vector3.new(.6,.6,.6)
  721.  
  722. weld(h,x,c)
  723.  
  724.  
  725.  
  726. local c = CFrame.new(0,.555,0)
  727.  
  728. for i=0,1,.2 do
  729.  
  730. local s = 1-math.abs(i-.5)*2
  731.  
  732. local x = newpart()
  733.  
  734. x.Size = Vector3.new(.2,.2,.2)
  735.  
  736. Instance.new("CylinderMesh",x).Scale = Vector3.new(.6,.5,.6)
  737.  
  738. local c2 = c*CFrame.new(.06,0,0)*CFrame.Angles(0,0,s*.65)*CFrame.new(-.06,.05,0)
  739.  
  740. weld(h,x,c2)
  741.  
  742. c = c2*CFrame.new(0,0.05,0)
  743.  
  744. end
  745.  
  746. local x = newpart()
  747.  
  748. x.Size = Vector3.new(.2,.2,.2)
  749.  
  750. local sp = Instance.new("SpecialMesh",x)
  751.  
  752. sp.MeshType = "Sphere"
  753.  
  754. sp.Scale = Vector3.new(.6,.6,.6)
  755.  
  756. weld(h,x,c)
  757.  
  758.  
  759.  
  760. local c = CFrame.new(0,.555,0)
  761.  
  762. for i=0,1,.2 do
  763.  
  764. local s = 1-math.abs(i-.5)*2
  765.  
  766. local x = newpart()
  767.  
  768. x.Size = Vector3.new(.2,.2,.2)
  769.  
  770. Instance.new("CylinderMesh",x).Scale = Vector3.new(.6,.5,.6)
  771.  
  772. local c2 = c*CFrame.new(-.06,0,0)*CFrame.Angles(0,0,-s*.65)*CFrame.new(.06,.05,0)
  773.  
  774. weld(h,x,c2)
  775.  
  776. c = c2*CFrame.new(0,0.05,0)
  777.  
  778. end
  779.  
  780. local x = newpart()
  781.  
  782. x.Size = Vector3.new(.2,.2,.2)
  783.  
  784. local sp = Instance.new("SpecialMesh",x)
  785.  
  786. sp.MeshType = "Sphere"
  787.  
  788. sp.Scale = Vector3.new(.6,.6,.6)
  789.  
  790. weld(h,x,c)
  791.  
  792.  
  793.  
  794. local c = CFrame.new(0,1.02825,0) * CFrame.Angles(0,0,math.pi)
  795.  
  796. for i=0,1,.2 do
  797.  
  798. local s = 1-math.abs(i-.5)*2
  799.  
  800. local x = newpart()
  801.  
  802. x.Size = Vector3.new(.2,.2,.2)
  803.  
  804. Instance.new("CylinderMesh",x).Scale = Vector3.new(.6,.5,.6)
  805.  
  806. local c2 = c*CFrame.new(.06,0,0)*CFrame.Angles(0,0,s*.65)*CFrame.new(-.06,.05,0)
  807.  
  808. weld(h,x,c2)
  809.  
  810. c = c2*CFrame.new(0,0.05,0)
  811.  
  812. end
  813.  
  814.  
  815.  
  816. local c = CFrame.new(0,1.02825,0) * CFrame.Angles(0,0,math.pi)
  817.  
  818. for i=0,1,.2 do
  819.  
  820. local s = 1-math.abs(i-.5)*2
  821.  
  822. local x = newpart()
  823.  
  824. x.Size = Vector3.new(.2,.2,.2)
  825.  
  826. Instance.new("CylinderMesh",x).Scale = Vector3.new(.6,.5,.6)
  827.  
  828. local c2 = c*CFrame.new(-.06,0,0)*CFrame.Angles(0,0,-s*.65)*CFrame.new(.06,.05,0)
  829.  
  830. weld(h,x,c2)
  831.  
  832. c = c2*CFrame.new(0,0.05,0)
  833.  
  834. end
  835.  
  836.  
  837.  
  838. local x = newpart()
  839.  
  840. x.Size = Vector3.new(.2,.2,.2)
  841.  
  842. local sp = Instance.new("SpecialMesh",x)
  843.  
  844. sp.MeshType = "Sphere"
  845.  
  846. sp.Scale = Vector3.new(.6,1.5,.6)
  847.  
  848. weld(h,x,CFrame.new(0,1.02825,0))
  849.  
  850.  
  851.  
  852. part.BrickColor = themeColor
  853.  
  854. part.Reflectance = themeRef
  855.  
  856. local x = newpart()
  857.  
  858. x.Size = Vector3.new(.2,.2,.2)
  859.  
  860. Instance.new("BlockMesh",x).Scale = Vector3.new(.6,.6,.5)
  861.  
  862. weld(h,x,CFrame.new(0,.791625,0)*CFrame.Angles(0,0,math.pi/4))
  863.  
  864.  
  865.  
  866. local x = newpart()
  867.  
  868. x.Size = Vector3.new(.2,4,.2)
  869.  
  870. Instance.new("BlockMesh",x).Scale = Vector3.new(.15,1,.225)
  871.  
  872. weld(h,x,CFrame.new(0,2.9,0))
  873.  
  874.  
  875.  
  876. local x = newpart()
  877.  
  878. x.Size = Vector3.new(.2,.2,.2)
  879.  
  880. local sp = Instance.new("SpecialMesh",x)
  881.  
  882. sp.MeshType = "Cylinder"
  883.  
  884. sp.Scale = Vector3.new(.22,.15,.15)
  885.  
  886. weld(h,x,CFrame.new(0,4.9,0)*CFrame.Angles(0,math.pi/2,0))
  887.  
  888.  
  889.  
  890. part.BrickColor = BrickColor.new("Really black")
  891.  
  892.  
  893.  
  894. local x = newpart()
  895.  
  896. x.Size = Vector3.new(.2,4,.2)
  897.  
  898. Instance.new("BlockMesh",x).Scale = Vector3.new(.175,1,.21)
  899.  
  900. weld(h,x,CFrame.new(0,2.9,0))
  901.  
  902.  
  903.  
  904. local x = newpart()
  905.  
  906. x.Size = Vector3.new(.2,.2,.2)
  907.  
  908. local sp = Instance.new("SpecialMesh",x)
  909.  
  910. sp.MeshType = "Cylinder"
  911.  
  912. sp.Scale = Vector3.new(.215,.175,.175)
  913.  
  914. weld(h,x,CFrame.new(0,4.9,0)*CFrame.Angles(0,math.pi/2,0))
  915.  
  916.  
  917.  
  918. part.BrickColor = bladeColor
  919.  
  920. part.Reflectance = bladeRef
  921.  
  922. local x = newpart()
  923.  
  924. x.Size = Vector3.new(.25,4,.2)
  925.  
  926. Instance.new("BlockMesh",x).Scale = Vector3.new(1,1,.2)
  927.  
  928. weld(h,x,CFrame.new(0,2.85,0))
  929.  
  930. local blade = x
  931.  
  932.  
  933.  
  934. local x = newpart()
  935.  
  936. x.Size = Vector3.new(.2,.25,.25)
  937.  
  938. local sp = Instance.new("SpecialMesh",x)
  939.  
  940. sp.MeshType = "Wedge"
  941.  
  942. sp.Scale = Vector3.new(.2,1,.5)
  943.  
  944. weld(h,x,CFrame.new(-.0625,4.975,0) * CFrame.Angles(0,math.pi/2,0))
  945.  
  946.  
  947.  
  948. local x = newpart()
  949.  
  950. x.Size = Vector3.new(.2,.25,.25)
  951.  
  952. local sp = Instance.new("SpecialMesh",x)
  953.  
  954. sp.MeshType = "Wedge"
  955.  
  956. sp.Scale = Vector3.new(.2,1,.5)
  957.  
  958. weld(h,x,CFrame.new(.0625,4.975,0) * CFrame.Angles(0,-math.pi/2,0))
  959.  
  960. part.BrickColor = BrickColor.new("Light stone grey")
  961.  
  962. part.Reflectance = .6
  963.  
  964. local x = newpart()
  965.  
  966. x.Size = Vector3.new(4,.2,.2)
  967.  
  968. local sp = Instance.new("SpecialMesh",x)
  969.  
  970. sp.MeshType = "Wedge"
  971.  
  972. sp.Scale = Vector3.new(1,.5,.1)
  973.  
  974. weld(h,x,CFrame.new(.175,2.85,-.01) * CFrame.Angles(0,0,-math.pi/2))
  975.  
  976.  
  977.  
  978. local x = newpart()
  979.  
  980. x.Size = Vector3.new(4,.2,.2)
  981.  
  982. local sp = Instance.new("SpecialMesh",x)
  983.  
  984. sp.MeshType = "Wedge"
  985.  
  986. sp.Scale = Vector3.new(1,.5,.1)
  987.  
  988. weld(h,x,CFrame.new(.175,2.85,.01) * CFrame.Angles(math.pi,0,-math.pi/2))
  989.  
  990.  
  991.  
  992. local x = newpart()
  993.  
  994. x.Size = Vector3.new(4,.2,.2)
  995.  
  996. local sp = Instance.new("SpecialMesh",x)
  997.  
  998. sp.MeshType = "Wedge"
  999.  
  1000. sp.Scale = Vector3.new(1,.5,.1)
  1001.  
  1002. weld(h,x,CFrame.new(-.175,2.85,-.01) * CFrame.Angles(math.pi,math.pi,-math.pi/2))
  1003.  
  1004.  
  1005.  
  1006. local x = newpart()
  1007.  
  1008. x.Size = Vector3.new(4,.2,.2)
  1009.  
  1010. local sp = Instance.new("SpecialMesh",x)
  1011.  
  1012. sp.MeshType = "Wedge"
  1013.  
  1014. sp.Scale = Vector3.new(1,.5,.1)
  1015.  
  1016. weld(h,x,CFrame.new(-.175,2.85,.01) * CFrame.Angles(0,math.pi,-math.pi/2))
  1017.  
  1018.  
  1019.  
  1020. local tip = Vector3.new(0,5.4,0)
  1021.  
  1022.  
  1023.  
  1024. WeldTriangle(h,Vector3.new(.125,4.85,-.02),Vector3.new(0,5.1,-.02),Vector3.new(.225,4.85,0))
  1025.  
  1026. WeldTriangle(h,tip,Vector3.new(0,5.1,-.02),Vector3.new(.225,4.85,0))
  1027.  
  1028.  
  1029.  
  1030. WeldTriangle(h,Vector3.new(.125,4.85,.02),Vector3.new(0,5.1,.02),Vector3.new(.225,4.85,0))
  1031.  
  1032. WeldTriangle(h,tip,Vector3.new(0,5.1,.02),Vector3.new(.225,4.85,0))
  1033.  
  1034.  
  1035.  
  1036. WeldTriangle(h,Vector3.new(-.125,4.85,-.02),Vector3.new(0,5.1,-.02),Vector3.new(-.225,4.85,0))
  1037.  
  1038. WeldTriangle(h,tip,Vector3.new(0,5.1,-.02),Vector3.new(-.225,4.85,0))
  1039.  
  1040.  
  1041.  
  1042. WeldTriangle(h,Vector3.new(-.125,4.85,.02),Vector3.new(0,5.1,.02),Vector3.new(-.225,4.85,0))
  1043.  
  1044. WeldTriangle(h,tip,Vector3.new(0,5.1,.02),Vector3.new(-.225,4.85,0))
  1045.  
  1046.  
  1047.  
  1048.  
  1049.  
  1050. --CFrame.new(.9,1.9,.54) * CFrame.Angles(-math.pi/2,0,math.pi/2) * CFrame.Angles(.58,.04,-.05) * CFrame.Angles(0,0,math.pi)
  1051.  
  1052.  
  1053.  
  1054. do
  1055.  
  1056. local function QuaternionFromCFrame(cf)
  1057.  
  1058. local mx, my, mz, m00, m01, m02, m10, m11, m12, m20, m21, m22 = cf:components()
  1059.  
  1060. local trace = m00 + m11 + m22
  1061.  
  1062. if trace > 0 then
  1063.  
  1064. local s = math.sqrt(1 + trace)
  1065.  
  1066. local recip = 0.5/s
  1067.  
  1068. return (m21-m12)*recip, (m02-m20)*recip, (m10-m01)*recip, s*0.5
  1069.  
  1070. else
  1071.  
  1072. local i = 0
  1073.  
  1074. if m11 > m00 then
  1075.  
  1076. i = 1
  1077.  
  1078. end
  1079.  
  1080. if m22 > (i == 0 and m00 or m11) then
  1081.  
  1082. i = 2
  1083.  
  1084. end
  1085.  
  1086. if i == 0 then
  1087.  
  1088. local s = math.sqrt(m00-m11-m22+1)
  1089.  
  1090. local recip = 0.5/s
  1091.  
  1092. return 0.5*s, (m10+m01)*recip, (m20+m02)*recip, (m21-m12)*recip
  1093.  
  1094. elseif i == 1 then
  1095.  
  1096. local s = math.sqrt(m11-m22-m00+1)
  1097.  
  1098. local recip = 0.5/s
  1099.  
  1100. return (m01+m10)*recip, 0.5*s, (m21+m12)*recip, (m02-m20)*recip
  1101.  
  1102. elseif i == 2 then
  1103.  
  1104. local s = math.sqrt(m22-m00-m11+1)
  1105.  
  1106. local recip = 0.5/s return (m02+m20)*recip, (m12+m21)*recip, 0.5*s, (m10-m01)*recip
  1107.  
  1108. end
  1109.  
  1110. end
  1111.  
  1112. end
  1113.  
  1114. local function QuaternionToCFrame(px, py, pz, x, y, z, w)
  1115.  
  1116. local xs, ys, zs = x + x, y + y, z + z
  1117.  
  1118. local wx, wy, wz = w*xs, w*ys, w*zs
  1119.  
  1120. local xx = x*xs
  1121.  
  1122. local xy = x*ys
  1123.  
  1124. local xz = x*zs
  1125.  
  1126. local yy = y*ys
  1127.  
  1128. local yz = y*zs
  1129.  
  1130. local zz = z*zs
  1131.  
  1132. return CFrame.new(px, py, pz,1-(yy+zz), xy - wz, xz + wy,xy + wz, 1-(xx+zz), yz - wx, xz - wy, yz + wx, 1-(xx+yy))
  1133.  
  1134. end
  1135.  
  1136. local function QuaternionSlerp(a, b, t)
  1137.  
  1138. local cosTheta = a[1]*b[1] + a[2]*b[2] + a[3]*b[3] + a[4]*b[4]
  1139.  
  1140. local startInterp, finishInterp;
  1141.  
  1142. if cosTheta >= 0.0001 then
  1143.  
  1144. if (1 - cosTheta) > 0.0001 then
  1145.  
  1146. local theta = math.acos(cosTheta)
  1147.  
  1148. local invSinTheta = 1/math.sin(theta)
  1149.  
  1150. startInterp = math.sin((1-t)*theta)*invSinTheta
  1151.  
  1152. finishInterp = math.sin(t*theta)*invSinTheta
  1153.  
  1154. else
  1155.  
  1156. startInterp = 1-t
  1157.  
  1158. finishInterp = t
  1159.  
  1160. end
  1161.  
  1162. else
  1163.  
  1164. if (1+cosTheta) > 0.0001 then
  1165.  
  1166. local theta = math.acos(-cosTheta)
  1167.  
  1168. local invSinTheta = 1/math.sin(theta)
  1169.  
  1170. startInterp = math.sin((t-1)*theta)*invSinTheta
  1171.  
  1172. finishInterp = math.sin(t*theta)*invSinTheta
  1173.  
  1174. else
  1175.  
  1176. startInterp = t-1
  1177.  
  1178. finishInterp = t
  1179.  
  1180. end
  1181.  
  1182. end
  1183.  
  1184. return a[1]*startInterp + b[1]*finishInterp, a[2]*startInterp + b[2]*finishInterp, a[3]*startInterp + b[3]*finishInterp, a[4]*startInterp + b[4]*finishInterp
  1185.  
  1186. end
  1187.  
  1188. function clerp(a,b,t)
  1189.  
  1190. local qa = {QuaternionFromCFrame(a)}
  1191.  
  1192. local qb = {QuaternionFromCFrame(b)}
  1193.  
  1194. local ax, ay, az = a.x, a.y, a.z
  1195.  
  1196. local bx, by, bz = b.x, b.y, b.z
  1197.  
  1198. local _t = 1-t
  1199.  
  1200. return QuaternionToCFrame(_t*ax + t*bx, _t*ay + t*by, _t*az + t*bz,QuaternionSlerp(qa, qb, t))
  1201.  
  1202. end
  1203.  
  1204. end
  1205.  
  1206.  
  1207.  
  1208. local run = game:GetService("RunService")
  1209.  
  1210. local doing = {}
  1211.  
  1212. function ctween(weld,prop,cfr,time,skipwait,stopafter)
  1213.  
  1214. local function doit()
  1215.  
  1216. local timeused = 0
  1217.  
  1218. local bgn = weld[prop]
  1219.  
  1220. doing[weld] = doing[weld] or {}
  1221.  
  1222. local now = tick()
  1223.  
  1224. doing[weld][prop] = now
  1225.  
  1226. stopafter = math.min(stopafter or time,time)
  1227.  
  1228. repeat
  1229.  
  1230. local i = (tick()-now)/time
  1231.  
  1232. weld[prop] = clerp(bgn,cfr,i)
  1233.  
  1234. until ((tick()-now) >= stopafter or doing[weld][prop] ~= now or not run.Stepped:wait())
  1235.  
  1236. weld[prop] = cfr
  1237.  
  1238. return doing[weld][prop] == now
  1239.  
  1240. end
  1241.  
  1242. if not skipwait then return doit()
  1243.  
  1244. else coroutine.wrap(doit)() end
  1245.  
  1246. end
  1247.  
  1248.  
  1249.  
  1250.  
  1251. function playSound(id,parent,volume,pitch)
  1252. local sound = Instance.new("Sound",parent or workspace)
  1253. sound.SoundId = "http://www.roblox.com/asset?id="..id
  1254. sound.Volume = volume or 1
  1255. sound.Pitch = pitch or 1
  1256. coroutine.wrap(function()
  1257. wait()
  1258. sound:Play()
  1259. wait(10)
  1260. sound:Stop()
  1261. sound:Destroy()
  1262. end)()
  1263. return sound
  1264. end
  1265.  
  1266.  
  1267.  
  1268.  
  1269.  
  1270. local mouse = plr:GetMouse()
  1271.  
  1272. local equipped = true
  1273.  
  1274. local enabled = true
  1275.  
  1276. local torso = char:WaitForChild("Torso")
  1277.  
  1278. local ra = char["Right Arm"]
  1279.  
  1280. local la = char["Left Arm"]
  1281.  
  1282.  
  1283.  
  1284. local RS = torso:FindFirstChild("aRS")
  1285.  
  1286. local LS = torso:FindFirstChild("aLS")
  1287.  
  1288. function checkShoulders()
  1289.  
  1290. if not RS or not RS.Parent then
  1291.  
  1292. RS = torso["Right Shoulder"]:Clone()
  1293.  
  1294. RS.Name = "aRS"
  1295.  
  1296. RS.Part0,RS.Part1 = nil,nil
  1297.  
  1298. RS.DesiredAngle,RS.MaxVelocity,RS.CurrentAngle = 0,0,0
  1299.  
  1300. RS.Parent = torso
  1301.  
  1302. end
  1303.  
  1304. if not LS or not LS.Parent then
  1305.  
  1306. LS = torso["Left Shoulder"]:Clone()
  1307.  
  1308. LS.Name = "aLS"
  1309.  
  1310. LS.Part0,LS.Part1 = nil,nil
  1311.  
  1312. LS.DesiredAngle,LS.MaxVelocity,LS.CurrentAngle = 0,0,0
  1313.  
  1314. LS.Parent = torso
  1315.  
  1316. end
  1317.  
  1318. end
  1319.  
  1320. checkShoulders()
  1321.  
  1322. local rs,ls = torso["Right Shoulder"],torso["Left Shoulder"]
  1323.  
  1324. rs.Part0,rs.Part1,ls.Part0,ls.Part1 = nil,nil,nil,nil
  1325.  
  1326. RS.Part0,RS.Part1,LS.Part0,LS.Part1 = torso,ra,torso,la
  1327.  
  1328. RS.C0,RS.C1,LS.C0,LS.C1 = rs.C0,rs.C1,ls.C0,ls.C1
  1329.  
  1330.  
  1331.  
  1332.  
  1333.  
  1334. local gripback = CFrame.new(.1,-.65,-.3) * CFrame.Angles(1.1,.2,-.5)
  1335.  
  1336. local ridle = rs.C0 * CFrame.Angles(-.2,.05,.1)
  1337.  
  1338. local lidle = ls.C0 * CFrame.Angles(-.2,-.05,-.1)
  1339.  
  1340.  
  1341.  
  1342. function unEquip()
  1343.  
  1344. if not enabled or not equipped then return end
  1345.  
  1346. enabled = false
  1347.  
  1348. equipped = false
  1349.  
  1350. grip.C0 = griphand
  1351.  
  1352. ctween(RS,"C0",rs.C0*CFrame.Angles(.1,0,3.1)*CFrame.Angles(0,.8,0),.5,true)
  1353.  
  1354. wait(.3)
  1355.  
  1356. ctween(grip,"C0",gripback,.2,true)
  1357.  
  1358. wait(.25)
  1359.  
  1360. ctween(LS,"C0",ls.C0*CFrame.Angles(0,0,.35),.1,true)
  1361.  
  1362. ctween(RS,"C0",rs.C0*CFrame.Angles(.1,0,3.1)*CFrame.Angles(0,1.05,0),.2,true)
  1363.  
  1364. wait(.1)
  1365.  
  1366. ctween(LS,"C0",ls.C0,.3,true)
  1367.  
  1368. grip.C0 = torso.CFrame:toObjectSpace(h.CFrame) * grip.C1
  1369.  
  1370. grip.Part0 = torso
  1371.  
  1372. ctween(grip,"C0",CFrame.new(1.4,1.6,.52) * CFrame.Angles(-math.pi/2,0,math.pi/2) * CFrame.Angles(.7,.07,-.05) * CFrame.Angles(0,0,math.pi),.2,true)
  1373.  
  1374. wait(.1)
  1375.  
  1376. ctween(RS,"C0",rs.C0,.5)
  1377.  
  1378. wait()
  1379.  
  1380.  
  1381. enabled = true
  1382.  
  1383. end
  1384.  
  1385.  
  1386.  
  1387. function equip()
  1388.  
  1389. if not enabled or equipped then return end
  1390.  
  1391. enabled = false
  1392.  
  1393. equipped = true
  1394.  
  1395. checkShoulders()
  1396.  
  1397. rs.Part0,rs.Part1,ls.Part0,ls.Part1 = nil,nil,nil,nil
  1398.  
  1399. RS.Part0,RS.Part1,LS.Part0,LS.Part1 = torso,ra,torso,la
  1400.  
  1401. RS.C0,RS.C1,LS.C0,LS.C1 = rs.C0,rs.C1,ls.C0,ls.C1
  1402.  
  1403. ctween(RS,"C0",rs.C0*CFrame.Angles(.1,0,3.1)*CFrame.Angles(0,1.05,0),.5,true)
  1404.  
  1405. wait(.4)
  1406.  
  1407. ctween(LS,"C0",ls.C0*CFrame.Angles(0,0,.3),.15,true)
  1408.  
  1409. wait(.1)
  1410.  
  1411. grip.C0 = ra.CFrame:toObjectSpace(h.CFrame) * grip.C1
  1412.  
  1413. grip.Part0 = ra
  1414.  
  1415. ctween(grip,"C0",griphand,.4,true)
  1416.  
  1417. wait(.05)
  1418.  
  1419. ctween(LS,"C0",ls.C0,.4,true)
  1420.  
  1421. ctween(RS,"C0",rs.C0*CFrame.Angles(.1,0,3.1)*CFrame.Angles(0,.8,0),.3)
  1422.  
  1423. ctween(RS,"C0",rs.C0,.3)
  1424.  
  1425. wait()
  1426.  
  1427. enabled = true
  1428.  
  1429. end
  1430.  
  1431.  
  1432.  
  1433. local walking = false
  1434.  
  1435. if char:FindFirstChild("Humanoid") then
  1436.  
  1437. char.Humanoid.Running:connect(function(s)
  1438.  
  1439. walking = s > 0
  1440.  
  1441. end)
  1442.  
  1443. end
  1444.  
  1445.  
  1446.  
  1447. local noidle = false
  1448.  
  1449. local bg = torso:FindFirstChild("aBG") or Instance.new("BodyGyro",torso)
  1450.  
  1451. bg.maxTorque = Vector3.new()
  1452.  
  1453. bg.cframe = torso.CFrame
  1454.  
  1455. bg.Name = "aBG"
  1456.  
  1457. bg.D =60
  1458.  
  1459. local bgb = CFrame.new()
  1460.  
  1461. local sline = false
  1462.  
  1463.  
  1464.  
  1465. game:GetService("RunService").Stepped:connect((function()
  1466.  
  1467. if equipped then
  1468.  
  1469. bg.maxTorque = Vector3.new(1,1,1)*4e3
  1470.  
  1471. bg.cframe = clerp(bg.cframe,CFrame.new(torso.Position,torso.Position+workspace.CurrentCamera.CoordinateFrame.lookVector*Vector3.new(1,0,1))*bgb,.6)
  1472.  
  1473. else
  1474.  
  1475. bg.maxTorque = Vector3.new()
  1476.  
  1477. end
  1478.  
  1479. if enabled and not noidle then
  1480.  
  1481. local i1 = math.sin(tick())
  1482.  
  1483. local i2 = math.sin(tick()*10)
  1484.  
  1485. RS.C0 = clerp(RS.C0,ridle * CFrame.Angles(.03*i1+(walking and .08 or 0),.01*i1+(walking and i2*.2 or 0),.01*i1+(walking and i2*.7-.05 or 0)),.2)
  1486.  
  1487. LS.C0 = clerp(LS.C0,lidle * CFrame.Angles(.03*i1+(walking and .08 or 0),-.01*i1+(walking and i2*.2 or 0),-.01*i1+(walking and i2*.9+.2 or 0)),.2)
  1488.  
  1489. end
  1490.  
  1491. if sline then
  1492.  
  1493. local blcf = blade.CFrame*CFrame.new(-.125,.2,0)
  1494.  
  1495. if scfr and (blade.Position-scfr.p).magnitude > .1 then
  1496.  
  1497. part.Transparency = .8
  1498.  
  1499. part.BrickColor = BrickColor.new("Light stone grey")
  1500.  
  1501. part.Reflectance = .0
  1502.  
  1503. local h = 4.7
  1504.  
  1505. local a,b = Triangle((scfr*CFrame.new(0,h/2,0)).p,(scfr*CFrame.new(0,-h/2,0)).p,(blcf*CFrame.new(0,h/2,0)).p)
  1506.  
  1507. if a then game.Debris:AddItem(a,1) end if b then game.Debris:AddItem(b,1) end
  1508.  
  1509. local a,b = Triangle((blcf*CFrame.new(0,h/2,0)).p,(blcf*CFrame.new(0,-h/2,0)).p,(scfr*CFrame.new(0,-h/2,0)).p)
  1510.  
  1511. if a then game.Debris:AddItem(a,1) end if b then game.Debris:AddItem(b,1) end
  1512.  
  1513. scfr = blcf
  1514.  
  1515. elseif not scfr then
  1516.  
  1517. scfr = blcf
  1518.  
  1519. end
  1520.  
  1521. else
  1522.  
  1523. scfr = nil
  1524.  
  1525. end
  1526.  
  1527. end))
  1528.  
  1529.  
  1530.  
  1531. local combo = 0
  1532.  
  1533. local combolast = 0
  1534.  
  1535.  
  1536.  
  1537.  
  1538.  
  1539. local pushaway = 0
  1540.  
  1541. local damage = 0
  1542.  
  1543.  
  1544.  
  1545. blade.Touched:connect((function(hit)
  1546.  
  1547. if hit:IsDescendantOf(char) then return end
  1548.  
  1549.  
  1550.  
  1551. for i,v in pairs(hit.Parent:GetChildren()) do
  1552.  
  1553. if v:IsA("Humanoid") then
  1554.  
  1555. v:TakeDamage(damage)
  1556.  
  1557. elseif v.Name == "Torso" and v:IsA("Part") then
  1558.  
  1559. local d = (v.Position-torso.Position).unit * pushaway / 20
  1560.  
  1561. if NLS then
  1562.  
  1563. --NLS(("for i=1,20 do wait(1/30) script.Parent.CFrame = script.Parent.CFrame + Vector3.new(%d,%d,%d) end script:Destroy()"):format(d.X,d.Y,d.Z),v)
  1564.  
  1565. end
  1566.  
  1567. end
  1568.  
  1569. end
  1570.  
  1571.  
  1572.  
  1573. end))
  1574.  
  1575.  
  1576.  
  1577.  
  1578.  
  1579.  
  1580.  
  1581. mouse.KeyDown:connect((function(key)
  1582.  
  1583. if not enabled then return end
  1584.  
  1585. if key == "q" then
  1586.  
  1587. (equipped and unEquip or equip)()
  1588.  
  1589. end
  1590.  
  1591. if key == "r" and equipped then
  1592.  
  1593. playSound(91154708,x,1,1)
  1594.  
  1595. enabled = false
  1596.  
  1597. local cf = torso.CFrame
  1598.  
  1599. damage = 10
  1600.  
  1601. pushaway = 4
  1602.  
  1603. for i=1,2 do
  1604.  
  1605. ctween(RS,"C0",rs.C0*CFrame.Angles(.2,0,1.5) * CFrame.Angles(0,1,0),.05,true)
  1606.  
  1607. ctween(torso,"CFrame",cf*CFrame.new(0,0,-1) * CFrame.Angles(0,-2,0),.05)
  1608.  
  1609. ctween(RS,"C0",rs.C0*CFrame.Angles(.2,0,2)* CFrame.Angles(0,1,0),.05,true)
  1610.  
  1611. ctween(torso,"CFrame",cf*CFrame.new(0,0,-2) * CFrame.Angles(0,-3.5,0),.05)
  1612.  
  1613. ctween(RS,"C0",rs.C0*CFrame.Angles(.2,0,2)* CFrame.Angles(0,1,0),.05,true)
  1614.  
  1615. ctween(torso,"CFrame",cf*CFrame.new(0,0,-3) * CFrame.Angles(0,-5.5,0),.05)
  1616.  
  1617. ctween(RS,"C0",rs.C0*CFrame.Angles(.2,0,1.5)* CFrame.Angles(0,1.6,0)*CFrame.Angles(0,0,-1),.05,true)
  1618.  
  1619. sline = true
  1620.  
  1621. ctween(torso,"CFrame",cf*CFrame.new(0,0,-4) * CFrame.Angles(0,-5.8,0),.05)
  1622.  
  1623. ctween(RS,"C0",rs.C0*CFrame.Angles(.2,0,1.2)* CFrame.Angles(0,1.6,0)*CFrame.Angles(0,0,-1.9),.1,true)
  1624.  
  1625. ctween(torso,"CFrame",cf*CFrame.new(0,0,-5) * CFrame.Angles(0,-7.7,0),.1)
  1626.  
  1627. sline = false
  1628.  
  1629. playSound(91154708,x,1,1)
  1630.  
  1631. cf = cf * CFrame.new(0,0,-5)
  1632. end
  1633.  
  1634. wait(.05)
  1635.  
  1636. damage = 0
  1637.  
  1638. pushaway = 0
  1639.  
  1640. sline = false
  1641.  
  1642. enabled = true
  1643.  
  1644.  
  1645.  
  1646. end
  1647.  
  1648. if key == "e" and equipped then
  1649.  
  1650. playSound(91154708,x,1,1)
  1651.  
  1652. enabled = false
  1653.  
  1654. if combo > 0 and tick() > combolast + 1 then
  1655.  
  1656. combo = 0
  1657.  
  1658. end
  1659.  
  1660. local cnow = combo
  1661.  
  1662. combo = combo + 1
  1663.  
  1664. if combo == 3 then
  1665.  
  1666. combo = 0
  1667.  
  1668. end
  1669.  
  1670. damage = 5
  1671.  
  1672. pushaway = 4
  1673.  
  1674. if cnow == 0 then
  1675.  
  1676. ctween(RS,"C0",rs.C0 * CFrame.Angles(0,0,1.5) * CFrame.Angles(-.2,-.2,0),.1)
  1677.  
  1678. ctween(RS,"C0",rs.C0 * CFrame.Angles(0,0,3) * CFrame.Angles(-.2,-.2,0),.1)
  1679.  
  1680. bgb = CFrame.Angles(0,.5,0)
  1681.  
  1682. sline = true
  1683.  
  1684. ctween(RS,"C0",rs.C0 * CFrame.Angles(0,0,.6) * CFrame.Angles(.5,-.3,0),.1)
  1685.  
  1686. wait(.05)
  1687.  
  1688. enabled = true
  1689.  
  1690. combolast = tick()
  1691.  
  1692. noidle = true
  1693.  
  1694. sline = false
  1695.  
  1696. damage,pushaway = 0,0
  1697.  
  1698. local l = ctween(RS,"C0",rs.C0 * CFrame.Angles(0,0,.3) * CFrame.Angles(.6,-.5,0),.3)
  1699.  
  1700. if l then
  1701.  
  1702. noidle = false
  1703.  
  1704. bgb = CFrame.Angles(0,0,0)
  1705.  
  1706. end
  1707.  
  1708. elseif cnow == 1 then
  1709.  
  1710. bgb = CFrame.Angles(0,.4,0)
  1711.  
  1712. ctween(RS,"C0",rs.C0 * CFrame.Angles(0,0,.5) * CFrame.Angles(.7,.7,0),.07)
  1713.  
  1714. ctween(RS,"C0",rs.C0 * CFrame.Angles(0,0,1.3) * CFrame.Angles(.8,.8,0),.07)
  1715.  
  1716. bgb = CFrame.Angles(0,-.6,0)
  1717.  
  1718. sline = true
  1719.  
  1720. ctween(RS,"C0",rs.C0 * CFrame.Angles(0,0,1) * CFrame.Angles(-.9,1.5,0)*CFrame.Angles(0,0,-.7),.1)
  1721.  
  1722. wait(.05)
  1723.  
  1724. enabled = true
  1725.  
  1726. combolast = tick()
  1727.  
  1728. noidle = true
  1729.  
  1730. sline = false
  1731.  
  1732. damage,pushaway = 0,0
  1733.  
  1734. local l = ctween(RS,"C0",rs.C0 * CFrame.Angles(0,0,.4) * CFrame.Angles(-.5,.8,0),.3)
  1735.  
  1736. if l then
  1737.  
  1738. noidle = false
  1739.  
  1740. bgb = CFrame.Angles(0,0,0)
  1741.  
  1742. end
  1743.  
  1744. elseif cnow == 2 then
  1745.  
  1746. bgb = CFrame.Angles(0,-.1,0)
  1747.  
  1748. ctween(RS,"C0",rs.C0 * CFrame.Angles(0,0,1.5) * CFrame.Angles(.1,-.1,0),.1)
  1749.  
  1750. ctween(RS,"C0",rs.C0 * CFrame.Angles(0,0,3) * CFrame.Angles(.1,-.1,0),.1)
  1751.  
  1752. bgb = CFrame.Angles(0,.1,0)
  1753.  
  1754. sline = true
  1755.  
  1756. ctween(RS,"C0",rs.C0 * CFrame.Angles(0,0,1.3) * CFrame.Angles(.1,.3,0),.05)
  1757.  
  1758. ctween(RS,"C0",rs.C0 * CFrame.Angles(0,0,-.2) * CFrame.Angles(.1,.5,0),.05)
  1759.  
  1760. wait(.1)
  1761.  
  1762. enabled = true
  1763.  
  1764. combolast = tick()
  1765.  
  1766. noidle = true
  1767.  
  1768. sline = false
  1769.  
  1770. damage,pushaway = 0,0
  1771.  
  1772. local l = ctween(RS,"C0",rs.C0 * CFrame.Angles(0,0,.3) * CFrame.Angles(-.3,.2,0),.3)
  1773.  
  1774. if l then
  1775.  
  1776. noidle = false
  1777.  
  1778. bgb = CFrame.Angles(0,0,0)
  1779.  
  1780. end
  1781.  
  1782. end
  1783.  
  1784. end
  1785.  
  1786. end))
Add Comment
Please, Sign In to add comment