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