Pastebin launched a little side project called VERYVIRAL.com, check it out ;-) Want more features on Pastebin? Sign Up, it's FREE!
Guest

roblox karate script

By: xxbudlimitedsxx on Aug 5th, 2012  |  syntax: None  |  size: 17.65 KB  |  views: 1,337  |  expires: Never
download  |  raw  |  embed  |  report abuse  |  print
Text below is selected. Please press Ctrl+C to copy to your clipboard. (⌘+C on Mac)
  1. --MADE BY OneLegend (NOT THE SCRIPT) LOCAL SCRIPT: Go to line 5 and put your name where it says "YOUR NAME HERE"
  2.  
  3. Plrs = game:GetService("Players")
  4.  
  5. me = Plrs.XxbudlimitedsxX
  6.  
  7. char = me.Character
  8.  
  9. Modelname = "SoulKarate"
  10.  
  11. dmgs = {Pdmg = {7, 13, "Punch"}, Kdmg = {10, 19, "Kick"}, K2dmg = {12, 16, "Doublekick"}, Rdmg = {16, 23, "RoundHouse"},
  12.  
  13. Kardmg = {8, 15, "Karate"}}
  14.  
  15. dmg = dmgs.Pdmg
  16.  
  17. Surfaces = {"FrontSurface", "BackSurface", "TopSurface", "BottomSurface", "LeftSurface", "RightSurface"}
  18.  
  19. necko = CFrame.new(0, 1, 0, -1, -0, -0, 0, 0, 1, 0, 1, 0)
  20.  
  21. able = true
  22.  
  23. block = false
  24.  
  25. breakblock = 19
  26.  
  27. holdkey = false
  28.  
  29. effectOn = false
  30.  
  31. Add = {
  32.  
  33. Sphere = function(P)
  34.  
  35. local m = Instance.new("SpecialMesh",P)
  36.  
  37. m.MeshType = "Sphere"
  38.  
  39. return m
  40.  
  41. end,
  42.  
  43. BF = function(P)
  44.  
  45. local bf = Instance.new("BodyForce",P)
  46.  
  47. bf.force = Vector3.new(0, P:GetMass()*187, 0)
  48.  
  49. return bf
  50.  
  51. end,
  52.  
  53. BP = function(P)
  54.  
  55. local bp = Instance.new("BodyPosition",P)
  56.  
  57. bp.maxForce = Vector3.new(math.huge, 0, math.huge)
  58.  
  59. bp.P = 14000
  60.  
  61. return bp
  62.  
  63. end,
  64.  
  65. BG = function(P)
  66.  
  67. local bg = Instance.new("BodyGyro",P)
  68.  
  69. bg.maxTorque = Vector3.new(math.huge, math.huge, math.huge)
  70.  
  71. bg.P = 14000
  72.  
  73. return bg
  74.  
  75. end
  76.  
  77. }
  78.  
  79. function Part(Parent, Anchor, Collide, Tran, Ref, Color, X, Y, Z, Break)
  80.  
  81. local p = Instance.new("Part")
  82.  
  83. p.formFactor = "Custom"
  84.  
  85. p.Anchored = Anchor
  86.  
  87. p.CanCollide = Collide
  88.  
  89. p.Transparency = Tran
  90.  
  91. p.Reflectance = Ref
  92.  
  93. p.BrickColor = BrickColor.new(Color)
  94.  
  95. for _, Surf in pairs(Surfaces) do
  96.  
  97. p[Surf] = "Smooth"
  98.  
  99. end
  100.  
  101. p.Size = Vector3.new(X, Y, Z)
  102.  
  103. if Break then
  104.  
  105. p:BreakJoints()
  106.  
  107. else p:MakeJoints() end
  108.  
  109. p.Parent = Parent
  110.  
  111. return p
  112.  
  113. end
  114.  
  115. function Weld(p0, p1, x, y, z, a, b, c)
  116.  
  117. local w = Instance.new("Weld")
  118.  
  119. w.Parent = p0
  120.  
  121. w.Part0 = p0
  122.  
  123. w.Part1 = p1
  124.  
  125. w.C1 = CFrame.new(x,y,z) * CFrame.Angles(a,b,c)
  126.  
  127. return w
  128.  
  129. end
  130.  
  131. function ComputePos(pos1, pos2)
  132.  
  133. local pos3 = Vector3.new(pos2.x, pos1.y, pos2.z)
  134.  
  135. return CFrame.new(pos1, pos3)
  136.  
  137. end
  138.  
  139. function getHumanoid(c)
  140.  
  141. local h = nil
  142.  
  143. for i,v in pairs(c:children()) do
  144.  
  145. if v:IsA("Humanoid") and c ~= char then
  146.  
  147. if v.Health > 0 then
  148.  
  149. h = v
  150.  
  151. end
  152.  
  153. end
  154.  
  155. end
  156.  
  157. return h
  158.  
  159. end
  160.  
  161. function getHead(c, pos, m)
  162.  
  163. local h = nil
  164.  
  165. local n = nil
  166.  
  167. t = c:findFirstChild("Torso")
  168.  
  169. if t ~= nil then
  170.  
  171. n = t:findFirstChild("Neck")
  172.  
  173. end
  174.  
  175. for i,v in pairs(c:children()) do
  176.  
  177. if v.Name == "Head" then
  178.  
  179. if (v.Position - pos).magnitude < m then
  180.  
  181. h = v
  182.  
  183. end
  184.  
  185. end
  186.  
  187. end
  188.  
  189. return h, n
  190.  
  191. end
  192.  
  193. for i,v in pairs(char:children()) do
  194.  
  195. if v.Name == Modelname then
  196.  
  197. v:remove()
  198.  
  199. end
  200.  
  201. end
  202.  
  203. torso = char.Torso
  204.  
  205. neck = torso.Neck
  206.  
  207. hum = char.Humanoid
  208.  
  209. Rarm = char["Right Arm"]
  210.  
  211. Larm = char["Left Arm"]
  212.  
  213. Rleg = char["Right Leg"]
  214.  
  215. Lleg = char["Left Leg"]
  216.  
  217. LastHP = hum.Health
  218.  
  219. function HpChange(newhp)
  220.  
  221. if block and hum.Health > 0.1 then
  222.  
  223. local dif = LastHP - newhp
  224.  
  225. if dif > 0 then
  226.  
  227. local h = LastHP - ((LastHP-newhp)/3)
  228.  
  229. hum.Health = h
  230.  
  231. wait()
  232.  
  233. hum.Health = h
  234.  
  235. end
  236.  
  237. if dif > breakblock then
  238.  
  239. block = false
  240.  
  241. local a = Add.BP(torso)
  242.  
  243. a.position = torso.Position
  244.  
  245. local b = Add.BG(torso)
  246.  
  247. b.cframe = CFrame.new(torso.Position, torso.CFrame * CFrame.new(0, 0, -5).p)
  248.  
  249. wait(0.6)
  250.  
  251. a:remove()
  252.  
  253. b:remove()
  254.  
  255. able = true
  256.  
  257. end
  258.  
  259. end
  260.  
  261. LastHP = hum.Health
  262.  
  263. end
  264.  
  265. hum.HealthChanged:connect(HpChange)
  266.  
  267. hc = Instance.new("Humanoid")
  268.  
  269. hc.Health = 0
  270.  
  271. hc.MaxHealth = 0
  272.  
  273. slash = Instance.new("Sound")
  274.  
  275. slash.SoundId = "rbxasset://sounds//swordslash.wav"
  276.  
  277. slash.Volume = 0.8
  278.  
  279. slash.Pitch = 1.4
  280.  
  281. slash.Parent = Rarm
  282.  
  283. hitsound = Instance.new("Sound")
  284.  
  285. hitsound.SoundId = "http://www.roblox.com/asset/?id=2801263"
  286.  
  287. hitsound.Volume = 0.55
  288.  
  289. hitsound.Pitch = 2.1
  290.  
  291. hitsound.Parent = torso
  292.  
  293. Mo = Instance.new("Model")
  294.  
  295. Mo.Name = Modelname
  296.  
  297. RABrick = Part(Mo, false, false, 1, 0, "White", 0.1, 0.1, 0.1, true)
  298.  
  299. LABrick = Part(Mo, false, false, 1, 0, "White", 0.1, 0.1, 0.1, true)
  300.  
  301. RLBrick = Part(Mo, false, false, 1, 0, "White", 0.1, 0.1, 0.1, true)
  302.  
  303. LLBrick = Part(Mo, false, false, 1, 0, "White", 0.1, 0.1, 0.1, true)
  304.  
  305. RABW = Weld(torso, RABrick, -1.5, -0.5, 0, 0, 0, 0)
  306.  
  307. LABW = Weld(torso, LABrick, 1.5, -0.5, 0, 0, 0, 0)
  308.  
  309. RLBW = Weld(torso, RLBrick, -0.5, 1.2, 0, 0, 0, 0)
  310.  
  311. LLBW = Weld(torso, LLBrick, 0.5, 1.2, 0, 0, 0, 0)
  312.  
  313. RAW = Weld(RABrick, nil, 0, 0.5, 0, 0, 0, 0)
  314.  
  315. LAW = Weld(LABrick, nil, 0, 0.5, 0, 0, 0, 0)
  316.  
  317. RLW = Weld(RLBrick, nil, 0, 0.8, 0, 0, 0, 0)
  318.  
  319. LLW = Weld(LLBrick, nil, 0, 0.8, 0, 0, 0, 0)
  320.  
  321. TBricks = {}
  322.  
  323. for i, v in pairs({Rarm, Larm, Rleg, Lleg}) do
  324.  
  325. local p = Part(Mo, false, false, 1, 0, "White", 0.9, 0.9, 0.8, true)
  326.  
  327. Weld(v, p, 0, 0.7, 0, 0, 0, 0)
  328.  
  329. table.insert(TBricks, {p, hurt = false, able = true})
  330.  
  331. end
  332.  
  333. function startEff(part)
  334.  
  335. effectOn = true
  336.  
  337. local lastPoint = part.Position
  338.  
  339. coroutine.resume(coroutine.create(function()
  340.  
  341. while effectOn do
  342.  
  343. wait()
  344.  
  345. local mag = (lastPoint - part.Position).magnitude
  346.  
  347. local p = Part(Mo, true, false, 0.2, 0.05, "Institutional white", 0.1, 0.1, mag+0.2, true)
  348.  
  349. p.CFrame = CFrame.new(lastPoint, part.Position) * CFrame.new(0, 0, -mag/2)
  350.  
  351. Instance.new("BlockMesh",p)
  352.  
  353. lastPoint = part.Position
  354.  
  355. coroutine.resume(coroutine.create(function()
  356.  
  357. for x=0.2,1,0.2 do
  358.  
  359. wait()
  360.  
  361. p.Transparency = x
  362.  
  363. end
  364.  
  365. p:remove()
  366.  
  367. end))
  368.  
  369. end
  370.  
  371. end))
  372.  
  373. end
  374.  
  375. function endEff()
  376.  
  377. effectOn = false
  378.  
  379. end
  380.  
  381. function ShowDMG(p, d)
  382.  
  383. local mo = Instance.new("Model")
  384.  
  385. mo.Name = d
  386.  
  387. local pa = Part(mo, false, true, 0, 0, "Bright red", 0.8, 0.2, 0.8, true)
  388.  
  389. pa.CFrame = CFrame.new(p.Position)
  390.  
  391. pa.Name = "Head"
  392.  
  393. local hah = hc:clone()
  394.  
  395. hah.Parent = mo
  396.  
  397. local bp = Add.BP(pa)
  398.  
  399. bp.maxForce = Vector3.new(math.huge, math.huge, math.huge)
  400.  
  401. bp.position = p.Position + Vector3.new(0, 2.5, 0)
  402.  
  403. Add.BG(pa)
  404.  
  405. coroutine.resume(coroutine.create(function()
  406.  
  407. wait(0.2)
  408.  
  409. mo.Parent = workspace
  410.  
  411. wait(1.5)
  412.  
  413. mo:remove()
  414.  
  415. end))
  416.  
  417. end
  418.  
  419. for i, v in pairs(TBricks) do
  420.  
  421. v[1].Touched:connect(function(hit)
  422.  
  423. local fig = hit.Parent
  424.  
  425. H, T = getHumanoid(fig), fig:findFirstChild("Torso")
  426.  
  427. if H ~= nil and T ~= nil and v.hurt and v.able then
  428.  
  429. hitsound:play()
  430.  
  431. v.able = false
  432.  
  433. local d = math.random(dmg[1], dmg[2])
  434.  
  435. local hed, ne = getHead(fig, v[1].Position, 2.5)
  436.  
  437. if dmg[3] == "RoundHouse" and hed ~= nil then
  438.  
  439. d = math.random(dmg[1]*2.4, dmg[2]*2.4)
  440.  
  441. coroutine.resume(coroutine.create(function()
  442.  
  443. if ne ~= nil then
  444.  
  445. for i=0,60,20 do
  446.  
  447. ne.C0 = necko * CFrame.Angles(math.rad(-i), 0, 0)
  448.  
  449. wait()
  450.  
  451. end
  452.  
  453. for i=60,0,-20 do
  454.  
  455. ne.C0 = necko * CFrame.Angles(math.rad(-i), 0, 0)
  456.  
  457. wait()
  458.  
  459. end
  460.  
  461. ne.C0 = necko
  462.  
  463. end
  464.  
  465. end))
  466.  
  467. end
  468.  
  469. H.Health = H.Health - d
  470.  
  471. local xd = CFrame.new(v[1].Position, hit.Position)
  472.  
  473. hit.Velocity = xd.lookVector * (d*2.3)
  474.  
  475. ShowDMG(v[1], d)
  476.  
  477. wait(0.34)
  478.  
  479. v.able = true
  480.  
  481. end
  482.  
  483. end)
  484.  
  485. end
  486.  
  487. Mo.Parent = char
  488.  
  489. RAWBattle = nil
  490.  
  491. LAWBattle = nil
  492.  
  493. function nilparts()
  494.  
  495. LAW.Part1 = nil
  496.  
  497. RAW.Part1 = nil
  498.  
  499. RLW.Part1 = nil
  500.  
  501. LLW.Part1 = nil
  502.  
  503. LAW.C0 = CFrame.new(0, 0, 0)
  504.  
  505. RLW.C0 = CFrame.new(0, 0, 0)
  506.  
  507. LLW.C0 = CFrame.new(0, 0, 0)
  508.  
  509. RAW.C0 = CFrame.new(0, 0, 0)
  510.  
  511. end
  512.  
  513. function attach()
  514.  
  515. LAW.Part1 = Larm
  516.  
  517. RLW.Part1 = Rleg
  518.  
  519. LLW.Part1 = Lleg
  520.  
  521. RAW.Part1 = Rarm
  522.  
  523. LAW.C0 = CFrame.new(0, 0, 0)
  524.  
  525. RLW.C0 = CFrame.new(0, 0, 0)
  526.  
  527. LLW.C0 = CFrame.new(0, 0, 0)
  528.  
  529. RAW.C0 = CFrame.new(0, 0, 0)
  530.  
  531. end
  532.  
  533. attacks = {
  534.  
  535. function(mouse)
  536.  
  537. local Orig = torso.CFrame
  538.  
  539. local MousePos = mouse.Hit.p
  540.  
  541. local bg = Add.BG(torso)
  542.  
  543. local bp = Add.BP(torso)
  544.  
  545. bp.position = Orig.p
  546.  
  547. local CF = ComputePos(Orig.p, MousePos)
  548.  
  549. local CF2 = CF
  550.  
  551. bg.cframe = CF2
  552.  
  553. attach()
  554.  
  555. bp.position = CF * CFrame.new(0, 0, -1.5).p
  556.  
  557. startEff(TBricks[3][1])
  558.  
  559. TBricks[3].hurt = true
  560.  
  561. slash:play()
  562.  
  563. dmg = dmgs.Kdmg
  564.  
  565. for i = 0, 100, 100/4 do
  566.  
  567. neck.C0 = necko * CFrame.Angles(0, 0, math.rad(-i))
  568.  
  569. RLW.C0 = CFrame.Angles(0, 0, math.rad(i)) * CFrame.new(0, -i/200, 0)
  570.  
  571. LLW.C0 = CFrame.Angles(0, 0, math.rad(-i/4))
  572.  
  573. RAW.C0 = CFrame.Angles(math.rad(i/8), 0, math.rad(-i/7))
  574.  
  575. LAW.C0 = CFrame.Angles(math.rad(i/6), 0, math.rad(-i/7))
  576.  
  577. CF2 = CF * CFrame.Angles(math.rad(i/4), math.rad(i), 0)
  578.  
  579. bg.cframe = CF2
  580.  
  581. wait()
  582.  
  583. end
  584.  
  585. wait(0.1)
  586.  
  587. TBricks[3].hurt = false
  588.  
  589. for i = 100, 0, -100/5 do
  590.  
  591. neck.C0 = necko * CFrame.Angles(0, 0, math.rad(-i))
  592.  
  593. RLW.C0 = CFrame.Angles(0, 0, math.rad(i)) * CFrame.new(0, -i/150, 0)
  594.  
  595. LLW.C0 = CFrame.Angles(0, 0, math.rad(-i/4))
  596.  
  597. RAW.C0 = CFrame.Angles(math.rad(i/8), 0, math.rad(-i/7))
  598.  
  599. LAW.C0 = CFrame.Angles(math.rad(i/8), 0, math.rad(-i/7))
  600.  
  601. CF2 = CF * CFrame.Angles(math.rad(i/4), math.rad(i), 0)
  602.  
  603. bg.cframe = CF2
  604.  
  605. wait()
  606.  
  607. end
  608.  
  609. endEff()
  610.  
  611. wait()
  612.  
  613. nilparts()
  614.  
  615. bg:remove()
  616.  
  617. bp:remove()
  618.  
  619. neck.C0 = necko
  620.  
  621. end,
  622.  
  623. function(mouse)
  624.  
  625. local Orig = torso.CFrame
  626.  
  627. local MousePos = mouse.Hit.p
  628.  
  629. local bg = Add.BG(torso)
  630.  
  631. local bp = Add.BP(torso)
  632.  
  633. bp.position = Orig.p
  634.  
  635. local CF = ComputePos(Orig.p, MousePos)
  636.  
  637. local CF2 = CF
  638.  
  639. bg.cframe = CF2
  640.  
  641. attach()
  642.  
  643. bp.position = CF * CFrame.new(0, 0, -1.5).p
  644.  
  645. TBricks[2].hurt = true
  646.  
  647. startEff(TBricks[2][1])
  648.  
  649. slash:play()
  650.  
  651. dmg = dmgs.Pdmg
  652.  
  653. for i = 0, -90, -90/4 do
  654.  
  655. neck.C0 = necko * CFrame.Angles(0, 0, math.rad(-i))
  656.  
  657. RLW.C0 = CFrame.Angles(0, 0, math.rad(-i/4))
  658.  
  659. LLW.C0 = CFrame.Angles(0, 0, math.rad(i/4))
  660.  
  661. RAW.C0 = CFrame.Angles(0, 0, 0)
  662.  
  663. LAW.C0 = CFrame.Angles(math.rad(-i), 0, math.rad(i))
  664.  
  665. CF2 = CF * CFrame.Angles(math.rad(i/8), math.rad(i), 0)
  666.  
  667. bg.cframe = CF2
  668.  
  669. wait()
  670.  
  671. end
  672.  
  673. wait(0.07)
  674.  
  675. TBricks[2].hurt = false
  676.  
  677. endEff()
  678.  
  679. startEff(TBricks[1][1])
  680.  
  681. TBricks[1].hurt = true
  682.  
  683. bp.position = CF * CFrame.new(0, 0, -3).p
  684.  
  685. slash:play()
  686.  
  687. for i = -90, 0, 90/7 do
  688.  
  689. neck.C0 = necko * CFrame.Angles(0, 0, math.rad(-(i*2+90)))
  690.  
  691. RAW.C0 = CFrame.Angles(math.rad(i-90), math.pi, math.rad(i-90))
  692.  
  693. LAW.C0 = CFrame.Angles(math.rad(-i), 0, math.rad(i))
  694.  
  695. CF2 = CF * CFrame.Angles(math.rad(i/8), math.rad(i*2+90), 0)
  696.  
  697. bg.cframe = CF2
  698.  
  699. wait()
  700.  
  701. end
  702.  
  703. wait(0.07)
  704.  
  705. TBricks[1].hurt = false
  706.  
  707. for i = 0, -90, -90/5 do
  708.  
  709. neck.C0 = necko * CFrame.Angles(0, 0, math.rad(-(i+90)))
  710.  
  711. RAW.C0 = CFrame.Angles(math.rad(i-90), math.pi, math.rad(i-90))
  712.  
  713. RLW.C0 = CFrame.Angles(0, 0, math.rad(i/4+23))
  714.  
  715. LLW.C0 = CFrame.Angles(0, 0, math.rad(-i/4-23))
  716.  
  717. CF2 = CF * CFrame.Angles(0, math.rad(i+90), 0)
  718.  
  719. bg.cframe = CF2
  720.  
  721. wait()
  722.  
  723. end
  724.  
  725. endEff()
  726.  
  727. wait()
  728.  
  729. nilparts()
  730.  
  731. bg:remove()
  732.  
  733. bp:remove()
  734.  
  735. neck.C0 = necko
  736.  
  737. end,
  738.  
  739. function(mouse)
  740.  
  741. local Orig = torso.CFrame
  742.  
  743. local MousePos = mouse.Hit.p
  744.  
  745. local bg = Add.BG(torso)
  746.  
  747. local bp = Add.BP(torso)
  748.  
  749. bp.position = Orig.p
  750.  
  751. local CF = ComputePos(Orig.p, MousePos)
  752.  
  753. local CF2 = CF
  754.  
  755. bg.cframe = CF2
  756.  
  757. attach()
  758.  
  759. bp.position = CF * CFrame.new(0, 0, -1.5).p
  760.  
  761. TBricks[4].hurt = true
  762.  
  763. startEff(TBricks[4][1])
  764.  
  765. slash:play()
  766.  
  767. dmg = dmgs.K2dmg
  768.  
  769. for i = 0, -100, -100/4 do
  770.  
  771. neck.C0 = necko * CFrame.Angles(0, 0, math.rad(-i))
  772.  
  773. RLW.C0 = CFrame.Angles(0, 0, math.rad(-i/4))
  774.  
  775. LLW.C0 = CFrame.Angles(0, 0, math.rad(i))
  776.  
  777. RAW.C0 = CFrame.Angles(math.rad(-i/6), 0, math.rad(-i/7))
  778.  
  779. LAW.C0 = CFrame.Angles(math.rad(i/6), 0, math.rad(-i/7))
  780.  
  781. CF2 = CF * CFrame.Angles(math.rad(-i/5), math.rad(i), 0)
  782.  
  783. bg.cframe = CF2
  784.  
  785. wait()
  786.  
  787. end
  788.  
  789. wait(0.1)
  790.  
  791. bp.position = CF * CFrame.new(0, 0, -3).p
  792.  
  793. TBricks[4].hurt = false
  794.  
  795. endEff()
  796.  
  797. startEff(TBricks[3][1])
  798.  
  799. TBricks[3].hurt = true
  800.  
  801. local lol1, lol2 = RLW.C0, LLW.C0
  802.  
  803. slash:play()
  804.  
  805. for i = -100, -290, -190/5 do
  806.  
  807. RLW.C0 = lol1 * CFrame.Angles(0, 0, math.rad(-i/3-(100/4)))
  808.  
  809. LLW.C0 = CFrame.Angles(0, 0, math.rad((-i/3)-100))
  810.  
  811. CF2 = CF * CFrame.Angles(math.rad(100/5), math.rad(i), 0)
  812.  
  813. bg.cframe = CF2
  814.  
  815. wait()
  816.  
  817. end
  818.  
  819. wait(0.1)
  820.  
  821. bp.position = CF * CFrame.new(0, 0, -4.5).p
  822.  
  823. TBricks[3].hurt = false
  824.  
  825. lol1, lol2 = RLW.C0, LLW.C0
  826.  
  827. for i = 0, -70, -70/3 do
  828.  
  829. neck.C0 = necko * CFrame.Angles(0, 0, math.rad((i*1.3)+100))
  830.  
  831. RLW.C0 = lol1 * CFrame.Angles(0, 0, math.rad(i*1.4))
  832.  
  833. LLW.C0 = lol2 * CFrame.Angles(0, 0, 0)
  834.  
  835. RAW.C0 = CFrame.Angles(0, 0, 0)
  836.  
  837. LAW.C0 = CFrame.Angles(0, 0, 0)
  838.  
  839. CF2 = CF * CFrame.Angles(0, math.rad(-290+i), 0)
  840.  
  841. bg.cframe = CF2
  842.  
  843. wait()
  844.  
  845. end
  846.  
  847. endEff()
  848.  
  849. wait()
  850.  
  851. nilparts()
  852.  
  853. bg:remove()
  854.  
  855. bp:remove()
  856.  
  857. neck.C0 = necko
  858.  
  859. end,
  860.  
  861. function(mouse)
  862.  
  863. if mouse ~= nil then
  864.  
  865. local Orig = torso.CFrame
  866.  
  867. local MousePos = mouse.Hit.p
  868.  
  869. local bg = Add.BG(torso)
  870.  
  871. local bp = Add.BP(torso)
  872.  
  873. bp.position = Orig.p
  874.  
  875. local CF = ComputePos(Orig.p, MousePos)
  876.  
  877. local CF2 = CF
  878.  
  879. bg.cframe = CF2
  880.  
  881. startEff(TBricks[3][1])
  882.  
  883. attach()
  884.  
  885. bp.position = CF * CFrame.new(0, 0, -1).p
  886.  
  887. dmg = dmgs.Rdmg
  888.  
  889. for i = 0, 180, 180/7 do
  890.  
  891. neck.C0 = necko * CFrame.Angles(0, 0, math.rad(i/2))
  892.  
  893. RLW.C0 = CFrame.Angles(0, 0, 0)
  894.  
  895. LLW.C0 = CFrame.Angles(0, 0, 0)
  896.  
  897. RAW.C0 = CFrame.Angles(math.rad(i/5), 0, math.rad(i/10))
  898.  
  899. LAW.C0 = CFrame.Angles(math.rad(-i/5), 0, math.rad(-i/10))
  900.  
  901. CF2 = CF * CFrame.Angles(math.rad(i/5.8), math.rad(-i), 0)
  902.  
  903. bg.cframe = CF2
  904.  
  905. wait()
  906.  
  907. end
  908.  
  909. slash:play()
  910.  
  911. TBricks[3].hurt = true
  912.  
  913. for i = 180, 180+90, 90/4 do
  914.  
  915. neck.C0 = necko * CFrame.Angles(0, 0, math.rad((-i*2-180)-90))
  916.  
  917. RLW.C0 = CFrame.Angles(0, 0, math.rad((i*1.45)-(180*1.45))) * CFrame.new(0, (-i+180)/100, 0)
  918.  
  919. LLW.C0 = CFrame.Angles(0, 0, math.rad((-i/3)+(180/3)))
  920.  
  921. RAW.C0 = CFrame.Angles(math.rad(i/5), 0, math.rad(i/10))
  922.  
  923. LAW.C0 = CFrame.Angles(math.rad(-i/5), 0, math.rad(-i/10))
  924.  
  925. CF2 = CF * CFrame.Angles(math.rad(180/5.8), math.rad(-i), 0)
  926.  
  927. bg.cframe = CF2
  928.  
  929. wait()
  930.  
  931. end
  932.  
  933. TBricks[3].hurt = false
  934.  
  935. wait()
  936.  
  937. for i = 270, 360, 90/5 do
  938.  
  939. local a = i-270
  940.  
  941. neck.C0 = necko * CFrame.Angles(0, 0, math.rad(i))
  942.  
  943. RLW.C0 = CFrame.Angles(0, 0, math.rad((-a*1.1)-(180*1.45))) * CFrame.new(0, (a/100)+((-270+180)/100), 0)
  944.  
  945. LLW.C0 = CFrame.Angles(0, 0, math.rad((a/3)-(90/3)))
  946.  
  947. RAW.C0 = CFrame.Angles(math.rad(270/5-((a*3)/5)), 0, math.rad(270/10-((a*3)/10)))
  948.  
  949. LAW.C0 = CFrame.Angles(math.rad(-270/5+((a*3)/5)), 0, math.rad(-270/10+((a*3)/10)))
  950.  
  951. CF2 = CF * CFrame.Angles(math.rad((180/5.8)-((a*2)/5.8)), math.rad(-i), 0)
  952.  
  953. bg.cframe = CF2
  954.  
  955. wait()
  956.  
  957. end
  958.  
  959. endEff()
  960.  
  961. wait()
  962.  
  963. nilparts()
  964.  
  965. bg:remove()
  966.  
  967. bp:remove()
  968.  
  969. neck.C0 = necko
  970.  
  971. end
  972.  
  973. end,
  974.  
  975. function(mouse)
  976.  
  977. local Orig = torso.CFrame
  978.  
  979. local MousePos = mouse.Hit.p
  980.  
  981. local bg = Add.BG(torso)
  982.  
  983. local bp = Add.BP(torso)
  984.  
  985. bp.position = Orig.p
  986.  
  987. local CF = ComputePos(Orig.p, MousePos)
  988.  
  989. local CF2 = CF
  990.  
  991. bg.cframe = CF2
  992.  
  993. startEff(TBricks[2][1])
  994.  
  995. attach()
  996.  
  997. bp.position = CF * CFrame.new(0, 0, -0.8).p
  998.  
  999. dmg = dmgs.Kardmg
  1000.  
  1001. for i = 0, -45, -45/3 do
  1002.  
  1003. neck.C0 = necko * CFrame.Angles(0, 0, math.rad(-i))
  1004.  
  1005. RLW.C0 = CFrame.Angles(0, 0, math.rad(-i/4))
  1006.  
  1007. LLW.C0 = CFrame.Angles(0, 0, math.rad(i/4))
  1008.  
  1009. RAW.C0 = CFrame.Angles(0, 0, math.rad(-i/3))
  1010.  
  1011. LAW.C0 = CFrame.Angles(math.rad(-i*4), 0, 0)
  1012.  
  1013. CF2 = CF * CFrame.Angles(0, math.rad(i), 0)
  1014.  
  1015. bg.cframe = CF2
  1016.  
  1017. wait()
  1018.  
  1019. end
  1020.  
  1021. TBricks[2].hurt = true
  1022.  
  1023. bp.position = CF * CFrame.new(0, 0, -1.6).p
  1024.  
  1025. slash:play()
  1026.  
  1027. for i = -45, -110, -65/3 do
  1028.  
  1029. neck.C0 = necko * CFrame.Angles(0, 0, math.rad(-i))
  1030.  
  1031. LAW.C0 = CFrame.Angles(math.rad(-45*4), 0, math.rad((i*2+110)))
  1032.  
  1033. CF2 = CF * CFrame.Angles(0, math.rad(i), 0)
  1034.  
  1035. bg.cframe = CF2
  1036.  
  1037. wait()
  1038.  
  1039. end
  1040.  
  1041. wait()
  1042.  
  1043. TBricks[2].hurt = false
  1044.  
  1045. for i = -110, 0, 110/4 do
  1046.  
  1047. neck.C0 = necko * CFrame.Angles(0, 0, math.rad(-i))
  1048.  
  1049. LAW.C0 = CFrame.Angles(0, 0, math.rad(i) )
  1050.  
  1051. RAW.C0 = CFrame.Angles(0, 0, math.rad(-i/2/3))
  1052.  
  1053. RLW.C0 = CFrame.Angles(0, 0, math.rad(45/4-(((i/2)+45)/4)))
  1054.  
  1055. LLW.C0 = CFrame.Angles(0, 0, math.rad(45/4+(((i/2)-45)/4)))
  1056.  
  1057. CF2 = CF * CFrame.Angles(0, math.rad(i), 0)
  1058.  
  1059. bg.cframe = CF2
  1060.  
  1061. wait()
  1062.  
  1063. end
  1064.  
  1065. endEff()
  1066.  
  1067. wait()
  1068.  
  1069. nilparts()
  1070.  
  1071. bg:remove()
  1072.  
  1073. bp:remove()
  1074.  
  1075. neck.C0 = necko
  1076.  
  1077. end
  1078.  
  1079. }
  1080.  
  1081. bloc = function(mouse)
  1082.  
  1083. local hold = true
  1084.  
  1085. local bg = Add.BG(nil)
  1086.  
  1087. attach()
  1088.  
  1089. RLW.Part1 = nil
  1090.  
  1091. LLW.Part1 = nil
  1092.  
  1093. slash:play()
  1094.  
  1095. local duh = true
  1096.  
  1097. block = true
  1098.  
  1099. mouse.KeyUp:connect(function(k)
  1100.  
  1101. k = k:lower()
  1102.  
  1103. if duh == true and k == "t" then
  1104.  
  1105. block = false
  1106.  
  1107. duh = false
  1108.  
  1109. hold = false
  1110.  
  1111. end
  1112.  
  1113. end)
  1114.  
  1115. coroutine.resume(coroutine.create(function()
  1116.  
  1117. for i = 0, 90, 90/7 do
  1118.  
  1119. RAW.C0 = CFrame.new(-i/150, 0, -i/170) * CFrame.Angles(math.rad(i/1.1), 0, math.rad(-i/1.2))
  1120.  
  1121. LAW.C0 = CFrame.new(i/150, 0, -i/170) * CFrame.Angles(math.rad(i*1.25), 0, math.rad(i/1.5))
  1122.  
  1123. wait()
  1124.  
  1125. end
  1126.  
  1127. end))
  1128.  
  1129. bg.Parent = torso
  1130.  
  1131. while block and hold do
  1132.  
  1133. wait()
  1134.  
  1135. bg.cframe = ComputePos(torso.Position, mouse.Hit.p)
  1136.  
  1137. end
  1138.  
  1139. for i = 90, 0, -90/7 do
  1140.  
  1141. RAW.C0 = CFrame.new(-i/150, 0, -i/170) * CFrame.Angles(math.rad(i/1.1), 0, math.rad(-i/1.2))
  1142.  
  1143. LAW.C0 = CFrame.new(i/150, 0, -i/170) * CFrame.Angles(math.rad(i*1.25), 0, math.rad(i/1.5))
  1144.  
  1145. wait()
  1146.  
  1147. end
  1148.  
  1149. nilparts()
  1150.  
  1151. bg:remove()
  1152.  
  1153. neck.C0 = necko
  1154.  
  1155. end
  1156.  
  1157. function select(mouse)
  1158.  
  1159. mouse.Button1Down:connect(function()
  1160.  
  1161. if able then
  1162.  
  1163. able = false
  1164.  
  1165. attacks[1](mouse)
  1166.  
  1167. attacks[2](mouse)
  1168.  
  1169. attacks[3](mouse)
  1170.  
  1171. attacks[4](mouse)
  1172.  
  1173. attacks[5](mouse)
  1174.  
  1175. able = true
  1176.  
  1177. end
  1178.  
  1179. end)
  1180.  
  1181. mouse.KeyDown:connect(function(key)
  1182.  
  1183. key = key:lower()
  1184.  
  1185. if able then
  1186.  
  1187. if key == "q" then
  1188.  
  1189. able = false
  1190.  
  1191. attacks[2](mouse)
  1192.  
  1193. able = true
  1194.  
  1195. elseif key == "e" then
  1196.  
  1197. able = false
  1198.  
  1199. attacks[1](mouse)
  1200.  
  1201. able = true
  1202.  
  1203. elseif key == "r" then
  1204.  
  1205. able = false
  1206.  
  1207. attacks[3](mouse)
  1208.  
  1209. able = true
  1210.  
  1211. elseif key == "f" then
  1212.  
  1213. able = false
  1214.  
  1215. attacks[4](mouse)
  1216.  
  1217. able = true
  1218.  
  1219. elseif key == "g" then
  1220.  
  1221. able = false
  1222.  
  1223. attacks[5](mouse)
  1224.  
  1225. able = true
  1226.  
  1227. elseif key == "t" then
  1228.  
  1229. able = false
  1230.  
  1231. bloc(mouse)
  1232.  
  1233. able = true
  1234.  
  1235. elseif key == "z" then
  1236.  
  1237. able = false
  1238.  
  1239. holdkey = true
  1240.  
  1241. while holdkey do
  1242.  
  1243. attacks[math.random(1,#attacks)](mouse)
  1244.  
  1245. end
  1246.  
  1247. able = true
  1248.  
  1249. end
  1250.  
  1251. end
  1252.  
  1253. end)
  1254.  
  1255. mouse.KeyUp:connect(function(key)
  1256.  
  1257. key = key:lower()
  1258.  
  1259. if key == "z" then
  1260.  
  1261. holdkey = false
  1262.  
  1263. end
  1264.  
  1265. end)
  1266.  
  1267. end
  1268.  
  1269. if script.Parent.className ~= "HopperBin" then
  1270.  
  1271. h = Instance.new("HopperBin",me.Backpack)
  1272.  
  1273. h.Name = "Karate"
  1274.  
  1275. script.Parent = h
  1276.  
  1277. end
  1278.  
  1279. bin = script.Parent
  1280.  
  1281. bin.Selected:connect(select)