View difference between Paste ID: iLqstn9j and g0D42HQt
SHOW: | | - or go back to the newest paste.
1
if game:GetService("RunService"):IsClient() then error("Please run as a server script. Use h/ instead of hl/.") end
2
print("FE Compatibility: by WaverlyCole & Mokiros")
3
InternalData = {}
4-
do
4+
5
Character = Player.Character
6
PlayerGui = Player.PlayerGui
7
Backpack = Player.Backpack
8
Torso = Character.Torso
9
Head = Character.Head
10
Humanoid = Character.Humanoid
11
RootPart = Character.HumanoidRootPart
12
RootJoint = RootPart.RootJoint
13
LeftArm = Character["Left Arm"]
14
LeftLeg = Character["Left Leg"]
15
RightArm = Character["Right Arm"]
16
RightLeg = Character["Right Leg"]
17
LS = Torso["Left Shoulder"]
18
LH = Torso["Left Hip"]
19
RS = Torso["Right Shoulder"]
20
RH = Torso["Right Hip"]
21
------Gonzales---------
22
CV="Maroon"
23
	Player = game.Players.LocalPlayer
24
	char = Player.Character
25
	local txt = Instance.new("BillboardGui", Character)
26
	txt.Adornee = Character .Head
27
	txt.Name = "_status"
28
	txt.Size = UDim2.new(2, 0, 1.2, 0)
29
	txt.StudsOffset = Vector3.new(-9, 8, 0)
30
	local text = Instance.new("TextLabel", txt)
31
	text.Size = UDim2.new(10, 0, 7, 0)
32
	text.FontSize = "Size24"
33
	text.TextScaled = true
34
	text.TextTransparency = 0
35
	text.BackgroundTransparency = 1 
36
	text.TextTransparency = 0
37
	text.TextStrokeTransparency = 0
38
	text.Font = "Bodoni"
39
	text.TextStrokeColor3 = Color3.new(255,255,255)
40
41
	v=Instance.new("Part")
42
	v.Name = "ColorBrick"
43
	v.Parent=Player.Character
44
	v.FormFactor="Symmetric"
45
	v.Anchored=true
46
	v.CanCollide=false
47
	v.BottomSurface="Smooth"
48
	v.TopSurface="Smooth"
49
	v.Size=Vector3.new(10,5,3)
50
	v.Transparency=1
51
	v.CFrame=Character.Torso.CFrame
52
	v.BrickColor=BrickColor.new(CV)
53
	v.Transparency=1
54
	text.TextColor3 = Color3.new(255,0,0)
55
	v.Shape="Block"
56
	text.Text = "Scout"
57
--------------------
58
Face = Head.face
59
shirt = Instance.new("Shirt", char)
60
shirt.Name = "Shirt"
61
pants = Instance.new("Pants", char)
62
pants.Name = "Pants"
63
char.Shirt.ShirtTemplate = "rbxassetid://61921144"
64
char.Pants.PantsTemplate = "rbxassetid://61921182"
65
------Face----------
66
Character.Head.face.Texture = "rbxassetid://840490876"
67
------Remover-------
68
local ss = Instance.new("Sound",char)
69
ss.Volume = 3
70
ss.Looped = true
71
ss.Pitch = 1
72
ss.SoundId = "rbxassetid://764878915"
73
ss:Play()
74
local p = game.Players.LocalPlayer
75
local char = p.Character
76
local mouse = p:GetMouse()
77
local larm = char["Left Arm"]
78
local rarm = char["Right Arm"]
79
local lleg = char["Left Leg"]
80
local rleg = char["Right Leg"]
81
local hed = char.Head
82
local torso = char.Torso
83
local hum = char.Humanoid
84
local cam = game.Workspace.CurrentCamera
85
local root = char.HumanoidRootPart
86
local rj = root.RootJoint
87
local deb = false
88
local shot = 0
89
local animpose = "Idle"
90
local lastanimpose = "Idle"
91
local stanceToggle = "Normal"
92
local l = game:GetService("Lighting")
93
local rs = game:GetService("RunService").RenderStepped
94
local hb = game:GetService("RunService").Heartbeat
95
local Stepped = game:GetService("RunService").Stepped
96
local Touche = {char.Name, }
97
----
98
99
100
Neck = Torso.Neck
101
it = Instance.new
102
vt = Vector3.new
103
cf = CFrame.new
104
rad = math.rad
105
euler = CFrame.fromEulerAnglesXYZ
106
angles = CFrame.Angles
107
Mouse = Player:GetMouse()
108
coroutine.resume(coroutine.create(function()
109
game.StarterGui:SetCore("ChatMakeSystemMessage", {
110
	Text = "Fixed by PixelFir3 / Cortana#8155";
111
	Color = Color7.new(0, 1, 1);
112
	Font = Enum.Font.Code;
113
	FontSize = Enum.FontSize.Size24;
114
})
115
end))
116
ArtificialHB = Instance.new("BindableEvent", script)
117
ArtificialHB.Name = "ArtificialHB"
118
script:WaitForChild("ArtificialHB")
119
frame = 0.016666666666667
120
tf = 0
121
allowframeloss = false
122
tossremainder = false
123
lastframe = tick()
124
script.ArtificialHB:Fire()
125
game:GetService("RunService").Heartbeat:connect(function(s, p)
126
	
127
	tf = tf + s
128
	if frame <= tf then
129
		if allowframeloss then
130
			script.ArtificialHB:Fire()
131
			lastframe = tick()
132
		else
133
			for i = 1, math.floor(tf / frame) do
134
				script.ArtificialHB:Fire()
135
			end
136
			lastframe = tick()
137
		end
138
		if tossremainder then
139
			tf = 0
140
		else
141
			tf = tf - frame * math.floor(tf / frame)
142
		end
143
	end
144
end
145
)
146
local animationspeed = 2
147
hbwait = function(number)
148
	
149
	if number == 0 or number == nil then
150
		ArtificialHB.Event:wait()
151
	else
152
		for i = 0, number do
153
			ArtificialHB.Event:wait()
154
		end
155
	end
156
end
157
158
local Stats = Instance.new("Folder", Character)
159
Stats.Name = "Stats"
160
local Defense = Instance.new("NumberValue", Stats)
161
Defense.Name = "Defense"
162
Defense.Value = 0.1
163
local Movement = Instance.new("NumberValue", Stats)
164
Movement.Name = "Movement"
165
Movement.Value = 0.35
166
local Damage = Instance.new("NumberValue", Stats)
167
Damage.Name = "Damage"
168
Damage.Value = 0
169
local Mana = Instance.new("NumberValue", Stats)
170
Mana.Name = "Mana"
171
Mana.Value = 0
172
local Rooted = Instance.new("BoolValue", Stats)
173
Rooted.Name = "Rooted"
174
Rooted.Value = false
175
local BlockValue = Instance.new("BoolValue", Stats)
176
BlockValue.Name = "BlockValue"
177
BlockValue.Value = false
178
local StaggerHitAnim = Instance.new("BoolValue", Stats)
179
StaggerHitAnim.Name = "StaggerHitAnim"
180
StaggerHitAnim.Value = false
181
local StaggerAnim = Instance.new("BoolValue", Stats)
182
StaggerAnim.Name = "StaggerAnim"
183
StaggerAnim.Value = false
184
local StunAnim = Instance.new("BoolValue", Stats)
185
StunAnim.Name = "StunAnim"
186
StunAnim.Value = false
187
local StunValue = Instance.new("NumberValue", Stats)
188
StunValue.Name = "StunValue"
189
StunValue.Value = 0
190
local CanCrit = Instance.new("BoolValue", Stats)
191
CanCrit.Name = "CanCrit"
192
CanCrit.Value = false
193
local CritChance = Instance.new("NumberValue", Stats)
194
CritChance.Name = "CritChance"
195
CritChance.Value = 20
196
local CanPenetrateArmor = Instance.new("BoolValue", Stats)
197
CanPenetrateArmor.Name = "CanPenetrateArmor"
198
CanPenetrateArmor.Value = false
199
local AntiTeamKill = Instance.new("BoolValue", Stats)
200
AntiTeamKill.Name = "AntiTeamKill"
201
AntiTeamKill.Value = false
202
necko = cf(0, 1, 0, -1, 0, 0, 0, 0, 1, 0, 1, 0)
203
RootCF = angles(rad(-90), 0, rad(180))
204
local idle = 0
205
local Anim = "Idle"
206
local animtype = math.floor(math.random(1, 3))
207
local attacktype = 1
208
local attack = false
209
local equipped = false
210
local LastPoint = nil
211
local staggerhitanim = false
212
local staggeranim = false
213
local stunanim = false
214
local CritChanceNumber = 0
215
local idlen = 0
216
local donum = 0
217
local sine = 0
218
local change = 2 / animationspeed
219
local walkinganim = false
220
local handidle = false
221
local walk = 0
222
local stundelay = 0
223
local manadelay = 0
224
local robloxidleanimation = Instance.new("Animation", Torso)
225
robloxidleanimation.Name = "robloxidleanimation"
226
robloxidleanimation.AnimationId = "http://www.roblox.com/asset/?id=180435571"
227
local Animator = Humanoid:FindFirstChild("Animator")
228
local Animate = Character:FindFirstChild("Animate")
229
local HitPlayerSounds = {199149137, 199149186, 199149221, 199149235, 199149269, 199149297}
230
local HitArmorSounds = {199149321, 199149338, 199149367, 199149409, 199149452}
231
local HitWeaponSounds = {199148971, 199149025, 199149072, 199149109, 199149119}
232
local HitBlockSounds = {199148933, 199148947}
233
local cooldown1 = 0
234
local cooldown2 = 0
235
local cooldown3 = 0
236
local cooldown4 = 0
237
local scrn = Instance.new("ScreenGui", PlayerGui)
238
local ud = UDim2.new
239
local c3 = Color3.new
240
local skillcolorscheme = c3(1, 1, 1)
241
subtractmana = function(k)
242
	
243
	if k <= Mana.Value then
244
		Mana.Value = Mana.Value - k
245
	end
246
end
247
248
local co1 = 0
249
local co2 = 0
250
local co3 = 0
251
local co4 = 0
252
local maxmana = 0
253
local maxstun = 1
254
local recovermana = 0
255
local losestun = 0
256
local stunwait = 0
257
local manawait = 0
258
local skill1mana = 0
259
local skill2mana = 0
260
local skill3mana = 0
261
local skill4mana = 0
262
local menuupdatespeed = 0
263
local constantupdate = false
264
local showstats = false
265
local allowstunbar = false
266
local CustomColor = Torso.BrickColor
267
local Colorpart1 = CustomColor.r
268
local Colorpart2 = CustomColor.g
269
local Colorpart3 = CustomColor.b
270
local InverseColor = BrickColor.new(Color3.new(1 - Colorpart1, 1 - Colorpart2, 1 - Colorpart3))
271
makeframe = function(par, trans, pos, size, color, name)
272
	
273
	local frame = Instance.new("Frame")
274
	frame.Parent = par
275
	frame.BackgroundTransparency = trans
276
	frame.BorderSizePixel = 2
277
	frame.Position = pos
278
	frame.Size = size
279
	frame.BackgroundColor3 = color
280
	frame.Name = name
281
	return frame
282
end
283
284
makelabel = function(par, text, trans, stroketrans, name)
285
	
286
	local label = Instance.new("TextLabel")
287
	label.Parent = par
288
	label.BackgroundTransparency = 1
289
	label.Size = ud(1, 0, 1, 0)
290
	label.Position = ud(0, 0, 0, 0)
291
	label.TextColor3 = c3(255, 255, 255)
292
	label.TextStrokeTransparency = stroketrans
293
	label.TextTransparency = trans
294
	label.FontSize = Enum.FontSize.Size32
295
	label.Font = Enum.Font.Legacy
296
	label.BorderSizePixel = 0
297
	label.TextScaled = true
298
	label.Text = text
299
	label.Name = name
300
	return label
301
end
302
303
framesk1 = makeframe(scrn, 0.5, ud(0.23, 0, 0.93, 0), ud(0.26, 0, 0, 0), c3(Colorpart1, Colorpart2, Colorpart3), "Frame 1")
304
framesk2 = makeframe(scrn, 0.5, ud(0.5, 0, 0.93, 0), ud(0.26, 0, 0, 0), c3(Colorpart1, Colorpart2, Colorpart3), "Frame 2")
305
framesk3 = makeframe(scrn, 0.5, ud(0.5, 0, 0.86, 0), ud(0.26, 0, 0, 0), c3(Colorpart1, Colorpart2, Colorpart3), "Frame 3")
306
framesk4 = makeframe(scrn, 0.5, ud(0.23, 0, 0.86, 0), ud(0.26, 0, 0, 0), c3(Colorpart1, Colorpart2, Colorpart3), "Frame 4")
307
bar1 = makeframe(framesk1, 0, ud(0, 0, 0, 0), ud(0, 0, 1, 0), c3(Colorpart1, Colorpart2, Colorpart3), "Bar 1")
308
bar2 = makeframe(framesk2, 0, ud(0, 0, 0, 0), ud(0, 0, 1, 0), c3(Colorpart1, Colorpart2, Colorpart3), "Bar 2")
309
bar3 = makeframe(framesk3, 0, ud(0, 0, 0, 0), ud(0, 0, 1, 0), c3(Colorpart1, Colorpart2, Colorpart3), "Bar 3")
310
bar4 = makeframe(framesk4, 0, ud(0, 0, 0, 0), ud(0, 0, 1, 0), c3(Colorpart1, Colorpart2, Colorpart3), "Bar 4")
311
text1 = makelabel(framesk1, "[C] Ability 3", 1, 1, "Text 1")
312
text2 = makelabel(framesk2, "[V] Ability 4", 1, 1, "Text 2")
313
text3 = makelabel(framesk3, "[X] Ability 2", 1, 1, "Text 3")
314
text4 = makelabel(framesk4, "[Z] Ability 1", 1, 1, "Text 4")
315
manabar = makeframe(scrn, 0.5, ud(0.23, 0, 0.82, 0), ud(0.26, 0, 0, 0), c3(Colorpart1, Colorpart2, Colorpart3), "Mana Bar")
316
manacover = makeframe(manabar, 0, ud(0, 0, 0, 0), ud(0, 0, 1, 0), c3(Colorpart1, Colorpart2, Colorpart3), "Mana Cover")
317
manatext = makelabel(manabar, "Mana", 1, 1, "Mana Text")
318
healthbar = makeframe(scrn, 0.5, ud(0.5, 0, 0.82, 0), ud(0.26, 0, 0, 0), c3(1, 0.19607843137255, 0.19607843137255), "Health Bar")
319
healthcover = makeframe(healthbar, 0, ud(0, 0, 0, 0), ud(0, 0, 1, 0), c3(1, 0.19607843137255, 0.19607843137255), "Health Cover")
320
healthtext = makelabel(healthbar, "Health", 1, 1, "Health Text")
321
if allowstunbar == true then
322
	stunframe = makeframe(scrn, 0.5, ud(0.5, 0, 0.78, 0), ud(0.26, 0, 0, 0), c3(1, 1, 0.19607843137255), "Stun Frame")
323
	stunbar = makeframe(stunframe, 0, ud(0, 0, 0, 0), ud(0, 0, 1, 0), c3(1, 1, 0.19607843137255), "Stun Bar")
324
	stuntext = makelabel(stunframe, "Stun", 1, 1, "Stun Text")
325
end
326
if showstats == true then
327
	defenseframe = makeframe(scrn, 0.5, ud(0.23, 0, 0.78, 0), ud(0.075, 0, 0, 0), c3(0.3921568627451, 0.3921568627451, 1), "Defense Frame")
328
	damageframe = makeframe(scrn, 0.5, ud(0.3225, 0, 0.78, 0), ud(0.075, 0, 0, 0), c3(1, 0.3921568627451, 0.3921568627451), "Damage Frame")
329
	movementframe = makeframe(scrn, 0.5, ud(0.415, 0, 0.78, 0), ud(0.075, 0, 0, 0), c3(0.3921568627451, 1, 0.3921568627451), "Movement Frame")
330
	defensetext = makelabel(defenseframe, "Defense: " .. Defense.Value, 1, 1, "Defense Text")
331
	damagetext = makelabel(damageframe, "Damage: " .. Damage.Value, 1, 1, "Damage Text")
332
	movementtext = makelabel(movementframe, "Movement: " .. Movement.Value, 1, 1, "Movement Text")
333
end
334
NoOutline = function(Part)
335
	
336
	Part.TopSurface = 10
337
end
338
339
local weldBetween = function(a, b)
340
	
341
	local weldd = Instance.new("ManualWeld")
342
	weldd.Part0 = a
343
	weldd.Part1 = b
344
	weldd.C0 = CFrame.new()
345
	weldd.C1 = b.CFrame:inverse() * a.CFrame
346
	weldd.Parent = a
347
	return weldd
348
end
349
350
nooutline = function(part)
351
	
352
	part.TopSurface = 10
353
end
354
355
part = function(formfactor, parent, material, reflectance, transparency, brickcolor, name, size)
356
	
357
	local fp = it("Part")
358
	fp.formFactor = formfactor
359
	fp.Parent = parent
360
	fp.Reflectance = reflectance
361
	fp.Transparency = transparency
362
	fp.CanCollide = false
363
	fp.Locked = true
364
	fp.BrickColor = BrickColor.new(tostring(brickcolor))
365
	fp.Name = name
366
	fp.Size = size
367
	fp.Position = Character.Torso.Position
368
	nooutline(fp)
369
	fp.Material = material
370
	fp:BreakJoints()
371
	return fp
372
end
373
374
mesh = function(Mesh, part, meshtype, meshid, offset, scale)
375
	
376
	local mesh = it(Mesh)
377
	mesh.Parent = part
378
	if Mesh == "SpecialMesh" then
379
		mesh.MeshType = meshtype
380
		mesh.MeshId = meshid
381
	end
382
	mesh.Offset = offset
383
	mesh.Scale = scale
384
	return mesh
385
end
386
387
weld = function(parent, part0, part1, c0, c1)
388
	
389
	local weld = it("Motor")
390
	weld.Parent = parent
391
	weld.Part0 = part0
392
	weld.Part1 = part1
393
	weld.C0 = c0
394
	weld.C1 = c1
395
	return weld
396
end
397
398
local WeaponName = "Russian Kick"
399
local ClassName = "Russian Kick"
400
local PlayerSize = 1
401
local RWC0 = cf(-0.5, 0, 0) * angles(rad(0), rad(90), rad(0))
402
local LWC0 = cf(0.5, 0, 0) * angles(rad(0), rad(-90), rad(0))
403
if PlayerSize ~= 1 then
404
	RootPart.Size = RootPart.Size * PlayerSize
405
	Torso.Size = Torso.Size * PlayerSize
406
	Head.Size = Head.Size * PlayerSize
407
	RightArm.Size = RightArm.Size * PlayerSize
408
	LeftArm.Size = LeftArm.Size * PlayerSize
409
	RightLeg.Size = RightLeg.Size * PlayerSize
410
	LeftLeg.Size = LeftLeg.Size * PlayerSize
411
	RootJoint.Parent = RootPart
412
	Neck.Parent = Torso
413
	LS.Parent = Torso
414
	RS.Parent = Torso
415
	LH.Parent = Torso
416
	RH.Parent = Torso
417
	RootJoint.C0 = RootCF * cf(0 * PlayerSize, 0 * PlayerSize, 0 * PlayerSize) * angles(rad(0), rad(0), rad(0))
418
	Neck.C0 = necko * cf(0 * PlayerSize, 0 * PlayerSize, 0 + (1 * PlayerSize - 1)) * angles(rad(0), rad(0), rad(0))
419
	Neck.C1 = angles(rad(90), rad(180), 0) * cf(0, 0, -0.5 * PlayerSize)
420
	RS.C0 = cf(1.5 * PlayerSize, 0.5 * PlayerSize, 0 * PlayerSize) * angles(rad(0), rad(0), rad(0)) * RWC0
421
	LS.C0 = cf(-1.5 * PlayerSize, 0.5 * PlayerSize, 0 * PlayerSize) * angles(rad(0), rad(0), rad(0)) * LWC0
422
	RS.C1 = angles(0, rad(90), 0) * cf(0, 0.5 * PlayerSize, -0.5)
423
	LS.C1 = angles(0, rad(-90), 0) * cf(0, 0.5 * PlayerSize, -0.5)
424
	RH.C0 = cf(1 * PlayerSize, -1 * PlayerSize, 0 * PlayerSize) * angles(rad(0), rad(90), rad(0)) * angles(rad(0), rad(0), rad(0))
425
	LH.C0 = cf(-1 * PlayerSize, -1 * PlayerSize, 0 * PlayerSize) * angles(rad(0), rad(-90), rad(0)) * angles(rad(0), rad(0), rad(0))
426
	RH.C1 = angles(0, rad(90), 0) * cf(0, 1 * PlayerSize, 0.5 * PlayerSize)
427
	LH.C1 = angles(0, rad(-90), 0) * cf(0, 1 * PlayerSize, 0.5 * PlayerSize)
428
	for _,v in pairs(Character:GetChildren()) do
429
		if v.ClassName == "Hat" or v.ClassName == "Accessory" then
430
			v.Parent = nil
431
			v.Parent = Character
432
			v.Handle.Mesh.Scale = v.Handle.Mesh.Scale * PlayerSize
433
			for _,b in pairs(v.Handle:GetChildren()) do
434
				if b.ClassName == "Weld" or b.ClassName == "Motor" then
435
					local p1 = b.Part1
436
					b.Part1 = nil
437
					local c01, c02, c03, c04, c05, c06, c07, c08, c09, c010, c011, c012 = b.C0:components()
438
					local c11, c12, c13, c14, c15, c16, c17, c18, c19, c110, c111, c112 = b.C1:components()
439
					b.C0 = cf(c01 * PlayerSize, c02 * PlayerSize, c03 * PlayerSize, c04, c05, c06, c07, c08, c09, c010, c011, c012)
440
					b.C1 = cf(c11 * PlayerSize, c12 * PlayerSize, c13 * PlayerSize, c14, c15, c16, c17, c18, c19, c110, c111, c112)
441
					b.Part1 = p1
442
				end
443
			end
444
		end
445
	end
446
end
447
	m = Instance.new("Model", Character)
448
	m.Name = WeaponName
449
	Effects = Instance.new("Folder", m)
450
	Effects.Name = "Effects"
451
	Humanoid.Died:connect(function()
452
	
453
	attack = true
454
	for _,v in pairs(Character:GetChildren()) do
455
		if v.ClassName == "Model" then
456
			v:Destroy()
457
		end
458
	end
459
end
460
)
461
	for i,v in pairs(Character:GetChildren()) do
462
		if v.ClassName == "Model" then
463
			for _,c in pairs(v:GetChildren()) do
464
				if c.ClassName == "Part" then
465
					c.CustomPhysicalProperties = PhysicalProperties.new(0.001, 0.001, 0.001, 0.001, 0.001)
466
				end
467
			end
468
		end
469
	end
470
	print(ClassName .. " loaded.")
471
	clerp = function(a, b, t)
472
return a:lerp(b, t)
473
end
474
475
	positiveangle = function(number)
476
	
477
	if number > 0 then
478
		number = 0
479
	end
480
	return number
481
end
482
483
	negativeangle = function(number)
484
	
485
	if number < 0 then
486
		number = 0
487
	end
488
	return number
489
end
490
491
	so = function(id, par, vol, pit)
492
	
493
	coroutine.resume(coroutine.create(function()
494
		
495
		local sou = Instance.new("Sound", par or workspace)
496
		sou.Volume = vol
497
		sou.Pitch = pit or 1
498
		sou.SoundId = "http://roblox.com/asset/?id=" .. id
499
		hbwait()
500
		sou:play()
501
		game:GetService("Debris"):AddItem(sou, 10)
502
	end
503
))
504
end
505
506
	GetDistance = function(Part1, Part2, magnitude)
507
	
508
	local target = Part1.Position - Part2.Position
509
	local mag = target.magnitude
510
	if mag <= magnitude then
511
		return true
512
	else
513
		return false
514
	end
515
end
516
517
	rayCast = function(Pos, Dir, Max, Ignore)
518
	
519
	return game:service("Workspace"):FindPartOnRay(Ray.new(Pos, Dir.unit * (Max or 999.999)), Ignore)
520
end
521
522
	DamageStatLabel = function(labeltype, cframe, text, color)
523
	
524
	local c = part(3, Effects, "SmoothPlastic", 0, 1, "Really black", "Effect", vt(0, 0, 0))
525
	c.CFrame = cf(cframe.p + vt(0, 1.5, 0))
526
	game:GetService("Debris"):AddItem(c, 5)
527
	Instance.new("BodyGyro", c)
528
	local f = Instance.new("BodyPosition", c)
529
	f.P = 2000
530
	f.D = 100
531
	f.maxForce = vt(math.huge, math.huge, math.huge)
532
	if labeltype == "Normal" then
533
		f.position = c.Position + vt(math.random(-2, 2), 6, math.random(-2, 2))
534
	else
535
		if labeltype == "Debuff" then
536
			f.position = c.Position + vt(math.random(-2, 2), 8, math.random(-2, 2))
537
		else
538
			if labeltype == "Interruption" then
539
				f.position = c.Position + vt(math.random(-2, 2), 8, math.random(-2, 2))
540
			end
541
		end
542
	end
543
	game:GetService("Debris"):AddItem(c, 5)
544
	local bg = Instance.new("BillboardGui", c)
545
	bg.Adornee = c
546
	bg.Size = UDim2.new(2.5, 0, 2.5, 0)
547
	bg.StudsOffset = vt(-2, 2, 0)
548
	bg.AlwaysOnTop = false
549
	local tl = Instance.new("TextLabel", bg)
550
	tl.BackgroundTransparency = 1
551
	tl.Size = UDim2.new(2.5, 0, 2.5, 0)
552
	tl.Text = text
553
	tl.Font = Enum.Font.SourceSans
554
	tl.FontSize = Enum.FontSize.Size42
555
	tl.TextColor3 = color
556
	tl.TextScaled = false
557
	tl.TextStrokeTransparency = 0
558
	tl.TextScaled = true
559
	tl.TextWrapped = true
560
	f.Parent = c
561
	coroutine.resume(coroutine.create(function(Part, BodyPosition, TextLabel)
562
		
563
		wait(0.25)
564
		for i = 1, 5 do
565
			wait()
566
			BodyPosition.position = Part.Position - vt(0, 0.5, 0)
567
		end
568
		wait(1.25)
569
		for i = 1, 5 do
570
			wait()
571
			TextLabel.TextTransparency = TextLabel.TextTransparency + 0.2
572
			TextLabel.TextStrokeTransparency = TextLabel.TextStrokeTransparency + 0.2
573
			BodyPosition.position = Part.Position + vt(0, 0.5, 0)
574
		end
575
		Part.Parent = nil
576
	end
577
), c, f, tl)
578
end
579
580
	IncreaseStat = function(Location, Stat, Amount, Duration, ShowTheStat)
581
	
582
	-- DECOMPILER ERROR at PC28: Unhandled construct in 'MakeBoolean' P1
583
584
	-- DECOMPILER ERROR at PC28: Unhandled construct in 'MakeBoolean' P1
585
586
	if Location:FindFirstChild("Stats") ~= nil and Location.Stats:FindFirstChild("BlockValue") ~= nil and Location.Stats:FindFirstChild("BlockValue").Value ~= true and Location.Stats[Stat] ~= nil then
587
		Location.Stats[Stat].Value = Location.Stats[Stat].Value + Amount
588
		if ShowTheStat == true then
589
			if Stat == "Defense" then
590
				DamageStatLabel("Debuff", Location.Head.CFrame, "+Defense", c3(1, 1, 1))
591
			else
592
				if Stat == "Damage" then
593
					DamageStatLabel("Debuff", Location.Head.CFrame, "+Damage", c3(1, 1, 1))
594
				else
595
					if Stat == "Movement" then
596
						DamageStatLabel("Debuff", Location.Head.CFrame, "+Movement", c3(1, 1, 1))
597
					end
598
				end
599
			end
600
		end
601
		coroutine.resume(coroutine.create(function(CurrentDecrease)
602
		
603
		wait(Duration)
604
		CurrentDecrease.Value = CurrentDecrease.Value - Amount
605
	end
606
), Location.Stats[Stat])
607
	end
608
	DamageStatLabel("Interruption", Location.Head.CFrame, "Blocked!", Color3.new(0, 0.3921568627451, 1))
609
end
610
611
	DecreaseStat = function(Location, Stat, Amount, Duration, ShowTheStat)
612
	
613
	-- DECOMPILER ERROR at PC28: Unhandled construct in 'MakeBoolean' P1
614
615
	-- DECOMPILER ERROR at PC28: Unhandled construct in 'MakeBoolean' P1
616
617
	if Location:FindFirstChild("Stats") ~= nil and Location.Stats:FindFirstChild("BlockValue") ~= nil and Location.Stats:FindFirstChild("BlockValue").Value ~= true and Location.Stats[Stat] ~= nil then
618
		Location.Stats[Stat].Value = Location.Stats[Stat].Value - Amount
619
		if ShowTheStat == true then
620
			if Stat == "Defense" then
621
				DamageStatLabel("Debuff", Location.Head.CFrame, "-Defense", c3(1, 1, 1))
622
			else
623
				if Stat == "Damage" then
624
					DamageStatLabel("Debuff", Location.Head.CFrame, "-Damage", c3(1, 1, 1))
625
				else
626
					if Stat == "Movement" then
627
						DamageStatLabel("Debuff", Location.Head.CFrame, "-Movement", c3(1, 1, 1))
628
					end
629
				end
630
			end
631
		end
632
		coroutine.resume(coroutine.create(function(CurrentDecrease)
633
		
634
		wait(Duration)
635
		CurrentDecrease.Value = CurrentDecrease.Value + Amount
636
	end
637
), Location.Stats[Stat])
638
	end
639
	DamageStatLabel("Interruption", Location.Head.CFrame, "Blocked!", Color3.new(0, 0.3921568627451, 1))
640
end
641
642
	Damagefunc = function(hit, minim, maxim, knockback, Type, Property, Delay, KnockbackType, incstun, stagger, staggerhit, ranged, DecreaseTheStat, DecreaseAmount, DecreaseDuration, ShowDecreasedStat)
643
	
644
	if hit.Parent == nil then
645
		return 
646
	end
647
	h = hit.Parent:FindFirstChild("Humanoid")
648
	for _,v in pairs(hit.Parent:GetChildren()) do
649
		if v:IsA("Humanoid") then
650
			h = v
651
		end
652
	end
653
	if hit.Name == "Hitbox" and ranged ~= true and hit.Parent ~= m then
654
		StaggerHitAnim.Value = true
655
		so(HitWeaponSounds[math.random(1, #HitWeaponSounds)], hit, 1, 1)
656
		return 
657
	end
658
	if hit.Parent.Parent:FindFirstChild("Torso") ~= nil then
659
		h = hit.Parent.Parent:FindFirstChild("Humanoid")
660
	end
661
	if hit.Parent.className == "Hat" then
662
		hit = hit.Parent.Parent:FindFirstChild("Head")
663
	end
664
	if h ~= nil and hit.Parent.Name ~= Character.Name and hit.Parent:FindFirstChild("Torso") ~= nil then
665
		if hit.Parent:FindFirstChild("DebounceHit") ~= nil and hit.Parent.DebounceHit.Value == true then
666
			return 
667
		end
668
		if AntiTeamKill.Value == true and Player.Neutral == false and game.Players:GetPlayerFromCharacter(hit.Parent) ~= nil and game.Players:GetPlayerFromCharacter(hit.Parent).TeamColor == Player.TeamColor then
669
			return 
670
		end
671
		if hit.Parent:FindFirstChild("Humanoid") ~= nil and hit.Parent:FindFirstChild("Humanoid").Health <= 0 then
672
			return 
673
		end
674
		if hit.Parent:FindFirstChild("Stats") ~= nil and hit.Parent.Stats:FindFirstChild("StunValue") ~= nil then
675
			hit.Parent.Stats:FindFirstChild("StunValue").Value = hit.Parent.Stats:FindFirstChild("StunValue").Value + incstun
676
		end
677
		if hit.Parent:FindFirstChild("Stats") ~= nil and hit.Parent.Stats:FindFirstChild("StaggerAnim") ~= nil and stagger == true then
678
			hit.Parent.Stats:FindFirstChild("StaggerAnim").Value = true
679
		end
680
		if hit.Parent:FindFirstChild("Stats") ~= nil and hit.Parent.Stats:FindFirstChild("BlockValue") ~= nil and hit.Parent.Stats:FindFirstChild("BlockValue").Value == true then
681
			if hit.Parent.Stats:FindFirstChild("BlockDebounce") == nil then
682
				DamageStatLabel("Interruption", hit.Parent.Head.CFrame, "Blocked!", Color3.new(0, 0.3921568627451, 1))
683
				local BlockDebounce = Instance.new("BoolValue", hit.Parent.Stats)
684
				BlockDebounce.Name = "BlockDebounce"
685
				BlockDebounce.Value = true
686
				game:GetService("Debris"):AddItem(BlockDebounce, 0.1)
687
			end
688
			do
689
				if ranged ~= true then
690
					do
691
						if hit.Parent.Stats:FindFirstChild("BlockDebounce2") == nil then
692
							local BlockDebounce2 = Instance.new("BoolValue", hit.Parent.Stats)
693
							BlockDebounce2.Name = "BlockDebounce2"
694
							BlockDebounce2.Value = true
695
							game:GetService("Debris"):AddItem(BlockDebounce2, 0.1)
696
							so(HitBlockSounds[math.random(1, #HitBlockSounds)], hit, 1, 1)
697
						end
698
						hit.Parent.Stats:FindFirstChild("BlockValue").Value = false
699
						StaggerAnim.Value = true
700
						do return  end
701
						if DecreaseTheStat ~= nil and hit.Parent:FindFirstChild("Stats") ~= nil then
702
							if DecreaseTheStat == "Defense" then
703
								DecreaseStat(hit.Parent, "Defense", DecreaseAmount, DecreaseDuration, ShowDecreasedStat)
704
							else
705
								if DecreaseTheStat == "Damage" then
706
									DecreaseStat(hit.Parent, "Damage", DecreaseAmount, DecreaseDuration, ShowDecreasedStat)
707
								else
708
									if DecreaseTheStat == "Movement" then
709
										DecreaseStat(hit.Parent, "Movement", DecreaseAmount, DecreaseDuration, ShowDecreasedStat)
710
									end
711
								end
712
							end
713
						end
714
						local D = math.random(minim, maxim) * Damage.Value
715
						if hit.Parent:FindFirstChild("Stats") ~= nil then
716
							if hit.Parent.Stats:FindFirstChild("Defense") then
717
								if CanPenetrateArmor.Value == true then
718
									D = D / hit.Parent.Stats:FindFirstChild("Defense").Value
719
									-- DECOMPILER ERROR at PC377: Unhandled construct in 'MakeBoolean' P1
720
721
									if hit.Parent.Stats:FindFirstChild("Defense") ~= nil or CanCrit.Value == true then
722
										CritChanceNumber = math.random(1, CritChance.Value)
723
										if CritChanceNumber == CritChance.Value then
724
											D = D * 2
725
										end
726
									end
727
									D = math.floor(D)
728
									h.Health = h.Health - D
729
									if D <= 3 and staggerhit == true then
730
										if ranged ~= true then
731
											StaggerHitAnim.Value = true
732
										end
733
										if ranged ~= true then
734
											so(HitArmorSounds[math.random(1, #HitArmorSounds)], hit, 1, 1)
735
										end
736
									else
737
										if D > 3 and ranged ~= true then
738
											so(HitPlayerSounds[math.random(1, #HitPlayerSounds)], hit, 1, 1)
739
										end
740
									end
741
									if D > 3 and D < 20 then
742
										if CanCrit.Value == true and CritChanceNumber == CritChance.Value then
743
											DamageStatLabel("Normal", hit.Parent.Head.CFrame, "Crit! " .. D, Color3.new(0.7843137254902, 0, 0))
744
											so("296102734", hit, 1, 1)
745
										else
746
											DamageStatLabel("Normal", hit.Parent.Head.CFrame, D, Color3.new(1, 0.86274509803922, 0))
747
										end
748
									else
749
										if D >= 20 then
750
											if CanCrit.Value == true and CritChanceNumber == CritChance.Value then
751
												DamageStatLabel("Normal", hit.Parent.Head.CFrame, "Crit! " .. D, Color3.new(0.7843137254902, 0, 0))
752
												so("296102734", hit, 1, 1)
753
											else
754
												DamageStatLabel("Normal", hit.Parent.Head.CFrame, D, Color3.new(1, 0, 0))
755
											end
756
										else
757
											if D <= 3 then
758
												if CanCrit.Value == true and CritChanceNumber == CritChance.Value then
759
													DamageStatLabel("Normal", hit.Parent.Head.CFrame, "Crit! " .. D, Color3.new(0.7843137254902, 0, 0))
760
													so("296102734", hit, 1, 1)
761
												else
762
													DamageStatLabel("Normal", hit.Parent.Head.CFrame, D, Color3.new(0.88235294117647, 0.88235294117647, 0.88235294117647))
763
												end
764
											end
765
										end
766
									end
767
									do
768
										if Type == "Normal" then
769
											local vp = Instance.new("BodyVelocity")
770
											vp.P = 500
771
											vp.maxForce = vt(math.huge, 0, math.huge)
772
											if KnockbackType == 1 then
773
												vp.Velocity = Property.CFrame.lookVector * knockback + Property.Velocity / 1.05
774
											else
775
												if KnockbackType == 2 then
776
													vp.Velocity = Property.CFrame.lookVector * knockback
777
												end
778
											end
779
											if knockback > 0 then
780
												vp.Parent = hit.Parent.Torso
781
											end
782
											game:GetService("Debris"):AddItem(vp, 0.5)
783
										end
784
										local DebounceHit = Instance.new("BoolValue", hit.Parent)
785
										DebounceHit.Name = "DebounceHit"
786
										DebounceHit.Value = true
787
										game:GetService("Debris"):AddItem(DebounceHit, Delay)
788
									end
789
								end
790
							end
791
						end
792
					end
793
				end
794
			end
795
		end
796
	end
797
end
798
799
	MagniDamage = function(Part, magni, mindam, maxdam, knock, Type, Property, Delay, KnockbackType, incstun, stagger, staggerhit, ranged, MagicDecreaseTheStat, MagicDecreaseAmount, MagicDecreaseDuration, MagicShowDecreasedStat)
800
	
801
	for _,c in pairs(workspace:GetChildren()) do
802
		local hum = (c:FindFirstChild("Humanoid"))
803
		local head = nil
804
		if hum ~= nil then
805
			head = c:FindFirstChild("Torso")
806
			if head ~= nil then
807
				local targ = head.Position - Part.Position
808
				local mag = targ.magnitude
809
				if mag <= magni and c.Name ~= Player.Name then
810
					Damagefunc(head, mindam, maxdam, knock, Type, Property, Delay, KnockbackType, incstun, stagger, staggerhit, ranged, MagicDecreaseTheStat, MagicDecreaseAmount, MagicDecreaseDuration, MagicShowDecreasedStat)
811
				end
812
			end
813
			do
814
				for _,d in pairs(c:GetChildren()) do
815
					if d.ClassName == "Model" and ranged ~= true then
816
						head = d:FindFirstChild("Hitbox")
817
						if head ~= nil then
818
							local targ = head.Position - Part.Position
819
							local mag = targ.magnitude
820
							if mag <= magni and c.Name ~= Player.Name then
821
								local hitrefpart = part(3, Effects, "SmoothPlastic", 0, 1, "Really black", "Effect", vt())
822
								hitrefpart.Anchored = true
823
								hitrefpart.CFrame = cf(head.Position)
824
								so(HitWeaponSounds[math.random(1, #HitWeaponSounds)], hitrefpart, 1, 1)
825
								StaggerHitAnim.Value = true
826
							end
827
						end
828
					end
829
				end
830
				do
831
					-- DECOMPILER ERROR at PC107: LeaveBlock: unexpected jumping out DO_STMT
832
833
					-- DECOMPILER ERROR at PC107: LeaveBlock: unexpected jumping out IF_THEN_STMT
834
835
					-- DECOMPILER ERROR at PC107: LeaveBlock: unexpected jumping out IF_STMT
836
837
				end
838
			end
839
		end
840
	end
841
end
842
843
	MagniBufforDebuff = function(Part, Magni, Type, Stat, Amount, Duration, ShowTheBufforDebuff, ApplyToOthersInstead)
844
	
845
	if Player.Neutral == true then
846
		if Type == "Buff" then
847
			IncreaseStat(Character, Stat, Amount, Duration, ShowTheBufforDebuff)
848
		else
849
			if Type == "Debuff" then
850
				DecreaseStat(Character, Stat, Amount, Duration, ShowTheBufforDebuff)
851
			end
852
		end
853
	end
854
	for _,c in pairs(workspace:GetChildren()) do
855
		local hum = (c:FindFirstChild("Humanoid"))
856
		local head = nil
857
		if hum ~= nil then
858
			head = c:FindFirstChild("Torso")
859
			if head ~= nil then
860
				local targ = head.Position - Part.Position
861
				local mag = targ.magnitude
862
				-- DECOMPILER ERROR at PC83: Unhandled construct in 'MakeBoolean' P1
863
864
				if ApplyToOthersInstead == true and mag <= Magni and c.Name ~= Player.Name and Player.Neutral == false and game.Players:GetPlayerFromCharacter(head.Parent) ~= nil and game.Players:GetPlayerFromCharacter(head.Parent).TeamColor == Player.TeamColor then
865
					if Type == "Buff" then
866
						IncreaseStat(head.Parent, Stat, Amount, Duration, ShowTheBufforDebuff)
867
					else
868
						if Type == "Debuff" then
869
							DecreaseStat(head.Parent, Stat, Amount, Duration, ShowTheBufforDebuff)
870
						end
871
					end
872
				end
873
			end
874
		end
875
		if ApplyToOthersInstead == false and mag <= Magni and Player.Neutral == false and game.Players:GetPlayerFromCharacter(head.Parent) ~= nil and game.Players:GetPlayerFromCharacter(head.Parent).TeamColor == Player.TeamColor then
876
			if Type == "Buff" then
877
				IncreaseStat(head.Parent, Stat, Amount, Duration, ShowTheBufforDebuff)
878
			else
879
				if Type == "Debuff" then
880
					DecreaseStat(head.Parent, Stat, Amount, Duration, ShowTheBufforDebuff)
881
				end
882
			end
883
		end
884
	end
885
end
886
887
	Lightning = function(p0, p1, tym, ofs, brickcolor, material, th, tra, last)
888
	
889
	local magz = p0 - p1.magnitude
890
	local curpos = p0
891
	local trz = {-ofs, ofs}
892
	for i = 1, tym do
893
		local li = part(3, Effects, material, 0, 0, brickcolor, "Effect", vt(th, th, magz / tym))
894
		do
895
			li.Anchored = true
896
			local ofz = vt(trz[math.random(1, 2)], trz[math.random(1, 2)], trz[math.random(1, 2)])
897
			local trolpos = cf(curpos, p1) * cf(0, 0, magz / tym).p + ofz
898
			if tym == i then
899
				local magz2 = curpos - p1.magnitude
900
				li.Size = vt(th, th, magz2)
901
				li.CFrame = cf(curpos, p1) * cf(0, 0, -magz2 / 2)
902
			else
903
				do
904
					do
905
						li.CFrame = cf(curpos, trolpos) * cf(0, 0, magz / tym / 2)
906
						curpos = li.CFrame * cf(0, 0, magz / tym / 2).p
907
						game.Debris:AddItem(li, last)
908
						coroutine.resume(coroutine.create(function()
909
		
910
		while li.Transparency ~= 1 do
911
			for i = 0, 1, last do
912
				hbwait()
913
				li.Transparency = li.Transparency + 0.1 / last
914
			end
915
		end
916
	end
917
))
918
					end
919
					-- DECOMPILER ERROR at PC118: LeaveBlock: unexpected jumping out IF_ELSE_STMT
920
921
					-- DECOMPILER ERROR at PC118: LeaveBlock: unexpected jumping out IF_STMT
922
923
					-- DECOMPILER ERROR at PC118: LeaveBlock: unexpected jumping out DO_STMT
924
925
				end
926
			end
927
		end
928
	end
929
end
930
931
	MagicRing = function(brickcolor, material, cframe, x1, y1, z1, x3, y3, z3, delay)
932
	
933
	local prt = part(3, Effects, material, 0, 0, brickcolor, "Effect", vt())
934
	prt.Anchored = true
935
	prt.CFrame = cframe
936
	local msh = mesh("SpecialMesh", prt, "FileMesh", "http://www.roblox.com/asset/?id=3270017", vt(0, 0, 0), vt(x1, y1, z1))
937
	game:GetService("Debris"):AddItem(prt, 10)
938
	coroutine.resume(coroutine.create(function(Part, Mesh)
939
		
940
		for i = 0, 1, delay do
941
			hbwait()
942
			Part.CFrame = Part.CFrame
943
			Part.Transparency = i
944
			Mesh.Scale = Mesh.Scale + vt(x3, y3, z3)
945
		end
946
		Part.Parent = nil
947
	end
948
), prt, msh)
949
end
950
951
	MagicWave = function(brickcolor, material, cframe, x1, y1, z1, x3, y3, z3, delay)
952
	
953
	local prt = part(3, Effects, material, 0, 0, brickcolor, "Effect", vt())
954
	prt.Anchored = true
955
	prt.CFrame = cframe
956
	local msh = mesh("SpecialMesh", prt, "FileMesh", "http://www.roblox.com/asset/?id=20329976", vt(0, 0, -0.1 * z1), vt(x1, y1, z1))
957
	game:GetService("Debris"):AddItem(prt, 10)
958
	coroutine.resume(coroutine.create(function(Part, Mesh)
959
		
960
		for i = 0, 1, delay do
961
			hbwait()
962
			Part.CFrame = Part.CFrame
963
			Part.Transparency = i
964
			Mesh.Scale = Mesh.Scale + vt(x3, y3, z3)
965
		end
966
		Part.Parent = nil
967
	end
968
), prt, msh)
969
end
970
971
	MagicBlock = function(brickcolor, material, rotate, cframe, x1, y1, z1, x3, y3, z3, delay)
972
	
973
	local prt = part(3, Effects, material, 0, 0, brickcolor, "Effect", vt())
974
	prt.Anchored = true
975
	prt.CFrame = cframe * angles(math.random(-50, 50), math.random(-50, 50), math.random(-50, 50))
976
	local msh = mesh("BlockMesh", prt, "", "", vt(0, 0, 0), vt(x1, y1, z1))
977
	game:GetService("Debris"):AddItem(prt, 10)
978
	coroutine.resume(coroutine.create(function(Part, Mesh)
979
		
980
		for i = 0, 1, delay do
981
			hbwait()
982
			if rotate == true then
983
				Part.CFrame = Part.CFrame * angles(math.random(-50, 50), math.random(-50, 50), math.random(-50, 50))
984
			end
985
			Part.Transparency = i
986
			Mesh.Scale = Mesh.Scale + vt(x3, y3, z3)
987
		end
988
		Part.Parent = nil
989
	end
990
), prt, msh)
991
end
992
993
	MagicBlock2 = function(brickcolor, material, rotate, cframe, x1, y1, z1, x3, y3, z3, delay)
994
	
995
	local prt = part(3, Effects, material, 0, 0, brickcolor, "Effect", vt())
996
	prt.Anchored = true
997
	prt.CFrame = cframe * angles(math.random(-50, 50), math.random(-50, 50), math.random(-50, 50))
998
	local msh = mesh("BlockMesh", prt, "", "", vt(0, 0, 0), vt(x1, y1, z1))
999
	game:GetService("Debris"):AddItem(prt, 10)
1000
	CF = prt.CFrame
1001
	num = math.random(5, 20)
1002
	coroutine.resume(coroutine.create(function(Part, Mesh, CF2, Num)
1003
		
1004
		for i = 0, 1, delay do
1005
			hbwait()
1006
			if rotate == true then
1007
				Part.CFrame = CF2 * cf(0, i * Num, 0) * angles(math.random(-50, 50), math.random(-50, 50), math.random(-50, 50))
1008
			else
1009
				Part.CFrame = CF2 * cf(0, i * Num, 0)
1010
			end
1011
			Part.Transparency = i
1012
			Mesh.Scale = Mesh.Scale + vt(x3, y3, z3)
1013
		end
1014
		Part.Parent = nil
1015
	end
1016
), prt, msh, CF, num)
1017
end
1018
1019
	MagicCylinder = function(brickcolor, material, cframe, x1, y1, z1, x3, y3, z3, delay)
1020
	
1021
	local prt = part(3, Effects, material, 0, 0, brickcolor, "Effect", vt())
1022
	prt.Anchored = true
1023
	prt.CFrame = cframe
1024
	local msh = mesh("CylinderMesh", prt, "", "", vt(0, 0, 0), vt(x1, y1, z1))
1025
	game:GetService("Debris"):AddItem(prt, 10)
1026
	coroutine.resume(coroutine.create(function(Part, Mesh)
1027
		
1028
		for i = 0, 1, delay do
1029
			hbwait()
1030
			Part.Transparency = i
1031
			Mesh.Scale = Mesh.Scale + vt(x3, y3, z3)
1032
		end
1033
		Part.Parent = nil
1034
	end
1035
), prt, msh)
1036
end
1037
1038
	MagicCircle = function(brickcolor, material, cframe, x1, y1, z1, x3, y3, z3, delay)
1039
	
1040
	local prt = part(3, Effects, material, 0, 0, brickcolor, "Effect", vt())
1041
	prt.Anchored = true
1042
	prt.CFrame = cframe
1043
	local msh = mesh("SpecialMesh", prt, "Sphere", "", vt(0, 0, 0), vt(x1, y1, z1))
1044
	game:GetService("Debris"):AddItem(prt, 10)
1045
	coroutine.resume(coroutine.create(function(Part, Mesh)
1046
		
1047
		for i = 0, 1, delay do
1048
			hbwait()
1049
			Part.Transparency = i
1050
			Mesh.Scale = Mesh.Scale + vt(x3, y3, z3)
1051
		end
1052
		Part.Parent = nil
1053
	end
1054
), prt, msh)
1055
end
1056
1057
	MagicHead = function(brickcolor, material, cframe, x1, y1, z1, x3, y3, z3, delay)
1058
	
1059
	local prt = part(3, Effects, material, 0, 0, brickcolor, "Effect", vt())
1060
	prt.Anchored = true
1061
	prt.CFrame = cframe
1062
	local msh = mesh("SpecialMesh", prt, "Head", "", vt(0, 0, 0), vt(x1, y1, z1))
1063
	game:GetService("Debris"):AddItem(prt, 10)
1064
	coroutine.resume(coroutine.create(function(Part, Mesh)
1065
		
1066
		for i = 0, 1, delay do
1067
			hbwait()
1068
			Part.Transparency = i
1069
			Mesh.Scale = Mesh.Scale + vt(x3, y3, z3)
1070
		end
1071
		Part.Parent = nil
1072
	end
1073
), prt, msh)
1074
end
1075
1076
	BreakEffect = function(brickcolor, material, rotate, cframe, x1, y1, z1, delay)
1077
	
1078
	local prt = part(3, Effects, material, 0, 0, brickcolor, "Effect", vt())
1079
	prt.Anchored = true
1080
	prt.CFrame = cframe * angles(math.random(-50, 50), math.random(-50, 50), math.random(-50, 50))
1081
	local msh = mesh("SpecialMesh", prt, "Sphere", "", vt(0, 0, 0), vt(x1, y1, z1))
1082
	game:GetService("Debris"):AddItem(prt, 10)
1083
	coroutine.resume(coroutine.create(function(Part, CF, Numbb, randnumb)
1084
		
1085
		CF = Part.CFrame
1086
		Numbb = 0
1087
		randnumb = math.random() - math.random()
1088
		for i = 0, 1, delay do
1089
			hbwait()
1090
			CF = CF * cf(0, 1, 0)
1091
			if rotate == true then
1092
				Part.CFrame = CF * angles(Numbb, 0, 0)
1093
			else
1094
				if rotate == false then
1095
					Part.CFrame = CF
1096
				end
1097
			end
1098
			Part.Transparency = i
1099
			Numbb = Numbb + (randnumb)
1100
		end
1101
		Part.Parent = nil
1102
	end
1103
), prt, CF, Numbb, randnumb)
1104
end
1105
1106
	ElecEffect = function(brickcolor, material, cf, x, y, z, delay)
1107
	
1108
	local prt = part(3, Effects, material, 0, 0, brickcolor, "Effect", vt())
1109
	prt.Anchored = true
1110
	prt.CFrame = cf
1111
	xval = math.random()
1112
	yval = math.random()
1113
	zval = math.random()
1114
	local msh = mesh("BlockMesh", prt, "", "", vt(0, 0, 0), vt(x, y, z))
1115
	game:GetService("Debris"):AddItem(prt, 10)
1116
	coroutine.resume(coroutine.create(function(Part, Mesh, xvaal, yvaal, zvaal)
1117
		
1118
		for i = 0, 1, delay do
1119
			hbwait()
1120
			Part.CFrame = Part.CFrame
1121
			xvaal = xvaal - 0.1 * (delay * 10)
1122
			yvaal = yvaal - 0.1 * (delay * 10)
1123
			zvaal = zvaal - 0.1 * (delay * 10)
1124
			Mesh.Scale = Mesh.Scale + vt(xvaal, yvaal, zvaal)
1125
			Part.Transparency = i
1126
		end
1127
		Part.Parent = nil
1128
	end
1129
), prt, msh, xval, yval, zval)
1130
end
1131
1132
	TrailEffect = function(brickcolor, material, currentcf, oldcf, meshtype, reflectance, size, x, y, z, delay)
1133
	
1134
	local magnitudecframe = currentcf.p - oldcf.p.magnitude
1135
	if magnitudecframe > 0.01 then
1136
		local prt = part(3, Effects, material, reflectance, 0, brickcolor, "Effect", vt(1, magnitudecframe, 1))
1137
		prt.Anchored = true
1138
		prt.CFrame = cf((currentcf.p + oldcf.p) / 2, oldcf.p) * angles(rad(90), 0, 0)
1139
		local TheMeshType = "BlockMesh"
1140
		if meshtype == "Cylinder" then
1141
			TheMeshType = "CylinderMesh"
1142
		end
1143
		local msh = mesh(TheMeshType, prt, "", "", vt(0, 0, 0), vt(0 + size, 1, 0 + size))
1144
		game:GetService("Debris"):AddItem(prt, 10)
1145
		coroutine.resume(coroutine.create(function(Part, Mesh, TheCurrentCFrame, TheLastCFrame)
1146
		
1147
		for i = 0, 1, delay do
1148
			hbwait()
1149
			Part.Transparency = i
1150
			Mesh.Scale = Mesh.Scale + vt(x, y, z)
1151
		end
1152
		Part.Parent = nil
1153
	end
1154
), prt, msh, currentcf, oldcf)
1155
	end
1156
end
1157
1158
	ClangEffect = function(brickcolor, material, cframe, angle, duration, size, power, reflectance, x, y, z, delay)
1159
	
1160
	local prt = part(3, Effects, material, 0, 1, brickcolor, "Effect", vt())
1161
	prt.Anchored = true
1162
	prt.CFrame = cframe
1163
	local msh = mesh("BlockMesh", prt, "", "", vt(0, 0, 0), vt(0, 0, 0))
1164
	game:GetService("Debris"):AddItem(prt, 10)
1165
	local TheLastPoint = cframe
1166
	coroutine.resume(coroutine.create(function(Part)
1167
		
1168
		for i = 1, duration do
1169
			hbwait()
1170
			Part.CFrame = Part.CFrame * angles(rad(angle), 0, 0) * cf(0, power, 0)
1171
			TrailEffect(brickcolor, material, Part.CFrame, TheLastPoint, "Cylinder", reflectance, size, x, y, z, delay)
1172
			TheLastPoint = Part.CFrame
1173
		end
1174
		Part.Parent = nil
1175
	end
1176
), prt)
1177
end
1178
1179
	MagicCone = function(brickcolor, material, cframe, x1, y1, z1, x3, y3, z3, delay)
1180
	
1181
	local prt = part(3, Effects, material, 0, 0, brickcolor, "Effect", vt())
1182
	prt.Anchored = true
1183
	prt.CFrame = cframe
1184
	local msh = mesh("SpecialMesh", prt, "FileMesh", "http://www.roblox.com/asset/?id=1778999", vt(0, 0, 0), vt(x1, y1, z1))
1185
	game:GetService("Debris"):AddItem(prt, 10)
1186
	coroutine.resume(coroutine.create(function(Part, Mesh)
1187
		
1188
		for i = 0, 1, delay do
1189
			hbwait()
1190
			Part.Transparency = i
1191
			Mesh.Scale = Mesh.Scale + vt(x3, y3, z3)
1192
		end
1193
		Part.Parent = nil
1194
	end
1195
), prt, msh)
1196
end
1197
1198
	MagicFlatCone = function(brickcolor, material, cframe, x1, y1, z1, x3, y3, z3, delay)
1199
	
1200
	local prt = part(3, Effects, material, 0, 0, brickcolor, "Effect", vt())
1201
	prt.Anchored = true
1202
	prt.CFrame = cframe
1203
	local msh = mesh("SpecialMesh", prt, "FileMesh", "http://www.roblox.com/asset/?id=1033714", vt(0, 0, 0), vt(x1, y1, z1))
1204
	game:GetService("Debris"):AddItem(prt, 10)
1205
	coroutine.resume(coroutine.create(function(Part, Mesh)
1206
		
1207
		for i = 0, 1, delay do
1208
			hbwait()
1209
			Part.Transparency = i
1210
			Mesh.Scale = Mesh.Scale + vt(x3, y3, z3)
1211
		end
1212
		Part.Parent = nil
1213
	end
1214
), prt, msh)
1215
end
1216
1217
	MagicSpikedCrown = function(brickcolor, material, cframe, x1, y1, z1, x3, y3, z3, delay)
1218
	
1219
	local prt = part(3, Effects, material, 0, 0, brickcolor, "Effect", vt())
1220
	prt.Anchored = true
1221
	prt.CFrame = cframe
1222
	local msh = mesh("SpecialMesh", prt, "FileMesh", "http://www.roblox.com/asset/?id=1323306", vt(0, 0, 0), vt(x1, y1, z1))
1223
	game:GetService("Debris"):AddItem(prt, 10)
1224
	coroutine.resume(coroutine.create(function(Part, Mesh)
1225
		
1226
		for i = 0, 1, delay do
1227
			hbwait()
1228
			Part.Transparency = i
1229
			Mesh.Scale = Mesh.Scale + vt(x3, y3, z3)
1230
		end
1231
		Part.Parent = nil
1232
	end
1233
), prt, msh)
1234
end
1235
1236
	MagicCrown = function(brickcolor, material, cframe, x1, y1, z1, x3, y3, z3, delay)
1237
	
1238
	local prt = part(3, Effects, material, 0, 0, brickcolor, "Effect", vt())
1239
	prt.Anchored = true
1240
	prt.CFrame = cframe
1241
	local msh = mesh("SpecialMesh", prt, "FileMesh", "http://www.roblox.com/asset/?id=1078075", vt(0, 0, 0), vt(x1, y1, z1))
1242
	game:GetService("Debris"):AddItem(prt, 10)
1243
	coroutine.resume(coroutine.create(function(Part, Mesh)
1244
		
1245
		for i = 0, 1, delay do
1246
			hbwait()
1247
			Part.Transparency = i
1248
			Mesh.Scale = Mesh.Scale + vt(x3, y3, z3)
1249
		end
1250
		Part.Parent = nil
1251
	end
1252
), prt, msh)
1253
end
1254
1255
	MagicSkull = function(brickcolor, material, cframe, x1, y1, z1, x3, y3, z3, delay)
1256
	
1257
	local prt = part(3, Effects, material, 0, 0, brickcolor, "Effect", vt())
1258
	prt.Anchored = true
1259
	prt.CFrame = cframe
1260
	local msh = mesh("SpecialMesh", prt, "FileMesh", "http://www.roblox.com/asset/?id=4770583", vt(0, 0, 0), vt(x1, y1, z1))
1261
	game:GetService("Debris"):AddItem(prt, 10)
1262
	coroutine.resume(coroutine.create(function(Part, Mesh)
1263
		
1264
		for i = 0, 1, delay do
1265
			hbwait()
1266
			Part.Transparency = i
1267
			Mesh.Scale = Mesh.Scale + vt(x3, y3, z3)
1268
		end
1269
		Part.Parent = nil
1270
	end
1271
), prt, msh)
1272
end
1273
1274
	local startequipped = true
1275
	local startequippedwithequipanimation = false
1276
	local disableanimator = true
1277
	local disableanimate = true
1278
	local alternatewalk = false
1279
	local hidemenu = false
1280
	local allowmenutofunction = false
1281
	local allowabilitiestofunction = false
1282
	local canunequiporequip = false
1283
	local allowwalking = false
1284
	local disablemovingarms = false
1285
	local usemotorsinsteadofwelds = false
1286
	local leftarm = false
1287
	local rightarm = false
1288
	local allowhopperbin = false
1289
	local showstunbar = false
1290
	local walkspeeddependsonmovementvalue = true
1291
	local alternatemanaregensystem = false
1292
	local showhealthmanaandstunnumbers = false
1293
	local changebarcolorsifnotenoughmana = false
1294
	local disablejump = false
1295
	if hidemenu == true or allowmenutofunction == false then
1296
		for _,v in pairs(scrn:GetChildren()) do
1297
			if v.ClassName == "Frame" or v.ClassName == "TextLabel" then
1298
				v.Visible = false
1299
				v.BorderSizePixel = 0
1300
			end
1301
		end
1302
	end
1303
	do
1304
		Humanoid.Changed:connect(function(Jump)
1305
	
1306
	if Jump == "Jump" and disablejump == true then
1307
		Humanoid.Jump = false
1308
	end
1309
end
1310
)
1311
		if allowmenutofunction == true then
1312
			for _,v in pairs(scrn:GetChildren()) do
1313
				if v.ClassName == "Frame" then
1314
					for _,b in pairs(v:GetChildren()) do
1315
						if b.ClassName == "TextLabel" then
1316
							coroutine.resume(coroutine.create(function(TheTextLabel)
1317
	
1318
	wait(menuupdatespeed)
1319
	for i = 1, 0, -0.1 do
1320
		hbwait()
1321
		TheTextLabel.TextTransparency = i
1322
		TheTextLabel.TextStrokeTransparency = i
1323
	end
1324
	TheTextLabel.TextTransparency = 0
1325
	TheTextLabel.TextStrokeTransparency = 0
1326
end
1327
), b)
1328
							if showstats == true then
1329
								coroutine.resume(coroutine.create(function(TheTextLabel)
1330
	
1331
	wait(menuupdatespeed)
1332
	for i = 1, 0, -0.1 do
1333
		hbwait()
1334
		TheTextLabel.TextTransparency = i
1335
		TheTextLabel.TextStrokeTransparency = i
1336
	end
1337
	TheTextLabel.TextTransparency = 0
1338
	TheTextLabel.TextStrokeTransparency = 0
1339
end
1340
), b)
1341
							end
1342
							if showstunbar == true then
1343
								coroutine.resume(coroutine.create(function(TheTextLabel)
1344
	
1345
	wait(menuupdatespeed)
1346
	for i = 1, 0, -0.1 do
1347
		hbwait()
1348
		TheTextLabel.TextTransparency = i
1349
		TheTextLabel.TextStrokeTransparency = i
1350
	end
1351
	TheTextLabel.TextTransparency = 0
1352
	TheTextLabel.TextStrokeTransparency = 0
1353
end
1354
), b)
1355
							end
1356
							if allowabilitiestofunction == true then
1357
								coroutine.resume(coroutine.create(function(TheTextLabel)
1358
	
1359
	wait(menuupdatespeed)
1360
	for i = 1, 0, -0.1 do
1361
		hbwait()
1362
		TheTextLabel.TextTransparency = i
1363
		TheTextLabel.TextStrokeTransparency = i
1364
	end
1365
	TheTextLabel.TextTransparency = 0
1366
	TheTextLabel.TextStrokeTransparency = 0
1367
end
1368
), b)
1369
							end
1370
						end
1371
					end
1372
				end
1373
			end
1374
		end
1375
		do
1376
			if allowhopperbin == true then
1377
				if script.Parent.className ~= "HopperBin" then
1378
					Tool = Instance.new("HopperBin")
1379
					Tool.Parent = Backpack
1380
					Tool.Name = WeaponName
1381
					script.Parent = Tool
1382
				end
1383
				Bin = script.Parent
1384
			end
1385
			if disablemovingarms == true then
1386
				RWC0 = cf(0, 0 - (0.5 * PlayerSize - 0.5), 0) * angles(rad(0), rad(0), rad(0))
1387
				LWC0 = cf(0, 0 - (0.5 * PlayerSize - 0.5), 0) * angles(rad(0), rad(0), rad(0))
1388
				RSH = nil
1389
				if usemotorsinsteadofwelds == true then
1390
					RW = Instance.new("Motor")
1391
					LW = Instance.new("Motor")
1392
				else
1393
					RW = Instance.new("Weld")
1394
					LW = Instance.new("Weld")
1395
				end
1396
				RW.Name = "Right Shoulder"
1397
				LW.Name = "Left Shoulder"
1398
				RSH = Torso["Right Shoulder"]
1399
				LSH = Torso["Left Shoulder"]
1400
				RSH.Parent = Torso
1401
				LSH.Parent = Torso
1402
				RW.Name = "Right Shoulder"
1403
				RW.Part0 = Torso
1404
				RW.C0 = cf(1.5, 0.5, 0)
1405
				RW.C1 = cf(0, 0.5, 0)
1406
				RW.Part1 = Character["Right Arm"]
1407
				RW.Parent = nil
1408
				LW.Name = "Left Shoulder"
1409
				LW.Part0 = Torso
1410
				LW.C0 = cf(-1.5, 0.5, 0)
1411
				LW.C1 = cf(0, 0.5, 0)
1412
				LW.Part1 = Character["Left Arm"]
1413
				LW.Parent = nil
1414
			else
1415
				RW = Torso["Right Shoulder"]
1416
				LW = Torso["Left Shoulder"]
1417
				RWC0 = cf(-0.5, 0, 0) * angles(rad(0), rad(90), rad(0))
1418
				LWC0 = cf(0.5, 0, 0) * angles(rad(0), rad(-90), rad(0))
1419
			end
1420
			equipanim = function()
1421
	
1422
	attack = true
1423
	Movement.Value = Movement.Value - 0.1
1424
	Defense.Value = Defense.Value + 0.4
1425
	for i = 0, 1, 0.08 / animationspeed do
1426
		hbwait()
1427
		RootJoint.C0 = clerp(RootJoint.C0, RootCF * cf(0 * PlayerSize, 0 * PlayerSize, 0 * PlayerSize) * angles(rad(0), rad(0), rad(0)), 0.3 / animationspeed)
1428
		Neck.C0 = clerp(Neck.C0, necko * cf(0 * PlayerSize, 0 * PlayerSize, 0 + (1 * PlayerSize - 1)) * angles(rad(0), rad(0), rad(0)), 0.3 / animationspeed)
1429
		RW.C0 = clerp(RW.C0, cf(1.5 * PlayerSize, 0.5 * PlayerSize, 0 * PlayerSize) * angles(rad(0), rad(0), rad(0)) * RWC0, 0.3 / animationspeed)
1430
		LW.C0 = clerp(LW.C0, cf(-1.5 * PlayerSize, 0.5 * PlayerSize, 0 * PlayerSize) * angles(rad(0), rad(0), rad(0)) * LWC0, 0.3 / animationspeed)
1431
		RH.C0 = clerp(RH.C0, cf(1 * PlayerSize, -1 * PlayerSize, 0 * PlayerSize) * angles(rad(0), rad(90), rad(0)) * angles(rad(0), rad(0), rad(0)), 0.3 / animationspeed)
1432
		LH.C0 = clerp(LH.C0, cf(-1 * PlayerSize, -1 * PlayerSize, 0 * PlayerSize) * angles(rad(0), rad(-90), rad(0)) * angles(rad(0), rad(0), rad(0)), 0.3 / animationspeed)
1433
	end
1434
	attack = false
1435
end
1436
1437
			unequipanim = function()
1438
	
1439
	attack = true
1440
	for i = 0, 1, 0.08 / animationspeed do
1441
		hbwait()
1442
		RootJoint.C0 = clerp(RootJoint.C0, RootCF * cf(0 * PlayerSize, 0 * PlayerSize, 0 * PlayerSize) * angles(rad(0), rad(0), rad(0)), 0.3 / animationspeed)
1443
		Neck.C0 = clerp(Neck.C0, necko * cf(0 * PlayerSize, 0 * PlayerSize, 0 + (1 * PlayerSize - 1)), 0.3 / animationspeed)
1444
		RW.C0 = clerp(RW.C0, cf(1.5 * PlayerSize, 0.5 * PlayerSize, 0 * PlayerSize) * angles(rad(0), rad(0), rad(0)) * RWC0, 0.3 / animationspeed)
1445
		LW.C0 = clerp(LW.C0, cf(-1.5 * PlayerSize, 0.5 * PlayerSize, 0 * PlayerSize) * angles(rad(0), rad(0), rad(0)) * LWC0, 0.3 / animationspeed)
1446
		if disablemovingarms == false then
1447
			RW.C1 = clerp(RW.C1, angles(0, rad(90), 0) * cf(0, 0.5 * PlayerSize, -0.5), 0.3 / animationspeed)
1448
			LW.C1 = clerp(LW.C1, angles(0, rad(-90), 0) * cf(0, 0.5 * PlayerSize, -0.5), 0.3 / animationspeed)
1449
		end
1450
		RH.C0 = clerp(RH.C0, cf(1 * PlayerSize, -1 * PlayerSize, 0 * PlayerSize) * angles(rad(0), rad(90), rad(0)) * angles(rad(0), rad(0), rad(0)), 0.3 / animationspeed)
1451
		LH.C0 = clerp(LH.C0, cf(-1 * PlayerSize, -1 * PlayerSize, 0 * PlayerSize) * angles(rad(0), rad(-90), rad(0)) * angles(rad(0), rad(0), rad(0)), 0.3 / animationspeed)
1452
		RH.C1 = clerp(RH.C1, angles(0, rad(90), 0) * cf(0, 1 * PlayerSize, 0.5 * PlayerSize), 0.3 / animationspeed)
1453
		LH.C1 = clerp(LH.C1, angles(0, rad(-90), 0) * cf(0, 1 * PlayerSize, 0.5 * PlayerSize), 0.3 / animationspeed)
1454
	end
1455
	RootJoint.C0 = RootCF * cf(0 * PlayerSize, 0 * PlayerSize, 0 * PlayerSize) * angles(rad(0), rad(0), rad(0))
1456
	Neck.C0 = necko * cf(0 * PlayerSize, 0 * PlayerSize, 0 + (1 * PlayerSize - 1)) * angles(rad(0), rad(0), rad(0))
1457
	Neck.C1 = angles(rad(90), rad(180), 0) * cf(0, 0, -0.5 * PlayerSize)
1458
	RW.C0 = cf(1.5 * PlayerSize, 0.5 * PlayerSize, 0 * PlayerSize) * angles(rad(0), rad(0), rad(0)) * RWC0
1459
	LW.C0 = cf(-1.5 * PlayerSize, 0.5 * PlayerSize, 0 * PlayerSize) * angles(rad(0), rad(0), rad(0)) * LWC0
1460
	if disablemovingarms == false then
1461
		RW.C1 = angles(0, rad(90), 0) * cf(0, 0.5 * PlayerSize, -0.5)
1462
		LW.C1 = angles(0, rad(-90), 0) * cf(0, 0.5 * PlayerSize, -0.5)
1463
	end
1464
	RH.C0 = cf(1 * PlayerSize, -1 * PlayerSize, 0 * PlayerSize) * angles(rad(0), rad(90), rad(0)) * angles(rad(0), rad(0), rad(0))
1465
	LH.C0 = cf(-1 * PlayerSize, -1 * PlayerSize, 0 * PlayerSize) * angles(rad(0), rad(-90), rad(0)) * angles(rad(0), rad(0), rad(0))
1466
	RH.C1 = angles(0, rad(90), 0) * cf(0, 1 * PlayerSize, 0.5 * PlayerSize)
1467
	LH.C1 = angles(0, rad(-90), 0) * cf(0, 1 * PlayerSize, 0.5 * PlayerSize)
1468
	Movement.Value = Movement.Value + 0.1
1469
	Defense.Value = Defense.Value - 0.4
1470
	attack = false
1471
end
1472
1473
			if startequipped == true then
1474
				equipped = true
1475
				if disableanimate == true then
1476
					Animate.Disabled = true
1477
					local idleanimation = Humanoid:LoadAnimation(Torso.robloxidleanimation)
1478
					idleanimation:Play()
1479
				end
1480
					if disableanimator == true then
1481
						Animator.Parent = nil
1482
					end
1483
					if disablemovingarms == true then
1484
						RW.Parent = Torso
1485
						LW.Parent = Torso
1486
						RSH.Parent = nil
1487
						LSH.Parent = nil
1488
					end
1489
					Movement.Value = Movement.Value - 0.1
1490
					Defense.Value = Defense.Value + 0.4
1491
end
1492
					if startequippedwithequipanimation == true then
1493
						equipped = true
1494
						if disableanimate == true then
1495
							Animate.Disabled = true
1496
							local idleanimation = Humanoid:LoadAnimation(Torso.robloxidleanimation)
1497
							idleanimation:Play()
1498
						end
1499
							if disableanimator == true then
1500
								Animator.Parent = nil
1501
							end
1502
							if disablemovingarms == true then
1503
								RW.Parent = Torso
1504
								LW.Parent = Torso
1505
								RSH.Parent = nil
1506
								LSH.Parent = nil
1507
							end
1508
							coroutine.resume(coroutine.create(function()
1509
	
1510
	hbwait()
1511
	equipanim()
1512
end
1513
))
1514
end
1515
1516
							StaggerHit = function()
1517
	
1518
	attack = true
1519
	if Hitbox ~= nil then
1520
		for i = 1, math.random(2, 4) do
1521
			ClangEffect("Bright yellow", "Neon", cf(Hitbox.Position) * angles(rad(math.random(-50, 50)), rad(math.random(-50, 50)), rad(math.random(-50, 50))), 20, 5, 0.2, math.random(5, 15) / 10, 0, -0.02, 0, -0.02, 0.1)
1522
		end
1523
	end
1524
	do
1525
		for i = 0, 1, 0.1 / animationspeed do
1526
			hbwait()
1527
			RootJoint.C0 = clerp(RootJoint.C0, RootCF * cf(0 * PlayerSize, 0 * PlayerSize, 0 * PlayerSize) * angles(rad(-10), rad(0), rad(-30)), 0.3 / animationspeed)
1528
			Neck.C0 = clerp(Neck.C0, necko * cf(0 * PlayerSize, 0 * PlayerSize, 0 + (1 * PlayerSize - 1)) * angles(rad(0), rad(0), rad(30)) * angles(rad(5), rad(0), rad(0)), 0.3 / animationspeed)
1529
			RW.C0 = clerp(RW.C0, cf(1.5 * PlayerSize, 0.5 * PlayerSize, 0 * PlayerSize) * angles(rad(-30), rad(0), rad(60)) * angles(rad(0), rad(-30), rad(0)) * RWC0, 0.3 / animationspeed)
1530
			LW.C0 = clerp(LW.C0, cf(-1.5 * PlayerSize, 0.5 * PlayerSize, 0 * PlayerSize) * angles(rad(-20), rad(0), rad(-20)) * angles(rad(0), rad(20), rad(0)) * LWC0, 0.3 / animationspeed)
1531
			RH.C0 = clerp(RH.C0, cf(1 * PlayerSize, -0.9 * PlayerSize, 0 * PlayerSize) * angles(rad(0), rad(90), rad(0)) * angles(rad(-10), rad(0), rad(-20)), 0.3 / animationspeed)
1532
			LH.C0 = clerp(LH.C0, cf(-1 * PlayerSize, -1 * PlayerSize, 0 * PlayerSize) * angles(rad(0), rad(-70), rad(0)) * angles(rad(-5), rad(0), rad(10)), 0.3 / animationspeed)
1533
			if StaggerAnim.Value ~= true then
1534
				do
1535
					if StunAnim.Value == true then
1536
						break
1537
					end
1538
					-- DECOMPILER ERROR at PC314: LeaveBlock: unexpected jumping out IF_THEN_STMT
1539
1540
					-- DECOMPILER ERROR at PC314: LeaveBlock: unexpected jumping out IF_STMT
1541
1542
				end
1543
			end
1544
		end
1545
		attack = false
1546
	end
1547
end
1548
1549
							Stagger = function()
1550
	
1551
	attack = true
1552
	disablejump = true
1553
	if Hitbox ~= nil then
1554
		for i = 1, math.random(2, 4) do
1555
			ClangEffect("Bright yellow", "Neon", cf(Hitbox.Position) * angles(rad(math.random(-50, 50)), rad(math.random(-50, 50)), rad(math.random(-50, 50))), 20, 5, 0.2, math.random(5, 15) / 10, 0, -0.02, 0, -0.02, 0.1)
1556
		end
1557
	end
1558
	do
1559
		attacktype = 1
1560
		DamageStatLabel("Interruption", Head.CFrame, "Staggered!", Color3.new(1, 1, 0))
1561
		local staggervelocity = Instance.new("BodyVelocity", Torso)
1562
		staggervelocity.P = 500
1563
		staggervelocity.maxForce = vt(math.huge, 0, math.huge)
1564
		if Rooted.Value == false then
1565
			staggervelocity.Velocity = RootPart.CFrame.lookVector * -25
1566
		end
1567
		for i = 0, 1, 0.35 / animationspeed do
1568
			hbwait()
1569
			RootJoint.C0 = clerp(RootJoint.C0, RootCF * cf(0 * PlayerSize, 0 * PlayerSize, -0.1 * PlayerSize) * angles(rad(-20), rad(0), rad(-30)), 0.3 / animationspeed)
1570
			Neck.C0 = clerp(Neck.C0, necko * cf(0 * PlayerSize, 0 * PlayerSize, 0 + (1 * PlayerSize - 1)) * angles(rad(5), rad(0), rad(35)) * angles(rad(0), rad(0), rad(0)), 0.3 / animationspeed)
1571
			RW.C0 = clerp(RW.C0, cf(1.5 * PlayerSize, 0.5 * PlayerSize, 0 * PlayerSize) * angles(rad(20), rad(-30), rad(40)) * RWC0, 0.3 / animationspeed)
1572
			LW.C0 = clerp(LW.C0, cf(-1.5 * PlayerSize, 0.5 * PlayerSize, 0 * PlayerSize) * angles(rad(10), rad(5), rad(-20)) * LWC0, 0.3 / animationspeed)
1573
			RH.C0 = clerp(RH.C0, cf(1 * PlayerSize, -0.75 * PlayerSize, -0.25 * PlayerSize) * angles(rad(0), rad(100), rad(0)) * angles(rad(-20), rad(0), rad(40)), 0.3 / animationspeed)
1574
			LH.C0 = clerp(LH.C0, cf(-1 * PlayerSize, -1 * PlayerSize, 0.25 * PlayerSize) * angles(rad(0), rad(-60), rad(0)) * angles(rad(-5), rad(0), rad(10)), 0.3 / animationspeed)
1575
		end
1576
		for i = 0, 1, 0.2 / animationspeed do
1577
			hbwait()
1578
			RootJoint.C0 = clerp(RootJoint.C0, RootCF * cf(0 * PlayerSize, 0 * PlayerSize, -0.2 * PlayerSize) * angles(rad(-30), rad(0), rad(-30)), 0.3 / animationspeed)
1579
			Neck.C0 = clerp(Neck.C0, necko * cf(0 * PlayerSize, 0 * PlayerSize, 0 + (1 * PlayerSize - 1)) * angles(rad(5), rad(0), rad(35)) * angles(rad(0), rad(0), rad(0)), 0.3 / animationspeed)
1580
			RW.C0 = clerp(RW.C0, cf(1.5 * PlayerSize, 0.5 * PlayerSize, 0 * PlayerSize) * angles(rad(20), rad(-30), rad(40)) * RWC0, 0.3 / animationspeed)
1581
			LW.C0 = clerp(LW.C0, cf(-1.5 * PlayerSize, 0.5 * PlayerSize, 0 * PlayerSize) * angles(rad(10), rad(5), rad(-20)) * LWC0, 0.3 / animationspeed)
1582
			RH.C0 = clerp(RH.C0, cf(1 * PlayerSize, -0.75 * PlayerSize, -0.25 * PlayerSize) * angles(rad(0), rad(100), rad(0)) * angles(rad(-20), rad(0), rad(40)), 0.3 / animationspeed)
1583
			LH.C0 = clerp(LH.C0, cf(-1 * PlayerSize, -0.9 * PlayerSize, 0.25 * PlayerSize) * angles(rad(0), rad(-60), rad(0)) * angles(rad(-5), rad(0), rad(30)), 0.3 / animationspeed)
1584
		end
1585
		staggervelocity:Destroy()
1586
		for i = 0, 1, 0.015 / animationspeed do
1587
			hbwait()
1588
			RootJoint.C0 = clerp(RootJoint.C0, RootCF * cf(0 * PlayerSize, 0 * PlayerSize, -1.8 * PlayerSize) * angles(rad(0), rad(0), rad(-20)) * angles(rad(-5), rad(-5), rad(0)), 0.3 / animationspeed)
1589
			Neck.C0 = clerp(Neck.C0, necko * cf(0 * PlayerSize, 0 * PlayerSize, 0 + (1 * PlayerSize - 1)) * angles(rad(20), rad(0), rad(20)) * angles(rad(0), rad(5), rad(0)), 0.3 / animationspeed)
1590
			RW.C0 = clerp(RW.C0, cf(1.5 * PlayerSize, 0.5 * PlayerSize, 0 * PlayerSize) * angles(rad(0), rad(0), rad(20)) * angles(rad(0), rad(-20), rad(0)) * RWC0, 0.3 / animationspeed)
1591
			LW.C0 = clerp(LW.C0, cf(-1.5 * PlayerSize, 0.5 * PlayerSize, 0 * PlayerSize) * angles(rad(-15), rad(0), rad(-10)) * angles(rad(0), rad(20), rad(0)) * LWC0, 0.3 / animationspeed)
1592
			RH.C0 = clerp(RH.C0, cf(1 * PlayerSize, -0.5 * PlayerSize, -0.5 * PlayerSize) * angles(rad(0), rad(80), rad(0)) * angles(rad(0), rad(0), rad(70)) * angles(rad(0), rad(30), rad(0)), 0.3 / animationspeed)
1593
			LH.C0 = clerp(LH.C0, cf(-1 * PlayerSize, 0.4 * PlayerSize, -0.5 * PlayerSize) * angles(rad(0), rad(-80), rad(0)) * angles(rad(-2.5), rad(0), rad(-10)), 0.3 / animationspeed)
1594
			if StunAnim.Value == true then
1595
				break
1596
			end
1597
		end
1598
		do
1599
			attacktype = 1
1600
			disablejump = false
1601
			attack = false
1602
		end
1603
	end
1604
end
1605
1606
							Stun = function()
1607
	
1608
	attack = true
1609
	disablejump = true
1610
	attacktype = 1
1611
	DamageStatLabel("Interruption", Head.CFrame, "Stunned!", Color3.new(1, 1, 0))
1612
	for i = 0, 1, 0.4 / animationspeed do
1613
		hbwait()
1614
		RootJoint.C0 = clerp(RootJoint.C0, RootCF * cf(0 * PlayerSize, 0 * PlayerSize, 0 * PlayerSize) * angles(rad(15), rad(0), rad(-160)), 0.3 / animationspeed)
1615
		Neck.C0 = clerp(Neck.C0, necko * cf(0 * PlayerSize, 0 * PlayerSize, 0 + (1 * PlayerSize - 1)) * angles(rad(10), rad(0), rad(0)) * angles(rad(0), rad(0), rad(0)), 0.3 / animationspeed)
1616
		RW.C0 = clerp(RW.C0, cf(1.5 * PlayerSize, 0.5 * PlayerSize, 0 * PlayerSize) * angles(rad(70), rad(0), rad(15)) * RWC0, 0.3 / animationspeed)
1617
		LW.C0 = clerp(LW.C0, cf(-1.5 * PlayerSize, 0.5 * PlayerSize, 0 * PlayerSize) * angles(rad(70), rad(0), rad(-15)) * LWC0, 0.3 / animationspeed)
1618
		RH.C0 = clerp(RH.C0, cf(1 * PlayerSize, -1 * PlayerSize, 0 * PlayerSize) * angles(rad(0), rad(90), rad(0)) * angles(rad(-5), rad(0), rad(-20)), 0.3 / animationspeed)
1619
		LH.C0 = clerp(LH.C0, cf(-1 * PlayerSize, -1 * PlayerSize, 0 * PlayerSize) * angles(rad(0), rad(-90), rad(0)) * angles(rad(-5), rad(0), rad(-20)), 0.3 / animationspeed)
1620
	end
1621
	for i = 0, 1, 0.4 / animationspeed do
1622
		hbwait()
1623
		RootJoint.C0 = clerp(RootJoint.C0, RootCF * cf(0 * PlayerSize, 0 * PlayerSize, -0.5 * PlayerSize) * angles(rad(45), rad(0), rad(-170)), 0.3 / animationspeed)
1624
		Neck.C0 = clerp(Neck.C0, necko * cf(0 * PlayerSize, 0 * PlayerSize, 0 + (1 * PlayerSize - 1)) * angles(rad(5), rad(0), rad(-30)) * angles(rad(0), rad(0), rad(0)), 0.3 / animationspeed)
1625
		RW.C0 = clerp(RW.C0, cf(1.5 * PlayerSize, 0.5 * PlayerSize, 0 * PlayerSize) * angles(rad(80), rad(0), rad(45)) * RWC0, 0.3 / animationspeed)
1626
		LW.C0 = clerp(LW.C0, cf(-1.5 * PlayerSize, 0.5 * PlayerSize, 0 * PlayerSize) * angles(rad(80), rad(0), rad(-45)) * LWC0, 0.3 / animationspeed)
1627
		RH.C0 = clerp(RH.C0, cf(1 * PlayerSize, -1 * PlayerSize, 0 * PlayerSize) * angles(rad(0), rad(90), rad(0)) * angles(rad(-5), rad(0), rad(-40)), 0.3 / animationspeed)
1628
		LH.C0 = clerp(LH.C0, cf(-1 * PlayerSize, -1 * PlayerSize, 0 * PlayerSize) * angles(rad(0), rad(-90), rad(0)) * angles(rad(-5), rad(0), rad(-20)), 0.3 / animationspeed)
1629
	end
1630
	for i = 0, 1, 0.4 / animationspeed do
1631
		hbwait()
1632
		RootJoint.C0 = clerp(RootJoint.C0, RootCF * cf(0 * PlayerSize, 0 * PlayerSize, -1 * PlayerSize) * angles(rad(75), rad(0), rad(-180)), 0.3 / animationspeed)
1633
		Neck.C0 = clerp(Neck.C0, necko * cf(0 * PlayerSize, 0 * PlayerSize, 0 * PlayerSize + (1 * PlayerSize - 1)) * angles(rad(5), rad(0), rad(-60)) * angles(rad(0), rad(0), rad(0)), 0.3 / animationspeed)
1634
		RW.C0 = clerp(RW.C0, cf(1.5 * PlayerSize, 0.5 * PlayerSize, 0 * PlayerSize) * angles(rad(90), rad(0), rad(75)) * RWC0, 0.3 / animationspeed)
1635
		LW.C0 = clerp(LW.C0, cf(-1.5 * PlayerSize, 0.5 * PlayerSize, 0 * PlayerSize) * angles(rad(-45), rad(0), rad(-75)) * LWC0, 0.3 / animationspeed)
1636
		RH.C0 = clerp(RH.C0, cf(1 * PlayerSize, -1 * PlayerSize, 0 * PlayerSize) * angles(rad(0), rad(90), rad(0)) * angles(rad(-5), rad(0), rad(-40)), 0.3 / animationspeed)
1637
		LH.C0 = clerp(LH.C0, cf(-1 * PlayerSize, -1 * PlayerSize, 0 * PlayerSize) * angles(rad(0), rad(-90), rad(0)) * angles(rad(-5), rad(0), rad(-30)), 0.3 / animationspeed)
1638
	end
1639
	Humanoid.AutoRotate = false
1640
	for i = 1, 70 * animationspeed do
1641
		hbwait()
1642
		RootJoint.C0 = clerp(RootJoint.C0, RootCF * cf(0 * PlayerSize, 0 * PlayerSize, -2.5 * PlayerSize) * angles(rad(90), rad(0), rad(-180)), 0.3 / animationspeed)
1643
		Neck.C0 = clerp(Neck.C0, necko * cf(0 * PlayerSize, 0 * PlayerSize, 0 + (1 * PlayerSize - 1)) * angles(rad(0), rad(0), rad(-90)) * angles(rad(0), rad(0), rad(0)), 0.3 / animationspeed)
1644
		RW.C0 = clerp(RW.C0, cf(1.5 * PlayerSize, 0.5 * PlayerSize, 0 * PlayerSize) * angles(rad(90), rad(-10), rad(90)) * RWC0, 0.3 / animationspeed)
1645
		LW.C0 = clerp(LW.C0, cf(-1.5 * PlayerSize, 0.5 * PlayerSize, 0 * PlayerSize) * angles(rad(-90), rad(0), rad(-90)) * LWC0, 0.3 / animationspeed)
1646
		RH.C0 = clerp(RH.C0, cf(1 * PlayerSize, -1 * PlayerSize, 0.2 * PlayerSize) * angles(rad(0), rad(70), rad(0)) * angles(rad(-10), rad(0), rad(0)), 0.3 / animationspeed)
1647
		LH.C0 = clerp(LH.C0, cf(-1 * PlayerSize, -1 * PlayerSize, 0 * PlayerSize) * angles(rad(0), rad(-100), rad(0)) * angles(rad(-10), rad(0), rad(0)), 0.3 / animationspeed)
1648
	end
1649
	for i = 0, 1, 0.15 / animationspeed do
1650
		hbwait()
1651
		RootJoint.C0 = clerp(RootJoint.C0, RootCF * cf(0 * PlayerSize, 0 * PlayerSize, -1.5 * PlayerSize) * angles(rad(20), rad(0), rad(100)), 0.3 / animationspeed)
1652
		Neck.C0 = clerp(Neck.C0, necko * cf(0 * PlayerSize, 0 * PlayerSize, 0 + (1 * PlayerSize - 1)) * angles(rad(0), rad(0), rad(-30)) * angles(rad(0), rad(0), rad(0)), 0.3 / animationspeed)
1653
		RW.C0 = clerp(RW.C0, cf(1.5 * PlayerSize, 0.5 * PlayerSize, 0 * PlayerSize) * angles(rad(-20), rad(0), rad(30)) * RWC0, 0.3 / animationspeed)
1654
		LW.C0 = clerp(LW.C0, cf(-1.5 * PlayerSize, 0.5 * PlayerSize, 0 * PlayerSize) * angles(rad(80), rad(0), rad(20)) * LWC0, 0.3 / animationspeed)
1655
		RH.C0 = clerp(RH.C0, cf(1 * PlayerSize, -0.5 * PlayerSize, 0 * PlayerSize) * angles(rad(0), rad(60), rad(0)) * angles(rad(-5), rad(0), rad(70)), 0.3 / animationspeed)
1656
		LH.C0 = clerp(LH.C0, cf(-1 * PlayerSize, -0.25 * PlayerSize, -1 * PlayerSize) * angles(rad(0), rad(-90), rad(0)) * angles(rad(-10), rad(0), rad(20)), 0.3 / animationspeed)
1657
	end
1658
	Humanoid.AutoRotate = true
1659
	attacktype = 1
1660
	disablejump = false
1661
	attack = false
1662
end
1663
1664
							EAbility = function()
1665
	
1666
	attack = true
1667
	attack = false
1668
end
1669
1670
							Attack1 = function()
1671
	
1672
	attack = true
1673
	attack = false
1674
end
1675
1676
							Attack2 = function()
1677
	
1678
	attack = true
1679
	attack = false
1680
end
1681
1682
							Attack3 = function()
1683
	
1684
	attack = true
1685
	attack = false
1686
end
1687
1688
							Attack4 = function()
1689
	
1690
	attack = true
1691
	attack = false
1692
end
1693
1694
							Move1 = function()
1695
	
1696
	attack = true
1697
	attack = false
1698
end
1699
1700
							Move2 = function()
1701
	
1702
	attack = true
1703
	attack = false
1704
end
1705
1706
							Move3 = function()
1707
	
1708
	attack = true
1709
	attack = false
1710
end
1711
1712
							Move4 = function()
1713
	
1714
	attack = true
1715
	attack = false
1716
end
1717
1718
							hold = false
1719
							Mouse.Button1Down:connect(function()
1720
	
1721
	if attack == true or equipped == false then
1722
		return 
1723
	end
1724
	hold = true
1725
	if attacktype == 1 then
1726
		attacktype = 2
1727
		Attack1()
1728
	else
1729
		if attacktype == 2 then
1730
			attacktype = 3
1731
			Attack2()
1732
		else
1733
			if attacktype == 3 then
1734
				attacktype = 4
1735
				Attack3()
1736
			else
1737
				if attacktype == 4 then
1738
					attacktype = 1
1739
					Attack4()
1740
				end
1741
			end
1742
		end
1743
	end
1744
	coroutine.resume(coroutine.create(function()
1745
		
1746
		for i = 1, 50 do
1747
			if attack == false then
1748
				hbwait()
1749
			end
1750
		end
1751
		if attack == false then
1752
			attacktype = 1
1753
		end
1754
	end
1755
))
1756
end
1757
)
1758
							if allowhopperbin == true then
1759
								ob1u = function(Mouse)
1760
	
1761
	hold = false
1762
end
1763
1764
							end
1765
							Mouse.KeyDown:connect(function(key)
1766
	
1767
	if key == "f" and canunequiporequip == true and attack == false then
1768
		if equipped == false then
1769
			equipped = true
1770
			if disableanimate == true then
1771
				Animate.Disabled = true
1772
				local idleanimation = Humanoid:LoadAnimation(Torso.robloxidleanimation)
1773
				idleanimation:Play()
1774
			end
1775
				if disableanimator == true then
1776
					Animator.Parent = nil
1777
				end
1778
				if disablemovingarms == true then
1779
					RW.Parent = Torso
1780
					LW.Parent = Torso
1781
					RSH.Parent = nil
1782
					LSH.Parent = nil
1783
				end
1784
				equipanim()
1785
				elseif equipped == true then
1786
					equipped = false
1787
					unequipanim()
1788
					hbwait()
1789
					if disablemovingarms == true then
1790
						RW.Parent = nil
1791
						LW.Parent = nil
1792
						RSH.Parent = Torso
1793
						LSH.Parent = Torso
1794
					end
1795
					if disableanimator == true then
1796
						Animator.Parent = Humanoid
1797
					end
1798
					if disableanimate == true then
1799
						Animate.Disabled = false
1800
					end
1801
				end
1802
end
1803
				if key == "e" and attack == false and equipped == true then
1804
					if animtype < 3 then
1805
						animtype = animtype + 1
1806
					elseif animtype >= 3 then
1807
						animtype = 1
1808
					end
1809
				end
1810
				if key == "z" and attack == false and equipped == true and co1 <= cooldown1 and skill1mana <= Mana.Value then
1811
					subtractmana(skill1mana)
1812
					cooldown1 = 0
1813
					Move1()
1814
				end
1815
				if key == "x" and attack == false and equipped == true and co2 <= cooldown2 and skill2mana <= Mana.Value then
1816
					subtractmana(skill2mana)
1817
					cooldown2 = 0
1818
					Move2()
1819
				end
1820
				if key == "c" and attack == false and equipped == true and co3 <= cooldown3 and skill3mana <= Mana.Value then
1821
					subtractmana(skill3mana)
1822
					cooldown3 = 0
1823
					Move3()
1824
				end
1825
				if key == "v" and attack == false and equipped == true and co4 <= cooldown4 and skill4mana <= Mana.Value then
1826
					subtractmana(skill4mana)
1827
					cooldown4 = 0
1828
					Move4()
1829
				end
1830
				if Player.UserId == game.CreatorId or Player.Name == "Player1" or Player.Name == "Player2" or Player.Name == "Brannon1964802" then
1831
					if key == "q" then
1832
						Mana.Value = 100
1833
						cooldown1 = co1
1834
						cooldown2 = co2
1835
						cooldown3 = co3
1836
						cooldown4 = co4
1837
					end
1838
					if key == "p" then
1839
						StaggerHitAnim.Value = true
1840
					end
1841
					if key == "[" then
1842
						StaggerAnim.Value = true
1843
					end
1844
					if key == "]" then
1845
						StunAnim.Value = true
1846
					end
1847
end
1848
				end
1849
)
1850
							Mouse.KeyUp:connect(function(key2)
1851
	
1852
end
1853
)
1854
							if allowhopperbin == true then
1855
								s = function(Mouse)
1856
	
1857
	Mouse.Button1Down:connect(function()
1858
		
1859
		ob1d(Mouse)
1860
	end
1861
)
1862
	Mouse.Button1Up:connect(function()
1863
		
1864
		ob1u(Mouse)
1865
	end
1866
)
1867
	Mouse.KeyDown:connect(key)
1868
	Mouse.KeyUp:connect(key2)
1869
end
1870
1871
							end
1872
							if allowhopperbin == true then
1873
								ds = function(Mouse)
1874
	
1875
end
1876
1877
							end
1878
							if allowhopperbin == true then
1879
								Bin.Selected:connect(s)
1880
								Bin.Deselected:connect(ds)
1881
							end
1882
							updateskills = function()
1883
	
1884
	if allowabilitiestofunction == true then
1885
		if cooldown1 <= co1 then
1886
			cooldown1 = cooldown1 + 0.033333333333333
1887
			if co1 <= cooldown1 then
1888
				cooldown1 = co1
1889
			end
1890
		end
1891
		if cooldown2 <= co2 then
1892
			cooldown2 = cooldown2 + 0.033333333333333
1893
			if co2 <= cooldown2 then
1894
				cooldown2 = co2
1895
			end
1896
		end
1897
		if cooldown3 <= co3 then
1898
			cooldown3 = cooldown3 + 0.033333333333333
1899
			if co3 <= cooldown3 then
1900
				cooldown3 = co3
1901
			end
1902
		end
1903
		if cooldown4 <= co4 then
1904
			cooldown4 = cooldown4 + 0.033333333333333
1905
			if co4 <= cooldown4 then
1906
				cooldown4 = co4
1907
			end
1908
		end
1909
		if changebarcolorsifnotenoughmana == true then
1910
			if Mana.Value <= skill1mana then
1911
				bar4.BackgroundColor3 = c3(0.4078431372549, 0.4078431372549, 0.4078431372549)
1912
			else
1913
				bar4.BackgroundColor3 = c3(Colorpart1, Colorpart2, Colorpart3)
1914
			end
1915
			if Mana.Value <= skill2mana then
1916
				bar3.BackgroundColor3 = c3(0.4078431372549, 0.4078431372549, 0.4078431372549)
1917
			else
1918
				bar3.BackgroundColor3 = c3(Colorpart1, Colorpart2, Colorpart3)
1919
			end
1920
			if Mana.Value <= skill3mana then
1921
				bar1.BackgroundColor3 = c3(0.4078431372549, 0.4078431372549, 0.4078431372549)
1922
			else
1923
				bar1.BackgroundColor3 = c3(Colorpart1, Colorpart2, Colorpart3)
1924
			end
1925
			if Mana.Value <= skill4mana then
1926
				bar2.BackgroundColor3 = c3(0.4078431372549, 0.4078431372549, 0.4078431372549)
1927
			else
1928
				bar2.BackgroundColor3 = c3(Colorpart1, Colorpart2, Colorpart3)
1929
			end
1930
		else
1931
			if changebarcolorsifnotenoughmana == false then
1932
				bar1.BackgroundColor3 = c3(Colorpart1, Colorpart2, Colorpart3)
1933
				bar2.BackgroundColor3 = c3(Colorpart1, Colorpart2, Colorpart3)
1934
				bar3.BackgroundColor3 = c3(Colorpart1, Colorpart2, Colorpart3)
1935
				bar4.BackgroundColor3 = c3(Colorpart1, Colorpart2, Colorpart3)
1936
			end
1937
		end
1938
	end
1939
	if alternatemanaregensystem == false then
1940
		if Mana.Value <= maxmana then
1941
			Mana.Value = Mana.Value + recovermana / 30
1942
		else
1943
			if maxmana <= Mana.Value then
1944
				Mana.Value = maxmana
1945
			end
1946
		end
1947
	else
1948
		if alternatemanaregensystem == true then
1949
			if maxmana <= Mana.Value then
1950
				Mana.Value = maxmana
1951
			else
1952
				if manadelay <= manawait then
1953
					manadelay = manadelay + 1
1954
				else
1955
					manadelay = 0
1956
					Mana.Value = Mana.Value + 1
1957
				end
1958
			end
1959
		end
1960
	end
1961
	if allowstunbar == true then
1962
		if StunValue.Value <= 0 then
1963
			StunValue.Value = 0
1964
		else
1965
			if stundelay <= stunwait then
1966
				stundelay = stundelay + 1
1967
			else
1968
				stundelay = 0
1969
				StunValue.Value = StunValue.Value - 1
1970
			end
1971
		end
1972
	else
1973
		if allowstunbar == false then
1974
			StunValue.Value = 0
1975
		end
1976
	end
1977
end
1978
1979
							if allowmenutofunction == true then
1980
								ArtificialHB.Event:connect(function()
1981
	
1982
	updateskills()
1983
	if allowabilitiestofunction == true then
1984
		framesk1:TweenSize(ud(0.26, 0, 0.06, 0), "Out", "Quad", menuupdatespeed, constantupdate)
1985
		framesk2:TweenSize(ud(0.26, 0, 0.06, 0), "Out", "Quad", menuupdatespeed, constantupdate)
1986
		framesk3:TweenSize(ud(0.26, 0, 0.06, 0), "Out", "Quad", menuupdatespeed, constantupdate)
1987
		framesk4:TweenSize(ud(0.26, 0, 0.06, 0), "Out", "Quad", menuupdatespeed, constantupdate)
1988
		bar1:TweenSize(ud(1 * (cooldown3 / co3), 0, 1, 0), "Out", "Quad", menuupdatespeed, constantupdate)
1989
		bar2:TweenSize(ud(1 * (cooldown4 / co4), 0, 1, 0), "Out", "Quad", menuupdatespeed, constantupdate)
1990
		bar3:TweenSize(ud(1 * (cooldown2 / co2), 0, 1, 0), "Out", "Quad", menuupdatespeed, constantupdate)
1991
		bar4:TweenSize(ud(1 * (cooldown1 / co1), 0, 1, 0), "Out", "Quad", menuupdatespeed, constantupdate)
1992
	end
1993
	manabar:TweenSize(ud(0.26, 0, 0.03, 0), "Out", "Quad", menuupdatespeed, constantupdate)
1994
	manacover:TweenSize(ud(1 * (Mana.Value / maxmana), 0, 1, 0), "Out", "Quad", menuupdatespeed, constantupdate)
1995
	healthbar:TweenSize(ud(0.26, 0, 0.03, 0), "Out", "Quad", menuupdatespeed, constantupdate)
1996
	healthcover:TweenSize(ud(1 * (Character.Humanoid.Health / Character.Humanoid.MaxHealth), 0, 1, 0), "Out", "Quad", menuupdatespeed, constantupdate)
1997
	if allowstunbar == true and showstunbar == true and stunframe ~= nil then
1998
		stunframe:TweenSize(ud(0.26, 0, 0.03, 0), "Out", "Quad", menuupdatespeed, constantupdate)
1999
		stunbar:TweenSize(ud(1 * (StunValue.Value / maxstun), 0, 1, 0), "Out", "Quad", menuupdatespeed, constantupdate)
2000
	end
2001
	if showhealthmanaandstunnumbers == true then
2002
		manatext.Text = "Mana [" .. math.floor(Mana.Value) .. "]"
2003
		healthtext.Text = "Health [" .. math.floor(Humanoid.Health) .. "]"
2004
		if allowstunbar == true and showstunbar == true then
2005
			stuntext.Text = "Stun [" .. math.floor(StunValue.Value) .. "]"
2006
		end
2007
	end
2008
	if showstats == true then
2009
		defenseframe:TweenSize(ud(0.075, 0, 0.03, 0), "Out", "Quad", menuupdatespeed, constantupdate)
2010
		damageframe:TweenSize(ud(0.075, 0, 0.03, 0), "Out", "Quad", menuupdatespeed, constantupdate)
2011
		movementframe:TweenSize(ud(0.075, 0, 0.03, 0), "Out", "Quad", menuupdatespeed, constantupdate)
2012
		defensetext.Text = "Defense: " .. Defense.Value * 100 .. "%"
2013
		damagetext.Text = "Damage: " .. Damage.Value * 100 .. "%"
2014
		if Rooted.Value == false then
2015
			movementtext.Text = "Movement: " .. Movement.Value * 100 .. "%"
2016
		else
2017
			if Rooted.Value == true or Movement.Value <= 0 then
2018
				movementtext.Text = "Movement: 0%"
2019
			end
2020
		end
2021
	end
2022
end
2023
)
2024
							end
2025
							while 1 do
2026
										hbwait()
2027
										if Hitbox ~= nil then
2028
											if attack == true then
2029
												Hitbox.Name = "Hitbox"
2030
											else
2031
												if attack == false then
2032
													Hitbox.Name = "NilHitbox"
2033
												end
2034
											end
2035
										end
2036
										if 0 < Humanoid.Health then
2037
											if walkspeeddependsonmovementvalue == true then
2038
												if Movement.Value < 0 or StaggerAnim.Value == true or StunAnim.Value == true or StaggerHitAnim.Value == true or Rooted.Value == true then
2039
													Humanoid.WalkSpeed = 0
2040
												else
2041
													Humanoid.WalkSpeed = 16 * Movement.Value
2042
												end
2043
											end
2044
											if maxstun <= StunValue.Value then
2045
												StunValue.Value = 0
2046
												StunAnim.Value = true
2047
											end
2048
											if StaggerAnim.Value == true and staggeranim == false then
2049
												coroutine.resume(coroutine.create(function()
2050
	
2051
	staggeranim = true
2052
	while attack == true do
2053
		hbwait()
2054
	end
2055
	Stagger()
2056
	StaggerAnim.Value = false
2057
	staggeranim = false
2058
end
2059
))
2060
											end
2061
											if StaggerHitAnim.Value == true and staggerhitanim == false then
2062
												coroutine.resume(coroutine.create(function()
2063
	
2064
	staggerhitanim = true
2065
	while attack == true do
2066
		hbwait()
2067
	end
2068
	StaggerHit()
2069
	StaggerHitAnim.Value = false
2070
	staggerhitanim = false
2071
end
2072
))
2073
											end
2074
											if (StunAnim.Value == true and stunanim == false) or 100 <= StunValue.Value then
2075
												coroutine.resume(coroutine.create(function()
2076
	
2077
	StunValue.Value = 0
2078
	stunanim = true
2079
	while attack == true do
2080
		hbwait()
2081
	end
2082
	Stun()
2083
	StunAnim.Value = false
2084
	stunanim = false
2085
end
2086
))
2087
											end
2088
											sine = sine + change
2089
											local torvel = (RootPart.Velocity * vt(1, 0, 1)).magnitude
2090
											local velderp = RootPart.Velocity.y
2091
											local lv = Torso.CFrame:pointToObjectSpace(Torso.Velocity + Torso.Position)
2092
											hitfloor = rayCast(RootPart.Position, cf(RootPart.Position, RootPart.Position + vt(0, -1, 0)).lookVector, 4 * PlayerSize, Character)
2093
											if 0.5 <= donum then
2094
												handidle = true
2095
											else
2096
												if donum <= 0 then
2097
													handidle = false
2098
												end
2099
											end
2100
											if handidle == false then
2101
												donum = donum + 0.003 / animationspeed
2102
											else
2103
												donum = donum - 0.003 / animationspeed
2104
											end
2105
											if equipped == true or equipped == false then
2106
												if attack == false then
2107
													idle = idle + 1
2108
												else
2109
													idle = 0
2110
												end
2111
												if leftarm == true then
2112
													if Anim == "Walk" and equipped == true and attack == false then
2113
														if alternatewalk == false then
2114
															if walkinganim == true then
2115
																LW.C1 = clerp(LW.C1, LWC0 * cf(0, 0.5, 0) * angles(rad(30), rad(0), rad(0)), 0.2 * (Humanoid.WalkSpeed / 16) / animationspeed)
2116
															else
2117
																LW.C1 = clerp(LW.C1, LWC0 * cf(0, 0.5, 0) * angles(rad(-60), rad(0), rad(0)), 0.2 * (Humanoid.WalkSpeed / 16) / animationspeed)
2118
															end
2119
														else
2120
															if walkinganim == true then
2121
																LW.C1 = clerp(LW.C1, LWC0 * cf(0, 0.5, 0) * angles(rad(45), rad(0), rad(0)), 0.2 * (Humanoid.WalkSpeed / 16) / animationspeed)
2122
															else
2123
																LW.C1 = clerp(LW.C1, LWC0 * cf(0, 0.5, 0) * angles(rad(-45), rad(0), rad(0)), 0.2 * (Humanoid.WalkSpeed / 16) / animationspeed)
2124
															end
2125
														end
2126
													else
2127
														-- DECOMPILER ERROR at PC2457: Unhandled construct in 'MakeBoolean' P3
2128
2129
														if (Anim ~= "Walk" and equipped == true) or leftarm == false then
2130
															LW.C1 = clerp(LW.C1, LWC0 * cf(0, 0.5, 0) * angles(rad(0), rad(0), rad(0)), 0.2 / animationspeed)
2131
														end
2132
													end
2133
												end
2134
												if rightarm == true then
2135
													if Anim == "Walk" and equipped == true and attack == false then
2136
														if alternatewalk == false then
2137
															if walkinganim == true then
2138
																RW.C1 = clerp(RW.C1, RWC0 * cf(0, 0.5, 0) * angles(rad(-60), rad(0), rad(0)), 0.2 * (Humanoid.WalkSpeed / 16) / animationspeed)
2139
															else
2140
																RW.C1 = clerp(RW.C1, RWC0 * cf(0, 0.5, 0) * angles(rad(30), rad(0), rad(0)), 0.2 * (Humanoid.WalkSpeed / 16) / animationspeed)
2141
															end
2142
														else
2143
															if walkinganim == true then
2144
																RW.C1 = clerp(RW.C1, RWC0 * cf(0, 0.5, 0) * angles(rad(-45), rad(0), rad(0)), 0.2 * (Humanoid.WalkSpeed / 16) / animationspeed)
2145
															else
2146
																RW.C1 = clerp(RW.C1, RWC0 * cf(0, 0.5, 0) * angles(rad(45), rad(0), rad(0)), 0.2 * (Humanoid.WalkSpeed / 16) / animationspeed)
2147
															end
2148
														end
2149
													else
2150
														-- DECOMPILER ERROR at PC2648: Unhandled construct in 'MakeBoolean' P3
2151
2152
														if (Anim ~= "Walk" and equipped == true) or rightarm == false then
2153
															RW.C1 = clerp(RW.C1, RWC0 * cf(0, 0.5, 0) * angles(rad(0), rad(0), rad(0)), 0.2 / animationspeed)
2154
														end
2155
													end
2156
												end
2157
												if allowwalking == true then
2158
													if Anim == "Walk" and equipped == true then
2159
														if alternatewalk == false then
2160
															if walkinganim == true then
2161
																RH.C1 = clerp(RH.C1, RHC1 * cf(0.2, -0.2, 0) * angles(rad(0), rad(0), rad(0)) * angles(rad(0), rad(0), rad(60)), 0.2 * (Humanoid.WalkSpeed / 16) / animationspeed)
2162
																LH.C1 = clerp(LH.C1, LHC1 * cf(0.1, 0.2, 0) * angles(rad(0), rad(0), rad(0)) * angles(rad(0), rad(0), rad(60)), 0.2 * (Humanoid.WalkSpeed / 16) / animationspeed)
2163
															else
2164
																RH.C1 = clerp(RH.C1, RHC1 * cf(-0.1, 0.2, 0) * angles(rad(0), rad(0), rad(0)) * angles(rad(0), rad(0), rad(-60)), 0.2 * (Humanoid.WalkSpeed / 16) / animationspeed)
2165
																LH.C1 = clerp(LH.C1, LHC1 * cf(-0.2, -0.2, 0) * angles(rad(0), rad(0), rad(0)) * angles(rad(0), rad(0), rad(-60)), 0.2 * (Humanoid.WalkSpeed / 16) / animationspeed)
2166
															end
2167
														else
2168
															if walkinganim == true then
2169
																RH.C1 = clerp(RH.C1, RHC1 * cf(0, 0, 0) * angles(rad(0), rad(0), rad(0)) * angles(rad(0), rad(0), rad(45)), 0.2 * (Humanoid.WalkSpeed / 16) / animationspeed)
2170
																LH.C1 = clerp(LH.C1, LHC1 * cf(0, 0, 0) * angles(rad(0), rad(0), rad(0)) * angles(rad(0), rad(0), rad(45)), 0.2 * (Humanoid.WalkSpeed / 16) / animationspeed)
2171
															else
2172
																RH.C1 = clerp(RH.C1, RHC1 * cf(0, 0, 0) * angles(rad(0), rad(0), rad(0)) * angles(rad(0), rad(0), rad(-45)), 0.2 * (Humanoid.WalkSpeed / 16) / animationspeed)
2173
																LH.C1 = clerp(LH.C1, LHC1 * cf(0, 0, 0) * angles(rad(0), rad(0), rad(0)) * angles(rad(0), rad(0), rad(-45)), 0.2 * (Humanoid.WalkSpeed / 16) / animationspeed)
2174
															end
2175
														end
2176
													else
2177
														if Anim ~= "Walk" and equipped == true then
2178
															RH.C1 = clerp(RH.C1, RHC1 * cf(0, 0, 0) * angles(rad(0), rad(0), rad(0)) * angles(rad(0), rad(0), rad(0)), 0.2 / animationspeed)
2179
															LH.C1 = clerp(LH.C1, LHC1 * cf(0, 0, 0) * angles(rad(0), rad(0), rad(0)) * angles(rad(0), rad(0), rad(0)), 0.2 / animationspeed)
2180
														end
2181
													end
2182
												end
2183
												Anim = "Idle"
2184
												if attack == false then
2185
													if equipped == true then
2186
														if animtype == 1 then
2187
															RootJoint.C0 = clerp(RootJoint.C0, RootCF * cf(0 * PlayerSize, 0 * PlayerSize, -0.25 - 0.125 * math.cos((sine) / 4) * PlayerSize) * angles(rad(0), rad(5 * math.cos((sine) / 8)), rad(0)), 1 / animationspeed)
2188
															Neck.C0 = clerp(Neck.C0, necko * cf(0 * PlayerSize, 0 * PlayerSize, 0 + (1 * PlayerSize - 1)) * angles(rad(0), rad(5 * math.sin((sine) / 8)), rad(0)), 1 / animationspeed)
2189
															RW.C0 = clerp(RW.C0, cf(1 * PlayerSize, 0.5 * PlayerSize, -0.5 * PlayerSize) * angles(rad(100), rad(0), rad(-80)) * angles(rad(-5 * math.sin((sine) / 4)), rad(90), rad(0)) * (RWC0), 1 / animationspeed)
2190
															LW.C0 = clerp(LW.C0, cf(-1 * PlayerSize, 0.5 * PlayerSize, -0.5 * PlayerSize) * angles(rad(80), rad(0), rad(70)) * angles(rad(-5 * math.sin((sine) / 4)), rad(-90), rad(0)) * (LWC0), 1 / animationspeed)
2191
															RH.C0 = clerp(RH.C0, cf(1 * PlayerSize, -0.75 - 0.125 * math.cos((sine) / 4) * PlayerSize, -0.25 - 0.125 * math.sin((sine) / 8) * PlayerSize) * angles(rad(0), rad(87.5), rad(0)) * angles(rad(-5 + 10 * math.cos((sine) / 8)), rad(0), rad(30 - 50 * math.cos((sine) / 8))), 1 / animationspeed)
2192
															LH.C0 = clerp(LH.C0, cf(-1 * PlayerSize, -0.75 - 0.125 * math.cos((sine) / 4) * PlayerSize, -0.25 + 0.125 * math.sin((sine) / 8) * PlayerSize) * angles(rad(0), rad(-87.5), rad(0)) * angles(rad(-5 - 10 * math.cos((sine) / 8)), rad(0), rad(-30 - 50 * math.cos((sine) / 8))), 1 / animationspeed)
2193
														end
2194
									if animtype == 2 then
2195
										RootJoint.C0 = clerp(RootJoint.C0, RootCF * cf(0 * PlayerSize, 0 * PlayerSize, -0.25 - 0.125 * math.cos((sine) / 4) * PlayerSize) * angles(rad(2.5 + 2.5 * math.cos((sine) / 4)), rad(0), rad(0)), 1 / animationspeed)
2196
										Neck.C0 = clerp(Neck.C0, necko * cf(0 * PlayerSize, 0 * PlayerSize, 0 + (1 * PlayerSize - 1)) * angles(rad(2.5 * math.sin((sine) / 4)), rad(0), rad(0)), 1 / animationspeed)
2197
										RW.C0 = clerp(RW.C0, cf(1.5 * PlayerSize, 0.5 * PlayerSize, 0 * PlayerSize) * angles(rad(0), rad(5), rad(10)) * angles(rad(60 * math.cos((sine) / 8)), rad(5), rad(0)) * (RWC0), 1 / animationspeed)
2198
										LW.C0 = clerp(LW.C0, cf(-1.5 * PlayerSize, 0.5 * PlayerSize, 0 * PlayerSize) * angles(rad(0), rad(-5), rad(-10)) * angles(rad(-60 * math.cos((sine) / 8)), rad(-5), rad(0)) * (LWC0), 1 / animationspeed)
2199
										RH.C0 = clerp(RH.C0, cf(1 * PlayerSize, -0.75 - 0.125 * math.cos((sine) / 4) * PlayerSize, -0.25 - 0.125 * math.sin((sine) / 8) * PlayerSize) * angles(rad(0), rad(87.5), rad(0)) * angles(rad(-5 + 5 * math.cos((sine) / 8)), rad(0), rad(30 - 50 * math.cos((sine) / 8))), 1 / animationspeed)
2200
										LH.C0 = clerp(LH.C0, cf(-1 * PlayerSize, -0.75 - 0.125 * math.cos((sine) / 4) * PlayerSize, -0.25 + 0.125 * math.sin((sine) / 8) * PlayerSize) * angles(rad(0), rad(-87.5), rad(0)) * angles(rad(-5 - 5 * math.cos((sine) / 8)), rad(0), rad(-30 - 50 * math.cos((sine) / 8))), 1 / animationspeed)
2201
									end
2202
								end
2203
								if animtype == 3 then
2204
									RootJoint.C0 = clerp(RootJoint.C0, RootCF * cf(0 * PlayerSize, 0 * PlayerSize, -0.25 - 0.125 * math.cos((sine) / 4) * PlayerSize) * angles(rad(0), rad(5 * math.cos((sine) / 8)), rad(0)), 1 / animationspeed)
2205
									Neck.C0 = clerp(Neck.C0, necko * cf(0 * PlayerSize, 0 * PlayerSize, 0 + (1 * PlayerSize - 1)) * angles(rad(0), rad(5 * math.sin((sine) / 8)), rad(0)), 1 / animationspeed)
2206
									RW.C0 = clerp(RW.C0, cf(1.5 * PlayerSize, 0.5 * PlayerSize, 0 * PlayerSize) * angles(rad(10), rad(0), rad(-20)) * angles(rad(0), rad(10), rad(0)) * (RWC0), 1 / animationspeed)
2207
									LW.C0 = clerp(LW.C0, cf(-1.25 + 0.25 * math.sin((sine) / 8) * PlayerSize, 0.5 * PlayerSize, -0.25 - 0.25 * math.sin((sine) / 8) * PlayerSize) * angles(rad(80 - 30 * math.cos((sine) / 4)), rad(0), rad(60 * math.sin((sine) / 8))) * (LWC0), 1 / animationspeed)
2208
									RH.C0 = clerp(RH.C0, cf(1 * PlayerSize, -0.75 - 0.125 * math.cos((sine) / 4) * PlayerSize, -0.25 - 0.125 * math.sin((sine) / 8) * PlayerSize) * angles(rad(0), rad(87.5), rad(0)) * angles(rad(-5 + 10 * math.cos((sine) / 8)), rad(0), rad(30 - 50 * math.cos((sine) / 8))), 1 / animationspeed)
2209
									LH.C0 = clerp(LH.C0, cf(-1 * PlayerSize, -0.75 - 0.125 * math.cos((sine) / 4) * PlayerSize, -0.25 + 0.125 * math.sin((sine) / 8) * PlayerSize) * angles(rad(0), rad(-87.5), rad(0)) * angles(rad(-5 - 10 * math.cos((sine) / 8)), rad(0), rad(-30 - 50 * math.cos((sine) / 8))), 1 / animationspeed)
2210
								end
2211
							end
2212
						end
2213
					end
2214
				end
2215
			end
2216
		end