View difference between Paste ID: AikCGHg1 and eKaAFCcw
SHOW: | | - or go back to the newest paste.
1-
--fixed by allahuahkbar
1+
-fixed by allahuahkbar
2
--made by shackluster
3
4
--//                     			\\--
5
--||            MADE BY SHACKLUSTER        ||--
6
--||            FIXED BY ALLAHUAHKBAR      ||--
7
--||            ARCHANGEL    		       ||--
8
--\\                     			//--
9
10
--Converted with ttyyuu12345's model to script plugin v4
11
if game:GetService("RunService"):IsClient() then error("Script must be server-side in order to work; use h/ and not hl/") end
12
local Player,Mouse,mouse,UserInputService,ContextActionService = owner
13
do
14
15
	script.Parent = Player.Character
16
17
	--RemoteEvent for communicating
18
	local Event = Instance.new("RemoteEvent")
19
	Event.Name = "UserInput_Event"
20
21
	--Fake event to make stuff like Mouse.KeyDown work
22
	local function fakeEvent()
23
		local t = {_fakeEvent=true,Connect=function(self,f)self.Function=f end}
24
		t.connect = t.Connect
25
		return t
26
	end
27
28
	--Creating fake input objects with fake variables
29
    local m = {Target=nil,Hit=CFrame.new(),KeyUp=fakeEvent(),KeyDown=fakeEvent(),Button1Up=fakeEvent(),Button1Down=fakeEvent()}
30
	local UIS = {InputBegan=fakeEvent(),InputEnded=fakeEvent()}
31
	local CAS = {Actions={},BindAction=function(self,name,fun,touch,...)
32
		CAS.Actions[name] = fun and {Name=name,Function=fun,Keys={...}} or nil
33
	end}
34
	--Merged 2 functions into one by checking amount of arguments
35
	CAS.UnbindAction = CAS.BindAction
36
37
	--This function will trigger the events that have been :Connect()'ed
38
	local function te(self,ev,...)
39
		local t = m[ev]
40
		if t and t._fakeEvent and t.Function then
41
			t.Function(...)
42
		end
43
	end
44
	m.TrigEvent = te
45
	UIS.TrigEvent = te
46
47
	Event.OnServerEvent:Connect(function(plr,io)
48
	    if plr~=Player then return end
49
		if io.isMouse then
50
			m.Target = io.Target
51
			m.Hit = io.Hit
52
		else
53
			local b = io.UserInputState == Enum.UserInputState.Begin
54
			if io.UserInputType == Enum.UserInputType.MouseButton1 then
55
				return m:TrigEvent(b and "Button1Down" or "Button1Up")
56
			end
57
			for _,t in pairs(CAS.Actions) do
58
				for _,k in pairs(t.Keys) do
59
					if k==io.KeyCode then
60
						t.Function(t.Name,io.UserInputState,io)
61
					end
62
				end
63
			end
64
			m:TrigEvent(b and "KeyDown" or "KeyUp",io.KeyCode.Name:lower())
65
			UIS:TrigEvent(b and "InputBegan" or "InputEnded",io,false)
66
	    end
67
	end)
68
	Event.Parent = NLS([==[
69
	local Player = game:GetService("Players").LocalPlayer
70
	local Event = script:WaitForChild("UserInput_Event")
71
72
	local UIS = game:GetService("UserInputService")
73
	local input = function(io,a)
74
		if a then return end
75
		--Since InputObject is a client-side instance, we create and pass table instead
76
		Event:FireServer({KeyCode=io.KeyCode,UserInputType=io.UserInputType,UserInputState=io.UserInputState})
77
	end
78
	UIS.InputBegan:Connect(input)
79
	UIS.InputEnded:Connect(input)
80
81
	local Mouse = Player:GetMouse()
82
	local h,t
83
	--Give the server mouse data 30 times every second, but only if the values changed
84
	--If player is not moving their mouse, client won't fire events
85
	while wait(1/30) do
86
		if h~=Mouse.Hit or t~=Mouse.Target then
87
			h,t=Mouse.Hit,Mouse.Target
88
			Event:FireServer({isMouse=true,Target=t,Hit=h})
89
		end
90
	end]==],Player.Character)
91
	Mouse,mouse,UserInputService,ContextActionService = m,m,UIS,CAS
92
end
93
function sandbox(var,func)
94
	local env = getfenv(func)
95
	local newenv = setmetatable({},{
96
		__index = function(self,k)
97
			if k=="script" then
98
				return var
99
			else
100
				return env[k]
101
			end
102
		end,
103
	})
104
	setfenv(func,newenv)
105
	return func
106
end
107
function NS(...)
108
	local tab = {...}
109
	local fat = {}
110
	for i = 1, #tab do
111
		local v = tab[i]
112
		table.insert(fat,NumberSequenceKeypoint.new(v[1],v[2]))
113
	end
114
	return NumberSequence.new(fat);	
115
end
116
117
cors = {}
118
mas = Instance.new("Model",game:GetService("Lighting"))
119
ParticleEmitter0 = Instance.new("ParticleEmitter")
120
ParticleEmitter1 = Instance.new("ParticleEmitter")
121
ParticleEmitter2 = Instance.new("ParticleEmitter")
122
ParticleEmitter0.Name = "Flames"
123
ParticleEmitter0.Parent = mas
124
ParticleEmitter0.Speed = NumberRange.new(0, 15)
125
ParticleEmitter0.Rotation = NumberRange.new(0, 360)
126
ParticleEmitter0.Enabled = false
127
ParticleEmitter0.LightEmission = 1
128
ParticleEmitter0.LightInfluence = 1
129
ParticleEmitter0.Transparency = NumberSequence.new(1,0)
130
ParticleEmitter0.ZOffset = 1
131
ParticleEmitter0.Size = NumberSequence.new(10,0)
132
ParticleEmitter0.EmissionDirection = Enum.NormalId.Back
133
ParticleEmitter0.Lifetime = NumberRange.new(0, 2)
134
ParticleEmitter0.Rate = 9999
135
ParticleEmitter0.RotSpeed = NumberRange.new(-25, 25)
136
ParticleEmitter0.SpreadAngle = Vector2.new(25, 25)
137
ParticleEmitter0.VelocitySpread = 25
138
ParticleEmitter0.Texture = "rbxasset://textures/particles/sparkles_main.dds"
139
ParticleEmitter1.Name = "Death"
140
ParticleEmitter1.Parent = mas
141
ParticleEmitter1.Rotation = NumberRange.new(0, 360)
142
ParticleEmitter1.Enabled = false
143
ParticleEmitter1.LightEmission = 0.75
144
ParticleEmitter1.Texture = "rbxasset://textures/particles/sparkles_main.dds"
145
ParticleEmitter1.Transparency = NS({0,0.47540986537933},{.168,0.37704920768738},{.457,0.25683063268661},{.803,0.4426229596138},{.948,0.62841534614563},{1,1})
146
ParticleEmitter1.ZOffset = 0.5
147
ParticleEmitter1.Size = NS({0,1},{.656,1.8032789230347},{.843,1.4207655191422},{1,0})
148
ParticleEmitter1.Acceleration = Vector3.new(0, 35, 0)
149
ParticleEmitter1.Drag = 5
150
ParticleEmitter1.EmissionDirection = Enum.NormalId.Right
151
ParticleEmitter1.Lifetime = NumberRange.new(0, 1)
152
ParticleEmitter1.Rate = 999
153
ParticleEmitter1.RotSpeed = NumberRange.new(-56, 56)
154
ParticleEmitter1.SpreadAngle = Vector2.new(360, 360)
155
ParticleEmitter1.VelocitySpread = 360
156
ParticleEmitter2.Name = "Wing"
157
ParticleEmitter2.Parent = mas
158
ParticleEmitter2.Rotation = NumberRange.new(0, 360)
159
ParticleEmitter2.Enabled = false
160
ParticleEmitter2.LightEmission = 1
161
ParticleEmitter2.Texture = "rbxasset://textures/particles/explosion01_implosion_main.dds"
162
ParticleEmitter2.Size = NS({0,0.05464494228363},{.193,1.0382515192032},{.352,1.3661205768585},{1,0})
163
ParticleEmitter2.Acceleration = Vector3.new(0, -7, 15)
164
ParticleEmitter2.Lifetime = NumberRange.new(0.80000001192093, 0.80000001192093)
165
ParticleEmitter2.LockedToPart = true
166
ParticleEmitter2.Rate = 300
167
168
for i,v in pairs(mas:GetChildren()) do
169
	v.Parent = script
170
	pcall(function() v:MakeJoints() end)
171
end
172
mas:Destroy()
173
for i,v in pairs(cors) do
174
	spawn(function()
175
		pcall(v)
176
	end)
177
end
178
179
180
New = function(Object, Parent, Name, Data)
181
	local Object = Instance.new(Object)
182
	for Index, Value in pairs(Data or {}) do
183
		Object[Index] = Value
184
	end
185
	Object.Parent = Parent
186
	Object.Name = Name
187
	return Object
188
end
189
190
191
192
193
wait(0.2)
194
Player = game:GetService("Players").LocalPlayer
195
PlayerGui = Player.PlayerGui
196
Cam = workspace.CurrentCamera
197
Backpack = Player.Backpack
198
Character = Player.Character
199
Humanoid = Character.Humanoid
200
for _, v in next, Humanoid:GetPlayingAnimationTracks() do
201
	v:Stop()
202
end
203
Mouse = Player:GetMouse()
204
RootPart = Character.HumanoidRootPart
205
Torso = Character.Torso
206
Head = Character.Head
207
RightArm = Character["Right Arm"]
208
LeftArm = Character["Left Arm"]
209
RightLeg = Character["Right Leg"]
210
LeftLeg = Character["Left Leg"]
211
RootJoint = RootPart.RootJoint
212
Neck = Torso.Neck
213
RightShoulder = Torso["Right Shoulder"]
214
LeftShoulder = Torso["Left Shoulder"]
215
RightHip = Torso["Right Hip"]
216
LeftHip = Torso["Left Hip"]
217
local sick = Instance.new("Sound", Character)
218
wait(1)
219
IT = Instance.new
220
CF = CFrame.new
221
VT = Vector3.new
222
RAD = math.rad
223
C3 = Color3.new
224
UD2 = UDim2.new
225
BRICKC = BrickColor.new
226
ANGLES = CFrame.Angles
227
EULER = CFrame.fromEulerAnglesXYZ
228
COS = math.cos
229
ACOS = math.acos
230
SIN = math.sin
231
ASIN = math.asin
232
ABS = math.abs
233
MRANDOM = math.random
234
FLOOR = math.floor
235
Animation_Speed = 3
236
Frame_Speed = 0.016666666666666666
237
local Speed = 70
238
local ROOTC0 = CF(0, 0, 0) * ANGLES(RAD(-90), RAD(0), RAD(180))
239
local NECKC0 = CF(0, 1, 0) * ANGLES(RAD(-90), RAD(0), RAD(180))
240
local RIGHTSHOULDERC0 = CF(-0.5, 0, 0) * ANGLES(RAD(0), RAD(90), RAD(0))
241
local LEFTSHOULDERC0 = CF(0.5, 0, 0) * ANGLES(RAD(0), RAD(-90), RAD(0))
242
local DAMAGEMULTIPLIER = 1
243
local ANIM = "Idle"
244
local ATTACK = false
245
local EQUIPPED = false
246
local HOLD = false
247
local COMBO = 1
248
local Rooted = false
249
local SINE = 0
250
local KEYHOLD = false
251
local CHANGE = 2 / Animation_Speed
252
local WALKINGANIM = false
253
local VALUE1 = false
254
local VALUE2 = false
255
local ROBLOXIDLEANIMATION = IT("Animation")
256
ROBLOXIDLEANIMATION.Name = "Roblox Idle Animation"
257
ROBLOXIDLEANIMATION.AnimationId = "http://www.roblox.com/asset/?id=180435571"
258
local WEAPONGUI = IT("ScreenGui", PlayerGui)
259
WEAPONGUI.Name = "Weapon GUI"
260
local Effects = IT("Folder", Character)
261
Effects.Name = "Effects"
262
local ANIMATOR = Humanoid.Animator
263
local ANIMATE = Character.Animate
264
local UNANCHOR = true
265
ArtificialHB = Instance.new("BindableEvent", script)
266
ArtificialHB.Name = "ArtificialHB"
267
script:WaitForChild("ArtificialHB")
268
frame = Frame_Speed
269
tf = 0
270
allowframeloss = false
271
tossremainder = false
272
lastframe = tick()
273
script.ArtificialHB:Fire()
274
game:GetService("RunService").Heartbeat:connect(function(s, p)
275
	tf = tf + s
276
	if tf >= frame then
277
		if allowframeloss then
278
			script.ArtificialHB:Fire()
279
			lastframe = tick()
280
		else
281
			for i = 1, math.floor(tf / frame) do
282
				script.ArtificialHB:Fire()
283
			end
284
			lastframe = tick()
285
		end
286
		if tossremainder then
287
			tf = 0
288
		else
289
			tf = tf - frame * math.floor(tf / frame)
290
		end
291
	end
292
end)
293
function Raycast(POSITION, DIRECTION, RANGE, IGNOREDECENDANTS)
294
	return workspace:FindPartOnRay(Ray.new(POSITION, DIRECTION.unit * RANGE), IGNOREDECENDANTS)
295
end
296
function PositiveAngle(NUMBER)
297
	if NUMBER >= 0 then
298
		NUMBER = 0
299
	end
300
	return NUMBER
301
end
302
function NegativeAngle(NUMBER)
303
	if NUMBER <= 0 then
304
		NUMBER = 0
305
	end
306
	return NUMBER
307
end
308
function Swait(NUMBER)
309
	if NUMBER == 0 or NUMBER == nil then
310
		ArtificialHB.Event:wait()
311
	else
312
		for i = 1, NUMBER do
313
			ArtificialHB.Event:wait()
314
		end
315
	end
316
end
317
function CreateMesh(MESH, PARENT, MESHTYPE, MESHID, TEXTUREID, SCALE, OFFSET)
318
	local NEWMESH = IT(MESH)
319
	if MESH == "SpecialMesh" then
320
		NEWMESH.MeshType = MESHTYPE
321
		if MESHID ~= "nil" and MESHID ~= "" then
322
			NEWMESH.MeshId = "http://www.roblox.com/asset/?id=" .. MESHID
323
		end
324
		if TEXTUREID ~= "nil" and TEXTUREID ~= "" then
325
			NEWMESH.TextureId = "http://www.roblox.com/asset/?id=" .. TEXTUREID
326
		end
327
	end
328
	NEWMESH.Offset = OFFSET or VT(0, 0, 0)
329
	NEWMESH.Scale = SCALE
330
	NEWMESH.Parent = PARENT
331
	return NEWMESH
332
end
333
function CreatePart(FORMFACTOR, PARENT, MATERIAL, REFLECTANCE, TRANSPARENCY, BRICKCOLOR, NAME, SIZE, ANCHOR)
334
	local NEWPART = IT("Part")
335
	NEWPART.formFactor = FORMFACTOR
336
	NEWPART.Reflectance = REFLECTANCE
337
	NEWPART.Transparency = TRANSPARENCY
338
	NEWPART.CanCollide = false
339
	NEWPART.Locked = true
340
	NEWPART.Anchored = true
341
	if ANCHOR == false then
342
		NEWPART.Anchored = false
343
	end
344
	NEWPART.BrickColor = BRICKC(tostring(BRICKCOLOR))
345
	NEWPART.Name = NAME
346
	NEWPART.Size = SIZE
347
	NEWPART.Position = Torso.Position
348
	NEWPART.Material = MATERIAL
349
	NEWPART:BreakJoints()
350
	NEWPART.Parent = PARENT
351
	return NEWPART
352
end
353
local weldBetween = function(a, b)
354
	local weldd = Instance.new("ManualWeld")
355
	weldd.Part0 = a
356
	weldd.Part1 = b
357
	weldd.C0 = CFrame.new()
358
	weldd.C1 = b.CFrame:inverse() * a.CFrame
359
	weldd.Parent = a
360
	return weldd
361
end
362
function QuaternionFromCFrame(cf)
363
	local mx, my, mz, m00, m01, m02, m10, m11, m12, m20, m21, m22 = cf:components()
364
	local trace = m00 + m11 + m22
365
	if trace > 0 then
366
		local s = math.sqrt(1 + trace)
367
		local recip = 0.5 / s
368
		return (m21 - m12) * recip, (m02 - m20) * recip, (m10 - m01) * recip, s * 0.5
369
	else
370
		local i = 0
371
		if m00 < m11 then
372
			i = 1
373
		end
374
		if m22 > (i == 0 and m00 or m11) then
375
			i = 2
376
		end
377
		if i == 0 then
378
			local s = math.sqrt(m00 - m11 - m22 + 1)
379
			local recip = 0.5 / s
380
			return 0.5 * s, (m10 + m01) * recip, (m20 + m02) * recip, (m21 - m12) * recip
381
		elseif i == 1 then
382
			local s = math.sqrt(m11 - m22 - m00 + 1)
383
			local recip = 0.5 / s
384
			return (m01 + m10) * recip, 0.5 * s, (m21 + m12) * recip, (m02 - m20) * recip
385
		elseif i == 2 then
386
			local s = math.sqrt(m22 - m00 - m11 + 1)
387
			local recip = 0.5 / s
388
			return (m02 + m20) * recip, (m12 + m21) * recip, 0.5 * s, (m10 - m01) * recip
389
		end
390
	end
391
end
392
function QuaternionToCFrame(px, py, pz, x, y, z, w)
393
	local xs, ys, zs = x + x, y + y, z + z
394
	local wx, wy, wz = w * xs, w * ys, w * zs
395
	local xx = x * xs
396
	local xy = x * ys
397
	local xz = x * zs
398
	local yy = y * ys
399
	local yz = y * zs
400
	local zz = z * zs
401
	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))
402
end
403
function QuaternionSlerp(a, b, t)
404
	local cosTheta = a[1] * b[1] + a[2] * b[2] + a[3] * b[3] + a[4] * b[4]
405
	local startInterp, finishInterp
406
	if cosTheta >= 1.0E-4 then
407
		if 1 - cosTheta > 1.0E-4 then
408
			local theta = ACOS(cosTheta)
409
			local invSinTheta = 1 / SIN(theta)
410
			startInterp = SIN((1 - t) * theta) * invSinTheta
411
			finishInterp = SIN(t * theta) * invSinTheta
412
		else
413
			startInterp = 1 - t
414
			finishInterp = t
415
		end
416
	elseif 1 + cosTheta > 1.0E-4 then
417
		local theta = ACOS(-cosTheta)
418
		local invSinTheta = 1 / SIN(theta)
419
		startInterp = SIN((t - 1) * theta) * invSinTheta
420
		finishInterp = SIN(t * theta) * invSinTheta
421
	else
422
		startInterp = t - 1
423
		finishInterp = t
424
	end
425
	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
426
end
427
function Clerp(a, b, t)
428
	local qa = {
429
		QuaternionFromCFrame(a)
430
	}
431
	local qb = {
432
		QuaternionFromCFrame(b)
433
	}
434
	local ax, ay, az = a.x, a.y, a.z
435
	local bx, by, bz = b.x, b.y, b.z
436
	local _t = 1 - t
437
	return QuaternionToCFrame(_t * ax + t * bx, _t * ay + t * by, _t * az + t * bz, QuaternionSlerp(qa, qb, t))
438
end
439
function CreateFrame(PARENT, TRANSPARENCY, BORDERSIZEPIXEL, POSITION, SIZE, COLOR, BORDERCOLOR, NAME)
440
	local frame = IT("Frame")
441
	frame.BackgroundTransparency = TRANSPARENCY
442
	frame.BorderSizePixel = BORDERSIZEPIXEL
443
	frame.Position = POSITION
444
	frame.Size = SIZE
445
	frame.BackgroundColor3 = COLOR
446
	frame.BorderColor3 = BORDERCOLOR
447
	frame.Name = NAME
448
	frame.Parent = PARENT
449
	return frame
450
end
451
function CreateLabel(PARENT, TEXT, TEXTCOLOR, TEXTFONTSIZE, TEXTFONT, TRANSPARENCY, BORDERSIZEPIXEL, STROKETRANSPARENCY, NAME)
452
	local label = IT("TextLabel")
453
	label.BackgroundTransparency = 1
454
	label.Size = UD2(1, 0, 1, 0)
455
	label.Position = UD2(0, 0, 0, 0)
456
	label.TextColor3 = TEXTCOLOR
457
	label.TextStrokeTransparency = STROKETRANSPARENCY
458
	label.TextTransparency = TRANSPARENCY
459
	label.FontSize = TEXTFONTSIZE
460
	label.Font = TEXTFONT
461
	label.BorderSizePixel = BORDERSIZEPIXEL
462
	label.TextScaled = false
463
	label.Text = TEXT
464
	label.Name = NAME
465
	label.Parent = PARENT
466
	return label
467
end
468
function NoOutlines(PART)
469
	PART.TopSurface, PART.BottomSurface, PART.LeftSurface, PART.RightSurface, PART.FrontSurface, PART.BackSurface = 10, 10, 10, 10, 10, 10
470
end
471
function CreateWeldOrSnapOrMotor(TYPE, PARENT, PART0, PART1, C0, C1)
472
	local NEWWELD = IT(TYPE)
473
	NEWWELD.Part0 = PART0
474
	NEWWELD.Part1 = PART1
475
	NEWWELD.C0 = C0
476
	NEWWELD.C1 = C1
477
	NEWWELD.Parent = PARENT
478
	return NEWWELD
479
end
480
local S = IT("Sound")
481
function CreateSound(ID, PARENT, VOLUME, PITCH, DOESLOOP)
482
	local NEWSOUND
483
	coroutine.resume(coroutine.create(function()
484
		NEWSOUND = S:Clone()
485
		NEWSOUND.Parent = PARENT
486
		NEWSOUND.EmitterSize = VOLUME * 3
487
		NEWSOUND.Volume = VOLUME
488
		NEWSOUND.Pitch = PITCH
489
		NEWSOUND.SoundId = "http://www.roblox.com/asset/?id=" .. ID
490
		NEWSOUND:play()
491
		if DOESLOOP == true then
492
			NEWSOUND.Looped = true
493
		else
494
			repeat
495
				wait(1)
496
			until NEWSOUND.Playing == false
497
			NEWSOUND:remove()
498
		end
499
	end))
500
	return NEWSOUND
501
end
502
function CFrameFromTopBack(at, top, back)
503
	local right = top:Cross(back)
504
	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)
505
end
506
function WACKYEFFECT(Table)
507
	local TYPE = Table.EffectType or "Sphere"
508
	local SIZE = Table.Size or VT(1, 1, 1)
509
	local ENDSIZE = Table.Size2 or VT(0, 0, 0)
510
	local TRANSPARENCY = Table.Transparency or 0
511
	local ENDTRANSPARENCY = Table.Transparency2 or 1
512
	local CFRAME = Table.CFrame or Torso.CFrame
513
	local MOVEDIRECTION = Table.MoveToPos or nil
514
	local ROTATION1 = Table.RotationX or 0
515
	local ROTATION2 = Table.RotationY or 0
516
	local ROTATION3 = Table.RotationZ or 0
517
	local MATERIAL = Table.Material or "Neon"
518
	local COLOR = Table.Color or C3(1, 1, 1)
519
	local TIME = Table.Time or 45
520
	local SOUNDID = Table.SoundID or nil
521
	local SOUNDPITCH = Table.SoundPitch or nil
522
	local SOUNDVOLUME = Table.SoundVolume or nil
523
	coroutine.resume(coroutine.create(function()
524
		local PLAYSSOUND = false
525
		local SOUND
526
		local EFFECT = CreatePart(3, Effects, MATERIAL, 0, TRANSPARENCY, BRICKC("Pearl"), "Effect", VT(1, 1, 1), true)
527
		if SOUNDID ~= nil and SOUNDPITCH ~= nil and SOUNDVOLUME ~= nil then
528
			PLAYSSOUND = true
529
			SOUND = CreateSound(SOUNDID, EFFECT, SOUNDVOLUME, SOUNDPITCH, false)
530
		end
531
		EFFECT.Color = COLOR
532
		local MSH
533
		if TYPE == "Sphere" then
534
			MSH = CreateMesh("SpecialMesh", EFFECT, "Sphere", "", "", SIZE, VT(0, 0, 0))
535
		elseif TYPE == "Block" then
536
			MSH = IT("BlockMesh", EFFECT)
537
			MSH.Scale = VT(SIZE.X, SIZE.X, SIZE.X)
538
		elseif TYPE == "Wave" then
539
			MSH = CreateMesh("SpecialMesh", EFFECT, "FileMesh", "20329976", "", SIZE, VT(0, 0, -SIZE.X / 8))
540
		elseif TYPE == "Ring" then
541
			MSH = CreateMesh("SpecialMesh", EFFECT, "FileMesh", "559831844", "", VT(SIZE.X, SIZE.X, 0.1), VT(0, 0, 0))
542
		elseif TYPE == "Slash" then
543
			MSH = CreateMesh("SpecialMesh", EFFECT, "FileMesh", "662586858", "", VT(SIZE.X / 10, 0, SIZE.X / 10), VT(0, 0, 0))
544
		elseif TYPE == "Round Slash" then
545
			MSH = CreateMesh("SpecialMesh", EFFECT, "FileMesh", "662585058", "", VT(SIZE.X / 10, 0, SIZE.X / 10), VT(0, 0, 0))
546
		elseif TYPE == "Swirl" then
547
			MSH = CreateMesh("SpecialMesh", EFFECT, "FileMesh", "1051557", "", SIZE, VT(0, 0, 0))
548
		elseif TYPE == "Skull" then
549
			MSH = CreateMesh("SpecialMesh", EFFECT, "FileMesh", "4770583", "", SIZE, VT(0, 0, 0))
550
		elseif TYPE == "Crystal" then
551
			MSH = CreateMesh("SpecialMesh", EFFECT, "FileMesh", "9756362", "", SIZE, VT(0, 0, 0))
552
		end
553
		if MSH ~= nil then
554
			local MOVESPEED
555
			if MOVEDIRECTION ~= nil then
556
				MOVESPEED = (CFRAME.p - MOVEDIRECTION).Magnitude / TIME
557
			end
558
			local GROWTH = SIZE - ENDSIZE
559
			local TRANS = TRANSPARENCY - ENDTRANSPARENCY
560
			if TYPE == "Block" then
561
				EFFECT.CFrame = CFRAME * ANGLES(RAD(MRANDOM(0, 360)), RAD(MRANDOM(0, 360)), RAD(MRANDOM(0, 360)))
562
			else
563
				EFFECT.CFrame = CFRAME
564
			end
565
			for LOOP = 1, TIME + 1 do
566
				Swait()
567
				MSH.Scale = MSH.Scale - GROWTH / TIME
568
				if TYPE == "Wave" then
569
					MSH.Offset = VT(0, 0, -MSH.Scale.X / 8)
570
				end
571
				EFFECT.Transparency = EFFECT.Transparency - TRANS / TIME
572
				if TYPE == "Block" then
573
					EFFECT.CFrame = CFRAME * ANGLES(RAD(MRANDOM(0, 360)), RAD(MRANDOM(0, 360)), RAD(MRANDOM(0, 360)))
574
				else
575
					EFFECT.CFrame = EFFECT.CFrame * ANGLES(RAD(ROTATION1), RAD(ROTATION2), RAD(ROTATION3))
576
				end
577
				if MOVEDIRECTION ~= nil then
578
					local ORI = EFFECT.Orientation
579
					EFFECT.CFrame = CF(EFFECT.Position, MOVEDIRECTION) * CF(0, 0, -MOVESPEED)
580
					EFFECT.Orientation = ORI
581
				end
582
			end
583
			if PLAYSSOUND == false then
584
				EFFECT:remove()
585
			else
586
				repeat
587
					Swait()
588
				until SOUND.Playing == false
589
				EFFECT:remove()
590
			end
591
		elseif PLAYSSOUND == false then
592
			EFFECT:remove()
593
		else
594
			repeat
595
				Swait()
596
			until SOUND.Playing == false
597
			EFFECT:remove()
598
		end
599
	end))
600
end
601
function MakeForm(PART, TYPE)
602
	if TYPE == "Cyl" then
603
		local MSH = IT("CylinderMesh", PART)
604
	elseif TYPE == "Ball" then
605
		local MSH = IT("SpecialMesh", PART)
606
		MSH.MeshType = "Sphere"
607
	elseif TYPE == "Wedge" then
608
		local MSH = IT("SpecialMesh", PART)
609
		MSH.MeshType = "Wedge"
610
	end
611
end
612
Debris = game:GetService("Debris")
613
function CastProperRay(StartPos, EndPos, Distance, Ignore)
614
	local DIRECTION = CF(StartPos, EndPos).lookVector
615
	return Raycast(StartPos, DIRECTION, Distance, Ignore)
616
end
617
function turnto(position)
618
	RootPart.CFrame = CFrame.new(RootPart.CFrame.p, VT(position.X, RootPart.Position.Y, position.Z)) * CFrame.new(0, 0, 0)
619
end
620
local DECAL = IT("Decal")
621
function MakeRing()
622
	local RING = CreatePart(3, Effects, "Neon", 0, 1, BRICKC("Pearl"), "MagicRing", VT(0, 0, 0), true)
623
	local MSH = IT("BlockMesh", RING)
624
	local TOP = DECAL:Clone()
625
	local BOTTOM = DECAL:Clone()
626
	TOP.Parent = RING
627
	BOTTOM.Parent = RING
628
	TOP.Face = "Top"
629
	BOTTOM.Face = "Bottom"
630
	TOP.Texture = "http://www.roblox.com/asset/?id=127817121"
631
	BOTTOM.Texture = "http://www.roblox.com/asset/?id=127817121"
632
	local function REMOVE()
633
		coroutine.resume(coroutine.create(function()
634
			local SIZE = MSH.Scale.X
635
			for i = 1, 35 do
636
				Swait()
637
				MSH.Scale = MSH.Scale - VT(SIZE, 0, SIZE) / 60
638
				TOP.Transparency = TOP.Transparency + 0.02857142857142857
639
				BOTTOM.Transparency = BOTTOM.Transparency + 0.02857142857142857
640
				RING.CFrame = RING.CFrame * ANGLES(RAD(0), RAD(-5), RAD(0))
641
			end
642
			RING:remove()
643
		end))
644
	end
645
	return RING, MSH, REMOVE
646
end
647
function SHAKECAM(POSITION, RANGE, INTENSITY, TIME)
648
	local TORSO = Torso
649
	local HUM = Humanoid
650
	if TORSO and RANGE >= (TORSO.Position - POSITION).Magnitude then
651
		coroutine.wrap(function()
652
			VT = Vector3.new
653
			MRANDOM = math.random
654
			local A = TIME
655
			local B = INTENSITY
656
			local C = true
657
			local HUMANOID = Humanoid
658
			local TIMER = A or 35
659
			local SHAKE = B or 5
660
			local FADE = C or true
661
			if HUMANOID then
662
				local FADER = SHAKE / TIMER
663
				for i = 1, TIMER do
664
					wait()
665
					HUMANOID.CameraOffset = VT(MRANDOM(-(SHAKE - FADER * i), SHAKE - FADER * i) / 10, MRANDOM(-(SHAKE - FADER * i), SHAKE - FADER * i) / 10, MRANDOM(-(SHAKE - FADER * i), SHAKE - FADER * i) / 10)
666
				end
667
				HUMANOID.CameraOffset = VT(0, 0, 0)
668
			end
669
670
		end)()
671
	end
672
end
673
674
local SKILLTEXTCOLOR = C3(0, 0, 0)
675
local SKILLFONT = "SciFi"
676
local SKILLTEXTSIZE = 7
677
local WING = Instance.new("Attachment")
678
local WING1 = WING:Clone()
679
local WING2 = WING:Clone()
680
WING1.Parent = Torso
681
WING2.Parent = Torso
682
WING1.Position = VT(-1, 0.6, 1)
683
WING2.Position = VT(1, 0.6, 1)
684
WING1.Orientation = VT(0, 0, 0)
685
WING2.Orientation = VT(0, 0, 0)
686
local WINGS = {}
687
for i = 1, 5 do
688
	local PARTICLES = script.Wing:Clone()
689
	PARTICLES.Parent = WING1
690
	PARTICLES.Enabled = true
691
	PARTICLES.Acceleration = VT(-i * 10, -5 - i * 1.5, 15)
692
	table.insert(WINGS, {
693
		PARTICLES,
694
		VT(-i * 30, 0, 25)
695
	})
696
end
697
for i = 1, 5 do
698
	local PARTICLES = script.Wing:Clone()
699
	PARTICLES.Parent = WING2
700
	PARTICLES.Enabled = true
701
	PARTICLES.Acceleration = VT(i * 10, -5 - i * 1.5, 15)
702
	table.insert(WINGS, {
703
		PARTICLES,
704
		VT(i * 30, 0, 25)
705
	})
706
end
707
708
Base = New("Part",Head,"Base",{BrickColor = BrickColor.new("Institutional white"),Material = Enum.Material.SmoothPlastic,Transparency = 1,Transparency = 1,Size = Vector3.new(2, 1, 1),CFrame = CFrame.new(4.56395578, 30.9732971, 96.5572357, -1, 0, -3.7252903e-09, 0, 1, 0, -3.7252903e-09, 0, -1.00000012),CanCollide = false,BottomSurface = Enum.SurfaceType.Smooth,TopSurface = Enum.SurfaceType.Smooth,Color = Color3.new(0,0,0),})
709
Mesh = New("SpecialMesh",Base,"Mesh",{Scale = Vector3.new(1,1,1),})
710
Hood = New("Part",Head,"Hood",{Size = Vector3.new(2.04900002, 2.18899989, 1.97500002),CFrame = CFrame.new(4.59299994, 31.1469994, 96.4520035, -0.99907124, -0.00109502568, 0.043075189, -0.00244226633, 0.999509037, -0.0312363114, -0.0430198386, -0.0313125029, -0.998583436),BottomSurface = Enum.SurfaceType.Smooth,TopSurface = Enum.SurfaceType.Smooth,})
711
Mesh = New("SpecialMesh",Hood,"Mesh",{MeshId = "rbxassetid://93129244",TextureId = "rbxassetid://94020325",MeshType = Enum.MeshType.FileMesh,})
712
mot = New("Motor",Hood,"mot",{Part0 = Hood,Part1 = Base,C0 = CFrame.new(0, 0, 0, -0.99907124, -0.00244226633, -0.0430198386, -0.00109502568, 0.999509037, -0.0313125029, 0.043075189, -0.0312363114, -0.998583436),C1 = CFrame.new(-0.0290441513, 0.17370224, 0.105232239, -1, 0, 0, 0, 1, 0, 0, 0, -1),})
713
714
CreateWeldOrSnapOrMotor('Weld', Head, Head, Base, CF(), CF())
715
716
Head.Color = C3(0,0,0)
717
718
local DParticles = script.Death
719
DParticles:remove()
720
DParticles.Name = "ArchangelDeathParticles"
721
local BODY = {}
722
for _, c in pairs(Character:GetDescendants()) do
723
	if c:IsA("BasePart") and c.Name ~= "Handle" then
724
		if c ~= RootPart and c ~= Torso and c ~= Head and c ~= RightArm and c ~= LeftArm and c ~= RightLeg and c ~= LeftLeg then
725
			c.CustomPhysicalProperties = PhysicalProperties.new(0, 0, 0, 0, 0)
726
		end
727
		table.insert(BODY, {
728
			c,
729
			c.Parent,
730
			c.Material,
731
			c.Color,
732
			c.Transparency
733
		})
734
	elseif c:IsA("JointInstance") then
735
		table.insert(BODY, {
736
			c,
737
			c.Parent,
738
			nil,
739
			nil,
740
			nil
741
		})
742
	end
743
end
744
for e = 1, #BODY do
745
	if BODY[e] ~= nil then
746
		do
747
			local STUFF = BODY[e]
748
			local PART = STUFF[1]
749
			local PARENT = STUFF[2]
750
			local MATERIAL = STUFF[3]
751
			local COLOR = STUFF[4]
752
			local TRANSPARENCY = STUFF[5]
753
			if PART.ClassName == "Part" and PART ~= RootPart then
754
				PART.Material = MATERIAL
755
				PART.Color = COLOR
756
				PART.Transparency = TRANSPARENCY
757
			end
758
			PART.AncestryChanged:Connect(function()
759
				PART.Parent = PARENT
760
			end)
761
		end
762
	end
763
end
764
function refit()
765
	Character.Parent = workspace
766
	for e = 1, #BODY do
767
		if BODY[e] ~= nil then
768
			local STUFF = BODY[e]
769
			local PART = STUFF[1]
770
			local PARENT = STUFF[2]
771
			local MATERIAL = STUFF[3]
772
			local COLOR = STUFF[4]
773
			local TRANSPARENCY = STUFF[5]
774
			if PART:IsA("BasePart") and PART ~= RootPart then
775
				PART.Material = MATERIAL
776
				PART.Color = COLOR
777
				PART.Transparency = TRANSPARENCY
778
			end
779
			if PART.Parent ~= PARENT then
780
				Humanoid:remove()
781
				PART.Parent = PARENT
782
				Humanoid = IT("Humanoid", Character)
783
			end
784
		end
785
	end
786
end
787
Humanoid.Died:connect(function()
788
	refit()
789
end)
790
791
792
local SKILLTEXTCOLOR = C3(1, 1, 1)
793
local SKILLFONT = "Fantasy"
794
local SKILLTEXTSIZE = 3
795
local ATTACKS = {
796
	"Z - Holy Smite",
797
	"B - Divine Ravage",
798
	"C - Divine Earthquake",
799
	"V - Beam of Light",
800
	"X - Divine Nova"
801
}
802
for i = 1, #ATTACKS do
803
	local SKILLFRAME = CreateFrame(WEAPONGUI, 1, 2, UD2(0.74, 0, 0.97 - 0.02 * i, 0), UD2(0.26, 0, 0.07, 0), C3(0, 0, 0), C3(0, 0, 0), "Skill Frame")
804
	local SKILLTEXT = CreateLabel(SKILLFRAME, "[" .. ATTACKS[i] .. "]", SKILLTEXTCOLOR, SKILLTEXTSIZE, SKILLFONT, 0, 2, 0, "Skill text")
805
	SKILLTEXT.TextXAlignment = "Right"
806
end
807
808
function ApplyAoE(POSITION, RANGE)
809
	local PARTS = {}
810
	for index, CHILD in pairs(workspace:GetDescendants()) do
811
		if CHILD.ClassName == "Model" and CHILD ~= Character then
812
			local HUM = CHILD:FindFirstChildOfClass("Humanoid")
813
			if HUM then
814
				local TORSO = CHILD:FindFirstChild("Torso") or CHILD:FindFirstChild("UpperTorso")
815
				if TORSO and HUM.Health > 0 and RANGE >= (TORSO.Position - POSITION).Magnitude then
816
					CHILD:BreakJoints()
817
					for index, PART in pairs(CHILD:GetChildren()) do
818
						if PART:IsA("BasePart") and PART.Name ~= "HumanoidRootPart" then
819
							local P = DParticles:Clone()
820
							P.Parent = PART
821
							P.Enabled = true
822
							P.Color = ColorSequence.new(PART.Color, C3(1, 1, 1))
823
							PART.Anchored = true
824
							table.insert(PARTS, {PART, P})
825
						end
826
					end
827
				end
828
			end
829
		elseif CHILD:IsA("BasePart") and CHILD.Parent.Parent ~= Character and CHILD.Parent:FindFirstChildOfClass("Humanoid") == nil and CHILD:FindFirstChild("ewdfrfgrwefd") == nil and CHILD.Size.Magnitude < RANGE * 2 and CHILD.Size.Magnitude < 200 and RANGE > (CHILD.Position - POSITION).Magnitude then
830
			local FOLDER = IT("Folder", CHILD)
831
			FOLDER.Name = "ewdfrfgrwefd"
832
			local P = DParticles:Clone()
833
			P.Parent = CHILD
834
			P.Enabled = true
835
			CHILD:BreakJoints()
836
			CHILD.CanCollide = false
837
			CHILD.Anchored = true
838
			P.Rate = math.ceil(CHILD.Size.Magnitude / 2)
839
			P.Color = ColorSequence.new(CHILD.Color, C3(1, 1, 1))
840
			table.insert(PARTS, {CHILD, P})
841
		end
842
	end
843
	coroutine.resume(coroutine.create(function()
844
		if #PARTS > 0 then
845
			for i = 1, 85 do
846
				Swait()
847
				for E = 1, #PARTS do
848
					local F = PARTS[E]
849
					local A = F[1]
850
					local B = F[2]
851
					A.Transparency = A.Transparency + 0.011764705882352941
852
					B.Rate = math.ceil(B.Rate * 1.2)
853
					for index, E in pairs(A:GetChildren()) do
854
						if E:IsA("Decal") or E:IsA("Texture") then
855
							E.Transparency = E.Transparency + 0.011764705882352941
856
						elseif E:IsA("JointInstance") then
857
							E:remove()
858
						elseif E:IsA("Light") or E:IsA("ParticleEmitter") and E ~= B and E.Name ~= "ArchangelDeathParticles" or E:IsA("Fire") or E:IsA("Sparkles") or E:IsA("Smoke") then
859
							E.Enabled = false
860
						end
861
					end
862
				end
863
			end
864
			for E = 1, #PARTS do
865
				local F = PARTS[E]
866
				local A = F[1]
867
				local B = F[2]
868
				B.Enabled = false
869
				Debris:AddItem(A, 3)
870
			end
871
		end
872
	end))
873
end
874
function Smite()
875
	local RING, MESH, DELET = MakeRing()
876
	local POS = Mouse.Hit.p
877
	RING.CFrame = CF(Mouse.Hit.p + VT(MRANDOM(-25, 25), 200, MRANDOM(-25, 25)), Mouse.Hit.p) * ANGLES(RAD(90), RAD(0), RAD(0))
878
	for i = 1, 45 do
879
		Swait()
880
		MESH.Scale = MESH.Scale + VT(12, 0, 12)
881
		RING.CFrame = RING.CFrame * ANGLES(RAD(0), RAD(5), RAD(0))
882
	end
883
	local HITFLOOR, HITPOS = Raycast(RING.Position, CF(RING.Position, RING.CFrame * CF(0, -1, 0).p).lookVector, 500, Character)
884
	if HITFLOOR then
885
		local BEAM = CreatePart(3, Effects, "Neon", 0, 0, BRICKC("Pearl"), "Beam", VT(0, 0, 0), true)
886
		MakeForm(BEAM, "Cyl")
887
		local DIST = (RING.Position - HITPOS).Magnitude
888
		BEAM.Size = VT(0, DIST, 0)
889
		BEAM.CFrame = CF(RING.Position, HITPOS) * CF(0, 0, -DIST / 2) * ANGLES(RAD(90), RAD(0), RAD(0))
890
		for i = 1, 5 do
891
			WACKYEFFECT({
892
				EffectType = "Wave",
893
				Size = VT(25, 0, 25),
894
				Size2 = VT(40, 0, 40) + VT(i * 6, i / 5, i * 6),
895
				Transparency = 0,
896
				Transparency2 = 1,
897
				CFrame = CF(HITPOS) * ANGLES(RAD(0), RAD(72 * i), RAD(0)),
898
				MoveToPos = nil,
899
				RotationX = 0,
900
				RotationY = 3,
901
				RotationZ = 0,
902
				Material = "Neon",
903
				Color = C3(1, 1, 1),
904
				SoundID = nil,
905
				SoundPitch = nil,
906
				SoundVolume = nil
907
			})
908
			WACKYEFFECT({
909
				EffectType = "Round Slash",
910
				Size = VT(3, 0, 3) / 13,
911
				Size2 = (VT(3, 0, 3) + VT(i, 0, i)) / 5,
912
				Transparency = 0,
913
				Transparency2 = 1,
914
				CFrame = CF(HITPOS) * ANGLES(RAD(0), RAD(MRANDOM(0, 360)), RAD(0)) * ANGLES(RAD(MRANDOM(-35, 35)), RAD(0), RAD(MRANDOM(-35, 35))),
915
				MoveToPos = nil,
916
				RotationX = 0,
917
				RotationY = 0,
918
				RotationZ = 0,
919
				Material = "Neon",
920
				Color = C3(1, 1, 1),
921
				SoundID = nil,
922
				SoundPitch = nil,
923
				SoundVolume = nil
924
			})
925
			WACKYEFFECT({
926
				Time = 35,
927
				EffectType = "Sphere",
928
				Size = VT(22, 22, 22),
929
				Size2 = VT(45, 45, 45) + VT(i * 5, i * 5, i * 5),
930
				Transparency = 0,
931
				Transparency2 = 1,
932
				CFrame = CF(HITPOS),
933
				MoveToPos = nil,
934
				RotationX = 0,
935
				RotationY = 0,
936
				RotationZ = 0,
937
				Material = "Neon",
938
				Color = C3(1, 1, 1),
939
				SoundID = 459523898,
940
				SoundPitch = MRANDOM(9, 12) / 10,
941
				SoundVolume = 10
942
			})
943
		end
944
		SHAKECAM(HITPOS, 100, 8, 15)
945
		ApplyAoE(HITPOS, 50)
946
		for i = 1, 25 do
947
			Swait()
948
			BEAM.Size = BEAM.Size + VT(0.5, 0, 0.5)
949
			BEAM.Transparency = BEAM.Transparency + 0.04
950
		end
951
		BEAM:remove()
952
	end
953
	wait(0.2)
954
	DELET()
955
end
956
function Ravage()
957
	ATTACK = true
958
	Rooted = false
959
	local RING, MESH, DELET = MakeRing()
960
	RING.Anchored = false
961
	RING.CFrame = RightArm.CFrame * CF(0, -1.3, 0)
962
	local WELD = weldBetween(RightArm, RING)
963
	local GYRO = IT("BodyGyro", RootPart)
964
	GYRO.D = 20
965
	GYRO.P = 4000
966
	GYRO.MaxTorque = VT(0, 40000, 0)
967
	coroutine.resume(coroutine.create(function()
968
		repeat
969
			GYRO.CFrame = CF(RootPart.Position, Mouse.Hit.p)
970
			Swait()
971
			RootJoint.C0 = Clerp(RootJoint.C0, ROOTC0 * CF(0, 0, 0 + 0.45 * COS(SINE / 12)) * ANGLES(RAD(0), RAD(0), RAD(90)), 1 / Animation_Speed)
972
			Neck.C0 = Clerp(Neck.C0, NECKC0 * CF(0, 0, 0) * ANGLES(RAD(0 + 4.5 * SIN(SINE / 12)), RAD(0), RAD(-90)), 1 / Animation_Speed)
973
			RightShoulder.C0 = Clerp(RightShoulder.C0, CF(1.5, 0.5 + 0.25 * COS(SINE / 12), 0) * ANGLES(RAD(0), RAD(0), RAD(90)) * RIGHTSHOULDERC0, 1 / Animation_Speed)
974
			LeftShoulder.C0 = Clerp(LeftShoulder.C0, CF(-1.5, 0.5 + 0.25 * COS(SINE / 12), 0) * ANGLES(RAD(0 - 7.5 * SIN(SINE / 12)), RAD(0 + 7.5 * SIN(SINE / 12)), RAD(-12 - 7.5 * SIN(SINE / 12))) * LEFTSHOULDERC0, 1 / Animation_Speed)
975
			RightHip.C0 = Clerp(RightHip.C0, CF(1, -1 + 0.15 * COS(SINE / 12), -0.01) * ANGLES(RAD(-7.5 * SIN(SINE / 12)), RAD(75), RAD(0)) * ANGLES(RAD(-8 - 2.5 * SIN(SINE / 12)), RAD(0), RAD(0)), 1 / Animation_Speed)
976
			LeftHip.C0 = Clerp(LeftHip.C0, CF(-1, -0.5 + 0.25 * COS(SINE / 12), -0.5) * ANGLES(RAD(-7.5 * SIN(SINE / 12)), RAD(-90), RAD(0)) * ANGLES(RAD(-8 - 2.5 * SIN(SINE / 12)), RAD(0), RAD(0)), 1 / Animation_Speed)
977
		until ATTACK == false
978
		GYRO:remove()
979
	end))
980
	CreateSound(459523787, RING, 8, 1, false)
981
	for i = 1, 45 do
982
		Swait()
983
		MESH.Scale = MESH.Scale + VT(13, 0, 13)
984
		WELD.C0 = WELD.C0 * ANGLES(RAD(0), RAD(5), RAD(0))
985
	end
986
	wait(0.3)
987
	repeat
988
		for i = 1, 25 do
989
			Swait()
990
			WACKYEFFECT({
991
				Time = 15,
992
				EffectType = "Sphere",
993
				Size = VT(4, 4, 4),
994
				Size2 = VT(0, 0, 0),
995
				Transparency = 1,
996
				Transparency2 = 0,
997
				CFrame = CF(RING.Position) * ANGLES(RAD(MRANDOM(0, 360)), RAD(MRANDOM(0, 360)), RAD(MRANDOM(0, 360))) * CF(0, 0, 35),
998
				MoveToPos = RING.Position,
999
				RotationX = 0,
1000
				RotationY = 0,
1001
				RotationZ = 0,
1002
				Material = "Neon",
1003
				Color = C3(1, 1, 1),
1004
				SoundID = nil,
1005
				SoundPitch = nil,
1006
				SoundVolume = nil
1007
			})
1008
		end
1009
		WACKYEFFECT({
1010
			Time = 35,
1011
			EffectType = "Sphere",
1012
			Size = VT(25, 2, 25),
1013
			Size2 = VT(35, 5, 35),
1014
			Transparency = 0,
1015
			Transparency2 = 1,
1016
			CFrame = RING.CFrame,
1017
			MoveToPos = nil,
1018
			RotationX = 0,
1019
			RotationY = 0,
1020
			RotationZ = 0,
1021
			Material = "Neon",
1022
			Color = C3(1, 1, 1),
1023
			SoundID = 459523898,
1024
			SoundPitch = MRANDOM(9, 12) / 10,
1025
			SoundVolume = 10
1026
		})
1027
		coroutine.resume(coroutine.create(function()
1028
			local PROJECTILE = CreatePart(3, Effects, "Neon", 0, 0, BRICKC("Pearl"), "Beam", VT(12, 12, 12), true)
1029
			MakeForm(PROJECTILE, "Ball")
1030
			PROJECTILE.CFrame = RootPart.CFrame * CF(0, 0, -10)
1031
			local FIRE = script.Flames:Clone()
1032
			FIRE.Parent = PROJECTILE
1033
			FIRE.Enabled = true
1034
			local SPEED = -0.2
1035
			for i = 1, 1000 do
1036
				Swait()
1037
				SPEED = SPEED - 0.01
1038
				local HIT = Raycast(PROJECTILE.Position, PROJECTILE.CFrame.lookVector, 6 + SPEED / 5, Character)
1039
				if HIT then
1040
					do
1041
						local POS = PROJECTILE.Position
1042
						ApplyAoE(POS, 100)
1043
						SHAKECAM(POS, 150, 12, 15)
1044
						coroutine.resume(coroutine.create(function()
1045
							for i = 1, 5 do
1046
								Swait()
1047
								WACKYEFFECT({
1048
									Time = 85,
1049
									EffectType = "Wave",
1050
									Size = VT(25, 0, 25),
1051
									Size2 = VT(40, 0, 40) + VT(i * 6, i / 5, i * 6) * 15,
1052
									Transparency = 0,
1053
									Transparency2 = 1,
1054
									CFrame = CF(POS) * ANGLES(RAD(0), RAD(72 * i), RAD(0)) * ANGLES(RAD(MRANDOM(-35, 35)), RAD(0), RAD(MRANDOM(-35, 35))),
1055
									MoveToPos = nil,
1056
									RotationX = 0,
1057
									RotationY = 3,
1058
									RotationZ = 0,
1059
									Material = "Neon",
1060
									Color = C3(1, 1, 1),
1061
									SoundID = nil,
1062
									SoundPitch = nil,
1063
									SoundVolume = nil
1064
								})
1065
								WACKYEFFECT({
1066
									Time = 85,
1067
									EffectType = "Round Slash",
1068
									Size = VT(3, 0, 3) / 13,
1069
									Size2 = (VT(3, 0, 3) + VT(i, 0, i)) * 2,
1070
									Transparency = 0,
1071
									Transparency2 = 1,
1072
									CFrame = CF(POS) * ANGLES(RAD(0), RAD(MRANDOM(0, 360)), RAD(0)) * ANGLES(RAD(MRANDOM(-35, 35)), RAD(0), RAD(MRANDOM(-35, 35))),
1073
									MoveToPos = nil,
1074
									RotationX = 0,
1075
									RotationY = 0,
1076
									RotationZ = 0,
1077
									Material = "Neon",
1078
									Color = C3(1, 1, 1),
1079
									SoundID = nil,
1080
									SoundPitch = nil,
1081
									SoundVolume = nil
1082
								})
1083
								WACKYEFFECT({
1084
									Time = 75,
1085
									EffectType = "Sphere",
1086
									Size = VT(22, 22, 22),
1087
									Size2 = VT(45, 45, 45) + VT(i * 5, i * 5, i * 5) * 7,
1088
									Transparency = 0,
1089
									Transparency2 = 1,
1090
									CFrame = CF(POS),
1091
									MoveToPos = nil,
1092
									RotationX = 0,
1093
									RotationY = 0,
1094
									RotationZ = 0,
1095
									Material = "Neon",
1096
									Color = C3(1, 1, 1),
1097
									SoundID = 533636431,
1098
									SoundPitch = MRANDOM(9, 12) / 10,
1099
									SoundVolume = 10
1100
								})
1101
							end
1102
						end))
1103
						break
1104
					end
1105
				else
1106
					PROJECTILE.CFrame = PROJECTILE.CFrame * CF(0, 0, SPEED)
1107
					for index, CHILD in pairs(workspace:GetDescendants()) do
1108
						if CHILD.ClassName == "Model" and CHILD ~= Character then
1109
							local HUM = CHILD:FindFirstChildOfClass("Humanoid")
1110
							if HUM then
1111
								local TORSO = CHILD:FindFirstChild("Torso") or CHILD:FindFirstChild("UpperTorso")
1112
								if TORSO and 0 < HUM.Health and 150 > (TORSO.Position - PROJECTILE.Position).Magnitude then
1113
									PROJECTILE.CFrame = Clerp(PROJECTILE.CFrame, CF(PROJECTILE.Position, TORSO.Position), 0.08)
1114
								end
1115
							end
1116
						end
1117
					end
1118
				end
1119
			end
1120
			FIRE.Enabled = false
1121
			PROJECTILE.Transparency = 1
1122
			Debris:AddItem(PROJECTILE, 5)
1123
		end))
1124
	until KEYHOLD == false
1125
	wait(0.1)
1126
	RING.Anchored = true
1127
	WELD:remove()
1128
	DELET()
1129
	ATTACK = false
1130
	Rooted = false
1131
end
1132
function Earthquake()
1133
	ATTACK = true
1134
	Rooted = true
1135
	local GYRO = IT("BodyGyro", RootPart)
1136
	GYRO.D = 20
1137
	GYRO.P = 4000
1138
	GYRO.MaxTorque = VT(0, 40000, 0)
1139
	local RING, MESH, DELET = MakeRing()
1140
	local HITFLOOR, HITPOS = Raycast(RootPart.Position, CF(RootPart.Position, RootPart.Position + VT(0, -1, 0)).lookVector, 15, Character)
1141
	RING.CFrame = CF(HITPOS)
1142
	for i = 0, 0.6, 0.1 / Animation_Speed do
1143
		GYRO.CFrame = CF(RootPart.Position, Mouse.Hit.p)
1144
		Swait()
1145
		MESH.Scale = MESH.Scale + VT(53, 0, 53)
1146
		RING.CFrame = RING.CFrame * ANGLES(RAD(0), RAD(5), RAD(0))
1147
		RootJoint.C0 = Clerp(RootJoint.C0, ROOTC0 * CF(0, 0, 0 + 0.45 * COS(SINE / 12)) * ANGLES(RAD(7 + 2.5 * SIN(SINE / 12)), RAD(0), RAD(-45)), 1 / Animation_Speed)
1148
		Neck.C0 = Clerp(Neck.C0, NECKC0 * CF(0, 0, 0) * ANGLES(RAD(15 + 4.5 * SIN(SINE / 12)), RAD(0), RAD(45)), 1 / Animation_Speed)
1149
		RightShoulder.C0 = Clerp(RightShoulder.C0, CF(1.5, 0.5 + 0.25 * COS(SINE / 12), 0) * ANGLES(RAD(-25 - 7.5 * SIN(SINE / 12)), RAD(0 - 7.5 * SIN(SINE / 12)), RAD(12 + 7.5 * SIN(SINE / 12))) * RIGHTSHOULDERC0, 1 / Animation_Speed)
1150
		LeftShoulder.C0 = Clerp(LeftShoulder.C0, CF(-1.5, 0.5 + 0.25 * COS(SINE / 12), 0) * ANGLES(RAD(0 - 7.5 * SIN(SINE / 12)), RAD(0 + 7.5 * SIN(SINE / 12)), RAD(-12 - 7.5 * SIN(SINE / 12))) * LEFTSHOULDERC0, 1 / Animation_Speed)
1151
		RightHip.C0 = Clerp(RightHip.C0, CF(1, -1 + 0.15 * COS(SINE / 12), -0.01) * ANGLES(RAD(-7.5 * SIN(SINE / 12)), RAD(75), RAD(0)) * ANGLES(RAD(-8 - 2.5 * SIN(SINE / 12)), RAD(0), RAD(0)), 1 / Animation_Speed)
1152
		LeftHip.C0 = Clerp(LeftHip.C0, CF(-1, -0.5 + 0.25 * COS(SINE / 12), -0.5) * ANGLES(RAD(-7.5 * SIN(SINE / 12)), RAD(-90), RAD(0)) * ANGLES(RAD(-8 - 2.5 * SIN(SINE / 12)), RAD(0), RAD(0)), 1 / Animation_Speed)
1153
	end
1154
	local BLASTS = {468991944, 468991990}
1155
	coroutine.resume(coroutine.create(function()
1156
		local CFRAME = RootPart.CFrame
1157
		for i = 1, 100 do
1158
			CFRAME = CFRAME * CF(0, 0, -35)
1159
			do
1160
				local HITFLOOR, HITPOS = Raycast(CFRAME.p, CF(RootPart.Position, RootPart.Position + VT(0, -1, 0)).lookVector, 15, Character)
1161
				if HITFLOOR then
1162
					Swait()
1163
					do
1164
						local OFFSET = CFRAME * CF(MRANDOM(-25, 25), 0, 0)
1165
						coroutine.resume(coroutine.create(function()
1166
							local RING, MESH, DELET = MakeRing()
1167
							RING.CFrame = CF(OFFSET.p.X, HITPOS.Y, OFFSET.p.Z)
1168
							for i = 1, 25 do
1169
								Swait()
1170
								MESH.Scale = MESH.Scale + VT(42, 0, 42)
1171
								RING.CFrame = RING.CFrame * ANGLES(RAD(0), RAD(5), RAD(0))
1172
							end
1173
							ApplyAoE(RING.Position, 65)
1174
							SHAKECAM(RING.Position, 80, 12, 15)
1175
							local TURN = ANGLES(RAD(0), RAD(MRANDOM(0, 360)), RAD(0)) * ANGLES(RAD(MRANDOM(0, 25)), RAD(0), RAD(0))
1176
							WACKYEFFECT({
1177
								Time = 25,
1178
								EffectType = "Sphere",
1179
								Size = VT(22, 22, 22),
1180
								Size2 = VT(85, 85, 85),
1181
								Transparency = 0,
1182
								Transparency2 = 1,
1183
								CFrame = CF(RING.Position),
1184
								MoveToPos = nil,
1185
								RotationX = 0,
1186
								RotationY = 0,
1187
								RotationZ = 0,
1188
								Material = "Neon",
1189
								Color = C3(1, 1, 1),
1190
								SoundID = BLASTS[MRANDOM(1, #BLASTS)],
1191
								SoundPitch = MRANDOM(9, 12) / 10,
1192
								SoundVolume = 10
1193
							})
1194
							for e = 1, 3 do
1195
								WACKYEFFECT({
1196
									EffectType = "Wave",
1197
									Size = VT(25, 0, 25),
1198
									Size2 = VT(40, 0, 40) + VT(e * 6, e / 5, e * 6),
1199
									Transparency = 0,
1200
									Transparency2 = 1,
1201
									CFrame = CF(RING.Position) * ANGLES(RAD(0), RAD(72 * i), RAD(0)),
1202
									MoveToPos = nil,
1203
									RotationX = 0,
1204
									RotationY = 3,
1205
									RotationZ = 0,
1206
									Material = "Neon",
1207
									Color = C3(1, 1, 1),
1208
									SoundID = nil,
1209
									SoundPitch = nil,
1210
									SoundVolume = nil
1211
								})
1212
								WACKYEFFECT({
1213
									Time = 35,
1214
									EffectType = "Sphere",
1215
									Size = VT(22, 45, 22),
1216
									Size2 = VT(25, 45 + e * 75, 25),
1217
									Transparency = 0,
1218
									Transparency2 = 1,
1219
									CFrame = CF(RING.Position) * TURN,
1220
									MoveToPos = nil,
1221
									RotationX = 0,
1222
									RotationY = 0,
1223
									RotationZ = 0,
1224
									Material = "Neon",
1225
									Color = C3(1, 1, 1),
1226
									SoundID = nil,
1227
									SoundPitch = MRANDOM(9, 12) / 10,
1228
									SoundVolume = 10
1229
								})
1230
							end
1231
							wait(0.3)
1232
							DELET()
1233
						end))
1234
					end
1235
				end
1236
			end
1237
		end
1238
	end))
1239
	Rooted = false
1240
	for i = 0, 0.2, 0.1 / Animation_Speed do
1241
		Swait()
1242
		RootJoint.C0 = Clerp(RootJoint.C0, ROOTC0 * CF(0, 0, 0 + 0.45 * COS(SINE / 12)) * ANGLES(RAD(7 + 2.5 * SIN(SINE / 12)), RAD(0), RAD(75)), 1 / Animation_Speed)
1243
		Neck.C0 = Clerp(Neck.C0, NECKC0 * CF(0, 0, 0) * ANGLES(RAD(0 + 4.5 * SIN(SINE / 12)), RAD(0), RAD(-75)), 1 / Animation_Speed)
1244
		RightShoulder.C0 = Clerp(RightShoulder.C0, CF(1.25, 0.5 + 0.25 * COS(SINE / 12), -0.5) * ANGLES(RAD(145 - 7.5 * SIN(SINE / 12)), RAD(-35 - 7.5 * SIN(SINE / 12)), RAD(12 + 7.5 * SIN(SINE / 12))) * RIGHTSHOULDERC0, 1 / Animation_Speed)
1245
		LeftShoulder.C0 = Clerp(LeftShoulder.C0, CF(-1.5, 0.5 + 0.25 * COS(SINE / 12), 0) * ANGLES(RAD(0 - 7.5 * SIN(SINE / 12)), RAD(0 + 7.5 * SIN(SINE / 12)), RAD(-12 - 7.5 * SIN(SINE / 12))) * LEFTSHOULDERC0, 1 / Animation_Speed)
1246
		RightHip.C0 = Clerp(RightHip.C0, CF(1, -1 + 0.15 * COS(SINE / 12), -0.01) * ANGLES(RAD(-7.5 * SIN(SINE / 12)), RAD(75), RAD(0)) * ANGLES(RAD(-8 - 2.5 * SIN(SINE / 12)), RAD(0), RAD(0)), 1 / Animation_Speed)
1247
		LeftHip.C0 = Clerp(LeftHip.C0, CF(-1, -0.5 + 0.25 * COS(SINE / 12), -0.5) * ANGLES(RAD(-7.5 * SIN(SINE / 12)), RAD(-90), RAD(0)) * ANGLES(RAD(-8 - 2.5 * SIN(SINE / 12)), RAD(0), RAD(0)), 1 / Animation_Speed)
1248
	end
1249
	DELET()
1250
	GYRO:remove()
1251
	ATTACK = false
1252
	Rooted = false
1253
end
1254
function Beam()
1255
	ATTACK = true
1256
	Rooted = false
1257
	local GYRO = IT("BodyGyro", RootPart)
1258
	GYRO.D = 20
1259
	GYRO.P = 4000
1260
	GYRO.MaxTorque = VT(0, 40000, 0)
1261
	local RING, MESH, DELET = MakeRing()
1262
	local POS = RootPart.Position + VT(0, 25, 0)
1263
	RING.CFrame = CF(POS, Mouse.Hit.p) * ANGLES(RAD(90), RAD(0), RAD(0))
1264
	CreateSound(459523787, RING, 8, 1, false)
1265
	local BLASTS = {468991944, 468991990}
1266
	coroutine.resume(coroutine.create(function()
1267
		local E = 0
1268
		repeat
1269
			E = E + 5
1270
			GYRO.CFrame = CF(RootPart.Position, Mouse.Hit.p)
1271
			Swait()
1272
			RING.CFrame = CF(POS, Mouse.Hit.p) * ANGLES(RAD(90), RAD(E), RAD(0))
1273
			RootJoint.C0 = Clerp(RootJoint.C0, ROOTC0 * CF(0, 0, 0 + 0.45 * COS(SINE / 12)) * ANGLES(RAD(0), RAD(0), RAD(90)), 1 / Animation_Speed)
1274
			Neck.C0 = Clerp(Neck.C0, NECKC0 * CF(0, 0, 0) * ANGLES(RAD(0 + 4.5 * SIN(SINE / 12)), RAD(0), RAD(-90)), 1 / Animation_Speed)
1275
			RightShoulder.C0 = Clerp(RightShoulder.C0, CF(1.5, 0.5 + 0.25 * COS(SINE / 12), 0) * ANGLES(RAD(0), RAD(0), RAD(90)) * RIGHTSHOULDERC0, 1 / Animation_Speed)
1276
			LeftShoulder.C0 = Clerp(LeftShoulder.C0, CF(-1.5, 0.5 + 0.25 * COS(SINE / 12), 0) * ANGLES(RAD(0 - 7.5 * SIN(SINE / 12)), RAD(0 + 7.5 * SIN(SINE / 12)), RAD(-12 - 7.5 * SIN(SINE / 12))) * LEFTSHOULDERC0, 1 / Animation_Speed)
1277
			RightHip.C0 = Clerp(RightHip.C0, CF(1, -1 + 0.15 * COS(SINE / 12), -0.01) * ANGLES(RAD(-7.5 * SIN(SINE / 12)), RAD(75), RAD(0)) * ANGLES(RAD(-8 - 2.5 * SIN(SINE / 12)), RAD(0), RAD(0)), 1 / Animation_Speed)
1278
			LeftHip.C0 = Clerp(LeftHip.C0, CF(-1, -0.5 + 0.25 * COS(SINE / 12), -0.5) * ANGLES(RAD(-7.5 * SIN(SINE / 12)), RAD(-90), RAD(0)) * ANGLES(RAD(-8 - 2.5 * SIN(SINE / 12)), RAD(0), RAD(0)), 1 / Animation_Speed)
1279
		until ATTACK == false
1280
		GYRO:remove()
1281
		DELET()
1282
	end))
1283
	for i = 1, 50 do
1284
		Swait()
1285
		MESH.Scale = MESH.Scale + VT(22, 0, 22)
1286
	end
1287
	for i = 1, 25 do
1288
		Swait()
1289
		WACKYEFFECT({
1290
			Time = 15,
1291
			EffectType = "Sphere",
1292
			Size = VT(4, 4, 4),
1293
			Size2 = VT(0, 0, 0),
1294
			Transparency = 1,
1295
			Transparency2 = 0,
1296
			CFrame = CF(RING.Position) * ANGLES(RAD(MRANDOM(0, 360)), RAD(MRANDOM(0, 360)), RAD(MRANDOM(0, 360))) * CF(0, 0, 35),
1297
			MoveToPos = RING.Position,
1298
			RotationX = 0,
1299
			RotationY = 0,
1300
			RotationZ = 0,
1301
			Material = "Neon",
1302
			Color = C3(1, 1, 1),
1303
			SoundID = nil,
1304
			SoundPitch = nil,
1305
			SoundVolume = nil
1306
		})
1307
	end
1308
	local LOOP = 0
1309
	local BEAM = CreatePart(3, Effects, "Neon", 0, 0, BRICKC("Pearl"), "Beam", VT(0, 0, 0), true)
1310
	MakeForm(BEAM, "Cyl")
1311
	CreateSound(BLASTS[MRANDOM(1, #BLASTS)], RING, 5, MRANDOM(9, 11) / 10, false)
1312
	repeat
1313
		local DISTANCE = (RING.Position - Mouse.Hit.p).Magnitude
1314
		if DISTANCE < 2000 then
1315
			BEAM.Size = VT(10 + 2 * COS(SINE / 4), DISTANCE, 10 + 2 * COS(SINE / 4))
1316
			BEAM.CFrame = CF(RING.Position, Mouse.Hit.p) * CF(0, 0, -DISTANCE / 2) * ANGLES(RAD(90), RAD(0), RAD(0))
1317
			ApplyAoE(Mouse.Hit.p, 35)
1318
			WACKYEFFECT({
1319
				Time = 35,
1320
				EffectType = "Sphere",
1321
				Size = VT(10 + 2 * COS(SINE / 4), 10 + 2 * COS(SINE / 4), 10 + 2 * COS(SINE / 4)) * 2,
1322
				Size2 = VT(5, 75, 5),
1323
				Transparency = 0,
1324
				Transparency2 = 1,
1325
				CFrame = CF(Mouse.Hit.p) * ANGLES(RAD(MRANDOM(0, 360)), RAD(MRANDOM(0, 360)), RAD(MRANDOM(0, 360))),
1326
				MoveToPos = nil,
1327
				RotationX = 0,
1328
				RotationY = 0,
1329
				RotationZ = 0,
1330
				Material = "Neon",
1331
				Color = C3(1, 1, 1),
1332
				SoundID = nil,
1333
				SoundPitch = MRANDOM(9, 12) / 10,
1334
				SoundVolume = 10
1335
			})
1336
			Swait()
1337
			LOOP = LOOP + 1
1338
		end
1339
	until KEYHOLD == false and LOOP >= 35 or DISTANCE >= 2000
1340
	coroutine.resume(coroutine.create(function()
1341
		for i = 1, 15 do
1342
			Swait()
1343
			BEAM.Size = BEAM.Size - VT(0.2, 0, 0.2)
1344
			BEAM.Transparency = BEAM.Transparency + 0.06666666666666667
1345
		end
1346
		BEAM:remove()
1347
	end))
1348
	ATTACK = false
1349
	Rooted = false
1350
end
1351
function Nuke()
1352
	ATTACK = true
1353
	Rooted = true
1354
	local CHARGE = false
1355
	local BLASTS = {468991944, 468991990}
1356
	coroutine.resume(coroutine.create(function()
1357
		repeat
1358
			Swait()
1359
			RootJoint.C0 = Clerp(RootJoint.C0, ROOTC0 * CF(0, 0, 0 + 0.45 * COS(SINE / 12)) * ANGLES(RAD(-15 + 2.5 * SIN(SINE / 12)), RAD(0), RAD(5 + 1 * SIN(SINE / 12))), 0.1 / Animation_Speed)
1360
			Neck.C0 = Clerp(Neck.C0, NECKC0 * CF(0, 0, 0) * ANGLES(RAD(-35 + 4.5 * SIN(SINE / 12)), RAD(0), RAD(-5 - 2.5 * SIN(SINE / 12))), 0.1 / Animation_Speed)
1361
			RightShoulder.C0 = Clerp(RightShoulder.C0, CF(1.15, 0.5 + 0.25 * COS(SINE / 12), -0.5) * ANGLES(RAD(140 - 7.5 * SIN(SINE / 12)), RAD(-7.5 * SIN(SINE / 12)), RAD(-45 + 7.5 * SIN(SINE / 12))) * RIGHTSHOULDERC0, 0.1 / Animation_Speed)
1362
			LeftShoulder.C0 = Clerp(LeftShoulder.C0, CF(-1.15, 0.5 + 0.25 * COS(SINE / 12), -0.5) * ANGLES(RAD(140 - 7.5 * SIN(SINE / 12)), RAD(7.5 * SIN(SINE / 12)), RAD(45 - 7.5 * SIN(SINE / 12))) * LEFTSHOULDERC0, 0.1 / Animation_Speed)
1363
			RightHip.C0 = Clerp(RightHip.C0, CF(1, -1 + 0.15 * COS(SINE / 12), -0.01) * ANGLES(RAD(25 - 7.5 * SIN(SINE / 12)), RAD(75), RAD(0)) * ANGLES(RAD(-8 - 2.5 * SIN(SINE / 12)), RAD(0), RAD(0)), 0.1 / Animation_Speed)
1364
			LeftHip.C0 = Clerp(LeftHip.C0, CF(-1, -0.5 + 0.25 * COS(SINE / 12), -0.5) * ANGLES(RAD(25 - 7.5 * SIN(SINE / 12)), RAD(-90), RAD(0)) * ANGLES(RAD(-8 - 2.5 * SIN(SINE / 12)), RAD(0), RAD(0)), 0.1 / Animation_Speed)
1365
		until CHARGE == true
1366
		for i = 0, 0.4, 0.1 / Animation_Speed do
1367
			Swait()
1368
			WACKYEFFECT({
1369
				Time = 15,
1370
				EffectType = "Sphere",
1371
				Size = VT(60, 60, 60),
1372
				Size2 = VT(0, 0, 0),
1373
				Transparency = 1,
1374
				Transparency2 = 0.7,
1375
				CFrame = CF(RootPart.Position),
1376
				MoveToPos = nil,
1377
				RotationX = 0,
1378
				RotationY = 0,
1379
				RotationZ = 0,
1380
				Material = "Neon",
1381
				Color = C3(1, 1, 1),
1382
				SoundID = nil,
1383
				SoundPitch = nil,
1384
				SoundVolume = nil
1385
			})
1386
			RootJoint.C0 = Clerp(RootJoint.C0, ROOTC0 * CF(0, 0, 0 + 0.45 * COS(SINE / 12)) * ANGLES(RAD(-25 + 2.5 * SIN(SINE / 12)), RAD(0), RAD(5 + 1 * SIN(SINE / 12))), 1 / Animation_Speed)
1387
			Neck.C0 = Clerp(Neck.C0, NECKC0 * CF(0, 0, 0) * ANGLES(RAD(0 + 4.5 * SIN(SINE / 12)), RAD(0), RAD(-5 - 2.5 * SIN(SINE / 12))), 1 / Animation_Speed)
1388
			RightShoulder.C0 = Clerp(RightShoulder.C0, CF(1.15, 0.5 + 0.25 * COS(SINE / 12), -0.5) * ANGLES(RAD(160 - 7.5 * SIN(SINE / 12)), RAD(-7.5 * SIN(SINE / 12)), RAD(-50 + 7.5 * SIN(SINE / 12))) * RIGHTSHOULDERC0, 1 / Animation_Speed)
1389
			LeftShoulder.C0 = Clerp(LeftShoulder.C0, CF(-1.15, 0.5 + 0.25 * COS(SINE / 12), -0.5) * ANGLES(RAD(160 - 7.5 * SIN(SINE / 12)), RAD(7.5 * SIN(SINE / 12)), RAD(50 - 7.5 * SIN(SINE / 12))) * LEFTSHOULDERC0, 1 / Animation_Speed)
1390
			RightHip.C0 = Clerp(RightHip.C0, CF(1, -1 + 0.15 * COS(SINE / 12), -0.01) * ANGLES(RAD(35 - 7.5 * SIN(SINE / 12)), RAD(75), RAD(0)) * ANGLES(RAD(-8 - 2.5 * SIN(SINE / 12)), RAD(0), RAD(0)), 1 / Animation_Speed)
1391
			LeftHip.C0 = Clerp(LeftHip.C0, CF(-1, -0.5 + 0.25 * COS(SINE / 12), -0.5) * ANGLES(RAD(35 - 7.5 * SIN(SINE / 12)), RAD(-90), RAD(0)) * ANGLES(RAD(-8 - 2.5 * SIN(SINE / 12)), RAD(0), RAD(0)), 1 / Animation_Speed)
1392
		end
1393
		coroutine.resume(coroutine.create(function()
1394
			local POS = RootPart.Position
1395
			wait(0.2)
1396
			for i = 1, 5 do
1397
				WACKYEFFECT({
1398
					Time = 65,
1399
					EffectType = "Sphere",
1400
					Size = VT(2, 2, 2),
1401
					Size2 = VT(0, 0, 500),
1402
					Transparency = 1,
1403
					Transparency2 = 0,
1404
					CFrame = CF(POS),
1405
					MoveToPos = nil,
1406
					RotationX = MRANDOM(-2, 2),
1407
					RotationY = MRANDOM(-12, 12),
1408
					RotationZ = MRANDOM(-2, 2),
1409
					Material = "Neon",
1410
					Color = C3(1, 1, 1),
1411
					SoundID = nil,
1412
					SoundPitch = nil,
1413
					SoundVolume = nil
1414
				})
1415
			end
1416
			wait(1)
1417
			SHAKECAM(POS, 9999999999, 25, 25)
1418
			ApplyAoE(POS, 450)
1419
			WACKYEFFECT({
1420
				Time = 85,
1421
				EffectType = "Sphere",
1422
				Size = VT(120, 120, 120),
1423
				Size2 = VT(350, 350, 350),
1424
				Transparency = 0,
1425
				Transparency2 = 1,
1426
				CFrame = CF(POS),
1427
				MoveToPos = nil,
1428
				RotationX = 0,
1429
				RotationY = 0,
1430
				RotationZ = 0,
1431
				Material = "Neon",
1432
				Color = C3(1, 1, 1),
1433
				SoundID = nil,
1434
				SoundPitch = 1,
1435
				SoundVolume = 10
1436
			})
1437
			for i = 1, 20 do
1438
				WACKYEFFECT({
1439
					Time = 85,
1440
					EffectType = "Sphere",
1441
					Size = VT(120, 120, 120),
1442
					Size2 = VT(120, 120, 144) + VT(i * 3, i * 3, i * 3),
1443
					Transparency = 0.8,
1444
					Transparency2 = 1,
1445
					CFrame = CF(POS),
1446
					MoveToPos = nil,
1447
					RotationX = 0,
1448
					RotationY = 0,
1449
					RotationZ = 0,
1450
					Material = "Neon",
1451
					Color = C3(1, 1, 1),
1452
					SoundID = nil,
1453
					SoundPitch = 1,
1454
					SoundVolume = 10
1455
				})
1456
				WACKYEFFECT({
1457
					Time = 100,
1458
					EffectType = "Wave",
1459
					Size = VT(25, 2, 25),
1460
					Size2 = VT(400, 0, 400) * 1.2,
1461
					Transparency = 0,
1462
					Transparency2 = 1,
1463
					CFrame = CF(POS) * ANGLES(RAD(MRANDOM(0, 360)), RAD(MRANDOM(0, 360)), RAD(MRANDOM(0, 360))),
1464
					MoveToPos = nil,
1465
					RotationX = 0,
1466
					RotationY = 0,
1467
					RotationZ = 0,
1468
					Material = "Neon",
1469
					Color = C3(1, 1, 1),
1470
					SoundID = nil,
1471
					SoundPitch = nil,
1472
					SoundVolume = nil
1473
				})
1474
			end
1475
			local HITFLOOR, HITPOS = Raycast(POS, CF(RootPart.Position, RootPart.Position + VT(0, -1, 0)).lookVector, 150, Character)
1476
			for i = 1, 5 do
1477
				CreateSound(438666077, Effects, 15, 1 - i / 15, false)
1478
				WACKYEFFECT({
1479
					Time = 120,
1480
					EffectType = "Wave",
1481
					Size = VT(150, 2, 150),
1482
					Size2 = VT(300 + i * 170, 0, 300 + i * 170) * 1.2,
1483
					Transparency = 0,
1484
					Transparency2 = 1,
1485
					CFrame = CF(HITPOS) * ANGLES(RAD(0), RAD(MRANDOM(0, 360)), RAD(0)),
1486
					MoveToPos = nil,
1487
					RotationX = 0,
1488
					RotationY = 0,
1489
					RotationZ = 0,
1490
					Material = "Neon",
1491
					Color = C3(1, 1, 1),
1492
					SoundID = nil,
1493
					SoundPitch = nil,
1494
					SoundVolume = nil
1495
				})
1496
			end
1497
		end))
1498
		for i = 0, 1, 0.1 / Animation_Speed do
1499
			Swait()
1500
			RootJoint.C0 = Clerp(RootJoint.C0, ROOTC0 * CF(0, 0, 0 + 0.45 * COS(SINE / 12)) * ANGLES(RAD(7 + 2.5 * SIN(SINE / 12)), RAD(0), RAD(5 + 1 * SIN(SINE / 12))), 1 / Animation_Speed)
1501
			Neck.C0 = Clerp(Neck.C0, NECKC0 * CF(0, 0, 0) * ANGLES(RAD(25 + 4.5 * SIN(SINE / 12)), RAD(0), RAD(-5 - 2.5 * SIN(SINE / 12))), 1 / Animation_Speed)
1502
			RightShoulder.C0 = Clerp(RightShoulder.C0, CF(1.5, 0.5 + 0.25 * COS(SINE / 12), 0) * ANGLES(RAD(45 - 7.5 * SIN(SINE / 12)), RAD(45 - 7.5 * SIN(SINE / 12)), RAD(12 + 7.5 * SIN(SINE / 12))) * RIGHTSHOULDERC0, 1 / Animation_Speed)
1503
			LeftShoulder.C0 = Clerp(LeftShoulder.C0, CF(-1.5, 0.5 + 0.25 * COS(SINE / 12), 0) * ANGLES(RAD(45 - 7.5 * SIN(SINE / 12)), RAD(-45 + 7.5 * SIN(SINE / 12)), RAD(-12 - 7.5 * SIN(SINE / 12))) * LEFTSHOULDERC0, 1 / Animation_Speed)
1504
			RightHip.C0 = Clerp(RightHip.C0, CF(1, -1 + 0.15 * COS(SINE / 12), -0.01) * ANGLES(RAD(-7.5 * SIN(SINE / 12)), RAD(75), RAD(0)) * ANGLES(RAD(-8 - 2.5 * SIN(SINE / 12)), RAD(0), RAD(0)), 1 / Animation_Speed)
1505
			LeftHip.C0 = Clerp(LeftHip.C0, CF(-1, -0.5 + 0.25 * COS(SINE / 12), -0.5) * ANGLES(RAD(-7.5 * SIN(SINE / 12)), RAD(-90), RAD(0)) * ANGLES(RAD(-8 - 2.5 * SIN(SINE / 12)), RAD(0), RAD(0)), 1 / Animation_Speed)
1506
		end
1507
		ATTACK = false
1508
		Rooted = false
1509
	end))
1510
	for i = 1, 30 do
1511
		wait(0.01)
1512
		local POS = CF(RootPart.Position) * ANGLES(RAD(0), RAD(MRANDOM(0, 360)), RAD(0)) * CF(0, 0, MRANDOM(10, 150))
1513
		local HITFLOOR, HITPOS = Raycast(POS.p, CF(RootPart.Position, RootPart.Position + VT(0, -1, 0)).lookVector, 150, Character)
1514
		if HITFLOOR then
1515
			ApplyAoE(HITPOS, 65)
1516
			local TURN = ANGLES(RAD(0), RAD(MRANDOM(0, 360)), RAD(0)) * ANGLES(RAD(MRANDOM(0, 25)), RAD(0), RAD(0))
1517
			WACKYEFFECT({
1518
				Time = 25,
1519
				EffectType = "Sphere",
1520
				Size = VT(22, 22, 22),
1521
				Size2 = VT(85, 85, 85),
1522
				Transparency = 0,
1523
				Transparency2 = 1,
1524
				CFrame = CF(HITPOS),
1525
				MoveToPos = nil,
1526
				RotationX = 0,
1527
				RotationY = 0,
1528
				RotationZ = 0,
1529
				Material = "Neon",
1530
				Color = C3(1, 1, 1),
1531
				SoundID = BLASTS[MRANDOM(1, #BLASTS)],
1532
				SoundPitch = MRANDOM(9, 12) / 10,
1533
				SoundVolume = 10
1534
			})
1535
			for e = 1, 3 do
1536
				WACKYEFFECT({
1537
					EffectType = "Wave",
1538
					Size = VT(25, 0, 25),
1539
					Size2 = VT(40, 0, 40) + VT(e * 6, e / 5, e * 6),
1540
					Transparency = 0,
1541
					Transparency2 = 1,
1542
					CFrame = CF(HITPOS) * ANGLES(RAD(0), RAD(72 * i), RAD(0)),
1543
					MoveToPos = nil,
1544
					RotationX = 0,
1545
					RotationY = 3,
1546
					RotationZ = 0,
1547
					Material = "Neon",
1548
					Color = C3(1, 1, 1),
1549
					SoundID = nil,
1550
					SoundPitch = nil,
1551
					SoundVolume = nil
1552
				})
1553
				WACKYEFFECT({
1554
					Time = 35,
1555
					EffectType = "Sphere",
1556
					Size = VT(22, 45, 22),
1557
					Size2 = VT(25, 45 + e * 75, 25),
1558
					Transparency = 0,
1559
					Transparency2 = 1,
1560
					CFrame = CF(HITPOS) * TURN,
1561
					MoveToPos = nil,
1562
					RotationX = 0,
1563
					RotationY = 0,
1564
					RotationZ = 0,
1565
					Material = "Neon",
1566
					Color = C3(1, 1, 1),
1567
					SoundID = nil,
1568
					SoundPitch = MRANDOM(9, 12) / 10,
1569
					SoundVolume = 10
1570
				})
1571
			end
1572
		end
1573
	end
1574
	CHARGE = true
1575
end
1576
function MouseDown(Mouse)
1577
	if ATTACK == false then
1578
	end
1579
end
1580
function MouseUp(Mouse)
1581
	HOLD = false
1582
end
1583
function KeyDown(Key)
1584
	KEYHOLD = true
1585
	if Key == "z" and ATTACK == false then
1586
		Smite()
1587
	end
1588
	if Key == "b" and ATTACK == false then
1589
		Ravage()
1590
	end
1591
	if Key == "c" and ATTACK == false then
1592
		Earthquake()
1593
	end
1594
	if Key == "v" and ATTACK == false then
1595
		Beam()
1596
	end
1597
	if Key == "x" and ATTACK == false then
1598
		Nuke()
1599
	end
1600
end
1601
function KeyUp(Key)
1602
	if Key ~= "w" and Key ~= "s" and Key ~= "a" and Key ~= "d" then
1603
		KEYHOLD = false
1604
	end
1605
end
1606
Mouse.Button1Down:connect(function(NEWKEY)
1607
	MouseDown(NEWKEY)
1608
end)
1609
Mouse.Button1Up:connect(function(NEWKEY)
1610
	MouseUp(NEWKEY)
1611
end)
1612
Mouse.KeyDown:connect(function(NEWKEY)
1613
	KeyDown(NEWKEY)
1614
end)
1615
Mouse.KeyUp:connect(function(NEWKEY)
1616
	KeyUp(NEWKEY)
1617
end)
1618
function unanchor()
1619
	for _, c in pairs(Character:GetChildren()) do
1620
		if c:IsA("BasePart") and c ~= RootPart then
1621
			c.Anchored = false
1622
		end
1623
	end
1624
	if UNANCHOR == true then
1625
		RootPart.Anchored = false
1626
	else
1627
		RootPart.Anchored = true
1628
	end
1629
end
1630
Humanoid.Changed:connect(function(Jump)
1631
	if Jump == "Jump" and Disable_Jump == true then
1632
		Humanoid.Jump = false
1633
	end
1634
end)
1635
while true do
1636
	Swait()
1637
	Humanoid.HipHeight = 7
1638
	script.Parent = WEAPONGUI
1639
	ANIMATE.Parent = nil
1640
	for _, v in next, Humanoid:GetPlayingAnimationTracks() do
1641
		v:Stop()
1642
	end
1643
	SINE = SINE + CHANGE / 2
1644
	local TORSOVELOCITY = (RootPart.Velocity * VT(1, 0, 1)).magnitude
1645
	local TORSOVERTICALVELOCITY = RootPart.Velocity.y
1646
	if ATTACK == false then
1647
		if TORSOVELOCITY < 1 then
1648
			RootJoint.C0 = Clerp(RootJoint.C0, ROOTC0 * CF(0, 0, 0 + 0.45 * COS(SINE / 12)) * ANGLES(RAD(7 + 2.5 * SIN(SINE / 12)), RAD(0), RAD(5 + 1 * SIN(SINE / 12))), 1 / Animation_Speed)
1649
			Neck.C0 = Clerp(Neck.C0, NECKC0 * CF(0, 0, 0) * ANGLES(RAD(0 + 4.5 * SIN(SINE / 12)), RAD(0), RAD(-5 - 2.5 * SIN(SINE / 12))), 1 / Animation_Speed)
1650
			RightShoulder.C0 = Clerp(RightShoulder.C0, CF(1.5, 0.5 + 0.25 * COS(SINE / 12), 0) * ANGLES(RAD(0 - 7.5 * SIN(SINE / 12)), RAD(0 - 7.5 * SIN(SINE / 12)), RAD(12 + 7.5 * SIN(SINE / 12))) * RIGHTSHOULDERC0, 1 / Animation_Speed)
1651
			LeftShoulder.C0 = Clerp(LeftShoulder.C0, CF(-1.5, 0.5 + 0.25 * COS(SINE / 12), 0) * ANGLES(RAD(0 - 7.5 * SIN(SINE / 12)), RAD(0 + 7.5 * SIN(SINE / 12)), RAD(-12 - 7.5 * SIN(SINE / 12))) * LEFTSHOULDERC0, 1 / Animation_Speed)
1652
			RightHip.C0 = Clerp(RightHip.C0, CF(1, -1 + 0.15 * COS(SINE / 12), -0.01) * ANGLES(RAD(-7.5 * SIN(SINE / 12)), RAD(75), RAD(0)) * ANGLES(RAD(-8 - 2.5 * SIN(SINE / 12)), RAD(0), RAD(0)), 1 / Animation_Speed)
1653
			LeftHip.C0 = Clerp(LeftHip.C0, CF(-1, -0.5 + 0.25 * COS(SINE / 12), -0.5) * ANGLES(RAD(-7.5 * SIN(SINE / 12)), RAD(-90), RAD(0)) * ANGLES(RAD(-8 - 2.5 * SIN(SINE / 12)), RAD(0), RAD(0)), 1 / Animation_Speed)
1654
		elseif TORSOVELOCITY > 1 then
1655
			RootJoint.C0 = Clerp(RootJoint.C0, ROOTC0 * CF(0, 0, 0 + 0.25 * COS(SINE / 12)) * ANGLES(RAD(25 + 2.5 * SIN(SINE / 12)), RAD(0), RAD(5 + 2.5 * SIN(SINE / 12))), 1 / Animation_Speed)
1656
			Neck.C0 = Clerp(Neck.C0, NECKC0 * CF(0, 0, 0) * ANGLES(RAD(-25 + 4.5 * SIN(SINE / 12)), RAD(0), RAD(-5 - 2.5 * SIN(SINE / 12))), 1 / Animation_Speed)
1657
			RightShoulder.C0 = Clerp(RightShoulder.C0, CF(1.5, 0.5 + 0.25 * COS(SINE / 12), 0) * ANGLES(RAD(-25), RAD(0 - 7.5 * SIN(SINE / 12)), RAD(25 + 7.5 * SIN(SINE / 12))) * RIGHTSHOULDERC0, 1 / Animation_Speed)
1658
			LeftShoulder.C0 = Clerp(LeftShoulder.C0, CF(-1.5, 0.5 + 0.25 * COS(SINE / 12), 0) * ANGLES(RAD(-25), RAD(0 + 7.5 * SIN(SINE / 12)), RAD(-25 - 7.5 * SIN(SINE / 12))) * LEFTSHOULDERC0, 1 / Animation_Speed)
1659
			RightHip.C0 = Clerp(RightHip.C0, CF(1, -1, -0.01) * ANGLES(RAD(-25 - 7.5 * SIN(SINE / 12)), RAD(75), RAD(0)) * ANGLES(RAD(-8 - 5.5 * SIN(SINE / 12)), RAD(0), RAD(0)), 1 / Animation_Speed)
1660
			LeftHip.C0 = Clerp(LeftHip.C0, CF(-1, -0.5, -0.5) * ANGLES(RAD(-7.5 * SIN(SINE / 12)), RAD(-90), RAD(0)) * ANGLES(RAD(-8 - 2.5 * SIN(SINE / 12)), RAD(0), RAD(0)), 1 / Animation_Speed)
1661
		end
1662
	end
1663
	for WING = 1, #WINGS do
1664
		local STUFF = WINGS[WING]
1665
		local FEATHERS = STUFF[1]
1666
		local ACCEL = STUFF[2]
1667
		FEATHERS.Acceleration = ACCEL + VT(0, 35 * SIN(SINE / 12), 0)
1668
	end
1669
	unanchor()
1670
	Humanoid.MaxHealth = 3000000
1671
	Humanoid.Health = 3000000
1672
	if Rooted == false then
1673
		Disable_Jump = false
1674
		Humanoid.WalkSpeed = Speed
1675
	elseif Rooted == true then
1676
		Disable_Jump = true
1677
		Humanoid.WalkSpeed = 0
1678
	end
1679
	for _, c in pairs(Character:GetChildren()) do
1680
		if c.ClassName == "Accessory" or c.Name == "Body Colors" then
1681
			local hand = c:FindFirstChild'Handle'
1682
			if(hand)then
1683
				hand.Parent = Character
1684
				weldBetween(hand,Head)
1685
			end
1686
			c:destroy()
1687
		end
1688
	end
1689
	sick.Playing = true
1690
	sick.SoundId = "rbxassetid://1073318933"
1691
	sick.Looped = true
1692
	sick.Pitch = 1
1693
	sick.Volume = 3
1694
	if sick.Parent ~= Character then
1695
		sick = IT("Sound", Character)
1696
	end
1697
	Head.Color = C3(0,0,0)
1698
	pcall(function() Head:FindFirstChildOfClass'Decal':destroy() end)
1699
	ApplyAoE(Torso.Position, 12)
1700
	refit()
1701
end