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