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