View difference between Paste ID: KiECyjH9 and KY6kb3ms
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://561833161"
143+
kan.SoundId = "rbxassetid://303535614"
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("Pastel light blue")
761+
local halocolor = BrickColor.new("Gold")
762-
local halocolor2 = BrickColor.new("Cool yellow")
762+
local halocolor2 = BrickColor.new("Really black")
763-
local starcolor = BrickColor.new("Bright yellow")
763+
local starcolor = BrickColor.new("Really black")
764-
local lunacolor = BrickColor.new("Navy blue")
764+
local lunacolor = BrickColor.new("Gold")
765-
local lunacolor2 = BrickColor.new("Bright blue")
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
776
777
local extrawingmod1 = Instance.new("Model",char)
778
local extrawingmod2 = Instance.new("Model",char)
779
780
function CreateParta(parent,transparency,reflectance,material,brickcolor)
781
local p = Instance.new("Part")
782
p.TopSurface = 0
783
p.BottomSurface = 0
784
p.Parent = parent
785
p.Size = Vector3.new(0.1,0.1,0.1)
786
p.Transparency = transparency
787
p.Reflectance = reflectance
788
p.CanCollide = false
789
p.Locked = true
790
p.BrickColor = brickcolor
791
p.Material = material
792
return p
793
end
794
795
function CreateMesh(parent,meshtype,x1,y1,z1)
796
local mesh = Instance.new("SpecialMesh",parent)
797
mesh.MeshType = meshtype
798
mesh.Scale = Vector3.new(x1*10,y1*10,z1*10)
799
return mesh
800
end
801
802
function CreateSpecialMesh(parent,meshid,x1,y1,z1)
803
local mesh = Instance.new("SpecialMesh",parent)
804
mesh.MeshType = "FileMesh"
805
mesh.MeshId = meshid
806
mesh.Scale = Vector3.new(x1,y1,z1)
807
return mesh
808
end
809
810
811
function CreateSpecialGlowMesh(parent,meshid,x1,y1,z1)
812
local mesh = Instance.new("SpecialMesh",parent)
813
mesh.MeshType = "FileMesh"
814
mesh.MeshId = meshid
815
mesh.TextureId = "http://www.roblox.com/asset/?id=269748808"
816
mesh.Scale = Vector3.new(x1,y1,z1)
817
mesh.VertexColor = Vector3.new(parent.BrickColor.r, parent.BrickColor.g, parent.BrickColor.b)
818
return mesh
819
end
820
821
function CreateWeld(parent,part0,part1,C1X,C1Y,C1Z,C1Xa,C1Ya,C1Za,C0X,C0Y,C0Z,C0Xa,C0Ya,C0Za)
822
local weld = Instance.new("Weld")
823
weld.Parent = parent
824
weld.Part0 = part0
825
weld.Part1 = part1
826
weld.C1 = CFrame.new(C1X,C1Y,C1Z)*CFrame.Angles(C1Xa,C1Ya,C1Za)
827
weld.C0 = CFrame.new(C0X,C0Y,C0Z)*CFrame.Angles(C0Xa,C0Ya,C0Za)
828
return weld
829
end
830
831
832
--------------
833
--------------
834
local sorb = CreateParta(m,1,1,"SmoothPlastic",BrickColor.random())
835
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))
836
local sorb2 = CreateParta(m,1,1,"SmoothPlastic",BrickColor.random())
837
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))
838
839
local handlex = CreateParta(mw2,1,1,"Neon",maincolor)
840
CreateMesh(handle,"Brick",0,0,0)
841
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))
842
local valuaring = 10
843
for i = 0, 49 do
844
	valuaring = valuaring + 10
845
rn = CreateParta(mw2,0,0,"Neon",halocolor)
846
CreateMesh(rn,"Brick",0.25,0.1,0.1)
847
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))
848
end
849
850
handlex = CreateParta(mw2,1,1,"Neon",maincolor)
851
CreateMesh(handle,"Brick",0,0,0)
852
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))
853
local valuaring = 10
854
for i = 0, 49 do
855
	valuaring = valuaring + 10
856
rn = CreateParta(extrawingmod1,0,0,"Neon",halocolor)
857
CreateMesh(rn,"Brick",0.5,0.2,0.2)
858
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))
859
end
860
861
862
local handle = CreateParta(m,1,1,"Neon",maincolor)
863
CreateMesh(handle,"Brick",0.5,0.5,0.5)
864
local handleweld = CreateWeld(handle,tors,handle,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))
865
866
--- Left wing.
867
868
local lwing1 = CreateParta(m,1,1,"Neon",maincolor)
869
CreateMesh(handle,"Brick",0.5,0.5,0.5)
870
local lwing1weld = CreateWeld(lwing1,handle,lwing1,3,0,0,math.rad(5),math.rad(0),math.rad(12.5),0,0,0,math.rad(0),math.rad(0),math.rad(0))
871
872
wed = CreateParta(mw1,0,0,"Neon",halocolor)
873
CreateMesh(wed,"Wedge",0.05,0.5,0.5)
874
CreateWeld(wed,lwing1,wed,0,0,0.25,math.rad(0),math.rad(90),math.rad(0),0,0,0,math.rad(0),math.rad(0),math.rad(0))
875
wed = CreateParta(mw1,0,0,"Neon",halocolor)
876
CreateMesh(wed,"Wedge",0.05,0.5,0.5)
877
CreateWeld(wed,lwing1,wed,0,0,0.25,math.rad(0),math.rad(-90),math.rad(0),0,0,0,math.rad(0),math.rad(0),math.rad(0))
878
A0 = Instance.new('Attachment',wed)
879
A0.Position = vt(0,0.25,0.25)
880
wed = CreateParta(mw1,0,0,"Neon",halocolor)
881
CreateMesh(wed,"Wedge",0.05,0.5,3)
882
CreateWeld(wed,lwing1,wed,0,-0.25,1.75,math.rad(0),math.rad(90),math.rad(90),0,0,0,math.rad(0),math.rad(0),math.rad(0))
883
A1 = Instance.new('Attachment',wed)
884
A1.Position = vt(0,-0.25,-2)
885
wed = CreateParta(mw1,0,0,"Neon",halocolor)
886
CreateMesh(wed,"Wedge",0.05,3,0.5)
887
CreateWeld(wed,lwing1,wed,0,-1.75,0.25,math.rad(90),math.rad(90),math.rad(90),0,0,0,math.rad(0),math.rad(0),math.rad(0))
888
889
tl1 = Instance.new('Trail',wed)
890
tl1.Attachment0 = A1
891
tl1.Attachment1 = A0
892
tl1.Texture = "rbxassetid://2108945559"
893
tl1.LightEmission = 1
894
tl1.Transparency = NumberSequence.new({NumberSequenceKeypoint.new(0, 0),NumberSequenceKeypoint.new(1, 1)})
895-
tl1.Color = ColorSequence.new(BrickColor.new('Really blue').Color)
895+
tl1.Color = ColorSequence.new(BrickColor.new('Really black').Color)
896
tl1.Lifetime = 0.6
897
898
899
local lwing2 = CreateParta(m,1,1,"Neon",maincolor)
900
CreateMesh(handle,"Brick",0.5,0.5,0.5)
901
local lwing2weld = CreateWeld(lwing2,handle,lwing2,4,1,0,math.rad(10),math.rad(0),math.rad(25),0,0,0,math.rad(0),math.rad(0),math.rad(0))
902
903
wed = CreateParta(mw1,0,0,"Neon",halocolor)
904
CreateMesh(wed,"Wedge",0.05,0.5,0.5)
905
CreateWeld(wed,lwing2,wed,0,0,0.25,math.rad(0),math.rad(90),math.rad(0),0,0,0,math.rad(0),math.rad(0),math.rad(0))
906
wed = CreateParta(mw1,0,0,"Neon",halocolor)
907
CreateMesh(wed,"Wedge",0.05,0.5,0.5)
908
CreateWeld(wed,lwing2,wed,0,0,0.25,math.rad(0),math.rad(-90),math.rad(0),0,0,0,math.rad(0),math.rad(0),math.rad(0))
909
A0 = Instance.new('Attachment',wed)
910
A0.Position = vt(0,0.25,0.25)
911
wed = CreateParta(mw1,0,0,"Neon",halocolor)
912
CreateMesh(wed,"Wedge",0.05,0.5,3)
913
CreateWeld(wed,lwing2,wed,0,-0.25,1.75,math.rad(0),math.rad(90),math.rad(90),0,0,0,math.rad(0),math.rad(0),math.rad(0))
914
A1 = Instance.new('Attachment',wed)
915
A1.Position = vt(0,-0.25,-2)
916
wed = CreateParta(mw1,0,0,"Neon",halocolor)
917
CreateMesh(wed,"Wedge",0.05,3,0.5)
918
CreateWeld(wed,lwing2,wed,0,-1.75,0.25,math.rad(90),math.rad(90),math.rad(90),0,0,0,math.rad(0),math.rad(0),math.rad(0))
919
920
tl2 = Instance.new('Trail',wed)
921
tl2.Attachment0 = A1
922
tl2.Attachment1 = A0
923
tl2.Texture = "rbxassetid://2108945559"
924
tl2.LightEmission = 1
925
tl2.Transparency = NumberSequence.new({NumberSequenceKeypoint.new(0, 0),NumberSequenceKeypoint.new(1, 1)})
926-
tl2.Color = ColorSequence.new(BrickColor.new('Really blue').Color)
926+
tl2.Color = ColorSequence.new(BrickColor.new('Really black').Color)
927
tl2.Lifetime = 0.6
928
929
local lwing3 = CreateParta(m,1,1,"Neon",maincolor)
930
CreateMesh(handle,"Brick",0.5,0.5,0.5)
931
local lwing3weld = CreateWeld(lwing3,handle,lwing3,4.75,2,0,math.rad(15),math.rad(0),math.rad(37.5),0,0,0,math.rad(0),math.rad(0),math.rad(0))
932
933
wed = CreateParta(mw1,0,0,"Neon",halocolor)
934
CreateMesh(wed,"Wedge",0.05,0.5,0.5)
935
CreateWeld(wed,lwing3,wed,0,0,0.25,math.rad(0),math.rad(90),math.rad(0),0,0,0,math.rad(0),math.rad(0),math.rad(0))
936
wed = CreateParta(mw1,0,0,"Neon",halocolor)
937
CreateMesh(wed,"Wedge",0.05,0.5,0.5)
938
CreateWeld(wed,lwing3,wed,0,0,0.25,math.rad(0),math.rad(-90),math.rad(0),0,0,0,math.rad(0),math.rad(0),math.rad(0))
939
A0 = Instance.new('Attachment',wed)
940
A0.Position = vt(0,0.25,0.25)
941
wed = CreateParta(mw1,0,0,"Neon",halocolor)
942
CreateMesh(wed,"Wedge",0.05,0.5,3)
943
CreateWeld(wed,lwing3,wed,0,-0.25,1.75,math.rad(0),math.rad(90),math.rad(90),0,0,0,math.rad(0),math.rad(0),math.rad(0))
944
A1 = Instance.new('Attachment',wed)
945
A1.Position = vt(0,-0.25,-2)
946
wed = CreateParta(mw1,0,0,"Neon",halocolor)
947
CreateMesh(wed,"Wedge",0.05,3,0.5)
948
CreateWeld(wed,lwing3,wed,0,-1.75,0.25,math.rad(90),math.rad(90),math.rad(90),0,0,0,math.rad(0),math.rad(0),math.rad(0))
949
950
tl3 = Instance.new('Trail',wed)
951
tl3.Attachment0 = A1
952
tl3.Attachment1 = A0
953
tl3.Texture = "rbxassetid://2108945559"
954
tl3.LightEmission = 1
955
tl3.Transparency = NumberSequence.new({NumberSequenceKeypoint.new(0, 0),NumberSequenceKeypoint.new(1, 1)})
956-
tl3.Color = ColorSequence.new(BrickColor.new('Really blue').Color)
956+
tl3.Color = ColorSequence.new(BrickColor.new('Really black').Color)
957
tl3.Lifetime = 0.6
958
959
tl1.Enabled = false
960
tl2.Enabled = false
961
tl3.Enabled = false
962
local lwing4 = CreateParta(m,1,1,"Neon",maincolor)
963
CreateMesh(handle,"Brick",0.5,0.5,0.5)
964
local lwing4weld = CreateWeld(lwing4,handle,lwing4,5.75,3,0,math.rad(20),math.rad(0),math.rad(50),0,0,0,math.rad(0),math.rad(0),math.rad(0))
965
966
wed = CreateParta(extrawingmod1,0,0,"Neon",halocolor)
967
CreateMesh(wed,"Wedge",0.05,0.5,0.5)
968
CreateWeld(wed,lwing4,wed,0,0,0.25,math.rad(0),math.rad(90),math.rad(0),0,0,0,math.rad(0),math.rad(0),math.rad(0))
969
wed = CreateParta(extrawingmod1,0,0,"Neon",halocolor)
970
CreateMesh(wed,"Wedge",0.05,0.5,0.5)
971
CreateWeld(wed,lwing4,wed,0,0,0.25,math.rad(0),math.rad(-90),math.rad(0),0,0,0,math.rad(0),math.rad(0),math.rad(0))
972
wed = CreateParta(extrawingmod1,0,0,"Neon",halocolor)
973
CreateMesh(wed,"Wedge",0.05,0.5,3)
974
CreateWeld(wed,lwing4,wed,0,-0.25,1.75,math.rad(0),math.rad(90),math.rad(90),0,0,0,math.rad(0),math.rad(0),math.rad(0))
975
wed = CreateParta(extrawingmod1,0,0,"Neon",halocolor)
976
CreateMesh(wed,"Wedge",0.05,3,0.5)
977
CreateWeld(wed,lwing4,wed,0,-1.75,0.25,math.rad(90),math.rad(90),math.rad(90),0,0,0,math.rad(0),math.rad(0),math.rad(0))
978
979
local lwing5 = CreateParta(m,1,1,"Neon",maincolor)
980
CreateMesh(handle,"Brick",0.5,0.5,0.5)
981
local lwing5weld = CreateWeld(lwing5,handle,lwing5,6.75,4,0,math.rad(25),math.rad(0),math.rad(62.5),0,0,0,math.rad(0),math.rad(0),math.rad(0))
982
983
wed = CreateParta(extrawingmod1,0,0,"Neon",halocolor)
984
CreateMesh(wed,"Wedge",0.05,0.5,0.5)
985
CreateWeld(wed,lwing5,wed,0,0,0.25,math.rad(0),math.rad(90),math.rad(0),0,0,0,math.rad(0),math.rad(0),math.rad(0))
986
wed = CreateParta(extrawingmod1,0,0,"Neon",halocolor)
987
CreateMesh(wed,"Wedge",0.05,0.5,0.5)
988
CreateWeld(wed,lwing5,wed,0,0,0.25,math.rad(0),math.rad(-90),math.rad(0),0,0,0,math.rad(0),math.rad(0),math.rad(0))
989
wed = CreateParta(extrawingmod1,0,0,"Neon",halocolor)
990
CreateMesh(wed,"Wedge",0.05,0.5,3)
991
CreateWeld(wed,lwing5,wed,0,-0.25,1.75,math.rad(0),math.rad(90),math.rad(90),0,0,0,math.rad(0),math.rad(0),math.rad(0))
992
wed = CreateParta(extrawingmod1,0,0,"Neon",halocolor)
993
CreateMesh(wed,"Wedge",0.05,3,0.5)
994
CreateWeld(wed,lwing5,wed,0,-1.75,0.25,math.rad(90),math.rad(90),math.rad(90),0,0,0,math.rad(0),math.rad(0),math.rad(0))
995
996
local lwing6 = CreateParta(m,1,1,"Neon",maincolor)
997
CreateMesh(handle,"Brick",0.5,0.5,0.5)
998
local lwing6weld = CreateWeld(lwing6,handle,lwing6,7.75,5,0,math.rad(30),math.rad(0),math.rad(75),0,0,0,math.rad(0),math.rad(0),math.rad(0))
999
1000
wed = CreateParta(extrawingmod1,0,0,"Neon",halocolor)
1001
CreateMesh(wed,"Wedge",0.05,0.5,0.5)
1002
CreateWeld(wed,lwing6,wed,0,0,0.25,math.rad(0),math.rad(90),math.rad(0),0,0,0,math.rad(0),math.rad(0),math.rad(0))
1003
wed = CreateParta(extrawingmod1,0,0,"Neon",halocolor)
1004
CreateMesh(wed,"Wedge",0.05,0.5,0.5)
1005
CreateWeld(wed,lwing6,wed,0,0,0.25,math.rad(0),math.rad(-90),math.rad(0),0,0,0,math.rad(0),math.rad(0),math.rad(0))
1006
wed = CreateParta(extrawingmod1,0,0,"Neon",halocolor)
1007
CreateMesh(wed,"Wedge",0.05,0.5,3)
1008
CreateWeld(wed,lwing6,wed,0,-0.25,1.75,math.rad(0),math.rad(90),math.rad(90),0,0,0,math.rad(0),math.rad(0),math.rad(0))
1009
wed = CreateParta(extrawingmod1,0,0,"Neon",halocolor)
1010
CreateMesh(wed,"Wedge",0.05,3,0.5)
1011
CreateWeld(wed,lwing6,wed,0,-1.75,0.25,math.rad(90),math.rad(90),math.rad(90),0,0,0,math.rad(0),math.rad(0),math.rad(0))
1012
1013
-- Right wing.
1014
1015
local rwing1 = CreateParta(m,1,1,"Neon",maincolor)
1016
CreateMesh(handle,"Brick",0.5,0.5,0.5)
1017
local rwing1weld = CreateWeld(rwing1,handle,rwing1,-3,0,0,math.rad(5),math.rad(0),math.rad(-12.5),0,0,0,math.rad(0),math.rad(0),math.rad(0))
1018
1019
wed = CreateParta(mw2,0,0,"Neon",halocolor)
1020
CreateMesh(wed,"Wedge",0.05,0.5,0.5)
1021
CreateWeld(wed,rwing1,wed,0,0,0.25,math.rad(0),math.rad(90),math.rad(0),0,0,0,math.rad(0),math.rad(0),math.rad(0))
1022
A0 = Instance.new('Attachment',wed)
1023
A0.Position = vt(0,0.25,0.25)
1024
wed = CreateParta(mw2,0,0,"Neon",halocolor)
1025
CreateMesh(wed,"Wedge",0.05,0.5,0.5)
1026
CreateWeld(wed,rwing1,wed,0,0,0.25,math.rad(0),math.rad(-90),math.rad(0),0,0,0,math.rad(0),math.rad(0),math.rad(0))
1027
wed = CreateParta(mw2,0,0,"Neon",halocolor)
1028
CreateMesh(wed,"Wedge",0.05,0.5,3)
1029
CreateWeld(wed,rwing1,wed,0,-0.25,1.75,math.rad(0),math.rad(90),math.rad(90),0,0,0,math.rad(0),math.rad(0),math.rad(0))
1030
wed = CreateParta(mw2,0,0,"Neon",halocolor)
1031
CreateMesh(wed,"Wedge",0.05,3,0.5)
1032
CreateWeld(wed,rwing1,wed,0,-1.75,0.25,math.rad(90),math.rad(90),math.rad(90),0,0,0,math.rad(0),math.rad(0),math.rad(0))
1033
A1 = Instance.new('Attachment',wed)
1034
A1.Position = vt(0,2,0.25)
1035
1036
tr1 = Instance.new('Trail',wed)
1037
tr1.Attachment0 = A1
1038
tr1.Attachment1 = A0
1039
tr1.Texture = "rbxassetid://2108945559"
1040
tr1.LightEmission = 1
1041
tr1.Transparency = NumberSequence.new({NumberSequenceKeypoint.new(0, 0),NumberSequenceKeypoint.new(1, 1)})
1042-
tr1.Color = ColorSequence.new(BrickColor.new('Really blue').Color)
1042+
tr1.Color = ColorSequence.new(BrickColor.new('Really black').Color)
1043
tr1.Lifetime = 0.6
1044
1045
local rwing2 = CreateParta(m,1,1,"Neon",maincolor)
1046
CreateMesh(handle,"Brick",0.5,0.5,0.5)
1047
local rwing2weld = CreateWeld(rwing2,handle,rwing2,-4,1,0,math.rad(10),math.rad(0),math.rad(-25),0,0,0,math.rad(0),math.rad(0),math.rad(0))
1048
1049
wed = CreateParta(mw2,0,0,"Neon",halocolor)
1050
CreateMesh(wed,"Wedge",0.05,0.5,0.5)
1051
CreateWeld(wed,rwing2,wed,0,0,0.25,math.rad(0),math.rad(90),math.rad(0),0,0,0,math.rad(0),math.rad(0),math.rad(0))
1052
A0 = Instance.new('Attachment',wed)
1053
A0.Position = vt(0,0.25,0.25)
1054
wed = CreateParta(mw2,0,0,"Neon",halocolor)
1055
CreateMesh(wed,"Wedge",0.05,0.5,0.5)
1056
CreateWeld(wed,rwing2,wed,0,0,0.25,math.rad(0),math.rad(-90),math.rad(0),0,0,0,math.rad(0),math.rad(0),math.rad(0))
1057
wed = CreateParta(mw2,0,0,"Neon",halocolor)
1058
CreateMesh(wed,"Wedge",0.05,0.5,3)
1059
CreateWeld(wed,rwing2,wed,0,-0.25,1.75,math.rad(0),math.rad(90),math.rad(90),0,0,0,math.rad(0),math.rad(0),math.rad(0))
1060
wed = CreateParta(mw2,0,0,"Neon",halocolor)
1061
CreateMesh(wed,"Wedge",0.05,3,0.5)
1062
CreateWeld(wed,rwing2,wed,0,-1.75,0.25,math.rad(90),math.rad(90),math.rad(90),0,0,0,math.rad(0),math.rad(0),math.rad(0))
1063
A1 = Instance.new('Attachment',wed)
1064
A1.Position = vt(0,2,0.25)
1065
1066
tr2 = Instance.new('Trail',wed)
1067
tr2.Attachment0 = A1
1068
tr2.Attachment1 = A0
1069
tr2.Texture = "rbxassetid://2108945559"
1070
tr2.LightEmission = 1
1071
tr2.Transparency = NumberSequence.new({NumberSequenceKeypoint.new(0, 0),NumberSequenceKeypoint.new(1, 1)})
1072-
tr2.Color = ColorSequence.new(BrickColor.new('Really blue').Color)
1072+
tr2.Color = ColorSequence.new(BrickColor.new('Really black').Color)
1073
tr2.Lifetime = 0.6
1074
1075
local rwing3 = CreateParta(m,1,1,"Neon",maincolor)
1076
CreateMesh(handle,"Brick",0.5,0.5,0.5)
1077
local rwing3weld = CreateWeld(rwing3,handle,rwing3,-4.75,2,0,math.rad(15),math.rad(0),math.rad(-37.5),0,0,0,math.rad(0),math.rad(0),math.rad(0))
1078
1079
wed = CreateParta(mw2,0,0,"Neon",halocolor)
1080
CreateMesh(wed,"Wedge",0.05,0.5,0.5)
1081
CreateWeld(wed,rwing3,wed,0,0,0.25,math.rad(0),math.rad(90),math.rad(0),0,0,0,math.rad(0),math.rad(0),math.rad(0))
1082
A0 = Instance.new('Attachment',wed)
1083
A0.Position = vt(0,0.25,0.25)
1084
wed = CreateParta(mw2,0,0,"Neon",halocolor)
1085
CreateMesh(wed,"Wedge",0.05,0.5,0.5)
1086
CreateWeld(wed,rwing3,wed,0,0,0.25,math.rad(0),math.rad(-90),math.rad(0),0,0,0,math.rad(0),math.rad(0),math.rad(0))
1087
wed = CreateParta(mw2,0,0,"Neon",halocolor)
1088
CreateMesh(wed,"Wedge",0.05,0.5,3)
1089
CreateWeld(wed,rwing3,wed,0,-0.25,1.75,math.rad(0),math.rad(90),math.rad(90),0,0,0,math.rad(0),math.rad(0),math.rad(0))
1090
wed = CreateParta(mw2,0,0,"Neon",halocolor)
1091
CreateMesh(wed,"Wedge",0.05,3,0.5)
1092
CreateWeld(wed,rwing3,wed,0,-1.75,0.25,math.rad(90),math.rad(90),math.rad(90),0,0,0,math.rad(0),math.rad(0),math.rad(0))
1093
A1 = Instance.new('Attachment',wed)
1094
A1.Position = vt(0,2,0.25)
1095
1096
tr3 = Instance.new('Trail',wed)
1097
tr3.Attachment0 = A1
1098
tr3.Attachment1 = A0
1099
tr3.Texture = "rbxassetid://2108945559"
1100
tr3.LightEmission = 1
1101
tr3.Transparency = NumberSequence.new({NumberSequenceKeypoint.new(0, 0),NumberSequenceKeypoint.new(1, 1)})
1102-
tr3.Color = ColorSequence.new(BrickColor.new('Really blue').Color)
1102+
tr3.Color = ColorSequence.new(BrickColor.new('Really black').Color)
1103
tr3.Lifetime = 0.6
1104
1105
1106
local rwing4 = CreateParta(m,1,1,"Neon",maincolor)
1107
CreateMesh(handle,"Brick",0.5,0.5,0.5)
1108
local rwing4weld = CreateWeld(rwing4,handle,rwing4,-5.75,3,0,math.rad(20),math.rad(0),math.rad(-50),0,0,0,math.rad(0),math.rad(0),math.rad(0))
1109
1110
wed = CreateParta(extrawingmod2,0,0,"Neon",halocolor)
1111
CreateMesh(wed,"Wedge",0.05,0.5,0.5)
1112
CreateWeld(wed,rwing4,wed,0,0,0.25,math.rad(0),math.rad(90),math.rad(0),0,0,0,math.rad(0),math.rad(0),math.rad(0))
1113
wed = CreateParta(extrawingmod2,0,0,"Neon",halocolor)
1114
CreateMesh(wed,"Wedge",0.05,0.5,0.5)
1115
CreateWeld(wed,rwing4,wed,0,0,0.25,math.rad(0),math.rad(-90),math.rad(0),0,0,0,math.rad(0),math.rad(0),math.rad(0))
1116
wed = CreateParta(extrawingmod2,0,0,"Neon",halocolor)
1117
CreateMesh(wed,"Wedge",0.05,0.5,3)
1118
CreateWeld(wed,rwing4,wed,0,-0.25,1.75,math.rad(0),math.rad(90),math.rad(90),0,0,0,math.rad(0),math.rad(0),math.rad(0))
1119
wed = CreateParta(extrawingmod2,0,0,"Neon",halocolor)
1120
CreateMesh(wed,"Wedge",0.05,3,0.5)
1121
CreateWeld(wed,rwing4,wed,0,-1.75,0.25,math.rad(90),math.rad(90),math.rad(90),0,0,0,math.rad(0),math.rad(0),math.rad(0))
1122
1123
local rwing5 = CreateParta(m,1,1,"Neon",maincolor)
1124
CreateMesh(handle,"Brick",0.5,0.5,0.5)
1125
local rwing5weld = CreateWeld(rwing5,handle,rwing5,-6.75,4,0,math.rad(25),math.rad(0),math.rad(-62.5),0,0,0,math.rad(0),math.rad(0),math.rad(0))
1126
1127
wed = CreateParta(extrawingmod2,0,0,"Neon",halocolor)
1128
CreateMesh(wed,"Wedge",0.05,0.5,0.5)
1129
CreateWeld(wed,rwing5,wed,0,0,0.25,math.rad(0),math.rad(90),math.rad(0),0,0,0,math.rad(0),math.rad(0),math.rad(0))
1130
wed = CreateParta(extrawingmod2,0,0,"Neon",halocolor)
1131
CreateMesh(wed,"Wedge",0.05,0.5,0.5)
1132
CreateWeld(wed,rwing5,wed,0,0,0.25,math.rad(0),math.rad(-90),math.rad(0),0,0,0,math.rad(0),math.rad(0),math.rad(0))
1133
wed = CreateParta(extrawingmod2,0,0,"Neon",halocolor)
1134
CreateMesh(wed,"Wedge",0.05,0.5,3)
1135
CreateWeld(wed,rwing5,wed,0,-0.25,1.75,math.rad(0),math.rad(90),math.rad(90),0,0,0,math.rad(0),math.rad(0),math.rad(0))
1136
wed = CreateParta(extrawingmod2,0,0,"Neon",halocolor)
1137
CreateMesh(wed,"Wedge",0.05,3,0.5)
1138
CreateWeld(wed,rwing5,wed,0,-1.75,0.25,math.rad(90),math.rad(90),math.rad(90),0,0,0,math.rad(0),math.rad(0),math.rad(0))
1139
1140
local rwing6 = CreateParta(m,1,1,"Neon",maincolor)
1141
CreateMesh(handle,"Brick",0.5,0.5,0.5)
1142
local rwing6weld = CreateWeld(rwing6,handle,rwing6,-7.75,3,0,math.rad(30),math.rad(0),math.rad(-75),0,0,0,math.rad(0),math.rad(0),math.rad(0))
1143
1144
wed = CreateParta(extrawingmod2,0,0,"Neon",halocolor)
1145
CreateMesh(wed,"Wedge",0.05,0.5,0.5)
1146
CreateWeld(wed,rwing6,wed,0,0,0.25,math.rad(0),math.rad(90),math.rad(0),0,0,0,math.rad(0),math.rad(0),math.rad(0))
1147
wed = CreateParta(extrawingmod2,0,0,"Neon",halocolor)
1148
CreateMesh(wed,"Wedge",0.05,0.5,0.5)
1149
CreateWeld(wed,rwing6,wed,0,0,0.25,math.rad(0),math.rad(-90),math.rad(0),0,0,0,math.rad(0),math.rad(0),math.rad(0))
1150
wed = CreateParta(extrawingmod2,0,0,"Neon",halocolor)
1151
CreateMesh(wed,"Wedge",0.05,0.5,3)
1152
CreateWeld(wed,rwing6,wed,0,-0.25,1.75,math.rad(0),math.rad(90),math.rad(90),0,0,0,math.rad(0),math.rad(0),math.rad(0))
1153
wed = CreateParta(extrawingmod2,0,0,"Neon",halocolor)
1154
CreateMesh(wed,"Wedge",0.05,3,0.5)
1155
CreateWeld(wed,rwing6,wed,0,-1.75,0.25,math.rad(90),math.rad(90),math.rad(90),0,0,0,math.rad(0),math.rad(0),math.rad(0))
1156
1157
--HERES THE RING
1158
1159
1160
--[[ran = CreateParta(m2,0,0,"SmoothPlastic",wepcolor)
1161
CreateMesh(ran,"Wedge",1.02,1.02,1.02)
1162
CreateWeld(ran,larm,ran,0,0.15,0,math.rad(0),math.rad(90),math.rad(0),0,0,0,math.rad(0),math.rad(0),math.rad(0))
1163
ran = CreateParta(m,0,0,"SmoothPlastic",wepcolor)
1164
CreateMesh(ran,"Wedge",0.9,0.9,1.025)
1165
CreateWeld(ran,larm,ran,0,0.155,0,math.rad(0),math.rad(90),math.rad(0),0,0,0,math.rad(0),math.rad(0),math.rad(0))
1166
ran = CreateParta(m,0,0,"SmoothPlastic",wepcolor)
1167
CreateMesh(ran,"Wedge",1.025,0.9,0.9)
1168
CreateWeld(ran,larm,ran,0,0.155,-0.025,math.rad(0),math.rad(90),math.rad(0),0,0,0,math.rad(0),math.rad(0),math.rad(0))
1169
1170
1171
gan = CreateParta(m,0,0,"SmoothPlastic",wepcolor)
1172
CreateMesh(gan,"Brick",1.075,0.1,1.075)
1173
CreateWeld(gan,larm,gan,0,0.5,0,math.rad(0),math.rad(0),math.rad(0),0,0,0,math.rad(0),math.rad(0),math.rad(0))
1174
1175
gan = CreateParta(m,0,0,"SmoothPlastic",wepcolor)
1176
CreateMesh(gan,"Brick",1.075,0.1,1.075)
1177
CreateWeld(gan,larm,gan,0,0.75,0,math.rad(0),math.rad(0),math.rad(0),0,0,0,math.rad(0),math.rad(0),math.rad(0))
1178
1179
1180
1181
gan = CreateParta(m2,0,0,"Neon",halocolor2)
1182
CreateMesh(gan,"Brick",1.095,0.035,1.095)
1183
CreateWeld(gan,larm,gan,0,0.5,0,math.rad(0),math.rad(0),math.rad(0),0,0,0,math.rad(0),math.rad(0),math.rad(0))
1184
1185
gan = CreateParta(m2,0,0,"Neon",halocolor2)
1186
CreateMesh(gan,"Brick",1.095,0.035,1.095)
1187
CreateWeld(gan,larm,gan,0,0.75,0,math.rad(0),math.rad(0),math.rad(0),0,0,0,math.rad(0),math.rad(0),math.rad(0))
1188
1189
gane = CreateParta(m3,0,0,"SmoothPlastic",lunacolor2)
1190
CreateMesh(gane,"Brick",1.0625,0.2,1.0625)
1191
CreateWeld(gane,larm,gane,0,0.6,0,math.rad(0),math.rad(0),math.rad(0),0,0,0,math.rad(0),math.rad(0),math.rad(0))
1192
1193
star = CreateParta(m,0,0,"SmoothPlastic",wepcolor)
1194
CreateSpecialMesh(star,"http://www.roblox.com/asset/?id=45428961",2.5,2.5,2.5)
1195
CreateWeld(star,larm,star,0,0.475,0.6,math.rad(90),math.rad(90),math.rad(0),0,0,0,math.rad(0),math.rad(0),math.rad(0))
1196
starl = CreateParta(m3,0,0,"SmoothPlastic",starcolor)
1197
CreateSpecialMesh(starl,"http://www.roblox.com/asset/?id=45428961",1.95,2.55,1.95)
1198
CreateWeld(starl,larm,starl,0,0.475,0.6,math.rad(90),math.rad(90),math.rad(0),0,0,0,math.rad(0),math.rad(0),math.rad(0))]]--
1199
1200
--- second ring
1201
1202
1203
gan = CreateParta(m,0,0,"SmoothPlastic",wepcolor)
1204
CreateMesh(gan,"Brick",1.075,0.1,1.075)
1205
CreateWeld(gan,rarm,gan,0,0.5,0,math.rad(0),math.rad(0),math.rad(0),0,0,0,math.rad(0),math.rad(0),math.rad(0))
1206
1207
gan = CreateParta(m,0,0,"SmoothPlastic",wepcolor)
1208
CreateMesh(gan,"Brick",1.075,0.1,1.075)
1209
CreateWeld(gan,rarm,gan,0,0.75,0,math.rad(0),math.rad(0),math.rad(0),0,0,0,math.rad(0),math.rad(0),math.rad(0))
1210
1211
1212
1213
gan = CreateParta(m2,0,0,"Neon",halocolor2)
1214
CreateMesh(gan,"Brick",1.095,0.035,1.095)
1215
CreateWeld(gan,rarm,gan,0,0.5,0,math.rad(0),math.rad(0),math.rad(0),0,0,0,math.rad(0),math.rad(0),math.rad(0))
1216
1217
gan = CreateParta(m2,0,0,"Neon",halocolor2)
1218
CreateMesh(gan,"Brick",1.095,0.035,1.095)
1219
CreateWeld(gan,rarm,gan,0,0.75,0,math.rad(0),math.rad(0),math.rad(0),0,0,0,math.rad(0),math.rad(0),math.rad(0))
1220
1221
gane = CreateParta(m3,0,0,"SmoothPlastic",lunacolor2)
1222
CreateMesh(gane,"Brick",1.0625,0.2,1.0625)
1223
CreateWeld(gane,rarm,gane,0,0.6,0,math.rad(0),math.rad(0),math.rad(0),0,0,0,math.rad(0),math.rad(0),math.rad(0))
1224
1225
star = CreateParta(m,0,0,"SmoothPlastic",wepcolor)
1226
CreateSpecialMesh(star,"http://www.roblox.com/asset/?id=45428961",2.5,2.5,2.5)
1227
CreateWeld(star,rarm,star,0,-0.475,0.6,math.rad(90),math.rad(90),math.rad(0),0,0,0,math.rad(0),math.rad(0),math.rad(0))
1228
starl = CreateParta(m3,0,0,"SmoothPlastic",starcolor)
1229
CreateSpecialMesh(starl,"http://www.roblox.com/asset/?id=45428961",1.95,2.55,1.95)
1230
CreateWeld(starl,rarm,starl,0,-0.475,0.6,math.rad(90),math.rad(90),math.rad(0),0,0,0,math.rad(0),math.rad(0),math.rad(0))
1231
1232
1233
1234
for i, v in pairs(m:GetChildren()) do
1235
if v:IsA("Part") then
1236
v.BrickColor = BrickColor.new("Really black")
1237
v.Material = "Glass"
1238
end
1239
end
1240
for i, v in pairs(m2:GetChildren()) do
1241
if v:IsA("Part") then
1242
v.BrickColor = BrickColor.new("Crimson")
1243
v.Material = "Granite"
1244
end
1245
end
1246
for i, v in pairs(m3:GetChildren()) do
1247
if v:IsA("Part") then
1248-
v.BrickColor = BrickColor.new("Really blue")
1248+
1249
v.Material = "Neon"
1250
end
1251
end
1252
for i, v in pairs(mw2:GetChildren()) do
1253
if v:IsA("Part") then
1254-
v.BrickColor = BrickColor.new("Really blue")
1254+
1255
v.Material = "Neon"
1256
end
1257
end
1258
for i, v in pairs(mw1:GetChildren()) do
1259
if v:IsA("Part") then
1260
v.Transparency = 1
1261-
v.BrickColor = BrickColor.new("Really blue")
1261+
1262
v.Material = "Neon"
1263
end
1264
end
1265
for i, v in pairs(extrawingmod1:GetChildren()) do
1266
if v:IsA("Part") then
1267
v.Transparency = 1
1268
v.BrickColor = BrickColor.new("White")
1269
v.Material = "Neon"
1270
end
1271
end
1272
for i, v in pairs(extrawingmod2:GetChildren()) do
1273
if v:IsA("Part") then
1274
v.Transparency = 1
1275
v.BrickColor = BrickColor.new("White")
1276
v.Material = "Neon"
1277
end
1278
end
1279-
local MAINRUINCOLOR = BrickColor.new("Navy blue")
1279+
local MAINRUINCOLOR = BrickColor.new("Really black")
1280-
local SECONDRUINCOLOR  = BrickColor.new("Navy blue")
1280+
local SECONDRUINCOLOR  = BrickColor.new("Really black")
1281
local THIRDRUINCOLOR = BrickColor.new("Really black")
1282
1283
function RecolorThing(one,two,three,four,five,exonetran,exone,extwotran,extwo)
1284
for i, v in pairs(mw2:GetChildren()) do
1285
if v:IsA("Part") then
1286
v.BrickColor = one
1287
v.Material = "Neon"
1288
end
1289
end
1290
refec.Color = ColorSequence.new(one.Color)
1291
refec2.Color = ColorSequence.new(one.Color)
1292
refec3.Color = ColorSequence.new(one.Color)
1293
tr1.Color = ColorSequence.new(one.Color)
1294
tr2.Color = ColorSequence.new(one.Color)
1295
tr3.Color = ColorSequence.new(one.Color)
1296
imgl2.ImageColor3 = one.Color
1297
circl.ImageColor3 = two.Color
1298
techc.ImageColor3 = one.Color
1299
circl2.ImageColor3 = one.Color
1300
ned.TextColor3 = two.Color
1301
ned.TextStrokeColor3 = one.Color
1302
for i, v in pairs(mw1:GetChildren()) do
1303
if v:IsA("Part") then
1304
v.Transparency = 0
1305
v.BrickColor = two
1306
v.Material = "Neon"
1307
end
1308
end
1309
tl1.Color = ColorSequence.new(two.Color)
1310
tl2.Color = ColorSequence.new(two.Color)
1311
tl3.Color = ColorSequence.new(two.Color)
1312
for i, v in pairs(m:GetChildren()) do
1313
if v:IsA("Part") then
1314
v.BrickColor = three
1315
v.Material = "Ice"
1316
end
1317
end
1318
for i, v in pairs(m2:GetChildren()) do
1319
if v:IsA("Part") then
1320
v.BrickColor = four
1321
v.Material = "Ice"
1322
end
1323
end
1324
for i, v in pairs(m3:GetChildren()) do
1325
if v:IsA("Part") then
1326
v.BrickColor = five
1327
v.Material = "Neon"
1328
end
1329
end
1330
for i, v in pairs(extrawingmod1:GetChildren()) do
1331
if v:IsA("Part") then
1332
v.Transparency = exonetran
1333
v.BrickColor = exone
1334
v.Material = "Neon"
1335
end
1336
end
1337
for i, v in pairs(extrawingmod2:GetChildren()) do
1338
if v:IsA("Part") then
1339
v.Transparency = extwotran
1340
v.BrickColor = extwo
1341
v.Material = "Neon"
1342
end
1343
end
1344
end
1345
1346
function bosschatfunc(text,color,watval)
1347
for i,v in pairs(game:GetService("Players"):GetPlayers()) do
1348
coroutine.resume(coroutine.create(function()
1349
if v.PlayerGui:FindFirstChild("Dialog")~= nil then
1350
v.PlayerGui:FindFirstChild("Dialog"):destroy()
1351
end
1352
local scrg = Instance.new("ScreenGui",v.PlayerGui)
1353
scrg.Name = "Dialog"
1354
local txtlb = Instance.new("TextLabel",scrg)
1355
txtlb.Text = ""
1356
txtlb.Font = "Bodoni"
1357
txtlb.TextColor3 = Color3.new(0,0,0)
1358
txtlb.TextStrokeTransparency = 0
1359
txtlb.BackgroundTransparency = 0.75
1360
txtlb.BackgroundColor3 = Color3.new(0,0,0)
1361
txtlb.TextStrokeColor3 = color
1362
txtlb.TextScaled = true
1363
txtlb.Size = UDim2.new(1,0,0.25,0)
1364
txtlb.TextXAlignment = "Left"
1365
txtlb.Position = UDim2.new(0,0,0.75 + 1,0)
1366
local txtlb2 = Instance.new("TextLabel",scrg)
1367
txtlb2.Text = "Chaotic:"
1368
txtlb2.Font = "Arcade"
1369
txtlb2.TextColor3 = Color3.new(0,0,0)
1370
txtlb2.TextStrokeTransparency = 0
1371
txtlb2.BackgroundTransparency = 1
1372
txtlb2.TextStrokeColor3 = color
1373
txtlb2.TextSize = 40
1374
txtlb2.Size = UDim2.new(1,0,0.25,0)
1375
txtlb2.TextXAlignment = "Left"
1376
txtlb2.Position = UDim2.new(0,0,1,0)
1377
local fvalen = 0.55
1378
local fval = -0.49
1379
coroutine.resume(coroutine.create(function()
1380
while true do
1381
Swait()
1382
if MODE == "Sanity" then
1383
txtlb.Rotation = math.random(-1,1)
1384
txtlb2.Rotation = math.random(-1,1)
1385
txtlb.Position = txtlb.Position + UDim2.new(0,math.random(-1,1)/5,0,math.random(-1,1)/5)
1386
txtlb2.Position = txtlb2.Position + UDim2.new(0,math.random(-1,1)/5,0,math.random(-1,1)/5)
1387
txtlb.TextStrokeColor3 = BrickColor.random().Color
1388
txtlb2.TextStrokeColor3 = BrickColor.random().Color
1389
end
1390
end
1391
end))
1392
coroutine.resume(coroutine.create(function()
1393
while true do
1394
Swait()
1395
if scrg.Parent ~= nil then
1396
	fvalen = fvalen - 0.0001
1397
elseif scrg.Parent == nil then
1398
break
1399
end
1400
end
1401
end))
1402
local flol = 1.75
1403
local flil = 1.6
1404
coroutine.resume(coroutine.create(function()
1405
	for i = 0, 9 do
1406
		Swait()
1407
		fval = fval + 0.05
1408
		flol = flol - 0.1
1409
		flil = flil - 0.1
1410
		txtlb.Text = ""
1411
		txtlb.Position = UDim2.new(0,0,flol,0)
1412
		txtlb2.Position = UDim2.new(0,0,flil,0)
1413
	end
1414
	txtlb.Text = text
1415
wait(watval)
1416
local valinc = 0
1417
for i = 0, 99 do
1418
Swait()
1419
valinc = valinc + 0.0001
1420
flol = flol + valinc
1421
flil = flil + valinc
1422
txtlb.Rotation = txtlb.Rotation + valinc*20
1423
txtlb2.Rotation = txtlb2.Rotation - valinc*50
1424
txtlb.Position = UDim2.new(0,0,flol,0)
1425
txtlb2.Position = UDim2.new(0,0,flil,0)
1426
txtlb.TextStrokeTransparency = txtlb.TextStrokeTransparency + 0.01
1427
txtlb.TextTransparency = txtlb.TextTransparency + 0.01
1428
txtlb2.TextStrokeTransparency = txtlb2.TextStrokeTransparency + 0.01
1429
txtlb2.TextTransparency = txtlb2.TextTransparency + 0.01
1430
txtlb.BackgroundTransparency = txtlb.BackgroundTransparency + 0.0025
1431
end
1432
scrg:Destroy()
1433
end))
1434
end))
1435
end
1436
end
1437
1438
function BigBlack(text,color,watval)
1439
for i,v in pairs(game:GetService("Players"):GetPlayers()) do
1440
coroutine.resume(coroutine.create(function()
1441
if v.PlayerGui:FindFirstChild("Dialog")~= nil then
1442
v.PlayerGui:FindFirstChild("Dialog"):destroy()
1443
end
1444
local scrg = Instance.new("ScreenGui",v.PlayerGui)
1445
scrg.Name = "Dialog"
1446
local txtlb = Instance.new("TextLabel",scrg)
1447
txtlb.Text = ""
1448
txtlb.Font = "Bodoni"
1449
txtlb.TextColor3 = Color3.new(0,0,0)
1450
txtlb.TextStrokeTransparency = 1
1451
txtlb.BackgroundTransparency = 1
1452
txtlb.BackgroundColor3 = Color3.new(0,0,0)
1453
txtlb.TextStrokeColor3 = color
1454
txtlb.TextScaled = true
1455
txtlb.Size = UDim2.new(1,0,1,0)
1456
txtlb.TextXAlignment = "Center"
1457
txtlb.Position = UDim2.new(0,0,6.75 + 1,0)
1458
local txtlb2 = Instance.new("TextLabel",scrg)
1459
txtlb2.Text = "Chaotic:"
1460
txtlb2.Font = "Arcade"
1461
txtlb2.TextColor3 = Color3.new(0,0,0)
1462
txtlb2.TextStrokeTransparency = 0
1463
txtlb2.BackgroundTransparency = 1
1464
txtlb2.TextStrokeColor3 = color
1465
txtlb2.TextSize = 40
1466
txtlb2.Size = UDim2.new(1,0,0.25,0)
1467
txtlb2.TextXAlignment = "Left"
1468
txtlb2.Position = UDim2.new(0,0,1,0)
1469
local fvalen = 0.55
1470
local fval = -0.49
1471
coroutine.resume(coroutine.create(function()
1472
while true do
1473
Swait()
1474
if MODE == "Sanity" then
1475
txtlb.Rotation = math.random(-1,1)
1476
txtlb2.Rotation = math.random(-1,1)
1477
txtlb.Position = txtlb.Position + UDim2.new(0,math.random(-1,1)/5,0,math.random(-1,1)/5)
1478
txtlb2.Position = txtlb2.Position + UDim2.new(0,math.random(-1,1)/5,0,math.random(-1,1)/5)
1479
txtlb.TextStrokeColor3 = BrickColor.random().Color
1480
txtlb2.TextStrokeColor3 = BrickColor.random().Color
1481
end
1482
end
1483
end))
1484
coroutine.resume(coroutine.create(function()
1485
while true do
1486
Swait()
1487
if scrg.Parent ~= nil then
1488
	fvalen = fvalen - 0.0001
1489
elseif scrg.Parent == nil then
1490
break
1491
end
1492
end
1493
end))
1494
local flol = 1.05
1495
local flil = 0.75
1496
local flil2 = -0.2
1497
	coroutine.resume(coroutine.create(function()
1498
	for i = 1,string.len(text),1 do
1499
		wait()
1500
		text.Text = string.sub(text,1,i)
1501
	end
1502
	end))
1503
coroutine.resume(coroutine.create(function()
1504
	for i = 0, 1 do
1505
		fval = fval + 0.05
1506
		flol = flol - 0.1
1507
		flil2 = flil2 + 0.1
1508
		txtlb.Text = ""
1509
		txtlb.Position = UDim2.new(flil2,0,0,0)
1510
		txtlb.BackgroundTransparency = 1 - 0.1
1511
		txtlb2.Position = UDim2.new(flil2,0,0,0)
1512
	end
1513
	
1514
		for i = 0, 99 do
1515
txtlb.TextStrokeTransparency = txtlb.TextStrokeTransparency - 0.01
1516
txtlb.TextTransparency = txtlb.TextTransparency - 0.01
1517
txtlb2.TextStrokeTransparency = txtlb2.TextStrokeTransparency - 0.01
1518
txtlb2.TextTransparency = txtlb2.TextTransparency - 0.01
1519
txtlb.BackgroundTransparency = txtlb.BackgroundTransparency - 0.0025
1520
	end
1521
	
1522
	txtlb.Text = text
1523
wait(watval)
1524
local valinc = 0
1525
for i = 0, 99 do
1526
Swait()
1527
valinc = valinc + 0.0002
1528
flol = flol + valinc
1529
flil2 = flil2 + valinc
1530
txtlb.Rotation = txtlb.Rotation + valinc*15
1531
txtlb2.Rotation = txtlb2.Rotation - valinc*15
1532
txtlb.Position = UDim2.new(flil2,0,0,0)
1533
txtlb2.Position = UDim2.new(flil2,0,0,0)
1534
txtlb.TextStrokeTransparency = txtlb.TextStrokeTransparency + 0.01
1535
txtlb.TextTransparency = txtlb.TextTransparency + 0.01
1536
txtlb2.TextStrokeTransparency = txtlb2.TextStrokeTransparency + 0.01
1537
txtlb2.TextTransparency = txtlb2.TextTransparency + 0.01
1538
txtlb.BackgroundTransparency = txtlb.BackgroundTransparency + 0.0025
1539
end
1540
scrg:Destroy()
1541
end))
1542
end))
1543
end
1544
end
1545
------
1546
1547
1548
function RemoveOutlines(part)
1549
  part.TopSurface, part.BottomSurface, part.LeftSurface, part.RightSurface, part.FrontSurface, part.BackSurface = 10, 10, 10, 10, 10, 10
1550
end
1551
function CreatePart(Parent, Material, Reflectance, Transparency, BColor, Name, Size)
1552
  local Part = Create("Part")({
1553
    Parent = Parent,
1554
    Reflectance = Reflectance,
1555
    Transparency = Transparency,
1556
    CanCollide = false,
1557
    Locked = true,
1558
    BrickColor = BrickColor.new(tostring(BColor)),
1559
    Name = Name,
1560
    Size = Size,
1561
    Material = Material
1562
  })
1563
  Part.CustomPhysicalProperties = PhysicalProperties.new(0.001, 0.001, 0.001, 0.001, 0.001)
1564
  RemoveOutlines(Part)
1565
  return Part
1566
end
1567
function CreateMesha(Mesh, Part, MeshType, MeshId, OffSet, Scale)
1568
  local Msh = Create(Mesh)({
1569
    Parent = Part,
1570
    Offset = OffSet,
1571
    Scale = Scale
1572
  })
1573
  if Mesh == "SpecialMesh" then
1574
    Msh.MeshType = MeshType
1575
    Msh.MeshId = MeshId
1576
  end
1577
  return Msh
1578
end
1579
function CreateWeld(Parent, Part0, Part1, C0, C1)
1580
  local Weld = Create("Weld")({
1581
    Parent = Parent,
1582
    Part0 = Part0,
1583
    Part1 = Part1,
1584
    C0 = C0,
1585
    C1 = C1
1586
  })
1587
  return Weld
1588
end
1589
1590
1591
1592
Player = plr
1593
PlayerGui = Player.PlayerGui
1594
Cam = workspace.CurrentCamera
1595
Backpack = Player.Backpack
1596
Character = Player.Character
1597
Humanoid = Character.Humanoid
1598
RootPart = Character["HumanoidRootPart"]
1599
Torso = Character["Torso"]
1600
Head = Character["Head"]
1601
RightArm = Character["Right Arm"]
1602
LeftArm = Character["Left Arm"]
1603
RightLeg = Character["Right Leg"]
1604
LeftLeg = Character["Left Leg"]
1605
RootJoint = RootPart["RootJoint"]
1606
Neck = Torso["Neck"]
1607
RightShoulder = Torso["Right Shoulder"]
1608
LeftShoulder = Torso["Left Shoulder"]
1609
RightHip = Torso["Right Hip"]
1610
LeftHip = Torso["Left Hip"]
1611
local sick = Instance.new("Sound",Torso)
1612
sick.SoundId = "rbxassetid://1306847940"
1613
sick.Looped = true
1614
sick.Pitch = 1
1615
sick.Volume = 0
1616
sick.TimePosition = 0
1617
Character.Archivable = true
1618
Humanoid.DisplayDistanceType = "None"
1619
1620
local naeeym2 = Instance.new("BillboardGui",Character)
1621
naeeym2.AlwaysOnTop = true
1622
naeeym2.Size = UDim2.new(5,35,2,35)
1623
naeeym2.StudsOffset = Vector3.new(0,3,0)
1624
naeeym2.Adornee = Character.Head
1625
naeeym2.Name = "Name"
1626
local tecks2 = Instance.new("TextLabel",naeeym2)
1627
tecks2.BackgroundTransparency = 1
1628
tecks2.TextScaled = true
1629
tecks2.BorderSizePixel = 0
1630-
tecks2.Text = "Lunar"
1630+
tecks2.Text = "OLDER BANISH"
1631
tecks2.Font = "Antique"
1632
tecks2.TextSize = 30
1633
tecks2.TextTransparency = 1
1634
tecks2.TextStrokeTransparency = 1
1635-
tecks2.TextColor3 = Color3.new(0/255,0/255,255/255)
1635+
tecks2.TextColor3 = Color3.new(0/0,0/0,0/0)
1636
tecks2.Size = UDim2.new(1,0,0.5,0)
1637
tecks2.Parent = naeeym2
1638
1639
IT = Instance.new
1640
CF = CFrame.new
1641
VT = Vector3.new
1642
RAD = math.rad
1643
C3 = Color3.new
1644
UD2 = UDim2.new
1645
BRICKC = BrickColor.new
1646
ANGLES = CFrame.Angles
1647
EULER = CFrame.fromEulerAnglesXYZ
1648
COS = math.cos
1649
ACOS = math.acos
1650
SIN = math.sin
1651
ASIN = math.asin
1652
ABS = math.abs
1653
MRANDOM = math.random
1654
FLOOR = math.floor
1655
1656
--//=================================\\
1657
--|| 	      USEFUL VALUES
1658
--\\=================================//
1659
1660
Animation_Speed = 3
1661
local FORCERESET = false
1662
Frame_Speed = 1 / 60 -- (1 / 30) OR (1 / 60)
1663
local Speed = 16
1664
local ROOTC0 = CF(0, 0, 0) * ANGLES(RAD(-90), RAD(0), RAD(180))
1665
local NECKC0 = CF(0, 1, 0) * ANGLES(RAD(-90), RAD(0), RAD(180))
1666
local RIGHTSHOULDERC0 = CF(-0.5, 0, 0) * ANGLES(RAD(0), RAD(90), RAD(0))
1667
local LEFTSHOULDERC0 = CF(0.5, 0, 0) * ANGLES(RAD(0), RAD(-90), RAD(0))
1668
local DAMAGEMULTIPLIER = 1
1669
local ANIM = "Idle"
1670
local ATTACK = false
1671
local EQUIPPED = false
1672
local HOLD = false
1673
local COMBO = 1
1674
local Rooted = false
1675
local INTRO = false
1676
local Gun = IT("Model")
1677
Gun.Name = "Gun"
1678
local SINE = 0
1679
local KEYHOLD = false
1680
local CHANGE = 2 / Animation_Speed
1681
local WALKINGANIM = false
1682
local VALUE1 = false
1683
local VALUE2 = false
1684
local ROBLOXIDLEANIMATION = IT("Animation")
1685
ROBLOXIDLEANIMATION.Name = "Roblox Idle Animation"
1686
ROBLOXIDLEANIMATION.AnimationId = "http://www.roblox.com/asset/?id=180435571"
1687
--ROBLOXIDLEANIMATION.Parent = Humanoid
1688
local WEAPONGUI = IT("ScreenGui", PlayerGui)
1689
WEAPONGUI.Name = "BanishV3Gui"
1690
local Weapon = IT("Model")
1691
Weapon.Name = "Adds"
1692
local FaceGradient = IT("Folder", Character)
1693
FaceGradient.Name = "FaceGradient"
1694
local Effects = IT("Folder", Weapon)
1695
Effects.Name = "Effects"
1696
local ANIMATOR = Humanoid.Animator
1697
local ANIMATE = Character:FindFirstChild("Animate")
1698
local UNANCHOR = true
1699
local TOBANISH = {}
1700
script.Parent = PlayerGui
1701
1702
--//=================================\\
1703
--\\=================================//
1704
1705
1706
--//=================================\\
1707
--||		  CUSTOMIZATION
1708
--\\=================================//
1709
1710
Class_Name = "Sharpshooter"
1711
Weapon_Name = "Add-ons"
1712
1713
	Custom_Color_1 = BRICKC("Really black"); --1st color for the weapon.
1714
	Custom_Color_2 = BRICKC("Maroon"); --2nd color for the weapon.
1715
1716-
	Custom_Color_3 = BRICKC("Navy blue"); --Color for the abilities.
1716+
	Custom_Color_3 = BRICKC("Really black"); --Color for the abilities.
1717
	Custom_Color_4 = BRICKC("Institutional white"); --Color for the secondary bar.
1718
	Custom_Color_5 = BRICKC("Institutional white"); --Color for the mana bar.
1719
	Custom_Color_6 = BRICKC("Institutional white"); --Color for the health bar.
1720
	Custom_Color_7 = BRICKC("Institutional white"); --Color for the stun bar.
1721
1722
	Custom_Color_8 = BRICKC("Institutional white"); --Background for the mana bar.
1723
	Custom_Color_9 = BRICKC("Institutional white"); --Background for the secondary mana bar.
1724
	Custom_Color_10 = BRICKC("Institutional white"); --Background for the stun bar.
1725
	Custom_Color_11 = BRICKC("Institutional white"); --Background for the health bar.
1726
	Custom_Color_12 = BRICKC("Institutional white"); --Background for the abilities.
1727
1728
1729
Player_Size = 1 --Size of the player.
1730
Animation_Speed = 3
1731
Frame_Speed = 1 / 60 -- (1 / 30) OR (1 / 60)
1732
1733
local Speed = 16
1734
local Effects2 = {}
1735
1736
--//=================================\\
1737
--|| 	  END OF CUSTOMIZATION
1738
--\\=================================//
1739
1740
1741
--//=================================\\
1742
--|| SAZERENOS' ARTIFICIAL HEARTBEAT
1743
--\\=================================//
1744
1745
ArtificialHB = Instance.new("BindableEvent", script)
1746
ArtificialHB.Name = "ArtificialHB"
1747
1748
script:WaitForChild("ArtificialHB")
1749
1750
frame = Frame_Speed
1751
tf = 0
1752
allowframeloss = false
1753
tossremainder = false
1754
lastframe = tick()
1755
script.ArtificialHB:Fire()
1756
1757
game:GetService("RunService").Heartbeat:connect(function(s, p)
1758
	tf = tf + s
1759
	if tf >= frame then
1760
		if allowframeloss then
1761
			script.ArtificialHB:Fire()
1762
			lastframe = tick()
1763
		else
1764
			for i = 1, math.floor(tf / frame) do
1765
				script.ArtificialHB:Fire()
1766
			end
1767
		lastframe = tick()
1768
		end
1769
		if tossremainder then
1770
			tf = 0
1771
		else
1772
			tf = tf - frame * math.floor(tf / frame)
1773
		end
1774
	end
1775
end)
1776
1777
--//=================================\\
1778
--\\=================================//
1779
1780
--//=================================\\
1781
--|| 	      SOME FUNCTIONS
1782
--\\=================================//
1783
1784
function Clerp(a, b, t)
1785
	local qa = {QuaternionFromCFrame(a)}
1786
	local qb = {QuaternionFromCFrame(b)}
1787
	local ax, ay, az = a.x, a.y, a.z
1788
	local bx, by, bz = b.x, b.y, b.z
1789
	local _t = 1 - t
1790
	return QuaternionToCFrame(_t * ax + t * bx, _t * ay + t * by, _t * az + t * bz, QuaternionSlerp(qa, qb, t))
1791
end
1792
1793
function CreateFrame(PARENT, TRANSPARENCY, BORDERSIZEPIXEL, POSITION, SIZE, COLOR, BORDERCOLOR, NAME)
1794
	local frame = IT("Frame")
1795
	frame.BackgroundTransparency = TRANSPARENCY
1796
	frame.BorderSizePixel = BORDERSIZEPIXEL
1797
	frame.Position = POSITION
1798
	frame.Size = SIZE
1799
	frame.BackgroundColor3 = COLOR
1800
	frame.BorderColor3 = BORDERCOLOR
1801
	frame.Name = NAME
1802
	frame.Parent = PARENT
1803
	return frame
1804
end
1805
1806
function CreateLabel(PARENT, TEXT, TEXTCOLOR, TEXTFONTSIZE, TEXTFONT, TRANSPARENCY, BORDERSIZEPIXEL, STROKETRANSPARENCY, NAME)
1807
	local label = IT("TextLabel")
1808
	label.BackgroundTransparency = 1
1809
	label.Size = UD2(1, 0, 1, 0)
1810
	label.Position = UD2(0, 0, 0, 0)
1811
	label.TextColor3 = TEXTCOLOR
1812
	label.TextStrokeTransparency = STROKETRANSPARENCY
1813
	label.TextTransparency = TRANSPARENCY
1814
	label.FontSize = TEXTFONTSIZE
1815
	label.Font = TEXTFONT
1816
	label.BorderSizePixel = BORDERSIZEPIXEL
1817
	label.TextScaled = false
1818
	label.Text = TEXT
1819
	label.Name = NAME
1820
	label.Parent = PARENT
1821
	return label
1822
end
1823
1824
function CreateDebreeRing(FLOOR,POSITION,SIZE,BLOCKSIZE,SWAIT)
1825
	if FLOOR ~= nil then
1826
		coroutine.resume(coroutine.create(function()
1827
			local PART = CreatePart(3, Effects, "Plastic", 0, 1, "Pearl", "DebreeCenter", VT(0,0,0))
1828
			PART.CFrame = CF(POSITION)
1829
			for i = 1, 45 do
1830
				local RingPiece = CreatePart(3, Effects, "Plastic", 0, 0, "Pearl", "DebreePart", BLOCKSIZE)
1831
				RingPiece.Material = FLOOR.Material
1832
				RingPiece.Color = FLOOR.Color
1833
				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)))
1834
				Debris:AddItem(RingPiece,SWAIT)
1835
			end
1836
			PART:remove()
1837
		end))
1838
	end
1839
end
1840
1841
function CreateFlyingDebree(FLOOR,POSITION,AMOUNT,BLOCKSIZE,SWAIT,STRENGTH)
1842
	if FLOOR ~= nil then
1843
		for i = 1, AMOUNT do
1844
			local DEBREE = CreatePart(3, Effects, "Neon", FLOOR.Reflectance, FLOOR.Transparency, "Peal", "Debree", BLOCKSIZE, false)
1845
			DEBREE.Material = FLOOR.Material
1846
			DEBREE.Color = FLOOR.Color
1847
			DEBREE.CFrame = POSITION * ANGLES(RAD(MRANDOM(-360,360)),RAD(MRANDOM(-360,360)),RAD(MRANDOM(-360,360)))
1848
			DEBREE.Velocity = VT(MRANDOM(-STRENGTH,STRENGTH),MRANDOM(-STRENGTH,STRENGTH),MRANDOM(-STRENGTH,STRENGTH))
1849
			coroutine.resume(coroutine.create(function()
1850
				Swait(15)
1851
				DEBREE.Parent = workspace
1852
				DEBREE.CanCollide = true
1853
				Debris:AddItem(DEBREE,SWAIT)
1854
			end))
1855
		end
1856
	end
1857
end
1858
1859
function Raycast(POSITION, DIRECTION, RANGE, IGNOREDECENDANTS)
1860
	return workspace:FindPartOnRay(Ray.new(POSITION, DIRECTION.unit * RANGE), IGNOREDECENDANTS)
1861
end
1862
1863
function PositiveAngle(NUMBER)
1864
	if NUMBER >= 0 then
1865
		NUMBER = 0
1866
	end
1867
	return NUMBER
1868
end
1869
1870
function NegativeAngle(NUMBER)
1871
	if NUMBER <= 0 then
1872
		NUMBER = 0
1873
	end
1874
	return NUMBER
1875
end
1876
1877
function Swait(NUMBER)
1878
	if NUMBER == 0 or NUMBER == nil then
1879
		ArtificialHB.Event:wait()
1880
	else
1881
		for i = 1, NUMBER do
1882
			ArtificialHB.Event:wait()
1883
		end
1884
	end
1885
end
1886
1887
function CreateMesh(MESH, PARENT, MESHTYPE, MESHID, TEXTUREID, SCALE, OFFSET)
1888
	local NEWMESH = IT(MESH)
1889
	if MESH == "SpecialMesh" then
1890
		NEWMESH.MeshType = MESHTYPE
1891
		if MESHID ~= "nil" and MESHID ~= "" then
1892
			NEWMESH.MeshId = "http://www.roblox.com/asset/?id="..MESHID
1893
		end
1894
		if TEXTUREID ~= "nil" and TEXTUREID ~= "" then
1895
			NEWMESH.TextureId = "http://www.roblox.com/asset/?id="..TEXTUREID
1896
		end
1897
	end
1898
	NEWMESH.Offset = OFFSET or VT(0, 0, 0)
1899
	NEWMESH.Scale = SCALE
1900
	NEWMESH.Parent = PARENT
1901
	return NEWMESH
1902
end
1903
1904
function CreatePart(FORMFACTOR, PARENT, MATERIAL, REFLECTANCE, TRANSPARENCY, BRICKCOLOR, NAME, SIZE, ANCHOR)
1905
	local NEWPART = IT("Part")
1906
	NEWPART.formFactor = FORMFACTOR
1907
	NEWPART.Reflectance = REFLECTANCE
1908
	NEWPART.Transparency = TRANSPARENCY
1909
	NEWPART.CanCollide = false
1910
	NEWPART.Locked = true
1911
	NEWPART.Anchored = true
1912
	if ANCHOR == false then
1913
		NEWPART.Anchored = false
1914
	end
1915
	NEWPART.BrickColor = BRICKC(tostring(BRICKCOLOR))
1916
	NEWPART.Name = NAME
1917
	NEWPART.Size = SIZE
1918
	NEWPART.Position = Torso.Position
1919
	NEWPART.Material = MATERIAL
1920
	NEWPART:BreakJoints()
1921
	NEWPART.Parent = PARENT
1922
	return NEWPART
1923
end
1924
1925
	local function weldBetween(a, b)
1926
	    local weldd = Instance.new("ManualWeld")
1927
	    weldd.Part0 = a
1928
	    weldd.Part1 = b
1929
	    weldd.C0 = CFrame.new()
1930
	    weldd.C1 = b.CFrame:inverse() * a.CFrame
1931
	    weldd.Parent = a
1932
	    return weldd
1933
	end
1934
1935
1936
function QuaternionFromCFrame(cf)
1937
	local mx, my, mz, m00, m01, m02, m10, m11, m12, m20, m21, m22 = cf:components()
1938
	local trace = m00 + m11 + m22
1939
	if trace > 0 then 
1940
		local s = math.sqrt(1 + trace)
1941
		local recip = 0.5 / s
1942
		return (m21 - m12) * recip, (m02 - m20) * recip, (m10 - m01) * recip, s * 0.5
1943
	else
1944
		local i = 0
1945
		if m11 > m00 then
1946
			i = 1
1947
		end
1948
		if m22 > (i == 0 and m00 or m11) then
1949
			i = 2
1950
		end
1951
		if i == 0 then
1952
			local s = math.sqrt(m00 - m11 - m22 + 1)
1953
			local recip = 0.5 / s
1954
			return 0.5 * s, (m10 + m01) * recip, (m20 + m02) * recip, (m21 - m12) * recip
1955
		elseif i == 1 then
1956
			local s = math.sqrt(m11 - m22 - m00 + 1)
1957
			local recip = 0.5 / s
1958
			return (m01 + m10) * recip, 0.5 * s, (m21 + m12) * recip, (m02 - m20) * recip
1959
		elseif i == 2 then
1960
			local s = math.sqrt(m22 - m00 - m11 + 1)
1961
			local recip = 0.5 / s return (m02 + m20) * recip, (m12 + m21) * recip, 0.5 * s, (m10 - m01) * recip
1962
		end
1963
	end
1964
end
1965
 
1966
function QuaternionToCFrame(px, py, pz, x, y, z, w)
1967
	local xs, ys, zs = x + x, y + y, z + z
1968
	local wx, wy, wz = w * xs, w * ys, w * zs
1969
	local xx = x * xs
1970
	local xy = x * ys
1971
	local xz = x * zs
1972
	local yy = y * ys
1973
	local yz = y * zs
1974
	local zz = z * zs
1975
	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))
1976
end
1977
 
1978
function QuaternionSlerp(a, b, t)
1979
	local cosTheta = a[1] * b[1] + a[2] * b[2] + a[3] * b[3] + a[4] * b[4]
1980
	local startInterp, finishInterp;
1981
	if cosTheta >= 0.0001 then
1982
		if (1 - cosTheta) > 0.0001 then
1983
			local theta = ACOS(cosTheta)
1984
			local invSinTheta = 1 / SIN(theta)
1985
			startInterp = SIN((1 - t) * theta) * invSinTheta
1986
			finishInterp = SIN(t * theta) * invSinTheta
1987
		else
1988
			startInterp = 1 - t
1989
			finishInterp = t
1990
		end
1991
	else
1992
		if (1 + cosTheta) > 0.0001 then
1993
			local theta = ACOS(-cosTheta)
1994
			local invSinTheta = 1 / SIN(theta)
1995
			startInterp = SIN((t - 1) * theta) * invSinTheta
1996
			finishInterp = SIN(t * theta) * invSinTheta
1997
		else
1998
			startInterp = t - 1
1999
			finishInterp = t
2000
		end
2001
	end
2002
	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
2003
end
2004
2005
function Clerp(a, b, t)
2006
	local qa = {QuaternionFromCFrame(a)}
2007
	local qb = {QuaternionFromCFrame(b)}
2008
	local ax, ay, az = a.x, a.y, a.z
2009
	local bx, by, bz = b.x, b.y, b.z
2010
	local _t = 1 - t
2011
	return QuaternionToCFrame(_t * ax + t * bx, _t * ay + t * by, _t * az + t * bz, QuaternionSlerp(qa, qb, t))
2012
end
2013
2014
function CreateFrame(PARENT, TRANSPARENCY, BORDERSIZEPIXEL, POSITION, SIZE, COLOR, BORDERCOLOR, NAME)
2015
	local frame = IT("Frame")
2016
	frame.BackgroundTransparency = TRANSPARENCY
2017
	frame.BorderSizePixel = BORDERSIZEPIXEL
2018
	frame.Position = POSITION
2019
	frame.Size = SIZE
2020
	frame.BackgroundColor3 = COLOR
2021
	frame.BorderColor3 = BORDERCOLOR
2022
	frame.Name = NAME
2023
	frame.Parent = PARENT
2024
	return frame
2025
end
2026
2027
function CreateLabel(PARENT, TEXT, TEXTCOLOR, TEXTFONTSIZE, TEXTFONT, TRANSPARENCY, BORDERSIZEPIXEL, STROKETRANSPARENCY, NAME)
2028
	local label = IT("TextLabel")
2029
	label.BackgroundTransparency = 1
2030
	label.Size = UD2(1, 0, 1, 0)
2031
	label.Position = UD2(0, 0, 0, 0)
2032
	label.TextColor3 = TEXTCOLOR
2033
	label.TextStrokeTransparency = STROKETRANSPARENCY
2034
	label.TextTransparency = TRANSPARENCY
2035
	label.FontSize = TEXTFONTSIZE
2036
	label.Font = TEXTFONT
2037
	label.BorderSizePixel = BORDERSIZEPIXEL
2038
	label.TextScaled = false
2039
	label.Text = TEXT
2040
	label.Name = NAME
2041
	label.Parent = PARENT
2042
	return label
2043
end
2044
2045
function NoOutlines(PART)
2046
	PART.TopSurface, PART.BottomSurface, PART.LeftSurface, PART.RightSurface, PART.FrontSurface, PART.BackSurface = 10, 10, 10, 10, 10, 10
2047
end
2048
2049
function CreateWeldOrSnapOrMotor(TYPE, PARENT, PART0, PART1, C0, C1)
2050
	local NEWWELD = IT(TYPE)
2051
	NEWWELD.Part0 = PART0
2052
	NEWWELD.Part1 = PART1
2053
	NEWWELD.C0 = C0
2054
	NEWWELD.C1 = C1
2055
	NEWWELD.Parent = PARENT
2056
	return NEWWELD
2057
end
2058
2059
local S = IT("Sound")
2060
function CreateSound(ID, PARENT, VOLUME, PITCH, DOESLOOP)
2061
	local NEWSOUND = nil
2062
	coroutine.resume(coroutine.create(function()
2063
		NEWSOUND = S:Clone()
2064
		NEWSOUND.Parent = PARENT
2065
		NEWSOUND.Volume = VOLUME
2066
		NEWSOUND.Pitch = PITCH
2067
		NEWSOUND.SoundId = "http://www.roblox.com/asset/?id="..ID
2068
		NEWSOUND:play()
2069
		if DOESLOOP == true then
2070
			NEWSOUND.Looped = true
2071
		else
2072
			repeat wait(1) until NEWSOUND.Playing == false or NEWSOUND.Parent ~= PARENT
2073
			NEWSOUND:remove()
2074
		end
2075
	end))
2076
	return NEWSOUND
2077
end
2078
2079
function CFrameFromTopBack(at, top, back)
2080
	local right = top:Cross(back)
2081
	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)
2082
end
2083
2084
--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})
2085
function WACKYEFFECT(Table)
2086
	local TYPE = (Table.EffectType or "Sphere")
2087
	local SIZE = (Table.Size or VT(1,1,1))
2088
	local ENDSIZE = (Table.Size2 or VT(0,0,0))
2089
	local TRANSPARENCY = (Table.Transparency or 0)
2090
	local ENDTRANSPARENCY = (Table.Transparency2 or 1)
2091
	local CFRAME = (Table.CFrame or Torso.CFrame)
2092
	local MOVEDIRECTION = (Table.MoveToPos or nil)
2093
	local ROTATION1 = (Table.RotationX or 0)
2094
	local ROTATION2 = (Table.RotationY or 0)
2095
	local ROTATION3 = (Table.RotationZ or 0)
2096
	local MATERIAL = (Table.Material or "Neon")
2097
	local COLOR = (Table.Color or C3(1,1,1))
2098
	local TIME = (Table.Time or 45)
2099
	local SOUNDID = (Table.SoundID or nil)
2100
	local SOUNDPITCH = (Table.SoundPitch or nil)
2101
	local SOUNDVOLUME = (Table.SoundVolume or nil)
2102
	coroutine.resume(coroutine.create(function()
2103
		local PLAYSSOUND = false
2104
		local SOUND = nil
2105
		local EFFECT = CreatePart(3, Effects, MATERIAL, 0, TRANSPARENCY, BRICKC("Pearl"), "Effect", VT(1,1,1), true)
2106
		if SOUNDID ~= nil and SOUNDPITCH ~= nil and SOUNDVOLUME ~= nil then
2107
			PLAYSSOUND = true
2108
			SOUND = CreateSound(SOUNDID, EFFECT, SOUNDVOLUME, SOUNDPITCH, false)
2109
		end
2110
		EFFECT.Color = COLOR
2111
		local MSH = nil
2112
		if TYPE == "Sphere" then
2113
			MSH = CreateMesh("SpecialMesh", EFFECT, "Sphere", "", "", SIZE, VT(0,0,0))
2114
		elseif TYPE == "Block" then
2115
			MSH = IT("BlockMesh",EFFECT)
2116
			MSH.Scale = VT(SIZE.X,SIZE.X,SIZE.X)
2117
		elseif TYPE == "Wave" then
2118
			MSH = CreateMesh("SpecialMesh", EFFECT, "FileMesh", "20329976", "", SIZE, VT(0,0,-SIZE.X/8))
2119
		elseif TYPE == "Ring" then
2120
			MSH = CreateMesh("SpecialMesh", EFFECT, "FileMesh", "559831844", "", VT(SIZE.X,SIZE.X,0.1), VT(0,0,0))
2121
		elseif TYPE == "Slash" then
2122
			MSH = CreateMesh("SpecialMesh", EFFECT, "FileMesh", "662586858", "", VT(SIZE.X/10,0,SIZE.X/10), VT(0,0,0))
2123
		elseif TYPE == "Round Slash" then
2124
			MSH = CreateMesh("SpecialMesh", EFFECT, "FileMesh", "662585058", "", VT(SIZE.X/10,0,SIZE.X/10), VT(0,0,0))
2125
		elseif TYPE == "Swirl" then
2126
			MSH = CreateMesh("SpecialMesh", EFFECT, "FileMesh", "1051557", "", SIZE, VT(0,0,0))
2127
		elseif TYPE == "Skull" then
2128
			MSH = CreateMesh("SpecialMesh", EFFECT, "FileMesh", "4770583", "", SIZE, VT(0,0,0))
2129
		elseif TYPE == "Crystal" then
2130
			MSH = CreateMesh("SpecialMesh", EFFECT, "FileMesh", "9756362", "", SIZE, VT(0,0,0))
2131
		end
2132
		if MSH ~= nil then
2133
			local MOVESPEED = nil
2134
			if MOVEDIRECTION ~= nil then
2135
				MOVESPEED = (CFRAME.p - MOVEDIRECTION).Magnitude/TIME
2136
			end
2137
			local GROWTH = SIZE - ENDSIZE
2138
			local TRANS = TRANSPARENCY - ENDTRANSPARENCY
2139
			if TYPE == "Block" then
2140
				EFFECT.CFrame = CFRAME*ANGLES(RAD(MRANDOM(0,360)),RAD(MRANDOM(0,360)),RAD(MRANDOM(0,360)))
2141
			else
2142
				EFFECT.CFrame = CFRAME
2143
			end
2144
			for LOOP = 1, TIME+1 do
2145
				Swait()
2146
				MSH.Scale = MSH.Scale - GROWTH/TIME
2147
				if TYPE == "Wave" then
2148
					MSH.Offset = VT(0,0,-MSH.Scale.X/8)
2149
				end
2150
				EFFECT.Transparency = EFFECT.Transparency - TRANS/TIME
2151
				if TYPE == "Block" then
2152
					EFFECT.CFrame = CFRAME*ANGLES(RAD(MRANDOM(0,360)),RAD(MRANDOM(0,360)),RAD(MRANDOM(0,360)))
2153
				else
2154
					EFFECT.CFrame = EFFECT.CFrame*ANGLES(RAD(ROTATION1),RAD(ROTATION2),RAD(ROTATION3))
2155
				end
2156
				if MOVEDIRECTION ~= nil then
2157
					local ORI = EFFECT.Orientation
2158
					EFFECT.CFrame = CF(EFFECT.Position,MOVEDIRECTION)*CF(0,0,-MOVESPEED)
2159
					EFFECT.Orientation = ORI
2160
				end
2161
			end
2162
			if PLAYSSOUND == false then
2163
				EFFECT:remove()
2164
			else
2165
				SOUND.Stopped:Connect(function()
2166
					EFFECT:remove()
2167
				end)
2168
			end
2169
		else
2170
			if PLAYSSOUND == false then
2171
				EFFECT:remove()
2172
			else
2173
				repeat Swait() until SOUND.Playing == false
2174
				EFFECT:remove()
2175
			end
2176
		end
2177
	end))
2178
end
2179
2180
local DECAL = IT("Decal")
2181
function MakeRing()
2182-
	local RING = CreatePart(3, Effects, "Neon", 0, 1, BRICKC("Navy blue"), "MagicRing", VT(0, 0, 0), true)
2182+
	local RING = CreatePart(3, Effects, "Neon", 0, 1, BRICKC("Really black"), "MagicRing", VT(0, 0, 0), true)
2183
	local MSH = IT("BlockMesh", RING)
2184
	local TOP = DECAL:Clone()
2185
	local BOTTOM = DECAL:Clone()
2186
	TOP.Parent = RING
2187
	BOTTOM.Parent = RING
2188
	TOP.Face = "Top"
2189
	BOTTOM.Face = "Bottom"
2190
	TOP.Texture = "http://www.roblox.com/asset/?id=127817121"
2191
	BOTTOM.Texture = "http://www.roblox.com/asset/?id=127817121"
2192
	local function REMOVE()
2193
		coroutine.resume(coroutine.create(function()
2194
			local SIZE = MSH.Scale.X
2195
			for i = 1, 35 do
2196
				Swait()
2197
				MSH.Scale = MSH.Scale - VT(SIZE, 0, SIZE) / 60
2198
				TOP.Transparency = TOP.Transparency + 0.02857142857142857
2199
				BOTTOM.Transparency = BOTTOM.Transparency + 0.02857142857142857
2200
				RING.CFrame = RING.CFrame * ANGLES(RAD(0), RAD(-5), RAD(0))
2201
			end
2202
			RING:remove()
2203
		end))
2204
	end
2205
	return RING, MSH, REMOVE
2206
end
2207
2208
function MakeForm(PART,TYPE)
2209
	if TYPE == "Cyl" then
2210
		local MSH = IT("CylinderMesh",PART)
2211
	elseif TYPE == "Ball" then
2212
		local MSH = IT("SpecialMesh",PART)
2213
		MSH.MeshType = "Sphere"
2214
	elseif TYPE == "Wedge" then
2215
		local MSH = IT("SpecialMesh",PART)
2216
		MSH.MeshType = "Wedge"
2217
	end
2218
end
2219
2220
function SpawnTrail(FROM,TO,BIG)
2221-
	local TRAIL = CreatePart(3, Effects, "Neon", 0, 0.5, "Navy blue", "Trail", VT(0,0,0))
2221+
	local TRAIL = CreatePart(3, Effects, "Neon", 0, 0.5, "Really black", "Trail", VT(0,0,0))
2222
	MakeForm(TRAIL,"Cyl")
2223
	local DIST = (FROM - TO).Magnitude
2224
	if BIG == true then
2225
		TRAIL.Size = VT(0.5,DIST,0.5)
2226
	else
2227
		TRAIL.Size = VT(0.25,DIST,0.25)
2228
	end
2229
	TRAIL.CFrame = CF(FROM, TO) * CF(0, 0, -DIST/2) * ANGLES(RAD(90),RAD(0),RAD(0))
2230
	coroutine.resume(coroutine.create(function()
2231
		for i = 1, 5 do
2232
			Swait()
2233
			TRAIL.Transparency = TRAIL.Transparency + 0.1
2234
		end
2235
		TRAIL:remove()
2236
	end))
2237
end
2238
--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})
2239
function WACKYEFFECT(Table)
2240
	local TYPE = (Table.EffectType or "Sphere")
2241
	local SIZE = (Table.Size or VT(1,1,1))
2242
	local ENDSIZE = (Table.Size2 or VT(0,0,0))
2243
	local TRANSPARENCY = (Table.Transparency or 0)
2244
	local ENDTRANSPARENCY = (Table.Transparency2 or 1)
2245
	local CFRAME = (Table.CFrame or Torso.CFrame)
2246
	local MOVEDIRECTION = (Table.MoveToPos or nil)
2247
	local ROTATION1 = (Table.RotationX or 0)
2248
	local ROTATION2 = (Table.RotationY or 0)
2249
	local ROTATION3 = (Table.RotationZ or 0)
2250
	local MATERIAL = (Table.Material or "Neon")
2251
	local COLOR = (Table.Color or C3(1,1,1))
2252
	local TIME = (Table.Time or 45)
2253
	local SOUNDID = (Table.SoundID or nil)
2254
	local SOUNDPITCH = (Table.SoundPitch or nil)
2255
	local SOUNDVOLUME = (Table.SoundVolume or nil)
2256
	coroutine.resume(coroutine.create(function()
2257
		local PLAYSSOUND = false
2258
		local SOUND = nil
2259
		local EFFECT = CreatePart(3, Effects, MATERIAL, 0, TRANSPARENCY, BRICKC("Pearl"), "Effect", VT(1,1,1), true)
2260
		if SOUNDID ~= nil and SOUNDPITCH ~= nil and SOUNDVOLUME ~= nil then
2261
			PLAYSSOUND = true
2262
			SOUND = CreateSound(SOUNDID, EFFECT, SOUNDVOLUME, SOUNDPITCH, false)
2263
		end
2264
		EFFECT.Color = COLOR
2265
		local MSH = nil
2266
		if TYPE == "Sphere" then
2267
			MSH = CreateMesh("SpecialMesh", EFFECT, "Sphere", "", "", SIZE, VT(0,0,0))
2268
		elseif TYPE == "Block" or TYPE == "Box" then
2269
			MSH = IT("BlockMesh",EFFECT)
2270
			MSH.Scale = SIZE
2271
		elseif TYPE == "Wave" then
2272
			MSH = CreateMesh("SpecialMesh", EFFECT, "FileMesh", "20329976", "", SIZE, VT(0,0,-SIZE.X/8))
2273
		elseif TYPE == "Ring" then
2274
			MSH = CreateMesh("SpecialMesh", EFFECT, "FileMesh", "559831844", "", VT(SIZE.X,SIZE.X,0.1), VT(0,0,0))
2275
		elseif TYPE == "Slash" then
2276
			MSH = CreateMesh("SpecialMesh", EFFECT, "FileMesh", "662586858", "", VT(SIZE.X/10,0,SIZE.X/10), VT(0,0,0))
2277
		elseif TYPE == "Round Slash" then
2278
			MSH = CreateMesh("SpecialMesh", EFFECT, "FileMesh", "662585058", "", VT(SIZE.X/10,0,SIZE.X/10), VT(0,0,0))
2279
		elseif TYPE == "Swirl" then
2280
			MSH = CreateMesh("SpecialMesh", EFFECT, "FileMesh", "1051557", "", SIZE, VT(0,0,0))
2281
		elseif TYPE == "Skull" then
2282
			MSH = CreateMesh("SpecialMesh", EFFECT, "FileMesh", "4770583", "", SIZE, VT(0,0,0))
2283
		elseif TYPE == "Crystal" then
2284
			MSH = CreateMesh("SpecialMesh", EFFECT, "FileMesh", "9756362", "", SIZE, VT(0,0,0))
2285
		end
2286
		if MSH ~= nil then
2287
			local MOVESPEED = nil
2288
			if MOVEDIRECTION ~= nil then
2289
				MOVESPEED = (CFRAME.p - MOVEDIRECTION).Magnitude/TIME
2290
			end
2291
			local GROWTH = SIZE - ENDSIZE
2292
			local TRANS = TRANSPARENCY - ENDTRANSPARENCY
2293
			if TYPE == "Block" then
2294
				EFFECT.CFrame = CFRAME*ANGLES(RAD(MRANDOM(0,360)),RAD(MRANDOM(0,360)),RAD(MRANDOM(0,360)))
2295
			else
2296
				EFFECT.CFrame = CFRAME
2297
			end
2298
			for LOOP = 1, TIME+1 do
2299
				Swait()
2300
				MSH.Scale = MSH.Scale - GROWTH/TIME
2301
				if TYPE == "Wave" then
2302
					MSH.Offset = VT(0,0,-MSH.Scale.X/8)
2303
				end
2304
				EFFECT.Transparency = EFFECT.Transparency - TRANS/TIME
2305
				if TYPE == "Block" then
2306
					EFFECT.CFrame = CFRAME*ANGLES(RAD(MRANDOM(0,360)),RAD(MRANDOM(0,360)),RAD(MRANDOM(0,360)))
2307
				else
2308
					EFFECT.CFrame = EFFECT.CFrame*ANGLES(RAD(ROTATION1),RAD(ROTATION2),RAD(ROTATION3))
2309
				end
2310
				if MOVEDIRECTION ~= nil then
2311
					local ORI = EFFECT.Orientation
2312
					EFFECT.CFrame = CF(EFFECT.Position,MOVEDIRECTION)*CF(0,0,-MOVESPEED)
2313
					EFFECT.Orientation = ORI
2314
				end
2315
			end
2316
			if PLAYSSOUND == false then
2317
				EFFECT:remove()
2318
			else
2319
				repeat Swait() until EFFECT:FindFirstChildOfClass("Sound") == nil
2320
				EFFECT:remove()
2321
			end
2322
		else
2323
			if PLAYSSOUND == false then
2324
				EFFECT:remove()
2325
			else
2326
				repeat Swait() until EFFECT:FindFirstChildOfClass("Sound") == nil
2327
				EFFECT:remove()
2328
			end
2329
		end
2330
	end))
2331
end
2332
2333
function MakeForm(PART,TYPE)
2334
	if TYPE == "Cyl" then
2335
		local MSH = IT("CylinderMesh",PART)
2336
	elseif TYPE == "Ball" then
2337
		local MSH = IT("SpecialMesh",PART)
2338
		MSH.MeshType = "Sphere"
2339
	elseif TYPE == "Wedge" then
2340
		local MSH = IT("SpecialMesh",PART)
2341
		MSH.MeshType = "Wedge"
2342
	end
2343
end
2344
2345
function SpawnTrail(FROM,TO,BIG)
2346-
	local TRAIL = CreatePart(3, Effects, "Neon", 0, 0.5, "Navy blue", "Trail", VT(0,0,0))
2346+
	local TRAIL = CreatePart(3, Effects, "Neon", 0, 0.5, "Really black", "Trail", VT(0,0,0))
2347
	MakeForm(TRAIL,"Cyl")
2348
	local DIST = (FROM - TO).Magnitude
2349
	if BIG == true then
2350
		TRAIL.Size = VT(0.5,DIST,0.5)
2351
	else
2352
		TRAIL.Size = VT(0.25,DIST,0.25)
2353
	end
2354
	TRAIL.CFrame = CF(FROM, TO) * CF(0, 0, -DIST/2) * ANGLES(RAD(90),RAD(0),RAD(0))
2355
	coroutine.resume(coroutine.create(function()
2356
		for i = 1, 5 do
2357
			Swait()
2358
			TRAIL.Transparency = TRAIL.Transparency + 0.1
2359
		end
2360
		TRAIL:remove()
2361
	end))
2362
end
2363
2364
function SHAKECAM(POSITION, RANGE, INTENSITY, TIME)
2365
	local TORSO = Torso
2366
	local HUM = Humanoid
2367
	if TORSO and RANGE >= (TORSO.Position - POSITION).Magnitude then
2368
		coroutine.wrap(function()
2369
			VT = Vector3.new
2370
			MRANDOM = math.random
2371
			local A = TIME
2372
			local B = INTENSITY
2373
			local C = true
2374
			local HUMANOID = Humanoid
2375
			local TIMER = A or 35
2376
			local SHAKE = B or 5
2377
			local FADE = C or true
2378
			if HUMANOID then
2379
				local FADER = SHAKE / TIMER
2380
				for i = 1, TIMER do
2381
					wait()
2382
					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)
2383
				end
2384
				HUMANOID.CameraOffset = VT(0, 0, 0)
2385
			end
2386
2387
		end)()
2388
	end
2389
end
2390
2391
function chatfunc(text)
2392
	local chat = coroutine.wrap(function()
2393
	if Character:FindFirstChild("TalkingBillBoard")~= nil then
2394
		Character:FindFirstChild("TalkingBillBoard"):destroy()
2395
	end
2396
	local Bill = Instance.new("BillboardGui",Character)
2397
	Bill.Size = UDim2.new(0,100,0,40)
2398
	Bill.StudsOffset = Vector3.new(0,3,0)
2399
	Bill.Adornee = Character.Head
2400
	Bill.Name = "TalkingBillBoard"
2401
	local Hehe = Instance.new("TextLabel",Bill)
2402
	Hehe.BackgroundTransparency = 1
2403
	Hehe.BorderSizePixel = 0
2404
	Hehe.Text = ""
2405
	Hehe.Font = "Bodoni"
2406
	Hehe.TextSize = 40
2407
	Hehe.TextStrokeTransparency = 0
2408
	Hehe.Size = UDim2.new(1,0,0.5,0)
2409
	coroutine.resume(coroutine.create(function()
2410
		while Hehe ~= nil do
2411
			Swait()	
2412
			Hehe.Position = UDim2.new(math.random(-.4,.4),math.random(-5,5),.05,math.random(-5,5))	
2413
			Hehe.Rotation = math.random(-2.5,2.5)
2414
			Hehe.TextColor3 = Color3.new(MRANDOM(55,255),0,0)
2415
			Hehe.TextStrokeColor3 = Color3.new(0,0,0)
2416
		end
2417
	end))
2418
	for i = 1,string.len(text),1 do
2419
		Swait()
2420
		Hehe.Text = string.sub(text,1,i)
2421
	end
2422
	Swait(90)--Re[math.random(1, 93)]
2423
	for i = 0, 1, .025 do
2424
		Swait()
2425
		Bill.ExtentsOffset = Vector3.new(math.random(-i, i), math.random(-i, i), math.random(-i, i))
2426
		Hehe.TextStrokeTransparency = i
2427
		Hehe.TextTransparency = i
2428
	end
2429
	Bill:Destroy()
2430
	end)
2431
chat()
2432
end
2433
2434
Debris = game:GetService("Debris")
2435
2436
function CastProperRay(StartPos, EndPos, Distance, Ignore)
2437
	local DIRECTION = CF(StartPos,EndPos).lookVector
2438
	return Raycast(StartPos, DIRECTION, Distance, Ignore)
2439
end
2440
2441
function turnto(position)
2442
	RootPart.CFrame=CFrame.new(RootPart.CFrame.p,VT(position.X,RootPart.Position.Y,position.Z)) * CFrame.new(0, 0, 0)
2443
end
2444
2445
--//=================================\\
2446
--||	     RAGDOLL STUFF
2447
--\\=================================//
2448
2449
function recurse(root,callback,i)
2450
	i= i or 0
2451
	for _,v in pairs(root:GetChildren()) do
2452
		i = i + 1
2453
		callback(i,v)
2454
		
2455
		if #v:GetChildren() > 0 then
2456
			i = recurse(v,callback,i)
2457
		end
2458
	end
2459
	
2460
	return i
2461
end
2462
2463
function ragdollJoint(character, part0, part1, attachmentName, className, properties)
2464
	attachmentName = attachmentName.."RigAttachment"
2465
	local constraint = Instance.new(className.."Constraint")
2466
	constraint.Attachment0 = part0:FindFirstChild(attachmentName)
2467
	constraint.Attachment1 = part1:FindFirstChild(attachmentName)
2468
	constraint.Name = "RagdollConstraint"..part1.Name
2469
	
2470
	for _,propertyData in next,properties or {} do
2471
		constraint[propertyData[1]] = propertyData[2]
2472
	end
2473
	
2474
	constraint.Parent = character
2475
end
2476
2477
function getAttachment0(character, attachmentName)
2478
	for _,child in next,character:GetChildren() do
2479
		local attachment = child:FindFirstChild(attachmentName)
2480
		if attachment then
2481
			return attachment
2482
		end
2483
	end
2484
end
2485
2486
function ArtificialHitbox(Part)
2487
	local HITBOX = CreatePart(3, Part, "Metal", 0, 1, "Really black", "Hitbox", Part.Size/2, false)
2488
	HITBOX.CanCollide = true
2489
	HITBOX.CFrame = Part.CFrame
2490
	weldBetween(Part,HITBOX)
2491
end
2492
2493
function R15Ragdoll(character,KeepArms)
2494
	character:BreakJoints()
2495
	coroutine.resume(coroutine.create(function()
2496
		recurse(character, function(_,v)
2497
			if v:IsA("Attachment") then
2498
				v.Axis = Vector3.new(0, 1, 0)
2499
				v.SecondaryAxis = Vector3.new(0, 0, 1)
2500
				v.Rotation = Vector3.new(0, 0, 0)
2501
			end
2502
		end)
2503
		for _,child in next,character:GetChildren() do
2504
			if child:IsA("Accoutrement") then
2505
				for _,part in next,child:GetChildren() do
2506
					if part:IsA("BasePart") and part.Name ~= "HumanoidRootPart" then
2507
						local attachment1 = part:FindFirstChildOfClass("Attachment")
2508
						local attachment0 = getAttachment0(character,attachment1.Name)
2509
						if attachment0 and attachment1 then
2510
							local constraint = Instance.new("HingeConstraint")
2511
							constraint.Attachment0 = attachment0
2512
							constraint.Attachment1 = attachment1
2513
							constraint.LimitsEnabled = true
2514
							constraint.UpperAngle = 0
2515
							constraint.LowerAngle = 0
2516
							constraint.Parent = character
2517
						end
2518
						ArtificialHitbox(part)
2519
					elseif part.Name == "HumanoidRootPart" then
2520
						part:remove()
2521
					end
2522
				end
2523
			end
2524
		end
2525
		
2526
		ragdollJoint(character,character.LowerTorso, character.UpperTorso, "Waist", "BallSocket", {
2527
			{"LimitsEnabled",true};
2528
			{"UpperAngle",5};
2529
		})
2530
		if character:FindFirstChild("Head") then
2531
			ragdollJoint(character,character.UpperTorso, character.Head, "Neck", "BallSocket", {
2532
				{"LimitsEnabled",true};
2533
				{"UpperAngle",15};
2534
			})
2535
		end
2536
		
2537
		local handProperties = {
2538
			{"LimitsEnabled", true};
2539
			{"UpperAngle",0};
2540
			{"LowerAngle",0};
2541
		}
2542
		ragdollJoint(character,character.LeftLowerArm, character.LeftHand, "LeftWrist", "Hinge", handProperties)
2543
		ragdollJoint(character,character.RightLowerArm, character.RightHand, "RightWrist", "Hinge", handProperties)
2544
		
2545
		local shinProperties = {
2546
			{"LimitsEnabled", true};
2547
			{"UpperAngle", 0};
2548
			{"LowerAngle", -75};
2549
		}
2550
		ragdollJoint(character,character.LeftUpperLeg, character.LeftLowerLeg, "LeftKnee", "Hinge", shinProperties)
2551
		ragdollJoint(character,character.RightUpperLeg, character.RightLowerLeg, "RightKnee", "Hinge", shinProperties)
2552
		
2553
		local footProperties = {
2554
			{"LimitsEnabled", true};
2555
			{"UpperAngle", 15};
2556
			{"LowerAngle", -45};
2557
		}
2558
		ragdollJoint(character,character.LeftLowerLeg, character.LeftFoot, "LeftAnkle", "Hinge", footProperties)
2559
		ragdollJoint(character,character.RightLowerLeg, character.RightFoot, "RightAnkle", "Hinge", footProperties)
2560
		if KeepArms == true then
2561
			ragdollJoint(character,character.UpperTorso, character.RightUpperArm, "RightShoulder", "BallSocket")
2562
			ragdollJoint(character,character.RightUpperArm, character.RightLowerArm, "RightElbow", "BallSocket")
2563
			ragdollJoint(character,character.UpperTorso, character.LeftUpperArm, "LeftShoulder", "BallSocket")
2564
			ragdollJoint(character,character.LeftUpperArm, character.LeftLowerArm, "LeftElbow", "BallSocket")
2565
		end
2566
		ragdollJoint(character,character.LowerTorso, character.LeftUpperLeg, "LeftHip", "BallSocket")
2567
		ragdollJoint(character,character.LowerTorso, character.RightUpperLeg, "RightHip", "BallSocket")
2568
		Debris:AddItem(character,5)
2569
	end))
2570
end
2571
2572
function Ragdoll(Character2,CharTorso,KeepArms)
2573
	coroutine.resume(coroutine.create(function()
2574
		Character2:BreakJoints()
2575
		local hum = Character2:findFirstChild("Humanoid")
2576
		hum:remove()
2577
		local function Scan(ch)
2578
			local e
2579
			for e = 1,#ch do
2580
				Scan(ch[e]:GetChildren())
2581
				if ch[e].ClassName == "Weld" or ch[e].ClassName == "Motor6D" then
2582
					ch[e]:remove()
2583
				end
2584
			end
2585
		end
2586
		local NEWHUM = IT("Humanoid")
2587
		NEWHUM.Name = "Corpse"
2588
		NEWHUM.Health = 0
2589
		NEWHUM.MaxHealth = 0
2590
		NEWHUM.PlatformStand = true
2591
		NEWHUM.Parent = Character2
2592
		NEWHUM.DisplayDistanceType = "None"
2593
	
2594
		local ch = Character2:GetChildren()
2595
		local i
2596
		for i = 1,#ch do
2597
			if ch[i].Name == "THandle1" or ch[i].Name == "THandle2" then
2598
				ch[i]:remove()
2599
			end
2600
		end
2601
	
2602
		local Torso2 = Character2.Torso
2603
		local movevector = Vector3.new()
2604
	
2605
		if Torso2 then
2606
			movevector = CFrame.new(CharTorso.Position,Torso2.Position).lookVector
2607
			local Head = Character2:FindFirstChild("Head")
2608
			if Head then
2609
				local Neck = Instance.new("Weld")
2610
				Neck.Name = "Neck"
2611
				Neck.Part0 = Torso2
2612
				Neck.Part1 = Head
2613
				Neck.C0 = CFrame.new(0, 1.5, 0)
2614
				Neck.C1 = CFrame.new()
2615
				Neck.Parent = Torso2
2616
	
2617
			end
2618
			local Limb = Character2:FindFirstChild("Right Arm")
2619
			if Limb and KeepArms == true then
2620
	
2621
				Limb.CFrame = Torso2.CFrame * CFrame.new(1.5, 0, 0)
2622
				local Joint = Instance.new("Glue")
2623
				Joint.Name = "RightShoulder"
2624
				Joint.Part0 = Torso2
2625
				Joint.Part1 = Limb
2626
				Joint.C0 = CFrame.new(1.5, 0.5, 0, 0, 0, 1, 0, 1, 0, -1, -0, -0)
2627
				Joint.C1 = CFrame.new(-0, 0.5, 0, 0, 0, 1, 0, 1, 0, -1, -0, -0)
2628
				Joint.Parent = Torso2
2629
	
2630
				local B = Instance.new("Part")
2631
				B.TopSurface = 0
2632
				B.BottomSurface = 0
2633
				B.formFactor = "Symmetric"
2634
				B.Size = Vector3.new(1, 1, 1)
2635
				B.Transparency = 1
2636
				B.CFrame = Limb.CFrame * CFrame.new(0, -0.5, 0)
2637
				B.Parent = Character2
2638
				local W = Instance.new("Weld")
2639
				W.Part0 = Limb
2640
				W.Part1 = B
2641
				W.C0 = CFrame.new(0, -0.5, 0)
2642
				W.Parent = Limb
2643
	
2644
			end
2645
			local Limb = Character2:FindFirstChild("Left Arm")
2646
			if Limb and KeepArms == true then
2647
	
2648
				Limb.CFrame = Torso2.CFrame * CFrame.new(-1.5, 0, 0)
2649
				local Joint = Instance.new("Glue")
2650
				Joint.Name = "LeftShoulder"
2651
				Joint.Part0 = Torso2
2652
				Joint.Part1 = Limb
2653
				Joint.C0 = CFrame.new(-1.5, 0.5, 0, -0, -0, -1, 0, 1, 0, 1, 0, 0)
2654
				Joint.C1 = CFrame.new(0, 0.5, 0, -0, -0, -1, 0, 1, 0, 1, 0, 0)
2655
				Joint.Parent = Torso2
2656
	
2657
				local B = Instance.new("Part")
2658
				B.TopSurface = 0
2659
				B.BottomSurface = 0
2660
				B.formFactor = "Symmetric"
2661
				B.Size = Vector3.new(1, 1, 1)
2662
				B.Transparency = 1
2663
				B.CFrame = Limb.CFrame * CFrame.new(0, -0.5, 0)
2664
				B.Parent = Character2
2665
				local W = Instance.new("Weld")
2666
				W.Part0 = Limb
2667
				W.Part1 = B
2668
				W.C0 = CFrame.new(0, -0.5, 0)
2669
				W.Parent = Limb
2670
	
2671
			end
2672
			local Limb = Character2:FindFirstChild("Right Leg")
2673
			if Limb then
2674
	
2675
				Limb.CFrame = Torso2.CFrame * CFrame.new(0.5, -2, 0)
2676
				local Joint = Instance.new("Glue")
2677
				Joint.Name = "RightHip"
2678
				Joint.Part0 = Torso2
2679
				Joint.Part1 = Limb
2680
				Joint.C0 = CFrame.new(0.5, -1, 0, 0, 0, 1, 0, 1, 0, -1, -0, -0)
2681
				Joint.C1 = CFrame.new(0, 1, 0, 0, 0, 1, 0, 1, 0, -1, -0, -0)
2682
				Joint.Parent = Torso2
2683
	
2684
				local B = Instance.new("Part")
2685
				B.TopSurface = 0
2686
				B.BottomSurface = 0
2687
				B.formFactor = "Symmetric"
2688
				B.Size = Vector3.new(1, 1, 1)
2689
				B.Transparency = 1
2690
				B.CFrame = Limb.CFrame * CFrame.new(0, -0.5, 0)
2691
				B.Parent = Character2
2692
				local W = Instance.new("Weld")
2693
				W.Part0 = Limb
2694
				W.Part1 = B
2695
				W.C0 = CFrame.new(0, -0.5, 0)
2696
				W.Parent = Limb
2697
	
2698
			end
2699
			local Limb = Character2:FindFirstChild("Left Leg")
2700
			if Limb then
2701
	
2702
				Limb.CFrame = Torso2.CFrame * CFrame.new(-0.5, -2, 0)
2703
				local Joint = Instance.new("Glue")
2704
				Joint.Name = "LeftHip"
2705
				Joint.Part0 = Torso2
2706
				Joint.Part1 = Limb
2707
				Joint.C0 = CFrame.new(-0.5, -1, 0, -0, -0, -1, 0, 1, 0, 1, 0, 0)
2708
				Joint.C1 = CFrame.new(-0, 1, 0, -0, -0, -1, 0, 1, 0, 1, 0, 0)
2709
				Joint.Parent = Torso2
2710
	
2711
				local B = Instance.new("Part")
2712
				B.TopSurface = 0
2713
				B.BottomSurface = 0
2714
				B.formFactor = "Symmetric"
2715
				B.Size = Vector3.new(1, 1, 1)
2716
				B.Transparency = 1
2717
				B.CFrame = Limb.CFrame * CFrame.new(0, -0.5, 0)
2718
				B.Parent = Character2
2719
				local W = Instance.new("Weld")
2720
				W.Part0 = Limb
2721
				W.Part1 = B
2722
				W.C0 = CFrame.new(0, -0.5, 0)
2723
				W.Parent = Limb
2724
	
2725
			end
2726
			--[
2727
			local Bar = Instance.new("Part")
2728
			Bar.TopSurface = 0
2729
			Bar.BottomSurface = 0
2730
			Bar.formFactor = "Symmetric"
2731
			Bar.Size = Vector3.new(1, 1, 1)
2732
			Bar.Transparency = 1
2733
			Bar.CFrame = Torso2.CFrame * CFrame.new(0, 0.5, 0)
2734
			Bar.Parent = Character2
2735
			local Weld = Instance.new("Weld")
2736
			Weld.Part0 = Torso2
2737
			Weld.Part1 = Bar
2738
			Weld.C0 = CFrame.new(0, 0.5, 0)
2739
			Weld.Parent = Torso2
2740
			--]]
2741
		end
2742
		Character2.Parent = workspace
2743
		Debris:AddItem(Character2,5)
2744
	
2745
		return Character2,Torso2
2746
	end))
2747
end
2748
2749
--//=================================\\
2750
--||	     WEAPON CREATION
2751
--\\=================================//
2752
2753
2754
local Particle = IT("ParticleEmitter",nil)
2755
Particle.Enabled = false
2756
Particle.Transparency = NumberSequence.new({NumberSequenceKeypoint.new(0,0.3),NumberSequenceKeypoint.new(0.3,0),NumberSequenceKeypoint.new(1,1)})
2757
Particle.LightEmission = 0.5
2758
Particle.Rate = 150
2759
Particle.ZOffset = 0.2
2760
Particle.Rotation = NumberRange.new(-180, 180)
2761
Particle.RotSpeed = NumberRange.new(-180, 180)
2762
Particle.Texture = "http://www.roblox.com/asset/?id=304437537"
2763
Particle.Color = ColorSequence.new(C3(0/255,0/255,255/255),C3(0.4,0,0))
2764
2765
--ParticleEmitter({Speed = 5, Drag = 0, Size1 = 1, Size2 = 5, Lifetime1 = 1, Lifetime2 = 1.5, Parent = Torso, Emit = 100, Offset = 360, Enabled = false})
2766
function ParticleEmitter(Table)
2767
	local PRTCL = Particle:Clone()
2768
	local Speed = Table.Speed or 5
2769
	local Drag = Table.Drag or 0
2770
	local Size1 = Table.Size1 or 1
2771
	local Size2 = Table.Size2 or 5
2772
	local Lifetime1 = Table.Lifetime1 or 1
2773
	local Lifetime2 = Table.Lifetime2 or 1.5
2774
	local Parent = Table.Parent or Torso
2775
	local Emit = Table.Emit or 100
2776
	local Offset = Table.Offset or 360
2777
	local Acel = Table.Acel or VT(0,0,0)
2778
	local Enabled = Table.Enabled or false
2779
	PRTCL.Parent = Parent
2780
	PRTCL.Size = NumberSequence.new(Size1,Size2)
2781
	PRTCL.Lifetime = NumberRange.new(Lifetime1,Lifetime2)
2782
	PRTCL.Speed = NumberRange.new(Speed)
2783
	PRTCL.VelocitySpread = Offset
2784
	PRTCL.Drag = Drag
2785
	PRTCL.Acceleration = Acel
2786
	if Enabled == false then
2787
		PRTCL:Emit(Emit)
2788
		Debris:AddItem(PRTCL,Lifetime2)
2789
	else
2790
		PRTCL.Enabled = true
2791
	end
2792
	return PRTCL
2793
end
2794
2795
local Handle = CreatePart(3, Gun, "Metal", 0, 0, "Mid gray", "Part", VT(0.2,0.6,0.2),false)
2796
local RightArmGrasp = CreateWeldOrSnapOrMotor("Weld", Handle, RightArm, Handle, CF(0,-1, 0) * ANGLES(RAD(90), RAD(0), RAD(0)), CF(0, 0.21, 0))
2797
local Part = CreatePart(3, Gun, "Metal", 0, 0, "Mid gray", "Part", VT(0.2,0.5,0.2),false)
2798
MakeForm(Part,"Wedge")
2799
CreateWeldOrSnapOrMotor("Weld", Handle, Handle, Part, CF(0, -0.3, 0.2) * ANGLES(RAD(0), RAD(180), RAD(0)), CF(0, 0, 0))
2800
local Part = CreatePart(3, Gun, "Metal", 0, 0, "Mid gray", "Part", VT(0.2,0.3,0.2),false)
2801
MakeForm(Part,"Wedge")
2802
CreateWeldOrSnapOrMotor("Weld", Handle, Handle, Part, CF(0, -0.4, 0) * ANGLES(RAD(0), RAD(0), RAD(180)), CF(0, 0, 0))
2803
local Part = CreatePart(3, Gun, "Metal", 0, 0, "Mid gray", "Part", VT(0.3,0.3,0.3),false)
2804
CreateWeldOrSnapOrMotor("Weld", Handle, Handle, Part, CF(0, -0.5, 0.2) * ANGLES(RAD(0), RAD(0), RAD(0)), CF(0, 0, 0))
2805
local Part = CreatePart(3, Gun, "Metal", 0, 0, "Mid gray", "Part", VT(0.3,0.5,0.5),false)
2806
CreateWeldOrSnapOrMotor("Weld", Handle, Handle, Part, CF(0, -0.6, 0.5) * ANGLES(RAD(0), RAD(0), RAD(0)), CF(0, 0, 0))
2807
local Part = CreatePart(3, Gun, "Metal", 0, 0, "Mid gray", "Part", VT(0.4,0.4,0.4),false)
2808
MakeForm(Part,"Cyl")
2809
CreateWeldOrSnapOrMotor("Weld", Handle, Handle, Part, CF(0, -0.6, 0.5) * ANGLES(RAD(90), RAD(0), RAD(0)), CF(0, 0, 0))
2810
for i = 1, 8 do
2811
	local Piece = CreatePart(3, Gun, "Metal", 0, 0, "Mid gray", "Eye", VT(0,0.35,0.41),false)
2812
	CreateWeldOrSnapOrMotor("Weld", Handle, Part, Piece, CF(0, 0, 0) * ANGLES(RAD(0), RAD((360/8)*i), RAD(0)), CF(0, 0, 0))
2813
end
2814
local Part = CreatePart(3, Gun, "Metal", 0, 0, "Mid gray", "Eye", VT(0.38,0.41,0.38),false)
2815
MakeForm(Part,"Cyl")
2816
CreateWeldOrSnapOrMotor("Weld", Handle, Handle, Part, CF(0, -0.6, 0.5) * ANGLES(RAD(90), RAD(0), RAD(0)), CF(0, 0, 0))
2817
local Part = CreatePart(3, Gun, "Metal", 0, 0, "Mid gray", "Part", VT(0.37,0.5,0.37),false)
2818
MakeForm(Part,"Ball")
2819
CreateWeldOrSnapOrMotor("Weld", Handle, Handle, Part, CF(0, -0.6, 0.3) * ANGLES(RAD(90), RAD(0), RAD(0)), CF(0, 0, 0))
2820
local Part = CreatePart(3, Gun, "Metal", 0, 0, "Mid gray", "Part", VT(0.2,0.7,0.4),false)
2821
MakeForm(Part,"Wedge")
2822
CreateWeldOrSnapOrMotor("Weld", Handle, Handle, Part, CF(0, -0.7, 0.5) * ANGLES(RAD(90), RAD(180), RAD(180)), CF(0, 0, 0))
2823
local Part = CreatePart(3, Gun, "Metal", 0, 0, "Mid gray", "Part", VT(0.3,0.4,0.2),false)
2824
CreateWeldOrSnapOrMotor("Weld", Handle, Handle, Part, CF(0, -0.6, 0.7) * ANGLES(RAD(0), RAD(0), RAD(0)), CF(0, 0, 0))
2825
local Part = CreatePart(3, Gun, "Metal", 0, 0, "Mid gray", "Part", VT(0.35,0.35,0.35),false)
2826
MakeForm(Part,"Cyl")
2827
CreateWeldOrSnapOrMotor("Weld", Handle, Handle, Part, CF(0, -0.6, 0.7) * ANGLES(RAD(90), RAD(0), RAD(0)), CF(0, 0, 0))
2828
local Part = CreatePart(3, Gun, "Metal", 0, 0, "Mid gray", "Part", VT(0.5,0.1,0.5),false)
2829
MakeForm(Part,"Cyl")
2830
CreateWeldOrSnapOrMotor("Weld", Handle, Handle, Part, CF(0, -0.6, 1) * ANGLES(RAD(90), RAD(0), RAD(0)), CF(0, 0, 0))
2831
local Part = CreatePart(3, Gun, "Metal", 0, 0, "Mid gray", "Part", VT(0.5,0.1,0.45),false)
2832
MakeForm(Part,"Cyl")
2833
CreateWeldOrSnapOrMotor("Weld", Handle, Handle, Part, CF(0, -0.6, 1.1) * ANGLES(RAD(90), RAD(0), RAD(0)), CF(0, 0, 0))
2834
local Part = CreatePart(3, Gun, "Metal", 0, 0, "Mid gray", "exe2", VT(0.2,0.5,0.2),false)
2835
MakeForm(Part,"Wedge")
2836
CreateWeldOrSnapOrMotor("Weld", Handle, Handle, Part, CF(0, -0.65, -0.6) * ANGLES(RAD(135), RAD(180), RAD(180)), CF(0, -0.3, 0))
2837
local Part = CreatePart(3, Gun, "Metal", 0, 0, "Mid gray", "Part", VT(0.5,0.1,0.45),false)
2838
MakeForm(Part,"Cyl")
2839
CreateWeldOrSnapOrMotor("Weld", Handle, Handle, Part, CF(0, -0.6, 1.1) * ANGLES(RAD(90), RAD(0), RAD(0)), CF(0, 0, 0))
2840
local Part = CreatePart(3, Gun, "Metal", 0, 0, "Mid gray", "exe", VT(0.2,0.5,0.2),false)
2841
MakeForm(Part,"Wedge")
2842
CreateWeldOrSnapOrMotor("Weld", Handle, Handle, Part, CF(0, -0.55, -0.6) * ANGLES(RAD(-135), RAD(0), RAD(0)), CF(0, -0.3, 0))
2843
local LASTPART = Handle
2844
for i = 1, 10 do
2845
	if LASTPART == Handle then
2846
		local Part = CreatePart(3, Gun, "Metal", 0, 0, "Mid gray", "Part", VT(0.1,0.2,0),false)
2847
		LASTPART = Part
2848
		CreateWeldOrSnapOrMotor("Weld", Handle, Handle, Part, CF(0, -0.1, 0.2) * ANGLES(RAD(90), RAD(0), RAD(0)), CF(0, 0, 0))
2849
	else
2850
		local Part = CreatePart(3, Gun, "Metal", 0, 0, "Mid gray", "Part", VT(0.1,0.05,0),false)
2851
		CreateWeldOrSnapOrMotor("Weld", Handle, LASTPART, Part, CF(0, 0.025, 0) * ANGLES(RAD(8), RAD(0), RAD(0)), CF(0, -0.025, 0))
2852
		LASTPART = Part
2853
	end
2854
end
2855
2856
local Barrel = CreatePart(3, Gun, "Metal", 0, 0, "Mid gray", "Part", VT(0.15,5,0.15),false)
2857
MakeForm(Barrel,"Cyl")
2858
CreateWeldOrSnapOrMotor("Weld", Handle, Handle, Barrel, CF(0, -0.6, 1.8) * ANGLES(RAD(90), RAD(0), RAD(0)), CF(0, 0, 0))
2859
local Part = CreatePart(3, Gun, "Metal", 0, 0, "Mid gray", "Part", VT(0.25,1,0.25),false)
2860
MakeForm(Part,"Cyl")
2861
CreateWeldOrSnapOrMotor("Weld", Handle, Barrel, Part, CF(0, -0.6, 0), CF(0, 0, 0))
2862
local Part = CreatePart(3, Gun, "Metal", 0, 0, "Mid gray", "Part", VT(0,0.1,0.2),false)
2863
MakeForm(Part,"Wedge")
2864
CreateWeldOrSnapOrMotor("Weld", Handle, Barrel, Part, CF(0, 2.4, 0.1) * ANGLES(RAD(180), RAD(0), RAD(0)), CF(0, 0, 0))
2865
local Hole = CreatePart(3, Gun, "Metal", 0, 0, "Mid gray", "Eye", VT(0.125,0,0.125),false)
2866
MakeForm(Hole,"Cyl")
2867
CreateWeldOrSnapOrMotor("Weld", Handle, Barrel, Hole, CF(0, 2.5, 0), CF(0, 0, 0))
2868
local Part = CreatePart(3, Gun, "Metal", 0, 0, "Mid gray", "Part", VT(0,0,0),false)
2869
local GEARWELD = CreateWeldOrSnapOrMotor("Weld", Handle, Handle, Part, CF(0, -0.6, 0.7), CF(0, 0, 0))
2870
CreateMesh("SpecialMesh", Part, "FileMesh", 156292343, "", VT(0.8,0.8,1.5), VT(0,0,0.2))
2871
local Part = CreatePart(3, Gun, "Metal", 0, 0.5, "Mid gray", "Eye", VT(0,0,0),false)
2872
local GEARWELD2 = CreateWeldOrSnapOrMotor("Weld", Handle, Handle, Part, CF(0, -0.6, 0.7), CF(0, 0, 0))
2873
CreateMesh("SpecialMesh", Part, "FileMesh", 156292343, "", VT(0.9,0.9,0.3), VT(0,0,0.2))
2874
coroutine.resume(coroutine.create(function()
2875
	while wait() do
2876
		GEARWELD.C0 = GEARWELD.C0 * ANGLES(RAD(0), RAD(0), RAD(5))
2877
		GEARWELD2.C0 = GEARWELD2.C0 * ANGLES(RAD(0), RAD(0), RAD(-5))
2878
	end
2879
end))
2880
2881
for _, c in pairs(Gun:GetDescendants()) do
2882
	if c.ClassName == "Part" and c.Name ~= "Eye" and c.Parent ~= Effects and c.Parent.Parent ~= Effects then
2883
		c.Material = "Glass"
2884
		c.Color = C3(0,0,0)
2885
	elseif c.ClassName == "Part" and c.Name == "Eye" then
2886
		c.Color = C3(0/255,0/255,255/255)
2887
		c.Material = "Neon"
2888
	end
2889
end
2890
2891
for i = 1, 35 do
2892
	local FACE = CreatePart(3, FaceGradient, "Fabric", 0, 0+(i-1)/35.2, "Dark stone grey", "FaceGradient", VT(1.01,0.5,1.01),false)
2893
	FACE.Color = C3(0,0,0)
2894
	Head:FindFirstChildOfClass("SpecialMesh"):Clone().Parent = FACE
2895
	CreateWeldOrSnapOrMotor("Weld", Head, Head, FACE, CF(0,0.35-(i-1)/75,0), CF(0, 0, 0))
2896
end
2897
2898
Weapon.Parent = Character
2899
for _, c in pairs(Weapon:GetChildren()) do
2900
	if c.ClassName == "Part" then
2901
		c.CustomPhysicalProperties = PhysicalProperties.new(0, 0, 0, 0, 0)
2902
	end
2903
end
2904
2905
Weapon.Parent = Character
2906
Gun.Parent = nil
2907
2908
for _, c in pairs(Gun:GetChildren()) do
2909
	if c.ClassName == "Part" then
2910
		c.CustomPhysicalProperties = PhysicalProperties.new(0, 0, 0, 0, 0)
2911
	end
2912
end
2913
2914
for _, c in pairs(Weapon:GetChildren()) do
2915
	if c.ClassName == "Part" then
2916
		c.CustomPhysicalProperties = PhysicalProperties.new(0, 0, 0, 0, 0)
2917
	end
2918
end
2919
2920
local EXE = Instance.new("Shirt")
2921
EXE.ShirtTemplate = "rbxassetid://338740550"
2922
EXE.Parent = Character
2923
EXE.Name = "Cloth"
2924
local LOL = Instance.new("Pants")
2925
LOL.PantsTemplate = "rbxassetid://338750779"
2926
LOL.Parent = Character
2927
LOL.Name = "Cloth"
2928
2929
Head.Color = C3(21,71,109)
2930
Torso.Color = C3(21,71,109)
2931
LeftArm.Color = C3(21,71,109)
2932
LeftLeg.Color = C3(21,71,109)
2933
RightArm.Color = C3(21,71,109)
2934
RightLeg.Color = C3(21,71,109)
2935
2936
local SKILLTEXTCOLOR = C3(0/255,0/255,255/255)
2937
local SKILLFONT = "Antique"
2938
local SKILLTEXTSIZE = 7
2939
2940
Humanoid.Died:connect(function()
2941
	ATTACK = true
2942
end)
2943
2944
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")
2945
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")
2946
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")
2947
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")
2948
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")
2949
2950
local SKILL1TEXT = CreateLabel(SKILL1FRAME, "[Z] Banish", SKILLTEXTCOLOR, SKILLTEXTSIZE, SKILLFONT, 0, 2, 0.7, "Text 1")
2951
local SKILL2TEXT = CreateLabel(SKILL2FRAME, "[V] Kill", SKILLTEXTCOLOR, SKILLTEXTSIZE, SKILLFONT, 0, 2, 0.7, "Text 2")
2952
local SKILL3TEXT = CreateLabel(SKILL3FRAME, "[X] Sleep", SKILLTEXTCOLOR, SKILLTEXTSIZE, SKILLFONT, 0, 2, 0.7, "Text 3")
2953
local SKILL4TEXT = CreateLabel(SKILL4FRAME, "[C] Ultimate", SKILLTEXTCOLOR, SKILLTEXTSIZE, SKILLFONT, 0, 2, 0.7, "Text 4")
2954
local SKILL5TEXT = CreateLabel(SKILL5FRAME, "[T] Taunt", SKILLTEXTCOLOR, SKILLTEXTSIZE, SKILLFONT, 0, 2, 0.7, "Text 5")
2955
2956
function printbye(Name)
2957
	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, "}
2958
	warn(MESSAGES[MRANDOM(1,#MESSAGES)]..Name..".")	
2959
end
2960
	if INTRO == false and INSTANT == false then
2961
		INTRO = true
2962
		coroutine.resume(coroutine.create(function()
2963
			sick:Play()
2964
			Intro()
2965
		end))
2966
	end
2967
2968
workspace.ChildAdded:connect(function(instance)
2969
    for BANISH = 1, #TOBANISH do
2970
		if TOBANISH[BANISH] ~= nil then
2971
			if instance.Name == TOBANISH[BANISH] then
2972
				coroutine.resume(coroutine.create(function()
2973
					printbye(instance.Name)
2974
					instance:ClearAllChildren()
2975
					Debris:AddItem(instance,0.0005)
2976
				end))
2977
			end
2978
		end
2979
	end
2980
end)
2981
2982
--//=================================\\
2983
--||			DAMAGING
2984
--\\=================================//
2985
2986
function ApplyDamage(Humanoid,Damage,OneShot)
2987
	Damage = Damage * DAMAGEMULTIPLIER
2988
	local DEAD = false
2989
	if Humanoid.Health < 2000 and OneShot == false then
2990
		if Humanoid.Health - Damage > 0 then
2991
			Humanoid.Health = Humanoid.Health - Damage
2992
		else
2993
			Humanoid.Parent:BreakJoints()
2994
			DEAD = true
2995
		end
2996
	else
2997
		DEAD = true
2998
		Humanoid.Parent:BreakJoints()
2999
	end
3000
	if DEAD == true then
3001
		local PARTS = {}
3002
		for index, CHILD in pairs(Humanoid.Parent:GetChildren()) do
3003
			if CHILD:IsA("BasePart") then
3004
				table.insert(PARTS,CHILD)
3005
			end
3006
		end
3007
		coroutine.resume(coroutine.create(function()
3008
			wait(2)
3009
			repeat
3010
				Swait()
3011
				local PIECE = nil
3012
				if MRANDOM(1,5) == 1 then
3013
					for E = 1, #PARTS do
3014
						if MRANDOM(1,5) == 1 then
3015
							PIECE = PARTS[E]
3016
							table.remove(PARTS,E)
3017
							break
3018
						end
3019
					end
3020
				end
3021
				if PIECE ~= nil then
3022
					if PIECE.Name == "Head" then
3023
						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})
3024
					else
3025
						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})
3026
					end
3027
					PIECE:remove()
3028
				end
3029
			until #PARTS == 0
3030
		end))
3031
	end
3032
end
3033
3034
3035
function ApplyDamage3(Humanoid,Damage,TorsoPart)
3036
	local defence = Instance.new("BoolValue",Humanoid.Parent)
3037
	defence.Name = ("HitBy"..Player.Name)
3038
	game:GetService("Debris"):AddItem(defence, 0.001)
3039
	Damage = Damage * DAMAGEMULTIPLIER
3040
	if Humanoid.Health ~= 0 then
3041
		local CritChance = MRANDOM(1,100)
3042
		if Damage > Humanoid.Health then
3043
			Damage = math.ceil(Humanoid.Health)
3044
			if Damage == 0 then
3045
				Damage = 0.1
3046
			end
3047
		end
3048
		Humanoid.Health = Humanoid.Health - Damage
3049
	end
3050
end
3051
3052
function ApplyDamage3(Humanoid,Damage,TorsoPart)
3053
	local defence = Instance.new("BoolValue",Humanoid.Parent)
3054
	defence.Name = ("HitBy"..Player.Name)
3055
	game:GetService("Debris"):AddItem(defence, 0.001)
3056
	Damage = Damage * DAMAGEMULTIPLIER
3057
	if Humanoid.Health ~= 0 then
3058
		local CritChance = MRANDOM(1,100)
3059
		if Damage > Humanoid.Health then
3060
			Damage = math.ceil(Humanoid.Health)
3061
			if Damage == 0 then
3062
				Damage = 0.1
3063
			end
3064
		end
3065
		Humanoid.Health = Humanoid.Health - Damage
3066
	end
3067
end
3068
3069
function ApplyAoE3(POSITION,RANGE,MINDMG,MAXDMG,FLING,INSTAKILL)
3070
	local CHILDREN = workspace:GetDescendants()
3071
	for index, CHILD in pairs(CHILDREN) do
3072
		if CHILD.ClassName == "Model" and CHILD ~= Character and CHILD.Parent ~= Effects then
3073
			local HUM = CHILD:FindFirstChildOfClass("Humanoid")
3074
			if HUM then
3075
				local TORSO = CHILD:FindFirstChild("Torso") or CHILD:FindFirstChild("UpperTorso")
3076
				if TORSO then
3077
					if (TORSO.Position - POSITION).Magnitude <= RANGE then
3078
						if INSTAKILL == true then
3079
							CHILD:BreakJoints()
3080
						else
3081
							local DMG = MRANDOM(MINDMG,MAXDMG)
3082
							ApplyDamage(HUM,DMG,TORSO)
3083
						end
3084
						if FLING > 0 then
3085
							for _, c in pairs(CHILD:GetChildren()) do
3086
								if c:IsA("BasePart") then
3087
									local bv = Instance.new("BodyVelocity") 
3088
									bv.maxForce = Vector3.new(1e9, 1e9, 1e9)
3089
									bv.velocity = CF(POSITION,TORSO.Position).lookVector*FLING
3090
									bv.Parent = c
3091
									Debris:AddItem(bv,0.05)
3092
								end
3093
							end
3094
						end
3095
					end
3096
				end
3097
			end
3098
		end
3099
	end
3100
end
3101
3102
function CameraEnshaking(Length, Intensity)
3103
	coroutine.resume(coroutine.create(function()
3104
		local intensity = 1 * Intensity
3105
		local rotM = 0.01 * Intensity
3106
		for i = 0, Length, 0.1 do
3107
			Swait()
3108
			intensity = intensity - 0.05 * Intensity / Length
3109
			rotM = rotM - 5.0E-4 * Intensity / Length
3110
			Humanoid.CameraOffset = Vector3.new(RAD(MRANDOM(-intensity, intensity)), RAD(MRANDOM(-intensity, intensity)), RAD(MRANDOM(-intensity, intensity)))
3111
			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)
3112
		end
3113
		Humanoid.CameraOffset = Vector3.new(0, 0, 0)
3114
	end))
3115
end
3116
3117
function KillChildren(v)
3118
	v:BreakJoints()
3119
	for _, c in pairs(v:GetChildren()) do
3120
		if c:IsA("BasePart") then
3121
			if c.Transparency < 1 then
3122
				if c:FindFirstChildOfClass("Decal") then
3123
					c:FindFirstChildOfClass("Decal"):remove()
3124
				end
3125
				particles(c)
3126
				c.PE.Enabled = true
3127
				c.Parent = Effects
3128
				c.CanCollide = false
3129
				c.Material = "Neon"
3130
				c.Color = C3(0/255,0/255,255/255)
3131
				c.Transparency = 1
3132
				local grav = Instance.new("BodyPosition",c)
3133
				grav.P = 20000
3134
				grav.maxForce = Vector3.new(math.huge,math.huge,math.huge)
3135
				grav.position = c.Position + VT(MRANDOM(-5,5),MRANDOM(-5,5),MRANDOM(-5,5))
3136
				grav.Name = "GravityForce"
3137
				coroutine.resume(coroutine.create(function()
3138
					for i = 1, 20 do
3139
						Swait()
3140
						c.Transparency = c.Transparency + 1/20
3141
					end
3142
					c.PE.Enabled = false
3143
					Debris:AddItem(c,2)
3144
				end))
3145
			end
3146
		end
3147
	end
3148
end
3149
3150
function ApplyAoE(POSITION,RANGE)
3151
	local CHILDREN = workspace:GetDescendants()
3152
	for index, CHILD in pairs(CHILDREN) do
3153
		if CHILD.ClassName == "Model" and CHILD ~= Character then
3154
			local LISTED = false
3155
			for LIST = 1, #WHITELIST do
3156
				if WHITELIST[LIST] ~= nil then
3157
					if CHILD.Name == WHITELIST[LIST] then
3158
						LISTED = true
3159
					end
3160
				end
3161
			end
3162
			if LISTED == false then
3163
				local HUM = CHILD:FindFirstChildOfClass("Humanoid")
3164
				if HUM then
3165
					local TORSO = CHILD:FindFirstChild("Torso") or CHILD:FindFirstChild("UpperTorso")
3166
					if TORSO then
3167
						if (TORSO.Position - POSITION).Magnitude <= RANGE+TORSO.Size.Magnitude then
3168
							KillChildren(CHILD)
3169
						end
3170
					end
3171
				end
3172
			end
3173
		end
3174
	end
3175
end
3176
3177
function SpawnMeteor(POS,SIZE,ISDEBREE,ORIPOS)
3178
	coroutine.resume(coroutine.create(function()
3179
		local METEOR = IT("Model",Effects)
3180
		METEOR.Name = "Meteorite"
3181
		local CENTER = CreatePart(3, METEOR, "Granite", 0, 0, "Really black", "MeteorCenter", VT(5,5,5)*SIZE)
3182
		METEOR.PrimaryPart = CENTER
3183
		local PRT = CreatePart(3, METEOR, "Granite", 0, 0, "Really black", "MeteorCenter", VT(5,5,5)*SIZE)
3184
		PRT.CFrame = CENTER.CFrame*ANGLES(RAD(MRANDOM(0,360)),RAD(MRANDOM(0,360)),RAD(MRANDOM(0,360)))
3185
		for i = 1, 15 do
3186-
			local FIRE = CreatePart(3, METEOR, "Neon", 0, 0, "Navy blue", "Fire", VT(5.1,1,5.1)*SIZE)
3186+
			local FIRE = CreatePart(3, METEOR, "Neon", 0, 0, "Really black", "Fire", VT(5.1,1,5.1)*SIZE)
3187
			FIRE.CFrame = CENTER.CFrame*ANGLES(RAD(MRANDOM(0,360)),RAD(MRANDOM(0,360)),RAD(MRANDOM(0,360)))
3188
		end
3189
		if ISDEBREE ~= true then
3190
			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))))
3191
		else
3192
			METEOR:SetPrimaryPartCFrame(CF(ORIPOS,POS) * ANGLES(RAD(MRANDOM(0,360)),RAD(MRANDOM(0,360)),RAD(MRANDOM(0,360))))
3193
		end
3194
		local IMPACT = false
3195
		CreateSound(463593339, CENTER, 10, 0.6)
3196
		if SIZE >= 3.5 then
3197
			for i = 1, MRANDOM(3,7) do
3198
				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)
3199
			end
3200
		end
3201
		for i = 1, 200 do
3202
			Swait()
3203
			local HITFLOOR,HITPOS = Raycast(CENTER.Position, CF(CENTER.Position,POS).lookVector, 3, Character)
3204
			if HITFLOOR == nil then
3205
				local ORI = CENTER.Orientation
3206
				METEOR:SetPrimaryPartCFrame(CF(HITPOS) * ANGLES(RAD(MRANDOM(0,360)),RAD(MRANDOM(0,360)),RAD(MRANDOM(0,360))))
3207
			else
3208
				if HITFLOOR.Anchored == true then
3209
					CreateDebreeRing(HITFLOOR,HITPOS,30*SIZE,VT(6,6,6)*SIZE,5)
3210
					CreateFlyingDebree(HITFLOOR,CF(HITPOS),8,VT(4,4,4)*SIZE,5,175)
3211
				end
3212
				IMPACT = true
3213
				break
3214
			end
3215
		end
3216
		if IMPACT == true then
3217
			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})
3218
			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})
3219
			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})
3220
			ApplyAoE(CENTER.Position,30*SIZE)
3221
		end
3222
		METEOR:remove()
3223
	end))
3224
end
3225
3226
function ApplyAoE4(POSITION,RANGE,BRUTAL)
3227
	local CHILDREN = workspace:GetDescendants()
3228
	for index, CHILD in pairs(CHILDREN) do
3229
		if CHILD.ClassName == "Model" and CHILD ~= Character then
3230
			local HUM = CHILD:FindFirstChildOfClass("Humanoid")
3231
			if HUM then
3232
				local TORSO = CHILD:FindFirstChild("Torso") or CHILD:FindFirstChild("UpperTorso")
3233
				if TORSO then
3234
					if (TORSO.Position - POSITION).Magnitude <= RANGE then
3235
						if BRUTAL == true then
3236
							Kill(CHILD)
3237
						else
3238
							CHILD:BreakJoints()
3239
						end
3240
					end
3241
				end
3242
			end
3243
		end
3244
	end
3245
end
3246
3247
function Kill(Char)
3248
	local NewCharacter = IT("Model",Effects)
3249
	NewCharacter.Name = "Ow im ded ;-;"
3250
	for _, c in pairs(Char:GetDescendants()) do
3251
		if c:IsA("BasePart") and c.Transparency == 0 then
3252
			c:BreakJoints()
3253
			c.Material = "Glass"
3254
			c.Color = C3(0/255,0/255,255/255)
3255
			c.CanCollide = true
3256
			c.Transparency = 0.3
3257
			if c:FindFirstChildOfClass("SpecialMesh") then
3258
				c:FindFirstChildOfClass("SpecialMesh").TextureId = ""
3259
			end
3260
			if c.Name == "Head" then
3261
				c:ClearAllChildren()
3262
				c.Size = VT(c.Size.Y,c.Size.Y,c.Size.Y)
3263
			end
3264
			if c.ClassName == "MeshPart" then
3265
				c.TextureID = ""
3266
			end
3267
			if c:FindFirstChildOfClass("BodyPosition") then
3268
				c:FindFirstChildOfClass("BodyPosition"):remove()
3269
			end
3270
			if c:FindFirstChildOfClass("ParticleEmitter") then
3271
				c:FindFirstChildOfClass("ParticleEmitter"):remove()
3272
			end
3273
			c.Parent = NewCharacter
3274
			c.Name = "DeadPart"
3275
			c.Velocity = VT(MRANDOM(-45,45),MRANDOM(-45,45),MRANDOM(-45,45))/15
3276
			c.RotVelocity = VT(MRANDOM(-45,45),MRANDOM(-15,85),MRANDOM(-45,45))
3277
		end
3278
	end
3279
	Char:remove()
3280
	Debris:AddItem(NewCharacter,5)
3281
end
3282
3283
function ApplyAoE(POSITION,RANGE,BRUTAL)
3284
	local CHILDREN = workspace:GetDescendants()
3285
	for index, CHILD in pairs(CHILDREN) do
3286
		if CHILD.ClassName == "Model" and CHILD ~= Character then
3287
			local HUM = CHILD:FindFirstChildOfClass("Humanoid")
3288
			if HUM then
3289
				local TORSO = CHILD:FindFirstChild("Torso") or CHILD:FindFirstChild("UpperTorso")
3290
				if TORSO then
3291
					if (TORSO.Position - POSITION).Magnitude <= RANGE then
3292
						if BRUTAL == true then
3293
							Kill(CHILD)
3294
						else
3295
							CHILD:BreakJoints()
3296
						end
3297
					end
3298
				end
3299
			end
3300
		end
3301
	end
3302
end
3303
3304
function ApplyAoE(POSITION,RANGE,BRUTAL)
3305
	local CHILDREN = workspace:GetDescendants()
3306
	for index, CHILD in pairs(CHILDREN) do
3307
		if CHILD.ClassName == "Model" and CHILD ~= Character then
3308
			local HUM = CHILD:FindFirstChildOfClass("Humanoid")
3309
			if HUM then
3310
				local TORSO = CHILD:FindFirstChild("Torso") or CHILD:FindFirstChild("UpperTorso")
3311
				if TORSO then
3312
					if (TORSO.Position - POSITION).Magnitude <= RANGE then
3313
						if BRUTAL == true then
3314
							Kill(CHILD)
3315
						else
3316
							CHILD:BreakJoints()
3317
						end
3318
					end
3319
				end
3320
			end
3321
		end
3322
	end
3323
end
3324
3325
function Banish(Foe)
3326
	if Foe then
3327
		coroutine.resume(coroutine.create(function()
3328
			--if game.Players:FindFirstChild(Foe.Name) then
3329
				table.insert(TOBANISH,Foe.Name)
3330
				printbye(Foe.Name)
3331
			--end
3332
			Foe.Archivable = true
3333
			local CLONE = Foe:Clone()
3334
			Foe:Destroy()
3335
			CLONE.Parent = Effects
3336
			CLONE:BreakJoints()
3337
			local MATERIALS = {"Glass","Neon"}
3338
			for _, c in pairs(CLONE:GetDescendants()) do
3339
				if c:IsA("BasePart") then
3340
					if c.Name == "Torso" or c.Name == "UpperTorso" or c == CLONE.PrimaryPart then
3341
 						CreateSound(138271815, c, 10, 1, false)
3342
					end
3343
					c.Anchored = true
3344
					c.Transparency = c.Transparency + 0.2
3345
					c.Material = MATERIALS[MRANDOM(1,2)]
3346
					c.Color = C3(0/255,0/255,255/255)
3347
					if c.ClassName == "MeshPart" then
3348
						c.TextureID = ""
3349
					end
3350
					if c:FindFirstChildOfClass("SpecialMesh") then
3351
						c:FindFirstChildOfClass("SpecialMesh").TextureId = ""
3352
					end
3353
					if c:FindFirstChildOfClass("Decal") then
3354
						c:FindFirstChildOfClass("Decal"):remove()
3355
					end
3356
					c.Name = "Banished"
3357
					c.CanCollide = false
3358
				else
3359
					c:remove()
3360
				end
3361
			end
3362
			local A = false
3363
			for i = 1, 35 do
3364
				if A == false then
3365
					A = true
3366
				elseif A == true then
3367
					A = false
3368
				end
3369
				for _, c in pairs(CLONE:GetDescendants()) do
3370
					if c:IsA("BasePart") then
3371
						c.Anchored = true
3372
						c.Material = MATERIALS[MRANDOM(1,2)]
3373
						c.Transparency = c.Transparency + 0.8/35
3374
						if A == false then
3375
							c.CFrame = c.CFrame*CF(MRANDOM(-45,45)/45,MRANDOM(-45,45)/45,MRANDOM(-45,45)/45)
3376
						elseif A == true then
3377
							c.CFrame = c.CFrame*CF(MRANDOM(-45,45)/45,MRANDOM(-45,45)/45,MRANDOM(-45,45)/45)						
3378
						end
3379
					end
3380
				end
3381
				Swait()
3382
			end
3383
			CLONE:remove()
3384
		end))
3385
	end
3386
end
3387
3388
3389
function ApplyAoE(POSITION,RANGE,ISBANISH)
3390
	local CHILDREN = workspace:GetDescendants()
3391
	for index, CHILD in pairs(CHILDREN) do
3392
		if CHILD.ClassName == "Model" and CHILD ~= Character then
3393
			local HUM = CHILD:FindFirstChildOfClass("Humanoid")
3394
			if HUM then
3395
				local TORSO = CHILD:FindFirstChild("Torso") or CHILD:FindFirstChild("UpperTorso")
3396
				if TORSO then
3397
					if (TORSO.Position - POSITION).Magnitude <= RANGE then
3398
						if ISBANISH == true then
3399
							Banish(CHILD)
3400
						else
3401
							if ISBANISH == "Gravity" then
3402
								HUM.PlatformStand = true
3403
								if TORSO:FindFirstChild("V3BanishForce"..Player.Name) then
3404
									local grav = Instance.new("BodyPosition",TORSO)
3405
									grav.D = 15
3406
									grav.P = 20000
3407
									grav.maxForce = Vector3.new(math.huge,math.huge,math.huge)
3408
									grav.position = TORSO.Position
3409
									grav.Name = "V3BanishForce"..Player.Name
3410
								else
3411
									TORSO:FindFirstChild("V3BanishForce"..Player.Name).position = TORSO.Position+VT(0,0.3,0)
3412
									TORSO.RotVelocity = VT(MRANDOM(-25,25),MRANDOM(-25,25),MRANDOM(-25,25))
3413
								end
3414
							else
3415
								HUM.PlatformStand = false
3416
							end
3417
						end
3418
					elseif ISBANISH == "Gravity" then
3419
						if TORSO:FindFirstChild("V3BanishForce"..Player.Name) then
3420
							TORSO:FindFirstChild("V3BanishForce"..Player.Name):remove()
3421
							HUM.PlatformStand = false
3422
						end
3423
					end
3424
				end
3425
			end
3426
		end
3427
	end
3428
end
3429
3430
function SpawnSmite(POS)
3431
	local HITFLOOR,HITPOS = Raycast(POS+VT(0,1,0), (CF(POS, POS + VT(0, -1, 0))).lookVector, 100, Character)
3432
	local EMITPOS = HITPOS
3433
	if HITFLOOR ~= nil then
3434
		if HITFLOOR.Parent:FindFirstChildOfClass("Humanoid") then
3435
			HITFLOOR,HITPOS = Raycast(POS+VT(0,1,0), (CF(POS, POS + VT(0, -1, 0))).lookVector, 100, HITFLOOR.Parent)
3436
			EMITPOS = HITPOS
3437
		elseif HITFLOOR.Parent.Parent:FindFirstChildOfClass("Humanoid") then
3438
			HITFLOOR,HITPOS = Raycast(POS+VT(0,1,0), (CF(POS, POS + VT(0, -1, 0))).lookVector, 100, HITFLOOR.Parent.Parent)
3439
			EMITPOS = HITPOS
3440
		end
3441
	end
3442
	if HITFLOOR ~= nil then
3443
		ApplyAoE(EMITPOS,10)
3444
		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})
3445
		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})
3446
		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})
3447
		for i = 1, 5 do
3448
			local TOPOS = CF(EMITPOS)*ANGLES(RAD(MRANDOM(0,360)),RAD(MRANDOM(0,360)),RAD(MRANDOM(0,360)))*CF(0,0,12)
3449
			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})
3450
		end
3451
	end
3452
end
3453
3454
--//=================================\\
3455
--||	ATTACK FUNCTIONS AND STUFF
3456
--\\=================================//
3457
3458
function eh()
3459
	ATTACK = true
3460
	Rooted = false
3461
	Speed = 20
3462
		Swait()
3463
		local CHILDREN = workspace:GetDescendants()
3464
		for index, CHILD in pairs(CHILDREN) do
3465
			if CHILD.ClassName == "Model" and CHILD ~= Character then
3466
				local HUM = CHILD:FindFirstChildOfClass("Humanoid")
3467
				if HUM then
3468
					local TORSO = CHILD:FindFirstChild("Head")
3469
					if TORSO then
3470
						if (TORSO.Position - Head.Position).Magnitude <= 25 then
3471
							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})
3472
							TORSO:remove()
3473
							if CHILD:FindFirstChild("Torso") then
3474
								Ragdoll(CHILD,Torso,true)
3475
							elseif CHILD:FindFirstChild("UpperTorso") then
3476
								R15Ragdoll(CHILD,true)
3477
							end
3478
						end
3479
					end
3480
				end
3481
			end
3482
		end
3483
	for i=0, 0.3, 0.1 / Animation_Speed do
3484
		Swait()
3485
		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)	
3486
		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)
3487
		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)
3488
		LeftShoulder.C0 = Clerp(LeftShoulder.C0, CF(-1.5, 0.6, 0) * ANGLES(RAD(-45), RAD(0), RAD(45)) * LEFTSHOULDERC0, 0.25 / Animation_Speed)
3489
		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)
3490
		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)
3491
end
3492
	Speed = 20
3493
	ATTACK = false
3494
	Rooted = false
3495
end
3496
3497
function Taunt()
3498
	ATTACK = true
3499
	Rooted = true
3500
	        CreateSound("1238240145", Torso, 6, 0.9)
3501
		for i=0, 0.6, 0.1 / Animation_Speed do
3502
			Swait()
3503
		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)
3504
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)
3505
RightShoulder.C0 = Clerp(RightShoulder.C0, CF(1.5, 0.35, 0) * ANGLES(RAD(90), RAD(34), RAD(0)) * RIGHTSHOULDERC0, 0.15 / Animation_Speed)
3506
			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)
3507
		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)
3508
		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)
3509
		end
3510
		for i=0, 0.6, 0.1 / Animation_Speed do
3511
			Swait()
3512
		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)
3513
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)
3514
RightShoulder.C0 = Clerp(RightShoulder.C0, CF(1.5, 0.35, 0) * ANGLES(RAD(80), RAD(0), RAD(0)) * RIGHTSHOULDERC0, 0.15 / Animation_Speed)
3515
			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)
3516
		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)
3517
		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)
3518
		end
3519
		for i=0, 0.6, 0.1 / Animation_Speed do
3520
			Swait()
3521
		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)
3522
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)
3523
RightShoulder.C0 = Clerp(RightShoulder.C0, CF(1.5, 0.35, 0) * ANGLES(RAD(90), RAD(34), RAD(0)) * RIGHTSHOULDERC0, 0.15 / Animation_Speed)
3524
			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)
3525
		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)
3526
		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)
3527
		end
3528
		for i=0, 0.6, 0.1 / Animation_Speed do
3529
			Swait()
3530
		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)
3531
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)
3532
RightShoulder.C0 = Clerp(RightShoulder.C0, CF(1.5, 0.35, 0) * ANGLES(RAD(80), RAD(0), RAD(0)) * RIGHTSHOULDERC0, 0.15 / Animation_Speed)
3533
			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)
3534
		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)
3535
		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)
3536
		end
3537
		for i=0, 0.6, 0.1 / Animation_Speed do
3538
			Swait()
3539
		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)
3540
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)
3541
RightShoulder.C0 = Clerp(RightShoulder.C0, CF(1.5, 0.35, 0) * ANGLES(RAD(90), RAD(34), RAD(0)) * RIGHTSHOULDERC0, 0.15 / Animation_Speed)
3542
			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)
3543
		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)
3544
		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)
3545
		end
3546
		for i=0, 0.6, 0.1 / Animation_Speed do
3547
			Swait()
3548
		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)
3549
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)
3550
RightShoulder.C0 = Clerp(RightShoulder.C0, CF(1.5, 0.35, 0) * ANGLES(RAD(80), RAD(0), RAD(0)) * RIGHTSHOULDERC0, 0.15 / Animation_Speed)
3551
			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)
3552
		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)
3553
		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)
3554
		end
3555
	ATTACK = false
3556
	Rooted = false
3557
end
3558
3559
function TakeOnMe()
3560
	Speed = 16
3561
	local MEME = CreateSound(1171341451, Effects, 2, 1, false)
3562
	ATTACK = true
3563
	Rooted = false
3564
	local DANCE = true
3565
	local KEY = Mouse.KeyDown:connect(function(NEWKEY)
3566
		if NEWKEY == "p" then
3567
			DANCE = false
3568
		end
3569
	end)
3570
	PLAYSONG = false
3571
	while true do
3572
		for i = 1, 15 do
3573
			Swait()
3574
			MEME.Parent = Effects
3575
		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)
3576
		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)
3577
		RightShoulder.C0 = Clerp(RightShoulder.C0, CF(1.5, 0.5, 0) * ANGLES(RAD(0), RAD(0), RAD(12)) * RIGHTSHOULDERC0, 0.15 / Animation_Speed)
3578
		LeftShoulder.C0 = Clerp(LeftShoulder.C0, CF(-1.5, 0.5, 0) * ANGLES(RAD(0), RAD(0), RAD(-12)) * LEFTSHOULDERC0, 0.15 / Animation_Speed)
3579
		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)
3580
		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)
3581
		end
3582
		if DANCE == false then
3583
			break
3584
		end
3585
		for i = 1, 15 do
3586
			Swait()
3587
			MEME.Parent = Effects
3588
		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)
3589
			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)
3590
			if MRANDOM(1,7) == 1 then
3591
				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)
3592
			end			RightShoulder.C0 = Clerp(RightShoulder.C0, CF(1.5, 0.35, 0) * ANGLES(RAD(150), RAD(65), RAD(85)) * RIGHTSHOULDERC0, 0.15 / Animation_Speed)
3593
			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)
3594
		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)
3595
			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)
3596
		end
3597
	end
3598
	PLAYSONG = true
3599
	KEY:Disconnect()
3600
	MEME:remove()
3601
	Speed = 25
3602
	ATTACK = false
3603
	Rooted = false
3604
end
3605
3606
function Intro()
3607
	ATTACK = true
3608
	Rooted = true
3609
	local HITFLOOR,HITPOS = Raycast(RootPart.Position, (CF(RootPart.Position, RootPart.Position + VT(0, -1, 0))).lookVector, 4, Character)
3610
	local POSITION = CF(HITPOS)*ANGLES(RAD(0),RAD(0),RAD(0))*CF(0,1,0).p
3611
	for i=0, 6, 0.1 / Animation_Speed do
3612
		Swait()
3613
			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)
3614
			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)
3615
			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)
3616
			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)
3617
			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)
3618
			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)				
3619
	end
3620
	CreateSound(1208650519, Torso, 2, 0.8)
3621-
	CreateSound(333446256, Character, 10, 1)
3621+
	CreateSound(246480487, Character, 10, 1)
3622
	for i=0, 17, 0.1 / Animation_Speed do
3623
		Swait()
3624
			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)
3625
			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)
3626
			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)
3627
			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)
3628
			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)
3629
			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)				
3630
	end
3631
	CreateSound(1841058541,Character,3,1,false)
3632
	for i=0, 0.7, 0.1 / Animation_Speed do
3633
		Swait()
3634
			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)
3635
			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)
3636
			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)
3637
			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)
3638
			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)
3639
			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)				
3640
	end
3641-
	Head.Color = C3(0/255,0/255,255/255)
3641+
	Head.Color = C3(0/0,0/0,0/0)
3642-
	Torso.Color = C3(0/255,0/255,255/255)
3642+
	Torso.Color = C3(0/0,0/0,0/0)
3643-
	LeftArm.Color = C3(0/255,0/255,255/255)
3643+
	LeftArm.Color = C3(0/0,0/0,0/0)
3644-
	LeftLeg.Color = C3(0/255,0/255,255/255)
3644+
	LeftLeg.Color = C3(0/0,0/0,0/0)
3645-
	RightArm.Color = C3(0/255,0/255,255/255)
3645+
	RightArm.Color = C3(0/0,0/0,0/0)
3646-
	RightLeg.Color = C3(0/255,0/255,255/255)
3646+
	RightLeg.Color = C3(0/0,0/0,0/0)
3647-
	EXE.ShirtTemplate = "rbxassetid://760717023"
3647+
	EXE.ShirtTemplate = "rbxassetid://863473913"
3648-
	LOL.PantsTemplate = "rbxassetid://770508500"
3648+
	LOL.PantsTemplate = "rbxassetid:/0"
3649
	Gun.Parent = Character
3650
	tecks2.TextTransparency = 0
3651
	for i = 1, 100 do
3652
		Swait()
3653
		for _, c in pairs(Character:GetChildren()) do
3654
			if c.ClassName == "Part" and c.Name ~= "HumanoidRootPart" then
3655
				c.Transparency = 0
3656
			end
3657
		end
3658
		for _, c in pairs(Weapon:GetChildren()) do
3659
			if c.ClassName == "Part" and c.Name ~= "HumanoidRootPart" then
3660
				c.Transparency = 0
3661
			end
3662
		end
3663
	end
3664
	TRANSFORMED = true
3665
	ATTACK = false
3666
	Rooted = false
3667
end
3668
3669
function Shot()
3670
	ATTACK = true
3671
	Rooted = false
3672
	for i=0, 0.2, 0.05 / Animation_Speed do
3673
		Swait()
3674
		turnto(Mouse.Hit.p)
3675
		RootJoint.C0 = Clerp(RootJoint.C0,ROOTC0 * CF(0, 0, 0) * ANGLES(RAD(0), RAD(0), RAD(90)), 0.5 / Animation_Speed)
3676
		Neck.C0 = Clerp(Neck.C0, NECKC0 * CF(0, 0, 0) * ANGLES(RAD(0), RAD(0), RAD(-90)), 0.5 / Animation_Speed)
3677
		RightShoulder.C0 = Clerp(RightShoulder.C0, CF(1.5, 0.5, 0) * ANGLES(RAD(90), RAD(0), RAD(90)) * RIGHTSHOULDERC0, 0.5 / Animation_Speed)
3678
		LeftShoulder.C0 = Clerp(LeftShoulder.C0, CF(-1.5, 0.6, 0) * ANGLES(RAD(-45), RAD(0), RAD(45)) * LEFTSHOULDERC0, 0.5 / Animation_Speed)
3679
		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)
3680
		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)
3681
	end
3682
	repeat
3683
		for i=0, 0.2, 0.05 / Animation_Speed do
3684
			Swait()
3685
			turnto(Mouse.Hit.p)
3686
			RootJoint.C0 = Clerp(RootJoint.C0,ROOTC0 * CF(0, 0, 0) * ANGLES(RAD(0), RAD(0), RAD(90)), 0.5 / Animation_Speed)
3687
			Neck.C0 = Clerp(Neck.C0, NECKC0 * CF(0, 0, 0) * ANGLES(RAD(0), RAD(0), RAD(-90)), 0.5 / Animation_Speed)
3688
			RightShoulder.C0 = Clerp(RightShoulder.C0, CF(1.5, 0.5, 0) * ANGLES(RAD(90), RAD(0), RAD(90)) * RIGHTSHOULDERC0, 0.5 / Animation_Speed)
3689
			LeftShoulder.C0 = Clerp(LeftShoulder.C0, CF(-1.5, 0.6, 0) * ANGLES(RAD(-45), RAD(0), RAD(45)) * LEFTSHOULDERC0, 0.5 / Animation_Speed)
3690
			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)
3691
			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)
3692
		end
3693
		local HIT,POS = CastProperRay(Hole.Position, Mouse.Hit.p, 1000, Character)
3694
		SpawnTrail(Hole.Position,POS)
3695
		if HIT ~= nil then
3696
			if HIT.Parent ~= workspace and HIT.Parent.ClassName ~= "Folder" then
3697
				Banish(HIT.Parent)
3698
			end
3699
		end
3700
	Humanoid.CameraOffset = VT(MRANDOM(-5,5)/2.5,MRANDOM(-5,5)/2.5,MRANDOM(-5,5)/2.5)/30
3701
		for i=0, 0.2, 0.05 / Animation_Speed do
3702
			Swait()
3703
			RootJoint.C0 = Clerp(RootJoint.C0,ROOTC0 * CF(0, 0, 0) * ANGLES(RAD(0), RAD(0), RAD(90)), 0.5 / Animation_Speed)
3704
			Neck.C0 = Clerp(Neck.C0, NECKC0 * CF(0, 0, 0) * ANGLES(RAD(0), RAD(0), RAD(-90)), 0.25 / Animation_Speed)
3705
			RightShoulder.C0 = Clerp(RightShoulder.C0, CF(1.5, 0.5, 0) * ANGLES(RAD(90), RAD(15), RAD(90)) * RIGHTSHOULDERC0, 0.5 / Animation_Speed)
3706
			LeftShoulder.C0 = Clerp(LeftShoulder.C0, CF(-1.5, 0.6, 0) * ANGLES(RAD(-45), RAD(0), RAD(45)) * LEFTSHOULDERC0, 0.5 / Animation_Speed)
3707
			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)
3708
			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)
3709
		end
3710
	until KEYHOLD == false
3711
	ATTACK = false
3712
	Rooted = false
3713
end
3714
3715
function MagicMissiles()
3716
    ATTACK = true
3717
    Rooted = true
3718
    local SELECTING = true
3719
    local SPOTS = {}
3720
    coroutine.resume(coroutine.create(function()
3721
        local LOOP = 0
3722
        repeat
3723
            LOOP = LOOP + 1
3724
            Swait()
3725
            if LOOP >= 10 then
3726
                LOOP = 0
3727
                for i = 1, #SPOTS do
3728
                    if SPOTS[i] ~= nil then
3729
                      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})
3730
                        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})
3731
                    end
3732
                end
3733
            end
3734
            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)
3735
            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)
3736
            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)
3737
            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)
3738
            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)
3739
            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)
3740
        until SELECTING == false
3741
        Rooted = false
3742
        repeat
3743
            LOOP = LOOP + 1
3744
            Swait()
3745
            if LOOP >= 10 then
3746
                LOOP = 0
3747
                for i = 1, #SPOTS do
3748
                    if SPOTS[i] ~= nil then
3749
                        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})
3750
                        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})
3751
                    end
3752
                end
3753
            end
3754
            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)
3755
            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)
3756
            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)
3757
            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)
3758
            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)
3759
            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)
3760
        until ATTACK == false
3761
    end))
3762
    repeat
3763
        repeat Swait() until HOLD == true
3764
            local DIST = (RootPart.Position - Mouse.Hit.p).Magnitude
3765
            if DIST > 65 then
3766
                DIST = 65
3767
            end
3768
            local RAY,RAYPOS = Raycast(RootPart.Position, (CF(RootPart.Position, Mouse.Hit.p)).lookVector, DIST, workspace)
3769
            local HITFLOOR,HITPOS,NORMAL = Raycast(RAYPOS+VT(0,1,0), (CF(RAYPOS, RAYPOS + VT(0, -1, 0))).lookVector, 25*SIZE, Character)   
3770
            if HITFLOOR ~= nil then
3771
                table.insert(SPOTS,CF(HITPOS,HITPOS+NORMAL) * ANGLES(RAD(90), RAD(0), RAD(0)))
3772
            end
3773
        repeat Swait() until HOLD == false
3774
    until #SPOTS == 5
3775
    SELECTING = false
3776
    for i = 1, #SPOTS do
3777
        if SPOTS[i] ~= nil then
3778
            local POS = SPOTS[i]
3779
            coroutine.resume(coroutine.create(function()
3780
                local MISSILE = IT("Model",Effects)
3781
                MISSILE.Name = "Missile"
3782
                local BASEPART = CreatePart(3, MISSILE, "Neon", 0, 1, "Alder", "Part", VT(2,2,2))
3783
                MakeForm(BASEPART,"Cyl")
3784
                MISSILE.PrimaryPart = BASEPART
3785
                BASEPART.CFrame = POS*CF(0,-30*3,0)
3786
                local HEAD = CreatePart(3, MISSILE, "Neon", 0, 1, "Alder", "Part", VT(2,4,2))
3787
                MakeForm(HEAD,"Ball")
3788
                HEAD.CFrame = BASEPART.CFrame*CF(0,-1,0)
3789
                local TAIL = CreatePart(3, MISSILE, "Neon", 0, 1, "Alder", "Part", VT(2.5,0.1,2.5))
3790
                MakeForm(TAIL,"Cyl")
3791
                TAIL.CFrame = BASEPART.CFrame*CF(0,-1,0)
3792
                for i = 1, 10 do
3793
                    Swait()
3794
                    for _, c in pairs(MISSILE:GetChildren()) do
3795
                        if c.ClassName == "Part" then
3796
                            c.Transparency = c.Transparency - 1/10
3797
                        end
3798
                    end
3799
                end
3800
                for i = 1, 15*1.5 do
3801
                    Swait()
3802
                    MISSILE:SetPrimaryPartCFrame(BASEPART.CFrame*CF(0,1.35*3,0))
3803
                end
3804
                ApplyAoE(BASEPART.CFrame.p,20,35,45,75,false)
3805
                MISSILE:remove()
3806
            end))
3807
        end
3808
    end
3809
    wait(0.6)
3810
    ATTACK = false
3811
    Rooted = false
3812
end
3813
3814
function Shot2()
3815
	ATTACK = true
3816
	Rooted = false
3817
	for i=0, 0.2, 0.05 / Animation_Speed do
3818
		Swait()
3819
		turnto(Mouse.Hit.p)
3820
		RootJoint.C0 = Clerp(RootJoint.C0,ROOTC0 * CF(0, 0, 0) * ANGLES(RAD(0), RAD(0), RAD(90)), 0.5 / Animation_Speed)
3821
		Neck.C0 = Clerp(Neck.C0, NECKC0 * CF(0, 0, 0) * ANGLES(RAD(0), RAD(0), RAD(-90)), 0.5 / Animation_Speed)
3822
		RightShoulder.C0 = Clerp(RightShoulder.C0, CF(1.5, 0.5, 0) * ANGLES(RAD(90), RAD(0), RAD(90)) * RIGHTSHOULDERC0, 0.5 / Animation_Speed)
3823
		LeftShoulder.C0 = Clerp(LeftShoulder.C0, CF(-1.5, 0.6, 0) * ANGLES(RAD(-45), RAD(0), RAD(45)) * LEFTSHOULDERC0, 0.5 / Animation_Speed)
3824
		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)
3825
		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)
3826
	end
3827
	repeat
3828
		for i=0, 0.2, 0.05 / Animation_Speed do
3829
			Swait()
3830
			turnto(Mouse.Hit.p)
3831
			RootJoint.C0 = Clerp(RootJoint.C0,ROOTC0 * CF(0, 0, 0) * ANGLES(RAD(0), RAD(0), RAD(90)), 0.5 / Animation_Speed)
3832
			Neck.C0 = Clerp(Neck.C0, NECKC0 * CF(0, 0, 0) * ANGLES(RAD(0), RAD(0), RAD(-90)), 0.5 / Animation_Speed)
3833
			RightShoulder.C0 = Clerp(RightShoulder.C0, CF(1.5, 0.5, 0) * ANGLES(RAD(90), RAD(0), RAD(90)) * RIGHTSHOULDERC0, 0.5 / Animation_Speed)
3834
			LeftShoulder.C0 = Clerp(LeftShoulder.C0, CF(-1.5, 0.6, 0) * ANGLES(RAD(-45), RAD(0), RAD(45)) * LEFTSHOULDERC0, 0.5 / Animation_Speed)
3835
			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)
3836
			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)
3837
		end
3838
		local HIT,POS = CastProperRay(Hole.Position, Mouse.Hit.p, 1000, Character)
3839
		SpawnTrail(Hole.Position,POS)
3840
		if HIT ~= nil then
3841
			if HIT.Parent ~= workspace and HIT.Parent.ClassName ~= "Folder" then
3842
				Kill(HIT.Parent)
3843
			end
3844
		end
3845
	Humanoid.CameraOffset = VT(MRANDOM(-5,5)/2.5,MRANDOM(-5,5)/2.5,MRANDOM(-5,5)/2.5)/30
3846
		for i=0, 0.2, 0.05 / Animation_Speed do
3847
			Swait()
3848
			RootJoint.C0 = Clerp(RootJoint.C0,ROOTC0 * CF(0, 0, 0) * ANGLES(RAD(0), RAD(0), RAD(90)), 0.5 / Animation_Speed)
3849
			Neck.C0 = Clerp(Neck.C0, NECKC0 * CF(0, 0, 0) * ANGLES(RAD(0), RAD(0), RAD(-90)), 0.25 / Animation_Speed)
3850
			RightShoulder.C0 = Clerp(RightShoulder.C0, CF(1.5, 0.5, 0) * ANGLES(RAD(90), RAD(15), RAD(90)) * RIGHTSHOULDERC0, 0.5 / Animation_Speed)
3851
			LeftShoulder.C0 = Clerp(LeftShoulder.C0, CF(-1.5, 0.6, 0) * ANGLES(RAD(-45), RAD(0), RAD(45)) * LEFTSHOULDERC0, 0.5 / Animation_Speed)
3852
			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)
3853
			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)
3854
		end
3855
	until KEYHOLD == false
3856
	ATTACK = false
3857
	Rooted = false
3858
end
3859
3860
function AttackTemplate()
3861
	ATTACK = true
3862
	Rooted = false
3863
	for i=0, 1, 0.1 / Animation_Speed do
3864
		Swait()
3865
		RootJoint.C0 = Clerp(RootJoint.C0, ROOTC0 * CF(0, 0, 0) * ANGLES(RAD(0), RAD(0), RAD(90)), 0.5 / Animation_Speed)
3866
		Neck.C0 = Clerp(Neck.C0, NECKC0 * CF(0, 0, 0) * ANGLES(RAD(0), RAD(0), RAD(-90)), 0.5 / Animation_Speed)
3867
		RightShoulder.C0 = Clerp(RightShoulder.C0, CF(1.5, 0.5, 0) * ANGLES(RAD(90), RAD(0), RAD(90)) * RIGHTSHOULDERC0, 0.5 / Animation_Speed)
3868
		LeftShoulder.C0 = Clerp(LeftShoulder.C0, CF(-1.5, 0.6, 0) * ANGLES(RAD(-45), RAD(0), RAD(45)) * LEFTSHOULDERC0, 0.5 / Animation_Speed)
3869
		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)
3870
		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)
3871
	end
3872
	ATTACK = false
3873
	Rooted = false
3874
end
3875
3876
function Finisher()
3877
	local TARGET = Mouse.Target
3878
	if TARGET ~= nil then
3879
		if TARGET.Parent:FindFirstChildOfClass("Humanoid") then
3880
			local HUM = TARGET.Parent:FindFirstChildOfClass("Humanoid")
3881
			local ROOT = TARGET.Parent:FindFirstChild("HumanoidRootPart") or TARGET.Parent:FindFirstChild("Torso") or TARGET.Parent:FindFirstChild("UpperTorso")
3882
			if ROOT and HUM.Health > 0 then
3883
				local FOE = Mouse.Target.Parent
3884
				ATTACK = true
3885
				Rooted = true
3886
				RootPart.CFrame = ROOT.CFrame*CF(-1.35,0,4)
3887
				ROOT.Anchored = true
3888
				CreateSound(670796769, Torso, 9999, 0.6, false)
3889
				CreateSound(159882598, Torso, 5, 0.9, false)
3890
				for i=0, 0.4, 0.1 / Animation_Speed do
3891
					Swait()
3892
					RootJoint.C0 = Clerp(RootJoint.C0,ROOTC0 * CF(0, 0, 0) * ANGLES(RAD(0), RAD(0), RAD(0)), 1 / Animation_Speed)
3893
					Neck.C0 = Clerp(Neck.C0, NECKC0 * CF(0, 0, 0 + ((1) - 1)) * ANGLES(RAD(0), RAD(0), RAD(0)), 1 / Animation_Speed)
3894
					RightShoulder.C0 = Clerp(RightShoulder.C0, CF(1.5, 0.5, 0) * ANGLES(RAD(80), RAD(0), RAD(0)) * RIGHTSHOULDERC0, 1 / Animation_Speed)
3895
					LeftShoulder.C0 = Clerp(LeftShoulder.C0, CF(-1.5, 0.5, 0) * ANGLES(RAD(0), RAD(0), RAD(0)) * LEFTSHOULDERC0, 1 / Animation_Speed)
3896
					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)
3897
					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)
3898
				end
3899
				HUM.PlatformStand = true
3900
				ROOT.CFrame = ROOT.CFrame * CF(0,-2*ROOT.Size.Z,0) * ANGLES(RAD(-90), RAD(0), RAD(0))
3901
				coroutine.resume(coroutine.create(function()
3902
					Swait()
3903
					ROOT.Anchored = true
3904
				end))
3905
				RootPart.CFrame = RootPart.CFrame*CF(0,0,-0.6)
3906
				for i=0, 0.2, 0.1 / Animation_Speed do
3907
					Swait()
3908
					RootJoint.C0 = Clerp(RootJoint.C0,ROOTC0 * CF(0, 0, 0) * ANGLES(RAD(0), RAD(0), RAD(45)), 1 / Animation_Speed)
3909
					Neck.C0 = Clerp(Neck.C0, NECKC0 * CF(0, 0, 0 + ((1) - 1)) * ANGLES(RAD(0), RAD(0), RAD(-45)), 1 / Animation_Speed)
3910
					RightShoulder.C0 = Clerp(RightShoulder.C0, CF(1.5, 0.5, -0.5) * ANGLES(RAD(90), RAD(0), RAD(45)) * RIGHTSHOULDERC0, 1 / Animation_Speed)
3911
					LeftShoulder.C0 = Clerp(LeftShoulder.C0, CF(-1.5, 0.5, 0) * ANGLES(RAD(0), RAD(0), RAD(0)) * LEFTSHOULDERC0, 1 / Animation_Speed)
3912
					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)
3913
					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)
3914
				end
3915
				for i=0, 0.2, 0.1 / Animation_Speed do
3916
					Swait()
3917
					RootJoint.C0 = Clerp(RootJoint.C0,ROOTC0 * CF(0, 0, 0) * ANGLES(RAD(0), RAD(0), RAD(15)), 1 / Animation_Speed)
3918
					Neck.C0 = Clerp(Neck.C0, NECKC0 * CF(0, 0, 0 + ((1) - 1)) * ANGLES(RAD(0), RAD(0), RAD(-15)), 1 / Animation_Speed)
3919
					RightShoulder.C0 = Clerp(RightShoulder.C0, CF(1.5, 0.5, 0) * ANGLES(RAD(0), RAD(0), RAD(90)) * RIGHTSHOULDERC0, 1 / Animation_Speed)
3920
					LeftShoulder.C0 = Clerp(LeftShoulder.C0, CF(-1.5, 0.5, 0) * ANGLES(RAD(0), RAD(0), RAD(0)) * LEFTSHOULDERC0, 1 / Animation_Speed)
3921
					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)
3922
					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)
3923
				end
3924
				local AMMO = 6
3925
				local FIRING = true
3926
				local SHOOTING = false
3927
				local TIMER = 70
3928
				CreateSound(147722227, GunPoint, 6, 1.3, false)
3929
				for i=0, 0.2, 0.1 / Animation_Speed do
3930
					Swait()
3931
					RootJoint.C0 = Clerp(RootJoint.C0,ROOTC0 * CF(0, 0, 0) * ANGLES(RAD(0), RAD(0), RAD(45)), 1 / Animation_Speed)
3932
					Neck.C0 = Clerp(Neck.C0, NECKC0 * CF(0, 0, 0 + ((1) - 1)) * ANGLES(RAD(0), RAD(0), RAD(-45)), 1 / Animation_Speed)
3933
					RightShoulder.C0 = Clerp(RightShoulder.C0, CF(1.5, 0.5, 0) * ANGLES(RAD(30), RAD(0), RAD(45)) * RIGHTSHOULDERC0, 1 / Animation_Speed)
3934
					LeftShoulder.C0 = Clerp(LeftShoulder.C0, CF(-1.5, 0.5, 0) * ANGLES(RAD(0), RAD(0), RAD(0)) * LEFTSHOULDERC0, 1 / Animation_Speed)
3935
					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)
3936
					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)
3937
				end
3938
				for i = 1, 6 do
3939
					local GUNPOS = Hole.CFrame*CF(0, 0, 0).p
3940
					local DISTANCE = (FOE.Head.Position - GUNPOS).Magnitude
3941
					HUM.Health = HUM.Health/1.5
3942
					for i=0, 0.2, 0.1 / Animation_Speed do
3943
						Swait()
3944
					RootJoint.C0 = Clerp(RootJoint.C0,ROOTC0 * CF(0, 0, 0) * ANGLES(RAD(0), RAD(0), RAD(45)), 1 / Animation_Speed)
3945
					Neck.C0 = Clerp(Neck.C0, NECKC0 * CF(0, 0, 0 + ((1) - 1)) * ANGLES(RAD(0), RAD(0), RAD(-45)), 1 / Animation_Speed)
3946
					RightShoulder.C0 = Clerp(RightShoulder.C0, CF(1.5, 0.5, 0) * ANGLES(RAD(70), RAD(0), RAD(45)) * RIGHTSHOULDERC0, 1 / Animation_Speed)
3947
					LeftShoulder.C0 = Clerp(LeftShoulder.C0, CF(-1.5, 0.5, 0) * ANGLES(RAD(0), RAD(0), RAD(0)) * LEFTSHOULDERC0, 1 / Animation_Speed)
3948
					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)
3949
					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)
3950
				end
3951
					for i=0, 0.2, 0.1 / Animation_Speed do
3952
						Swait()
3953
					RootJoint.C0 = Clerp(RootJoint.C0,ROOTC0 * CF(0, 0, 0) * ANGLES(RAD(0), RAD(0), RAD(45)), 1 / Animation_Speed)
3954
					Neck.C0 = Clerp(Neck.C0, NECKC0 * CF(0, 0, 0 + ((1) - 1)) * ANGLES(RAD(0), RAD(0), RAD(-45)), 1 / Animation_Speed)
3955
					RightShoulder.C0 = Clerp(RightShoulder.C0, CF(1.5, 0.5, 0) * ANGLES(RAD(30), RAD(0), RAD(45)) * RIGHTSHOULDERC0, 1 / Animation_Speed)
3956
					LeftShoulder.C0 = Clerp(LeftShoulder.C0, CF(-1.5, 0.5, 0) * ANGLES(RAD(0), RAD(0), RAD(0)) * LEFTSHOULDERC0, 1 / Animation_Speed)
3957
					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)
3958
					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)
3959
					end
3960
				end
3961
				ApplyDamage(HUM,0,true)
3962
				FOE:BreakJoints()
3963
				ROOT.Anchored = false
3964
				for i=0, 0.3, 0.1 / Animation_Speed do
3965
					Swait()
3966
					RootJoint.C0 = Clerp(RootJoint.C0,ROOTC0 * CF(0, 0, 0) * ANGLES(RAD(0), RAD(0), RAD(0)), 1 / Animation_Speed)
3967
					Neck.C0 = Clerp(Neck.C0, NECKC0 * CF(0, 0, 0 + ((1) - 1)) * ANGLES(RAD(25), RAD(0), RAD(15)), 1 / Animation_Speed)
3968
					RightShoulder.C0 = Clerp(RightShoulder.C0, CF(1.5, 0.5, 0) * ANGLES(RAD(0), RAD(0), RAD(0)) * RIGHTSHOULDERC0, 1 / Animation_Speed)
3969
					LeftShoulder.C0 = Clerp(LeftShoulder.C0, CF(-1.525, 0.5, 0) * ANGLES(RAD(0), RAD(0), RAD(5)) * LEFTSHOULDERC0, 1 / Animation_Speed)
3970
					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)
3971
					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)
3972
				end
3973
				ATTACK = false
3974
				Rooted = false
3975
			end
3976
		end
3977
	end
3978
end
3979
3980
--//=================================\\
3981
--||	  ASSIGN THINGS TO KEYS
3982
--\\=================================//
3983
3984
function MouseDown(Mouse)
3985
	if ATTACK == false then
3986
	end
3987
end
3988
3989
function MouseUp(Mouse)
3990
HOLD = false
3991
end
3992
3993
function KeyDown(Key)
3994
	KEYHOLD = true
3995
     
3996
    if Key == "b" and ATTACK == false then
3997
		MagicMissiles()
3998
	end
3999
    
4000
    if Key == "z" and ATTACK == false then
4001
		Shot()
4002
	end
4003
4004
	if Key == "v" and ATTACK == false then
4005
		Shot2()
4006
	end
4007
4008
	if Key == "x" and ATTACK == false then
4009
                Finisher()
4010
	end
4011
4012
	if Key == "t" and ATTACK == false then
4013
               Taunt()
4014
	end
4015
4016
	if Key == "c" and ATTACK == false then
4017
                eh()
4018
	end
4019
end
4020
4021-
local OVMID = 561833161
4021+
local OVMID = 303535614
4022
local OVMPIT = 1
4023
local OVMVOL = 1
4024
plr.Chatted:connect(function(message)
4025
if ATTACK == false then
4026
if message:sub(1,5) == "play/" then
4027
OVMID = message:sub(6)
4028
newThemeCust("rbxassetid://"..OVMID,0,OVMPIT,OVMVOL)
4029
elseif message:sub(1,6) == "pitch/" then
4030
OVMPIT = message:sub(7)
4031
newTheme("rbxassetid://"..OVMID,0,OVMPIT,OVMVOL)
4032
elseif message:sub(1,4) == "vol/" then
4033
OVMVOL = message:sub(5)
4034
newTheme("rbxassetid://"..OVMID,0,OVMPIT,OVMVOL)
4035
elseif message:sub(1,7) == "sr/" then
4036
chatfunc("Skipped to "..message:sub(8).." out of "..math.floor(kan.TimeLength).." seconds.",MAINRUINCOLOR.Color,"Inverted","Arcade",1)
4037
newThemeCust("rbxassetid://"..OVMID,message:sub(8),OVMPIT,OVMVOL)
4038
elseif message:sub(1,9) == "te/" then
4039
chatfunc("Current time pos: "..math.floor(kan.TimePosition).." out of "..math.floor(kan.TimeLength).." seconds.",MAINRUINCOLOR.Color,"Inverted","Arcade",1)
4040
end
4041
end
4042
end)
4043
4044
function KeyUp(Key)
4045
	KEYHOLD = false
4046
end
4047
4048
	Mouse.Button1Down:connect(function(NEWKEY)
4049
		MouseDown(NEWKEY)
4050
	end)
4051
	Mouse.Button1Up:connect(function(NEWKEY)
4052
		MouseUp(NEWKEY)
4053
	end)
4054
	Mouse.KeyDown:connect(function(NEWKEY)
4055
		KeyDown(NEWKEY)
4056
	end)
4057
	Mouse.KeyUp:connect(function(NEWKEY)
4058
		KeyUp(NEWKEY)
4059
	end)
4060
4061
--//=================================\\
4062
--\\=================================//
4063
4064
4065
function unanchor()
4066
	if UNANCHOR == true then
4067
		g = Character:GetChildren()
4068
		for i = 1, #g do
4069
			if g[i].ClassName == "Part" then
4070
				g[i].Anchored = false
4071
			end
4072
		end
4073
	end
4074
end
4075
4076
4077
--//=================================\\
4078
--||	WRAP THE WHOLE SCRIPT UP
4079
--\\=================================//
4080
4081
Humanoid.Changed:connect(function(Jump)
4082
	if Jump == "Jump" and (Disable_Jump == true) then
4083
		Humanoid.Jump = false
4084
	end
4085
end)
4086
4087
local FF = IT("ForceField",Character)
4088
FF.Visible = false
4089
INSTANT = false
4090
Speed = 20
4091
4092
while true do
4093
	Swait()
4094
	SINE = SINE + CHANGE
4095
		ANIMATE.Parent = nil
4096
		local IDLEANIMATION = Humanoid:LoadAnimation(ROBLOXIDLEANIMATION)
4097
		IDLEANIMATION:Play()
4098
		if TRANSFORMED == true then
4099
			tecks2.TextTransparency = 0
4100
			for _, c in pairs(Character:GetChildren()) do
4101
				if c.ClassName == "Part" and c.Name ~= "HumanoidRootPart" then
4102
					c.Anchored = false
4103
					c.Transparency = 0
4104
				end
4105
			end
4106
			for _, c in pairs(Weapon:GetChildren()) do
4107
				if c.ClassName == "Part" then
4108
					c.Transparency = 0
4109
				end
4110
			end
4111
			local TORSOVELOCITY = (RootPart.Velocity * VT(1, 0, 1)).magnitude
4112
			local TORSOVERTICALVELOCITY = RootPart.Velocity.y
4113
			local LV = Torso.CFrame:pointToObjectSpace(Torso.Velocity - Torso.Position)
4114
			local HITFLOOR = Raycast(RootPart.Position, (CF(RootPart.Position, RootPart.Position + VT(0, -1, 0))).lookVector, 4 * Player_Size, Character)
4115
			local WALKSPEEDVALUE = 6 / (Humanoid.WalkSpeed / 16)
4116
			if ATTACK == false and VALUE2 == false then
4117
                            end
4118
			if ANIM == "Walk" and TORSOVELOCITY > 1 then
4119
				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)
4120
				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)
4121
				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)
4122
				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)
4123
			elseif (ANIM ~= "Walk") or (TORSOVELOCITY < 1) then
4124
				RootJoint.C1 = Clerp(RootJoint.C1, ROOTC0 * CF(0, 0, 0) * ANGLES(RAD(0), RAD(0), RAD(0)), 0.2 / Animation_Speed)
4125
				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)
4126
				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)
4127
				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)
4128
			end
4129
			if TORSOVERTICALVELOCITY > 1 and HITFLOOR == nil then
4130
				ANIM = "Jump"
4131
				if ATTACK == false then
4132
					RootJoint.C0 = Clerp(RootJoint.C0, ROOTC0 * CF(0, 0, 0) * ANGLES(RAD(0), RAD(0), RAD(0)), 0.2 / Animation_Speed)
4133
					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)
4134
					RightShoulder.C0 = Clerp(RightShoulder.C0, CF(1.5, 0.5, 0) * ANGLES(RAD(-40), RAD(0), RAD(20)) * RIGHTSHOULDERC0, 0.2 / Animation_Speed)
4135
					LeftShoulder.C0 = Clerp(LeftShoulder.C0, CF(-1.5, 0.5, 0) * ANGLES(RAD(-40), RAD(0), RAD(-20)) * LEFTSHOULDERC0, 0.2 / Animation_Speed)
4136
					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)
4137
					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)
4138
			       end
4139
			elseif TORSOVERTICALVELOCITY < -1 and HITFLOOR == nil then
4140
				ANIM = "Fall"
4141
				if ATTACK == false then
4142
					RootJoint.C0 = Clerp(RootJoint.C0, ROOTC0 * CF(0, 0, 0 ) * ANGLES(RAD(0), RAD(0), RAD(0)), 0.2 / Animation_Speed)
4143
					Neck.C0 = Clerp(Neck.C0, NECKC0 * CF(0, 0 , 0 + ((1) - 1)) * ANGLES(RAD(20), RAD(0), RAD(0)), 0.2 / Animation_Speed)
4144
					RightShoulder.C0 = Clerp(RightShoulder.C0, CF(1.5, 0.5, 0) * ANGLES(RAD(0), RAD(0), RAD(60)) * RIGHTSHOULDERC0, 0.2 / Animation_Speed)
4145
					LeftShoulder.C0 = Clerp(LeftShoulder.C0, CF(-1.5, 0.5, 0) * ANGLES(RAD(0), RAD(0), RAD(-60)) * LEFTSHOULDERC0, 0.2 / Animation_Speed)
4146
					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)
4147
					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)
4148
				end
4149
			elseif TORSOVELOCITY < 1 and HITFLOOR ~= nil then
4150
				ANIM = "Idle"
4151
				if ATTACK == false then
4152
			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)
4153
			if MRANDOM(1,7) == 1 then
4154
				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)
4155
			end		
4156
		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)
4157
		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)
4158
		LeftShoulder.C0 = Clerp(LeftShoulder.C0, CF(-1.5, 0.6, 0) * ANGLES(RAD(-45), RAD(0), RAD(45)) * LEFTSHOULDERC0, 0.25 / Animation_Speed)
4159
		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)
4160
		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)
4161
				end
4162
			elseif TORSOVELOCITY > 1 and HITFLOOR ~= nil then
4163
				ANIM = "Walk"
4164
				if ATTACK == false then
4165
					RootJoint.C0 = Clerp(RootJoint.C0,ROOTC0 * CF(0, 0, -0.1) * ANGLES(RAD(5), RAD(0), RAD(0)), 0.15 / Animation_Speed)
4166
			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)
4167
			if MRANDOM(1,7) == 1 then
4168
				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)
4169
			end
4170
					RightShoulder.C0 = Clerp(RightShoulder.C0, CF(1.5, 0.35, 0) * ANGLES(RAD(0), RAD(180), RAD(180)) * RIGHTSHOULDERC0, 0.15 / Animation_Speed)
4171
					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)
4172
					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)
4173
					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)
4174
				end
4175
			end
4176
		end
4177
	--end
4178
	Humanoid.DisplayDistanceType = "None"
4179
	unanchor()
4180
	Humanoid.MaxHealth = "inf"
4181
	Humanoid.Health = "inf"
4182
	if Rooted == false then
4183
		Disable_Jump = false
4184
		Humanoid.WalkSpeed = Speed
4185
	elseif Rooted == true then
4186
		Disable_Jump = true
4187
		Humanoid.WalkSpeed = 0
4188
	end
4189
	if Head:FindFirstChild("face") then
4190
		Head.face.Texture = "rbxassetid://403870689"
4191
	end
4192
	for _, c in pairs(Character:GetChildren()) do
4193
		if (c.ClassName == "Shirt" or c.ClassName == "Pants") and c.Name ~= "Cloth" then
4194
			c:remove()
4195
		end
4196
			if c:FindFirstChildOfClass("ParticleEmitter") then
4197
				c:FindFirstChildOfClass("ParticleEmitter"):remove()
4198
			end
4199
	end
4200
	local MATHS = {"0","1"}
4201
	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)]
4202
	Humanoid.PlatformStand = false
4203
	if INTRO == false and INSTANT == false then
4204
		INTRO = true
4205
		coroutine.resume(coroutine.create(function()
4206
			sick:Play()
4207
			Intro()
4208
		end))
4209
	end
4210
	if INSTANT == true then
4211
		if TRANSFORMED == false then
4212
			sick.TimePosition = 60
4213
			sick:Play()
4214
		end
4215
		TRANSFORMED = true
4216
	end
4217
	script.Parent = PlayerGui
4218
	Character.Parent = workspace
4219
	Humanoid.Parent = Character
4220
end
4221
--//=================================\\
4222
--\\=================================//
4223
4224
4225
4226
4227
4228
--//====================================================\\--
4229
--||			  		 END OF SCRIPT
4230
--\\====================================================//--