View difference between Paste ID: UgmtUi4e and upVkWayG
SHOW: | | - or go back to the newest paste.
1
--//====================================================\\--
2
--||			   CREATED BY SHACKLUSTER
3
--\\====================================================//--
4
5
if game:GetService("RunService"):IsClient() then error("Script must be server-side in order to work; use h/ and not hl/") end
6
local Player,Mouse,mouse,UserInputService,ContextActionService = owner
7
do
8
	print("FE Compatibility code by Mokiros")
9
	script.Parent = Player.Character
10
11-
Player = game:GetService("Players").LocalPlayer
11+
	--RemoteEvent for communicating
12
	local Event = Instance.new("RemoteEvent")
13
	Event.Name = "UserInput_Event"
14
15
	--Fake event to make stuff like Mouse.KeyDown work
16
	local function fakeEvent()
17-
Mouse = Player:GetMouse()
17+
		local t = {_fakeEvent=true,Connect=function(self,f)self.Function=f end}
18
		t.connect = t.Connect
19
		return t
20
	end
21
22
	--Creating fake input objects with fake variables
23
    local m = {Target=nil,Hit=CFrame.new(),KeyUp=fakeEvent(),KeyDown=fakeEvent(),Button1Up=fakeEvent(),Button1Down=fakeEvent()}
24
	local UIS = {InputBegan=fakeEvent(),InputEnded=fakeEvent()}
25
	local CAS = {Actions={},BindAction=function(self,name,fun,touch,...)
26
		CAS.Actions[name] = fun and {Name=name,Function=fun,Keys={...}} or nil
27
	end}
28
	--Merged 2 functions into one by checking amount of arguments
29
	CAS.UnbindAction = CAS.BindAction
30
31
	--This function will trigger the events that have been :Connect()'ed
32
	local function te(self,ev,...)
33
		local t = m[ev]
34
		if t and t._fakeEvent and t.Function then
35
			t.Function(...)
36
		end
37
	end
38
	m.TrigEvent = te
39
	UIS.TrigEvent = te
40
41
	Event.OnServerEvent:Connect(function(plr,io)
42
	    if plr~=Player then return end
43
		if io.isMouse then
44
			m.Target = io.Target
45
			m.Hit = io.Hit
46
		else
47
			local b = io.UserInputState == Enum.UserInputState.Begin
48
			if io.UserInputType == Enum.UserInputType.MouseButton1 then
49
				return m:TrigEvent(b and "Button1Down" or "Button1Up")
50
			end
51
			for _,t in pairs(CAS.Actions) do
52
				for _,k in pairs(t.Keys) do
53
					if k==io.KeyCode then
54
						t.Function(t.Name,io.UserInputState,io)
55
					end
56
				end
57
			end
58
			m:TrigEvent(b and "KeyDown" or "KeyUp",io.KeyCode.Name:lower())
59
			UIS:TrigEvent(b and "InputBegan" or "InputEnded",io,false)
60
	    end
61
	end)
62
	Event.Parent = NLS([==[
63
	local Player = game:GetService("Players").LocalPlayer
64
	local Event = script:WaitForChild("UserInput_Event")
65
66
	local UIS = game:GetService("UserInputService")
67
	local input = function(io,a)
68
		if a then return end
69
		--Since InputObject is a client-side instance, we create and pass table instead
70
		Event:FireServer({KeyCode=io.KeyCode,UserInputType=io.UserInputType,UserInputState=io.UserInputState})
71
	end
72
	UIS.InputBegan:Connect(input)
73
	UIS.InputEnded:Connect(input)
74
75
	local Mouse = Player:GetMouse()
76
	local h,t
77
	--Give the server mouse data 30 times every second, but only if the values changed
78
	--If player is not moving their mouse, client won't fire events
79
	while wait(1/30) do
80
		if h~=Mouse.Hit or t~=Mouse.Target then
81
			h,t=Mouse.Hit,Mouse.Target
82
			Event:FireServer({isMouse=true,Target=t,Hit=h})
83
		end
84
	end]==],Player.Character)
85
	Mouse,mouse,UserInputService,ContextActionService = m,m,UIS,CAS
86
end
87
88
wait(0.2)
89
90
91
92
Player = owner
93
PlayerGui = Player.PlayerGui
94
Cam = workspace.CurrentCamera
95
Backpack = Player.Backpack
96
Character = Player.Character
97
Humanoid = Character.Humanoid
98
99
RootPart = Character["HumanoidRootPart"]
100
Torso = Character["Torso"]
101
Head = Character["Head"]
102
RightArm = Character["Right Arm"]
103
LeftArm = Character["Left Arm"]
104
RightLeg = Character["Right Leg"]
105
LeftLeg = Character["Left Leg"]
106
RootJoint = RootPart["RootJoint"]
107
Neck = Torso["Neck"]
108
RightShoulder = Torso["Right Shoulder"]
109
LeftShoulder = Torso["Left Shoulder"]
110
RightHip = Torso["Right Hip"]
111
LeftHip = Torso["Left Hip"]
112
113
IT = Instance.new
114
CF = CFrame.new
115
VT = Vector3.new
116
RAD = math.rad
117
C3 = Color3.new
118
UD2 = UDim2.new
119
BRICKC = BrickColor.new
120
ANGLES = CFrame.Angles
121
EULER = CFrame.fromEulerAnglesXYZ
122
COS = math.cos
123
ACOS = math.acos
124
SIN = math.sin
125
ASIN = math.asin
126
ABS = math.abs
127
MRANDOM = math.random
128
FLOOR = math.floor
129
130
function CreateMesh(MESH, PARENT, MESHTYPE, MESHID, TEXTUREID, SCALE, OFFSET)
131
	local NEWMESH = IT(MESH)
132
	if MESH == "SpecialMesh" then
133
		NEWMESH.MeshType = MESHTYPE
134
		if MESHID ~= "nil" and MESHID ~= "" then
135
			NEWMESH.MeshId = "http://www.roblox.com/asset/?id="..MESHID
136
		end
137
		if TEXTUREID ~= "nil" and TEXTUREID ~= "" then
138
			NEWMESH.TextureId = "http://www.roblox.com/asset/?id="..TEXTUREID
139
		end
140
	end
141
	NEWMESH.Offset = OFFSET or VT(0, 0, 0)
142
	NEWMESH.Scale = SCALE
143
	NEWMESH.Parent = PARENT
144
	return NEWMESH
145
end
146
147
function CreatePart(FORMFACTOR, PARENT, MATERIAL, REFLECTANCE, TRANSPARENCY, BRICKCOLOR, NAME, SIZE)
148
	local NEWPART = IT("Part")
149
	NEWPART.formFactor = FORMFACTOR
150
	NEWPART.Reflectance = REFLECTANCE
151
	NEWPART.Transparency = TRANSPARENCY
152
	NEWPART.CanCollide = false
153
	NEWPART.Locked = true
154
	NEWPART.Anchored = true
155
	NEWPART.BrickColor = BRICKC(tostring(BRICKCOLOR))
156
	NEWPART.Name = NAME
157
	NEWPART.Size = SIZE
158
	NEWPART.Position = Torso.Position
159
	NEWPART.Material = MATERIAL
160
	NEWPART:BreakJoints()
161
	NEWPART.Parent = PARENT
162
	return NEWPART
163
end
164
165
166
--//=================================\\
167
--||		  CUSTOMIZATION
168
--\\=================================//
169
170
Class_Name = "Nigger OP Hole"
171
Weapon_Name = "Add-ons"
172
173
Custom_Colors = {
174
	Custom_Color_1 = BRICKC("Institutional black"); --1st color for the weapon.
175
	Custom_Color_2 = BRICKC("Institutional black"); --2nd color for the weapon.
176
177
	Custom_Color_3 = BRICKC("Institutional red"); --Color for the abilities.
178
	Custom_Color_4 = BRICKC("Institutional red"); --Color for the secondary bar.
179
	Custom_Color_5 = BRICKC("Institutional red"); --Color for the mana bar.
180
	Custom_Color_6 = BRICKC("Institutional red"); --Color for the health bar.
181
	Custom_Color_7 = BRICKC("Institutional red"); --Color for the stun bar.
182
183
	Custom_Color_8 = BRICKC("Institutional red"); --Background for the mana bar.
184
	Custom_Color_9 = BRICKC("Institutional red"); --Background for the secondary mana bar.
185
	Custom_Color_10 = BRICKC("Institutional red"); --Background for the stun bar.
186
	Custom_Color_11 = BRICKC("Institutional red"); --Background for the health bar.
187
	Custom_Color_12 = BRICKC("Institutional red"); --Background for the abilities.
188
}
189
190
191
Player_Size = 1 --Size of the player.
192
Animation_Speed = 3
193
Frame_Speed = 1 / 60 -- (1 / 30) OR (1 / 60)
194
195
local Speed = 16
196
local Effects2 = {}
197
198
--//=================================\\
199
--|| 	  END OF CUSTOMIZATION
200
--\\=================================//
201
202
	local function weldBetween(a, b)
203
	    local weldd = Instance.new("ManualWeld")
204
	    weldd.Part0 = a
205
	    weldd.Part1 = b
206
	    weldd.C0 = CFrame.new()
207
	    weldd.C1 = b.CFrame:inverse() * a.CFrame
208
	    weldd.Parent = a
209
	    return weldd
210
	end
211
212
--//=================================\\
213
--|| 	      USEFUL VALUES
214
--\\=================================//
215
216
local ROOTC0 = CF(0, 0, 0) * ANGLES(RAD(-90), RAD(0), RAD(180))
217
local NECKC0 = CF(0, 1, 0) * ANGLES(RAD(-90), RAD(0), RAD(180))
218
local RIGHTSHOULDERC0 = CF(-0.5, 0, 0) * ANGLES(RAD(0), RAD(90), RAD(0))
219
local LEFTSHOULDERC0 = CF(0.5, 0, 0) * ANGLES(RAD(0), RAD(-90), RAD(0))
220
local CO1 = 0
221
local CO2 = 0
222
local CO3 = 0
223
local CO4 = 0
224
local CHANGEDEFENSE = 0
225
local CHANGEDAMAGE = 0
226
local CHANGEMOVEMENT = 0
227
local ANIM = "Idle"
228
local ATTACK = false
229
local EQUIPPED = false
230
local HOLD = false
231
local COMBO = 1
232
local LASTPOINT = nil
233
local BLCF = nil
234
local SCFR = nil
235
local STAGGERHITANIM = false
236
local STAGGERANIM = false
237
local STUNANIM = false
238
local CRITCHANCENUMBER = 0
239
local IDLENUMBER = 0
240
local DONUMBER = 0
241
local HANDIDLE = false
242
local PLAYINGMUSIC = false
243
local SINE = 0
244
local CHANGE = 2 / Animation_Speed
245
local WALKINGANIM = false
246
local WALK = 0
247
local DISABLEJUMPING = false
248
local HASBEENBLOCKED = false
249
local STUNDELAYNUMBER = 0
250
local MANADELAYNUMBER = 0
251
local SOUND = nil
252
local SECONDARYMANADELAYNUMBER = 0
253
local ROBLOXIDLEANIMATION = IT("Animation")
254
ROBLOXIDLEANIMATION.Name = "Roblox Idle Animation"
255
ROBLOXIDLEANIMATION.AnimationId = "http://www.roblox.com/asset/?id=180435571"
256
--ROBLOXIDLEANIMATION.Parent = Humanoid
257
local WEAPONGUI = IT("ScreenGui", nil)
258
WEAPONGUI.Name = "Weapon GUI"
259
local WEAPONTOOL = IT("HopperBin", nil)
260
WEAPONTOOL.Name = Weapon_Name
261
local Weapon = IT("Model")
262
Weapon.Name = Weapon_Name
263
local Effects = IT("Folder", Weapon)
264
Effects.Name = "Effects"
265
local ANIMATOR = Humanoid.Animator
266
local ANIMATE = Character.Animate
267
local HITPLAYERSOUNDS = {--[["199149137", "199149186", "199149221", "199149235", "199149269", "199149297"--]]"263032172", "263032182", "263032200", "263032221", "263032252", "263033191"}
268
local HITARMORSOUNDS = {"199149321", "199149338", "199149367", "199149409", "199149452"}
269
local HITWEAPONSOUNDS = {"199148971", "199149025", "199149072", "199149109", "199149119"}
270
local HITBLOCKSOUNDS = {"199148933", "199148947"}
271
local PEWSOUND = {"907527750","907527912","907528019","907530553"}
272
local BULLETLOOPSOUND = "907530407"
273
local BULLETIMPACTSOUND = "907532865"
274
local UNANCHOR = true
275
local MAGICPARTICLE = "655109389"
276
local Rooted = false
277
local GRABBED = false
278
local X = 10
279
local Y = 10
280
local Z = 10
281
local CUSTOMMOVEMENT = false
282
local FLIGHT = false
283
local VACUUM = false
284
285
--//=================================\\
286
--\\=================================//
287
288
289
290
291
--//=================================\\
292
--|| SAZERENOS' ARTIFICIAL HEARTBEAT
293
--\\=================================//
294
295
ArtificialHB = Instance.new("BindableEvent", script)
296
ArtificialHB.Name = "ArtificialHB"
297
298
script:WaitForChild("ArtificialHB")
299
300
frame = Frame_Speed
301
tf = 0
302
allowframeloss = false
303
tossremainder = false
304
lastframe = tick()
305
script.ArtificialHB:Fire()
306
307
game:GetService("RunService").Heartbeat:connect(function(s, p)
308
	tf = tf + s
309
	if tf >= frame then
310
		if allowframeloss then
311
			script.ArtificialHB:Fire()
312
			lastframe = tick()
313
		else
314
			for i = 1, math.floor(tf / frame) do
315
				script.ArtificialHB:Fire()
316
			end
317
		lastframe = tick()
318
		end
319
		if tossremainder then
320
			tf = 0
321
		else
322
			tf = tf - frame * math.floor(tf / frame)
323
		end
324
	end
325
end)
326
327
--//=================================\\
328
--\\=================================//
329
330
331
332
333
334
--//=================================\\
335
--|| 	      SOME FUNCTIONS
336
--\\=================================//
337
338
function Raycast(POSITION, DIRECTION, RANGE, IGNOREDECENDANTS)
339
	return workspace:FindPartOnRay(Ray.new(POSITION, DIRECTION.unit * RANGE), IGNOREDECENDANTS)
340
end
341
342
function PositiveAngle(NUMBER)
343
	if NUMBER >= 0 then
344
		NUMBER = 0
345
	end
346
	return NUMBER
347
end
348
349
function NegativeAngle(NUMBER)
350
	if NUMBER <= 0 then
351
		NUMBER = 0
352
	end
353
	return NUMBER
354
end
355
356
function Swait(NUMBER)
357
	if NUMBER == 0 or NUMBER == nil then
358
		ArtificialHB.Event:wait()
359
	else
360
		for i = 1, NUMBER do
361
			ArtificialHB.Event:wait()
362
		end
363
	end
364
end
365
366
function QuaternionFromCFrame(cf)
367
	local mx, my, mz, m00, m01, m02, m10, m11, m12, m20, m21, m22 = cf:components()
368
	local trace = m00 + m11 + m22
369
	if trace > 0 then 
370
		local s = math.sqrt(1 + trace)
371
		local recip = 0.5 / s
372
		return (m21 - m12) * recip, (m02 - m20) * recip, (m10 - m01) * recip, s * 0.5
373
	else
374
		local i = 0
375
		if m11 > m00 then
376
			i = 1
377
		end
378
		if m22 > (i == 0 and m00 or m11) then
379
			i = 2
380
		end
381
		if i == 0 then
382
			local s = math.sqrt(m00 - m11 - m22 + 1)
383
			local recip = 0.5 / s
384
			return 0.5 * s, (m10 + m01) * recip, (m20 + m02) * recip, (m21 - m12) * recip
385
		elseif i == 1 then
386
			local s = math.sqrt(m11 - m22 - m00 + 1)
387
			local recip = 0.5 / s
388
			return (m01 + m10) * recip, 0.5 * s, (m21 + m12) * recip, (m02 - m20) * recip
389
		elseif i == 2 then
390
			local s = math.sqrt(m22 - m00 - m11 + 1)
391
			local recip = 0.5 / s return (m02 + m20) * recip, (m12 + m21) * recip, 0.5 * s, (m10 - m01) * recip
392
		end
393
	end
394
end
395
 
396
function QuaternionToCFrame(px, py, pz, x, y, z, w)
397
	local xs, ys, zs = x + x, y + y, z + z
398
	local wx, wy, wz = w * xs, w * ys, w * zs
399
	local xx = x * xs
400
	local xy = x * ys
401
	local xz = x * zs
402
	local yy = y * ys
403
	local yz = y * zs
404
	local zz = z * zs
405
	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))
406
end
407
 
408
function QuaternionSlerp(a, b, t)
409
	local cosTheta = a[1] * b[1] + a[2] * b[2] + a[3] * b[3] + a[4] * b[4]
410
	local startInterp, finishInterp;
411
	if cosTheta >= 0.0001 then
412
		if (1 - cosTheta) > 0.0001 then
413
			local theta = ACOS(cosTheta)
414
			local invSinTheta = 1 / SIN(theta)
415
			startInterp = SIN((1 - t) * theta) * invSinTheta
416
			finishInterp = SIN(t * theta) * invSinTheta
417
		else
418
			startInterp = 1 - t
419
			finishInterp = t
420
		end
421
	else
422
		if (1 + cosTheta) > 0.0001 then
423
			local theta = ACOS(-cosTheta)
424
			local invSinTheta = 1 / SIN(theta)
425
			startInterp = SIN((t - 1) * theta) * invSinTheta
426
			finishInterp = SIN(t * theta) * invSinTheta
427
		else
428
			startInterp = t - 1
429
			finishInterp = t
430
		end
431
	end
432
	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
433
end
434
435
function Clerp(a, b, t)
436
	local qa = {QuaternionFromCFrame(a)}
437
	local qb = {QuaternionFromCFrame(b)}
438
	local ax, ay, az = a.x, a.y, a.z
439
	local bx, by, bz = b.x, b.y, b.z
440
	local _t = 1 - t
441
	return QuaternionToCFrame(_t * ax + t * bx, _t * ay + t * by, _t * az + t * bz, QuaternionSlerp(qa, qb, t))
442
end
443
444
function CreateFrame(PARENT, TRANSPARENCY, BORDERSIZEPIXEL, POSITION, SIZE, COLOR, BORDERCOLOR, NAME)
445
	local frame = IT("Frame")
446
	frame.BackgroundTransparency = TRANSPARENCY
447
	frame.BorderSizePixel = BORDERSIZEPIXEL
448
	frame.Position = POSITION
449
	frame.Size = SIZE
450
	frame.BackgroundColor3 = COLOR
451
	frame.BorderColor3 = BORDERCOLOR
452
	frame.Name = NAME
453
	frame.Parent = PARENT
454
	return frame
455
end
456
457
function CreateLabel(PARENT, TEXT, TEXTCOLOR, TEXTFONTSIZE, TEXTFONT, TRANSPARENCY, BORDERSIZEPIXEL, STROKETRANSPARENCY, NAME)
458
	local label = IT("TextLabel")
459
	label.BackgroundTransparency = 1
460
	label.Size = UD2(1, 0, 1, 0)
461
	label.Position = UD2(0, 0, 0, 0)
462
	label.TextColor3 = C3(255, 255, 255)
463
	label.TextStrokeTransparency = STROKETRANSPARENCY
464
	label.TextTransparency = TRANSPARENCY
465
	label.FontSize = TEXTFONTSIZE
466
	label.Font = TEXTFONT
467
	label.BorderSizePixel = BORDERSIZEPIXEL
468
	label.TextScaled = true
469
	label.Text = TEXT
470
	label.Name = NAME
471
	label.Parent = PARENT
472
	return label
473
end
474
475
function NoOutlines(PART)
476
	PART.TopSurface, PART.BottomSurface, PART.LeftSurface, PART.RightSurface, PART.FrontSurface, PART.BackSurface = 10, 10, 10, 10, 10, 10
477
end
478
479
480
function CreateWeldOrSnapOrMotor(TYPE, PARENT, PART0, PART1, C0, C1)
481
	local NEWWELD = IT(TYPE)
482
	NEWWELD.Part0 = PART0
483
	NEWWELD.Part1 = PART1
484
	NEWWELD.C0 = C0
485
	NEWWELD.C1 = C1
486
	NEWWELD.Parent = PARENT
487
	return NEWWELD
488
end
489
490
function CreateSound(ID, PARENT, VOLUME, PITCH, DOESLOOP)
491
	local NEWSOUND = nil
492
	coroutine.resume(coroutine.create(function()
493
		NEWSOUND = IT("Sound", PARENT)
494
		NEWSOUND.Volume = VOLUME
495
		NEWSOUND.Pitch = PITCH
496
		NEWSOUND.SoundId = "http://www.roblox.com/asset/?id="..ID
497
		Swait()
498
		NEWSOUND:play()
499
		if DOESLOOP == false then
500
			repeat Swait() until NEWSOUND.Playing == false
501
			NEWSOUND:remove()
502
		elseif DOESLOOP == true then
503
			NEWSOUND.Looped = true
504
		end
505
	end))
506
	return NEWSOUND
507
end
508
509
function CFrameFromTopBack(at, top, back)
510
	local right = top:Cross(back)
511
	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)
512
end
513
514
function CreateWave(inair,size,doesrotate,rotatedirection,waitt,part,offset,color)
515
	local wave = CreatePart(3, Effects, "Neon", 0, 0.5, BRICKC(color), "Effect", VT(0,0,0))
516
	local mesh = IT("SpecialMesh",wave)
517
	mesh.MeshType = "FileMesh"
518
	mesh.MeshId = "http://www.roblox.com/asset/?id=20329976"
519
	mesh.Scale = VT(size,size,size)
520
	mesh.Offset = VT(0,0,-size/8)
521
	wave.CFrame = CF(part.Position) * CF(0,offset,0) * ANGLES(RAD(inair),RAD(0),RAD(0))
522
	coroutine.resume(coroutine.create(function(PART)
523
		for i = 1, waitt do
524
			Swait()
525
			mesh.Scale = mesh.Scale + VT(size/5,0,size/5)
526
			mesh.Offset = VT(0,0,-(mesh.Scale.X/8))
527
			if doesrotate == true then
528
				wave.CFrame = wave.CFrame * CFrame.fromEulerAnglesXYZ(0, rotatedirection, 0)
529
			end
530
			wave.Transparency = wave.Transparency + (0.5/waitt)
531
			if wave.Transparency > 0.99 then
532
				wave:remove()
533
			end
534
		end
535
	end))
536
end
537
538
function CreateSwirl(inair,size,doesrotate,rotatedirection,waitt,part,offset,color)
539
	local wave = CreatePart(3, Effects, "Neon", 0, 0.5, BRICKC(color), "Effect", VT(0,0,0))
540
	local mesh = IT("SpecialMesh",wave)
541
	mesh.MeshType = "FileMesh"
542
	mesh.MeshId = "http://www.roblox.com/asset/?id=1051557"
543
	mesh.Scale = VT(size,size,size)
544
	wave.CFrame = CF(part.Position) * CF(0,offset,0) * ANGLES(RAD(inair),RAD(0),RAD(0))
545
	coroutine.resume(coroutine.create(function(PART)
546
		for i = 1, waitt do
547
			Swait()
548
			mesh.Scale = mesh.Scale + VT(size/5,0,size/5)
549
			if doesrotate == true then
550
				wave.CFrame = wave.CFrame * CFrame.fromEulerAnglesXYZ(0, rotatedirection, 0)
551
			end
552
			wave.Transparency = wave.Transparency + (0.5/waitt)
553
			if wave.Transparency > 0.99 then
554
				wave:remove()
555
			end
556
		end
557
	end))
558
end
559
560
function CreateTornado(inair,size,doesrotate,rotatedirection,waitt,part,offset,color)
561
	local wave = CreatePart(3, Effects, "Neon", 0, 0.5, BRICKC(color), "Effect", VT(0,0,0))
562
	local mesh = IT("SpecialMesh",wave)
563
	mesh.MeshType = "FileMesh"
564
	mesh.MeshId = "http://www.roblox.com/asset/?id=102638417"
565
	mesh.Scale = VT(size,size,size)
566
	wave.CFrame = CF(part.Position) * CF(0,offset,0) * ANGLES(RAD(inair),RAD(0),RAD(0))
567
	coroutine.resume(coroutine.create(function(PART)
568
		for i = 1, waitt do
569
			Swait()
570
			mesh.Scale = mesh.Scale + VT(size/5,0,size/5)
571
			if doesrotate == true then
572
				wave.CFrame = wave.CFrame * CFrame.fromEulerAnglesXYZ(0, rotatedirection, 0)
573
			end
574
			wave.Transparency = wave.Transparency + (0.5/waitt)
575
			if wave.Transparency > 0.99 then
576
				wave:remove()
577
			end
578
		end
579
	end))
580
end
581
582
function CreateRing(inair,size,doesrotate,rotatedirection,waitt,part,offset,spin1,spin2,color)
583
	local wave = CreatePart(3, Effects, "Neon", 0, 0.5, BRICKC(color), "Effect", VT(0,0,0))
584
	local mesh = IT("SpecialMesh",wave)
585
	mesh.MeshType = "FileMesh"
586
	mesh.MeshId = "http://www.roblox.com/asset/?id=3270017"
587
	mesh.Scale = VT(size,size,size)
588
	mesh.Offset = VT(0,0,0)
589
	wave.CFrame = CF(part.Position) * CF(0,offset,0) * ANGLES(RAD(inair),RAD(0),RAD(0))
590
	coroutine.resume(coroutine.create(function(PART)
591
		for i = 1, waitt do
592
			Swait()
593
			mesh.Scale = mesh.Scale + VT(size/5,size/5,size/5)
594
			if doesrotate == true then
595
				wave.CFrame = wave.CFrame * CFrame.fromEulerAnglesXYZ(spin2, rotatedirection, spin1)
596
			end
597
			wave.Transparency = wave.Transparency + (1/waitt)
598
			if wave.Transparency > 0.99 then
599
				wave:remove()
600
			end
601
		end
602
	end))
603
end
604
605
function MagicSphere(size,waitt,part,offset,color)
606
	local wave = CreatePart(3, Effects, "Neon", 0, 0, BRICKC(color), "Effect", VT(1,1,1))
607
	local mesh = IT("SpecialMesh",wave)
608
	mesh.MeshType = "Sphere"
609
	mesh.Scale = VT(size,size,size)
610
	mesh.Offset = VT(0,0,0)
611
	wave.CFrame = CF(part.Position) * CF(0,offset,0) * ANGLES(RAD(0),RAD(0),RAD(0))
612
	coroutine.resume(coroutine.create(function(PART)
613
		for i = 1, waitt do
614
			Swait()
615
			mesh.Scale = mesh.Scale + VT(size/5,size/5,size/5)
616
			wave.Transparency = wave.Transparency + (1/waitt)
617
			if wave.Transparency > 0.99 then
618
				wave:remove()
619
			end
620
		end
621
	end))
622
end
623
624
function clerp(a, b, t)
625
  return a:lerp(b, t)
626
end
627
628
function newBezier(startpos, pos2, pos3, endpos, t)
629
  local A = clerp(startpos, pos2, t)
630
  local B = clerp(pos2, pos3, t)
631
  local C = clerp(pos3, endpos, t)
632
  local lerp1 = clerp(A, B, t)
633
  local lerp2 = clerp(B, C, t)
634
  local cubic = clerp(lerp1, lerp2, t)
635
  return cubic
636
end
637
638
function MagicBlock(size,waitt,part,offset,color)
639
	local wave = CreatePart(3, Effects, "Neon", 0, 0, BRICKC(color), "Effect", VT(size,size,size))
640
	local mesh = IT("BlockMesh",wave)
641
	wave.CFrame = CF(part.Position) * CF(0,offset,0) * ANGLES(RAD(0),RAD(0),RAD(0))
642
	coroutine.resume(coroutine.create(function(PART)
643
		for i = 1, waitt do
644
			Swait()
645
			mesh.Scale = mesh.Scale + VT(size/5,size/5,size/5)
646
			wave.CFrame = CF(wave.Position) * ANGLES(RAD(math(-360,360)),RAD(math(-360,360)),RAD(math(-360,360)))
647
			wave.Transparency = wave.Transparency + (0.5/waitt)
648
			if wave.Transparency > 0.99 then
649
				wave:remove()
650
			end
651
		end
652
	end))
653
end
654
655
local EyeSizes={
656
	NumberSequenceKeypoint.new(0,1,0),
657
	NumberSequenceKeypoint.new(1,0.2,0)
658
}
659
local EyeTrans={
660
	NumberSequenceKeypoint.new(0,0.8,0),
661
	NumberSequenceKeypoint.new(1,1,0)
662
}
663
local PE=Instance.new("ParticleEmitter")
664
PE.LightEmission=0
665
PE.Size=NumberSequence.new(EyeSizes)
666
PE.Transparency=NumberSequence.new(EyeTrans)
667
PE.Lifetime=NumberRange.new(0.35,0.35,0.35)
668
PE.Rotation=NumberRange.new(0,360)
669
PE.Rate=15
670
PE.Acceleration = Vector3.new(0,75,0)
671
PE.Drag = 5
672
PE.Enabled = false
673
PE.RotSpeed = NumberRange.new(75)
674
PE.Speed = NumberRange.new(0,0,0)
675
PE.Texture="http://www.roblox.com/asset/?id=1179557490"
676
PE.ZOffset = 0
677
PE.Name = "Particles"
678
679
function CreateParticles(art,accel,drag,rate,type,isenabledbydefault,locked,size)
680
	local particle = PE:Clone()
681
	particle.Parent = art
682
	particle.Acceleration = accel
683
	particle.Rate = rate
684
	if type == "Fire" then
685
		local EyeSizes={
686
			NumberSequenceKeypoint.new(0,size,size*0.3),
687
			NumberSequenceKeypoint.new(1,0.2,0.2)
688
		}
689
		particle.Size = NumberSequence.new(EyeSizes)
690
	elseif type == "Smoke" then
691
		local EyeSizes={
692
			NumberSequenceKeypoint.new(0,size,0),
693
			NumberSequenceKeypoint.new(1,size*5,0.5)
694
		}
695
		particle.Size = NumberSequence.new(EyeSizes)
696
	elseif type == "Solid" then
697
		local EyeSizes={
698
			NumberSequenceKeypoint.new(0,size,0),
699
			NumberSequenceKeypoint.new(1,size,0)
700
		}
701
		particle.Size = NumberSequence.new(EyeSizes)
702
	end
703
	particle.LockedToPart = locked
704
	particle.Drag = drag
705
	particle.Texture = "http://www.roblox.com/asset/?id=43997508"
706
	particle.Enabled = isenabledbydefault
707
return particle
708
end
709
710
--//=================================\\
711
--\\=================================//
712
713
714
--//=================================\\
715
--||	     WEAPON CREATION
716
--\\=================================//
717
718
if Player_Size ~= 1 then
719
	for _, v in pairs (Weapon:GetChildren()) do
720
		if v.ClassName == "Motor" or v.ClassName == "Weld" or v.ClassName == "Snap" then
721
			local p1 = v.Part1
722
			v.Part1 = nil
723
			local cf1, cf2, cf3, cf4, cf5, cf6, cf7, cf8, cf9, cf10, cf11, cf12 = v.C1:components()
724
			v.C1 = CF(cf1 * Player_Size, cf2 * Player_Size, cf3 * Player_Size, cf4, cf5, cf6, cf7, cf8, cf9, cf10, cf11, cf12)
725
			v.Part1 = p1
726
		elseif v.ClassName == "Part" then
727
			for _, b in pairs (v:GetChildren()) do
728
				if b.ClassName == "SpecialMesh" or b.ClassName == "BlockMesh" then
729
					b.Scale = VT(b.Scale.x * Player_Size, b.Scale.y * Player_Size, b.Scale.z * Player_Size)
730
				end
731
			end
732
		end
733
	end
734
end
735
736
for _, c in pairs(Weapon:GetChildren()) do
737
	if c.ClassName == "Part" then
738
		c.CustomPhysicalProperties = PhysicalProperties.new(0, 0, 0, 0, 0)
739
	end
740
end
741
742
Weapon.Parent = Character
743
744
Humanoid.Died:connect(function()
745
	ATTACK = true
746
end)
747
748
print(Class_Name.." loaded.")
749
750
local ORB = IT("Part",Weapon)
751
ORB.CanCollide = false
752
ORB.Anchored = false
753
ORB.CFrame = RootPart.CFrame
754
ORB.Shape = "Ball"
755
ORB.Material = "Neon"
756
ORB.Size = VT(0.2,0.2,0.2)
757
ORB.Color = C3(0.5,0,1)
758
local Orbmesh = IT("SpecialMesh",ORB)
759
Orbmesh.MeshType = "Sphere"
760
Orbmesh.Scale = VT(10,10,10)
761
local grav = Instance.new("BodyPosition",ORB)
762
grav.P = 20000
763
grav.maxForce = Vector3.new(math.huge,math.huge,math.huge)
764
grav.position = RootPart.CFrame*CF(3,0.7,-1).p
765
grav.Name = "GravityForce"
766
CreateParticles(ORB,VT(0,0,0),0,150,"Solid",true,true,4)
767
768
--//=================================\\
769
--\\=================================//
770
771
function onChatted(msg)
772
	if msg:sub(1,10) == "Orb, play " then
773
		local ID = msg:sub(11)
774
		if SOUND == nil then
775
			SOUND = CreateSound(ID, ORB, 5, 1, true)
776
		else
777
			SOUND:remove()
778
			SOUND = CreateSound(ID, ORB, 5, 1, true)
779
		end
780-
	local body = v:GetChildren()
780+
781
	elseif msg == "Orb, stop music" then
782
	if SOUND ~= nil then
783
		SOUND:remove()
784
		PLAYINGMUSIC = false
785
	elseif msg == "Orb, do you like me?" then
786
		CreateSound("269597232", ORB, 1, 1, false)
787
	end
788
	end
789
end
790
Player.Chatted:connect(onChatted)
791
792
--//=================================\\
793
--||			ABILITIES
794
--\\=================================//
795
796
function turnto(pos,part)
797
	part.CFrame = CF(part.Position,VT(pos.X,RootPart.Position.Y,pos.Z))
798
end
799
800
function Warp()
801
	ATTACK = true
802
	Rooted = true
803
	CUSTOMMOVEMENT = true
804
	grav.position = RootPart.CFrame.p
805
	Swait(50)
806
	CreateSound(PEWSOUND[MRANDOM(1, #PEWSOUND)], ORB, 2, MRANDOM(8, 9) / 10,false)
807
	for i = 1, 25 do
808
		Swait()
809
		X = X + 1
810
		Y = X
811
		Z = X
812
	end
813
	local weld = weldBetween(Torso,ORB)
814
	grav.position = VT(Mouse.Hit.p.X,Mouse.Hit.p.Y+4,Mouse.Hit.p.Z)
815
	Swait(50)
816
	CUSTOMMOVEMENT = false
817
	weld:remove()
818
	for i = 1, 25 do
819
		Swait()
820
		X = X - 1
821
		Y = X
822
		Z = X
823
	end
824
	ATTACK = false
825
	Rooted = false
826
end
827
828
function StartFlight()
829
	Rooted = true
830
	CUSTOMMOVEMENT = true
831
	grav.position = RootPart.Position
832
	Swait(50)
833
	grav.P = 500
834
	CreateSound(PEWSOUND[MRANDOM(1, #PEWSOUND)], ORB, 2, MRANDOM(8, 9) / 10,false)
835
	for i = 1, 10 do
836
		Swait()
837
		X = X - 1
838
		Y = X
839
		Z = X
840
	end
841
	local weld = weldBetween(Torso,ORB)
842
	repeat
843
		Swait()
844
		grav.position = Mouse.Hit.p
845
		turnto(Mouse.Hit.p,RootPart)
846
	until FLIGHT == false
847
	grav.P = 20000
848
	CUSTOMMOVEMENT = false
849
	weld:remove()
850
	for i = 1, 10 do
851
		Swait()
852
		X = X + 1
853
		Y = X
854
		Z = X
855
	end
856
	Rooted = false
857
end
858
859
function succnearest(position,range,force,doesbreak)
860
	for i,v in ipairs(workspace:GetChildren()) do
861
	local body = v:GetChildren() or v
862
		for part = 1, #body do
863
			if((body[part].ClassName == "Part" or body[part].ClassName == "MeshPart") and v ~= Character) then
864
				if(body[part].Position - position).Magnitude < range then
865
if body[part] ~= "Base" then
866
body[part].Anchored = false
867
end
868
					local bv = Instance.new("BodyVelocity") 
869
					bv.maxForce = Vector3.new(1e9, 1e9, 1e9)
870
					bv.velocity = CF(body[part].Position,position).lookVector*force
871
					bv.Parent = body[part]
872
					bv.Name = "SUCC"
873
					if v:FindFirstChild("Humanoid") and doesbreak == false then
874
						dealdamage(body[part],5,15,0,false,12,2)
875
					end
876
					if v.ClassName == "Model" and doesbreak == true then
877
local a = v:GetChildren()
878
a.Parent = workspace
879
						v:BreakJoints()
880
881
					end
882
					game:GetService("Debris"):AddItem(bv, 0.1)
883
				end
884
			end
885
		end
886
		if v.ClassName == "Part" then
887
			if v.Anchored == false and (v.Position - position).Magnitude < range then
888
				local bv = Instance.new("BodyVelocity") 
889
				bv.maxForce = Vector3.new(1e9, 1e9, 1e9)
890
				bv.velocity = CF(v.Position,position).lookVector*force
891
				bv.Parent = v
892
				bv.Name = "SUCC"
893
				game:GetService("Debris"):AddItem(bv, 0.1)
894
			end
895
		end
896
	end
897
end
898
899
function dealdamage(hit,min,max,maxstrength,beserk,critrate,critmultiplier)
900
	if hit.Parent:FindFirstChildOfClass("Humanoid") and hit.Parent:FindFirstChild("HitBy"..Player.Name) == nil then
901
		local humanoid = hit.Parent:FindFirstChildOfClass("Humanoid")
902
		local dmg = math.random(min,max)
903
		if humanoid.Health > 0 then
904
			if beserk == true then
905
				humanoid.Health = 0
906
			else
907
				--CreateSound("260430060", hit, 1.2, MRANDOM(7, 12) / 10)
908
				--hit.Velocity = CFrame.new(Torso.Position,hit.Position).lookVector*5*maxstrength
909
				if math.random(1,100) < critrate+1 then
910
					humanoid.Health = humanoid.Health - dmg*critmultiplier
911
					--StatLabel("Normal", hit.CFrame * CF(0, 0 + (hit.Size.z - 1), 0), "CRIT/"..dmg*critmultiplier, C3(255/255, 0, 0))
912
				else
913
					humanoid.Health = humanoid.Health - dmg
914
					--StatLabel("Normal", hit.CFrame * CF(0, 0 + (hit.Size.z - 1), 0), dmg, C3(255/255, 0, 0))
915
				end
916
				local defence = Instance.new("BoolValue",hit.Parent)
917
				defence.Name = ("HitBy"..Player.Name)
918
				game:GetService("Debris"):AddItem(defence, 0.5)
919
			end
920
		end
921
	end
922
end
923
924
function Vacuum()
925
	CUSTOMMOVEMENT = true
926
	local succ = CreateSound("319444224", ORB, 0.3, 1, true)
927
	local harm = ORB.Touched:Connect(function(hit)
928
		if hit.Parent ~= Character and hit.Parent.ClassName ~= "Accessory" and hit.Parent ~= Effects and hit.Anchored == false then
929
			hit:remove()
930
			CreateSound("261732529", ORB, 3, 1,false)
931
		end
932
	end)
933
	repeat
934
		Swait()
935
		succnearest(ORB.Position,50,80,true)
936
	until VACUUM == false
937
	CUSTOMMOVEMENT = false
938
	succ:remove()
939
	harm:disconnect()
940
end
941
942
function shootbullet()
943
	CreateSound(PEWSOUND[MRANDOM(1, #PEWSOUND)], ORB, 2, MRANDOM(8, 9) / 10,false)
944
	local bullet = IT("Part",Effects)
945
	bullet.Size = VT(1,1,1)
946
	bullet.Shape = "Ball"
947
	bullet.Material = "Neon"
948
	bullet.Color = C3(0.5,0,1)
949
	local sparks = CreateParticles(bullet,VT(0,0,0),0,150,"Solid",true,true,2)
950
	bullet.CFrame = ORB.CFrame
951
	local bv = Instance.new("BodyVelocity") 
952
	bv.maxForce = Vector3.new(1e9, 1e9, 1e9)
953
	bv.velocity = CF(bullet.Position,Mouse.Hit.p).lookVector*200
954
	bv.Parent = bullet
955
	bv.Name = "MOVE"
956
	local loop = CreateSound(BULLETLOOPSOUND, bullet, 0.6, MRANDOM(9, 11) / 10,true)
957
	local HIT = false
958
	local harm = bullet.Touched:Connect(function(hit)
959
		if HIT == false and hit.Parent ~= Character and hit.Parent ~= Weapon and hit.Parent ~= Effects then
960
			HIT = true
961
			coroutine.resume(coroutine.create(function()
962
				coroutine.resume(coroutine.create(function()
963
					for i = 1, 10 do
964
						Swait()
965
						bullet.Transparency = bullet.Transparency + 0.1
966
					end
967
				end))
968
				bullet.Anchored = true
969
				bullet.CanCollide = false
970
				sparks.Enabled = false
971
				local sparks2 = CreateParticles(bullet,VT(0,0,0),0,150,"Solid",true,true,7)
972
				loop.Volume = 3
973
				CreateSound(BULLETIMPACTSOUND, bullet, 2, MRANDOM(9, 11) / 10,false)
974
				for i = 1, 350 do
975
					Swait()
976
					succnearest(bullet.Position,15,25,false)
977
				end
978
				sparks2.Enabled = false
979
				for i = 1, 10 do
980
					Swait()
981
					loop.Volume = loop.Volume - (3/10)
982
				end
983
				bullet:remove()
984
			end))
985
		end
986
	end)
987
end
988
989
function shoottoughbullet()
990
	CreateSound(PEWSOUND[MRANDOM(1, #PEWSOUND)], ORB, 2, MRANDOM(8, 9) / 10,false)
991
	local bullet = IT("Part",Effects)
992
	bullet.Size = VT(3,3,3)
993
	bullet.Shape = "Ball"
994
	bullet.Material = "Neon"
995
	bullet.Color = C3(0.5,0,1)
996
	local sparks = CreateParticles(bullet,VT(0,0,0),0,150,"Solid",true,true,3.5)
997
	bullet.CFrame = ORB.CFrame
998
	local bv = Instance.new("BodyVelocity") 
999
	bv.maxForce = Vector3.new(1e9, 1e9, 1e9)
1000
	bv.velocity = CF(bullet.Position,Mouse.Hit.p).lookVector*100
1001
	bv.Parent = bullet
1002
	bv.Name = "MOVE"
1003
	local loop = CreateSound(BULLETLOOPSOUND, bullet, 0.6, MRANDOM(5, 7) / 10,true)
1004
	local HIT = false
1005-
		if Key == "]" then
1005+
1006
		if HIT == false and hit.Parent ~= Character and hit.Parent ~= Weapon and hit.Parent ~= Effects then
1007
			HIT = true
1008
			coroutine.resume(coroutine.create(function()
1009
				coroutine.resume(coroutine.create(function()
1010
					for i = 1, 10 do
1011
						Swait()
1012
						bullet.Transparency = bullet.Transparency + 0.1
1013
					end
1014
				end))
1015
				bullet.Anchored = true
1016
				bullet.CanCollide = false
1017
				sparks.Enabled = false
1018
				local sparks2 = CreateParticles(bullet,VT(0,0,0),0,150,"Solid",true,true,15)
1019
				loop.Volume = 3
1020
				CreateSound(BULLETIMPACTSOUND, bullet, 6, MRANDOM(5,7) / 10,false)
1021
				for i = 1, 50 do
1022
					Swait()
1023
					succnearest(bullet.Position,25,100,true)
1024
				end
1025
				sparks2.Enabled = false
1026
				for i = 1, 10 do
1027
					Swait()
1028
					loop.Volume = loop.Volume - (3/10)
1029
				end
1030
				bullet:remove()
1031
			end))
1032
		end
1033
	end)
1034
end
1035
1036
function grab()
1037
	if Mouse.Target.Parent:FindFirstChild("Torso") then
1038
		local targ = Mouse.Target
1039
		GRABBED = true
1040
		targ.Anchored = true
1041
		CUSTOMMOVEMENT = true
1042
		grav.position = targ.Position
1043
		Swait(50)
1044
		if targ then
1045
			Swait(5)
1046
			targ.Anchored = false
1047
			CUSTOMMOVEMENT = false
1048
			repeat 
1049
				Swait() 
1050
				targ.CFrame = ORB.CFrame
1051
			until GRABBED == false or targ == nil
1052
			GRABBED = false
1053
		end
1054
	end
1055
end
1056
1057
--//=================================\\
1058
--||	  ASSIGN THINGS TO KEYS
1059
--\\=================================//
1060
1061
Humanoid.Changed:connect(function(Jump)
1062
	if Jump == "Jump" and (Disable_Jump == true or DISABLEJUMPING == true) then
1063
		Humanoid.Jump = false
1064
	end
1065
end)
1066
1067
function MouseDown(Mouse)
1068
	if ATTACK == false then
1069
	end
1070
end
1071
1072
function MouseUp(Mouse)
1073
HOLD = false
1074
end
1075
1076
function KeyDown(Key)
1077
	if ATTACK == false then
1078
		if Key == "e" and VACUUM == false and FLIGHT == false and GRABBED == false then
1079
			Warp()
1080
		end
1081
		if Key == "z" and VACUUM == false and GRABBED == false then
1082
			if FLIGHT == false then
1083
				FLIGHT = true
1084
				StartFlight()
1085
			elseif FLIGHT == true then
1086
				FLIGHT = false
1087
			end
1088
		end
1089
		if Key == "h" then
1090
			shootbullet()
1091
		end
1092
		if Key == "f" then
1093
			shoottoughbullet()
1094
		end
1095
		if Key == "c" and VACUUM == false then
1096
			if GRABBED == false then
1097
				grab()
1098
			elseif GRABBED == true then
1099
				GRABBED = false
1100
			end
1101
		end
1102
		if Key == "x" then
1103
			if VACUUM == false then
1104
				VACUUM = true
1105
				Vacuum()
1106
			elseif VACUUM == true then
1107
				VACUUM = false
1108
			end
1109
		end
1110
	end
1111
end
1112
1113
function KeyUp(Key)
1114
end
1115
1116
	Mouse.Button1Down:connect(function(NEWKEY)
1117
		MouseDown(NEWKEY)
1118
	end)
1119
	Mouse.Button1Up:connect(function(NEWKEY)
1120
		MouseUp(NEWKEY)
1121
	end)
1122
	Mouse.KeyDown:connect(function(NEWKEY)
1123
		KeyDown(NEWKEY)
1124
	end)
1125
	Mouse.KeyUp:connect(function(NEWKEY)
1126
		KeyUp(NEWKEY)
1127
	end)
1128
1129
--//=================================\\
1130
--\\=================================//
1131
1132
1133
function unanchor()
1134
	if UNANCHOR == true then
1135
		g = Character:GetChildren()
1136
		for i = 1, #g do
1137
			if g[i].ClassName == "Part" then
1138
				g[i].Anchored = false
1139
			end
1140
		end
1141
	end
1142
end
1143
1144
1145
--//=================================\\
1146
--||	WRAP THE WHOLE SCRIPT UP
1147
--\\=================================//
1148
1149
Humanoid.Changed:connect(function(Jump)
1150
	if Jump == "Jump" and (Disable_Jump == true or DISABLEJUMPING == true) then
1151
		Humanoid.Jump = false
1152
	end
1153
end)
1154
1155
local loop = 0
1156
local aaa = 1/2
1157
local loop2 = 0
1158
1159
while true do
1160
	Swait()
1161
	local TORSOVELOCITY = (RootPart.Velocity * VT(1, 0, 1)).magnitude
1162
	SINE = SINE + CHANGE
1163
if #Effects2>0 then
1164
for e=1,#Effects2 do
1165
if Effects2[e]~=nil then
1166
local Thing=Effects2[e]
1167
if Thing~=nil then
1168
local Part=Thing[1]
1169
local Mode=Thing[2]
1170
local Delay=Thing[3]
1171
local IncX=Thing[4]
1172
local IncY=Thing[5]
1173
local IncZ=Thing[6]
1174
local Part2=Thing[8]
1175
if Thing[1].Transparency<=1 then
1176
if Thing[2]=="Block1" then
1177
Thing[1].CFrame=Thing[1].CFrame
1178
Mesh=Thing[1].Mesh
1179
Mesh.Scale=Mesh.Scale+VT(Thing[4],Thing[5],Thing[6])
1180
Thing[1].Transparency=Thing[1].Transparency+Thing[3]
1181
elseif Thing[2]=="Cylinder" then
1182
Mesh=Thing[1].Mesh
1183
Mesh.Scale=Mesh.Scale+VT(Thing[4],Thing[5],Thing[6])
1184
Thing[1].Transparency=Thing[1].Transparency+Thing[3]
1185
elseif Thing[2]=="Blood" then
1186
Mesh=Thing[7]
1187
Thing[1].CFrame=Thing[1].CFrame*CF(0,.5,0)
1188
Mesh.Scale=Mesh.Scale+VT(Thing[4],Thing[5],Thing[6])
1189
Thing[1].Transparency=Thing[1].Transparency+Thing[3]
1190
elseif Thing[2]=="Elec" then
1191
Mesh=Thing[1].Mesh
1192
Mesh.Scale=Mesh.Scale+VT(Thing[7],Thing[8],Thing[9])
1193
Thing[1].Transparency=Thing[1].Transparency+Thing[3]
1194
elseif Thing[2]=="Disappear" then
1195
Thing[1].Transparency=Thing[1].Transparency+Thing[3]
1196
end
1197
else
1198
Part.Parent=nil
1199
table.remove(Effects2,e)
1200
end
1201
end
1202
end
1203
end
1204
end
1205
unanchor()
1206
Humanoid.MaxHealth = "inf"
1207
Humanoid.Health = "inf"
1208
if Rooted == false then
1209
	Disable_Jump = false
1210
	Humanoid.WalkSpeed = Speed
1211
elseif Rooted == true then
1212
	Disable_Jump = true
1213
	Humanoid.WalkSpeed = 0
1214
end
1215
if CUSTOMMOVEMENT == false then
1216
	loop = loop + aaa
1217
	grav.position = RootPart.CFrame*CF(4,1+loop/10,1).p
1218
	if loop == 45/2 then
1219
		aaa = -1/2
1220
	elseif loop == -15/2 then
1221
		aaa = 1/2
1222
	end
1223
else
1224
end
1225
if PLAYINGMUSIC == true then
1226
	Orbmesh.Scale = VT(X+SOUND.PlaybackLoudness/70,Y+SOUND.PlaybackLoudness/70,Z+SOUND.PlaybackLoudness/70)
1227
else
1228
	Orbmesh.Scale = VT(X,Y,Z)
1229
end
1230
	ORB.Anchored = false
1231
end
1232
1233
--//=================================\\
1234
--\\=================================//
1235
1236
1237
1238
1239
1240
--//====================================================\\--
1241
--||			  		 END OF SCRIPT
1242
--\\====================================================//--