daily pastebin goal
5%
SHARE
TWEET

dsada

a guest May 19th, 2017 49 Never
Not a member of Pastebin yet? Sign Up, it unlocks many cool features!
  1. --- shortcuts
  2. v3 = Vector3.new
  3. cn = CFrame.new
  4. ca2 = CFrame.Angles
  5. mf = math.floor
  6. mran = math.random rn=mran
  7. mrad = math.rad rd=mran
  8. mdeg = math.deg
  9. ca = function(x,y,z) return ca2(mrad(x),mrad(y),mrad(z)) end
  10. mran2 = function(a,b) return mran(a*1000,b*1000)/1000 end
  11. ud=UDim2.new
  12. bn = BrickColor.new
  13. c3 = Color3.new
  14. -----
  15. -- Player = game:service'Players'.TigreBlood
  16. Player = game:service'Players'.LocalPlayer
  17. Char = Player.Character
  18. Torso = Char.Torso
  19. Head = Char.Head
  20. Humanoid = Char.Humanoid
  21. Root=Char.HumanoidRootPart.RootJoint
  22.  
  23. LA=Char['Left Arm']
  24. RA=Char['Right Arm']
  25. LL=Char['Left Leg']
  26. RL=Char['Right Leg']
  27. LAM=Torso['Left Shoulder']
  28. RAM=Torso['Right Shoulder']
  29. LLM=Torso['Left Hip']
  30. RLM=Torso['Right Hip']
  31. Neck=Torso.Neck
  32. Neck.C0=cn(0,1.5,0)
  33. Neck.C1=cn(0,0,0)
  34.  
  35. name='Hook and Cleaver'
  36. Range = 100
  37. pcall(function() Player.Backpack[name]:Remove() end)
  38. pcall(function() Char[name]:Remove() end)
  39. pcall(function() Char.Block:Remove() end)
  40. pcall(function() Root.Parent.BodyGyro:Destroy() end)
  41.  
  42. as,so={},{'metal','Block','Slash','Slash2','Hit','Kick'}
  43. as.corner='11294911'
  44. as.cone='1033714'
  45. as.ring="3270017"
  46. as.Chakram='47260990'
  47. as.ring2='18430887'
  48. as.blast='20329976'
  49. as.missile='10207677'
  50. as.fire='2693346'
  51. as.boom='3264793'
  52. as.slash='10209645'
  53. as.abscond='2767090'
  54. as.firelaser='13775494'
  55. as.diamond='9756362'
  56. as.metal='rbxasset://sounds\\unsheath.wav'
  57. as.Block = 'rbxasset://sounds\\metal.ogg'
  58. as.Slash = '10209645'
  59. as.Slash2 = '46760716'
  60. as.Hit='10209583'
  61. as.Kick='46153268'
  62. as.cast='2101137'
  63.  
  64.  
  65. for i,v in pairs(as) do
  66.     if type(tonumber(v:sub(1,3)))=="number" then
  67.         as[i]="http://www.roblox.com/asset/?id="..v
  68.     end
  69. end
  70.  
  71.  
  72. iNew=function(tab)
  73.     local v=Instance.new(tab[1])
  74.     for Ind,Val in pairs(tab) do
  75.         if Ind~=1 and Ind~=2 then
  76.             v[Ind] = Val
  77.         end
  78.     end
  79.     v.Parent=tab[2]==0 and LastMade or tab[2]
  80.     LastMade=v
  81.     return v
  82. end
  83.  
  84. iPart=function(tab)
  85.     local v=Instance.new(tab.type or 'Part')
  86.     if tab.type~='CornerWedgePart' then v.formFactor='Custom' end
  87.     v.CanCollide=false
  88.     v.TopSurface=0 v.BottomSurface=0
  89.     v.Size=v3(tab[2],tab[3],tab[4])
  90.     if tab.co then v.BrickColor=bn(tab.co) end
  91.     if tab.tr then v.Transparency=tab.tr end
  92.     if tab.rf then v.Reflectance=tab.rf end
  93.     if tab.cf then v.CFrame=tab.cf end
  94.     if tab.an then v.Anchored=tab.an end
  95.     v.Parent=tab[1]
  96.     LastMade=v
  97.     return v
  98. end
  99.  
  100. pcall(function() Torso.LAW:Remove() Torso.RAW:Remove() Torso.LLW:Remove() Torso.RLW:Remove() end)
  101. LAW=iNew{'Weld',Torso,Name='LAW',Part0=Torso,C0=cn(-1.5,0.5,0),C1=cn(0,0.5,0)}
  102. RAW=iNew{'Weld',Torso,Name='RAW',Part0=Torso,C0=cn( 1.5,0.5,0),C1=cn(0,0.5,0)}
  103. LLW=iNew{'Weld',Torso,Name='LLW',Part0=Torso,C0=cn(-0.5, -1,0),C1=cn(0,  1,0)}
  104. RLW=iNew{'Weld',Torso,Name='RLW',Part0=Torso,C0=cn( 0.5, -1,0),C1=cn(0,  1,0)}
  105.  
  106. function Arms(on)
  107.     LAM.Parent=Torso LAM.Part0=Torso
  108.     RAM.Parent=Torso RAM.Part0=Torso
  109.     LAM.Part1=on and nil or LA
  110.     RAM.Part1=on and nil or RA
  111.     LAW.Part1=on and LA  or nil
  112.     RAW.Part1=on and RA  or nil
  113. end
  114.  
  115. function Legs(on)
  116.     LLM.Part1=on and nil or LL
  117.     RLM.Part1=on and nil or RL
  118.     LLW.Part1=on and LL  or nil
  119.     RLW.Part1=on and RL  or nil
  120. end
  121.  
  122.  
  123. function GetWeld(weld)
  124.     if not weld:findFirstChild("Angle") then
  125.         local a = Instance.new("Vector3Value", weld)
  126.         a.Name = "Angle"
  127.         local x,y,z=weld.C0:toEulerAnglesXYZ()
  128.         a.Value=v3(mdeg(x),mdeg(y),mdeg(z))
  129.     end
  130.     return weld.C0.p,weld.Angle.Value
  131. end
  132. function ClearWeld(weld)
  133.     if weld:findFirstChild'Angle' then
  134.         weld.Angle:Remove()
  135.     end
  136. end
  137. function SetWeld(weld,CC,i, loops, origpos,origangle, nextpos,nextangle,smooth)
  138.     local CO='C'..CC
  139.     smooth = smooth or 1
  140.     if not weld:findFirstChild("Angle") then
  141.         local a = Instance.new("Vector3Value", weld)
  142.         a.Name = "Angle"
  143.         local x,y,z=weld.C0:toEulerAnglesXYZ()
  144.         a.Value=v3(mdeg(x),mdeg(y),mdeg(z))
  145.     end
  146.  
  147.     local perc
  148.     if smooth == 1 then
  149.         perc = math.sin((math.pi/2)/loops*i)
  150.     else
  151.         perc = i/loops
  152.     end
  153.  
  154.     local tox,toy,toz = 0,0,0
  155.     if origangle.x > nextangle.x then
  156.         tox = -math.abs(origangle.x - nextangle.x) *perc
  157.     else
  158.         tox = math.abs(origangle.x - nextangle.x) *perc
  159.     end
  160.     if origangle.y > nextangle.y then
  161.         toy = -math.abs(origangle.y - nextangle.y) *perc
  162.     else
  163.         toy = math.abs(origangle.y - nextangle.y) *perc
  164.     end
  165.     if origangle.z > nextangle.z then
  166.         toz = -math.abs(origangle.z - nextangle.z) *perc
  167.     else
  168.         toz = math.abs(origangle.z - nextangle.z) *perc
  169.     end
  170.  
  171.     local tox2,toy2,toz2 = 0,0,0
  172.     if origpos.x > nextpos.x then
  173.         tox2 = -math.abs(origpos.x - nextpos.x) *perc
  174.     else
  175.         tox2 = math.abs(origpos.x - nextpos.x) *perc
  176.     end
  177.     if origpos.y > nextpos.y then
  178.         toy2 = -math.abs(origpos.y - nextpos.y) *perc
  179.     else
  180.         toy2 = math.abs(origpos.y - nextpos.y) *perc
  181.     end
  182.     if origpos.z > nextpos.z then
  183.         toz2 = -math.abs(origpos.z - nextpos.z) *perc
  184.     else
  185.         toz2 = math.abs(origpos.z - nextpos.z) *perc
  186.     end
  187.          weld.Angle.Value = Vector3.new(origangle.x + tox,origangle.y + toy,origangle.z + toz)
  188.     weld[CO] = CFrame.new(origpos.x + tox2,origpos.y + toy2,origpos.z + toz2)*ca(origangle.x + tox,origangle.y + toy,origangle.z + toz)
  189. end
  190.  
  191. LoopFunctions={}
  192. function DoLoop(times,func)
  193.     LoopFunctions[#LoopFunctions+1]={times,0,func}
  194. end
  195.  
  196. Combo = 0
  197. HookHit = false
  198. Dmg=false
  199. Dmg2=false
  200. Dmgv={17,23}
  201. HitDebounce={}
  202.  
  203. Damage=function(Hum,Mult,Sound)
  204.     if not Hum.Parent:findFirstChild'Torso' then return end
  205.     local HName=Hum.Parent.Name
  206.     if HitDebounce[HName] and HitDebounce[HName]>tick() then return end
  207.     HitDebounce[HName]=tick()+0.5
  208.     local Mult=Mult or 1
  209.     local Dealt=mran(Dmgv[1],Dmgv[2])*Mult
  210.     local col=''
  211.     if Hum.Parent:findFirstChild'Block' and Hum.Parent.Block.Value>0 then
  212.         Hum.Parent.Block.Value=Hum.Parent.Block.Value-1
  213.         col='Bright blue'
  214.     else
  215.         Hum.Health=Hum.Health-Dealt
  216.         col='Bright red'
  217.     end
  218.     if Sound then
  219.         so[col=='Bright blue' and 'Block' or 'Hit']:Play()
  220.     end
  221.     local DoH=iNew{'Model',Pack,Name=col=='Bright blue' and 'Block' or Dealt}
  222.     iNew{'Humanoid',DoH,MaxHealth=0,Health=0,Name=''}
  223.     local Doh=iPart{DoH,1,0.2,1,co=col,an=true}
  224.     Doh.Name='Head'
  225.     iNew{'BlockMesh',Doh}
  226.     local dofs=Hum.Parent.Torso.CFrame*cn(mran2(-1.5,1.5),2.5,mran2(-1,1))
  227.     Doh.CFrame=dofs
  228.     DoLoop(40,function(i)
  229.         Doh.CFrame=dofs*cn(0,i*2,0) Doh.Transparency=i-0.5
  230.         if i==1 then
  231.             DoH:Remove()
  232.         end
  233.     end)
  234. end
  235.  
  236. Trails={}
  237. TrailPack={}
  238. Traili={}
  239. function Trail(obj,ofs,col)
  240.     Trails[obj]=true
  241.     Traili[#Traili+1]={obj,ofs,col,obj.CFrame*ofs}
  242. end
  243.  
  244.  
  245. Gyro=iNew{"BodyGyro",Root.Parent,D=50,P=1500}
  246.  
  247. c={'Dark stone grey','Reddish brown','Light stone grey'}
  248. Tool=iNew{'HopperBin',Player.Backpack,Name=name}
  249. Pack=iNew{'Model',Char,Name=name}
  250.  
  251. -- hook
  252. Hook = iPart{Pack,0.25,1,0.25,co=c[1]}
  253. wHook= iNew{"Weld",Pack,Part0=RL,Part1=Hook,C0=cn(0.625,1,0)*ca(210,0,0)} iNew{"CylinderMesh",Hook}
  254.  
  255. hpb = iPart{Pack,0.2,0.2,0.2,co=c[1]}
  256. iNew{"Weld",Pack,Part0=Hook,Part1=hpb,C0=cn(0,-0.55,0)}
  257. iNew{"CylinderMesh",hpb,Scale=v3(0.5,0.5,0.5)}
  258.  
  259. hpr = iPart{Pack,1,1,1,co=c[1]}
  260. iNew{"Weld",Pack,Part0=hpb,Part1=hpr,C0=cn(0,-0.25,0)*ca(0,90,0)}
  261. iNew{"SpecialMesh",hpr,MeshId=as.ring,Scale=v3(0.4,0.4,0.6)}
  262.  
  263. hpr = iPart{Pack,0,0,0,tr=1}
  264. iNew{"Weld",Pack,Part0=hpb,Part1=hpr,C0=cn(0,-0.45,0)}
  265.  
  266. hb = iPart{Pack,0.25,0.25,0.25,co=c[1]}
  267. iNew{"Weld",Pack,Part0=Hook,Part1=hb,C0=cn(0,0.5,0)} iNew{"SpecialMesh",hb,MeshType="Sphere"}
  268.  
  269. h1 = iPart{Pack,0.25,0.5,0.25,co=c[1]}
  270. iNew{"Weld",Pack,Part0=hb,Part1=h1,C0=ca(60,0,0)*cn(0,0.25,0)} iNew{"CylinderMesh",h1}
  271.  
  272. h1b = iPart{Pack,0.25,0.25,0.25,co=c[1]} h1b.Name="Ball1"
  273. iNew{"Weld",Pack,Part0=h1,Part1=h1b,C0=cn(0,0.25,0)} iNew{"SpecialMesh",h1b,MeshType="Sphere"}
  274.  
  275. for i=1,4 do
  276.     hpart = iPart{Pack,0.25,0.5,0.25,co=c[1]} iNew{"CylinderMesh",hpart}
  277.     iNew{"Weld",Pack,Part0=Pack["Ball"..i],Part1=hpart,C0=ca(-45,0,0)*cn(0,0.25,0)}
  278.     hball = iPart{Pack,0.25,0.25,0.25,co=c[1]} hball.Name="Ball"..(i+1) iNew{"SpecialMesh",hball,MeshType="Sphere"}
  279.     if hball.Name ~= "Ball5" then
  280.         iNew{"Weld",Pack,Part0=hpart,Part1=hball,C0=cn(0,0.25,0)}
  281.     else
  282.         iNew{"Weld",Pack,Part0=hpart,Part1=hball,C0=cn(0,0.25,0)*ca(-45,0,0)}
  283.     end
  284. end
  285.  
  286. spi = iPart{Pack,0.25,0.5,0.25,co=c[1]}
  287. iNew{"Weld",Pack,Part0=Pack["Ball5"],Part1=spi,C0=cn(0,0.3,0)} iNew{"SpecialMesh",spi,MeshId=as.cone,Scale=v3(0.125,0.7,0.125)}
  288.  
  289. HookHitBox = iPart{Pack,0.4,1.25,1.25,tr=1}
  290. iNew{"Weld",Pack,Part0=Hook,Part1=HookHitBox,C0=cn(0,1.2,0)}
  291.  
  292. -- cleaver
  293. Cleaver = iPart{Pack,0.25,1,0.25,co=c[2]}
  294. wCleaver = iNew{"Weld",Pack,Part0=LL,Part1=Cleaver,C0=cn(-0.625,1,0)*ca(210,0,0)} Cleaver.Material="Wood"
  295.  
  296. hpb = iPart{Pack,0.2,0.2,0.2,co=c[1]}
  297. iNew{"Weld",Pack,Part0=Cleaver,Part1=hpb,C0=cn(0,-0.55,0)}
  298. iNew{"CylinderMesh",hpb,Scale=v3(0.5,0.5,0.5)}
  299.  
  300. cpr=iPart{Pack,0.3,0.3,0.3,co=c[1]}
  301. iNew{"Weld",Pack,Part0=hpb,Part1=cpr,C0=cn(0,-0.25,0)}
  302. iNew{"SpecialMesh",cpr,MeshId=as.ring,Scale=v3(0.4,0.4,0.6)}
  303.  
  304. hs1=iPart{Pack,1,1,1,co=c[3]}
  305. iNew{"Weld",Pack,Part0=Cleaver,Part1=hs1,C0=cn(0,-0.4,0)*ca(0,0,90)}
  306. iNew{"CylinderMesh",hs1,Scale=v3(0.1,0.3,0.1)}
  307.  
  308. hs2=iPart{Pack,1,1,1,co=c[3]}
  309. iNew{"Weld",Pack,Part0=Cleaver,Part1=hs2,C0=cn(0,0.4,0)*ca(0,0,90)}
  310. iNew{"CylinderMesh",hs2,Scale=v3(0.1,0.3,0.1)}
  311.  
  312. bl=iPart{Pack,1,1.5,0.6,co=c[1]}
  313. iNew{"Weld",Pack,Part0=Cleaver,Part1=bl,C0=cn(0,1.15,-0.3+0.135)}
  314. iNew{"BlockMesh",bl,Scale=v3(0.12,1,1)}
  315.  
  316. for i=-1,1,2 do
  317.     bw=iPart{Pack,1.5,0.2,1,co=c[3]}
  318.     iNew{"Weld",Pack,Part0=bl,Part1=bw,C0=cn(0.03*i,0,-0.4)*ca(0,-90*i,90*i)}
  319.     iNew{"SpecialMesh",bw,MeshType="Wedge",Scale=v3(1,1,0.06)}
  320. end
  321.  
  322. for i=0,360,360/8 do
  323.     prop = iPart{Pack,1,1,1,co=c[1]}
  324.     iNew{"Weld",Pack,Part0=bl,Part1=prop,C0=cn(0,0.6,0.375)*ca(i,0,0)*cn(0,0,0.1)}
  325.     iNew{"BlockMesh",prop,Scale=v3(0.12,0.12,0.075)}
  326. end
  327.  
  328. prop = iPart{Pack,1,1,0.25,co=c[1]}
  329. iNew{"Weld",Pack,Part0=bl,Part1=prop,C0=cn(0,0.72,0.425)}
  330. iNew{"BlockMesh",prop,Scale=v3(0.12,0.06,1)}
  331.  
  332. prop = iPart{Pack,1,0.25,1,co=c[1]}
  333. iNew{"Weld",Pack,Part0=bl,Part1=prop,C0=cn(0,0.6,0.52)}
  334. iNew{"BlockMesh",prop,Scale=v3(0.12,1,0.06)}
  335.  
  336. prop = iPart{Pack,1,0.2,0.75,co=c[1]}
  337. iNew{"Weld",Pack,Part0=bl,Part1=prop,C0=cn(0,0.125,0.45)*ca(90,180,0)}
  338. iNew{"SpecialMesh",prop,Scale=v3(0.12,1,1),MeshType="Wedge"}
  339.  
  340. propl = iPart{Pack,1,1,0.75,co=c[1]}
  341. iNew{"Weld",Pack,Part0=bl,Part1=propl,C0=cn(0,0.125,0.325)*ca(90,180,0)}
  342. iNew{"BlockMesh",propl,Scale=v3(0.12,0.05,1)}
  343.  
  344. prop = iPart{Pack,1,1,0.5,co=c[1]}
  345. iNew{"Weld",Pack,Part0=propl,Part1=prop,C0=cn(0,0,-1.25/2)}
  346. iNew{"SpecialMesh",prop,Scale=v3(0.12,0.05,1),MeshType="Wedge"}
  347.  
  348. CleaverHitBox = iPart{Pack,0.4,1.6,1.25,tr=1}
  349. iNew{"Weld",Pack,Part0=Cleaver,Part1=CleaverHitBox,C0=cn(0,1.15,-0.2)}
  350.  
  351. for i,v in pairs(Pack:GetChildren()) do if v:IsA("BasePart") then v.CanCollide=false v.Name="Ignore" end end
  352.  
  353. hTW=nil
  354. HookHitBox.Touched:connect(function(hit)
  355.     if Anim == "Throwing Hook" and not HookHit then
  356.         if hit.Parent~=Char and hit.Parent:FindFirstChild("Humanoid") then
  357.             HookHit = true
  358.             local hHum = hit.Parent:FindFirstChild("Humanoid")
  359.             hHum.PlatformStand=true
  360.             DoLoop(20,function(i)
  361.                 wait()
  362.                 if i==1 then
  363.                     hHum.PlatformStand=false
  364.                 end
  365.             end)
  366.             Spawn(function()
  367.                 while HookHit do
  368.                     hit.Parent.Torso.CFrame = HookHitBox.CFrame*ca(0,0,90)*ca(0,90,0)
  369.                     wait()
  370.                 end
  371.             end)
  372.         end
  373.     end
  374.     if not Dmg then return end
  375.     if hit.Parent==Char then return end
  376.     if hit.Parent:findFirstChild'Humanoid' then
  377.         local h=hit.Parent.Humanoid
  378.         Damage(h,1,true)
  379.     end
  380. end)
  381.  
  382. CleaverHitBox.Touched:connect(function(hit)
  383.     if not Dmg2 then return end
  384.     if hit.Parent==Char then return end
  385.     if hit.Parent:findFirstChild'Humanoid' then
  386.         local h=hit.Parent.Humanoid
  387.         Damage(h,1,true)
  388.     end
  389. end)
  390.  
  391. for i,v in pairs(Torso:children()) do
  392.     if v:IsA'Sound' then
  393.         v:Remove()
  394.     end
  395. end
  396. for i,n in pairs(so) do
  397.     local v=iNew{'Sound',Torso,Volume=1,Pitch=1,Looped=false,Name=v,SoundId=as[n]}
  398.     so[n]=v
  399. end
  400.  
  401. function RePose()
  402.     local a,b=GetWeld(LAW)
  403.     local c,d=GetWeld(RAW)
  404.     local e,f=GetWeld(wHook)
  405.     local g,h=GetWeld(wCleaver)
  406.     local i,j=GetWeld(Root)
  407.     local k,l=GetWeld(Neck)
  408.     oPoseLA=a oPoseLA2=b
  409.     oPoseRA=c oPoseRA2=d
  410.     oPoseHook=e oPoseHook2=f
  411.     oPoseCleaver=g oPoseCleaver2=h
  412.     oPoseRT=i oPoseRT2=j
  413.     oPoseNE=k oPoseNE2=l
  414. end
  415.  
  416. function ReturnPose()
  417.     local wLA,wLA2=GetWeld(LAW)
  418.     local wRA,wRA2=GetWeld(RAW)
  419.     local wRT,wRT2=GetWeld(Root)
  420.     local AA,AA2=GetWeld(wHook)
  421.     local BB,BB2=GetWeld(wCleaver)
  422.     local wNE,wNE2=GetWeld(Neck)
  423.     for i=1,ASpeed do
  424.         SetWeld(LAW,0,i,ASpeed,wLA,wLA2,PoseLA,PoseLA2,1)
  425.         SetWeld(RAW,0,i,ASpeed,wRA,wRA2,PoseRA,PoseRA2,1)
  426.         SetWeld(wHook,0,i,ASpeed,AA,AA2,PoseHook,PoseHook2,1)
  427.         SetWeld(wCleaver,0,i,ASpeed,BB,BB2,PoseCleaver,PoseCleaver2,1)
  428.         SetWeld(Root,0,i,ASpeed,wRT,wRT2,PoseRT,PoseRT2,1)
  429.         SetWeld(Neck,0,i,ASpeed,wNE,wNE2,PoseNE,PoseNE2,1)
  430.         wait()
  431.     end
  432. end
  433. function TorsoROT(i,rot,spid)
  434.     SetWeld(Root,0,i,spid,oPoseRT,oPoseRT2,PoseRT,v3(0,rot,0),1)
  435.     SetWeld(Neck,0,i,spid,oPoseNE,oPoseNE2,PoseNE,v3(0,-rot,0),1)
  436. end
  437.  
  438. Block=iNew{'NumberValue',Char,Name='Block',Value=0}
  439.  
  440.  
  441. key={}
  442. Tool.Selected:connect(function(mouse)
  443. print'Selected'
  444. Mouse=mouse
  445.     if Anim=='None' then
  446.         Anim='Equipping'
  447.         Arms(0)
  448.         for i=1,ASpeed do
  449.             SetWeld(LAW,0,i,ASpeed,OrigLA,OrigLA2,OrigLA,v3(-25,0,5),1)
  450.             SetWeld(RAW,0,i,ASpeed,OrigRA,OrigRA2,OrigRA,v3(-25,0,-5),1)
  451.             wait()
  452.         end
  453.         local ofs = RA.CFrame:toObjectSpace(Hook.CFrame)
  454.         wHook.Part0=RA wHook.C0=ofs ClearWeld(wHook)
  455.         local AA,AA2=GetWeld(wHook)
  456.         local ofs = LA.CFrame:toObjectSpace(Cleaver.CFrame)
  457.         wCleaver.Part0=LA wCleaver.C0=ofs ClearWeld(wCleaver)
  458.         local BB,BB2=GetWeld(wCleaver)
  459.         for i=1,ASpeed do
  460.             SetWeld(wHook,0,i,ASpeed,AA,AA2,PoseHook,PoseHook2,1)
  461.             SetWeld(wCleaver,0,i,ASpeed,BB,BB2,PoseCleaver,PoseCleaver2,1)
  462.             wait()
  463.         end
  464.         ReturnPose()
  465.         Anim='Equipped'
  466.     end
  467.  
  468.     Mouse.KeyDown:connect(function(k)
  469.         key[k]=true
  470.         if k=="q" and Anim == "Equipped" and Combo == 0 then
  471.             Anim = "Cleaver Slash"
  472.             RePose()
  473.             for i=1,ASpeed do
  474.                 SetWeld(LAW,0,i,ASpeed,PoseLA,PoseLA2,PoseLA,v3(200,0,-35),1)
  475.                 SetWeld(Neck,0,i,ASpeed,oPoseNE,oPoseNE2,PoseNE,v3(15,15,0),1)
  476.                 wait()
  477.             end
  478.             Trail(Cleaver,cn(0,1.75,-0.75),'White')
  479.             Dmg2=true
  480.             for i=1,ASpeed/2 do
  481.                 SetWeld(LAW,0,i,ASpeed/2,PoseLA,v3(200,0,-35),PoseLA,v3(20,0,20),1)
  482.                 SetWeld(Neck,0,i,ASpeed/2,oPoseNE,v3(15,15,0),PoseNE,v3(-5,-5,0),1)
  483.                 wait()
  484.             end
  485.             Trails[Cleaver]=false
  486.             Dmg2=false
  487.             ReturnPose()
  488.             Anim="Equipped"
  489.         elseif k=="e" and Anim=="Equipped" and Combo == 0 then
  490.             Anim = "Hook Slash"
  491.             RePose()
  492.             for i=1,ASpeed do
  493.                 SetWeld(RAW,0,i,ASpeed,PoseRA,PoseRA2,PoseRA,v3(200,0,35),1)
  494.                 SetWeld(Neck,0,i,ASpeed,oPoseNE,oPoseNE2,PoseNE,v3(15,-15,0),1)
  495.                 wait()
  496.             end
  497.             Trail(Hook,cn(0,1,-0.75),'White')
  498.             Dmg=true
  499.             for i=1,ASpeed/2 do
  500.                 SetWeld(RAW,0,i,ASpeed/2,PoseRA,v3(200,0,35),PoseRA,v3(20,0,-20),1)
  501.                 SetWeld(Neck,0,i,ASpeed/2,oPoseNE,v3(15,-15,0),PoseNE,v3(-5,5,0),1)
  502.                 wait()
  503.             end
  504.             Trails[Hook]=false
  505.             Dmg=false
  506.             ReturnPose()
  507.             Anim="Equipped"
  508.         elseif k=="r" and Anim=="Equipped" then
  509.             Anim = "Combo"
  510.             local function Break() Combo=-0.5 ReturnPose() Anim="Equipped" Combo=0 end
  511.             if Combo==0 then
  512.                     Combo=0.5
  513.                     Anim="Slash 1"
  514.                     RePose()
  515.                     for i=1,ASpeed do
  516.                         SetWeld(LAW,0,i,ASpeed,PoseLA,PoseRA2,v3(-1.2,0.5,0),v3(180,0,-10),1)
  517.                         SetWeld(RAW,0,i,ASpeed,PoseRA,PoseRA2,v3(1.2,0.5,0),v3(180,0,10),1)
  518.                         SetWeld(Neck,0,i,ASpeed,oPoseNE,oPoseNE2,PoseNE,v3(40,0,0),1)
  519.                         wait()
  520.                     end
  521.                     Anim="Equipped"
  522.                     Combo=1
  523.                 DoLoop(5,function(i)
  524.                     if i==1 and Combo==1 then
  525.                         Break()
  526.                     end
  527.                     wait()
  528.                 end)
  529.             elseif Combo==1 then
  530.                     Combo=1.5
  531.                     anim="Slash 1"
  532.                     Dmg=true Dmg2=true
  533.                     so['Slash']:Play()
  534.                     Trail(Hook,cn(0,1,-0.75),'White')
  535.                     Trail(Cleaver,cn(0,1.75,-0.75),'White')
  536.                     RePose()
  537.                     local wLA,wLA2=GetWeld(LAW)
  538.                     local wRA,wRA2=GetWeld(RAW)
  539.                     local wNE,wNE2=GetWeld(Neck)
  540.                     for i=1,ASpeed/2 do
  541.                         SetWeld(LAW,0,i,ASpeed/2,wLA,wLA2,PoseLA,v3(-15,0,0),1)
  542.                         SetWeld(RAW,0,i,ASpeed/2,wRA,wRA2,PoseRA,v3(-15,0,0),1)
  543.                         SetWeld(Neck,0,i,ASpeed/2,wNE,wNE2,PoseNE,v3(-20,0,0),1)
  544.                         wait()
  545.                     end
  546.                     Dmg=false Dmg2=false
  547.                     Trails[Hook]=false Trails[Cleaver]=false
  548.                     Anim="Equipped"
  549.                     Combo=2
  550.                 DoLoop(5,function(i)
  551.                     if i==1 and Combo==2 then
  552.                         Break()
  553.                     end
  554.                     wait()
  555.                 end)
  556.             elseif Combo==2 then
  557.                     Combo=2.5
  558.                     Anim="Slash 2"
  559.                     local wLA,wLA2=GetWeld(LAW)
  560.                     local wRA,wRA2=GetWeld(RAW)
  561.                     local wNE,wNE2=GetWeld(Neck)
  562.                     for i=1,ASpeed do
  563.                         SetWeld(LAW,0,i,ASpeed,wLA,wRA2,v3(-1.2,0.5,0),v3(110,0,30),1)
  564.                         SetWeld(RAW,0,i,ASpeed,wRA,wRA2,v3(1.2,0.5,0),v3(110,0,-30),1)
  565.                         SetWeld(Neck,0,i,ASpeed,wNE,wNE2,PoseNE,v3(40,0,0),1)
  566.                         wait()
  567.                     end
  568.                     Anim="Equipped"
  569.                     Combo=3
  570.                 DoLoop(5,function(i)
  571.                     if i==1 and Combo==3 then
  572.                         Break()
  573.                     end
  574.                     wait()
  575.                 end)
  576.             elseif Combo==3 then
  577.                     Combo=3.5
  578.                     Anim="Slash 2"
  579.                     Dmg=true Dmg2=true
  580.                     so['Slash']:Play()
  581.                     Trail(Hook,cn(0,1,-0.75),'White')
  582.                     Trail(Cleaver,cn(0,1.75,-0.75),'White')
  583.                     local wLA,wLA2=GetWeld(LAW)
  584.                     local wRA,wRA2=GetWeld(RAW)
  585.                     local wNE,wNE2=GetWeld(Neck)
  586.                     for i=1,ASpeed/2 do
  587.                         SetWeld(LAW,0,i,ASpeed/2,wLA,wLA2,PoseLA,v3(-40,0,-30),1)
  588.                         SetWeld(RAW,0,i,ASpeed/2,wRA,wRA2,PoseRA,v3(-40,0,30),1)
  589.                         SetWeld(Neck,0,i,ASpeed/2,wNE,wNE2,PoseNE,v3(-20,0,0),1)
  590.                         wait()
  591.                     end
  592.                     Dmg=false Dmg2=false
  593.                     Trails[Hook]=false Trails[Cleaver]=false
  594.                     Anim="Equipped"
  595.                     Combo=4
  596.                 DoLoop(5,function(i)
  597.                     if i==1 and Combo==4 then
  598.                         Break()
  599.                     end
  600.                     wait()
  601.                 end)
  602.             end
  603.         end
  604.     end)--keys
  605.    
  606.     Mouse.KeyUp:connect(function(k)
  607.         key[k]=false
  608.     end)
  609.    
  610.     Mouse.Button1Down:connect(function()
  611.         if Anim == "Equipped" and Combo == 0 then
  612.             local Dist = nil
  613.             Anim = "Getting Ready"
  614.             Humanoid.WalkSpeed = 4
  615.             RePose()
  616.             for i=1,ASpeed do
  617.                 TorsoROT(i,80,ASpeed)
  618.                 SetWeld(RAW,0,i,ASpeed,PoseRA,PoseRA2,PoseRA,v3(0,190,-90),1)
  619.                 SetWeld(wHook,0,i,ASpeed,PoseHook,PoseHook2,v3(0,-2,0),v3(-180,0,0),1)
  620.                 wait()
  621.             end
  622.             Anim = "Throwing Hook"
  623.             Rope=iPart{Pack,0.2,1,0.2,co="Reddish brown",an=true}
  624.             iNew{"CylinderMesh",Rope}
  625.             Dmg=true
  626.             for i=1,ASpeed*3 do
  627.                 if HookHit then break end
  628.                 SetWeld(wHook,0,i,ASpeed*3,v3(0,-2,0),v3(-180,0,0),v3(0,-2-(Range),0),v3(-180,0,0),1)
  629.                 wait()
  630.             end
  631.             Dist = wHook.C0.Y
  632.             Anim = "Retrieving Hook"
  633.             Humanoid.WalkSpeed=16
  634.             Dmg=false
  635.             for i=1,ASpeed*(-Dist/20) do
  636.                 SetWeld(Root,0,i,ASpeed*(-Dist/20),oPoseRT,v3(0,80,0),PoseRT,v3(0,-60,0),1)
  637.                 SetWeld(Neck,0,i,ASpeed*(-Dist/20),oPoseNE,v3(0,-80,0),PoseNE,v3(0,60,0),1)
  638.                 SetWeld(RAW,0,i,ASpeed*(-Dist/20),PoseRA,v3(0,190,-90),PoseRA,v3(0,190+150,-90),1)
  639.                 SetWeld(wHook,0,i,ASpeed*(-Dist/20),v3(0,Dist,0),v3(-180,0,0),v3(0,-2,0),v3(-180,0,0),1)
  640.                 wait()
  641.             end
  642.             pcall(function() hTW:Destroy() end)
  643.             HookHit=false
  644.             ReturnPose()
  645.             Anim = "Equipped"
  646.         end
  647.     end)
  648. end) -- select
  649.  
  650. Tool.Deselected:connect(function(mouse)
  651.     print'Deselected'
  652.     Mouse=nil
  653.     if Anim=='Equipped' and Combo == 0 then
  654.         Anim='Unequipping'
  655.         RePose()
  656.         for i=1,ASpeed do
  657.             SetWeld(LAW,0,i,ASpeed,PoseLA,PoseLA2,OrigLA,v3(-25,0,5),1)
  658.             SetWeld(RAW,0,i,ASpeed,PoseRA,PoseRA2,OrigRA,v3(-25,0,-5),1)
  659.             wait()
  660.         end
  661.         local ofs = RL.CFrame:toObjectSpace(Hook.CFrame)
  662.         wHook.Part0=RL wHook.C0=ofs ClearWeld(wHook)
  663.         local AA,AA2=GetWeld(wHook)
  664.         local ofs = LL.CFrame:toObjectSpace(Cleaver.CFrame)
  665.         wCleaver.Part0=LL wCleaver.C0=ofs ClearWeld(wCleaver)
  666.         local BB,BB2=GetWeld(wCleaver)
  667.         for i=1,ASpeed do
  668.             SetWeld(wHook,0,i,ASpeed,AA,AA2,v3(0.625,1,0),v3(210,0,0),1)
  669.             SetWeld(wCleaver,0,i,ASpeed,BB,BB2,v3(-0.625,1,0),v3(210,0,0),1)
  670.             wait()
  671.         end
  672.         for i=1,ASpeed do
  673.             SetWeld(LAW,0,i,ASpeed,PoseLA,v3(-25,0,5),OrigLA,OrigLA2,1)
  674.             SetWeld(RAW,0,i,ASpeed,PoseRA,v3(-25,0,-5),OrigRA,OrigRA2,1)
  675.             wait()
  676.         end
  677.         Arms()
  678.         Anim='None'
  679.     end
  680. end) --deselect
  681.  
  682.  
  683. print(#Pack:children())
  684. Root.C0=cn(0,0,0)*ca(0,0,0)
  685. Root.C1=cn(0,0,0)*ca(0,0,0)
  686. Arms()
  687. Legs()
  688.  
  689. WalkAnim=0
  690. Walking=false
  691. Humanoid.Running:connect(function(Walk)
  692.     Walking=Walk>0 and true or false
  693. end)
  694.  
  695. Anim='None'
  696. ASpeed=10
  697. OrigLA=v3(-1.5,0.5,0) OrigLA2=v3(0,0,0)
  698. OrigRA=v3( 1.5,0.5,0) OrigRA2=v3(0,0,0)
  699. --Pose
  700. PoseLA=v3(-1.5,0.5,0) PoseLA2=v3(0,0,-10)
  701. PoseRA=v3( 1.5,0.5,0) PoseRA2=v3(0,0,10)
  702. PoseHook=v3(0,-1,0) PoseHook2=v3(-90,0,0)
  703. PoseCleaver=v3(0,-1,0) PoseCleaver2=v3(-90,0,0)
  704. PoseRT=v3(0,0,0) PoseRT2=v3(0,0,0)
  705. PoseNE=v3(0,1.5,0) PoseNE2=v3(0,0,0)
  706.  
  707. while Pack.Parent do
  708.     -- Rope
  709.     if Anim == "Throwing Hook" or Anim == "Retrieving Hook" then
  710.         Mag=(RA.Position-hpr.Position).magnitude
  711.         Rope.Size=v3(0.2,Mag,0.2)
  712.         Rope.CFrame=RA.CFrame*cn(0,-Mag/2,0)
  713.     else
  714.         pcall(function()
  715.             Rope:Destroy()
  716.         end)
  717.     end
  718.    
  719.     --Trailing Package
  720.     for i,v in pairs(Traili) do
  721.         if Trails[v[1]] then
  722.             local obj,ofs,col,lastofs=v[1],v[2],v[3],v[4]
  723.             local length=(obj.CFrame*ofs.p-lastofs.p).magnitude
  724.             local ob=iPart{Pack,0.4,length,0.4,co=col,tr=0.5,an=true,cf=CFrame.new(obj.CFrame*ofs.p,lastofs.p)}
  725.             iNew{'CylinderMesh',ob}
  726.             Traili[i][4]=ob.CFrame
  727.             ob.CFrame=ob.CFrame*cn(0,0,-length/2)*ca(90,0,0)
  728.             TrailPack[#TrailPack+1]={ob,1,-0.1}
  729.         else
  730.             Traili[i]=nil
  731.         end
  732.     end
  733.     for i,v in pairs(TrailPack) do
  734.         v[2]=v[2]+v[3]
  735.         if v[2]<=0 then
  736.             v[1]:Remove()
  737.             TrailPack[i]=nil
  738.         else
  739.             v[1].Transparency=0.5+(0.45-0.45*v[2])
  740.             v[1].Mesh.Scale=v3(v[2],1,v[2])
  741.         end
  742.     end
  743.     --DoLoop Package
  744.     for i,v in pairs(LoopFunctions) do
  745.         v[2]=v[2]+1
  746.         v[3](v[2]/v[1])
  747.         if v[1]<=v[2] then
  748.             LoopFunctions[i]=nil
  749.         end
  750.     end
  751.     --[[
  752.     HookHitBox.CFrame=Hook.CFrame*cn(0,1.2,0)
  753.     HookHitBox.Velocity=v3(0,0,0) HookHitBox.RotVelocity=v3(0,0,0)
  754.     CleaverHitBox.CFrame=Cleaver.CFrame*cn(0,1.15,-0.2)
  755.     CleaverHitBox.Velocity=v3(0,0,0) CleaverHitBox.RotVelocity=v3(0,0,0)
  756.     ]]
  757.     -- Gyro
  758.     if Anim~="None" then
  759.         Gyro.maxTorque=v3(1,1,1)/0
  760.         Gyro.cframe = cn(Root.Parent.Position,v3(workspace.Current
RAW Paste Data
Top