daily pastebin goal
83%
SHARE
TWEET

dsada

a guest May 19th, 2017 51 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
We use cookies for various purposes including analytics. By continuing to use Pastebin, you agree to our use of cookies as described in the Cookies Policy. OK, I Understand
 
Top