Advertisement
SetsunaElysia

Fenrier Dual Blades

Jan 23rd, 2017
183
0
Never
Not a member of Pastebin yet? Sign Up, it unlocks many cool features!
text 27.70 KB | None | 0 0
  1.  
  2. Player = game:GetService("Players").LocalPlayer
  3. Character = Player.Character
  4. PlayerGui = Player.PlayerGui
  5. Backpack = Player.Backpack
  6. Torso = Character.Torso
  7. Head = Character.Head
  8. Humanoid = Character.Humanoid
  9. LeftArm = Character["Left Arm"]
  10. LeftLeg = Character["Left Leg"]
  11. RightArm = Character["Right Arm"]
  12. RightLeg = Character["Right Leg"]
  13. LS = Torso["Left Shoulder"]
  14. LH = Torso["Left Hip"]
  15. RS = Torso["Right Shoulder"]
  16. RH = Torso["Right Hip"]
  17. Neck = Torso.Neck
  18. it=Instance.new
  19. vt=Vector3.new
  20. cf=CFrame.new
  21. euler=CFrame.fromEulerAnglesXYZ
  22. angles=CFrame.Angles
  23. necko=cf(0, 1, 0, -1, -0, -0, 0, 0, 1, 0, 1, 0)
  24. necko2=cf(0, -0.5, 0, -1, -0, -0, 0, 0, 1, 0, 1, 0)
  25. attack = false
  26. attacktype = 1
  27. damage = 999999
  28. oridamage = 999999
  29. attackdebounce = false
  30. ssdebounce=false
  31. MMouse=nil
  32. combo=0
  33. --player
  34. player = nil
  35. --save shoulders
  36. RSH, LSH = nil, nil
  37. --welds
  38. RW, LW = Instance.new("Weld"), Instance.new("Weld")
  39. RW.Name="Right Shoulder" LW.Name="Left Shoulder"
  40.  
  41.  
  42. if Character:findFirstChild("Dual Swords",true) ~= nil then
  43. Character:findFirstChild("Dual Swords",true).Parent = nil
  44. end
  45.  
  46.  
  47. function part(formfactor,parent,reflectance,transparency,brickcolor,name,size)
  48. local fp = it("Part")
  49. fp.formFactor = formfactor
  50. fp.Parent = parent
  51. fp.Transparency = transparency
  52. fp.CanCollide = false
  53. fp.Locked=true
  54. fp.BrickColor = brickcolor
  55. fp.Name = name
  56. fp.Size = size
  57. fp.Position = Torso.Position
  58. fp.BottomSurface="Smooth"
  59. fp.TopSurface="Smooth"
  60. fp:BreakJoints()
  61. return fp
  62. end
  63.  
  64. function mesh(Mesh,part,meshtype,meshid,offset,scale)
  65. local mesh = it(Mesh)
  66. mesh.Parent = part
  67. if Mesh=="SpecialMesh" then
  68. mesh.MeshType = meshtype
  69. mesh.MeshId = meshid
  70. end
  71. mesh.Offset=offset
  72. mesh.Scale=scale
  73. return mesh
  74. end
  75.  
  76. function weld(parent,part0,part1,c0)
  77. local weld = it("Weld")
  78. weld.Parent = parent
  79. weld.Part0 = part0
  80. weld.Part1 = part1
  81. weld.C0 = c0
  82. return weld
  83. end
  84.  
  85. local modelzorz = Instance.new("Model")
  86. modelzorz.Parent = Character
  87. modelzorz.Name = "Dual Swords"
  88.  
  89. local prt1=part(3,modelzorz,0,0,BrickColor.new("Institutional white"),"Part1",vt(0.3,0.5,0.3))
  90. local prt2=part(3,modelzorz,0,0,BrickColor.new("Really black"),"Part2",vt(0.25,1.5,0.25))
  91. local prt4=part(3,modelzorz,0,0,BrickColor.new("Really black"),"Part4",vt(0.3,0.6,0.21))
  92. local prt5=part(3,modelzorz,0,0,BrickColor.new("Lapis"),"Part5",vt(0.25,0.6,0.16))
  93. local prt6=part(3,modelzorz,0.3,0,BrickColor.new("Institutional white"),"Part6",vt(0.25,3,0.16))
  94. local prt7=part(3,modelzorz,0.3,0,BrickColor.new("Institutional white"),"Part7",vt(0.1,0.5,0.25))
  95. local prt8=part(3,modelzorz,0,0,BrickColor.new("Really black"),"Part8",vt(0.2,1.5,0.2))
  96. local prt9=part(3,modelzorz,0,1,BrickColor.new("Really black"),"Hitbox",vt(0.5,4,0.5))
  97.  
  98. local msh1=mesh("BlockMesh",prt1,"","",vt(0,0,0),vt(1,1,1))
  99. local msh2=mesh("BlockMesh",prt2,"","",vt(0,0,0),vt(1,1,1))
  100. local msh4=mesh("BlockMesh",prt4,"","",vt(0,0,0),vt(1,1,1))
  101. local msh5=mesh("BlockMesh",prt5,"","",vt(0,0,0),vt(1,1,1))
  102. local msh6=mesh("BlockMesh",prt6,"","",vt(0,0,0),vt(1,1,0.25))
  103. local msh7=mesh("SpecialMesh",prt7,"Wedge","",vt(0,0,0),vt(0.25,1,1))
  104. local msh8=mesh("CylinderMesh",prt8,"","",vt(0,0,0),vt(1,1,1))
  105.  
  106. local wld1=weld(prt1,prt1,Torso,euler(0,0,0.785)*cf(1,0,-0.5))
  107. local wld2=weld(prt2,prt2,prt1,euler(0,0,0)*cf(0,0,0))
  108. local wld4=weld(prt4,prt4,prt2,euler(0,0,0)*cf(0,-1,0))
  109. local wld5=weld(prt5,prt5,prt4,euler(0,0,0)*cf(0,-0.01,0))
  110. local wld6=weld(prt6,prt6,prt4,euler(0,0,0)*cf(0,-1.5,0))
  111. local wld7=weld(prt7,prt7,prt6,euler(0,-1.57,0)*cf(0,-1.75,0))
  112. local wld8=weld(prt8,prt8,prt6,euler(0,0,0)*cf(0,0.5,0))
  113. local wld9=weld(prt9,prt9,prt6,euler(0,0,0)*cf(0,0,0))
  114.  
  115. local aprt1=part(3,modelzorz,0,0,BrickColor.new("Institutional white"),"aPart1",vt(0.3,0.5,0.3))
  116. local aprt2=part(3,modelzorz,0,0,BrickColor.new("Really black"),"aPart2",vt(0.25,1.5,0.25))
  117. local aprt4=part(3,modelzorz,0,0,BrickColor.new("Really black"),"aPart4",vt(0.3,0.6,0.21))
  118. local aprt5=part(3,modelzorz,0,0,BrickColor.new("Lapis"),"aPart5",vt(0.25,0.6,0.16))
  119. local aprt6=part(3,modelzorz,0.3,0,BrickColor.new("Institutional white"),"aPart6",vt(0.25,3,0.16))
  120. local aprt7=part(3,modelzorz,0.3,0,BrickColor.new("Institutional white"),"aPart7",vt(0.1,0.5,0.25))
  121. local aprt8=part(3,modelzorz,0,0,BrickColor.new("Really black"),"aPart8",vt(0.2,1.5,0.2))
  122. local aprt9=part(3,modelzorz,0,1,BrickColor.new("Really black"),"aHitbox",vt(0.5,4,0.5))
  123.  
  124. local amsh1=mesh("BlockMesh",aprt1,"","",vt(0,0,0),vt(1,1,1))
  125. local amsh2=mesh("BlockMesh",aprt2,"","",vt(0,0,0),vt(1,1,1))
  126. local amsh4=mesh("BlockMesh",aprt4,"","",vt(0,0,0),vt(1,1,1))
  127. local amsh5=mesh("BlockMesh",aprt5,"","",vt(0,0,0),vt(1,1,1))
  128. local amsh6=mesh("BlockMesh",aprt6,"","",vt(0,0,0),vt(1,1,0.25))
  129. local amsh7=mesh("SpecialMesh",aprt7,"Wedge","",vt(0,0,0),vt(0.25,1,1))
  130. local amsh8=mesh("CylinderMesh",aprt8,"","",vt(0,0,0),vt(1,1,1))
  131.  
  132. local awld1=weld(aprt1,aprt1,Torso,euler(0,0,0.785)*cf(-1,0,-0.5))
  133. local awld2=weld(aprt2,aprt2,aprt1,euler(3.14,3.14,0)*cf(0,0,0))
  134. local awld4=weld(aprt4,aprt4,aprt2,euler(0,0,0)*cf(0,-1,0))
  135. local awld5=weld(aprt5,aprt5,aprt4,euler(0,0,0)*cf(0,-0.01,0))
  136. local awld6=weld(aprt6,aprt6,aprt4,euler(0,0,0)*cf(0,-1.5,0))
  137. local awld7=weld(aprt7,aprt7,aprt6,euler(0,-1.57,0)*cf(0,-1.75,0))
  138. local awld8=weld(aprt8,aprt8,aprt6,euler(0,0,0)*cf(0,0.5,0))
  139. local awld9=weld(aprt9,aprt9,aprt6,euler(0,0,0)*cf(0,0,0))
  140.  
  141. numb=0
  142. numb2=0
  143. for i=1,8 do
  144. local prt3=part(3,modelzorz,0,0,BrickColor.new("Really black"),"Part3",vt(0.2,0.4,0.2))
  145. local msh3=mesh("BlockMesh",prt3,"","",vt(0,0,0),vt(1+numb2,1+numb2,1+numb2))
  146. local wld3=weld(prt3,prt3,prt2,cf(0.8,0,0)*euler(0,0,1.57-numb))
  147. local dprt3=part(3,modelzorz,0,0,BrickColor.new("Really black"),"Part3",vt(0.2,0.2,0.2))
  148. local dmsh3=mesh("BlockMesh",dprt3,"","",vt(0,0,0),vt(0.8+numb2,1.01+numb2,1+numb2))
  149. local dwld3=weld(dprt3,dprt3,prt3,euler(0,0,1.57)*cf(0.2,0,0))
  150.  
  151. local aprt3=part(3,modelzorz,0,0,BrickColor.new("Really black"),"Part3",vt(0.2,0.4,0.2))
  152. local amsh3=mesh("BlockMesh",aprt3,"","",vt(0,0,0),vt(1+numb2,1+numb2,1+numb2))
  153. local awld3=weld(aprt3,aprt3,aprt2,cf(0.8,0,0)*euler(0,0,1.57-numb))
  154. local daprt3=part(3,modelzorz,0,0,BrickColor.new("Really black"),"Part3",vt(0.2,0.2,0.2))
  155. local damsh3=mesh("BlockMesh",daprt3,"","",vt(0,0,0),vt(0.8+numb2,1.01+numb2,1+numb2))
  156. local dawld3=weld(daprt3,daprt3,aprt3,euler(0,0,1.57)*cf(0.2,0,0))
  157. numb2=numb2+0.01
  158. numb=numb+0.3925
  159. end
  160. if (script.Parent.className ~= "HopperBin") then
  161. Tool = Instance.new("HopperBin")
  162. Tool.Parent = Backpack
  163. Tool.Name = "Dual Swords"
  164. script.Parent = Tool
  165. end
  166. Bin = script.Parent
  167.  
  168. local bg = it("BodyGyro")
  169. bg.maxTorque = Vector3.new(4e+005,4e+005,4e+005)*math.huge
  170. bg.P = 20e+003
  171. bg.Parent = nil
  172.  
  173. so = function(id,par,vol,pit)
  174. coroutine.resume(coroutine.create(function()
  175. local sou = Instance.new("Sound",par or workspace)
  176. sou.Volume=vol
  177. sou.Pitch=pit or 1
  178. sou.SoundId=id
  179. wait()
  180. sou:play()
  181. wait(6)
  182. sou:Remove()
  183. end))
  184. end
  185.  
  186. function unequipweld()
  187. wld1.Part1=Torso
  188. wld1.C0=euler(0,0,0.785)*cf(1,0,-0.5)
  189. awld1.Part1=Torso
  190. awld1.C0=euler(0,0,0.785)*cf(-1,0,-0.5)
  191. end
  192.  
  193. function equipweld()
  194. wld1.Part1=RightArm
  195. wld1.C0=euler(1.57,0,-1.57)*cf(0,1,0)
  196. awld1.Part1=LeftArm
  197. awld1.C0=euler(-1.57,0,1.57)*cf(0,1,0)
  198. end
  199.  
  200. function hideanim()
  201. equipped=false
  202. wait(0.1)
  203. bg.Parent=nil
  204. unequipweld()
  205. end
  206.  
  207. function equipanim()
  208. equipped=true
  209. wait(0.1)
  210. equipweld()
  211. RW.C0=cf(1.5, 0.5, -0.25) * euler(1.5,0,0)
  212. RW.C1=cf(0, 0.5, 0) * euler(0,-0.6,0)
  213. LW.C0=cf(-1.5, 0.5, 0) * euler(1,0,0)
  214. LW.C1=cf(0, 0.5, 0) * euler(0,0.4,0)
  215. end
  216.  
  217. function rayCast(Pos, Dir, Max, Ignore) -- Origin Position , Direction, MaxDistance , IgnoreDescendants
  218. return game.Workspace:FindPartOnRay(Ray.new(Pos, Dir.unit * (Max or 999.999)), Ignore)
  219. end
  220.  
  221. function MagicCircle(brickcolor,cframe,x1,y1,z1,x2,y2,z2,x3,y3,z3)
  222. local prt=part(3,workspace,0,0,brickcolor,"Effect",vt(0.5,0.5,0.5))
  223. prt.Anchored=true
  224. prt.CFrame=cframe*cf(x2,y2,z2)
  225. local msh=mesh("SpecialMesh",prt,"Sphere","",vt(0,0,0),vt(x1,y1,z1))
  226. coroutine.resume(coroutine.create(function()
  227. for i=0,1,0.1 do
  228. wait()
  229. prt.CFrame=prt.CFrame
  230. prt.Transparency=i
  231. msh.Scale=msh.Scale+vt(x3,y3,z3)
  232. end
  233. prt.Parent=nil
  234. end))
  235. end
  236.  
  237. function SpecialEffect()
  238. local prt=part(3,workspace,1,0,BrickColor.new("Institutional white"),"Part",vt(1,1,1))
  239. prt.Anchored=true
  240. prt.CFrame=Torso.CFrame
  241. local msh=mesh("SpecialMesh",prt,"Sphere","",vt(0,0,0),vt(0.5,0.5,0.5))
  242. coroutine.resume(coroutine.create(function(Part,Mesh)
  243. for i=0,1,0.2 do
  244. wait(0)
  245. Part.Transparency=i
  246. Mesh.Scale=Mesh.Scale+vt(10,10,10)
  247. end
  248. prt.Parent=nil
  249. end),prt,msh)
  250. end
  251.  
  252. function effect(Color,Ref,LP,P1,returnn)
  253. local effectsmsh = Instance.new("BlockMesh")
  254. effectsmsh.Scale = Vector3.new(0.2,1,0.2)
  255. effectsmsh.Name = "Mesh"
  256. local effectsg = Instance.new("Part")
  257. effectsg.formFactor = 3
  258. effectsg.CanCollide = false
  259. effectsg.Name = "Eff"
  260. effectsg.Locked = true
  261. effectsg.Anchored = true
  262. effectsg.Size = Vector3.new(0.5,1,0.5)
  263. effectsg.Parent = workspace
  264. effectsmsh.Parent = effectsg
  265. effectsg.BrickColor = BrickColor.new(Color)
  266. effectsg.Reflectance = Ref
  267. local point1 = P1
  268. local mg = (LP.p - point1.p).magnitude
  269. effectsg.Size = Vector3.new(0.5,mg,0.5)
  270. effectsg.CFrame = CFrame.new((LP.p+point1.p)/2,point1.p) * CFrame.Angles(math.rad(90),0,0)
  271. if returnn then return effectsg end
  272. coroutine.resume(coroutine.create(function(Part,Mesh)
  273. if not returnn then
  274. for i = 0 , 1 , 0.05 do
  275. wait()
  276. Part.Transparency = 1*i
  277. Mesh.Scale = Vector3.new(0.2-0.2*i,1,0.2-0.2*i)
  278. end
  279. wait()
  280. Part.Parent = nil
  281. end
  282. end),effectsg,effectsmsh)
  283. end
  284.  
  285. Damagefunc1=function(hit,Damage,Knockback)
  286. if hit.Parent==nil then
  287. return
  288. end
  289. CPlayer=Bin
  290. h=hit.Parent:FindFirstChild("Humanoid")
  291. if h~=nil and hit.Parent.Name~=Character.Name and hit.Parent:FindFirstChild("Torso")~=nil then
  292. if attackdebounce == false then
  293. attackdebounce = true
  294. coroutine.resume(coroutine.create(function()
  295. wait(0.2)
  296. attackdebounce = false
  297. end))
  298. Damage=Damage
  299. --[[ if game.Players:GetPlayerFromCharacter(hit.Parent)~=nil then
  300. return
  301. end]]
  302. -- hs(hit,1.2)
  303. c=Instance.new("ObjectValue")
  304. c.Name="creator"
  305. c.Value=game.Players.LocalPlayer
  306. c.Parent=h
  307. game:GetService("Debris"):AddItem(c,.5)
  308. Damage=Damage+math.random(999999,999999)
  309. -- h:TakeDamage(Damage)
  310. blocked=false
  311. block=hit.Parent:findFirstChild("Block")
  312. if block~=nil then
  313. print("herp")
  314. if block.Value>0 then
  315. blocked=true
  316. block.Value=block.Value-1
  317. print(block.Value)
  318. end
  319. end
  320. if blocked==false then
  321. -- h:TakeDamage(Damage)
  322. h.Health=h.Health-Damage
  323. showDamage(hit.Parent,Damage,999999)
  324. else
  325. h:TakeDamage(1)
  326. showDamage(hit.Parent,1,999999)
  327. end
  328. vp=Instance.new("BodyVelocity")
  329. vp.P=500
  330. vp.maxForce=Vector3.new(math.huge,0,math.huge)
  331. -- vp.velocity=Character.Torso.CFrame.lookVector*Knockback
  332. vp.velocity=Torso.CFrame.lookVector*Knockback+Torso.Velocity/1.05
  333. if Knockback>0 then
  334. vp.Parent=hit.Parent.Torso
  335. end
  336. game:GetService("Debris"):AddItem(vp,.25)
  337. game:GetService("Debris"):AddItem(r,.5)
  338. c=Instance.new("ObjectValue")
  339. c.Name="creator"
  340. c.Value=Player
  341. c.Parent=h
  342. game:GetService("Debris"):AddItem(c,.5)
  343. CRIT=false
  344. hitDeb=true
  345. AttackPos=6
  346. end
  347. end
  348. end
  349.  
  350. Damagefunc2=function(hit,Damage,Knockback)
  351. if attackdebounce == false then
  352. attackdebounce = true
  353. coroutine.resume(coroutine.create(function()
  354. wait(0.1)
  355. attackdebounce = false
  356. end))
  357. if hit.Parent==nil then
  358. return
  359. end
  360. CPlayer=Bin
  361. blocked=false
  362. h=hit.Parent:FindFirstChild("Humanoid")
  363. if h~=nil and hit.Parent:FindFirstChild("Torso")~=nil then
  364. Damage=Damage
  365. c=it("ObjectValue")
  366. c.Name="creator"
  367. c.Value=game.Players.LocalPlayer
  368. c.Parent=h
  369. game:GetService("Debris"):AddItem(c,.5)
  370. -- print(c.Value)
  371. --[[ if math.random(0,99)+math.random()<=7.8 then
  372. CRIT=true
  373. Damage=Damage*2
  374. s=it("Sound")
  375. s.SoundId="http://www.roblox.com/asset/?id=2801263"
  376. s.Volume=1
  377. s.Pitch=2
  378. s.Parent=hit
  379. s.PlayOnRemove=true
  380. s.Parent=nil
  381.  
  382. end]]
  383. Damage=Damage+math.random(999999,999999)
  384. -- Blood(hit.CFrame*cf(math.random(-10,10)/10,math.random(-10,10)/10,0),math.floor(Damage/2))
  385. blocked=false
  386. block=hit.Parent:findFirstChild("Block")
  387. if block~=nil then
  388. print("herp")
  389. if block.Value>0 then
  390. blocked=true
  391. block.Value=block.Value-3
  392. print(block.Value)
  393. end
  394. end
  395. if blocked==false then
  396. -- h:TakeDamage(Damage)
  397. h.Health=h.Health-Damage
  398. showDamage(hit.Parent,Damage,999999)
  399. else
  400. h:TakeDamage(1)
  401. showDamage(hit.Parent,1,999999)
  402. end
  403. --if blocked==false then
  404. local angle = (hit.Position-(Torso.Position+Vector3.new(0,0,0))).unit
  405. print(angle)
  406. --hit.CFrame=CFrame.new(hit.Position,Vector3.new(angle.x,hit.Position.y,angle.z))*CFrame.fromEulerAnglesXYZ(math.pi/4,0,0)
  407. rl=Instance.new("BodyAngularVelocity")
  408. rl.P=3000
  409. rl.maxTorque=Vector3.new(500000,500000,500000)*50000000000000
  410. rl.angularvelocity=Vector3.new(math.random(-50,50),math.random(-50,50),math.random(-50,50))
  411. rl.Parent=hit
  412. coroutine.resume(coroutine.create(function(vel)
  413. wait(1)
  414. vel:Remove()
  415. end),rl)
  416. --end
  417. local bodyVelocity=Instance.new("BodyVelocity")
  418. bodyVelocity.velocity=angle*40+Vector3.new(0,0,0)
  419. bodyVelocity.P=5000
  420. bodyVelocity.maxForce=Vector3.new(8e+003, 8e+003, 8e+003)
  421. bodyVelocity.Parent=hit
  422. coroutine.resume(coroutine.create(function(Vel)
  423. wait(0.7)
  424. Vel:Remove()
  425. end),bodyVelocity)
  426. game:GetService("Debris"):AddItem(vp,1)
  427. c=it("ObjectValue")
  428. c.Name="creator"
  429. c.Value=Player
  430. c.Parent=h
  431. game:GetService("Debris"):AddItem(c,.5)
  432. CRIT=false
  433. hitDeb=true
  434. AttackPos=6
  435. end
  436. end
  437. end
  438.  
  439. showDamage=function(Char,Dealt,du)
  440. m=Instance.new("Model")
  441. m.Name=tostring(Dealt)
  442. h=Instance.new("Humanoid")
  443. h.Health=0
  444. h.MaxHealth=0
  445. h.Parent=m
  446. c=Instance.new("Part")
  447. c.Transparency=0
  448. c.BrickColor=BrickColor:Red()
  449. if CRIT==true then
  450. c.BrickColor=BrickColor.new("Really red")
  451. end
  452. c.Name="Head"
  453. c.TopSurface=0
  454. c.BottomSurface=0
  455. c.formFactor="Plate"
  456. c.Size=Vector3.new(1,.4,1)
  457. ms=Instance.new("CylinderMesh")
  458. ms.Scale=Vector3.new(.8,.8,.8)
  459. if CRIT==true then
  460. ms.Scale=Vector3.new(1,1.25,1)
  461. end
  462. ms.Parent=c
  463. c.Reflectance=0
  464. Instance.new("BodyGyro").Parent=c
  465. c.Parent=m
  466. c.CFrame=CFrame.new(Char["Head"].CFrame.p+Vector3.new(0,1.5,0))
  467. f=Instance.new("BodyPosition")
  468. f.P=2000
  469. f.D=100
  470. f.maxForce=Vector3.new(math.huge,math.huge,math.huge)
  471. f.position=c.Position+Vector3.new(0,3,0)
  472. f.Parent=c
  473. game:GetService("Debris"):AddItem(m,.5+du)
  474. c.CanCollide=false
  475. m.Parent=workspace
  476. c.CanCollide=false
  477. end
  478.  
  479. function oneslash()
  480. attack=true
  481. combo=1
  482. for i=0,1,0.1 do
  483. wait()
  484. RW.C0=cf(1.5, 0.5, -0.25+0.25*i) * euler(1.5+1*i,0,0)
  485. RW.C1=cf(0, 0.5, 0) * euler(0,-0.6+0.2*i,0)
  486. LW.C0=cf(-1.5, 0.5, 0) * euler(1+1.5*i,0,0)
  487. LW.C1=cf(0, 0.5, 0) * euler(0,0.4,0)
  488. end
  489. local LastPoint=prt6.CFrame*CFrame.new(0,prt6.Size.Y/1.5,0)
  490. local LastPoint2=aprt6.CFrame*CFrame.new(0,aprt6.Size.Y/1.5,0)
  491. so("http://roblox.com/asset/?id=10209640",LeftArm,1,1)
  492. so("http://roblox.com/asset/?id=10209640",RightArm,1,1)
  493. con1=prt9.Touched:connect(function(hit) Damagefunc1(hit,999999,999999) end)
  494. con2=aprt9.Touched:connect(function(hit) Damagefunc1(hit,999999,999999) end)
  495. for i=0,1,0.2 do
  496. wait()
  497. RW.C0=cf(1.5, 0.5, 0) * euler(2.5-3*i,0,0.6*i)
  498. LW.C0=cf(-1.5, 0.5, 0) * euler(2.5-3*i,0,-0.6*i)
  499. local Point=prt6.CFrame*CFrame.new(0,prt6.Size.Y/1.5,0)
  500. effect("Institutional white",0.5,LastPoint,Point)
  501. LastPoint=Point
  502. local Point2=aprt6.CFrame*CFrame.new(0,aprt6.Size.Y/1.5,0)
  503. effect("Institutional white",0.5,LastPoint2,Point2)
  504. LastPoint2=Point2
  505. end
  506. con1:disconnect()
  507. con2:disconnect()
  508. attack=false
  509. end
  510. function twoslash()
  511. attack=true
  512. combo=2
  513. for i=0,1,0.1 do
  514. wait()
  515. RW.C0=cf(1.5, 0.5, 0) * euler(-0.5+2.07*i,0,0.6-0.6*i)
  516. RW.C1=cf(0, 0.5, 0) * euler(0,-0.4-0.87*i,0)
  517. LW.C0=cf(-1.5, 0.5, 0) * euler(-0.5+2.07*i,0,-0.6+0.6*i)
  518. LW.C1=cf(0, 0.5, 0) * euler(0,0.4+1.37*i,0)
  519. end
  520. local LastPoint=prt6.CFrame*CFrame.new(0,prt6.Size.Y/1.5,0)
  521. local LastPoint2=aprt6.CFrame*CFrame.new(0,aprt6.Size.Y/1.5,0)
  522. so("http://roblox.com/asset/?id=10209640",LeftArm,1,1)
  523. so("http://roblox.com/asset/?id=10209640",RightArm,1,1)
  524. con1=prt9.Touched:connect(function(hit) Damagefunc1(hit,999999,999999) end)
  525. con2=aprt9.Touched:connect(function(hit) Damagefunc1(hit,999999,999999) end)
  526. for i=0,1,0.2 do
  527. wait()
  528. RW.C0=cf(1.5, 0.5, 0) * euler(1.57,0,2*i)
  529. RW.C1=cf(0, 0.5, 0) * euler(0,-1.27-0.3*i,0)
  530. LW.C0=cf(-1.5, 0.5, 0) * euler(1.57,0,-2*i)
  531. LW.C1=cf(0, 0.5, 0) * euler(0,1.77-0.2*i,0)
  532. local Point=prt6.CFrame*CFrame.new(0,prt6.Size.Y/1.5,0)
  533. effect("Institutional white",0.5,LastPoint,Point)
  534. LastPoint=Point
  535. local Point2=aprt6.CFrame*CFrame.new(0,aprt6.Size.Y/1.5,0)
  536. effect("Institutional white",0.5,LastPoint2,Point2)
  537. LastPoint2=Point2
  538. end
  539. con1:disconnect()
  540. con2:disconnect()
  541. attack=false
  542. end
  543. function threeslash()
  544. attack=true
  545. combo=3
  546. for i=0,1,0.1 do
  547. wait()
  548. RW.C0=cf(1.5-1.5*i, 0.5, -1*i) * euler(1.57,0,2-3*i)
  549. LW.C0=cf(-1.5, 0.5, 0) * euler(1.57+0.93*i,0,-2+2*i)
  550. LW.C1=cf(0, 0.5, 0) * euler(0,1.57-1.57*i,0)
  551. end
  552. local LastPoint=prt6.CFrame*CFrame.new(0,prt6.Size.Y/1.5,0)
  553. so("http://roblox.com/asset/?id=10209640",RightArm,1,1)
  554. con1=prt9.Touched:connect(function(hit) Damagefunc1(hit,999999,999999) end)
  555. for i=0,1,0.2 do
  556. wait()
  557. RW.C0=cf(1.5*i, 0.5, -1+1*i) * euler(1.57,0,-1+3*i)
  558. local Point=prt6.CFrame*CFrame.new(0,prt6.Size.Y/1.5,0)
  559. effect("Institutional white",0.5,LastPoint,Point)
  560. LastPoint=Point
  561. end
  562. con1:disconnect()
  563. local LastPoint2=aprt6.CFrame*CFrame.new(0,aprt6.Size.Y/1.5,0)
  564. so("http://roblox.com/asset/?id=10209640",LeftArm,1,1)
  565. con2=aprt9.Touched:connect(function(hit) Damagefunc1(hit,999999,999999) end)
  566. for i=0,1,0.2 do
  567. wait()
  568. LW.C0=cf(-1.5, 0.5, 0) * euler(2.5-3*i,0,0)
  569. local Point2=aprt6.CFrame*CFrame.new(0,aprt6.Size.Y/1.5,0)
  570. effect("Institutional white",0.5,LastPoint2,Point2)
  571. LastPoint2=Point2
  572. end
  573. con2:disconnect()
  574. attack=false
  575. end
  576.  
  577. function TornadoSlash()
  578. attack=true
  579. for i=0,1,0.1 do
  580. wait()
  581. RW.C0=cf(1.5, 0.5, -0.25+0.25*i) * euler(1.5+0.07*i,0,1.57*i)
  582. RW.C1=cf(0, 0.5, 0) * euler(0,-0.6+2.4*i,0)
  583. LW.C0=cf(-1.5, 0.5, 0) * euler(1+0.57*i,0,-1.57*i)
  584. LW.C1=cf(0, 0.5, 0) * euler(0,0.4+1.4*i,0)
  585. end
  586. bg.Parent=Torso
  587. bg.cframe=Torso.CFrame
  588. CF=Torso.CFrame
  589. local LastPoint=prt6.CFrame*CFrame.new(0,prt6.Size.Y/1.5,0)
  590. local LastPoint2=aprt6.CFrame*CFrame.new(0,aprt6.Size.Y/1.5,0)
  591. con1=prt9.Touched:connect(function(hit) Damagefunc1(hit,999999,999999) end)
  592. con2=aprt9.Touched:connect(function(hit) Damagefunc1(hit,999999,999999) end)
  593. for i=1,3 do
  594. so("http://roblox.com/asset/?id=10209640",LeftArm,1,1)
  595. so("http://roblox.com/asset/?id=10209640",RightArm,1,1)
  596. for i=0,1,0.1 do
  597. wait()
  598. bg.cframe=CF*euler(0,6.283*i,0)
  599. local Point=prt6.CFrame*CFrame.new(0,prt6.Size.Y/1.5,0)
  600. effect("Institutional white",0.5,LastPoint,Point)
  601. LastPoint=Point
  602. local Point2=aprt6.CFrame*CFrame.new(0,aprt6.Size.Y/1.5,0)
  603. effect("Institutional white",0.5,LastPoint2,Point2)
  604. LastPoint2=Point2
  605. end
  606. end
  607. con1:disconnect()
  608. con2:disconnect()
  609. bg.Parent=nil
  610. for i=0,1,0.1 do
  611. wait()
  612. RW.C0=cf(1.5, 0.5, 0) * euler(1.57,0,1.57-1.47*i)
  613. RW.C1=cf(0, 0.5, 0) * euler(0,1.8-2.5*i,0)
  614. LW.C0=cf(-1.5, 0.5, 0) * euler(1.57,0,-1.57+1.47*i)
  615. LW.C1=cf(0, 0.5, 0) * euler(0,1.8-1.1*i,0)
  616. end
  617. local LastPoint=prt6.CFrame*CFrame.new(0,prt6.Size.Y/1.5,0)
  618. local LastPoint2=aprt6.CFrame*CFrame.new(0,aprt6.Size.Y/1.5,0)
  619. so("http://roblox.com/asset/?id=10209640",LeftArm,1,1)
  620. so("http://roblox.com/asset/?id=10209640",RightArm,1,1)
  621. con1=prt9.Touched:connect(function(hit) Damagefunc1(hit,999999,999999) end)
  622. con2=aprt9.Touched:connect(function(hit) Damagefunc1(hit,999999,999999) end)
  623. for i=0,1,0.2 do
  624. wait()
  625. RW.C0=cf(1.5, 0.5, 0) * euler(1.57-2*i,0,0.1+1*i)
  626. LW.C0=cf(-1.5, 0.5, 0) * euler(1.57-2*i,0,-0.1-1*i)
  627. local Point=prt6.CFrame*CFrame.new(0,prt6.Size.Y/1.5,0)
  628. effect("Institutional white",0.5,LastPoint,Point)
  629. LastPoint=Point
  630. local Point2=aprt6.CFrame*CFrame.new(0,aprt6.Size.Y/1.5,0)
  631. effect("Institutional white",0.5,LastPoint2,Point2)
  632. LastPoint2=Point2
  633. end
  634. con1:disconnect()
  635. con2:disconnect()
  636. wait(0.1)
  637. for i=0,1,0.1 do
  638. wait()
  639. RW.C0=cf(1.5, 0.5, 0) * euler(-0.43+1.93*i,0,1.1-1.1*i)
  640. RW.C1=cf(0, 0.5, 0) * euler(0,-0.7+0.1*i,0)
  641. LW.C0=cf(-1.5, 0.5, 0) * euler(-0.43+1.43*i,0,-1.1+1.1*i)
  642. LW.C1=cf(0, 0.5, 0) * euler(0,0.7-0.3*i,0)
  643. end
  644. attack=false
  645. end
  646.  
  647. function MultiSpin()
  648. attack=true
  649. for i=0,1,0.1 do
  650. wait()
  651. RW.C0=cf(1.5, 0.5, -0.25+0.25*i) * euler(1.5+2*i,0,0)
  652. RW.C1=cf(0, 0.5, 0) * euler(0,-0.6+0.6*i,0)
  653. LW.C0=cf(-1.5, 0.5, 0) * euler(1+2.5*i,0,0)
  654. LW.C1=cf(0, 0.5, 0) * euler(0,0.4-0.4*i,0)
  655. end
  656. local LastPoint=prt6.CFrame*CFrame.new(0,prt6.Size.Y/1.5,0)
  657. local LastPoint2=aprt6.CFrame*CFrame.new(0,aprt6.Size.Y/1.5,0)
  658. so("http://roblox.com/asset/?id=10209640",LeftArm,1,1)
  659. so("http://roblox.com/asset/?id=10209640",RightArm,1,1)
  660. con1=prt9.Touched:connect(function(hit) Damagefunc1(hit,999999,999999) end)
  661. con2=aprt9.Touched:connect(function(hit) Damagefunc1(hit,999999,999999) end)
  662. --6.28
  663. for i=0,1.05,0.05 do
  664. wait()
  665. if i==0.35 or i==0.65 then
  666. so("http://roblox.com/asset/?id=10209640",LeftArm,1,1)
  667. so("http://roblox.com/asset/?id=10209640",RightArm,1,1)
  668. end
  669. wld1.C0=euler(1.57,(-6.28*3)*i,-1.57)*cf(0,1,0)
  670. awld1.C0=euler(-1.57,(6.28*3)*i,1.57)*cf(0,1,0)
  671. RW.C0=cf(1.5, 0.5, 0) * euler(3.5-4*i,0,0)
  672. LW.C0=cf(-1.5, 0.5, 0) * euler(3.5-4*i,0,0)
  673. local Point=prt6.CFrame*CFrame.new(0,prt6.Size.Y/1.5,0)
  674. effect("Institutional white",0.5,LastPoint,Point)
  675. LastPoint=Point
  676. local Point2=aprt6.CFrame*CFrame.new(0,aprt6.Size.Y/1.5,0)
  677. effect("Institutional white",0.5,LastPoint2,Point2)
  678. LastPoint2=Point2
  679. end
  680. con1:disconnect()
  681. con2:disconnect()
  682. for i=0,1,0.1 do
  683. wait()
  684. RW.C0=cf(1.5, 0.5, 0) * euler(-0.5+2*i,0,0)
  685. RW.C1=cf(0, 0.5, 0) * euler(0,-0.6*i,0)
  686. LW.C0=cf(-1.5, 0.5, 0) * euler(-0.5+1.5*i,0,0)
  687. LW.C1=cf(0, 0.5, 0) * euler(0,0.4*i,0)
  688. end
  689. attack=false
  690. end
  691.  
  692. function DashSlash()
  693. attack=true
  694. for i=0,1,0.1 do
  695. wait()
  696. RW.C0=cf(1.5, 0.5, -0.25+0.25*i) * euler(1.5-2*i,0,0.3*i)
  697. RW.C1=cf(0, 0.5, 0) * euler(0,-0.6+1.6*i,0)
  698. LW.C0=cf(-1.5, 0.5, 0) * euler(1-1.5*i,0,-0.3*i)
  699. LW.C1=cf(0, 0.5, 0) * euler(0,0.4-1.4*i,0)
  700. end
  701. local LastPoint=prt6.CFrame*CFrame.new(0,prt6.Size.Y/1.5,0)
  702. local LastPoint2=aprt6.CFrame*CFrame.new(0,aprt6.Size.Y/1.5,0)
  703. while holddash==true do
  704. wait()
  705. Humanoid.WalkSpeed=65
  706. local Point=prt6.CFrame*CFrame.new(0,prt6.Size.Y/1.5,0)
  707. effect("Institutional white",0.5,LastPoint,Point)
  708. LastPoint=Point
  709. local Point2=aprt6.CFrame*CFrame.new(0,aprt6.Size.Y/1.5,0)
  710. effect("Institutional white",0.5,LastPoint2,Point2)
  711. LastPoint2=Point2
  712. end
  713. Humanoid.WalkSpeed=32
  714. for i=0,1,0.1 do
  715. wait()
  716. RW.C0=cf(1.5, 0.5, -0.25*i) * euler(-0.5+2*i,0,0.3-0.3*i)
  717. RW.C1=cf(0, 0.5, 0) * euler(0,1-1.6*i,0)
  718. LW.C0=cf(-1.5, 0.5, 0) * euler(-0.5+1.5*i,0,-0.3+0.3*i)
  719. LW.C1=cf(0, 0.5, 0) * euler(0,-1+1.4*i,0)
  720. end
  721. attack=false
  722. end
  723.  
  724. function ChangeWeapon()
  725. attack=true
  726. for i=0,1,0.1 do
  727. wait()
  728. wld1.C0=euler(1.57,0.4*i,-1.57)*cf(0,1,0)
  729. awld1.C0=euler(-1.57,0.4*i,1.57-3.14*i)*cf(0,1,0)
  730. RW.C0=cf(1.5-0.5*i, 0.5, -0.25-0.25*i) * euler(1.5+0.07*i,0,-0.4*i)
  731. RW.C1=cf(0, 0.5, 0) * euler(0,-0.6+2.17*i,0)
  732. LW.C0=cf(-1.5+0.5*i, 0.5, -0.5*i) * euler(1+0.57*i,0,0.4*i)
  733. LW.C1=cf(0, 0.5, 0) * euler(0,0.4-1.97*i,0)
  734. end
  735. for i=0,1,0.1 do
  736. wait()
  737. wld1.C0=euler(1.57,0.4+0.2*i,-1.57)*cf(0,1,0)
  738. awld1.C0=euler(-1.57,0.4+0.2*i,-1.57)*cf(0,1,0)
  739. RW.C0=cf(1.5-0.5, 0.5, -0.5) * euler(1.57,0,-0.4-0.2*i)
  740. LW.C0=cf(-1.5+0.5, 0.5, -0.5) * euler(1.57,0,0.4+0.2*i)
  741. end
  742. awld1.Part1=prt1
  743. awld1.C0=cf(0,0,0)
  744. for i=0,1,0.1 do
  745. wait()
  746. wld1.C0=euler(1.57,0.6-0.6*i,-1.57)*cf(0,1,0)
  747. RW.C0=cf(1.5-0.5+0.5*i, 0.5, -0.5+0.5*i) * euler(1.57-0.57*i,0,-0.6)
  748. RW.C1=cf(0, 0.5, 0) * euler(0,1.57-1.57*i,0)
  749. LW.C0=cf(-1.5+0.5-0.5*i, 0.5, -0.5+0.5*i) * euler(1.57-1.57*i,0,0.6-0.4*i)
  750. LW.C1=cf(0, 0.5, 0) * euler(0,-1.57+1.57*i,0)
  751. end
  752. attack=false
  753. end
  754.  
  755. function ob1d(mouse)
  756. if attack == true then return end
  757. hold=true
  758. --attack=true
  759. if combo==0 then
  760. oneslash()
  761. elseif combo==1 then
  762. twoslash()
  763. elseif combo==2 then
  764. threeslash()
  765. end
  766. coroutine.resume(coroutine.create(function()
  767. wait(0.5)
  768. if attack==false then
  769. combo=0
  770. wld1.C0=euler(1.57,0,-1.57)*cf(0,1,0)
  771. awld1.C0=euler(-1.57,0,1.57)*cf(0,1,0)
  772. RW.C0=cf(1.5, 0.5, -0.25) * euler(1.5,0,0)
  773. RW.C1=cf(0, 0.5, 0) * euler(0,-0.6,0)
  774. LW.C0=cf(-1.5, 0.5, 0) * euler(1,0,0)
  775. LW.C1=cf(0, 0.5, 0) * euler(0,0.4,0)
  776. end
  777. end))
  778. end
  779.  
  780. function ob1u(mouse)
  781. hold = false
  782. end
  783.  
  784. buttonhold = false
  785.  
  786. eul=0
  787. holddash=false
  788. function key(key)
  789. if attack == true then return end
  790. if key=="z" then
  791. TornadoSlash()
  792. end
  793. if key=="x" then
  794. MultiSpin()
  795. end
  796. if key=="c" then
  797. holddash=true
  798. DashSlash()
  799. end
  800. if key=="v" then
  801. ChangeWeapon()
  802. end
  803. combo=0
  804. end
  805.  
  806. function key2(key)
  807. if key=="c" then
  808. holddash=false
  809. end
  810. end
  811.  
  812. function s(mouse)
  813. mouse.Button1Down:connect(function() ob1d(mouse) end)
  814. mouse.Button1Up:connect(function() ob1u(mouse) end)
  815. mouse.KeyDown:connect(key)
  816. mouse.KeyUp:connect(key2)
  817. unsheathed = true
  818. player = Player
  819. ch = Character
  820. MMouse = mouse
  821. RSH = ch.Torso["Right Shoulder"]
  822. LSH = ch.Torso["Left Shoulder"]
  823. --
  824. RSH.Parent = nil
  825. LSH.Parent = nil
  826. --
  827. RW.Part0 = ch.Torso
  828. RW.C0 = CFrame.new(1.5, 0.5, 0) --* CFrame.fromEulerAnglesXYZ(1.3, 0, -0.5)
  829. RW.C1 = CFrame.new(0, 0.5, 0)
  830. RW.Part1 = ch["Right Arm"]
  831. RW.Parent = ch.Torso
  832. --_G.R = RW
  833. --
  834. LW.Part0 = ch.Torso
  835. LW.C0 = CFrame.new(-1.5, 0.5, 0) --* CFrame.fromEulerAnglesXYZ(1.7, 0, 0.8)
  836. LW.C1 = CFrame.new(0, 0.5, 0)
  837. LW.Part1 = ch["Left Arm"]
  838. LW.Parent = ch.Torso
  839. --_G.L = LW
  840. --
  841. equipanim()
  842. end
  843.  
  844. function ds(mouse)
  845. hideanim()
  846. wait(0)
  847. RW.Parent = nil
  848. LW.Parent = nil
  849. RSH.Parent = player.Character.Torso
  850. LSH.Parent = player.Character.Torso
  851. end
  852.  
  853. Bin.Selected:connect(s)
  854. Bin.Deselected:connect(ds)
  855. print("Dual Swords loaded.")
Advertisement
Add Comment
Please, Sign In to add comment
Advertisement