Advertisement
Tetezaza1542

sans

Aug 15th, 2018
207
0
Never
Not a member of Pastebin yet? Sign Up, it unlocks many cool features!
  1. -- wongxd, this is why you DON'T goto Voidacity's
  2. -- SLPM has been absent, so I've taken it upon myself to make something
  3.  
  4. --------------------------------------------------------
  5.  
  6. pls = owner
  7. rs = game:GetService'RunService'
  8. uinps = game:GetService'UserInputService'
  9. human.MaxHealth = 50
  10. wait()
  11. human.Health = 50
  12. c.Health:Destroy()
  13.  
  14. --------------------------------------------------------
  15.  
  16. Debounces = {
  17. AnimationCycles = 0;
  18. FPS = 0;
  19. scalingDamage = false;
  20. damageLevel = 0;
  21. attackNumber = 0;
  22. isAttacking = false;
  23. isMoving = false;
  24. isSprinting = false;
  25. isBoosting = false;
  26. isPassive = false;
  27. isTyping = false;
  28. }
  29.  
  30. --------------------------------------------------------
  31.  
  32. numLerp = function(start, goal, alpha)
  33. return(((goal - start) * alpha) + start)
  34. end
  35.  
  36. CFrameZero = function()
  37. return CFrame.new(Vector3.new())
  38. end
  39.  
  40. rad = function(value)
  41. return math.rad(value)
  42. end
  43.  
  44. CFAngles = function(Vector)
  45. return CFrame.Angles(rad(Vector.x),rad(Vector.y),rad(Vector.z))
  46. end
  47.  
  48. --------------------------------------------------------
  49.  
  50. AnimStat = {
  51. lerpSpeed = .2;
  52. lerpSpeed2 = .35;
  53. lerpTween = 0;
  54. }
  55.  
  56. Joints = {
  57. c.HumanoidRootPart.RootJoint;
  58. c.Torso.Neck;
  59. c.Torso['Left Shoulder'];
  60. c.Torso['Right Shoulder'];
  61. c.Torso['Left Hip'];
  62. c.Torso['Right Hip'];
  63. }
  64.  
  65. JointTargets = {
  66. CFrameZero();
  67. CFrameZero();
  68. CFrameZero();
  69. CFrameZero();
  70. CFrameZero();
  71. CFrameZero();
  72. }
  73.  
  74. --------------------------------------------------------
  75.  
  76. BodyColors = {
  77. HeadColor = BrickColor.new("Institutional white");
  78. LeftArmColor = BrickColor.new("Institutional white");
  79. RightArmColor = BrickColor.new("Institutional white");
  80. LeftLegColor = BrickColor.new("Institutional white");
  81. RightLegColor = BrickColor.new("Institutional white");
  82. TorsoColor = BrickColor.new("Mid gray");
  83. }
  84.  
  85. Customs = {
  86. Face = "http://www.roblox.com/asset/?id=8560915";
  87. Shirt = "http://www.roblox.com/asset/?id=334781688";
  88. Pants = "http://www.roblox.com/asset/?id=335237283";
  89. }
  90.  
  91. --------------------------------------------------------
  92.  
  93. prepareCharacter = function()
  94. local transPoints = {
  95. NumberSequenceKeypoint.new(0,.819,.0375),
  96. NumberSequenceKeypoint.new(.207,.594,.0187),
  97. NumberSequenceKeypoint.new(.4,.55,.031),
  98. NumberSequenceKeypoint.new(.57,.619,.05),
  99. NumberSequenceKeypoint.new(.76,.8,.0375),
  100. NumberSequenceKeypoint.new(1,1,0),
  101. }
  102. local sizePoints = {
  103. NumberSequenceKeypoint.new(0,.687,0),
  104. NumberSequenceKeypoint.new(.111,.875,0),
  105. NumberSequenceKeypoint.new(.327,1.19,0),
  106. NumberSequenceKeypoint.new(.646,1.56,0),
  107. NumberSequenceKeypoint.new(.805,1.37,0),
  108. NumberSequenceKeypoint.new(.905,1.06,0),
  109. NumberSequenceKeypoint.new(.968,.938,0),
  110. NumberSequenceKeypoint.new(.984,1.13,0),
  111. NumberSequenceKeypoint.new(1,1.62,0),
  112. }
  113. local Size = NumberSequence.new(sizePoints)
  114. local Transparency = NumberSequence.new(transPoints)
  115. rayModel = Instance.new("Model",c)
  116. efxBlock = Instance.new("Part",c)
  117. efxBlock.BrickColor = BrickColor.new("Cyan")
  118. efxBlock.Material = "Neon"
  119. efxBlock.FormFactor = "Custom"
  120. efxBlock.Transparency = .3
  121. efxBlock.Size = Vector3.new(.3,.3,.3)
  122. local mesh = Instance.new("SpecialMesh",efxBlock)
  123. mesh.MeshType = Enum.MeshType.Sphere
  124. mesh.Scale = Vector3.new(1,1,1)
  125. light = Instance.new("PointLight",c.Head)
  126. light.Range = 10
  127. light.Color = Color3.new(0,200/255,1)
  128. light.Shadows = false
  129. local particles = Instance.new("ParticleEmitter",efxBlock)
  130. particles.Color = ColorSequence.new(Color3.new(0,0,225/255),Color3.new(20/255,190/255,205/255))
  131. particles.LightEmission = .95
  132. particles.Size = Size
  133. particles.Name = "Fire"
  134. particles.Transparency = Transparency
  135. particles.LockedToPart = true
  136. particles.VelocityInheritance = .5
  137. particles.LockedToPart = true
  138. particles.Rate = 70
  139. particles.Texture = "rbxassetid://56561915"
  140. particles.Lifetime = NumberRange.new(2,2)
  141. particles.RotSpeed = NumberRange.new(100,100)
  142. particles.Speed = NumberRange.new(7,7)
  143. script.Parent = efxBlock
  144. fire = particles
  145. local offset = Vector3.new(-0.11, .23, -0.5)
  146. local weld = Instance.new("Weld",c.Head)
  147. weld.Part0 = c.Head
  148. weld.Part1 = efxBlock
  149. weld.C0 = CFrame.new(offset) * CFrame.Angles(math.rad(-40),math.rad(10),math.rad(40))
  150. efxBlock.Parent = c
  151. local music = Instance.new("Sound",c)
  152. music.SoundId = "rbxassetid://316012176"
  153. music.Looped = true
  154. music.Volume = 0
  155. fight = music
  156. local music2 = Instance.new("Sound",c)
  157. music2.SoundId = "rbxassetid://316014309"
  158. music2.Looped = true
  159. music2.Volume = 0
  160. sans = music2
  161. pointGyro = Instance.new("BodyGyro",c.HumanoidRootPart)
  162. pointGyro.P = 1e7
  163. pointGyro.D = 1e3
  164. pointGyro.MaxTorque = Vector3.new(0,1e7,0)
  165. animator = c.Humanoid:FindFirstChild("Animator")
  166. if animator then
  167. animator:Destroy()
  168. end
  169. c.Torso.roblox:Destroy()
  170. for i,v in pairs (c.Head:children()) do
  171. if v.ClassName == "Sound" then
  172. v:Destroy()
  173. end
  174. end
  175. for i = 1,#Joints do
  176. Joints[i].C1 = CFrame.new(Vector3.new())
  177. end
  178. human.WalkSpeed = 0
  179. human.JumpPower = 0
  180. end
  181.  
  182. uinps.InputBegan:connect(function(InputObject)
  183. if InputObject.KeyCode == Enum.KeyCode.K and Debounces.isTyping == false then
  184. Debounces.isPassive = not Debounces.isPassive
  185. end
  186. end)
  187.  
  188. setJointCFrames = function(table)
  189. for i = 1,#table do
  190. JointTargets[i] = table[i]
  191. end
  192. AnimationCycles = 0
  193. end
  194.  
  195. setLerp = function(speed)
  196. AnimStat.lerpSpeed = speed
  197. end
  198.  
  199. setTween = function(tween)
  200. AnimStat.lerpTween = tween
  201. end
  202.  
  203. takeDamage = function(position,damage,distance,platformStand)
  204. for i,v in pairs (pls:children()) do
  205. if v.ClassName == "Player" and v:FindFirstChild("Character") then
  206. local torso = v.Character:FindFirstChild("Torso")
  207. if torso and (torso.Position - position).magnitude < distance then
  208. v.Character.Humanoid:TakeDamage(damage)
  209. if platformStand == true then
  210. v.Character.PlatformStand = platformStand
  211. end
  212. end
  213. end
  214. end
  215. end
  216.  
  217. --------------------------------------------------------
  218.  
  219. prepareCharacter()
  220.  
  221. --------------------------------------------------------
  222.  
  223. spawn(function()
  224. local sine = 0
  225. while wait() do
  226. pointGyro.CFrame = CFrame.new(Vector3.new(),(mouse.Hit.p - c.HumanoidRootPart.CFrame.p).unit * 100)
  227. if Debounces.isAttacking == false and Debounces.isMoving == false and Debounces.isBoosting == false then
  228. setLerp(.1)
  229. if Debounces.isPassive == true then
  230. setJointCFrames({
  231. CFrame.new(Vector3.new(0, -0.901 + math.sin(tick() * 1.5)/45, 0)) * CFAngles(Vector3.new(-22.001, 0, 0));
  232. CFrame.new(Vector3.new(-0.001, 1.52 + math.sin(tick() * -1.5)/35, math.sin(tick() * 1.5)/35)) * CFAngles(Vector3.new(-10.861 + math.sin((-tick() + 2) * 1.5) * 5, 13.765, -1.658));
  233. CFrame.new(Vector3.new(-1.5, -0.1 + math.sin(tick() * 1.5)/15, -0.801)) * CFAngles(Vector3.new(44.999, 0, 0));
  234. CFrame.new(Vector3.new(1.7, 0.2 + math.sin(tick() * 1.5)/15, 0.199)) * CFAngles(Vector3.new(-15.001, -15.001, 15));
  235. CFrame.new(Vector3.new(-0.7, -1.8, 0.6)) * CFAngles(Vector3.new(-59.511, 3.84, 0.489));
  236. CFrame.new(Vector3.new(0.5, -1, -0.801)) * CFAngles(Vector3.new(14.999, -15, -0.001));
  237. })
  238. else
  239. setJointCFrames({
  240. CFrame.new(Vector3.new(0, 0 + math.sin(tick() * 1.5)/25, 0)) * CFAngles(Vector3.new(0, 0, 0));
  241. CFrame.new(Vector3.new(0, 1.5 + math.sin(tick() * -1.5)/35, math.sin(tick() * 1.5)/35)) * CFAngles(Vector3.new(1.554 + math.sin((-tick() + 2) * 1.5) * 5, -0.001, -0.001));
  242. CFrame.new(Vector3.new(-1.06, -0.03 + math.sin(tick() * 1.5)/25, 0.449)) * CFAngles(Vector3.new(-29.511, 0, 29.51));
  243. CFrame.new(Vector3.new(1.059, -0.031 + math.sin(tick() * 1.5)/25, 0.449)) * CFAngles(Vector3.new(-29.511, -3.842, -29.511));
  244. CFrame.new(Vector3.new(-0.49, -2, -0.05/1.5)) * CFAngles(Vector3.new(0, 8.885, 0));
  245. CFrame.new(Vector3.new(0.49, -2, -0.05/1.5)) * CFAngles(Vector3.new(-0.001, -8.886, 0));
  246. })
  247. end
  248. elseif Debounces.isAttacking == false and Debounces.isMoving == true and Debounces.isBoosting == false then
  249. sine = sine + math.rad(12)
  250. human.WalkSpeed = 15
  251. setLerp(.15)
  252. setJointCFrames({
  253. CFrame.new(Vector3.new(0, 0, 0)) * CFAngles(Vector3.new(0, math.sin(sine) * -2.5, 0));
  254. CFrame.new(Vector3.new(0, 1.499, -0.04)) * CFAngles(Vector3.new(-5.676, -0.001 - math.sin(sine) * 3, -0.001));
  255. CFrame.new(Vector3.new(-1.97, 0 + math.sin(sine + .5)/20, 0.1 + math.sin(-sine)/2)/1.3) * CFAngles(Vector3.new(-5 + math.sin(sine) * 23, 0, 0));
  256. CFrame.new(Vector3.new(1.97, 0 - math.sin(sine + .5)/20, 0.1 + math.sin(sine)/2)/1.3) * CFAngles(Vector3.new(-5 + math.sin(-sine) * 23, 0, 0));
  257. CFrame.new(Vector3.new(-0.5, -1.93 - math.cos(sine)/8.7, 0.2 + math.sin(sine)/2)) * CFAngles(Vector3.new(-15 + math.sin(-sine) * 30, 0, 0));
  258. CFrame.new(Vector3.new(0.5, -1.93 + math.cos(sine)/8.7, 0.2 + math.sin(-sine)/2)) * CFAngles(Vector3.new(-15 + math.sin(sine) * 30, 0, 0));
  259. })
  260. end
  261. if Debounces.scalingDamage == true then
  262. takeDamage(c.HumanoidRootPart.Position,Debounces.damageLevel,8,true)
  263. end
  264. end
  265. end)
  266.  
  267. human.Changed:connect(function(prop)
  268. if prop == "MoveDirection" then
  269. if human.MoveDirection.magnitude > .02 then
  270. Debounces.isMoving = true
  271. else
  272. Debounces.isMoving = false
  273. end
  274. end
  275. end)
  276.  
  277. uinps.InputBegan:connect(function(InputObject)
  278. if InputObject.KeyCode == Enum.KeyCode.A and Debounces.isAttacking == false and Debounces.isSprinting == true and Debounces.isBoosting == false and Debounces.isPassive == true and Debounces.isTyping == false then
  279. Debounces.isBoosting = true
  280. Debounces.damageLevel = 10
  281. Debounces.scalingDamage = true
  282. local vel = Instance.new("BodyVelocity",c.HumanoidRootPart)
  283. setLerp(.15)
  284. setJointCFrames({
  285. CFrame.new(Vector3.new(0, -0.901, 0)) * CFAngles(Vector3.new(-22.001, 0, 20));
  286. CFrame.new(Vector3.new(-0.001, 1.52, 0)) * CFAngles(Vector3.new(-10.372, 28.758, -1.837));
  287. CFrame.new(Vector3.new(-0.7, -0.2, -0.801)) * CFAngles(Vector3.new(45, 0, 45));
  288. CFrame.new(Vector3.new(1.7, 0.2, 0.199)) * CFAngles(Vector3.new(-15.001, -15.001, 45));
  289. CFrame.new(Vector3.new(-0.3, -2, 0.2)) * CFAngles(Vector3.new(-11.283, -17.801, 19.495));
  290. CFrame.new(Vector3.new(0.9, -2, -0.201)) * CFAngles(Vector3.new(15, -15, 29.999));
  291. })
  292. local boostSpeed = 250
  293. local efx = Instance.new("Sound",c.Head)
  294. efx.SoundId = "rbxassetid://200632875"
  295. efx.Pitch = math.random(1100,1300)/1000
  296. efx.Volume = .5
  297. efx:Play()
  298. spawn(function()
  299. wait(5)
  300. efx:Destroy()
  301. end)
  302. vel.Velocity = (c.HumanoidRootPart.Position - c.HumanoidRootPart.CFrame:toWorldSpace(CFrame.new(1,0,0)).p).unit * boostSpeed
  303. vel.P = 1e3
  304. vel.MaxForce = Vector3.new(math.huge,0,math.huge)
  305. wait(.15)
  306. vel.P = 1000
  307. vel.MaxForce = Vector3.new(3000,0,3000)
  308. vel.Velocity = Vector3.new()
  309. wait(.3)
  310. setLerp(.3)
  311. setJointCFrames({
  312. CFrame.new(Vector3.new(0, -0.901, 0)) * CFAngles(Vector3.new(-22.001, 0, 13));
  313. CFrame.new(Vector3.new(-0.001, 1.52, 0)) * CFAngles(Vector3.new(-30.239, 42.47, 11.879));
  314. CFrame.new(Vector3.new(-1.9, -0.2, -0.401)) * CFAngles(Vector3.new(44.999, 0, -45));
  315. CFrame.new(Vector3.new(1.5, 0.4, 0.599)) * CFAngles(Vector3.new(-62.058, -21.088, -15.383));
  316. CFrame.new(Vector3.new(-0.7, -1.8, 0.6)) * CFAngles(Vector3.new(-59.239, -26.158, -14.457));
  317. CFrame.new(Vector3.new(0.5, -1, -0.801)) * CFAngles(Vector3.new(-0.505, -14.478, -18.968));
  318. })
  319. wait(.2)
  320. vel:Destroy()
  321. Debounces.damageLevel = 0
  322. Debounces.scalingDamage = false
  323. Debounces.isBoosting = false
  324. end
  325. end)
  326.  
  327. uinps.InputBegan:connect(function(InputObject)
  328. if InputObject.KeyCode == Enum.KeyCode.D and Debounces.isAttacking == false and Debounces.isSprinting == true and Debounces.isBoosting == false and Debounces.isPassive == true and Debounces.isTyping == false then
  329. Debounces.isBoosting = true
  330. Debounces.damageLevel = 10
  331. Debounces.scalingDamage = true
  332. local vel = Instance.new("BodyVelocity",c.HumanoidRootPart)
  333. setLerp(.15)
  334. setJointCFrames({
  335. CFrame.new(Vector3.new(0, -0.901, 0)) * CFAngles(Vector3.new(-22.001, 0, -15));
  336. CFrame.new(Vector3.new(-0.001, 1.52, 0)) * CFAngles(Vector3.new(-13.603, -45.662, -6.645));
  337. CFrame.new(Vector3.new(-1.9, 0, -0.201)) * CFAngles(Vector3.new(31.935, -7.436, -60.853));
  338. CFrame.new(Vector3.new(1.9, 0, 0.399)) * CFAngles(Vector3.new(-3.644, -23.448, 59.102));
  339. CFrame.new(Vector3.new(-1.1, -1.8, 0)) * CFAngles(Vector3.new(-3.616, -11.936, -29.566));
  340. CFrame.new(Vector3.new(0.1, -1.6, -0.601)) * CFAngles(Vector3.new(1.943, -7.181, -32.528));
  341. })
  342. local boostSpeed = 250
  343. local efx = Instance.new("Sound",c.Head)
  344. efx.SoundId = "rbxassetid://200632875"
  345. efx.Pitch = math.random(1100,1300)/1000
  346. efx.Volume = .5
  347. efx:Play()
  348. spawn(function()
  349. wait(5)
  350. efx:Destroy()
  351. end)
  352. vel.Velocity = (c.HumanoidRootPart.Position - c.HumanoidRootPart.CFrame:toWorldSpace(CFrame.new(-1,0,0)).p).unit * boostSpeed
  353. vel.P = 1e3
  354. vel.MaxForce = Vector3.new(math.huge,0,math.huge)
  355. wait(.15)
  356. vel.P = 1000
  357. vel.MaxForce = Vector3.new(3000,0,3000)
  358. vel.Velocity = Vector3.new()
  359. wait(.3)
  360. setLerp(.3)
  361. setJointCFrames({
  362. CFrame.new(Vector3.new(0, -0.901, 0)) * CFAngles(Vector3.new(-22.001, 0, -13));
  363. CFrame.new(Vector3.new(-0.001, 1.52, 0)) * CFAngles(Vector3.new(-12.936, -46.206, -2.327));
  364. CFrame.new(Vector3.new(-1.9, 0.2, -0.201)) * CFAngles(Vector3.new(45, 0, -60));
  365. CFrame.new(Vector3.new(1.7, 0, -0.401)) * CFAngles(Vector3.new(14.035, -5.69, 35.342));
  366. CFrame.new(Vector3.new(-0.3, -1.8, 0.6)) * CFAngles(Vector3.new(-55.479, -10.612, 15.729));
  367. CFrame.new(Vector3.new(0.5, -1, -0.801)) * CFAngles(Vector3.new(14.999, -15, 14.999));
  368. })
  369. wait(.2)
  370. vel:Destroy()
  371. Debounces.damageLevel = 0
  372. Debounces.scalingDamage = false
  373. Debounces.isBoosting = false
  374. end
  375. end)
  376.  
  377. uinps.InputBegan:connect(function(InputObject)
  378. if InputObject.KeyCode == Enum.KeyCode.W and Debounces.isAttacking == false and Debounces.isSprinting == true and Debounces.isBoosting == false and Debounces.isPassive == true and Debounces.isTyping == false then
  379. Debounces.isBoosting = true
  380. Debounces.damageLevel = 10
  381. Debounces.scalingDamage = true
  382. local vel = Instance.new("BodyVelocity",c.HumanoidRootPart)
  383. setLerp(.15)
  384. setJointCFrames({
  385. CFrame.new(Vector3.new(0, -0.901, 0)) * CFAngles(Vector3.new(-40.001, 0, 5));
  386. CFrame.new(Vector3.new(-0.001, 1.429, 0.2)) * CFAngles(Vector3.new(25.141, -8.347, 0.878));
  387. CFrame.new(Vector3.new(-1.5, 0, .101)) * CFAngles(Vector3.new(14.999, -0.001, 0));
  388. CFrame.new(Vector3.new(1.7, 0.199, -0.401)) * CFAngles(Vector3.new(28.08, -0.358, 21.087));
  389. CFrame.new(Vector3.new(-0.5, -1.8, 0.6)) * CFAngles(Vector3.new(-29.448, 3.57, -1.5));
  390. CFrame.new(Vector3.new(0.499, -1.6, -0.401)) * CFAngles(Vector3.new(-0.505, -14.478, -3.968));
  391. })
  392. local boostSpeed = 250
  393. local efx = Instance.new("Sound",c.Head)
  394. efx.SoundId = "rbxassetid://200632875"
  395. efx.Pitch = math.random(1100,1300)/1000
  396. efx.Volume = .5
  397. efx:Play()
  398. spawn(function()
  399. wait(5)
  400. efx:Destroy()
  401. end)
  402. vel.Velocity = (c.HumanoidRootPart.Position - c.HumanoidRootPart.CFrame:toWorldSpace(CFrame.new(0,0,1)).p).unit * boostSpeed
  403. vel.P = 1e3
  404. vel.MaxForce = Vector3.new(math.huge,0,math.huge)
  405. wait(.15)
  406. vel.P = 1000
  407. vel.MaxForce = Vector3.new(3000,0,3000)
  408. vel.Velocity = Vector3.new()
  409. wait(.3)
  410. setLerp(.3)
  411. setJointCFrames({
  412. CFrame.new(Vector3.new(0, -0.901, 0)) * CFAngles(Vector3.new(-22.001, 40, -13));
  413. CFrame.new(Vector3.new(-0.001, 1.52, 0)) * CFAngles(Vector3.new(-12.936, -46.206, -2.327));
  414. CFrame.new(Vector3.new(-1.9, 0.2, -0.201)) * CFAngles(Vector3.new(45, 0, -60));
  415. CFrame.new(Vector3.new(1.7, 0, -0.401)) * CFAngles(Vector3.new(14.035, -5.69, 35.342));
  416. CFrame.new(Vector3.new(-0.3, -1.8, 0.6)) * CFAngles(Vector3.new(-55.479, -10.612, 15.729));
  417. CFrame.new(Vector3.new(0.5, -1, -0.801)) * CFAngles(Vector3.new(14.999, -15, 14.999));
  418. })
  419. wait(.2)
  420. vel:Destroy()
  421. Debounces.damageLevel = 0
  422. Debounces.scalingDamage = false
  423. Debounces.isBoosting = false
  424. end
  425. end)
  426.  
  427. uinps.InputBegan:connect(function(InputObject)
  428. if InputObject.KeyCode == Enum.KeyCode.S and Debounces.isAttacking == false and Debounces.isSprinting == true and Debounces.isBoosting == false and Debounces.isPassive == true and Debounces.isTyping == false then
  429. Debounces.isBoosting = true
  430. Debounces.damageLevel = 10
  431. Debounces.scalingDamage = true
  432. local vel = Instance.new("BodyVelocity",c.HumanoidRootPart)
  433. setLerp(.15)
  434. setJointCFrames({
  435. CFrame.new(Vector3.new(0, -.3, 0)) * CFAngles(Vector3.new(15, 0, 0));
  436. CFrame.new(Vector3.new(-0.001, 1.52, -0.03)) * CFAngles(Vector3.new(-5.298, -1.305, -4.093));
  437. CFrame.new(Vector3.new(-1.7, 0, -0.201)) * CFAngles(Vector3.new(12.112, -6.562, -16.939));
  438. CFrame.new(Vector3.new(1.7, 0, -0.201)) * CFAngles(Vector3.new(8.817, 8.378, 20.465));
  439. CFrame.new(Vector3.new(-0.7, -1.8, 0.2)) * CFAngles(Vector3.new(-14.432, 3.06, -2.373));
  440. CFrame.new(Vector3.new(0.5, -1.8, -0.201)) * CFAngles(Vector3.new(-0.505, -14.478, -3.968));
  441. })
  442. local boostSpeed = 150
  443. local boostSpeed = 250
  444. local efx = Instance.new("Sound",c.Head)
  445. efx.SoundId = "rbxassetid://200632875"
  446. efx.Pitch = math.random(1100,1300)/1000
  447. efx.Volume = .5
  448. efx:Play()
  449. spawn(function()
  450. wait(5)
  451. efx:Destroy()
  452. end)
  453. vel.Velocity = (c.HumanoidRootPart.Position - c.HumanoidRootPart.CFrame:toWorldSpace(CFrame.new(0,0,-1)).p).unit * boostSpeed
  454. vel.P = 1e3
  455. vel.MaxForce = Vector3.new(math.huge,0,math.huge)
  456. wait(.15)
  457. vel.P = 1000
  458. vel.MaxForce = Vector3.new(3000,0,3000)
  459. vel.Velocity = Vector3.new()
  460. wait(.3)
  461. setLerp(.3)
  462. setJointCFrames({
  463. CFrame.new(Vector3.new(0, -.5, 0)) * CFAngles(Vector3.new(4, 0, 0));
  464. CFrame.new(Vector3.new(-0.001, 1.52, -0.03)) * CFAngles(Vector3.new(-20.081, 28.752, 3.598));
  465. CFrame.new(Vector3.new(-1.7, 0.2, -0.601)) * CFAngles(Vector3.new(59.51, -3.841, -14.511));
  466. CFrame.new(Vector3.new(1.7, 0.2, 0.399)) * CFAngles(Vector3.new(-47.597, -13.104, 17.887));
  467. CFrame.new(Vector3.new(-0.7, -1.4, 0.2)) * CFAngles(Vector3.new(-44.477, 3.836, -0.524));
  468. CFrame.new(Vector3.new(0.5, -1.4, -0.601)) * CFAngles(Vector3.new(-15.868, -12.953, -7.631));
  469. })
  470. wait(.2)
  471. vel:Destroy()
  472. Debounces.damageLevel = 0
  473. Debounces.scalingDamage = false
  474. Debounces.isBoosting = false
  475. end
  476. end)
  477.  
  478. uinps.InputBegan:connect(function(InputObject)
  479. if InputObject.KeyCode == Enum.KeyCode.Q and Debounces.isAttacking == false and Debounces.isSprinting == false and Debounces.isPassive == true and Debounces.isTyping == false then
  480. local isLooping = true
  481. uinps.InputEnded:connect(function(InputObject2)
  482. if InputObject2.KeyCode == Enum.KeyCode.Q then
  483. isLooping = false
  484. end
  485. end)
  486. while true do
  487. if isLooping == false then
  488. break
  489. end
  490. Debounces.attackNumber = Debounces.attackNumber + 1
  491. local aimPos = mouse.Hit.p
  492. local head = Instance.new("Part",c)
  493. head.Size = Vector3.new(12,.2,12)
  494. head.CanCollide = false
  495. head.Anchored = true
  496. head.Transparency = 1
  497. for i = 1,2 do
  498. local decal = Instance.new("Decal",head)
  499. decal.Texture = "rbxassetid://323497117"
  500. if i == 1 then
  501. decal.Face = Enum.NormalId.Top
  502. else
  503. decal.Face = Enum.NormalId.Bottom
  504. end
  505. end
  506. if Debounces.attackNumber%2 == 1 then
  507. head.CFrame = CFrame.new(c.Torso.CFrame:toWorldSpace(CFrame.new(8,8,.5)).p,aimPos)
  508. else
  509. head.CFrame = CFrame.new(c.Torso.CFrame:toWorldSpace(CFrame.new(-8,8,.5)).p,aimPos)
  510. end
  511. spawn(function()
  512. local timer = 0
  513. while rs.RenderStepped:wait() do
  514. if timer >= 1.55 then
  515. break
  516. end
  517. head.CFrame = head.CFrame * CFrame.Angles(0,0,math.rad(timer * 25/(Debounces.FPS/60)))
  518. timer = timer + 1/30/(Debounces.FPS/60)
  519. end
  520. head.CFrame = CFrame.new(head.CFrame.p,aimPos)
  521. local ray = Ray.new(head.CFrame.p,(aimPos - head.CFrame.p).unit * 999)
  522. local hit, pos = workspace:FindPartOnRay(ray,c)
  523. local dis = (head.CFrame.p - pos).magnitude
  524. local rayPart = Instance.new("Part",rayModel)
  525. rayPart.Material = "Neon"
  526. rayPart.FormFactor = "Custom"
  527. rayPart.BrickColor = BrickColor.new(1,1,1)
  528. rayPart.Anchored = true
  529. rayPart.CanCollide = false
  530. rayPart.Size = Vector3.new(7,7,dis + 400)
  531. local rayCFrame = CFrame.new(head.CFrame.p + (aimPos - head.CFrame.p).unit * (dis/2 + 200),head.CFrame.p + (aimPos - head.CFrame.p).unit * dis * 2)
  532. rayPart.CFrame = rayCFrame
  533. head:Destroy()
  534. end)
  535. wait()
  536. local s = Instance.new("Sound",head)
  537. s.Volume = 1
  538. s.SoundId = "rbxassetid://332223043"
  539. s:Play()
  540. wait(.04)
  541. end
  542. end
  543. end)
  544.  
  545. uinps.InputBegan:connect(function(InputObj)
  546. if InputObj.KeyCode == Enum.KeyCode.E and Debounces.isAttacking == false and Debounces.isSprinting == false and Debounces.isPassive == true and Debounces.isTyping == false then
  547. Debounces.isAttacking = true
  548. local aimPos = c.HumanoidRootPart.CFrame:toWorldSpace(CFrame.new(0,0,-999)).p
  549. local head = Instance.new("Part",c)
  550. head.Size = Vector3.new(18,.2,18)
  551. head.CanCollide = false
  552. head.Anchored = true
  553. head.CFrame = CFrame.new(c.HumanoidRootPart.CFrame:toWorldSpace(CFrame.new(0,0,-9)).p,aimPos)
  554. head.Transparency = 1
  555. for i = 1,2 do
  556. local decal = Instance.new("Decal",head)
  557. decal.Texture = "rbxassetid://323497117"
  558. if i == 1 then
  559. decal.Face = Enum.NormalId.Top
  560. else
  561. decal.Face = Enum.NormalId.Bottom
  562. end
  563. end
  564. setLerp(.1)
  565. setJointCFrames({
  566. CFrame.new(Vector3.new(0, 0, 0)) * CFAngles(Vector3.new(0, 0, 0));
  567. CFrame.new(Vector3.new(0, 1.499, -0.09)) * CFAngles(Vector3.new(-11.676, -0.001, -0.001));
  568. CFrame.new(Vector3.new(-1.7, 0, 0)) * CFAngles(Vector3.new(-12.808, -28.88, -21.502));
  569. CFrame.new(Vector3.new(1.699, 1.2, 0.599)) * CFAngles(Vector3.new(-146.606, 16.571, 13.928));
  570. CFrame.new(Vector3.new(-0.501, -1.601, 0.6)) * CFAngles(Vector3.new(-60, 0, -0.001));
  571. CFrame.new(Vector3.new(0.5, -1.4, -0.4)) * CFAngles(Vector3.new(-15.001, -15.001, 0));
  572. })
  573. spawn(function()
  574. local timer = 0
  575. while rs.RenderStepped:wait() do
  576. if timer >= 1.55/.8 then
  577. break
  578. end
  579. head.CFrame = head.CFrame * CFrame.Angles(0,0,math.rad(timer * 25/(Debounces.FPS/60)))
  580. timer = timer + 1/30/(Debounces.FPS/60)
  581. end
  582. head.CFrame = CFrame.new(head.CFrame.p,aimPos)
  583. local ray = Ray.new(head.CFrame.p,(aimPos - head.CFrame.p).unit * 999)
  584. local hit, pos = workspace:FindPartOnRay(ray,c)
  585. local dis = (head.CFrame.p - pos).magnitude
  586. local rayPart = Instance.new("Part",rayModel)
  587. rayPart.Material = "Neon"
  588. rayPart.FormFactor = "Custom"
  589. rayPart.Name = "Punch"
  590. rayPart.BrickColor = BrickColor.new(1,1,1)
  591. rayPart.Anchored = true
  592. rayPart.CanCollide = false
  593. rayPart.Size = Vector3.new(28,28,dis + 400)
  594. local rayCFrame = CFrame.new(head.CFrame.p + (aimPos - head.CFrame.p).unit * (dis/2 + 200),head.CFrame.p + (aimPos - head.CFrame.p).unit * dis * 2)
  595. rayPart.CFrame = rayCFrame
  596. head:Destroy()
  597. end)
  598. wait()
  599. local s = Instance.new("Sound",head)
  600. s.Volume = 1
  601. s.SoundId = "rbxassetid://332223043"
  602. s.Pitch = .8
  603. s:Play()
  604. wait(.75)
  605. setLerp(.17)
  606. setJointCFrames({
  607. CFrame.new(Vector3.new(0, -.5, 0)) * CFAngles(Vector3.new(-20, 15, 0));
  608. CFrame.new(Vector3.new(0, 1.499, -0.09)) * CFAngles(Vector3.new(-11.676, 14.999, -0.001));
  609. CFrame.new(Vector3.new(-1.7, 0, 0.2)) * CFAngles(Vector3.new(-33.928, -4.374, -38.76));
  610. CFrame.new(Vector3.new(1.499, 0.4, -0.601)) * CFAngles(Vector3.new(74.335, 25.091, -6.155));
  611. CFrame.new(Vector3.new(-0.501, -1.601, 0.6)) * CFAngles(Vector3.new(-45, 0, -0.001));
  612. CFrame.new(Vector3.new(0.5, -1.8, -0.4)) * CFAngles(Vector3.new(-15, -15, 0));
  613. })
  614. wait(.5)
  615. Debounces.isAttacking = false
  616. end
  617. end)
  618.  
  619. reflect = function(d,n)
  620. local i, n = -1 * d.unit, n.unit
  621. local dot = n:Dot(i)
  622. return 2*dot*n - i
  623. end
  624.  
  625. makeReflectionBeam = function(pos,look,isCrit)
  626. local ray = Ray.new(pos,look)
  627. local hit,hitpos,norm = workspace:FindPartOnRay(ray,c)
  628. local e = Instance.new("Part",rayModel)
  629. e.Anchored = true
  630. e.CanCollide = false
  631. e.BrickColor = BrickColor.new("White")
  632. e.Material = "Neon"
  633. e.FormFactor = "Custom"
  634. e.Size = Vector3.new(6,6,(pos - hitpos).magnitude)
  635. if isCrit == true then
  636. e.Size = Vector3.new(16,16,(pos - hitpos).magnitude)
  637. e.Name = "Punch"
  638. end
  639. e.CFrame = CFrame.new(pos + (hitpos - pos)/2, pos)
  640. local e = Instance.new("Sound",c)
  641. if isCrit == true then
  642. e.Volume = .5
  643. else
  644. e.Volume = .3
  645. e.Pitch = 1.5
  646. end
  647. e.SoundId = "rbxassetid://200632875"
  648. e:Play()
  649. spawn(function()
  650. wait(6)
  651. e:Destroy()
  652. end)
  653. wait(.05)
  654. if hit ~= nil then
  655. newDir = reflect(look.unit,norm,isCrit)
  656. makeReflectionBeam(hitpos,newDir * 999,isCrit)
  657. end
  658. end
  659.  
  660. uinps.InputBegan:connect(function(InputObject)
  661. if InputObject.KeyCode == Enum.KeyCode.Q and Debounces.isAttacking == false and Debounces.isSprinting == true and Debounces.isPassive == true and Debounces.isTyping == false then
  662. local isLooping = true
  663. uinps.InputEnded:connect(function(InputObject2)
  664. if InputObject2.KeyCode == Enum.KeyCode.Q then
  665. isLooping = false
  666. end
  667. end)
  668. while true do
  669. if isLooping == false then
  670. break
  671. end
  672. Debounces.attackNumber = Debounces.attackNumber + 1
  673. local aimPos = mouse.Hit.p
  674. local head = Instance.new("Part",c)
  675. head.Size = Vector3.new(12,.2,12)
  676. head.CanCollide = false
  677. head.Anchored = true
  678. head.Transparency = 1
  679. for i = 1,2 do
  680. local decal = Instance.new("Decal",head)
  681. decal.Texture = "rbxassetid://323497117"
  682. if i == 1 then
  683. decal.Face = Enum.NormalId.Top
  684. else
  685. decal.Face = Enum.NormalId.Bottom
  686. end
  687. end
  688. if Debounces.attackNumber%2 == 1 then
  689. head.CFrame = CFrame.new(c.Torso.CFrame:toWorldSpace(CFrame.new(8,8,.5)).p,aimPos)
  690. else
  691. head.CFrame = CFrame.new(c.Torso.CFrame:toWorldSpace(CFrame.new(-8,8,.5)).p,aimPos)
  692. end
  693. spawn(function()
  694. local timer = 0
  695. while rs.RenderStepped:wait() do
  696. if timer >= 1.55 then
  697. break
  698. end
  699. head.CFrame = head.CFrame * CFrame.Angles(0,0,math.rad(timer * 25/(Debounces.FPS/60)))
  700. timer = timer + 1/30/(Debounces.FPS/60)
  701. end
  702. head.CFrame = CFrame.new(head.CFrame.p,aimPos)
  703. head:Destroy()
  704. makeReflectionBeam(head.CFrame.p,(head.CFrame.p - aimPos).unit * -999,false)
  705. end)
  706.  
  707. wait()
  708. local s = Instance.new("Sound",head)
  709. s.Volume = 1
  710. s.SoundId = "rbxassetid://332223043"
  711. s.Pitch = 1.02
  712. s:Play()
  713. wait(.2)
  714. end
  715. end
  716. end)
  717.  
  718. uinps.InputBegan:connect(function(InputObj)
  719. if InputObj.KeyCode == Enum.KeyCode.E and Debounces.isAttacking == false and Debounces.isSprinting == true and Debounces.isPassive == true and Debounces.isTyping == false then
  720. Debounces.isAttacking = true
  721. local aimPos = c.HumanoidRootPart.CFrame:toWorldSpace(CFrame.new(0,0,-999)).p
  722. local head = Instance.new("Part",c)
  723. head.Size = Vector3.new(18,.2,18)
  724. head.CanCollide = false
  725. head.Anchored = true
  726. head.CFrame = CFrame.new(c.HumanoidRootPart.CFrame:toWorldSpace(CFrame.new(0,0,-9)).p,aimPos)
  727. head.Transparency = 1
  728. for i = 1,2 do
  729. local decal = Instance.new("Decal",head)
  730. decal.Texture = "rbxassetid://323497117"
  731. if i == 1 then
  732. decal.Face = Enum.NormalId.Top
  733. else
  734. decal.Face = Enum.NormalId.Bottom
  735. end
  736. end
  737. setLerp(.1)
  738. setJointCFrames({
  739. CFrame.new(Vector3.new(0, 0, 0)) * CFAngles(Vector3.new(0, 0, 0));
  740. CFrame.new(Vector3.new(0, 1.499, -0.09)) * CFAngles(Vector3.new(-11.676, -0.001, -0.001));
  741. CFrame.new(Vector3.new(-1.7, 0, 0)) * CFAngles(Vector3.new(-12.808, -28.88, -21.502));
  742. CFrame.new(Vector3.new(1.699, 1.2, 0.599)) * CFAngles(Vector3.new(-146.606, 16.571, 13.928));
  743. CFrame.new(Vector3.new(-0.501, -1.601, 0.6)) * CFAngles(Vector3.new(-60, 0, -0.001));
  744. CFrame.new(Vector3.new(0.5, -1.4, -0.4)) * CFAngles(Vector3.new(-15.001, -15.001, 0));
  745. })
  746. spawn(function()
  747. local timer = 0
  748. while rs.RenderStepped:wait() do
  749. if timer >= 1.55/.8 then
  750. break
  751. end
  752. head.CFrame = head.CFrame * CFrame.Angles(0,0,math.rad(timer * 25/(Debounces.FPS/60)))
  753. timer = timer + 1/30/(Debounces.FPS/60)
  754. end
  755. head.CFrame = CFrame.new(head.CFrame.p,aimPos)
  756. head:Destroy()
  757. makeReflectionBeam(head.CFrame.p,(head.CFrame.p - aimPos).unit * -999,true)
  758. end)
  759. wait()
  760. local s = Instance.new("Sound",head)
  761. s.Volume = 2
  762. s.SoundId = "rbxassetid://332223043"
  763. s.Pitch = .8
  764. s:Play()
  765. wait(.75)
  766. setLerp(.17)
  767. setJointCFrames({
  768. CFrame.new(Vector3.new(0, -.5, 0)) * CFAngles(Vector3.new(-20, 15, 0));
  769. CFrame.new(Vector3.new(0, 1.499, -0.09)) * CFAngles(Vector3.new(-11.676, 14.999, -0.001));
  770. CFrame.new(Vector3.new(-1.7, 0, 0.2)) * CFAngles(Vector3.new(-33.928, -4.374, -38.76));
  771. CFrame.new(Vector3.new(1.499, 0.4, -0.601)) * CFAngles(Vector3.new(74.335, 25.091, -6.155));
  772. CFrame.new(Vector3.new(-0.501, -1.601, 0.6)) * CFAngles(Vector3.new(-45, 0, -0.001));
  773. CFrame.new(Vector3.new(0.5, -1.8, -0.4)) * CFAngles(Vector3.new(-15, -15, 0));
  774. })
  775. wait(.5)
  776. Debounces.isAttacking = false
  777. end
  778. end)
  779.  
  780. uinps.InputBegan:connect(function(InputObj)
  781. if InputObj.KeyCode == Enum.KeyCode.Slash then
  782. local finishEvent = nil
  783. Debounces.isTyping = true
  784. finishEvent = uinps.InputBegan:connect(function(InputObj)
  785. if InputObj.KeyCode == Enum.KeyCode.Return or InputObj.UserInputType == Enum.UserInputType.MouseButton1 then
  786. Debounces.isTyping = false
  787. finishEvent:disconnect()
  788. end
  789. end)
  790. end
  791. end)
  792.  
  793. uinps.InputBegan:connect(function(InputObj)
  794. if InputObj.KeyCode == Enum.KeyCode.LeftShift then
  795. Debounces.isSprinting = true
  796. end
  797. end)
  798.  
  799. uinps.InputEnded:connect(function(InputObj)
  800. if InputObj.KeyCode == Enum.KeyCode.LeftShift then
  801. Debounces.isSprinting = false
  802. end
  803. end)
  804.  
  805. rs.RenderStepped:connect(function()
  806. Debounces.FPS = 1/rs.RenderStepped:wait()
  807. local FPSLerp = AnimStat.lerpSpeed/(Debounces.FPS/60)
  808. if Debounces.isPassive == false then
  809. fire.Enabled = false
  810. light.Range = 0
  811. fight:Pause()
  812. sans:Resume()
  813. efxBlock.Transparency = 1
  814. else
  815. fire.Enabled = true
  816. light.Range = 10
  817. fight:Resume()
  818. sans:Pause()
  819. efxBlock.Transparency = 0
  820. end
  821. for i,v in pairs (rayModel:children()) do
  822. if v.Transparency >= 1 then
  823. v:Destroy()
  824. else
  825. v.CanCollide = true
  826. local parts = v:GetTouchingParts()
  827. v.CanCollide = false
  828. for i = 1,#parts do
  829. if parts[i].Parent:FindFirstChild("Humanoid") and parts[i].Parent ~= c and v.Name ~= "Punch" then
  830. parts[i].Parent.Humanoid:TakeDamage(.5/(Debounces.FPS/60))
  831. elseif parts[i].Parent:FindFirstChild("Humanoid") and parts[i].Parent ~= c and v.Name == "Punch" then
  832. parts[i].Parent.Humanoid:TakeDamage(3.1/(Debounces.FPS/60))
  833. end
  834. end
  835. v.Size = v.Size + Vector3.new(1/(Debounces.FPS/60),1/(Debounces.FPS/60),0)
  836. v.Transparency = v.Transparency + .05/(Debounces.FPS/60)
  837. end
  838. end
  839. for i = 1,#Joints do
  840. Joints[i].C0 = Joints[i].C0:lerp(JointTargets[i], FPSLerp)
  841. end
  842. local sineval = math.sin(tick() * 2) * 3
  843. fire.Acceleration = Vector3.new(sineval,1,sineval)
  844. light.Brightness = math.sin(math.cos(tick() * 2) * 1.5)
  845. end)
Advertisement
Add Comment
Please, Sign In to add comment
Advertisement