View difference between Paste ID: LWQXL4v3 and VFUBpWZf
SHOW: | | - or go back to the newest paste.
1
if game:GetService("RunService"):IsClient() then error("Script must be server-side in order to work; use h/ and not hl/") end
2
local Player,game,owner = owner,game
3
local RealPlayer = Player
4
do
5
    print("FE Compatibility code by Mokiros")
6
    local rp = RealPlayer
7
    script.Parent = rp.Character
8
   
9
    --RemoteEvent for communicating
10
    local Event = Instance.new("RemoteEvent")
11
    Event.Name = "UserInput_Event"
12
 
13
    --Fake event to make stuff like Mouse.KeyDown work
14
    local function fakeEvent()
15
        local t = {_fakeEvent=true,Functions={},Connect=function(self,f)table.insert(self.Functions,f) end}
16
        t.connect = t.Connect
17
        return t
18
    end
19
 
20
    --Creating fake input objects with fake variables
21
    local m = {Target=nil,Hit=CFrame.new(),KeyUp=fakeEvent(),KeyDown=fakeEvent(),Button1Up=fakeEvent(),Button1Down=fakeEvent()}
22
    local UIS = {InputBegan=fakeEvent(),InputEnded=fakeEvent()}
23
    local CAS = {Actions={},BindAction=function(self,name,fun,touch,...)
24
        CAS.Actions[name] = fun and {Name=name,Function=fun,Keys={...}} or nil
25
    end}
26
    --Merged 2 functions into one by checking amount of arguments
27
    CAS.UnbindAction = CAS.BindAction
28
 
29
    --This function will trigger the events that have been :Connect()'ed
30
    local function te(self,ev,...)
31
        local t = m[ev]
32
        if t and t._fakeEvent then
33
            for _,f in pairs(t.Functions) do
34
                f(...)
35
            end
36
        end
37
    end
38
    m.TrigEvent = te
39
    UIS.TrigEvent = te
40
 
41
    Event.OnServerEvent:Connect(function(plr,io)
42
        if plr~=rp then return end
43
        m.Target = io.Target
44
        m.Hit = io.Hit
45
        if not io.isMouse then
46
            local b = io.UserInputState == Enum.UserInputState.Begin
47
            if io.UserInputType == Enum.UserInputType.MouseButton1 then
48
                return m:TrigEvent(b and "Button1Down" or "Button1Up")
49
            end
50
            for _,t in pairs(CAS.Actions) do
51
                for _,k in pairs(t.Keys) do
52
                    if k==io.KeyCode then
53
                        t.Function(t.Name,io.UserInputState,io)
54
                    end
55
                end
56
            end
57
            m:TrigEvent(b and "KeyDown" or "KeyUp",io.KeyCode.Name:lower())
58
            UIS:TrigEvent(b and "InputBegan" or "InputEnded",io,false)
59
        end
60
    end)
61
    Event.Parent = NLS([==[
62
    local Player = game:GetService("Players").LocalPlayer
63
    local Event = script:WaitForChild("UserInput_Event")
64
 
65
    local Mouse = Player:GetMouse()
66
    local UIS = game:GetService("UserInputService")
67
    local input = function(io,a)
68
        if a then return end
69
        --Since InputObject is a client-side instance, we create and pass table instead
70
        Event:FireServer({KeyCode=io.KeyCode,UserInputType=io.UserInputType,UserInputState=io.UserInputState,Hit=Mouse.Hit,Target=Mouse.Target})
71
    end
72
    UIS.InputBegan:Connect(input)
73
    UIS.InputEnded:Connect(input)
74
 
75
    local h,t
76
    --Give the server mouse data 30 times every second, but only if the values changed
77
    --If player is not moving their mouse, client won't fire events
78
    while wait(1/30) do
79
        if h~=Mouse.Hit or t~=Mouse.Target then
80
            h,t=Mouse.Hit,Mouse.Target
81
            Event:FireServer({isMouse=true,Target=t,Hit=h})
82
        end
83
    end]==],Player.Character)
84
 
85
    ----Sandboxed game object that allows the usage of client-side methods and services
86
    --Real game object
87
    local _rg = game
88
 
89
    --Metatable for fake service
90
    local fsmt = {
91
        __index = function(self,k)
92
            local s = rawget(self,"_RealService")
93
            if s then return s[k] end
94
        end,
95
        __newindex = function(self,k,v)
96
            local s = rawget(self,"_RealService")
97
            if s then s[k]=v end
98
        end,
99
        __call = function(self,...)
100
            local s = rawget(self,"_RealService")
101
            if s then return s(...) end
102
        end
103
    }
104
    local function FakeService(t,RealService)
105
        t._RealService = typeof(RealService)=="string" and _rg:GetService(RealService) or RealService
106
        return setmetatable(t,fsmt)
107
    end
108
 
109
    --Fake game object
110
    local g = {
111
        GetService = function(self,s)
112
            return self[s]
113
        end,
114
        Players = FakeService({
115
            LocalPlayer = FakeService({GetMouse=function(self)return m end},Player)
116
        },"Players"),
117
        UserInputService = FakeService(UIS,"UserInputService"),
118
        ContextActionService = FakeService(CAS,"ContextActionService"),
119
    }
120
    rawset(g.Players,"localPlayer",g.Players.LocalPlayer)
121
    g.service = g.GetService
122
   
123
    g.RunService = FakeService({
124
        RenderStepped = _rg:GetService("RunService").Heartbeat,
125
        BindToRenderStep = function(self,name,_,fun)
126
            self._btrs[name] = self.Heartbeat:Connect(fun)
127
        end,
128
        UnbindFromRenderStep = function(self,name)
129
            self._btrs[name]:Disconnect()
130
        end,
131
    },"RunService")
132
 
133
    setmetatable(g,{
134
        __index=function(self,s)
135
            return _rg:GetService(s) or typeof(_rg[s])=="function"
136
            and function(_,...)return _rg[s](_rg,...)end or _rg[s]
137
        end,
138
        __newindex = fsmt.__newindex,
139
        __call = fsmt.__call
140
    })
141
    --Changing owner to fake player object to support owner:GetMouse()
142
    game,owner = g,g.Players.LocalPlayer
143
end
144
--//====================================================\\--
145
--||               CREATED BY SHACKLUSTER
146
--\\====================================================//--
147
 
148
wait(0.2)
149
 
150
Player = game:GetService("Players").LocalPlayer
151
PlayerGui = Player.PlayerGui
152
Cam = workspace.CurrentCamera
153
Backpack = Player.Backpack
154
Character = Player.Character
155
Humanoid = Character.Humanoid
156
Mouse = Player:GetMouse()
157
RootPart = Character["HumanoidRootPart"]
158
Torso = Character["Torso"]
159
Head = Character["Head"]
160
RightArm = Character["Right Arm"]
161
LeftArm = Character["Left Arm"]
162
RightLeg = Character["Right Leg"]
163
LeftLeg = Character["Left Leg"]
164
RootJoint = RootPart["RootJoint"]
165
Neck = Torso["Neck"]
166
RightShoulder = Torso["Right Shoulder"]
167
LeftShoulder = Torso["Left Shoulder"]
168
RightHip = Torso["Right Hip"]
169
LeftHip = Torso["Left Hip"]
170
Humanoid.MaxHealth = "inf"
171
Humanoid.Health = "inf"
172
IT = Instance.new
173
CF = CFrame.new
174
VT = Vector3.new
175
RAD = math.rad
176
C3 = Color3.new
177
UD2 = UDim2.new
178
BRICKC = BrickColor.new
179
ANGLES = CFrame.Angles
180
EULER = CFrame.fromEulerAnglesXYZ
181
COS = math.cos
182
ACOS = math.acos
183
SIN = math.sin
184
ASIN = math.asin
185
ABS = math.abs
186
MRANDOM = math.random
187
FLOOR = math.floor
188
 
189
--//=================================\\
190
--||          USEFUL VALUES
191
--\\=================================//
192
 
193
Animation_Speed = 3
194
Frame_Speed = 1 / 60 -- (1 / 30) OR (1 / 60)
195
local Speed = 16
196
local ROOTC0 = CF(0, 0, 0) * ANGLES(RAD(-90), RAD(0), RAD(180))
197
local NECKC0 = CF(0, 1, 0) * ANGLES(RAD(-90), RAD(0), RAD(180))
198
local RIGHTSHOULDERC0 = CF(-0.5, 0, 0) * ANGLES(RAD(0), RAD(90), RAD(0))
199
local LEFTSHOULDERC0 = CF(0.5, 0, 0) * ANGLES(RAD(0), RAD(-90), RAD(0))
200
local DAMAGEMULTIPLIER = 1
201
local ANIM = "Idle"
202
local ATTACK = false
203
local EQUIPPED = false
204
local HOLD = false
205
local COMBO = 1
206
local Rooted = false
207
local SINE = 0
208
local KEYHOLD = false
209
local CHANGE = 2 / Animation_Speed
210
local WALKINGANIM = false
211
local VALUE1 = false
212
local VALUE2 = false
213
local ROBLOXIDLEANIMATION = IT("Animation")
214
ROBLOXIDLEANIMATION.Name = "Roblox Idle Animation"
215
ROBLOXIDLEANIMATION.AnimationId = "http://www.roblox.com/asset/?id=180435571"
216
--ROBLOXIDLEANIMATION.Parent = Humanoid
217
local WEAPONGUI = IT("ScreenGui", PlayerGui)
218
WEAPONGUI.Name = "Weapon GUI"
219
local Weapon = IT("Model")
220
Weapon.Name = "Adds"
221
local Effects = IT("Folder", Weapon)
222
Effects.Name = "Effects"
223
local ANIMATOR = Humanoid.Animator
224
local ANIMATE = Character.Animate
225
local UNANCHOR = true
226
 
227
--//=================================\\
228
--\\=================================//
229
 
230
 
231
--//=================================\\
232
--|| SAZERENOS' ARTIFICIAL HEARTBEAT
233
--\\=================================//
234
 
235
ArtificialHB = Instance.new("BindableEvent", script)
236
ArtificialHB.Name = "ArtificialHB"
237
 
238
script:WaitForChild("ArtificialHB")
239
 
240
frame = Frame_Speed
241
tf = 0
242
allowframeloss = false
243
tossremainder = false
244
lastframe = tick()
245
script.ArtificialHB:Fire()
246
 
247
game:GetService("RunService").Heartbeat:connect(function(s, p)
248
    tf = tf + s
249
    if tf >= frame then
250
        if allowframeloss then
251
            script.ArtificialHB:Fire()
252
            lastframe = tick()
253
        else
254
            for i = 1, math.floor(tf / frame) do
255
                script.ArtificialHB:Fire()
256
            end
257
        lastframe = tick()
258
        end
259
        if tossremainder then
260
            tf = 0
261
        else
262
            tf = tf - frame * math.floor(tf / frame)
263
        end
264
    end
265
end)
266
 
267
--//=================================\\
268
--\\=================================//
269
 
270
--//=================================\\
271
--||          SOME FUNCTIONS
272
--\\=================================//
273
 
274
function Raycast(POSITION, DIRECTION, RANGE, IGNOREDECENDANTS)
275
    return workspace:FindPartOnRay(Ray.new(POSITION, DIRECTION.unit * RANGE), IGNOREDECENDANTS)
276
end
277
 
278
function PositiveAngle(NUMBER)
279
    if NUMBER >= 0 then
280
        NUMBER = 0
281
    end
282
    return NUMBER
283
end
284
 
285
function NegativeAngle(NUMBER)
286
    if NUMBER <= 0 then
287
        NUMBER = 0
288
    end
289
    return NUMBER
290
end
291
 
292
function Swait(NUMBER)
293
    if NUMBER == 0 or NUMBER == nil then
294
        ArtificialHB.Event:wait()
295
    else
296
        for i = 1, NUMBER do
297
            ArtificialHB.Event:wait()
298
        end
299
    end
300
end
301
 
302
function CreateMesh(MESH, PARENT, MESHTYPE, MESHID, TEXTUREID, SCALE, OFFSET)
303
    local NEWMESH = IT(MESH)
304
    if MESH == "SpecialMesh" then
305
        NEWMESH.MeshType = MESHTYPE
306
        if MESHID ~= "nil" and MESHID ~= "" then
307
            NEWMESH.MeshId = "http://www.roblox.com/asset/?id="..MESHID
308
        end
309
        if TEXTUREID ~= "nil" and TEXTUREID ~= "" then
310
            NEWMESH.TextureId = "http://www.roblox.com/asset/?id="..TEXTUREID
311
        end
312
    end
313
    NEWMESH.Offset = OFFSET or VT(0, 0, 0)
314
    NEWMESH.Scale = SCALE
315
    NEWMESH.Parent = PARENT
316
    return NEWMESH
317
end
318
 
319
function CreatePart(FORMFACTOR, PARENT, MATERIAL, REFLECTANCE, TRANSPARENCY, BRICKCOLOR, NAME, SIZE, ANCHOR)
320
    local NEWPART = IT("Part")
321
    NEWPART.formFactor = FORMFACTOR
322
    NEWPART.Reflectance = REFLECTANCE
323
    NEWPART.Transparency = TRANSPARENCY
324
    NEWPART.CanCollide = false
325
    NEWPART.Locked = true
326
    NEWPART.Anchored = true
327
    if ANCHOR == false then
328
        NEWPART.Anchored = false
329
    end
330
    NEWPART.BrickColor = BRICKC(tostring(BRICKCOLOR))
331
    NEWPART.Name = NAME
332
    NEWPART.Size = SIZE
333
    NEWPART.Position = Torso.Position
334
    NEWPART.Material = MATERIAL
335
    NEWPART:BreakJoints()
336
    NEWPART.Parent = PARENT
337
    return NEWPART
338
end
339
 
340
    local function weldBetween(a, b)
341
        local weldd = Instance.new("ManualWeld")
342
        weldd.Part0 = a
343
        weldd.Part1 = b
344
        weldd.C0 = CFrame.new()
345
        weldd.C1 = b.CFrame:inverse() * a.CFrame
346
        weldd.Parent = a
347
        return weldd
348
    end
349
 
350
 
351
function QuaternionFromCFrame(cf)
352
    local mx, my, mz, m00, m01, m02, m10, m11, m12, m20, m21, m22 = cf:components()
353
    local trace = m00 + m11 + m22
354
    if trace > 0 then
355
        local s = math.sqrt(1 + trace)
356
        local recip = 0.5 / s
357
        return (m21 - m12) * recip, (m02 - m20) * recip, (m10 - m01) * recip, s * 0.5
358
    else
359
        local i = 0
360
        if m11 > m00 then
361
            i = 1
362
        end
363
        if m22 > (i == 0 and m00 or m11) then
364
            i = 2
365
        end
366
        if i == 0 then
367
            local s = math.sqrt(m00 - m11 - m22 + 1)
368
            local recip = 0.5 / s
369
            return 0.5 * s, (m10 + m01) * recip, (m20 + m02) * recip, (m21 - m12) * recip
370
        elseif i == 1 then
371
            local s = math.sqrt(m11 - m22 - m00 + 1)
372
            local recip = 0.5 / s
373
            return (m01 + m10) * recip, 0.5 * s, (m21 + m12) * recip, (m02 - m20) * recip
374
        elseif i == 2 then
375
            local s = math.sqrt(m22 - m00 - m11 + 1)
376
            local recip = 0.5 / s return (m02 + m20) * recip, (m12 + m21) * recip, 0.5 * s, (m10 - m01) * recip
377
        end
378
    end
379
end
380
 
381
function QuaternionToCFrame(px, py, pz, x, y, z, w)
382
    local xs, ys, zs = x + x, y + y, z + z
383
    local wx, wy, wz = w * xs, w * ys, w * zs
384
    local xx = x * xs
385
    local xy = x * ys
386
    local xz = x * zs
387
    local yy = y * ys
388
    local yz = y * zs
389
    local zz = z * zs
390
    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))
391
end
392
 
393
function QuaternionSlerp(a, b, t)
394
    local cosTheta = a[1] * b[1] + a[2] * b[2] + a[3] * b[3] + a[4] * b[4]
395
    local startInterp, finishInterp;
396
    if cosTheta >= 0.0001 then
397
        if (1 - cosTheta) > 0.0001 then
398
            local theta = ACOS(cosTheta)
399
            local invSinTheta = 1 / SIN(theta)
400
            startInterp = SIN((1 - t) * theta) * invSinTheta
401
            finishInterp = SIN(t * theta) * invSinTheta
402
        else
403
            startInterp = 1 - t
404
            finishInterp = t
405
        end
406
    else
407
        if (1 + cosTheta) > 0.0001 then
408
            local theta = ACOS(-cosTheta)
409
            local invSinTheta = 1 / SIN(theta)
410
            startInterp = SIN((t - 1) * theta) * invSinTheta
411
            finishInterp = SIN(t * theta) * invSinTheta
412
        else
413
            startInterp = t - 1
414
            finishInterp = t
415
        end
416
    end
417
    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
418
end
419
 
420
function Clerp(a, b, t)
421
    local qa = {QuaternionFromCFrame(a)}
422
    local qb = {QuaternionFromCFrame(b)}
423
    local ax, ay, az = a.x, a.y, a.z
424
    local bx, by, bz = b.x, b.y, b.z
425
    local _t = 1 - t
426
    return QuaternionToCFrame(_t * ax + t * bx, _t * ay + t * by, _t * az + t * bz, QuaternionSlerp(qa, qb, t))
427
end
428
 
429
function CreateFrame(PARENT, TRANSPARENCY, BORDERSIZEPIXEL, POSITION, SIZE, COLOR, BORDERCOLOR, NAME)
430
    local frame = IT("Frame")
431
    frame.BackgroundTransparency = TRANSPARENCY
432
    frame.BorderSizePixel = BORDERSIZEPIXEL
433
    frame.Position = POSITION
434
    frame.Size = SIZE
435
    frame.BackgroundColor3 = COLOR
436
    frame.BorderColor3 = BORDERCOLOR
437
    frame.Name = NAME
438
    frame.Parent = PARENT
439
    return frame
440
end
441
 
442
function CreateLabel(PARENT, TEXT, TEXTCOLOR, TEXTFONTSIZE, TEXTFONT, TRANSPARENCY, BORDERSIZEPIXEL, STROKETRANSPARENCY, NAME)
443
    local label = IT("TextLabel")
444
    label.BackgroundTransparency = 1
445
    label.Size = UD2(1, 0, 1, 0)
446
    label.Position = UD2(0, 0, 0, 0)
447
    label.TextColor3 = TEXTCOLOR
448
    label.TextStrokeTransparency = STROKETRANSPARENCY
449
    label.TextTransparency = TRANSPARENCY
450
    label.FontSize = TEXTFONTSIZE
451
    label.Font = TEXTFONT
452
    label.BorderSizePixel = BORDERSIZEPIXEL
453
    label.TextScaled = false
454
    label.Text = TEXT
455
    label.Name = NAME
456
    label.Parent = PARENT
457
    return label
458
end
459
 
460
function NoOutlines(PART)
461
    PART.TopSurface, PART.BottomSurface, PART.LeftSurface, PART.RightSurface, PART.FrontSurface, PART.BackSurface = 10, 10, 10, 10, 10, 10
462
end
463
 
464
function CreateWeldOrSnapOrMotor(TYPE, PARENT, PART0, PART1, C0, C1)
465
    local NEWWELD = IT(TYPE)
466
    NEWWELD.Part0 = PART0
467
    NEWWELD.Part1 = PART1
468
    NEWWELD.C0 = C0
469
    NEWWELD.C1 = C1
470
    NEWWELD.Parent = PARENT
471
    return NEWWELD
472
end
473
 
474
local S = IT("Sound")
475
function CreateSound(ID, PARENT, VOLUME, PITCH, DOESLOOP)
476
    local NEWSOUND = nil
477
    coroutine.resume(coroutine.create(function()
478
        NEWSOUND = S:Clone()
479
        NEWSOUND.Parent = PARENT
480
        NEWSOUND.Volume = VOLUME
481
        NEWSOUND.Pitch = PITCH
482-
        NEWSOUND.SoundId = "http://www.roblox.com/asset/?id="..ID
482+
        NEWSOUND.SoundId = "http://www.roblox.com/asset/?id=1066344174"..ID
483
        NEWSOUND:play()
484
        if DOESLOOP == true then
485
            NEWSOUND.Looped = true
486
        else
487
            repeat wait(1) until NEWSOUND.Playing == false
488
            NEWSOUND:remove()
489
        end
490
    end))
491
    return NEWSOUND
492
end
493
 
494
function CFrameFromTopBack(at, top, back)
495
    local right = top:Cross(back)
496
    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)
497
end
498
 
499
--WACKYEFFECT({EffectType = "", Size = VT(1,1,1), Size2 = VT(0,0,0), Transparency = 0, Transparency2 = 1, CFrame = CF(), MoveToPos = nil, RotationX = 0, RotationY = 0, RotationZ = 0, Material = "Neon", Color = C3(1,1,1), SoundID = nil, SoundPitch = nil, SoundVolume = nil})
500
function WACKYEFFECT(Table)
501
    local TYPE = (Table.EffectType or "Sphere")
502
    local SIZE = (Table.Size or VT(1,1,1))
503
    local ENDSIZE = (Table.Size2 or VT(0,0,0))
504
    local TRANSPARENCY = (Table.Transparency or 0)
505
    local ENDTRANSPARENCY = (Table.Transparency2 or 1)
506
    local CFRAME = (Table.CFrame or Torso.CFrame)
507
    local MOVEDIRECTION = (Table.MoveToPos or nil)
508
    local ROTATION1 = (Table.RotationX or 0)
509
    local ROTATION2 = (Table.RotationY or 0)
510
    local ROTATION3 = (Table.RotationZ or 0)
511
    local MATERIAL = (Table.Material or "Neon")
512
    local COLOR = (Table.Color or C3(1,1,1))
513
    local TIME = (Table.Time or 45)
514
    local SOUNDID = (Table.SoundID or nil)
515
    local SOUNDPITCH = (Table.SoundPitch or nil)
516
    local SOUNDVOLUME = (Table.SoundVolume or nil)
517
    coroutine.resume(coroutine.create(function()
518
        local PLAYSSOUND = false
519
        local SOUND = nil
520
        local EFFECT = CreatePart(3, Effects, MATERIAL, 0, TRANSPARENCY, BRICKC("Pearl"), "Effect", VT(1,1,1), true)
521
        if SOUNDID ~= nil and SOUNDPITCH ~= nil and SOUNDVOLUME ~= nil then
522
            PLAYSSOUND = true
523
            SOUND = CreateSound(SOUNDID, EFFECT, SOUNDVOLUME, SOUNDPITCH, false)
524
        end
525
        EFFECT.Color = COLOR
526
        local MSH = nil
527
        if TYPE == "Sphere" then
528
            MSH = CreateMesh("SpecialMesh", EFFECT, "Sphere", "", "", SIZE, VT(0,0,0))
529
        elseif TYPE == "Block" then
530
            MSH = IT("BlockMesh",EFFECT)
531
            MSH.Scale = VT(SIZE.X,SIZE.X,SIZE.X)
532
        elseif TYPE == "Wave" then
533
            MSH = CreateMesh("SpecialMesh", EFFECT, "FileMesh", "20329976", "", SIZE, VT(0,0,-SIZE.X/8))
534
        elseif TYPE == "Ring" then
535
            MSH = CreateMesh("SpecialMesh", EFFECT, "FileMesh", "559831844", "", VT(SIZE.X,SIZE.X,0.1), VT(0,0,0))
536
        elseif TYPE == "Slash" then
537
            MSH = CreateMesh("SpecialMesh", EFFECT, "FileMesh", "662586858", "", VT(SIZE.X/10,0,SIZE.X/10), VT(0,0,0))
538
        elseif TYPE == "Round Slash" then
539
            MSH = CreateMesh("SpecialMesh", EFFECT, "FileMesh", "662585058", "", VT(SIZE.X/10,0,SIZE.X/10), VT(0,0,0))
540
        elseif TYPE == "Swirl" then
541
            MSH = CreateMesh("SpecialMesh", EFFECT, "FileMesh", "1051557", "", SIZE, VT(0,0,0))
542
        elseif TYPE == "Skull" then
543
            MSH = CreateMesh("SpecialMesh", EFFECT, "FileMesh", "4770583", "", SIZE, VT(0,0,0))
544
        elseif TYPE == "Crystal" then
545
            MSH = CreateMesh("SpecialMesh", EFFECT, "FileMesh", "9756362", "", SIZE, VT(0,0,0))
546
        end
547
        if MSH ~= nil then
548
            local MOVESPEED = nil
549
            if MOVEDIRECTION ~= nil then
550
                MOVESPEED = (CFRAME.p - MOVEDIRECTION).Magnitude/TIME
551
            end
552
            local GROWTH = SIZE - ENDSIZE
553
            local TRANS = TRANSPARENCY - ENDTRANSPARENCY
554
            if TYPE == "Block" then
555
                EFFECT.CFrame = CFRAME*ANGLES(RAD(MRANDOM(0,360)),RAD(MRANDOM(0,360)),RAD(MRANDOM(0,360)))
556
            else
557
                EFFECT.CFrame = CFRAME
558
            end
559
            for LOOP = 1, TIME+1 do
560
                Swait()
561
                MSH.Scale = MSH.Scale - GROWTH/TIME
562
                if TYPE == "Wave" then
563
                    MSH.Offset = VT(0,0,-MSH.Scale.X/8)
564
                end
565
                EFFECT.Transparency = EFFECT.Transparency - TRANS/TIME
566
                if TYPE == "Block" then
567
                    EFFECT.CFrame = CFRAME*ANGLES(RAD(MRANDOM(0,360)),RAD(MRANDOM(0,360)),RAD(MRANDOM(0,360)))
568
                else
569
                    EFFECT.CFrame = EFFECT.CFrame*ANGLES(RAD(ROTATION1),RAD(ROTATION2),RAD(ROTATION3))
570
                end
571
                if MOVEDIRECTION ~= nil then
572
                    local ORI = EFFECT.Orientation
573
                    EFFECT.CFrame = CF(EFFECT.Position,MOVEDIRECTION)*CF(0,0,-MOVESPEED)
574
                    EFFECT.Orientation = ORI
575
                end
576
            end
577
            if PLAYSSOUND == false then
578
                EFFECT:remove()
579
            else
580
                repeat Swait() until SOUND.Playing == false
581
                EFFECT:remove()
582
            end
583
        else
584
            if PLAYSSOUND == false then
585
                EFFECT:remove()
586
            else
587
                repeat Swait() until SOUND.Playing == false
588
                EFFECT:remove()
589
            end
590
        end
591
    end))
592
end
593
 
594
function MakeForm(PART,TYPE)
595
    if TYPE == "Cyl" then
596
        local MSH = IT("CylinderMesh",PART)
597
    elseif TYPE == "Ball" then
598
        local MSH = IT("SpecialMesh",PART)
599
        MSH.MeshType = "Sphere"
600
    elseif TYPE == "Wedge" then
601
        local MSH = IT("SpecialMesh",PART)
602
        MSH.MeshType = "Wedge"
603
    end
604
end
605
 
606
Debris = game:GetService("Debris")
607
 
608
function CastProperRay(StartPos, EndPos, Distance, Ignore)
609
    local DIRECTION = CF(StartPos,EndPos).lookVector
610
    return Raycast(StartPos, DIRECTION, Distance, Ignore)
611
end
612
 
613
function CharacterFade(COLOR,TIMER)
614
    coroutine.resume(coroutine.create(function()
615
        local FADE = IT("Model",Effects)
616
        for _, c in pairs(Character:GetChildren()) do
617
            if c.ClassName == "Part" and c ~= RootPart then
618
                local FADER = c:Clone()
619
                FADER.Color = COLOR
620
                FADER.CFrame = c.CFrame
621
                FADER.Parent = FADE
622
                FADER.Anchored = true
623
                FADER.Transparency = 0.25
624
                FADER:BreakJoints()
625
                FADER.Material = "Glass"
626
                FADER:ClearAllChildren()
627
                if FADER.Name == "Head" then
628
                    FADER.Size = VT(1,1,1)
629
                end
630
            end
631
        end
632
        local TRANS = 0.75/TIMER
633
        for i = 1, TIMER do
634
            Swait()
635
            for _, c in pairs(FADE:GetChildren()) do
636
                if c.ClassName == "Part" then
637
                    c.Transparency = c.Transparency + TRANS
638
                end
639
            end
640
        end
641
        FADE:remove()
642
    end))
643
end
644
 
645
local PE=Instance.new("ParticleEmitter")
646
PE.LightEmission=0.3
647
PE.Size=NumberSequence.new(0)
648
PE.Transparency=NumberSequence.new(0,1)
649
PE.Rotation=NumberRange.new(0,360)
650
PE.LockedToPart = false
651
PE.Speed = NumberRange.new(0,0,0)
652
PE.ZOffset = 0.3
653
PE.Rate = 999
654
PE.VelocitySpread = 25
655
PE.Name = "Particles"
656
 
657
function CreateParticles(art,accel,drag,lifetime,type,isenabledbydefault,locked,size,speed)
658
    local particle = nil
659
    coroutine.resume(coroutine.create(function(PART)
660
        particle = PE:Clone()
661
        Swait()
662
        particle.Rate = 999
663
        particle.Parent = art
664
        particle.Acceleration = accel
665
        if type == "Fire" then
666
            local EyeSizes={
667
                NumberSequenceKeypoint.new(0,size,size/2),
668
                NumberSequenceKeypoint.new(1,size/4,size/8)
669
            }
670
            particle.Size = NumberSequence.new(EyeSizes)
671
        elseif type == "Smoke" then
672
            local EyeSizes={
673
                NumberSequenceKeypoint.new(0,size/5,0),
674
                NumberSequenceKeypoint.new(1,size*2,0.5)
675
            }
676
            particle.Size = NumberSequence.new(EyeSizes)
677
        elseif type == "Solid" then
678
            local EyeSizes={
679
                NumberSequenceKeypoint.new(0,size,0),
680
                NumberSequenceKeypoint.new(1,size,0)
681
            }
682
            particle.Size = NumberSequence.new(EyeSizes)
683
        end
684
        particle.Lifetime=NumberRange.new(lifetime)
685
        particle.Drag = drag
686
        if locked == true then
687
            particle.LockedToPart = true
688
        end
689
        particle.Speed = NumberRange.new(speed*0.8,speed)
690
        particle.Texture = "http://www.roblox.com/asset/?id=1179557490"
691
        particle.Enabled = isenabledbydefault
692
        particle.Color = ColorSequence.new(Color3.new(255/255, 176/255, 0))
693
    end))
694
return particle
695
end
696
 
697
--//=================================\\
698
--||         RAGDOLL STUFF
699
--\\=================================//
700
 
701
function recurse(root,callback,i)
702
    i= i or 0
703
    for _,v in pairs(root:GetChildren()) do
704
        i = i + 1
705
        callback(i,v)
706
       
707
        if #v:GetChildren() > 0 then
708
            i = recurse(v,callback,i)
709
        end
710
    end
711
   
712
    return i
713
end
714
 
715
function ragdollJoint(character, part0, part1, attachmentName, className, properties)
716
    attachmentName = attachmentName.."RigAttachment"
717
    local constraint = Instance.new(className.."Constraint")
718
    constraint.Attachment0 = part0:FindFirstChild(attachmentName)
719
    constraint.Attachment1 = part1:FindFirstChild(attachmentName)
720
    constraint.Name = "RagdollConstraint"..part1.Name
721
   
722
    for _,propertyData in next,properties or {} do
723
        constraint[propertyData[1]] = propertyData[2]
724
    end
725
   
726
    constraint.Parent = character
727
end
728
 
729
function getAttachment0(character, attachmentName)
730
    for _,child in next,character:GetChildren() do
731
        local attachment = child:FindFirstChild(attachmentName)
732
        if attachment then
733
            return attachment
734
        end
735
    end
736
end
737
 
738
function ArtificialHitbox(Part)
739
    local HITBOX = CreatePart(3, Part, "Metal", 0, 1, "Really black", "Hitbox", Part.Size/2, false)
740
    HITBOX.CanCollide = true
741
    HITBOX.CFrame = Part.CFrame
742
    weldBetween(Part,HITBOX)
743
end
744
 
745
function R15Ragdoll(character,KeepArms)
746
    character:BreakJoints()
747
    coroutine.resume(coroutine.create(function()
748
        recurse(character, function(_,v)
749
            if v:IsA("Attachment") then
750
                v.Axis = Vector3.new(0, 1, 0)
751
                v.SecondaryAxis = Vector3.new(0, 0, 1)
752
                v.Rotation = Vector3.new(0, 0, 0)
753
            end
754
        end)
755
        for _,child in next,character:GetChildren() do
756
            if child:IsA("Accoutrement") then
757
                for _,part in next,child:GetChildren() do
758
                    if part:IsA("BasePart") and part.Name ~= "HumanoidRootPart" then
759
                        local attachment1 = part:FindFirstChildOfClass("Attachment")
760
                        local attachment0 = getAttachment0(character,attachment1.Name)
761
                        if attachment0 and attachment1 then
762
                            local constraint = Instance.new("HingeConstraint")
763
                            constraint.Attachment0 = attachment0
764
                            constraint.Attachment1 = attachment1
765
                            constraint.LimitsEnabled = true
766
                            constraint.UpperAngle = 0
767
                            constraint.LowerAngle = 0
768
                            constraint.Parent = character
769
                        end
770
                        ArtificialHitbox(part)
771
                    elseif part.Name == "HumanoidRootPart" then
772
                        part:remove()
773
                    end
774
                end
775
            end
776
        end
777
       
778
        ragdollJoint(character,character.LowerTorso, character.UpperTorso, "Waist", "BallSocket", {
779
            {"LimitsEnabled",true};
780
            {"UpperAngle",5};
781
        })
782
        if character:FindFirstChild("Head") then
783
            ragdollJoint(character,character.UpperTorso, character.Head, "Neck", "BallSocket", {
784
                {"LimitsEnabled",true};
785
                {"UpperAngle",15};
786
            })
787
        end
788
       
789
        local handProperties = {
790
            {"LimitsEnabled", true};
791
            {"UpperAngle",0};
792
            {"LowerAngle",0};
793
        }
794
        ragdollJoint(character,character.LeftLowerArm, character.LeftHand, "LeftWrist", "Hinge", handProperties)
795
        ragdollJoint(character,character.RightLowerArm, character.RightHand, "RightWrist", "Hinge", handProperties)
796
       
797
        local shinProperties = {
798
            {"LimitsEnabled", true};
799
            {"UpperAngle", 0};
800
            {"LowerAngle", -75};
801
        }
802
        ragdollJoint(character,character.LeftUpperLeg, character.LeftLowerLeg, "LeftKnee", "Hinge", shinProperties)
803
        ragdollJoint(character,character.RightUpperLeg, character.RightLowerLeg, "RightKnee", "Hinge", shinProperties)
804
       
805
        local footProperties = {
806
            {"LimitsEnabled", true};
807
            {"UpperAngle", 15};
808
            {"LowerAngle", -45};
809
        }
810
        ragdollJoint(character,character.LeftLowerLeg, character.LeftFoot, "LeftAnkle", "Hinge", footProperties)
811
        ragdollJoint(character,character.RightLowerLeg, character.RightFoot, "RightAnkle", "Hinge", footProperties)
812
        if KeepArms == true then
813
            ragdollJoint(character,character.UpperTorso, character.RightUpperArm, "RightShoulder", "BallSocket")
814
            ragdollJoint(character,character.RightUpperArm, character.RightLowerArm, "RightElbow", "BallSocket")
815
            ragdollJoint(character,character.UpperTorso, character.LeftUpperArm, "LeftShoulder", "BallSocket")
816
            ragdollJoint(character,character.LeftUpperArm, character.LeftLowerArm, "LeftElbow", "BallSocket")
817
        end
818
        ragdollJoint(character,character.LowerTorso, character.LeftUpperLeg, "LeftHip", "BallSocket")
819
        ragdollJoint(character,character.LowerTorso, character.RightUpperLeg, "RightHip", "BallSocket")
820
        Debris:AddItem(character,5)
821
    end))
822
end
823
 
824
function Ragdoll(Character2,CharTorso,KeepArms)
825
    coroutine.resume(coroutine.create(function()
826
        Character2:BreakJoints()
827
        local hum = Character2:findFirstChild("Humanoid")
828
        hum:remove()
829
        local function Scan(ch)
830
            local e
831
            for e = 1,#ch do
832
                Scan(ch[e]:GetChildren())
833
                if ch[e].ClassName == "Weld" or ch[e].ClassName == "Motor6D" then
834
                    ch[e]:remove()
835
                end
836
            end
837
        end
838
        local NEWHUM = IT("Humanoid")
839
        NEWHUM.Name = "Corpse"
840
        NEWHUM.Health = 0
841
        NEWHUM.MaxHealth = 0
842
        NEWHUM.PlatformStand = true
843
        NEWHUM.Parent = Character2
844
        NEWHUM.DisplayDistanceType = "None"
845
   
846
        local ch = Character2:GetChildren()
847
        local i
848
        for i = 1,#ch do
849
            if ch[i].Name == "THandle1" or ch[i].Name == "THandle2" then
850
                ch[i]:remove()
851
            end
852
        end
853
   
854
        local Torso2 = Character2.Torso
855
        local movevector = Vector3.new()
856
   
857
        if Torso2 then
858
            movevector = CFrame.new(CharTorso.Position,Torso2.Position).lookVector
859
            local Head = Character2:FindFirstChild("Head")
860
            if Head then
861
                local Neck = Instance.new("Weld")
862
                Neck.Name = "Neck"
863
                Neck.Part0 = Torso2
864
                Neck.Part1 = Head
865
                Neck.C0 = CFrame.new(0, 1.5, 0)
866
                Neck.C1 = CFrame.new()
867
                Neck.Parent = Torso2
868
   
869
            end
870
            local Limb = Character2:FindFirstChild("Right Arm")
871
            if Limb and KeepArms == true then
872
   
873
                Limb.CFrame = Torso2.CFrame * CFrame.new(1.5, 0, 0)
874
                local Joint = Instance.new("Glue")
875
                Joint.Name = "RightShoulder"
876
                Joint.Part0 = Torso2
877
                Joint.Part1 = Limb
878
                Joint.C0 = CFrame.new(1.5, 0.5, 0, 0, 0, 1, 0, 1, 0, -1, -0, -0)
879
                Joint.C1 = CFrame.new(-0, 0.5, 0, 0, 0, 1, 0, 1, 0, -1, -0, -0)
880
                Joint.Parent = Torso2
881
   
882
                local B = Instance.new("Part")
883
                B.TopSurface = 0
884
                B.BottomSurface = 0
885
                B.formFactor = "Symmetric"
886
                B.Size = Vector3.new(1, 1, 1)
887
                B.Transparency = 1
888
                B.CFrame = Limb.CFrame * CFrame.new(0, -0.5, 0)
889
                B.Parent = Character2
890
                local W = Instance.new("Weld")
891
                W.Part0 = Limb
892
                W.Part1 = B
893
                W.C0 = CFrame.new(0, -0.5, 0)
894
                W.Parent = Limb
895
   
896
            end
897
            local Limb = Character2:FindFirstChild("Left Arm")
898
            if Limb and KeepArms == true then
899
   
900
                Limb.CFrame = Torso2.CFrame * CFrame.new(-1.5, 0, 0)
901
                local Joint = Instance.new("Glue")
902
                Joint.Name = "LeftShoulder"
903
                Joint.Part0 = Torso2
904
                Joint.Part1 = Limb
905
                Joint.C0 = CFrame.new(-1.5, 0.5, 0, -0, -0, -1, 0, 1, 0, 1, 0, 0)
906
                Joint.C1 = CFrame.new(0, 0.5, 0, -0, -0, -1, 0, 1, 0, 1, 0, 0)
907
                Joint.Parent = Torso2
908
   
909
                local B = Instance.new("Part")
910
                B.TopSurface = 0
911
                B.BottomSurface = 0
912
                B.formFactor = "Symmetric"
913
                B.Size = Vector3.new(1, 1, 1)
914
                B.Transparency = 1
915
                B.CFrame = Limb.CFrame * CFrame.new(0, -0.5, 0)
916
                B.Parent = Character2
917
                local W = Instance.new("Weld")
918
                W.Part0 = Limb
919
                W.Part1 = B
920
                W.C0 = CFrame.new(0, -0.5, 0)
921
                W.Parent = Limb
922
   
923
            end
924
            local Limb = Character2:FindFirstChild("Right Leg")
925
            if Limb then
926
   
927
                Limb.CFrame = Torso2.CFrame * CFrame.new(0.5, -2, 0)
928
                local Joint = Instance.new("Glue")
929
                Joint.Name = "RightHip"
930
                Joint.Part0 = Torso2
931
                Joint.Part1 = Limb
932
                Joint.C0 = CFrame.new(0.5, -1, 0, 0, 0, 1, 0, 1, 0, -1, -0, -0)
933
                Joint.C1 = CFrame.new(0, 1, 0, 0, 0, 1, 0, 1, 0, -1, -0, -0)
934
                Joint.Parent = Torso2
935
   
936
                local B = Instance.new("Part")
937
                B.TopSurface = 0
938
                B.BottomSurface = 0
939
                B.formFactor = "Symmetric"
940
                B.Size = Vector3.new(1, 1, 1)
941
                B.Transparency = 1
942
                B.CFrame = Limb.CFrame * CFrame.new(0, -0.5, 0)
943
                B.Parent = Character2
944
                local W = Instance.new("Weld")
945
                W.Part0 = Limb
946
                W.Part1 = B
947
                W.C0 = CFrame.new(0, -0.5, 0)
948
                W.Parent = Limb
949
   
950
            end
951
            local Limb = Character2:FindFirstChild("Left Leg")
952
            if Limb then
953
   
954
                Limb.CFrame = Torso2.CFrame * CFrame.new(-0.5, -2, 0)
955
                local Joint = Instance.new("Glue")
956
                Joint.Name = "LeftHip"
957
                Joint.Part0 = Torso2
958
                Joint.Part1 = Limb
959
                Joint.C0 = CFrame.new(-0.5, -1, 0, -0, -0, -1, 0, 1, 0, 1, 0, 0)
960
                Joint.C1 = CFrame.new(-0, 1, 0, -0, -0, -1, 0, 1, 0, 1, 0, 0)
961
                Joint.Parent = Torso2
962
   
963
                local B = Instance.new("Part")
964
                B.TopSurface = 0
965
                B.BottomSurface = 0
966
                B.formFactor = "Symmetric"
967
                B.Size = Vector3.new(1, 1, 1)
968
                B.Transparency = 1
969
                B.CFrame = Limb.CFrame * CFrame.new(0, -0.5, 0)
970
                B.Parent = Character2
971
                local W = Instance.new("Weld")
972
                W.Part0 = Limb
973
                W.Part1 = B
974
                W.C0 = CFrame.new(0, -0.5, 0)
975
                W.Parent = Limb
976
   
977
            end
978
            --[
979
            local Bar = Instance.new("Part")
980
            Bar.TopSurface = 0
981
            Bar.BottomSurface = 0
982
            Bar.formFactor = "Symmetric"
983
            Bar.Size = Vector3.new(1, 1, 1)
984
            Bar.Transparency = 1
985
            Bar.CFrame = Torso2.CFrame * CFrame.new(0, 0.5, 0)
986
            Bar.Parent = Character2
987
            local Weld = Instance.new("Weld")
988
            Weld.Part0 = Torso2
989
            Weld.Part1 = Bar
990
            Weld.C0 = CFrame.new(0, 0.5, 0)
991
            Weld.Parent = Torso2
992
            --]]
993
        end
994
        Character2.Parent = workspace
995
        Debris:AddItem(Character2,5)
996
   
997
        return Character2,Torso2
998
    end))
999
end
1000
 
1001
--//=================================\\
1002
--||         WEAPON CREATION
1003
--\\=================================//
1004
 
1005
local DUST = CreateParticles(RightArm,VT(0,0,0),5,2,"Smoke",false,false,5,0)
1006
DUST.ZOffset = 1
1007
RightArm.Transparency = 1
1008-
local BasePart = CreatePart(3, Weapon, "Metal", 0, 0, "Really black", "Part", VT(1,2,1),false)
1008+
local BasePart = CreatePart(3, Weapon, "Metal", 0, 0, "Navy blue", "Part", VT(1,2,1),false)
1009
CreateWeldOrSnapOrMotor("Weld", RightArm, RightArm, BasePart, CF(0,0,0) * ANGLES(RAD(0), RAD(0), RAD(0)), CF(0, 0, 0))
1010-
local Sphere = CreatePart(3, Weapon, "Metal", 0, 0, "Really black", "Part", VT(1.4,1.4,1.4),false)
1010+
local Sphere = CreatePart(3, Weapon, "Metal", 0, 0, "Navy blue", "Part", VT(1.4,1.4,1.4),false)
1011
MakeForm(Sphere,"Ball")
1012
CreateWeldOrSnapOrMotor("Weld", BasePart, BasePart, Sphere, CF(0.2,0.8,0.1) * ANGLES(RAD(0), RAD(0), RAD(0)), CF(0, 0, 0))
1013-
local LaserPart = CreatePart(3, Weapon, "Neon", 0, 0, "Really red", "Part", VT(0.3,0.3,0.1),false)
1013+
local LaserPart = CreatePart(3, Weapon, "Neon", 0, 0, "Navy blue", "Part", VT(0.3,0.3,0.1),false)
1014
MakeForm(LaserPart,"Ball")
1015
CreateWeldOrSnapOrMotor("Weld", Sphere, Sphere, LaserPart, CF(0,0,-0.65) * ANGLES(RAD(0), RAD(0), RAD(0)), CF(0, 0, 0))
1016-
local Bump = CreatePart(3, Weapon, "Metal", 0, 0, "Really black", "Part", VT(0.3,0.3,0.2),false)
1016+
local Bump = CreatePart(3, Weapon, "Metal", 0, 0, "navy blue", "Part", VT(0.3,0.3,0.2),false)
1017
MakeForm(Bump,"Ball")
1018
CreateWeldOrSnapOrMotor("Weld", Sphere, Sphere, Bump, CF(0,0,0.65) * ANGLES(RAD(0), RAD(0), RAD(0)), CF(0, 0, 0))
1019-
local BottomLaser = CreatePart(3, Weapon, "Neon", 0, 0, "Really red", "Part", VT(0.4,0,0.4),false)
1019+
local BottomLaser = CreatePart(3, Weapon, "Neon", 0, 0, "Deep orange", "Part", VT(0.4,0,0.4),false)
1020
MakeForm(BottomLaser,"Cyl")
1021
CreateWeldOrSnapOrMotor("Weld", BasePart, BasePart, BottomLaser, CF(0,-1,0) * ANGLES(RAD(0), RAD(0), RAD(0)), CF(0, 0, 0))
1022-
local Part1 = CreatePart(3, Weapon, "Neon", 0, 0, "Really red", "Part", VT(0,0.5,0.5),false)
1022+
local Part1 = CreatePart(3, Weapon, "Neon", 0, 0, "Deep orange", "Part", VT(0,0.5,0.5),false)
1023
CreateWeldOrSnapOrMotor("Weld", BasePart, BasePart, Part1, CF(0,-0.76,-0.26) * ANGLES(RAD(0), RAD(0), RAD(0)), CF(0, 0, 0))
1024-
local Part2 = CreatePart(3, Weapon, "Neon", 0, 0, "Really red", "Part", VT(0,0.5,0.5),false)
1024+
local Part2 = CreatePart(3, Weapon, "Neon", 0, 0, "Deep orange", "Part", VT(0,0.5,0.5),false)
1025
CreateWeldOrSnapOrMotor("Weld", BasePart, Part1, Part2, CF(0,0.25,0) * ANGLES(RAD(0), RAD(0), RAD(-25)), CF(0, -0.25, 0))
1026-
local Part3 = CreatePart(3, Weapon, "Neon", 0, 0, "Really red", "Part", VT(0,0.5,0.5),false)
1026+
local Part3 = CreatePart(3, Weapon, "Neon", 0, 0, "Lime green", "Part", VT(0,0.5,0.5),false)
1027
CreateWeldOrSnapOrMotor("Weld", BasePart, Part1, Part3, CF(0,0.25,0) * ANGLES(RAD(0), RAD(0), RAD(-90)), CF(0, -0.26, 0))
1028-
local Part4 = CreatePart(3, Weapon, "Neon", 0, 0, "Really red", "Part", VT(0,0.56,0.5),false)
1028+
local Part4 = CreatePart(3, Weapon, "Neon", 0, 0, "Lime green", "Part", VT(0,0.56,0.5),false)
1029
CreateWeldOrSnapOrMotor("Weld", BasePart, Part2, Part4, CF(0,0.25,0) * ANGLES(RAD(0), RAD(0), RAD(90)), CF(0, -0.26, 0))
1030-
local Part5 = CreatePart(3, Weapon, "Neon", 0, 0, "Really red", "Part", VT(0,0.56,0.5),false)
1030+
local Part5 = CreatePart(3, Weapon, "Neon", 0, 0, "New yeller", "Part", VT(0,0.56,0.5),false)
1031
CreateWeldOrSnapOrMotor("Weld", BasePart, Part4, Part5, CF(0,0.25,0) * ANGLES(RAD(0), RAD(0), RAD(-125)), CF(0, -0.26, 0))
1032-
local Part = CreatePart(3, Weapon, "Neon", 0, 0, "Really red", "Part", VT(0,0.25,0.5),false)
1032+
local Part = CreatePart(3, Weapon, "Neon", 0, 0, "New yeller", "Part", VT(0,0.25,0.5),false)
1033
CreateWeldOrSnapOrMotor("Weld", BasePart, Part4, Part, CF(0,0.25,0) * ANGLES(RAD(0), RAD(0), RAD(25)), CF(0, -0.26/2, 0))
1034-
local Part = CreatePart(3, Weapon, "Neon", 0, 0, "Really red", "Part", VT(0,0.3,0.5),false)
1034+
local Part = CreatePart(3, Weapon, "Neon", 0, 0, "White", "Part", VT(0,0.3,0.5),false)
1035
CreateWeldOrSnapOrMotor("Weld", BasePart, Part2, Part, CF(0,0.25,0) * ANGLES(RAD(0), RAD(0), RAD(-65)), CF(0, -0.31/2, 0))
1036-
local Part = CreatePart(3, Weapon, "Neon", 0, 0, "Really red", "Part", VT(1.4,0,1.4),false)
1036+
local Part = CreatePart(3, Weapon, "Neon", 0, 0, "White", "Part", VT(1.4,0,1.4),false)
1037
MakeForm(Part,"Cyl")
1038
CreateWeldOrSnapOrMotor("Weld", Sphere, Sphere, Part, CF(0.035,0,0) * ANGLES(RAD(0), RAD(0), RAD(0)), CF(0, 0, 0))
1039-
local Part = CreatePart(3, Weapon, "Neon", 0, 0, "Really red", "Part", VT(1.4,0,1.4),false)
1039+
local Part = CreatePart(3, Weapon, "Neon", 0, 0, "Deep orange", "Part", VT(1.4,0,1.4),false)
1040
MakeForm(Part,"Cyl")
1041
CreateWeldOrSnapOrMotor("Weld", Sphere, Sphere, Part, CF(0,-0.035,0) * ANGLES(RAD(0), RAD(0), RAD(90)), CF(0, 0, 0))
1042-
local Sphere = CreatePart(3, Weapon, "Metal", 0, 0, "Really black", "Part", VT(0.3,1.6,0.7),false)
1042+
local Sphere = CreatePart(3, Weapon, "Metal", 0, 0, "Navy blue", "Part", VT(0.3,1.6,0.7),false)
1043
MakeForm(Sphere,"Ball")
1044
CreateWeldOrSnapOrMotor("Weld", BasePart, BasePart, Sphere, CF(0.45,0.5,0) * ANGLES(RAD(0), RAD(0), RAD(0)), CF(0, 0, 0))
1045
local BODY = {}
1046
for _, c in pairs(Character:GetDescendants()) do
1047
        if c:IsA("BasePart") then
1048
            table.insert(BODY, {
1049
                c,
1050
                c.Parent,
1051
                c.Material,
1052
                c.Color
1053
            })
1054
        elseif c:IsA("JointInstance") then
1055
            table.insert(BODY, {
1056
                c,
1057
                c.Parent,
1058
                nil,
1059
                nil
1060
            })
1061
        end
1062
    end
1063
for _, c in pairs(Weapon:GetChildren()) do
1064
    if c.ClassName == "Part" then
1065
        c.CustomPhysicalProperties = PhysicalProperties.new(0, 0, 0, 0, 0)
1066
    end
1067
end
1068
 
1069
 
1070
for _, c in pairs(Character:GetDescendants()) do
1071
    if c:IsA("BasePart") then
1072
        table.insert(BODY, {
1073
            c,
1074
            c.Parent,
1075
            c.Material,
1076
            c.Color
1077
        })
1078
    elseif c:IsA("JointInstance") then
1079
        table.insert(BODY, {
1080
            c,
1081
            c.Parent,
1082
            nil,
1083
            nil
1084
        })
1085
    end
1086
end
1087
 
1088
for e = 1, #BODY do
1089
    if BODY[e] ~= nil then
1090
        do
1091
            local STUFF = BODY[e]
1092
            local PART = STUFF[1]
1093
            local PARENT = STUFF[2]
1094
            local MATERIAL = STUFF[3]
1095
            local COLOR = STUFF[4]
1096
            PART.AncestryChanged:Connect(function()
1097
                if PART.ClassName == "Part" then
1098
                    PART.Material = MATERIAL
1099
                    PART.Color = COLOR
1100
                end
1101
                PART.Parent = PARENT
1102
            end)
1103
        end
1104
    end
1105
end
1106
function refit()
1107
    Weapon.Parent = Character
1108
    Character.Parent = workspace
1109
    for e = 1, #BODY do
1110
        if BODY[e] ~= nil then
1111
            local STUFF = BODY[e]
1112
            local PART = STUFF[1]
1113
            local PARENT = STUFF[2]
1114
            local MATERIAL = STUFF[3]
1115
            local COLOR = STUFF[4]
1116
            if PART.Parent ~= PARENT then
1117
                Humanoid:remove()
1118
                if PART.ClassName == "Part" then
1119
                    PART.Material = MATERIAL
1120
                    PART.Color = COLOR
1121
                end
1122
                PART.Parent = PARENT
1123
                Humanoid = IT("Humanoid", Character)
1124
            end
1125
        end
1126
    end
1127
end
1128
 
1129
 
1130
 
1131
local SKILLTEXTCOLOR = C3(1,0,0)
1132
local SKILLFONT = "SciFi"
1133
local SKILLTEXTSIZE = 5
1134
 
1135
Weapon.Parent = Character
1136
Humanoid.Died:connect(function()
1137
    refit()
1138
end)
1139
 
1140
 
1141
local SKILL1FRAME = CreateFrame(WEAPONGUI, 1, 2, UD2(0.8, 0, 0.90, 0), UD2(0.26, 0, 0.07, 0), C3(0,0,0), C3(0, 0, 0), "Skill 1 Frame")
1142
local SKILL2FRAME = CreateFrame(WEAPONGUI, 1, 2, UD2(0.8, 0, 0.86, 0), UD2(0.26, 0, 0.07, 0), C3(0,0,0), C3(0, 0, 0), "Skill 2 Frame")
1143
local SKILL3FRAME = CreateFrame(WEAPONGUI, 1, 2, UD2(0.8, 0, 0.82, 0), UD2(0.26, 0, 0.07, 0), C3(0,0,0), C3(0, 0, 0), "Skill 3 Frame")
1144
local SKILL4FRAME = CreateFrame(WEAPONGUI, 1, 2, UD2(0.8, 0, 0.78, 0), UD2(0.26, 0, 0.07, 0), C3(0,0,0), C3(0, 0, 0), "Skill 4 Frame")
1145
local SKILL5FRAME = CreateFrame(WEAPONGUI, 1, 2, UD2(0.8, 0, 0.74, 0), UD2(0.26, 0, 0.07, 0), C3(0,0,0), C3(0, 0, 0), "Skill 5 Frame")
1146
local SKILL6FRAME = CreateFrame(WEAPONGUI, 1, 2, UD2(0.8, 0, 0.70, 0), UD2(0.26, 0, 0.07, 0), C3(0,0,0), C3(0, 0, 0), "Skill 6 Frame")
1147
 
1148
local SKILL1TEXT = CreateLabel(SKILL1FRAME, "[Z]", SKILLTEXTCOLOR, SKILLTEXTSIZE, SKILLFONT, 0, 2, 0.5, "Text 1")
1149
local SKILL2TEXT = CreateLabel(SKILL2FRAME, "[B]", SKILLTEXTCOLOR, SKILLTEXTSIZE, SKILLFONT, 0, 2, 0.5, "Text 2")
1150
local SKILL3TEXT = CreateLabel(SKILL3FRAME, "[C]", SKILLTEXTCOLOR, SKILLTEXTSIZE, SKILLFONT, 0, 2, 0.5, "Text 3")
1151
local SKILL4TEXT = CreateLabel(SKILL4FRAME, "[V]", SKILLTEXTCOLOR, SKILLTEXTSIZE, SKILLFONT, 0, 2, 0.5, "Text 4")
1152
local SKILL5TEXT = CreateLabel(SKILL5FRAME, "[E]", SKILLTEXTCOLOR, SKILLTEXTSIZE, SKILLFONT, 0, 2, 0.5, "Text 5")
1153
local SKILL6TEXT = CreateLabel(SKILL6FRAME, "[X]", SKILLTEXTCOLOR, SKILLTEXTSIZE, SKILLFONT, 0, 2, 0.5, "Text 6")
1154
 
1155
--//=================================\\
1156
--||    ATTACK FUNCTIONS AND STUFF
1157
--\\=================================//
1158
 
1159
function Warp()
1160
    local HITFLOOR,HITPOS = Raycast(Mouse.Hit.p+VT(0,1,0), (CF(RootPart.Position, RootPart.Position + VT(0, -1, 0))).lookVector, 100, Character)
1161
    if HITFLOOR then
1162
        CharacterFade(C3(0.5,0,0),50)
1163
        HITPOS = HITPOS + VT(0,3.5,0)
1164
        local POS = RootPart.Position
1165
        RootPart.CFrame = CF(HITPOS,CF(POS,HITPOS)*CF(0,0,-100000).p)
1166
        CreateSound(289556450,Torso,2,MRANDOM(8,13)/10,false)
1167
    end
1168
end
1169
 
1170
function Dash()
1171
    ATTACK = true
1172
    Rooted = true
1173
    local SOUND = CreateSound(1165167610, Torso, 1, 1, true)
1174
    local LOOP = 0
1175
    repeat
1176
        LOOP = LOOP + 1
1177
        Swait()
1178
        local RAY,RAYPOS = Raycast(RootPart.Position, (CF(RootPart.Position, Mouse.Hit.p)).lookVector, 5, workspace)   
1179
        local HITFLOOR,HITPOS,NORMAL = Raycast(RAYPOS+VT(0,1,0), (CF(RAYPOS, RAYPOS + VT(0, -1, 0))).lookVector, 100, Character)
1180
        if HITFLOOR then
1181
            CharacterFade(C3(0.5,0,0),35)
1182
            HITPOS = HITPOS + VT(0,3.5,0)
1183
            local POS = RootPart.Position
1184
            RootPart.CFrame = CF(HITPOS,CF(POS,HITPOS)*CF(0,0,-100000).p)
1185
            RootPart.Velocity = VT(0,0,0)
1186
            RootPart.RotVelocity = VT(0,0,0)
1187
        end
1188
        RootJoint.C0 = Clerp(RootJoint.C0,ROOTC0 * CF(0, 0, 0) * ANGLES(RAD(75), RAD(0), RAD(0)), 1 / Animation_Speed)
1189
        Neck.C0 = Clerp(Neck.C0, NECKC0 * CF(0, 0, 0 + ((1) - 1)) * ANGLES(RAD(-45), RAD(0), RAD(0)), 1 / Animation_Speed)
1190
        RightShoulder.C0 = Clerp(RightShoulder.C0, CF(1.5, 0.5, 0) * ANGLES(RAD(-15), RAD(0), RAD(15)) * RIGHTSHOULDERC0, 1 / Animation_Speed)
1191
        LeftShoulder.C0 = Clerp(LeftShoulder.C0, CF(-1.5, 0.5, 0) * ANGLES(RAD(-15), RAD(0), RAD(-15)) * LEFTSHOULDERC0, 1 / Animation_Speed)
1192
        RightHip.C0 = Clerp(RightHip.C0, CF(1, -1, 0) * ANGLES(RAD(-15), RAD(80), RAD(0)) * ANGLES(RAD(0), RAD(0), RAD(0)), 1 / Animation_Speed)
1193
        LeftHip.C0 = Clerp(LeftHip.C0, CF(-1, -1, 0) * ANGLES(RAD(-15), RAD(-80), RAD(0)) * ANGLES(RAD(0), RAD(0), RAD(0)), 1 / Animation_Speed)
1194
    until KEYHOLD == false
1195
    coroutine.resume(coroutine.create(function()
1196
        for i = 1, 20 do
1197
            Swait()
1198
            SOUND.Volume = SOUND.Volume - 1/20
1199
        end
1200
        SOUND:remove()
1201
    end))
1202
    if LOOP > 50 then
1203
        CreateSound(772085046,Torso,5,MRANDOM(8,13)/10,false)
1204
        for i = 1, 100 do
1205
            Swait()
1206
            RootPart.CFrame = RootPart.CFrame * CF(0,0,-(1-(i/100))/3)
1207
            WACKYEFFECT({Time = 25, EffectType = "Sphere", Size = VT(1,0.5,1), Size2 = VT(2,0,2), Transparency = 0.7, Transparency2 = 1, CFrame = CF(RightLeg.CFrame*CF(0,-1,0).p), MoveToPos = nil, RotationX = 0, RotationY = 0, RotationZ = 0, Material = "Neon", Color = C3(0.3,0.3,0.3), SoundID = nil, SoundPitch = nil, SoundVolume = nil})
1208
            WACKYEFFECT({Time = 25, EffectType = "Sphere", Size = VT(1,0.5,1), Size2 = VT(2,0,2), Transparency = 0.7, Transparency2 = 1, CFrame = CF(LeftLeg.CFrame*CF(0,-1,0).p), MoveToPos = nil, RotationX = 0, RotationY = 0, RotationZ = 0, Material = "Neon", Color = C3(0.3,0.3,0.3), SoundID = nil, SoundPitch = nil, SoundVolume = nil})
1209
            RootJoint.C0 = Clerp(RootJoint.C0,ROOTC0 * CF(0, 0, 0) * ANGLES(RAD(-15), RAD(0), RAD(0)), 1 / Animation_Speed)
1210
            Neck.C0 = Clerp(Neck.C0, NECKC0 * CF(0, 0, 0 + ((1) - 1)) * ANGLES(RAD(35), RAD(0), RAD(0)), 1 / Animation_Speed)
1211
            RightShoulder.C0 = Clerp(RightShoulder.C0, CF(1.5, 0.5, 0) * ANGLES(RAD(-45), RAD(0), RAD(0)) * RIGHTSHOULDERC0, 1 / Animation_Speed)
1212
            LeftShoulder.C0 = Clerp(LeftShoulder.C0, CF(-1.5, 0.5, 0) * ANGLES(RAD(-45), RAD(0), RAD(0)) * LEFTSHOULDERC0, 1 / Animation_Speed)
1213
            RightHip.C0 = Clerp(RightHip.C0, CF(1, -1, 0) * ANGLES(RAD(0), RAD(70), RAD(0)) * ANGLES(RAD(0), RAD(0), RAD(0)), 1 / Animation_Speed)
1214
            LeftHip.C0 = Clerp(LeftHip.C0, CF(-1, -1, 0) * ANGLES(RAD(0), RAD(-70), RAD(0)) * ANGLES(RAD(0), RAD(0), RAD(0)), 1 / Animation_Speed)
1215
        end
1216
    end
1217
    ATTACK = false
1218
    Rooted = false
1219
end
1220
 
1221
function LimbRip()
1222
    ATTACK = true
1223
    Rooted = false
1224
    local TARGET = nil
1225
    local ROOT = nil
1226
    local HUMAN = nil
1227
    local DIST = 4
1228
    Speed = 12
1229
    for i=0, 1, 0.1 / Animation_Speed do
1230
        Swait()
1231
        local CHILDREN = workspace:GetDescendants()
1232
        for index, CHILD in pairs(CHILDREN) do
1233
            if CHILD.ClassName == "Model" and CHILD ~= Character then
1234
                local HUM = CHILD:FindFirstChildOfClass("Humanoid")
1235
                if HUM then
1236
                    local TORSO = CHILD:FindFirstChild("HumanoidRootPart") or CHILD:FindFirstChild("Torso") or CHILD:FindFirstChild("UpperTorso")
1237
                    if TORSO and HUM.Health > 0 then
1238
                        if (TORSO.Position - RightArm.Position).Magnitude <= DIST then
1239
                            DIST = (TORSO.Position - RightArm.Position).Magnitude
1240
                            ROOT = TORSO
1241
                            HUMAN = HUM
1242
                            TARGET = CHILD:FindFirstChild("Torso") or CHILD:FindFirstChild("UpperTorso")
1243
                        end
1244
                    end
1245
                end
1246
            end
1247
        end
1248
        if ROOT then
1249
            break
1250
        end
1251
        RootJoint.C0 = Clerp(RootJoint.C0,ROOTC0 * CF(0, 0, 0) * ANGLES(RAD(0), RAD(0), RAD(45)), 1 / Animation_Speed)
1252
        Neck.C0 = Clerp(Neck.C0, NECKC0 * CF(0, 0, 0 + ((1) - 1)) * ANGLES(RAD(10), RAD(0), RAD(-25)), 1 / Animation_Speed)
1253
        RightShoulder.C0 = Clerp(RightShoulder.C0, CF(1.35, 0.5, -0.4) * ANGLES(RAD(90), RAD(0), RAD(45)) * RIGHTSHOULDERC0, 1 / Animation_Speed)
1254
        LeftShoulder.C0 = Clerp(LeftShoulder.C0, CF(-1.5, 0.5, 0) * ANGLES(RAD(-25), RAD(0), RAD(15)) * LEFTSHOULDERC0, 1 / Animation_Speed)
1255
        RightHip.C0 = Clerp(RightHip.C0, CF(1, -1, 0) * ANGLES(RAD(0), RAD(80), RAD(0)) * ANGLES(RAD(0), RAD(0), RAD(0)), 1 / Animation_Speed)
1256
        LeftHip.C0 = Clerp(LeftHip.C0, CF(-1, -1, 0) * ANGLES(RAD(0), RAD(-70), RAD(0)) * ANGLES(RAD(0), RAD(0), RAD(0)), 1 / Animation_Speed)
1257
    end
1258
    Speed = 16
1259
    if ROOT then
1260
        CreateSound(305685800,Torso,5,1.3,false)
1261
        Rooted = true
1262
        local GORED = false
1263
        coroutine.resume(coroutine.create(function()
1264
            repeat
1265
                Swait()
1266
                ROOT.Anchored = true
1267
            until GORED == true
1268
            ROOT.Anchored = false
1269
        end))
1270
        RootPart.CFrame = ROOT.CFrame*CF(0,0,2.25)
1271
        if TARGET.Name == "Torso" then
1272
            local RARM = TARGET.Parent:FindFirstChild("Right Arm")
1273
            local LARM = TARGET.Parent:FindFirstChild("Left Arm")
1274
            if RARM and LARM then
1275
                for i=0, 1, 0.1 / Animation_Speed do
1276
                    Swait()
1277
                    RootJoint.C0 = Clerp(RootJoint.C0,ROOTC0 * CF(0, 0, 0) * ANGLES(RAD(0), RAD(0), RAD(0)), 1 / Animation_Speed)
1278
                    Neck.C0 = Clerp(Neck.C0, NECKC0 * CF(0, 0, 0 + ((1) - 1)) * ANGLES(RAD(-5), RAD(0), RAD(0)), 1 / Animation_Speed)
1279
                    RightShoulder.C0 = Clerp(RightShoulder.C0, CF(1.5, 0.5, -0.4) * ANGLES(RAD(90), RAD(0), RAD(0)) * RIGHTSHOULDERC0, 1 / Animation_Speed)
1280
                    LeftShoulder.C0 = Clerp(LeftShoulder.C0, CF(-1.5, 0.5, -0.4) * ANGLES(RAD(90), RAD(0), RAD(0)) * LEFTSHOULDERC0, 1 / Animation_Speed)
1281
                    RightHip.C0 = Clerp(RightHip.C0, CF(1, -1, 0) * ANGLES(RAD(0), RAD(70), RAD(0)) * ANGLES(RAD(0), RAD(0), RAD(0)), 1 / Animation_Speed)
1282
                    LeftHip.C0 = Clerp(LeftHip.C0, CF(-1, -1, 0) * ANGLES(RAD(0), RAD(-70), RAD(0)) * ANGLES(RAD(0), RAD(0), RAD(0)), 1 / Animation_Speed)
1283
                end
1284
                for _, c in pairs(TARGET.Parent:GetDescendants()) do
1285
                    if c:IsA("JointInstance") then
1286
                        if c.Part1 == RARM or c.Part1 == LARM or c.Part0 == RARM or c.Part0 == LARM then
1287
                            c:remove()
1288
                        end
1289
                    end
1290
                end
1291
                CreateSound(363808674, TARGET, 3, MRANDOM(7,9)/10, false)
1292
                CreateWeldOrSnapOrMotor("Weld", RightArm, RightArm, RARM, CF(0,-1.35,0) * ANGLES(RAD(90), RAD(0), RAD(0)), CF(0, 0, 0))
1293
                CreateWeldOrSnapOrMotor("Weld", LeftArm, LeftArm, LARM, CF(0,-1.35,0) * ANGLES(RAD(90), RAD(0), RAD(0)), CF(0, 0, 0))
1294
                for i=0, 1, 0.1 / Animation_Speed do
1295
                    Swait()
1296
                    RootJoint.C0 = Clerp(RootJoint.C0,ROOTC0 * CF(0, 0, 0) * ANGLES(RAD(0), RAD(0), RAD(0)), 1 / Animation_Speed)
1297
                    Neck.C0 = Clerp(Neck.C0, NECKC0 * CF(0, 0, 0 + ((1) - 1)) * ANGLES(RAD(-5), RAD(0), RAD(0)), 1 / Animation_Speed)
1298
                    RightShoulder.C0 = Clerp(RightShoulder.C0, CF(1.5, 0.5, -0.4) * ANGLES(RAD(160), RAD(0), RAD(0)) * RIGHTSHOULDERC0, 1 / Animation_Speed)
1299
                    LeftShoulder.C0 = Clerp(LeftShoulder.C0, CF(-1.5, 0.5, -0.4) * ANGLES(RAD(160), RAD(0), RAD(0)) * LEFTSHOULDERC0, 1 / Animation_Speed)
1300
                    RightHip.C0 = Clerp(RightHip.C0, CF(1, -1, 0) * ANGLES(RAD(0), RAD(70), RAD(0)) * ANGLES(RAD(0), RAD(0), RAD(0)), 1 / Animation_Speed)
1301
                    LeftHip.C0 = Clerp(LeftHip.C0, CF(-1, -1, 0) * ANGLES(RAD(0), RAD(-70), RAD(0)) * ANGLES(RAD(0), RAD(0), RAD(0)), 1 / Animation_Speed)
1302
                end
1303
                for i=0, 1, 0.1 / Animation_Speed do
1304
                    Swait()
1305
                    RootJoint.C0 = Clerp(RootJoint.C0,ROOTC0 * CF(0, 0, 0.25) * ANGLES(RAD(-25), RAD(0), RAD(80)), 1 / Animation_Speed)
1306
                    Neck.C0 = Clerp(Neck.C0, NECKC0 * CF(0, 0, 0 + ((1) - 1)) * ANGLES(RAD(15), RAD(0), RAD(-30)), 1 / Animation_Speed)
1307
                    RightShoulder.C0 = Clerp(RightShoulder.C0, CF(1.5, 0.5, -0.4) * ANGLES(RAD(160), RAD(0), RAD(0)) * RIGHTSHOULDERC0, 1 / Animation_Speed)
1308
                    LeftShoulder.C0 = Clerp(LeftShoulder.C0, CF(-1.5, 0.5, -0.4) * ANGLES(RAD(160), RAD(0), RAD(0)) * LEFTSHOULDERC0, 1 / Animation_Speed)
1309
                    RightHip.C0 = Clerp(RightHip.C0, CF(1, -1, -0.6) * ANGLES(RAD(0), RAD(90), RAD(0)) * ANGLES(RAD(-65), RAD(0), RAD(0)) * CF(0,1.5,0), 1 / Animation_Speed)
1310
                    LeftHip.C0 = Clerp(LeftHip.C0, CF(-1, -1, 0) * ANGLES(RAD(0), RAD(-45), RAD(0)) * ANGLES(RAD(-35), RAD(0), RAD(0)), 1 / Animation_Speed)
1311
                end
1312
                for i=0, 0.1, 0.1 / Animation_Speed do
1313
                    Swait()
1314
                    RootJoint.C0 = Clerp(RootJoint.C0,ROOTC0 * CF(0, 0.2, 0.25) * ANGLES(RAD(-35), RAD(0), RAD(80)), 1 / Animation_Speed)
1315
                    Neck.C0 = Clerp(Neck.C0, NECKC0 * CF(0, 0, 0 + ((1) - 1)) * ANGLES(RAD(15), RAD(0), RAD(-30)), 1 / Animation_Speed)
1316
                    RightShoulder.C0 = Clerp(RightShoulder.C0, CF(1.5, 0.5, -0.4) * ANGLES(RAD(160), RAD(0), RAD(0)) * RIGHTSHOULDERC0, 1 / Animation_Speed)
1317
                    LeftShoulder.C0 = Clerp(LeftShoulder.C0, CF(-1.5, 0.5, -0.4) * ANGLES(RAD(160), RAD(0), RAD(0)) * LEFTSHOULDERC0, 1 / Animation_Speed)
1318
                    RightHip.C0 = Clerp(RightHip.C0, CF(1, -1, -0.6) * ANGLES(RAD(0), RAD(90), RAD(0)) * ANGLES(RAD(-65), RAD(0), RAD(0)) * CF(0,-0.3,0), 1 / Animation_Speed)
1319
                    LeftHip.C0 = Clerp(LeftHip.C0, CF(-1, -1, 0) * ANGLES(RAD(0), RAD(-45), RAD(0)) * ANGLES(RAD(-35), RAD(0), RAD(0)), 1 / Animation_Speed)
1320
                end
1321
                GORED = true
1322
                Ragdoll(TARGET.Parent,Torso)
1323
                if ROOT.Name ~= "Torso" then
1324
                    ROOT:remove()
1325
                end
1326
                local RGRAB = CreateWeldOrSnapOrMotor("Weld", RightArm, RightArm, RARM, CF(0,-1.35,0) * ANGLES(RAD(90), RAD(0), RAD(0)), CF(0, 0, 0))
1327
                local LGRAB = CreateWeldOrSnapOrMotor("Weld", LeftArm, LeftArm, LARM, CF(0,-1.35,0) * ANGLES(RAD(90), RAD(0), RAD(0)), CF(0, 0, 0))
1328
                local bv = Instance.new("BodyVelocity",TARGET)
1329
                bv.maxForce = Vector3.new(1e9, 1e9, 1e9)
1330
                bv.velocity = TARGET.CFrame.lookVector*75
1331
                Debris:AddItem(bv,0.05)
1332
                CreateSound(621557962, RightLeg, 1, MRANDOM(7,9)/10, false)
1333
                for i=0, 0.5, 0.1 / Animation_Speed do
1334
                    Swait()
1335
                    RootJoint.C0 = Clerp(RootJoint.C0,ROOTC0 * CF(0, 0.2, 0.25) * ANGLES(RAD(-35), RAD(0), RAD(80)), 1 / Animation_Speed)
1336
                    Neck.C0 = Clerp(Neck.C0, NECKC0 * CF(0, 0, 0 + ((1) - 1)) * ANGLES(RAD(15), RAD(0), RAD(-30)), 1 / Animation_Speed)
1337
                    RightShoulder.C0 = Clerp(RightShoulder.C0, CF(1.5, 0.5, -0.4) * ANGLES(RAD(160), RAD(0), RAD(0)) * RIGHTSHOULDERC0, 1 / Animation_Speed)
1338
                    LeftShoulder.C0 = Clerp(LeftShoulder.C0, CF(-1.5, 0.5, -0.4) * ANGLES(RAD(160), RAD(0), RAD(0)) * LEFTSHOULDERC0, 1 / Animation_Speed)
1339
                    RightHip.C0 = Clerp(RightHip.C0, CF(1, -1, -0.6) * ANGLES(RAD(0), RAD(90), RAD(0)) * ANGLES(RAD(-65), RAD(0), RAD(0)) * CF(0,-0.3,0), 1 / Animation_Speed)
1340
                    LeftHip.C0 = Clerp(LeftHip.C0, CF(-1, -1, 0) * ANGLES(RAD(0), RAD(-45), RAD(0)) * ANGLES(RAD(-35), RAD(0), RAD(0)), 1 / Animation_Speed)
1341
                end
1342
                for i=0, 1, 0.1 / Animation_Speed do
1343
                    Swait()
1344
                    RootJoint.C0 = Clerp(RootJoint.C0,ROOTC0 * CF(0, 0, 0) * ANGLES(RAD(0), RAD(0), RAD(0)), 1 / Animation_Speed)
1345
                    Neck.C0 = Clerp(Neck.C0, NECKC0 * CF(0, 0, 0 + ((1) - 1)) * ANGLES(RAD(25), RAD(0), RAD(0)), 1 / Animation_Speed)
1346
                    RightShoulder.C0 = Clerp(RightShoulder.C0, CF(1.5, 0.5, -0.4) * ANGLES(RAD(0), RAD(0), RAD(90)) * RIGHTSHOULDERC0, 0.6 / Animation_Speed)
1347
                    LeftShoulder.C0 = Clerp(LeftShoulder.C0, CF(-1.5, 0.5, -0.4) * ANGLES(RAD(0), RAD(0), RAD(-90)) * LEFTSHOULDERC0, 0.6 / Animation_Speed)
1348
                    RightHip.C0 = Clerp(RightHip.C0, CF(1, -1, 0) * ANGLES(RAD(0), RAD(70), RAD(0)) * ANGLES(RAD(0), RAD(0), RAD(0)), 1 / Animation_Speed)
1349
                    LeftHip.C0 = Clerp(LeftHip.C0, CF(-1, -1, 0) * ANGLES(RAD(0), RAD(-70), RAD(0)) * ANGLES(RAD(0), RAD(0), RAD(0)), 1 / Animation_Speed)
1350
                end
1351
                local HITBOX = CreatePart(3, RARM, "Metal", 0, 1, "Really black", "Part", RARM.Size, false)
1352
                HITBOX.CFrame = RARM.CFrame
1353
                HITBOX.CanCollide = true
1354
                weldBetween(RARM,HITBOX)
1355
                local HITBOX = CreatePart(3, LARM, "Metal", 0, 1, "Really black", "Part", RARM.Size, false)
1356
                HITBOX.CFrame = LARM.CFrame
1357
                HITBOX.CanCollide = true
1358
                weldBetween(LARM,HITBOX)
1359
                RGRAB:remove()
1360
                LGRAB:remove()
1361
                for i=0, 0.4, 0.1 / Animation_Speed do
1362
                    Swait()
1363
                    RootJoint.C0 = Clerp(RootJoint.C0,ROOTC0 * CF(0, 0, 0) * ANGLES(RAD(0), RAD(0), RAD(0)), 1 / Animation_Speed)
1364
                    Neck.C0 = Clerp(Neck.C0, NECKC0 * CF(0, 0, 0 + ((1) - 1)) * ANGLES(RAD(25), RAD(0), RAD(0)), 1 / Animation_Speed)
1365
                    RightShoulder.C0 = Clerp(RightShoulder.C0, CF(1.5, 0.5, -0.4) * ANGLES(RAD(0), RAD(0), RAD(110)) * RIGHTSHOULDERC0, 1 / Animation_Speed)
1366
                    LeftShoulder.C0 = Clerp(LeftShoulder.C0, CF(-1.5, 0.5, -0.4) * ANGLES(RAD(0), RAD(0), RAD(-110)) * LEFTSHOULDERC0, 1 / Animation_Speed)
1367
                    RightHip.C0 = Clerp(RightHip.C0, CF(1, -1, 0) * ANGLES(RAD(0), RAD(70), RAD(0)) * ANGLES(RAD(0), RAD(0), RAD(0)), 1 / Animation_Speed)
1368
                    LeftHip.C0 = Clerp(LeftHip.C0, CF(-1, -1, 0) * ANGLES(RAD(0), RAD(-70), RAD(0)) * ANGLES(RAD(0), RAD(0), RAD(0)), 1 / Animation_Speed)
1369
                end
1370
            end
1371
        elseif TARGET.Name == "UpperTorso" then
1372
            if TARGET.Parent:FindFirstChild("RightUpperArm") and TARGET.Parent:FindFirstChild("LeftUpperArm") then
1373
                for i=0, 0.3, 0.1 / Animation_Speed do
1374
                    Swait()
1375
                    RootJoint.C0 = Clerp(RootJoint.C0,ROOTC0 * CF(0, 0, 0) * ANGLES(RAD(0), RAD(0), RAD(45)), 1 / Animation_Speed)
1376
                    Neck.C0 = Clerp(Neck.C0, NECKC0 * CF(0, 0, 0 + ((1) - 1)) * ANGLES(RAD(0), RAD(0), RAD(-45)), 1 / Animation_Speed)
1377
                    RightShoulder.C0 = Clerp(RightShoulder.C0, CF(1.45, 0.5, -0.5) * ANGLES(RAD(140), RAD(0), RAD(45)) * ANGLES(RAD(0), RAD(25), RAD(0)) * RIGHTSHOULDERC0, 1 / Animation_Speed)
1378
                    LeftShoulder.C0 = Clerp(LeftShoulder.C0, CF(-1.5, 0.5, 0) * ANGLES(RAD(0), RAD(0), RAD(0)) * LEFTSHOULDERC0, 1 / Animation_Speed)
1379
                    RightHip.C0 = Clerp(RightHip.C0, CF(1, -1, 0) * ANGLES(RAD(0), RAD(70), RAD(0)) * ANGLES(RAD(0), RAD(0), RAD(0)), 1 / Animation_Speed)
1380
                    LeftHip.C0 = Clerp(LeftHip.C0, CF(-1, -1, 0) * ANGLES(RAD(0), RAD(-90), RAD(0)) * ANGLES(RAD(0), RAD(0), RAD(0)), 1 / Animation_Speed)
1381
                end
1382
                local SAWBLADE = CreatePart(3, Weapon, "Neon", 0, 0.5, "Really red", "Part", VT(0,0,0),false)
1383
                local WELD = CreateWeldOrSnapOrMotor("Weld", RightArm, RightArm, SAWBLADE, CF(0,-1,0) * ANGLES(RAD(0), RAD(90), RAD(0)), CF(0, 0, 0))
1384
                local BLADE = true
1385
                CreateMesh("SpecialMesh", SAWBLADE, "FileMesh", "74322089", "", VT(1,1,1), VT(0,0,0))
1386
                coroutine.resume(coroutine.create(function()
1387
                    repeat
1388
                        Swait()
1389
                        WELD.C1 = WELD.C1 * ANGLES(RAD(0), RAD(0), RAD(25))
1390
                    until BLADE == false
1391
                    SAWBLADE:remove()
1392
                end))
1393
                CreateSound(1165167936, SAWBLADE, 2, 1, true)
1394
                for i=0, 1, 0.1 / Animation_Speed do
1395
                    Swait()
1396
                    RootJoint.C0 = Clerp(RootJoint.C0,ROOTC0 * CF(0, 0, 0) * ANGLES(RAD(0), RAD(0), RAD(45)), 1 / Animation_Speed)
1397
                    Neck.C0 = Clerp(Neck.C0, NECKC0 * CF(0, 0, 0 + ((1) - 1)) * ANGLES(RAD(0), RAD(0), RAD(-45)), 1 / Animation_Speed)
1398
                    RightShoulder.C0 = Clerp(RightShoulder.C0, CF(1.45, 0.5, -0.5) * ANGLES(RAD(140), RAD(0), RAD(45)) * ANGLES(RAD(0), RAD(25), RAD(0)) * RIGHTSHOULDERC0, 1 / Animation_Speed)
1399
                    LeftShoulder.C0 = Clerp(LeftShoulder.C0, CF(-1.5, 0.5, 0) * ANGLES(RAD(0), RAD(0), RAD(0)) * LEFTSHOULDERC0, 1 / Animation_Speed)
1400
                    RightHip.C0 = Clerp(RightHip.C0, CF(1, -1, 0) * ANGLES(RAD(0), RAD(70), RAD(0)) * ANGLES(RAD(0), RAD(0), RAD(0)), 1 / Animation_Speed)
1401
                    LeftHip.C0 = Clerp(LeftHip.C0, CF(-1, -1, 0) * ANGLES(RAD(0), RAD(-90), RAD(0)) * ANGLES(RAD(0), RAD(0), RAD(0)), 1 / Animation_Speed)
1402
                end
1403
                for i=0, 3, 0.1 / Animation_Speed do
1404
                    Swait()
1405
                    RootJoint.C0 = Clerp(RootJoint.C0,ROOTC0 * CF(0, 0, 0) * ANGLES(RAD(0), RAD(0), RAD(45)), 1 / Animation_Speed)
1406
                    Neck.C0 = Clerp(Neck.C0, NECKC0 * CF(0, 0, 0 + ((1) - 1)) * ANGLES(RAD(0), RAD(0), RAD(-45)), 1 / Animation_Speed)
1407
                    RightShoulder.C0 = Clerp(RightShoulder.C0, CF(1.45, 0.5, -0.5) * ANGLES(RAD(15), RAD(0), RAD(45)) * ANGLES(RAD(0), RAD(-25), RAD(0)) * RIGHTSHOULDERC0, 0.1 / Animation_Speed)
1408
                    LeftShoulder.C0 = Clerp(LeftShoulder.C0, CF(-1.5, 0.5, 0) * ANGLES(RAD(0), RAD(0), RAD(0)) * LEFTSHOULDERC0, 1 / Animation_Speed)
1409
                    RightHip.C0 = Clerp(RightHip.C0, CF(1, -1, 0) * ANGLES(RAD(0), RAD(70), RAD(0)) * ANGLES(RAD(0), RAD(0), RAD(0)), 1 / Animation_Speed)
1410
                    LeftHip.C0 = Clerp(LeftHip.C0, CF(-1, -1, 0) * ANGLES(RAD(0), RAD(-90), RAD(0)) * ANGLES(RAD(0), RAD(0), RAD(0)), 1 / Animation_Speed)
1411
                end
1412
                CreateSound(363808674, TARGET, 3, MRANDOM(7,9)/10, false)
1413
                TARGET.Parent:FindFirstChild("RightUpperArm").RightShoulder:remove()
1414
                for i=0, 1, 0.1 / Animation_Speed do
1415
                    Swait()
1416
                    RootJoint.C0 = Clerp(RootJoint.C0,ROOTC0 * CF(1, 0, 0.3) * ANGLES(RAD(0), RAD(0), RAD(90)), 1 / Animation_Speed)
1417
                    Neck.C0 = Clerp(Neck.C0, NECKC0 * CF(0, 0, 0 + ((1) - 1)) * ANGLES(RAD(0), RAD(0), RAD(-80)), 1 / Animation_Speed)
1418
                    RightShoulder.C0 = Clerp(RightShoulder.C0, CF(1.45, 0.5, 0) * ANGLES(RAD(140), RAD(0), RAD(90)) * ANGLES(RAD(0), RAD(45), RAD(0)) * RIGHTSHOULDERC0, 1 / Animation_Speed)
1419
                    LeftShoulder.C0 = Clerp(LeftShoulder.C0, CF(-1.5, 0.5, 0) * ANGLES(RAD(0), RAD(0), RAD(0)) * LEFTSHOULDERC0, 1 / Animation_Speed)
1420
                    RightHip.C0 = Clerp(RightHip.C0, CF(1, -1, 0) * ANGLES(RAD(0), RAD(70), RAD(0)) * ANGLES(RAD(0), RAD(0), RAD(0)), 1 / Animation_Speed)
1421
                    LeftHip.C0 = Clerp(LeftHip.C0, CF(-1, -1, 0) * ANGLES(RAD(0), RAD(-90), RAD(0)) * ANGLES(RAD(0), RAD(0), RAD(0)), 1 / Animation_Speed)
1422
                end
1423
                for i=0, 3, 0.1 / Animation_Speed do
1424
                    Swait()
1425
                    RootJoint.C0 = Clerp(RootJoint.C0,ROOTC0 * CF(1, 0, 0) * ANGLES(RAD(0), RAD(0), RAD(90)), 1 / Animation_Speed)
1426
                    Neck.C0 = Clerp(Neck.C0, NECKC0 * CF(0, 0, 0 + ((1) - 1)) * ANGLES(RAD(0), RAD(0), RAD(-80)), 1 / Animation_Speed)
1427
                    RightShoulder.C0 = Clerp(RightShoulder.C0, CF(1.5, 0.5, 0) * ANGLES(RAD(0), RAD(0), RAD(15)) * ANGLES(RAD(0), RAD(-45), RAD(0)) * RIGHTSHOULDERC0, 0.1 / Animation_Speed)
1428
                    LeftShoulder.C0 = Clerp(LeftShoulder.C0, CF(-1.5, 0.5, 0) * ANGLES(RAD(0), RAD(0), RAD(0)) * LEFTSHOULDERC0, 1 / Animation_Speed)
1429
                    RightHip.C0 = Clerp(RightHip.C0, CF(1, -1, 0) * ANGLES(RAD(0), RAD(70), RAD(0)) * ANGLES(RAD(0), RAD(0), RAD(0)), 1 / Animation_Speed)
1430
                    LeftHip.C0 = Clerp(LeftHip.C0, CF(-1, -1, 0) * ANGLES(RAD(0), RAD(-90), RAD(0)) * ANGLES(RAD(0), RAD(0), RAD(0)), 1 / Animation_Speed)
1431
                end
1432
                CreateSound(363808674, TARGET, 3, MRANDOM(7,9)/10, false)
1433
                TARGET.Parent:FindFirstChild("LeftUpperArm").LeftShoulder:remove()
1434
                BLADE = false
1435
                for i=0, 0.5, 0.1 / Animation_Speed do
1436
                    Swait()
1437
                    RootJoint.C0 = Clerp(RootJoint.C0,ROOTC0 * CF(0, 0, 0.25) * ANGLES(RAD(-25), RAD(0), RAD(80)), 1 / Animation_Speed)
1438
                    Neck.C0 = Clerp(Neck.C0, NECKC0 * CF(0, 0, 0 + ((1) - 1)) * ANGLES(RAD(15), RAD(0), RAD(-30)), 1 / Animation_Speed)
1439
                    RightShoulder.C0 = Clerp(RightShoulder.C0, CF(1.5, 0.5, 0) * ANGLES(RAD(0), RAD(45), RAD(0)) * ANGLES(RAD(-25), RAD(0), RAD(0)) * RIGHTSHOULDERC0, 1 / Animation_Speed)
1440
                    LeftShoulder.C0 = Clerp(LeftShoulder.C0, CF(-1.5, 0.5, 0) * ANGLES(RAD(-15), RAD(0), RAD(-25)) * LEFTSHOULDERC0, 1 / Animation_Speed)
1441
                    RightHip.C0 = Clerp(RightHip.C0, CF(1, -1, -0.6) * ANGLES(RAD(0), RAD(90), RAD(0)) * ANGLES(RAD(-65), RAD(0), RAD(0)) * CF(0,1.5,0), 1 / Animation_Speed)
1442
                    LeftHip.C0 = Clerp(LeftHip.C0, CF(-1, -1, 0) * ANGLES(RAD(0), RAD(-45), RAD(0)) * ANGLES(RAD(-35), RAD(0), RAD(0)), 1 / Animation_Speed)
1443
                end
1444
                for i=0, 0.1, 0.1 / Animation_Speed do
1445
                    Swait()
1446
                    RootJoint.C0 = Clerp(RootJoint.C0,ROOTC0 * CF(0, 0.2, 0.25) * ANGLES(RAD(-35), RAD(0), RAD(80)), 1 / Animation_Speed)
1447
                    Neck.C0 = Clerp(Neck.C0, NECKC0 * CF(0, 0, 0 + ((1) - 1)) * ANGLES(RAD(15), RAD(0), RAD(-30)), 1 / Animation_Speed)
1448
                    RightShoulder.C0 = Clerp(RightShoulder.C0, CF(1.5, 0.5, 0) * ANGLES(RAD(0), RAD(45), RAD(0)) * ANGLES(RAD(-32), RAD(0), RAD(0)) * RIGHTSHOULDERC0, 1 / Animation_Speed)
1449
                    LeftShoulder.C0 = Clerp(LeftShoulder.C0, CF(-1.5, 0.5, 0) * ANGLES(RAD(-20), RAD(0), RAD(-25)) * LEFTSHOULDERC0, 1 / Animation_Speed)
1450
                    RightHip.C0 = Clerp(RightHip.C0, CF(1, -1, -0.6) * ANGLES(RAD(0), RAD(90), RAD(0)) * ANGLES(RAD(-65), RAD(0), RAD(0)) * CF(0,-0.3,0), 1 / Animation_Speed)
1451
                    LeftHip.C0 = Clerp(LeftHip.C0, CF(-1, -1, 0) * ANGLES(RAD(0), RAD(-45), RAD(0)) * ANGLES(RAD(-35), RAD(0), RAD(0)), 1 / Animation_Speed)
1452
                end
1453
                GORED = true
1454
                TARGET.Parent:BreakJoints()
1455
                R15Ragdoll(TARGET.Parent)
1456
                if ROOT.Name ~= "Torso" then
1457
                    ROOT:remove()
1458
                end
1459
                local bv = Instance.new("BodyVelocity",TARGET)
1460
                bv.maxForce = Vector3.new(1e9, 1e9, 1e9)
1461
                bv.velocity = TARGET.CFrame.lookVector*75
1462
                Debris:AddItem(bv,0.05)
1463
                CreateSound(621557962, RightLeg, 1, MRANDOM(7,9)/10, false)
1464
                for i=0, 0.3, 0.1 / Animation_Speed do
1465
                    Swait()
1466
                    RootJoint.C0 = Clerp(RootJoint.C0,ROOTC0 * CF(0, 0.2, 0.25) * ANGLES(RAD(-35), RAD(0), RAD(80)), 1 / Animation_Speed)
1467
                    Neck.C0 = Clerp(Neck.C0, NECKC0 * CF(0, 0, 0 + ((1) - 1)) * ANGLES(RAD(15), RAD(0), RAD(-30)), 1 / Animation_Speed)
1468
                    RightShoulder.C0 = Clerp(RightShoulder.C0, CF(1.5, 0.5, 0) * ANGLES(RAD(0), RAD(45), RAD(0)) * ANGLES(RAD(-32), RAD(0), RAD(0)) * RIGHTSHOULDERC0, 1 / Animation_Speed)
1469
                    LeftShoulder.C0 = Clerp(LeftShoulder.C0, CF(-1.5, 0.5, 0) * ANGLES(RAD(-20), RAD(0), RAD(-25)) * LEFTSHOULDERC0, 1 / Animation_Speed)
1470
                    RightHip.C0 = Clerp(RightHip.C0, CF(1, -1, -0.6) * ANGLES(RAD(0), RAD(90), RAD(0)) * ANGLES(RAD(-65), RAD(0), RAD(0)) * CF(0,-0.3,0), 1 / Animation_Speed)
1471
                    LeftHip.C0 = Clerp(LeftHip.C0, CF(-1, -1, 0) * ANGLES(RAD(0), RAD(-45), RAD(0)) * ANGLES(RAD(-35), RAD(0), RAD(0)), 1 / Animation_Speed)
1472
                end
1473
            end
1474
        end
1475
    end
1476
    ATTACK = false
1477
    Rooted = false
1478
end
1479
 
1480
function Buzzsaw()
1481
    ATTACK = true
1482
    Rooted = false
1483
    local ARMSPEED = 0.1
1484
    local TARGET = nil
1485
    local ROOT = nil
1486
    local HUMAN = nil
1487
    local DIST = 4
1488
    local SAWBLADE = CreatePart(3, Weapon, "Neon", 0, 0.5, "Really red", "Part", VT(0,0,0),false)
1489
    local WELD = CreateWeldOrSnapOrMotor("Weld", RightArm, RightArm, SAWBLADE, CF(0,-1,0) * ANGLES(RAD(0), RAD(90), RAD(0)), CF(0, 0, 0))
1490
    local BLADE = true
1491
    CreateMesh("SpecialMesh", SAWBLADE, "FileMesh", "74322089", "", VT(2,2,1), VT(0,0,0))
1492
    coroutine.resume(coroutine.create(function()
1493
        repeat
1494
            Swait()
1495
            WELD.C1 = WELD.C1 * ANGLES(RAD(0), RAD(0), RAD(25))
1496
        until BLADE == false
1497
        SAWBLADE:remove()
1498
    end))
1499
    CreateSound(1165167936, SAWBLADE, 2, 1, true)
1500
    for i=0, 1, 0.1 / Animation_Speed do
1501
        Swait()
1502
        RootJoint.C0 = Clerp(RootJoint.C0,ROOTC0 * CF(0, 0, 0) * ANGLES(RAD(0), RAD(0), RAD(45)), 1 / Animation_Speed)
1503
        Neck.C0 = Clerp(Neck.C0, NECKC0 * CF(0, 0, 0 + ((1) - 1)) * ANGLES(RAD(0), RAD(0), RAD(-45)), 1 / Animation_Speed)
1504
        RightShoulder.C0 = Clerp(RightShoulder.C0, CF(1.55, 0.5, -0.5) * ANGLES(RAD(175), RAD(0), RAD(0)) * RIGHTSHOULDERC0, 1 / Animation_Speed)
1505
        LeftShoulder.C0 = Clerp(LeftShoulder.C0, CF(-1.5, 0.5, 0) * ANGLES(RAD(0), RAD(0), RAD(0)) * LEFTSHOULDERC0, 1 / Animation_Speed)
1506
        RightHip.C0 = Clerp(RightHip.C0, CF(1, -1, 0) * ANGLES(RAD(0), RAD(70), RAD(0)) * ANGLES(RAD(0), RAD(0), RAD(0)), 1 / Animation_Speed)
1507
        LeftHip.C0 = Clerp(LeftHip.C0, CF(-1, -1, 0) * ANGLES(RAD(0), RAD(-90), RAD(0)) * ANGLES(RAD(0), RAD(0), RAD(0)), 1 / Animation_Speed)
1508
    end
1509
    for i=0, 2, 0.1 / Animation_Speed do
1510
        Swait()
1511
        local CHILDREN = workspace:GetDescendants()
1512
        for index, CHILD in pairs(CHILDREN) do
1513
            if CHILD.ClassName == "Model" and CHILD ~= Character then
1514
                local HUM = CHILD:FindFirstChildOfClass("Humanoid")
1515
                if HUM then
1516
                    local TORSO = CHILD:FindFirstChild("HumanoidRootPart") or CHILD:FindFirstChild("Torso") or CHILD:FindFirstChild("UpperTorso")
1517
                    if TORSO and HUM.Health > 0 then
1518
                        if (TORSO.Position - RightArm.Position).Magnitude <= DIST then
1519
                            DIST = (TORSO.Position - RightArm.Position).Magnitude
1520
                            ROOT = TORSO
1521
                            HUMAN = HUM
1522
                            TARGET = CHILD:FindFirstChild("Torso") or CHILD:FindFirstChild("UpperTorso")
1523
                        end
1524
                    end
1525
                end
1526
            end
1527
        end
1528
        if ROOT then
1529
            break
1530
        end
1531
        RootJoint.C0 = Clerp(RootJoint.C0,ROOTC0 * CF(0, 0, 0) * ANGLES(RAD(0), RAD(0), RAD(45)), 1 / Animation_Speed)
1532
        Neck.C0 = Clerp(Neck.C0, NECKC0 * CF(0, 0, 0 + ((1) - 1)) * ANGLES(RAD(0), RAD(0), RAD(-45)), 1 / Animation_Speed)
1533
        RightShoulder.C0 = Clerp(RightShoulder.C0, CF(1.55, 0.5, -0.5) * ANGLES(RAD(15), RAD(0), RAD(45)) * ANGLES(RAD(0), RAD(-45), RAD(0)) * RIGHTSHOULDERC0, ARMSPEED / Animation_Speed)
1534
        LeftShoulder.C0 = Clerp(LeftShoulder.C0, CF(-1.5, 0.5, 0) * ANGLES(RAD(0), RAD(0), RAD(0)) * LEFTSHOULDERC0, 1 / Animation_Speed)
1535
        RightHip.C0 = Clerp(RightHip.C0, CF(1, -1, 0) * ANGLES(RAD(0), RAD(70), RAD(0)) * ANGLES(RAD(0), RAD(0), RAD(0)), 1 / Animation_Speed)
1536
        LeftHip.C0 = Clerp(LeftHip.C0, CF(-1, -1, 0) * ANGLES(RAD(0), RAD(-90), RAD(0)) * ANGLES(RAD(0), RAD(0), RAD(0)), 1 / Animation_Speed)
1537
    end
1538
    if ROOT then
1539
        ARMSPEED = 0.03
1540
        Rooted = true
1541
        RootPart.CFrame = ROOT.CFrame*CF(0,0,2.5)
1542
        repeat
1543
            HUMAN.Health = HUMAN.Health - 0.5
1544
            Swait()
1545
            ROOT.Anchored = true
1546
            RootJoint.C0 = Clerp(RootJoint.C0,ROOTC0 * CF(1, 0, 0) * ANGLES(RAD(0), RAD(0), RAD(45)), 1 / Animation_Speed)
1547
            Neck.C0 = Clerp(Neck.C0, NECKC0 * CF(0, 0, 0 + ((1) - 1)) * ANGLES(RAD(0), RAD(0), RAD(-45)), 1 / Animation_Speed)
1548
            RightShoulder.C0 = Clerp(RightShoulder.C0, CF(1.5, 0, 0) * ANGLES(RAD(15), RAD(0), RAD(45)) * ANGLES(RAD(0), RAD(-45), RAD(0)) * RIGHTSHOULDERC0, ARMSPEED / Animation_Speed)
1549
            LeftShoulder.C0 = Clerp(LeftShoulder.C0, CF(-1.5, 0.5, 0) * ANGLES(RAD(0), RAD(0), RAD(0)) * LEFTSHOULDERC0, 1 / Animation_Speed)
1550
            RightHip.C0 = Clerp(RightHip.C0, CF(1, -1, 0) * ANGLES(RAD(0), RAD(70), RAD(0)) * ANGLES(RAD(0), RAD(0), RAD(0)), 1 / Animation_Speed)
1551
            LeftHip.C0 = Clerp(LeftHip.C0, CF(-1, -1, 0) * ANGLES(RAD(0), RAD(-90), RAD(0)) * ANGLES(RAD(0), RAD(0), RAD(0)), 1 / Animation_Speed)
1552
        until RightArm.Position.Y < Torso.Position.Y-0.15 or HUMAN.Health == 0
1553
        ROOT.Anchored = false
1554
        if HUMAN.Health == 0 then
1555
            if ROOT.Name ~= "Torso" then
1556
                ROOT:remove()
1557
            end
1558
            if TARGET.Name == "Torso" then
1559
                Ragdoll(HUMAN.Parent,Torso,true)
1560
            elseif TARGET.Name == "UpperTorso" then
1561
                R15Ragdoll(HUMAN.Parent,true)
1562
            end
1563
        end
1564
    end
1565
    BLADE = false
1566
    ATTACK = false
1567
    Rooted = false
1568
end
1569
 
1570
function ReeeEEEEEE()
1571
    ATTACK = true
1572
    Rooted = false
1573
    Speed = 12
1574
    local FX = CreateSound(198165368, Head, 4, 0.5, false)
1575
    repeat
1576
        Swait()
1577
        FX.Parent = Head
1578
        local CHILDREN = workspace:GetDescendants()
1579
        for index, CHILD in pairs(CHILDREN) do
1580
            if CHILD.ClassName == "Model" and CHILD ~= Character then
1581
                local HUM = CHILD:FindFirstChildOfClass("Humanoid")
1582
                if HUM then
1583
                    local TORSO = CHILD:FindFirstChild("Head")
1584
                    if TORSO then
1585
                        if (TORSO.Position - Head.Position).Magnitude <= 25 then
1586
                            WACKYEFFECT({Time = 45, EffectType = "Sphere", Size = VT(1,1,1), Size2 = VT(5,5,5), Transparency = 0, Transparency2 = 1, CFrame = CF(TORSO.Position), MoveToPos = nil, RotationX = 0, RotationY = 0, RotationZ = 0, Material = "Neon", Color = C3(1,0,0), SoundID = nil, SoundPitch = nil, SoundVolume = nil})
1587
                            TORSO:remove()
1588
                            if CHILD:FindFirstChild("Torso") then
1589
                                Ragdoll(CHILD,Torso,true)
1590
                            elseif CHILD:FindFirstChild("UpperTorso") then
1591
                                R15Ragdoll(CHILD,true)
1592
                            end
1593
                        end
1594
                    end
1595
                end
1596
            end
1597
        end
1598
        RootJoint.C0 = Clerp(RootJoint.C0,ROOTC0 * CF(0, 0.5, 0) * ANGLES(RAD(-45), RAD(0), RAD(0)), 1 / Animation_Speed)
1599
        Neck.C0 = Clerp(Neck.C0, NECKC0 * CF(0, 0, 0 + ((1) - 1)) * ANGLES(RAD(-45), RAD(0), RAD(0)), 1 / Animation_Speed)
1600
        RightShoulder.C0 = Clerp(RightShoulder.C0, CF(1.5, 0.5, 0) * ANGLES(RAD(-35), RAD(0), RAD(15)) * ANGLES(RAD(0), RAD(15), RAD(0)) * RIGHTSHOULDERC0, 1 / Animation_Speed)
1601
        LeftShoulder.C0 = Clerp(LeftShoulder.C0, CF(-1.5, 0.5, 0) * ANGLES(RAD(-35), RAD(0), RAD(-15)) * ANGLES(RAD(0), RAD(-15), RAD(0)) * LEFTSHOULDERC0, 1 / Animation_Speed)
1602
        RightHip.C0 = Clerp(RightHip.C0, CF(1, -1, 0) * ANGLES(RAD(-45), RAD(80), RAD(0)) * ANGLES(RAD(0), RAD(0), RAD(0)), 1 / Animation_Speed)
1603
        LeftHip.C0 = Clerp(LeftHip.C0, CF(-1, -1, 0) * ANGLES(RAD(-45), RAD(-80), RAD(0)) * ANGLES(RAD(0), RAD(0), RAD(0)), 1 / Animation_Speed)
1604
    until FX.Playing == false
1605
    Speed = 16
1606
    ATTACK = false
1607
    Rooted = false
1608
end
1609
 
1610
function Needle()
1611
    ATTACK = true
1612
    Rooted = true
1613
    local GYRO = IT("BodyGyro",RootPart)
1614
    GYRO.D = 2
1615
    GYRO.P = 2000
1616
    GYRO.MaxTorque = VT(0,4000000,0)
1617
    local NEEDGYRO = true
1618
    coroutine.resume(coroutine.create(function()
1619
        repeat
1620
            Swait()
1621
            GYRO.CFrame = CF(RootPart.Position,Mouse.Hit.p)
1622
        until NEEDGYRO == false
1623
        GYRO:Remove()
1624
    end))
1625
    for i=0, 0.3, 0.1 / Animation_Speed do
1626
        Swait()
1627
        RootJoint.C0 = Clerp(RootJoint.C0,ROOTC0 * CF(0, 0, -1) * ANGLES(RAD(0), RAD(0), RAD(45)), 1 / Animation_Speed)
1628
        Neck.C0 = Clerp(Neck.C0, NECKC0 * CF(0, 0, 0 + ((1) - 1)) * ANGLES(RAD(0), RAD(0), RAD(-45)), 1 / Animation_Speed)
1629
        RightShoulder.C0 = Clerp(RightShoulder.C0, CF(1.25, 0.5, -0.5) * ANGLES(RAD(90), RAD(0), RAD(45)) * RIGHTSHOULDERC0, 1 / Animation_Speed)
1630
        LeftShoulder.C0 = Clerp(LeftShoulder.C0, CF(-1, 0.5, -0.5) * ANGLES(RAD(25), RAD(0), RAD(80)) * LEFTSHOULDERC0, 1 / Animation_Speed)
1631
        RightHip.C0 = Clerp(RightHip.C0, CF(1, 0, -1) * ANGLES(RAD(0), RAD(90), RAD(0)) * ANGLES(RAD(0), RAD(0), RAD(0)), 1 / Animation_Speed)
1632
        LeftHip.C0 = Clerp(LeftHip.C0, CF(-1, -1.5, 0) * ANGLES(RAD(-90), RAD(-90), RAD(0)) * ANGLES(RAD(0), RAD(0), RAD(0)), 1 / Animation_Speed)
1633
    end
1634
    for i=0, 1, 0.1 / Animation_Speed do
1635
        Swait()
1636
        RootJoint.C0 = Clerp(RootJoint.C0,ROOTC0 * CF(0, 0, -1) * ANGLES(RAD(0), RAD(0), RAD(45)), 1 / Animation_Speed)
1637
        Neck.C0 = Clerp(Neck.C0, NECKC0 * CF(0, 0, 0 + ((1) - 1)) * ANGLES(RAD(0), RAD(15), RAD(-45)), 1 / Animation_Speed)
1638
        RightShoulder.C0 = Clerp(RightShoulder.C0, CF(1.15, 0.5, -0.5) * ANGLES(RAD(90), RAD(0), RAD(45)) * RIGHTSHOULDERC0, 1 / Animation_Speed)
1639
        LeftShoulder.C0 = Clerp(LeftShoulder.C0, CF(-1, 0.5, -0.5) * ANGLES(RAD(25), RAD(0), RAD(80)) * LEFTSHOULDERC0, 1 / Animation_Speed)
1640
        RightHip.C0 = Clerp(RightHip.C0, CF(1, 0, -1) * ANGLES(RAD(0), RAD(90), RAD(0)) * ANGLES(RAD(0), RAD(0), RAD(0)), 1 / Animation_Speed)
1641
        LeftHip.C0 = Clerp(LeftHip.C0, CF(-1, -1.5, 0) * ANGLES(RAD(-90), RAD(-90), RAD(0)) * ANGLES(RAD(0), RAD(0), RAD(0)), 1 / Animation_Speed)
1642
    end
1643
    local HIT,POS = CastProperRay(RightArm.CFrame*CF(0,-1,0).p,Mouse.Hit.p,300,Character)
1644
    WACKYEFFECT({Time = 45, EffectType = "Wave", Size = VT(1,0,1), Size2 = VT(5,1,5), Transparency = 0, Transparency2 = 1, CFrame = RightArm.CFrame*CF(0,-1,0) * ANGLES(RAD(180), RAD(0), RAD(0)), MoveToPos = nil, RotationX = 0, RotationY = 0, RotationZ = 0, Material = "Neon", Color = C3(0,0,0), SoundID = 90655239, SoundPitch = 1, SoundVolume = 2})
1645
    NEEDGYRO = false
1646
    if HIT then
1647
        local NEEDLE = IT("Model",Effects)
1648
        local BASE = CreatePart(3, NEEDLE, "Glass", 0, 0.5, "Pearl", "Part", VT(0.3,0.6,0.3), false)
1649
        MakeForm(BASE,"Cyl")
1650
        BASE.CFrame = CF(POS,RightArm.CFrame*CF(0,-1,0).p) * ANGLES(RAD(90), RAD(0), RAD(0))*CF(0,-0.35,0)
1651
        weldBetween(BASE,HIT)
1652
        local FLUID = CreatePart(3, NEEDLE, "Neon", 0, 0, "Lime green", "Part", VT(0.28,0.58,0.28), false)
1653
        MakeForm(FLUID,"Cyl")
1654
        FLUID.CFrame = BASE.CFrame
1655
        weldBetween(BASE,FLUID)
1656
        local PART = CreatePart(3, NEEDLE, "Metal", 0, 0, "Pearl", "Part", VT(0,0.2,0), false)
1657
        PART.CFrame = BASE.CFrame*CF(0,0.4,0)
1658
        weldBetween(BASE,PART)
1659
        local PART = CreatePart(3, NEEDLE, "Metal", 0, 0, "Pearl", "Part", VT(0.1,0.1,0.1), false)
1660
        PART.CFrame = BASE.CFrame*CF(0,-0.35,0)
1661
        weldBetween(BASE,PART)
1662
        local PART = CreatePart(3, NEEDLE, "Metal", 0, 0, "Pearl", "Part", VT(0.2,0.1,0.2), false)
1663
        PART.CFrame = BASE.CFrame*CF(0,-0.4,0)
1664
        weldBetween(BASE,PART)
1665
        Debris:AddItem(NEEDLE,7)
1666
        if HIT.Parent:FindFirstChildOfClass("Humanoid") then
1667
            local HUMAN = HIT.Parent:FindFirstChildOfClass("Humanoid")
1668
            coroutine.resume(coroutine.create(function()
1669
                for i = 1, 500 do
1670
                    HUMAN.Health = HUMAN.Health - MRANDOM(1,6)/5
1671
                    if HUMAN.Health == 0 then
1672
                        break
1673
                    end
1674
                    Swait(2)
1675
                end
1676
                if HUMAN.Health == 0 then
1677
                    local CHILD = HUMAN.Parent
1678
                    if CHILD:FindFirstChild("Torso") then
1679
                        CHILD:FindFirstChild("Torso").CFrame = CHILD:FindFirstChild("Torso").CFrame * ANGLES(RAD(2), RAD(0), RAD(0))
1680
                        Ragdoll(CHILD,Torso,true)
1681
                    elseif CHILD:FindFirstChild("UpperTorso") then
1682
                        R15Ragdoll(CHILD,true)
1683
                    end
1684
                end
1685
            end))
1686
        end
1687
    end
1688
    for i=0, 1, 0.1 / Animation_Speed do
1689
        Swait()
1690
        RootJoint.C0 = Clerp(RootJoint.C0,ROOTC0 * CF(0, 0, -1) * ANGLES(RAD(0), RAD(0), RAD(45)), 1 / Animation_Speed)
1691
        Neck.C0 = Clerp(Neck.C0, NECKC0 * CF(0, 0, 0 + ((1) - 1)) * ANGLES(RAD(0), RAD(15), RAD(-45)), 1 / Animation_Speed)
1692
        RightShoulder.C0 = Clerp(RightShoulder.C0, CF(1.1, 0.5, 0) * ANGLES(RAD(90), RAD(0), RAD(45)) * RIGHTSHOULDERC0, 1 / Animation_Speed)
1693
        LeftShoulder.C0 = Clerp(LeftShoulder.C0, CF(-1, 0.5, -0.5) * ANGLES(RAD(25), RAD(0), RAD(80)) * LEFTSHOULDERC0, 1 / Animation_Speed)
1694
        RightHip.C0 = Clerp(RightHip.C0, CF(1, 0, -1) * ANGLES(RAD(0), RAD(90), RAD(0)) * ANGLES(RAD(0), RAD(0), RAD(0)), 1 / Animation_Speed)
1695
        LeftHip.C0 = Clerp(LeftHip.C0, CF(-1, -1.5, 0) * ANGLES(RAD(-90), RAD(-90), RAD(0)) * ANGLES(RAD(0), RAD(0), RAD(0)), 1 / Animation_Speed)
1696
    end
1697
    ATTACK = false
1698
    Rooted = false
1699
end
1700
 
1701
function ScrewThis()
1702
    ATTACK = true
1703
    Rooted = true
1704
    local SCREW = CreatePart(3, Weapon, "Neon", 0, 1, "Really red", "Part", VT(2, 0.4, 0.4)/2,false)
1705
    SCREW.CanCollide = true
1706
    local WELD = CreateWeldOrSnapOrMotor("Weld", LeftArm, LeftArm, SCREW, CF(0,-1,0.2) * ANGLES(RAD(0), RAD(90), RAD(0)), CF(0, 0, 0))
1707
    CreateMesh("SpecialMesh", SCREW, "FileMesh", "70265804", "70265794", VT(1,1,1)/1.5, VT(0,0,0))
1708
    for i=0, 0.4, 0.1 / Animation_Speed do
1709
        Swait()
1710
        RootJoint.C0 = Clerp(RootJoint.C0,ROOTC0 * CF(0, 0, 0) * ANGLES(RAD(0), RAD(0), RAD(0)), 1 / Animation_Speed)
1711
        Neck.C0 = Clerp(Neck.C0, NECKC0 * CF(0, 0, 0 + ((1) - 1)) * ANGLES(RAD(15), RAD(0), RAD(45)), 1 / Animation_Speed)
1712
        RightShoulder.C0 = Clerp(RightShoulder.C0, CF(1.25, 0.5, -0.5) * ANGLES(RAD(90), RAD(0), RAD(0)) * RIGHTSHOULDERC0, 1 / Animation_Speed)
1713
        LeftShoulder.C0 = Clerp(LeftShoulder.C0, CF(-1.5, 0.5, 0) * ANGLES(RAD(-5), RAD(0), RAD(15)) * LEFTSHOULDERC0, 1 / Animation_Speed)
1714
        RightHip.C0 = Clerp(RightHip.C0, CF(1, -1, 0) * ANGLES(RAD(0), RAD(80), RAD(0)) * ANGLES(RAD(0), RAD(0), RAD(0)), 1 / Animation_Speed)
1715
        LeftHip.C0 = Clerp(LeftHip.C0, CF(-1, -1, 0) * ANGLES(RAD(0), RAD(-80), RAD(0)) * ANGLES(RAD(0), RAD(0), RAD(0)), 1 / Animation_Speed)
1716
    end
1717
    SCREW.Transparency = 0
1718
    for i=0, 0.1, 0.1 / Animation_Speed do
1719
        Swait()
1720
        RootJoint.C0 = Clerp(RootJoint.C0,ROOTC0 * CF(0, 0, 0) * ANGLES(RAD(0), RAD(0), RAD(0)), 1 / Animation_Speed)
1721
        Neck.C0 = Clerp(Neck.C0, NECKC0 * CF(0, 0, 0 + ((1) - 1)) * ANGLES(RAD(15), RAD(0), RAD(-25)), 1 / Animation_Speed)
1722
        RightShoulder.C0 = Clerp(RightShoulder.C0, CF(1.25, 0.5, -0.5) * ANGLES(RAD(60), RAD(0), RAD(0)) * RIGHTSHOULDERC0, 1 / Animation_Speed)
1723
        LeftShoulder.C0 = Clerp(LeftShoulder.C0, CF(-1.5, 0.5, 0) * ANGLES(RAD(90), RAD(0), RAD(0)) * LEFTSHOULDERC0, 1 / Animation_Speed)
1724
        RightHip.C0 = Clerp(RightHip.C0, CF(1, -1, 0) * ANGLES(RAD(0), RAD(80), RAD(0)) * ANGLES(RAD(0), RAD(0), RAD(0)), 1 / Animation_Speed)
1725
        LeftHip.C0 = Clerp(LeftHip.C0, CF(-1, -1, 0) * ANGLES(RAD(0), RAD(-80), RAD(0)) * ANGLES(RAD(0), RAD(0), RAD(0)), 1 / Animation_Speed)
1726
    end
1727
    for i=0, 1, 0.1 / Animation_Speed do
1728
        Swait()
1729
        RootJoint.C0 = Clerp(RootJoint.C0,ROOTC0 * CF(0, 0, 0) * ANGLES(RAD(0), RAD(0), RAD(0)), 1 / Animation_Speed)
1730
        Neck.C0 = Clerp(Neck.C0, NECKC0 * CF(0, 0, 0 + ((1) - 1)) * ANGLES(RAD(15), RAD(0), RAD(-25)), 1 / Animation_Speed)
1731
        RightShoulder.C0 = Clerp(RightShoulder.C0, CF(1.25, 0.15, -0.5) * ANGLES(RAD(40), RAD(0), RAD(-35)) * RIGHTSHOULDERC0, 1 / Animation_Speed)
1732
        LeftShoulder.C0 = Clerp(LeftShoulder.C0, CF(-0.7, 0.5, -0.3) * ANGLES(RAD(120), RAD(0), RAD(80)) * ANGLES(RAD(0), RAD(15), RAD(-25)) * LEFTSHOULDERC0, 1 / Animation_Speed)
1733
        RightHip.C0 = Clerp(RightHip.C0, CF(1, -1, 0) * ANGLES(RAD(0), RAD(80), RAD(0)) * ANGLES(RAD(0), RAD(0), RAD(0)), 1 / Animation_Speed)
1734
        LeftHip.C0 = Clerp(LeftHip.C0, CF(-1, -1, 0) * ANGLES(RAD(0), RAD(-80), RAD(0)) * ANGLES(RAD(0), RAD(0), RAD(0)), 1 / Animation_Speed)
1735
    end
1736
    for i = 1, 3 do
1737
        for i=0, 0.3, 0.1 / Animation_Speed do
1738
            Swait()
1739
            WELD.C1 = WELD.C1 * ANGLES(RAD(5), RAD(0), RAD(0))
1740
            RootJoint.C0 = Clerp(RootJoint.C0,ROOTC0 * CF(0, 0, 0) * ANGLES(RAD(0), RAD(0), RAD(0)), 1 / Animation_Speed)
1741
            Neck.C0 = Clerp(Neck.C0, NECKC0 * CF(0, 0, 0 + ((1) - 1)) * ANGLES(RAD(15), RAD(0), RAD(-25)), 1 / Animation_Speed)
1742
            RightShoulder.C0 = Clerp(RightShoulder.C0, CF(1.25, 0.15, -0.5) * ANGLES(RAD(40), RAD(0), RAD(-35)) * RIGHTSHOULDERC0, 1 / Animation_Speed)
1743
            LeftShoulder.C0 = Clerp(LeftShoulder.C0, CF(-0.7, 0.5, -0.3) * ANGLES(RAD(120), RAD(0), RAD(78)) * ANGLES(RAD(0), RAD(15), RAD(-25)) * LEFTSHOULDERC0, 1 / Animation_Speed)
1744
            RightHip.C0 = Clerp(RightHip.C0, CF(1, -1, 0) * ANGLES(RAD(0), RAD(80), RAD(0)) * ANGLES(RAD(0), RAD(0), RAD(0)), 1 / Animation_Speed)
1745
            LeftHip.C0 = Clerp(LeftHip.C0, CF(-1, -1, 0) * ANGLES(RAD(0), RAD(-80), RAD(0)) * ANGLES(RAD(0), RAD(0), RAD(0)), 1 / Animation_Speed)
1746
        end
1747
        for i=0, 1, 0.1 / Animation_Speed do
1748
            Swait()
1749
            RootJoint.C0 = Clerp(RootJoint.C0,ROOTC0 * CF(0, 0, 0) * ANGLES(RAD(0), RAD(0), RAD(0)), 1 / Animation_Speed)
1750
            Neck.C0 = Clerp(Neck.C0, NECKC0 * CF(0, 0, 0 + ((1) - 1)) * ANGLES(RAD(15), RAD(0), RAD(-25)), 1 / Animation_Speed)
1751
            RightShoulder.C0 = Clerp(RightShoulder.C0, CF(1.25, 0.15, -0.5) * ANGLES(RAD(40), RAD(0), RAD(-35)) * RIGHTSHOULDERC0, 1 / Animation_Speed)
1752
            LeftShoulder.C0 = Clerp(LeftShoulder.C0, CF(-0.7, 0.5, -0.3) * ANGLES(RAD(120), RAD(0), RAD(80)) * ANGLES(RAD(0), RAD(15), RAD(-25)) * LEFTSHOULDERC0, 1 / Animation_Speed)
1753
            RightHip.C0 = Clerp(RightHip.C0, CF(1, -1, 0) * ANGLES(RAD(0), RAD(80), RAD(0)) * ANGLES(RAD(0), RAD(0), RAD(0)), 1 / Animation_Speed)
1754
            LeftHip.C0 = Clerp(LeftHip.C0, CF(-1, -1, 0) * ANGLES(RAD(0), RAD(-80), RAD(0)) * ANGLES(RAD(0), RAD(0), RAD(0)), 1 / Animation_Speed)
1755
        end
1756
    end
1757
    if MRANDOM(1, 5) == 1 then
1758
        DUST:Emit(25)
1759
        WELD:remove()
1760
        CreateSound(328460122, RightArm, 3, 1, false)
1761
        SCREW.Velocity = CF(RightArm.Position,SCREW.Position).lookVector*65
1762
        Debris:AddItem(SCREW,6)
1763
        for i=0, 3, 0.1 / Animation_Speed do
1764
            Swait()
1765
            RootJoint.C0 = Clerp(RootJoint.C0,ROOTC0 * CF(0, 0, 0) * ANGLES(RAD(0), RAD(0), RAD(0)), 1 / Animation_Speed)
1766
            Neck.C0 = Clerp(Neck.C0, NECKC0 * CF(0, 0, 0 + ((1) - 1)) * ANGLES(RAD(15), RAD(0), RAD(-25)), 1 / Animation_Speed)
1767
            RightShoulder.C0 = Clerp(RightShoulder.C0, CF(1.25, 0.15, -0.5) * ANGLES(RAD(40), RAD(0), RAD(-35)) * RIGHTSHOULDERC0, 1 / Animation_Speed)
1768
            LeftShoulder.C0 = Clerp(LeftShoulder.C0, CF(-0.7, 0.5, -0.3) * ANGLES(RAD(120), RAD(0), RAD(80)) * ANGLES(RAD(0), RAD(15), RAD(-25)) * LEFTSHOULDERC0, 1 / Animation_Speed)
1769
            RightHip.C0 = Clerp(RightHip.C0, CF(1, -1, 0) * ANGLES(RAD(0), RAD(80), RAD(0)) * ANGLES(RAD(0), RAD(0), RAD(0)), 1 / Animation_Speed)
1770
            LeftHip.C0 = Clerp(LeftHip.C0, CF(-1, -1, 0) * ANGLES(RAD(0), RAD(-80), RAD(0)) * ANGLES(RAD(0), RAD(0), RAD(0)), 1 / Animation_Speed)
1771
        end
1772
        for i = 1, 3 do
1773
            for i=0, 0.35, 0.1 / Animation_Speed do
1774
                Swait()
1775
                RootJoint.C0 = Clerp(RootJoint.C0,ROOTC0 * CF(0, 0, 0) * ANGLES(RAD(0), RAD(0), RAD(0)), 1 / Animation_Speed)
1776
                Neck.C0 = Clerp(Neck.C0, NECKC0 * CF(0, 0, 0 + ((1) - 1)) * ANGLES(RAD(15), RAD(0), RAD(15)), 1 / Animation_Speed)
1777
                RightShoulder.C0 = Clerp(RightShoulder.C0, CF(1.25, 0.15, -0.5) * ANGLES(RAD(40), RAD(0), RAD(-35)) * RIGHTSHOULDERC0, 1 / Animation_Speed)
1778
                LeftShoulder.C0 = Clerp(LeftShoulder.C0, CF(-0.7, 0.5, -0.3) * ANGLES(RAD(120), RAD(0), RAD(80)) * ANGLES(RAD(0), RAD(15), RAD(-25)) * LEFTSHOULDERC0, 1 / Animation_Speed)
1779
                RightHip.C0 = Clerp(RightHip.C0, CF(1, -1, 0) * ANGLES(RAD(0), RAD(80), RAD(0)) * ANGLES(RAD(0), RAD(0), RAD(0)), 1 / Animation_Speed)
1780
                LeftHip.C0 = Clerp(LeftHip.C0, CF(-1, -1, 0) * ANGLES(RAD(0), RAD(-80), RAD(0)) * ANGLES(RAD(0), RAD(0), RAD(0)), 1 / Animation_Speed)
1781
            end
1782
            for i=0, 0.35, 0.1 / Animation_Speed do
1783
                Swait()
1784
                RootJoint.C0 = Clerp(RootJoint.C0,ROOTC0 * CF(0, 0, 0) * ANGLES(RAD(0), RAD(0), RAD(0)), 1 / Animation_Speed)
1785
                Neck.C0 = Clerp(Neck.C0, NECKC0 * CF(0, 0, 0 + ((1) - 1)) * ANGLES(RAD(15), RAD(0), RAD(-15)), 1 / Animation_Speed)
1786
                RightShoulder.C0 = Clerp(RightShoulder.C0, CF(1.25, 0.15, -0.5) * ANGLES(RAD(40), RAD(0), RAD(-35)) * RIGHTSHOULDERC0, 1 / Animation_Speed)
1787
                LeftShoulder.C0 = Clerp(LeftShoulder.C0, CF(-0.7, 0.5, -0.3) * ANGLES(RAD(120), RAD(0), RAD(80)) * ANGLES(RAD(0), RAD(15), RAD(-25)) * LEFTSHOULDERC0, 1 / Animation_Speed)
1788
                RightHip.C0 = Clerp(RightHip.C0, CF(1, -1, 0) * ANGLES(RAD(0), RAD(80), RAD(0)) * ANGLES(RAD(0), RAD(0), RAD(0)), 1 / Animation_Speed)
1789
                LeftHip.C0 = Clerp(LeftHip.C0, CF(-1, -1, 0) * ANGLES(RAD(0), RAD(-80), RAD(0)) * ANGLES(RAD(0), RAD(0), RAD(0)), 1 / Animation_Speed)
1790
            end
1791
        end
1792
    else
1793
        for i=0, 0.5, 0.1 / Animation_Speed do
1794
            Swait()
1795
            RootJoint.C0 = Clerp(RootJoint.C0,ROOTC0 * CF(0, 0, 0) * ANGLES(RAD(0), RAD(0), RAD(0)), 1 / Animation_Speed)
1796
            Neck.C0 = Clerp(Neck.C0, NECKC0 * CF(0, 0, 0 + ((1) - 1)) * ANGLES(RAD(0), RAD(0), RAD(60)), 1 / Animation_Speed)
1797
            RightShoulder.C0 = Clerp(RightShoulder.C0, CF(1.5, 0.5, 0) * ANGLES(RAD(0), RAD(0), RAD(0)) * RIGHTSHOULDERC0, 1 / Animation_Speed)
1798
            LeftShoulder.C0 = Clerp(LeftShoulder.C0, CF(-1.5, 0.5, 0) * ANGLES(RAD(0), RAD(0), RAD(-90)) * LEFTSHOULDERC0, 1 / Animation_Speed)
1799
            RightHip.C0 = Clerp(RightHip.C0, CF(1, -1, 0) * ANGLES(RAD(0), RAD(80), RAD(0)) * ANGLES(RAD(0), RAD(0), RAD(0)), 1 / Animation_Speed)
1800
            LeftHip.C0 = Clerp(LeftHip.C0, CF(-1, -1, 0) * ANGLES(RAD(0), RAD(-80), RAD(0)) * ANGLES(RAD(0), RAD(0), RAD(0)), 1 / Animation_Speed)
1801
        end
1802
        WELD:remove()
1803
        for i=0, 0.15, 0.1 / Animation_Speed do
1804
            Swait()
1805
            RootJoint.C0 = Clerp(RootJoint.C0,ROOTC0 * CF(0, 0, 0) * ANGLES(RAD(0), RAD(0), RAD(0)), 1 / Animation_Speed)
1806
            Neck.C0 = Clerp(Neck.C0, NECKC0 * CF(0, 0, 0 + ((1) - 1)) * ANGLES(RAD(0), RAD(0), RAD(60)), 1 / Animation_Speed)
1807
            RightShoulder.C0 = Clerp(RightShoulder.C0, CF(1.5, 0.5, 0) * ANGLES(RAD(0), RAD(0), RAD(0)) * RIGHTSHOULDERC0, 1 / Animation_Speed)
1808
            LeftShoulder.C0 = Clerp(LeftShoulder.C0, CF(-1.5, 0.5, 0) * ANGLES(RAD(0), RAD(0), RAD(-110)) * LEFTSHOULDERC0, 1 / Animation_Speed)
1809
            RightHip.C0 = Clerp(RightHip.C0, CF(1, -1, 0) * ANGLES(RAD(0), RAD(80), RAD(0)) * ANGLES(RAD(0), RAD(0), RAD(0)), 1 / Animation_Speed)
1810
            LeftHip.C0 = Clerp(LeftHip.C0, CF(-1, -1, 0) * ANGLES(RAD(0), RAD(-80), RAD(0)) * ANGLES(RAD(0), RAD(0), RAD(0)), 1 / Animation_Speed)
1811
        end
1812
        Debris:AddItem(SCREW,6)
1813
    end
1814
    ATTACK = false
1815
    Rooted = false
1816
end
1817
 
1818
--//=================================\\
1819
--||      ASSIGN THINGS TO KEYS
1820
--\\=================================//
1821
 
1822
function MouseDown(Mouse)
1823
    if ATTACK == false then
1824
    end
1825
end
1826
 
1827
function MouseUp(Mouse)
1828
HOLD = false
1829
end
1830
 
1831
function KeyDown(Key)
1832
    KEYHOLD = true
1833
    if Key == "z" and ATTACK == false then
1834
        Warp()
1835
    end
1836
 
1837
    if Key == "b" and ATTACK == false then
1838
        Dash()
1839
    end
1840
 
1841
    if Key == "c" and ATTACK == false then
1842
        LimbRip()
1843
    end
1844
 
1845
    if Key == "v" and ATTACK == false then
1846
        Buzzsaw()
1847
    end
1848
 
1849
    if Key == "e" and ATTACK == false then
1850
        ReeeEEEEEE()
1851
    end
1852
 
1853
    if Key == "x" and ATTACK == false then
1854
        Needle()
1855
    end
1856
 
1857
    if Key == "t" and ATTACK == false then
1858
        ScrewThis()
1859
    end
1860
end
1861
 
1862
function KeyUp(Key)
1863
    KEYHOLD = false
1864
end
1865
 
1866
    Mouse.Button1Down:connect(function(NEWKEY)
1867
        MouseDown(NEWKEY)
1868
    end)
1869
    Mouse.Button1Up:connect(function(NEWKEY)
1870
        MouseUp(NEWKEY)
1871
    end)
1872
    Mouse.KeyDown:connect(function(NEWKEY)
1873
        KeyDown(NEWKEY)
1874
    end)
1875
    Mouse.KeyUp:connect(function(NEWKEY)
1876
        KeyUp(NEWKEY)
1877
    end)
1878
 
1879
--//=================================\\
1880
--\\=================================//
1881
 
1882
function AntiTimeStop()
1883
    for _, c in pairs(Character:GetChildren()) do
1884
        if c:IsA("BasePart") then
1885
            c.Anchored = false
1886
        end
1887
    end
1888
    for _, c in pairs(Weapon:GetChildren()) do
1889
        if c:IsA("BasePart") then
1890
            c.Anchored = false
1891
        end
1892
    end
1893
end
1894
 
1895
--//=================================\\
1896
--||    WRAP THE WHOLE SCRIPT UP
1897
--\\=================================//
1898
 
1899
Humanoid.Changed:connect(function(Jump)
1900
    if Jump == "Jump" and (Disable_Jump == true) then
1901
        Humanoid.Jump = false
1902
    end
1903
end)
1904
 
1905
local sick = IT("Sound")
1906
 
1907
while true do
1908
    Swait()
1909
    script.Parent = WEAPONGUI
1910
    ANIMATE.Parent = nil
1911
    for _,v in next, Humanoid:GetPlayingAnimationTracks() do
1912
        v:Stop();
1913
    end
1914
    SINE = SINE + CHANGE
1915
    local TORSOVELOCITY = (RootPart.Velocity * VT(1, 0, 1)).magnitude
1916
    local TORSOVERTICALVELOCITY = RootPart.Velocity.y
1917
    local HITFLOOR = Raycast(RootPart.Position, (CF(RootPart.Position, RootPart.Position + VT(0, -1, 0))).lookVector, 4, Character)
1918
    local WALKSPEEDVALUE = 6 / (Humanoid.WalkSpeed / 16)
1919
    if ANIM == "Walk" and TORSOVELOCITY > 1 then
1920
        RootJoint.C1 = Clerp(RootJoint.C1, ROOTC0 * CF(0, 0, -0.15 * COS(SINE / (WALKSPEEDVALUE / 2))) * ANGLES(RAD(0), RAD(0) - RootPart.RotVelocity.Y / 75, RAD(0)), 2 * (Humanoid.WalkSpeed / 16) / Animation_Speed)
1921
        Neck.C1 = Clerp(Neck.C1, CF(0, -0.5, 0) * 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)
1922
        RightHip.C1 = Clerp(RightHip.C1, CF(0.5, 0.875 - 0.125 * SIN(SINE / WALKSPEEDVALUE) - 0.15 * COS(SINE / WALKSPEEDVALUE*2), -0.125 * COS(SINE / WALKSPEEDVALUE) +0.2- 0.2 * COS(SINE / WALKSPEEDVALUE)) * ANGLES(RAD(0), RAD(90), RAD(0)) * ANGLES(RAD(0) - RightLeg.RotVelocity.Y / 75, RAD(0), RAD(90 * COS(SINE / WALKSPEEDVALUE))), 0.2 * (Humanoid.WalkSpeed / 16) / Animation_Speed)
1923
        LeftHip.C1 = Clerp(LeftHip.C1, CF(-0.5, 0.875 + 0.125 * SIN(SINE / WALKSPEEDVALUE) - 0.15 * COS(SINE / WALKSPEEDVALUE*2), 0.125 * COS(SINE / WALKSPEEDVALUE) +0.2+ 0.2 * COS(SINE / WALKSPEEDVALUE)) * ANGLES(RAD(0), RAD(-90), RAD(0)) * ANGLES(RAD(0) + LeftLeg.RotVelocity.Y / 75, RAD(0), RAD(90 * COS(SINE / WALKSPEEDVALUE))), 0.2 * (Humanoid.WalkSpeed / 16) / Animation_Speed)
1924
    elseif (ANIM ~= "Walk") or (TORSOVELOCITY < 1) then
1925
        RootJoint.C1 = Clerp(RootJoint.C1, ROOTC0 * CF(0, 0, 0) * ANGLES(RAD(0), RAD(0), RAD(0)), 0.2 / Animation_Speed)
1926
        Neck.C1 = Clerp(Neck.C1, CF(0, -0.5, 0) * ANGLES(RAD(-90), RAD(0), RAD(180)) * ANGLES(RAD(0), RAD(0), RAD(0)), 0.2 / Animation_Speed)
1927
        RightHip.C1 = Clerp(RightHip.C1, CF(0.5, 1, 0) * ANGLES(RAD(0), RAD(90), RAD(0)) * ANGLES(RAD(0), RAD(0), RAD(0)), 0.2 / Animation_Speed)
1928
        LeftHip.C1 = Clerp(LeftHip.C1, CF(-0.5, 1, 0) * ANGLES(RAD(0), RAD(-90), RAD(0)) * ANGLES(RAD(0), RAD(0), RAD(0)), 0.2 / Animation_Speed)
1929
    end
1930
    if HITFLOOR == nil then
1931
        ANIM = "Midair"
1932
        if ATTACK == false then
1933
            RootJoint.C0 = Clerp(RootJoint.C0, ROOTC0 * CF(0, 0, 0 ) * ANGLES(RAD(0), RAD(0), RAD(0)), 1 / Animation_Speed)
1934
            Neck.C0 = Clerp(Neck.C0, NECKC0 * CF(0, 0 , 0 + ((1) - 1)) * ANGLES(RAD(20), RAD(0), RAD(0)), 1 / Animation_Speed)
1935
            RightShoulder.C0 = Clerp(RightShoulder.C0, CF(1.5, 0.75, 0) * ANGLES(RAD(-15), RAD(0), RAD(25)) * RIGHTSHOULDERC0, 1 / Animation_Speed)
1936
            LeftShoulder.C0 = Clerp(LeftShoulder.C0, CF(-1.5, 0.75, 0) * ANGLES(RAD(-15), RAD(0), RAD(-25)) * LEFTSHOULDERC0, 1 / Animation_Speed)
1937
            RightHip.C0 = Clerp(RightHip.C0, CF(1, -0.2, -0.6) * ANGLES(RAD(15), RAD(70), RAD(0)) * ANGLES(RAD(-5), RAD(0), RAD(0)), 1 / Animation_Speed)
1938
            LeftHip.C0 = Clerp(LeftHip.C0, CF(-1, -0.2, -0.6) * ANGLES(RAD(15), RAD(-70), RAD(0)) * ANGLES(RAD(-5), RAD(0), RAD(0)), 1 / Animation_Speed)
1939
        end
1940
    elseif TORSOVELOCITY < 1 and HITFLOOR ~= nil then
1941
        ANIM = "Idle"
1942
        if ATTACK == false then
1943
            RootJoint.C0 = Clerp(RootJoint.C0,ROOTC0 * CF(0, 0, 0 + 0.1 * COS(SINE / 12)) * ANGLES(RAD(0), RAD(0), RAD(0)), 0.15 / Animation_Speed)
1944
            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)
1945
            RightShoulder.C0 = Clerp(RightShoulder.C0, CF(1.5, 0.5 + 0.35 * SIN(SINE / 12), 0) * ANGLES(RAD(0), RAD(0), RAD(10 - 15 * COS(SINE / 12))) * ANGLES(RAD(0), RAD(-15), RAD(0)) * RIGHTSHOULDERC0, 0.15 / Animation_Speed)
1946
            LeftShoulder.C0 = Clerp(LeftShoulder.C0, CF(-1.5, 0.5 + 0.35 * SIN(SINE / 12), 0) * ANGLES(RAD(0), RAD(0), RAD(-10 + 15 * COS(SINE / 12))) * ANGLES(RAD(0), RAD(15), RAD(0)) * LEFTSHOULDERC0, 0.15 / Animation_Speed)
1947
            RightHip.C0 = Clerp(RightHip.C0, CF(1, -1 - 0.05 * COS(SINE / 12), 0) * ANGLES(RAD(0), RAD(80), RAD(0)) * ANGLES(RAD(-3), RAD(0), RAD(0)), 1 / Animation_Speed)
1948
            LeftHip.C0 = Clerp(LeftHip.C0, CF(-1, -1 - 0.05 * COS(SINE / 12), 0) * ANGLES(RAD(0), RAD(-80), RAD(0)) * ANGLES(RAD(-3), RAD(0), RAD(0)), 1 / Animation_Speed)
1949
        end
1950
    elseif TORSOVELOCITY > 1 and HITFLOOR ~= nil then
1951
        ANIM = "Walk"
1952
        if ATTACK == false then
1953
            RootJoint.C0 = Clerp(RootJoint.C0,ROOTC0 * CF(0, 0, -0.1) * ANGLES(RAD(5), RAD(0), RAD(10 * COS(SINE / WALKSPEEDVALUE))), 0.5 / Animation_Speed)
1954
            Neck.C0 = Clerp(Neck.C0, NECKC0 * CF(0, 0, 0 + ((1) - 1)) * ANGLES(RAD(5), RAD(0), RAD(-10 * COS(SINE / WALKSPEEDVALUE))), 0.5 / Animation_Speed)
1955
            RightShoulder.C0 = Clerp(RightShoulder.C0, CF(1.5, 0.5, 0.5 * SIN(SINE / WALKSPEEDVALUE)) * ANGLES(RAD(60 * COS(SINE / WALKSPEEDVALUE)), RAD(0), RAD(5)) * ANGLES(RAD(0), RAD(-15), RAD(0)) * RIGHTSHOULDERC0, 0.8 / Animation_Speed)
1956
            LeftShoulder.C0 = Clerp(LeftShoulder.C0, CF(-1.5, 0.5, -0.5 * SIN(SINE / WALKSPEEDVALUE)) * ANGLES(RAD(-60 * COS(SINE / WALKSPEEDVALUE)), RAD(0), RAD(-5)) * ANGLES(RAD(0), RAD(15), RAD(0)) * LEFTSHOULDERC0, 0.8 / Animation_Speed)
1957
            RightHip.C0 = Clerp(RightHip.C0, CF(1 , -1, 0) * ANGLES(RAD(0), RAD(80), RAD(0)) * ANGLES(RAD(0), RAD(0), RAD(-15)), 2 / Animation_Speed)
1958
            LeftHip.C0 = Clerp(LeftHip.C0, CF(-1, -1, 0) * ANGLES(RAD(0), RAD(-80), RAD(0)) * ANGLES(RAD(0), RAD(0), RAD(15)), 2 / Animation_Speed)
1959
        end
1960
    end
1961
    Humanoid.MaxHealth = "inf"
1962
    Humanoid.Health = "inf"
1963
    sick.SoundId = "rbxassetid://1696854181"
1964
    sick.Looped = true
1965
    sick.Pitch = 1
1966
    sick.Volume = 2
1967
    sick.Playing = true
1968
    sick.Parent = Effects
1969
    AntiTimeStop()
1970
    refit()
1971
    if Rooted == false then
1972
        Disable_Jump = false
1973
        Humanoid.WalkSpeed = Speed
1974
    elseif Rooted == true then
1975
        Disable_Jump = true
1976
        Humanoid.WalkSpeed = 0
1977
    end
1978
    ---Humanoid.Name = "Killbot"
1979
    --end
1980
end
1981
 
1982
--//=================================\\
1983
--\\=================================//
1984
 
1985
--//====================================================\\--
1986
--||                     END OF SCRIPT
1987
--\\====================================================//--