View difference between Paste ID: Sk11rJk9 and 08n0bkvb
SHOW: | | - or go back to the newest paste.
1
wait(0.2)
2
Player = game:GetService("Players").LocalPlayer
3
PlayerGui = Player.PlayerGui
4
Cam = workspace.CurrentCamera
5
Backpack = Player.Backpack
6
Character = Player.Character
7
Humanoid = Character.Humanoid
8
Mouse = Player:GetMouse()
9
RootPart = Character["HumanoidRootPart"]
10
Torso = Character["Torso"]
11
Head = Character["Head"]
12
RightArm = Character["Right Arm"]
13
LeftArm = Character["Left Arm"]
14
RightLeg = Character["Right Leg"]
15
LeftLeg = Character["Left Leg"]
16
RootJoint = RootPart["RootJoint"]
17
Neck = Torso["Neck"]
18
RightShoulder = Torso["Right Shoulder"]
19
LeftShoulder = Torso["Left Shoulder"]
20
RightHip = Torso["Right Hip"]
21
LeftHip = Torso["Left Hip"]
22
local sick = Instance.new("Sound",Character)
23-
sick.SoundId = "rbxassetid://733456981"
23+
sick.SoundId = "rbxassetid://4549422372"
24
sick.Looped = true
25
sick.Pitch = 1
26
sick.Volume = 2
27
sick:Play()
28
29
IT = Instance.new
30
CF = CFrame.new
31
VT = Vector3.new
32
RAD = math.rad
33
C3 = Color3.new
34
UD2 = UDim2.new
35
BRICKC = BrickColor.new
36
ANGLES = CFrame.Angles
37
EULER = CFrame.fromEulerAnglesXYZ
38
COS = math.cos
39
ACOS = math.acos
40
SIN = math.sin
41
ASIN = math.asin
42
ABS = math.abs
43
MRANDOM = math.random
44
FLOOR = math.floor
45
46
function CreateMesh(MESH, PARENT, MESHTYPE, MESHID, TEXTUREID, SCALE, OFFSET)
47
	local NEWMESH = IT(MESH)
48
	if MESH == "SpecialMesh" then
49
		NEWMESH.MeshType = MESHTYPE
50
		if MESHID ~= "nil" and MESHID ~= "" then
51
			NEWMESH.MeshId = "http://www.roblox.com/asset/?id="..MESHID
52
		end
53
		if TEXTUREID ~= "nil" and TEXTUREID ~= "" then
54
			NEWMESH.TextureId = "http://www.roblox.com/asset/?id="..TEXTUREID
55
		end
56
	end
57
	NEWMESH.Offset = OFFSET or VT(0, 0, 0)
58
	NEWMESH.Scale = SCALE
59
	NEWMESH.Parent = PARENT
60
	return NEWMESH
61
end
62
63
function CreatePart(FORMFACTOR, PARENT, MATERIAL, REFLECTANCE, TRANSPARENCY, BRICKCOLOR, NAME, SIZE, ANCHOR)
64
	local NEWPART = IT("Part")
65
	NEWPART.formFactor = FORMFACTOR
66
	NEWPART.Reflectance = REFLECTANCE
67
	NEWPART.Transparency = TRANSPARENCY
68
	NEWPART.CanCollide = false
69
	NEWPART.Locked = true
70
	NEWPART.Anchored = true
71
	if ANCHOR == false then
72
		NEWPART.Anchored = false
73
	end
74
	NEWPART.BrickColor = BRICKC(tostring(BRICKCOLOR))
75
	NEWPART.Name = NAME
76
	NEWPART.Size = SIZE
77
	NEWPART.Position = Torso.Position
78
	NEWPART.Material = MATERIAL
79
	NEWPART:BreakJoints()
80
	NEWPART.Parent = PARENT
81
	return NEWPART
82
end
83
84
Class_Name = "Void Face"
85
Weapon_Name = "Add-ons"
86
87
Player_Size = 1 --Size of the player.
88
Animation_Speed = 3
89
Frame_Speed = 1 / 60 -- (1 / 30) OR (1 / 60)
90
91
local Speed = 16
92
local Effects2 = {}
93
94
	local function weldBetween(a, b)
95
	    local weldd = Instance.new("ManualWeld")
96
	    weldd.Part0 = a
97
	    weldd.Part1 = b
98
	    weldd.C0 = CFrame.new()
99
	    weldd.C1 = b.CFrame:inverse() * a.CFrame
100
	    weldd.Parent = a
101
	    return weldd
102
	end
103
104
function createaccessory(attachmentpart,mesh,texture,scale,offset,color)
105
local acs = Instance.new("Part")
106
acs.CanCollide = false
107
acs.Anchored = false
108
acs.Size = Vector3.new(0,0,0)
109
acs.CFrame = attachmentpart.CFrame
110
acs.Parent = Character
111
acs.BrickColor = color
112
    local meshs = Instance.new("SpecialMesh")
113
    meshs.MeshId = mesh
114
    meshs.TextureId = texture
115
    meshs.Parent = acs
116
    meshs.Scale = scale
117
    meshs.Offset = offset
118
weldBetween(attachmentpart,acs)
119
end
120
121
function createbodypart(TYPE,COLOR,PART,OFFSET,SIZE)
122
if TYPE == "Gem" then
123
	local acs = CreatePart(3, Character, "Plastic", 0, 0, COLOR, "Part", VT(0,0,0))
124
	acs.Anchored = false
125
    acs.CanCollide = false
126
	acs.CFrame = PART.CFrame
127
	local acs2 = CreateMesh("SpecialMesh", acs, "FileMesh", "9756362", "", SIZE, OFFSET)
128
weldBetween(PART,acs)
129
elseif TYPE == "Skull" then
130
	local acs = CreatePart(3, Character, "Plastic", 0, 0, COLOR, "Part", VT(0,0,0))
131
	acs.Anchored = false
132
    acs.CanCollide = false
133
	acs.CFrame = PART.CFrame
134
	local acs2 = CreateMesh("SpecialMesh", acs, "FileMesh", "4770583", "", SIZE, OFFSET)
135
weldBetween(PART,acs)
136
elseif TYPE == "Eye" then
137
	local acs = CreatePart(3, Character, "Neon", 0, 0, COLOR, "Part", VT(0,0,0))
138
	acs.Anchored = false
139
    acs.CanCollide = false
140
	acs.CFrame = PART.CFrame
141
	local acs2 = CreateMesh("SpecialMesh", acs, "Sphere", "", "", SIZE, OFFSET)
142
weldBetween(PART,acs)
143
end
144
end
145
146
local ROOTC0 = CF(0, 0, 0) * ANGLES(RAD(-90), RAD(0), RAD(180))
147
local NECKC0 = CF(0, 1, 0) * ANGLES(RAD(-90), RAD(0), RAD(180))
148
local RIGHTSHOULDERC0 = CF(-0.5, 0, 0) * ANGLES(RAD(0), RAD(90), RAD(0))
149
local LEFTSHOULDERC0 = CF(0.5, 0, 0) * ANGLES(RAD(0), RAD(-90), RAD(0))
150
local CHANGEDEFENSE = 0
151
local CHANGEDAMAGE = 0
152
local CHANGEMOVEMENT = 0
153
local ANIM = "Idle"
154
local ATTACK = false
155
local EQUIPPED = false
156
local HOLD = false
157
local COMBO = 1
158
local Rooted = false
159
local SINE = 0
160
local KEYHOLD = false
161
local CHANGE = 2 / Animation_Speed
162
local WALKINGANIM = false
163
local WALK = 0
164
local VALUE1 = false
165
local VALUE2 = false
166
local ROBLOXIDLEANIMATION = IT("Animation")
167
ROBLOXIDLEANIMATION.Name = "Roblox Idle Animation"
168
ROBLOXIDLEANIMATION.AnimationId = "http://www.roblox.com/asset/?id=623662713"
169
--ROBLOXIDLEANIMATION.Parent = Humanoid
170
local WEAPONGUI = IT("ScreenGui", PlayerGui)
171
WEAPONGUI.Name = "Weapon GUI"
172
local Weapon = IT("Model")
173
Weapon.Name = Weapon_Name
174
local Effects = IT("Folder", Weapon)
175
Effects.Name = "Effects"
176
local ANIMATOR = Humanoid.Animator
177
local ANIMATE = Character.Animate
178
local HITPLAYERSOUNDS = {--[["199149137", "199149186", "199149221", "199149235", "199149269", "199149297"--]]"263032172", "263032182", "263032200", "263032221", "263032252", "263033191"}
179
local HITARMORSOUNDS = {"199149321", "199149338", "199149367", "199149409", "199149452"}
180
local HITWEAPONSOUNDS = {"199148971", "199149025", "199149072", "199149109", "199149119"}
181
local HITBLOCKSOUNDS = {"199148933", "199148947"}
182
local TAUNTS = {"368794227","368794903","368794985"}
183
local UNANCHOR = true
184
185
ArtificialHB = Instance.new("BindableEvent", script)
186
ArtificialHB.Name = "ArtificialHB"
187
188
script:WaitForChild("ArtificialHB")
189
190
frame = Frame_Speed
191
tf = 0
192
allowframeloss = false
193
tossremainder = false
194
lastframe = tick()
195
script.ArtificialHB:Fire()
196
197
game:GetService("RunService").Heartbeat:connect(function(s, p)
198
	tf = tf + s
199
	if tf >= frame then
200
		if allowframeloss then
201
			script.ArtificialHB:Fire()
202
			lastframe = tick()
203
		else
204
			for i = 1, math.floor(tf / frame) do
205
				script.ArtificialHB:Fire()
206
			end
207
		lastframe = tick()
208
		end
209
		if tossremainder then
210
			tf = 0
211
		else
212
			tf = tf - frame * math.floor(tf / frame)
213
		end
214
	end
215
end)
216
217
function Raycast(POSITION, DIRECTION, RANGE, IGNOREDECENDANTS)
218
	return workspace:FindPartOnRay(Ray.new(POSITION, DIRECTION.unit * RANGE), IGNOREDECENDANTS)
219
end
220
221
function PositiveAngle(NUMBER)
222
	if NUMBER >= 0 then
223
		NUMBER = 0
224
	end
225
	return NUMBER
226
end
227
228
function NegativeAngle(NUMBER)
229
	if NUMBER <= 0 then
230
		NUMBER = 0
231
	end
232
	return NUMBER
233
end
234
235
function Swait(NUMBER)
236
	if NUMBER == 0 or NUMBER == nil then
237
		ArtificialHB.Event:wait()
238
	else
239
		for i = 1, NUMBER do
240
			ArtificialHB.Event:wait()
241
		end
242
	end
243
end
244
245
function QuaternionFromCFrame(cf)
246
	local mx, my, mz, m00, m01, m02, m10, m11, m12, m20, m21, m22 = cf:components()
247
	local trace = m00 + m11 + m22
248
	if trace > 0 then 
249
		local s = math.sqrt(1 + trace)
250
		local recip = 0.5 / s
251
		return (m21 - m12) * recip, (m02 - m20) * recip, (m10 - m01) * recip, s * 0.5
252
	else
253
		local i = 0
254
		if m11 > m00 then
255
			i = 1
256
		end
257
		if m22 > (i == 0 and m00 or m11) then
258
			i = 2
259
		end
260
		if i == 0 then
261
			local s = math.sqrt(m00 - m11 - m22 + 1)
262
			local recip = 0.5 / s
263
			return 0.5 * s, (m10 + m01) * recip, (m20 + m02) * recip, (m21 - m12) * recip
264
		elseif i == 1 then
265
			local s = math.sqrt(m11 - m22 - m00 + 1)
266
			local recip = 0.5 / s
267
			return (m01 + m10) * recip, 0.5 * s, (m21 + m12) * recip, (m02 - m20) * recip
268
		elseif i == 2 then
269
			local s = math.sqrt(m22 - m00 - m11 + 1)
270
			local recip = 0.5 / s return (m02 + m20) * recip, (m12 + m21) * recip, 0.5 * s, (m10 - m01) * recip
271
		end
272
	end
273
end
274
 
275
function QuaternionToCFrame(px, py, pz, x, y, z, w)
276
	local xs, ys, zs = x + x, y + y, z + z
277
	local wx, wy, wz = w * xs, w * ys, w * zs
278
	local xx = x * xs
279
	local xy = x * ys
280
	local xz = x * zs
281
	local yy = y * ys
282
	local yz = y * zs
283
	local zz = z * zs
284
	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))
285
end
286
 
287
function QuaternionSlerp(a, b, t)
288
	local cosTheta = a[1] * b[1] + a[2] * b[2] + a[3] * b[3] + a[4] * b[4]
289
	local startInterp, finishInterp;
290
	if cosTheta >= 0.0001 then
291
		if (1 - cosTheta) > 0.0001 then
292
			local theta = ACOS(cosTheta)
293
			local invSinTheta = 1 / SIN(theta)
294
			startInterp = SIN((1 - t) * theta) * invSinTheta
295
			finishInterp = SIN(t * theta) * invSinTheta
296
		else
297
			startInterp = 1 - t
298
			finishInterp = t
299
		end
300
	else
301
		if (1 + cosTheta) > 0.0001 then
302
			local theta = ACOS(-cosTheta)
303
			local invSinTheta = 1 / SIN(theta)
304
			startInterp = SIN((t - 1) * theta) * invSinTheta
305
			finishInterp = SIN(t * theta) * invSinTheta
306
		else
307
			startInterp = t - 1
308
			finishInterp = t
309
		end
310
	end
311
	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
312
end
313
314
function Clerp(a, b, t)
315
	local qa = {QuaternionFromCFrame(a)}
316
	local qb = {QuaternionFromCFrame(b)}
317
	local ax, ay, az = a.x, a.y, a.z
318
	local bx, by, bz = b.x, b.y, b.z
319
	local _t = 1 - t
320
	return QuaternionToCFrame(_t * ax + t * bx, _t * ay + t * by, _t * az + t * bz, QuaternionSlerp(qa, qb, t))
321
end
322
323
function CreateFrame(PARENT, TRANSPARENCY, BORDERSIZEPIXEL, POSITION, SIZE, COLOR, BORDERCOLOR, NAME)
324
	local frame = IT("Frame")
325
	frame.BackgroundTransparency = TRANSPARENCY
326
	frame.BorderSizePixel = BORDERSIZEPIXEL
327
	frame.Position = POSITION
328
	frame.Size = SIZE
329
	frame.BackgroundColor3 = COLOR
330
	frame.BorderColor3 = BORDERCOLOR
331
	frame.Name = NAME
332
	frame.Parent = PARENT
333
	return frame
334
end
335
336
function CreateLabel(PARENT, TEXT, TEXTCOLOR, TEXTFONTSIZE, TEXTFONT, TRANSPARENCY, BORDERSIZEPIXEL, STROKETRANSPARENCY, NAME)
337
	local label = IT("TextLabel")
338
	label.BackgroundTransparency = 1
339
	label.Size = UD2(1, 0, 1, 0)
340
	label.Position = UD2(0, 0, 0, 0)
341
	label.TextColor3 = TEXTCOLOR
342
	label.TextStrokeTransparency = STROKETRANSPARENCY
343
	label.TextTransparency = TRANSPARENCY
344
	label.FontSize = TEXTFONTSIZE
345
	label.Font = TEXTFONT
346
	label.BorderSizePixel = BORDERSIZEPIXEL
347
	label.TextScaled = false
348
	label.Text = TEXT
349
	label.Name = NAME
350
	label.Parent = PARENT
351
	return label
352
end
353
354
function NoOutlines(PART)
355
	PART.TopSurface, PART.BottomSurface, PART.LeftSurface, PART.RightSurface, PART.FrontSurface, PART.BackSurface = 10, 10, 10, 10, 10, 10
356
end
357
358
359
function CreateWeldOrSnapOrMotor(TYPE, PARENT, PART0, PART1, C0, C1)
360
	local NEWWELD = IT(TYPE)
361
	NEWWELD.Part0 = PART0
362
	NEWWELD.Part1 = PART1
363
	NEWWELD.C0 = C0
364
	NEWWELD.C1 = C1
365
	NEWWELD.Parent = PARENT
366
	return NEWWELD
367
end
368
369
local sound = IT("Sound",nil)
370
371
function CreateSound(ID, PARENT, VOLUME, PITCH)
372
	local NEWSOUND = nil
373
	coroutine.resume(coroutine.create(function()
374
		NEWSOUND = sound:Clone()
375
		NEWSOUND.Parent = PARENT
376
		NEWSOUND.Volume = VOLUME
377
		NEWSOUND.Pitch = PITCH
378
		NEWSOUND.SoundId = "http://www.roblox.com/asset/?id="..ID
379
		Swait()
380
		NEWSOUND:play()
381
		game:GetService("Debris"):AddItem(NEWSOUND, 10)
382
	end))
383
	return NEWSOUND
384
end
385
386
function CFrameFromTopBack(at, top, back)
387
	local right = top:Cross(back)
388
	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)
389
end
390
391
function CreateWave(SIZE,WAIT,CFRAME,DOESROT,ROT,COLOR,GROW)
392
	local wave = CreatePart(3, Effects, "Neon", 0, 0.5, BRICKC(COLOR), "Effect", VT(0,0,0))
393
	local mesh = IT("SpecialMesh",wave)
394
	mesh.MeshType = "FileMesh"
395
	mesh.MeshId = "http://www.roblox.com/asset/?id=20329976"
396
	mesh.Scale = SIZE
397
	mesh.Offset = VT(0,0,-SIZE.X/8)
398
	wave.CFrame = CFRAME
399
	coroutine.resume(coroutine.create(function(PART)
400
		for i = 1, WAIT do
401
			Swait()
402
			mesh.Scale = mesh.Scale + GROW
403
			mesh.Offset = VT(0,0,-(mesh.Scale.X/8))
404
			if DOESROT == true then
405
				wave.CFrame = wave.CFrame * CFrame.fromEulerAnglesXYZ(0,ROT,0)
406
			end
407
			wave.Transparency = wave.Transparency + (0.5/WAIT)
408
			if wave.Transparency > 0.99 then
409
				wave:remove()
410
			end
411
		end
412
	end))
413
end
414
415
function CreateCrown(SIZE,WAIT,CFRAME,DOESROT,ROT,COLOR,GROW)
416
	local wave = CreatePart(3, Effects, "Neon", 0, 0.5, BRICKC(COLOR), "Effect", VT(0,0,0))
417
	local mesh = IT("SpecialMesh",wave)
418
	mesh.MeshType = "FileMesh"
419
	mesh.MeshId = "http://www.roblox.com/asset/?id=1078075"
420
	mesh.Scale = SIZE
421
	mesh.Offset = VT(0,0,-SIZE.X/8)
422
	wave.CFrame = CFRAME
423
	coroutine.resume(coroutine.create(function(PART)
424
		for i = 1, WAIT do
425
			Swait()
426
			mesh.Scale = mesh.Scale + GROW
427
			mesh.Offset = VT(0,0,-(mesh.Scale.X/8))
428
			if DOESROT == true then
429
				wave.CFrame = wave.CFrame * CFrame.fromEulerAnglesXYZ(0,ROT,0)
430
			end
431
			wave.Transparency = wave.Transparency + (0.5/WAIT)
432
			if wave.Transparency > 0.99 then
433
				wave:remove()
434
			end
435
		end
436
	end))
437
end
438
439
function CreateIceCrown(SIZE,WAIT,CFRAME,DOESROT,ROT,COLOR,GROW)
440
	local wave = CreatePart(3, Effects, "Neon", 0, 0.5, BRICKC(COLOR), "Effect", VT(0,0,0))
441
	local mesh = IT("SpecialMesh",wave)
442
	mesh.MeshType = "FileMesh"
443
	mesh.MeshId = "http://www.roblox.com/asset/?id=1323306"
444
	mesh.Scale = SIZE
445
	mesh.Offset = VT(0,0,-SIZE.X/8)
446
	wave.CFrame = CFRAME
447
	coroutine.resume(coroutine.create(function(PART)
448
		for i = 1, WAIT do
449
			Swait()
450
			mesh.Scale = mesh.Scale + GROW
451
			mesh.Offset = VT(0,0,-(mesh.Scale.X/8))
452
			if DOESROT == true then
453
				wave.CFrame = wave.CFrame * CFrame.fromEulerAnglesXYZ(0,ROT,0)
454
			end
455
			wave.Transparency = wave.Transparency + (0.5/WAIT)
456
			if wave.Transparency > 0.99 then
457
				wave:remove()
458
			end
459
		end
460
	end))
461
end
462
463
function CreateSpikeball(SIZE,WAIT,CFRAME,DOESROT,ROT,COLOR,GROW)
464
	local wave = CreatePart(3, Effects, "Neon", 0, 0.5, BRICKC(COLOR), "Effect", VT(0,0,0))
465
	local mesh = IT("SpecialMesh",wave)
466
	mesh.MeshType = "FileMesh"
467
	mesh.MeshId = "http://www.roblox.com/asset/?id=9982590"
468
	mesh.Scale = SIZE
469
	mesh.Offset = VT(0,0,-SIZE.X/8)
470
	wave.CFrame = CFRAME
471
	coroutine.resume(coroutine.create(function(PART)
472
		for i = 1, WAIT do
473
			Swait()
474
			mesh.Scale = mesh.Scale + GROW
475
			mesh.Offset = VT(0,0,-(mesh.Scale.X/8))
476
			if DOESROT == true then
477
				wave.CFrame = wave.CFrame * CFrame.fromEulerAnglesXYZ(0,ROT,0)
478
			end
479
			wave.Transparency = wave.Transparency + (0.5/WAIT)
480
			if wave.Transparency > 0.99 then
481
				wave:remove()
482
			end
483
		end
484
	end))
485
end
486
487
function CreateSwirl(SIZE,WAIT,CFRAME,DOESROT,ROT,COLOR,GROW)
488
	local wave = CreatePart(3, Effects, "Neon", 0, 0.5, BRICKC(COLOR), "Effect", VT(0,0,0))
489
	local mesh = IT("SpecialMesh",wave)
490
	mesh.MeshType = "FileMesh"
491
	mesh.MeshId = "http://www.roblox.com/asset/?id=1051557"
492
	mesh.Scale = SIZE
493
	wave.CFrame = CFRAME
494
	coroutine.resume(coroutine.create(function(PART)
495
		for i = 1, WAIT do
496
			Swait()
497
			mesh.Scale = mesh.Scale + GROW
498
			mesh.Offset = VT(0,0,-(mesh.Scale.X/8))
499
			if DOESROT == true then
500
				wave.CFrame = wave.CFrame * CFrame.fromEulerAnglesXYZ(0,ROT,0)
501
			end
502
			wave.Transparency = wave.Transparency + (0.5/WAIT)
503
			if wave.Transparency > 0.99 then
504
				wave:remove()
505
			end
506
		end
507
	end))
508
end
509
510
function CreateTornado(SIZE,DOESROT,ROT,WAIT,CFRAME,COLOR,GROW)
511
	local wave = CreatePart(3, Effects, "Neon", 0, 0.5, BRICKC(COLOR), "Effect", VT(0,0,0))
512
	local mesh = IT("SpecialMesh",wave)
513
	mesh.MeshType = "FileMesh"
514
	mesh.MeshId = "http://www.roblox.com/asset/?id=102638417"
515
	mesh.Scale = SIZE
516
	wave.CFrame = CFRAME
517
	coroutine.resume(coroutine.create(function(PART)
518
		for i = 1, WAIT do
519
			Swait()
520
			mesh.Scale = mesh.Scale + GROW
521
			if DOESROT == true then
522
				wave.CFrame = wave.CFrame * CFrame.fromEulerAnglesXYZ(0,ROT,0)
523
			end
524
			wave.Transparency = wave.Transparency + (0.5/WAIT)
525
			if wave.Transparency > 0.99 then
526
				wave:remove()
527
			end
528
		end
529
	end))
530
end
531
532
function CreateRing(SIZE,DOESROT,ROT,WAIT,CFRAME,COLOR,GROW)
533
	local wave = CreatePart(3, Effects, "Neon", 0, 0.5, BRICKC(COLOR), "Effect", VT(0,0,0))
534
	local mesh = IT("SpecialMesh",wave)
535
	mesh.MeshType = "FileMesh"
536
	mesh.MeshId = "http://www.roblox.com/asset/?id=3270017"
537
	mesh.Scale = SIZE
538
	mesh.Offset = VT(0,0,0)
539
	wave.CFrame = CFRAME
540
	coroutine.resume(coroutine.create(function(PART)
541
		for i = 1, WAIT do
542
			Swait()
543
			mesh.Scale = mesh.Scale + GROW
544
			if DOESROT == true then
545
				wave.CFrame = wave.CFrame * CFrame.fromEulerAnglesXYZ(0,ROT,0)
546
			end
547
			wave.Transparency = wave.Transparency + (0.5/WAIT)
548
			if wave.Transparency > 0.99 then
549
				wave:remove()
550
			end
551
		end
552
	end))
553
end
554
555
function MagicSphere(SIZE,WAIT,CFRAME,COLOR,GROW)
556
	local wave = CreatePart(3, Effects, "Neon", 0, 0, BRICKC(COLOR), "Effect", VT(1,1,1), true)
557
	local mesh = IT("SpecialMesh",wave)
558
	mesh.MeshType = "Sphere"
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
			wave.Transparency = wave.Transparency + (1/WAIT)
567
			if wave.Transparency > 0.99 then
568
				wave:remove()
569
			end
570
		end
571
	end))
572
end
573
574
function MagicBlock(SIZE,WAIT,CFRAME,COLOR,GROW)
575
	local wave = CreatePart(3, Effects, "Neon", 0, 0, BRICKC(COLOR), "Effect", VT(SIZE,SIZE,SIZE), true)
576
	local mesh = IT("BlockMesh",wave)
577
	wave.CFrame = CFRAME
578
	coroutine.resume(coroutine.create(function(PART)
579
		for i = 1, WAIT do
580
			Swait()
581
			mesh.Scale = mesh.Scale + GROW
582
			wave.CFrame = CFRAME * ANGLES(RAD(math.random(-360,360)),RAD(math.random(-360,360)),RAD(math.random(-360,360)))
583
			wave.Transparency = wave.Transparency + (1/WAIT)
584
			if wave.Transparency > 0.99 then
585
				wave:remove()
586
			end
587
		end
588
	end))
589
end
590
591
function MakeForm(PART,TYPE)
592
	if TYPE == "Cyl" then
593
		local MSH = IT("CylinderMesh",PART)
594
	elseif TYPE == "Ball" then
595
		local MSH = IT("SpecialMesh",PART)
596
		MSH.MeshType = "Sphere"
597
	elseif TYPE == "Wedge" then
598
		local MSH = IT("SpecialMesh",PART)
599
		MSH.MeshType = "Wedge"
600
	elseif TYPE == "Head" then
601
		local MSH = IT("SpecialMesh",PART)
602
		MSH.Scale = VT(1.25,1.25,1.25)
603
	end
604
end
605
606
function CheckTableForString(Table, String)
607
	for i, v in pairs(Table) do
608
		if string.find(string.lower(String), string.lower(v)) then
609
			return true
610
		end
611
	end
612
	return false
613
end
614
615
function CheckIntangible(Hit)
616
	local ProjectileNames = {"Water", "Arrow", "Projectile", "Effect", "Rail", "Lightning", "Bullet"}
617
	if Hit and Hit.Parent then
618
		if ((not Hit.CanCollide or CheckTableForString(ProjectileNames, Hit.Name)) and not Hit.Parent:FindFirstChild("Humanoid")) then
619
			return true
620
		end
621
	end
622
	return false
623
end
624
625
Debris = game:GetService("Debris")
626
627
function CastZapRay(StartPos, Vec, Length, Ignore, DelayIfHit)
628
	local Direction = CFrame.new(StartPos, Vec).lookVector
629
	local Ignore = ((type(Ignore) == "table" and Ignore) or {Ignore})
630
	local RayHit, RayPos, RayNormal = game:GetService("Workspace"):FindPartOnRayWithIgnoreList(Ray.new(StartPos, Direction * Length), Ignore)
631
	if RayHit and CheckIntangible(RayHit) then
632
		if DelayIfHit then
633
			wait()
634
		end
635
		RayHit, RayPos, RayNormal = CastZapRay((RayPos + (Vec * 0.01)), Vec, (Length - ((StartPos - RayPos).magnitude)), Ignore, DelayIfHit)
636
	end
637
	return RayHit, RayPos, RayNormal
638
end
639
640
function CreateMagicCircle()
641
	local sinkhole = IT("Part")
642
	sinkhole.Size = VT(0,0,0)
643
	sinkhole.Parent = Effects
644
	sinkhole.Material = "Neon"
645
	sinkhole.Color = C3(0,0,0)
646
	sinkhole.Anchored = true
647
	sinkhole.CanCollide = false
648
	sinkhole.Transparency = 1
649
	local decal = IT("Decal",sinkhole)
650
	decal.Face = "Top"
651
	decal.Texture = "http://www.roblox.com/asset/?id=1260793696"
652
	local decal2 = IT("Decal",sinkhole)
653
	decal2.Face = "Bottom"
654
	decal2.Texture = "http://www.roblox.com/asset/?id=1260793696"
655
	return sinkhole
656
end
657
658
function CreateGUICircle(TARGET)
659
	local GUI = Instance.new("BillboardGui",Character)
660
	GUI.Size = UDim2.new(0,0,0,0)
661
	GUI.Adornee = TARGET
662
	local GUI2 = IT("ImageLabel",GUI)
663
	GUI2.BackgroundTransparency = 1
664
	GUI2.BorderSizePixel = 0
665
	GUI2.Size = UDim2.new(1,0,1,0)
666
	GUI2.SizeConstraint = "RelativeYY"
667
	GUI.AlwaysOnTop = true
668
	GUI2.Image = "http://www.roblox.com/asset/?id=1260793696"
669
	return GUI,GUI2
670
end
671
672
function CastWarpOutlines(TARGET)
673
	coroutine.resume(coroutine.create(function()
674
		local T = TARGET:GetChildren()
675
		for i = 1, # T do
676
			local child = T[i]
677
			if child.ClassName == "Part" or child.ClassName == "MeshPart" then
678
				local clone = child:Clone()
679
				clone.Parent = Effects
680
				clone.Anchored = true
681
				clone.CanCollide = false
682
				clone:ClearAllChildren()
683
				clone.CFrame = child.CFrame
684
				if clone.Name == "Head" then
685
					clone.Size = VT(clone.Size.Y,clone.Size.Y,clone.Size.Y)
686
				end
687
				if clone.ClassName == "MeshPart" then
688
					clone.TextureID = ""
689
				end
690
				clone.BrickColor = BRICKC"Black"
691
				clone.Material = "Neon"
692
				coroutine.resume(coroutine.create(function()
693
					for i = 1, 200 do
694
						Swait()
695
						clone.Transparency = clone.Transparency + 0.005
696
						clone.Size = clone.Size + VT(0.001,0.001,0.001)
697
					end
698
					clone:remove()
699
				end))
700
			end
701
		end
702
	end))
703
end
704
705
function turnto(position)
706
	RootPart.CFrame=CFrame.new(RootPart.CFrame.p,VT(position.X,RootPart.Position.Y,position.Z)) * CFrame.new(0, 0, 0)
707
end
708
709
local face = CreatePart(3, Weapon, "Neon", 0, 0, "Really black", "Face mask", VT(1.001,1.001,1.001),false)
710
local weld = CreateWeldOrSnapOrMotor("Weld", face, Head, face, CF(0.02,0,0) * ANGLES(RAD(0), RAD(0), RAD(0)), CF(0, 0, 0))
711
MakeForm(face,"Head")
712
local part = CreatePart(3, Weapon, "Neon", 0, 0, "Royal purple", "Eye", VT(0.4,0.25,0.2),false)
713
local weld = CreateWeldOrSnapOrMotor("Weld", part, Head, part, CF(0.15,0.28,-0.53) * ANGLES(RAD(15), RAD(0), RAD(25)), CF(0, 0, 0))
714
MakeForm(part,"Ball")
715
local Eye = CreatePart(3, Weapon, "Neon", 0, 0, "Really black", "Eye", VT(0.1,0.1,0.15),false)
716
local PupilWeld = CreateWeldOrSnapOrMotor("Weld", Eye, Head, Eye, CF(0.13,0.24,-0.58) * ANGLES(RAD(0), RAD(0), RAD(25)), CF(0, 0, 0))
717
MakeForm(Eye,"Ball")
718
719
for _, c in pairs(Weapon:GetChildren()) do
720
	if c.ClassName == "Part" then
721
		c.CustomPhysicalProperties = PhysicalProperties.new(0, 0, 0, 0, 0)
722
	end
723
end
724
725
Weapon.Parent = Character
726
727
Humanoid.Died:connect(function()
728
	ATTACK = true
729
end)
730
731
function StatLabel(LABELTYPE, CFRAME, TEXT, COLOR)
732
	local STATPART = CreatePart(3, Effects, "SmoothPlastic", 0, 1, "Really black", "Effect", VT())
733
	STATPART.CFrame = CF(CFRAME.p + VT(0, 1.5, 0))
734
	local BODYGYRO = IT("BodyGyro", STATPART)
735
	local BODYPOSITION = IT("BodyPosition", STATPART)
736
	BODYPOSITION.P = 2000
737
	BODYPOSITION.D = 100
738
	BODYPOSITION.maxForce = VT(math.huge, math.huge, math.huge)
739
	BODYPOSITION.position = STATPART.Position + VT(MRANDOM(-2, 2), 6, MRANDOM(-2, 2))
740
	game:GetService("Debris"):AddItem(STATPART ,5)
741
	local BILLBOARDGUI = Instance.new("BillboardGui", STATPART)
742
	BILLBOARDGUI.Adornee = STATPART
743
	BILLBOARDGUI.Size = UD2(2.5, 0, 2.5 ,0)
744
	BILLBOARDGUI.StudsOffset = VT(-2, 2, 0)
745
	BILLBOARDGUI.AlwaysOnTop = false
746
	local TEXTLABEL = Instance.new("TextLabel", BILLBOARDGUI)
747
	TEXTLABEL.BackgroundTransparency = 1
748
	TEXTLABEL.Size = UD2(2.5, 0, 2.5, 0)
749
	TEXTLABEL.Text = TEXT
750
	TEXTLABEL.Font = "SciFi"
751
	TEXTLABEL.FontSize="Size42"
752
	TEXTLABEL.TextColor3 = COLOR
753
	TEXTLABEL.TextStrokeTransparency = 1
754
	TEXTLABEL.TextScaled = true
755
	TEXTLABEL.TextWrapped = true
756
	coroutine.resume(coroutine.create(function(THEPART, THEBODYPOSITION, THETEXTLABEL)
757
		if LABELTYPE == "Normal" then
758
			for i = 1, 20 do
759
				STATPART.Position = STATPART.Position + VT(0, (15-i)/10 ,0)
760
				TEXTLABEL.Transparency = TEXTLABEL.Transparency + (1/20)
761
			end
762
		elseif LABELTYPE == "Debuff" then
763
			for i = 1, 20 do
764
				STATPART.Position = STATPART.Position - VT(0, i/10 ,0)
765
				TEXTLABEL.Transparency = TEXTLABEL.Transparency + (1/20)
766
			end
767
		elseif LABELTYPE == "Shock" then
768
			local ORIGIN = STATPART.Position
769
			for i = 1, 20 do
770
				STATPART.Position = ORIGIN + VT(MRANDOM(-2,2),MRANDOM(-2,2),MRANDOM(-2,2))
771
				TEXTLABEL.Transparency = TEXTLABEL.Transparency + (1/20)
772
			end
773
		end
774
		THEPART.Parent = nil
775
	end),STATPART, BODYPOSITION, TEXTLABEL)
776
end
777
778
function AoEDamage(position,radius,min,max,maxstrength,beserk,critrate,critmultiplier,CanBeDodgedByJumping,DoesWarp,Instakill,HasChain)
779
	local dmg = math.random(min,max)
780
	for i,v in ipairs(workspace:GetChildren()) do
781
	if v:FindFirstChild("HitBy"..Player.Name) == nil then
782
		local body = v:GetChildren()
783
			for part = 1, #body do
784
				if(v:FindFirstChild("HitBy"..Player.Name) == nil and (body[part].ClassName == "Part" or body[part].ClassName == "MeshPart") and v ~= Character) then
785
					if(body[part].Position - position).Magnitude < radius then
786
						if v.ClassName == "Model" then
787
							if v:FindFirstChildOfClass("Humanoid") then
788
								local HUMAN = v:FindFirstChildOfClass("Humanoid")
789
								if HUMAN.Health ~= 0 then
790
									if HasChain == true then
791
										local defence = Instance.new("BoolValue",v)
792
										defence.Name = ("HitBy"..Player.Name)
793
										game:GetService("Debris"):AddItem(defence, 1)
794
											coroutine.resume(coroutine.create(function()
795
												local TORSO = v:FindFirstChild("Torso") or v:FindFirstChild("UpperTorso")
796
												if TORSO then
797
													--print("Found "..v.Name.."'s Torso")
798
													local PART = IT("Part",Effects)
799
													PART.Anchored = true
800
													PART.CanCollide = false
801
													PART.Transparency = 1
802
													PART.CFrame = CF(position)
803
													Debris:AddItem(PART,15)
804
													local A = IT("Attachment",PART)
805
													--TORSO.Anchored = true
806
													local Front = CreatePart(3, Effects, "Neon", 1, 1, "Really black", "Chain head", VT(1,1,1),false)
807
													--print("Chain start")
808
													Front.CFrame = CF(position)
809
													Front.CanCollide = true
810
													CreateSound(HITWEAPONSOUNDS[MRANDOM(1,#HITWEAPONSOUNDS)], Front, 10, 1)
811
													local B = IT("Attachment",Front)
812
													local ChainLink = IT("Beam",Effects)
813
													ChainLink.Texture = "rbxassetid://1262544869"
814
													ChainLink.TextureSpeed = 0
815
													ChainLink.FaceCamera = true
816
													ChainLink.Width0 = 3
817
													ChainLink.Attachment0 = A
818
													ChainLink.Attachment1 = B
819
													ChainLink.TextureMode = "Static"
820
													local bv = Instance.new("BodyVelocity") 
821
													bv.maxForce = Vector3.new(1e9, 1e9, 1e9)
822
													bv.velocity = CF(Front.Position,TORSO.Position).lookVector*500
823
													bv.Parent = Front
824
													bv.Name = "MOVE"
825
													--print("Chain made")
826
													coroutine.resume(coroutine.create(function()
827
														Swait(30)
828
														bv:remove()
829
														local POS = Front.Position
830
														Front.CanCollide = false
831
														local onefourth = POS:Lerp(position, 0.25) + Vector3.new(0,0,0)
832
														local threefourths = POS:Lerp(position, 0.75) + Vector3.new(0,0,0)
833
												  		for i = 0, 1, 0.07 do
834
												    	  	Swait()
835
												    	  	Front.CFrame = CFrame.new(newBezier(POS, onefourth, threefourths, position, i))
836
												    	end
837
														Front:remove()
838
														ChainLink:remove()
839
													end))
840
													local harm = Front.Touched:Connect(function(hit)
841
														impale(Front,hit)
842
													end)
843
												end
844
											end))
845
									elseif DoesWarp == true then
846
										local defence = Instance.new("BoolValue",v)
847
										defence.Name = ("HitBy"..Player.Name)
848
										game:GetService("Debris"):AddItem(defence, 0.001)
849
										local TORSO = v:FindFirstChild("HumanoidRootPart") or v:FindFirstChild("Torso") or v:FindFirstChild("UpperTorso")
850
										Warp(TORSO,Instakill)
851
									else
852
										if CanBeDodgedByJumping == true then
853
											if body[part].Position.Y < position.Y+5 then
854
												if math.random(1,100) < critrate+1 then
855
													HUMAN.Health = HUMAN.Health - dmg*critmultiplier
856
													StatLabel("Normal", body[part].CFrame * CF(0, 0 + (body[part].Size.z - 1), 0), "CRIT/"..dmg*critmultiplier, C3(255/255, 0, 0))
857
												else
858
													HUMAN.Health = HUMAN.Health - dmg
859
													StatLabel("Normal", body[part].CFrame * CF(0, 0 + (body[part].Size.z - 1), 0), dmg, C3(0, 0, 0))
860
												end
861
												local defence = Instance.new("BoolValue",v)
862
												defence.Name = ("HitBy"..Player.Name)
863
												game:GetService("Debris"):AddItem(defence, 0.01)
864
											end
865
										else
866
											if beserk == true then
867
												HUMAN.Health = 0
868
											end
869
											if math.random(1,100) < critrate+1 then
870
												HUMAN.Health = HUMAN.Health - dmg*critmultiplier
871
												StatLabel("Normal", body[part].CFrame * CF(0, 0 + (body[part].Size.z - 1), 0), "CRIT/"..dmg*critmultiplier, C3(255/255, 0, 0))
872
											else
873
												HUMAN.Health = HUMAN.Health - dmg
874
												StatLabel("Normal", body[part].CFrame * CF(0, 0 + (body[part].Size.z - 1), 0), dmg, C3(0, 0, 0))
875
											end
876
											local defence = Instance.new("BoolValue",v)
877
											defence.Name = ("HitBy"..Player.Name)
878
											game:GetService("Debris"):AddItem(defence, 0.01)
879
										end
880
									end
881
								end
882
							end
883
						end
884
						--body[part].Velocity = CFrame.new(position,body[part].Position).lookVector*5*maxstrength
885
					end
886
				end
887
			end
888
			if v.ClassName == "Part" then
889
				if v.Anchored == false and (v.Position - position).Magnitude < radius then
890
					v.Velocity = CFrame.new(position,v.Position).lookVector*5*maxstrength
891
				end
892
			end
893
		end
894
	end
895
end
896
897
function Warp(Victim,WarpToVoid)
898
	print("Warping "..Victim.Name.."...")
899
	Victim.Anchored = true
900
	coroutine.resume(coroutine.create(function()
901
		local GUI,GUI2 = CreateGUICircle(Victim)
902
		CreateSound("1208650519", Victim, 10, 1)
903
		for i = 1, 100 do
904
			Swait()
905
			GUI.Size = GUI.Size + UDim2.new(0.2,0,0.2,0)
906
			GUI2.Rotation = GUI2.Rotation + 4
907
		end
908
			CastWarpOutlines(Victim.Parent)
909
			if WarpToVoid == false then
910
			Victim.CFrame = Victim.CFrame * CF(MRANDOM(-65,65),0,MRANDOM(-65,65))
911
			CreateSound("1177785010", Victim, 10, 1)
912
			local HUMANOID = Victim.Parent:FindFirstChildOfClass("Humanoid")
913
			if HUMANOID ~= nil then
914
				local dmg = MRANDOM(75,95)
915
				HUMANOID.Health = HUMANOID.Health - dmg
916
				StatLabel("Normal", Victim.CFrame * CF(0, 0 + (Victim.Size.z - 1), 0), "WARPED/"..dmg, C3(0.3, 0, 0.3))
917
			end
918
			for i = 1, 50 do
919
				Swait()
920
				GUI.Size = GUI.Size - UDim2.new(0.4,0,0.4,0)
921
				GUI2.Rotation = GUI2.Rotation - 8
922
			end
923
			Victim.Anchored = false
924
			GUI:remove()
925
		elseif WarpToVoid == true then
926
			CastWarpOutlines(Victim.Parent)
927
			q = Victim.Parent:GetChildren()
928
			for i = 1, #q do
929
				if q[i] ~= Victim then
930
					q[i]:remove()
931
				end
932
			end
933
			CreateSound("1177785010", Victim, 10, 1)
934
			Victim.Transparency = 1
935
			for i = 1, 50 do
936
				Swait()
937
				GUI.Size = GUI.Size - UDim2.new(0.4,0,0.4,0)
938
				GUI2.Rotation = GUI2.Rotation - 8
939
			end
940
			Victim.Parent:remove()
941
		end
942
	end))
943
end
944
945
function killnearest(position,range,maxstrength)
946
	for i,v in ipairs(workspace:GetChildren()) do
947
	local body = v:GetChildren()
948
		for part = 1, #body do
949
			if((body[part].ClassName == "Part" or body[part].ClassName == "MeshPart") and v ~= Character) then
950
				if(body[part].Position - position).Magnitude < range then
951
					if v.ClassName == "Model" then
952
						v:BreakJoints()
953
					end
954
					--table.insert(Effects2,{body[part],"Disappear",0.02,2,2,2,2})
955
					body[part].Velocity = CFrame.new(position,body[part].Position).lookVector*5*maxstrength
956
				end
957
			end
958
		end
959
		if v.ClassName == "Part" then
960
			if v.Anchored == false and (v.Position - position).Magnitude < range then
961
				--table.insert(Effects2,{v,"Disappear",0.02,2,2,2,2})
962
				v.Velocity = CFrame.new(position,v.Position).lookVector*5*maxstrength
963
			end
964
		end
965
	end
966
end
967
968
function AttackTemplate()
969
	ATTACK = true
970
	Rooted = false
971
	for i=0, 1, 0.1 / Animation_Speed do
972
		Swait()
973
		RootJoint.C0 = Clerp(RootJoint.C0,ROOTC0 * CF(0, 0, 0 + 0.05 * COS(SINE / 12)) * ANGLES(RAD(0), RAD(0), RAD(0)), 0.15 / Animation_Speed)
974
		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)
975
		PupilWeld.C0 = Clerp(PupilWeld.C0, CF(0.13,0.24,-0.58) * ANGLES(RAD(0), RAD(0), RAD(0)), 0.15 / Animation_Speed)
976
		RightShoulder.C0 = Clerp(RightShoulder.C0, CF(1.5, 0.5, 0) * ANGLES(RAD(0), RAD(0), RAD(12)) * RIGHTSHOULDERC0, 0.15 / Animation_Speed)
977
		LeftShoulder.C0 = Clerp(LeftShoulder.C0, CF(-1.5, 0.5, 0) * ANGLES(RAD(0), RAD(0), RAD(-12)) * LEFTSHOULDERC0, 0.15 / Animation_Speed)
978
		RightHip.C0 = Clerp(RightHip.C0, CF(1, -1 - 0.05 * COS(SINE / 12), -0.01) * ANGLES(RAD(0), RAD(90), RAD(0)) * ANGLES(RAD(-8), RAD(0), RAD(0)), 0.15 / Animation_Speed)
979
		LeftHip.C0 = Clerp(LeftHip.C0, CF(-1, -1 - 0.05 * COS(SINE / 12), -0.01) * ANGLES(RAD(0), RAD(-90), RAD(0)) * ANGLES(RAD(-8), RAD(0), RAD(0)), 0.15 / Animation_Speed)
980
	end
981
	ATTACK = false
982
	Rooted = false
983
end
984
985
function VoidWarp()
986
	ATTACK = true
987
	Rooted = false
988
	for i=0, 0.2, 0.1 / Animation_Speed do
989
		Swait()
990
		RootJoint.C0 = Clerp(RootJoint.C0,ROOTC0 * CF(0, 0, 0) * ANGLES(RAD(15), RAD(0), RAD(0)), 0.5 / Animation_Speed)
991
		Neck.C0 = Clerp(Neck.C0, NECKC0 * CF(0, 0, 0 + ((1) - 1)) * ANGLES(RAD(25 - 2.5 * SIN(SINE / 12)), RAD(0), RAD(0)), 0.5 / Animation_Speed)
992
		PupilWeld.C0 = Clerp(PupilWeld.C0, CF(0.13,0.24,-0.58) * ANGLES(RAD(0), RAD(0), RAD(0)), 0.15 / Animation_Speed)
993
		RightShoulder.C0 = Clerp(RightShoulder.C0, CF(1.25, 0.75, -0.5) * ANGLES(RAD(35), RAD(0), RAD(-65)) * RIGHTSHOULDERC0, 0.5 / Animation_Speed)
994
		LeftShoulder.C0 = Clerp(LeftShoulder.C0, CF(-1.25, 0.75, -0.5) * ANGLES(RAD(35), RAD(0), RAD(65)) * LEFTSHOULDERC0, 0.5 / Animation_Speed)
995
		RightHip.C0 = Clerp(RightHip.C0, CF(1, -0.5, -0.5) * ANGLES(RAD(0), RAD(90), RAD(0)) * ANGLES(RAD(-15), RAD(0), RAD(0)), 0.5 / Animation_Speed)
996
		LeftHip.C0 = Clerp(LeftHip.C0, CF(-1, -0.5, -0.5) * ANGLES(RAD(0), RAD(-90), RAD(0)) * ANGLES(RAD(-15), RAD(0), RAD(0)), 0.5 / Animation_Speed)
997
	end
998
	AoEDamage(Torso.Position,15,0,0,0,false,0,0,false,true,false)
999
	CreateSound("1208650519", Torso, 10, 2.5)
1000
	local GUI,GUI2 = CreateGUICircle(Torso)
1001
	for i = 1, 50 do
1002
		Swait()
1003
		GUI.Size = GUI.Size + UDim2.new(i/60,0,i/60,0)
1004
		GUI2.Rotation = GUI2.Rotation + i/10
1005
	end
1006
	CastWarpOutlines(Character)
1007
	local POS = Torso.Position
1008
	RootPart.CFrame = CF(CF(Mouse.Hit.p)*CF(0,2,0).p,POS)
1009
	Swait()
1010
	CreateSound("1177785010", Torso, 10, 1)
1011
	coroutine.resume(coroutine.create(function()
1012
		for i = 1, 50 do
1013
			Swait()
1014
			GUI.Size = GUI.Size - UDim2.new(i/60,0,i/60,0)
1015
			GUI2.Rotation = GUI2.Rotation - i/10
1016
		end
1017
	end))
1018
	ATTACK = false
1019
	Rooted = false
1020
end
1021
1022
local asd = Instance.new("ParticleEmitter")
1023
asd.Color = ColorSequence.new(Color3.new(1, 0, 0), Color3.new(.5, 0, 0))
1024
asd.LightEmission = .1
1025
asd.Size = NumberSequence.new(0.2)
1026
asd.Texture = "http://www.roblox.com/asset/?ID=291880914"
1027
aaa = NumberSequence.new({NumberSequenceKeypoint.new(0, 0.2),NumberSequenceKeypoint.new(1, 5)})
1028
bbb = NumberSequence.new({NumberSequenceKeypoint.new(0, 1),NumberSequenceKeypoint.new(0.0636, 0), NumberSequenceKeypoint.new(1, 1)})
1029
asd.Transparency = bbb
1030
asd.Size = aaa
1031
asd.ZOffset = .9
1032
asd.Acceleration = Vector3.new(0, -15, 0)
1033
asd.LockedToPart = false
1034
asd.EmissionDirection = "Back"
1035
asd.Lifetime = NumberRange.new(1, 2)
1036
asd.Rotation = NumberRange.new(-100, 100)
1037
asd.RotSpeed = NumberRange.new(-100, 100)
1038
asd.Speed = NumberRange.new(25,35)
1039
asd.Enabled = false
1040
asd.VelocitySpread = 5
1041
1042
function getbloody(victim,amount)
1043
local PART = IT("Part",Effects)
1044
PART.Transparency = 1
1045
PART.Size = victim.Size
1046
PART.Anchored = true
1047
PART.CanCollide = false
1048
PART.CFrame = CF(victim.Position,Torso.Position)
1049
local HITPLAYERSOUNDS = {"356551938","264486467"}
1050
Debris:AddItem(PART,5)
1051
CreateSound(HITPLAYERSOUNDS[MRANDOM(1, #HITPLAYERSOUNDS)], PART, 1, (math.random(8,12)/10))
1052
local prtcl = asd:Clone()
1053
prtcl.Parent = PART
1054
prtcl:Emit(amount*10)
1055
end
1056
1057
function impale(chain,hit)
1058
	if hit.Parent ~= Character and hit.Parent:FindFirstChildOfClass("Humanoid") then
1059
		local humanoid = hit.Parent:FindFirstChildOfClass("Humanoid")
1060
		if humanoid.Health ~= 0 then
1061
			hit.Parent:BreakJoints()
1062
			getbloody(hit,15)
1063
			local prtcl = asd:Clone()
1064
			prtcl.Parent = chain
1065
			prtcl.Enabled = true
1066
			prtcl.Speed = NumberRange.new(0)
1067
			prtcl.Size = NumberSequence.new(0.2)
1068
		end
1069
	end
1070
end
1071
1072
function clerp(a, b, t)
1073
  return a:lerp(b, t)
1074
end
1075
1076
function newBezier(startpos, pos2, pos3, endpos, t)
1077
  local A = clerp(startpos, pos2, t)
1078
  local B = clerp(pos2, pos3, t)
1079
  local C = clerp(pos3, endpos, t)
1080
  local lerp1 = clerp(A, B, t)
1081
  local lerp2 = clerp(B, C, t)
1082
  local cubic = clerp(lerp1, lerp2, t)
1083
  return cubic
1084
end
1085
1086
function VoidChain()
1087
	ATTACK = true
1088
	Rooted = false
1089
	for i=0, 2, 0.1 / Animation_Speed do
1090
		turnto(Mouse.Hit.p)
1091
		Swait()
1092
		RootJoint.C0 = Clerp(RootJoint.C0,ROOTC0 * CF(0, 0, 0 + 0.05 * COS(SINE / 12)) * ANGLES(RAD(0), RAD(0), RAD(25)), 0.25 / Animation_Speed)
1093
		Neck.C0 = Clerp(Neck.C0, NECKC0 * CF(0, 0, 0 + ((1) - 1)) * ANGLES(RAD(15 - 2.5 * SIN(SINE / 12)), RAD(0), RAD(5)), 0.25 / Animation_Speed)
1094
		PupilWeld.C0 = Clerp(PupilWeld.C0, CF(0.2,0.30,-0.58) * ANGLES(RAD(0), RAD(0), RAD(0)), 0.15 / Animation_Speed)
1095
		RightShoulder.C0 = Clerp(RightShoulder.C0, CF(1.5, 0.5, 0) * ANGLES(RAD(90), RAD(0), RAD(25)) * RIGHTSHOULDERC0, 0.25 / Animation_Speed)
1096
		LeftShoulder.C0 = Clerp(LeftShoulder.C0, CF(-1.5, 0.5, 0) * ANGLES(RAD(0), RAD(0), RAD(-12)) * LEFTSHOULDERC0, 0.25 / Animation_Speed)
1097
		RightHip.C0 = Clerp(RightHip.C0, CF(1, -1 - 0.05 * COS(SINE / 12), -0.01) * ANGLES(RAD(0), RAD(90), RAD(0)) * ANGLES(RAD(-8), RAD(0), RAD(0)), 0.15 / Animation_Speed)
1098
		LeftHip.C0 = Clerp(LeftHip.C0, CF(-1, -1 - 0.05 * COS(SINE / 12), -0.01) * ANGLES(RAD(0), RAD(-90), RAD(0)) * ANGLES(RAD(-8), RAD(0), RAD(0)), 0.15 / Animation_Speed)
1099
	end
1100
	CreateSound("1208650519", RightArm, 10, 2)
1101
	local RING = CreateMagicCircle()
1102
	RING.CFrame = RightArm.CFrame * CF(0,-1.1,0)
1103
	for i = 1, 5 do
1104
		turnto(Mouse.Hit.p)
1105
		Swait()
1106
		local FRAME = CF(RightArm.CFrame * CF(MRANDOM(-5,5),MRANDOM(0,7.5),MRANDOM(-5,5)).p,RightArm.Position)
1107
		MagicSphere(VT(0,0,5),25,FRAME,"Royal purple",VT(0.2,0.2,0))
1108
		MagicSphere(VT(0,0,4.9),25,FRAME,"Really black",VT(0.18,0.18,0))
1109
		RING.CFrame = RightArm.CFrame * CF(0,-1.1,0) * ANGLES(RAD(0),RAD(i*2),RAD(0))
1110
		RING.Size = RING.Size + VT(1,0,1)
1111
	end
1112
	coroutine.resume(coroutine.create(function()
1113
		local POS = Mouse.Hit.p
1114
		local A = IT("Attachment",RING)
1115
		for i = 1, 15 do
1116
			Swait(MRANDOM(0,5))
1117
			coroutine.resume(coroutine.create(function()
1118
				local Front = CreatePart(3, Effects, "Neon", 1, 1, "Really black", "Chain head", VT(1,1,1),false)
1119
				--print("Chain start")
1120
				Front.CFrame = RING.CFrame*CF(MRANDOM(-3,3),0,MRANDOM(-3,3))
1121
				Front.CanCollide = true
1122
				CreateSound(HITWEAPONSOUNDS[MRANDOM(1,#HITWEAPONSOUNDS)], Front, 10, 1)
1123
				local B = IT("Attachment",Front)
1124
				local ChainLink = IT("Beam",RING)
1125
				ChainLink.Texture = "rbxassetid://1262544869"
1126
				ChainLink.TextureSpeed = 0
1127
				ChainLink.FaceCamera = true
1128
				ChainLink.Width0 = 3
1129
				ChainLink.Attachment0 = A
1130
				ChainLink.Attachment1 = B
1131
				ChainLink.CurveSize0 = MRANDOM(-5,5)
1132
				ChainLink.CurveSize1 = MRANDOM(-5,5)
1133
				ChainLink.TextureMode = "Static"
1134
				local bv = Instance.new("BodyVelocity") 
1135
				bv.maxForce = Vector3.new(1e9, 1e9, 1e9)
1136
				bv.velocity = CF(Front.Position,VT(POS.X+MRANDOM(-3,3),POS.Y+MRANDOM(-3,3),POS.Z+MRANDOM(-3,3))).lookVector*500
1137
				bv.Parent = Front
1138
				bv.Name = "MOVE"
1139
				--print("Chain made")
1140
				coroutine.resume(coroutine.create(function()
1141
					Swait(50)
1142
					bv:remove()
1143
					local POS = Front.Position
1144
					Front.CanCollide = false
1145
					local onefourth = POS:Lerp(RING.Position, 0.25) + Vector3.new(math.random(-5, 5), math.random(-5, 5),math.random(-5, 5))
1146
					local threefourths = POS:Lerp(RING.Position, 0.75) + Vector3.new(math.random(-5, 5), math.random(-5, 5),math.random(-5, 5))
1147
			  		for i = 0, 1, 0.07 do
1148
			    	  	Swait()
1149
			    	  	Front.CFrame = CFrame.new(newBezier(POS, onefourth, threefourths, RING.Position, i))
1150
			    	end
1151
					Front:remove()
1152
					ChainLink:remove()
1153
				end))
1154
				local harm = Front.Touched:Connect(function(hit)
1155
					impale(Front,hit)
1156
				end)
1157
			end))
1158
		end
1159
		Swait(60)
1160
		for i = 1, 5 do
1161
			Swait()
1162
			RING.Size = RING.Size - VT(1,0,1)
1163
		end
1164
		RING:remove()
1165
	end))
1166
	ATTACK = false
1167
	Rooted = false
1168
end
1169
1170
function VortexLeash()
1171
	ATTACK = true
1172
	Rooted = true
1173
	for i=0, 1, 0.1 / Animation_Speed do
1174
		Swait()
1175
		RootJoint.C0 = Clerp(RootJoint.C0, ROOTC0 * CF(0, 0, -1) * ANGLES(RAD(45), RAD(0), RAD(0)), 0.5 / Animation_Speed)
1176
		Neck.C0 = Clerp(Neck.C0, NECKC0 * CF(0, 0, 0 + ((1) - 1)) * ANGLES(RAD(0), RAD(0), RAD(0)), 0.5 / Animation_Speed)
1177
		PupilWeld.C0 = Clerp(PupilWeld.C0, CF(0.13,0.2,-0.58) * ANGLES(RAD(0), RAD(0), RAD(0)), 0.15 / Animation_Speed)
1178
		RightShoulder.C0 = Clerp(RightShoulder.C0, CF(1.5, 1, -1) * ANGLES(RAD(60), RAD(-690), RAD(2 - 2.5 * COS(SINE / 12) + 2.5 * SIN(SINE / 24))) * RIGHTSHOULDERC0, 0.5 / Animation_Speed)
1179
		LeftShoulder.C0 = Clerp(LeftShoulder.C0, CF(-1.5, 0.5 , 0) * ANGLES(RAD(90), RAD(25), RAD(45)) * LEFTSHOULDERC0, 0.5 / Animation_Speed/8)
1180
		RightHip.C0 = Clerp(RightHip.C0, CF(1, -0.3 * Player_Size, -1) * ANGLES(RAD(0), RAD(90), RAD(0)) * ANGLES(RAD(0), RAD(0), RAD(-20)), 0.5 / Animation_Speed/8)
1181
		LeftHip.C0 = Clerp(LeftHip.C0, CF(-1, -0.3, 0) * ANGLES(RAD(0), RAD(5), RAD(0)) * ANGLES(RAD(45), RAD(0), RAD(10)), 0.5 / Animation_Speed/8)
1182
	end
1183
	local RING = CreateMagicCircle()
1184
	CreateSound("1208650519", RING, 10, 1.5)
1185
	RING.CFrame = RootPart.CFrame * CF(0,-2.8,0)
1186
	local FRAME = RootPart.CFrame * CF(0,-2.8,0)
1187
	for i = 1, 75 do
1188
		Swait()
1189
		local FRAME = CF(RightArm.CFrame * CF(MRANDOM(-5,5),MRANDOM(0,7.5),MRANDOM(-5,5)).p,RightArm.Position)
1190
		MagicSphere(VT(0,0,5),25,FRAME,"Royal purple",VT(0.2,0.2,0))
1191
		MagicSphere(VT(0,0,4.9),25,FRAME,"Really black",VT(0.18,0.18,0))
1192
		RING.CFrame = RING.CFrame * ANGLES(RAD(0),RAD(i/5),RAD(0))
1193
		RING.Size = RING.Size + VT(1,0,1)
1194
	end
1195
	coroutine.resume(coroutine.create(function()
1196
		for i = 1, 450 do
1197
			Swait(2)
1198
			local FRAME = CF(RING.CFrame * CF(MRANDOM(-25,25),MRANDOM(0,35),MRANDOM(-25,25)).p,RING.Position)
1199
			MagicSphere(VT(0,0,5),25,FRAME,"Royal purple",VT(0.2,0.2,0))
1200
			MagicSphere(VT(0,0,4.9),25,FRAME,"Really black",VT(0.18,0.18,0))
1201
			MagicSphere(VT(0,0,0),10,RING.CFrame,"Royal purple",VT(2,4,2))
1202
			MagicSphere(VT(0,0,0),10,RING.CFrame,"Really black",VT(1.8,3.8,1.8))
1203
			local A = IT("Attachment",RING)
1204
			local POS = RING.CFrame * CF(MRANDOM(-150,150),MRANDOM(5,50),MRANDOM(-150,150)).p
1205
			coroutine.resume(coroutine.create(function()
1206
				local Front = CreatePart(3, Effects, "Neon", 1, 1, "Really black", "Chain head", VT(1,1,1),false)
1207
				--print("Chain start")
1208
				Front.CFrame = RING.CFrame*CF(MRANDOM(-3,3),0,MRANDOM(-3,3))
1209
				Front.CanCollide = false
1210
				CreateSound(HITWEAPONSOUNDS[MRANDOM(1,#HITWEAPONSOUNDS)], Front, 2, 1)
1211
				local B = IT("Attachment",Front)
1212
				local ChainLink = IT("Beam",RING)
1213
				ChainLink.Texture = "rbxassetid://1262544869"
1214
				ChainLink.TextureSpeed = 0
1215
				ChainLink.FaceCamera = true
1216
				ChainLink.Width0 = 3
1217
				ChainLink.Attachment0 = A
1218
				ChainLink.Attachment1 = B
1219
				ChainLink.CurveSize0 = MRANDOM(-5,5)
1220
				ChainLink.CurveSize1 = MRANDOM(-5,5)
1221
				ChainLink.TextureMode = "Static"
1222
				local bv = Instance.new("BodyVelocity") 
1223
				bv.maxForce = Vector3.new(1e9, 1e9, 1e9)
1224
				bv.velocity = CF(Front.Position,VT(POS.X+MRANDOM(-3,3),POS.Y+MRANDOM(-3,3),POS.Z+MRANDOM(-3,3))).lookVector*500
1225
				bv.Parent = Front
1226
				bv.Name = "MOVE"
1227
				--print("Chain made")
1228
				coroutine.resume(coroutine.create(function()
1229
					Swait(50)
1230
					bv:remove()
1231
					local POS = Front.Position
1232
					Front.CanCollide = false
1233
					local onefourth = POS:Lerp(RING.Position, 0.25) + Vector3.new(math.random(-5, 5), math.random(-5, 5),math.random(-5, 5))
1234
					local threefourths = POS:Lerp(RING.Position, 0.75) + Vector3.new(math.random(-5, 5), math.random(-5, 5),math.random(-5, 5))
1235
			  		for i = 0, 1, 0.07 do
1236
			    	  	Swait()
1237
			    	  	Front.CFrame = CFrame.new(newBezier(POS, onefourth, threefourths, RING.Position, i))
1238
			    	end
1239
					Front:remove()
1240
					ChainLink:remove()
1241
				end))
1242
				local harm = Front.Touched:Connect(function(hit)
1243
					impale(Front,hit)
1244
				end)
1245
			end))
1246
			AoEDamage(RING.Position,75,0,0,0,0,0,0,0,0,0,true)
1247
			RING.CFrame = RING.CFrame* ANGLES(RAD(0),RAD(5),RAD(0))
1248
		end
1249
		Swait(65)
1250
		for i = 1, 75 do
1251
			Swait()
1252
			RING.CFrame = RING.CFrame* ANGLES(RAD(0),RAD(-i/5),RAD(0))
1253
			RING.Size = RING.Size - VT(1,0,1)
1254
		end
1255
		RING:remove()
1256
	end))
1257
	ATTACK = false
1258
	Rooted = false
1259
end
1260
1261
function VortexBarrier()
1262
	ATTACK = true
1263
	Rooted = true
1264
	for i=0, 2, 0.1 / Animation_Speed do
1265
		Swait()
1266
		RootJoint.C0 = Clerp(RootJoint.C0,ROOTC0 * CF(0, 0, 0) * ANGLES(RAD(15), RAD(0), RAD(0)), 0.15 / Animation_Speed)
1267
		Neck.C0 = Clerp(Neck.C0, NECKC0 * CF(0, 0, 0 + ((1) - 1)) * ANGLES(RAD(25 - 2.5 * SIN(SINE / 12)), RAD(0), RAD(0)), 0.15 / Animation_Speed)
1268
		PupilWeld.C0 = Clerp(PupilWeld.C0, CF(0.13,0.24,-0.58) * ANGLES(RAD(0), RAD(0), RAD(0)), 0.15 / Animation_Speed)
1269
		RightShoulder.C0 = Clerp(RightShoulder.C0, CF(1.25, 0.75, -0.5) * ANGLES(RAD(35), RAD(0), RAD(-65)) * RIGHTSHOULDERC0, 0.15 / Animation_Speed)
1270
		LeftShoulder.C0 = Clerp(LeftShoulder.C0, CF(-1.25, 0.75, -0.5) * ANGLES(RAD(35), RAD(0), RAD(65)) * LEFTSHOULDERC0, 0.15 / Animation_Speed)
1271
		RightHip.C0 = Clerp(RightHip.C0, CF(1, -0.5, -0.5) * ANGLES(RAD(0), RAD(90), RAD(0)) * ANGLES(RAD(-15), RAD(0), RAD(0)), 0.15 / Animation_Speed)
1272
		LeftHip.C0 = Clerp(LeftHip.C0, CF(-1, -0.5, -0.5) * ANGLES(RAD(0), RAD(-90), RAD(0)) * ANGLES(RAD(-15), RAD(0), RAD(0)), 0.15 / Animation_Speed)
1273
	end
1274
	for i=0, 0.5, 0.1 / Animation_Speed do
1275
		Swait()
1276
		RootJoint.C0 = Clerp(RootJoint.C0,ROOTC0 * CF(0, 0.2, 0) * ANGLES(RAD(-15), RAD(0), RAD(0)), 0.5 / Animation_Speed)
1277
		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.5 / Animation_Speed)
1278
		PupilWeld.C0 = Clerp(PupilWeld.C0, CF(0.13,0.27,-0.58) * ANGLES(RAD(0), RAD(0), RAD(0)), 0.15 / Animation_Speed)
1279
		RightShoulder.C0 = Clerp(RightShoulder.C0, CF(1.5, 0.75,0) * ANGLES(RAD(0), RAD(0), RAD(85)) * RIGHTSHOULDERC0, 0.5 / Animation_Speed)
1280
		LeftShoulder.C0 = Clerp(LeftShoulder.C0, CF(-1.5, 0.75, 0) * ANGLES(RAD(0), RAD(0), RAD(-85)) * LEFTSHOULDERC0, 0.5 / Animation_Speed)
1281
		RightHip.C0 = Clerp(RightHip.C0, CF(1, -1, -0.01) * ANGLES(RAD(0), RAD(90), RAD(0)) * ANGLES(RAD(-15), RAD(0), RAD(-15)), 0.5 / Animation_Speed)
1282
		LeftHip.C0 = Clerp(LeftHip.C0, CF(-1, -1, -0.01) * ANGLES(RAD(0), RAD(-90), RAD(0)) * ANGLES(RAD(-15), RAD(0), RAD(15)), 0.5 / Animation_Speed)
1283
	end
1284
	CreateSound("1208650519", Effects, 10, 1)
1285
	local GUI,GUI2 = CreateGUICircle(Torso)
1286
	local GUI3,GUI4 = CreateGUICircle(Torso)
1287
	for i = 1, 200 do
1288
		Swait()
1289
		local FRAME = CF(Torso.CFrame * CF(MRANDOM(-35,35),MRANDOM(-35,35),MRANDOM(-35,35)).p,Torso.Position)
1290
		MagicSphere(VT(0,0,5),25,FRAME,"Royal purple",VT(0.2,0.2,0))
1291
		MagicSphere(VT(0,0,4.9),25,FRAME,"Really black",VT(0.18,0.18,0))
1292
		local FRAME = CF(Torso.CFrame * CF(MRANDOM(-35,35),MRANDOM(-35,35),MRANDOM(-35,35)).p,Torso.Position)
1293
		MagicSphere(VT(0,0,5),25,FRAME,"Royal purple",VT(0.2,0.2,0))
1294
		MagicSphere(VT(0,0,4.9),25,FRAME,"Really black",VT(0.18,0.18,0))
1295
		GUI.Size = GUI.Size + UDim2.new(i/60,0,i/60,0)
1296
		GUI2.Rotation = GUI2.Rotation + i/10
1297
		GUI3.Size = GUI3.Size + UDim2.new(i/120,0,i/120,0)
1298
		GUI4.Rotation = GUI4.Rotation - i/10
1299
	end
1300
	AoEDamage(Torso.Position,150,0,0,0,false,0,0,false,true,true)
1301
	Swait(25)
1302
	for i = 1, 100 do
1303
		Swait()
1304
		GUI.Size = GUI.Size - UDim2.new(i/15,0,i/15,0)
1305
		GUI2.Rotation = GUI2.Rotation - i/5
1306
		GUI3.Size = GUI3.Size - UDim2.new(i/30,0,i/30,0)
1307
		GUI4.Rotation = GUI4.Rotation + i/5
1308
	end
1309
	GUI:remove()
1310
	GUI3:remove()
1311
	ATTACK = false
1312
	Rooted = false
1313
end
1314
1315
function MouseDown(Mouse)
1316
	if ATTACK == false then
1317
	end
1318
end
1319
1320
function MouseUp(Mouse)
1321
HOLD = false
1322
end
1323
1324
function KeyDown(Key)
1325
	KEYHOLD = true
1326
	if Key == "z" and ATTACK == false then
1327
		VoidWarp()
1328
	end
1329
1330
	if Key == "b" and ATTACK == false then
1331
		VoidChain()
1332
	end
1333
1334
	if Key == "c" and ATTACK == false then
1335
		VortexLeash()
1336
	end
1337
1338
	if Key == "v" and ATTACK == false then
1339
		VortexBarrier()
1340
	end
1341
1342
	if Key == "x" and ATTACK == false then
1343
	end
1344
1345
	if Key == "t" and ATTACK == false then
1346
		CreateSound(TAUNTS[MRANDOM(1,#TAUNTS)], Head, 10, 1)
1347
	end
1348
end
1349
1350
function KeyUp(Key)
1351
	KEYHOLD = false
1352
end
1353
1354
	Mouse.Button1Down:connect(function(NEWKEY)
1355
		MouseDown(NEWKEY)
1356
	end)
1357
	Mouse.Button1Up:connect(function(NEWKEY)
1358
		MouseUp(NEWKEY)
1359
	end)
1360
	Mouse.KeyDown:connect(function(NEWKEY)
1361
		KeyDown(NEWKEY)
1362
	end)
1363
	Mouse.KeyUp:connect(function(NEWKEY)
1364
		KeyUp(NEWKEY)
1365
	end)
1366
1367
function unanchor()
1368
	if UNANCHOR == true then
1369
		g = Character:GetChildren()
1370
		for i = 1, #g do
1371
			if g[i].ClassName == "Part" then
1372
				g[i].Anchored = false
1373
			end
1374
		end
1375
	end
1376
end
1377
1378
local FF = IT("ForceField",Character)
1379
FF.Visible = false
1380
1381
Humanoid.Changed:connect(function(Jump)
1382
	if Jump == "Jump" and (Disable_Jump == true) then
1383
		Humanoid.Jump = false
1384
	end
1385
end)
1386
1387
Speed = 45
1388
1389
while true do
1390
	Swait()
1391
	ANIMATE.Parent = nil
1392
	local IDLEANIMATION = Humanoid:LoadAnimation(ROBLOXIDLEANIMATION)
1393
	IDLEANIMATION:Play()
1394
	SINE = SINE + CHANGE
1395
	local TORSOVELOCITY = (RootPart.Velocity * VT(1, 0, 1)).magnitude
1396
	local TORSOVERTICALVELOCITY = RootPart.Velocity.y
1397
	local LV = Torso.CFrame:pointToObjectSpace(Torso.Velocity - Torso.Position)
1398
	local HITFLOOR = Raycast(RootPart.Position, (CF(RootPart.Position, RootPart.Position + VT(0, -1, 0))).lookVector, 4 * Player_Size, Character)
1399
	local WALKSPEEDVALUE = 3
1400
	if ANIM == "Walk" and TORSOVELOCITY > 1 then
1401
		RootJoint.C1 = Clerp(RootJoint.C1, ROOTC0 * CF(0, 0, -0.1 * COS(SINE / (WALKSPEEDVALUE / 2)) * Player_Size) * ANGLES(RAD(0), RAD(0), RAD(0)), 0.2 * (Humanoid.WalkSpeed / 16) / Animation_Speed)
1402
		Neck.C1 = Clerp(Neck.C1, CF(0 * Player_Size, -0.5 * Player_Size, 0 * Player_Size) * ANGLES(RAD(-90), RAD(0), RAD(180)) * ANGLES(RAD(2.5 * SIN(SINE / (WALKSPEEDVALUE / 2))), RAD(0), RAD(0) - Head.RotVelocity.Y / 30), 0.2 * (Humanoid.WalkSpeed / 16) / Animation_Speed)
1403
		RightHip.C1 = Clerp(RightHip.C1, CF(0.5 * Player_Size, 0.875 * Player_Size - 0.125 * SIN(SINE / WALKSPEEDVALUE) * Player_Size, -0.125 * COS(SINE / WALKSPEEDVALUE) * Player_Size) * ANGLES(RAD(0), RAD(90), RAD(0)) * ANGLES(RAD(0) - RightLeg.RotVelocity.Y / 75, RAD(0), RAD(60 * COS(SINE / WALKSPEEDVALUE))), 0.2 * (Humanoid.WalkSpeed / 16) / Animation_Speed)
1404
		LeftHip.C1 = Clerp(LeftHip.C1, CF(-0.5 * Player_Size, 0.875 * Player_Size + 0.125 * SIN(SINE / WALKSPEEDVALUE) * Player_Size, 0.125 * COS(SINE / WALKSPEEDVALUE) * Player_Size) * ANGLES(RAD(0), RAD(-90), RAD(0)) * ANGLES(RAD(0) + LeftLeg.RotVelocity.Y / 75, RAD(0), RAD(60 * COS(SINE / WALKSPEEDVALUE))), 0.2 * (Humanoid.WalkSpeed / 16) / Animation_Speed)
1405
	elseif (ANIM ~= "Walk") or (TORSOVELOCITY < 1) then
1406
		RootJoint.C1 = Clerp(RootJoint.C1, ROOTC0 * CF(0, 0, 0) * ANGLES(RAD(0), RAD(0), RAD(0)), 0.2 / Animation_Speed)
1407
		Neck.C1 = Clerp(Neck.C1, CF(0 * Player_Size, -0.5 * Player_Size, 0 * Player_Size) * ANGLES(RAD(-90), RAD(0), RAD(180)) * ANGLES(RAD(0), RAD(0), RAD(0)), 0.2 / Animation_Speed)
1408
		RightHip.C1 = Clerp(RightHip.C1, CF(0.5 * Player_Size, 1 * Player_Size, 0 * Player_Size) * ANGLES(RAD(0), RAD(90), RAD(0)) * ANGLES(RAD(0), RAD(0), RAD(0)), 0.2 / Animation_Speed)
1409
		LeftHip.C1 = Clerp(LeftHip.C1, CF(-0.5 * Player_Size, 1 * Player_Size, 0 * Player_Size) * ANGLES(RAD(0), RAD(-90), RAD(0)) * ANGLES(RAD(0), RAD(0), RAD(0)), 0.2 / Animation_Speed)
1410
	end
1411
	if TORSOVERTICALVELOCITY > 1 and HITFLOOR == nil then
1412
		ANIM = "Jump"
1413
		if ATTACK == false then
1414
			RootJoint.C0 = Clerp(RootJoint.C0, ROOTC0 * CF(0, 0, 0) * ANGLES(RAD(0), RAD(0), RAD(0)), 0.2 / Animation_Speed)
1415
			Neck.C0 = Clerp(Neck.C0, NECKC0 * CF(0, 0 * Player_Size, 0 + ((1) - 1)) * ANGLES(RAD(-20), RAD(0), RAD(0)), 0.2 / Animation_Speed)
1416
			PupilWeld.C0 = Clerp(PupilWeld.C0, CF(0.13,0.3,-0.58) * ANGLES(RAD(0), RAD(0), RAD(0)), 0.5 / Animation_Speed)
1417
			RightShoulder.C0 = Clerp(RightShoulder.C0, CF(1.5, 0.5, 0) * ANGLES(RAD(-40), RAD(0), RAD(20)) * RIGHTSHOULDERC0, 0.2 / Animation_Speed)
1418
			LeftShoulder.C0 = Clerp(LeftShoulder.C0, CF(-1., 0.5, 0 * Player_Size) * ANGLES(RAD(-40), RAD(0), RAD(-20)) * LEFTSHOULDERC0, 0.2 / Animation_Speed)
1419
			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)
1420
			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)
1421
	       end
1422
	elseif TORSOVERTICALVELOCITY < -1 and HITFLOOR == nil then
1423
		ANIM = "Fall"
1424
		if ATTACK == false then
1425
			RootJoint.C0 = Clerp(RootJoint.C0, ROOTC0 * CF(0, 0, 0 ) * ANGLES(RAD(0), RAD(0), RAD(0)), 0.2 / Animation_Speed)
1426
			Neck.C0 = Clerp(Neck.C0, NECKC0 * CF(0, 0 , 0 + ((1) - 1)) * ANGLES(RAD(20), RAD(0), RAD(0)), 0.2 / Animation_Speed)
1427
			PupilWeld.C0 = Clerp(PupilWeld.C0, CF(0.13,0.22,-0.58) * ANGLES(RAD(0), RAD(0), RAD(0)), 0.5 / Animation_Speed)
1428
			RightShoulder.C0 = Clerp(RightShoulder.C0, CF(1.5, 0.5, 0) * ANGLES(RAD(0), RAD(0), RAD(60)) * RIGHTSHOULDERC0, 0.2 / Animation_Speed)
1429
			LeftShoulder.C0 = Clerp(LeftShoulder.C0, CF(-1.5, 0.5, 0) * ANGLES(RAD(0), RAD(0), RAD(-60)) * LEFTSHOULDERC0, 0.2 / Animation_Speed)
1430
			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)
1431
			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)
1432
		end
1433
	elseif TORSOVELOCITY < 1 and HITFLOOR ~= nil then
1434
		ANIM = "Idle"
1435
		if ATTACK == false then
1436
			RootJoint.C0 = Clerp(RootJoint.C0,ROOTC0 * CF(0, 0, 0 + 0.05 * COS(SINE / 12)) * ANGLES(RAD(0), RAD(0), RAD(0)), 0.15 / Animation_Speed)
1437
			Neck.C0 = Clerp(Neck.C0, NECKC0 * CF(0, 0, 0 + ((1) - 1)) * ANGLES(RAD(0 - 2.5 * SIN(SINE / 12)), RAD(0), RAD(15)), 0.15 / Animation_Speed)
1438
			PupilWeld.C0 = Clerp(PupilWeld.C0, CF(0.2,0.25,-0.58) * ANGLES(RAD(0), RAD(0), RAD(0)), 0.15 / Animation_Speed)
1439
			RightShoulder.C0 = Clerp(RightShoulder.C0, CF(1.5, 0.5, 0) * ANGLES(RAD(0), RAD(0), RAD(12)) * RIGHTSHOULDERC0, 0.15 / Animation_Speed)
1440
			LeftShoulder.C0 = Clerp(LeftShoulder.C0, CF(-1.5, 0.5, 0) * ANGLES(RAD(0), RAD(0), RAD(-12)) * LEFTSHOULDERC0, 0.15 / Animation_Speed)
1441
			RightHip.C0 = Clerp(RightHip.C0, CF(1, -1 - 0.05 * COS(SINE / 12), -0.01) * ANGLES(RAD(0), RAD(90), RAD(0)) * ANGLES(RAD(-8), RAD(0), RAD(0)), 0.15 / Animation_Speed)
1442
			LeftHip.C0 = Clerp(LeftHip.C0, CF(-1, -1 - 0.05 * COS(SINE / 12), -0.01) * ANGLES(RAD(0), RAD(-90), RAD(0)) * ANGLES(RAD(-8), RAD(0), RAD(0)), 0.15 / Animation_Speed)
1443
		end
1444
	elseif TORSOVELOCITY > 1 and HITFLOOR ~= nil then
1445
		ANIM = "Walk"
1446
		WALK = WALK + 1 / Animation_Speed
1447
		if WALK >= 15 - (5 * (Humanoid.WalkSpeed / 16 / Player_Size)) then
1448
			WALK = 0
1449
			if WALKINGANIM == true then
1450
				WALKINGANIM = false
1451
			elseif WALKINGANIM == false then
1452
				WALKINGANIM = true
1453
			end
1454
		end
1455
		--RightHip.C1 = Clerp(RightHip.C1, CF(0.5 * Player_Size, 0.875 * Player_Size - 0.125 * SIN(SINE / WALKSPEEDVALUE) * Player_Size, -0.125 * COS(SINE / WALKSPEEDVALUE) * Player_Size) * ANGLES(RAD(0), RAD(90), RAD(0)) * ANGLES(RAD(0) - RightLeg.RotVelocity.Y / 75, RAD(0), RAD(60 * COS(SINE / WALKSPEEDVALUE))), 0.2 * (Humanoid.WalkSpeed / 16) / Animation_Speed)
1456
		--LeftHip.C1 = Clerp(LeftHip.C1, CF(-0.5 * Player_Size, 0.875 * Player_Size + 0.125 * SIN(SINE / WALKSPEEDVALUE) * Player_Size, 0.125 * COS(SINE / WALKSPEEDVALUE) * Player_Size) * ANGLES(RAD(0), RAD(-90), RAD(0)) * ANGLES(RAD(0) + LeftLeg.RotVelocity.Y / 75, RAD(0), RAD(60 * COS(SINE / WALKSPEEDVALUE))), 0.2 * (Humanoid.WalkSpeed / 16) / Animation_Speed)
1457
		if ATTACK == false then
1458
			RootJoint.C0 = Clerp(RootJoint.C0,ROOTC0 * CF(0, 0, 0 + 0.05 * COS(SINE / 12)) * ANGLES(RAD(25), RAD(0), RAD(0)), 0.15 / Animation_Speed)
1459
			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)
1460
			PupilWeld.C0 = Clerp(PupilWeld.C0, CF(0.13,0.26,-0.58) * ANGLES(RAD(0), RAD(0), RAD(0)), 0.15 / Animation_Speed)
1461
			RightShoulder.C0 = Clerp(RightShoulder.C0, CF(1.5, 0.5, 0) * ANGLES(RAD(120 * COS(SINE / WALKSPEEDVALUE)), RAD(0), RAD(12)) * RIGHTSHOULDERC0, 0.5 / Animation_Speed)
1462
			LeftShoulder.C0 = Clerp(LeftShoulder.C0, CF(-1.5, 0.5, 0) * ANGLES(RAD(-120 * COS(SINE / WALKSPEEDVALUE)), RAD(0), RAD(-12)) * LEFTSHOULDERC0, 0.5 / Animation_Speed)
1463
			RightHip.C0 = Clerp(RightHip.C0, CF(1 , -1, -0) * ANGLES(RAD(0), RAD(90), RAD(0)) * ANGLES(RAD(0), RAD(0), RAD(0)), 0.15 / Animation_Speed)
1464
			LeftHip.C0 = Clerp(LeftHip.C0, CF(-1, -1, -0) * ANGLES(RAD(0), RAD(-90), RAD(0)) * ANGLES(RAD(0), RAD(0), RAD(0)), 0.15 / Animation_Speed)
1465
		end
1466
	end
1467
if #Effects2>0 then
1468
for e=1,#Effects2 do
1469
if Effects2[e]~=nil then
1470
local Thing=Effects2[e]
1471
if Thing~=nil then
1472
local Part=Thing[1]
1473
local Mode=Thing[2]
1474
local Delay=Thing[3]
1475
local IncX=Thing[4]
1476
local IncY=Thing[5]
1477
local IncZ=Thing[6]
1478
local Part2=Thing[8]
1479
if Thing[1].Transparency<=1 then
1480
if Thing[2]=="Block1" then
1481
Thing[1].CFrame=Thing[1].CFrame
1482
Mesh=Thing[1].Mesh
1483
Mesh.Scale=Mesh.Scale+VT(Thing[4],Thing[5],Thing[6])
1484
Thing[1].Transparency=Thing[1].Transparency+Thing[3]
1485
elseif Thing[2]=="Cylinder" then
1486
Mesh=Thing[1].Mesh
1487
Mesh.Scale=Mesh.Scale+VT(Thing[4],Thing[5],Thing[6])
1488
Thing[1].Transparency=Thing[1].Transparency+Thing[3]
1489
elseif Thing[2]=="Blood" then
1490
Mesh=Thing[7]
1491
Thing[1].CFrame=Thing[1].CFrame*CF(0,.5,0)
1492
Mesh.Scale=Mesh.Scale+VT(Thing[4],Thing[5],Thing[6])
1493
Thing[1].Transparency=Thing[1].Transparency+Thing[3]
1494
elseif Thing[2]=="Elec" then
1495
Mesh=Thing[1].Mesh
1496
Mesh.Scale=Mesh.Scale+VT(Thing[7],Thing[8],Thing[9])
1497
Thing[1].Transparency=Thing[1].Transparency+Thing[3]
1498
elseif Thing[2]=="Disappear" then
1499
Thing[1].Transparency=Thing[1].Transparency+Thing[3]
1500
end
1501
else
1502
Part.Parent=nil
1503
table.remove(Effects2,e)
1504
end
1505
end
1506
end
1507
end
1508
end
1509
unanchor()
1510
Humanoid.MaxHealth = "inf"
1511
Humanoid.Health = "inf"
1512
if Rooted == false then
1513
	Disable_Jump = false
1514
	Humanoid.WalkSpeed = Speed
1515
elseif Rooted == true then
1516
	Disable_Jump = true
1517
	Humanoid.WalkSpeed = 0
1518
end
1519
q = Character:GetChildren()
1520
	for u = 1, #q do
1521
		if q[u].ClassName == "Accessory" or q[u].ClassName == "Hat" then
1522
			if q[u].Handle:FindFirstChild("FaceFrontAttachment") or q[u].Handle:FindFirstChild("HatAttachment") then
1523
				q[u].Handle.Transparency = 1
1524
			end
1525
		end
1526
	end
1527
local MATHS = {"0","1"}
1528
Humanoid.Name = MATHS[MRANDOM(1,#MATHS)]..MATHS[MRANDOM(1,#MATHS)]..MATHS[MRANDOM(1,#MATHS)]..MATHS[MRANDOM(1,#MATHS)]..MATHS[MRANDOM(1,#MATHS)]..MATHS[MRANDOM(1,#MATHS)]..MATHS[MRANDOM(1,#MATHS)]..MATHS[MRANDOM(1,#MATHS)]..MATHS[MRANDOM(1,#MATHS)]..MATHS[MRANDOM(1,#MATHS)]..MATHS[MRANDOM(1,#MATHS)]..MATHS[MRANDOM(1,#MATHS)]..MATHS[MRANDOM(1,#MATHS)]..MATHS[MRANDOM(1,#MATHS)]..MATHS[MRANDOM(1,#MATHS)]..MATHS[MRANDOM(1,#MATHS)]..MATHS[MRANDOM(1,#MATHS)]..MATHS[MRANDOM(1,#MATHS)]
1529
Humanoid.PlatformStand = false
1530
end