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