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