Advertisement
HandsomelyMario34

Untitled

Jul 11th, 2017
31
0
Never
Not a member of Pastebin yet? Sign Up, it unlocks many cool features!
text 18.87 KB | None | 0 0
  1. loadstring(_G[" TB".."Lib "])()
  2.  
  3. Player=game:GetService("Players").LocalPlayer
  4. Char=Player.Character
  5. Backpack=Player.Backpack
  6. PlayerGui=Player.PlayerGui
  7. Torso=Char.Torso
  8. Head=Char.Head
  9. Hum=Char.Humanoid
  10. Cam=workspace.CurrentCamera
  11. Tn="Bow"
  12.  
  13. pcall(function() Backpack[Tn]:Remove() end)
  14. pcall(function() Cam[Tn]:Remove() end)
  15. pcall(function() thesuit=Char[''] end)
  16. pcall(function() thesuit[Tn]:Remove() end)
  17. pcall(function() PlayerGui[Tn]:Remove() end)
  18. pcall(function() Torso['TB_Gyro']:Remove() end)
  19.  
  20. CModel=qi{'Model',Cam,Name=Tn}
  21. Tool=qi{'HopperBin',Player.Backpack,Name=Tn}
  22. Suit=qi{'Model',Char,Name=''}
  23. Weapon=qi{'Model',Suit,Name=Tn}
  24. Gui=qi{'ScreenGui',PlayerGui,Name=Tn}
  25.  
  26. equip="unequipped"
  27. anim=""
  28. keys={}
  29. fmouse=nil
  30. Clip=0
  31. Holding=false
  32. ArrowColour="White"
  33. arrow=nil
  34. arroww=nil
  35. ArrowType="Normal"
  36. bb=nil
  37.  
  38. ids = {}
  39. ids.Crown = 20329976
  40. ids.Spike = 1033714
  41. ids.Hit = 10209590
  42. ids.Flame = 31760113
  43. ids.Arrow = 15887356
  44. ids.ArrowT = 15886781
  45. ids.ArrowHit = 2767090
  46. ids.ArrowShoot = 16211041
  47. ids.ArrowReload = 2697295
  48. ids.Icon = 51902588
  49. ids.Ring = 3270017
  50.  
  51. for i,v in pairs(ids) do
  52. if type(v)=='number' then
  53. ids[i]='http://www.roblox.com/asset/?id='..v
  54. end
  55. game:GetService("ContentProvider"):Preload(ids[i])
  56. end
  57.  
  58. Limbs={LS=Torso:findFirstChild'Left Shoulder',RS=Torso:findFirstChild'Right Shoulder',LH=Torso:findFirstChild'Left Hip',RH=Torso:findFirstChild'Right Hip'}
  59. if _G.Limbz then
  60. Limbs.LS=Limbs.LS or _G.Limbz.LS
  61. Limbs.RS=Limbs.RS or _G.Limbz.RS
  62. Limbs.LH=Limbs.LH or _G.Limbz.LH
  63. Limbs.RH=Limbs.RH or _G.Limbz.RH
  64. end
  65. _G.Limbz=Limbs
  66. Torso.Neck.C0=cn(0,1.5,0) Torso.Neck.C1=cn(0,0,0)
  67. c2(Torso.Neck,1,3,0,1.5,0,0,0,0)
  68. LS,RS,LH,RH=Limbs.LS,Limbs.RS,Limbs.LH,Limbs.RH
  69. LA,RA,LL,RL=Char['Left Arm'],Char['Right Arm'],Char['Left Leg'],Char['Right Leg']
  70. LS.Part0,RS.Part0,LH.Part0,RH.Part0=Torso,Torso,Torso,Torso
  71. LS.Part1,RS.Part1,LH.Part1,RH.Part1=LA,RA,LL,RL
  72.  
  73. pcall(function() thesuit:Remove() end)
  74.  
  75. fTorso=Char.HumanoidRootPart tw=fTorso.RootJoint hw=Torso.Neck c2(tw,1,3,0,0,0,90,180,0)
  76. la=qi{'Weld',Torso,Part0=Torso,C0=cn(-1.5,0.5,0),C1=cn(0,0.5,0)} ra=qi{'Weld',Torso,Part0=Torso,C0=cn(1.5,0.5,0),C1=cn(0,0.5,0)}
  77. ll=qi{'Weld',Torso,Part0=Torso,C0=cn(-0.5,-1,0),C1=cn(0,1,0)} rl=qi{'Weld',Torso,Part0=Torso,C0=cn(0.5,-1,0),C1=cn(0,1,0)}
  78.  
  79. Arms = function(on)
  80. if on then
  81. LS.Part1=nil RS.Part1=nil
  82. la.Part0=Torso ra.Part0=Torso
  83. la.Part1=LA ra.Part1=RA
  84. la.C0,la.C1=cn(-1.5,0.5,0),cn(0,0.5,0)
  85. ra.C0,ra.C1=cn(1.5,0.5,0),cn(0,0.5,0)
  86. else
  87. LS.Parent,RS.Parent=Torso,Torso
  88. LS.Part0=Torso
  89. RS.Part0=Torso
  90. LS.Part1=LA
  91. RS.Part1=RA
  92. la.Part1=nil ra.Part1=nil
  93. end
  94. end
  95.  
  96. Legs = function(on)
  97. if on then
  98. LH.Part1=nil RH.Part1=nil
  99. ll.Part0=Torso rl.Part0=Torso
  100. ll.Part1=LL rl.Part1=RL
  101. ll.C0,ll.C1=cn(-0.5,-1,0),cn(0,1,0)
  102. rl.C0,rl.C1=cn(0.5,-1,0),cn(0,1,0)
  103. else
  104. LH.Parent,RH.Parent=Torso,Torso
  105. LH.Part0=Torso
  106. RH.Part0=Torso
  107. LH.Part1=LL
  108. RH.Part1=RL
  109. ll.Part1=nil rl.Part1=nil
  110. end
  111. end
  112.  
  113. WDesign=function(c)
  114. ha=pa(Weapon,"","Block",0.35,1.5,0.35,false,false,0,0,c[1]) haw=weld(ha,Torso,ha,-0.4,0,0.65,0,rd(90),0) qi{"CylinderMesh",ha}
  115. p1=pa(Weapon,"","Block",0.7,0.2,1,false,false,0,0,c[1]) weld(p1,ha,p1,0,0.75,0,0,0,0)
  116. p2=pa(Weapon,"","Block",0.35,1.5,0.35,false,false,0,0,c[1]) weld(p2,ha,p2,0,1.25,-0.3,rd(-30),0,0) qi{"CylinderMesh",p2}
  117. p3=pa(Weapon,"","Block",0.4,0.4,0.4,false,false,0,0,c[2]) weld(p3,p2,p3,0,0.75,0,rd(-90+30),0,0) qi{"SpecialMesh",p3,MeshType="Sphere"}
  118. p4=pa(Weapon,"","Block",1,1,1,false,false,0,0,c[2]) weld(p4,p3,p4,0,0.6,0,0,0,0) qi{"SpecialMesh",p4,MeshId=ids.Spike,Scale=v3(0.18,1.5,0.18)}
  119. p5=pa(Weapon,"","Block",0.4,0.4,0.4,false,false,0,0,c[2]) weld(p5,p3,p5,0,0,0,rd(90+50),0,0) qi{"SpecialMesh",p5,MeshType="Sphere"}
  120. p6=pa(Weapon,"","Block",0.35,1.5,0.35,false,false,0,0,c[1]) weld(p6,p5,p6,0,0.75,0,0,0,0) qi{"CylinderMesh",p6}
  121. p7=pa(Weapon,"","Block",0.4,0.4,0.4,false,false,0,0,c[2]) weld(p7,p6,p7,0,0.75,0,rd(-90),0,0) qi{"SpecialMesh",p7,MeshType="Sphere"}
  122. p8=pa(Weapon,"","Block",1,1,1,false,false,0,0,c[2]) weld(p8,p7,p8,0,0.6,0,0,0,0) qi{"SpecialMesh",p8,MeshId=ids.Spike,Scale=v3(0.18,1.5,0.18)}
  123. p9=pa(Weapon,"","Block",0.4,0.4,0.4,false,false,0,0,c[2]) weld(p9,p7,p9,0,0,0,rd(150),0,0) qi{"SpecialMesh",p9,MeshType="Sphere"}
  124. p10=pa(Weapon,"","Block",0.35,1.5,0.35,false,false,0,0,c[1]) weld(p10,p9,p10,0,0.75,0,0,0,0) qi{"CylinderMesh",p10}
  125. p11=pa(Weapon,"","Block",0.2,0.2,0.2,false,false,0,0,c[3]) weld(p11,p10,p11,0,0.75,0,0,0,0) qi{"CylinderMesh",p11,Scale=v3(0.5,0.1,0.5)}
  126. s1=pa(Weapon,"","Block",0,0,0,false,false,1,0)
  127. rope1=weld(s1,p11,s1,0,0,0,rd(70),0,0)
  128. p12=pa(Weapon,"","Block",0,2.35,0,false,false,0,0,c[4]) weld(p12,s1,p12,0,p12.Size.Y/2,0,0,0,0) qi{"CylinderMesh",p12,Scale=v3(0.25,1,0.25)}
  129. p13=pa(Weapon,"","Block",0.7,0.2,1,false,false,0,0,c[1]) weld(p13,ha,p13,0,-0.75,0,0,0,0)
  130. p14=pa(Weapon,"","Block",0.35,1.5,0.35,false,false,0,0,c[1]) weld(p14,ha,p14,0,-1.25,-0.3,rd(30),0,0) qi{"CylinderMesh",p14}
  131. p15=pa(Weapon,"","Block",0.4,0.4,0.4,false,false,0,0,c[2]) weld(p15,p14,p15,0,-0.75,0,rd(-90-30),0,0) qi{"SpecialMesh",p15,MeshType="Sphere"}
  132. p16=pa(Weapon,"","Block",1,1,1,false,false,0,0,c[2]) weld(p16,p15,p16,0,0.6,0,0,0,0) qi{"SpecialMesh",p16,MeshId=ids.Spike,Scale=v3(0.18,1.5,0.18)}
  133. p17=pa(Weapon,"","Block",0.4,0.4,0.4,false,false,0,0,c[2]) weld(p17,p15,p17,0,0,0,rd(-90-50),0,0) qi{"SpecialMesh",p17,MeshType="Sphere"}
  134. p18=pa(Weapon,"","Block",0.35,1.5,0.35,false,false,0,0,c[1]) weld(p18,p17,p18,0,0.75,0,0,0,0) qi{"CylinderMesh",p18}
  135. p19=pa(Weapon,"","Block",0.4,0.4,0.4,false,false,0,0,c[2]) weld(p19,p18,p19,0,0.75,0,rd(90),0,0) qi{"SpecialMesh",p19,MeshType="Sphere"}
  136. p20=pa(Weapon,"","Block",1,1,1,false,false,0,0,c[2]) weld(p20,p19,p20,0,0.6,0,0,0,0) qi{"SpecialMesh",p20,MeshId=ids.Spike,Scale=v3(0.18,1.5,0.18)}
  137. p21=pa(Weapon,"","Block",0.4,0.4,0.4,false,false,0,0,c[2]) weld(p21,p19,p21,0,0,0,rd(-150),0,0) qi{"SpecialMesh",p21,MeshType="Sphere"}
  138. p22=pa(Weapon,"","Block",0.35,1.5,0.35,false,false,0,0,c[1]) weld(p22,p21,p22,0,0.75,0,0,0,0) qi{"CylinderMesh",p22}
  139. p23=pa(Weapon,"","Block",0.2,0.2,0.2,false,false,0,0,c[3]) weld(p23,p22,p23,0,0.75,0,0,0,0) qi{"CylinderMesh",p23,Scale=v3(0.5,0.1,0.5)}
  140. s2=pa(Weapon,"","Block",0,0,0,false,false,1,0)
  141. rope2=weld(s2,p23,s2,0,0,0,rd(-70),0,0)
  142. p24=pa(Weapon,"","Block",0,2.35,0,false,false,0,0,c[4]) weld(p24,s2,p24,0,p24.Size.Y/2,0,0,0,0) qi{"CylinderMesh",p24,Scale=v3(0.25,1,0.25)}
  143. quiv=pa(Weapon,"","Block",1,1,1,false,false,0,0,c[1]) qw=weld(quiv,Torso,quiv,0,0,0,0,0,0) qw.C0=cn(0,-0.5,0.8)*ca(0,rd(90),0)*ca(rd(-10),0,0) qi{"SpecialMesh",quiv,MeshId=ids.Ring,Scale=v3(0.8,0.8,18)}
  144. p25=pa(Weapon,"","Block",0.78,0.2,0.78,false,false,0,0,c[1]) weld(p25,quiv,p25,0,0,-1.4,rd(90),0,0) qi{"CylinderMesh",p25}
  145. for i=1,10 do
  146. arp=pa(Weapon,"","Block",0.2,3,0.2,false,false,0,0,c[5])
  147. local arpw=weld(arp,p25,arp,0,0,0,0,0,0) arpw.C0=cn(rn(-2,2)/10,2.1,rn(-2,2)/10)*ca(0,rn(-5,5),0)*ca(rd(90),0,0)
  148. qi{"SpecialMesh",arp,MeshId=ids.Arrow,TextureId=ids.ArrowT,Scale=v3(1.5,1.5,2.1)}
  149. end
  150. for i=0,360,360/8 do
  151. local s1=pa(Weapon,"","Block",0.2,0.2,0.2,false,false,0,0,c[4]) local s1w=weld(s1,p25,s1,0,0,0,0,0,0) qi{"BlockMesh",s1,Scale=v3(0.6,1,0.5)}
  152. s1w.C0=cn(0,-0.01,0)*ca(0,rd(i),0)*cn(0.3,0,0)
  153. end
  154. s2=pa(Weapon,"","Block",0.5,0.2,0.5,false,false,0,0,c[4]) weld(s2,p25,s2,0,-0.01,0,0,0,0) qi{"CylinderMesh",s2}
  155. s3=pa(Weapon,"","Block",0.2,0.2,0.35,false,false,0,0,c[1]) weld(s3,s2,s3,0,-0.01,0.05,0,0,0) qi{"BlockMesh",s3,Scale=v3(0.5,1,1)}
  156. s4=pa(Weapon,"","Block",0.3,0.2,0.2,false,false,0,0,c[1]) weld(s4,s3,s4,0,0,-0.15,0,0,0) qi{"BlockMesh",s4,Scale=v3(1,1,0.5)}
  157. for i,v in pairs(Weapon:GetChildren()) do v.CanCollide=false v.Name="Ignore" end
  158. end
  159.  
  160. WDesign({"Navy blue","Really black","Really black","White","Brown"})
  161. Arms(false) Legs(false)
  162.  
  163. BBD,BBT=0,{}
  164. Dealt={20,40}
  165.  
  166. Fire = function(speed,sc,cff)
  167. q(function()
  168. local bb = pa(workspace,"bullet","Block",0.2*sc,2*sc,0.2*sc,false,true,0,0,"Brown")
  169. bb.CanCollide=false
  170. qi{"SpecialMesh",bb,MeshId=ids.Arrow,TextureId=ids.ArrowT,Scale=v3(1.5,1.5,2.1)}
  171. bb.CFrame = cn(cff.p,fmouse.Hit.p)*ca(rd(180),0,0)
  172.  
  173. if ArrowType=="Fire" then
  174. qi{"Fire",bb}
  175. end
  176. so(ids.ArrowShoot,ha,1,2)
  177. for i=1,100 do
  178. Trail(1,bb,0,ArrowColour,0.2,cn(0,0,-1.5))
  179. bhit,bpos=ray(bb.Position,bb.Position - (bb.CFrame *cn(0,0,-0.5)).p)
  180. if bhit and bhit.Name ~= "bullethole" and bhit.Name~="trail" and bhit.Name~="glowmesh" and bpos and (bpos - bb.Position).magnitude < speed then break end
  181. if ArrowType=="Directional" then
  182. bb.CFrame = cn(bb.Position,fmouse.Hit.p)*ca(rd(180),0,0)
  183. bb.CFrame=bb.CFrame*cn(0,0,speed)
  184. else
  185. bb.CFrame=bb.CFrame*cn(0,0,speed)*ca(rd(-0.4),0,0)
  186. end
  187. wait()
  188. end
  189. BBD=2
  190. local Surface = DetectSurface(bpos,bhit)
  191. local C = cn(bpos) * ca(bhit.CFrame:toEulerAnglesXYZ()) * Surface[2]
  192. if Surface[1] == "Anything" then C = Surface[2] end
  193. GlowMesh(false,ids.Crown,Weapon,v3(1.5,1,1.5),"Bright yellow",C*cn(0,0.3,0),0.25,1,0.06)
  194. so(ids.ArrowHit,bb,1,15)
  195. so(ids.Hit,bb,1,1)
  196. deb:AddItem(bb,5)
  197.  
  198. bb.CFrame=bb.CFrame*cn(0,0,(bpos-bb.Position).magnitude)
  199. if not bhit.Anchored then
  200. bb.Anchored=false
  201. stick(bb,bhit)
  202. end
  203.  
  204. if GetHum(bhit) then
  205. local vHum=GetHum(bhit)
  206. if not vHum or BBD==0 or BBT[vHum.Parent] then return end
  207. BBT[vHum.Parent]=1
  208. Dmg(vHum,rn(Dealt[1],Dealt[2]))
  209. if ArrowType=="Slow" then
  210. q(function()
  211. vHum.WalkSpeed=16*0.6
  212. wait(5)
  213. vHum.WalkSpeed=16
  214. end)
  215. end
  216. if ArrowType=="Fire" then
  217. local fiyah=qi{"Fire",bhit}
  218. local fs=qi{'Sound',bb,SoundId=ids.Flame,Looped=true}
  219. q(function()
  220. fs:play()
  221. for i=1,7 do
  222. wait(1.5)
  223. Dmg(vHum,rn(2,5))
  224. end
  225. fs:stop()
  226. fs:remove()
  227. fiyah:Destroy()
  228. end)
  229. end
  230. local HMT=vHum.Parent:findFirstChild'Torso'
  231. if ArrowType=="Poison" then
  232. q(function()
  233. for i=1,15 do
  234. wait(1)
  235. Dmg(vHum,rn(2,3))
  236. GlowMesh(false,"block",HMT,v3(1,1,1),"Alder",HMT.CFrame*cn(rn(-3,3),rn(1,3),rn(-3,3))*ca(rn(-5,5),rn(-5,5),rn(-5,5)),0,1,0.04)
  237. end
  238. end)
  239. end
  240. if ArrowType=="Frost" then
  241. q(function()
  242. local frostlol=pa(HMT.Parent,"Ice","Block",5,7,5,true,false,0.4,0,"Light blue")
  243. frostlol.CFrame=HMT.CFrame
  244. weld(HMT,frostlol,HMT,0,0,0,0,0,0)
  245. vHum.WalkSpeed=0
  246. wait(3)
  247. vHum.WalkSpeed=16
  248. frostlol:Destroy()
  249. end)
  250. end
  251. if BBD==2 and HMT then
  252. if ArrowType~="Knockback" then
  253. AddBV(10,cn(bb.Position,HMT.Position),HMT,0.15)
  254. else
  255. AddBV(100,cn(bb.Position,HMT.Position),HMT,0.15)
  256. end
  257. end
  258. BBT[vHum.Parent]=nil
  259.  
  260.  
  261. elseif GetHum(bhit.Parent) then
  262. local vHum=GetHum(bhit.Parent)
  263. if not vHum or BBD==0 or BBT[vHum.Parent] then return end
  264. BBT[vHum.Parent]=1
  265. Dmg(vHum,rn(Dealt[1],Dealt[2]))
  266. if ArrowType=="Slow" then
  267. q(function()
  268. vHum.WalkSpeed=4
  269. wait(3)
  270. vHum.WalkSpeed=16
  271. end)
  272. end
  273. if ArrowType=="Fire" then
  274. local fiyah=qi{"Fire",bhit}
  275. local fs=qi{'Sound',bb,SoundId=ids.Flame,Looped=true}
  276. q(function()
  277. fs:play()
  278. for i=1,7 do
  279. wait(1.5)
  280. Dmg(vHum,rn(2,5))
  281. end
  282. fs:stop()
  283. fs:remove()
  284. fiyah:Destroy()
  285. end)
  286. end
  287. local HMT=vHum.Parent:findFirstChild'Torso'
  288. if ArrowType=="Poison" then
  289. q(function()
  290. for i=1,15 do
  291. wait(1)
  292. Dmg(vHum,rn(2,3))
  293. GlowMesh(false,"block",HMT,v3(1,1,1),"Alder",HMT.CFrame*cn(rn(-3,3),rn(1,3),rn(-3,3))*ca(rn(-5,5),rn(-5,5),rn(-5,5)),0,1,0.04)
  294. end
  295. end)
  296. end
  297. if ArrowType=="Frost" then
  298. q(function()
  299. local frostlol=pa(HMT.Parent,"Ice","Block",5,7,5,true,false,0.4,0,"Light blue")
  300. frostlol.CFrame=HMT.CFrame
  301. weld(HMT,frostlol,HMT,0,0,0,0,0,0)
  302. vHum.WalkSpeed=0
  303. wait(3)
  304. vHum.WalkSpeed=16
  305. frostlol:Destroy()
  306. end)
  307. end
  308. if BBD==2 and HMT then
  309. if ArrowType~="Knockback" then
  310. AddBV(10,cn(bb.Position,HMT.Position),HMT,0.15)
  311. else
  312. AddBV(100,cn(bb.Position,HMT.Position),HMT,0.15)
  313. end
  314. end
  315. BBT[vHum.Parent]=nil
  316.  
  317. elseif GetHum(bhit.Parent.Parent) then
  318. local vHum=GetHum(bhit.Parent.Parent)
  319. if not vHum or BBD==0 or BBT[vHum.Parent] then return end
  320. BBT[vHum.Parent]=1
  321. Dmg(vHum,rn(Dealt[1],Dealt[2]))
  322. if ArrowType=="Slow" then
  323. q(function()
  324. vHum.WalkSpeed=4
  325. wait(3)
  326. vHum.WalkSpeed=16
  327. end)
  328. end
  329. if ArrowType=="Fire" then
  330. local fiyah=qi{"Fire",bhit}
  331. local fs=qi{'Sound',bb,SoundId=ids.Flame,Looped=true}
  332. q(function()
  333. fs:play()
  334. for i=1,7 do
  335. wait(1.5)
  336. Dmg(vHum,rn(2,5))
  337. end
  338. fs:stop()
  339. fs:remove()
  340. fiyah:Destroy()
  341. end)
  342. end
  343. local HMT=vHum.Parent:findFirstChild'Torso'
  344. if ArrowType=="Poison" then
  345. q(function()
  346. for i=1,15 do
  347. wait(1)
  348. Dmg(vHum,rn(2,3))
  349. GlowMesh(false,"block",HMT,v3(1,1,1),"Alder",HMT.CFrame*cn(rn(-3,3),rn(1,3),rn(-3,3))*ca(rn(-5,5),rn(-5,5),rn(-5,5)),0,1,0.04)
  350. end
  351. end)
  352. end
  353. if ArrowType=="Frost" then
  354. q(function()
  355. local frostlol=pa(HMT.Parent,"Ice","Block",5,7,5,true,false,0.4,0,"Light blue")
  356. frostlol.CFrame=HMT.CFrame
  357. weld(HMT,frostlol,HMT,0,0,0,0,0,0)
  358. vHum.WalkSpeed=0
  359. wait(3)
  360. vHum.WalkSpeed=16
  361. frostlol:Destroy()
  362. end)
  363. end
  364. if BBD==2 and HMT then
  365. if ArrowType~="Knockback" then
  366. AddBV(10,cn(bb.Position,HMT.Position),HMT,0.15)
  367. else
  368. AddBV(100,cn(bb.Position,HMT.Position),HMT,0.15)
  369. end
  370. end
  371. BBT[vHum.Parent]=nil
  372. end
  373. end)
  374. end
  375.  
  376. function Trail(Loops,Part,Time,Color,Thickness,Offset)
  377. q(function()
  378. local oldpos=(Part.CFrame *Offset).p
  379. local lopz2=0
  380. local function loltr()
  381. local obp=(Part.CFrame *Offset).p
  382. lopz2=lopz2 + 1
  383. local mag=(oldpos - obp).magnitude
  384. local tr=pa(Part,"trail","Block",0,0,0,false,true,0,0,Color)
  385. tr.CanCollide=false
  386. tr.CFrame=cn(oldpos,obp)
  387. tr.CFrame=tr.CFrame + tr.CFrame.lookVector*(mag/2)
  388. local trm=qi{'CylinderMesh',tr,Scale=v3(5*Thickness,mag*5,5*Thickness)}
  389. q(function()
  390. for i=5*Thickness,0,-5*Thickness/10 do
  391. trm.Scale=v3(i,mag*5,i)
  392. w()
  393. end
  394. tr:Remove''
  395. end)
  396. tr.CFrame=tr.CFrame*ca(rd(90),0,0)
  397. oldpos=obp
  398. end
  399. repeat
  400. loltr()
  401. wait(Time)
  402. until lopz2 == Loops
  403. loltr()
  404. end)
  405. end
  406.  
  407. function Stance(speed)
  408. c2(ra,speed,3,1.5,0.5,0,10,0,-15)
  409. c2(la,speed,3,-1.5,0.5,0,-10,0,15)
  410. c2(ll,speed,3,-0.5,-1,0,0,0,0)
  411. c2(rl,speed,3,0.5,-1,0,0,0,0)
  412. c2(hw,speed,3,0,1.5,0,0,-60,0)
  413. c2(tw,speed,3,0,0,0,90,180,60)
  414. c2(rope1,speed*5,3,0,0,0,0,0,0)
  415. c2(rope2,speed*5,3,0,0,0,0,0,0)
  416. Ani(haw,0,-0.9,0,-90,0,0,0,speed/2,1)
  417. end
  418.  
  419. function Reset(speed)
  420. c2(ra,speed,3,1.5,0.5,0,0,0,0)
  421. c2(la,speed,3,-1.5,0.5,0,0,0,0)
  422. c2(ll,speed,3,-0.5,-1,0,0,0,0)
  423. c2(rl,speed,3,0.5,-1,0,0,0,0)
  424. c2(hw,speed,3,0,1.5,0,0,0,0)
  425. c2(tw,speed,3,0,0,0,90,180,0)
  426. c2(rope1,speed*5,3,0,0,0,0,0,0)
  427. c2(rope2,speed*5,3,0,0,0,0,0,0)
  428. Ani(haw,-0.4,0,0.65,0,90,0,0,speed/2,1)
  429. end
  430.  
  431. function Button1Down()
  432. Holding=true
  433. if Clip==1 and equip=="equipped" and anim=="" then
  434. anim="AlmostPulling"
  435. c2(tw,0.15,3,0,0,0,90,180,90)
  436. c2(hw,0.15,3,0,1.5,0,0,-90,0)
  437. c2(ra,0.15,3,0.5,0.5,-1,0,0,90)
  438. qAni(arroww,0,-2.6,0,90,0,0,0,0.1,1)
  439. qAni(haw,0,-0.9,0,-120,0,90,0,0.125/1.3,1)
  440. c1(la,0.15,3,-1.5,0.5,-0.2,-30,0,90)
  441. c2(rope1,0.25,3,0,0,0,25,0,0)
  442. c2(rope2,0.25,3,0,0,0,-25,0,0)
  443. c1(ra,0.2,3,1.5,0.5,-1,0,0,90)
  444. anim="Pulling"
  445. Hum.WalkSpeed=8
  446. repeat wait() until not Holding
  447. elseif Clip==0 and equip=="equipped" and anim=="" then
  448. anim="Reloading"
  449. Clip=Clip+1
  450. c1(ra,0.1,3,1.5,0.5,0,35,0,15)
  451. arrow=pa(Weapon,"","Block",1,1,1,false,false,0,0,"Brown")
  452. qi{"SpecialMesh",arrow,MeshId=ids.Arrow,TextureId=ids.ArrowT,Scale=v3(1.5,1.5,2.1)}
  453. arroww=weld(arrow,p25,arrow,0,2.3,0,rd(90),0,0)
  454. local ofs = RA.CFrame:toObjectSpace(arrow.CFrame)
  455. arroww.Part0=RA arroww.C0=ofs arroww.C1=cn(0,0,0) rAni(arroww)
  456. qAni(arroww,0,-1,0,180,0,0,0,0.12,1)
  457. c1(ra,0.15,3,1.5,0.5,0,10,0,-15)
  458. anim=""
  459. end
  460. end
  461.  
  462. function Button1Up()
  463. Holding=false
  464. if anim=="Pulling" and equip=="equipped" then
  465. anim="Firing"
  466. Clip=Clip-1
  467. pcall(function() arrow:remove() end)
  468. Fire(5,1,ha.CFrame*cn(0,0,-3))
  469. Hum.WalkSpeed=16
  470. c2(ra,0.35,3,1.6,0.5,-1,0,0,150)
  471. c2(rope1,0.35,3,0,0,0,0,0,0)
  472. c1(rope2,0.35,3,0,0,0,0,0,0)
  473. Stance(0.2)
  474. anim=""
  475. end
  476. end
  477.  
  478. function KeyDown(key)
  479. key=key:lower()
  480. keys[key]=true
  481. if key=="q" and anim=="" then
  482. if ArrowType=="Normal" then
  483. ArrowType="Fire"
  484. ArrowColour="Bright red"
  485. Dealt={20,30}
  486. elseif ArrowType=="Fire" then
  487. ArrowType="Poison"
  488. ArrowColour="Alder"
  489. Dealt={15,35}
  490. elseif ArrowType=="Poison" then
  491. ArrowType="Knockback"
  492. ArrowColour="Bright yellow"
  493. Dealt={15,25}
  494. elseif ArrowType=="Knockback" then
  495. ArrowType="Slow"
  496. ArrowColour="Really black"
  497. Dealt={10,15}
  498. elseif ArrowType=="Slow" then
  499. ArrowType="Frost"
  500. ArrowColour="Light blue"
  501. Dealt={5,10}
  502. elseif ArrowType=="Frost" then
  503. ArrowType="Directional"
  504. ArrowColour="Bright violet"
  505. Dealt={20,25}
  506. elseif ArrowType=="Directional" then
  507. ArrowType="Normal"
  508. ArrowColour="White"
  509. Dealt={20,40}
  510. end
  511.  
  512. elseif key=="x" and equip=="equipped" and anim=="" then
  513. local currentarrow=ArrowType
  514. local currentcolour=ArrowColour
  515. local currentdmg=Dealt
  516. anim="BurstFire"
  517. ArrowType="Burst"
  518. ArrowColour="Navy blue"
  519. Dealt={15,30}
  520. repeat
  521. if Clip<=0 then
  522. Clip=Clip+1
  523. c1(ra,0.15,3,1.5,0.5,0,35,0,15)
  524. arrow=pa(Weapon,"","Block",1,1,1,false,false,0,0,"Brown")
  525. qi{"SpecialMesh",arrow,MeshId=ids.Arrow,TextureId=ids.ArrowT,Scale=v3(1.5,1.5,2.1)}
  526. arroww=weld(arrow,p25,arrow,0,2.3,0,rd(90),0,0)
  527. local ofs = RA.CFrame:toObjectSpace(arrow.CFrame)
  528. arroww.Part0=RA arroww.C0=ofs arroww.C1=cn(0,0,0) rAni(arroww)
  529. qAni(arroww,0,-1,0,180,0,0,0,0.15,1)
  530. c1(ra,0.2,3,1.5,0.5,0,10,0,-15)
  531. end
  532.  
  533. c2(tw,0.25,3,0,0,0,90,180,90)
  534. c2(hw,0.25,3,0,1.5,0,0,-90,0)
  535. c2(ra,0.25,3,0.5,0.5,-1,0,0,90)
  536. qAni(arroww,0,-2.6,0,90,0,0,0,0.15,1)
  537. qAni(haw,0,-0.9,0,-120,0,90,0,0.125,1)
  538. c1(la,0.2,3,-1.5,0.5,-0.2,-30,0,90)
  539. c2(rope1,0.25,3,0,0,0,25,0,0)
  540. c2(rope2,0.25,3,0,0,0,-25,0,0)
  541. c1(ra,0.25,3,1.5,0.5,-1,0,0,90)
  542.  
  543. Clip=Clip-1
  544. pcall(function() arrow:remove() end)
  545. Fire(5,1,ha.CFrame*cn(0,0,-3))
  546. c2(ra,0.35,3,1.6,0.5,-1,0,0,150)
  547. c2(rope1,0.35,3,0,0,0,0,0,0)
  548. c1(rope2,0.35,3,0,0,0,0,0,0)
  549. until keys.x==false
  550. Stance(0.2)
  551. anim=""
  552. ArrowType=currentarrow
  553. ArrowColour=currentcolour
  554. Dealt=currentdmg
  555. end
  556. end
  557.  
  558. function KeyUp(key)
  559. key=key:lower()
  560. keys[key]=false
  561. end
  562.  
  563. Tool.Selected:connect(function(mouse)
  564. fmouse=mouse mouse.Icon=ids.Icon
  565. if equip=="unequipped" and anim=="" then
  566. equip="equipping" Arms(true) c1(la,0.1,3,-1.2,0.5,0,25,0,-40)
  567. local ofs = LA.CFrame:toObjectSpace(ha.CFrame)
  568. haw.Part0=LA haw.C0=ofs haw.C1=cn(0,0,0) rAni(haw)
  569. Stance(0.2) equip="equipped"
  570. end
  571. mouse.Button1Down:connect(Button1Down)
  572. mouse.Button1Up:connect(Button1Up)
  573. mouse.KeyDown:connect(KeyDown)
  574. mouse.KeyUp:connect(KeyUp)
  575. end)
  576.  
  577. Tool.Deselected:connect(function()
  578. fmouse=nil
  579. if equip=="equipped" and anim=="" then
  580. equip="unequipping"
  581. local ofs = Torso.CFrame:toObjectSpace(ha.CFrame)
  582. haw.Part0=Torso haw.C0=ofs haw.C1=cn(0,0,0) rAni(haw) c2(la,0.1,3,-1.2,0.5,0,25,0,-40) Ani(haw,-0.4,0,0.65,0,90,0,0,0.05,1)
  583. Reset(0.1)
  584. Arms(false) Legs(false) equip="unequipped"
  585. end
  586. end)
  587.  
  588. tbtext=qi{
  589. "TextLabel",
  590. Gui,
  591. Size=ud(0.16,0,0.05,0),
  592. Position=ud(0.5-0.08,0,0.05,0),
  593. BackgroundColor3=bc("Navy blue").Color,
  594. BorderColor3=bc("Really black").Color,
  595. TextStrokeTransparency=0,
  596. FontSize="Size18",
  597. TextColor3=bc("White").Color
  598. }
  599.  
  600. Gyro=qi{"BodyGyro",fTorso,D=50,P=1500,Name="TB_Gyro"}
  601. game:GetService("RunService").Stepped:connect(function()
  602. tbtext.Text="Mode: "..ArrowType.." arrow"
  603. if fmouse~=nil then
  604. Gyro.maxTorque=v3(1/0,1/0,1/0)
  605. Gyro.cframe = cn(fTorso.Position,v3(fmouse.hit.p.x,fTorso.Position.y,fmouse.hit.p.z))
  606. else
  607. Gyro.maxTorque = v3(0,0,0)
  608. end
  609. end)
Advertisement
Add Comment
Please, Sign In to add comment
Advertisement