Advertisement
xiaxiaokid

Untitled

Jul 21st, 2017
164
0
Never
Not a member of Pastebin yet? Sign Up, it unlocks many cool features!
  1. -- Objects
  2.  
  3. local Sword = Instance.new("Model")
  4. local Player = game.Players.LocalPlayer
  5. local Char = Player.Character
  6. local BaseAttachment = Instance.new("Attachment")
  7. local BladeAttackment = Instance.new("Attachment")
  8. local Blade = Instance.new("Part")
  9. local Mouse = Player:GetMouse()
  10. local Trail = Instance.new("Trail")
  11. local RunService = game:GetService("RunService")
  12. local Handle = Instance.new("Part")
  13. local HandleToBlade = Instance.new("Weld")
  14. local HandToTorso = Instance.new("Weld")
  15. local HandleToHand = Instance.new("Weld")
  16. local BladeToSharp = Instance.new("Weld")
  17. local Sharp = Instance.new("WedgePart")
  18. local Slash = false
  19. local Blood = Instance.new("Part")
  20. local BloodCont = Instance.new("Model")
  21. local Smoothner = Instance.new("BlockMesh")
  22. local Attacking = false
  23. local HitSound = Instance.new("Sound")
  24. local SlashSound = Instance.new("Sound")
  25. local CFrames =
  26. {
  27. t_HandToTorso =
  28. {
  29. BackClick = CFrame.new(-1.5, 1, 0) * CFrame.Angles(3.5, 0, 0),
  30. BackStab = CFrame.new(-1.5, 0.5, -0.5) * CFrame.Angles(1.5, 0, 0),
  31. FrontClick = CFrame.new(-1.5, 0, 0) * CFrame.Angles(0, 0, 0),
  32. FrontStab = CFrame.new(-1.5, 0.5, 0.5) * CFrame.Angles(-1.5, 0, 0)
  33. },
  34. t_HandleToHand =
  35. {
  36. BackClick = CFrame.new(0, 0, 0) * CFrame.Angles(-5, 0.2, 1),
  37. BackStab = CFrame.new(0, 0, 0) * CFrame.Angles(0.3, 0, 0),
  38. FrontClick = CFrame.new(0, 0, 0) * CFrame.Angles(1.5, 0, 0),
  39. FrontStab = CFrame.new(0, 0, 0) * CFrame.Angles(3, 0, 0)
  40. }
  41. }
  42.  
  43. -- Assets
  44.  
  45. game.ContentProvider:Preload("rbxassetid://196969716") -- Trail Texutre
  46. game.ContentProvider:Preload("rbxassetid://158037267") -- Slash Sound
  47. game.ContentProvider:Preload("rbxassetid://186311262") -- Hit Sound
  48.  
  49. -- Properties
  50.  
  51. Sword.Parent = Char
  52. Sword.Name = "Sword"
  53.  
  54. Handle.BrickColor = BrickColor.new("Dark orange")
  55. Handle.Material = "Marble"
  56. Handle.Name = "Handle"
  57. Handle.Anchored = false
  58. Handle.CanCollide = false
  59. Handle.Size = Vector3.new(0.1, 1, 0.35)
  60. Handle.BackSurface = "SmoothNoOutlines"
  61. Handle.BottomSurface = "SmoothNoOutlines"
  62. Handle.FrontSurface = "SmoothNoOutlines"
  63. Handle.LeftSurface = "SmoothNoOutlines"
  64. Handle.RightSurface = "SmoothNoOutlines"
  65. Handle.TopSurface = "SmoothNoOutlines"
  66.  
  67.  
  68. Blade.BrickColor = BrickColor.new("Toothpaste")
  69. Blade.Material = "Neon"
  70. Blade.Name = "Blade"
  71. Blade.Anchored = false
  72. Blade.CanCollide = false
  73. Blade.Size = Vector3.new(0.1, 4.84, 0.35)
  74. Blade.BackSurface = "SmoothNoOutlines"
  75. Blade.BottomSurface = "SmoothNoOutlines"
  76. Blade.FrontSurface = "SmoothNoOutlines"
  77. Blade.LeftSurface = "SmoothNoOutlines"
  78. Blade.RightSurface = "SmoothNoOutlines"
  79. Blade.TopSurface = "SmoothNoOutlines"
  80.  
  81. Sharp.BrickColor = BrickColor.new("Toothpaste")
  82. Sharp.Material = "Neon"
  83. Sharp.Name = "Sharp"
  84. Sharp.Anchored = false
  85. Sharp.CanCollide = false
  86. Sharp.Size = Vector3.new(0.1, 1, 0.35)
  87. Sharp.BackSurface = "SmoothNoOutlines"
  88. Sharp.BottomSurface = "SmoothNoOutlines"
  89. Sharp.FrontSurface = "SmoothNoOutlines"
  90. Sharp.LeftSurface = "SmoothNoOutlines"
  91. Sharp.RightSurface = "SmoothNoOutlines"
  92. Sharp.TopSurface = "SmoothNoOutlines"
  93.  
  94. Blood.BrickColor = BrickColor.new("Really red")
  95. Blood.Size = Vector3.new(0.5, 0.3, 0.6)
  96.  
  97. BloodCont.Name = "BloodCont"
  98.  
  99. Smoothner.Parent = Blood
  100.  
  101. BaseAttachment.Parent = Sharp
  102. BladeAttackment.Parent = Blade
  103.  
  104. Trail.Attachment0 = BaseAttachment
  105. Trail.Attachment1 = BladeAttackment
  106. Trail.Parent = Sharp
  107. Trail.Enabled = false
  108. Trail.Transparency = NumberSequence.new(0, 1)
  109. Trail.Texture = "rbxassetid://196969716"
  110. Trail.Lifetime = 0.15
  111.  
  112. SlashSound.Parent = Handle
  113. SlashSound.Name = "SlashSound"
  114. SlashSound.Volume = 0.4
  115. SlashSound.SoundId = "rbxassetid://158037267"
  116.  
  117. HitSound.Parent = Handle
  118. HitSound.Name = "HitSound"
  119. HitSound.Volume = 0.4
  120. HitSound.PlaybackSpeed = 2.4
  121. HitSound.SoundId = "rbxassetid://186311262"
  122.  
  123. -- Welds
  124.  
  125. HandleToBlade.Part0 = Handle
  126. HandleToBlade.C0 = CFrame.new(0, 2.92, 0)
  127. HandleToBlade.Part1 = Blade
  128. HandleToBlade.Name = "HandleToBlade"
  129. HandleToBlade.Parent = Handle
  130.  
  131. BladeToSharp.Part0 = Sharp
  132. BladeToSharp.C0 = CFrame.new(0, -2.92, 0)
  133. BladeToSharp.Part1 = Blade
  134. BladeToSharp.Parent = Handle
  135. BladeToSharp.Name = "BladeToSharp"
  136.  
  137. HandleToHand.Part0 = Handle
  138. HandleToHand.Name = "HandleToHand"
  139. HandleToHand.C0 = CFrame.Angles(1.5, 0, 0)
  140. HandleToHand.C1 = CFrame.new(0, -1, 0)
  141. HandleToHand.Part1 = Char["Right Arm"]
  142. HandleToHand.Parent = Handle
  143.  
  144. HandToTorso.Part0 = Char["Right Arm"]
  145. HandToTorso.Part1 = Char.Torso
  146. HandToTorso.Name = "HandToTorso"
  147. HandToTorso.Parent = Handle
  148. HandToTorso.C0 = CFrame.new(-1.5, 0, 0)
  149.  
  150. Handle.Parent = Sword
  151. Blade.Parent = Sword
  152. Sharp.Parent = Sword
  153.  
  154. -- Functions
  155.  
  156.  
  157. Mouse.Button1Down:Connect(function()
  158. if Slash == false then
  159. CFrames.t_HandleToHand.Back = CFrame.new(0, 0, 0) * CFrame.Angles(-5, math.random(-1, 1.2), 1)
  160. Trail.Enabled = true
  161. Slash = true
  162.  
  163. for Back = 0, 1, 0.05 do
  164. HandleToHand.C0 = HandleToHand.C0:lerp(CFrames.t_HandleToHand.BackClick, Back)
  165. HandToTorso.C0 = HandToTorso.C0:lerp(CFrames.t_HandToTorso.BackClick, Back)
  166. RunService.Stepped:wait()
  167. end
  168.  
  169. SlashSound:Play()
  170.  
  171. for Front = 0, 1, 0.1 do
  172. HandleToHand.C0 = HandleToHand.C0:lerp(CFrames.t_HandleToHand.FrontClick, Front)
  173. HandToTorso.C0 = HandToTorso.C0:lerp(CFrames.t_HandToTorso.FrontClick, Front)
  174. RunService.Stepped:wait()
  175. end
  176.  
  177. Slash = false
  178. Trail.Enabled = false
  179. end
  180. end)
  181.  
  182. Mouse.KeyDown:Connect(function(key)
  183. if key == "q" and Slash == false then
  184. Slash = true
  185. Trail.Enabled = true
  186.  
  187. for Back = 0, 1, 0.025 do
  188. HandleToHand.C0 = HandleToHand.C0:lerp(CFrames.t_HandleToHand.BackStab, Back)
  189. HandToTorso.C0 = HandToTorso.C0:lerp(CFrames.t_HandToTorso.BackStab, Back)
  190. RunService.Stepped:wait()
  191. end
  192.  
  193. SlashSound:Play()
  194.  
  195. for Front = 0, 1, 0.1 do
  196. HandleToHand.C0 = HandleToHand.C0:lerp(CFrames.t_HandleToHand.FrontStab, Front)
  197. HandToTorso.C0 = HandToTorso.C0:lerp(CFrames.t_HandToTorso.FrontStab, Front)
  198. RunService.Stepped:wait()
  199. end
  200.  
  201. for Def = 0, 1, 0.1 do
  202. HandleToHand.C0 = HandleToHand.C0:lerp(CFrames.t_HandleToHand.FrontClick, Def)
  203. HandToTorso.C0 = HandToTorso.C0:lerp(CFrames.t_HandToTorso.FrontClick, Def)
  204. RunService.Stepped:wait()
  205. end
  206.  
  207. Slash = false
  208. Trail.Enabled = false
  209. end
  210. end)
  211.  
  212. Blade.Touched:Connect(function(hit)
  213. if Slash == true and hit.Parent:FindFirstChild("Humanoid") and hit.Parent ~= game.Players.LocalPlayer.Character and Attacking == false then
  214. hit.Parent.Humanoid:TakeDamage(math.random(10, 20))
  215. Handle.HitSound.Playing = true
  216. Attacking = true
  217. BloodCont.Parent = hit.Parent.Torso
  218. for i = 1, math.random(4, 7) do
  219. local CBlood = Blood:Clone()
  220. CBlood.Parent = BloodCont
  221. CBlood.CFrame = hit.Parent.Torso.CFrame
  222. end
  223. wait(0.5)
  224. BloodCont:Remove()
  225. Attacking = false
  226. end
  227. end)
Advertisement
Add Comment
Please, Sign In to add comment
Advertisement