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