View difference between Paste ID: 0GQjSkR2 and ruW3RJif
SHOW: | | - or go back to the newest paste.
1
--//==================================================================\\--
2
--||			   CREATED BY SHACKLUSTER | JkbananaPill_H2O
3
--\\==================================================================//--
4
-- This script has been converted to FE by iPxter
5
6
7
if game:GetService("RunService"):IsClient() then error("Script must be server-side in order to work; use h/ and not hl/") end
8
local Player,Mouse,mouse,UserInputService,ContextActionService = owner
9
do
10
	print("FE Compatibility code by Mokiros | Translated to FE by iPxter")
11
	script.Parent = Player.Character
12
13
	--RemoteEvent for communicating
14
	local Event = Instance.new("RemoteEvent")
15
	Event.Name = "UserInput_Event"
16
17
	--Fake event to make stuff like Mouse.KeyDown work
18
	local function fakeEvent()
19
		local t = {_fakeEvent=true,Connect=function(self,f)self.Function=f end}
20
		t.connect = t.Connect
21
		return t
22
	end
23
24
	--Creating fake input objects with fake variables
25
    local m = {Target=nil,Hit=CFrame.new(),KeyUp=fakeEvent(),KeyDown=fakeEvent(),Button1Up=fakeEvent(),Button1Down=fakeEvent()}
26
	local UIS = {InputBegan=fakeEvent(),InputEnded=fakeEvent()}
27
	local CAS = {Actions={},BindAction=function(self,name,fun,touch,...)
28
		CAS.Actions[name] = fun and {Name=name,Function=fun,Keys={...}} or nil
29
	end}
30
	--Merged 2 functions into one by checking amount of arguments
31
	CAS.UnbindAction = CAS.BindAction
32
33
	--This function will trigger the events that have been :Connect()'ed
34
	local function te(self,ev,...)
35
		local t = m[ev]
36
		if t and t._fakeEvent and t.Function then
37
			t.Function(...)
38
		end
39
	end
40
	m.TrigEvent = te
41
	UIS.TrigEvent = te
42
43
	Event.OnServerEvent:Connect(function(plr,io)
44
	    if plr~=Player then return end
45
		if io.isMouse then
46
			m.Target = io.Target
47
			m.Hit = io.Hit
48
		else
49
			local b = io.UserInputState == Enum.UserInputState.Begin
50
			if io.UserInputType == Enum.UserInputType.MouseButton1 then
51
				return m:TrigEvent(b and "Button1Down" or "Button1Up")
52
			end
53
			for _,t in pairs(CAS.Actions) do
54
				for _,k in pairs(t.Keys) do
55
					if k==io.KeyCode then
56
						t.Function(t.Name,io.UserInputState,io)
57
					end
58
				end
59
			end
60
			m:TrigEvent(b and "KeyDown" or "KeyUp",io.KeyCode.Name:lower())
61
			UIS:TrigEvent(b and "InputBegan" or "InputEnded",io,false)
62
	    end
63
	end)
64
	Event.Parent = NLS([==[
65
	local Player = game:GetService("Players").LocalPlayer
66
	local Event = script:WaitForChild("UserInput_Event")
67
68
	local UIS = game:GetService("UserInputService")
69
	local input = function(io,a)
70
		if a then return end
71
		--Since InputObject is a client-side instance, we create and pass table instead
72
		Event:FireServer({KeyCode=io.KeyCode,UserInputType=io.UserInputType,UserInputState=io.UserInputState})
73
	end
74
	UIS.InputBegan:Connect(input)
75
	UIS.InputEnded:Connect(input)
76
77
	local Mouse = Player:GetMouse()
78
	local h,t
79
	--Give the server mouse data 30 times every second, but only if the values changed
80
	--If player is not moving their mouse, client won't fire events
81
	while wait(1/30) do
82
		if h~=Mouse.Hit or t~=Mouse.Target then
83
			h,t=Mouse.Hit,Mouse.Target
84
			Event:FireServer({isMouse=true,Target=t,Hit=h})
85
		end
86
	end]==],Player.Character)
87
	Mouse,mouse,UserInputService,ContextActionService = m,m,UIS,CAS
88
end
89
90
wait(0.2)
91
92
Player = owner
93
PlayerGui = Player.PlayerGui
94
Cam = workspace.CurrentCamera
95
Backpack = Player.Backpack
96
Character = Player.Character
97
Humanoid = Character.Humanoid
98
RootPart = Character["HumanoidRootPart"]
99
Torso = Character["Torso"]
100
Head = Character["Head"]
101
RightArm = Character["Right Arm"]
102
LeftArm = Character["Left Arm"]
103
RightLeg = Character["Right Leg"]
104
LeftLeg = Character["Left Leg"]
105
RootJoint = RootPart["RootJoint"]
106
Neck = Torso["Neck"]
107
RightShoulder = Torso["Right Shoulder"]
108
LeftShoulder = Torso["Left Shoulder"]
109
RightHip = Torso["Right Hip"]
110
LeftHip = Torso["Left Hip"]
111
local sick = Instance.new("Sound",Character)
112
sick.SoundId = "rbxassetid://1479647856"
113
sick.Looped = true
114
sick.Pitch = 1
115
sick.Volume = 1
116
sick:Play()
117
118
IT = Instance.new
119
CF = CFrame.new
120
VT = Vector3.new
121
RAD = math.rad
122
C3 = Color3.new
123
UD2 = UDim2.new
124
BRICKC = BrickColor.new
125
ANGLES = CFrame.Angles
126
EULER = CFrame.fromEulerAnglesXYZ
127
COS = math.cos
128
ACOS = math.acos
129
SIN = math.sin
130
ASIN = math.asin
131
ABS = math.abs
132
MRANDOM = math.random
133
FLOOR = math.floor
134
Class_Name = "₩₳ⱤĐɆ₦.exe"
135
Editor_Name = "JkBananaPill_H2O"
136
137
138
--//=================================\\
139
--|| 	      USEFUL VALUES
140
--\\=================================//
141
142
Animation_Speed = 3
143
Frame_Speed = 1 / 60 -- (1 / 30) OR (1 / 60)
144
local Speed = 15
145
local ROOTC0 = CF(0, 0, 0) * ANGLES(RAD(-90), RAD(0), RAD(180))
146
local NECKC0 = CF(0, 1, 0) * ANGLES(RAD(-90), RAD(0), RAD(180))
147
local RIGHTSHOULDERC0 = CF(-0.5, 0, 0) * ANGLES(RAD(0), RAD(90), RAD(0))
148
local LEFTSHOULDERC0 = CF(0.5, 0, 0) * ANGLES(RAD(0), RAD(-90), RAD(0))
149
local DAMAGEMULTIPLIER = 1
150
local ANIM = "Idle"
151
local ATTACK = false
152
local EQUIPPED = false
153
local HOLD = false
154
local COMBO = 1
155
local Rooted = false
156
local SINE = 0
157
local KEYHOLD = false
158
local CHANGE = 2 / Animation_Speed
159
local WALKINGANIM = false
160
local VALUE1 = false
161
local VALUE2 = false
162
local ROBLOXIDLEANIMATION = IT("Animation")
163
ROBLOXIDLEANIMATION.Name = "Roblox Idle Animation"
164
ROBLOXIDLEANIMATION.AnimationId = "http://www.roblox.com/asset/?id=180435571"
165
--ROBLOXIDLEANIMATION.Parent = Humanoid
166
local WEAPONGUI = IT("ScreenGui", PlayerGui)
167
WEAPONGUI.Name = "Weapon GUI"
168
local Effects = IT("Folder", Character)
169
Effects.Name = "Effects"
170
local ANIMATOR = Humanoid.Animator
171
local ANIMATE = Character.Animate
172
local UNANCHOR = true
173
local PLAYMAINANIM = true
174
local BOLTSOUNDS = {168586621,168586586,178452241}
175
176
--//=================================\\
177
--\\=================================// 
178
local Player = owner
179
function RemoveOutlines(part)
180
	part.TopSurface, part.BottomSurface, part.LeftSurface, part.RightSurface, part.FrontSurface, part.BackSurface = 10, 10, 10, 10, 10, 10
181
end
182
local Create = LoadLibrary("RbxUtility").Create
183
184
CFuncs = {	
185
	["Part"] = {
186
		Create = function(Parent, Material, Reflectance, Transparency, BColor, Name, Size)
187
			local Part = Create("Part"){
188
				Parent = Parent,
189
				Reflectance = Reflectance,
190
				Transparency = Transparency,
191
				CanCollide = false,
192
				Locked = true,
193
				BrickColor = BrickColor.new(tostring(BColor)),
194
				Name = Name,
195
				Size = Size,
196
				Material = Material,
197
			}
198
			RemoveOutlines(Part)
199
			return Part
200
		end;
201
	};
202
	["Sound"] = {
203
		Create = function(id, par, vol, pit) 
204
			coroutine.resume(coroutine.create(function()
205
				local S = Create("Sound"){
206
					Volume = vol,
207
					Pitch = pit or 1,
208
					SoundId = id,
209
					Parent = par or workspace,
210
				}
211
				wait() 
212
				S:play() 
213
				game:GetService("Debris"):AddItem(S, 6)
214
			end))
215
		end;
216
	};
217
}
218
219
local toggleTag = true
220
local txt = Instance.new("BillboardGui", Head)
221
txt.Adornee = nil
222
txt.Name = "NameDetect"
223
txt.Size = UDim2.new(4, 0, 1.2, 0)
224
txt.StudsOffset = Vector3.new(-8, 8/1.5, 0)
225
local text = Instance.new("TextLabel", txt)
226
text.Size = UDim2.new(10/2, 0, 7/2, 0)
227
text.FontSize = "Size8"
228
text.TextScaled = true
229
text.TextTransparency = 0
230
text.BackgroundTransparency = 1 
231
text.TextTransparency = 0
232
text.TextStrokeTransparency = 0
233
text.Font = "Garamond"
234
text.TextStrokeColor3 = Color3.new(0,1,1)
235
text.TextColor3 = Color3.new(0,0,0)
236
text.Text = "The WaRdeN oF ThE bY P @ $ Es"
237
238
local Char = Character
239
240
function RecolorTextAndRename(name,col1,col2)
241
text.TextStrokeColor3 = col2
242
text.TextColor3 = col1
243
text.Text = name
244
end
245
RecolorTextAndRename("The Banisher Of The City",Color3.new(0,0,0),Color3.new(0,0,1))
246
247
function chatfunc(text)
248
local chat = coroutine.wrap(function()
249
if Character:FindFirstChild("TalkingBillBoard")~= nil then
250
Char:FindFirstChild("TalkingBillBoard"):destroy()
251
end
252
local naeeym2 = Instance.new("BillboardGui",Char)
253
naeeym2.Size = UDim2.new(0,100,0,40)
254
naeeym2.StudsOffset = Vector3.new(0,3,0)
255
naeeym2.Adornee = Char.Head
256
naeeym2.Name = "TalkingBillBoard"
257
local tecks2 = Instance.new("TextLabel",naeeym2)
258
tecks2.BackgroundTransparency = 1
259
tecks2.BorderSizePixel = 0
260
tecks2.Text = ""
261
tecks2.Font = "Antique"
262
tecks2.TextSize = 30
263
tecks2.TextStrokeTransparency = 0
264
tecks2.TextColor3 = Color3.new(.6,0,0)
265
tecks2.TextStrokeColor3 = Color3.new(0,0,0)
266
tecks2.Size = UDim2.new(1,0,0.5,0)
267
local tecks3 = Instance.new("TextLabel",naeeym2)
268
tecks3.BackgroundTransparency = 1
269
tecks3.BorderSizePixel = 0
270
tecks3.Text = ""
271
tecks3.Font = "Antique"
272
tecks3.TextSize = 30
273
tecks3.TextStrokeTransparency = 0
274
tecks3.TextColor3 = BrickColor.new("Hot white").Color
275
tecks3.TextStrokeColor3 = Color3.new(0,0,0)
276
tecks3.Size = UDim2.new(1,0,0.5,0)
277
spawn(function()
278
	while wait() do
279
		tecks3.TextColor3 = BrickColor.random().Color
280
		tecks2.TextColor3 = BrickColor.random().Color
281
	end
282
end)
283
for i = 1,string.len(text),1 do
284
CFuncs["Sound"].Create("http://www.roblox.com/asset/?id=1479647856", Char, 1, 1)
285
tecks2.Text = string.sub(text,1,i)
286
tecks3.Text = string.sub(text,1,i)
287
wait(0.01)
288
end
289
wait(2)
290
for i = 1, 50 do
291
Swait()
292
tecks2.Position = tecks2.Position - UDim2.new(math.random(-1,1),math.random(-5,5),.05,math.random(-5,5))
293
tecks2.Rotation = tecks2.Rotation - .8
294
tecks2.TextStrokeTransparency = tecks2.TextStrokeTransparency +.04
295
tecks2.TextTransparency = tecks2.TextTransparency + .04
296
tecks3.Position = tecks2.Position - UDim2.new(math.random(-1,1),math.random(-5,5),.05,math.random(-5,5))
297
tecks3.Rotation = tecks2.Rotation + .8
298
tecks3.TextStrokeTransparency = tecks2.TextStrokeTransparency +.04
299
tecks3.TextTransparency = tecks2.TextTransparency + .04
300
end
301
naeeym2:Destroy()
302
end)
303
chat()
304
end
305
function onChatted(msg)
306
chatfunc(msg)
307
end
308
Player.Chatted:connect(onChatted)
309
310
--//=================================\\
311
--|| SAZERENOS' ARTIFICIAL HEARTBEAT
312
--\\=================================//
313
314
ArtificialHB = Instance.new("BindableEvent", script)
315
ArtificialHB.Name = "ArtificialHB"
316
317
script:WaitForChild("ArtificialHB")
318
319
frame = Frame_Speed
320
tf = 0
321
allowframeloss = false
322
tossremainder = false
323
lastframe = tick()
324
script.ArtificialHB:Fire()
325
326
game:GetService("RunService").Heartbeat:connect(function(s, p)
327
	tf = tf + s
328
	if tf >= frame then
329
		if allowframeloss then
330
			script.ArtificialHB:Fire()
331
			lastframe = tick()
332
		else
333
			for i = 1, math.floor(tf / frame) do
334
				script.ArtificialHB:Fire()
335
			end
336
		lastframe = tick()
337
		end
338
		if tossremainder then
339
			tf = 0
340
		else
341
			tf = tf - frame * math.floor(tf / frame)
342
		end
343
	end
344
end)
345
346
--//=================================\\
347
--\\=================================//
348
print(Class_Name.." Loaded")
349
print(Editor_Name.." Edited This")
350
--//=================================\\
351
--|| 	      SOME FUNCTIONS
352
--\\=================================//
353
354
function Raycast(POSITION, DIRECTION, RANGE, IGNOREDECENDANTS)
355
	return workspace:FindPartOnRay(Ray.new(POSITION, DIRECTION.unit * RANGE), IGNOREDECENDANTS)
356
end
357
358
function PositiveAngle(NUMBER)
359
	if NUMBER >= 0 then
360
		NUMBER = 0
361
	end
362
	return NUMBER
363
end
364
365
function NegativeAngle(NUMBER)
366
	if NUMBER <= 0 then
367
		NUMBER = 0
368
	end
369
	return NUMBER
370
end
371
372
function Swait(NUMBER)
373
	if NUMBER == 0 or NUMBER == nil then
374
		ArtificialHB.Event:wait()
375
	else
376
		for i = 1, NUMBER do
377
			ArtificialHB.Event:wait()
378
		end
379
	end
380
end
381
382
function CreateMesh(MESH, PARENT, MESHTYPE, MESHID, TEXTUREID, SCALE, OFFSET)
383
	local NEWMESH = IT(MESH)
384
	if MESH == "SpecialMesh" then
385
		NEWMESH.MeshType = MESHTYPE
386
		if MESHID ~= "nil" and MESHID ~= "" then
387
			NEWMESH.MeshId = "http://www.roblox.com/asset/?id="..MESHID
388
		end
389
		if TEXTUREID ~= "nil" and TEXTUREID ~= "" then
390
			NEWMESH.TextureId = "http://www.roblox.com/asset/?id="..TEXTUREID
391
		end
392
	end
393
	NEWMESH.Offset = OFFSET or VT(0, 0, 0)
394
	NEWMESH.Scale = SCALE
395
	NEWMESH.Parent = PARENT
396
	return NEWMESH
397
end
398
399
function CreatePart(FORMFACTOR, PARENT, MATERIAL, REFLECTANCE, TRANSPARENCY, BRICKCOLOR, NAME, SIZE, ANCHOR)
400
	local NEWPART = IT("Part")
401
	NEWPART.formFactor = FORMFACTOR
402
	NEWPART.Reflectance = REFLECTANCE
403
	NEWPART.Transparency = TRANSPARENCY
404
	NEWPART.CanCollide = false
405
	NEWPART.Locked = true
406
	NEWPART.Anchored = true
407
	if ANCHOR == false then
408
		NEWPART.Anchored = false
409
	end
410
	NEWPART.BrickColor = BRICKC(tostring(BRICKCOLOR))
411
	NEWPART.Name = NAME
412
	NEWPART.Size = SIZE
413
	NEWPART.Position = Torso.Position
414
	NEWPART.Material = MATERIAL
415
	NEWPART:BreakJoints()
416
	NEWPART.Parent = PARENT
417
	return NEWPART
418
end
419
420
	local function weldBetween(a, b)
421
	    local weldd = Instance.new("ManualWeld")
422
	    weldd.Part0 = a
423
	    weldd.Part1 = b
424
	    weldd.C0 = CFrame.new()
425
	    weldd.C1 = b.CFrame:inverse() * a.CFrame
426
	    weldd.Parent = a
427
	    return weldd
428
	end
429
430
431
function QuaternionFromCFrame(cf)
432
	local mx, my, mz, m00, m01, m02, m10, m11, m12, m20, m21, m22 = cf:components()
433
	local trace = m00 + m11 + m22
434
	if trace > 0 then 
435
		local s = math.sqrt(1 + trace)
436
		local recip = 0.5 / s
437
		return (m21 - m12) * recip, (m02 - m20) * recip, (m10 - m01) * recip, s * 0.5
438
	else
439
		local i = 0
440
		if m11 > m00 then
441
			i = 1
442
		end
443
		if m22 > (i == 0 and m00 or m11) then
444
			i = 2
445
		end
446
		if i == 0 then
447
			local s = math.sqrt(m00 - m11 - m22 + 1)
448
			local recip = 0.5 / s
449
			return 0.5 * s, (m10 + m01) * recip, (m20 + m02) * recip, (m21 - m12) * recip
450
		elseif i == 1 then
451
			local s = math.sqrt(m11 - m22 - m00 + 1)
452
			local recip = 0.5 / s
453
			return (m01 + m10) * recip, 0.5 * s, (m21 + m12) * recip, (m02 - m20) * recip
454
		elseif i == 2 then
455
			local s = math.sqrt(m22 - m00 - m11 + 1)
456
			local recip = 0.5 / s return (m02 + m20) * recip, (m12 + m21) * recip, 0.5 * s, (m10 - m01) * recip
457
		end
458
	end
459
end
460
 
461
function QuaternionToCFrame(px, py, pz, x, y, z, w)
462
	local xs, ys, zs = x + x, y + y, z + z
463
	local wx, wy, wz = w * xs, w * ys, w * zs
464
	local xx = x * xs
465
	local xy = x * ys
466
	local xz = x * zs
467
	local yy = y * ys
468
	local yz = y * zs
469
	local zz = z * zs
470
	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))
471
end
472
 
473
function QuaternionSlerp(a, b, t)
474
	local cosTheta = a[1] * b[1] + a[2] * b[2] + a[3] * b[3] + a[4] * b[4]
475
	local startInterp, finishInterp;
476
	if cosTheta >= 0.0001 then
477
		if (1 - cosTheta) > 0.0001 then
478
			local theta = ACOS(cosTheta)
479
			local invSinTheta = 1 / SIN(theta)
480
			startInterp = SIN((1 - t) * theta) * invSinTheta
481
			finishInterp = SIN(t * theta) * invSinTheta
482
		else
483
			startInterp = 1 - t
484
			finishInterp = t
485
		end
486
	else
487
		if (1 + cosTheta) > 0.0001 then
488
			local theta = ACOS(-cosTheta)
489
			local invSinTheta = 1 / SIN(theta)
490
			startInterp = SIN((t - 1) * theta) * invSinTheta
491
			finishInterp = SIN(t * theta) * invSinTheta
492
		else
493
			startInterp = t - 1
494
			finishInterp = t
495
		end
496
	end
497
	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
498
end
499
500
function Clerp(a, b, t)
501
	local qa = {QuaternionFromCFrame(a)}
502
	local qb = {QuaternionFromCFrame(b)}
503
	local ax, ay, az = a.x, a.y, a.z
504
	local bx, by, bz = b.x, b.y, b.z
505
	local _t = 1 - t
506
	return QuaternionToCFrame(_t * ax + t * bx, _t * ay + t * by, _t * az + t * bz, QuaternionSlerp(qa, qb, t))
507
end
508
509
function CreateFrame(PARENT, TRANSPARENCY, BORDERSIZEPIXEL, POSITION, SIZE, COLOR, BORDERCOLOR, NAME)
510
	local frame = IT("Frame")
511
	frame.BackgroundTransparency = TRANSPARENCY
512
	frame.BorderSizePixel = BORDERSIZEPIXEL
513
	frame.Position = POSITION
514
	frame.Size = SIZE
515
	frame.BackgroundColor3 = COLOR
516
	frame.BorderColor3 = BORDERCOLOR
517
	frame.Name = NAME
518
	frame.Parent = PARENT
519
	return frame
520
end
521
522
function CreateLabel(PARENT, TEXT, TEXTCOLOR, TEXTFONTSIZE, TEXTFONT, TRANSPARENCY, BORDERSIZEPIXEL, STROKETRANSPARENCY, NAME)
523
	local label = IT("TextLabel")
524
	label.BackgroundTransparency = 1
525
	label.Size = UD2(1, 0, 1, 0)
526
	label.Position = UD2(0, 0, 0, 0)
527
	label.TextColor3 = TEXTCOLOR
528
	label.TextStrokeTransparency = STROKETRANSPARENCY
529
	label.TextTransparency = TRANSPARENCY
530
	label.FontSize = TEXTFONTSIZE
531
	label.Font = TEXTFONT
532
	label.BorderSizePixel = BORDERSIZEPIXEL
533
	label.TextScaled = false
534
	label.Text = TEXT
535
	label.Name = NAME
536
	label.Parent = PARENT
537
	return label
538
end
539
540
function NoOutlines(PART)
541
	PART.TopSurface, PART.BottomSurface, PART.LeftSurface, PART.RightSurface, PART.FrontSurface, PART.BackSurface = 10, 10, 10, 10, 10, 10
542
end
543
544
function CreateWeldOrSnapOrMotor(TYPE, PARENT, PART0, PART1, C0, C1)
545
	local NEWWELD = IT(TYPE)
546
	NEWWELD.Part0 = PART0
547
	NEWWELD.Part1 = PART1
548
	NEWWELD.C0 = C0
549
	NEWWELD.C1 = C1
550
	NEWWELD.Parent = PARENT
551
	return NEWWELD
552
end
553
554
local S = IT("Sound")
555
function CreateSound(ID, PARENT, VOLUME, PITCH, DOESLOOP)
556
	local NEWSOUND = nil
557
	coroutine.resume(coroutine.create(function()
558
		NEWSOUND = S:Clone()
559
		NEWSOUND.Parent = PARENT
560
		NEWSOUND.Volume = VOLUME
561
		NEWSOUND.Pitch = PITCH
562
		NEWSOUND.SoundId = "http://www.roblox.com/asset/?id="..ID
563
		NEWSOUND:play()
564
		if DOESLOOP == true then
565
			NEWSOUND.Looped = true
566
		else
567
			repeat wait(1) until NEWSOUND.Playing == false
568
			NEWSOUND:remove()
569
		end
570
	end))
571
	return NEWSOUND
572
end
573
574
575
local EyeSizes={
576
	NumberSequenceKeypoint.new(0,2,0),
577
	NumberSequenceKeypoint.new(1,0,0)
578
}
579
local EyeTrans={
580
	NumberSequenceKeypoint.new(0,0.5,0),
581
	NumberSequenceKeypoint.new(1,1,0)
582
}
583
local PE=Instance.new("ParticleEmitter",nil)
584
PE.LightEmission=.8
585
PE.Color = ColorSequence.new(BRICKC("Dark blue").Color,BRICKC("Cyan").Color)
586
PE.Size=NumberSequence.new(EyeSizes)
587
PE.Transparency=NumberSequence.new(EyeTrans)
588
PE.Lifetime=NumberRange.new(0.35,1)
589
PE.Rotation=NumberRange.new(0,360)
590
PE.Rate=100
591
PE.VelocitySpread = 10000
592
PE.Acceleration = Vector3.new(0,85,0)
593
PE.Drag = 5
594
PE.Speed = NumberRange.new(0.1,5)
595
PE.Texture="http://www.roblox.com/asset/?id=1460745664"
596
PE.ZOffset = 0.5
597
PE.Name = "PE"
598
PE.Enabled = false
599
600
function Fire(art)
601
	local PARTICLES = PE:Clone()
602
	PARTICLES.Parent = art
603
	PARTICLES.Enabled = true
604
	return PARTICLES
605
end
606
607
function CFrameFromTopBack(at, top, back)
608
	local right = top:Cross(back)
609
	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)
610
end
611
612
--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})
613
function WACKYEFFECT(Table)
614
	local TYPE = (Table.EffectType or "Sphere")
615
	local SIZE = (Table.Size or VT(1,1,1))
616
	local ENDSIZE = (Table.Size2 or VT(0,0,0))
617
	local TRANSPARENCY = (Table.Transparency or 0)
618
	local ENDTRANSPARENCY = (Table.Transparency2 or 1)
619
	local CFRAME = (Table.CFrame or Torso.CFrame)
620
	local MOVEDIRECTION = (Table.MoveToPos or nil)
621
	local ROTATION1 = (Table.RotationX or 0)
622
	local ROTATION2 = (Table.RotationY or 0)
623
	local ROTATION3 = (Table.RotationZ or 0)
624
	local MATERIAL = (Table.Material or "Neon")
625
	local COLOR = (Table.Color or C3(1,1,1))
626
	local TIME = (Table.Time or 45)
627
	local SOUNDID = (Table.SoundID or nil)
628
	local SOUNDPITCH = (Table.SoundPitch or nil)
629
	local SOUNDVOLUME = (Table.SoundVolume or nil)
630
	coroutine.resume(coroutine.create(function()
631
		local PLAYSSOUND = false
632
		local SOUND = nil
633
		local EFFECT = CreatePart(3, Effects, MATERIAL, 0, TRANSPARENCY, BRICKC("Dark blue"), "Effect", VT(1,1,1), true)
634
		if SOUNDID ~= nil and SOUNDPITCH ~= nil and SOUNDVOLUME ~= nil then
635
			PLAYSSOUND = true
636
			SOUND = CreateSound(SOUNDID, EFFECT, SOUNDVOLUME, SOUNDPITCH, false)
637
		end
638
		EFFECT.Color = COLOR
639
		local MSH = nil
640
		if TYPE == "Sphere" then
641
			MSH = CreateMesh("SpecialMesh", EFFECT, "Sphere", "", "", SIZE, VT(0,0,0))
642
		elseif TYPE == "Block" or TYPE == "Box" then
643
			MSH = IT("BlockMesh",EFFECT)
644
			MSH.Scale = SIZE
645
		elseif TYPE == "Wave" then
646
			MSH = CreateMesh("SpecialMesh", EFFECT, "FileMesh", "20329976", "", SIZE, VT(0,0,-SIZE.X/8))
647
		elseif TYPE == "Ring" then
648
			MSH = CreateMesh("SpecialMesh", EFFECT, "FileMesh", "559831844", "", VT(SIZE.X,SIZE.X,0.1), VT(0,0,0))
649
		elseif TYPE == "Slash" then
650
			MSH = CreateMesh("SpecialMesh", EFFECT, "FileMesh", "662586858", "", VT(SIZE.X/10,0,SIZE.X/10), VT(0,0,0))
651
		elseif TYPE == "Round Slash" then
652
			MSH = CreateMesh("SpecialMesh", EFFECT, "FileMesh", "662585058", "", VT(SIZE.X/10,0,SIZE.X/10), VT(0,0,0))
653
		elseif TYPE == "Swirl" then
654
			MSH = CreateMesh("SpecialMesh", EFFECT, "FileMesh", "1051557", "", SIZE, VT(0,0,0))
655
		elseif TYPE == "Skull" then
656
			MSH = CreateMesh("SpecialMesh", EFFECT, "FileMesh", "4770583", "", SIZE, VT(0,0,0))
657
		elseif TYPE == "Crystal" then
658
			MSH = CreateMesh("SpecialMesh", EFFECT, "FileMesh", "9756362", "", SIZE, VT(0,0,0))
659
		end
660
		if MSH ~= nil then
661
			local MOVESPEED = nil
662
			if MOVEDIRECTION ~= nil then
663
				MOVESPEED = (CFRAME.p - MOVEDIRECTION).Magnitude/TIME
664
			end
665
			local GROWTH = SIZE - ENDSIZE
666
			local TRANS = TRANSPARENCY - ENDTRANSPARENCY
667
			if TYPE == "Block" then
668
				EFFECT.CFrame = CFRAME*ANGLES(RAD(MRANDOM(0,360)),RAD(MRANDOM(0,360)),RAD(MRANDOM(0,360)))
669
			else
670
				EFFECT.CFrame = CFRAME
671
			end
672
			for LOOP = 1, TIME+1 do
673
				Swait()
674
				MSH.Scale = MSH.Scale - GROWTH/TIME
675
				if TYPE == "Wave" then
676
					MSH.Offset = VT(0,0,-MSH.Scale.X/8)
677
				end
678
				EFFECT.Transparency = EFFECT.Transparency - TRANS/TIME
679
				if TYPE == "Block" then
680
					EFFECT.CFrame = CFRAME*ANGLES(RAD(MRANDOM(0,360)),RAD(MRANDOM(0,360)),RAD(MRANDOM(0,360)))
681
				else
682
					EFFECT.CFrame = EFFECT.CFrame*ANGLES(RAD(ROTATION1),RAD(ROTATION2),RAD(ROTATION3))
683
				end
684
				if MOVEDIRECTION ~= nil then
685
					local ORI = EFFECT.Orientation
686
					EFFECT.CFrame = CF(EFFECT.Position,MOVEDIRECTION)*CF(0,0,-MOVESPEED)
687
					EFFECT.Orientation = ORI
688
				end
689
			end
690
			if PLAYSSOUND == false then
691
				EFFECT:remove()
692
			else
693
				repeat wait(1) until SOUND.Playing == false
694
				EFFECT:remove()
695
			end
696
		else
697
			if PLAYSSOUND == false then
698
				EFFECT:remove()
699
			else
700
				repeat Swait() until SOUND.Playing == false
701
				EFFECT:remove()
702
			end
703
		end
704
	end))
705
end
706
707
function MakeForm(PART,TYPE)
708
	if TYPE == "Cyl" then
709
		local MSH = IT("CylinderMesh",PART)
710
	elseif TYPE == "Ball" then
711
		local MSH = IT("SpecialMesh",PART)
712
		MSH.MeshType = "Sphere"
713
	elseif TYPE == "Wedge" then
714
		local MSH = IT("SpecialMesh",PART)
715
		MSH.MeshType = "Wedge"
716
	end
717
end
718
719
Debris = game:GetService("Debris")
720
721
function CastProperRay(StartPos, EndPos, Distance, Ignore)
722
	local DIRECTION = CF(StartPos,EndPos).lookVector
723
	return Raycast(StartPos, DIRECTION, Distance, Ignore)
724
end
725
726
local HATWELD = nil
727
function Pose(WhichPose,Speed,Time,Magic,Gyro,Tors)
728
	PLAYMAINANIM = false
729
	if WhichPose == "Cast1" then
730
		for i=0, Time, 0.1 / Animation_Speed do
731
			Swait()
732
			if Magic == true then
733
				WACKYEFFECT({Time = 15, EffectType = "Crystal", Size = VT(1,1,1)*1.5, Size2 = VT(0,4,0), Transparency = 0, Transparency2 = 1, CFrame = RightArm.CFrame*CF(0,-1,0)*ANGLES(RAD(MRANDOM(0,360)),RAD(MRANDOM(0,360)),RAD(MRANDOM(0,360))), MoveToPos = nil, RotationX = 0, RotationY = 0, RotationZ = 0, Material = "Glass", Color = BRICKC"Cyan".Color, SoundID = nil, SoundPitch = nil, SoundVolume = nil})
734
			end
735
			if Gyro ~= nil and Gyro ~= false then
736
				Gyro.cframe = CF(RootPart.Position,Mouse.Hit.p)
737
			end
738
			RootJoint.C0 = Clerp(RootJoint.C0,ROOTC0 * CF(0, 0, 0 + 0.05 * COS(SINE / 12)) * ANGLES(RAD(0), RAD(0), RAD(35)), Speed / Animation_Speed)
739
			Neck.C0 = Clerp(Neck.C0, NECKC0 * CF(0, 0, 0 + ((1) - 1)) * ANGLES(RAD(5 - 6.5 * SIN(SINE / 12)), RAD(0), RAD(-35)), Speed / Animation_Speed)
740
			RightShoulder.C0 = Clerp(RightShoulder.C0, CF(1.5, 0.65 + 0.15 * COS(SINE / 12) - 0.05 * COS(SINE / 12), -0.5) * ANGLES(RAD(125), RAD(0), RAD(45)) * RIGHTSHOULDERC0, Speed / Animation_Speed)
741
			LeftShoulder.C0 = Clerp(LeftShoulder.C0, CF(-1.25, 0.5 + 0.15 * COS(SINE / 12) - 0.05 * COS(SINE / 12), 0.5) * ANGLES(RAD(-45), RAD(0), RAD(45)) * LEFTSHOULDERC0, Speed / Animation_Speed)
742
			RightHip.C0 = Clerp(RightHip.C0, CF(1, -0.5, -0.5) * ANGLES(RAD(0), RAD(65), RAD(0)) * ANGLES(RAD(-3), RAD(0), RAD(-15)), Speed / Animation_Speed)
743
			LeftHip.C0 = Clerp(LeftHip.C0, CF(-1, -1, -0.01) * ANGLES(RAD(0), RAD(-90), RAD(0)) * ANGLES(RAD(-8), RAD(0), RAD(0)), Speed / Animation_Speed)
744
		end
745
	elseif WhichPose == "Cast2" then
746
		for i=0, Time, 0.1 / Animation_Speed do
747
			Swait()
748
			if Magic == true then
749
				WACKYEFFECT({Time = 15, EffectType = "Crystal", Size = VT(1,1,1)*1.5, Size2 = VT(0,4,0), Transparency = 0, Transparency2 = 1, CFrame = RightArm.CFrame*CF(0,-1,0)*ANGLES(RAD(MRANDOM(0,360)),RAD(MRANDOM(0,360)),RAD(MRANDOM(0,360))), MoveToPos = nil, RotationX = 0, RotationY = 0, RotationZ = 0, Material = "Glass", Color = BRICKC"Cyan".Color, SoundID = nil, SoundPitch = nil, SoundVolume = nil})
750
				WACKYEFFECT({Time = 15, EffectType = "Crystal", Size = VT(1,1,1)*1.5, Size2 = VT(0,4,0), Transparency = 0, Transparency2 = 1, CFrame = LeftArm.CFrame*CF(0,-1,0)*ANGLES(RAD(MRANDOM(0,360)),RAD(MRANDOM(0,360)),RAD(MRANDOM(0,360))), MoveToPos = nil, RotationX = 0, RotationY = 0, RotationZ = 0, Material = "Glass", Color = BRICKC"Cyan".Color, SoundID = nil, SoundPitch = nil, SoundVolume = nil})
751
			end
752
			if Gyro ~= nil and Gyro ~= false then
753
				Gyro.cframe = CF(RootPart.Position,Mouse.Hit.p)
754
			end
755
			RootJoint.C0 = Clerp(RootJoint.C0,ROOTC0 * CF(0, 0, 0 + 0.05 * COS(SINE / 12)) * ANGLES(RAD(0), RAD(0), RAD(0)), Speed / Animation_Speed)
756
			Neck.C0 = Clerp(Neck.C0, NECKC0 * CF(0, 0, 0 + ((1) - 1)) * ANGLES(RAD(-15 - 6.5 * SIN(SINE / 12)), RAD(0), RAD(0)), Speed / Animation_Speed)
757
			RightShoulder.C0 = Clerp(RightShoulder.C0, CF(1.5, 0.65 + 0.15 * COS(SINE / 12) - 0.05 * COS(SINE / 12), -0.5) * ANGLES(RAD(120), RAD(0), RAD(15)) * RIGHTSHOULDERC0, Speed / Animation_Speed)
758
			LeftShoulder.C0 = Clerp(LeftShoulder.C0, CF(-1.5, 0.65 + 0.15 * COS(SINE / 12) - 0.05 * COS(SINE / 12), -0.5) * ANGLES(RAD(120), RAD(0), RAD(-15)) * LEFTSHOULDERC0, Speed / Animation_Speed)
759
			RightHip.C0 = Clerp(RightHip.C0, CF(1, -0.5, -0.5) * ANGLES(RAD(0), RAD(65), RAD(0)) * ANGLES(RAD(-3), RAD(0), RAD(-15)), Speed / Animation_Speed)
760
			LeftHip.C0 = Clerp(LeftHip.C0, CF(-1, -1, -0.01) * ANGLES(RAD(0), RAD(-90), RAD(0)) * ANGLES(RAD(-8), RAD(0), RAD(0)), Speed / Animation_Speed)
761
		end
762
	elseif WhichPose == "RightArmUp" then
763
		for i=0, Time, 0.1 / Animation_Speed do
764
			Swait()
765
			if Magic == true then
766
				WACKYEFFECT({Time = 15, EffectType = "Crystal", Size = VT(1,1,1)*1.5, Size2 = VT(0,4,0), Transparency = 0, Transparency2 = 1, CFrame = RightArm.CFrame*CF(0,-1,0)*ANGLES(RAD(MRANDOM(0,360)),RAD(MRANDOM(0,360)),RAD(MRANDOM(0,360))), MoveToPos = nil, RotationX = 0, RotationY = 0, RotationZ = 0, Material = "Glass", Color = BRICKC"Cyan".Color, SoundID = nil, SoundPitch = nil, SoundVolume = nil})
767
			end
768
			if Gyro ~= nil and Gyro ~= false then
769
				Gyro.cframe = CF(RootPart.Position,Mouse.Hit.p)
770
			end
771
			RootJoint.C0 = Clerp(RootJoint.C0,ROOTC0 * CF(0, 0, 0 + 0.05 * COS(SINE / 12)) * ANGLES(RAD(0), RAD(0), RAD(15)), Speed / Animation_Speed)
772
			Neck.C0 = Clerp(Neck.C0, NECKC0 * CF(0, 0, 0 + ((1) - 1)) * ANGLES(RAD(-5 - 6.5 * SIN(SINE / 12)), RAD(0), RAD(-15)), Speed / Animation_Speed)
773
			RightShoulder.C0 = Clerp(RightShoulder.C0, CF(1.5, 0.65 + 0.15 * COS(SINE / 12) - 0.05 * COS(SINE / 12), -0.2) * ANGLES(RAD(125), RAD(0), RAD(25)) * RIGHTSHOULDERC0, Speed / Animation_Speed)
774
			LeftShoulder.C0 = Clerp(LeftShoulder.C0, CF(-1.25, 0.5 + 0.15 * COS(SINE / 12) - 0.05 * COS(SINE / 12), 0.5) * ANGLES(RAD(-45), RAD(0), RAD(45)) * LEFTSHOULDERC0, Speed / Animation_Speed)
775
			RightHip.C0 = Clerp(RightHip.C0, CF(1, -0.5, -0.5) * ANGLES(RAD(0), RAD(65), RAD(0)) * ANGLES(RAD(-3), RAD(0), RAD(-15)), Speed / Animation_Speed)
776
			LeftHip.C0 = Clerp(LeftHip.C0, CF(-1, -1, -0.01) * ANGLES(RAD(0), RAD(-90), RAD(0)) * ANGLES(RAD(-8), RAD(0), RAD(0)), Speed / Animation_Speed)
777
		end
778
	elseif WhichPose == "Taunt" then
779
		for i=0, Time, 0.1 / Animation_Speed do
780
			Swait()
781
			RootJoint.C0 = Clerp(RootJoint.C0,ROOTC0 * CF(0, 0, 0 + 0.05 * COS(SINE / 12)) * ANGLES(RAD(0), RAD(0), RAD(0)), Speed / Animation_Speed)
782
			Neck.C0 = Clerp(Neck.C0, NECKC0 * CF(0, 0, 0 + ((1) - 1)) * ANGLES(RAD(-5 - 6.5 * SIN(SINE / 12)), RAD(0), RAD(0)), Speed / Animation_Speed)
783
			RightShoulder.C0 = Clerp(RightShoulder.C0, CF(1.25, 0.5 + 0.15 * COS(SINE / 12) - 0.05 * COS(SINE / 12), -0.5) * ANGLES(RAD(175), RAD(0), RAD(-35)) * RIGHTSHOULDERC0, Speed / Animation_Speed)
784
			LeftShoulder.C0 = Clerp(LeftShoulder.C0, CF(-1.25, 0.5 + 0.15 * COS(SINE / 12) - 0.05 * COS(SINE / 12), 0.5) * ANGLES(RAD(-45), RAD(0), RAD(45)) * LEFTSHOULDERC0, Speed / Animation_Speed)
785
			RightHip.C0 = Clerp(RightHip.C0, CF(1, -0.5, -0.5) * ANGLES(RAD(0), RAD(65), RAD(0)) * ANGLES(RAD(-3), RAD(0), RAD(-15)), Speed / Animation_Speed)
786
			LeftHip.C0 = Clerp(LeftHip.C0, CF(-1, -1, -0.01) * ANGLES(RAD(0), RAD(-90), RAD(0)) * ANGLES(RAD(-8), RAD(0), RAD(0)), Speed / Animation_Speed)
787
		end
788
		HATWELD.Part0 = RightArm
789
		HATWELD.C0 = CF(0,-1.1,-0.4) * ANGLES(RAD(0), RAD(0), RAD(180)) * ANGLES(RAD(-20), RAD(0), RAD(0))
790
		CreateSound(1479647856,Torso,10,1,false)
791
		for i=0, Time*2, 0.1 / Animation_Speed do
792
			Swait()
793
			RootJoint.C0 = Clerp(RootJoint.C0,ROOTC0 * CF(0, 0, 0 + 0.05 * COS(SINE / 12)) * ANGLES(RAD(0), RAD(0), RAD(0)), Speed / Animation_Speed)
794
			Neck.C0 = Clerp(Neck.C0, NECKC0 * CF(0, 0, 0 + ((1) - 1)) * ANGLES(RAD(35 - 6.5 * SIN(SINE / 12)), RAD(0), RAD(0)), Speed / Animation_Speed)
795
			RightShoulder.C0 = Clerp(RightShoulder.C0, CF(1.25, 0.5 + 0.15 * COS(SINE / 12) - 0.05 * COS(SINE / 12), 0.5) * ANGLES(RAD(145), RAD(0), RAD(45)) * RIGHTSHOULDERC0, Speed / Animation_Speed)
796
			LeftShoulder.C0 = Clerp(LeftShoulder.C0, CF(-1.25, 0.5 + 0.15 * COS(SINE / 12) - 0.05 * COS(SINE / 12), 0.5) * ANGLES(RAD(5), RAD(25), RAD(-15)) * LEFTSHOULDERC0, Speed / Animation_Speed)
797
			RightHip.C0 = Clerp(RightHip.C0, CF(1, -0.5, -0.5) * ANGLES(RAD(0), RAD(65), RAD(0)) * ANGLES(RAD(-3), RAD(0), RAD(-15)), Speed / Animation_Speed)
798
			LeftHip.C0 = Clerp(LeftHip.C0, CF(-1, -1, -0.01) * ANGLES(RAD(0), RAD(-90), RAD(0)) * ANGLES(RAD(-8), RAD(0), RAD(0)), Speed / Animation_Speed)
799
		end
800
		for i=0, Time, 0.1 / Animation_Speed do
801
			Swait()
802
			RootJoint.C0 = Clerp(RootJoint.C0,ROOTC0 * CF(0, 0, 0 + 0.05 * COS(SINE / 12)) * ANGLES(RAD(0), RAD(0), RAD(0)), Speed / Animation_Speed)
803
			Neck.C0 = Clerp(Neck.C0, NECKC0 * CF(0, 0, 0 + ((1) - 1)) * ANGLES(RAD(5), RAD(0), RAD(0)), Speed / Animation_Speed)
804
			RightShoulder.C0 = Clerp(RightShoulder.C0, CF(1.35, 0.65, -0.5) * ANGLES(RAD(175), RAD(0), RAD(-35)) * RIGHTSHOULDERC0, Speed / Animation_Speed)
805
			LeftShoulder.C0 = Clerp(LeftShoulder.C0, CF(-1.25, 0.5 + 0.15 * COS(SINE / 12) - 0.05 * COS(SINE / 12), 0.5) * ANGLES(RAD(-45), RAD(0), RAD(45)) * LEFTSHOULDERC0, Speed / Animation_Speed)
806
			RightHip.C0 = Clerp(RightHip.C0, CF(1, -0.5, -0.5) * ANGLES(RAD(0), RAD(65), RAD(0)) * ANGLES(RAD(-3), RAD(0), RAD(-15)), Speed / Animation_Speed)
807
			LeftHip.C0 = Clerp(LeftHip.C0, CF(-1, -1, -0.01) * ANGLES(RAD(0), RAD(-90), RAD(0)) * ANGLES(RAD(-8), RAD(0), RAD(0)), Speed / Animation_Speed)
808
			HATWELD.C0 = Clerp(HATWELD.C0, CF(-0.5,-1.2,-0.3) * ANGLES(RAD(0), RAD(0), RAD(180)) * ANGLES(RAD(35), RAD(0), RAD(35)), Speed / Animation_Speed)
809
		end
810
		HATWELD.Part0 = Head
811
		HATWELD.C0 = CF(0,0.35,0)
812
	elseif WhichPose == "Prepare key" then
813
		for i=0, Time, 0.1 / Animation_Speed do
814
			Swait()
815
			if Gyro ~= nil and Gyro ~= false then
816
				Gyro.cframe = CF(RootPart.Position,Tors.Position)
817
			end
818
			RootJoint.C0 = Clerp(RootJoint.C0,ROOTC0 * CF(0, 0, 0 + 0.05 * COS(SINE / 12)) * ANGLES(RAD(0), RAD(0), RAD(65)), Speed / Animation_Speed)
819
			Neck.C0 = Clerp(Neck.C0, NECKC0 * CF(0, 0, 0 + ((1) - 1)) * ANGLES(RAD(5 - 6.5 * SIN(SINE / 12)), RAD(0), RAD(-65)), Speed / Animation_Speed)
820
			RightShoulder.C0 = Clerp(RightShoulder.C0, CF(1.5, 0.5 + 0.15 * COS(SINE / 12) - 0.05 * COS(SINE / 12), -0.25) * ANGLES(RAD(90), RAD(0), RAD(65)) * RIGHTSHOULDERC0, Speed / Animation_Speed)
821
			LeftShoulder.C0 = Clerp(LeftShoulder.C0, CF(-1.25, 0.5 + 0.15 * COS(SINE / 12) - 0.05 * COS(SINE / 12), 0.5) * ANGLES(RAD(-45), RAD(0), RAD(45)) * LEFTSHOULDERC0, Speed / Animation_Speed)
822
			RightHip.C0 = Clerp(RightHip.C0, CF(1, -0.5, -0.5) * ANGLES(RAD(0), RAD(65), RAD(0)) * ANGLES(RAD(-3), RAD(0), RAD(-15)), Speed / Animation_Speed)
823
			LeftHip.C0 = Clerp(LeftHip.C0, CF(-1, -1, -0.01) * ANGLES(RAD(0), RAD(-90), RAD(0)) * ANGLES(RAD(-8), RAD(0), RAD(0)), Speed / Animation_Speed)
824
		end
825
	elseif WhichPose == "Turn key" then
826
		for i=0, Time, 0.1 / Animation_Speed do
827
			Swait()
828
			if Gyro ~= nil and Gyro ~= false then
829
				Gyro.cframe = CF(RootPart.Position,Tors.Position)
830
			end
831
			RootJoint.C0 = Clerp(RootJoint.C0,ROOTC0 * CF(0, 0, 0 + 0.05 * COS(SINE / 12)) * ANGLES(RAD(0), RAD(0), RAD(75)), Speed / Animation_Speed)
832
			Neck.C0 = Clerp(Neck.C0, NECKC0 * CF(0, 0, 0 + ((1) - 1)) * ANGLES(RAD(5 - 6.5 * SIN(SINE / 12)), RAD(0), RAD(-75)), Speed / Animation_Speed)
833
			RightShoulder.C0 = Clerp(RightShoulder.C0, CF(1.5, 0.5 + 0.15 * COS(SINE / 12) - 0.05 * COS(SINE / 12), -0.25) * ANGLES(RAD(90), RAD(0), RAD(75)) * ANGLES(RAD(0), RAD(-90), RAD(0)) * RIGHTSHOULDERC0, Speed / Animation_Speed)
834
			LeftShoulder.C0 = Clerp(LeftShoulder.C0, CF(-1.25, 0.5 + 0.15 * COS(SINE / 12) - 0.05 * COS(SINE / 12), 0.5) * ANGLES(RAD(-45), RAD(0), RAD(45)) * LEFTSHOULDERC0, Speed / Animation_Speed)
835
			RightHip.C0 = Clerp(RightHip.C0, CF(1, -0.5, -0.5) * ANGLES(RAD(0), RAD(65), RAD(0)) * ANGLES(RAD(-3), RAD(0), RAD(-15)), Speed / Animation_Speed)
836
			LeftHip.C0 = Clerp(LeftHip.C0, CF(-1, -1, -0.01) * ANGLES(RAD(0), RAD(-90), RAD(0)) * ANGLES(RAD(-8), RAD(0), RAD(0)), Speed / Animation_Speed)
837
		end
838
	end
839
	PLAYMAINANIM = true
840
end
841
842
--Lightning({Color = C3(1,1,1), Start = Torso.Position, End = Mouse.Hit.p, SegmentL = 2, Thickness = 0.1, DoesFade = false, Ignore = Character, MaxDist = 400, Branches = false})
843
function Lightning(Table)
844
	local Color = Table.Color or C3(1,1,1)
845
	local StartPos = Table.Start or Torso.Position
846
	local EndPos = Table.End or Mouse.Hit.p
847
	local SegmentLength = Table.SegmentL or 2
848
	local Thickness = Table.Thickness or 0.1
849
	local Dissapear = Table.DoesFade or false
850
	local Parent = Table.Ignore or Character
851
	local MaxDist = Table.MaxDist or 400
852
	local Branches = Table.Branches or false
853
	local HIT,HITPOS = CastProperRay(StartPos, EndPos, MaxDist, Parent)
854
	local DISTANCE = math.ceil((StartPos - HITPOS).Magnitude/SegmentLength)
855
	local LIGHTNINGMODEL = IT("Model",Effects)
856
	LIGHTNINGMODEL.Name = "Lightning"
857
	local LastBolt = nil
858
	for E = 1, DISTANCE do
859
		local ExtraSize = (DISTANCE-E)/15
860
		local PART = CreatePart(3, LIGHTNINGMODEL, "Neon", 0, 0, BRICKC("Dark blue"), "LightningPart"..E, VT(Thickness+ExtraSize,SegmentLength,Thickness+ExtraSize))
861
		PART.Color = Color
862
		MakeForm(PART,"Cyl")
863
		if LastBolt == nil then
864
			PART.CFrame = CF(StartPos,HITPOS)*ANGLES(RAD(90),RAD(0),RAD(0))*CF(0,-PART.Size.Y/2,0)
865
		else
866
			PART.CFrame = CF(LastBolt.CFrame*CF(0,-LastBolt.Size.Y/2,0).p,CF(HITPOS)*ANGLES(RAD(MRANDOM(0,360)),RAD(MRANDOM(0,360)),RAD(MRANDOM(0,360)))*CF(0,0,SegmentLength/3+(DISTANCE-E)).p)*ANGLES(RAD(90),RAD(0),RAD(0))*CF(0,-PART.Size.Y/2,0)
867
		end
868
		LastBolt = PART
869
		if Branches == true then
870
			local CHOICE = MRANDOM(1,7+((DISTANCE-E)*2))
871
			if CHOICE == 1 then
872
				local LASTBRANCH = nil
873
				for i = 1, MRANDOM(2,5) do
874
					local ExtraSize2 = ((DISTANCE-E)/25)/i
875
					local PART = CreatePart(3, LIGHTNINGMODEL, "Neon", 0, 0, BRICKC("Dark blue"), "Branch"..E.."-"..i, VT(Thickness+ExtraSize2,SegmentLength,Thickness+ExtraSize2))
876
					PART.Color = Color
877
					MakeForm(PART,"Cyl")
878
					if LASTBRANCH == nil then
879
						PART.CFrame = CF(LastBolt.CFrame*CF(0,-LastBolt.Size.Y/2,0).p,LastBolt.CFrame*CF(0,-LastBolt.Size.Y/2,0)*ANGLES(RAD(0),RAD(0),RAD(MRANDOM(0,360)))*CF(0,Thickness*7,0)*CF(0,0,-1).p)*ANGLES(RAD(90),RAD(0),RAD(0))*CF(0,-PART.Size.Y/2,0)
880
					else
881
						PART.CFrame = CF(LASTBRANCH.CFrame*CF(0,-LASTBRANCH.Size.Y/2,0).p,LASTBRANCH.CFrame*CF(0,-LASTBRANCH.Size.Y/2,0)*ANGLES(RAD(0),RAD(0),RAD(MRANDOM(0,360)))*CF(0,Thickness*3,0)*CF(0,0,-1).p)*ANGLES(RAD(90),RAD(0),RAD(0))*CF(0,-PART.Size.Y/2,0)
882
					end
883
					LASTBRANCH = PART
884
				end
885
			end
886
		end
887
	end
888
	if Dissapear == true then
889
		coroutine.resume(coroutine.create(function()
890
			for i = 1, 10 do
891
				Swait()
892
				for _, c in pairs(LIGHTNINGMODEL:GetChildren()) do
893
					if c.ClassName == "Part" then
894
						c.Transparency = i/10
895
					end
896
				end
897
			end
898
			LIGHTNINGMODEL:remove()
899
		end))
900
	elseif Dissapear == false then
901
		Debris:AddItem(LIGHTNINGMODEL,0.1)
902
	end
903
	return {End = LastBolt.CFrame*CF(0,0,-LastBolt.Size.Z/2).p,LastBolt = LastBolt,Model = LIGHTNINGMODEL}
904
end
905
906
--//=================================\\
907
--||	     WEAPON CREATION
908
--\\=================================//
909
910
for i = 1, 15 do
911
	local FACE = CreatePart(3, Character, "Fabric", 0, 0+(i-1)/15.2, "Dark stone grey", "FaceGradient", VT(1.01,0.58,1.01),false)
912
	FACE.Color = C3(0,0,0)
913
	Head:FindFirstChildOfClass("SpecialMesh"):Clone().Parent = FACE
914
	CreateWeldOrSnapOrMotor("Weld", Head, Head, FACE, CF(0,0.35-(i-1)/35,0), CF(0, 0, 0))
915
end
916
local HAT1 = CreatePart(3, Character, "SmoothPlastic", 0, 0, "Dark blue", "Hat", VT(2,0.2,2),false)
917
MakeForm(HAT1,"Cyl")
918
HATWELD = CreateWeldOrSnapOrMotor("Weld", Head, Head, HAT1, CF(0,0.35,0), CF(0, 0, 0))
919
local BELT = CreatePart(3, Character, "SmoothPlastic", 0, 0, "Dark blue", "Hat", VT(2.01,0.15,2.01),false)
920
BELT.Color = C3(15/255,15/255,15/255)
921
MakeForm(BELT,"Cyl")
922
CreateWeldOrSnapOrMotor("Weld", HAT1, HAT1, BELT, CF(0,0,0), CF(0, 0, 0))
923
local HAT2 = CreatePart(3, Character, "SmoothPlastic", 0, 0, "Dark blue", "Hat", VT(1.3,2.2,1.3),false)
924
MakeForm(HAT2,"Cyl")
925
CreateWeldOrSnapOrMotor("Weld", HAT1, HAT1, HAT2, CF(0,1.1,0), CF(0, 0, 0))
926
local BELT = CreatePart(3, Character, "SmoothPlastic", 0, 0, "Dark blue", "Hat", VT(1.31,0.2,1.31),false)
927
BELT.Color = C3(15/255,15/255,15/255)
928
MakeForm(BELT,"Cyl")
929
CreateWeldOrSnapOrMotor("Weld", HAT2, HAT2, BELT, CF(0,0,0), CF(0, 0, 0))
930
local GEM = CreatePart(3, Character, "Neon", 0, 0, "Cyan", "Gem", VT(0.25,0.25,0.1),false)
931
MakeForm(GEM,"Ball")
932
CreateWeldOrSnapOrMotor("Weld", HAT2, HAT2, GEM, CF(0,0,-BELT.Size.X/2), CF(0, 0, 0))
933
local GEM = CreatePart(3, Character, "Neon", 0, 0, "Cyan", "Gem", VT(0.25,0.25,0.1),false)
934
MakeForm(GEM,"Ball")
935
CreateWeldOrSnapOrMotor("Weld", HAT2, HAT2, GEM, CF(0,0,BELT.Size.X/2), CF(0, 0, 0))
936
local GEM = CreatePart(3, Character, "Neon", 0, 0, "Cyan", "Gem", VT(0.1,0.25,0.25),false)
937
MakeForm(GEM,"Ball")
938
CreateWeldOrSnapOrMotor("Weld", HAT2, HAT2, GEM, CF(-BELT.Size.X/2,0,0), CF(0, 0, 0))
939
local GEM = CreatePart(3, Character, "Neon", 0, 0, "Cyan", "Gem", VT(0.1,0.25,0.25),false)
940
MakeForm(GEM,"Ball")
941
CreateWeldOrSnapOrMotor("Weld", HAT2, HAT2, GEM, CF(BELT.Size.X/2,0,0), CF(0, 0, 0))
942
local BELT = CreatePart(3, Character, "SmoothPlastic", 0, 0, "Dark blue", "Hat", VT(1.31,0.1,1.31),false)
943
BELT.Color = C3(15/255,15/255,15/255)
944
MakeForm(BELT,"Cyl")
945
CreateWeldOrSnapOrMotor("Weld", HAT2, HAT2, BELT, CF(0,0.7,0), CF(0, 0, 0))
946
local BELT = CreatePart(3, Character, "SmoothPlastic", 0, 0, "Dark blue", "Hat", VT(1.31,0.1,1.31),false)
947
BELT.Color = C3(15/255,15/255,15/255)
948
MakeForm(BELT,"Cyl")
949
CreateWeldOrSnapOrMotor("Weld", HAT2, HAT2, BELT, CF(0,-0.7,0), CF(0, 0, 0))
950
local BELT = CreatePart(3, Character, "SmoothPlastic", 0, 0, "Dark blue", "Hat", VT(1.31,0.1,1.31),false)
951
BELT.Color = C3(15/255,15/255,15/255)
952
MakeForm(BELT,"Cyl")
953
CreateWeldOrSnapOrMotor("Weld", HAT2, HAT2, BELT, CF(0,0.35,0), CF(0, 0, 0))
954
local BELT = CreatePart(3, Character, "SmoothPlastic", 0, 0, "Dark blue", "Hat", VT(1.31,0.1,1.31),false)
955
BELT.Color = C3(15/255,15/255,15/255)
956
MakeForm(BELT,"Cyl")
957
CreateWeldOrSnapOrMotor("Weld", HAT2, HAT2, BELT, CF(0,-0.35,0), CF(0, 0, 0))
958
local BELT = CreatePart(3, Character, "SmoothPlastic", 0, 0, "Dark blue", "Hat", VT(1.3,0.5,1.3),false)
959
MakeForm(BELT,"Ball")
960
CreateWeldOrSnapOrMotor("Weld", HAT2, HAT2, BELT, CF(0,HAT2.Size.Y/2,0), CF(0, 0, 0))
961
Humanoid.DisplayDistanceType = "None"
962
963
local Particle = IT("ParticleEmitter",nil)
964
Particle.Enabled = false
965
Particle.Transparency = NumberSequence.new({NumberSequenceKeypoint.new(0,0.3),NumberSequenceKeypoint.new(0.3,0),NumberSequenceKeypoint.new(1,1)})
966
Particle.LightEmission = 0.5
967
Particle.Rate = 150
968
Particle.ZOffset = 0.2
969
Particle.Rotation = NumberRange.new(-180, 180)
970
Particle.RotSpeed = NumberRange.new(-180, 180)
971
Particle.Texture = "http://www.roblox.com/asset/?id=304437537"
972
Particle.Color = ColorSequence.new(C3(0,0,255),C3(0,255,255))
973
local Particle2 = IT("ParticleEmitter",nil)
974
Particle2.Enabled = false
975
Particle2.Texture = "http://www.roblox.com/asset/?id=1369397597"
976
Particle2.Color = ColorSequence.new(C3(0,0,255),C3(0,0,255))
977
Particle2.LightEmission = 0
978
Particle2.RotSpeed = NumberRange.new(0, 180)
979
Particle2.Transparency = NumberSequence.new({NumberSequenceKeypoint.new(0,0.3),NumberSequenceKeypoint.new(0.3,0),NumberSequenceKeypoint.new(1,1)})
980
Particle2.LightEmission = 1
981
Particle2.Rate = 20
982
Particle2.RotSpeed = NumberRange.new(-20, 20)
983
local Particle3 = IT("ParticleEmitter",nil)
984
Particle3.Enabled = false
985
Particle3.Texture = "http://www.roblox.com/asset/?id=1546470121"
986
Particle3.Color = ColorSequence.new(C3(0,0,255),C3(0,0,255))
987
Particle3.LightEmission = 0
988
Particle3.RotSpeed = NumberRange.new(0, 180)
989
Particle3.Transparency = NumberSequence.new({NumberSequenceKeypoint.new(0,0.7),NumberSequenceKeypoint.new(0.3,.9),NumberSequenceKeypoint.new(1,1)})
990
Particle3.LightEmission = 1
991
Particle3.Rate = 20
992
Particle3.RotSpeed = NumberRange.new(-20, 20)
993
--ParticleEmitter({Speed = 5, Drag = 0, Size1 = 1, Size2 = 5, Lifetime1 = 1, Lifetime2 = 1.5, Parent = Torso, Emit = 100, Offset = 360, Enabled = false})
994
function ParticleEmitter(Table)
995
	local PRTCL = Particle:Clone()
996
	local Speed = Table.Speed or 5
997
	local Drag = Table.Drag or 0
998
	local Size1 = Table.Size1 or 1
999
	local Size2 = Table.Size2 or 5
1000
	local Lifetime1 = Table.Lifetime1 or 1
1001
	local Lifetime2 = Table.Lifetime2 or 1.5
1002
	local Parent = Table.Parent or Torso
1003
	local Emit = Table.Emit or 100
1004
	local Offset = Table.Offset or 360
1005
	local Acel = Table.Acel or VT(0,0,0)
1006
	local Enabled = Table.Enabled or false
1007
	PRTCL.Parent = Parent
1008
	PRTCL.Size = NumberSequence.new(Size1,Size2)
1009
	PRTCL.Lifetime = NumberRange.new(Lifetime1,Lifetime2)
1010
	PRTCL.Speed = NumberRange.new(Speed)
1011
	PRTCL.VelocitySpread = Offset
1012
	PRTCL.Drag = Drag
1013
	PRTCL.Acceleration = Acel
1014
	if Enabled == false then
1015
		PRTCL:Emit(Emit)
1016
		Debris:AddItem(PRTCL,Lifetime2)
1017
	else
1018
		PRTCL.Enabled = true
1019
	end
1020
	return PRTCL
1021
end
1022
function ParticleEmitter2(Table)
1023
	local PRTCL2 = Particle2:Clone()
1024
	local LockedToPart = Table.LTP or true
1025
	local Speed = Table.Speed or 0
1026
	local Drag = Table.Drag or 0
1027
	local Size1 = Table.Size1 or 1
1028
	local Size2 = Table.Size2 or 2
1029
	local Lifetime1 = Table.Lifetime1 or 1
1030
	local Lifetime2 = Table.Lifetime2 or 1
1031
	local Parent = Table.Parent or Torso
1032
	local Emit = Table.Emit or 100
1033
	local Offset = Table.Offset or 360
1034
	local Acel = Table.Acel or VT(0,0,0)
1035
	local Enabled = Table.Enabled or false
1036
	PRTCL2.Parent = Parent
1037
	PRTCL2.Size = NumberSequence.new(Size1,Size2)
1038
	PRTCL2.Lifetime = NumberRange.new(Lifetime1,Lifetime2)
1039
	PRTCL2.Speed = NumberRange.new(Speed)
1040
	PRTCL2.VelocitySpread = Offset
1041
	PRTCL2.Drag = Drag
1042
	PRTCL2.Acceleration = Acel
1043
		PRTCL2.Parent = Parent
1044
		PRTCL2.Size = NumberSequence.new(Size1,Size2)
1045
		PRTCL2.Lifetime = NumberRange.new(Lifetime1,Lifetime2)
1046
		PRTCL2.Speed = NumberRange.new(Speed)
1047
		PRTCL2.VelocitySpread = Offset
1048
		PRTCL2.Drag = Drag
1049
		PRTCL2.Acceleration = Acel
1050
		PRTCL2.LockedToPart = true
1051
	if Enabled == false then
1052
		PRTCL2:Emit(Emit)
1053
		Debris:AddItem(PRTCL2,Lifetime2)
1054
	else
1055
		PRTCL2.Enabled = true
1056
	end
1057
	return PRTCL2
1058
end
1059
function ParticleEmitter3(Table)
1060
	local PRTCL3 = Particle2:Clone()
1061
	local Speed = Table.Speed or 0
1062
	local Drag = Table.Drag or 0
1063
	local Size1 = Table.Size1 or 1
1064
	local Size2 = Table.Size2 or 2
1065
	local Lifetime1 = Table.Lifetime1 or 1
1066
	local Lifetime2 = Table.Lifetime2 or 1
1067
	local Parent = Table.Parent or Torso
1068
	local Emit = Table.Emit or 100
1069
	local Offset = Table.Offset or 0
1070
	local Acel = Table.Acel or VT(0,0,0)
1071
	local Enabled = Table.Enabled or false
1072
	PRTCL3.Parent = Parent
1073
	PRTCL3.Size = NumberSequence.new(Size1,Size2)
1074
	PRTCL3.Lifetime = NumberRange.new(Lifetime1,Lifetime2)
1075
	PRTCL3.Speed = NumberRange.new(Speed)
1076
	PRTCL3.VelocitySpread = Offset
1077
	PRTCL3.Drag = Drag
1078
	PRTCL3.Acceleration = Acel
1079
		PRTCL3.Parent = Parent
1080
		PRTCL3.Size = NumberSequence.new(Size1,Size2)
1081
		PRTCL3.Lifetime = NumberRange.new(Lifetime1,Lifetime2)
1082
		PRTCL3.Speed = NumberRange.new(Speed)
1083
		PRTCL3.VelocitySpread = Offset
1084
		PRTCL3.Drag = Drag
1085
		PRTCL3.Acceleration = Acel
1086
	if Enabled == false then
1087
		PRTCL3:Emit(Emit)
1088
		Debris:AddItem(PRTCL3,Lifetime2)
1089
	else
1090
		PRTCL3.Enabled = true
1091
	end
1092
	return PRTCL3
1093
end
1094
1095
local Weapon1 = IT("Model")
1096
Weapon1.Name = "Pistol"
1097
1098
local Handle = CreatePart(3, Weapon1, "Metal", 0, 0, "Mid gray", "Part", VT(0.2,0.6,0.2),false)
1099
local LeftArmGrasp = CreateWeldOrSnapOrMotor("Weld", Handle, LeftArm, Handle, CF(0,-1, 0) * ANGLES(RAD(90), RAD(0), RAD(0)), CF(0, 0.21, 0))
1100
local Part = CreatePart(3, Weapon1, "Metal", 0, 0, "Mid gray", "Part", VT(0.2,0.5,0.2),false)
1101
MakeForm(Part,"Wedge")
1102
CreateWeldOrSnapOrMotor("Weld", Handle, Handle, Part, CF(0, -0.3, 0.2) * ANGLES(RAD(0), RAD(180), RAD(0)), CF(0, 0, 0))
1103
local Part = CreatePart(3, Weapon1, "Metal", 0, 0, "Mid gray", "Part", VT(0.2,0.3,0.2),false)
1104
MakeForm(Part,"Wedge")
1105
CreateWeldOrSnapOrMotor("Weld", Handle, Handle, Part, CF(0, -0.4, 0) * ANGLES(RAD(0), RAD(0), RAD(180)), CF(0, 0, 0))
1106
local Part = CreatePart(3, Weapon1, "Metal", 0, 0, "Mid gray", "Part", VT(0.3,0.3,0.3),false)
1107
CreateWeldOrSnapOrMotor("Weld", Handle, Handle, Part, CF(0, -0.5, 0.2) * ANGLES(RAD(0), RAD(0), RAD(0)), CF(0, 0, 0))
1108
local Part = CreatePart(3, Weapon1, "Metal", 0, 0, "Mid gray", "Part", VT(0.3,0.5,0.5),false)
1109
CreateWeldOrSnapOrMotor("Weld", Handle, Handle, Part, CF(0, -0.6, 0.5) * ANGLES(RAD(0), RAD(0), RAD(0)), CF(0, 0, 0))
1110
local Part = CreatePart(3, Weapon1, "Metal", 0, 0, "Mid gray", "Part", VT(0.4,0.4,0.4),false)
1111
MakeForm(Part,"Cyl")
1112
CreateWeldOrSnapOrMotor("Weld", Handle, Handle, Part, CF(0, -0.6, 0.5) * ANGLES(RAD(90), RAD(0), RAD(0)), CF(0, 0, 0))
1113
for i = 1, 8 do
1114
	local Piece = CreatePart(3, Weapon1, "Metal", 0, 0, "Mid gray", "Eye", VT(0,0.35,0.41),false)
1115
	CreateWeldOrSnapOrMotor("Weld", Handle, Part, Piece, CF(0, 0, 0) * ANGLES(RAD(0), RAD((360/8)*i), RAD(0)), CF(0, 0, 0))
1116
end
1117
local Part = CreatePart(3, Weapon1, "Metal", 0, 0, "Mid gray", "Eye", VT(0.38,0.41,0.38),false)
1118
MakeForm(Part,"Cyl")
1119
CreateWeldOrSnapOrMotor("Weld", Handle, Handle, Part, CF(0, -0.6, 0.5) * ANGLES(RAD(90), RAD(0), RAD(0)), CF(0, 0, 0))
1120
local Part = CreatePart(3, Weapon1, "Metal", 0, 0, "Mid gray", "Part", VT(0.37,0.5,0.37),false)
1121
MakeForm(Part,"Ball")
1122
CreateWeldOrSnapOrMotor("Weld", Handle, Handle, Part, CF(0, -0.6, 0.3) * ANGLES(RAD(90), RAD(0), RAD(0)), CF(0, 0, 0))
1123
local Part = CreatePart(3, Weapon1, "Metal", 0, 0, "Mid gray", "Part", VT(0.2,0.7,0.4),false)
1124
MakeForm(Part,"Wedge")
1125
CreateWeldOrSnapOrMotor("Weld", Handle, Handle, Part, CF(0, -0.7, 0.5) * ANGLES(RAD(90), RAD(180), RAD(180)), CF(0, 0, 0))
1126
local Part = CreatePart(3, Weapon1, "Metal", 0, 0, "Mid gray", "Part", VT(0.3,0.4,0.2),false)
1127
CreateWeldOrSnapOrMotor("Weld", Handle, Handle, Part, CF(0, -0.6, 0.7) * ANGLES(RAD(0), RAD(0), RAD(0)), CF(0, 0, 0))
1128
local Part = CreatePart(3, Weapon1, "Metal", 0, 0, "Mid gray", "Part", VT(0.35,0.35,0.35),false)
1129
MakeForm(Part,"Cyl")
1130
CreateWeldOrSnapOrMotor("Weld", Handle, Handle, Part, CF(0, -0.6, 0.7) * ANGLES(RAD(90), RAD(0), RAD(0)), CF(0, 0, 0))
1131
local Part = CreatePart(3, Weapon1, "Metal", 0, 0, "Mid gray", "Part", VT(0.5,0.1,0.5),false)
1132
MakeForm(Part,"Cyl")
1133
CreateWeldOrSnapOrMotor("Weld", Handle, Handle, Part, CF(0, -0.6, 1) * ANGLES(RAD(90), RAD(0), RAD(0)), CF(0, 0, 0))
1134
local Part = CreatePart(3, Weapon1, "Metal", 0, 0, "Mid gray", "Part", VT(0.5,0.1,0.45),false)
1135
MakeForm(Part,"Cyl")
1136
CreateWeldOrSnapOrMotor("Weld", Handle, Handle, Part, CF(0, -0.6, 1.1) * ANGLES(RAD(90), RAD(0), RAD(0)), CF(0, 0, 0))
1137
local Part = CreatePart(3, Weapon1, "Metal", 0, 0, "Mid gray", "Part", VT(0.2,0.5,0.2),false)
1138
MakeForm(Part,"Wedge")
1139
CreateWeldOrSnapOrMotor("Weld", Handle, Handle, Part, CF(0, -0.55, 0.2) * ANGLES(RAD(-135), RAD(0), RAD(0)), CF(0, -0.3, 0))
1140
local LASTPART = Handle
1141
for i = 1, 10 do
1142
	if LASTPART == Handle then
1143
		local Part = CreatePart(3, Weapon1, "Metal", 0, 0, "Mid gray", "Part", VT(0.1,0.2,0),false)
1144
		LASTPART = Part
1145
		CreateWeldOrSnapOrMotor("Weld", Handle, Handle, Part, CF(0, -0.1, 0.2) * ANGLES(RAD(90), RAD(0), RAD(0)), CF(0, 0, 0))
1146
	else
1147
		local Part = CreatePart(3, Weapon1, "Metal", 0, 0, "Mid gray", "Part", VT(0.1,0.05,0),false)
1148
		CreateWeldOrSnapOrMotor("Weld", Handle, LASTPART, Part, CF(0, 0.025, 0) * ANGLES(RAD(8), RAD(0), RAD(0)), CF(0, -0.025, 0))
1149
		LASTPART = Part
1150
	end
1151
end
1152
1153
local Barrel = CreatePart(3, Weapon1, "Metal", 0, 0, "Mid gray", "Part", VT(0.15,2,0.15),false)
1154
MakeForm(Barrel,"Cyl")
1155
CreateWeldOrSnapOrMotor("Weld", Handle, Handle, Barrel, CF(0, -0.6, 1.8) * ANGLES(RAD(90), RAD(0), RAD(0)), CF(0, 0, 0))
1156
local Part = CreatePart(3, Weapon1, "Metal", 0, 0, "Mid gray", "Part", VT(0.25,1,0.25),false)
1157
MakeForm(Part,"Cyl")
1158
CreateWeldOrSnapOrMotor("Weld", Handle, Barrel, Part, CF(0, -0.6, 0), CF(0, 0, 0))
1159
local Part = CreatePart(3, Weapon1, "Metal", 0, 0, "Mid gray", "Part", VT(0,0.1,0.2),false)
1160
MakeForm(Part,"Wedge")
1161
CreateWeldOrSnapOrMotor("Weld", Handle, Barrel, Part, CF(0, 0.945, 0.1) * ANGLES(RAD(180), RAD(0), RAD(0)), CF(0, 0, 0))
1162
local Hole = CreatePart(3, Weapon1, "Metal", 0, 0, "Mid gray", "Eye", VT(0.125,0,0.125),false)
1163
MakeForm(Hole,"Cyl")
1164
CreateWeldOrSnapOrMotor("Weld", Handle, Barrel, Hole, CF(0, 0.98, 0), CF(0, 0, 0))
1165
local Part = CreatePart(3, Weapon1, "Metal", 0, 0, "Mid gray", "Part", VT(0,0,0),false)
1166
local GEARWELD = CreateWeldOrSnapOrMotor("Weld", Handle, Handle, Part, CF(0, -0.6, 0.7), CF(0, 0, 0))
1167
CreateMesh("SpecialMesh", Part, "FileMesh", 156292343, "", VT(0.8,0.8,1.5), VT(0,0,0.2))
1168
local Part = CreatePart(3, Weapon1, "Metal", 0, 0.5, "Mid gray", "Eye", VT(0,0,0),false)
1169
local GEARWELD2 = CreateWeldOrSnapOrMotor("Weld", Handle, Handle, Part, CF(0, -0.6, 0.7), CF(0, 0, 0))
1170
CreateMesh("SpecialMesh", Part, "FileMesh", 156292343, "", VT(0.9,0.9,0.3), VT(0,0,0.2))
1171
coroutine.resume(coroutine.create(function()
1172
	while wait() do
1173
		GEARWELD.C0 = GEARWELD.C0 * ANGLES(RAD(0), RAD(0), RAD(5))
1174
		GEARWELD2.C0 = GEARWELD2.C0 * ANGLES(RAD(0), RAD(0), RAD(-5))
1175
	end
1176
end))
1177
--PARTICLES REEEEEEEEEEEEEEEEEEEEEEEEEEEEEEEEEEEEEEEEEEEEEEEEEEEEEEEEEEEEEEEEEEEEEEEEEEEEEEEEE
1178
--[[
1179
	YEAH BOIIIIIIIII
1180
	PARTICLE TIME
1181
--]]
1182
ParticleEmitter({Speed = 0.2, Drag = 0, Size1 = 0.1, Size2 = 0, Lifetime1 = 0.3, Lifetime2 = 0.5, Parent = Hole, Emit = 100, Offset = 360, Enabled = true, Acel = VT(0,5,0)})
1183
--ParticleEmitter3({Speed = 0, Drag = 0, Size1 = 20, Size2 = 25, Lifetime1 = 0.3, Lifetime2 = 1, Parent = Barrel, Emit = 100, Offset = 0, Enabled = true, Acel = VT(0,0,0)})
1184
ParticleEmitter({Speed = 0.5, Drag = 0, Size1 = 0.2, Size2 = 0, Lifetime1 = 0.3, Lifetime2 = 0.7, Parent = Dangle, Emit = 100, Offset = 360, Enabled = true, Acel = VT(0,5,0)})
1185
ParticleEmitter2({Speed = 0, Drag = 0, Size1 = .5, Size2 = 1, Lifetime1 = 1, Lifetime2 = 1, Parent = Hole, Emit = 20, Offset = 360, Enabled = true, Acel = VT(0,0,0)})
1186
ParticleEmitter2({Speed = 0, Drag = 0, Size1 = 3, Size2 = 1, Lifetime1 = 1, Lifetime2 = 2, Parent = Handle, Emit = 100, Offset = 360, Enabled = true, Acel = VT(0,0,0)})
1187
--Trails
1188
local A1 = Instance.new("Attachment",Barrel)
1189
local A2 = Instance.new("Attachment",Barrel)
1190
local Trail = Instance.new("Trail",Barrel)
1191
A1.Position = Vector3.new(0,1,0)
1192
A2.Position = Vector3.new(0,-0.8,0)
1193
Trail.Attachment0 = A1
1194
Trail.Attachment1 = A2
1195
Trail.LightEmission = 1
1196
Trail.Color = ColorSequence.new(Color3.new(0,0,255),Color3.new(0,255,255))
1197
Trail.Transparency = NumberSequence.new({NumberSequenceKeypoint.new(0,0.3),NumberSequenceKeypoint.new(0.3,.9),NumberSequenceKeypoint.new(1,1)})
1198
for _, c in pairs(Weapon1:GetDescendants()) do
1199
	if c.ClassName == "Part" and c.Name ~= "Eye" and c.Parent ~= Effects and c.Parent.Parent ~= Effects then
1200
		c.Material = "Glass"
1201
		c.Color = C3(0,0,0)
1202
	elseif c.ClassName == "Part" and c.Name == "Eye" then
1203
		c.Color = C3(0,0,1)
1204
		c.Material = "Neon"
1205
	end
1206
end
1207
1208
local TOBANISH = {}
1209
1210
Weapon1.Parent = Character
1211
for _, c in pairs(Weapon1:GetChildren()) do
1212
	if c.ClassName == "Part" then
1213
		c.CustomPhysicalProperties = PhysicalProperties.new(0, 0, 0, 0, 0)
1214
	end
1215
end
1216
1217
local SKILLTEXTCOLOR = C3(0,0,1)
1218
local SKILLFONT = "Antique"
1219
local SKILLTEXTSIZE = 7
1220
1221
Humanoid.Died:connect(function()
1222
	ATTACK = true
1223
end)
1224
1225
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")
1226
--[[local SKILL2FRAME = CreateFrame(WEAPONGUI, 1, 2, UD2(0.63, 0, 0.90, 0), UD2(0.26, 0, 0.07, 0), C3(0,0,0), C3(0, 0, 0), "Skill 2 Frame")
1227
local SKILL3FRAME = CreateFrame(WEAPONGUI, 1, 2, UD2(0.215, 0, 0.90, 0), UD2(0.26, 0, 0.07, 0), C3(0,0,0), C3(0, 0, 0), "Skill 3 Frame")
1228
local SKILL4FRAME = CreateFrame(WEAPONGUI, 1, 2, UD2(0.525, 0, 0.90, 0), UD2(0.26, 0, 0.07, 0), C3(0,0,0), C3(0, 0, 0), "Skill 4 Frame")
1229
local SKILL5FRAME = CreateFrame(WEAPONGUI, 1, 2, UD2(0.365, 0, 0.90, 0), UD2(0.26, 0, 0.07, 0), C3(0,0,0), C3(0, 0, 0), "Skill 5 Frame")
1230
--]]
1231
local SKILL1TEXT = CreateLabel(SKILL1FRAME, "[Z] Banisher Bullet", SKILLTEXTCOLOR, SKILLTEXTSIZE, SKILLFONT, 0, 2, 0.7, "Text 1")
1232
--[[local SKILL2TEXT = CreateLabel(SKILL2FRAME, "[B] Ability 2", SKILLTEXTCOLOR, SKILLTEXTSIZE, SKILLFONT, 0, 2, 0.7, "Text 2")
1233
local SKILL3TEXT = CreateLabel(SKILL3FRAME, "[C] Ability 3", SKILLTEXTCOLOR, SKILLTEXTSIZE, SKILLFONT, 0, 2, 0.7, "Text 3")
1234
local SKILL4TEXT = CreateLabel(SKILL4FRAME, "[V] Ability 4", SKILLTEXTCOLOR, SKILLTEXTSIZE, SKILLFONT, 0, 2, 0.7, "Text 4")
1235
local SKILL5TEXT = CreateLabel(SKILL5FRAME, "[X] Mercy", SKILLTEXTCOLOR, SKILLTEXTSIZE, SKILLFONT, 0, 2, 0.7, "Text 5")
1236
--]]
1237
function printbye(Name)
1238
	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, "}
1239
	warn(MESSAGES[MRANDOM(1,#MESSAGES)]..Name..".")
1240
		
1241
end
1242
1243
workspace.ChildAdded:connect(function(instance)
1244
    for BANISH = 1, #TOBANISH do
1245
		if TOBANISH[BANISH] ~= nil then
1246
			if instance.Name == TOBANISH[BANISH] then
1247
				coroutine.resume(coroutine.create(function()
1248
					printbye(instance.Name)
1249
					instance:ClearAllChildren()
1250
					Debris:AddItem(instance,0.0005)
1251
				end))
1252
			end
1253
		end
1254
	end
1255
end)
1256
1257
local Char = Character
1258
local Eye = CreatePart(3, Char, "Neon", 0, 0, "Really blue", "Eye", VT(0.6,0.1,1)/2,false)
1259
MakeForm(Eye,"Ball")
1260
CreateWeldOrSnapOrMotor("Weld", Eye, Head, Eye, CF(0,0.2,0) * ANGLES(RAD(0), RAD(-18), RAD(15)), CF(0, 0, 0.4))
1261
local Eye = CreatePart(3, Char, "Neon", 0, 0, "Really blue", "Eye", VT(0.6,0.1,1)/2,false)
1262
MakeForm(Eye,"Ball")
1263
CreateWeldOrSnapOrMotor("Weld", Eye, Head, Eye, CF(0,0.2,0) * ANGLES(RAD(0), RAD(18), RAD(-15)), CF(0, 0, 0.4))
1264
local Eye = CreatePart(3, Char, "Neon", 0, 0, "Really blue", "Eye", VT(0.1,1,1)/2,false)
1265
MakeForm(Eye,"Ball")
1266
CreateWeldOrSnapOrMotor("Weld", Eye, Head, Eye, CF(0,0.15,0) * ANGLES(RAD(0), RAD(-18), RAD(0)), CF(0, 0, 0.4))
1267
local Eye = CreatePart(3, Char, "Neon", 0, 0, "Really blue", "Eye", VT(0.1,1,1)/2,false)
1268
MakeForm(Eye,"Ball")
1269
CreateWeldOrSnapOrMotor("Weld", Eye, Head, Eye, CF(0,0.15,0) * ANGLES(RAD(0), RAD(18), RAD(0)), CF(0, 0, 0.4))
1270
1271
local top = Instance.new("Shirt")
1272
top.ShirtTemplate = "rbxassetid://1533327933"
1273
top.Parent = Character
1274
top.Name = "Cloth"
1275
local bottom = Instance.new("Pants")
1276
bottom.PantsTemplate = "rbxassetid://1689251873"
1277
bottom.Parent = Character
1278
bottom.Name = "Cloth"
1279
for _, c in pairs(Character:GetChildren()) do
1280
	if c.ClassName == "Part" and c.Name ~= "FaceGradient" and c.Name ~= "Hat" and c.Name ~= "Gem" then
1281
		c.Material = "Neon"
1282
		if c:FindFirstChildOfClass("ParticleEmitter") then
1283
			c:FindFirstChildOfClass("ParticleEmitter"):remove()
1284
		end
1285
		c.Color = C3(1,1,1)
1286
		if c == Head then
1287
			if c:FindFirstChild("face") then
1288
				c.face:remove()
1289
			end
1290
		end
1291
	elseif c.ClassName == "CharacterMesh" or c.ClassName == "Accessory" or c.ClassName == "Hat" or c.Name == "Body Colors" then
1292
		c:remove()
1293
	elseif (c.ClassName == "Shirt" or c.ClassName == "Pants") and c.Name ~= "Cloth" then
1294
		c:remove()
1295
	end
1296
end
1297
local BODY = {}
1298
for _, c in pairs(Character:GetDescendants()) do
1299
	if c:IsA("BasePart") and c.Name ~= "Handle" then
1300
		if c ~= RootPart and c ~= Torso and c ~= Head and c ~= RightArm and c ~= LeftArm and c ~= RightLeg and c ~= LeftLeg then
1301
			c.CustomPhysicalProperties = PhysicalProperties.new(0, 0, 0, 0, 0)
1302
		end
1303
		table.insert(BODY,{c,c.Parent,c.Material,c.Color,c.Transparency})
1304
	elseif c:IsA("JointInstance") then
1305
		table.insert(BODY,{c,c.Parent,nil,nil,nil})
1306
	end
1307
end
1308
for e = 1, #BODY do
1309
	if BODY[e] ~= nil then
1310
		local STUFF = BODY[e]
1311
		local PART = STUFF[1]
1312
		local PARENT = STUFF[2]
1313
		local MATERIAL = STUFF[3]
1314
		local COLOR = STUFF[4]
1315
		local TRANSPARENCY = STUFF[5]
1316
		if PART.ClassName == "Part" and PART ~= RootPart then
1317
			PART.Material = MATERIAL
1318
			PART.Color = COLOR
1319
			PART.Transparency = TRANSPARENCY
1320
		end
1321
		PART.AncestryChanged:Connect(function()
1322
			PART.Parent = PARENT
1323
		end)
1324
	end
1325
end
1326
function refit()
1327
	Character.Parent = workspace
1328
	for e = 1, #BODY do
1329
		if BODY[e] ~= nil then
1330
			local STUFF = BODY[e]
1331
			local PART = STUFF[1]
1332
			local PARENT = STUFF[2]
1333
			local MATERIAL = STUFF[3]
1334
			local COLOR = STUFF[4]
1335
			local TRANSPARENCY = STUFF[5]
1336
			if PART.ClassName == "Part" and PART ~= RootPart then
1337
				PART.Material = MATERIAL
1338
				PART.Color = COLOR
1339
				PART.Transparency = TRANSPARENCY
1340
			end
1341
			if PART.Parent ~= PARENT then
1342
				Humanoid:remove()
1343
				PART.Parent = PARENT
1344
				Humanoid = IT("Humanoid",Character)
1345
			end
1346
		end
1347
	end
1348
end
1349
local SKILLTEXTCOLOR = BRICKC"".Color
1350
local SKILLFONT = "Bodoni"
1351
local SKILLTEXTSIZE = 7
1352
1353
Humanoid.Died:connect(function()
1354
	refit()
1355
end)
1356
1357
1358
--//=================================\\
1359
--||			DAMAGING
1360
--\\=================================//
1361
1362
function ApplyAoE(POSITION,RANGE,FLING,BURN)
1363
	local CHILDREN = workspace:GetDescendants()
1364
	for index, CHILD in pairs(CHILDREN) do
1365
		if CHILD.ClassName == "Model" and CHILD ~= Character then
1366
			local HUM = CHILD:FindFirstChildOfClass("Humanoid")
1367
			if HUM then
1368
				local TORSO = CHILD:FindFirstChild("Torso") or CHILD:FindFirstChild("UpperTorso")
1369
				if TORSO then
1370
					if HUM.Health > 0 and (TORSO.Position - POSITION).Magnitude <= RANGE then
1371
						CHILD:BreakJoints()
1372
						if FLING ~= 0 then
1373
							for _, c in pairs(CHILD:GetChildren()) do
1374
								if c:IsA("BasePart") and c.Transparency == 0 then
1375
									if BURN == true then
1376
										Fire(c)
1377
									end
1378
									local bv = Instance.new("BodyVelocity") 
1379
									bv.maxForce = Vector3.new(1e9, 1e9, 1e9)
1380
									bv.velocity = CF(POSITION,TORSO.Position).lookVector*FLING
1381
									bv.Parent = c
1382
									Debris:AddItem(bv,0.05)
1383
								end
1384
							end
1385
						end
1386
					end
1387
				end
1388
			end
1389
		end
1390
	end
1391
end
1392
1393
function MagicSphere(SIZE, WAIT, CFRAME, COLOR, GROW)
1394
	local wave = CreatePart(3, Effects, "Neon", 0, 0, BRICKC(COLOR), "Effect", VT(1, 1, 1), true)
1395
	local mesh = IT("SpecialMesh", wave)
1396
	mesh.MeshType = "Sphere"
1397
	mesh.Scale = SIZE
1398
	mesh.Offset = VT(0, 0, 0)
1399
	wave.CFrame = CFRAME
1400
	coroutine.resume(coroutine.create(function(PART)
1401
		for i = 1, WAIT do
1402
			Swait()
1403
			mesh.Scale = mesh.Scale + GROW
1404
			wave.Transparency = wave.Transparency + 1 / WAIT
1405
			if wave.Transparency > 0.99 then
1406
				wave:remove()
1407
			end
1408
		end
1409
	end))
1410
end
1411
1412
function CastWarpOutlines(TARGET)
1413
	coroutine.resume(coroutine.create(function()
1414
		local T = TARGET:GetChildren()
1415
		for i = 1, #T do
1416
			local child = T[i]
1417
			if child.ClassName == "Part" or child.ClassName == "MeshPart" then
1418
				do
1419
					local clone = child:Clone()
1420
					clone.Parent = Effects
1421
					clone.Anchored = true
1422
					clone.CanCollide = false
1423
					clone:ClearAllChildren()
1424
					clone.CFrame = child.CFrame
1425
					if clone.Name == "Head" then
1426
						clone.Size = VT(clone.Size.Y, clone.Size.Y, clone.Size.Y)
1427
					end
1428
					if clone.ClassName == "MeshPart" then
1429
						clone.TextureID = ""
1430
					end
1431
					clone.Color = C3(1, 0, 0)
1432
					clone.Material = "Neon"
1433
					coroutine.resume(coroutine.create(function()
1434
						for i = 1, 100 do
1435
							Swait()
1436
							clone.Transparency = clone.Transparency + 0.01
1437
							clone.Size = clone.Size + VT(0.001, 0.001, 0.001)
1438
						end
1439
						clone:remove()
1440
					end))
1441
				end
1442
			end
1443
		end
1444
	end))
1445
end
1446
1447
local Delete = IT("Model", Character)
1448
Delete.Name = "Those who must be banished."
1449
1450
function killnearest(position, range, maxstrength)
1451
	for i, v in ipairs(workspace:GetChildren()) do
1452
		local body = v:GetChildren()
1453
		for part = 1, #body do
1454
			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
1455
				CastWarpOutlines(v)
1456
				v:remove()
1457
				if game.Players:FindFirstChild(v.Name) then
1458
					local Value = IT("BoolValue", Delete)
1459
					Value.Name = v.Name
1460
				end
1461
			end
1462
		end
1463
	end
1464
end
1465
1466
function Kill(Char)
1467
	local NewCharacter = IT("Model",Effects)
1468
	NewCharacter.Name = "Ow im ded ;-;"
1469
	for _, c in pairs(Char:GetDescendants()) do
1470
		if c:IsA("BasePart") and c.Transparency == 0 then
1471
			if c.Parent == Char then
1472
				getbloody(c,5)
1473
			end
1474
			c:BreakJoints()
1475
			c.Material = "Glass"
1476
			c.Color = C3(0.5,0,0)
1477
			c.CanCollide = true
1478
			c.Transparency = 0.3
1479
			if c:FindFirstChildOfClass("SpecialMesh") then
1480
				c:FindFirstChildOfClass("SpecialMesh").TextureId = ""
1481
			end
1482
			if c.Name == "Head" then
1483
				c:ClearAllChildren()
1484
				c.Size = VT(c.Size.Y,c.Size.Y,c.Size.Y)
1485
			end
1486
			if c.ClassName == "MeshPart" then
1487
				c.TextureID = ""
1488
			end
1489
			if c:FindFirstChildOfClass("BodyPosition") then
1490
				c:FindFirstChildOfClass("BodyPosition"):remove()
1491
			end
1492
			if c:FindFirstChildOfClass("ParticleEmitter") then
1493
				c:FindFirstChildOfClass("ParticleEmitter"):remove()
1494
			end
1495
			c.Parent = NewCharacter
1496
			c.Name = "DeadPart"
1497
			c.Velocity = VT(MRANDOM(-45,45),MRANDOM(-45,45),MRANDOM(-45,45))/15
1498
			c.RotVelocity = VT(MRANDOM(-45,45),MRANDOM(-15,85),MRANDOM(-45,45))
1499
		end
1500
	end
1501
	Char:remove()
1502
	Debris:AddItem(NewCharacter,5)
1503
end
1504
1505
local asd = Instance.new("ParticleEmitter")
1506
asd.Color = ColorSequence.new(Color3.new(0.5, 0, 0), Color3.new(.3, 0, 0))
1507
asd.LightEmission = .1
1508
asd.Texture = "http://www.roblox.com/asset/?ID=291880914"
1509
aaa = NumberSequence.new({NumberSequenceKeypoint.new(0, 0.6),NumberSequenceKeypoint.new(1, 2)})
1510
bbb = NumberSequence.new({NumberSequenceKeypoint.new(0, 1),NumberSequenceKeypoint.new(0.0636, 0), NumberSequenceKeypoint.new(1, 1)})
1511
asd.Transparency = bbb
1512
asd.Size = aaa
1513
asd.ZOffset = .9
1514
asd.Acceleration = Vector3.new(0, -15, 0)
1515
asd.LockedToPart = false
1516
asd.EmissionDirection = "Back"
1517
asd.Lifetime = NumberRange.new(1, 2)
1518
asd.Rotation = NumberRange.new(-100, 100)
1519
asd.RotSpeed = NumberRange.new(-100, 100)
1520
asd.Speed = NumberRange.new(10)
1521
asd.Enabled = false
1522
asd.VelocitySpread = 999
1523
1524
function getbloody(victim,amount)
1525
	local PART = CreatePart(3, Effects, "Metal", 0, 1, "Mid gray", "Blood", victim.Size)
1526
	PART.CFrame = victim.CFrame
1527
	local HITPLAYERSOUNDS = {"356551938","264486467"}
1528
	Debris:AddItem(PART,5)
1529
	CreateSound(HITPLAYERSOUNDS[MRANDOM(1, #HITPLAYERSOUNDS)], PART, 1, (math.random(8,12)/10))
1530
	CreateSound(HITPLAYERSOUNDS[MRANDOM(1, #HITPLAYERSOUNDS)], PART, 1, (math.random(8,12)/10))
1531
	CreateSound(HITPLAYERSOUNDS[MRANDOM(1, #HITPLAYERSOUNDS)], PART, 1, (math.random(8,12)/10))
1532
	local prtcl = asd:Clone()
1533
	prtcl.Parent = PART
1534
	prtcl:Emit(amount*10)
1535
end
1536
--//=================================\\
1537
--||	ATTACK FUNCTIONS AND STUFF
1538
--\\=================================//
1539
local LAUGHS = {834001699,834001752,834001797,834001828}
1540
1541
local RightHole = CreatePart(3, Character, "Metal", 0, 0, "Mid gray", "Eye", VT(0.2,0,0.2),false)
1542
MakeForm(RightHole,"Cyl")
1543
local LeftHole = CreatePart(3, Character, "Metal", 0, 0, "Mid gray", "Eye", VT(0.2,0,0.2),false)
1544
MakeForm(LeftHole,"Cyl")
1545
1546
function Deathbound()
1547
	CreateSound(LAUGHS[MRANDOM(1,#LAUGHS)], Torso, 10, 1, false)
1548
	ATTACK = true
1549
	Rooted = true
1550
	for i=0, 1, 0.1 / Animation_Speed do
1551
		Swait()
1552
		RootJoint.C0 = Clerp(RootJoint.C0,ROOTC0 * CF(0, 0, 1 + 0.25 * COS(SINE / 12)) * ANGLES(RAD(0), RAD(0), RAD(0)), 1 / Animation_Speed)
1553
		Neck.C0 = Clerp(Neck.C0, NECKC0 * CF(0, 0, 0 + ((1) - 1)) * ANGLES(RAD(15 - 2.5 * SIN(SINE / 12)), RAD(0), RAD(0)), 1 / Animation_Speed)
1554
		RightShoulder.C0 = Clerp(RightShoulder.C0, CF(1.5, 1, 0) * ANGLES(RAD(15), RAD(0), RAD(12)) * RIGHTSHOULDERC0, 1 / Animation_Speed)
1555
		LeftShoulder.C0 = Clerp(LeftShoulder.C0, CF(-1.5, 1, 0) * ANGLES(RAD(15), RAD(0), RAD(-12)) * LEFTSHOULDERC0, 1 / Animation_Speed)
1556
		RightHip.C0 = Clerp(RightHip.C0, CF(1, -1, -0.01) * ANGLES(RAD(-35-2.5 * SIN(SINE / 12)), RAD(75), RAD(0)) * ANGLES(RAD(-8 - 2.5 * SIN(SINE / 12)), RAD(0), RAD(0)), 1 / Animation_Speed)
1557
		LeftHip.C0 = Clerp(LeftHip.C0, CF(-1, -0.5, -0.5) * ANGLES(RAD(-35-2.5 * SIN(SINE / 12)), RAD(-90), RAD(0)) * ANGLES(RAD(-8 - 2.5 * SIN(SINE / 12)), RAD(0), RAD(0)), 1 / Animation_Speed)
1558
	end
1559
	local DONE = false
1560
	local GATE = nil
1561
	local GATESPIN = true
1562
	coroutine.resume(coroutine.create(function()
1563
		repeat
1564
			Swait()
1565
			if GATE ~= nil then
1566
				GATE.CFrame = GATE.CFrame * ANGLES(RAD(0), RAD(-3), RAD(0))
1567
			end
1568
		until GATESPIN == false
1569
	end))
1570
	coroutine.resume(coroutine.create(function()
1571
		repeat
1572
			Swait()
1573
			RootJoint.C0 = Clerp(RootJoint.C0,ROOTC0 * CF(0, 0, 0.2 - 0.25 * COS(SINE / 12)) * ANGLES(RAD(15), RAD(0), RAD(0)), 1 / Animation_Speed)
1574
			Neck.C0 = Clerp(Neck.C0, NECKC0 * CF(0, 0, 0 + ((1) - 1)) * ANGLES(RAD(5 - 2.5 * SIN(SINE / 12)), RAD(0), RAD(0)), 1 / Animation_Speed)
1575
			RightShoulder.C0 = Clerp(RightShoulder.C0, CF(1.5, 0.5 + 0.25 * COS(SINE / 12), 0) * ANGLES(RAD(15), RAD(0), RAD(5)) * RIGHTSHOULDERC0, 1 / Animation_Speed)
1576
			LeftShoulder.C0 = Clerp(LeftShoulder.C0, CF(-1.5, 0.5 + 0.25 * COS(SINE / 12), 0) * ANGLES(RAD(15), RAD(0), RAD(-5)) * LEFTSHOULDERC0, 1 / Animation_Speed)
1577
			RightHip.C0 = Clerp(RightHip.C0, CF(1, -1, -0.01) * ANGLES(RAD(-35-2.5 * SIN(SINE / 12)), RAD(75), RAD(0)) * ANGLES(RAD(-8 - 2.5 * SIN(SINE / 12)), RAD(0), RAD(0)), 1 / Animation_Speed)
1578
			LeftHip.C0 = Clerp(LeftHip.C0, CF(-1, -0.5, -0.5) * ANGLES(RAD(-35-2.5 * SIN(SINE / 12)), RAD(-90), RAD(0)) * ANGLES(RAD(-8 - 2.5 * SIN(SINE / 12)), RAD(0), RAD(0)), 1 / Animation_Speed)
1579
		until DONE == true
1580
		Swait(50)
1581
		for i = 1, 35 do
1582
			Swait(4)
1583
			local FIRED = false
1584
			local CHILDREN = workspace:GetDescendants()
1585
			for index, CHILD in pairs(CHILDREN) do
1586
				if CHILD.ClassName == "Model" and CHILD ~= Character then
1587
					local HUM = CHILD:FindFirstChildOfClass("Humanoid")
1588
					if HUM then
1589
						local TORSO = CHILD:FindFirstChild("Torso") or CHILD:FindFirstChild("UpperTorso")
1590
						if TORSO then
1591
							if (TORSO.Position - GATE.Position).Magnitude <= GATE.Size.X/2.5 + TORSO.Size.Magnitude/5 then
1592
								local HITFLOOR,HITPOS = Raycast(TORSO.Position, (CF(TORSO.Position, TORSO.Position + VT(0, -1, 0))).lookVector, 15, Character)
1593
								local CFRAME = CF(HITPOS)*ANGLES(RAD(MRANDOM(-15,15)),RAD(MRANDOM(-15,15)),RAD(MRANDOM(-15,15)))
1594-
								WACKYEFFECT({Time = 25, EffectType = "Wave", Size = VT(0.3,0,0.3), Size2 = VT(1,1.5,1), Transparency = 0, Transparency2 = 1, CFrame = CFRAME, MoveToPos = CFRAME*CF(0,0.5,0).p, RotationX = 0, RotationY = -15, RotationZ = 0, Material = "Neon", Color = C3(58,125,21), SoundID = 213603013, SoundPitch = 1.5, SoundVolume = 6})
1594+
								WACKYEFFECT({Time = 25, EffectType = "Wave", Size = VT(0.3,0,0.3), Size2 = VT(1,1.5,1), Transparency = 0, Transparency2 = 1, CFrame = CFRAME, MoveToPos = CFRAME*CF(0,0.5,0).p, RotationX = 0, RotationY = -15, RotationZ = 0, Material = "Neon", Color = C3(58,125,21), SoundID = 1479647856, SoundPitch = 1.5, SoundVolume = 6})
1595
								WACKYEFFECT({Time = 25, EffectType = "Wave", Size = VT(0.3,0,0.3), Size2 = VT(2,0.5,2), Transparency = 0, Transparency2 = 1, CFrame = CFRAME, MoveToPos = nil, RotationX = 0, RotationY = -15, RotationZ = 0, Material = "Neon", Color = C3(58,125,21), SoundID = nil, SoundPitch = nil, SoundVolume = nil})
1596
								SpawnTrail(CFRAME.p,CFRAME*CF(0,1000,0).p)		
1597
								Kill(CHILD)
1598
								FIRED = true
1599
								break
1600
							end
1601
						end
1602
					end
1603
				end
1604
			end
1605
			if FIRED == false then
1606
				local CFRAME = GATE.CFrame*ANGLES(RAD(0),RAD(MRANDOM(0,360)),RAD(0))*CF(0,0,MRANDOM(2,math.ceil(GATE.Size.X/2.5)))*ANGLES(RAD(MRANDOM(-15,15)),RAD(MRANDOM(-15,15)),RAD(MRANDOM(-15,15)))
1607
				WACKYEFFECT({Time = 25, EffectType = "Wave", Size = VT(0.3,0,0.3), Size2 = VT(1,1.5,1), Transparency = 0, Transparency2 = 1, CFrame = CFRAME, MoveToPos = CFRAME*CF(0,0.5,0).p, RotationX = 0, RotationY = -15, RotationZ = 0, Material = "Neon", Color = C3(58,125,21), SoundID = 213603013, SoundPitch = 1.5, SoundVolume = 6})
1608
				WACKYEFFECT({Time = 25, EffectType = "Wave", Size = VT(0.3,0,0.3), Size2 = VT(2,0.5,2), Transparency = 0, Transparency2 = 1, CFrame = CFRAME, MoveToPos = nil, RotationX = 0, RotationY = -15, RotationZ = 0, Material = "Neon", Color = C3(58,125,21), SoundID = nil, SoundPitch = nil, SoundVolume = nil})
1609
				SpawnTrail(CFRAME.p,CFRAME*CF(0,1000,0).p)
1610
				local HITBOD = Raycast(CFRAME.p, (CF(CFRAME.p, CFRAME.p + VT(0, 1, 0))).lookVector, 1000, Character)
1611
				if HITBOD ~= nil then
1612
					if HITBOD.Parent:FindFirstChildOfClass("Humanoid") then
1613
						killnearest(HITBOD.Parent)
1614
					end
1615
				end
1616
			end
1617
		end
1618
		for i = 1, 45 do
1619
			Swait()
1620
			GATE.Size = GATE.Size - VT(3,0,3)
1621
		end
1622
		GATESPIN = false
1623
		GATE:remove()
1624
	end))
1625
	Swait(15)
1626
	local HITFLOOR,HITPOS = Raycast(RootPart.Position, (CF(RootPart.Position, RootPart.Position + VT(0, -1, 0))).lookVector, 15, Character)
1627
	GATE = CreatePart(3, Effects, "Neon", 0, 1, "Teal", "Gate", VT(0,0,0))
1628
	local DECAL = IT("Decal",GATE)
1629
	DECAL.Texture = "http://www.roblox.com/asset/?id=647661410"
1630
	DECAL.Face = "Top"
1631
	GATE.CFrame = CF(HITPOS)
1632
	CreateSound(160772554, GATE, 7, 1.3, false)
1633
	for i = 1, 45 do
1634
		Swait()
1635
		GATE.Size = GATE.Size + VT(3,0,3)
1636
	end
1637
	CreateSound(213603013, RightHole, 7, 1, false)
1638
	CreateSound(213603013, LeftHole, 7, 1, false)
1639
	WACKYEFFECT({Time = 25, EffectType = "Wave", Size = VT(0.3,0,0.3), Size2 = VT(2,2,2), Transparency = 0, Transparency2 = 1, CFrame = RightHole.CFrame*CF(0,-1,0) * ANGLES(RAD(180), RAD(0), RAD(0)), MoveToPos = nil, RotationX = 0, RotationY = -5, RotationZ = 0, Material = "Neon", Color = C3(58,125,21), SoundID = nil, SoundPitch = nil, SoundVolume = nil})
1640
	WACKYEFFECT({Time = 25, EffectType = "Wave", Size = VT(0.3,0,0.3), Size2 = VT(2,2,2), Transparency = 0, Transparency2 = 1, CFrame = LeftHole.CFrame*CF(0,-1,0) * ANGLES(RAD(180), RAD(0), RAD(0)), MoveToPos = nil, RotationX = 0, RotationY = 5, RotationZ = 0, Material = "Neon", Color = C3(58,125,21), SoundID = nil, SoundPitch = nil, SoundVolume = nil})
1641
	ATTACK = false
1642
	Rooted = false
1643
	DONE = true
1644
end
1645
1646
function Morning_Star()
1647
	ATTACK = true
1648
	Rooted = true
1649
	CreateSound(LAUGHS[MRANDOM(1,#LAUGHS)], Torso, 7, 1, false)
1650
	for i=0, 1, 0.1 / Animation_Speed do
1651
		Swait()
1652
		RootJoint.C0 = Clerp(RootJoint.C0,ROOTC0 * CF(0, 0, 0  + 0.25 * COS(SINE / 12)) * ANGLES(RAD(0), RAD(0), RAD(0)), 1 / Animation_Speed)
1653
		Neck.C0 = Clerp(Neck.C0, NECKC0 * CF(0, 0, 0 + ((1) - 1)) * ANGLES(RAD(15 - 2.5 * SIN(SINE / 12)), RAD(0), RAD(0)), 1 / Animation_Speed)
1654
		RightShoulder.C0 = Clerp(RightShoulder.C0, CF(1.5, 0.5, -0.5) * ANGLES(RAD(0), RAD(0), RAD(-85)) * RIGHTSHOULDERC0, 1 / Animation_Speed)
1655
		LeftShoulder.C0 = Clerp(LeftShoulder.C0, CF(-1.5, 0.15, -0.5) * ANGLES(RAD(-15), RAD(0), RAD(85)) * LEFTSHOULDERC0, 1 / Animation_Speed)
1656
		RightHip.C0 = Clerp(RightHip.C0, CF(1, -1, -0.01) * ANGLES(RAD(-2.5 * SIN(SINE / 12)), RAD(75), RAD(0)) * ANGLES(RAD(-8 - 2.5 * SIN(SINE / 12)), RAD(0), RAD(0)), 1 / Animation_Speed)
1657
		LeftHip.C0 = Clerp(LeftHip.C0, CF(-1, -0.5, -0.5) * ANGLES(RAD(-2.5 * SIN(SINE / 12)), RAD(-90), RAD(0)) * ANGLES(RAD(-8 - 2.5 * SIN(SINE / 12)), RAD(0), RAD(0)), 1 / Animation_Speed)
1658
	end	
1659
	coroutine.resume(coroutine.create(function()
1660
		local POS = Mouse.Hit.p
1661
		local RAY = CreatePart(3, Effects, "Neon", 0, 0, "Teal", "Strike", VT(0,2000,0))
1662
		MakeForm(RAY,"Cyl")
1663
		local SPHERE = CreatePart(3, Effects, "Neon", 0, 0, "Teal", "Strike", VT(0,0,0))
1664
		MakeForm(SPHERE,"Ball")
1665
		local SHIELD = CreatePart(3, Effects, "Neon", 0, 0.5, "Really blue", "Strike", VT(0,0,0))
1666
		MakeForm(SHIELD,"Ball")
1667
		SHIELD.CFrame = CF(POS)
1668
		RAY.CFrame = CF(POS)
1669
		SPHERE.CFrame = CF(POS)
1670
		CreateSound(144699494, SPHERE, 10, 0.8, false)
1671
		CreateSound(1146688617, SPHERE, 10, 0.8, false)
1672
		for i = 1, 200 do
1673
			Swait()
1674
			WACKYEFFECT({Time = 15, EffectType = "Wave", Size = VT(0,0,0), Size2 = VT(SPHERE.Size.X*1.2,5+(i),SPHERE.Size.X*1.2), Transparency = 0, Transparency2 = 1, CFrame = SPHERE.CFrame*ANGLES(RAD(0), RAD(i), RAD(0)), MoveToPos = nil, RotationX = 0, RotationY = i, RotationZ = 0, Material = "Neon", Color = C3(58,125,21), SoundID = nil, SoundPitch = nil, SoundVolume = nil})
1675
			RAY.Size = RAY.Size + VT(0.05,0,0.05)
1676
			SPHERE.Size = SPHERE.Size + VT(2,2,2)
1677
			SHIELD.Size = SPHERE.Size + VT(3,3,3)
1678
			ApplyAoE(SPHERE.Position,SPHERE.Size.X/2,true)
1679
		end	
1680
		for i = 1, 45 do
1681
			Swait()
1682
			RAY.Transparency = RAY.Transparency + 1/45
1683
			SPHERE.Transparency = RAY.Transparency 
1684
			SHIELD.Transparency = SPHERE.Transparency + 1/45
1685
		end
1686
		RAY:remove()
1687
		SHIELD:remove()
1688
		SPHERE:remove()
1689
	end))
1690
	for i=0, 1, 0.1 / Animation_Speed do
1691
		Swait()
1692
		RootJoint.C0 = Clerp(RootJoint.C0,ROOTC0 * CF(0, 0, 0  + 0.25 * COS(SINE / 12)) * ANGLES(RAD(-35), RAD(0), RAD(0)), 1 / Animation_Speed)
1693
		Neck.C0 = Clerp(Neck.C0, NECKC0 * CF(0, 0, 0 + ((1) - 1)) * ANGLES(RAD(-15 - 2.5 * SIN(SINE / 12)), RAD(0), RAD(0)), 1 / Animation_Speed)
1694
		RightShoulder.C0 = Clerp(RightShoulder.C0, CF(1.5, 0.5, -0.15) * ANGLES(RAD(65), RAD(-45), RAD(85)) * RIGHTSHOULDERC0, 1 / Animation_Speed)
1695
		LeftShoulder.C0 = Clerp(LeftShoulder.C0, CF(-1.5, 0.5, -0.15) * ANGLES(RAD(65), RAD(45), RAD(-85)) * LEFTSHOULDERC0, 1 / Animation_Speed)
1696
		RightHip.C0 = Clerp(RightHip.C0, CF(1, -1, -0.01) * ANGLES(RAD(-35-2.5 * SIN(SINE / 12)), RAD(75), RAD(0)) * ANGLES(RAD(-8 - 2.5 * SIN(SINE / 12)), RAD(0), RAD(0)), 1 / Animation_Speed)
1697
		LeftHip.C0 = Clerp(LeftHip.C0, CF(-1, -0.5, -0.5) * ANGLES(RAD(-35-2.5 * SIN(SINE / 12)), RAD(-90), RAD(0)) * ANGLES(RAD(-8 - 2.5 * SIN(SINE / 12)), RAD(0), RAD(0)), 1 / Animation_Speed)
1698
	end
1699
	ATTACK = false
1700
	Rooted = false
1701
end
1702
1703
function Teleport()
1704
	ATTACK = true
1705
	Rooted = false
1706
	for i=0, 0.5, 0.1 / Animation_Speed do
1707
		Swait()
1708
		Neck.C0 = Clerp(Neck.C0, NECKC0 * CF(0, 0, 0 + ((1) - 1)) * ANGLES(RAD(15 - 2.5 * SIN(SINE / 12)), RAD(0), RAD(0)), 1 / Animation_Speed)
1709
		RightShoulder.C0 = Clerp(RightShoulder.C0, CF(1.6, 0.75, -0.5) * ANGLES(RAD(0), RAD(-25), RAD(12)) * ANGLES(RAD(125 - 2.5 * COS(SINE / 12) + 2.5 * SIN(SINE / 12)), RAD(0), RAD(0)) * RIGHTSHOULDERC0, 1.5 / Animation_Speed)
1710
	end
1711
	for e = 1, #BODY do
1712
		if BODY[e] ~= nil then
1713
			local STUFF = BODY[e]
1714
			local PART = STUFF[1]
1715
			if PART:IsA("BasePart") and PART ~= RootPart and PART.Name ~= "FaceGradient" and PART.Name ~= "Hair" and PART.Transparency ~= 1 then
1716
				local PRT = PART:Clone()
1717
				PRT.Anchored = true
1718
				PRT.CanCollide = false
1719
				PRT.Material = "Neon"
1720
				PRT.Color = C3(0,0,1)
1721
				PRT.Name = "WarpEffect"
1722
				PRT.Parent = Effects
1723
				PRT.CFrame = PART.CFrame
1724
				PRT:BreakJoints()
1725
				if PRT:FindFirstChildOfClass("Sound") then
1726
					PRT:FindFirstChildOfClass("Sound"):remove()
1727
				end
1728
				if PRT:FindFirstChildOfClass("Decal") then
1729
					PRT:FindFirstChildOfClass("Decal"):remove()
1730
				end
1731
				coroutine.resume(coroutine.create(function()
1732
					for i = 1, 100 do
1733
						Swait()
1734
						PRT.Transparency = PRT.Transparency + 1/100
1735
					end
1736
					PRT:remove()
1737
				end))
1738
			end
1739
		end
1740
	end
1741
	CreateSound(217767125, Torso, 10, 1)
1742
	local POS = RootPart.Orientation
1743
	RootPart.CFrame = CF(Mouse.Hit.p+VT(0,6,0))
1744
	RootPart.Orientation = POS
1745
	RootJoint.Parent = RootPart
1746
	for i=0, 0.5, 0.1 / Animation_Speed do
1747
		Swait()
1748
		Neck.C0 = Clerp(Neck.C0, NECKC0 * CF(0, 0, 0 + ((1) - 1)) * ANGLES(RAD(15 - 2.5 * SIN(SINE / 12)), RAD(0), RAD(0)), 1 / Animation_Speed)
1749
		RightShoulder.C0 = Clerp(RightShoulder.C0, CF(1.6, 0.75, -0.5) * ANGLES(RAD(0), RAD(-15), RAD(12)) * ANGLES(RAD(175 - 2.5 * COS(SINE / 12) + 2.5 * SIN(SINE / 12)), RAD(0), RAD(0)) * RIGHTSHOULDERC0, 2.5 / Animation_Speed)
1750
	end
1751
	for i=0, 0.1, 0.1 / Animation_Speed do
1752
		Swait()
1753
		RightShoulder.C0 = Clerp(RightShoulder.C0, CF(1, 0.5, 0.5) * ANGLES(RAD(0), RAD(-45), RAD(12)) * ANGLES(RAD(45 - 2.5 * COS(SINE / 12) + 2.5 * SIN(SINE / 12)), RAD(0), RAD(0)) * RIGHTSHOULDERC0, 0.75 / Animation_Speed)
1754
	end
1755
	ATTACK = false
1756
	Rooted = false
1757
end
1758
1759
function turnto(position)
1760
	RootPart.CFrame=CFrame.new(RootPart.CFrame.p,VT(position.X,RootPart.Position.Y,position.Z)) * CFrame.new(0, 0, 0)
1761
end
1762
1763
function Banish(Foe)
1764
	if Foe then
1765
		coroutine.resume(coroutine.create(function()
1766
			--if game.Players:FindFirstChild(Foe.Name) then
1767
				table.insert(TOBANISH,Foe.Name)
1768
				printbye(Foe.Name)
1769
			--end
1770
			Foe.Archivable = true
1771
			local CLONE = Foe:Clone()
1772
			Foe:Destroy()
1773
			CLONE.Parent = Effects
1774
			CLONE:BreakJoints()
1775
			local MATERIALS = {"Glass","Neon"}
1776
			for _, c in pairs(CLONE:GetDescendants()) do
1777
				if c:IsA("BasePart") then
1778
					if c.Name == "Torso" or c.Name == "UpperTorso" or c == CLONE.PrimaryPart then
1779
 						CreateSound(340722848, c, 10, 1, false)
1780
					end
1781
					c.Anchored = true
1782
					c.Transparency = c.Transparency + 0.2
1783
					c.Material = MATERIALS[MRANDOM(1,2)]
1784
					c.Color = C3(0,0,255)
1785
					if c.ClassName == "MeshPart" then
1786
						c.TextureID = ""
1787
					end
1788
					if c:FindFirstChildOfClass("SpecialMesh") then
1789
						c:FindFirstChildOfClass("SpecialMesh").TextureId = ""
1790
					end
1791
					if c:FindFirstChildOfClass("Decal") then
1792
						c:FindFirstChildOfClass("Decal"):remove()
1793
					end
1794
					c.Name = "Banished"
1795
					c.CanCollide = false
1796
				else
1797
					c:remove()
1798
				end
1799
			end
1800
			local A = false
1801
			for i = 1, 35 do
1802
				if A == false then
1803
					A = true
1804
				elseif A == true then
1805
					A = false
1806
				end
1807
				for _, c in pairs(CLONE:GetDescendants()) do
1808
					if c:IsA("BasePart") then
1809
						c.Anchored = true
1810
						c.Material = MATERIALS[MRANDOM(1,2)]
1811
						c.Transparency = c.Transparency + 0.8/35
1812
						if A == false then
1813
							c.CFrame = c.CFrame*CF(MRANDOM(-45,45)/45,MRANDOM(-45,45)/45,MRANDOM(-45,45)/45)
1814
						elseif A == true then
1815
							c.CFrame = c.CFrame*CF(MRANDOM(-45,45)/45,MRANDOM(-45,45)/45,MRANDOM(-45,45)/45)						
1816
						end
1817
					end
1818
				end
1819
				Swait()
1820
			end
1821
			CLONE:remove()
1822
		end))
1823
	end
1824
end
1825
1826
function ApplyAoE(POSITION,RANGE,ISBANISH)
1827
	local CHILDREN = workspace:GetDescendants()
1828
	for index, CHILD in pairs(CHILDREN) do
1829
		if CHILD.ClassName == "Model" and CHILD ~= Character then
1830
			local HUM = CHILD:FindFirstChildOfClass("Humanoid")
1831
			if HUM then
1832
				local TORSO = CHILD:FindFirstChild("Torso") or CHILD:FindFirstChild("UpperTorso")
1833
				if TORSO then
1834
					if (TORSO.Position - POSITION).Magnitude <= RANGE then
1835
						if ISBANISH == true then
1836
							Banish(CHILD)
1837
						else
1838
							if ISBANISH == "Gravity" then
1839
								HUM.PlatformStand = true
1840
								if TORSO:FindFirstChild("V3BanishForce"..Player.Name) then
1841
									local grav = Instance.new("BodyPosition",TORSO)
1842
									grav.D = 15
1843
									grav.P = 20000
1844
									grav.maxForce = Vector3.new(math.huge,math.huge,math.huge)
1845
									grav.position = TORSO.Position
1846
									grav.Name = "V3BanishForce"..Player.Name
1847
								else
1848
									TORSO:FindFirstChild("V3BanishForce"..Player.Name).position = TORSO.Position+VT(0,0.3,0)
1849
									TORSO.RotVelocity = VT(MRANDOM(-25,25),MRANDOM(-25,25),MRANDOM(-25,25))
1850
								end
1851
							else
1852
								HUM.PlatformStand = false
1853
							end
1854
						end
1855
					elseif ISBANISH == "Gravity" then
1856
						if TORSO:FindFirstChild("V3BanishForce"..Player.Name) then
1857
							TORSO:FindFirstChild("V3BanishForce"..Player.Name):remove()
1858
							HUM.PlatformStand = false
1859
						end
1860
					end
1861
				end
1862
			end
1863
		end
1864
	end
1865
end
1866
1867
function SpawnTrail(FROM,TO,BIG)
1868
	local TRAIL = CreatePart(3, Effects, "Neon", 0, 0.5, "Cyan", "Trail", VT(0,0,0))
1869
	MakeForm(TRAIL,"Cyl")
1870
	local DIST = (FROM - TO).Magnitude
1871
	if BIG == true then
1872
		TRAIL.Size = VT(0.5,DIST,0.5)
1873
	else
1874
		TRAIL.Size = VT(0.25,DIST,0.25)
1875
	end
1876
	TRAIL.CFrame = CF(FROM, TO) * CF(0, 0, -DIST/2) * ANGLES(RAD(90),RAD(0),RAD(0))
1877
	coroutine.resume(coroutine.create(function()
1878
		for i = 1, 5 do
1879
			Swait()
1880
			TRAIL.Transparency = TRAIL.Transparency + 0.1
1881
		end
1882
		TRAIL:remove()
1883
	end))
1884
end
1885
1886
function Banisher_Bullet()
1887
	ATTACK = true
1888
	Rooted = false
1889
	for i=0, 0.4, 0.1 / Animation_Speed do
1890
		Swait()
1891
		turnto(Mouse.Hit.p)
1892
		RootJoint.C0 = Clerp(RootJoint.C0,ROOTC0 * CF(0, 0, 0) * ANGLES(RAD(0), RAD(0), RAD(90)), 0.5 / Animation_Speed)
1893
		Neck.C0 = Clerp(Neck.C0, NECKC0 * CF(0, 0, 0) * ANGLES(RAD(0), RAD(0), RAD(-90)), 0.5 / Animation_Speed)
1894
		LeftShoulder.C0 = Clerp(LeftShoulder.C0, CF(1.5, 0.5, 0) * ANGLES(RAD(90), RAD(0), RAD(90)) * LEFTSHOULDERC0, 0.5 / Animation_Speed)
1895
		RightShoulder.C0 = Clerp(RightShoulder.C0, CF(-1.5, 0.6, 0) * ANGLES(RAD(-45), RAD(0), RAD(45)) * RIGHTSHOULDERC0, 0.5 / Animation_Speed)
1896
		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)
1897
		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)
1898
	end
1899
	repeat
1900
		for i=0, 0.2, 0.1 / Animation_Speed do
1901
			Swait()
1902
			turnto(Mouse.Hit.p)
1903
			RootJoint.C0 = Clerp(RootJoint.C0,ROOTC0 * CF(0, 0, 0) * ANGLES(RAD(0), RAD(0), RAD(90)), 0.5 / Animation_Speed)
1904
			Neck.C0 = Clerp(Neck.C0, NECKC0 * CF(0, 0, 0) * ANGLES(RAD(0), RAD(0), RAD(-90)), 0.5 / Animation_Speed)
1905
			LeftShoulder.C0 = Clerp(LeftShoulder.C0, CF(1.5, 0.5, 0) * ANGLES(RAD(90), RAD(0), RAD(90)) * LEFTSHOULDERC0, 0.5 / Animation_Speed)
1906
			RightShoulder.C0 = Clerp(RightShoulder.C0, CF(-1.5, 0.6, 0) * ANGLES(RAD(-45), RAD(0), RAD(45)) * RIGHTSHOULDERC0, 0.5 / Animation_Speed)
1907
			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)
1908
			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)
1909
		end
1910
		local HIT,POS = CastProperRay(Hole.Position, Mouse.Hit.p, 1000, Character)
1911
		SpawnTrail(Hole.Position,POS)
1912
		if HIT ~= nil then
1913
			if HIT.Parent ~= workspace and HIT.Parent.ClassName ~= "Folder" then
1914
				Banish(HIT.Parent)
1915
			end
1916
		end
1917
		WACKYEFFECT({Time = 25, EffectType = "Wave", Size = VT(0.3,0,0.3), Size2 = VT(1,1.5,1), Transparency = 0, Transparency2 = 1, CFrame = Hole.CFrame, MoveToPos = Hole.CFrame*CF(0,0.5,0).p, RotationX = 0, RotationY = -15, RotationZ = 0, Material = "Neon", Color = C3(0,0,1), SoundID = nil, SoundPitch = nil, SoundVolume = nil})
1918
		WACKYEFFECT({Time = 25, EffectType = "Wave", Size = VT(0.3,0,0.3), Size2 = VT(2,0.5,2), Transparency = 0, Transparency2 = 1, CFrame = Hole.CFrame, MoveToPos = nil, RotationX = 0, RotationY = 5, RotationZ = 0, Material = "Neon", Color = C3(0,0,1), SoundID = 904440937, SoundPitch = MRANDOM(8,11)/10, SoundVolume = 8})
1919
		WACKYEFFECT({Time = 25, EffectType = "Wave", Size = VT(0.3,0,0.3), Size2 = VT(2,0.5,2), Transparency = 0, Transparency2 = 1, CFrame = CF(POS,Hole.Position) * ANGLES(RAD(-90), RAD(0), RAD(0)), MoveToPos = nil, RotationX = 0, RotationY = -5, RotationZ = 0, Material = "Neon", Color = C3(0,0,1), SoundID = nil, SoundPitch = MRANDOM(8,11)/10, SoundVolume = 8})
1920
		WACKYEFFECT({Time = 25, EffectType = "Wave", Size = VT(0.3,0,0.3), Size2 = VT(2,0.5,2), Transparency = 0, Transparency2 = 1, CFrame = CF(POS,Hole.Position) * ANGLES(RAD(-90), RAD(0), RAD(0)), MoveToPos = nil, RotationX = 0, RotationY = 5, RotationZ = 0, Material = "Neon", Color = C3(0,0,1), SoundID = nil, SoundPitch = MRANDOM(8,11)/10, SoundVolume = 8})
1921
		for i=0, 0.3, 0.1 / Animation_Speed do
1922
			Swait()
1923
			RootJoint.C0 = Clerp(RootJoint.C0,ROOTC0 * CF(0, 0, 0) * ANGLES(RAD(0), RAD(0), RAD(90)), 0.5 / Animation_Speed)
1924
			Neck.C0 = Clerp(Neck.C0, NECKC0 * CF(0, 0, 0) * ANGLES(RAD(0), RAD(0), RAD(-90)), 0.25 / Animation_Speed)
1925
			LeftShoulder.C0 = Clerp(LeftShoulder.C0, CF(1.5, 0.5, 0) * ANGLES(RAD(90), RAD(15), RAD(90)) * LEFTSHOULDERC0, 0.5 / Animation_Speed)
1926
			RightShoulder.C0 = Clerp(RightShoulder.C0, CF(-1.5, 0.6, 0) * ANGLES(RAD(-45), RAD(0), RAD(45)) * RIGHTSHOULDERC0, 0.5 / Animation_Speed)
1927
			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)
1928
			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)
1929
		end
1930
	until KEYHOLD == false
1931
	ATTACK = false
1932
	Rooted = false
1933
end
1934
1935
function Hat()
1936
	ATTACK = true
1937
	Rooted = false
1938
	Pose("Taunt",0.4,1.2,false)
1939
	ATTACK = false
1940
	Rooted = false
1941
end
1942
1943
--//=================================\\
1944
--||	  ASSIGN THINGS TO KEYS
1945
--\\=================================//
1946
1947
function MouseDown(Mouse)
1948
	HOLD = true
1949
	if ATTACK == false then
1950
	end
1951
end
1952
1953
function MouseUp(Mouse)
1954
HOLD = false
1955
end
1956
1957
function KeyDown(Key)
1958
	KEYHOLD = true
1959
	if Key == "z" and ATTACK == false then
1960
		Banisher_Bullet()
1961
	end
1962
	if Key == "q" and ATTACK == false then
1963
		Teleport()
1964
	end
1965
	if Key == "x" and ATTACK == false then
1966
		Morning_Star()
1967
	end
1968
	if Key == "c" and ATTACK == false then
1969
		Deathbound()
1970
	end
1971
	if Key == "t" and ATTACK == false then
1972
		Hat()
1973
	end
1974
end
1975
1976
function KeyUp(Key)
1977
	KEYHOLD = false
1978
end
1979
1980
	Mouse.Button1Down:connect(function(NEWKEY)
1981
		MouseDown(NEWKEY)
1982
	end)
1983
	Mouse.Button1Up:connect(function(NEWKEY)
1984
		MouseUp(NEWKEY)
1985
	end)
1986
	Mouse.KeyDown:connect(function(NEWKEY)
1987
		KeyDown(NEWKEY)
1988
	end)
1989
	Mouse.KeyUp:connect(function(NEWKEY)
1990
		KeyUp(NEWKEY)
1991
	end)
1992
1993
--//=================================\\
1994
--\\=================================//
1995
1996
1997
1998
function unanchor()
1999
	if UNANCHOR == true then
2000
		g = Character:GetChildren()
2001
		for i = 1, #g do
2002
			if g[i].ClassName == "Part" then
2003
				g[i].Anchored = false
2004
			end
2005
		end
2006
	end
2007
end
2008
2009
2010
--//=================================\\
2011
--||	WRAP THE WHOLE SCRIPT UP
2012
--\\=================================//
2013
2014
Humanoid.Changed:connect(function(Jump)
2015
	if Jump == "Jump" and (Disable_Jump == true) then
2016
		Humanoid.Jump = false
2017
	end
2018
end)
2019
2020
while true do
2021
	Swait()
2022
	script.Parent = WEAPONGUI
2023
	Humanoid.Parent = Character
2024
	if Humanoid then
2025
		local IDLEANIMATION = Humanoid:LoadAnimation(ROBLOXIDLEANIMATION)
2026
		IDLEANIMATION:Play()
2027
	end
2028
	if ANIMATE.Parent == Character then
2029
		ANIMATE:Destroy()
2030
	end
2031
	SINE = SINE + CHANGE
2032
	local TORSOVELOCITY = (RootPart.Velocity * VT(1, 0, 1)).magnitude
2033
	local TORSOVERTICALVELOCITY = RootPart.Velocity.y
2034
	Humanoid.HipHeight = 1
2035
	Humanoid.Name = "Warden"
2036
	Humanoid.PlatformStand = false
2037
	if PLAYMAINANIM == true then
2038
		if TORSOVELOCITY < 1 then
2039
			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)
2040
			Neck.C0 = Clerp(Neck.C0, NECKC0 * CF(0, 0, 0 + ((1) - 1)) * ANGLES(RAD(15 - 6.5 * SIN(SINE / 12)), RAD(0), RAD(0)), 0.15 / Animation_Speed)
2041
			RightShoulder.C0 = Clerp(RightShoulder.C0, CF(1.25, 0.5 + 0.15 * COS(SINE / 12) - 0.05 * COS(SINE / 12), 0.5) * ANGLES(RAD(-45), RAD(0), RAD(-45)) * RIGHTSHOULDERC0, 0.15 / Animation_Speed)
2042
			LeftShoulder.C0 = Clerp(LeftShoulder.C0, CF(-1.25, 0.5 + 0.15 * COS(SINE / 12) - 0.05 * COS(SINE / 12), 0.5) * ANGLES(RAD(-45), RAD(0), RAD(45)) * LEFTSHOULDERC0, 0.15 / Animation_Speed)
2043
			RightHip.C0 = Clerp(RightHip.C0, CF(1, -0.5, -0.5) * ANGLES(RAD(0), RAD(65), RAD(0)) * ANGLES(RAD(-3), RAD(0), RAD(-15)), 0.15 / Animation_Speed)
2044
			LeftHip.C0 = Clerp(LeftHip.C0, CF(-1, -1, -0.01) * ANGLES(RAD(0), RAD(-90), RAD(0)) * ANGLES(RAD(-8), RAD(0), RAD(0)), 0.15 / Animation_Speed)
2045
		elseif TORSOVELOCITY > 1 then
2046
			RootJoint.C0 = Clerp(RootJoint.C0,ROOTC0 * CF(0, 0, 0 + 0.05 * COS(SINE / 12)) * ANGLES(RAD(5), RAD(0), RAD(0)), 0.15 / Animation_Speed)
2047
			Neck.C0 = Clerp(Neck.C0, NECKC0 * CF(0, 0, 0 + ((1) - 1)) * ANGLES(RAD(10 - 6.5 * SIN(SINE / 12)), RAD(0), RAD(0)), 0.15 / Animation_Speed)
2048
			RightShoulder.C0 = Clerp(RightShoulder.C0, CF(1.25, 0.5 + 0.15 * COS(SINE / 12) - 0.05 * COS(SINE / 12), 0.5) * ANGLES(RAD(-35), RAD(0), RAD(-45)) * RIGHTSHOULDERC0, 0.15 / Animation_Speed)
2049
			LeftShoulder.C0 = Clerp(LeftShoulder.C0, CF(-1.25, 0.5 + 0.15 * COS(SINE / 12) - 0.05 * COS(SINE / 12), 0.5) * ANGLES(RAD(-35), RAD(0), RAD(45)) * LEFTSHOULDERC0, 0.15 / Animation_Speed)
2050
			RightHip.C0 = Clerp(RightHip.C0, CF(1, -0.5, -0.5) * ANGLES(RAD(0), RAD(65), RAD(0)) * ANGLES(RAD(-3), RAD(0), RAD(-20)), 0.15 / Animation_Speed)
2051
			LeftHip.C0 = Clerp(LeftHip.C0, CF(-1, -1, -0.01) * ANGLES(RAD(0), RAD(-90), RAD(0)) * ANGLES(RAD(-8), RAD(0), RAD(10)), 0.15 / Animation_Speed)
2052
		end
2053
	end
2054
	unanchor()
2055
	Humanoid.MaxHealth = "inf"
2056
	Humanoid.Health = "inf"
2057
	if Rooted == false then
2058
		Disable_Jump = false
2059
		Humanoid.WalkSpeed = Speed
2060
	elseif Rooted == true then
2061
		Disable_Jump = true
2062
		Humanoid.WalkSpeed = 0
2063
	end
2064
	for _, c in pairs(Character:GetChildren()) do
2065
		if c.ClassName == "Part" and c.Name ~= "Eye" then
2066
			c.Material = "Neon"
2067
			if c:FindFirstChildOfClass("ParticleEmitter") then
2068
				c:FindFirstChildOfClass("ParticleEmitter"):remove()
2069
			end
2070
			c.Color = C3(1,1,1)
2071
			if c == Head then
2072
				if c:FindFirstChild("face") then
2073
					c.face:remove()
2074
				end
2075
			end
2076
		elseif c.ClassName == "CharacterMesh" or c.ClassName == "Accessory" or c.ClassName == "Hat" or c.Name == "Body Colors" then
2077
			c:remove()
2078
		elseif (c.ClassName == "Shirt" or c.ClassName == "Pants") and c.Name ~= "Cloth" then
2079
			c:remove()
2080
		end
2081
	end
2082
	sick.SoundId = "rbxassetid://1567323605"
2083
	sick.Looped = true
2084
	sick.Pitch = 1
2085
	sick.Volume = 3
2086
	sick:Resume()
2087
	sick.Parent = Torso
2088
	refit()
2089
	if Head:FindFirstChildOfClass("Sound") then
2090
		Head:FindFirstChildOfClass("Sound"):remove()
2091
	end
2092
end
2093
game.Lighting.TimeOfDay = "00:00:00"
2094
game.Lighting.FogEnd = 50
2095
game.Lighting.FogColor = Color3.fromRGB(0,0,0)
2096
2097
--//=================================\\
2098
2099
--\\=================================//
2100
2101
2102
2103
2104
2105
--//====================================================\\--
2106
--||			  		 END OF SCRIPT
2107
--\\====================================================//--