Hebablazin

Fen Crossbow

May 30th, 2016
217
0
Never
Not a member of Pastebin yet? Sign Up, it unlocks many cool features!
text 36.35 KB | None | 0 0
  1. ------------------------------------------------------------------------------------------------------------------------------
  2. Player = game.Players.LocalPlayer
  3. Character = Player.Character
  4.  
  5. PlayerGui = Player.PlayerGui
  6.  
  7. Backpack = Player.Backpack
  8.  
  9. Torso = Character.Torso
  10.  
  11. Head = Character.Head
  12.  
  13. Humanoid = Character.Humanoid
  14.  
  15. LeftArm = Character["Left Arm"]
  16.  
  17. LeftLeg = Character["Left Leg"]
  18.  
  19. RightArm = Character["Right Arm"]
  20.  
  21. RightLeg = Character["Right Leg"]
  22.  
  23. LS = Torso["Left Shoulder"]
  24.  
  25. LH = Torso["Left Hip"]
  26.  
  27. RS = Torso["Right Shoulder"]
  28.  
  29. RH = Torso["Right Hip"]
  30.  
  31. Neck = Torso.Neck
  32.  
  33. it=Instance.new
  34.  
  35. vt=Vector3.new
  36.  
  37. cf=CFrame.new
  38.  
  39. euler=CFrame.fromEulerAnglesXYZ
  40.  
  41. angles=CFrame.Angles
  42.  
  43. necko=cf(0, 1, 0, -1, -0, -0, 0, 0, 1, 0, 1, 0)
  44.  
  45. necko2=cf(0, -0.5, 0, -1, -0, -0, 0, 0, 1, 0, 1, 0)
  46.  
  47. attack = false
  48.  
  49. attacktype = 1
  50.  
  51. damage = 5
  52.  
  53. oridamage = 50
  54.  
  55. attackdebounce = false
  56.  
  57. ssdebounce=false
  58.  
  59. MMouse=nil
  60.  
  61. combo=0
  62.  
  63. --player
  64.  
  65. player = nil
  66.  
  67. --save shoulders
  68.  
  69. RSH, LSH = nil, nil
  70.  
  71. --welds
  72.  
  73. RW, LW = Instance.new("Weld"), Instance.new("Weld")
  74.  
  75. RW.Name="Right Shoulder" LW.Name="Left Shoulder"
  76.  
  77.  
  78.  
  79.  
  80.  
  81. if Character:findFirstChild("Crossbow",true) ~= nil then
  82.  
  83. Character:findFirstChild("Crossbow",true).Parent = nil
  84.  
  85. end
  86.  
  87.  
  88.  
  89.  
  90.  
  91. function part(formfactor,parent,reflectance,transparency,brickcolor,name,size)
  92.  
  93. local fp = it("Part")
  94.  
  95. fp.formFactor = formfactor
  96.  
  97. fp.Parent = parent
  98.  
  99. fp.Reflectance = reflectance
  100.  
  101. fp.Transparency = transparency
  102.  
  103. fp.CanCollide = false
  104.  
  105. fp.Locked=true
  106.  
  107. fp.BrickColor = brickcolor
  108.  
  109. fp.Name = name
  110.  
  111. fp.Size = size
  112.  
  113. fp.Position = Torso.Position
  114.  
  115. fp.BottomSurface="Smooth"
  116.  
  117. fp.TopSurface="Smooth"
  118.  
  119. fp:BreakJoints()
  120.  
  121. return fp
  122.  
  123. end
  124.  
  125.  
  126.  
  127. function mesh(Mesh,part,meshtype,meshid,offset,scale)
  128.  
  129. local mesh = it(Mesh)
  130.  
  131. mesh.Parent = part
  132.  
  133. if Mesh=="SpecialMesh" then
  134.  
  135. mesh.MeshType = meshtype
  136.  
  137. mesh.MeshId = meshid
  138.  
  139. end
  140.  
  141. mesh.Offset=offset
  142.  
  143. mesh.Scale=scale
  144.  
  145. return mesh
  146.  
  147. end
  148.  
  149.  
  150.  
  151. function weld(parent,part0,part1,c0)
  152.  
  153. local weld = it("Weld")
  154.  
  155. weld.Parent = parent
  156.  
  157. weld.Part0 = part0
  158.  
  159. weld.Part1 = part1
  160.  
  161. weld.C0 = c0
  162.  
  163. return weld
  164.  
  165. end
  166.  
  167.  
  168.  
  169. local modelzorz = Instance.new("Model")
  170.  
  171. modelzorz.Parent = Character
  172.  
  173. modelzorz.Name = "Crossbow"
  174.  
  175.  
  176.  
  177. local prt1=part(3,modelzorz,0,0,Torso.BrickColor,"Part1",vt(1,1,1))
  178.  
  179. local prt2=part(3,modelzorz,0,0,BrickColor.new("Br. yellowish green"),"Part2",vt(1,1,1))
  180.  
  181. local prt3=part(3,modelzorz,0,0,BrickColor.new("Br. yellowish green"),"Part3",vt(1,1,1))
  182.  
  183. local prt4=part(3,modelzorz,0,0,BrickColor.new("Br. yellowish green"),"Part4",vt(1,1,1))
  184.  
  185. local prt5=part(3,modelzorz,0,0,BrickColor.new("Bright green"),"Part5",vt(1,1,1))
  186.  
  187. local prt6=part(3,modelzorz,0,0,BrickColor.new("Bright green"),"Part6",vt(1,1,1))
  188.  
  189. local prt7=part(3,modelzorz,0,0,BrickColor.new("Bright green"),"Part7",vt(1,1,1))
  190.  
  191. local prt8=part(3,modelzorz,0,0,BrickColor.new("Bright green"),"Part8",vt(1,1,1))
  192.  
  193. local prt9=part(3,modelzorz,0,0,BrickColor.new("Bright green"),"Part9",vt(1,1,1))
  194.  
  195. local prt10=part(3,modelzorz,0,0,BrickColor.new("Br. yellowish green"),"Part10",vt(1,1,1))
  196.  
  197. local prt11=part(3,modelzorz,0,0,BrickColor.new("Bright green"),"Part11",vt(1,1,1))
  198.  
  199. local prt12=part(3,modelzorz,0,0,BrickColor.new("Br. yellowish green"),"Part12",vt(1,1,1))
  200.  
  201. local prt13=part(3,modelzorz,0,0,BrickColor.new("Black"),"Part13",vt(1,1,1))
  202.  
  203. local prt14=part(3,modelzorz,0,0,BrickColor.new("Black"),"Part14",vt(1,1,1))
  204.  
  205. local prt15=part(3,modelzorz,0,1,BrickColor.new("Black"),"StringGuide",vt(0.2,0.2,0.2))
  206.  
  207.  
  208.  
  209. local msh1=mesh("BlockMesh",prt1,"","",vt(0,0,0),vt(0.4,0.8,0.4))
  210.  
  211. local msh2=mesh("BlockMesh",prt2,"","",vt(0,0,0),vt(0.8,0.5,2.5))
  212.  
  213. local msh3=mesh("BlockMesh",prt3,"","",vt(0,0,0),vt(0.5,0.49,3))
  214.  
  215. local msh4=mesh("BlockMesh",prt4,"","",vt(0,0,0),vt(0.2,0.21,3))
  216.  
  217. local msh5=mesh("CylinderMesh",prt5,"","",vt(0,0,0),vt(0.1,2.99,0.1))
  218.  
  219. local msh6=mesh("CylinderMesh",prt6,"","",vt(0,0,0),vt(0.1,2.99,0.1))
  220.  
  221. local msh7=mesh("BlockMesh",prt7,"","",vt(0,0,0),vt(0.5,0.5,0.5))
  222.  
  223. local msh8=mesh("CylinderMesh",prt8,"","",vt(0,0,0),vt(0.13,1,0.13))
  224.  
  225. local msh9=mesh("CylinderMesh",prt9,"","",vt(0,0,0),vt(0.13,0.8,0.13))
  226.  
  227. local msh10=mesh("BlockMesh",prt10,"","",vt(0,0,0),vt(0.4,0.1,1))
  228.  
  229. local msh11=mesh("CylinderMesh",prt11,"","",vt(0,0,0),vt(0.13,0.8,0.13))
  230.  
  231. local msh12=mesh("BlockMesh",prt12,"","",vt(0,0,0),vt(0.4,0.1,1))
  232.  
  233. local msh13=mesh("CylinderMesh",prt13,"","",vt(0,0,0),vt(0.1,0.11,0.1))
  234.  
  235. local msh14=mesh("CylinderMesh",prt14,"","",vt(0,0,0),vt(0.1,0.11,0.1))
  236.  
  237.  
  238.  
  239. local wld1=weld(prt1,prt1,Torso,euler(0.5+1.57,0,0)*cf(-0.5,-1.5,-1))
  240.  
  241. local wld2=weld(prt2,prt2,prt1,euler(-0.5,0,0)*cf(0,-0.5,0.2))
  242.  
  243. local wld3=weld(prt3,prt3,prt2,euler(0,0,0)*cf(0,0,0.8))
  244.  
  245. local wld4=weld(prt4,prt4,prt3,euler(0,0,0)*cf(0,-0.15,0.3))
  246.  
  247. local wld5=weld(prt5,prt5,prt4,euler(1.57,0,0)*cf(0.1,-0.1,0))
  248.  
  249. local wld6=weld(prt6,prt6,prt4,euler(1.57,0,0)*cf(-0.1,-0.1,0))
  250.  
  251. local wld7=weld(prt7,prt7,prt4,euler(1.57,0,0)*cf(0,0,-1.5))
  252.  
  253. local wld8=weld(prt8,prt8,prt4,euler(0,0,1.57)*cf(0,-0.05,1.45))
  254.  
  255. local wld9=weld(prt9,prt9,prt8,euler(0.5,0,0)*cf(0,0.5,0))
  256.  
  257. local wld10=weld(prt10,prt10,prt9,euler(-0.7,0,0)*cf(0,0.6,-0.25))
  258.  
  259. local wld11=weld(prt11,prt11,prt8,euler(-0.5,0,0)*cf(0,-0.5,0))
  260.  
  261. local wld12=weld(prt12,prt12,prt11,euler(0.7,0,0)*cf(0,-0.6,-0.25))
  262.  
  263. local wld13=weld(prt13,prt13,prt10,euler(0,0,0)*cf(0.08,-0.01,-0.4))
  264.  
  265. local wld14=weld(prt14,prt14,prt12,euler(0,0,0)*cf(0.08,0.01,-0.4))
  266.  
  267. local wld15=weld(prt15,prt15,prt2,euler(0,0,0)*cf(0,-0.3,1.65))
  268.  
  269.  
  270.  
  271. local string1=part(3,modelzorz,0,0,BrickColor.new("White"),"String1",vt(1,1,1))
  272.  
  273. string1.Anchored=true
  274.  
  275. local stringmsh1=mesh("CylinderMesh",string1,"","",vt(0,0,0),vt(0.1,1,0.1))
  276.  
  277. local string2=part(3,modelzorz,0,0,BrickColor.new("White"),"String1",vt(1,1,1))
  278.  
  279. string2.Anchored=true
  280.  
  281. local stringmsh2=mesh("CylinderMesh",string2,"","",vt(0,0,0),vt(0.1,1,0.1))
  282.  
  283.  
  284.  
  285. local strmdl = "Arrow"
  286.  
  287. coroutine.resume(coroutine.create(function()
  288.  
  289. repeat
  290.  
  291. wait(0)
  292.  
  293. local top = prt13.CFrame
  294.  
  295. local bottom = prt14.CFrame
  296.  
  297. local oristrpos
  298.  
  299. if strmdl == "Bow" then
  300.  
  301. oristrpos = CFrame.new((top.p+bottom.p)/2)
  302.  
  303. elseif strmdl == "Arrow" then
  304.  
  305. oristrpos = prt15.CFrame
  306.  
  307. end
  308.  
  309. local mg1 = (top.p - oristrpos.p).magnitude
  310.  
  311. local mg2 = (bottom.p - oristrpos.p).magnitude
  312.  
  313. string1.Size = Vector3.new(0.2,mg1,0.2)
  314.  
  315. string1.CFrame = CFrame.new((top.p+oristrpos.p)/2,oristrpos.p) * CFrame.Angles(math.rad(90),0,0)
  316.  
  317. string2.Size = Vector3.new(0.2,mg2,0.2)
  318.  
  319. string2.CFrame = CFrame.new((bottom.p+oristrpos.p)/2,oristrpos.p) * CFrame.Angles(math.rad(90),0,0)
  320.  
  321. until false
  322.  
  323. end))
  324.  
  325.  
  326.  
  327.  
  328.  
  329. if (script.Parent.className ~= "HopperBin") then
  330.  
  331. Tool = Instance.new("HopperBin")
  332.  
  333. Tool.Parent = Backpack
  334.  
  335. Tool.Name = "Crossbow"
  336.  
  337. script.Parent = Tool
  338.  
  339. end
  340.  
  341. Bin = script.Parent
  342.  
  343.  
  344.  
  345. local bg = it("BodyGyro")
  346.  
  347. bg.maxTorque = Vector3.new(4e+005,4e+005,4e+005)*math.huge
  348.  
  349. bg.P = 20e+003
  350.  
  351. bg.Parent = nil
  352.  
  353.  
  354.  
  355. so = function(id,par,vol,pit)
  356.  
  357. coroutine.resume(coroutine.create(function()
  358.  
  359. local sou = Instance.new("Sound",par or workspace)
  360.  
  361. sou.Volume=vol
  362.  
  363. sou.Pitch=pit or 1
  364.  
  365. sou.SoundId=id
  366.  
  367. wait()
  368.  
  369. sou:play()
  370.  
  371. wait(6)
  372.  
  373. sou:Remove()
  374.  
  375. end))
  376.  
  377. end
  378.  
  379.  
  380.  
  381. function unequipweld()
  382.  
  383. wld1.Part1=Torso
  384.  
  385. wld1.C0=euler(0.5+1.57,0,0)*cf(-0.5,-1.5,-1)
  386.  
  387. end
  388.  
  389.  
  390.  
  391. function equipweld()
  392.  
  393. wld1.Part1=RightArm
  394.  
  395. wld1.C0=euler(0.5+1.57,0,0)*cf(0,1,0)
  396.  
  397. end
  398.  
  399.  
  400.  
  401. function hideanim()
  402.  
  403. equipped=false
  404.  
  405. wait(0.1)
  406.  
  407. bg.Parent=nil
  408.  
  409. unequipweld()
  410.  
  411. end
  412.  
  413.  
  414.  
  415. function equipanim()
  416.  
  417. equipped=true
  418.  
  419. wait(0.1)
  420.  
  421. equipweld()
  422.  
  423. RW.C0=cf(1.5, 0.5, 0) * euler(0.8,0,0)
  424.  
  425. RW.C1=cf(0, 0.5, 0) * euler(0,0.2,-0.2)
  426.  
  427. LW.C0=cf(-1.5, 0.5, 0) * euler(0,0,-0.2)
  428.  
  429. LW.C1=cf(0, 0.5, 0) * euler(0,0,0)
  430.  
  431. end
  432.  
  433.  
  434.  
  435. function Melee()
  436.  
  437. attack=true
  438.  
  439. SpecialEffect()
  440.  
  441. for i=0,1,0.1 do
  442.  
  443. wait()
  444.  
  445. RW.C0=cf(1.5-0.5*i, 0.5, -0.5*i) * euler(0.8+0.77*i,0,0)
  446.  
  447. RW.C1=cf(0, 0.5, 0) * euler(0,0.2-1.77*i,-0.2+0.8*i)
  448.  
  449. end
  450.  
  451. bg.Parent=Torso
  452.  
  453. CF = Torso.CFrame
  454.  
  455. con1=prt2.Touched:connect(function(hit) Damagefunc1(hit,20,20) end)
  456.  
  457. con2=prt3.Touched:connect(function(hit) Damagefunc1(hit,20,20) end)
  458.  
  459. so("http://roblox.com/asset/?id=10209640",LeftArm,1,0.8)
  460.  
  461. for i=0,1,0.1 do
  462.  
  463. wait()
  464.  
  465. RW.C0=cf(1.5-0.5+0.5*i, 0.5, -0.5+0.5*i) * euler(1.57,0,0)
  466.  
  467. RW.C1=cf(0, 0.5, 0) * euler(0,-1.57,0.6-2.17*i)
  468.  
  469. LW.C0=cf(-1.5, 0.5, 0) * euler(0,0,-0.2-1.37*i)
  470.  
  471. bg.cframe=CF*euler(0,-6.283*i,0)
  472.  
  473. end
  474.  
  475. con1:disconnect()
  476.  
  477. con2:disconnect()
  478.  
  479. bg.Parent=nil
  480.  
  481. for i=0,1,0.1 do
  482.  
  483. wait()
  484.  
  485. RW.C0=cf(1.5, 0.5, 0) * euler(1.57-0.77*i,0,0)
  486.  
  487. RW.C1=cf(0, 0.5, 0) * euler(0,-1.57+1.77*i,-1.57+1.37*i)
  488.  
  489. LW.C0=cf(-1.5, 0.5, 0) * euler(0,0,-0.2-1.37+1.37*i)
  490.  
  491. end
  492.  
  493. attack=false
  494.  
  495. end
  496.  
  497.  
  498.  
  499. function TripleShot()
  500.  
  501. attack=true
  502.  
  503. SpecialEffect()
  504.  
  505. Humanoid.WalkSpeed=5
  506.  
  507. holding=true
  508.  
  509. for i=0,1,0.2 do
  510.  
  511. wait()
  512.  
  513. RW.C0=cf(1.5, 0.5, 0) * euler(0.8-0.2*i,0,0)
  514.  
  515. RW.C1=cf(0, 0.5, 0) * euler(0,0.2,-0.2)
  516.  
  517. LW.C0=cf(-1.5, 0.5, 0) * euler(-0.6*i,0,-0.2+0.4*i)
  518.  
  519. LW.C1=cf(0, 0.5, 0) * euler(0,-1.57*i,0)
  520.  
  521. end
  522.  
  523. local arrow=part(3,modelzorz,0,0,BrickColor.new("White"),"Arrow",vt(1,1,1))
  524.  
  525. local arrowmsh=mesh("SpecialMesh",arrow,"FileMesh","http://www.roblox.com/asset/?id=15887356",vt(0,0,0),vt(1,1,2))
  526.  
  527. arrowmsh.VertexColor=vt(1,1,1)
  528.  
  529. --arrowmsh.TextureId="http://www.roblox.com/asset/?id=15886781"
  530.  
  531. local arrowwld=weld(arrow,arrow,LeftArm,euler(0,0,0)*cf(0,1,0))
  532.  
  533. for i=0,1,0.1 do
  534.  
  535. wait()
  536.  
  537. Torso.Neck.C0=necko*euler(0.3*i,0,0)
  538.  
  539. RW.C0=cf(1.5, 0.5, 0) * euler(0.6,0,0)
  540.  
  541. RW.C1=cf(0, 0.5, 0) * euler(0,0.2-0.2*i,-0.2+0.2*i)
  542.  
  543. LW.C0=cf(-1.5, 0.5, -0.2*i) * euler(-0.6+1.7*i,0,0.2)
  544.  
  545. LW.C1=cf(0, 0.5, 0) * euler(0,-1.57+3.14*i,0)
  546.  
  547. wld1.C0=euler(0.5+1.57,0,1.57*i)*cf(0,1,0)
  548.  
  549. arrowwld.C0=euler(0,0,1.57*i)*cf(0,1,-1*i)
  550.  
  551. end
  552.  
  553. arrowwld.Part1=prt4
  554.  
  555. arrowwld.C0=euler(3.14,0,0)*cf(0,-0.15,2.5)
  556.  
  557. for i=0,1,0.1 do
  558.  
  559. wait()
  560.  
  561. LW.C0=cf(-1.5+0.5*i, 0.5, -0.2-0.3*i) * euler(1.1-0.1*i,0,0.2+0.3*i)
  562.  
  563. LW.C1=cf(0, 0.5, 0) * euler(0,1.57,0)
  564.  
  565. arrowwld.C0=euler(3.14,0,0)*cf(0,-0.15,2.5-1.5*i)
  566.  
  567. wld15.C0=euler(0,0,0)*cf(0,-0.3,1.65-2*i)
  568.  
  569. end
  570.  
  571. coroutine.resume(coroutine.create(function()
  572.  
  573. wait()
  574.  
  575. while holding==true do
  576.  
  577. wait(0)
  578.  
  579. bg.Parent = Torso
  580.  
  581. local pos4 = vt(MMouse.Hit.p.x,Head.Position.Y,MMouse.Hit.p.z)
  582.  
  583. bg.cframe = cf(Torso.Position,pos4) * euler(0,1.57,0) * cf(0,0,0)
  584.  
  585. end
  586.  
  587. bg.Parent=nil
  588.  
  589. end))
  590.  
  591. for i=0,1,0.1 do
  592.  
  593. wait()
  594.  
  595. Torso.Neck.C0=necko*euler(0.3-0.3*i,0,-1.57*i)
  596.  
  597. RW.C0=cf(1.5, 0.5, 0) * euler(0.6-0.6*i,0,1.57*i)
  598.  
  599. RW.C1=cf(0, 0.5, 0) * euler(0,1.57*i,0)
  600.  
  601. LW.C0=cf(-1.5+0.5-0.5*i, 0.5, -0.5+0.5*i) * euler(1-1*i,0,0.5-0.7*i)
  602.  
  603. LW.C1=cf(0, 0.5, 0) * euler(0,1.57-1.57*i,0)
  604.  
  605. wld1.C0=euler(0.5+1.57,0,1.57-1.57*i)*cf(0,1,0)
  606.  
  607. end
  608.  
  609. wait(0.2)
  610.  
  611. arrowfft=arrow:Clone()
  612.  
  613. arrowfft.Parent=arrow.Parent
  614.  
  615. arrowfft.CFrame=arrow.CFrame
  616.  
  617. arrowfft.Anchored=true
  618.  
  619. fftmsh=arrowfft.Mesh
  620.  
  621. coroutine.resume(coroutine.create(function(Arrow,Mesh)
  622.  
  623. for i=0,1,0.1 do
  624.  
  625. wait()
  626.  
  627. Arrow.Transparency=i
  628.  
  629. Mesh.Scale=Mesh.Scale+vt(0.5,0.5,0.5)
  630.  
  631. end
  632.  
  633. Arrow.Parent=nil
  634.  
  635. end),arrowfft,fftmsh)
  636.  
  637. for i=1,3 do
  638.  
  639. spread=1
  640.  
  641. so("http://www.roblox.com/asset/?id=16211041",prt8,1,1)
  642.  
  643. shoottrail(mouse,prt8)
  644.  
  645. end
  646.  
  647. spread=0
  648.  
  649. arrow.Parent=nil
  650.  
  651. wld15.C0=euler(0,0,0)*cf(0,-0.3,1.65)
  652.  
  653. for i=0,1,0.2 do
  654.  
  655. wait()
  656.  
  657. Torso.Neck.C0=necko*euler(0,0.2*i,-1.57)
  658.  
  659. RW.C0=cf(1.5, 0.5, 0) * euler(0,0,1.57+0.2*i)
  660.  
  661. end
  662.  
  663. for i=0,1,0.2 do
  664.  
  665. wait()
  666.  
  667. Torso.Neck.C0=necko*euler(0,0.2+0.1*i,-1.57)
  668.  
  669. RW.C0=cf(1.5, 0.5, 0) * euler(0,0,1.57+0.2+0.1*i)
  670.  
  671. end
  672.  
  673. Humanoid.WalkSpeed=16
  674.  
  675. holding=false
  676.  
  677. for i=0,1,0.1 do
  678.  
  679. wait()
  680.  
  681. Torso.Neck.C0=necko*euler(0,0.3-0.3*i,-1.57+1.57*i)
  682.  
  683. RW.C0=cf(1.5, 0.5, 0) * euler(0.8*i,0,1.87-1.87*i)
  684.  
  685. RW.C1=cf(0, 0.5, 0) * euler(0,1.57-1.37*i,-0.2*i)
  686.  
  687. end
  688.  
  689. attack=false
  690.  
  691. end
  692.  
  693.  
  694.  
  695. function SpiritArrows()
  696.  
  697. attack=true
  698.  
  699. SpecialEffect()
  700.  
  701. Humanoid.WalkSpeed=0
  702.  
  703. holding=true
  704.  
  705. spread=2
  706.  
  707. for i=0,1,0.2 do
  708.  
  709. wait()
  710.  
  711. RW.C0=cf(1.5, 0.5, 0) * euler(0.8-0.2*i,0,0)
  712.  
  713. RW.C1=cf(0, 0.5, 0) * euler(0,0.2,-0.2)
  714.  
  715. LW.C0=cf(-1.5, 0.5, 0) * euler(-0.6*i,0,-0.2+0.4*i)
  716.  
  717. LW.C1=cf(0, 0.5, 0) * euler(0,-1.57*i,0)
  718.  
  719. end
  720.  
  721. local arrow=part(3,modelzorz,0.5,0,BrickColor.new("White"),"Arrow",vt(1,1,1))
  722.  
  723. local arrowmsh=mesh("SpecialMesh",arrow,"FileMesh","http://www.roblox.com/asset/?id=15887356",vt(0,0,0),vt(1,1,2))
  724.  
  725. arrowmsh.VertexColor=vt(1,1,1)
  726.  
  727. --arrowmsh.TextureId="http://www.roblox.com/asset/?id=15886781"
  728.  
  729. local arrowwld=weld(arrow,arrow,LeftArm,euler(0,0,0)*cf(0,1,0))
  730.  
  731. for i=0,1,0.1 do
  732.  
  733. wait()
  734.  
  735. Torso.Neck.C0=necko*euler(0.3*i,0,0)
  736.  
  737. RW.C0=cf(1.5, 0.5, 0) * euler(0.6,0,0)
  738.  
  739. RW.C1=cf(0, 0.5, 0) * euler(0,0.2-0.2*i,-0.2+0.2*i)
  740.  
  741. LW.C0=cf(-1.5, 0.5, -0.2*i) * euler(-0.6+1.7*i,0,0.2)
  742.  
  743. LW.C1=cf(0, 0.5, 0) * euler(0,-1.57+3.14*i,0)
  744.  
  745. wld1.C0=euler(0.5+1.57,0,1.57*i)*cf(0,1,0)
  746.  
  747. arrowwld.C0=euler(0,0,1.57*i)*cf(0,1,-1*i)
  748.  
  749. end
  750.  
  751. arrowwld.Part1=prt4
  752.  
  753. arrowwld.C0=euler(3.14,0,0)*cf(0,-0.15,2.5)
  754.  
  755. for i=0,1,0.1 do
  756.  
  757. wait()
  758.  
  759. LW.C0=cf(-1.5+0.5*i, 0.5, -0.2-0.3*i) * euler(1.1-0.1*i,0,0.2+0.3*i)
  760.  
  761. LW.C1=cf(0, 0.5, 0) * euler(0,1.57,0)
  762.  
  763. arrowwld.C0=euler(3.14,0,0)*cf(0,-0.15,2.5-1.5*i)
  764.  
  765. wld15.C0=euler(0,0,0)*cf(0,-0.3,1.65-2*i)
  766.  
  767. end
  768.  
  769. coroutine.resume(coroutine.create(function()
  770.  
  771. wait()
  772.  
  773. while holding==true do
  774.  
  775. wait(0)
  776.  
  777. bg.Parent = Torso
  778.  
  779. local pos4 = vt(MMouse.Hit.p.x,Head.Position.Y,MMouse.Hit.p.z)
  780.  
  781. bg.cframe = cf(Torso.Position,pos4) * euler(0,1.57,0) * cf(0,0,0)
  782.  
  783. end
  784.  
  785. bg.Parent=nil
  786.  
  787. end))
  788.  
  789. for i=0,1,0.1 do
  790.  
  791. wait()
  792.  
  793. Torso.Neck.C0=necko*euler(0.3-0.3*i,0,-1.57*i)
  794.  
  795. RW.C0=cf(1.5, 0.5, 0) * euler(0.6-0.6*i,0,1.57*i)
  796.  
  797. RW.C1=cf(0, 0.5, 0) * euler(0,1.57*i,0)
  798.  
  799. LW.C0=cf(-1.5+0.5-0.5*i, 0.5, -0.5+0.5*i) * euler(1-1*i,0,0.5-0.7*i)
  800.  
  801. LW.C1=cf(0, 0.5, 0) * euler(0,1.57-1.57*i,0)
  802.  
  803. wld1.C0=euler(0.5+1.57,0,1.57-1.57*i)*cf(0,1,0)
  804.  
  805. end
  806.  
  807. arrowlimit=0
  808.  
  809. makearrow=false
  810.  
  811. while holding==true do
  812.  
  813. wait(0)
  814.  
  815. coroutine.resume(coroutine.create(function()
  816.  
  817. if makearrow==false then
  818.  
  819. makearrow=true
  820.  
  821. if arrowlimit<=7 then
  822.  
  823. arrowlimit=arrowlimit+1
  824.  
  825. local arrowclone=part(3,modelzorz,0.5,1,BrickColor.new("White"),"Arrow",vt(1,1,1))
  826.  
  827. local arrowmshclone=mesh("SpecialMesh",arrowclone,"FileMesh","http://www.roblox.com/asset/?id=15887356",vt(0,0,0),vt(1,1,2))
  828.  
  829. arrowmsh.VertexColor=vt(1,1,1)
  830.  
  831. local arrowwldclone=weld(arrowclone,arrowclone,arrow,euler(0,0,3.14)*cf(math.random(-8,8),math.random(-3,3),math.random(-8,8)))
  832.  
  833. coroutine.resume(coroutine.create(function(Arrow)
  834.  
  835. for i=1,0.3,-0.05 do
  836.  
  837. wait()
  838.  
  839. Arrow.Transparency=i
  840.  
  841. end
  842.  
  843. while holding==true do
  844.  
  845. wait()
  846.  
  847. end
  848.  
  849. Arrow.Anchored=true
  850.  
  851. if Arrow:findFirstChild("Weld")~=nil then
  852.  
  853. Arrow.Weld.Parent=nil
  854.  
  855. end
  856.  
  857. wait(math.random()-math.random())
  858.  
  859. so("http://www.roblox.com/asset/?id=16211041",Arrow,1,1)
  860.  
  861. shoottrail(mouse,Arrow)
  862.  
  863. Arrow.Parent=nil
  864.  
  865. end),arrowclone)
  866.  
  867. end
  868.  
  869. wait(math.random())
  870.  
  871. makearrow=false
  872.  
  873. end
  874.  
  875. end))
  876.  
  877. end
  878.  
  879. arrowfft=arrow:Clone()
  880.  
  881. arrowfft.Parent=arrow.Parent
  882.  
  883. arrowfft.CFrame=arrow.CFrame
  884.  
  885. arrowfft.Anchored=true
  886.  
  887. fftmsh=arrowfft.Mesh
  888.  
  889. coroutine.resume(coroutine.create(function(Arrow,Mesh)
  890.  
  891. for i=0,1,0.1 do
  892.  
  893. wait()
  894.  
  895. Arrow.Transparency=i
  896.  
  897. Mesh.Scale=Mesh.Scale+vt(0.2,0.2,0.2)
  898.  
  899. end
  900.  
  901. Arrow.Parent=nil
  902.  
  903. end),arrowfft,fftmsh)
  904.  
  905. so("http://www.roblox.com/asset/?id=16211041",prt8,1,1)
  906.  
  907. shoottrail(mouse,prt8)
  908.  
  909. arrow.Parent=nil
  910.  
  911. wld15.C0=euler(0,0,0)*cf(0,-0.3,1.65)
  912.  
  913. for i=0,1,0.2 do
  914.  
  915. wait()
  916.  
  917. Torso.Neck.C0=necko*euler(0,0.2*i,-1.57)
  918.  
  919. RW.C0=cf(1.5, 0.5, 0) * euler(0,0,1.57+0.2*i)
  920.  
  921. end
  922.  
  923. for i=0,1,0.2 do
  924.  
  925. wait()
  926.  
  927. Torso.Neck.C0=necko*euler(0,0.2+0.1*i,-1.57)
  928.  
  929. RW.C0=cf(1.5, 0.5, 0) * euler(0,0,1.57+0.2+0.1*i)
  930.  
  931. end
  932.  
  933. Humanoid.WalkSpeed=16
  934.  
  935. for i=0,1,0.1 do
  936.  
  937. wait()
  938.  
  939. Torso.Neck.C0=necko*euler(0,0.3-0.3*i,-1.57+1.57*i)
  940.  
  941. RW.C0=cf(1.5, 0.5, 0) * euler(0.8*i,0,1.87-1.87*i)
  942.  
  943. RW.C1=cf(0, 0.5, 0) * euler(0,1.57-1.37*i,-0.2*i)
  944.  
  945. end
  946.  
  947. spread=0
  948.  
  949. attack=false
  950.  
  951. end
  952.  
  953.  
  954.  
  955. function Decimate()
  956.  
  957. attack=true
  958.  
  959. Humanoid.WalkSpeed=0
  960.  
  961. print("Archer SS initiated.")
  962.  
  963. SpecialEffect()
  964.  
  965. holding=true
  966.  
  967. coroutine.resume(coroutine.create(function()
  968.  
  969. wait()
  970.  
  971. while holding==true do
  972.  
  973. wait(0)
  974.  
  975. bg.Parent = Torso
  976.  
  977. local pos4 = vt(MMouse.Hit.p.x,Head.Position.Y,MMouse.Hit.p.z)
  978.  
  979. bg.cframe = cf(Torso.Position,pos4) * euler(0,1.57,0) * cf(0,0,0)
  980.  
  981. end
  982.  
  983. bg.Parent=nil
  984.  
  985. end))
  986.  
  987. so("http://roblox.com/asset/?id=2101144",arrow,1,1)
  988.  
  989. local arrow=part(3,modelzorz,0,1,BrickColor.new("White"),"Arrow",vt(1,1,1))
  990.  
  991. local arrowmsh=mesh("SpecialMesh",arrow,"FileMesh","http://www.roblox.com/asset/?id=15887356",vt(0,0,0),vt(2,2,4))
  992.  
  993. local arrowwld=weld(arrow,arrow,LeftArm,euler(-1.57,0,0)*cf(0,2,0))
  994.  
  995. for i=0,1,0.1 do
  996.  
  997. wait()
  998.  
  999. arrow.Transparency=arrow.Transparency-0.05
  1000.  
  1001. arrowwld.C0=euler(-1.57+0.2*i,0,0)*cf(-0.5*i,2,-0.5*i)
  1002.  
  1003. Torso.Neck.C0=necko*euler(0,0.3*i,-1.57*i)
  1004.  
  1005. RW.C0=cf(1.5, 0.5, -0.5*i) * euler(0.8+2.2*i,0,0)
  1006.  
  1007. RW.C1=cf(0, 0.5, 0) * euler(0,0.2-1.77*i,-0.2+0.2*i)
  1008.  
  1009. LW.C0=cf(-1.5+1.8*i, 0.5+2*i, -0.5*i) * euler(3.1*i,0,-0.2+0.6*i)
  1010.  
  1011. LW.C1=cf(0, 0.5, 0) * euler(0,1.57*i,0)
  1012.  
  1013. end
  1014.  
  1015. arrowwld.Part1=prt4
  1016.  
  1017. arrowwld.C0=euler(3.14,0,0)*cf(0,-0.15,2.5)
  1018.  
  1019. for i=0,1,0.05 do
  1020.  
  1021. wait()
  1022.  
  1023. Torso.Neck.C0=necko*euler(0,0.3-0.1*i,-1.57)
  1024.  
  1025. LW.C0=cf(-1.5+1.8, 2.5-1.5*i, -0.5) * euler(3.1,0,0.4)
  1026.  
  1027. arrowwld.C0=euler(3.14,0,0)*cf(0,-0.15,2.5-1*i)
  1028.  
  1029. wld15.C0=euler(0,0,0)*cf(0,-0.3,1.65-4*i)
  1030.  
  1031. end
  1032.  
  1033. for i=0,1,0.05 do
  1034.  
  1035. wait()
  1036.  
  1037. Torso.Neck.C0=necko*euler(0,0.2-0.2*i,-1.57)
  1038.  
  1039. RW.C0=cf(1.5, 0.5, -0.5) * euler(3+0.14*i,0,0)
  1040.  
  1041. RW.C1=cf(0, 0.5, 0) * euler(0,-1.57,-1.57*i)
  1042.  
  1043. LW.C0=cf(-1.5+1.8, 1, -0.5) * euler(3.1,0,0.4+1.17*i)
  1044.  
  1045. LW.C1=cf(0, 0.5, 0) * euler(0,1.57,0)
  1046.  
  1047. end
  1048.  
  1049. while holding==true do
  1050.  
  1051. wait()
  1052.  
  1053. end
  1054.  
  1055. so("http://www.roblox.com/asset/?id=16211041",prt8,1,1)
  1056.  
  1057. SSshoottrail(mouse,prt8)
  1058.  
  1059. arrow.Parent=nil
  1060.  
  1061. Humanoid.WalkSpeed=16
  1062.  
  1063. for i=0,1,0.2 do
  1064.  
  1065. wait()
  1066.  
  1067. Torso.Neck.C0=necko*euler(0,0.3*i,-1.57)
  1068.  
  1069. RW.C0=cf(1.5, 0.5, -0.5) * euler(3.24,0,0)
  1070.  
  1071. RW.C1=cf(0, 0.5, 0) * euler(0,-1.57,-1.57+1*i)
  1072.  
  1073. LW.C0=cf(-1.5+1.8, 1, -0.5) * euler(3.1,0,1.57-1*i)
  1074.  
  1075. LW.C1=cf(0, 0.5, 0) * euler(0,1.57,0)
  1076.  
  1077. wld15.C0=euler(0,0,0)*cf(0,-0.3,1.65)
  1078.  
  1079. end
  1080.  
  1081. for i=0,1,0.1 do
  1082.  
  1083. wait()
  1084.  
  1085. Torso.Neck.C0=necko*euler(0,0.3+0.1*i,-1.57)
  1086.  
  1087. RW.C0=cf(1.5, 0.5, -0.5) * euler(3.24,0,0)
  1088.  
  1089. RW.C1=cf(0, 0.5, 0) * euler(0,-1.57,-1.57+1+0.1*i)
  1090.  
  1091. LW.C0=cf(-1.5+1.8, 1, -0.5) * euler(3.1,0,1.57-1-0.1*i)
  1092.  
  1093. LW.C1=cf(0, 0.5, 0) * euler(0,1.57,0)
  1094.  
  1095. wld15.C0=euler(0,0,0)*cf(0,-0.3,1.65)
  1096.  
  1097. end
  1098.  
  1099. for i=0,1,0.05 do
  1100.  
  1101. wait()
  1102.  
  1103. Torso.Neck.C0=necko*euler(0,0.4-0.4*i,-1.57+1.57*i)
  1104.  
  1105. RW.C0=cf(1.5, 0.5, -0.5+0.5*i) * euler(3.24-2.44*i,0,0)
  1106.  
  1107. RW.C1=cf(0, 0.5, 0) * euler(0,-1.57+1.77*i,-0.47+0.27*i)
  1108.  
  1109. LW.C0=cf(-1.5+1.8-1.8*i, 1-0.5*i, -0.5+0.5*i) * euler(3.1-3.1*i,0,0.47-0.67*i)
  1110.  
  1111. LW.C1=cf(0, 0.5, 0) * euler(0,1.57-1.57*i,0)
  1112.  
  1113. end
  1114.  
  1115. attack=false
  1116.  
  1117. end
  1118.  
  1119.  
  1120.  
  1121. function MagicCircle(brickcolor,cframe,x1,y1,z1,x2,y2,z2,x3,y3,z3)
  1122.  
  1123. local prt=part(3,workspace,0,0,brickcolor,"Effect",vt(0.5,0.5,0.5))
  1124.  
  1125. prt.Anchored=true
  1126.  
  1127. prt.CFrame=cframe*cf(x2,y2,z2)
  1128.  
  1129. local msh=mesh("SpecialMesh",prt,"Sphere","",vt(0,0,0),vt(x1,y1,z1))
  1130.  
  1131. coroutine.resume(coroutine.create(function()
  1132.  
  1133. for i=0,1,0.1 do
  1134.  
  1135. wait()
  1136.  
  1137. prt.CFrame=prt.CFrame
  1138.  
  1139. prt.Transparency=i
  1140.  
  1141. msh.Scale=msh.Scale+vt(x3,y3,z3)
  1142.  
  1143. end
  1144.  
  1145. prt.Parent=nil
  1146.  
  1147. end))
  1148.  
  1149. end
  1150.  
  1151.  
  1152.  
  1153. function SpecialEffect()
  1154.  
  1155. local prt=part(3,workspace,1,0,BrickColor.new("White"),"Part",vt(1,1,1))
  1156.  
  1157. prt.Anchored=true
  1158.  
  1159. prt.CFrame=Torso.CFrame
  1160.  
  1161. local msh=mesh("SpecialMesh",prt,"Sphere","",vt(0,0,0),vt(0.5,0.5,0.5))
  1162.  
  1163. coroutine.resume(coroutine.create(function(Part,Mesh)
  1164.  
  1165. for i=0,1,0.2 do
  1166.  
  1167. wait(0)
  1168.  
  1169. Part.Transparency=i
  1170.  
  1171. Mesh.Scale=Mesh.Scale+vt(10,10,10)
  1172.  
  1173. end
  1174.  
  1175. prt.Parent=nil
  1176.  
  1177. end),prt,msh)
  1178.  
  1179. end
  1180.  
  1181.  
  1182.  
  1183. Damagefunc1=function(hit,Damage,Knockback)
  1184.  
  1185. if hit.Parent==nil then
  1186.  
  1187. return
  1188.  
  1189. end
  1190.  
  1191. CPlayer=Bin
  1192.  
  1193. h=hit.Parent:FindFirstChild("Humanoid")
  1194.  
  1195. if h~=nil and hit.Parent.Name~=Character.Name and hit.Parent:FindFirstChild("Torso")~=nil then
  1196.  
  1197. if attackdebounce == false then
  1198.  
  1199. attackdebounce = true
  1200.  
  1201. coroutine.resume(coroutine.create(function()
  1202.  
  1203. wait(0.2)
  1204.  
  1205. attackdebounce = false
  1206.  
  1207. end))
  1208.  
  1209. Damage=Damage
  1210.  
  1211. --[[ if game.Players:GetPlayerFromCharacter(hit.Parent)~=nil then
  1212.  
  1213. return
  1214.  
  1215. end]]
  1216.  
  1217. -- hs(hit,1.2)
  1218.  
  1219. c=Instance.new("ObjectValue")
  1220.  
  1221. c.Name="creator"
  1222.  
  1223. c.Value=game.Players.LocalPlayer
  1224.  
  1225. c.Parent=h
  1226.  
  1227. game:GetService("Debris"):AddItem(c,.5)
  1228.  
  1229. Damage=Damage+math.random(0,10)
  1230.  
  1231. -- h:TakeDamage(Damage)
  1232.  
  1233. h.Health=h.Health-Damage
  1234.  
  1235. showDamage(hit.Parent,Damage,.5)
  1236.  
  1237. vp=Instance.new("BodyVelocity")
  1238.  
  1239. vp.P=500
  1240.  
  1241. vp.maxForce=Vector3.new(math.huge,0,math.huge)
  1242.  
  1243. -- vp.velocity=Character.Torso.CFrame.lookVector*Knockback
  1244.  
  1245. vp.velocity=Head.CFrame.lookVector*Knockback+Head.Velocity/1.05
  1246.  
  1247. if Knockback>0 then
  1248.  
  1249. vp.Parent=hit.Parent.Torso
  1250.  
  1251. end
  1252.  
  1253. rl=Instance.new("BodyAngularVelocity")
  1254.  
  1255. rl.P=3000
  1256.  
  1257. rl.maxTorque=Vector3.new(500000,500000,500000)*50000000000000
  1258.  
  1259. rl.angularvelocity=Vector3.new(math.random(-50,50),math.random(-50,50),math.random(-50,50))
  1260.  
  1261. rl.Parent=hit
  1262.  
  1263. coroutine.resume(coroutine.create(function(vel)
  1264.  
  1265. wait(1)
  1266.  
  1267. vel:Remove()
  1268.  
  1269. end),rl)
  1270.  
  1271. game:GetService("Debris"):AddItem(vp,.25)
  1272.  
  1273. game:GetService("Debris"):AddItem(r,.5)
  1274.  
  1275. c=Instance.new("ObjectValue")
  1276.  
  1277. c.Name="creator"
  1278.  
  1279. c.Value=Player
  1280.  
  1281. c.Parent=h
  1282.  
  1283. game:GetService("Debris"):AddItem(c,.5)
  1284.  
  1285. CRIT=false
  1286.  
  1287. hitDeb=true
  1288.  
  1289. AttackPos=6
  1290.  
  1291. end
  1292.  
  1293. end
  1294.  
  1295. end
  1296.  
  1297.  
  1298.  
  1299. Damagefunc2=function(hit,Damage,Knockback)
  1300.  
  1301. if hit.Parent==nil then
  1302.  
  1303. return
  1304.  
  1305. end
  1306.  
  1307. CPlayer=Bin
  1308.  
  1309. blocked=false
  1310.  
  1311. h=hit.Parent:FindFirstChild("Humanoid")
  1312.  
  1313. if h~=nil and hit.Parent:FindFirstChild("Torso")~=nil then
  1314.  
  1315. Damage=Damage
  1316.  
  1317. c=it("ObjectValue")
  1318.  
  1319. c.Name="creator"
  1320.  
  1321. c.Value=game.Players.LocalPlayer
  1322.  
  1323. c.Parent=h
  1324.  
  1325. game:GetService("Debris"):AddItem(c,.5)
  1326.  
  1327. -- print(c.Value)
  1328.  
  1329. --[[ if math.random(0,99)+math.random()<=7.8 then
  1330.  
  1331. CRIT=true
  1332.  
  1333. Damage=Damage*2
  1334.  
  1335. s=it("Sound")
  1336.  
  1337. s.SoundId="http://www.roblox.com/asset/?id=2801263"
  1338.  
  1339. s.Volume=1
  1340.  
  1341. s.Pitch=2
  1342.  
  1343. s.Parent=hit
  1344.  
  1345. s.PlayOnRemove=true
  1346.  
  1347. s.Parent=nil
  1348.  
  1349.  
  1350.  
  1351. end]]
  1352.  
  1353. Damage=Damage+math.random(0,10)
  1354.  
  1355. -- Blood(hit.CFrame*cf(math.random(-10,10)/10,math.random(-10,10)/10,0),math.floor(Damage/2))
  1356.  
  1357. block=hit.Parent:findFirstChild("Block")
  1358.  
  1359. if block~=nil then
  1360.  
  1361. print("herp")
  1362.  
  1363. if block.Value>0 then
  1364.  
  1365. blocked=true
  1366.  
  1367. block.Value=block.Value-3
  1368.  
  1369. print(block.Value)
  1370.  
  1371. end
  1372.  
  1373. end
  1374.  
  1375. if blocked==false then
  1376.  
  1377. -- h:TakeDamage(Damage)
  1378.  
  1379. h.Health=h.Health-Damage
  1380.  
  1381. showDamage(hit.Parent,Damage,.5)
  1382.  
  1383. else
  1384.  
  1385. h:TakeDamage(1)
  1386.  
  1387. showDamage(hit.Parent,1,.5)
  1388.  
  1389. end
  1390.  
  1391. --if blocked==false then
  1392.  
  1393. --end
  1394.  
  1395. local bodyVelocity=Instance.new("BodyVelocity")
  1396.  
  1397. bodyVelocity.velocity=angle*40+Vector3.new(0,0,0)
  1398.  
  1399. bodyVelocity.P=5000
  1400.  
  1401. bodyVelocity.maxForce=Vector3.new(8e+003, 8e+003, 8e+003)
  1402.  
  1403. bodyVelocity.Parent=hit
  1404.  
  1405. coroutine.resume(coroutine.create(function(Vel)
  1406.  
  1407. wait(1)
  1408.  
  1409. Vel:Remove()
  1410.  
  1411. end),bodyVelocity)
  1412.  
  1413. game:GetService("Debris"):AddItem(vp,1)
  1414.  
  1415. c=it("ObjectValue")
  1416.  
  1417. c.Name="creator"
  1418.  
  1419. c.Value=Player
  1420.  
  1421. c.Parent=h
  1422.  
  1423. game:GetService("Debris"):AddItem(c,.5)
  1424.  
  1425. CRIT=false
  1426.  
  1427. hitDeb=true
  1428.  
  1429. AttackPos=6
  1430.  
  1431. end
  1432.  
  1433. end
  1434.  
  1435.  
  1436.  
  1437. showDamage=function(Char,Dealt,du)
  1438.  
  1439. m=Instance.new("Model")
  1440.  
  1441. m.Name=tostring(Dealt)
  1442.  
  1443. h=Instance.new("Humanoid")
  1444.  
  1445. h.Health=0
  1446.  
  1447. h.MaxHealth=0
  1448.  
  1449. h.Parent=m
  1450.  
  1451. c=Instance.new("Part")
  1452.  
  1453. c.Transparency=0
  1454.  
  1455. c.BrickColor=BrickColor:Red()
  1456.  
  1457. if CRIT==true then
  1458.  
  1459. c.BrickColor=BrickColor.new("Really red")
  1460.  
  1461. end
  1462.  
  1463. c.Name="Head"
  1464.  
  1465. c.TopSurface=0
  1466.  
  1467. c.BottomSurface=0
  1468.  
  1469. c.formFactor="Plate"
  1470.  
  1471. c.Size=Vector3.new(1,.4,1)
  1472.  
  1473. ms=Instance.new("CylinderMesh")
  1474.  
  1475. ms.Scale=Vector3.new(.8,.8,.8)
  1476.  
  1477. if CRIT==true then
  1478.  
  1479. ms.Scale=Vector3.new(1,1.25,1)
  1480.  
  1481. end
  1482.  
  1483. ms.Parent=c
  1484.  
  1485. c.Reflectance=0
  1486.  
  1487. Instance.new("BodyGyro").Parent=c
  1488.  
  1489. c.Parent=m
  1490.  
  1491. c.CFrame=CFrame.new(Char["Head"].CFrame.p+Vector3.new(0,1.5,0))
  1492.  
  1493. f=Instance.new("BodyPosition")
  1494.  
  1495. f.P=2000
  1496.  
  1497. f.D=100
  1498.  
  1499. f.maxForce=Vector3.new(math.huge,math.huge,math.huge)
  1500.  
  1501. f.position=c.Position+Vector3.new(0,3,0)
  1502.  
  1503. f.Parent=c
  1504.  
  1505. game:GetService("Debris"):AddItem(m,.5+du)
  1506.  
  1507. c.CanCollide=false
  1508.  
  1509. m.Parent=workspace
  1510.  
  1511. c.CanCollide=false
  1512.  
  1513. end
  1514.  
  1515.  
  1516.  
  1517. local function rayCast(Pos, Dir, Max, Ignore) -- Origin Position , Direction, MaxDistance , IgnoreDescendants
  1518.  
  1519. return game.Workspace:FindPartOnRay(Ray.new(Pos, Dir.unit * (Max or 999.999)), Ignore)
  1520.  
  1521. end
  1522.  
  1523.  
  1524.  
  1525. spread=0
  1526.  
  1527. range=500
  1528.  
  1529. rangepower=50
  1530.  
  1531. function shoottrail(mouse,baseprt)
  1532.  
  1533. coroutine.resume(coroutine.create(function(v)
  1534.  
  1535. local spreadvector = (Vector3.new(math.random(-spread,spread),math.random(-spread,spread),math.random(-spread,spread))) * (baseprt.Position-MMouse.Hit.p).magnitude/100
  1536.  
  1537. local dir = CFrame.new((baseprt.Position+MMouse.Hit.p)/2,MMouse.Hit.p+spreadvector)
  1538.  
  1539. local hit,pos = rayCast(baseprt.Position,dir.lookVector,10,Character)
  1540.  
  1541. local rangepos = range
  1542.  
  1543. local function drawtrail(From,To)
  1544.  
  1545. local effectsmsh = Instance.new("CylinderMesh")
  1546.  
  1547. effectsmsh.Scale = Vector3.new(1,1,1)
  1548.  
  1549. effectsmsh.Name = "Mesh"
  1550.  
  1551. local effectsg = Instance.new("Part")
  1552.  
  1553. effectsg.formFactor = 3
  1554.  
  1555. effectsg.CanCollide = false
  1556.  
  1557. effectsg.Name = "Eff"
  1558.  
  1559. effectsg.Locked = true
  1560.  
  1561. effectsg.Anchored = true
  1562.  
  1563. effectsg.Size = Vector3.new(0.2,0.2,0.2)
  1564.  
  1565. effectsg.Parent = modelzorz
  1566.  
  1567. effectsmsh.Parent = effectsg
  1568.  
  1569. effectsg.BrickColor = BrickColor.new("White")
  1570.  
  1571. effectsg.Reflectance = 0.25
  1572.  
  1573. local LP = From
  1574.  
  1575. local point1 = To
  1576.  
  1577. local mg = (LP - point1).magnitude
  1578.  
  1579. effectsmsh.Scale = Vector3.new(1.5,mg*5,1.5)
  1580.  
  1581. effectsg.CFrame = CFrame.new((LP+point1)/2,point1) * CFrame.Angles(math.rad(90),0,0)
  1582.  
  1583. coroutine.resume(coroutine.create(function()
  1584.  
  1585. for i = 0 , 1 , 0.1 do
  1586.  
  1587. wait()
  1588.  
  1589. effectsg.Transparency = 1*i
  1590.  
  1591. effectsmsh.Scale = Vector3.new(1-1*i,mg*5,1-1*i)
  1592.  
  1593. end
  1594.  
  1595. effectsg.Parent = nil
  1596.  
  1597. end))
  1598.  
  1599. end
  1600.  
  1601. local newpos = baseprt.Position
  1602.  
  1603. local inc = rangepower
  1604.  
  1605. repeat
  1606.  
  1607. wait() wait()
  1608.  
  1609. rangepos = rangepos - 10
  1610.  
  1611. dir = dir * CFrame.Angles(math.rad(-1),0,0)
  1612.  
  1613. hit,pos = rayCast(newpos,dir.lookVector,inc,Character)
  1614.  
  1615. drawtrail(newpos,pos)
  1616.  
  1617. newpos = newpos + (dir.lookVector * inc)
  1618.  
  1619. if inc >= 20 then
  1620.  
  1621. inc = inc - 10
  1622.  
  1623. end
  1624.  
  1625. if hit ~= nil then
  1626.  
  1627. rangepos = 0
  1628.  
  1629. end
  1630.  
  1631. until rangepos <= 0
  1632.  
  1633. if hit ~= nil then
  1634.  
  1635. if hit.Parent:FindFirstChild("Humanoid") ~= nil then
  1636.  
  1637. hum = hit.Parent.Humanoid
  1638.  
  1639. tTorso=hit.Parent.Torso
  1640.  
  1641. Damagefunc2(hit,20,30)
  1642.  
  1643. --ADmg(hum,hit)
  1644.  
  1645. elseif hit.Parent.Parent ~= nil and hit.Parent.Parent:FindFirstChild("Humanoid") ~= nil then
  1646.  
  1647. hum = hit.Parent.Parent.Humanoid
  1648.  
  1649. tTorso=hit.Parent.Parent.Torso
  1650.  
  1651. Damagefunc2(hit.Parent.Parent.Torso,20,30)
  1652.  
  1653. --ADmg(hum,hit)
  1654.  
  1655. end
  1656.  
  1657. end
  1658.  
  1659. end))
  1660.  
  1661. end
  1662.  
  1663.  
  1664.  
  1665. function SSshoottrail(mouse,baseprt)
  1666.  
  1667. coroutine.resume(coroutine.create(function(v)
  1668.  
  1669. local spreadvector = (Vector3.new(math.random(-spread,spread),math.random(-spread,spread),math.random(-spread,spread))) * (baseprt.Position-MMouse.Hit.p).magnitude/100
  1670.  
  1671. local dir = CFrame.new((baseprt.Position+MMouse.Hit.p)/2,MMouse.Hit.p+spreadvector)
  1672.  
  1673. local hit,pos = rayCast(baseprt.Position,dir.lookVector,10,Character)
  1674.  
  1675. local rangepos = range
  1676.  
  1677. local function drawtrail(From,To)
  1678.  
  1679. local effectsmsh = Instance.new("CylinderMesh")
  1680.  
  1681. effectsmsh.Scale = Vector3.new(1,1,1)
  1682.  
  1683. effectsmsh.Name = "Mesh"
  1684.  
  1685. local effectsg = Instance.new("Part")
  1686.  
  1687. effectsg.formFactor = 3
  1688.  
  1689. effectsg.CanCollide = false
  1690.  
  1691. effectsg.Name = "Eff"
  1692.  
  1693. effectsg.Locked = true
  1694.  
  1695. effectsg.Anchored = true
  1696.  
  1697. effectsg.Size = Vector3.new(0.2,0.2,0.2)
  1698.  
  1699. effectsg.Parent = modelzorz
  1700.  
  1701. effectsmsh.Parent = effectsg
  1702.  
  1703. effectsg.BrickColor = BrickColor.new("White")
  1704.  
  1705. effectsg.Reflectance = 0.25
  1706.  
  1707. local LP = From
  1708.  
  1709. local point1 = To
  1710.  
  1711. local mg = (LP - point1).magnitude
  1712.  
  1713. effectsmsh.Scale = Vector3.new(2.5,mg*5,2.5)
  1714.  
  1715. effectsg.CFrame = CFrame.new((LP+point1)/2,point1) * CFrame.Angles(math.rad(90),0,0)
  1716.  
  1717. coroutine.resume(coroutine.create(function()
  1718.  
  1719. for i = 0 , 1 , 0.1 do
  1720.  
  1721. wait()
  1722.  
  1723. effectsg.Transparency = 1*i
  1724.  
  1725. effectsmsh.Scale = Vector3.new(2.5-2.5*i,mg*5,2.5-2.5*i)
  1726.  
  1727. end
  1728.  
  1729. effectsg.Parent = nil
  1730.  
  1731. end))
  1732.  
  1733. end
  1734.  
  1735. local newpos = baseprt.Position
  1736.  
  1737. local inc = rangepower
  1738.  
  1739. repeat
  1740.  
  1741. wait() wait()
  1742.  
  1743. rangepos = rangepos - 5
  1744.  
  1745. hit,pos = rayCast(newpos,dir.lookVector,inc,Character)
  1746.  
  1747. drawtrail(newpos,pos)
  1748.  
  1749. newpos = newpos + (dir.lookVector * inc)
  1750.  
  1751. dir = CFrame.new(pos,MMouse.Hit.p)
  1752.  
  1753. if hit ~= nil then
  1754.  
  1755. MagicCircle(BrickColor.new("White"),CFrame.new(pos),5,5,5,0,0,0,10,10,10)
  1756.  
  1757. if hit.Parent:FindFirstChild("Humanoid") ~= nil then
  1758.  
  1759. hum = hit.Parent.Humanoid
  1760.  
  1761. tTorso=hit.Parent.Torso
  1762.  
  1763. Damagefunc1(hit,60,100)
  1764.  
  1765. --ADmg(hum,hit)
  1766.  
  1767. elseif hit.Parent.Parent ~= nil and hit.Parent.Parent:FindFirstChild("Humanoid") ~= nil then
  1768.  
  1769. hum = hit.Parent.Parent.Humanoid
  1770.  
  1771. tTorso=hit.Parent.Parent.Torso
  1772.  
  1773. Damagefunc1(hit.Parent.Parent.Torso,60,100)
  1774.  
  1775. --ADmg(hum,hit)
  1776.  
  1777. end
  1778.  
  1779. end
  1780.  
  1781. until rangepos <= 0
  1782.  
  1783. end))
  1784.  
  1785. end
  1786.  
  1787.  
  1788.  
  1789. function ArrowIn()
  1790.  
  1791. attack=true
  1792.  
  1793. for i=0,1,0.2 do
  1794.  
  1795. wait()
  1796.  
  1797. RW.C0=cf(1.5, 0.5, 0) * euler(0.8-0.2*i,0,0)
  1798.  
  1799. RW.C1=cf(0, 0.5, 0) * euler(0,0.2,-0.2)
  1800.  
  1801. LW.C0=cf(-1.5, 0.5, 0) * euler(-0.6*i,0,-0.2+0.4*i)
  1802.  
  1803. LW.C1=cf(0, 0.5, 0) * euler(0,-1.57*i,0)
  1804.  
  1805. end
  1806.  
  1807. local arrow=part(3,modelzorz,0,0,BrickColor.new("White"),"Arrow",vt(1,1,1))
  1808.  
  1809. local arrowmsh=mesh("SpecialMesh",arrow,"FileMesh","http://www.roblox.com/asset/?id=15887356",vt(0,0,0),vt(1,1,2))
  1810.  
  1811. arrowmsh.TextureId="http://www.roblox.com/asset/?id=15886781"
  1812.  
  1813. local arrowwld=weld(arrow,arrow,LeftArm,euler(0,0,0)*cf(0,1,0))
  1814.  
  1815. for i=0,1,0.2 do
  1816.  
  1817. wait()
  1818.  
  1819. Torso.Neck.C0=necko*euler(0.3*i,0,0)
  1820.  
  1821. RW.C0=cf(1.5, 0.5, 0) * euler(0.6,0,0)
  1822.  
  1823. RW.C1=cf(0, 0.5, 0) * euler(0,0.2-0.2*i,-0.2+0.2*i)
  1824.  
  1825. LW.C0=cf(-1.5, 0.5, -0.2*i) * euler(-0.6+1.7*i,0,0.2)
  1826.  
  1827. LW.C1=cf(0, 0.5, 0) * euler(0,-1.57+3.14*i,0)
  1828.  
  1829. wld1.C0=euler(0.5+1.57,0,1.57*i)*cf(0,1,0)
  1830.  
  1831. arrowwld.C0=euler(0,0,1.57*i)*cf(0,1,-1*i)
  1832.  
  1833. end
  1834.  
  1835. arrowwld.Part1=prt4
  1836.  
  1837. arrowwld.C0=euler(3.14,0,0)*cf(0,-0.15,2.5)
  1838.  
  1839. for i=0,1,0.2 do
  1840.  
  1841. wait()
  1842.  
  1843. LW.C0=cf(-1.5+0.5*i, 0.5, -0.2-0.3*i) * euler(1.1-0.1*i,0,0.2+0.3*i)
  1844.  
  1845. LW.C1=cf(0, 0.5, 0) * euler(0,1.57,0)
  1846.  
  1847. arrowwld.C0=euler(3.14,0,0)*cf(0,-0.15,2.5-1.5*i)
  1848.  
  1849. wld15.C0=euler(0,0,0)*cf(0,-0.3,1.65-2*i)
  1850.  
  1851. end
  1852.  
  1853. coroutine.resume(coroutine.create(function()
  1854.  
  1855. wait()
  1856.  
  1857. while attack==true do
  1858.  
  1859. wait(0)
  1860.  
  1861. bg.Parent = Torso
  1862.  
  1863. local pos4 = vt(MMouse.Hit.p.x,Head.Position.Y,MMouse.Hit.p.z)
  1864.  
  1865. bg.cframe = cf(Torso.Position,pos4) * euler(0,1.57,0) * cf(0,0,0)
  1866.  
  1867. end
  1868.  
  1869. bg.Parent=nil
  1870.  
  1871. end))
  1872.  
  1873. for i=0,1,0.2 do
  1874.  
  1875. wait()
  1876.  
  1877. Torso.Neck.C0=necko*euler(0.3-0.3*i,0,-1.57*i)
  1878.  
  1879. RW.C0=cf(1.5, 0.5, 0) * euler(0.6-0.6*i,0,1.57*i)
  1880.  
  1881. RW.C1=cf(0, 0.5, 0) * euler(0,1.57*i,0)
  1882.  
  1883. LW.C0=cf(-1.5+0.5-0.5*i, 0.5, -0.5+0.5*i) * euler(1-1*i,0,0.5-0.7*i)
  1884.  
  1885. LW.C1=cf(0, 0.5, 0) * euler(0,1.57-1.57*i,0)
  1886.  
  1887. wld1.C0=euler(0.5+1.57,0,1.57-1.57*i)*cf(0,1,0)
  1888.  
  1889. end
  1890.  
  1891. while hold==true do
  1892.  
  1893. wait(0)
  1894.  
  1895. end
  1896.  
  1897. so("http://www.roblox.com/asset/?id=16211041",prt8,1,1)
  1898.  
  1899. arrow.Parent=nil
  1900.  
  1901. shoottrail(mouse,prt8)
  1902.  
  1903. wld15.C0=euler(0,0,0)*cf(0,-0.3,1.65)
  1904.  
  1905. for i=0,1,0.2 do
  1906.  
  1907. wait()
  1908.  
  1909. Torso.Neck.C0=necko*euler(0,0.2*i,-1.57)
  1910.  
  1911. RW.C0=cf(1.5, 0.5, 0) * euler(0,0,1.57+0.2*i)
  1912.  
  1913. end
  1914.  
  1915. for i=0,1,0.2 do
  1916.  
  1917. wait()
  1918.  
  1919. Torso.Neck.C0=necko*euler(0,0.2+0.1*i,-1.57)
  1920.  
  1921. RW.C0=cf(1.5, 0.5, 0) * euler(0,0,1.57+0.2+0.1*i)
  1922.  
  1923. end
  1924.  
  1925. attack=false
  1926.  
  1927. end
  1928.  
  1929.  
  1930.  
  1931. function ob1d(mouse)
  1932.  
  1933. if attack == true then return end
  1934.  
  1935. hold=true
  1936.  
  1937. ArrowIn()
  1938.  
  1939. end
  1940.  
  1941.  
  1942.  
  1943. function ob1u(mouse)
  1944.  
  1945. hold = false
  1946.  
  1947. repeat wait() until attack==false
  1948.  
  1949. for i=0,1,0.1 do
  1950.  
  1951. wait()
  1952.  
  1953. Torso.Neck.C0=necko*euler(0,0.3-0.3*i,-1.57+1.57*i)
  1954.  
  1955. RW.C0=cf(1.5, 0.5, 0) * euler(0.8*i,0,1.87-1.87*i)
  1956.  
  1957. RW.C1=cf(0, 0.5, 0) * euler(0,1.57-1.37*i,-0.2*i)
  1958.  
  1959. end
  1960.  
  1961. Torso.Neck.C0=necko
  1962.  
  1963. wld1.C0=euler(0.5+1.57,0,0)*cf(0,1,0)
  1964.  
  1965. wld15.C0=euler(0,0,0)*cf(0,-0.3,1.65)
  1966.  
  1967. RW.C0=cf(1.5, 0.5, 0) * euler(0.8,0,0)
  1968.  
  1969. RW.C1=cf(0, 0.5, 0) * euler(0,0.2,-0.2)
  1970.  
  1971. LW.C0=cf(-1.5, 0.5, 0) * euler(0,0,-0.2)
  1972.  
  1973. LW.C1=cf(0, 0.5, 0) * euler(0,0,0)
  1974.  
  1975. end
  1976.  
  1977.  
  1978.  
  1979. buttonhold = false
  1980.  
  1981.  
  1982.  
  1983. eul=0
  1984.  
  1985. function key(key)
  1986.  
  1987. if attack == true then return end
  1988.  
  1989. if key=="z" then
  1990.  
  1991. Melee()
  1992.  
  1993. end
  1994.  
  1995. if key=="x" then
  1996.  
  1997. TripleShot()
  1998.  
  1999. end
  2000.  
  2001. if key=="c" then
  2002.  
  2003. SpiritArrows()
  2004.  
  2005. end
  2006.  
  2007. if key=="v" and ssdebounce==false then
  2008.  
  2009. --ssdebounce=true
  2010.  
  2011. coroutine.resume(coroutine.create(function()
  2012.  
  2013. wait(30)
  2014.  
  2015. ssdebounce=false
  2016.  
  2017. end))
  2018.  
  2019. Decimate()
  2020.  
  2021. end
  2022.  
  2023. end
  2024.  
  2025.  
  2026.  
  2027. function key2(key)
  2028.  
  2029. if key=="c" or key=="v" then
  2030.  
  2031. holding=false
  2032.  
  2033. end
  2034.  
  2035. end
  2036.  
  2037.  
  2038.  
  2039. function s(mouse)
  2040.  
  2041. mouse.Button1Down:connect(function() ob1d(mouse) end)
  2042.  
  2043. mouse.Button1Up:connect(function() ob1u(mouse) end)
  2044.  
  2045. mouse.KeyDown:connect(key)
  2046.  
  2047. mouse.KeyUp:connect(key2)
  2048.  
  2049. unsheathed = true
  2050.  
  2051. player = Player
  2052.  
  2053. ch = Character
  2054.  
  2055. MMouse = mouse
  2056.  
  2057. RSH = ch.Torso["Right Shoulder"]
  2058.  
  2059. LSH = ch.Torso["Left Shoulder"]
  2060.  
  2061. --
  2062.  
  2063. RSH.Parent = nil
  2064.  
  2065. LSH.Parent = nil
  2066.  
  2067. --
  2068.  
  2069. RW.Part0 = ch.Torso
  2070.  
  2071. RW.C0 = CFrame.new(1.5, 0.5, 0) --* CFrame.fromEulerAnglesXYZ(1.3, 0, -0.5)
  2072.  
  2073. RW.C1 = CFrame.new(0, 0.5, 0)
  2074.  
  2075. RW.Part1 = ch["Right Arm"]
  2076.  
  2077. RW.Parent = ch.Torso
  2078.  
  2079. --_G.R = RW
  2080.  
  2081. --
  2082.  
  2083. LW.Part0 = ch.Torso
  2084.  
  2085. LW.C0 = CFrame.new(-1.5, 0.5, 0) --* CFrame.fromEulerAnglesXYZ(1.7, 0, 0.8)
  2086.  
  2087. LW.C1 = CFrame.new(0, 0.5, 0)
  2088.  
  2089. LW.Part1 = ch["Left Arm"]
  2090.  
  2091. LW.Parent = ch.Torso
  2092.  
  2093. --_G.L = LW
  2094.  
  2095. --
  2096.  
  2097. equipanim()
  2098.  
  2099. end
  2100.  
  2101.  
  2102.  
  2103. function ds(mouse)
  2104.  
  2105. hideanim()
  2106.  
  2107. wait(0)
  2108.  
  2109. RW.Parent = nil
  2110.  
  2111. LW.Parent = nil
  2112.  
  2113. RSH.Parent = player.Character.Torso
  2114.  
  2115. LSH.Parent = player.Character.Torso
  2116.  
  2117. end
  2118.  
  2119.  
  2120.  
  2121. Bin.Selected:connect(s)
  2122.  
  2123. Bin.Deselected:connect(ds)
  2124.  
  2125. print("Crossbow loaded.")
  2126.  
  2127. -- mediafire
  2128.  
  2129. --[[
  2130.  
  2131. Copyrighted (C) Fenrier 2013
  2132.  
  2133. ]]
Add Comment
Please, Sign In to add comment