View difference between Paste ID: zrQqDdt9 and ayEvhaV2
SHOW: | | - or go back to the newest paste.
1
--https://github.com/Mokiros/roblox-FE-compatibility
2
if game:GetService("RunService"):IsClient() then error("Script must be server-side in order to work; use h/ and not hl/") end
3
local Player,Mouse,mouse,UserInputService,ContextActionService = owner
4
local RealPlayer = Player
5
do print("FE Compatibility code by Mokiros")local a=RealPlayer;script.Parent=a.Character;local b=Instance.new("RemoteEvent")b.Name="UserInput_Event"local function c()local d={_fakeEvent=true,Functions={},Connect=function(self,e)table.insert(self.Functions,e)end}d.connect=d.Connect;return d end;local f={Target=nil,Hit=CFrame.new(),KeyUp=c(),KeyDown=c(),Button1Up=c(),Button1Down=c(),Button2Up=c(),Button2Down=c()}local g={InputBegan=c(),InputEnded=c()}local CAS={Actions={},BindAction=function(self,h,i,j,...)CAS.Actions[h]=i and{Name=h,Function=i,Keys={...}}or nil end}CAS.UnbindAction=CAS.BindAction;local function k(self,l,...)local d=f[l]if d and d._fakeEvent then for m,e in pairs(d.Functions)do e(...)end end end;f.TrigEvent=k;g.TrigEvent=k;b.OnServerEvent:Connect(function(n,o)if n~=a then return end;f.Target=o.Target;f.Hit=o.Hit;if not o.isMouse then local p=o.UserInputState==Enum.UserInputState.Begin;if o.UserInputType==Enum.UserInputType.MouseButton1 then return f:TrigEvent(p and"Button1Down"or"Button1Up")end;if o.UserInputType==Enum.UserInputType.MouseButton2 then return f:TrigEvent(p and"Button2Down"or"Button2Up")end;for m,d in pairs(CAS.Actions)do for m,q in pairs(d.Keys)do if q==o.KeyCode then d.Function(d.Name,o.UserInputState,o)end end end;f:TrigEvent(p and"KeyDown"or"KeyUp",o.KeyCode.Name:lower())g:TrigEvent(p and"InputBegan"or"InputEnded",o,false)end end)b.Parent=NLS([==[local a=game:GetService("Players").LocalPlayer;local b=script:WaitForChild("UserInput_Event")local c=a:GetMouse()local d=game:GetService("UserInputService")local e=function(f,g)if g then return end;b:FireServer({KeyCode=f.KeyCode,UserInputType=f.UserInputType,UserInputState=f.UserInputState,Hit=c.Hit,Target=c.Target})end;d.InputBegan:Connect(e)d.InputEnded:Connect(e)local h,i;while wait(1/30)do if h~=c.Hit or i~=c.Target then h,i=c.Hit,c.Target;b:FireServer({isMouse=true,Target=i,Hit=h})end end]==],Player.Character)local r=game;local s={__index=function(self,q)local t=rawget(self,"_RealService")if t then return typeof(t[q])=="function"and function(m,...)return t[q](t,...)end or t[q]end end,__newindex=function(self,q,u)local t=rawget(self,"_RealService")if t then t[q]=u end end}local function v(d,w)d._RealService=typeof(w)=="string"and r:GetService(w)or w;return setmetatable(d,s)end;local x={GetService=function(self,t)return rawget(self,t)or r:GetService(t)end,Players=v({LocalPlayer=v({GetMouse=function(self)return f end},Player)},"Players"),UserInputService=v(g,"UserInputService"),ContextActionService=v(CAS,"ContextActionService"),RunService=v({_btrs={},RenderStepped=r:GetService("RunService").Heartbeat,BindToRenderStep=function(self,h,m,i)self._btrs[h]=self.Heartbeat:Connect(i)end,UnbindFromRenderStep=function(self,h)self._btrs[h]:Disconnect()end},"RunService")}rawset(x.Players,"localPlayer",x.Players.LocalPlayer)x.service=x.GetService;v(x,game)game,owner=x,x.Players.LocalPlayer end
6
7
---------------Shadow Max/Colossus by Shackluster---------------
8
9
10
wait(0.2)
11
12
Player = game:GetService("Players").LocalPlayer
13
PlayerGui = Player.PlayerGui
14
Cam = workspace.CurrentCamera
15
Backpack = Player.Backpack
16
Character = Player.Character
17
Mouse = Player:GetMouse()
18
Humanoid = Character.Humanoid
19
Humanoid.Name = "Shadowmax"
20
Humanoid.DisplayDistanceType = "None"
21
RootPart = Character["HumanoidRootPart"]
22
Torso = Character["Torso"]
23
Head = Character["Head"]
24
RightArm = Character["Right Arm"]
25
LeftArm = Character["Left Arm"]
26
RightLeg = Character["Right Leg"]
27
LeftLeg = Character["Left Leg"]
28
RootJoint = RootPart["RootJoint"]
29
Neck = Torso["Neck"]
30
RightShoulder = Torso["Right Shoulder"]
31
LeftShoulder = Torso["Left Shoulder"]
32
RightHip = Torso["Right Hip"]
33
LeftHip = Torso["Left Hip"]
34
local BMUSIC = Instance.new("Sound",Character)
35
36
IT = Instance.new
37
CF = CFrame.new
38
VT = Vector3.new
39
RAD = math.rad
40
C3 = Color3.new
41
UD2 = UDim2.new
42
BRICKC = BrickColor.new
43
ANGLES = CFrame.Angles
44
EULER = CFrame.fromEulerAnglesXYZ
45
COS = math.cos
46
ACOS = math.acos
47
SIN = math.sin
48
ASIN = math.asin
49
ABS = math.abs
50
MRANDOM = math.random
51
FLOOR = math.floor
52
53
--//=================================\\
54
--|| 	      USEFUL VALUES
55
--\\=================================//
56
57
Animation_Speed = 3
58
Frame_Speed = 1 / 60 -- (1 / 30) OR (1 / 60)
59
local Speed = 16
60
local ROOTC0 = CF(0, 0, 0) * ANGLES(RAD(-90), RAD(0), RAD(180))
61
local NECKC0 = CF(0, 1, 0) * ANGLES(RAD(-90), RAD(0), RAD(180))
62
local RIGHTSHOULDERC0 = CF(-0.5, 0, 0) * ANGLES(RAD(0), RAD(90), RAD(0))
63
local LEFTSHOULDERC0 = CF(0.5, 0, 0) * ANGLES(RAD(0), RAD(-90), RAD(0))
64
local DAMAGEMULTIPLIER = 1
65
local ANIM = "Idle"
66
local ATTACK = false
67
local EQUIPPED = false
68
local HOLD = false
69
local COMBO = 1
70
local Rooted = false
71
local SINE = 0
72
local KEYHOLD = false
73
local CHANGE = 2 / Animation_Speed
74
local WALKINGANIM = false
75
local ANIMATOR = Humanoid.Animator
76
local ANIMATE = Character.Animate
77
ANIMATE:remove()
78
for _,v in next, Humanoid:GetPlayingAnimationTracks() do
79
	v:Stop();
80
end
81
local ROBLOXIDLEANIMATION = IT("Animation")
82
ROBLOXIDLEANIMATION.Name = "Roblox Idle Animation"
83
ROBLOXIDLEANIMATION.AnimationId = "http://www.roblox.com/asset/?id=180435571"
84
--ROBLOXIDLEANIMATION.Parent = Humanoid
85
local WEAPONGUI = IT("ScreenGui", PlayerGui)
86
WEAPONGUI.Name = "SHADOWMAX_GUI"
87
script.Parent = WEAPONGUI
88
Character.Archivable = true
89
local CLONE = Character:Clone()
90
CLONE.Parent = nil
91
Character.Archivable = false
92
local Effects = IT("Folder", Character)
93
Effects.Name = "Effects"
94
local UNANCHOR = true
95
local SIZE = 1
96
local FORM = "Normal"
97
local SHADES = {}
98
local TRANS = 0.5
99
local SHADEDIST = 5
100
101
--//=================================\\
102
--||          LOCAL IDS
103
--\\=================================//
104
105
local GROWL = 1544355717
106
local ROAR = 528589382
107
local ECHOBLAST = 376976397
108
local CAST = 459523898
109
local ALCHEMY = 424195979
110
local BUILDUP = 698824317
111
local BIGBUILDUP = 874376217
112
local IMPACT = 231917744
113
local LARGE_EXPLOSION = 168513088
114
local TURNUP = 299058146
115
116
--//=================================\\
117
--|| SAZERENOS' ARTIFICIAL HEARTBEAT
118
--\\=================================//
119
120
ArtificialHB = Instance.new("BindableEvent", script)
121
ArtificialHB.Name = "ArtificialHB"
122
123
script:WaitForChild("ArtificialHB")
124
125
frame = Frame_Speed
126
tf = 0
127
allowframeloss = false
128
tossremainder = false
129
lastframe = tick()
130
script.ArtificialHB:Fire()
131
132
game:GetService("RunService").Heartbeat:connect(function(s, p)
133
	tf = tf + s
134
	if tf >= frame then
135
		if allowframeloss then
136
			script.ArtificialHB:Fire()
137
			lastframe = tick()
138
		else
139
			for i = 1, math.floor(tf / frame) do
140
				script.ArtificialHB:Fire()
141
			end
142
		lastframe = tick()
143
		end
144
		if tossremainder then
145
			tf = 0
146
		else
147
			tf = tf - frame * math.floor(tf / frame)
148
		end
149
	end
150
end)
151
152
--//=================================\\
153
--\\=================================//
154
155
--//=================================\\
156
--|| 	      SOME FUNCTIONS
157
--\\=================================//
158
159
function Raycast(POSITION, DIRECTION, RANGE, IGNOREDECENDANTS)
160
	return workspace:FindPartOnRay(Ray.new(POSITION, DIRECTION.unit * RANGE), IGNOREDECENDANTS)
161
end
162
163
function PositiveAngle(NUMBER)
164
	if NUMBER >= 0 then
165
		NUMBER = 0
166
	end
167
	return NUMBER
168
end
169
170
function NegativeAngle(NUMBER)
171
	if NUMBER <= 0 then
172
		NUMBER = 0
173
	end
174
	return NUMBER
175
end
176
177
function Swait(NUMBER)
178
	if NUMBER == 0 or NUMBER == nil then
179
		ArtificialHB.Event:wait()
180
	else
181
		for i = 1, NUMBER do
182
			ArtificialHB.Event:wait()
183
		end
184
	end
185
end
186
187
function CreateMesh(MESH, PARENT, MESHTYPE, MESHID, TEXTUREID, SCALE, OFFSET)
188
	local NEWMESH = IT(MESH)
189
	if MESH == "SpecialMesh" then
190
		NEWMESH.MeshType = MESHTYPE
191
		if MESHID ~= "nil" and MESHID ~= "" then
192
			NEWMESH.MeshId = "http://www.roblox.com/asset/?id="..MESHID
193
		end
194
		if TEXTUREID ~= "nil" and TEXTUREID ~= "" then
195
			NEWMESH.TextureId = "http://www.roblox.com/asset/?id="..TEXTUREID
196
		end
197
	end
198
	NEWMESH.Offset = OFFSET or VT(0, 0, 0)
199
	NEWMESH.Scale = SCALE
200
	NEWMESH.Parent = PARENT
201
	return NEWMESH
202
end
203
204
function CreatePart(FORMFACTOR, PARENT, MATERIAL, REFLECTANCE, TRANSPARENCY, BRICKCOLOR, NAME, SIZE, ANCHOR)
205
	local NEWPART = IT("Part")
206
	NEWPART.formFactor = FORMFACTOR
207
	NEWPART.Reflectance = REFLECTANCE
208
	NEWPART.Transparency = TRANSPARENCY
209
	NEWPART.CanCollide = false
210
	NEWPART.Locked = true
211
	NEWPART.Anchored = true
212
	if ANCHOR == false then
213
		NEWPART.Anchored = false
214
	end
215
	NEWPART.BrickColor = BRICKC(tostring(BRICKCOLOR))
216
	NEWPART.Name = NAME
217
	NEWPART.Size = SIZE
218
	NEWPART.Position = Torso.Position
219
	NEWPART.Material = MATERIAL
220
	NEWPART:BreakJoints()
221
	NEWPART.Parent = PARENT
222
	return NEWPART
223
end
224
225
	local function weldBetween(a, b)
226
	    local weldd = Instance.new("ManualWeld")
227
	    weldd.Part0 = a
228
	    weldd.Part1 = b
229
	    weldd.C0 = CFrame.new()
230
	    weldd.C1 = b.CFrame:inverse() * a.CFrame
231
	    weldd.Parent = a
232
	    return weldd
233
	end
234
235
236
function QuaternionFromCFrame(cf)
237
	local mx, my, mz, m00, m01, m02, m10, m11, m12, m20, m21, m22 = cf:components()
238
	local trace = m00 + m11 + m22
239
	if trace > 0 then 
240
		local s = math.sqrt(1 + trace)
241
		local recip = 0.5 / s
242
		return (m21 - m12) * recip, (m02 - m20) * recip, (m10 - m01) * recip, s * 0.5
243
	else
244
		local i = 0
245
		if m11 > m00 then
246
			i = 1
247
		end
248
		if m22 > (i == 0 and m00 or m11) then
249
			i = 2
250
		end
251
		if i == 0 then
252
			local s = math.sqrt(m00 - m11 - m22 + 1)
253
			local recip = 0.5 / s
254
			return 0.5 * s, (m10 + m01) * recip, (m20 + m02) * recip, (m21 - m12) * recip
255
		elseif i == 1 then
256
			local s = math.sqrt(m11 - m22 - m00 + 1)
257
			local recip = 0.5 / s
258
			return (m01 + m10) * recip, 0.5 * s, (m21 + m12) * recip, (m02 - m20) * recip
259
		elseif i == 2 then
260
			local s = math.sqrt(m22 - m00 - m11 + 1)
261
			local recip = 0.5 / s return (m02 + m20) * recip, (m12 + m21) * recip, 0.5 * s, (m10 - m01) * recip
262
		end
263
	end
264
end
265
 
266
function QuaternionToCFrame(px, py, pz, x, y, z, w)
267
	local xs, ys, zs = x + x, y + y, z + z
268
	local wx, wy, wz = w * xs, w * ys, w * zs
269
	local xx = x * xs
270
	local xy = x * ys
271
	local xz = x * zs
272
	local yy = y * ys
273
	local yz = y * zs
274
	local zz = z * zs
275
	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))
276
end
277
 
278
function QuaternionSlerp(a, b, t)
279
	local cosTheta = a[1] * b[1] + a[2] * b[2] + a[3] * b[3] + a[4] * b[4]
280
	local startInterp, finishInterp;
281
	if cosTheta >= 0.0001 then
282
		if (1 - cosTheta) > 0.0001 then
283
			local theta = ACOS(cosTheta)
284
			local invSinTheta = 1 / SIN(theta)
285
			startInterp = SIN((1 - t) * theta) * invSinTheta
286
			finishInterp = SIN(t * theta) * invSinTheta
287
		else
288
			startInterp = 1 - t
289
			finishInterp = t
290
		end
291
	else
292
		if (1 + cosTheta) > 0.0001 then
293
			local theta = ACOS(-cosTheta)
294
			local invSinTheta = 1 / SIN(theta)
295
			startInterp = SIN((t - 1) * theta) * invSinTheta
296
			finishInterp = SIN(t * theta) * invSinTheta
297
		else
298
			startInterp = t - 1
299
			finishInterp = t
300
		end
301
	end
302
	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
303
end
304
305
function Clerp(a, b, t)
306
	local qa = {QuaternionFromCFrame(a)}
307
	local qb = {QuaternionFromCFrame(b)}
308
	local ax, ay, az = a.x, a.y, a.z
309
	local bx, by, bz = b.x, b.y, b.z
310
	local _t = 1 - t
311
	return QuaternionToCFrame(_t * ax + t * bx, _t * ay + t * by, _t * az + t * bz, QuaternionSlerp(qa, qb, t))
312
end
313
314
function CreateFrame(PARENT, TRANSPARENCY, BORDERSIZEPIXEL, POSITION, SIZE, COLOR, BORDERCOLOR, NAME)
315
	local frame = IT("Frame")
316
	frame.BackgroundTransparency = TRANSPARENCY
317
	frame.BorderSizePixel = BORDERSIZEPIXEL
318
	frame.Position = POSITION
319
	frame.Size = SIZE
320
	frame.BackgroundColor3 = COLOR
321
	frame.BorderColor3 = BORDERCOLOR
322
	frame.Name = NAME
323
	frame.Parent = PARENT
324
	return frame
325
end
326
327
function CreateLabel(PARENT, TEXT, TEXTCOLOR, TEXTFONTSIZE, TEXTFONT, TRANSPARENCY, BORDERSIZEPIXEL, STROKETRANSPARENCY, NAME)
328
	local label = IT("TextLabel")
329
	label.BackgroundTransparency = 1
330
	label.Size = UD2(1, 0, 1, 0)
331
	label.Position = UD2(0, 0, 0, 0)
332
	label.TextColor3 = TEXTCOLOR
333
	label.TextStrokeTransparency = STROKETRANSPARENCY
334
	label.TextTransparency = TRANSPARENCY
335
	label.FontSize = TEXTFONTSIZE
336
	label.Font = TEXTFONT
337
	label.BorderSizePixel = BORDERSIZEPIXEL
338
	label.TextScaled = false
339
	label.Text = TEXT
340
	label.Name = NAME
341
	label.Parent = PARENT
342
	return label
343
end
344
345
function FireArc(Part,ToLocation,AmountOfTime,Height,DoesCourontine)
346
	if DoesCourontine == false then
347
		local Direction = CF(Part.Position,ToLocation)
348
		local Distance = (Part.Position - ToLocation).magnitude
349
		for i = 1, AmountOfTime do
350
			Swait()
351
			Part.CFrame = Direction*CF(0,(AmountOfTime/200)+((AmountOfTime/Height)-((i*2)/Height)),-Distance/AmountOfTime)
352
			Direction = Part.CFrame
353
		end
354
		Part:remove()
355
	elseif DoesCourontine == true then
356
		coroutine.resume(coroutine.create(function()
357
			local Direction = CF(Part.Position,ToLocation)
358
			local Distance = (Part.Position - ToLocation).magnitude
359
			for i = 1, AmountOfTime do
360
				Swait()
361
				Part.CFrame = Direction*CF(0,(AmountOfTime/200)+((AmountOfTime/Height)-((i*2)/Height)),-Distance/AmountOfTime)
362
				Direction = Part.CFrame
363
			end
364
			Part:remove()
365
		end))
366
	end
367
end
368
369
function NoOutlines(PART)
370
	PART.TopSurface, PART.BottomSurface, PART.LeftSurface, PART.RightSurface, PART.FrontSurface, PART.BackSurface = 10, 10, 10, 10, 10, 10
371
end
372
373
function CreateWeldOrSnapOrMotor(TYPE, PARENT, PART0, PART1, C0, C1)
374
	local NEWWELD = IT(TYPE)
375
	NEWWELD.Part0 = PART0
376
	NEWWELD.Part1 = PART1
377
	NEWWELD.C0 = C0
378
	NEWWELD.C1 = C1
379
	NEWWELD.Parent = PARENT
380
	return NEWWELD
381
end
382
383
local S = IT("Sound")
384
function CreateSound(ID, PARENT, VOLUME, PITCH, DOESLOOP)
385
	local NEWSOUND = nil
386
	coroutine.resume(coroutine.create(function()
387
		NEWSOUND = S:Clone()
388
		NEWSOUND.Parent = PARENT
389
		NEWSOUND.Volume = VOLUME
390
		NEWSOUND.Pitch = PITCH
391
		NEWSOUND.SoundId = "http://www.roblox.com/asset/?id="..ID
392
		NEWSOUND:play()
393
		if DOESLOOP == true then
394
			NEWSOUND.Looped = true
395
		else
396
			repeat wait(1) until NEWSOUND.Playing == false
397
			NEWSOUND:remove()
398
		end
399
	end))
400
	return NEWSOUND
401
end
402
403
function CFrameFromTopBack(at, top, back)
404
	local right = top:Cross(back)
405
	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)
406
end
407
408
--WACKYEFFECT({EffectType = "", Size = VT(1,1,1), Size2 = VT(0,0,0), Transparency = 0, Transparency2 = 1, CFrame = CF(), MoveToPos = nil, RotationX = 0, RotationY = 0, RotationZ = 0, Material = "Neon", Color = C3(1,1,1), SoundID = nil, SoundPitch = nil, SoundVolume = nil})
409
function WACKYEFFECT(Table)
410
	local TYPE = (Table.EffectType or "Sphere")
411
	local SIZE = (Table.Size or VT(1,1,1))
412
	local ENDSIZE = (Table.Size2 or VT(0,0,0))
413
	local TRANSPARENCY = (Table.Transparency or 0)
414
	local ENDTRANSPARENCY = (Table.Transparency2 or 1)
415
	local CFRAME = (Table.CFrame or Torso.CFrame)
416
	local MOVEDIRECTION = (Table.MoveToPos or nil)
417
	local ROTATION1 = (Table.RotationX or 0)
418
	local ROTATION2 = (Table.RotationY or 0)
419
	local ROTATION3 = (Table.RotationZ or 0)
420
	local MATERIAL = (Table.Material or "Neon")
421
	local COLOR = (Table.Color or C3(1,1,1))
422
	local TIME = (Table.Time or 45)
423
	local SOUNDID = (Table.SoundID or nil)
424
	local SOUNDPITCH = (Table.SoundPitch or nil)
425
	local SOUNDVOLUME = (Table.SoundVolume or nil)
426
	coroutine.resume(coroutine.create(function()
427
		local PLAYSSOUND = false
428
		local SOUND = nil
429
		local EFFECT = CreatePart(3, Effects, MATERIAL, 0, TRANSPARENCY, BRICKC("Pearl"), "Effect", VT(1,1,1), true)
430
		if SOUNDID ~= nil and SOUNDPITCH ~= nil and SOUNDVOLUME ~= nil then
431
			PLAYSSOUND = true
432
			SOUND = CreateSound(SOUNDID, EFFECT, SOUNDVOLUME, SOUNDPITCH, false)
433
		end
434
		EFFECT.Color = COLOR
435
		local MSH = nil
436
		if TYPE == "Sphere" then
437
			MSH = CreateMesh("SpecialMesh", EFFECT, "Sphere", "", "", SIZE, VT(0,0,0))
438
		elseif TYPE == "Block" or TYPE == "Box" then
439
			MSH = IT("BlockMesh",EFFECT)
440
			MSH.Scale = SIZE
441
		elseif TYPE == "Cylinder" then
442
			MSH = IT("CylinderMesh",EFFECT)
443
			MSH.Scale = SIZE
444
		elseif TYPE == "Wave" then
445
			MSH = CreateMesh("SpecialMesh", EFFECT, "FileMesh", "20329976", "", SIZE, VT(0,0,-SIZE.X/8))
446
		elseif TYPE == "Ring" then
447
			MSH = CreateMesh("SpecialMesh", EFFECT, "FileMesh", "559831844", "", VT(SIZE.X,SIZE.X,0.1), VT(0,0,0))
448
		elseif TYPE == "Slash" then
449
			MSH = CreateMesh("SpecialMesh", EFFECT, "FileMesh", "662586858", "", VT(SIZE.X/10,0,SIZE.X/10), VT(0,0,0))
450
		elseif TYPE == "Round Slash" then
451
			MSH = CreateMesh("SpecialMesh", EFFECT, "FileMesh", "662585058", "", VT(SIZE.X/10,0,SIZE.X/10), VT(0,0,0))
452
		elseif TYPE == "Swirl" then
453
			MSH = CreateMesh("SpecialMesh", EFFECT, "FileMesh", "1051557", "", SIZE, VT(0,0,0))
454
		elseif TYPE == "Skull" then
455
			MSH = CreateMesh("SpecialMesh", EFFECT, "FileMesh", "4770583", "", SIZE, VT(0,0,0))
456
		elseif TYPE == "Crystal" then
457
			MSH = CreateMesh("SpecialMesh", EFFECT, "FileMesh", "9756362", "", SIZE, VT(0,0,0))
458
		elseif TYPE == "Crown" then
459
			MSH = CreateMesh("SpecialMesh", EFFECT, "FileMesh", "173770780", "", SIZE, VT(0,0,0))
460
		end
461
		if MSH ~= nil then
462
			local MOVESPEED = nil
463
			if MOVEDIRECTION ~= nil then
464
				MOVESPEED = (CFRAME.p - MOVEDIRECTION).Magnitude/TIME
465
			end
466
			local GROWTH = SIZE - ENDSIZE
467
			local TRANS = TRANSPARENCY - ENDTRANSPARENCY
468
			if TYPE == "Block" then
469
				EFFECT.CFrame = CFRAME*ANGLES(RAD(MRANDOM(0,360)),RAD(MRANDOM(0,360)),RAD(MRANDOM(0,360)))
470
			else
471
				EFFECT.CFrame = CFRAME
472
			end
473
			for LOOP = 1, TIME+1 do
474
				Swait()
475
				MSH.Scale = MSH.Scale - GROWTH/TIME
476
				if TYPE == "Wave" then
477
					MSH.Offset = VT(0,0,-MSH.Scale.X/8)
478
				end
479
				EFFECT.Transparency = EFFECT.Transparency - TRANS/TIME
480
				if TYPE == "Block" then
481
					EFFECT.CFrame = CFRAME*ANGLES(RAD(MRANDOM(0,360)),RAD(MRANDOM(0,360)),RAD(MRANDOM(0,360)))
482
				else
483
					EFFECT.CFrame = EFFECT.CFrame*ANGLES(RAD(ROTATION1),RAD(ROTATION2),RAD(ROTATION3))
484
				end
485
				if MOVEDIRECTION ~= nil then
486
					local ORI = EFFECT.Orientation
487
					EFFECT.CFrame = CF(EFFECT.Position,MOVEDIRECTION)*CF(0,0,-MOVESPEED)
488
					EFFECT.Orientation = ORI
489
				end
490
			end
491
			EFFECT.Transparency = 1
492
			if PLAYSSOUND == false then
493
				EFFECT:remove()
494
			else
495
				repeat Swait() until SOUND.Playing == false
496
				EFFECT:remove()
497
			end
498
		else
499
			if PLAYSSOUND == false then
500
				EFFECT:remove()
501
			else
502
				repeat Swait() until SOUND.Playing == false
503
				EFFECT:remove()
504
			end
505
		end
506
	end))
507
end
508
509
--Lightning({Material = "Neon", FadeIn = false, Color = C3(1,1,1), Start = Torso.Position, End = Mouse.Hit.p, SegmentL = 2, Thickness = 0.1, DoesFade = false, Ignore = Character, MaxDist = 400, Branches = false, FadeTime = 15, Thicken = false})
510
function Lightning(Table)
511
	local Color = Table.Color or C3(1,1,1)
512
	local StartPos = Table.Start or Torso.Position
513
	local EndPos = Table.End or Mouse.Hit.p
514
	local SegmentLength = Table.SegmentL or 2
515
	local Thickness = Table.Thickness or 0.1
516
	local Dissapear = Table.DoesFade or false
517
	local Parent = Table.Ignore or Character
518
	local MaxDist = Table.MaxDist or 400
519
	local Branches = Table.Branches or false
520
	local Thicken = Table.Thicken or false
521
	local FadeTime = Table.FadeTime or 15
522
	local FadeIn = Table.FadeIn or false
523
	local Material = Table.Material or "Neon"
524
	local HIT,HITPOS = CastProperRay(StartPos, EndPos, MaxDist, Parent)
525
	local DISTANCE = math.ceil((StartPos - HITPOS).Magnitude/((SegmentLength/SegmentLength)/1.5))
526
	local LIGHTNINGMODEL = IT("Model",Effects)
527
	LIGHTNINGMODEL.Name = "Lightning"
528
	local LastBolt = nil
529
	for E = 1, DISTANCE do
530
		local ExtraSize = 0
531
		if Thicken == true then
532
			ExtraSize = (DISTANCE-E)/15
533
		end
534
		local TRANSPARENCY = 0
535
		if FadeIn == true then
536
			TRANSPARENCY = 1-(E/(DISTANCE/1.5))
537
			if TRANSPARENCY < 0 then
538
				TRANSPARENCY = 0
539
			end
540
		end
541
		local PART = CreatePart(3, LIGHTNINGMODEL, Material, 0, TRANSPARENCY, BRICKC("Pearl"), "LightningPart"..E, VT(Thickness+ExtraSize,SegmentLength,Thickness+ExtraSize))
542
		PART.Color = Color
543
		MakeForm(PART,"Cyl")
544
		if LastBolt == nil then
545
			PART.CFrame = CF(StartPos,HITPOS)*ANGLES(RAD(90),RAD(0),RAD(0))*CF(0,-PART.Size.Y/2,0)
546
		else
547
			PART.CFrame = CF(LastBolt.CFrame*CF(0,-LastBolt.Size.Y/2,0).p,CF(HITPOS)*ANGLES(RAD(MRANDOM(0,360)),RAD(MRANDOM(0,360)),RAD(MRANDOM(0,360)))*CF(0,0,DISTANCE-E).p)*ANGLES(RAD(90),RAD(0),RAD(0))*CF(0,-PART.Size.Y/2,0)
548
		end
549
		LastBolt = PART
550
		if Branches == true and E < (DISTANCE-5) then
551
			local CHOICE = MRANDOM(1,7+((DISTANCE-E)*2))
552
			if CHOICE == 1 then
553
				local LASTBRANCH = nil
554
				for i = 1, MRANDOM(2,5) do
555
					local ExtraSize2 = 0
556
					if Thicken == true then
557
						ExtraSize = ((DISTANCE-E)/25)/i
558
					end
559
					local PART = CreatePart(3, LIGHTNINGMODEL, Material, 0, TRANSPARENCY, BRICKC("Pearl"), "Branch"..E.."-"..i, VT(Thickness+ExtraSize2,SegmentLength,Thickness+ExtraSize2))
560
					PART.Color = Color
561
					MakeForm(PART,"Cyl")
562
					if LASTBRANCH == nil then
563
						PART.CFrame = CF(LastBolt.CFrame*CF(0,-LastBolt.Size.Y/2,0).p,LastBolt.CFrame*CF(0,-LastBolt.Size.Y/2,0)*ANGLES(RAD(0),RAD(0),RAD(MRANDOM(0,360)))*CF(0,Thickness*7,0)*CF(0,0,-1).p)*ANGLES(RAD(90),RAD(0),RAD(0))*CF(0,-PART.Size.Y/2,0)
564
					else
565
						PART.CFrame = CF(LASTBRANCH.CFrame*CF(0,-LASTBRANCH.Size.Y/2,0).p,LASTBRANCH.CFrame*CF(0,-LASTBRANCH.Size.Y/2,0)*ANGLES(RAD(0),RAD(0),RAD(MRANDOM(0,360)))*CF(0,Thickness*3,0)*CF(0,0,-1).p)*ANGLES(RAD(90),RAD(0),RAD(0))*CF(0,-PART.Size.Y/2,0)
566
					end
567
					LASTBRANCH = PART
568
				end
569
			end
570
		end
571
	end
572
	if Dissapear == true then
573
		coroutine.resume(coroutine.create(function()
574
			for i = 1, FadeTime do
575
				Swait()
576
				for _, c in pairs(LIGHTNINGMODEL:GetChildren()) do
577
					if c.ClassName == "Part" then
578
						c.Transparency = c.Transparency + (i/FadeTime)/10
579
					end
580
				end
581
			end
582
			LIGHTNINGMODEL:remove()
583
		end))
584
	elseif Dissapear == false then
585
		Debris:AddItem(LIGHTNINGMODEL,0.1)
586
	end
587
	return {Hit = HIT,Pos = HITPOS,End = LastBolt.CFrame*CF(0,0,-LastBolt.Size.Z).p,LastBolt = LastBolt,Model = LIGHTNINGMODEL}
588
end
589
590
local DECAL = IT("Decal")
591
function MagicRing(PART,CFRAME)
592
	local RING = CreatePart(3, Effects, "Granite", 0, 1, "Maroon", "MagicRing", VT(0,0,0),false)
593
	local WELD = CreateWeldOrSnapOrMotor("Weld", PART, PART, RING, CFRAME, CF(0, 0, 0))
594
	local MESH = IT("BlockMesh",RING)
595
	local BOTTOMTEXTURE = DECAL:Clone()
596
	BOTTOMTEXTURE.Parent = RING
597
	BOTTOMTEXTURE.Face = "Bottom"
598
	BOTTOMTEXTURE.Name = "BottomTexture"
599
	local TOPTEXTURE = DECAL:Clone()
600
	TOPTEXTURE.Parent = RING
601
	TOPTEXTURE.Face = "Top"
602
	TOPTEXTURE.Name = "TopTexture"
603
	local LIGHT = IT("PointLight",RING)
604
	BOTTOMTEXTURE.Texture = "http://www.roblox.com/asset/?id=1208118228"
605
	TOPTEXTURE.Texture = "http://www.roblox.com/asset/?id=1208118228"
606
	return RING,WELD,MESH
607
end
608
609
function MakeForm(PART,TYPE)
610
	if TYPE == "Cyl" then
611
		local MSH = IT("CylinderMesh",PART)
612
	elseif TYPE == "Ball" then
613
		local MSH = IT("SpecialMesh",PART)
614
		MSH.MeshType = "Sphere"
615
	elseif TYPE == "Wedge" then
616
		local MSH = IT("SpecialMesh",PART)
617
		MSH.MeshType = "Wedge"
618
	end
619
end
620
621
Debris = game:GetService("Debris")
622
623
function CastProperRay(StartPos, EndPos, Distance, Ignore)
624
	local DIRECTION = CF(StartPos,EndPos).lookVector
625
	return Raycast(StartPos, DIRECTION, Distance, Ignore)
626
end
627
628
function ReSize()
629
	Humanoid.Parent = nil
630
	RootPart.Size = VT(2,2,1)*SIZE
631
	Torso.Size = VT(2,2,1)*SIZE
632
	RightArm.Size = VT(1,2,1)*SIZE
633
	RightLeg.Size = VT(1,2,1)*SIZE
634
	LeftArm.Size = VT(1,2,1)*SIZE
635
	LeftLeg.Size = VT(1,2,1)*SIZE
636
	RootJoint.C1 = ROOTC0 * CF(0 * SIZE, 0 * SIZE, 0 * SIZE) * ANGLES(RAD(0), RAD(0), RAD(0))
637
	Neck.C1 = CF(0 * SIZE, -0.5 * SIZE, 0 * SIZE) * ANGLES(RAD(-90), RAD(0), RAD(180))
638
	if SIZE == 1 then
639
		RightShoulder.C1 = CF(0 * SIZE, 0.5 * SIZE, -0.5*SIZE)
640
		LeftShoulder.C1 = CF(0 * SIZE, 0.5 * SIZE, -0.5*SIZE)
641
	else
642
		RightShoulder.C1 = CF(0 * SIZE, 0.5 * SIZE, -0.15*SIZE)
643
		LeftShoulder.C1 = CF(0 * SIZE, 0.5 * SIZE, -0.15*SIZE)
644
	end
645
	RightHip.C1 = CF(0.5 * SIZE, 1 * SIZE, 0 * SIZE) * ANGLES(RAD(0), RAD(90), RAD(0)) * ANGLES(RAD(0), RAD(0), RAD(0))
646
	LeftHip.C1 = CF(-0.5 * SIZE, 1 * SIZE, 0 * SIZE) * ANGLES(RAD(0), RAD(-90), RAD(0)) * ANGLES(RAD(0), RAD(0), RAD(0))
647
	Head.Size = VT(2,1,1)*SIZE
648
	RootJoint.Parent = RootPart
649
	Neck.Parent = Torso
650
	RightShoulder.Parent = Torso
651
	LeftShoulder.Parent = Torso
652
	RightHip.Parent = Torso
653
	LeftHip.Parent = Torso
654
	Humanoid.Parent = Character
655
end
656
657
ReSize()
658
659
function FindTorso(MODEL,ROOT)
660
	if ROOT == false then
661
		return MODEL:FindFirstChild("Torso") or MODEL:FindFirstChild("UpperTorso")
662
	else
663
		return MODEL:FindFirstChild("HumanoidRootPart") or MODEL:FindFirstChild("Torso") or MODEL:FindFirstChild("UpperTorso")
664
	end
665
end
666
667
--//=================================\\
668
--||	     WEAPON CREATION
669
--\\=================================//
670
671
local SKILLTEXTCOLOR = C3(1,1,1)
672
local SKILLFONT = "Fantasy"
673
local SKILLTEXTSIZE = 6
674
675
local ATTACKS = {"Q-Shadow Blast","E-Chain Reaction","R-Blight Ravage","Z-The Colossus","X-And Then There Were Two"}
676
local ATTACKS2 = {"Q-Sound Tremor","E-Blighted Solar Flare","R-Alchemic Chaos","Z-Revert","X-UNUSABLE"}
677
local ATTACKS3 = {"Q-Double Shades","E-A Third","R-Twin Lightning","Z-UNUSABLE","X-Revert"}
678
--local ATTACKSFRAME = CreateFrame(WEAPONGUI, 1, 2, UD2(0.8, 0, 0.90, 0), UD2(0.26, 0, 0.07, 0), C3(0,0,0), C3(0, 0, 0), "Skill Frame")
679
--local TEXT = CreateLabel(ATTACKSFRAME, "[ATTACKS]", SKILLTEXTCOLOR, SKILLTEXTSIZE+1, SKILLFONT, 0, 2, 0.5, "Skill text")
680
681
local GUIS = {}
682
for i = 1, #ATTACKS do
683
	local SKILLFRAME = CreateFrame(WEAPONGUI, 1, 2, UD2(0.05, 0, 0.90-(0.04*i), 0), UD2(0.26, 0, 0.07, 0), C3(0,0,0), C3(0, 0, 0), "Skill Frame")
684
	local SKILLTEXT = CreateLabel(SKILLFRAME, "["..ATTACKS[i].."]", SKILLTEXTCOLOR, SKILLTEXTSIZE, SKILLFONT, 0, 2, 0, "Skill text")
685
	SKILLTEXT.TextXAlignment = "Left"
686
	table.insert(GUIS,SKILLTEXT)
687
end
688
689
--//=================================\\
690
--||			DAMAGING
691
--\\=================================//
692
693
function ONESHOT(MODEL)
694
	MODEL:BreakJoints()
695
	for index, CHILD in pairs(MODEL:GetChildren()) do
696
		if CHILD:IsA("BasePart") and CHILD.Name ~= "HumanoidRootPart" then
697
			if CHILD.Name == "Head" then
698
				WACKYEFFECT({Time = MRANDOM(10,30)*5, EffectType = "Skull", Size = VT(CHILD.Size.Z,CHILD.Size.Y,CHILD.Size.Z)*3, Size2 = (VT(CHILD.Size.Z,CHILD.Size.Y,CHILD.Size.Z)*3)*MRANDOM(7,14)/10, Transparency = CHILD.Transparency, Transparency2 = 1, CFrame = CHILD.CFrame, MoveToPos = CHILD.Position+VT(0,MRANDOM(5,8)/1.5,0), RotationX = MRANDOM(-25,25)/35, RotationY = MRANDOM(-25,25)/35, RotationZ = MRANDOM(-25,25)/35, Material = "Neon", Color = C3(0,0,0), SoundID = nil, SoundPitch = nil, SoundVolume = nil})
699
			else
700
				WACKYEFFECT({Time = MRANDOM(10,30)*5, EffectType = "Box", Size = CHILD.Size, Size2 = CHILD.Size*MRANDOM(7,14)/10, Transparency = CHILD.Transparency, Transparency2 = 1, CFrame = CHILD.CFrame, MoveToPos = CHILD.Position+VT(0,MRANDOM(5,8)/1.5,0), MRANDOM(-25,25)/35, RotationY = MRANDOM(-25,25)/35, RotationZ = MRANDOM(-25,25)/35, Material = "Neon", Color = C3(0,0,0), SoundID = nil, SoundPitch = nil, SoundVolume = nil})
701
			end
702
			CHILD:remove()
703
		end
704
	end
705
end
706
707
function ApplyAoE(POSITION,RANGE)
708
	local KILLS = 0
709
	for index, CHILD in pairs(workspace:GetDescendants()) do
710
		if CHILD.ClassName == "Model" and CHILD ~= Character then
711
			local HUM = CHILD:FindFirstChildOfClass("Humanoid")
712
			if HUM then
713
				local TORSO = CHILD:FindFirstChild("Torso") or CHILD:FindFirstChild("UpperTorso")
714
				if TORSO then
715
					if (TORSO.Position - POSITION).Magnitude <= RANGE then
716
						ONESHOT(CHILD)
717
						KILLS = KILLS + 1
718
					end
719
				end
720
			end
721
		end
722
	end
723
	if KILLS > 0 then
724
		return true
725
	else
726
		return false
727
	end
728
end
729
730
--//=================================\\
731
--||	    NORMAL ATTACKS
732
--\\=================================//
733
734
function ShadowBlast()
735
	CreateSound(GROWL,Head,10,1,false)
736
	ATTACK = true
737
	Rooted = false
738
	local GYRO = IT("BodyGyro",RootPart)
739
	GYRO.D = 20
740
	GYRO.P = 4000
741
	GYRO.MaxTorque = VT(0,40000,0)
742
	coroutine.resume(coroutine.create(function()
743
		repeat
744
			GYRO.CFrame = CF(RootPart.Position,Mouse.Hit.p)
745
			Swait()
746
		until ATTACK == false
747
		GYRO:remove()
748
	end))
749
	for i=0, 0.4, 0.1 / Animation_Speed do
750
		Swait()
751
		RootJoint.C0 = Clerp(RootJoint.C0,ROOTC0 * CF(0*SIZE, 0*SIZE, 0*SIZE + 0.05*SIZE * COS(SINE / 12)) * ANGLES(RAD(0), RAD(0), RAD(45)), 1 / Animation_Speed)
752
		Neck.C0 = Clerp(Neck.C0, NECKC0 * CF(0, 0, 0 + ((1*SIZE) - 1)) * ANGLES(RAD(0 - 2.5 * SIN(SINE / 12)), RAD(0), RAD(-45)), 1 / Animation_Speed)
753
		RightShoulder.C0 = Clerp(RightShoulder.C0, CF(1.15*SIZE, 0.5*SIZE, -0.5*SIZE) * ANGLES(RAD(45), RAD(0), RAD(-70)) * RIGHTSHOULDERC0, 1 / Animation_Speed)
754
		LeftShoulder.C0 = Clerp(LeftShoulder.C0, CF(-1.5*SIZE, 0.5*SIZE, 0*SIZE) * ANGLES(RAD(0), RAD(0), RAD(-12)) * LEFTSHOULDERC0, 1 / Animation_Speed)
755
		RightHip.C0 = Clerp(RightHip.C0, CF(1*SIZE, -1*SIZE - 0.05*SIZE * COS(SINE / 12), -0.01*SIZE) * ANGLES(RAD(0), RAD(90), RAD(0)) * ANGLES(RAD(-8), RAD(0), RAD(0)), 1 / Animation_Speed)
756
		LeftHip.C0 = Clerp(LeftHip.C0, CF(-1*SIZE, -1*SIZE - 0.05*SIZE * COS(SINE / 12), -0.01*SIZE) * ANGLES(RAD(0), RAD(-50), RAD(0)) * ANGLES(RAD(-3), RAD(0), RAD(0)), 1 / Animation_Speed)
757
	end
758
	BULLET = function(CFRAME,TIMER)
759
		if TIMER > 0 then
760
			coroutine.resume(coroutine.create(function()
761
				for i =1, 100 do
762
					Swait()
763
					local HIT,POS,NORMAL = Raycast(CFRAME.p,CFRAME.lookVector,1,Character)
764
					if HIT then
765
						ApplyAoE(POS,10,15,17,15,false,false)
766
						for i = 1, 5 do
767
							WACKYEFFECT({Time = MRANDOM(10,40)/2, EffectType = "Crown", Size = VT(15,0,15), Size2 = VT(31,8,31), Transparency = 0, Transparency2 = 1, CFrame = CF(POS) * ANGLES(RAD(MRANDOM(0,360)), RAD(MRANDOM(0,360)), RAD(MRANDOM(0,360))), MoveToPos = nil, RotationX = 0, RotationY = 0, RotationZ = 0, Material = "Neon", Color = C3(0,0,0), SoundID = ECHOBLAST, SoundPitch = 1, SoundVolume = 5})
768
						end
769
						local E = MRANDOM(5,7)
770
						for i = 1, E do
771
							local CFRAME = CF(POS) * ANGLES(RAD(0), RAD((360/E)*i), RAD(0))
772
							BULLET(CFRAME,TIMER - 1)
773
						end
774
						break
775
					else
776
						WACKYEFFECT({Time = MRANDOM(10,40)/2, EffectType = "Skull", Size = (VT(1,1,1)+VT(0.3,0.3,0.3)*SIN(i/4))*6, Size2 = VT(0,0,0), Transparency = 0.5, Transparency2 = 1, CFrame = CFRAME, MoveToPos = nil, RotationX = 0, RotationY = 0, RotationZ = 0, Material = "Neon", Color = C3(0,0,0), SoundID = nil, SoundPitch = nil, SoundVolume = nil})
777
						CFRAME = CFRAME * CF(0,0,-1)
778
					end
779
				end
780
			end))
781
		end
782
	end
783
	BULLET(CF(RootPart.Position,Mouse.Hit.p),3)
784
	for i=0, 1, 0.1 / Animation_Speed do
785
		Swait()
786
		RootJoint.C0 = Clerp(RootJoint.C0,ROOTC0 * CF(0*SIZE, 0*SIZE, 0*SIZE + 0.05*SIZE * COS(SINE / 12)) * ANGLES(RAD(0), RAD(0), RAD(-25)), 1 / Animation_Speed)
787
		Neck.C0 = Clerp(Neck.C0, NECKC0 * CF(0, 0, 0 + ((1*SIZE) - 1)) * ANGLES(RAD(0 - 2.5 * SIN(SINE / 12)), RAD(0), RAD(25)), 1 / Animation_Speed)
788
		RightShoulder.C0 = Clerp(RightShoulder.C0, CF(1.5*SIZE, 0.5*SIZE, 0*SIZE) * ANGLES(RAD(0), RAD(0), RAD(120)) * RIGHTSHOULDERC0, 1 / Animation_Speed)
789
		LeftShoulder.C0 = Clerp(LeftShoulder.C0, CF(-1.5*SIZE, 0.5*SIZE, 0*SIZE) * ANGLES(RAD(0), RAD(0), RAD(-12)) * LEFTSHOULDERC0, 1 / Animation_Speed)
790
		RightHip.C0 = Clerp(RightHip.C0, CF(1*SIZE, -1*SIZE - 0.05*SIZE * COS(SINE / 12), -0.01*SIZE) * ANGLES(RAD(0), RAD(60), RAD(0)) * ANGLES(RAD(-4), RAD(0), RAD(0)), 1 / Animation_Speed)
791
		LeftHip.C0 = Clerp(LeftHip.C0, CF(-1*SIZE, -1*SIZE - 0.05*SIZE * COS(SINE / 12), -0.01*SIZE) * ANGLES(RAD(0), RAD(-90), RAD(0)) * ANGLES(RAD(-8), RAD(0), RAD(0)), 1 / Animation_Speed)
792
	end
793
	ATTACK = false
794
	Rooted = false
795
end
796
function ChainReaction()
797
	local HITFLOOR,HITPOS = Raycast(RootPart.Position, (CF(RootPart.Position, RootPart.Position + VT(0, -1, 0))).lookVector, 3.7*SIZE, Character)
798
	if HITFLOOR then
799
		ATTACK = true
800
		Rooted = true
801
		UNANCHOR = false
802
		local RING,WELD,MESH = MagicRing(RootPart,CF(0,0,0))
803
		WELD:remove()
804
		RING.Anchored = true
805
		RING.CFrame = CF(HITPOS)
806
		local RINGON = true
807
		CreateSound(TURNUP,RING,10,1,false)
808
		coroutine.resume(coroutine.create(function()
809
			coroutine.resume(coroutine.create(function()
810
				for i = 1, 70 do
811
					Swait()
812
					MESH.Scale = MESH.Scale + VT(15,0,15)
813
				end
814
			end))
815
			repeat
816
				Swait()
817
				RING.CFrame = RING.CFrame * ANGLES(RAD(0), RAD(2), RAD(0))
818
			until RINGON == false
819
			for i = 1, 70 do
820
				Swait()
821
				MESH.Scale = MESH.Scale - VT(15,0,15)
822
				RING.CFrame = RING.CFrame * ANGLES(RAD(0), RAD(2), RAD(0))
823
			end
824
			RING:remove()
825
		end))
826
		for i=0, 0.6, 0.1 / Animation_Speed do
827
			Swait()
828
			RootJoint.C0 = Clerp(RootJoint.C0,ROOTC0 * CF(0*SIZE, 0*SIZE, -0.3*SIZE + 0.05*SIZE * COS(SINE / 12)) * ANGLES(RAD(45), RAD(0), RAD(0)), 0.3 / Animation_Speed)
829
			Neck.C0 = Clerp(Neck.C0, NECKC0 * CF(0, 0, 0 + ((1*SIZE) - 1)) * ANGLES(RAD(0 - 2.5 * SIN(SINE / 12)), RAD(0), RAD(0)), 0.3 / Animation_Speed)
830
			RightShoulder.C0 = Clerp(RightShoulder.C0, CF(1.5*SIZE, 0.5*SIZE, 0*SIZE) * ANGLES(RAD(-35), RAD(0), RAD(12)) * RIGHTSHOULDERC0, 0.3 / Animation_Speed)
831
			LeftShoulder.C0 = Clerp(LeftShoulder.C0, CF(-1.5*SIZE, 0.5*SIZE, 0*SIZE) * ANGLES(RAD(-35), RAD(0), RAD(-12)) * LEFTSHOULDERC0, 0.3 / Animation_Speed)
832
			RightHip.C0 = Clerp(RightHip.C0, CF(1*SIZE, -1*SIZE - 0.05*SIZE * COS(SINE / 12), -0.01*SIZE) * ANGLES(RAD(60), RAD(90), RAD(0)) * ANGLES(RAD(-2), RAD(0), RAD(0)), 0.3 / Animation_Speed)
833
			LeftHip.C0 = Clerp(LeftHip.C0, CF(-1*SIZE, -1*SIZE - 0.05*SIZE * COS(SINE / 12), -0.01*SIZE) * ANGLES(RAD(25), RAD(-90), RAD(0)) * ANGLES(RAD(-2), RAD(0), RAD(0)), 0.3 / Animation_Speed)
834
		end
835
		EXPLODE = function(POS)
836
			coroutine.resume(coroutine.create(function()
837
				local CFRAME = CF(POS)
838
				for e = 1, 16 do
839
					local AREA = CF(CFRAME * ANGLES(RAD(0), RAD(MRANDOM(0,360)), RAD(0)) * CF(0,MRANDOM(-25,35),MRANDOM(-75,75)).p)
840
					for i = 1, 3 do
841
						WACKYEFFECT({Time = MRANDOM(30,40), EffectType = "Sphere", Size = VT(5,15,5), Size2 = VT(0,0,0), Transparency = 0.5, Transparency2 = 1, CFrame = AREA, MoveToPos = nil, RotationX = 0, RotationY = 0, RotationZ = 0, Material = "Neon", Color = C3(0,0,0), SoundID = IMPACT, SoundPitch = 1, SoundVolume = 5})
842
					end
843
					wait(0.1)
844
					local DETONATE = ApplyAoE(AREA.p,75)
845
					for i = 1, 5 do
846
						WACKYEFFECT({Time = MRANDOM(10,40), EffectType = "Wave", Size = VT(0,0,0), Size2 = VT(120,1,120), Transparency = 0.3, Transparency2 = 1, CFrame = AREA * ANGLES(RAD(MRANDOM(0,360)), RAD(MRANDOM(0,360)), RAD(MRANDOM(0,360))), MoveToPos = nil, RotationX = 0, RotationY = 0, RotationZ = 0, Material = "Neon", Color = C3(0,0,0), SoundID = nil, SoundPitch = 1, SoundVolume = 5})
847
						WACKYEFFECT({Time = MRANDOM(30,40)*3, EffectType = "Sphere", Size = VT(5,15,5)*3, Size2 = VT(15,20,15)*5, Transparency = 0.5, Transparency2 = 1, CFrame = AREA, MoveToPos = nil, RotationX = 0, RotationY = 0, RotationZ = 0, Material = "Neon", Color = C3(0,0,0), SoundID = ECHOBLAST, SoundPitch = 0.8, SoundVolume = 5})
848
					end
849
					if DETONATE == true then
850
						EXPLODE(AREA.p)
851
					end
852
					wait(0.07)
853
				end
854
			end))
855
		end
856
		coroutine.resume(coroutine.create(function()
857
			local LOOP = 0
858
			local RESPOND = false
859
			for i = 1, 450 do
860
				Swait()
861
				LOOP = LOOP + 1
862
				local REACT = ApplyAoE(RING.Position,25)
863
				if REACT == true then
864
					RESPOND = true
865
					break
866
				else
867
					if LOOP >= 10 then
868
						for i = 1, 3 do
869
							WACKYEFFECT({Time = MRANDOM(10,40), EffectType = "Wave", Size = VT(15,0,15), Size2 = VT(31,1,31), Transparency = 0.9, Transparency2 = 1, CFrame = CF(RING.Position) * ANGLES(RAD(MRANDOM(0,15)), RAD(MRANDOM(0,360)), RAD(MRANDOM(0,15))), MoveToPos = nil, RotationX = 0, RotationY = 0, RotationZ = 0, Material = "Neon", Color = C3(0,0,0), SoundID = nil, SoundPitch = 1, SoundVolume = 5})
870
						end
871
					end
872
				end
873
			end
874
			RINGON = false
875
			if RESPOND == true then
876
				EXPLODE(RING.Position+VT(0,15,0))
877
			end
878
		end))
879
		for i=1, 100 do
880
			Swait()
881
			RootPart.CFrame = RootPart.CFrame * CF(0,((100-i)/100)*2,0.6)
882
			RootJoint.C0 = Clerp(RootJoint.C0,ROOTC0 * CF(0*SIZE, 0*SIZE, 0*SIZE + 0.05*SIZE * COS(SINE / 12)) * ANGLES(RAD(0), RAD(0), RAD(0)), 1 / Animation_Speed)
883
			Neck.C0 = Clerp(Neck.C0, NECKC0 * CF(0, 0, 0 + ((1*SIZE) - 1)) * ANGLES(RAD(45 - 2.5 * SIN(SINE / 12)), RAD(0), RAD(0)), 1 / Animation_Speed)
884
			RightShoulder.C0 = Clerp(RightShoulder.C0, CF(1.5*SIZE, 0.5*SIZE, 0*SIZE) * ANGLES(RAD(35), RAD(0), RAD(12)) * RIGHTSHOULDERC0, 1 / Animation_Speed)
885
			LeftShoulder.C0 = Clerp(LeftShoulder.C0, CF(-1.5*SIZE, 0.5*SIZE, 0*SIZE) * ANGLES(RAD(35), RAD(0), RAD(-12)) * LEFTSHOULDERC0, 1 / Animation_Speed)
886
			RightHip.C0 = Clerp(RightHip.C0, CF(1*SIZE, -1*SIZE - 0.05*SIZE * COS(SINE / 12), -0.01*SIZE) * ANGLES(RAD(25), RAD(90), RAD(0)) * ANGLES(RAD(-8), RAD(0), RAD(0)), 1 / Animation_Speed)
887
			LeftHip.C0 = Clerp(LeftHip.C0, CF(-1*SIZE, -1*SIZE - 0.05*SIZE * COS(SINE / 12), -0.01*SIZE) * ANGLES(RAD(25), RAD(-90), RAD(0)) * ANGLES(RAD(-8), RAD(0), RAD(0)), 1 / Animation_Speed)
888
		end
889
		UNANCHOR = true
890
		ATTACK = false
891
		Rooted = false
892
	end
893
end
894
function BlightRavage()
895
	local HITFLOOR,HITPOS = Raycast(RootPart.Position, (CF(RootPart.Position, RootPart.Position + VT(0, -1, 0))).lookVector, 3.7*SIZE, Character)
896
	if HITFLOOR then
897
		ATTACK = true
898
		Rooted = true
899
		local RING,WELD,MESH = MagicRing(RootPart,CF(0,0,0))
900
		WELD:remove()
901
		RING.Anchored = true
902
		RING.CFrame = CF(HITPOS)
903
		local RINGON = true
904
		CreateSound(TURNUP,Effects,10,0.8,false)
905
		coroutine.resume(coroutine.create(function()
906
			coroutine.resume(coroutine.create(function()
907
				for i = 1, 240 do
908
					Swait()
909
					MESH.Scale = MESH.Scale + VT(45,0,45)
910
				end
911
			end))
912
			repeat
913
				Swait()
914
				RING.CFrame = RING.CFrame * ANGLES(RAD(0), RAD(2), RAD(0))
915
			until RINGON == false
916
			for i = 1, 240 do
917
				Swait()
918
				MESH.Scale = MESH.Scale - VT(45,0,45)
919
				RING.CFrame = RING.CFrame * ANGLES(RAD(0), RAD(2), RAD(0))
920
			end
921
			RING:remove()
922
		end))
923
		for i=0, 4, 0.1 / Animation_Speed do
924
			Swait()
925
			local AREA = RootPart.CFrame * ANGLES(RAD(0), RAD(MRANDOM(0,360)), RAD(0))*CF(0,0,MRANDOM(2,18))
926
			local TIMER = MRANDOM(30,50)/2
927
			WACKYEFFECT({Time = TIMER, EffectType = "Sphere", Size = VT(3,3,3)/1.1, Size2 = VT(0,15,0)/1.1, Transparency = 0, Transparency2 = 0, CFrame = AREA, MoveToPos = AREA.p+VT(0,MRANDOM(35,60),0), RotationX = 0, RotationY = 0, RotationZ = 0, Material = "Neon", Color = C3(1,1,1), SoundID = nil, SoundPitch = 0.8, SoundVolume = 5})
928
			WACKYEFFECT({Time = TIMER, EffectType = "Sphere", Size = VT(3,3,3), Size2 = VT(0,15,0), Transparency = 0.5, Transparency2 = 0.5, CFrame = AREA, MoveToPos = AREA.p+VT(0,MRANDOM(35,60),0), RotationX = 0, RotationY = 0, RotationZ = 0, Material = "Neon", Color = C3(0,0,0), SoundID = nil, SoundPitch = 0.8, SoundVolume = 5})
929
			RootJoint.C0 = Clerp(RootJoint.C0,ROOTC0 * CF(0*SIZE, 0*SIZE, -0.3*SIZE + 0.05*SIZE * COS(SINE / 12)) * ANGLES(RAD(45), RAD(0), RAD(0)), 0.3 / Animation_Speed)
930
			Neck.C0 = Clerp(Neck.C0, NECKC0 * CF(0, 0, 0 + ((1*SIZE) - 1)) * ANGLES(RAD(0 - 2.5 * SIN(SINE / 12)), RAD(0), RAD(0)), 0.3 / Animation_Speed)
931
			RightShoulder.C0 = Clerp(RightShoulder.C0, CF(1.5*SIZE, 0.5*SIZE, 0*SIZE) * ANGLES(RAD(-35), RAD(0), RAD(12)) * RIGHTSHOULDERC0, 0.3 / Animation_Speed)
932
			LeftShoulder.C0 = Clerp(LeftShoulder.C0, CF(-1.5*SIZE, 0.5*SIZE, 0*SIZE) * ANGLES(RAD(-35), RAD(0), RAD(-12)) * LEFTSHOULDERC0, 0.3 / Animation_Speed)
933
			RightHip.C0 = Clerp(RightHip.C0, CF(1*SIZE, -1*SIZE - 0.05*SIZE * COS(SINE / 12), -0.01*SIZE) * ANGLES(RAD(60), RAD(90), RAD(0)) * ANGLES(RAD(-2), RAD(0), RAD(0)), 0.3 / Animation_Speed)
934
			LeftHip.C0 = Clerp(LeftHip.C0, CF(-1*SIZE, -1*SIZE - 0.05*SIZE * COS(SINE / 12), -0.01*SIZE) * ANGLES(RAD(25), RAD(-90), RAD(0)) * ANGLES(RAD(-2), RAD(0), RAD(0)), 0.3 / Animation_Speed)
935
		end
936
		CreateSound(ECHOBLAST,Effects,10,0.2,false)
937
		CreateSound(IMPACT,Effects,10,0.2,false)
938
		coroutine.resume(coroutine.create(function()
939
			local BOOM = CreatePart(3, Effects, "Neon", 0, 0.2, BRICKC("Really black"), "Effect", VT(0,0,0), true)
940
			MakeForm(BOOM,"Ball")
941
			local BOOM2 = CreatePart(3, Effects, "Neon", 0, 0, BRICKC("Pearl"), "Effect", VT(0,0,0), true)
942
			MakeForm(BOOM2,"Ball")
943
			for i = 1, 250 do
944
				Swait()
945
				BOOM.Size = BOOM.Size + VT(0.7,0.7,0.7)*2
946
				BOOM2.Size = BOOM.Size - VT(0.3,0.3,0.3)
947
				ApplyAoE(BOOM.Position,BOOM.Size.X/2)
948
				local AREA = BOOM.CFrame * ANGLES(RAD(0), RAD(MRANDOM(0,360)), RAD(0))*CF(0,0,BOOM.Size.X/1.7)
949
				local TIMER = MRANDOM(30,50)
950
				WACKYEFFECT({Time = TIMER, EffectType = "Sphere", Size = VT(3,3,3)/1.1, Size2 = VT(0,15,0)/1.1, Transparency = 0, Transparency2 = 0, CFrame = AREA, MoveToPos = AREA.p+VT(0,MRANDOM(35,60),0), RotationX = 0, RotationY = 0, RotationZ = 0, Material = "Neon", Color = C3(1,1,1), SoundID = nil, SoundPitch = 0.8, SoundVolume = 5})
951
				WACKYEFFECT({Time = TIMER, EffectType = "Sphere", Size = VT(3,3,3), Size2 = VT(0,15,0), Transparency = 0.5, Transparency2 = 0.5, CFrame = AREA, MoveToPos = AREA.p+VT(0,MRANDOM(35,60),0), RotationX = 0, RotationY = 0, RotationZ = 0, Material = "Neon", Color = C3(0,0,0), SoundID = nil, SoundPitch = 0.8, SoundVolume = 5})
952
			end
953
			RINGON = false
954
			for i = 1, 20 do
955
				Swait()
956
				BOOM.Transparency = BOOM.Transparency + 0.8/20
957
				BOOM2.Transparency = BOOM2.Transparency + 1/20
958
			end
959
			BOOM:remove()
960
			BOOM2:remove()
961
		end))
962
		repeat
963
			Swait()
964
			RootJoint.C0 = Clerp(RootJoint.C0,ROOTC0 * CF(0*SIZE, 0*SIZE, 0*SIZE + 0.05*SIZE * COS(SINE / 12)) * ANGLES(RAD(-15), RAD(0), RAD(0)), 1 / Animation_Speed)
965
			Neck.C0 = Clerp(Neck.C0, NECKC0 * CF(0, 0, 0 + ((1*SIZE) - 1)) * ANGLES(RAD(0 - 2.5 * SIN(SINE / 12)), RAD(0), RAD(0)), 1 / Animation_Speed)
966
			RightShoulder.C0 = Clerp(RightShoulder.C0, CF(1.5*SIZE, 0.5*SIZE, 0*SIZE) * ANGLES(RAD(140), RAD(0), RAD(12)) * RIGHTSHOULDERC0, 1 / Animation_Speed)
967
			LeftShoulder.C0 = Clerp(LeftShoulder.C0, CF(-1.5*SIZE, 0.5*SIZE, 0*SIZE) * ANGLES(RAD(140), RAD(0), RAD(-12)) * LEFTSHOULDERC0, 1 / Animation_Speed)
968
			RightHip.C0 = Clerp(RightHip.C0, CF(1*SIZE, -1*SIZE - 0.05*SIZE * COS(SINE / 12), -0.01*SIZE) * ANGLES(RAD(-15), RAD(60), RAD(0)) * ANGLES(RAD(-3), RAD(0), RAD(0)), 1 / Animation_Speed)
969
			LeftHip.C0 = Clerp(LeftHip.C0, CF(-1*SIZE, -1*SIZE - 0.05*SIZE * COS(SINE / 12), -0.01*SIZE) * ANGLES(RAD(-15), RAD(-60), RAD(0)) * ANGLES(RAD(-3), RAD(0), RAD(0)), 1 / Animation_Speed)
970
		until RINGON == false
971
		ATTACK = false
972
		Rooted = false
973
	end
974
end
975
976
--//=================================\\
977
--||	   COLOSSUS ATTACKS
978
--\\=================================//
979
980
function SoundTremor()
981
	local HITFLOOR,HITPOS = Raycast(RootPart.Position, (CF(RootPart.Position, RootPart.Position + VT(0, -1, 0))).lookVector, 3.7*SIZE, Character)
982
	if HITFLOOR then
983
		ATTACK = true
984
		Rooted = true
985
		for i=0, 1, 0.1 / Animation_Speed do
986
			Swait()
987
			RootJoint.C0 = Clerp(RootJoint.C0,ROOTC0 * CF(0*SIZE, 0*SIZE, 0*SIZE) * ANGLES(RAD(0), RAD(0), RAD(0)), 1 / Animation_Speed)
988
			Neck.C0 = Clerp(Neck.C0, NECKC0 * CF(0, 0, 0 + ((1*SIZE) - 1)) * ANGLES(RAD(15), RAD(0), RAD(0)), 1 / Animation_Speed)
989
			RightShoulder.C0 = Clerp(RightShoulder.C0, CF(1.5*SIZE, 0.5*SIZE, 0*SIZE) * ANGLES(RAD(40), RAD(0), RAD(12)) * RIGHTSHOULDERC0, 1 / Animation_Speed)
990
			LeftShoulder.C0 = Clerp(LeftShoulder.C0, CF(-1.5*SIZE, 0.5*SIZE, 0*SIZE) * ANGLES(RAD(40), RAD(0), RAD(-12)) * LEFTSHOULDERC0, 1 / Animation_Speed)
991
			RightHip.C0 = Clerp(RightHip.C0, CF(1*SIZE, -0.5*SIZE, -0.5*SIZE) * ANGLES(RAD(0), RAD(90), RAD(0)) * ANGLES(RAD(-8), RAD(0), RAD(0)), 1 / Animation_Speed)
992
			LeftHip.C0 = Clerp(LeftHip.C0, CF(-1*SIZE, -1*SIZE, -0.01*SIZE) * ANGLES(RAD(0), RAD(-90), RAD(0)) * ANGLES(RAD(-8), RAD(0), RAD(0)), 1 / Animation_Speed)
993
		end
994
		local RING,WELD,MESH = MagicRing(RootPart,CF(0,0,0))
995
		WELD:remove()
996
		RING.Anchored = true
997
		RING.CFrame = CF(HITPOS)
998
		local RING2,WELD,MESH2 = MagicRing(RootPart,CF(0,0,0))
999
		WELD:remove()
1000
		RING2.Anchored = true
1001
		RING2.CFrame = CF(HITPOS)
1002
		local RINGON = true
1003
		CreateSound(TURNUP,Effects,4,0.8,false)
1004
		coroutine.resume(coroutine.create(function()
1005
			coroutine.resume(coroutine.create(function()
1006
				for i = 1, 24 do
1007
					Swait()
1008
					MESH.Scale = MESH.Scale + VT(125,0,125)
1009
					MESH2.Scale = MESH.Scale/2
1010
				end
1011
			end))
1012
			repeat
1013
				Swait()
1014
				RING.CFrame = RING.CFrame * ANGLES(RAD(0), RAD(2), RAD(0))
1015
				RING2.CFrame = RING2.CFrame * ANGLES(RAD(0), RAD(-2), RAD(0))
1016
			until RINGON == false
1017
			for i = 1, 24 do
1018
				Swait()
1019
				MESH.Scale = MESH.Scale - VT(125,0,125)
1020
				RING.CFrame = RING.CFrame * ANGLES(RAD(0), RAD(2), RAD(0))
1021
				MESH2.Scale = MESH.Scale/2
1022
				RING2.CFrame = RING2.CFrame * ANGLES(RAD(0), RAD(-2), RAD(0))
1023
			end
1024
			RING:remove()
1025
			RING2:remove()
1026
		end))
1027
		local TAUNT = CreateSound(ROAR,Effects,10,1,false)
1028
		for i=0, 4, 0.1 / Animation_Speed do
1029
			Swait()
1030
			TAUNT.Parent = Effects
1031
			local HITFLOOR,HITPOS = Raycast(RootPart.Position, (CF(RootPart.Position, RootPart.Position + VT(0, -1, 0))).lookVector, 3.7*SIZE, Character)
1032
			if HITFLOOR and MRANDOM(1,3) == 1 then
1033
				local AREA = CF(HITPOS) * ANGLES(RAD(0), RAD(MRANDOM(0,360)), RAD(0))*CF(0,0,MRANDOM(3,50))
1034
				local BOULDER = CreatePart(3, Effects, "Neon", 0, 0, "Pearl", "Rocc", VT(10,10,10), true)
1035
				BOULDER.Color = C3(0,0,0)
1036
				BOULDER.CFrame = AREA
1037
				MakeForm(BOULDER,"Ball")
1038
				coroutine.resume(coroutine.create(function()
1039
					FireArc(BOULDER,AREA*CF(0,0,MRANDOM(15,160)).p,60,10,false)
1040
					local POS = BOULDER.Position
1041
					for i = 1, 3 do
1042
						WACKYEFFECT({Time = MRANDOM(10,40), EffectType = "Crown", Size = VT(15,0,15), Size2 = VT(31,1,31)*2, Transparency = 0.4, Transparency2 = 1, CFrame = CF(POS) * ANGLES(RAD(MRANDOM(0,15)), RAD(MRANDOM(0,360)), RAD(MRANDOM(0,15))), MoveToPos = nil, RotationX = 0, RotationY = 0, RotationZ = 0, Material = "Neon", Color = C3(0,0,0), SoundID = nil, SoundPitch = 1, SoundVolume = 5})
1043
					end
1044
					WACKYEFFECT({Time = MRANDOM(10,40), EffectType = "Sphere", Size = VT(15,15,15), Size2 = VT(51,51,51), Transparency = 0.4, Transparency2 = 1, CFrame = CF(POS), MoveToPos = nil, RotationX = 0, RotationY = 0, RotationZ = 0, Material = "Neon", Color = C3(0,0,0), SoundID = IMPACT, SoundPitch = 1, SoundVolume = 10})
1045
					ApplyAoE(POS,35)
1046
				end))
1047
			end
1048
			RootJoint.C0 = Clerp(RootJoint.C0,ROOTC0 * CF(0*SIZE, -0.2*SIZE, -0.1*SIZE) * ANGLES(RAD(35), RAD(0), RAD(0)), 1 / Animation_Speed)
1049
			Neck.C0 = Clerp(Neck.C0, NECKC0 * CF(0, 0, 0 + ((1*SIZE) - 1)) * ANGLES(RAD(-25+MRANDOM(-(TAUNT.PlaybackLoudness/25),(TAUNT.PlaybackLoudness/25))), RAD(MRANDOM(-(TAUNT.PlaybackLoudness/15),(TAUNT.PlaybackLoudness/15))), RAD(MRANDOM(-(TAUNT.PlaybackLoudness/25),(TAUNT.PlaybackLoudness/25)))), 1 / Animation_Speed)
1050
			RightShoulder.C0 = Clerp(RightShoulder.C0, CF(1.5*SIZE, 0.5*SIZE, 0.1*SIZE) * ANGLES(RAD(-55), RAD(0), RAD(42)) * ANGLES(RAD(0), RAD(-70), RAD(0)) * RIGHTSHOULDERC0, 1 / Animation_Speed)
1051
			LeftShoulder.C0 = Clerp(LeftShoulder.C0, CF(-1.5*SIZE, 0.5*SIZE, 0.1*SIZE) * ANGLES(RAD(-55), RAD(0), RAD(-42)) * ANGLES(RAD(0), RAD(70), RAD(0)) * LEFTSHOULDERC0, 1 / Animation_Speed)
1052
			RightHip.C0 = Clerp(RightHip.C0, CF(1*SIZE, -1*SIZE, -0.01*SIZE) * ANGLES(RAD(25), RAD(75), RAD(0)) * ANGLES(RAD(-8), RAD(0), RAD(0)), 1 / Animation_Speed)
1053
			LeftHip.C0 = Clerp(LeftHip.C0, CF(-1*SIZE, -1*SIZE, -0.01*SIZE) * ANGLES(RAD(45), RAD(-75), RAD(0)) * ANGLES(RAD(-8), RAD(0), RAD(0)), 1 / Animation_Speed)
1054
		end
1055
		coroutine.resume(coroutine.create(function()
1056
			wait(1)
1057
			RINGON = false
1058
		end))
1059
		ATTACK = false
1060
		Rooted = false
1061
	end
1062
end
1063
function BlightedSolarFlares()
1064
	local HITFLOOR,HITPOS = Raycast(RootPart.Position, (CF(RootPart.Position, RootPart.Position + VT(0, -1, 0))).lookVector, 4*SIZE, Character)
1065
	if HITFLOOR then
1066
		ATTACK = true
1067
		Rooted = true
1068
		UNANCHOR = false
1069
		for i=0, 0.6, 0.1 / Animation_Speed do
1070
			Swait()
1071
			RootJoint.C0 = Clerp(RootJoint.C0,ROOTC0 * CF(0*SIZE, 0*SIZE, -0.3*SIZE + 0.05*SIZE * COS(SINE / 12)) * ANGLES(RAD(45), RAD(0), RAD(0)), 0.3 / Animation_Speed)
1072
			Neck.C0 = Clerp(Neck.C0, NECKC0 * CF(0, 0, 0 + ((1*SIZE) - 1)) * ANGLES(RAD(0 - 2.5 * SIN(SINE / 12)), RAD(0), RAD(0)), 0.3 / Animation_Speed)
1073
			RightShoulder.C0 = Clerp(RightShoulder.C0, CF(1.5*SIZE, 0.5*SIZE, 0*SIZE) * ANGLES(RAD(-35), RAD(0), RAD(12)) * RIGHTSHOULDERC0, 0.3 / Animation_Speed)
1074
			LeftShoulder.C0 = Clerp(LeftShoulder.C0, CF(-1.5*SIZE, 0.5*SIZE, 0*SIZE) * ANGLES(RAD(-35), RAD(0), RAD(-12)) * LEFTSHOULDERC0, 0.3 / Animation_Speed)
1075
			RightHip.C0 = Clerp(RightHip.C0, CF(1*SIZE, -1*SIZE - 0.05*SIZE * COS(SINE / 12), -0.01*SIZE) * ANGLES(RAD(60), RAD(90), RAD(0)) * ANGLES(RAD(-2), RAD(0), RAD(0)), 0.3 / Animation_Speed)
1076
			LeftHip.C0 = Clerp(LeftHip.C0, CF(-1*SIZE, -1*SIZE - 0.05*SIZE * COS(SINE / 12), -0.01*SIZE) * ANGLES(RAD(25), RAD(-90), RAD(0)) * ANGLES(RAD(-2), RAD(0), RAD(0)), 0.3 / Animation_Speed)
1077
		end
1078
		for i=1, 120 do
1079
			Swait()
1080
			RootPart.CFrame = RootPart.CFrame * CF(0,((100-i)/100)*3,0.7)
1081
			RootJoint.C0 = Clerp(RootJoint.C0,ROOTC0 * CF(0*SIZE, 0*SIZE, 0*SIZE + 0.05*SIZE * COS(SINE / 12)) * ANGLES(RAD(0), RAD(0), RAD(0)), 1 / Animation_Speed)
1082
			Neck.C0 = Clerp(Neck.C0, NECKC0 * CF(0, 0, 0 + ((1*SIZE) - 1)) * ANGLES(RAD(45 - 2.5 * SIN(SINE / 12)), RAD(0), RAD(0)), 1 / Animation_Speed)
1083
			RightShoulder.C0 = Clerp(RightShoulder.C0, CF(1.5*SIZE, 0.5*SIZE, 0*SIZE) * ANGLES(RAD(35), RAD(0), RAD(12)) * RIGHTSHOULDERC0, 1 / Animation_Speed)
1084
			LeftShoulder.C0 = Clerp(LeftShoulder.C0, CF(-1.5*SIZE, 0.5*SIZE, 0*SIZE) * ANGLES(RAD(35), RAD(0), RAD(-12)) * LEFTSHOULDERC0, 1 / Animation_Speed)
1085
			RightHip.C0 = Clerp(RightHip.C0, CF(1*SIZE, -1*SIZE, -0.01*SIZE) * ANGLES(RAD(25), RAD(90), RAD(0)) * ANGLES(RAD(-8), RAD(0), RAD(0)), 1 / Animation_Speed)
1086
			LeftHip.C0 = Clerp(LeftHip.C0, CF(-1*SIZE, -0.5*SIZE, -0.01*SIZE) * ANGLES(RAD(25), RAD(-90), RAD(0)) * ANGLES(RAD(-8), RAD(0), RAD(0)), 1 / Animation_Speed)
1087
		end
1088
		local A = false
1089
		coroutine.resume(coroutine.create(function()
1090
			repeat
1091
				Swait()
1092
				RootJoint.C0 = Clerp(RootJoint.C0,ROOTC0 * CF(0*SIZE, 0*SIZE, 0*SIZE + 0.05*SIZE * COS(SINE / 12)) * ANGLES(RAD(0), RAD(0), RAD(0)), 1 / Animation_Speed)
1093
				Neck.C0 = Clerp(Neck.C0, NECKC0 * CF(0, 0, 0 + ((1*SIZE) - 1)) * ANGLES(RAD(-45), RAD(0), RAD(0)), 1 / Animation_Speed)
1094
				RightShoulder.C0 = Clerp(RightShoulder.C0, CF(1.5*SIZE, 0.5*SIZE, 0*SIZE) * ANGLES(RAD(150), RAD(0), RAD(-12)) * RIGHTSHOULDERC0, 1 / Animation_Speed)
1095
				LeftShoulder.C0 = Clerp(LeftShoulder.C0, CF(-1.5*SIZE, 0.5*SIZE, 0*SIZE) * ANGLES(RAD(150), RAD(0), RAD(12)) * LEFTSHOULDERC0, 1 / Animation_Speed)
1096
				RightHip.C0 = Clerp(RightHip.C0, CF(1*SIZE, -1*SIZE, -0.01*SIZE) * ANGLES(RAD(25), RAD(90), RAD(0)) * ANGLES(RAD(-8), RAD(0), RAD(0)), 1 / Animation_Speed)
1097
				LeftHip.C0 = Clerp(LeftHip.C0, CF(-1*SIZE, -0.5*SIZE, -0.01*SIZE) * ANGLES(RAD(25), RAD(-90), RAD(0)) * ANGLES(RAD(-8), RAD(0), RAD(0)), 1 / Animation_Speed)
1098
			until A == true
1099
			for i=0, 0.6, 0.1 / Animation_Speed do
1100
				Swait()
1101
				RootJoint.C0 = Clerp(RootJoint.C0,ROOTC0 * CF(0*SIZE, 0*SIZE, 0*SIZE + 0.05*SIZE * COS(SINE / 12)) * ANGLES(RAD(25), RAD(0), RAD(0)), 1 / Animation_Speed)
1102
				Neck.C0 = Clerp(Neck.C0, NECKC0 * CF(0, 0, 0 + ((1*SIZE) - 1)) * ANGLES(RAD(15), RAD(0), RAD(0)), 1 / Animation_Speed)
1103
				RightShoulder.C0 = Clerp(RightShoulder.C0, CF(1.5*SIZE, 0.5*SIZE, 0*SIZE) * ANGLES(RAD(45), RAD(0), RAD(-12)) * RIGHTSHOULDERC0, 1 / Animation_Speed)
1104
				LeftShoulder.C0 = Clerp(LeftShoulder.C0, CF(-1.5*SIZE, 0.5*SIZE, 0*SIZE) * ANGLES(RAD(45), RAD(0), RAD(12)) * LEFTSHOULDERC0, 1 / Animation_Speed)
1105
				RightHip.C0 = Clerp(RightHip.C0, CF(1*SIZE, -1*SIZE, -0.01*SIZE) * ANGLES(RAD(15), RAD(90), RAD(0)) * ANGLES(RAD(-8), RAD(0), RAD(0)), 1 / Animation_Speed)
1106
				LeftHip.C0 = Clerp(LeftHip.C0, CF(-1*SIZE, -0.5*SIZE, -0.01*SIZE) * ANGLES(RAD(15), RAD(-90), RAD(0)) * ANGLES(RAD(-8), RAD(0), RAD(0)), 1 / Animation_Speed)
1107
			end
1108
			UNANCHOR = true
1109
			ATTACK = false
1110
			Rooted = false
1111
		end))
1112
		local RING,WELD,MESH = MagicRing(RootPart,CF(0,0,0))
1113
		WELD:remove()
1114
		RING.Anchored = true
1115
		RING.CFrame = CF(RootPart.Position+VT(0,15,0))
1116
		local RINGON = true
1117
		CreateSound(BIGBUILDUP,Effects,10,0.8,false)
1118
		coroutine.resume(coroutine.create(function()
1119
			repeat
1120
				Swait()
1121
				RING.CFrame = RING.CFrame * ANGLES(RAD(0), RAD(2), RAD(0))
1122
			until RINGON == false
1123
			for i = 1, 140 do
1124
				Swait()
1125
				MESH.Scale = MESH.Scale - VT(45,0,45)
1126
				RING.CFrame = RING.CFrame * ANGLES(RAD(0), RAD(2), RAD(0))
1127
			end
1128
			RING:remove()
1129
		end))
1130
		for i = 1, 140 do
1131
			Swait()
1132
			MESH.Scale = MESH.Scale + VT(45,0,45)
1133
		end
1134
		wait(0.1)
1135
		A = true
1136
		for i = 1, 16 do
1137
			Swait(4)
1138
			local BULLET = CreatePart(3, Effects, "Neon", 0, 0, "Pearl", "Rocc", VT(7,7,10), true)
1139
			local POS = CF(RING.Position)*ANGLES(RAD(0),RAD(MRANDOM(0,360)),RAD(0))*CF(0,0,MRANDOM(2,45))
1140
			BULLET.CFrame = CF(POS.p,Mouse.Hit.p)
1141
			BULLET.Color = C3(0,0,0)
1142
			MakeForm(BULLET,"Ball")
1143
			coroutine.resume(coroutine.create(function()
1144
				for i =1, 200 do
1145
					Swait()
1146
					local HIT,POS,NORMAL = Raycast(BULLET.Position,BULLET.CFrame.lookVector,5,Character)
1147
					if HIT then
1148
						for i = 1, 3 do
1149
							WACKYEFFECT({Time = MRANDOM(10,40), EffectType = "Crown", Size = VT(15,0,15), Size2 = VT(31,1,31)*7, Transparency = 0.4, Transparency2 = 1, CFrame = CF(POS) * ANGLES(RAD(MRANDOM(0,15)), RAD(MRANDOM(0,360)), RAD(MRANDOM(0,15))), MoveToPos = nil, RotationX = 0, RotationY = 0, RotationZ = 0, Material = "Neon", Color = C3(0,0,0), SoundID = nil, SoundPitch = 1, SoundVolume = 5})
1150
						end
1151
						WACKYEFFECT({Time = MRANDOM(10,40), EffectType = "Sphere", Size = VT(15,15,15), Size2 = VT(60,150,60)/1.6, Transparency = 0.4, Transparency2 = 1, CFrame = CF(POS), MoveToPos = nil, RotationX = 0, RotationY = 0, RotationZ = 0, Material = "Neon", Color = C3(1,1,1), SoundID = ECHOBLAST, SoundPitch = 1, SoundVolume = 10})
1152
						WACKYEFFECT({Time = MRANDOM(10,40), EffectType = "Sphere", Size = VT(15,15,15), Size2 = VT(60,150,60), Transparency = 0.4, Transparency2 = 1, CFrame = CF(POS), MoveToPos = nil, RotationX = 0, RotationY = 0, RotationZ = 0, Material = "Neon", Color = C3(0,0,0), SoundID = IMPACT, SoundPitch = 1, SoundVolume = 10})
1153
						ApplyAoE(POS,65)
1154
						break
1155
					else
1156
						BULLET.CFrame = Clerp(BULLET.CFrame,CF(BULLET.Position,Mouse.Hit.p),0.001) * CF(0,0,-4)
1157
					end
1158
				end
1159
				BULLET:remove()
1160
			end))
1161
		end
1162
		RINGON = false
1163
	end
1164
end
1165
function AlchemicChaos()
1166
	local HITFLOOR,HITPOS = Raycast(RootPart.Position, (CF(RootPart.Position, RootPart.Position + VT(0, -1, 0))).lookVector, 3.7*SIZE, Character)
1167
	if HITFLOOR then
1168
		ATTACK = true
1169
		Rooted = true
1170
		local GYRO = IT("BodyGyro",RootPart)
1171
		GYRO.D = 20
1172
		GYRO.P = 4000
1173
		GYRO.MaxTorque = VT(0,40000,0)
1174
		coroutine.resume(coroutine.create(function()
1175
			repeat
1176
				GYRO.CFrame = CF(RootPart.Position,Mouse.Hit.p)
1177
				Swait()
1178
			until ATTACK == false
1179
			GYRO:remove()
1180
		end))
1181
		CreateSound(ALCHEMY,Effects,5,1,false)
1182
		for i=0, 1, 0.1 / Animation_Speed do
1183
			Swait()
1184
			RootJoint.C0 = Clerp(RootJoint.C0,ROOTC0 * CF(0*SIZE, 0*SIZE, 0*SIZE) * ANGLES(RAD(0), RAD(0), RAD(0)), 1 / Animation_Speed)
1185
			Neck.C0 = Clerp(Neck.C0, NECKC0 * CF(0, 0, 0 + ((1*SIZE) - 1)) * ANGLES(RAD(0), RAD(0), RAD(0)), 1 / Animation_Speed)
1186
			RightShoulder.C0 = Clerp(RightShoulder.C0, CF(1.5*SIZE, 0.5*SIZE, 0*SIZE) * ANGLES(RAD(-25), RAD(0), RAD(70)) * RIGHTSHOULDERC0, 1 / Animation_Speed)
1187
			LeftShoulder.C0 = Clerp(LeftShoulder.C0, CF(-1.5*SIZE, 0.5*SIZE, 0*SIZE) * ANGLES(RAD(-25), RAD(0), RAD(-70)) * LEFTSHOULDERC0, 1 / Animation_Speed)
1188
			RightHip.C0 = Clerp(RightHip.C0, CF(1*SIZE, -1*SIZE, -0.01*SIZE) * ANGLES(RAD(0), RAD(80), RAD(0)) * ANGLES(RAD(-8), RAD(0), RAD(0)), 1 / Animation_Speed)
1189
			LeftHip.C0 = Clerp(LeftHip.C0, CF(-1*SIZE, -1*SIZE, -0.01*SIZE) * ANGLES(RAD(0), RAD(-80), RAD(0)) * ANGLES(RAD(-8), RAD(0), RAD(0)), 1 / Animation_Speed)
1190
		end
1191
		for i=0, 0.3, 0.1 / Animation_Speed do
1192
			Swait()
1193
			RootJoint.C0 = Clerp(RootJoint.C0,ROOTC0 * CF(0*SIZE, -0.6*SIZE, -0.8*SIZE) * ANGLES(RAD(75), RAD(0), RAD(0)), 2 / Animation_Speed)
1194
			Neck.C0 = Clerp(Neck.C0, NECKC0 * CF(0, 0, 0 + ((1*SIZE) - 1)) * ANGLES(RAD(0), RAD(0), RAD(0)), 2 / Animation_Speed)
1195
			RightShoulder.C0 = Clerp(RightShoulder.C0, CF(1.35*SIZE, 0.5*SIZE, -0.8*SIZE) * ANGLES(RAD(90), RAD(0), RAD(-12)) * RIGHTSHOULDERC0, 2 / Animation_Speed)
1196
			LeftShoulder.C0 = Clerp(LeftShoulder.C0, CF(-1.35*SIZE, 0.5*SIZE, -0.8*SIZE) * ANGLES(RAD(90), RAD(0), RAD(12)) * LEFTSHOULDERC0, 2 / Animation_Speed)
1197
			RightHip.C0 = Clerp(RightHip.C0, CF(1*SIZE, -1*SIZE, -0.01*SIZE) * ANGLES(RAD(80), RAD(90), RAD(0)) * ANGLES(RAD(-2), RAD(0), RAD(0)), 2 / Animation_Speed)
1198
			LeftHip.C0 = Clerp(LeftHip.C0, CF(-1*SIZE, -1*SIZE, -0.01*SIZE) * ANGLES(RAD(60), RAD(-90), RAD(0)) * ANGLES(RAD(-2), RAD(0), RAD(0)), 2 / Animation_Speed)
1199
		end
1200
		coroutine.resume(coroutine.create(function()
1201
			local CFRAME = RootPart.CFrame
1202
			for i = 1, 40 do
1203
				Swait()
1204
				local POS = CFRAME*CF(MRANDOM(-25,25),0,-i*22)
1205
				local HITFLOOR,HITPOS = Raycast(POS.p+VT(0,1,0), (CF(RootPart.Position, RootPart.Position + VT(0, -1, 0))).lookVector, 3.7*SIZE, Character)
1206
				if HITFLOOR then
1207
					coroutine.resume(coroutine.create(function()
1208
						local RING,WELD,MESH = MagicRing(RootPart,CF(0,0,0))
1209
						WELD:remove()
1210
						RING.Anchored = true
1211
						RING.CFrame = CF(HITPOS)
1212
						local RINGON = true
1213
						coroutine.resume(coroutine.create(function()
1214
							repeat
1215
								Swait()
1216
								RING.CFrame = RING.CFrame * ANGLES(RAD(0), RAD(2), RAD(0))
1217
							until RINGON == false
1218
							for i = 1, 30 do
1219
								Swait()
1220
								MESH.Scale = MESH.Scale - VT(65,0,65)
1221
								RING.CFrame = RING.CFrame * ANGLES(RAD(0), RAD(2), RAD(0))
1222
							end
1223
							RING:remove()
1224
						end))
1225
						for i = 1, 30 do
1226
							Swait()
1227
							MESH.Scale = MESH.Scale + VT(65,0,65)
1228
						end
1229
						local CFRAME = CF(HITPOS) * ANGLES(RAD(0), RAD(MRANDOM(0,360)), RAD(0)) * ANGLES(RAD(MRANDOM(-15,15)), RAD(0), RAD(0))
1230
						ApplyAoE(HITPOS,25)
1231
						local TIMER = MRANDOM(10,40)
1232
						WACKYEFFECT({Time = TIMER, EffectType = "Sphere", Size = VT(24,34,24), Size2 = VT(0,149,0), Transparency = 0.5, Transparency2 = 0.5, CFrame = CFRAME, MoveToPos = nil, RotationX = 0, RotationY = 0, RotationZ = 0, Material = "Neon", Color = C3(1,1,1), SoundID = IMPACT, SoundPitch = 1, SoundVolume = 10})
1233
						WACKYEFFECT({Time = TIMER, EffectType = "Sphere", Size = VT(25,35,25), Size2 = VT(0,150,0), Transparency = 0.5, Transparency2 = 0.5, CFrame = CFRAME, MoveToPos = nil, RotationX = 0, RotationY = 0, RotationZ = 0, Material = "Neon", Color = C3(0,0,0), SoundID = IMPACT, SoundPitch = 1, SoundVolume = 10})
1234
						wait(1)
1235
						RINGON = false
1236
					end))
1237
				end
1238
			end
1239
		end))
1240
		for i=0, 1, 0.1 / Animation_Speed do
1241
			Swait()
1242
			RootJoint.C0 = Clerp(RootJoint.C0,ROOTC0 * CF(0*SIZE, -0.6*SIZE, -0.8*SIZE) * ANGLES(RAD(75), RAD(0), RAD(0)), 2 / Animation_Speed)
1243
			Neck.C0 = Clerp(Neck.C0, NECKC0 * CF(0, 0, 0 + ((1*SIZE) - 1)) * ANGLES(RAD(0), RAD(0), RAD(0)), 2 / Animation_Speed)
1244
			RightShoulder.C0 = Clerp(RightShoulder.C0, CF(1.35*SIZE, 0.5*SIZE, -0.8*SIZE) * ANGLES(RAD(90), RAD(0), RAD(-12)) * RIGHTSHOULDERC0, 2 / Animation_Speed)
1245
			LeftShoulder.C0 = Clerp(LeftShoulder.C0, CF(-1.35*SIZE, 0.5*SIZE, -0.8*SIZE) * ANGLES(RAD(90), RAD(0), RAD(12)) * LEFTSHOULDERC0, 2 / Animation_Speed)
1246
			RightHip.C0 = Clerp(RightHip.C0, CF(1*SIZE, -1*SIZE, -0.01*SIZE) * ANGLES(RAD(80), RAD(90), RAD(0)) * ANGLES(RAD(-2), RAD(0), RAD(0)), 2 / Animation_Speed)
1247
			LeftHip.C0 = Clerp(LeftHip.C0, CF(-1*SIZE, -1*SIZE, -0.01*SIZE) * ANGLES(RAD(60), RAD(-90), RAD(0)) * ANGLES(RAD(-2), RAD(0), RAD(0)), 2 / Animation_Speed)
1248
		end
1249
		ATTACK = false
1250
		Rooted = false
1251
	end
1252
end
1253
1254
--//=================================\\
1255
--||	     TWINS ATTACKS
1256
--\\=================================//
1257
1258
function DoubleShades()
1259
	ATTACK = true
1260
	Rooted = false
1261
	for i=0, 1, 0.1 / Animation_Speed do
1262
		Swait()
1263
		for E = 1, #SHADES do
1264
			local SHADE = SHADES[E]
1265
			if E == 1 and SHADE[1].HumanoidRootPart then
1266
				SHADE[1].HumanoidRootPart.CFrame = Clerp(SHADE[1].HumanoidRootPart.CFrame,RootPart.CFrame*CF(SHADEDIST,0,0),0.2)
1267
				SHADE[2].C0 = Clerp(SHADE[2].C0, ROOTC0 * CF(0*SIZE, 0*SIZE, 0.2 + 0.1*SIZE * SIN(SINE / 12)) * ANGLES(RAD(0), RAD(0), RAD(25)), 1 / Animation_Speed)
1268
				SHADE[3].C0 = Clerp(SHADE[3].C0, NECKC0 * CF(0, 0, 0 + ((1*SIZE) - 1)) * ANGLES(RAD(0 - 2.5 * SIN(SINE / 12)), RAD(0), RAD(-25)), 1 / Animation_Speed)
1269
				SHADE[4].C0 = Clerp(SHADE[4].C0, CF(1.5*SIZE, 0.5*SIZE, 0*SIZE) * ANGLES(RAD(30 - 7 * SIN(SINE / 6)), RAD(0), RAD(42 - 7 * COS(SINE / 12))) * ANGLES(RAD(0), RAD(60), RAD(0)) * RIGHTSHOULDERC0, 1 / Animation_Speed)
1270
				SHADE[5].C0 = Clerp(SHADE[5].C0, CF(-1.5*SIZE, 0.5*SIZE, 0*SIZE) * ANGLES(RAD(30 - 7 * SIN(SINE / 6)), RAD(0), RAD(-42 + 7 * COS(SINE / 12))) * ANGLES(RAD(0), RAD(-60), RAD(0)) * LEFTSHOULDERC0, 1 / Animation_Speed)
1271
				SHADE[6].C0 = Clerp(SHADE[6].C0, CF(1*SIZE, -1*SIZE - 0.05*SIZE * COS(SINE / 12), -0.01*SIZE) * ANGLES(RAD(-15), RAD(60), RAD(0)) * ANGLES(RAD(-8), RAD(0), RAD(0)), 1 / Animation_Speed)
1272
				SHADE[7].C0 = Clerp(SHADE[7].C0, CF(-1*SIZE, -1*SIZE - 0.05*SIZE * COS(SINE / 12), -0.01*SIZE) * ANGLES(RAD(-15), RAD(-80), RAD(0)) * ANGLES(RAD(-8), RAD(0), RAD(0)), 1 / Animation_Speed)
1273
			elseif E == 2 and SHADE[1].HumanoidRootPart then
1274
				SHADE[1].HumanoidRootPart.CFrame = Clerp(SHADE[1].HumanoidRootPart.CFrame,RootPart.CFrame*CF(-SHADEDIST,0,0),0.2)
1275
				SHADE[2].C0 = Clerp(SHADE[2].C0, ROOTC0 * CF(0*SIZE, 0*SIZE, 0.2 + 0.1*SIZE * SIN(SINE / 12)) * ANGLES(RAD(0), RAD(0), RAD(-25)), 1 / Animation_Speed)
1276
				SHADE[3].C0 = Clerp(SHADE[3].C0, NECKC0 * CF(0, 0, 0 + ((1*SIZE) - 1)) * ANGLES(RAD(0 - 2.5 * SIN(SINE / 12)), RAD(0), RAD(25)), 1 / Animation_Speed)
1277
				SHADE[4].C0 = Clerp(SHADE[4].C0, CF(1.5*SIZE, 0.5*SIZE, 0*SIZE) * ANGLES(RAD(30 - 7 * SIN(SINE / 6)), RAD(0), RAD(42 - 7 * COS(SINE / 12))) * ANGLES(RAD(0), RAD(60), RAD(0)) * RIGHTSHOULDERC0, 1 / Animation_Speed)
1278
				SHADE[5].C0 = Clerp(SHADE[5].C0, CF(-1.5*SIZE, 0.5*SIZE, 0*SIZE) * ANGLES(RAD(30 - 7 * SIN(SINE / 6)), RAD(0), RAD(-42 + 7 * COS(SINE / 12))) * ANGLES(RAD(0), RAD(-60), RAD(0)) * LEFTSHOULDERC0, 1 / Animation_Speed)
1279
				SHADE[6].C0 = Clerp(SHADE[6].C0, CF(1*SIZE, -1*SIZE - 0.05*SIZE * COS(SINE / 12), -0.01*SIZE) * ANGLES(RAD(-15), RAD(80), RAD(0)) * ANGLES(RAD(-8), RAD(0), RAD(0)), 1 / Animation_Speed)
1280
				SHADE[7].C0 = Clerp(SHADE[7].C0, CF(-1*SIZE, -1*SIZE - 0.05*SIZE * COS(SINE / 12), -0.01*SIZE) * ANGLES(RAD(-15), RAD(-60), RAD(0)) * ANGLES(RAD(-8), RAD(0), RAD(0)), 1 / Animation_Speed)
1281
			end
1282
		end
1283
	end
1284
	ATTACK = false
1285
	Rooted = false
1286
end
1287
function AThird()
1288
	ATTACK = true
1289
	Rooted = false
1290
	for i=0, 1, 0.1 / Animation_Speed do
1291
		Swait()
1292
		for E = 1, #SHADES do
1293
			local SHADE = SHADES[E]
1294
			if E == 1 and SHADE[1].HumanoidRootPart then
1295
				SHADE[1].HumanoidRootPart.CFrame = Clerp(SHADE[1].HumanoidRootPart.CFrame,RootPart.CFrame*CF(SHADEDIST,0,0),0.2)
1296
				SHADE[2].C0 = Clerp(SHADE[2].C0, ROOTC0 * CF(0*SIZE, 0*SIZE, 0.2 + 0.1*SIZE * SIN(SINE / 12)) * ANGLES(RAD(0), RAD(0), RAD(25)), 1 / Animation_Speed)
1297
				SHADE[3].C0 = Clerp(SHADE[3].C0, NECKC0 * CF(0, 0, 0 + ((1*SIZE) - 1)) * ANGLES(RAD(0 - 2.5 * SIN(SINE / 12)), RAD(0), RAD(-25)), 1 / Animation_Speed)
1298
				SHADE[4].C0 = Clerp(SHADE[4].C0, CF(1.5*SIZE, 0.5*SIZE, 0*SIZE) * ANGLES(RAD(30 - 7 * SIN(SINE / 6)), RAD(0), RAD(42 - 7 * COS(SINE / 12))) * ANGLES(RAD(0), RAD(60), RAD(0)) * RIGHTSHOULDERC0, 1 / Animation_Speed)
1299
				SHADE[5].C0 = Clerp(SHADE[5].C0, CF(-1.5*SIZE, 0.5*SIZE, 0*SIZE) * ANGLES(RAD(30 - 7 * SIN(SINE / 6)), RAD(0), RAD(-42 + 7 * COS(SINE / 12))) * ANGLES(RAD(0), RAD(-60), RAD(0)) * LEFTSHOULDERC0, 1 / Animation_Speed)
1300
				SHADE[6].C0 = Clerp(SHADE[6].C0, CF(1*SIZE, -1*SIZE - 0.05*SIZE * COS(SINE / 12), -0.01*SIZE) * ANGLES(RAD(-15), RAD(60), RAD(0)) * ANGLES(RAD(-8), RAD(0), RAD(0)), 1 / Animation_Speed)
1301
				SHADE[7].C0 = Clerp(SHADE[7].C0, CF(-1*SIZE, -1*SIZE - 0.05*SIZE * COS(SINE / 12), -0.01*SIZE) * ANGLES(RAD(-15), RAD(-80), RAD(0)) * ANGLES(RAD(-8), RAD(0), RAD(0)), 1 / Animation_Speed)
1302
			elseif E == 2 and SHADE[1].HumanoidRootPart then
1303
				SHADE[1].HumanoidRootPart.CFrame = Clerp(SHADE[1].HumanoidRootPart.CFrame,RootPart.CFrame*CF(-SHADEDIST,0,0),0.2)
1304
				SHADE[2].C0 = Clerp(SHADE[2].C0, ROOTC0 * CF(0*SIZE, 0*SIZE, 0.2 + 0.1*SIZE * SIN(SINE / 12)) * ANGLES(RAD(0), RAD(0), RAD(-25)), 1 / Animation_Speed)
1305
				SHADE[3].C0 = Clerp(SHADE[3].C0, NECKC0 * CF(0, 0, 0 + ((1*SIZE) - 1)) * ANGLES(RAD(0 - 2.5 * SIN(SINE / 12)), RAD(0), RAD(25)), 1 / Animation_Speed)
1306
				SHADE[4].C0 = Clerp(SHADE[4].C0, CF(1.5*SIZE, 0.5*SIZE, 0*SIZE) * ANGLES(RAD(30 - 7 * SIN(SINE / 6)), RAD(0), RAD(42 - 7 * COS(SINE / 12))) * ANGLES(RAD(0), RAD(60), RAD(0)) * RIGHTSHOULDERC0, 1 / Animation_Speed)
1307
				SHADE[5].C0 = Clerp(SHADE[5].C0, CF(-1.5*SIZE, 0.5*SIZE, 0*SIZE) * ANGLES(RAD(30 - 7 * SIN(SINE / 6)), RAD(0), RAD(-42 + 7 * COS(SINE / 12))) * ANGLES(RAD(0), RAD(-60), RAD(0)) * LEFTSHOULDERC0, 1 / Animation_Speed)
1308
				SHADE[6].C0 = Clerp(SHADE[6].C0, CF(1*SIZE, -1*SIZE - 0.05*SIZE * COS(SINE / 12), -0.01*SIZE) * ANGLES(RAD(-15), RAD(80), RAD(0)) * ANGLES(RAD(-8), RAD(0), RAD(0)), 1 / Animation_Speed)
1309
				SHADE[7].C0 = Clerp(SHADE[7].C0, CF(-1*SIZE, -1*SIZE - 0.05*SIZE * COS(SINE / 12), -0.01*SIZE) * ANGLES(RAD(-15), RAD(-60), RAD(0)) * ANGLES(RAD(-8), RAD(0), RAD(0)), 1 / Animation_Speed)
1310
			end
1311
		end
1312
	end
1313
	ATTACK = false
1314
	Rooted = false
1315
end
1316
function TwinLightning()
1317
	ATTACK = true
1318
	Rooted = false
1319
	for i=0, 1, 0.1 / Animation_Speed do
1320
		Swait()
1321
		for E = 1, #SHADES do
1322
			local SHADE = SHADES[E]
1323
			if E == 1 and SHADE[1].HumanoidRootPart then
1324
				SHADE[1].HumanoidRootPart.CFrame = Clerp(SHADE[1].HumanoidRootPart.CFrame,RootPart.CFrame*CF(SHADEDIST,0,0),0.2)
1325
				SHADE[2].C0 = Clerp(SHADE[2].C0, ROOTC0 * CF(0*SIZE, 0*SIZE, 0.2 + 0.1*SIZE * SIN(SINE / 12)) * ANGLES(RAD(0), RAD(0), RAD(25)), 1 / Animation_Speed)
1326
				SHADE[3].C0 = Clerp(SHADE[3].C0, NECKC0 * CF(0, 0, 0 + ((1*SIZE) - 1)) * ANGLES(RAD(0 - 2.5 * SIN(SINE / 12)), RAD(0), RAD(-25)), 1 / Animation_Speed)
1327
				SHADE[4].C0 = Clerp(SHADE[4].C0, CF(1.5*SIZE, 0.5*SIZE, 0*SIZE) * ANGLES(RAD(30 - 7 * SIN(SINE / 6)), RAD(0), RAD(42 - 7 * COS(SINE / 12))) * ANGLES(RAD(0), RAD(60), RAD(0)) * RIGHTSHOULDERC0, 1 / Animation_Speed)
1328
				SHADE[5].C0 = Clerp(SHADE[5].C0, CF(-1.5*SIZE, 0.5*SIZE, 0*SIZE) * ANGLES(RAD(30 - 7 * SIN(SINE / 6)), RAD(0), RAD(-42 + 7 * COS(SINE / 12))) * ANGLES(RAD(0), RAD(-60), RAD(0)) * LEFTSHOULDERC0, 1 / Animation_Speed)
1329
				SHADE[6].C0 = Clerp(SHADE[6].C0, CF(1*SIZE, -1*SIZE - 0.05*SIZE * COS(SINE / 12), -0.01*SIZE) * ANGLES(RAD(-15), RAD(60), RAD(0)) * ANGLES(RAD(-8), RAD(0), RAD(0)), 1 / Animation_Speed)
1330
				SHADE[7].C0 = Clerp(SHADE[7].C0, CF(-1*SIZE, -1*SIZE - 0.05*SIZE * COS(SINE / 12), -0.01*SIZE) * ANGLES(RAD(-15), RAD(-80), RAD(0)) * ANGLES(RAD(-8), RAD(0), RAD(0)), 1 / Animation_Speed)
1331
			elseif E == 2 and SHADE[1].HumanoidRootPart then
1332
				SHADE[1].HumanoidRootPart.CFrame = Clerp(SHADE[1].HumanoidRootPart.CFrame,RootPart.CFrame*CF(-SHADEDIST,0,0),0.2)
1333
				SHADE[2].C0 = Clerp(SHADE[2].C0, ROOTC0 * CF(0*SIZE, 0*SIZE, 0.2 + 0.1*SIZE * SIN(SINE / 12)) * ANGLES(RAD(0), RAD(0), RAD(-25)), 1 / Animation_Speed)
1334
				SHADE[3].C0 = Clerp(SHADE[3].C0, NECKC0 * CF(0, 0, 0 + ((1*SIZE) - 1)) * ANGLES(RAD(0 - 2.5 * SIN(SINE / 12)), RAD(0), RAD(25)), 1 / Animation_Speed)
1335
				SHADE[4].C0 = Clerp(SHADE[4].C0, CF(1.5*SIZE, 0.5*SIZE, 0*SIZE) * ANGLES(RAD(30 - 7 * SIN(SINE / 6)), RAD(0), RAD(42 - 7 * COS(SINE / 12))) * ANGLES(RAD(0), RAD(60), RAD(0)) * RIGHTSHOULDERC0, 1 / Animation_Speed)
1336
				SHADE[5].C0 = Clerp(SHADE[5].C0, CF(-1.5*SIZE, 0.5*SIZE, 0*SIZE) * ANGLES(RAD(30 - 7 * SIN(SINE / 6)), RAD(0), RAD(-42 + 7 * COS(SINE / 12))) * ANGLES(RAD(0), RAD(-60), RAD(0)) * LEFTSHOULDERC0, 1 / Animation_Speed)
1337
				SHADE[6].C0 = Clerp(SHADE[6].C0, CF(1*SIZE, -1*SIZE - 0.05*SIZE * COS(SINE / 12), -0.01*SIZE) * ANGLES(RAD(-15), RAD(80), RAD(0)) * ANGLES(RAD(-8), RAD(0), RAD(0)), 1 / Animation_Speed)
1338
				SHADE[7].C0 = Clerp(SHADE[7].C0, CF(-1*SIZE, -1*SIZE - 0.05*SIZE * COS(SINE / 12), -0.01*SIZE) * ANGLES(RAD(-15), RAD(-60), RAD(0)) * ANGLES(RAD(-8), RAD(0), RAD(0)), 1 / Animation_Speed)
1339
			end
1340
		end
1341
	end
1342
	ATTACK = false
1343
	Rooted = false
1344
end
1345
1346
--//=================================\\
1347
--||	     TRANSFORMATIONS
1348
--\\=================================//
1349
1350
function Colossus()
1351
	local HITFLOOR,HITPOS = Raycast(RootPart.Position, (CF(RootPart.Position, RootPart.Position + VT(0, -1, 0))).lookVector, 3.7*SIZE, Character)
1352
	if HITFLOOR then
1353
		ATTACK = true
1354
		Rooted = true
1355
		coroutine.resume(coroutine.create(function()
1356
			if FORM == "Normal" then
1357
				repeat
1358
					Swait()
1359
					RootJoint.C0 = Clerp(RootJoint.C0,ROOTC0 * CF(0*SIZE, 0*SIZE, 0*SIZE) * ANGLES(RAD(0), RAD(0), RAD(0)), 1 / Animation_Speed)
1360
					Neck.C0 = Clerp(Neck.C0, NECKC0 * CF(0, 0, 0 + ((1*SIZE) - 1)) * ANGLES(RAD(45), RAD(0), RAD(0)), 1 / Animation_Speed)
1361
					RightShoulder.C0 = Clerp(RightShoulder.C0, CF(1.25*SIZE, 0.5*SIZE, -0.5*SIZE) * ANGLES(RAD(35), RAD(0), RAD(-60)) * ANGLES(RAD(0), RAD(60), RAD(0)) * RIGHTSHOULDERC0, 1 / Animation_Speed)
1362
					LeftShoulder.C0 = Clerp(LeftShoulder.C0, CF(-1.25*SIZE, 0.5*SIZE, -0.5*SIZE) * ANGLES(RAD(35), RAD(0), RAD(60)) * ANGLES(RAD(0), RAD(-60), RAD(0)) * LEFTSHOULDERC0, 1 / Animation_Speed)
1363
					RightHip.C0 = Clerp(RightHip.C0, CF(1*SIZE, -0.3*SIZE, -0.5*SIZE) * ANGLES(RAD(-15), RAD(70), RAD(0)) * ANGLES(RAD(-2), RAD(0), RAD(0)), 1 / Animation_Speed)
1364
					LeftHip.C0 = Clerp(LeftHip.C0, CF(-1*SIZE, -0.3*SIZE, -0.5*SIZE) * ANGLES(RAD(-15), RAD(-70), RAD(0)) * ANGLES(RAD(-2), RAD(0), RAD(0)), 1 / Animation_Speed)
1365
				until ATTACK == false
1366
			else
1367
				repeat
1368
					Swait()
1369
					RootJoint.C0 = Clerp(RootJoint.C0,ROOTC0 * CF(0*SIZE, 0*SIZE, 0*SIZE) * ANGLES(RAD(-15), RAD(0), RAD(0)), 1 / Animation_Speed)
1370
					Neck.C0 = Clerp(Neck.C0, NECKC0 * CF(0, 0, 0 + ((1*SIZE) - 1)) * ANGLES(RAD(15), RAD(0), RAD(0)), 1 / Animation_Speed)
1371
					RightShoulder.C0 = Clerp(RightShoulder.C0, CF(1.5*SIZE, 0.5*SIZE, 0*SIZE) * ANGLES(RAD(35), RAD(0), RAD(32)) * ANGLES(RAD(0), RAD(60), RAD(0)) * RIGHTSHOULDERC0, 1 / Animation_Speed)
1372
					LeftShoulder.C0 = Clerp(LeftShoulder.C0, CF(-1.5*SIZE, 0.5*SIZE, 0*SIZE) * ANGLES(RAD(35), RAD(0), RAD(-32)) * ANGLES(RAD(0), RAD(-60), RAD(0)) * LEFTSHOULDERC0, 1 / Animation_Speed)
1373
					RightHip.C0 = Clerp(RightHip.C0, CF(1*SIZE, -1*SIZE, -0.01*SIZE) * ANGLES(RAD(-15), RAD(70), RAD(0)) * ANGLES(RAD(-2), RAD(0), RAD(0)), 1 / Animation_Speed)
1374
					LeftHip.C0 = Clerp(LeftHip.C0, CF(-1*SIZE, -1*SIZE, -0.01*SIZE) * ANGLES(RAD(-15), RAD(-70), RAD(0)) * ANGLES(RAD(-2), RAD(0), RAD(0)), 1 / Animation_Speed)
1375
				until ATTACK == false
1376
			end
1377
		end))
1378
		if FORM == "Normal" then
1379
			UNANCHOR = false
1380
			for i = 1, 150 do
1381
				Swait()
1382
				RootPart.CFrame = RootPart.CFrame * CF(0,(1-((150-i)/150))*0.75,0)
1383
			end
1384
		end
1385
		if FORM == "Normal" then
1386
			local RINGS = {}
1387
			local RING,WELD,MESH = MagicRing(RootPart,CF(0,0,0))
1388
			WELD:remove()
1389
			RING.Anchored = true
1390
			RING.CFrame = CF(HITPOS)
1391
			table.insert(RINGS,{RING,MESH,WELD})
1392
			for i = 1, 6 do
1393
				local RING,WELD,MESH = MagicRing(RootPart,CF(0,0,0))
1394
				table.insert(RINGS,{RING,MESH,WELD})
1395
			end
1396
			Swait()
1397
			for E = 1, #RINGS do
1398
				if E ~= 1 then
1399
					local A = RINGS[E][1]
1400
					local C = RINGS[E][3]
1401
					C:remove()
1402
					A.Anchored = true
1403
					A.CFrame = RootPart.CFrame*ANGLES(RAD(MRANDOM(0,360)),RAD(MRANDOM(0,360)),RAD(MRANDOM(0,360)))
1404
				end
1405
			end
1406
			CreateSound(BIGBUILDUP,Effects,10,1,false)
1407
			coroutine.resume(coroutine.create(function()
1408
				repeat
1409
					Swait()
1410
					for E = 1, #RINGS do
1411
						local A = RINGS[E][1]
1412
						local B = RINGS[E][2]
1413
						A.CFrame = A.CFrame * ANGLES(RAD(0), RAD(2), RAD(0))
1414
					end
1415
				until ATTACK == false
1416
				for i = 1, 150 do
1417
					Swait()
1418
					for E = 1, #RINGS do
1419
						local A = RINGS[E][1]
1420
						local B = RINGS[E][2]
1421
						B.Scale = B.Scale - VT(7,0,7)*2
1422
						A.CFrame = A.CFrame * ANGLES(RAD(0), RAD(2), RAD(0))
1423
					end
1424
				end
1425
				for E = 1, #RINGS do
1426
					local A = RINGS[E][1]
1427
					local B = RINGS[E][2]
1428
					A:remove()
1429
				end
1430
			end))
1431
			for i = 1, 150 do
1432
				Swait()
1433
				for E = 1, #RINGS do
1434
					local A = RINGS[E][1]
1435
					local B = RINGS[E][2]
1436
					B.Scale = B.Scale + VT(7,0,7)*2
1437
				end
1438
			end
1439
			CreateSound(ROAR,Effects,10,1,false)
1440
			for i = 1, 140 do
1441
				Swait()
1442
				SIZE = SIZE + (1-((140-i)/140))*0.08
1443
				ReSize()
1444
			end
1445
			FORM = "Colossus"
1446
			Speed = 16*4
1447
			Humanoid.JumpPower = 200
1448
		else
1449
			for i = 1, 140 do
1450
				Swait()
1451
				SIZE = SIZE - (1-((140-i)/140))*0.08
1452
				ReSize()
1453
			end	
1454
			FORM = "Normal"
1455
			Speed = 16
1456
			Humanoid.JumpPower = 50
1457
			SIZE = 1
1458
			ReSize()
1459
		end
1460
		UNANCHOR = true
1461
		ATTACK = false
1462
		Rooted = false
1463
	end
1464
end
1465
function Twins()
1466
	SHADEDIST = 5
1467
	local HITFLOOR,HITPOS = Raycast(RootPart.Position, (CF(RootPart.Position, RootPart.Position + VT(0, -1, 0))).lookVector, 3.7*SIZE, Character)
1468
	if HITFLOOR then
1469
		UNANCHOR = false
1470
		ATTACK = true
1471
		Rooted = true
1472
		local RING,WELD,MESH = MagicRing(RootPart,CF(0,0,0))
1473
		WELD:remove()
1474
		RING.Anchored = true
1475
		RING.CFrame = CF(HITPOS)
1476
		coroutine.resume(coroutine.create(function()
1477
			coroutine.resume(coroutine.create(function()
1478
				for i = 1, 70 do
1479
					Swait()
1480
					MESH.Scale = MESH.Scale + VT(15,0,15)
1481
				end
1482
			end))
1483
			repeat
1484
				Swait()
1485
				RING.CFrame = RING.CFrame * ANGLES(RAD(0), RAD(2), RAD(0))
1486
				RootJoint.C0 = Clerp(RootJoint.C0,ROOTC0 * CF(0*SIZE, 0*SIZE, 0*SIZE) * ANGLES(RAD(0), RAD(0), RAD(0)), 1 / Animation_Speed)
1487
				Neck.C0 = Clerp(Neck.C0, NECKC0 * CF(0, 0, 0 + ((1*SIZE) - 1)) * ANGLES(RAD(45), RAD(0), RAD(0)), 1 / Animation_Speed)
1488
				RightShoulder.C0 = Clerp(RightShoulder.C0, CF(1.25*SIZE, 0.5*SIZE, -0.5*SIZE) * ANGLES(RAD(35), RAD(0), RAD(-60)) * ANGLES(RAD(0), RAD(60), RAD(0)) * RIGHTSHOULDERC0, 1 / Animation_Speed)
1489
				LeftShoulder.C0 = Clerp(LeftShoulder.C0, CF(-1.25*SIZE, 0.5*SIZE, -0.5*SIZE) * ANGLES(RAD(35), RAD(0), RAD(60)) * ANGLES(RAD(0), RAD(-60), RAD(0)) * LEFTSHOULDERC0, 1 / Animation_Speed)
1490
				RightHip.C0 = Clerp(RightHip.C0, CF(1*SIZE, -0.3*SIZE, -0.5*SIZE) * ANGLES(RAD(-15), RAD(70), RAD(0)) * ANGLES(RAD(-2), RAD(0), RAD(0)), 1 / Animation_Speed)
1491
				LeftHip.C0 = Clerp(LeftHip.C0, CF(-1*SIZE, -0.3*SIZE, -0.5*SIZE) * ANGLES(RAD(-15), RAD(-70), RAD(0)) * ANGLES(RAD(-2), RAD(0), RAD(0)), 1 / Animation_Speed)
1492
			until ATTACK == false
1493
			for i = 1, 70 do
1494
				Swait()
1495
				MESH.Scale = MESH.Scale - VT(15,0,15)
1496
				RING.CFrame = RING.CFrame * ANGLES(RAD(0), RAD(2), RAD(0))
1497
			end
1498
			RING:remove()
1499
		end))
1500
		if FORM == "Normal" then
1501
			CreateSound(BUILDUP,Effects,10,1,false)
1502
			wait(2)
1503
			TRANS = 1
1504
			CreateSound(ECHOBLAST,Effects,8,1,false)
1505
			for i = 1, 4 do
1506
				WACKYEFFECT({Time = MRANDOM(20,30)*2, EffectType = "Wave", Size = VT(5,2,5), Size2 = VT(35+i,2,35+i), Transparency = 0, Transparency2 = 1, CFrame = CF(HITPOS), MoveToPos = nil, RotationX = 0, RotationY = i, RotationZ = 0, Material = "Neon", Color = C3(0,0,0), SoundID = nil, SoundPitch = nil, SoundVolume = nil})
1507
			end
1508
			WACKYEFFECT({Time = MRANDOM(20,30)*2, EffectType = "Sphere", Size = VT(5,5,5), Size2 = VT(15,15,15), Transparency = 0, Transparency2 = 1, CFrame = CF(RootPart.Position), MoveToPos = nil, RotationX = 0, RotationY = 0, RotationZ = 0, Material = "Neon", Color = C3(0,0,0), SoundID = nil, SoundPitch = nil, SoundVolume = nil})
1509
			local CLONE1 = CLONE:Clone()
1510
			local CLONE2 = CLONE:Clone()
1511
			CLONE1.Parent = Character
1512
			CLONE2.Parent = Character
1513
			local R1 = CLONE1.HumanoidRootPart
1514
			local T1 = CLONE1.Torso
1515
			local R2 = CLONE2.HumanoidRootPart
1516
			local T2 = CLONE2.Torso
1517
			R1.Anchored = true
1518
			R2.Anchored = true
1519
			R1.CFrame = RootPart.CFrame
1520
			R2.CFrame = RootPart.CFrame
1521
			table.insert(SHADES,{CLONE1,R1["RootJoint"],T1["Neck"],T1["Right Shoulder"],T1["Left Shoulder"],T1["Right Hip"],T1["Left Hip"]})
1522
			table.insert(SHADES,{CLONE2,R2["RootJoint"],T2["Neck"],T2["Right Shoulder"],T2["Left Shoulder"],T2["Right Hip"],T2["Left Hip"]})
1523
			coroutine.resume(coroutine.create(function()
1524
				repeat
1525
					Swait()
1526
					for E = 1, #SHADES do
1527
						local SHADE = SHADES[E]
1528
						if E == 1 and SHADE[1].HumanoidRootPart then
1529
							SHADE[1].HumanoidRootPart.CFrame = Clerp(SHADE[1].HumanoidRootPart.CFrame,RootPart.CFrame*CF(SHADEDIST,0,0),0.2)
1530
							SHADE[2].C0 = Clerp(SHADE[2].C0, ROOTC0 * CF(0*SIZE, 0*SIZE, 0.2 + 0.1*SIZE * SIN(SINE / 12)) * ANGLES(RAD(0), RAD(0), RAD(25)), 1 / Animation_Speed)
1531
							SHADE[3].C0 = Clerp(SHADE[3].C0, NECKC0 * CF(0, 0, 0 + ((1*SIZE) - 1)) * ANGLES(RAD(0 - 2.5 * SIN(SINE / 12)), RAD(0), RAD(-25)), 1 / Animation_Speed)
1532
							SHADE[4].C0 = Clerp(SHADE[4].C0, CF(1.5*SIZE, 0.5*SIZE, 0*SIZE) * ANGLES(RAD(30 - 7 * SIN(SINE / 6)), RAD(0), RAD(42 - 7 * COS(SINE / 12))) * ANGLES(RAD(0), RAD(60), RAD(0)) * RIGHTSHOULDERC0, 1 / Animation_Speed)
1533
							SHADE[5].C0 = Clerp(SHADE[5].C0, CF(-1.5*SIZE, 0.5*SIZE, 0*SIZE) * ANGLES(RAD(30 - 7 * SIN(SINE / 6)), RAD(0), RAD(-42 + 7 * COS(SINE / 12))) * ANGLES(RAD(0), RAD(-60), RAD(0)) * LEFTSHOULDERC0, 1 / Animation_Speed)
1534
							SHADE[6].C0 = Clerp(SHADE[6].C0, CF(1*SIZE, -1*SIZE - 0.05*SIZE * COS(SINE / 12), -0.01*SIZE) * ANGLES(RAD(-15), RAD(60), RAD(0)) * ANGLES(RAD(-8), RAD(0), RAD(0)), 1 / Animation_Speed)
1535
							SHADE[7].C0 = Clerp(SHADE[7].C0, CF(-1*SIZE, -1*SIZE - 0.05*SIZE * COS(SINE / 12), -0.01*SIZE) * ANGLES(RAD(-15), RAD(-80), RAD(0)) * ANGLES(RAD(-8), RAD(0), RAD(0)), 1 / Animation_Speed)
1536
						elseif E == 2 and SHADE[1].HumanoidRootPart then
1537
							SHADE[1].HumanoidRootPart.CFrame = Clerp(SHADE[1].HumanoidRootPart.CFrame,RootPart.CFrame*CF(-SHADEDIST,0,0),0.2)
1538
							SHADE[2].C0 = Clerp(SHADE[2].C0, ROOTC0 * CF(0*SIZE, 0*SIZE, 0.2 + 0.1*SIZE * SIN(SINE / 12)) * ANGLES(RAD(0), RAD(0), RAD(-25)), 1 / Animation_Speed)
1539
							SHADE[3].C0 = Clerp(SHADE[3].C0, NECKC0 * CF(0, 0, 0 + ((1*SIZE) - 1)) * ANGLES(RAD(0 - 2.5 * SIN(SINE / 12)), RAD(0), RAD(25)), 1 / Animation_Speed)
1540
							SHADE[4].C0 = Clerp(SHADE[4].C0, CF(1.5*SIZE, 0.5*SIZE, 0*SIZE) * ANGLES(RAD(30 - 7 * SIN(SINE / 6)), RAD(0), RAD(42 - 7 * COS(SINE / 12))) * ANGLES(RAD(0), RAD(60), RAD(0)) * RIGHTSHOULDERC0, 1 / Animation_Speed)
1541
							SHADE[5].C0 = Clerp(SHADE[5].C0, CF(-1.5*SIZE, 0.5*SIZE, 0*SIZE) * ANGLES(RAD(30 - 7 * SIN(SINE / 6)), RAD(0), RAD(-42 + 7 * COS(SINE / 12))) * ANGLES(RAD(0), RAD(-60), RAD(0)) * LEFTSHOULDERC0, 1 / Animation_Speed)
1542
							SHADE[6].C0 = Clerp(SHADE[6].C0, CF(1*SIZE, -1*SIZE - 0.05*SIZE * COS(SINE / 12), -0.01*SIZE) * ANGLES(RAD(-15), RAD(80), RAD(0)) * ANGLES(RAD(-8), RAD(0), RAD(0)), 1 / Animation_Speed)
1543
							SHADE[7].C0 = Clerp(SHADE[7].C0, CF(-1*SIZE, -1*SIZE - 0.05*SIZE * COS(SINE / 12), -0.01*SIZE) * ANGLES(RAD(-15), RAD(-60), RAD(0)) * ANGLES(RAD(-8), RAD(0), RAD(0)), 1 / Animation_Speed)
1544
						end
1545
					end
1546
				until ATTACK == false
1547
			end))
1548
			wait(1)
1549
			FORM = "Twins"
1550
			Speed = 45
1551
		else
1552
			SHADEDIST = 7
1553
			for i=0, 1.5, 0.1 / Animation_Speed do
1554
				Swait()
1555
				for E = 1, #SHADES do
1556
					local SHADE = SHADES[E]
1557
					if E == 1 and SHADE[1].HumanoidRootPart then
1558
						SHADE[1].HumanoidRootPart.CFrame = Clerp(SHADE[1].HumanoidRootPart.CFrame,RootPart.CFrame*CF(SHADEDIST,0,0),0.2)
1559
						SHADE[2].C0 = Clerp(SHADE[2].C0, ROOTC0 * CF(0*SIZE, 0*SIZE, 0.2 + 0.1*SIZE * SIN(SINE / 12)) * ANGLES(RAD(0), RAD(0), RAD(75)) * ANGLES(RAD(0), RAD(-25), RAD(0)), 1 / Animation_Speed)
1560
						SHADE[3].C0 = Clerp(SHADE[3].C0, NECKC0 * CF(0, 0, 0 + ((1*SIZE) - 1)) * ANGLES(RAD(0 - 2.5 * SIN(SINE / 12)), RAD(0), RAD(-75)), 1 / Animation_Speed)
1561
						SHADE[4].C0 = Clerp(SHADE[4].C0, CF(1.5*SIZE, 0.5*SIZE, 0*SIZE) * ANGLES(RAD(30 - 7 * SIN(SINE / 6)), RAD(0), RAD(42 - 7 * COS(SINE / 12))) * ANGLES(RAD(0), RAD(60), RAD(0)) * RIGHTSHOULDERC0, 1 / Animation_Speed)
1562
						SHADE[5].C0 = Clerp(SHADE[5].C0, CF(-1.5*SIZE, 0.5*SIZE, 0*SIZE) * ANGLES(RAD(30 - 7 * SIN(SINE / 6)), RAD(0), RAD(-42 + 7 * COS(SINE / 12))) * ANGLES(RAD(0), RAD(-60), RAD(0)) * LEFTSHOULDERC0, 1 / Animation_Speed)
1563
						SHADE[6].C0 = Clerp(SHADE[6].C0, CF(1*SIZE, -1*SIZE - 0.05*SIZE * COS(SINE / 12), -0.01*SIZE) * ANGLES(RAD(-15), RAD(60), RAD(0)) * ANGLES(RAD(-8), RAD(0), RAD(0)), 1 / Animation_Speed)
1564
						SHADE[7].C0 = Clerp(SHADE[7].C0, CF(-1*SIZE, -1*SIZE - 0.05*SIZE * COS(SINE / 12), -0.01*SIZE) * ANGLES(RAD(-15), RAD(-80), RAD(0)) * ANGLES(RAD(-8), RAD(0), RAD(0)), 1 / Animation_Speed)
1565
					elseif E == 2 and SHADE[1].HumanoidRootPart then
1566
						SHADE[1].HumanoidRootPart.CFrame = Clerp(SHADE[1].HumanoidRootPart.CFrame,RootPart.CFrame*CF(-SHADEDIST,0,0),0.2)
1567
						SHADE[2].C0 = Clerp(SHADE[2].C0, ROOTC0 * CF(0*SIZE, 0*SIZE, 0.2 + 0.1*SIZE * SIN(SINE / 12)) * ANGLES(RAD(0), RAD(0), RAD(-75)) * ANGLES(RAD(0), RAD(25), RAD(0)), 1 / Animation_Speed)
1568
						SHADE[3].C0 = Clerp(SHADE[3].C0, NECKC0 * CF(0, 0, 0 + ((1*SIZE) - 1)) * ANGLES(RAD(0 - 2.5 * SIN(SINE / 12)), RAD(0), RAD(75)), 1 / Animation_Speed)
1569
						SHADE[4].C0 = Clerp(SHADE[4].C0, CF(1.5*SIZE, 0.5*SIZE, 0*SIZE) * ANGLES(RAD(30 - 7 * SIN(SINE / 6)), RAD(0), RAD(42 - 7 * COS(SINE / 12))) * ANGLES(RAD(0), RAD(60), RAD(0)) * RIGHTSHOULDERC0, 1 / Animation_Speed)
1570
						SHADE[5].C0 = Clerp(SHADE[5].C0, CF(-1.5*SIZE, 0.5*SIZE, 0*SIZE) * ANGLES(RAD(30 - 7 * SIN(SINE / 6)), RAD(0), RAD(-42 + 7 * COS(SINE / 12))) * ANGLES(RAD(0), RAD(-60), RAD(0)) * LEFTSHOULDERC0, 1 / Animation_Speed)
1571
						SHADE[6].C0 = Clerp(SHADE[6].C0, CF(1*SIZE, -1*SIZE - 0.05*SIZE * COS(SINE / 12), -0.01*SIZE) * ANGLES(RAD(-15), RAD(80), RAD(0)) * ANGLES(RAD(-8), RAD(0), RAD(0)), 1 / Animation_Speed)
1572
						SHADE[7].C0 = Clerp(SHADE[7].C0, CF(-1*SIZE, -1*SIZE - 0.05*SIZE * COS(SINE / 12), -0.01*SIZE) * ANGLES(RAD(-15), RAD(-60), RAD(0)) * ANGLES(RAD(-8), RAD(0), RAD(0)), 1 / Animation_Speed)
1573
					end
1574
				end
1575
			end
1576
			SHADEDIST = 0
1577
			for i=0, 0.35, 0.1 / Animation_Speed do
1578
				Swait()
1579
				for E = 1, #SHADES do
1580
					local SHADE = SHADES[E]
1581
					if E == 1 and SHADE[1].HumanoidRootPart then
1582
						SHADE[1].HumanoidRootPart.CFrame = Clerp(SHADE[1].HumanoidRootPart.CFrame,RootPart.CFrame*CF(SHADEDIST,0,0),0.4)
1583
						SHADE[2].C0 = Clerp(SHADE[2].C0, ROOTC0 * CF(0*SIZE, 0*SIZE, 0.2 + 0.1*SIZE * SIN(SINE / 12)) * ANGLES(RAD(0), RAD(0), RAD(85)) * ANGLES(RAD(0), RAD(-25), RAD(0)), 1 / Animation_Speed)
1584
						SHADE[3].C0 = Clerp(SHADE[3].C0, NECKC0 * CF(0, 0, 0 + ((1*SIZE) - 1)) * ANGLES(RAD(0 - 2.5 * SIN(SINE / 12)), RAD(0), RAD(0)), 1 / Animation_Speed)
1585
						SHADE[4].C0 = Clerp(SHADE[4].C0, CF(1.5*SIZE, 0.5*SIZE, 0*SIZE) * ANGLES(RAD(30 - 7 * SIN(SINE / 6)), RAD(0), RAD(42 - 7 * COS(SINE / 12))) * ANGLES(RAD(0), RAD(60), RAD(0)) * RIGHTSHOULDERC0, 1 / Animation_Speed)
1586
						SHADE[5].C0 = Clerp(SHADE[5].C0, CF(-1.5*SIZE, 0.5*SIZE, 0*SIZE) * ANGLES(RAD(30 - 7 * SIN(SINE / 6)), RAD(0), RAD(-42 + 7 * COS(SINE / 12))) * ANGLES(RAD(0), RAD(-60), RAD(0)) * LEFTSHOULDERC0, 1 / Animation_Speed)
1587
						SHADE[6].C0 = Clerp(SHADE[6].C0, CF(1*SIZE, -1*SIZE - 0.05*SIZE * COS(SINE / 12), -0.01*SIZE) * ANGLES(RAD(-15), RAD(60), RAD(0)) * ANGLES(RAD(-8), RAD(0), RAD(0)), 1 / Animation_Speed)
1588
						SHADE[7].C0 = Clerp(SHADE[7].C0, CF(-1*SIZE, -1*SIZE - 0.05*SIZE * COS(SINE / 12), -0.01*SIZE) * ANGLES(RAD(-15), RAD(-80), RAD(0)) * ANGLES(RAD(-8), RAD(0), RAD(0)), 1 / Animation_Speed)
1589
					elseif E == 2 and SHADE[1].HumanoidRootPart then
1590
						SHADE[1].HumanoidRootPart.CFrame = Clerp(SHADE[1].HumanoidRootPart.CFrame,RootPart.CFrame*CF(-SHADEDIST,0,0),0.4)
1591
						SHADE[2].C0 = Clerp(SHADE[2].C0, ROOTC0 * CF(0*SIZE, 0*SIZE, 0.2 + 0.1*SIZE * SIN(SINE / 12)) * ANGLES(RAD(0), RAD(0), RAD(-85)) * ANGLES(RAD(0), RAD(25), RAD(0)), 1 / Animation_Speed)
1592
						SHADE[3].C0 = Clerp(SHADE[3].C0, NECKC0 * CF(0, 0, 0 + ((1*SIZE) - 1)) * ANGLES(RAD(0 - 2.5 * SIN(SINE / 12)), RAD(0), RAD(0)), 1 / Animation_Speed)
1593
						SHADE[4].C0 = Clerp(SHADE[4].C0, CF(1.5*SIZE, 0.5*SIZE, 0*SIZE) * ANGLES(RAD(30 - 7 * SIN(SINE / 6)), RAD(0), RAD(42 - 7 * COS(SINE / 12))) * ANGLES(RAD(0), RAD(60), RAD(0)) * RIGHTSHOULDERC0, 1 / Animation_Speed)
1594
						SHADE[5].C0 = Clerp(SHADE[5].C0, CF(-1.5*SIZE, 0.5*SIZE, 0*SIZE) * ANGLES(RAD(30 - 7 * SIN(SINE / 6)), RAD(0), RAD(-42 + 7 * COS(SINE / 12))) * ANGLES(RAD(0), RAD(-60), RAD(0)) * LEFTSHOULDERC0, 1 / Animation_Speed)
1595
						SHADE[6].C0 = Clerp(SHADE[6].C0, CF(1*SIZE, -1*SIZE - 0.05*SIZE * COS(SINE / 12), -0.01*SIZE) * ANGLES(RAD(-15), RAD(80), RAD(0)) * ANGLES(RAD(-8), RAD(0), RAD(0)), 1 / Animation_Speed)
1596
						SHADE[7].C0 = Clerp(SHADE[7].C0, CF(-1*SIZE, -1*SIZE - 0.05*SIZE * COS(SINE / 12), -0.01*SIZE) * ANGLES(RAD(-15), RAD(-60), RAD(0)) * ANGLES(RAD(-8), RAD(0), RAD(0)), 1 / Animation_Speed)
1597
					end
1598
				end
1599
			end
1600
			SHADES[1][1]:remove()
1601
			SHADES[2][1]:remove()
1602
			SHADES = {}
1603
			TRANS = 0.5
1604
			CreateSound(GROWL,Head,10,1,false)
1605
			CreateSound(ECHOBLAST,Effects,8,0.6,false)
1606
			CreateSound(ECHOBLAST,Effects,8,0.8,false)
1607
			CreateSound(ECHOBLAST,Effects,8,1,false)
1608
			for i = 1, 4 do
1609
				WACKYEFFECT({Time = MRANDOM(20,30)*2, EffectType = "Wave", Size = VT(5,2,5), Size2 = VT(35+i,2,35+i), Transparency = 0, Transparency2 = 1, CFrame = CF(HITPOS), MoveToPos = nil, RotationX = 0, RotationY = i, RotationZ = 0, Material = "Neon", Color = C3(0,0,0), SoundID = nil, SoundPitch = nil, SoundVolume = nil})
1610
			end
1611
			WACKYEFFECT({Time = MRANDOM(20,30)*2, EffectType = "Sphere", Size = VT(5,5,5), Size2 = VT(15,15,15), Transparency = 0, Transparency2 = 1, CFrame = CF(RootPart.Position), MoveToPos = nil, RotationX = 0, RotationY = 0, RotationZ = 0, Material = "Neon", Color = C3(0,0,0), SoundID = nil, SoundPitch = nil, SoundVolume = nil})
1612
			FORM = "Normal"
1613
			Speed = 16
1614
		end
1615
		UNANCHOR = true
1616
		ATTACK = false
1617
		Rooted = false
1618
	end
1619
end
1620
1621
--//=================================\\
1622
--||	  ASSIGN THINGS TO KEYS
1623
--\\=================================//
1624
1625
function MouseDown(Mouse)
1626
	if ATTACK == false then
1627
	end
1628
end
1629
1630
function MouseUp(Mouse)
1631
HOLD = false
1632
end
1633
1634
function KeyDown(Key)
1635
	KEYHOLD = true
1636
	if Key == "q" and ATTACK == false then
1637
		if FORM == "Normal" then
1638
			ShadowBlast()
1639
		elseif FORM == "Colossus" then
1640
			SoundTremor()
1641
		elseif FORM == "Twins" then
1642
			DoubleShades()
1643
		end
1644
	end
1645
1646
	if Key == "e" and ATTACK == false then
1647
		if FORM == "Normal" then
1648
			ChainReaction()
1649
		elseif FORM == "Colossus" then
1650
			BlightedSolarFlares()
1651
		elseif FORM == "Twins" then
1652
			AThird()
1653
		end
1654
	end
1655
1656
	if Key == "r" and ATTACK == false then
1657
		if FORM == "Normal" then
1658
			BlightRavage()
1659
		elseif FORM == "Colossus" then
1660
			AlchemicChaos()
1661
		elseif FORM == "Twins" then
1662
			TwinLightning()
1663
		end
1664
	end
1665
1666
	if Key == "z" and ATTACK == false then
1667
		if FORM ~= "Twins" then
1668
			Colossus()
1669
		end
1670
	end
1671
1672
	if Key == "x" and ATTACK == false then
1673
		if FORM ~= "Colossus" then
1674
			Twins()
1675
		end
1676
	end
1677
end
1678
1679
function KeyUp(Key)
1680
	KEYHOLD = false
1681
end
1682
1683
	Mouse.Button1Down:connect(function(NEWKEY)
1684
		MouseDown(NEWKEY)
1685
	end)
1686
	Mouse.Button1Up:connect(function(NEWKEY)
1687
		MouseUp(NEWKEY)
1688
	end)
1689
	Mouse.KeyDown:connect(function(NEWKEY)
1690
		KeyDown(NEWKEY)
1691
	end)
1692
	Mouse.KeyUp:connect(function(NEWKEY)
1693
		KeyUp(NEWKEY)
1694
	end)
1695
1696
--//=================================\\
1697
--\\=================================//
1698
1699
function unanchor()
1700
	for _, c in pairs(Character:GetChildren()) do
1701
		if c:IsA("BasePart") and c ~= RootPart then
1702
			c.Anchored = false
1703
		end
1704
	end
1705
	if UNANCHOR == true then
1706
		RootPart.Anchored = false
1707
	else
1708
		RootPart.Anchored = true
1709
	end
1710
end
1711
1712
--//=================================\\
1713
--||	WRAP THE WHOLE SCRIPT UP
1714
--\\=================================//
1715
1716
Humanoid.Changed:connect(function(Jump)
1717
	if Jump == "Jump" and (Disable_Jump == true) then
1718
		Humanoid.Jump = false
1719
	end
1720
end)
1721
1722
while true do
1723
	Swait()
1724
	script.Parent = WEAPONGUI
1725
	ANIMATE.Parent = nil
1726
	for _,v in next, Humanoid:GetPlayingAnimationTracks() do
1727
	    v:Stop();
1728
	end
1729
	SINE = SINE + CHANGE
1730
	local TORSOVELOCITY = (RootPart.Velocity * VT(1, 0, 1)).magnitude
1731
	local TORSOVERTICALVELOCITY = RootPart.Velocity.y
1732
	local HITFLOOR = Raycast(RootPart.Position, (CF(RootPart.Position, RootPart.Position + VT(0, -1, 0))).lookVector, 3.7*SIZE, Character)
1733
	local WALKSPEEDVALUE = 5
1734
	if ANIM == "Walk" and TORSOVELOCITY > 1 and FORM ~= "Twins" then
1735
		RootJoint.C1 = Clerp(RootJoint.C1, ROOTC0 * CF(0, 0, -0.15 * COS(SINE / (WALKSPEEDVALUE / 2))*SIZE) * ANGLES(RAD(0), RAD(0) - RootPart.RotVelocity.Y / 75, RAD(0)), 2 / Animation_Speed)
1736
		Neck.C1 = Clerp(Neck.C1, CF(0, -0.5*SIZE, 0) * ANGLES(RAD(-90), RAD(0), RAD(180)) * ANGLES(RAD(2.5 * SIN(SINE / (WALKSPEEDVALUE / 2))), RAD(0), RAD(0) - Head.RotVelocity.Y / 30), 0.6 / Animation_Speed)
1737
		RightHip.C1 = Clerp(RightHip.C1, CF(0.5*SIZE, 0.875*SIZE - 0.125 * SIN(SINE / WALKSPEEDVALUE)*SIZE - 0.15 * COS(SINE / WALKSPEEDVALUE*2), -0.125 * COS(SINE / WALKSPEEDVALUE) +0.2*SIZE- 0.2*SIZE * COS(SINE / WALKSPEEDVALUE)) * ANGLES(RAD(0), RAD(90), RAD(0)) * ANGLES(RAD(0) - RightLeg.RotVelocity.Y / 75, RAD(0), RAD(76 * COS(SINE / WALKSPEEDVALUE))), 0.8 / Animation_Speed)
1738
		LeftHip.C1 = Clerp(LeftHip.C1, CF(-0.5*SIZE, 0.875*SIZE + 0.125 * SIN(SINE / WALKSPEEDVALUE)*SIZE - 0.15 * COS(SINE / WALKSPEEDVALUE*2), 0.125 * COS(SINE / WALKSPEEDVALUE) +0.2*SIZE+ 0.2*SIZE * COS(SINE / WALKSPEEDVALUE)) * ANGLES(RAD(0), RAD(-90), RAD(0)) * ANGLES(RAD(0) + LeftLeg.RotVelocity.Y / 75, RAD(0), RAD(76 * COS(SINE / WALKSPEEDVALUE))), 0.8 / Animation_Speed)
1739
	elseif (ANIM ~= "Walk") or (TORSOVELOCITY < 1) or FORM == "Twins" then
1740
		RootJoint.C1 = Clerp(RootJoint.C1, ROOTC0 * CF(0, 0, 0) * ANGLES(RAD(0), RAD(0), RAD(0)), 0.2 / Animation_Speed)
1741
		Neck.C1 = Clerp(Neck.C1, CF(0, -0.5*SIZE, 0) * ANGLES(RAD(-90), RAD(0), RAD(180)) * ANGLES(RAD(0), RAD(0), RAD(0)), 1 / Animation_Speed)
1742
		RightHip.C1 = Clerp(RightHip.C1, CF(0.5*SIZE, 1*SIZE, 0) * ANGLES(RAD(0), RAD(90), RAD(0)) * ANGLES(RAD(0), RAD(0), RAD(0)), 1 / Animation_Speed)
1743
		LeftHip.C1 = Clerp(LeftHip.C1, CF(-0.5*SIZE, 1*SIZE, 0) * ANGLES(RAD(0), RAD(-90), RAD(0)) * ANGLES(RAD(0), RAD(0), RAD(0)), 1 / Animation_Speed)
1744
	end
1745
	if FORM ~= "Twins" then
1746
		if TORSOVERTICALVELOCITY > 1 and HITFLOOR == nil then
1747
			ANIM = "Jump"
1748
			if ATTACK == false then
1749
				RootJoint.C0 = Clerp(RootJoint.C0, ROOTC0 * CF(0*SIZE, 0*SIZE, 0*SIZE) * ANGLES(RAD(0), RAD(0), RAD(0)), 1 / Animation_Speed)
1750
				Neck.C0 = Clerp(Neck.C0, NECKC0 * CF(0*SIZE, 0*SIZE, 0 + ((1*SIZE) - 1)) * ANGLES(RAD(-20), RAD(0), RAD(0)), 1 / Animation_Speed)
1751
				RightShoulder.C0 = Clerp(RightShoulder.C0, CF(1.5*SIZE, 0.5*SIZE, 0*SIZE) * ANGLES(RAD(-40), RAD(0), RAD(20)) * RIGHTSHOULDERC0, 1 / Animation_Speed)
1752
				LeftShoulder.C0 = Clerp(LeftShoulder.C0, CF(-1.5*SIZE, 0.5*SIZE, 0*SIZE) * ANGLES(RAD(-40), RAD(0), RAD(-20)) * LEFTSHOULDERC0, 1 / Animation_Speed)
1753
				RightHip.C0 = Clerp(RightHip.C0, CF(1*SIZE, -1*SIZE, -0.3*SIZE) * ANGLES(RAD(0), RAD(90), RAD(0)) * ANGLES(RAD(-5), RAD(0), RAD(-20)), 1 / Animation_Speed)
1754
				LeftHip.C0 = Clerp(LeftHip.C0, CF(-1*SIZE, -1*SIZE, -0.3*SIZE) * ANGLES(RAD(0), RAD(-90), RAD(0)) * ANGLES(RAD(-5), RAD(0), RAD(20)), 1 / Animation_Speed)
1755
		    end
1756
		elseif TORSOVERTICALVELOCITY < -1 and HITFLOOR == nil then
1757
			ANIM = "Fall"
1758
			if ATTACK == false then
1759
				RootJoint.C0 = Clerp(RootJoint.C0, ROOTC0 * CF(0*SIZE, 0*SIZE, 0*SIZE) * ANGLES(RAD(0), RAD(0), RAD(0)), 1 / Animation_Speed)
1760
				Neck.C0 = Clerp(Neck.C0, NECKC0 * CF(0*SIZE, 0*SIZE, 0 + ((1*SIZE) - 1)) * ANGLES(RAD(20), RAD(0), RAD(0)), 1 / Animation_Speed)
1761
				RightShoulder.C0 = Clerp(RightShoulder.C0, CF(1.5*SIZE, 0.5*SIZE, 0*SIZE) * ANGLES(RAD(35), RAD(0), RAD(30)) * RIGHTSHOULDERC0, 1 / Animation_Speed)
1762
				LeftShoulder.C0 = Clerp(LeftShoulder.C0, CF(-1.5*SIZE, 0.5*SIZE, 0*SIZE) * ANGLES(RAD(35), RAD(0), RAD(-30)) * LEFTSHOULDERC0, 1 / Animation_Speed)
1763
				RightHip.C0 = Clerp(RightHip.C0, CF(1*SIZE, -0.3*SIZE, -0.5*SIZE) * ANGLES(RAD(0), RAD(90), RAD(0)) * ANGLES(RAD(0), RAD(0), RAD(20)), 1 / Animation_Speed)
1764
				LeftHip.C0 = Clerp(LeftHip.C0, CF(-1*SIZE, -1*SIZE, 0*SIZE) * ANGLES(RAD(0), RAD(-90), RAD(0)) * ANGLES(RAD(0), RAD(0), RAD(10)), 1 / Animation_Speed)
1765
			end
1766
		elseif TORSOVELOCITY < 1 and HITFLOOR ~= nil then
1767
			ANIM = "Idle"
1768
			if ATTACK == false then
1769
				RootJoint.C0 = Clerp(RootJoint.C0,ROOTC0 * CF(0*SIZE, 0*SIZE, 0 + 0.05*SIZE * COS(SINE / 12)) * ANGLES(RAD(0), RAD(0), RAD(25)), 1 / Animation_Speed)
1770
				Neck.C0 = Clerp(Neck.C0, NECKC0 * CF(0, 0, 0 + ((1*SIZE) - 1)) * ANGLES(RAD(0 - 2.5 * SIN(SINE / 12)), RAD(0), RAD(-25)), 1 / Animation_Speed)
1771
				RightShoulder.C0 = Clerp(RightShoulder.C0, CF(1.5*SIZE, 0.5*SIZE, 0*SIZE) * ANGLES(RAD(30 - 7 * SIN(SINE / 6)), RAD(0), RAD(42 - 7 * COS(SINE / 12))) * ANGLES(RAD(0), RAD(60), RAD(0)) * RIGHTSHOULDERC0, 1 / Animation_Speed)
1772
				LeftShoulder.C0 = Clerp(LeftShoulder.C0, CF(-1.5*SIZE, 0.5*SIZE, 0*SIZE) * ANGLES(RAD(30 - 7 * SIN(SINE / 6)), RAD(0), RAD(-42 + 7 * COS(SINE / 12))) * ANGLES(RAD(0), RAD(-60), RAD(0)) * LEFTSHOULDERC0, 1 / Animation_Speed)
1773
				RightHip.C0 = Clerp(RightHip.C0, CF(1*SIZE, -1*SIZE - 0.05*SIZE * COS(SINE / 12), -0.01*SIZE) * ANGLES(RAD(0), RAD(60), RAD(0)) * ANGLES(RAD(-8), RAD(0), RAD(0)), 1 / Animation_Speed)
1774
				LeftHip.C0 = Clerp(LeftHip.C0, CF(-1*SIZE, -1*SIZE - 0.05*SIZE * COS(SINE / 12), -0.01*SIZE) * ANGLES(RAD(0), RAD(-80), RAD(0)) * ANGLES(RAD(-8), RAD(0), RAD(0)), 1 / Animation_Speed)
1775
			end
1776
		elseif TORSOVELOCITY > 1 and HITFLOOR ~= nil then
1777
			ANIM = "Walk"
1778
			if ATTACK == false then
1779
				RootJoint.C0 = Clerp(RootJoint.C0,ROOTC0 * CF(0*SIZE, 0*SIZE, -0.1*SIZE) * ANGLES(RAD(15), RAD(0), RAD(10 * SIN(SINE / WALKSPEEDVALUE))), 1 / Animation_Speed)
1780
				Neck.C0 = Clerp(Neck.C0, NECKC0 * CF(0, 0, 0 + ((1*SIZE) - 1)) * ANGLES(RAD(5 - 1 * SIN(SINE / (WALKSPEEDVALUE / 2))), RAD(0), RAD(-10 * SIN(SINE / WALKSPEEDVALUE))), 1/ Animation_Speed)
1781
				RightShoulder.C0 = Clerp(RightShoulder.C0, CF(1.5*SIZE, 0.5*SIZE, 0*SIZE) * ANGLES(RAD(60 * COS(SINE / WALKSPEEDVALUE)), RAD(0), RAD(5)) * RIGHTSHOULDERC0, 1 / Animation_Speed)
1782
				LeftShoulder.C0 = Clerp(LeftShoulder.C0, CF(-1.5*SIZE, 0.5*SIZE, 0*SIZE) * ANGLES(RAD(-60 * COS(SINE / WALKSPEEDVALUE)), RAD(0), RAD(-5)) * LEFTSHOULDERC0, 1 / Animation_Speed)
1783
				RightHip.C0 = Clerp(RightHip.C0, CF(1*SIZE , -1*SIZE, 0*SIZE) * ANGLES(RAD(0), RAD(80), RAD(0)) * ANGLES(RAD(0), RAD(0), RAD(-15)), 2 / Animation_Speed)
1784
				LeftHip.C0 = Clerp(LeftHip.C0, CF(-1*SIZE, -1*SIZE, 0*SIZE) * ANGLES(RAD(0), RAD(-80), RAD(0)) * ANGLES(RAD(0), RAD(0), RAD(15)), 2 / Animation_Speed)
1785
			end
1786
		end
1787
	else
1788
		Swait()
1789
		RootJoint.C0 = Clerp(RootJoint.C0,ROOTC0 * CF(0*SIZE, 0*SIZE, 0*SIZE) * ANGLES(RAD(0), RAD(0), RAD(0)), 1 / Animation_Speed)
1790
		Neck.C0 = Clerp(Neck.C0, NECKC0 * CF(0, 0, 0 + ((1*SIZE) - 1)) * ANGLES(RAD(0), RAD(0), RAD(0)), 1 / Animation_Speed)
1791
		RightShoulder.C0 = Clerp(RightShoulder.C0, CF(1.5*SIZE, 0.5*SIZE, 0*SIZE) * ANGLES(RAD(0), RAD(0), RAD(12)) * RIGHTSHOULDERC0, 1 / Animation_Speed)
1792
		LeftShoulder.C0 = Clerp(LeftShoulder.C0, CF(-1.5*SIZE, 0.5*SIZE, 0*SIZE) * ANGLES(RAD(0), RAD(0), RAD(-12)) * LEFTSHOULDERC0, 1 / Animation_Speed)
1793
		RightHip.C0 = Clerp(RightHip.C0, CF(1*SIZE, -1*SIZE, -0.01*SIZE) * ANGLES(RAD(0), RAD(90), RAD(0)) * ANGLES(RAD(0), RAD(0), RAD(0)), 1 / Animation_Speed)
1794
		LeftHip.C0 = Clerp(LeftHip.C0, CF(-1*SIZE, -1*SIZE, -0.01*SIZE) * ANGLES(RAD(0), RAD(-90), RAD(0)) * ANGLES(RAD(0), RAD(0), RAD(0)), 1 / Animation_Speed)
1795
		if #SHADES ~= 0 and ATTACK == false then
1796
			for E = 1, #SHADES do
1797
				local SHADE = SHADES[E]
1798
				if E == 1 and SHADE[1].HumanoidRootPart then
1799
					SHADE[1].HumanoidRootPart.CFrame = Clerp(SHADE[1].HumanoidRootPart.CFrame,RootPart.CFrame*CF(SHADEDIST,0,0),0.2)
1800
					SHADE[2].C0 = Clerp(SHADE[2].C0, ROOTC0 * CF(0*SIZE, 0*SIZE, 0.4 + 0.1*SIZE * SIN(SINE / 12)) * ANGLES(RAD(0), RAD(0), RAD(25)), 1 / Animation_Speed)
1801
					SHADE[3].C0 = Clerp(SHADE[3].C0, NECKC0 * CF(0, 0, 0 + ((1*SIZE) - 1)) * ANGLES(RAD(0 - 2.5 * SIN(SINE / 12)), RAD(0), RAD(-25)), 1 / Animation_Speed)
1802
					SHADE[4].C0 = Clerp(SHADE[4].C0, CF(1.5*SIZE, 0.5*SIZE, 0*SIZE) * ANGLES(RAD(30 - 7 * SIN(SINE / 6)), RAD(0), RAD(42 - 7 * COS(SINE / 12))) * ANGLES(RAD(0), RAD(60), RAD(0)) * RIGHTSHOULDERC0, 1 / Animation_Speed)
1803
					SHADE[5].C0 = Clerp(SHADE[5].C0, CF(-1.5*SIZE, 0.5*SIZE, 0*SIZE) * ANGLES(RAD(30 - 7 * SIN(SINE / 6)), RAD(0), RAD(-42 + 7 * COS(SINE / 12))) * ANGLES(RAD(0), RAD(-60), RAD(0)) * LEFTSHOULDERC0, 1 / Animation_Speed)
1804
					SHADE[6].C0 = Clerp(SHADE[6].C0, CF(1*SIZE, -1*SIZE - 0.05*SIZE * COS(SINE / 12), -0.01*SIZE) * ANGLES(RAD(-15), RAD(60), RAD(0)) * ANGLES(RAD(-8), RAD(0), RAD(0)), 1 / Animation_Speed)
1805
					SHADE[7].C0 = Clerp(SHADE[7].C0, CF(-1*SIZE, -1*SIZE - 0.05*SIZE * COS(SINE / 12), -0.01*SIZE) * ANGLES(RAD(-15), RAD(-80), RAD(0)) * ANGLES(RAD(-8), RAD(0), RAD(0)), 1 / Animation_Speed)
1806
				elseif E == 2 and SHADE[1].HumanoidRootPart then
1807
					SHADE[1].HumanoidRootPart.CFrame = Clerp(SHADE[1].HumanoidRootPart.CFrame,RootPart.CFrame*CF(-SHADEDIST,0,0),0.2)
1808
					SHADE[2].C0 = Clerp(SHADE[2].C0, ROOTC0 * CF(0*SIZE, 0*SIZE, 0.4 + 0.1*SIZE * SIN(SINE / 12)) * ANGLES(RAD(0), RAD(0), RAD(-25)), 1 / Animation_Speed)
1809
					SHADE[3].C0 = Clerp(SHADE[3].C0, NECKC0 * CF(0, 0, 0 + ((1*SIZE) - 1)) * ANGLES(RAD(0 - 2.5 * SIN(SINE / 12)), RAD(0), RAD(25)), 1 / Animation_Speed)
1810
					SHADE[4].C0 = Clerp(SHADE[4].C0, CF(1.5*SIZE, 0.5*SIZE, 0*SIZE) * ANGLES(RAD(30 - 7 * SIN(SINE / 6)), RAD(0), RAD(42 - 7 * COS(SINE / 12))) * ANGLES(RAD(0), RAD(60), RAD(0)) * RIGHTSHOULDERC0, 1 / Animation_Speed)
1811
					SHADE[5].C0 = Clerp(SHADE[5].C0, CF(-1.5*SIZE, 0.5*SIZE, 0*SIZE) * ANGLES(RAD(30 - 7 * SIN(SINE / 6)), RAD(0), RAD(-42 + 7 * COS(SINE / 12))) * ANGLES(RAD(0), RAD(-60), RAD(0)) * LEFTSHOULDERC0, 1 / Animation_Speed)
1812
					SHADE[6].C0 = Clerp(SHADE[6].C0, CF(1*SIZE, -1*SIZE - 0.05*SIZE * COS(SINE / 12), -0.01*SIZE) * ANGLES(RAD(-15), RAD(80), RAD(0)) * ANGLES(RAD(-8), RAD(0), RAD(0)), 1 / Animation_Speed)
1813
					SHADE[7].C0 = Clerp(SHADE[7].C0, CF(-1*SIZE, -1*SIZE - 0.05*SIZE * COS(SINE / 12), -0.01*SIZE) * ANGLES(RAD(-15), RAD(-60), RAD(0)) * ANGLES(RAD(-8), RAD(0), RAD(0)), 1 / Animation_Speed)
1814
				end
1815
			end
1816
		end
1817
	end
1818
	unanchor()
1819
	Humanoid.MaxHealth = 5e5
1820
	Humanoid.Health = 5e5
1821
	if Rooted == false then
1822
		Disable_Jump = false
1823
		Humanoid.WalkSpeed = Speed
1824
	elseif Rooted == true then
1825
		Disable_Jump = true
1826
		Humanoid.WalkSpeed = 0
1827
	end
1828
	for _, c in pairs(CLONE:GetChildren()) do
1829
		if c.ClassName == "Part" and c.Name ~= "Eye" then
1830
			c.Material = "Neon"
1831
			if c.Name ~= "HumanoidRootPart" then
1832
				c.Transparency = TRANS
1833
			end
1834
			c.CanCollide = false
1835
			if c:FindFirstChildOfClass("ParticleEmitter") then
1836
				c:FindFirstChildOfClass("ParticleEmitter"):remove()
1837
			end
1838
			c.Color = C3(0,0,0)
1839
			if c.Name == "Head" then
1840
				if c:FindFirstChild("face") then
1841
					c.face.Texture = "http://www.roblox.com/asset/?id=536552092"
1842
					c.face.Transparency = TRANS
1843
				end
1844
			end
1845
1846
	for _, c in pairs(Character:GetChildren()) do
1847
		if c.ClassName == "Part" and c.Name ~= "Eye" then
1848
			c.Material = "Neon"
1849
			if c ~= RootPart then
1850
				c.Transparency = TRANS
1851
			end
1852
			if c:FindFirstChildOfClass("ParticleEmitter") then
1853
				c:FindFirstChildOfClass("ParticleEmitter"):remove()
1854
			end
1855
			c.Color = C3(0,0,0)
1856
			if c == Head then
1857
				if c:FindFirstChild("face") then
1858
					c.face.Texture = "http://www.roblox.com/asset/?id=49493144"
1859
					c.face.Transparency = TRANS
1860
				end
1861
			end
1862
1863
		elseif c.ClassName == "CharacterMesh" or c.ClassName == "Accessory" or c.Name == "Body Colors" then
1864
			c:remove()
1865
		elseif (c.ClassName == "Shirt" or c.ClassName == "Pants") and c.Name ~= "Cloth" then
1866
			c:remove()
1867
		end
1868
	end
1869
	BMUSIC.SoundId = "rbxassetid://2625270724"
1870
	BMUSIC.Looped = true
1871
	BMUSIC.Pitch = 1
1872
	BMUSIC.Volume = 30
1873
	BMUSIC.Playing = true
1874
	BMUSIC.Parent = Character
1875
	Humanoid.Name = "Shadowmax"
1876
	if FORM == "Normal" then
1877
		for i = 1, #GUIS do
1878
			GUIS[i].Text = "["..ATTACKS[i].."]"
1879
		end
1880
	elseif FORM == "Colossus" then
1881
		for i = 1, #GUIS do
1882
			GUIS[i].Text = "["..ATTACKS2[i].."]"
1883
		end
1884
	elseif FORM == "Twins" then
1885
		for i = 1, #GUIS do
1886
			GUIS[i].Text = "["..ATTACKS3[i].."]"
1887
		end
1888
	end
1889
end
1890
1891
--//=================================\\
1892
--\\=================================//
1893
1894
1895
1896
1897
1898
--//====================================================\\--
1899
--||			  		 END OF SCRIPT
1900
--\\====================================================//--