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