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