Advertisement
swagergod

oni0n sword

Aug 25th, 2015
141
0
Never
Not a member of Pastebin yet? Sign Up, it unlocks many cool features!
text 27.10 KB | None | 0 0
  1. Lerp = function(a, b, c)
  2. return a + (b - a) * c
  3. end
  4.  
  5. clerp = CFrame.new().lerp -- <3 from ponda
  6.  
  7.  
  8. -----------------------VARIABLES-----------------------------------------------------------------
  9.  
  10. local Player = game.Players.LocalPlayer
  11. Character = Player.Character
  12. Torso = Character.Torso
  13. local Mouse = Player:GetMouse()
  14. RightArm = Character["Right Arm"]
  15. LeftArm = Character["Left Arm"]
  16. RightLeg = Character["Right Leg"]
  17. LeftLeg = Character["Left Leg"]
  18. Head = Character.Head
  19. Neck = Torso.Neck
  20. Neck.Part0 = nil
  21. RightSH = Torso["Right Shoulder"]
  22. RightSH.Part0 = nil
  23. LeftSH = Torso["Left Shoulder"]
  24. LeftSH.Part0 = nil
  25. RightHip = Torso["Right Hip"]
  26. RightHip.Part0 = nil
  27. LeftHip = Torso["Left Hip"]
  28. LeftHip.Part0 = nil
  29. Humanoid = Character.Humanoid
  30. HumanoidRP = Humanoid.Torso
  31. sprinting = false
  32. animPlaying = false
  33. game.Lighting.Outlines = false
  34.  
  35. if Character:FindFirstChild("Animate") then
  36. Character.Animate:Destroy()
  37. end
  38.  
  39. function Snap(p0, p1, c0) -- c0
  40. local joint = Instance.new("Snap", Torso)
  41. joint.Part0 = p0
  42. joint.Part1 = p1
  43. joint.C0 = c0 -- c0
  44. return joint
  45. end
  46.  
  47. function Weld(p0, p1, c0) -- c0
  48. local joint = Instance.new("Snap", Torso)
  49. joint.Part0 = p0
  50. joint.Part1 = p1
  51. joint.C0 = c0 -- c0
  52. return joint
  53. end
  54.  
  55. function genPart(name, anchored, cancollide, brickcolor, material, formfactor, topsur, bottomsur, size)
  56. Part = Instance.new("Part", SwordModel)
  57. Part.Name = name
  58. Part.Anchored = anchored or false
  59. Part.CanCollide = cancollide or false
  60. Part.BrickColor = BrickColor.new(brickcolor)
  61. Part.Material = material
  62. Part.FormFactor = formfactor or "Custom"
  63. Part.TopSurface = topsur or "Smooth"
  64. Part.BottomSurface = bottomsur or "Smooth"
  65. Part.Size = size or Vector3.new
  66. return genPart
  67. end
  68.  
  69. RARM = Snap(Torso, RightArm, CFrame.new(1.5, 0.1, -0.5))
  70. LARM = Snap(Torso, LeftArm, CFrame.new(-1.5, 0.5, 0))
  71. HEAD = Snap(Torso, Head, CFrame.new(0, 1.5, 0) * CFrame.fromEulerAnglesXYZ(-0.25, -0.35, 0))
  72. ROOTPART = Snap(Torso, HumanoidRP, CFrame.new(0, 0, 0)) -- Angle Torso
  73. RLEG = Snap(Torso, RightLeg, CFrame.new(0.5, -2, 0) * CFrame.fromEulerAnglesXYZ(0, 0, 0))
  74. LLEG = Snap(Torso, LeftLeg, CFrame.new(-0.5, -1, -0.7) * CFrame.fromEulerAnglesXYZ(-0.4, -0.3, 0.6))
  75.  
  76. local sine = 0
  77.  
  78. local lasttick = tick();
  79.  
  80. ----------------------------------------------------------------------------------------
  81.  
  82. --[[TO DO'S
  83.  
  84. 1. Change LLEG's tilt to look more detailed <y>
  85. 2. Edit jump/fall animations to look more effective <n>
  86. 3. Move leg's C0 a bit so that it looks more detailed <n>
  87. 4. Angle Torso in the standing animations
  88. 5. Tilt Head in sprint animation <y>
  89.  
  90. ]]--
  91.  
  92. --//-- SWORD --//-
  93.  
  94. -- KEEP IN MIND (name, anchored, cancollide, brickcolor, material, formfactor, topsur, bottomsur, size)
  95. -- (name, parent, scale)
  96.  
  97. local SwordModel = Instance.new("Model", Character)
  98.  
  99.  
  100. -- MAIN HANDLE --
  101. Handle = Instance.new("Part", SwordModel)
  102. Handle.CanCollide = false
  103. Handle.Anchored = false
  104. Handle.FormFactor = "Custom"
  105. Handle.Size = Vector3.new(1, 1, 1)
  106. Handle.TopSurface = "Smooth"
  107. Handle.BottomSurface = "Smooth"
  108. Weld(Handle, RightArm, CFrame.new(0.95, 0, 0) * CFrame.fromEulerAnglesXYZ(0, 0, 180.5))
  109. HandleMesh = Instance.new("CylinderMesh", Handle)
  110. HandleMesh.Scale = Vector3.new(0.4, 1.4, 0.4)
  111.  
  112. HandleG = Instance.new("Part", SwordModel)
  113. HandleG.CanCollide = false
  114. HandleG.Anchored = false
  115. HandleG.FormFactor = "Custom"
  116. HandleG.Size = Vector3.new(1, 1, 1)
  117. HandleG.TopSurface = "Smooth"
  118. HandleG.BottomSurface = "Smooth"
  119. Weld(HandleG, Handle, CFrame.new(0, 0.56, 0) * CFrame.fromEulerAnglesXYZ(0, 0, 0))
  120. HandleGMesh = Instance.new("CylinderMesh", HandleG)
  121. HandleGMesh.Scale = Vector3.new(0.435, 0.2, 0.435)
  122.  
  123. HandleG1 = Instance.new("Part", SwordModel)
  124. HandleG1.CanCollide = false
  125. HandleG1.Anchored = false
  126. HandleG1.FormFactor = "Custom"
  127. HandleG1.Size = Vector3.new(1, 1, 1)
  128. HandleG1.TopSurface = "Smooth"
  129. HandleG1.BottomSurface = "Smooth"
  130. Weld(HandleG1, Handle, CFrame.new(0, 0.31, 0) * CFrame.fromEulerAnglesXYZ(0, 0, 0))
  131. HandleG1Mesh = Instance.new("CylinderMesh", HandleG1)
  132. HandleG1Mesh.Scale = Vector3.new(0.435, 0.25, 0.435)
  133.  
  134. gDec1 = Instance.new("Part", SwordModel)
  135. gDec1.CanCollide = false
  136. gDec1.Anchored = false
  137. gDec1.FormFactor = "Custom"
  138. gDec1.Size = Vector3.new(1, 1, 1)
  139. gDec1.TopSurface = "Smooth"
  140. gDec1.BottomSurface = "Smooth"
  141. gDec1.BrickColor = BrickColor.new("Navy blue")
  142. gDec1.Material = "Plastic"
  143. Weld(gDec1, HandleG1, CFrame.new(0, 0, 0))
  144. gDec1Mesh = Instance.new("CylinderMesh", gDec1)
  145. gDec1Mesh.Scale = Vector3.new(0.44, 0.05, 0.44)
  146.  
  147. HandleG2 = Instance.new("Part", SwordModel)
  148. HandleG2.CanCollide = false
  149. HandleG2.Anchored = false
  150. HandleG2.FormFactor = "Custom"
  151. HandleG2.Size = Vector3.new(1, 1, 1)
  152. HandleG2.TopSurface = "Smooth"
  153. HandleG2.BottomSurface = "Smooth"
  154. Weld(HandleG2, Handle, CFrame.new(0, 0.04, 0) * CFrame.fromEulerAnglesXYZ(0, 0, 0))
  155. HandleG2Mesh = Instance.new("CylinderMesh", HandleG2)
  156. HandleG2Mesh.Scale = Vector3.new(0.435, 0.25, 0.435)
  157.  
  158. gDec2 = Instance.new("Part", SwordModel)
  159. gDec2.CanCollide = false
  160. gDec2.Anchored = false
  161. gDec2.FormFactor = "Custom"
  162. gDec2.Size = Vector3.new(1, 1, 1)
  163. gDec2.TopSurface = "Smooth"
  164. gDec2.BottomSurface = "Smooth"
  165. gDec2.BrickColor = BrickColor.new("Navy blue")
  166. gDec2.Material = "Plastic"
  167. Weld(gDec2, HandleG2, CFrame.new(0, 0, 0))
  168. gDec2Mesh = Instance.new("CylinderMesh", gDec2)
  169. gDec2Mesh.Scale = Vector3.new(0.44, 0.05, 0.44)
  170.  
  171.  
  172. HandleG3 = Instance.new("Part", SwordModel)
  173. HandleG3.CanCollide = false
  174. HandleG3.Anchored = false
  175. HandleG3.FormFactor = "Custom"
  176. HandleG3.Size = Vector3.new(1, 1, 1)
  177. HandleG3.TopSurface = "Smooth"
  178. HandleG3.BottomSurface = "Smooth"
  179. Weld(HandleG3, Handle, CFrame.new(0, -0.23, 0) * CFrame.fromEulerAnglesXYZ(0, 0, 0))
  180. HandleG3Mesh = Instance.new("CylinderMesh", HandleG3)
  181. HandleG3Mesh.Scale = Vector3.new(0.435, 0.25, 0.435)
  182.  
  183. gDec3 = Instance.new("Part", SwordModel)
  184. gDec3.CanCollide = false
  185. gDec3.Anchored = false
  186. gDec3.FormFactor = "Custom"
  187. gDec3.Size = Vector3.new(1, 1, 1)
  188. gDec3.TopSurface = "Smooth"
  189. gDec3.BottomSurface = "Smooth"
  190. gDec3.BrickColor = BrickColor.new("Navy blue")
  191. gDec3.Material = "Plastic"
  192. Weld(gDec3, HandleG3, CFrame.new(0, 0, 0))
  193. gDec3Mesh = Instance.new("CylinderMesh", gDec3)
  194. gDec3Mesh.Scale = Vector3.new(0.44, 0.05, 0.44)
  195.  
  196. HandleG4 = Instance.new("Part", SwordModel)
  197. HandleG4.CanCollide = false
  198. HandleG4.Anchored = false
  199. HandleG4.FormFactor = "Custom"
  200. HandleG4.Size = Vector3.new(1, 1, 1)
  201. HandleG4.TopSurface = "Smooth"
  202. HandleG4.BottomSurface = "Smooth"
  203. Weld(HandleG4, Handle, CFrame.new(0, -0.5, 0) * CFrame.fromEulerAnglesXYZ(0, 0, 0))
  204. HandleG4Mesh = Instance.new("CylinderMesh", HandleG4)
  205. HandleG4Mesh.Scale = Vector3.new(0.435, 0.25, 0.435)
  206.  
  207. gDec4 = Instance.new("Part", SwordModel)
  208. gDec4.CanCollide = false
  209. gDec4.Anchored = false
  210. gDec4.FormFactor = "Custom"
  211. gDec4.Size = Vector3.new(1, 1, 1)
  212. gDec4.TopSurface = "Smooth"
  213. gDec4.BottomSurface = "Smooth"
  214. gDec4.BrickColor = BrickColor.new("Navy blue")
  215. gDec4.Material = "Plastic"
  216. Weld(gDec4, HandleG4, CFrame.new(0, 0, 0))
  217. gDec4Mesh = Instance.new("CylinderMesh", gDec4)
  218. gDec4Mesh.Scale = Vector3.new(0.44, 0.05, 0.44)
  219.  
  220. -- POMMEL PARTS --
  221.  
  222. Handle2 = Instance.new("Part", SwordModel)
  223. Handle2.CanCollide = false
  224. Handle2.Anchored = false
  225. Handle2.FormFactor = "Custom"
  226. Handle2.Size = Vector3.new(1, 1, 1)
  227. Handle2.TopSurface = "Smooth"
  228. Handle2.BottomSurface = "Smooth"
  229. Weld(Handle2, Handle, CFrame.new(0, -0.15, 0) * CFrame.fromEulerAnglesXYZ(0, 0, 0))
  230. Handle2Mesh = Instance.new("CylinderMesh", Handle2)
  231. Handle2Mesh.Scale = Vector3.new(0.35, 1.3, 0.35)
  232.  
  233. Handle3 = Instance.new("Part", SwordModel)
  234. Handle3.CanCollide = false
  235. Handle3.Anchored = false
  236. Handle3.FormFactor = "Custom"
  237. Handle3.Size = Vector3.new(1, 1, 1)
  238. Handle3.TopSurface = "Smooth"
  239. Handle3.BottomSurface = "Smooth"
  240. Handle3.BrickColor = BrickColor.new("Really black")
  241. Weld(Handle3, Handle, CFrame.new(0, -0.25, 0) * CFrame.fromEulerAnglesXYZ(0, 0, 0))
  242. Handle3Mesh = Instance.new("CylinderMesh", Handle3)
  243. Handle3Mesh.Scale = Vector3.new(0.3, 1.3, 0.3)
  244.  
  245. Connector = Instance.new("Part", SwordModel)
  246. Connector.CanCollide = false
  247. Connector.Anchored = false
  248. Connector.FormFactor = "Custom"
  249. Connector.Size = Vector3.new(1, 1, 1)
  250. Connector.TopSurface = "Smooth"
  251. Connector.BottomSurface = "Smooth"
  252. Connector.BrickColor = BrickColor.new("Really black")
  253. Weld(Connector, Handle, CFrame.new(0, -0.9, 0) *CFrame.fromEulerAnglesXYZ(0, 0, 0))
  254. ConM = Instance.new("SpecialMesh", Connector)
  255. ConM.MeshType = "Sphere"
  256. ConM.Scale = Vector3.new(0.3, 0.3, 0.3)
  257.  
  258. Connector2 = Instance.new("Part", SwordModel)
  259. Connector2.CanCollide = false
  260. Connector2.Anchored = false
  261. Connector2.FormFactor = "Custom"
  262. Connector2.Size = Vector3.new(1, 1, 1)
  263. Connector2.TopSurface = "Smooth"
  264. Connector2.BottomSurface = "Smooth"
  265. Connector2.BrickColor = BrickColor.new("Really black")
  266. Weld(Connector2, Connector, CFrame.new(0, -0.9, 0) *CFrame.fromEulerAnglesXYZ(0, 0, 0))
  267. ConM2 = Instance.new("SpecialMesh", Connector2)
  268. ConM2.MeshType = "Sphere"
  269. ConM2.Scale = Vector3.new(0.3, 0.3, 0.3)
  270.  
  271. Cone = Instance.new("Part", SwordModel)
  272. Cone.CanCollide = false
  273. Cone.Anchored = false
  274. Cone.FormFactor = "Custom"
  275. Cone.Size = Vector3.new(1, 1, 1)
  276. Cone.TopSurface = "Smooth"
  277. Cone.BottomSurface = "Smooth"
  278. Cone.BrickColor = BrickColor.new("Really black")
  279. Weld(Cone, Connector2, CFrame.new(0, -0.39, 0) *CFrame.fromEulerAnglesXYZ(0, 0, 0))
  280. ConM2 = Instance.new("FileMesh", Cone)
  281. ConM2.MeshId = "http://www.roblox.com/asset/?id=1033714"
  282. ConM2.Scale = Vector3.new(0.15, 1, 0.15)
  283.  
  284.  
  285.  
  286. -- POMMEL --
  287.  
  288. Pommel = Instance.new("Part", SwordModel)
  289. Pommel.CanCollide = false
  290. Pommel.Anchored = false
  291. Pommel.FormFactor = "Custom"
  292. Pommel.Size = Vector3.new(1, 1, 1)
  293. Pommel.TopSurface = "Smooth"
  294. Pommel.BottomSurface = "Smooth"
  295. Weld(Pommel, Handle, CFrame.new(0, -1.35, 0) * CFrame.fromEulerAnglesXYZ(0, 0, 0))
  296. PommelMesh = Instance.new("FileMesh", Pommel)
  297. PommelMesh.MeshId = "http://www.roblox.com/asset/?id=3270017"
  298. PommelMesh.Scale = Vector3.new(0.9, 0.9, 0.9)
  299.  
  300. Cone2 = Instance.new("Part", SwordModel)
  301. Cone2.CanCollide = false
  302. Cone2.Anchored = false
  303. Cone2.FormFactor = "Custom"
  304. Cone2.Size = Vector3.new(1, 1, 1)
  305. Cone2.TopSurface = "Smooth"
  306. Cone2.BottomSurface = "Smooth"
  307. Cone2.BrickColor = BrickColor.new("Really black")
  308. Weld(Cone2, Pommel, CFrame.new(0, -0.65, 0) *CFrame.fromEulerAnglesXYZ(0, 0, math.rad(-40)))
  309. Con2M2 = Instance.new("FileMesh", Cone2)
  310. Con2M2.MeshId = "http://www.roblox.com/asset/?id=1033714"
  311. Con2M2.Scale = Vector3.new(0.06, 0.6, 0.06)
  312.  
  313. Cone3 = Instance.new("Part", SwordModel)
  314. Cone3.CanCollide = false
  315. Cone3.Anchored = false
  316. Cone3.FormFactor = "Custom"
  317. Cone3.Size = Vector3.new(1, 1, 1)
  318. Cone3.TopSurface = "Smooth"
  319. Cone3.BottomSurface = "Smooth"
  320. Cone3.BrickColor = BrickColor.new("Really black")
  321. Weld(Cone3, Pommel, CFrame.new(0, -0.65, 0) *CFrame.fromEulerAnglesXYZ(0, 0, math.rad(40)))
  322. Con3M2 = Instance.new("FileMesh", Cone3)
  323. Con3M2.MeshId = "http://www.roblox.com/asset/?id=1033714"
  324. Con3M2.Scale = Vector3.new(0.06, 0.6, 0.06)
  325.  
  326. Cone4 = Instance.new("Part", SwordModel)
  327. Cone4.CanCollide = false
  328. Cone4.Anchored = false
  329. Cone4.FormFactor = "Custom"
  330. Cone4.Size = Vector3.new(1, 1, 1)
  331. Cone4.TopSurface = "Smooth"
  332. Cone4.BottomSurface = "Smooth"
  333. Cone4.BrickColor = BrickColor.new("Really black")
  334. Weld(Cone4, Pommel, CFrame.new(0, -0.65, 0) *CFrame.fromEulerAnglesXYZ(0, 0, math.rad(-80)))
  335. Con4M2 = Instance.new("FileMesh", Cone4)
  336. Con4M2.MeshId = "http://www.roblox.com/asset/?id=1033714"
  337. Con4M2.Scale = Vector3.new(0.06, 0.6, 0.06)
  338.  
  339. Cone5 = Instance.new("Part", SwordModel)
  340. Cone5.CanCollide = false
  341. Cone5.Anchored = false
  342. Cone5.FormFactor = "Custom"
  343. Cone5.Size = Vector3.new(1, 1, 1)
  344. Cone5.TopSurface = "Smooth"
  345. Cone5.BottomSurface = "Smooth"
  346. Cone5.BrickColor = BrickColor.new("Really black")
  347. Weld(Cone5, Pommel, CFrame.new(0, -0.65, 0) *CFrame.fromEulerAnglesXYZ(0, 0, math.rad(80)))
  348. Con5M2 = Instance.new("FileMesh", Cone5)
  349. Con5M2.MeshId = "http://www.roblox.com/asset/?id=1033714"
  350. Con5M2.Scale = Vector3.new(0.06, 0.6, 0.06)
  351.  
  352. Cone6 = Instance.new("Part", SwordModel)
  353. Cone6.CanCollide = false
  354. Cone6.Anchored = false
  355. Cone6.FormFactor = "Custom"
  356. Cone6.Size = Vector3.new(1, 1, 1)
  357. Cone6.TopSurface = "Smooth"
  358. Cone6.BottomSurface = "Smooth"
  359. Cone6.BrickColor = BrickColor.new("Really black")
  360. Weld(Cone6, Pommel, CFrame.new(0, -0.65, 0) *CFrame.fromEulerAnglesXYZ(0, 0, math.rad(-120)))
  361. Con4M2 = Instance.new("FileMesh", Cone6)
  362. Con4M2.MeshId = "http://www.roblox.com/asset/?id=1033714"
  363. Con4M2.Scale = Vector3.new(0.06, 0.6, 0.06)
  364.  
  365. Cone7 = Instance.new("Part", SwordModel)
  366. Cone7.CanCollide = false
  367. Cone7.Anchored = false
  368. Cone7.FormFactor = "Custom"
  369. Cone7.Size = Vector3.new(1, 1, 1)
  370. Cone7.TopSurface = "Smooth"
  371. Cone7.BottomSurface = "Smooth"
  372. Cone7.BrickColor = BrickColor.new("Really black")
  373. Weld(Cone7, Pommel, CFrame.new(0, -0.65, 0) *CFrame.fromEulerAnglesXYZ(0, 0, math.rad(120)))
  374. Con5M2 = Instance.new("FileMesh", Cone7)
  375. Con5M2.MeshId = "http://www.roblox.com/asset/?id=1033714"
  376. Con5M2.Scale = Vector3.new(0.06, 0.6, 0.06)
  377.  
  378. Chakram = Instance.new("Part", SwordModel)
  379. Chakram.CanCollide = false
  380. Chakram.Anchored = false
  381. Chakram.FormFactor = "Custom"
  382. Chakram.Size = Vector3.new(0, 0, 0)
  383. Chakram.TopSurface = "Smooth"
  384. Chakram.BottomSurface = "Smooth"
  385. Chakram.BrickColor = BrickColor.new("Navy blue")
  386. Weld(Chakram, Pommel, CFrame.new(0, 0, 0))
  387. ChakramMesh = Instance.new("FileMesh", Chakram)
  388. ChakramMesh.MeshId = "http://www.roblox.com/asset/?id=47260990"
  389. ChakramMesh.Scale = Vector3.new(0.9, 0.9, 0.9)
  390. Motor = Instance.new("Motor", Chakram)
  391. Motor.DesiredAngle = 1000000000
  392. Motor.MaxVelocity = 0.1
  393. Motor.Part1 = Chakram
  394. Motor.Part0 = Pommel
  395. Motor.C0 = CFrame.new(0, 0, 0) * CFrame.fromEulerAnglesXYZ(0, 0, 0)
  396.  
  397. -- GUARD --
  398.  
  399. Guard = Instance.new("Part", SwordModel)
  400. Guard.CanCollide = false
  401. Guard.Anchored = false
  402. Guard.FormFactor = "Custom"
  403. Guard.Size = Vector3.new(1.3, 0.15, 0.5)
  404. Guard.TopSurface = "Smooth"
  405. Guard.BottomSurface = "Smooth"
  406. Weld(Guard, Handle, CFrame.new(0, 0.65, 0) * CFrame.fromEulerAnglesXYZ(0, 0, 0))
  407.  
  408. Hilt = Instance.new("Part", SwordModel)
  409. Hilt.CanCollide = false
  410. Hilt.Anchored = false
  411. Hilt.FormFactor = "Custom"
  412. Hilt.Size = Vector3.new(0.3, 0.15, 0.5)
  413. Hilt.TopSurface = "Smooth"
  414. Hilt.BottomSurface = "Smooth"
  415. Weld(Hilt, Guard, CFrame.new(-0.54, -0.43, 0) * CFrame.fromEulerAnglesXYZ(0, 0, math.rad(45)))
  416.  
  417. Hilt2 = Instance.new("Part", SwordModel)
  418. Hilt2.CanCollide = false
  419. Hilt2.Anchored = false
  420. Hilt2.FormFactor = "Custom"
  421. Hilt2.Size = Vector3.new(0.3, 0.15, 0.5)
  422. Hilt2.TopSurface = "Smooth"
  423. Hilt2.BottomSurface = "Smooth"
  424. Weld(Hilt2, Guard, CFrame.new(0.54, -0.43, 0) * CFrame.fromEulerAnglesXYZ(0, 0, math.rad(-45)))
  425.  
  426. HiltC = Instance.new("Part", SwordModel)
  427. HiltC.CanCollide = false
  428. HiltC.Anchored = false
  429. HiltC.FormFactor = "Custom"
  430. HiltC.Size = Vector3.new(1, 1, 1)
  431. HiltC.TopSurface = "Smooth"
  432. HiltC.BottomSurface = "Smooth"
  433. Weld(HiltC, Hilt, CFrame.new(-0.15, 0, 0) * CFrame.fromEulerAnglesXYZ(0, 0, 0))
  434. HiltCMesh = Instance.new("CylinderMesh", HiltC)
  435. HiltCMesh.Scale = Vector3.new(0.5, 0.2, 0.5)
  436.  
  437. HiltC2 = Instance.new("Part", SwordModel)
  438. HiltC2.CanCollide = false
  439. HiltC2.Anchored = false
  440. HiltC2.FormFactor = "Custom"
  441. HiltC2.Size = Vector3.new(1, 1, 1)
  442. HiltC2.TopSurface = "Smooth"
  443. HiltC2.BottomSurface = "Smooth"
  444. Weld(HiltC2, Hilt2, CFrame.new(0.15, 0, 0) * CFrame.fromEulerAnglesXYZ(0, 0, 0))
  445. HiltC2Mesh = Instance.new("CylinderMesh", HiltC2)
  446. HiltC2Mesh.Scale = Vector3.new(0.5, 0.2, 0.5)
  447.  
  448. -- BLADE --
  449.  
  450. Blade = Instance.new("Part", SwordModel)
  451. Blade.CanCollide = false
  452. Blade.Anchored = false
  453. Blade.FormFactor = "Custom"
  454. Blade.Size = Vector3.new(0.7, 3.5, 0.35)
  455. Blade.TopSurface = "Smooth"
  456. Blade.BottomSurface = "Smooth"
  457. Weld(Blade, Guard, CFrame.new(0, 1.8, 0) * CFrame.fromEulerAnglesXYZ(0, 0, 0))
  458.  
  459. BladeT = Instance.new("Part", SwordModel)
  460. BladeT.CanCollide = false
  461. BladeT.Anchored = false
  462. BladeT.FormFactor = "Custom"
  463. BladeT.Size = Vector3.new(1, 1, 1)
  464. BladeT.TopSurface = "Smooth"
  465. BladeT.BottomSurface = "Smooth"
  466. Weld(BladeT, Blade, CFrame.new(0, -0.175, 2) * CFrame.fromEulerAnglesXYZ(math.rad(90), math.rad(90), 0))
  467. BladeTM = Instance.new("SpecialMesh", BladeT)
  468. BladeTM.MeshType = "Wedge"
  469. BladeTM.Scale = Vector3.new(0.35, 0.35, 0.5)
  470.  
  471. BladeT2 = Instance.new("Part", SwordModel)
  472. BladeT2.CanCollide = false
  473. BladeT2.Anchored = false
  474. BladeT2.FormFactor = "Custom"
  475. BladeT2.Size = Vector3.new(1, 1, 1)
  476. BladeT2.TopSurface = "Smooth"
  477. BladeT2.BottomSurface = "Smooth"
  478. Weld(BladeT2, Blade, CFrame.new(0, -0.175, 2) * CFrame.fromEulerAnglesXYZ(math.rad(90), math.rad(-90), 0))
  479. BladeT2M = Instance.new("SpecialMesh", BladeT2)
  480. BladeT2M.MeshType = "Wedge"
  481. BladeT2M.Scale = Vector3.new(0.35, 0.35, 0.5)
  482.  
  483. -- BLADE'S EDGE --
  484.  
  485. BladeE = Instance.new("Part", SwordModel)
  486. BladeE.CanCollide = false
  487. BladeE.Anchored = false
  488. BladeE.FormFactor = "Custom"
  489. BladeE.Size = Vector3.new(1, 1, 1)
  490. BladeE.TopSurface = "Smooth"
  491. BladeE.BottomSurface = "Smooth"
  492. Weld(BladeE, Blade, CFrame.new(0, -0.0875, 0.45) * CFrame.fromEulerAnglesXYZ(math.rad(90), 0, math.rad(90)))
  493. BladeEM = Instance.new("SpecialMesh", BladeE)
  494. BladeEM.MeshType = "Wedge"
  495. BladeEM.Scale = Vector3.new(3.5, 0.175, 0.2)
  496.  
  497. BladeE2 = Instance.new("Part", SwordModel)
  498. BladeE2.CanCollide = false
  499. BladeE2.Anchored = false
  500. BladeE2.FormFactor = "Custom"
  501. BladeE2.Size = Vector3.new(1, 1, 1)
  502. BladeE2.TopSurface = "Smooth"
  503. BladeE2.BottomSurface = "Smooth"
  504. Weld(BladeE2, Blade, CFrame.new(0, -0.0875, 0.45) * CFrame.fromEulerAnglesXYZ(math.rad(-90), 0, math.rad(-90)))
  505. BladeE2M = Instance.new("SpecialMesh", BladeE2)
  506. BladeE2M.MeshType = "Wedge"
  507. BladeE2M.Scale = Vector3.new(3.5, 0.175, 0.2)
  508.  
  509. BladeE3 = Instance.new("Part", SwordModel)
  510. BladeE3.CanCollide = false
  511. BladeE3.Anchored = false
  512. BladeE3.FormFactor = "Custom"
  513. BladeE3.Size = Vector3.new(1, 1, 1)
  514. BladeE3.TopSurface = "Smooth"
  515. BladeE3.BottomSurface = "Smooth"
  516. Weld(BladeE3, Blade, CFrame.new(0, -0.0875, 0.45) * CFrame.fromEulerAnglesXYZ(math.rad(90), 0, math.rad(-90)))
  517. BladeE3M = Instance.new("SpecialMesh", BladeE3)
  518. BladeE3M.MeshType = "Wedge"
  519. BladeE3M.Scale = Vector3.new(3.5, 0.175, 0.2)
  520.  
  521. BladeE4 = Instance.new("Part", SwordModel)
  522. BladeE4.CanCollide = false
  523. BladeE4.Anchored = false
  524. BladeE4.FormFactor = "Custom"
  525. BladeE4.Size = Vector3.new(1, 1, 1)
  526. BladeE4.TopSurface = "Smooth"
  527. BladeE4.BottomSurface = "Smooth"
  528. Weld(BladeE4, Blade, CFrame.new(0, -0.087, 0.45) * CFrame.fromEulerAnglesXYZ(math.rad(-90), 0, math.rad(90)))
  529. BladeE4M = Instance.new("SpecialMesh", BladeE4)
  530. BladeE4M.MeshType = "Wedge"
  531. BladeE4M.Scale = Vector3.new(3.5, 0.175, 0.2)
  532.  
  533. -- BLADE TIP EDGE --
  534.  
  535. BladeTE3 = Instance.new("Part", SwordModel)
  536. BladeTE3.CanCollide = false
  537. BladeTE3.Anchored = false
  538. BladeTE3.FormFactor = "Custom"
  539. BladeTE3.Size = Vector3.new(1, 1, 1)
  540. BladeTE3.TopSurface = "Smooth"
  541. BladeTE3.BottomSurface = "Smooth"
  542. BladeTE3.Transparency = 1
  543. Weld(BladeTE3, BladeT, CFrame.new(0, -0.087, 0.1) * CFrame.fromEulerAnglesXYZ(0, math.rad(-55), math.rad(90)))
  544. BladeTE3M = Instance.new("SpecialMesh", BladeTE3)
  545. BladeTE3M.MeshType = "Wedge"
  546. BladeTE3M.Scale = Vector3.new(0.61, 0.175, 0.2)
  547.  
  548. BladeTE4 = Instance.new("Part", SwordModel)
  549. BladeTE4.CanCollide = false
  550. BladeTE4.Anchored = false
  551. BladeTE4.FormFactor = "Custom"
  552. BladeTE4.Size = Vector3.new(1, 1, 1)
  553. BladeTE4.TopSurface = "Smooth"
  554. BladeTE4.BottomSurface = "Smooth"
  555. BladeTE4.Transparency = 1
  556. Weld(BladeTE4, BladeTE3, CFrame.new(0, -0.175, 0) * CFrame.fromEulerAnglesXYZ(0, 0, math.rad(180)))
  557. BladeTE4M = Instance.new("SpecialMesh", BladeTE4)
  558. BladeTE4M.MeshType = "Wedge"
  559. BladeTE4M.Scale = Vector3.new(0.62, 0.175, 0.2)
  560.  
  561. --
  562.  
  563. BladeTE32 = Instance.new("Part", SwordModel)
  564. BladeTE32.CanCollide = false
  565. BladeTE32.Anchored = false
  566. BladeTE32.FormFactor = "Custom"
  567. BladeTE32.Size = Vector3.new(1, 1, 1)
  568. BladeTE32.TopSurface = "Smooth"
  569. BladeTE32.BottomSurface = "Smooth"
  570. BladeTE32.Transparency = 1
  571. Weld(BladeTE32, BladeT, CFrame.new(0.2, -0.087, 0.385) * CFrame.fromEulerAnglesXYZ(0, math.rad(-55), math.rad(-90)))
  572. BladeTE32M = Instance.new("SpecialMesh", BladeTE32)
  573. BladeTE32M.MeshType = "Wedge"
  574. BladeTE32M.Scale = Vector3.new(0.61, 0.175, 0.2)
  575.  
  576. BladeTE42 = Instance.new("Part", SwordModel)
  577. BladeTE42.CanCollide = false
  578. BladeTE42.Anchored = false
  579. BladeTE42.FormFactor = "Custom"
  580. BladeTE42.Size = Vector3.new(1, 1, 1)
  581. BladeTE42.TopSurface = "Smooth"
  582. BladeTE42.BottomSurface = "Smooth"
  583. BladeTE42.Transparency = 1
  584. Weld(BladeTE42, BladeTE32, CFrame.new(0, -0.175, 0) * CFrame.fromEulerAnglesXYZ(0, 0, math.rad(-180)))
  585. BladeTE42M = Instance.new("SpecialMesh", BladeTE42)
  586. BladeTE42M.MeshType = "Wedge"
  587. BladeTE42M.Scale = Vector3.new(0.61, 0.175, 0.2)
  588.  
  589. -- POINT --
  590.  
  591. Point = Instance.new("Part", SwordModel)
  592. Point.CanCollide = false
  593. Point.Anchored = false
  594. Point.FormFactor = "Custom"
  595. Point.Size = Vector3.new(1, 1, 1)
  596. Point.TopSurface = "Smooth"
  597. Point.BottomSurface = "Smooth"
  598. Point.Reflectance = 0
  599. Weld(Point, Blade, CFrame.new(0, 1.75, 0) * CFrame.fromEulerAnglesXYZ(0, 0, 0))
  600. PointM = Instance.new("FileMesh", Point)
  601. PointM.MeshId = "http://www.roblox.com/asset/?id=9756362"
  602. PointM.Scale = Vector3.new(0.78, 3, 0.31)
  603.  
  604.  
  605.  
  606. for i,v in pairs(SwordModel:getChildren()) do
  607. if v.ClassName == "Part" then
  608. v.Material = "SmoothPlastic"
  609. end
  610. end
  611.  
  612.  
  613.  
  614. --//-- MOVEMENT ANIMATION LOCATED HERE --//--
  615.  
  616. function WalkAnim()
  617. RARM.C0 = clerp(RARM.C0, CFrame.new(1.3, 0.2, -0.75) * CFrame.fromEulerAnglesXYZ(0, 1.9, 1), .2)
  618. LARM.C0 = clerp(LARM.C0, CFrame.new(-1.5, 0.3, 0.5) * CFrame.fromEulerAnglesXYZ(0, .9, -.6), .1)
  619. ROOTPART.C0 = clerp(ROOTPART.C0, CFrame.new(0, 0, 0) * CFrame.fromEulerAnglesXYZ(0.25,0,0), .1)
  620. RLEG.C0 = clerp(RLEG.C0, CFrame.new(.5, -1.9, math.sin(sine*3)) * CFrame.fromEulerAnglesXYZ(-math.sin(sine*3), 0, 0),.2)
  621. LLEG.C0 = clerp(LLEG.C0, CFrame.new(-.5, -1.9, -math.sin(sine*3)) * CFrame.fromEulerAnglesXYZ(math.sin(sine*3), 0, 0),.2)
  622. HEAD.C0 = clerp(HEAD.C0, CFrame.new(0,1.5,0) * CFrame.fromEulerAnglesXYZ(0.3, 0, 0), .1)
  623. sine = sine + math.rad(3.5)
  624. end
  625.  
  626. --//-- JUMPING/FALLING ANIMATION LOCATED HERE --//--
  627.  
  628. function SprintJumpAnim()
  629. RARM.C0 = clerp(RARM.C0, CFrame.new(2, 0.5, 0) * CFrame.fromEulerAnglesXYZ(0, 0.5, 1), .15)
  630. LARM.C0 = clerp(LARM.C0, CFrame.new(-2, 0.5, 0) * CFrame.fromEulerAnglesXYZ(0, -0.5, -1), .15)
  631. ROOTPART.C0 = clerp(ROOTPART.C0, CFrame.new(0, 0, 0) * CFrame.fromEulerAnglesXYZ(0.35,0,0), .15)
  632. RLEG.C0 = clerp(RLEG.C0, CFrame.new(0.5, -2, 0),.15)
  633. LLEG.C0 = clerp(LLEG.C0, CFrame.new(-0.55, -1, -0.3) * CFrame.fromEulerAnglesXYZ(-0.4, 0, 0),.15)
  634. HEAD.C0 = clerp(HEAD.C0, CFrame.new(0, 1.5, 0) * CFrame.fromEulerAnglesXYZ(0.5, 0, 0), .15)
  635. end
  636.  
  637. function FallAnim()
  638. RARM.C0 = clerp(RARM.C0, CFrame.new(1.5, 1.5, 0.35) * CFrame.fromEulerAnglesXYZ(0, -0.5, 2.3), .15)
  639. LARM.C0 = clerp(LARM.C0, CFrame.new(-1.5, 1.5, 0.35) * CFrame.fromEulerAnglesXYZ(0, 0.5, -2.3), .15)
  640. ROOTPART.C0 = clerp(ROOTPART.C0, CFrame.new(0, 0, 0) * CFrame.fromEulerAnglesXYZ(-0.4, 0, 0), .15)
  641. RLEG.C0 = clerp(RLEG.C0, CFrame.new(0.5, -2, 0),.15)
  642. LLEG.C0 = clerp(LLEG.C0, CFrame.new(-0.55, -1, -0.3) * CFrame.fromEulerAnglesXYZ(-0.4, 0, 0),.15)
  643. HEAD.C0 = clerp(HEAD.C0, CFrame.new(0, 1.5, -0.3) * CFrame.fromEulerAnglesXYZ(-0.6, 0, 0), .15)
  644. end
  645.  
  646. function AddForce(part)
  647. if(not part:FindFirstChild("BodyForce"))then
  648. bf = Instance.new("BodyForce")
  649. bf.force = Vector3.new ( 0, part.Size.X * part.Size.Y * part.Size.Z * 85, 0)
  650. bf.Parent = part
  651. end
  652. end
  653.  
  654. function Gather(model)
  655. local m = model:GetChildren()
  656. local i = 1
  657. for i = 1, #m do
  658. if(m[i]:IsA("Part"))then
  659. AddForce(m[i])
  660. elseif(m[i]:IsA("Model"))then
  661. Gather(m[i])
  662. end
  663. end
  664. end
  665. Gather(Character)
  666.  
  667. --//-- SPRINT ANIMATIONS LOCATED HERE --//--
  668.  
  669. function SprintAnim()
  670. Humanoid.WalkSpeed = 65
  671. RARM.C0 = clerp(RARM.C0, CFrame.new(1.6, 0.2, -0.2) * CFrame.fromEulerAnglesXYZ(0, 1, 1), .2)
  672. LARM.C0 = clerp(LARM.C0, CFrame.new(-1.5, 0.3, 0.5) * CFrame.fromEulerAnglesXYZ(0, 1.1, -1), .2)
  673. ROOTPART.C0 = clerp(ROOTPART.C0, CFrame.new(0, 0.3, 0) * CFrame.fromEulerAnglesXYZ(0.4,0,0), .1)
  674. RLEG.C0 = clerp(RLEG.C0, CFrame.new(.5, -1.8, math.sin(sine*3)) * CFrame.fromEulerAnglesXYZ(-math.sin(sine*3), 0, 0),.2)
  675. LLEG.C0 = clerp(LLEG.C0, CFrame.new(-.5, -1.8, -math.sin(sine*3)) * CFrame.fromEulerAnglesXYZ(math.sin(sine*3), 0, 0),.2)
  676. HEAD.C0 = clerp(HEAD.C0, CFrame.new(0,1.5,0) * CFrame.fromEulerAnglesXYZ(0.35, 0, 0), .2)
  677. sine = sine + math.rad(4)
  678. end
  679.  
  680.  
  681. --//-- STAND-BY ANIMATIONS LOCATED HERE --//--
  682.  
  683. function Stand()
  684. RARM.C0 = clerp(RARM.C0, CFrame.new(1.3, 0.2, -0.75) * CFrame.fromEulerAnglesXYZ(0, 1.9, 1), .4)
  685. LARM.C0 = clerp(LARM.C0, CFrame.new(-1.5, 0.1, 0.2) * CFrame.fromEulerAnglesXYZ(0, .5, -.4), .4)
  686. ROOTPART.C0 = clerp(ROOTPART.C0, CFrame.new(0, 0, 0) * CFrame.fromEulerAnglesXYZ(0,0,0), .4)
  687. RLEG.C0 = clerp(RLEG.C0, CFrame.new(0.5, -2, 0) * CFrame.fromEulerAnglesXYZ(0, 0, 0),.2)
  688. LLEG.C0 = clerp(LLEG.C0, CFrame.new(-0.45, -1, -0.7) * CFrame.fromEulerAnglesXYZ(-0.4, -0.3, 0.6),.4)
  689. HEAD.C0 = clerp(HEAD.C0, CFrame.new(0, 1.55, - .2) * CFrame.fromEulerAnglesXYZ(-0.25, -0.35, 0), .4)
  690. end
  691.  
  692. function Breathe()
  693. RARM.C0 = clerp(RARM.C0, CFrame.new(1.3, 0.2, -0.75) * CFrame.fromEulerAnglesXYZ(0, 1.9, 1), .1)
  694. LARM.C0 = clerp(LARM.C0, CFrame.new(-1.5, 0.1, 0.2) * CFrame.fromEulerAnglesXYZ(0, .5, -.4), .1)
  695. ROOTPART.C0 = clerp(ROOTPART.C0, CFrame.new(0, math.sin(sine*3)*.02, 0) * CFrame.fromEulerAnglesXYZ(0,0,0), .1)
  696. RLEG.C0 = clerp(RLEG.C0, CFrame.new(0.5, -2 + math.sin(sine*3)*.02, 0) * CFrame.fromEulerAnglesXYZ(0, 0, 0) , .1)
  697. LLEG.C0 = clerp(LLEG.C0, CFrame.new(-0.45, -1 + math.sin(sine*3)*.02, -0.7) * CFrame.fromEulerAnglesXYZ(-0.4, -0.3, 0.6), .1)
  698. HEAD.C0 = clerp(HEAD.C0, CFrame.new(0, 1.55, - .2) * CFrame.fromEulerAnglesXYZ(-0.25, -0.35, 0), .1)
  699. sine = sine + math.rad(1.5)
  700. end
  701.  
  702. --//-- SHEATHE/SHEATHEUP (rn in testing) --//--
  703.  
  704. function Sheathe()
  705. for i = 0, 0.1, 1 do
  706. RARM.C0 = clerp(RARM.C0, CFrame.new(0, 0, 0) * CFrame.fromEulerAnglesXYZ(0, math.rad(90), 0), .1)
  707. end
  708. end
  709.  
  710. function SheatheUp()
  711. RARM.C0 = clerp(RARM.C0, CFrame.new(1.3, 0.2, -0.75) * CFrame.fromEulerAnglesXYZ(0, 1.9, 1), .4)
  712. end
  713.  
  714. --//-- ATTACKS (oh wait need to do sheathing first) --//
  715.  
  716.  
  717.  
  718. Mouse.KeyDown:connect(function(key)
  719. if string.byte(key) == 48 then
  720. sprinting = true
  721. SprintAnim()
  722. end
  723. end)
  724.  
  725. Mouse.KeyUp:connect(function(key)
  726. if string.byte(key) == 48 then
  727. sprinting = false
  728. Humanoid.WalkSpeed = 16
  729. end
  730. end)
  731.  
  732.  
  733.  
  734. game:service("RunService").RenderStepped:connect(function()
  735. if (Humanoid.Jump) then
  736. SprintJumpAnim()
  737. elseif Vector3.new(0,Torso.Velocity.y,0).magnitude > 2 then
  738. FallAnim()
  739. animPlaying = true
  740. elseif Vector3.new(Torso.Velocity.x, 0, Torso.Velocity.z).magnitude > 2 and sprinting == false then
  741. lasttick = nil;
  742. WalkAnim()
  743. animPlaying = true
  744. elseif Vector3.new(Torso.Velocity.x, 0, Torso.Velocity.z).magnitude > 2 and sprinting == true then
  745. lasttick = nil;
  746. SprintAnim()
  747. breath = false
  748. animPlaying = true
  749. elseif Vector3.new(Torso.Velocity.x, 0, Torso.Velocity.z).magnitude < 2 then
  750. if (lasttick == nil) then
  751. lasttick = tick();
  752. end
  753. if tick() - lasttick < math.huge then
  754. breath = true
  755. Breathe()
  756. animPlaying = false
  757. else
  758. Stand()
  759. animPlaying = false
  760. end
  761. end
  762. end)
Advertisement
Add Comment
Please, Sign In to add comment
Advertisement