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