View difference between Paste ID: TL97KLam and huJUweK9
SHOW: | | - or go back to the newest paste.
1
if game:GetService("RunService"):IsClient() then error("Script must be server-side in order to work; use h/ and not hl/") end
2
local Player,Mouse,mouse,UserInputService,ContextActionService = owner
3
do
4
	print("FE Compatibility code by Mokiros")
5
	script.Parent = Player.Character
6
7
	--RemoteEvent for communicating
8
	local Event = Instance.new("RemoteEvent")
9
	Event.Name = "UserInput_Event"
10
11
	--Fake event to make stuff like Mouse.KeyDown work
12
	local function fakeEvent()
13
		local t = {_fakeEvent=true,Connect=function(self,f)self.Function=f end}
14
		t.connect = t.Connect
15
		return t
16
	end
17
18
	--Creating fake input objects with fake variables
19
    local m = {Target=nil,Hit=CFrame.new(),KeyUp=fakeEvent(),KeyDown=fakeEvent(),Button1Up=fakeEvent(),Button1Down=fakeEvent()}
20
	local UIS = {InputBegan=fakeEvent(),InputEnded=fakeEvent()}
21
	local CAS = {Actions={},BindAction=function(self,name,fun,touch,...)
22
		CAS.Actions[name] = fun and {Name=name,Function=fun,Keys={...}} or nil
23
	end}
24
	--Merged 2 functions into one by checking amount of arguments
25
	CAS.UnbindAction = CAS.BindAction
26
27
	--This function will trigger the events that have been :Connect()'ed
28
	local function te(self,ev,...)
29
		local t = m[ev]
30
		if t and t._fakeEvent and t.Function then
31
			t.Function(...)
32
		end
33
	end
34
	m.TrigEvent = te
35
	UIS.TrigEvent = te
36
37
	Event.OnServerEvent:Connect(function(plr,io)
38
	    if plr~=Player then return end
39
		if io.isMouse then
40
			m.Target = io.Target
41
			m.Hit = io.Hit
42
		else
43
			local b = io.UserInputState == Enum.UserInputState.Begin
44
			if io.UserInputType == Enum.UserInputType.MouseButton1 then
45
				return m:TrigEvent(b and "Button1Down" or "Button1Up")
46
			end
47
			for _,t in pairs(CAS.Actions) do
48
				for _,k in pairs(t.Keys) do
49
					if k==io.KeyCode then
50
						t.Function(t.Name,io.UserInputState,io)
51
					end
52
				end
53
			end
54
			m:TrigEvent(b and "KeyDown" or "KeyUp",io.KeyCode.Name:lower())
55
			UIS:TrigEvent(b and "InputBegan" or "InputEnded",io,false)
56
	    end
57
	end)
58
	Event.Parent = NLS([==[
59
	local Player = owner
60
	local Event = script:WaitForChild("UserInput_Event")
61
62
	local UIS = game:GetService("UserInputService")
63
	local input = function(io,a)
64
		if a then return end
65
		--Since InputObject is a client-side instance, we create and pass table instead
66
		Event:FireServer({KeyCode=io.KeyCode,UserInputType=io.UserInputType,UserInputState=io.UserInputState})
67
	end
68
	UIS.InputBegan:Connect(input)
69
	UIS.InputEnded:Connect(input)
70
71
	local Mouse = Player:GetMouse()
72
	local h,t
73
	--Give the server mouse data 30 times every second, but only if the values changed
74
	--If player is not moving their mouse, client won't fire events
75
	while wait(1/30) do
76
		if h~=Mouse.Hit or t~=Mouse.Target then
77
			h,t=Mouse.Hit,Mouse.Target
78
			Event:FireServer({isMouse=true,Target=t,Hit=h})
79
		end
80
	end]==],Player.Character)
81
	Mouse,mouse,UserInputService,ContextActionService = m,m,UIS,CAS
82
end
83
plr = owner
84
char = plr.Character
85
hum = char.Humanoid
86
local cam = game.Workspace.CurrentCamera
87
Camera = cam
88
local CamInterrupt = false
89
local TwoD = false
90
local TargetInfo = {nil, nil}
91
cam.CameraType = "Custom"
92
t = char.Torso
93
h = char.Head
94
ra = char["Right Arm"]
95
la = char["Left Arm"]
96
rl = char["Right Leg"]
97
ll = char["Left Leg"]
98
tors = char.Torso
99
lleg = char["Left Leg"]
100
root = char.HumanoidRootPart
101
hed = char.Head
102
rleg = char["Right Leg"]
103
rarm = char["Right Arm"]
104
larm = char["Left Arm"]
105
radian = math.rad
106
random = math.random
107
Vec3 = Vector3.new
108
Inst = Instance.new
109
cFrame = CFrame.new
110
Euler = CFrame.fromEulerAnglesXYZ
111
vt = Vector3.new
112
bc = BrickColor.new
113
br = BrickColor.random
114
it = Instance.new
115
cf = CFrame.new
116
117
local Booleans = {
118
  CamFollow = true,
119
  GyroUse = true
120
}
121
122
function lerp(object, newCFrame, alpha)
123
  return object:lerp(newCFrame, alpha)
124
end
125
126
local Directer = Inst("BodyGyro", root)
127
Directer.MaxTorque = Vec3(0, 0, 0)
128
Directer.P = 600000
129
local CPart = Inst("Part")
130
CPart.Anchored = true
131
CPart.CanCollide = false
132
CPart.Locked = true
133
CPart.Transparency = 1
134
135
local rainbowmode = false
136
local chaosmode = false
137
138
local kan = Instance.new("Sound",char)
139
kan.Volume = 5
140
kan.TimePosition = 0
141
kan.PlaybackSpeed = 1
142
kan.Pitch = 1
143
kan.SoundId = "rbxassetid://2114921530"
144
kan.Name = "wrecked"
145
kan.Looped = true
146
kan:Play()
147
148
local currentThemePlaying = kan.SoundId
149
local currentPitch = kan.Pitch
150
local currentVol = kan.Volume
151
function newTheme(ID,timepos,pitch,vol)
152
local kanz = kan
153
--kanz:Stop()
154
kanz.Volume = vol
155
--kanz.TimePosition = timepos
156
kanz.PlaybackSpeed = pitch
157
kanz.Pitch = pitch
158
kanz.SoundId = ID
159
kanz.Name = "wrecked"
160
kanz.Looped = true
161
currentThemePlaying = kanz.SoundId
162
currentVol = kanz.Volume
163
currentPitch = kanz.Pitch
164
--kanz:Play()
165
--coroutine.resume(coroutine.create(function()
166
--wait(0.05)
167
--end))
168
end
169
170
171
function newThemeCust(ID,timepos,pitch,vol)
172
local kanz = kan
173
kanz:Stop()
174
kanz.Volume = vol
175
kanz.TimePosition = timepos
176
kanz.PlaybackSpeed = pitch
177
kanz.Pitch = pitch
178
kanz.SoundId = ID
179
kanz.Name = "wrecked"
180
kanz.Looped = true
181
currentThemePlaying = kanz.SoundId
182
currentVol = kanz.Volume
183
currentPitch = kanz.Pitch
184
kanz:Play()
185
coroutine.resume(coroutine.create(function()
186
wait(0.05)
187
end))
188
end
189
190
local mutedtog = false
191
192
function CameraEnshaking(Length,Intensity)
193
coroutine.resume(coroutine.create(function()
194
      local intensity = 1*Intensity
195
      local rotM = 0.01*Intensity
196
for i = 0, Length, 0.1 do
197
swait()
198
intensity = intensity - 0.05*Intensity/Length
199
rotM = rotM - 0.0005*Intensity/Length
200
      hum.CameraOffset = Vec3(radian(random(-intensity, intensity)), radian(random(-intensity, intensity)), radian(random(-intensity, intensity)))
201
      cam.CFrame = cam.CFrame * cFrame(radian(random(-intensity, intensity)), radian(random(-intensity, intensity)), radian(random(-intensity, intensity))) * Euler(radian(random(-intensity, intensity)) * rotM, radian(random(-intensity, intensity)) * rotM, radian(random(-intensity, intensity)) * rotM)
202
end
203
Humanoid.CameraOffset = Vec3(0, 0, 0)
204
end))
205
end
206
CamShake=function(Part,Distan,Power,Times) 
207
local de=Part.Position
208
for i,v in pairs(workspace:children()) do
209
 if v:IsA("Model") and v:findFirstChild("Humanoid") then
210
for _,c in pairs(v:children()) do
211
if c.ClassName=="Part" and (c.Position - de).magnitude < Distan then
212
local Noob=v.Humanoid
213
if Noob~=nil then
214
coroutine.resume(coroutine.create(function()
215
FV = Instance.new("BoolValue", Noob)
216
FV.Name = "CameraShake"
217
for ShakeNum=1,Times do
218
swait()
219
local ef=Power
220
  if ef>=1 then
221
   Humanoid.CameraOffset = Vector3.new(math.random(-ef,ef),math.random(-ef,ef),math.random(-ef,ef))
222
  else
223
   ef=Power*10
224
   Humanoid.CameraOffset = Vector3.new(math.random(-ef,ef)/10,math.random(-ef,ef)/10,math.random(-ef,ef)/10)
225
  end	
226
end
227
Humanoid.CameraOffset = Vector3.new(0,0,0)
228
FV:Destroy()
229
end))
230
CameraShake(Times, Power, Noob)
231
end
232
end
233
end
234
end
235
end
236
end
237
238
239
function chatfunc(text,color,typet,font,timeex)
240
local chat = coroutine.wrap(function()
241
if Character:FindFirstChild("TalkingBillBoard")~= nil then
242
Character:FindFirstChild("TalkingBillBoard"):destroy()
243
end
244
local naeeym2 = Instance.new("BillboardGui",Character)
245
naeeym2.Size = UDim2.new(0,100,0,40)
246
naeeym2.StudsOffset = Vector3.new(0,3,0)
247
naeeym2.Adornee = Character.Head
248
naeeym2.Name = "TalkingBillBoard"
249
local tecks2 = Instance.new("TextLabel",naeeym2)
250
tecks2.BackgroundTransparency = 1
251
tecks2.BorderSizePixel = 0
252
tecks2.Text = ""
253
tecks2.Font = font
254
tecks2.TextSize = 30
255
tecks2.TextStrokeTransparency = 0
256
tecks2.TextColor3 = color
257
tecks2.TextStrokeColor3 = Color3.new(0,0,0)
258
tecks2.Size = UDim2.new(1,0,0.5,0)
259
local tecks3 = Instance.new("TextLabel",naeeym2)
260
tecks3.BackgroundTransparency = 1
261
tecks3.BorderSizePixel = 0
262
tecks3.Text = ""
263
tecks3.Font = font
264
tecks3.TextSize = 30
265
tecks3.TextStrokeTransparency = 0
266
if typet == "Inverted" then
267
tecks3.TextColor3 = Color3.new(0,0,0)
268
tecks3.TextStrokeColor3 = color
269
elseif typet == "Normal" then
270
tecks3.TextColor3 = color
271
tecks3.TextStrokeColor3 = Color3.new(0,0,0)
272
end
273
tecks3.Size = UDim2.new(1,0,0.5,0)
274
coroutine.resume(coroutine.create(function()
275
while true do
276
swait(1)
277
if chaosmode == true then
278
tecks2.TextColor3 = BrickColor.random().Color
279
tecks3.TextStrokeColor3 = BrickColor.random().Color
280
end
281
end
282
end))
283
modet.TextTransparency = modet.TextTransparency  + 1
284
modet.TextStrokeTransparency = modet.TextStrokeTransparency + 1
285
for i = 0, 74*timeex do
286
swait()
287
modet.TextTransparency = 1
288
modet.TextStrokeTransparency = 1
289
tecks2.Text = text
290
tecks3.Text = text
291
end
292
local randomrot = math.random(1,2)
293
if randomrot == 1 then
294
for i = 1, 50 do
295
swait()
296
tecks2.Text = text
297
tecks3.Text = text
298
modet.TextTransparency = modet.TextTransparency - .02
299
modet.TextStrokeTransparency = modet.TextStrokeTransparency - .02
300
tecks2.TextStrokeTransparency = tecks2.TextStrokeTransparency +.04
301
tecks2.TextTransparency = tecks2.TextTransparency + .04
302
tecks3.TextStrokeTransparency = tecks2.TextStrokeTransparency +.04
303
tecks3.TextTransparency = tecks2.TextTransparency + .04
304
end
305
elseif randomrot == 2 then
306
	for i = 1, 50 do
307
swait()
308
tecks2.Text = text
309
tecks3.Text = text
310
modet.TextTransparency = modet.TextTransparency - .02
311
modet.TextStrokeTransparency = modet.TextStrokeTransparency - .02
312
tecks2.TextStrokeTransparency = tecks2.TextStrokeTransparency +.04
313
tecks2.TextTransparency = tecks2.TextTransparency + .04
314
tecks3.TextStrokeTransparency = tecks2.TextStrokeTransparency +.04
315
tecks3.TextTransparency = tecks2.TextTransparency + .04
316
end
317
end
318
modet.TextTransparency = 0
319
modet.TextStrokeTransparency = 0
320
if toggleTag == false then
321
modet.TextTransparency = 1
322
modet.TextStrokeTransparency = 1
323
end
324
naeeym2:Destroy()
325
end)
326
chat()
327
end
328
329
function bosschatfunc(text,color,watval)
330
for i,v in pairs(game:GetService("Players"):GetPlayers()) do
331
coroutine.resume(coroutine.create(function()
332
if v.PlayerGui:FindFirstChild("Dialog")~= nil then
333
v.PlayerGui:FindFirstChild("Dialog"):destroy()
334
end
335
local scrg = Instance.new("ScreenGui",v.PlayerGui)
336
CFuncs["EchoSound"].Create("rbxassetid://525200869", scrg, 0.5, 1,0,10,0.1,0.25,1)
337
scrg.Name = "Dialog"
338
local txtlb = Instance.new("TextLabel",scrg)
339
txtlb.Text = ""
340
txtlb.Font = "Bodoni"
341
txtlb.TextColor3 = Color3.new(0,0,0)
342
txtlb.TextStrokeTransparency = 0
343
txtlb.BackgroundTransparency = 0.75
344
txtlb.BackgroundColor3 = Color3.new(0,0,0)
345
txtlb.TextStrokeColor3 = color
346
txtlb.TextScaled = true
347
txtlb.Size = UDim2.new(1,0,0.25,0)
348
txtlb.TextXAlignment = "Left"
349
txtlb.Position = UDim2.new(0,0,0.75 + 1,0)
350
local txtlb2 = Instance.new("TextLabel",scrg)
351
txtlb2.Text = "Lunar Banisher"
352
txtlb2.Font = "Arcade"
353
txtlb2.TextColor3 = Color3.new(0,0,0)
354
txtlb2.TextStrokeTransparency = 0
355
txtlb2.BackgroundTransparency = 1
356
txtlb2.TextStrokeColor3 = color
357
txtlb2.TextSize = 40
358
txtlb2.Size = UDim2.new(1,0,0.25,0)
359
txtlb2.TextXAlignment = "Left"
360
txtlb2.Position = UDim2.new(0,0,1,0)
361
local fvalen = 0.55
362
local fval = -0.49
363
coroutine.resume(coroutine.create(function()
364
while true do
365
swait()
366
if chaosmode == true then
367
txtlb.Rotation = math.random(-1,1)
368
txtlb2.Rotation = math.random(-1,1)
369
txtlb.Position = txtlb.Position + UDim2.new(0,math.random(-1,1)/5,0,math.random(-1,1)/5)
370
txtlb2.Position = txtlb2.Position + UDim2.new(0,math.random(-1,1)/5,0,math.random(-1,1)/5)
371
txtlb.TextStrokeColor3 = BrickColor.random().Color
372
txtlb2.TextStrokeColor3 = BrickColor.random().Color
373
end
374
end
375
end))
376
coroutine.resume(coroutine.create(function()
377
while true do
378
swait()
379
if scrg.Parent ~= nil then
380
	fvalen = fvalen - 0.0001
381
elseif scrg.Parent == nil then
382
break
383
end
384
end
385
end))
386
local flol = 1.75
387
local flil = 1.6
388
coroutine.resume(coroutine.create(function()
389
	for i = 0, 9 do
390
		swait()
391
		fval = fval + 0.05
392
		flol = flol - 0.1
393
		flil = flil - 0.1
394
		txtlb.Text = ""
395
		txtlb.Position = UDim2.new(0,0,flol,0)
396
		txtlb2.Position = UDim2.new(0,0,flil,0)
397
	end
398
	txtlb.Text = text
399
wait(watval)
400
local valinc = 0
401
for i = 0, 99 do
402
swait()
403
valinc = valinc + 0.0001
404
flol = flol + valinc
405
flil = flil + valinc
406
txtlb.Rotation = txtlb.Rotation + valinc*20
407
txtlb2.Rotation = txtlb2.Rotation - valinc*50
408
txtlb.Position = UDim2.new(0,0,flol,0)
409
txtlb2.Position = UDim2.new(0,0,flil,0)
410
txtlb.TextStrokeTransparency = txtlb.TextStrokeTransparency + 0.01
411
txtlb.TextTransparency = txtlb.TextTransparency + 0.01
412
txtlb2.TextStrokeTransparency = txtlb2.TextStrokeTransparency + 0.01
413
txtlb2.TextTransparency = txtlb2.TextTransparency + 0.01
414
txtlb.BackgroundTransparency = txtlb.BackgroundTransparency + 0.0025
415
end
416
scrg:Destroy()
417
end))
418
end))
419
end
420
end
421
422
local disably = false
423
function warnedpeople(text,represfont,color,color2)
424
	if disably ~= true then
425
CFuncs["Sound"].Create("rbxassetid://534859368", char, 2.5,1)
426
CFuncs["Sound"].Create("rbxassetid://963718869", char, 1,1)
427
for i,v in pairs(game:GetService("Players"):GetPlayers()) do
428
coroutine.resume(coroutine.create(function()
429
if v.PlayerGui:FindFirstChild("Spinny")~= nil then
430
v.PlayerGui:FindFirstChild("Spinny"):destroy()
431
end
432
local scrg = Instance.new("ScreenGui",v.PlayerGui)
433
scrg.Name = "Spinny"
434
local frm = Instance.new("Frame",scrg)
435
frm.BackgroundTransparency = 0.25
436
frm.BackgroundColor3 = color
437
frm.BorderSizePixel = 0
438
frm.Rotation = 45
439
frm.Size = UDim2.new(3,0,0,100)
440
frm.Position = UDim2.new(-4,0,0,0)
441
local frm2 = frm:Clone()
442
frm2.Parent = scrg
443
frm2.BackgroundColor3 = color2
444
frm2.Position = UDim2.new(-4.05,0,0,0)
445
local imlb = Instance.new("ImageLabel",scrg)
446
imlb.BackgroundTransparency = 1
447
imlb.BackgroundColor3 = Color3.new(0,0,0)
448
imlb.Image = "rbxassetid://2344851144"
449
imlb.Size = UDim2.new(0,750,0,750)
450
imlb.ImageColor3 = color2
451
imlb.ImageTransparency = 0.25
452
imlb.Position = UDim2.new(-2.5,0,-2.5,0)
453
local imlb2 = imlb:Clone()
454
imlb2.Image = "rbxassetid://2325939897"
455
imlb2.Size = UDim2.new(1,0,1,0)
456
imlb2.ImageColor3 = color
457
imlb2.ImageTransparency = 0
458
imlb2.Position = UDim2.new(0,0,0,0)
459
local imlb3 = imlb:Clone()
460
imlb3.Image = "rbxassetid://2344830904"
461
imlb3.Size = UDim2.new(1,0,1,0)
462
imlb3.ImageColor3 = color2
463
imlb3.ImageTransparency = 0
464
imlb3.Position = UDim2.new(0,0,0,0)
465
local imlb4 = imlb:Clone()
466
imlb4.Image = "rbxassetid://2344870656"
467
imlb4.Size = UDim2.new(3,0,3,0)
468
imlb4.ImageColor3 = Color3.new(1,1,1)
469
imlb4.ImageTransparency = 0
470
imlb4.Position = UDim2.new(-1,0,-1,0)
471
local imlb5 = imlb:Clone()
472
imlb5.Image = "rbxassetid://2344870656"
473
imlb5.Size = UDim2.new(10,0,10,0)
474
imlb5.ImageColor3 = color2
475
imlb5.ImageTransparency = 0
476
imlb5.Position = UDim2.new(-4.5,0,-4.5,0)
477
imlb2.Parent = imlb
478
imlb3.Parent = imlb
479
imlb4.Parent = imlb
480
imlb5.Parent = imlb
481
local txtlb2 = Instance.new("TextLabel",imlb)
482
txtlb2.Text = text
483
txtlb2.Font = represfont
484
txtlb2.TextColor3 = color
485
txtlb2.TextStrokeTransparency = 0
486
txtlb2.BackgroundTransparency = 1
487
txtlb2.TextStrokeColor3 = color2
488
txtlb2.TextScaled = true
489
txtlb2.Size = UDim2.new(1,0,1,0)
490
txtlb2.Position = UDim2.new(0,0,0,0)
491
local fvalen = 0.55
492
local fval = -0.49
493
coroutine.resume(coroutine.create(function()
494
while true do
495
swait()
496
if chaosmode == true then
497
txtlb2.Rotation = math.random(-1,1)
498
imlb.Position = imlb.Position + UDim2.new(0,math.random(-1,1)/5,0,math.random(-1,1)/5)
499
txtlb2.Position = txtlb2.Position + UDim2.new(0,math.random(-1,1)/5,0,math.random(-1,1)/5)
500
imlb.ImageColor3 = BrickColor.random().Color
501
txtlb2.TextStrokeColor3 = BrickColor.random().Color
502
end
503
end
504
end))
505
coroutine.resume(coroutine.create(function()
506
while true do
507
swait()
508
if scrg.Parent ~= nil then
509
	fvalen = fvalen - 0.0001
510
elseif scrg.Parent == nil then
511
break
512
end
513
end
514
end))
515
local flol = -5
516
local flil = 1.6
517
coroutine.resume(coroutine.create(function()
518
	for i = 0, 49 do
519
		swait()
520
		flol = flol + 0.125
521
		flil = flil - 0.1
522
		frm.Size = frm.Size + UDim2.new(0.1,0,0,0)
523
		frm.Rotation = frm.Rotation - 0.25
524
		frm2.Size = frm2.Size + UDim2.new(0.1,0,0,0)
525
		frm2.Rotation = frm.Rotation + 0.325
526
		imlb3.Rotation = imlb3.Rotation - 10
527
		imlb2.Rotation = imlb.Rotation + 7.5
528
		imlb.Rotation = imlb.Rotation + 5
529
		txtlb2.Rotation = txtlb2.Rotation - 5.125
530
		imlb.Position = imlb.Position + UDim2.new(0.05125,0,0.04775,0)
531
	end
532
	for i = 0, 99 do
533
		swait()
534
		fval = fval + 0.05
535
		flol = flol + 0.005
536
		frm.Size = frm.Size + UDim2.new(0.005,0,0,0)
537
		frm.Rotation = frm.Rotation - 0.075
538
		frm2.Size = frm2.Size + UDim2.new(0.005,0,0,0)
539
		frm2.Rotation = frm2.Rotation + 0.125
540
		imlb3.Rotation = imlb3.Rotation - 2
541
		imlb2.Rotation = imlb.Rotation + 1.5
542
		imlb.Rotation = imlb.Rotation + 1
543
		txtlb2.Rotation = txtlb2.Rotation - 1.125
544
		imlb.Position = imlb.Position + UDim2.new(0.0015,0,0.00075,0)
545
	end
546
local valinc = 0
547
local vinc2 = 1
548
for i = 0, 99 do
549
swait()
550
vinc2 = vinc2 + 0.25
551
valinc = valinc + 0.0001
552
flol = flol + valinc
553
flil = flil + valinc
554
txtlb2.Rotation = txtlb2.Rotation - 1.125*vinc2
555
imlb3.Rotation = imlb3.Rotation - 2*vinc2
556
imlb.Rotation = imlb.Rotation + 1*vinc2
557
imlb.Position = imlb.Position + UDim2.new(0.0015*vinc2,0,0.0005*vinc2,0)
558
frm.Size = frm.Size + UDim2.new(0.005*vinc2,0,0,0)
559
frm.Rotation = frm.Rotation + 0.1*vinc2
560
frm2.Size = frm2.Size + UDim2.new(0.005*vinc2,0,0,0)
561
frm2.Rotation = frm2.Rotation + 0.225*vinc2
562
frm2.BackgroundTransparency = frm2.BackgroundTransparency + 0.0075
563
frm.BackgroundTransparency = frm.BackgroundTransparency + 0.0075
564
imlb.ImageTransparency = imlb.ImageTransparency + 0.005
565
imlb2.ImageTransparency = imlb2.ImageTransparency + 0.01
566
imlb3.ImageTransparency = imlb3.ImageTransparency + 0.01
567
imlb4.ImageTransparency = imlb4.ImageTransparency + 0.01
568
imlb5.ImageTransparency = imlb4.ImageTransparency + 0.01
569
txtlb2.TextStrokeTransparency = txtlb2.TextStrokeTransparency + 0.01
570
txtlb2.TextTransparency = txtlb2.TextTransparency + 0.01
571
end
572
scrg:Destroy()
573
end))
574
end))
575
end
576
end
577
end
578
579
local Create = LoadLibrary("RbxUtility").Create
580
581
CFuncs = {	
582
	["Part"] = {
583
		Create = function(Parent, Material, Reflectance, Transparency, BColor, Name, Size)
584
			local Part = Create("Part"){
585
				Parent = Parent,
586
				Reflectance = Reflectance,
587
				Transparency = Transparency,
588
				CanCollide = false,
589
				Locked = true,
590
				BrickColor = BrickColor.new(tostring(BColor)),
591
				Name = Name,
592
				Size = Size,
593
				Material = Material,
594
			}
595
			RemoveOutlines(Part)
596
			return Part
597
		end;
598
	};
599
	
600
	["Mesh"] = {
601
		Create = function(Mesh, Part, MeshType, MeshId, OffSet, Scale)
602
			local Msh = Create(Mesh){
603
				Parent = Part,
604
				Offset = OffSet,
605
				Scale = Scale,
606
			}
607
			if Mesh == "SpecialMesh" then
608
				Msh.MeshType = MeshType
609
				Msh.MeshId = MeshId
610
			end
611
			return Msh
612
		end;
613
	};
614
	
615
	["Mesh"] = {
616
		Create = function(Mesh, Part, MeshType, MeshId, OffSet, Scale)
617
			local Msh = Create(Mesh){
618
				Parent = Part,
619
				Offset = OffSet,
620
				Scale = Scale,
621
			}
622
			if Mesh == "SpecialMesh" then
623
				Msh.MeshType = MeshType
624
				Msh.MeshId = MeshId
625
			end
626
			return Msh
627
		end;
628
	};
629
	
630
	["Weld"] = {
631
		Create = function(Parent, Part0, Part1, C0, C1)
632
			local Weld = Create("Weld"){
633
				Parent = Parent,
634
				Part0 = Part0,
635
				Part1 = Part1,
636
				C0 = C0,
637
				C1 = C1,
638
			}
639
			return Weld
640
		end;
641
	};
642
643
	["Sound"] = {
644
		Create = function(id, par, vol, pit) 
645
			coroutine.resume(coroutine.create(function()
646
				local S = Create("Sound"){
647
					Volume = vol,
648
                                        Name = "EffectSoundo",
649
					Pitch = pit or 1,
650
					SoundId = id,
651
					Parent = par or workspace,
652
				}
653
				wait() 
654
				S:play() 
655
				game:GetService("Debris"):AddItem(S, 10)
656
			end))
657
		end;
658
	};
659
660
	["TimeSound"] = {
661
		Create = function(id, par, vol, pit, timepos) 
662
			coroutine.resume(coroutine.create(function()
663
				local S = Create("Sound"){
664
					Volume = vol,
665
                                        Name = "EffectSoundo",
666
					Pitch = pit or 1,
667
					SoundId = id,
668
                                        TimePosition = timepos,
669
					Parent = par or workspace,
670
				}
671
				wait() 
672
				S:play() 
673
				game:GetService("Debris"):AddItem(S, 10)
674
			end))
675
		end;
676
	};
677
		["EchoSound"] = {
678
		Create = function(id, par, vol, pit, timepos,delays,echodelay,fedb,dryl) 
679
			coroutine.resume(coroutine.create(function()
680
				local Sas = Create("Sound"){
681
					Volume = vol,
682
                    Name = "EffectSoundo",
683
					Pitch = pit or 1,
684
					SoundId = id,
685
                    TimePosition = timepos,
686
					Parent = par or workspace,
687
				}
688
				local E = Create("EchoSoundEffect"){
689
					Delay = echodelay,
690
                    Name = "Echo",
691
					Feedback = fedb,
692
                    DryLevel = dryl,
693
					Parent = Sas,
694
				}
695
				wait() 
696
				Sas:play() 
697
				game:GetService("Debris"):AddItem(Sas, delays)
698
			end))
699
		end;
700
	};
701
702
["LongSound"] = {
703
		Create = function(id, par, vol, pit) 
704
			coroutine.resume(coroutine.create(function()
705
				local S = Create("Sound"){
706
					Volume = vol,
707
					Pitch = pit or 1,
708
					SoundId = id,
709
					Parent = par or workspace,
710
				}
711
				wait() 
712
				S:play() 
713
				game:GetService("Debris"):AddItem(S, 60)
714
			end))
715
		end;
716
	};
717
	
718
	["ParticleEmitter"] = {
719
		Create = function(Parent, Color1, Color2, LightEmission, Size, Texture, Transparency, ZOffset, Accel, Drag, LockedToPart, VelocityInheritance, EmissionDirection, Enabled, LifeTime, Rate, Rotation, RotSpeed, Speed, VelocitySpread)
720
			local fp = Create("ParticleEmitter"){
721
				Parent = Parent,
722
				Color = ColorSequence.new(Color1, Color2),
723
				LightEmission = LightEmission,
724
				Size = Size,
725
				Texture = Texture,
726
				Transparency = Transparency,
727
				ZOffset = ZOffset,
728
				Acceleration = Accel,
729
				Drag = Drag,
730
				LockedToPart = LockedToPart,
731
				VelocityInheritance = VelocityInheritance,
732
				EmissionDirection = EmissionDirection,
733
				Enabled = Enabled,
734
				Lifetime = LifeTime,
735
				Rate = Rate,
736
				Rotation = Rotation,
737
				RotSpeed = RotSpeed,
738
				Speed = Speed,
739
				VelocitySpread = VelocitySpread,
740
			}
741
			return fp
742
		end;
743
	};
744
745
	CreateTemplate = {
746
	
747
	};
748
}
749
750
751
752
New = function(Object, Parent, Name, Data)
753
	local Object = Instance.new(Object)
754
	for Index, Value in pairs(Data or {}) do
755
		Object[Index] = Value
756
	end
757
	Object.Parent = Parent
758
	Object.Name = Name
759
	return Object
760
end
761
local halocolor = BrickColor.new("Gold")
762
local halocolor2 = BrickColor.new("Really black")
763
local starcolor = BrickColor.new("Really black")
764
local lunacolor = BrickColor.new("Gold")
765
local lunacolor2 = BrickColor.new("Gold")
766
local wepcolor = BrickColor.new("Really black")
767
local maincolor = BrickColor.new("Really black")
768
local m = Instance.new("Model",char)
769
local m2 = Instance.new("Model",char)
770
local m3 = Instance.new("Model",char)
771
local mw1 = Instance.new("Model",char)
772
local mw2 = Instance.new("Model",char)
773
774
775
local extrawingmod1 = Instance.new("Model",char)
776
local extrawingmod2 = Instance.new("Model",char)
777
778
function CreateParta(parent,transparency,reflectance,material,brickcolor)
779
local p = Instance.new("Part")
780
p.TopSurface = 0
781
p.BottomSurface = 0
782
p.Parent = parent
783
p.Size = Vector3.new(0.1,0.1,0.1)
784
p.Transparency = transparency
785
p.Reflectance = reflectance
786
p.CanCollide = false
787
p.Locked = true
788
p.BrickColor = brickcolor
789
p.Material = material
790
return p
791
end
792
793
function CreateMesh(parent,meshtype,x1,y1,z1)
794
local mesh = Instance.new("SpecialMesh",parent)
795
mesh.MeshType = meshtype
796
mesh.Scale = Vector3.new(x1*10,y1*10,z1*10)
797
return mesh
798
end
799
800
function CreateSpecialMesh(parent,meshid,x1,y1,z1)
801
local mesh = Instance.new("SpecialMesh",parent)
802
mesh.MeshType = "FileMesh"
803
mesh.MeshId = meshid
804
mesh.Scale = Vector3.new(x1,y1,z1)
805
return mesh
806
end
807
808
809
function CreateSpecialGlowMesh(parent,meshid,x1,y1,z1)
810
local mesh = Instance.new("SpecialMesh",parent)
811
mesh.MeshType = "FileMesh"
812
mesh.MeshId = meshid
813
mesh.TextureId = "http://www.roblox.com/asset/?id=269748808"
814
mesh.Scale = Vector3.new(x1,y1,z1)
815
mesh.VertexColor = Vector3.new(parent.BrickColor.r, parent.BrickColor.g, parent.BrickColor.b)
816
return mesh
817
end
818
819
function CreateWeld(parent,part0,part1,C1X,C1Y,C1Z,C1Xa,C1Ya,C1Za,C0X,C0Y,C0Z,C0Xa,C0Ya,C0Za)
820
local weld = Instance.new("Weld")
821
weld.Parent = parent
822
weld.Part0 = part0
823
weld.Part1 = part1
824
weld.C1 = CFrame.new(C1X,C1Y,C1Z)*CFrame.Angles(C1Xa,C1Ya,C1Za)
825
weld.C0 = CFrame.new(C0X,C0Y,C0Z)*CFrame.Angles(C0Xa,C0Ya,C0Za)
826
return weld
827
end
828
829
830
--------------
831-
local sorb = CreateParta(m,1,1,"SmoothPlastic",BrickColor.random())
831+
832-
CreateWeld(sorb,rarm,sorb,0,1,0,math.rad(0),math.rad(0),math.rad(0),0,0,0,math.rad(0),math.rad(0),math.rad(0))
832+
833-
local sorb2 = CreateParta(m,1,1,"SmoothPlastic",BrickColor.random())
833+
834-
CreateWeld(sorb2,larm,sorb2,0,1,0,math.rad(0),math.rad(0),math.rad(0),0,0,0,math.rad(0),math.rad(0),math.rad(0))
834+
835
836-
local handlex = CreateParta(mw2,1,1,"Neon",maincolor)
836+
837-
CreateMesh(handle,"Brick",0,0,0)
837+
838-
local handlexweld = CreateWeld(handlex,tors,handlex,0,-1.5,-1.05,math.rad(0),math.rad(0),math.rad(0),0,0,0,math.rad(0),math.rad(0),math.rad(0))
838+
839-
local valuaring = 10
839+
840-
for i = 0, 49 do
840+
841-
	valuaring = valuaring + 10
841+
842-
rn = CreateParta(mw2,0,0,"Neon",halocolor)
842+
843-
CreateMesh(rn,"Brick",0.25,0.1,0.1)
843+
844-
CreateWeld(rn,handlex,rn,0,1,0,math.rad(0),math.rad(0),math.rad(valuaring),0,0,0,math.rad(0),math.rad(0),math.rad(0))
844+
845
v.BrickColor = BrickColor.new("Crimson")
846
v.Material = "Granite"
847-
handlex = CreateParta(mw2,1,1,"Neon",maincolor)
847+
848-
CreateMesh(handle,"Brick",0,0,0)
848+
849-
CreateWeld(handlex,tors,handlex,0,-3,-2.1,math.rad(0),math.rad(0),math.rad(0),0,0,0,math.rad(0),math.rad(0),math.rad(0))
849+
850-
local valuaring = 10
850+
851-
for i = 0, 49 do
851+
852-
	valuaring = valuaring + 10
852+
853-
rn = CreateParta(extrawingmod1,0,0,"Neon",halocolor)
853+
854-
CreateMesh(rn,"Brick",0.5,0.2,0.2)
854+
855-
CreateWeld(rn,handlex,rn,0,2,0,math.rad(0),math.rad(0),math.rad(valuaring),0,0,0,math.rad(0),math.rad(0),math.rad(0))
855+
856
if v:IsA("Part") then
857
v.BrickColor = BrickColor.new("Really black")
858
v.Material = "Neon"
859
end
860
end
861
for i, v in pairs(mw1:GetChildren()) do
862
if v:IsA("Part") then
863
v.Transparency = 1
864
v.BrickColor = BrickColor.new("Really black")
865
v.Material = "Neon"
866
end
867
end
868
for i, v in pairs(extrawingmod1:GetChildren()) do
869
if v:IsA("Part") then
870
v.Transparency = 1
871
v.BrickColor = BrickColor.new("White")
872
v.Material = "Neon"
873
end
874
end
875
for i, v in pairs(extrawingmod2:GetChildren()) do
876
if v:IsA("Part") then
877
v.Transparency = 1
878
v.BrickColor = BrickColor.new("White")
879
v.Material = "Neon"
880
end
881
end
882
local MAINRUINCOLOR = BrickColor.new("Really black")
883
local SECONDRUINCOLOR  = BrickColor.new("Really black")
884
local THIRDRUINCOLOR = BrickColor.new("Really black")
885
886
function RecolorThing(one,two,three,four,five,exonetran,exone,extwotran,extwo)
887
for i, v in pairs(mw2:GetChildren()) do
888
if v:IsA("Part") then
889
v.BrickColor = one
890
v.Material = "Neon"
891
end
892
end
893
refec.Color = ColorSequence.new(one.Color)
894
refec2.Color = ColorSequence.new(one.Color)
895
refec3.Color = ColorSequence.new(one.Color)
896
tr1.Color = ColorSequence.new(one.Color)
897
tr2.Color = ColorSequence.new(one.Color)
898
tr3.Color = ColorSequence.new(one.Color)
899
imgl2.ImageColor3 = one.Color
900
circl.ImageColor3 = two.Color
901
techc.ImageColor3 = one.Color
902
circl2.ImageColor3 = one.Color
903
ned.TextColor3 = two.Color
904
ned.TextStrokeColor3 = one.Color
905
for i, v in pairs(mw1:GetChildren()) do
906
if v:IsA("Part") then
907
v.Transparency = 0
908
v.BrickColor = two
909
v.Material = "Neon"
910
end
911
end
912
tl1.Color = ColorSequence.new(two.Color)
913
tl2.Color = ColorSequence.new(two.Color)
914
tl3.Color = ColorSequence.new(two.Color)
915
for i, v in pairs(m:GetChildren()) do
916
if v:IsA("Part") then
917
v.BrickColor = three
918
v.Material = "Ice"
919
end
920
end
921
for i, v in pairs(m2:GetChildren()) do
922
if v:IsA("Part") then
923
v.BrickColor = four
924
v.Material = "Ice"
925
end
926
end
927
for i, v in pairs(m3:GetChildren()) do
928
if v:IsA("Part") then
929
v.BrickColor = five
930
v.Material = "Neon"
931
end
932
end
933
for i, v in pairs(extrawingmod1:GetChildren()) do
934
if v:IsA("Part") then
935
v.Transparency = exonetran
936
v.BrickColor = exone
937
v.Material = "Neon"
938
end
939
end
940
for i, v in pairs(extrawingmod2:GetChildren()) do
941
if v:IsA("Part") then
942
v.Transparency = extwotran
943
v.BrickColor = extwo
944
v.Material = "Neon"
945
end
946
end
947
end
948
949
function bosschatfunc(text,color,watval)
950
for i,v in pairs(game:GetService("Players"):GetPlayers()) do
951
coroutine.resume(coroutine.create(function()
952
if v.PlayerGui:FindFirstChild("Dialog")~= nil then
953
v.PlayerGui:FindFirstChild("Dialog"):destroy()
954
end
955
local scrg = Instance.new("ScreenGui",v.PlayerGui)
956
scrg.Name = "Dialog"
957
local txtlb = Instance.new("TextLabel",scrg)
958
txtlb.Text = ""
959
txtlb.Font = "Bodoni"
960
txtlb.TextColor3 = Color3.new(0,0,0)
961
txtlb.TextStrokeTransparency = 0
962
txtlb.BackgroundTransparency = 0.75
963
txtlb.BackgroundColor3 = Color3.new(0,0,0)
964
txtlb.TextStrokeColor3 = color
965
txtlb.TextScaled = true
966
txtlb.Size = UDim2.new(1,0,0.25,0)
967
txtlb.TextXAlignment = "Left"
968
txtlb.Position = UDim2.new(0,0,0.75 + 1,0)
969
local txtlb2 = Instance.new("TextLabel",scrg)
970
txtlb2.Text = "Chaotic:"
971
txtlb2.Font = "Arcade"
972
txtlb2.TextColor3 = Color3.new(0,0,0)
973
txtlb2.TextStrokeTransparency = 0
974
txtlb2.BackgroundTransparency = 1
975
txtlb2.TextStrokeColor3 = color
976
txtlb2.TextSize = 40
977
txtlb2.Size = UDim2.new(1,0,0.25,0)
978
txtlb2.TextXAlignment = "Left"
979
txtlb2.Position = UDim2.new(0,0,1,0)
980
local fvalen = 0.55
981
local fval = -0.49
982
coroutine.resume(coroutine.create(function()
983
while true do
984
Swait()
985
if MODE == "Sanity" then
986
txtlb.Rotation = math.random(-1,1)
987
txtlb2.Rotation = math.random(-1,1)
988
txtlb.Position = txtlb.Position + UDim2.new(0,math.random(-1,1)/5,0,math.random(-1,1)/5)
989
txtlb2.Position = txtlb2.Position + UDim2.new(0,math.random(-1,1)/5,0,math.random(-1,1)/5)
990
txtlb.TextStrokeColor3 = BrickColor.random().Color
991
txtlb2.TextStrokeColor3 = BrickColor.random().Color
992
end
993
end
994
end))
995
coroutine.resume(coroutine.create(function()
996
while true do
997
Swait()
998
if scrg.Parent ~= nil then
999
	fvalen = fvalen - 0.0001
1000
elseif scrg.Parent == nil then
1001
break
1002
end
1003
end
1004
end))
1005
local flol = 1.75
1006
local flil = 1.6
1007
coroutine.resume(coroutine.create(function()
1008
	for i = 0, 9 do
1009
		Swait()
1010
		fval = fval + 0.05
1011
		flol = flol - 0.1
1012
		flil = flil - 0.1
1013
		txtlb.Text = ""
1014
		txtlb.Position = UDim2.new(0,0,flol,0)
1015
		txtlb2.Position = UDim2.new(0,0,flil,0)
1016
	end
1017
	txtlb.Text = text
1018
wait(watval)
1019
local valinc = 0
1020
for i = 0, 99 do
1021
Swait()
1022
valinc = valinc + 0.0001
1023
flol = flol + valinc
1024
flil = flil + valinc
1025
txtlb.Rotation = txtlb.Rotation + valinc*20
1026
txtlb2.Rotation = txtlb2.Rotation - valinc*50
1027
txtlb.Position = UDim2.new(0,0,flol,0)
1028
txtlb2.Position = UDim2.new(0,0,flil,0)
1029
txtlb.TextStrokeTransparency = txtlb.TextStrokeTransparency + 0.01
1030
txtlb.TextTransparency = txtlb.TextTransparency + 0.01
1031
txtlb2.TextStrokeTransparency = txtlb2.TextStrokeTransparency + 0.01
1032
txtlb2.TextTransparency = txtlb2.TextTransparency + 0.01
1033
txtlb.BackgroundTransparency = txtlb.BackgroundTransparency + 0.0025
1034
end
1035
scrg:Destroy()
1036
end))
1037
end))
1038
end
1039
end
1040
1041
function BigBlack(text,color,watval)
1042
for i,v in pairs(game:GetService("Players"):GetPlayers()) do
1043
coroutine.resume(coroutine.create(function()
1044
if v.PlayerGui:FindFirstChild("Dialog")~= nil then
1045
v.PlayerGui:FindFirstChild("Dialog"):destroy()
1046
end
1047
local scrg = Instance.new("ScreenGui",v.PlayerGui)
1048
scrg.Name = "Dialog"
1049
local txtlb = Instance.new("TextLabel",scrg)
1050
txtlb.Text = ""
1051
txtlb.Font = "Bodoni"
1052
txtlb.TextColor3 = Color3.new(0,0,0)
1053
txtlb.TextStrokeTransparency = 1
1054
txtlb.BackgroundTransparency = 1
1055
txtlb.BackgroundColor3 = Color3.new(0,0,0)
1056
txtlb.TextStrokeColor3 = color
1057
txtlb.TextScaled = true
1058
txtlb.Size = UDim2.new(1,0,1,0)
1059
txtlb.TextXAlignment = "Center"
1060
txtlb.Position = UDim2.new(0,0,6.75 + 1,0)
1061
local txtlb2 = Instance.new("TextLabel",scrg)
1062
txtlb2.Text = "Chaotic:"
1063
txtlb2.Font = "Arcade"
1064
txtlb2.TextColor3 = Color3.new(0,0,0)
1065
txtlb2.TextStrokeTransparency = 0
1066
txtlb2.BackgroundTransparency = 1
1067
txtlb2.TextStrokeColor3 = color
1068
txtlb2.TextSize = 40
1069
txtlb2.Size = UDim2.new(1,0,0.25,0)
1070
txtlb2.TextXAlignment = "Left"
1071
txtlb2.Position = UDim2.new(0,0,1,0)
1072
local fvalen = 0.55
1073
local fval = -0.49
1074
coroutine.resume(coroutine.create(function()
1075
while true do
1076
Swait()
1077
if MODE == "Sanity" then
1078
txtlb.Rotation = math.random(-1,1)
1079
txtlb2.Rotation = math.random(-1,1)
1080
txtlb.Position = txtlb.Position + UDim2.new(0,math.random(-1,1)/5,0,math.random(-1,1)/5)
1081
txtlb2.Position = txtlb2.Position + UDim2.new(0,math.random(-1,1)/5,0,math.random(-1,1)/5)
1082
txtlb.TextStrokeColor3 = BrickColor.random().Color
1083
txtlb2.TextStrokeColor3 = BrickColor.random().Color
1084
end
1085
end
1086
end))
1087
coroutine.resume(coroutine.create(function()
1088
while true do
1089
Swait()
1090
if scrg.Parent ~= nil then
1091
	fvalen = fvalen - 0.0001
1092
elseif scrg.Parent == nil then
1093
break
1094
end
1095
end
1096
end))
1097
local flol = 1.05
1098
local flil = 0.75
1099
local flil2 = -0.2
1100
	coroutine.resume(coroutine.create(function()
1101
	for i = 1,string.len(text),1 do
1102
		wait()
1103
		text.Text = string.sub(text,1,i)
1104
	end
1105
	end))
1106
coroutine.resume(coroutine.create(function()
1107
	for i = 0, 1 do
1108
		fval = fval + 0.05
1109
		flol = flol - 0.1
1110
		flil2 = flil2 + 0.1
1111
		txtlb.Text = ""
1112
		txtlb.Position = UDim2.new(flil2,0,0,0)
1113
		txtlb.BackgroundTransparency = 1 - 0.1
1114
		txtlb2.Position = UDim2.new(flil2,0,0,0)
1115
	end
1116
	
1117
		for i = 0, 99 do
1118
txtlb.TextStrokeTransparency = txtlb.TextStrokeTransparency - 0.01
1119
txtlb.TextTransparency = txtlb.TextTransparency - 0.01
1120
txtlb2.TextStrokeTransparency = txtlb2.TextStrokeTransparency - 0.01
1121
txtlb2.TextTransparency = txtlb2.TextTransparency - 0.01
1122
txtlb.BackgroundTransparency = txtlb.BackgroundTransparency - 0.0025
1123
	end
1124
	
1125
	txtlb.Text = text
1126
wait(watval)
1127
local valinc = 0
1128
for i = 0, 99 do
1129
Swait()
1130
valinc = valinc + 0.0002
1131
flol = flol + valinc
1132
flil2 = flil2 + valinc
1133
txtlb.Rotation = txtlb.Rotation + valinc*15
1134
txtlb2.Rotation = txtlb2.Rotation - valinc*15
1135
txtlb.Position = UDim2.new(flil2,0,0,0)
1136
txtlb2.Position = UDim2.new(flil2,0,0,0)
1137
txtlb.TextStrokeTransparency = txtlb.TextStrokeTransparency + 0.01
1138
txtlb.TextTransparency = txtlb.TextTransparency + 0.01
1139
txtlb2.TextStrokeTransparency = txtlb2.TextStrokeTransparency + 0.01
1140
txtlb2.TextTransparency = txtlb2.TextTransparency + 0.01
1141
txtlb.BackgroundTransparency = txtlb.BackgroundTransparency + 0.0025
1142
end
1143
scrg:Destroy()
1144
end))
1145
end))
1146
end
1147
end
1148
------
1149
1150
1151
function RemoveOutlines(part)
1152
  part.TopSurface, part.BottomSurface, part.LeftSurface, part.RightSurface, part.FrontSurface, part.BackSurface = 10, 10, 10, 10, 10, 10
1153
end
1154
function CreatePart(Parent, Material, Reflectance, Transparency, BColor, Name, Size)
1155
  local Part = Create("Part")({
1156
    Parent = Parent,
1157
    Reflectance = Reflectance,
1158
    Transparency = Transparency,
1159
    CanCollide = false,
1160
    Locked = true,
1161
    BrickColor = BrickColor.new(tostring(BColor)),
1162
    Name = Name,
1163
    Size = Size,
1164
    Material = Material
1165
  })
1166
  Part.CustomPhysicalProperties = PhysicalProperties.new(0.001, 0.001, 0.001, 0.001, 0.001)
1167
  RemoveOutlines(Part)
1168
  return Part
1169
end
1170
function CreateMesha(Mesh, Part, MeshType, MeshId, OffSet, Scale)
1171
  local Msh = Create(Mesh)({
1172
    Parent = Part,
1173
    Offset = OffSet,
1174
    Scale = Scale
1175
  })
1176
  if Mesh == "SpecialMesh" then
1177
    Msh.MeshType = MeshType
1178
    Msh.MeshId = MeshId
1179
  end
1180
  return Msh
1181
end
1182
function CreateWeld(Parent, Part0, Part1, C0, C1)
1183
  local Weld = Create("Weld")({
1184
    Parent = Parent,
1185
    Part0 = Part0,
1186
    Part1 = Part1,
1187
    C0 = C0,
1188
    C1 = C1
1189
  })
1190
  return Weld
1191
end
1192
1193
1194
1195
Player = plr
1196
PlayerGui = Player.PlayerGui
1197
Cam = workspace.CurrentCamera
1198
Backpack = Player.Backpack
1199
Character = Player.Character
1200
Humanoid = Character.Humanoid
1201
RootPart = Character["HumanoidRootPart"]
1202
Torso = Character["Torso"]
1203
Head = Character["Head"]
1204
RightArm = Character["Right Arm"]
1205
LeftArm = Character["Left Arm"]
1206
RightLeg = Character["Right Leg"]
1207
LeftLeg = Character["Left Leg"]
1208
RootJoint = RootPart["RootJoint"]
1209
Neck = Torso["Neck"]
1210
RightShoulder = Torso["Right Shoulder"]
1211
LeftShoulder = Torso["Left Shoulder"]
1212
RightHip = Torso["Right Hip"]
1213
LeftHip = Torso["Left Hip"]
1214
local sick = Instance.new("Sound",Torso)
1215
sick.SoundId = "rbxassetid://1306847940"
1216
sick.Looped = true
1217
sick.Pitch = 1
1218
sick.Volume = 0
1219
sick.TimePosition = 0
1220
Character.Archivable = true
1221
Humanoid.DisplayDistanceType = "None"
1222
1223
local naeeym2 = Instance.new("BillboardGui",Character)
1224
naeeym2.AlwaysOnTop = true
1225
naeeym2.Size = UDim2.new(5,35,2,35)
1226
naeeym2.StudsOffset = Vector3.new(0,3,0)
1227
naeeym2.Adornee = Character.Head
1228
naeeym2.Name = "Name"
1229
local tecks2 = Instance.new("TextLabel",naeeym2)
1230
tecks2.BackgroundTransparency = 1
1231
tecks2.TextScaled = true
1232
tecks2.BorderSizePixel = 0
1233
tecks2.Text = "NIGHTFALL BANISH"
1234
tecks2.Font = "Antique"
1235
tecks2.TextSize = 30
1236
tecks2.TextTransparency = 1
1237
tecks2.TextStrokeTransparency = 1
1238
tecks2.TextColor3 = Color3.new(0/0,0/0,0/0)
1239
tecks2.Size = UDim2.new(1,0,0.5,0)
1240
tecks2.Parent = naeeym2
1241
1242
IT = Instance.new
1243
CF = CFrame.new
1244
VT = Vector3.new
1245
RAD = math.rad
1246
C3 = Color3.new
1247
UD2 = UDim2.new
1248
BRICKC = BrickColor.new
1249
ANGLES = CFrame.Angles
1250
EULER = CFrame.fromEulerAnglesXYZ
1251
COS = math.cos
1252
ACOS = math.acos
1253
SIN = math.sin
1254
ASIN = math.asin
1255
ABS = math.abs
1256
MRANDOM = math.random
1257
FLOOR = math.floor
1258
1259
--//=================================\\
1260
--|| 	      USEFUL VALUES
1261
--\\=================================//
1262
1263
Animation_Speed = 3
1264
local FORCERESET = false
1265
Frame_Speed = 1 / 60 -- (1 / 30) OR (1 / 60)
1266
local Speed = 16
1267
local ROOTC0 = CF(0, 0, 0) * ANGLES(RAD(-90), RAD(0), RAD(180))
1268
local NECKC0 = CF(0, 1, 0) * ANGLES(RAD(-90), RAD(0), RAD(180))
1269
local RIGHTSHOULDERC0 = CF(-0.5, 0, 0) * ANGLES(RAD(0), RAD(90), RAD(0))
1270
local LEFTSHOULDERC0 = CF(0.5, 0, 0) * ANGLES(RAD(0), RAD(-90), RAD(0))
1271
local DAMAGEMULTIPLIER = 1
1272
local ANIM = "Idle"
1273
local ATTACK = false
1274
local EQUIPPED = false
1275
local HOLD = false
1276
local COMBO = 1
1277
local Rooted = false
1278
local INTRO = false
1279
local Gun = IT("Model")
1280
Gun.Name = "Gun"
1281
local SINE = 0
1282
local KEYHOLD = false
1283
local CHANGE = 2 / Animation_Speed
1284
local WALKINGANIM = false
1285
local VALUE1 = false
1286
local VALUE2 = false
1287
local ROBLOXIDLEANIMATION = IT("Animation")
1288
ROBLOXIDLEANIMATION.Name = "Roblox Idle Animation"
1289
ROBLOXIDLEANIMATION.AnimationId = "http://www.roblox.com/asset/?id=180435571"
1290
--ROBLOXIDLEANIMATION.Parent = Humanoid
1291
local WEAPONGUI = IT("ScreenGui", PlayerGui)
1292
WEAPONGUI.Name = "BanishV3Gui"
1293
local Weapon = IT("Model")
1294
Weapon.Name = "Adds"
1295
local FaceGradient = IT("Folder", Character)
1296
FaceGradient.Name = "FaceGradient"
1297
local Effects = IT("Folder", Weapon)
1298
Effects.Name = "Effects"
1299
local ANIMATOR = Humanoid.Animator
1300
local ANIMATE = Character:FindFirstChild("Animate")
1301
local UNANCHOR = true
1302
local TOBANISH = {}
1303
script.Parent = PlayerGui
1304
1305
--//=================================\\
1306
--\\=================================//
1307
1308
1309
--//=================================\\
1310
--||		  CUSTOMIZATION
1311
--\\=================================//
1312
1313
Class_Name = "Sharpshooter"
1314
Weapon_Name = "Add-ons"
1315
1316
	Custom_Color_1 = BRICKC("Really black"); --1st color for the weapon.
1317
	Custom_Color_2 = BRICKC("Maroon"); --2nd color for the weapon.
1318
1319
	Custom_Color_3 = BRICKC("Really black"); --Color for the abilities.
1320
	Custom_Color_4 = BRICKC("Institutional white"); --Color for the secondary bar.
1321
	Custom_Color_5 = BRICKC("Institutional white"); --Color for the mana bar.
1322
	Custom_Color_6 = BRICKC("Institutional white"); --Color for the health bar.
1323
	Custom_Color_7 = BRICKC("Institutional white"); --Color for the stun bar.
1324
1325
	Custom_Color_8 = BRICKC("Institutional white"); --Background for the mana bar.
1326
	Custom_Color_9 = BRICKC("Institutional white"); --Background for the secondary mana bar.
1327
	Custom_Color_10 = BRICKC("Institutional white"); --Background for the stun bar.
1328
	Custom_Color_11 = BRICKC("Institutional white"); --Background for the health bar.
1329
	Custom_Color_12 = BRICKC("Institutional white"); --Background for the abilities.
1330
1331
1332
Player_Size = 1 --Size of the player.
1333
Animation_Speed = 3
1334
Frame_Speed = 1 / 60 -- (1 / 30) OR (1 / 60)
1335
1336
local Speed = 16
1337
local Effects2 = {}
1338
1339
--//=================================\\
1340
--|| 	  END OF CUSTOMIZATION
1341
--\\=================================//
1342
1343
1344
--//=================================\\
1345
--|| SAZERENOS' ARTIFICIAL HEARTBEAT
1346
--\\=================================//
1347
1348
ArtificialHB = Instance.new("BindableEvent", script)
1349
ArtificialHB.Name = "ArtificialHB"
1350
1351
script:WaitForChild("ArtificialHB")
1352
1353
frame = Frame_Speed
1354
tf = 0
1355
allowframeloss = false
1356
tossremainder = false
1357
lastframe = tick()
1358
script.ArtificialHB:Fire()
1359
1360
game:GetService("RunService").Heartbeat:connect(function(s, p)
1361
	tf = tf + s
1362
	if tf >= frame then
1363
		if allowframeloss then
1364
			script.ArtificialHB:Fire()
1365
			lastframe = tick()
1366
		else
1367
			for i = 1, math.floor(tf / frame) do
1368
				script.ArtificialHB:Fire()
1369
			end
1370
		lastframe = tick()
1371
		end
1372
		if tossremainder then
1373
			tf = 0
1374
		else
1375
			tf = tf - frame * math.floor(tf / frame)
1376
		end
1377
	end
1378
end)
1379
1380
--//=================================\\
1381
--\\=================================//
1382
1383
--//=================================\\
1384
--|| 	      SOME FUNCTIONS
1385
--\\=================================//
1386
1387
function Clerp(a, b, t)
1388
	local qa = {QuaternionFromCFrame(a)}
1389
	local qb = {QuaternionFromCFrame(b)}
1390
	local ax, ay, az = a.x, a.y, a.z
1391
	local bx, by, bz = b.x, b.y, b.z
1392
	local _t = 1 - t
1393
	return QuaternionToCFrame(_t * ax + t * bx, _t * ay + t * by, _t * az + t * bz, QuaternionSlerp(qa, qb, t))
1394
end
1395
1396
function CreateFrame(PARENT, TRANSPARENCY, BORDERSIZEPIXEL, POSITION, SIZE, COLOR, BORDERCOLOR, NAME)
1397
	local frame = IT("Frame")
1398
	frame.BackgroundTransparency = TRANSPARENCY
1399
	frame.BorderSizePixel = BORDERSIZEPIXEL
1400
	frame.Position = POSITION
1401
	frame.Size = SIZE
1402
	frame.BackgroundColor3 = COLOR
1403
	frame.BorderColor3 = BORDERCOLOR
1404
	frame.Name = NAME
1405
	frame.Parent = PARENT
1406
	return frame
1407
end
1408
1409
function CreateLabel(PARENT, TEXT, TEXTCOLOR, TEXTFONTSIZE, TEXTFONT, TRANSPARENCY, BORDERSIZEPIXEL, STROKETRANSPARENCY, NAME)
1410
	local label = IT("TextLabel")
1411
	label.BackgroundTransparency = 1
1412
	label.Size = UD2(1, 0, 1, 0)
1413
	label.Position = UD2(0, 0, 0, 0)
1414
	label.TextColor3 = TEXTCOLOR
1415
	label.TextStrokeTransparency = STROKETRANSPARENCY
1416
	label.TextTransparency = TRANSPARENCY
1417
	label.FontSize = TEXTFONTSIZE
1418
	label.Font = TEXTFONT
1419
	label.BorderSizePixel = BORDERSIZEPIXEL
1420
	label.TextScaled = false
1421
	label.Text = TEXT
1422
	label.Name = NAME
1423
	label.Parent = PARENT
1424
	return label
1425
end
1426
1427
function CreateDebreeRing(FLOOR,POSITION,SIZE,BLOCKSIZE,SWAIT)
1428
	if FLOOR ~= nil then
1429
		coroutine.resume(coroutine.create(function()
1430
			local PART = CreatePart(3, Effects, "Plastic", 0, 1, "Pearl", "DebreeCenter", VT(0,0,0))
1431
			PART.CFrame = CF(POSITION)
1432
			for i = 1, 45 do
1433
				local RingPiece = CreatePart(3, Effects, "Plastic", 0, 0, "Pearl", "DebreePart", BLOCKSIZE)
1434
				RingPiece.Material = FLOOR.Material
1435
				RingPiece.Color = FLOOR.Color
1436
				RingPiece.CFrame = PART.CFrame * ANGLES(RAD(0), RAD(i*8), RAD(0)) * CF(SIZE, 0, 0) * ANGLES(RAD(MRANDOM(-360,360)),RAD(MRANDOM(-360,360)),RAD(MRANDOM(-360,360)))
1437
				Debris:AddItem(RingPiece,SWAIT)
1438
			end
1439
			PART:remove()
1440
		end))
1441
	end
1442
end
1443
1444
function CreateFlyingDebree(FLOOR,POSITION,AMOUNT,BLOCKSIZE,SWAIT,STRENGTH)
1445
	if FLOOR ~= nil then
1446
		for i = 1, AMOUNT do
1447
			local DEBREE = CreatePart(3, Effects, "Neon", FLOOR.Reflectance, FLOOR.Transparency, "Peal", "Debree", BLOCKSIZE, false)
1448
			DEBREE.Material = FLOOR.Material
1449
			DEBREE.Color = FLOOR.Color
1450
			DEBREE.CFrame = POSITION * ANGLES(RAD(MRANDOM(-360,360)),RAD(MRANDOM(-360,360)),RAD(MRANDOM(-360,360)))
1451
			DEBREE.Velocity = VT(MRANDOM(-STRENGTH,STRENGTH),MRANDOM(-STRENGTH,STRENGTH),MRANDOM(-STRENGTH,STRENGTH))
1452
			coroutine.resume(coroutine.create(function()
1453
				Swait(15)
1454
				DEBREE.Parent = workspace
1455
				DEBREE.CanCollide = true
1456
				Debris:AddItem(DEBREE,SWAIT)
1457
			end))
1458
		end
1459
	end
1460
end
1461
1462
function Raycast(POSITION, DIRECTION, RANGE, IGNOREDECENDANTS)
1463
	return workspace:FindPartOnRay(Ray.new(POSITION, DIRECTION.unit * RANGE), IGNOREDECENDANTS)
1464
end
1465
1466
function PositiveAngle(NUMBER)
1467
	if NUMBER >= 0 then
1468
		NUMBER = 0
1469
	end
1470
	return NUMBER
1471
end
1472
1473
function NegativeAngle(NUMBER)
1474
	if NUMBER <= 0 then
1475
		NUMBER = 0
1476
	end
1477
	return NUMBER
1478
end
1479
1480
function Swait(NUMBER)
1481
	if NUMBER == 0 or NUMBER == nil then
1482
		ArtificialHB.Event:wait()
1483
	else
1484
		for i = 1, NUMBER do
1485
			ArtificialHB.Event:wait()
1486
		end
1487
	end
1488
end
1489
1490
function CreateMesh(MESH, PARENT, MESHTYPE, MESHID, TEXTUREID, SCALE, OFFSET)
1491
	local NEWMESH = IT(MESH)
1492
	if MESH == "SpecialMesh" then
1493
		NEWMESH.MeshType = MESHTYPE
1494
		if MESHID ~= "nil" and MESHID ~= "" then
1495
			NEWMESH.MeshId = "http://www.roblox.com/asset/?id="..MESHID
1496
		end
1497
		if TEXTUREID ~= "nil" and TEXTUREID ~= "" then
1498
			NEWMESH.TextureId = "http://www.roblox.com/asset/?id="..TEXTUREID
1499
		end
1500
	end
1501
	NEWMESH.Offset = OFFSET or VT(0, 0, 0)
1502
	NEWMESH.Scale = SCALE
1503
	NEWMESH.Parent = PARENT
1504
	return NEWMESH
1505
end
1506
1507
function CreatePart(FORMFACTOR, PARENT, MATERIAL, REFLECTANCE, TRANSPARENCY, BRICKCOLOR, NAME, SIZE, ANCHOR)
1508
	local NEWPART = IT("Part")
1509
	NEWPART.formFactor = FORMFACTOR
1510
	NEWPART.Reflectance = REFLECTANCE
1511
	NEWPART.Transparency = TRANSPARENCY
1512
	NEWPART.CanCollide = false
1513
	NEWPART.Locked = true
1514
	NEWPART.Anchored = true
1515
	if ANCHOR == false then
1516
		NEWPART.Anchored = false
1517
	end
1518
	NEWPART.BrickColor = BRICKC(tostring(BRICKCOLOR))
1519
	NEWPART.Name = NAME
1520
	NEWPART.Size = SIZE
1521
	NEWPART.Position = Torso.Position
1522
	NEWPART.Material = MATERIAL
1523
	NEWPART:BreakJoints()
1524
	NEWPART.Parent = PARENT
1525
	return NEWPART
1526
end
1527
1528
	local function weldBetween(a, b)
1529
	    local weldd = Instance.new("ManualWeld")
1530
	    weldd.Part0 = a
1531
	    weldd.Part1 = b
1532
	    weldd.C0 = CFrame.new()
1533
	    weldd.C1 = b.CFrame:inverse() * a.CFrame
1534
	    weldd.Parent = a
1535
	    return weldd
1536
	end
1537
1538
1539
function QuaternionFromCFrame(cf)
1540
	local mx, my, mz, m00, m01, m02, m10, m11, m12, m20, m21, m22 = cf:components()
1541
	local trace = m00 + m11 + m22
1542
	if trace > 0 then 
1543
		local s = math.sqrt(1 + trace)
1544
		local recip = 0.5 / s
1545
		return (m21 - m12) * recip, (m02 - m20) * recip, (m10 - m01) * recip, s * 0.5
1546
	else
1547
		local i = 0
1548
		if m11 > m00 then
1549
			i = 1
1550
		end
1551
		if m22 > (i == 0 and m00 or m11) then
1552
			i = 2
1553
		end
1554
		if i == 0 then
1555
			local s = math.sqrt(m00 - m11 - m22 + 1)
1556
			local recip = 0.5 / s
1557
			return 0.5 * s, (m10 + m01) * recip, (m20 + m02) * recip, (m21 - m12) * recip
1558
		elseif i == 1 then
1559
			local s = math.sqrt(m11 - m22 - m00 + 1)
1560
			local recip = 0.5 / s
1561
			return (m01 + m10) * recip, 0.5 * s, (m21 + m12) * recip, (m02 - m20) * recip
1562
		elseif i == 2 then
1563
			local s = math.sqrt(m22 - m00 - m11 + 1)
1564
			local recip = 0.5 / s return (m02 + m20) * recip, (m12 + m21) * recip, 0.5 * s, (m10 - m01) * recip
1565
		end
1566
	end
1567
end
1568
 
1569
function QuaternionToCFrame(px, py, pz, x, y, z, w)
1570
	local xs, ys, zs = x + x, y + y, z + z
1571
	local wx, wy, wz = w * xs, w * ys, w * zs
1572
	local xx = x * xs
1573
	local xy = x * ys
1574
	local xz = x * zs
1575
	local yy = y * ys
1576
	local yz = y * zs
1577
	local zz = z * zs
1578
	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))
1579
end
1580
 
1581
function QuaternionSlerp(a, b, t)
1582
	local cosTheta = a[1] * b[1] + a[2] * b[2] + a[3] * b[3] + a[4] * b[4]
1583
	local startInterp, finishInterp;
1584
	if cosTheta >= 0.0001 then
1585
		if (1 - cosTheta) > 0.0001 then
1586
			local theta = ACOS(cosTheta)
1587
			local invSinTheta = 1 / SIN(theta)
1588
			startInterp = SIN((1 - t) * theta) * invSinTheta
1589
			finishInterp = SIN(t * theta) * invSinTheta
1590
		else
1591
			startInterp = 1 - t
1592
			finishInterp = t
1593
		end
1594
	else
1595
		if (1 + cosTheta) > 0.0001 then
1596
			local theta = ACOS(-cosTheta)
1597
			local invSinTheta = 1 / SIN(theta)
1598
			startInterp = SIN((t - 1) * theta) * invSinTheta
1599
			finishInterp = SIN(t * theta) * invSinTheta
1600
		else
1601
			startInterp = t - 1
1602
			finishInterp = t
1603
		end
1604
	end
1605
	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
1606
end
1607
1608
function Clerp(a, b, t)
1609
	local qa = {QuaternionFromCFrame(a)}
1610
	local qb = {QuaternionFromCFrame(b)}
1611
	local ax, ay, az = a.x, a.y, a.z
1612
	local bx, by, bz = b.x, b.y, b.z
1613
	local _t = 1 - t
1614
	return QuaternionToCFrame(_t * ax + t * bx, _t * ay + t * by, _t * az + t * bz, QuaternionSlerp(qa, qb, t))
1615
end
1616
1617
function CreateFrame(PARENT, TRANSPARENCY, BORDERSIZEPIXEL, POSITION, SIZE, COLOR, BORDERCOLOR, NAME)
1618
	local frame = IT("Frame")
1619
	frame.BackgroundTransparency = TRANSPARENCY
1620
	frame.BorderSizePixel = BORDERSIZEPIXEL
1621
	frame.Position = POSITION
1622
	frame.Size = SIZE
1623
	frame.BackgroundColor3 = COLOR
1624
	frame.BorderColor3 = BORDERCOLOR
1625
	frame.Name = NAME
1626
	frame.Parent = PARENT
1627
	return frame
1628
end
1629
1630
function CreateLabel(PARENT, TEXT, TEXTCOLOR, TEXTFONTSIZE, TEXTFONT, TRANSPARENCY, BORDERSIZEPIXEL, STROKETRANSPARENCY, NAME)
1631
	local label = IT("TextLabel")
1632
	label.BackgroundTransparency = 1
1633
	label.Size = UD2(1, 0, 1, 0)
1634
	label.Position = UD2(0, 0, 0, 0)
1635
	label.TextColor3 = TEXTCOLOR
1636
	label.TextStrokeTransparency = STROKETRANSPARENCY
1637
	label.TextTransparency = TRANSPARENCY
1638
	label.FontSize = TEXTFONTSIZE
1639
	label.Font = TEXTFONT
1640
	label.BorderSizePixel = BORDERSIZEPIXEL
1641
	label.TextScaled = false
1642
	label.Text = TEXT
1643
	label.Name = NAME
1644
	label.Parent = PARENT
1645
	return label
1646
end
1647
1648
function NoOutlines(PART)
1649
	PART.TopSurface, PART.BottomSurface, PART.LeftSurface, PART.RightSurface, PART.FrontSurface, PART.BackSurface = 10, 10, 10, 10, 10, 10
1650
end
1651
1652
function CreateWeldOrSnapOrMotor(TYPE, PARENT, PART0, PART1, C0, C1)
1653
	local NEWWELD = IT(TYPE)
1654
	NEWWELD.Part0 = PART0
1655
	NEWWELD.Part1 = PART1
1656
	NEWWELD.C0 = C0
1657
	NEWWELD.C1 = C1
1658
	NEWWELD.Parent = PARENT
1659
	return NEWWELD
1660
end
1661
1662
local S = IT("Sound")
1663
function CreateSound(ID, PARENT, VOLUME, PITCH, DOESLOOP)
1664
	local NEWSOUND = nil
1665
	coroutine.resume(coroutine.create(function()
1666
		NEWSOUND = S:Clone()
1667
		NEWSOUND.Parent = PARENT
1668
		NEWSOUND.Volume = VOLUME
1669
		NEWSOUND.Pitch = PITCH
1670
		NEWSOUND.SoundId = "http://www.roblox.com/asset/?id="..ID
1671
		NEWSOUND:play()
1672
		if DOESLOOP == true then
1673
			NEWSOUND.Looped = true
1674
		else
1675
			repeat wait(1) until NEWSOUND.Playing == false or NEWSOUND.Parent ~= PARENT
1676
			NEWSOUND:remove()
1677
		end
1678
	end))
1679
	return NEWSOUND
1680
end
1681
1682
function CFrameFromTopBack(at, top, back)
1683
	local right = top:Cross(back)
1684
	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)
1685
end
1686
1687
--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})
1688
function WACKYEFFECT(Table)
1689
	local TYPE = (Table.EffectType or "Sphere")
1690
	local SIZE = (Table.Size or VT(1,1,1))
1691
	local ENDSIZE = (Table.Size2 or VT(0,0,0))
1692
	local TRANSPARENCY = (Table.Transparency or 0)
1693
	local ENDTRANSPARENCY = (Table.Transparency2 or 1)
1694
	local CFRAME = (Table.CFrame or Torso.CFrame)
1695
	local MOVEDIRECTION = (Table.MoveToPos or nil)
1696
	local ROTATION1 = (Table.RotationX or 0)
1697
	local ROTATION2 = (Table.RotationY or 0)
1698
	local ROTATION3 = (Table.RotationZ or 0)
1699
	local MATERIAL = (Table.Material or "Neon")
1700
	local COLOR = (Table.Color or C3(1,1,1))
1701
	local TIME = (Table.Time or 45)
1702
	local SOUNDID = (Table.SoundID or nil)
1703
	local SOUNDPITCH = (Table.SoundPitch or nil)
1704
	local SOUNDVOLUME = (Table.SoundVolume or nil)
1705
	coroutine.resume(coroutine.create(function()
1706
		local PLAYSSOUND = false
1707
		local SOUND = nil
1708
		local EFFECT = CreatePart(3, Effects, MATERIAL, 0, TRANSPARENCY, BRICKC("Pearl"), "Effect", VT(1,1,1), true)
1709
		if SOUNDID ~= nil and SOUNDPITCH ~= nil and SOUNDVOLUME ~= nil then
1710
			PLAYSSOUND = true
1711
			SOUND = CreateSound(SOUNDID, EFFECT, SOUNDVOLUME, SOUNDPITCH, false)
1712
		end
1713
		EFFECT.Color = COLOR
1714
		local MSH = nil
1715
		if TYPE == "Sphere" then
1716
			MSH = CreateMesh("SpecialMesh", EFFECT, "Sphere", "", "", SIZE, VT(0,0,0))
1717
		elseif TYPE == "Block" then
1718
			MSH = IT("BlockMesh",EFFECT)
1719
			MSH.Scale = VT(SIZE.X,SIZE.X,SIZE.X)
1720
		elseif TYPE == "Wave" then
1721
			MSH = CreateMesh("SpecialMesh", EFFECT, "FileMesh", "20329976", "", SIZE, VT(0,0,-SIZE.X/8))
1722
		elseif TYPE == "Ring" then
1723
			MSH = CreateMesh("SpecialMesh", EFFECT, "FileMesh", "559831844", "", VT(SIZE.X,SIZE.X,0.1), VT(0,0,0))
1724
		elseif TYPE == "Slash" then
1725
			MSH = CreateMesh("SpecialMesh", EFFECT, "FileMesh", "662586858", "", VT(SIZE.X/10,0,SIZE.X/10), VT(0,0,0))
1726
		elseif TYPE == "Round Slash" then
1727
			MSH = CreateMesh("SpecialMesh", EFFECT, "FileMesh", "662585058", "", VT(SIZE.X/10,0,SIZE.X/10), VT(0,0,0))
1728
		elseif TYPE == "Swirl" then
1729
			MSH = CreateMesh("SpecialMesh", EFFECT, "FileMesh", "1051557", "", SIZE, VT(0,0,0))
1730
		elseif TYPE == "Skull" then
1731
			MSH = CreateMesh("SpecialMesh", EFFECT, "FileMesh", "4770583", "", SIZE, VT(0,0,0))
1732
		elseif TYPE == "Crystal" then
1733
			MSH = CreateMesh("SpecialMesh", EFFECT, "FileMesh", "9756362", "", SIZE, VT(0,0,0))
1734
		end
1735
		if MSH ~= nil then
1736
			local MOVESPEED = nil
1737
			if MOVEDIRECTION ~= nil then
1738
				MOVESPEED = (CFRAME.p - MOVEDIRECTION).Magnitude/TIME
1739
			end
1740
			local GROWTH = SIZE - ENDSIZE
1741
			local TRANS = TRANSPARENCY - ENDTRANSPARENCY
1742
			if TYPE == "Block" then
1743
				EFFECT.CFrame = CFRAME*ANGLES(RAD(MRANDOM(0,360)),RAD(MRANDOM(0,360)),RAD(MRANDOM(0,360)))
1744
			else
1745
				EFFECT.CFrame = CFRAME
1746
			end
1747
			for LOOP = 1, TIME+1 do
1748
				Swait()
1749
				MSH.Scale = MSH.Scale - GROWTH/TIME
1750
				if TYPE == "Wave" then
1751
					MSH.Offset = VT(0,0,-MSH.Scale.X/8)
1752
				end
1753
				EFFECT.Transparency = EFFECT.Transparency - TRANS/TIME
1754
				if TYPE == "Block" then
1755
					EFFECT.CFrame = CFRAME*ANGLES(RAD(MRANDOM(0,360)),RAD(MRANDOM(0,360)),RAD(MRANDOM(0,360)))
1756
				else
1757
					EFFECT.CFrame = EFFECT.CFrame*ANGLES(RAD(ROTATION1),RAD(ROTATION2),RAD(ROTATION3))
1758
				end
1759
				if MOVEDIRECTION ~= nil then
1760
					local ORI = EFFECT.Orientation
1761
					EFFECT.CFrame = CF(EFFECT.Position,MOVEDIRECTION)*CF(0,0,-MOVESPEED)
1762
					EFFECT.Orientation = ORI
1763
				end
1764
			end
1765
			if PLAYSSOUND == false then
1766
				EFFECT:remove()
1767
			else
1768
				SOUND.Stopped:Connect(function()
1769
					EFFECT:remove()
1770
				end)
1771
			end
1772
		else
1773
			if PLAYSSOUND == false then
1774
				EFFECT:remove()
1775
			else
1776
				repeat Swait() until SOUND.Playing == false
1777
				EFFECT:remove()
1778
			end
1779
		end
1780
	end))
1781
end
1782
1783
local DECAL = IT("Decal")
1784
function MakeRing()
1785
	local RING = CreatePart(3, Effects, "Neon", 0, 1, BRICKC("Really black"), "MagicRing", VT(0, 0, 0), true)
1786
	local MSH = IT("BlockMesh", RING)
1787
	local TOP = DECAL:Clone()
1788
	local BOTTOM = DECAL:Clone()
1789
	TOP.Parent = RING
1790
	BOTTOM.Parent = RING
1791
	TOP.Face = "Top"
1792
	BOTTOM.Face = "Bottom"
1793
	TOP.Texture = "http://www.roblox.com/asset/?id=127817121"
1794
	BOTTOM.Texture = "http://www.roblox.com/asset/?id=127817121"
1795
	local function REMOVE()
1796
		coroutine.resume(coroutine.create(function()
1797
			local SIZE = MSH.Scale.X
1798
			for i = 1, 35 do
1799
				Swait()
1800
				MSH.Scale = MSH.Scale - VT(SIZE, 0, SIZE) / 60
1801
				TOP.Transparency = TOP.Transparency + 0.02857142857142857
1802
				BOTTOM.Transparency = BOTTOM.Transparency + 0.02857142857142857
1803
				RING.CFrame = RING.CFrame * ANGLES(RAD(0), RAD(-5), RAD(0))
1804
			end
1805
			RING:remove()
1806
		end))
1807
	end
1808
	return RING, MSH, REMOVE
1809
end
1810
1811
function MakeForm(PART,TYPE)
1812
	if TYPE == "Cyl" then
1813
		local MSH = IT("CylinderMesh",PART)
1814
	elseif TYPE == "Ball" then
1815
		local MSH = IT("SpecialMesh",PART)
1816
		MSH.MeshType = "Sphere"
1817
	elseif TYPE == "Wedge" then
1818
		local MSH = IT("SpecialMesh",PART)
1819
		MSH.MeshType = "Wedge"
1820
	end
1821
end
1822
1823
function SpawnTrail(FROM,TO,BIG)
1824
	local TRAIL = CreatePart(3, Effects, "Neon", 0, 0.5, "Really black", "Trail", VT(0,0,0))
1825
	MakeForm(TRAIL,"Cyl")
1826
	local DIST = (FROM - TO).Magnitude
1827
	if BIG == true then
1828
		TRAIL.Size = VT(0.5,DIST,0.5)
1829
	else
1830
		TRAIL.Size = VT(0.25,DIST,0.25)
1831
	end
1832
	TRAIL.CFrame = CF(FROM, TO) * CF(0, 0, -DIST/2) * ANGLES(RAD(90),RAD(0),RAD(0))
1833
	coroutine.resume(coroutine.create(function()
1834
		for i = 1, 5 do
1835
			Swait()
1836
			TRAIL.Transparency = TRAIL.Transparency + 0.1
1837
		end
1838
		TRAIL:remove()
1839
	end))
1840
end
1841
--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})
1842
function WACKYEFFECT(Table)
1843
	local TYPE = (Table.EffectType or "Sphere")
1844
	local SIZE = (Table.Size or VT(1,1,1))
1845
	local ENDSIZE = (Table.Size2 or VT(0,0,0))
1846
	local TRANSPARENCY = (Table.Transparency or 0)
1847
	local ENDTRANSPARENCY = (Table.Transparency2 or 1)
1848
	local CFRAME = (Table.CFrame or Torso.CFrame)
1849
	local MOVEDIRECTION = (Table.MoveToPos or nil)
1850
	local ROTATION1 = (Table.RotationX or 0)
1851
	local ROTATION2 = (Table.RotationY or 0)
1852
	local ROTATION3 = (Table.RotationZ or 0)
1853
	local MATERIAL = (Table.Material or "Neon")
1854
	local COLOR = (Table.Color or C3(1,1,1))
1855
	local TIME = (Table.Time or 45)
1856
	local SOUNDID = (Table.SoundID or nil)
1857
	local SOUNDPITCH = (Table.SoundPitch or nil)
1858
	local SOUNDVOLUME = (Table.SoundVolume or nil)
1859
	coroutine.resume(coroutine.create(function()
1860
		local PLAYSSOUND = false
1861
		local SOUND = nil
1862
		local EFFECT = CreatePart(3, Effects, MATERIAL, 0, TRANSPARENCY, BRICKC("Pearl"), "Effect", VT(1,1,1), true)
1863
		if SOUNDID ~= nil and SOUNDPITCH ~= nil and SOUNDVOLUME ~= nil then
1864
			PLAYSSOUND = true
1865
			SOUND = CreateSound(SOUNDID, EFFECT, SOUNDVOLUME, SOUNDPITCH, false)
1866
		end
1867
		EFFECT.Color = COLOR
1868
		local MSH = nil
1869
		if TYPE == "Sphere" then
1870
			MSH = CreateMesh("SpecialMesh", EFFECT, "Sphere", "", "", SIZE, VT(0,0,0))
1871
		elseif TYPE == "Block" or TYPE == "Box" then
1872
			MSH = IT("BlockMesh",EFFECT)
1873
			MSH.Scale = SIZE
1874
		elseif TYPE == "Wave" then
1875
			MSH = CreateMesh("SpecialMesh", EFFECT, "FileMesh", "20329976", "", SIZE, VT(0,0,-SIZE.X/8))
1876
		elseif TYPE == "Ring" then
1877
			MSH = CreateMesh("SpecialMesh", EFFECT, "FileMesh", "559831844", "", VT(SIZE.X,SIZE.X,0.1), VT(0,0,0))
1878
		elseif TYPE == "Slash" then
1879
			MSH = CreateMesh("SpecialMesh", EFFECT, "FileMesh", "662586858", "", VT(SIZE.X/10,0,SIZE.X/10), VT(0,0,0))
1880
		elseif TYPE == "Round Slash" then
1881
			MSH = CreateMesh("SpecialMesh", EFFECT, "FileMesh", "662585058", "", VT(SIZE.X/10,0,SIZE.X/10), VT(0,0,0))
1882
		elseif TYPE == "Swirl" then
1883
			MSH = CreateMesh("SpecialMesh", EFFECT, "FileMesh", "1051557", "", SIZE, VT(0,0,0))
1884
		elseif TYPE == "Skull" then
1885
			MSH = CreateMesh("SpecialMesh", EFFECT, "FileMesh", "4770583", "", SIZE, VT(0,0,0))
1886
		elseif TYPE == "Crystal" then
1887
			MSH = CreateMesh("SpecialMesh", EFFECT, "FileMesh", "9756362", "", SIZE, VT(0,0,0))
1888
		end
1889
		if MSH ~= nil then
1890
			local MOVESPEED = nil
1891
			if MOVEDIRECTION ~= nil then
1892
				MOVESPEED = (CFRAME.p - MOVEDIRECTION).Magnitude/TIME
1893
			end
1894
			local GROWTH = SIZE - ENDSIZE
1895
			local TRANS = TRANSPARENCY - ENDTRANSPARENCY
1896
			if TYPE == "Block" then
1897
				EFFECT.CFrame = CFRAME*ANGLES(RAD(MRANDOM(0,360)),RAD(MRANDOM(0,360)),RAD(MRANDOM(0,360)))
1898
			else
1899
				EFFECT.CFrame = CFRAME
1900
			end
1901
			for LOOP = 1, TIME+1 do
1902
				Swait()
1903
				MSH.Scale = MSH.Scale - GROWTH/TIME
1904
				if TYPE == "Wave" then
1905
					MSH.Offset = VT(0,0,-MSH.Scale.X/8)
1906
				end
1907
				EFFECT.Transparency = EFFECT.Transparency - TRANS/TIME
1908
				if TYPE == "Block" then
1909
					EFFECT.CFrame = CFRAME*ANGLES(RAD(MRANDOM(0,360)),RAD(MRANDOM(0,360)),RAD(MRANDOM(0,360)))
1910
				else
1911
					EFFECT.CFrame = EFFECT.CFrame*ANGLES(RAD(ROTATION1),RAD(ROTATION2),RAD(ROTATION3))
1912
				end
1913
				if MOVEDIRECTION ~= nil then
1914
					local ORI = EFFECT.Orientation
1915
					EFFECT.CFrame = CF(EFFECT.Position,MOVEDIRECTION)*CF(0,0,-MOVESPEED)
1916
					EFFECT.Orientation = ORI
1917
				end
1918
			end
1919
			if PLAYSSOUND == false then
1920
				EFFECT:remove()
1921
			else
1922
				repeat Swait() until EFFECT:FindFirstChildOfClass("Sound") == nil
1923
				EFFECT:remove()
1924
			end
1925
		else
1926
			if PLAYSSOUND == false then
1927
				EFFECT:remove()
1928
			else
1929
				repeat Swait() until EFFECT:FindFirstChildOfClass("Sound") == nil
1930
				EFFECT:remove()
1931
			end
1932
		end
1933
	end))
1934
end
1935
1936
function MakeForm(PART,TYPE)
1937
	if TYPE == "Cyl" then
1938
		local MSH = IT("CylinderMesh",PART)
1939
	elseif TYPE == "Ball" then
1940
		local MSH = IT("SpecialMesh",PART)
1941
		MSH.MeshType = "Sphere"
1942
	elseif TYPE == "Wedge" then
1943
		local MSH = IT("SpecialMesh",PART)
1944
		MSH.MeshType = "Wedge"
1945
	end
1946
end
1947
1948
function SpawnTrail(FROM,TO,BIG)
1949
	local TRAIL = CreatePart(3, Effects, "Neon", 0, 0.5, "Really black", "Trail", VT(0,0,0))
1950
	MakeForm(TRAIL,"Cyl")
1951
	local DIST = (FROM - TO).Magnitude
1952
	if BIG == true then
1953
		TRAIL.Size = VT(0.5,DIST,0.5)
1954
	else
1955
		TRAIL.Size = VT(0.25,DIST,0.25)
1956
	end
1957
	TRAIL.CFrame = CF(FROM, TO) * CF(0, 0, -DIST/2) * ANGLES(RAD(90),RAD(0),RAD(0))
1958
	coroutine.resume(coroutine.create(function()
1959
		for i = 1, 5 do
1960
			Swait()
1961
			TRAIL.Transparency = TRAIL.Transparency + 0.1
1962
		end
1963
		TRAIL:remove()
1964
	end))
1965
end
1966
1967
function SHAKECAM(POSITION, RANGE, INTENSITY, TIME)
1968
	local TORSO = Torso
1969
	local HUM = Humanoid
1970
	if TORSO and RANGE >= (TORSO.Position - POSITION).Magnitude then
1971
		coroutine.wrap(function()
1972
			VT = Vector3.new
1973
			MRANDOM = math.random
1974
			local A = TIME
1975
			local B = INTENSITY
1976
			local C = true
1977
			local HUMANOID = Humanoid
1978
			local TIMER = A or 35
1979
			local SHAKE = B or 5
1980
			local FADE = C or true
1981
			if HUMANOID then
1982
				local FADER = SHAKE / TIMER
1983
				for i = 1, TIMER do
1984
					wait()
1985
					HUMANOID.CameraOffset = VT(MRANDOM(-(SHAKE - FADER * i), SHAKE - FADER * i) / 10, MRANDOM(-(SHAKE - FADER * i), SHAKE - FADER * i) / 10, MRANDOM(-(SHAKE - FADER * i), SHAKE - FADER * i) / 10)
1986
				end
1987
				HUMANOID.CameraOffset = VT(0, 0, 0)
1988
			end
1989
1990
		end)()
1991
	end
1992
end
1993
1994
function chatfunc(text)
1995
	local chat = coroutine.wrap(function()
1996
	if Character:FindFirstChild("TalkingBillBoard")~= nil then
1997
		Character:FindFirstChild("TalkingBillBoard"):destroy()
1998
	end
1999
	local Bill = Instance.new("BillboardGui",Character)
2000
	Bill.Size = UDim2.new(0,100,0,40)
2001
	Bill.StudsOffset = Vector3.new(0,3,0)
2002
	Bill.Adornee = Character.Head
2003
	Bill.Name = "TalkingBillBoard"
2004
	local Hehe = Instance.new("TextLabel",Bill)
2005
	Hehe.BackgroundTransparency = 1
2006
	Hehe.BorderSizePixel = 0
2007
	Hehe.Text = ""
2008
	Hehe.Font = "Bodoni"
2009
	Hehe.TextSize = 40
2010
	Hehe.TextStrokeTransparency = 0
2011
	Hehe.Size = UDim2.new(1,0,0.5,0)
2012
	coroutine.resume(coroutine.create(function()
2013
		while Hehe ~= nil do
2014
			Swait()	
2015
			Hehe.Position = UDim2.new(math.random(-.4,.4),math.random(-5,5),.05,math.random(-5,5))	
2016
			Hehe.Rotation = math.random(-2.5,2.5)
2017
			Hehe.TextColor3 = Color3.new(MRANDOM(55,255),0,0)
2018
			Hehe.TextStrokeColor3 = Color3.new(0,0,0)
2019
		end
2020
	end))
2021
	for i = 1,string.len(text),1 do
2022
		Swait()
2023
		Hehe.Text = string.sub(text,1,i)
2024
	end
2025
	Swait(90)--Re[math.random(1, 93)]
2026
	for i = 0, 1, .025 do
2027
		Swait()
2028
		Bill.ExtentsOffset = Vector3.new(math.random(-i, i), math.random(-i, i), math.random(-i, i))
2029
		Hehe.TextStrokeTransparency = i
2030
		Hehe.TextTransparency = i
2031
	end
2032
	Bill:Destroy()
2033
	end)
2034
chat()
2035
end
2036
2037
Debris = game:GetService("Debris")
2038
2039
function CastProperRay(StartPos, EndPos, Distance, Ignore)
2040
	local DIRECTION = CF(StartPos,EndPos).lookVector
2041
	return Raycast(StartPos, DIRECTION, Distance, Ignore)
2042
end
2043
2044
function turnto(position)
2045
	RootPart.CFrame=CFrame.new(RootPart.CFrame.p,VT(position.X,RootPart.Position.Y,position.Z)) * CFrame.new(0, 0, 0)
2046
end
2047
2048
--//=================================\\
2049
--||	     RAGDOLL STUFF
2050
--\\=================================//
2051
2052
function recurse(root,callback,i)
2053
	i= i or 0
2054
	for _,v in pairs(root:GetChildren()) do
2055
		i = i + 1
2056
		callback(i,v)
2057
		
2058
		if #v:GetChildren() > 0 then
2059
			i = recurse(v,callback,i)
2060
		end
2061
	end
2062
	
2063
	return i
2064
end
2065
2066
function ragdollJoint(character, part0, part1, attachmentName, className, properties)
2067
	attachmentName = attachmentName.."RigAttachment"
2068
	local constraint = Instance.new(className.."Constraint")
2069
	constraint.Attachment0 = part0:FindFirstChild(attachmentName)
2070
	constraint.Attachment1 = part1:FindFirstChild(attachmentName)
2071
	constraint.Name = "RagdollConstraint"..part1.Name
2072
	
2073
	for _,propertyData in next,properties or {} do
2074
		constraint[propertyData[1]] = propertyData[2]
2075
	end
2076
	
2077
	constraint.Parent = character
2078
end
2079
2080
function getAttachment0(character, attachmentName)
2081
	for _,child in next,character:GetChildren() do
2082
		local attachment = child:FindFirstChild(attachmentName)
2083
		if attachment then
2084
			return attachment
2085
		end
2086
	end
2087
end
2088
2089
function ArtificialHitbox(Part)
2090
	local HITBOX = CreatePart(3, Part, "Metal", 0, 1, "Really black", "Hitbox", Part.Size/2, false)
2091
	HITBOX.CanCollide = true
2092
	HITBOX.CFrame = Part.CFrame
2093
	weldBetween(Part,HITBOX)
2094
end
2095
2096
function R15Ragdoll(character,KeepArms)
2097
	character:BreakJoints()
2098
	coroutine.resume(coroutine.create(function()
2099
		recurse(character, function(_,v)
2100
			if v:IsA("Attachment") then
2101
				v.Axis = Vector3.new(0, 1, 0)
2102
				v.SecondaryAxis = Vector3.new(0, 0, 1)
2103
				v.Rotation = Vector3.new(0, 0, 0)
2104
			end
2105
		end)
2106
		for _,child in next,character:GetChildren() do
2107
			if child:IsA("Accoutrement") then
2108
				for _,part in next,child:GetChildren() do
2109
					if part:IsA("BasePart") and part.Name ~= "HumanoidRootPart" then
2110
						local attachment1 = part:FindFirstChildOfClass("Attachment")
2111
						local attachment0 = getAttachment0(character,attachment1.Name)
2112
						if attachment0 and attachment1 then
2113
							local constraint = Instance.new("HingeConstraint")
2114
							constraint.Attachment0 = attachment0
2115
							constraint.Attachment1 = attachment1
2116
							constraint.LimitsEnabled = true
2117
							constraint.UpperAngle = 0
2118
							constraint.LowerAngle = 0
2119
							constraint.Parent = character
2120
						end
2121
						ArtificialHitbox(part)
2122
					elseif part.Name == "HumanoidRootPart" then
2123
						part:remove()
2124
					end
2125
				end
2126
			end
2127
		end
2128
		
2129
		ragdollJoint(character,character.LowerTorso, character.UpperTorso, "Waist", "BallSocket", {
2130
			{"LimitsEnabled",true};
2131
			{"UpperAngle",5};
2132
		})
2133
		if character:FindFirstChild("Head") then
2134
			ragdollJoint(character,character.UpperTorso, character.Head, "Neck", "BallSocket", {
2135
				{"LimitsEnabled",true};
2136
				{"UpperAngle",15};
2137
			})
2138
		end
2139
		
2140
		local handProperties = {
2141
			{"LimitsEnabled", true};
2142
			{"UpperAngle",0};
2143
			{"LowerAngle",0};
2144
		}
2145
		ragdollJoint(character,character.LeftLowerArm, character.LeftHand, "LeftWrist", "Hinge", handProperties)
2146
		ragdollJoint(character,character.RightLowerArm, character.RightHand, "RightWrist", "Hinge", handProperties)
2147
		
2148
		local shinProperties = {
2149
			{"LimitsEnabled", true};
2150
			{"UpperAngle", 0};
2151
			{"LowerAngle", -75};
2152
		}
2153
		ragdollJoint(character,character.LeftUpperLeg, character.LeftLowerLeg, "LeftKnee", "Hinge", shinProperties)
2154
		ragdollJoint(character,character.RightUpperLeg, character.RightLowerLeg, "RightKnee", "Hinge", shinProperties)
2155
		
2156
		local footProperties = {
2157
			{"LimitsEnabled", true};
2158
			{"UpperAngle", 15};
2159
			{"LowerAngle", -45};
2160
		}
2161
		ragdollJoint(character,character.LeftLowerLeg, character.LeftFoot, "LeftAnkle", "Hinge", footProperties)
2162
		ragdollJoint(character,character.RightLowerLeg, character.RightFoot, "RightAnkle", "Hinge", footProperties)
2163
		if KeepArms == true then
2164
			ragdollJoint(character,character.UpperTorso, character.RightUpperArm, "RightShoulder", "BallSocket")
2165
			ragdollJoint(character,character.RightUpperArm, character.RightLowerArm, "RightElbow", "BallSocket")
2166
			ragdollJoint(character,character.UpperTorso, character.LeftUpperArm, "LeftShoulder", "BallSocket")
2167
			ragdollJoint(character,character.LeftUpperArm, character.LeftLowerArm, "LeftElbow", "BallSocket")
2168
		end
2169
		ragdollJoint(character,character.LowerTorso, character.LeftUpperLeg, "LeftHip", "BallSocket")
2170
		ragdollJoint(character,character.LowerTorso, character.RightUpperLeg, "RightHip", "BallSocket")
2171
		Debris:AddItem(character,5)
2172
	end))
2173
end
2174
2175
function Ragdoll(Character2,CharTorso,KeepArms)
2176
	coroutine.resume(coroutine.create(function()
2177
		Character2:BreakJoints()
2178
		local hum = Character2:findFirstChild("Humanoid")
2179
		hum:remove()
2180
		local function Scan(ch)
2181
			local e
2182
			for e = 1,#ch do
2183
				Scan(ch[e]:GetChildren())
2184
				if ch[e].ClassName == "Weld" or ch[e].ClassName == "Motor6D" then
2185
					ch[e]:remove()
2186
				end
2187
			end
2188
		end
2189
		local NEWHUM = IT("Humanoid")
2190
		NEWHUM.Name = "Corpse"
2191
		NEWHUM.Health = 0
2192
		NEWHUM.MaxHealth = 0
2193
		NEWHUM.PlatformStand = true
2194
		NEWHUM.Parent = Character2
2195
		NEWHUM.DisplayDistanceType = "None"
2196
	
2197
		local ch = Character2:GetChildren()
2198
		local i
2199
		for i = 1,#ch do
2200
			if ch[i].Name == "THandle1" or ch[i].Name == "THandle2" then
2201
				ch[i]:remove()
2202
			end
2203
		end
2204
	
2205
		local Torso2 = Character2.Torso
2206
		local movevector = Vector3.new()
2207
	
2208
		if Torso2 then
2209
			movevector = CFrame.new(CharTorso.Position,Torso2.Position).lookVector
2210
			local Head = Character2:FindFirstChild("Head")
2211
			if Head then
2212
				local Neck = Instance.new("Weld")
2213
				Neck.Name = "Neck"
2214
				Neck.Part0 = Torso2
2215
				Neck.Part1 = Head
2216
				Neck.C0 = CFrame.new(0, 1.5, 0)
2217
				Neck.C1 = CFrame.new()
2218
				Neck.Parent = Torso2
2219
	
2220
			end
2221
			local Limb = Character2:FindFirstChild("Right Arm")
2222
			if Limb and KeepArms == true then
2223
	
2224
				Limb.CFrame = Torso2.CFrame * CFrame.new(1.5, 0, 0)
2225
				local Joint = Instance.new("Glue")
2226
				Joint.Name = "RightShoulder"
2227
				Joint.Part0 = Torso2
2228
				Joint.Part1 = Limb
2229
				Joint.C0 = CFrame.new(1.5, 0.5, 0, 0, 0, 1, 0, 1, 0, -1, -0, -0)
2230
				Joint.C1 = CFrame.new(-0, 0.5, 0, 0, 0, 1, 0, 1, 0, -1, -0, -0)
2231
				Joint.Parent = Torso2
2232
	
2233
				local B = Instance.new("Part")
2234
				B.TopSurface = 0
2235
				B.BottomSurface = 0
2236
				B.formFactor = "Symmetric"
2237
				B.Size = Vector3.new(1, 1, 1)
2238
				B.Transparency = 1
2239
				B.CFrame = Limb.CFrame * CFrame.new(0, -0.5, 0)
2240
				B.Parent = Character2
2241
				local W = Instance.new("Weld")
2242
				W.Part0 = Limb
2243
				W.Part1 = B
2244
				W.C0 = CFrame.new(0, -0.5, 0)
2245
				W.Parent = Limb
2246
	
2247
			end
2248
			local Limb = Character2:FindFirstChild("Left Arm")
2249
			if Limb and KeepArms == true then
2250
	
2251
				Limb.CFrame = Torso2.CFrame * CFrame.new(-1.5, 0, 0)
2252
				local Joint = Instance.new("Glue")
2253
				Joint.Name = "LeftShoulder"
2254
				Joint.Part0 = Torso2
2255
				Joint.Part1 = Limb
2256
				Joint.C0 = CFrame.new(-1.5, 0.5, 0, -0, -0, -1, 0, 1, 0, 1, 0, 0)
2257
				Joint.C1 = CFrame.new(0, 0.5, 0, -0, -0, -1, 0, 1, 0, 1, 0, 0)
2258
				Joint.Parent = Torso2
2259
	
2260
				local B = Instance.new("Part")
2261
				B.TopSurface = 0
2262
				B.BottomSurface = 0
2263
				B.formFactor = "Symmetric"
2264
				B.Size = Vector3.new(1, 1, 1)
2265
				B.Transparency = 1
2266
				B.CFrame = Limb.CFrame * CFrame.new(0, -0.5, 0)
2267
				B.Parent = Character2
2268
				local W = Instance.new("Weld")
2269
				W.Part0 = Limb
2270
				W.Part1 = B
2271
				W.C0 = CFrame.new(0, -0.5, 0)
2272
				W.Parent = Limb
2273
	
2274
			end
2275
			local Limb = Character2:FindFirstChild("Right Leg")
2276
			if Limb then
2277
	
2278
				Limb.CFrame = Torso2.CFrame * CFrame.new(0.5, -2, 0)
2279
				local Joint = Instance.new("Glue")
2280
				Joint.Name = "RightHip"
2281
				Joint.Part0 = Torso2
2282
				Joint.Part1 = Limb
2283
				Joint.C0 = CFrame.new(0.5, -1, 0, 0, 0, 1, 0, 1, 0, -1, -0, -0)
2284
				Joint.C1 = CFrame.new(0, 1, 0, 0, 0, 1, 0, 1, 0, -1, -0, -0)
2285
				Joint.Parent = Torso2
2286
	
2287
				local B = Instance.new("Part")
2288
				B.TopSurface = 0
2289
				B.BottomSurface = 0
2290
				B.formFactor = "Symmetric"
2291
				B.Size = Vector3.new(1, 1, 1)
2292
				B.Transparency = 1
2293
				B.CFrame = Limb.CFrame * CFrame.new(0, -0.5, 0)
2294
				B.Parent = Character2
2295
				local W = Instance.new("Weld")
2296
				W.Part0 = Limb
2297
				W.Part1 = B
2298
				W.C0 = CFrame.new(0, -0.5, 0)
2299
				W.Parent = Limb
2300
	
2301
			end
2302
			local Limb = Character2:FindFirstChild("Left Leg")
2303
			if Limb then
2304
	
2305
				Limb.CFrame = Torso2.CFrame * CFrame.new(-0.5, -2, 0)
2306
				local Joint = Instance.new("Glue")
2307
				Joint.Name = "LeftHip"
2308
				Joint.Part0 = Torso2
2309
				Joint.Part1 = Limb
2310
				Joint.C0 = CFrame.new(-0.5, -1, 0, -0, -0, -1, 0, 1, 0, 1, 0, 0)
2311
				Joint.C1 = CFrame.new(-0, 1, 0, -0, -0, -1, 0, 1, 0, 1, 0, 0)
2312
				Joint.Parent = Torso2
2313
	
2314
				local B = Instance.new("Part")
2315
				B.TopSurface = 0
2316
				B.BottomSurface = 0
2317
				B.formFactor = "Symmetric"
2318
				B.Size = Vector3.new(1, 1, 1)
2319
				B.Transparency = 1
2320
				B.CFrame = Limb.CFrame * CFrame.new(0, -0.5, 0)
2321
				B.Parent = Character2
2322
				local W = Instance.new("Weld")
2323
				W.Part0 = Limb
2324
				W.Part1 = B
2325
				W.C0 = CFrame.new(0, -0.5, 0)
2326
				W.Parent = Limb
2327
	
2328
			end
2329
			--[
2330
			local Bar = Instance.new("Part")
2331
			Bar.TopSurface = 0
2332
			Bar.BottomSurface = 0
2333
			Bar.formFactor = "Symmetric"
2334
			Bar.Size = Vector3.new(1, 1, 1)
2335
			Bar.Transparency = 1
2336
			Bar.CFrame = Torso2.CFrame * CFrame.new(0, 0.5, 0)
2337
			Bar.Parent = Character2
2338
			local Weld = Instance.new("Weld")
2339
			Weld.Part0 = Torso2
2340
			Weld.Part1 = Bar
2341
			Weld.C0 = CFrame.new(0, 0.5, 0)
2342
			Weld.Parent = Torso2
2343
			--]]
2344
		end
2345
		Character2.Parent = workspace
2346
		Debris:AddItem(Character2,5)
2347
	
2348
		return Character2,Torso2
2349
	end))
2350
end
2351
2352
--//=================================\\
2353
--||	     WEAPON CREATION
2354
--\\=================================//
2355
2356
2357
local Particle = IT("ParticleEmitter",nil)
2358
Particle.Enabled = false
2359
Particle.Transparency = NumberSequence.new({NumberSequenceKeypoint.new(0,0.3),NumberSequenceKeypoint.new(0.3,0),NumberSequenceKeypoint.new(1,1)})
2360
Particle.LightEmission = 0.5
2361
Particle.Rate = 150
2362
Particle.ZOffset = 0.2
2363
Particle.Rotation = NumberRange.new(-180, 180)
2364
Particle.RotSpeed = NumberRange.new(-180, 180)
2365
Particle.Texture = "http://www.roblox.com/asset/?id=304437537"
2366
Particle.Color = ColorSequence.new(C3(0/255,0/255,255/255),C3(0.4,0,0))
2367
2368
--ParticleEmitter({Speed = 5, Drag = 0, Size1 = 1, Size2 = 5, Lifetime1 = 1, Lifetime2 = 1.5, Parent = Torso, Emit = 100, Offset = 360, Enabled = false})
2369
function ParticleEmitter(Table)
2370
	local PRTCL = Particle:Clone()
2371
	local Speed = Table.Speed or 5
2372
	local Drag = Table.Drag or 0
2373
	local Size1 = Table.Size1 or 1
2374
	local Size2 = Table.Size2 or 5
2375
	local Lifetime1 = Table.Lifetime1 or 1
2376
	local Lifetime2 = Table.Lifetime2 or 1.5
2377
	local Parent = Table.Parent or Torso
2378
	local Emit = Table.Emit or 100
2379
	local Offset = Table.Offset or 360
2380
	local Acel = Table.Acel or VT(0,0,0)
2381
	local Enabled = Table.Enabled or false
2382
	PRTCL.Parent = Parent
2383
	PRTCL.Size = NumberSequence.new(Size1,Size2)
2384
	PRTCL.Lifetime = NumberRange.new(Lifetime1,Lifetime2)
2385
	PRTCL.Speed = NumberRange.new(Speed)
2386
	PRTCL.VelocitySpread = Offset
2387
	PRTCL.Drag = Drag
2388
	PRTCL.Acceleration = Acel
2389
	if Enabled == false then
2390
		PRTCL:Emit(Emit)
2391
		Debris:AddItem(PRTCL,Lifetime2)
2392
	else
2393
		PRTCL.Enabled = true
2394
	end
2395
	return PRTCL
2396
end
2397
2398
local Handle = CreatePart(3, Gun, "Metal", 0, 0, "Mid gray", "Part", VT(0.2,0.6,0.2),false)
2399
local RightArmGrasp = CreateWeldOrSnapOrMotor("Weld", Handle, RightArm, Handle, CF(0,-1, 0) * ANGLES(RAD(90), RAD(0), RAD(0)), CF(0, 0.21, 0))
2400
local Part = CreatePart(3, Gun, "Metal", 0, 0, "Mid gray", "Part", VT(0.2,0.5,0.2),false)
2401
MakeForm(Part,"Wedge")
2402
CreateWeldOrSnapOrMotor("Weld", Handle, Handle, Part, CF(0, -0.3, 0.2) * ANGLES(RAD(0), RAD(180), RAD(0)), CF(0, 0, 0))
2403
local Part = CreatePart(3, Gun, "Metal", 0, 0, "Mid gray", "Part", VT(0.2,0.3,0.2),false)
2404
MakeForm(Part,"Wedge")
2405
CreateWeldOrSnapOrMotor("Weld", Handle, Handle, Part, CF(0, -0.4, 0) * ANGLES(RAD(0), RAD(0), RAD(180)), CF(0, 0, 0))
2406
local Part = CreatePart(3, Gun, "Metal", 0, 0, "Mid gray", "Part", VT(0.3,0.3,0.3),false)
2407
CreateWeldOrSnapOrMotor("Weld", Handle, Handle, Part, CF(0, -0.5, 0.2) * ANGLES(RAD(0), RAD(0), RAD(0)), CF(0, 0, 0))
2408
local Part = CreatePart(3, Gun, "Metal", 0, 0, "Mid gray", "Part", VT(0.3,0.5,0.5),false)
2409
CreateWeldOrSnapOrMotor("Weld", Handle, Handle, Part, CF(0, -0.6, 0.5) * ANGLES(RAD(0), RAD(0), RAD(0)), CF(0, 0, 0))
2410
local Part = CreatePart(3, Gun, "Metal", 0, 0, "Mid gray", "Part", VT(0.4,0.4,0.4),false)
2411
MakeForm(Part,"Cyl")
2412
CreateWeldOrSnapOrMotor("Weld", Handle, Handle, Part, CF(0, -0.6, 0.5) * ANGLES(RAD(90), RAD(0), RAD(0)), CF(0, 0, 0))
2413
for i = 1, 8 do
2414
	local Piece = CreatePart(3, Gun, "Metal", 0, 0, "Mid gray", "Eye", VT(0,0.35,0.41),false)
2415
	CreateWeldOrSnapOrMotor("Weld", Handle, Part, Piece, CF(0, 0, 0) * ANGLES(RAD(0), RAD((360/8)*i), RAD(0)), CF(0, 0, 0))
2416
end
2417
local Part = CreatePart(3, Gun, "Metal", 0, 0, "Mid gray", "Eye", VT(0.38,0.41,0.38),false)
2418
MakeForm(Part,"Cyl")
2419
CreateWeldOrSnapOrMotor("Weld", Handle, Handle, Part, CF(0, -0.6, 0.5) * ANGLES(RAD(90), RAD(0), RAD(0)), CF(0, 0, 0))
2420
local Part = CreatePart(3, Gun, "Metal", 0, 0, "Mid gray", "Part", VT(0.37,0.5,0.37),false)
2421
MakeForm(Part,"Ball")
2422
CreateWeldOrSnapOrMotor("Weld", Handle, Handle, Part, CF(0, -0.6, 0.3) * ANGLES(RAD(90), RAD(0), RAD(0)), CF(0, 0, 0))
2423
local Part = CreatePart(3, Gun, "Metal", 0, 0, "Mid gray", "Part", VT(0.2,0.7,0.4),false)
2424
MakeForm(Part,"Wedge")
2425
CreateWeldOrSnapOrMotor("Weld", Handle, Handle, Part, CF(0, -0.7, 0.5) * ANGLES(RAD(90), RAD(180), RAD(180)), CF(0, 0, 0))
2426
local Part = CreatePart(3, Gun, "Metal", 0, 0, "Mid gray", "Part", VT(0.3,0.4,0.2),false)
2427
CreateWeldOrSnapOrMotor("Weld", Handle, Handle, Part, CF(0, -0.6, 0.7) * ANGLES(RAD(0), RAD(0), RAD(0)), CF(0, 0, 0))
2428
local Part = CreatePart(3, Gun, "Metal", 0, 0, "Mid gray", "Part", VT(0.35,0.35,0.35),false)
2429
MakeForm(Part,"Cyl")
2430
CreateWeldOrSnapOrMotor("Weld", Handle, Handle, Part, CF(0, -0.6, 0.7) * ANGLES(RAD(90), RAD(0), RAD(0)), CF(0, 0, 0))
2431
local Part = CreatePart(3, Gun, "Metal", 0, 0, "Mid gray", "Part", VT(0.5,0.1,0.5),false)
2432
MakeForm(Part,"Cyl")
2433
CreateWeldOrSnapOrMotor("Weld", Handle, Handle, Part, CF(0, -0.6, 1) * ANGLES(RAD(90), RAD(0), RAD(0)), CF(0, 0, 0))
2434
local Part = CreatePart(3, Gun, "Metal", 0, 0, "Mid gray", "Part", VT(0.5,0.1,0.45),false)
2435
MakeForm(Part,"Cyl")
2436
CreateWeldOrSnapOrMotor("Weld", Handle, Handle, Part, CF(0, -0.6, 1.1) * ANGLES(RAD(90), RAD(0), RAD(0)), CF(0, 0, 0))
2437
local Part = CreatePart(3, Gun, "Metal", 0, 0, "Mid gray", "exe2", VT(0.2,0.5,0.2),false)
2438
MakeForm(Part,"Wedge")
2439
CreateWeldOrSnapOrMotor("Weld", Handle, Handle, Part, CF(0, -0.65, -0.6) * ANGLES(RAD(135), RAD(180), RAD(180)), CF(0, -0.3, 0))
2440
local Part = CreatePart(3, Gun, "Metal", 0, 0, "Mid gray", "Part", VT(0.5,0.1,0.45),false)
2441
MakeForm(Part,"Cyl")
2442
CreateWeldOrSnapOrMotor("Weld", Handle, Handle, Part, CF(0, -0.6, 1.1) * ANGLES(RAD(90), RAD(0), RAD(0)), CF(0, 0, 0))
2443
local Part = CreatePart(3, Gun, "Metal", 0, 0, "Mid gray", "exe", VT(0.2,0.5,0.2),false)
2444
MakeForm(Part,"Wedge")
2445
CreateWeldOrSnapOrMotor("Weld", Handle, Handle, Part, CF(0, -0.55, -0.6) * ANGLES(RAD(-135), RAD(0), RAD(0)), CF(0, -0.3, 0))
2446
local LASTPART = Handle
2447
for i = 1, 10 do
2448
	if LASTPART == Handle then
2449
		local Part = CreatePart(3, Gun, "Metal", 0, 0, "Mid gray", "Part", VT(0.1,0.2,0),false)
2450
		LASTPART = Part
2451
		CreateWeldOrSnapOrMotor("Weld", Handle, Handle, Part, CF(0, -0.1, 0.2) * ANGLES(RAD(90), RAD(0), RAD(0)), CF(0, 0, 0))
2452
	else
2453
		local Part = CreatePart(3, Gun, "Metal", 0, 0, "Mid gray", "Part", VT(0.1,0.05,0),false)
2454
		CreateWeldOrSnapOrMotor("Weld", Handle, LASTPART, Part, CF(0, 0.025, 0) * ANGLES(RAD(8), RAD(0), RAD(0)), CF(0, -0.025, 0))
2455
		LASTPART = Part
2456
	end
2457
end
2458
2459
local Barrel = CreatePart(3, Gun, "Metal", 0, 0, "Mid gray", "Part", VT(0.15,5,0.15),false)
2460
MakeForm(Barrel,"Cyl")
2461
CreateWeldOrSnapOrMotor("Weld", Handle, Handle, Barrel, CF(0, -0.6, 1.8) * ANGLES(RAD(90), RAD(0), RAD(0)), CF(0, 0, 0))
2462
local Part = CreatePart(3, Gun, "Metal", 0, 0, "Mid gray", "Part", VT(0.25,1,0.25),false)
2463
MakeForm(Part,"Cyl")
2464
CreateWeldOrSnapOrMotor("Weld", Handle, Barrel, Part, CF(0, -0.6, 0), CF(0, 0, 0))
2465
local Part = CreatePart(3, Gun, "Metal", 0, 0, "Mid gray", "Part", VT(0,0.1,0.2),false)
2466
MakeForm(Part,"Wedge")
2467
CreateWeldOrSnapOrMotor("Weld", Handle, Barrel, Part, CF(0, 2.4, 0.1) * ANGLES(RAD(180), RAD(0), RAD(0)), CF(0, 0, 0))
2468
local Hole = CreatePart(3, Gun, "Metal", 0, 0, "Mid gray", "Eye", VT(0.125,0,0.125),false)
2469
MakeForm(Hole,"Cyl")
2470
CreateWeldOrSnapOrMotor("Weld", Handle, Barrel, Hole, CF(0, 2.5, 0), CF(0, 0, 0))
2471
local Part = CreatePart(3, Gun, "Metal", 0, 0, "Mid gray", "Part", VT(0,0,0),false)
2472
local GEARWELD = CreateWeldOrSnapOrMotor("Weld", Handle, Handle, Part, CF(0, -0.6, 0.7), CF(0, 0, 0))
2473
CreateMesh("SpecialMesh", Part, "FileMesh", 156292343, "", VT(0.8,0.8,1.5), VT(0,0,0.2))
2474
local Part = CreatePart(3, Gun, "Metal", 0, 0.5, "Mid gray", "Eye", VT(0,0,0),false)
2475
local GEARWELD2 = CreateWeldOrSnapOrMotor("Weld", Handle, Handle, Part, CF(0, -0.6, 0.7), CF(0, 0, 0))
2476
CreateMesh("SpecialMesh", Part, "FileMesh", 156292343, "", VT(0.9,0.9,0.3), VT(0,0,0.2))
2477
coroutine.resume(coroutine.create(function()
2478
	while wait() do
2479
		GEARWELD.C0 = GEARWELD.C0 * ANGLES(RAD(0), RAD(0), RAD(5))
2480
		GEARWELD2.C0 = GEARWELD2.C0 * ANGLES(RAD(0), RAD(0), RAD(-5))
2481
	end
2482
end))
2483
2484
for _, c in pairs(Gun:GetDescendants()) do
2485
	if c.ClassName == "Part" and c.Name ~= "Eye" and c.Parent ~= Effects and c.Parent.Parent ~= Effects then
2486
		c.Material = "Glass"
2487
		c.Color = C3(0,0,0)
2488
	elseif c.ClassName == "Part" and c.Name == "Eye" then
2489
		c.Color = C3(0/255,0/255,255/255)
2490
		c.Material = "Neon"
2491
	end
2492
end
2493
2494
for i = 1, 35 do
2495
	local FACE = CreatePart(3, FaceGradient, "Fabric", 0, 0+(i-1)/35.2, "Dark stone grey", "FaceGradient", VT(1.01,0.5,1.01),false)
2496
	FACE.Color = C3(0,0,0)
2497
	Head:FindFirstChildOfClass("SpecialMesh"):Clone().Parent = FACE
2498
	CreateWeldOrSnapOrMotor("Weld", Head, Head, FACE, CF(0,0.35-(i-1)/75,0), CF(0, 0, 0))
2499
end
2500
2501
Weapon.Parent = Character
2502
for _, c in pairs(Weapon:GetChildren()) do
2503
	if c.ClassName == "Part" then
2504
		c.CustomPhysicalProperties = PhysicalProperties.new(0, 0, 0, 0, 0)
2505
	end
2506
end
2507
2508
Weapon.Parent = Character
2509
Gun.Parent = nil
2510
2511
for _, c in pairs(Gun:GetChildren()) do
2512
	if c.ClassName == "Part" then
2513
		c.CustomPhysicalProperties = PhysicalProperties.new(0, 0, 0, 0, 0)
2514
	end
2515
end
2516
2517
for _, c in pairs(Weapon:GetChildren()) do
2518
	if c.ClassName == "Part" then
2519
		c.CustomPhysicalProperties = PhysicalProperties.new(0, 0, 0, 0, 0)
2520
	end
2521
end
2522
2523
local EXE = Instance.new("Shirt")
2524
EXE.ShirtTemplate = "rbxassetid://338740550"
2525
EXE.Parent = Character
2526
EXE.Name = "Cloth"
2527
local LOL = Instance.new("Pants")
2528
LOL.PantsTemplate = "rbxassetid://338750779"
2529
LOL.Parent = Character
2530
LOL.Name = "Cloth"
2531
2532
Head.Color = C3(21,71,109)
2533
Torso.Color = C3(21,71,109)
2534
LeftArm.Color = C3(21,71,109)
2535
LeftLeg.Color = C3(21,71,109)
2536
RightArm.Color = C3(21,71,109)
2537
RightLeg.Color = C3(21,71,109)
2538
2539
local SKILLTEXTCOLOR = C3(0/255,0/255,255/255)
2540
local SKILLFONT = "Antique"
2541
local SKILLTEXTSIZE = 7
2542
2543
Humanoid.Died:connect(function()
2544
	ATTACK = true
2545
end)
2546
2547
local SKILL1FRAME = CreateFrame(WEAPONGUI, 1, 2, UD2(0.1, 0, 0.90, 0), UD2(0.26, 0, 0.07, 0), C3(0/255,0/255,255/255), C3(0, 0, 0), "Skill 1 Frame")
2548
local SKILL2FRAME = CreateFrame(WEAPONGUI, 1, 2, UD2(0.63, 0, 0.90, 0), UD2(0.26, 0, 0.07, 0), C3(0/255,0/255,255/255), C3(0, 0, 0), "Skill 2 Frame")
2549
local SKILL3FRAME = CreateFrame(WEAPONGUI, 1, 2, UD2(0.215, 0, 0.90, 0), UD2(0.26, 0, 0.07, 0), C3(0/255,0/255,255/255), C3(0, 0, 0), "Skill 3 Frame")
2550
local SKILL4FRAME = CreateFrame(WEAPONGUI, 1, 2, UD2(0.525, 0, 0.90, 0), UD2(0.26, 0, 0.07, 0), C3(0/255,0/255,255/255), C3(0, 0, 0), "Skill 4 Frame")
2551
local SKILL5FRAME = CreateFrame(WEAPONGUI, 1, 2, UD2(0.365, 0, 0.90, 0), UD2(0.26, 0, 0.07, 0), C3(0/255,0/255,255/255), C3(0, 0, 0), "Skill 5 Frame")
2552
2553
local SKILL1TEXT = CreateLabel(SKILL1FRAME, "[Z] Banish", SKILLTEXTCOLOR, SKILLTEXTSIZE, SKILLFONT, 0, 2, 0.7, "Text 1")
2554
local SKILL2TEXT = CreateLabel(SKILL2FRAME, "[V] Kill", SKILLTEXTCOLOR, SKILLTEXTSIZE, SKILLFONT, 0, 2, 0.7, "Text 2")
2555
local SKILL3TEXT = CreateLabel(SKILL3FRAME, "[X] Sleep", SKILLTEXTCOLOR, SKILLTEXTSIZE, SKILLFONT, 0, 2, 0.7, "Text 3")
2556
local SKILL4TEXT = CreateLabel(SKILL4FRAME, "[C] Ultimate", SKILLTEXTCOLOR, SKILLTEXTSIZE, SKILLFONT, 0, 2, 0.7, "Text 4")
2557
local SKILL5TEXT = CreateLabel(SKILL5FRAME, "[T] Taunt", SKILLTEXTCOLOR, SKILLTEXTSIZE, SKILLFONT, 0, 2, 0.7, "Text 5")
2558
2559
function printbye(Name)
2560
	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, "}
2561
	warn(MESSAGES[MRANDOM(1,#MESSAGES)]..Name..".")	
2562
end
2563
	if INTRO == false and INSTANT == false then
2564
		INTRO = true
2565
		coroutine.resume(coroutine.create(function()
2566
			sick:Play()
2567
			Intro()
2568
		end))
2569
	end
2570
2571
workspace.ChildAdded:connect(function(instance)
2572
    for BANISH = 1, #TOBANISH do
2573
		if TOBANISH[BANISH] ~= nil then
2574
			if instance.Name == TOBANISH[BANISH] then
2575
				coroutine.resume(coroutine.create(function()
2576
					printbye(instance.Name)
2577
					instance:ClearAllChildren()
2578
					Debris:AddItem(instance,0.0005)
2579
				end))
2580
			end
2581
		end
2582
	end
2583
end)
2584
2585
--//=================================\\
2586
--||			DAMAGING
2587
--\\=================================//
2588
2589
function ApplyDamage(Humanoid,Damage,OneShot)
2590
	Damage = Damage * DAMAGEMULTIPLIER
2591
	local DEAD = false
2592
	if Humanoid.Health < 2000 and OneShot == false then
2593
		if Humanoid.Health - Damage > 0 then
2594
			Humanoid.Health = Humanoid.Health - Damage
2595
		else
2596
			Humanoid.Parent:BreakJoints()
2597
			DEAD = true
2598
		end
2599
	else
2600
		DEAD = true
2601
		Humanoid.Parent:BreakJoints()
2602
	end
2603
	if DEAD == true then
2604
		local PARTS = {}
2605
		for index, CHILD in pairs(Humanoid.Parent:GetChildren()) do
2606
			if CHILD:IsA("BasePart") then
2607
				table.insert(PARTS,CHILD)
2608
			end
2609
		end
2610
		coroutine.resume(coroutine.create(function()
2611
			wait(2)
2612
			repeat
2613
				Swait()
2614
				local PIECE = nil
2615
				if MRANDOM(1,5) == 1 then
2616
					for E = 1, #PARTS do
2617
						if MRANDOM(1,5) == 1 then
2618
							PIECE = PARTS[E]
2619
							table.remove(PARTS,E)
2620
							break
2621
						end
2622
					end
2623
				end
2624
				if PIECE ~= nil then
2625
					if PIECE.Name == "Head" then
2626
						WACKYEFFECT({Time = MRANDOM(10,30)*5, EffectType = "Box", Size = VT(PIECE.Size.Z,PIECE.Size.Y,PIECE.Size.Z), Size2 = (VT(PIECE.Size.Z,PIECE.Size.Y,PIECE.Size.Z))*MRANDOM(7,14)/10, Transparency = PIECE.Transparency, Transparency2 = 1, CFrame = PIECE.CFrame, MoveToPos = PIECE.Position+VT(0,MRANDOM(5,8)/1.5,0), RotationX = MRANDOM(-25,25)/35, RotationY = MRANDOM(-25,25)/35, RotationZ = MRANDOM(-25,25)/35, Material = "Neon", Color = C3(0.4,0,0), SoundID = 3264923, SoundPitch = MRANDOM(12,16)/10, SoundVolume = 2})
2627
					else
2628
						WACKYEFFECT({Time = MRANDOM(10,30)*5, EffectType = "Box", Size = PIECE.Size, Size2 = PIECE.Size*MRANDOM(7,14)/10, Transparency = PIECE.Transparency, Transparency2 = 1, CFrame = PIECE.CFrame, MoveToPos = PIECE.Position+VT(0,MRANDOM(5,8)/1.5,0), MRANDOM(-25,25)/35, RotationY = MRANDOM(-25,25)/35, RotationZ = MRANDOM(-25,25)/35, Material = "Neon", Color = C3(0.4,0,0), SoundID = 3264923, SoundPitch = MRANDOM(12,16)/10, SoundVolume = 2})
2629
					end
2630
					PIECE:remove()
2631
				end
2632
			until #PARTS == 0
2633
		end))
2634
	end
2635
end
2636
2637
2638
function ApplyDamage3(Humanoid,Damage,TorsoPart)
2639
	local defence = Instance.new("BoolValue",Humanoid.Parent)
2640
	defence.Name = ("HitBy"..Player.Name)
2641
	game:GetService("Debris"):AddItem(defence, 0.001)
2642
	Damage = Damage * DAMAGEMULTIPLIER
2643
	if Humanoid.Health ~= 0 then
2644
		local CritChance = MRANDOM(1,100)
2645
		if Damage > Humanoid.Health then
2646
			Damage = math.ceil(Humanoid.Health)
2647
			if Damage == 0 then
2648
				Damage = 0.1
2649
			end
2650
		end
2651
		Humanoid.Health = Humanoid.Health - Damage
2652
	end
2653
end
2654
2655
function ApplyDamage3(Humanoid,Damage,TorsoPart)
2656
	local defence = Instance.new("BoolValue",Humanoid.Parent)
2657
	defence.Name = ("HitBy"..Player.Name)
2658
	game:GetService("Debris"):AddItem(defence, 0.001)
2659
	Damage = Damage * DAMAGEMULTIPLIER
2660
	if Humanoid.Health ~= 0 then
2661
		local CritChance = MRANDOM(1,100)
2662
		if Damage > Humanoid.Health then
2663
			Damage = math.ceil(Humanoid.Health)
2664
			if Damage == 0 then
2665
				Damage = 0.1
2666
			end
2667
		end
2668
		Humanoid.Health = Humanoid.Health - Damage
2669
	end
2670
end
2671
2672
function ApplyAoE3(POSITION,RANGE,MINDMG,MAXDMG,FLING,INSTAKILL)
2673
	local CHILDREN = workspace:GetDescendants()
2674
	for index, CHILD in pairs(CHILDREN) do
2675
		if CHILD.ClassName == "Model" and CHILD ~= Character and CHILD.Parent ~= Effects then
2676
			local HUM = CHILD:FindFirstChildOfClass("Humanoid")
2677
			if HUM then
2678
				local TORSO = CHILD:FindFirstChild("Torso") or CHILD:FindFirstChild("UpperTorso")
2679
				if TORSO then
2680
					if (TORSO.Position - POSITION).Magnitude <= RANGE then
2681
						if INSTAKILL == true then
2682
							CHILD:BreakJoints()
2683
						else
2684
							local DMG = MRANDOM(MINDMG,MAXDMG)
2685
							ApplyDamage(HUM,DMG,TORSO)
2686
						end
2687
						if FLING > 0 then
2688
							for _, c in pairs(CHILD:GetChildren()) do
2689
								if c:IsA("BasePart") then
2690
									local bv = Instance.new("BodyVelocity") 
2691
									bv.maxForce = Vector3.new(1e9, 1e9, 1e9)
2692
									bv.velocity = CF(POSITION,TORSO.Position).lookVector*FLING
2693
									bv.Parent = c
2694
									Debris:AddItem(bv,0.05)
2695
								end
2696
							end
2697
						end
2698
					end
2699
				end
2700
			end
2701
		end
2702
	end
2703
end
2704
2705
function CameraEnshaking(Length, Intensity)
2706
	coroutine.resume(coroutine.create(function()
2707
		local intensity = 1 * Intensity
2708
		local rotM = 0.01 * Intensity
2709
		for i = 0, Length, 0.1 do
2710
			Swait()
2711
			intensity = intensity - 0.05 * Intensity / Length
2712
			rotM = rotM - 5.0E-4 * Intensity / Length
2713
			Humanoid.CameraOffset = Vector3.new(RAD(MRANDOM(-intensity, intensity)), RAD(MRANDOM(-intensity, intensity)), RAD(MRANDOM(-intensity, intensity)))
2714
			Cam.CFrame = Cam.CFrame * CF(RAD(MRANDOM(-intensity, intensity)), RAD(MRANDOM(-intensity, intensity)), RAD(MRANDOM(-intensity, intensity))) * EULER(RAD(MRANDOM(-intensity, intensity)) * rotM, RAD(MRANDOM(-intensity, intensity)) * rotM, RAD(MRANDOM(-intensity, intensity)) * rotM)
2715
		end
2716
		Humanoid.CameraOffset = Vector3.new(0, 0, 0)
2717
	end))
2718
end
2719
2720
function KillChildren(v)
2721
	v:BreakJoints()
2722
	for _, c in pairs(v:GetChildren()) do
2723
		if c:IsA("BasePart") then
2724
			if c.Transparency < 1 then
2725
				if c:FindFirstChildOfClass("Decal") then
2726
					c:FindFirstChildOfClass("Decal"):remove()
2727
				end
2728
				particles(c)
2729
				c.PE.Enabled = true
2730
				c.Parent = Effects
2731
				c.CanCollide = false
2732
				c.Material = "Neon"
2733
				c.Color = C3(0/255,0/255,255/255)
2734
				c.Transparency = 1
2735
				local grav = Instance.new("BodyPosition",c)
2736
				grav.P = 20000
2737
				grav.maxForce = Vector3.new(math.huge,math.huge,math.huge)
2738
				grav.position = c.Position + VT(MRANDOM(-5,5),MRANDOM(-5,5),MRANDOM(-5,5))
2739
				grav.Name = "GravityForce"
2740
				coroutine.resume(coroutine.create(function()
2741
					for i = 1, 20 do
2742
						Swait()
2743
						c.Transparency = c.Transparency + 1/20
2744
					end
2745
					c.PE.Enabled = false
2746
					Debris:AddItem(c,2)
2747
				end))
2748
			end
2749
		end
2750
	end
2751
end
2752
2753
function ApplyAoE(POSITION,RANGE)
2754
	local CHILDREN = workspace:GetDescendants()
2755
	for index, CHILD in pairs(CHILDREN) do
2756
		if CHILD.ClassName == "Model" and CHILD ~= Character then
2757
			local LISTED = false
2758
			for LIST = 1, #WHITELIST do
2759
				if WHITELIST[LIST] ~= nil then
2760
					if CHILD.Name == WHITELIST[LIST] then
2761
						LISTED = true
2762
					end
2763
				end
2764
			end
2765
			if LISTED == false then
2766
				local HUM = CHILD:FindFirstChildOfClass("Humanoid")
2767
				if HUM then
2768
					local TORSO = CHILD:FindFirstChild("Torso") or CHILD:FindFirstChild("UpperTorso")
2769
					if TORSO then
2770
						if (TORSO.Position - POSITION).Magnitude <= RANGE+TORSO.Size.Magnitude then
2771
							KillChildren(CHILD)
2772
						end
2773
					end
2774
				end
2775
			end
2776
		end
2777
	end
2778
end
2779
2780
function SpawnMeteor(POS,SIZE,ISDEBREE,ORIPOS)
2781
	coroutine.resume(coroutine.create(function()
2782
		local METEOR = IT("Model",Effects)
2783
		METEOR.Name = "Meteorite"
2784
		local CENTER = CreatePart(3, METEOR, "Granite", 0, 0, "Really black", "MeteorCenter", VT(5,5,5)*SIZE)
2785
		METEOR.PrimaryPart = CENTER
2786
		local PRT = CreatePart(3, METEOR, "Granite", 0, 0, "Really black", "MeteorCenter", VT(5,5,5)*SIZE)
2787
		PRT.CFrame = CENTER.CFrame*ANGLES(RAD(MRANDOM(0,360)),RAD(MRANDOM(0,360)),RAD(MRANDOM(0,360)))
2788
		for i = 1, 15 do
2789
			local FIRE = CreatePart(3, METEOR, "Neon", 0, 0, "Really black", "Fire", VT(5.1,1,5.1)*SIZE)
2790
			FIRE.CFrame = CENTER.CFrame*ANGLES(RAD(MRANDOM(0,360)),RAD(MRANDOM(0,360)),RAD(MRANDOM(0,360)))
2791
		end
2792
		if ISDEBREE ~= true then
2793
			METEOR:SetPrimaryPartCFrame(CF(POS) * ANGLES(RAD(MRANDOM(-15,15)), RAD(0), RAD(MRANDOM(-15,15)))*CF(0,500,0) * ANGLES(RAD(MRANDOM(0,360)),RAD(MRANDOM(0,360)),RAD(MRANDOM(0,360))))
2794
		else
2795
			METEOR:SetPrimaryPartCFrame(CF(ORIPOS,POS) * ANGLES(RAD(MRANDOM(0,360)),RAD(MRANDOM(0,360)),RAD(MRANDOM(0,360))))
2796
		end
2797
		local IMPACT = false
2798
		CreateSound(463593339, CENTER, 10, 0.6)
2799
		if SIZE >= 3.5 then
2800
			for i = 1, MRANDOM(3,7) do
2801
				SpawnMeteor(CF(POS) * ANGLES(RAD(0), RAD(MRANDOM(0,360)), RAD(0))*CF(0,0,SIZE*12).p,SIZE/MRANDOM(4,5),true,CENTER.CFrame*ANGLES(RAD(MRANDOM(0,360)),RAD(MRANDOM(0,360)),RAD(MRANDOM(0,360)))*CF(0,0,SIZE*15).p)
2802
			end
2803
		end
2804
		for i = 1, 200 do
2805
			Swait()
2806
			local HITFLOOR,HITPOS = Raycast(CENTER.Position, CF(CENTER.Position,POS).lookVector, 3, Character)
2807
			if HITFLOOR == nil then
2808
				local ORI = CENTER.Orientation
2809
				METEOR:SetPrimaryPartCFrame(CF(HITPOS) * ANGLES(RAD(MRANDOM(0,360)),RAD(MRANDOM(0,360)),RAD(MRANDOM(0,360))))
2810
			else
2811
				if HITFLOOR.Anchored == true then
2812
					CreateDebreeRing(HITFLOOR,HITPOS,30*SIZE,VT(6,6,6)*SIZE,5)
2813
					CreateFlyingDebree(HITFLOOR,CF(HITPOS),8,VT(4,4,4)*SIZE,5,175)
2814
				end
2815
				IMPACT = true
2816
				break
2817
			end
2818
		end
2819
		if IMPACT == true then
2820
			WACKYEFFECT({EffectType = "Block", Size = CENTER.Size, Size2 = VT(10,10,10)*4*SIZE, Transparency = 0, Transparency2 = 1, CFrame = CF(CENTER.Position), MoveToPos = nil, RotationX = 0, RotationY = 0, RotationZ = 0, Material = "Neon", Color = C3(0/255,0/255,255/255), SoundID = 130972023, SoundPitch = 1, SoundVolume = 5})
2821
			WACKYEFFECT({EffectType = "Block", Size = CENTER.Size, Size2 = VT(10,10,10)*3*SIZE, Transparency = 0, Transparency2 = 1, CFrame = CF(CENTER.Position), MoveToPos = nil, RotationX = 0, RotationY = 0, RotationZ = 0, Material = "Neon", Color = C3(0/255,0/255,255/255), SoundID = 201858144, SoundPitch = 1, SoundVolume = 5})
2822
			WACKYEFFECT({EffectType = "Sphere", Size = VT(SIZE*20,0,SIZE*20), Size2 = VT(0,SIZE*750,0), Transparency = 0, Transparency2 = 1, CFrame = CF(CENTER.Position), MoveToPos = nil, RotationX = 0, RotationY = 0, RotationZ = 0, Material = "Neon", Color = C3(0/255,0/255,255/255), SoundID = 130972023, SoundPitch = 1, SoundVolume = 5})
2823
			ApplyAoE(CENTER.Position,30*SIZE)
2824
		end
2825
		METEOR:remove()
2826
	end))
2827
end
2828
2829
function ApplyAoE4(POSITION,RANGE,BRUTAL)
2830
	local CHILDREN = workspace:GetDescendants()
2831
	for index, CHILD in pairs(CHILDREN) do
2832
		if CHILD.ClassName == "Model" and CHILD ~= Character then
2833
			local HUM = CHILD:FindFirstChildOfClass("Humanoid")
2834
			if HUM then
2835
				local TORSO = CHILD:FindFirstChild("Torso") or CHILD:FindFirstChild("UpperTorso")
2836
				if TORSO then
2837
					if (TORSO.Position - POSITION).Magnitude <= RANGE then
2838
						if BRUTAL == true then
2839
							Kill(CHILD)
2840
						else
2841
							CHILD:BreakJoints()
2842
						end
2843
					end
2844
				end
2845
			end
2846
		end
2847
	end
2848
end
2849
2850
function Kill(Char)
2851
	local NewCharacter = IT("Model",Effects)
2852
	NewCharacter.Name = "Ow im ded ;-;"
2853
	for _, c in pairs(Char:GetDescendants()) do
2854
		if c:IsA("BasePart") and c.Transparency == 0 then
2855
			c:BreakJoints()
2856
			c.Material = "Glass"
2857
			c.Color = C3(0/255,0/255,255/255)
2858
			c.CanCollide = true
2859
			c.Transparency = 0.3
2860
			if c:FindFirstChildOfClass("SpecialMesh") then
2861
				c:FindFirstChildOfClass("SpecialMesh").TextureId = ""
2862
			end
2863
			if c.Name == "Head" then
2864
				c:ClearAllChildren()
2865
				c.Size = VT(c.Size.Y,c.Size.Y,c.Size.Y)
2866
			end
2867
			if c.ClassName == "MeshPart" then
2868
				c.TextureID = ""
2869
			end
2870
			if c:FindFirstChildOfClass("BodyPosition") then
2871
				c:FindFirstChildOfClass("BodyPosition"):remove()
2872
			end
2873
			if c:FindFirstChildOfClass("ParticleEmitter") then
2874
				c:FindFirstChildOfClass("ParticleEmitter"):remove()
2875
			end
2876
			c.Parent = NewCharacter
2877
			c.Name = "DeadPart"
2878
			c.Velocity = VT(MRANDOM(-45,45),MRANDOM(-45,45),MRANDOM(-45,45))/15
2879
			c.RotVelocity = VT(MRANDOM(-45,45),MRANDOM(-15,85),MRANDOM(-45,45))
2880
		end
2881
	end
2882
	Char:remove()
2883
	Debris:AddItem(NewCharacter,5)
2884
end
2885
2886
function ApplyAoE(POSITION,RANGE,BRUTAL)
2887
	local CHILDREN = workspace:GetDescendants()
2888
	for index, CHILD in pairs(CHILDREN) do
2889
		if CHILD.ClassName == "Model" and CHILD ~= Character then
2890
			local HUM = CHILD:FindFirstChildOfClass("Humanoid")
2891
			if HUM then
2892
				local TORSO = CHILD:FindFirstChild("Torso") or CHILD:FindFirstChild("UpperTorso")
2893
				if TORSO then
2894
					if (TORSO.Position - POSITION).Magnitude <= RANGE then
2895
						if BRUTAL == true then
2896
							Kill(CHILD)
2897
						else
2898
							CHILD:BreakJoints()
2899
						end
2900
					end
2901
				end
2902
			end
2903
		end
2904
	end
2905
end
2906
2907
function ApplyAoE(POSITION,RANGE,BRUTAL)
2908
	local CHILDREN = workspace:GetDescendants()
2909
	for index, CHILD in pairs(CHILDREN) do
2910
		if CHILD.ClassName == "Model" and CHILD ~= Character then
2911
			local HUM = CHILD:FindFirstChildOfClass("Humanoid")
2912
			if HUM then
2913
				local TORSO = CHILD:FindFirstChild("Torso") or CHILD:FindFirstChild("UpperTorso")
2914
				if TORSO then
2915
					if (TORSO.Position - POSITION).Magnitude <= RANGE then
2916
						if BRUTAL == true then
2917
							Kill(CHILD)
2918
						else
2919
							CHILD:BreakJoints()
2920
						end
2921
					end
2922
				end
2923
			end
2924
		end
2925
	end
2926
end
2927
2928
function Banish(Foe)
2929
	if Foe then
2930
		coroutine.resume(coroutine.create(function()
2931
			--if game.Players:FindFirstChild(Foe.Name) then
2932
				table.insert(TOBANISH,Foe.Name)
2933
				printbye(Foe.Name)
2934
			--end
2935
			Foe.Archivable = true
2936
			local CLONE = Foe:Clone()
2937
			Foe:Destroy()
2938
			CLONE.Parent = Effects
2939
			CLONE:BreakJoints()
2940
			local MATERIALS = {"Glass","Neon"}
2941
			for _, c in pairs(CLONE:GetDescendants()) do
2942
				if c:IsA("BasePart") then
2943
					if c.Name == "Torso" or c.Name == "UpperTorso" or c == CLONE.PrimaryPart then
2944
 						CreateSound(138271815, c, 10, 1, false)
2945
					end
2946
					c.Anchored = true
2947
					c.Transparency = c.Transparency + 0.2
2948
					c.Material = MATERIALS[MRANDOM(1,2)]
2949
					c.Color = C3(0/255,0/255,255/255)
2950
					if c.ClassName == "MeshPart" then
2951
						c.TextureID = ""
2952
					end
2953
					if c:FindFirstChildOfClass("SpecialMesh") then
2954
						c:FindFirstChildOfClass("SpecialMesh").TextureId = ""
2955
					end
2956
					if c:FindFirstChildOfClass("Decal") then
2957
						c:FindFirstChildOfClass("Decal"):remove()
2958
					end
2959
					c.Name = "Banished"
2960
					c.CanCollide = false
2961
				else
2962
					c:remove()
2963
				end
2964
			end
2965
			local A = false
2966
			for i = 1, 35 do
2967
				if A == false then
2968
					A = true
2969
				elseif A == true then
2970
					A = false
2971
				end
2972
				for _, c in pairs(CLONE:GetDescendants()) do
2973
					if c:IsA("BasePart") then
2974
						c.Anchored = true
2975
						c.Material = MATERIALS[MRANDOM(1,2)]
2976
						c.Transparency = c.Transparency + 0.8/35
2977
						if A == false then
2978
							c.CFrame = c.CFrame*CF(MRANDOM(-45,45)/45,MRANDOM(-45,45)/45,MRANDOM(-45,45)/45)
2979
						elseif A == true then
2980
							c.CFrame = c.CFrame*CF(MRANDOM(-45,45)/45,MRANDOM(-45,45)/45,MRANDOM(-45,45)/45)						
2981
						end
2982
					end
2983
				end
2984
				Swait()
2985
			end
2986
			CLONE:remove()
2987
		end))
2988
	end
2989
end
2990
2991
2992
function ApplyAoE(POSITION,RANGE,ISBANISH)
2993
	local CHILDREN = workspace:GetDescendants()
2994
	for index, CHILD in pairs(CHILDREN) do
2995
		if CHILD.ClassName == "Model" and CHILD ~= Character then
2996
			local HUM = CHILD:FindFirstChildOfClass("Humanoid")
2997
			if HUM then
2998
				local TORSO = CHILD:FindFirstChild("Torso") or CHILD:FindFirstChild("UpperTorso")
2999
				if TORSO then
3000
					if (TORSO.Position - POSITION).Magnitude <= RANGE then
3001
						if ISBANISH == true then
3002
							Banish(CHILD)
3003
						else
3004
							if ISBANISH == "Gravity" then
3005
								HUM.PlatformStand = true
3006
								if TORSO:FindFirstChild("V3BanishForce"..Player.Name) then
3007
									local grav = Instance.new("BodyPosition",TORSO)
3008
									grav.D = 15
3009
									grav.P = 20000
3010
									grav.maxForce = Vector3.new(math.huge,math.huge,math.huge)
3011
									grav.position = TORSO.Position
3012
									grav.Name = "V3BanishForce"..Player.Name
3013
								else
3014
									TORSO:FindFirstChild("V3BanishForce"..Player.Name).position = TORSO.Position+VT(0,0.3,0)
3015
									TORSO.RotVelocity = VT(MRANDOM(-25,25),MRANDOM(-25,25),MRANDOM(-25,25))
3016
								end
3017
							else
3018
								HUM.PlatformStand = false
3019
							end
3020
						end
3021
					elseif ISBANISH == "Gravity" then
3022
						if TORSO:FindFirstChild("V3BanishForce"..Player.Name) then
3023
							TORSO:FindFirstChild("V3BanishForce"..Player.Name):remove()
3024
							HUM.PlatformStand = false
3025
						end
3026
					end
3027
				end
3028
			end
3029
		end
3030
	end
3031
end
3032
3033
function SpawnSmite(POS)
3034
	local HITFLOOR,HITPOS = Raycast(POS+VT(0,1,0), (CF(POS, POS + VT(0, -1, 0))).lookVector, 100, Character)
3035
	local EMITPOS = HITPOS
3036
	if HITFLOOR ~= nil then
3037
		if HITFLOOR.Parent:FindFirstChildOfClass("Humanoid") then
3038
			HITFLOOR,HITPOS = Raycast(POS+VT(0,1,0), (CF(POS, POS + VT(0, -1, 0))).lookVector, 100, HITFLOOR.Parent)
3039
			EMITPOS = HITPOS
3040
		elseif HITFLOOR.Parent.Parent:FindFirstChildOfClass("Humanoid") then
3041
			HITFLOOR,HITPOS = Raycast(POS+VT(0,1,0), (CF(POS, POS + VT(0, -1, 0))).lookVector, 100, HITFLOOR.Parent.Parent)
3042
			EMITPOS = HITPOS
3043
		end
3044
	end
3045
	if HITFLOOR ~= nil then
3046
		ApplyAoE(EMITPOS,10)
3047
		WACKYEFFECT({EffectType = "Sphere", Size = VT(0,100000,0), Size2 = VT(10,100000,10), Transparency = 0, Transparency2 = 1, CFrame = CF(EMITPOS) * ANGLES(RAD(MRANDOM(-15,15)), RAD(0), RAD(MRANDOM(-15,15))), MoveToPos = nil, RotationX = 0, RotationY = 0, RotationZ = 0, Material = "Neon", Color = C3(0/255,0/255,255/255), SoundID = 419011114, SoundPitch = 1, SoundVolume = 5})
3048
		WACKYEFFECT({EffectType = "Block", Size = VT(0,0,0), Size2 = VT(10,10,10)*2, Transparency = 0, Transparency2 = 1, CFrame = CF(EMITPOS), MoveToPos = nil, RotationX = 0, RotationY = 0, RotationZ = 0, Material = "Neon", Color = C3(0/255,0/255,255/255), SoundID = nil, SoundPitch = 1, SoundVolume = 5})
3049
		WACKYEFFECT({EffectType = "Block", Size = VT(0,0,0), Size2 = VT(10,10,10)*1.5, Transparency = 0, Transparency2 = 1, CFrame = CF(EMITPOS), MoveToPos = nil, RotationX = 0, RotationY = 0, RotationZ = 0, Material = "Neon", Color = C3(0/255,0/255,255/255), SoundID = nil, SoundPitch = 1, SoundVolume = 5})
3050
		for i = 1, 5 do
3051
			local TOPOS = CF(EMITPOS)*ANGLES(RAD(MRANDOM(0,360)),RAD(MRANDOM(0,360)),RAD(MRANDOM(0,360)))*CF(0,0,12)
3052
			WACKYEFFECT({EffectType = "Slash", Size = VT(0,0,0), Size2 = VT(0.2,0,0.2), Transparency = 0, Transparency2 = 1, CFrame = CF(EMITPOS,TOPOS.p) * ANGLES(RAD(90), RAD(0), RAD(0)), MoveToPos = TOPOS.p, RotationX = 0, RotationY = 0, RotationZ = 0, Material = "Neon", Color = C3(0/255,0/255,255/255), SoundID = 419011114, SoundPitch = 1, SoundVolume = 5})
3053
		end
3054
	end
3055
end
3056
3057
--//=================================\\
3058
--||	ATTACK FUNCTIONS AND STUFF
3059
--\\=================================//
3060
3061
function eh()
3062
	ATTACK = true
3063
	Rooted = false
3064
	Speed = 20
3065
		Swait()
3066
		local CHILDREN = workspace:GetDescendants()
3067
		for index, CHILD in pairs(CHILDREN) do
3068
			if CHILD.ClassName == "Model" and CHILD ~= Character then
3069
				local HUM = CHILD:FindFirstChildOfClass("Humanoid")
3070
				if HUM then
3071
					local TORSO = CHILD:FindFirstChild("Head")
3072
					if TORSO then
3073
						if (TORSO.Position - Head.Position).Magnitude <= 25 then
3074
							WACKYEFFECT({Time = 45, EffectType = "Sphere", Size = VT(1,1,1), Size2 = VT(5,5,5), Transparency = 0, Transparency2 = 1, CFrame = CF(TORSO.Position), MoveToPos = nil, RotationX = 0, RotationY = 0, RotationZ = 0, Material = "Neon", Color = C3(0/255,0/255,255/255), SoundID = nil, SoundPitch = nil, SoundVolume = nil})
3075
							TORSO:remove()
3076
							if CHILD:FindFirstChild("Torso") then
3077
								Ragdoll(CHILD,Torso,true)
3078
							elseif CHILD:FindFirstChild("UpperTorso") then
3079
								R15Ragdoll(CHILD,true)
3080
							end
3081
						end
3082
					end
3083
				end
3084
			end
3085
		end
3086
	for i=0, 0.3, 0.1 / Animation_Speed do
3087
		Swait()
3088
		Neck.C0 = Clerp(Neck.C0, NECKC0 * CF(0, 0, 0 + ((1) - 1)) * ANGLES(RAD(25 + MRANDOM(-5,5) - 4 * COS(SINE / 12)), RAD(MRANDOM(-5,5)), RAD(15)), 1 / Animation_Speed)	
3089
		RootJoint.C0 = Clerp(RootJoint.C0, ROOTC0 * CF(0, 0, 0 + 0.05 * COS(SINE / 12)) * ANGLES(RAD(0), RAD(0), RAD(0)), 0.25 / Animation_Speed)
3090
		RightShoulder.C0 = Clerp(RightShoulder.C0, CF(1.5, 0.5, 0.3) * ANGLES(RAD(180), RAD(0), RAD(0)) * ANGLES(RAD(0), RAD(45), RAD(0)) * RIGHTSHOULDERC0, 0.25 / Animation_Speed)
3091
		LeftShoulder.C0 = Clerp(LeftShoulder.C0, CF(-1.5, 0.6, 0) * ANGLES(RAD(-45), RAD(0), RAD(45)) * LEFTSHOULDERC0, 0.25 / Animation_Speed)
3092
		RightHip.C0 = Clerp(RightHip.C0, CF(1, -1 - 0.05 * COS(SINE / 12), -0.01) * ANGLES(RAD(0), RAD(90), RAD(0)) * ANGLES(RAD(-8), RAD(0), RAD(0)), 0.25 / Animation_Speed)
3093
		LeftHip.C0 = Clerp(LeftHip.C0, CF(-1, -1 - 0.05 * COS(SINE / 12), -0.01) * ANGLES(RAD(0), RAD(-90), RAD(0)) * ANGLES(RAD(-8), RAD(0), RAD(0)), 0.25 / Animation_Speed)
3094
end
3095
	Speed = 20
3096
	ATTACK = false
3097
	Rooted = false
3098
end
3099
3100
function Taunt()
3101
	ATTACK = true
3102
	Rooted = true
3103
	        CreateSound("1238240145", Torso, 6, 0.9)
3104
		for i=0, 0.6, 0.1 / Animation_Speed do
3105
			Swait()
3106
		RootJoint.C0 = Clerp(RootJoint.C0,ROOTC0 * CF(0, 0, 0 + 0.35 * COS(SINE / 2)) * ANGLES(RAD(0), RAD(0), RAD(0)), 0.15 / Animation_Speed)
3107
Neck.C0 = Clerp(Neck.C0, NECKC0 * CF(0, 0, 0 + ((1) - 1)) * ANGLES(RAD(0 + MRANDOM(-25,25) - 4 * COS(SINE / 12)), RAD(MRANDOM(-25,25)), RAD(0)), 1.5 / Animation_Speed)
3108
RightShoulder.C0 = Clerp(RightShoulder.C0, CF(1.5, 0.35, 0) * ANGLES(RAD(90), RAD(34), RAD(0)) * RIGHTSHOULDERC0, 0.15 / Animation_Speed)
3109
			LeftShoulder.C0 = Clerp(LeftShoulder.C0, CF(-1.5 * Player_Size, 0.5 * Player_Size, 0 * Player_Size) * ANGLES(RAD(90), RAD(25), RAD(45)) * LEFTSHOULDERC0, 0.15 / Animation_Speed)
3110
		RightHip.C0 = Clerp(RightHip.C0, CF(1, -1 - 0.35 * COS(SINE / 2), -0.01) * ANGLES(RAD(0), RAD(90), RAD(0)) * ANGLES(RAD(0), RAD(0), RAD(0)), 0.15 / Animation_Speed)
3111
		LeftHip.C0 = Clerp(LeftHip.C0, CF(-1, -1 - 0.35 * COS(SINE / 2), -0.01) * ANGLES(RAD(0), RAD(-90), RAD(0)) * ANGLES(RAD(0), RAD(0), RAD(0)), 0.15 / Animation_Speed)
3112
		end
3113
		for i=0, 0.6, 0.1 / Animation_Speed do
3114
			Swait()
3115
		RootJoint.C0 = Clerp(RootJoint.C0,ROOTC0 * CF(0, 0, 0 + 0.35 * COS(SINE / 2)) * ANGLES(RAD(0), RAD(0), RAD(0)), 0.15 / Animation_Speed)
3116
Neck.C0 = Clerp(Neck.C0, NECKC0 * CF(0, 0, 0 + ((1) - 1)) * ANGLES(RAD(0 + MRANDOM(-25,25) - 4 * COS(SINE / 12)), RAD(MRANDOM(-25,25)), RAD(0)), 1.5 / Animation_Speed)
3117
RightShoulder.C0 = Clerp(RightShoulder.C0, CF(1.5, 0.35, 0) * ANGLES(RAD(80), RAD(0), RAD(0)) * RIGHTSHOULDERC0, 0.15 / Animation_Speed)
3118
			LeftShoulder.C0 = Clerp(LeftShoulder.C0, CF(-1.5 * Player_Size, 0.5 * Player_Size, 0 * Player_Size) * ANGLES(RAD(90), RAD(15), RAD(45)) * LEFTSHOULDERC0, 0.15 / Animation_Speed)
3119
		RightHip.C0 = Clerp(RightHip.C0, CF(1, -1 - 0.35 * COS(SINE / 2), -0.01) * ANGLES(RAD(0), RAD(90), RAD(0)) * ANGLES(RAD(0), RAD(0), RAD(0)), 0.15 / Animation_Speed)
3120
		LeftHip.C0 = Clerp(LeftHip.C0, CF(-1, -1 - 0.35 * COS(SINE / 2), -0.01) * ANGLES(RAD(0), RAD(-90), RAD(0)) * ANGLES(RAD(0), RAD(0), RAD(0)), 0.15 / Animation_Speed)
3121
		end
3122
		for i=0, 0.6, 0.1 / Animation_Speed do
3123
			Swait()
3124
		RootJoint.C0 = Clerp(RootJoint.C0,ROOTC0 * CF(0, 0, 0 + 0.35 * COS(SINE / 2)) * ANGLES(RAD(0), RAD(0), RAD(0)), 0.15 / Animation_Speed)
3125
Neck.C0 = Clerp(Neck.C0, NECKC0 * CF(0, 0, 0 + ((1) - 1)) * ANGLES(RAD(0 + MRANDOM(-25,25) - 4 * COS(SINE / 12)), RAD(MRANDOM(-25,25)), RAD(0)), 1.5 / Animation_Speed)
3126
RightShoulder.C0 = Clerp(RightShoulder.C0, CF(1.5, 0.35, 0) * ANGLES(RAD(90), RAD(34), RAD(0)) * RIGHTSHOULDERC0, 0.15 / Animation_Speed)
3127
			LeftShoulder.C0 = Clerp(LeftShoulder.C0, CF(-1.5 * Player_Size, 0.5 * Player_Size, 0 * Player_Size) * ANGLES(RAD(90), RAD(25), RAD(45)) * LEFTSHOULDERC0, 0.15 / Animation_Speed)
3128
		RightHip.C0 = Clerp(RightHip.C0, CF(1, -1 - 0.35 * COS(SINE / 2), -0.01) * ANGLES(RAD(0), RAD(90), RAD(0)) * ANGLES(RAD(0), RAD(0), RAD(0)), 0.15 / Animation_Speed)
3129
		LeftHip.C0 = Clerp(LeftHip.C0, CF(-1, -1 - 0.35 * COS(SINE / 2), -0.01) * ANGLES(RAD(0), RAD(-90), RAD(0)) * ANGLES(RAD(0), RAD(0), RAD(0)), 0.15 / Animation_Speed)
3130
		end
3131
		for i=0, 0.6, 0.1 / Animation_Speed do
3132
			Swait()
3133
		RootJoint.C0 = Clerp(RootJoint.C0,ROOTC0 * CF(0, 0, 0 + 0.35 * COS(SINE / 2)) * ANGLES(RAD(0), RAD(0), RAD(0)), 0.15 / Animation_Speed)
3134
Neck.C0 = Clerp(Neck.C0, NECKC0 * CF(0, 0, 0 + ((1) - 1)) * ANGLES(RAD(0 + MRANDOM(-25,25) - 4 * COS(SINE / 12)), RAD(MRANDOM(-25,25)), RAD(0)), 1.5 / Animation_Speed)
3135
RightShoulder.C0 = Clerp(RightShoulder.C0, CF(1.5, 0.35, 0) * ANGLES(RAD(80), RAD(0), RAD(0)) * RIGHTSHOULDERC0, 0.15 / Animation_Speed)
3136
			LeftShoulder.C0 = Clerp(LeftShoulder.C0, CF(-1.5 * Player_Size, 0.5 * Player_Size, 0 * Player_Size) * ANGLES(RAD(90), RAD(15), RAD(45)) * LEFTSHOULDERC0, 0.15 / Animation_Speed)
3137
		RightHip.C0 = Clerp(RightHip.C0, CF(1, -1 - 0.35 * COS(SINE / 2), -0.01) * ANGLES(RAD(0), RAD(90), RAD(0)) * ANGLES(RAD(0), RAD(0), RAD(0)), 0.15 / Animation_Speed)
3138
		LeftHip.C0 = Clerp(LeftHip.C0, CF(-1, -1 - 0.35 * COS(SINE / 2), -0.01) * ANGLES(RAD(0), RAD(-90), RAD(0)) * ANGLES(RAD(0), RAD(0), RAD(0)), 0.15 / Animation_Speed)
3139
		end
3140
		for i=0, 0.6, 0.1 / Animation_Speed do
3141
			Swait()
3142
		RootJoint.C0 = Clerp(RootJoint.C0,ROOTC0 * CF(0, 0, 0 + 0.35 * COS(SINE / 2)) * ANGLES(RAD(0), RAD(0), RAD(0)), 0.15 / Animation_Speed)
3143
Neck.C0 = Clerp(Neck.C0, NECKC0 * CF(0, 0, 0 + ((1) - 1)) * ANGLES(RAD(0 + MRANDOM(-25,25) - 4 * COS(SINE / 12)), RAD(MRANDOM(-25,25)), RAD(0)), 1.5 / Animation_Speed)
3144
RightShoulder.C0 = Clerp(RightShoulder.C0, CF(1.5, 0.35, 0) * ANGLES(RAD(90), RAD(34), RAD(0)) * RIGHTSHOULDERC0, 0.15 / Animation_Speed)
3145
			LeftShoulder.C0 = Clerp(LeftShoulder.C0, CF(-1.5 * Player_Size, 0.5 * Player_Size, 0 * Player_Size) * ANGLES(RAD(90), RAD(25), RAD(45)) * LEFTSHOULDERC0, 0.15 / Animation_Speed)
3146
		RightHip.C0 = Clerp(RightHip.C0, CF(1, -1 - 0.35 * COS(SINE / 2), -0.01) * ANGLES(RAD(0), RAD(90), RAD(0)) * ANGLES(RAD(0), RAD(0), RAD(0)), 0.15 / Animation_Speed)
3147
		LeftHip.C0 = Clerp(LeftHip.C0, CF(-1, -1 - 0.35 * COS(SINE / 2), -0.01) * ANGLES(RAD(0), RAD(-90), RAD(0)) * ANGLES(RAD(0), RAD(0), RAD(0)), 0.15 / Animation_Speed)
3148
		end
3149
		for i=0, 0.6, 0.1 / Animation_Speed do
3150
			Swait()
3151
		RootJoint.C0 = Clerp(RootJoint.C0,ROOTC0 * CF(0, 0, 0 + 0.35 * COS(SINE / 2)) * ANGLES(RAD(0), RAD(0), RAD(0)), 0.15 / Animation_Speed)
3152
Neck.C0 = Clerp(Neck.C0, NECKC0 * CF(0, 0, 0 + ((1) - 1)) * ANGLES(RAD(0 + MRANDOM(-25,25) - 4 * COS(SINE / 12)), RAD(MRANDOM(-25,25)), RAD(0)), 1.5 / Animation_Speed)
3153
RightShoulder.C0 = Clerp(RightShoulder.C0, CF(1.5, 0.35, 0) * ANGLES(RAD(80), RAD(0), RAD(0)) * RIGHTSHOULDERC0, 0.15 / Animation_Speed)
3154
			LeftShoulder.C0 = Clerp(LeftShoulder.C0, CF(-1.5 * Player_Size, 0.5 * Player_Size, 0 * Player_Size) * ANGLES(RAD(90), RAD(15), RAD(45)) * LEFTSHOULDERC0, 0.15 / Animation_Speed)
3155
		RightHip.C0 = Clerp(RightHip.C0, CF(1, -1 - 0.35 * COS(SINE / 2), -0.01) * ANGLES(RAD(0), RAD(90), RAD(0)) * ANGLES(RAD(0), RAD(0), RAD(0)), 0.15 / Animation_Speed)
3156
		LeftHip.C0 = Clerp(LeftHip.C0, CF(-1, -1 - 0.35 * COS(SINE / 2), -0.01) * ANGLES(RAD(0), RAD(-90), RAD(0)) * ANGLES(RAD(0), RAD(0), RAD(0)), 0.15 / Animation_Speed)
3157
		end
3158
	ATTACK = false
3159
	Rooted = false
3160
end
3161
3162
function TakeOnMe()
3163
	Speed = 16
3164
	local MEME = CreateSound(1171341451, Effects, 2, 1, false)
3165
	ATTACK = true
3166
	Rooted = false
3167
	local DANCE = true
3168
	local KEY = Mouse.KeyDown:connect(function(NEWKEY)
3169
		if NEWKEY == "p" then
3170
			DANCE = false
3171
		end
3172
	end)
3173
	PLAYSONG = false
3174
	while true do
3175
		for i = 1, 15 do
3176
			Swait()
3177
			MEME.Parent = Effects
3178
		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)
3179
		Neck.C0 = Clerp(Neck.C0, NECKC0 * CF(0, 0, 0 + ((1) - 1)) * ANGLES(RAD(0 - 2.5 * SIN(SINE / 12)), RAD(0), RAD(0)), 0.15 / Animation_Speed)
3180
		RightShoulder.C0 = Clerp(RightShoulder.C0, CF(1.5, 0.5, 0) * ANGLES(RAD(0), RAD(0), RAD(12)) * RIGHTSHOULDERC0, 0.15 / Animation_Speed)
3181
		LeftShoulder.C0 = Clerp(LeftShoulder.C0, CF(-1.5, 0.5, 0) * ANGLES(RAD(0), RAD(0), RAD(-12)) * LEFTSHOULDERC0, 0.15 / Animation_Speed)
3182
		RightHip.C0 = Clerp(RightHip.C0, CF(1, -1 - 0.05 * COS(SINE / 12), -0.01) * ANGLES(RAD(0), RAD(90), RAD(0)) * ANGLES(RAD(-8), RAD(0), RAD(0)), 0.15 / Animation_Speed)
3183
		LeftHip.C0 = Clerp(LeftHip.C0, CF(-1, -1 - 0.05 * COS(SINE / 12), -0.01) * ANGLES(RAD(0), RAD(-90), RAD(0)) * ANGLES(RAD(-8), RAD(0), RAD(0)), 0.15 / Animation_Speed)
3184
		end
3185
		if DANCE == false then
3186
			break
3187
		end
3188
		for i = 1, 15 do
3189
			Swait()
3190
			MEME.Parent = Effects
3191
		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)
3192
			Neck.C0 = Clerp(Neck.C0, NECKC0 * CF(0, 0, 0 + ((1) - 1)) * ANGLES(RAD(25 + MRANDOM(-5,5) - 4 * COS(SINE / 12)), RAD(MRANDOM(-5,5)), RAD(15)), 1 / Animation_Speed)
3193
			if MRANDOM(1,7) == 1 then
3194
				Neck.C0 = Clerp(Neck.C0, NECKC0 * CF(0, 0, 0 + ((1) - 1)) * ANGLES(RAD(0 + MRANDOM(-25,25) - 4 * COS(SINE / 12)), RAD(MRANDOM(-25,25)), RAD(0)), 1.5 / Animation_Speed)
3195
			end			RightShoulder.C0 = Clerp(RightShoulder.C0, CF(1.5, 0.35, 0) * ANGLES(RAD(150), RAD(65), RAD(85)) * RIGHTSHOULDERC0, 0.15 / Animation_Speed)
3196
			LeftShoulder.C0 = Clerp(LeftShoulder.C0, CF(-1.5 * Player_Size, 0.5 * Player_Size, 0 * Player_Size) * ANGLES(RAD(150), RAD(65), RAD(85)) * LEFTSHOULDERC0, 0.15 / Animation_Speed)
3197
		RightHip.C0 = Clerp(RightHip.C0, CF(1, -1 - 0.05 * COS(SINE / 12), -0.01) * ANGLES(RAD(0), RAD(90), RAD(0)) * ANGLES(RAD(-8), RAD(0), RAD(0)), 0.15 / Animation_Speed)
3198
			LeftHip.C0 = Clerp(LeftHip.C0, CF(-1, -1 - 0.05 * COS(SINE / 12), -0.01) * ANGLES(RAD(0), RAD(-90), RAD(0)) * ANGLES(RAD(-8), RAD(0), RAD(0)), 0.15 / Animation_Speed)
3199
		end
3200
	end
3201
	PLAYSONG = true
3202
	KEY:Disconnect()
3203
	MEME:remove()
3204
	Speed = 25
3205
	ATTACK = false
3206
	Rooted = false
3207
end
3208
3209
function Intro()
3210
	ATTACK = true
3211
	Rooted = true
3212
	local HITFLOOR,HITPOS = Raycast(RootPart.Position, (CF(RootPart.Position, RootPart.Position + VT(0, -1, 0))).lookVector, 4, Character)
3213
	local POSITION = CF(HITPOS)*ANGLES(RAD(0),RAD(0),RAD(0))*CF(0,1,0).p
3214
	for i=0, 6, 0.1 / Animation_Speed do
3215
		Swait()
3216
			RootJoint.C0 = Clerp(RootJoint.C0,ROOTC0 * CF(0, 0, 5 + 0.05 * COS(SINE / 30)) * ANGLES(RAD(15), RAD(0), RAD(0)), 0.1 / Animation_Speed)
3217
			Neck.C0 = Clerp(Neck.C0, NECKC0 * CF(0, 0, 0 + ((1) - 1)) * ANGLES(RAD(35 - 2.5 * SIN(SINE / 30)), RAD(0), RAD(0)), 0.1 / Animation_Speed)
3218
			RightShoulder.C0 = Clerp(RightShoulder.C0, CF(1.5, 0.5 - 0.1 * COS(SINE / 30), -0.5) * ANGLES(RAD(170), RAD(0), RAD(-40)) * RIGHTSHOULDERC0, 0.1 / Animation_Speed)
3219
			LeftShoulder.C0 = Clerp(LeftShoulder.C0, CF(-1.5, 0.5 - 0.1 * COS(SINE / 30), -0.5) * ANGLES(RAD(170), RAD(0), RAD(40)) * LEFTSHOULDERC0, 0.1 / Animation_Speed)
3220
			RightHip.C0 = Clerp(RightHip.C0, CF(1, -0.5 - 0.025 * COS(SINE / 30), -0.5) * ANGLES(RAD(15), RAD(83), RAD(0)) * ANGLES(RAD(0), RAD(0), RAD(0)), 0.1 / Animation_Speed)
3221
			LeftHip.C0 = Clerp(LeftHip.C0, CF(-1, -0.5 - 0.025 * COS(SINE / 30), -0.5) * ANGLES(RAD(15), RAD(-83), RAD(0)) * ANGLES(RAD(0), RAD(0), RAD(0)), 0.1 / Animation_Speed)				
3222
	end
3223
	CreateSound(1208650519, Torso, 2, 0.8)
3224
	CreateSound(246480487, Character, 10, 1)
3225
	for i=0, 17, 0.1 / Animation_Speed do
3226
		Swait()
3227
			RootJoint.C0 = Clerp(RootJoint.C0,ROOTC0 * CF(0, 0, 4 + 0.05 * COS(SINE / 30)) * ANGLES(RAD(15), RAD(0), RAD(0)), 0.1 / Animation_Speed)
3228
			Neck.C0 = Clerp(Neck.C0, NECKC0 * CF(0, 0, 0 + ((1) - 1)) * ANGLES(RAD(35 - 2.5 * SIN(SINE / 30)), RAD(0), RAD(0)), 0.1 / Animation_Speed)
3229
			RightShoulder.C0 = Clerp(RightShoulder.C0, CF(1.5, 0.5 - 0.1 * COS(SINE / 30), -0.5) * ANGLES(RAD(170), RAD(0), RAD(-40)) * RIGHTSHOULDERC0, 0.1 / Animation_Speed)
3230
			LeftShoulder.C0 = Clerp(LeftShoulder.C0, CF(-1.5, 0.5 - 0.1 * COS(SINE / 30), -0.5) * ANGLES(RAD(170), RAD(0), RAD(40)) * LEFTSHOULDERC0, 0.1 / Animation_Speed)
3231
			RightHip.C0 = Clerp(RightHip.C0, CF(1, -0.5 - 0.025 * COS(SINE / 30), -0.5) * ANGLES(RAD(15), RAD(83), RAD(0)) * ANGLES(RAD(0), RAD(0), RAD(0)), 0.1 / Animation_Speed)
3232
			LeftHip.C0 = Clerp(LeftHip.C0, CF(-1, -0.5 - 0.025 * COS(SINE / 30), -0.5) * ANGLES(RAD(15), RAD(-83), RAD(0)) * ANGLES(RAD(0), RAD(0), RAD(0)), 0.1 / Animation_Speed)				
3233
	end
3234
	CreateSound(1841058541,Character,3,1,false)
3235
	for i=0, 0.7, 0.1 / Animation_Speed do
3236
		Swait()
3237
			RootJoint.C0 = Clerp(RootJoint.C0, ROOTC0 * CF(0 * Player_Size, 0 * Player_Size, -1 * Player_Size) * ANGLES(RAD(45), RAD(0), RAD(0)), 0.2 / Animation_Speed*3)
3238
			Neck.C0 = Clerp(Neck.C0, NECKC0 * CF(0 * Player_Size, 0 * Player_Size, 0 + ((1 * Player_Size) - 1)) * ANGLES(RAD(0), RAD(0), RAD(0)), 0.2 / Animation_Speed)
3239
			RightShoulder.C0 = Clerp(RightShoulder.C0, CF(1.5 * Player_Size, 1 * Player_Size, -1.4 * Player_Size) * ANGLES(RAD(30), RAD(-690), RAD(2 - 2.5 * COS(SINE / 12) + 2.5 * SIN(SINE / 24))) * RIGHTSHOULDERC0, 0.15 / Animation_Speed*5)
3240
			LeftShoulder.C0 = Clerp(LeftShoulder.C0, CF(-1.5 * Player_Size, 0.5 * Player_Size, 0 * Player_Size) * ANGLES(RAD(90), RAD(25), RAD(45)) * LEFTSHOULDERC0, 0.15 / Animation_Speed)
3241
			RightHip.C0 = Clerp(RightHip.C0, CF(1 * Player_Size, -0.3 * Player_Size, -1 * Player_Size) * ANGLES(RAD(0), RAD(90), RAD(0)) * ANGLES(RAD(0), RAD(0), RAD(-20)), 0.2 / Animation_Speed)
3242
			LeftHip.C0 = Clerp(LeftHip.C0, CF(-1.2, 0.2 - 0.1 * COS(SINE / 24), -0.4 - 0.1 * COS(SINE / 24)) * ANGLES(RAD(45), RAD(-70), RAD(0)) * ANGLES(RAD(0), RAD(0), RAD(10)), 0.2 / Animation_Speed)				
3243
	end
3244
	Head.Color = C3(0/0,0/0,0/0)
3245
	Torso.Color = C3(0/0,0/0,0/0)
3246
	LeftArm.Color = C3(0/0,0/0,0/0)
3247
	LeftLeg.Color = C3(0/0,0/0,0/0)
3248
	RightArm.Color = C3(0/0,0/0,0/0)
3249
	RightLeg.Color = C3(0/0,0/0,0/0)
3250
	EXE.ShirtTemplate = "rbxassetid://863473913"
3251
	LOL.PantsTemplate = "rbxassetid://770508500"
3252
	Gun.Parent = Character
3253
	tecks2.TextTransparency = 0
3254
	for i = 1, 100 do
3255
		Swait()
3256
		for _, c in pairs(Character:GetChildren()) do
3257
			if c.ClassName == "Part" and c.Name ~= "HumanoidRootPart" then
3258
				c.Transparency = 0
3259
			end
3260
		end
3261
		for _, c in pairs(Weapon:GetChildren()) do
3262
			if c.ClassName == "Part" and c.Name ~= "HumanoidRootPart" then
3263
				c.Transparency = 0
3264
			end
3265
		end
3266
	end
3267
	TRANSFORMED = true
3268
	ATTACK = false
3269
	Rooted = false
3270
end
3271
3272
function Shot()
3273
	ATTACK = true
3274
	Rooted = false
3275
	for i=0, 0.2, 0.05 / Animation_Speed do
3276
		Swait()
3277
		turnto(Mouse.Hit.p)
3278
		RootJoint.C0 = Clerp(RootJoint.C0,ROOTC0 * CF(0, 0, 0) * ANGLES(RAD(0), RAD(0), RAD(90)), 0.5 / Animation_Speed)
3279
		Neck.C0 = Clerp(Neck.C0, NECKC0 * CF(0, 0, 0) * ANGLES(RAD(0), RAD(0), RAD(-90)), 0.5 / Animation_Speed)
3280
		RightShoulder.C0 = Clerp(RightShoulder.C0, CF(1.5, 0.5, 0) * ANGLES(RAD(90), RAD(0), RAD(90)) * RIGHTSHOULDERC0, 0.5 / Animation_Speed)
3281
		LeftShoulder.C0 = Clerp(LeftShoulder.C0, CF(-1.5, 0.6, 0) * ANGLES(RAD(-45), RAD(0), RAD(45)) * LEFTSHOULDERC0, 0.5 / Animation_Speed)
3282
		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)
3283
		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)
3284
	end
3285
	repeat
3286
		for i=0, 0.2, 0.05 / Animation_Speed do
3287
			Swait()
3288
			turnto(Mouse.Hit.p)
3289
			RootJoint.C0 = Clerp(RootJoint.C0,ROOTC0 * CF(0, 0, 0) * ANGLES(RAD(0), RAD(0), RAD(90)), 0.5 / Animation_Speed)
3290
			Neck.C0 = Clerp(Neck.C0, NECKC0 * CF(0, 0, 0) * ANGLES(RAD(0), RAD(0), RAD(-90)), 0.5 / Animation_Speed)
3291
			RightShoulder.C0 = Clerp(RightShoulder.C0, CF(1.5, 0.5, 0) * ANGLES(RAD(90), RAD(0), RAD(90)) * RIGHTSHOULDERC0, 0.5 / Animation_Speed)
3292
			LeftShoulder.C0 = Clerp(LeftShoulder.C0, CF(-1.5, 0.6, 0) * ANGLES(RAD(-45), RAD(0), RAD(45)) * LEFTSHOULDERC0, 0.5 / Animation_Speed)
3293
			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)
3294
			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)
3295
		end
3296
		local HIT,POS = CastProperRay(Hole.Position, Mouse.Hit.p, 1000, Character)
3297
		SpawnTrail(Hole.Position,POS)
3298
		if HIT ~= nil then
3299
			if HIT.Parent ~= workspace and HIT.Parent.ClassName ~= "Folder" then
3300
				Banish(HIT.Parent)
3301
			end
3302
		end
3303
	Humanoid.CameraOffset = VT(MRANDOM(-5,5)/2.5,MRANDOM(-5,5)/2.5,MRANDOM(-5,5)/2.5)/30
3304
		for i=0, 0.2, 0.05 / Animation_Speed do
3305
			Swait()
3306
			RootJoint.C0 = Clerp(RootJoint.C0,ROOTC0 * CF(0, 0, 0) * ANGLES(RAD(0), RAD(0), RAD(90)), 0.5 / Animation_Speed)
3307
			Neck.C0 = Clerp(Neck.C0, NECKC0 * CF(0, 0, 0) * ANGLES(RAD(0), RAD(0), RAD(-90)), 0.25 / Animation_Speed)
3308
			RightShoulder.C0 = Clerp(RightShoulder.C0, CF(1.5, 0.5, 0) * ANGLES(RAD(90), RAD(15), RAD(90)) * RIGHTSHOULDERC0, 0.5 / Animation_Speed)
3309
			LeftShoulder.C0 = Clerp(LeftShoulder.C0, CF(-1.5, 0.6, 0) * ANGLES(RAD(-45), RAD(0), RAD(45)) * LEFTSHOULDERC0, 0.5 / Animation_Speed)
3310
			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)
3311
			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)
3312
		end
3313
	until KEYHOLD == false
3314
	ATTACK = false
3315
	Rooted = false
3316
end
3317
3318
function MagicMissiles()
3319
    ATTACK = true
3320
    Rooted = true
3321
    local SELECTING = true
3322
    local SPOTS = {}
3323
    coroutine.resume(coroutine.create(function()
3324
        local LOOP = 0
3325
        repeat
3326
            LOOP = LOOP + 1
3327
            Swait()
3328
            if LOOP >= 10 then
3329
                LOOP = 0
3330
                for i = 1, #SPOTS do
3331
                    if SPOTS[i] ~= nil then
3332
                      WACKYEFFECT({Time = 15, EffectType = "Wave", Size = VT(0,0,0)*SIZE, Size2 = VT(8,2,8), Transparency = 0, Transparency2 = 1, CFrame = SPOTS[i], MoveToPos = nil, RotationX = 0, RotationY = -15, RotationZ = 0, Material = "Neon", Color = C3(0,0,0), SoundID = nil, SoundPitch = 0.5, SoundVolume = 6})
3333
                        WACKYEFFECT({Time = 15, EffectType = "Wave", Size = VT(0,0,0)*SIZE, Size2 = VT(6,3,6), Transparency = 0, Transparency2 = 1, CFrame = SPOTS[i], MoveToPos = nil, RotationX = 0, RotationY = 15, RotationZ = 0, Material = "Neon", Color = C3(0,0,0), SoundID = nil, SoundPitch = 0.5, SoundVolume = 6})
3334
                    end
3335
                end
3336
            end
3337
            RootJoint.C0 = Clerp(RootJoint.C0,ROOTC0 * CF(0 - 0.04 * SIN(SINE / 24)*SIZE, 0 + 0.04 * SIN(SINE / 12)*SIZE, 0 + 0.05*SIZE * COS(SINE / 12)) * ANGLES(RAD(0 - 2.5 * SIN(SINE / 12)), RAD(0 - 2.5 * SIN(SINE / 24)), RAD(0)), 1 / Animation_Speed)
3338
            Neck.C0 = Clerp(Neck.C0, NECKC0 * CF(0, 0, 0 + ((1.1*SIZE) - 1)) * ANGLES(RAD(-25 - 4 * SIN(SINE / 12)), RAD(0), RAD(0)), 1 / Animation_Speed)
3339
            RightShoulder.C0 = Clerp(RightShoulder.C0, CF(1.35*SIZE, 0.65*SIZE, 0*SIZE) * ANGLES(RAD(115), RAD(45), RAD(35)) * RIGHTSHOULDERC0, 1 / Animation_Speed)
3340
            LeftShoulder.C0 = Clerp(LeftShoulder.C0, CF(-1.25*SIZE, 0.5*SIZE, 0.5*SIZE) * ANGLES(RAD(-35), RAD(25 - 2.5 * SIN(SINE / 12)), RAD(55 - 2.5 * SIN(SINE / 12))) * LEFTSHOULDERC0, 1 / Animation_Speed)
3341
            RightHip.C0 = Clerp(RightHip.C0, CF(1*SIZE, -1*SIZE + 0.06 * SIN(SINE / 24) - 0.05*SIZE * COS(SINE / 12), -0.01*SIZE) * ANGLES(RAD(0 - 2.5 * SIN(SINE / 12)), RAD(75), RAD(0)) * ANGLES(RAD(-2 - 2.5 * SIN(SINE / 24)), RAD(0), RAD(0)), 1 / Animation_Speed)
3342
            LeftHip.C0 = Clerp(LeftHip.C0, CF(-1*SIZE, -1*SIZE - 0.06 * SIN(SINE / 24) - 0.05*SIZE * COS(SINE / 12), -0.01*SIZE) * ANGLES(RAD(0 - 2.5 * SIN(SINE / 12)), RAD(-75), RAD(0)) * ANGLES(RAD(-2 + 2.5 * SIN(SINE / 24)), RAD(0), RAD(0)), 1 / Animation_Speed)
3343
        until SELECTING == false
3344
        Rooted = false
3345
        repeat
3346
            LOOP = LOOP + 1
3347
            Swait()
3348
            if LOOP >= 10 then
3349
                LOOP = 0
3350
                for i = 1, #SPOTS do
3351
                    if SPOTS[i] ~= nil then
3352
                        WACKYEFFECT({Time = 15, EffectType = "Wave", Size = VT(0,0,0)*SIZE, Size2 = VT(8,2,8), Transparency = 0, Transparency2 = 1, CFrame = SPOTS[i], MoveToPos = nil, RotationX = 0, RotationY = -15, RotationZ = 0, Material = "Neon", Color = C3(0,0,0), SoundID = nil, SoundPitch = 0.5, SoundVolume = 6})
3353
                        WACKYEFFECT({Time = 15, EffectType = "Wave", Size = VT(0,0,0)*SIZE, Size2 = VT(6,3,6), Transparency = 0, Transparency2 = 1, CFrame = SPOTS[i], MoveToPos = nil, RotationX = 0, RotationY = 15, RotationZ = 0, Material = "Neon", Color = C3(0,0,0), SoundID = nil, SoundPitch = 0.5, SoundVolume = 6})
3354
                    end
3355
                end
3356
            end
3357
            RootJoint.C0 = Clerp(RootJoint.C0,ROOTC0 * CF(0 - 0.04 * SIN(SINE / 24)*SIZE, 0 + 0.04 * SIN(SINE / 12)*SIZE, 0 + 0.05*SIZE * COS(SINE / 12)) * ANGLES(RAD(0 - 2.5 * SIN(SINE / 12)), RAD(0 - 2.5 * SIN(SINE / 24)), RAD(0)), 1 / Animation_Speed)
3358
            Neck.C0 = Clerp(Neck.C0, NECKC0 * CF(0, 0, 0 + ((1.1*SIZE) - 1)) * ANGLES(RAD(0 - 4 * SIN(SINE / 12)), RAD(25), RAD(0)), 1 / Animation_Speed)
3359
            RightShoulder.C0 = Clerp(RightShoulder.C0, CF(1.35*SIZE, 0.65*SIZE, 0*SIZE) * ANGLES(RAD(90), RAD(0), RAD(35)) * RIGHTSHOULDERC0, 1 / Animation_Speed)
3360
            LeftShoulder.C0 = Clerp(LeftShoulder.C0, CF(-1.25*SIZE, 0.5*SIZE, 0.5*SIZE) * ANGLES(RAD(-35), RAD(25 - 2.5 * SIN(SINE / 12)), RAD(55 - 2.5 * SIN(SINE / 12))) * LEFTSHOULDERC0, 1 / Animation_Speed)
3361
            RightHip.C0 = Clerp(RightHip.C0, CF(1*SIZE, -1*SIZE + 0.06 * SIN(SINE / 24) - 0.05*SIZE * COS(SINE / 12), -0.01*SIZE) * ANGLES(RAD(0 - 2.5 * SIN(SINE / 12)), RAD(75), RAD(0)) * ANGLES(RAD(-2 - 2.5 * SIN(SINE / 24)), RAD(0), RAD(0)), 1 / Animation_Speed)
3362
            LeftHip.C0 = Clerp(LeftHip.C0, CF(-1*SIZE, -1*SIZE - 0.06 * SIN(SINE / 24) - 0.05*SIZE * COS(SINE / 12), -0.01*SIZE) * ANGLES(RAD(0 - 2.5 * SIN(SINE / 12)), RAD(-75), RAD(0)) * ANGLES(RAD(-2 + 2.5 * SIN(SINE / 24)), RAD(0), RAD(0)), 1 / Animation_Speed)
3363
        until ATTACK == false
3364
    end))
3365
    repeat
3366
        repeat Swait() until HOLD == true
3367
            local DIST = (RootPart.Position - Mouse.Hit.p).Magnitude
3368
            if DIST > 65 then
3369
                DIST = 65
3370
            end
3371
            local RAY,RAYPOS = Raycast(RootPart.Position, (CF(RootPart.Position, Mouse.Hit.p)).lookVector, DIST, workspace)
3372
            local HITFLOOR,HITPOS,NORMAL = Raycast(RAYPOS+VT(0,1,0), (CF(RAYPOS, RAYPOS + VT(0, -1, 0))).lookVector, 25*SIZE, Character)   
3373
            if HITFLOOR ~= nil then
3374
                table.insert(SPOTS,CF(HITPOS,HITPOS+NORMAL) * ANGLES(RAD(90), RAD(0), RAD(0)))
3375
            end
3376
        repeat Swait() until HOLD == false
3377
    until #SPOTS == 5
3378
    SELECTING = false
3379
    for i = 1, #SPOTS do
3380
        if SPOTS[i] ~= nil then
3381
            local POS = SPOTS[i]
3382
            coroutine.resume(coroutine.create(function()
3383
                local MISSILE = IT("Model",Effects)
3384
                MISSILE.Name = "Missile"
3385
                local BASEPART = CreatePart(3, MISSILE, "Neon", 0, 1, "Alder", "Part", VT(2,2,2))
3386
                MakeForm(BASEPART,"Cyl")
3387
                MISSILE.PrimaryPart = BASEPART
3388
                BASEPART.CFrame = POS*CF(0,-30*3,0)
3389
                local HEAD = CreatePart(3, MISSILE, "Neon", 0, 1, "Alder", "Part", VT(2,4,2))
3390
                MakeForm(HEAD,"Ball")
3391
                HEAD.CFrame = BASEPART.CFrame*CF(0,-1,0)
3392
                local TAIL = CreatePart(3, MISSILE, "Neon", 0, 1, "Alder", "Part", VT(2.5,0.1,2.5))
3393
                MakeForm(TAIL,"Cyl")
3394
                TAIL.CFrame = BASEPART.CFrame*CF(0,-1,0)
3395
                for i = 1, 10 do
3396
                    Swait()
3397
                    for _, c in pairs(MISSILE:GetChildren()) do
3398
                        if c.ClassName == "Part" then
3399
                            c.Transparency = c.Transparency - 1/10
3400
                        end
3401
                    end
3402
                end
3403
                for i = 1, 15*1.5 do
3404
                    Swait()
3405
                    MISSILE:SetPrimaryPartCFrame(BASEPART.CFrame*CF(0,1.35*3,0))
3406
                end
3407
                ApplyAoE(BASEPART.CFrame.p,20,35,45,75,false)
3408
                MISSILE:remove()
3409
            end))
3410
        end
3411
    end
3412
    wait(0.6)
3413
    ATTACK = false
3414
    Rooted = false
3415
end
3416
3417
function Shot2()
3418
	ATTACK = true
3419
	Rooted = false
3420
	for i=0, 0.2, 0.05 / Animation_Speed do
3421
		Swait()
3422
		turnto(Mouse.Hit.p)
3423
		RootJoint.C0 = Clerp(RootJoint.C0,ROOTC0 * CF(0, 0, 0) * ANGLES(RAD(0), RAD(0), RAD(90)), 0.5 / Animation_Speed)
3424
		Neck.C0 = Clerp(Neck.C0, NECKC0 * CF(0, 0, 0) * ANGLES(RAD(0), RAD(0), RAD(-90)), 0.5 / Animation_Speed)
3425
		RightShoulder.C0 = Clerp(RightShoulder.C0, CF(1.5, 0.5, 0) * ANGLES(RAD(90), RAD(0), RAD(90)) * RIGHTSHOULDERC0, 0.5 / Animation_Speed)
3426
		LeftShoulder.C0 = Clerp(LeftShoulder.C0, CF(-1.5, 0.6, 0) * ANGLES(RAD(-45), RAD(0), RAD(45)) * LEFTSHOULDERC0, 0.5 / Animation_Speed)
3427
		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)
3428
		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)
3429
	end
3430
	repeat
3431
		for i=0, 0.2, 0.05 / Animation_Speed do
3432
			Swait()
3433
			turnto(Mouse.Hit.p)
3434
			RootJoint.C0 = Clerp(RootJoint.C0,ROOTC0 * CF(0, 0, 0) * ANGLES(RAD(0), RAD(0), RAD(90)), 0.5 / Animation_Speed)
3435
			Neck.C0 = Clerp(Neck.C0, NECKC0 * CF(0, 0, 0) * ANGLES(RAD(0), RAD(0), RAD(-90)), 0.5 / Animation_Speed)
3436
			RightShoulder.C0 = Clerp(RightShoulder.C0, CF(1.5, 0.5, 0) * ANGLES(RAD(90), RAD(0), RAD(90)) * RIGHTSHOULDERC0, 0.5 / Animation_Speed)
3437
			LeftShoulder.C0 = Clerp(LeftShoulder.C0, CF(-1.5, 0.6, 0) * ANGLES(RAD(-45), RAD(0), RAD(45)) * LEFTSHOULDERC0, 0.5 / Animation_Speed)
3438
			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)
3439
			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)
3440
		end
3441
		local HIT,POS = CastProperRay(Hole.Position, Mouse.Hit.p, 1000, Character)
3442
		SpawnTrail(Hole.Position,POS)
3443
		if HIT ~= nil then
3444
			if HIT.Parent ~= workspace and HIT.Parent.ClassName ~= "Folder" then
3445
				Kill(HIT.Parent)
3446
			end
3447
		end
3448
	Humanoid.CameraOffset = VT(MRANDOM(-5,5)/2.5,MRANDOM(-5,5)/2.5,MRANDOM(-5,5)/2.5)/30
3449
		for i=0, 0.2, 0.05 / Animation_Speed do
3450
			Swait()
3451
			RootJoint.C0 = Clerp(RootJoint.C0,ROOTC0 * CF(0, 0, 0) * ANGLES(RAD(0), RAD(0), RAD(90)), 0.5 / Animation_Speed)
3452
			Neck.C0 = Clerp(Neck.C0, NECKC0 * CF(0, 0, 0) * ANGLES(RAD(0), RAD(0), RAD(-90)), 0.25 / Animation_Speed)
3453
			RightShoulder.C0 = Clerp(RightShoulder.C0, CF(1.5, 0.5, 0) * ANGLES(RAD(90), RAD(15), RAD(90)) * RIGHTSHOULDERC0, 0.5 / Animation_Speed)
3454
			LeftShoulder.C0 = Clerp(LeftShoulder.C0, CF(-1.5, 0.6, 0) * ANGLES(RAD(-45), RAD(0), RAD(45)) * LEFTSHOULDERC0, 0.5 / Animation_Speed)
3455
			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)
3456
			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)
3457
		end
3458
	until KEYHOLD == false
3459
	ATTACK = false
3460
	Rooted = false
3461
end
3462
3463
function AttackTemplate()
3464
	ATTACK = true
3465
	Rooted = false
3466
	for i=0, 1, 0.1 / Animation_Speed do
3467
		Swait()
3468
		RootJoint.C0 = Clerp(RootJoint.C0, ROOTC0 * CF(0, 0, 0) * ANGLES(RAD(0), RAD(0), RAD(90)), 0.5 / Animation_Speed)
3469
		Neck.C0 = Clerp(Neck.C0, NECKC0 * CF(0, 0, 0) * ANGLES(RAD(0), RAD(0), RAD(-90)), 0.5 / Animation_Speed)
3470
		RightShoulder.C0 = Clerp(RightShoulder.C0, CF(1.5, 0.5, 0) * ANGLES(RAD(90), RAD(0), RAD(90)) * RIGHTSHOULDERC0, 0.5 / Animation_Speed)
3471
		LeftShoulder.C0 = Clerp(LeftShoulder.C0, CF(-1.5, 0.6, 0) * ANGLES(RAD(-45), RAD(0), RAD(45)) * LEFTSHOULDERC0, 0.5 / Animation_Speed)
3472
		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)
3473
		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)
3474
	end
3475
	ATTACK = false
3476
	Rooted = false
3477
end
3478
3479
function Finisher()
3480
	local TARGET = Mouse.Target
3481
	if TARGET ~= nil then
3482
		if TARGET.Parent:FindFirstChildOfClass("Humanoid") then
3483
			local HUM = TARGET.Parent:FindFirstChildOfClass("Humanoid")
3484
			local ROOT = TARGET.Parent:FindFirstChild("HumanoidRootPart") or TARGET.Parent:FindFirstChild("Torso") or TARGET.Parent:FindFirstChild("UpperTorso")
3485
			if ROOT and HUM.Health > 0 then
3486
				local FOE = Mouse.Target.Parent
3487
				ATTACK = true
3488
				Rooted = true
3489
				RootPart.CFrame = ROOT.CFrame*CF(-1.35,0,4)
3490
				ROOT.Anchored = true
3491
				CreateSound(670796769, Torso, 9999, 0.6, false)
3492
				CreateSound(159882598, Torso, 5, 0.9, false)
3493
				for i=0, 0.4, 0.1 / Animation_Speed do
3494
					Swait()
3495
					RootJoint.C0 = Clerp(RootJoint.C0,ROOTC0 * CF(0, 0, 0) * ANGLES(RAD(0), RAD(0), RAD(0)), 1 / Animation_Speed)
3496
					Neck.C0 = Clerp(Neck.C0, NECKC0 * CF(0, 0, 0 + ((1) - 1)) * ANGLES(RAD(0), RAD(0), RAD(0)), 1 / Animation_Speed)
3497
					RightShoulder.C0 = Clerp(RightShoulder.C0, CF(1.5, 0.5, 0) * ANGLES(RAD(80), RAD(0), RAD(0)) * RIGHTSHOULDERC0, 1 / Animation_Speed)
3498
					LeftShoulder.C0 = Clerp(LeftShoulder.C0, CF(-1.5, 0.5, 0) * ANGLES(RAD(0), RAD(0), RAD(0)) * LEFTSHOULDERC0, 1 / Animation_Speed)
3499
					RightHip.C0 = Clerp(RightHip.C0, CF(1, -1, -0.01) * ANGLES(RAD(0), RAD(90), RAD(0)) * ANGLES(RAD(0), RAD(0), RAD(0)), 1 / Animation_Speed)
3500
					LeftHip.C0 = Clerp(LeftHip.C0, CF(-1, -1, -0.01) * ANGLES(RAD(0), RAD(-90), RAD(0)) * ANGLES(RAD(0), RAD(0), RAD(0)), 1 / Animation_Speed)
3501
				end
3502
				HUM.PlatformStand = true
3503
				ROOT.CFrame = ROOT.CFrame * CF(0,-2*ROOT.Size.Z,0) * ANGLES(RAD(-90), RAD(0), RAD(0))
3504
				coroutine.resume(coroutine.create(function()
3505
					Swait()
3506
					ROOT.Anchored = true
3507
				end))
3508
				RootPart.CFrame = RootPart.CFrame*CF(0,0,-0.6)
3509
				for i=0, 0.2, 0.1 / Animation_Speed do
3510
					Swait()
3511
					RootJoint.C0 = Clerp(RootJoint.C0,ROOTC0 * CF(0, 0, 0) * ANGLES(RAD(0), RAD(0), RAD(45)), 1 / Animation_Speed)
3512
					Neck.C0 = Clerp(Neck.C0, NECKC0 * CF(0, 0, 0 + ((1) - 1)) * ANGLES(RAD(0), RAD(0), RAD(-45)), 1 / Animation_Speed)
3513
					RightShoulder.C0 = Clerp(RightShoulder.C0, CF(1.5, 0.5, -0.5) * ANGLES(RAD(90), RAD(0), RAD(45)) * RIGHTSHOULDERC0, 1 / Animation_Speed)
3514
					LeftShoulder.C0 = Clerp(LeftShoulder.C0, CF(-1.5, 0.5, 0) * ANGLES(RAD(0), RAD(0), RAD(0)) * LEFTSHOULDERC0, 1 / Animation_Speed)
3515
					RightHip.C0 = Clerp(RightHip.C0, CF(1, -1, -0.01) * ANGLES(RAD(0), RAD(90), RAD(0)) * ANGLES(RAD(0), RAD(0), RAD(0)), 1 / Animation_Speed)
3516
					LeftHip.C0 = Clerp(LeftHip.C0, CF(-1, -1, -0.01) * ANGLES(RAD(0), RAD(-50), RAD(0)) * ANGLES(RAD(-1), RAD(0), RAD(0)), 1 / Animation_Speed)
3517
				end
3518
				for i=0, 0.2, 0.1 / Animation_Speed do
3519
					Swait()
3520
					RootJoint.C0 = Clerp(RootJoint.C0,ROOTC0 * CF(0, 0, 0) * ANGLES(RAD(0), RAD(0), RAD(15)), 1 / Animation_Speed)
3521
					Neck.C0 = Clerp(Neck.C0, NECKC0 * CF(0, 0, 0 + ((1) - 1)) * ANGLES(RAD(0), RAD(0), RAD(-15)), 1 / Animation_Speed)
3522
					RightShoulder.C0 = Clerp(RightShoulder.C0, CF(1.5, 0.5, 0) * ANGLES(RAD(0), RAD(0), RAD(90)) * RIGHTSHOULDERC0, 1 / Animation_Speed)
3523
					LeftShoulder.C0 = Clerp(LeftShoulder.C0, CF(-1.5, 0.5, 0) * ANGLES(RAD(0), RAD(0), RAD(0)) * LEFTSHOULDERC0, 1 / Animation_Speed)
3524
					RightHip.C0 = Clerp(RightHip.C0, CF(1, -1, -0.01) * ANGLES(RAD(0), RAD(75), RAD(0)) * ANGLES(RAD(0), RAD(0), RAD(0)), 1 / Animation_Speed)
3525
					LeftHip.C0 = Clerp(LeftHip.C0, CF(-1, -1, -0.01) * ANGLES(RAD(0), RAD(-90), RAD(0)) * ANGLES(RAD(0), RAD(0), RAD(0)), 1 / Animation_Speed)
3526
				end
3527
				local AMMO = 6
3528
				local FIRING = true
3529
				local SHOOTING = false
3530
				local TIMER = 70
3531
				CreateSound(147722227, GunPoint, 6, 1.3, false)
3532
				for i=0, 0.2, 0.1 / Animation_Speed do
3533
					Swait()
3534
					RootJoint.C0 = Clerp(RootJoint.C0,ROOTC0 * CF(0, 0, 0) * ANGLES(RAD(0), RAD(0), RAD(45)), 1 / Animation_Speed)
3535
					Neck.C0 = Clerp(Neck.C0, NECKC0 * CF(0, 0, 0 + ((1) - 1)) * ANGLES(RAD(0), RAD(0), RAD(-45)), 1 / Animation_Speed)
3536
					RightShoulder.C0 = Clerp(RightShoulder.C0, CF(1.5, 0.5, 0) * ANGLES(RAD(30), RAD(0), RAD(45)) * RIGHTSHOULDERC0, 1 / Animation_Speed)
3537
					LeftShoulder.C0 = Clerp(LeftShoulder.C0, CF(-1.5, 0.5, 0) * ANGLES(RAD(0), RAD(0), RAD(0)) * LEFTSHOULDERC0, 1 / Animation_Speed)
3538
					RightHip.C0 = Clerp(RightHip.C0, CF(1, -1, -0.01) * ANGLES(RAD(0), RAD(90), RAD(0)) * ANGLES(RAD(0), RAD(0), RAD(0)), 1 / Animation_Speed)
3539
					LeftHip.C0 = Clerp(LeftHip.C0, CF(-1, -1, -0.01) * ANGLES(RAD(0), RAD(-65), RAD(0)) * ANGLES(RAD(-1), RAD(0), RAD(0)), 1 / Animation_Speed)
3540
				end
3541
				for i = 1, 6 do
3542
					local GUNPOS = Hole.CFrame*CF(0, 0, 0).p
3543
					local DISTANCE = (FOE.Head.Position - GUNPOS).Magnitude
3544
					HUM.Health = HUM.Health/1.5
3545
					for i=0, 0.2, 0.1 / Animation_Speed do
3546
						Swait()
3547
					RootJoint.C0 = Clerp(RootJoint.C0,ROOTC0 * CF(0, 0, 0) * ANGLES(RAD(0), RAD(0), RAD(45)), 1 / Animation_Speed)
3548
					Neck.C0 = Clerp(Neck.C0, NECKC0 * CF(0, 0, 0 + ((1) - 1)) * ANGLES(RAD(0), RAD(0), RAD(-45)), 1 / Animation_Speed)
3549
					RightShoulder.C0 = Clerp(RightShoulder.C0, CF(1.5, 0.5, 0) * ANGLES(RAD(70), RAD(0), RAD(45)) * RIGHTSHOULDERC0, 1 / Animation_Speed)
3550
					LeftShoulder.C0 = Clerp(LeftShoulder.C0, CF(-1.5, 0.5, 0) * ANGLES(RAD(0), RAD(0), RAD(0)) * LEFTSHOULDERC0, 1 / Animation_Speed)
3551
					RightHip.C0 = Clerp(RightHip.C0, CF(1, -1, -0.01) * ANGLES(RAD(0), RAD(90), RAD(0)) * ANGLES(RAD(0), RAD(0), RAD(0)), 1 / Animation_Speed)
3552
					LeftHip.C0 = Clerp(LeftHip.C0, CF(-1, -1, -0.01) * ANGLES(RAD(0), RAD(-65), RAD(0)) * ANGLES(RAD(-1), RAD(0), RAD(0)), 1 / Animation_Speed)
3553
				end
3554
					for i=0, 0.2, 0.1 / Animation_Speed do
3555
						Swait()
3556
					RootJoint.C0 = Clerp(RootJoint.C0,ROOTC0 * CF(0, 0, 0) * ANGLES(RAD(0), RAD(0), RAD(45)), 1 / Animation_Speed)
3557
					Neck.C0 = Clerp(Neck.C0, NECKC0 * CF(0, 0, 0 + ((1) - 1)) * ANGLES(RAD(0), RAD(0), RAD(-45)), 1 / Animation_Speed)
3558
					RightShoulder.C0 = Clerp(RightShoulder.C0, CF(1.5, 0.5, 0) * ANGLES(RAD(30), RAD(0), RAD(45)) * RIGHTSHOULDERC0, 1 / Animation_Speed)
3559
					LeftShoulder.C0 = Clerp(LeftShoulder.C0, CF(-1.5, 0.5, 0) * ANGLES(RAD(0), RAD(0), RAD(0)) * LEFTSHOULDERC0, 1 / Animation_Speed)
3560
					RightHip.C0 = Clerp(RightHip.C0, CF(1, -1, -0.01) * ANGLES(RAD(0), RAD(90), RAD(0)) * ANGLES(RAD(0), RAD(0), RAD(0)), 1 / Animation_Speed)
3561
					LeftHip.C0 = Clerp(LeftHip.C0, CF(-1, -1, -0.01) * ANGLES(RAD(0), RAD(-65), RAD(0)) * ANGLES(RAD(-1), RAD(0), RAD(0)), 1 / Animation_Speed)
3562
					end
3563
				end
3564
				ApplyDamage(HUM,0,true)
3565
				FOE:BreakJoints()
3566
				ROOT.Anchored = false
3567
				for i=0, 0.3, 0.1 / Animation_Speed do
3568
					Swait()
3569
					RootJoint.C0 = Clerp(RootJoint.C0,ROOTC0 * CF(0, 0, 0) * ANGLES(RAD(0), RAD(0), RAD(0)), 1 / Animation_Speed)
3570
					Neck.C0 = Clerp(Neck.C0, NECKC0 * CF(0, 0, 0 + ((1) - 1)) * ANGLES(RAD(25), RAD(0), RAD(15)), 1 / Animation_Speed)
3571
					RightShoulder.C0 = Clerp(RightShoulder.C0, CF(1.5, 0.5, 0) * ANGLES(RAD(0), RAD(0), RAD(0)) * RIGHTSHOULDERC0, 1 / Animation_Speed)
3572
					LeftShoulder.C0 = Clerp(LeftShoulder.C0, CF(-1.525, 0.5, 0) * ANGLES(RAD(0), RAD(0), RAD(5)) * LEFTSHOULDERC0, 1 / Animation_Speed)
3573
					RightHip.C0 = Clerp(RightHip.C0, CF(1, -1, -0.01) * ANGLES(RAD(0), RAD(90), RAD(0)) * ANGLES(RAD(0), RAD(0), RAD(0)), 1 / Animation_Speed)
3574
					LeftHip.C0 = Clerp(LeftHip.C0, CF(-1, -1, -0.01) * ANGLES(RAD(0), RAD(-90), RAD(0)) * ANGLES(RAD(0), RAD(0), RAD(0)), 1 / Animation_Speed)
3575
				end
3576
				ATTACK = false
3577
				Rooted = false
3578
			end
3579
		end
3580
	end
3581
end
3582
3583
--//=================================\\
3584
--||	  ASSIGN THINGS TO KEYS
3585
--\\=================================//
3586
3587
function MouseDown(Mouse)
3588
	if ATTACK == false then
3589
	end
3590
end
3591
3592
function MouseUp(Mouse)
3593
HOLD = false
3594
end
3595
3596
function KeyDown(Key)
3597
	KEYHOLD = true
3598
     
3599
    if Key == "b" and ATTACK == false then
3600
		MagicMissiles()
3601
	end
3602
    
3603
    if Key == "z" and ATTACK == false then
3604
		Shot()
3605
	end
3606
3607
	if Key == "v" and ATTACK == false then
3608
		Shot2()
3609
	end
3610
3611
	if Key == "x" and ATTACK == false then
3612
                Finisher()
3613
	end
3614
3615
	if Key == "t" and ATTACK == false then
3616
               Taunt()
3617
	end
3618
3619
	if Key == "c" and ATTACK == false then
3620
                eh()
3621
	end
3622
end
3623
3624
local OVMID = 2114921530
3625
local OVMPIT = 1
3626
local OVMVOL = 1
3627
plr.Chatted:connect(function(message)
3628
if ATTACK == false then
3629
if message:sub(1,5) == "play/" then
3630
OVMID = message:sub(6)
3631
newThemeCust("rbxassetid://"..OVMID,0,OVMPIT,OVMVOL)
3632
elseif message:sub(1,6) == "pitch/" then
3633
OVMPIT = message:sub(7)
3634
newTheme("rbxassetid://"..OVMID,0,OVMPIT,OVMVOL)
3635
elseif message:sub(1,4) == "vol/" then
3636
OVMVOL = message:sub(5)
3637
newTheme("rbxassetid://"..OVMID,0,OVMPIT,OVMVOL)
3638
elseif message:sub(1,7) == "sr/" then
3639
chatfunc("Skipped to "..message:sub(8).." out of "..math.floor(kan.TimeLength).." seconds.",MAINRUINCOLOR.Color,"Inverted","Arcade",1)
3640
newThemeCust("rbxassetid://"..OVMID,message:sub(8),OVMPIT,OVMVOL)
3641
elseif message:sub(1,9) == "te/" then
3642
chatfunc("Current time pos: "..math.floor(kan.TimePosition).." out of "..math.floor(kan.TimeLength).." seconds.",MAINRUINCOLOR.Color,"Inverted","Arcade",1)
3643
end
3644
end
3645
end)
3646
3647
function KeyUp(Key)
3648
	KEYHOLD = false
3649
end
3650
3651
	Mouse.Button1Down:connect(function(NEWKEY)
3652
		MouseDown(NEWKEY)
3653
	end)
3654
	Mouse.Button1Up:connect(function(NEWKEY)
3655
		MouseUp(NEWKEY)
3656
	end)
3657
	Mouse.KeyDown:connect(function(NEWKEY)
3658
		KeyDown(NEWKEY)
3659
	end)
3660
	Mouse.KeyUp:connect(function(NEWKEY)
3661
		KeyUp(NEWKEY)
3662
	end)
3663
3664
--//=================================\\
3665
--\\=================================//
3666
3667
3668
function unanchor()
3669
	if UNANCHOR == true then
3670
		g = Character:GetChildren()
3671
		for i = 1, #g do
3672
			if g[i].ClassName == "Part" then
3673
				g[i].Anchored = false
3674
			end
3675
		end
3676
	end
3677
end
3678
3679
3680
--//=================================\\
3681
--||	WRAP THE WHOLE SCRIPT UP
3682
--\\=================================//
3683
3684
Humanoid.Changed:connect(function(Jump)
3685
	if Jump == "Jump" and (Disable_Jump == true) then
3686
		Humanoid.Jump = false
3687
	end
3688
end)
3689
3690
local FF = IT("ForceField",Character)
3691
FF.Visible = false
3692
INSTANT = false
3693
Speed = 20
3694
3695
while true do
3696
	Swait()
3697
	SINE = SINE + CHANGE
3698
		ANIMATE.Parent = nil
3699
		local IDLEANIMATION = Humanoid:LoadAnimation(ROBLOXIDLEANIMATION)
3700
		IDLEANIMATION:Play()
3701
		if TRANSFORMED == true then
3702
			tecks2.TextTransparency = 0
3703
			for _, c in pairs(Character:GetChildren()) do
3704
				if c.ClassName == "Part" and c.Name ~= "HumanoidRootPart" then
3705
					c.Anchored = false
3706
					c.Transparency = 0
3707
				end
3708
			end
3709
			for _, c in pairs(Weapon:GetChildren()) do
3710
				if c.ClassName == "Part" then
3711
					c.Transparency = 0
3712
				end
3713
			end
3714
			local TORSOVELOCITY = (RootPart.Velocity * VT(1, 0, 1)).magnitude
3715
			local TORSOVERTICALVELOCITY = RootPart.Velocity.y
3716
			local LV = Torso.CFrame:pointToObjectSpace(Torso.Velocity - Torso.Position)
3717
			local HITFLOOR = Raycast(RootPart.Position, (CF(RootPart.Position, RootPart.Position + VT(0, -1, 0))).lookVector, 4 * Player_Size, Character)
3718
			local WALKSPEEDVALUE = 6 / (Humanoid.WalkSpeed / 16)
3719
			if ATTACK == false and VALUE2 == false then
3720
                            end
3721
			if ANIM == "Walk" and TORSOVELOCITY > 1 then
3722
				RootJoint.C1 = Clerp(RootJoint.C1, ROOTC0 * CF(0, 0, -0.15 * COS(SINE / (WALKSPEEDVALUE / 2)) * Player_Size) * ANGLES(RAD(0), RAD(0) - RootPart.RotVelocity.Y / 75, RAD(0)), 2 * (Humanoid.WalkSpeed / 16) / Animation_Speed)
3723
				Neck.C1 = Clerp(Neck.C1, CF(0 * Player_Size, -0.5 * Player_Size, 0 * Player_Size) * ANGLES(RAD(-90), RAD(0), RAD(180)) * ANGLES(RAD(2.5 * SIN(SINE / (WALKSPEEDVALUE / 2))), RAD(0), RAD(0) - Head.RotVelocity.Y / 30), 0.2 * (Humanoid.WalkSpeed / 16) / Animation_Speed)
3724
				RightHip.C1 = Clerp(RightHip.C1, CF(0.5 * Player_Size, 0.875 * Player_Size - 0.125 * SIN(SINE / WALKSPEEDVALUE) * Player_Size, -0.125 * COS(SINE / WALKSPEEDVALUE) * Player_Size) * ANGLES(RAD(0), RAD(90), RAD(0)) * ANGLES(RAD(0) - RightLeg.RotVelocity.Y / 75, RAD(0), RAD(76 * COS(SINE / WALKSPEEDVALUE))), 0.2 * (Humanoid.WalkSpeed / 16) / Animation_Speed)
3725
				LeftHip.C1 = Clerp(LeftHip.C1, CF(-0.5 * Player_Size, 0.875 * Player_Size + 0.125 * SIN(SINE / WALKSPEEDVALUE) * Player_Size, 0.125 * COS(SINE / WALKSPEEDVALUE) * Player_Size) * ANGLES(RAD(0), RAD(-90), RAD(0)) * ANGLES(RAD(0) + LeftLeg.RotVelocity.Y / 75, RAD(0), RAD(76 * COS(SINE / WALKSPEEDVALUE))), 0.2 * (Humanoid.WalkSpeed / 16) / Animation_Speed)
3726
			elseif (ANIM ~= "Walk") or (TORSOVELOCITY < 1) then
3727
				RootJoint.C1 = Clerp(RootJoint.C1, ROOTC0 * CF(0, 0, 0) * ANGLES(RAD(0), RAD(0), RAD(0)), 0.2 / Animation_Speed)
3728
				Neck.C1 = Clerp(Neck.C1, CF(0 * Player_Size, -0.5 * Player_Size, 0 * Player_Size) * ANGLES(RAD(-90), RAD(0), RAD(180)) * ANGLES(RAD(0), RAD(0), RAD(0)), 0.2 / Animation_Speed)
3729
				RightHip.C1 = Clerp(RightHip.C1, CF(0.5 * Player_Size, 1 * Player_Size, 0 * Player_Size) * ANGLES(RAD(0), RAD(90), RAD(0)) * ANGLES(RAD(0), RAD(0), RAD(0)), 0.2 / Animation_Speed)
3730
				LeftHip.C1 = Clerp(LeftHip.C1, CF(-0.5 * Player_Size, 1 * Player_Size, 0 * Player_Size) * ANGLES(RAD(0), RAD(-90), RAD(0)) * ANGLES(RAD(0), RAD(0), RAD(0)), 0.2 / Animation_Speed)
3731
			end
3732
			if TORSOVERTICALVELOCITY > 1 and HITFLOOR == nil then
3733
				ANIM = "Jump"
3734
				if ATTACK == false then
3735
					RootJoint.C0 = Clerp(RootJoint.C0, ROOTC0 * CF(0, 0, 0) * ANGLES(RAD(0), RAD(0), RAD(0)), 0.2 / Animation_Speed)
3736
					Neck.C0 = Clerp(Neck.C0, NECKC0 * CF(0, 0 * Player_Size, 0 + ((1) - 1)) * ANGLES(RAD(-20), RAD(0), RAD(0)), 0.2 / Animation_Speed)
3737
					RightShoulder.C0 = Clerp(RightShoulder.C0, CF(1.5, 0.5, 0) * ANGLES(RAD(-40), RAD(0), RAD(20)) * RIGHTSHOULDERC0, 0.2 / Animation_Speed)
3738
					LeftShoulder.C0 = Clerp(LeftShoulder.C0, CF(-1.5, 0.5, 0) * ANGLES(RAD(-40), RAD(0), RAD(-20)) * LEFTSHOULDERC0, 0.2 / Animation_Speed)
3739
					RightHip.C0 = Clerp(RightHip.C0, CF(1, -1, -0.3) * ANGLES(RAD(0), RAD(90), RAD(0)) * ANGLES(RAD(-5), RAD(0), RAD(-20)), 0.2 / Animation_Speed)
3740
					LeftHip.C0 = Clerp(LeftHip.C0, CF(-1, -1, -0.3) * ANGLES(RAD(0), RAD(-90), RAD(0)) * ANGLES(RAD(-5), RAD(0), RAD(20)), 0.2 / Animation_Speed)
3741
			       end
3742
			elseif TORSOVERTICALVELOCITY < -1 and HITFLOOR == nil then
3743
				ANIM = "Fall"
3744
				if ATTACK == false then
3745
					RootJoint.C0 = Clerp(RootJoint.C0, ROOTC0 * CF(0, 0, 0 ) * ANGLES(RAD(0), RAD(0), RAD(0)), 0.2 / Animation_Speed)
3746
					Neck.C0 = Clerp(Neck.C0, NECKC0 * CF(0, 0 , 0 + ((1) - 1)) * ANGLES(RAD(20), RAD(0), RAD(0)), 0.2 / Animation_Speed)
3747
					RightShoulder.C0 = Clerp(RightShoulder.C0, CF(1.5, 0.5, 0) * ANGLES(RAD(0), RAD(0), RAD(60)) * RIGHTSHOULDERC0, 0.2 / Animation_Speed)
3748
					LeftShoulder.C0 = Clerp(LeftShoulder.C0, CF(-1.5, 0.5, 0) * ANGLES(RAD(0), RAD(0), RAD(-60)) * LEFTSHOULDERC0, 0.2 / Animation_Speed)
3749
					RightHip.C0 = Clerp(RightHip.C0, CF(1, -1, 0) * ANGLES(RAD(0), RAD(90), RAD(0)) * ANGLES(RAD(0), RAD(0), RAD(20)), 0.2 / Animation_Speed)
3750
					LeftHip.C0 = Clerp(LeftHip.C0, CF(-1, -1, 0) * ANGLES(RAD(0), RAD(-90), RAD(0)) * ANGLES(RAD(0), RAD(0), RAD(10)), 0.2 / Animation_Speed)
3751
				end
3752
			elseif TORSOVELOCITY < 1 and HITFLOOR ~= nil then
3753
				ANIM = "Idle"
3754
				if ATTACK == false then
3755
			Neck.C0 = Clerp(Neck.C0, NECKC0 * CF(0, 0, 0 + ((1) - 1)) * ANGLES(RAD(25 + MRANDOM(-5,5) - 4 * COS(SINE / 12)), RAD(MRANDOM(-5,5)), RAD(15)), 1 / Animation_Speed)
3756
			if MRANDOM(1,7) == 1 then
3757
				Neck.C0 = Clerp(Neck.C0, NECKC0 * CF(0, 0, 0 + ((1) - 1)) * ANGLES(RAD(0 + MRANDOM(-25,25) - 4 * COS(SINE / 12)), RAD(MRANDOM(-25,25)), RAD(0)), 1.5 / Animation_Speed)
3758
			end		
3759
		RootJoint.C0 = Clerp(RootJoint.C0, ROOTC0 * CF(0, 0, 0 + 0.05 * COS(SINE / 12)) * ANGLES(RAD(0), RAD(0), RAD(0)), 0.25 / Animation_Speed)
3760
		RightShoulder.C0 = Clerp(RightShoulder.C0, CF(1.5, 0.5, 0) * ANGLES(RAD(180), RAD(0), RAD(0)) * ANGLES(RAD(0), RAD(45), RAD(0)) * RIGHTSHOULDERC0, 0.25 / Animation_Speed)
3761
		LeftShoulder.C0 = Clerp(LeftShoulder.C0, CF(-1.5, 0.6, 0) * ANGLES(RAD(-45), RAD(0), RAD(45)) * LEFTSHOULDERC0, 0.25 / Animation_Speed)
3762
		RightHip.C0 = Clerp(RightHip.C0, CF(1, -1 - 0.05 * COS(SINE / 12), -0.01) * ANGLES(RAD(0), RAD(90), RAD(0)) * ANGLES(RAD(-8), RAD(0), RAD(0)), 0.25 / Animation_Speed)
3763
		LeftHip.C0 = Clerp(LeftHip.C0, CF(-1, -1 - 0.05 * COS(SINE / 12), -0.01) * ANGLES(RAD(0), RAD(-90), RAD(0)) * ANGLES(RAD(-8), RAD(0), RAD(0)), 0.25 / Animation_Speed)
3764
				end
3765
			elseif TORSOVELOCITY > 1 and HITFLOOR ~= nil then
3766
				ANIM = "Walk"
3767
				if ATTACK == false then
3768
					RootJoint.C0 = Clerp(RootJoint.C0,ROOTC0 * CF(0, 0, -0.1) * ANGLES(RAD(5), RAD(0), RAD(0)), 0.15 / Animation_Speed)
3769
			Neck.C0 = Clerp(Neck.C0, NECKC0 * CF(0, 0, 0 + ((1) - 1)) * ANGLES(RAD(25 + MRANDOM(-5,5) - 4 * COS(SINE / 12)), RAD(MRANDOM(-5,5)), RAD(15)), 1 / Animation_Speed)
3770
			if MRANDOM(1,7) == 1 then
3771
				Neck.C0 = Clerp(Neck.C0, NECKC0 * CF(0, 0, 0 + ((1) - 1)) * ANGLES(RAD(0 + MRANDOM(-25,25) - 4 * COS(SINE / 12)), RAD(MRANDOM(-25,25)), RAD(0)), 1.5 / Animation_Speed)
3772
			end
3773
					RightShoulder.C0 = Clerp(RightShoulder.C0, CF(1.5, 0.35, 0) * ANGLES(RAD(0), RAD(180), RAD(180)) * RIGHTSHOULDERC0, 0.15 / Animation_Speed)
3774
					LeftShoulder.C0 = Clerp(LeftShoulder.C0, CF(-1.5, 0.5, 0) * ANGLES(RAD(-60 * COS(SINE / WALKSPEEDVALUE)), RAD(0), RAD(-5)) * LEFTSHOULDERC0, 0.35 / Animation_Speed)
3775
					RightHip.C0 = Clerp(RightHip.C0, CF(1 , -1 - 0.15 * COS(SINE / WALKSPEEDVALUE*2), -0.2+ 0.2 * COS(SINE / WALKSPEEDVALUE)) * ANGLES(RAD(0), RAD(90), RAD(0)) * ANGLES(RAD(0), RAD(0), RAD(-15)), 2 / Animation_Speed)
3776
					LeftHip.C0 = Clerp(LeftHip.C0, CF(-1, -1 - 0.15 * COS(SINE / WALKSPEEDVALUE*2), -0.2+ -0.2 * COS(SINE / WALKSPEEDVALUE)) * ANGLES(RAD(0), RAD(-90), RAD(0)) * ANGLES(RAD(0), RAD(0), RAD(15)), 2 / Animation_Speed)
3777
				end
3778
			end
3779
		end
3780
	--end
3781
	Humanoid.DisplayDistanceType = "None"
3782
	unanchor()
3783
	Humanoid.MaxHealth = "inf"
3784
	Humanoid.Health = "inf"
3785
	if Rooted == false then
3786
		Disable_Jump = false
3787
		Humanoid.WalkSpeed = Speed
3788
	elseif Rooted == true then
3789
		Disable_Jump = true
3790
		Humanoid.WalkSpeed = 0
3791
	end
3792
	if Head:FindFirstChild("face") then
3793
		Head.face.Texture = "rbxassetid://403870689"
3794
	end
3795
	for _, c in pairs(Character:GetChildren()) do
3796
		if (c.ClassName == "Shirt" or c.ClassName == "Pants") and c.Name ~= "Cloth" then
3797
			c:remove()
3798
		end
3799
			if c:FindFirstChildOfClass("ParticleEmitter") then
3800
				c:FindFirstChildOfClass("ParticleEmitter"):remove()
3801
			end
3802
	end
3803
	local MATHS = {"0","1"}
3804
	Humanoid.Name = MATHS[MRANDOM(1,#MATHS)]..MATHS[MRANDOM(1,#MATHS)]..MATHS[MRANDOM(1,#MATHS)]..MATHS[MRANDOM(1,#MATHS)]..MATHS[MRANDOM(1,#MATHS)]..MATHS[MRANDOM(1,#MATHS)]..MATHS[MRANDOM(1,#MATHS)]..MATHS[MRANDOM(1,#MATHS)]..MATHS[MRANDOM(1,#MATHS)]..MATHS[MRANDOM(1,#MATHS)]..MATHS[MRANDOM(1,#MATHS)]..MATHS[MRANDOM(1,#MATHS)]..MATHS[MRANDOM(1,#MATHS)]..MATHS[MRANDOM(1,#MATHS)]..MATHS[MRANDOM(1,#MATHS)]..MATHS[MRANDOM(1,#MATHS)]..MATHS[MRANDOM(1,#MATHS)]..MATHS[MRANDOM(1,#MATHS)]
3805
	Humanoid.PlatformStand = false
3806
	if INTRO == false and INSTANT == false then
3807
		INTRO = true
3808
		coroutine.resume(coroutine.create(function()
3809
			sick:Play()
3810
			Intro()
3811
		end))
3812
	end
3813
	if INSTANT == true then
3814
		if TRANSFORMED == false then
3815
			sick.TimePosition = 60
3816
			sick:Play()
3817
		end
3818
		TRANSFORMED = true
3819
	end
3820
	script.Parent = PlayerGui
3821
	Character.Parent = workspace
3822
	Humanoid.Parent = Character
3823
end
3824
--//=================================\\
3825
--\\=================================//
3826
3827
3828
3829
3830
3831
--//====================================================\\--
3832
--||			  		 END OF SCRIPT
3833
--\\====================================================//--