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