View difference between Paste ID: 5qzz7C7D and HM7dKMCY
SHOW: | | - or go back to the newest paste.
1
--//=========================\\--
2
--||  CREATED BY SHACKLUSTER ||--
3
--\\=========================//--
4
if game:GetService("RunService"):IsClient() then error("Script must be server-side in order to work; use h/ and not hl/") end
5
local Player,Mouse,mouse,UserInputService,ContextActionService = owner
6
do
7-
Player = game:GetService("Players").LocalPlayer
7+
	print("FE Compatibility code by Mokiros")
8
	script.Parent = Player.Character
9
10
	--RemoteEvent for communicating
11
	local Event = Instance.new("RemoteEvent")
12
	Event.Name = "UserInput_Event"
13-
Mouse = Player:GetMouse()
13+
14
	--Fake event to make stuff like Mouse.KeyDown work
15
	local function fakeEvent()
16
		local t = {_fakeEvent=true,Connect=function(self,f)self.Function=f end}
17
		t.connect = t.Connect
18
		return t
19
	end
20
21
	--Creating fake input objects with fake variables
22
    local m = {Target=nil,Hit=CFrame.new(),KeyUp=fakeEvent(),KeyDown=fakeEvent(),Button1Up=fakeEvent(),Button1Down=fakeEvent()}
23
	local UIS = {InputBegan=fakeEvent(),InputEnded=fakeEvent()}
24
	local CAS = {Actions={},BindAction=function(self,name,fun,touch,...)
25
		CAS.Actions[name] = fun and {Name=name,Function=fun,Keys={...}} or nil
26
	end}
27
	--Merged 2 functions into one by checking amount of arguments
28
	CAS.UnbindAction = CAS.BindAction
29
30
	--This function will trigger the events that have been :Connect()'ed
31
	local function te(self,ev,...)
32
		local t = m[ev]
33
		if t and t._fakeEvent and t.Function then
34
			t.Function(...)
35
		end
36
	end
37
	m.TrigEvent = te
38
	UIS.TrigEvent = te
39
40
	Event.OnServerEvent:Connect(function(plr,io)
41
	    if plr~=Player then return end
42
		if io.isMouse then
43
			m.Target = io.Target
44
			m.Hit = io.Hit
45
		else
46
			local b = io.UserInputState == Enum.UserInputState.Begin
47
			if io.UserInputType == Enum.UserInputType.MouseButton1 then
48
				return m:TrigEvent(b and "Button1Down" or "Button1Up")
49
			end
50
			for _,t in pairs(CAS.Actions) do
51
				for _,k in pairs(t.Keys) do
52
					if k==io.KeyCode then
53
						t.Function(t.Name,io.UserInputState,io)
54
					end
55
				end
56
			end
57
			m:TrigEvent(b and "KeyDown" or "KeyUp",io.KeyCode.Name:lower())
58
			UIS:TrigEvent(b and "InputBegan" or "InputEnded",io,false)
59
	    end
60
	end)
61
	Event.Parent = NLS([==[
62
	local Player = game:GetService("Players").LocalPlayer
63
	local Event = script:WaitForChild("UserInput_Event")
64
65
	local UIS = game:GetService("UserInputService")
66
	local input = function(io,a)
67
		if a then return end
68
		--Since InputObject is a client-side instance, we create and pass table instead
69
		Event:FireServer({KeyCode=io.KeyCode,UserInputType=io.UserInputType,UserInputState=io.UserInputState})
70
	end
71
	UIS.InputBegan:Connect(input)
72
	UIS.InputEnded:Connect(input)
73
74
	local Mouse = Player:GetMouse()
75
	local h,t
76
	--Give the server mouse data 30 times every second, but only if the values changed
77
	--If player is not moving their mouse, client won't fire events
78
	while wait(1/30) do
79
		if h~=Mouse.Hit or t~=Mouse.Target then
80
			h,t=Mouse.Hit,Mouse.Target
81
			Event:FireServer({isMouse=true,Target=t,Hit=h})
82
		end
83
	end]==],Player.Character)
84
	Mouse,mouse,UserInputService,ContextActionService = m,m,UIS,CAS
85
end
86
wait(0.2)
87
88
Player = owner
89
PlayerGui = Player.PlayerGui
90
Cam = workspace.CurrentCamera
91
Backpack = Player.Backpack
92
Character = Player.Character
93
Humanoid = Character.Humanoid
94
95
RootPart = Character["HumanoidRootPart"]
96
Torso = Character["Torso"]
97
Head = Character["Head"]
98
RightArm = Character["Right Arm"]
99
LeftArm = Character["Left Arm"]
100
RightLeg = Character["Right Leg"]
101
LeftLeg = Character["Left Leg"]
102
RootJoint = RootPart["RootJoint"]
103
Neck = Torso["Neck"]
104
RightShoulder = Torso["Right Shoulder"]
105
LeftShoulder = Torso["Left Shoulder"]
106
RightHip = Torso["Right Hip"]
107
LeftHip = Torso["Left Hip"]
108
local sick = Instance.new("Sound",Character)
109
sick.SoundId = "rbxassetid://408178043"
110
sick.Looped = true
111
sick.Pitch = 1
112
sick.Volume = 10
113
sick:Play()
114
local sick2 = Instance.new("Sound",Character)
115
sick2.SoundId = "rbxassetid://1143358136"
116
sick2.Looped = true
117
sick2.Pitch = 1
118
sick2.Volume = 10
119
Humanoid.DisplayDistanceType = "None"
120
Player:ClearCharacterAppearance()
121
122
IT = Instance.new
123
CF = CFrame.new
124
VT = Vector3.new
125
RAD = math.rad
126
C3 = Color3.new
127
UD2 = UDim2.new
128
BRICKC = BrickColor.new
129
ANGLES = CFrame.Angles
130
EULER = CFrame.fromEulerAnglesXYZ
131
COS = math.cos
132
ACOS = math.acos
133
SIN = math.sin
134
ASIN = math.asin
135
ABS = math.abs
136
MRANDOM = math.random
137
FLOOR = math.floor
138
139
function CreateMesh(MESH, PARENT, MESHTYPE, MESHID, TEXTUREID, SCALE, OFFSET)
140
	local NEWMESH = IT(MESH)
141
	if MESH == "SpecialMesh" then
142
		NEWMESH.MeshType = MESHTYPE
143
		if MESHID ~= "nil" and MESHID ~= "" then
144
			NEWMESH.MeshId = "http://www.roblox.com/asset/?id="..MESHID
145
		end
146
		if TEXTUREID ~= "nil" and TEXTUREID ~= "" then
147
			NEWMESH.TextureId = "http://www.roblox.com/asset/?id="..TEXTUREID
148
		end
149
	end
150
	NEWMESH.Offset = OFFSET or VT(0, 0, 0)
151
	NEWMESH.Scale = SCALE
152
	NEWMESH.Parent = PARENT
153
	return NEWMESH
154
end
155
156
function CreatePart(FORMFACTOR, PARENT, MATERIAL, REFLECTANCE, TRANSPARENCY, BRICKCOLOR, NAME, SIZE, ANCHOR)
157
	local NEWPART = IT("Part")
158
	NEWPART.formFactor = FORMFACTOR
159
	NEWPART.Reflectance = REFLECTANCE
160
	NEWPART.Transparency = TRANSPARENCY
161
	NEWPART.CanCollide = false
162
	NEWPART.Locked = true
163
	NEWPART.Anchored = true
164
	if ANCHOR == false then
165
		NEWPART.Anchored = false
166
	end
167
	NEWPART.BrickColor = BRICKC(tostring(BRICKCOLOR))
168
	NEWPART.Name = NAME
169
	NEWPART.Size = SIZE
170
	NEWPART.Position = Torso.Position
171
	NEWPART.Material = MATERIAL
172
	NEWPART:BreakJoints()
173
	NEWPART.Parent = PARENT
174
	return NEWPART
175
end
176
177
178
179
local HBill = Instance.new("BillboardGui",Head)
180
local HMain, HBar = Instance.new("Frame", HBill), Instance.new("Frame")
181
local HName = Instance.new("TextLabel")
182
HBill.Size = UDim2.new(15,0,2.2,0)
183
HBill.Name = "Health Display"
184
HBill.StudsOffset = Vector3.new(3.675,2,0)
185
HBill.AlwaysOnTop = true
186
HBill.Enabled = true
187
HMain.BackgroundColor3 = Color3.new(0, 0, 0)
188
HMain.BackgroundTransparency = 1
189
HMain.Size = UDim2.new(.5,0,.5,0)
190
HName.Parent = HMain
191
HName.BackgroundTransparency = 1
192
HName.BackgroundColor3 = Color3.new(0,0,0)
193
HName.BorderColor3 = Color3.new(0,0,0)
194
HName.BorderSizePixel = 2
195
HName.Size = UDim2.new(1,0,.75,0)
196
HName.Font = "SciFi"
197
HName.Text = "Ravager Of Death"
198
HName.TextScaled = true
199
HName.TextColor3 = Color3.new(255,0,0)
200
HName.TextStrokeColor3 = Color3.new(0,0,0)
201
HName.TextStrokeTransparency = 0
202
HName.TextYAlignment = "Bottom"
203
204
205
--//=================================\\
206
--||		  CUSTOMIZATION
207
--\\=================================//
208
209
Class_Name = "SatanBot.exe"
210
Weapon_Name = "Add-ons"
211
212
Custom_Colors = {
213
	Custom_Color_1 = BRICKC("Institutional white"); --1st color for the weapon.
214
	Custom_Color_2 = BRICKC("Institutional white"); --2nd color for the weapon.
215
216
	Custom_Color_3 = BRICKC("Institutional white"); --Color for the abilities.
217
	Custom_Color_4 = BRICKC("Institutional white"); --Color for the secondary bar.
218
	Custom_Color_5 = BRICKC("Institutional white"); --Color for the mana bar.
219
	Custom_Color_6 = BRICKC("Institutional white"); --Color for the health bar.
220
	Custom_Color_7 = BRICKC("Institutional white"); --Color for the stun bar.
221
222
	Custom_Color_8 = BRICKC("Institutional white"); --Background for the mana bar.
223
	Custom_Color_9 = BRICKC("Institutional white"); --Background for the secondary mana bar.
224
	Custom_Color_10 = BRICKC("Institutional white"); --Background for the stun bar.
225
	Custom_Color_11 = BRICKC("Institutional white"); --Background for the health bar.
226
	Custom_Color_12 = BRICKC("Institutional white"); --Background for the abilities.
227
}
228
229
230
Player_Size = 1 --Size of the player.
231
Animation_Speed = 3
232
Frame_Speed = 1 / 60 -- (1 / 30) OR (1 / 60)
233
234
local Speed = 35
235
local Effects2 = {}
236
237
--//=================================\\
238
--|| 	  END OF CUSTOMIZATION
239
--\\=================================//
240
241
	local function weldBetween(a, b)
242
	    local weldd = Instance.new("ManualWeld")
243
	    weldd.Part0 = a
244
	    weldd.Part1 = b
245
	    weldd.C0 = CFrame.new()
246
	    weldd.C1 = b.CFrame:inverse() * a.CFrame
247
	    weldd.Parent = a
248
	    return weldd
249
	end
250
251
function createaccessory(attachmentpart,mesh,texture,scale,offset,color)
252
local acs = Instance.new("Part")
253
acs.CanCollide = false
254
acs.Anchored = false
255
acs.Size = Vector3.new(0,0,0)
256
acs.CFrame = attachmentpart.CFrame
257
acs.Parent = attachmentpart
258
acs.BrickColor = color
259
    local meshs = Instance.new("SpecialMesh")
260
    meshs.MeshId = mesh
261
    meshs.TextureId = texture
262
    meshs.Parent = acs
263
    meshs.Scale = scale
264
    meshs.Offset = offset
265
weldBetween(attachmentpart,acs)
266
end
267
268
function createbodypart(TYPE,COLOR,PART,OFFSET,SIZE)
269
if TYPE == "Gem" then
270
	local acs = CreatePart(3, PART, "Plastic", 0, 0, COLOR, "Part", VT(0,0,0))
271
	acs.Anchored = false
272
    acs.CanCollide = false
273
	acs.CFrame = PART.CFrame
274
	local acs2 = CreateMesh("SpecialMesh", acs, "FileMesh", "9756362", "", SIZE, OFFSET)
275
weldBetween(PART,acs)
276
elseif TYPE == "Skull" then
277
	local acs = CreatePart(3, PART, "Plastic", 0, 0, COLOR, "Part", VT(0,0,0))
278
	acs.Anchored = false
279
    acs.CanCollide = false
280
	acs.CFrame = PART.CFrame
281
	local acs2 = CreateMesh("SpecialMesh", acs, "FileMesh", "4770583", "", SIZE, OFFSET)
282
weldBetween(PART,acs)
283
elseif TYPE == "Eye" then
284
	local acs = CreatePart(3, PART, "Neon", 0, 0, COLOR, "Part", VT(0,0,0))
285
	acs.Anchored = false
286
    acs.CanCollide = false
287
	acs.CFrame = PART.CFrame
288
	local acs2 = CreateMesh("SpecialMesh", acs, "Sphere", "", "", SIZE, OFFSET)
289
weldBetween(PART,acs)
290
end
291
end
292
293
createbodypart("Eye", "Really red", Head, VT(0.2, 0, -0.55), VT(2, 6, 2))
294
createbodypart("Eye", "Really red", Head, VT(-0.2, 0, -0.55), VT(2, 6, 2))
295
createbodypart("Eye", "Really red", Head, VT(0, 0, -0.6), VT(2, 8, 2))
296
297
--//=================================\\
298
--|| 	      USEFUL VALUES
299
--\\=================================//
300
301
local ROOTC0 = CF(0, 0, 0) * ANGLES(RAD(-90), RAD(0), RAD(180))
302
local NECKC0 = CF(0, 1, 0) * ANGLES(RAD(-90), RAD(0), RAD(180))
303
local RIGHTSHOULDERC0 = CF(-0.5, 0, 0) * ANGLES(RAD(0), RAD(90), RAD(0))
304
local LEFTSHOULDERC0 = CF(0.5, 0, 0) * ANGLES(RAD(0), RAD(-90), RAD(0))
305
local CO1 = 0
306
local CO2 = 0
307
local CO3 = 0
308
local CO4 = 0
309
local CHANGEDEFENSE = 0
310
local CHANGEDAMAGE = 0
311
local CHANGEMOVEMENT = 0
312
local ANIM = "Idle"
313
local ATTACK = false
314
local EQUIPPED = false
315
local HOLD = false
316
local COMBO = 1
317
local LASTPOINT = nil
318
local BLCF = nil
319
local SCFR = nil
320
local KEYHOLD = false
321
local STAGGERHITANIM = false
322
local STAGGERANIM = false
323
local STUNANIM = false
324
local CRITCHANCENUMBER = 0
325
local IDLENUMBER = 0
326
local DONUMBER = 0
327
local HANDIDLE = false
328
local Rooted = false
329
local SINE = 0
330
local CHANGE = 2 / Animation_Speed
331
local WALKINGANIM = false
332
local WALK = 0
333
local DANCE = false
334
local DISABLEJUMPING = false
335
local ROBLOXIDLEANIMATION = IT("Animation")
336
ROBLOXIDLEANIMATION.Name = "Roblox Idle Animation"
337
ROBLOXIDLEANIMATION.AnimationId = "http://www.roblox.com/asset/?id=180435571"
338
--ROBLOXIDLEANIMATION.Parent = Humanoid
339
local WEAPONGUI = IT("ScreenGui", PlayerGui)
340
WEAPONGUI.Name = "Weapon GUI"
341
local Weapon = IT("Model")
342
Weapon.Name = Weapon_Name
343
local Effects = IT("Folder", Weapon)
344
Effects.Name = "Effects"
345
local Bombs = IT("Folder", Weapon)
346
Bombs.Name = "BombsHolder"
347
local ANIMATOR = Humanoid.Animator
348
local ANIMATE = Character.Animate
349
local HITPLAYERSOUNDS = {--[["199149137", "199149186", "199149221", "199149235", "199149269", "199149297"--]]"263032172", "263032182", "263032200", "263032221", "263032252", "263033191"}
350
local HITARMORSOUNDS = {"199149321", "199149338", "199149367", "199149409", "199149452"}
351
local HITWEAPONSOUNDS = {"199148971", "199149025", "199149072", "199149109", "199149119"}
352
local HITBLOCKSOUNDS = {"199148933", "199148947"}
353
local UNANCHOR = true
354
local MAGICPARTICLE = "655109389"
355
356
local SKILLTEXTCOLOR = C3(0,0,0)
357
358
--//=================================\\
359
--\\=================================//
360
361
362
--//=================================\\
363
--|| SAZERENOS' ARTIFICIAL HEARTBEAT
364
--\\=================================//
365
366
ArtificialHB = Instance.new("BindableEvent", script)
367
ArtificialHB.Name = "ArtificialHB"
368
369
script:WaitForChild("ArtificialHB")
370
371
frame = Frame_Speed
372
tf = 0
373
allowframeloss = false
374
tossremainder = false
375
lastframe = tick()
376
script.ArtificialHB:Fire()
377
378
game:GetService("RunService").Heartbeat:connect(function(s, p)
379
	tf = tf + s
380
	if tf >= frame then
381
		if allowframeloss then
382
			script.ArtificialHB:Fire()
383
			lastframe = tick()
384
		else
385
			for i = 1, math.floor(tf / frame) do
386
				script.ArtificialHB:Fire()
387
			end
388
		lastframe = tick()
389
		end
390
		if tossremainder then
391
			tf = 0
392
		else
393
			tf = tf - frame * math.floor(tf / frame)
394
		end
395
	end
396
end)
397
398
--//=================================\\
399
--\\=================================//
400
401
402
403
404
405
--//=================================\\
406
--|| 	      SOME FUNCTIONS
407
--\\=================================//
408
409
function Raycast(POSITION, DIRECTION, RANGE, IGNOREDECENDANTS)
410
	return workspace:FindPartOnRay(Ray.new(POSITION, DIRECTION.unit * RANGE), IGNOREDECENDANTS)
411
end
412
413
function PositiveAngle(NUMBER)
414
	if NUMBER >= 0 then
415
		NUMBER = 0
416
	end
417
	return NUMBER
418
end
419
420
function NegativeAngle(NUMBER)
421
	if NUMBER <= 0 then
422
		NUMBER = 0
423
	end
424
	return NUMBER
425
end
426
427
function Swait(NUMBER)
428
	if NUMBER == 0 or NUMBER == nil then
429
		ArtificialHB.Event:wait()
430
	else
431
		for i = 1, NUMBER do
432
			ArtificialHB.Event:wait()
433
		end
434
	end
435
end
436
437
function QuaternionFromCFrame(cf)
438
	local mx, my, mz, m00, m01, m02, m10, m11, m12, m20, m21, m22 = cf:components()
439
	local trace = m00 + m11 + m22
440
	if trace > 0 then 
441
		local s = math.sqrt(1 + trace)
442
		local recip = 0.5 / s
443
		return (m21 - m12) * recip, (m02 - m20) * recip, (m10 - m01) * recip, s * 0.5
444
	else
445
		local i = 0
446
		if m11 > m00 then
447
			i = 1
448
		end
449
		if m22 > (i == 0 and m00 or m11) then
450
			i = 2
451
		end
452
		if i == 0 then
453
			local s = math.sqrt(m00 - m11 - m22 + 1)
454
			local recip = 0.5 / s
455
			return 0.5 * s, (m10 + m01) * recip, (m20 + m02) * recip, (m21 - m12) * recip
456
		elseif i == 1 then
457
			local s = math.sqrt(m11 - m22 - m00 + 1)
458
			local recip = 0.5 / s
459
			return (m01 + m10) * recip, 0.5 * s, (m21 + m12) * recip, (m02 - m20) * recip
460
		elseif i == 2 then
461
			local s = math.sqrt(m22 - m00 - m11 + 1)
462
			local recip = 0.5 / s return (m02 + m20) * recip, (m12 + m21) * recip, 0.5 * s, (m10 - m01) * recip
463
		end
464
	end
465
end
466
 
467
function QuaternionToCFrame(px, py, pz, x, y, z, w)
468
	local xs, ys, zs = x + x, y + y, z + z
469
	local wx, wy, wz = w * xs, w * ys, w * zs
470
	local xx = x * xs
471
	local xy = x * ys
472
	local xz = x * zs
473
	local yy = y * ys
474
	local yz = y * zs
475
	local zz = z * zs
476
	return CFrame.new(px, py, pz, 1 - (yy + zz), xy - wz, xz + wy, xy + wz, 1 - (xx + zz), yz - wx, xz - wy, yz + wx, 1 - (xx + yy))
477
end
478
 
479
	function part(formfactor,parent,material,reflectance,transparency,brickcolor,name,size)
480
		local fp=IT("Part")
481
		fp.formFactor=formfactor
482
		fp.Parent=parent
483
		fp.Reflectance=reflectance
484
		fp.Transparency=transparency
485
		fp.CanCollide=false
486
		fp.Locked=true
487
		fp.BrickColor=BrickColor.new(tostring(brickcolor))
488
		fp.Name=name
489
		fp.Size=size
490
		fp.Position=Character.Torso.Position
491
		NoOutlines(fp)
492
		fp.Material=material
493
		fp:BreakJoints()
494
		return fp
495
	end
496
	
497
	function mesh(Mesh,part,meshtype,meshid,offset,scale)
498
		local mesh=IT(Mesh)
499
		mesh.Parent=part
500
		if Mesh=="SpecialMesh" then
501
			mesh.MeshType=meshtype
502
			mesh.MeshId=meshid
503
		end
504
		mesh.Offset=offset
505
		mesh.Scale=scale
506
		return mesh
507
	end
508
509
function QuaternionSlerp(a, b, t)
510
	local cosTheta = a[1] * b[1] + a[2] * b[2] + a[3] * b[3] + a[4] * b[4]
511
	local startInterp, finishInterp;
512
	if cosTheta >= 0.0001 then
513
		if (1 - cosTheta) > 0.0001 then
514
			local theta = ACOS(cosTheta)
515
			local invSinTheta = 1 / SIN(theta)
516
			startInterp = SIN((1 - t) * theta) * invSinTheta
517
			finishInterp = SIN(t * theta) * invSinTheta
518
		else
519
			startInterp = 1 - t
520
			finishInterp = t
521
		end
522
	else
523
		if (1 + cosTheta) > 0.0001 then
524
			local theta = ACOS(-cosTheta)
525
			local invSinTheta = 1 / SIN(theta)
526
			startInterp = SIN((t - 1) * theta) * invSinTheta
527
			finishInterp = SIN(t * theta) * invSinTheta
528
		else
529
			startInterp = t - 1
530
			finishInterp = t
531
		end
532
	end
533
	return a[1] * startInterp + b[1] * finishInterp, a[2] * startInterp + b[2] * finishInterp, a[3] * startInterp + b[3] * finishInterp, a[4] * startInterp + b[4] * finishInterp
534
end
535
536
function Clerp(a, b, t)
537
	local qa = {QuaternionFromCFrame(a)}
538
	local qb = {QuaternionFromCFrame(b)}
539
	local ax, ay, az = a.x, a.y, a.z
540
	local bx, by, bz = b.x, b.y, b.z
541
	local _t = 1 - t
542
	return QuaternionToCFrame(_t * ax + t * bx, _t * ay + t * by, _t * az + t * bz, QuaternionSlerp(qa, qb, t))
543
end
544
545
function CreateFrame(PARENT, TRANSPARENCY, BORDERSIZEPIXEL, POSITION, SIZE, COLOR, BORDERCOLOR, NAME)
546
	local frame = IT("Frame")
547
	frame.BackgroundTransparency = TRANSPARENCY
548
	frame.BorderSizePixel = BORDERSIZEPIXEL
549
	frame.Position = POSITION
550
	frame.Size = SIZE
551
	frame.BackgroundColor3 = COLOR
552
	frame.BorderColor3 = BORDERCOLOR
553
	frame.Name = NAME
554
	frame.Parent = PARENT
555
	return frame
556
end
557
558
function CreateLabel(PARENT, TEXT, TEXTCOLOR, TEXTFONTSIZE, TEXTFONT, TRANSPARENCY, BORDERSIZEPIXEL, STROKETRANSPARENCY, NAME)
559
	local label = IT("TextLabel")
560
	label.BackgroundTransparency = 1
561
	label.Size = UD2(1, 0, 1, 0)
562
	label.Position = UD2(0, 0, 0, 0)
563
	label.TextColor3 = TEXTCOLOR
564
	label.TextStrokeTransparency = STROKETRANSPARENCY
565
	label.TextTransparency = TRANSPARENCY
566
	label.FontSize = TEXTFONTSIZE
567
	label.Font = TEXTFONT
568
	label.BorderSizePixel = BORDERSIZEPIXEL
569
	label.TextScaled = false
570
	label.Text = TEXT
571
	label.Name = NAME
572
	label.Parent = PARENT
573
	return label
574
end
575
576
function NoOutlines(PART)
577
	PART.TopSurface, PART.BottomSurface, PART.LeftSurface, PART.RightSurface, PART.FrontSurface, PART.BackSurface = 10, 10, 10, 10, 10, 10
578
end
579
580
581
function CreateWeldOrSnapOrMotor(TYPE, PARENT, PART0, PART1, C0, C1)
582
	local NEWWELD = IT(TYPE)
583
	NEWWELD.Part0 = PART0
584
	NEWWELD.Part1 = PART1
585
	NEWWELD.C0 = C0
586
	NEWWELD.C1 = C1
587
	NEWWELD.Parent = PARENT
588
	return NEWWELD
589
end
590
591
function CreateSound(ID, PARENT, VOLUME, PITCH)
592
	local NEWSOUND = nil
593
	coroutine.resume(coroutine.create(function()
594
		NEWSOUND = IT("Sound", PARENT)
595
		NEWSOUND.Volume = VOLUME
596
		NEWSOUND.Pitch = PITCH
597
		NEWSOUND.SoundId = "http://www.roblox.com/asset/?id="..ID
598
		Swait()
599
		NEWSOUND:play()
600
		game:GetService("Debris"):AddItem(NEWSOUND, 10)
601
	end))
602
	return NEWSOUND
603
end
604
605
function CFrameFromTopBack(at, top, back)
606
	local right = top:Cross(back)
607
	return CF(at.x, at.y, at.z, right.x, top.x, back.x, right.y, top.y, back.y, right.z, top.z, back.z)
608
end
609
610
function CreateWave(inair,size,doesrotate,rotatedirection,waitt,cframe,color)
611
	local wave = CreatePart(3, Effects, "Neon", 0, 0.5, BRICKC(color), "Effect", VT(0,0,0))
612
	local mesh = IT("SpecialMesh",wave)
613
	mesh.MeshType = "FileMesh"
614
	mesh.MeshId = "http://www.roblox.com/asset/?id=20329976"
615
	mesh.Scale = VT(size,size,size)
616
	mesh.Offset = VT(0,0,-size/8)
617
	wave.CFrame = cframe
618
	coroutine.resume(coroutine.create(function(PART)
619
		for i = 1, waitt do
620
			Swait()
621
			mesh.Scale = mesh.Scale + VT(size/5,size/5,size/5)
622
			mesh.Offset = VT(0,0,-(mesh.Scale.X/8))
623
			if doesrotate == true then
624
				wave.CFrame = wave.CFrame * CFrame.fromEulerAnglesXYZ(0, rotatedirection, 0)
625
			end
626
			wave.Transparency = wave.Transparency + (0.5/waitt)
627
			if wave.Transparency > 0.99 then
628
				wave:remove()
629
			end
630
		end
631
	end))
632
end
633
634
function CreateSwirl(inair,size,doesrotate,rotatedirection,waitt,cframe,color)
635
	local wave = CreatePart(3, Effects, "Neon", 0, 0.5, BRICKC(color), "Effect", VT(0,0,0))
636
	local mesh = IT("SpecialMesh",wave)
637
	mesh.MeshType = "FileMesh"
638
	mesh.MeshId = "http://www.roblox.com/asset/?id=1051557"
639
	mesh.Scale = VT(size,size,size)
640
	wave.CFrame = cframe
641
	coroutine.resume(coroutine.create(function(PART)
642
		for i = 1, waitt do
643
			Swait()
644
			mesh.Scale = mesh.Scale + VT(size/5,0,size/5)
645
			if doesrotate == true then
646
				wave.CFrame = wave.CFrame * CFrame.fromEulerAnglesXYZ(0, rotatedirection, 0)
647
			end
648
			wave.Transparency = wave.Transparency + (0.5/waitt)
649
			if wave.Transparency > 0.99 then
650
				wave:remove()
651
			end
652
		end
653
	end))
654
end
655
656
function CreateTornado(inair,size,doesrotate,rotatedirection,waitt,cframe,color)
657
	local wave = CreatePart(3, Effects, "Neon", 0, 0.5, BRICKC(color), "Effect", VT(0,0,0))
658
	local mesh = IT("SpecialMesh",wave)
659
	mesh.MeshType = "FileMesh"
660
	mesh.MeshId = "http://www.roblox.com/asset/?id=102638417"
661
	mesh.Scale = VT(size,size,size)
662
	wave.CFrame = cframe
663
	coroutine.resume(coroutine.create(function(PART)
664
		for i = 1, waitt do
665
			Swait()
666
			mesh.Scale = mesh.Scale + VT(size/5,0,size/5)
667
			if doesrotate == true then
668
				wave.CFrame = wave.CFrame * CFrame.fromEulerAnglesXYZ(0, rotatedirection, 0)
669
			end
670
			wave.Transparency = wave.Transparency + (0.5/waitt)
671
			if wave.Transparency > 0.99 then
672
				wave:remove()
673
			end
674
		end
675
	end))
676
end
677
678
function CreateRing(inair,size,doesrotate,rotatedirection,waitt,cframe,spin1,spin2,color)
679
	local wave = CreatePart(3, Effects, "Neon", 0, 0.5, BRICKC(color), "Effect", VT(0,0,0))
680
	local mesh = IT("SpecialMesh",wave)
681
	mesh.MeshType = "FileMesh"
682
	mesh.MeshId = "http://www.roblox.com/asset/?id=3270017"
683
	mesh.Scale = VT(size,size,size)
684
	mesh.Offset = VT(0,0,0)
685
	wave.CFrame = cframe
686
	coroutine.resume(coroutine.create(function(PART)
687
		for i = 1, waitt do
688
			Swait()
689
			mesh.Scale = mesh.Scale + VT(size/5,size/5,size/5)
690
			if doesrotate == true then
691
				wave.CFrame = wave.CFrame * CFrame.fromEulerAnglesXYZ(spin2, rotatedirection, spin1)
692
			end
693
			wave.Transparency = wave.Transparency + (0.5/waitt)
694
			if wave.Transparency > 0.99 then
695
				wave:remove()
696
			end
697
		end
698
	end))
699
end
700
701
function MagicSphere(size,waitt,cframe,color)
702
	local wave = CreatePart(3, Effects, "Neon", 0, 0, BRICKC(color), "Effect", VT(1,1,1))
703
	local mesh = IT("SpecialMesh",wave)
704
	mesh.MeshType = "Sphere"
705
	mesh.Scale = VT(size,size,size)
706
	mesh.Offset = VT(0,0,0)
707
	wave.CFrame = cframe
708
	coroutine.resume(coroutine.create(function(PART)
709
		for i = 1, waitt do
710
			Swait()
711
			mesh.Scale = mesh.Scale + VT(size/5,size/5,size/5)
712
			wave.Transparency = wave.Transparency + (1/waitt)
713
			if wave.Transparency > 0.99 then
714
				wave:remove()
715
			end
716
		end
717
	end))
718
end
719
720
function MagicSphere2(size,waitt,cframe,color)
721
	local wave = CreatePart(3, Effects, "Neon", 0, 1, BRICKC(color), "Effect", VT(1,1,1))
722
	local mesh = IT("SpecialMesh",wave)
723
	mesh.MeshType = "Sphere"
724
	mesh.Scale = VT(size,size,size)
725
	mesh.Offset = VT(0,0,0)
726
	wave.CFrame = cframe
727
	coroutine.resume(coroutine.create(function(PART)
728
		for i = 1, waitt do
729
			Swait()
730
			mesh.Scale = mesh.Scale - VT(size/waitt,size/waitt,size/waitt)
731
			wave.Transparency = wave.Transparency - (1/waitt)
732
		end
733
		wave:remove()
734
	end))
735
end
736
737
function BreakEffect(brickcolor,cframe,x1,y1,z1,material)
738
	local prt=part("Custom",workspace,material,0,0,brickcolor,"Effect",VT(0.5,0.5,0.5))
739
	prt.Anchored=true
740
	prt.CFrame=cframe*EULER(math.random(-50,50),math.random(-50,50),math.random(-50,50))
741
	local msh=mesh("SpecialMesh",prt,"Sphere","",VT(0,0,0),VT(x1,y1,z1))
742
	coroutine.resume(coroutine.create(function(Part,CF,Numbb,randnumb) 
743
		CF=Part.CFrame
744
		Numbb=0
745
		randnumb=math.random()-math.random()
746
		for i=0,1,0.05 do
747
			wait()
748
			CF=CF*CF(0,1,0)
749
			--Part.CFrame=Part.CFrame*euler(0.5,0,0)*cf(0,1,0)
750
			Part.CFrame=CF*EULER(Numbb,0,0)
751
			Part.Transparency=i
752
			Numbb=Numbb+randnumb
753
		end
754
		Part.Parent=nil
755
	end),prt)
756
end
757
758
function MagicBlock(size,waitt,cframe,color)
759
	local wave = CreatePart(3, Effects, "Neon", 0, 0, BRICKC(color), "Effect", VT(size,size,size))
760
	local mesh = IT("BlockMesh",wave)
761
	wave.CFrame = cframe
762
	coroutine.resume(coroutine.create(function(PART)
763
		for i = 1, waitt do
764
			Swait()
765
			mesh.Scale = mesh.Scale + VT(size/5,size/5,size/5)
766
			wave.CFrame = cframe * ANGLES(RAD(math.random(-360,360)),RAD(math.random(-360,360)),RAD(math.random(-360,360)))
767
			wave.Transparency = wave.Transparency + (1/waitt)
768
			if wave.Transparency > 0.99 then
769
				wave:remove()
770
			end
771
		end
772
	end))
773
end
774
775
local EyeSizes={
776
	NumberSequenceKeypoint.new(0,1,0),
777
	NumberSequenceKeypoint.new(1,0.2,0)
778
}
779
local EyeTrans={
780
	NumberSequenceKeypoint.new(0,0.8,0),
781
	NumberSequenceKeypoint.new(1,1,0)
782
}
783
local PE=Instance.new("ParticleEmitter")
784
PE.LightEmission=0
785
PE.Size=NumberSequence.new(EyeSizes)
786
PE.Transparency=NumberSequence.new(EyeTrans)
787
PE.Lifetime=NumberRange.new(0.35,0.35,0.35)
788
PE.Rotation=NumberRange.new(0,360)
789
PE.Rate=15
790
PE.Acceleration = Vector3.new(0,75,0)
791
PE.Drag = 5
792
PE.Enabled = false
793
PE.Speed = NumberRange.new(0,0,0)
794
PE.Texture="http://www.roblox.com/asset/?id=1179557490"
795
PE.ZOffset = 0
796
PE.Name = "Particles"
797
798
function CreateParticles(art,text,accel,drag,rate,type,isenabledbydefault)
799
	local particle = PE:Clone()
800
	particle.Parent = art
801
	particle.Acceleration = accel
802
	PE.Rate = rate
803
	if type == "Fire" then
804
		local EyeSizes={
805
			NumberSequenceKeypoint.new(0,1,0.3),
806
			NumberSequenceKeypoint.new(1,0.2,0.2)
807
		}
808
		PE.Size = NumberSequence.new(EyeSizes)
809
	elseif type == "Smoke" then
810
		local EyeSizes={
811
			NumberSequenceKeypoint.new(0,1,0),
812
			NumberSequenceKeypoint.new(1,5,0.5)
813
		}
814
		PE.Size = NumberSequence.new(EyeSizes)
815
	elseif type == "Solid" then
816
		local EyeSizes={
817
			NumberSequenceKeypoint.new(0,1,0),
818
			NumberSequenceKeypoint.new(1,1,0)
819
		}
820
		PE.Size = NumberSequence.new(EyeSizes)
821
	end
822
	PE.Drag = drag
823
	particle.Texture = "http://www.roblox.com/asset/?id="..text
824
	particle.Enabled = isenabledbydefault
825
return particle
826
end
827
828
function MakeForm(PART,TYPE)
829
	if TYPE == "Cyl" then
830
		local MSH = IT("CylinderMesh",PART)
831
	elseif TYPE == "Ball" then
832
		local MSH = IT("SpecialMesh",PART)
833
		MSH.MeshType = "Sphere"
834
	elseif TYPE == "Wedge" then
835
		local MSH = IT("SpecialMesh",PART)
836
		MSH.MeshType = "Wedge"
837
	end
838
end
839
840
--//=================================\\
841
--\\=================================//
842
843
function createaddongen(limb,position,size)
844
	local part = CreatePart(3, Weapon, "Glass", 0, 0, "Really black", limb.Name.." Gauntlet Part", VT(0.25*Player_Size, size*0.8*Player_Size,size*0.8*Player_Size),false)
845
	local weld = CreateWeldOrSnapOrMotor("Weld", part, limb, part, CF(0.45 * Player_Size, position * Player_Size, 0 * Player_Size) * ANGLES(RAD(45), RAD(0), RAD(0)), CF(0, 0, 0))
846
	local part = CreatePart(3, Weapon, "Neon", 0, 0, "Really red", limb.Name.." Neon Gauntlet Part", VT(0.25*Player_Size,size*Player_Size,size*Player_Size),false)
847
	local weld = CreateWeldOrSnapOrMotor("Weld", part, limb, part, CF(0.425 * Player_Size, position * Player_Size, 0 * Player_Size) * ANGLES(RAD(45), RAD(0), RAD(0)), CF(0, 0, 0))
848
end
849
850
function creategauntlet(limb)
851
	--main--
852
	local part = CreatePart(3, Weapon, "Glass", 0, 0, "Really black", limb.Name.." Gauntlet Part", VT(1.07*Player_Size,0.75+0.07*Player_Size,1.07*Player_Size),false)
853
	local weld = CreateWeldOrSnapOrMotor("Weld", part, limb, part, CF(0 * Player_Size, -0.65 * Player_Size, 0 * Player_Size) * ANGLES(RAD(0), RAD(0), RAD(0)), CF(0, 0, 0))
854
	local part = CreatePart(3, Weapon, "Glass", 0, 0, "Really black", limb.Name.." Gauntlet Part", VT(1.07*Player_Size,0.25*Player_Size,1.07*Player_Size),false)
855
	local weld = CreateWeldOrSnapOrMotor("Weld", part, limb, part, CF(0 * Player_Size, -0.115 * Player_Size, 0 * Player_Size) * ANGLES(RAD(0), RAD(90), RAD(0)), CF(0, 0, 0))
856
	MakeForm(part,"Wedge")
857
	local part = CreatePart(3, Weapon, "Glass", 0, 0, "Really black", limb.Name.." Gauntlet Part", VT(1.07*Player_Size,0.25*Player_Size,1.07*Player_Size),false)
858
	local weld = CreateWeldOrSnapOrMotor("Weld", part, limb, part, CF(0 * Player_Size, 0.115 * Player_Size, 0 * Player_Size) * ANGLES(RAD(180), RAD(-90), RAD(0)), CF(0, 0, 0))
859
	MakeForm(part,"Wedge")
860
	local part = CreatePart(3, Weapon, "Glass", 0, 0, "Really black", limb.Name.." Gauntlet Part", VT(1.07*Player_Size,0.75+0.07*Player_Size,1.07*Player_Size),false)
861
	local weld = CreateWeldOrSnapOrMotor("Weld", part, limb, part, CF(0 * Player_Size, 0.65 * Player_Size, 0 * Player_Size) * ANGLES(RAD(0), RAD(0), RAD(0)), CF(0, 0, 0))
862
	--neon addons
863
	local part = CreatePart(3, Weapon, "Neon", 0, 0, "Really red", limb.Name.." Neon Gauntlet Part", VT(1.05*Player_Size,2.05*Player_Size,1.05*Player_Size),false)
864
	local weld = CreateWeldOrSnapOrMotor("Weld", part, limb, part, CF(0 * Player_Size, 0 * Player_Size, 0 * Player_Size) * ANGLES(RAD(0), RAD(0), RAD(0)), CF(0, 0, 0))
865
	--misc--
866
	createaddongen(limb,0.25,0.75)
867
	createaddongen(limb,-0.2,0.25)
868
	createaddongen(limb,-0.35,0.25)
869
	createaddongen(limb,-0.65,0.45)
870
end
871
872
--//=================================\\
873
--||	     WEAPON CREATION
874
--\\=================================//
875
876
creategauntlet(RightArm)
877
creategauntlet(LeftLeg)
878
879
if Player_Size ~= 1 then
880
	for _, v in pairs (Weapon:GetChildren()) do
881
		if v.ClassName == "Motor" or v.ClassName == "Weld" or v.ClassName == "Snap" then
882
			local p1 = v.Part1
883
			v.Part1 = nil
884
			local cf1, cf2, cf3, cf4, cf5, cf6, cf7, cf8, cf9, cf10, cf11, cf12 = v.C1:components()
885
			v.C1 = CF(cf1 * Player_Size, cf2 * Player_Size, cf3 * Player_Size, cf4, cf5, cf6, cf7, cf8, cf9, cf10, cf11, cf12)
886
			v.Part1 = p1
887
		elseif v.ClassName == "Part" then
888
			for _, b in pairs (v:GetChildren()) do
889
				if b.ClassName == "SpecialMesh" or b.ClassName == "BlockMesh" then
890
					b.Scale = VT(b.Scale.x * Player_Size, b.Scale.y * Player_Size, b.Scale.z * Player_Size)
891
				end
892
			end
893
		end
894
	end
895
end
896
897
for _, c in pairs(Weapon:GetChildren()) do
898
	if c.ClassName == "Part" then
899
		c.CustomPhysicalProperties = PhysicalProperties.new(0, 0, 0, 0, 0)
900
	end
901
end
902
903
Weapon.Parent = Character
904
905
Humanoid.Died:connect(function()
906
	sick:remove()
907
	sick2:remove()
908
	CreateSound("167285348", Head, 3, 1)
909
	ATTACK = true
910
end)
911
912
print(Class_Name.." loaded.")
913
914
--//=================================\\
915
--|| 			SPEECH
916
--\\=================================//
917
918
function chatfunc(text,waitt)
919
local chat = coroutine.wrap(function()
920
if Character:FindFirstChild("TalkingBillBoard")~= nil then
921
Character:FindFirstChild("TalkingBillBoard"):destroy()
922
end
923
local naeeym2 = Instance.new("BillboardGui",Character)
924
naeeym2.Size = UDim2.new(0,100,0,40)
925
naeeym2.StudsOffset = Vector3.new(0,5,0)
926
naeeym2.Adornee = Character.Head
927
naeeym2.Name = "TalkingBillBoard"
928
naeeym2.AlwaysOnTop = true
929
local tecks2 = Instance.new("TextLabel",naeeym2)
930
tecks2.BackgroundTransparency = 1
931
tecks2.BorderSizePixel = 0
932
tecks2.Text = ""
933
tecks2.Font = "SciFi"
934
tecks2.TextSize = 30
935
tecks2.TextStrokeTransparency = 1
936
tecks2.TextColor3 = SKILLTEXTCOLOR
937
tecks2.TextStrokeColor3 = Color3.new(0,0,0)
938
tecks2.Size = UDim2.new(1,0,0.5,0)
939
for i = 1,string.len(text),1 do
940
tecks2.Text = string.sub(text,1,i)
941
Swait()
942
end
943
wait(waitt)
944
coroutine.resume(coroutine.create(function()
945
	for i = 1, 10 do
946
		tecks2.TextTransparency = tecks2.TextTransparency + 0.1
947
		Swait()
948
	end
949
	naeeym2:Destroy()
950
end))
951
end)
952
chat()
953
end
954
955
--//=================================\\
956
--||	     DAMAGE FUNCTIONS
957
--\\=================================//
958
959
function StatLabel(LABELTYPE, CFRAME, TEXT, COLOR)
960
	local STATPART = CreatePart(3, Effects, "SmoothPlastic", 0, 1, "Really black", "Effect", VT())
961
	STATPART.CFrame = CF(CFRAME.p + VT(0, 1.5, 0))
962
	local BODYGYRO = IT("BodyGyro", STATPART)
963
	local BODYPOSITION = IT("BodyPosition", STATPART)
964
	BODYPOSITION.P = 2000
965
	BODYPOSITION.D = 100
966
	BODYPOSITION.maxForce = VT(math.huge, math.huge, math.huge)
967
	if LABELTYPE == "Normal" then
968
		BODYPOSITION.position = STATPART.Position + VT(MRANDOM(-2, 2), 6, MRANDOM(-2, 2))
969
	elseif LABELTYPE == "Debuff" then
970
		BODYPOSITION.position = STATPART.Position + VT(MRANDOM(-2, 2), 8, MRANDOM(-2, 2))
971
	elseif LABELTYPE == "Interruption" then
972
		BODYPOSITION.position = STATPART.Position + VT(MRANDOM(-2,2), 8, MRANDOM(-2, 2))
973
	end
974
	game:GetService("Debris"):AddItem(STATPART ,5)
975
	local BILLBOARDGUI = Instance.new("BillboardGui", STATPART)
976
	BILLBOARDGUI.Adornee = STATPART
977
	BILLBOARDGUI.Size = UD2(2.5, 0, 2.5 ,0)
978
	BILLBOARDGUI.StudsOffset = VT(-2, 2, 0)
979
	BILLBOARDGUI.AlwaysOnTop = false
980
	local TEXTLABEL = Instance.new("TextLabel", BILLBOARDGUI)
981
	TEXTLABEL.BackgroundTransparency = 1
982
	TEXTLABEL.Size = UD2(2.5, 0, 2.5, 0)
983
	TEXTLABEL.Text = TEXT
984
	TEXTLABEL.Font = "SciFi"
985
	TEXTLABEL.FontSize="Size42"
986
	TEXTLABEL.TextColor3 = COLOR
987
	TEXTLABEL.TextStrokeTransparency = 1
988
	TEXTLABEL.TextScaled = true
989
	TEXTLABEL.TextWrapped = true
990
	coroutine.resume(coroutine.create(function(THEPART, THEBODYPOSITION, THETEXTLABEL)
991
		wait(0.2)
992
		for i=1, 5 do
993
			wait()
994
			THEBODYPOSITION.Position = THEPART.Position - VT(0, 0.5 ,0)
995
		end
996
		wait(1.2)
997
		for i=1, 5 do
998
			wait()
999
			THETEXTLABEL.TextTransparency = THETEXTLABEL.TextTransparency + 0.2
1000
			THETEXTLABEL.TextStrokeTransparency = THETEXTLABEL.TextStrokeTransparency + 0.2
1001
			THEBODYPOSITION.position = THEPART.Position + VT(0, 0.5, 0)
1002
		end
1003
		THEPART.Parent = nil
1004
	end),STATPART, BODYPOSITION, TEXTLABEL)
1005
end
1006
1007
1008
--//=================================\\
1009
--||			DAMAGING
1010
--\\=================================//
1011
1012
function dealdamage(hit,min,max,maxstrength,beserk,critrate,critmultiplier)
1013
	if hit.Parent:FindFirstChildOfClass("Humanoid") and hit.Parent:FindFirstChild("HitBy"..Player.Name) == nil then
1014
		local humanoid = hit.Parent:FindFirstChildOfClass("Humanoid")
1015
		local dmg = math.random(min,max)
1016
		if humanoid.Health > 0 then
1017
			if beserk == true then
1018
				humanoid.Health = 0
1019
			else
1020
				CreateSound("260430060", hit, 1.2, MRANDOM(7, 12) / 10)
1021
				hit.Velocity = CFrame.new(Torso.Position,hit.Position).lookVector*5*maxstrength
1022
				if math.random(1,100) < critrate+1 then
1023
					humanoid.Health = humanoid.Health - dmg*critmultiplier
1024
					StatLabel("Normal", hit.CFrame * CF(0, 0 + (hit.Size.z - 1), 0), "CRIT/"..dmg*critmultiplier, C3(255/255, 0, 0))
1025
				else
1026
					humanoid.Health = humanoid.Health - dmg
1027
					StatLabel("Normal", hit.CFrame * CF(0, 0 + (hit.Size.z - 1), 0), dmg, C3(0, 0, 0))
1028
				end
1029
				local defence = Instance.new("BoolValue",hit.Parent)
1030
				defence.Name = ("HitBy"..Player.Name)
1031
				game:GetService("Debris"):AddItem(defence, 0.5)
1032
			end
1033
		end
1034
	end
1035
end
1036
1037
function AoEDamage(position,radius,min,max,maxstrength,beserk,critrate,critmultiplier,CanBeDodgedByJumping)
1038
	local dmg = math.random(min,max)
1039
	for i,v in ipairs(workspace:GetChildren()) do
1040
	if v:FindFirstChild("HitBy"..Player.Name) == nil then
1041
		local body = v:GetChildren()
1042
			for part = 1, #body do
1043
				if(v:FindFirstChild("HitBy"..Player.Name) == nil and (body[part].ClassName == "Part" or body[part].ClassName == "MeshPart") and v ~= Character) then
1044
					if(body[part].Position - position).Magnitude < radius then
1045
						if v.ClassName == "Model" then
1046
							if v:FindFirstChild("Humanoid") then
1047
								if v.Humanoid.Health ~= 0 then
1048
									if CanBeDodgedByJumping == true then
1049
										if body[part].Position.Y < position.Y+5 then
1050
											if math.random(1,100) < critrate+1 then
1051
												v.Humanoid.Health = v.Humanoid.Health - dmg*critmultiplier
1052
												StatLabel("Normal", body[part].CFrame * CF(0, 0 + (body[part].Size.z - 1), 0), "CRIT/"..dmg*critmultiplier, C3(255/255, 0, 0))
1053
											else
1054
												v.Humanoid.Health = v.Humanoid.Health - dmg
1055
												StatLabel("Normal", body[part].CFrame * CF(0, 0 + (body[part].Size.z - 1), 0), dmg, C3(0, 0, 0))
1056
											end
1057
											local defence = Instance.new("BoolValue",v)
1058
											defence.Name = ("HitBy"..Player.Name)
1059
											game:GetService("Debris"):AddItem(defence, 0.5)
1060
										end
1061
									else
1062
										if beserk == true then
1063
											v.Humanoid.Health = 0
1064
										end
1065
										if math.random(1,100) < critrate+1 then
1066
											v.Humanoid.Health = v.Humanoid.Health - dmg*critmultiplier
1067
											StatLabel("Normal", body[part].CFrame * CF(0, 0 + (body[part].Size.z - 1), 0), "CRIT/"..dmg*critmultiplier, C3(255/255, 0, 0))
1068
										else
1069
											v.Humanoid.Health = v.Humanoid.Health - dmg
1070
											StatLabel("Normal", body[part].CFrame * CF(0, 0 + (body[part].Size.z - 1), 0), dmg, C3(0, 0, 0))
1071
										end
1072
										local defence = Instance.new("BoolValue",v)
1073
										defence.Name = ("HitBy"..Player.Name)
1074
										game:GetService("Debris"):AddItem(defence, 0.5)
1075
									end
1076
								end
1077
							end
1078
						end
1079
						body[part].Velocity = CFrame.new(position,body[part].Position).lookVector*5*maxstrength
1080
					end
1081
				end
1082
			end
1083
			if v.ClassName == "Part" then
1084
				if v.Anchored == false and (v.Position - position).Magnitude < radius then
1085
					v.Velocity = CFrame.new(position,v.Position).lookVector*5*maxstrength
1086
				end
1087
			end
1088
		end
1089
	end
1090
end
1091
1092
function killnearest(position,range,maxstrength)
1093
	for i,v in ipairs(workspace:GetChildren()) do
1094
	local body = v:GetChildren()
1095
		for part = 1, #body do
1096
			if((body[part].ClassName == "Part" or body[part].ClassName == "MeshPart") and v ~= Character) then
1097
				if(body[part].Position - position).Magnitude < range then
1098
					if v.ClassName == "Model" then
1099
						v:BreakJoints()
1100
					end
1101
					--table.insert(Effects2,{body[part],"Disappear",0.02,2,2,2,2})
1102
					body[part].Velocity = CFrame.new(position,body[part].Position).lookVector*5*maxstrength
1103
				end
1104
			end
1105
		end
1106
		if v.ClassName == "Part" then
1107
			if v.Anchored == false and (v.Position - position).Magnitude < range then
1108
				--table.insert(Effects2,{v,"Disappear",0.02,2,2,2,2})
1109
				v.Velocity = CFrame.new(position,v.Position).lookVector*5*maxstrength
1110
			end
1111
		end
1112
	end
1113
end
1114
1115
--//=================================\\
1116
--||	ATTACK FUNCTIONS AND STUFF
1117
--\\=================================//
1118
1119
function CheckTableForString(Table, String)
1120
	for i, v in pairs(Table) do
1121
		if string.find(string.lower(String), string.lower(v)) then
1122
			return true
1123
		end
1124
	end
1125
	return false
1126
end
1127
1128
function CheckIntangible(Hit)
1129
	local ProjectileNames = {"Water", "Arrow", "Projectile", "Effect", "Rail", "Lightning", "Bullet"}
1130
	if Hit and Hit.Parent then
1131
		if ((not Hit.CanCollide or CheckTableForString(ProjectileNames, Hit.Name)) and not Hit.Parent:FindFirstChild("Humanoid")) then
1132
			return true
1133
		end
1134
	end
1135
	return false
1136
end
1137
1138
Debris = game:GetService("Debris")
1139
1140
function CastZapRay(StartPos, Vec, Length, Ignore, DelayIfHit)
1141
	local Direction = CFrame.new(StartPos, Vec).lookVector
1142
	local Ignore = ((type(Ignore) == "table" and Ignore) or {Ignore})
1143
	local RayHit, RayPos, RayNormal = game:GetService("Workspace"):FindPartOnRayWithIgnoreList(Ray.new(StartPos, Direction * Length), Ignore)
1144
	if RayHit and CheckIntangible(RayHit) then
1145
		if DelayIfHit then
1146
			wait()
1147
		end
1148
		RayHit, RayPos, RayNormal = CastZapRay((RayPos + (Vec * 0.01)), Vec, (Length - ((StartPos - RayPos).magnitude)), Ignore, DelayIfHit)
1149
	end
1150
	return RayHit, RayPos, RayNormal
1151
end
1152
1153
function turnto(position)
1154
	RootPart.CFrame=CFrame.new(RootPart.CFrame.p,VT(position.X,RootPart.Position.Y,position.Z)) * CFrame.new(0, 0, 0)
1155
end
1156
1157
function ExplodeBomb(b)
1158
	b.Parent = Effects
1159
	b.Anchored = true
1160
	CreateSound("215395285", b, 10, 1)
1161
	MagicSphere(5,50,b.CFrame,"Really red")
1162
	b.Transparency = 1
1163
	MagicBlock(3,45,b.CFrame,"Really red")
1164
	--BreakEffect("Really red",b.CFrame,2,2,2,"Neon")
1165
	for i = 1, 10 do
1166
		CreateSwirl(0,5,true,-0.2,25,b.CFrame * ANGLES(RAD(math.random(-360,360)),RAD(math.random(-360,360)),RAD(math.random(-360,360))),"Really black")
1167
	end
1168
	killnearest(b.Position,30,25)
1169
	game:GetService("Debris"):AddItem(b, 5)
1170
end
1171
1172
function Detonate()
1173
	bomb = Bombs:GetChildren()
1174
	for lol = 1, #bomb do
1175
		if bomb[lol].ClassName == "Part" then
1176
			local b = bomb[lol]
1177
			ExplodeBomb(b)
1178
		end
1179
	end
1180
end
1181
1182
1183
1184
function TyranyCannon()
1185
	ATTACK = true
1186
	for i=0, 1, 0.1 / Animation_Speed do
1187
		Swait()
1188
		turnto(Mouse.Hit.p)
1189
		RootJoint.C0 = Clerp(RootJoint.C0, ROOTC0 * CF(0.05 * Player_Size, 0 * Player_Size, -0.1 * Player_Size) * ANGLES(RAD(10), RAD(0), RAD(40)), 0.2 * (Humanoid.WalkSpeed / 16) / Animation_Speed/5)
1190
		Neck.C0 = Clerp(Neck.C0, NECKC0 * CF(0 * Player_Size, 0 * Player_Size, 0 + ((1 * Player_Size) - 1)) * ANGLES(RAD(0), RAD(0), RAD(0)) * ANGLES(RAD(-5), RAD(0), RAD(0)), 0.2 * (Humanoid.WalkSpeed / 16) / Animation_Speed)
1191
		RightShoulder.C0 = Clerp(RightShoulder.C0, CF(1 * Player_Size, 0.5 * Player_Size, -1 * Player_Size) * ANGLES(RAD(90), RAD(0), RAD(0)) * ANGLES(RAD(0), RAD(0), RAD(0)) * RIGHTSHOULDERC0, 0.4 / Animation_Speed)
1192
		LeftShoulder.C0 = Clerp(LeftShoulder.C0, CF(-1.5 * Player_Size, 0.5 * Player_Size, 0 * Player_Size) * ANGLES(RAD(10 - 2.5 * COS(SINE / 16)), RAD(0), RAD(-25 + 2.5 * SIN(SINE / 24))) * LEFTSHOULDERC0, 0.15 / Animation_Speed)
1193
		RightHip.C0 = Clerp(RightHip.C0, CF(0.95 * Player_Size, -0.75 * Player_Size, -0.5 * Player_Size) * ANGLES(RAD(0), RAD(50), RAD(0)) * ANGLES(RAD(-1.25), RAD(0), RAD(0)), 0.2 * (Humanoid.WalkSpeed / 16) / Animation_Speed)
1194
		LeftHip.C0 = Clerp(LeftHip.C0, CF(-1 * Player_Size, -1.1 * Player_Size, 0.25 * Player_Size) * ANGLES(RAD(0), RAD(-90), RAD(0)) * ANGLES(RAD(-2.5), RAD(0), RAD(0)), 0.2 * (Humanoid.WalkSpeed / 16) / Animation_Speed)
1195
	end
1196
	local POS = Mouse.Hit.p
1197
	for i = 1, 5 do
1198
		MagicSphere(2,10,RightArm.CFrame * CF(0,-1,0),"Really red")
1199
		Swait(5)
1200
	end
1201
	CreateSound("438666196", RightArm, 5, 1)
1202
	MagicSphere(5,10,RightArm.CFrame * CF(0,-1,0),"Really red")
1203
	local Projectile = CreatePart(3, Bombs, "Neon", 0, 0, "Really red", "Bomb-Projectile", VT(5,5,5),false)
1204
	Projectile.CFrame = RightArm.CFrame * CF(0,-1,0)
1205
	Projectile.CanCollide = false
1206
	MakeForm(Projectile,"Ball")
1207
	local grav = Instance.new("BodyPosition",Projectile)
1208
	grav.P = 25000
1209
	grav.maxForce = Vector3.new(math.huge,math.huge,math.huge)
1210
	grav.position = POS
1211
	grav.Name = "GravityForce"
1212
	local harm = Projectile.Touched:Connect(function(hit)
1213
		if hit.Parent ~= Character and hit.Parent:FindFirstChild("Humanoid") and Projectile.Parent ~= Effects then
1214
			ExplodeBomb(Projectile)
1215
		end
1216
	end)
1217
	ATTACK = false
1218
end
1219
1220
function RayCast(Position, Direction, MaxDistance, IgnoreList)
1221
	return game:GetService("Workspace"):FindPartOnRayWithIgnoreList(Ray.new(Position, Direction.unit * (MaxDistance or 999.999)), IgnoreList) 
1222
end
1223
1224
function EarthShatter()
1225
	local HITFLOOR = Raycast(RootPart.Position, (CF(RootPart.Position, RootPart.Position + VT(0, -1, 0))).lookVector, 4 * Player_Size, Character)
1226
	if HITFLOOR ~= nil then
1227
		ATTACK = true
1228
		Rooted = true
1229
		for i=0, 1, 0.1 / Animation_Speed/2 do
1230
			Swait()
1231
			RootJoint.C0 = Clerp(RootJoint.C0, ROOTC0 * CF(0 * Player_Size, 0 * Player_Size, -1 * Player_Size) * ANGLES(RAD(45), RAD(0), RAD(0)), 0.2 / Animation_Speed/8)
1232
			Neck.C0 = Clerp(Neck.C0, NECKC0 * CF(0 * Player_Size, 0 * Player_Size, 0 + ((1 * Player_Size) - 1)) * ANGLES(RAD(0), RAD(0), RAD(0)), 0.2 / Animation_Speed)
1233
			RightShoulder.C0 = Clerp(RightShoulder.C0, CF(1.5 * Player_Size, 1 * Player_Size, 1 * Player_Size) * ANGLES(RAD(30), RAD(-690), RAD(2 - 2.5 * COS(SINE / 12) + 2.5 * SIN(SINE / 24))) * RIGHTSHOULDERC0, 0.15 / Animation_Speed/8)
1234
			LeftShoulder.C0 = Clerp(LeftShoulder.C0, CF(-1.5 * Player_Size, 0.5 * Player_Size, 0 * Player_Size) * ANGLES(RAD(90), RAD(25), RAD(45)) * LEFTSHOULDERC0, 0.15 / Animation_Speed/8)
1235
			RightHip.C0 = Clerp(RightHip.C0, CF(1 * Player_Size, -0.3 * Player_Size, -1 * Player_Size) * ANGLES(RAD(0), RAD(90), RAD(0)) * ANGLES(RAD(0), RAD(0), RAD(-20)), 0.2 / Animation_Speed/8)
1236
			LeftHip.C0 = Clerp(LeftHip.C0, CF(-1 * Player_Size, -0.3 * Player_Size, 0 * Player_Size) * ANGLES(RAD(0), RAD(5), RAD(0)) * ANGLES(RAD(45), RAD(0), RAD(10)), 0.2 / Animation_Speed/8)
1237
		end
1238
		for i=0, 1, 0.1 / Animation_Speed*5 do
1239
			Swait()
1240
	        RootPart.Anchored = true
1241
			RootJoint.C0 = Clerp(RootJoint.C0, ROOTC0 * CF(0 * Player_Size, 0 * Player_Size, -1 * Player_Size) * ANGLES(RAD(45), RAD(0), RAD(0)), 0.2 / Animation_Speed*5)
1242
			Neck.C0 = Clerp(Neck.C0, NECKC0 * CF(0 * Player_Size, 0 * Player_Size, 0 + ((1 * Player_Size) - 1)) * ANGLES(RAD(0), RAD(0), RAD(0)), 0.2 / Animation_Speed*5)
1243
			RightShoulder.C0 = Clerp(RightShoulder.C0, CF(1.5 * Player_Size, 1 * Player_Size, -1.4 * Player_Size) * ANGLES(RAD(30), RAD(-690), RAD(2 - 2.5 * COS(SINE / 12) + 2.5 * SIN(SINE / 24))) * RIGHTSHOULDERC0, 0.15 / Animation_Speed*5)
1244
			LeftShoulder.C0 = Clerp(LeftShoulder.C0, CF(-1.5 * Player_Size, 0.5 * Player_Size, 0 * Player_Size) * ANGLES(RAD(90), RAD(25), RAD(45)) * LEFTSHOULDERC0, 0.15 / Animation_Speed*5)
1245
			RightHip.C0 = Clerp(RightHip.C0, CF(1 * Player_Size, -0.3 * Player_Size, -1 * Player_Size) * ANGLES(RAD(0), RAD(90), RAD(0)) * ANGLES(RAD(0), RAD(0), RAD(-20)), 0.2 / Animation_Speed*5)
1246
			LeftHip.C0 = Clerp(LeftHip.C0, CF(-1 * Player_Size, -0.3 * Player_Size, 0 * Player_Size) * ANGLES(RAD(0), RAD(5), RAD(0)) * ANGLES(RAD(45), RAD(0), RAD(10)), 0.2 / Animation_Speed*5)
1247
		end
1248
		local POS = RightArm.CFrame * CF(0,-1,0).p
1249
		for i = 1,10 do
1250
		CreateWave(0,10,true,0.05,25,CF(POS),"Really black")
1251
		CreateWave(0,6,true,-0.05,25,CF(POS),"Really black")
1252
		CreateWave(0,2,true,0.05,25,CF(POS),"Really black")
1253
		killnearest(POS,15,25)
1254
		CreateSound("438666141", RightArm, 5, 1)
1255
		for i = 1, 40 do
1256
			local angle = math.random(-180,180)
1257
			coroutine.resume(coroutine.create(function()
1258
				local RayHit, RayPos = RayCast(Torso.Position, Vector3.new(0, -15, 0), 10000, {Character})
1259
				local SpawnPosition = RayPos
1260
				local floor = RayHit
1261
				local needcframe = RootPart.CFrame*ANGLES(RAD(0),RAD(angle),RAD(0))
1262
				local LastPosition = RayPos
1263
				local Delay = 1
1264
				if floor ~= nil then
1265
					for i = 1, 5 do
1266
						local RayHit, RayPos = RayCast(LastPosition, needcframe.lookVector, 10, {workspace})
1267
						local End = RayPos
1268
						LastPosition = End
1269
						killnearest(End,15,25)
1270
						local locatepart = Instance.new("Part",Effects)
1271
						locatepart.Size = VT(0.5,0.5,0.5)
1272
						locatepart.Position = End
1273
						locatepart.CanCollide = false
1274
						locatepart.Anchored = true
1275
						locatepart.Name = "L0"
1276
						locatepart.Transparency = 1
1277
							if SpawnPosition then
1278
								CreateSwirl(0,2,false,0.05,25,CF(End),"Really black")
1279
								local spike = Instance.new("CornerWedgePart")
1280
								spike.Size = Vector3.new(1,15,1)
1281
								spike.Material = "Neon"
1282
								spike.Color = "Really black"
1283
								spike.Anchored = true
1284
								spike.CanCollide = false
1285
								spike.CFrame = CFrame.new(End.X,SpawnPosition.Y+2,End.Z)
1286
								spike.Orientation = Vector3.new(math.random(-15,15),math.random(-180,180),math.random(-15,15))
1287
								spike.Name = HITFLOOR.Name.."Spike"
1288
								CreateSound("341300954", spike, 1, (math.random(8,12)/10))
1289
								for i = 1, 3 do
1290
									local overlay = spike:Clone()
1291
									overlay.Size = overlay.Size + Vector3.new(0.2,0.2*2,0.2)
1292
									overlay.CFrame = spike.CFrame
1293
									overlay.Parent = nil
1294
									overlay.Orientation = Vector3.new(math.random(-15,15),math.random(-180,180),math.random(-15,15))
1295
									overlay.Parent = Effects
1296
									table.insert(Effects2,{overlay,"Disappear",0.01,0,0,0,0})
1297
								end
1298
								spike.Size = Vector3.new(2,25,2)
1299
								spike.Parent = Effects
1300
								table.insert(Effects2,{spike,"Disappear",0.01,0,0,0,0})
1301
							end
1302
						Swait(5)
1303
						game:GetService("Debris"):AddItem(locatepart, 5)
1304
					end
1305
				end
1306
			end))
1307
		end
1308
		wait(0.05)
1309
		end
1310
		for i=0, 6, 0.1 / Animation_Speed*5 do
1311
			Swait()
1312
	        RootPart.Anchored = true
1313
			RootJoint.C0 = Clerp(RootJoint.C0, ROOTC0 * CF(0 * Player_Size, 0 * Player_Size, -1 * Player_Size) * ANGLES(RAD(45), RAD(0), RAD(0)), 0.2 / Animation_Speed*5)
1314
			Neck.C0 = Clerp(Neck.C0, NECKC0 * CF(0 * Player_Size, 0 * Player_Size, 0 + ((1 * Player_Size) - 1)) * ANGLES(RAD(0), RAD(0), RAD(0)), 0.2 / Animation_Speed*5)
1315
			RightShoulder.C0 = Clerp(RightShoulder.C0, CF(1.5 * Player_Size, 1 * Player_Size, -1.4 * Player_Size) * ANGLES(RAD(30), RAD(-690), RAD(2 - 2.5 * COS(SINE / 12) + 2.5 * SIN(SINE / 24))) * RIGHTSHOULDERC0, 0.15 / Animation_Speed*5)
1316
			LeftShoulder.C0 = Clerp(LeftShoulder.C0, CF(-1.5 * Player_Size, 0.5 * Player_Size, 0 * Player_Size) * ANGLES(RAD(90), RAD(25), RAD(45)) * LEFTSHOULDERC0, 0.15 / Animation_Speed*5)
1317
			RightHip.C0 = Clerp(RightHip.C0, CF(1 * Player_Size, -0.3 * Player_Size, -1 * Player_Size) * ANGLES(RAD(0), RAD(90), RAD(0)) * ANGLES(RAD(0), RAD(0), RAD(-20)), 0.2 / Animation_Speed*5)
1318
			LeftHip.C0 = Clerp(LeftHip.C0, CF(-1 * Player_Size, -0.3 * Player_Size, 0 * Player_Size) * ANGLES(RAD(0), RAD(5), RAD(0)) * ANGLES(RAD(45), RAD(0), RAD(10)), 0.2 / Animation_Speed*5)
1319
		end
1320
		ATTACK = false
1321
		Rooted = false
1322
	end
1323
end
1324
1325
function RavagingOverthrower()
1326
	ATTACK = true
1327
	Rooted = true
1328
	chatfunc("I will show you what is death!!!",4)
1329
	for i=0, 1, 0.1 / Animation_Speed do
1330
		Swait()
1331
		RootJoint.C0 = Clerp(RootJoint.C0,ROOTC0 * CF(0 * Player_Size, 0 * Player_Size, 0 * Player_Size + 0.05 * COS(SINE / 12) * Player_Size) * ANGLES(RAD(0), RAD(0), RAD(0)), 0.15 / Animation_Speed)
1332
		Neck.C0 = Clerp(Neck.C0, NECKC0 * CF(0 * Player_Size, 0 * Player_Size, 0 + ((1 * Player_Size) - 1)) * ANGLES(RAD(5 - 2.5 * SIN(SINE / 12)), RAD(0), RAD(0)), 0.15 / Animation_Speed)
1333
		RightShoulder.C0 = Clerp(RightShoulder.C0, CF(1.5 * Player_Size, 0.5 * Player_Size, 0 * Player_Size) * ANGLES(RAD(90), RAD(0), RAD(25)) * RIGHTSHOULDERC0, 0.15 / Animation_Speed)
1334
		LeftShoulder.C0 = Clerp(LeftShoulder.C0, CF(-1.5 * Player_Size, 0.5 * Player_Size, 0 * Player_Size) * ANGLES(RAD(90), RAD(0), RAD(-25)) * LEFTSHOULDERC0, 0.15 / Animation_Speed)
1335
		RightHip.C0 = Clerp(RightHip.C0, CF(1 * Player_Size, -1 * Player_Size, -0 * Player_Size) * ANGLES(RAD(0), RAD(90), RAD(0)) * ANGLES(RAD(-15), RAD(0), RAD(0)), 0.15 / Animation_Speed)
1336
		LeftHip.C0 = Clerp(LeftHip.C0, CF(-1 * Player_Size, -1 * Player_Size, -0 * Player_Size) * ANGLES(RAD(0), RAD(-90), RAD(0)) * ANGLES(RAD(-15), RAD(0), RAD(0)), 0.15 / Animation_Speed)
1337
	end
1338
	CreateSound("348663022", Torso, 5, 1)
1339
	local StartPos = RootPart.CFrame * CF(0,0,-10).p
1340
	for i = 1, 5 do
1341
		MagicSphere2(25,25,CF(StartPos),"Really red")
1342
		Swait(15)
1343
	end
1344
	local soundeffect = IT("Sound",Torso)
1345
	soundeffect.SoundId = "rbxassetid://487186990"
1346
	soundeffect.Looped = true
1347
	soundeffect.Volume = 10
1348
	soundeffect.Playing = true
1349
	repeat
1350
		turnto(Mouse.Hit.p)
1351
		MagicSphere2(25,25,CF(StartPos),"Really red")
1352
		MagicSphere(25/10,25,CF(StartPos),"Really red")
1353
		for i = 1, 3 do
1354
			CreateSwirl(0,25,true,-0.2,5,CF(StartPos) * ANGLES(RAD(math.random(-360,360)),RAD(math.random(-360,360)),RAD(math.random(-360,360))),"Really black")
1355
		end
1356
		local RayHit, RayPos, RayNormal = CastZapRay(StartPos, Mouse.Hit.p, 750, Character, false)
1357
		local distance = (StartPos - RayPos).magnitude
1358
		local RayBeam = IT("Part",Effects)
1359
		RayBeam.Material = "Neon"
1360
		RayBeam.Anchored = true
1361
		RayBeam.BrickColor = BRICKC"Really red"
1362
		local mesh = IT("SpecialMesh",RayBeam)
1363
		mesh.MeshType = "Cylinder"
1364
		RayBeam.Size = Vector3.new(distance+10, math.random(10,15), math.random(10,15))
1365
		RayBeam.CFrame = CFrame.new(StartPos, RayPos) * CFrame.new(0, 0, -distance/2) * ANGLES(RAD(0),RAD(90),RAD(0))
1366
		MagicSphere(15,5,CF(RayPos),"Really red")
1367
		killnearest(RayPos,15,100)
1368
		for i = 1, 3 do
1369
			CreateSwirl(0,25,true,-0.2,5,CF(RayPos) * ANGLES(RAD(math.random(-360,360)),RAD(math.random(-360,360)),RAD(math.random(-360,360))),"Really black")
1370
		end
1371
		Swait()
1372
		if KEYHOLD == false then
1373
			coroutine.resume(coroutine.create(function()
1374
				for i = 1, 30 do
1375
					RayBeam.Transparency = i/30
1376
					Swait()
1377
				end
1378
				RayBeam:remove()
1379
			end))
1380
		else
1381
			RayBeam:remove()
1382
		end
1383
	until KEYHOLD == false
1384
	soundeffect:remove()
1385
	ATTACK = false
1386
	Rooted = false
1387
end
1388
1389
function dodadance()
1390
	ATTACK = true
1391
	Rooted = true
1392
	DANCE = true
1393
	sick:Stop()
1394
	sick2:Play()
1395
	local Animation_Speed2 = 1.5
1396
	HName.Text = "Dance!"
1397
	repeat
1398
		for i=0, 1.3, 0.1 / Animation_Speed2 do
1399
			Swait()
1400
			RootJoint.C0 = Clerp(RootJoint.C0,ROOTC0 * CF(0 * Player_Size, 0 * Player_Size, -0.2 * Player_Size) * ANGLES(RAD(25), RAD(0), RAD(-15)), 0.15 / Animation_Speed2)
1401
			Neck.C0 = Clerp(Neck.C0, NECKC0 * CF(0 * Player_Size, 0 * Player_Size, 0 + ((1 * Player_Size) - 1)) * ANGLES(RAD(25), RAD(0), RAD(0)), 0.15 / Animation_Speed2)
1402
			RightShoulder.C0 = Clerp(RightShoulder.C0, CF(0.75 * Player_Size, 0.5 * Player_Size, -1 * Player_Size) * ANGLES(RAD(70), RAD(0), RAD(-70)) * ANGLES(RAD(20), RAD(25), RAD(-15)) * RIGHTSHOULDERC0, 0.4 / Animation_Speed)
1403
			LeftShoulder.C0 = Clerp(LeftShoulder.C0, CF(-1.5 * Player_Size, 0.5 * Player_Size, 0 * Player_Size) * ANGLES(RAD(0), RAD(0), RAD(-180)) * LEFTSHOULDERC0, 0.15 / Animation_Speed2)
1404
			RightHip.C0 = Clerp(RightHip.C0, CF(1 * Player_Size, -0.5 * Player_Size, -0.3 * Player_Size) * ANGLES(RAD(0), RAD(120), RAD(35)) * ANGLES(RAD(-35), RAD(0), RAD(0)), 0.15 / Animation_Speed2)
1405
			LeftHip.C0 = Clerp(LeftHip.C0, CF(-1 * Player_Size, -1 * Player_Size, 0 * Player_Size) * ANGLES(RAD(0), RAD(-90), RAD(-35)) * ANGLES(RAD(-15), RAD(0), RAD(0)), 0.15 / Animation_Speed2)
1406
		end
1407
		MagicSphere(5,15,Torso.CFrame,"Really red")
1408
		for i=0, 1.3, 0.1 / Animation_Speed2 do
1409
			Swait()
1410
			RootJoint.C0 = Clerp(RootJoint.C0,ROOTC0 * CF(0 * Player_Size, 0 * Player_Size, -0.2 * Player_Size) * ANGLES(RAD(25), RAD(0), RAD(15)), 0.15 / Animation_Speed2)
1411
			Neck.C0 = Clerp(Neck.C0, NECKC0 * CF(0 * Player_Size, 0 * Player_Size, 0 + ((1 * Player_Size) - 1)) * ANGLES(RAD(25), RAD(0), RAD(0)), 0.15 / Animation_Speed2)
1412
			RightShoulder.C0 = Clerp(RightShoulder.C0, CF(0.75 * Player_Size, 0.5 * Player_Size, -1 * Player_Size) * ANGLES(RAD(70), RAD(0), RAD(-70)) * ANGLES(RAD(20), RAD(25), RAD(-15)) * RIGHTSHOULDERC0, 0.4 / Animation_Speed)
1413
			LeftShoulder.C0 = Clerp(LeftShoulder.C0, CF(-1.5 * Player_Size, 0.5 * Player_Size, 0 * Player_Size) * ANGLES(RAD(0), RAD(0), RAD(-120)) * LEFTSHOULDERC0, 0.15 / Animation_Speed2)
1414
			RightHip.C0 = Clerp(RightHip.C0, CF(1 * Player_Size, -1 * Player_Size, 0 * Player_Size) * ANGLES(RAD(0), RAD(90), RAD(35)) * ANGLES(RAD(-15), RAD(0), RAD(0)), 0.15 / Animation_Speed)
1415
			LeftHip.C0 = Clerp(LeftHip.C0, CF(-1 * Player_Size, -0.5 * Player_Size, -0.3 * Player_Size) * ANGLES(RAD(0), RAD(-120), RAD(-35)) * ANGLES(RAD(-35), RAD(0), RAD(0)), 0.15 / Animation_Speed)
1416
		end
1417
		MagicSphere(5,15,Torso.CFrame,"Really red")
1418
	until DANCE == false
1419
	HName.Text = "Satan's Robot"
1420
	sick:Play()
1421
	sick2:Stop()
1422
	ATTACK = false
1423
	Rooted = false
1424
end
1425
1426
function Warp()
1427
	MagicSphere2(10,5,Torso.CFrame,"Really red")
1428
	RootPart.CFrame = CF(VT(Mouse.Hit.p.X,Mouse.Hit.p.Y+4,Mouse.Hit.p.Z))
1429
	CreateSound("282061340", Torso, 2, 1)
1430
	MagicSphere(5,5,Torso.CFrame,"Really red")
1431
	for i = 1, 3 do
1432
		CreateSwirl(0,5,true,-0.2,25,Torso.CFrame * ANGLES(RAD(math.random(-360,360)),RAD(math.random(-360,360)),RAD(math.random(-360,360))),"Really black")
1433
	end
1434
	killnearest(Torso.Position,12,25)
1435
	Swait()
1436
	turnto(Mouse.Hit.p)
1437
end
1438
1439
--//=================================\\
1440
--||	  ASSIGN THINGS TO KEYS
1441
--\\=================================//
1442
1443
Humanoid.Changed:connect(function(Jump)
1444
	if Jump == "Jump" and (Disable_Jump == true or DISABLEJUMPING == true) then
1445
		Humanoid.Jump = false
1446
	end
1447
end)
1448
1449
function MouseDown(Mouse)
1450
	if ATTACK == false then
1451
	end
1452
end
1453
1454
function MouseUp(Mouse)
1455
HOLD = false
1456
end
1457
1458
function KeyDown(Key)
1459
	KEYHOLD = true
1460
	if Key == "e" and ATTACK == false then
1461
		TyranyCannon()
1462
		wait(1)
1463
		Detonate()
1464
	end
1465
1466
	if Key == "e" and ATTACK == false then
1467
		EarthShatter()
1468
	end
1469
1470
	if Key == "r" and ATTACK == false then
1471
		RavagingOverthrower()
1472
	end
1473
1474
	if Key == "q" and ATTACK == false then
1475
		Warp()
1476
	end
1477
1478
	if Key == "t" and ATTACK == false then
1479
		CreateSound("159882644", Head, 5, 0.8)
1480
	end
1481
1482
	if Key == "t" and DANCE == true then
1483
		CreateSound("887591869", Head, 5, 1)
1484
	end
1485
1486
	if Key == "x" and (ATTACK == false or DANCE == true) then
1487
		if DANCE == false then
1488
			dodadance()
1489
		elseif DANCE == true then
1490
			DANCE = false
1491
		end
1492
	end
1493
end
1494
1495
function KeyUp(Key)
1496
	KEYHOLD = false
1497
end
1498
1499
	Mouse.Button1Down:connect(function(NEWKEY)
1500
		MouseDown(NEWKEY)
1501
	end)
1502
	Mouse.Button1Up:connect(function(NEWKEY)
1503
		MouseUp(NEWKEY)
1504
	end)
1505
	Mouse.KeyDown:connect(function(NEWKEY)
1506
		KeyDown(NEWKEY)
1507
	end)
1508
	Mouse.KeyUp:connect(function(NEWKEY)
1509
		KeyUp(NEWKEY)
1510
	end)
1511
1512
--//=================================\\
1513
--\\=================================//
1514
1515
1516
function unanchor()
1517
	if UNANCHOR == true then
1518
		g = Character:GetChildren()
1519
		for i = 1, #g do
1520
			if g[i].ClassName == "Part" then
1521
				g[i].Anchored = false
1522
			end
1523
		end
1524
	end
1525
end
1526
1527
1528
--//=================================\\
1529
--||	WRAP THE WHOLE SCRIPT UP
1530
--\\=================================//
1531
1532
Humanoid.Changed:connect(function(Jump)
1533
	if Jump == "Jump" and (Disable_Jump == true or DISABLEJUMPING == true) then
1534
		Humanoid.Jump = false
1535
	end
1536
end)
1537
1538
		ANIMATE.Parent = nil
1539
		local IDLEANIMATION = Humanoid:LoadAnimation(ROBLOXIDLEANIMATION)
1540
		IDLEANIMATION:Play()
1541
1542
while true do
1543
	Swait()
1544
	SINE = SINE + CHANGE
1545
	local TORSOVELOCITY = (RootPart.Velocity * VT(1, 0, 1)).magnitude
1546
	local TORSOVERTICALVELOCITY = RootPart.Velocity.y
1547
	local LV = Torso.CFrame:pointToObjectSpace(Torso.Velocity - Torso.Position)
1548
	local HITFLOOR = Raycast(RootPart.Position, (CF(RootPart.Position, RootPart.Position + VT(0, -1, 0))).lookVector, 4 * Player_Size, Character)
1549
	local WALKSPEEDVALUE = 12 / (Humanoid.WalkSpeed / 16)
1550
		if ANIM == "Walk" and TORSOVELOCITY > 1 then
1551
			RootJoint.C1 = Clerp(RootJoint.C1, ROOTC0 * CF(0, 0, -0.1 * COS(SINE / (WALKSPEEDVALUE / 2)) * Player_Size) * ANGLES(RAD(0), RAD(0) - RootPart.RotVelocity.Y / 75, RAD(0)), 0.2 * (Humanoid.WalkSpeed / 16) / Animation_Speed)
1552
			Neck.C1 = Clerp(Neck.C1, CF(0 * Player_Size, -0.5 * Player_Size, 0 * Player_Size) * ANGLES(RAD(-90), RAD(0), RAD(180)) * ANGLES(RAD(2.5 * SIN(SINE / (WALKSPEEDVALUE / 2))), RAD(0), RAD(0) - Head.RotVelocity.Y / 30), 0.2 * (Humanoid.WalkSpeed / 16) / Animation_Speed)
1553
			RightHip.C1 = Clerp(RightHip.C1, CF(0.5 * Player_Size, 0.875 * Player_Size - 0.125 * SIN(SINE / WALKSPEEDVALUE) * Player_Size, -0.125 * COS(SINE / WALKSPEEDVALUE) * Player_Size) * ANGLES(RAD(0), RAD(90), RAD(0)) * ANGLES(RAD(0) - RightLeg.RotVelocity.Y / 75, RAD(0), RAD(60 * COS(SINE / WALKSPEEDVALUE))), 0.2 * (Humanoid.WalkSpeed / 16) / Animation_Speed)
1554
			LeftHip.C1 = Clerp(LeftHip.C1, CF(-0.5 * Player_Size, 0.875 * Player_Size + 0.125 * SIN(SINE / WALKSPEEDVALUE) * Player_Size, 0.125 * COS(SINE / WALKSPEEDVALUE) * Player_Size) * ANGLES(RAD(0), RAD(-90), RAD(0)) * ANGLES(RAD(0) + LeftLeg.RotVelocity.Y / 75, RAD(0), RAD(60 * COS(SINE / WALKSPEEDVALUE))), 0.2 * (Humanoid.WalkSpeed / 16) / Animation_Speed)
1555
		elseif (ANIM ~= "Walk") or (TORSOVELOCITY < 1) then
1556
			RootJoint.C1 = Clerp(RootJoint.C1, ROOTC0 * CF(0, 0, 0) * ANGLES(RAD(0), RAD(0), RAD(0)), 0.2 / Animation_Speed)
1557
			Neck.C1 = Clerp(Neck.C1, CF(0 * Player_Size, -0.5 * Player_Size, 0 * Player_Size) * ANGLES(RAD(-90), RAD(0), RAD(180)) * ANGLES(RAD(0), RAD(0), RAD(0)), 0.2 / Animation_Speed)
1558
			RightHip.C1 = Clerp(RightHip.C1, CF(0.5 * Player_Size, 1 * Player_Size, 0 * Player_Size) * ANGLES(RAD(0), RAD(90), RAD(0)) * ANGLES(RAD(0), RAD(0), RAD(0)), 0.2 / Animation_Speed)
1559
			LeftHip.C1 = Clerp(LeftHip.C1, CF(-0.5 * Player_Size, 1 * Player_Size, 0 * Player_Size) * ANGLES(RAD(0), RAD(-90), RAD(0)) * ANGLES(RAD(0), RAD(0), RAD(0)), 0.2 / Animation_Speed)
1560
		end
1561
		if TORSOVERTICALVELOCITY > 1 and HITFLOOR == nil then
1562
			ANIM = "Jump"
1563
			if ATTACK == false then
1564
				RootJoint.C0 = Clerp(RootJoint.C0, ROOTC0 * CF(0 * Player_Size, 0 * Player_Size, 0 * Player_Size) * ANGLES(RAD(0), RAD(0), RAD(0)), 0.2 / Animation_Speed)
1565
				Neck.C0 = Clerp(Neck.C0, NECKC0 * CF(0 * Player_Size, 0 * Player_Size, 0 + ((1 * Player_Size) - 1)) * ANGLES(RAD(-10), RAD(0), RAD(0)), 0.2 / Animation_Speed)
1566
				RightShoulder.C0 = Clerp(RightShoulder.C0, CF(1.5 * Player_Size, 0.5 * Player_Size, 0 * Player_Size) * ANGLES(RAD(-40), RAD(0), RAD(30)) * RIGHTSHOULDERC0, 0.2 / Animation_Speed)
1567
				LeftShoulder.C0 = Clerp(LeftShoulder.C0, CF(-1.5 * Player_Size, 0.5 * Player_Size, 0 * Player_Size) * ANGLES(RAD(-40), RAD(0), RAD(-20)) * LEFTSHOULDERC0, 0.2 / Animation_Speed)
1568
				RightHip.C0 = Clerp(RightHip.C0, CF(1 * Player_Size, -1 * Player_Size, -0.3 * Player_Size) * ANGLES(RAD(0), RAD(90), RAD(0)) * ANGLES(RAD(-5), RAD(0), RAD(-20)), 0.2 / Animation_Speed)
1569
				LeftHip.C0 = Clerp(LeftHip.C0, CF(-1 * Player_Size, -1 * Player_Size, -0.3 * Player_Size) * ANGLES(RAD(0), RAD(-90), RAD(0)) * ANGLES(RAD(-5), RAD(0), RAD(20)), 0.2 / Animation_Speed)
1570
	        end
1571
		elseif TORSOVERTICALVELOCITY < -1 and HITFLOOR == nil then
1572
			ANIM = "Fall"
1573
			if ATTACK == false then
1574
				RootJoint.C0 = Clerp(RootJoint.C0, ROOTC0 * CF(0 * Player_Size, 0 * Player_Size, 0 * Player_Size) * ANGLES(RAD(0), RAD(0), RAD(0)), 0.2 / Animation_Speed)
1575
				Neck.C0 = Clerp(Neck.C0, NECKC0 * CF(0 * Player_Size, 0 * Player_Size, 0 + ((1 * Player_Size) - 1)) * ANGLES(RAD(20), RAD(0), RAD(0)), 0.2 / Animation_Speed)
1576
				RightShoulder.C0 = Clerp(RightShoulder.C0, CF(1.5 * Player_Size, 0.5 * Player_Size, 0 * Player_Size) * ANGLES(RAD(0), RAD(0), RAD(70)) * RIGHTSHOULDERC0, 0.2 / Animation_Speed)
1577
				LeftShoulder.C0 = Clerp(LeftShoulder.C0, CF(-1.5 * Player_Size, 0.5 * Player_Size, 0 * Player_Size) * ANGLES(RAD(0), RAD(0), RAD(-60)) * LEFTSHOULDERC0, 0.2 / Animation_Speed)
1578
				RightHip.C0 = Clerp(RightHip.C0, CF(1 * Player_Size, -1 * Player_Size, 0 * Player_Size) * ANGLES(RAD(0), RAD(90), RAD(0)) * ANGLES(RAD(0), RAD(0), RAD(20)), 0.2 / Animation_Speed)
1579
				LeftHip.C0 = Clerp(LeftHip.C0, CF(-1 * Player_Size, -1 * Player_Size, 0 * Player_Size) * ANGLES(RAD(0), RAD(-90), RAD(0)) * ANGLES(RAD(0), RAD(0), RAD(10)), 0.2 / Animation_Speed)
1580
			end
1581
		elseif TORSOVELOCITY < 1 and HITFLOOR ~= nil then
1582
			ANIM = "Idle"
1583
			if ATTACK == false then
1584
				RootJoint.C0 = Clerp(RootJoint.C0,ROOTC0 * CF(0 * Player_Size, 0 * Player_Size, -0.2 * Player_Size + 0.05 * COS(SINE / 12) * Player_Size) * ANGLES(RAD(10), RAD(0), RAD(-20)), 0.15 / Animation_Speed)
1585
				Neck.C0 = Clerp(Neck.C0, NECKC0 * CF(0 * Player_Size, 0 * Player_Size, 0 + ((1 * Player_Size) - 1)) * ANGLES(RAD(5 - 2.5 * SIN(SINE / 12)), RAD(0), RAD(5)), 0.15 / Animation_Speed)
1586
				RightShoulder.C0 = Clerp(RightShoulder.C0, CF(1.5 * Player_Size, 0.5 * Player_Size, 0 * Player_Size) * ANGLES(RAD(5), RAD(0), RAD(30)) * ANGLES(RAD(3), RAD(25), RAD(5)) * RIGHTSHOULDERC0, 0.4 / Animation_Speed)
1587
				LeftShoulder.C0 = Clerp(LeftShoulder.C0, CF(-1.5 * Player_Size, 0.5 * Player_Size, 0 * Player_Size) * ANGLES(RAD(10 - 2.5 * COS(SINE / 16)), RAD(0), RAD(-25 + 2.5 * SIN(SINE / 24))) * LEFTSHOULDERC0, 0.15 / Animation_Speed)
1588
				RightHip.C0 = Clerp(RightHip.C0, CF(1 * Player_Size, -0.8 * Player_Size - 0.05 * COS(SINE / 12) * Player_Size, -0.2 * Player_Size) * ANGLES(RAD(0), RAD(85), RAD(0)) * ANGLES(RAD(-5), RAD(0), RAD(-2.5)), 0.15 / Animation_Speed)
1589
				LeftHip.C0 = Clerp(LeftHip.C0, CF(-1 * Player_Size, -0.8 * Player_Size - 0.05 * COS(SINE / 12) * Player_Size, -0.2 * Player_Size) * ANGLES(RAD(0), RAD(-65), RAD(0)) * ANGLES(RAD(-7.5), RAD(0), RAD(-15)), 0.15 / Animation_Speed)
1590
			end
1591
		elseif TORSOVELOCITY > 1 and HITFLOOR ~= nil then
1592
			ANIM = "Walk"
1593
			WALK = WALK + 1 / Animation_Speed
1594
			if WALK >= 15 - (5 * (Humanoid.WalkSpeed / 16 / Player_Size)) then
1595
				WALK = 0
1596
				if WALKINGANIM == true then
1597
					WALKINGANIM = false
1598
				elseif WALKINGANIM == false then
1599
					WALKINGANIM = true
1600
				end
1601
			end
1602
			--RightHip.C1 = Clerp(RightHip.C1, CF(0.5 * Player_Size, 0.875 * Player_Size - 0.125 * SIN(SINE / WALKSPEEDVALUE) * Player_Size, -0.125 * COS(SINE / WALKSPEEDVALUE) * Player_Size) * ANGLES(RAD(0), RAD(90), RAD(0)) * ANGLES(RAD(0) - RightLeg.RotVelocity.Y / 75, RAD(0), RAD(60 * COS(SINE / WALKSPEEDVALUE))), 0.2 * (Humanoid.WalkSpeed / 16) / Animation_Speed)
1603
			--LeftHip.C1 = Clerp(LeftHip.C1, CF(-0.5 * Player_Size, 0.875 * Player_Size + 0.125 * SIN(SINE / WALKSPEEDVALUE) * Player_Size, 0.125 * COS(SINE / WALKSPEEDVALUE) * Player_Size) * ANGLES(RAD(0), RAD(-90), RAD(0)) * ANGLES(RAD(0) + LeftLeg.RotVelocity.Y / 75, RAD(0), RAD(60 * COS(SINE / WALKSPEEDVALUE))), 0.2 * (Humanoid.WalkSpeed / 16) / Animation_Speed)
1604
			if ATTACK == false then
1605
				RootJoint.C0 = Clerp(RootJoint.C0,ROOTC0 * CF(0 * Player_Size, 0 * Player_Size, -0.2 * Player_Size + 0.05 * COS(SINE / 12) * Player_Size) * ANGLES(RAD(10), RAD(0), RAD(-20)), 0.15 / Animation_Speed)
1606
				Neck.C0 = Clerp(Neck.C0, NECKC0 * CF(0 * Player_Size, 0 * Player_Size, 0 + ((1 * Player_Size) - 1)) * ANGLES(RAD(5 - 2.5 * SIN(SINE / 12)), RAD(0), RAD(5)), 0.15 / Animation_Speed)
1607
				RightShoulder.C0 = Clerp(RightShoulder.C0, CF(1.5 * Player_Size, 0.5 * Player_Size, 0 * Player_Size) * ANGLES(RAD(60 * COS(SINE / WALKSPEEDVALUE)), RAD(0), RAD(12)) * RIGHTSHOULDERC0, 0.15 / Animation_Speed)
1608
				LeftShoulder.C0 = Clerp(LeftShoulder.C0, CF(-1.5 * Player_Size, 0.5 * Player_Size, 0 * Player_Size) * ANGLES(RAD(-60 * COS(SINE / WALKSPEEDVALUE)), RAD(0), RAD(-12)) * LEFTSHOULDERC0, 0.15 / Animation_Speed)
1609
				RightHip.C0 = Clerp(RightHip.C0, CF(1 * Player_Size, -1 * Player_Size, -0 * Player_Size) * ANGLES(RAD(0), RAD(90), RAD(0)) * ANGLES(RAD(0), RAD(0), RAD(0)), 0.15 / Animation_Speed)
1610
				LeftHip.C0 = Clerp(LeftHip.C0, CF(-1 * Player_Size, -1 * Player_Size, -0 * Player_Size) * ANGLES(RAD(0), RAD(-65), RAD(0)) * ANGLES(RAD(-7.5), RAD(0), RAD(0)), 0.15 / Animation_Speed)
1611
			end
1612
		end
1613
if #Effects2>0 then
1614
for e=1,#Effects2 do
1615
if Effects2[e]~=nil then
1616
local Thing=Effects2[e]
1617
if Thing~=nil then
1618
local Part=Thing[1]
1619
local Mode=Thing[2]
1620
local Delay=Thing[3]
1621
local IncX=Thing[4]
1622
local IncY=Thing[5]
1623
local IncZ=Thing[6]
1624
local Part2=Thing[8]
1625
if Thing[1].Transparency<=1 then
1626
if Thing[2]=="Block1" then
1627
Thing[1].CFrame=Thing[1].CFrame
1628
Mesh=Thing[1].Mesh
1629
Mesh.Scale=Mesh.Scale+VT(Thing[4],Thing[5],Thing[6])
1630
Thing[1].Transparency=Thing[1].Transparency+Thing[3]
1631
elseif Thing[2]=="Cylinder" then
1632
Mesh=Thing[1].Mesh
1633
Mesh.Scale=Mesh.Scale+VT(Thing[4],Thing[5],Thing[6])
1634
Thing[1].Transparency=Thing[1].Transparency+Thing[3]
1635
elseif Thing[2]=="Blood" then
1636
Mesh=Thing[7]
1637
Thing[1].CFrame=Thing[1].CFrame*CF(0,.5,0)
1638
Mesh.Scale=Mesh.Scale+VT(Thing[4],Thing[5],Thing[6])
1639
Thing[1].Transparency=Thing[1].Transparency+Thing[3]
1640
elseif Thing[2]=="Elec" then
1641
Mesh=Thing[1].Mesh
1642
Mesh.Scale=Mesh.Scale+VT(Thing[7],Thing[8],Thing[9])
1643
Thing[1].Transparency=Thing[1].Transparency+Thing[3]
1644
elseif Thing[2]=="Disappear" then
1645
Thing[1].Transparency=Thing[1].Transparency+Thing[3]
1646
end
1647
else
1648
Part.Parent=nil
1649
table.remove(Effects2,e)
1650
end
1651
end
1652
end
1653
end
1654
end
1655
unanchor()
1656
Humanoid.MaxHealth = "inf"
1657
Humanoid.Health = "inf"
1658
Humanoid.Name = "Ravage"
1659
if Rooted == false then
1660
	Disable_Jump = false
1661
	Humanoid.WalkSpeed = Speed
1662
elseif Rooted == true then
1663
	Disable_Jump = true
1664
	Humanoid.WalkSpeed = 0
1665
end
1666
q = Character:GetChildren()
1667
for u = 1, #q do
1668
	if q[u].ClassName == "Accessory" or q[u].ClassName == "Hat" then
1669
		q[u]:remove()
1670
	elseif q[u].ClassName == "Shirt" then
1671
		q[u]:Destroy()
1672
	elseif q[u].ClassName == "Pants" then
1673
		q[u]:Destroy()
1674
	elseif q[u].ClassName == "CharacterMesh" then
1675
		q[u]:remove()
1676
	elseif q[u].ClassName == "ShirtGraphic" then
1677
		q[u]:remove()
1678
	elseif q[u].ClassName == "Part" and q[u].Name ~= "HumanoidRootPart" then
1679
		q[u].Color = Color3.new(0/255, 0/255, 0/255)
1680
	end
1681
end
1682
if Head:FindFirstChild("face") then
1683
	Head.face:remove()
1684
end
1685
if Head:FindFirstChild("Died") then
1686
	Head.Died:remove()
1687
end
1688
bomb = Bombs:GetChildren()
1689
	for lol = 1, #bomb do
1690
		if bomb[lol].ClassName == "Part" then
1691
			MagicSphere2(2,5,bomb[lol].CFrame,"Really black")
1692
		end
1693
	end
1694
end
1695
1696
--//=================================\\
1697
--\\=================================//