View difference between Paste ID: 1Cj810Zw and LW6guaxE
SHOW: | | - or go back to the newest paste.
1
--//====================================================\\--
2
--||               CREATED BY SHACKLUSTER
3
--\\====================================================//--
4
 
5
 
6
 
7
wait(0.2)
8
 
9
 
10
 
11
Player = game:GetService("Players").LocalPlayer
12
PlayerGui = Player.PlayerGui
13
Cam = workspace.CurrentCamera
14
Backpack = Player.Backpack
15
Character = Player.Character
16
Humanoid = Character.Humanoid
17
Mouse = Player:GetMouse()
18
RootPart = Character["HumanoidRootPart"]
19
Torso = Character["Torso"]
20
Head = Character["Head"]
21
RightArm = Character["Right Arm"]
22
LeftArm = Character["Left Arm"]
23
RightLeg = Character["Right Leg"]
24
LeftLeg = Character["Left Leg"]
25
RootJoint = RootPart["RootJoint"]
26
Neck = Torso["Neck"]
27
RightShoulder = Torso["Right Shoulder"]
28
LeftShoulder = Torso["Left Shoulder"]
29
RightHip = Torso["Right Hip"]
30
LeftHip = Torso["Left Hip"]
31
local sick = Instance.new("Sound",Character)
32-
sick.SoundId = "rbxassetid://1101348852"
32+
sick.SoundId = "rbxassetid://607042800"
33
sick.Looped = true
34
sick.Pitch = 1
35
sick.Volume = 1
36
sick:Play()
37
 
38
IT = Instance.new
39
CF = CFrame.new
40
VT = Vector3.new
41
RAD = math.rad
42
C3 = Color3.new
43
UD2 = UDim2.new
44
BRICKC = BrickColor.new
45
ANGLES = CFrame.Angles
46
EULER = CFrame.fromEulerAnglesXYZ
47
COS = math.cos
48
ACOS = math.acos
49
SIN = math.sin
50
ASIN = math.asin
51
ABS = math.abs
52
MRANDOM = math.random
53
FLOOR = math.floor
54
 
55
function CreateMesh(MESH, PARENT, MESHTYPE, MESHID, TEXTUREID, SCALE, OFFSET)
56
    local NEWMESH = IT(MESH)
57
    if MESH == "SpecialMesh" then
58
        NEWMESH.MeshType = MESHTYPE
59
        if MESHID ~= "nil" and MESHID ~= "" then
60
            NEWMESH.MeshId = "http://www.roblox.com/asset/?id="..MESHID
61
        end
62
        if TEXTUREID ~= "nil" and TEXTUREID ~= "" then
63
            NEWMESH.TextureId = "http://www.roblox.com/asset/?id="..TEXTUREID
64
        end
65
    end
66
    NEWMESH.Offset = OFFSET or VT(0, 0, 0)
67
    NEWMESH.Scale = SCALE
68
    NEWMESH.Parent = PARENT
69
    return NEWMESH
70
end
71
 
72
function CreatePart(FORMFACTOR, PARENT, MATERIAL, REFLECTANCE, TRANSPARENCY, BRICKCOLOR, NAME, SIZE, ANCHOR)
73
    local NEWPART = IT("Part")
74
    NEWPART.formFactor = FORMFACTOR
75
    NEWPART.Reflectance = REFLECTANCE
76
    NEWPART.Transparency = TRANSPARENCY
77
    NEWPART.CanCollide = false
78
    NEWPART.Locked = true
79
    NEWPART.Anchored = true
80
    if ANCHOR == false then
81
        NEWPART.Anchored = false
82
    end
83
    NEWPART.BrickColor = BRICKC(tostring(BRICKCOLOR))
84
    NEWPART.Name = NAME
85
    NEWPART.Size = SIZE
86
    NEWPART.Position = Torso.Position
87
    NEWPART.Material = MATERIAL
88
    NEWPART:BreakJoints()
89
    NEWPART.Parent = PARENT
90
    return NEWPART
91
end
92
 
93
--//=================================\\
94
--||          CUSTOMIZATION
95
--\\=================================//
96
 
97
Player_Size = 1 --Size of the player.
98
Animation_Speed = 3
99
Frame_Speed = 1 / 60 -- (1 / 30) OR (1 / 60)
100
 
101
local Speed = 70
102
local Effects2 = {}
103
 
104
--//=================================\\
105
--||      END OF CUSTOMIZATION
106
--\\=================================//
107
 
108
    local function weldBetween(a, b)
109
        local weldd = Instance.new("ManualWeld")
110
        weldd.Part0 = a
111
        weldd.Part1 = b
112
        weldd.C0 = CFrame.new()
113
        weldd.C1 = b.CFrame:inverse() * a.CFrame
114
        weldd.Parent = a
115
        return weldd
116
    end
117
 
118
--//=================================\\
119
--||          USEFUL VALUES
120
--\\=================================//
121
 
122
local ROOTC0 = CF(0, 0, 0) * ANGLES(RAD(-90), RAD(0), RAD(180))
123
local NECKC0 = CF(0, 1, 0) * ANGLES(RAD(-90), RAD(0), RAD(180))
124
local RIGHTSHOULDERC0 = CF(-0.5, 0, 0) * ANGLES(RAD(0), RAD(90), RAD(0))
125
local LEFTSHOULDERC0 = CF(0.5, 0, 0) * ANGLES(RAD(0), RAD(-90), RAD(0))
126
local CHANGEDEFENSE = 0
127
local CHANGEDAMAGE = 0
128
local CHANGEMOVEMENT = 0
129
local ANIM = "Idle"
130
local ATTACK = false
131
local EQUIPPED = false
132
local HOLD = false
133
local COMBO = 1
134
local Rooted = false
135
local SINE = 0
136
local KEYHOLD = false
137
local CHANGE = 2 / Animation_Speed
138
local WALKINGANIM = false
139
local WALK = 0
140
local VALUE1 = false
141
local VALUE2 = false
142
local ROBLOXIDLEANIMATION = IT("Animation")
143
ROBLOXIDLEANIMATION.Name = "Roblox Idle Animation"
144
ROBLOXIDLEANIMATION.AnimationId = "http://www.roblox.com/asset/?id=180435571"
145
--ROBLOXIDLEANIMATION.Parent = Humanoid
146
local WEAPONGUI = IT("ScreenGui", PlayerGui)
147
WEAPONGUI.Name = "Weapon GUI"
148
local Weapon = IT("Model")
149
Weapon.Name = "Adds"
150
local HITFLOOR = nil
151
local Effects = IT("Folder", Weapon)
152
Effects.Name = "Effects"
153
local ANIMATOR = Humanoid.Animator
154
local ANIMATE = Character.Animate
155
local HITPLAYERSOUNDS = {--[["199149137", "199149186", "199149221", "199149235", "199149269", "199149297"--]]"263032172", "263032182", "263032200", "263032221", "263032252", "263033191"}
156
local HITARMORSOUNDS = {"199149321", "199149338", "199149367", "199149409", "199149452"}
157
local HITWEAPONSOUNDS = {"199148971", "199149025", "199149072", "199149109", "199149119"}
158
local HITBLOCKSOUNDS = {"199148933", "199148947"}
159
local UNANCHOR = true
160
 
161
local SKILLTEXTCOLOR = C3(239/255, 184/255, 56/255)
162
 
163
--//=================================\\
164
--\\=================================//
165
 
166
 
167
--//=================================\\
168
--|| SAZERENOS' ARTIFICIAL HEARTBEAT
169
--\\=================================//
170
 
171
ArtificialHB = Instance.new("BindableEvent", script)
172
ArtificialHB.Name = "ArtificialHB"
173
 
174
script:WaitForChild("ArtificialHB")
175
 
176
frame = Frame_Speed
177
tf = 0
178
allowframeloss = false
179
tossremainder = false
180
lastframe = tick()
181
script.ArtificialHB:Fire()
182
 
183
game:GetService("RunService").Heartbeat:connect(function(s, p)
184
    tf = tf + s
185
    if tf >= frame then
186
        if allowframeloss then
187
            script.ArtificialHB:Fire()
188
            lastframe = tick()
189
        else
190
            for i = 1, math.floor(tf / frame) do
191
                script.ArtificialHB:Fire()
192
            end
193
        lastframe = tick()
194
        end
195
        if tossremainder then
196
            tf = 0
197
        else
198
            tf = tf - frame * math.floor(tf / frame)
199
        end
200
    end
201
end)
202
 
203
--//=================================\\
204
--\\=================================//
205
 
206
 
207
 
208
 
209
 
210
--//=================================\\
211
--||          SOME FUNCTIONS
212
--\\=================================//
213
 
214
function Raycast(POSITION, DIRECTION, RANGE, IGNOREDECENDANTS)
215
    return workspace:FindPartOnRay(Ray.new(POSITION, DIRECTION.unit * RANGE), IGNOREDECENDANTS)
216
end
217
 
218
function PositiveAngle(NUMBER)
219
    if NUMBER >= 0 then
220
        NUMBER = 0
221
    end
222
    return NUMBER
223
end
224
 
225
function NegativeAngle(NUMBER)
226
    if NUMBER <= 0 then
227
        NUMBER = 0
228
    end
229
    return NUMBER
230
end
231
 
232
function Swait(NUMBER)
233
    if NUMBER == 0 or NUMBER == nil then
234
        ArtificialHB.Event:wait()
235
    else
236
        for i = 1, NUMBER do
237
            ArtificialHB.Event:wait()
238
        end
239
    end
240
end
241
 
242
function QuaternionFromCFrame(cf)
243
    local mx, my, mz, m00, m01, m02, m10, m11, m12, m20, m21, m22 = cf:components()
244
    local trace = m00 + m11 + m22
245
    if trace > 0 then
246
        local s = math.sqrt(1 + trace)
247
        local recip = 0.5 / s
248
        return (m21 - m12) * recip, (m02 - m20) * recip, (m10 - m01) * recip, s * 0.5
249
    else
250
        local i = 0
251
        if m11 > m00 then
252
            i = 1
253
        end
254
        if m22 > (i == 0 and m00 or m11) then
255
            i = 2
256
        end
257
        if i == 0 then
258
            local s = math.sqrt(m00 - m11 - m22 + 1)
259
            local recip = 0.5 / s
260
            return 0.5 * s, (m10 + m01) * recip, (m20 + m02) * recip, (m21 - m12) * recip
261
        elseif i == 1 then
262
            local s = math.sqrt(m11 - m22 - m00 + 1)
263
            local recip = 0.5 / s
264
            return (m01 + m10) * recip, 0.5 * s, (m21 + m12) * recip, (m02 - m20) * recip
265
        elseif i == 2 then
266
            local s = math.sqrt(m22 - m00 - m11 + 1)
267
            local recip = 0.5 / s return (m02 + m20) * recip, (m12 + m21) * recip, 0.5 * s, (m10 - m01) * recip
268
        end
269
    end
270
end
271
 
272
function QuaternionToCFrame(px, py, pz, x, y, z, w)
273
    local xs, ys, zs = x + x, y + y, z + z
274
    local wx, wy, wz = w * xs, w * ys, w * zs
275
    local xx = x * xs
276
    local xy = x * ys
277
    local xz = x * zs
278
    local yy = y * ys
279
    local yz = y * zs
280
    local zz = z * zs
281
    return CFrame.new(px, py, pz, 1 - (yy + zz), xy - wz, xz + wy, xy + wz, 1 - (xx + zz), yz - wx, xz - wy, yz + wx, 1 - (xx + yy))
282
end
283
 
284
function QuaternionSlerp(a, b, t)
285
    local cosTheta = a[1] * b[1] + a[2] * b[2] + a[3] * b[3] + a[4] * b[4]
286
    local startInterp, finishInterp;
287
    if cosTheta >= 0.0001 then
288
        if (1 - cosTheta) > 0.0001 then
289
            local theta = ACOS(cosTheta)
290
            local invSinTheta = 1 / SIN(theta)
291
            startInterp = SIN((1 - t) * theta) * invSinTheta
292
            finishInterp = SIN(t * theta) * invSinTheta
293
        else
294
            startInterp = 1 - t
295
            finishInterp = t
296
        end
297
    else
298
        if (1 + cosTheta) > 0.0001 then
299
            local theta = ACOS(-cosTheta)
300
            local invSinTheta = 1 / SIN(theta)
301
            startInterp = SIN((t - 1) * theta) * invSinTheta
302
            finishInterp = SIN(t * theta) * invSinTheta
303
        else
304
            startInterp = t - 1
305
            finishInterp = t
306
        end
307
    end
308
    return a[1] * startInterp + b[1] * finishInterp, a[2] * startInterp + b[2] * finishInterp, a[3] * startInterp + b[3] * finishInterp, a[4] * startInterp + b[4] * finishInterp
309
end
310
 
311
function Clerp(a, b, t)
312
    local qa = {QuaternionFromCFrame(a)}
313
    local qb = {QuaternionFromCFrame(b)}
314
    local ax, ay, az = a.x, a.y, a.z
315
    local bx, by, bz = b.x, b.y, b.z
316
    local _t = 1 - t
317
    return QuaternionToCFrame(_t * ax + t * bx, _t * ay + t * by, _t * az + t * bz, QuaternionSlerp(qa, qb, t))
318
end
319
 
320
function CreateFrame(PARENT, TRANSPARENCY, BORDERSIZEPIXEL, POSITION, SIZE, COLOR, BORDERCOLOR, NAME)
321
    local frame = IT("Frame")
322
    frame.BackgroundTransparency = TRANSPARENCY
323
    frame.BorderSizePixel = BORDERSIZEPIXEL
324
    frame.Position = POSITION
325
    frame.Size = SIZE
326
    frame.BackgroundColor3 = COLOR
327
    frame.BorderColor3 = BORDERCOLOR
328
    frame.Name = NAME
329
    frame.Parent = PARENT
330
    return frame
331
end
332
 
333
function CreateLabel(PARENT, TEXT, TEXTCOLOR, TEXTFONTSIZE, TEXTFONT, TRANSPARENCY, BORDERSIZEPIXEL, STROKETRANSPARENCY, NAME)
334
    local label = IT("TextLabel")
335
    label.BackgroundTransparency = 1
336
    label.Size = UD2(1, 0, 1, 0)
337
    label.Position = UD2(0, 0, 0, 0)
338
    label.TextColor3 = TEXTCOLOR
339
    label.TextStrokeTransparency = STROKETRANSPARENCY
340
    label.TextTransparency = TRANSPARENCY
341
    label.FontSize = TEXTFONTSIZE
342
    label.Font = TEXTFONT
343
    label.BorderSizePixel = BORDERSIZEPIXEL
344
    label.TextScaled = false
345
    label.Text = TEXT
346
    label.Name = NAME
347
    label.Parent = PARENT
348
    return label
349
end
350
 
351
function NoOutlines(PART)
352
    PART.TopSurface, PART.BottomSurface, PART.LeftSurface, PART.RightSurface, PART.FrontSurface, PART.BackSurface = 10, 10, 10, 10, 10, 10
353
end
354
 
355
 
356
function CreateWeldOrSnapOrMotor(TYPE, PARENT, PART0, PART1, C0, C1)
357
    local NEWWELD = IT(TYPE)
358
    NEWWELD.Part0 = PART0
359
    NEWWELD.Part1 = PART1
360
    NEWWELD.C0 = C0
361
    NEWWELD.C1 = C1
362
    NEWWELD.Parent = PARENT
363
    return NEWWELD
364
end
365
 
366
function CreateSound(ID, PARENT, VOLUME, PITCH)
367
    local NEWSOUND = nil
368
    coroutine.resume(coroutine.create(function()
369
        NEWSOUND = IT("Sound", PARENT)
370
        NEWSOUND.Volume = VOLUME
371
        NEWSOUND.Pitch = PITCH
372
        NEWSOUND.SoundId = "http://www.roblox.com/asset/?id="..ID
373
        Swait()
374
        NEWSOUND:play()
375
        game:GetService("Debris"):AddItem(NEWSOUND, 10)
376
    end))
377
    return NEWSOUND
378
end
379
 
380
function CFrameFromTopBack(at, top, back)
381
    local right = top:Cross(back)
382
    return CF(at.x, at.y, at.z, right.x, top.x, back.x, right.y, top.y, back.y, right.z, top.z, back.z)
383
end
384
 
385
function CreateWave(SIZE,WAIT,CFRAME,DOESROT,ROT,COLOR,GROW)
386
    local wave = CreatePart(3, Effects, "Neon", 0, 0.5, BRICKC(COLOR), "Effect", VT(0,0,0))
387
    local mesh = IT("SpecialMesh",wave)
388
    mesh.MeshType = "FileMesh"
389
    mesh.MeshId = "http://www.roblox.com/asset/?id=20329976"
390
    mesh.Scale = SIZE
391
    mesh.Offset = VT(0,0,-SIZE.X/8)
392
    wave.CFrame = CFRAME
393
    coroutine.resume(coroutine.create(function(PART)
394
        for i = 1, WAIT do
395
            Swait()
396
            mesh.Scale = mesh.Scale + GROW
397
            mesh.Offset = VT(0,0,-(mesh.Scale.X/8))
398
            if DOESROT == true then
399
                wave.CFrame = wave.CFrame * CFrame.fromEulerAnglesXYZ(0,ROT,0)
400
            end
401
            wave.Transparency = wave.Transparency + (0.5/WAIT)
402
            if wave.Transparency > 0.99 then
403
                wave:remove()
404
            end
405
        end
406
    end))
407
end
408
 
409
function CreateWave2(SIZE,WAIT,CFRAME,DOESROT,ROT,COLOR,GROW)
410
    local wave = CreatePart(3, Effects, "Neon", 0, 0.5, BRICKC(COLOR), "Effect", VT(0,0,0))
411
    local mesh = IT("SpecialMesh",wave)
412
    mesh.MeshType = "FileMesh"
413
    mesh.MeshId = "http://www.roblox.com/asset/?id=20329976"
414
    mesh.Scale = SIZE
415
    --mesh.Offset = VT(0,0,-SIZE.X/8)
416
    wave.CFrame = CFRAME
417
    coroutine.resume(coroutine.create(function(PART)
418
        for i = 1, WAIT do
419
            Swait()
420
            mesh.Scale = mesh.Scale + GROW
421
            --mesh.Offset = VT(0,0,-(mesh.Scale.X/8))
422
            if DOESROT == true then
423
                wave.CFrame = wave.CFrame * CFrame.fromEulerAnglesXYZ(0,ROT,0)
424
            end
425
            wave.Transparency = wave.Transparency + (0.5/WAIT)
426
            if wave.Transparency > 0.99 then
427
                wave:remove()
428
            end
429
        end
430
    end))
431
end
432
 
433
function CreateSwirl(SIZE,WAIT,CFRAME,DOESROT,ROT,COLOR,GROW)
434
    local wave = CreatePart(3, Effects, "Neon", 0, 0.5, BRICKC(COLOR), "Effect", VT(0,0,0))
435
    local mesh = IT("SpecialMesh",wave)
436
    mesh.MeshType = "FileMesh"
437
    mesh.MeshId = "http://www.roblox.com/asset/?id=1051557"
438
    mesh.Scale = SIZE
439
    wave.CFrame = CFRAME
440
    coroutine.resume(coroutine.create(function(PART)
441
        for i = 1, WAIT do
442
            Swait()
443
            mesh.Scale = mesh.Scale + GROW
444
            mesh.Offset = VT(0,0,-(mesh.Scale.X/8))
445
            if DOESROT == true then
446
                wave.CFrame = wave.CFrame * CFrame.fromEulerAnglesXYZ(0,ROT,0)
447
            end
448
            wave.Transparency = wave.Transparency + (0.5/WAIT)
449
            if wave.Transparency > 0.99 then
450
                wave:remove()
451
            end
452
        end
453
    end))
454
end
455
 
456
 
457
function Slice(SIZE,WAIT,CFRAME,COLOR,GROW)
458
    local wave = CreatePart(3, Effects, "Neon", 0, 0.5, BRICKC(COLOR), "Effect", VT(1,1,1), true)
459
    local mesh = CreateMesh("SpecialMesh", wave, "FileMesh", "448386996", "", VT(0,SIZE/10,SIZE/10), VT(0,0,0))
460
    wave.CFrame = CFRAME
461
    coroutine.resume(coroutine.create(function(PART)
462
        for i = 1, WAIT do
463
            Swait()
464
            mesh.Scale = mesh.Scale * GROW
465
            wave.Transparency = wave.Transparency + (0.5/WAIT)
466
            if wave.Transparency > 0.99 then
467
                wave:remove()
468
            end
469
        end
470
    end))
471
end
472
 
473
function MagicSphere(SIZE,WAIT,CFRAME,COLOR,GROW)
474
    local wave = CreatePart(3, Effects, "Neon", 0, 0, BRICKC(COLOR), "Effect", VT(1,1,1), true)
475
    local mesh = IT("SpecialMesh",wave)
476
    mesh.MeshType = "Sphere"
477
    mesh.Scale = SIZE
478
    mesh.Offset = VT(0,0,0)
479
    wave.CFrame = CFRAME
480
    coroutine.resume(coroutine.create(function(PART)
481
        for i = 1, WAIT do
482
            Swait()
483
            mesh.Scale = mesh.Scale + GROW
484
            wave.Transparency = wave.Transparency + (1/WAIT)
485
            if wave.Transparency > 0.99 then
486
                wave:remove()
487
            end
488
        end
489
    end))
490
end
491
 
492
function MakeForm(PART,TYPE)
493
    if TYPE == "Cyl" then
494
        local MSH = IT("CylinderMesh",PART)
495
    elseif TYPE == "Ball" then
496
        local MSH = IT("SpecialMesh",PART)
497
        MSH.MeshType = "Sphere"
498
    elseif TYPE == "Wedge" then
499
        local MSH = IT("SpecialMesh",PART)
500
        MSH.MeshType = "Wedge"
501
    end
502
end
503
 
504
function CreateDebreeRing(FLOOR,POSITION,SIZE,BLOCKSIZE,SWAIT)
505
    if FLOOR ~= nil then
506
        coroutine.resume(coroutine.create(function()
507
            local PART = CreatePart(3, Effects, "Plastic", 0, 1, "Pearl", "DebreeCenter", VT(0,0,0))
508
            PART.CFrame = CF(POSITION)
509
            for i = 1, 45 do
510
                local RingPiece = CreatePart(3, Effects, "Plastic", 0, 0, "Pearl", "DebreePart", BLOCKSIZE)
511
                RingPiece.Material = FLOOR.Material
512
                RingPiece.Color = FLOOR.Color
513
                RingPiece.CFrame = PART.CFrame * ANGLES(RAD(0), RAD(i*8), RAD(0)) * CF(SIZE*4, 0, 0) * ANGLES(RAD(MRANDOM(-360,360)),RAD(MRANDOM(-360,360)),RAD(MRANDOM(-360,360)))
514
                Debris:AddItem(RingPiece,SWAIT/100)
515
            end
516
            PART:remove()
517
        end))
518
    end
519
end
520
 
521
function CheckTableForString(Table, String)
522
    for i, v in pairs(Table) do
523
        if string.find(string.lower(String), string.lower(v)) then
524
            return true
525
        end
526
    end
527
    return false
528
end
529
 
530
function CheckIntangible(Hit)
531
    local ProjectileNames = {"Water", "Arrow", "Projectile", "Effect", "Rail", "Lightning", "Bullet"}
532
    if Hit and Hit.Parent then
533
        if ((not Hit.CanCollide or CheckTableForString(ProjectileNames, Hit.Name)) and not Hit.Parent:FindFirstChild("Humanoid")) then
534
            return true
535
        end
536
    end
537
    return false
538
end
539
 
540
Debris = game:GetService("Debris")
541
 
542
function CastZapRay(StartPos, Vec, Length, Ignore, DelayIfHit)
543
    local Direction = CFrame.new(StartPos, Vec).lookVector
544
    local Ignore = ((type(Ignore) == "table" and Ignore) or {Ignore})
545
    local RayHit, RayPos, RayNormal = game:GetService("Workspace"):FindPartOnRayWithIgnoreList(Ray.new(StartPos, Direction * Length), Ignore)
546
    if RayHit and CheckIntangible(RayHit) then
547
        if DelayIfHit then
548
            wait()
549
        end
550
        RayHit, RayPos, RayNormal = CastZapRay((RayPos + (Vec * 0.01)), Vec, (Length - ((StartPos - RayPos).magnitude)), Ignore, DelayIfHit)
551
    end
552
    return RayHit, RayPos, RayNormal
553
end
554
 
555
function turnto(position)
556
    RootPart.CFrame=CFrame.new(RootPart.CFrame.p,VT(position.X,RootPart.Position.Y,position.Z)) * CFrame.new(0, 0, 0)
557
end
558
 
559
--//=================================\\
560
--||         WEAPON CREATION
561
--\\=================================//
562
 
563
local FIST = CreatePart(3, Weapon, "Neon", 0, 0, "Gold", "Neon Gauntlet Part", VT(1.01*Player_Size,1.4*Player_Size,1.01*Player_Size),false)
564
local weld = CreateWeldOrSnapOrMotor("Weld", FIST, RightArm, FIST, CF(0 * Player_Size, -0.25 * Player_Size, 0 * Player_Size) * ANGLES(RAD(0), RAD(0), RAD(0)), CF(0, 0, 0))
565
local part = CreatePart(3, Weapon, "Granite", 0, 0, "Gold", "Gauntlet Part", VT(1.2*Player_Size,0.3*Player_Size,1.2*Player_Size),false)
566
local weld = CreateWeldOrSnapOrMotor("Weld", part, FIST, part, CF(0 * Player_Size, 0.6 * Player_Size, 0 * Player_Size) * ANGLES(RAD(0), RAD(0), RAD(0)), CF(0, 0, 0))
567
 
568
local part = CreatePart(3, Weapon, "Granite", 0, 0, "Gold", "Gauntlet Part", VT(1.05*Player_Size,0.05*Player_Size,1.05*Player_Size),false)
569
local weld = CreateWeldOrSnapOrMotor("Weld", part, FIST, part, CF(0 * Player_Size, 0.1 * Player_Size, 0 * Player_Size) * ANGLES(RAD(0), RAD(0), RAD(0)), CF(0, 0, 0))
570
local part = CreatePart(3, Weapon, "Granite", 0, 0, "Gold", "Gauntlet Part", VT(1.05*Player_Size,0.05*Player_Size,1.05*Player_Size),false)
571
local weld = CreateWeldOrSnapOrMotor("Weld", part, FIST, part, CF(0 * Player_Size, 0.2 * Player_Size, 0 * Player_Size) * ANGLES(RAD(0), RAD(0), RAD(0)), CF(0, 0, 0))
572
local part = CreatePart(3, Weapon, "Granite", 0, 0, "Gold", "Gauntlet Part", VT(1.05*Player_Size,0.05*Player_Size,1.05*Player_Size),false)
573
local weld = CreateWeldOrSnapOrMotor("Weld", part, FIST, part, CF(0 * Player_Size, 0.3 * Player_Size, 0 * Player_Size) * ANGLES(RAD(0), RAD(0), RAD(0)), CF(0, 0, 0))
574
local part = CreatePart(3, Weapon, "Granite", 0, 0, "Gold", "Gauntlet Part", VT(1.05*Player_Size,0.05*Player_Size,1.05*Player_Size),false)
575
local weld = CreateWeldOrSnapOrMotor("Weld", part, FIST, part, CF(0 * Player_Size, 0.4 * Player_Size, 0 * Player_Size) * ANGLES(RAD(0), RAD(0), RAD(0)), CF(0, 0, 0))
576
 
577
local part = CreatePart(3, Weapon, "Granite", 0, 0, "Gold", "Gauntlet Part", VT(1.1*Player_Size,0.8*Player_Size,1.1*Player_Size),false)
578
local weld = CreateWeldOrSnapOrMotor("Weld", part, FIST, part, CF(0 * Player_Size, -0.35 * Player_Size, 0 * Player_Size) * ANGLES(RAD(0), RAD(0), RAD(0)), CF(0, 0, 0))
579
local part = CreatePart(3, Weapon, "Neon", 0, 0, "Gold", "Neon Gauntlet Part", VT(1.1*Player_Size,0.8*Player_Size,1*Player_Size),false)
580
local weld = CreateWeldOrSnapOrMotor("Weld", part, FIST, part, CF(0.05 * Player_Size, -0.375 * Player_Size, 0 * Player_Size) * ANGLES(RAD(0), RAD(0), RAD(0)), CF(0, 0, 0))
581
local part = CreatePart(3, Weapon, "Granite", 0, 0, "Deep orange", "Gauntlet Part", VT(1.1*Player_Size,0.8*Player_Size,0.3*Player_Size),false)
582
local weld = CreateWeldOrSnapOrMotor("Weld", part, FIST, part, CF(0.1 * Player_Size, -0.4 * Player_Size, 0 * Player_Size) * ANGLES(RAD(0), RAD(0), RAD(0)), CF(0, 0, 0))
583
local part = CreatePart(3, Weapon, "Granite", 0, 0, "Deep orange", "Gauntlet Part", VT(1.1*Player_Size,0.8*Player_Size,0.3*Player_Size),false)
584
local weld = CreateWeldOrSnapOrMotor("Weld", part, FIST, part, CF(0.1 * Player_Size, -0.4 * Player_Size, 0.33 * Player_Size) * ANGLES(RAD(0), RAD(0), RAD(0)), CF(0, 0, 0))
585
local part = CreatePart(3, Weapon, "Granite", 0, 0, "Deep orange", "Gauntlet Part", VT(1.1*Player_Size,0.8*Player_Size,0.3*Player_Size),false)
586
local weld = CreateWeldOrSnapOrMotor("Weld", part, FIST, part, CF(0.1 * Player_Size, -0.4 * Player_Size, -0.33 * Player_Size) * ANGLES(RAD(0), RAD(0), RAD(0)), CF(0, 0, 0))
587
 
588
for _, c in pairs(Weapon:GetChildren()) do
589
    if c.ClassName == "Part" then
590
        c.CustomPhysicalProperties = PhysicalProperties.new(0, 0, 0, 0, 0)
591
    end
592
end
593
 
594
Weapon.Parent = Character
595
 
596
Humanoid.Died:connect(function()
597
    ATTACK = true
598
end)
599
 
600
local SKILL1FRAME = CreateFrame(WEAPONGUI, 0.5, 0, UD2(0.13, 0, 0.80, 0), UD2(0.26, 0, 0.07, 0), C3(0,0,0), C3(0, 0, 0), "Skill 1 Frame")
601
local SKILL2FRAME = CreateFrame(WEAPONGUI, 0.5, 0, UD2(0.60, 0, 0.80, 0), UD2(0.26, 0, 0.07, 0), C3(0,0,0), C3(0, 0, 0), "Skill 2 Frame")
602
local SKILL3FRAME = CreateFrame(WEAPONGUI, 0.5, 0, UD2(0.365, 0, 0.9, 0), UD2(0.26, 0, 0.07, 0), C3(0,0,0), C3(0, 0, 0), "Skill 3 Frame")
603
local SKILL4FRAME = CreateFrame(WEAPONGUI, 0.5, 0, UD2(0.365, 0, 0.7, 0), UD2(0.26, 0, 0.07, 0), C3(0,0,0), C3(0, 0, 0), "Skill 4 Frame")
604
 
605
local SKILL1TEXT = CreateLabel(SKILL1FRAME, "[Z] Golden Punch", SKILLTEXTCOLOR, 7, "SciFi", 0, 2, 1, "Text 1")
606
local SKILL2TEXT = CreateLabel(SKILL2FRAME, "[B] Golden Grasp", SKILLTEXTCOLOR, 7, "SciFi", 0, 2, 1, "Text 2")
607
local SKILL3TEXT = CreateLabel(SKILL3FRAME, "[C] Teleport", SKILLTEXTCOLOR, 7, "SciFi", 0, 2, 1, "Text 3")
608
local SKILL4TEXT = CreateLabel(SKILL4FRAME, "[X] Implosion Collision", SKILLTEXTCOLOR, 6, "SciFi", 0, 2, 1, "Text4")
609
 
610
--//=================================\\
611
--||         DAMAGE FUNCTIONS
612
--\\=================================//
613
 
614
function StatLabel(LABELTYPE, CFRAME, TEXT, COLOR)
615
    local STATPART = CreatePart(3, Effects, "SmoothPlastic", 0, 1, "Really black", "Effect", VT())
616
    STATPART.CFrame = CF(CFRAME.p + VT(0, 1.5, 0))
617
    local BODYGYRO = IT("BodyGyro", STATPART)
618
    local BODYPOSITION = IT("BodyPosition", STATPART)
619
    BODYPOSITION.P = 2000
620
    BODYPOSITION.D = 100
621
    BODYPOSITION.maxForce = VT(math.huge, math.huge, math.huge)
622
    BODYPOSITION.position = STATPART.Position + VT(MRANDOM(-2, 2), 6, MRANDOM(-2, 2))
623
    game:GetService("Debris"):AddItem(STATPART ,5)
624
    local BILLBOARDGUI = Instance.new("BillboardGui", STATPART)
625
    BILLBOARDGUI.Adornee = STATPART
626
    BILLBOARDGUI.Size = UD2(2.5, 0, 2.5 ,0)
627
    BILLBOARDGUI.StudsOffset = VT(-2, 2, 0)
628
    BILLBOARDGUI.AlwaysOnTop = false
629
    local TEXTLABEL = Instance.new("TextLabel", BILLBOARDGUI)
630
    TEXTLABEL.BackgroundTransparency = 1
631
    TEXTLABEL.Size = UD2(2.5, 0, 2.5, 0)
632
    TEXTLABEL.Text = TEXT
633
    TEXTLABEL.Font = "SciFi"
634
    TEXTLABEL.FontSize="Size42"
635
    TEXTLABEL.TextColor3 = COLOR
636
    TEXTLABEL.TextStrokeTransparency = 1
637
    TEXTLABEL.TextScaled = true
638
    TEXTLABEL.TextWrapped = true
639
    coroutine.resume(coroutine.create(function(THEPART, THEBODYPOSITION, THETEXTLABEL)
640
        if LABELTYPE == "Normal" then
641
            for i = 1, 30 do
642
                Swait()
643
                STATPART.Position = STATPART.Position + VT(0, (15-i)/10 ,0)
644
                TEXTLABEL.TextTransparency = TEXTLABEL.TextTransparency + (1/30)
645
            end
646
        elseif LABELTYPE == "Debuff" then
647
            for i = 1, 30 do
648
                Swait()
649
                STATPART.Position = STATPART.Position - VT(0, i/10 ,0)
650
                TEXTLABEL.TextTransparency = TEXTLABEL.TextTransparency + (1/30)
651
            end
652
        elseif LABELTYPE == "Shock" then
653
            local ORIGIN = STATPART.Position
654
            for i = 1, 30 do
655
                Swait()
656
                STATPART.Position = ORIGIN + VT(MRANDOM(-2,2),MRANDOM(-2,2),MRANDOM(-2,2))
657
                TEXTLABEL.TextTransparency = TEXTLABEL.TextTransparency + (1/30)
658
            end
659
        end
660
        THEPART.Parent = nil
661
    end),STATPART, BODYPOSITION, TEXTLABEL)
662
end
663
 
664
--//=================================\\
665
--||            DAMAGING
666
--\\=================================//
667
 
668
function killnearest(position,range,maxstrength,direction)
669
    for i,v in ipairs(workspace:GetChildren()) do
670
    local body = v:GetChildren()
671
        for part = 1, #body do
672
            if((body[part].ClassName == "Part" or body[part].ClassName == "MeshPart") and v ~= Character) then
673
                if(body[part].Position - position).Magnitude < range then
674
                    if v.ClassName == "Model" then
675
                        --v:BreakJoints()
676
                    end
677
                    local POS = position
678
                    coroutine.resume(coroutine.create(function()
679
                        body[part].Anchored = true
680
                        body[part].Parent = Effects
681
                        body[part].CanCollide = true
682
                        local SIZE = body[part].Size
683
                        body[part].Material = "Neon"
684
                        CreateSound("952306739", body[part], 2, MRANDOM(7, 12) / 10)
685
                        for i = 1, 75 do
686
                            Swait()
687
                            body[part].Color = C3(MRANDOM(0,100)/100,MRANDOM(0,100)/100,MRANDOM(0,100)/100)
688
                            body[part].Size = VT(SIZE.X+MRANDOM(-2,2),SIZE.Y+MRANDOM(-2,2),SIZE.Z+MRANDOM(-2,2))
689
                        end
690
                        coroutine.resume(coroutine.create(function()
691
                            while true do
692
                                Swait()
693
                                body[part].Color = C3(MRANDOM(0,100)/100,MRANDOM(0,100)/100,MRANDOM(0,100)/100)
694
                                body[part].Size = VT(SIZE.X+MRANDOM(-2,2),SIZE.Y+MRANDOM(-2,2),SIZE.Z+MRANDOM(-2,2))
695
                            end
696
                        end))
697
                        body[part].Anchored = false
698
                        body[part].Velocity = direction.lookVector*maxstrength
699
                    end))
700
                end
701
            end
702
        end
703
        if v.ClassName == "Part" then
704
            if v.Anchored == false and (v.Position - position).Magnitude < range then
705
                local POS = position
706
                coroutine.resume(coroutine.create(function()
707
                    v.Anchored = true
708
                    v.Parent = Effects
709
                    local SIZE = v.Size
710
                    v.Material = "Neon"
711
                    CreateSound("952306739", v, 2, MRANDOM(7, 12) / 10)
712
                    for i = 1, 75 do
713
                        Swait()
714
                        v.Color = C3(MRANDOM(0,100)/100,MRANDOM(0,100)/100,MRANDOM(0,100)/100)
715
                        v.Size = VT(SIZE.X+MRANDOM(-2,2),SIZE.Y+MRANDOM(-2,2),SIZE.Z+MRANDOM(-2,2))
716
                    end
717
                    coroutine.resume(coroutine.create(function()
718
                        while true do
719
                            Swait()
720
                            v.Color = C3(MRANDOM(0,100)/100,MRANDOM(0,100)/100,MRANDOM(0,100)/100)
721
                            v.Size = VT(SIZE.X+MRANDOM(-2,2),SIZE.Y+MRANDOM(-2,2),SIZE.Z+MRANDOM(-2,2))
722
                        end
723
                    end))
724
                    v.Anchored = false
725
                    v.Velocity = direction.lookVector*maxstrength
726
                end))
727
            end
728
        end
729
    end
730
end
731
 
732
--//=================================\\
733
--||    ATTACK FUNCTIONS AND STUFF
734
--\\=================================//
735
 
736
function AttackTemplate()
737
    ATTACK = true
738
    Rooted = false
739
    for i=0, 1, 0.1 / Animation_Speed do
740
        Swait()
741
        RootJoint.C0 = Clerp(RootJoint.C0,ROOTC0 * CF(0, 0, 0 + 0.05 * COS(SINE / 12)) * ANGLES(RAD(0), RAD(0), RAD(0)), 0.1 / Animation_Speed)
742
        Neck.C0 = Clerp(Neck.C0, NECKC0 * CF(0, 0, 0 + ((1) - 1)) * ANGLES(RAD(0 - 2.5 * SIN(SINE / 12)), RAD(0), RAD(0)), 0.1 / Animation_Speed)
743
        RightShoulder.C0 = Clerp(RightShoulder.C0, CF(1.5, 0.5, 0) * ANGLES(RAD(0), RAD(0), RAD(12)) * RIGHTSHOULDERC0, 0.1 / Animation_Speed)
744
        LeftShoulder.C0 = Clerp(LeftShoulder.C0, CF(-1.5, 0.5, 0) * ANGLES(RAD(0), RAD(0), RAD(-12)) * LEFTSHOULDERC0, 0.1 / Animation_Speed)
745
        RightHip.C0 = Clerp(RightHip.C0, CF(1, -1 - 0.05 * COS(SINE / 12), -0.01) * ANGLES(RAD(0), RAD(90), RAD(0)) * ANGLES(RAD(-8), RAD(0), RAD(0)), 0.15 / Animation_Speed)
746
        LeftHip.C0 = Clerp(LeftHip.C0, CF(-1, -1 - 0.05 * COS(SINE / 12), -0.01) * ANGLES(RAD(0), RAD(-90), RAD(0)) * ANGLES(RAD(-8), RAD(0), RAD(0)), 0.15 / Animation_Speed)
747
    end
748
    ATTACK = false
749
    Rooted = false
750
end
751
 
752
function GoldenPunch()
753
    ATTACK = true
754
    Rooted = false
755
    local SPEED = Speed
756
    Speed = 8
757
    CreateSound("169445572", RightArm, 10, 1.1)
758
    for i=0, 4, 0.1 / Animation_Speed do
759
        Swait()
760
        turnto(Mouse.Hit.p)
761
        MagicSphere(VT(1,1,1),15,RightArm.CFrame * CF(MRANDOM(-3,3),MRANDOM(-3,3),MRANDOM(-3,3)),"Deep orange",VT(-1/15,-1/15,-1/15))
762
        MagicSphere(VT(2,2,2),15,RightArm.CFrame * CF(MRANDOM(-3,3),MRANDOM(-3,3),MRANDOM(-3,3)),"Gold",VT(-2/15,-2/15,-2/15))
763
        RootJoint.C0 = Clerp(RootJoint.C0,ROOTC0 * CF(0 * Player_Size, 0 * Player_Size, -0.2 * Player_Size + 0.05 * COS(SINE / 12) * Player_Size) * ANGLES(RAD(0), RAD(0), RAD(-85)), 0.15 / Animation_Speed)
764
        Neck.C0 = Clerp(Neck.C0, NECKC0 * CF(0 * Player_Size, 0 * Player_Size, 0 + ((1 * Player_Size) - 1)) * ANGLES(RAD(0 - 2.5 * SIN(SINE / 12)), RAD(0), RAD(85)), 0.2 / Animation_Speed)
765
        RightShoulder.C0 = Clerp(RightShoulder.C0, CF(1.5 * Player_Size, 0.5 * Player_Size, 0 * Player_Size) * ANGLES(RAD(90+(MRANDOM(-45,45)/10)), RAD(0), RAD(12)) * RIGHTSHOULDERC0, 3 / Animation_Speed)
766
        LeftShoulder.C0 = Clerp(LeftShoulder.C0, CF(-1.5 * Player_Size, 0.5 * Player_Size, 0 * Player_Size) * ANGLES(RAD(90), RAD(0), RAD(-85)) * LEFTSHOULDERC0, 0.15 / Animation_Speed)
767
        RightHip.C0 = Clerp(RightHip.C0, CF(1 * Player_Size, -1 * Player_Size, -0 * Player_Size) * ANGLES(RAD(0), RAD(90), RAD(0)) * ANGLES(RAD(0), RAD(0), RAD(0)), 0.15 / Animation_Speed)
768
        LeftHip.C0 = Clerp(LeftHip.C0, CF(-1 * Player_Size, -1 * Player_Size, -0 * Player_Size) * ANGLES(RAD(0), RAD(-90), RAD(0)) * ANGLES(RAD(0), RAD(0), RAD(0)), 0.15 / Animation_Speed)
769
    end
770
    for i=0, 0.15, 0.1 / Animation_Speed do
771
        Swait()
772
        turnto(Mouse.Hit.p)
773
        RootJoint.C0 = Clerp(RootJoint.C0,ROOTC0 * CF(0 * Player_Size, 0 * Player_Size, -0.2 * Player_Size + 0.05 * COS(SINE / 12) * Player_Size) * ANGLES(RAD(0), RAD(0), RAD(65)), 1 / Animation_Speed)
774
        Neck.C0 = Clerp(Neck.C0, NECKC0 * CF(0 * Player_Size, 0 * Player_Size, 0 + ((1 * Player_Size) - 1)) * ANGLES(RAD(25), RAD(0), RAD(35)), 1 / Animation_Speed)
775
        RightShoulder.C0 = Clerp(RightShoulder.C0, CF(1.5 * Player_Size, 0.5 * Player_Size, 0 * Player_Size) * ANGLES(RAD(90), RAD(0), RAD(65)) * RIGHTSHOULDERC0, 1 / Animation_Speed)
776
        LeftShoulder.C0 = Clerp(LeftShoulder.C0, CF(-1.5 * Player_Size, 0.5 * Player_Size, 0 * Player_Size) * ANGLES(RAD(-20), RAD(0), RAD(-25)) * LEFTSHOULDERC0, 1 / Animation_Speed)
777
        RightHip.C0 = Clerp(RightHip.C0, CF(1 * Player_Size, -1 * Player_Size, -0 * Player_Size) * ANGLES(RAD(0), RAD(90), RAD(0)) * ANGLES(RAD(0), RAD(0), RAD(0)), 1 / Animation_Speed)
778
        LeftHip.C0 = Clerp(LeftHip.C0, CF(-1 * Player_Size, -1 * Player_Size, -0 * Player_Size) * ANGLES(RAD(0), RAD(-90), RAD(0)) * ANGLES(RAD(0), RAD(0), RAD(0)), 1 / Animation_Speed)
779
    end
780
    local PART = CreatePart(3, Effects, "Neon", 0, 0.8, "Gold", "Punch", VT(50,50,50),false)
781
    PART.CFrame = RootPart.CFrame * CF(0,0,-25)
782
    PART.Shape = "Ball"
783
    local bv = Instance.new("BodyVelocity")
784
    bv.maxForce = Vector3.new(1e9, 1e9, 1e9)
785
    bv.velocity = RootPart.CFrame.lookVector*600
786
    bv.Parent = PART
787
    bv.Name = "PROJECTILEVELOCITY"
788
    CreateWave(VT(1,5,1),55,RootPart.CFrame * CF(0,0,-6)*ANGLES(RAD(-90),RAD(0),RAD(0)),true,-1,"Gold",VT(2.5,0.2,2.5))
789
    CreateWave(VT(1,5,1),55,RootPart.CFrame * CF(0,0,-6)*ANGLES(RAD(-90),RAD(0),RAD(0)),true,1,"Gold",VT(3,0.2,3))
790
    CreateSwirl(VT(3,5,3),75,RootPart.CFrame * CF(0,0,-15)*ANGLES(RAD(-90),RAD(0),RAD(0)),true,-1,"Gold",VT(2,0.6,2))
791
    CreateSwirl(VT(3,5,3),75,RootPart.CFrame * CF(0,0,-15)*ANGLES(RAD(-90),RAD(0),RAD(0)),true,1,"Gold",VT(2.2,0.6,2.2))
792
    CreateSound("414517163", Effects, 10, MRANDOM(7, 12) / 10)
793
    coroutine.resume(coroutine.create(function()
794
        for i = 1, 10 do
795
            Swait()
796
            PART.Transparency = PART.Transparency + 0.2/10
797
            PART.Size = PART.Size + VT(5,5,5)
798
            killnearest(PART.Position,PART.Size.Y/2+15,100,RootPart.CFrame)
799
        end
800
        PART:Destroy()
801
    end))
802
    for i=0, 1, 0.1 / Animation_Speed do
803
        Swait()
804
        RootJoint.C0 = Clerp(RootJoint.C0,ROOTC0 * CF(0 * Player_Size, 0 * Player_Size, -0.2 * Player_Size + 0.05 * COS(SINE / 12) * Player_Size) * ANGLES(RAD(15), RAD(0), RAD(95)), 2 / Animation_Speed)
805
        Neck.C0 = Clerp(Neck.C0, NECKC0 * CF(0 * Player_Size, 0 * Player_Size, 0 + ((1 * Player_Size) - 1)) * ANGLES(RAD(25), RAD(0), RAD(35)), 3 / Animation_Speed)
806
        RightShoulder.C0 = Clerp(RightShoulder.C0, CF(1.5 * Player_Size, 0.5 * Player_Size, 0 * Player_Size) * ANGLES(RAD(90), RAD(0), RAD(0)) * RIGHTSHOULDERC0, 3 / Animation_Speed)
807
        LeftShoulder.C0 = Clerp(LeftShoulder.C0, CF(-1.5 * Player_Size, 0.5 * Player_Size, 0 * Player_Size) * ANGLES(RAD(-70), RAD(0), RAD(-25)) * LEFTSHOULDERC0, 3 / Animation_Speed)
808
        RightHip.C0 = Clerp(RightHip.C0, CF(1 * Player_Size, -0.8 * Player_Size, -0 * Player_Size) * ANGLES(RAD(0), RAD(90), RAD(0)) * ANGLES(RAD(-15), RAD(0), RAD(0)), 3 / Animation_Speed)
809
        LeftHip.C0 = Clerp(LeftHip.C0, CF(-1 * Player_Size, -1 * Player_Size, -0 * Player_Size) * ANGLES(RAD(0), RAD(-90), RAD(0)) * ANGLES(RAD(-5), RAD(0), RAD(0)), 3 / Animation_Speed)
810
    end
811
    Speed = SPEED
812
    ATTACK = false
813
    Rooted = false
814
end
815
 
816
function GoldenGrasp()
817
    ATTACK = true
818
    Rooted = false
819
    local HASGRABBED = false
820
    local WELD = nil
821
    local TORS = nil
822
    local hitting = FIST.Touched:connect(function(hit)
823
        if hit.Parent:FindFirstChild("Humanoid") then
824
            if hit.Parent.Humanoid.Health ~= 0 then
825
                UNANCHOR = false
826
                TORS = hit.Parent:FindFirstChild("Torso") or hit.Parent:FindFirstChild("UpperTorso")
827
                TORS.Anchored = true
828
                TORS.CFrame = RightArm.CFrame * CF(0,-1.15,0) * ANGLES(RAD(90), RAD(0), RAD(0))
829
                WELD = weldBetween(RightArm,TORS)
830
                HASGRABBED = true
831
                Rooted = true
832
            end
833
        end
834
    end)
835
    for i=0, 1, 0.1 / Animation_Speed do
836
        Swait()
837
        if HASGRABBED == true then
838
            break
839
        end
840
        RootJoint.C0 = Clerp(RootJoint.C0,ROOTC0 * CF(0, 0, 0 + 0.05 * COS(SINE / 12)) * ANGLES(RAD(0), RAD(0), RAD(25)), 2 / Animation_Speed)
841
        Neck.C0 = Clerp(Neck.C0, NECKC0 * CF(0, 0, 0 + ((1) - 1)) * ANGLES(RAD(0 - 2.5 * SIN(SINE / 12)), RAD(0), RAD(-25)), 2 / Animation_Speed)
842
        RightShoulder.C0 = Clerp(RightShoulder.C0, CF(1, 0.5, -1) * ANGLES(RAD(90), RAD(0), RAD(-25)) * RIGHTSHOULDERC0, 2 / Animation_Speed)
843
        LeftShoulder.C0 = Clerp(LeftShoulder.C0, CF(-1.5, 0.5, 0) * ANGLES(RAD(0), RAD(0), RAD(-12)) * LEFTSHOULDERC0, 2 / Animation_Speed)
844
        RightHip.C0 = Clerp(RightHip.C0, CF(1, -1 - 0.05 * COS(SINE / 12), -0.01) * ANGLES(RAD(0), RAD(90), RAD(0)) * ANGLES(RAD(-8), RAD(0), RAD(0)), 2 / Animation_Speed)
845
        LeftHip.C0 = Clerp(LeftHip.C0, CF(-1, -1 - 0.05 * COS(SINE / 12), -0.01) * ANGLES(RAD(0), RAD(-90), RAD(0)) * ANGLES(RAD(-8), RAD(0), RAD(0)), 2 / Animation_Speed)
846
    end
847
    hitting:disconnect()
848
    if HASGRABBED == true then
849
        TORS.Anchored = false
850
        RootPart.Anchored = true
851
        for i=0, 2, 0.1 / Animation_Speed do
852
            Swait()
853
            RootJoint.C0 = Clerp(RootJoint.C0, ROOTC0 * CF(0, 0, -1.2) * ANGLES(RAD(65), RAD(0), RAD(0)), 0.2 / Animation_Speed)
854
            Neck.C0 = Clerp(Neck.C0, NECKC0 * CF(0, 0, 0) * ANGLES(RAD(0), RAD(0), RAD(0)), 0.2 / Animation_Speed)
855
            RightShoulder.C0 = Clerp(RightShoulder.C0, CF(1.5, 0.5, 0) * ANGLES(RAD(-40), RAD(0), RAD(20)) * RIGHTSHOULDERC0, 0.2 / Animation_Speed)
856
            LeftShoulder.C0 = Clerp(LeftShoulder.C0, CF(-1.5, 0.5, 0) * ANGLES(RAD(-40), RAD(0), RAD(-20)) * LEFTSHOULDERC0, 0.2 / Animation_Speed)
857
            RightHip.C0 = Clerp(RightHip.C0, CF(1, -0.3, -1) * ANGLES(RAD(0), RAD(90), RAD(0)) * ANGLES(RAD(0), RAD(0), RAD(-20)), 0.2 / Animation_Speed)
858
            LeftHip.C0 = Clerp(LeftHip.C0, CF(-1, -0.3, -1) * ANGLES(RAD(0), RAD(-90), RAD(0)) * ANGLES(RAD(0), RAD(0), RAD(0)), 0.2 / Animation_Speed)
859
        end
860
        CreateWave(VT(3,1,3),65,CF(RootPart.Position)*CF(0,-3,0),false,2,"Pearl",VT(0.5,0.3,0.5))
861
        CreateWave(VT(3,1,3),65,CF(RootPart.Position)*CF(0,-3,0),true,2,"Pearl",VT(0.6,0.3,0.6))
862
        local SOUNDPART = CreatePart(3, Effects, "Neon", 0, 1, "Pearl", "Sound", VT(0,0,0))
863
        SOUNDPART.CFrame = RootPart.CFrame
864
        Debris:AddItem(SOUNDPART,5)
865
        CreateSound("1295446488", SOUNDPART, 2, 1)
866
        for i = 1, 15 do
867
            Slice(0.1,65,CF(RootPart.Position) * ANGLES(RAD(0), RAD(MRANDOM(-180,180)), RAD(90)),"Pearl", 1 + MRANDOM(1,30)/15)
868
        end
869
        for i=0, 2, 0.1 / Animation_Speed do
870
            Swait()
871
            RootJoint.C0 = Clerp(RootJoint.C0, ROOTC0 * CF(0, 0, 50000000) * ANGLES(RAD(0), RAD(0), RAD(0)), 2 / Animation_Speed)
872
            Neck.C0 = Clerp(Neck.C0, NECKC0 * CF(0, 0, 0 + ((1) - 1)) * ANGLES(RAD(-20), RAD(0), RAD(0)), 0.2 / Animation_Speed)
873
            RightShoulder.C0 = Clerp(RightShoulder.C0, CF(1.5, 0.5, 0) * ANGLES(RAD(-40), RAD(0), RAD(20)) * RIGHTSHOULDERC0, 0.2 / Animation_Speed)
874
            LeftShoulder.C0 = Clerp(LeftShoulder.C0, CF(-1.5, 0.5, 0) * ANGLES(RAD(-40), RAD(0), RAD(-20)) * LEFTSHOULDERC0, 0.2 / Animation_Speed)
875
            RightHip.C0 = Clerp(RightHip.C0, CF(1, -1, -0.3) * ANGLES(RAD(0), RAD(90), RAD(0)) * ANGLES(RAD(-5), RAD(0), RAD(-20)), 0.2 / Animation_Speed)
876
            LeftHip.C0 = Clerp(LeftHip.C0, CF(-1, -1, -0.3) * ANGLES(RAD(0), RAD(-90), RAD(0)) * ANGLES(RAD(-5), RAD(0), RAD(20)), 0.2 / Animation_Speed)
877
        end
878
        for i=0, 0.25, 0.1 / Animation_Speed do
879
            Swait()
880
            RootJoint.C0 = Clerp(RootJoint.C0,ROOTC0 * CF(0, 0, 0) * ANGLES(RAD(90), RAD(0), RAD(0)), 3 / Animation_Speed)
881
            Neck.C0 = Clerp(Neck.C0, NECKC0 * CF(0, 0, 0 + ((1) - 1)) * ANGLES(RAD(0 - 2.5 * SIN(SINE / 12)), RAD(0), RAD(0)), 3 / Animation_Speed)
882
            RightShoulder.C0 = Clerp(RightShoulder.C0, CF(1.5, 0.5, 0) * ANGLES(RAD(90), RAD(0), RAD(0)) * RIGHTSHOULDERC0, 3 / Animation_Speed)
883
            LeftShoulder.C0 = Clerp(LeftShoulder.C0, CF(-1.5, 0.5, 0) * ANGLES(RAD(0), RAD(0), RAD(-12)) * LEFTSHOULDERC0, 3 / Animation_Speed)
884
            RightHip.C0 = Clerp(RightHip.C0, CF(1, -1 - 0.05 * COS(SINE / 12), -0.01) * ANGLES(RAD(0), RAD(90), RAD(0)) * ANGLES(RAD(-8), RAD(0), RAD(0)), 0.15 / Animation_Speed)
885
            LeftHip.C0 = Clerp(LeftHip.C0, CF(-1, -1 - 0.05 * COS(SINE / 12), -0.01) * ANGLES(RAD(0), RAD(-90), RAD(0)) * ANGLES(RAD(-8), RAD(0), RAD(0)), 0.15 / Animation_Speed)
886
        end
887
        if HITFLOOR ~= nil then
888
            CreateDebreeRing(HITFLOOR,CF(RootPart.Position)*CF(0,-3,0).p,15,VT(7,7,7),85)
889
        end
890
        CreateSound("414517163", Effects, 10, MRANDOM(7, 12) / 10)
891
        WELD:remove()
892
        for i = 1, 25 do
893
            Swait()
894
            killnearest(RootPart.Position,45,100,Torso.CFrame)
895
            CreateWave(VT(3,1,3),65,CF(RootPart.Position)*CF(0,-3,0),true,5,"Pearl",VT(0.3,3,0.3))
896
            CreateWave(VT(3,1,3),65,CF(RootPart.Position)*CF(0,-3,0),false,2,"Gold",VT(1,0.4,1))
897
            CreateWave(VT(3,1,3),65,CF(RootPart.Position)*CF(0,-3,0),true,5,"Gold",VT(2.3,0.3,2.3))
898
            Slice(0.1,65,CF(RootPart.Position) * ANGLES(RAD(MRANDOM(-180,180)), RAD(MRANDOM(-180,180)), RAD(MRANDOM(-180,180))),"Pearl", 1 + MRANDOM(1,30)/5)
899
            Slice(0.1,65,CF(RightArm.CFrame*CF(0,-1,0).p) * ANGLES(RAD(MRANDOM(-20,20)), RAD(MRANDOM(-180,180)), RAD(MRANDOM(-20,20))),"Gold", 1 + MRANDOM(1,30)/15)
900
        end
901
    end
902
    UNANCHOR = true
903
    ATTACK = false
904
    Rooted = false
905
end
906
 
907
function Mach20()
908
    local ORIGIN = RootPart.Position
909
    CreateWave2(VT(3,1,3),65,CF(RootPart.Position)*CF(0,-3,0),false,2,"Pearl",VT(0.2,3,0.4))
910
    CreateWave2(VT(3,1,3),65,CF(RootPart.Position)*CF(0,-3,0),false,2,"Pearl",VT(0.2,3.1,0.6))
911
    local SOUNDPART = CreatePart(3, Effects, "Neon", 0, 1, "Pearl", "Sound", VT(0,0,0))
912
    SOUNDPART.CFrame = RootPart.CFrame
913
    Debris:AddItem(SOUNDPART,5)
914
    CreateSound("1295446488", SOUNDPART, 2, 1)
915
    RootPart.CFrame = CF(Mouse.Hit.p+VT(0,3,0),VT(ORIGIN.X,Mouse.Hit.p.Y,ORIGIN.Z))
916
    Swait()
917
    CreateWave2(VT(3,1,3),65,CF(RootPart.Position)*CF(0,-3,0),false,2,"Pearl",VT(0.2,3,0.4))
918
    CreateWave2(VT(3,1,3),65,CF(RootPart.Position)*CF(0,-3,0),false,2,"Pearl",VT(0.2,3.1,0.6))
919
    local SOUNDPART = CreatePart(3, Effects, "Neon", 0, 1, "Pearl", "Sound", VT(0,0,0))
920
    SOUNDPART.CFrame = RootPart.CFrame
921
    Debris:AddItem(SOUNDPART,5)
922
    CreateSound("1295446488", SOUNDPART, 2, 1)
923
    if MRANDOM(1,8) == 1 then
924
        ATTACK = true
925
        Rooted = true
926
        local FRUITSTABLE = {
927
            {MeshId = "16190555", TextureId = "16190577", Color = "Really red"},
928
            {MeshId = "119574562", TextureId = "64374853", Color = "New Yeller"},
929
            {MeshId = "24394186", TextureId = "24394178", Color = "Brown"}
930
        }
931
        local FRUIT = FRUITSTABLE[MRANDOM(1, #FRUITSTABLE)]
932
        local FRUITMODEL = CreatePart(3, Effects, "Neon", 0, 0, FRUIT.Color, "Fruit", VT(0,0,0),false)
933
        CreateMesh("SpecialMesh", FRUITMODEL, "FileMesh", FRUIT.MeshId, FRUIT.TextureId, VT(2,2,2), VT(0,0,0))
934
        FRUITMODEL.CFrame = RightArm.CFrame * CF(0,-1.5,0)
935
        weldBetween(RightArm,FRUITMODEL)
936
        for i=0, 4, 0.1 / Animation_Speed do
937
            Swait()
938
            RootJoint.C0 = Clerp(RootJoint.C0,ROOTC0 * CF(0, 0, 0 + 0.05 * COS(SINE / 12)) * ANGLES(RAD(0), RAD(0), RAD(0)), 0.15 / Animation_Speed)
939
            Neck.C0 = Clerp(Neck.C0, NECKC0 * CF(0, 0, 0 + ((1) - 1)) * ANGLES(RAD(0 - 2.5 * SIN(SINE / 12)), RAD(0), RAD(0)), 0.15 / Animation_Speed)
940
            RightShoulder.C0 = Clerp(RightShoulder.C0, CF(1.5, 0.5, 0) * ANGLES(RAD(0), RAD(190), RAD(-145)) * RIGHTSHOULDERC0, 0.15 / Animation_Speed)
941
            LeftShoulder.C0 = Clerp(LeftShoulder.C0, CF(-1.5, 0.5, 0) * ANGLES(RAD(0), RAD(0), RAD(-12)) * LEFTSHOULDERC0, 0.15 / Animation_Speed)
942
            RightHip.C0 = Clerp(RightHip.C0, CF(1, -1 - 0.05 * COS(SINE / 12), -0.01) * ANGLES(RAD(0), RAD(90), RAD(0)) * ANGLES(RAD(-8), RAD(0), RAD(0)), 0.15 / Animation_Speed)
943
            LeftHip.C0 = Clerp(LeftHip.C0, CF(-1, -1 - 0.05 * COS(SINE / 12), -0.01) * ANGLES(RAD(0), RAD(-90), RAD(0)) * ANGLES(RAD(-8), RAD(0), RAD(0)), 0.15 / Animation_Speed)
944
        end
945
        CreateSound("414517163", RightArm, 10, MRANDOM(7, 12) / 10)
946
        FRUITMODEL:remove()
947
        for i = 1, 15 do
948
            Slice(0.1,15,RightArm.CFrame*CF(0,-1,0) * ANGLES(RAD(MRANDOM(-180,180)), RAD(MRANDOM(-180,180)), RAD(MRANDOM(-180,180))),FRUIT.Color, 1 + MRANDOM(1,10)/15)
949
        end
950
        for i=0, 0.5, 0.1 / Animation_Speed do
951
            Swait()
952
            RootJoint.C0 = Clerp(RootJoint.C0,ROOTC0 * CF(0, 0, 0 + 0.05 * COS(SINE / 12)) * ANGLES(RAD(0), RAD(0), RAD(0)), 0.15 / Animation_Speed)
953
            Neck.C0 = Clerp(Neck.C0, NECKC0 * CF(0, 0, 0 + ((1) - 1)) * ANGLES(RAD(0 - 2.5 * SIN(SINE / 12)), RAD(0), RAD(0)), 0.15 / Animation_Speed)
954
            RightShoulder.C0 = Clerp(RightShoulder.C0, CF(1.5, 0.5, 0) * ANGLES(RAD(0), RAD(190), RAD(-175)) * RIGHTSHOULDERC0, 0.15 / Animation_Speed)
955
            LeftShoulder.C0 = Clerp(LeftShoulder.C0, CF(-1.5, 0.5, 0) * ANGLES(RAD(0), RAD(0), RAD(-12)) * LEFTSHOULDERC0, 0.15 / Animation_Speed)
956
            RightHip.C0 = Clerp(RightHip.C0, CF(1, -1 - 0.05 * COS(SINE / 12), -0.01) * ANGLES(RAD(0), RAD(90), RAD(0)) * ANGLES(RAD(-8), RAD(0), RAD(0)), 0.15 / Animation_Speed)
957
            LeftHip.C0 = Clerp(LeftHip.C0, CF(-1, -1 - 0.05 * COS(SINE / 12), -0.01) * ANGLES(RAD(0), RAD(-90), RAD(0)) * ANGLES(RAD(-8), RAD(0), RAD(0)), 0.15 / Animation_Speed)
958
        end
959
        ATTACK = false
960
        Rooted = false
961
    end
962
end
963
 
964
function ImplosionCollision()
965
    ATTACK = true
966
    Rooted = true
967
    CreateSound("169445572", RightArm, 10, 0.8)
968
    for i=0, 8, 0.1 / Animation_Speed do
969
        Swait()
970
        turnto(Mouse.Hit.p)
971
        CreateWave(VT(3,1,3),65,CF(RootPart.Position)*CF(0,-3,0),true,2,"Gold",VT(0.2,0,0.2))
972
        Slice(0.1,65,RightArm.CFrame*CF(0,-1,0) * ANGLES(RAD(MRANDOM(-180,180)), RAD(MRANDOM(-180,180)), RAD(MRANDOM(-180,180))),"Gold", 1.1)
973
        MagicSphere(VT(0.2,0.2,0.2),15,CF(RightArm.CFrame*CF(MRANDOM(-5,5),MRANDOM(-5,5),MRANDOM(-5,5)).p,RightArm.Position),"New Yeller",VT(0.001,0.001,1),0)
974
        MagicSphere(VT(0.2,0.2,0.2),15,CF(RightArm.CFrame*CF(MRANDOM(-5,5),MRANDOM(-5,5),MRANDOM(-5,5)).p,RightArm.Position),"Gold",VT(0.001,0.001,2),0)
975
        MagicSphere(VT(1,1,1),15,RightArm.CFrame * CF(MRANDOM(-3,3),MRANDOM(-3,3),MRANDOM(-3,3)),"Deep orange",VT(-1/15,-1/15,-1/15))
976
        MagicSphere(VT(2,2,2),15,RightArm.CFrame * CF(MRANDOM(-3,3),MRANDOM(-3,3),MRANDOM(-3,3)),"Gold",VT(-2/15,-2/15,-2/15))
977
        RootJoint.C0 = Clerp(RootJoint.C0,ROOTC0 * CF(0 * Player_Size, 0 * Player_Size, -0.2 * Player_Size + 0.05 * COS(SINE / 12) * Player_Size) * ANGLES(RAD(0), RAD(0), RAD(-85)), 0.15 / Animation_Speed)
978
        Neck.C0 = Clerp(Neck.C0, NECKC0 * CF(0 * Player_Size, 0 * Player_Size, 0 + ((1 * Player_Size) - 1)) * ANGLES(RAD(0 - 2.5 * SIN(SINE / 12)), RAD(0), RAD(85)), 0.2 / Animation_Speed)
979
        RightShoulder.C0 = Clerp(RightShoulder.C0, CF(1.5 * Player_Size, 0.5 * Player_Size, 0 * Player_Size) * ANGLES(RAD(90+(MRANDOM(-45,45)/10)), RAD(0), RAD(12)) * RIGHTSHOULDERC0, 3 / Animation_Speed)
980
        LeftShoulder.C0 = Clerp(LeftShoulder.C0, CF(-1.5 * Player_Size, 0.5 * Player_Size, 0 * Player_Size) * ANGLES(RAD(90), RAD(0), RAD(-85)) * LEFTSHOULDERC0, 0.15 / Animation_Speed)
981
        RightHip.C0 = Clerp(RightHip.C0, CF(1 * Player_Size, -1 * Player_Size, -0 * Player_Size) * ANGLES(RAD(0), RAD(90), RAD(0)) * ANGLES(RAD(0), RAD(0), RAD(0)), 0.15 / Animation_Speed)
982
        LeftHip.C0 = Clerp(LeftHip.C0, CF(-1 * Player_Size, -1 * Player_Size, -0 * Player_Size) * ANGLES(RAD(0), RAD(-90), RAD(0)) * ANGLES(RAD(0), RAD(0), RAD(0)), 0.15 / Animation_Speed)
983
    end
984
    for i=0, 0.15, 0.1 / Animation_Speed do
985
        Swait()
986
        turnto(Mouse.Hit.p)
987
        RootJoint.C0 = Clerp(RootJoint.C0,ROOTC0 * CF(0 * Player_Size, 0 * Player_Size, -0.2 * Player_Size + 0.05 * COS(SINE / 12) * Player_Size) * ANGLES(RAD(0), RAD(0), RAD(65)), 1 / Animation_Speed)
988
        Neck.C0 = Clerp(Neck.C0, NECKC0 * CF(0 * Player_Size, 0 * Player_Size, 0 + ((1 * Player_Size) - 1)) * ANGLES(RAD(25), RAD(0), RAD(35)), 1 / Animation_Speed)
989
        RightShoulder.C0 = Clerp(RightShoulder.C0, CF(1.5 * Player_Size, 0.5 * Player_Size, 0 * Player_Size) * ANGLES(RAD(90), RAD(0), RAD(65)) * RIGHTSHOULDERC0, 1 / Animation_Speed)
990
        LeftShoulder.C0 = Clerp(LeftShoulder.C0, CF(-1.5 * Player_Size, 0.5 * Player_Size, 0 * Player_Size) * ANGLES(RAD(-20), RAD(0), RAD(-25)) * LEFTSHOULDERC0, 1 / Animation_Speed)
991
        RightHip.C0 = Clerp(RightHip.C0, CF(1 * Player_Size, -1 * Player_Size, -0 * Player_Size) * ANGLES(RAD(0), RAD(90), RAD(0)) * ANGLES(RAD(0), RAD(0), RAD(0)), 1 / Animation_Speed)
992
        LeftHip.C0 = Clerp(LeftHip.C0, CF(-1 * Player_Size, -1 * Player_Size, -0 * Player_Size) * ANGLES(RAD(0), RAD(-90), RAD(0)) * ANGLES(RAD(0), RAD(0), RAD(0)), 1 / Animation_Speed)
993
    end
994
    MagicSphere(VT(4,4,4),100,RootPart.CFrame * CF(0,0,-6),"Gold",VT(-0.04,-0.04,-0.04))
995
    MagicSphere(VT(3.5,3.5,3.5),100,RootPart.CFrame * CF(0,0,-6),"Really black",VT(-0.035,-0.035,-0.035))
996
    coroutine.resume(coroutine.create(function()
997
        Swait(100)
998
        for i = 1, 5 do
999
            MagicSphere(VT(150,150,150),75,RootPart.CFrame * CF(0,0,-72*i),"Gold",VT(-150/(150-(15*i)),-150/(150-(15*i)),-150/(150-(15*i))))
1000
            CreateWave(VT(1,5,1),55,RootPart.CFrame * CF(0,0,-6*i)*ANGLES(RAD(-90),RAD(0),RAD(0)),true,-1,"Gold",VT(4.5*i,0.2,4.5*i))
1001
            CreateWave(VT(1,5,1),55,RootPart.CFrame * CF(0,0,-6*i)*ANGLES(RAD(-90),RAD(0),RAD(0)),true,1,"Gold",VT(5*i,0.2,5*i))
1002
            CreateSwirl(VT(3,5,3),75,RootPart.CFrame * CF(0,0,-15*i)*ANGLES(RAD(-90),RAD(0),RAD(0)),true,-1,"Gold",VT(4*i,0.6,4*i))
1003
            CreateSwirl(VT(3,5,3),75,RootPart.CFrame * CF(0,0,-15*i)*ANGLES(RAD(-90),RAD(0),RAD(0)),true,1,"Gold",VT(5.2*i,0.6,5.2*i))
1004
        end
1005
        killnearest(RootPart.CFrame * CF(0,0,-500).p,500,1000,RootPart.CFrame)
1006
        for i = 1, 5 do
1007
            CreateSound("414517163", Effects, 10, MRANDOM(5, 8) / 10)
1008
            CreateSound("414517163", Effects, 10, MRANDOM(5, 8) / 10)
1009
        end
1010
        coroutine.resume(coroutine.create(function()
1011
            for i = 1, 50 do
1012
                Swait()
1013
                for i = 1, 1 do
1014
                    Slice(0.1,65,CF(RootPart.Position) * ANGLES(RAD(MRANDOM(-180,180)), RAD(MRANDOM(-180,180)), RAD(MRANDOM(-180,180))),"Pearl", 1 + MRANDOM(1,30)/5)
1015
                end
1016
                for i = 1, 2 do
1017
                    Slice(0.1,65,CF(RootPart.Position) * ANGLES(RAD(MRANDOM(-180,180)), RAD(MRANDOM(-180,180)), RAD(MRANDOM(-180,180))),"Gold", 1 + MRANDOM(1,30)/3)
1018
                end
1019
            end
1020
        end))
1021
    end))
1022
    for i=0, 4, 0.1 / Animation_Speed do
1023
        Swait()
1024
        RootJoint.C0 = Clerp(RootJoint.C0,ROOTC0 * CF(0 * Player_Size, 0 * Player_Size, -0.2 * Player_Size + 0.05 * COS(SINE / 12) * Player_Size) * ANGLES(RAD(15), RAD(0), RAD(95)), 2 / Animation_Speed)
1025
        Neck.C0 = Clerp(Neck.C0, NECKC0 * CF(0 * Player_Size, 0 * Player_Size, 0 + ((1 * Player_Size) - 1)) * ANGLES(RAD(25), RAD(0), RAD(35)), 3 / Animation_Speed)
1026
        RightShoulder.C0 = Clerp(RightShoulder.C0, CF(1.5 * Player_Size, 0.5 * Player_Size, 0 * Player_Size) * ANGLES(RAD(90), RAD(0), RAD(0)) * RIGHTSHOULDERC0, 3 / Animation_Speed)
1027
        LeftShoulder.C0 = Clerp(LeftShoulder.C0, CF(-1.5 * Player_Size, 0.5 * Player_Size, 0 * Player_Size) * ANGLES(RAD(-70), RAD(0), RAD(-25)) * LEFTSHOULDERC0, 3 / Animation_Speed)
1028
        RightHip.C0 = Clerp(RightHip.C0, CF(1 * Player_Size, -0.8 * Player_Size, -0 * Player_Size) * ANGLES(RAD(0), RAD(90), RAD(0)) * ANGLES(RAD(-15), RAD(0), RAD(0)), 3 / Animation_Speed)
1029
        LeftHip.C0 = Clerp(LeftHip.C0, CF(-1 * Player_Size, -1 * Player_Size, -0 * Player_Size) * ANGLES(RAD(0), RAD(-90), RAD(0)) * ANGLES(RAD(-5), RAD(0), RAD(0)), 3 / Animation_Speed)
1030
    end
1031
    ATTACK = false
1032
    Rooted = false
1033
end
1034
 
1035
--//=================================\\
1036
--||      ASSIGN THINGS TO KEYS
1037
--\\=================================//
1038
 
1039
function MouseDown(Mouse)
1040
    if ATTACK == false then
1041
    end
1042
end
1043
 
1044
function MouseUp(Mouse)
1045
HOLD = false
1046
end
1047
 
1048
function KeyDown(Key)
1049
    KEYHOLD = true
1050
    if Key == "z" and ATTACK == false then
1051
        GoldenPunch()
1052
    end
1053
 
1054
    if Key == "b" and ATTACK == false then
1055
        GoldenGrasp()
1056
    end
1057
 
1058
    if Key == "c" and ATTACK == false then
1059
        Teleport()
1060
    end
1061
 
1062
    if Key == "x" and ATTACK == false then
1063
        ImplosionCollision()
1064
    end
1065
 
1066
    if Key == "p" and ATTACK == false then
1067
        if Speed == 20 then
1068
            Speed = 150
1069
        elseif Speed == 150 then
1070
            Speed = 20
1071
        end
1072
    end
1073
end
1074
 
1075
function KeyUp(Key)
1076
    KEYHOLD = false
1077
end
1078
 
1079
    Mouse.Button1Down:connect(function(NEWKEY)
1080
        MouseDown(NEWKEY)
1081
    end)
1082
    Mouse.Button1Up:connect(function(NEWKEY)
1083
        MouseUp(NEWKEY)
1084
    end)
1085
    Mouse.KeyDown:connect(function(NEWKEY)
1086
        KeyDown(NEWKEY)
1087
    end)
1088
    Mouse.KeyUp:connect(function(NEWKEY)
1089
        KeyUp(NEWKEY)
1090
    end)
1091
 
1092
--//=================================\\
1093
--\\=================================//
1094
 
1095
 
1096
function unanchor()
1097
    if UNANCHOR == true then
1098
        g = Character:GetChildren()
1099
        for i = 1, #g do
1100
            if g[i].ClassName == "Part" then
1101
                g[i].Anchored = false
1102
            end
1103
        end
1104
    end
1105
end
1106
 
1107
 
1108
--//=================================\\
1109
--||    WRAP THE WHOLE SCRIPT UP
1110
--\\=================================//
1111
 
1112
Humanoid.Changed:connect(function(Jump)
1113
    if Jump == "Jump" and (Disable_Jump == true) then
1114
        Humanoid.Jump = false
1115
    end
1116
end)
1117
 
1118
while true do
1119
    Swait()
1120
    ANIMATE.Parent = nil
1121
    local IDLEANIMATION = Humanoid:LoadAnimation(ROBLOXIDLEANIMATION)
1122
    IDLEANIMATION:Play()
1123
    SINE = SINE + CHANGE
1124
    local TORSOVELOCITY = (RootPart.Velocity * VT(1, 0, 1)).magnitude
1125
    local TORSOVERTICALVELOCITY = RootPart.Velocity.y
1126
    local LV = Torso.CFrame:pointToObjectSpace(Torso.Velocity - Torso.Position)
1127
    HITFLOOR = Raycast(RootPart.Position, (CF(RootPart.Position, RootPart.Position + VT(0, -1, 0))).lookVector, 4 * Player_Size, Character)
1128
    local WALKSPEEDVALUE = 0
1129
    if Speed < 35 then
1130
        WALKSPEEDVALUE = 6
1131
    else
1132
        WALKSPEEDVALUE = 3
1133
    end
1134
    if ANIM == "Walk" and TORSOVELOCITY > 1 and Rooted == false then
1135
        RootJoint.C1 = Clerp(RootJoint.C1, ROOTC0 * CF(0, 0, -0.15 * COS(SINE / (WALKSPEEDVALUE / 2)) * Player_Size) * ANGLES(RAD(0), RAD(0) - RootPart.RotVelocity.Y / 75, RAD(0)), 2 * (1) / Animation_Speed)
1136
        Neck.C1 = Clerp(Neck.C1, CF(0 * Player_Size, -0.5 * Player_Size, 0 * Player_Size) * ANGLES(RAD(-90), RAD(0), RAD(180)) * ANGLES(RAD(2.5 * SIN(SINE / (WALKSPEEDVALUE / 2))), RAD(0), RAD(0) - Head.RotVelocity.Y / 30), 0.2 * (Humanoid.WalkSpeed / 16) / Animation_Speed)
1137
        if Speed < 35 then
1138
            RightHip.C1 = Clerp(RightHip.C1, CF(0.5 * Player_Size, 0.875 * Player_Size - 0.125 * SIN(SINE / WALKSPEEDVALUE) * Player_Size, -0.125 * COS(SINE / WALKSPEEDVALUE) * Player_Size) * ANGLES(RAD(0), RAD(90), RAD(0)) * ANGLES(RAD(0) - RightLeg.RotVelocity.Y / 75, RAD(0), RAD(56 * COS(SINE / WALKSPEEDVALUE))), 0.2 * (WALKSPEEDVALUE) / Animation_Speed)
1139
            LeftHip.C1 = Clerp(LeftHip.C1, CF(-0.5 * Player_Size, 0.875 * Player_Size + 0.125 * SIN(SINE / WALKSPEEDVALUE) * Player_Size, 0.125 * COS(SINE / WALKSPEEDVALUE) * Player_Size) * ANGLES(RAD(0), RAD(-90), RAD(0)) * ANGLES(RAD(0) + LeftLeg.RotVelocity.Y / 75, RAD(0), RAD(56 * COS(SINE / WALKSPEEDVALUE))), 0.2 * (WALKSPEEDVALUE) / Animation_Speed)
1140
        else
1141
            RightHip.C1 = Clerp(RightHip.C1, CF(0.5 * Player_Size, 0.875 * Player_Size - 0.125 * SIN(SINE / WALKSPEEDVALUE) * Player_Size, -0.125 * COS(SINE / WALKSPEEDVALUE) * Player_Size) * ANGLES(RAD(0), RAD(90), RAD(0)) * ANGLES(RAD(0) - RightLeg.RotVelocity.Y / 75, RAD(0), RAD(80 * COS(SINE / WALKSPEEDVALUE))), 0.2 * (WALKSPEEDVALUE) / Animation_Speed)
1142
            LeftHip.C1 = Clerp(LeftHip.C1, CF(-0.5 * Player_Size, 0.875 * Player_Size + 0.125 * SIN(SINE / WALKSPEEDVALUE) * Player_Size, 0.125 * COS(SINE / WALKSPEEDVALUE) * Player_Size) * ANGLES(RAD(0), RAD(-90), RAD(0)) * ANGLES(RAD(0) + LeftLeg.RotVelocity.Y / 75, RAD(0), RAD(80 * COS(SINE / WALKSPEEDVALUE))), 0.2 * (WALKSPEEDVALUE) / Animation_Speed)
1143
        end
1144
    elseif (ANIM ~= "Walk") or (TORSOVELOCITY < 1) or Rooted == true then
1145
        RootJoint.C1 = Clerp(RootJoint.C1, ROOTC0 * CF(0, 0, 0) * ANGLES(RAD(0), RAD(0), RAD(0)), 0.2 / Animation_Speed)
1146
        Neck.C1 = Clerp(Neck.C1, CF(0 * Player_Size, -0.5 * Player_Size, 0 * Player_Size) * ANGLES(RAD(-90), RAD(0), RAD(180)) * ANGLES(RAD(0), RAD(0), RAD(0)), 0.2 / Animation_Speed)
1147
        RightHip.C1 = Clerp(RightHip.C1, CF(0.5 * Player_Size, 1 * Player_Size, 0 * Player_Size) * ANGLES(RAD(0), RAD(90), RAD(0)) * ANGLES(RAD(0), RAD(0), RAD(0)), 0.2 / Animation_Speed)
1148
        LeftHip.C1 = Clerp(LeftHip.C1, CF(-0.5 * Player_Size, 1 * Player_Size, 0 * Player_Size) * ANGLES(RAD(0), RAD(-90), RAD(0)) * ANGLES(RAD(0), RAD(0), RAD(0)), 0.2 / Animation_Speed)
1149
    end
1150
    if TORSOVERTICALVELOCITY > 1 and HITFLOOR == nil then
1151
        ANIM = "Jump"
1152
        if ATTACK == false then
1153
            RootJoint.C0 = Clerp(RootJoint.C0, ROOTC0 * CF(0, 0, 0) * ANGLES(RAD(0), RAD(0), RAD(0)), 0.2 / Animation_Speed)
1154
            Neck.C0 = Clerp(Neck.C0, NECKC0 * CF(0, 0 * Player_Size, 0 + ((1) - 1)) * ANGLES(RAD(-20), RAD(0), RAD(0)), 0.2 / Animation_Speed)
1155
            RightShoulder.C0 = Clerp(RightShoulder.C0, CF(1.5, 0.5, 0) * ANGLES(RAD(-40), RAD(0), RAD(20)) * RIGHTSHOULDERC0, 0.2 / Animation_Speed)
1156
            LeftShoulder.C0 = Clerp(LeftShoulder.C0, CF(-1.5, 0.5, 0) * ANGLES(RAD(-40), RAD(0), RAD(-20)) * LEFTSHOULDERC0, 0.2 / Animation_Speed)
1157
            RightHip.C0 = Clerp(RightHip.C0, CF(1, -1, -0.3) * ANGLES(RAD(0), RAD(90), RAD(0)) * ANGLES(RAD(-5), RAD(0), RAD(-20)), 0.2 / Animation_Speed)
1158
            LeftHip.C0 = Clerp(LeftHip.C0, CF(-1, -1, -0.3) * ANGLES(RAD(0), RAD(-90), RAD(0)) * ANGLES(RAD(-5), RAD(0), RAD(20)), 0.2 / Animation_Speed)
1159
        end
1160
    elseif TORSOVERTICALVELOCITY < -1 and HITFLOOR == nil then
1161
        ANIM = "Fall"
1162
        if ATTACK == false then
1163
            RootJoint.C0 = Clerp(RootJoint.C0, ROOTC0 * CF(0, 0, 0 ) * ANGLES(RAD(0), RAD(0), RAD(0)), 0.2 / Animation_Speed)
1164
            Neck.C0 = Clerp(Neck.C0, NECKC0 * CF(0, 0 , 0 + ((1) - 1)) * ANGLES(RAD(20), RAD(0), RAD(0)), 0.2 / Animation_Speed)
1165
            RightShoulder.C0 = Clerp(RightShoulder.C0, CF(1.5, 0.5, 0) * ANGLES(RAD(0), RAD(0), RAD(60)) * RIGHTSHOULDERC0, 0.2 / Animation_Speed)
1166
            LeftShoulder.C0 = Clerp(LeftShoulder.C0, CF(-1.5, 0.5, 0) * ANGLES(RAD(0), RAD(0), RAD(-60)) * LEFTSHOULDERC0, 0.2 / Animation_Speed)
1167
            RightHip.C0 = Clerp(RightHip.C0, CF(1, -1, 0) * ANGLES(RAD(0), RAD(90), RAD(0)) * ANGLES(RAD(0), RAD(0), RAD(20)), 0.2 / Animation_Speed)
1168
            LeftHip.C0 = Clerp(LeftHip.C0, CF(-1, -1, 0) * ANGLES(RAD(0), RAD(-90), RAD(0)) * ANGLES(RAD(0), RAD(0), RAD(10)), 0.2 / Animation_Speed)
1169
        end
1170
    elseif TORSOVELOCITY < 1 and HITFLOOR ~= nil then
1171
        ANIM = "Idle"
1172
        if ATTACK == false then
1173
            RootJoint.C0 = Clerp(RootJoint.C0,ROOTC0 * CF(0, 0, 0 + 0.05 * COS(SINE / 12)) * ANGLES(RAD(0), RAD(0), RAD(0)), 0.15 / Animation_Speed)
1174
            Neck.C0 = Clerp(Neck.C0, NECKC0 * CF(0, 0, 0 + ((1) - 1)) * ANGLES(RAD(0 - 2.5 * SIN(SINE / 12)), RAD(0), RAD(0)), 0.15 / Animation_Speed)
1175
            RightShoulder.C0 = Clerp(RightShoulder.C0, CF(1.5, 0.5, 0) * ANGLES(RAD(0), RAD(0), RAD(12)) * RIGHTSHOULDERC0, 0.15 / Animation_Speed)
1176
            LeftShoulder.C0 = Clerp(LeftShoulder.C0, CF(-1.5, 0.5, 0) * ANGLES(RAD(0), RAD(0), RAD(-12)) * LEFTSHOULDERC0, 0.15 / Animation_Speed)
1177
            RightHip.C0 = Clerp(RightHip.C0, CF(1, -1 - 0.05 * COS(SINE / 12), -0.01) * ANGLES(RAD(0), RAD(90), RAD(0)) * ANGLES(RAD(-8), RAD(0), RAD(0)), 0.15 / Animation_Speed)
1178
            LeftHip.C0 = Clerp(LeftHip.C0, CF(-1, -1 - 0.05 * COS(SINE / 12), -0.01) * ANGLES(RAD(0), RAD(-90), RAD(0)) * ANGLES(RAD(-8), RAD(0), RAD(0)), 0.15 / Animation_Speed)
1179
        end
1180
    elseif TORSOVELOCITY > 1 and HITFLOOR ~= nil and Rooted == false then
1181
        ANIM = "Walk"
1182
        WALK = WALK + 1 / Animation_Speed
1183
        if WALK >= 15 - (5 * (Humanoid.WalkSpeed / 16 / Player_Size)) then
1184
            WALK = 0
1185
            if WALKINGANIM == true then
1186
                WALKINGANIM = false
1187
            elseif WALKINGANIM == false then
1188
                WALKINGANIM = true
1189
            end
1190
        end
1191
        --RightHip.C1 = Clerp(RightHip.C1, CF(0.5 * Player_Size, 0.875 * Player_Size - 0.125 * SIN(SINE / WALKSPEEDVALUE) * Player_Size, -0.125 * COS(SINE / WALKSPEEDVALUE) * Player_Size) * ANGLES(RAD(0), RAD(90), RAD(0)) * ANGLES(RAD(0) - RightLeg.RotVelocity.Y / 75, RAD(0), RAD(60 * COS(SINE / WALKSPEEDVALUE))), 0.2 * (Humanoid.WalkSpeed / 16) / Animation_Speed)
1192
        --LeftHip.C1 = Clerp(LeftHip.C1, CF(-0.5 * Player_Size, 0.875 * Player_Size + 0.125 * SIN(SINE / WALKSPEEDVALUE) * Player_Size, 0.125 * COS(SINE / WALKSPEEDVALUE) * Player_Size) * ANGLES(RAD(0), RAD(-90), RAD(0)) * ANGLES(RAD(0) + LeftLeg.RotVelocity.Y / 75, RAD(0), RAD(60 * COS(SINE / WALKSPEEDVALUE))), 0.2 * (Humanoid.WalkSpeed / 16) / Animation_Speed)
1193
        if ATTACK == false then
1194
            if Speed < 35 then
1195
                RootJoint.C0 = Clerp(RootJoint.C0,ROOTC0 * CF(0, 0, -0.1) * ANGLES(RAD(5), RAD(0), RAD(0)), 0.15 / Animation_Speed)
1196
                Neck.C0 = Clerp(Neck.C0, NECKC0 * CF(0, 0, 0 + ((1) - 1)) * ANGLES(RAD(5 - 8 * SIN(SINE / (WALKSPEEDVALUE / 2))), RAD(0), RAD(0)), 0.15 / Animation_Speed)
1197
                RightShoulder.C0 = Clerp(RightShoulder.C0, CF(1.5, 0.5, 0) * ANGLES(RAD(30 * COS(SINE / WALKSPEEDVALUE)), RAD(0), RAD(5)) * RIGHTSHOULDERC0, 1 / Animation_Speed)
1198
                LeftShoulder.C0 = Clerp(LeftShoulder.C0, CF(-1.5, 0.5, 0) * ANGLES(RAD(-30 * COS(SINE / WALKSPEEDVALUE)), RAD(0), RAD(-5)) * LEFTSHOULDERC0, 1 / Animation_Speed)
1199
                RightHip.C0 = Clerp(RightHip.C0, CF(1 , -1 - 0.15 * COS(SINE / WALKSPEEDVALUE*2), -0.2+ 0.2 * COS(SINE / WALKSPEEDVALUE)) * ANGLES(RAD(0), RAD(90), RAD(0)) * ANGLES(RAD(0), RAD(0), RAD(-15)), 2 / Animation_Speed)
1200
                LeftHip.C0 = Clerp(LeftHip.C0, CF(-1, -1 - 0.15 * COS(SINE / WALKSPEEDVALUE*2), -0.2+ -0.2 * COS(SINE / WALKSPEEDVALUE)) * ANGLES(RAD(0), RAD(-90), RAD(0)) * ANGLES(RAD(0), RAD(0), RAD(15)), 2 / Animation_Speed)
1201
            else
1202
                RootJoint.C0 = Clerp(RootJoint.C0,ROOTC0 * CF(0, 0, -0.1) * ANGLES(RAD(15), RAD(0), RAD(0)), 0.15 / Animation_Speed)
1203
                Neck.C0 = Clerp(Neck.C0, NECKC0 * CF(0, 0, 0 + ((1) - 1)) * ANGLES(RAD(5 - 8 * SIN(SINE / (WALKSPEEDVALUE / 2))), RAD(0), RAD(0)), 0.15 / Animation_Speed)
1204
                RightShoulder.C0 = Clerp(RightShoulder.C0, CF(1.5, 0.5, 0) * ANGLES(RAD(80 * COS(SINE / WALKSPEEDVALUE)), RAD(0), RAD(-30 * COS(SINE / WALKSPEEDVALUE))) * RIGHTSHOULDERC0, 1 / Animation_Speed)
1205
                LeftShoulder.C0 = Clerp(LeftShoulder.C0, CF(-1.5, 0.5, 0) * ANGLES(RAD(-80 * COS(SINE / WALKSPEEDVALUE)), RAD(0), RAD(-30 * COS(SINE / WALKSPEEDVALUE))) * LEFTSHOULDERC0, 1 / Animation_Speed)
1206
                RightHip.C0 = Clerp(RightHip.C0, CF(1 , -1 - 0.15 * COS(SINE / WALKSPEEDVALUE*2), -0.2+ 0.2 * COS(SINE / WALKSPEEDVALUE)) * ANGLES(RAD(0), RAD(90), RAD(0)) * ANGLES(RAD(0), RAD(0), RAD(-15)), 2 / Animation_Speed)
1207
                LeftHip.C0 = Clerp(LeftHip.C0, CF(-1, -1 - 0.15 * COS(SINE / WALKSPEEDVALUE*2), -0.2+ -0.2 * COS(SINE / WALKSPEEDVALUE)) * ANGLES(RAD(0), RAD(-90), RAD(0)) * ANGLES(RAD(0), RAD(0), RAD(15)), 2 / Animation_Speed)
1208
            end
1209
        end
1210
    end
1211
    unanchor()
1212
    Humanoid.MaxHealth = "inf"
1213
    Humanoid.Health = "inf"
1214
    if Rooted == false then
1215
        Disable_Jump = false
1216
        Humanoid.WalkSpeed = Speed
1217
    elseif Rooted == true then
1218
        Disable_Jump = true
1219
        Humanoid.WalkSpeed = 0
1220
    end
1221
    local MATHS = {"0","1"}
1222
    Humanoid.Name = MATHS[MRANDOM(1,#MATHS)]..MATHS[MRANDOM(1,#MATHS)]..MATHS[MRANDOM(1,#MATHS)]..MATHS[MRANDOM(1,#MATHS)]..MATHS[MRANDOM(1,#MATHS)]..MATHS[MRANDOM(1,#MATHS)]..MATHS[MRANDOM(1,#MATHS)]..MATHS[MRANDOM(1,#MATHS)]..MATHS[MRANDOM(1,#MATHS)]..MATHS[MRANDOM(1,#MATHS)]..MATHS[MRANDOM(1,#MATHS)]..MATHS[MRANDOM(1,#MATHS)]..MATHS[MRANDOM(1,#MATHS)]..MATHS[MRANDOM(1,#MATHS)]..MATHS[MRANDOM(1,#MATHS)]..MATHS[MRANDOM(1,#MATHS)]..MATHS[MRANDOM(1,#MATHS)]..MATHS[MRANDOM(1,#MATHS)]
1223
    Humanoid.PlatformStand = false
1224
end
1225
 
1226
--//=================================\\
1227
--\\=================================//
1228
 
1229
 
1230
 
1231
 
1232
 
1233
--//====================================================\\--
1234
--||                     END OF SCRIPT
1235
--\\====================================================//--