Advertisement
Guest User

Sensuke's Sans

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