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