View difference between Paste ID: qLypyAkc and cp4gAZPq
SHOW: | | - or go back to the newest paste.
1
if game:GetService("RunService"):IsClient() then error("Script must be server-side in order to work; use h/ and not hl/") end
2
local Player,Mouse,mouse,UserInputService,ContextActionService = owner
3
local RealPlayer = Player
4-
--||			   CREATED BY SHACKLUSTER
4+
do print("FE Compatibility code by Mokiros")local a=RealPlayer;script.Parent=a.Character;local b=Instance.new("RemoteEvent")b.Name="UserInput_Event"local function c()local d={_fakeEvent=true,Functions={},Connect=function(self,e)table.insert(self.Functions,e)end}d.connect=d.Connect;return d end;local f={Target=nil,Hit=CFrame.new(),KeyUp=c(),KeyDown=c(),Button1Up=c(),Button1Down=c(),Button2Up=c(),Button2Down=c()}local g={InputBegan=c(),InputEnded=c()}local CAS={Actions={},BindAction=function(self,h,i,j,...)CAS.Actions[h]=i and{Name=h,Function=i,Keys={...}}or nil end}CAS.UnbindAction=CAS.BindAction;local function k(self,l,...)local d=f[l]if d and d._fakeEvent then for m,e in pairs(d.Functions)do e(...)end end end;f.TrigEvent=k;g.TrigEvent=k;b.OnServerEvent:Connect(function(n,o)if n~=a then return end;f.Target=o.Target;f.Hit=o.Hit;if not o.isMouse then local p=o.UserInputState==Enum.UserInputState.Begin;if o.UserInputType==Enum.UserInputType.MouseButton1 then return f:TrigEvent(p and"Button1Down"or"Button1Up")end;if o.UserInputType==Enum.UserInputType.MouseButton2 then return f:TrigEvent(p and"Button2Down"or"Button2Up")end;for m,d in pairs(CAS.Actions)do for m,q in pairs(d.Keys)do if q==o.KeyCode then d.Function(d.Name,o.UserInputState,o)end end end;f:TrigEvent(p and"KeyDown"or"KeyUp",o.KeyCode.Name:lower())g:TrigEvent(p and"InputBegan"or"InputEnded",o,false)end end)b.Parent=NLS([==[local a=game:GetService("Players").LocalPlayer;local b=script:WaitForChild("UserInput_Event")local c=a:GetMouse()local d=game:GetService("UserInputService")local e=function(f,g)if g then return end;b:FireServer({KeyCode=f.KeyCode,UserInputType=f.UserInputType,UserInputState=f.UserInputState,Hit=c.Hit,Target=c.Target})end;d.InputBegan:Connect(e)d.InputEnded:Connect(e)local h,i;while wait(1/30)do if h~=c.Hit or i~=c.Target then h,i=c.Hit,c.Target;b:FireServer({isMouse=true,Target=i,Hit=h})end end]==],Player.Character)local r=game;local s={__index=function(self,q)local t=rawget(self,"_RealService")if t then return typeof(t[q])=="function"and function(m,...)return t[q](t,...)end or t[q]end end,__newindex=function(self,q,u)local t=rawget(self,"_RealService")if t then t[q]=u end end}local function v(d,w)d._RealService=typeof(w)=="string"and r:GetService(w)or w;return setmetatable(d,s)end;local x={GetService=function(self,t)return rawget(self,t)or r:GetService(t)end,Players=v({LocalPlayer=v({GetMouse=function(self)return f end},Player)},"Players"),UserInputService=v(g,"UserInputService"),ContextActionService=v(CAS,"ContextActionService"),RunService=v({_btrs={},RenderStepped=r:GetService("RunService").Heartbeat,BindToRenderStep=function(self,h,m,i)self._btrs[h]=self.Heartbeat:Connect(i)end,UnbindFromRenderStep=function(self,h)self._btrs[h]:Disconnect()end},"RunService")}rawset(x.Players,"localPlayer",x.Players.LocalPlayer)x.service=x.GetService;v(x,game)game,owner=x,x.Players.LocalPlayer end
5-
--\\====================================================//--
5+
6
wait(0.2)
7-
script:ClearAllChildren()
7+
8
Player = owner
9
PlayerGui = Player.PlayerGui
10-
Player = game:GetService("Players").LocalPlayer
10+
11
Backpack = Player.Backpack
12
Character = Player.Character
13
Humanoid = Character.Humanoid
14
RootPart = Character["HumanoidRootPart"]
15
Torso = Character["Torso"]
16
Head = Character["Head"]
17
Mouse = Player:GetMouse()
18
RightArm = Character["Right Arm"]
19
LeftArm = Character["Left Arm"]
20
RightLeg = Character["Right Leg"]
21
LeftLeg = Character["Left Leg"]
22
RootJoint = RootPart["RootJoint"]
23
Neck = Torso["Neck"]
24
RightShoulder = Torso["Right Shoulder"]
25
LeftShoulder = Torso["Left Shoulder"]
26
RightHip = Torso["Right Hip"]
27
LeftHip = Torso["Left Hip"]
28
local TIME = 0
29
local sick = Instance.new("Sound",Torso)
30
31
IT = Instance.new
32
CF = CFrame.new
33
VT = Vector3.new
34
RAD = math.rad
35
C3 = Color3.new
36
UD2 = UDim2.new
37
BRICKC = BrickColor.new
38
ANGLES = CFrame.Angles
39
EULER = CFrame.fromEulerAnglesXYZ
40
COS = math.cos
41
ACOS = math.acos
42
SIN = math.sin
43
ASIN = math.asin
44
ABS = math.abs
45
MRANDOM = math.random
46
FLOOR = math.floor
47
48
--//=================================\\
49
--|| 	      USEFUL VALUES
50
--\\=================================//
51
52
Animation_Speed = 3
53
local FORCERESET = false
54
Frame_Speed = 1 / 60 -- (1 / 30) OR (1 / 60)
55
local Speed = 16
56
local ROOTC0 = CF(0, 0, 0) * ANGLES(RAD(-90), RAD(0), RAD(180))
57
local NECKC0 = CF(0, 1, 0) * ANGLES(RAD(-90), RAD(0), RAD(180))
58
local RIGHTSHOULDERC0 = CF(-0.5, 0, 0) * ANGLES(RAD(0), RAD(90), RAD(0))
59
local LEFTSHOULDERC0 = CF(0.5, 0, 0) * ANGLES(RAD(0), RAD(-90), RAD(0))
60
local DAMAGEMULTIPLIER = 1
61
local ANIM = "Idle"
62
local ATTACK = false
63
local EQUIPPED = false
64
local Effects2 = {}
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 LastBolt
74
local LightningBolts = {}
75
local GunPoint
76
local VALUE2 = false
77
local Player_Size = 1
78
local ROBLOXIDLEANIMATION = IT("Animation")
79
ROBLOXIDLEANIMATION.Name = "Roblox Idle Animation"
80
ROBLOXIDLEANIMATION.AnimationId = "http://www.roblox.com/asset/?id=180435571"
81
--ROBLOXIDLEANIMATION.Parent = Humanoid
82
local WEAPONGUI = IT("ScreenGui", PlayerGui)
83
WEAPONGUI.Name = "BanishV3Gui"
84
local Weapon = IT("Model")
85
Weapon.Name = "Adds"
86
local Effects = IT("Folder", Weapon)
87
Effects.Name = "Effects"
88
local Delete = IT("Model", Character)
89
Delete.Name = "Those who must be banished."
90
local ANIMATOR = Humanoid.Animator
91
local ANIMATE = Character:FindFirstChild("Animate")
92
local UNANCHOR = true
93
local TOBANISH = {}
94
local INSTANT = false
95
local INTRO = false
96
script.Parent = PlayerGui
97
local sick = Instance.new("Sound",Character)
98
sick.Parent = Torso
99
sick.Playing = true
100
sick.Looped = true
101
sick.Volume = 1
102
sick.Pitch = 1
103
sick.TimePosition = 0
104
sick.SoundId = "rbxassetid://1335404496"
105
106
--//=================================\\
107
--\\=================================//
108
109
110
--//=================================\\
111
--|| SAZERENOS' ARTIFICIAL HEARTBEAT
112
--\\=================================//
113
114
ArtificialHB = Instance.new("BindableEvent", script)
115
ArtificialHB.Name = "ArtificialHB"
116
117
script:WaitForChild("ArtificialHB")
118
119
frame = Frame_Speed
120
tf = 0
121
allowframeloss = false
122
tossremainder = false
123
lastframe = tick()
124
script.ArtificialHB:Fire()
125
126
game:GetService("RunService").Heartbeat:connect(function(s, p)
127
	tf = tf + s
128
	if tf >= frame then
129
		if allowframeloss then
130
			script.ArtificialHB:Fire()
131
			lastframe = tick()
132
		else
133
			for i = 1, math.floor(tf / frame) do
134
				script.ArtificialHB:Fire()
135
			end
136
		lastframe = tick()
137
		end
138
		if tossremainder then
139
			tf = 0
140
		else
141
			tf = tf - frame * math.floor(tf / frame)
142
		end
143
	end
144
end)
145
146
--//=================================\\
147
--\\=================================//
148
149
--//=================================\\
150
--|| 	      SOME FUNCTIONS
151
--\\=================================//
152
153
function Raycast(POSITION, DIRECTION, RANGE, IGNOREDECENDANTS)
154
	return workspace:FindPartOnRay(Ray.new(POSITION, DIRECTION.unit * RANGE), IGNOREDECENDANTS)
155
end
156
157
function PositiveAngle(NUMBER)
158
	if NUMBER >= 0 then
159
		NUMBER = 0
160
	end
161
	return NUMBER
162
end
163
164
function NegativeAngle(NUMBER)
165
	if NUMBER <= 0 then
166
		NUMBER = 0
167
	end
168
	return NUMBER
169
end
170
171
function Swait(NUMBER)
172
	if NUMBER == 0 or NUMBER == nil then
173
		ArtificialHB.Event:wait()
174
	else
175
		for i = 1, NUMBER do
176
			ArtificialHB.Event:wait()
177
		end
178
	end
179
end
180
181
function CreateMesh(MESH, PARENT, MESHTYPE, MESHID, TEXTUREID, SCALE, OFFSET)
182
	local NEWMESH = IT(MESH)
183
	if MESH == "SpecialMesh" then
184
		NEWMESH.MeshType = MESHTYPE
185
		if MESHID ~= "nil" and MESHID ~= "" then
186
			NEWMESH.MeshId = "http://www.roblox.com/asset/?id="..MESHID
187
		end
188
		if TEXTUREID ~= "nil" and TEXTUREID ~= "" then
189
			NEWMESH.TextureId = "http://www.roblox.com/asset/?id="..TEXTUREID
190
		end
191
	end
192
	NEWMESH.Offset = OFFSET or VT(0, 0, 0)
193
	NEWMESH.Scale = SCALE
194
	NEWMESH.Parent = PARENT
195
	return NEWMESH
196
end
197
198
function CreatePart(FORMFACTOR, PARENT, MATERIAL, REFLECTANCE, TRANSPARENCY, BRICKCOLOR, NAME, SIZE, ANCHOR)
199
	local NEWPART = IT("Part")
200
	NEWPART.formFactor = FORMFACTOR
201
	NEWPART.Reflectance = REFLECTANCE
202
	NEWPART.Transparency = TRANSPARENCY
203
	NEWPART.CanCollide = false
204
	NEWPART.Locked = true
205
	NEWPART.Anchored = true
206
	if ANCHOR == false then
207
		NEWPART.Anchored = false
208
	end
209
	NEWPART.BrickColor = BRICKC(tostring(BRICKCOLOR))
210
	NEWPART.Name = NAME
211
	NEWPART.Size = SIZE
212
	NEWPART.Position = Torso.Position
213
	NEWPART.Material = MATERIAL
214
	NEWPART:BreakJoints()
215
	NEWPART.Parent = PARENT
216
	return NEWPART
217
end
218
219
	local function weldBetween(a, b)
220
	    local weldd = Instance.new("ManualWeld")
221
	    weldd.Part0 = a
222
	    weldd.Part1 = b
223
	    weldd.C0 = CFrame.new()
224
	    weldd.C1 = b.CFrame:inverse() * a.CFrame
225
	    weldd.Parent = a
226
	    return weldd
227
	end
228
229
230
function QuaternionFromCFrame(cf)
231
	local mx, my, mz, m00, m01, m02, m10, m11, m12, m20, m21, m22 = cf:components()
232
	local trace = m00 + m11 + m22
233
	if trace > 0 then 
234
		local s = math.sqrt(1 + trace)
235
		local recip = 0.5 / s
236
		return (m21 - m12) * recip, (m02 - m20) * recip, (m10 - m01) * recip, s * 0.5
237
	else
238
		local i = 0
239
		if m11 > m00 then
240
			i = 1
241
		end
242
		if m22 > (i == 0 and m00 or m11) then
243
			i = 2
244
		end
245
		if i == 0 then
246
			local s = math.sqrt(m00 - m11 - m22 + 1)
247
			local recip = 0.5 / s
248
			return 0.5 * s, (m10 + m01) * recip, (m20 + m02) * recip, (m21 - m12) * recip
249
		elseif i == 1 then
250
			local s = math.sqrt(m11 - m22 - m00 + 1)
251
			local recip = 0.5 / s
252
			return (m01 + m10) * recip, 0.5 * s, (m21 + m12) * recip, (m02 - m20) * recip
253
		elseif i == 2 then
254
			local s = math.sqrt(m22 - m00 - m11 + 1)
255
			local recip = 0.5 / s return (m02 + m20) * recip, (m12 + m21) * recip, 0.5 * s, (m10 - m01) * recip
256
		end
257
	end
258
end
259
 
260
function CastWarpOutlines(TARGET)
261
	coroutine.resume(coroutine.create(function()
262
		local T = TARGET:GetChildren()
263
		for i = 1, #T do
264
			local child = T[i]
265
			if child.ClassName == "Part" or child.ClassName == "MeshPart" then
266
				do
267
					local clone = child:Clone()
268
					clone.Parent = Effects
269
					clone.Anchored = true
270
					clone.CanCollide = false
271
					clone:ClearAllChildren()
272
					clone.CFrame = child.CFrame
273
					if clone.Name == "Head" then
274
						clone.Size = VT(clone.Size.Y, clone.Size.Y, clone.Size.Y)
275
					end
276
					if clone.ClassName == "MeshPart" then
277
						clone.TextureID = ""
278
					end
279
					clone.Color = C3(1, 0, 0)
280
					clone.Material = "Neon"
281
					coroutine.resume(coroutine.create(function()
282
						for i = 1, 100 do
283
							Swait()
284
							clone.Transparency = clone.Transparency + 0.01
285
							clone.Size = clone.Size + VT(0.001, 0.001, 0.001)
286
						end
287
						clone:remove()
288
					end))
289
				end
290
			end
291
		end
292
	end))
293
end
294
function killnearest(position, range, maxstrength)
295
	for i, v in ipairs(workspace:GetChildren()) do
296
		local body = v:GetChildren()
297
		for part = 1, #body do
298
			if (body[part].ClassName == "Part" or body[part].ClassName == "MeshPart") and v ~= Character and range > (body[part].Position - position).Magnitude and v.ClassName == "Model" then
299
				CastWarpOutlines(v)
300
				v:remove()
301
				if game.Players:FindFirstChild(v.Name) then
302
					local Value = IT("BoolValue", Delete)
303
					Value.Name = v.Name
304
				end
305
			end
306
		end
307
	end
308
end
309
310
function QuaternionToCFrame(px, py, pz, x, y, z, w)
311
	local xs, ys, zs = x + x, y + y, z + z
312
	local wx, wy, wz = w * xs, w * ys, w * zs
313
	local xx = x * xs
314
	local xy = x * ys
315
	local xz = x * zs
316
	local yy = y * ys
317
	local yz = y * zs
318
	local zz = z * zs
319
	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))
320
end
321
 
322
function QuaternionSlerp(a, b, t)
323
	local cosTheta = a[1] * b[1] + a[2] * b[2] + a[3] * b[3] + a[4] * b[4]
324
	local startInterp, finishInterp;
325
	if cosTheta >= 0.0001 then
326
		if (1 - cosTheta) > 0.0001 then
327
			local theta = ACOS(cosTheta)
328
			local invSinTheta = 1 / SIN(theta)
329
			startInterp = SIN((1 - t) * theta) * invSinTheta
330
			finishInterp = SIN(t * theta) * invSinTheta
331
		else
332
			startInterp = 1 - t
333
			finishInterp = t
334
		end
335
	else
336
		if (1 + cosTheta) > 0.0001 then
337
			local theta = ACOS(-cosTheta)
338
			local invSinTheta = 1 / SIN(theta)
339
			startInterp = SIN((t - 1) * theta) * invSinTheta
340
			finishInterp = SIN(t * theta) * invSinTheta
341
		else
342
			startInterp = t - 1
343
			finishInterp = t
344
		end
345
	end
346
	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
347
end
348
349
function Clerp(a, b, t)
350
	local qa = {QuaternionFromCFrame(a)}
351
	local qb = {QuaternionFromCFrame(b)}
352
	local ax, ay, az = a.x, a.y, a.z
353
	local bx, by, bz = b.x, b.y, b.z
354
	local _t = 1 - t
355
	return QuaternionToCFrame(_t * ax + t * bx, _t * ay + t * by, _t * az + t * bz, QuaternionSlerp(qa, qb, t))
356
end
357
358
function CreateFrame(PARENT, TRANSPARENCY, BORDERSIZEPIXEL, POSITION, SIZE, COLOR, BORDERCOLOR, NAME)
359
	local frame = IT("Frame")
360
	frame.BackgroundTransparency = TRANSPARENCY
361
	frame.BorderSizePixel = BORDERSIZEPIXEL
362
	frame.Position = POSITION
363
	frame.Size = SIZE
364
	frame.BackgroundColor3 = COLOR
365
	frame.BorderColor3 = BORDERCOLOR
366
	frame.Name = NAME
367
	frame.Parent = PARENT
368
	return frame
369
end
370
371
function CreateLabel(PARENT, TEXT, TEXTCOLOR, TEXTFONTSIZE, TEXTFONT, TRANSPARENCY, BORDERSIZEPIXEL, STROKETRANSPARENCY, NAME)
372
	local label = IT("TextLabel")
373
	label.BackgroundTransparency = 1
374
	label.Size = UD2(1, 0, 1, 0)
375
	label.Position = UD2(0, 0, 0, 0)
376
	label.TextColor3 = C3(1,0,0)
377
	label.TextStrokeTransparency = STROKETRANSPARENCY
378
	label.TextTransparency = TRANSPARENCY
379
	label.FontSize = TEXTFONTSIZE
380
	label.Font = TEXTFONT
381
	label.BorderSizePixel = BORDERSIZEPIXEL
382
	label.TextScaled = false
383
	label.Text = TEXT
384
	label.Name = NAME
385
	label.Parent = PARENT
386
	return label
387
end
388
389
function NoOutlines(PART)
390
	PART.TopSurface, PART.BottomSurface, PART.LeftSurface, PART.RightSurface, PART.FrontSurface, PART.BackSurface = 10, 10, 10, 10, 10, 10
391
end
392
393
function CreateWeldOrSnapOrMotor(TYPE, PARENT, PART0, PART1, C0, C1)
394
	local NEWWELD = IT(TYPE)
395
	NEWWELD.Part0 = PART0
396
	NEWWELD.Part1 = PART1
397
	NEWWELD.C0 = C0
398
	NEWWELD.C1 = C1
399
	NEWWELD.Parent = PARENT
400
	return NEWWELD
401
end
402
403
local S = IT("Sound")
404
function CreateSound(ID, PARENT, VOLUME, PITCH, DOESLOOP)
405
	local NEWSOUND = nil
406
	coroutine.resume(coroutine.create(function()
407
		NEWSOUND = S:Clone()
408
		NEWSOUND.Parent = PARENT
409
		NEWSOUND.Volume = VOLUME
410
		NEWSOUND.Pitch = PITCH
411
		NEWSOUND.SoundId = "http://www.roblox.com/asset/?id="..ID
412
		NEWSOUND:play()
413
		if DOESLOOP == true then
414
			NEWSOUND.Looped = true
415
		else
416
			repeat wait(1) until NEWSOUND.Playing == false or NEWSOUND.Parent ~= PARENT
417
			NEWSOUND:remove()
418
		end
419
	end))
420
	return NEWSOUND
421
end
422
423
function CFrameFromTopBack(at, top, back)
424
	local right = top:Cross(back)
425
	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)
426
end
427
428
function CreateSpikeball(SIZE, WAIT, CFRAME, DOESROT, ROT, COLOR, GROW)
429
	local wave = CreatePart(3, Effects, "Neon", 0, 0.5, BRICKC(COLOR), "Effect", VT(0, 0, 0))
430
	local mesh = IT("SpecialMesh", wave)
431
	mesh.MeshType = "FileMesh"
432
	mesh.MeshId = "http://www.roblox.com/asset/?id=9982590"
433
	mesh.Scale = SIZE
434
	mesh.Offset = VT(0, 0, -SIZE.X / 8)
435
	wave.CFrame = CFRAME
436
	coroutine.resume(coroutine.create(function(PART)
437
		for i = 1, WAIT do
438
			Swait()
439
			mesh.Scale = mesh.Scale + GROW
440
			mesh.Offset = VT(0, 0, -(mesh.Scale.X / 8))
441
			if DOESROT == true then
442
				wave.CFrame = wave.CFrame * CFrame.fromEulerAnglesXYZ(0, ROT, 0)
443
			end
444
			wave.Transparency = wave.Transparency + 0.5 / WAIT
445
			if wave.Transparency > 0.99 then
446
				wave:remove()
447
			end
448
		end
449
	end))
450
end
451
function CreateSwirl(SIZE, WAIT, CFRAME, DOESROT, ROT, COLOR, GROW)
452
	local wave = CreatePart(3, Effects, "Neon", 0, 0.5, BRICKC(COLOR), "Effect", VT(0, 0, 0))
453
	local mesh = IT("SpecialMesh", wave)
454
	mesh.MeshType = "FileMesh"
455
	mesh.MeshId = "http://www.roblox.com/asset/?id=1051557"
456
	mesh.Scale = SIZE
457
	wave.CFrame = CFRAME
458
	coroutine.resume(coroutine.create(function(PART)
459
		for i = 1, WAIT do
460
			Swait()
461
			mesh.Scale = mesh.Scale + GROW
462
			mesh.Offset = VT(0, 0, -(mesh.Scale.X / 8))
463
			if DOESROT == true then
464
				wave.CFrame = wave.CFrame * CFrame.fromEulerAnglesXYZ(0, ROT, 0)
465
			end
466
			wave.Transparency = wave.Transparency + 0.5 / WAIT
467
			if wave.Transparency > 0.99 then
468
				wave:remove()
469
			end
470
		end
471
	end))
472
end
473
function CreateTornado(SIZE, DOESROT, ROT, WAIT, CFRAME, COLOR, GROW)
474
	local wave = CreatePart(3, Effects, "Neon", 0, 0.5, BRICKC(COLOR), "Effect", VT(0, 0, 0))
475
	local mesh = IT("SpecialMesh", wave)
476
	mesh.MeshType = "FileMesh"
477
	mesh.MeshId = "http://www.roblox.com/asset/?id=102638417"
478
	mesh.Scale = SIZE
479
	wave.CFrame = CFRAME
480
	coroutine.resume(coroutine.create(function(PART)
481
		for i = 1, WAIT do
482
			Swait()
483
			mesh.Scale = mesh.Scale + GROW
484
			if DOESROT == true then
485
				wave.CFrame = wave.CFrame * CFrame.fromEulerAnglesXYZ(0, ROT, 0)
486
			end
487
			wave.Transparency = wave.Transparency + 0.5 / WAIT
488
			if wave.Transparency > 0.99 then
489
				wave:remove()
490
			end
491
		end
492
	end))
493
end
494
function CreateRing(SIZE, DOESROT, ROT, WAIT, CFRAME, COLOR, GROW)
495
	local wave = CreatePart(3, Effects, "Neon", 0, 0.5, BRICKC(COLOR), "Effect", VT(0, 0, 0))
496
	local mesh = IT("SpecialMesh", wave)
497
	mesh.MeshType = "FileMesh"
498
	mesh.MeshId = "http://www.roblox.com/asset/?id=3270017"
499
	mesh.Scale = SIZE
500
	mesh.Offset = VT(0, 0, 0)
501
	wave.CFrame = CFRAME
502
	coroutine.resume(coroutine.create(function(PART)
503
		for i = 1, WAIT do
504
			Swait()
505
			mesh.Scale = mesh.Scale + GROW
506
			if DOESROT == true then
507
				wave.CFrame = wave.CFrame * CFrame.fromEulerAnglesXYZ(0, ROT, 0)
508
			end
509
			wave.Transparency = wave.Transparency + 0.5 / WAIT
510
			if wave.Transparency > 0.99 then
511
				wave:remove()
512
			end
513
		end
514
	end))
515
end
516
function MagicSphere(SIZE, WAIT, CFRAME, COLOR, GROW)
517
	local wave = CreatePart(3, Effects, "Neon", 0, 0, BRICKC(COLOR), "Effect", VT(1, 1, 1), true)
518
	local mesh = IT("SpecialMesh", wave)
519
	mesh.MeshType = "Sphere"
520
	mesh.Scale = SIZE
521
	mesh.Offset = VT(0, 0, 0)
522
	wave.CFrame = CFRAME
523
	coroutine.resume(coroutine.create(function(PART)
524
		for i = 1, WAIT do
525
			Swait()
526
			mesh.Scale = mesh.Scale + GROW
527
			wave.Transparency = wave.Transparency + 1 / WAIT
528
			if wave.Transparency > 0.99 then
529
				wave:remove()
530
			end
531
		end
532
	end))
533
end
534
function MagicBlock(SIZE, WAIT, CFRAME, COLOR, GROW)
535
	local wave = CreatePart(3, Effects, "Neon", 0, 0, BRICKC(COLOR), "Effect", VT(SIZE, SIZE, SIZE), true)
536
	local mesh = IT("BlockMesh", wave)
537
	wave.CFrame = CFRAME
538
	coroutine.resume(coroutine.create(function(PART)
539
		for i = 1, WAIT do
540
			Swait()
541
			mesh.Scale = mesh.Scale + GROW
542
			wave.CFrame = CFRAME * ANGLES(RAD(math.random(-360, 360)), RAD(math.random(-360, 360)), RAD(math.random(-360, 360)))
543
			wave.Transparency = wave.Transparency + 1 / WAIT
544
			if wave.Transparency > 0.99 then
545
				wave:remove()
546
			end
547
		end
548
	end))
549
end
550
551
--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})
552
function WACKYEFFECT(Table)
553
	local TYPE = (Table.EffectType or "Sphere")
554
	local SIZE = (Table.Size or VT(1,1,1))
555
	local ENDSIZE = (Table.Size2 or VT(0,0,0))
556
	local TRANSPARENCY = (Table.Transparency or 0)
557
	local ENDTRANSPARENCY = (Table.Transparency2 or 1)
558
	local CFRAME = (Table.CFrame or Torso.CFrame)
559
	local MOVEDIRECTION = (Table.MoveToPos or nil)
560
	local ROTATION1 = (Table.RotationX or 0)
561
	local ROTATION2 = (Table.RotationY or 0)
562
	local ROTATION3 = (Table.RotationZ or 0)
563
	local MATERIAL = (Table.Material or "Neon")
564
	local COLOR = (Table.Color or C3(1,1,1))
565
	local TIME = (Table.Time or 45)
566
	local SOUNDID = (Table.SoundID or nil)
567
	local SOUNDPITCH = (Table.SoundPitch or nil)
568
	local SOUNDVOLUME = (Table.SoundVolume or nil)
569
	coroutine.resume(coroutine.create(function()
570
		local PLAYSSOUND = false
571
		local SOUND = nil
572
		local EFFECT = CreatePart(3, Effects, MATERIAL, 0, TRANSPARENCY, BRICKC("Pearl"), "Effect", VT(1,1,1), true)
573
		if SOUNDID ~= nil and SOUNDPITCH ~= nil and SOUNDVOLUME ~= nil then
574
			PLAYSSOUND = true
575
			SOUND = CreateSound(SOUNDID, EFFECT, SOUNDVOLUME, SOUNDPITCH, false)
576
		end
577
		EFFECT.Color = COLOR
578
		local MSH = nil
579
		if TYPE == "Sphere" then
580
			MSH = CreateMesh("SpecialMesh", EFFECT, "Sphere", "", "", SIZE, VT(0,0,0))
581
		elseif TYPE == "Block" then
582
			MSH = IT("BlockMesh",EFFECT)
583
			MSH.Scale = VT(SIZE.X,SIZE.X,SIZE.X)
584
		elseif TYPE == "Wave" then
585
			MSH = CreateMesh("SpecialMesh", EFFECT, "FileMesh", "20329976", "", SIZE, VT(0,0,-SIZE.X/8))
586
		elseif TYPE == "Ring" then
587
			MSH = CreateMesh("SpecialMesh", EFFECT, "FileMesh", "559831844", "", VT(SIZE.X,SIZE.X,0.1), VT(0,0,0))
588
		elseif TYPE == "Slash" then
589
			MSH = CreateMesh("SpecialMesh", EFFECT, "FileMesh", "662586858", "", VT(SIZE.X/10,0,SIZE.X/10), VT(0,0,0))
590
		elseif TYPE == "Round Slash" then
591
			MSH = CreateMesh("SpecialMesh", EFFECT, "FileMesh", "662585058", "", VT(SIZE.X/10,0,SIZE.X/10), VT(0,0,0))
592
		elseif TYPE == "Swirl" then
593
			MSH = CreateMesh("SpecialMesh", EFFECT, "FileMesh", "1051557", "", SIZE, VT(0,0,0))
594
		elseif TYPE == "Skull" then
595
			MSH = CreateMesh("SpecialMesh", EFFECT, "FileMesh", "4770583", "", SIZE, VT(0,0,0))
596
		elseif TYPE == "Crystal" then
597
			MSH = CreateMesh("SpecialMesh", EFFECT, "FileMesh", "9756362", "", SIZE, VT(0,0,0))
598
		end
599
		if MSH ~= nil then
600
			local MOVESPEED = nil
601
			if MOVEDIRECTION ~= nil then
602
				MOVESPEED = (CFRAME.p - MOVEDIRECTION).Magnitude/TIME
603
			end
604
			local GROWTH = SIZE - ENDSIZE
605
			local TRANS = TRANSPARENCY - ENDTRANSPARENCY
606
			if TYPE == "Block" then
607
				EFFECT.CFrame = CFRAME*ANGLES(RAD(MRANDOM(0,360)),RAD(MRANDOM(0,360)),RAD(MRANDOM(0,360)))
608
			else
609
				EFFECT.CFrame = CFRAME
610
			end
611
			for LOOP = 1, TIME+1 do
612
				Swait()
613
				MSH.Scale = MSH.Scale - GROWTH/TIME
614
				if TYPE == "Wave" then
615
					MSH.Offset = VT(0,0,-MSH.Scale.X/8)
616
				end
617
				EFFECT.Transparency = EFFECT.Transparency - TRANS/TIME
618
				if TYPE == "Block" then
619
					EFFECT.CFrame = CFRAME*ANGLES(RAD(MRANDOM(0,360)),RAD(MRANDOM(0,360)),RAD(MRANDOM(0,360)))
620
				else
621
					EFFECT.CFrame = EFFECT.CFrame*ANGLES(RAD(ROTATION1),RAD(ROTATION2),RAD(ROTATION3))
622
				end
623
				if MOVEDIRECTION ~= nil then
624
					local ORI = EFFECT.Orientation
625
					EFFECT.CFrame = CF(EFFECT.Position,MOVEDIRECTION)*CF(0,0,-MOVESPEED)
626
					EFFECT.Orientation = ORI
627
				end
628
			end
629
			if PLAYSSOUND == false then
630
				EFFECT:remove()
631
			else
632
				SOUND.Stopped:Connect(function()
633
					EFFECT:remove()
634
				end)
635
			end
636
		else
637
			if PLAYSSOUND == false then
638
				EFFECT:remove()
639
			else
640
				repeat Swait() until SOUND.Playing == false
641
				EFFECT:remove()
642
			end
643
		end
644
	end))
645
end
646
647
function MakeForm(PART,TYPE)
648
	if TYPE == "Cyl" then
649
		local MSH = IT("CylinderMesh",PART)
650
	elseif TYPE == "Ball" then
651
		local MSH = IT("SpecialMesh",PART)
652
		MSH.MeshType = "Sphere"
653
	elseif TYPE == "Wedge" then
654
		local MSH = IT("SpecialMesh",PART)
655
		MSH.MeshType = "Wedge"
656
	end
657
end
658
659
function SpawnTrail(FROM,TO,BIG)
660
	local TRAIL = CreatePart(3, Effects, "Neon", 0, 0.5, "Really red", "Trail", VT(0,0,0))
661
	MakeForm(TRAIL,"Cyl")
662
	local DIST = (FROM - TO).Magnitude
663
	if BIG == true then
664
		TRAIL.Size = VT(0.5,DIST,0.5)
665
	else
666
		TRAIL.Size = VT(0.25,DIST,0.25)
667
	end
668
	TRAIL.CFrame = CF(FROM, TO) * CF(0, 0, -DIST/2) * ANGLES(RAD(90),RAD(0),RAD(0))
669
	coroutine.resume(coroutine.create(function()
670
		for i = 1, 5 do
671
			Swait()
672
			TRAIL.Transparency = TRAIL.Transparency + 0.1
673
		end
674
		TRAIL:remove()
675
	end))
676
end
677
678
Debris = game:GetService("Debris")
679
680
function CastProperRay(StartPos, EndPos, Distance, Ignore)
681
	local DIRECTION = CF(StartPos,EndPos).lookVector
682
	return Raycast(StartPos, DIRECTION, Distance, Ignore)
683
end
684
685
function turnto(position)
686
	RootPart.CFrame=CFrame.new(RootPart.CFrame.p,VT(position.X,RootPart.Position.Y,position.Z)) * CFrame.new(0, 0, 0)
687
end
688
689
function Zap(Table)
690
	local StartPos, TargetPos, Character, Color = Table.StartPosition, Table.TargetPosition, Table.Character, Table.Color
691
	local Duration = Table.Duration or 2
692
	local FadeRate = Table.FadeRate or 0.05
693
	local Offset = Table.Offset or 2
694
	local Individualize = Table.Individualize or false
695
	local MaxRange = Table.MaxRange or 200
696
	local SegmentLength = Table.SegmentLength or 5
697
	local TimeToFade = Table.TimeToFade or 0.5
698
	local Ignore = Table.Ignore or {}
699
	local SIZE = Table.Size or 0.3
700
	if not (StartPos and TargetPos) or not Character then
701
		return
702
	end
703
	local LightningModel = IT("Folder", Effects)
704
	LightningModel.Name = "ZAPP"
705
	for i, v in pairs({Character, LightningModel}) do
706
		table.insert(Ignore, v)
707
	end
708
	local LastPos = StartPos
709
	local Direction = CFrame.new(StartPos, TargetPos).lookVector
710
	local RayHit, RayPos, RayNormal = CastZapRay(StartPos, Direction, MaxRange, Ignore, false)
711
	local RayLength = (StartPos - RayPos).Magnitude
712
	local Struck = false
713
	local TotalSegments = math.ceil(RayLength / SegmentLength)
714
	Direction = CFrame.new(StartPos, RayPos).lookVector
715
	local LightningBolt = IT("Model", Effects)
716
	LightningBolt.Name = "Lightning"
717
	if not Individualize then
718
		table.insert(LightningBolts, LightningBolt)
719
	end
720
	LastBolt = LightningBolt
721
	Debris:AddItem(LightningBolt, Duration)
722
	LightningBolt.Parent = LightningModel
723
	for i = 1, TotalSegments do
724
		if not Struck then
725
			local Entropy = Vector3.new(math.random() * Offset * 2.5 - Offset, math.random() * Offset * 2.5 - Offset, math.random() * Offset * 2.5 - Offset)
726
			local NewPos = StartPos + Direction * (RayLength * (i / TotalSegments)) + Entropy
727
			local SegmentVec = NewPos - LastPos
728
			local RayHit, RayPos, RayNormal = CastZapRay(LastPos, SegmentVec.Unit, SegmentVec.Magnitude, {Character, LightningModel}, false)
729
			local RayVec = LastPos - RayPos
730
			local LightningPart = BaseLightning:Clone()
731
			LightningPart.BrickColor = BrickColor.new(Color)
732
			LightningPart.Size = Vector3.new(SIZE, SIZE, RayVec.Magnitude)
733
			LightningPart.CFrame = CFrame.new(LastPos, RayPos) * CFrame.new(0, 0, -(RayVec.Magnitude / 2))
734
			table.insert(Effects2, {
735
				LightningPart,
736
				"Disappear",
737
				0.025,
738
				1,
739
				1,
740
				1,
741
				2
742
			})
743
			local CylinderMesh = IT("CylinderMesh", LightningPart)
744
			local OrigCF = LightningPart.CFrame
745
			LightningPart.Size = Vector3.new(LightningPart.Size.X, LightningPart.Size.Z, LightningPart.Size.Y)
746
			LightningPart.CFrame = OrigCF * CFrame.Angles(math.pi / 2, 0, 0)
747
			LightningPart.Parent = LightningBolt
748
			LastPos = NewPos
749
		end
750
	end
751
	return {
752
		RayHit = RayHit,
753
		RayPos = RayPos,
754
		RayNormal = RayNormal,
755
		LightningModel = LightningModel
756
	}
757
end
758
function turnto(position)
759
	RootPart.CFrame = CFrame.new(RootPart.CFrame.p, VT(position.X, RootPart.Position.Y, position.Z)) * CFrame.new(0, 0, 0)
760
end
761
762
--//=================================\\
763
--||	     WEAPON CREATION
764
--\\=================================//
765
766
local Particle = IT("ParticleEmitter",nil)
767
Particle.Enabled = false
768
Particle.Transparency = NumberSequence.new({NumberSequenceKeypoint.new(0,0.3),NumberSequenceKeypoint.new(0.3,0),NumberSequenceKeypoint.new(1,1)})
769
Particle.LightEmission = 0.5
770
Particle.Rate = 150
771
Particle.ZOffset = 0.2
772
Particle.Rotation = NumberRange.new(-180, 180)
773
Particle.RotSpeed = NumberRange.new(-180, 180)
774
Particle.Texture = "http://www.roblox.com/asset/?id=304437537"
775
Particle.Color = ColorSequence.new(C3(1,0,0),C3(0.4,0,0))
776
777
--ParticleEmitter({Speed = 5, Drag = 0, Size1 = 1, Size2 = 5, Lifetime1 = 1, Lifetime2 = 1.5, Parent = Torso, Emit = 100, Offset = 360, Enabled = false})
778
function ParticleEmitter(Table)
779
	local PRTCL = Particle:Clone()
780
	local Speed = Table.Speed or 5
781
	local Drag = Table.Drag or 0
782
	local Size1 = Table.Size1 or 1
783
	local Size2 = Table.Size2 or 5
784
	local Lifetime1 = Table.Lifetime1 or 1
785
	local Lifetime2 = Table.Lifetime2 or 1.5
786
	local Parent = Table.Parent or Torso
787
	local Emit = Table.Emit or 100
788
	local Offset = Table.Offset or 360
789
	local Acel = Table.Acel or VT(0,0,0)
790
	local Enabled = Table.Enabled or false
791
	PRTCL.Parent = Parent
792
	PRTCL.Size = NumberSequence.new(Size1,Size2)
793
	PRTCL.Lifetime = NumberRange.new(Lifetime1,Lifetime2)
794
	PRTCL.Speed = NumberRange.new(Speed)
795
	PRTCL.VelocitySpread = Offset
796
	PRTCL.Drag = Drag
797
	PRTCL.Acceleration = Acel
798
	if Enabled == false then
799
		PRTCL:Emit(Emit)
800
		Debris:AddItem(PRTCL,Lifetime2)
801
	else
802
		PRTCL.Enabled = true
803
	end
804
	return PRTCL
805
end
806
807
		local Gun = CreatePart(3, Weapon, "SmoothPlastic", 0, 0, "Really black", "Gun", VT(0, 0, 0), false)
808
		local HandleMesh = CreateMesh("SpecialMesh", Gun, "FileMesh", "430198390", "430198451", VT(0.02, 0.02, 0.02), VT(0, 0, 0))
809
		local Weld = CreateWeldOrSnapOrMotor("Weld", Gun, RightArm, Gun, CF(0, -1.7, -0.2) * ANGLES(RAD(0), RAD(90), RAD(-90)), CF(0, 0, 0))
810
		GunPoint = CreatePart(3, Weapon, "SmoothPlastic", 0, 1, "Really black", "Point blank", VT(0, 0, 0), false)
811
		local HandleWeld = CreateWeldOrSnapOrMotor("Weld", GunPoint, RightArm, GunPoint, CF(0, -3.1, -0.8) * ANGLES(RAD(0), RAD(0), RAD(135)), CF(0, 0, 0))
812
		
813
		MagicSphere(VT(0.1, 0.1, 0.1), 45, GunPoint.CFrame, "Really red", VT(0.1, 0.1, 0.1))
814
		MagicSphere(VT(0.1, 0.1, 0.1), 45, GunPoint.CFrame, "Really red", VT(0.05, 0.05, 0.05))
815
		
816
for _, c in pairs(Weapon:GetDescendants()) do
817
	if c.ClassName == "Part" and c.Name ~= "Eye" and c.Parent ~= Effects and c.Parent.Parent ~= Effects then
818
		c.Material = "Glass"
819
		c.Color = C3(0,0,0)
820
	elseif c.ClassName == "Part" and c.Name == "Eye" then
821
		c.Color = C3(1,0,0)
822
		c.Material = "Neon"
823
	end
824
end
825
826
Weapon.Parent = Character
827
for _, c in pairs(Weapon:GetChildren()) do
828
	if c.ClassName == "Part" then
829
		c.CustomPhysicalProperties = PhysicalProperties.new(0, 0, 0, 0, 0)
830
	end
831
end
832
833
Humanoid.Died:connect(function()
834
	ATTACK = true
835
end)
836
837
function printbye(Name)
838
	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, "}
839
	warn(MESSAGES[MRANDOM(1,#MESSAGES)]..Name..".")	
840
end
841
842
workspace.ChildAdded:connect(function(instance)
843
    for BANISH = 1, #TOBANISH do
844
		if TOBANISH[BANISH] ~= nil then
845
			if instance.Name == TOBANISH[BANISH] then
846
				coroutine.resume(coroutine.create(function()
847
					printbye(instance.Name)
848
					instance:ClearAllChildren()
849
					Debris:AddItem(instance,0.0005)
850
				end))
851
			end
852
		end
853
	end
854
end)
855
856
--//=================================\\
857
--||			DAMAGING
858
--\\=================================//
859
860
function BulletDetection(FROM,TO,BRUTAL)
861
	local AIMHIT,AIMPOS,NORMAL = CastProperRay(FROM,TO,2000,Character)
862
	coroutine.resume(coroutine.create(function()
863
		if AIMHIT ~= nil then
864
			if AIMHIT.Parent ~= Character then
865
				if AIMHIT.Parent:FindFirstChildOfClass("Humanoid") or AIMHIT.Parent.Parent:FindFirstChildOfClass("Humanoid") then
866
					if AIMHIT.Parent:FindFirstChildOfClass("Humanoid") then
867
						if BRUTAL == true then
868
							Kill(AIMHIT.Parent)
869
						else
870
							getbloody(AIMHIT,15)
871
							AIMHIT.Parent:BreakJoints()
872
							if AIMHIT.Name == "Head" then
873
								AIMHIT.Name = "HEADSHOT"
874
								AIMHIT:remove()
875
							end
876
						end
877
					else
878
						if BRUTAL == true then
879
							Kill(AIMHIT.Parent.Parent)
880
						else
881
							AIMHIT.Parent.Parent:BreakJoints()
882
						end
883
					end
884
				end
885
			end
886
		end
887
	end))
888
	SpawnTrail(FROM,AIMPOS)
889
	return AIMHIT,AIMPOS,NORMAL
890
end
891
892
function chatfunc(text, waitt)
893
	local chat = coroutine.wrap(function()
894
		if Character:FindFirstChild("TalkingBillBoard") ~= nil then
895
			Character:FindFirstChild("TalkingBillBoard").Parent = nil
896
		end
897
		local naeeym2 = Instance.new("BillboardGui", Character)
898
		naeeym2.Size = UDim2.new(0, 100, 0, 40)
899
		naeeym2.StudsOffset = Vector3.new(0, 2, 0)
900
		naeeym2.Adornee = Character.Head
901
		naeeym2.Name = "TalkingBillBoard"
902
		naeeym2.AlwaysOnTop = true
903
		local tecks2 = Instance.new("TextLabel", naeeym2)
904
		tecks2.BackgroundTransparency = 1
905
		tecks2.BorderSizePixel = 0
906
		tecks2.Text = ""
907
		tecks2.Font = "Cartoon"
908
		tecks2.TextSize = 30
909
		tecks2.TextStrokeTransparency = 1
910
		tecks2.TextColor3 = C3(1,0,0)
911
		tecks2.TextStrokeColor3 = Color3.new(0, 0, 0)
912
		tecks2.Size = UDim2.new(1, 0, 0.5, 0)
913
		for i = 1, string.len(text) do
914
			if naeeym2.Parent ~= nil then
915
				CreateSound("418252437", Effects, 1, MRANDOM(9, 11) / 10)
916
			end
917
			tecks2.Text = string.sub(text, 1, i)
918
			Swait(3)
919
		end
920
		wait(waitt / 10)
921
		coroutine.resume(coroutine.create(function()
922
			for i = 1, 10 do
923
				tecks2.TextTransparency = tecks2.TextTransparency + 0.1
924
				Swait()
925
			end
926
			naeeym2:Destroy()
927
		end))
928
	end)
929
	chat()
930
end
931
932
function KillChildren(v)
933
	v:BreakJoints()
934
	for _, c in pairs(v:GetChildren()) do
935
		if c.ClassName == "Part" or c.ClassName == "MesPart" then
936
			if c.Transparency < 1 then
937
				if c:FindFirstChildOfClass("Decal") then
938
					c:FindFirstChildOfClass("Decal"):remove()
939
				end
940
				particles(c)
941
				c.PE.Enabled = true
942
				c.Parent = Effects
943
				c.CanCollide = false
944
				c.Material = "Neon"
945
				c.Color = C3(1,0,0)
946
				c.Transparency = 0.5
947
				local grav = Instance.new("BodyPosition",c)
948
				grav.P = 20000
949
				grav.maxForce = Vector3.new(math.huge,math.huge,math.huge)
950
				grav.position = c.Position + VT(MRANDOM(-5,5),MRANDOM(-5,5),MRANDOM(-5,5))
951
				grav.Name = "GravityForce"
952
				coroutine.resume(coroutine.create(function()
953
				for i = 1, 50 do
954
					Swait()
955
					c.Transparency = c.Transparency + 0.01
956
				end
957
				c.PE.Enabled = false
958
				Debris:AddItem(c,2)
959
				end))
960
			end
961
		end
962
	end
963
end
964
965
local PE=Instance.new("ParticleEmitter",art)
966
PE.LightEmission=.8
967
PE.Color = ColorSequence.new(BRICKC("Really red").Color)
968
PE.Lifetime=NumberRange.new(0.35,1.5)
969
PE.Rotation=NumberRange.new(0,360)
970
PE.Rate=999
971
PE.VelocitySpread = 10000
972
PE.Acceleration = Vector3.new(0,0,0)
973
PE.Drag = 5
974
PE.Speed = NumberRange.new(0,0,0)
975
PE.Texture="http://www.roblox.com/asset/?id=833874434"
976
PE.ZOffset = -1.5
977
PE.Name = "PE"
978
PE.Enabled = false
979
980
981
function particles(art)
982
	local PARTICLES = PE:Clone()
983
	PARTICLES.Parent = art
984
end
985
986
function killnearest(position,range)
987
	for i,v in ipairs(workspace:GetChildren()) do
988
	local body = v:GetChildren()
989
		for part = 1, #body do
990
			if((body[part].ClassName == "Part" or body[part].ClassName == "MeshPart") and v ~= Character) then
991
				if(body[part].Position - position).Magnitude < range then
992
					if v.ClassName == "Model" then
993
						KillChildren(v)
994
					end
995
				end
996
			end
997
		end
998
	end
999
end
1000
1001
function Kill(Char)
1002
	local NewCharacter = IT("Model",Effects)
1003
	NewCharacter.Name = "Ow im ded ;-;"
1004
	for _, c in pairs(Char:GetDescendants()) do
1005
		if c:IsA("BasePart") and c.Transparency == 0 then
1006
			if c.Parent == Char then
1007
			end
1008
			c:BreakJoints()
1009
			c.Material = "Neon"
1010
			c.Color = C3(1,1,1)
1011
			c.CanCollide = true
1012
			c.Transparency = 0.3
1013
			if c:FindFirstChildOfClass("SpecialMesh") then
1014
				c:FindFirstChildOfClass("SpecialMesh").TextureId = ""
1015
			end
1016
			if c.Name == "Head" then
1017
				c:ClearAllChildren()
1018
				c.Size = VT(c.Size.Y,c.Size.Y,c.Size.Y)
1019
			end
1020
			if c.ClassName == "MeshPart" then
1021
				c.TextureID = ""
1022
			end
1023
			if c:FindFirstChildOfClass("BodyPosition") then
1024
				c:FindFirstChildOfClass("BodyPosition"):remove()
1025
			end
1026
			if c:FindFirstChildOfClass("ParticleEmitter") then
1027
				c:FindFirstChildOfClass("ParticleEmitter"):remove()
1028
			end
1029
			c.Parent = NewCharacter
1030
			c.Name = "DeadPart"
1031
			c.Velocity = VT(MRANDOM(-45,45),MRANDOM(-45,45),MRANDOM(-45,45))/15
1032
			c.RotVelocity = VT(MRANDOM(-45,45),MRANDOM(-15,85),MRANDOM(-45,45))
1033
		end
1034
	end
1035
	Char:remove()
1036
	Debris:AddItem(NewCharacter,5)
1037
end
1038
1039
1040
function Banish(Foe)
1041
	if Foe then
1042
		coroutine.resume(coroutine.create(function()
1043
			--if game.Players:FindFirstChild(Foe.Name) then
1044
				table.insert(TOBANISH,Foe.Name)
1045
				printbye(Foe.Name)
1046
			--end
1047
			Foe.Archivable = true
1048
			local CLONE = Foe:Clone()
1049
			Foe:Destroy()
1050
			CLONE.Parent = Effects
1051
			CLONE:BreakJoints()
1052
			local MATERIALS = {"Glass","Neon"}
1053
			for _, c in pairs(CLONE:GetDescendants()) do
1054
				if c:IsA("BasePart") then
1055
					if c.Name == "Torso" or c.Name == "UpperTorso" or c == CLONE.PrimaryPart then
1056
 						CreateSound(340722848, c, 10, 1, false)
1057
					end
1058
					c.Anchored = true
1059
					c.Transparency = c.Transparency + 0.2
1060
					c.Material = MATERIALS[MRANDOM(1,2)]
1061
					c.Color = C3(1,0,0)
1062
					if c.ClassName == "MeshPart" then
1063
						c.TextureID = ""
1064
					end
1065
					if c:FindFirstChildOfClass("SpecialMesh") then
1066
						c:FindFirstChildOfClass("SpecialMesh").TextureId = "2476057140"
1067
					end
1068
					if c:FindFirstChildOfClass("Decal") then
1069
						c:FindFirstChildOfClass("Decal"):remove()
1070
					end
1071
					c.Name = "Banished"
1072
					c.CanCollide = false
1073
				else
1074
					c:remove()
1075
				end
1076
			end
1077
			local A = false
1078
			for i = 1, 35 do
1079
				if A == false then
1080
					A = true
1081
				elseif A == true then
1082
					A = false
1083
				end
1084
				for _, c in pairs(CLONE:GetDescendants()) do
1085
					if c:IsA("BasePart") then
1086
						c.Anchored = true
1087
						c.Material = MATERIALS[MRANDOM(1,2)]
1088
						c.Transparency = c.Transparency + 0.8/35
1089
						if A == false then
1090
							c.CFrame = c.CFrame*CF(MRANDOM(-1,1)/45,MRANDOM(-1,1)/45,MRANDOM(-1,1)/45)
1091
						elseif A == true then
1092
							c.CFrame = c.CFrame*CF(MRANDOM(-1,1)/45,MRANDOM(-1,1)/45,MRANDOM(-1,1)/45)						
1093
						end
1094
					end
1095
				end
1096
				Swait()
1097
			end
1098
			CLONE:remove()
1099
		end))
1100
	end
1101
end
1102
1103
function ApplyAoE(POSITION,RANGE,ISBANISH)
1104
	local CHILDREN = workspace:GetDescendants()
1105
	for index, CHILD in pairs(CHILDREN) do
1106
		if CHILD.ClassName == "Model" and CHILD ~= Character then
1107
			local HUM = CHILD:FindFirstChildOfClass("Humanoid")
1108
			if HUM then
1109
				local TORSO = CHILD:FindFirstChild("Torso") or CHILD:FindFirstChild("UpperTorso")
1110
				if TORSO then
1111
					if (TORSO.Position - POSITION).Magnitude <= RANGE then
1112
						if ISBANISH == true then
1113
							Banish(CHILD)
1114
						else
1115
							if ISBANISH == "Gravity" then
1116
								HUM.PlatformStand = true
1117
								if TORSO:FindFirstChild("V3BanishForce"..Player.Name) then
1118
									local grav = Instance.new("BodyPosition",TORSO)
1119
									grav.D = 15
1120
									grav.P = 20000
1121
									grav.maxForce = Vector3.new(math.huge,math.huge,math.huge)
1122
									grav.position = TORSO.Position
1123
									grav.Name = "V3BanishForce"..Player.Name
1124
								else
1125
									TORSO:FindFirstChild("V3BanishForce"..Player.Name).position = TORSO.Position+VT(0,0,0)
1126
									TORSO.RotVelocity = VT(MRANDOM(-1,1),MRANDOM(-1,1),MRANDOM(-1,1))
1127
								end
1128
							else
1129
								HUM.PlatformStand = false
1130
							end
1131
						end
1132
					elseif ISBANISH == "Gravity" then
1133
						if TORSO:FindFirstChild("V3BanishForce"..Player.Name) then
1134
							TORSO:FindFirstChild("V3BanishForce"..Player.Name):remove()
1135
							HUM.PlatformStand = false
1136
						end
1137
					end
1138
				end
1139
			end
1140
		end
1141
	end
1142
end
1143
1144
--//=================================\\
1145
--||	ATTACK FUNCTIONS AND STUFF
1146
--\\=================================//
1147
1148
1149
function Intro()
1150
	ATTACK = true
1151
	Rooted = true
1152
		for i = 0, 0.5, 0.1 / Animation_Speed do
1153
		Swait()
1154
		RootJoint.C0 = Clerp(RootJoint.C0,ROOTC0 * CF(0, 0, 0 + 0.05 * COS(SINE / 12)) * ANGLES(RAD(0), RAD(0), RAD(0)), 4 / Animation_Speed)
1155
		Neck.C0 = Clerp(Neck.C0, NECKC0 * CF(0, 0, 0 + ((1) - 1)) * ANGLES(RAD(0 - 2.5 * SIN(SINE / 12)), RAD(0), RAD(0)), 4 / Animation_Speed)
1156
		RightShoulder.C0 = Clerp(RightShoulder.C0, CF(1.5, 0.5, 0) * ANGLES(RAD(0), RAD(0), RAD(12)) * RIGHTSHOULDERC0, 4 / Animation_Speed)
1157
		LeftShoulder.C0 = Clerp(LeftShoulder.C0, CF(-1.5, 0.5, 0) * ANGLES(RAD(0), RAD(0), RAD(-12)) * LEFTSHOULDERC0, 4 / Animation_Speed)
1158
		RightHip.C0 = Clerp(RightHip.C0, CF(1, -1 - 0.05 * COS(SINE / 12), -0.01) * ANGLES(RAD(0), RAD(90), RAD(0)) * ANGLES(RAD(-8), RAD(0), RAD(0)), 4 / Animation_Speed)
1159
		LeftHip.C0 = Clerp(LeftHip.C0, CF(-1, -1 - 0.05 * COS(SINE / 12), -0.01) * ANGLES(RAD(0), RAD(-90), RAD(0)) * ANGLES(RAD(-8), RAD(0), RAD(0)), 4 / Animation_Speed)
1160
		end
1161
		for i = 0, 0.5, 0.1 / Animation_Speed do
1162
		Swait()
1163
		RootJoint.C0 = Clerp(RootJoint.C0,ROOTC0 * CF(0, 0, 0 + 0.05 * COS(SINE / 12)) * ANGLES(RAD(0), RAD(0), RAD(0)), 4 / Animation_Speed)
1164
		Neck.C0 = Clerp(Neck.C0, NECKC0 * CF(0, 0, 0 + ((1) - 1)) * ANGLES(RAD(0 - 2.5 * SIN(SINE / 12)), RAD(0), RAD(0)), 4 / Animation_Speed)
1165
		RightShoulder.C0 = Clerp(RightShoulder.C0, CF(1.5, 0.5, 0) * ANGLES(RAD(0), RAD(0), RAD(30)) * RIGHTSHOULDERC0, 4 / Animation_Speed)
1166
		LeftShoulder.C0 = Clerp(LeftShoulder.C0, CF(-1.5, 0.5, 0) * ANGLES(RAD(0), RAD(0), RAD(-30)) * LEFTSHOULDERC0, 4 / Animation_Speed)
1167
		RightHip.C0 = Clerp(RightHip.C0, CF(1, -1 - 0.05 * COS(SINE / 12), -0.01) * ANGLES(RAD(0), RAD(90), RAD(0)) * ANGLES(RAD(-8), RAD(0), RAD(0)), 4 / Animation_Speed)
1168
		LeftHip.C0 = Clerp(LeftHip.C0, CF(-1, -1 - 0.05 * COS(SINE / 12), -0.01) * ANGLES(RAD(0), RAD(-90), RAD(0)) * ANGLES(RAD(-8), RAD(0), RAD(0)), 4 / Animation_Speed)
1169
		end
1170
		for i = 0, 0.5, 0.1 / Animation_Speed do
1171
		Swait()
1172
		RootJoint.C0 = Clerp(RootJoint.C0,ROOTC0 * CF(0, 0, 0 + 0.05 * COS(SINE / 12)) * ANGLES(RAD(0), RAD(0), RAD(0)), 4 / Animation_Speed)
1173
		Neck.C0 = Clerp(Neck.C0, NECKC0 * CF(0, 0, 0 + ((1) - 1)) * ANGLES(RAD(0 - 2.5 * SIN(SINE / 12)), RAD(0), RAD(0)), 4 / Animation_Speed)
1174
		RightShoulder.C0 = Clerp(RightShoulder.C0, CF(1.5, 0.5, 0) * ANGLES(RAD(0), RAD(0), RAD(50)) * RIGHTSHOULDERC0, 4 / Animation_Speed)
1175
		LeftShoulder.C0 = Clerp(LeftShoulder.C0, CF(-1.5, 0.5, 0) * ANGLES(RAD(0), RAD(0), RAD(-50)) * LEFTSHOULDERC0, 4 / Animation_Speed)
1176
		RightHip.C0 = Clerp(RightHip.C0, CF(1, -1 - 0.05 * COS(SINE / 12), -0.01) * ANGLES(RAD(0), RAD(90), RAD(0)) * ANGLES(RAD(-8), RAD(0), RAD(0)), 4 / Animation_Speed)
1177
		LeftHip.C0 = Clerp(LeftHip.C0, CF(-1, -1 - 0.05 * COS(SINE / 12), -0.01) * ANGLES(RAD(0), RAD(-90), RAD(0)) * ANGLES(RAD(-8), RAD(0), RAD(0)), 4 / Animation_Speed)
1178
		end
1179
		for i = 0, 0.5, 0.1 / Animation_Speed do
1180
		Swait()
1181
		RootJoint.C0 = Clerp(RootJoint.C0,ROOTC0 * CF(0, 0, 0 + 0.05 * COS(SINE / 12)) * ANGLES(RAD(0), RAD(0), RAD(0)), 4 / Animation_Speed)
1182
		Neck.C0 = Clerp(Neck.C0, NECKC0 * CF(0, 0, 0 + ((1) - 1)) * ANGLES(RAD(0 - 2.5 * SIN(SINE / 12)), RAD(0), RAD(0)), 4 / Animation_Speed)
1183
		RightShoulder.C0 = Clerp(RightShoulder.C0, CF(1.5, 0.5, 0) * ANGLES(RAD(0), RAD(0), RAD(70)) * RIGHTSHOULDERC0, 4 / Animation_Speed)
1184
		LeftShoulder.C0 = Clerp(LeftShoulder.C0, CF(-1.5, 0.5, 0) * ANGLES(RAD(0), RAD(0), RAD(-70)) * LEFTSHOULDERC0, 4 / Animation_Speed)
1185
		RightHip.C0 = Clerp(RightHip.C0, CF(1, -1 - 0.05 * COS(SINE / 12), -0.01) * ANGLES(RAD(0), RAD(90), RAD(0)) * ANGLES(RAD(-8), RAD(0), RAD(0)), 4 / Animation_Speed)
1186
		LeftHip.C0 = Clerp(LeftHip.C0, CF(-1, -1 - 0.05 * COS(SINE / 12), -0.01) * ANGLES(RAD(0), RAD(-90), RAD(0)) * ANGLES(RAD(-8), RAD(0), RAD(0)), 4 / Animation_Speed)
1187
		end
1188
		for i = 0, 0.5, 0.1 / Animation_Speed do
1189
		Swait()
1190
		RootJoint.C0 = Clerp(RootJoint.C0,ROOTC0 * CF(0, 0, 0 + 0.05 * COS(SINE / 12)) * ANGLES(RAD(0), RAD(0), RAD(0)), 4 / Animation_Speed)
1191
		Neck.C0 = Clerp(Neck.C0, NECKC0 * CF(0, 0, 0 + ((1) - 1)) * ANGLES(RAD(0 - 2.5 * SIN(SINE / 12)), RAD(0), RAD(0)), 4 / Animation_Speed)
1192
		RightShoulder.C0 = Clerp(RightShoulder.C0, CF(1.5, 0.5, 0) * ANGLES(RAD(0), RAD(0), RAD(90)) * RIGHTSHOULDERC0, 4 / Animation_Speed)
1193
		LeftShoulder.C0 = Clerp(LeftShoulder.C0, CF(-1.5, 0.5, 0) * ANGLES(RAD(0), RAD(0), RAD(-90)) * LEFTSHOULDERC0, 4 / Animation_Speed)
1194
		RightHip.C0 = Clerp(RightHip.C0, CF(1, -1 - 0.05 * COS(SINE / 12), -0.01) * ANGLES(RAD(0), RAD(90), RAD(0)) * ANGLES(RAD(-8), RAD(0), RAD(0)), 4 / Animation_Speed)
1195
		LeftHip.C0 = Clerp(LeftHip.C0, CF(-1, -1 - 0.05 * COS(SINE / 12), -0.01) * ANGLES(RAD(0), RAD(-90), RAD(0)) * ANGLES(RAD(-8), RAD(0), RAD(0)), 4 / Animation_Speed)
1196
		end
1197
		for i = 0, 0.5, 0.1 / Animation_Speed do
1198
		Swait()
1199
		RootJoint.C0 = Clerp(RootJoint.C0,ROOTC0 * CF(0, 0, 0 + 0.05 * COS(SINE / 12)) * ANGLES(RAD(0), RAD(0), RAD(0)), 4 / Animation_Speed)
1200
		Neck.C0 = Clerp(Neck.C0, NECKC0 * CF(0, 0, 0 + ((1) - 1)) * ANGLES(RAD(0 - 2.5 * SIN(SINE / 12)), RAD(0), RAD(0)), 4 / Animation_Speed)
1201
		RightShoulder.C0 = Clerp(RightShoulder.C0, CF(1.5, 0.5, 0) * ANGLES(RAD(90), RAD(0), RAD(0)) * RIGHTSHOULDERC0, 4 / Animation_Speed)
1202
		LeftShoulder.C0 = Clerp(LeftShoulder.C0, CF(-1.5, 0.5, 0) * ANGLES(RAD(90), RAD(0), RAD(0)) * LEFTSHOULDERC0, 4 / Animation_Speed)
1203
		RightHip.C0 = Clerp(RightHip.C0, CF(1, -1 - 0.05 * COS(SINE / 12), -0.01) * ANGLES(RAD(0), RAD(90), RAD(0)) * ANGLES(RAD(-8), RAD(0), RAD(0)), 4 / Animation_Speed)
1204
		LeftHip.C0 = Clerp(LeftHip.C0, CF(-1, -1 - 0.05 * COS(SINE / 12), -0.01) * ANGLES(RAD(0), RAD(-90), RAD(0)) * ANGLES(RAD(-8), RAD(0), RAD(0)), 4 / Animation_Speed)
1205
		end
1206
		local Gun = CreatePart(3, Weapon, "SmoothPlastic", 0, 0, "Really black", "Gun", VT(0, 0, 0), false)
1207
		local HandleMesh = CreateMesh("SpecialMesh", Gun, "FileMesh", "430198390", "430198451", VT(0.02, 0.02, 0.02), VT(0, 0, 0))
1208
		local Weld = CreateWeldOrSnapOrMotor("Weld", Gun, RightArm, Gun, CF(0, -1.7, -0.2) * ANGLES(RAD(0), RAD(90), RAD(-90)), CF(0, 0, 0))
1209
		GunPoint = CreatePart(3, Weapon, "SmoothPlastic", 0, 1, "Really black", "Point blank", VT(0, 0, 0), false)
1210
		local HandleWeld = CreateWeldOrSnapOrMotor("Weld", GunPoint, RightArm, GunPoint, CF(0, -3.1, -0.8) * ANGLES(RAD(0), RAD(0), RAD(135)), CF(0, 0, 0))
1211
		
1212
		MagicSphere(VT(0.1, 0.1, 0.1), 45, GunPoint.CFrame, "Really red", VT(0.1, 0.1, 0.1))
1213
		MagicSphere(VT(0.1, 0.1, 0.1), 45, GunPoint.CFrame, "Really red", VT(0.05, 0.05, 0.05))
1214
	TRANSFORMED = true
1215
	ATTACK = false
1216
	Rooted = false
1217
	end
1218
1219
function BanishingBullet()
1220
	ATTACK = true
1221
	Rooted = false
1222
	repeat
1223
		for i = 0, 0.3, 0.1 / Animation_Speed do
1224
			Swait()
1225
			turnto(Mouse.Hit.p)
1226
		RootJoint.C0 = Clerp(RootJoint.C0,ROOTC0 * CF(0, 0, 0 + 0.05 * COS(SINE / 12)) * ANGLES(RAD(-15 - 3.5 * SIN(SINE / 12)), RAD(0), RAD(0)), 0.6 / Animation_Speed)
1227
			Neck.C0 = Clerp(Neck.C0, NECKC0 * CF(0, 0, 0 - 0.1 * COS(SINE / 12) + ((1) - 1)) * ANGLES(RAD(15 - 2.5 * SIN(SINE / 12)), RAD(0), RAD(0)), 0.6 / Animation_Speed)
1228
		RightShoulder.C0 = Clerp(RightShoulder.C0, CF(1.5, 0.5, 0) * ANGLES(RAD(70 - 3.5 * SIN(SINE / 12)), RAD(0 - 3.5 * SIN(SINE / 12)), RAD(0)) * RIGHTSHOULDERC0, 0.6 / Animation_Speed)
1229
		LeftShoulder.C0 = Clerp(LeftShoulder.C0, CF(-1.5, 0.5, 0) * ANGLES(RAD(-25 - 3.5 * SIN(SINE / 12)), RAD(0 - 3.5 * SIN(SINE / 12)), RAD(0)) * LEFTSHOULDERC0, 0.6 / Animation_Speed)
1230
		RightHip.C0 = Clerp(RightHip.C0, CF(1, -1 - 0.05 * COS(SINE / 12), -0.01) * ANGLES(RAD(-15 - 3.5 * SIN(SINE / 12)), RAD(90), RAD(0)) * ANGLES(RAD(-4), RAD(0), RAD(0)), 0.6 / Animation_Speed)
1231
		LeftHip.C0 = Clerp(LeftHip.C0, CF(-1, -1 - 0.05 * COS(SINE / 12), -0.01) * ANGLES(RAD(-15 - 3.5 * SIN(SINE / 12)), RAD(-90), RAD(0)) * ANGLES(RAD(-4), RAD(0), RAD(0)), 0.6 / Animation_Speed)
1232
		end
1233
		CreateSound("238353911", GunPoint, 10, MRANDOM(9, 11) / 10)
1234
		MagicSphere(VT(0.1, 0.1, 0.1), 45, GunPoint.CFrame, "Really red", VT(0.1, 0.1, 0.1))
1235
		MagicSphere(VT(0.1, 0.1, 0.1), 45, GunPoint.CFrame, "Really red", VT(0.05, 0.05, 0.05))
1236
		local RayHit, Way = CastProperRay(GunPoint.Position, Mouse.Hit.p, 1500, Character)
1237
		local distance = (GunPoint.Position - Way).magnitude
1238
		local HIT,POS = CastProperRay(GunPoint.Position, Mouse.Hit.p, 1000, Character)
1239
		SpawnTrail(GunPoint.Position,POS)
1240
		if HIT ~= nil then
1241
			if HIT.Parent ~= workspace and HIT.Parent.ClassName ~= "Folder" then
1242
				Banish(HIT.Parent)
1243
			end
1244
		end
1245
		for i = 1, 5 do
1246
			local laser = Instance.new("Part", Effects)
1247
			laser.Transparency = 0
1248
			laser.CanCollide = false
1249
			laser.Anchored = true
1250
			laser.Color = C3(1, 0, 0)
1251
			laser.Material = "Neon"
1252
			laser.formFactor = Enum.FormFactor.Custom
1253
			laser.Size = Vector3.new(0.15, 0.15, distance)
1254
			laser.CFrame = CFrame.new(GunPoint.Position, Way) * CFrame.new(0, 0, -distance / 2)
1255
			MagicSphere(VT(0.1, 0.1, 0.1), 45, CF(Way), "Really red", VT(0.05, 0.05, 0.05))
1256
			for i = 1, 5 do
1257
				MagicSphere(VT(0.2, 0.2, 1), 65, CF(CF(Way) * CF(MRANDOM(-1, 1), MRANDOM(-1, 1), MRANDOM(-1, 1)).p, Way), "Really red", VT(0.001, 0.001, 0), 0.5)
1258
			end
1259
			table.insert(Effects2, {
1260
				laser,
1261
				"Disappear",
1262
				0.1,
1263
				1,
1264
				1,
1265
				1,
1266
				2
1267
			})
1268
			if RayHit ~= nil then
1269
				local v = RayHit.Parent
1270
				if v ~= nil and v.ClassName == "Model" then
1271
					CastWarpOutlines(v)
1272
					v.Parent = nil
1273
					if game.Players:FindFirstChild(v.Name) then
1274
						local Value = IT("BoolValue", Delete)
1275
						Value.Name = v.Name
1276
					end
1277
				end
1278
			end
1279
		end
1280
		for i = 0, 0.4, 0.1 / Animation_Speed do
1281
			Swait()
1282
		RootJoint.C0 = Clerp(RootJoint.C0,ROOTC0 * CF(0, 0, 0 + 0.05 * COS(SINE / 12)) * ANGLES(RAD(-15 - 3.5 * SIN(SINE / 12)), RAD(0), RAD(0)), 0.6 / Animation_Speed)
1283
			Neck.C0 = Clerp(Neck.C0, NECKC0 * CF(0, 0, 0 - 0.1 * COS(SINE / 12) + ((1) - 1)) * ANGLES(RAD(15 - 2.5 * SIN(SINE / 12)), RAD(0), RAD(0)), 0.6 / Animation_Speed)
1284
		RightShoulder.C0 = Clerp(RightShoulder.C0, CF(1.5, 0.5, 0.3) * ANGLES(RAD(90 - 3.5 * SIN(SINE / 12)), RAD(0 - 3.5 * SIN(SINE / 12)), RAD(0)) * RIGHTSHOULDERC0, 0.6 / Animation_Speed)
1285
		LeftShoulder.C0 = Clerp(LeftShoulder.C0, CF(-1.5, 0.5, 0) * ANGLES(RAD(-25 - 3.5 * SIN(SINE / 12)), RAD(0 - 3.5 * SIN(SINE / 12)), RAD(0)) * LEFTSHOULDERC0, 0.6 / Animation_Speed)
1286
		RightHip.C0 = Clerp(RightHip.C0, CF(1, -1 - 0.05 * COS(SINE / 12), -0.01) * ANGLES(RAD(-15 - 3.5 * SIN(SINE / 12)), RAD(90), RAD(0)) * ANGLES(RAD(-4), RAD(0), RAD(0)), 0.6 / Animation_Speed)
1287
		LeftHip.C0 = Clerp(LeftHip.C0, CF(-1, -1 - 0.05 * COS(SINE / 12), -0.01) * ANGLES(RAD(-15 - 3.5 * SIN(SINE / 12)), RAD(-90), RAD(0)) * ANGLES(RAD(-4), RAD(0), RAD(0)), 0.6 / Animation_Speed)
1288
		end
1289
	until KEYHOLD == false
1290
	ATTACK = false
1291
	Rooted = false
1292
end
1293
1294
1295
function AttackTemplate()
1296
	ATTACK = true
1297
	Rooted = false
1298
	for i=0, 1, 0.1 / Animation_Speed do
1299
		Swait()
1300
		RootJoint.C0 = Clerp(RootJoint.C0,ROOTC0 * CF(0, 0, 0 + 0.05 * COS(SINE / 12)) * ANGLES(RAD(0), RAD(0), RAD(0)), 0.15 / Animation_Speed)
1301
		Neck.C0 = Clerp(Neck.C0, NECKC0 * CF(0, 0, 0 + ((1) - 1)) * ANGLES(RAD(0 - 2.5 * SIN(SINE / 12)), RAD(0), RAD(0)), 0.15 / Animation_Speed)
1302
		RightShoulder.C0 = Clerp(RightShoulder.C0, CF(1.5, 0.5, 0) * ANGLES(RAD(0), RAD(0), RAD(12)) * RIGHTSHOULDERC0, 0.15 / Animation_Speed)
1303
		LeftShoulder.C0 = Clerp(LeftShoulder.C0, CF(-1.5, 0.5, 0) * ANGLES(RAD(0), RAD(0), RAD(-12)) * LEFTSHOULDERC0, 0.15 / Animation_Speed)
1304
		RightHip.C0 = Clerp(RightHip.C0, CF(1, -1 - 0.05 * COS(SINE / 12), -0.01) * ANGLES(RAD(0), RAD(90), RAD(0)) * ANGLES(RAD(-8), RAD(0), RAD(0)), 0.15 / Animation_Speed)
1305
		LeftHip.C0 = Clerp(LeftHip.C0, CF(-1, -1 - 0.05 * COS(SINE / 12), -0.01) * ANGLES(RAD(0), RAD(-90), RAD(0)) * ANGLES(RAD(-8), RAD(0), RAD(0)), 0.15 / Animation_Speed)
1306
	end
1307
	ATTACK = false
1308
	Rooted = false
1309
end
1310
1311
function Taunt2()
1312
	ATTACK = true
1313
	Rooted = false
1314
		for i=0, 2, 0.1 / Animation_Speed do
1315
		Swait()
1316
		RootJoint.C0 = Clerp(RootJoint.C0,ROOTC0 * CF(0, 0, 0 + 0.05 * COS(SINE / 12)) * ANGLES(RAD(0), RAD(0), RAD(0)), 1 / Animation_Speed)
1317
		Neck.C0 = Clerp(Neck.C0, NECKC0 * CF(0, 0, 0 + ((1) - 1)) * ANGLES(RAD(45), RAD(0), RAD(0)), 1 / Animation_Speed)
1318
		RightShoulder.C0 = Clerp(RightShoulder.C0, CF(1.5, 0.5, 0) * ANGLES(RAD(0), RAD(0), RAD(0)) * RIGHTSHOULDERC0, 1 / Animation_Speed)
1319
		LeftShoulder.C0 = Clerp(LeftShoulder.C0, CF(-1.5, 0.5, 0) * ANGLES(RAD(0), RAD(0), RAD(0)) * LEFTSHOULDERC0, 1 / Animation_Speed)
1320
		RightHip.C0 = Clerp(RightHip.C0, CF(1, -1 - 0.05 * COS(SINE / 12), -0.01) * ANGLES(RAD(0), RAD(90), RAD(0)) * ANGLES(RAD(-8), RAD(0), RAD(0)), 1 / Animation_Speed)
1321
		LeftHip.C0 = Clerp(LeftHip.C0, CF(-1, -1 - 0.05 * COS(SINE / 12), -0.01) * ANGLES(RAD(0), RAD(-90), RAD(0)) * ANGLES(RAD(-8), RAD(0), RAD(0)), 1 / Animation_Speed)
1322
		end
1323
	   CreateSound(300208779, Head, 5, 1, false)
1324
		for i=0, 4, 0.1 / Animation_Speed do
1325
		Swait()
1326
		Neck.C0 = Clerp(Neck.C0, NECKC0 * CF(0, 0, 0 - 0.1 * COS(SINE / 3) + ((1) - 1)) * ANGLES(RAD(-45 - 2.5 * SIN(SINE / 12)), RAD(7 * COS(SINE / 24)), RAD(0)), 0.5 / Animation_Speed)
1327
		RightShoulder.C0 = Clerp(RightShoulder.C0, CF(1.5, 0.5, - 0.1 * COS(SINE / 3)) * ANGLES(RAD(-21), RAD(0), RAD(0)) * RIGHTSHOULDERC0, 1 / Animation_Speed)
1328
		LeftShoulder.C0 = Clerp(LeftShoulder.C0, CF(-1.5, 0.5, - 0.1 * COS(SINE / 3)) * ANGLES(RAD(-21), RAD(0), RAD(0)) * LEFTSHOULDERC0, 1 / Animation_Speed)
1329
		RootJoint.C0 = Clerp(RootJoint.C0,ROOTC0 * CF(0, 0, -0.2 + 0.05 * COS(SINE / 4)) * ANGLES(RAD(-32), RAD(0), RAD(0)), 1 / Animation_Speed)
1330
		RightHip.C0 = Clerp(RightHip.C0, CF(1, -1 - 0.05 * COS(SINE / 4), -0.01) * ANGLES(RAD(-32), RAD(80), RAD(0)) * ANGLES(RAD(-8), RAD(0), RAD(0)), 1 / Animation_Speed)
1331
		LeftHip.C0 = Clerp(LeftHip.C0, CF(-1, -1 - 0.05 * COS(SINE / 4), -0.01) * ANGLES(RAD(-32), RAD(-80), RAD(0)) * ANGLES(RAD(-8), RAD(0), RAD(0)), 1 / Animation_Speed)
1332
		end
1333
			WACKYEFFECT({Time = 180, EffectType = "Block", Size = VT(4,4,4), Size2 = VT(0,0,0), Transparency = 0.7, Transparency2 = 1, CFrame = RootPart.CFrame*CF(0,3,0) * ANGLES(RAD(0), RAD(0), RAD(0)), MoveToPos = nil, RotationX = 0, RotationY = 0, RotationZ = 0, Material = "Neon", Color = C3(MRANDOM(25,255)/255,0,0), SoundID = nil, SoundPitch = nil, SoundVolume = nil})
1334
		WACKYEFFECT({Time = 180, EffectType = "Block", Size = VT(4,4,4), Size2 = VT(0,0,0), Transparency = 0.7, Transparency2 = 1, CFrame = RootPart.CFrame*CF(1.2,3,0) * ANGLES(RAD(0), RAD(0), RAD(0)), MoveToPos = nil, RotationX = 0, RotationY = 0, RotationZ = 0, Material = "Neon", Color = C3(MRANDOM(25,255)/255,0,0), SoundID = nil, SoundPitch = nil, SoundVolume = nil})
1335
				WACKYEFFECT({Time = 180, EffectType = "Block", Size = VT(4,4,4), Size2 = VT(0,0,0), Transparency = 0.7, Transparency2 = 1, CFrame = RootPart.CFrame*CF(-1.2,3,0) * ANGLES(RAD(0), RAD(0), RAD(0)), MoveToPos = nil, RotationX = 0, RotationY = 0, RotationZ = 0, Material = "Neon", Color = C3(MRANDOM(25,255)/255,0,0), SoundID = nil, SoundPitch = nil, SoundVolume = nil})
1336
		for i=0, 4, 0.1 / Animation_Speed do
1337
		Swait()
1338
		Neck.C0 = Clerp(Neck.C0, NECKC0 * CF(0, 0, 0 + ((1) - 1)) * ANGLES(RAD(45), RAD(0), RAD(0)), 0.5 / Animation_Speed)
1339
		RightShoulder.C0 = Clerp(RightShoulder.C0, CF(1.5, 0.5, 0.1) * ANGLES(RAD(-21), RAD(0), RAD(0)) * RIGHTSHOULDERC0, 1 / Animation_Speed)
1340
		LeftShoulder.C0 = Clerp(LeftShoulder.C0, CF(-1.5, 0.5, 0.1) * ANGLES(RAD(-21), RAD(0), RAD(0)) * LEFTSHOULDERC0, 1 / Animation_Speed)
1341
		RootJoint.C0 = Clerp(RootJoint.C0,ROOTC0 * CF(0, 0, -0.2) * ANGLES(RAD(-32), RAD(0), RAD(0)), 1 / Animation_Speed)
1342
		RightHip.C0 = Clerp(RightHip.C0, CF(1, -1, 0.01) * ANGLES(RAD(-32), RAD(80), RAD(0)) * ANGLES(RAD(-8), RAD(0), RAD(0)), 1 / Animation_Speed)
1343
		LeftHip.C0 = Clerp(LeftHip.C0, CF(-1, -1, -0.01) * ANGLES(RAD(-32), RAD(-80), RAD(0)) * ANGLES(RAD(-8), RAD(0), RAD(0)), 1 / Animation_Speed)
1344
		end
1345
				killnearest(RootPart.Position, 55, 55)
1346
		WACKYEFFECT({Time = 80, EffectType = "Sphere", Size = VT(0,0,0), Size2 = VT(150,1,150), Transparency = 0.5, Transparency2 = 1, CFrame = RootPart.CFrame*CF(0,0,-5), MoveToPos = nil, RotationX = 0, RotationY = 0, RotationZ = 0, Material = "Neon", Color = C3(1,0,0), SoundID = "444667859" , SoundPitch = 1.2, SoundVolume = 4})
1347
		WACKYEFFECT({Time = 80, EffectType = "Wave", Size = VT(0,0,0), Size2 = VT(150,150,150), Transparency = 0.5, Transparency2 = 1, CFrame = RootPart.CFrame*CF(0,0,1), MoveToPos = nil, RotationX = 0, RotationY = 0, RotationZ = 0, Material = "Neon", Color = C3(1,0,0), SoundID = "444667859" , SoundPitch = 1.2, SoundVolume = 4})
1348
	ATTACK = false
1349
	Rooted = false
1350
	end
1351
1352
function Taunt()
1353
	ATTACK = true
1354
	Rooted = false
1355
		for i=0, 2, 0.1 / Animation_Speed do
1356
		Swait()
1357
		RootJoint.C0 = Clerp(RootJoint.C0,ROOTC0 * CF(0, 0, 0 + 0.05 * COS(SINE / 12)) * ANGLES(RAD(0), RAD(0), RAD(0)), 1 / Animation_Speed)
1358
		Neck.C0 = Clerp(Neck.C0, NECKC0 * CF(0, 0, 0 + ((1) - 1)) * ANGLES(RAD(45), RAD(0), RAD(0)), 1 / Animation_Speed)
1359
		RightShoulder.C0 = Clerp(RightShoulder.C0, CF(1.5, 0.5, 0) * ANGLES(RAD(0), RAD(0), RAD(0)) * RIGHTSHOULDERC0, 1 / Animation_Speed)
1360
		LeftShoulder.C0 = Clerp(LeftShoulder.C0, CF(-1.5, 0.5, 0) * ANGLES(RAD(0), RAD(0), RAD(0)) * LEFTSHOULDERC0, 1 / Animation_Speed)
1361
		RightHip.C0 = Clerp(RightHip.C0, CF(1, -1 - 0.05 * COS(SINE / 12), -0.01) * ANGLES(RAD(0), RAD(90), RAD(0)) * ANGLES(RAD(-8), RAD(0), RAD(0)), 1 / Animation_Speed)
1362
		LeftHip.C0 = Clerp(LeftHip.C0, CF(-1, -1 - 0.05 * COS(SINE / 12), -0.01) * ANGLES(RAD(0), RAD(-90), RAD(0)) * ANGLES(RAD(-8), RAD(0), RAD(0)), 1 / Animation_Speed)
1363
		end
1364
	   CreateSound(300208779, Head, 5, 1, false)
1365
		for i=0, 4, 0.1 / Animation_Speed do
1366
		Swait()
1367
		Neck.C0 = Clerp(Neck.C0, NECKC0 * CF(0, 0, 0 - 0.1 * COS(SINE / 3) + ((1) - 1)) * ANGLES(RAD(-45 - 2.5 * SIN(SINE / 12)), RAD(7 * COS(SINE / 24)), RAD(0)), 0.5 / Animation_Speed)
1368
		RightShoulder.C0 = Clerp(RightShoulder.C0, CF(1.5, 0.5, - 0.1 * COS(SINE / 3)) * ANGLES(RAD(-21), RAD(0), RAD(0)) * RIGHTSHOULDERC0, 1 / Animation_Speed)
1369
		LeftShoulder.C0 = Clerp(LeftShoulder.C0, CF(-1.5, 0.5, - 0.1 * COS(SINE / 3)) * ANGLES(RAD(-21), RAD(0), RAD(0)) * LEFTSHOULDERC0, 1 / Animation_Speed)
1370
		RootJoint.C0 = Clerp(RootJoint.C0,ROOTC0 * CF(0, 0, -0.2 + 0.05 * COS(SINE / 4)) * ANGLES(RAD(-32), RAD(0), RAD(0)), 1 / Animation_Speed)
1371
		RightHip.C0 = Clerp(RightHip.C0, CF(1, -1 - 0.05 * COS(SINE / 4), -0.01) * ANGLES(RAD(-32), RAD(80), RAD(0)) * ANGLES(RAD(-8), RAD(0), RAD(0)), 1 / Animation_Speed)
1372
		LeftHip.C0 = Clerp(LeftHip.C0, CF(-1, -1 - 0.05 * COS(SINE / 4), -0.01) * ANGLES(RAD(-32), RAD(-80), RAD(0)) * ANGLES(RAD(-8), RAD(0), RAD(0)), 1 / Animation_Speed)
1373
		end
1374
	ATTACK = false
1375
	Rooted = false
1376
	end
1377
1378
function BanishingRampage()
1379
	ATTACK = true
1380
	Rooted = false
1381
	chatfunc("BE GONE...", 3)
1382
	for i = 0, 2, 0.1 / Animation_Speed do
1383
		Swait()
1384
		turnto(Mouse.Hit.p)
1385
						MagicBlock(0.1,58,GunPoint.CFrame*CF(MRANDOM(-20,20)/100,0,MRANDOM(-20,20)/100),"Really red",VT(0.1,0.3,0.1))
1386
			RootJoint.C0 = Clerp(RootJoint.C0,ROOTC0 * CF(0, 0, 0 + 0.05 * COS(SINE / 12)) * ANGLES(RAD(-25), RAD(0), RAD(-15)), 0.5 / Animation_Speed)
1387
			Neck.C0 = Clerp(Neck.C0, NECKC0 * CF(0, 0, 0 + ((1) - 1)) * ANGLES(RAD(0 - 2.5 * SIN(SINE / 12)), RAD(0), RAD(0)), 0.5 / Animation_Speed)
1388
			RightShoulder.C0 = Clerp(RightShoulder.C0, CF(1.5, 0.5, 0.3) * ANGLES(RAD(90), RAD(0), RAD(32)) * RIGHTSHOULDERC0, 0.5 / Animation_Speed)
1389
			LeftShoulder.C0 = Clerp(LeftShoulder.C0, CF(-1.5, 0.5, 0) * ANGLES(RAD(0), RAD(45), RAD(-12)) * ANGLES(RAD(-25), RAD(0), RAD(0)) * LEFTSHOULDERC0, 0.5 / Animation_Speed)
1390
			RightHip.C0 = Clerp(RightHip.C0, CF(1, -1 - 0.05 * COS(SINE / 12), -0.01) * ANGLES(RAD(0), RAD(90), RAD(0)) * ANGLES(RAD(-8), RAD(0), RAD(-35)), 0.5 / Animation_Speed)
1391
			LeftHip.C0 = Clerp(LeftHip.C0, CF(-1, -1 - 0.05 * COS(SINE / 12), -0.01) * ANGLES(RAD(0), RAD(-75), RAD(0)) * ANGLES(RAD(-8), RAD(0), RAD(5)), 0.5 / Animation_Speed)
1392
	end
1393
	local HITFLOOR = Raycast(RootPart.Position, CF(RootPart.Position, RootPart.Position + VT(0, -1, 0)).lookVector, 4 * Player_Size, Character)
1394
	repeat
1395
		Swait()
1396
		HITFLOOR = Raycast(RootPart.Position, CF(RootPart.Position, RootPart.Position + VT(0, -1, 0)).lookVector, 4 * Player_Size, Character)
1397
	until HITFLOOR ~= nil
1398
	CreateSound("238353911", GunPoint, 10, MRANDOM(9, 11) / 10)
1399
	local SOUND = CreateSound("415700134", Effects, 10, 1.6)
1400
	CreateSound("138677306", Effects, 7, 1.2)
1401
	coroutine.resume(coroutine.create(function()
1402
		local CFRAME = RootPart.CFrame * CF(0, -1.2, -3)
1403
		local SIZE = 1
1404
		while true do
1405
			Swait()
1406
			for i = 1, 2 do
1407
				MagicSphere(VT(SIZE / 5, SIZE / 5, SIZE * 2), 65, CF(CFRAME * CF(MRANDOM(-5, 5), MRANDOM(-5, 5), MRANDOM(-5, 5)).p, CFRAME.p), "Really red", VT(0.001, 0.001, 0), 0.5)
1408
			end
1409
			do
1410
				local Part = CreatePart(3, Effects, HITFLOOR.Material, 0, 0, HITFLOOR.BrickColor, "Debree", VT(SIZE / 5, SIZE / 5, SIZE / 5))
1411
				Part.CFrame = CFRAME * CF(SIZE / 1.5, -0.7, 0) * ANGLES(RAD(MRANDOM(-180, 180)), RAD(MRANDOM(-180, 180)), RAD(MRANDOM(-180, 180)))
1412
				coroutine.resume(coroutine.create(function()
1413
					Swait(200)
1414
					Part.Anchored = false
1415
				end))
1416
				local Part = CreatePart(3, Effects, HITFLOOR.Material, 0, 0, HITFLOOR.BrickColor, "Debree", VT(SIZE / 5, SIZE / 5, SIZE / 5))
1417
				Part.CFrame = CFRAME * CF(-SIZE / 1.5, -0.7, 0) * ANGLES(RAD(MRANDOM(-180, 180)), RAD(MRANDOM(-180, 180)), RAD(MRANDOM(-180, 180)))
1418
				coroutine.resume(coroutine.create(function()
1419
					Swait(200)
1420
					Part.Anchored = false
1421
				end))
1422
				MagicSphere(VT(SIZE, SIZE, SIZE), 75, CFRAME, "Really red", VT(-SIZE / 75, -SIZE / 75, -SIZE / 75))
1423
				killnearest(CFRAME.p, SIZE, 0)
1424
				SIZE = SIZE + 2
1425
				CFRAME = CFRAME * CF(0, 0, -2)
1426
				if SOUND.Playing == false then
1427
					break
1428
				end
1429
			end
1430
		end
1431
	end))
1432
	MagicSphere(VT(0.1, 0.1, 0.1), 45, GunPoint.CFrame, "Really red", VT(0.1, 0.1, 0.1))
1433
	MagicSphere(VT(0.1, 0.1, 0.1), 45, GunPoint.CFrame, "Really red", VT(0.05, 0.05, 0.05))
1434
	for i = 0, 3, 0.1 / Animation_Speed do
1435
		Swait()
1436
		RootJoint.C0 = Clerp(RootJoint.C0, ROOTC0 * CF(0, 0, -1.5) * ANGLES(RAD(0), RAD(0), RAD(45)), 4 / Animation_Speed)
1437
		Neck.C0 = Clerp(Neck.C0, NECKC0 * CF(0, 0, 0) * ANGLES(RAD(10), RAD(0), RAD(-45)), 4 / Animation_Speed)
1438
		RightShoulder.C0 = Clerp(RightShoulder.C0, CF(1.5, 0.5, -0.3) * ANGLES(RAD(0), RAD(0), RAD(0)) * RIGHTSHOULDERC0, 4 / Animation_Speed)
1439
		LeftShoulder.C0 = Clerp(LeftShoulder.C0, CF(-1.5, 0.5, 0) * ANGLES(RAD(0), RAD(0), RAD(-12)) * LEFTSHOULDERC0, 4 / Animation_Speed)
1440
		RightHip.C0 = Clerp(RightHip.C0, CF(1, 0.5, -0.75) * ANGLES(RAD(0), RAD(90), RAD(0)) * ANGLES(RAD(0), RAD(0), RAD(0)), 4 / Animation_Speed)
1441
		LeftHip.C0 = Clerp(LeftHip.C0, CF(-1, -1, -0.4) * ANGLES(RAD(0), RAD(-90), RAD(0)) * ANGLES(RAD(0), RAD(0), RAD(90)), 4 / Animation_Speed)
1442
	end
1443
	ATTACK = false
1444
	Rooted = false
1445
end
1446
1447
--//=================================\\
1448
--||	  ASSIGN THINGS TO KEYS
1449
--\\=================================//
1450
1451
function MouseDown(Mouse)
1452
	if ATTACK == false then
1453
	end
1454
end
1455
1456
function MouseUp(Mouse)
1457
HOLD = false
1458
end
1459
1460
function KeyDown(Key)
1461
	KEYHOLD = true
1462
	if Key == "z" and ATTACK == false then
1463
		BanishingBullet()
1464
	end
1465
1466
	if Key == "t" and ATTACK == false then
1467
		Taunt()
1468
	end
1469
1470
	if Key == "c" and ATTACK == false then
1471
		BanishingRampage()
1472
	end
1473
1474
	if Key == "x" and ATTACK == false then
1475
		chatfunc("Yea Boi!", 2)
1476
		Delete:ClearAllChildren()
1477
		TOBANISH = {}
1478
	end
1479
1480
	if Key == "x" and ATTACK == false then
1481
		Taunt2()
1482
	end
1483
end
1484
1485
function KeyUp(Key)
1486
	KEYHOLD = false
1487
end
1488
1489
	Mouse.Button1Down:connect(function(NEWKEY)
1490
		MouseDown(NEWKEY)
1491
	end)
1492
	Mouse.Button1Up:connect(function(NEWKEY)
1493
		MouseUp(NEWKEY)
1494
	end)
1495
	Mouse.KeyDown:connect(function(NEWKEY)
1496
		KeyDown(NEWKEY)
1497
	end)
1498
	Mouse.KeyUp:connect(function(NEWKEY)
1499
		KeyUp(NEWKEY)
1500
	end)
1501
1502
--//=================================\\
1503
--\\=================================//
1504
1505
1506
function unanchor()
1507
	if UNANCHOR == true then
1508
		g = Character:GetChildren()
1509
		for i = 1, #g do
1510
			if g[i].ClassName == "Part" then
1511
				g[i].Anchored = false
1512
			end
1513
		end
1514
	end
1515
end
1516
1517
1518
--//=================================\\
1519
--||	WRAP THE WHOLE SCRIPT UP
1520
--\\=================================//
1521
1522
Humanoid.Changed:connect(function(Jump)
1523
	if Jump == "Jump" and (Disable_Jump == true) then
1524
		Humanoid.Jump = false
1525
	end
1526
end)
1527
1528
local CONNECT = nil
1529
1530
while true do
1531
	Swait()
1532
	ANIMATE.Parent = nil
1533
	if Character:FindFirstChildOfClass("Humanoid") == nil then
1534
		Humanoid = IT("Humanoid",Character)
1535
	end
1536
	for _,v in next, Humanoid:GetPlayingAnimationTracks() do
1537
	    v:Stop();
1538
	end
1539
	SINE = SINE + CHANGE
1540
	local TORSOVELOCITY = (RootPart.Velocity * VT(1, 0, 1)).magnitude
1541
	local TORSOVERTICALVELOCITY = RootPart.Velocity.y
1542
	local HITFLOOR = Raycast(RootPart.Position, (CF(RootPart.Position, RootPart.Position + VT(0, -1, 0))).lookVector, 4, Character)
1543
	local WALKSPEEDVALUE = 6 / (Humanoid.WalkSpeed / 16)
1544
	if ANIM == "Walk" and TORSOVELOCITY > 1 then
1545
		RootJoint.C1 = Clerp(RootJoint.C1, ROOTC0 * CF(0, 0, -0.15 * COS(SINE / (WALKSPEEDVALUE / 2)) * Player_Size) * ANGLES(RAD(0), RAD(0) - RootPart.RotVelocity.Y / 75, RAD(0)), 2 * (Humanoid.WalkSpeed / 16) / Animation_Speed)
1546
		Neck.C1 = Clerp(Neck.C1, CF(0 * Player_Size, -0.5 * Player_Size, 0 * Player_Size) * ANGLES(RAD(-90), RAD(0), RAD(180)) * ANGLES(RAD(2.5 * SIN(SINE / (WALKSPEEDVALUE / 2))), RAD(0), RAD(0) - Head.RotVelocity.Y / 30), 0.2 * (Humanoid.WalkSpeed / 16) / Animation_Speed)
1547
		RightHip.C1 = Clerp(RightHip.C1, CF(0.5 * Player_Size, 0.875 * Player_Size - 0.125 * SIN(SINE / WALKSPEEDVALUE) * Player_Size, -0.125 * COS(SINE / WALKSPEEDVALUE) * Player_Size) * ANGLES(RAD(0), RAD(90), RAD(0)) * ANGLES(RAD(0) - RightLeg.RotVelocity.Y / 75, RAD(0), RAD(76 * COS(SINE / WALKSPEEDVALUE))), 0.2 * (Humanoid.WalkSpeed / 16) / Animation_Speed)
1548
		LeftHip.C1 = Clerp(LeftHip.C1, CF(-0.5 * Player_Size, 0.875 * Player_Size + 0.125 * SIN(SINE / WALKSPEEDVALUE) * Player_Size, 0.125 * COS(SINE / WALKSPEEDVALUE) * Player_Size) * ANGLES(RAD(0), RAD(-90), RAD(0)) * ANGLES(RAD(0) + LeftLeg.RotVelocity.Y / 75, RAD(0), RAD(76 * COS(SINE / WALKSPEEDVALUE))), 0.2 * (Humanoid.WalkSpeed / 16) / Animation_Speed)
1549
	elseif (ANIM ~= "Walk") or (TORSOVELOCITY < 1) then
1550
		RootJoint.C1 = Clerp(RootJoint.C1, ROOTC0 * CF(0, 0, 0) * ANGLES(RAD(0), RAD(0), RAD(0)), 0.2 / Animation_Speed)
1551
		Neck.C1 = Clerp(Neck.C1, CF(0 * Player_Size, -0.5 * Player_Size, 0 * Player_Size) * ANGLES(RAD(-90), RAD(0), RAD(180)) * ANGLES(RAD(0), RAD(0), RAD(0)), 0.2 / Animation_Speed)
1552
		RightHip.C1 = Clerp(RightHip.C1, CF(0.5 * Player_Size, 1 * Player_Size, 0 * Player_Size) * ANGLES(RAD(0), RAD(90), RAD(0)) * ANGLES(RAD(0), RAD(0), RAD(0)), 0.2 / Animation_Speed)
1553
		LeftHip.C1 = Clerp(LeftHip.C1, CF(-0.5 * Player_Size, 1 * Player_Size, 0 * Player_Size) * ANGLES(RAD(0), RAD(-90), RAD(0)) * ANGLES(RAD(0), RAD(0), RAD(0)), 0.2 / Animation_Speed)
1554
	end
1555
	if TORSOVERTICALVELOCITY > 1 and HITFLOOR == nil then
1556
		ANIM = "Jump"
1557
		if ATTACK == false then
1558
			RootJoint.C0 = Clerp(RootJoint.C0, ROOTC0 * CF(0, 0, 0) * ANGLES(RAD(0), RAD(0), RAD(0)), 0.2 / Animation_Speed)
1559
			Neck.C0 = Clerp(Neck.C0, NECKC0 * CF(0, 0, 0 + ((1) - 1)) * ANGLES(RAD(-20), RAD(0), RAD(0)), 0.2 / Animation_Speed)
1560
			RightShoulder.C0 = Clerp(RightShoulder.C0, CF(1.5, 0.5, 0) * ANGLES(RAD(45), RAD(0), RAD(25))* RIGHTSHOULDERC0, 0.15 / Animation_Speed)
1561
			LeftShoulder.C0 = Clerp(LeftShoulder.C0, CF(-1.5, 0.5, 0) * ANGLES(RAD(-40), RAD(0), RAD(-20)) * LEFTSHOULDERC0, 0.2 / Animation_Speed)
1562
			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)
1563
			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)
1564
	    end
1565
	elseif TORSOVERTICALVELOCITY < -1 and HITFLOOR == nil then
1566
		ANIM = "Fall"
1567
		if ATTACK == false then
1568
			RootJoint.C0 = Clerp(RootJoint.C0, ROOTC0 * CF(0, 0, 0 ) * ANGLES(RAD(0), RAD(0), RAD(0)), 0.2 / Animation_Speed)
1569
			Neck.C0 = Clerp(Neck.C0, NECKC0 * CF(0, 0 , 0 + ((1) - 1)) * ANGLES(RAD(20), RAD(0), RAD(0)), 0.2 / Animation_Speed)
1570
			RightShoulder.C0 = Clerp(RightShoulder.C0, CF(1.5, 0.5, 0) * ANGLES(RAD(45), RAD(0), RAD(25))* RIGHTSHOULDERC0, 0.15 / Animation_Speed)
1571
			LeftShoulder.C0 = Clerp(LeftShoulder.C0, CF(-1.5, 0.5, 0) * ANGLES(RAD(0), RAD(0), RAD(-60)) * LEFTSHOULDERC0, 0.2 / Animation_Speed)
1572
			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)
1573
			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)
1574
		end
1575
	elseif TORSOVELOCITY < 1 and HITFLOOR ~= nil then
1576
		ANIM = "Idle"
1577
		if ATTACK == false then
1578
		RootJoint.C0 = Clerp(RootJoint.C0,ROOTC0 * CF(0, 0, 0 - 0.15 * COS(SINE / 12)) * ANGLES(RAD(0), RAD(0), RAD(0)), 0.15 / Animation_Speed)
1579
			Neck.C0 = Clerp(Neck.C0, NECKC0 * CF(0, 0, 0 - 0.1 * COS(SINE / 12) + ((1) - 1)) * ANGLES(RAD(15 - 2.5 * SIN(SINE / 12)), RAD(10 * COS(SINE / 12)), RAD(0)), 0.15 / Animation_Speed)
1580
		RightShoulder.C0 = Clerp(RightShoulder.C0, CF(1.2, 0.5 - 0.15 * COS(SINE / 12), -0.4) * ANGLES(RAD(50 - 10.5 * SIN(SINE / 12)), RAD(0 - 3.5 * SIN(SINE / 12)), RAD(-36)) * RIGHTSHOULDERC0, 0.15 / Animation_Speed)
1581
		LeftShoulder.C0 = Clerp(LeftShoulder.C0, CF(-1.5, 0.5 - 0.15 * COS(SINE / 12), 0) * ANGLES(RAD(180 - 3.5 * SIN(SINE / 12)), RAD(0 - 8.5 * SIN(SINE / 12)), RAD(20 + 8.5 * SIN(SINE / 12))) * LEFTSHOULDERC0, 0.15 / Animation_Speed)
1582
		RightHip.C0 = Clerp(RightHip.C0, CF(1, -1 + 0.15 * COS(SINE / 12), -0.01) * ANGLES(RAD(0), RAD(90), RAD(0)) * ANGLES(RAD(-4), RAD(0), RAD(0)), 0.15 / Animation_Speed)
1583
		LeftHip.C0 = Clerp(LeftHip.C0, CF(-1, -1 + 0.15 * COS(SINE / 12), -0.01) * ANGLES(RAD(0), RAD(-90), RAD(0)) * ANGLES(RAD(-4), RAD(0), RAD(0)), 0.15 / Animation_Speed)
1584
		end
1585
	elseif TORSOVELOCITY > 1 and HITFLOOR ~= nil then
1586
		ANIM = "Walk"
1587
		if ATTACK == false then
1588
			RootJoint.C0 = Clerp(RootJoint.C0,ROOTC0 * CF(0, 0, -0.05) * ANGLES(RAD(5), RAD(0), RAD(-15-7 * COS(SINE / (WALKSPEEDVALUE)))), 0.15 / Animation_Speed)
1589
			Neck.C0 = Clerp(Neck.C0, NECKC0 * CF(0, 0, 0 + ((1) - 1)) * ANGLES(RAD(5 - 1 * SIN(SINE / (WALKSPEEDVALUE / 2))), RAD(0), RAD(15+7 * COS(SINE / (WALKSPEEDVALUE)))), 0.15 / Animation_Speed)
1590
		RightShoulder.C0 = Clerp(RightShoulder.C0, CF(1.5, 0.5, 0) * ANGLES(RAD(0 - 3.5 * SIN(SINE / 12)), RAD(0 - 3.5 * SIN(SINE / 12)), RAD(0)) * RIGHTSHOULDERC0, 0.15 / Animation_Speed)
1591
			LeftShoulder.C0 = Clerp(LeftShoulder.C0, CF(-1.5, 0.5, 0) * ANGLES(RAD(3 - 3.5 * SIN(SINE / 12)), RAD(0), RAD(-25 - 6 * SIN(SINE / 12))) * LEFTSHOULDERC0, 0.2 / Animation_Speed)
1592
			RightHip.C0 = Clerp(RightHip.C0, CF(1 , -1 - 0.15 * COS(SINE / WALKSPEEDVALUE*2), -0.2+ 0.2 * COS(SINE / WALKSPEEDVALUE)) * ANGLES(RAD(0), RAD(90), RAD(0)) * ANGLES(RAD(0), RAD(0), RAD(-15)), 2 / Animation_Speed)
1593
			LeftHip.C0 = Clerp(LeftHip.C0, CF(-1, -1 - 0.15 * COS(SINE / WALKSPEEDVALUE*2), -0.2+ -0.2 * COS(SINE / WALKSPEEDVALUE)) * ANGLES(RAD(0), RAD(-90), RAD(0)) * ANGLES(RAD(0), RAD(0), RAD(15)), 2 / Animation_Speed)
1594
		end
1595
	end
1596
	unanchor()
1597
	Humanoid.MaxHealth = "inf"
1598
	Humanoid.Health = "inf"
1599
	if Rooted == false then
1600
		Disable_Jump = false
1601
		Humanoid.WalkSpeed = Speed
1602
	elseif Rooted == true then
1603
		Disable_Jump = true
1604
		Humanoid.WalkSpeed = 0
1605
	end
1606
		if #Effects2 > 0 then
1607
		for e = 1, #Effects2 do
1608
			if Effects2[e] ~= nil then
1609
				local Thing = Effects2[e]
1610
				if Thing ~= nil then
1611
					local Part = Thing[1]
1612
					local Mode = Thing[2]
1613
					local Delay = Thing[3]
1614
					local IncX = Thing[4]
1615
					local IncY = Thing[5]
1616
					local IncZ = Thing[6]
1617
					local Part2 = Thing[8]
1618
					if Thing[1].Transparency <= 1 then
1619
						if Thing[2] == "Block1" then
1620
							Thing[1].CFrame = Thing[1].CFrame
1621
							Mesh = Thing[1].Mesh
1622
							Mesh.Scale = Mesh.Scale + VT(Thing[4], Thing[5], Thing[6])
1623
							Thing[1].Transparency = Thing[1].Transparency + Thing[3]
1624
						elseif Thing[2] == "Cylinder" then
1625
							Mesh = Thing[1].Mesh
1626
							Mesh.Scale = Mesh.Scale + VT(Thing[4], Thing[5], Thing[6])
1627
							Thing[1].Transparency = Thing[1].Transparency + Thing[3]
1628
						elseif Thing[2] == "Blood" then
1629
							Mesh = Thing[7]
1630
							Thing[1].CFrame = Thing[1].CFrame * CF(0, 0.5, 0)
1631
							Mesh.Scale = Mesh.Scale + VT(Thing[4], Thing[5], Thing[6])
1632
							Thing[1].Transparency = Thing[1].Transparency + Thing[3]
1633
						elseif Thing[2] == "Elec" then
1634
							Mesh = Thing[1].Mesh
1635
							Mesh.Scale = Mesh.Scale + VT(Thing[7], Thing[8], Thing[9])
1636
							Thing[1].Transparency = Thing[1].Transparency + Thing[3]
1637
						elseif Thing[2] == "Disappear" then
1638
							Thing[1].Transparency = Thing[1].Transparency + Thing[3]
1639
						end
1640
					else
1641
						Part.Parent = nil
1642
						table.remove(Effects2, e)
1643
					end
1644
				end
1645
			end
1646
		end
1647
		end
1648
			if INTRO == false and INSTANT == false then
1649
		INTRO = true
1650
		coroutine.resume(coroutine.create(function()
1651
			sick:Play()
1652
			Intro()
1653
		end))
1654
	end
1655
	if INSTANT == true then
1656
		if TRANSFORMED == false then
1657
			sick.TimePosition = 119
1658
			sick:Play()
1659
			Gun.Parent = Character
1660
		end
1661
		TRANSFORMED = true
1662
	end
1663
		if VALUE1 == true then
1664
		local RayData = Zap({
1665
			SegmentLength = 0.6,
1666
			Offset = 0.3,
1667
			Size = 0.05,
1668
			MaxRange = 1.5,
1669
			StartPosition = GunPoint.Position,
1670
			TargetPosition = RightArm.Position,
1671
			Character = workspace,
1672
			Color = "Really red",
1673
			Individual = true
1674
		})
1675
		BOLT = RayData.LightningModel
1676
		end
1677
		end
1678
1679
--//=================================\\
1680
--\\=================================//
1681
1682
1683
1684
1685
1686
--//====================================================\\--
1687
--||			  		 END OF SCRIPT
1688
--\\====================================================//--