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