Advertisement
NextFlamePB

Sensuke's Sans Improved

May 28th, 2016
4,441
0
Never
Not a member of Pastebin yet? Sign Up, it unlocks many cool features!
Lua 53.33 KB | None | 0 0
  1. dot = false
  2. des = false
  3. local ChatService = game:GetService("Chat")
  4. local player = game.Players.LocalPlayer
  5. char = player.Character
  6. hum = char.Humanoid
  7. torso = hum.Torso
  8. lig = Instance.new("PointLight",player.Character.Torso)
  9. lig.Color=Color3.new(0,255,255)
  10. m=player:GetMouse()
  11. bb = Instance.new("BillboardGui",player.Character.Head)
  12. bb.Enabled = true
  13. bb.AlwaysOnTop = true
  14. bb.Size = UDim2.new(0,200,0,50)
  15. bb.StudsOffset = Vector3.new(0,1,0)
  16. gui=Instance.new("TextBox",bb)
  17. gui.Text = "* "
  18. gui.Size = UDim2.new(0,133,0,45)
  19. gui.Position=UDim2.new(0,57,0,-40)
  20. gui.TextColor3 = Color3.new(255,255,255)
  21. gui.BackgroundColor3=Color3.new(0,0,0)
  22. gui.TextWrapped = true
  23. gui.TextScaled = true
  24. gui.TextXAlignment = "Left"
  25. gui.TextYAlignment = "Top"
  26. gui.Visible = false
  27. gui.BorderColor3 = Color3.new(0,0,0)
  28.  
  29. gui1=Instance.new("TextButton",bb)
  30. gui1.Position=UDim2.new(0,5,0,-43)
  31. gui1.Size = UDim2.new(0,190,0,51)
  32.  
  33. gui1.TextColor3 = Color3.new(255,255,255)
  34. gui1.BackgroundColor3=Color3.new(255,255,255)
  35.  
  36. gui1.Visible = false
  37. img = Instance.new("ImageLabel",bb)
  38. img.Size = UDim2.new(0,46,0,47)
  39. img.Position = UDim2.new(0,10,0,-41)
  40. img.Image = "rbxassetid://388166921"
  41. img.BorderColor3 = Color3.new(0,0,0)
  42. img.Visible = false
  43. asd = Instance.new("Sound",player.Character.Torso)
  44. asd.SoundId = "http://www.roblox.com/asset/?id = 358280695"
  45.  
  46. asd1 = Instance.new("Sound",player.Character.Torso)
  47. asd1.SoundId = "http://www.roblox.com/asset/?id = 358280695"
  48.  
  49. asd2 = Instance.new("Sound",player.Character.Torso)
  50. asd2.SoundId = "http://www.roblox.com/asset/?id = 306370481"
  51. asd2.Looped = true
  52. asd3 = Instance.new("Sound",player.Character.Torso)
  53. asd3.SoundId = "http://www.roblox.com/asset/?id = 316014309"
  54. asd3.Looped = true
  55. asd4 = Instance.new("Sound",player.Character.Torso)
  56. asd4.SoundId = "http://www.roblox.com/asset/?id = 388938813"
  57. asd4.Looped = false
  58. asd5 = Instance.new("Sound",player.Character.Torso)
  59. asd5.SoundId = "http://www.roblox.com/asset/?id = 0"
  60. asd5.Looped = true
  61. dunkd = Instance.new("Sound",player.Character.Torso)
  62. dunkd.SoundId = "http://www.roblox.com/asset/?id = 333078694"
  63. dunkd.Looped = false
  64. function play(play)
  65. asd:Play()
  66. asd1:Play()
  67. end
  68. eye = Instance.new("Part",player.Character)
  69. eye.BrickColor = BrickColor.new("Toothpaste")
  70. eye.Material = "Neon"
  71. eye.FormFactor = 3
  72. eye.Shape = "Ball"
  73. eye.Size = Vector3.new(0.37,0.37,0.1)
  74. weld = Instance.new("Weld",eye)
  75. weld.Part0 = eye
  76. weld.Part1 = player.Character.Head
  77. weld.C0 = CFrame.new(0.1,-0.2,0.45)
  78. eye.Transparency = 1
  79. -- listen for their chatting
  80. player.Chatted:connect(function(message)
  81. a = string.len(message)
  82. gui.Text = "* "
  83. gui.Visible = true
  84. gui1.Visible = true
  85. des = false
  86. img.Visible = true
  87. print(a)
  88. if dot == false then
  89. for i = 1,string.len(message) do wait(0.07)
  90. gui.Text =gui.Text..message:sub(i,i)
  91.  
  92. play()
  93. end
  94. end
  95.  
  96. des = true
  97. end)
  98. m.KeyDown:connect(function(k)
  99. if k == "g" then
  100. asd2:Play()
  101. eye.Transparency = 0
  102.  
  103. end
  104. end)
  105. m.KeyDown:connect(function(k)
  106. if k == "p" then
  107. eye.Transparency = 1
  108. asd3:Play()
  109. end
  110. end)
  111. m.KeyDown:connect(function(k)
  112. if k == "r" then
  113. eye.Transparency = 0
  114. asd4:Play()
  115. end
  116. end)
  117. m.KeyDown:connect(function(k)
  118. if k == "q" then
  119. eye.Transparency = 1
  120. asd5:Play()
  121. end
  122. end)
  123. m.KeyDown:connect(function(k)
  124. if k == "z" then
  125.  
  126. img.Image = "rbxassetid://388167098"
  127. end
  128. end)
  129. m.KeyDown:connect(function(k)
  130. if k == "c" then
  131. img.Image = "rbxassetid://388166921"
  132. end
  133. end)
  134. m.KeyDown:connect(function(k)
  135. if k == "n" then
  136. img.Image = "rbxassetid://388166991"
  137. end
  138. end)
  139. m.KeyDown:connect(function(k)
  140. if k == "b" then
  141. img.Image = "rbxassetid://378060690"
  142. end
  143. end)
  144. m.KeyDown:connect(function(k)
  145. if k == "m" then
  146. img.Image = "rbxassetid://378609498"
  147. end
  148. end)
  149. m.KeyDown:connect(function(k)
  150. if k == "v" then
  151. img.Image = "rbxassetid://388166961"
  152. end
  153. end)
  154. m.KeyDown:connect(function(k)
  155. if k == "h" then
  156. img.Image = "rbxassetid://378577428"
  157. end
  158. end)
  159. m.KeyDown:connect(function(k)
  160. if k == "j" then
  161. img.Image = "rbxassetid://388167116"
  162. end
  163. end)
  164. m.KeyDown:connect(function(k)
  165. if k == "l" then
  166. img.Image = "rbxassetid://388167154"
  167. print("You take your very last breath...")
  168. asdd = Instance.new("Sound",player.Character.Torso)
  169. asdd.SoundId = "http://www.roblox.com/asset/?id = 357417055"
  170. asdd.Looped = false
  171. spawn(function()
  172. wait()
  173. asdd:Play()
  174. end)
  175. wait(2)
  176. asddd = Instance.new("Sound",player.Character.Torso)
  177. asddd.SoundId = "http://www.roblox.com/asset/?id = 387183672"
  178. asddd.Looped = false
  179. spawn(function()
  180. wait()
  181. asddd:Play()
  182. end)
  183. wait(2)
  184. asdded = Instance.new("Sound",player.Character.Torso)
  185. asdded.SoundId = "http://www.roblox.com/asset/?id = 387187707"
  186. asdded.Looped = false
  187. spawn(function()
  188. wait()
  189. asdded:Play()
  190. end)
  191. char:BreakJoints()
  192. end
  193. end)
  194. m.KeyDown:connect(function(k)
  195. if k == "x" then
  196. if des == true then
  197. gui.Visible = false
  198. gui.Text = "* "
  199. gui1.Visible = false
  200. img.Visible = false
  201. end
  202. end
  203. end)
  204. m.KeyDown:connect(function(k)
  205. if k == "f" then
  206. asd3:Stop()
  207. asd2:Stop()
  208. asd4:Stop()
  209. dunkd:Stop()
  210. eye.Transparency = 1
  211. asd5:Stop()
  212. end
  213. end)
  214. m.KeyDown:connect(function(k)
  215. if k == "u" then
  216. dunkd = Instance.new("Sound",player.Character.Torso)
  217. dunkd.SoundId = "http://www.roblox.com/asset/?id = 333078694"
  218. dunkd.Looped = false
  219. dunkd:Play()
  220. end
  221. end)
  222. m.KeyDown:connect(function(k)
  223. if k == "y" then
  224. img.Image = "rbxassetid://378198656"
  225. end
  226. end)
  227. -- my god...
  228. -- Suck_HiyaThere moves to arizona
  229.  
  230. --------------------------------------------------------
  231.  
  232.         pls = game:GetService'Players'
  233.         rs = game:GetService'RunService'
  234.         uinps = game:GetService'UserInputService'
  235.         lp = pls.LocalPlayer
  236.         mouse = lp:GetMouse()
  237.         c = lp.Character
  238.         human = c.Humanoid
  239.         human.MaxHealth = 50
  240.         soundVol = 0
  241.         wait()
  242.         human.Health = 50
  243.         c.Health:Destroy()
  244.  
  245. --------------------------------------------------------
  246.  
  247.         Debounces = {
  248.                 AnimationCycles = 0;
  249.                 FPS = 0;
  250.                 scalingDamage = false;
  251.                 damageLevel = 0;
  252.                 attackNumber = 0;
  253.                 isAttacking = false;
  254.                 isMoving = false;
  255.                 isSprinting = false;
  256.                 isBoosting = false;
  257.                 isPassive = false;
  258.                 isTyping = false;
  259.         }
  260.  
  261. --------------------------------------------------------
  262.  
  263.         numLerp = function(start, goal, alpha)
  264.                 return(((goal - start) * alpha) + start)
  265.         end
  266.  
  267.         CFrameZero = function()
  268.                 return CFrame.new(Vector3.new())
  269.         end
  270.  
  271.         rad = function(value)
  272.                 return math.rad(value)
  273.         end
  274.  
  275.         CFAngles = function(Vector)
  276.                 return CFrame.Angles(rad(Vector.x),rad(Vector.y),rad(Vector.z))
  277.         end
  278.  
  279. --------------------------------------------------------
  280.  
  281.         AnimStat = {
  282.                 lerpSpeed = .2;
  283.                 lerpSpeed2 = .35;
  284.                 lerpTween = 0;
  285.         }
  286.  
  287.         Joints = {
  288.                 c.HumanoidRootPart.RootJoint;
  289.                 c.Torso.Neck;
  290.                 c.Torso['Left Shoulder'];
  291.                 c.Torso['Right Shoulder'];
  292.                 c.Torso['Left Hip'];
  293.                 c.Torso['Right Hip'];
  294.         }
  295.  
  296.         JointTargets = {
  297.                 CFrameZero();
  298.                 CFrameZero();
  299.                 CFrameZero();
  300.                 CFrameZero();
  301.                 CFrameZero();
  302.                 CFrameZero();
  303.         }
  304.  
  305. --------------------------------------------------------
  306.  
  307.         BodyColors = {
  308.                 HeadColor = BrickColor.new("Institutional white");
  309.                 LeftArmColor = BrickColor.new("Institutional white");
  310.                 RightArmColor = BrickColor.new("Institutional white");
  311.                 LeftLegColor = BrickColor.new("Institutional white");
  312.                 RightLegColor = BrickColor.new("Institutional white");
  313.                 TorsoColor = BrickColor.new("Mid gray");
  314.         }
  315.  
  316.         Customs = {
  317.                 Face = "http://www.roblox.com/asset/?id=8560915";
  318.                 Shirt = "http://www.roblox.com/asset/?id=334781688";
  319.                 Pants = "http://www.roblox.com/asset/?id=335237283";
  320.         }
  321.  
  322. --------------------------------------------------------
  323.  
  324.         prepareCharacter = function()
  325.                 local transPoints = {
  326.                         NumberSequenceKeypoint.new(0,0,0),
  327.                         NumberSequenceKeypoint.new(.4,.05,0),
  328.                         NumberSequenceKeypoint.new(.8,.16,0),
  329.                         NumberSequenceKeypoint.new(1,.25,0)
  330.                 }
  331.                 local sizePoints = {
  332.                         NumberSequenceKeypoint.new(0,.5,0),
  333.                         NumberSequenceKeypoint.new(.18,.5,0),
  334.                         NumberSequenceKeypoint.new(.49,.69,0),
  335.                         NumberSequenceKeypoint.new(.74,.5,0),
  336.                         NumberSequenceKeypoint.new(.92,.25,0),
  337.                         NumberSequenceKeypoint.new(1,.0625,0)
  338.                 }
  339.                 local Size = NumberSequence.new(sizePoints)
  340.                 local Transparency = NumberSequence.new(transPoints)
  341.                 rayModel = Instance.new("Model",c)
  342.                 efxBlock = Instance.new("Part",c)
  343.                 efxBlock.Material = "Neon"
  344.                 efxBlock.FormFactor = "Custom"
  345.                 efxBlock.Size = Vector3.new(.3,.3,.3)
  346.                 light = Instance.new("PointLight",c.Head)
  347.                 light.Range = 8
  348.                 light.Color = Color3.new(1,1,1)
  349.                 light.Shadows = false
  350.                 local particles = Instance.new("ParticleEmitter",efxBlock)
  351.                 particles.Color = ColorSequence.new(Color3.new(.85,.85,.85),Color3.new(1,1,1))
  352.                 particles.ZOffset = 1
  353.                 particles.LightEmission = .96
  354.                 particles.Size = Size
  355.                 particles.Name = "Fire"
  356.                 particles.Transparency = Transparency
  357.                 particles.LockedToPart = true
  358.                 particles.Rate = 25
  359.                 particles.EmissionDirection = "Right"
  360.                 particles.Acceleration = Vector3.new(-.5,0,0)
  361.                 particles.Texture = "rbxassetid://24378732"
  362.                 particles.Lifetime = NumberRange.new(.25,.25)
  363.                 particles.Speed = NumberRange.new(-.5,5)
  364.                 script.Parent = efxBlock
  365.                 fire = particles
  366.                 local offset = Vector3.new(0.2, .23, -0.5)
  367.                 local weld = Instance.new("Weld",c.Head)
  368.                 weld.Part0 = c.Head
  369.                 weld.Part1 = efxBlock
  370.                 weld.C0 = CFrame.new(offset) * CFrame.Angles(math.rad(0),math.rad(0),math.rad(0))
  371.                 efxBlock.Parent = c
  372.                 local music = Instance.new("Sound",c.Torso)
  373.                 music.SoundId = "rbxassetid://316012176"
  374.                 music.Looped = true
  375.                 music.Volume = soundVol
  376.                 fight = music
  377.                 local music2 = Instance.new("Sound",c.Torso)
  378.                 music2.SoundId = "rbxassetid://316014309"
  379.                 music2.Looped = true
  380.                 music2.Volume = soundVol
  381.                 sans = music2
  382.                 pointGyro = Instance.new("BodyGyro",c.HumanoidRootPart)
  383.                 pointGyro.P = 1e7
  384.                 pointGyro.D = 1e3
  385.                 pointGyro.MaxTorque = Vector3.new(0,1e7,0)
  386.                 animator = c.Humanoid:FindFirstChild("Animator")
  387.                 if animator then
  388.                         animator:Destroy()
  389.                 end
  390.                 c.Torso.roblox:Destroy()
  391.                 for i,v in pairs (c.Head:children()) do
  392.                         if v.ClassName == "Sound" then
  393.                                 v:Destroy()
  394.                         end
  395.                 end
  396.                 for i = 1,#Joints do
  397.                         Joints[i].C1 = CFrame.new(Vector3.new())
  398.                 end
  399.                 human.WalkSpeed = 0
  400.                 human.JumpPower = 0
  401.         end
  402.  
  403.         uinps.InputBegan:connect(function(InputObject)
  404.                 if InputObject.KeyCode == Enum.KeyCode.K and Debounces.isTyping == false then
  405.                         Debounces.isPassive = not Debounces.isPassive
  406.                 end
  407.         end)
  408.  
  409.         setJointCFrames = function(table)
  410.                 for i = 1,#table do
  411.                         JointTargets[i] = table[i]
  412.                 end
  413.                 AnimationCycles = 0
  414.         end
  415.  
  416.         setLerp = function(speed)
  417.                 AnimStat.lerpSpeed = speed
  418.         end
  419.  
  420.         setTween = function(tween)
  421.                 AnimStat.lerpTween = tween
  422.         end
  423.  
  424.         takeDamage = function(position,damage,distance,platformStand)
  425.                 for i,v in pairs (pls:children()) do
  426.                         if v.ClassName == "Player" and v:FindFirstChild("Character") then
  427.                                 local torso = v.Character:FindFirstChild("Torso")
  428.                                 if torso and (torso.Position - position).magnitude < distance then
  429.                                 if v.Character.Humanoid.MaxHealth > 1000 then
  430.                                     v.Character.Humanoid.MaxHealth = 100;
  431.                                v.Character.Humanoid.Breakjoints()
  432.                                 end
  433.                                
  434.                            
  435.                                         v.Character.Humanoid:TakeDamage(damage)
  436.                                         if platformStand == true then
  437.                                                 v.Character.PlatformStand = platformStand
  438.                                         end
  439.                                 end
  440.                         end
  441.                 end
  442.         end
  443.  
  444. --------------------------------------------------------
  445.  
  446.         prepareCharacter()
  447.  
  448. --------------------------------------------------------
  449.  
  450.         spawn(function()
  451.                 local sine = 0
  452.                 while wait() do
  453.                         pointGyro.CFrame = CFrame.new(Vector3.new(),(mouse.Hit.p - c.HumanoidRootPart.CFrame.p).unit * 100)
  454.                         if Debounces.isAttacking == false and Debounces.isMoving == false and Debounces.isBoosting == false then
  455.                                 setLerp(.1)
  456.                                 if Debounces.isPassive == true then
  457.                                          setJointCFrames({
  458.                                                 CFrame.new(Vector3.new(0, 0 + math.sin(tick() * 1.5)/25, 0)) * CFAngles(Vector3.new(0, 0, 0));
  459.                                                 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));
  460.                                                 CFrame.new(Vector3.new(-1.06, -0.03 + math.sin(tick() * 1.5)/25, 0.449)) * CFAngles(Vector3.new(-29.511, 0, 29.51));
  461.                                                 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));
  462.                                                 CFrame.new(Vector3.new(-0.49, -2, -0.05/1.5)) * CFAngles(Vector3.new(0, 8.885, 0));
  463.                                                 CFrame.new(Vector3.new(0.49, -2, -0.05/1.5)) * CFAngles(Vector3.new(-0.001, -8.886, 0));
  464.                                         })
  465.                                 else
  466.                                         setJointCFrames({
  467.                                                 CFrame.new(Vector3.new(0, 0 + math.sin(tick() * 1.5)/25, 0)) * CFAngles(Vector3.new(0, 0, 0));
  468.                                                 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));
  469.                                                 CFrame.new(Vector3.new(-1.06, -0.03 + math.sin(tick() * 1.5)/25, 0.449)) * CFAngles(Vector3.new(-29.511, 0, 29.51));
  470.                                                 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));
  471.                                                 CFrame.new(Vector3.new(-0.49, -2, -0.05/1.5)) * CFAngles(Vector3.new(0, 8.885, 0));
  472.                                                 CFrame.new(Vector3.new(0.49, -2, -0.05/1.5)) * CFAngles(Vector3.new(-0.001, -8.886, 0));
  473.                                         })
  474.                                 end
  475.                         elseif Debounces.isAttacking == false and Debounces.isMoving == true and Debounces.isBoosting == false then
  476.                                 sine = sine + math.rad(12)
  477.                                 human.WalkSpeed = 15
  478.                                 setLerp(.15)
  479.                                 setJointCFrames({
  480.                                         CFrame.new(Vector3.new(0, 0, 0)) * CFAngles(Vector3.new(0, math.sin(sine) * -2.5, 0));
  481.                                         CFrame.new(Vector3.new(0, 1.499, -0.04)) * CFAngles(Vector3.new(-5.676, -0.001 - math.sin(sine) * 3, -0.001));
  482.                                         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));
  483.                                         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));
  484.                                         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));
  485.                                         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));
  486.                                 })
  487.                         end
  488.                         if Debounces.scalingDamage == true then
  489.                                 takeDamage(c.HumanoidRootPart.Position,Debounces.damageLevel,8,true)
  490.                         end
  491.                 end
  492.         end)
  493.  
  494.         human.Changed:connect(function(prop)
  495.                 if prop == "MoveDirection" then
  496.                         if human.MoveDirection.magnitude > .02 then
  497.                                 Debounces.isMoving = true
  498.                         else
  499.                                 Debounces.isMoving = false
  500.                         end
  501.                 end
  502.         end)
  503.  
  504.         uinps.InputBegan:connect(function(InputObject)
  505.                 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
  506.                         Debounces.isBoosting = true
  507.                         Debounces.damageLevel = 10
  508.                         Debounces.scalingDamage = true
  509.                         local vel = Instance.new("BodyVelocity",c.HumanoidRootPart)
  510.                         setLerp(.15)
  511.                         setJointCFrames({
  512.                                 CFrame.new(Vector3.new(0, -0.901, 0)) * CFAngles(Vector3.new(-22.001, 0, 20));
  513.                                 CFrame.new(Vector3.new(-0.001, 1.52, 0)) * CFAngles(Vector3.new(-10.372, 28.758, -1.837));
  514.                                 CFrame.new(Vector3.new(-0.7, -0.2, -0.801)) * CFAngles(Vector3.new(45, 0, 45));
  515.                                 CFrame.new(Vector3.new(1.7, 0.2, 0.199)) * CFAngles(Vector3.new(-15.001, -15.001, 45));
  516.                                 CFrame.new(Vector3.new(-0.3, -2, 0.2)) * CFAngles(Vector3.new(-11.283, -17.801, 19.495));
  517.                                 CFrame.new(Vector3.new(0.9, -2, -0.201)) * CFAngles(Vector3.new(15, -15, 29.999));
  518.                         })
  519.                         local boostSpeed = 250
  520.                         local efx = Instance.new("Sound",c.Head)
  521.                         efx.SoundId = "rbxassetid://200632875"
  522.                         efx.Pitch = math.random(1100,1300)/1000
  523.                         efx.Volume = .5
  524.                         efx:Play()
  525.                         spawn(function()
  526.                                 wait(5)
  527.                                 efx:Destroy()
  528.                         end)
  529.                         vel.Velocity = (c.HumanoidRootPart.Position - c.HumanoidRootPart.CFrame:toWorldSpace(CFrame.new(1,0,0)).p).unit * boostSpeed
  530.                         vel.P = 1e3
  531.                         vel.MaxForce = Vector3.new(math.huge,0,math.huge)
  532.                         wait(.15)
  533.                         vel.P = 1000
  534.                         vel.MaxForce = Vector3.new(3000,0,3000)
  535.                         vel.Velocity = Vector3.new()
  536.                         wait(.3)
  537.                         setLerp(.3)
  538.                         setJointCFrames({
  539.                                 CFrame.new(Vector3.new(0, -0.901, 0)) * CFAngles(Vector3.new(-22.001, 0, 13));
  540.                                 CFrame.new(Vector3.new(-0.001, 1.52, 0)) * CFAngles(Vector3.new(-30.239, 42.47, 11.879));
  541.                                 CFrame.new(Vector3.new(-1.9, -0.2, -0.401)) * CFAngles(Vector3.new(44.999, 0, -45));
  542.                                 CFrame.new(Vector3.new(1.5, 0.4, 0.599)) * CFAngles(Vector3.new(-62.058, -21.088, -15.383));
  543.                                 CFrame.new(Vector3.new(-0.7, -1.8, 0.6)) * CFAngles(Vector3.new(-59.239, -26.158, -14.457));
  544.                                 CFrame.new(Vector3.new(0.5, -1, -0.801)) * CFAngles(Vector3.new(-0.505, -14.478, -18.968));
  545.                         })
  546.                         wait(.2)
  547.                         vel:Destroy()
  548.                         Debounces.damageLevel = 0
  549.                         Debounces.scalingDamage = false
  550.                         Debounces.isBoosting = false
  551.                 end
  552.         end)
  553.  
  554.         uinps.InputBegan:connect(function(InputObject)
  555.                 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
  556.                         Debounces.isBoosting = true
  557.                         Debounces.damageLevel = 10
  558.                         Debounces.scalingDamage = true
  559.                         local vel = Instance.new("BodyVelocity",c.HumanoidRootPart)
  560.                         setLerp(.15)
  561.                         setJointCFrames({
  562.                                 CFrame.new(Vector3.new(0, -0.901, 0)) * CFAngles(Vector3.new(-22.001, 0, -15));
  563.                                 CFrame.new(Vector3.new(-0.001, 1.52, 0)) * CFAngles(Vector3.new(-13.603, -45.662, -6.645));
  564.                                 CFrame.new(Vector3.new(-1.9, 0, -0.201)) * CFAngles(Vector3.new(31.935, -7.436, -60.853));
  565.                                 CFrame.new(Vector3.new(1.9, 0, 0.399)) * CFAngles(Vector3.new(-3.644, -23.448, 59.102));
  566.                                 CFrame.new(Vector3.new(-1.1, -1.8, 0)) * CFAngles(Vector3.new(-3.616, -11.936, -29.566));
  567.                                 CFrame.new(Vector3.new(0.1, -1.6, -0.601)) * CFAngles(Vector3.new(1.943, -7.181, -32.528));
  568.                         })
  569.                         local boostSpeed = 250
  570.                         local efx = Instance.new("Sound",c.Head)
  571.                         efx.SoundId = "rbxassetid://200632875"
  572.                         efx.Pitch = math.random(1100,1300)/1000
  573.                         efx.Volume = .5
  574.                         efx:Play()
  575.                         spawn(function()
  576.                                 wait(5)
  577.                                 efx:Destroy()
  578.                         end)
  579.                         vel.Velocity = (c.HumanoidRootPart.Position - c.HumanoidRootPart.CFrame:toWorldSpace(CFrame.new(-1,0,0)).p).unit * boostSpeed
  580.                         vel.P = 1e3
  581.                         vel.MaxForce = Vector3.new(math.huge,0,math.huge)
  582.                         wait(.15)
  583.                         vel.P = 1000
  584.                         vel.MaxForce = Vector3.new(3000,0,3000)
  585.                         vel.Velocity = Vector3.new()
  586.                         wait(.3)
  587.                         setLerp(.3)
  588.                         setJointCFrames({
  589.                                 CFrame.new(Vector3.new(0, -0.901, 0)) * CFAngles(Vector3.new(-22.001, 0, -13));
  590.                                 CFrame.new(Vector3.new(-0.001, 1.52, 0)) * CFAngles(Vector3.new(-12.936, -46.206, -2.327));
  591.                                 CFrame.new(Vector3.new(-1.9, 0.2, -0.201)) * CFAngles(Vector3.new(45, 0, -60));
  592.                                 CFrame.new(Vector3.new(1.7, 0, -0.401)) * CFAngles(Vector3.new(14.035, -5.69, 35.342));
  593.                                 CFrame.new(Vector3.new(-0.3, -1.8, 0.6)) * CFAngles(Vector3.new(-55.479, -10.612, 15.729));
  594.                                 CFrame.new(Vector3.new(0.5, -1, -0.801)) * CFAngles(Vector3.new(14.999, -15, 14.999));
  595.                         })
  596.                         wait(.2)
  597.                         vel:Destroy()
  598.                         Debounces.damageLevel = 0
  599.                         Debounces.scalingDamage = false
  600.                         Debounces.isBoosting = false
  601.                 end
  602.         end)
  603.  
  604.         uinps.InputBegan:connect(function(InputObject)
  605.                 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
  606.                         Debounces.isBoosting = true
  607.                         Debounces.damageLevel = 10
  608.                         Debounces.scalingDamage = true
  609.                         local vel = Instance.new("BodyVelocity",c.HumanoidRootPart)
  610.                         setLerp(.15)
  611.                         setJointCFrames({
  612.                                 CFrame.new(Vector3.new(0, -0.901, 0)) * CFAngles(Vector3.new(-40.001, 0, 5));
  613.                                 CFrame.new(Vector3.new(-0.001, 1.429, 0.2)) * CFAngles(Vector3.new(25.141, -8.347, 0.878));
  614.                                 CFrame.new(Vector3.new(-1.5, 0, .101)) * CFAngles(Vector3.new(14.999, -0.001, 0));
  615.                                 CFrame.new(Vector3.new(1.7, 0.199, -0.401)) * CFAngles(Vector3.new(28.08, -0.358, 21.087));
  616.                                 CFrame.new(Vector3.new(-0.5, -1.8, 0.6)) * CFAngles(Vector3.new(-29.448, 3.57, -1.5));
  617.                                 CFrame.new(Vector3.new(0.499, -1.6, -0.401)) * CFAngles(Vector3.new(-0.505, -14.478, -3.968));
  618.                         })
  619.                         local boostSpeed = 250
  620.                         local efx = Instance.new("Sound",c.Head)
  621.                         efx.SoundId = "rbxassetid://200632875"
  622.                         efx.Pitch = math.random(1100,1300)/1000
  623.                         efx.Volume = .5
  624.                         efx:Play()
  625.                         spawn(function()
  626.                                 wait(5)
  627.                                 efx:Destroy()
  628.                         end)
  629.                         vel.Velocity = (c.HumanoidRootPart.Position - c.HumanoidRootPart.CFrame:toWorldSpace(CFrame.new(0,0,1)).p).unit * boostSpeed
  630.                         vel.P = 1e3
  631.                         vel.MaxForce = Vector3.new(math.huge,0,math.huge)
  632.                         wait(.15)
  633.                         vel.P = 1000
  634.                         vel.MaxForce = Vector3.new(3000,0,3000)
  635.                         vel.Velocity = Vector3.new()
  636.                         wait(.3)
  637.                         setLerp(.3)
  638.                         setJointCFrames({
  639.                                 CFrame.new(Vector3.new(0, -0.901, 0)) * CFAngles(Vector3.new(-22.001, 40, -13));
  640.                                 CFrame.new(Vector3.new(-0.001, 1.52, 0)) * CFAngles(Vector3.new(-12.936, -46.206, -2.327));
  641.                                 CFrame.new(Vector3.new(-1.9, 0.2, -0.201)) * CFAngles(Vector3.new(45, 0, -60));
  642.                                 CFrame.new(Vector3.new(1.7, 0, -0.401)) * CFAngles(Vector3.new(14.035, -5.69, 35.342));
  643.                                 CFrame.new(Vector3.new(-0.3, -1.8, 0.6)) * CFAngles(Vector3.new(-55.479, -10.612, 15.729));
  644.                                 CFrame.new(Vector3.new(0.5, -1, -0.801)) * CFAngles(Vector3.new(14.999, -15, 14.999));
  645.                         })
  646.                         wait(.2)
  647.                         vel:Destroy()
  648.                         Debounces.damageLevel = 0
  649.                         Debounces.scalingDamage = false
  650.                         Debounces.isBoosting = false
  651.                 end
  652.         end)
  653.  
  654.         uinps.InputBegan:connect(function(InputObject)
  655.                 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
  656.                         Debounces.isBoosting = true
  657.                         Debounces.damageLevel = 10
  658.                         Debounces.scalingDamage = true
  659.                         local vel = Instance.new("BodyVelocity",c.HumanoidRootPart)
  660.                         setLerp(.15)
  661.                         setJointCFrames({
  662.                                 CFrame.new(Vector3.new(0, -.3, 0)) * CFAngles(Vector3.new(15, 0, 0));
  663.                                 CFrame.new(Vector3.new(-0.001, 1.52, -0.03)) * CFAngles(Vector3.new(-5.298, -1.305, -4.093));
  664.                                 CFrame.new(Vector3.new(-1.7, 0, -0.201)) * CFAngles(Vector3.new(12.112, -6.562, -16.939));
  665.                                 CFrame.new(Vector3.new(1.7, 0, -0.201)) * CFAngles(Vector3.new(8.817, 8.378, 20.465));
  666.                                 CFrame.new(Vector3.new(-0.7, -1.8, 0.2)) * CFAngles(Vector3.new(-14.432, 3.06, -2.373));
  667.                                 CFrame.new(Vector3.new(0.5, -1.8, -0.201)) * CFAngles(Vector3.new(-0.505, -14.478, -3.968));
  668.                         })
  669.                         local boostSpeed = 150
  670.                         local boostSpeed = 250
  671.                         local efx = Instance.new("Sound",c.Head)
  672.                         efx.SoundId = "rbxassetid://200632875"
  673.                         efx.Pitch = math.random(1100,1300)/1000
  674.                         efx.Volume = .5
  675.                         efx:Play()
  676.                         spawn(function()
  677.                                 wait(5)
  678.                                 efx:Destroy()
  679.                         end)
  680.                         vel.Velocity = (c.HumanoidRootPart.Position - c.HumanoidRootPart.CFrame:toWorldSpace(CFrame.new(0,0,-1)).p).unit * boostSpeed
  681.                         vel.P = 1e3
  682.                         vel.MaxForce = Vector3.new(math.huge,0,math.huge)
  683.                         wait(.15)
  684.                         vel.P = 1000
  685.                         vel.MaxForce = Vector3.new(3000,0,3000)
  686.                         vel.Velocity = Vector3.new()
  687.                         wait(.3)
  688.                         setLerp(.3)
  689.                         setJointCFrames({
  690.                                 CFrame.new(Vector3.new(0, -.5, 0)) * CFAngles(Vector3.new(4, 0, 0));
  691.                                 CFrame.new(Vector3.new(-0.001, 1.52, -0.03)) * CFAngles(Vector3.new(-20.081, 28.752, 3.598));
  692.                                 CFrame.new(Vector3.new(-1.7, 0.2, -0.601)) * CFAngles(Vector3.new(59.51, -3.841, -14.511));
  693.                                 CFrame.new(Vector3.new(1.7, 0.2, 0.399)) * CFAngles(Vector3.new(-47.597, -13.104, 17.887));
  694.                                 CFrame.new(Vector3.new(-0.7, -1.4, 0.2)) * CFAngles(Vector3.new(-44.477, 3.836, -0.524));
  695.                                 CFrame.new(Vector3.new(0.5, -1.4, -0.601)) * CFAngles(Vector3.new(-15.868, -12.953, -7.631));
  696.                         })
  697.                         wait(.2)
  698.                         vel:Destroy()
  699.                         Debounces.damageLevel = 0
  700.                         Debounces.scalingDamage = false
  701.                         Debounces.isBoosting = false
  702.                 end
  703.         end)
  704.  
  705.         uinps.InputBegan:connect(function(InputObject)
  706.                 if InputObject.KeyCode == Enum.KeyCode.Q and Debounces.isAttacking == false and Debounces.isSprinting == false and Debounces.isPassive == true and Debounces.isTyping == false then
  707.                         local isLooping = true
  708.                         uinps.InputEnded:connect(function(InputObject2)
  709.                                 if InputObject2.KeyCode == Enum.KeyCode.Q then
  710.                                         isLooping = false
  711.                                 end
  712.                         end)
  713.                         while true do
  714.                                 if isLooping == false then
  715.                                         break
  716.                                 end
  717.                                 Debounces.attackNumber = Debounces.attackNumber + 1
  718.                                 local aimPos = mouse.Hit.p
  719.                                 local head = Instance.new("Part",c)
  720.                                 head.Size = Vector3.new(12,.2,12)
  721.                                 head.CanCollide = false
  722.                                 head.Anchored = true
  723.                                 head.Transparency = 1
  724.                                 for i = 1,2 do
  725.                                         local decal = Instance.new("Decal",head)
  726.                                         decal.Texture = "rbxassetid://323497117"
  727.                                         if i == 1 then
  728.                                                 decal.Face = Enum.NormalId.Top
  729.                                         else
  730.                                                 decal.Face = Enum.NormalId.Bottom
  731.                                         end
  732.                                 end
  733.                                 if Debounces.attackNumber%2 == 1 then
  734.                                         head.CFrame = CFrame.new(c.Torso.CFrame:toWorldSpace(CFrame.new(8,8,.5)).p,aimPos)
  735.                                 else
  736.                                         head.CFrame = CFrame.new(c.Torso.CFrame:toWorldSpace(CFrame.new(-8,8,.5)).p,aimPos)
  737.                                 end
  738.                                 spawn(function()
  739.                                         local timer = 0
  740.                                         while rs.RenderStepped:wait() do
  741.                                                 if timer >= 1.55 then
  742.                                                         break
  743.                                                 end
  744.                                                 head.CFrame = head.CFrame * CFrame.Angles(0,0,math.rad(timer * 25/(Debounces.FPS/60)))
  745.                                                 timer = timer + 1/30/(Debounces.FPS/60)
  746.                                         end
  747.                                         head.CFrame = CFrame.new(head.CFrame.p,aimPos)
  748.                                         local ray = Ray.new(head.CFrame.p,(aimPos - head.CFrame.p).unit * 999)
  749.                                         local hit, pos = workspace:FindPartOnRay(ray,c)
  750.                                         local dis = (head.CFrame.p - pos).magnitude
  751.                                         local rayPart = Instance.new("Part",rayModel)
  752.                                         rayPart.Material = "Neon"
  753.                                         rayPart.FormFactor = "Custom"
  754.                                         rayPart.BrickColor = BrickColor.new(1,1,1)
  755.                                         rayPart.Anchored = true
  756.                                         rayPart.CanCollide = false
  757.                                         rayPart.Size = Vector3.new(7,7,dis + 400)
  758.                                         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)
  759.                                         rayPart.CFrame = rayCFrame
  760.                                         head:Destroy()
  761.                                 end)
  762.                                 wait()
  763.                                 local s = Instance.new("Sound",head)
  764.                                 s.Volume = 1
  765.                                 s.SoundId = "rbxassetid://332223043"
  766.                                 s:Play()
  767.                                 wait(.04)
  768.                         end
  769.                 end
  770.         end)
  771.  
  772.         uinps.InputBegan:connect(function(InputObj)
  773.                 if InputObj.KeyCode == Enum.KeyCode.E and Debounces.isAttacking == false and Debounces.isSprinting == false and Debounces.isPassive == true and Debounces.isTyping == false then
  774.                         Debounces.isAttacking = true
  775.                         local aimPos = c.HumanoidRootPart.CFrame:toWorldSpace(CFrame.new(0,0,-999)).p
  776.                         local head = Instance.new("Part",c)
  777.                         head.Size = Vector3.new(18,.2,18)
  778.                         head.CanCollide = false
  779.                         head.Anchored = true
  780.                         head.CFrame = CFrame.new(c.HumanoidRootPart.CFrame:toWorldSpace(CFrame.new(0,0,-9)).p,aimPos)
  781.                         head.Transparency = 1
  782.                         for i = 1,2 do
  783.                                 local decal = Instance.new("Decal",head)
  784.                                 decal.Texture = "rbxassetid://323497117"
  785.                                 if i == 1 then
  786.                                         decal.Face = Enum.NormalId.Top
  787.                                 else
  788.                                         decal.Face = Enum.NormalId.Bottom
  789.                                 end
  790.                         end
  791.                         setLerp(.1)
  792.                         setJointCFrames({
  793.                                 CFrame.new(Vector3.new(0, 0, 0)) * CFAngles(Vector3.new(0, 0, 0));
  794.                                 CFrame.new(Vector3.new(0, 1.499, -0.09)) * CFAngles(Vector3.new(-11.676, -0.001, -0.001));
  795.                                 CFrame.new(Vector3.new(-1.7, 0, 0)) * CFAngles(Vector3.new(-12.808, -28.88, -21.502));
  796.                                 CFrame.new(Vector3.new(1.699, 1.2, 0.599)) * CFAngles(Vector3.new(-146.606, 16.571, 13.928));
  797.                                 CFrame.new(Vector3.new(-0.501, -1.601, 0.6)) * CFAngles(Vector3.new(-60, 0, -0.001));
  798.                                 CFrame.new(Vector3.new(0.5, -1.4, -0.4)) * CFAngles(Vector3.new(-15.001, -15.001, 0));
  799.                         })
  800.                         spawn(function()
  801.                                 local timer = 0
  802.                                 while rs.RenderStepped:wait() do
  803.                                         if timer >= 1.55/.8 then
  804.                                                 break
  805.                                         end
  806.                                         head.CFrame = head.CFrame * CFrame.Angles(0,0,math.rad(timer * 25/(Debounces.FPS/60)))
  807.                                         timer = timer + 1/30/(Debounces.FPS/60)
  808.                                 end
  809.                                 head.CFrame = CFrame.new(head.CFrame.p,aimPos)
  810.                                 local ray = Ray.new(head.CFrame.p,(aimPos - head.CFrame.p).unit * 999)
  811.                                 local hit, pos = workspace:FindPartOnRay(ray,c)
  812.                                 local dis = (head.CFrame.p - pos).magnitude
  813.                                 local rayPart = Instance.new("Part",rayModel)
  814.                                 rayPart.Material = "Neon"
  815.                                 rayPart.FormFactor = "Custom"
  816.                                 rayPart.Name = "Punch"
  817.                                 rayPart.BrickColor = BrickColor.new(1,1,1)
  818.                                 rayPart.Anchored = true
  819.                                 rayPart.CanCollide = false
  820.                                 rayPart.Size = Vector3.new(28,28,dis + 400)
  821.                                 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)
  822.                                 rayPart.CFrame = rayCFrame
  823.                                 head:Destroy()
  824.                         end)
  825.                         wait()
  826.                         local s = Instance.new("Sound",head)
  827.                         s.Volume = 1
  828.                         s.SoundId = "rbxassetid://332223043"
  829.                         s.Pitch = .8
  830.                         s:Play()
  831.                         wait(.75)
  832.                         setLerp(.17)
  833.                         setJointCFrames({
  834.                                 CFrame.new(Vector3.new(0, -.5, 0)) * CFAngles(Vector3.new(-20, 15, 0));
  835.                                 CFrame.new(Vector3.new(0, 1.499, -0.09)) * CFAngles(Vector3.new(-11.676, 14.999, -0.001));
  836.                                 CFrame.new(Vector3.new(-1.7, 0, 0.2)) * CFAngles(Vector3.new(-33.928, -4.374, -38.76));
  837.                                 CFrame.new(Vector3.new(1.499, 0.4, -0.601)) * CFAngles(Vector3.new(74.335, 25.091, -6.155));
  838.                                 CFrame.new(Vector3.new(-0.501, -1.601, 0.6)) * CFAngles(Vector3.new(-45, 0, -0.001));
  839.                                 CFrame.new(Vector3.new(0.5, -1.8, -0.4)) * CFAngles(Vector3.new(-15, -15, 0));
  840.                         })
  841.                         wait(.5)
  842.                         Debounces.isAttacking = false
  843.                 end
  844.         end)
  845.        
  846.         reflect = function(d,n)
  847.                 local i, n = -1 * d.unit, n.unit
  848.                 local dot = n:Dot(i)
  849.                 return 2*dot*n - i
  850.         end
  851.  
  852.         makeReflectionBeam = function(pos,look,isCrit)
  853.                 local ray = Ray.new(pos,look)
  854.                 local hit,hitpos,norm = workspace:FindPartOnRay(ray,c)
  855.                 local e = Instance.new("Part",rayModel)
  856.                 e.Anchored = true
  857.                 e.CanCollide = false
  858.                 e.BrickColor = BrickColor.new("White")
  859.                 e.Material = "Neon"
  860.                 e.FormFactor = "Custom"
  861.                 e.Size = Vector3.new(6,6,(pos - hitpos).magnitude)
  862.                 if isCrit == true then
  863.                         e.Size = Vector3.new(16,16,(pos - hitpos).magnitude)
  864.                         e.Name = "Punch"
  865.                 end
  866.                 e.CFrame = CFrame.new(pos + (hitpos - pos)/2, pos)
  867.                 local e = Instance.new("Sound",c)
  868.                 if isCrit == true then
  869.                         e.Volume = .5
  870.                 else
  871.                         e.Volume = .3
  872.                         e.Pitch = 1.5
  873.                 end
  874.                 e.SoundId = "rbxassetid://200632875"
  875.                 e:Play()
  876.                 spawn(function()
  877.                         wait(6)
  878.                         e:Destroy()
  879.                 end)
  880.                 wait(.05)
  881.                 if hit ~= nil then
  882.                         newDir = reflect(look.unit,norm,isCrit)
  883.                         makeReflectionBeam(hitpos,newDir * 999,isCrit)
  884.                 end
  885.         end
  886.  
  887.         uinps.InputBegan:connect(function(InputObject)
  888.                 if InputObject.KeyCode == Enum.KeyCode.Q and Debounces.isAttacking == false and Debounces.isSprinting == true and Debounces.isPassive == true and Debounces.isTyping == false then
  889.                         local isLooping = true
  890.                         uinps.InputEnded:connect(function(InputObject2)
  891.                                 if InputObject2.KeyCode == Enum.KeyCode.Q then
  892.                                         isLooping = false
  893.                                 end
  894.                         end)
  895.                         while true do
  896.                                 if isLooping == false then
  897.                                         break
  898.                                 end
  899.                                 Debounces.attackNumber = Debounces.attackNumber + 1
  900.                                 local aimPos = mouse.Hit.p
  901.                                 local head = Instance.new("Part",c)
  902.                                 head.Size = Vector3.new(12,.2,12)
  903.                                 head.CanCollide = false
  904.                                 head.Anchored = true
  905.                                 head.Transparency = 1
  906.                                 for i = 1,2 do
  907.                                         local decal = Instance.new("Decal",head)
  908.                                         decal.Texture = "rbxassetid://323497117"
  909.                                         if i == 1 then
  910.                                                 decal.Face = Enum.NormalId.Top
  911.                                         else
  912.                                                 decal.Face = Enum.NormalId.Bottom
  913.                                         end
  914.                                 end
  915.                                 if Debounces.attackNumber%2 == 1 then
  916.                                         head.CFrame = CFrame.new(c.Torso.CFrame:toWorldSpace(CFrame.new(8,8,.5)).p,aimPos)
  917.                                 else
  918.                                         head.CFrame = CFrame.new(c.Torso.CFrame:toWorldSpace(CFrame.new(-8,8,.5)).p,aimPos)
  919.                                 end
  920.                                 spawn(function()
  921.                                         local timer = 0
  922.                                         while rs.RenderStepped:wait() do
  923.                                                 if timer >= 1.55 then
  924.                                                         break
  925.                                                 end
  926.                                                 head.CFrame = head.CFrame * CFrame.Angles(0,0,math.rad(timer * 25/(Debounces.FPS/60)))
  927.                                                 timer = timer + 1/30/(Debounces.FPS/60)
  928.                                         end
  929.                                         head.CFrame = CFrame.new(head.CFrame.p,aimPos)
  930.                                         head:Destroy()
  931.                                         makeReflectionBeam(head.CFrame.p,(head.CFrame.p - aimPos).unit * -999,false)        
  932.                                 end)
  933.                                
  934.                                 wait()
  935.                                 local s = Instance.new("Sound",head)
  936.                                 s.Volume = 1
  937.                                 s.SoundId = "rbxassetid://332223043"
  938.                                 s.Pitch = 1.02
  939.                                 s:Play()
  940.                                 wait(.2)
  941.                         end
  942.                 end
  943.         end)
  944.  
  945.         uinps.InputBegan:connect(function(InputObj)
  946.                 if InputObj.KeyCode == Enum.KeyCode.E and Debounces.isAttacking == false and Debounces.isSprinting == true and Debounces.isPassive == true and Debounces.isTyping == false then
  947.                         Debounces.isAttacking = true
  948.                         local aimPos = c.HumanoidRootPart.CFrame:toWorldSpace(CFrame.new(0,0,-999)).p
  949.                         local head = Instance.new("Part",c)
  950.                         head.Size = Vector3.new(18,.2,18)
  951.                         head.CanCollide = false
  952.                         head.Anchored = true
  953.                         head.CFrame = CFrame.new(c.HumanoidRootPart.CFrame:toWorldSpace(CFrame.new(0,0,-9)).p,aimPos)
  954.                         head.Transparency = 1
  955.                         for i = 1,2 do
  956.                                 local decal = Instance.new("Decal",head)
  957.                                 decal.Texture = "rbxassetid://323497117"
  958.                                 if i == 1 then
  959.                                         decal.Face = Enum.NormalId.Top
  960.                                 else
  961.                                         decal.Face = Enum.NormalId.Bottom
  962.                                 end
  963.                         end
  964.                         setLerp(.1)
  965.                         setJointCFrames({
  966.                                 CFrame.new(Vector3.new(0, 0, 0)) * CFAngles(Vector3.new(0, 0, 0));
  967.                                 CFrame.new(Vector3.new(0, 1.499, -0.09)) * CFAngles(Vector3.new(-11.676, -0.001, -0.001));
  968.                                 CFrame.new(Vector3.new(-1.7, 0, 0)) * CFAngles(Vector3.new(-12.808, -28.88, -21.502));
  969.                                 CFrame.new(Vector3.new(1.699, 1.2, 0.599)) * CFAngles(Vector3.new(-146.606, 16.571, 13.928));
  970.                                 CFrame.new(Vector3.new(-0.501, -1.601, 0.6)) * CFAngles(Vector3.new(-60, 0, -0.001));
  971.                                 CFrame.new(Vector3.new(0.5, -1.4, -0.4)) * CFAngles(Vector3.new(-15.001, -15.001, 0));
  972.                         })
  973.                         spawn(function()
  974.                                 local timer = 0
  975.                                 while rs.RenderStepped:wait() do
  976.                                         if timer >= 1.55/.8 then
  977.                                                 break
  978.                                         end
  979.                                         head.CFrame = head.CFrame * CFrame.Angles(0,0,math.rad(timer * 25/(Debounces.FPS/60)))
  980.                                         timer = timer + 1/30/(Debounces.FPS/60)
  981.                                 end
  982.                                 head.CFrame = CFrame.new(head.CFrame.p,aimPos)
  983.                                 head:Destroy()
  984.                                 makeReflectionBeam(head.CFrame.p,(head.CFrame.p - aimPos).unit * -999,true)
  985.                         end)
  986.                         wait()
  987.                         local s = Instance.new("Sound",head)
  988.                         s.Volume = 2
  989.                         s.SoundId = "rbxassetid://332223043"
  990.                         s.Pitch = .8
  991.                         s:Play()
  992.                         wait(.75)
  993.                         setLerp(.17)
  994.                         setJointCFrames({
  995.                                 CFrame.new(Vector3.new(0, -.5, 0)) * CFAngles(Vector3.new(-20, 15, 0));
  996.                                 CFrame.new(Vector3.new(0, 1.499, -0.09)) * CFAngles(Vector3.new(-11.676, 14.999, -0.001));
  997.                                 CFrame.new(Vector3.new(-1.7, 0, 0.2)) * CFAngles(Vector3.new(-33.928, -4.374, -38.76));
  998.                                 CFrame.new(Vector3.new(1.499, 0.4, -0.601)) * CFAngles(Vector3.new(74.335, 25.091, -6.155));
  999.                                 CFrame.new(Vector3.new(-0.501, -1.601, 0.6)) * CFAngles(Vector3.new(-45, 0, -0.001));
  1000.                                 CFrame.new(Vector3.new(0.5, -1.8, -0.4)) * CFAngles(Vector3.new(-15, -15, 0));
  1001.                         })
  1002.                         wait(.5)
  1003.                         Debounces.isAttacking = false
  1004.                 end
  1005.         end)
  1006.  
  1007.         uinps.InputBegan:connect(function(InputObj)
  1008.                 if InputObj.KeyCode == Enum.KeyCode.Slash then
  1009.                         local finishEvent = nil
  1010.                         Debounces.isTyping = true
  1011.                         finishEvent = uinps.InputBegan:connect(function(InputObj)
  1012.                                 if InputObj.KeyCode == Enum.KeyCode.Return or InputObj.UserInputType == Enum.UserInputType.MouseButton1 then
  1013.                                         Debounces.isTyping = false
  1014.                                         finishEvent:disconnect()
  1015.                                 end
  1016.                         end)
  1017.                 end
  1018.         end)
  1019.  
  1020.         uinps.InputBegan:connect(function(InputObj)
  1021.                 if InputObj.KeyCode == Enum.KeyCode.LeftShift then
  1022.                         Debounces.isSprinting = true
  1023.                 end
  1024.         end)
  1025.  
  1026.         uinps.InputEnded:connect(function(InputObj)
  1027.                 if InputObj.KeyCode == Enum.KeyCode.LeftShift then
  1028.                         Debounces.isSprinting = false
  1029.                 end
  1030.         end)
  1031.  
  1032.         rs.RenderStepped:connect(function()
  1033.                 Debounces.FPS = 1/rs.RenderStepped:wait()
  1034.                 local FPSLerp = AnimStat.lerpSpeed/(Debounces.FPS/60)
  1035.                 if Debounces.isPassive == false then
  1036.                         fight:Pause()
  1037.                         sans:Resume()
  1038.                         efxBlock.Transparency = 1
  1039.                 else
  1040.                         fight:Resume()
  1041.                         sans:Pause()
  1042.                         efxBlock.Transparency = 0
  1043.                 end
  1044.                 for i,v in pairs (rayModel:children()) do
  1045.                         if v.Transparency >= 1 then
  1046.                                 v:Destroy()
  1047.                         else
  1048.                                 v.CanCollide = true
  1049.                                 local parts = v:GetTouchingParts()
  1050.                                 v.CanCollide = false
  1051.                                 for i = 1,#parts do
  1052.                                         if parts[i].Parent:FindFirstChild("Humanoid") and parts[i].Parent ~= c and v.Name ~= "Punch" then
  1053.                                                 parts[i].Parent.Humanoid:TakeDamage(.5/(Debounces.FPS/60))
  1054.                                         elseif parts[i].Parent:FindFirstChild("Humanoid") and parts[i].Parent ~= c and v.Name == "Punch" then
  1055.                                                 parts[i].Parent.Humanoid:TakeDamage(3.1/(Debounces.FPS/60))
  1056.                                         end
  1057.                                 end
  1058.                                 v.Size = v.Size + Vector3.new(1/(Debounces.FPS/60),1/(Debounces.FPS/60),0)
  1059.                                 v.Transparency = v.Transparency + .05/(Debounces.FPS/60)
  1060.                         end
  1061.                 end
  1062.                 for i = 1,#Joints do
  1063.                         Joints[i].C0 = Joints[i].C0:lerp(JointTargets[i], FPSLerp)
  1064.                 end
  1065.                 light.Brightness = math.random(1,4)
  1066.         end)
Advertisement
Add Comment
Please, Sign In to add comment
Advertisement