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