View difference between Paste ID: vDzMFSsp and js08jbV8
SHOW: | | - or go back to the newest paste.
1
--//====================================================\\--
2
--|| CREATED BY BRANNON1964802, EDITED BY SHACKLUSTER
3
              ALSO EDITED BY UNDENIABLEINFINITY
4
--\\====================================================//--
5
6
if script.Parent:FindFirstChild("Humanoid") then
7
Player = game.Players:FindFirstChild(script.Parent.Name)
8
elseif script.Parent.Name == "Torso" then
9
Player = game.Players:FindFirstChild(script.Parent.Parent.Name)
10
end
11
12
wait(1 / 60)
13
14
print("Local God-like user is "..Player.Name)
15
PlayerGui = Player.PlayerGui
16
Cam = workspace.CurrentCamera
17
Backpack = Player.Backpack
18
Character = Player.Character
19
char = Player.Character
20
Humanoid = Character.Humanoid
21
Mouse = Player:GetMouse()
22
RootPart = Character["HumanoidRootPart"]
23
Torso = Character["Torso"]
24
Head = Character["Head"]
25
RightArm = Character["Right Arm"]
26
LeftArm = Character["Left Arm"]
27
RightLeg = Character["Right Leg"]
28
LeftLeg = Character["Left Leg"]
29
RootJoint = RootPart["RootJoint"]
30
Neck = Torso["Neck"]
31
RightShoulder = Torso["Right Shoulder"]
32
LeftShoulder = Torso["Left Shoulder"]
33
RightHip = Torso["Right Hip"]
34
LeftHip = Torso["Left Hip"]
35
Humanoid.MaxHealth = "inf"
36
Humanoid.Health = "inf"
37
Humanoid.JumpPower = 100
38
39
----------------------------------------------------------------------
40
c = "White"
41
42
vt=Vector3.new
43
cf=CFrame.new
44
euler=CFrame.fromEulerAnglesXYZ
45
angles=CFrame.Angles
46
47
	function part(formfactor,parent,material,reflectance,transparency,brickcolor,name,size)
48
		local fp=Instance.new("Part")
49
		fp.formFactor=formfactor
50
		fp.Parent=parent
51
		fp.Reflectance=reflectance
52
		fp.Transparency=transparency
53
		fp.CanCollide=false
54
		fp.Locked=true
55
		fp.BrickColor=BrickColor.new(tostring(brickcolor))
56
		fp.Name=name
57
		fp.Size=size
58
		fp.Position=Character.Torso.Position
59
		fp.Material=material
60
		fp:BreakJoints()
61
		return fp
62
	end
63
64
	function mesh(Mesh,part,meshtype,meshid,offset,scale)
65
		local mesh=Instance.new(Mesh)
66
		mesh.Parent=part
67
		if Mesh=="SpecialMesh" then
68
			mesh.MeshType=meshtype
69
			mesh.MeshId=meshid
70
		end
71
		mesh.Offset=offset
72
		mesh.Scale=scale
73
		return mesh
74
	end
75
76
function BreakEffect(brickcolor,cframe,x1,y1,z1,Color)
77
local prt=part("Custom",workspace,"Neon",0,0,Color,"Effect",vt(0.5,0.5,0.5))
78
prt.Anchored=true
79
prt.CFrame=cframe*euler(math.random(-50,50),math.random(-50,50),math.random(-50,50))
80
local msh=mesh("SpecialMesh",prt,"Sphere","",vt(0,0,0),vt(x1,y1,z1))
81
coroutine.resume(coroutine.create(function(Part,CF,Numbb,randnumb) 
82
CF=Part.CFrame
83
Numbb=0
84
randnumb=math.random()-math.random()
85
for i=0,1,0.05 do
86
wait()
87
CF=CF*cf(0,1,0)
88
--Part.CFrame=Part.CFrame*euler(0.5,0,0)*cf(0,1,0)
89
Part.CFrame=CF*euler(Numbb,0,0)
90
Part.Transparency=i
91
Numbb=Numbb+randnumb
92
end
93
Part.Parent=nil
94
end),prt)
95
end
96
97
98
--------------------------------------------------------------------------------
99
100
101
Humanoid.DisplayDistanceType = "None"
102
if Character:FindFirstChild("Granted") == nil then
103
kkk = Instance.new("Sound",Character)
104
kkk.Volume = 4
105
kkk.PlaybackSpeed = 1
106-
kkk.SoundId = "rbxassetid://266792830"
106+
107
kkk.SoundId = "rbxassetid://757441191"
108
kkk:Play()
109
kkk.Name = "BackgroundMusic"
110
kkk.Looped = true
111
local naeeym2 = Instance.new("BillboardGui",Character)
112
naeeym2.AlwaysOnTop = true
113
naeeym2.Size = UDim2.new(0,100,0,40)
114
naeeym2.StudsOffset = Vector3.new(0,3,0)
115
naeeym2.Adornee = Character.Head
116
naeeym2.Name = "TalkingBillBoard"
117
local tecks2 = Instance.new("TextLabel",naeeym2)
118
tecks2.BackgroundTransparency = 1
119
tecks2.BorderSizePixel = 0
120
tecks2.Text = "Solstice, The One Above All"
121
tecks2.Font = "Bodoni"
122
tecks2.TextSize = 30
123
tecks2.TextStrokeTransparency = 0
124
tecks2.TextColor3 = Color3.new(0,0,0)
125
tecks2.TextStrokeColor3 = Color3.new(1,1,1)
126
tecks2.Size = UDim2.new(1,0,0.5,0)
127
tecks2.Parent = naeeym2
128
elseif Character:FindFirstChild("Granted") then
129
local naeeym2 = Instance.new("BillboardGui",Character)
130
naeeym2.AlwaysOnTop = true
131
naeeym2.Size = UDim2.new(0,100,0,40)
132
naeeym2.StudsOffset = Vector3.new(0,3,0)
133
naeeym2.Adornee = Character.Head
134
naeeym2.Name = "TalkingBillBoard"
135
local tecks2 = Instance.new("TextLabel",naeeym2)
136
tecks2.BackgroundTransparency = 1
137
tecks2.BorderSizePixel = 0
138
tecks2.Text = " " .. Character.Name
139
tecks2.Font = "Bodoni"
140
tecks2.TextSize = 30
141
tecks2.TextStrokeTransparency = 0
142
tecks2.TextColor3 = Color3.new(0,0,0)
143
tecks2.TextStrokeColor3 = Color3.new(1,1,1)
144
tecks2.Size = UDim2.new(1,0,0.5,0)
145
tecks2.Parent = naeeym2
146
end
147
148
IT = Instance.new
149
CF = CFrame.new
150
VT = Vector3.new
151
RAD = math.rad
152
C3 = Color3.new
153
UD2 = UDim2.new
154
BRICKC = BrickColor.new
155
ANGLES = CFrame.Angles
156
EULER = CFrame.fromEulerAnglesXYZ
157
COS = math.cos
158
ACOS = math.acos
159
SIN = math.sin
160
ASIN = math.asin
161
ABS = math.abs
162
MRANDOM = math.random
163
FLOOR = math.floor
164
165
166
167
168
169
--//=================================\\
170
--||		  CUSTOMIZATION
171
--\\=================================//
172
173
Class_Name = "Overpowers"
174
Weapon_Name = "God powers"
175
176
Custom_Colors = {
177
	Custom_Color_1 = BRICKC("Institutional white"); --1st color for the weapon.
178
	Custom_Color_2 = BRICKC("Institutional white"); --2nd color for the weapon.
179
180
	Custom_Color_3 = BRICKC("Institutional white"); --Color for the abilities.
181
	Custom_Color_4 = BRICKC("Institutional white"); --Color for the secondary bar.
182
	Custom_Color_5 = BRICKC("Institutional white"); --Color for the mana bar.
183
	Custom_Color_6 = BRICKC("Institutional white"); --Color for the health bar.
184
	Custom_Color_7 = BRICKC("Institutional white"); --Color for the stun bar.
185
186
	Custom_Color_8 = BRICKC("Institutional white"); --Background for the mana bar.
187
	Custom_Color_9 = BRICKC("Institutional white"); --Background for the secondary mana bar.
188
	Custom_Color_10 = BRICKC("Institutional white"); --Background for the stun bar.
189
	Custom_Color_11 = BRICKC("Institutional white"); --Background for the health bar.
190
	Custom_Color_12 = BRICKC("Institutional white"); --Background for the abilities.
191
}
192
193
Mana_Bar_Background_Transparency = 0 --Transparency for the background of the mana bar.
194
Secondary_Mana_Bar_Background_Transparency = 0 --Transparency for the background of the secondary mana bar.
195
Health_Bar_Background_Transparency = 0 --Transparency for the background of the health bar.
196
Stun_Bar_Background_Transparency = 0 --Transparency for the background of the stun bar.
197
Ability_Background_Transparency = 0  --Transparency for the background of the abilities.
198
Stat_Background_Transparency = 0 --Transparency for the background of the stats.
199
200
Player_Size = 1 --Size of the player.
201
Animation_Speed = 6
202
Frame_Speed = 1 / 60 -- (1 / 30) OR (1 / 60)
203
204
Enable_Gui = false --Enables or disables the Weapon Gui. Also functions as hiding or showing the Gui.
205
Enable_Stats = false --Enables or disables stats.
206
Put_Stats_In_Character = false --Places stats in Character.
207
Enable_Stagger_Hit = false --Enables or disables staggering when hitting a hitbox of some sort.
208
Play_Hitbox_Hit_Sound = true --Plays a hit sound when hitting a hitbox of some sort.
209
Enable_Stagger = false --Enables or disables staggering.
210
Enable_Stun = false --Enables or disables the stun mechanic.
211
Enable_Abilities = false --Enables abilites with cooldowns and mana costs.
212
Enable_Secondary_Bar = false --Enables the secondary mana bar, if true.
213
214
Start_Equipped = false --Starts the player equipped with their weapon.
215
Start_Equipped_With_Equipped_Animation = false --Used in conjunction with the above option. Starts your equip animation.
216
Can_Equip_Or_Unequip = true --Enables or disables the ability to unequip or equip your weapon.
217
Disable_Animator = true --Disables the Animator in the humanoid.
218
Disable_Animate = true --Disables the Animate script in the character.
219
Disable_Moving_Arms = false --Keeps the arms from moving around.
220
Use_Motors_Instead_Of_Welds = false --Uses motors instead of welds to disable moving arms.
221
Walkspeed_Depends_On_Movement_Value = false --Walkspeed depends on movement value. Self-explanatory.
222
Disable_Jump = false --Disables jumping.
223
Use_HopperBin = true --Uses a hopperbin to do things.
224
225
Cooldown_1 = 0 --Cooldowns for abilites.
226
Cooldown_2 = 0
227
Cooldown_3 = 0
228
Cooldown_4 = 0
229
Skill_1_Mana_Cost = 0 --How much mana is required to use the skill.
230
Skill_2_Mana_Cost = 0
231
Skill_3_Mana_Cost = 0
232
Skill_4_Mana_Cost = 0
233
Max_Mana = 0 --Maximum amount of mana you can have.
234
Max_Secondary_Mana = 0 --Maximum amount of secondary mana you can have.
235
Mana_Name = "Mana" --Name for the mana bar.
236
Secondary_Mana_Name = "Block" --Name for the secondary mana bar.
237
Max_Stun = 1 --Maximum amount of stun you can have.
238
Recover_Mana = 0 --How much mana you gain.
239
Mana_Regen_Mode = "1" --Basically switches from one mana regen system to another.
240
Secondary_Mana_Regen_Mode = "1" --Basically switches from one secondary mana regen system to another.
241
Stun_Lose_Mode = "1" --Basically switches from one secondary stun loss system to another.
242
Recover_Secondary_Mana = 0 --How much secondary mana you gain.
243
Lose_Stun = 0 --How much stun you lose.
244
Stun_Wait = 0 --Delay between losing stun.
245
Mana_Wait = 0 --Delay between gaining mana.
246
Secondary_Mana_Wait = 0 --Delay between gaining secondary mana.
247
Menu_Update_Speed = 0 --How fast the Weapon Gui will update.
248
Constant_Update = false --Removes the delay between updating the Weapon GUI.
249
Show_Stats = false --Hides or shows stats.
250
Stat_Offset = 0.74 --For cosmetic purposes. {0.74, 0.78}
251
252
--//=================================\\
253
--|| 	  END OF CUSTOMIZATION
254
--\\=================================//
255
256
257
258
259
260
--//=================================\\
261
--|| 	      USEFUL VALUES
262
--\\=================================//
263
264
local ROOTC0 = CF(0, 0, 0) * ANGLES(RAD(-90), RAD(0), RAD(180))
265
local NECKC0 = CF(0, 1, 0) * ANGLES(RAD(-90), RAD(0), RAD(180))
266
local RIGHTSHOULDERC0 = CF(-0.5, 0, 0) * ANGLES(RAD(0), RAD(90), RAD(0))
267
local LEFTSHOULDERC0 = CF(0.5, 0, 0) * ANGLES(RAD(0), RAD(-90), RAD(0))
268
local CO1 = 0
269
local CO2 = 0
270
local CO3 = 0
271
local CO4 = 0
272
local CHANGEDEFENSE = 0
273
local CHANGEDAMAGE = 0
274
local CHANGEMOVEMENT = 0
275
local ANIM = "Idle"
276
local ATTACK = false
277
local EQUIPPED = false
278
local HOLD = false
279
local COMBO = 1
280
local LASTPOINT = nil
281
local BLCF = nil
282
local SCFR = nil
283
local STAGGERHITANIM = false
284
local STAGGERANIM = false
285
local STUNANIM = false
286
local CRITCHANCENUMBER = 0
287
local IDLENUMBER = 0
288
local DONUMBER = 0
289
local HANDIDLE = false
290
local SINE = 0
291
local CHANGE = 2 / Animation_Speed
292
local WALKINGANIM = false
293
local WALK = 0
294
local DISABLEJUMPING = false
295
local HASBEENBLOCKED = false
296
local STUNDELAYNUMBER = 0
297
local MANADELAYNUMBER = 0
298
local SECONDARYMANADELAYNUMBER = 0
299
local ROBLOXIDLEANIMATION = IT("Animation")
300
ROBLOXIDLEANIMATION.Name = "Roblox Idle Animation"
301
ROBLOXIDLEANIMATION.AnimationId = "http://www.roblox.com/asset/?id=180435571"
302
--ROBLOXIDLEANIMATION.Parent = Humanoid
303
local WEAPONGUI = IT("ScreenGui", nil)
304
WEAPONGUI.Name = "Weapon GUI"
305
local WEAPONTOOL = IT("HopperBin", nil)
306
WEAPONTOOL.Name = Weapon_Name
307
local Weapon = IT("Model")
308
Weapon.Name = Weapon_Name
309
local Effects = IT("Folder", Weapon)
310
Effects.Name = "Effects"
311
local ANIMATOR = Humanoid.Animator
312
local ANIMATE = Character.Animate
313
local HITPLAYERSOUNDS = {--[["199149137", "199149186", "199149221", "199149235", "199149269", "199149297"--]]"263032172", "263032182", "263032200", "263032221", "263032252", "263033191"}
314
local HITARMORSOUNDS = {"199149321", "199149338", "199149367", "199149409", "199149452"}
315
local HITWEAPONSOUNDS = {"199148971", "199149025", "199149072", "199149109", "199149119"}
316
local HITBLOCKSOUNDS = {"199148933", "199148947"}
317
318
--//=================================\\
319
--\\=================================//
320
321
322
323
324
325
--//=================================\\
326
--||			  STATS
327
--\\=================================//
328
329
if Character:FindFirstChild("Stats") ~= nil then
330
Character:FindFirstChild("Stats").Parent = nil
331
end
332
333
local Stats = IT("Folder", nil)
334
Stats.Name = "Stats"
335
local ChangeStat = IT("Folder", Stats)
336
ChangeStat.Name = "ChangeStat"
337
local Defense = IT("NumberValue", Stats)
338
Defense.Name = "Defense"
339
Defense.Value = 1
340
local Movement = IT("NumberValue", Stats)
341
Movement.Name = "Movement"
342
Movement.Value = 1
343
local Damage = IT("NumberValue", Stats)
344
Damage.Name = "Damage"
345
Damage.Value = 1
346
local Mana = IT("NumberValue", Stats)
347
Mana.Name = "Mana"
348
Mana.Value = 0
349
local SecondaryMana = IT("NumberValue", Stats)
350
SecondaryMana.Name = "SecondaryMana"
351
SecondaryMana.Value = 0
352
local CanCrit = IT("BoolValue", Stats)
353
CanCrit.Name = "CanCrit"
354
CanCrit.Value = false
355
local CritChance = IT("NumberValue", Stats)
356
CritChance.Name = "CritChance"
357
CritChance.Value = 20
358
local CanPenetrateArmor = IT("BoolValue", Stats)
359
CanPenetrateArmor.Name = "CanPenetrateArmor"
360
CanPenetrateArmor.Value = false
361
local AntiTeamKill = IT("BoolValue", Stats)
362
AntiTeamKill.Name = "AntiTeamKill"
363
AntiTeamKill.Value = false
364
local Rooted = IT("BoolValue", Stats)
365
Rooted.Name = "Rooted"
366
Rooted.Value = false
367
local Block = IT("BoolValue", Stats)
368
Block.Name = "Block"
369
Block.Value = false
370
local RecentEnemy = IT("ObjectValue", Stats)
371
RecentEnemy.Name = "RecentEnemy"
372
RecentEnemy.Value = nil
373
local StaggerHit = IT("BoolValue", Stats)
374
StaggerHit.Name = "StaggerHit"
375
StaggerHit.Value = false
376
local Stagger = IT("BoolValue", Stats)
377
Stagger.Name = "Stagger"
378
Stagger.Value = false
379
local Stun = IT("BoolValue", Stats)
380
Stun.Name = "Stun"
381
Stun.Value = false
382
local StunValue = IT("NumberValue", Stats)
383
StunValue.Name = "StunValue"
384
StunValue.Value = 0
385
386
if Enable_Stats == true and Put_Stats_In_Character == true then
387
	Stats.Parent = Character
388
end
389
390
--//=================================\\
391
--\\=================================//
392
393
394
395
396
397
--//=================================\\
398
--|| 	     DEBUFFS / BUFFS
399
--\\=================================//
400
401
local DEFENSECHANGE1 = IT("NumberValue", ChangeStat)
402
DEFENSECHANGE1.Name = "ChangeDefense"
403
DEFENSECHANGE1.Value = 0
404
405
local MOVEMENTCHANGE1 = IT("NumberValue", nil)
406
MOVEMENTCHANGE1.Name = "ChangeMovement"
407
MOVEMENTCHANGE1.Value = 0
408
409
--//=================================\\
410
--\\=================================//
411
412
413
414
415
416
--//=================================\\
417
--|| SAZERENOS' ARTIFICIAL HEARTBEAT
418
--\\=================================//
419
420
ArtificialHB = Instance.new("BindableEvent", script)
421
ArtificialHB.Name = "ArtificialHB"
422
423
script:WaitForChild("ArtificialHB")
424
425
frame = Frame_Speed
426
tf = 0
427
allowframeloss = false
428
tossremainder = false
429
lastframe = tick()
430
script.ArtificialHB:Fire()
431
432
game:GetService("RunService").Heartbeat:connect(function(s, p)
433
	tf = tf + s
434
	if tf >= frame then
435
		if allowframeloss then
436
			script.ArtificialHB:Fire()
437
			lastframe = tick()
438
		else
439
			for i = 1, math.floor(tf / frame) do
440
				script.ArtificialHB:Fire()
441
			end
442
		lastframe = tick()
443
		end
444
		if tossremainder then
445
			tf = 0
446
		else
447
			tf = tf - frame * math.floor(tf / frame)
448
		end
449
	end
450
end)
451
452
--//=================================\\
453
--\\=================================//
454
455
456
457
458
459
--//=================================\\
460
--|| 	      SOME FUNCTIONS
461
--\\=================================//
462
463
function Raycast(POSITION, DIRECTION, RANGE, IGNOREDECENDANTS)
464
	return workspace:FindPartOnRay(Ray.new(POSITION, DIRECTION.unit * RANGE), IGNOREDECENDANTS)
465
end
466
467
function PositiveAngle(NUMBER)
468
	if NUMBER >= 0 then
469
		NUMBER = 0
470
	end
471
	return NUMBER
472
end
473
474
function NegativeAngle(NUMBER)
475
	if NUMBER <= 0 then
476
		NUMBER = 0
477
	end
478
	return NUMBER
479
end
480
481
function Swait(NUMBER)
482
	if NUMBER == 0 or NUMBER == nil then
483
		ArtificialHB.Event:wait()
484
	else
485
		for i = 1, NUMBER do
486
			ArtificialHB.Event:wait()
487
		end
488
	end
489
end
490
491
function QuaternionFromCFrame(cf)
492
	local mx, my, mz, m00, m01, m02, m10, m11, m12, m20, m21, m22 = cf:components()
493
	local trace = m00 + m11 + m22
494
	if trace > 0 then 
495
		local s = math.sqrt(1 + trace)
496
		local recip = 0.5 / s
497
		return (m21 - m12) * recip, (m02 - m20) * recip, (m10 - m01) * recip, s * 0.5
498
	else
499
		local i = 0
500
		if m11 > m00 then
501
			i = 1
502
		end
503
		if m22 > (i == 0 and m00 or m11) then
504
			i = 2
505
		end
506
		if i == 0 then
507
			local s = math.sqrt(m00 - m11 - m22 + 1)
508
			local recip = 0.5 / s
509
			return 0.5 * s, (m10 + m01) * recip, (m20 + m02) * recip, (m21 - m12) * recip
510
		elseif i == 1 then
511
			local s = math.sqrt(m11 - m22 - m00 + 1)
512
			local recip = 0.5 / s
513
			return (m01 + m10) * recip, 0.5 * s, (m21 + m12) * recip, (m02 - m20) * recip
514
		elseif i == 2 then
515
			local s = math.sqrt(m22 - m00 - m11 + 1)
516
			local recip = 0.5 / s return (m02 + m20) * recip, (m12 + m21) * recip, 0.5 * s, (m10 - m01) * recip
517
		end
518
	end
519
end
520
 
521
function QuaternionToCFrame(px, py, pz, x, y, z, w)
522
	local xs, ys, zs = x + x, y + y, z + z
523
	local wx, wy, wz = w * xs, w * ys, w * zs
524
	local xx = x * xs
525
	local xy = x * ys
526
	local xz = x * zs
527
	local yy = y * ys
528
	local yz = y * zs
529
	local zz = z * zs
530
	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))
531
end
532
 
533
function QuaternionSlerp(a, b, t)
534
	local cosTheta = a[1] * b[1] + a[2] * b[2] + a[3] * b[3] + a[4] * b[4]
535
	local startInterp, finishInterp;
536
	if cosTheta >= 0.0001 then
537
		if (1 - cosTheta) > 0.0001 then
538
			local theta = ACOS(cosTheta)
539
			local invSinTheta = 1 / SIN(theta)
540
			startInterp = SIN((1 - t) * theta) * invSinTheta
541
			finishInterp = SIN(t * theta) * invSinTheta
542
		else
543
			startInterp = 1 - t
544
			finishInterp = t
545
		end
546
	else
547
		if (1 + cosTheta) > 0.0001 then
548
			local theta = ACOS(-cosTheta)
549
			local invSinTheta = 1 / SIN(theta)
550
			startInterp = SIN((t - 1) * theta) * invSinTheta
551
			finishInterp = SIN(t * theta) * invSinTheta
552
		else
553
			startInterp = t - 1
554
			finishInterp = t
555
		end
556
	end
557
	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
558
end
559
560
function Clerp(a, b, t)
561
	local qa = {QuaternionFromCFrame(a)}
562
	local qb = {QuaternionFromCFrame(b)}
563
	local ax, ay, az = a.x, a.y, a.z
564
	local bx, by, bz = b.x, b.y, b.z
565
	local _t = 1 - t
566
	return QuaternionToCFrame(_t * ax + t * bx, _t * ay + t * by, _t * az + t * bz, QuaternionSlerp(qa, qb, t))
567
end
568
569
function CreateFrame(PARENT, TRANSPARENCY, BORDERSIZEPIXEL, POSITION, SIZE, COLOR, BORDERCOLOR, NAME)
570
	local frame = IT("Frame")
571
	frame.BackgroundTransparency = TRANSPARENCY
572
	frame.BorderSizePixel = BORDERSIZEPIXEL
573
	frame.Position = POSITION
574
	frame.Size = SIZE
575
	frame.BackgroundColor3 = COLOR
576
	frame.BorderColor3 = BORDERCOLOR
577
	frame.Name = NAME
578
	frame.Parent = PARENT
579
	return frame
580
end
581
582
function CreateLabel(PARENT, TEXT, TEXTCOLOR, TEXTFONTSIZE, TEXTFONT, TRANSPARENCY, BORDERSIZEPIXEL, STROKETRANSPARENCY, NAME)
583
	local label = IT("TextLabel")
584
	label.BackgroundTransparency = 1
585
	label.Size = UD2(1, 0, 1, 0)
586
	label.Position = UD2(0, 0, 0, 0)
587
	label.TextColor3 = C3(255, 255, 255)
588
	label.TextStrokeTransparency = STROKETRANSPARENCY
589
	label.TextTransparency = TRANSPARENCY
590
	label.FontSize = TEXTFONTSIZE
591
	label.Font = TEXTFONT
592
	label.BorderSizePixel = BORDERSIZEPIXEL
593
	label.TextScaled = true
594
	label.Text = TEXT
595
	label.Name = NAME
596
	label.Parent = PARENT
597
	return label
598
end
599
600
function NoOutlines(PART)
601
	PART.TopSurface, PART.BottomSurface, PART.LeftSurface, PART.RightSurface, PART.FrontSurface, PART.BackSurface = 10, 10, 10, 10, 10, 10
602
end
603
604
function CreatePart(FORMFACTOR, PARENT, MATERIAL, REFLECTANCE, TRANSPARENCY, BRICKCOLOR, NAME, SIZE)
605
	local NEWPART = IT("Part")
606
	NEWPART.formFactor = FORMFACTOR
607
	NEWPART.Reflectance = REFLECTANCE
608
	NEWPART.Transparency = TRANSPARENCY
609
	NEWPART.CanCollide = false
610
	NEWPART.Locked = true
611
	NEWPART.BrickColor = BRICKC(tostring(BRICKCOLOR))
612
	NEWPART.Name = NAME
613
	NEWPART.Size = SIZE
614
	NEWPART.Position = Torso.Position
615
	NoOutlines(NEWPART)
616
	NEWPART.Material = MATERIAL
617
	NEWPART:BreakJoints()
618
	NEWPART.Parent = PARENT
619
	return NEWPART
620
end
621
622
function CreateMesh(MESH, PARENT, MESHTYPE, MESHID, TEXTUREID, SCALE, OFFSET)
623
	local NEWMESH = IT(MESH)
624
	if MESH == "SpecialMesh" then
625
		NEWMESH.MeshType = MESHTYPE
626
		if MESHID ~= "nil" and MESHID ~= "" then
627
			NEWMESH.MeshId = "http://www.roblox.com/asset/?id="..MESHID
628
		end
629
	end
630
	NEWMESH.Offset = OFFSET or VT(0, 0, 0)
631
	NEWMESH.Scale = Vector3.new(1,1,1)
632
	NEWMESH.Parent = PARENT
633
    PARENT.Reflectance = 1
634
    PARENT.Transparency = 1
635
	return NEWMESH
636
end
637
638
function CreateWeldOrSnapOrMotor(TYPE, PARENT, PART0, PART1, C0, C1)
639
	local NEWWELD = IT(TYPE)
640
	NEWWELD.Part0 = PART0
641
	NEWWELD.Part1 = PART1
642
	NEWWELD.C0 = C0
643
	NEWWELD.C1 = C1
644
	NEWWELD.Parent = PARENT
645
	return NEWWELD
646
end
647
648
function CreateSound(ID, PARENT, VOLUME, PITCH)
649
	coroutine.resume(coroutine.create(function()
650
		local NEWSOUND = IT("Sound", PARENT)
651
		NEWSOUND.Volume = VOLUME
652
		NEWSOUND.Pitch = PITCH
653
		NEWSOUND.SoundId = "http://www.roblox.com/asset/?id="..ID
654
		Swait()
655
		NEWSOUND:play()
656
		game:GetService("Debris"):AddItem(NEWSOUND, 100)
657
	end))
658
end
659
660
function CFrameFromTopBack(at, top, back)
661
	local right = top:Cross(back)
662
	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)
663
end
664
665
function Lightning(POSITION1, POSITION2, MULTIPLIERTIME, LIGHTNINGDELAY, OFFSET, BRICKCOLOR, MATERIAL, SIZE, TRANSPARENCY, LASTINGTIME)
666
	local MAGNITUDE = (POSITION1 - POSITION2).magnitude 
667
	local CURRENTPOSITION = POSITION1
668
	local LIGHTNINGOFFSET = {-OFFSET, OFFSET}
669
	coroutine.resume(coroutine.create(function()
670
		for i = 1, MULTIPLIERTIME do 
671
			local LIGHTNINGPART = CreatePart(3, Effects, MATERIAL, 0, 0, BRICKCOLOR,"Effect", VT(SIZE * Player_Size, SIZE * Player_Size, MAGNITUDE / MULTIPLIERTIME))
672
			LIGHTNINGPART.Anchored = true
673
			local LIGHTNINGOFFSET2 = VT(LIGHTNINGOFFSET[MRANDOM(1, 2)], LIGHTNINGOFFSET[MRANDOM(1, 2)], LIGHTNINGOFFSET[MRANDOM(1, 2)]) 
674
			local LIGHTNINGPOSITION1 = CF(CURRENTPOSITION, POSITION2) * CF(0, 0, MAGNITUDE / MULTIPLIERTIME).p + LIGHTNINGOFFSET2
675
			if MULTIPLIERTIME == i then 
676
				local LIGHTNINGMAGNITUDE1 = (CURRENTPOSITION - POSITION2).magnitude
677
				LIGHTNINGPART.Size = VT(SIZE * Player_Size, SIZE * Player_Size, LIGHTNINGMAGNITUDE1)
678
				LIGHTNINGPART.CFrame = CF(CURRENTPOSITION, POSITION2) * CF(0, 0, -LIGHTNINGMAGNITUDE1 / 2)
679
			else
680
				LIGHTNINGPART.CFrame = CF(CURRENTPOSITION, LIGHTNINGPOSITION1) * CF(0, 0, MAGNITUDE / MULTIPLIERTIME / 2)
681
			end
682
			CURRENTPOSITION=LIGHTNINGPART.CFrame * CF(0, 0, MAGNITUDE / MULTIPLIERTIME / 2).p
683
			game.Debris:AddItem(LIGHTNINGPART, LASTINGTIME)
684
			coroutine.resume(coroutine.create(function()
685
				while LIGHTNINGPART.Transparency ~= 1 do
686
					--local StartTransparency = tra
687
					for i=0, 1, LASTINGTIME do
688
						Swait()
689
						LIGHTNINGPART.Transparency = LIGHTNINGPART.Transparency + (0.1 / LASTINGTIME)
690
					end
691
				end
692
			end))
693
		Swait(LIGHTNINGDELAY / Animation_Speed)
694
		end
695
	end))
696
end
697
698
function MagicBlock(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("BlockMesh", EFFECTPART, "", "", "", VT(X1 * Player_Size, Y1 * Player_Size, Z1 * Player_Size), OFFSET * Player_Size)
703
	game:GetService("Debris"):AddItem(EFFECTPART, 50)
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 MagicSphere(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, "Sphere", "", "", VT(X1 * Player_Size, Y1 * Player_Size, Z1 * Player_Size), 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.Scale = MESH.Scale + VT(X2 * Player_Size, Y2 * Player_Size, Z2 * Player_Size)
727
		end
728
		PART.Parent = nil
729
	end), EFFECTPART, EFFECTMESH)
730
end
731
732
function MagicCylinder(BRICKCOLOR, MATERIAL, CFRAME, ROTATION, OFFSET, X1, Y1, Z1, X2, Y2, Z2, delay)
733
	local EFFECTPART = CreatePart(3, Effects, MATERIAL, 0, 0, BRICKCOLOR, "Effect", VT())
734
	EFFECTPART.Anchored = true
735
	EFFECTPART.CFrame = CFRAME
736
	local EFFECTMESH = CreateMesh("CylinderMesh", EFFECTPART, "", "", "", VT(X1 * Player_Size, Y1 * Player_Size, Z1 * Player_Size), OFFSET * Player_Size)
737
	game:GetService("Debris"):AddItem(EFFECTPART, 10)
738
	coroutine.resume(coroutine.create(function(PART, MESH)
739
		for i = 0, 1, delay do
740
			Swait()
741
			PART.CFrame = PART.CFrame * ROTATION
742
			PART.Transparency = i
743
			MESH.Scale = MESH.Scale + VT(X2 * Player_Size, Y2 * Player_Size, Z2 * Player_Size)
744
		end
745
		PART.Parent = nil
746
	end), EFFECTPART, EFFECTMESH)
747
end
748
749
function MagicHead(BRICKCOLOR, MATERIAL, CFRAME, ROTATION, OFFSET, X1, Y1, Z1, X2, Y2, Z2, delay)
750
	local EFFECTPART = CreatePart(3, Effects, MATERIAL, 0, 0, BRICKCOLOR, "Effect", VT())
751
	EFFECTPART.Anchored = true
752
	EFFECTPART.CFrame = CFRAME
753
	local EFFECTMESH = CreateMesh("SpecialMesh", EFFECTPART, "Head", "", "", VT(X1 * Player_Size, Y1 * Player_Size, Z1 * Player_Size), OFFSET * Player_Size)
754
	game:GetService("Debris"):AddItem(EFFECTPART, 10)
755
	coroutine.resume(coroutine.create(function(PART, MESH)
756
		for i = 0, 1, delay do
757
			Swait()
758
			PART.CFrame = PART.CFrame * ROTATION
759
			PART.Transparency = i
760
			MESH.Scale = MESH.Scale + VT(X2 * Player_Size, Y2 * Player_Size, Z2 * Player_Size)
761
		end
762
		PART.Parent = nil
763
	end), EFFECTPART, EFFECTMESH)
764
end
765
766
function MagicRing(BRICKCOLOR, MATERIAL, CFRAME, ROTATION, OFFSET, X1, Y1, Z1, X2, Y2, Z2, delay)
767
	local EFFECTPART = CreatePart(3, Effects, MATERIAL, 0, 0, BRICKCOLOR, "Effect", VT())
768
	EFFECTPART.Anchored = true
769
	EFFECTPART.CFrame = CFRAME
770
	local EFFECTMESH = CreateMesh("SpecialMesh", EFFECTPART, "FileMesh", "3270017", "", VT(X1 * Player_Size, Y1 * Player_Size, Z1 * Player_Size), OFFSET * Player_Size)
771
	game:GetService("Debris"):AddItem(EFFECTPART, 10)
772
	coroutine.resume(coroutine.create(function(PART, MESH)
773
		for i = 0, 1, delay do
774
			Swait()
775
			PART.CFrame = PART.CFrame * ROTATION
776
			PART.Transparency = i
777
			MESH.Scale = MESH.Scale + VT(X2 * Player_Size, Y2 * Player_Size, Z2 * Player_Size)
778
		end
779
		PART.Parent = nil
780
	end), EFFECTPART, EFFECTMESH)
781
end
782
783
function MagicWave(BRICKCOLOR, MATERIAL, CFRAME, ROTATION, OFFSET, X1, Y1, Z1, X2, Y2, Z2, delay)
784
	local EFFECTPART = CreatePart(3, Effects, MATERIAL, 0, 0, BRICKCOLOR, "Effect", VT())
785
	EFFECTPART.Anchored = true
786
	EFFECTPART.CFrame = CFRAME
787
	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))
788
	game:GetService("Debris"):AddItem(EFFECTPART, 10)
789
	coroutine.resume(coroutine.create(function(PART, MESH)
790
		for i = 0, 1, delay do
791
			Swait()
792
			PART.CFrame = PART.CFrame * ROTATION
793
			PART.Transparency = i
794
			MESH.Offset = VT(0, 0, (-0.1 * MESH.Scale.Z))
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 MagicCrystal(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", "9756362", "", 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 MagicSwirl(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", "1051557", "", 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, 10, delay do
826
			Swait()
827
			PART.CFrame = PART.CFrame * Head.CFrame
828
			PART.Transparency = 0
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 MagicSharpCone(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", "1778999", "", 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 MagicFlatCone(BRICKCOLOR, MATERIAL, CFRAME, ROTATION, OFFSET, X1, Y1, Z1, X2, Y2, Z2, 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", "1033714", "", VT(X1 * Player_Size, Y1 * Player_Size, Z1 * Player_Size), OFFSET * Player_Size)
857
	game:GetService("Debris"):AddItem(EFFECTPART, 10)
858
	coroutine.resume(coroutine.create(function(PART, MESH)
859
		for i = 0, 1, delay do
860
			Swait()
861
			PART.CFrame = PART.CFrame * Vector3.new(0,0,0)
862
			PART.Transparency = i
863
			MESH.Scale = MESH.Scale + VT(X2 * Player_Size, Y2 * Player_Size, Z2 * Player_Size)
864
		end
865
		PART.Parent = nil
866
	end), EFFECTPART, EFFECTMESH)
867
end
868
869
function MagicSpikedCrown(BRICKCOLOR, MATERIAL, CFRAME, ROTATION, OFFSET, X1, Y1, Z1, X2, Y2, Z2, delay)
870
	local EFFECTPART = CreatePart(3, Effects, MATERIAL, 0, 0, BRICKCOLOR, "Effect", VT())
871
	EFFECTPART.Anchored = true
872
	EFFECTPART.CFrame = CFRAME
873
	local EFFECTMESH = CreateMesh("SpecialMesh", EFFECTPART, "FileMesh", "1323306", "", VT(X1 * Player_Size, Y1 * Player_Size, Z1 * Player_Size), OFFSET * Player_Size)
874
	game:GetService("Debris"):AddItem(EFFECTPART, 10)
875
	coroutine.resume(coroutine.create(function(PART, MESH)
876
		for i = 0, 1, delay do
877
			Swait()
878
			PART.CFrame = PART.CFrame * Head.CFrame
879
			PART.Transparency = i
880
			MESH.Scale = MESH.Scale + VT(X2 * Player_Size, Y2 * Player_Size, Z2 * Player_Size)
881
		end
882
		PART.Parent = nil
883
	end), EFFECTPART, EFFECTMESH)
884
end
885
886
function MagicFlatCrown(BRICKCOLOR, MATERIAL, CFRAME, ROTATION, OFFSET, X1, Y1, Z1, X2, Y2, Z2, delay)
887
	local EFFECTPART = CreatePart(3, Effects, MATERIAL, 0, 0, BRICKCOLOR, "Effect", VT())
888
	EFFECTPART.Anchored = true
889
	EFFECTPART.CFrame = CFRAME
890
	local EFFECTMESH = CreateMesh("SpecialMesh", EFFECTPART, "FileMesh", "1078075", "", VT(X1 * Player_Size, Y1 * Player_Size, Z1 * Player_Size), OFFSET * Player_Size)
891
	game:GetService("Debris"):AddItem(EFFECTPART, 10)
892
	coroutine.resume(coroutine.create(function(PART, MESH)
893
		for i = 0, 1, delay do
894
			Swait()
895
			PART.CFrame = PART.CFrame * ROTATION
896
			PART.Transparency = i
897
			MESH.Scale = MESH.Scale + VT(X2 * Player_Size, Y2 * Player_Size, Z2 * Player_Size)
898
		end
899
		PART.Parent = nil
900
	end), EFFECTPART, EFFECTMESH)
901
end
902
903
function MagicSkull(BRICKCOLOR, MATERIAL, CFRAME, ROTATION, OFFSET, X1, Y1, Z1, X2, Y2, Z2, delay)
904
	local EFFECTPART = CreatePart(3, Effects, MATERIAL, 0, 0, BRICKCOLOR, "Effect", VT())
905
	EFFECTPART.Anchored = true
906
	EFFECTPART.CFrame = CFRAME
907
	local EFFECTMESH = CreateMesh("SpecialMesh", EFFECTPART, "FileMesh", "4770583", "", VT(X1 * Player_Size, Y1 * Player_Size, Z1 * Player_Size), OFFSET * Player_Size)
908
	game:GetService("Debris"):AddItem(EFFECTPART, 10)
909
	coroutine.resume(coroutine.create(function(PART, MESH)
910
		for i = 0, 1, delay do
911
			Swait()
912
			PART.CFrame = PART.CFrame * ROTATION
913
			PART.Transparency = i
914
			MESH.Scale = MESH.Scale + VT(X2 * Player_Size, Y2 * Player_Size, Z2 * Player_Size)
915
		end
916
		PART.Parent = nil
917
	end), EFFECTPART, EFFECTMESH)
918
end
919
920
function ElectricEffect(BRICKCOLOR, MATERIAL, CFRAME, ROTATION, OFFSET, X, Y, Z, delay)
921
	local EFFECTPART = CreatePart(3, Effects, MATERIAL, 0, 0, BRICKCOLOR, "Effect", VT())
922
	EFFECTPART.Anchored = true
923
	EFFECTPART.CFrame = CFRAME
924
	local EFFECTMESH = CreateMesh("SpecialMesh", EFFECTPART, "FileMesh", "4770583", "", VT(X * Player_Size, Y * Player_Size, Z * Player_Size), OFFSET * Player_Size)
925
	game:GetService("Debris"):AddItem(EFFECTPART, 10)
926
	local XVALUE = MRANDOM()
927
	local YVALUE = MRANDOM()
928
	local ZVALUE = MRANDOM()
929
	coroutine.resume(coroutine.create(function(PART, MESH, THEXVALUE, THEYVALUE, THEZVALUE)
930
		for i = 0, 1, delay do
931
			Swait()
932
			PART.CFrame = PART.CFrame * ROTATION
933
			PART.Transparency = i
934
			THEXVALUE = THEXVALUE - 0.1 * (delay * 10)
935
			THEYVALUE = THEYVALUE - 0.1 * (delay * 10)
936
			THEZVALUE = THEZVALUE - 0.1 * (delay * 10)
937
			MESH.Scale = MESH.Scale + VT(THEXVALUE * Player_Size, THEYVALUE * Player_Size, THEZVALUE * Player_Size)
938
		end
939
		PART.Parent = nil
940
	end), EFFECTPART, EFFECTMESH, XVALUE, YVALUE, ZVALUE)
941
end
942
943
function TrailEffect(BRICKCOLOR, MATERIAL, CURRENTCFRAME, OLDCFRAME, MESHTYPE, REFLECTANCE, SIZE, ROTATION, X, Y, Z, delay)
944
	local MAGNITUDECFRAME = (CURRENTCFRAME.p - OLDCFRAME.p).magnitude
945
	if MAGNITUDECFRAME > (1 / 100) then
946
		local EFFECTPART = CreatePart(3, Effects, MATERIAL, 0, 0, BRICKCOLOR, "Effect", VT(1, MAGNITUDECFRAME, 1))
947
		EFFECTPART.Anchored = true
948
		EFFECTPART.CFrame = CF((CURRENTCFRAME.p + OLDCFRAME.p) / 2, OLDCFRAME.p) * ANGLES(RAD(90), 0, 0)
949
		local THEMESHTYPE = "BlockMesh"
950
		if MESHTYPE == "Cylinder" then
951
			THEMESHTYPE = "CylinderMesh"
952
		end
953
		local EFFECTMESH = CreateMesh(THEMESHTYPE, EFFECTPART, "", "", "", VT(0 + SIZE * Player_Size, 1, 0 + SIZE * Player_Size), VT(0, 0, 0))
954
		game:GetService("Debris"):AddItem(EFFECTPART, 10)
955
		coroutine.resume(coroutine.create(function(PART, MESH)
956
			for i = 0, 1, delay do
957
				Swait()
958
				PART.CFrame = PART.CFrame * ROTATION
959
				PART.Transparency = i
960
				MESH.Scale = MESH.Scale + VT(X * Player_Size, Y * Player_Size, Z * Player_Size)
961
			end
962
			PART.Parent = nil
963
		end), EFFECTPART, EFFECTMESH)
964
	end
965
end
966
967
function ClangEffect(BRICKCOLOR, MATERIAL, CFRAME, ANGLE, DURATION, SIZE, POWER, REFLECTANCE, X, Y, Z, delay)
968
	local EFFECTPART = CreatePart(3, Effects, MATERIAL, 0, 1, BRICKCOLOR, "Effect", VT())
969
	EFFECTPART.Anchored = true
970
	EFFECTPART.CFrame = CFRAME
971
	local EFFECTMESH = CreateMesh("BlockMesh", EFFECTPART, "", "", "", VT(0, 0, 0), VT(0, 0, 0))
972
	game:GetService("Debris"):AddItem(EFFECTPART, 10)
973
	local THELASTPOINT = CFRAME
974
	coroutine.resume(coroutine.create(function(PART)
975
		for i = 1, DURATION do
976
			Swait()
977
			PART.CFrame = PART.CFrame * ANGLES(RAD(ANGLE), 0, 0) * CF(0, POWER * Player_Size, 0)
978
			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)
979
			THELASTPOINT = PART.CFrame
980
		end
981
		PART.Parent = nil
982
	end), EFFECTPART)
983
end
984
985
--local list={}
986
function Triangle(Color, Material, a, b, c, delay)
987
	local edge1 = (c - a):Dot((b - a).unit)
988
	local edge2 = (a - b):Dot((c - b).unit)
989
	local edge3 = (b - c):Dot((a - c).unit)
990
	if edge1 <= (b - a).magnitude and edge1 >= 0 then
991
		a, b, c=a, b, c
992
	elseif edge2 <= (c - b).magnitude and edge2 >= 0 then
993
		a, b, c=b, c, a
994
	elseif edge3 <= (a - c).magnitude and edge3 >= 0 then
995
		a, b, c=c, a, b
996
	else
997
		assert(false, "unreachable")
998
	end
999
	local len1 = (c - a):Dot((b - a).unit)
1000
	local len2 = (b - a).magnitude - len1
1001
	local width = (a + (b - a).unit * len1 - c).magnitude
1002
	local maincf = CFrameFromTopBack(a, (b - a):Cross(c - b).unit, - (b - a).unit)
1003
	if len1 > 1 / 100 then
1004
		local sz = VT(0.2, width, len1)
1005
		local w1 = CreatePart(3, Effects, Material, 0, 0.5, Color, "Trail", sz)
1006
		local sp = CreateMesh("SpecialMesh", w1, "Wedge", "", "", VT(0, 1, 1) * sz / w1.Size, VT(0, 0, 0))
1007
		w1.Anchored = true
1008
		w1.CFrame = maincf * ANGLES(math.pi, 0, math.pi / 2) * CF(0, width / 2, len1 / 2)
1009
		coroutine.resume(coroutine.create(function()
1010
			for i = 0.5, 1, delay * (2 / Animation_Speed) do
1011
				Swait()
1012
				w1.Transparency = i
1013
			end
1014
			w1.Parent = nil
1015
		end))
1016
		game:GetService("Debris"):AddItem(w1, 10)
1017
		--table.insert(list, w1)
1018
	end
1019
	if len2 > 1 / 100 then
1020
		local sz = VT(0.2, width, len2)
1021
		local w2 = CreatePart(3, Effects, Material, 0, 0.5, Color, "Trail", sz)
1022
		local sp = CreateMesh("SpecialMesh", w2, "Wedge", "", "", VT(0, 1, 1) * sz / w2.Size, VT(0, 0, 0))
1023
		w2.Anchored = true
1024
		w2.CFrame = maincf * ANGLES(math.pi, math.pi, -math.pi / 2) * CF(0, width / 2, -len1 - len2 / 2)
1025
		coroutine.resume(coroutine.create(function()
1026
			for i = 0.5, 1, delay * (2 / Animation_Speed) do
1027
				Swait()
1028
				w2.Transparency = i
1029
			end
1030
			w2.Parent = nil
1031
		end))
1032
		game:GetService("Debris"):AddItem(w2, 10)
1033
		--table.insert(list, w2)
1034
	end
1035
	--return unpack(list)
1036
end
1037
1038
--[[Usage:
1039
	local Pos = Part
1040
	local Offset = Part.CFrame * CF(0, 0, 0)
1041
	local Color = "Institutional white"
1042
	local Material = "Neon"
1043
	local TheDelay = 0.01
1044
	local Height = 4
1045
	BLCF = Offset
1046
	if SCFR and (Pos.Position - SCFR.p).magnitude > 0.1 then
1047
		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)
1048
		if a then game:GetService("Debris"):AddItem(a, 1) end
1049
		if b then game:GetService("Debris"):AddItem(b, 1) end
1050
		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)
1051
		if a then game:GetService("Debris"):AddItem(a, 1) end
1052
		if b then game:GetService("Debris"):AddItem(b, 1) end
1053
		SCFR = BLCF
1054
	elseif not SCFR then
1055
		SCFR = BLCF
1056
	end
1057
--
1058
BLCF = nil
1059
SCFR = nil
1060
--]]
1061
1062
--//=================================\\
1063
--\\=================================//
1064
1065
1066
1067
	local function weldBetween(a, b)
1068
	    local weldd = Instance.new("ManualWeld")
1069
	    weldd.Part0 = a
1070
	    weldd.Part1 = b
1071
	    weldd.C0 = CFrame.new()
1072
	    weldd.C1 = b.CFrame:inverse() * a.CFrame
1073
	    weldd.Parent = a
1074
	    return weldd
1075
	end
1076
1077
1078
--//=================================\\
1079
--||	      RESIZE PLAYER
1080
--\\=================================//
1081
1082
if Player_Size ~= 1 then
1083
RootPart.Size = RootPart.Size * Player_Size
1084
Torso.Size = Torso.Size * Player_Size
1085
Head.Size = Head.Size * Player_Size
1086
RightArm.Size = RightArm.Size * Player_Size
1087
LeftArm.Size = LeftArm.Size * Player_Size
1088
RightLeg.Size = RightLeg.Size * Player_Size
1089
LeftLeg.Size = LeftLeg.Size * Player_Size
1090
RootJoint.Parent = RootPart
1091
Neck.Parent = Torso
1092
RightShoulder.Parent = Torso
1093
LeftShoulder.Parent = Torso
1094
RightHip.Parent = Torso
1095
LeftHip.Parent = Torso
1096
	
1097
RootJoint.C0 = ROOTC0 * CF(0 * Player_Size, 0 * Player_Size, 0 * Player_Size) * ANGLES(RAD(0), RAD(0), RAD(0))
1098
	RootJoint.C1 = ROOTC0 * CF(0 * Player_Size, 0 * Player_Size, 0 * Player_Size) * ANGLES(RAD(0), RAD(0), RAD(0))
1099
	Neck.C0 = NECKC0 * CF(0 * Player_Size, 0 * Player_Size, 0 + ((1 * Player_Size) - 1)) * ANGLES(RAD(0), RAD(0), RAD(0))
1100
	Neck.C1 = CF(0 * Player_Size, -0.5 * Player_Size, 0 * Player_Size) * ANGLES(RAD(-90), RAD(0), RAD(180))
1101
	RightShoulder.C0 = CF(1.5 * Player_Size, 0.5 * Player_Size, 0 * Player_Size) * ANGLES(RAD(0), RAD(0), RAD(0)) * RIGHTSHOULDERC0
1102
	LeftShoulder.C0 = CF(-1.5 * Player_Size, 0.5 * Player_Size, 0 * Player_Size) * ANGLES(RAD(0), RAD(0), RAD(0)) * LEFTSHOULDERC0
1103
	if Disable_Moving_Arms == false then
1104
		RightShoulder.C1 = ANGLES(0, RAD(90), 0) * CF(0 * Player_Size, 0.5 * Player_Size, -0.5)
1105
		LeftShoulder.C1 = ANGLES(0, RAD(-90), 0) * CF(0 * Player_Size, 0.5 * Player_Size, -0.5)
1106
	else
1107
		RightShoulder.C1 = CF(0 * Player_Size, 0.5 * Player_Size, 0 * Player_Size)
1108
		LeftShoulder.C1 = CF(0 * Player_Size, 0.5 * Player_Size, 0 * Player_Size)
1109
	end
1110
	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))
1111
	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))
1112
	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))
1113
	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))
1114
end
1115
1116
1117
--//=================================\\
1118
--\\=================================//
1119
1120
1121
1122
1123
1124
--//=================================\\
1125
--||	     WEAPON CREATION
1126
--\\=================================//
1127
1128
local HandlePart = CreatePart(3, Weapon, "SmoothPlastic", 0, 0, "Really black", "Handle", VT(0, 0, 0))
1129
local HandleMesh = CreateMesh("SpecialMesh", HandlePart, "FileMesh", "93180631", "93180676", VT(1, 1, 1), VT(0, 3.1 * Player_Size, 0))
1130
local HandleWeld = CreateWeldOrSnapOrMotor("Weld", HandlePart, Torso, HandlePart, CF(2 * Player_Size, 2 * Player_Size, 0.6 * Player_Size) * ANGLES(RAD(0), RAD(0), RAD(135)), CF(0, 0, 0))
1131
1132
local HitboxPart = CreatePart(3, Weapon, "SmoothPlastic", 0, 1, "Really black", "Hitbox", VT(0, 0, 0))
1133
local HitboxWeld = CreateWeldOrSnapOrMotor("Weld", HitboxPart, HandlePart, HitboxPart, CF(0 * Player_Size, 4 * Player_Size, 0 * Player_Size), CF(0, 0, 0))
1134
1135
local EffectPart = CreatePart(3, Weapon, "SmoothPlastic", 0, 1, "Really black", "Effect Part", VT(0, 0, 0))
1136
local EffectWeld = CreateWeldOrSnapOrMotor("Weld", EffectPart, HandlePart, EffectPart, CF(0 * Player_Size, 7 * Player_Size, 0 * Player_Size), CF(0, 0, 0))
1137
1138
if Player_Size ~= 1 then
1139
	for _, v in pairs (Weapon:GetChildren()) do
1140
		if v.ClassName == "Motor" or v.ClassName == "Weld" or v.ClassName == "Snap" then
1141
			local p1 = v.Part1
1142
			v.Part1 = nil
1143
			local cf1, cf2, cf3, cf4, cf5, cf6, cf7, cf8, cf9, cf10, cf11, cf12 = v.C1:components()
1144
			v.C1 = CF(cf1 * Player_Size, cf2 * Player_Size, cf3 * Player_Size, cf4, cf5, cf6, cf7, cf8, cf9, cf10, cf11, cf12)
1145
			v.Part1 = p1
1146
		elseif v.ClassName == "Part" then
1147
			for _, b in pairs (v:GetChildren()) do
1148
				if b.ClassName == "SpecialMesh" or b.ClassName == "BlockMesh" then
1149
					b.Scale = VT(b.Scale.x * Player_Size, b.Scale.y * Player_Size, b.Scale.z * Player_Size)
1150
				end
1151
			end
1152
		end
1153
	end
1154
end
1155
1156
for _, c in pairs(Weapon:GetChildren()) do
1157
	if c.ClassName == "Part" then
1158
		c.CustomPhysicalProperties = PhysicalProperties.new(0, 0, 0, 0, 0)
1159
	end
1160
end
1161
1162
if Start_Equipped == true and Start_Equipped_With_Equipped_Animation == false then
1163
	HandleWeld.Part0 = RightArm
1164
	HandleWeld.C0 = CF(0 * Player_Size, -1 * Player_Size, 0 * Player_Size) * ANGLES(RAD(0), RAD(0), RAD(0))
1165
end
1166
1167
Weapon.Parent = Character
1168
1169
Humanoid.Died:connect(function()
1170
	ATTACK = true
1171
end)
1172
1173
print(Class_Name.." loaded.")
1174
1175
--//=================================\\
1176
--\\=================================//
1177
1178
1179
1180
1181
1182
--//=================================\\
1183
--||	     DAMAGE FUNCTIONS
1184
--\\=================================//
1185
1186
function StatLabel(LABELTYPE, CFRAME, TEXT, COLOR)
1187
	local STATPART = CreatePart(3, Effects, "SmoothPlastic", 0, 1, "Really black", "Effect", VT())
1188
	STATPART.CFrame = CF(CFRAME.p + VT(0, 1.5, 0))
1189
	local BODYGYRO = IT("BodyGyro", STATPART)
1190
	local BODYPOSITION = IT("BodyPosition", STATPART)
1191
	BODYPOSITION.P = 2000
1192
	BODYPOSITION.D = 100
1193
	BODYPOSITION.maxForce = VT(math.huge, math.huge, math.huge)
1194
	if LABELTYPE == "Normal" then
1195
		BODYPOSITION.position = STATPART.Position + VT(MRANDOM(-2, 2), 6, MRANDOM(-2, 2))
1196
	elseif LABELTYPE == "Debuff" then
1197
		BODYPOSITION.position = STATPART.Position + VT(MRANDOM(-2, 2), 8, MRANDOM(-2, 2))
1198
	elseif LABELTYPE == "Interruption" then
1199
		BODYPOSITION.position = STATPART.Position + VT(MRANDOM(-2,2), 8, MRANDOM(-2, 2))
1200
	end
1201
	game:GetService("Debris"):AddItem(STATPART ,5)
1202
	local BILLBOARDGUI = Instance.new("BillboardGui", STATPART)
1203
	BILLBOARDGUI.Adornee = STATPART
1204
	BILLBOARDGUI.Size = UD2(2.5, 0, 2.5 ,0)
1205
	BILLBOARDGUI.StudsOffset = VT(-2, 2, 0)
1206
	BILLBOARDGUI.AlwaysOnTop = false
1207
	local TEXTLABEL = Instance.new("TextLabel", BILLBOARDGUI)
1208
	TEXTLABEL.BackgroundTransparency = 1
1209
	TEXTLABEL.Size = UD2(2.5, 0, 2.5, 0)
1210
	TEXTLABEL.Text = TEXT
1211
	TEXTLABEL.Font = "SourceSans"
1212
	TEXTLABEL.FontSize="Size42"
1213
	TEXTLABEL.TextColor3 = COLOR
1214
	TEXTLABEL.TextStrokeTransparency = 0
1215
	TEXTLABEL.TextScaled = true
1216
	TEXTLABEL.TextWrapped = true
1217
	coroutine.resume(coroutine.create(function(THEPART, THEBODYPOSITION, THETEXTLABEL)
1218
		wait(0.2)
1219
		for i=1, 5 do
1220
			wait()
1221
			THEBODYPOSITION.Position = THEPART.Position - VT(0, 0.5 ,0)
1222
		end
1223
		wait(1.2)
1224
		for i=1, 5 do
1225
			wait()
1226
			THETEXTLABEL.TextTransparency = THETEXTLABEL.TextTransparency + 0.2
1227
			THETEXTLABEL.TextStrokeTransparency = THETEXTLABEL.TextStrokeTransparency + 0.2
1228
			THEBODYPOSITION.position = THEPART.Position + VT(0, 0.5, 0)
1229
		end
1230
		THEPART.Parent = nil
1231
	end),STATPART, BODYPOSITION, TEXTLABEL)
1232
end
1233
1234
function IncreaseOrDecreaseStat(LOCATION, STAT, AMOUNT, DURATION, SHOWTHESTAT)
1235
	if LOCATION:FindFirstChild("Stats") ~= nil then
1236
		if LOCATION.Stats:FindFirstChild("Block") ~= nil then
1237
			if LOCATION.Stats:FindFirstChild("Block").Value == true then
1238
				return
1239
			end
1240
		end
1241
		if LOCATION.Stats:FindFirstChild("ChangeStat") ~= nil and LOCATION.Stats:FindFirstChild("Block").Value == false then
1242
			local NewStatChange = IT("NumberValue")
1243
			NewStatChange.Value = AMOUNT
1244
			if STAT == "Defense" then
1245
				NewStatChange.Name = "ChangeDefense"
1246
			elseif STAT == "Damage" then
1247
				NewStatChange.Name = "ChangeDamage"
1248
			elseif STAT == "Movement" then
1249
				NewStatChange.Name = "ChangeMovement"
1250
			end
1251
			if SHOWTHESTAT == true then
1252
				if AMOUNT < 0 then
1253
					StatLabel("Debuff", LOCATION.Head.CFrame * CF(0, 0 + (LOCATION.Head.Size.z - 1), 0), "-"..STAT, C3(1, 1, 1))
1254
				elseif AMOUNT > 0 then
1255
					StatLabel("Debuff", LOCATION.Head.CFrame * CF(0, 0 + (LOCATION.Head.Size.z - 1), 0), "+"..STAT, C3(1, 1, 1))
1256
				end
1257
			end
1258
			if DURATION ~= nil and DURATION ~= 0 then
1259
				local StatDuration = IT("NumberValue")
1260
				StatDuration.Name = "Duration"
1261
				StatDuration.Value = DURATION
1262
				StatDuration.Parent = NewStatChange
1263
			end
1264
			NewStatChange.Parent = LOCATION.Stats:FindFirstChild("ChangeStat")
1265
		end
1266
	end
1267
end
1268
1269
--Usage: DamageFunction(HITWEAPONSOUNDS[MRANDOM(1, #HITWEAPONSOUNDS)], HITARMORSOUNDS[MRANDOM(1, #HITARMORSOUNDS)], HITBLOCKSOUNDS[MRANDOM(1, #HITBLOCKSOUNDS)], HITPLAYERSOUNDS[MRANDOM(1, #HITPLAYERSOUNDS)], 1, 1, 1, 1, hit, false, 5, 10, MRANDOM(5, 10), "Normal", Part, 0.5, false, true, 1, MRANDOM(5, 10), nil, true, false, nil, 0, 0, false)
1270
function DamageFunction(HITWEAPONSOUND, HITARMORSOUND, HITBLOCKSOUND, HITPLAYERSOUND, HITWEAPONSOUNDPITCH, HITARMORSOUNDPITCH, HITBLOCKSOUNDPITCH, HITPLAYERSOUNDPITCH, HIT, HITEVENWHENDEAD, MINIMUMDAMAGE, MAXIMUMDAMAGE, KNOCKBACK, TYPE, PROPERTY, DELAY, KNOCKBACKTYPE, INCREASESTUN, STAGGER, STAGGERHIT, RANGED, DECREASETHESTAT, DECREASEAMOUNT, DECREASEDURATION, SHOWDECREASEDSTAT)
1271
	if HIT.Parent == nil then
1272
		return
1273
	end
1274
	local HITHUMANOID = HIT.Parent:FindFirstChild("Humanoid")
1275
	for _, v in pairs(HIT.Parent:GetChildren()) do
1276
		if v:IsA("Humanoid") then
1277
			HITHUMANOID = v
1278
		end
1279
	end
1280
	if HIT.Name == "Hitbox" and RANGED ~= true and HIT.Parent ~= Weapon and Enable_Stagger_Hit == true then
1281
		StaggerHit.Value = true
1282
		if Play_Hitbox_Hit_Sound == true then
1283
			if HITWEAPONSOUND ~= "" and HITWEAPONSOUND ~= "nil" then
1284
				CreateSound(HITWEAPONSOUND, HIT, 1, HITWEAPONSOUNDPITCH)
1285
			end
1286
		end
1287
		return
1288
	end
1289
	if HIT.Parent.Parent:FindFirstChild("Torso") ~= nil or HIT.Parent.Parent:FindFirstChild("UpperTorso") ~= nil then
1290
		HITHUMANOID = HIT.Parent.Parent:FindFirstChild("Humanoid")
1291
	end
1292
	if HIT.Parent.ClassName == "Hat" or HIT.ClassName == "Accessory" then
1293
		HIT = HIT.Parent.Parent:FindFirstChild("Head")
1294
	end
1295
	if HITHUMANOID ~= nil and HIT.Parent.Name ~= Character.Name and (HIT.Parent:FindFirstChild("Torso") ~= nil or HIT.Parent:FindFirstChild("UpperTorso") ~= nil) then
1296
		if HIT.Parent:FindFirstChild("DebounceHit") ~= nil then
1297
			if HIT.Parent.DebounceHit.Value == true then
1298
				return
1299
			end
1300
		end
1301
		if AntiTeamKill.Value == true then
1302
			if Player.Neutral == false and game.Players:GetPlayerFromCharacter(HIT.Parent) ~= nil then
1303
				if game.Players:GetPlayerFromCharacter(HIT.Parent).TeamColor == Player.TeamColor then
1304
					return
1305
				end
1306
			end
1307
		end
1308
		if HITEVENWHENDEAD == false then
1309
			if HIT.Parent:FindFirstChild("Humanoid") ~= nil then
1310
				if HIT.Parent:FindFirstChild("Humanoid").Health <= 0 then
1311
					return
1312
				end
1313
			end
1314
		end
1315
		if HIT.Parent:FindFirstChild("Stats") ~= nil then
1316
			if HIT.Parent.Stats:FindFirstChild("StunValue") ~= nil then
1317
				HIT.Parent.Stats:FindFirstChild("StunValue").Value = HIT.Parent.Stats:FindFirstChild("StunValue").Value + INCREASESTUN
1318
			end
1319
		end
1320
		if HIT.Parent:FindFirstChild("Stats") ~= nil then
1321
			if HIT.Parent.Stats:FindFirstChild("Stagger") ~= nil then
1322
				if STAGGER == true and Enable_Stagger == true then
1323
					HIT.Parent.Stats:FindFirstChild("Stagger").Value = true
1324
				end
1325
			end
1326
		end
1327
		if HIT.Parent:FindFirstChild("Stats") ~= nil then
1328
			if HIT.Parent.Stats:FindFirstChild("Block") ~= nil then
1329
				if HIT.Parent.Stats:FindFirstChild("Block").Value == true then
1330
					HASBEENBLOCKED = true
1331
					if HIT.Parent.Stats:FindFirstChild("Block"):FindFirstChild("BlockDebounce") == nil then
1332
						StatLabel("Interruption", HIT.Parent.Head.CFrame * CF(0, 0 + (HIT.Parent.Head.Size.z - 1), 0), "Blocked!", C3(0, 100 / 255, 255 / 255))
1333
						if RANGED ~= true then
1334
							if HITBLOCKSOUND ~= "" and HITBLOCKSOUND ~= "nil" then
1335
								CreateSound(HITBLOCKSOUND, HIT, 1, HITBLOCKSOUNDPITCH)
1336
							end
1337
						end
1338
						local BlockDebounce = IT("BoolValue", HIT.Parent.Stats:FindFirstChild("Block"))
1339
						BlockDebounce.Name = "BlockDebounce"
1340
						BlockDebounce.Value = true
1341
						if RANGED ~= true then
1342
							game:GetService("Debris"):AddItem(BlockDebounce, 0.5)
1343
						else
1344
							game:GetService("Debris"):AddItem(BlockDebounce, 0.1)
1345
						end
1346
					end
1347
					if RANGED ~= true and Enable_Stagger == true then
1348
						HIT.Parent.Stats:FindFirstChild("Block").Value = false
1349
						Stagger.Value = true
1350
					end
1351
					return
1352
				end
1353
			end
1354
		end
1355
		if DECREASETHESTAT ~= nil then
1356
			if HIT.Parent:FindFirstChild("Stats") ~= nil then
1357
				IncreaseOrDecreaseStat(HIT.Parent, DECREASETHESTAT, DECREASEAMOUNT, DECREASEDURATION, SHOWDECREASEDSTAT)
1358
			end
1359
		end
1360
		local DAMAGE = MRANDOM(MINIMUMDAMAGE,MAXIMUMDAMAGE) * Damage.Value
1361
		if HIT.Parent:FindFirstChild("Stats") ~= nil then
1362
			if HIT.Parent.Stats:FindFirstChild("Defense") ~= nil then
1363
				if CanPenetrateArmor.Value == true then
1364
					DAMAGE = DAMAGE
1365
				else
1366
					DAMAGE = DAMAGE / HIT.Parent.Stats:FindFirstChild("Defense").Value
1367
				end
1368
			elseif HIT.Parent.Stats:FindFirstChild("Defense") == nil then
1369
				DAMAGE = DAMAGE
1370
			end
1371
		end
1372
		if CanCrit.Value == true then
1373
			CRITCHANCENUMBER = MRANDOM(1, CritChance.Value)
1374
			if CRITCHANCENUMBER == 1 then
1375
				DAMAGE = DAMAGE * 2
1376
			end
1377
		end
1378
		DAMAGE = math.floor(DAMAGE)
1379
		if DAMAGE <= 3 and HASBEENBLOCKED == false then
1380
			if STAGGERHIT == true and Enable_Stagger_Hit == true and RANGED ~= true then
1381
				StaggerHit.Value = true
1382
			end
1383
			if HITARMORSOUND ~= "" and HITARMORSOUND ~= "nil" then
1384
			end
1385
		elseif DAMAGE > 3 and DAMAGE < 100 and HASBEENBLOCKED == false then
1386
			if HITPLAYERSOUND ~= "" and HITPLAYERSOUND ~= "nil" then
1387
			end
1388
		end
1389
		if DAMAGE > 3 and DAMAGE < 20 and HASBEENBLOCKED == false then
1390
            HITHUMANOID.MaxHealth = 100
1391
			HITHUMANOID.Health = HITHUMANOID.Health - DAMAGE
1392
			if CanCrit.Value == true and CRITCHANCENUMBER == 1 then
1393
				StatLabel("Normal", HIT.Parent.Head.CFrame * CF(0, 0 + (HIT.Parent.Head.Size.z - 1), 0), "Crit! \n"..DAMAGE, C3(200/255, 0, 0))
1394
			else
1395
				StatLabel("Normal", HIT.Parent.Head.CFrame * CF(0, 0 + (HIT.Parent.Head.Size.z - 1), 0), DAMAGE, C3(255/255, 220/255, 0))
1396
			end
1397
		elseif DAMAGE >= 20 and DAMAGE < 100 and HASBEENBLOCKED == false then
1398
            HITHUMANOID.MaxHealth = 100
1399
			HITHUMANOID.Health = HITHUMANOID.Health - DAMAGE
1400
			if CanCrit.Value == true and CRITCHANCENUMBER == 1 then
1401
				StatLabel("Normal", HIT.Parent.Head.CFrame * CF(0, 0 + (HIT.Parent.Head.Size.z - 1), 0), "Crit! \n"..DAMAGE, C3(200/255, 0, 0))
1402
			else
1403
				StatLabel("Normal", HIT.Parent.Head.CFrame * CF(0, 0 + (HIT.Parent.Head.Size.z - 1), 0), DAMAGE, C3(255/255, 0, 0))
1404
			end
1405
		elseif DAMAGE == 100 then
1406
                local part = Instance.new("Part")
1407
                part.Anchored = true
1408
                part.CanCollide = false
1409
                part.Transparency = 1
1410
                part.CFrame = HIT.CFrame
1411
                part.Parent = Effects
1412
                game:GetService("Debris"):AddItem(part, 5)
1413
                for i = 1, 15 do
1414
                BreakEffect(BrickColor.new("Black"),part.CFrame,0.5,math.random(5,20),0.5,BrickColor.new("Really red"))
1415
                end
1416
				CreateSound("215395073", part, 1, 1)
1417
				StatLabel("Normal", part.CFrame * CF(0, 0 + (HIT.Parent.Head.Size.z - 1), 0), "Erased", C3(225/255, 0/255, 0/255))
1418
            HIT.Parent:remove()
1419
		elseif DAMAGE == 0 then
1420
				CreateSound("260433557", HIT, 1, 1)
1421
				StatLabel("Normal", HIT.Parent.Head.CFrame * CF(0, 0 + (HIT.Parent.Head.Size.z - 1), 0), "Jammed", C3(0/255, 0/255, 0/255))
1422
            h = HIT.Parent:GetChildren()
1423
            for i = 1, #h do
1424
            if h[i].ClassName == "Part" then
1425
            h[i].Anchored = true
1426
            elseif h[i].ClassName == "Script" then
1427
            h[i]:Destroy()
1428
            end
1429
            end
1430
		elseif DAMAGE == 1 then
1431
				StatLabel("Normal", HIT.Parent.Head.CFrame * CF(0, 0 + (HIT.Parent.Head.Size.z - 1), 0), "Vitalized", C3(0/255, 255/255, 0/255))
1432
           HITHUMANOID.MaxHealth = "inf"
1433
           HITHUMANOID.Health = "inf"
1434
                for i = 1, 5 do
1435
                BreakEffect(BrickColor.new("Black"),HIT.CFrame,0.5,math.random(5,20),0.5,BrickColor.new("Lime green"))
1436
                end
1437
		elseif DAMAGE == 2 then
1438
           if game.Players:FindFirstChild(HIT.Parent.Name) then
1439
           local granted = script:Clone()
1440
           HITHUMANOID.MaxHealth = "inf"
1441
           HITHUMANOID.Health = "inf"
1442
           g = Instance.new("Folder")
1443
           g.Parent = HIT.Parent
1444
           g.Name = "Granted"
1445
           granted.Parent = HIT.Parent.Torso
1446
           granted.Disabled = false
1447
           CreateSound("3264923", HIT, 1, 1)
1448
           CreateSound("814168787", HIT, 1, 1)
1449
           end
1450
		end
1451
		if TYPE == "Normal" then
1452
			local vp = IT("BodyVelocity")
1453
			vp.P=500
1454
			vp.maxForce = VT(math.huge, 0, math.huge)
1455
			if KNOCKBACKTYPE == 1 then
1456
				vp.Velocity = PROPERTY.CFrame.lookVector * KNOCKBACK + PROPERTY.Velocity / 1.05
1457
			elseif KNOCKBACKTYPE == 2 then
1458
				vp.Velocity = PROPERTY.CFrame.lookVector * KNOCKBACK
1459
			end
1460
			if KNOCKBACK > 0 and HASBEENBLOCKED == false then
1461
				vp.Parent = HIT--.Parent.Torso
1462
			end
1463
			game:GetService("Debris"):AddItem(vp, 0.5)
1464
		end
1465
		HASBEENBLOCKED = false
1466
		RecentEnemy.Value = HIT.Parent
1467
		local DebounceHit = IT("BoolValue", HIT.Parent)
1468
		DebounceHit.Name = "DebounceHit"
1469
		DebounceHit.Value = true
1470
		game:GetService("Debris"):AddItem(DebounceHit, DELAY)
1471
	end
1472
end
1473
1474
--Usage: MagnitudeDamage(HITWEAPONSOUNDS[MRANDOM(1, #HITWEAPONSOUNDS)], HITARMORSOUNDS[MRANDOM(1, #HITARMORSOUNDS)], HITBLOCKSOUNDS[MRANDOM(1, #HITBLOCKSOUNDS)], HITPLAYERSOUNDS[MRANDOM(1, #HITPLAYERSOUNDS)], 1, 1, 1, 1, Part, 5, true, 5, 10, MRANDOM(5, 10), "Normal", Part, 0.5, false, true, 1, MRANDOM(5, 10), nil, true, false, nil, 0, 0, false)
1475
function MagnitudeDamage(HITWEAPONSOUND, HITARMORSOUND, HITBLOCKSOUND, HITPLAYERSOUND, HITWEAPONSOUNDPITCH, HITARMORSOUNDPITCH, HITBLOCKSOUNDPITCH, HITPLAYERSOUNDPITCH, PART, MAGNITUDE, HITEVENWHENDEAD, MINIMUMDAMAGE, MAXIMUMDAMAGE, KNOCKBACK, TYPE, PROPERTY, DELAY, KNOCKBACKTYPE, INCREASESTUN, STAGGER, STAGGERHIT, RANGED, MAGNITUDEDECREASETHESTAT, MAGNITUDEDECREASEAMOUNT, MAGNITUDEDECREASEDURATION, MAGNITUDESHOWDECREASEDSTAT)
1476
	for _, c in pairs(workspace:GetChildren()) do
1477
		local HUMANOID = c:FindFirstChild("Humanoid")
1478
		local HEAD = nil
1479
		if HUMANOID ~= nil then
1480
			for _, d in pairs(c:GetChildren()) do
1481
				if d.ClassName == "Model" and RANGED ~= true then
1482
					HEAD = d:FindFirstChild("Hitbox")
1483
					if HEAD ~= nil then
1484
						local THEMAGNITUDE = (HEAD.Position - PART.Position).magnitude
1485
						if THEMAGNITUDE <= (MAGNITUDE * Player_Size) and c.Name ~= Player.Name then
1486
							if Play_Hitbox_Hit_Sound == true then
1487
								local HitRefpart = CreatePart(3, Effects, "SmoothPlastic", 0, 1, "Really black", "Effect", VT())
1488
								HitRefpart.Anchored = true
1489
								HitRefpart.CFrame = CF(HEAD.Position)
1490
								CreateSound(HITWEAPONSOUND, HitRefpart, 1, HITWEAPONSOUNDPITCH)
1491
							end
1492
							if Enable_Stagger_Hit == true then
1493
								StaggerHit.Value = true
1494
							end
1495
						end
1496
					end
1497
				elseif d:IsA"BasePart" then
1498
					HEAD = d
1499
					if HEAD ~= nil then
1500
						local THEMAGNITUDE = (HEAD.Position - PART.Position).magnitude
1501
						if THEMAGNITUDE <= (MAGNITUDE * Player_Size) and c.Name ~= Player.Name then
1502
							DamageFunction(HITWEAPONSOUND, HITARMORSOUND, HITBLOCKSOUND, HITPLAYERSOUND, HITWEAPONSOUNDPITCH, HITARMORSOUNDPITCH, HITBLOCKSOUNDPITCH, HITPLAYERSOUNDPITCH, HEAD, HITEVENWHENDEAD, MINIMUMDAMAGE, MAXIMUMDAMAGE, KNOCKBACK, TYPE, PROPERTY, DELAY, KNOCKBACKTYPE, INCREASESTUN, STAGGER, STAGGERHIT, RANGED, MAGNITUDEDECREASETHESTAT, MAGNITUDEDECREASEAMOUNT, MAGNITUDEDECREASEDURATION, MAGNITUDESHOWDECREASEDSTAT)
1503
						end
1504
					end
1505
				end
1506
			end
1507
		end
1508
	end
1509
end
1510
1511
--Usage: MagnitudeBuffOrDebuff(Part, 5, "Defense", -0.1, 3, true, true)
1512
function MagnitudeBuffOrDebuff(PART, MAGNITUDE, STAT, AMOUNT, DURATION, SHOWBUFFORDEBUFF, APPLYTOOTHERSINSTEAD)
1513
	if Player.Neutral == true then
1514
		IncreaseOrDecreaseStat(Character, STAT, AMOUNT, DURATION, SHOWBUFFORDEBUFF)
1515
	end
1516
	for _, c in pairs(workspace:GetChildren()) do
1517
		local HUMANOID = c:FindFirstChild("Humanoid")
1518
		local THEHEAD = nil
1519
		if HUMANOID ~= nil then
1520
			if c:FindFirstChild("Torso") ~= nil then
1521
				THEHEAD = c:FindFirstChild("Torso")
1522
			elseif c:FindFirstChild("UpperTorso") ~= nil then
1523
				THEHEAD = c:FindFirstChild("UpperTorso")
1524
			end
1525
			if THEHEAD ~= nil then
1526
				local THEMAGNITUDE = (THEHEAD.Position - PART.Position).magnitude
1527
				print("yes 1")
1528
				if APPLYTOOTHERSINSTEAD == true then
1529
					if THEMAGNITUDE <= (MAGNITUDE * Player_Size) and c.Name ~= Player.Name then
1530
						if Player.Neutral == false and game.Players:GetPlayerFromCharacter(THEHEAD.Parent) ~= nil then
1531
							if game.Players:GetPlayerFromCharacter(THEHEAD.Parent).TeamColor == Player.TeamColor then
1532
								IncreaseOrDecreaseStat(THEHEAD.Parent, STAT, AMOUNT, DURATION, SHOWBUFFORDEBUFF)
1533
							end
1534
						end
1535
					end
1536
				elseif APPLYTOOTHERSINSTEAD == false then
1537
					if THEMAGNITUDE <= (MAGNITUDE * Player_Size) then
1538
						if Player.Neutral == false and game.Players:GetPlayerFromCharacter(THEHEAD.Parent) ~= nil then
1539
							if game.Players:GetPlayerFromCharacter(THEHEAD.Parent).TeamColor == Player.TeamColor then
1540
								IncreaseOrDecreaseStat(THEHEAD.Parent, STAT, AMOUNT, DURATION, SHOWBUFFORDEBUFF)
1541
							end
1542
						end
1543
					end
1544
				end
1545
			end
1546
		end
1547
	end
1548
end
1549
1550
--//=================================\\
1551
--\\=================================//
1552
1553
1554
1555
1556
1557
--//=================================\\
1558
--||			WEAPON GUI
1559
--\\=================================//
1560
1561
local MANABAR = CreateFrame(WEAPONGUI, Mana_Bar_Background_Transparency, 2, UD2(0.23, 0, 0.82, 0), UD2(0.26, 0, 0, 0), C3(Custom_Colors.Custom_Color_8.r, Custom_Colors.Custom_Color_8.g, Custom_Colors.Custom_Color_8.b), C3(0, 0, 0),"Mana Bar") 
1562
local MANACOVER = CreateFrame(MANABAR, 0, 2, UD2(0, 0, 0, 0), UD2(0, 0, 1, 0), C3(Custom_Colors.Custom_Color_5.r, Custom_Colors.Custom_Color_5.g, Custom_Colors.Custom_Color_5.b), C3(0, 0, 0),"Mana Cover")
1563
local MANATEXT = CreateLabel(MANABAR, Mana_Name.." ["..FLOOR(Mana.Value).."]", C3(1, 1, 1), "Size32", "Legacy", 1, 2, 1, "Mana Text")
1564
1565
local HEALTHBAR = CreateFrame(WEAPONGUI, Health_Bar_Background_Transparency, 2, UD2(0.5, 0, 0.82, 0), UD2(0.26, 0, 0, 0), C3(Custom_Colors.Custom_Color_11.r, Custom_Colors.Custom_Color_11.g, Custom_Colors.Custom_Color_11.b), C3(0, 0, 0), "Health Bar")
1566
local HEALTHCOVER = CreateFrame(HEALTHBAR, 0, 2,UD2(0, 0, 0, 0), UD2(0, 0, 1, 0), C3(Custom_Colors.Custom_Color_6.r, Custom_Colors.Custom_Color_6.g, Custom_Colors.Custom_Color_6.b), C3(0, 0, 0), "Health Cover")
1567
local HEALTHTEXT = CreateLabel(HEALTHBAR, "Health ["..FLOOR(Humanoid.Health).."]", C3(1, 1, 1), "Size32", "Legacy", 1, 2, 1, "Health Text")
1568
1569
local STUNFRAME = CreateFrame(nil, Stun_Bar_Background_Transparency, 2, UD2(0.5, 0, 0.78, 0),UD2(0.26, 0, 0, 0),C3(Custom_Colors.Custom_Color_10.r, Custom_Colors.Custom_Color_10.g, Custom_Colors.Custom_Color_10.b), C3(0, 0, 0), "Stun Frame")
1570
local STUNBAR = CreateFrame(STUNFRAME, 0, 2, UD2(0, 0, 0, 0),UD2(0, 0, 1, 0),C3(Custom_Colors.Custom_Color_7.r, Custom_Colors.Custom_Color_7.g, Custom_Colors.Custom_Color_7.b), C3(0, 0, 0), "Stun Bar")
1571
local STUNTEXT = CreateLabel(STUNFRAME, "Stun ["..FLOOR(StunValue.Value).."]", C3(1, 1, 1), "Size32", "Legacy", 1, 2, 1, "Stun Text")
1572
1573
local SECONDARYMANABAR = CreateFrame(nil, Secondary_Mana_Bar_Background_Transparency, 2, UD2(0.23, 0, 0.78, 0), UD2(0.26, 0, 0, 0), C3(Custom_Colors.Custom_Color_9.r, Custom_Colors.Custom_Color_9.g, Custom_Colors.Custom_Color_9.b), C3(0, 0, 0),"Secondary Mana Bar") 
1574
local SECONDARYMANACOVER = CreateFrame(SECONDARYMANABAR, 0, 2, UD2(0, 0, 0, 0), UD2(0, 0, 1, 0), C3(Custom_Colors.Custom_Color_4.r, Custom_Colors.Custom_Color_4.g, Custom_Colors.Custom_Color_4.b), C3(0, 0, 0),"Secondary Mana Cover")
1575
local SECONDARYMANATEXT = CreateLabel(SECONDARYMANABAR, Secondary_Mana_Name.." ["..FLOOR(SecondaryMana.Value).."]", C3(1, 1, 1), "Size32", "Legacy", 1, 2, 1, "Secondary Mana Text")
1576
1577
local DEFENSEFRAME = CreateFrame(nil, Stat_Background_Transparency, 2, UD2(0.23, 0, Stat_Offset, 0), UD2(0.075, 0, 0, 0), C3(100 / 255, 100 / 255, 255 / 255), C3(0, 0, 0),"Defense Frame")
1578
local DEFENSETEXT = CreateLabel(DEFENSEFRAME, "Defense ["..(Defense.Value * 100).."%]", C3(1, 1, 1), "Size32", "Legacy", 1, 2, 1, "Defense Text")
1579
1580
local DAMAGEFRAME = CreateFrame(nil, Stat_Background_Transparency, 2, UD2(0.456, 0, Stat_Offset, 0), UD2(0.075, 0, 0, 0), C3(255 / 255, 100 / 255, 100 / 255), C3(0, 0, 0),"Damage Frame")
1581
local DAMAGETEXT = CreateLabel(DAMAGEFRAME, "Damage ["..(Damage.Value * 100).."%]", C3(1, 1, 1), "Size32", "Legacy", 1, 2, 1, "Damage Text")
1582
1583
local MOVEMENTFRAME = CreateFrame(nil, Stat_Background_Transparency, 2, UD2(0.685, 0, Stat_Offset, 0), UD2(0.075, 0, 0, 0), C3(100 / 255, 255 / 255, 100 / 255), C3(0, 0, 0),"Movement Frame")
1584
local MOVEMENTTEXT = CreateLabel(MOVEMENTFRAME, "Movement ["..(Movement.Value * 100).."%]", C3(1, 1, 1), "Size32", "Legacy", 1, 2, 1, "Movement Text")
1585
1586
local SKILL1FRAME = CreateFrame(nil, Ability_Background_Transparency, 2, UD2(0.23, 0, 0.86, 0), UD2(0.26, 0, 0, 0), C3(Custom_Colors.Custom_Color_12.r, Custom_Colors.Custom_Color_12.g, Custom_Colors.Custom_Color_12.b), C3(0, 0, 0), "Skill 1 Frame")
1587
local SKILL2FRAME = CreateFrame(nil, Ability_Background_Transparency, 2, UD2(0.50, 0, 0.86, 0), UD2(0.26, 0, 0, 0), C3(Custom_Colors.Custom_Color_12.r, Custom_Colors.Custom_Color_12.g, Custom_Colors.Custom_Color_12.b), C3(0, 0, 0), "Skill 2 Frame")
1588
local SKILL3FRAME = CreateFrame(nil, Ability_Background_Transparency, 2, UD2(0.23, 0, 0.93, 0), UD2(0.26, 0, 0, 0), C3(Custom_Colors.Custom_Color_12.r, Custom_Colors.Custom_Color_12.g, Custom_Colors.Custom_Color_12.b), C3(0, 0, 0), "Skill 3 Frame")
1589
local SKILL4FRAME = CreateFrame(nil, Ability_Background_Transparency, 2, UD2(0.50, 0, 0.93, 0), UD2(0.26, 0, 0, 0), C3(Custom_Colors.Custom_Color_12.r, Custom_Colors.Custom_Color_12.g, Custom_Colors.Custom_Color_12.b), C3(0, 0, 0), "Skill 4 Frame")
1590
1591
local SKILL1BAR = CreateFrame(SKILL1FRAME, 0, 2, UD2(0, 0, 0, 0), UD2(0, 0, 1, 0), C3(Custom_Colors.Custom_Color_3.r, Custom_Colors.Custom_Color_3.g, Custom_Colors.Custom_Color_3.b), C3(0, 0, 0), "Skill 1 Bar")
1592
local SKILL2BAR = CreateFrame(SKILL2FRAME, 0, 2, UD2(0, 0, 0, 0), UD2(0, 0, 1, 0), C3(Custom_Colors.Custom_Color_3.r, Custom_Colors.Custom_Color_3.g, Custom_Colors.Custom_Color_3.b), C3(0, 0, 0), "Skill 2 Bar")
1593
local SKILL3BAR = CreateFrame(SKILL3FRAME, 0, 2, UD2(0, 0, 0, 0), UD2(0, 0, 1, 0), C3(Custom_Colors.Custom_Color_3.r, Custom_Colors.Custom_Color_3.g, Custom_Colors.Custom_Color_3.b), C3(0, 0, 0), "Skill 3 Bar")
1594
local SKILL4BAR = CreateFrame(SKILL4FRAME, 0, 2, UD2(0, 0, 0, 0), UD2(0, 0, 1, 0), C3(Custom_Colors.Custom_Color_3.r, Custom_Colors.Custom_Color_3.g, Custom_Colors.Custom_Color_3.b), C3(0, 0, 0), "Skill 4 Bar")
1595
1596
local SKILL1TEXT = CreateLabel(SKILL1FRAME, "[Z] Ability 1", C3(1, 1, 1), "Size32", "Legacy", 1, 2, 1, "Text 1")
1597
local SKILL2TEXT = CreateLabel(SKILL2FRAME, "[X] Ability 2", C3(1, 1, 1), "Size32", "Legacy", 1, 2, 1, "Text 2")
1598
local SKILL3TEXT = CreateLabel(SKILL3FRAME, "[C] Ability 3", C3(1, 1, 1), "Size32", "Legacy", 1, 2, 1, "Text 3")
1599
local SKILL4TEXT = CreateLabel(SKILL4FRAME, "[V] Ability 4", C3(1, 1, 1), "Size32", "Legacy", 1, 2, 1, "Text 4")
1600
1601
if Enable_Gui == true then
1602
	WEAPONGUI.Parent = PlayerGui
1603
end
1604
1605
if Enable_Stats == true and Show_Stats == true then
1606
	DEFENSEFRAME.Parent = WEAPONGUI
1607
	DAMAGEFRAME.Parent = WEAPONGUI
1608
	MOVEMENTFRAME.Parent = WEAPONGUI
1609
end
1610
1611
if Enable_Secondary_Bar == true then
1612
	SECONDARYMANABAR.Parent = WEAPONGUI
1613
end
1614
1615
if Enable_Abilities == true then
1616
	SKILL1FRAME.Parent = WEAPONGUI
1617
	SKILL2FRAME.Parent = WEAPONGUI
1618
	SKILL3FRAME.Parent = WEAPONGUI
1619
	SKILL4FRAME.Parent = WEAPONGUI
1620
end
1621
1622
if Enable_Stun == true then
1623
	STUNFRAME.Parent = WEAPONGUI
1624
end
1625
1626
function UpdateGUI()
1627
	MANABAR:TweenSize(UD2(0.26, 0, 0.03, 0), "Out", "Quad", Menu_Update_Speed, Constant_Update)
1628
	MANACOVER:TweenSize(UD2(1 * (Mana.Value / Max_Mana), 0, 1, 0), "Out", "Quad", Menu_Update_Speed, Constant_Update)
1629
	MANATEXT.Text = Mana_Name.." ["..FLOOR(Mana.Value).."]"
1630
	HEALTHBAR:TweenSize(UD2(0.26, 0, 0.03, 0), "Out", "Quad", Menu_Update_Speed, Constant_Update)
1631
	HEALTHCOVER:TweenSize(UD2(1 * (Humanoid.Health / Humanoid.MaxHealth), 0, 1, 0), "Out", "Quad", Menu_Update_Speed, Constant_Update)
1632
	HEALTHTEXT.Text = "Health ["..FLOOR(Humanoid.Health).."]"
1633
	if Enable_Abilities == true then
1634
		SKILL1FRAME:TweenSize(UD2(0.26, 0, 0.06, 0), "Out", "Quad", Menu_Update_Speed, Constant_Update)
1635
		SKILL2FRAME:TweenSize(UD2(0.26, 0, 0.06, 0), "Out", "Quad", Menu_Update_Speed, Constant_Update)
1636
		SKILL3FRAME:TweenSize(UD2(0.26, 0, 0.06, 0), "Out", "Quad", Menu_Update_Speed, Constant_Update)
1637
		SKILL4FRAME:TweenSize(UD2(0.26, 0, 0.06, 0), "Out", "Quad", Menu_Update_Speed, Constant_Update)
1638
		SKILL1BAR:TweenSize(UD2(1 * (CO1 / Cooldown_1), 0, 1, 0), "Out", "Quad", Menu_Update_Speed, Constant_Update)
1639
		SKILL2BAR:TweenSize(UD2(1 * (CO2 / Cooldown_2), 0, 1, 0), "Out", "Quad", Menu_Update_Speed, Constant_Update)
1640
		SKILL3BAR:TweenSize(UD2(1 * (CO3 / Cooldown_3), 0, 1, 0), "Out", "Quad", Menu_Update_Speed, Constant_Update)
1641
		SKILL4BAR:TweenSize(UD2(1 * (CO4 / Cooldown_4), 0, 1, 0), "Out", "Quad", Menu_Update_Speed, Constant_Update)
1642
	end
1643
	if Enable_Stats == true and Show_Stats == true then
1644
		DEFENSEFRAME:TweenSize(UD2(0.075, 0, 0.03), "Out", "Quad", Menu_Update_Speed, Constant_Update)
1645
		DEFENSETEXT.Text = "Defense ["..(Defense.Value * 100).."%]"
1646
		DAMAGEFRAME:TweenSize(UD2(0.075, 0, 0.03), "Out", "Quad", Menu_Update_Speed, Constant_Update)
1647
		DAMAGETEXT.Text = "Damage ["..(Damage.Value * 100).."%]"
1648
		MOVEMENTFRAME:TweenSize(UD2(0.075, 0, 0.03), "Out", "Quad", Menu_Update_Speed, Constant_Update)
1649
		MOVEMENTTEXT.Text = "Movement ["..(Movement.Value * 100).."%]"
1650
	end
1651
	if Enable_Stun == true then
1652
		STUNFRAME:TweenSize(UD2(0.26, 0, 0.03, 0), "Out", "Quad", Menu_Update_Speed, Constant_Update)
1653
		STUNBAR:TweenSize(UD2(1 * (StunValue.Value / Max_Stun), 0, 1, 0), "Out", "Quad", Menu_Update_Speed, Constant_Update)
1654
		STUNTEXT.Text = "Stun ["..FLOOR(StunValue.Value).."]"
1655
	end
1656
	if Enable_Secondary_Bar == true then
1657
		SECONDARYMANABAR:TweenSize(UD2(0.26, 0, 0.03, 0), "Out", "Quad", Menu_Update_Speed, Constant_Update)
1658
		SECONDARYMANACOVER:TweenSize(UD2(1 * (SecondaryMana.Value / Max_Secondary_Mana), 0, 1, 0), "Out", "Quad", Menu_Update_Speed, Constant_Update)
1659
		SECONDARYMANATEXT.Text = Secondary_Mana_Name.." ["..FLOOR(SecondaryMana.Value).."]"
1660
	end
1661
end
1662
1663
if Enable_Gui == true then
1664
	UpdateGUI()
1665
	for _, v in pairs (WEAPONGUI:GetChildren()) do
1666
		if v.ClassName == "Frame" then
1667
			for _, b in pairs (v:GetChildren()) do
1668
				if b.ClassName == "TextLabel" then
1669
					coroutine.resume(coroutine.create(function(THETEXTLABEL)
1670
						wait(Menu_Update_Speed)
1671
						for i = 1, 0, -0.1 do
1672
							Swait()
1673
							THETEXTLABEL.TextTransparency = i
1674
							THETEXTLABEL.TextStrokeTransparency = i
1675
							end
1676
						THETEXTLABEL.TextTransparency = 0
1677
						THETEXTLABEL.TextStrokeTransparency = 0
1678
					end), b)
1679
				end
1680
			end
1681
		end
1682
	end
1683
end
1684
1685
--//=================================\\
1686
--\\=================================//
1687
1688
1689
1690
1691
1692
--//=================================\\
1693
--||	     SKILL FUNCTIONS
1694
--\\=================================//
1695
1696
function UpdateSkillsAndStuff()
1697
	if Mana_Regen_Mode == "1" then
1698
		if Mana.Value >= Max_Mana then
1699
			Mana.Value = Max_Mana
1700
		elseif Mana.Value < 0 then
1701
			Mana.Value = 0
1702
		else
1703
			if MANADELAYNUMBER <= Mana_Wait then
1704
				MANADELAYNUMBER = MANADELAYNUMBER + 1
1705
			else
1706
				MANADELAYNUMBER = 0
1707
				Mana.Value = Mana.Value + Recover_Mana
1708
			end
1709
		end
1710
	elseif Mana_Regen_Mode == "2" then
1711
		if Mana.Value <= Max_Mana then
1712
			Mana.Value = Mana.Value + (Recover_Mana / 30) / Animation_Speed
1713
		elseif Mana.Value >= Max_Mana then
1714
			Mana.Value = Max_Mana
1715
		elseif Mana.Value < 0 then
1716
			Mana.Value = 0
1717
		end
1718
	end
1719
	if Enable_Secondary_Bar == true then
1720
		if Secondary_Mana_Regen_Mode == "1" then
1721
			if SecondaryMana.Value >= Max_Secondary_Mana then
1722
				SecondaryMana.Value = Max_Secondary_Mana
1723
			elseif SecondaryMana.Value < 0 then
1724
				SecondaryMana.Value = 0
1725
			else
1726
				if SECONDARYMANADELAYNUMBER <= Secondary_Mana_Wait then
1727
					SECONDARYMANADELAYNUMBER = SECONDARYMANADELAYNUMBER + 1
1728
				else
1729
					SECONDARYMANADELAYNUMBER = 0
1730
					SecondaryMana.Value = SecondaryMana.Value + Recover_Secondary_Mana
1731
				end
1732
			end
1733
		elseif Secondary_Mana_Regen_Mode == "2" then
1734
			if SecondaryMana.Value <= Max_Secondary_Mana then
1735
				SecondaryMana.Value = SecondaryMana.Value + (Recover_Secondary_Mana / 30) / Animation_Speed
1736
			elseif SecondaryMana.Value >= Max_Secondary_Mana then
1737
				SecondaryMana.Value = Max_Secondary_Mana
1738
			elseif SecondaryMana.Value < 0 then
1739
				SecondaryMana.Value = 0
1740
			end
1741
		end
1742
	else
1743
		SecondaryMana.Value = 0
1744
	end
1745
	if Enable_Stun == true then
1746
		if Stun_Lose_Mode == "1" then
1747
			if StunValue.Value > Max_Stun then
1748
				StunValue.Value = Max_Stun
1749
			elseif StunValue.Value <= 0 then
1750
				StunValue.Value = 0
1751
			else
1752
				if STUNDELAYNUMBER <= Stun_Wait then
1753
					STUNDELAYNUMBER = STUNDELAYNUMBER + 1
1754
				else
1755
					STUNDELAYNUMBER = 0
1756
					StunValue.Value = StunValue.Value - Lose_Stun
1757
				end
1758
			end
1759
		elseif Stun_Lose_Mode == "2" then
1760
			if StunValue.Value <= Max_Stun and StunValue.Value > 0 then
1761
				StunValue.Value = StunValue.Value - (Lose_Stun / 30) / Animation_Speed
1762
			elseif StunValue.Value > Max_Stun then
1763
				StunValue.Value = Max_Stun
1764
			elseif StunValue.Value <= 0 then
1765
				StunValue.Value = 0
1766
			end
1767
		end
1768
	else
1769
		StunValue.Value = 0
1770
	end
1771
	if Enable_Abilities == true then
1772
		if CO1 <= Cooldown_1 then
1773
			CO1 = CO1 + (1 / 30) / Animation_Speed
1774
		elseif CO1 >= Cooldown_1 then
1775
			CO1 = Cooldown_1
1776
		end
1777
		if CO2 <= Cooldown_2 then
1778
			CO2 = CO2 + (1 / 30) / Animation_Speed
1779
		elseif CO2 >= Cooldown_2 then
1780
			CO2 = Cooldown_2
1781
		end
1782
		if CO3 <= Cooldown_3 then
1783
			CO3 = CO3 + (1 / 30) / Animation_Speed
1784
		elseif CO3 >= Cooldown_3 then
1785
			CO3 = Cooldown_3
1786
		end
1787
		if CO4 <= Cooldown_4 then
1788
			CO4 = CO4 + (1 / 30) / Animation_Speed
1789
		elseif CO4 >= Cooldown_4 then
1790
			CO4 = Cooldown_4
1791
		end
1792
	end
1793
end
1794
1795
--//=================================\\
1796
--\\=================================//
1797
1798
1799
function NewEffect(cframe,name,colour,meshid,texture,scale)
1800
local part = Instance.new("Part")
1801
part.Size = Vector3.new(1,1,1)
1802
part.CFrame = cframe
1803
part.Name = "Part"
1804
part.BrickColor = colour
1805
part.Parent = Effects
1806
part.Anchored = true
1807
part.CanCollide = false
1808
local emesh = Instance.new("SpecialMesh")
1809
emesh.MeshId = meshid
1810
emesh.TextureId = texture
1811
emesh.Parent = part
1812
emesh.Scale = scale
1813
end
1814
1815
1816
--//=================================\\
1817
--||	ATTACK FUNCTIONS AND STUFF
1818
--\\=================================//
1819
1820
function StaggerHitAnimation()
1821
	ATTACK = true
1822
	if Weapon:FindFirstChild("Hitbox") ~= nil then
1823
		for i = 1, MRANDOM(2, 4) do
1824
			ClangEffect("Bright yellow", "Neon", CF(Weapon:FindFirstChild("Hitbox").Position) * ANGLES(RAD(MRANDOM(-50, 50)), RAD(MRANDOM(-50, 50)), RAD(MRANDOM(-50, 50))), 20, 5, 0.2, MRANDOM(5, 15) / 10, 0, -0.02, 0, -0.02, 0.1)
1825
		end
1826
	end
1827
	for i = 0, 1, 0.1 / Animation_Speed do
1828
		Swait()
1829
		RootJoint.C0 = Clerp(RootJoint.C0, ROOTC0 * CF(0 * Player_Size, 0 * Player_Size, 0 * Player_Size) * ANGLES(RAD(-10), RAD(0), RAD(-30)), 0.3 / Animation_Speed)
1830
		Neck.C0 = Clerp(Neck.C0, NECKC0 * CF(0 * Player_Size, 0 * Player_Size, 0 + ((1 * Player_Size) - 1)) * ANGLES(RAD(0), RAD(0), RAD(30)) * ANGLES(RAD(5), RAD(0), RAD(0)), 0.3 / Animation_Speed)
1831
		RightShoulder.C0 = Clerp(RightShoulder.C0, CF(1.5 * Player_Size, 0.5 * Player_Size, 0 * Player_Size) * ANGLES(RAD(-30), RAD(0), RAD(60)) * ANGLES(RAD(0), RAD(-30), RAD(0)) * RIGHTSHOULDERC0, 0.3 / Animation_Speed)
1832
		LeftShoulder.C0 = Clerp(LeftShoulder.C0, CF(-1.5 * Player_Size, 0.5 * Player_Size, 0 * Player_Size) * ANGLES(RAD(-20), RAD(0), RAD(-20)) * ANGLES(RAD(0), RAD(20), RAD(0)) * LEFTSHOULDERC0, 0.3 / Animation_Speed)
1833
		RightHip.C0 = Clerp(RightHip.C0, CF(1 * Player_Size, -0.9 * Player_Size, 0 * Player_Size) * ANGLES(RAD(0), RAD(90), RAD(0)) * ANGLES(RAD(-10), RAD(0), RAD(-20)), 0.3 / Animation_Speed)
1834
		LeftHip.C0 = Clerp(LeftHip.C0, CF(-1 * Player_Size, -1.1 * Player_Size, 0 * Player_Size) * ANGLES(RAD(0), RAD(-70), RAD(0)) * ANGLES(RAD(-5), RAD(0), RAD(10)), 0.3 / Animation_Speed)
1835
		if Stagger.Value == true or Stun.Value == true then
1836
			break
1837
		end
1838
	end
1839
	ATTACK = false
1840
end
1841
1842
function StaggerAnimation()
1843
	ATTACK = true
1844
	if Weapon:FindFirstChild("Hitbox") ~= nil then
1845
		for i = 1, MRANDOM(2, 4) do
1846
			ClangEffect("Bright yellow", "Neon", CF(Weapon:FindFirstChild("Hitbox").Position) * ANGLES(RAD(MRANDOM(-50, 50)), RAD(MRANDOM(-50, 50)), RAD(MRANDOM(-50, 50))), 20, 5, 0.2, MRANDOM(5, 15) / 10, 0, -0.02, 0, -0.02, 0.1)
1847
		end
1848
	end
1849
	DISABLEJUMPING = true
1850
	COMBO = 1
1851
	StatLabel("Interruption", Head.CFrame * CF(0, 0 + (Head.Size.z - 1), 0), "Staggered!", C3(255 / 255, 255 / 255, 0))
1852
	local STAGGERVELOCITY = Instance.new("BodyVelocity",Torso)
1853
	STAGGERVELOCITY.P = 500
1854
	STAGGERVELOCITY.maxForce = VT(math.huge, 0, math.huge)
1855
	if Rooted.Value == false then
1856
		STAGGERVELOCITY.Velocity = RootPart.CFrame.lookVector * -40
1857
	end
1858
	for i = 0, 1, 0.35 / Animation_Speed do
1859
		Swait()
1860
		RootJoint.C0 = Clerp(RootJoint.C0, ROOTC0 * CF(0 * Player_Size, 0 * Player_Size, 0 * Player_Size) * ANGLES(RAD(-5), RAD(0), RAD(-20)), 0.3 / Animation_Speed)
1861
		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(20)), 0.3 / Animation_Speed)
1862
		RightShoulder.C0 = Clerp(RightShoulder.C0, CF(1.5 * Player_Size, 0.5 * Player_Size,0 * Player_Size) * ANGLES(RAD(-15), RAD(0), RAD(30)) * RIGHTSHOULDERC0, 0.3 / Animation_Speed)
1863
		LeftShoulder.C0 = Clerp(LeftShoulder.C0, CF(-1.5 * Player_Size, 0.5 * Player_Size,0 * Player_Size) * ANGLES(RAD(-7.5), RAD(0), RAD(-20)) * LEFTSHOULDERC0, 0.3 / Animation_Speed)
1864
		RightHip.C0 = Clerp(RightHip.C0, CF(1 * Player_Size, -1 * Player_Size,0 * Player_Size) * ANGLES(RAD(0), RAD(80), RAD(0)) * ANGLES(RAD(-5), RAD(0), RAD(30)), 0.3 / Animation_Speed)
1865
		LeftHip.C0 = Clerp(LeftHip.C0, CF(-1 * Player_Size, -1 * Player_Size,0 * Player_Size) * ANGLES(RAD(0), RAD(-70), RAD(0)) * ANGLES(RAD(0), RAD(0), RAD(5)), 0.3 / Animation_Speed)
1866
	end
1867
	for i = 0, 1, 0.2 / Animation_Speed do
1868
		Swait()
1869
		RootJoint.C0 = Clerp(RootJoint.C0, ROOTC0 * CF(0 * Player_Size, 0 * Player_Size, -0.25 * Player_Size) * ANGLES(RAD(-25), RAD(0), RAD(-20)), 0.4 / Animation_Speed)
1870
		Neck.C0 = Clerp(Neck.C0, NECKC0 * CF(0 * Player_Size, 0 * Player_Size, 0 + ((1 * Player_Size) - 1)) * ANGLES(RAD(-5), RAD(0), RAD(20)), 0.4 / Animation_Speed)
1871
		RightShoulder.C0 = Clerp(RightShoulder.C0, CF(1.5 * Player_Size, 0.5 * Player_Size, 0 * Player_Size) * ANGLES(RAD(-15), RAD(0), RAD(30)) * RIGHTSHOULDERC0, 0.4 / Animation_Speed)
1872
		LeftShoulder.C0 = Clerp(LeftShoulder.C0, CF(-1.5 * Player_Size, 0.5 * Player_Size, 0 * Player_Size) * ANGLES(RAD(-7.5), RAD(0), RAD(-20)) * LEFTSHOULDERC0, 0.4 / Animation_Speed)
1873
		RightHip.C0 = Clerp(RightHip.C0, CF(1 * Player_Size, -1 * Player_Size, 0 * Player_Size) * ANGLES(RAD(0), RAD(80), RAD(0)) * ANGLES(RAD(-5), RAD(0), RAD(50)), 0.4 / Animation_Speed)
1874
		LeftHip.C0 = Clerp(LeftHip.C0, CF(-1 * Player_Size, -1 * Player_Size, 0 * Player_Size) * ANGLES(RAD(0), RAD(-70), RAD(0)) * ANGLES(RAD(0), RAD(0), RAD(25)), 0.4 / Animation_Speed)
1875
	end
1876
	STAGGERVELOCITY.Parent = nil
1877
	for i = 1, 50 * Animation_Speed do
1878
		Swait()
1879
		RootJoint.C0 = Clerp(RootJoint.C0, ROOTC0 * CF(0 * Player_Size, 0 * Player_Size, -1.8 * Player_Size) * ANGLES(RAD(0), RAD(0), RAD(-20)) * ANGLES(RAD(-5), RAD(-5), RAD(0)), 0.3 / Animation_Speed)
1880
		Neck.C0 = Clerp(Neck.C0, NECKC0 * CF(0 * Player_Size, 0 * Player_Size, 0 + ((1 * Player_Size) - 1)) * ANGLES(RAD(20), RAD(0), RAD(20)) * ANGLES(RAD(0), RAD(5), RAD(0)), 0.3 / Animation_Speed)
1881
		RightShoulder.C0 = Clerp(RightShoulder.C0, CF(1.5 * Player_Size, 0.5 * Player_Size, 0 * Player_Size) * ANGLES(RAD(0), RAD(0), RAD(20)) * ANGLES(RAD(0), RAD(-20), RAD(0)) * RIGHTSHOULDERC0, 0.3 / Animation_Speed)
1882
		LeftShoulder.C0 = Clerp(LeftShoulder.C0, CF(-1.5 * Player_Size, 0.5 * Player_Size, 0 * Player_Size) * ANGLES(RAD(-15), RAD(0), RAD(-10)) * ANGLES(RAD(0), RAD(15), RAD(0)) * LEFTSHOULDERC0, 0.3 / Animation_Speed)
1883
		RightHip.C0 = Clerp(RightHip.C0, CF(1 * Player_Size, -0.4 * Player_Size, -0.3 * Player_Size) * ANGLES(RAD(0), RAD(75), RAD(0)) * ANGLES(RAD(0), RAD(0), RAD(70)) * ANGLES(RAD(0), RAD(30), RAD(0)), 0.3 / Animation_Speed)
1884
		LeftHip.C0 = Clerp(LeftHip.C0, CF(-1 * Player_Size, 0.5 * Player_Size, -0.5 * Player_Size) * ANGLES(RAD(0), RAD(-80), RAD(0)) * ANGLES(RAD(-2.5), RAD(0), RAD(-10)), 0.3 / Animation_Speed)
1885
	end
1886
	DISABLEJUMPING = false
1887
	ATTACK = false
1888
end
1889
1890
function StunAnimation()
1891
	ATTACK = true
1892
	DISABLEJUMPING = true
1893
	COMBO = 1
1894
	StatLabel("Interruption", Head.CFrame * CF(0, 0 + (Head.Size.z - 1), 0), "Stunned!", C3(255 / 255, 255 / 255, 0))
1895
	for i = 0, 1, 0.3 / Animation_Speed do
1896
		Swait()
1897
		RootJoint.C0 = Clerp(RootJoint.C0, ROOTC0 * CF(0 * Player_Size, 0 * Player_Size, -0.05 * Player_Size) * ANGLES(RAD(15), RAD(0), RAD(-150)), 0.3 / Animation_Speed)
1898
		Neck.C0 = Clerp(Neck.C0, NECKC0 * CF(0 * Player_Size, 0 * Player_Size, 0 + ((1 * Player_Size) - 1)) * ANGLES(RAD(-10), RAD(0), RAD(-20)), 0.3 / Animation_Speed)
1899
		RightShoulder.C0 = Clerp(RightShoulder.C0, CF(1.5 * Player_Size, 0.5 * Player_Size, 0 * Player_Size) * ANGLES(RAD(30), RAD(0), RAD(40)) * RIGHTSHOULDERC0, 0.3 / Animation_Speed)
1900
		LeftShoulder.C0 = Clerp(LeftShoulder.C0, CF(-1.5 * Player_Size, 0.5 * Player_Size, 0 * Player_Size) * ANGLES(RAD(-20), RAD(0), RAD(-50)) * LEFTSHOULDERC0, 0.3 / Animation_Speed)
1901
		RightHip.C0 = Clerp(RightHip.C0, CF(1 * Player_Size, -1 * Player_Size, 0 * Player_Size) * ANGLES(RAD(0), RAD(85), RAD(0)) * ANGLES(RAD(-15), RAD(0), RAD(30)), 0.3 / Animation_Speed)
1902
		LeftHip.C0 = Clerp(LeftHip.C0, CF(-1 * Player_Size, -1 * Player_Size, 0 * Player_Size) * ANGLES(RAD(0), RAD(-80), RAD(0)) * ANGLES(RAD(-10), RAD(0), RAD(20)), 0.3 / Animation_Speed)
1903
	end
1904
	for i = 0, 1, 0.3 / Animation_Speed do
1905
		Swait()
1906
		RootJoint.C0 = Clerp(RootJoint.C0, ROOTC0 * CF(0 * Player_Size, 0 * Player_Size, -0.05 * Player_Size) * ANGLES(RAD(45), RAD(0), RAD(-180)), 0.4 / Animation_Speed)
1907
		Neck.C0 = Clerp(Neck.C0, NECKC0 * CF(0 * Player_Size, 0 * Player_Size, 0 + ((1 * Player_Size) - 1)) * ANGLES(RAD(-15), RAD(0), RAD(-30)), 0.4 / Animation_Speed)
1908
		RightShoulder.C0 = Clerp(RightShoulder.C0, CF(1.5 * Player_Size, 0.5 * Player_Size, 0 * Player_Size) * ANGLES(RAD(30), RAD(0), RAD(40)) * RIGHTSHOULDERC0, 0.4 / Animation_Speed)
1909
		LeftShoulder.C0 = Clerp(LeftShoulder.C0, CF(-1.5 * Player_Size, 0.5 * Player_Size, 0 * Player_Size) * ANGLES(RAD(-20), RAD(0), RAD(-50)) * LEFTSHOULDERC0, 0.4 / Animation_Speed)
1910
		RightHip.C0 = Clerp(RightHip.C0, CF(1 * Player_Size, -1 * Player_Size, 0 * Player_Size) * ANGLES(RAD(0), RAD(85), RAD(0)) * ANGLES(RAD(-10), RAD(0), RAD(15)), 0.4 / Animation_Speed)
1911
		LeftHip.C0 = Clerp(LeftHip.C0, CF(-1 * Player_Size, -1 * Player_Size, 0 * Player_Size) * ANGLES(RAD(0), RAD(-80), RAD(0)) * ANGLES(RAD(-10), RAD(0), RAD(50)), 0.4 / Animation_Speed)
1912
	end
1913
	for i = 0, 1, 0.3 / Animation_Speed do
1914
		Swait()
1915
		RootJoint.C0 = Clerp(RootJoint.C0, ROOTC0 * CF(0 * Player_Size, 0 * Player_Size, -0.3 * Player_Size) * ANGLES(RAD(75), RAD(0), RAD(-180)), 0.4 / Animation_Speed)
1916
		Neck.C0 = Clerp(Neck.C0, NECKC0 * CF(0 * Player_Size, 0 * Player_Size, 0 + ((1 * Player_Size) - 1)) * ANGLES(RAD(-15), RAD(0), RAD(-60)), 0.4 / Animation_Speed)
1917
		RightShoulder.C0 = Clerp(RightShoulder.C0, CF(1.5 * Player_Size, 0.5 * Player_Size, 0 * Player_Size) * ANGLES(RAD(20), RAD(0), RAD(70)) * ANGLES(RAD(0), RAD(30), RAD(0)) * RIGHTSHOULDERC0, 0.4 / Animation_Speed)
1918
		LeftShoulder.C0 = Clerp(LeftShoulder.C0, CF(-1.5 * Player_Size, 0.5 * Player_Size, 0 * Player_Size) * ANGLES(RAD(-10), RAD(0), RAD(-80)) * ANGLES(RAD(0), RAD(-40), RAD(0)) * LEFTSHOULDERC0, 0.4 / Animation_Speed)
1919
		RightHip.C0 = Clerp(RightHip.C0, CF(1 * Player_Size, -1 * Player_Size, 0 * Player_Size) * ANGLES(RAD(0), RAD(85), RAD(0)) * ANGLES(RAD(-15), RAD(0), RAD(10)), 0.4 / Animation_Speed)
1920
		LeftHip.C0 = Clerp(LeftHip.C0, CF(-1 * Player_Size, -1 * Player_Size, 0 * Player_Size) * ANGLES(RAD(0), RAD(-80), RAD(0)) * ANGLES(RAD(-10), RAD(0), RAD(80)), 0.4 / Animation_Speed)
1921
	end
1922
	for i = 1, 70 * Animation_Speed do
1923
		Swait()
1924
		RootJoint.C0 = Clerp(RootJoint.C0, ROOTC0 * CF(0 * Player_Size, 0 * Player_Size, -2.5 * Player_Size) * ANGLES(RAD(90), RAD(0), RAD(-180)), 0.3 / Animation_Speed)
1925
		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)), 0.3 / Animation_Speed)
1926
		RightShoulder.C0 = Clerp(RightShoulder.C0, CF(1.5 * Player_Size, 0.5 * Player_Size, 0 * Player_Size) * ANGLES(RAD(90), RAD(-10), RAD(90)) * RIGHTSHOULDERC0, 0.3 / Animation_Speed)
1927
		LeftShoulder.C0 = Clerp(LeftShoulder.C0, CF(-1.5 * Player_Size, 0.5 * Player_Size, 0 * Player_Size) * ANGLES(RAD(-90), RAD(0), RAD(-90)) * LEFTSHOULDERC0, 0.3 / Animation_Speed)
1928
		RightHip.C0 = Clerp(RightHip.C0, CF(1 * Player_Size, -1 * Player_Size, 0.2 * Player_Size) * ANGLES(RAD(0), RAD(70), RAD(0)) * ANGLES(RAD(-10), RAD(0), RAD(0)), 0.3 / Animation_Speed)
1929
		LeftHip.C0 = Clerp(LeftHip.C0, CF(-1 * Player_Size, -1 * Player_Size, 0 * Player_Size) * ANGLES(RAD(0), RAD(-80), RAD(0)) * ANGLES(RAD(-10), RAD(0), RAD(0)), 0.3 / Animation_Speed)
1930
	end
1931
	for i = 0, 1, 0.2 / Animation_Speed do
1932
		Swait()
1933
		RootJoint.C0 = Clerp(RootJoint.C0, ROOTC0 * CF(0 * Player_Size, 0 * Player_Size, -1.5 * Player_Size) * ANGLES(RAD(20), RAD(0), RAD(100)), 0.4 / Animation_Speed)
1934
		Neck.C0 = Clerp(Neck.C0, NECKC0 * CF(0 * Player_Size, 0 * Player_Size, 0 + ((1 * Player_Size) - 1)) * ANGLES(RAD(0), RAD(0), RAD(-30)), 0.4 / Animation_Speed)
1935
		RightShoulder.C0 = Clerp(RightShoulder.C0, CF(1.5 * Player_Size, 0.5 * Player_Size, 0 * Player_Size) * ANGLES(RAD(-20), RAD(-10), RAD(30)) * RIGHTSHOULDERC0, 0.4 / Animation_Speed)
1936
		LeftShoulder.C0 = Clerp(LeftShoulder.C0, CF(-1.5 * Player_Size, 0.5 * Player_Size, 0 * Player_Size) * ANGLES(RAD(80), RAD(0), RAD(20)) * LEFTSHOULDERC0, 0.4 / Animation_Speed)
1937
		RightHip.C0 = Clerp(RightHip.C0, CF(1 * Player_Size, -0.5 * Player_Size, 0 * Player_Size) * ANGLES(RAD(0), RAD(60), RAD(0)) * ANGLES(RAD(-5), RAD(0), RAD(70)), 0.4 / Animation_Speed)
1938
		LeftHip.C0 = Clerp(LeftHip.C0, CF(-1 * Player_Size, -0.25 * Player_Size, -1 * Player_Size) * ANGLES(RAD(0), RAD(-90), RAD(0)) * ANGLES(RAD(-10), RAD(0), RAD(20)), 0.4 / Animation_Speed)
1939
	end
1940
	DISABLEJUMPING = false
1941
	ATTACK = false
1942
end
1943
1944
function EAbility()
1945
	ATTACK = true
1946
	ATTACK = false
1947
end
1948
1949
function ShootFireball(POSITION1, POSITION2, SPEED, SIZE, DURATION, LOWDAMAGE, HIGHDAMAGE)
1950
	local POS1 = POSITION1
1951
	local POS2 = POSITION2
1952
	local MOUSELOOK = CF((POS1 + POS2) / 2, POS2)
1953
	local FIREBALLSPEED = SPEED * Player_Size
1954
	local FIREBALLDURATION = DURATION
1955
	local FIREBALLCOLORS = {"White", "Really black"}
1956
	local FIREBALLHITSOUNDS = {"438666542"}
1957
	coroutine.resume(coroutine.create(function()
1958
		repeat
1959
			Swait()
1960
			local FIREBALLHIT, FIREBALLPOS = Raycast(POS1, MOUSELOOK.lookVector, FIREBALLSPEED, Character)
1961
			POS1 = POS1 + (MOUSELOOK.lookVector * FIREBALLSPEED)
1962
			MagicBlock(FIREBALLCOLORS[MRANDOM(1, #FIREBALLCOLORS)], "Neon", CF(POS1) * ANGLES(RAD(MRANDOM(-50, 50)), RAD(MRANDOM(-50, 50)), RAD(MRANDOM(-50, 50))), ANGLES(0, 0, 0), VT(0, 0, 0), SIZE, SIZE, SIZE, SIZE / 10, SIZE / 10, SIZE / 10, 0.1)
1963
			if FIREBALLHIT ~= nil or FIREBALLDURATION <= 0.1 then
1964
				FIREBALLDURATION = 0
1965
				local FireballHitRefpart = CreatePart(3, Effects, "SmoothPlastic", 0, 1, "Really black", "Effect", VT())
1966
				FireballHitRefpart.Anchored = true
1967
				FireballHitRefpart.CFrame = CF(FIREBALLPOS)
1968
				game:GetService("Debris"):AddItem(FireballHitRefpart, 5)
1969
				CreateSound(FIREBALLHITSOUNDS[MRANDOM(1, #FIREBALLHITSOUNDS)], FireballHitRefpart, 15, MRANDOM(14, 16) / 10)
1970
				for i = 1, MRANDOM(4, 8) do
1971
					MagicBlock(FIREBALLCOLORS[MRANDOM(1, #FIREBALLCOLORS)], "Neon", FireballHitRefpart.CFrame * ANGLES(RAD(MRANDOM(-360, 360)), RAD(MRANDOM(-360, 360)), RAD(MRANDOM(-360, 360))), CF(0, MRANDOM(5, 7) / 10 * Player_Size, 0), VT(0, 0, 0), 5, 5, 5, 0, 0, 0, MRANDOM(3, 5) / 100)
1972
				end
1973
				MagicBlock("Really red", "Neon", FireballHitRefpart.CFrame * 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), SIZE, SIZE, SIZE, SIZE / 3, SIZE / 3, SIZE / 3, 0.05)
1974
				MagicBlock("Really black", "Neon", FireballHitRefpart.CFrame * 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), SIZE * 0.5, SIZE * 0.5, SIZE * 0.5, SIZE / 4, SIZE / 4, SIZE / 4, 0.05)
1975
				MagicBlock("White", "Neon", FireballHitRefpart.CFrame * 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), SIZE * 0.25, SIZE * 0.25, SIZE * 0.25, SIZE / 5, SIZE / 5, SIZE / 5, 0.05)
1976
				MagnitudeDamage("", "", "", "", 1, 1, 1, 1, FireballHitRefpart, SIZE / 2, false, 45, 70, 0, "Normal", RootPart, 0, 1, MRANDOM(10, 15), nil, false, true, nil, 0, 0, false)
1977
			else
1978
				FIREBALLDURATION = FIREBALLDURATION - (1 / 30) / Animation_Speed
1979
			end
1980
		until FIREBALLHIT ~= nil or FIREBALLDURATION <= 0
1981
	end))
1982
end
1983
1984
function project()
1985
	ATTACK = true
1986
	for i=0, 1, 0.1 / Animation_Speed do
1987
		Swait()
1988
			RootJoint.C0 = Clerp(RootJoint.C0, ROOTC0 * CF(0.05 * Player_Size, 0 * Player_Size, -0.1 * Player_Size) * ANGLES(RAD(10), RAD(0), RAD(-40)), 0.2 * (Humanoid.WalkSpeed / 16) / Animation_Speed)
1989
			Neck.C0 = Clerp(Neck.C0, NECKC0 * CF(0 * Player_Size, 0 * Player_Size, 0 + ((1 * Player_Size) - 1)) * ANGLES(RAD(0), RAD(0), RAD(40)) * ANGLES(RAD(-5), RAD(0), RAD(0)), 0.2 * (Humanoid.WalkSpeed / 16) / Animation_Speed)
1990
		    RightShoulder.C0 = Clerp(RightShoulder.C0, CF(0.25 * Player_Size, 0.5 * Player_Size, -1 * Player_Size) * ANGLES(RAD(70), RAD(-55), RAD(-100)) * ANGLES(RAD(20), RAD(25), RAD(-15)) * RIGHTSHOULDERC0, 0.4 / Animation_Speed)
1991
			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)
1992
			RightHip.C0 = Clerp(RightHip.C0, CF(0.95 * Player_Size, -1 * Player_Size, -0.5 * Player_Size) * ANGLES(RAD(0), RAD(130), RAD(0)) * ANGLES(RAD(-1.25 - 2.5), RAD(0), RAD(0)), 0.2 * (Humanoid.WalkSpeed / 16) / Animation_Speed)
1993
			LeftHip.C0 = Clerp(LeftHip.C0, CF(-1 * Player_Size, -0.9 * Player_Size, 0.25 * Player_Size) * ANGLES(RAD(0), RAD(-50), RAD(0)) * ANGLES(RAD(-2.5 + 2.5), RAD(0), RAD(0)), 0.2 * (Humanoid.WalkSpeed / 16) / Animation_Speed)
1994
			HandleWeld.C0 = Clerp(HandleWeld.C0, CF(0 * Player_Size, -1 * Player_Size, 0 * Player_Size) * ANGLES(RAD(-90), RAD(90), RAD(0)), 0.15 * (Humanoid.WalkSpeed / 16) / Animation_Speed)
1995
		if StaggerHit.Value == true or Stagger.Value == true or Stun.Value == true then
1996
			break
1997
		end
1998
	end
1999
	CreateSound("971125740",Head, 1.2, MRANDOM(7, 9) / 10)
2000
	ShootFireball((CFrame.new(Head.Position.X + math.random(-12,12),Head.Position.Y + 12,Head.Position.Z + math.random(-12,12)) * CF(0 * Player_Size, -1 * Player_Size, 0 * Player_Size)).p, Mouse.hit.p, 3, 70, 2.1, 5, 10)
2001
	for i=0, 1, 0.1 / Animation_Speed*5 do
2002
		Swait()
2003
		local Pos = HitboxPart
2004
		local Offset = HitboxPart.CFrame * CF(0, 0.1 * Player_Size, 0)
2005
		local Color = "Cyan"
2006
		local Material = "Neon"
2007
		local TheDelay = 0.01
2008
		local Height = 6.2 * Player_Size
2009
		BLCF = Offset
2010
			RootJoint.C0 = Clerp(RootJoint.C0, ROOTC0 * CF(0.05 * Player_Size, 0 * Player_Size, -0.1 * Player_Size) * ANGLES(RAD(10), RAD(0), RAD(-40)), 0.2 * (Humanoid.WalkSpeed / 16) / Animation_Speed)
2011
			Neck.C0 = Clerp(Neck.C0, NECKC0 * CF(0 * Player_Size, 0 * Player_Size, 0 + ((1 * Player_Size) - 1)) * ANGLES(RAD(0), RAD(0), RAD(40)) * ANGLES(RAD(-5), RAD(0), RAD(0)), 0.2 * (Humanoid.WalkSpeed / 16) / Animation_Speed)
2012
		    RightShoulder.C0 = Clerp(RightShoulder.C0, CF(0.25 * Player_Size, 0.5 * Player_Size, -1 * Player_Size) * ANGLES(RAD(0), RAD(-55), RAD(-100)) * ANGLES(RAD(20), RAD(25), RAD(-15)) * RIGHTSHOULDERC0, 0.4 / Animation_Speed)
2013
			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)
2014
			RightHip.C0 = Clerp(RightHip.C0, CF(0.95 * Player_Size, -1 * Player_Size, -0.5 * Player_Size) * ANGLES(RAD(0), RAD(130), RAD(0)) * ANGLES(RAD(-1.25 - 2.5), RAD(0), RAD(0)), 0.2 * (Humanoid.WalkSpeed / 16) / Animation_Speed)
2015
			LeftHip.C0 = Clerp(LeftHip.C0, CF(-1 * Player_Size, -0.9 * Player_Size, 0.25 * Player_Size) * ANGLES(RAD(0), RAD(-50), RAD(0)) * ANGLES(RAD(-2.5 + 2.5), RAD(0), RAD(0)), 0.2 * (Humanoid.WalkSpeed / 16) / Animation_Speed)
2016
			HandleWeld.C0 = Clerp(HandleWeld.C0, CF(0 * Player_Size, -1 * Player_Size, 0 * Player_Size) * ANGLES(RAD(-90), RAD(90), RAD(0)), 0.15 * (Humanoid.WalkSpeed / 16) / Animation_Speed)
2017
		if StaggerHit.Value == true or Stagger.Value == true or Stun.Value == true then
2018
			break
2019
		end
2020
	    local FIREEFFECTCOLORS = {"White", "Really red"}
2021
		MagicBlock(FIREEFFECTCOLORS[MRANDOM(1, #FIREEFFECTCOLORS)], "Neon", RightArm.CFrame * CF(0 * Player_Size, MRANDOM(-15, -10) / 10 * Player_Size, 0 * Player_Size) * ANGLES(RAD(90), 0, RAD(MRANDOM(-360, 360))), CF(0, 0, -0.1) * ANGLES(0, 0, RAD(MRANDOM(-20, 20))), VT(0, 1, 0), 50000, 50000, 50000, -1, -1, -1, 0.065)
2022
		MagicBlock(FIREEFFECTCOLORS[MRANDOM(1, #FIREEFFECTCOLORS)], "Neon", RightArm.CFrame * CF(0 * Player_Size, MRANDOM(-15, -10) / 10 * Player_Size, 0 * Player_Size) * ANGLES(RAD(90), 0, RAD(MRANDOM(-360, 360))), CF(0, 0, -0.1) * ANGLES(0, 0, RAD(MRANDOM(-20, 20))), VT(0, 1, 0), 50000, 50000, 50000, -1, -1, -1, 0.065)
2023
		--MagicBlock("White", "Neon", Head.CFrame * 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), 1500, 1500, 1500, 30, 30, 30, 0.1)
2024
	end
2025
	BLCF = nil
2026
	SCFR = nil
2027
	ATTACK = false
2028
end
2029
2030
function serverbless()
2031
    Humanoid.WalkSpeed = 0
2032
	ATTACK = true
2033
    kkk:Pause()
2034
	for i=0, 1, 0.1 / Animation_Speed do
2035
		Swait()
2036
			RootJoint.C0 = Clerp(RootJoint.C0, ROOTC0 * CF(0 * Player_Size, 0 * Player_Size, 60 * Player_Size) * ANGLES(RAD(0), RAD(0), RAD(0)), 0.2 / Animation_Speed)
2037
			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)
2038
			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)
2039
			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)
2040
			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)
2041
			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)
2042
			HandleWeld.C0 = Clerp(HandleWeld.C0, CF(0 * Player_Size, -1 * Player_Size, 0 * Player_Size) * ANGLES(RAD(-90), RAD(90), RAD(0)), 0.2 / Animation_Speed)
2043
		if StaggerHit.Value == true or Stagger.Value == true or Stun.Value == true then
2044
			break
2045
		end
2046
	end
2047
	CreateSound("146224091", Character, 10, 1)
2048
    wait(72)
2049
    SIZE = 25
2050
	MagicBlock("Sea green", "Neon", Head.CFrame * 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), SIZE, SIZE, SIZE, SIZE / 3, SIZE / 3, SIZE / 3, 0.05)
2051
	MagicBlock("White", "Neon", Head.CFrame * 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), SIZE * 0.75, SIZE * 0.75, SIZE * 0.75, 50, 50, 50, 0.05)
2052
MagnitudeDamage(HITWEAPONSOUNDS[MRANDOM(1, #HITWEAPONSOUNDS)], HITARMORSOUNDS[MRANDOM(1, #HITARMORSOUNDS)], HITBLOCKSOUNDS[MRANDOM(1, #HITBLOCKSOUNDS)], HITPLAYERSOUNDS[MRANDOM(1, #HITPLAYERSOUNDS)], 1, 1, 1, 1, Head, 3000000000000000, false, 1, 1, 0, "Normal", RootPart, 0.5, 1, MRANDOM(50, 70), nil, true, false, nil, 0, 0, false)
2053
	CreateSound("971126018",workspace, 1.2, MRANDOM(7, 9) / 10)
2054
	for i=0, 1, 0.1 / Animation_Speed*5 do
2055
		Swait()
2056
		local Pos = HitboxPart
2057
		local Offset = HitboxPart.CFrame * CF(0, 0.1 * Player_Size, 0)
2058
		local Color = "Cyan"
2059
		local Material = "Neon"
2060
		local TheDelay = 0.01
2061
		local Height = 6.2 * Player_Size
2062
		BLCF = Offset
2063
			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)
2064
			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)
2065
			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)
2066
			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)
2067
			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)
2068
			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)
2069
			HandleWeld.C0 = Clerp(HandleWeld.C0, CF(0 * Player_Size, -1 * Player_Size, 0 * Player_Size) * ANGLES(RAD(-90), RAD(90), RAD(0)), 0.2 / Animation_Speed)
2070
		if StaggerHit.Value == true or Stagger.Value == true or Stun.Value == true then
2071
			break
2072
		end
2073
	end
2074
	BLCF = nil
2075
	SCFR = nil
2076
	ATTACK = false
2077
    kkk:Play()
2078
    Humanoid.WalkSpeed = 20
2079
end
2080
2081
function annihalation()
2082
    Humanoid.WalkSpeed = 0
2083
	ATTACK = true
2084
	for i=0, 1, 0.1 / Animation_Speed do
2085
		Swait()
2086
			RootJoint.C0 = Clerp(RootJoint.C0, ROOTC0 * CF(0 * Player_Size, 0 * Player_Size, 60 * Player_Size) * ANGLES(RAD(0), RAD(0), RAD(0)), 0.2 / Animation_Speed)
2087
			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)
2088
			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)
2089
			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)
2090
			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)
2091
			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)
2092
			HandleWeld.C0 = Clerp(HandleWeld.C0, CF(0 * Player_Size, -1 * Player_Size, 0 * Player_Size) * ANGLES(RAD(-90), RAD(90), RAD(0)), 0.2 / Animation_Speed)
2093
		if StaggerHit.Value == true or Stagger.Value == true or Stun.Value == true then
2094
			break
2095
		end
2096
	end
2097
	CreateSound("907328384", Character, 10, 1)
2098
    wait(1.4)
2099
	CreateSound("201858168",workspace, 5, MRANDOM(15, 16) / 10)
2100
    SIZE = 25
2101
	MagicBlock("Really red", "Neon", Head.CFrame * 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), SIZE, SIZE, SIZE, SIZE / 3, SIZE / 3, SIZE / 3, 0.05)
2102
	MagicBlock("Really black", "Neon", Head.CFrame * 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), SIZE * 0.75, SIZE * 0.75, SIZE * 0.75, 30, 30, 30, 0.05)
2103
    wait(0.6)
2104
    SIZE = 800
2105
	MagicBlock("Really red", "Neon", Head.CFrame * 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), SIZE, SIZE, SIZE, SIZE / 3, SIZE / 3, SIZE / 3, 0.05)
2106
	MagicBlock("Really black", "Neon", Head.CFrame * 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), SIZE * 0.75, SIZE * 0.75, SIZE * 0.75, 500, 500, 500, 0.05)
2107
    SIZE = SIZE - 200
2108
	MagicBlock("Really red", "Neon", Head.CFrame * 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), SIZE, SIZE, SIZE, SIZE / 3, SIZE / 3, SIZE / 3, 0.05)
2109
	MagicBlock("Really black", "Neon", Head.CFrame * 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), SIZE * 0.75, SIZE * 0.75, SIZE * 0.75, 400, 400, 400, 0.05)
2110
    SIZE = SIZE - 200
2111
	MagicBlock("Really red", "Neon", Head.CFrame * 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), SIZE, SIZE, SIZE, SIZE / 3, SIZE / 3, SIZE / 3, 0.05)
2112
	MagicBlock("Really black", "Neon", Head.CFrame * 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), SIZE * 0.75, SIZE * 0.75, SIZE * 0.75, 300, 300, 300, 0.05)
2113
MagnitudeDamage(HITWEAPONSOUNDS[MRANDOM(1, #HITWEAPONSOUNDS)], HITARMORSOUNDS[MRANDOM(1, #HITARMORSOUNDS)], HITBLOCKSOUNDS[MRANDOM(1, #HITBLOCKSOUNDS)], HITPLAYERSOUNDS[MRANDOM(1, #HITPLAYERSOUNDS)], 1, 1, 1, 1, Head, 3000000000000000, false, 100, 100, 0, "Normal", RootPart, 0.5, 1, MRANDOM(50, 70), nil, true, false, nil, 0, 0, false)
2114
	for i=0, 1, 0.1 / Animation_Speed*5 do
2115
		Swait()
2116
		local Pos = HitboxPart
2117
		local Offset = HitboxPart.CFrame * CF(0, 0.1 * Player_Size, 0)
2118
		local Color = "Cyan"
2119
		local Material = "Neon"
2120
		local TheDelay = 0.01
2121
		local Height = 6.2 * Player_Size
2122
		BLCF = Offset
2123
			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)
2124
			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)
2125
			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)
2126
			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)
2127
			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)
2128
			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)
2129
			HandleWeld.C0 = Clerp(HandleWeld.C0, CF(0 * Player_Size, -1 * Player_Size, 0 * Player_Size) * ANGLES(RAD(-90), RAD(90), RAD(0)), 0.2 / Animation_Speed)
2130
		if StaggerHit.Value == true or Stagger.Value == true or Stun.Value == true then
2131
			break
2132
		end
2133
	end
2134
	BLCF = nil
2135
	SCFR = nil
2136
	ATTACK = false
2137
    Humanoid.WalkSpeed = 20
2138
end
2139
2140
function Attack1()
2141
	ATTACK = true
2142
	for i=0, 1, 0.1 / Animation_Speed do
2143
		Swait()
2144
			RootJoint.C0 = Clerp(RootJoint.C0, ROOTC0 * CF(0.05 * Player_Size, 0 * Player_Size, -0.1 * Player_Size) * ANGLES(RAD(10), RAD(0), RAD(-40)), 0.2 * (Humanoid.WalkSpeed / 16) / Animation_Speed)
2145
			Neck.C0 = Clerp(Neck.C0, NECKC0 * CF(0 * Player_Size, 0 * Player_Size, 0 + ((1 * Player_Size) - 1)) * ANGLES(RAD(0), RAD(0), RAD(40)) * ANGLES(RAD(-5), RAD(0), RAD(0)), 0.2 * (Humanoid.WalkSpeed / 16) / Animation_Speed)
2146
		    RightShoulder.C0 = Clerp(RightShoulder.C0, CF(0.25 * Player_Size, 0.5 * Player_Size, -1 * Player_Size) * ANGLES(RAD(70), RAD(-55), RAD(-100)) * ANGLES(RAD(20), RAD(25), RAD(-15)) * RIGHTSHOULDERC0, 0.4 / Animation_Speed)
2147
			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)
2148
			RightHip.C0 = Clerp(RightHip.C0, CF(0.95 * Player_Size, -1 * Player_Size, -0.5 * Player_Size) * ANGLES(RAD(0), RAD(130), RAD(0)) * ANGLES(RAD(-1.25 - 2.5), RAD(0), RAD(0)), 0.2 * (Humanoid.WalkSpeed / 16) / Animation_Speed)
2149
			LeftHip.C0 = Clerp(LeftHip.C0, CF(-1 * Player_Size, -0.9 * Player_Size, 0.25 * Player_Size) * ANGLES(RAD(0), RAD(-50), RAD(0)) * ANGLES(RAD(-2.5 + 2.5), RAD(0), RAD(0)), 0.2 * (Humanoid.WalkSpeed / 16) / Animation_Speed)
2150
			HandleWeld.C0 = Clerp(HandleWeld.C0, CF(0 * Player_Size, -1 * Player_Size, 0 * Player_Size) * ANGLES(RAD(-90), RAD(90), RAD(0)), 0.15 * (Humanoid.WalkSpeed / 16) / Animation_Speed)
2151
		if StaggerHit.Value == true or Stagger.Value == true or Stun.Value == true then
2152
			break
2153
		end
2154
	end
2155
	CreateSound("971125740",Head, 1.2, MRANDOM(7, 9) / 10)
2156
	for i=0, 1, 0.1 / Animation_Speed*5 do
2157
		Swait()
2158
		local Pos = HitboxPart
2159
		local Offset = HitboxPart.CFrame * CF(0, 0.1 * Player_Size, 0)
2160
		local Color = "Cyan"
2161
		local Material = "Neon"
2162
		local TheDelay = 0.01
2163
		local Height = 6.2 * Player_Size
2164
		BLCF = Offset
2165
			RootJoint.C0 = Clerp(RootJoint.C0, ROOTC0 * CF(0.05 * Player_Size, 0 * Player_Size, -0.1 * Player_Size) * ANGLES(RAD(10), RAD(0), RAD(-40)), 0.2 * (Humanoid.WalkSpeed / 16) / Animation_Speed)
2166
			Neck.C0 = Clerp(Neck.C0, NECKC0 * CF(0 * Player_Size, 0 * Player_Size, 0 + ((1 * Player_Size) - 1)) * ANGLES(RAD(0), RAD(0), RAD(40)) * ANGLES(RAD(-5), RAD(0), RAD(0)), 0.2 * (Humanoid.WalkSpeed / 16) / Animation_Speed)
2167
		    RightShoulder.C0 = Clerp(RightShoulder.C0, CF(0.25 * Player_Size, 0.5 * Player_Size, -1 * Player_Size) * ANGLES(RAD(0), RAD(-55), RAD(-100)) * ANGLES(RAD(20), RAD(25), RAD(-15)) * RIGHTSHOULDERC0, 0.4 / Animation_Speed)
2168
			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)
2169
			RightHip.C0 = Clerp(RightHip.C0, CF(0.95 * Player_Size, -1 * Player_Size, -0.5 * Player_Size) * ANGLES(RAD(0), RAD(130), RAD(0)) * ANGLES(RAD(-1.25 - 2.5), RAD(0), RAD(0)), 0.2 * (Humanoid.WalkSpeed / 16) / Animation_Speed)
2170
			LeftHip.C0 = Clerp(LeftHip.C0, CF(-1 * Player_Size, -0.9 * Player_Size, 0.25 * Player_Size) * ANGLES(RAD(0), RAD(-50), RAD(0)) * ANGLES(RAD(-2.5 + 2.5), RAD(0), RAD(0)), 0.2 * (Humanoid.WalkSpeed / 16) / Animation_Speed)
2171
			HandleWeld.C0 = Clerp(HandleWeld.C0, CF(0 * Player_Size, -1 * Player_Size, 0 * Player_Size) * ANGLES(RAD(-90), RAD(90), RAD(0)), 0.15 * (Humanoid.WalkSpeed / 16) / Animation_Speed)
2172
		if StaggerHit.Value == true or Stagger.Value == true or Stun.Value == true then
2173
			break
2174
		end
2175
	    local FIREEFFECTCOLORS = {"White", "Really black"}
2176
MagnitudeDamage(HITWEAPONSOUNDS[MRANDOM(1, #HITWEAPONSOUNDS)], HITARMORSOUNDS[MRANDOM(1, #HITARMORSOUNDS)], HITBLOCKSOUNDS[MRANDOM(1, #HITBLOCKSOUNDS)], HITPLAYERSOUNDS[MRANDOM(1, #HITPLAYERSOUNDS)], 1, 1, 1, 1, Head, 30, false, 50, 70, 500, "Normal", RootPart, 0.5, 1, MRANDOM(50, 70), nil, true, false, nil, 0, 0, false)
2177
		MagicBlock(FIREEFFECTCOLORS[MRANDOM(1, #FIREEFFECTCOLORS)], "Neon", RightArm.CFrame * CF(0 * Player_Size, MRANDOM(-15, -10) / 10 * Player_Size, 0 * Player_Size) * ANGLES(RAD(90), 0, RAD(MRANDOM(-360, 360))), CF(0, 0, -0.1) * ANGLES(0, 0, RAD(MRANDOM(-20, 20))), VT(0, 1, 0), 50000, 50000, 50000, -1, -1, -1, 0.065)
2178
		MagicBlock(FIREEFFECTCOLORS[MRANDOM(1, #FIREEFFECTCOLORS)], "Neon", RightArm.CFrame * CF(0 * Player_Size, MRANDOM(-15, -10) / 10 * Player_Size, 0 * Player_Size) * ANGLES(RAD(90), 0, RAD(MRANDOM(-360, 360))), CF(0, 0, -0.1) * ANGLES(0, 0, RAD(MRANDOM(-20, 20))), VT(0, 1, 0), 50000, 50000, 50000, -1, -1, -1, 0.065)
2179
		--MagicBlock("White", "Neon", Head.CFrame * 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), 1500, 1500, 1500, 30, 30, 30, 0.1)
2180
	end
2181
	BLCF = nil
2182
	SCFR = nil
2183
	ATTACK = false
2184
end
2185
2186
function Attack2()
2187
	ATTACK = true
2188
	for i=0, 1, 0.1 / Animation_Speed do
2189
		Swait()
2190
			RootJoint.C0 = Clerp(RootJoint.C0, ROOTC0 * CF(0.05 * Player_Size, 0 * Player_Size, -0.1 * Player_Size) * ANGLES(RAD(10), RAD(0), RAD(-40)), 0.2 * (Humanoid.WalkSpeed / 16) / Animation_Speed)
2191
			Neck.C0 = Clerp(Neck.C0, NECKC0 * CF(0 * Player_Size, 0 * Player_Size, 0 + ((1 * Player_Size) - 1)) * ANGLES(RAD(0), RAD(0), RAD(40)) * ANGLES(RAD(-5), RAD(0), RAD(0)), 0.2 * (Humanoid.WalkSpeed / 16) / Animation_Speed)
2192
		    RightShoulder.C0 = Clerp(RightShoulder.C0, CF(0.25 * Player_Size, 0.5 * Player_Size, -1 * Player_Size) * ANGLES(RAD(70), RAD(-55), RAD(-100)) * ANGLES(RAD(20), RAD(25), RAD(-15)) * RIGHTSHOULDERC0, 0.4 / Animation_Speed)
2193
			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)
2194
			RightHip.C0 = Clerp(RightHip.C0, CF(0.95 * Player_Size, -1 * Player_Size, -0.5 * Player_Size) * ANGLES(RAD(0), RAD(130), RAD(0)) * ANGLES(RAD(-1.25 - 2.5), RAD(0), RAD(0)), 0.2 * (Humanoid.WalkSpeed / 16) / Animation_Speed)
2195
			LeftHip.C0 = Clerp(LeftHip.C0, CF(-1 * Player_Size, -0.9 * Player_Size, 0.25 * Player_Size) * ANGLES(RAD(0), RAD(-50), RAD(0)) * ANGLES(RAD(-2.5 + 2.5), RAD(0), RAD(0)), 0.2 * (Humanoid.WalkSpeed / 16) / Animation_Speed)
2196
			HandleWeld.C0 = Clerp(HandleWeld.C0, CF(0 * Player_Size, -1 * Player_Size, 0 * Player_Size) * ANGLES(RAD(-90), RAD(90), RAD(0)), 0.15 * (Humanoid.WalkSpeed / 16) / Animation_Speed)
2197
		if StaggerHit.Value == true or Stagger.Value == true or Stun.Value == true then
2198
			break
2199
		end
2200
	end
2201
	CreateSound("971126018",Head, 1.2, MRANDOM(7, 9) / 10)
2202
	for i=0, 1, 0.1 / Animation_Speed*5 do
2203
		Swait()
2204
		local Pos = HitboxPart
2205
		local Offset = HitboxPart.CFrame * CF(0, 0.1 * Player_Size, 0)
2206
		local Color = "Cyan"
2207
		local Material = "Neon"
2208
		local TheDelay = 0.01
2209
		local Height = 6.2 * Player_Size
2210
		BLCF = Offset
2211
			RootJoint.C0 = Clerp(RootJoint.C0, ROOTC0 * CF(0.05 * Player_Size, 0 * Player_Size, -0.1 * Player_Size) * ANGLES(RAD(10), RAD(0), RAD(-40)), 0.2 * (Humanoid.WalkSpeed / 16) / Animation_Speed)
2212
			Neck.C0 = Clerp(Neck.C0, NECKC0 * CF(0 * Player_Size, 0 * Player_Size, 0 + ((1 * Player_Size) - 1)) * ANGLES(RAD(0), RAD(0), RAD(40)) * ANGLES(RAD(-5), RAD(0), RAD(0)), 0.2 * (Humanoid.WalkSpeed / 16) / Animation_Speed)
2213
		    RightShoulder.C0 = Clerp(RightShoulder.C0, CF(0.25 * Player_Size, 0.5 * Player_Size, -1 * Player_Size) * ANGLES(RAD(0), RAD(-55), RAD(-100)) * ANGLES(RAD(20), RAD(25), RAD(-15)) * RIGHTSHOULDERC0, 0.4 / Animation_Speed)
2214
			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)
2215
			RightHip.C0 = Clerp(RightHip.C0, CF(0.95 * Player_Size, -1 * Player_Size, -0.5 * Player_Size) * ANGLES(RAD(0), RAD(130), RAD(0)) * ANGLES(RAD(-1.25 - 2.5), RAD(0), RAD(0)), 0.2 * (Humanoid.WalkSpeed / 16) / Animation_Speed)
2216
			LeftHip.C0 = Clerp(LeftHip.C0, CF(-1 * Player_Size, -0.9 * Player_Size, 0.25 * Player_Size) * ANGLES(RAD(0), RAD(-50), RAD(0)) * ANGLES(RAD(-2.5 + 2.5), RAD(0), RAD(0)), 0.2 * (Humanoid.WalkSpeed / 16) / Animation_Speed)
2217
			HandleWeld.C0 = Clerp(HandleWeld.C0, CF(0 * Player_Size, -1 * Player_Size, 0 * Player_Size) * ANGLES(RAD(-90), RAD(90), RAD(0)), 0.15 * (Humanoid.WalkSpeed / 16) / Animation_Speed)
2218
		if StaggerHit.Value == true or Stagger.Value == true or Stun.Value == true then
2219
			break
2220
		end
2221
	    local FIREEFFECTCOLORS = {"Really red", "Really black"}
2222
MagnitudeDamage(HITWEAPONSOUNDS[MRANDOM(1, #HITWEAPONSOUNDS)], HITARMORSOUNDS[MRANDOM(1, #HITARMORSOUNDS)], HITBLOCKSOUNDS[MRANDOM(1, #HITBLOCKSOUNDS)], HITPLAYERSOUNDS[MRANDOM(1, #HITPLAYERSOUNDS)], 1, 1, 1, 1, Head, 30, false, 100, 100,-5, "Normal", RootPart, 0.5, 1, MRANDOM(50, 70), nil, true, false, nil, 0, 0, false)
2223
		MagicBlock(FIREEFFECTCOLORS[MRANDOM(1, #FIREEFFECTCOLORS)], "Neon", RightArm.CFrame * CF(0 * Player_Size, MRANDOM(-15, -10) / 10 * Player_Size, 0 * Player_Size) * ANGLES(RAD(90), 0, RAD(MRANDOM(-360, 360))), CF(0, 0, -0.1) * ANGLES(0, 0, RAD(MRANDOM(-20, 20))), VT(0, 1, 0), 50000, 50000, 50000, -1, -1, -1, 0.065)
2224
		MagicBlock(FIREEFFECTCOLORS[MRANDOM(1, #FIREEFFECTCOLORS)], "Neon", RightArm.CFrame * CF(0 * Player_Size, MRANDOM(-15, -10) / 10 * Player_Size, 0 * Player_Size) * ANGLES(RAD(90), 0, RAD(MRANDOM(-360, 360))), CF(0, 0, -0.1) * ANGLES(0, 0, RAD(MRANDOM(-20, 20))), VT(0, 1, 0), 50000, 50000, 50000, -1, -1, -1, 0.065)
2225
		--MagicBlock("White", "Neon", Head.CFrame * 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), 1500, 1500, 1500, 30, 30, 30, 0.1)
2226
	end
2227
	BLCF = nil
2228
	SCFR = nil
2229
	ATTACK = false
2230
end
2231
2232
function Attack3()
2233
	ATTACK = true
2234
	for i=0, 1, 0.1 / Animation_Speed do
2235
		Swait()
2236
			RootJoint.C0 = Clerp(RootJoint.C0, ROOTC0 * CF(0.05 * Player_Size, 0 * Player_Size, -0.1 * Player_Size) * ANGLES(RAD(10), RAD(0), RAD(-40)), 0.2 * (Humanoid.WalkSpeed / 16) / Animation_Speed)
2237
			Neck.C0 = Clerp(Neck.C0, NECKC0 * CF(0 * Player_Size, 0 * Player_Size, 0 + ((1 * Player_Size) - 1)) * ANGLES(RAD(0), RAD(0), RAD(40)) * ANGLES(RAD(-5), RAD(0), RAD(0)), 0.2 * (Humanoid.WalkSpeed / 16) / Animation_Speed)
2238
		    RightShoulder.C0 = Clerp(RightShoulder.C0, CF(0.25 * Player_Size, 0.5 * Player_Size, -1 * Player_Size) * ANGLES(RAD(70), RAD(-55), RAD(-100)) * ANGLES(RAD(20), RAD(25), RAD(-15)) * RIGHTSHOULDERC0, 0.4 / Animation_Speed)
2239
			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)
2240
			RightHip.C0 = Clerp(RightHip.C0, CF(0.95 * Player_Size, -1 * Player_Size, -0.5 * Player_Size) * ANGLES(RAD(0), RAD(130), RAD(0)) * ANGLES(RAD(-1.25 - 2.5), RAD(0), RAD(0)), 0.2 * (Humanoid.WalkSpeed / 16) / Animation_Speed)
2241
			LeftHip.C0 = Clerp(LeftHip.C0, CF(-1 * Player_Size, -0.9 * Player_Size, 0.25 * Player_Size) * ANGLES(RAD(0), RAD(-50), RAD(0)) * ANGLES(RAD(-2.5 + 2.5), RAD(0), RAD(0)), 0.2 * (Humanoid.WalkSpeed / 16) / Animation_Speed)
2242
			HandleWeld.C0 = Clerp(HandleWeld.C0, CF(0 * Player_Size, -1 * Player_Size, 0 * Player_Size) * ANGLES(RAD(-90), RAD(90), RAD(0)), 0.15 * (Humanoid.WalkSpeed / 16) / Animation_Speed)
2243
		if StaggerHit.Value == true or Stagger.Value == true or Stun.Value == true then
2244
			break
2245
		end
2246
	end
2247
	CreateSound("260433487",Head, 1.2, MRANDOM(7, 9) / 10)
2248
	for i=0, 1, 0.1 / Animation_Speed*5 do
2249
		Swait()
2250
		local Pos = HitboxPart
2251
		local Offset = HitboxPart.CFrame * CF(0, 0.1 * Player_Size, 0)
2252
		local Color = "Cyan"
2253
		local Material = "Neon"
2254
		local TheDelay = 0.01
2255
		local Height = 6.2 * Player_Size
2256
		BLCF = Offset
2257
			RootJoint.C0 = Clerp(RootJoint.C0, ROOTC0 * CF(0.05 * Player_Size, 0 * Player_Size, -0.1 * Player_Size) * ANGLES(RAD(10), RAD(0), RAD(-40)), 0.2 * (Humanoid.WalkSpeed / 16) / Animation_Speed)
2258
			Neck.C0 = Clerp(Neck.C0, NECKC0 * CF(0 * Player_Size, 0 * Player_Size, 0 + ((1 * Player_Size) - 1)) * ANGLES(RAD(0), RAD(0), RAD(40)) * ANGLES(RAD(-5), RAD(0), RAD(0)), 0.2 * (Humanoid.WalkSpeed / 16) / Animation_Speed)
2259
		    RightShoulder.C0 = Clerp(RightShoulder.C0, CF(0.25 * Player_Size, 0.5 * Player_Size, -1 * Player_Size) * ANGLES(RAD(0), RAD(-55), RAD(-100)) * ANGLES(RAD(20), RAD(25), RAD(-15)) * RIGHTSHOULDERC0, 0.4 / Animation_Speed)
2260
			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)
2261
			RightHip.C0 = Clerp(RightHip.C0, CF(0.95 * Player_Size, -1 * Player_Size, -0.5 * Player_Size) * ANGLES(RAD(0), RAD(130), RAD(0)) * ANGLES(RAD(-1.25 - 2.5), RAD(0), RAD(0)), 0.2 * (Humanoid.WalkSpeed / 16) / Animation_Speed)
2262
			LeftHip.C0 = Clerp(LeftHip.C0, CF(-1 * Player_Size, -0.9 * Player_Size, 0.25 * Player_Size) * ANGLES(RAD(0), RAD(-50), RAD(0)) * ANGLES(RAD(-2.5 + 2.5), RAD(0), RAD(0)), 0.2 * (Humanoid.WalkSpeed / 16) / Animation_Speed)
2263
			HandleWeld.C0 = Clerp(HandleWeld.C0, CF(0 * Player_Size, -1 * Player_Size, 0 * Player_Size) * ANGLES(RAD(-90), RAD(90), RAD(0)), 0.15 * (Humanoid.WalkSpeed / 16) / Animation_Speed)
2264
		if StaggerHit.Value == true or Stagger.Value == true or Stun.Value == true then
2265
			break
2266
		end
2267
	    local FIREEFFECTCOLORS = {"Steel blue", "Really black"}
2268
MagnitudeDamage(HITWEAPONSOUNDS[MRANDOM(1, #HITWEAPONSOUNDS)], HITARMORSOUNDS[MRANDOM(1, #HITARMORSOUNDS)], HITBLOCKSOUNDS[MRANDOM(1, #HITBLOCKSOUNDS)], HITPLAYERSOUNDS[MRANDOM(1, #HITPLAYERSOUNDS)], 1, 1, 1, 1, Head, 30, false, 0, 0,-5, "Normal", RootPart, 0.5, 1, MRANDOM(50, 70), nil, true, false, nil, 0, 0, false)
2269
		MagicBlock(FIREEFFECTCOLORS[MRANDOM(1, #FIREEFFECTCOLORS)], "Neon", RightArm.CFrame * CF(0 * Player_Size, MRANDOM(-15, -10) / 10 * Player_Size, 0 * Player_Size) * ANGLES(RAD(90), 0, RAD(MRANDOM(-360, 360))), CF(0, 0, -0.1) * ANGLES(0, 0, RAD(MRANDOM(-20, 20))), VT(0, 1, 0), 50000, 50000, 50000, -1, -1, -1, 0.065)
2270
		MagicBlock(FIREEFFECTCOLORS[MRANDOM(1, #FIREEFFECTCOLORS)], "Neon", RightArm.CFrame * CF(0 * Player_Size, MRANDOM(-15, -10) / 10 * Player_Size, 0 * Player_Size) * ANGLES(RAD(90), 0, RAD(MRANDOM(-360, 360))), CF(0, 0, -0.1) * ANGLES(0, 0, RAD(MRANDOM(-20, 20))), VT(0, 1, 0), 50000, 50000, 50000, -1, -1, -1, 0.065)
2271
		--MagicBlock("White", "Neon", Head.CFrame * 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), 1500, 1500, 1500, 30, 30, 30, 0.1)
2272
	end
2273
	BLCF = nil
2274
	SCFR = nil
2275
	ATTACK = false
2276
end
2277
2278
function Attack4()
2279
	ATTACK = true
2280
	for i=0, 1, 0.1 / Animation_Speed do
2281
		Swait()
2282
			RootJoint.C0 = Clerp(RootJoint.C0, ROOTC0 * CF(0.05 * Player_Size, 0 * Player_Size, -0.1 * Player_Size) * ANGLES(RAD(10), RAD(0), RAD(-40)), 0.2 * (Humanoid.WalkSpeed / 16) / Animation_Speed)
2283
			Neck.C0 = Clerp(Neck.C0, NECKC0 * CF(0 * Player_Size, 0 * Player_Size, 0 + ((1 * Player_Size) - 1)) * ANGLES(RAD(0), RAD(0), RAD(40)) * ANGLES(RAD(-5), RAD(0), RAD(0)), 0.2 * (Humanoid.WalkSpeed / 16) / Animation_Speed)
2284
		    RightShoulder.C0 = Clerp(RightShoulder.C0, CF(0.25 * Player_Size, 0.5 * Player_Size, -1 * Player_Size) * ANGLES(RAD(70), RAD(-55), RAD(-100)) * ANGLES(RAD(20), RAD(25), RAD(-15)) * RIGHTSHOULDERC0, 0.4 / Animation_Speed)
2285
			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)
2286
			RightHip.C0 = Clerp(RightHip.C0, CF(0.95 * Player_Size, -1 * Player_Size, -0.5 * Player_Size) * ANGLES(RAD(0), RAD(130), RAD(0)) * ANGLES(RAD(-1.25 - 2.5), RAD(0), RAD(0)), 0.2 * (Humanoid.WalkSpeed / 16) / Animation_Speed)
2287
			LeftHip.C0 = Clerp(LeftHip.C0, CF(-1 * Player_Size, -0.9 * Player_Size, 0.25 * Player_Size) * ANGLES(RAD(0), RAD(-50), RAD(0)) * ANGLES(RAD(-2.5 + 2.5), RAD(0), RAD(0)), 0.2 * (Humanoid.WalkSpeed / 16) / Animation_Speed)
2288
			HandleWeld.C0 = Clerp(HandleWeld.C0, CF(0 * Player_Size, -1 * Player_Size, 0 * Player_Size) * ANGLES(RAD(-90), RAD(90), RAD(0)), 0.15 * (Humanoid.WalkSpeed / 16) / Animation_Speed)
2289
		if StaggerHit.Value == true or Stagger.Value == true or Stun.Value == true then
2290
			break
2291
		end
2292
	end
2293
	CreateSound("319467359",Head, 1.2, MRANDOM(7, 9) / 10)
2294
	for i=0, 1, 0.1 / Animation_Speed*5 do
2295
		Swait()
2296
		local Pos = HitboxPart
2297
		local Offset = HitboxPart.CFrame * CF(0, 0.1 * Player_Size, 0)
2298
		local Color = "Cyan"
2299
		local Material = "Neon"
2300
		local TheDelay = 0.01
2301
		local Height = 6.2 * Player_Size
2302
		BLCF = Offset
2303
			RootJoint.C0 = Clerp(RootJoint.C0, ROOTC0 * CF(0.05 * Player_Size, 0 * Player_Size, -0.1 * Player_Size) * ANGLES(RAD(10), RAD(0), RAD(-40)), 0.2 * (Humanoid.WalkSpeed / 16) / Animation_Speed)
2304
			Neck.C0 = Clerp(Neck.C0, NECKC0 * CF(0 * Player_Size, 0 * Player_Size, 0 + ((1 * Player_Size) - 1)) * ANGLES(RAD(0), RAD(0), RAD(40)) * ANGLES(RAD(-5), RAD(0), RAD(0)), 0.2 * (Humanoid.WalkSpeed / 16) / Animation_Speed)
2305
		    RightShoulder.C0 = Clerp(RightShoulder.C0, CF(0.25 * Player_Size, 0.5 * Player_Size, -1 * Player_Size) * ANGLES(RAD(0), RAD(-55), RAD(-100)) * ANGLES(RAD(20), RAD(25), RAD(-15)) * RIGHTSHOULDERC0, 0.4 / Animation_Speed)
2306
			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)
2307
			RightHip.C0 = Clerp(RightHip.C0, CF(0.95 * Player_Size, -1 * Player_Size, -0.5 * Player_Size) * ANGLES(RAD(0), RAD(130), RAD(0)) * ANGLES(RAD(-1.25 - 2.5), RAD(0), RAD(0)), 0.2 * (Humanoid.WalkSpeed / 16) / Animation_Speed)
2308
			LeftHip.C0 = Clerp(LeftHip.C0, CF(-1 * Player_Size, -0.9 * Player_Size, 0.25 * Player_Size) * ANGLES(RAD(0), RAD(-50), RAD(0)) * ANGLES(RAD(-2.5 + 2.5), RAD(0), RAD(0)), 0.2 * (Humanoid.WalkSpeed / 16) / Animation_Speed)
2309
			HandleWeld.C0 = Clerp(HandleWeld.C0, CF(0 * Player_Size, -1 * Player_Size, 0 * Player_Size) * ANGLES(RAD(-90), RAD(90), RAD(0)), 0.15 * (Humanoid.WalkSpeed / 16) / Animation_Speed)
2310
		if StaggerHit.Value == true or Stagger.Value == true or Stun.Value == true then
2311
			break
2312
		end
2313
	    local FIREEFFECTCOLORS = {"Sea green", "Really black"}
2314
MagnitudeDamage(HITWEAPONSOUNDS[MRANDOM(1, #HITWEAPONSOUNDS)], HITARMORSOUNDS[MRANDOM(1, #HITARMORSOUNDS)], HITBLOCKSOUNDS[MRANDOM(1, #HITBLOCKSOUNDS)], HITPLAYERSOUNDS[MRANDOM(1, #HITPLAYERSOUNDS)], 1, 1, 1, 1, Head, 30, false, 1, 1, 0, "Normal", RootPart, 0.5, 1, MRANDOM(50, 70), nil, true, false, nil, 0, 0, false)
2315
		MagicBlock(FIREEFFECTCOLORS[MRANDOM(1, #FIREEFFECTCOLORS)], "Neon", RightArm.CFrame * CF(0 * Player_Size, MRANDOM(-15, -10) / 10 * Player_Size, 0 * Player_Size) * ANGLES(RAD(90), 0, RAD(MRANDOM(-360, 360))), CF(0, 0, -0.1) * ANGLES(0, 0, RAD(MRANDOM(-20, 20))), VT(0, 1, 0), 50000, 50000, 50000, -1, -1, -1, 0.065)
2316
		MagicBlock(FIREEFFECTCOLORS[MRANDOM(1, #FIREEFFECTCOLORS)], "Neon", RightArm.CFrame * CF(0 * Player_Size, MRANDOM(-15, -10) / 10 * Player_Size, 0 * Player_Size) * ANGLES(RAD(90), 0, RAD(MRANDOM(-360, 360))), CF(0, 0, -0.1) * ANGLES(0, 0, RAD(MRANDOM(-20, 20))), VT(0, 1, 0), 50000, 50000, 50000, -1, -1, -1, 0.065)
2317
		--MagicBlock("White", "Neon", Head.CFrame * 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), 1500, 1500, 1500, 30, 30, 30, 0.1)
2318
	end
2319
	BLCF = nil
2320
	SCFR = nil
2321
	ATTACK = false
2322
end
2323
2324
function grant()
2325
	ATTACK = true
2326
	for i=0, 1, 0.1 / Animation_Speed do
2327
		Swait()
2328
			RootJoint.C0 = Clerp(RootJoint.C0, ROOTC0 * CF(0.05 * Player_Size, 0 * Player_Size, -0.1 * Player_Size) * ANGLES(RAD(10), RAD(0), RAD(-40)), 0.2 * (Humanoid.WalkSpeed / 16) / Animation_Speed)
2329
			Neck.C0 = Clerp(Neck.C0, NECKC0 * CF(0 * Player_Size, 0 * Player_Size, 0 + ((1 * Player_Size) - 1)) * ANGLES(RAD(0), RAD(0), RAD(40)) * ANGLES(RAD(-5), RAD(0), RAD(0)), 0.2 * (Humanoid.WalkSpeed / 16) / Animation_Speed)
2330
		    RightShoulder.C0 = Clerp(RightShoulder.C0, CF(0.25 * Player_Size, 0.5 * Player_Size, -1 * Player_Size) * ANGLES(RAD(70), RAD(-55), RAD(-100)) * ANGLES(RAD(20), RAD(25), RAD(-15)) * RIGHTSHOULDERC0, 0.4 / Animation_Speed)
2331
			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)
2332
			RightHip.C0 = Clerp(RightHip.C0, CF(0.95 * Player_Size, -1 * Player_Size, -0.5 * Player_Size) * ANGLES(RAD(0), RAD(130), RAD(0)) * ANGLES(RAD(-1.25 - 2.5), RAD(0), RAD(0)), 0.2 * (Humanoid.WalkSpeed / 16) / Animation_Speed)
2333
			LeftHip.C0 = Clerp(LeftHip.C0, CF(-1 * Player_Size, -0.9 * Player_Size, 0.25 * Player_Size) * ANGLES(RAD(0), RAD(-50), RAD(0)) * ANGLES(RAD(-2.5 + 2.5), RAD(0), RAD(0)), 0.2 * (Humanoid.WalkSpeed / 16) / Animation_Speed)
2334
			HandleWeld.C0 = Clerp(HandleWeld.C0, CF(0 * Player_Size, -1 * Player_Size, 0 * Player_Size) * ANGLES(RAD(-90), RAD(90), RAD(0)), 0.15 * (Humanoid.WalkSpeed / 16) / Animation_Speed)
2335
		if StaggerHit.Value == true or Stagger.Value == true or Stun.Value == true then
2336
			break
2337
		end
2338
	end
2339
	CreateSound("2800815",Head, 1.2, MRANDOM(7, 9) / 10)
2340
	for i=0, 1, 0.1 / Animation_Speed*5 do
2341
		Swait()
2342
		local Pos = HitboxPart
2343
		local Offset = HitboxPart.CFrame * CF(0, 0.1 * Player_Size, 0)
2344
		local Color = "Cyan"
2345
		local Material = "Neon"
2346
		local TheDelay = 0.01
2347
		local Height = 6.2 * Player_Size
2348
		BLCF = Offset
2349
			RootJoint.C0 = Clerp(RootJoint.C0, ROOTC0 * CF(0.05 * Player_Size, 0 * Player_Size, -0.1 * Player_Size) * ANGLES(RAD(10), RAD(0), RAD(-40)), 0.2 * (Humanoid.WalkSpeed / 16) / Animation_Speed)
2350
			Neck.C0 = Clerp(Neck.C0, NECKC0 * CF(0 * Player_Size, 0 * Player_Size, 0 + ((1 * Player_Size) - 1)) * ANGLES(RAD(0), RAD(0), RAD(40)) * ANGLES(RAD(-5), RAD(0), RAD(0)), 0.2 * (Humanoid.WalkSpeed / 16) / Animation_Speed)
2351
		    RightShoulder.C0 = Clerp(RightShoulder.C0, CF(0.25 * Player_Size, 0.5 * Player_Size, -1 * Player_Size) * ANGLES(RAD(0), RAD(-55), RAD(-100)) * ANGLES(RAD(20), RAD(25), RAD(-15)) * RIGHTSHOULDERC0, 0.4 / Animation_Speed)
2352
			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)
2353
			RightHip.C0 = Clerp(RightHip.C0, CF(0.95 * Player_Size, -1 * Player_Size, -0.5 * Player_Size) * ANGLES(RAD(0), RAD(130), RAD(0)) * ANGLES(RAD(-1.25 - 2.5), RAD(0), RAD(0)), 0.2 * (Humanoid.WalkSpeed / 16) / Animation_Speed)
2354
			LeftHip.C0 = Clerp(LeftHip.C0, CF(-1 * Player_Size, -0.9 * Player_Size, 0.25 * Player_Size) * ANGLES(RAD(0), RAD(-50), RAD(0)) * ANGLES(RAD(-2.5 + 2.5), RAD(0), RAD(0)), 0.2 * (Humanoid.WalkSpeed / 16) / Animation_Speed)
2355
			HandleWeld.C0 = Clerp(HandleWeld.C0, CF(0 * Player_Size, -1 * Player_Size, 0 * Player_Size) * ANGLES(RAD(-90), RAD(90), RAD(0)), 0.15 * (Humanoid.WalkSpeed / 16) / Animation_Speed)
2356
		if StaggerHit.Value == true or Stagger.Value == true or Stun.Value == true then
2357
			break
2358
		end
2359
	    local FIREEFFECTCOLORS = {"White", "White"}
2360
MagnitudeDamage(HITWEAPONSOUNDS[MRANDOM(1, #HITWEAPONSOUNDS)], HITARMORSOUNDS[MRANDOM(1, #HITARMORSOUNDS)], HITBLOCKSOUNDS[MRANDOM(1, #HITBLOCKSOUNDS)], HITPLAYERSOUNDS[MRANDOM(1, #HITPLAYERSOUNDS)], 1, 1, 1, 1, Head, 10, false, 2, 2, 0, "Normal", RootPart, 0.5, 1, MRANDOM(50, 70), nil, true, false, nil, 0, 0, false)
2361
		MagicBlock(FIREEFFECTCOLORS[MRANDOM(1, #FIREEFFECTCOLORS)], "Neon", RightArm.CFrame * CF(0 * Player_Size, MRANDOM(-15, -10) / 10 * Player_Size, 0 * Player_Size) * ANGLES(RAD(90), 0, RAD(MRANDOM(-360, 360))), CF(0, 0, -0.1) * ANGLES(0, 0, RAD(MRANDOM(-20, 20))), VT(0, 1, 0), 50000, 50000, 50000, -1, -1, -1, 0.065)
2362
		MagicBlock(FIREEFFECTCOLORS[MRANDOM(1, #FIREEFFECTCOLORS)], "Neon", RightArm.CFrame * CF(0 * Player_Size, MRANDOM(-15, -10) / 10 * Player_Size, 0 * Player_Size) * ANGLES(RAD(90), 0, RAD(MRANDOM(-360, 360))), CF(0, 0, -0.1) * ANGLES(0, 0, RAD(MRANDOM(-20, 20))), VT(0, 1, 0), 50000, 50000, 50000, -1, -1, -1, 0.065)
2363
		--MagicBlock("White", "Neon", Head.CFrame * 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), 1500, 1500, 1500, 30, 30, 30, 0.1)
2364
	end
2365
	BLCF = nil
2366
	SCFR = nil
2367
	ATTACK = false
2368
end
2369
2370
function ray()
2371
	ATTACK = true
2372
	local FIREEFFECTCOLORS = {"Really black", "White", "Maroon"}
2373
	for i=0, 1, 0.1 / Animation_Speed do
2374
		Swait()
2375
		MagicBlock(FIREEFFECTCOLORS[MRANDOM(1, #FIREEFFECTCOLORS)], "Neon", LeftArm.CFrame * CF(0 * Player_Size, MRANDOM(-15, -10) / 10 * Player_Size, 0 * Player_Size) * ANGLES(RAD(90), 0, RAD(MRANDOM(-360, 360))), CF(0, 0, -0.1) * ANGLES(0, 0, RAD(MRANDOM(-20, 20))), VT(0, 1, 0), 1, 1, 1, -0.05, -0.05, -0.05, 0.05)
2376
		--MagicBlock(FIREEFFECTCOLORS[MRANDOM(1, #FIREEFFECTCOLORS)], "Neon", RootPart.CFrame * CF(0 * Player_Size, MRANDOM(-2, 2) * Player_Size, 0 * Player_Size) * ANGLES(0, RAD(MRANDOM(-360, 360)), 0), CF(0, MRANDOM(5, 10) / 100, 0) * ANGLES(0, RAD(MRANDOM(-10, 10)), 0), VT(MRANDOM(20, 40) / 10, 0, 0), 1, 1, 1, -0.05, -0.05, -0.05, 0.05)
2377
		RootJoint.C0 = Clerp(RootJoint.C0,ROOTC0 * CF(0 * Player_Size, 0 * Player_Size, -0.2 * Player_Size) * ANGLES(RAD(5), RAD(0), RAD(-40)), 0.4 / Animation_Speed)
2378
		Neck.C0 = Clerp(Neck.C0, NECKC0 * CF(0 * Player_Size, 0 * Player_Size, 0 + ((1 * Player_Size) - 1)) * ANGLES(RAD(0), RAD(0), RAD(35)) * ANGLES(RAD(2.5), RAD(0), RAD(0)), 0.4 / Animation_Speed)
2379
		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)
2380
		LeftShoulder.C0 = Clerp(LeftShoulder.C0, CF(-1.5 * Player_Size, 0.75 * Player_Size, -0.5 * Player_Size) * ANGLES(RAD(90), RAD(0), RAD(50)) * ANGLES(RAD(80), RAD(-20), RAD(-30)) * LEFTSHOULDERC0, 0.4 / Animation_Speed)
2381
		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)
2382
		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)
2383
		HandleWeld.C0 = Clerp(HandleWeld.C0, CF(0 * Player_Size, -1 * Player_Size, -0.25 * Player_Size) * ANGLES(RAD(-20), RAD(90), RAD(0)), 0.4 / Animation_Speed)
2384
		if StaggerHit.Value == true or Stagger.Value == true or Stun.Value == true then
2385
			break
2386
		end
2387
	end
2388
    local framed = CFrame.new(Mouse.hit.p.X,Mouse.hit.p.Y+250,Mouse.hit.p.Z)
2389
    local cloud = NewEffect(framed,"Cloud",BrickColor.new("Dark stone grey"),"http://www.roblox.com/asset/?id=111820358","",Vector3.new(1000,150,1000))
2390
	CreateSound("199978087", workspace, 10, MRANDOM(9, 11) / 10)
2391
	MagicBlock("Really black", "Neon", LeftArm.CFrame * CF(0 * Player_Size, -1 * Player_Size, 0 * Player_Size) * ANGLES(RAD(MRANDOM(-50, 50)), RAD(MRANDOM(-50, 50)), RAD(MRANDOM(-50, 50))), ANGLES(0, 0, 0), VT(0, 0, 0), 5, 5, 5, 0.5, 0.5, 0.5, 0.05)
2392
	MagicBlock("White", "Neon", LeftArm.CFrame * CF(0 * Player_Size, -1 * Player_Size, 0 * Player_Size) * ANGLES(RAD(MRANDOM(-50, 50)), RAD(MRANDOM(-50, 50)), RAD(MRANDOM(-50, 50))), ANGLES(0, 0, 0), VT(0, 0, 0), 0.5, 0.5, 0.5, 0.5, 0.5, 0.5, 0.05)
2393
	MagicBlock("Maroon", "Neon", LeftArm.CFrame * CF(0 * Player_Size, -1 * Player_Size, 0 * Player_Size) * ANGLES(RAD(MRANDOM(-50, 50)), RAD(MRANDOM(-50, 50)), RAD(MRANDOM(-50, 50))), ANGLES(0, 0, 0), VT(0, 0, 0), 0.05, 0.05, 0.05, 0.5, 0.5, 0.5, 0.05)
2394
	for i=0, 1, 0.1 / Animation_Speed do
2395
		Swait()
2396
		RootJoint.C0 = Clerp(RootJoint.C0,ROOTC0 * CF(0 * Player_Size, 0 * Player_Size, -0.2 * Player_Size) * ANGLES(RAD(5), RAD(0), RAD(-30)), 0.4 / Animation_Speed)
2397
		Neck.C0 = Clerp(Neck.C0, NECKC0 * CF(0 * Player_Size, 0 * Player_Size, 0 + ((1 * Player_Size) - 1)) * ANGLES(RAD(0), RAD(0), RAD(25)) * ANGLES(RAD(5), RAD(0), RAD(0)), 0.4 / Animation_Speed)
2398
		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)
2399
		LeftShoulder.C0 = Clerp(LeftShoulder.C0, CF(-1.5 * Player_Size, 0.25 * Player_Size, -0.25 * Player_Size) * ANGLES(RAD(90), RAD(0), RAD(-20 + MRANDOM(-2.5, 2.5))) * ANGLES(RAD(70 + MRANDOM(-2.5, 2.5)), RAD(40), RAD(0)) * LEFTSHOULDERC0, 0.4 / Animation_Speed)
2400
		RightHip.C0 = Clerp(RightHip.C0, CF(1 * Player_Size, -0.8 * Player_Size, -0.2 * Player_Size) * ANGLES(RAD(0), RAD(60), RAD(0)) * ANGLES(RAD(-10), RAD(0), RAD(-7.5)), 0.4 / Animation_Speed)
2401
		LeftHip.C0 = Clerp(LeftHip.C0, CF(-1 * Player_Size, -0.8 * Player_Size, 0.05 * Player_Size) * ANGLES(RAD(0), RAD(-50), RAD(0)) * ANGLES(RAD(-2.5), RAD(0), RAD(-12.5)), 0.4 / Animation_Speed)
2402
		HandleWeld.C0 = Clerp(HandleWeld.C0, CF(0 * Player_Size, -1 * Player_Size, -0.25 * Player_Size) * ANGLES(RAD(-20), RAD(90), RAD(0)), 0.4 / Animation_Speed)
2403
		--[[RootJoint.C0 = Clerp(RootJoint.C0,ROOTC0 * CF(0 * Player_Size, 0 * Player_Size, -0.2 * Player_Size) * ANGLES(RAD(5), RAD(0), RAD(40)), 0.4 / Animation_Speed)
2404
		Neck.C0 = Clerp(Neck.C0, NECKC0 * CF(0 * Player_Size, 0 * Player_Size, 0 + ((1 * Player_Size) - 1)) * ANGLES(RAD(0), RAD(0), RAD(-30)) * ANGLES(RAD(5), RAD(0), RAD(0)), 0.4 / Animation_Speed)
2405
		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)
2406
		LeftShoulder.C0 = Clerp(LeftShoulder.C0, CF(-1.5 * Player_Size, 0 * Player_Size, -0.25 * Player_Size) * ANGLES(RAD(90), RAD(0), RAD(-10 + MRANDOM(-2.5, 2.5))) * ANGLES(RAD(40 + MRANDOM(-2.5, 2.5)), RAD(70), RAD(20)) * LEFTSHOULDERC0, 0.4 / Animation_Speed)
2407
		RightHip.C0 = Clerp(RightHip.C0, CF(1 * Player_Size, -0.8 * Player_Size, 0 * Player_Size) * ANGLES(RAD(0), RAD(60), RAD(0)) * ANGLES(RAD(-5), RAD(0), RAD(10)), 0.4 / Animation_Speed)
2408
		LeftHip.C0 = Clerp(LeftHip.C0, CF(-1 * Player_Size, -0.8 * Player_Size, -0.2 * Player_Size) * ANGLES(RAD(0), RAD(-80), RAD(0)) * ANGLES(RAD(-7.5), RAD(0), RAD(5)), 0.4 / Animation_Speed)
2409
		HandleWeld.C0 = Clerp(HandleWeld.C0, CF(0 * Player_Size, -1 * Player_Size, -0.25 * Player_Size) * ANGLES(RAD(-20), RAD(90), RAD(0)), 0.4 / Animation_Speed)]]--
2410
		if StaggerHit.Value == true or Stagger.Value == true or Stun.Value == true then
2411
			break
2412
		end
2413
	end
2414
    wait(1)
2415
	CreateSound("438666077", workspace, 10, MRANDOM(8, 12) / 10)
2416
    wait(0.3)
2417
	--CreateSound("444667859", workspace, 10, MRANDOM(4, 6) / 10)
2418
    local cm = Instance.new("CylinderMesh")
2419
    local cm2 = cm:Clone()
2420
    local death = Instance.new("Part")
2421
    death.CFrame = CFrame.new(framed.X,framed.Y-250,framed.Z)
2422
    death.Material = "Neon"
2423
    death.BrickColor = BrickColor.new("Really black")
2424
    death.Size = Vector3.new(25,600,25)
2425
    death.Transparency = 0.25
2426
    death.Parent = Effects
2427
    death.CanCollide = false
2428
    death.Anchored = true
2429
    cm.Parent = death
2430
    local death2 = Instance.new("Part")
2431
    death2.CFrame = CFrame.new(framed.X,framed.Y-250,framed.Z)
2432
    death2.Material = "Neon"
2433
    death2.BrickColor = BrickColor.new("White")
2434
    death2.Size = Vector3.new(27,600,27)
2435
    death2.Parent = Effects
2436
    death2.CanCollide = false
2437
    death2.Anchored = true
2438
    cm2.Parent = death2
2439
    local exp = Instance.new("Part")
2440
    exp.Parent = Effects
2441
    exp.Size = Vector3.new(1,1,1)
2442
    exp.Anchored = true
2443
    exp.Transparency = 0
2444
    exp.CanCollide = false
2445
    exp.CFrame = death.CFrame
2446
    exp.BrickColor = BrickColor.new("Really black")
2447
    exp.Material = "Neon"
2448
    local meshe = Instance.new("SpecialMesh")
2449
    meshe.MeshType = "Sphere"
2450
    meshe.Parent = exp
2451
    meshe.Scale = Vector3.new(0.8,0.8,0.8)
2452
    local exp2 = Instance.new("Part")
2453
    exp2.Parent = Effects
2454
    exp2.Size = Vector3.new(1,1,1)
2455
    exp2.Anchored = true
2456
    exp2.Transparency = 0.25
2457
    exp2.CanCollide = false
2458
    exp2.CFrame = death.CFrame
2459
    exp2.BrickColor = BrickColor.new("White")
2460
    exp2.Material = "Neon"
2461
    local meshe2 = Instance.new("SpecialMesh")
2462
    meshe2.MeshType = "Sphere"
2463
    meshe2.Parent = exp2
2464
    meshe2.Scale = Vector3.new(1,1,1)
2465
    local shockwave = Instance.new("Part")
2466
    shockwave.CanCollide = false
2467
    shockwave.Anchored = true
2468
    shockwave.Parent = Effects
2469
    shockwave.BrickColor = BrickColor.new("Really black")
2470
    local meshg = Instance.new("SpecialMesh")
2471
    meshg.MeshId = "http://www.roblox.com/asset/?id=20329976"
2472
    meshg.Parent = shockwave
2473
    meshg.Scale = Vector3.new(3, 12, 3)
2474
    meshg.Offset = Vector3.new(0,0,-3)
2475
    shockwave.CFrame = death.CFrame
2476
    SIZE = 25
2477
    for size = 1, 45 do
2478
    MagnitudeDamage(HITWEAPONSOUNDS[MRANDOM(1, #HITWEAPONSOUNDS)], HITARMORSOUNDS[MRANDOM(1, #HITARMORSOUNDS)], HITBLOCKSOUNDS[MRANDOM(1, #HITBLOCKSOUNDS)], HITPLAYERSOUNDS[MRANDOM(1, #HITPLAYERSOUNDS)], 1, 1, 1, 1, exp, 120, false, 100, 100, MRANDOM(35, 50), "Normal", RootPart, 0.5, 1, MRANDOM(5, 10), nil, true, false, nil, 0, 0, false)
2479
				MagicBlock("White", "Neon", death.CFrame * 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), SIZE, SIZE, SIZE, SIZE / 3, SIZE / 3, SIZE / 3, 0.05)
2480
				MagicBlock("Really black", "Neon", death.CFrame * 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), SIZE * 0.75, SIZE * 0.75, SIZE * 0.75, 50, 50, 50, 0.05)
2481
        meshe.Scale = meshe.Scale + Vector3.new(6,6,6)
2482
        exp.Transparency = exp.Transparency + (1/45)
2483
        meshe2.Scale = meshe2.Scale + Vector3.new(6,6,6)
2484
        exp2.Transparency = exp2.Transparency + (1/45)
2485
        cm.Scale = cm.Scale - Vector3.new(1/45,0,1/45)
2486
        cm2.Scale = cm2.Scale - Vector3.new(1/45,0,1/45)
2487
        shockwave.Transparency = shockwave.Transparency + 1/45
2488
        meshg.Scale = meshg.Scale + Vector3.new(8,3,8)
2489
        wait(0.025)
2490
    end
2491
    exp:Destroy()
2492
    exp2:Destroy()
2493
    death:Destroy()
2494
    death2:Destroy()
2495
    wait(1.2)
2496
    Effects:ClearAllChildren()
2497
	ATTACK = false
2498
end
2499
2500
function Move1()
2501
	ATTACK = true
2502
	ATTACK = false
2503
end
2504
2505
function Move2()
2506
	ATTACK = true
2507
	ATTACK = false
2508
end
2509
2510
function Move3()
2511
	ATTACK = true
2512
	ATTACK = false
2513
end
2514
2515
function Move4()
2516
	ATTACK = true
2517
	ATTACK = false
2518
end
2519
2520
--//=================================\\
2521
--\\=================================//
2522
2523
2524
2525
2526
2527
--//=================================\\
2528
--||	      SET THINGS UP
2529
--\\=================================//
2530
2531
if Start_Equipped == true then
2532
	ATTACK = true
2533
	EQUIPPED = true
2534
	if Disable_Animate == true then
2535
		ANIMATE.Parent = nil
2536
		local IDLEANIMATION = Humanoid:LoadAnimation(ROBLOXIDLEANIMATION)
2537
		IDLEANIMATION:Play()
2538
	end
2539
	if Disable_Animator == true then
2540
		ANIMATOR.Parent = nil
2541
	end
2542
	if Disable_Moving_Arms == true then
2543
		RSH = Torso["Right Shoulder"]
2544
		LSH = Torso["Left Shoulder"]
2545
		RSH.Parent = nil
2546
		LSH.Parent = nil
2547
		if Use_Motors_Instead_Of_Welds == true then
2548
			RightShoulder = IT("Motor")
2549
			LeftShoulder = IT("Motor")
2550
		else
2551
			RightShoulder = IT("Weld")
2552
			LeftShoulder = IT("Weld")
2553
		end
2554
		RightShoulder.Name = "Right Shoulder"
2555
		RightShoulder.Part0 = Torso
2556
		RightShoulder.C0 = CF(1.5 * Player_Size, 0.5 * Player_Size, 0 * Player_Size)
2557
		RightShoulder.C1 = CF(0 * Player_Size, 0.5 * Player_Size, 0 * Player_Size) 
2558
		RightShoulder.Part1 = Character["Right Arm"]
2559
		RightShoulder.Parent = Torso
2560
		LeftShoulder.Name = "Left Shoulder"
2561
		LeftShoulder.Part0 = Torso
2562
		LeftShoulder.C0=CF(-1.5 * Player_Size, 0.5 * Player_Size, 0 * Player_Size)
2563
		LeftShoulder.C1=CF(0 * Player_Size, 0.5 * Player_Size, 0 * Player_Size)
2564
		LeftShoulder.Part1 = Character["Left Arm"]
2565
		LeftShoulder.Parent = Torso
2566
		RIGHTSHOULDERC0 = CF(0, 0, 0) * ANGLES(RAD(0), RAD(0), RAD(0))
2567
		LEFTSHOULDERC0 = CF(0, 0, 0) * ANGLES(RAD(0), RAD(0), RAD(0))
2568
	end
2569
	if Start_Equipped_With_Equipped_Animation == true then
2570
		Swait()
2571
	end
2572
	ATTACK = false
2573
end
2574
2575
--//=================================\\
2576
--\\=================================//
2577
2578
2579
2580
2581
2582
--//=================================\\
2583
--||	  ASSIGN THINGS TO KEYS
2584
--\\=================================//
2585
2586
Humanoid.Changed:connect(function(Jump)
2587
	if Jump == "Jump" and (Disable_Jump == true or DISABLEJUMPING == true) then
2588
		Humanoid.Jump = false
2589
	end
2590
end)
2591
2592
function MouseDown(Mouse)
2593
	if ATTACK == true or EQUIPPED == false then
2594
		return
2595
	end
2596
	HOLD = true
2597
		Attack1()
2598
	end
2599
	coroutine.resume(coroutine.create(function()
2600
		for i=1, 50 do
2601
			if ATTACK == false then
2602
				Swait()
2603
			end
2604
		end
2605
		if ATTACK == false then
2606
			COMBO = 1
2607
		end
2608
	end))
2609
2610
function unanchor()
2611
g = Character:GetChildren()
2612
for i = 1, #g do
2613
if g[i].ClassName == "Part" then
2614
g[i].Anchored = false
2615
end
2616
end
2617
end
2618
2619
function MouseUp(Mouse)
2620
HOLD = false
2621
end
2622
2623
function KeyDown(Key)
2624
	if Key == "f" and Can_Equip_Or_Unequip == true and ATTACK == false then
2625
		ATTACK = true
2626
		COMBO = 1
2627
		if EQUIPPED == false then
2628
			EQUIPPED = true
2629
			if Disable_Animate == true then
2630
				ANIMATE.Parent = nil
2631
				local IDLEANIMATION = Humanoid:LoadAnimation(ROBLOXIDLEANIMATION)
2632
				IDLEANIMATION:Play()
2633
			end
2634
			if Disable_Animator == true then
2635
				ANIMATOR.Parent = nil
2636
			end
2637
			Swait()
2638
		elseif EQUIPPED == true then
2639
		end
2640
		ATTACK = false
2641
	end
2642
	if Key == "e" and EQUIPPED == true and ATTACK == false then
2643
    Attack2()
2644
	end
2645
	if Key == "z" and EQUIPPED == true and ATTACK == false and CO1 >= Cooldown_1 and Mana.Value >= Skill_1_Mana_Cost and Character:FindFirstChild("Granted") == nil then
2646
       ray()
2647
	end
2648
	if Key == "x" and EQUIPPED == true and ATTACK == false and CO2 >= Cooldown_2 and Mana.Value >= Skill_2_Mana_Cost then
2649
	Attack3()
2650
	end
2651
	if Key == "c" and EQUIPPED == true and ATTACK == false and CO3 >= Cooldown_3 and Mana.Value >= Skill_3_Mana_Cost then
2652
    project()
2653
	end
2654
	if Key == "v" and EQUIPPED == true and ATTACK == false and CO4 >= Cooldown_4 and Mana.Value >= Skill_4_Mana_Cost then
2655
    Attack4()
2656
	end
2657
		if Key == "q" and Character:FindFirstChild("Granted") == nil then
2658
        --grant()
2659
		end
2660
		if Key == "p" then
2661
		annihalation()
2662
		end
2663
		if Key == "[" then
2664
			CreateSound("907330011", Head, 5, 0.9)
2665
		end
2666
		if Key == "]" then
2667
		serverbless()
2668
		end
2669
		if Key == "-" then
2670
			CreateSound("907333406", Head, 5, 0.9)
2671
		end
2672
		if Key == ";" then
2673
			CreateSound("907332525", Head, 5, 0.9)
2674
		end
2675
		if Key == "=" then
2676
			CreateSound("498286754", Head, 5, 0.9)
2677
		end
2678
		if Key == "y" then
2679
			CreateSound("907329044", Head, 5, 0.9)
2680
		end
2681
		if Key == "u" then
2682
			CreateSound("907329293", Head, 5, 0.9)
2683
		end
2684
		if Key == "m" then
2685
			Humanoid.MaxHealth = "inf"
2686
            Humanoid.Health = "inf"
2687
	        CreateSound("2800815",Head, 1.2, MRANDOM(7, 9) / 10)
2688
            unanchor()
2689
            MagicBlock(BrickColor.new("Lime green"), "Neon", Torso.CFrame * CF(0 * Player_Size, MRANDOM(-15, -10) / 10 * Player_Size, 0 * Player_Size) * ANGLES(RAD(90), 0, RAD(MRANDOM(-360, 360))), CF(0, 0, -0.1) * ANGLES(0, 0, RAD(MRANDOM(-20, 20))), VT(0, 1, 0), 50000, 50000, 50000, -1, -1, -1, 0.075)
2690
            MagicBlock(BrickColor.new("Lime green"), "Neon", Torso.CFrame * CF(0 * Player_Size, MRANDOM(-15, -10) / 10 * Player_Size, 0 * Player_Size) * ANGLES(RAD(90), 0, RAD(MRANDOM(-360, 360))), CF(0, 0, -0.1) * ANGLES(0, 0, RAD(MRANDOM(-20, 20))), VT(0, 1, 0), 50000, 50000, 50000, -1, -1, -1, 0.075)
2691
            MagicBlock(BrickColor.new("Lime green"), "Neon", Torso.CFrame * CF(0 * Player_Size, MRANDOM(-15, -10) / 10 * Player_Size, 0 * Player_Size) * ANGLES(RAD(90), 0, RAD(MRANDOM(-360, 360))), CF(0, 0, -0.1) * ANGLES(0, 0, RAD(MRANDOM(-20, 20))), VT(0, 1, 0), 50000, 50000, 50000, -1, -1, -1, 0.075)
2692
		end
2693
	end
2694
2695
2696
function KeyUp(Key)
2697
end
2698
2699
if Use_HopperBin == false then
2700
2701
	Mouse.Button1Down:connect(function(NEWKEY)
2702
		MouseDown(NEWKEY)
2703
	end)
2704
	Mouse.Button1Up:connect(function(NEWKEY)
2705
		MouseUp(NEWKEY)
2706
	end)
2707
	Mouse.KeyDown:connect(function(NEWKEY)
2708
		KeyDown(NEWKEY)
2709
	end)
2710
	Mouse.KeyUp:connect(function(NEWKEY)
2711
		KeyUp(NEWKEY)
2712
	end)
2713
2714
elseif Use_HopperBin == true then
2715
	WEAPONTOOL.Parent = Backpack
2716
	script.Parent = WEAPONTOOL
2717
	function SelectTool(Mouse)
2718
		Mouse.Button1Down:connect(function()
2719
			MouseDown(Mouse)
2720
		end)
2721
		Mouse.Button1Up:connect(function()
2722
			MouseUp(Mouse)
2723
		end)
2724
		Mouse.KeyDown:connect(KeyDown)
2725
		Mouse.KeyUp:connect(KeyUp)
2726
	end
2727
	function DeselectTool(Mouse)
2728
	end
2729
	WEAPONTOOL.Selected:connect(SelectTool)
2730
	WEAPONTOOL.Deselected:connect(DeselectTool)
2731
end
2732
2733
--//=================================\\
2734
--\\=================================//
2735
2736
2737
2738
local RHCF = CFrame.fromEulerAnglesXYZ(0, 1.6, 0)
2739
local LHCF = CFrame.fromEulerAnglesXYZ(0, -1.6, 0)
2740
2741
while true do
2742
	Swait()
2743
	if HitboxPart ~= nil and ATTACK == false and StaggerHit.Value == false and Stagger.Value == false and Stun.Value == false then
2744
		HitboxPart.Name = "NilHitbox"
2745
	else
2746
		HitboxPart.Name = "Hitbox"
2747
	end
2748
	if Enable_Gui == true then
2749
		UpdateGUI()
2750
	end
2751
	UpdateSkillsAndStuff()
2752
	if Walkspeed_Depends_On_Movement_Value == true then
2753
		if Movement.Value < 0 or StaggerHit.Value == true or Stagger.Value == true or Stun.Value == true or Rooted.Value == true then
2754
			Humanoid.WalkSpeed = 0
2755
		else
2756
			Humanoid.WalkSpeed = 16 * Movement.Value * Player_Size
2757
		end
2758
	end
2759
	if Enable_Stun == true and StunValue.Value >= Max_Stun then
2760
		StunValue.Value = 0
2761
		Stun.Value = true
2762
	end
2763
	if Enable_Stagger_Hit == true then
2764
		if StaggerHit.Value == true and STAGGERHITANIM == false then
2765
			coroutine.resume(coroutine.create(function()
2766
				STAGGERHITANIM = true
2767
				while ATTACK == true do
2768
					Swait()
2769
				end
2770
				StaggerHitAnimation()
2771
				StaggerHit.Value = false
2772
				STAGGERHITANIM = false
2773
			end))
2774
		end
2775
	else
2776
		StaggerHit.Value = false
2777
	end
2778
	if Enable_Stagger == true then
2779
		if Stagger.Value == true and STAGGERANIM == false then
2780
			coroutine.resume(coroutine.create(function()
2781
				STAGGERANIM = true
2782
				while ATTACK == true do
2783
					Swait()
2784
				end
2785
				StaggerAnimation()
2786
				Stagger.Value = false
2787
				STAGGERANIM = false
2788
			end))
2789
		end
2790
	else
2791
		Stagger.Value = false
2792
	end
2793
	if Enable_Stun == true then
2794
		if Stun.Value == true and STUNANIM == false then
2795
			coroutine.resume(coroutine.create(function()
2796
				StunValue.Value = 0
2797
				STUNANIM = true
2798
				while ATTACK == true do
2799
					Swait()
2800
				end
2801
				StunAnimation()
2802
				Stun.Value = false
2803
				STUNANIM = false
2804
			end))
2805
		end
2806
	else
2807
		StunValue.Value = 0
2808
		Stun.Value = false
2809
	end
2810
	if DONUMBER >= .5 then
2811
		HANDIDLE = true
2812
	elseif DONUMBER <= 0 then
2813
		HANDIDLE = false
2814
	end
2815
	if HANDIDLE == false then
2816
		DONUMBER = DONUMBER + 0.003 / Animation_Speed
2817
	else
2818
		DONUMBER = DONUMBER - 0.003 / Animation_Speed
2819
	end
2820
	if ATTACK == false then
2821
		IDLENUMBER = IDLENUMBER + 1
2822
	else
2823
		IDLENUMBER = 0
2824
	end
2825
	if Enable_Stats == true then
2826
		for _, v in pairs (ChangeStat:GetChildren()) do
2827
			if v:FindFirstChild("Duration") ~= nil then
2828
				v:FindFirstChild("Duration").Value = v:FindFirstChild("Duration").Value - (1 / 30) / Animation_Speed
2829
				if v:FindFirstChild("Duration").Value <= 0 then
2830
					v.Parent = nil
2831
				end
2832
			end
2833
			if v.Name == "ChangeDefense" then
2834
				CHANGEDEFENSE = CHANGEDEFENSE + v.Value
2835
			elseif v.Name == "ChangeDamage" then
2836
				CHANGEDAMAGE = CHANGEDAMAGE + v.Value
2837
			elseif v.Name == "ChangeMovement" then
2838
				CHANGEMOVEMENT = CHANGEMOVEMENT + v.Value
2839
			end
2840
		end
2841
		Defense.Value = 1 + (CHANGEDEFENSE)
2842
		if Defense.Value <= 0.01 then
2843
			Defense.Value = 0.01
2844
		end
2845
		Damage.Value = 1 + (CHANGEDAMAGE)
2846
		if Damage.Value <= 0 then
2847
			Damage.Value = 0
2848
		end
2849
		Movement.Value = 1 + (CHANGEMOVEMENT)
2850
		if Movement.Value <= 0 then
2851
			Movement.Value = 0
2852
		end
2853
	CHANGEDEFENSE = 0
2854
	CHANGEDAMAGE = 0
2855
	CHANGEMOVEMENT = 0
2856
	end
2857
	SINE = SINE + CHANGE
2858
	local TORSOVELOCITY = (RootPart.Velocity * VT(1, 0, 1)).magnitude
2859
	local TORSOVERTICALVELOCITY = RootPart.Velocity.y
2860
	local LV = Torso.CFrame:pointToObjectSpace(Torso.Velocity - Torso.Position)
2861
	local HITFLOOR = Raycast(RootPart.Position, (CF(RootPart.Position, RootPart.Position + VT(0, -1, 0))).lookVector, 4 * Player_Size, Character)
2862
	local WALKSPEEDVALUE = 6 / (Humanoid.WalkSpeed / 16)
2863
	if ANIM == "Walk" and EQUIPPED == true and TORSOVELOCITY > 1 then
2864
		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)
2865
		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)
2866
		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)
2867
		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)
2868
	elseif (ANIM ~= "Walk" and EQUIPPED == true) or (TORSOVELOCITY < 1) then
2869
		RootJoint.C1 = Clerp(RootJoint.C1, ROOTC0 * CF(0, 0, 0) * ANGLES(RAD(0), RAD(0), RAD(0)), 0.2 / Animation_Speed)
2870
		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)
2871
		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)
2872
		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)
2873
	end
2874
	if TORSOVERTICALVELOCITY > 1 and HITFLOOR == nil then
2875
		ANIM = "Jump"
2876
		if EQUIPPED == true and ATTACK == false then
2877
            Humanoid.WalkSpeed = 150
2878
			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)
2879
			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)
2880
			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)
2881
			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)
2882
			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)
2883
			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)
2884
			HandleWeld.C0 = Clerp(HandleWeld.C0, CF(0 * Player_Size, -1 * Player_Size, 0 * Player_Size) * ANGLES(RAD(-90), RAD(90), RAD(0)), 0.2 / Animation_Speed)
2885
		end
2886
	elseif TORSOVERTICALVELOCITY < -1 and HITFLOOR == nil then
2887
		ANIM = "Fall"
2888
		if EQUIPPED == true and ATTACK == false then
2889
			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)
2890
			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)
2891
			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)
2892
			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)
2893
			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)
2894
			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)
2895
			HandleWeld.C0 = Clerp(HandleWeld.C0, CF(0 * Player_Size, -1 * Player_Size, 0 * Player_Size) * ANGLES(RAD(-90), RAD(90), RAD(0)), 0.2 / Animation_Speed)
2896
		end
2897
	elseif TORSOVELOCITY < 1 and HITFLOOR ~= nil then
2898
		ANIM = "Idle"
2899
		if EQUIPPED == true and ATTACK == false then
2900
			RootJoint.C0 = Clerp(RootJoint.C0, ROOTC0 * CF(0, 0, -0.1 + 0.02 * math.cos(SINE / 8)) * angles(math.rad(0), math.rad(1), math.rad(15)), 0.1)
2901
			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)
2902
			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(25)), 0.15 / Animation_Speed)
2903
		    RightShoulder.C0 = Clerp(RightShoulder.C0, CFrame.new(.9, 0.7, -0.7) * angles(math.rad(90 - 1 * math.cos(SINE / 8)), math.rad(0), math.rad(-50)), 0.1)
2904
            LeftShoulder.C0 = Clerp(LeftShoulder.C0, CFrame.new(-.9, 0.7, -0.5) * angles(math.rad(70 - 1 * math.cos(SINE / 8)), math.rad(-7), math.rad(70)), 0.1)
2905
			RightHip.C0  = Clerp(RightHip.C0, CF(1, -1 - 0.02 * math.cos(SINE / 8), 0) * RHCF * angles(math.rad(-4), math.rad(0), math.rad(0 + 0.05 * math.cos(SINE / 25))), 0.1)
2906
            LeftHip.C0 = Clerp(LeftHip.C0, CF(-1, -1 - 0.02 * math.cos(SINE / 8), 0) * LHCF * angles(math.rad(-4), math.rad(0), math.rad(0 + 0.05 * math.cos(SINE / 25))), 0.1)
2907
			HandleWeld.C0 = Clerp(HandleWeld.C0, CF(0 * Player_Size, -1 * Player_Size, 0 * Player_Size) * ANGLES(RAD(-100), RAD(90), RAD(0)), 0.15 / Animation_Speed)
2908
		end
2909
	elseif TORSOVELOCITY > 1 and HITFLOOR ~= nil then
2910
		ANIM = "Walk"
2911
		WALK = WALK + 1 / Animation_Speed
2912
		if WALK >= 15 - (5 * (Humanoid.WalkSpeed / 16 / Player_Size)) then
2913
			WALK = 0
2914
			if WALKINGANIM == true then
2915
				WALKINGANIM = false
2916
			elseif WALKINGANIM == false then
2917
				WALKINGANIM = true
2918
			end
2919
		end
2920
		if EQUIPPED == true and ATTACK == false then
2921
            Humanoid.WalkSpeed = 20
2922
			RootJoint.C0 = Clerp(RootJoint.C0, ROOTC0 * CF(0.05 * COS(SINE / WALKSPEEDVALUE) * Player_Size, 0 * Player_Size, -0.1 * Player_Size) * ANGLES(RAD(10), RAD(0), RAD(-40)), 0.2 * (Humanoid.WalkSpeed / 16) / Animation_Speed)
2923
			Neck.C0 = Clerp(Neck.C0, NECKC0 * CF(0 * Player_Size, 0 * Player_Size, 0 + ((1 * Player_Size) - 1)) * ANGLES(RAD(0), RAD(0), RAD(40)) * ANGLES(RAD(-5), RAD(0), RAD(0)), 0.2 * (Humanoid.WalkSpeed / 16) / Animation_Speed)
2924
		    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)
2925
		    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)
2926
			RightHip.C0 = Clerp(RightHip.C0, CF(0.95 * Player_Size, -1 * Player_Size, -0.5 * Player_Size) * ANGLES(RAD(0), RAD(130), RAD(0)) * ANGLES(RAD(-1.25 - 2.5 * COS(SINE / WALKSPEEDVALUE)), RAD(0), RAD(0)), 0.2 * (Humanoid.WalkSpeed / 16) / Animation_Speed)
2927
			LeftHip.C0 = Clerp(LeftHip.C0, CF(-1 * Player_Size, -0.9 * Player_Size, 0.25 * Player_Size) * ANGLES(RAD(0), RAD(-50), RAD(0)) * ANGLES(RAD(-2.5 + 2.5 * COS(SINE / WALKSPEEDVALUE)), RAD(0), RAD(0)), 0.2 * (Humanoid.WalkSpeed / 16) / Animation_Speed)
2928
			HandleWeld.C0 = Clerp(HandleWeld.C0, CF(0 * Player_Size, -1 * Player_Size, 0 * Player_Size) * ANGLES(RAD(-90), RAD(90), RAD(0)), 0.15 * (Humanoid.WalkSpeed / 16) / Animation_Speed)
2929
		end
2930
	end
2931
2932
end
2933
2934
--//=================================\\
2935
--\\=================================//
2936
2937
2938
2939
--//====================================================\\--
2940
--||			  		 END OF SCRIPT
2941
--\\====================================================//