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