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