View difference between Paste ID: rFrjs5XU and 8TJcNng8
SHOW: | | - or go back to the newest paste.
1
--//====================================================\\--
2
--||               Templates BY Aom[WCR]
3
--\\====================================================//--
4
if game:GetService("RunService"):IsClient() then error("Script must be server-side in order to work; use h/ and not hl/") end
5
local Player,game,owner = owner,game
6
local RealPlayer = Player
7
do
8
    print("FE Compatibility code by Mokiros")
9
    local rp = RealPlayer
10
    script.Parent = rp.Character
11
   
12
    --RemoteEvent for communicating
13
    local Event = Instance.new("RemoteEvent")
14
    Event.Name = "UserInput_Event"
15
 
16
    --Fake event to make stuff like Mouse.KeyDown work
17
    local function fakeEvent()
18
        local t = {_fakeEvent=true,Functions={},Connect=function(self,f)table.insert(self.Functions,f) end}
19
        t.connect = t.Connect
20
        return t
21
    end
22
 
23
    --Creating fake input objects with fake variables
24
    local m = {Target=nil,Hit=CFrame.new(),KeyUp=fakeEvent(),KeyDown=fakeEvent(),Button1Up=fakeEvent(),Button1Down=fakeEvent()}
25
    local UIS = {InputBegan=fakeEvent(),InputEnded=fakeEvent()}
26
    local CAS = {Actions={},BindAction=function(self,name,fun,touch,...)
27
        CAS.Actions[name] = fun and {Name=name,Function=fun,Keys={...}} or nil
28
    end}
29
    --Merged 2 functions into one by checking amount of arguments
30
    CAS.UnbindAction = CAS.BindAction
31
 
32
    --This function will trigger the events that have been :Connect()'ed
33
    local function te(self,ev,...)
34
        local t = m[ev]
35
        if t and t._fakeEvent then
36
            for _,f in pairs(t.Functions) do
37
                f(...)
38
            end
39
        end
40
    end
41
    m.TrigEvent = te
42
    UIS.TrigEvent = te
43
 
44
    Event.OnServerEvent:Connect(function(plr,io)
45
        if plr~=rp then return end
46
        m.Target = io.Target
47
        m.Hit = io.Hit
48
        if not io.isMouse then
49
            local b = io.UserInputState == Enum.UserInputState.Begin
50
            if io.UserInputType == Enum.UserInputType.MouseButton1 then
51
                return m:TrigEvent(b and "Button1Down" or "Button1Up")
52
            end
53
            for _,t in pairs(CAS.Actions) do
54
                for _,k in pairs(t.Keys) do
55
                    if k==io.KeyCode then
56
                        t.Function(t.Name,io.UserInputState,io)
57
                    end
58
                end
59
            end
60
            m:TrigEvent(b and "KeyDown" or "KeyUp",io.KeyCode.Name:lower())
61
            UIS:TrigEvent(b and "InputBegan" or "InputEnded",io,false)
62
        end
63
    end)
64
    Event.Parent = NLS([==[
65
    local Player = game:GetService("Players").LocalPlayer
66
    local Event = script:WaitForChild("UserInput_Event")
67
 
68
    local Mouse = Player:GetMouse()
69
    local UIS = game:GetService("UserInputService")
70
    local input = function(io,a)
71
        if a then return end
72
        --Since InputObject is a client-side instance, we create and pass table instead
73
        Event:FireServer({KeyCode=io.KeyCode,UserInputType=io.UserInputType,UserInputState=io.UserInputState,Hit=Mouse.Hit,Target=Mouse.Target})
74
    end
75
    UIS.InputBegan:Connect(input)
76
    UIS.InputEnded:Connect(input)
77
 
78
    local h,t
79
    --Give the server mouse data 30 times every second, but only if the values changed
80
    --If player is not moving their mouse, client won't fire events
81
    while wait(1/30) do
82
        if h~=Mouse.Hit or t~=Mouse.Target then
83
            h,t=Mouse.Hit,Mouse.Target
84
            Event:FireServer({isMouse=true,Target=t,Hit=h})
85
        end
86
    end]==],Player.Character)
87
 
88
    ----Sandboxed game object that allows the usage of client-side methods and services
89
    --Real game object
90
    local _rg = game
91
 
92
    --Metatable for fake service
93
    local fsmt = {
94
        __index = function(self,k)
95
            local s = rawget(self,"_RealService")
96
            if s then return s[k] end
97
        end,
98
        __newindex = function(self,k,v)
99
            local s = rawget(self,"_RealService")
100
            if s then s[k]=v end
101
        end,
102
        __call = function(self,...)
103
            local s = rawget(self,"_RealService")
104
            if s then return s(...) end
105
        end
106
    }
107
    local function FakeService(t,RealService)
108
        t._RealService = typeof(RealService)=="string" and _rg:GetService(RealService) or RealService
109
        return setmetatable(t,fsmt)
110
    end
111
 
112
    --Fake game object
113
    local g = {
114
        GetService = function(self,s)
115
            return self[s]
116
        end,
117
        Players = FakeService({
118
            LocalPlayer = FakeService({GetMouse=function(self)return m end},Player)
119
        },"Players"),
120
        UserInputService = FakeService(UIS,"UserInputService"),
121
        ContextActionService = FakeService(CAS,"ContextActionService"),
122
    }
123
    rawset(g.Players,"localPlayer",g.Players.LocalPlayer)
124
    g.service = g.GetService
125
   
126
    g.RunService = FakeService({
127
        RenderStepped = _rg:GetService("RunService").Heartbeat,
128
        BindToRenderStep = function(self,name,_,fun)
129
 
130
        end,
131
        UnbindFromRenderStep = function(self,name)
132
            self._btrs[name]:Disconnect()
133
        end,
134
    },"RunService")
135
 
136
    setmetatable(g,{
137
        __index=function(self,s)
138
            return _rg:GetService(s) or typeof(_rg[s])=="function"
139
            and function(_,...)return _rg[s](_rg,...)end or _rg[s]
140
        end,
141
        __newindex = fsmt.__newindex,
142
        __call = fsmt.__call
143
    })
144
    --Changing owner to fake player object to support owner:GetMouse()
145
    game,owner = g,g.Players.LocalPlayer
146
end
147
148
Player = owner
149
PlayerGui = Player.PlayerGui
150
Cam = workspace.CurrentCamera
151
Backpack = Player.Backpack
152
Character = Player.Character
153
Humanoid = Character.Humanoid
154
Mouse = Player:GetMouse()
155
RootPart = Character["HumanoidRootPart"]
156
Torso = Character["Torso"]
157
Head = Character["Head"]
158
RightArm = Character["Right Arm"]
159
LeftArm = Character["Left Arm"]
160
RightLeg = Character["Right Leg"]
161
LeftLeg = Character["Left Leg"]
162
RootJoint = RootPart["RootJoint"]
163
Neck = Torso["Neck"]
164
RightShoulder = Torso["Right Shoulder"]
165
LeftShoulder = Torso["Left Shoulder"]
166
RightHip = Torso["Right Hip"]
167
LeftHip = Torso["Left Hip"]
168
local sick = Instance.new("Sound",Torso)
169
sick.SoundId = "rbxassetid://893254284"
170
sick.Looped = true
171
sick.Pitch = 1
172
sick.Volume = 3
173
sick.TimePosition = 0
174
Character.Archivable = true
175
Humanoid.DisplayDistanceType = "None"
176
Character.NeonBlitzGlasses.Handle.Mesh.TextureId = "0"
177
Character.Headphones.Handle.Mesh.TextureId = "0"
178
game:GetService('RunService').Stepped:Connect(function()
179
   Character.NeonBlitzGlasses.Handle.BrickColor = BrickColor.random()
180
   Character.Headphones.Handle.BrickColor = BrickColor.random()
181
end)
182
183
ParticleEmitter0 = Instance.new("ParticleEmitter")
184
ParticleEmitter1 = Instance.new("ParticleEmitter")
185
ParticleEmitter2 = Instance.new("ParticleEmitter")
186
ParticleEmitter3 = Instance.new("ParticleEmitter")
187
ParticleEmitter0.Name = "Embers"
188
ParticleEmitter0.Parent = mas
189
ParticleEmitter0.Speed = NumberRange.new(2, 3)
190
ParticleEmitter0.Rotation = NumberRange.new(-180, 180)
191
ParticleEmitter0.Color = ColorSequence.new(Color3.new(1, 0, 0),Color3.new(0.756863, 0.454902, 0),Color3.new(0.552941, 0.368627, 0),Color3.new(0.317647, 0.262745, 0))
192
ParticleEmitter0.LightEmission = 0.5
193
ParticleEmitter0.Texture = "http://www.roblox.com/asset/?id=301261210"
194
ParticleEmitter0.Transparency = NumberSequence.new(1,0,0,1)
195
ParticleEmitter0.Size = NumberSequence.new(0,0.075000002980232,0.025000000372529)
196
ParticleEmitter0.Acceleration = Vector3.new(0, 0, 4)
197
ParticleEmitter0.Lifetime = NumberRange.new(0.5, 1.5)
198
ParticleEmitter0.Rate = 50
199
ParticleEmitter0.SpreadAngle = Vector2.new(22.5, 22.5)
200
ParticleEmitter0.VelocitySpread = 22.5
201
ParticleEmitter1.Name = "Glow"
202
ParticleEmitter1.Parent = RightArm
203
ParticleEmitter1.Speed = NumberRange.new(0, 0)
204
ParticleEmitter1.Rotation = NumberRange.new(-100, 100)
205
ParticleEmitter1.Color = ColorSequence.new(Color3.new(1, 0, 0),Color3.new(1, 0.615686, 0),Color3.new(0.984314, 1, 0))
206
ParticleEmitter1.LightEmission = 555
207
ParticleEmitter1.Texture = "rbxassetid://75202463"
208
ParticleEmitter1.Transparency = NumberSequence.new(1,0.98750001192093,1,0.96249997615814,0.9375,0.96249997615814,1)
209
ParticleEmitter1.ZOffset = 0.10000000149012
210
ParticleEmitter1.Size = NumberSequence.new(10,3.5625,3.1874995231628,2.375)
211
ParticleEmitter1.LockedToPart = true
212
ParticleEmitter1.Rate = 3
213
ParticleEmitter2.Name = "MainFire"
214
ParticleEmitter2.Parent = RightArm
215
ParticleEmitter2.Speed = NumberRange.new(2, 2)
216
ParticleEmitter2.Color = ColorSequence.new(Color3.new(1, 0.411765, 0.0745098),Color3.new(1, 0.906398, 0.430645),Color3.new(0.470588, 0, 0),Color3.new(1, 0, 0))
217
ParticleEmitter2.LightEmission = 0.80000001192093
218
ParticleEmitter2.Texture = "http://www.roblox.com/asset/?id=242102147"
219
ParticleEmitter2.Size = NumberSequence.new(1,0)
220
ParticleEmitter2.Lifetime = NumberRange.new(1, 1)
221
ParticleEmitter2.Rate = 55
222
ParticleEmitter2.SpreadAngle = Vector2.new(30, 30)
223
ParticleEmitter2.VelocitySpread = 30
224
ParticleEmitter3.Name = "Flare"
225
ParticleEmitter3.Parent = RightArm
226
ParticleEmitter3.Speed = NumberRange.new(0, 0)
227
ParticleEmitter3.Rotation = NumberRange.new(-100, 100)
228
ParticleEmitter3.Color = ColorSequence.new(Color3.new(0.745098, 0, 0),Color3.new(1, 0, 0),Color3.new(0.760784, 0.403922, 0),Color3.new(1, 0.784314, 0),Color3.new(1, 0.917647, 0))
229
ParticleEmitter3.LightEmission = 0.5
230
ParticleEmitter3.Texture = "rbxassetid://75202463"
231
ParticleEmitter3.Transparency = NumberSequence.new(1,0.98124998807907,1,0.97500002384186,0.95625001192093,0.95625001192093,1)
232
ParticleEmitter3.ZOffset = 0.10000000149012
233
ParticleEmitter3.Size = NumberSequence.new(10,4.25,4)
234
ParticleEmitter3.LockedToPart = true
235
ParticleEmitter3.Rate = 3
236
237
local naeeym2 = Instance.new("BillboardGui",Character)
238
naeeym2.AlwaysOnTop = true
239
naeeym2.Size = UDim2.new(5,35,2,35)
240
naeeym2.StudsOffset = Vector3.new(0,3,0)
241
naeeym2.Adornee = Character.Head
242
naeeym2.Name = "Name"
243
local tecks2 = Instance.new("TextLabel",naeeym2)
244
tecks2.BackgroundTransparency = 1
245
tecks2.TextScaled = true
246
tecks2.BorderSizePixel = 0
247
tecks2.Text = "Codex Red"
248
tecks2.Font = "Code"
249
tecks2.TextSize = 35
250
tecks2.TextTransparency = 1
251
tecks2.TextStrokeTransparency = 1
252
tecks2.TextColor3 = Color3.new(22,29,50)
253
tecks2.Size = UDim2.new(1,0,0.5,0)
254
tecks2.Parent = naeeym2
255
256
IT = Instance.new
257
CF = CFrame.new
258
VT = Vector3.new
259
RAD = math.rad
260
C3 = Color3.new
261
UD2 = UDim2.new
262
BRICKC = BrickColor.new
263
ANGLES = CFrame.Angles
264
EULER = CFrame.fromEulerAnglesXYZ
265
COS = math.cos
266
ACOS = math.acos
267
SIN = math.sin
268
ASIN = math.asin
269
ABS = math.abs
270
MRANDOM = math.random
271
FLOOR = math.floor
272
273
function CreateMesh(MESH, PARENT, MESHTYPE, MESHID, TEXTUREID, SCALE, OFFSET)
274
	local NEWMESH = IT(MESH)
275
	if MESH == "SpecialMesh" then
276
		NEWMESH.MeshType = MESHTYPE
277
		if MESHID ~= "nil" and MESHID ~= "" then
278
			NEWMESH.MeshId = "http://www.roblox.com/asset/?id="..MESHID
279
		end
280
		if TEXTUREID ~= "nil" and TEXTUREID ~= "" then
281
			NEWMESH.TextureId = "http://www.roblox.com/asset/?id="..TEXTUREID
282
		end
283
	end
284
	NEWMESH.Offset = OFFSET or VT(0, 0, 0)
285
	NEWMESH.Scale = SCALE
286
	NEWMESH.Parent = PARENT
287
	return NEWMESH
288
end
289
290
function CreatePart(FORMFACTOR, PARENT, MATERIAL, REFLECTANCE, TRANSPARENCY, BRICKCOLOR, NAME, SIZE, ANCHOR)
291
	local NEWPART = IT("Part")
292
	NEWPART.formFactor = FORMFACTOR
293
	NEWPART.Reflectance = REFLECTANCE
294
	NEWPART.Transparency = TRANSPARENCY
295
	NEWPART.CanCollide = false
296
	NEWPART.Locked = true
297
	NEWPART.Anchored = true
298
	if ANCHOR == false then
299
		NEWPART.Anchored = false
300
	end
301
	NEWPART.BrickColor = BRICKC(tostring(BRICKCOLOR))
302
	NEWPART.Name = NAME
303
	NEWPART.Size = SIZE
304
	NEWPART.Position = Torso.Position
305
	NEWPART.Material = MATERIAL
306
	NEWPART:BreakJoints()
307
	NEWPART.Parent = PARENT
308
	return NEWPART
309
end
310
311
--//=================================\\
312
--||		  CUSTOMIZATION
313
--\\=================================//
314
315
Player_Size = 1 --Size of the player.
316
Animation_Speed = 3
317
Frame_Speed = 1 / 60 -- (1 / 30) OR (1 / 60)
318
319
local Speed = 16
320
local Effects2 = {}
321
322
--//=================================\\
323
--|| 	  END OF CUSTOMIZATION
324
--\\=================================//
325
326
	local function weldBetween(a, b)
327
	    local weldd = Instance.new("ManualWeld")
328
	    weldd.Part0 = a
329
	    weldd.Part1 = b
330
	    weldd.C0 = CFrame.new()
331
	    weldd.C1 = b.CFrame:inverse() * a.CFrame
332
	    weldd.Parent = a
333
	    return weldd
334
	end
335
336
--//=================================\\
337
--|| 	      USEFUL VALUES
338
--\\=================================//
339
340
local ROOTC0 = CF(0, 0, 0) * ANGLES(RAD(-90), RAD(0), RAD(180))
341
local NECKC0 = CF(0, 1, 0) * ANGLES(RAD(-90), RAD(0), RAD(180))
342
local RIGHTSHOULDERC0 = CF(-0.5, 0, 0) * ANGLES(RAD(0), RAD(90), RAD(0))
343
local LEFTSHOULDERC0 = CF(0.5, 0, 0) * ANGLES(RAD(0), RAD(-90), RAD(0))
344
local CHANGEDEFENSE = 0
345
local CHANGEDAMAGE = 0
346
local CHANGEMOVEMENT = 0
347
local ANIM = "Idle"
348
local ATTACK = false
349
local EQUIPPED = false
350
local HOLD = false
351
local COMBO = 1
352
local Rooted = false
353
local SINE = 0
354
local KEYHOLD = false
355
local CHANGE = 2 / Animation_Speed
356
local WALKINGANIM = false
357
local WALK = 0
358
local VALUE1 = false
359
local VALUE2 = false
360
local ROBLOXIDLEANIMATION = IT("Animation")
361
ROBLOXIDLEANIMATION.Name = "Roblox Idle Animation"
362
ROBLOXIDLEANIMATION.AnimationId = "http://www.roblox.com/asset/?id=180435571"
363
--ROBLOXIDLEANIMATION.Parent = Humanoid
364
local WEAPONGUI = IT("ScreenGui", PlayerGui)
365
WEAPONGUI.Name = "Weapon GUI"
366
local Weapon = IT("Folder", Character)
367
Weapon.Name = "Weapon"
368
local Effects = IT("Folder", Character)
369
Effects.Name = "Effects"
370
local Weapon2 = IT("Folder",Character)
371
Weapon2.Name = "Weapon2"
372
local ANIMATOR = Humanoid.Animator
373
local ANIMATE = Character.Animate
374
local UNANCHOR = true
375
local LAUGHS = {834001699,834001752,834001797,834001828}
376
local SONGS = {534861083,530959353,1534958855,0}
377
local CHOICE = MRANDOM(1,4)
378
local PLAYMAINANIM = true
379
local INTRO = false
380
local TRANSFORMED = false
381
local INSTANT = false
382
local MODE = "GoodCop"
383
384
--//=================================\\
385
--\\=================================//
386
387
388
--//=================================\\
389
--|| SAZERENOS' ARTIFICIAL HEARTBEAT
390
--\\=================================//
391
392
ArtificialHB = Instance.new("BindableEvent", script)
393
ArtificialHB.Name = "ArtificialHB"
394
395
script:WaitForChild("ArtificialHB")
396
397
frame = Frame_Speed
398
tf = 0
399
allowframeloss = false
400
tossremainder = false
401
lastframe = tick()
402
script.ArtificialHB:Fire()
403
404
game:GetService("RunService").Heartbeat:connect(function(s, p)
405
	tf = tf + s
406
	if tf >= frame then
407
		if allowframeloss then
408
			script.ArtificialHB:Fire()
409
			lastframe = tick()
410
		else
411
			for i = 1, math.floor(tf / frame) do
412
				script.ArtificialHB:Fire()
413
			end
414
		lastframe = tick()
415
		end
416
		if tossremainder then
417
			tf = 0
418
		else
419
			tf = tf - frame * math.floor(tf / frame)
420
		end
421
	end
422
end)
423
424
--//=================================\\
425
--\\=================================//
426
427
428
429
430
431
--//=================================\\
432
--|| 	      SOME FUNCTIONS
433
--\\=================================//
434
435
function Raycast(POSITION, DIRECTION, RANGE, IGNOREDECENDANTS)
436
	return workspace:FindPartOnRay(Ray.new(POSITION, DIRECTION.unit * RANGE), IGNOREDECENDANTS)
437
end
438
439
function PositiveAngle(NUMBER)
440
	if NUMBER >= 0 then
441
		NUMBER = 0
442
	end
443
	return NUMBER
444
end
445
446
function NegativeAngle(NUMBER)
447
	if NUMBER <= 0 then
448
		NUMBER = 0
449
	end
450
	return NUMBER
451
end
452
453
function Swait(NUMBER)
454
	if NUMBER == 0 or NUMBER == nil then
455
		ArtificialHB.Event:wait()
456
	else
457
		for i = 1, NUMBER do
458
			ArtificialHB.Event:wait()
459
		end
460
	end
461
end
462
463
function QuaternionFromCFrame(cf)
464
	local mx, my, mz, m00, m01, m02, m10, m11, m12, m20, m21, m22 = cf:components()
465
	local trace = m00 + m11 + m22
466
	if trace > 0 then 
467
		local s = math.sqrt(1 + trace)
468
		local recip = 0.5 / s
469
		return (m21 - m12) * recip, (m02 - m20) * recip, (m10 - m01) * recip, s * 0.5
470
	else
471
		local i = 0
472
		if m11 > m00 then
473
			i = 1
474
		end
475
		if m22 > (i == 0 and m00 or m11) then
476
			i = 2
477
		end
478
		if i == 0 then
479
			local s = math.sqrt(m00 - m11 - m22 + 1)
480
			local recip = 0.5 / s
481
			return 0.5 * s, (m10 + m01) * recip, (m20 + m02) * recip, (m21 - m12) * recip
482
		elseif i == 1 then
483
			local s = math.sqrt(m11 - m22 - m00 + 1)
484
			local recip = 0.5 / s
485
			return (m01 + m10) * recip, 0.5 * s, (m21 + m12) * recip, (m02 - m20) * recip
486
		elseif i == 2 then
487
			local s = math.sqrt(m22 - m00 - m11 + 1)
488
			local recip = 0.5 / s return (m02 + m20) * recip, (m12 + m21) * recip, 0.5 * s, (m10 - m01) * recip
489
		end
490
	end
491
end
492
 
493
function QuaternionToCFrame(px, py, pz, x, y, z, w)
494
	local xs, ys, zs = x + x, y + y, z + z
495
	local wx, wy, wz = w * xs, w * ys, w * zs
496
	local xx = x * xs
497
	local xy = x * ys
498
	local xz = x * zs
499
	local yy = y * ys
500
	local yz = y * zs
501
	local zz = z * zs
502
	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))
503
end
504
 
505
function QuaternionSlerp(a, b, t)
506
	local cosTheta = a[1] * b[1] + a[2] * b[2] + a[3] * b[3] + a[4] * b[4]
507
	local startInterp, finishInterp;
508
	if cosTheta >= 0.0001 then
509
		if (1 - cosTheta) > 0.0001 then
510
			local theta = ACOS(cosTheta)
511
			local invSinTheta = 1 / SIN(theta)
512
			startInterp = SIN((1 - t) * theta) * invSinTheta
513
			finishInterp = SIN(t * theta) * invSinTheta
514
		else
515
			startInterp = 1 - t
516
			finishInterp = t
517
		end
518
	else
519
		if (1 + cosTheta) > 0.0001 then
520
			local theta = ACOS(-cosTheta)
521
			local invSinTheta = 1 / SIN(theta)
522
			startInterp = SIN((t - 1) * theta) * invSinTheta
523
			finishInterp = SIN(t * theta) * invSinTheta
524
		else
525
			startInterp = t - 1
526
			finishInterp = t
527
		end
528
	end
529
	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
530
end
531
532
function Clerp(a, b, t)
533
	local qa = {QuaternionFromCFrame(a)}
534
	local qb = {QuaternionFromCFrame(b)}
535
	local ax, ay, az = a.x, a.y, a.z
536
	local bx, by, bz = b.x, b.y, b.z
537
	local _t = 1 - t
538
	return QuaternionToCFrame(_t * ax + t * bx, _t * ay + t * by, _t * az + t * bz, QuaternionSlerp(qa, qb, t))
539
end
540
541
function CreateFrame(PARENT, TRANSPARENCY, BORDERSIZEPIXEL, POSITION, SIZE, COLOR, BORDERCOLOR, NAME)
542
	local frame = IT("Frame")
543
	frame.BackgroundTransparency = TRANSPARENCY
544
	frame.BorderSizePixel = BORDERSIZEPIXEL
545
	frame.Position = POSITION
546
	frame.Size = SIZE
547
	frame.BackgroundColor3 = COLOR
548
	frame.BorderColor3 = BORDERCOLOR
549
	frame.Name = NAME
550
	frame.Parent = PARENT
551
	return frame
552
end
553
554
function CreateLabel(PARENT, TEXT, TEXTCOLOR, TEXTFONTSIZE, TEXTFONT, TRANSPARENCY, BORDERSIZEPIXEL, STROKETRANSPARENCY, NAME)
555
	local label = IT("TextLabel")
556
	label.BackgroundTransparency = 1
557
	label.Size = UD2(1, 0, 1, 0)
558
	label.Position = UD2(0, 0, 0, 0)
559
	label.TextColor3 = TEXTCOLOR
560
	label.TextStrokeTransparency = STROKETRANSPARENCY
561
	label.TextTransparency = TRANSPARENCY
562
	label.FontSize = TEXTFONTSIZE
563
	label.Font = TEXTFONT
564
	label.BorderSizePixel = BORDERSIZEPIXEL
565
	label.TextScaled = false
566
	label.Text = TEXT
567
	label.Name = NAME
568
	label.Parent = PARENT
569
	return label
570
end
571
572
function NoOutlines(PART)
573
	PART.TopSurface, PART.BottomSurface, PART.LeftSurface, PART.RightSurface, PART.FrontSurface, PART.BackSurface = 10, 10, 10, 10, 10, 10
574
end
575
576
577
function CreateWeldOrSnapOrMotor(TYPE, PARENT, PART0, PART1, C0, C1)
578
	local NEWWELD = IT(TYPE)
579
	NEWWELD.Part0 = PART0
580
	NEWWELD.Part1 = PART1
581
	NEWWELD.C0 = C0
582
	NEWWELD.C1 = C1
583
	NEWWELD.Parent = PARENT
584
	return NEWWELD
585
end
586
587
function CreateSound(ID, PARENT, VOLUME, PITCH)
588
	local NEWSOUND = nil
589
	coroutine.resume(coroutine.create(function()
590
		NEWSOUND = IT("Sound", PARENT)
591
		NEWSOUND.Volume = VOLUME
592
		NEWSOUND.Pitch = PITCH
593
		NEWSOUND.SoundId = "http://www.roblox.com/asset/?id="..ID
594
		Swait()
595
		NEWSOUND:play()
596
		game:GetService("Debris"):AddItem(NEWSOUND, 10)
597
	end))
598
	return NEWSOUND
599
end
600
601
function CFrameFromTopBack(at, top, back)
602
	local right = top:Cross(back)
603
	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)
604
end
605
606
function CreateRing(SIZE,DOESROT,ROT,WAIT,CFRAME,COLOR,GROW)
607
	local wave = CreatePart(3, Effects, "Neon", 0, 0.5, BRICKC(COLOR), "Effect", VT(0,0,0))
608
	local mesh = IT("SpecialMesh",wave)
609
	mesh.MeshType = "FileMesh"
610
	mesh.MeshId = "http://www.roblox.com/asset/?id=3270017"
611
	mesh.Scale = SIZE
612
	mesh.Offset = VT(0,0,0)
613
	wave.CFrame = CFRAME
614
	coroutine.resume(coroutine.create(function(PART)
615
		for i = 1, WAIT do
616
			Swait()
617
			mesh.Scale = mesh.Scale + GROW
618
			if DOESROT == true then
619
				wave.CFrame = wave.CFrame * CFrame.fromEulerAnglesXYZ(0,ROT,0)
620
			end
621
			wave.Transparency = wave.Transparency + (0.5/WAIT)
622
			if wave.Transparency > 0.99 then
623
				wave:remove()
624
			end
625
		end
626
	end))
627
end
628
629
function MagicSphere(SIZE,WAIT,CFRAME,COLOR,GROW)
630
	local wave = CreatePart(3, Effects, "Neon", 0, 0, BRICKC(COLOR), "Effect", VT(1,1,1), true)
631
	local mesh = IT("SpecialMesh",wave)
632
	mesh.MeshType = "Sphere"
633
	mesh.Scale = SIZE
634
	mesh.Offset = VT(0,0,0)
635
	wave.CFrame = CFRAME
636
	coroutine.resume(coroutine.create(function(PART)
637
		for i = 1, WAIT do
638
			Swait()
639
			mesh.Scale = mesh.Scale + GROW
640
			wave.Transparency = wave.Transparency + (1/WAIT)
641
			if wave.Transparency > 0.99 then
642
				wave:remove()
643
			end
644
		end
645
	end))
646
end
647
648
function Slice(SIZE,WAIT,CFRAME,COLOR,GROW)
649
	local wave = CreatePart(3, Effects, "Neon", 0, 0.5, BRICKC(COLOR), "Effect", VT(1,1,1), true)
650
	local mesh = CreateMesh("SpecialMesh", wave, "FileMesh", "448386996", "", VT(0,SIZE/10,SIZE/10), VT(0,0,0))
651
	wave.CFrame = CFRAME
652
	coroutine.resume(coroutine.create(function(PART)
653
		for i = 1, WAIT do
654
			Swait()
655
			mesh.Scale = mesh.Scale * GROW
656
			wave.Transparency = wave.Transparency + (0.5/WAIT)
657
			if wave.Transparency > 0.99 then
658
				wave:remove()
659
			end
660
		end
661
	end))
662
end
663
664
function MagicBlock(SIZE,WAIT,CFRAME,COLOR,GROW)
665
	local wave = CreatePart(3, Effects, "Neon", 0, 0, BRICKC(COLOR), "Effect", VT(SIZE,SIZE,SIZE), true)
666
	local mesh = IT("BlockMesh",wave)
667
	wave.CFrame = CFRAME * ANGLES(RAD(math.random(-360,360)),RAD(math.random(-360,360)),RAD(math.random(-360,360)))
668
	coroutine.resume(coroutine.create(function(PART)
669
		for i = 1, WAIT do
670
			Swait()
671
			mesh.Scale = mesh.Scale + GROW
672
			wave.CFrame = CFRAME * ANGLES(RAD(math.random(-360,360)),RAD(math.random(-360,360)),RAD(math.random(-360,360)))
673
			wave.Transparency = wave.Transparency + (1/WAIT)
674
			if wave.Transparency > 0.99 then
675
				wave:remove()
676
			end
677
		end
678
	end))
679
end
680
681
function MakeForm(PART,TYPE)
682
	if TYPE == "Cyl" then
683
		local MSH = IT("CylinderMesh",PART)
684
	elseif TYPE == "Ball" then
685
		local MSH = IT("SpecialMesh",PART)
686
		MSH.MeshType = "Sphere"
687
	elseif TYPE == "Wedge" then
688
		local MSH = IT("SpecialMesh",PART)
689
		MSH.MeshType = "Wedge"
690
	end
691
end
692
693
function CheckTableForString(Table, String)
694
	for i, v in pairs(Table) do
695
		if string.find(string.lower(String), string.lower(v)) then
696
			return true
697
		end
698
	end
699
	return false
700
end
701
702
703
704
Debris = game:GetService("Debris")
705
706
function CastZapRay(StartPos, Vec, Length, Ignore, DelayIfHit)
707
	local Direction = CFrame.new(StartPos, Vec).lookVector
708
	local Ignore = ((type(Ignore) == "table" and Ignore) or {Ignore})
709
	local RayHit, RayPos, RayNormal = game:GetService("Workspace"):FindPartOnRayWithIgnoreList(Ray.new(StartPos, Direction * Length), Ignore)
710
	if RayHit and CheckIntangible(RayHit) then
711
		if DelayIfHit then
712
			wait()
713
		end
714
		RayHit, RayPos, RayNormal = CastZapRay((RayPos + (Vec * 0.01)), Vec, (Length - ((StartPos - RayPos).magnitude)), Ignore, DelayIfHit)
715
	end
716
	return RayHit, RayPos, RayNormal
717
end
718
719
function RayCast(Position, Direction, MaxDistance, IgnoreList)
720
	return game:GetService("Workspace"):FindPartOnRayWithIgnoreList(Ray.new(Position, Direction.unit * (MaxDistance or 999.999)), IgnoreList) 
721
end
722
723
function turnto(position)
724
	RootPart.CFrame=CFrame.new(RootPart.CFrame.p,VT(position.X,RootPart.Position.Y,position.Z)) * CFrame.new(0, 0, 0)
725
end
726
727
function Pose(WhichPose,Speed,Time,Magic,Gyro,Tors)
728
	PLAYMAINANIM = false
729
	if WhichPose == "Cast1" then
730
		for i=0, Time, 0.1 / Animation_Speed do
731
			Swait()
732
			if Magic == true then
733
				WACKYEFFECT({Time = 15, EffectType = "Crystal", Size = VT(1,1,1)*1.5, Size2 = VT(0,4,0), Transparency = 0, Transparency2 = 1, CFrame = RightArm.CFrame*CF(0,-1,0)*ANGLES(RAD(MRANDOM(0,360)),RAD(MRANDOM(0,360)),RAD(MRANDOM(0,360))), MoveToPos = nil, RotationX = 0, RotationY = 0, RotationZ = 0, Material = "Glass", Color = BRICKC"White".Color, SoundID = nil, SoundPitch = nil, SoundVolume = nil})
734
			end
735
			if Gyro ~= nil and Gyro ~= false then
736
				Gyro.cframe = CF(RootPart.Position,Mouse.Hit.p)
737
			end
738
			RootJoint.C0 = Clerp(RootJoint.C0,ROOTC0 * CF(0, 0, 0 + 0.05 * COS(SINE / 12)) * ANGLES(RAD(0), RAD(0), RAD(35)), Speed / Animation_Speed)
739
			Neck.C0 = Clerp(Neck.C0, NECKC0 * CF(0, 0, 0 + ((1) - 1)) * ANGLES(RAD(5 - 6.5 * SIN(SINE / 12)), RAD(0), RAD(-35)), Speed / Animation_Speed)
740
			RightShoulder.C0 = Clerp(RightShoulder.C0, CF(1.5, 0.65 + 0.15 * COS(SINE / 12) - 0.05 * COS(SINE / 12), -0.5) * ANGLES(RAD(125), RAD(0), RAD(45)) * RIGHTSHOULDERC0, Speed / Animation_Speed)
741
			LeftShoulder.C0 = Clerp(LeftShoulder.C0, CF(-1.25, 0.5 + 0.15 * COS(SINE / 12) - 0.05 * COS(SINE / 12), 0.5) * ANGLES(RAD(-45), RAD(0), RAD(45)) * LEFTSHOULDERC0, Speed / Animation_Speed)
742
			RightHip.C0 = Clerp(RightHip.C0, CF(1, -0.5, -0.5) * ANGLES(RAD(0), RAD(65), RAD(0)) * ANGLES(RAD(-3), RAD(0), RAD(-15)), Speed / Animation_Speed)
743
			LeftHip.C0 = Clerp(LeftHip.C0, CF(-1, -1, -0.01) * ANGLES(RAD(0), RAD(-90), RAD(0)) * ANGLES(RAD(-8), RAD(0), RAD(0)), Speed / Animation_Speed)
744
		end
745
	elseif WhichPose == "Cast2" then
746
		for i=0, Time, 0.1 / Animation_Speed do
747
			Swait()
748
			if Magic == true then
749
				WACKYEFFECT({Time = 15, EffectType = "Crystal", Size = VT(1,1,1)*1.5, Size2 = VT(0,4,0), Transparency = 0, Transparency2 = 1, CFrame = RightArm.CFrame*CF(0,-1,0)*ANGLES(RAD(MRANDOM(0,360)),RAD(MRANDOM(0,360)),RAD(MRANDOM(0,360))), MoveToPos = nil, RotationX = 0, RotationY = 0, RotationZ = 0, Material = "Glass", Color = BRICKC"White".Color, SoundID = nil, SoundPitch = nil, SoundVolume = nil})
750
				WACKYEFFECT({Time = 15, EffectType = "Crystal", Size = VT(1,1,1)*1.5, Size2 = VT(0,4,0), Transparency = 0, Transparency2 = 1, CFrame = LeftArm.CFrame*CF(0,-1,0)*ANGLES(RAD(MRANDOM(0,360)),RAD(MRANDOM(0,360)),RAD(MRANDOM(0,360))), MoveToPos = nil, RotationX = 0, RotationY = 0, RotationZ = 0, Material = "Glass", Color = BRICKC"White".Color, SoundID = nil, SoundPitch = nil, SoundVolume = nil})
751
			end
752
			if Gyro ~= nil and Gyro ~= false then
753
				Gyro.cframe = CF(RootPart.Position,Mouse.Hit.p)
754
			end
755
			RootJoint.C0 = Clerp(RootJoint.C0,ROOTC0 * CF(0, 0, 0 + 0.05 * COS(SINE / 12)) * ANGLES(RAD(0), RAD(0), RAD(0)), Speed / Animation_Speed)
756
			Neck.C0 = Clerp(Neck.C0, NECKC0 * CF(0, 0, 0 + ((1) - 1)) * ANGLES(RAD(-15 - 6.5 * SIN(SINE / 12)), RAD(0), RAD(0)), Speed / Animation_Speed)
757
			RightShoulder.C0 = Clerp(RightShoulder.C0, CF(1.5, 0.65 + 0.15 * COS(SINE / 12) - 0.05 * COS(SINE / 12), -0.5) * ANGLES(RAD(120), RAD(0), RAD(15)) * RIGHTSHOULDERC0, Speed / Animation_Speed)
758
			LeftShoulder.C0 = Clerp(LeftShoulder.C0, CF(-1.5, 0.65 + 0.15 * COS(SINE / 12) - 0.05 * COS(SINE / 12), -0.5) * ANGLES(RAD(120), RAD(0), RAD(-15)) * LEFTSHOULDERC0, Speed / Animation_Speed)
759
			RightHip.C0 = Clerp(RightHip.C0, CF(1, -0.5, -0.5) * ANGLES(RAD(0), RAD(65), RAD(0)) * ANGLES(RAD(-3), RAD(0), RAD(-15)), Speed / Animation_Speed)
760
			LeftHip.C0 = Clerp(LeftHip.C0, CF(-1, -1, -0.01) * ANGLES(RAD(0), RAD(-90), RAD(0)) * ANGLES(RAD(-8), RAD(0), RAD(0)), Speed / Animation_Speed)
761
		end
762
	elseif WhichPose == "RightArmUp" then
763
		for i=0, Time, 0.1 / Animation_Speed do
764
			Swait()
765
			if Magic == true then
766
				WACKYEFFECT({Time = 15, EffectType = "Crystal", Size = VT(1,1,1)*1.5, Size2 = VT(0,4,0), Transparency = 0, Transparency2 = 1, CFrame = RightArm.CFrame*CF(0,-1,0)*ANGLES(RAD(MRANDOM(0,360)),RAD(MRANDOM(0,360)),RAD(MRANDOM(0,360))), MoveToPos = nil, RotationX = 0, RotationY = 0, RotationZ = 0, Material = "Glass", Color = BRICKC"White".Color, SoundID = nil, SoundPitch = nil, SoundVolume = nil})
767
			end
768
			if Gyro ~= nil and Gyro ~= false then
769
				Gyro.cframe = CF(RootPart.Position,Mouse.Hit.p)
770
			end
771
			RootJoint.C0 = Clerp(RootJoint.C0,ROOTC0 * CF(0, 0, 0 + 0.05 * COS(SINE / 12)) * ANGLES(RAD(0), RAD(0), RAD(15)), Speed / Animation_Speed)
772
			Neck.C0 = Clerp(Neck.C0, NECKC0 * CF(0, 0, 0 + ((1) - 1)) * ANGLES(RAD(-5 - 6.5 * SIN(SINE / 12)), RAD(0), RAD(-15)), Speed / Animation_Speed)
773
			RightShoulder.C0 = Clerp(RightShoulder.C0, CF(1.5, 0.65 + 0.15 * COS(SINE / 12) - 0.05 * COS(SINE / 12), -0.2) * ANGLES(RAD(125), RAD(0), RAD(25)) * RIGHTSHOULDERC0, Speed / Animation_Speed)
774
			LeftShoulder.C0 = Clerp(LeftShoulder.C0, CF(-1.25, 0.5 + 0.15 * COS(SINE / 12) - 0.05 * COS(SINE / 12), 0.5) * ANGLES(RAD(-45), RAD(0), RAD(45)) * LEFTSHOULDERC0, Speed / Animation_Speed)
775
			RightHip.C0 = Clerp(RightHip.C0, CF(1, -0.5, -0.5) * ANGLES(RAD(0), RAD(65), RAD(0)) * ANGLES(RAD(-3), RAD(0), RAD(-15)), Speed / Animation_Speed)
776
			LeftHip.C0 = Clerp(LeftHip.C0, CF(-1, -1, -0.01) * ANGLES(RAD(0), RAD(-90), RAD(0)) * ANGLES(RAD(-8), RAD(0), RAD(0)), Speed / Animation_Speed)
777
		end
778
	elseif WhichPose == "Taunt" then
779
		for i=0, Time, 0.1 / Animation_Speed do
780
			Swait()
781
			RootJoint.C0 = Clerp(RootJoint.C0,ROOTC0 * CF(0, 0, 0 + 0.05 * COS(SINE / 12)) * ANGLES(RAD(0), RAD(0), RAD(0)), Speed / Animation_Speed)
782
			Neck.C0 = Clerp(Neck.C0, NECKC0 * CF(0, 0, 0 + ((1) - 1)) * ANGLES(RAD(-5 - 6.5 * SIN(SINE / 12)), RAD(0), RAD(0)), Speed / Animation_Speed)
783
			RightShoulder.C0 = Clerp(RightShoulder.C0, CF(1.25, 0.5 + 0.15 * COS(SINE / 12) - 0.05 * COS(SINE / 12), -0.5) * ANGLES(RAD(175), RAD(0), RAD(-35)) * RIGHTSHOULDERC0, Speed / Animation_Speed)
784
			LeftShoulder.C0 = Clerp(LeftShoulder.C0, CF(-1.25, 0.5 + 0.15 * COS(SINE / 12) - 0.05 * COS(SINE / 12), 0.5) * ANGLES(RAD(-45), RAD(0), RAD(45)) * LEFTSHOULDERC0, Speed / Animation_Speed)
785
			RightHip.C0 = Clerp(RightHip.C0, CF(1, -0.5, -0.5) * ANGLES(RAD(0), RAD(65), RAD(0)) * ANGLES(RAD(-3), RAD(0), RAD(-15)), Speed / Animation_Speed)
786
			LeftHip.C0 = Clerp(LeftHip.C0, CF(-1, -1, -0.01) * ANGLES(RAD(0), RAD(-90), RAD(0)) * ANGLES(RAD(-8), RAD(0), RAD(0)), Speed / Animation_Speed)
787
		end
788
		CreateSound(221057812,Torso,10,1,false)
789
		for i=0, Time*2, 0.1 / Animation_Speed do
790
			Swait()
791
			RootJoint.C0 = Clerp(RootJoint.C0,ROOTC0 * CF(0, 0, 0 + 0.05 * COS(SINE / 12)) * ANGLES(RAD(0), RAD(0), RAD(0)), Speed / Animation_Speed)
792
			Neck.C0 = Clerp(Neck.C0, NECKC0 * CF(0, 0, 0 + ((1) - 1)) * ANGLES(RAD(35 - 6.5 * SIN(SINE / 12)), RAD(0), RAD(0)), Speed / Animation_Speed)
793
			RightShoulder.C0 = Clerp(RightShoulder.C0, CF(1.25, 0.5 + 0.15 * COS(SINE / 12) - 0.05 * COS(SINE / 12), 0.5) * ANGLES(RAD(145), RAD(0), RAD(45)) * RIGHTSHOULDERC0, Speed / Animation_Speed)
794
			LeftShoulder.C0 = Clerp(LeftShoulder.C0, CF(-1.25, 0.5 + 0.15 * COS(SINE / 12) - 0.05 * COS(SINE / 12), 0.5) * ANGLES(RAD(5), RAD(25), RAD(-15)) * LEFTSHOULDERC0, Speed / Animation_Speed)
795
			RightHip.C0 = Clerp(RightHip.C0, CF(1, -0.5, -0.5) * ANGLES(RAD(0), RAD(65), RAD(0)) * ANGLES(RAD(-3), RAD(0), RAD(-15)), Speed / Animation_Speed)
796
			LeftHip.C0 = Clerp(LeftHip.C0, CF(-1, -1, -0.01) * ANGLES(RAD(0), RAD(-90), RAD(0)) * ANGLES(RAD(-8), RAD(0), RAD(0)), Speed / Animation_Speed)
797
		end
798
		for i=0, Time, 0.1 / Animation_Speed do
799
			Swait()
800
			RootJoint.C0 = Clerp(RootJoint.C0,ROOTC0 * CF(0, 0, 0 + 0.05 * COS(SINE / 12)) * ANGLES(RAD(0), RAD(0), RAD(0)), Speed / Animation_Speed)
801
			Neck.C0 = Clerp(Neck.C0, NECKC0 * CF(0, 0, 0 + ((1) - 1)) * ANGLES(RAD(5), RAD(0), RAD(0)), Speed / Animation_Speed)
802
			RightShoulder.C0 = Clerp(RightShoulder.C0, CF(1.35, 0.65, -0.5) * ANGLES(RAD(175), RAD(0), RAD(-35)) * RIGHTSHOULDERC0, Speed / Animation_Speed)
803
			LeftShoulder.C0 = Clerp(LeftShoulder.C0, CF(-1.25, 0.5 + 0.15 * COS(SINE / 12) - 0.05 * COS(SINE / 12), 0.5) * ANGLES(RAD(-45), RAD(0), RAD(45)) * LEFTSHOULDERC0, Speed / Animation_Speed)
804
			RightHip.C0 = Clerp(RightHip.C0, CF(1, -0.5, -0.5) * ANGLES(RAD(0), RAD(65), RAD(0)) * ANGLES(RAD(-3), RAD(0), RAD(-15)), Speed / Animation_Speed)
805
			LeftHip.C0 = Clerp(LeftHip.C0, CF(-1, -1, -0.01) * ANGLES(RAD(0), RAD(-90), RAD(0)) * ANGLES(RAD(-8), RAD(0), RAD(0)), Speed / Animation_Speed)
806
		end
807
	elseif WhichPose == "Prepare key" then
808
		for i=0, Time, 0.1 / Animation_Speed do
809
			Swait()
810
			if Gyro ~= nil and Gyro ~= false then
811
				Gyro.cframe = CF(RootPart.Position,Tors.Position)
812
			end
813
			RootJoint.C0 = Clerp(RootJoint.C0,ROOTC0 * CF(0, 0, 0 + 0.05 * COS(SINE / 12)) * ANGLES(RAD(0), RAD(0), RAD(65)), Speed / Animation_Speed)
814
			Neck.C0 = Clerp(Neck.C0, NECKC0 * CF(0, 0, 0 + ((1) - 1)) * ANGLES(RAD(5 - 6.5 * SIN(SINE / 12)), RAD(0), RAD(-65)), Speed / Animation_Speed)
815
			RightShoulder.C0 = Clerp(RightShoulder.C0, CF(1.5, 0.5 + 0.15 * COS(SINE / 12) - 0.05 * COS(SINE / 12), -0.25) * ANGLES(RAD(90), RAD(0), RAD(65)) * RIGHTSHOULDERC0, Speed / Animation_Speed)
816
			LeftShoulder.C0 = Clerp(LeftShoulder.C0, CF(-1.25, 0.5 + 0.15 * COS(SINE / 12) - 0.05 * COS(SINE / 12), 0.5) * ANGLES(RAD(-45), RAD(0), RAD(45)) * LEFTSHOULDERC0, Speed / Animation_Speed)
817
			RightHip.C0 = Clerp(RightHip.C0, CF(1, -0.5, -0.5) * ANGLES(RAD(0), RAD(65), RAD(0)) * ANGLES(RAD(-3), RAD(0), RAD(-15)), Speed / Animation_Speed)
818
			LeftHip.C0 = Clerp(LeftHip.C0, CF(-1, -1, -0.01) * ANGLES(RAD(0), RAD(-90), RAD(0)) * ANGLES(RAD(-8), RAD(0), RAD(0)), Speed / Animation_Speed)
819
		end
820
	elseif WhichPose == "Turn key" then
821
		for i=0, Time, 0.1 / Animation_Speed do
822
			Swait()
823
			if Gyro ~= nil and Gyro ~= false then
824
				Gyro.cframe = CF(RootPart.Position,Tors.Position)
825
			end
826
			RootJoint.C0 = Clerp(RootJoint.C0,ROOTC0 * CF(0, 0, 0 + 0.05 * COS(SINE / 12)) * ANGLES(RAD(0), RAD(0), RAD(75)), Speed / Animation_Speed)
827
			Neck.C0 = Clerp(Neck.C0, NECKC0 * CF(0, 0, 0 + ((1) - 1)) * ANGLES(RAD(5 - 6.5 * SIN(SINE / 12)), RAD(0), RAD(-75)), Speed / Animation_Speed)
828
			RightShoulder.C0 = Clerp(RightShoulder.C0, CF(1.5, 0.5 + 0.15 * COS(SINE / 12) - 0.05 * COS(SINE / 12), -0.25) * ANGLES(RAD(90), RAD(0), RAD(75)) * ANGLES(RAD(0), RAD(-90), RAD(0)) * RIGHTSHOULDERC0, Speed / Animation_Speed)
829
			LeftShoulder.C0 = Clerp(LeftShoulder.C0, CF(-1.25, 0.5 + 0.15 * COS(SINE / 12) - 0.05 * COS(SINE / 12), 0.5) * ANGLES(RAD(-45), RAD(0), RAD(45)) * LEFTSHOULDERC0, Speed / Animation_Speed)
830
			RightHip.C0 = Clerp(RightHip.C0, CF(1, -0.5, -0.5) * ANGLES(RAD(0), RAD(65), RAD(0)) * ANGLES(RAD(-3), RAD(0), RAD(-15)), Speed / Animation_Speed)
831
			LeftHip.C0 = Clerp(LeftHip.C0, CF(-1, -1, -0.01) * ANGLES(RAD(0), RAD(-90), RAD(0)) * ANGLES(RAD(-8), RAD(0), RAD(0)), Speed / Animation_Speed)
832
		end
833
	end
834
	PLAYMAINANIM = true
835
end
836
837
--//=================================\\
838
--|| 			SPEECH
839
--\\=================================//
840
841
function Chatter(Text,Timer)
842
	local chat = coroutine.wrap(function()
843
		if Character:FindFirstChild("SpeechBoard")~= nil then
844
			Character:FindFirstChild("SpeechBoard"):destroy()
845
		end
846
		local naeeym2 = IT("BillboardGui",Character)
847
		naeeym2.Size = UD2(0,100,0,40)
848
		naeeym2.StudsOffset = Vector3.new(0,2,0)
849
		naeeym2.Adornee = Character.Head
850
		naeeym2.Name = "SpeechBoard"
851
		naeeym2.AlwaysOnTop = true
852
		local tecks2 = IT("TextLabel",naeeym2)
853
		tecks2.BackgroundTransparency = 1
854
		tecks2.BorderSizePixel = 0
855
		tecks2.Text = ""
856
		tecks2.Font = "Legacy"
857
		tecks2.TextSize = 15
858
		tecks2.TextStrokeTransparency = 1
859
		tecks2.TextColor3 = Color3.new(242,243,243)
860
		tecks2.TextStrokeColor3 = Color3.new(242,243,243)
861
		tecks2.Size = UDim2.new(1,0,0.5,0)
862
		for i = 1,string.len(Text),1 do
863
			CreateSound(418252437, Head, 3, MRANDOM(8,12)/15, false)
864
			tecks2.Text = string.sub(Text,1,i)
865
			wait(Timer)
866
		end
867
		wait(1)
868
		naeeym2:Destroy()
869
	end)
870
	chat()
871
end
872
873
function chatfunc(text,waitt)
874
local chat = coroutine.wrap(function()
875
if Character:FindFirstChild("TalkingBillBoard")~= nil then
876
Character:FindFirstChild("TalkingBillBoard"):destroy()
877
end
878
local naeeym2 = Instance.new("BillboardGui",Character)
879
naeeym2.Size = UDim2.new(0,100,0,40)
880
naeeym2.StudsOffset = Vector3.new(0,5,0)
881
naeeym2.Adornee = Character.Head
882
naeeym2.Name = "TalkingBillBoard"
883
naeeym2.AlwaysOnTop = true
884
local tecks2 = Instance.new("TextLabel",naeeym2)
885
tecks2.BackgroundTransparency = 1
886
tecks2.BorderSizePixel = 0
887
tecks2.Text = ""
888
tecks2.Font = "SciFi"
889
tecks2.TextSize = 30
890
tecks2.TextStrokeTransparency = 1
891
tecks2.TextColor3 = SKILLTEXTCOLOR
892
tecks2.TextStrokeColor3 = Color3.new(27,42,53)
893
tecks2.Size = UDim2.new(1,0,0.5,0)
894
for i = 1,string.len(text),1 do
895
tecks2.Text = string.sub(text,1,i)
896
Swait()
897
end
898
wait(waitt)
899
coroutine.resume(coroutine.create(function()
900
	for i = 1, 10 do
901
		tecks2.TextTransparency = tecks2.TextTransparency + 0.1
902
		Swait()
903
	end
904
	naeeym2:Destroy()
905
end))
906
end)
907
chat()
908
end
909
910
--// Start Stuff for Banishing \\--
911
912
local TOBANISH = {}
913
914
function CastProperRay(StartPos, EndPos, Distance, Ignore)
915
	local DIRECTION = CF(StartPos,EndPos).lookVector
916
	return Raycast(StartPos, DIRECTION, Distance, Ignore)
917
end
918
919
function printbye(Name)
920
	local MESSAGES = {"You cannot struggle, ","Your existance is an insult, ","Fade, ","Your existance is not desired, ","You are not permitted here, ","You are not to decide your fate, ","Be gone, ","You are already dead, ","Your life is an anomaly, ","Don't dare to return, ","Why are you resisting, ","You cannot exist here, ","Why are you struggling, ","Your fate was already decided, ","Goodbye, ","You cannot ignore my command, ","You cannot resist my command, ","You already died, "}
921
	chatfunc(MESSAGES[MRANDOM(1,#MESSAGES)]..Name..".")	
922
end
923
924
function Banish(Foe)
925
	if Foe then
926
		coroutine.resume(coroutine.create(function()
927
			--if game.Players:FindFirstChild(Foe.Name) then
928
				table.insert(TOBANISH,Foe.Name)
929
				printbye(Foe.Name)
930
			--end
931
			Foe.Archivable = true
932
			local CLONE = Foe:Clone()
933
			Foe:Destroy()
934
			CLONE.Parent = Effects
935
			CLONE:BreakJoints()
936
			local MATERIALS = {"Glass","Neon"}
937
			for _, c in pairs(CLONE:GetDescendants()) do
938
				if c:IsA("BasePart") then
939
					if c.Name == "Torso" or c.Name == "UpperTorso" or c == CLONE.PrimaryPart then
940
 						CreateSound(340722848, c, 10, 1, false)
941
					end
942
					c.Anchored = true
943
					c.Transparency = c.Transparency + 0.2
944
					c.Material = MATERIALS[MRANDOM(1,2)]
945
					c.Color = C3(242,243,243)
946
					if c.ClassName == "MeshPart" then
947
						c.TextureID = ""
948
					end
949
					if c:FindFirstChildOfClass("SpecialMesh") then
950
						c:FindFirstChildOfClass("SpecialMesh").TextureId = ""
951
					end
952
					if c:FindFirstChildOfClass("Decal") then
953
						c:FindFirstChildOfClass("Decal"):remove()
954
					end
955
					c.Name = "Banished"
956
					c.CanCollide = false
957
				else
958
					c:remove()
959
				end
960
			end
961
			local A = false
962
			for i = 1, 35 do
963
				if A == false then
964
					A = true
965
				elseif A == true then
966
					A = false
967
				end
968
				for _, c in pairs(CLONE:GetDescendants()) do
969
					if c:IsA("BasePart") then
970
						c.Anchored = true
971
						c.Material = MATERIALS[MRANDOM(1,2)]
972
						c.Transparency = c.Transparency + 0.8/35
973
						if A == false then
974
							c.CFrame = c.CFrame*CF(MRANDOM(-45,45)/45,MRANDOM(-45,45)/45,MRANDOM(-45,45)/45)
975
						elseif A == true then
976
							c.CFrame = c.CFrame*CF(MRANDOM(-45,45)/45,MRANDOM(-45,45)/45,MRANDOM(-45,45)/45)						
977
						end
978
					end
979
				end
980
				Swait()
981
			end
982
			CLONE:remove()
983
		end))
984
	end
985
end
986
987
function BANNEAREST(POS,RANGE)
988
	for i,v in ipairs(workspace:GetChildren()) do
989
	local body = v:GetChildren()
990
		for part = 1, #body do
991
			if((body[part].ClassName == "Part" or body[part].ClassName == "MeshPart") and v ~= Character) then
992
				if(body[part].Position - POS).Magnitude < RANGE then
993
					if v:FindFirstChildOfClass("Humanoid") then
994
						Banish(v)
995
						if game.Players:FindFirstChild(v.Name) then
996
							local Value = IT("BoolValue",Delete)
997
							Value.Name = v.Name
998
						end
999
					end
1000
				end
1001
			end
1002
		end
1003
	end
1004
end
1005
1006
workspace.ChildAdded:connect(function(instance)
1007
    for BANISH = 1, #TOBANISH do
1008
		if TOBANISH[BANISH] ~= nil then
1009
			if instance.Name == TOBANISH[BANISH] then
1010
				coroutine.resume(coroutine.create(function()
1011
					printbye(instance.Name)
1012
					instance:ClearAllChildren()
1013
					Debris:AddItem(instance,0.0005)
1014
				end))
1015
			end
1016
		end
1017
	end
1018
end)
1019
1020
function SpawnTrail(FROM,TO,BIG)
1021
	local TRAIL = CreatePart(3, Effects, "Neon", 0, 0.5, "Really red", "Trail", VT(0,0,0))
1022
	MakeForm(TRAIL,"Cyl")
1023
	local DIST = (FROM - TO).Magnitude
1024
	if BIG == true then
1025
		TRAIL.Size = VT(10,DIST,10)
1026
	else
1027
		TRAIL.Size = VT(0.25,DIST,0.25)
1028
	end
1029
	TRAIL.CFrame = CF(FROM, TO) * CF(0, 0, -DIST/2) * ANGLES(RAD(90),RAD(0),RAD(0))
1030
	coroutine.resume(coroutine.create(function()
1031
		for i = 1, 5 do
1032
			Swait()
1033
			TRAIL.Transparency = TRAIL.Transparency + 0.1
1034
		end
1035
		TRAIL:remove()
1036
	end))
1037
end
1038
1039
function WACKYEFFECT(Table)
1040
	local TYPE = (Table.EffectType or "Sphere")
1041
	local SIZE = (Table.Size or VT(1,1,1))
1042
	local ENDSIZE = (Table.Size2 or VT(0,0,0))
1043
	local TRANSPARENCY = (Table.Transparency or 0)
1044
	local ENDTRANSPARENCY = (Table.Transparency2 or 1)
1045
	local CFRAME = (Table.CFrame or Torso.CFrame)
1046
	local MOVEDIRECTION = (Table.MoveToPos or nil)
1047
	local ROTATION1 = (Table.RotationX or 0)
1048
	local ROTATION2 = (Table.RotationY or 0)
1049
	local ROTATION3 = (Table.RotationZ or 0)
1050
	local MATERIAL = (Table.Material or "Neon")
1051
	local COLOR = (Table.Color or C3(242,243,243))
1052
	local TIME = (Table.Time or 45)
1053
	local SOUNDID = (Table.SoundID or nil)
1054
	local SOUNDPITCH = (Table.SoundPitch or nil)
1055
	local SOUNDVOLUME = (Table.SoundVolume or nil)
1056
	coroutine.resume(coroutine.create(function()
1057
		local PLAYSSOUND = false
1058
		local SOUND = nil
1059
		local EFFECT = CreatePart(3, Effects, MATERIAL, 0, TRANSPARENCY, BRICKC("Pearl"), "Effect", VT(1,1,1), true)
1060
		if SOUNDID ~= nil and SOUNDPITCH ~= nil and SOUNDVOLUME ~= nil then
1061
			PLAYSSOUND = true
1062
			SOUND = CreateSound(SOUNDID, EFFECT, SOUNDVOLUME, SOUNDPITCH, false)
1063
		end
1064
		EFFECT.Color = COLOR
1065
		local MSH = nil
1066
		if TYPE == "Sphere" then
1067
			MSH = CreateMesh("SpecialMesh", EFFECT, "Sphere", "", "", SIZE, VT(0,0,0))
1068
		elseif TYPE == "Block" then
1069
			MSH = IT("BlockMesh",EFFECT)
1070
			MSH.Scale = VT(SIZE.X,SIZE.X,SIZE.X)
1071
		elseif TYPE == "Wave" then
1072
			MSH = CreateMesh("SpecialMesh", EFFECT, "FileMesh", "20329976", "", SIZE, VT(0,0,-SIZE.X/8))
1073
		elseif TYPE == "Ring" then
1074
			MSH = CreateMesh("SpecialMesh", EFFECT, "FileMesh", "559831844", "", VT(SIZE.X,SIZE.X,0.1), VT(0,0,0))
1075
		elseif TYPE == "Slash" then
1076
			MSH = CreateMesh("SpecialMesh", EFFECT, "FileMesh", "662586858", "", VT(SIZE.X/10,0,SIZE.X/10), VT(0,0,0))
1077
		elseif TYPE == "Round Slash" then
1078
			MSH = CreateMesh("SpecialMesh", EFFECT, "FileMesh", "662585058", "", VT(SIZE.X/10,0,SIZE.X/10), VT(0,0,0))
1079
		elseif TYPE == "Swirl" then
1080
			MSH = CreateMesh("SpecialMesh", EFFECT, "FileMesh", "1051557", "", SIZE, VT(0,0,0))
1081
		elseif TYPE == "Skull" then
1082
			MSH = CreateMesh("SpecialMesh", EFFECT, "FileMesh", "4770583", "", SIZE, VT(0,0,0))
1083
		elseif TYPE == "Crystal" then
1084
			MSH = CreateMesh("SpecialMesh", EFFECT, "FileMesh", "9756362", "", SIZE, VT(0,0,0))
1085
		end
1086
		if MSH ~= nil then
1087
			local MOVESPEED = nil
1088
			if MOVEDIRECTION ~= nil then
1089
				MOVESPEED = (CFRAME.p - MOVEDIRECTION).Magnitude/TIME
1090
			end
1091
			local GROWTH = SIZE - ENDSIZE
1092
			local TRANS = TRANSPARENCY - ENDTRANSPARENCY
1093
			if TYPE == "Block" then
1094
				EFFECT.CFrame = CFRAME*ANGLES(RAD(MRANDOM(0,360)),RAD(MRANDOM(0,360)),RAD(MRANDOM(0,360)))
1095
			else
1096
				EFFECT.CFrame = CFRAME
1097
			end
1098
			for LOOP = 1, TIME+1 do
1099
				Swait()
1100
				MSH.Scale = MSH.Scale - GROWTH/TIME
1101
				if TYPE == "Wave" then
1102
					MSH.Offset = VT(0,0,-MSH.Scale.X/8)
1103
				end
1104
				EFFECT.Transparency = EFFECT.Transparency - TRANS/TIME
1105
				if TYPE == "Block" then
1106
					EFFECT.CFrame = CFRAME*ANGLES(RAD(MRANDOM(0,360)),RAD(MRANDOM(0,360)),RAD(MRANDOM(0,360)))
1107
				else
1108
					EFFECT.CFrame = EFFECT.CFrame*ANGLES(RAD(ROTATION1),RAD(ROTATION2),RAD(ROTATION3))
1109
				end
1110
				if MOVEDIRECTION ~= nil then
1111
					local ORI = EFFECT.Orientation
1112
					EFFECT.CFrame = CF(EFFECT.Position,MOVEDIRECTION)*CF(0,0,-MOVESPEED)
1113
					EFFECT.Orientation = ORI
1114
				end
1115
			end
1116
			if PLAYSSOUND == false then
1117
				EFFECT:remove()
1118
			else
1119
				SOUND.Stopped:Connect(function()
1120
					EFFECT:remove()
1121
				end)
1122
			end
1123
		else
1124
			if PLAYSSOUND == false then
1125
				EFFECT:remove()
1126
			else
1127
				repeat Swait() until SOUND.Playing == false
1128
				EFFECT:remove()
1129
			end
1130
		end
1131
	end))
1132
end
1133
1134
-- \\ End Stuff for Banishing //--
1135
1136
--//=================================\\
1137
--||	     WEAPON CREATION
1138
--\\=================================//
1139
local Particle = IT("ParticleEmitter",nil)
1140
Particle.Enabled = false
1141
Particle.Transparency = NumberSequence.new({NumberSequenceKeypoint.new(0,0.3),NumberSequenceKeypoint.new(0.3,0),NumberSequenceKeypoint.new(1,1)})
1142
Particle.LightEmission = 0.5
1143
Particle.Rate = 150
1144
Particle.ZOffset = 0.2
1145
Particle.Rotation = NumberRange.new(-180, 180)
1146
Particle.RotSpeed = NumberRange.new(-180, 180)
1147
Particle.Texture = "http://www.roblox.com/asset/?id=304437537"
1148
Particle.Color = ColorSequence.new(C3(27,42,53),C3(0,155,0),C3(255,255,0),C3(0,255,0),C3(0,255,255),C3(0,0,255),C3(191,0,255),C3(255,0,191))
1149
1150
--ParticleEmitter({Speed = 5, Drag = 0, Size1 = 1, Size2 = 5, Lifetime1 = 1, Lifetime2 = 1.5, Parent = Torso, Emit = 100, Offset = 360, Enabled = false})
1151
function ParticleEmitter(Table)
1152
	local PRTCL = Particle:Clone()
1153
	local Speed = Table.Speed or 5
1154
	local Drag = Table.Drag or 0
1155
	local Size1 = Table.Size1 or 1
1156
	local Size2 = Table.Size2 or 5
1157
	local Lifetime1 = Table.Lifetime1 or 1
1158
	local Lifetime2 = Table.Lifetime2 or 1.5
1159
	local Parent = Table.Parent or Torso
1160
	local Emit = Table.Emit or 100
1161
	local Offset = Table.Offset or 360
1162
	local Acel = Table.Acel or VT(0,0,0)
1163
	local Enabled = Table.Enabled or false
1164
	PRTCL.Parent = Parent
1165
	PRTCL.Size = NumberSequence.new(Size1,Size2)
1166
	PRTCL.Lifetime = NumberRange.new(Lifetime1,Lifetime2)
1167
	PRTCL.Speed = NumberRange.new(Speed)
1168
	PRTCL.VelocitySpread = Offset
1169
	PRTCL.Drag = Drag
1170
	PRTCL.Acceleration = Acel
1171
	if Enabled == false then
1172
		PRTCL:Emit(Emit)
1173
		Debris:AddItem(PRTCL,Lifetime2)
1174
	else
1175
		PRTCL.Enabled = true
1176
	end
1177
	return PRTCL
1178
end
1179
1180
1181
1182
local BODY = {}
1183
1184
for _, c in pairs(Character:GetDescendants()) do
1185
	if c:IsA("BasePart") and c.Name ~= "Handle" then
1186
		if c ~= RootPart and c ~= Torso and c ~= Head and c ~= RightArm and c ~= LeftArm and c ~= RightLeg and c ~= LeftLeg then
1187
			c.CustomPhysicalProperties = PhysicalProperties.new(0, 0, 0, 0, 0)
1188
		end
1189
		table.insert(BODY,{c,c.Parent,c.Material,c.Color,c.Transparency})
1190
	elseif c:IsA("JointInstance") then
1191
		table.insert(BODY,{c,c.Parent,nil,nil,nil})
1192
	end
1193
end
1194
1195
for e = 1, #BODY do
1196
	if BODY[e] ~= nil then
1197
		local STUFF = BODY[e]
1198
		local PART = STUFF[1]
1199
		local PARENT = STUFF[2]
1200
		local MATERIAL = STUFF[3]
1201
		local COLOR = STUFF[4]
1202
		local TRANSPARENCY = STUFF[5]
1203
		if PART.ClassName == "Part" and PART ~= RootPart then
1204
			PART.Material = MATERIAL
1205
			PART.Color = COLOR
1206
			PART.Transparency = TRANSPARENCY
1207
		end
1208
		PART.AncestryChanged:Connect(function()
1209
			PART.Parent = PARENT
1210
		end)
1211
	end
1212
end
1213
1214
function refit()
1215
	Character.Parent = workspace
1216
	for e = 1, #BODY do
1217
		if BODY[e] ~= nil then
1218
			local STUFF = BODY[e]
1219
			local PART = STUFF[1]
1220
			local PARENT = STUFF[2]
1221
			local MATERIAL = STUFF[3]
1222
			local COLOR = STUFF[4]
1223
			local TRANSPARENCY = STUFF[5]
1224
			if PART.ClassName == "Part" and PART ~= RootPart then
1225
				PART.Material = MATERIAL
1226
				PART.Color = COLOR
1227
				PART.Transparency = TRANSPARENCY
1228
			end
1229
			if PART.Parent ~= PARENT then
1230
				Humanoid:remove()
1231
				PART.Parent = PARENT
1232
				Humanoid = IT("Humanoid",Character)
1233
			end
1234
		end
1235
	end
1236
end
1237
1238
for _, c in pairs(Weapon:GetDescendants()) do
1239
	if c.ClassName == "Part" and c.Name ~= "Eye" and c.Parent ~= Effects and c.Parent.Parent ~= Effects then
1240
		c.Material = "Glass"
1241
		c.Color = C3(0,0,0)
1242
	elseif c.ClassName == "Part" and c.Name == "Eye" then
1243
		c.Color = C3(0,0,0)
1244
		c.Material = "Neon"
1245
	end
1246
end
1247
1248
for _, c in pairs(Weapon2:GetDescendants()) do
1249
	if c.ClassName == "Part" and c.Name ~= "Eye" and c.Parent ~= Effects and c.Parent.Parent ~= Effects then
1250
		c.Material = "Glass"
1251
		c.Color = C3(242,243,243)
1252
	elseif c.ClassName == "Part" and c.Name == "Eye" then
1253
		c.Color = C3(242,243,243)
1254
		c.Material = "Neon"
1255
	end
1256
end
1257
1258
Weapon.Parent = Character
1259
Weapon2.Parent = nil
1260
for _, c in pairs(Weapon:GetChildren()) do
1261
	if c.ClassName == "Part" then
1262
		c.CustomPhysicalProperties = PhysicalProperties.new(0, 0, 0, 0, 0)
1263
	end
1264
end
1265
1266
local SKILLTEXTCOLOR = C3(0,0,0)
1267
local SKILLFONT = "Antique"
1268
local SKILLTEXTSIZE = 7
1269
1270
Humanoid.Died:connect(function()
1271
	ATTACK = true
1272
end)
1273
1274
local SKILL1FRAME = CreateFrame(WEAPONGUI, 1, 2, UD2(0.1, 0, 0.90, 0), UD2(0.26, 0, 0.07, 0), C3(0,0,0), C3(0, 0, 0), "Skill 1 Frame")
1275
1276
local SKILL1TEXT = CreateLabel(SKILL1FRAME, "[Z]", SKILLTEXTCOLOR, SKILLTEXTSIZE, SKILLFONT, 0, 2, 0.7, "Text 1")
1277
1278
function printbye(Name)
1279
	local MESSAGES = {"You cannot struggle, ","Your existance is an insult, ","Fade, ","Your existance is not desired, ","You are not permitted here, ","You are not to decide your fate, ","Be gone, ","You are already dead, ","Your live is an anomaly, ","Don't dare to return, ","Why are you resisting, ","You cannot exist here, ","Why are you struggling, ","Your fate was already decided, ","Goodbye, ","You cannot ignore my command, ","You cannot resist my command, ","You already died, "}
1280
	warn(MESSAGES[MRANDOM(1,#MESSAGES)]..Name..".")	
1281
end
1282
1283
workspace.ChildAdded:connect(function(instance)
1284
    for BANISH = 1, #TOBANISH do
1285
		if TOBANISH[BANISH] ~= nil then
1286
			if instance.Name == TOBANISH[BANISH] then
1287
				coroutine.resume(coroutine.create(function()
1288
					printbye(instance.Name)
1289
					instance:ClearAllChildren()
1290
					Debris:AddItem(instance,0.0005)
1291
				end))
1292
			end
1293
		end
1294
	end
1295
end)
1296
--//=================================\\
1297
--||			DAMAGING
1298
--\\=================================//
1299
1300
function ApplyDamage(Humanoid,Damage,OneShot)
1301
	Damage = Damage * DAMAGEMULTIPLIER
1302
	local DEAD = false
1303
	if Humanoid.Health < 2000 and OneShot == false then
1304
		if Humanoid.Health - Damage > 0 then
1305
			Humanoid.Health = Humanoid.Health - Damage
1306
		else
1307
			Humanoid.Parent:BreakJoints()
1308
			DEAD = true
1309
		end
1310
	else
1311
		DEAD = true
1312
		Humanoid.Parent:BreakJoints()
1313
	end
1314
	if DEAD == true then
1315
		local PARTS = {}
1316
		for index, CHILD in pairs(Humanoid.Parent:GetChildren()) do
1317
			if CHILD:IsA("BasePart") then
1318
				table.insert(PARTS,CHILD)
1319
			end
1320
		end
1321
		coroutine.resume(coroutine.create(function()
1322
			wait(2)
1323
			repeat
1324
				Swait()
1325
				local PIECE = nil
1326
				if MRANDOM(1,5) == 1 then
1327
					for E = 1, #PARTS do
1328
						if MRANDOM(1,5) == 1 then
1329
							PIECE = PARTS[E]
1330
							table.remove(PARTS,E)
1331
							break
1332
						end
1333
					end
1334
				end
1335
				if PIECE ~= nil then
1336
					if PIECE.Name == "Head" then
1337
						WACKYEFFECT({Time = MRANDOM(10,30)*5, EffectType = "Box", Size = VT(PIECE.Size.Z,PIECE.Size.Y,PIECE.Size.Z), Size2 = (VT(PIECE.Size.Z,PIECE.Size.Y,PIECE.Size.Z))*MRANDOM(7,14)/10, Transparency = PIECE.Transparency, Transparency2 = 1, CFrame = PIECE.CFrame, MoveToPos = PIECE.Position+VT(0,MRANDOM(5,8)/1.5,0), RotationX = MRANDOM(-25,25)/35, RotationY = MRANDOM(-25,25)/35, RotationZ = MRANDOM(-25,25)/35, Material = "Neon", Color = C3(242,243,243), SoundID = 3264923, SoundPitch = MRANDOM(12,16)/10, SoundVolume = 2})
1338
					else
1339
						WACKYEFFECT({Time = MRANDOM(10,30)*5, EffectType = "Box", Size = PIECE.Size, Size2 = PIECE.Size*MRANDOM(7,14)/10, Transparency = PIECE.Transparency, Transparency2 = 1, CFrame = PIECE.CFrame, MoveToPos = PIECE.Position+VT(0,MRANDOM(5,8)/1.5,0), MRANDOM(-25,25)/35, RotationY = MRANDOM(-25,25)/35, RotationZ = MRANDOM(-25,25)/35, Material = "Neon", Color = C3(242,243,243), SoundID = 3264923, SoundPitch = MRANDOM(12,16)/10, SoundVolume = 2})
1340
					end
1341
					PIECE:remove()
1342
				end
1343
			until #PARTS == 0
1344
		end))
1345
	end
1346
end
1347
1348
1349
function ApplyDamage3(Humanoid,Damage,TorsoPart)
1350
	local defence = Instance.new("BoolValue",Humanoid.Parent)
1351
	defence.Name = ("HitBy"..Player.Name)
1352
	game:GetService("Debris"):AddItem(defence, 0.001)
1353
	Damage = Damage * DAMAGEMULTIPLIER
1354
	if Humanoid.Health ~= 0 then
1355
		local CritChance = MRANDOM(1,100)
1356
		if Damage > Humanoid.Health then
1357
			Damage = math.ceil(Humanoid.Health)
1358
			if Damage == 0 then
1359
				Damage = 0.1
1360
			end
1361
		end
1362
		Humanoid.Health = Humanoid.Health - Damage
1363
	end
1364
end
1365
1366
function ApplyDamage3(Humanoid,Damage,TorsoPart)
1367
	local defence = Instance.new("BoolValue",Humanoid.Parent)
1368
	defence.Name = ("HitBy"..Player.Name)
1369
	game:GetService("Debris"):AddItem(defence, 0.001)
1370
	Damage = Damage * DAMAGEMULTIPLIER
1371
	if Humanoid.Health ~= 0 then
1372
		local CritChance = MRANDOM(1,100)
1373
		if Damage > Humanoid.Health then
1374
			Damage = math.ceil(Humanoid.Health)
1375
			if Damage == 0 then
1376
				Damage = 0.1
1377
			end
1378
		end
1379
		Humanoid.Health = Humanoid.Health - Damage
1380
	end
1381
end
1382
1383
function ApplyAoE3(POSITION,RANGE,MINDMG,MAXDMG,FLING,INSTAKILL)
1384
	local CHILDREN = workspace:GetDescendants()
1385
	for index, CHILD in pairs(CHILDREN) do
1386
		if CHILD.ClassName == "Model" and CHILD ~= Character and CHILD.Parent ~= Effects then
1387
			local HUM = CHILD:FindFirstChildOfClass("Humanoid")
1388
			if HUM then
1389
				local TORSO = CHILD:FindFirstChild("Torso") or CHILD:FindFirstChild("UpperTorso")
1390
				if TORSO then
1391
					if (TORSO.Position - POSITION).Magnitude <= RANGE then
1392
						if INSTAKILL == true then
1393
							CHILD:BreakJoints()
1394
						else
1395
							local DMG = MRANDOM(MINDMG,MAXDMG)
1396
							ApplyDamage(HUM,DMG,TORSO)
1397
						end
1398
						if FLING > 0 then
1399
							for _, c in pairs(CHILD:GetChildren()) do
1400
								if c:IsA("BasePart") then
1401
									local bv = Instance.new("BodyVelocity") 
1402
									bv.maxForce = Vector3.new(1e9, 1e9, 1e9)
1403
									bv.velocity = CF(POSITION,TORSO.Position).lookVector*FLING
1404
									bv.Parent = c
1405
									Debris:AddItem(bv,0.05)
1406
								end
1407
							end
1408
						end
1409
					end
1410
				end
1411
			end
1412
		end
1413
	end
1414
end
1415
1416
function CameraEnshaking(Length, Intensity)
1417
	coroutine.resume(coroutine.create(function()
1418
		local intensity = 1 * Intensity
1419
		local rotM = 0.01 * Intensity
1420
		for i = 0, Length, 0.1 do
1421
			Swait()
1422
			intensity = intensity - 0.05 * Intensity / Length
1423
			rotM = rotM - 5.0E-4 * Intensity / Length
1424
			Humanoid.CameraOffset = Vector3.new(RAD(MRANDOM(-intensity, intensity)), RAD(MRANDOM(-intensity, intensity)), RAD(MRANDOM(-intensity, intensity)))
1425
			Cam.CFrame = Cam.CFrame * CF(RAD(MRANDOM(-intensity, intensity)), RAD(MRANDOM(-intensity, intensity)), RAD(MRANDOM(-intensity, intensity))) * EULER(RAD(MRANDOM(-intensity, intensity)) * rotM, RAD(MRANDOM(-intensity, intensity)) * rotM, RAD(MRANDOM(-intensity, intensity)) * rotM)
1426
		end
1427
		Humanoid.CameraOffset = Vector3.new(0, 0, 0)
1428
	end))
1429
end
1430
1431
function KillChildren(v)
1432
	v:BreakJoints()
1433
	for _, c in pairs(v:GetChildren()) do
1434
		if c:IsA("BasePart") then
1435
			if c.Transparency < 1 then
1436
				if c:FindFirstChildOfClass("Decal") then
1437
					c:FindFirstChildOfClass("Decal"):remove()
1438
				end
1439
				particles(c)
1440
				c.PE.Enabled = true
1441
				c.Parent = Effects
1442
				c.CanCollide = false
1443
				c.Material = "Neon"
1444
				c.Color = C3(242,243,243)
1445
				c.Transparency = 1
1446
				local grav = Instance.new("BodyPosition",c)
1447
				grav.P = 20000
1448
				grav.maxForce = Vector3.new(math.huge,math.huge,math.huge)
1449
				grav.position = c.Position + VT(MRANDOM(-5,5),MRANDOM(-5,5),MRANDOM(-5,5))
1450
				grav.Name = "GravityForce"
1451
				coroutine.resume(coroutine.create(function()
1452
					for i = 1, 20 do
1453
						Swait()
1454
						c.Transparency = c.Transparency + 1/20
1455
					end
1456
					c.PE.Enabled = false
1457
					Debris:AddItem(c,2)
1458
				end))
1459
			end
1460
		end
1461
	end
1462
end
1463
1464
function ApplyAoE(POSITION,RANGE)
1465
	local CHILDREN = workspace:GetDescendants()
1466
	for index, CHILD in pairs(CHILDREN) do
1467
		if CHILD.ClassName == "Model" and CHILD ~= Character then
1468
			local LISTED = false
1469
			for LIST = 1, #WHITELIST do
1470
				if WHITELIST[LIST] ~= nil then
1471
					if CHILD.Name == WHITELIST[LIST] then
1472
						LISTED = true
1473
					end
1474
				end
1475
			end
1476
			if LISTED == false then
1477
				local HUM = CHILD:FindFirstChildOfClass("Humanoid")
1478
				if HUM then
1479
					local TORSO = CHILD:FindFirstChild("Torso") or CHILD:FindFirstChild("UpperTorso")
1480
					if TORSO then
1481
						if (TORSO.Position - POSITION).Magnitude <= RANGE+TORSO.Size.Magnitude then
1482
							KillChildren(CHILD)
1483
						end
1484
					end
1485
				end
1486
			end
1487
		end
1488
	end
1489
end
1490
1491
function SpawnMeteor(POS,SIZE,ISDEBREE,ORIPOS)
1492
	coroutine.resume(coroutine.create(function()
1493
		local METEOR = IT("Model",Effects)
1494
		METEOR.Name = "Meteorite"
1495
		local CENTER = CreatePart(3, METEOR, "Granite", 0, 0, "Really black", "MeteorCenter", VT(5,5,5)*SIZE)
1496
		METEOR.PrimaryPart = CENTER
1497
		local PRT = CreatePart(3, METEOR, "Granite", 0, 0, "Really black", "MeteorCenter", VT(5,5,5)*SIZE)
1498
		PRT.CFrame = CENTER.CFrame*ANGLES(RAD(MRANDOM(0,360)),RAD(MRANDOM(0,360)),RAD(MRANDOM(0,360)))
1499
		for i = 1, 15 do
1500
			local FIRE = CreatePart(3, METEOR, "Neon", 0, 0, "Really red", "Fire", VT(5.1,1,5.1)*SIZE)
1501
			FIRE.CFrame = CENTER.CFrame*ANGLES(RAD(MRANDOM(0,360)),RAD(MRANDOM(0,360)),RAD(MRANDOM(0,360)))
1502
		end
1503
		if ISDEBREE ~= true then
1504
			METEOR:SetPrimaryPartCFrame(CF(POS) * ANGLES(RAD(MRANDOM(-15,15)), RAD(0), RAD(MRANDOM(-15,15)))*CF(0,500,0) * ANGLES(RAD(MRANDOM(0,360)),RAD(MRANDOM(0,360)),RAD(MRANDOM(0,360))))
1505
		else
1506
			METEOR:SetPrimaryPartCFrame(CF(ORIPOS,POS) * ANGLES(RAD(MRANDOM(0,360)),RAD(MRANDOM(0,360)),RAD(MRANDOM(0,360))))
1507
		end
1508
		local IMPACT = false
1509
		CreateSound(463593339, CENTER, 10, 0.6)
1510
		if SIZE >= 3.5 then
1511
			for i = 1, MRANDOM(3,7) do
1512
				SpawnMeteor(CF(POS) * ANGLES(RAD(0), RAD(MRANDOM(0,360)), RAD(0))*CF(0,0,SIZE*12).p,SIZE/MRANDOM(4,5),true,CENTER.CFrame*ANGLES(RAD(MRANDOM(0,360)),RAD(MRANDOM(0,360)),RAD(MRANDOM(0,360)))*CF(0,0,SIZE*15).p)
1513
			end
1514
		end
1515
		for i = 1, 200 do
1516
			Swait()
1517
			local HITFLOOR,HITPOS = Raycast(CENTER.Position, CF(CENTER.Position,POS).lookVector, 3, Character)
1518
			if HITFLOOR == nil then
1519
				local ORI = CENTER.Orientation
1520
				METEOR:SetPrimaryPartCFrame(CF(HITPOS) * ANGLES(RAD(MRANDOM(0,360)),RAD(MRANDOM(0,360)),RAD(MRANDOM(0,360))))
1521
			else
1522
				if HITFLOOR.Anchored == true then
1523
					CreateDebreeRing(HITFLOOR,HITPOS,30*SIZE,VT(6,6,6)*SIZE,5)
1524
					CreateFlyingDebree(HITFLOOR,CF(HITPOS),8,VT(4,4,4)*SIZE,5,175)
1525
				end
1526
				IMPACT = true
1527
				break
1528
			end
1529
		end
1530
		if IMPACT == true then
1531
			WACKYEFFECT({EffectType = "Block", Size = CENTER.Size, Size2 = VT(10,10,10)*4*SIZE, Transparency = 0, Transparency2 = 1, CFrame = CF(CENTER.Position), MoveToPos = nil, RotationX = 0, RotationY = 0, RotationZ = 0, Material = "Neon", Color = C3(245,205,48), SoundID = 130972023, SoundPitch = 1, SoundVolume = 5})
1532
			WACKYEFFECT({EffectType = "Block", Size = CENTER.Size, Size2 = VT(10,10,10)*3*SIZE, Transparency = 0, Transparency2 = 1, CFrame = CF(CENTER.Position), MoveToPos = nil, RotationX = 0, RotationY = 0, RotationZ = 0, Material = "Neon", Color = C3(245,205,48), SoundID = 201858144, SoundPitch = 1, SoundVolume = 5})
1533
			WACKYEFFECT({EffectType = "Sphere", Size = VT(SIZE*20,0,SIZE*20), Size2 = VT(0,SIZE*750,0), Transparency = 0, Transparency2 = 1, CFrame = CF(CENTER.Position), MoveToPos = nil, RotationX = 0, RotationY = 0, RotationZ = 0, Material = "Neon", Color = C3(245,205,48), SoundID = 130972023, SoundPitch = 1, SoundVolume = 5})
1534
			ApplyAoE(CENTER.Position,30*SIZE)
1535
		end
1536
		METEOR:remove()
1537
	end))
1538
end
1539
1540
function ApplyAoE4(POSITION,RANGE,BRUTAL)
1541
	local CHILDREN = workspace:GetDescendants()
1542
	for index, CHILD in pairs(CHILDREN) do
1543
		if CHILD.ClassName == "Model" and CHILD ~= Character then
1544
			local HUM = CHILD:FindFirstChildOfClass("Humanoid")
1545
			if HUM then
1546
				local TORSO = CHILD:FindFirstChild("Torso") or CHILD:FindFirstChild("UpperTorso")
1547
				if TORSO then
1548
					if (TORSO.Position - POSITION).Magnitude <= RANGE then
1549
						if BRUTAL == true then
1550
							Kill(CHILD)
1551
						else
1552
							CHILD:BreakJoints()
1553
						end
1554
					end
1555
				end
1556
			end
1557
		end
1558
	end
1559
end
1560
1561
function Kill(Char)
1562
	local NewCharacter = IT("Model",Effects)
1563
	NewCharacter.Name = "Ow im ded ;-;"
1564
	for _, c in pairs(Char:GetDescendants()) do
1565
		if c:IsA("BasePart") and c.Transparency == 0 then
1566
			c:BreakJoints()
1567
			c.Material = "Glass"
1568
			c.Color = C3(245,205,48)
1569
			c.CanCollide = true
1570
			c.Transparency = 0.3
1571
			if c:FindFirstChildOfClass("SpecialMesh") then
1572
				c:FindFirstChildOfClass("SpecialMesh").TextureId = ""
1573
			end
1574
			if c.Name == "Head" then
1575
				c:ClearAllChildren()
1576
				c.Size = VT(c.Size.Y,c.Size.Y,c.Size.Y)
1577
			end
1578
			if c.ClassName == "MeshPart" then
1579
				c.TextureID = ""
1580
			end
1581
			if c:FindFirstChildOfClass("BodyPosition") then
1582
				c:FindFirstChildOfClass("BodyPosition"):remove()
1583
			end
1584
			if c:FindFirstChildOfClass("ParticleEmitter") then
1585
				c:FindFirstChildOfClass("ParticleEmitter"):remove()
1586
			end
1587
			c.Parent = NewCharacter
1588
			c.Name = "DeadPart"
1589
			c.Velocity = VT(MRANDOM(-45,45),MRANDOM(-45,45),MRANDOM(-45,45))/15
1590
			c.RotVelocity = VT(MRANDOM(-45,45),MRANDOM(-15,85),MRANDOM(-45,45))
1591
		end
1592
	end
1593
	Char:remove()
1594
	Debris:AddItem(NewCharacter,5)
1595
end
1596
1597
function ApplyAoE(POSITION,RANGE,BRUTAL)
1598
	local CHILDREN = workspace:GetDescendants()
1599
	for index, CHILD in pairs(CHILDREN) do
1600
		if CHILD.ClassName == "Model" and CHILD ~= Character then
1601
			local HUM = CHILD:FindFirstChildOfClass("Humanoid")
1602
			if HUM then
1603
				local TORSO = CHILD:FindFirstChild("Torso") or CHILD:FindFirstChild("UpperTorso")
1604
				if TORSO then
1605
					if (TORSO.Position - POSITION).Magnitude <= RANGE then
1606
						if BRUTAL == true then
1607
							Kill(CHILD)
1608
						else
1609
							CHILD:BreakJoints()
1610
						end
1611
					end
1612
				end
1613
			end
1614
		end
1615
	end
1616
end
1617
1618
function ApplyAoE(POSITION,RANGE,BRUTAL)
1619
	local CHILDREN = workspace:GetDescendants()
1620
	for index, CHILD in pairs(CHILDREN) do
1621
		if CHILD.ClassName == "Model" and CHILD ~= Character then
1622
			local HUM = CHILD:FindFirstChildOfClass("Humanoid")
1623
			if HUM then
1624
				local TORSO = CHILD:FindFirstChild("Torso") or CHILD:FindFirstChild("UpperTorso")
1625
				if TORSO then
1626
					if (TORSO.Position - POSITION).Magnitude <= RANGE then
1627
						if BRUTAL == true then
1628
							Kill(CHILD)
1629
						else
1630
							CHILD:BreakJoints()
1631
						end
1632
					end
1633
				end
1634
			end
1635
		end
1636
	end
1637
end
1638
1639
function Banish(Foe)
1640
	if Foe then
1641
		coroutine.resume(coroutine.create(function()
1642
			--if game.Players:FindFirstChild(Foe.Name) then
1643
				table.insert(TOBANISH,Foe.Name)
1644
				printbye(Foe.Name)
1645
			--end
1646
			Foe.Archivable = true
1647
			local CLONE = Foe:Clone()
1648
			Foe:Destroy()
1649
			CLONE.Parent = Effects
1650
			CLONE:BreakJoints()
1651
			local MATERIALS = {"Glass","Neon"}
1652
			for _, c in pairs(CLONE:GetDescendants()) do
1653
				if c:IsA("BasePart") then
1654
					if c.Name == "Torso" or c.Name == "UpperTorso" or c == CLONE.PrimaryPart then
1655
 						CreateSound(138271815, c, 10, 1, false)
1656
					end
1657
					c.Anchored = true
1658
					c.Transparency = c.Transparency + 0.2
1659
					c.Material = MATERIALS[MRANDOM(1,2)]
1660
					c.Color = C3(245,205,48)
1661
					if c.ClassName == "MeshPart" then
1662
						c.TextureID = ""
1663
					end
1664
					if c:FindFirstChildOfClass("SpecialMesh") then
1665
						c:FindFirstChildOfClass("SpecialMesh").TextureId = ""
1666
					end
1667
					if c:FindFirstChildOfClass("Decal") then
1668
						c:FindFirstChildOfClass("Decal"):remove()
1669
					end
1670
					c.Name = "Banished"
1671
					c.CanCollide = false
1672
				else
1673
					c:remove()
1674
				end
1675
			end
1676
			local A = false
1677
			for i = 1, 35 do
1678
				if A == false then
1679
					A = true
1680
				elseif A == true then
1681
					A = false
1682
				end
1683
				for _, c in pairs(CLONE:GetDescendants()) do
1684
					if c:IsA("BasePart") then
1685
						c.Anchored = true
1686
						c.Material = MATERIALS[MRANDOM(1,2)]
1687
						c.Transparency = c.Transparency + 0.8/35
1688
						if A == false then
1689
							c.CFrame = c.CFrame*CF(MRANDOM(-45,45)/45,MRANDOM(-45,45)/45,MRANDOM(-45,45)/45)
1690
						elseif A == true then
1691
							c.CFrame = c.CFrame*CF(MRANDOM(-45,45)/45,MRANDOM(-45,45)/45,MRANDOM(-45,45)/45)						
1692
						end
1693
					end
1694
				end
1695
				Swait()
1696
			end
1697
			CLONE:remove()
1698
		end))
1699
	end
1700
end
1701
1702
1703
function ApplyAoE(POSITION,RANGE,ISBANISH)
1704
	local CHILDREN = workspace:GetDescendants()
1705
	for index, CHILD in pairs(CHILDREN) do
1706
		if CHILD.ClassName == "Model" and CHILD ~= Character then
1707
			local HUM = CHILD:FindFirstChildOfClass("Humanoid")
1708
			if HUM then
1709
				local TORSO = CHILD:FindFirstChild("Torso") or CHILD:FindFirstChild("UpperTorso")
1710
				if TORSO then
1711
					if (TORSO.Position - POSITION).Magnitude <= RANGE then
1712
						if ISBANISH == true then
1713
							Banish(CHILD)
1714
						else
1715
							if ISBANISH == "Gravity" then
1716
								HUM.PlatformStand = true
1717
								if TORSO:FindFirstChild("V3BanishForce"..Player.Name) then
1718
									local grav = Instance.new("BodyPosition",TORSO)
1719
									grav.D = 15
1720
									grav.P = 20000
1721
									grav.maxForce = Vector3.new(math.huge,math.huge,math.huge)
1722
									grav.position = TORSO.Position
1723
									grav.Name = "V3BanishForce"..Player.Name
1724
								else
1725
									TORSO:FindFirstChild("V3BanishForce"..Player.Name).position = TORSO.Position+VT(0,0.3,0)
1726
									TORSO.RotVelocity = VT(MRANDOM(-25,25),MRANDOM(-25,25),MRANDOM(-25,25))
1727
								end
1728
							else
1729
								HUM.PlatformStand = false
1730
							end
1731
						end
1732
					elseif ISBANISH == "Gravity" then
1733
						if TORSO:FindFirstChild("V3BanishForce"..Player.Name) then
1734
							TORSO:FindFirstChild("V3BanishForce"..Player.Name):remove()
1735
							HUM.PlatformStand = false
1736
						end
1737
					end
1738
				end
1739
			end
1740
		end
1741
	end
1742
end
1743
1744
function SpawnSmite(POS)
1745
	local HITFLOOR,HITPOS = Raycast(POS+VT(0,1,0), (CF(POS, POS + VT(0, -1, 0))).lookVector, 100, Character)
1746
	local EMITPOS = HITPOS
1747
	if HITFLOOR ~= nil then
1748
		if HITFLOOR.Parent:FindFirstChildOfClass("Humanoid") then
1749
			HITFLOOR,HITPOS = Raycast(POS+VT(0,1,0), (CF(POS, POS + VT(0, -1, 0))).lookVector, 100, HITFLOOR.Parent)
1750
			EMITPOS = HITPOS
1751
		elseif HITFLOOR.Parent.Parent:FindFirstChildOfClass("Humanoid") then
1752
			HITFLOOR,HITPOS = Raycast(POS+VT(0,1,0), (CF(POS, POS + VT(0, -1, 0))).lookVector, 100, HITFLOOR.Parent.Parent)
1753
			EMITPOS = HITPOS
1754
		end
1755
	end
1756
	if HITFLOOR ~= nil then
1757
		ApplyAoE(EMITPOS,10)
1758
		WACKYEFFECT({EffectType = "Sphere", Size = VT(0,100000,0), Size2 = VT(10,100000,10), Transparency = 0, Transparency2 = 1, CFrame = CF(EMITPOS) * ANGLES(RAD(MRANDOM(-15,15)), RAD(0), RAD(MRANDOM(-15,15))), MoveToPos = nil, RotationX = 0, RotationY = 0, RotationZ = 0, Material = "Neon", Color = C3(245,205,48), SoundID = 419011114, SoundPitch = 1, SoundVolume = 5})
1759
		WACKYEFFECT({EffectType = "Block", Size = VT(0,0,0), Size2 = VT(10,10,10)*2, Transparency = 0, Transparency2 = 1, CFrame = CF(EMITPOS), MoveToPos = nil, RotationX = 0, RotationY = 0, RotationZ = 0, Material = "Neon", Color = C3(245,205,48), SoundID = nil, SoundPitch = 1, SoundVolume = 5})
1760
		WACKYEFFECT({EffectType = "Block", Size = VT(0,0,0), Size2 = VT(10,10,10)*1.5, Transparency = 0, Transparency2 = 1, CFrame = CF(EMITPOS), MoveToPos = nil, RotationX = 0, RotationY = 0, RotationZ = 0, Material = "Neon", Color = C3(245,205,48), SoundID = nil, SoundPitch = 1, SoundVolume = 5})
1761
		for i = 1, 5 do
1762
			local TOPOS = CF(EMITPOS)*ANGLES(RAD(MRANDOM(0,360)),RAD(MRANDOM(0,360)),RAD(MRANDOM(0,360)))*CF(0,0,12)
1763
			WACKYEFFECT({EffectType = "Slash", Size = VT(0,0,0), Size2 = VT(0.2,0,0.2), Transparency = 0, Transparency2 = 1, CFrame = CF(EMITPOS,TOPOS.p) * ANGLES(RAD(90), RAD(0), RAD(0)), MoveToPos = TOPOS.p, RotationX = 0, RotationY = 0, RotationZ = 0, Material = "Neon", Color = C3(245,205,48), SoundID = 419011114, SoundPitch = 1, SoundVolume = 5})
1764
		end
1765
	end
1766
end
1767
1768
--//=================================\\
1769
--||	    TRANSFORMATIONS
1770
--\\=================================//
1771
1772
function Switch()
1773
	ATTACK = true
1774
	Rooted = true
1775
	if MODE == "GoodCop" then
1776
		CreateSound("649634100", Head, 10, 0.5)
1777
		for i = 0, 3, 0.1 / Animation_Speed do
1778
			Swait()
1779
			RootJoint.C0 = Clerp(RootJoint.C0, ROOTC0 * CF(0, 0, 0) * ANGLES(RAD(0), RAD(0), RAD(0)), 0.15 / Animation_Speed)
1780
			Neck.C0 = Clerp(Neck.C0, NECKC0 * CF(0, 0, 0) * ANGLES(RAD(0), RAD(0), RAD(0)), 0.15 / Animation_Speed)
1781
			RightShoulder.C0 = Clerp(RightShoulder.C0, CF(1.5, 0.5, 0) * ANGLES(RAD(0), RAD(0), RAD(12)) * RIGHTSHOULDERC0, 0.15 / Animation_Speed)
1782
			LeftShoulder.C0 = Clerp(LeftShoulder.C0, CF(-1.5, 0.5, 0) * ANGLES(RAD(0), RAD(0), RAD(-12)) * LEFTSHOULDERC0, 0.15 / Animation_Speed)
1783
			RightHip.C0 = Clerp(RightHip.C0, CF(1, -1, 0) * ANGLES(RAD(0), RAD(90), RAD(0)) * ANGLES(RAD(-8), RAD(0), RAD(0)), 0.15 / Animation_Speed)
1784
			LeftHip.C0 = Clerp(LeftHip.C0, CF(-1, -1, 0) * ANGLES(RAD(0), RAD(-90), RAD(0)) * ANGLES(RAD(-8), RAD(0), RAD(0)), 0.15 / Animation_Speed)
1785
		end
1786
		CreateSound("289842971", RightArm, 10, 1)
1787
		for i = 0, 6, 0.1 / Animation_Speed do
1788
			Swait()
1789
			RootJoint.C0 = Clerp(RootJoint.C0, ROOTC0 * CF(0, 0, -1.5) * ANGLES(RAD(0), RAD(-5), RAD(0)), 0.5 / Animation_Speed)
1790
			Neck.C0 = Clerp(Neck.C0, NECKC0 * CF(0, 0, 0) * ANGLES(RAD(15), RAD(0), RAD(0)), 0.15 / Animation_Speed)
1791
			RightShoulder.C0 = Clerp(RightShoulder.C0, CF(1.5, 0, -0.3) * ANGLES(RAD(0), RAD(0), RAD(8)) * RIGHTSHOULDERC0, 1 / Animation_Speed)
1792
			LeftShoulder.C0 = Clerp(LeftShoulder.C0, CF(-1.5, 0.5, 0) * ANGLES(RAD(0), RAD(0), RAD(-12)) * LEFTSHOULDERC0, 0.5 / Animation_Speed)
1793
			RightHip.C0 = Clerp(RightHip.C0, CF(1, 0.5, -0.75) * ANGLES(RAD(0), RAD(90), RAD(0)) * ANGLES(RAD(-5), RAD(0), RAD(0)), 0.5 / Animation_Speed)
1794
			LeftHip.C0 = Clerp(LeftHip.C0, CF(-1, -1, -0.4) * ANGLES(RAD(0), RAD(-90), RAD(0)) * ANGLES(RAD(-5), RAD(0), RAD(90)), 0.5 / Animation_Speed)
1795
		end
1796
Weapon.Parent = nil
1797
Weapon2.Parent = Character
1798
		for i = 0, 1, 0.1 / Animation_Speed do
1799
			Swait()
1800
			RootJoint.C0 = Clerp(RootJoint.C0, ROOTC0 * CF(0, 0, -1.5) * ANGLES(RAD(0), RAD(5), RAD(0)), 0.5 / Animation_Speed)
1801
			Neck.C0 = Clerp(Neck.C0, NECKC0 * CF(0, 0, 0) * ANGLES(RAD(15), RAD(0), RAD(0)), 0.15 / Animation_Speed)
1802
			RightShoulder.C0 = Clerp(RightShoulder.C0, CF(1.5, 1.25, -0.3) * ANGLES(RAD(0), RAD(0), RAD(0)) * RIGHTSHOULDERC0, 0.5 / Animation_Speed)
1803
			LeftShoulder.C0 = Clerp(LeftShoulder.C0, CF(-1.5, 0.5, 0) * ANGLES(RAD(0), RAD(0), RAD(-12)) * LEFTSHOULDERC0, 0.5 / Animation_Speed)
1804
			RightHip.C0 = Clerp(RightHip.C0, CF(1, 0.5, -0.75) * ANGLES(RAD(0), RAD(90), RAD(0)) * ANGLES(RAD(5), RAD(0), RAD(0)), 0.5 / Animation_Speed)
1805
			LeftHip.C0 = Clerp(LeftHip.C0, CF(-1, -1, -0.4) * ANGLES(RAD(0), RAD(-90), RAD(0)) * ANGLES(RAD(5), RAD(0), RAD(90)), 0.5 / Animation_Speed)
1806
		end
1807
		for i=0, 0.6, 0.1 / Animation_Speed do
1808
			Swait()
1809
			RootJoint.C0 = Clerp(RootJoint.C0, ROOTC0 * CF(0, 0, -1 + 0.1 * COS(SINE / 24)) * ANGLES(RAD(45), RAD(0), RAD(0)), 0.2 / Animation_Speed*3)
1810
			Neck.C0 = Clerp(Neck.C0, NECKC0 * CF(0, 0, 0 + ((1) - 1)) * ANGLES(RAD(25 + MRANDOM(-5,5) - 4 * COS(SINE / 12)), RAD(MRANDOM(-5,5)), RAD(15)), 1 / Animation_Speed)
1811
			if MRANDOM(1,7) == 1 then
1812
				Neck.C0 = Clerp(Neck.C0, NECKC0 * CF(0, 0, 0 + ((1) - 1)) * ANGLES(RAD(0 + MRANDOM(-25,25) - 4 * COS(SINE / 12)), RAD(MRANDOM(-25,25)), RAD(0)), 1.5 / Animation_Speed)
1813
			end					
1814
			RightShoulder.C0 = Clerp(RightShoulder.C0, CF(1.5, 0.35, 0) * ANGLES(RAD(90), RAD(25), RAD(45)) * RIGHTSHOULDERC0, 0.15 / Animation_Speed)
1815
			LeftShoulder.C0 = Clerp(LeftShoulder.C0, CF(-1.5 * Player_Size, 0.5 * Player_Size, -0.1 * Player_Size) * ANGLES(RAD(95), RAD(25), RAD(45)) * LEFTSHOULDERC0, 0.15 / Animation_Speed)
1816
			RightHip.C0 = Clerp(RightHip.C0, CF(1, -0.3 - 0.1 * COS(SINE / 24), -1 - 0.1 * COS(SINE / 24)) * ANGLES(RAD(0), RAD(90), RAD(0)) * ANGLES(RAD(0), RAD(0), RAD(-20)), 0.2 / Animation_Speed)
1817
			LeftHip.C0 = Clerp(LeftHip.C0, CF(-1.2, 0.2 - 0.1 * COS(SINE / 24), -0.4 - 0.1 * COS(SINE / 24)) * ANGLES(RAD(45), RAD(-70), RAD(0)) * ANGLES(RAD(0), RAD(0), RAD(10)), 0.2 / Animation_Speed)
1818
		end
1819
		MODE = "BadCop"
1820
                tecks2.Text = "Skid Gun"
1821
                sick.SoundId = "rbxassetid://212675193"
1822
                sick.TimePosition = 0
1823
	elseif MODE == "BadCop" then
1824
		CreateSound(147722227, Torso, 4, 1.3, false)
1825
		for i=0, 0.3, 0.1 / Animation_Speed do
1826
			Swait()
1827
			RootJoint.C0 = Clerp(RootJoint.C0,ROOTC0 * CF(0, 0, 0 + 0.05 * COS(SINE / 12)) * ANGLES(RAD(0), RAD(0), RAD(0)), 1 / Animation_Speed)
1828
			Neck.C0 = Clerp(Neck.C0, NECKC0 * CF(0, 0, 0 + ((1) - 1)) * ANGLES(RAD(35), RAD(0), RAD(0)), 1 / Animation_Speed)
1829
			RightShoulder.C0 = Clerp(RightShoulder.C0, CF(1.4, 0.75, -0.3) * ANGLES(RAD(0), RAD(-45), RAD(12)) * ANGLES(RAD(125 - 2.5 * COS(SINE / 12) + 2.5 * SIN(SINE / 12)), RAD(0), RAD(0)) * RIGHTSHOULDERC0, 2.5 / Animation_Speed)
1830
			LeftShoulder.C0 = Clerp(LeftShoulder.C0, CF(-1.5, 0.5, 0) * ANGLES(RAD(0), RAD(0), RAD(-25)) * LEFTSHOULDERC0, 1 / Animation_Speed)
1831
			RightHip.C0 = Clerp(RightHip.C0, CF(1, -1 - 0.05 * COS(SINE / 12), -0.01) * ANGLES(RAD(0), RAD(83), RAD(0)) * ANGLES(RAD(0), RAD(0), RAD(0)), 1 / Animation_Speed)
1832
			LeftHip.C0 = Clerp(LeftHip.C0, CF(-1, -1 - 0.05 * COS(SINE / 12), -0.01) * ANGLES(RAD(0), RAD(-83), RAD(0)) * ANGLES(RAD(0), RAD(0), RAD(0)), 1 / Animation_Speed)
1833
		end
1834
		MODE = "GoodCop"
1835
Weapon.Parent = Character
1836
Weapon2.Parent = nil
1837
                tecks2.Text = "Final Gun"
1838
                sick.SoundId = "rbxassetid://3018974408"
1839
                sick.TimePosition = 22
1840
	end
1841
	ATTACK = false
1842
	Rooted = false
1843
end
1844
--//=================================\\
1845
--||	ATTACK FUNCTIONS AND STUFF
1846
--\\=================================//
1847
1848
function Intro()
1849
	ATTACK = true
1850
	Rooted = true
1851
	repeat 
1852
		Swait() 
1853
		Neck.C0 = Clerp(Neck.C0, NECKC0 * CF(0, 0, 0 + ((1) - 1)) * ANGLES(RAD(15 - 2.5 * SIN(SINE / 12)), RAD(0), RAD(0)), 0.15 / Animation_Speed)
1854
		RightShoulder.C0 = Clerp(RightShoulder.C0, CF(1, 0.5, 0.5) * ANGLES(RAD(-3.5 * COS(SINE / 12)), RAD(-45), RAD(12)) * ANGLES(RAD(-45 - 2.5 * COS(SINE / 12) + 2.5 * SIN(SINE / 12)), RAD(0), RAD(0)) * RIGHTSHOULDERC0, 0.15 / Animation_Speed)
1855
		RootJoint.C0 = Clerp(RootJoint.C0,ROOTC0 * CF(0, 0, 0 + 0.1 * COS(SINE / 12)) * ANGLES(RAD(0), RAD(0), RAD(0)), 0.8 / Animation_Speed)
1856
		LeftShoulder.C0 = Clerp(LeftShoulder.C0, CF(-1, 0.5, 0.5) * ANGLES(RAD(0), RAD(45), RAD(-12)) * ANGLES(RAD(-45 - 2.5 * COS(SINE / 12) + 2.5 * SIN(SINE / 12)), RAD(0), RAD(0)) * LEFTSHOULDERC0, 0.15 / Animation_Speed)
1857
		RightHip.C0 = Clerp(RightHip.C0, CF(1, -1 - 0.1 * COS(SINE / 12), -0.01) * ANGLES(RAD(0), RAD(65), RAD(0)) * ANGLES(RAD(-8), RAD(0), RAD(2.5 * COS(SINE / 12))), 0.8 / Animation_Speed)
1858
		LeftHip.C0 = Clerp(LeftHip.C0, CF(-1, -1 - 0.1 * COS(SINE / 12), -0.01) * ANGLES(RAD(0), RAD(-65), RAD(0)) * ANGLES(RAD(-8), RAD(5), RAD(15-2.5 * COS(SINE / 12))), 0.8 / Animation_Speed)
1859
	until sick.TimePosition > 1
1860
	repeat 
1861
		Swait()
1862
		RootJoint.C0 = Clerp(RootJoint.C0,ROOTC0 * CF(0, 0 - 0.05 * COS(SINE / 12), 0 + 0.05 * COS(SINE / 12)) * ANGLES(RAD(-2 + 2 * COS(SINE / 12)), RAD(0), RAD(0)), 0.15 / Animation_Speed)
1863
		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)
1864
		RightShoulder.C0 = Clerp(RightShoulder.C0, CF(1.5, 0.5, 0) * ANGLES(RAD(0), RAD(-15), RAD(5 + 1 * COS(SINE / 12))) * RIGHTSHOULDERC0, 0.15 / Animation_Speed)
1865
		LeftShoulder.C0 = Clerp(LeftShoulder.C0, CF(-1.5, 0.5, 0) * ANGLES(RAD(0), RAD(15), RAD(-5 - 1 * COS(SINE / 12))) * LEFTSHOULDERC0, 0.15 / Animation_Speed)
1866
		RightHip.C0 = Clerp(RightHip.C0, CF(1, -1 - 0.05 * COS(SINE / 12), -0.01) * ANGLES(RAD(-2 + 2 * COS(SINE / 12)), RAD(74), RAD(0)) * ANGLES(RAD(-2), RAD(0), RAD(0)), 0.15 / Animation_Speed)
1867
		LeftHip.C0 = Clerp(LeftHip.C0, CF(-1, -1 - 0.05 * COS(SINE / 12), -0.01) * ANGLES(RAD(-2 + 2 * COS(SINE / 12)), RAD(-74), RAD(0)) * ANGLES(RAD(-2), RAD(0), RAD(0)), 0.15 / Animation_Speed)
1868
	until sick.TimePosition > 1
1869
	repeat 
1870
		Swait() 
1871
		RootJoint.C0 = Clerp(RootJoint.C0,ROOTC0 * CF(0, 0, 0) * ANGLES(RAD(0), RAD(0), RAD(0)), 0.5 / Animation_Speed)
1872
		Neck.C0 = Clerp(Neck.C0, NECKC0 * CF(0, 0, 0 + ((1) - 1)) * ANGLES(RAD(0), RAD(0), RAD(0)), 0.15 / Animation_Speed)
1873
		RightShoulder.C0 = Clerp(RightShoulder.C0, CF(1.5, 0.5, 0) * ANGLES(RAD(90), RAD(0), RAD(-12)) * RIGHTSHOULDERC0, 0.15 / Animation_Speed)
1874
		LeftShoulder.C0 = Clerp(LeftShoulder.C0, CF(-1.5, 0.5, 0) * ANGLES(RAD(0), RAD(0), RAD(-12)) * LEFTSHOULDERC0, 0.15 / Animation_Speed)
1875
		RightHip.C0 = Clerp(RightHip.C0, CF(1, -1, -0.01) * ANGLES(RAD(0), RAD(90), RAD(0)) * ANGLES(RAD(-8), RAD(0), RAD(0)), 0.15 / Animation_Speed)
1876
		LeftHip.C0 = Clerp(LeftHip.C0, CF(-1, -1, -0.01) * ANGLES(RAD(0), RAD(-90), RAD(0)) * ANGLES(RAD(-8), RAD(0), RAD(0)), 0.15 / Animation_Speed)
1877
	until sick.TimePosition > 1
1878
	tecks2.TextTransparency = 0
1879
	for i = 1, 100 do
1880
		Swait()
1881
1882
1883
	end
1884
	TRANSFORMED = true
1885
	ATTACK = false
1886
	Rooted = false
1887
end
1888
1889
function Shot1()
1890
	ATTACK = true
1891
	Rooted = false
1892
	for i=0, 0.4, 0.05 / Animation_Speed do
1893
		Swait()
1894
		turnto(Mouse.Hit.p)
1895
		RootJoint.C0 = Clerp(RootJoint.C0,ROOTC0 * CF(0, 0, 0) * ANGLES(RAD(0), RAD(0), RAD(60)), 0.5 / Animation_Speed)
1896
		Neck.C0 = Clerp(Neck.C0, NECKC0 * CF(0, 0, 0) * ANGLES(RAD(0), RAD(0), RAD(-90)), 0.5 / Animation_Speed)
1897
		RightShoulder.C0 = Clerp(RightShoulder.C0, CF(1.5, 0.5, 0) * ANGLES(RAD(90), RAD(0), RAD(60)) * RIGHTSHOULDERC0, 0.5 / Animation_Speed)
1898
		LeftShoulder.C0 = Clerp(LeftShoulder.C0, CF(-1.5, 0.6, -0.4) * ANGLES(RAD(0), RAD(0), RAD(-20)) * LEFTSHOULDERC0, 0.5 / Animation_Speed)
1899
		RightHip.C0 = Clerp(RightHip.C0, CF(1, -1, 0) * ANGLES(RAD(0), RAD(90), RAD(0)) * ANGLES(RAD(-8), RAD(0), RAD(0)), 0.5 / Animation_Speed)
1900
		LeftHip.C0 = Clerp(LeftHip.C0, CF(-1, -1, 0) * ANGLES(RAD(0), RAD(-90), RAD(0)) * ANGLES(RAD(-8), RAD(0), RAD(0)), 0.5 / Animation_Speed)
1901
	end
1902
	repeat
1903
		for i=0, 0.2, 0.05 / Animation_Speed do
1904
			Swait()
1905
			turnto(Mouse.Hit.p)
1906
			RootJoint.C0 = Clerp(RootJoint.C0,ROOTC0 * CF(0, 0, 0) * ANGLES(RAD(0), RAD(0), RAD(60)), 0.5 / Animation_Speed)
1907
			Neck.C0 = Clerp(Neck.C0, NECKC0 * CF(0, 0, 0) * ANGLES(RAD(0), RAD(0), RAD(-60)), 0.5 / Animation_Speed)
1908
			RightShoulder.C0 = Clerp(RightShoulder.C0, CF(1.5, 0.5, 0) * ANGLES(RAD(90), RAD(0), RAD(60)) * RIGHTSHOULDERC0, 0.5 / Animation_Speed)
1909
			LeftShoulder.C0 = Clerp(LeftShoulder.C0, CF(-1.35, 0.6, -0.4) * ANGLES(RAD(170), RAD(0), RAD(20)) * LEFTSHOULDERC0, 0.5 / Animation_Speed)
1910
			RightHip.C0 = Clerp(RightHip.C0, CF(1, -1, 0) * ANGLES(RAD(0), RAD(90), RAD(0)) * ANGLES(RAD(-8), RAD(0), RAD(0)), 0.5 / Animation_Speed)
1911
			LeftHip.C0 = Clerp(LeftHip.C0, CF(-1, -1, 0) * ANGLES(RAD(0), RAD(-90), RAD(0)) * ANGLES(RAD(-8), RAD(0), RAD(0)), 0.5 / Animation_Speed)
1912
		end
1913
		local HIT,POS = CastProperRay(RightArm.Position, Mouse.Hit.p, 1000, Character)
1914-
		SpawnTrail(RHole.Position,POS)
1914+
		SpawnTrail(RightArm.Position,POS)
1915
		if HIT ~= nil then
1916
			if HIT.Parent ~= workspace and HIT.Parent.ClassName ~= "Folder" then
1917
				Banish(HIT.Parent)
1918
			end
1919
		end
1920-
		WACKYEFFECT({Time = 25, EffectType = "Wave", Size = VT(0.3,0,0.3), Size2 = VT(1,1.5,1), Transparency = 0, Transparency2 = 1, CFrame = RHole.CFrame, MoveToPos = RHole.CFrame*CF(0,0.5,0).p, RotationX = 0, RotationY = -15, RotationZ = 0, Material = "Neon", Color = C3(216,221,86), SoundID = nil, SoundPitch = nil, SoundVolume = nil})
1920+
		WACKYEFFECT({Time = 25, EffectType = "Wave", Size = VT(0.3,0,0.3), Size2 = VT(1,1.5,1), Transparency = 0, Transparency2 = 1, CFrame = RightArm.CFrame, MoveToPos = RightArm.CFrame*CF(0,0.5,0).p, RotationX = 0, RotationY = -15, RotationZ = 0, Material = "Neon", Color = C3(216,221,86), SoundID = nil, SoundPitch = nil, SoundVolume = nil})
1921-
		WACKYEFFECT({Time = 25, EffectType = "Wave", Size = VT(0.3,0,0.3), Size2 = VT(2,0.5,2), Transparency = 0, Transparency2 = 1, CFrame = RHole.CFrame, MoveToPos = nil, RotationX = 0, RotationY = 5, RotationZ = 0, Material = "Neon", Color = C3(216,221,86), SoundID = 1463566014, SoundPitch = MRANDOM(8,11)/10, SoundVolume = 8})
1921+
		WACKYEFFECT({Time = 25, EffectType = "Wave", Size = VT(0.3,0,0.3), Size2 = VT(2,0.5,2), Transparency = 0, Transparency2 = 1, CFrame = RightArm.CFrame, MoveToPos = nil, RotationX = 0, RotationY = 5, RotationZ = 0, Material = "Neon", Color = C3(216,221,86), SoundID = 1463566014, SoundPitch = MRANDOM(8,11)/10, SoundVolume = 8})
1922-
		WACKYEFFECT({Time = 25, EffectType = "Wave", Size = VT(0.3,0,0.3), Size2 = VT(2,0.5,2), Transparency = 0, Transparency2 = 1, CFrame = CF(POS,Hole.Position) * ANGLES(RAD(-90), RAD(0), RAD(0)), MoveToPos = nil, RotationX = 0, RotationY = -5, RotationZ = 0, Material = "Neon", Color = C3(216,221,86), SoundID = nil, SoundPitch = MRANDOM(8,11)/10, SoundVolume = 8})
1922+
		WACKYEFFECT({Time = 25, EffectType = "Wave", Size = VT(0.3,0,0.3), Size2 = VT(2,0.5,2), Transparency = 0, Transparency2 = 1, CFrame = CF(POS,RightArm.Position) * ANGLES(RAD(-90), RAD(0), RAD(0)), MoveToPos = nil, RotationX = 0, RotationY = -5, RotationZ = 0, Material = "Neon", Color = C3(216,221,86), SoundID = nil, SoundPitch = MRANDOM(8,11)/10, SoundVolume = 8})
1923-
		WACKYEFFECT({Time = 25, EffectType = "Wave", Size = VT(0.3,0,0.3), Size2 = VT(2,0.5,2), Transparency = 0, Transparency2 = 1, CFrame = CF(POS,Hole.Position) * ANGLES(RAD(-90), RAD(0), RAD(0)), MoveToPos = nil, RotationX = 0, RotationY = 5, RotationZ = 0, Material = "Neon", Color = C3(216,221,86), SoundID = nil, SoundPitch = MRANDOM(8,11)/10, SoundVolume = 8})
1923+
		WACKYEFFECT({Time = 25, EffectType = "Wave", Size = VT(0.3,0,0.3), Size2 = VT(2,0.5,2), Transparency = 0, Transparency2 = 1, CFrame = CF(POS,RightArm.Position) * ANGLES(RAD(-90), RAD(0), RAD(0)), MoveToPos = nil, RotationX = 0, RotationY = 5, RotationZ = 0, Material = "Neon", Color = C3(216,221,86), SoundID = nil, SoundPitch = MRANDOM(8,11)/10, SoundVolume = 8})
1924
	Humanoid.CameraOffset = VT(MRANDOM(-5,5)/2.5,MRANDOM(-5,5)/2.5,MRANDOM(-5,5)/2.5)/30
1925
		for i=0, 0.3, 0.05 / Animation_Speed do
1926
			Swait()
1927
			RootJoint.C0 = Clerp(RootJoint.C0,ROOTC0 * CF(0, 0, 0) * ANGLES(RAD(-5), RAD(0), RAD(60)), 0.5 / Animation_Speed)
1928
			Neck.C0 = Clerp(Neck.C0, NECKC0 * CF(0, 0, 0) * ANGLES(RAD(0), RAD(0), RAD(-60)), 0.25 / Animation_Speed)
1929
			RightShoulder.C0 = Clerp(RightShoulder.C0, CF(1.5, 0.5, 0) * ANGLES(RAD(90), RAD(15), RAD(60)) * RIGHTSHOULDERC0, 0.5 / Animation_Speed)
1930
			LeftShoulder.C0 = Clerp(LeftShoulder.C0, CF(-1.3, 0.6, -0.4) * ANGLES(RAD(172), RAD(0), RAD(20)) * LEFTSHOULDERC0, 0.5 / Animation_Speed)
1931
			RightHip.C0 = Clerp(RightHip.C0, CF(1, -1, 0) * ANGLES(RAD(0), RAD(90), RAD(0)) * ANGLES(RAD(-8), RAD(0), RAD(0)), 0.5 / Animation_Speed)
1932
			LeftHip.C0 = Clerp(LeftHip.C0, CF(-1, -1, 0) * ANGLES(RAD(0), RAD(-90), RAD(0)) * ANGLES(RAD(-8), RAD(0), RAD(0)), 0.5 / Animation_Speed)
1933
		end
1934
	until KEYHOLD == false
1935
	ATTACK = false
1936
	Rooted = false
1937
end
1938
1939
function Shot2()
1940
	ATTACK = true
1941
	Rooted = false
1942
	for i=0, 0.2, 0.05 / Animation_Speed do
1943
		Swait()
1944
		turnto(Mouse.Hit.p)
1945
		RootJoint.C0 = Clerp(RootJoint.C0,ROOTC0 * CF(0, 0, 0) * ANGLES(RAD(0), RAD(0), RAD(90)), 0.5 / Animation_Speed)
1946
		Neck.C0 = Clerp(Neck.C0, NECKC0 * CF(0, 0, 0) * ANGLES(RAD(0), RAD(0), RAD(-90)), 0.5 / Animation_Speed)
1947
		RightShoulder.C0 = Clerp(RightShoulder.C0, CF(1.5, 0.5, 0) * ANGLES(RAD(90), RAD(0), RAD(90)) * RIGHTSHOULDERC0, 0.5 / Animation_Speed)
1948
		LeftShoulder.C0 = Clerp(LeftShoulder.C0, CF(-1.5, 0.6, 0) * ANGLES(RAD(-45), RAD(0), RAD(45)) * LEFTSHOULDERC0, 0.5 / Animation_Speed)
1949
		RightHip.C0 = Clerp(RightHip.C0, CF(1, -1, 0) * ANGLES(RAD(0), RAD(90), RAD(0)) * ANGLES(RAD(-8), RAD(0), RAD(0)), 0.5 / Animation_Speed)
1950
		LeftHip.C0 = Clerp(LeftHip.C0, CF(-1, -1, 0) * ANGLES(RAD(0), RAD(-90), RAD(0)) * ANGLES(RAD(-8), RAD(0), RAD(0)), 0.5 / Animation_Speed)
1951
	end
1952
	repeat
1953
		for i=0, 0.2, 0.05 / Animation_Speed do
1954
			Swait()
1955
			turnto(Mouse.Hit.p)
1956
			RootJoint.C0 = Clerp(RootJoint.C0,ROOTC0 * CF(0, 0, 0) * ANGLES(RAD(0), RAD(0), RAD(90)), 0.5 / Animation_Speed)
1957
			Neck.C0 = Clerp(Neck.C0, NECKC0 * CF(0, 0, 0) * ANGLES(RAD(0), RAD(0), RAD(-90)), 0.5 / Animation_Speed)
1958
			RightShoulder.C0 = Clerp(RightShoulder.C0, CF(1.5, 0.5, 0) * ANGLES(RAD(90), RAD(0), RAD(90)) * RIGHTSHOULDERC0, 0.5 / Animation_Speed)
1959
			LeftShoulder.C0 = Clerp(LeftShoulder.C0, CF(-1.5, 0.6, 0) * ANGLES(RAD(-45), RAD(0), RAD(45)) * LEFTSHOULDERC0, 0.5 / Animation_Speed)
1960
			RightHip.C0 = Clerp(RightHip.C0, CF(1, -1, 0) * ANGLES(RAD(0), RAD(90), RAD(0)) * ANGLES(RAD(-8), RAD(0), RAD(0)), 0.5 / Animation_Speed)
1961
			LeftHip.C0 = Clerp(LeftHip.C0, CF(-1, -1, 0) * ANGLES(RAD(0), RAD(-90), RAD(0)) * ANGLES(RAD(-8), RAD(0), RAD(0)), 0.5 / Animation_Speed)
1962
		end
1963
		local HIT,POS = CastProperRay(RightArm.Position, Mouse.Hit.p, 1000, Character)
1964-
		SpawnTrail(Hole.Position,POS)
1964+
		SpawnTrail(RightArm.Position,POS)
1965
		if HIT ~= nil then
1966
			if HIT.Parent ~= workspace and HIT.Parent.ClassName ~= "Folder" then
1967
				Kill(HIT.Parent)
1968
			end
1969
		end
1970-
		WACKYEFFECT({Time = 25, EffectType = "Wave", Size = VT(0.3,0,0.3), Size2 = VT(1,1.5,1), Transparency = 0, Transparency2 = 1, CFrame = Hole.CFrame, MoveToPos = Hole.CFrame*CF(0,0.5,0).p, RotationX = 0, RotationY = -15, RotationZ = 0, Material = "Neon", Color = C3(216,221,86), SoundID = nil, SoundPitch = nil, SoundVolume = nil})
1970+
		WACKYEFFECT({Time = 25, EffectType = "Wave", Size = VT(0.3,0,0.3), Size2 = VT(1,1.5,1), Transparency = 0, Transparency2 = 1, CFrame = RightArm.CFrame, MoveToPos = RightArm.CFrame*CF(0,0.5,0).p, RotationX = 0, RotationY = -15, RotationZ = 0, Material = "Neon", Color = C3(216,221,86), SoundID = nil, SoundPitch = nil, SoundVolume = nil})
1971-
		WACKYEFFECT({Time = 25, EffectType = "Wave", Size = VT(0.3,0,0.3), Size2 = VT(2,0.5,2), Transparency = 0, Transparency2 = 1, CFrame = Hole.CFrame, MoveToPos = nil, RotationX = 0, RotationY = 5, RotationZ = 0, Material = "Neon", Color = C3(216,221,86), SoundID = 136523485, SoundPitch = MRANDOM(8,11)/10, SoundVolume = 8})
1971+
		WACKYEFFECT({Time = 25, EffectType = "Wave", Size = VT(0.3,0,0.3), Size2 = VT(2,0.5,2), Transparency = 0, Transparency2 = 1, CFrame = RightArm.CFrame, MoveToPos = nil, RotationX = 0, RotationY = 5, RotationZ = 0, Material = "Neon", Color = C3(216,221,86), SoundID = 136523485, SoundPitch = MRANDOM(8,11)/10, SoundVolume = 8})
1972-
		WACKYEFFECT({Time = 25, EffectType = "Wave", Size = VT(0.3,0,0.3), Size2 = VT(2,0.5,2), Transparency = 0, Transparency2 = 1, CFrame = CF(POS,Hole.Position) * ANGLES(RAD(-90), RAD(0), RAD(0)), MoveToPos = nil, RotationX = 0, RotationY = -5, RotationZ = 0, Material = "Neon", Color = C3(216,221,86), SoundID = nil, SoundPitch = MRANDOM(8,11)/10, SoundVolume = 8})
1972+
		WACKYEFFECT({Time = 25, EffectType = "Wave", Size = VT(0.3,0,0.3), Size2 = VT(2,0.5,2), Transparency = 0, Transparency2 = 1, CFrame = CF(POS,RightArm.Position) * ANGLES(RAD(-90), RAD(0), RAD(0)), MoveToPos = nil, RotationX = 0, RotationY = -5, RotationZ = 0, Material = "Neon", Color = C3(216,221,86), SoundID = nil, SoundPitch = MRANDOM(8,11)/10, SoundVolume = 8})
1973-
		WACKYEFFECT({Time = 25, EffectType = "Wave", Size = VT(0.3,0,0.3), Size2 = VT(2,0.5,2), Transparency = 0, Transparency2 = 1, CFrame = CF(POS,Hole.Position) * ANGLES(RAD(-90), RAD(0), RAD(0)), MoveToPos = nil, RotationX = 0, RotationY = 5, RotationZ = 0, Material = "Neon", Color = C3(216,221,86), SoundID = nil, SoundPitch = MRANDOM(8,11)/10, SoundVolume = 8})
1973+
		WACKYEFFECT({Time = 25, EffectType = "Wave", Size = VT(0.3,0,0.3), Size2 = VT(2,0.5,2), Transparency = 0, Transparency2 = 1, CFrame = CF(POS,RightArm.Position) * ANGLES(RAD(-90), RAD(0), RAD(0)), MoveToPos = nil, RotationX = 0, RotationY = 5, RotationZ = 0, Material = "Neon", Color = C3(216,221,86), SoundID = nil, SoundPitch = MRANDOM(8,11)/10, SoundVolume = 8})
1974
	Humanoid.CameraOffset = VT(MRANDOM(-5,5)/2.5,MRANDOM(-5,5)/2.5,MRANDOM(-5,5)/2.5)/30
1975
		for i=0, 0.2, 0.05 / Animation_Speed do
1976
			Swait()
1977
			RootJoint.C0 = Clerp(RootJoint.C0,ROOTC0 * CF(0, 0, 0) * ANGLES(RAD(0), RAD(0), RAD(90)), 0.5 / Animation_Speed)
1978
			Neck.C0 = Clerp(Neck.C0, NECKC0 * CF(0, 0, 0) * ANGLES(RAD(0), RAD(0), RAD(-90)), 0.25 / Animation_Speed)
1979
			RightShoulder.C0 = Clerp(RightShoulder.C0, CF(1.5, 0.5, 0) * ANGLES(RAD(90), RAD(15), RAD(90)) * RIGHTSHOULDERC0, 0.5 / Animation_Speed)
1980
			LeftShoulder.C0 = Clerp(LeftShoulder.C0, CF(-1.5, 0.6, 0) * ANGLES(RAD(-45), RAD(0), RAD(45)) * LEFTSHOULDERC0, 0.5 / Animation_Speed)
1981
			RightHip.C0 = Clerp(RightHip.C0, CF(1, -1, 0) * ANGLES(RAD(0), RAD(90), RAD(0)) * ANGLES(RAD(-8), RAD(0), RAD(0)), 0.5 / Animation_Speed)
1982
			LeftHip.C0 = Clerp(LeftHip.C0, CF(-1, -1, 0) * ANGLES(RAD(0), RAD(-90), RAD(0)) * ANGLES(RAD(-8), RAD(0), RAD(0)), 0.5 / Animation_Speed)
1983
		end
1984
	until KEYHOLD == false
1985
	ATTACK = false
1986
	Rooted = false
1987
end
1988
1989
function ScrewThis()
1990
	ATTACK = true
1991
	Rooted = true
1992
	Weapon.Parent = nil
1993
	sick.Volume = 0
1994
	        CreateSound("1238240145", Effects, 10, 0.9)
1995
		CreateSound(363808674, Effects, 10, 1, false)
1996
		for i=0, 0.6, 0.1 / Animation_Speed do
1997
			Swait()
1998
		RootJoint.C0 = Clerp(RootJoint.C0,ROOTC0 * CF(0, 0, 0 + 0.35 * COS(SINE / 2)) * ANGLES(RAD(0), RAD(0), RAD(0)), 0.15 / Animation_Speed)
1999
			Neck.C0 = Clerp(Neck.C0, NECKC0 * CF(0, 0, 0 + ((1) - 1)) * ANGLES(RAD(5), RAD(25), RAD(0)), 1 / Animation_Speed)
2000
			RightShoulder.C0 = Clerp(RightShoulder.C0, CF(1.25, 0.5, -0.5) * ANGLES(RAD(100), RAD(0), RAD(-50)) * RIGHTSHOULDERC0, 1 / Animation_Speed)
2001
			LeftShoulder.C0 = Clerp(LeftShoulder.C0, CF(-1.25, 0.35, -0.35) * ANGLES(RAD(70), RAD(0), RAD(60)) * LEFTSHOULDERC0, 1 / Animation_Speed)
2002
		RightHip.C0 = Clerp(RightHip.C0, CF(1, -1 - 0.35 * COS(SINE / 2), -0.01) * ANGLES(RAD(0), RAD(90), RAD(0)) * ANGLES(RAD(0), RAD(0), RAD(0)), 0.15 / Animation_Speed)
2003
		LeftHip.C0 = Clerp(LeftHip.C0, CF(-1, -1 - 0.35 * COS(SINE / 2), -0.01) * ANGLES(RAD(0), RAD(-90), RAD(0)) * ANGLES(RAD(0), RAD(0), RAD(0)), 0.15 / Animation_Speed)
2004
		end
2005
		CreateSound(363808674, Effects, 10, 1, false)
2006
		for i=0, 0.6, 0.1 / Animation_Speed do
2007
			Swait()
2008
		RootJoint.C0 = Clerp(RootJoint.C0,ROOTC0 * CF(0, 0, 0 + 0.35 * COS(SINE / 2)) * ANGLES(RAD(0), RAD(0), RAD(0)), 0.15 / Animation_Speed)
2009
			Neck.C0 = Clerp(Neck.C0, NECKC0 * CF(0, 0, 0 + ((1) - 1)) * ANGLES(RAD(5), RAD(-25), RAD(0)), 1 / Animation_Speed)
2010
			RightShoulder.C0 = Clerp(RightShoulder.C0, CF(1.25, 0.5, -0.5) * ANGLES(RAD(100), RAD(0), RAD(-90)) * RIGHTSHOULDERC0, 1 / Animation_Speed)
2011
			LeftShoulder.C0 = Clerp(LeftShoulder.C0, CF(-1.25, 0.35, -0.35) * ANGLES(RAD(70), RAD(0), RAD(90)) * LEFTSHOULDERC0, 1 / Animation_Speed)
2012
		RightHip.C0 = Clerp(RightHip.C0, CF(1, -1 - 0.35 * COS(SINE / 2), -0.01) * ANGLES(RAD(0), RAD(90), RAD(0)) * ANGLES(RAD(0), RAD(0), RAD(0)), 0.15 / Animation_Speed)
2013
		LeftHip.C0 = Clerp(LeftHip.C0, CF(-1, -1 - 0.35 * COS(SINE / 2), -0.01) * ANGLES(RAD(0), RAD(-90), RAD(0)) * ANGLES(RAD(0), RAD(0), RAD(0)), 0.15 / Animation_Speed)
2014
		end
2015
		CreateSound(363808674, Effects, 10, 1, false)
2016
		for i=0, 0.6, 0.1 / Animation_Speed do
2017
			Swait()
2018
		RootJoint.C0 = Clerp(RootJoint.C0,ROOTC0 * CF(0, 0, 0 + 0.35 * COS(SINE / 2)) * ANGLES(RAD(0), RAD(0), RAD(0)), 0.15 / Animation_Speed)
2019
			Neck.C0 = Clerp(Neck.C0, NECKC0 * CF(0, 0, 0 + ((1) - 1)) * ANGLES(RAD(5), RAD(25), RAD(0)), 1 / Animation_Speed)
2020
			RightShoulder.C0 = Clerp(RightShoulder.C0, CF(1.25, 0.5, -0.5) * ANGLES(RAD(100), RAD(0), RAD(-50)) * RIGHTSHOULDERC0, 1 / Animation_Speed)
2021
			LeftShoulder.C0 = Clerp(LeftShoulder.C0, CF(-1.25, 0.35, -0.35) * ANGLES(RAD(70), RAD(0), RAD(60)) * LEFTSHOULDERC0, 1 / Animation_Speed)
2022
		RightHip.C0 = Clerp(RightHip.C0, CF(1, -1 - 0.35 * COS(SINE / 2), -0.01) * ANGLES(RAD(0), RAD(90), RAD(0)) * ANGLES(RAD(0), RAD(0), RAD(0)), 0.15 / Animation_Speed)
2023
		LeftHip.C0 = Clerp(LeftHip.C0, CF(-1, -1 - 0.35 * COS(SINE / 2), -0.01) * ANGLES(RAD(0), RAD(-90), RAD(0)) * ANGLES(RAD(0), RAD(0), RAD(0)), 0.15 / Animation_Speed)
2024
		end
2025
		CreateSound(363808674, Effects, 10, 1, false)
2026
		for i=0, 0.6, 0.1 / Animation_Speed do
2027
			Swait()
2028
		RootJoint.C0 = Clerp(RootJoint.C0,ROOTC0 * CF(0, 0, 0 + 0.35 * COS(SINE / 2)) * ANGLES(RAD(0), RAD(0), RAD(0)), 0.15 / Animation_Speed)
2029
			Neck.C0 = Clerp(Neck.C0, NECKC0 * CF(0, 0, 0 + ((1) - 1)) * ANGLES(RAD(5), RAD(-25), RAD(0)), 1 / Animation_Speed)
2030
			RightShoulder.C0 = Clerp(RightShoulder.C0, CF(1.25, 0.5, -0.5) * ANGLES(RAD(100), RAD(0), RAD(-90)) * RIGHTSHOULDERC0, 1 / Animation_Speed)
2031
			LeftShoulder.C0 = Clerp(LeftShoulder.C0, CF(-1.25, 0.35, -0.35) * ANGLES(RAD(70), RAD(0), RAD(90)) * LEFTSHOULDERC0, 1 / Animation_Speed)
2032
		RightHip.C0 = Clerp(RightHip.C0, CF(1, -1 - 0.35 * COS(SINE / 2), -0.01) * ANGLES(RAD(0), RAD(90), RAD(0)) * ANGLES(RAD(0), RAD(0), RAD(0)), 0.15 / Animation_Speed)
2033
		LeftHip.C0 = Clerp(LeftHip.C0, CF(-1, -1 - 0.35 * COS(SINE / 2), -0.01) * ANGLES(RAD(0), RAD(-90), RAD(0)) * ANGLES(RAD(0), RAD(0), RAD(0)), 0.15 / Animation_Speed)
2034
		end
2035
		CreateSound(363808674, Effects, 10, 1, false)
2036
		for i=0, 0.6, 0.1 / Animation_Speed do
2037
			Swait()
2038
		RootJoint.C0 = Clerp(RootJoint.C0,ROOTC0 * CF(0, 0, 0 + 0.35 * COS(SINE / 2)) * ANGLES(RAD(0), RAD(0), RAD(0)), 0.15 / Animation_Speed)
2039
			Neck.C0 = Clerp(Neck.C0, NECKC0 * CF(0, 0, 0 + ((1) - 1)) * ANGLES(RAD(5), RAD(25), RAD(0)), 1 / Animation_Speed)
2040
			RightShoulder.C0 = Clerp(RightShoulder.C0, CF(1.25, 0.5, -0.5) * ANGLES(RAD(100), RAD(0), RAD(-50)) * RIGHTSHOULDERC0, 1 / Animation_Speed)
2041
			LeftShoulder.C0 = Clerp(LeftShoulder.C0, CF(-1.25, 0.35, -0.35) * ANGLES(RAD(70), RAD(0), RAD(60)) * LEFTSHOULDERC0, 1 / Animation_Speed)
2042
		RightHip.C0 = Clerp(RightHip.C0, CF(1, -1 - 0.35 * COS(SINE / 2), -0.01) * ANGLES(RAD(0), RAD(90), RAD(0)) * ANGLES(RAD(0), RAD(0), RAD(0)), 0.15 / Animation_Speed)
2043
		LeftHip.C0 = Clerp(LeftHip.C0, CF(-1, -1 - 0.35 * COS(SINE / 2), -0.01) * ANGLES(RAD(0), RAD(-90), RAD(0)) * ANGLES(RAD(0), RAD(0), RAD(0)), 0.15 / Animation_Speed)
2044
		end
2045
		CreateSound(363808674, Effects, 10, 1, false)
2046
		for i=0, 0.6, 0.1 / Animation_Speed do
2047
			Swait()
2048
		RootJoint.C0 = Clerp(RootJoint.C0,ROOTC0 * CF(0, 0, 0 + 0.35 * COS(SINE / 2)) * ANGLES(RAD(0), RAD(0), RAD(0)), 0.15 / Animation_Speed)
2049
			Neck.C0 = Clerp(Neck.C0, NECKC0 * CF(0, 0, 0 + ((1) - 1)) * ANGLES(RAD(5), RAD(-25), RAD(0)), 1 / Animation_Speed)
2050
			RightShoulder.C0 = Clerp(RightShoulder.C0, CF(1.25, 0.5, -0.5) * ANGLES(RAD(100), RAD(0), RAD(-90)) * RIGHTSHOULDERC0, 1 / Animation_Speed)
2051
			LeftShoulder.C0 = Clerp(LeftShoulder.C0, CF(-1.25, 0.35, -0.35) * ANGLES(RAD(70), RAD(0), RAD(90)) * LEFTSHOULDERC0, 1 / Animation_Speed)
2052
		RightHip.C0 = Clerp(RightHip.C0, CF(1, -1 - 0.35 * COS(SINE / 2), -0.01) * ANGLES(RAD(0), RAD(90), RAD(0)) * ANGLES(RAD(0), RAD(0), RAD(0)), 0.15 / Animation_Speed)
2053
		LeftHip.C0 = Clerp(LeftHip.C0, CF(-1, -1 - 0.35 * COS(SINE / 2), -0.01) * ANGLES(RAD(0), RAD(-90), RAD(0)) * ANGLES(RAD(0), RAD(0), RAD(0)), 0.15 / Animation_Speed)
2054
		end
2055
	Weapon.Parent = Character
2056
	sick.Volume = 2
2057
	ATTACK = false
2058
	Rooted = false
2059
end
2060
2061
function Taunt()
2062
	ATTACK = true
2063
	Rooted = true
2064
	local L = CreateSound(2162230624,Head,8,1.1,false)
2065
	L.EmitterSize = 25
2066
	for i = 1, 20 do
2067
		Swait()
2068
		RootJoint.C0 = Clerp(RootJoint.C0,ROOTC0 * CF(0, 0.1, -0.1) * ANGLES(RAD(-10), RAD(0), RAD(0)), 1 / Animation_Speed)
2069
		Neck.C0 = Clerp(Neck.C0, NECKC0 * CF(0, 0, 0 + ((1) - 1)) * ANGLES(RAD(-5), RAD(0), RAD(0)), 1 / Animation_Speed)
2070
		RightShoulder.C0 = Clerp(RightShoulder.C0, CF(1, 0.5, -0.5) * ANGLES(RAD(0), RAD(0), RAD(-110)) * ANGLES(RAD(20), RAD(0), RAD(0)) * RIGHTSHOULDERC0, 1 / Animation_Speed)
2071
		LeftShoulder.C0 = Clerp(LeftShoulder.C0, CF(-1, 0.3, -0.35) * ANGLES(RAD(0), RAD(0), RAD(80)) * ANGLES(RAD(20), RAD(0), RAD(0)) * LEFTSHOULDERC0, 1 / Animation_Speed)
2072
		RightHip.C0 = Clerp(RightHip.C0, CF(1, -1, 0) * ANGLES(RAD(-10), RAD(80), RAD(0)) * ANGLES(RAD(-3), RAD(0), RAD(0)), 1 / Animation_Speed)
2073
		LeftHip.C0 = Clerp(LeftHip.C0, CF(-1, -1, 0) * ANGLES(RAD(-10), RAD(-80), RAD(0)) * ANGLES(RAD(-3), RAD(0), RAD(0)), 1 / Animation_Speed)
2074
	end
2075
	for i = 1, 40 do
2076
		Swait()
2077
		RootJoint.C0 = Clerp(RootJoint.C0,ROOTC0 * CF(0, -0.17, -0.075 + 0.1 * SIN(i / 3)) * ANGLES(RAD(5), RAD(0), RAD(0)), 1 / Animation_Speed)
2078
		Neck.C0 = Clerp(Neck.C0, NECKC0 * CF(0, 0, 0 + ((1) - 1)) * ANGLES(RAD(-3), RAD(15 * SIN(i / 1.5)), RAD(0)), 1 / Animation_Speed)
2079
		RightShoulder.C0 = Clerp(RightShoulder.C0, CF(1.45, 0.6 - 0.1 * SIN(i / 3), 0) * ANGLES(RAD(15), RAD(-5), RAD(120)) * ANGLES(RAD(0), RAD(180), RAD(0)) * RIGHTSHOULDERC0, 1 / Animation_Speed)
2080
		LeftShoulder.C0 = Clerp(LeftShoulder.C0, CF(-1.45, 0.6 - 0.1 * SIN(i / 3), 0) * ANGLES(RAD(15), RAD(5), RAD(-120)) * ANGLES(RAD(0), RAD(180), RAD(0)) * LEFTSHOULDERC0, 1 / Animation_Speed)
2081
		RightHip.C0 = Clerp(RightHip.C0, CF(1, -1 - 0.1 * SIN(i / 3), 0) * ANGLES(RAD(5), RAD(80), RAD(0)) * ANGLES(RAD(-3), RAD(0), RAD(0)), 1 / Animation_Speed)
2082
		LeftHip.C0 = Clerp(LeftHip.C0, CF(-1, -1 - 0.1 * SIN(i / 3), 0) * ANGLES(RAD(5), RAD(-80), RAD(0)) * ANGLES(RAD(-3), RAD(0), RAD(0)), 1 / Animation_Speed)
2083
	end
2084
	for i = 1, 60 do
2085
		Swait()
2086
		RootJoint.C0 = Clerp(RootJoint.C0,ROOTC0 * CF(0, 0.1, -0.1) * ANGLES(RAD(-10), RAD(0), RAD(0)), 1 / Animation_Speed)
2087
		Neck.C0 = Clerp(Neck.C0, NECKC0 * CF(0, 0, 0 + ((1) - 1)) * ANGLES(RAD(-5), RAD(0), RAD(0)), 1 / Animation_Speed)
2088
		RightShoulder.C0 = Clerp(RightShoulder.C0, CF(1, 0.5, -0.5) * ANGLES(RAD(0), RAD(0), RAD(-110)) * ANGLES(RAD(20), RAD(0), RAD(0)) * RIGHTSHOULDERC0, 1 / Animation_Speed)
2089
		LeftShoulder.C0 = Clerp(LeftShoulder.C0, CF(-1, 0.3, -0.35) * ANGLES(RAD(0), RAD(0), RAD(80)) * ANGLES(RAD(20), RAD(0), RAD(0)) * LEFTSHOULDERC0, 1 / Animation_Speed)
2090
		RightHip.C0 = Clerp(RightHip.C0, CF(1, -1, 0) * ANGLES(RAD(-10), RAD(80), RAD(0)) * ANGLES(RAD(-3), RAD(0), RAD(0)), 1 / Animation_Speed)
2091
		LeftHip.C0 = Clerp(LeftHip.C0, CF(-1, -1, 0) * ANGLES(RAD(-10), RAD(-80), RAD(0)) * ANGLES(RAD(-3), RAD(0), RAD(0)), 1 / Animation_Speed)
2092
	end
2093
	for i = 1, 60 do
2094
		Swait()
2095
		RootJoint.C0 = Clerp(RootJoint.C0,ROOTC0 * CF(0, -0.17, -0.075 + 0.1 * SIN(i / 3)) * ANGLES(RAD(5), RAD(0), RAD(0)), 1 / Animation_Speed)
2096
		Neck.C0 = Clerp(Neck.C0, NECKC0 * CF(0, 0, 0 + ((1) - 1)) * ANGLES(RAD(-3), RAD(15 * SIN(i / 1.5)), RAD(0)), 1 / Animation_Speed)
2097
		RightShoulder.C0 = Clerp(RightShoulder.C0, CF(1.45, 0.6 - 0.1 * SIN(i / 3), 0) * ANGLES(RAD(15), RAD(-5), RAD(120)) * ANGLES(RAD(0), RAD(180), RAD(0)) * RIGHTSHOULDERC0, 1 / Animation_Speed)
2098
		LeftShoulder.C0 = Clerp(LeftShoulder.C0, CF(-1.45, 0.6 - 0.1 * SIN(i / 3), 0) * ANGLES(RAD(15), RAD(5), RAD(-120)) * ANGLES(RAD(0), RAD(180), RAD(0)) * LEFTSHOULDERC0, 1 / Animation_Speed)
2099
		RightHip.C0 = Clerp(RightHip.C0, CF(1, -1 - 0.1 * SIN(i / 3), 0) * ANGLES(RAD(5), RAD(80), RAD(0)) * ANGLES(RAD(-3), RAD(0), RAD(0)), 1 / Animation_Speed)
2100
		LeftHip.C0 = Clerp(LeftHip.C0, CF(-1, -1 - 0.1 * SIN(i / 3), 0) * ANGLES(RAD(5), RAD(-80), RAD(0)) * ANGLES(RAD(-3), RAD(0), RAD(0)), 1 / Animation_Speed)
2101
	end
2102
	for i = 1, 90 do
2103
		Swait()
2104
		RootJoint.C0 = Clerp(RootJoint.C0,ROOTC0 * CF(0, 0.1, -0.1) * ANGLES(RAD(-10), RAD(0), RAD(0)), 1 / Animation_Speed)
2105
		Neck.C0 = Clerp(Neck.C0, NECKC0 * CF(0, 0, 0 + ((1) - 1)) * ANGLES(RAD(-5), RAD(0), RAD(0)), 1 / Animation_Speed)
2106
		RightShoulder.C0 = Clerp(RightShoulder.C0, CF(1, 0.5, -0.5) * ANGLES(RAD(0), RAD(0), RAD(-110)) * ANGLES(RAD(20), RAD(0), RAD(0)) * RIGHTSHOULDERC0, 1 / Animation_Speed)
2107
		LeftShoulder.C0 = Clerp(LeftShoulder.C0, CF(-1, 0.3, -0.35) * ANGLES(RAD(0), RAD(0), RAD(80)) * ANGLES(RAD(20), RAD(0), RAD(0)) * LEFTSHOULDERC0, 1 / Animation_Speed)
2108
		RightHip.C0 = Clerp(RightHip.C0, CF(1, -1, 0) * ANGLES(RAD(-10), RAD(80), RAD(0)) * ANGLES(RAD(-3), RAD(0), RAD(0)), 1 / Animation_Speed)
2109
		LeftHip.C0 = Clerp(LeftHip.C0, CF(-1, -1, 0) * ANGLES(RAD(-10), RAD(-80), RAD(0)) * ANGLES(RAD(-3), RAD(0), RAD(0)), 1 / Animation_Speed)
2110
	end
2111
	for i = 1, 72 do
2112
		Swait()
2113
		RootJoint.C0 = Clerp(RootJoint.C0,ROOTC0 * CF(0, -0.17, -0.075 + 0.1 * SIN(i / 3)) * ANGLES(RAD(5), RAD(0), RAD(0)), 1 / Animation_Speed)
2114
		Neck.C0 = Clerp(Neck.C0, NECKC0 * CF(0, 0, 0 + ((1) - 1)) * ANGLES(RAD(-3), RAD(15 * SIN(i / 1.5)), RAD(0)), 1 / Animation_Speed)
2115
		RightShoulder.C0 = Clerp(RightShoulder.C0, CF(1.45, 0.6 - 0.1 * SIN(i / 3), 0) * ANGLES(RAD(15), RAD(-5), RAD(120)) * ANGLES(RAD(0), RAD(180), RAD(0)) * RIGHTSHOULDERC0, 1 / Animation_Speed)
2116
		LeftShoulder.C0 = Clerp(LeftShoulder.C0, CF(-1.45, 0.6 - 0.1 * SIN(i / 3), 0) * ANGLES(RAD(15), RAD(5), RAD(-120)) * ANGLES(RAD(0), RAD(180), RAD(0)) * LEFTSHOULDERC0, 1 / Animation_Speed)
2117
		RightHip.C0 = Clerp(RightHip.C0, CF(1, -1 - 0.1 * SIN(i / 3), 0) * ANGLES(RAD(5), RAD(80), RAD(0)) * ANGLES(RAD(-3), RAD(0), RAD(0)), 1 / Animation_Speed)
2118
		LeftHip.C0 = Clerp(LeftHip.C0, CF(-1, -1 - 0.1 * SIN(i / 3), 0) * ANGLES(RAD(5), RAD(-80), RAD(0)) * ANGLES(RAD(-3), RAD(0), RAD(0)), 1 / Animation_Speed)
2119
	end
2120
	for i = 1, 96 do
2121
		Swait()
2122
		RootJoint.C0 = Clerp(RootJoint.C0,ROOTC0 * CF(0, 0.1, -0.1) * ANGLES(RAD(-10), RAD(0), RAD(0)), 1 / Animation_Speed)
2123
		Neck.C0 = Clerp(Neck.C0, NECKC0 * CF(0, 0, 0 + ((1) - 1)) * ANGLES(RAD(-5), RAD(0), RAD(0)), 1 / Animation_Speed)
2124
		RightShoulder.C0 = Clerp(RightShoulder.C0, CF(1, 0.5, -0.5) * ANGLES(RAD(0), RAD(0), RAD(-110)) * ANGLES(RAD(20), RAD(0), RAD(0)) * RIGHTSHOULDERC0, 1 / Animation_Speed)
2125
		LeftShoulder.C0 = Clerp(LeftShoulder.C0, CF(-1, 0.3, -0.35) * ANGLES(RAD(0), RAD(0), RAD(80)) * ANGLES(RAD(20), RAD(0), RAD(0)) * LEFTSHOULDERC0, 1 / Animation_Speed)
2126
		RightHip.C0 = Clerp(RightHip.C0, CF(1, -1, 0) * ANGLES(RAD(-10), RAD(80), RAD(0)) * ANGLES(RAD(-3), RAD(0), RAD(0)), 1 / Animation_Speed)
2127
		LeftHip.C0 = Clerp(LeftHip.C0, CF(-1, -1, 0) * ANGLES(RAD(-10), RAD(-80), RAD(0)) * ANGLES(RAD(-3), RAD(0), RAD(0)), 1 / Animation_Speed)
2128
	end
2129
	for i = 1, 98 do
2130
		Swait()
2131
		RootJoint.C0 = Clerp(RootJoint.C0,ROOTC0 * CF(0, -0.17, -0.075 + 0.1 * SIN(i / 3)) * ANGLES(RAD(5), RAD(0), RAD(0)), 1 / Animation_Speed)
2132
		Neck.C0 = Clerp(Neck.C0, NECKC0 * CF(0, 0, 0 + ((1) - 1)) * ANGLES(RAD(-3), RAD(15 * SIN(i / 1.5)), RAD(0)), 1 / Animation_Speed)
2133
		RightShoulder.C0 = Clerp(RightShoulder.C0, CF(1.45, 0.6 - 0.1 * SIN(i / 3), 0) * ANGLES(RAD(15), RAD(-5), RAD(120)) * ANGLES(RAD(0), RAD(180), RAD(0)) * RIGHTSHOULDERC0, 1 / Animation_Speed)
2134
		LeftShoulder.C0 = Clerp(LeftShoulder.C0, CF(-1.45, 0.6 - 0.1 * SIN(i / 3), 0) * ANGLES(RAD(15), RAD(5), RAD(-120)) * ANGLES(RAD(0), RAD(180), RAD(0)) * LEFTSHOULDERC0, 1 / Animation_Speed)
2135
		RightHip.C0 = Clerp(RightHip.C0, CF(1, -1 - 0.1 * SIN(i / 3), 0) * ANGLES(RAD(5), RAD(80), RAD(0)) * ANGLES(RAD(-3), RAD(0), RAD(0)), 1 / Animation_Speed)
2136
		LeftHip.C0 = Clerp(LeftHip.C0, CF(-1, -1 - 0.1 * SIN(i / 3), 0) * ANGLES(RAD(5), RAD(-80), RAD(0)) * ANGLES(RAD(-3), RAD(0), RAD(0)), 1 / Animation_Speed)
2137
	end
2138
	ATTACK = false
2139
	Rooted = false
2140
end
2141
--//=================================\\
2142
--||	  ASSIGN THINGS TO KEYS
2143
--\\=================================//
2144
2145
function MouseDown(Mouse)
2146
	if ATTACK == false then
2147
		
2148
	end
2149
end
2150
2151
function MouseUp(Mouse)
2152
HOLD = false
2153
end
2154
2155
function KeyDown(Key)
2156
	KEYHOLD = true
2157
	if TRANSFORMED == true and Rooted == false then
2158
		if Key == "f" and ATTACK == false then
2159
			Switch()
2160
		end
2161
2162
2163
	if Key == "z" and ATTACK == false then
2164
		if MODE == "GoodCop" then
2165
			Shot2()
2166
		elseif MODE == "BadCop" then
2167
			Shot1()
2168
		end
2169
	end
2170
2171
	if Key == "t" and ATTACK == false then
2172
		if MODE == "GoodCop" then
2173
			ScrewThis()
2174
		elseif MODE == "BadCop" then
2175
			Taunt()
2176
		end
2177
	end
2178
	
2179
	end
2180
2181
	if Key == "9" and ATTACK == false then
2182
		CreateSound("135017578", Effects, 5, 1)
2183
	end
2184
end
2185
2186
function KeyUp(Key)
2187
	KEYHOLD = false
2188
end
2189
2190
	Mouse.Button1Down:connect(function(NEWKEY)
2191
		MouseDown(NEWKEY)
2192
	end)
2193
	Mouse.Button1Up:connect(function(NEWKEY)
2194
		MouseUp(NEWKEY)
2195
	end)
2196
	Mouse.KeyDown:connect(function(NEWKEY)
2197
		KeyDown(NEWKEY)
2198
	end)
2199
	Mouse.KeyUp:connect(function(NEWKEY)
2200
		KeyUp(NEWKEY)
2201
	end)
2202
2203
--//=================================\\
2204
--\\=================================//
2205
2206
2207
function unanchor()
2208
	if UNANCHOR == true then
2209
		RootPart.Anchored = false
2210
	end
2211
	for _, c in pairs(Weapon:GetChildren()) do
2212
		if c.ClassName == "Part" then
2213
			c.Anchored = false
2214
		end
2215
	end
2216
end
2217
2218
2219
--//=================================\\
2220
--||	WRAP THE WHOLE SCRIPT UP
2221
--\\=================================//
2222
2223
Humanoid.Changed:connect(function(Jump)
2224
	if Jump == "Jump" and (Disable_Jump == true) then
2225
		Humanoid.Jump = false
2226
	end
2227
end)
2228
2229
while true do
2230
	Swait()
2231
	script.Parent = WEAPONGUI
2232
	ANIMATE.Parent = nil
2233
	for _,v in next, Humanoid:GetPlayingAnimationTracks() do
2234
	    v:Stop();
2235
	end
2236
	SINE = SINE + CHANGE
2237
	local TORSOVELOCITY = (RootPart.Velocity * VT(1, 0, 1)).magnitude
2238
	local TORSOVERTICALVELOCITY = RootPart.Velocity.y
2239
	local HITFLOOR = Raycast(RootPart.Position, (CF(RootPart.Position, RootPart.Position + VT(0, -1, 0))).lookVector, 4, Character)
2240
	local WALKSPEEDVALUE = 6 / (Humanoid.WalkSpeed / 16)
2241
	if ANIM == "Walk" and TORSOVELOCITY > 1 then
2242
		RootJoint.C1 = Clerp(RootJoint.C1, ROOTC0 * CF(0, 0, 0.05 * COS(SINE / (WALKSPEEDVALUE/2))) * ANGLES(RAD(0), RAD(0), RAD(0)), 2 * (Humanoid.WalkSpeed / 16) / Animation_Speed)
2243
		Neck.C1 = Clerp(Neck.C1, CF(0, -0.5, 0) * ANGLES(RAD(-90), RAD(0), RAD(180)) * ANGLES(RAD(0), RAD(0), RAD(0) - Head.RotVelocity.Y / 30), 0.2 * (Humanoid.WalkSpeed / 16) / Animation_Speed)
2244
		RightHip.C1 = Clerp(RightHip.C1, CF(0.5, 0.875 - 0.125 * SIN(SINE / WALKSPEEDVALUE) - 0.15 * COS(SINE / WALKSPEEDVALUE*2), 0) * ANGLES(RAD(0), RAD(90), RAD(0)) * ANGLES(RAD(0), RAD(0), RAD(35 * COS(SINE / WALKSPEEDVALUE))), 0.6 / Animation_Speed)
2245
		LeftHip.C1 = Clerp(LeftHip.C1, CF(-0.5, 0.875 + 0.125 * SIN(SINE / WALKSPEEDVALUE) - 0.15 * COS(SINE / WALKSPEEDVALUE*2), 0) * ANGLES(RAD(0), RAD(-90), RAD(0)) * ANGLES(RAD(0), RAD(0), RAD(35 * COS(SINE / WALKSPEEDVALUE))), 0.6 / Animation_Speed)
2246
	elseif (ANIM ~= "Walk") or (TORSOVELOCITY < 1) then
2247
		RootJoint.C1 = Clerp(RootJoint.C1, ROOTC0 * CF(0, 0, 0) * ANGLES(RAD(0), RAD(0), RAD(0)), 0.2 / Animation_Speed)
2248
		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)
2249
		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.7 / Animation_Speed)
2250
		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.7 / Animation_Speed)
2251
	end
2252
	if TORSOVERTICALVELOCITY > 1 and HITFLOOR == nil then
2253
		ANIM = "Jump"
2254
		if ATTACK == false then
2255
			RootJoint.C0 = Clerp(RootJoint.C0, ROOTC0 * CF(0, 0, 0) * ANGLES(RAD(0), RAD(0), RAD(0)), 0.2 / Animation_Speed)
2256
			Neck.C0 = Clerp(Neck.C0, NECKC0 * CF(0, 0, 0 + ((1) - 1)) * ANGLES(RAD(-20), RAD(0), RAD(0)), 0.2 / Animation_Speed)
2257
			RightShoulder.C0 = Clerp(RightShoulder.C0, CF(1.5, 0.5, 0) * ANGLES(RAD(-40), RAD(0), RAD(20)) * RIGHTSHOULDERC0, 0.2 / Animation_Speed)
2258
			LeftShoulder.C0 = Clerp(LeftShoulder.C0, CF(-1.5, 0.5, 0) * ANGLES(RAD(-40), RAD(0), RAD(-20)) * LEFTSHOULDERC0, 0.2 / Animation_Speed)
2259
			RightHip.C0 = Clerp(RightHip.C0, CF(1, -1, -0.3) * ANGLES(RAD(0), RAD(90), RAD(0)) * ANGLES(RAD(-5), RAD(0), RAD(-20)), 0.2 / Animation_Speed)
2260
			LeftHip.C0 = Clerp(LeftHip.C0, CF(-1, -1, -0.3) * ANGLES(RAD(0), RAD(-90), RAD(0)) * ANGLES(RAD(-5), RAD(0), RAD(20)), 0.2 / Animation_Speed)
2261
	    end
2262
	elseif TORSOVERTICALVELOCITY < -1 and HITFLOOR == nil then
2263
		ANIM = "Fall"
2264
		if ATTACK == false then
2265
			RootJoint.C0 = Clerp(RootJoint.C0, ROOTC0 * CF(0, 0, 0) * ANGLES(RAD(0), RAD(0), RAD(0)), 0.2 / Animation_Speed)
2266
			Neck.C0 = Clerp(Neck.C0, NECKC0 * CF(0, 0 , 0 + ((1) - 1)) * ANGLES(RAD(20), RAD(0), RAD(0)), 0.2 / Animation_Speed)
2267
			RightShoulder.C0 = Clerp(RightShoulder.C0, CF(1.5, 0.5, 0) * ANGLES(RAD(0), RAD(0), RAD(60)) * RIGHTSHOULDERC0, 0.2 / Animation_Speed)
2268
			LeftShoulder.C0 = Clerp(LeftShoulder.C0, CF(-1.5, 0.5, 0) * ANGLES(RAD(0), RAD(0), RAD(-60)) * LEFTSHOULDERC0, 0.2 / Animation_Speed)
2269
			RightHip.C0 = Clerp(RightHip.C0, CF(1, -1, 0) * ANGLES(RAD(0), RAD(90), RAD(0)) * ANGLES(RAD(0), RAD(0), RAD(20)), 0.2 / Animation_Speed)
2270
			LeftHip.C0 = Clerp(LeftHip.C0, CF(-1, -1, 0) * ANGLES(RAD(0), RAD(-90), RAD(0)) * ANGLES(RAD(0), RAD(0), RAD(10)), 0.2 / Animation_Speed)
2271
		end
2272
	elseif TORSOVELOCITY < 1 and HITFLOOR ~= nil then
2273
		ANIM = "Idle"
2274
		if ATTACK == false then
2275
			if MODE == "GoodCop" then
2276
				RootJoint.C0 = Clerp(RootJoint.C0,ROOTC0 * CF(0.05 * COS(SINE / 12), 0, 0 + 0.05 * SIN(SINE / 12)) * ANGLES(RAD(0), RAD(0), RAD(0)), 0.15 / Animation_Speed)
2277
				Neck.C0 = Clerp(Neck.C0, NECKC0 * CF(0, 0, 0 + ((1) - 1)) * ANGLES(RAD(15 - 2.5 * SIN(SINE / 12)), RAD(0), RAD(-25)), 1 / Animation_Speed)
2278
				RightShoulder.C0 = Clerp(RightShoulder.C0, CF(1.5, 0.5, 0) * ANGLES(RAD(180), RAD(0), RAD(0)) * ANGLES(RAD(0), RAD(45), RAD(0)) * RIGHTSHOULDERC0, 0.25 / Animation_Speed)
2279
				LeftShoulder.C0 = Clerp(LeftShoulder.C0, CF(-1.25, 0.5, 0.3) * ANGLES(RAD(-40), RAD(0), RAD(45)) * LEFTSHOULDERC0, 1 / Animation_Speed)
2280
				RightHip.C0 = Clerp(RightHip.C0, CF(1 + 0.05 * COS(SINE / 12), -1 - 0.05 * SIN(SINE / 12), -0.01) * ANGLES(RAD(0), RAD(85), RAD(0)) * ANGLES(RAD(-1), RAD(0), RAD(0)), 0.15 / Animation_Speed)
2281
				LeftHip.C0 = Clerp(LeftHip.C0, CF(-1 + 0.05 * COS(SINE / 12), -1 - 0.05 * SIN(SINE / 12), -0.01) * ANGLES(RAD(0), RAD(-85), RAD(0)) * ANGLES(RAD(-1), RAD(0), RAD(0)), 0.15 / Animation_Speed)
2282
			elseif MODE == "BadCop" then
2283
			RootJoint.C0 = Clerp(RootJoint.C0, ROOTC0 * CF(0, 0, -1 + 0.1 * COS(SINE / 24)) * ANGLES(RAD(45), RAD(0), RAD(0)), 0.2 / Animation_Speed*3)
2284
			Neck.C0 = Clerp(Neck.C0, NECKC0 * CF(0, 0, 0 + ((1) - 1)) * ANGLES(RAD(25 + MRANDOM(-5,5) - 4 * COS(SINE / 12)), RAD(MRANDOM(-5,5)), RAD(15)), 1 / Animation_Speed)
2285
			if MRANDOM(1,7) == 1 then
2286
				Neck.C0 = Clerp(Neck.C0, NECKC0 * CF(0, 0, 0 + ((1) - 1)) * ANGLES(RAD(0 + MRANDOM(-25,25) - 4 * COS(SINE / 12)), RAD(MRANDOM(-25,25)), RAD(0)), 1.5 / Animation_Speed)
2287
			end					
2288
			RightShoulder.C0 = Clerp(RightShoulder.C0, CF(1.5, 0.35, 0) * ANGLES(RAD(90), RAD(25), RAD(45)) * RIGHTSHOULDERC0, 0.15 / Animation_Speed)
2289
			LeftShoulder.C0 = Clerp(LeftShoulder.C0, CF(-1.5 * Player_Size, 0.5 * Player_Size, -0.1 * Player_Size) * ANGLES(RAD(95), RAD(25), RAD(45)) * LEFTSHOULDERC0, 0.15 / Animation_Speed)
2290
			RightHip.C0 = Clerp(RightHip.C0, CF(1, -0.3 - 0.1 * COS(SINE / 24), -1 - 0.1 * COS(SINE / 24)) * ANGLES(RAD(0), RAD(90), RAD(0)) * ANGLES(RAD(0), RAD(0), RAD(-20)), 0.2 / Animation_Speed)
2291
			LeftHip.C0 = Clerp(LeftHip.C0, CF(-1.2, 0.2 - 0.1 * COS(SINE / 24), -0.4 - 0.1 * COS(SINE / 24)) * ANGLES(RAD(45), RAD(-70), RAD(0)) * ANGLES(RAD(0), RAD(0), RAD(10)), 0.2 / Animation_Speed)
2292
			end
2293
		end
2294
	elseif TORSOVELOCITY > 1 and HITFLOOR ~= nil then
2295
		ANIM = "Walk"
2296
		if ATTACK == false then
2297
			if MODE == "GoodCop" then
2298
				RightShoulder.C0 = Clerp(RightShoulder.C0, CF(1.5, 0.35, 0) * ANGLES(RAD(0), RAD(180), RAD(180)) * RIGHTSHOULDERC0, 0.15 / Animation_Speed)
2299
				LeftShoulder.C0 = Clerp(LeftShoulder.C0, CF(-1.25, 0.5 + 0.05 * SIN(SINE / (WALKSPEEDVALUE/2)), 0.3) * ANGLES(RAD(-40), RAD(0), RAD(45)) * LEFTSHOULDERC0, 1 / Animation_Speed)
2300
			elseif MODE == "BadCop" then
2301
			RootJoint.C0 = Clerp(RootJoint.C0,ROOTC0 * CF(0, 0, -0.1) * ANGLES(RAD(5), RAD(0), RAD(0)), 0.15 / Animation_Speed)
2302
			Neck.C0 = Clerp(Neck.C0, NECKC0 * CF(0, 0, 0 + ((1) - 1)) * ANGLES(RAD(5 - 8 * SIN(SINE / (WALKSPEEDVALUE / 2))), RAD(0), RAD(0)), 0.15 / Animation_Speed)
2303
			RightShoulder.C0 = Clerp(RightShoulder.C0, CF(1.5, 0.65, -0.15) * ANGLES(RAD(150), RAD(0), RAD(0))* RIGHTSHOULDERC0, 0.15 / Animation_Speed)
2304
			LeftShoulder.C0 = Clerp(LeftShoulder.C0, CF(-1.5, 0.5, 0) * ANGLES(RAD(-60 * COS(SINE / WALKSPEEDVALUE)), RAD(0), RAD(-5)) * LEFTSHOULDERC0, 0.35 / Animation_Speed)
2305
			RightHip.C0 = Clerp(RightHip.C0, CF(1 , -1, 0) * ANGLES(RAD(0), RAD(90), RAD(0)) * ANGLES(RAD(0), RAD(0), RAD(-15)), 2 / Animation_Speed)
2306
			LeftHip.C0 = Clerp(LeftHip.C0, CF(-1, -1, 0) * ANGLES(RAD(0), RAD(-90), RAD(0)) * ANGLES(RAD(0), RAD(0), RAD(15)), 2 / Animation_Speed)
2307
			end
2308
		end
2309
	end
2310
	Humanoid.DisplayDistanceType = "None"
2311
	unanchor()
2312
	tecks2.TextColor3 = BrickColor.Random().Color
2313
	tecks2.TextStrokeColor3 = BrickColor.Random().Color
2314
	Humanoid.MaxHealth = "inf"
2315
	Humanoid.Health = "inf"
2316
	if Rooted == false then
2317
		Disable_Jump = false
2318
		Humanoid.WalkSpeed = Speed
2319
	elseif Rooted == true then
2320
		Disable_Jump = true
2321
		Humanoid.WalkSpeed = 0
2322
	end
2323
	Humanoid.PlatformStand = false
2324
	if INTRO == false and INSTANT == false then
2325
		INTRO = true
2326
		coroutine.resume(coroutine.create(function()
2327
			sick:Play()
2328
			Intro()
2329
		end))
2330
	end
2331
	if INSTANT == true then
2332
		if TRANSFORMED == false then
2333
			sick.TimePosition = 60
2334
			sick:Play()
2335
		end
2336
		TRANSFORMED = true
2337
	end
2338
	script.Parent = PlayerGui
2339
	Character.Parent = workspace
2340
	Humanoid.Parent = Character
2341
end
2342
--//=================================\\
2343
--\\=================================//
2344
2345
2346
2347
2348
2349
--//====================================================\\--
2350
--||			  		 END OF SCRIPT
2351
--\\====================================================//--