View difference between Paste ID: 6g3uSZme and vaQ2V54U
SHOW: | | - or go back to the newest paste.
1
--//====================================================\\--
2
--||			   CREATED BY SHACKLUSTER
3
--\\====================================================//--
4
5
6
7
wait(0.2)
8
9
10
11
12
13
CV="Magenta"
14
	p = game.Players.LocalPlayer
15
	char = p.Character
16
	local txt = Instance.new("BillboardGui", char)
17
	txt.Adornee = char .Head
18
	txt.Name = "_status"
19
	txt.Size = UDim2.new(2, 0, 1.2, 0)
20
	txt.StudsOffset = Vector3.new(-9, 8, 0)
21
	local text = Instance.new("TextLabel", txt)
22
	text.Size = UDim2.new(10, 0, 7, 0)
23
	text.FontSize = "Size24"
24
	text.TextScaled = true
25
	text.TextTransparency = 0
26
	text.BackgroundTransparency = 1 
27
	text.TextTransparency = 0
28
	text.TextStrokeTransparency = 0
29
	text.Font = "Bodoni"
30
	text.TextStrokeColor3 = Color3.new(0,0,0)
31
32
	v=Instance.new("Part")
33
	v.Name = "ColorBrick"
34
	v.Parent=p.Character
35
	v.FormFactor="Symmetric"
36
	v.Anchored=true
37
	v.CanCollide=false
38
	v.BottomSurface="Smooth"
39
	v.TopSurface="Smooth"
40
	v.Size=Vector3.new(10,5,3)
41
	v.Transparency=1
42
	v.CFrame=char.Torso.CFrame
43
	v.BrickColor=BrickColor.new(CV)
44
	v.Transparency=1
45
	text.TextColor3 = Color3.new(170,0,170)
46
	v.Shape="Block"
47-
	text.Text = "Sin"
47+
	text.Text = "Gztale Sans"
48
49
50
51
52
53
54
55
Player = game:GetService("Players").LocalPlayer
56
PlayerGui = Player.PlayerGui
57
Cam = workspace.CurrentCamera
58
Backpack = Player.Backpack
59
Character = Player.Character
60
Humanoid = Character.Humanoid
61
Mouse = Player:GetMouse()
62
RootPart = Character["HumanoidRootPart"]
63
Torso = Character["Torso"]
64
Head = Character["Head"]
65
RightArm = Character["Right Arm"]
66
LeftArm = Character["Left Arm"]
67
RightLeg = Character["Right Leg"]
68
LeftLeg = Character["Left Leg"]
69
RootJoint = RootPart["RootJoint"]
70
Neck = Torso["Neck"]
71
RightShoulder = Torso["Right Shoulder"]
72
LeftShoulder = Torso["Left Shoulder"]
73
RightHip = Torso["Right Hip"]
74
LeftHip = Torso["Left Hip"]
75
local sick = Instance.new("Sound",Character)
76-
sick.SoundId = "rbxassetid://165498643"
76+
sick.SoundId = "rbxassetid://316650387"
77
sick.Looped = true
78
sick.Pitch = 1
79
sick.Volume = 3
80
sick:Play()
81
Humanoid.DisplayDistanceType = "None"
82
83
IT = Instance.new
84
CF = CFrame.new
85
VT = Vector3.new
86
RAD = math.rad
87
C3 = Color3.new
88
UD2 = UDim2.new
89
BRICKC = BrickColor.new
90
ANGLES = CFrame.Angles
91
EULER = CFrame.fromEulerAnglesXYZ
92
COS = math.cos
93
ACOS = math.acos
94
SIN = math.sin
95
ASIN = math.asin
96
ABS = math.abs
97
MRANDOM = math.random
98
FLOOR = math.floor
99
100
function CreateMesh(MESH, PARENT, MESHTYPE, MESHID, TEXTUREID, SCALE, OFFSET)
101
	local NEWMESH = IT(MESH)
102
	if MESH == "SpecialMesh" then
103
		NEWMESH.MeshType = MESHTYPE
104
		if MESHID ~= "nil" and MESHID ~= "" then
105
			NEWMESH.MeshId = "http://www.roblox.com/asset/?id="..MESHID
106
		end
107
		if TEXTUREID ~= "nil" and TEXTUREID ~= "" then
108
			NEWMESH.TextureId = "http://www.roblox.com/asset/?id="..TEXTUREID
109
		end
110
	end
111
	NEWMESH.Offset = OFFSET or VT(0, 0, 0)
112
	NEWMESH.Scale = SCALE
113
	NEWMESH.Parent = PARENT
114
	return NEWMESH
115
end
116
117
function CreatePart(FORMFACTOR, PARENT, MATERIAL, REFLECTANCE, TRANSPARENCY, BRICKCOLOR, NAME, SIZE)
118
	local NEWPART = IT("Part")
119
	NEWPART.formFactor = FORMFACTOR
120
	NEWPART.Reflectance = REFLECTANCE
121
	NEWPART.Transparency = TRANSPARENCY
122
	NEWPART.CanCollide = false
123
	NEWPART.Anchored = true
124
	NEWPART.Locked = true
125
	NEWPART.BrickColor = BRICKC(tostring(BRICKCOLOR))
126
	NEWPART.Name = NAME
127
	NEWPART.Size = SIZE
128
	NEWPART.Position = Torso.Position
129
	NEWPART.Material = MATERIAL
130
	NEWPART:BreakJoints()
131
	NEWPART.Parent = PARENT
132
	return NEWPART
133
end
134
135
136
--//=================================\\
137
--||		  CUSTOMIZATION
138
--\\=================================//
139
140
Class_Name = "Sin"
141
Weapon_Name = "Add-ons"
142
143
Custom_Colors = {
144
	Custom_Color_1 = BRICKC("Institutional white"); --1st color for the weapon.
145
	Custom_Color_2 = BRICKC("Institutional white"); --2nd color for the weapon.
146
147
	Custom_Color_3 = BRICKC("Institutional white"); --Color for the abilities.
148
	Custom_Color_4 = BRICKC("Institutional white"); --Color for the secondary bar.
149
	Custom_Color_5 = BRICKC("Institutional white"); --Color for the mana bar.
150
	Custom_Color_6 = BRICKC("Institutional white"); --Color for the health bar.
151
	Custom_Color_7 = BRICKC("Institutional white"); --Color for the stun bar.
152
153
	Custom_Color_8 = BRICKC("Institutional white"); --Background for the mana bar.
154
	Custom_Color_9 = BRICKC("Institutional white"); --Background for the secondary mana bar.
155
	Custom_Color_10 = BRICKC("Institutional white"); --Background for the stun bar.
156
	Custom_Color_11 = BRICKC("Institutional white"); --Background for the health bar.
157
	Custom_Color_12 = BRICKC("Institutional white"); --Background for the abilities.
158
}
159
160
161
Player_Size = 1.15 --Size of the player.
162-
Animation_Speed = 1.2
162+
Animation_Speed = 2.2
163-
Attack_Animation_Speed = 2.5
163+
Attack_Animation_Speed = 10.5
164
Frame_Speed = 1 / 60 -- (1 / 30) OR (1 / 60)
165
166-
local Speed = 45
166+
local Speed = 150
167
local Effects2 = {}
168
169
--//=================================\\
170
--|| 	  END OF CUSTOMIZATION
171
--\\=================================//
172
173
	local function weldBetween(a, b)
174
	    local weldd = Instance.new("ManualWeld")
175
	    weldd.Part0 = a
176
	    weldd.Part1 = b
177
	    weldd.C0 = CFrame.new()
178
	    weldd.C1 = b.CFrame:inverse() * a.CFrame
179
	    weldd.Parent = a
180
	    return weldd
181
	end
182
183
function createaccessory(attachmentpart,mesh,texture,scale,offset,color)
184
local acs = Instance.new("Part")
185
acs.CanCollide = false
186
acs.Anchored = false
187
acs.Size = Vector3.new(0,0,0)
188
acs.CFrame = attachmentpart.CFrame
189
acs.Parent = Character
190
acs.BrickColor = color
191
    local meshs = Instance.new("SpecialMesh")
192
    meshs.MeshId = mesh
193
    meshs.TextureId = texture
194
    meshs.Parent = acs
195
    meshs.Scale = scale
196
    meshs.Offset = offset
197
weldBetween(attachmentpart,acs)
198
end
199
200
function createbodypart(TYPE,COLOR,PART,OFFSET,SIZE)
201
if TYPE == "Gem" then
202
	local acs = CreatePart(3, PART, "Neon", 0, 0, COLOR, "Part", VT(0,0,0))
203
	acs.Anchored = false
204
    acs.CanCollide = false
205
	acs.CFrame = PART.CFrame
206
	local acs2 = CreateMesh("SpecialMesh", acs, "FileMesh", "9756362", "", SIZE, OFFSET)
207
weldBetween(PART,acs)
208
elseif TYPE == "Skull" then
209
	local acs = CreatePart(3, PART, "Neon", 0, 0, COLOR, "Part", VT(0,0,0))
210
	acs.Anchored = false
211
    acs.CanCollide = false
212
	acs.CFrame = PART.CFrame
213
	local acs2 = CreateMesh("SpecialMesh", acs, "FileMesh", "4770583", "", SIZE, OFFSET)
214
weldBetween(PART,acs)
215
elseif TYPE == "Eye" then
216
	local acs = CreatePart(3, PART, "Neon", 0, 0, COLOR, "Part", VT(0,0,0))
217
	acs.Anchored = false
218
    acs.CanCollide = false
219
	acs.CFrame = PART.CFrame
220
	local acs2 = CreateMesh("SpecialMesh", acs, "Sphere", "", "", SIZE, OFFSET)
221
weldBetween(PART,acs)
222
end
223
end
224
225
--//=================================\\
226
--|| 	      USEFUL VALUES
227
--\\=================================//
228
229
local ROOTC0 = CF(0, 0, 0) * ANGLES(RAD(-90), RAD(0), RAD(180))
230
local NECKC0 = CF(0, 1, 0) * ANGLES(RAD(-90), RAD(0), RAD(180))
231
local RIGHTSHOULDERC0 = CF(-0.5, 0, 0) * ANGLES(RAD(0), RAD(90), RAD(0))
232
local LEFTSHOULDERC0 = CF(0.5, 0, 0) * ANGLES(RAD(0), RAD(-90), RAD(0))
233
local CO1 = 0
234
local CO2 = 0
235
local CO3 = 0
236
local CO4 = 0
237
local CHANGEDEFENSE = 0
238
local CHANGEDAMAGE = 1e999
239
local CHANGEMOVEMENT = 0
240
local ANIM = "Idle"
241
local ATTACK = false
242
local EQUIPPED = false
243
local HOLD = false
244
local COMBO = 1
245
local LASTPOINT = nil
246
local BLCF = nil
247
local SCFR = nil
248
local STAGGERHITANIM = false
249
local STAGGERANIM = false
250
local STUNANIM = false
251
local CRITCHANCENUMBER = 1e999
252
local IDLENUMBER = 0
253
local DONUMBER = 0
254
local HANDIDLE = false
255
local SINE = 0
256
local CHANGE = 2 / Animation_Speed
257
local WALKINGANIM = false
258
local WALK = 0
259
local DISABLEJUMPING = false
260
local HASBEENBLOCKED = false
261
local STUNDELAYNUMBER = 0
262
local MANADELAYNUMBER = 0
263
local HASJUMPED = false
264
local punch = 1
265
local KEYHOLD = false
266
local SECONDARYMANADELAYNUMBER = 0
267
local ROBLOXIDLEANIMATION = IT("Animation")
268
ROBLOXIDLEANIMATION.Name = "Roblox Idle Animation"
269
ROBLOXIDLEANIMATION.AnimationId = "http://www.roblox.com/asset/?id=180435571"
270
--ROBLOXIDLEANIMATION.Parent = Humanoid
271
local WEAPONGUI = IT("ScreenGui", nil)
272
WEAPONGUI.Name = "Weapon GUI"
273
local WEAPONTOOL = IT("HopperBin", nil)
274
WEAPONTOOL.Name = Weapon_Name
275
local Weapon = IT("Model")
276
Weapon.Name = Weapon_Name
277
local Effects = IT("Folder", Weapon)
278
Effects.Name = "Effects"
279
local ANIMATOR = Humanoid.Animator
280
local ANIMATE = Character.Animate
281
local HITPLAYERSOUNDS = {--[["199149137", "199149186", "199149221", "199149235", "199149269", "199149297"--]]"263032172", "263032182", "263032200", "263032221", "263032252", "263033191"}
282
local HITARMORSOUNDS = {"199149321", "199149338", "199149367", "199149409", "199149452"}
283
local HITWEAPONSOUNDS = {"199148971", "199149025", "199149072", "199149109", "199149119"}
284
local HITBLOCKSOUNDS = {"199148933", "199148947"}
285
local ATTACKSOUNDS = {"159972643","159972627"}
286
local UNANCHOR = true
287
288
--//=================================\\
289
--\\=================================//
290
291
--//=================================\\
292
--||			  STATS
293
--\\=================================//
294
295
if Character:FindFirstChild("Stats") ~= nil then
296
Character:FindFirstChild("Stats").Parent = nil
297
end
298
299
local Stats = IT("Folder", nil)
300
Stats.Name = "Stats"
301
local ChangeStat = IT("Folder", Stats)
302
ChangeStat.Name = "ChangeStat"
303
local Defense = IT("NumberValue", Stats)
304
Defense.Name = "Defense"
305
Defense.Value = 1e999
306
local Movement = IT("NumberValue", Stats)
307
Movement.Name = "Movement"
308
Movement.Value = 1
309
local Damage = IT("NumberValue", Stats)
310
Damage.Name = "Damage"
311
Damage.Value = 1e999
312
local Mana = IT("NumberValue", Stats)
313
Mana.Name = "Mana"
314
Mana.Value = 0
315
local SecondaryMana = IT("NumberValue", Stats)
316
SecondaryMana.Name = "SecondaryMana"
317
SecondaryMana.Value = 0
318
local CanCrit = IT("BoolValue", Stats)
319
CanCrit.Name = "CanCrit"
320
CanCrit.Value = false
321
local CritChance = IT("NumberValue", Stats)
322
CritChance.Name = "CritChance"
323
CritChance.Value = 20
324
local CanPenetrateArmor = IT("BoolValue", Stats)
325
CanPenetrateArmor.Name = "CanPenetrateArmor"
326
CanPenetrateArmor.Value = false
327
local AntiTeamKill = IT("BoolValue", Stats)
328
AntiTeamKill.Name = "AntiTeamKill"
329
AntiTeamKill.Value = false
330
local Rooted = IT("BoolValue", Stats)
331
Rooted.Name = "Rooted"
332
Rooted.Value = false
333
local Block = IT("BoolValue", Stats)
334
Block.Name = "Block"
335
Block.Value = false
336
local RecentEnemy = IT("ObjectValue", Stats)
337
RecentEnemy.Name = "RecentEnemy"
338
RecentEnemy.Value = nil
339
local StaggerHit = IT("BoolValue", Stats)
340
StaggerHit.Name = "StaggerHit"
341
StaggerHit.Value = false
342
local Stagger = IT("BoolValue", Stats)
343
Stagger.Name = "Stagger"
344
Stagger.Value = false
345
local Stun = IT("BoolValue", Stats)
346
Stun.Name = "Stun"
347
Stun.Value = false
348
local StunValue = IT("NumberValue", Stats)
349
StunValue.Name = "StunValue"
350
StunValue.Value = 0
351
352
353
--//=================================\\
354
--\\=================================//
355
356
357
358
359
360
--//=================================\\
361
--|| 	     DEBUFFS / BUFFS
362
--\\=================================//
363
364
local DEFENSECHANGE1 = IT("NumberValue", ChangeStat)
365
DEFENSECHANGE1.Name = "ChangeDefense"
366
DEFENSECHANGE1.Value = 0
367
368
local MOVEMENTCHANGE1 = IT("NumberValue", nil)
369
MOVEMENTCHANGE1.Name = "ChangeMovement"
370
MOVEMENTCHANGE1.Value = 0
371
372
--//=================================\\
373
--\\=================================//
374
375
376
377
378
379
--//=================================\\
380
--|| SAZERENOS' ARTIFICIAL HEARTBEAT
381
--\\=================================//
382
383
ArtificialHB = Instance.new("BindableEvent", script)
384
ArtificialHB.Name = "ArtificialHB"
385
386
script:WaitForChild("ArtificialHB")
387
388
frame = Frame_Speed
389
tf = 0
390
allowframeloss = false
391
tossremainder = false
392
lastframe = tick()
393
script.ArtificialHB:Fire()
394
395
game:GetService("RunService").Heartbeat:connect(function(s, p)
396
	tf = tf + s
397
	if tf >= frame then
398
		if allowframeloss then
399
			script.ArtificialHB:Fire()
400
			lastframe = tick()
401
		else
402
			for i = 1, math.floor(tf / frame) do
403
				script.ArtificialHB:Fire()
404
			end
405
		lastframe = tick()
406
		end
407
		if tossremainder then
408
			tf = 0
409
		else
410
			tf = tf - frame * math.floor(tf / frame)
411
		end
412
	end
413
end)
414
415
--//=================================\\
416
--\\=================================//
417
418
419
420
421
422
--//=================================\\
423
--|| 	      SOME FUNCTIONS
424
--\\=================================//
425
426
function Raycast(POSITION, DIRECTION, RANGE, IGNOREDECENDANTS)
427
	return workspace:FindPartOnRay(Ray.new(POSITION, DIRECTION.unit * RANGE), IGNOREDECENDANTS)
428
end
429
430
function PositiveAngle(NUMBER)
431
	if NUMBER >= 0 then
432
		NUMBER = 0
433
	end
434
	return NUMBER
435
end
436
437
function NegativeAngle(NUMBER)
438
	if NUMBER <= 0 then
439
		NUMBER = 0
440
	end
441
	return NUMBER
442
end
443
444
function Swait(NUMBER)
445
	if NUMBER == 0 or NUMBER == nil then
446
		ArtificialHB.Event:wait()
447
	else
448
		for i = 1, NUMBER do
449
			ArtificialHB.Event:wait()
450
		end
451
	end
452
end
453
454
function QuaternionFromCFrame(cf)
455
	local mx, my, mz, m00, m01, m02, m10, m11, m12, m20, m21, m22 = cf:components()
456
	local trace = m00 + m11 + m22
457
	if trace > 0 then 
458
		local s = math.sqrt(1 + trace)
459
		local recip = 0.5 / s
460
		return (m21 - m12) * recip, (m02 - m20) * recip, (m10 - m01) * recip, s * 0.5
461
	else
462
		local i = 0
463
		if m11 > m00 then
464
			i = 1
465
		end
466
		if m22 > (i == 0 and m00 or m11) then
467
			i = 2
468
		end
469
		if i == 0 then
470
			local s = math.sqrt(m00 - m11 - m22 + 1)
471
			local recip = 0.5 / s
472
			return 0.5 * s, (m10 + m01) * recip, (m20 + m02) * recip, (m21 - m12) * recip
473
		elseif i == 1 then
474
			local s = math.sqrt(m11 - m22 - m00 + 1)
475
			local recip = 0.5 / s
476
			return (m01 + m10) * recip, 0.5 * s, (m21 + m12) * recip, (m02 - m20) * recip
477
		elseif i == 2 then
478
			local s = math.sqrt(m22 - m00 - m11 + 1)
479
			local recip = 0.5 / s return (m02 + m20) * recip, (m12 + m21) * recip, 0.5 * s, (m10 - m01) * recip
480
		end
481
	end
482
end
483
 
484
function QuaternionToCFrame(px, py, pz, x, y, z, w)
485
	local xs, ys, zs = x + x, y + y, z + z
486
	local wx, wy, wz = w * xs, w * ys, w * zs
487
	local xx = x * xs
488
	local xy = x * ys
489
	local xz = x * zs
490
	local yy = y * ys
491
	local yz = y * zs
492
	local zz = z * zs
493
	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))
494
end
495
 
496
function QuaternionSlerp(a, b, t)
497
	local cosTheta = a[1] * b[1] + a[2] * b[2] + a[3] * b[3] + a[4] * b[4]
498
	local startInterp, finishInterp;
499
	if cosTheta >= 0.0001 then
500
		if (1 - cosTheta) > 0.0001 then
501
			local theta = ACOS(cosTheta)
502
			local invSinTheta = 1 / SIN(theta)
503
			startInterp = SIN((1 - t) * theta) * invSinTheta
504
			finishInterp = SIN(t * theta) * invSinTheta
505
		else
506
			startInterp = 1 - t
507
			finishInterp = t
508
		end
509
	else
510
		if (1 + cosTheta) > 0.0001 then
511
			local theta = ACOS(-cosTheta)
512
			local invSinTheta = 1 / SIN(theta)
513
			startInterp = SIN((t - 1) * theta) * invSinTheta
514
			finishInterp = SIN(t * theta) * invSinTheta
515
		else
516
			startInterp = t - 1
517
			finishInterp = t
518
		end
519
	end
520
	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
521
end
522
523
function Clerp(a, b, t)
524
	local qa = {QuaternionFromCFrame(a)}
525
	local qb = {QuaternionFromCFrame(b)}
526
	local ax, ay, az = a.x, a.y, a.z
527
	local bx, by, bz = b.x, b.y, b.z
528
	local _t = 1 - t
529
	return QuaternionToCFrame(_t * ax + t * bx, _t * ay + t * by, _t * az + t * bz, QuaternionSlerp(qa, qb, t))
530
end
531
532
function CreateFrame(PARENT, TRANSPARENCY, BORDERSIZEPIXEL, POSITION, SIZE, COLOR, BORDERCOLOR, NAME)
533
	local frame = IT("Frame")
534
	frame.BackgroundTransparency = TRANSPARENCY
535
	frame.BorderSizePixel = BORDERSIZEPIXEL
536
	frame.Position = POSITION
537
	frame.Size = SIZE
538
	frame.BackgroundColor3 = COLOR
539
	frame.BorderColor3 = BORDERCOLOR
540
	frame.Name = NAME
541
	frame.Parent = PARENT
542
	return frame
543
end
544
545
function CreateLabel(PARENT, TEXT, TEXTCOLOR, TEXTFONTSIZE, TEXTFONT, TRANSPARENCY, BORDERSIZEPIXEL, STROKETRANSPARENCY, NAME)
546
	local label = IT("TextLabel")
547
	label.BackgroundTransparency = 1
548
	label.Size = UD2(1, 0, 1, 0)
549
	label.Position = UD2(0, 0, 0, 0)
550
	label.TextColor3 = C3(255, 255, 255)
551
	label.TextStrokeTransparency = STROKETRANSPARENCY
552
	label.TextTransparency = TRANSPARENCY
553
	label.FontSize = TEXTFONTSIZE
554
	label.Font = TEXTFONT
555
	label.BorderSizePixel = BORDERSIZEPIXEL
556
	label.TextScaled = true
557
	label.Text = TEXT
558
	label.Name = NAME
559
	label.Parent = PARENT
560
	return label
561
end
562
563
function NoOutlines(PART)
564
	PART.TopSurface, PART.BottomSurface, PART.LeftSurface, PART.RightSurface, PART.FrontSurface, PART.BackSurface = 10, 10, 10, 10, 10, 10
565
end
566
567
568
function CreateWeldOrSnapOrMotor(TYPE, PARENT, PART0, PART1, C0, C1)
569
	local NEWWELD = IT(TYPE)
570
	NEWWELD.Part0 = PART0
571
	NEWWELD.Part1 = PART1
572
	NEWWELD.C0 = C0
573
	NEWWELD.C1 = C1
574
	NEWWELD.Parent = PARENT
575
	return NEWWELD
576
end
577
578
function CreateSound(ID, PARENT, VOLUME, PITCH)
579
	local NEWSOUND = IT("Sound", PARENT)
580
	NEWSOUND.Volume = VOLUME
581
	NEWSOUND.Pitch = PITCH
582
	NEWSOUND.SoundId = "http://www.roblox.com/asset/?id="..ID
583
	coroutine.resume(coroutine.create(function()
584
		Swait()
585
		NEWSOUND:play()
586
		repeat Swait() until NEWSOUND.Playing == false
587
		NEWSOUND:remove()
588
	end))
589
	return NEWSOUND
590
end
591
592
function CFrameFromTopBack(at, top, back)
593
	local right = top:Cross(back)
594
	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)
595
end
596
597
function Lightning(POSITION1, POSITION2, MULTIPLIERTIME, LIGHTNINGDELAY, OFFSET, BRICKCOLOR, MATERIAL, SIZE, TRANSPARENCY, LASTINGTIME)
598
	local MAGNITUDE = (POSITION1 - POSITION2).magnitude 
599
	local CURRENTPOSITION = POSITION1
600
	local LIGHTNINGOFFSET = {-OFFSET, OFFSET}
601
	coroutine.resume(coroutine.create(function()
602
		for i = 1, MULTIPLIERTIME do 
603
			local LIGHTNINGPART = CreatePart(3, Effects, MATERIAL, 0, 0, BRICKCOLOR,"Effect", VT(SIZE * Player_Size, SIZE * Player_Size, MAGNITUDE / MULTIPLIERTIME))
604
			LIGHTNINGPART.Anchored = true
605
			local LIGHTNINGOFFSET2 = VT(LIGHTNINGOFFSET[MRANDOM(1, 2)], LIGHTNINGOFFSET[MRANDOM(1, 2)], LIGHTNINGOFFSET[MRANDOM(1, 2)]) 
606
			local LIGHTNINGPOSITION1 = CF(CURRENTPOSITION, POSITION2) * CF(0, 0, MAGNITUDE / MULTIPLIERTIME).p + LIGHTNINGOFFSET2
607
			if MULTIPLIERTIME == i then 
608
				local LIGHTNINGMAGNITUDE1 = (CURRENTPOSITION - POSITION2).magnitude
609
				LIGHTNINGPART.Size = VT(SIZE * Player_Size, SIZE * Player_Size, LIGHTNINGMAGNITUDE1)
610
				LIGHTNINGPART.CFrame = CF(CURRENTPOSITION, POSITION2) * CF(0, 0, -LIGHTNINGMAGNITUDE1 / 2)
611
			else
612
				LIGHTNINGPART.CFrame = CF(CURRENTPOSITION, LIGHTNINGPOSITION1) * CF(0, 0, MAGNITUDE / MULTIPLIERTIME / 2)
613
			end
614
			CURRENTPOSITION=LIGHTNINGPART.CFrame * CF(0, 0, MAGNITUDE / MULTIPLIERTIME / 2).p
615
			game.Debris:AddItem(LIGHTNINGPART, LASTINGTIME)
616
			coroutine.resume(coroutine.create(function()
617
				while LIGHTNINGPART.Transparency ~= 1 do
618
					--local StartTransparency = tra
619
					for i=0, 1, LASTINGTIME do
620
						Swait()
621
						LIGHTNINGPART.Transparency = LIGHTNINGPART.Transparency + (0.1 / LASTINGTIME)
622
					end
623
				end
624
			end))
625
		Swait(LIGHTNINGDELAY / Animation_Speed)
626
		end
627
	end))
628
end
629
630
function MagicBlock(BRICKCOLOR, MATERIAL, CFRAME, ROTATION, OFFSET, X1, Y1, Z1, X2, Y2, Z2, delay)
631
	local EFFECTPART = CreatePart(3, Effects, MATERIAL, 0, 0, BRICKCOLOR, "Effect", VT())
632
	EFFECTPART.Anchored = true
633
	EFFECTPART.CFrame = CFRAME
634
	local EFFECTMESH = CreateMesh("BlockMesh", EFFECTPART, "", "", "", VT(X1 * Player_Size, Y1 * Player_Size, Z1 * Player_Size), OFFSET * Player_Size)
635
	game:GetService("Debris"):AddItem(EFFECTPART, 10)
636
	coroutine.resume(coroutine.create(function(PART, MESH)
637
		for i = 0, 1, delay do
638
			Swait()
639
			PART.CFrame = PART.CFrame * ROTATION
640
			PART.Transparency = i
641
			MESH.Scale = MESH.Scale + VT(X2 * Player_Size, Y2 * Player_Size, Z2 * Player_Size)
642
		end
643
		PART.Parent = nil
644
	end), EFFECTPART, EFFECTMESH)
645
end
646
647
function MagicSphere(BRICKCOLOR, MATERIAL, CFRAME, ROTATION, OFFSET, X1, Y1, Z1, X2, Y2, Z2, delay)
648
	local EFFECTPART = CreatePart(3, Effects, MATERIAL, 0, 0, BRICKCOLOR, "Effect", VT())
649
	EFFECTPART.Anchored = true
650
	EFFECTPART.CFrame = CFRAME
651
	local EFFECTMESH = CreateMesh("SpecialMesh", EFFECTPART, "Sphere", "", "", VT(X1 * Player_Size, Y1 * Player_Size, Z1 * Player_Size), OFFSET * Player_Size)
652
	game:GetService("Debris"):AddItem(EFFECTPART, 10)
653
	coroutine.resume(coroutine.create(function(PART, MESH)
654
		for i = 0, 1, delay do
655
			Swait()
656
			PART.CFrame = PART.CFrame * ROTATION
657
			PART.Transparency = i
658
			MESH.Scale = MESH.Scale + VT(X2 * Player_Size, Y2 * Player_Size, Z2 * Player_Size)
659
		end
660
		PART.Parent = nil
661
	end), EFFECTPART, EFFECTMESH)
662
end
663
664
function MagicCylinder(BRICKCOLOR, MATERIAL, CFRAME, ROTATION, OFFSET, X1, Y1, Z1, X2, Y2, Z2, delay)
665
	local EFFECTPART = CreatePart(3, Effects, MATERIAL, 0, 0, BRICKCOLOR, "Effect", VT())
666
	EFFECTPART.Anchored = true
667
	EFFECTPART.CFrame = CFRAME
668
	local EFFECTMESH = CreateMesh("CylinderMesh", EFFECTPART, "", "", "", VT(X1 * Player_Size, Y1 * Player_Size, Z1 * Player_Size), OFFSET * Player_Size)
669
	game:GetService("Debris"):AddItem(EFFECTPART, 10)
670
	coroutine.resume(coroutine.create(function(PART, MESH)
671
		for i = 0, 1, delay do
672
			Swait()
673
			PART.CFrame = PART.CFrame * ROTATION
674
			PART.Transparency = i
675
			MESH.Scale = MESH.Scale + VT(X2 * Player_Size, Y2 * Player_Size, Z2 * Player_Size)
676
		end
677
		PART.Parent = nil
678
	end), EFFECTPART, EFFECTMESH)
679
end
680
681
function MagicHead(BRICKCOLOR, MATERIAL, CFRAME, ROTATION, OFFSET, X1, Y1, Z1, X2, Y2, Z2, delay)
682
	local EFFECTPART = CreatePart(3, Effects, MATERIAL, 0, 0, BRICKCOLOR, "Effect", VT())
683
	EFFECTPART.Anchored = true
684
	EFFECTPART.CFrame = CFRAME
685
	local EFFECTMESH = CreateMesh("SpecialMesh", EFFECTPART, "Head", "", "", VT(X1 * Player_Size, Y1 * Player_Size, Z1 * Player_Size), OFFSET * Player_Size)
686
	game:GetService("Debris"):AddItem(EFFECTPART, 10)
687
	coroutine.resume(coroutine.create(function(PART, MESH)
688
		for i = 0, 1, delay do
689
			Swait()
690
			PART.CFrame = PART.CFrame * ROTATION
691
			PART.Transparency = i
692
			MESH.Scale = MESH.Scale + VT(X2 * Player_Size, Y2 * Player_Size, Z2 * Player_Size)
693
		end
694
		PART.Parent = nil
695
	end), EFFECTPART, EFFECTMESH)
696
end
697
698
function MagicRing(BRICKCOLOR, MATERIAL, CFRAME, ROTATION, OFFSET, X1, Y1, Z1, X2, Y2, Z2, delay)
699
	local EFFECTPART = CreatePart(3, Effects, MATERIAL, 0, 0, BRICKCOLOR, "Effect", VT())
700
	EFFECTPART.Anchored = true
701
	EFFECTPART.CFrame = CFRAME
702
	local EFFECTMESH = CreateMesh("SpecialMesh", EFFECTPART, "FileMesh", "3270017", "", VT(X1 * Player_Size, Y1 * Player_Size, Z1 * Player_Size), OFFSET * Player_Size)
703
	game:GetService("Debris"):AddItem(EFFECTPART, 10)
704
	coroutine.resume(coroutine.create(function(PART, MESH)
705
		for i = 0, 1, delay do
706
			Swait()
707
			PART.CFrame = PART.CFrame * ROTATION
708
			PART.Transparency = i
709
			MESH.Scale = MESH.Scale + VT(X2 * Player_Size, Y2 * Player_Size, Z2 * Player_Size)
710
		end
711
		PART.Parent = nil
712
	end), EFFECTPART, EFFECTMESH)
713
end
714
715
function MagicWave(BRICKCOLOR, MATERIAL, CFRAME, ROTATION, OFFSET, X1, Y1, Z1, X2, Y2, Z2, delay)
716
	local EFFECTPART = CreatePart(3, Effects, MATERIAL, 0, 0, BRICKCOLOR, "Effect", VT())
717
	EFFECTPART.Anchored = true
718
	EFFECTPART.CFrame = CFRAME
719
	local EFFECTMESH = CreateMesh("SpecialMesh", EFFECTPART, "FileMesh", "20329976", "", VT(X1 * Player_Size, Y1 * Player_Size, Z1 * Player_Size), VT(0, 0, (-0.1 * Z1)) + (OFFSET * Player_Size))
720
	game:GetService("Debris"):AddItem(EFFECTPART, 10)
721
	coroutine.resume(coroutine.create(function(PART, MESH)
722
		for i = 0, 1, delay do
723
			Swait()
724
			PART.CFrame = PART.CFrame * ROTATION
725
			PART.Transparency = i
726
			MESH.Offset = VT(0, 0, (-0.1 * MESH.Scale.Z))
727
			MESH.Scale = MESH.Scale + VT(X2 * Player_Size, Y2 * Player_Size, Z2 * Player_Size)
728
		end
729
		PART.Parent = nil
730
	end), EFFECTPART, EFFECTMESH)
731
end
732
733
function MagicCrystal(BRICKCOLOR, MATERIAL, CFRAME, ROTATION, OFFSET, X1, Y1, Z1, X2, Y2, Z2, delay)
734
	local EFFECTPART = CreatePart(3, Effects, MATERIAL, 0, 0, BRICKCOLOR, "Effect", VT())
735
	EFFECTPART.Anchored = true
736
	EFFECTPART.CFrame = CFRAME
737
	local EFFECTMESH = CreateMesh("SpecialMesh", EFFECTPART, "FileMesh", "9756362", "", VT(X1 * Player_Size, Y1 * Player_Size, Z1 * Player_Size), OFFSET * Player_Size)
738
	game:GetService("Debris"):AddItem(EFFECTPART, 10)
739
	coroutine.resume(coroutine.create(function(PART, MESH)
740
		for i = 0, 1, delay do
741
			Swait()
742
			PART.CFrame = PART.CFrame * ROTATION
743
			PART.Transparency = i
744
			MESH.Scale = MESH.Scale + VT(X2 * Player_Size, Y2 * Player_Size, Z2 * Player_Size)
745
		end
746
		PART.Parent = nil
747
	end), EFFECTPART, EFFECTMESH)
748
end
749
750
function MagicSwirl(BRICKCOLOR, MATERIAL, CFRAME, ROTATION, OFFSET, X1, Y1, Z1, X2, Y2, Z2, delay)
751
	local EFFECTPART = CreatePart(3, Effects, MATERIAL, 0, 0, BRICKCOLOR, "Effect", VT())
752
	EFFECTPART.Anchored = true
753
	EFFECTPART.CFrame = CFRAME
754
	local EFFECTMESH = CreateMesh("SpecialMesh", EFFECTPART, "FileMesh", "1051557", "", VT(X1 * Player_Size, Y1 * Player_Size, Z1 * Player_Size), OFFSET * Player_Size)
755
	game:GetService("Debris"):AddItem(EFFECTPART, 10)
756
	coroutine.resume(coroutine.create(function(PART, MESH)
757
		for i = 0, 1, delay do
758
			Swait()
759
			PART.CFrame = PART.CFrame * ROTATION
760
			PART.Transparency = i
761
			MESH.Scale = MESH.Scale + VT(X2 * Player_Size, Y2 * Player_Size, Z2 * Player_Size)
762
		end
763
		PART.Parent = nil
764
	end), EFFECTPART, EFFECTMESH)
765
end
766
767
function MagicSharpCone(BRICKCOLOR, MATERIAL, CFRAME, ROTATION, OFFSET, X1, Y1, Z1, X2, Y2, Z2, delay)
768
	local EFFECTPART = CreatePart(3, Effects, MATERIAL, 0, 0, BRICKCOLOR, "Effect", VT())
769
	EFFECTPART.Anchored = true
770
	EFFECTPART.CFrame = CFRAME
771
	local EFFECTMESH = CreateMesh("SpecialMesh", EFFECTPART, "FileMesh", "1778999", "", VT(X1 * Player_Size, Y1 * Player_Size, Z1 * Player_Size), OFFSET * Player_Size)
772
	game:GetService("Debris"):AddItem(EFFECTPART, 10)
773
	coroutine.resume(coroutine.create(function(PART, MESH)
774
		for i = 0, 1, delay do
775
			Swait()
776
			PART.CFrame = PART.CFrame * ROTATION
777
			PART.Transparency = i
778
			MESH.Scale = MESH.Scale + VT(X2 * Player_Size, Y2 * Player_Size, Z2 * Player_Size)
779
		end
780
		PART.Parent = nil
781
	end), EFFECTPART, EFFECTMESH)
782
end
783
784
function MagicFlatCone(BRICKCOLOR, MATERIAL, CFRAME, ROTATION, OFFSET, X1, Y1, Z1, X2, Y2, Z2, delay)
785
	local EFFECTPART = CreatePart(3, Effects, MATERIAL, 0, 0, BRICKCOLOR, "Effect", VT())
786
	EFFECTPART.Anchored = true
787
	EFFECTPART.CFrame = CFRAME
788
	local EFFECTMESH = CreateMesh("SpecialMesh", EFFECTPART, "FileMesh", "1033714", "", VT(X1 * Player_Size, Y1 * Player_Size, Z1 * Player_Size), OFFSET * Player_Size)
789
	game:GetService("Debris"):AddItem(EFFECTPART, 10)
790
	coroutine.resume(coroutine.create(function(PART, MESH)
791
		for i = 0, 1, delay do
792
			Swait()
793
			PART.CFrame = PART.CFrame * ROTATION
794
			PART.Transparency = i
795
			MESH.Scale = MESH.Scale + VT(X2 * Player_Size, Y2 * Player_Size, Z2 * Player_Size)
796
		end
797
		PART.Parent = nil
798
	end), EFFECTPART, EFFECTMESH)
799
end
800
801
function MagicSpikedCrown(BRICKCOLOR, MATERIAL, CFRAME, ROTATION, OFFSET, X1, Y1, Z1, X2, Y2, Z2, delay)
802
	local EFFECTPART = CreatePart(3, Effects, MATERIAL, 0, 0, BRICKCOLOR, "Effect", VT())
803
	EFFECTPART.Anchored = true
804
	EFFECTPART.CFrame = CFRAME
805
	local EFFECTMESH = CreateMesh("SpecialMesh", EFFECTPART, "FileMesh", "1323306", "", VT(X1 * Player_Size, Y1 * Player_Size, Z1 * Player_Size), OFFSET * Player_Size)
806
	game:GetService("Debris"):AddItem(EFFECTPART, 10)
807
	coroutine.resume(coroutine.create(function(PART, MESH)
808
		for i = 0, 1, delay do
809
			Swait()
810
			PART.CFrame = PART.CFrame * ROTATION
811
			PART.Transparency = i
812
			MESH.Scale = MESH.Scale + VT(X2 * Player_Size, Y2 * Player_Size, Z2 * Player_Size)
813
		end
814
		PART.Parent = nil
815
	end), EFFECTPART, EFFECTMESH)
816
end
817
818
function MagicFlatCrown(BRICKCOLOR, MATERIAL, CFRAME, ROTATION, OFFSET, X1, Y1, Z1, X2, Y2, Z2, delay)
819
	local EFFECTPART = CreatePart(3, Effects, MATERIAL, 0, 0, BRICKCOLOR, "Effect", VT())
820
	EFFECTPART.Anchored = true
821
	EFFECTPART.CFrame = CFRAME
822
	local EFFECTMESH = CreateMesh("SpecialMesh", EFFECTPART, "FileMesh", "1078075", "", VT(X1 * Player_Size, Y1 * Player_Size, Z1 * Player_Size), OFFSET * Player_Size)
823
	game:GetService("Debris"):AddItem(EFFECTPART, 10)
824
	coroutine.resume(coroutine.create(function(PART, MESH)
825
		for i = 0, 1, delay do
826
			Swait()
827
			PART.CFrame = PART.CFrame * ROTATION
828
			PART.Transparency = i
829
			MESH.Scale = MESH.Scale + VT(X2 * Player_Size, Y2 * Player_Size, Z2 * Player_Size)
830
		end
831
		PART.Parent = nil
832
	end), EFFECTPART, EFFECTMESH)
833
end
834
835
function MagicSkull(BRICKCOLOR, MATERIAL, CFRAME, ROTATION, OFFSET, X1, Y1, Z1, X2, Y2, Z2, delay)
836
	local EFFECTPART = CreatePart(3, Effects, MATERIAL, 0, 0, BRICKCOLOR, "Effect", VT())
837
	EFFECTPART.Anchored = true
838
	EFFECTPART.CFrame = CFRAME
839
	local EFFECTMESH = CreateMesh("SpecialMesh", EFFECTPART, "FileMesh", "4770583", "", VT(X1 * Player_Size, Y1 * Player_Size, Z1 * Player_Size), OFFSET * Player_Size)
840
	game:GetService("Debris"):AddItem(EFFECTPART, 10)
841
	coroutine.resume(coroutine.create(function(PART, MESH)
842
		for i = 0, 1, delay do
843
			Swait()
844
			PART.CFrame = PART.CFrame * ROTATION
845
			PART.Transparency = i
846
			MESH.Scale = MESH.Scale + VT(X2 * Player_Size, Y2 * Player_Size, Z2 * Player_Size)
847
		end
848
		PART.Parent = nil
849
	end), EFFECTPART, EFFECTMESH)
850
end
851
852
function ElectricEffect(BRICKCOLOR, MATERIAL, CFRAME, ROTATION, OFFSET, X, Y, Z, delay)
853
	local EFFECTPART = CreatePart(3, Effects, MATERIAL, 0, 0, BRICKCOLOR, "Effect", VT())
854
	EFFECTPART.Anchored = true
855
	EFFECTPART.CFrame = CFRAME
856
	local EFFECTMESH = CreateMesh("SpecialMesh", EFFECTPART, "FileMesh", "4770583", "", VT(X * Player_Size, Y * Player_Size, Z * Player_Size), OFFSET * Player_Size)
857
	game:GetService("Debris"):AddItem(EFFECTPART, 10)
858
	local XVALUE = MRANDOM()
859
	local YVALUE = MRANDOM()
860
	local ZVALUE = MRANDOM()
861
	coroutine.resume(coroutine.create(function(PART, MESH, THEXVALUE, THEYVALUE, THEZVALUE)
862
		for i = 0, 1, delay do
863
			Swait()
864
			PART.CFrame = PART.CFrame * ROTATION
865
			PART.Transparency = i
866
			THEXVALUE = THEXVALUE - 0.1 * (delay * 10)
867
			THEYVALUE = THEYVALUE - 0.1 * (delay * 10)
868
			THEZVALUE = THEZVALUE - 0.1 * (delay * 10)
869
			MESH.Scale = MESH.Scale + VT(THEXVALUE * Player_Size, THEYVALUE * Player_Size, THEZVALUE * Player_Size)
870
		end
871
		PART.Parent = nil
872
	end), EFFECTPART, EFFECTMESH, XVALUE, YVALUE, ZVALUE)
873
end
874
875
function TrailEffect(BRICKCOLOR, MATERIAL, CURRENTCFRAME, OLDCFRAME, MESHTYPE, REFLECTANCE, SIZE, ROTATION, X, Y, Z, delay)
876
	local MAGNITUDECFRAME = (CURRENTCFRAME.p - OLDCFRAME.p).magnitude
877
	if MAGNITUDECFRAME > (1 / 100) then
878
		local EFFECTPART = CreatePart(3, Effects, MATERIAL, 0, 0, BRICKCOLOR, "Effect", VT(1, MAGNITUDECFRAME, 1))
879
		EFFECTPART.Anchored = true
880
		EFFECTPART.CFrame = CF((CURRENTCFRAME.p + OLDCFRAME.p) / 2, OLDCFRAME.p) * ANGLES(RAD(90), 0, 0)
881
		local THEMESHTYPE = "BlockMesh"
882
		if MESHTYPE == "Cylinder" then
883
			THEMESHTYPE = "CylinderMesh"
884
		end
885
		local EFFECTMESH = CreateMesh(THEMESHTYPE, EFFECTPART, "", "", "", VT(0 + SIZE * Player_Size, 1, 0 + SIZE * Player_Size), VT(0, 0, 0))
886
		game:GetService("Debris"):AddItem(EFFECTPART, 10)
887
		coroutine.resume(coroutine.create(function(PART, MESH)
888
			for i = 0, 1, delay do
889
				Swait()
890
				PART.CFrame = PART.CFrame * ROTATION
891
				PART.Transparency = i
892
				MESH.Scale = MESH.Scale + VT(X * Player_Size, Y * Player_Size, Z * Player_Size)
893
			end
894
			PART.Parent = nil
895
		end), EFFECTPART, EFFECTMESH)
896
	end
897
end
898
899
function ClangEffect(BRICKCOLOR, MATERIAL, CFRAME, ANGLE, DURATION, SIZE, POWER, REFLECTANCE, X, Y, Z, delay)
900
	local EFFECTPART = CreatePart(3, Effects, MATERIAL, 0, 1, BRICKCOLOR, "Effect", VT())
901
	EFFECTPART.Anchored = true
902
	EFFECTPART.CFrame = CFRAME
903
	local EFFECTMESH = CreateMesh("BlockMesh", EFFECTPART, "", "", "", VT(0, 0, 0), VT(0, 0, 0))
904
	game:GetService("Debris"):AddItem(EFFECTPART, 10)
905
	local THELASTPOINT = CFRAME
906
	coroutine.resume(coroutine.create(function(PART)
907
		for i = 1, DURATION do
908
			Swait()
909
			PART.CFrame = PART.CFrame * ANGLES(RAD(ANGLE), 0, 0) * CF(0, POWER * Player_Size, 0)
910
			TrailEffect(BRICKCOLOR, MATERIAL, PART.CFrame, THELASTPOINT, "Cylinder", REFLECTANCE, SIZE * Player_Size, ANGLES(0, 0, 0), X * Player_Size, Y * Player_Size, Z * Player_Size, delay)
911
			THELASTPOINT = PART.CFrame
912
		end
913
		PART.Parent = nil
914
	end), EFFECTPART)
915
end
916
917
function CreateWave(inair,size,doesrotate,rotatedirection,waitt,part,offset)
918
	local wave = CreatePart(3, Effects, "Neon", 0, 0.5, Torso.BrickColor, "Effect", VT(0,0,0))
919
	local mesh = IT("SpecialMesh",wave)
920
	mesh.MeshType = "FileMesh"
921
	mesh.MeshId = "http://www.roblox.com/asset/?id=20329976"
922
	mesh.Scale = VT(size,size,size)
923
	mesh.Offset = VT(0,0,-size/8)
924
	wave.CFrame = CF(part.Position) * CF(0,offset,0) * ANGLES(RAD(inair),RAD(0),RAD(0))
925
	coroutine.resume(coroutine.create(function(PART)
926
		for i = 1, waitt do
927
			Swait()
928
			mesh.Scale = mesh.Scale + VT(size/5,0,size/5)
929
			mesh.Offset = VT(0,0,-(mesh.Scale.X/8))
930
			if doesrotate == true then
931
				wave.CFrame = wave.CFrame * CFrame.fromEulerAnglesXYZ(0, rotatedirection, 0)
932
			end
933
			wave.Transparency = wave.Transparency + (0.5/waitt)
934
			if wave.Transparency > 0.99 then
935
				wave:remove()
936
			end
937
		end
938
	end))
939
end
940
941
function CreateRing(inair,size,doesrotate,rotatedirection,waitt,part,offset,spin1,spin2)
942
	local wave = CreatePart(3, Effects, "Neon", 0, 0.5, Torso.BrickColor, "Effect", VT(0,0,0))
943
	local mesh = IT("SpecialMesh",wave)
944
	mesh.MeshType = "FileMesh"
945
	mesh.MeshId = "http://www.roblox.com/asset/?id=3270017"
946
	mesh.Scale = VT(size,size,size)
947
	mesh.Offset = VT(0,0,0)
948
	wave.CFrame = CF(part.Position) * CF(0,offset,0) * ANGLES(RAD(inair),RAD(0),RAD(0))
949
	coroutine.resume(coroutine.create(function(PART)
950
		for i = 1, waitt do
951
			Swait()
952
			mesh.Scale = mesh.Scale + VT(size/5,size/5,size/5)
953
			if doesrotate == true then
954
				wave.CFrame = wave.CFrame * CFrame.fromEulerAnglesXYZ(spin2, rotatedirection, spin1)
955
			end
956
			wave.Transparency = wave.Transparency + (0.5/waitt)
957
			if wave.Transparency > 0.99 then
958
				wave:remove()
959
			end
960
		end
961
	end))
962
end
963
964
function CreatePentagram(size,doesrotate,rotatedirection,waitt,cframe,offset)
965
	local sinkhole = IT("Part",Effects)
966
	sinkhole.Size = VT(size,0,size)
967
	sinkhole.CFrame = cframe * CF(0,offset,0)
968
	sinkhole.Material = "Neon"
969
	sinkhole.Color = C3(170, 0, 170)
970
	sinkhole.Anchored = true
971
	sinkhole.CanCollide = false
972
	sinkhole.Transparency = 1
973
	local decal = IT("Decal",sinkhole)
974
	decal.Face = "Top"
975
	decal.Texture = "http://www.roblox.com/asset/?id=177470914"
976
	coroutine.resume(coroutine.create(function(PART)
977
		for i = 1, waitt do
978
			Swait()
979
			if doesrotate == true then
980
				sinkhole.CFrame = sinkhole.CFrame * CFrame.fromEulerAnglesXYZ(0, rotatedirection, 0)
981
			end
982
			if i > waitt-11 then
983
				decal.Transparency = decal.Transparency + 0.1
984
			end
985
		end
986
		sinkhole:remove()
987
	end))
988
	return sinkhole
989
end
990
991
--local list={}
992
function Triangle(Color, Material, a, b, c, delay)
993
	local edge1 = (c - a):Dot((b - a).unit)
994
	local edge2 = (a - b):Dot((c - b).unit)
995
	local edge3 = (b - c):Dot((a - c).unit)
996
	if edge1 <= (b - a).magnitude and edge1 >= 0 then
997
		a, b, c=a, b, c
998
	elseif edge2 <= (c - b).magnitude and edge2 >= 0 then
999
		a, b, c=b, c, a
1000
	elseif edge3 <= (a - c).magnitude and edge3 >= 0 then
1001
		a, b, c=c, a, b
1002
	else
1003
		assert(false, "unreachable")
1004
	end
1005
	local len1 = (c - a):Dot((b - a).unit)
1006
	local len2 = (b - a).magnitude - len1
1007
	local width = (a + (b - a).unit * len1 - c).magnitude
1008
	local maincf = CFrameFromTopBack(a, (b - a):Cross(c - b).unit, - (b - a).unit)
1009
	if len1 > 1 / 100 then
1010
		local sz = VT(0.2, width, len1)
1011
		local w1 = CreatePart(3, Effects, Material, 0, 0.5, Color, "Trail", sz)
1012
		local sp = CreateMesh("SpecialMesh", w1, "Wedge", "", "", VT(0, 1, 1) * sz / w1.Size, VT(0, 0, 0))
1013
		w1.Anchored = true
1014
		w1.CFrame = maincf * ANGLES(math.pi, 0, math.pi / 2) * CF(0, width / 2, len1 / 2)
1015
		coroutine.resume(coroutine.create(function()
1016
			for i = 0.5, 1, delay * (2 / Animation_Speed) do
1017
				Swait()
1018
				w1.Transparency = i
1019
			end
1020
			w1.Parent = nil
1021
		end))
1022
		game:GetService("Debris"):AddItem(w1, 10)
1023
		--table.insert(list, w1)
1024
	end
1025
	if len2 > 1 / 100 then
1026
		local sz = VT(0.2, width, len2)
1027
		local w2 = CreatePart(3, Effects, Material, 0, 0.5, Color, "Trail", sz)
1028
		local sp = CreateMesh("SpecialMesh", w2, "Wedge", "", "", VT(0, 1, 1) * sz / w2.Size, VT(0, 0, 0))
1029
		w2.Anchored = true
1030
		w2.CFrame = maincf * ANGLES(math.pi, math.pi, -math.pi / 2) * CF(0, width / 2, -len1 - len2 / 2)
1031
		coroutine.resume(coroutine.create(function()
1032
			for i = 0.5, 1, delay * (2 / Animation_Speed) do
1033
				Swait()
1034
				w2.Transparency = i
1035
			end
1036
			w2.Parent = nil
1037
		end))
1038
		game:GetService("Debris"):AddItem(w2, 10)
1039
		--table.insert(list, w2)
1040
	end
1041
	--return unpack(list)
1042
end
1043
1044
--[[Usage:
1045
	local Pos = Part
1046
	local Offset = Part.CFrame * CF(0, 0, 0)
1047
	local Color = "Institutional white"
1048
	local Material = "Neon"
1049
	local TheDelay = 0.01
1050
	local Height = 4
1051
	BLCF = Offset
1052
	if SCFR and (Pos.Position - SCFR.p).magnitude > 0.1 then
1053
		local a, b = Triangle(Color, Material, (SCFR * CF(0, Height / 2,0)).p, (SCFR * CF(0, -Height / 2, 0)).p, (BLCF * CF(0, Height / 2,0)).p, TheDelay)
1054
		if a then game:GetService("Debris"):AddItem(a, 1) end
1055
		if b then game:GetService("Debris"):AddItem(b, 1) end
1056
		local a, b = Triangle(Color, Material, (BLCF * CF(0, Height / 2, 0)).p, (BLCF * CF(0, -Height / 2, 0)).p, (SCFR * CF(0, -Height / 2, 0)).p, TheDelay)
1057
		if a then game:GetService("Debris"):AddItem(a, 1) end
1058
		if b then game:GetService("Debris"):AddItem(b, 1) end
1059
		SCFR = BLCF
1060
	elseif not SCFR then
1061
		SCFR = BLCF
1062
	end
1063
--
1064
BLCF = nil
1065
SCFR = nil
1066
--]]
1067
1068
--//=================================\\
1069
--\\=================================//
1070
1071
if Player_Size ~= 1 then
1072
RootPart.Size = RootPart.Size * Player_Size
1073
Torso.Size = Torso.Size * Player_Size
1074
Head.Size = Head.Size * Player_Size
1075
RightArm.Size = RightArm.Size * Player_Size
1076
LeftArm.Size = LeftArm.Size * Player_Size
1077
RightLeg.Size = RightLeg.Size * Player_Size
1078
LeftLeg.Size = LeftLeg.Size * Player_Size
1079
RootJoint.Parent = RootPart
1080
Neck.Parent = Torso
1081
RightShoulder.Parent = Torso
1082
LeftShoulder.Parent = Torso
1083
RightHip.Parent = Torso
1084
LeftHip.Parent = Torso
1085
	
1086
RootJoint.C0 = ROOTC0 * CF(0 * Player_Size, 0 * Player_Size, 0 * Player_Size) * ANGLES(RAD(0), RAD(0), RAD(0))
1087
	RootJoint.C1 = ROOTC0 * CF(0 * Player_Size, 0 * Player_Size, 0 * Player_Size) * ANGLES(RAD(0), RAD(0), RAD(0))
1088
	Neck.C0 = NECKC0 * CF(0 * Player_Size, 0 * Player_Size, 0 + ((1 * Player_Size) - 1)) * ANGLES(RAD(0), RAD(0), RAD(0))
1089
	Neck.C1 = CF(0 * Player_Size, -0.5 * Player_Size, 0 * Player_Size) * ANGLES(RAD(-90), RAD(0), RAD(180))
1090
	RightShoulder.C0 = CF(1.5 * Player_Size, 0.5 * Player_Size, 0 * Player_Size) * ANGLES(RAD(0), RAD(0), RAD(0)) * RIGHTSHOULDERC0
1091
	LeftShoulder.C0 = CF(-1.5 * Player_Size, 0.5 * Player_Size, 0 * Player_Size) * ANGLES(RAD(0), RAD(0), RAD(0)) * LEFTSHOULDERC0
1092
	--if Disable_Moving_Arms == false then
1093
		RightShoulder.C1 = ANGLES(0, RAD(90), 0) * CF(0 * Player_Size, 0.5 * Player_Size, -0.5)
1094
		LeftShoulder.C1 = ANGLES(0, RAD(-90), 0) * CF(0 * Player_Size, 0.5 * Player_Size, -0.5)
1095
	--else
1096
		--RightShoulder.C1 = CF(0 * Player_Size, 0.5 * Player_Size, 0 * Player_Size)
1097
		--LeftShoulder.C1 = CF(0 * Player_Size, 0.5 * Player_Size, 0 * Player_Size)
1098
	--end
1099
	RightHip.C0 = CF(1 * Player_Size, -1 * Player_Size, 0 * Player_Size) * ANGLES(RAD(0), RAD(90), RAD(0)) * ANGLES(RAD(0), RAD(0), RAD(0))
1100
	LeftHip.C0 = CF(-1 * Player_Size, -1 * Player_Size, 0 * Player_Size) * ANGLES(RAD(0), RAD(-90), RAD(0)) * ANGLES(RAD(0), RAD(0), RAD(0))
1101
	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))
1102
	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))
1103
end
1104
1105
--//=================================\\
1106
--||	     WEAPON CREATION
1107
--\\=================================//
1108
1109
if Player_Size ~= 1 then
1110
	for _, v in pairs (Weapon:GetChildren()) do
1111
		if v.ClassName == "Motor" or v.ClassName == "Weld" or v.ClassName == "Snap" then
1112
			local p1 = v.Part1
1113
			v.Part1 = nil
1114
			local cf1, cf2, cf3, cf4, cf5, cf6, cf7, cf8, cf9, cf10, cf11, cf12 = v.C1:components()
1115
			v.C1 = CF(cf1 * Player_Size, cf2 * Player_Size, cf3 * Player_Size, cf4, cf5, cf6, cf7, cf8, cf9, cf10, cf11, cf12)
1116
			v.Part1 = p1
1117
		elseif v.ClassName == "Part" then
1118
			for _, b in pairs (v:GetChildren()) do
1119
				if b.ClassName == "SpecialMesh" or b.ClassName == "BlockMesh" then
1120
					b.Scale = VT(b.Scale.x * Player_Size, b.Scale.y * Player_Size, b.Scale.z * Player_Size)
1121
				end
1122
			end
1123
		end
1124
	end
1125
end
1126
1127
createaccessory(Head,"http://www.roblox.com/asset/?id=210118899","",VT(1, 1, 1),VT(0, 0.25, 0.1),BrickColor.new"Really black")
1128
1129
1130
local AT1 = IT("Attachment",RightArm)
1131
AT1.Position = VT(0,-1.15,0)
1132
local AT2 = IT("Attachment",LeftArm)
1133
AT2.Position = VT(0,-1.15,0)
1134
1135
Humanoid.HealthChanged:connect(function()
1136
	if Humanoid.Health ~= "inf" then
1137
		Humanoid.Health = "inf"
1138
	end
1139
	if Humanoid.MaxHealth ~= "inf" then
1140
		Humanoid.MaxHealth = "inf"
1141
	end
1142
end)
1143
1144
local EyeSizes={
1145
	NumberSequenceKeypoint.new(0,1.2,0),
1146
	NumberSequenceKeypoint.new(1,0,0)
1147
}
1148
local EyeTrans={
1149
	NumberSequenceKeypoint.new(0,0.8,0),
1150
	NumberSequenceKeypoint.new(1,1,0)
1151
}
1152
local PE=Instance.new("ParticleEmitter")
1153
PE.LightEmission=0
1154
PE.Size=NumberSequence.new(EyeSizes)
1155
PE.Transparency=NumberSequence.new(EyeTrans)
1156
PE.Lifetime=NumberRange.new(0.35,0.35,0.35)
1157
PE.Rotation=NumberRange.new(0,360)
1158
PE.Rate=999
1159
PE.Acceleration = Vector3.new(0,0,0)
1160
PE.Drag = 5
1161
PE.LockedToPart = false
1162
PE.Speed = NumberRange.new(0,0,0)
1163
PE.Rotation = NumberRange.new(-100, 100)
1164
PE.RotSpeed = NumberRange.new(-100, 100)
1165
PE.Texture="http://www.roblox.com/asset/?id=669492379"
1166
PE.Color = ColorSequence.new(Color3.new(170, 0, 170))
1167
PE.ZOffset = 0
1168
PE.Name = "Reign"
1169
PE.Enabled = false
1170
PE.VelocitySpread = 10000
1171
1172
function particles(art)
1173
local o = PE:Clone()
1174
o.Parent = art
1175
o.Enabled = true
1176
return o
1177
end
1178
1179
particles(AT1)
1180
particles(AT2)
1181
1182
createbodypart("Gem","Magenta",Torso,VT(0, 0.2, 0.5),VT(0.6,1.5,0.5))
1183
createbodypart("Gem","Magenta",Torso,VT(0, -0.2, 0.5),VT(0.2,1,0.5))
1184
createbodypart("Gem","Magenta",Torso,VT(-0.3, 0.5, 0.5),VT(0.5,0.8,0.2))
1185
createbodypart("Gem","Magenta",Torso,VT(0.3, 0.5, 0.5),VT(0.5,0.8,0.2))
1186
1187
---ribs---
1188
createbodypart("Gem","Magenta",Torso,VT(0.6, 0.9, -0.57),VT(0.8,0.2,0.2))
1189
createbodypart("Gem","Magenta",Torso,VT(-0.6, 0.9, -0.57),VT(0.8,0.2,0.2))
1190
1191
createbodypart("Gem","Magenta",Torso,VT(0.7, 0.5, -0.57),VT(0.6,0.2,0.2))
1192
createbodypart("Gem","Magenta",Torso,VT(-0.7, 0.5, -0.57),VT(0.6,0.2,0.2))
1193
1194
createbodypart("Gem","Magenta",Torso,VT(0.8, 0.2, -0.57),VT(0.4,0.2,0.2))
1195
createbodypart("Gem","Magenta",Torso,VT(-0.8, 0.2, -0.57),VT(0.4,0.2,0.2))
1196
----------
1197
1198
1199
1200
for _, c in pairs(Weapon:GetChildren()) do
1201
	if c.ClassName == "Part" then
1202
		c.CustomPhysicalProperties = PhysicalProperties.new(0, 0, 0, 0, 0)
1203
	end
1204
end
1205
1206
Weapon.Parent = Character
1207
1208
Humanoid.Died:connect(function()
1209
	q = workspace:GetChildren()
1210
	CreatePentagram(1500,true,-0.1,150,CF(RootPart.Position),-3)
1211
	Head.Parent = nil
1212
	Head = nil
1213
	for i = 1, #q do
1214
		local child = q[i]
1215
		if child.ClassName == "Model" and child:FindFirstChild("Humanoid") then
1216
			child:BreakJoints()
1217
		end
1218
	end
1219
	local taunt = CreateSound("135009414", workspace, 10, 1)
1220
	local effect = IT("PitchShiftSoundEffect",taunt)
1221
	effect.Octave = 0.700
1222
	ATTACK = true
1223
end)
1224
1225
print(Class_Name.." loaded.")
1226
1227
--//=================================\\
1228
--\\=================================//
1229
1230
1231
1232
1233
1234
--//=================================\\
1235
--||	     DAMAGE FUNCTIONS
1236
--\\=================================//
1237
1238
function StatLabel(LABELTYPE, CFRAME, TEXT, COLOR)
1239
	local STATPART = CreatePart(3, Effects, "Neon", 0, 1, "Really black", "Effect", VT())
1240
	STATPART.CFrame = CF(CFRAME.p + VT(0, 1.5, 0))
1241
	local BODYGYRO = IT("BodyGyro", STATPART)
1242
	local BODYPOSITION = IT("BodyPosition", STATPART)
1243
	BODYPOSITION.P = 2000
1244
	BODYPOSITION.D = 100
1245
	BODYPOSITION.maxForce = VT(math.huge, math.huge, math.huge)
1246
	if LABELTYPE == "Normal" then
1247
		BODYPOSITION.position = STATPART.Position + VT(MRANDOM(-2, 2), 6, MRANDOM(-2, 2))
1248
	elseif LABELTYPE == "Debuff" then
1249
		BODYPOSITION.position = STATPART.Position + VT(MRANDOM(-2, 2), 8, MRANDOM(-2, 2))
1250
	elseif LABELTYPE == "Interruption" then
1251
		BODYPOSITION.position = STATPART.Position + VT(MRANDOM(-2,2), 8, MRANDOM(-2, 2))
1252
	end
1253
	game:GetService("Debris"):AddItem(STATPART ,5)
1254
	local BILLBOARDGUI = Instance.new("BillboardGui", STATPART)
1255
	BILLBOARDGUI.Adornee = STATPART
1256
	BILLBOARDGUI.Size = UD2(2.5, 0, 2.5 ,0)
1257
	BILLBOARDGUI.StudsOffset = VT(-2, 2, 0)
1258
	BILLBOARDGUI.AlwaysOnTop = true
1259
	local TEXTLABEL = Instance.new("TextLabel", BILLBOARDGUI)
1260
	TEXTLABEL.BackgroundTransparency = 1
1261
	TEXTLABEL.Size = UD2(2.5, 0, 2.5, 0)
1262
	TEXTLABEL.Text = TEXT
1263
	TEXTLABEL.Font = "Antique"
1264
	TEXTLABEL.FontSize="Size42"
1265
	TEXTLABEL.TextColor3 = COLOR
1266
	TEXTLABEL.TextStrokeTransparency = 1
1267
	TEXTLABEL.TextScaled = true
1268
	TEXTLABEL.TextWrapped = true
1269
	coroutine.resume(coroutine.create(function(THEPART, THEBODYPOSITION, THETEXTLABEL)
1270
		wait(0.2)
1271
		for i=1, 5 do
1272
			wait()
1273
			THEBODYPOSITION.Position = THEPART.Position - VT(0, 0.5 ,0)
1274
		end
1275
		wait(1.2)
1276
		for i=1, 5 do
1277
			wait()
1278
			THETEXTLABEL.TextTransparency = THETEXTLABEL.TextTransparency + 0.2
1279
			THETEXTLABEL.TextStrokeTransparency = THETEXTLABEL.TextStrokeTransparency + 0.2
1280
			THEBODYPOSITION.position = THEPART.Position + VT(0, 0.5, 0)
1281
		end
1282
		THEPART.Parent = nil
1283
	end),STATPART, BODYPOSITION, TEXTLABEL)
1284
end
1285
1286
1287
--//=================================\\
1288
--||			DAMAGING
1289
--\\=================================//
1290
1291
1292
1293
function dealdamage(hit,min,max,maxstrength,beserk,critrate,critmultiplier)
1294
	if hit.Parent:FindFirstChildOfClass("Humanoid") and hit.Parent:FindFirstChild("HitBy"..Player.Name) == nil then
1295
		local humanoid = hit.Parent:FindFirstChildOfClass("Humanoid")
1296
		local dmg = math.random(min,max)
1297
		if humanoid.Health > 0 then
1298
			if beserk == true then
1299
				humanoid.Health = 0
1300
			else
1301
				CreateSound("260430060", hit, 1.2, MRANDOM(7, 12) / 10)
1302
				hit.Velocity = CFrame.new(Torso.Position,hit.Position).lookVector*5*maxstrength
1303
				if math.random(1,100) < critrate+1 then
1304
					humanoid.Health = humanoid.Health - dmg*critmultiplier
1305
					StatLabel("Normal", hit.CFrame * CF(0, 0 + (hit.Size.z - 1), 0), "CRIT/"..dmg*critmultiplier, C3(1, 0, 0))
1306
				else
1307
					humanoid.Health = humanoid.Health - dmg
1308
					StatLabel("Normal", hit.CFrame * CF(0, 0 + (hit.Size.z - 1), 0), dmg, C3(0, 0, 0))
1309
				end
1310
				local defence = Instance.new("BoolValue",hit.Parent)
1311
				defence.Name = ("HitBy"..Player.Name)
1312
				game:GetService("Debris"):AddItem(defence, 0.5)
1313
			end
1314
		end
1315
	end
1316
end
1317
1318
function AoEDamage(position,radius,min,max,maxstrength,beserk,critrate,critmultiplier,CanBeDodgedByJumping)
1319
	local dmg = math.random(min,max)
1320
	for i,v in ipairs(workspace:GetChildren()) do
1321
	if v:FindFirstChild("HitBy"..Player.Name) == nil then
1322
		local body = v:GetChildren()
1323
			for part = 1, #body do
1324
				if(v:FindFirstChild("HitBy"..Player.Name) == nil and (body[part].ClassName == "Part" or body[part].ClassName == "MeshPart") and v ~= Character) then
1325
					if(body[part].Position - position).Magnitude < radius then
1326
						if v.ClassName == "Model" then
1327
							if v:FindFirstChild("Humanoid") then
1328
								if v.Humanoid.Health ~= 0 then
1329
									if CanBeDodgedByJumping == true then
1330
										if body[part].Position.Y < position.Y+5 then
1331
											if math.random(1,100) < critrate+1 then
1332
												v.Humanoid.Health = v.Humanoid.Health - dmg*critmultiplier
1333
												StatLabel("Normal", body[part].CFrame * CF(0, 0 + (body[part].Size.z - 1), 0), "CRIT/"..dmg*critmultiplier, C3(255/255, 0, 0))
1334
											else
1335
												v.Humanoid.Health = v.Humanoid.Health - dmg
1336
												StatLabel("Normal", body[part].CFrame * CF(0, 0 + (body[part].Size.z - 1), 0), dmg, C3(0, 0, 0))
1337
											end
1338
											local defence = Instance.new("BoolValue",v)
1339
											defence.Name = ("HitBy"..Player.Name)
1340
											game:GetService("Debris"):AddItem(defence, 0.5)
1341
										end
1342
									else
1343
										if beserk == true then
1344
											v.Humanoid.Health = 0
1345
										end
1346
										if math.random(1,100) < critrate+1 then
1347
											v.Humanoid.Health = v.Humanoid.Health - dmg*critmultiplier
1348
											StatLabel("Normal", body[part].CFrame * CF(0, 0 + (body[part].Size.z - 1), 0), "CRIT/"..dmg*critmultiplier, C3(255/255, 0, 0))
1349
										else
1350
											v.Humanoid.Health = v.Humanoid.Health - dmg
1351
											StatLabel("Normal", body[part].CFrame * CF(0, 0 + (body[part].Size.z - 1), 0), dmg, C3(0, 0, 0))
1352
										end
1353
										local defence = Instance.new("BoolValue",v)
1354
										defence.Name = ("HitBy"..Player.Name)
1355
										game:GetService("Debris"):AddItem(defence, 0.5)
1356
									end
1357
								end
1358
							end
1359
						end
1360
						body[part].Velocity = CFrame.new(position,body[part].Position).lookVector*5*maxstrength
1361
					end
1362
				end
1363
			end
1364
			if v.ClassName == "Part" then
1365
				if v.Anchored == false and (v.Position - position).Magnitude < radius then
1366
					v.Velocity = CFrame.new(position,v.Position).lookVector*5*maxstrength
1367
				end
1368
			end
1369
		end
1370
	end
1371
end
1372
1373
function killnearest(position,range,maxstrength)
1374
	for i,v in ipairs(workspace:GetChildren()) do
1375
	local body = v:GetChildren()
1376
		for part = 1, #body do
1377
			if((body[part].ClassName == "Part" or body[part].ClassName == "MeshPart") and v ~= Character) then
1378
				if(body[part].Position - position).Magnitude < range then
1379
					if v.ClassName == "Model" then
1380
						v:BreakJoints()
1381
					end
1382
					--table.insert(Effects2,{body[part],"Disappear",0.02,2,2,2,2})
1383
					body[part].Velocity = CFrame.new(position,body[part].Position).lookVector*5*maxstrength
1384
				end
1385
			end
1386
		end
1387
		if v.ClassName == "Part" then
1388
			if v.Anchored == false and (v.Position - position).Magnitude < range then
1389
				--table.insert(Effects2,{v,"Disappear",0.02,2,2,2,2})
1390
				v.Velocity = CFrame.new(position,v.Position).lookVector*5*maxstrength
1391
			end
1392
		end
1393
	end
1394
end
1395
1396
--//=================================\\
1397
--||	ATTACK FUNCTIONS AND STUFF
1398
--\\=================================//
1399
1400
Humanoid.HealthChanged:connect(function()
1401
	if Humanoid.Health == 0 then
1402
		Humanoid.MaxHealth = "inf"
1403
		Humanoid.Health = "inf"
1404
		if ATTACK == false then
1405
			if Humanoid.Health == 0 then
1406
				workspace:ClearAllChildren()
1407
			else
1408
				ViolentRoar()
1409
			end
1410
		end
1411
	end
1412
end)
1413
1414
function clerp(a, b, t)
1415
  return a:lerp(b, t)
1416
end
1417
1418
function newBezier(startpos, pos2, pos3, endpos, t)
1419
  local A = clerp(startpos, pos2, t)
1420
  local B = clerp(pos2, pos3, t)
1421
  local C = clerp(pos3, endpos, t)
1422
  local lerp1 = clerp(A, B, t)
1423
  local lerp2 = clerp(B, C, t)
1424
  local cubic = clerp(lerp1, lerp2, t)
1425
  return cubic
1426
end
1427
1428
function Mortar(Target)
1429
	local newball = Instance.new("Part", workspace)
1430
	newball.Anchored = true
1431
	newball.Shape = "Ball"
1432
	newball.Material = "Neon"
1433
	newball.Size = Vector3.new(2, 2, 2)
1434
	newball.CanCollide = false
1435
	newball.CFrame = Target.CFrame
1436
	newball.BrickColor = BrickColor.new("Magenta")
1437
	newball.Transparency = 0.5
1438
  	local Cys = Instance.new("SpecialMesh", newball)
1439
  	Cys.MeshType = "FileMesh"
1440
  	Cys.MeshId = "rbxassetid://9756362"
1441
  	Cys.Scale = Vector3.new(1, 1, 1)
1442
	local onefourth = Target.Position:Lerp(Mouse.Hit.p, 0.25) + Vector3.new(math.random(-25, 25), math.random(0, 25), math.random(-25, 25))
1443
	local threefourths = Target.Position:Lerp(Mouse.Hit.p, 0.75) + Vector3.new(math.random(-25, 25), math.random(0, 25), math.random(-25, 25))
1444
  	local MPos = Mouse.Hit.p
1445
	 local A1 = IT("Attachment",newball)
1446
	    A1.Position = Vector3.new(0, 1, 0)
1447
	  local A2 = IT("Attachment",newball)
1448
	    A2.Position = Vector3.new(0, -1, 0)
1449
	  local Trail = IT("Trail",newball)
1450
	    Trail.LightEmission = 1
1451
	    Trail.FaceCamera = true
1452
	    Trail.Texture = "rbxassetid://945758042"
1453
	    Trail.Attachment0 = A1
1454
	    Trail.Attachment1 = A2
1455
	    Trail.Lifetime = 0.5
1456
	    Trail.MinLength = 0
1457
	    Trail.Transparency = NumberSequence.new(0.3, 1)
1458
	    Trail.Color = ColorSequence.new(BrickColor.new("Magenta").Color)
1459
  	coroutine.resume(coroutine.create(function()
1460
		local loop = 0
1461
   		for i = 0, 1, 0.07 do
1462
    	  	Swait()
1463
			loop = loop + 1
1464
			if loop == 1 then
1465
				CreateRing(0,3,true,-0.2,15,newball,0,0.3,-0.3)
1466
			elseif loop == 2 then
1467
				CreateRing(0,3,true,-0.2,15,newball,0,-0.3,0.3)
1468
				loop = 1
1469
			end
1470
    	  	newball.CFrame = CFrame.new(newBezier(Target.Position, onefourth, threefourths, MPos, i))
1471
    	end
1472
		killnearest(newball.Position,5,10)
1473
		MagicSphere("Magenta", "Neon", CF(newball.Position) * ANGLES(RAD(MRANDOM(-50, 50)), RAD(MRANDOM(-50, 50)), RAD(MRANDOM(-50, 50))), ANGLES(RAD(MRANDOM(-5, 5)), RAD(MRANDOM(-5, 5)), RAD(MRANDOM(-5, 5))), VT(0, 0, 0), 0.25, 0.25, 0.25, 7.5, 7.5, 7.5, 0.05)
1474
		MagicBlock("Magenta", "Neon", CF(newball.Position) * ANGLES(RAD(MRANDOM(-50, 50)), RAD(MRANDOM(-50, 50)), RAD(MRANDOM(-50, 50))), ANGLES(RAD(MRANDOM(-5, 5)), RAD(MRANDOM(-5, 5)), RAD(MRANDOM(-5, 5))), VT(0, 0, 0), 0.25, 0.25, 0.25, 7.5, 7.5,7.5, 0.05)
1475
		newball.Transparency = 1
1476
		CreateSound("971125740", newball, 10, 1)
1477
		for i = 1, 7 do
1478
			coroutine.resume(coroutine.create(function()
1479
				local ray = IT("Part",Effects)
1480
				ray.Size = VT(newball.Size.Y,newball.Size.Y/10,newball.Size.Y/10)
1481
				ray.CFrame = CFrame.new(newball.Position,Vector3.new(newball.Position.X+math.random(-360,360),newball.Position.Y+math.random(-360,360),newball.Position.Z+math.random(-360,360)))
1482
				local mesh = IT("BlockMesh",ray)
1483
				ray.Anchored = true
1484
				ray.CanCollide = false
1485
				ray.Material = newball.Material
1486
				ray.Color = newball.Color
1487
				table.insert(Effects2,{ray,"Block1",0.04,1,0,0,2})
1488
			end))
1489
		end
1490
  		game:GetService("Debris"):AddItem(newball, 5)
1491
	end))
1492
end
1493
1494
function RayCast(Position, Direction, MaxDistance, IgnoreList)
1495
	return game:GetService("Workspace"):FindPartOnRayWithIgnoreList(Ray.new(Position, Direction.unit * (MaxDistance or 999.999)), IgnoreList) 
1496
end
1497
1498
function JumpUp()
1499
	ATTACK = true
1500
	--Rooted = true
1501
	for i=0, 2, 0.1 / Animation_Speed do
1502
		Swait()
1503
		RootJoint.C0 = Clerp(RootJoint.C0, ROOTC0 * CF(0 * Player_Size, 0 * Player_Size, -1.2 * Player_Size) * ANGLES(RAD(65), RAD(0), RAD(0)), 0.2 / Animation_Speed)
1504
		Neck.C0 = Clerp(Neck.C0, NECKC0 * CF(0 * Player_Size, 0 * Player_Size, 0 + ((1 * Player_Size) - 1)) * ANGLES(RAD(0), RAD(0), RAD(0)), 0.2 / Animation_Speed)
1505
		RightShoulder.C0 = Clerp(RightShoulder.C0, CF(1.5 * Player_Size, 0.5 * Player_Size, 0 * Player_Size) * ANGLES(RAD(-40), RAD(0), RAD(20)) * RIGHTSHOULDERC0, 0.2 / Animation_Speed)
1506
		LeftShoulder.C0 = Clerp(LeftShoulder.C0, CF(-1.5 * Player_Size, 0.5 * Player_Size, 0 * Player_Size) * ANGLES(RAD(-40), RAD(0), RAD(-20)) * LEFTSHOULDERC0, 0.2 / Animation_Speed)
1507
		RightHip.C0 = Clerp(RightHip.C0, CF(1 * Player_Size, -0.3 * Player_Size, -1 * Player_Size) * ANGLES(RAD(0), RAD(90), RAD(0)) * ANGLES(RAD(0), RAD(0), RAD(-20)), 0.2 / Animation_Speed)
1508
		LeftHip.C0 = Clerp(LeftHip.C0, CF(-1 * Player_Size, -0.3 * Player_Size, -1 * Player_Size) * ANGLES(RAD(0), RAD(-90), RAD(0)) * ANGLES(RAD(0), RAD(0), RAD(0)), 0.2 / Animation_Speed)
1509
	end
1510
	CreateSound("2767090", Torso, 5, MRANDOM(7, 12) / 10)
1511
	CreateWave(0,3.5,true,0.2,150,RootPart,-2)
1512
	CreateWave(0,5,true,-0.2,150,RootPart,-2)
1513
	local bv = Instance.new("BodyVelocity") 
1514
	bv.maxForce = Vector3.new(1e9, 1e9, 1e9)
1515
	bv.velocity = Vector3.new(0,300,0)
1516
	bv.Parent = Torso
1517
	bv.Name = "DASH"
1518
	ATTACK = false
1519
	--Rooted = false
1520
	game:GetService("Debris"):AddItem(bv, 0.5)
1521
		coroutine.resume(coroutine.create(function()
1522
			Swait(50)
1523
			HASJUMPED = false
1524
		end))
1525
end
1526
1527
1528
function attacktemplate()
1529
	ATTACK = true
1530
	for i=0, 1, 0.1 / Animation_Speed do
1531
		Swait()
1532
		RootJoint.C0 = Clerp(RootJoint.C0,ROOTC0 * CF(0 * Player_Size, 0 * Player_Size, 0 * Player_Size + 0.05 * COS(SINE / 12) * Player_Size) * ANGLES(RAD(0), RAD(0), RAD(0)), 0.15 / Animation_Speed)
1533
		Neck.C0 = Clerp(Neck.C0, NECKC0 * CF(0 * Player_Size, 0 * Player_Size, 0 + ((1 * Player_Size) - 1)) * ANGLES(RAD(5 - 2.5 * SIN(SINE / 12)), RAD(0), RAD(0)), 0.15 / Animation_Speed)
1534
		RightShoulder.C0 = Clerp(RightShoulder.C0, CF(1.5 * Player_Size, 0.5 * Player_Size, 0 * Player_Size) * ANGLES(RAD(0), RAD(0), RAD(0)) * RIGHTSHOULDERC0, 0.15 / Animation_Speed)
1535
		LeftShoulder.C0 = Clerp(LeftShoulder.C0, CF(-1.5 * Player_Size, 0.5 * Player_Size, 0 * Player_Size) * ANGLES(RAD(0), RAD(0), RAD(0)) * LEFTSHOULDERC0, 0.15 / Animation_Speed)
1536
		RightHip.C0 = Clerp(RightHip.C0, CF(1 * Player_Size, -1 * Player_Size, -0 * Player_Size) * ANGLES(RAD(0), RAD(90), RAD(0)) * ANGLES(RAD(0), RAD(0), RAD(0)), 0.15 / Animation_Speed)
1537
		LeftHip.C0 = Clerp(LeftHip.C0, CF(-1 * Player_Size, -1 * Player_Size, -0 * Player_Size) * ANGLES(RAD(0), RAD(-90), RAD(0)) * ANGLES(RAD(0), RAD(0), RAD(0)), 0.15 / Animation_Speed)
1538
	end
1539
	ATTACK = false
1540
end
1541
1542
1543
function Attack1()
1544
	Rooted = true
1545
	ATTACK = true
1546
	for i=0, 1, 0.1 / Animation_Speed do
1547
		Swait()
1548
		RootJoint.C0 = Clerp(RootJoint.C0,ROOTC0 * CF(0 * Player_Size, 0 * Player_Size, -0.2 * Player_Size) * ANGLES(RAD(10), RAD(0), RAD(-30)), 0.4 / Animation_Speed)
1549
		Neck.C0 = Clerp(Neck.C0, NECKC0 * CF(0 * Player_Size, 0 * Player_Size, 0 + ((1 * Player_Size) - 1)) * ANGLES(RAD(2.5), RAD(0), RAD(30)), 0.4 / Animation_Speed)
1550
		RightShoulder.C0 = Clerp(RightShoulder.C0, CF(1.5 * Player_Size, 0.5 * Player_Size, 0 * Player_Size) * ANGLES(RAD(180), RAD(0), RAD(100)) * ANGLES(RAD(-30), RAD(80), RAD(0)) * RIGHTSHOULDERC0, 0.4 / Animation_Speed)
1551
		LeftShoulder.C0 = Clerp(LeftShoulder.C0, CF(-1.5 * Player_Size, 0.5 * Player_Size, 0 * Player_Size) * ANGLES(RAD(-15), RAD(0), RAD(-55)) * LEFTSHOULDERC0, 0.4 / Animation_Speed)
1552
		RightHip.C0 = Clerp(RightHip.C0, CF(1 * Player_Size, -0.8 * Player_Size, -0.2 * Player_Size) * ANGLES(RAD(0), RAD(80), RAD(0)) * ANGLES(RAD(-2.5), RAD(0), RAD(5)), 0.4 / Animation_Speed)
1553
		LeftHip.C0 = Clerp(LeftHip.C0, CF(-1 * Player_Size, -0.8 * Player_Size, -0.2 * Player_Size) * ANGLES(RAD(0), RAD(-65), RAD(0)) * ANGLES(RAD(-10), RAD(0), RAD(-15)), 0.4 / Animation_Speed)
1554
		if StaggerHit.Value == true or Stagger.Value == true or Stun.Value == true then
1555
			break
1556
		end
1557
	end
1558
	CreatePentagram(15,true,0.1,45,CF(RootPart.Position),-3)
1559
	local paw = RightArm.Touched:Connect(function(hit)
1560
		dealdamage(hit,9999,9999,9000,false,9999,9999)
1561
	end) 
1562
	local bv = Instance.new("BodyVelocity") 
1563
	bv.maxForce = Vector3.new(1e9, 1e9, 1e9)
1564
	bv.velocity = RootPart.CFrame.lookVector * 50
1565
	bv.Parent = Torso
1566
	bv.Name = "DASH"
1567
	ATTACK = false
1568
	Rooted = false
1569
	game:GetService("Debris"):AddItem(bv, 0.05)
1570
	for i=0, 1, 0.1 / Animation_Speed do
1571
		Swait()
1572
		RootJoint.C0 = Clerp(RootJoint.C0,ROOTC0 * CF(0 * Player_Size, 0 * Player_Size, -0.2 * Player_Size) * ANGLES(RAD(10), RAD(0), RAD(30)), 0.4 / Animation_Speed)
1573
		Neck.C0 = Clerp(Neck.C0, NECKC0 * CF(0 * Player_Size, 0 * Player_Size, 0 + ((1 * Player_Size) - 1)) * ANGLES(RAD(2.5), RAD(0), RAD(-30)), 0.4 / Animation_Speed)
1574
		RightShoulder.C0 = Clerp(RightShoulder.C0, CF(1.5 * Player_Size, 0.5 * Player_Size, 0 * Player_Size) * ANGLES(RAD(90), RAD(0), RAD(10)) * ANGLES(RAD(-30), RAD(80), RAD(0)) * RIGHTSHOULDERC0, 0.4 / Animation_Speed)
1575
		LeftShoulder.C0 = Clerp(LeftShoulder.C0, CF(-1.5 * Player_Size, 0.5 * Player_Size, 0 * Player_Size) * ANGLES(RAD(-15), RAD(0), RAD(-55)) * LEFTSHOULDERC0, 0.4 / Animation_Speed)
1576
		RightHip.C0 = Clerp(RightHip.C0, CF(1 * Player_Size, -0.8 * Player_Size, -0.2 * Player_Size) * ANGLES(RAD(0), RAD(40), RAD(0)) * ANGLES(RAD(-2.5), RAD(0), RAD(5)), 0.4 / Animation_Speed)
1577
		LeftHip.C0 = Clerp(LeftHip.C0, CF(-1 * Player_Size, -0.8 * Player_Size, -0.2 * Player_Size) * ANGLES(RAD(0), RAD(-35), RAD(0)) * ANGLES(RAD(-10), RAD(0), RAD(-15)), 0.4 / Animation_Speed)
1578
		if StaggerHit.Value == true or Stagger.Value == true or Stun.Value == true then
1579
			break
1580
		end
1581
	end
1582
	COMBO = 2
1583
	paw:disconnect()
1584
	BLCF = nil
1585
	SCFR = nil
1586
	ATTACK = false
1587
	Rooted = false
1588
end
1589
1590
function Attack2()
1591
	Rooted = true
1592
	ATTACK = true
1593
	for i=0, 1, 0.1 / Animation_Speed do
1594
		Swait()
1595
		RootJoint.C0 = Clerp(RootJoint.C0,ROOTC0 * CF(0 * Player_Size, 0 * Player_Size, -0.2 * Player_Size) * ANGLES(RAD(5), RAD(0), RAD(20)), 0.4 / Animation_Speed)
1596
		Neck.C0 = Clerp(Neck.C0, NECKC0 * CF(0 * Player_Size, 0 * Player_Size, 0 + ((1 * Player_Size) - 1)) * ANGLES(RAD(0), RAD(0), RAD(-10)) * ANGLES(RAD(5), RAD(0), RAD(0)), 0.4 / Animation_Speed)
1597
		RightShoulder.C0 = Clerp(RightShoulder.C0, CF(1.5 * Player_Size, 0.5 * Player_Size, 0 * Player_Size) * ANGLES(RAD(70), RAD(0), RAD(45)) * RIGHTSHOULDERC0, 0.4 / Animation_Speed)
1598
		LeftShoulder.C0 = Clerp(LeftShoulder.C0, CF(-1.5 * Player_Size, 0.5 * Player_Size, 0 * Player_Size) * ANGLES(RAD(90), RAD(0), RAD(-55)) * ANGLES(RAD(5), RAD(0), RAD(0)) * LEFTSHOULDERC0, 0.4 / Animation_Speed)
1599
		RightHip.C0 = Clerp(RightHip.C0, CF(1 * Player_Size, -0.8 * Player_Size, -0.2 * Player_Size) * ANGLES(RAD(0), RAD(70), RAD(0)) * ANGLES(RAD(-7.5), RAD(0), RAD(-5)), 0.4 / Animation_Speed)
1600
		LeftHip.C0 = Clerp(LeftHip.C0, CF(-1 * Player_Size, -0.8 * Player_Size, 0.05 * Player_Size) * ANGLES(RAD(0), RAD(-40), RAD(0)) * ANGLES(RAD(-5), RAD(0), RAD(-10)), 0.4 / Animation_Speed)
1601
	end
1602
	CreatePentagram(15,true,-0.1,45,CF(RootPart.Position),-3)
1603
	local paw = LeftArm.Touched:Connect(function(hit)
1604
		dealdamage(hit,9999,9999,9000,false,9999,9999)
1605
	end) 
1606
	local bv = Instance.new("BodyVelocity") 
1607
	bv.maxForce = Vector3.new(1e9, 1e9, 1e9)
1608
	bv.velocity = RootPart.CFrame.lookVector * 50
1609
	bv.Parent = Torso
1610
	bv.Name = "DASH"
1611
	ATTACK = false
1612
	Rooted = false
1613
	game:GetService("Debris"):AddItem(bv, 0.05)
1614
	for i=0, 1.5, 0.1 / Animation_Speed do
1615
		Swait()
1616
		RootJoint.C0 = Clerp(RootJoint.C0,ROOTC0 * CF(0 * Player_Size, 0 * Player_Size, -0.2 * Player_Size) * ANGLES(RAD(5), RAD(0), RAD(-90)), 0.4 / Animation_Speed)
1617
		Neck.C0 = Clerp(Neck.C0, NECKC0 * CF(0 * Player_Size, 0 * Player_Size, 0 + ((1 * Player_Size) - 1)) * ANGLES(RAD(0), RAD(0), RAD(90)) * ANGLES(RAD(5), RAD(0), RAD(0)), 0.4 / Animation_Speed)
1618
		RightShoulder.C0 = Clerp(RightShoulder.C0, CF(1.5 * Player_Size, 0.5 * Player_Size, 0 * Player_Size) * ANGLES(RAD(70), RAD(0), RAD(45)) * RIGHTSHOULDERC0, 0.4 / Animation_Speed)
1619
		LeftShoulder.C0 = Clerp(LeftShoulder.C0, CF(-1.5 * Player_Size, 0.5 * Player_Size, 0 * Player_Size) * ANGLES(RAD(90), RAD(0), RAD(-55)) * ANGLES(RAD(5), RAD(0), RAD(0)) * LEFTSHOULDERC0, 0.4 / Animation_Speed)
1620
		RightHip.C0 = Clerp(RightHip.C0, CF(1 * Player_Size, -0.8 * Player_Size, -0.2 * Player_Size) * ANGLES(RAD(0), RAD(70), RAD(0)) * ANGLES(RAD(-7.5), RAD(0), RAD(-5)), 0.4 / Animation_Speed)
1621
		LeftHip.C0 = Clerp(LeftHip.C0, CF(-1 * Player_Size, -0.8 * Player_Size, 0.05 * Player_Size) * ANGLES(RAD(0), RAD(-40), RAD(0)) * ANGLES(RAD(-5), RAD(0), RAD(-10)), 0.4 / Animation_Speed)
1622
	end
1623
	COMBO = 3
1624
	paw:disconnect()
1625
	ATTACK = false
1626
	Rooted = false
1627
end
1628
1629
function Attack3()
1630
	ATTACK = true
1631
    Rooted = true
1632
	for i=0, 1, 0.1 / Animation_Speed do
1633
		Swait()
1634
			RootJoint.C0 = Clerp(RootJoint.C0, ROOTC0 * CF(0 * Player_Size, 0 * Player_Size, -1 * Player_Size) * ANGLES(RAD(45), RAD(0), RAD(0)), 0.2 / Animation_Speed)
1635
			Neck.C0 = Clerp(Neck.C0, NECKC0 * CF(0 * Player_Size, 0 * Player_Size, 0 + ((1 * Player_Size) - 1)) * ANGLES(RAD(0), RAD(0), RAD(0)), 0.2 / Animation_Speed)
1636
			RightShoulder.C0 = Clerp(RightShoulder.C0, CF(1.5 * Player_Size, -0.2 * Player_Size, 0.3 * Player_Size) * ANGLES(RAD(50), RAD(0), RAD(20 - 2.5 * COS(SINE / 12) + 2.5 * SIN(SINE / 24))) * RIGHTSHOULDERC0, 0.15 / Animation_Speed)
1637
			LeftShoulder.C0 = Clerp(LeftShoulder.C0, CF(-1.5 * Player_Size, 0.5 * Player_Size, 0 * Player_Size) * ANGLES(RAD(90), RAD(25), RAD(45)) * LEFTSHOULDERC0, 0.15 / Animation_Speed)
1638
			RightHip.C0 = Clerp(RightHip.C0, CF(1 * Player_Size, -0.3 * Player_Size, -1 * Player_Size) * ANGLES(RAD(0), RAD(90), RAD(0)) * ANGLES(RAD(0), RAD(0), RAD(-20)), 0.2 / Animation_Speed)
1639
			LeftHip.C0 = Clerp(LeftHip.C0, CF(-1 * Player_Size, -0.3 * Player_Size, 0 * Player_Size) * ANGLES(RAD(0), RAD(5), RAD(0)) * ANGLES(RAD(45), RAD(0), RAD(10)), 0.2 / Animation_Speed)
1640
		if StaggerHit.Value == true or Stagger.Value == true or Stun.Value == true then
1641
			break
1642
		end
1643
	end
1644
	for i=0, 1, 0.1 / Animation_Speed do
1645
		Swait()
1646
			RootJoint.C0 = Clerp(RootJoint.C0, ROOTC0 * CF(0 * Player_Size, 0 * Player_Size, 0 * Player_Size) * ANGLES(RAD(0), RAD(0), RAD(0)), 0.2 / Animation_Speed)
1647
			Neck.C0 = Clerp(Neck.C0, NECKC0 * CF(0 * Player_Size, 0 * Player_Size, 0 + ((1 * Player_Size) - 1)) * ANGLES(RAD(-20), RAD(0), RAD(0)), 0.2 / Animation_Speed)
1648
			RightShoulder.C0 = Clerp(RightShoulder.C0, CF(1.5 * Player_Size, 0.5 * Player_Size, 0 * Player_Size) * ANGLES(RAD(-40), RAD(0), RAD(20)) * RIGHTSHOULDERC0, 0.2 / Animation_Speed)
1649
			LeftShoulder.C0 = Clerp(LeftShoulder.C0, CF(-1.5 * Player_Size, 0.5 * Player_Size, 0 * Player_Size) * ANGLES(RAD(-40), RAD(0), RAD(-20)) * LEFTSHOULDERC0, 0.2 / Animation_Speed)
1650
			RightHip.C0 = Clerp(RightHip.C0, CF(1 * Player_Size, 0.5 * Player_Size, -1 * Player_Size) * ANGLES(RAD(0), RAD(90), RAD(0)) * ANGLES(RAD(-5), RAD(0), RAD(-20)), 0.2 / Animation_Speed)
1651
			LeftHip.C0 = Clerp(LeftHip.C0, CF(-1 * Player_Size, -1 * Player_Size, -0.3 * Player_Size) * ANGLES(RAD(0), RAD(-90), RAD(0)) * ANGLES(RAD(-5), RAD(0), RAD(20)), 0.2 / Animation_Speed)
1652
	end
1653
	for i=0, 1, 0.1 / Animation_Speed*7 do
1654
		Swait()
1655
			RootJoint.C0 = Clerp(RootJoint.C0, ROOTC0 * CF(0 * Player_Size, 0 * Player_Size, 0 * Player_Size) * ANGLES(RAD(0), RAD(0), RAD(0)), 0.2 / Animation_Speed)
1656
			Neck.C0 = Clerp(Neck.C0, NECKC0 * CF(0 * Player_Size, 0 * Player_Size, 0 + ((1 * Player_Size) - 1)) * ANGLES(RAD(20), RAD(0), RAD(0)), 0.2 / Animation_Speed)
1657
			RightShoulder.C0 = Clerp(RightShoulder.C0, CF(1.5 * Player_Size, 0.5 * Player_Size, 0 * Player_Size) * ANGLES(RAD(0), RAD(0), RAD(60)) * RIGHTSHOULDERC0, 0.2 / Animation_Speed)
1658
			LeftShoulder.C0 = Clerp(LeftShoulder.C0, CF(-1.5 * Player_Size, 0.5 * Player_Size, 0 * Player_Size) * ANGLES(RAD(0), RAD(0), RAD(-60)) * LEFTSHOULDERC0, 0.2 / Animation_Speed)
1659
			RightHip.C0 = Clerp(RightHip.C0, CF(1 * Player_Size, -4.7 * Player_Size, -0.25 * Player_Size) * ANGLES(RAD(45), RAD(45), RAD(0)), 0.2 / Animation_Speed)
1660
			LeftHip.C0 = Clerp(LeftHip.C0, CF(-1 * Player_Size, -1 * Player_Size, 0 * Player_Size) * ANGLES(RAD(0), RAD(-90), RAD(0)) * ANGLES(RAD(0), RAD(0), RAD(10)), 0.2 / Animation_Speed*5)
1661
	end
1662
	CreateSound("2248511", RightLeg, 2, 1)
1663
	CreateWave(0,3.5,true,0.2,25,RightLeg,-1)
1664
	CreateWave(0,3,true,-0.2,25,RightLeg,-1)
1665
	CreateWave(0,2.5,true,0.2,25,RightLeg,-1)
1666
	CreateWave(0,2,true,-0.2,25,RightLeg,-1)
1667
	AoEDamage(RightLeg.Position,15,25,30,15,false,5,3,true)
1668
	COMBO = 1
1669
    Rooted = false
1670
	ATTACK = false
1671
end
1672
1673
function Sinnerwave()
1674
	ATTACK = true
1675
	Rooted = true
1676
	for i=0, 2, 0.1 / Animation_Speed do
1677
		Swait()
1678
		Rooted = true
1679
		RootJoint.C0 = Clerp(RootJoint.C0,ROOTC0 * CF(0 * Player_Size, 0.35 * Player_Size, 0 * Player_Size + 0.05 * COS(SINE / 12) * Player_Size) * ANGLES(RAD(-5), RAD(0), RAD(0)), 0.15 / Animation_Speed)
1680
		Neck.C0 = Clerp(Neck.C0, NECKC0 * CF(0 * Player_Size, 0 * Player_Size, 0 + ((1 * Player_Size) - 1)) * ANGLES(RAD(5), RAD(0), RAD(0)), 0.15 / Animation_Speed)
1681
		RightShoulder.C0 = Clerp(RightShoulder.C0, CF(1.5 * Player_Size, 0.5 * Player_Size, 0.5 * Player_Size) * ANGLES(RAD(90), RAD(0), RAD(0)) * RIGHTSHOULDERC0, 0.15 / Animation_Speed)
1682
		LeftShoulder.C0 = Clerp(LeftShoulder.C0, CF(-1.5 * Player_Size, 0.5 * Player_Size, 0.5 * Player_Size) * ANGLES(RAD(90), RAD(0), RAD(0)) * LEFTSHOULDERC0, 0.15 / Animation_Speed)
1683
		RightHip.C0 = Clerp(RightHip.C0, CF(1 * Player_Size, -1 * Player_Size, -0 * Player_Size) * ANGLES(RAD(0), RAD(90), RAD(15)) * ANGLES(RAD(0), RAD(0), RAD(0)), 0.15 / Animation_Speed)
1684
		LeftHip.C0 = Clerp(LeftHip.C0, CF(-1 * Player_Size, -1 * Player_Size, -0 * Player_Size) * ANGLES(RAD(0), RAD(-90), RAD(-5)) * ANGLES(RAD(0), RAD(0), RAD(0)), 0.15 / Animation_Speed)
1685
	end
1686
	Rooted = true
1687
	local Animation_Speed2 = Animation_Speed/2
1688
	for i=0, 1, 0.1 / Animation_Speed2 do
1689
		Swait()
1690
		Rooted = true
1691
		RootJoint.C0 = Clerp(RootJoint.C0,ROOTC0 * CF(0 * Player_Size, -0.35 * Player_Size, 0 * Player_Size + 0.05 * COS(SINE / 12) * Player_Size) * ANGLES(RAD(5), RAD(0), RAD(0)), 0.15 / Animation_Speed2)
1692
		Neck.C0 = Clerp(Neck.C0, NECKC0 * CF(0 * Player_Size, 0 * Player_Size, 0 + ((1 * Player_Size) - 1)) * ANGLES(RAD(-5), RAD(0), RAD(0)), 0.15 / Animation_Speed2)
1693
		RightShoulder.C0 = Clerp(RightShoulder.C0, CF(1.5 * Player_Size, 0.5 * Player_Size, -0.5 * Player_Size) * ANGLES(RAD(90), RAD(0), RAD(0)) * RIGHTSHOULDERC0, 0.15 / Animation_Speed2)
1694
		LeftShoulder.C0 = Clerp(LeftShoulder.C0, CF(-1.5 * Player_Size, 0.5 * Player_Size, -0.5 * Player_Size) * ANGLES(RAD(90), RAD(0), RAD(0)) * LEFTSHOULDERC0, 0.15 / Animation_Speed2)
1695
		RightHip.C0 = Clerp(RightHip.C0, CF(1 * Player_Size, -1 * Player_Size, -0 * Player_Size) * ANGLES(RAD(0), RAD(90), RAD(-15)) * ANGLES(RAD(0), RAD(0), RAD(0)), 0.15 / Animation_Speed2)
1696
		LeftHip.C0 = Clerp(LeftHip.C0, CF(-1 * Player_Size, -1 * Player_Size, -0 * Player_Size) * ANGLES(RAD(0), RAD(-90), RAD(5)) * ANGLES(RAD(0), RAD(0), RAD(0)), 0.15 / Animation_Speed2)
1697
	end
1698
	CreateWave(0,4,true,0.2,45,RootPart,-5)
1699
	CreateWave(0,4.5,true,-0.2,40,RootPart,-5)
1700
	CreateWave(0,5,true,0.2,35,RootPart,-5)
1701
	CreateWave(0,5.5,true,-0.2,30,RootPart,-5)
1702
	CreateWave(0,6,true,0.2,25,RootPart,-5)
1703
	CreateSound("971126018", Torso, 2, 1)
1704
	coroutine.resume(coroutine.create(function()
1705
		local RayHit, RayPos = RayCast(Torso.Position, Vector3.new(0, -1, 0), (10000), {Character})
1706
		local SpawnPosition = RayPos
1707
		local floor = RayHit
1708
		local needcframe = RootPart.CFrame
1709
		local LastPosition = RootPart.Position
1710
		local Delay = 1
1711
		for i = 1, 6 do
1712
			local RayHit, RayPos = RayCast(LastPosition, needcframe.lookVector, 10, {workspace})
1713
			local End = RayPos
1714
			LastPosition = End
1715
			local locatepart = Instance.new("Part",Effects)
1716
			locatepart.Size = VT(0.5,0.5,0.5)
1717
			locatepart.Position = End
1718
			locatepart.CanCollide = false
1719
			locatepart.Anchored = true
1720
			locatepart.Transparency = 1
1721
				if SpawnPosition then
1722
					if i ~= 6 then
1723
						CreateSound("971125740", locatepart, 7, 1)
1724
						AoEDamage(End,15,25,30,15,false,5,3,false)
1725
						CreateWave(0,2.5,true,-0.05,25,locatepart,-2)
1726
						CreateWave(0,2,true,0.05,25,locatepart,-2)
1727
						CreateWave(0,1.5,true,-0.05,25,locatepart,-2)
1728
						CreateWave(0,1,true,0.05,25,locatepart,-2)
1729
					else
1730
						CreateRing(0,15,true,-0.2,35,locatepart,0,0.3,0.3)
1731
						CreateRing(0,12.5,true,0.2,35,locatepart,0,0.3,-0.3)
1732
						CreateRing(0,10,true,-0.2,35,locatepart,0,-0.3,0.3)
1733
						CreateRing(0,7.5,true,0.2,35,locatepart,0,-0.3,-0.3)
1734
						CreatePentagram(85,true,-0.05,75,CF(End),0)
1735
						CreateSound("971125740", locatepart, 7, 0.5)
1736
						AoEDamage(End,25,45,60,15,false,5,3,false)
1737
						CreateWave(0,6.5,true,-0.05,45,locatepart,-2)
1738
						CreateWave(0,6,true,0.05,45,locatepart,-2)
1739
						CreateWave(0,5.5,true,-0.05,45,locatepart,-2)
1740
						CreateWave(0,5,true,0.05,45,locatepart,-2)
1741
						local particle = particles(locatepart)
1742
						particle.Enabled = false
1743
						particle.Drag = 1
1744
						particle.Lifetime=NumberRange.new(2.35,2.35,2.35)
1745
						particle.Speed = NumberRange.new(25,25,25)
1746
						particle:Emit(250)
1747
					end
1748
				end
1749
			Swait(5)
1750
			game:GetService("Debris"):AddItem(locatepart, 5)
1751
		end
1752
	end))
1753
	Swait(50)
1754
	ATTACK = false
1755
	Rooted = false
1756
end
1757
1758
function ViolentRoar()
1759
	ATTACK = true
1760
	Rooted = true
1761
	for i=0, 2, 0.1 / Animation_Speed do
1762
		Swait()
1763
		RootJoint.C0 = Clerp(RootJoint.C0, ROOTC0 * CF(0 * Player_Size, 0 * Player_Size, -1.2 * Player_Size) * ANGLES(RAD(65), RAD(0), RAD(0)), 0.2 / Animation_Speed)
1764
		Neck.C0 = Clerp(Neck.C0, NECKC0 * CF(0 * Player_Size, 0 * Player_Size, 0 + ((1 * Player_Size) - 1)) * ANGLES(RAD(0), RAD(0), RAD(0)), 0.2 / Animation_Speed)
1765
		RightShoulder.C0 = Clerp(RightShoulder.C0, CF(1.5 * Player_Size, 0.5 * Player_Size, 0 * Player_Size) * ANGLES(RAD(-40), RAD(0), RAD(20)) * RIGHTSHOULDERC0, 0.2 / Animation_Speed)
1766
		LeftShoulder.C0 = Clerp(LeftShoulder.C0, CF(-1.5 * Player_Size, 0.5 * Player_Size, 0 * Player_Size) * ANGLES(RAD(-40), RAD(0), RAD(-20)) * LEFTSHOULDERC0, 0.2 / Animation_Speed)
1767
		RightHip.C0 = Clerp(RightHip.C0, CF(1 * Player_Size, -0.3 * Player_Size, -1 * Player_Size) * ANGLES(RAD(0), RAD(90), RAD(0)) * ANGLES(RAD(0), RAD(0), RAD(-20)), 0.2 / Animation_Speed*5)
1768
		LeftHip.C0 = Clerp(LeftHip.C0, CF(-1 * Player_Size, -0.3 * Player_Size, -1 * Player_Size) * ANGLES(RAD(0), RAD(-90), RAD(0)) * ANGLES(RAD(0), RAD(0), RAD(0)), 0.2 / Animation_Speed*5)
1769
	end
1770
	if Head ~= nil then
1771
	local roar = CreateSound("577131694", Head, 10, 1)
1772
		repeat
1773
			for i=0, 1.3, 0.1 / Animation_Speed do
1774
				Swait()
1775
				RootJoint.C0 = Clerp(RootJoint.C0,ROOTC0 * CF(0 * Player_Size, 0 * Player_Size, -0.2 * Player_Size) * ANGLES(RAD(-25), RAD(0), RAD(-15)), 0.15 / Animation_Speed)
1776
				Neck.C0 = Clerp(Neck.C0, NECKC0 * CF(0 * Player_Size, 0 * Player_Size, 0 + ((1 * Player_Size) - 1)) * ANGLES(RAD(-25), RAD(0), RAD(0)), 0.15 / Animation_Speed)
1777
				RightShoulder.C0 = Clerp(RightShoulder.C0, CF(1.5 * Player_Size, 0.5 * Player_Size, 0 * Player_Size) * ANGLES(RAD(0), RAD(0), RAD(70)) * RIGHTSHOULDERC0, 0.15 / Animation_Speed)
1778
				LeftShoulder.C0 = Clerp(LeftShoulder.C0, CF(-1.5 * Player_Size, 0.5 * Player_Size, 0 * Player_Size) * ANGLES(RAD(0), RAD(0), RAD(-120)) * LEFTSHOULDERC0, 0.15 / Animation_Speed)
1779
				RightHip.C0 = Clerp(RightHip.C0, CF(1 * Player_Size, -1 * Player_Size, -0 * Player_Size) * ANGLES(RAD(0), RAD(120), RAD(-35)) * ANGLES(RAD(0), RAD(0), RAD(0)), 0.15 / Animation_Speed)
1780
				LeftHip.C0 = Clerp(LeftHip.C0, CF(-1 * Player_Size, -1 * Player_Size, -0 * Player_Size) * ANGLES(RAD(0), RAD(-90), RAD(35)) * ANGLES(RAD(0), RAD(0), RAD(0)), 0.15 / Animation_Speed)
1781
			end
1782
			killnearest(Head.Position,25,25)
1783
			CreateRing(0,6,true,-0.2,35,Head,0,0.3,-0.3)
1784
			CreateRing(0,6,true,-0.2,35,Head,0,0.3,0.3)
1785
			CreateWave(0,5.5,true,0.05,45,RootPart,-4)
1786
			if roar.Playing == true then
1787
				for i=0, 1.3, 0.1 / Animation_Speed do
1788
					Swait()
1789
					RootJoint.C0 = Clerp(RootJoint.C0,ROOTC0 * CF(0 * Player_Size, 0 * Player_Size, -0.2 * Player_Size) * ANGLES(RAD(-25), RAD(0), RAD(15)), 0.15 / Animation_Speed)
1790
					Neck.C0 = Clerp(Neck.C0, NECKC0 * CF(0 * Player_Size, 0 * Player_Size, 0 + ((1 * Player_Size) - 1)) * ANGLES(RAD(-25), RAD(0), RAD(0)), 0.15 / Animation_Speed)
1791
					RightShoulder.C0 = Clerp(RightShoulder.C0, CF(1.5 * Player_Size, 0.5 * Player_Size, 0 * Player_Size) * ANGLES(RAD(0), RAD(0), RAD(120)) * RIGHTSHOULDERC0, 0.15 / Animation_Speed)
1792
					LeftShoulder.C0 = Clerp(LeftShoulder.C0, CF(-1.5 * Player_Size, 0.5 * Player_Size, 0 * Player_Size) * ANGLES(RAD(0), RAD(0), RAD(-70)) * LEFTSHOULDERC0, 0.15 / Animation_Speed)
1793
					RightHip.C0 = Clerp(RightHip.C0, CF(1 * Player_Size, -1 * Player_Size, -0 * Player_Size) * ANGLES(RAD(0), RAD(90), RAD(-35)) * ANGLES(RAD(0), RAD(0), RAD(0)), 0.15 / Animation_Speed)
1794
					LeftHip.C0 = Clerp(LeftHip.C0, CF(-1 * Player_Size, -1 * Player_Size, -0 * Player_Size) * ANGLES(RAD(0), RAD(-120), RAD(35)) * ANGLES(RAD(0), RAD(0), RAD(0)), 0.15 / Animation_Speed)
1795
				end
1796
				killnearest(Head.Position,25,25)
1797
				CreateRing(0,6,true,-0.2,35,Head,0,-0.3,-0.3)
1798
				CreateRing(0,6,true,-0.2,35,Head,0,-0.3,0.3)
1799
				CreateWave(0,5.5,true,-0.05,45,RootPart,-4)
1800
			end
1801
		until roar.Playing == false
1802
	end
1803
	Rooted = false
1804
	ATTACK = false
1805
end
1806
1807
function BulletsFromAbove()
1808
	HASJUMPED = true
1809
	--Rooted = true
1810
	for i=0, 2, 0.1 / Animation_Speed do
1811
		Swait()
1812
		RootJoint.C0 = Clerp(RootJoint.C0, ROOTC0 * CF(0 * Player_Size, 0 * Player_Size, -1.2 * Player_Size) * ANGLES(RAD(65), RAD(0), RAD(0)), 0.2 / Animation_Speed)
1813
		Neck.C0 = Clerp(Neck.C0, NECKC0 * CF(0 * Player_Size, 0 * Player_Size, 0 + ((1 * Player_Size) - 1)) * ANGLES(RAD(0), RAD(0), RAD(0)), 0.2 / Animation_Speed)
1814
		RightShoulder.C0 = Clerp(RightShoulder.C0, CF(1.5 * Player_Size, 0.5 * Player_Size, 0 * Player_Size) * ANGLES(RAD(-40), RAD(0), RAD(20)) * RIGHTSHOULDERC0, 0.2 / Animation_Speed)
1815
		LeftShoulder.C0 = Clerp(LeftShoulder.C0, CF(-1.5 * Player_Size, 0.5 * Player_Size, 0 * Player_Size) * ANGLES(RAD(-40), RAD(0), RAD(-20)) * LEFTSHOULDERC0, 0.2 / Animation_Speed)
1816
		RightHip.C0 = Clerp(RightHip.C0, CF(1 * Player_Size, -0.3 * Player_Size, -1 * Player_Size) * ANGLES(RAD(0), RAD(90), RAD(0)) * ANGLES(RAD(0), RAD(0), RAD(-20)), 0.2 / Animation_Speed)
1817
		LeftHip.C0 = Clerp(LeftHip.C0, CF(-1 * Player_Size, -0.3 * Player_Size, -1 * Player_Size) * ANGLES(RAD(0), RAD(-90), RAD(0)) * ANGLES(RAD(0), RAD(0), RAD(0)), 0.2 / Animation_Speed)
1818
	end
1819
	CreateSound("2767090", Torso, 5, MRANDOM(7, 12) / 10)
1820
	CreateWave(0,3.5,true,0.2,150,RootPart,-2)
1821
	CreateWave(0,5,true,-0.2,150,RootPart,-2)
1822
	local bv = Instance.new("BodyVelocity") 
1823
	bv.maxForce = Vector3.new(1e9, 1e9, 1e9)
1824
	bv.velocity = Vector3.new(0,300,0)
1825
	bv.Parent = Torso
1826
	bv.Name = "DASH"
1827
	--Rooted = false
1828
	game:GetService("Debris"):AddItem(bv, 0.5)
1829
	Swait(125)
1830
	ATTACK = true
1831
	Rooted = true
1832
	UNANCHOR = false
1833
	RootPart.Anchored = true
1834
	local BulletHolder = IT("Folder",Weapon)
1835
	BulletHolder.Name = "Bullets"
1836
	game:GetService("Debris"):AddItem(BulletHolder, 30)
1837
	for i=0, 5, 0.1 / Animation_Speed do
1838
		Swait()
1839
		Rooted = true
1840
		RootPart.CFrame = CF(RootPart.Position,Mouse.Hit.p)
1841
		RootJoint.C0 = Clerp(RootJoint.C0,ROOTC0 * CF(0 * Player_Size, 0.35 * Player_Size, 0 * Player_Size + 0.05 * COS(SINE / 12) * Player_Size) * ANGLES(RAD(-5), RAD(0), RAD(0)), 0.15 / Animation_Speed)
1842
		Neck.C0 = Clerp(Neck.C0, NECKC0 * CF(0 * Player_Size, 0 * Player_Size, 0 + ((1 * Player_Size) - 1)) * ANGLES(RAD(5), RAD(0), RAD(0)), 0.15 / Animation_Speed)
1843
		RightShoulder.C0 = Clerp(RightShoulder.C0, CF(1.5 * Player_Size, 0.5 * Player_Size, 0.5 * Player_Size) * ANGLES(RAD(0), RAD(0), RAD(90)) * RIGHTSHOULDERC0, 0.15 / Animation_Speed)
1844
		LeftShoulder.C0 = Clerp(LeftShoulder.C0, CF(-1.5 * Player_Size, 0.5 * Player_Size, 0.5 * Player_Size) * ANGLES(RAD(0), RAD(0), RAD(-90)) * LEFTSHOULDERC0, 0.15 / Animation_Speed)
1845
		RightHip.C0 = Clerp(RightHip.C0, CF(1 * Player_Size, -1 * Player_Size, -0 * Player_Size) * ANGLES(RAD(0), RAD(90), RAD(15)) * ANGLES(RAD(0), RAD(0), RAD(0)), 0.15 / Animation_Speed)
1846
		LeftHip.C0 = Clerp(LeftHip.C0, CF(-1 * Player_Size, -1 * Player_Size, -0 * Player_Size) * ANGLES(RAD(0), RAD(-90), RAD(-5)) * ANGLES(RAD(0), RAD(0), RAD(0)), 0.15 / Animation_Speed)
1847
	end
1848
	for i = 1 ,15 do
1849
		Swait()
1850
		RootPart.CFrame = CF(RootPart.Position,Mouse.Hit.p)
1851
	end
1852
	CreateSound("333476017", Torso, 10, 1)
1853
	for i = 1, 35 do
1854
		Swait()
1855
		RootPart.CFrame = CF(RootPart.Position,Mouse.Hit.p)
1856
		coroutine.resume(coroutine.create(function()
1857
			local gem = IT("Part",BulletHolder)
1858
			gem.Size = VT(0.2,0.2,0.2)
1859
			gem.CFrame = Torso.CFrame * CF(math.random(-25,25),math.random(-25,25),math.random(-25,25))
1860
			gem.Anchored = true
1861
			gem.Color = C3(170, 0, 170)
1862
			local e = particles(gem)
1863
			e.LockedToPart = false
1864
			local Cys = Instance.new("SpecialMesh", gem)
1865
  			Cys.MeshType = "FileMesh"
1866
  			Cys.MeshId = "rbxassetid://9756362"
1867
  			Cys.Scale = Vector3.new(2,2,2)
1868
		end))
1869
	end
1870
	local Animation_Speed2 = Animation_Speed/2
1871
	for i=0, 1, 0.1 / Animation_Speed2 do
1872
		Swait()
1873
		--RootPart.CFrame = CF(RootPart.Position,Mouse.Hit.p)
1874
		Rooted = true
1875
		RootJoint.C0 = Clerp(RootJoint.C0,ROOTC0 * CF(0 * Player_Size, -0.35 * Player_Size, 0 * Player_Size + 0.05 * COS(SINE / 12) * Player_Size) * ANGLES(RAD(5), RAD(0), RAD(0)), 0.15 / Animation_Speed2)
1876
		Neck.C0 = Clerp(Neck.C0, NECKC0 * CF(0 * Player_Size, 0 * Player_Size, 0 + ((1 * Player_Size) - 1)) * ANGLES(RAD(-5), RAD(0), RAD(0)), 0.15 / Animation_Speed2)
1877
		RightShoulder.C0 = Clerp(RightShoulder.C0, CF(1.5 * Player_Size, 0.5 * Player_Size, -0.5 * Player_Size) * ANGLES(RAD(90), RAD(0), RAD(0)) * RIGHTSHOULDERC0, 0.15 / Animation_Speed2)
1878
		LeftShoulder.C0 = Clerp(LeftShoulder.C0, CF(-1.5 * Player_Size, 0.5 * Player_Size, -0.5 * Player_Size) * ANGLES(RAD(90), RAD(0), RAD(0)) * LEFTSHOULDERC0, 0.15 / Animation_Speed2)
1879
		RightHip.C0 = Clerp(RightHip.C0, CF(1 * Player_Size, -1 * Player_Size, -0 * Player_Size) * ANGLES(RAD(0), RAD(90), RAD(-15)) * ANGLES(RAD(0), RAD(0), RAD(0)), 0.15 / Animation_Speed2)
1880
		LeftHip.C0 = Clerp(LeftHip.C0, CF(-1 * Player_Size, -1 * Player_Size, -0 * Player_Size) * ANGLES(RAD(0), RAD(-90), RAD(5)) * ANGLES(RAD(0), RAD(0), RAD(0)), 0.15 / Animation_Speed2)
1881
	end
1882
	CreateSound("318745457", Torso, 2, 1)
1883
	coroutine.resume(coroutine.create(function()
1884
		q = BulletHolder:GetChildren()
1885
		for i = 1, #q do
1886
			local bullet = q[i]
1887
			local bv = Instance.new("BodyVelocity") 
1888
			bv.maxForce = Vector3.new(1e9, 1e9, 1e9)
1889
			bv.velocity = RootPart.CFrame.lookVector * math.random(150,300)
1890
			bv.Parent = bullet
1891
			bv.Name = "DASH"
1892
			bullet.Anchored = false
1893
			local paw = bullet.Touched:Connect(function(hit)
1894
				if bullet.Reign.Enabled == true then
1895
					local cframe = bullet.CFrame
1896
					bullet.Anchored = true
1897
					bullet.Reign.Enabled = false
1898
					local particle = particles(bullet)
1899
					particle.Enabled = false
1900
					particle.Drag = 1
1901
					particle.Name = "poof"
1902
					particle.Lifetime=NumberRange.new(2.35,2.35,2.35)
1903
					particle.Speed = NumberRange.new(25,25,25)
1904
					particle:Emit(250)
1905
					CreateSound("438666196", bullet, 5, 1)
1906
					CreateRing(0,4,true,-0.2,35,bullet,0,0.3,-0.3)
1907
					CreateRing(0,4,true,-0.2,35,bullet,0,0.3,0.3)
1908
					CreateRing(0,6,true,-0.2,35,bullet,0,-0.3,0.3)
1909
					CreateRing(0,6,true,-0.2,35,bullet,0,-0.3,-0.3)
1910
					CreateWave(0,2.5,true,-0.05,25,bullet,-2)
1911
					CreateWave(0,2,true,0.05,25,bullet,-2)
1912
					CreateWave(0,1.5,true,-0.05,25,bullet,-2)
1913
					CreateWave(0,1,true,0.05,25,bullet,-2)
1914
					table.insert(Effects2,{bullet,"Block1",0.025,1,1,1,2})
1915
					AoEDamage(bullet.Position,25,25,30,15,false,5,3,false)
1916
				end
1917
			end) 
1918
		end
1919
	end))
1920
	for i = 1, 35 do
1921
		Swait()
1922
	end
1923
	UNANCHOR = true
1924
	RootPart.Anchored = false
1925
	Rooted = false
1926
	ATTACK = false
1927
		coroutine.resume(coroutine.create(function()
1928
			Swait(50)
1929
			HASJUMPED = false
1930
		end))
1931
end
1932
1933
function fromthedepths()
1934
	ATTACK = true
1935
	Rooted = true
1936
	for i=0, 2, 0.1 / Animation_Speed do
1937
		Swait()
1938
		turnto(Mouse.Hit.p)
1939
		RootJoint.C0 = Clerp(RootJoint.C0, ROOTC0 * CF(0 * Player_Size, 0 * Player_Size, -1.2 * Player_Size) * ANGLES(RAD(65), RAD(0), RAD(0)), 0.2 / Animation_Speed)
1940
		Neck.C0 = Clerp(Neck.C0, NECKC0 * CF(0 * Player_Size, 0 * Player_Size, 0 + ((1 * Player_Size) - 1)) * ANGLES(RAD(0), RAD(0), RAD(0)), 0.2 / Animation_Speed)
1941
		RightShoulder.C0 = Clerp(RightShoulder.C0, CF(1.5 * Player_Size, 0.5 * Player_Size, 0 * Player_Size) * ANGLES(RAD(-40), RAD(0), RAD(20)) * RIGHTSHOULDERC0, 0.2 / Animation_Speed)
1942
		LeftShoulder.C0 = Clerp(LeftShoulder.C0, CF(-1.5 * Player_Size, 0.5 * Player_Size, 0 * Player_Size) * ANGLES(RAD(-40), RAD(0), RAD(-20)) * LEFTSHOULDERC0, 0.2 / Animation_Speed)
1943
		RightHip.C0 = Clerp(RightHip.C0, CF(1 * Player_Size, -0.3 * Player_Size, -1 * Player_Size) * ANGLES(RAD(0), RAD(90), RAD(0)) * ANGLES(RAD(0), RAD(0), RAD(-20)), 0.2 / Animation_Speed)
1944
		LeftHip.C0 = Clerp(LeftHip.C0, CF(-1 * Player_Size, -0.3 * Player_Size, -1 * Player_Size) * ANGLES(RAD(0), RAD(-90), RAD(0)) * ANGLES(RAD(0), RAD(0), RAD(0)), 0.2 / Animation_Speed)
1945
	end
1946
	local sinkhole = IT("Part",Effects)
1947
	sinkhole.Size = VT(85,0,85)
1948
	sinkhole.CFrame = CF(Mouse.Hit.p)
1949
	sinkhole.Material = "Neon"
1950
	sinkhole.Color = C3(170, 0, 170)
1951
	sinkhole.Anchored = true
1952
	sinkhole.CanCollide = false
1953
	sinkhole.Transparency = 1
1954
	local decal = IT("Decal",sinkhole)
1955
	decal.Face = "Top"
1956
	decal.Texture = "http://www.roblox.com/asset/?id=177470914"
1957
	repeat
1958
		Swait()
1959
		turnto(Mouse.Hit.p)
1960
		sinkhole.CFrame = CF(Mouse.Hit.p)
1961
	until KEYHOLD == false
1962
		coroutine.resume(coroutine.create(function()
1963
			local soundeffect = IT("Sound",sinkhole)
1964
			soundeffect.SoundId = "rbxassetid://487186990"
1965
			soundeffect.Looped = true
1966
			soundeffect.Volume = 10
1967
			soundeffect.Playing = true
1968
			for i = 1, 450 do
1969
				AoEDamage(sinkhole.Position,15,666,666,15,false,0,0,false)
1970
				AoEDamage(sinkhole.Position,25,65,80,15,false,5,3,true)
1971
				AoEDamage(sinkhole.Position,45,45,60,15,false,5,3,true)
1972
				Swait()
1973
				CreateWave(0,8,true,0.05,45,sinkhole,-1)
1974
				CreateWave(0,8,true,-0.05,45,sinkhole,-1)
1975
				if i > 439 then
1976
					decal.Transparency = decal.Transparency + 0.1
1977
					soundeffect.Volume = soundeffect.Volume - 1
1978
				end
1979
			end
1980
			sinkhole:remove()
1981
		end))
1982
	for i=0, 3, 0.1 / Animation_Speed do
1983
		Swait()
1984
		RootJoint.C0 = Clerp(RootJoint.C0,ROOTC0 * CF(0 * Player_Size, 0 * Player_Size, -0.2 * Player_Size) * ANGLES(RAD(-25), RAD(0), RAD(0)), 0.15 / Animation_Speed)
1985
		Neck.C0 = Clerp(Neck.C0, NECKC0 * CF(0 * Player_Size, 0 * Player_Size, 0 + ((1 * Player_Size) - 1)) * ANGLES(RAD(-25), RAD(0), RAD(0)), 0.15 / Animation_Speed)
1986
		RightShoulder.C0 = Clerp(RightShoulder.C0, CF(1.5 * Player_Size, 0.5 * Player_Size, 0 * Player_Size) * ANGLES(RAD(90), RAD(0), RAD(0)) * RIGHTSHOULDERC0, 0.15 / Animation_Speed)
1987
		LeftShoulder.C0 = Clerp(LeftShoulder.C0, CF(-1.5 * Player_Size, 0.5 * Player_Size, 0 * Player_Size) * ANGLES(RAD(90), RAD(0), RAD(0)) * LEFTSHOULDERC0, 0.15 / Animation_Speed)
1988
		RightHip.C0 = Clerp(RightHip.C0, CF(1 * Player_Size, -1 * Player_Size, -0 * Player_Size) * ANGLES(RAD(0), RAD(90), RAD(-35)) * ANGLES(RAD(0), RAD(0), RAD(0)), 0.15 / Animation_Speed)
1989
		LeftHip.C0 = Clerp(LeftHip.C0, CF(-1 * Player_Size, -1 * Player_Size, -0 * Player_Size) * ANGLES(RAD(0), RAD(-90), RAD(35)) * ANGLES(RAD(0), RAD(0), RAD(0)), 0.15 / Animation_Speed)
1990
	end
1991
	Rooted = false
1992
	ATTACK = false
1993
end
1994
1995
function Warp()
1996
	ATTACK = true
1997
	CreateRing(0,2,true,-0.2,35,RootPart,0,0.3,0.3)
1998
	CreateRing(0,2.5,true,-0.2,35,RootPart,0,-0.3,0.3)
1999
	CreateRing(0,3,true,-0.2,35,RootPart,0,0.3,-0.3)
2000
	CreateRing(0,3.5,true,-0.2,35,RootPart,0,-0.3,-0.3)
2001
	local originalcframe = RootPart.CFrame
2002
	RootPart.CFrame = CF(VT(Mouse.Hit.p.X,Mouse.Hit.p.Y+(RootPart.Size.Y/2),Mouse.Hit.Z),originalcframe.p)
2003
	local penta = CreatePentagram(15,false,0,45,CF(RootPart.Position),-1)
2004
	CreateSound("3264923", penta, 2, 2)
2005
	ATTACK = false
2006
end
2007
2008
--//=================================\\
2009
--||	  ASSIGN THINGS TO KEYS
2010
--\\=================================//
2011
2012
function turnto(pos)
2013
	RootPart.CFrame = CF(RootPart.Position,VT(pos.X,RootPart.Position.Y,pos.Z))
2014
end
2015
2016
function MouseDown(Mouse)
2017
	if ATTACK == false and HASJUMPED == false and COMBO ~= "HALT" and Rooted == false then
2018
		HOLD = true
2019
		if ATTACK == false then
2020
			if COMBO == 1 then
2021
				COMBO = "HALT"
2022
				Attack1()
2023
			elseif COMBO == 2 then
2024
				COMBO = "HALT"
2025
				Attack2()
2026
			elseif COMBO == 3 then
2027
				COMBO = "HALT"
2028
				Attack3()
2029
			end
2030
			coroutine.resume(coroutine.create(function()
2031
				for i=1, 50 do
2032
					if ATTACK == false and COMBO ~= "HALT" then
2033
						Swait()
2034
					end
2035
				end
2036
				if ATTACK == false and COMBO ~= "HALT" then
2037
					COMBO = 1
2038
				end
2039
			end))
2040
		end
2041
	end
2042
end
2043
2044
function MouseUp(Mouse)
2045
HOLD = false
2046
end
2047
2048
function KeyDown(Key)
2049
	KEYHOLD = true
2050
	if Key == "e" and HASJUMPED == false and ATTACK == false then
2051
		Warp()
2052
	end
2053
	if Key == "g" and HASJUMPED == false and ATTACK == false then
2054
		fromthedepths()
2055
	end
2056
	if Key == "q" and HASJUMPED == false and ATTACK == false then
2057
		ViolentRoar()
2058
	end
2059
	if Key == "x" and HASJUMPED == false and ATTACK == false then
2060
		BulletsFromAbove()
2061
	end
2062
	if Key == "f" and HASJUMPED == false and ATTACK == false then
2063
		Sinnerwave()
2064
	end
2065
	if Key == "t" and ATTACK == false then
2066
		local taunt = CreateSound("907332670", Head, 10, 1)
2067
		local effect = IT("PitchShiftSoundEffect",taunt)
2068
		effect.Octave = 0.700
2069
	end
2070
end
2071
2072
function KeyUp(Key)
2073
	KEYHOLD = false
2074
end
2075
2076
	Mouse.Button1Down:connect(function(NEWKEY)
2077
		MouseDown(NEWKEY)
2078
	end)
2079
	Mouse.Button1Up:connect(function(NEWKEY)
2080
		MouseUp(NEWKEY)
2081
	end)
2082
	Mouse.KeyDown:connect(function(NEWKEY)
2083
		KeyDown(NEWKEY)
2084
	end)
2085
	Mouse.KeyUp:connect(function(NEWKEY)
2086
		KeyUp(NEWKEY)
2087
	end)
2088
2089
--//=================================\\
2090
--\\=================================//
2091
2092
2093
function unanchor()
2094
	if UNANCHOR == true then
2095
		g = Character:GetChildren()
2096
		for i = 1, #g do
2097
			if g[i].ClassName == "Part" then
2098
				g[i].Anchored = false
2099
			end
2100
		end
2101
	end
2102
end
2103
2104
2105
--//=================================\\
2106
--||	WRAP THE WHOLE SCRIPT UP
2107
--\\=================================//
2108
2109
local HITFLOOR = Raycast(RootPart.Position, (CF(RootPart.Position, RootPart.Position + VT(0, -1, 0))).lookVector, 4 * Player_Size, Character)
2110
2111
Humanoid.Changed:connect(function(Jump)
2112
	if Jump == "Jump" then
2113
		Humanoid.Jump = false
2114
		if HASJUMPED == false and HITFLOOR ~= nil and ATTACK == false and DISABLEJUMPING == false then
2115
			HASJUMPED = true
2116
			JumpUp()
2117
		end
2118
	end
2119
end)
2120
		Rooted = true
2121
		ANIMATE.Parent = nil
2122
		local IDLEANIMATION = Humanoid:LoadAnimation(ROBLOXIDLEANIMATION)
2123
		IDLEANIMATION:Play()
2124
		Swait()
2125
		Rooted = false
2126
2127
createbodypart("Eye","Magenta",Head,VT(0.25, 0, -0.65),VT(3,3,3))
2128
createbodypart("Eye","Magenta",Head,VT(-0.25, 0, -0.65),VT(3,3,3))
2129
createbodypart("Eye","Magenta",Head,VT(0, 0.2, -0.65),VT(5,5,3))
2130
2131
while true do
2132
	Swait()
2133
	SINE = SINE + CHANGE
2134
	local TORSOVELOCITY = (RootPart.Velocity * VT(1, 0, 1)).magnitude
2135
	local TORSOVERTICALVELOCITY = RootPart.Velocity.y
2136
	HITFLOOR = Raycast(RootPart.Position, (CF(RootPart.Position, RootPart.Position + VT(0, -1, 0))).lookVector, 4 * Player_Size, Character)
2137
	local LV = Torso.CFrame:pointToObjectSpace(Torso.Velocity - Torso.Position)
2138
	local WALKSPEEDVALUE = 24 / (Humanoid.WalkSpeed / 16)
2139
		if ANIM == "Walk" and ATTACK == false and TORSOVELOCITY > 1 then
2140
			RootJoint.C1 = Clerp(RootJoint.C1, ROOTC0 * CF(0, 0, -0.1 * COS(SINE / (WALKSPEEDVALUE / 2)) * Player_Size) * ANGLES(RAD(0), RAD(0) - RootPart.RotVelocity.Y / 75, RAD(0)), 0.2 * (Humanoid.WalkSpeed / 16) / Animation_Speed)
2141
			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)
2142
			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*2)
2143
			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*2)
2144
		elseif (ANIM ~= "Walk") or (TORSOVELOCITY < 1) then
2145
			RootJoint.C1 = Clerp(RootJoint.C1, ROOTC0 * CF(0, 0, 0) * ANGLES(RAD(0), RAD(0), RAD(0)), 0.2 / Animation_Speed)
2146
			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)
2147
			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*2)
2148
			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*2)
2149
		end
2150
		if TORSOVERTICALVELOCITY > 1 and HITFLOOR == nil then
2151
			ANIM = "Jump"
2152
			if ATTACK == false then
2153
				CreateWave(180,3,true,0,15,RootPart,-4)
2154
				RootJoint.C0 = Clerp(RootJoint.C0, ROOTC0 * CF(0 * Player_Size, 0 * Player_Size, 0 * Player_Size) * ANGLES(RAD(0), RAD(0), RAD(0)), 0.2 / Animation_Speed)
2155
				Neck.C0 = Clerp(Neck.C0, NECKC0 * CF(0 * Player_Size, 0 * Player_Size, 0 + ((1 * Player_Size) - 1)) * ANGLES(RAD(-20), RAD(0), RAD(0)), 0.2 / Animation_Speed)
2156
				RightShoulder.C0 = Clerp(RightShoulder.C0, CF(1.5 * Player_Size, 0.5 * Player_Size, 0 * Player_Size) * ANGLES(RAD(-40), RAD(0), RAD(20)) * RIGHTSHOULDERC0, 0.2 / Animation_Speed)
2157
				LeftShoulder.C0 = Clerp(LeftShoulder.C0, CF(-1.5 * Player_Size, 0.5 * Player_Size, 0 * Player_Size) * ANGLES(RAD(-40), RAD(0), RAD(-20)) * LEFTSHOULDERC0, 0.2 / Animation_Speed)
2158
				RightHip.C0 = Clerp(RightHip.C0, CF(1 * Player_Size, -1 * Player_Size, -0.3 * Player_Size) * ANGLES(RAD(0), RAD(90), RAD(0)) * ANGLES(RAD(-5), RAD(0), RAD(-20)), 0.2 / Animation_Speed)
2159
				LeftHip.C0 = Clerp(LeftHip.C0, CF(-1 * Player_Size, -1 * Player_Size, -0.3 * Player_Size) * ANGLES(RAD(0), RAD(-90), RAD(0)) * ANGLES(RAD(-5), RAD(0), RAD(20)), 0.2 / Animation_Speed)
2160
	        end
2161
		elseif TORSOVERTICALVELOCITY < -1 and HITFLOOR == nil and ATTACK == false then
2162
			ANIM = "Fall"
2163
			if ATTACK == false then
2164
				RootJoint.C0 = Clerp(RootJoint.C0, ROOTC0 * CF(0 * Player_Size, 0 * Player_Size, 0 * Player_Size) * ANGLES(RAD(0), RAD(0), RAD(0)), 0.2 / Animation_Speed)
2165
				Neck.C0 = Clerp(Neck.C0, NECKC0 * CF(0 * Player_Size, 0 * Player_Size, 0 + ((1 * Player_Size) - 1)) * ANGLES(RAD(20), RAD(0), RAD(0)), 0.2 / Animation_Speed)
2166
				RightShoulder.C0 = Clerp(RightShoulder.C0, CF(1.5 * Player_Size, 0.5 * Player_Size, 0 * Player_Size) * ANGLES(RAD(0), RAD(0), RAD(60)) * RIGHTSHOULDERC0, 0.2 / Animation_Speed)
2167
				LeftShoulder.C0 = Clerp(LeftShoulder.C0, CF(-1.5 * Player_Size, 0.5 * Player_Size, 0 * Player_Size) * ANGLES(RAD(0), RAD(0), RAD(-60)) * LEFTSHOULDERC0, 0.2 / Animation_Speed)
2168
				RightHip.C0 = Clerp(RightHip.C0, CF(1 * Player_Size, -1 * Player_Size, 0 * Player_Size) * ANGLES(RAD(0), RAD(90), RAD(0)) * ANGLES(RAD(0), RAD(0), RAD(20)), 0.2 / Animation_Speed)
2169
				LeftHip.C0 = Clerp(LeftHip.C0, CF(-1 * Player_Size, -1 * Player_Size, 0 * Player_Size) * ANGLES(RAD(0), RAD(-90), RAD(0)) * ANGLES(RAD(0), RAD(0), RAD(10)), 0.2 / Animation_Speed)
2170
			end
2171
		elseif TORSOVELOCITY < 1 and HITFLOOR ~= nil and ATTACK == false then
2172
			ANIM = "Idle"
2173
				RootJoint.C0 = Clerp(RootJoint.C0, ROOTC0 * CF(0 * Player_Size, 0 * Player_Size, -1 * Player_Size) * ANGLES(RAD(45), RAD(0), RAD(0)), 0.2 / Animation_Speed)
2174
				Neck.C0 = Clerp(Neck.C0, NECKC0 * CF(0 * Player_Size, 0 * Player_Size, 0 + ((1 * Player_Size) - 1)) * ANGLES(RAD(-35), RAD(0), RAD(0)), 0.2 / Animation_Speed)
2175
				--RightShoulder.C0 = Clerp(RightShoulder.C0, CF(0.25 * Player_Size, 0.5 * Player_Size, -1 * Player_Size) * ANGLES(RAD(70), RAD(0), RAD(-70)) * ANGLES(RAD(20), RAD(25), RAD(-15)) * RIGHTSHOULDERC0, 0.4 / Animation_Speed)
2176
				--LeftShoulder.C0 = Clerp(LeftShoulder.C0, CF(-1 * Player_Size, 0.2 * Player_Size, -0.5 * Player_Size) * ANGLES(RAD(25), RAD(0), RAD(55)) * LEFTSHOULDERC0, 0.4 / Animation_Speed)
2177
				RightShoulder.C0 = Clerp(RightShoulder.C0, CF(1.5 * Player_Size, 0.5 * Player_Size, 0 * Player_Size) * ANGLES(RAD(40), RAD(0), RAD(20)) * RIGHTSHOULDERC0, 0.2 / Animation_Speed)
2178
				LeftShoulder.C0 = Clerp(LeftShoulder.C0, CF(-1.5 * Player_Size, 0.5 * Player_Size, 0 * Player_Size) * ANGLES(RAD(40), RAD(0), RAD(-20)) * LEFTSHOULDERC0, 0.2 / Animation_Speed)
2179
				RightHip.C0 = Clerp(RightHip.C0, CF(1 * Player_Size, -0.3 * Player_Size, -1 * Player_Size) * ANGLES(RAD(0), RAD(90), RAD(0)) * ANGLES(RAD(0), RAD(0), RAD(-20)), 0.2 / Animation_Speed)
2180
				LeftHip.C0 = Clerp(LeftHip.C0, CF(-1 * Player_Size, -0.3 * Player_Size, 0 * Player_Size) * ANGLES(RAD(0), RAD(5), RAD(0)) * ANGLES(RAD(45), RAD(0), RAD(0)), 0.2 / Animation_Speed)
2181
		elseif TORSOVELOCITY > 1 and HITFLOOR ~= nil then
2182
			ANIM = "Walk"
2183
			WALK = WALK + 1 / Animation_Speed
2184
			if WALK >= 15 - (5 * (Humanoid.WalkSpeed / 16 / Player_Size)) then
2185
				WALK = 0
2186
				if WALKINGANIM == true then
2187
					WALKINGANIM = false
2188
				elseif WALKINGANIM == false then
2189
					WALKINGANIM = true
2190
				end
2191
			end
2192
			--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)
2193
			--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)
2194
			if ATTACK == false then
2195
				RootJoint.C0 = Clerp(RootJoint.C0,ROOTC0 * CF(0 * Player_Size, 0 * Player_Size, -0.5 * Player_Size + 0.05 * COS(SINE / 12) * Player_Size) * ANGLES(RAD(35), RAD(0), RAD(0)), 0.15 / Animation_Speed)
2196
				Neck.C0 = Clerp(Neck.C0, NECKC0 * CF(0 * Player_Size, 0 * Player_Size, 0 + ((1 * Player_Size) - 1)) * ANGLES(RAD(-25), RAD(0), RAD(0)), 0.15 / Animation_Speed)
2197
				RightShoulder.C0 = Clerp(RightShoulder.C0, CF(1.5 * Player_Size, 0.5 * Player_Size, 0 * Player_Size) * ANGLES(RAD(-20), RAD(0), RAD(20)) * RIGHTSHOULDERC0, 0.2 / Animation_Speed)
2198
				LeftShoulder.C0 = Clerp(LeftShoulder.C0, CF(-1.5 * Player_Size, 0.5 * Player_Size, 0 * Player_Size) * ANGLES(RAD(-20), RAD(0), RAD(-20)) * LEFTSHOULDERC0, 0.2 / Animation_Speed)
2199
				--RightShoulder.C0 = Clerp(RightShoulder.C0, CF(1.5 * Player_Size, 0.5 * Player_Size, 0 * Player_Size) * ANGLES(RAD(60 * COS(SINE / WALKSPEEDVALUE)), RAD(0), RAD(0)) * RIGHTSHOULDERC0, 0.15 / Animation_Speed)
2200
				--LeftShoulder.C0 = Clerp(LeftShoulder.C0, CF(-1.5 * Player_Size, 0.5 * Player_Size, 0 * Player_Size) * ANGLES(RAD(-60 * COS(SINE / WALKSPEEDVALUE)), RAD(0), RAD(0)) * LEFTSHOULDERC0, 0.15 / Animation_Speed)
2201
				RightHip.C0 = Clerp(RightHip.C0, CF(1 * Player_Size, -1 * Player_Size, -0 * Player_Size) * ANGLES(RAD(0), RAD(90), RAD(0)) * ANGLES(RAD(0), RAD(0), RAD(0)), 0.15 / Animation_Speed)
2202
				LeftHip.C0 = Clerp(LeftHip.C0, CF(-1 * Player_Size, -1 * Player_Size, -0 * Player_Size) * ANGLES(RAD(0), RAD(-90), RAD(0)) * ANGLES(RAD(0), RAD(0), RAD(0)), 0.15 / Animation_Speed)
2203
			end
2204
		end
2205
if #Effects2>0 then
2206
for e=1,#Effects2 do
2207
if Effects2[e]~=nil then
2208
local Thing=Effects2[e]
2209
if Thing~=nil then
2210
local Part=Thing[1]
2211
local Mode=Thing[2]
2212
local Delay=Thing[3]
2213
local IncX=Thing[4]
2214
local IncY=Thing[5]
2215
local IncZ=Thing[6]
2216
local Part2=Thing[8]
2217
if Thing[1].Transparency<=1 then
2218
if Thing[2]=="Block1" then
2219
Thing[1].CFrame=Thing[1].CFrame
2220
Mesh=Thing[1].Mesh
2221
Mesh.Scale=Mesh.Scale+VT(Thing[4],Thing[5],Thing[6])
2222
Thing[1].Transparency=Thing[1].Transparency+Thing[3]
2223
elseif Thing[2]=="Cylinder" then
2224
Mesh=Thing[1].Mesh
2225
Mesh.Scale=Mesh.Scale+VT(Thing[4],Thing[5],Thing[6])
2226
Thing[1].Transparency=Thing[1].Transparency+Thing[3]
2227
elseif Thing[2]=="Blood" then
2228
Mesh=Thing[7]
2229
Thing[1].CFrame=Thing[1].CFrame*CF(0,.5,0)
2230
Mesh.Scale=Mesh.Scale+VT(Thing[4],Thing[5],Thing[6])
2231
Thing[1].Transparency=Thing[1].Transparency+Thing[3]
2232
elseif Thing[2]=="Elec" then
2233
Mesh=Thing[1].Mesh
2234
Mesh.Scale=Mesh.Scale+VT(Thing[7],Thing[8],Thing[9])
2235
Thing[1].Transparency=Thing[1].Transparency+Thing[3]
2236
elseif Thing[2]=="Disappear" then
2237
Thing[1].Transparency=Thing[1].Transparency+Thing[3]
2238
end
2239
else
2240
Part.Parent=nil
2241
table.remove(Effects2,e)
2242
end
2243
end
2244
end
2245
end
2246
end
2247
if UNANCHOR == true then
2248
	unanchor()
2249
end
2250
Humanoid.MaxHealth = "inf"
2251
Humanoid.Health = "inf"
2252
if Rooted == false then
2253
	DISABLEJUMPING = false
2254
	if ANIM == "Fall" then
2255
		Humanoid.WalkSpeed = Speed*3
2256
	else
2257
		Humanoid.WalkSpeed = Speed
2258
	end
2259
elseif Rooted == true then
2260
	DISABLEJUMPING = true
2261
	Humanoid.WalkSpeed = 0
2262
end
2263
q = Character:GetChildren()
2264
for u = 1, #q do
2265
	if q[u].ClassName == "Accessory" or q[u].ClassName == "Hat" then
2266
		q[u]:remove()
2267
	elseif q[u].ClassName == "Shirt" then
2268
		q[u]:Destroy()
2269
	elseif q[u].ClassName == "Pants" then
2270
		q[u]:Destroy()
2271
	elseif q[u].ClassName == "CharacterMesh" then
2272
		q[u]:remove()
2273
	elseif q[u].ClassName == "ShirtGraphic" then
2274
		q[u]:remove()
2275
	elseif q[u].ClassName == "Part" and q[u].Name ~= "HumanoidRootPart" then
2276
		q[u].Color = Color3.new(0/255, 0/255, 0/255)
2277
	end
2278
end
2279
if Head:FindFirstChild("face") then
2280
	Head.face:remove()
2281
end
2282
end
2283
2284
--//=================================\\
2285
--\\=================================//
2286
2287
2288
2289
2290
2291
--//====================================================\\--
2292
--||			  		 END OF SCRIPT
2293
--\\====================================================//--