View difference between Paste ID: g9jEr4Xx and xhyJZ6sk
SHOW: | | - or go back to the newest paste.
1
script.Name = "machine gun banisher v2 maded to destroy skids"
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
--|| 	      USEFUL VALUES
51
--\\=================================//
52
53
Animation_Speed = 1.5
54
local FORCERESET = false
55
Frame_Speed = 1 / 60 -- (1 / 30) OR (1 / 60)
56
local Speed = 16
57
local ROOTC0 = CF(0, 0, 0) * ANGLES(RAD(-90), RAD(0), RAD(180))
58
local NECKC0 = CF(0, 1, 0) * ANGLES(RAD(-90), RAD(0), RAD(180))
59
local RIGHTSHOULDERC0 = CF(-0.5, 0, 0) * ANGLES(RAD(0), RAD(90), RAD(0))
60
local LEFTSHOULDERC0 = CF(0.5, 0, 0) * ANGLES(RAD(0), RAD(-90), RAD(0))
61
local DAMAGEMULTIPLIER = 1
62
local ANIM = "Idle"
63
local ATTACK = false
64
local EQUIPPED = false
65
local HOLD = false
66
local COMBO = 1
67
local Rooted = false
68
local SINE = 0
69
local KEYHOLD = false
70
local CHANGE = 2 / Animation_Speed
71
local WALKINGANIM = false
72
local VALUE1 = false
73
local VALUE2 = false
74
local ROBLOXIDLEANIMATION = IT("Animation")
75
ROBLOXIDLEANIMATION.Name = "Roblox Idle Animation"
76
ROBLOXIDLEANIMATION.AnimationId = "http://www.roblox.com/asset/?id=180435571"
77
--ROBLOXIDLEANIMATION.Parent = Humanoid
78
local WEAPONGUI = IT("ScreenGui", PlayerGui)
79
WEAPONGUI.Name = "BanishV3Gui"
80
local Weapon = IT("Model")
81
Weapon.Name = "Adds"
82
local Effects = IT("Folder", Weapon)
83
Effects.Name = "Effects"
84
local ANIMATOR = Humanoid.Animator
85
local ANIMATE = Character:FindFirstChild("Animate")
86
local UNANCHOR = true
87
local TOBANISH = {}
88
script.Parent = PlayerGui
89
90
--//=================================\\
91
--\\=================================//
92
93
94
--//=================================\\
95
--|| SAZERENOS' ARTIFICIAL HEARTBEAT
96
--\\=================================//
97
98
ArtificialHB = Instance.new("BindableEvent", script)
99
ArtificialHB.Name = "ArtificialHB"
100
101
script:WaitForChild("ArtificialHB")
102
103
frame = Frame_Speed
104
tf = 0
105
allowframeloss = false
106
tossremainder = false
107
lastframe = tick()
108
script.ArtificialHB:Fire()
109
110
game:GetService("RunService").Heartbeat:connect(function(s, p)
111
	tf = tf + s
112
	if tf >= frame then
113
		if allowframeloss then
114
			script.ArtificialHB:Fire()
115
			lastframe = tick()
116
		else
117
			for i = 1, math.floor(tf / frame) do
118
				script.ArtificialHB:Fire()
119
			end
120
		lastframe = tick()
121
		end
122
		if tossremainder then
123
			tf = 0
124
		else
125
			tf = tf - frame * math.floor(tf / frame)
126
		end
127
	end
128
end)
129
130
--//=================================\\
131
--\\=================================//
132
133
--//=================================\\
134
--|| 	      SOME FUNCTIONS
135
--\\=================================//
136
137
function Raycast(POSITION, DIRECTION, RANGE, IGNOREDECENDANTS)
138
	return workspace:FindPartOnRay(Ray.new(POSITION, DIRECTION.unit * RANGE), IGNOREDECENDANTS)
139
end
140
141
function PositiveAngle(NUMBER)
142
	if NUMBER >= 0 then
143
		NUMBER = 0
144
	end
145
	return NUMBER
146
end
147
148
function NegativeAngle(NUMBER)
149
	if NUMBER <= 0 then
150
		NUMBER = 0
151
	end
152
	return NUMBER
153
end
154
155
function Swait(NUMBER)
156
	if NUMBER == 0 or NUMBER == nil then
157
		ArtificialHB.Event:wait()
158
	else
159
		for i = 1, NUMBER do
160
			ArtificialHB.Event:wait()
161
		end
162
	end
163
end
164
165
function CreateMesh(MESH, PARENT, MESHTYPE, MESHID, TEXTUREID, SCALE, OFFSET)
166
	local NEWMESH = IT(MESH)
167
	if MESH == "SpecialMesh" then
168
		NEWMESH.MeshType = MESHTYPE
169
		if MESHID ~= "nil" and MESHID ~= "" then
170
			NEWMESH.MeshId = "http://www.roblox.com/asset/?id="..MESHID
171
		end
172
		if TEXTUREID ~= "nil" and TEXTUREID ~= "" then
173
			NEWMESH.TextureId = "http://www.roblox.com/asset/?id="..TEXTUREID
174
		end
175
	end
176
	NEWMESH.Offset = OFFSET or VT(0, 0, 0)
177
	NEWMESH.Scale = SCALE
178
	NEWMESH.Parent = PARENT
179
	return NEWMESH
180
end
181
182
function CreatePart(FORMFACTOR, PARENT, MATERIAL, REFLECTANCE, TRANSPARENCY, BRICKCOLOR, NAME, SIZE, ANCHOR)
183
	local NEWPART = IT("Part")
184
	NEWPART.formFactor = FORMFACTOR
185
	NEWPART.Reflectance = REFLECTANCE
186
	NEWPART.Transparency = TRANSPARENCY
187
	NEWPART.CanCollide = false
188
	NEWPART.Locked = true
189
	NEWPART.Anchored = true
190
	if ANCHOR == false then
191
		NEWPART.Anchored = false
192
	end
193
	NEWPART.BrickColor = BRICKC(tostring(BRICKCOLOR))
194
	NEWPART.Name = NAME
195
	NEWPART.Size = SIZE
196
	NEWPART.Position = Torso.Position
197
	NEWPART.Material = MATERIAL
198
	NEWPART:BreakJoints()
199
	NEWPART.Parent = PARENT
200
	return NEWPART
201
end
202
203
	local function weldBetween(a, b)
204
	    local weldd = Instance.new("ManualWeld")
205
	    weldd.Part0 = a
206
	    weldd.Part1 = b
207
	    weldd.C0 = CFrame.new()
208
	    weldd.C1 = b.CFrame:inverse() * a.CFrame
209
	    weldd.Parent = a
210
	    return weldd
211
	end
212
213
214
function QuaternionFromCFrame(cf)
215
	local mx, my, mz, m00, m01, m02, m10, m11, m12, m20, m21, m22 = cf:components()
216
	local trace = m00 + m11 + m22
217
	if trace > 0 then 
218
		local s = math.sqrt(1 + trace)
219
		local recip = 0.5 / s
220
		return (m21 - m12) * recip, (m02 - m20) * recip, (m10 - m01) * recip, s * 0.5
221
	else
222
		local i = 0
223
		if m11 > m00 then
224
			i = 1
225
		end
226
		if m22 > (i == 0 and m00 or m11) then
227
			i = 2
228
		end
229
		if i == 0 then
230
			local s = math.sqrt(m00 - m11 - m22 + 1)
231
			local recip = 0.5 / s
232
			return 0.5 * s, (m10 + m01) * recip, (m20 + m02) * recip, (m21 - m12) * recip
233
		elseif i == 1 then
234
			local s = math.sqrt(m11 - m22 - m00 + 1)
235
			local recip = 0.5 / s
236
			return (m01 + m10) * recip, 0.5 * s, (m21 + m12) * recip, (m02 - m20) * recip
237
		elseif i == 2 then
238
			local s = math.sqrt(m22 - m00 - m11 + 1)
239
			local recip = 0.5 / s return (m02 + m20) * recip, (m12 + m21) * recip, 0.5 * s, (m10 - m01) * recip
240
		end
241
	end
242
end
243
 
244
function QuaternionToCFrame(px, py, pz, x, y, z, w)
245
	local xs, ys, zs = x + x, y + y, z + z
246
	local wx, wy, wz = w * xs, w * ys, w * zs
247
	local xx = x * xs
248
	local xy = x * ys
249
	local xz = x * zs
250
	local yy = y * ys
251
	local yz = y * zs
252
	local zz = z * zs
253
	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))
254
end
255
 
256
function QuaternionSlerp(a, b, t)
257
	local cosTheta = a[1] * b[1] + a[2] * b[2] + a[3] * b[3] + a[4] * b[4]
258
	local startInterp, finishInterp;
259
	if cosTheta >= 0.0001 then
260
		if (1 - cosTheta) > 0.0001 then
261
			local theta = ACOS(cosTheta)
262
			local invSinTheta = 1 / SIN(theta)
263
			startInterp = SIN((1 - t) * theta) * invSinTheta
264
			finishInterp = SIN(t * theta) * invSinTheta
265
		else
266
			startInterp = 1 - t
267
			finishInterp = t
268
		end
269
	else
270
		if (1 + cosTheta) > 0.0001 then
271
			local theta = ACOS(-cosTheta)
272
			local invSinTheta = 1 / SIN(theta)
273
			startInterp = SIN((t - 1) * theta) * invSinTheta
274
			finishInterp = SIN(t * theta) * invSinTheta
275
		else
276
			startInterp = t - 1
277
			finishInterp = t
278
		end
279
	end
280
	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
281
end
282
283
function Clerp(a, b, t)
284
	local qa = {QuaternionFromCFrame(a)}
285
	local qb = {QuaternionFromCFrame(b)}
286
	local ax, ay, az = a.x, a.y, a.z
287
	local bx, by, bz = b.x, b.y, b.z
288
	local _t = 1 - t
289
	return QuaternionToCFrame(_t * ax + t * bx, _t * ay + t * by, _t * az + t * bz, QuaternionSlerp(qa, qb, t))
290
end
291
292
function CreateFrame(PARENT, TRANSPARENCY, BORDERSIZEPIXEL, POSITION, SIZE, COLOR, BORDERCOLOR, NAME)
293
	local frame = IT("Frame")
294
	frame.BackgroundTransparency = TRANSPARENCY
295
	frame.BorderSizePixel = BORDERSIZEPIXEL
296
	frame.Position = POSITION
297
	frame.Size = SIZE
298
	frame.BackgroundColor3 = COLOR
299
	frame.BorderColor3 = BORDERCOLOR
300
	frame.Name = NAME
301
	frame.Parent = PARENT
302
	return frame
303
end
304
305
function CreateLabel(PARENT, TEXT, TEXTCOLOR, TEXTFONTSIZE, TEXTFONT, TRANSPARENCY, BORDERSIZEPIXEL, STROKETRANSPARENCY, NAME)
306
	local label = IT("TextLabel")
307
	label.BackgroundTransparency = 1
308
	label.Size = UD2(1, 0, 1, 0)
309
	label.Position = UD2(0, 0, 0, 0)
310
	label.TextColor3 = TEXTCOLOR
311
	label.TextStrokeTransparency = STROKETRANSPARENCY
312
	label.TextTransparency = TRANSPARENCY
313
	label.FontSize = TEXTFONTSIZE
314
	label.Font = TEXTFONT
315
	label.BorderSizePixel = BORDERSIZEPIXEL
316
	label.TextScaled = false
317
	label.Text = TEXT
318
	label.Name = NAME
319
	label.Parent = PARENT
320
	return label
321
end
322
323
function NoOutlines(PART)
324
	PART.TopSurface, PART.BottomSurface, PART.LeftSurface, PART.RightSurface, PART.FrontSurface, PART.BackSurface = 10, 10, 10, 10, 10, 10
325
end
326
327
function CreateWeldOrSnapOrMotor(TYPE, PARENT, PART0, PART1, C0, C1)
328
	local NEWWELD = IT(TYPE)
329
	NEWWELD.Part0 = PART0
330
	NEWWELD.Part1 = PART1
331
	NEWWELD.C0 = C0
332
	NEWWELD.C1 = C1
333
	NEWWELD.Parent = PARENT
334
	return NEWWELD
335
end
336
337
local S = IT("Sound")
338
function CreateSound(ID, PARENT, VOLUME, PITCH, DOESLOOP)
339
	local NEWSOUND = nil
340
	coroutine.resume(coroutine.create(function()
341
		NEWSOUND = S:Clone()
342
		NEWSOUND.Parent = PARENT
343
		NEWSOUND.Volume = VOLUME
344
		NEWSOUND.Pitch = PITCH
345
		NEWSOUND.SoundId = "http://www.roblox.com/asset/?id="..ID
346
		NEWSOUND:play()
347
		if DOESLOOP == true then
348
			NEWSOUND.Looped = true
349
		else
350
			repeat wait(1) until NEWSOUND.Playing == false or NEWSOUND.Parent ~= PARENT
351
			NEWSOUND:remove()
352
		end
353
	end))
354
	return NEWSOUND
355
end
356
357
358
Player = game:GetService("Players").LocalPlayer
359
PlayerGui = Player:FindFirstChildOfClass("PlayerGui")
360
Cam = workspace.CurrentCamera
361
Backpack = Player:FindFirstChildOfClass("Backpack")
362
Character = Player.Character
363
Humanoid = Character:FindFirstChildOfClass("Humanoid")
364
Mouse = Player:GetMouse()
365
366
function chatfunc(text)
367
local chat = coroutine.wrap(function()
368
if Character:FindFirstChild("TalkingBillBoard")~= nil then
369
Character:FindFirstChild("TalkingBillBoard"):destroy()
370
end
371
local naeeym2 = Instance.new("BillboardGui",Character)
372
naeeym2.Size = UDim2.new(0,100,0,40)
373
naeeym2.StudsOffset = Vector3.new(0,3,0)
374
naeeym2.Adornee = Character.Head
375
naeeym2.Name = "TalkingBillBoard"
376
local tecks3 = Instance.new("TextLabel",naeeym2)
377
tecks3.BackgroundTransparency = 1
378
tecks3.BorderSizePixel = 0
379
tecks3.Text = ""
380
tecks3.Font = "SciFi"
381
tecks3.TextSize = 30
382
tecks3.TextStrokeTransparency = 0
383
tecks3.TextColor3 = Color3.new(3.15,0,0)
384
tecks3.TextStrokeColor3 = Color3.new(0,0,0)
385
tecks3.Size = UDim2.new(1,0,0.5,0)
386
for i = 1,string.len(text),1 do
387
tecks3.Text = string.sub(text,1,i)
388
wait(0.01)
389
end
390
wait(3)
391
for i = 1, 80 do
392
Swait()
393
tecks3.Position = tecks3.Position - UDim2.new(math.random(-.4,.4),math.random(-5,5),.05,math.random(-5,5))
394
tecks3.Rotation = tecks3.Rotation + .8
395
tecks3.TextStrokeTransparency = tecks3.TextStrokeTransparency +.03
396
tecks3.TextTransparency = tecks3.TextTransparency + .03
397
end
398
end)
399
chat()
400
end
401
402
403
function CFrameFromTopBack(at, top, back)
404
	local right = top:Cross(back)
405
	return CF(at.x, at.y, at.z, right.x, top.x, back.x, right.y, top.y, back.y, right.z, top.z, back.z)
406
end
407
408
--WACKYEFFECT({EffectType = "", Size = VT(1,1,1), Size2 = VT(0,0,0), Transparency = 0, Transparency2 = 1, CFrame = CF(), MoveToPos = nil, RotationX = 0, RotationY = 0, RotationZ = 0, Material = "Neon", Color = C3(1,1,1), SoundID = nil, SoundPitch = nil, SoundVolume = nil})
409
function WACKYEFFECT(Table)
410
	local TYPE = (Table.EffectType or "Sphere")
411
	local SIZE = (Table.Size or VT(1,1,1))
412
	local ENDSIZE = (Table.Size2 or VT(0,0,0))
413
	local TRANSPARENCY = (Table.Transparency or 0)
414
	local ENDTRANSPARENCY = (Table.Transparency2 or 1)
415
	local CFRAME = (Table.CFrame or Torso.CFrame)
416
	local MOVEDIRECTION = (Table.MoveToPos or nil)
417
	local ROTATION1 = (Table.RotationX or 0)
418
	local ROTATION2 = (Table.RotationY or 0)
419
	local ROTATION3 = (Table.RotationZ or 0)
420
	local MATERIAL = (Table.Material or "Neon")
421
	local COLOR = (Table.Color or C3(1,1,1))
422
	local TIME = (Table.Time or 45)
423
	local SOUNDID = (Table.SoundID or nil)
424
	local SOUNDPITCH = (Table.SoundPitch or nil)
425
	local SOUNDVOLUME = (Table.SoundVolume or nil)
426
	coroutine.resume(coroutine.create(function()
427
		local PLAYSSOUND = false
428
		local SOUND = nil
429
		local EFFECT = CreatePart(3, Effects, MATERIAL, 0, TRANSPARENCY, BRICKC("Pearl"), "Effect", VT(1,1,1), true)
430
		if SOUNDID ~= nil and SOUNDPITCH ~= nil and SOUNDVOLUME ~= nil then
431
			PLAYSSOUND = true
432
			SOUND = CreateSound(SOUNDID, EFFECT, SOUNDVOLUME, SOUNDPITCH, false)
433
		end
434
		EFFECT.Color = COLOR
435
		local MSH = nil
436
		if TYPE == "Sphere" then
437
			MSH = CreateMesh("SpecialMesh", EFFECT, "Sphere", "", "", SIZE, VT(0,0,0))
438
		elseif TYPE == "Block" then
439
			MSH = IT("BlockMesh",EFFECT)
440
			MSH.Scale = VT(SIZE.X,SIZE.X,SIZE.X)
441
		elseif TYPE == "Wave" then
442
			MSH = CreateMesh("SpecialMesh", EFFECT, "FileMesh", "20329976", "", SIZE, VT(0,0,-SIZE.X/8))
443
		elseif TYPE == "Ring" then
444
			MSH = CreateMesh("SpecialMesh", EFFECT, "FileMesh", "559831844", "", VT(SIZE.X,SIZE.X,0.1), VT(0,0,0))
445
		elseif TYPE == "Slash" then
446
			MSH = CreateMesh("SpecialMesh", EFFECT, "FileMesh", "662586858", "", VT(SIZE.X/10,0,SIZE.X/10), VT(0,0,0))
447
		elseif TYPE == "Round Slash" then
448
			MSH = CreateMesh("SpecialMesh", EFFECT, "FileMesh", "662585058", "", VT(SIZE.X/10,0,SIZE.X/10), VT(0,0,0))
449
		elseif TYPE == "Swirl" then
450
			MSH = CreateMesh("SpecialMesh", EFFECT, "FileMesh", "1051557", "", SIZE, VT(0,0,0))
451
		elseif TYPE == "Skull" then
452
			MSH = CreateMesh("SpecialMesh", EFFECT, "FileMesh", "4770583", "", SIZE, VT(0,0,0))
453
		elseif TYPE == "Crystal" then
454
			MSH = CreateMesh("SpecialMesh", EFFECT, "FileMesh", "9756362", "", SIZE, VT(0,0,0))
455
		end
456
		if MSH ~= nil then
457
			local MOVESPEED = nil
458
			if MOVEDIRECTION ~= nil then
459
				MOVESPEED = (CFRAME.p - MOVEDIRECTION).Magnitude/TIME
460
			end
461
			local GROWTH = SIZE - ENDSIZE
462
			local TRANS = TRANSPARENCY - ENDTRANSPARENCY
463
			if TYPE == "Block" then
464
				EFFECT.CFrame = CFRAME*ANGLES(RAD(MRANDOM(0,360)),RAD(MRANDOM(0,360)),RAD(MRANDOM(0,360)))
465
			else
466
				EFFECT.CFrame = CFRAME
467
			end
468
			for LOOP = 1, TIME+1 do
469
				Swait()
470
				MSH.Scale = MSH.Scale - GROWTH/TIME
471
				if TYPE == "Wave" then
472
					MSH.Offset = VT(0,0,-MSH.Scale.X/8)
473
				end
474
				EFFECT.Transparency = EFFECT.Transparency - TRANS/TIME
475
				if TYPE == "Block" then
476
					EFFECT.CFrame = CFRAME*ANGLES(RAD(MRANDOM(0,360)),RAD(MRANDOM(0,360)),RAD(MRANDOM(0,360)))
477
				else
478
					EFFECT.CFrame = EFFECT.CFrame*ANGLES(RAD(ROTATION1),RAD(ROTATION2),RAD(ROTATION3))
479
				end
480
				if MOVEDIRECTION ~= nil then
481
					local ORI = EFFECT.Orientation
482
					EFFECT.CFrame = CF(EFFECT.Position,MOVEDIRECTION)*CF(0,0,-MOVESPEED)
483
					EFFECT.Orientation = ORI
484
				end
485
			end
486
			if PLAYSSOUND == false then
487
				EFFECT:remove()
488
			else
489
				SOUND.Stopped:Connect(function()
490
					EFFECT:remove()
491
				end)
492
			end
493
		else
494
			if PLAYSSOUND == false then
495
				EFFECT:remove()
496
			else
497
				repeat Swait() until SOUND.Playing == false
498
				EFFECT:remove()
499
			end
500
		end
501
	end))
502
end
503
504
function MakeForm(PART,TYPE)
505
	if TYPE == "Cyl" then
506
		local MSH = IT("CylinderMesh",PART)
507
	elseif TYPE == "Ball" then
508
		local MSH = IT("SpecialMesh",PART)
509
		MSH.MeshType = "Sphere"
510
	elseif TYPE == "Wedge" then
511
		local MSH = IT("SpecialMesh",PART)
512
		MSH.MeshType = "Wedge"
513
	end
514
end
515
516
function SpawnTrail(FROM,TO,BIG)
517
	local TRAIL = CreatePart(3, Effects, "Neon", 0, 0.5, "Really red", "Trail", VT(0,0,0))
518
	MakeForm(TRAIL,"Cyl")
519
	local DIST = (FROM - TO).Magnitude
520
	if BIG == true then
521
		TRAIL.Size = VT(0.5,DIST,0.5)
522
	else
523
		TRAIL.Size = VT(0.25,DIST,0.25)
524
	end
525
	TRAIL.CFrame = CF(FROM, TO) * CF(0, 0, -DIST/2) * ANGLES(RAD(90),RAD(0),RAD(0))
526
	coroutine.resume(coroutine.create(function()
527
		for i = 1, 5 do
528
			Swait()
529
			TRAIL.Transparency = TRAIL.Transparency + 0.1
530
		end
531
		TRAIL:remove()
532
	end))
533
end
534
535
Debris = game:GetService("Debris")
536
537
function CastProperRay(StartPos, EndPos, Distance, Ignore)
538
	local DIRECTION = CF(StartPos,EndPos).lookVector
539
	return Raycast(StartPos, DIRECTION, Distance, Ignore)
540
end
541
542
function turnto(position)
543
	RootPart.CFrame=CFrame.new(RootPart.CFrame.p,VT(position.X,RootPart.Position.Y,position.Z)) * CFrame.new(0, 0, 0)
544
end
545
546
--//=================================\\
547
--||	     WEAPON CREATION
548
--\\=================================//
549
550
local Particle = IT("ParticleEmitter",nil)
551
Particle.Enabled = false
552
Particle.Transparency = NumberSequence.new({NumberSequenceKeypoint.new(0,0.3),NumberSequenceKeypoint.new(0.3,0),NumberSequenceKeypoint.new(1,1)})
553
Particle.LightEmission = 0.5
554
Particle.Rate = 150
555
Particle.ZOffset = 0.2
556
Particle.Rotation = NumberRange.new(-180, 180)
557
Particle.RotSpeed = NumberRange.new(-180, 180)
558
Particle.Texture = "http://www.roblox.com/asset/?id=304437537"
559
Particle.Color = ColorSequence.new(C3(255,0,0),C3(255,128,0),C3(255,255,0),C3(0,255,0),C3(0,255,255),C3(0,0,255),C3(191,0,255),C3(255,0,191))
560
561
--ParticleEmitter({Speed = 5, Drag = 0, Size1 = 1, Size2 = 5, Lifetime1 = 1, Lifetime2 = 1.5, Parent = Torso, Emit = 100, Offset = 360, Enabled = false})
562
function ParticleEmitter(Table)
563
	local PRTCL = Particle:Clone()
564
	local Speed = Table.Speed or 5
565
	local Drag = Table.Drag or 0
566
	local Size1 = Table.Size1 or 1
567
	local Size2 = Table.Size2 or 5
568
	local Lifetime1 = Table.Lifetime1 or 1
569-
	local Lifetime2 = Table.Lifetime2 or 1.5
569+
	local Lifetime2 = Table.Lifetime2 or 10
570
	local Parent = Table.Parent or Torso
571
	local Emit = Table.Emit or 100
572
	local Offset = Table.Offset or 360
573
	local Acel = Table.Acel or VT(0,0,0)
574
	local Enabled = Table.Enabled or false
575
	PRTCL.Parent = Parent
576
	PRTCL.Size = NumberSequence.new(Size1,Size2)
577
	PRTCL.Lifetime = NumberRange.new(Lifetime1,Lifetime2)
578
	PRTCL.Speed = NumberRange.new(Speed)
579
	PRTCL.VelocitySpread = Offset
580
	PRTCL.Drag = Drag
581
	PRTCL.Acceleration = Acel
582
	if Enabled == false then
583
		PRTCL:Emit(Emit)
584
		Debris:AddItem(PRTCL,Lifetime2)
585
	else
586
		PRTCL.Enabled = true
587
	end
588
	return PRTCL
589
end
590
591
592
    local txt = Instance.new("BillboardGui", Character)
593
    txt.Adornee = Character.Head
594
    txt.Name = "_status"
595
    txt.Size = UDim2.new(2, 0, 1.2, 0)
596
    txt.StudsOffset = Vector3.new(-9, 9, 0)
597
    local text = Instance.new("TextLabel", txt)
598
    text.Size = UDim2.new(10, 0, 7, 0)
599
    text.FontSize = "Size24"
600
    text.TextScaled = true
601
    text.TextTransparency = 0
602
    text.BackgroundTransparency = 1
603
    text.TextTransparency = 0
604
    text.TextStrokeTransparency = 1
605
    text.Font = "Code"
606
    text.TextStrokeColor3 = Color3.new(40,0,0)
607
 
608
    v=Instance.new("Part")
609
    v.Name = "ColorBrick"
610
    v.Parent=Player.Character
611
    v.FormFactor="Symmetric"
612
    v.Anchored=true
613
    v.CanCollide=false
614
    v.BottomSurface="Smooth"
615
    v.TopSurface="Smooth"
616
    v.Size=Vector3.new(10,5,3)
617
    v.Transparency=1
618
    v.CFrame=Character.Torso.CFrame
619
    v.BrickColor=BrickColor.new("Really red")
620
    v.Transparency=1
621
    text.TextColor3 = Color3.fromRGB(255,0,0)
622
    v.Shape="Block"
623
    text.Text = "@$&%^!*&@$%~@&^$"
624
coroutine.wrap(function()
625
    while wait() do
626
        Swait()
627
        text.Text = "AHAHAHAAHHAHA"
628
        Swait()
629
        text.Text = "39!^%*!@$&^T 22$^";
630
       Swait()
631
        local str = ""
632
        for i = 1, math.random(3,25) do
633
            str = str..string.char(math.random(65,122))
634
        end
635
        text.Text = str
636
        Swait()
637
        str = ""
638
        for i = 1, math.random(12,25) do
639
            str = str..string.char(math.random(48,122))
640
        end
641
        Swait()
642
        text.Text = str
643
        Swait()
644
        text.Text = "@&$*$&%T	#$G*#B*#B *";
645
        Swait()
646
        text.Text = "~@^       $%& ! @$ %  "
647
       Swait()
648
        text.Text = "&@^% * ! #  & % ^ @&# *!&@$%"
649
        Swait()
650
        text.Text = "@$_^&_$*^";
651
        Swait()
652
        text.Text = "!@*^&	*";
653
        Swait()
654
        text.Text = "AHAHAHHA";
655
        Swait()
656
        for i = 1, math.random(12,25) do
657
            str = str..string.char(math.random(48,57))
658
        end
659
        text.Text = str
660
        Swait()
661
        text.Text = "N!^*&	_^&!$_^";
662
        Swait()
663
    end
664
end)()
665
666
667
668
    local txt = Instance.new("BillboardGui", Character)
669
    txt.Adornee = Character.Head
670
    txt.Name = "_status"
671
    txt.Size = UDim2.new(2, 0, 1.2, 0)
672
    txt.StudsOffset = Vector3.new(-9, 17, 0)
673
    local text = Instance.new("TextLabel", txt)
674
    text.Size = UDim2.new(10, 0, 7, 0)
675
    text.FontSize = "Size24"
676
    text.TextScaled = true
677
    text.TextTransparency = 0
678
    text.BackgroundTransparency = 1
679
    text.TextTransparency = 0
680
    text.TextStrokeTransparency = 1
681
    text.Font = "Code"
682
    text.TextStrokeColor3 = Color3.new(40,0,0)
683
 
684
    v=Instance.new("Part")
685
    v.Name = "ColorBrick"
686
    v.Parent=Player.Character
687
    v.FormFactor="Symmetric"
688
    v.Anchored=true
689
    v.CanCollide=false
690
    v.BottomSurface="Smooth"
691
    v.TopSurface="Smooth"
692
    v.Size=Vector3.new(10,5,3)
693
    v.Transparency=1
694
    v.CFrame=Character.Torso.CFrame
695
    v.BrickColor=BrickColor.new("Really red")
696
    v.Transparency=1
697
    text.TextColor3 = Color3.fromRGB(0,255,0)
698
    v.Shape="Block"
699
    text.Text = "Health: Infinite"
700
coroutine.wrap(function()
701
    while wait() do
702
        wait(0.3)
703
        text.Text = "HEALTH : REVIVVVE"
704
        wait()
705
        text.Text = "39!^%*!@$&^T 22$^";
706
        wait(0.3)
707
        local str = ""
708
        for i = 1, math.random(3,25) do
709
            str = str..string.char(math.random(65,122))
710
        end
711
        text.Text = str
712
        wait(0.3)
713
        str = ""
714
        for i = 1, math.random(12,25) do
715
            str = str..string.char(math.random(48,122))
716
        end
717
        wait(0.3)
718
        text.Text = str
719
        wait(0.3)
720
        text.Text = "HEALTH: DEAD";
721
        wait(0.3)
722
        text.Text = "HEEEALTH : DEATH  "
723
       wait(0.3)
724
        text.Text = "*!*#^$&  #*$^!*%#"
725
        wait(0.3)
726
        text.Text = "h#33333alth: ERROR FOUNDING HEALTH";
727
        wait(0.3)
728
        text.Text = "??????? ????????";
729
        wait(0.3)
730
        text.Text = "H1&*#h: &!^&*ite";
731
        wait(0.3)
732
        for i = 1, math.random(12,25) do
733
            str = str..string.char(math.random(48,57))
734
        end
735
        text.Text = str
736
        wait(0.3)
737
        text.Text = "H!^*th: inf*!ite";
738
        wait(0.3)
739
    end
740
end)()
741
742
743
local Handle = CreatePart(3, Weapon, "Metal", 0, 0, "Mid gray", "Part", VT(0.2,0.6,0.2),false)
744
local RightArmGrasp = CreateWeldOrSnapOrMotor("Weld", Handle, RightArm, Handle, CF(0,-1, 0) * ANGLES(RAD(90), RAD(0), RAD(0)), CF(0, 0.21, 0))
745
local Part = CreatePart(3, Weapon, "Metal", 0, 0, "Mid gray", "Part", VT(0.2,0.5,0.2),false)
746
MakeForm(Part,"Wedge")
747
CreateWeldOrSnapOrMotor("Weld", Handle, Handle, Part, CF(0, -0.3, 0.2) * ANGLES(RAD(0), RAD(180), RAD(0)), CF(0, 0, 0))
748
local Part = CreatePart(3, Weapon, "Metal", 0, 0, "Mid gray", "Part", VT(0.2,0.3,0.2),false)
749
MakeForm(Part,"Wedge")
750
CreateWeldOrSnapOrMotor("Weld", Handle, Handle, Part, CF(0, -0.4, 0) * ANGLES(RAD(0), RAD(0), RAD(180)), CF(0, 0, 0))
751
local Part = CreatePart(3, Weapon, "Metal", 0, 0, "Mid gray", "Part", VT(0.3,0.3,0.3),false)
752
CreateWeldOrSnapOrMotor("Weld", Handle, Handle, Part, CF(0, -0.5, 0.2) * ANGLES(RAD(0), RAD(0), RAD(0)), CF(0, 0, 0))
753
local Part = CreatePart(3, Weapon, "Metal", 0, 0, "Mid gray", "Part", VT(0.3,0.5,0.5),false)
754
CreateWeldOrSnapOrMotor("Weld", Handle, Handle, Part, CF(0, -0.6, 0.5) * ANGLES(RAD(0), RAD(0), RAD(0)), CF(0, 0, 0))
755
local Part = CreatePart(3, Weapon, "Metal", 0, 0, "Mid gray", "Part", VT(0.4,0.4,0.4),false)
756
MakeForm(Part,"Cyl")
757
CreateWeldOrSnapOrMotor("Weld", Handle, Handle, Part, CF(0, -0.6, 0.5) * ANGLES(RAD(90), RAD(0), RAD(0)), CF(0, 0, 0))
758
for i = 1, 8 do
759
	local Piece = CreatePart(3, Weapon, "Metal", 0, 0, "Mid gray", "Eye", VT(0,0.35,0.41),false)
760
	CreateWeldOrSnapOrMotor("Weld", Handle, Part, Piece, CF(0, 0, 0) * ANGLES(RAD(0), RAD((360/8)*i), RAD(0)), CF(0, 0, 0))
761
end
762
local Part = CreatePart(3, Weapon, "Metal", 0, 0, "Mid gray", "Eye", VT(0.38,0.41,0.38),false)
763
MakeForm(Part,"Cyl")
764
CreateWeldOrSnapOrMotor("Weld", Handle, Handle, Part, CF(0, -0.6, 0.5) * 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.37,0.5,0.37),false)
766
MakeForm(Part,"Ball")
767
CreateWeldOrSnapOrMotor("Weld", Handle, Handle, Part, CF(0, -0.6, 0.3) * ANGLES(RAD(90), RAD(0), RAD(0)), CF(0, 0, 0))
768
local Part = CreatePart(3, Weapon, "Metal", 0, 0, "Mid gray", "Part", VT(0.2,0.7,0.4),false)
769
MakeForm(Part,"Wedge")
770
CreateWeldOrSnapOrMotor("Weld", Handle, Handle, Part, CF(0, -0.7, 0.5) * ANGLES(RAD(90), RAD(180), RAD(180)), CF(0, 0, 0))
771
local Part = CreatePart(3, Weapon, "Metal", 0, 0, "Mid gray", "Part", VT(0.3,0.4,0.2),false)
772
CreateWeldOrSnapOrMotor("Weld", Handle, Handle, Part, CF(0, -0.6, 0.7) * ANGLES(RAD(0), RAD(0), RAD(0)), CF(0, 0, 0))
773
local Part = CreatePart(3, Weapon, "Metal", 0, 0, "Mid gray", "Part", VT(0.35,0.35,0.35),false)
774
MakeForm(Part,"Cyl")
775
CreateWeldOrSnapOrMotor("Weld", Handle, Handle, Part, CF(0, -0.6, 0.7) * ANGLES(RAD(90), RAD(0), RAD(0)), CF(0, 0, 0))
776
local Part = CreatePart(3, Weapon, "Metal", 0, 0, "Mid gray", "Part", VT(0.5,0.1,0.5),false)
777
MakeForm(Part,"Cyl")
778
CreateWeldOrSnapOrMotor("Weld", Handle, Handle, Part, CF(0, -0.6, 1) * ANGLES(RAD(90), RAD(0), RAD(0)), CF(0, 0, 0))
779
local Part = CreatePart(3, Weapon, "Metal", 0, 0, "Mid gray", "Part", VT(0.5,0.1,0.45),false)
780
MakeForm(Part,"Cyl")
781
CreateWeldOrSnapOrMotor("Weld", Handle, Handle, Part, CF(0, -0.6, 1.1) * ANGLES(RAD(90), RAD(0), RAD(0)), CF(0, 0, 0))
782
local Part = CreatePart(3, Weapon, "Metal", 0, 0, "Mid gray", "Part", VT(0.2,0.5,0.2),false)
783
MakeForm(Part,"Wedge")
784
CreateWeldOrSnapOrMotor("Weld", Handle, Handle, Part, CF(0, -0.55, 0.2) * ANGLES(RAD(-135), RAD(0), RAD(0)), CF(0, -0.3, 0))
785
local LASTPART = Handle
786
for i = 1, 10 do
787
	if LASTPART == Handle then
788
		local Part = CreatePart(3, Weapon, "Metal", 0, 0, "Mid gray", "Part", VT(0.1,0.2,0),false)
789
		LASTPART = Part
790
		CreateWeldOrSnapOrMotor("Weld", Handle, Handle, Part, CF(0, -0.1, 0.2) * ANGLES(RAD(90), RAD(0), RAD(0)), CF(0, 0, 0))
791
	else
792
		local Part = CreatePart(3, Weapon, "Metal", 0, 0, "Mid gray", "Part", VT(0.1,0.05,0),false)
793
		CreateWeldOrSnapOrMotor("Weld", Handle, LASTPART, Part, CF(0, 0.025, 0) * ANGLES(RAD(8), RAD(0), RAD(0)), CF(0, -0.025, 0))
794
		LASTPART = Part
795
	end
796
end
797
798
local Barrel = CreatePart(3, Weapon, "Metal", 0, 0, "Mid gray", "Part", VT(0.15,2,0.15),false)
799
MakeForm(Barrel,"Cyl")
800
CreateWeldOrSnapOrMotor("Weld", Handle, Handle, Barrel, CF(0, -0.6, 1.8) * ANGLES(RAD(90), RAD(0), RAD(0)), CF(0, 0, 0))
801
local Part = CreatePart(3, Weapon, "Metal", 0, 0, "Mid gray", "Part", VT(0.25,1,0.25),false)
802
MakeForm(Part,"Cyl")
803
CreateWeldOrSnapOrMotor("Weld", Handle, Barrel, Part, CF(0, -0.6, 0), CF(0, 0, 0))
804
local Part = CreatePart(3, Weapon, "Metal", 0, 0, "Mid gray", "Part", VT(0,0.1,0.2),false)
805
MakeForm(Part,"Wedge")
806
CreateWeldOrSnapOrMotor("Weld", Handle, Barrel, Part, CF(0, 0.945, 0.1) * ANGLES(RAD(180), RAD(0), RAD(0)), CF(0, 0, 0))
807
local Hole = CreatePart(3, Weapon, "Metal", 0, 0, "Mid gray", "Eye", VT(0.125,0,0.125),false)
808
MakeForm(Hole,"Cyl")
809
CreateWeldOrSnapOrMotor("Weld", Handle, Barrel, Hole, CF(0, 0.98, 0), CF(0, 0, 0))
810
local Part = CreatePart(3, Weapon, "Metal", 0, 0, "Mid gray", "Part", VT(0,0,0),false)
811
local GEARWELD = CreateWeldOrSnapOrMotor("Weld", Handle, Handle, Part, CF(0, -0.6, 0.7), CF(0, 0, 0))
812
CreateMesh("SpecialMesh", Part, "FileMesh", 156292343, "", VT(0.8,0.8,1.5), VT(0,0,0.2))
813
local Part = CreatePart(3, Weapon, "Metal", 0, 0.5, "Mid gray", "Eye", VT(0,0,0),false)
814
local GEARWELD2 = CreateWeldOrSnapOrMotor("Weld", Handle, Handle, Part, CF(0, -0.6, 0.7), CF(0, 0, 0))
815
CreateMesh("SpecialMesh", Part, "FileMesh", 156292343, "", VT(0.9,0.9,0.3), VT(0,0,0.2))
816
coroutine.resume(coroutine.create(function()
817
	while wait() do
818
		GEARWELD.C0 = GEARWELD.C0 * ANGLES(RAD(0), RAD(0), RAD(5))
819
		GEARWELD2.C0 = GEARWELD2.C0 * ANGLES(RAD(0), RAD(0), RAD(-5))
820
	end
821
end))
822
823
ParticleEmitter({Speed = 0.2, Drag = 0, Size1 = 0.7, Size2 = 0, Lifetime1 = 0.7, Lifetime2 = 0.7, Parent = Hole, Emit = 100, Offset = 360, Enabled = true, Acel = VT(3,9,8)})
824
--ParticleEmitter({Speed = 0.5, Drag = 0, Size1 = 0.8, Size2 = 0, Lifetime1 = 0.8, Lifetime2 = 0.9, Parent = Dangle, Emit = 100, Offset = 360, Enabled = true, Acel = VT(3,9,8)})
825
826
local cR=255
827
local cG=0
828
local cB=0
829
local flg5=1 local omgidk=1
830
local add=15
831
game:GetService("RunService"):BindToRenderStep("Ghost",1,function()
832
	if omgidk>10000 then omgidk=0 end
833
	omgidk=omgidk+1
834
	if cR>=255 then flg5=1 end
835
	if cG>=255 then flg5=2 end
836
	if cB>=255 then flg5=3 end
837
	if flg5==1 then cR=cR-add cG=cG+add end
838
	if flg5==2 then cG=cG-add cB=cB+add end
839
	if flg5==3 then cB=cB-add cR=cR+add end
840
	color=Color3.fromRGB(cR,cG,cB)
841
for _, c in pairs(Weapon:GetDescendants()) do
842
	if c.ClassName == "Part" and c.Name ~= "Eye" and c.Parent ~= Effects and c.Parent.Parent ~= Effects then
843
		c.Material = "Glass"
844
		c.Color = C3(0,0,0)
845
	elseif c.ClassName == "Part" and c.Name == "Eye" then
846
		c.Color = color
847
		c.Material = "Neon"
848
	end
849
end
850
end)
851
Weapon.Parent = Character
852
for _, c in pairs(Weapon:GetChildren()) do
853
	if c.ClassName == "Part" then
854
		c.CustomPhysicalProperties = PhysicalProperties.new(0, 0, 0, 0, 0)
855
	end
856
end
857
858
local SKILLTEXTCOLOR = C3(1,0,0)
859
local SKILLFONT = "Antique"
860
local SKILLTEXTSIZE = 7
861
862
Humanoid.Died:connect(function()
863
	ATTACK = true
864
end)
865
866
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")
867
868
local SKILL1TEXT = CreateLabel(SKILL1FRAME, "[Z] Banisher Bullet", SKILLTEXTCOLOR, SKILLTEXTSIZE, SKILLFONT, 0, 2, 0.7, "Text 1")
869
870
function printbye(Name)
871
	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, "}
872
	warn(MESSAGES[MRANDOM(1,#MESSAGES)]..Name..".")	
873
end
874
875
workspace.ChildAdded:connect(function(instance)
876
    for BANISH = 1, #TOBANISH do
877
		if TOBANISH[BANISH] ~= nil then
878
			if instance.Name == TOBANISH[BANISH] then
879
				coroutine.resume(coroutine.create(function()
880
					printbye(instance.Name)
881
					instance:ClearAllChildren()
882
					Debris:AddItem(instance,0.0005)
883
				end))
884
			end
885
		end
886
	end
887
end)
888
889
--//=================================\\
890
--||			DAMAGING
891
--\\=================================//
892
893
function Banish(Foe)
894
	if Foe then
895
		coroutine.resume(coroutine.create(function()
896
			--if game.Players:FindFirstChild(Foe.Name) then
897
				table.insert(TOBANISH,Foe.Name)
898
				printbye(Foe.Name)
899
			--end
900
			Foe.Archivable = true
901
			local CLONE = Foe:Clone()
902
			Foe:Destroy()
903
			CLONE.Parent = Effects
904
			CLONE:BreakJoints()
905
			local MATERIALS = {"Glass","Neon"}
906
			for _, c in pairs(CLONE:GetDescendants()) do
907
				if c:IsA("BasePart") then
908
					if c.Name == "Torso" or c.Name == "UpperTorso" or c == CLONE.PrimaryPart then
909
 						CreateSound(340722848, c, 10, 1, false)
910
					end
911
					c.Anchored = true
912
					c.Transparency = c.Transparency + 0.2
913
					c.Material = MATERIALS[MRANDOM(1,2)]
914
					c.Color = C3(1,0,0)
915
					if c.ClassName == "MeshPart" then
916
						c.TextureID = ""
917
					end
918
					if c:FindFirstChildOfClass("SpecialMesh") then
919
						c:FindFirstChildOfClass("SpecialMesh").TextureId = ""
920
					end
921
					if c:FindFirstChildOfClass("Decal") then
922
						c:FindFirstChildOfClass("Decal"):remove()
923
					end
924
					c.Name = "Banished"
925
					c.CanCollide = false
926
				else
927
					c:remove()
928
				end
929
			end
930
			local A = false
931
			for i = 1, 35 do
932
				if A == false then
933
					A = true
934
				elseif A == true then
935
					A = false
936
				end
937
				for _, c in pairs(CLONE:GetDescendants()) do
938
					if c:IsA("BasePart") then
939
						c.Anchored = true
940
						c.Material = MATERIALS[MRANDOM(1,2)]
941
						c.Transparency = c.Transparency + 0.8/35
942
						if A == false then
943
							c.CFrame = c.CFrame*CF(MRANDOM(-45,45)/45,MRANDOM(-45,45)/45,MRANDOM(-45,45)/45)
944
						elseif A == true then
945
							c.CFrame = c.CFrame*CF(MRANDOM(-45,45)/45,MRANDOM(-45,45)/45,MRANDOM(-45,45)/45)						
946
						end
947
					end
948
				end
949
				Swait()
950
			end
951
			CLONE:remove()
952
		end))
953
	end
954
end
955
956
function ApplyAoE(POSITION,RANGE,ISBANISH)
957
	local CHILDREN = workspace:GetDescendants()
958
	for index, CHILD in pairs(CHILDREN) do
959
		if CHILD.ClassName == "Model" and CHILD ~= Character then
960
			local HUM = CHILD:FindFirstChildOfClass("Humanoid")
961
			if HUM then
962
				local TORSO = CHILD:FindFirstChild("Torso") or CHILD:FindFirstChild("UpperTorso")
963
				if TORSO then
964
					if (TORSO.Position - POSITION).Magnitude <= RANGE then
965
						if ISBANISH == true then
966
							Banish(CHILD)
967
						else
968
							if ISBANISH == "Gravity" then
969
								HUM.PlatformStand = true
970
								if TORSO:FindFirstChild("V3BanishForce"..Player.Name) then
971
									local grav = Instance.new("BodyPosition",TORSO)
972
									grav.D = 15
973
									grav.P = 20000
974
									grav.maxForce = Vector3.new(math.huge,math.huge,math.huge)
975
									grav.position = TORSO.Position
976
									grav.Name = "V3BanishForce"..Player.Name
977
								else
978
									TORSO:FindFirstChild("V3BanishForce"..Player.Name).position = TORSO.Position+VT(0,0.3,0)
979
									TORSO.RotVelocity = VT(MRANDOM(-25,25),MRANDOM(-25,25),MRANDOM(-25,25))
980
								end
981
							else
982
								HUM.PlatformStand = false
983
							end
984
						end
985
					elseif ISBANISH == "Gravity" then
986
						if TORSO:FindFirstChild("V3BanishForce"..Player.Name) then
987
							TORSO:FindFirstChild("V3BanishForce"..Player.Name):remove()
988
							HUM.PlatformStand = false
989
						end
990
					end
991
				end
992
			end
993
		end
994
	end
995
end
996
997
--//=================================\\
998
--||	ATTACK FUNCTIONS AND STUFF
999
--\\=================================//
1000
1001
function Banisher_Bullet()
1002
	ATTACK = true
1003
	Rooted = false
1004
	for i=0, 0.05, 0.1 / Animation_Speed do
1005
		Swait()
1006
		turnto(Mouse.Hit.p)
1007
		RootJoint.C0 = Clerp(RootJoint.C0,ROOTC0 * CF(0, 0, 0) * ANGLES(RAD(0), RAD(0), RAD(90)), 0.5 / Animation_Speed)
1008
		Neck.C0 = Clerp(Neck.C0, NECKC0 * CF(0, 0, 0) * ANGLES(RAD(0), RAD(0), RAD(-90)), 0.5 / Animation_Speed)
1009
		RightShoulder.C0 = Clerp(RightShoulder.C0, CF(1.5, 0.5, 0) * ANGLES(RAD(90), RAD(0), RAD(90)) * RIGHTSHOULDERC0, 0.5 / Animation_Speed)
1010
		LeftShoulder.C0 = Clerp(LeftShoulder.C0, CF(-1.5, 0.6, 0) * ANGLES(RAD(-45), RAD(0), RAD(45)) * LEFTSHOULDERC0, 0.5 / Animation_Speed)
1011
		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)
1012
		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)
1013
	end
1014
	repeat
1015
		for i=0, 0.05, 0.1 / Animation_Speed do
1016
			Swait()
1017
			turnto(Mouse.Hit.p)
1018
			RootJoint.C0 = Clerp(RootJoint.C0,ROOTC0 * CF(0, 0, 0) * ANGLES(RAD(0), RAD(0), RAD(90)), 0.5 / Animation_Speed)
1019
			Neck.C0 = Clerp(Neck.C0, NECKC0 * CF(0, 0, 0) * ANGLES(RAD(0), RAD(0), RAD(-90)), 0.5 / Animation_Speed)
1020
			RightShoulder.C0 = Clerp(RightShoulder.C0, CF(1.5, 0.5, 0) * ANGLES(RAD(90), RAD(0), RAD(90)) * RIGHTSHOULDERC0, 0.5 / Animation_Speed)
1021
			LeftShoulder.C0 = Clerp(LeftShoulder.C0, CF(-1.5, 0.6, 0) * ANGLES(RAD(-45), RAD(0), RAD(45)) * LEFTSHOULDERC0, 0.5 / Animation_Speed)
1022
			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)
1023
			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)
1024
		end
1025
		local HIT,POS = CastProperRay(Hole.Position, Mouse.Hit.p, 1000, Character)
1026
		SpawnTrail(Hole.Position,POS)
1027
		if HIT ~= nil then
1028
			if HIT.Parent ~= workspace and HIT.Parent.ClassName ~= "Folder" then
1029
				Banish(HIT.Parent)
1030
			end
1031
		end
1032
		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})
1033
		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})
1034
		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})
1035
		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})
1036
		for i=0, 0.05, 0.1 / Animation_Speed do
1037
			Swait()
1038
			RootJoint.C0 = Clerp(RootJoint.C0,ROOTC0 * CF(0, 0, 0) * ANGLES(RAD(0), RAD(0), RAD(90)), 0.5 / Animation_Speed)
1039
			Neck.C0 = Clerp(Neck.C0, NECKC0 * CF(0, 0, 0) * ANGLES(RAD(0), RAD(0), RAD(-90)), 0.25 / Animation_Speed)
1040
			RightShoulder.C0 = Clerp(RightShoulder.C0, CF(1.5, 0.5, 0) * ANGLES(RAD(130), RAD(15), RAD(90)) * RIGHTSHOULDERC0, 0.5 / Animation_Speed)
1041
			LeftShoulder.C0 = Clerp(LeftShoulder.C0, CF(-1.5, 0.6, 0) * ANGLES(RAD(-45), RAD(0), RAD(45)) * LEFTSHOULDERC0, 0.5 / Animation_Speed)
1042
			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)
1043
			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)
1044
		end
1045
	until KEYHOLD == false
1046
	ATTACK = false
1047
	Rooted = false
1048
end
1049
1050
1051
--//=================================\\
1052
--||	  ASSIGN THINGS TO KEYS
1053
--\\=================================//
1054
1055
function MouseDown(Mouse)
1056
	if ATTACK == false then
1057
	end
1058
end
1059
1060
function MouseUp(Mouse)
1061
HOLD = false
1062
end
1063
1064
function KeyDown(Key)
1065
	KEYHOLD = true
1066
	if Key == "z" and ATTACK == false then
1067
		Banisher_Bullet()
1068
	end
1069
1070
	if Key == "b" and ATTACK == false then
1071
			chatfunc("Okay skids, I will unbanish you this time.")
1072
			TOBANISH = {}
1073
	end
1074
1075
	if Key == "c" and ATTACK == false then
1076
	end
1077
1078
	if Key == "v" and ATTACK == false then
1079
	end
1080
1081
	if Key == "x" and ATTACK == false then
1082
	end
1083
end
1084
1085
function KeyUp(Key)
1086
	KEYHOLD = false
1087
end
1088
1089
	Mouse.Button1Down:connect(function(NEWKEY)
1090
		MouseDown(NEWKEY)
1091
	end)
1092
	Mouse.Button1Up:connect(function(NEWKEY)
1093
		MouseUp(NEWKEY)
1094
	end)
1095
	Mouse.KeyDown:connect(function(NEWKEY)
1096
		KeyDown(NEWKEY)
1097
	end)
1098
	Mouse.KeyUp:connect(function(NEWKEY)
1099
		KeyUp(NEWKEY)
1100
	end)
1101
1102
--//=================================\\
1103
--\\=================================//
1104
1105
1106
function unanchor()
1107
	if UNANCHOR == true then
1108
		g = Character:GetChildren()
1109
		for i = 1, #g do
1110
			if g[i].ClassName == "Part" then
1111
				g[i].Anchored = false
1112
			end
1113
		end
1114
	end
1115
end
1116
1117
1118
--//=================================\\
1119
--||	WRAP THE WHOLE SCRIPT UP
1120
--\\=================================//
1121
1122
Humanoid.Changed:connect(function(Jump)
1123
	if Jump == "Jump" and (Disable_Jump == true) then
1124
		Humanoid.Jump = false
1125
	end
1126
end)
1127
1128
local CONNECT = nil
1129
1130
while true do
1131
	Swait()
1132
	ANIMATE.Parent = nil
1133
	if Character:FindFirstChildOfClass("Humanoid") == nil then
1134
		Humanoid = IT("Humanoid",Character)
1135
	end
1136
	for _,v in next, Humanoid:GetPlayingAnimationTracks() do
1137
	    v:Stop();
1138
	end
1139
	SINE = SINE + CHANGE
1140
	local TORSOVELOCITY = (RootPart.Velocity * VT(1, 0, 1)).magnitude
1141
	local TORSOVERTICALVELOCITY = RootPart.Velocity.y
1142
	local HITFLOOR = Raycast(RootPart.Position, (CF(RootPart.Position, RootPart.Position + VT(0, -1, 0))).lookVector, 4, Character)
1143
	local WALKSPEEDVALUE = 6 / (Humanoid.WalkSpeed / 29)
1144
	if ANIM == "Walk" and TORSOVELOCITY > 1 then
1145
		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)
1146
		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)
1147
		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)
1148
		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)
1149
	elseif (ANIM ~= "Walk") or (TORSOVELOCITY < 1) then
1150
		RootJoint.C1 = Clerp(RootJoint.C1, ROOTC0 * CF(0, 0, 0) * ANGLES(RAD(0), RAD(0), RAD(0)), 0.2 / 3)
1151
		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)
1152
		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)
1153
		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)
1154
	end
1155
	if TORSOVERTICALVELOCITY > 1 and HITFLOOR == nil then
1156
		ANIM = "Jump"
1157
		if ATTACK == false then
1158
			RootJoint.C0 = Clerp(RootJoint.C0, ROOTC0 * CF(0, 0, 0) * ANGLES(RAD(0), RAD(0), RAD(0)), 0.2 / Animation_Speed)
1159
			Neck.C0 = Clerp(Neck.C0, NECKC0 * CF(0, 0, 0 + ((1) - 1)) * ANGLES(RAD(-20), RAD(0), RAD(0)), 0.2 / Animation_Speed)
1160
			RightShoulder.C0 = Clerp(RightShoulder.C0, CF(1.5, 0.5, 0) * ANGLES(RAD(45), RAD(0), RAD(25))* RIGHTSHOULDERC0, 0.15 / Animation_Speed)
1161
			LeftShoulder.C0 = Clerp(LeftShoulder.C0, CF(-1.5, 0.5, 0) * ANGLES(RAD(-40), RAD(0), RAD(-20)) * LEFTSHOULDERC0, 0.2 / Animation_Speed)
1162
			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)
1163
			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)
1164
	    end
1165
	elseif TORSOVERTICALVELOCITY < -1 and HITFLOOR == nil then
1166
		ANIM = "Fall"
1167
		if ATTACK == false then
1168
			RootJoint.C0 = Clerp(RootJoint.C0, ROOTC0 * CF(0, 0, 0 ) * ANGLES(RAD(0), RAD(0), RAD(0)), 0.2 / Animation_Speed)
1169
			Neck.C0 = Clerp(Neck.C0, NECKC0 * CF(0, 0 , 0 + ((1) - 1)) * ANGLES(RAD(20), RAD(0), RAD(0)), 0.2 / Animation_Speed)
1170
			RightShoulder.C0 = Clerp(RightShoulder.C0, CF(1.5, 0.5, 0) * ANGLES(RAD(45), RAD(0), RAD(25))* RIGHTSHOULDERC0, 0.15 / Animation_Speed)
1171
			LeftShoulder.C0 = Clerp(LeftShoulder.C0, CF(-1.5, 0.5, 0) * ANGLES(RAD(0), RAD(0), RAD(-60)) * LEFTSHOULDERC0, 0.2 / Animation_Speed)
1172
			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)
1173
			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)
1174
		end
1175
	elseif TORSOVELOCITY < 1 and HITFLOOR ~= nil then
1176
		ANIM = "Idle"
1177
		if ATTACK == false then
1178
			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)
1179
			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)
1180
			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)
1181
			LeftShoulder.C0 = Clerp(LeftShoulder.C0, CF(-1.25, 0.5, 0.5) * ANGLES(RAD(-45), RAD(0), RAD(45)) * LEFTSHOULDERC0, 0.15 / 3)
1182
			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)
1183
			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)
1184
		end
1185
	elseif TORSOVELOCITY > 1 and HITFLOOR ~= nil then
1186
		ANIM = "Walk"
1187
		if ATTACK == false then
1188
			RootJoint.C0 = Clerp(RootJoint.C0,ROOTC0 * CF(0, 0, -0.1) * ANGLES(RAD(5), RAD(0), RAD(0)), 0.15 / 3)
1189
			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)
1190
			RightShoulder.C0 = Clerp(RightShoulder.C0, CF(1.5, 0.1, -0.4) * ANGLES(RAD(150), RAD(0), RAD(0))* RIGHTSHOULDERC0, 0.15 / 3)
1191
			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)
1192
			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)
1193
			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)
1194
		end
1195
	end
1196
	unanchor()
1197
	Humanoid.MaxHealth = "inf"
1198
	Humanoid.Health = "inf"
1199
	if Rooted == false then
1200
		Disable_Jump = false
1201
		Humanoid.WalkSpeed = Speed
1202
	elseif Rooted == true then
1203
		Disable_Jump = true
1204
		Humanoid.WalkSpeed = 0
1205
	end
1206
	sick.Parent = Torso
1207
	sick:resume()
1208
	sick.Volume = 0.8
1209
	sick.Pitch = 1
1210
	sick.SoundId = "rbxassetid://1504604335"
1211
	sick.Name = "BanishV3Music"
1212
end
1213
1214
--//=================================\\
1215
--\\=================================//
1216
1217
1218
1219
1220
1221
--//====================================================\\--
1222
--||			  		 END OF SCRIPT
1223
--\\====================================================//--