Advertisement
Tetezaza1542

dust

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