View difference between Paste ID: yZKEqG9E and jCgDbPN3
SHOW: | | - or go back to the newest paste.
1
--//====================================================\\--
2
--||			   CREATED BY SHACKLUSTER
3
--\\====================================================//--
4
5
6
7
wait(0.2)
8
9
10
11
Player = game:GetService("Players").LocalPlayer
12
PlayerGui = Player.PlayerGui
13
Cam = workspace.CurrentCamera
14
Backpack = Player.Backpack
15
Character = Player.Character
16
Humanoid = Character.Humanoid
17
Mouse = Player:GetMouse()
18
RootPart = Character["HumanoidRootPart"]
19
Torso = Character["Torso"]
20
Head = Character["Head"]
21
RightArm = Character["Right Arm"]
22
LeftArm = Character["Left Arm"]
23
RightLeg = Character["Right Leg"]
24
LeftLeg = Character["Left Leg"]
25
RootJoint = RootPart["RootJoint"]
26
Neck = Torso["Neck"]
27
RightShoulder = Torso["Right Shoulder"]
28
LeftShoulder = Torso["Left Shoulder"]
29
RightHip = Torso["Right Hip"]
30
LeftHip = Torso["Left Hip"]
31
local sick = Instance.new("Sound",Character)
32
sick.SoundId = "rbxassetid://971457500"
33
sick.Looped = true
34
sick.Pitch = 1
35-
sick.Volume = 1.5
35+
sick.Volume = 1
36
sick:Play()
37
38
spawn(function()
39
    while wait() do
40
        Head.BrickColor = BrickColor.new("Black")
41
        RightArm.BrickColor = BrickColor.new("Black")
42
        LeftArm.BrickColor = BrickColor.new("Black")
43
        Torso.BrickColor = BrickColor.new("Black")
44
        RightLeg.BrickColor = BrickColor.new("Black")
45
        LeftLeg.BrickColor = BrickColor.new("Black")
46
    end
47
end)
48
49
IT = Instance.new
50
CF = CFrame.new
51
VT = Vector3.new
52
RAD = math.rad
53
C3 = Color3.new
54
UD2 = UDim2.new
55
BRICKC = BrickColor.new
56
ANGLES = CFrame.Angles
57
EULER = CFrame.fromEulerAnglesXYZ
58
COS = math.cos
59
ACOS = math.acos
60
SIN = math.sin
61
ASIN = math.asin
62
ABS = math.abs
63
MRANDOM = math.random
64
FLOOR = math.floor
65
66
67
68
69
function CreateMesh(MESH, PARENT, MESHTYPE, MESHID, TEXTUREID, SCALE, OFFSET)
70
    local NEWMESH = IT(MESH)
71
    if MESH == "SpecialMesh" then
72
        NEWMESH.MeshType = MESHTYPE
73
        if MESHID ~= "nil" and MESHID ~= "" then
74
            NEWMESH.MeshId = "http://www.roblox.com/asset/?id="..MESHID
75
        end
76
        if TEXTUREID ~= "nil" and TEXTUREID ~= "" then            
77
        end
78
    end
79
    NEWMESH.Offset = OFFSET or VT(0, 0, 0)
80
    NEWMESH.Scale = SCALE
81
    NEWMESH.Parent = PARENT
82
    return NEWMESH
83
end
84
85
function CreatePart(FORMFACTOR, PARENT, MATERIAL, REFLECTANCE, TRANSPARENCY, BRICKCOLOR, NAME, SIZE, ANCHOR)
86
	local NEWPART = IT("Part")
87
	NEWPART.formFactor = FORMFACTOR
88
	NEWPART.Reflectance = REFLECTANCE
89
	NEWPART.Transparency = TRANSPARENCY
90
	NEWPART.CanCollide = false
91
	NEWPART.Locked = true
92
	NEWPART.Anchored = true
93
	if ANCHOR == false then
94
		NEWPART.Anchored = false
95
	end
96
	NEWPART.BrickColor = BRICKC(tostring(BRICKCOLOR))
97
	NEWPART.Name = NAME
98
	NEWPART.Size = SIZE
99
	NEWPART.Position = Torso.Position
100-
Animation_Speed = 3
100+
101
	NEWPART:BreakJoints()
102
	NEWPART.Parent = PARENT
103
	return NEWPART
104
end
105
106
--//=================================\\
107
--||		  CUSTOMIZATION
108
--\\=================================//
109
110
Player_Size = 1 --Size of the player.
111
Animation_Speed = 2
112
Frame_Speed = 1 / 30 -- (1 / 10) OR (1 / 30)
113
114
local Speed = 16
115
local Effects2 = {}
116
117
--//=================================\\
118
--|| 	  END OF CUSTOMIZATION
119
--\\=================================//
120
121
	local function weldBetween(a, b)
122
	    local weldd = Instance.new("ManualWeld")
123
	    weldd.Part0 = a
124
	    weldd.Part1 = b
125
	    weldd.C0 = CFrame.new()
126
	    weldd.C1 = b.CFrame:inverse() * a.CFrame
127
	    weldd.Parent = a
128
	    return weldd
129
	end
130
131
--//=================================\\
132
--|| 	      USEFUL VALUES
133
--\\=================================//
134
135
local ROOTC0 = CF(0, 0, 0) * ANGLES(RAD(-90), RAD(0), RAD(180))
136
local NECKC0 = CF(0, 1, 0) * ANGLES(RAD(-90), RAD(0), RAD(180))
137
local RIGHTSHOULDERC0 = CF(-0.5, 0, 0) * ANGLES(RAD(0), RAD(90), RAD(0))
138
local LEFTSHOULDERC0 = CF(0.5, 0, 0) * ANGLES(RAD(0), RAD(-90), RAD(0))
139
local CHANGEDEFENSE = 0
140
local CHANGEDAMAGE = 0
141
local CHANGEMOVEMENT = 0
142
local ANIM = "Idle"
143
local ATTACK = false
144
local EQUIPPED = false
145
local HOLD = false
146
local COMBO = 1
147
local Rooted = false
148
local SINE = 0
149
local KEYHOLD = false
150
local CHANGE = 2 / Animation_Speed
151
local WALKINGANIM = false
152
local WALK = 0
153
local VALUE1 = false
154
local VALUE2 = false
155
local ROBLOXIDLEANIMATION = IT("Animation")
156
ROBLOXIDLEANIMATION.Name = "Roblox Idle Animation"
157
ROBLOXIDLEANIMATION.AnimationId = "http://www.roblox.com/asset/?id=180435571"
158
--ROBLOXIDLEANIMATION.Parent = Humanoid
159
local WEAPONGUI = IT("ScreenGui", PlayerGui)
160
WEAPONGUI.Name = "Weapon GUI"
161
local Effects = IT("Folder", Character)
162
Effects.Name = "Effects"
163
local ANIMATOR = Humanoid.Animator
164
local ANIMATE = Character.Animate
165
local HITPLAYERSOUNDS = {--[["199149137", "199149186", "199149221", "199149235", "199149269", "199149297"--]]"263032172", "263032182", "263032200", "263032221", "263032252", "263033191"}
166
local HITARMORSOUNDS = {"199149321", "199149338", "199149367", "199149409", "199149452"}
167
local HITWEAPONSOUNDS = {"199148971", "199149025", "199149072", "199149109", "199149119"}
168
local HITBLOCKSOUNDS = {"199148933", "199148947"}
169
local UNANCHOR = true
170
171
local SKILLTEXTCOLOR = C3(0,0,0)
172
173
--//=================================\\
174
--\\=================================//
175
176
function WACKYEFFECT(Table)
177
	local TYPE = (Table.EffectType or "Sphere")
178
	local SIZE = (Table.Size or VT(1,1,1))
179
	local ENDSIZE = (Table.Size2 or VT(0,0,0))
180
	local TRANSPARENCY = (Table.Transparency or 0)
181
	local ENDTRANSPARENCY = (Table.Transparency2 or 1)
182
	local CFRAME = (Table.CFrame or Torso.CFrame)
183
	local MOVEDIRECTION = (Table.MoveToPos or nil)
184
	local ROTATION1 = (Table.RotationX or 0)
185
	local ROTATION2 = (Table.RotationY or 0)
186
	local ROTATION3 = (Table.RotationZ or 0)
187
	local MATERIAL = (Table.Material or "Glass")
188
	local COLOR = (Table.Color or C3(1,1,1))
189
	local TIME = (Table.Time or 45)
190
	local SOUNDID = (Table.SoundID or nil)
191
	local SOUNDPITCH = (Table.SoundPitch or nil)
192
	local SOUNDVOLUME = (Table.SoundVolume or nil)
193
end
194
--//=================================\\
195
--|| SAZERENOS' ARTIFICIAL HEARTBEAT
196
--\\=================================//
197
198
ArtificialHB = Instance.new("BindableEvent", script)
199
ArtificialHB.Name = "ArtificialHB"
200
201
script:WaitForChild("ArtificialHB")
202
203
frame = Frame_Speed
204
tf = 0
205
allowframeloss = false
206
tossremainder = false
207
lastframe = tick()
208
script.ArtificialHB:Fire()
209
210
game:GetService("RunService").Heartbeat:connect(function(s, p)
211
	tf = tf + s
212
	if tf >= frame then
213
		if allowframeloss then
214
			script.ArtificialHB:Fire()
215
			lastframe = tick()
216
		else
217
			for i = 1, math.floor(tf / frame) do
218
				script.ArtificialHB:Fire()
219
			end
220
		lastframe = tick()
221
		end
222
		if tossremainder then
223
			tf = 0
224
		else
225
			tf = tf - frame * math.floor(tf / frame)
226
		end
227
	end
228
end)
229
230
--//=================================\\
231
--\\=================================//
232
233
234
Character["Left Leg"].Transparency = 0.5
235
Character["Head"].Transparency = 0.5
236
Character["Right Leg"].Transparency = 0.5
237
Character["Torso"].Transparency = 0.5
238
Character["Left Arm"].Transparency = 0.5
239
Character["Right Arm"].Transparency = 0.5
240
241
242
--//=================================\\
243
--|| 	      SOME FUNCTIONS
244
--\\=================================//
245
246
function Raycast(POSITION, DIRECTION, RANGE, IGNOREDECENDANTS)
247
	return workspace:FindPartOnRay(Ray.new(POSITION, DIRECTION.unit * RANGE), IGNOREDECENDANTS)
248
end
249
250
function PositiveAngle(NUMBER)
251
	if NUMBER >= 0 then
252
		NUMBER = 0
253
	end
254
	return NUMBER
255
end
256
257
function NegativeAngle(NUMBER)
258
	if NUMBER <= 0 then
259
		NUMBER = 0
260
	end
261
	return NUMBER
262
end
263
264
function Swait(NUMBER)
265
	if NUMBER == 0 or NUMBER == nil then
266
		ArtificialHB.Event:wait()
267
	else
268
		for i = 1, NUMBER do
269
			ArtificialHB.Event:wait()
270
		end
271
	end
272
end
273
274
function QuaternionFromCFrame(cf)
275
	local mx, my, mz, m00, m01, m02, m10, m11, m12, m20, m21, m22 = cf:components()
276
	local trace = m00 + m11 + m22
277
	if trace > 0 then 
278
		local s = math.sqrt(1 + trace)
279
		local recip = 0.5 / s
280
		return (m21 - m12) * recip, (m02 - m20) * recip, (m10 - m01) * recip, s * 0.5
281
	else
282
		local i = 0
283
		if m11 > m00 then
284
			i = 1
285
		end
286
		if m22 > (i == 0 and m00 or m11) then
287
			i = 2
288
		end
289
		if i == 0 then
290
			local s = math.sqrt(m00 - m11 - m22 + 1)
291
			local recip = 0.5 / s
292
			return 0.5 * s, (m10 + m01) * recip, (m20 + m02) * recip, (m21 - m12) * recip
293
		elseif i == 1 then
294
			local s = math.sqrt(m11 - m22 - m00 + 1)
295
			local recip = 0.5 / s
296
			return (m01 + m10) * recip, 0.5 * s, (m21 + m12) * recip, (m02 - m20) * recip
297
		elseif i == 2 then
298
			local s = math.sqrt(m22 - m00 - m11 + 1)
299
			local recip = 0.5 / s return (m02 + m20) * recip, (m12 + m21) * recip, 0.5 * s, (m10 - m01) * recip
300
		end
301
	end
302
end
303
 
304
function QuaternionToCFrame(px, py, pz, x, y, z, w)
305
	local xs, ys, zs = x + x, y + y, z + z
306
	local wx, wy, wz = w * xs, w * ys, w * zs
307
	local xx = x * xs
308
	local xy = x * ys
309
	local xz = x * zs
310
	local yy = y * ys
311
	local yz = y * zs
312
	local zz = z * zs
313
	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))
314
end
315
 
316
function QuaternionSlerp(a, b, t)
317
	local cosTheta = a[1] * b[1] + a[2] * b[2] + a[3] * b[3] + a[4] * b[4]
318
	local startInterp, finishInterp;
319
	if cosTheta >= 0.0001 then
320
		if (1 - cosTheta) > 0.0001 then
321
			local theta = ACOS(cosTheta)
322
			local invSinTheta = 1 / SIN(theta)
323
			startInterp = SIN((1 - t) * theta) * invSinTheta
324
			finishInterp = SIN(t * theta) * invSinTheta
325
		else
326
			startInterp = 1 - t
327
			finishInterp = t
328
		end
329
	else
330
		if (1 + cosTheta) > 0.0001 then
331
			local theta = ACOS(-cosTheta)
332
			local invSinTheta = 1 / SIN(theta)
333
			startInterp = SIN((t - 1) * theta) * invSinTheta
334
			finishInterp = SIN(t * theta) * invSinTheta
335
		else
336
			startInterp = t - 1
337
			finishInterp = t
338
		end
339
	end
340
	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
341
end
342
343
function Clerp(a, b, t)
344
	local qa = {QuaternionFromCFrame(a)}
345
	local qb = {QuaternionFromCFrame(b)}
346
	local ax, ay, az = a.x, a.y, a.z
347
	local bx, by, bz = b.x, b.y, b.z
348
	local _t = 1 - t
349
	return QuaternionToCFrame(_t * ax + t * bx, _t * ay + t * by, _t * az + t * bz, QuaternionSlerp(qa, qb, t))
350
end
351
352
function CreateFrame(PARENT, TRANSPARENCY, BORDERSIZEPIXEL, POSITION, SIZE, COLOR, BORDERCOLOR, NAME)
353
	local frame = IT("Frame")
354
	frame.BackgroundTransparency = TRANSPARENCY
355
	frame.BorderSizePixel = BORDERSIZEPIXEL
356
	frame.Position = POSITION
357
	frame.Size = SIZE
358
	frame.BackgroundColor3 = COLOR
359
	frame.BorderColor3 = BORDERCOLOR
360
	frame.Name = NAME
361
	frame.Parent = PARENT
362
	return frame
363
end
364
365
function CreateLabel(PARENT, TEXT, TEXTCOLOR, TEXTFONTSIZE, TEXTFONT, TRANSPARENCY, BORDERSIZEPIXEL, STROKETRANSPARENCY, NAME)
366
	local label = IT("TextLabel")
367
	label.BackgroundTransparency = 1
368
	label.Size = UD2(1, 0, 1, 0)
369
	label.Position = UD2(0, 0, 0, 0)
370
	label.TextColor3 = TEXTCOLOR
371
	label.TextStrokeTransparency = STROKETRANSPARENCY
372
	label.TextTransparency = TRANSPARENCY
373
	label.FontSize = TEXTFONTSIZE
374
	label.Font = TEXTFONT
375
	label.BorderSizePixel = BORDERSIZEPIXEL
376
	label.TextScaled = false
377
	label.Text = TEXT
378
	label.Name = NAME
379
	label.Parent = PARENT
380
	return label
381
end
382
383
function NoOutlines(PART)
384
	PART.TopSurface, PART.BottomSurface, PART.LeftSurface, PART.RightSurface, PART.FrontSurface, PART.BackSurface = 10, 10, 10, 10, 10, 10
385
end
386
387
388
function CreateWeldOrSnapOrMotor(TYPE, PARENT, PART0, PART1, C0, C1)
389
	local NEWWELD = IT(TYPE)
390
	NEWWELD.Part0 = PART0
391
	NEWWELD.Part1 = PART1
392
	NEWWELD.C0 = C0
393
	NEWWELD.C1 = C1
394
	NEWWELD.Parent = PARENT
395
	return NEWWELD
396
end
397
398
function CreateSound(ID, PARENT, VOLUME, PITCH)
399
	local NEWSOUND = nil
400
	coroutine.resume(coroutine.create(function()
401
		NEWSOUND = IT("Sound", PARENT)
402
		NEWSOUND.Volume = VOLUME
403
		NEWSOUND.Pitch = PITCH
404
		NEWSOUND.SoundId = "http://www.roblox.com/asset/?id="..ID
405
		Swait()
406
		NEWSOUND:play()
407
		game:GetService("Debris"):AddItem(NEWSOUND, 10)
408
	end))
409
	return NEWSOUND
410
end
411
412
function CFrameFromTopBack(at, top, back)
413
	local right = top:Cross(back)
414
	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)
415
end
416
417
function CreateSwirl(SIZE,WAIT,CFRAME,DOESROT,ROT,COLOR,GROW)
418
	local wave = CreatePart(3, Effects, "Neon", 0, 0.5, BRICKC(COLOR), "Effect", VT(0,0,0))
419
	wave.Color = COLOR
420
	local mesh = CreateMesh("SpecialMesh", wave, "FileMesh", "1051557", "", SIZE, VT(0,0,0))
421
	wave.CFrame = CFRAME
422
	coroutine.resume(coroutine.create(function(PART)
423
		for i = 1, WAIT do
424
			Swait()
425
			mesh.Scale = mesh.Scale + GROW
426
			mesh.Offset = VT(0,0,-(mesh.Scale.X/8))
427
			if DOESROT == true then
428
				wave.CFrame = wave.CFrame * CFrame.fromEulerAnglesXYZ(0,ROT,0)
429
			end
430
			wave.Transparency = wave.Transparency + (0.5/WAIT)
431
			if wave.Transparency > 0.99 then
432
				wave:remove()
433
			end
434
		end
435
	end))
436
end
437
438
function MagicSphere(SIZE,WAIT,CFRAME,COLOR,GROW)
439
	local wave = CreatePart(3, Effects, "Neon", 0, 0, BRICKC(COLOR), "Effect", VT(1,1,1), true)
440
	wave.Color = COLOR
441
	local mesh = CreateMesh("SpecialMesh", wave, "Sphere", "", "", SIZE, VT(0,0,0))
442
	wave.CFrame = CFRAME
443
	coroutine.resume(coroutine.create(function(PART)
444
		for i = 1, WAIT do
445
			Swait()
446
			mesh.Scale = mesh.Scale + GROW
447
			wave.Transparency = wave.Transparency + (1/WAIT)
448
			if wave.Transparency > 0.99 then
449
				wave:remove()
450
			end
451
		end
452
	end))
453
end
454
455
function Slice(KIND,SIZE,WAIT,CFRAME,COLOR,GROW)
456
	local wave = CreatePart(3, Effects, "Neon", 0, 0.5, BRICKC(COLOR), "Effect", VT(1,1,1), true)
457
	local mesh = nil
458
	if KIND == "Base" then
459
 		mesh = CreateMesh("SpecialMesh", wave, "FileMesh", "448386996", "", VT(0,SIZE/10,SIZE/10), VT(0,0,0))
460
	elseif KIND == "Thin" then
461
 		mesh = CreateMesh("SpecialMesh", wave, "FileMesh", "662586858", "", VT(SIZE/10,0,SIZE/10), VT(0,0,0))
462
	elseif KIND == "Round" then
463
 		mesh = CreateMesh("SpecialMesh", wave, "FileMesh", "662585058", "", VT(SIZE/10,0,SIZE/10), VT(0,0,0))
464
	end
465
	wave.CFrame = CFRAME
466
	coroutine.resume(coroutine.create(function(PART)
467
		for i = 1, WAIT do
468
			Swait()
469
			mesh.Scale = mesh.Scale + GROW/10
470
			wave.Transparency = wave.Transparency + (0.5/WAIT)
471
			if wave.Transparency > 0.99 then
472
				wave:remove()
473
			end
474
		end
475
	end))
476
end
477
478
function MakeForm(PART,TYPE)
479
	if TYPE == "Cyl" then
480
		local MSH = IT("CylinderMesh",PART)
481
	elseif TYPE == "Ball" then
482
		local MSH = IT("SpecialMesh",PART)
483
		MSH.MeshType = "Sphere"
484
	elseif TYPE == "Wedge" then
485
		local MSH = IT("SpecialMesh",PART)
486
		MSH.MeshType = "Wedge"
487
	end
488
end
489
490
function CheckTableForString(Table, String)
491
	for i, v in pairs(Table) do
492
		if string.find(string.lower(String), string.lower(v)) then
493
			return true
494
		end
495
	end
496
	return false
497
end
498
499
function CheckIntangible(Hit)
500
	local ProjectileNames = {"Water", "Arrow", "Projectile", "Effect", "Rail", "Lightning", "Bullet"}
501
	if Hit and Hit.Parent then
502
		if ((not Hit.CanCollide or CheckTableForString(ProjectileNames, Hit.Name)) and not Hit.Parent:FindFirstChild("Humanoid")) then
503
			return true
504
		end
505
	end
506
	return false
507
end
508
509
Debris = game:GetService("Debris")
510
511
function CastZapRay(StartPos, Vec, Length, Ignore, DelayIfHit)
512
	local Direction = CFrame.new(StartPos, Vec).lookVector
513
	local Ignore = ((type(Ignore) == "table" and Ignore) or {Ignore})
514
	local RayHit, RayPos, RayNormal = game:GetService("Workspace"):FindPartOnRayWithIgnoreList(Ray.new(StartPos, Direction * Length), Ignore)
515
	if RayHit and CheckIntangible(RayHit) then
516
		if DelayIfHit then
517
			wait()
518
		end
519
		RayHit, RayPos, RayNormal = CastZapRay((RayPos + (Vec * 0.01)), Vec, (Length - ((StartPos - RayPos).magnitude)), Ignore, DelayIfHit)
520
	end
521
	return RayHit, RayPos, RayNormal
522
end
523
524
function FireArc(Part,ToLocation,AmountOfTime,Height,DoesCourontine)
525
	if DoesCourontine == false then
526
		local Direction = CF(Part.Position,ToLocation)
527
		local Distance = (Part.Position - ToLocation).magnitude
528
		for i = 1, AmountOfTime do
529
			Swait()
530
			Part.CFrame = Direction*CF(0,(AmountOfTime/200)+((AmountOfTime/Height)-((i*2)/Height)),-Distance/AmountOfTime)
531
			Direction = Part.CFrame
532
		end
533
		Part:remove()
534
	elseif DoesCourontine == true then
535
		coroutine.resume(coroutine.create(function()
536
			local Direction = CF(Part.Position,ToLocation)
537
			local Distance = (Part.Position - ToLocation).magnitude
538
			for i = 1, AmountOfTime do
539
				Swait()
540
				Part.CFrame = Direction*CF(0,(AmountOfTime/200)+((AmountOfTime/Height)-((i*2)/Height)),-Distance/AmountOfTime)
541
				Direction = Part.CFrame
542
			end
543
			Part:remove()
544
		end))
545
	end
546
end
547
548
function turnto(position)
549
	RootPart.CFrame=CFrame.new(RootPart.CFrame.p,VT(position.X,RootPart.Position.Y,position.Z)) * CFrame.new(0, 0, 0)
550
end
551
552
--//=================================\\
553
--||	     WEAPON CREATION
554
--\\=================================//
555
556
557
558
function MakeForm(PART,TYPE)
559
	if TYPE == "Cyl" then
560
		local MSH = IT("CylinderMesh",PART)
561
	elseif TYPE == "Ball" then
562
		local MSH = IT("SpecialMesh",PART)
563
		MSH.MeshType = "Sphere"
564
	elseif TYPE == "Wedge" then
565
		local MSH = IT("SpecialMesh",PART)
566
		MSH.MeshType = "Wedge"
567
	end
568
end
569
570
Debris = game:GetService("Debris")
571
572
function CastProperRay(StartPos, EndPos, Distance, Ignore)
573
	local DIRECTION = CF(StartPos,EndPos).lookVector
574
	return Raycast(StartPos, DIRECTION, Distance, Ignore)
575
end
576
577
function turnto(position)
578
	RootPart.CFrame=CFrame.new(RootPart.CFrame.p,VT(position.X,RootPart.Position.Y,position.Z)) * CFrame.new(0, 0, 0)
579
end
580
581
function SpawnTrail(FROM,TO,BIG)
582
	local TRAIL = CreatePart(3, Effects, "Glass", 0, 0.5, "Institutional white", "Trail", VT(0,0,0))
583
	MakeForm(TRAIL,"Cyl")
584
	local DIST = (FROM - TO).Magnitude
585
	if BIG == true then
586
		TRAIL.Size = VT(0.5,DIST,0.5)
587
	else
588
		TRAIL.Size = VT(0.25,DIST,0.25)
589
	end
590
	TRAIL.CFrame = CF(FROM, TO) * CF(0, 0, -DIST/2) * ANGLES(RAD(90),RAD(0),RAD(0))
591
	coroutine.resume(coroutine.create(function()
592
		for i = 1, 5 do
593
			Swait()
594
			TRAIL.Transparency = TRAIL.Transparency + 0.1
595
		end
596
		TRAIL:remove()
597
	end))
598
end
599
600
local asd = Instance.new("ParticleEmitter")
601
asd.Color = ColorSequence.new(Color3.new(0.05, 0, 0), Color3.new(0, 0, 0))
602
asd.LightEmission = .1
603
asd.Texture = "http://www.roblox.com/asset/?ID=291880914"
604
aaa = NumberSequence.new({NumberSequenceKeypoint.new(0, 0.6),NumberSequenceKeypoint.new(1, 2)})
605
bbb = NumberSequence.new({NumberSequenceKeypoint.new(0, 1),NumberSequenceKeypoint.new(0.0636, 0), NumberSequenceKeypoint.new(1, 1)})
606
asd.Transparency = bbb
607
asd.Size = aaa
608
asd.ZOffset = .9
609
asd.Acceleration = Vector3.new(0, -15, 0)
610
asd.LockedToPart = false
611
asd.EmissionDirection = "Back"
612
asd.Lifetime = NumberRange.new(1, 2)
613
asd.Rotation = NumberRange.new(-100, 100)
614
asd.RotSpeed = NumberRange.new(-100, 100)
615
asd.Speed = NumberRange.new(10)
616
asd.Enabled = false
617
asd.VelocitySpread = 999
618
 
619
function getbloody(victim,amount)
620
    local PART = CreatePart(3, Effects, "Metal", 0, 1, "Mid gray", "Blood", victim.Size)
621
    PART.CFrame = victim.CFrame
622
    local HITPLAYERSOUNDS = {"356551938","264486467"}
623
    Debris:AddItem(PART,5)
624
    CreateSound(HITPLAYERSOUNDS[MRANDOM(1, #HITPLAYERSOUNDS)], PART, 1, (math.random(8,12)/10))
625
    CreateSound(HITPLAYERSOUNDS[MRANDOM(1, #HITPLAYERSOUNDS)], PART, 1, (math.random(8,12)/10))
626
    CreateSound(HITPLAYERSOUNDS[MRANDOM(1, #HITPLAYERSOUNDS)], PART, 1, (math.random(8,12)/10))
627
    local prtcl = asd:Clone()
628
    prtcl.Parent = PART
629
    prtcl:Emit(amount*10)
630
end
631
 
632
local Particle = IT("ParticleEmitter",nil)
633
Particle.Enabled = false
634
Particle.Transparency = NumberSequence.new({NumberSequenceKeypoint.new(0,1),NumberSequenceKeypoint.new(0.3,0.95),NumberSequenceKeypoint.new(1,1)})
635
Particle.LightEmission = 0.5
636
Particle.Rate = 150
637
Particle.ZOffset = 1
638
Particle.Rotation = NumberRange.new(-180, 180)
639
Particle.RotSpeed = NumberRange.new(-180, 180)
640
Particle.Texture = "http://www.roblox.com/asset/?id=304437537"
641
Particle.Color = ColorSequence.new(C3(1,0,0),C3(0.4,0,0))
642
 
643
--ParticleEmitter({Speed = 5, Drag = 0, Size1 = 1, Size2 = 5, Lifetime1 = 1, Lifetime2 = 1.5, Parent = Torso, Emit = 100, Offset = 360, Enabled = false})
644
function ParticleEmitter(Table)
645
    local PRTCL = Particle:Clone()
646
    local Speed = Table.Speed or 5.01
647
    local Drag = Table.Drag or 0
648
    local Size1 = Table.Size1 or 1
649
    local Size2 = Table.Size2 or 5
650
    local Lifetime1 = Table.Lifetime1 or 1
651
    local Lifetime2 = Table.Lifetime2 or 1.55
652
    local Parent = Table.Parent or Torso
653
    local Emit = Table.Emit or 100
654
    local Offset = Table.Offset or 360
655
    local Acel = Table.Acel or VT(0,0,0)
656
    local Enabled = Table.Enabled or false
657
    PRTCL.Parent = Parent
658
    PRTCL.Size = NumberSequence.new(Size1,Size2)
659
    PRTCL.Lifetime = NumberRange.new(Lifetime1,Lifetime2)
660
    PRTCL.Speed = NumberRange.new(Speed)
661
    PRTCL.VelocitySpread = Offset
662
    PRTCL.Drag = Drag
663
    PRTCL.Acceleration = Acel
664
    if Enabled == false then
665
        PRTCL:Emit(Emit)
666
        Debris:AddItem(PRTCL,Lifetime2)
667
    else
668
        PRTCL.Enabled = true
669
    end
670
    return PRTCL
671
end
672
673
local A = IT("Attachment",RightBarrel)
674
A.Position = VT(0,-2.5,0)
675
local B = IT("Attachment",RightBarrel)
676
B.Position = VT(0,2.5,0)
677
local Trail = IT("Trail",RightBarrel)
678
Trail.Attachment0 = A
679
Trail.Attachment1 = B
680
Trail.Lifetime = 0.5
681
Trail.Color = ColorSequence.new(BRICKC"Institutional white".Color)
682
Trail.Transparency = NumberSequence.new(0, 1)
683
Trail.Enabled = false
684
685
local PRT = ParticleEmitter({Speed = 0.3, Drag = 3, Size1 = 0.1, Size2 = 0.3, Lifetime1 = 0.2, Lifetime2 = 1, Parent = RightLeg, Emit = 100, Offset = 360, Enabled = true})
686
PRT.LockedToPart = true
687
local PRT = ParticleEmitter({Speed = 0.3, Drag = 3, Size1 = 0.1, Size2 = 0.3, Lifetime1 = 0.2, Lifetime2 = 1, Parent = LeftLeg, Emit = 100, Offset = 360, Enabled = true})
688
PRT.LockedToPart = true
689
local PRT = ParticleEmitter({Speed = 0.3, Drag = 3, Size1 = 0.1, Size2 = 0.3, Lifetime1 = 0.3, Lifetime2 = 1.5, Parent = Torso, Emit = 100, Offset = 360, Enabled = true})
690
PRT.LockedToPart = true
691
local PRT = ParticleEmitter({Speed = 0.3, Drag = 3, Size1 = 0.1, Size2 = 0.3, Lifetime1 = 0.2, Lifetime2 = 1, Parent = RightArm, Emit = 100, Offset = 360, Enabled = true})
692
PRT.LockedToPart = true
693
local PRT = ParticleEmitter({Speed = 0.3, Drag = 3, Size1 = 0.1, Size2 = 0.3, Lifetime1 = 0.2, Lifetime2 = 1, Parent = LeftArm, Emit = 100, Offset = 360, Enabled = true})
694
PRT.LockedToPart = true
695
696
for i = 1, 15 do
697
	local FACE = CreatePart(3, Character, "Fabric", 0, 0+(i-1)/15.2, "Dark stone grey", "FaceGradient", VT(1.01,0.58,1.01),false)
698
	FACE.Color = C3(0,0,0)
699
	Head:FindFirstChildOfClass("SpecialMesh"):Clone().Parent = FACE
700
	CreateWeldOrSnapOrMotor("Weld", Head, Head, FACE, CF(0,0.35-(i-1)/35,0), CF(0, 0, 0))
701
end
702
for _, c in pairs(Character:GetChildren()) do
703
	if c.ClassName == "Part" and c.Name ~= "FaceGradient" and c.Name ~= "Hat" and c.Name ~= "Gem" then
704
		c.Material = "Glass"
705-
tecks2.Text = "Ghost"
705+
706
			c:FindFirstChildOfClass("ParticleEmitter"):remove()
707
		end
708
		c.Color = C3(1,1,1)
709
		if c == Head then
710
			if c:FindFirstChild("face") then
711
				c.face:remove()
712
			end
713
		end
714
	elseif c.ClassName == "CharacterMesh" or c.ClassName == "Accessory" or c.ClassName == "Hat" or c.Name == "Body Colors" then
715
		c:remove()
716
	elseif (c.ClassName == "Shirt" or c.ClassName == "Pants") and c.Name ~= "Cloth" then
717
		c:remove()
718
	end
719
end
720
local BODY = {}
721
for _, c in pairs(Character:GetDescendants()) do
722
	if c:IsA("BasePart") and c.Name ~= "Handle" then
723
		if c ~= RootPart and c ~= Torso and c ~= Head and c ~= RightArm and c ~= LeftArm and c ~= RightLeg and c ~= LeftLeg then
724
			c.CustomPhysicalProperties = PhysicalProperties.new(0, 0, 0, 0, 0)
725
		end
726
		table.insert(BODY,{c,c.Parent,c.Material,c.Color,c.Transparency})
727
	elseif c:IsA("JointInstance") then
728
		table.insert(BODY,{c,c.Parent,nil,nil,nil})
729
	end
730
end
731
for e = 1, #BODY do
732
	if BODY[e] ~= nil then
733
		local STUFF = BODY[e]
734
		local PART = STUFF[1]
735
		local PARENT = STUFF[2]
736
		local MATERIAL = STUFF[3]
737
		local COLOR = STUFF[4]
738
		local TRANSPARENCY = STUFF[5]
739
		if PART.ClassName == "Part" and PART ~= RootPart then
740
			PART.Material = MATERIAL
741
			PART.Color = COLOR
742
			PART.Transparency = TRANSPARENCY
743
		end
744
		PART.AncestryChanged:Connect(function()
745
			PART.Parent = PARENT
746
		end)
747
	end
748
end
749
function refit()
750
	for e = 1, #BODY do
751
		if BODY[e] ~= nil then
752
			local STUFF = BODY[e]
753
			local PART = STUFF[1]
754
			local PARENT = STUFF[2]
755
			local MATERIAL = STUFF[3]
756
			local COLOR = STUFF[4]
757
			local TRANSPARENCY = STUFF[5]
758
			if PART.ClassName == "Part" and PART ~= RootPart then
759
				PART.Material = MATERIAL
760
				PART.Color = COLOR
761
				PART.Transparency = TRANSPARENCY
762
			end
763
		end
764
	end
765
end
766
767
--//=================================\\
768
--||	     WEAPON CREATION 2
769
--\\=================================//
770
771
local naeeym2 = Instance.new("BillboardGui",Character)
772
naeeym2.AlwaysOnTop = true
773
naeeym2.Size = UDim2.new(5,35,2,15)
774
naeeym2.StudsOffset = Vector3.new(0,3,0)
775
naeeym2.Adornee = Character.Head
776
naeeym2.Name = "Name"
777
naeeym2.PlayerToHideFrom = Player
778
local tecks2 = Instance.new("TextLabel",naeeym2)
779
tecks2.BackgroundTransparency = 1
780
tecks2.TextScaled = true
781
tecks2.BorderSizePixel = 0
782
tecks2.Text = "..."
783
tecks2.Font = "Fantasy"
784
tecks2.TextSize = 30
785
tecks2.TextStrokeTransparency = 0
786
tecks2.TextColor3 = Color3.new(0,0,0)
787
tecks2.TextStrokeColor3 = Color3.new(0.3,0,0)
788
tecks2.Size = UDim2.new(1,0,0.5,0)
789
tecks2.Parent = naeeym2
790
791
function Transparency(TRANS)
792
	tecks2.TextTransparency = TRANS
793
	tecks2.TextStrokeTransparency = TRANS
794
	for _, c in pairs(Character:GetChildren()) do
795
		if c.ClassName == "Part" and c ~= RootPart then
796
			c.Transparency = TRANS
797
			if c:FindFirstChildOfClass("Decal") then
798
				c:FindFirstChildOfClass("Decal").Transparency = TRANS
799
			end
800
		elseif c.ClassName == "Accessory" then
801
			c.Handle.Transparency = TRANS
802
		elseif c.ClassName == "Model" then
803
			for _, q in pairs(c:GetChildren()) do
804
				if q.ClassName == "Part" then
805
					q.Transparency = TRANS
806
					if q:FindFirstChildOfClass("Decal") then
807
						q:FindFirstChildOfClass("Decal").Transparency = TRANS
808
					end
809
				end
810
			end
811
		end
812
	end
813
end
814
815
function ApplyAoE(POSITION,RANGE,BRUTAL)
816
	local CHILDREN = workspace:GetDescendants()
817
	for index, CHILD in pairs(CHILDREN) do
818
		if CHILD.ClassName == "Model" and CHILD ~= Character then
819
			local HUM = CHILD:FindFirstChildOfClass("Humanoid")
820
			if HUM then
821
				local TORSO = CHILD:FindFirstChild("Torso") or CHILD:FindFirstChild("UpperTorso")
822
				if TORSO then
823
					if (TORSO.Position - POSITION).Magnitude <= RANGE then
824
						if BRUTAL == true then
825
							Kill(CHILD)
826
						else
827
							CHILD:BreakJoints()
828
                            CHILD.Anchored = true
829
						end
830
					end
831
				end
832
			end
833
		end
834
	end
835
end
836
837
Humanoid.Died:connect(function()
838
	Humanoid.Parent = nil
839
	Humanoid.MaxHealth = "inf"
840
	Humanoid.Health = "inf"
841
	refit()
842
	Humanoid.Parent = Character
843
	CreateSound("215395388", Head, 10, 1)
844
end)
845
846
local SKILL1FRAME = CreateFrame(WEAPONGUI, 1, 2, UD2(0.23, 0, 0.80, 0), UD2(0.26, 0, 0.07, 0), C3(0,0,0), C3(0, 0, 0), "Skill 1 Frame")
847
local SKILL2FRAME = CreateFrame(WEAPONGUI, 1, 2, UD2(0.50, 0, 0.80, 0), UD2(0.26, 0, 0.07, 0), C3(0,0,0), C3(0, 0, 0), "Skill 2 Frame")
848
local SKILL3FRAME = CreateFrame(WEAPONGUI, 1, 2, UD2(0.365, 0, 0.1, 0), UD2(0.26, 0, 0.07, 0), C3(0,0,0), C3(0, 0, 0), "Skill 3 Frame")
849
local SKILLEFRAME = CreateFrame(WEAPONGUI, 1, 2, UD2(0.365, 0, 0.9, 0), UD2(0.26, 0, 0.07, 0), C3(0,0,0), C3(0, 0, 0), "Skill Warp Frame")
850
local SKILL5FRAME = CreateFrame(WEAPONGUI, 1, 2, UD2(0.365, 0, 0.5, 0), UD2(0.26, 0, 0.07, 0), C3(0,0,0), C3(0, 0, 0), "Skill 5 Frame")
851
852
local SKILL1TEXT = CreateLabel(SKILL1FRAME, "[Z] Ghost Blast", SKILLTEXTCOLOR, 7, "Fantasy", 0, 2, 0, "Text 1")
853
local SKILL2TEXT = CreateLabel(SKILL2FRAME, "[B] Ghost Cutter", SKILLTEXTCOLOR, 7, "Fantasy", 0, 2, 0, "Text 2")
854
local SKILL3TEXT = CreateLabel(SKILL3FRAME, "[C] Ghost Destruction", SKILLTEXTCOLOR, 10, "Fantasy", 0, 2, 0, "Text 3")
855
local SKILLETEXT = CreateLabel(SKILLEFRAME, "[Q] Ghost Warp", SKILLTEXTCOLOR, 7, "Fantasy", 0, 2, 0, "Text Warp")
856
local SKILL5TEXT = CreateLabel(SKILL5FRAME, "[E] Ghost Star Destruction", SKILLTEXTCOLOR, 10, "Fantasy", 0, 2, 0, "Text 5")
857
858
--//=================================\\
859
--||			DAMAGING
860
--\\=================================//
861
862
863
864
865
function Kill(Char)
866
	local NewCharacter = IT("Model",Effects)
867
	NewCharacter.Name = "Ow im ded ;-;"
868
	for _, c in pairs(Char:GetDescendants()) do
869
		if c:IsA("BasePart") and c.Transparency == 0 then
870
			if c.Parent == Char then
871
				getbloody(c,5)
872
			end
873
			c:BreakJoints()
874
			c.Material = "Glass"
875
			c.Color = C3(255,255,255)
876
			c.CanCollide = false
877
			c.Transparency = 0.5
878
                        c.Anchored = true
879
			if c:FindFirstChildOfClass("SpecialMesh") then
880
				c:FindFirstChildOfClass("SpecialMesh").TextureId = ""
881
			end
882
			if c.Name == "Head" then
883
				c:ClearAllChildren()
884
				c.Size = VT(c.Size.Y,c.Size.Y,c.Size.Y)
885
			end
886
			if c.ClassName == "MeshPart" then
887
				c.TextureID = ""
888
			end
889
			if c:FindFirstChildOfClass("BodyPosition") then
890
				c:FindFirstChildOfClass("BodyPosition"):remove()
891
			end
892
			if c:FindFirstChildOfClass("ParticleEmitter") then
893
				c:FindFirstChildOfClass("ParticleEmitter"):remove()
894
			end
895
			c.Parent = NewCharacter
896
			c.Name = "DeadPart"
897
			c.Velocity = VT(MRANDOM(-45,45),MRANDOM(-45,45),MRANDOM(-45,45))/15
898
			c.RotVelocity = VT(MRANDOM(-45,45),MRANDOM(-15,85),MRANDOM(-45,45))
899
		end
900
	end
901
	Debris:AddItem(NewCharacter,5)
902
end
903
904
905
906
function killnearest(position,range,maxstrength)
907
	for i,v in ipairs(workspace:GetChildren()) do
908
	local body = v:GetChildren()
909
		for part = 1, #body do
910
			if((body[part].ClassName == "Part" or body[part].ClassName == "MeshPart") and v ~= Character) then
911
				if(body[part].Position - position).Magnitude < range then
912
					if v.ClassName == "Model" then
913
						v:BreakJoints()
914
					end
915
					--table.insert(Effects2,{body[part],"Disappear",0.02,2,2,2,2})
916
					local bv = Instance.new("BodyVelocity") 
917
					bv.maxForce = Vector3.new(1e9, 1e9, 1e9)
918
					bv.velocity = CF(position,body[part].Position).lookVector*maxstrength
919
					bv.Parent = body[part]
920
					Debris:AddItem(bv,0.2)
921
				end
922
			end
923
		end
924
		if v.ClassName == "Part" then
925
			if v.Anchored == false and (v.Position - position).Magnitude < range then
926
				--table.insert(Effects2,{v,"Disappear",0.02,2,2,2,2})
927
				v.Velocity = CFrame.new(position,v.Position).lookVector*5*maxstrength
928
			end
929
		end
930
	end
931
end
932
933
--//=================================\\
934
--||	ATTACK FUNCTIONS AND STUFF
935
--\\=================================//
936
937
function Lunar_Blast()
938
	local HITBODIES = {}
939
	local CENTER = CreatePart(3, Effects, "Glass", 0, 1, "Really black", "CenterPart", VT(0,0,0))
940
	local HITFLOOR,ECH,NORMAL = Raycast(Mouse.Hit.p+VT(0,2,0), (CF(Mouse.Hit.p, Mouse.Hit.p + VT(0, -1, 0))).lookVector, 10000000, Character)
941
	CENTER.CFrame = CF(ECH)
942
	local RAY = CreatePart(3, Effects, "Glass", 0, 1, "Really black", "Laser01", VT(25,99999,25))
943
	RAY.Color = C3(0,0,0)
944
	MakeForm(RAY,"Cyl")
945
	RAY.CFrame = CF(ECH)
946
	for i = 1, 75 do
947
		Swait()
948
		RAY.Transparency = RAY.Transparency - 1/75
949
		RAY.Size = RAY.Size - VT(35/85,0,35/85)
950
		MagicSphere(VT(1,1,1),15,CF(ECH)*CF(MRANDOM(-15,15),MRANDOM(0,100),MRANDOM(-15,15)),C3(1,1,1),VT(0,0,0))
951
	end
952
	killnearest(ECH,25,25)
953
	MagicSphere(VT(0,0,0),55,CF(ECH),C3(0,0,0),VT(3,3,3))
954
	for i = 1, 25 do
955
		MagicSphere(VT(1,1,1),i*3,CF(ECH)*CF(MRANDOM(-45,45),MRANDOM(-45,45),MRANDOM(-45,45)),C3(1,1,1),VT(0,0,0))
956
	end
957
	CreateSound("463598785", CENTER, 10, 0.8)
958
	RAY:remove()
959
	Debris:AddItem(CENTER,5)
960
end
961
962
function Star_Cutter()
963
	local HITFLOOR,HITPOS,NORMAL = Raycast(RootPart.Position, (CF(RootPart.Position, RootPart.Position + VT(0, -1, 0))).lookVector, 7 * Player_Size, Character)
964
	if HITFLOOR ~= nil then
965
		ATTACK = true
966
		Rooted = true
967
		local GYRO = IT("BodyGyro",RootPart)
968
		GYRO.D = 100
969
		GYRO.P = 2000
970
		GYRO.MaxTorque = VT(0,4000000,0)
971
		GYRO.cframe = CF(RootPart.Position,Mouse.Hit.p)
972
		CreateSound("289315275", RightArm, 10, 0.8)
973
		for i=0, 3.5, 0.1 / Animation_Speed do
974
			Swait()
975
			GYRO.cframe = CF(RootPart.Position,Mouse.Hit.p)
976
			Slice("Thin",0.3,5,RightArm.CFrame * CF(0,-1.1,0) * ANGLES(RAD(MRANDOM(-180,180)),RAD(MRANDOM(-180,180)),RAD(MRANDOM(-180,180))),"Gold",VT(-0.01,0,-0.01))
977
			RootJoint.C0 = Clerp(RootJoint.C0,ROOTC0 * CF(0, 0, 0 + 0.25 * COS(SINE / 12)) * ANGLES(RAD(4 + 2.5 * SIN(SINE / 12)), RAD(0), RAD(-15 + 2.5 * SIN(SINE / 12))), 1 / Animation_Speed)
978
			Neck.C0 = Clerp(Neck.C0, NECKC0 * CF(0, 0, 0 + ((1) - 1)) * ANGLES(RAD(0 + 4.5 * SIN(SINE / 12)), RAD(0), RAD(15 - 2.5 * SIN(SINE / 12))), 1 / Animation_Speed)
979
			RightShoulder.C0 = Clerp(RightShoulder.C0, CF(1.5, 0.5 + 0.25 * COS(SINE / 12), 0) * ANGLES(RAD(-45), RAD(0 - 7.5 * SIN(SINE / 12)), RAD(32 + 7.5 * SIN(SINE / 12))) * RIGHTSHOULDERC0, 1 / Animation_Speed)
980
			LeftShoulder.C0 = Clerp(LeftShoulder.C0, CF(-1.5, 0.5 + 0.25 * COS(SINE / 12), 0) * ANGLES(RAD(5), RAD(0 + 7.5 * SIN(SINE / 12)), RAD(-12 - 7.5 * SIN(SINE / 12))) * LEFTSHOULDERC0, 1 / Animation_Speed)
981
			RightHip.C0 = Clerp(RightHip.C0, CF(1, -1, -0.01) * ANGLES(RAD(-7.5 * SIN(SINE / 12)), RAD(75), RAD(0)) * ANGLES(RAD(-8 - 2.5 * SIN(SINE / 12)), RAD(0), RAD(0)), 1 / Animation_Speed)
982
			LeftHip.C0 = Clerp(LeftHip.C0, CF(-1, -0.5, -0.5) * ANGLES(RAD(-7.5 * SIN(SINE / 12)), RAD(-90), RAD(0)) * ANGLES(RAD(-8 - 2.5 * SIN(SINE / 12)), RAD(0), RAD(0)), 1 / Animation_Speed)
983
		end
984
		GYRO:remove()
985
		for i=0, 0.15, 0.1 / Animation_Speed do
986
			Swait()
987
			GYRO.cframe = CF(RootPart.Position,Mouse.Hit.p)
988
			Slice("Thin",0.3,5,RightArm.CFrame * CF(0,-1.1,0) * ANGLES(RAD(MRANDOM(-180,180)),RAD(MRANDOM(-180,180)),RAD(MRANDOM(-180,180))),"Gold",VT(-0.01,0,-0.01))
989
			RootJoint.C0 = Clerp(RootJoint.C0,ROOTC0 * CF(0, 0, 0 + 0.25 * COS(SINE / 12)) * ANGLES(RAD(4 + 2.5 * SIN(SINE / 12)), RAD(0), RAD(85 + 2.5 * SIN(SINE / 12))), 1 / Animation_Speed)
990
			Neck.C0 = Clerp(Neck.C0, NECKC0 * CF(0, 0, 0 + ((1) - 1)) * ANGLES(RAD(0 + 4.5 * SIN(SINE / 12)), RAD(0), RAD(-85 - 2.5 * SIN(SINE / 12))), 1 / Animation_Speed)
991
			RightShoulder.C0 = Clerp(RightShoulder.C0, CF(1.5, 0.5 + 0.25 * COS(SINE / 12), 0) * ANGLES(RAD(0), RAD(0 - 7.5 * SIN(SINE / 12)), RAD(90 + 7.5 * SIN(SINE / 12))) * RIGHTSHOULDERC0, 1 / Animation_Speed)
992
			LeftShoulder.C0 = Clerp(LeftShoulder.C0, CF(-1.5, 0.5 + 0.25 * COS(SINE / 12), 0) * ANGLES(RAD(5), RAD(0 + 7.5 * SIN(SINE / 12)), RAD(-12 - 7.5 * SIN(SINE / 12))) * LEFTSHOULDERC0, 1 / Animation_Speed)
993
			RightHip.C0 = Clerp(RightHip.C0, CF(1, -1, -0.01) * ANGLES(RAD(-7.5 * SIN(SINE / 12)), RAD(75), RAD(0)) * ANGLES(RAD(-8 - 2.5 * SIN(SINE / 12)), RAD(0), RAD(0)), 1 / Animation_Speed)
994
			LeftHip.C0 = Clerp(LeftHip.C0, CF(-1, -0.5, -0.5) * ANGLES(RAD(-7.5 * SIN(SINE / 12)), RAD(-90), RAD(0)) * ANGLES(RAD(-8 - 2.5 * SIN(SINE / 12)), RAD(0), RAD(0)), 1 / Animation_Speed)
995
		end
996
		local BOMBSPOTS = {}
997
		for i = 1, 25 do
998
			local SPOT = CreatePart(3, Effects, "Glass", 0, 0, "Really black", "Blade", VT(8,1,8))
999
			SPOT.Color = SKILLTEXTCOLOR
1000
			SPOT.CFrame = RootPart.CFrame*CF((MRANDOM(-15,15)/40)*i,-5,-i*5)
1001
			table.insert(BOMBSPOTS,SPOT)
1002
			MakeForm(SPOT,"Cyl")
1003
		end
1004
		for i=0, 0.2, 0.1 / Animation_Speed do
1005
			Swait()
1006
			RootJoint.C0 = Clerp(RootJoint.C0,ROOTC0 * CF(0, 0, 0 + 0.25 * COS(SINE / 12)) * ANGLES(RAD(4 + 2.5 * SIN(SINE / 12)), RAD(0), RAD(85 + 2.5 * SIN(SINE / 12))), 1 / Animation_Speed)
1007
			Neck.C0 = Clerp(Neck.C0, NECKC0 * CF(0, 0, 0 + ((1) - 1)) * ANGLES(RAD(0 + 4.5 * SIN(SINE / 12)), RAD(0), RAD(-85 - 2.5 * SIN(SINE / 12))), 1 / Animation_Speed)
1008
			RightShoulder.C0 = Clerp(RightShoulder.C0, CF(1.5, 0.5 + 0.25 * COS(SINE / 12), 0) * ANGLES(RAD(145), RAD(0 - 7.5 * SIN(SINE / 12)), RAD(-15 + 7.5 * SIN(SINE / 12))) * RIGHTSHOULDERC0, 1 / Animation_Speed)
1009
			LeftShoulder.C0 = Clerp(LeftShoulder.C0, CF(-1.5, 0.5 + 0.25 * COS(SINE / 12), 0) * ANGLES(RAD(-25), RAD(0 + 7.5 * SIN(SINE / 12)), RAD(-12 - 7.5 * SIN(SINE / 12))) * LEFTSHOULDERC0, 1 / Animation_Speed)
1010
			RightHip.C0 = Clerp(RightHip.C0, CF(1, -1, -0.01) * ANGLES(RAD(-7.5 * SIN(SINE / 12)), RAD(75), RAD(0)) * ANGLES(RAD(-8 - 2.5 * SIN(SINE / 12)), RAD(0), RAD(0)), 1 / Animation_Speed)
1011
			LeftHip.C0 = Clerp(LeftHip.C0, CF(-1, -0.5, -0.5) * ANGLES(RAD(-7.5 * SIN(SINE / 12)), RAD(-90), RAD(0)) * ANGLES(RAD(-8 - 2.5 * SIN(SINE / 12)), RAD(0), RAD(0)), 1 / Animation_Speed)
1012
		end
1013
		ATTACK = false
1014
		Rooted = false
1015
		coroutine.resume(coroutine.create(function()
1016
			Swait(3)
1017
			for i = 1, #BOMBSPOTS do
1018
				if BOMBSPOTS[i] ~= nil then
1019
					local E = BOMBSPOTS[i]
1020
					coroutine.resume(coroutine.create(function()
1021
						local BLADE = CreatePart(3, Effects, "Glass", 0, 1, "Really black", "Blade", VT(0,0,0))
1022
						BLADE.Color = SKILLTEXTCOLOR
1023
						CreateMesh("SpecialMesh", BLADE, "FileMesh", "93108071", "", VT(0.6,1,0.4)*3, VT(0,0,0))
1024
						CreateSound(HITWEAPONSOUNDS[MRANDOM(1,#HITWEAPONSOUNDS)], BLADE, 4, 0.6)
1025
						BLADE.CFrame = E.CFrame*CF(0,-3,0)*ANGLES(RAD(MRANDOM(-15,15)),RAD(90),RAD(MRANDOM(-15,15)))
1026
						for i = 1, 10 do
1027
							Swait()
1028
							MagicSphere(VT(1,1,1)/5,65,CF(E.Position)*ANGLES(RAD(MRANDOM(-180,180)),RAD(MRANDOM(-180,180)),RAD(MRANDOM(-180,180)))*CF(0,MRANDOM(3,6),0),C3(1,1,1),VT(0,0,0))
1029
							killnearest(BLADE.Position,6,80)
1030
							BLADE.CFrame = BLADE.CFrame*CF(0,0.3,0)
1031
							BLADE.Transparency = BLADE.Transparency - 0.1
1032
						end
1033
						Swait(45)
1034
						for i = 1, 100 do
1035
							Swait()
1036
							BLADE.Transparency = BLADE.Transparency + 0.01
1037
							E.Transparency = E.Transparency + 0.01
1038
						end
1039
						BLADE:remove()
1040
						E:remove()
1041
					end))
1042
				end
1043
			end
1044
		end))
1045
	end
1046
end
1047
1048
1049
function Star_failed()
1050
    CreateSound("907330103", Head, 10, 1.2)
1051
	ATTACK = true
1052
	Rooted = true
1053
		for i=0, 1, 0.1 / Animation_Speed do
1054
		Swait()
1055
		RootJoint.C0 = Clerp(RootJoint.C0,ROOTC0 * CF(0, 0, 0  + 0.25 * COS(SINE / 12)) * ANGLES(RAD(0), RAD(0), RAD(0)), 1 / Animation_Speed)
1056
		Neck.C0 = Clerp(Neck.C0, NECKC0 * CF(0, 0, 0 + ((1) - 1)) * ANGLES(RAD(15 - 2.5 * SIN(SINE / 12)), RAD(0), RAD(0)), 1 / Animation_Speed)
1057
		RightShoulder.C0 = Clerp(RightShoulder.C0, CF(1.5, 0.5, -0.5) * ANGLES(RAD(0), RAD(0), RAD(-85)) * RIGHTSHOULDERC0, 1 / Animation_Speed)
1058
		LeftShoulder.C0 = Clerp(LeftShoulder.C0, CF(-1.5, 0.15, -0.5) * ANGLES(RAD(-15), RAD(0), RAD(85)) * LEFTSHOULDERC0, 1 / Animation_Speed)
1059
		RightHip.C0 = Clerp(RightHip.C0, CF(1, -1, -0.01) * ANGLES(RAD(-2.5 * SIN(SINE / 12)), RAD(75), RAD(0)) * ANGLES(RAD(-8 - 2.5 * SIN(SINE / 12)), RAD(0), RAD(0)), 1 / Animation_Speed)
1060
		LeftHip.C0 = Clerp(LeftHip.C0, CF(-1, -0.5, -0.5) * ANGLES(RAD(-2.5 * SIN(SINE / 12)), RAD(-90), RAD(0)) * ANGLES(RAD(-8 - 2.5 * SIN(SINE / 12)), RAD(0), RAD(0)), 1 / Animation_Speed)
1061
	end	
1062
	coroutine.resume(coroutine.create(function()
1063
		local POS = Mouse.Hit.p
1064
		local RAY = CreatePart(3, Effects, "Glass", 0, 0, "Really black", "Strike", VT(0,2000,0))
1065
		MakeForm(RAY,"Cyl")
1066
		local SPHERE = CreatePart(3, Effects, "Glass", 0, 0, "Really black", "Strike", VT(0,0,0))
1067
		MakeForm(SPHERE,"Ball")
1068
		local SHIELD = CreatePart(3, Effects, "Glass", 0, 0.5, "Really black", "Strike", VT(0,0,0))
1069
		MakeForm(SHIELD,"Ball")
1070
		SHIELD.CFrame = CF(POS)
1071
		RAY.CFrame = CF(POS)
1072
		SPHERE.CFrame = CF(POS)
1073
		CreateSound(440145570, SPHERE, 10, 0.8, false)
1074
		CreateSound(415700134, SPHERE, 10, 0.8, false)
1075
		for i = 1, 200 do
1076-
		Transparency(i/15)
1076+
1077
			WACKYEFFECT({Time = 15, EffectType = "Wave", Size = VT(0,0,0), Size2 = VT(SPHERE.Size.X*1.2,5+(i),SPHERE.Size.X*1.2), Transparency = 0, Transparency2 = 1, CFrame = SPHERE.CFrame*ANGLES(RAD(0), RAD(i), RAD(0)), MoveToPos = nil, RotationX = 0, RotationY = i, RotationZ = 0, Material = "Glass", Color = C3(0,0,0), SoundID = nil, SoundPitch = nil, SoundVolume = nil})
1078
			RAY.Size = RAY.Size + VT(0.15,0,0.15)
1079
			SPHERE.Size = SPHERE.Size + VT(4,4,4)
1080
			SHIELD.Size = SPHERE.Size + VT(5,5,5)
1081
			ApplyAoE(SPHERE.Position,SPHERE.Size.X/2,true)
1082
		end	
1083
		for i = 1, 95 do
1084
			Swait()
1085
			RAY.Transparency = RAY.Transparency + 1/45
1086
			SPHERE.Transparency = RAY.Transparency 
1087
			SHIELD.Transparency = SPHERE.Transparency + 1/45
1088
		end
1089-
		Transparency(1-(i/15))
1089+
1090
		SHIELD:remove()
1091
		SPHERE:remove()
1092
	end))
1093
	for i=0, 1, 0.1 / Animation_Speed do
1094
		Swait()
1095
		RootJoint.C0 = Clerp(RootJoint.C0,ROOTC0 * CF(0, 0, 0  + 0.25 * COS(SINE / 12)) * ANGLES(RAD(-35), RAD(0), RAD(0)), 1 / Animation_Speed)
1096
		Neck.C0 = Clerp(Neck.C0, NECKC0 * CF(0, 0, 0 + ((1) - 1)) * ANGLES(RAD(-15 - 2.5 * SIN(SINE / 12)), RAD(0), RAD(0)), 1 / Animation_Speed)
1097
		RightShoulder.C0 = Clerp(RightShoulder.C0, CF(1.5, 0.5, -0.15) * ANGLES(RAD(65), RAD(-45), RAD(85)) * RIGHTSHOULDERC0, 1 / Animation_Speed)
1098
		LeftShoulder.C0 = Clerp(LeftShoulder.C0, CF(-1.5, 0.5, -0.15) * ANGLES(RAD(65), RAD(45), RAD(-85)) * LEFTSHOULDERC0, 1 / Animation_Speed)
1099
		RightHip.C0 = Clerp(RightHip.C0, CF(1, -1, -0.01) * ANGLES(RAD(-35-2.5 * SIN(SINE / 12)), RAD(75), RAD(0)) * ANGLES(RAD(-8 - 2.5 * SIN(SINE / 12)), RAD(0), RAD(0)), 1 / Animation_Speed)
1100
		LeftHip.C0 = Clerp(LeftHip.C0, CF(-1, -0.5, -0.5) * ANGLES(RAD(-35-2.5 * SIN(SINE / 12)), RAD(-90), RAD(0)) * ANGLES(RAD(-8 - 2.5 * SIN(SINE / 12)), RAD(0), RAD(0)), 1 / Animation_Speed)
1101
	end
1102
	ATTACK = false
1103
	Rooted = false
1104
end
1105
1106
function Supernova()
1107
	local HITFLOOR,HITPOS,NORMAL = Raycast(RootPart.Position, (CF(RootPart.Position, RootPart.Position + VT(0, -1, 0))).lookVector, 7 * Player_Size, Character)
1108
	if HITFLOOR ~= nil then
1109
		local HITBODIES = {}
1110
		ATTACK = true
1111
		Rooted = true
1112
		local ABSOLUTE = CreatePart(3, Effects, "Glass", 0, 1, "Really black", "Star", VT(0,0,0))
1113
		MakeForm(ABSOLUTE,"Ball")
1114
		CreateSound("289315275", ABSOLUTE, 10, 1)
1115
		for i=0, 10, 0.1 / Animation_Speed do
1116
			Swait()
1117
			ABSOLUTE.Size = ABSOLUTE.Size + VT(0.2,0.2,0.2)
1118
			ABSOLUTE.CFrame = RootPart.CFrame*CF(0,5+(ABSOLUTE.Size.Y/2),0)
1119
			ABSOLUTE.Transparency = ABSOLUTE.Transparency - 0.01
1120
			local CHARGE = CreatePart(3, Effects, "Glass", 0, 0, "Really black", "Star", VT(1,1,1))
1121
			MakeForm(CHARGE,"Ball")
1122
			CHARGE.Color = C3(0,0,0)
1123
			CHARGE.CFrame = CF(RootPart.Position) * CF(MRANDOM(-15,15),-6,MRANDOM(-15,15))
1124
			FireArc(CHARGE,ABSOLUTE.Position,45,45,true)
1125
			RootJoint.C0 = Clerp(RootJoint.C0,ROOTC0 * CF(0, 0, 0 + 0.25 * COS(SINE / 12)) * ANGLES(RAD(4 + 2.5 * SIN(SINE / 12)), RAD(0), RAD(15 + 2.5 * SIN(SINE / 12))), 1 / Animation_Speed)
1126
			Neck.C0 = Clerp(Neck.C0, NECKC0 * CF(0, 0, 0 + ((1) - 1)) * ANGLES(RAD(-25 + 4.5 * SIN(SINE / 12)), RAD(25), RAD(-15 - 2.5 * SIN(SINE / 12))), 1 / Animation_Speed)
1127
			RightShoulder.C0 = Clerp(RightShoulder.C0, CF(1.25, 1.5 + 0.25 * COS(SINE / 12), 0) * ANGLES(RAD(170), RAD(0 - 7.5 * SIN(SINE / 12)), RAD(-12 + 7.5 * SIN(SINE / 12))) * RIGHTSHOULDERC0, 1 / Animation_Speed)
1128
			LeftShoulder.C0 = Clerp(LeftShoulder.C0, CF(-1.5, 0.5 + 0.25 * COS(SINE / 12), 0) * ANGLES(RAD(0), RAD(0 + 7.5 * SIN(SINE / 12)), RAD(-12 - 7.5 * SIN(SINE / 12))) * LEFTSHOULDERC0, 1 / Animation_Speed)
1129
			RightHip.C0 = Clerp(RightHip.C0, CF(1, -1, -0.01) * ANGLES(RAD(-7.5 * SIN(SINE / 12)), RAD(75), RAD(0)) * ANGLES(RAD(-8 - 2.5 * SIN(SINE / 12)), RAD(0), RAD(0)), 1 / Animation_Speed)
1130
			LeftHip.C0 = Clerp(LeftHip.C0, CF(-1, -0.5, -0.5) * ANGLES(RAD(-7.5 * SIN(SINE / 12)), RAD(-90), RAD(0)) * ANGLES(RAD(-8 - 2.5 * SIN(SINE / 12)), RAD(0), RAD(0)), 1 / Animation_Speed)
1131
		end
1132
		CreateSound("907330103", Head, 10, 1.2)
1133
		for i = 1, 175 do
1134
			Swait()	
1135
			RootJoint.C0 = Clerp(RootJoint.C0,ROOTC0 * CF(0, 0, 0 + 0.25 * COS(SINE / 12)) * ANGLES(RAD(4 + 2.5 * SIN(SINE / 12)), RAD(0), RAD(15 + 2.5 * SIN(SINE / 12))), 1 / Animation_Speed)
1136
			Neck.C0 = Clerp(Neck.C0, NECKC0 * CF(0, 0, 0 + ((1) - 1)) * ANGLES(RAD(-25 + 4.5 * SIN(SINE / 12)), RAD(25), RAD(-15 - 2.5 * SIN(SINE / 12))), 1 / Animation_Speed)
1137
			RightShoulder.C0 = Clerp(RightShoulder.C0, CF(1.25, 1.5 + 0.25 * COS(SINE / 12), 0) * ANGLES(RAD(170), RAD(0 - 7.5 * SIN(SINE / 12)), RAD(-12 + 7.5 * SIN(SINE / 12))) * RIGHTSHOULDERC0, 1 / Animation_Speed)
1138
			LeftShoulder.C0 = Clerp(LeftShoulder.C0, CF(-1.5, 0.5 + 0.25 * COS(SINE / 12), 0) * ANGLES(RAD(0), RAD(0 + 7.5 * SIN(SINE / 12)), RAD(-12 - 7.5 * SIN(SINE / 12))) * LEFTSHOULDERC0, 1 / Animation_Speed)
1139
			RightHip.C0 = Clerp(RightHip.C0, CF(1, -1, -0.01) * ANGLES(RAD(-7.5 * SIN(SINE / 12)), RAD(75), RAD(0)) * ANGLES(RAD(-8 - 2.5 * SIN(SINE / 12)), RAD(0), RAD(0)), 1 / Animation_Speed)
1140
			LeftHip.C0 = Clerp(LeftHip.C0, CF(-1, -0.5, -0.5) * ANGLES(RAD(-7.5 * SIN(SINE / 12)), RAD(-90), RAD(0)) * ANGLES(RAD(-8 - 2.5 * SIN(SINE / 12)), RAD(0), RAD(0)), 1 / Animation_Speed)
1141
		end
1142
		coroutine.resume(coroutine.create(function()
1143
			for i = 1, 13 do
1144
				for e = 1, 8 do
1145
					Swait()
1146
					MagicSphere(VT(1,1,1),15,CF(ABSOLUTE.Position)*CF(MRANDOM(-45,45),MRANDOM(-45,45),MRANDOM(-45,45)),C3(1,1,1),VT(0,0,0))
1147
					CreateSwirl(ABSOLUTE.Size/2,15,CF(HITPOS),true,15,BRICKC"Really black".Color,VT(i,0.3,i)*2)
1148
				end
1149
				for i = 1, 5 do
1150
					Slice("Round",0,35,CF(ABSOLUTE.Position)*ANGLES(RAD(MRANDOM(-18,18)),RAD(MRANDOM(-180,180)),RAD(MRANDOM(-18,18))),C3(1,1,1),VT(i,0,i)/3)
1151
					Slice("Thin",i,55,ABSOLUTE.CFrame * CF(0,-1.1,0) * ANGLES(RAD(MRANDOM(-180,180)),RAD(MRANDOM(-180,180)),RAD(MRANDOM(-180,180))),C3(1,0,0),VT(0,0,0))
1152
				end
1153
				CreateSwirl(ABSOLUTE.Size/2,25,CF(ABSOLUTE.Position),true,-25,BRICKC"Really black".Color,VT(i,i*2,i))
1154
				CreateSwirl(ABSOLUTE.Size/2,55,CF(ABSOLUTE.Position),true,25,C3(0.05,0.05,0.15),VT(i,i*2,i))
1155
				CreateSound("168586621", ABSOLUTE, 4, 0.8)
1156
				CreateSound("201858144", ABSOLUTE, 10, 0.8)
1157
                CreateSound("907330103", Head, 10, 1.2)
1158
				killnearest(ABSOLUTE.Position,i*18,i)
1159
				ABSOLUTE.Size = ABSOLUTE.Size*0.9
1160
				MagicSphere(ABSOLUTE.Size,25,CF(ABSOLUTE.Position),BRICKC"Gold".Color,VT(i,i,i)/1.1)
1161
				MagicSphere(ABSOLUTE.Size,45,CF(ABSOLUTE.Position),C3(0.05,0.05,0.15),VT(i,i,i))
1162
			end
1163
			ABSOLUTE.Transparency = 1
1164
			Debris:AddItem(ABSOLUTE,10)
1165
		end))
1166
		ATTACK = false
1167
		Rooted = false
1168
	end
1169
end
1170
1171
local Decal = IT("Decal")
1172
1173
function Astral_Hop()
1174
	ATTACK = true
1175
	Rooted = false
1176
	local O1 = CreatePart(3, Effects, "Glass", 0, 1, "Really black", "Warphole", VT(0,0,0))
1177
	O1.CFrame = RootPart.CFrame*CF(0,0,-3)*ANGLES(RAD(90),RAD(0),RAD(0))
1178
	local decal = Decal:Clone()
1179
	decal.Parent = O1
1180
	decal.Face = "Top"
1181
	decal.Texture = "http://www.roblox.com/asset/?id=1578810081"
1182
	local decal2 = Decal:Clone()
1183
	decal2.Parent = O1
1184
	decal2.Face = "Bottom"
1185
	decal2.Texture = "http://www.roblox.com/asset/?id=1578810081"
1186
	local O2 = CreatePart(3, Effects, "Glass", 0, 1, "Really black", "Warphole", VT(0,0,0))
1187
	local POS = VT(RootPart.Position.X,Mouse.Hit.p.Y+6,RootPart.Position.Z)
1188
	O2.CFrame = CF(Mouse.Hit.p+VT(0,6,0),POS)*ANGLES(RAD(90),RAD(0),RAD(0))
1189
	local ROOT = CreatePart(3, Effects, "Glass", 0, 1, "Really black", "Warphole", VT(0,0,0))
1190
	ROOT.CFrame = CF(O2.Position,RootPart.Position)
1191
	local decal = Decal:Clone()
1192
	decal.Parent = O2
1193
	decal.Face = "Top"
1194
	decal.Texture = "http://www.roblox.com/asset/?id=1578810081"
1195
	local decal2 = Decal:Clone()
1196
	decal2.Parent = O2
1197
	decal2.Face = "Bottom"
1198
	decal2.Texture = "http://www.roblox.com/asset/?id=1578810081"
1199
	CreateSound("84005018", O1, 10, 0.7)
1200
	CreateSound("84005018", O2, 10, 0.7)
1201
	for i = 1, 75 do
1202
		Swait()
1203
		O1.Size = O1.Size + VT(0.1,0,0.1)
1204
		O1.CFrame = RootPart.CFrame*CF(0,0,-3)*ANGLES(RAD(90),RAD(i),RAD(0))
1205
		O2.Size = O2.Size + VT(0.1,0,0.1)
1206
		O2.CFrame = O2.CFrame*ANGLES(RAD(0),RAD(i),RAD(0))
1207
		RootJoint.C0 = Clerp(RootJoint.C0,ROOTC0 * CF(0, 0, 0 + 0.25 * COS(SINE / 12)) * ANGLES(RAD(4 + 2.5 * SIN(SINE / 12)), RAD(0), RAD(5 + 2.5 * SIN(SINE / 12))), 1 / Animation_Speed)
1208
		Neck.C0 = Clerp(Neck.C0, NECKC0 * CF(0, 0, 0 + ((1) - 1)) * ANGLES(RAD(0 + 4.5 * SIN(SINE / 12)), RAD(0), RAD(-5 - 2.5 * SIN(SINE / 12))), 1 / Animation_Speed)
1209
		RightShoulder.C0 = Clerp(RightShoulder.C0, CF(1.5, 0.5 + 0.25 * COS(SINE / 12), 0) * ANGLES(RAD(90), RAD(0 - 2.5 * SIN(SINE / 12)), RAD(5 + 7.5 * SIN(SINE / 12))) * RIGHTSHOULDERC0, 1 / Animation_Speed)
1210
		LeftShoulder.C0 = Clerp(LeftShoulder.C0, CF(-1.5, 0.5 + 0.25 * COS(SINE / 12), 0) * ANGLES(RAD(90), RAD(0 + 2.5 * SIN(SINE / 12)), RAD(-5 - 7.5 * SIN(SINE / 12))) * LEFTSHOULDERC0, 1 / Animation_Speed)
1211
		RightHip.C0 = Clerp(RightHip.C0, CF(1, -1, -0.01) * ANGLES(RAD(-2.5 * SIN(SINE / 12)), RAD(75), RAD(0)) * ANGLES(RAD(-8 - 2.5 * SIN(SINE / 12)), RAD(0), RAD(0)), 1 / Animation_Speed)
1212
		LeftHip.C0 = Clerp(LeftHip.C0, CF(-1, -0.5, -0.5) * ANGLES(RAD(-2.5 * SIN(SINE / 12)), RAD(-90), RAD(0)) * ANGLES(RAD(-8 - 2.5 * SIN(SINE / 12)), RAD(0), RAD(0)), 1 / Animation_Speed)
1213
	end
1214
	Rooted = true
1215
	UNANCHOR = false
1216
	RootPart.Anchored = true
1217
	VALUE1 = true
1218
	for i = 1, 15 do
1219
		Swait()
1220
		RootPart.CFrame = RootPart.CFrame*CF(0,0,-0.13)
1221
		RootJoint.C0 = Clerp(RootJoint.C0,ROOTC0 * CF(0, 0, 0 + 0.25 * COS(SINE / 12)) * ANGLES(RAD(16 + 2.5 * SIN(SINE / 12)), RAD(0), RAD(5 + 2.5 * SIN(SINE / 12))), 1 / Animation_Speed)
1222
		Neck.C0 = Clerp(Neck.C0, NECKC0 * CF(0, 0, 0 + ((1) - 1)) * ANGLES(RAD(-15 + 4.5 * SIN(SINE / 12)), RAD(0), RAD(-5 - 2.5 * SIN(SINE / 12))), 1 / Animation_Speed)
1223
		RightShoulder.C0 = Clerp(RightShoulder.C0, CF(1.5, 0.5 + 0.25 * COS(SINE / 12), 0) * ANGLES(RAD(-15), RAD(0 - 2.5 * SIN(SINE / 12)), RAD(5 + 7.5 * SIN(SINE / 12))) * RIGHTSHOULDERC0, 1 / Animation_Speed)
1224
		LeftShoulder.C0 = Clerp(LeftShoulder.C0, CF(-1.5, 0.5 + 0.25 * COS(SINE / 12), 0) * ANGLES(RAD(-15), RAD(0 + 2.5 * SIN(SINE / 12)), RAD(-5 - 7.5 * SIN(SINE / 12))) * LEFTSHOULDERC0, 1 / Animation_Speed)
1225
		RightHip.C0 = Clerp(RightHip.C0, CF(1, -1, -0.01) * ANGLES(RAD(-2.5 * SIN(SINE / 12)), RAD(75), RAD(0)) * ANGLES(RAD(-8 - 2.5 * SIN(SINE / 12)), RAD(0), RAD(0)), 1 / Animation_Speed)
1226
		LeftHip.C0 = Clerp(LeftHip.C0, CF(-1, -0.5, -0.5) * ANGLES(RAD(-2.5 * SIN(SINE / 12)), RAD(-90), RAD(0)) * ANGLES(RAD(-8 - 2.5 * SIN(SINE / 12)), RAD(0), RAD(0)), 1 / Animation_Speed)
1227
	end
1228
	RootPart.CFrame = ROOT.CFrame
1229
	ROOT:remove()
1230
	for i = 1, 15 do
1231
		Swait()
1232
		RootPart.CFrame = RootPart.CFrame*CF(0,0,-0.5)
1233
		RootJoint.C0 = Clerp(RootJoint.C0,ROOTC0 * CF(0, 0, 0 + 0.25 * COS(SINE / 12)) * ANGLES(RAD(16 + 2.5 * SIN(SINE / 12)), RAD(0), RAD(5 + 2.5 * SIN(SINE / 12))), 1 / Animation_Speed)
1234
		Neck.C0 = Clerp(Neck.C0, NECKC0 * CF(0, 0, 0 + ((1) - 1)) * ANGLES(RAD(-15 + 4.5 * SIN(SINE / 12)), RAD(0), RAD(-5 - 2.5 * SIN(SINE / 12))), 1 / Animation_Speed)
1235
		RightShoulder.C0 = Clerp(RightShoulder.C0, CF(1.5, 0.5 + 0.25 * COS(SINE / 12), 0) * ANGLES(RAD(-15), RAD(0 - 2.5 * SIN(SINE / 12)), RAD(5 + 7.5 * SIN(SINE / 12))) * RIGHTSHOULDERC0, 1 / Animation_Speed)
1236
		LeftShoulder.C0 = Clerp(LeftShoulder.C0, CF(-1.5, 0.5 + 0.25 * COS(SINE / 12), 0) * ANGLES(RAD(-15), RAD(0 + 2.5 * SIN(SINE / 12)), RAD(-5 - 7.5 * SIN(SINE / 12))) * LEFTSHOULDERC0, 1 / Animation_Speed)
1237
		RightHip.C0 = Clerp(RightHip.C0, CF(1, -1, -0.01) * ANGLES(RAD(-2.5 * SIN(SINE / 12)), RAD(75), RAD(0)) * ANGLES(RAD(-8 - 2.5 * SIN(SINE / 12)), RAD(0), RAD(0)), 1 / Animation_Speed)
1238
		LeftHip.C0 = Clerp(LeftHip.C0, CF(-1, -0.5, -0.5) * ANGLES(RAD(-2.5 * SIN(SINE / 12)), RAD(-90), RAD(0)) * ANGLES(RAD(-8 - 2.5 * SIN(SINE / 12)), RAD(0), RAD(0)), 1 / Animation_Speed)
1239
	end
1240
	VALUE1 = false
1241
	coroutine.resume(coroutine.create(function()
1242
		for i = 1, 75 do
1243
			Swait()
1244
			O1.Size = O1.Size - VT(0.1,0,0.1)
1245
			O1.CFrame = O1.CFrame*ANGLES(RAD(0),RAD(i),RAD(0))
1246
			O2.Size = O2.Size - VT(0.1,0,0.1)
1247
			O2.CFrame = O2.CFrame*ANGLES(RAD(0),RAD(i),RAD(0))
1248
		end
1249
		O1:remove()
1250
		O2:remove()
1251
	end))
1252
	UNANCHOR = true
1253
	RootPart.Anchored = false
1254
	ATTACK = false
1255
	Rooted = false
1256
end
1257
1258
--//=================================\\
1259
--||	  ASSIGN THINGS TO KEYS
1260
--\\=================================//
1261
1262
function MouseDown(Mouse)
1263-
			if c == Torso then
1263+
1264-
				c.Color = C3(0,0,0)
1264+
1265-
			elseif c == RightArm then
1265+
1266-
				c.Color = C3(0,0,0)
1266+
1267-
			elseif c == LeftArm then
1267+
1268-
				c.Color = C3(0,0,0)
1268+
1269-
			elseif c == RightLeg then
1269+
1270-
				c.Color = C3(0,0,0)
1270+
1271-
			elseif c == LeftLeg then
1271+
1272-
				c.Color = C3(0,0,0)
1272+
1273-
			elseif c == Head then
1273+
1274-
				if c:FindFirstChild("Dominus") == nil then
1274+
1275
	end
1276-
				if c:FindFirstChild("face") then
1276+
1277-
					c.face:remove()
1277+
1278
		Star_Cutter()
1279
	end
1280
1281-
			c:remove()
1281+
1282
		Supernova()
1283
	end
1284
1285
	if Key == "q" and ATTACK == false then
1286
		Astral_Hop()
1287
	end
1288
1289
    if Key == "e" and ATTACK == false then
1290
		Star_failed()
1291
	end
1292
end
1293
1294
function KeyUp(Key)
1295
	KEYHOLD = false
1296
end
1297
1298
	Mouse.Button1Down:connect(function(NEWKEY)
1299
		MouseDown(NEWKEY)
1300
	end)
1301
	Mouse.Button1Up:connect(function(NEWKEY)
1302
		MouseUp(NEWKEY)
1303
	end)
1304
	Mouse.KeyDown:connect(function(NEWKEY)
1305
		KeyDown(NEWKEY)
1306
	end)
1307
	Mouse.KeyUp:connect(function(NEWKEY)
1308
		KeyUp(NEWKEY)
1309
	end)
1310
1311
--//=================================\\
1312
--\\=================================//
1313
1314
1315
function unanchor()
1316
	if UNANCHOR == true then
1317
		g = Character:GetChildren()
1318
		for i = 1, #g do
1319
			if g[i].ClassName == "Part" then
1320
				g[i].Anchored = false
1321
			end
1322
		end
1323
	end
1324
end
1325
1326
1327
--//=================================\\
1328
--||	WRAP THE WHOLE SCRIPT UP
1329
--\\=================================//
1330
1331
Humanoid.Changed:connect(function(Jump)
1332
	if Jump == "Jump" and (Disable_Jump == true) then
1333
		Humanoid.Jump = false
1334
	end
1335
end)
1336
1337
Humanoid.HipHeight = 2
1338
Head:ClearAllChildren()
1339
local FF = IT("ForceField",Character)
1340
FF.Visible = false
1341
Speed = 35
1342
1343
function refit()
1344
	RootJoint.Parent = RootPart
1345
	Neck.Parent = Torso
1346
	RightShoulder.Parent = Torso
1347
	LeftShoulder.Parent = Torso
1348
	RightHip.Parent = Torso
1349
	LeftHip.Parent = Torso
1350
	RootPart.Parent = Character
1351
	LeftArm.Parent = Character
1352
	RightArm.Parent = Character
1353
	RightLeg.Parent = Character
1354
	LeftLeg.Parent = Character
1355
	Torso.Parent = Character
1356
	Head.Parent = Character
1357
end
1358
1359
local FOUNDFORGOTTEN = false
1360
1361
while true do
1362
	Swait()
1363
	ANIMATE.Parent = nil
1364
	local IDLEANIMATION = Humanoid:LoadAnimation(ROBLOXIDLEANIMATION)
1365
	IDLEANIMATION:Play()
1366
	SINE = SINE + CHANGE
1367
	local TORSOVELOCITY = (RootPart.Velocity * VT(1, 0, 1)).magnitude
1368
	local TORSOVERTICALVELOCITY = RootPart.Velocity.y
1369
	local LV = Torso.CFrame:pointToObjectSpace(Torso.Velocity - Torso.Position)
1370
	local HITFLOOR,HITPOS,NORMAL = Raycast(RootPart.Position, (CF(RootPart.Position, RootPart.Position + VT(0, -1, 0))).lookVector, 7 * Player_Size, Character)
1371
	if ATTACK == false then
1372
		if TORSOVELOCITY < 1 then
1373
			RootJoint.C0 = Clerp(RootJoint.C0,ROOTC0 * CF(0, 0, 0 + 0.25 * COS(SINE / 12)) * ANGLES(RAD(4 + 2.5 * SIN(SINE / 12)), RAD(0), RAD(5 + 2.5 * SIN(SINE / 12))), 1 / Animation_Speed)
1374
			Neck.C0 = Clerp(Neck.C0, NECKC0 * CF(0, 0, 0 + ((1) - 1)) * ANGLES(RAD(0 + 4.5 * SIN(SINE / 12)), RAD(0), RAD(-5 - 2.5 * SIN(SINE / 12))), 1 / Animation_Speed)
1375
			RightShoulder.C0 = Clerp(RightShoulder.C0, CF(1.5, 0.5 + 0.25 * COS(SINE / 12), 0) * ANGLES(RAD(0), RAD(0 - 2.5 * SIN(SINE / 12)), RAD(5 + 7.5 * SIN(SINE / 12))) * RIGHTSHOULDERC0, 1 / Animation_Speed)
1376
			LeftShoulder.C0 = Clerp(LeftShoulder.C0, CF(-1.5, 0.5 + 0.25 * COS(SINE / 12), 0) * ANGLES(RAD(0), RAD(0 + 2.5 * SIN(SINE / 12)), RAD(-5 - 7.5 * SIN(SINE / 12))) * LEFTSHOULDERC0, 1 / Animation_Speed)
1377
			RightHip.C0 = Clerp(RightHip.C0, CF(1, -1, -0.01) * ANGLES(RAD(-2.5 * SIN(SINE / 12)), RAD(75), RAD(0)) * ANGLES(RAD(-8 - 2.5 * SIN(SINE / 12)), RAD(0), RAD(0)), 1 / Animation_Speed)
1378
			LeftHip.C0 = Clerp(LeftHip.C0, CF(-1, -0.5, -0.5) * ANGLES(RAD(-2.5 * SIN(SINE / 12)), RAD(-90), RAD(0)) * ANGLES(RAD(-8 - 2.5 * SIN(SINE / 12)), RAD(0), RAD(0)), 1 / Animation_Speed)
1379
		elseif TORSOVELOCITY > 1 then
1380
			RootJoint.C0 = Clerp(RootJoint.C0,ROOTC0 * CF(0, 0, 0 + 0.25 * COS(SINE / 12)) * ANGLES(RAD(25 + 2.5 * SIN(SINE / 12)), RAD(0), RAD(5 + 2.5 * SIN(SINE / 12))), 1 / Animation_Speed)
1381
			Neck.C0 = Clerp(Neck.C0, NECKC0 * CF(0, 0, 0 + ((1) - 1)) * ANGLES(RAD(-25 + 4.5 * SIN(SINE / 12)), RAD(0), RAD(-5 - 2.5 * SIN(SINE / 12))), 1 / Animation_Speed)
1382
			RightShoulder.C0 = Clerp(RightShoulder.C0, CF(1.5, 0.5 + 0.25 * COS(SINE / 12), 0) * ANGLES(RAD(-25), RAD(0 - 2.5 * SIN(SINE / 12)), RAD(15 + 7.5 * SIN(SINE / 12))) * RIGHTSHOULDERC0, 1 / Animation_Speed)
1383
			LeftShoulder.C0 = Clerp(LeftShoulder.C0, CF(-1.5, 0.5 + 0.25 * COS(SINE / 12), 0) * ANGLES(RAD(-25), RAD(0 + 2.5 * SIN(SINE / 12)), RAD(-15 - 7.5 * SIN(SINE / 12))) * LEFTSHOULDERC0, 1 / Animation_Speed)
1384
			RightHip.C0 = Clerp(RightHip.C0, CF(1, -1, -0.01) * ANGLES(RAD(-25-2.5 * SIN(SINE / 12)), RAD(75), RAD(0)) * ANGLES(RAD(-8 - 5.5 * SIN(SINE / 12)), RAD(0), RAD(0)), 1 / Animation_Speed)
1385
			LeftHip.C0 = Clerp(LeftHip.C0, CF(-1, -0.5, -0.5) * ANGLES(RAD(-2.5 * SIN(SINE / 12)), RAD(-90), RAD(0)) * ANGLES(RAD(-8 - 2.5 * SIN(SINE / 12)), RAD(0), RAD(0)), 1 / Animation_Speed)
1386
		end
1387
	end
1388
	unanchor()
1389
	Humanoid.MaxHealth = "inf"
1390
	Humanoid.Health = "inf"
1391
	if Rooted == false then
1392
		Disable_Jump = false
1393
		Humanoid.WalkSpeed = Speed
1394
	elseif Rooted == true then
1395
		Disable_Jump = true
1396
		Humanoid.WalkSpeed = 0
1397
	end
1398
	for _, c in pairs(Character:GetChildren()) do
1399
		if c.ClassName == "Part" then
1400
			c.Material = "Glass"
1401
			if c:FindFirstChildOfClass("ParticleEmitter") then
1402
				c:FindFirstChildOfClass("ParticleEmitter")
1403
			end
1404
			
1405
		elseif c.ClassName == "Shirt" or c.ClassName == "Pants" or c.ClassName == "CharacterMesh" or c.ClassName == "Accessory" or c.Name == "Body Colors" then
1406
		end
1407
	end
1408
	FF.Parent = Character
1409
	sick.Parent = Character
1410
	refit()
1411
	script.Parent = WEAPONGUI
1412
	Character.Parent = workspace
1413
	Humanoid.PlatformStand = false
1414
	Humanoid.Name = "Astra"
1415
	for _, c in pairs(game.Players:GetChildren()) do
1416
		if c.Character ~= nil then
1417
			if c.Character.Parent ~= workspace and c.Character.Parent ~= nil then
1418
				c.Character:BreakJoints()
1419
			end
1420
		end
1421
	end
1422
	FOUNDFORGOTTEN = false
1423
	Humanoid.DisplayDistanceType = "None"
1424
	for _, c in pairs(workspace:GetChildren()) do
1425
		if c.ClassName == "Model" then
1426
			for _, q in pairs(c:GetChildren()) do
1427
				if q.Name == ("Forgotten Dominus") then
1428
					FOUNDFORGOTTEN = true
1429
				end
1430
			end
1431
		end
1432
	end
1433
	if FOUNDFORGOTTEN == true then
1434
		sick:Stop()
1435
	else
1436
		sick.Playing = true
1437
	end
1438
	if VALUE1 == false then
1439
		MagicSphere(VT(1,1,1)/5,35,CF(Torso.Position)*ANGLES(RAD(MRANDOM(-180,180)),RAD(MRANDOM(-180,180)),RAD(MRANDOM(-180,180)))*CF(0,MRANDOM(3,6),0),C3(1,1,1),VT(0,0,0))
1440
	end
1441
end
1442
1443
--//=================================\\
1444
--\\=================================//
1445
1446
1447
1448
1449
1450
--//====================================================\\--
1451
--||			  		 END OF SCRIPT
1452
--\\====================================================//--