View difference between Paste ID: mKC8kx65 and TT3YREFu
SHOW: | | - or go back to the newest paste.
1
--------Edit by taishi-------
2
if game:GetService("RunService"):IsClient() then error("Script must be server-side in order to work; use h/ and not hl/") end
3
local Player,game,owner = owner,game
4
local RealPlayer = Player
5
do
6
	print("FE Compatibility code by Mokiros")
7
	local rp = RealPlayer
8
	script.Parent = rp.Character
9
	
10
	--RemoteEvent for communicating
11
	local Event = Instance.new("RemoteEvent")
12
	Event.Name = "UserInput_Event"
13
14
	--Fake event to make stuff like Mouse.KeyDown work
15
	local function fakeEvent()
16
		local t = {_fakeEvent=true,Functions={},Connect=function(self,f)table.insert(self.Functions,f) end}
17
		t.connect = t.Connect
18
		return t
19
	end
20
21
	--Creating fake input objects with fake variables
22
    local m = {Target=nil,Hit=CFrame.new(),KeyUp=fakeEvent(),KeyDown=fakeEvent(),Button1Up=fakeEvent(),Button1Down=fakeEvent()}
23
	local UIS = {InputBegan=fakeEvent(),InputEnded=fakeEvent()}
24
	local CAS = {Actions={},BindAction=function(self,name,fun,touch,...)
25
		CAS.Actions[name] = fun and {Name=name,Function=fun,Keys={...}} or nil
26
	end}
27
	--Merged 2 functions into one by checking amount of arguments
28
	CAS.UnbindAction = CAS.BindAction
29
30
	--This function will trigger the events that have been :Connect()'ed
31
	local function te(self,ev,...)
32
		local t = m[ev]
33
		if t and t._fakeEvent then
34
			for _,f in pairs(t.Functions) do
35
				f(...)
36
			end
37
		end
38
	end
39
	m.TrigEvent = te
40
	UIS.TrigEvent = te
41
42
	Event.OnServerEvent:Connect(function(plr,io)
43
	    if plr~=rp then return end
44
		m.Target = io.Target
45
		m.Hit = io.Hit
46
		if not io.isMouse then
47
			local b = io.UserInputState == Enum.UserInputState.Begin
48
			if io.UserInputType == Enum.UserInputType.MouseButton1 then
49
				return m:TrigEvent(b and "Button1Down" or "Button1Up")
50
			end
51
			for _,t in pairs(CAS.Actions) do
52
				for _,k in pairs(t.Keys) do
53
					if k==io.KeyCode then
54
						t.Function(t.Name,io.UserInputState,io)
55
					end
56
				end
57
			end
58
			m:TrigEvent(b and "KeyDown" or "KeyUp",io.KeyCode.Name:lower())
59
			UIS:TrigEvent(b and "InputBegan" or "InputEnded",io,false)
60
	    end
61
	end)
62
	Event.Parent = NLS([==[
63
	local Player = game:GetService("Players").LocalPlayer
64
	local Event = script:WaitForChild("UserInput_Event")
65
66
	local Mouse = Player:GetMouse()
67
	local UIS = game:GetService("UserInputService")
68
	local input = function(io,a)
69
		if a then return end
70
		--Since InputObject is a client-side instance, we create and pass table instead
71
		Event:FireServer({KeyCode=io.KeyCode,UserInputType=io.UserInputType,UserInputState=io.UserInputState,Hit=Mouse.Hit,Target=Mouse.Target})
72
	end
73
	UIS.InputBegan:Connect(input)
74
	UIS.InputEnded:Connect(input)
75
76
	local h,t
77
	--Give the server mouse data 30 times every second, but only if the values changed
78
	--If player is not moving their mouse, client won't fire events
79
	while wait(1/30) do
80
		if h~=Mouse.Hit or t~=Mouse.Target then
81
			h,t=Mouse.Hit,Mouse.Target
82
			Event:FireServer({isMouse=true,Target=t,Hit=h})
83
		end
84
	end]==],Player.Character)
85
86
	----Sandboxed game object that allows the usage of client-side methods and services
87
	--Real game object
88
	local _rg = game
89
90
	--Metatable for fake service
91
	local fsmt = {
92
		__index = function(self,k)
93
			local s = rawget(self,"_RealService")
94
			if s then return s[k] end
95
		end,
96
		__newindex = function(self,k,v)
97
			local s = rawget(self,"_RealService")
98
			if s then s[k]=v end
99
		end,
100
		__call = function(self,...)
101
			local s = rawget(self,"_RealService")
102
			if s then return s(...) end
103
		end
104
	}
105
	local function FakeService(t,RealService)
106
		t._RealService = typeof(RealService)=="string" and _rg:GetService(RealService) or RealService
107
		return setmetatable(t,fsmt)
108
	end
109
110
	--Fake game object
111
	local g = {
112
		GetService = function(self,s)
113
			return self[s]
114
		end,
115
		Players = FakeService({
116
			LocalPlayer = FakeService({GetMouse=function(self)return m end},Player)
117
		},"Players"),
118
		UserInputService = FakeService(UIS,"UserInputService"),
119
		ContextActionService = FakeService(CAS,"ContextActionService"),
120
	}
121
	rawset(g.Players,"localPlayer",g.Players.LocalPlayer)
122
	g.service = g.GetService
123
	
124
	g.RunService = FakeService({
125
		RenderStepped = _rg:GetService("RunService").Heartbeat,
126
		BindToRenderStep = function(self,name,_,fun)
127
128
		end,
129
		UnbindFromRenderStep = function(self,name)
130
			self._btrs[name]:Disconnect()
131
		end,
132
	},"RunService")
133
134
	setmetatable(g,{
135
		__index=function(self,s)
136
			return _rg:GetService(s) or typeof(_rg[s])=="function"
137
			and function(_,...)return _rg[s](_rg,...)end or _rg[s]
138
		end,
139
		__newindex = fsmt.__newindex,
140
		__call = fsmt.__call
141
	})
142
	--Changing owner to fake player object to support owner:GetMouse()
143
	game,owner = g,g.Players.LocalPlayer
144
end
145
146
--//====================================================\\--
147
--||			   CREATED BY SHACKLUSTER EDIT BY NAMECLAN edit2 by nobodyspecial11
148
--\\====================================================//--
149
local Player_Size = 1
150
script:ClearAllChildren()
151
wait(0.2)
152
153
Player = owner
154
PlayerGui = Player.PlayerGui
155
Cam = workspace.CurrentCamera
156
Backpack = Player.Backpack
157
Character = Player.Character
158
Humanoid = Character.Humanoid
159
Mouse = Player:GetMouse()
160
RootPart = Character["HumanoidRootPart"]
161
Torso = Character["Torso"]
162
Head = Character["Head"]
163
RightArm = Character["Right Arm"]
164
LeftArm = Character["Left Arm"]
165
RightLeg = Character["Right Leg"]
166
LeftLeg = Character["Left Leg"]
167
RootJoint = RootPart["RootJoint"]
168
Neck = Torso["Neck"]
169
RightShoulder = Torso["Right Shoulder"]
170
LeftShoulder = Torso["Left Shoulder"]
171
RightHip = Torso["Right Hip"]
172
LeftHip = Torso["Left Hip"]
173
local TIME = 0
174
local sick = Instance.new("Sound",Torso)
175
176
IT = Instance.new
177
CF = CFrame.new
178
VT = Vector3.new
179
RAD = math.rad
180
C3 = Color3.new
181
UD2 = UDim2.new
182
BRICKC = BrickColor.new
183
ANGLES = CFrame.Angles
184
EULER = CFrame.fromEulerAnglesXYZ
185
COS = math.cos
186
ACOS = math.acos
187
SIN = math.sin
188
ASIN = math.asin
189
ABS = math.abs
190
MRANDOM = math.random
191
FLOOR = math.floor
192
193
local naeeym2 = Instance.new("BillboardGui",Character)
194
naeeym2.AlwaysOnTop = true
195
naeeym2.Size = UDim2.new(7,35,3,15)
196
naeeym2.StudsOffset = Vector3.new(0,2,0)
197
naeeym2.MaxDistance = 75
198
naeeym2.Adornee = Character.Head
199
naeeym2.Name = "Name2"
200
local tecks2 = Instance.new("TextLabel",naeeym2)
201
tecks2.BackgroundTransparency = 1
202
tecks2.TextScaled = true
203
tecks2.BorderSizePixel = 0
204
tecks2.Text = "Amethyst Sin"
205
tecks2.Font = "ArialBold"
206
tecks2.TextSize = 30
207
tecks2.TextStrokeTransparency = 0
208
tecks2.TextColor3 = Color3.fromRGB(.5,0,.5)
209
tecks2.TextStrokeColor3 = Color3.fromRGB(.5,0,.5)
210
tecks2.Size = UDim2.new(1,0,0.5,0)
211
tecks2.Parent = naeeym2
212
213
--//=================================\\
214
--|| 	      USEFUL VALUES
215
--\\=================================//
216
217
Animation_Speed = 3
218
local FORCERESET = false
219
Frame_Speed = 1 / 60 -- (1 / 30) OR (1 / 60)
220
local Speed = 16
221
local ROOTC0 = CF(0, 0, 0) * ANGLES(RAD(-90), RAD(0), RAD(180))
222
local NECKC0 = CF(0, 1, 0) * ANGLES(RAD(-90), RAD(0), RAD(180))
223
local RIGHTSHOULDERC0 = CF(-0.5, 0, 0) * ANGLES(RAD(0), RAD(90), RAD(0))
224
local LEFTSHOULDERC0 = CF(0.5, 0, 0) * ANGLES(RAD(0), RAD(-90), RAD(0))
225
local DAMAGEMULTIPLIER = 1
226
local ANIM = "Idle"
227
local ATTACK = false
228
local EQUIPPED = false
229
local HOLD = false
230
local COMBO = 1
231
local Rooted = false
232
local SINE = 0
233
local KEYHOLD = false
234
local CHANGE = 2 / Animation_Speed
235
local WALKINGANIM = false
236
local VALUE1 = false
237
local VALUE2 = false
238
local ROBLOXIDLEANIMATION = IT("Animation")
239
ROBLOXIDLEANIMATION.Name = "Roblox Idle Animation"
240
ROBLOXIDLEANIMATION.AnimationId = "http://www.roblox.com/asset/?id=180435571"
241
--ROBLOXIDLEANIMATION.Parent = Humanoid
242
local WEAPONGUI = IT("ScreenGui", PlayerGui)
243
WEAPONGUI.Name = "BanishV3Gui"
244
local Weapon = IT("Model")
245
Weapon.Name = "Adds"
246
local Effects = IT("Folder", Weapon)
247
Effects.Name = "Effects"
248
local ANIMATOR = Humanoid.Animator
249
local ANIMATE = Character:FindFirstChild("Animate")
250
local UNANCHOR = true
251
local TOBANISH = {}
252
script.Parent = PlayerGui
253
254
--//=================================\\
255
--\\=================================//
256
257
258
--//=================================\\
259
--|| SAZERENOS' ARTIFICIAL HEARTBEAT
260
--\\=================================//
261
262
ArtificialHB = Instance.new("BindableEvent", script)
263
ArtificialHB.Name = "ArtificialHB"
264
265
script:WaitForChild("ArtificialHB")
266
267
frame = Frame_Speed
268
tf = 0
269
allowframeloss = false
270
tossremainder = false
271
lastframe = tick()
272
script.ArtificialHB:Fire()
273
274
game:GetService("RunService").Heartbeat:connect(function(s, p)
275
	tf = tf + s
276
	if tf >= frame then
277
		if allowframeloss then
278
			script.ArtificialHB:Fire()
279
			lastframe = tick()
280
		else
281
			for i = 1, math.floor(tf / frame) do
282
				script.ArtificialHB:Fire()
283
			end
284
		lastframe = tick()
285
		end
286
		if tossremainder then
287
			tf = 0
288
		else
289
			tf = tf - frame * math.floor(tf / frame)
290
		end
291
	end
292
end)
293
294
--//=================================\\
295
--\\=================================//
296
297
--//=================================\\
298
--|| 	      SOME FUNCTIONS
299
--\\=================================//
300
301
--Lightning({Material = "Neon", FadeIn = false, Color = C3(1,1,1), Start = Torso.Position, End = Mouse.Hit.p, SegmentL = 2, Thickness = 0.1, DoesFade = false, Ignore = Character, MaxDist = 400, Branches = false, FadeTime = 15, Thicken = false})
302
function Lightning(Table)
303
	local Color = Table.Color or C3(1,1,1)
304
	local StartPos = Table.Start or Torso.Position
305
	local EndPos = Table.End or Mouse.Hit.p
306
	local SegmentLength = Table.SegmentL or 2
307
	local Thickness = Table.Thickness or 0.1
308
	local Dissapear = Table.DoesFade or false
309
	local Parent = Table.Ignore or Character
310
	local MaxDist = Table.MaxDist or 400
311
	local Branches = Table.Branches or false
312
	local Thicken = Table.Thicken or false
313
	local FadeTime = Table.FadeTime or 15
314
	local FadeIn = Table.FadeIn or false
315
	local Material = Table.Material or "Neon"
316
	local HIT,HITPOS = CastProperRay(StartPos, EndPos, MaxDist, Parent)
317
	local DISTANCE = math.ceil((StartPos - HITPOS).Magnitude/((SegmentLength/SegmentLength)/1.5))
318
	local LIGHTNINGMODEL = IT("Model",Effects)
319
	LIGHTNINGMODEL.Name = "Lightning"
320
	local LastBolt = nil
321
	for E = 1, DISTANCE do
322
		local ExtraSize = 0
323
		if Thicken == true then
324
			ExtraSize = (DISTANCE-E)/15
325
		end
326
		local TRANSPARENCY = 0
327
		if FadeIn == true then
328
			TRANSPARENCY = 1-(E/(DISTANCE/1.5))
329
			if TRANSPARENCY < 0 then
330
				TRANSPARENCY = 0
331
			end
332
		end
333
		local PART = CreatePart(3, LIGHTNINGMODEL, Material, 0, TRANSPARENCY, BRICKC("Pearl"), "LightningPart"..E, VT(Thickness+ExtraSize,SegmentLength,Thickness+ExtraSize))
334
		PART.Color = Color
335
		MakeForm(PART,"Cyl")
336
		if LastBolt == nil then
337
			PART.CFrame = CF(StartPos,HITPOS)*ANGLES(RAD(90),RAD(0),RAD(0))*CF(0,-PART.Size.Y/2,0)
338
		else
339
			PART.CFrame = CF(LastBolt.CFrame*CF(0,-LastBolt.Size.Y/2,0).p,CF(HITPOS)*ANGLES(RAD(MRANDOM(0,360)),RAD(MRANDOM(0,360)),RAD(MRANDOM(0,360)))*CF(0,0,DISTANCE-E).p)*ANGLES(RAD(90),RAD(0),RAD(0))*CF(0,-PART.Size.Y/2,0)
340
		end
341
		LastBolt = PART
342
		if Branches == true and E < (DISTANCE-5) then
343
			local CHOICE = MRANDOM(1,7+((DISTANCE-E)*2))
344
			if CHOICE == 1 then
345
				local LASTBRANCH = nil
346
				for i = 1, MRANDOM(2,5) do
347
					local ExtraSize2 = 0
348
					if Thicken == true then
349
						ExtraSize = ((DISTANCE-E)/25)/i
350
					end
351
					local PART = CreatePart(3, LIGHTNINGMODEL, Material, 0, TRANSPARENCY, BRICKC("Pearl"), "Branch"..E.."-"..i, VT(Thickness+ExtraSize2,SegmentLength,Thickness+ExtraSize2))
352
					PART.Color = Color
353
					MakeForm(PART,"Cyl")
354
					if LASTBRANCH == nil then
355
						PART.CFrame = CF(LastBolt.CFrame*CF(0,-LastBolt.Size.Y/2,0).p,LastBolt.CFrame*CF(0,-LastBolt.Size.Y/2,0)*ANGLES(RAD(0),RAD(0),RAD(MRANDOM(0,360)))*CF(0,Thickness*7,0)*CF(0,0,-1).p)*ANGLES(RAD(90),RAD(0),RAD(0))*CF(0,-PART.Size.Y/2,0)
356
					else
357
						PART.CFrame = CF(LASTBRANCH.CFrame*CF(0,-LASTBRANCH.Size.Y/2,0).p,LASTBRANCH.CFrame*CF(0,-LASTBRANCH.Size.Y/2,0)*ANGLES(RAD(0),RAD(0),RAD(MRANDOM(0,360)))*CF(0,Thickness*3,0)*CF(0,0,-1).p)*ANGLES(RAD(90),RAD(0),RAD(0))*CF(0,-PART.Size.Y/2,0)
358
					end
359
					LASTBRANCH = PART
360
				end
361
			end
362
		end
363
	end
364
	if Dissapear == true then
365
		coroutine.resume(coroutine.create(function()
366
			for i = 1, FadeTime do
367
				Swait()
368
				for _, c in pairs(LIGHTNINGMODEL:GetChildren()) do
369
					if c.ClassName == "Part" then
370
						c.Transparency = c.Transparency + (i/FadeTime)/10
371
					end
372
				end
373
			end
374
			LIGHTNINGMODEL:remove()
375
		end))
376
	elseif Dissapear == false then
377
		Debris:AddItem(LIGHTNINGMODEL,0.1)
378
	end
379
	return {Hit = HIT,Pos = HITPOS,End = LastBolt.CFrame*CF(0,0,-LastBolt.Size.Z).p,LastBolt = LastBolt,Model = LIGHTNINGMODEL}
380
end
381
382
--Lightning({Color = C3(1,1,1), Start = Torso.Position, End = Mouse.Hit.p, SegmentL = 2, Thickness = 0.1, DoesFade = false, Ignore = Character, MaxDist = 9999, Branches = false})
383
function Lightning(Table)
384
	local Color = Table.Color or C3(1,1,1)
385
	local StartPos = Table.Start or Torso.Position
386
	local EndPos = Table.End or Mouse.Hit.p
387
	local SegmentLength = Table.SegmentL or 2
388
	local Thickness = Table.Thickness or 0.1
389
	local Dissapear = Table.DoesFade or false
390
	local Parent = Table.Ignore or Character
391
	local MaxDist = Table.MaxDist or 400
392
	local Branches = Table.Branches or false
393
	local HIT,HITPOS = CastProperRay(StartPos, EndPos, MaxDist, Parent)
394
	local DISTANCE = math.ceil((StartPos - HITPOS).Magnitude/SegmentLength)
395
	local LIGHTNINGMODEL = IT("Model",Effects)
396
	LIGHTNINGMODEL.Name = "Lightning"
397
	local LastBolt = nil
398
	for E = 1, DISTANCE do
399
		local ExtraSize = (DISTANCE-E)/15
400
		local PART = CreatePart(3, LIGHTNINGMODEL, "Neon", 0, 0, BRICKC("Pearl"), "LightningPart"..E, VT(Thickness+ExtraSize,SegmentLength,Thickness+ExtraSize))
401
		PART.Color = Color
402
		MakeForm(PART,"Cyl")
403
		if LastBolt == nil then
404
			PART.CFrame = CF(StartPos,HITPOS)*ANGLES(RAD(90),RAD(0),RAD(0))*CF(0,-PART.Size.Y/2,0)
405
		else
406
			PART.CFrame = CF(LastBolt.CFrame*CF(0,-LastBolt.Size.Y/2,0).p,CF(HITPOS)*ANGLES(RAD(MRANDOM(0,360)),RAD(MRANDOM(0,360)),RAD(MRANDOM(0,360)))*CF(0,0,SegmentLength/3+(DISTANCE-E)).p)*ANGLES(RAD(90),RAD(0),RAD(0))*CF(0,-PART.Size.Y/2,0)
407
		end
408
		LastBolt = PART
409
		if Branches == true then
410
			local CHOICE = MRANDOM(1,7+((DISTANCE-E)*2))
411
			if CHOICE == 1 then
412
				local LASTBRANCH = nil
413
				for i = 1, MRANDOM(2,5) do
414
					local ExtraSize2 = ((DISTANCE-E)/25)/i
415
					local PART = CreatePart(3, LIGHTNINGMODEL, "Neon", 0, 0, BRICKC("Pearl"), "Branch"..E.."-"..i, VT(Thickness+ExtraSize2,SegmentLength,Thickness+ExtraSize2))
416
					PART.Color = Color
417
					MakeForm(PART,"Cyl")
418
					if LASTBRANCH == nil then
419
						PART.CFrame = CF(LastBolt.CFrame*CF(0,-LastBolt.Size.Y/2,0).p,LastBolt.CFrame*CF(0,-LastBolt.Size.Y/2,0)*ANGLES(RAD(0),RAD(0),RAD(MRANDOM(0,360)))*CF(0,Thickness*7,0)*CF(0,0,-1).p)*ANGLES(RAD(90),RAD(0),RAD(0))*CF(0,-PART.Size.Y/2,0)
420
					else
421
						PART.CFrame = CF(LASTBRANCH.CFrame*CF(0,-LASTBRANCH.Size.Y/2,0).p,LASTBRANCH.CFrame*CF(0,-LASTBRANCH.Size.Y/2,0)*ANGLES(RAD(0),RAD(0),RAD(MRANDOM(0,360)))*CF(0,Thickness*3,0)*CF(0,0,-1).p)*ANGLES(RAD(90),RAD(0),RAD(0))*CF(0,-PART.Size.Y/2,0)
422
					end
423
					LASTBRANCH = PART
424
				end
425
			end
426
		end
427
	end
428
	if Dissapear == true then
429
		coroutine.resume(coroutine.create(function()
430
			for i = 1, 10 do
431
				Swait()
432
				for _, c in pairs(LIGHTNINGMODEL:GetChildren()) do
433
					if c.ClassName == "Part" then
434
						c.Transparency = i/10
435
					end
436
				end
437
			end
438
			LIGHTNINGMODEL:remove()
439
		end))
440
	elseif Dissapear == false then
441
		Debris:AddItem(LIGHTNINGMODEL,0.1)
442
	end
443
	return {End = LastBolt.CFrame*CF(0,0,-LastBolt.Size.Z/2).p,LastBolt = LastBolt,Model = LIGHTNINGMODEL}
444
end
445
446
--Lightning({Color = C3(1,1,1), Start = Torso.Position, End = Mouse.Hit.p, SegmentL = 2, Thickness = 0.1, DoesFade = false, Ignore = Character, MaxDist = 9999, Branches = false})
447
function Lightning(Table)
448
	local Color = Table.Color or C3(1,1,1)
449
	local StartPos = Table.Start or Torso.Position
450
	local EndPos = Table.End or Mouse.Hit.p
451
	local SegmentLength = Table.SegmentL or 2
452
	local Thickness = Table.Thickness or 0.1
453
	local Dissapear = Table.DoesFade or false
454
	local Parent = Table.Ignore or Character
455
	local MaxDist = Table.MaxDist or 400
456
	local Branches = Table.Branches or false
457
	local HIT,HITPOS = CastProperRay(StartPos, EndPos, MaxDist, Parent)
458
	local DISTANCE = math.ceil((StartPos - HITPOS).Magnitude/SegmentLength)
459
	local LIGHTNINGMODEL = IT("Model",Effects)
460
	LIGHTNINGMODEL.Name = "Lightning"
461
	local LastBolt = nil
462
	for E = 1, DISTANCE do
463
		local ExtraSize = (DISTANCE-E)/15
464
		local PART = CreatePart(3, LIGHTNINGMODEL, "Neon", 0, 0, BRICKC("Pearl"), "LightningPart"..E, VT(Thickness+ExtraSize,SegmentLength,Thickness+ExtraSize))
465
		PART.Color = Color
466
		MakeForm(PART,"Cyl")
467
		if LastBolt == nil then
468
			PART.CFrame = CF(StartPos,HITPOS)*ANGLES(RAD(90),RAD(0),RAD(0))*CF(0,-PART.Size.Y/2,0)
469
		else
470
			PART.CFrame = CF(LastBolt.CFrame*CF(0,-LastBolt.Size.Y/2,0).p,CF(HITPOS)*ANGLES(RAD(MRANDOM(0,360)),RAD(MRANDOM(0,360)),RAD(MRANDOM(0,360)))*CF(0,0,SegmentLength/3+(DISTANCE-E)).p)*ANGLES(RAD(90),RAD(0),RAD(0))*CF(0,-PART.Size.Y/2,0)
471
		end
472
		LastBolt = PART
473
		if Branches == true then
474
			local CHOICE = MRANDOM(1,7+((DISTANCE-E)*2))
475
			if CHOICE == 1 then
476
				local LASTBRANCH = nil
477
				for i = 1, MRANDOM(2,5) do
478
					local ExtraSize2 = ((DISTANCE-E)/25)/i
479
					local PART = CreatePart(3, LIGHTNINGMODEL, "Neon", 0, 0, BRICKC("Pearl"), "Branch"..E.."-"..i, VT(Thickness+ExtraSize2,SegmentLength,Thickness+ExtraSize2))
480
					PART.Color = Color
481
					MakeForm(PART,"Cyl")
482
					if LASTBRANCH == nil then
483
						PART.CFrame = CF(LastBolt.CFrame*CF(0,-LastBolt.Size.Y/2,0).p,LastBolt.CFrame*CF(0,-LastBolt.Size.Y/2,0)*ANGLES(RAD(0),RAD(0),RAD(MRANDOM(0,360)))*CF(0,Thickness*7,0)*CF(0,0,-1).p)*ANGLES(RAD(90),RAD(0),RAD(0))*CF(0,-PART.Size.Y/2,0)
484
					else
485
						PART.CFrame = CF(LASTBRANCH.CFrame*CF(0,-LASTBRANCH.Size.Y/2,0).p,LASTBRANCH.CFrame*CF(0,-LASTBRANCH.Size.Y/2,0)*ANGLES(RAD(0),RAD(0),RAD(MRANDOM(0,360)))*CF(0,Thickness*3,0)*CF(0,0,-1).p)*ANGLES(RAD(90),RAD(0),RAD(0))*CF(0,-PART.Size.Y/2,0)
486
					end
487
					LASTBRANCH = PART
488
				end
489
			end
490
		end
491
	end
492
	if Dissapear == true then
493
		coroutine.resume(coroutine.create(function()
494
			for i = 1, 10 do
495
				Swait()
496
				for _, c in pairs(LIGHTNINGMODEL:GetChildren()) do
497
					if c.ClassName == "Part" then
498
						c.Transparency = i/10
499
					end
500
				end
501
			end
502
			LIGHTNINGMODEL:remove()
503
		end))
504
	elseif Dissapear == false then
505
		Debris:AddItem(LIGHTNINGMODEL,0.1)
506
	end
507
	return {End = LastBolt.CFrame*CF(0,0,-LastBolt.Size.Z/2).p,LastBolt = LastBolt,Model = LIGHTNINGMODEL}
508
end
509
510
BaseLightning = IT("Part")
511
BaseLightning.Anchored = true
512
BaseLightning.CanCollide = false
513
BaseLightning.Material = "Neon"
514
local LightningBolts = {}
515
function Zap(Table)
516
	local StartPos, TargetPos, Character, Color = Table.StartPosition, Table.TargetPosition, Table.Character, Table.Color
517
	local Duration = Table.Duration or 2
518
	local Offset = Table.Offset or 2
519
	local Individualize = Table.Individualize or false
520
	local MaxRange = Table.MaxRange or 200
521
	local SegmentLength = Table.SegmentLength or 5
522
	local Transparency = Table.Transparency or 0
523
	local Ignore = Table.Ignore or {}
524
	local SIZE = Table.SIZE or 0.3
525
	if not (StartPos and TargetPos) or not Character then
526
		return
527
	end
528
	local LightningModel = IT("Folder", Effects)
529
	LightningModel.Name = "ZAPP"
530
	for i, v in pairs({Character, LightningModel}) do
531
		table.insert(Ignore, v)
532
	end
533
	local LastPos = StartPos
534
	local Direction = CFrame.new(StartPos, TargetPos).lookVector
535
	local RayHit, RayPos, RayNormal = CastZapRay(StartPos, Direction, MaxRange, Ignore, false)
536
	local RayLength = (StartPos - RayPos).Magnitude
537
	local Struck = false
538
	local TotalSegments = math.ceil(RayLength / SegmentLength)
539
	Direction = CFrame.new(StartPos, RayPos).lookVector
540
	local LightningBolt = IT("Model", Effects)
541
	LightningBolt.Name = "Lightning"
542
	LastBolt = LightningBolt
543
	Debris:AddItem(LightningBolt, Duration)
544
	LightningBolt.Parent = LightningModel
545
	for i = 1, TotalSegments do
546
		if not Struck then
547
			local Entropy = Vector3.new(math.random() * Offset * 2.5 - Offset, math.random() * Offset * 2.5 - Offset, math.random() * Offset * 2.5 - Offset)
548
			local NewPos = StartPos + Direction * (RayLength * (i / TotalSegments)) + Entropy
549
			local SegmentVec = NewPos - LastPos
550
			local RayHit, RayPos, RayNormal = CastZapRay(LastPos, SegmentVec.Unit, SegmentVec.Magnitude, {Character, LightningModel}, false)
551
			local RayVec = LastPos - RayPos
552
			local LightningPart = BaseLightning:Clone()
553
			LightningPart.BrickColor = BrickColor.new(Color)
554
			LightningPart.Transparency = Transparency
555
			LightningPart.Size = Vector3.new(SIZE, SIZE, RayVec.Magnitude)
556
			LightningPart.CFrame = CFrame.new(LastPos, RayPos) * CFrame.new(0, 0, -(RayVec.Magnitude / 2))
557
			local CylinderMesh = IT("CylinderMesh", LightningPart)
558
			local OrigCF = LightningPart.CFrame
559
			LightningPart.Size = Vector3.new(LightningPart.Size.X, LightningPart.Size.Z, LightningPart.Size.Y)
560
			LightningPart.CFrame = OrigCF * CFrame.Angles(math.pi / 2, 0, 0)
561
			LightningPart.Parent = LightningBolt
562
			LastPos = NewPos
563
		end
564
	end
565
	return {
566
		RayHit = RayHit,
567
		RayPos = RayPos,
568
		RayNormal = RayNormal,
569
		LightningModel = LightningModel
570
	}
571
end
572
573
function Raycast(POSITION, DIRECTION, RANGE, IGNOREDECENDANTS)
574
	return workspace:FindPartOnRay(Ray.new(POSITION, DIRECTION.unit * RANGE), IGNOREDECENDANTS)
575
end
576
577
function PositiveAngle(NUMBER)
578
	if NUMBER >= 0 then
579
		NUMBER = 0
580
	end
581
	return NUMBER
582
end
583
584
function NegativeAngle(NUMBER)
585
	if NUMBER <= 0 then
586
		NUMBER = 0
587
	end
588
	return NUMBER
589
end
590
591
function Swait(NUMBER)
592
	if NUMBER == 0 or NUMBER == nil then
593
		ArtificialHB.Event:wait()
594
	else
595
		for i = 1, NUMBER do
596
			ArtificialHB.Event:wait()
597
		end
598
	end
599
end
600
601
function CreateMesh(MESH, PARENT, MESHTYPE, MESHID, TEXTUREID, SCALE, OFFSET)
602
	local NEWMESH = IT(MESH)
603
	if MESH == "SpecialMesh" then
604
		NEWMESH.MeshType = MESHTYPE
605
		if MESHID ~= "nil" and MESHID ~= "" then
606
			NEWMESH.MeshId = "http://www.roblox.com/asset/?id="..MESHID
607
		end
608
		if TEXTUREID ~= "nil" and TEXTUREID ~= "" then
609
			NEWMESH.TextureId = "http://www.roblox.com/asset/?id="..TEXTUREID
610
		end
611
	end
612
	NEWMESH.Offset = OFFSET or VT(0, 0, 0)
613
	NEWMESH.Scale = SCALE
614
	NEWMESH.Parent = PARENT
615
	return NEWMESH
616
end
617
618
function CreatePart(FORMFACTOR, PARENT, MATERIAL, REFLECTANCE, TRANSPARENCY, BRICKCOLOR, NAME, SIZE, ANCHOR)
619
	local NEWPART = IT("Part")
620
	NEWPART.formFactor = FORMFACTOR
621
	NEWPART.Reflectance = REFLECTANCE
622
	NEWPART.Transparency = TRANSPARENCY
623
	NEWPART.CanCollide = false
624
	NEWPART.Locked = true
625
	NEWPART.Anchored = true
626
	if ANCHOR == false then
627
		NEWPART.Anchored = false
628
	end
629
	NEWPART.BrickColor = BRICKC(tostring(BRICKCOLOR))
630
	NEWPART.Name = NAME
631
	NEWPART.Size = SIZE
632
	NEWPART.Position = Torso.Position
633
	NEWPART.Material = MATERIAL
634
	NEWPART:BreakJoints()
635
	NEWPART.Parent = PARENT
636
	return NEWPART
637
end
638
639
	local function weldBetween(a, b)
640
	    local weldd = Instance.new("ManualWeld")
641
	    weldd.Part0 = a
642
	    weldd.Part1 = b
643
	    weldd.C0 = CFrame.new()
644
	    weldd.C1 = b.CFrame:inverse() * a.CFrame
645
	    weldd.Parent = a
646
	    return weldd
647
	end
648
649
650
function QuaternionFromCFrame(cf)
651
	local mx, my, mz, m00, m01, m02, m10, m11, m12, m20, m21, m22 = cf:components()
652
	local trace = m00 + m11 + m22
653
	if trace > 0 then 
654
		local s = math.sqrt(1 + trace)
655
		local recip = 0.5 / s
656
		return (m21 - m12) * recip, (m02 - m20) * recip, (m10 - m01) * recip, s * 0.5
657
	else
658
		local i = 0
659
		if m11 > m00 then
660
			i = 1
661
		end
662
		if m22 > (i == 0 and m00 or m11) then
663
			i = 2
664
		end
665
		if i == 0 then
666
			local s = math.sqrt(m00 - m11 - m22 + 1)
667
			local recip = 0.5 / s
668
			return 0.5 * s, (m10 + m01) * recip, (m20 + m02) * recip, (m21 - m12) * recip
669
		elseif i == 1 then
670
			local s = math.sqrt(m11 - m22 - m00 + 1)
671
			local recip = 0.5 / s
672
			return (m01 + m10) * recip, 0.5 * s, (m21 + m12) * recip, (m02 - m20) * recip
673
		elseif i == 2 then
674
			local s = math.sqrt(m22 - m00 - m11 + 1)
675
			local recip = 0.5 / s return (m02 + m20) * recip, (m12 + m21) * recip, 0.5 * s, (m10 - m01) * recip
676
		end
677
	end
678
end
679
 
680
function QuaternionToCFrame(px, py, pz, x, y, z, w)
681
	local xs, ys, zs = x + x, y + y, z + z
682
	local wx, wy, wz = w * xs, w * ys, w * zs
683
	local xx = x * xs
684
	local xy = x * ys
685
	local xz = x * zs
686
	local yy = y * ys
687
	local yz = y * zs
688
	local zz = z * zs
689
	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))
690
end
691
 
692
function QuaternionSlerp(a, b, t)
693
	local cosTheta = a[1] * b[1] + a[2] * b[2] + a[3] * b[3] + a[4] * b[4]
694
	local startInterp, finishInterp;
695
	if cosTheta >= 0.0001 then
696
		if (1 - cosTheta) > 0.0001 then
697
			local theta = ACOS(cosTheta)
698
			local invSinTheta = 1 / SIN(theta)
699
			startInterp = SIN((1 - t) * theta) * invSinTheta
700
			finishInterp = SIN(t * theta) * invSinTheta
701
		else
702
			startInterp = 1 - t
703
			finishInterp = t
704
		end
705
	else
706
		if (1 + cosTheta) > 0.0001 then
707
			local theta = ACOS(-cosTheta)
708
			local invSinTheta = 1 / SIN(theta)
709
			startInterp = SIN((t - 1) * theta) * invSinTheta
710
			finishInterp = SIN(t * theta) * invSinTheta
711
		else
712
			startInterp = t - 1
713
			finishInterp = t
714
		end
715
	end
716
	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
717
end
718
719
function Clerp(a, b, t)
720
	local qa = {QuaternionFromCFrame(a)}
721
	local qb = {QuaternionFromCFrame(b)}
722
	local ax, ay, az = a.x, a.y, a.z
723
	local bx, by, bz = b.x, b.y, b.z
724
	local _t = 1 - t
725
	return QuaternionToCFrame(_t * ax + t * bx, _t * ay + t * by, _t * az + t * bz, QuaternionSlerp(qa, qb, t))
726
end
727
728
function CreateFrame(PARENT, TRANSPARENCY, BORDERSIZEPIXEL, POSITION, SIZE, COLOR, BORDERCOLOR, NAME)
729
	local frame = IT("Frame")
730
	frame.BackgroundTransparency = TRANSPARENCY
731
	frame.BorderSizePixel = BORDERSIZEPIXEL
732
	frame.Position = POSITION
733
	frame.Size = SIZE
734
	frame.BackgroundColor3 = COLOR
735
	frame.BorderColor3 = BORDERCOLOR
736
	frame.Name = NAME
737
	frame.Parent = PARENT
738
	return frame
739
end
740
741
function CreateLabel(PARENT, TEXT, TEXTCOLOR, TEXTFONTSIZE, TEXTFONT, TRANSPARENCY, BORDERSIZEPIXEL, STROKETRANSPARENCY, NAME)
742
	local label = IT("TextLabel")
743
	label.BackgroundTransparency = 1
744
	label.Size = UD2(1, 0, 1, 0)
745
	label.Position = UD2(0, 0, 0, 0)
746
	label.TextColor3 = TEXTCOLOR
747
	label.TextStrokeTransparency = STROKETRANSPARENCY
748
	label.TextTransparency = TRANSPARENCY
749
	label.FontSize = TEXTFONTSIZE
750
	label.Font = TEXTFONT
751
	label.BorderSizePixel = BORDERSIZEPIXEL
752
	label.TextScaled = false
753
	label.Text = TEXT
754
	label.Name = NAME
755
	label.Parent = PARENT
756
	return label
757
end
758
759
function NoOutlines(PART)
760
	PART.TopSurface, PART.BottomSurface, PART.LeftSurface, PART.RightSurface, PART.FrontSurface, PART.BackSurface = 10, 10, 10, 10, 10, 10
761
end
762
763
function CreateWeldOrSnapOrMotor(TYPE, PARENT, PART0, PART1, C0, C1)
764
	local NEWWELD = IT(TYPE)
765
	NEWWELD.Part0 = PART0
766
	NEWWELD.Part1 = PART1
767
	NEWWELD.C0 = C0
768
	NEWWELD.C1 = C1
769
	NEWWELD.Parent = PARENT
770
	return NEWWELD
771
end
772
773
local S = IT("Sound")
774
function CreateSound(ID, PARENT, VOLUME, PITCH, DOESLOOP)
775
	local NEWSOUND = nil
776
	coroutine.resume(coroutine.create(function()
777
		NEWSOUND = S:Clone()
778
		NEWSOUND.Parent = PARENT
779
		NEWSOUND.Volume = VOLUME
780
		NEWSOUND.Pitch = PITCH
781
		NEWSOUND.SoundId = "http://www.roblox.com/asset/?id="..ID
782
		NEWSOUND:play()
783
		if DOESLOOP == true then
784
			NEWSOUND.Looped = true
785
		else
786
			repeat wait(1) until NEWSOUND.Playing == false or NEWSOUND.Parent ~= PARENT
787
			NEWSOUND:remove()
788
		end
789
	end))
790
	return NEWSOUND
791
end
792
793
function CFrameFromTopBack(at, top, back)
794
	local right = top:Cross(back)
795
	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)
796
end
797
798
--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})
799
function WACKYEFFECT(Table)
800
	local TYPE = (Table.EffectType or "Sphere")
801
	local SIZE = (Table.Size or VT(1,1,1))
802
	local ENDSIZE = (Table.Size2 or VT(0,0,0))
803
	local TRANSPARENCY = (Table.Transparency or 0)
804
	local ENDTRANSPARENCY = (Table.Transparency2 or 1)
805
	local CFRAME = (Table.CFrame or Torso.CFrame)
806
	local MOVEDIRECTION = (Table.MoveToPos or nil)
807
	local ROTATION1 = (Table.RotationX or 0)
808
	local ROTATION2 = (Table.RotationY or 0)
809
	local ROTATION3 = (Table.RotationZ or 0)
810
	local MATERIAL = (Table.Material or "Neon")
811
	local COLOR = (Table.Color or C3(1,1,1))
812
	local TIME = (Table.Time or 45)
813
	local SOUNDID = (Table.SoundID or nil)
814
	local SOUNDPITCH = (Table.SoundPitch or nil)
815
	local SOUNDVOLUME = (Table.SoundVolume or nil)
816
	coroutine.resume(coroutine.create(function()
817
		local PLAYSSOUND = false
818
		local SOUND = nil
819
		local EFFECT = CreatePart(3, Effects, MATERIAL, 0, TRANSPARENCY, BRICKC("Pearl"), "Effect", VT(1,1,1), true)
820
		if SOUNDID ~= nil and SOUNDPITCH ~= nil and SOUNDVOLUME ~= nil then
821
			PLAYSSOUND = true
822
			SOUND = CreateSound(SOUNDID, EFFECT, SOUNDVOLUME, SOUNDPITCH, false)
823
		end
824
		EFFECT.Color = COLOR
825
		local MSH = nil
826
		if TYPE == "Sphere" then
827
			MSH = CreateMesh("SpecialMesh", EFFECT, "Sphere", "", "", SIZE, VT(0,0,0))
828
		elseif TYPE == "Block" then
829
			MSH = IT("BlockMesh",EFFECT)
830
			MSH.Scale = VT(SIZE.X,SIZE.X,SIZE.X)
831
		elseif TYPE == "Wave" then
832
			MSH = CreateMesh("SpecialMesh", EFFECT, "FileMesh", "20329976", "", SIZE, VT(0,0,-SIZE.X/8))
833
		elseif TYPE == "Ring" then
834
			MSH = CreateMesh("SpecialMesh", EFFECT, "FileMesh", "559831844", "", VT(SIZE.X,SIZE.X,0.1), VT(0,0,0))
835
		elseif TYPE == "Slash" then
836
			MSH = CreateMesh("SpecialMesh", EFFECT, "FileMesh", "662586858", "", VT(SIZE.X/10,0,SIZE.X/10), VT(0,0,0))
837
		elseif TYPE == "Round Slash" then
838
			MSH = CreateMesh("SpecialMesh", EFFECT, "FileMesh", "662585058", "", VT(SIZE.X/10,0,SIZE.X/10), VT(0,0,0))
839
		elseif TYPE == "Swirl" then
840
			MSH = CreateMesh("SpecialMesh", EFFECT, "FileMesh", "1051557", "", SIZE, VT(0,0,0))
841
		elseif TYPE == "Skull" then
842
			MSH = CreateMesh("SpecialMesh", EFFECT, "FileMesh", "4770583", "", SIZE, VT(0,0,0))
843
		elseif TYPE == "Crystal" then
844
			MSH = CreateMesh("SpecialMesh", EFFECT, "FileMesh", "9756362", "", SIZE, VT(0,0,0))
845
		end
846
		if MSH ~= nil then
847
			local MOVESPEED = nil
848
			if MOVEDIRECTION ~= nil then
849
				MOVESPEED = (CFRAME.p - MOVEDIRECTION).Magnitude/TIME
850
			end
851
			local GROWTH = SIZE - ENDSIZE
852
			local TRANS = TRANSPARENCY - ENDTRANSPARENCY
853
			if TYPE == "Block" then
854
				EFFECT.CFrame = CFRAME*ANGLES(RAD(MRANDOM(0,360)),RAD(MRANDOM(0,360)),RAD(MRANDOM(0,360)))
855
			else
856
				EFFECT.CFrame = CFRAME
857
			end
858
			for LOOP = 1, TIME+1 do
859
				Swait()
860
				MSH.Scale = MSH.Scale - GROWTH/TIME
861
				if TYPE == "Wave" then
862
					MSH.Offset = VT(0,0,-MSH.Scale.X/8)
863
				end
864
				EFFECT.Transparency = EFFECT.Transparency - TRANS/TIME
865
				if TYPE == "Block" then
866
					EFFECT.CFrame = CFRAME*ANGLES(RAD(MRANDOM(0,360)),RAD(MRANDOM(0,360)),RAD(MRANDOM(0,360)))
867
				else
868
					EFFECT.CFrame = EFFECT.CFrame*ANGLES(RAD(ROTATION1),RAD(ROTATION2),RAD(ROTATION3))
869
				end
870
				if MOVEDIRECTION ~= nil then
871
					local ORI = EFFECT.Orientation
872
					EFFECT.CFrame = CF(EFFECT.Position,MOVEDIRECTION)*CF(0,0,-MOVESPEED)
873
					EFFECT.Orientation = ORI
874
				end
875
			end
876
			if PLAYSSOUND == false then
877
				EFFECT:remove()
878
			else
879
				SOUND.Stopped:Connect(function()
880
					EFFECT:remove()
881
				end)
882
			end
883
		else
884
			if PLAYSSOUND == false then
885
				EFFECT:remove()
886
			else
887
				repeat Swait() until SOUND.Playing == false
888
				EFFECT:remove()
889
			end
890
		end
891
	end))
892
end
893
894
function MakeForm(PART,TYPE)
895
	if TYPE == "Cyl" then
896
		local MSH = IT("CylinderMesh",PART)
897
	elseif TYPE == "Ball" then
898
		local MSH = IT("SpecialMesh",PART)
899
		MSH.MeshType = "Sphere"
900
	elseif TYPE == "Wedge" then
901
		local MSH = IT("SpecialMesh",PART)
902
		MSH.MeshType = "Wedge"
903
	end
904
end
905
906
function SpawnTrail(FROM,TO,BIG)
907
	local TRAIL = CreatePart(3, Effects, "Neon", 0, 0.5, "Royal purple", "Trail", VT(0,0,0))
908
	MakeForm(TRAIL,"Cyl")
909
	local DIST = (FROM - TO).Magnitude
910
	if BIG == true then
911
		TRAIL.Size = VT(0.5,DIST,0.5)
912
	else
913
		TRAIL.Size = VT(0.25,DIST,0.25)
914
	end
915
	TRAIL.CFrame = CF(FROM, TO) * CF(0, 0, -DIST/2) * ANGLES(RAD(90),RAD(0),RAD(0))
916
	coroutine.resume(coroutine.create(function()
917
		for i = 1, 5 do
918
			Swait()
919
			TRAIL.Transparency = TRAIL.Transparency + 0.1
920
		end
921
		TRAIL:remove()
922
	end))
923
end
924
925
Debris = game:GetService("Debris")
926
927
function CastProperRay(StartPos, EndPos, Distance, Ignore)
928
	local DIRECTION = CF(StartPos,EndPos).lookVector
929
	return Raycast(StartPos, DIRECTION, Distance, Ignore)
930
end
931
932
function turnto(position)
933
	RootPart.CFrame=CFrame.new(RootPart.CFrame.p,VT(position.X,RootPart.Position.Y,position.Z)) * CFrame.new(0, 0, 0)
934
end
935
local asd = Instance.new("ParticleEmitter")
936
asd.Color = ColorSequence.new(Color3.new(0.5, 0, 0), Color3.new(.3, 0, 0))
937
asd.LightEmission = .1
938
asd.Texture = "http://www.roblox.com/asset/?ID=291880914"
939
aaa = NumberSequence.new({NumberSequenceKeypoint.new(0, 0.6),NumberSequenceKeypoint.new(1, 2)})
940
bbb = NumberSequence.new({NumberSequenceKeypoint.new(0, 1),NumberSequenceKeypoint.new(0.0636, 0), NumberSequenceKeypoint.new(1, 1)})
941
asd.Transparency = bbb
942
asd.Size = aaa
943
asd.ZOffset = .9
944
asd.Acceleration = Vector3.new(0, -15, 0)
945
asd.LockedToPart = false
946
asd.EmissionDirection = "Back"
947
asd.Lifetime = NumberRange.new(1, 2)
948
asd.Rotation = NumberRange.new(-100, 100)
949
asd.RotSpeed = NumberRange.new(-100, 100)
950
asd.Speed = NumberRange.new(10)
951
asd.Enabled = false
952
asd.VelocitySpread = 999
953
954
function getbloody(victim,amount)
955
	local PART = CreatePart(3, Effects, "Metal", 0, 1, "Mid gray", "Blood", victim.Size)
956
	PART.CFrame = victim.CFrame
957
	local HITPLAYERSOUNDS = {"356551938","264486467"}
958
	Debris:AddItem(PART,5)
959
	CreateSound(HITPLAYERSOUNDS[MRANDOM(1, #HITPLAYERSOUNDS)], PART, 1, (math.random(8,12)/10))
960
	CreateSound(HITPLAYERSOUNDS[MRANDOM(1, #HITPLAYERSOUNDS)], PART, 1, (math.random(8,12)/10))
961
	CreateSound(HITPLAYERSOUNDS[MRANDOM(1, #HITPLAYERSOUNDS)], PART, 1, (math.random(8,12)/10))
962
	local prtcl = asd:Clone()
963
	prtcl.Parent = PART
964
	prtcl:Emit(amount*10)
965
end
966
967
local Particle = IT("ParticleEmitter",nil)
968
Particle.Enabled = false
969
Particle.Transparency = NumberSequence.new({NumberSequenceKeypoint.new(0,1),NumberSequenceKeypoint.new(0.3,0.95),NumberSequenceKeypoint.new(1,1)})
970
Particle.LightEmission = 0.5
971
Particle.Rate = 150
972
Particle.ZOffset = 1
973
Particle.Rotation = NumberRange.new(-180, 180)
974
Particle.RotSpeed = NumberRange.new(-180, 180)
975
Particle.Texture = "http://www.roblox.com/asset/?id=304437537"
976
Particle.Color = ColorSequence.new(C3(.5,0,.5),C3(.5,0,.5))
977
978
--ParticleEmitter({Speed = 5, Drag = 0, Size1 = 1, Size2 = 5, Lifetime1 = 1, Lifetime2 = 1.5, Parent = Torso, Emit = 100, Offset = 360, Enabled = false})
979
function ParticleEmitter(Table)
980
	local PRTCL = Particle:Clone()
981
	local Speed = Table.Speed or 5
982
	local Drag = Table.Drag or 0
983
	local Size1 = Table.Size1 or 1
984
	local Size2 = Table.Size2 or 5
985
	local Lifetime1 = Table.Lifetime1 or 1
986
	local Lifetime2 = Table.Lifetime2 or 1.5
987
	local Parent = Table.Parent or Torso
988
	local Emit = Table.Emit or 100
989
	local Offset = Table.Offset or 360
990
	local Acel = Table.Acel or VT(0,0,0)
991
	local Enabled = Table.Enabled or false
992
	PRTCL.Parent = Parent
993
	PRTCL.Size = NumberSequence.new(Size1,Size2)
994
	PRTCL.Lifetime = NumberRange.new(Lifetime1,Lifetime2)
995
	PRTCL.Speed = NumberRange.new(Speed)
996
	PRTCL.VelocitySpread = Offset
997
	PRTCL.Drag = Drag
998
	PRTCL.Acceleration = Acel
999
	if Enabled == false then
1000
		PRTCL:Emit(Emit)
1001
		Debris:AddItem(PRTCL,Lifetime2)
1002
	else
1003
		PRTCL.Enabled = true
1004
	end
1005
	return PRTCL
1006
end
1007
1008
function R_RANDOM(CFRAME,DIST)
1009
	return CFRAME*ANGLES(RAD(MRANDOM(0,360)),RAD(MRANDOM(0,360)),RAD(MRANDOM(0,360)))*CF(0,0,-DIST)
1010
end
1011
1012
function CharacterFade(COLOR,TIMER,MOVEDIRECTION,PARENT)
1013
	coroutine.resume(coroutine.create(function()
1014
		local FADE = IT("Model",Effects)
1015
		if PARENT ~= nil then
1016
			FADE.Parent = PARENT
1017
		end
1018
		FADE.Name = "FadingEffect"
1019
		for _, c in pairs(Character:GetChildren()) do
1020
			if c.ClassName == "Part" then
1021
				c.CanCollide = false
1022
				local FADER = CreatePart(3, FADE, "Neon", 0, 0.75, BRICKC("Royal purple"), c.Name, c.Size, true)
1023
				FADER.CFrame = c.CFrame
1024
				FADER.Color = COLOR
1025
				if FADER.Name == "Head" then
1026
					Head:FindFirstChildOfClass("SpecialMesh"):Clone().Parent = FADER
1027
				elseif FADER.Name == "HumanoidRootPart" then
1028
					FADE.PrimaryPart = FADER
1029
					FADER.Transparency = 1
1030
				end
1031
			end
1032
		end
1033
		local TRANS = 0.25/TIMER
1034
		local DIST = nil
1035
		if MOVEDIRECTION ~= nil then
1036
			DIST = (FADE.PrimaryPart.Position - MOVEDIRECTION).Magnitude
1037
		end
1038
		for i = 1, TIMER do
1039
			Swait()
1040
			for _, c in pairs(FADE:GetChildren()) do
1041
				if c.ClassName == "Part" then
1042
					c.Transparency = c.Transparency + TRANS
1043
				end
1044
			end
1045
			if MOVEDIRECTION ~= nil then
1046
				local ORI = FADE.PrimaryPart.Orientation
1047
				FADE:SetPrimaryPartCFrame(CF(CF(FADE.PrimaryPart.Position,MOVEDIRECTION)*CF(0,0,-DIST/TIMER).p) * ANGLES(RAD(ORI.X), RAD(ORI.Y), RAD(ORI.Z)))
1048
			end
1049
		end
1050
		FADE:remove()
1051
	end))
1052
end
1053
1054
1055
--//=================================\\
1056
--||	     WEAPON CREATION
1057
--\\=================================//
1058
1059
local SIZE = 1.25
1060
1061
local PRT = CreatePart(3, Character, "Fabric", 0, 0, "Royal purple", "Hood", VT(1,1,1),false)
1062
PRT.Color = C3(.5,0,.5)
1063
local HoodWeld = CreateWeldOrSnapOrMotor("Weld", Head, Head, PRT, CF(0,0.2,0), CF(0, 0, 0))
1064
CreateMesh("SpecialMesh", PRT, "FileMesh", "76062497", "", VT(1,1,1)*1.05, VT(0,0,0))
1065
local PRT = CreatePart(3, Character, "Fabric", 0, 0, "Royal purple", "Scarf", VT(1,1,1),false)
1066
PRT.Color = C3(.5,0,.5)
1067
CreateWeldOrSnapOrMotor("Weld", Torso, Torso, PRT, CF(0.05,0.4,-0.1) * ANGLES(RAD(-3), RAD(0), RAD(0)), CF(0, 0, 0))
1068
CreateMesh("SpecialMesh", PRT, "FileMesh", "99856331", "", VT(1.1,1,1.1), VT(0,0,0))
1069
for i = 1, 16 do
1070
	local FACE = CreatePart(3, Character, "Fabric", 0, 0+(i-1)/16.2, "Dark stone grey", "FaceGradient", VT(1.01,0.65,1.01),false)
1071
	FACE.Color = C3(0,0,0)
1072
	Head:FindFirstChildOfClass("SpecialMesh"):Clone().Parent = FACE
1073
	CreateWeldOrSnapOrMotor("Weld", Head, Head, FACE, CF(0,0.45-(i-1)/25,0), CF(0, 0, 0))
1074
end
1075
local LASTPART = Head
1076
for i = 1, 20 do
1077
	local MATH = (1-(i/25))
1078
	if LASTPART == Head then
1079
		local Horn = CreatePart(3, Character, "SmoothPlastic", 0, 0, "Royal purple", "Horn", VT(0.25*MATH,0.25,0.25*MATH),false)
1080
		CreateWeldOrSnapOrMotor("Weld", LASTPART, LASTPART, Horn, CF(0.3, 0.7, -0.35) * ANGLES(RAD(-55), RAD(15), RAD(-15)), CF(0, 0, 0))
1081
		LASTPART = Horn
1082
		Horn.Color = C3((i*3-3)/.5,0,.5)
1083
	else
1084
		local Horn = CreatePart(3, Character, "SmoothPlastic", 0, 0, "Royal purple", "Horn", VT(0.25*MATH,0.25,0.25*MATH),false)
1085
		CreateWeldOrSnapOrMotor("Weld", LASTPART, LASTPART, Horn, CF(0, Horn.Size.Y/1.8, 0) * ANGLES(RAD(6), RAD(-0.3), RAD(0)), CF(0, 0, 0))
1086
		LASTPART = Horn
1087
		Horn.Color = C3((i*3-3)/.5,0,.5)
1088
	end
1089
end
1090
local LASTPART = Head
1091
for i = 1, 20 do
1092
	local MATH = (1-(i/25))
1093
	if LASTPART == Head then
1094
		local Horn = CreatePart(3, Character, "SmoothPlastic", 0, 0, "Royal purple", "Horn", VT(0.25*MATH,0.25,0.25*MATH),false)
1095
		CreateWeldOrSnapOrMotor("Weld", LASTPART, LASTPART, Horn, CF(-0.3, 0.7, -0.35) * ANGLES(RAD(-55), RAD(-15), RAD(15)), CF(0, 0, 0))
1096
		LASTPART = Horn
1097
		Horn.Color = C3((i*3-3)/.5,0,.5)
1098
	else
1099
		local Horn = CreatePart(3, Character, "SmoothPlastic", 0, 0, "Royal purple", "Horn", VT(0.25*MATH,0.25,0.25*MATH),false)
1100
		CreateWeldOrSnapOrMotor("Weld", LASTPART, LASTPART, Horn, CF(0, Horn.Size.Y/1.8, 0) * ANGLES(RAD(6), RAD(0.3), RAD(0)), CF(0, 0, 0))
1101
		LASTPART = Horn
1102
		Horn.Color = C3((i*3-3)/.5,0,.5)
1103
	end
1104
end
1105
local Hair = CreatePart(3, Character, "Fabric", 0, 0, "Royal purple", "Hair", VT(1,1,1),false)
1106
local HairWeld1 = CreateWeldOrSnapOrMotor("Weld", Hair, Head, Hair, CF(0,0.1,-0.25) * ANGLES(RAD(0), RAD(0), RAD(0)), CF(0, 0, 0))
1107
CreateMesh("SpecialMesh", Hair, "FileMesh", "873651376", "", VT(0.025, 0.025, 0.02), VT(0,0,0))
1108
local Hair = CreatePart(3, Character, "Fabric", 0, 0, "Royal purple", "Hair", VT(1,1,1),false)
1109
local HairWeld2 = CreateWeldOrSnapOrMotor("Weld", Hair, Head, Hair, CF(0,0.2,-0.3) * ANGLES(RAD(0), RAD(0), RAD(0)), CF(0, 0, 0))
1110
CreateMesh("SpecialMesh", Hair, "FileMesh", "873651376", "", VT(0.03, 0.015, 0.01), VT(0,0,-0.1))
1111
1112
local Particle = IT("ParticleEmitter",nil)
1113
Particle.Enabled = false
1114
Particle.Transparency = NumberSequence.new({NumberSequenceKeypoint.new(0,0.3),NumberSequenceKeypoint.new(0.3,0),NumberSequenceKeypoint.new(1,1)})
1115
Particle.LightEmission = 0.5
1116
Particle.Rate = 150
1117
Particle.ZOffset = 0.2
1118
Particle.Rotation = NumberRange.new(-180, 180)
1119
Particle.RotSpeed = NumberRange.new(-180, 180)
1120
Particle.Texture = "http://www.roblox.com/asset/?id=304437537"
1121
Particle.Color = ColorSequence.new(C3(.5,0,.5),C3(.5,0,.5))
1122
1123
--ParticleEmitter({Speed = 5, Drag = 0, Size1 = 1, Size2 = 5, Lifetime1 = 1, Lifetime2 = 1.5, Parent = Torso, Emit = 100, Offset = 360, Enabled = false})
1124
function ParticleEmitter(Table)
1125
	local PRTCL = Particle:Clone()
1126
	local Speed = Table.Speed or 5
1127
	local Drag = Table.Drag or 0
1128
	local Size1 = Table.Size1 or 1
1129
	local Size2 = Table.Size2 or 5
1130
	local Lifetime1 = Table.Lifetime1 or 1
1131
	local Lifetime2 = Table.Lifetime2 or 1.5
1132
	local Parent = Table.Parent or Torso
1133
	local Emit = Table.Emit or 100
1134
	local Offset = Table.Offset or 360
1135
	local Acel = Table.Acel or VT(0,0,0)
1136
	local Enabled = Table.Enabled or false
1137
	PRTCL.Parent = Parent
1138
	PRTCL.Size = NumberSequence.new(Size1,Size2)
1139
	PRTCL.Lifetime = NumberRange.new(Lifetime1,Lifetime2)
1140
	PRTCL.Speed = NumberRange.new(Speed)
1141
	PRTCL.VelocitySpread = Offset
1142
	PRTCL.Drag = Drag
1143
	PRTCL.Acceleration = Acel
1144
	if Enabled == false then
1145
		PRTCL:Emit(Emit)
1146
		Debris:AddItem(PRTCL,Lifetime2)
1147
	else
1148
		PRTCL.Enabled = true
1149
	end
1150
	return PRTCL
1151
end
1152
1153
1154
1155
1156
1157
1158
1159
1160
local Handle = CreatePart(3, Weapon, "Metal", 0, 0, "Mid gray", "Part", VT(0.2,0.6,0.2),false)
1161
local RightArmGrasp = CreateWeldOrSnapOrMotor("Weld", Handle, RightArm, Handle, CF(0,-1, 0) * ANGLES(RAD(90), RAD(0), RAD(0)), CF(0, 0.21, 0))
1162
local Part = CreatePart(3, Weapon, "Metal", 0, 0, "Mid gray", "Part", VT(0.2,0.5,0.2),false)
1163
MakeForm(Part,"Wedge")
1164
CreateWeldOrSnapOrMotor("Weld", Handle, Handle, Part, CF(0, -0.3, 0.2) * ANGLES(RAD(0), RAD(180), RAD(0)), CF(0, 0, 0))
1165
local Part = CreatePart(3, Weapon, "Metal", 0, 0, "Mid gray", "Part", VT(0.2,0.3,0.2),false)
1166
MakeForm(Part,"Wedge")
1167
CreateWeldOrSnapOrMotor("Weld", Handle, Handle, Part, CF(0, -0.4, 0) * ANGLES(RAD(0), RAD(0), RAD(180)), CF(0, 0, 0))
1168
local Part = CreatePart(3, Weapon, "Metal", 0, 0, "Mid gray", "Part", VT(0.3,0.3,0.3),false)
1169
CreateWeldOrSnapOrMotor("Weld", Handle, Handle, Part, CF(0, -0.5, 0.2) * ANGLES(RAD(0), RAD(0), RAD(0)), CF(0, 0, 0))
1170
local Part = CreatePart(3, Weapon, "Metal", 0, 0, "Mid gray", "Part", VT(0.3,0.5,0.5),false)
1171
CreateWeldOrSnapOrMotor("Weld", Handle, Handle, Part, CF(0, -0.6, 0.5) * ANGLES(RAD(0), RAD(0), RAD(0)), CF(0, 0, 0))
1172
local Part = CreatePart(3, Weapon, "Metal", 0, 0, "Mid gray", "Part", VT(0.4,0.4,0.4),false)
1173
MakeForm(Part,"Cyl")
1174
CreateWeldOrSnapOrMotor("Weld", Handle, Handle, Part, CF(0, -0.6, 0.5) * ANGLES(RAD(90), RAD(0), RAD(0)), CF(0, 0, 0))
1175
for i = 1, 8 do
1176
	local Piece = CreatePart(3, Weapon, "Metal", 0, 0, "Mid gray", "Eye", VT(0,0.35,0.41),false)
1177
	CreateWeldOrSnapOrMotor("Weld", Handle, Part, Piece, CF(0, 0, 0) * ANGLES(RAD(0), RAD((360/8)*i), RAD(0)), CF(0, 0, 0))
1178
end
1179
local Part = CreatePart(3, Weapon, "Metal", 0, 0, "Mid gray", "Eye", VT(0.38,0.41,0.38),false)
1180
MakeForm(Part,"Cyl")
1181
CreateWeldOrSnapOrMotor("Weld", Handle, Handle, Part, CF(0, -0.6, 0.5) * ANGLES(RAD(90), RAD(0), RAD(0)), CF(0, 0, 0))
1182
local Part = CreatePart(3, Weapon, "Metal", 0, 0, "Mid gray", "Part", VT(0.37,0.5,0.37),false)
1183
MakeForm(Part,"Ball")
1184
CreateWeldOrSnapOrMotor("Weld", Handle, Handle, Part, CF(0, -0.6, 0.3) * ANGLES(RAD(90), RAD(0), RAD(0)), CF(0, 0, 0))
1185
local Part = CreatePart(3, Weapon, "Metal", 0, 0, "Mid gray", "Part", VT(0.2,0.7,0.4),false)
1186
MakeForm(Part,"Wedge")
1187
CreateWeldOrSnapOrMotor("Weld", Handle, Handle, Part, CF(0, -0.7, 0.5) * ANGLES(RAD(90), RAD(180), RAD(180)), CF(0, 0, 0))
1188
local Part = CreatePart(3, Weapon, "Metal", 0, 0, "Mid gray", "Part", VT(0.3,0.4,0.2),false)
1189
CreateWeldOrSnapOrMotor("Weld", Handle, Handle, Part, CF(0, -0.6, 0.7) * ANGLES(RAD(0), RAD(0), RAD(0)), CF(0, 0, 0))
1190
local Part = CreatePart(3, Weapon, "Metal", 0, 0, "Mid gray", "Part", VT(0.35,0.35,0.35),false)
1191
MakeForm(Part,"Cyl")
1192
CreateWeldOrSnapOrMotor("Weld", Handle, Handle, Part, CF(0, -0.6, 0.7) * ANGLES(RAD(90), RAD(0), RAD(0)), CF(0, 0, 0))
1193
local Part = CreatePart(3, Weapon, "Metal", 0, 0, "Mid gray", "Part", VT(0.5,0.1,0.5),false)
1194
MakeForm(Part,"Cyl")
1195
CreateWeldOrSnapOrMotor("Weld", Handle, Handle, Part, CF(0, -0.6, 1) * ANGLES(RAD(90), RAD(0), RAD(0)), CF(0, 0, 0))
1196
local Part = CreatePart(3, Weapon, "Metal", 0, 0, "Mid gray", "Part", VT(0.5,0.1,0.45),false)
1197
MakeForm(Part,"Cyl")
1198
CreateWeldOrSnapOrMotor("Weld", Handle, Handle, Part, CF(0, -0.6, 1.1) * ANGLES(RAD(90), RAD(0), RAD(0)), CF(0, 0, 0))
1199
local Part = CreatePart(3, Weapon, "Metal", 0, 0, "Mid gray", "Part", VT(0.2,0.5,0.2),false)
1200
MakeForm(Part,"Wedge")
1201
CreateWeldOrSnapOrMotor("Weld", Handle, Handle, Part, CF(0, -0.55, 0.2) * ANGLES(RAD(-135), RAD(0), RAD(0)), CF(0, -0.3, 0))
1202
local LASTPART = Handle
1203
for i = 1, 10 do
1204
	if LASTPART == Handle then
1205
		local Part = CreatePart(3, Weapon, "Metal", 0, 0, "Mid gray", "Part", VT(0.1,0.2,0),false)
1206
		LASTPART = Part
1207
		CreateWeldOrSnapOrMotor("Weld", Handle, Handle, Part, CF(0, -0.1, 0.2) * ANGLES(RAD(90), RAD(0), RAD(0)), CF(0, 0, 0))
1208
	else
1209
		local Part = CreatePart(3, Weapon, "Metal", 0, 0, "Mid gray", "Part", VT(0.1,0.05,0),false)
1210
		CreateWeldOrSnapOrMotor("Weld", Handle, LASTPART, Part, CF(0, 0.025, 0) * ANGLES(RAD(8), RAD(0), RAD(0)), CF(0, -0.025, 0))
1211
		LASTPART = Part
1212
	end
1213
end
1214
1215
local Barrel = CreatePart(3, Weapon, "Metal", 0, 0, "Mid gray", "Part", VT(0.15,2,0.15),false)
1216
MakeForm(Barrel,"Cyl")
1217
CreateWeldOrSnapOrMotor("Weld", Handle, Handle, Barrel, CF(0, -0.6, 1.8) * ANGLES(RAD(90), RAD(0), RAD(0)), CF(0, 0, 0))
1218
local Part = CreatePart(3, Weapon, "Metal", 0, 0, "Mid gray", "Part", VT(0.25,1,0.25),false)
1219
MakeForm(Part,"Cyl")
1220
CreateWeldOrSnapOrMotor("Weld", Handle, Barrel, Part, CF(0, -0.6, 0), CF(0, 0, 0))
1221
local Part = CreatePart(3, Weapon, "Metal", 0, 0, "Mid gray", "Part", VT(0,0.1,0.2),false)
1222
MakeForm(Part,"Wedge")
1223
CreateWeldOrSnapOrMotor("Weld", Handle, Barrel, Part, CF(0, 0.945, 0.1) * ANGLES(RAD(180), RAD(0), RAD(0)), CF(0, 0, 0))
1224
local Hole2 = CreatePart(3, Weapon, "Metal", 0, 0, "Mid gray", "Eye", VT(0.125,0,0.125),false)
1225
MakeForm(Hole2,"Cyl")
1226
CreateWeldOrSnapOrMotor("Weld", Handle, Barrel, Hole2, CF(0, 0.98, 0), CF(0, 0, 0))
1227
local Part = CreatePart(3, Weapon, "Metal", 0, 0, "Mid gray", "Part", VT(0,0,0),false)
1228
local GEARWELD = CreateWeldOrSnapOrMotor("Weld", Handle, Handle, Part, CF(0, -0.6, 0.7), CF(0, 0, 0))
1229
CreateMesh("SpecialMesh", Part, "FileMesh", 156292343, "", VT(0.8,0.8,1.5), VT(0,0,0.2))
1230
local Part = CreatePart(3, Weapon, "Metal", 0, 0.5, "Mid gray", "Eye", VT(0,0,0),false)
1231
local GEARWELD2 = CreateWeldOrSnapOrMotor("Weld", Handle, Handle, Part, CF(0, -0.6, 0.7), CF(0, 0, 0))
1232
CreateMesh("SpecialMesh", Part, "FileMesh", 156292343, "", VT(0.9,0.9,0.3), VT(0,0,0.2))
1233
coroutine.resume(coroutine.create(function()
1234
	while wait() do
1235
		GEARWELD.C0 = GEARWELD.C0 * ANGLES(RAD(0), RAD(0), RAD(5))
1236
		GEARWELD2.C0 = GEARWELD2.C0 * ANGLES(RAD(0), RAD(0), RAD(-5))
1237
	end
1238
end))
1239
1240
ParticleEmitter({Speed = 0.2, Drag = 0, Size1 = 0.1, Size2 = 0, Lifetime1 = 0.3, Lifetime2 = 0.5, Parent = Hole2, Emit = 100, Offset = 360, Enabled = true, Acel = VT(0,5,0)})
1241
--ParticleEmitter({Speed = 0.5, Drag = 0, Size1 = 0.2, Size2 = 0, Lifetime1 = 0.3, Lifetime2 = 0.7, Parent = Dangle, Emit = 100, Offset = 360, Enabled = true, Acel = VT(0,5,0)})
1242
1243
for _, c in pairs(Weapon:GetDescendants()) do
1244
	if c.ClassName == "Part" and c.Name ~= "Eye" and c.Parent ~= Effects and c.Parent.Parent ~= Effects then
1245
		c.Material = "Glass"
1246
		c.Color = C3(.5,0,.5)
1247
	elseif c.ClassName == "Part" and c.Name == "Eye" then
1248
		c.Color = C3(.5,0,.5)
1249
		c.Material = "Neon"
1250
	end
1251
end
1252
1253
Weapon.Parent = Character
1254
for _, c in pairs(Weapon:GetChildren()) do
1255
	if c.ClassName == "Part" then
1256
		c.CustomPhysicalProperties = PhysicalProperties.new(0, 0, 0, 0, 0)
1257
	end
1258
end
1259
1260
function ParticleEmitter(Table)
1261
	local PRTCL = Particle:Clone()
1262
	local Speed = Table.Speed or 5
1263
	local Drag = Table.Drag or 0
1264
	local Size1 = Table.Size1 or 1
1265
	local Size2 = Table.Size2 or 5
1266
	local Lifetime1 = Table.Lifetime1 or 1
1267
	local Lifetime2 = Table.Lifetime2 or 1.5
1268
	local Parent = Table.Parent or Torso
1269
	local Emit = Table.Emit or 100
1270
	local Offset = Table.Offset or 360
1271
	local Acel = Table.Acel or VT(0,0,0)
1272
	local Enabled = Table.Enabled or false
1273
	PRTCL.Parent = Parent
1274
	PRTCL.Size = NumberSequence.new(Size1,Size2)
1275
	PRTCL.Lifetime = NumberRange.new(Lifetime1,Lifetime2)
1276
	PRTCL.Speed = NumberRange.new(Speed)
1277
	PRTCL.VelocitySpread = Offset
1278
	PRTCL.Drag = Drag
1279
	PRTCL.Acceleration = Acel
1280
	if Enabled == false then
1281
		PRTCL:Emit(Emit)
1282
		Debris:AddItem(PRTCL,Lifetime2)
1283
	else
1284
		PRTCL.Enabled = true
1285
	end
1286
	return PRTCL
1287
end
1288
1289
local Handle = CreatePart(3, Weapon, "Metal", 0, 0, "Mid gray", "Part", VT(0.2,0.6,0.2),false)
1290
local RightArmGrasp = CreateWeldOrSnapOrMotor("Weld", Handle, LeftArm, Handle, CF(0,-1, 0) * ANGLES(RAD(90), RAD(0), RAD(0)), CF(0, 0.21, 0))
1291
local Part = CreatePart(3, Weapon, "Metal", 0, 0, "Mid gray", "Part", VT(0.2,0.5,0.2),false)
1292
MakeForm(Part,"Wedge")
1293
CreateWeldOrSnapOrMotor("Weld", Handle, Handle, Part, CF(0, -0.3, 0.2) * ANGLES(RAD(0), RAD(180), RAD(0)), CF(0, 0, 0))
1294
local Part = CreatePart(3, Weapon, "Metal", 0, 0, "Mid gray", "Part", VT(0.2,0.3,0.2),false)
1295
MakeForm(Part,"Wedge")
1296
CreateWeldOrSnapOrMotor("Weld", Handle, Handle, Part, CF(0, -0.4, 0) * ANGLES(RAD(0), RAD(0), RAD(180)), CF(0, 0, 0))
1297
local Part = CreatePart(3, Weapon, "Metal", 0, 0, "Mid gray", "Part", VT(0.3,0.3,0.3),false)
1298
CreateWeldOrSnapOrMotor("Weld", Handle, Handle, Part, CF(0, -0.5, 0.2) * ANGLES(RAD(0), RAD(0), RAD(0)), CF(0, 0, 0))
1299
local Part = CreatePart(3, Weapon, "Metal", 0, 0, "Mid gray", "Part", VT(0.3,0.5,0.5),false)
1300
CreateWeldOrSnapOrMotor("Weld", Handle, Handle, Part, CF(0, -0.6, 0.5) * ANGLES(RAD(0), RAD(0), RAD(0)), CF(0, 0, 0))
1301
local Part = CreatePart(3, Weapon, "Metal", 0, 0, "Mid gray", "Part", VT(0.4,0.4,0.4),false)
1302
MakeForm(Part,"Cyl")
1303
CreateWeldOrSnapOrMotor("Weld", Handle, Handle, Part, CF(0, -0.6, 0.5) * ANGLES(RAD(90), RAD(0), RAD(0)), CF(0, 0, 0))
1304
for i = 1, 8 do
1305
	local Piece = CreatePart(3, Weapon, "Metal", 0, 0, "Mid gray", "Eye", VT(0,0.35,0.41),false)
1306
	CreateWeldOrSnapOrMotor("Weld", Handle, Part, Piece, CF(0, 0, 0) * ANGLES(RAD(0), RAD((360/8)*i), RAD(0)), CF(0, 0, 0))
1307
end
1308
local Part = CreatePart(3, Weapon, "Metal", 0, 0, "Mid gray", "Eye", VT(0.38,0.41,0.38),false)
1309
MakeForm(Part,"Cyl")
1310
CreateWeldOrSnapOrMotor("Weld", Handle, Handle, Part, CF(0, -0.6, 0.5) * ANGLES(RAD(90), RAD(0), RAD(0)), CF(0, 0, 0))
1311
local Part = CreatePart(3, Weapon, "Metal", 0, 0, "Mid gray", "Part", VT(0.37,0.5,0.37),false)
1312
MakeForm(Part,"Ball")
1313
CreateWeldOrSnapOrMotor("Weld", Handle, Handle, Part, CF(0, -0.6, 0.3) * ANGLES(RAD(90), RAD(0), RAD(0)), CF(0, 0, 0))
1314
local Part = CreatePart(3, Weapon, "Metal", 0, 0, "Mid gray", "Part", VT(0.2,0.7,0.4),false)
1315
MakeForm(Part,"Wedge")
1316
CreateWeldOrSnapOrMotor("Weld", Handle, Handle, Part, CF(0, -0.7, 0.5) * ANGLES(RAD(90), RAD(180), RAD(180)), CF(0, 0, 0))
1317
local Part = CreatePart(3, Weapon, "Metal", 0, 0, "Mid gray", "Part", VT(0.3,0.4,0.2),false)
1318
CreateWeldOrSnapOrMotor("Weld", Handle, Handle, Part, CF(0, -0.6, 0.7) * ANGLES(RAD(0), RAD(0), RAD(0)), CF(0, 0, 0))
1319
local Part = CreatePart(3, Weapon, "Metal", 0, 0, "Mid gray", "Part", VT(0.35,0.35,0.35),false)
1320
MakeForm(Part,"Cyl")
1321
CreateWeldOrSnapOrMotor("Weld", Handle, Handle, Part, CF(0, -0.6, 0.7) * ANGLES(RAD(90), RAD(0), RAD(0)), CF(0, 0, 0))
1322
local Part = CreatePart(3, Weapon, "Metal", 0, 0, "Mid gray", "Part", VT(0.5,0.1,0.5),false)
1323
MakeForm(Part,"Cyl")
1324
CreateWeldOrSnapOrMotor("Weld", Handle, Handle, Part, CF(0, -0.6, 1) * ANGLES(RAD(90), RAD(0), RAD(0)), CF(0, 0, 0))
1325
local Part = CreatePart(3, Weapon, "Metal", 0, 0, "Mid gray", "Part", VT(0.5,0.1,0.45),false)
1326
MakeForm(Part,"Cyl")
1327
CreateWeldOrSnapOrMotor("Weld", Handle, Handle, Part, CF(0, -0.6, 1.1) * ANGLES(RAD(90), RAD(0), RAD(0)), CF(0, 0, 0))
1328
local Part = CreatePart(3, Weapon, "Metal", 0, 0, "Mid gray", "Part", VT(0.2,0.5,0.2),false)
1329
MakeForm(Part,"Wedge")
1330
CreateWeldOrSnapOrMotor("Weld", Handle, Handle, Part, CF(0, -0.55, 0.2) * ANGLES(RAD(-135), RAD(0), RAD(0)), CF(0, -0.3, 0))
1331
local LASTPART = Handle
1332
for i = 1, 10 do
1333
	if LASTPART == Handle then
1334
		local Part = CreatePart(3, Weapon, "Metal", 0, 0, "Mid gray", "Part", VT(0.1,0.2,0),false)
1335
		LASTPART = Part
1336
		CreateWeldOrSnapOrMotor("Weld", Handle, Handle, Part, CF(0, -0.1, 0.2) * ANGLES(RAD(90), RAD(0), RAD(0)), CF(0, 0, 0))
1337
	else
1338
		local Part = CreatePart(3, Weapon, "Metal", 0, 0, "Mid gray", "Part", VT(0.1,0.05,0),false)
1339
		CreateWeldOrSnapOrMotor("Weld", Handle, LASTPART, Part, CF(0, 0.025, 0) * ANGLES(RAD(8), RAD(0), RAD(0)), CF(0, -0.025, 0))
1340
		LASTPART = Part
1341
	end
1342
end
1343
1344
local Barrel = CreatePart(3, Weapon, "Metal", 0, 0, "Mid gray", "Part", VT(0.15,2,0.15),false)
1345
MakeForm(Barrel,"Cyl")
1346
CreateWeldOrSnapOrMotor("Weld", Handle, Handle, Barrel, CF(0, -0.6, 1.8) * ANGLES(RAD(90), RAD(0), RAD(0)), CF(0, 0, 0))
1347
local Part = CreatePart(3, Weapon, "Metal", 0, 0, "Mid gray", "Part", VT(0.25,1,0.25),false)
1348
MakeForm(Part,"Cyl")
1349
CreateWeldOrSnapOrMotor("Weld", Handle, Barrel, Part, CF(0, -0.6, 0), CF(0, 0, 0))
1350
local Part = CreatePart(3, Weapon, "Metal", 0, 0, "Mid gray", "Part", VT(0,0.1,0.2),false)
1351
MakeForm(Part,"Wedge")
1352
CreateWeldOrSnapOrMotor("Weld", Handle, Barrel, Part, CF(0, 0.945, 0.1) * ANGLES(RAD(180), RAD(0), RAD(0)), CF(0, 0, 0))
1353
local Hole = CreatePart(3, Weapon, "Metal", 0, 0, "Mid gray", "Eye", VT(0.125,0,0.125),false)
1354
MakeForm(Hole,"Cyl")
1355
CreateWeldOrSnapOrMotor("Weld", Handle, Barrel, Hole, CF(0, 0.98, 0), CF(0, 0, 0))
1356
local Part = CreatePart(3, Weapon, "Metal", 0, 0, "Mid gray", "Part", VT(0,0,0),false)
1357
local GEARWELD = CreateWeldOrSnapOrMotor("Weld", Handle, Handle, Part, CF(0, -0.6, 0.7), CF(0, 0, 0))
1358
CreateMesh("SpecialMesh", Part, "FileMesh", 156292343, "", VT(0.8,0.8,1.5), VT(0,0,0.2))
1359
local Part = CreatePart(3, Weapon, "Metal", 0, 0.5, "Mid gray", "Eye", VT(0,0,0),false)
1360
local GEARWELD2 = CreateWeldOrSnapOrMotor("Weld", Handle, Handle, Part, CF(0, -0.6, 0.7), CF(0, 0, 0))
1361
CreateMesh("SpecialMesh", Part, "FileMesh", 156292343, "", VT(0.9,0.9,0.3), VT(0,0,0.2))
1362
coroutine.resume(coroutine.create(function()
1363
	while wait() do
1364
		GEARWELD.C0 = GEARWELD.C0 * ANGLES(RAD(0), RAD(0), RAD(5))
1365
		GEARWELD2.C0 = GEARWELD2.C0 * ANGLES(RAD(0), RAD(0), RAD(-5))
1366
	end
1367
end))
1368
1369
ParticleEmitter({Speed = 0.2, Drag = 0, Size1 = 0.1, Size2 = 0, Lifetime1 = 0.3, Lifetime2 = 0.5, Parent = Hole, Emit = 100, Offset = 360, Enabled = true, Acel = VT(0,5,0)})
1370
--ParticleEmitter({Speed = 0.5, Drag = 0, Size1 = 0.2, Size2 = 0, Lifetime1 = 0.3, Lifetime2 = 0.7, Parent = Dangle, Emit = 100, Offset = 360, Enabled = true, Acel = VT(0,5,0)})
1371
1372
for _, c in pairs(Weapon:GetDescendants()) do
1373
	if c.ClassName == "Part" and c.Name ~= "Eye" and c.Parent ~= Effects and c.Parent.Parent ~= Effects then
1374
		c.Material = "Glass"
1375
		c.Color = C3(0.05,0.05,0.05)
1376
	elseif c.ClassName == "Part" and c.Name == "Eye" then
1377
		c.Color = C3(.5,0,.5)
1378
		c.Material = "Neon"
1379
	end
1380
end
1381
1382
Weapon.Parent = Character
1383
for _, c in pairs(Weapon:GetChildren()) do
1384
	if c.ClassName == "Part" then
1385
		c.CustomPhysicalProperties = PhysicalProperties.new(0, 0, 0, 0, 0)
1386
	end
1387
end
1388
1389
local SKILLTEXTCOLOR = C3(.5,0,.5)
1390
local SKILLFONT = "Antique"
1391
local SKILLTEXTSIZE = 7
1392
1393
Humanoid.Died:connect(function()
1394
	ATTACK = true
1395
end)
1396
1397
1398
local SKILL1FRAME = CreateFrame(WEAPONGUI, 1, 2, UD2(0.0, 1, 0.90, 0), UD2(0.26, 0, 0.07, 0), C3(0,0,0), C3(0, 0, 0), "Skill 1 Frame")
1399
--[[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")
1400
local SKILL3FRAME = CreateFrame(WEAPONGUI, 1, 2, UD2(0.215, 0, 0.90, 0), UD2(0.26, 0, 0.07, 0), C3(0,0,0), C3(0, 0, 0), "Skill 3 Frame")
1401
local SKILL4FRAME = CreateFrame(WEAPONGUI, 1, 2, UD2(0.525, 0, 0.90, 0), UD2(0.26, 0, 0.07, 0), C3(0,0,0), C3(0, 0, 0), "Skill 4 Frame")
1402
local SKILL5FRAME = CreateFrame(WEAPONGUI, 1, 2, UD2(0.365, 0, 0.90, 0), UD2(0.26, 0, 0.07, 0), C3(0,0,0), C3(0, 0, 0), "Skill 5 Frame")
1403
]]
1404
local SKILL1TEXT = CreateLabel(SKILL1FRAME, "[Z] Bullet", SKILLTEXTCOLOR, SKILLTEXTSIZE, SKILLFONT, 0, 2, 0.7, "Text 1")
1405
--[[local SKILL2TEXT = CreateLabel(SKILL2FRAME, "[B] Ability 2", SKILLTEXTCOLOR, SKILLTEXTSIZE, SKILLFONT, 0, 2, 0.7, "Text 2")
1406
local SKILL3TEXT = CreateLabel(SKILL3FRAME, "[C] Ability 3", SKILLTEXTCOLOR, SKILLTEXTSIZE, SKILLFONT, 0, 2, 0.7, "Text 3")
1407
local SKILL4TEXT = CreateLabel(SKILL4FRAME, "[V] Ability 4", SKILLTEXTCOLOR, SKILLTEXTSIZE, SKILLFONT, 0, 2, 0.7, "Text 4")
1408
local SKILL5TEXT = CreateLabel(SKILL5FRAME, "[X] Mercy", SKILLTEXTCOLOR, SKILLTEXTSIZE, SKILLFONT, 0, 2, 0.7, "Text 5")
1409
]]
1410
function printbye(Name)
1411
	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, "}
1412
	warn(MESSAGES[MRANDOM(1,#MESSAGES)]..Name..".")	
1413
end
1414
1415
workspace.ChildAdded:connect(function(instance)
1416
    for BANISH = 1, #TOBANISH do
1417
		if TOBANISH[BANISH] ~= nil then
1418
			if instance.Name == TOBANISH[BANISH] then
1419
				coroutine.resume(coroutine.create(function()
1420
					printbye(instance.Name)
1421
					instance:ClearAllChildren()
1422
					Debris:AddItem(instance,0.0005)
1423
				end))
1424
			end
1425
		end
1426
	end
1427
end)
1428
1429
--//=================================\\
1430
--||			DAMAGING
1431
--\\=================================//
1432
1433
function CreateWave(SIZE,WAIT,CFRAME,DOESROT,ROT,COLOR,GROW)
1434
	local wave = CreatePart(3, Effects, "Neon", 0, 0.5, BRICKC(COLOR), "Effect", VT(0,0,0))
1435
	local mesh = CreateMesh("SpecialMesh", wave, "FileMesh", "20329976", "", SIZE, VT(0,0,-SIZE.X/8))
1436
	wave.CFrame = CFRAME
1437
	coroutine.resume(coroutine.create(function(PART)
1438
		for i = 1, WAIT do
1439
			Swait()
1440
			mesh.Scale = mesh.Scale + GROW
1441
			mesh.Offset = VT(0,0,-(mesh.Scale.X/8))
1442
			if DOESROT == true then
1443
				wave.CFrame = wave.CFrame * CFrame.fromEulerAnglesXYZ(0,ROT,0)
1444
			end
1445
			wave.Transparency = wave.Transparency + (0.5/WAIT)
1446
			if wave.Transparency > 0.99 then
1447
				wave:remove()
1448
			end
1449
		end
1450
	end))
1451
end
1452
1453
function CreateRing(SIZE,DOESROT,ROT,WAIT,CFRAME,COLOR,GROW)
1454
	local wave = CreatePart(3, Effects, "Neon", 0, 0.5, BRICKC(COLOR), "Effect", VT(0,0,0))
1455
	local mesh = CreateMesh("SpecialMesh", wave, "FileMesh", "559831844", "", SIZE, VT(0,0,0))
1456
	wave.CFrame = CFRAME
1457
	coroutine.resume(coroutine.create(function(PART)
1458
		for i = 1, WAIT do
1459
			Swait()
1460
			mesh.Scale = mesh.Scale + GROW
1461
			if DOESROT == true then
1462
				wave.CFrame = wave.CFrame * CFrame.fromEulerAnglesXYZ(0,ROT,0)
1463
			end
1464
			wave.Transparency = wave.Transparency + (0.5/WAIT)
1465
			if wave.Transparency > 0.99 then
1466
				wave:remove()
1467
			end
1468
		end
1469
	end))
1470
end
1471
1472
function MagicSphere(SIZE,WAIT,CFRAME,COLOR,GROW)
1473
	local wave = CreatePart(3, Effects, "Neon", 0, 0, BRICKC(COLOR), "Effect", VT(1,1,1), true)
1474
	local mesh = CreateMesh("SpecialMesh", wave, "Sphere", "", "", SIZE, VT(0,0,0))
1475
	wave.CFrame = CFRAME
1476
	coroutine.resume(coroutine.create(function(PART)
1477
		for i = 1, WAIT do
1478
			Swait()
1479
			mesh.Scale = mesh.Scale + GROW
1480
			wave.Transparency = wave.Transparency + (1/WAIT)
1481
			if wave.Transparency > 0.99 then
1482
				wave:remove()
1483
			end
1484
		end
1485
	end))
1486
end
1487
1488
function Slice(KIND,SIZE,WAIT,CFRAME,COLOR,GROW)
1489
	local mesh = nil
1490
	if KIND == "Base" then
1491
 		mesh = CreateMesh("SpecialMesh", wave, "FileMesh", "448386996", "", VT(0,SIZE/10,SIZE/10), VT(0,0,0))
1492
	elseif KIND == "Thin" then
1493
 		mesh = CreateMesh("SpecialMesh", wave, "FileMesh", "662586858", "", VT(SIZE/10,0,SIZE/10), VT(0,0,0))
1494
	elseif KIND == "Round" then
1495
 		mesh = CreateMesh("SpecialMesh", wave, "FileMesh", "662585058", "", VT(SIZE/10,0,SIZE/10), VT(0,0,0))
1496
	end
1497
	wave.CFrame = CFRAME
1498
	coroutine.resume(coroutine.create(function(PART)
1499
		for i = 1, WAIT do
1500
			Swait()
1501
			mesh.Scale = mesh.Scale + GROW/10
1502
			wave.Transparency = wave.Transparency + (0.5/WAIT)
1503
			if wave.Transparency > 0.99 then
1504
				wave:remove()
1505
			end
1506
		end
1507
	end))
1508
end
1509
1510
function Ragdoll(Character2, CharTorso, Headless, Velocity)
1511
	local svch = Character2
1512
	Character2:BreakJoints()
1513
	local hum = Character2:findFirstChild("Humanoid")
1514
	local q = Character2:GetChildren()
1515
	local CLONE = IT("Model", Effects)
1516
	for i = 1, #q do
1517
		if q[i].ClassName == "Accessory" and Headless == true then
1518
			q[i]:remove()
1519
		elseif q[i].ClassName ~= "Humanoid" and q[i].ClassName ~= "LocalScript" and q[i].ClassName ~= "Script" and q[i].ClassName ~= "Gear" then
1520
			q[i].Parent = CLONE
1521
		elseif q[i].ClassName ~= "Humanoid" then
1522
			q[i]:remove()
1523
		end
1524
	end
1525
	local chrclone = CLONE
1526
	local ch = chrclone:GetChildren()
1527
	local i
1528
	for i = 1, #ch do
1529
		if ch[i].Name == "THandle1" or ch[i].Name == "THandle2" or ch[i].ClassName == "Script" then
1530
			ch[i]:remove()
1531
		end
1532
	end
1533
	local function Scan(ch)
1534
		local e
1535
		for e = 1, #ch do
1536
			Scan(ch[e]:GetChildren())
1537
			if ch[e].ClassName == "Weld" or ch[e].ClassName == "Motor6D" then
1538
				ch[e]:remove()
1539
			end
1540
		end
1541
	end
1542
	Character2:remove()
1543
	local NEWHUM = IT("Humanoid")
1544
	NEWHUM.Name = "Corpse"
1545
	NEWHUM.Health = 0
1546
	NEWHUM.MaxHealth = 0
1547
	NEWHUM.PlatformStand = true
1548
	NEWHUM.Parent = CLONE
1549
	NEWHUM.DisplayDistanceType = "None"
1550
	Scan(chrclone:GetChildren())
1551
	local ch = Character2:GetChildren()
1552
	local i
1553
	for i = 1, #ch do
1554
		if ch[i].Name == "THandle1" or ch[i].Name == "THandle2" then
1555
			ch[i]:remove()
1556
		end
1557
	end
1558
	
1559
	Character2 = chrclone
1560
	local Torso2 = Character2.Torso
1561
	local movevector = Vector3.new()
1562
	if Torso2 then
1563
		movevector = CFrame.new(CharTorso.Position, Torso2.Position).lookVector
1564
		local Head = Character2:FindFirstChild("Head")
1565
		if Head then
1566
			local Neck = Instance.new("Weld")
1567
			Neck.Name = "Neck"
1568
			Neck.Part0 = Torso2
1569
			Neck.Part1 = Head
1570
			Neck.C0 = CFrame.new(0, 1.5, 0)
1571
			Neck.C1 = CFrame.new()
1572
			Neck.Parent = Torso2
1573
			if Headless == true then
1574
				Head.Transparency = 1
1575
				Head:ClearAllChildren()
1576
			end
1577
		end
1578
		local Limb = Character2:FindFirstChild("Right Arm")
1579
		if Limb then
1580
			Limb.CFrame = Torso2.CFrame * CFrame.new(1.5, 0, 0)
1581
			local Joint = Instance.new("Glue")
1582
			Joint.Name = "RightShoulder"
1583
			Joint.Part0 = Torso2
1584
			Joint.Part1 = Limb
1585
			Joint.C0 = CFrame.new(1.5, 0.5, 0, 0, 0, 1, 0, 1, 0, -1, 0, 0)
1586
			Joint.C1 = CFrame.new(0, 0.5, 0, 0, 0, 1, 0, 1, 0, -1, 0, 0)
1587
			Joint.Parent = Torso2
1588
			local B = Instance.new("Part")
1589
			B.TopSurface = 0
1590
			B.BottomSurface = 0
1591
			B.formFactor = "Symmetric"
1592
			B.Size = Vector3.new(1, 1, 1)
1593
			B.Transparency = 1
1594
			B.CFrame = Limb.CFrame * CFrame.new(0, -0.5, 0)
1595
			B.Parent = Character2
1596
			local W = Instance.new("Weld")
1597
			W.Part0 = Limb
1598
			W.Part1 = B
1599
			W.C0 = CFrame.new(0, -0.5, 0)
1600
			W.Parent = Limb
1601
		end
1602
		local Limb = Character2:FindFirstChild("Left Arm")
1603
		if Limb then
1604
			Limb.CFrame = Torso2.CFrame * CFrame.new(-1.5, 0, 0)
1605
			local Joint = Instance.new("Glue")
1606
			Joint.Name = "LeftShoulder"
1607
			Joint.Part0 = Torso2
1608
			Joint.Part1 = Limb
1609
			Joint.C0 = CFrame.new(-1.5, 0.5, 0, 0, 0, -1, 0, 1, 0, 1, 0, 0)
1610
			Joint.C1 = CFrame.new(0, 0.5, 0, 0, 0, -1, 0, 1, 0, 1, 0, 0)
1611
			Joint.Parent = Torso2
1612
			local B = Instance.new("Part")
1613
			B.TopSurface = 0
1614
			B.BottomSurface = 0
1615
			B.formFactor = "Symmetric"
1616
			B.Size = Vector3.new(1, 1, 1)
1617
			B.Transparency = 1
1618
			B.CFrame = Limb.CFrame * CFrame.new(0, -0.5, 0)
1619
			B.Parent = Character2
1620
			local W = Instance.new("Weld")
1621
			W.Part0 = Limb
1622
			W.Part1 = B
1623
			W.C0 = CFrame.new(0, -0.5, 0)
1624
			W.Parent = Limb
1625
		end
1626
		local Limb = Character2:FindFirstChild("Right Leg")
1627
		if Limb then
1628
			Limb.CFrame = Torso2.CFrame * CFrame.new(0.5, -2, 0)
1629
			local Joint = Instance.new("Glue")
1630
			Joint.Name = "RightHip"
1631
			Joint.Part0 = Torso2
1632
			Joint.Part1 = Limb
1633
			Joint.C0 = CFrame.new(0.5, -1, 0, 0, 0, 1, 0, 1, 0, -1, 0, 0)
1634
			Joint.C1 = CFrame.new(0, 1, 0, 0, 0, 1, 0, 1, 0, -1, 0, 0)
1635
			Joint.Parent = Torso2
1636
			local B = Instance.new("Part")
1637
			B.TopSurface = 0
1638
			B.BottomSurface = 0
1639
			B.formFactor = "Symmetric"
1640
			B.Size = Vector3.new(1, 1, 1)
1641
			B.Transparency = 1
1642
			B.CFrame = Limb.CFrame * CFrame.new(0, -0.5, 0)
1643
			B.Parent = Character2
1644
			local W = Instance.new("Weld")
1645
			W.Part0 = Limb
1646
			W.Part1 = B
1647
			W.C0 = CFrame.new(0, -0.5, 0)
1648
			W.Parent = Limb
1649
		end
1650
		local Limb = Character2:FindFirstChild("Left Leg")
1651
		if Limb then
1652
			Limb.CFrame = Torso2.CFrame * CFrame.new(-0.5, -2, 0)
1653
			local Joint = Instance.new("Glue")
1654
			Joint.Name = "LeftHip"
1655
			Joint.Part0 = Torso2
1656
			Joint.Part1 = Limb
1657
			Joint.C0 = CFrame.new(-0.5, -1, 0, 0, 0, -1, 0, 1, 0, 1, 0, 0)
1658
			Joint.C1 = CFrame.new(0, 1, 0, 0, 0, -1, 0, 1, 0, 1, 0, 0)
1659
			Joint.Parent = Torso2
1660
			local B = Instance.new("Part")
1661
			B.TopSurface = 0
1662
			B.BottomSurface = 0
1663
			B.formFactor = "Symmetric"
1664
			B.Size = Vector3.new(1, 1, 1)
1665
			B.Transparency = 1
1666
			B.CFrame = Limb.CFrame * CFrame.new(0, -0.5, 0)
1667
			B.Parent = Character2
1668
			local W = Instance.new("Weld")
1669
			W.Part0 = Limb
1670
			W.Part1 = B
1671
			W.C0 = CFrame.new(0, -0.5, 0)
1672
			W.Parent = Limb
1673
		end
1674
		local Bar = Instance.new("Part")
1675
		Bar.TopSurface = 0
1676
		Bar.BottomSurface = 0
1677
		Bar.formFactor = "Symmetric"
1678
		Bar.Size = Vector3.new(1, 1, 1)
1679
		Bar.Transparency = 1
1680
		Bar.CFrame = Torso2.CFrame * CFrame.new(0, 0.5, 0)
1681
		Bar.Parent = Character2
1682
		local Weld = Instance.new("Weld")
1683
		Weld.Part0 = Torso2
1684
		Weld.Part1 = Bar
1685
		Weld.C0 = CFrame.new(0, 0.5, 0)
1686
		Weld.Parent = Torso2
1687
	end
1688
	Character2.Parent = Weapon
1689
	if movevector ~= Vector3.new() then
1690
		for i = 1, 10 do
1691
			Torso2.Velocity = movevector * Velocity
1692
		end
1693
	end
1694
	Character2.Name = "Corpse"
1695
	return Character2, Torso2
1696
end
1697
1698
function Banish(Foe)
1699
	if Foe then
1700
		coroutine.resume(coroutine.create(function()
1701
			--if game.Players:FindFirstChild(Foe.Name) then
1702
				table.insert(TOBANISH,Foe.Name)
1703
				printbye(Foe.Name)
1704
			--end
1705
			Foe.Archivable = true
1706
			local CLONE = Foe:Clone()
1707
			Foe:Destroy()
1708
			CLONE.Parent = Effects
1709
			CLONE:BreakJoints()
1710
			local MATERIALS = {"Glass","Neon"}
1711
			for _, c in pairs(CLONE:GetDescendants()) do
1712
				if c:IsA("BasePart") then
1713
					if c.Name == "Torso" or c.Name == "UpperTorso" or c == CLONE.PrimaryPart then
1714
 						CreateSound(340722848, c, 10, 1, false)
1715
					end
1716
					c.Anchored = true
1717
					c.Transparency = c.Transparency + 0.2
1718
					c.Material = MATERIALS[MRANDOM(1,2)]
1719
					c.Color = C3(.5,0,.5)
1720
					if c.ClassName == "MeshPart" then
1721
						c.TextureID = ""
1722
					end
1723
					if c:FindFirstChildOfClass("SpecialMesh") then
1724
						c:FindFirstChildOfClass("SpecialMesh").TextureId = ""
1725
					end
1726
					if c:FindFirstChildOfClass("Decal") then
1727
						c:FindFirstChildOfClass("Decal"):remove()
1728
					end
1729
					c.Name = "Banished"
1730
					c.CanCollide = false
1731
				else
1732
					c:remove()
1733
				end
1734
			end
1735
			local A = false
1736
			for i = 1, 35 do
1737
				if A == false then
1738
					A = true
1739
				elseif A == true then
1740
					A = false
1741
				end
1742
				for _, c in pairs(CLONE:GetDescendants()) do
1743
					if c:IsA("BasePart") then
1744
						c.Anchored = true
1745
						c.Material = MATERIALS[MRANDOM(1,2)]
1746
						c.Transparency = c.Transparency + 0.8/35
1747
						if A == false then
1748
							c.CFrame = c.CFrame*CF(MRANDOM(-45,45)/45,MRANDOM(-45,45)/45,MRANDOM(-45,45)/45)
1749
						elseif A == true then
1750
							c.CFrame = c.CFrame*CF(MRANDOM(-45,45)/45,MRANDOM(-45,45)/45,MRANDOM(-45,45)/45)						
1751
						end
1752
					end
1753
				end
1754
				Swait()
1755
			end
1756
			CLONE:remove()
1757
		end))
1758
	end
1759
end
1760
1761
function PuddleOfBlood(Position, MaxDrop, Model, MaxSize)
1762
	local HITFLOOR, HITPOS, NORMAL = Raycast(Position, CF(Position, Position + VT(0, -1, 0)).lookVector, MaxDrop, Model)
1763
	if HITFLOOR ~= nil and HITFLOOR.Parent ~= Weapon and HITFLOOR.Parent ~= Character then
1764
		if HITFLOOR.Name == "BloodPuddle" then
1765
			local DIST = (Position - HITFLOOR.Position).Magnitude
1766
			if HITFLOOR.Size.Z <= 5 and MaxSize > HITFLOOR.Size.Z or HITFLOOR.Size.Z > 5 and MaxSize > HITFLOOR.Size.Z and DIST < HITFLOOR.Size.Z / 3 then
1767
				HITFLOOR.Size = HITFLOOR.Size + VT(0.1, 0, 0.1)
1768
			end
1769
		elseif HITFLOOR.Anchored == true then
1770
			do
1771
				local BLOOD = CreatePart(3, Effects, "Glass", 0, 0, "Royal purple", "BloodPuddle", VT(2, 0, 2))
1772
				BLOOD.CFrame = CF(HITPOS, HITPOS + NORMAL) * ANGLES(RAD(90), RAD(0), RAD(0))
1773
				MakeForm(BLOOD, "Cyl")
1774
				coroutine.resume(coroutine.create(function()
1775
					Swait(75)
1776
					while true do
1777
						Swait()
1778
						BLOOD.Size = BLOOD.Size - VT(0.02, 0, 0.02)
1779
						if BLOOD.Size.Z < 0.051 then
1780
							BLOOD:remove()
1781
							break
1782
						end
1783
					end
1784
				end))
1785
			end
1786
		end
1787
	end
1788
end
1789
1790
function SprayBlood(POSITION, DIRECTION, BloodSize)
1791
	local BLOOD = CreatePart(3, Effects, "Glass", 0, 0, "Royal purple", "BloodPuddle", VT(1, 1, 1), false)
1792
	BLOOD.CFrame = CF(POSITION)
1793
	MakeForm(BLOOD, "Ball")
1794
	local bv = Instance.new("BodyVelocity", BLOOD)
1795
	bv.maxForce = Vector3.new(1000000000, 1000000000, 1000000000)
1796
	bv.velocity = CF(POSITION, DIRECTION + VT(MRANDOM(-3, 3) / 30, MRANDOM(-3, 3) / 30, MRANDOM(-3, 3) / 30)).lookVector * 25
1797
	bv.Name = "MOVE"
1798
	Debris:AddItem(bv, 0.05)
1799
	coroutine.resume(coroutine.create(function()
1800
		local HASTOUCHEDGROUND = false
1801
		local HIT = BLOOD.Touched:Connect(function(hit)
1802
			if hit.Anchored == true then
1803
				HASTOUCHEDGROUND = true
1804
				PuddleOfBlood(BLOOD.Position + VT(0, 1, 0), 2, BLOOD, BloodSize)
1805
			end
1806
		end)
1807
		wait(5)
1808
		if HASTOUCHEDGROUND == false then
1809
			BLOOD:remove()
1810
		end
1811
	end))
1812
end
1813
function ApplyDamage(Humanoid, Damage, TorsoPart)
1814
	local defence = Instance.new("BoolValue", Humanoid.Parent)
1815
	defence.Name = "HitBy" .. Player.Name
1816
	game:GetService("Debris"):AddItem(defence, 0.001)
1817
	Damage = Damage * DAMAGEMULTIPLIER
1818
	if Humanoid.Health ~= 0 then
1819
		local CritChance = MRANDOM(1, 100)
1820
		if Damage > Humanoid.Health then
1821
			Damage = math.ceil(Humanoid.Health)
1822
			if Damage == 0 then
1823
				Damage = 0.1
1824
			end
1825
		end
1826
		Humanoid.Health = Humanoid.Health - Damage
1827
		StatLabel(TorsoPart.CFrame * CF(0, 0 + (TorsoPart.Size.z - 1), 0), Damage, C3(0, 0, 0))
1828
	end
1829
end
1830
1831
function ApplyAoE(POSITION,RANGE,ISBANISH)
1832
	local CHILDREN = workspace:GetDescendants()
1833
	for index, CHILD in pairs(CHILDREN) do
1834
		if CHILD.ClassName == "Model" and CHILD ~= Character then
1835
			local HUM = CHILD:FindFirstChildOfClass("Humanoid")
1836
			if HUM then
1837
				local TORSO = CHILD:FindFirstChild("Torso") or CHILD:FindFirstChild("UpperTorso")
1838
				if TORSO then
1839
					if (TORSO.Position - POSITION).Magnitude <= RANGE then
1840
						if ISBANISH == true then
1841
							Banish(CHILD)
1842
						else
1843
							if ISBANISH == "Gravity" then
1844
								HUM.PlatformStand = true
1845
								if TORSO:FindFirstChild("V3BanishForce"..Player.Name) then
1846
									local grav = Instance.new("BodyPosition",TORSO)
1847
									grav.D = 15
1848
									grav.P = 20000
1849
									grav.maxForce = Vector3.new(math.huge,math.huge,math.huge)
1850
									grav.position = TORSO.Position
1851
									grav.Name = "V3BanishForce"..Player.Name
1852
								else
1853
									TORSO:FindFirstChild("V3BanishForce"..Player.Name).position = TORSO.Position+VT(0,0.3,0)
1854
									TORSO.RotVelocity = VT(MRANDOM(-25,25),MRANDOM(-25,25),MRANDOM(-25,25))
1855
								end
1856
							else
1857
								HUM.PlatformStand = false
1858
							end
1859
						end
1860
					elseif ISBANISH == "Gravity" then
1861
						if TORSO:FindFirstChild("V3BanishForce"..Player.Name) then
1862
							TORSO:FindFirstChild("V3BanishForce"..Player.Name):remove()
1863
							HUM.PlatformStand = false
1864
						end
1865
					end
1866
				end
1867
			end
1868
		end
1869
	end
1870
end
1871
1872
function AoEDamage(position,radius,min,max,maxstrength,critrate,critmultiplier,CanBeDodgedByJumping)
1873
	local dmg = math.random(min,max)
1874
	for i,v in ipairs(workspace:GetChildren()) do
1875
	if v:FindFirstChild("HitBy"..Player.Name) == nil then
1876
		local body = v:GetChildren()
1877
			for part = 1, #body do
1878
				if(v:FindFirstChild("HitBy"..Player.Name) == nil and (body[part].ClassName == "Part" or body[part].ClassName == "MeshPart") and v ~= Character) then
1879
					if(body[part].Position - position).Magnitude < radius then
1880
						if v.ClassName == "Model" then
1881
							if v:FindFirstChildOfClass("Humanoid") then
1882
								if CanBeDodgedByJumping == true then
1883
									if body[part].Position.Y < position.Y+5 then
1884
										ApplyDamage(v:FindFirstChildOfClass("Humanoid"),dmg,critrate,critmultiplier)
1885
									end
1886
								else
1887
									ApplyDamage(v:FindFirstChildOfClass("Humanoid"),dmg,critrate,critmultiplier)
1888
								end
1889
								local bv = Instance.new("BodyVelocity") 
1890
								bv.maxForce = Vector3.new(1e9, 1e9, 1e9)
1891
								bv.velocity = RootPart.CFrame.lookVector*maxstrength
1892
								bv.Parent = body[part]
1893
								Debris:AddItem(bv,0.2)
1894
							end
1895
						end
1896
					end
1897
				end
1898
			end
1899
		end
1900
		if v:FindFirstChild("HitBy"..Player.Name) then
1901
			v:FindFirstChild("HitBy"..Player.Name):remove()
1902
		end
1903
	end
1904
end
1905
1906
1907
--//=================================\\
1908
--||	ATTACK FUNCTIONS AND STUFF
1909
--\\=================================//
1910
1911
function ShadowCloak()
1912
	if ANIM ~= "Fall" and ANIM ~= "Jump" then
1913
		ATTACK = true
1914
		Rooted = false
1915
		UNANCHOR = false
1916
		FADERS = false
1917
		coroutine.resume(coroutine.create(function()
1918
			coroutine.resume(coroutine.create(function()
1919
				for i=1, 25 do
1920
					Swait()
1921
					RootPart.CFrame = RootPart.CFrame*CF(0,(25-i)/25,0)
1922
				end
1923
			end))
1924
			repeat
1925
				Swait()
1926
				BLADE.Transparency = Torso.Transparency
1927
				RootJoint.C0 = Clerp(RootJoint.C0,ROOTC0 * CF(0, 0, 0 + 0.1 * COS(SINE / 12)) * ANGLES(RAD(-5), RAD(0), RAD(0)), 1 / Animation_Speed)
1928
				Neck.C0 = Clerp(Neck.C0, NECKC0 * CF(0, 0, 0 + ((1) - 1)) * ANGLES(RAD(-35), RAD(MRANDOM(-5,5)), RAD(MRANDOM(-5,5))), 1 / Animation_Speed)
1929
				RightShoulder.C0 = Clerp(RightShoulder.C0, CF(1.5, 0.5, 0) * ANGLES(RAD(-25+MRANDOM(-5,5)), RAD(-15+MRANDOM(-5,5)), RAD(35)) * RIGHTSHOULDERC0, 1 / Animation_Speed)
1930
				LeftShoulder.C0 = Clerp(LeftShoulder.C0, CF(-1.5, 0.5, 0) * ANGLES(RAD(-25+MRANDOM(-5,5)), RAD(15+MRANDOM(-5,5)), RAD(-35)) * LEFTSHOULDERC0, 1 / Animation_Speed)
1931
				RightHip.C0 = Clerp(RightHip.C0, CF(1, -1, -0.1) * ANGLES(RAD(0), RAD(85), RAD(MRANDOM(-5,5))) * ANGLES(RAD(-1), RAD(0), RAD(-12)), 1 / Animation_Speed)
1932
				LeftHip.C0 = Clerp(LeftHip.C0, CF(-1, -1, -0.1) * ANGLES(RAD(0), RAD(-85), RAD(MRANDOM(-5,5))) * ANGLES(RAD(-1), RAD(0), RAD(12)), 1 / Animation_Speed)
1933
			until ATTACK == false
1934
		end))
1935
		WACKYEFFECT({Time = 65, EffectType = "Sphere", Size = VT(0,0,0), Size2 = VT(25,1,25), Transparency = 0, Transparency2 = 1, CFrame = CF(RootPart.Position-VT(0,3.5,0)), MoveToPos = nil, RotationX = 0, RotationY = 0, RotationZ = 0, Material = "Neon", Color = C3(0,0,0), SoundID = 814168787, SoundPitch = 0.6, SoundVolume = 6, UseBoomerangMath = true, Boomerang = 0, SizeBoomerang = 12})
1936
		WACKYEFFECT({Time = 65, EffectType = "Sphere", Size = VT(0,0,0), Size2 = VT(25,1,25), Transparency = 0, Transparency2 = 1, CFrame = CF(RootPart.Position-VT(0,3.5,0)), MoveToPos = nil, RotationX = 0, RotationY = 0, RotationZ = 0, Material = "Neon", Color = C3(0,0,0), SoundID = 814168787, SoundPitch = 1, SoundVolume = 6, UseBoomerangMath = true, Boomerang = 0, SizeBoomerang = 35})
1937
		for i = 1, 50 do
1938
			Swait()
1939
			CharacterFade(C3(.5,0,.5),12,R_RANDOM(Torso.CFrame,1.25).p)
1940
			for index, CHILD in pairs(Character:GetChildren()) do
1941
				if CHILD:IsA("BasePart") then
1942
					CHILD.Transparency = CHILD.Transparency + 1/50
1943
				elseif CHILD:IsA("Accessory") then
1944
					CHILD.Handle.Transparency = CHILD.Handle.Transparency + 1/50
1945
				end
1946
			end
1947
		end
1948
		for i = 1, 25 do
1949
			Swait()
1950
			CharacterFade(C3(.5,0,.5),12,R_RANDOM(Torso.CFrame,1.25).p)
1951
		end
1952
		RootPart.CFrame = CF(Mouse.Hit.p+VT(0,12,0)) * ANGLES(RAD(0), RAD(RootPart.Orientation.Y), RAD(0))
1953
		for i = 1, 5 do
1954
			WACKYEFFECT({Time = 50, EffectType = "Round Slash", Size = VT(0,0,0), Size2 = VT(0.3,0,0.3), Transparency = 0, Transparency2 = 1, CFrame = CF(RootPart.Position) * ANGLES(RAD(MRANDOM(0,360)), RAD(MRANDOM(0,360)), RAD(MRANDOM(0,360))), MoveToPos = nil, RotationX = 0, RotationY = 0, RotationZ = 0, Material = "Neon", Color = C3(0,0,0), SoundID = nil, SoundPitch = nil, SoundVolume = nil, UseBoomerangMath = true, Boomerang = 0, SizeBoomerang = 10})
1955
		end
1956
		ApplyAoE(Torso.Position,15,12,22,150,false)
1957
		CreateSound(331666014,Torso,5,1,false)
1958
		for i = 1, 12 do
1959
			Swait()
1960
			CharacterFade(C3(.5,0,.5),12,R_RANDOM(Torso.CFrame,1.25).p)
1961
		end
1962
		for i = 1, 50 do
1963
			Swait()
1964
			CharacterFade(C3(.5,0,.5),12,R_RANDOM(Torso.CFrame,1.25).p)
1965
			for index, CHILD in pairs(Character:GetChildren()) do
1966
				if CHILD:IsA("BasePart") then
1967
					CHILD.Transparency = CHILD.Transparency - 1/50
1968
				elseif CHILD:IsA("Accessory") then
1969
					CHILD.Handle.Transparency = CHILD.Handle.Transparency - 1/50
1970
				end
1971
			end
1972
		end
1973
		UNANCHOR = true
1974
		ATTACK = false
1975
		Rooted = false
1976
		FADERS = true
1977
	end
1978
end
1979
1980
function Neck_Snap()
1981
	ATTACK = true
1982
	Rooted = false
1983
	local TARGET, HUM, WLD
1984
	local HIT = RightArm.Touched:Connect(function(hit)
1985
		if hit.Parent ~= nil and hit.Parent:FindFirstChildOfClass("Humanoid") then
1986
			local H = hit.Parent:FindFirstChildOfClass("Humanoid")
1987
			if H.Health > 0 then
1988
				local TORSO = hit.Parent:FindFirstChild("Torso") or hit.Parent:FindFirstChild("UpperTorso")
1989
				if TORSO then
1990
					HUM = H
1991
					TARGET = TORSO
1992
					H.PlatformStand = true
1993
					CreateSound("260411131", TORSO, 10, 1)
1994
					WLD = CreateWeldOrSnapOrMotor("Weld", RightArm, RightArm, TORSO, CF(0, -1, -0.25) * ANGLES(RAD(-90), RAD(0), RAD(0)), CF(0, 0, 0))
1995
				end
1996
			end
1997
		end
1998
	end)
1999
	for i = 0, 1, 0.1 / Animation_Speed do
2000
		Swait()
2001
		if TARGET ~= nil then
2002
			break
2003
		end
2004
		RootJoint.C0 = Clerp(RootJoint.C0, ROOTC0 * CF(0, 0, 0 + 0.05 * COS(SINE / 12)) * ANGLES(RAD(0), RAD(0), RAD(25)), 0.5 / Animation_Speed)
2005
		Neck.C0 = Clerp(Neck.C0, NECKC0 * CF(0, 0, 0) * ANGLES(RAD(0 - 2.5 * SIN(SINE / 12)), RAD(0), RAD(-25)), 0.5 / Animation_Speed)
2006
		RightShoulder.C0 = Clerp(RightShoulder.C0, CF(1.15, 0.45, -0.3) * ANGLES(RAD(90), RAD(0), RAD(-12)) * RIGHTSHOULDERC0, 0.5 / Animation_Speed)
2007
		LeftShoulder.C0 = Clerp(LeftShoulder.C0, CF(-1.5, 0.5, 0) * ANGLES(RAD(0), RAD(0), RAD(-12)) * LEFTSHOULDERC0, 0.5 / Animation_Speed)
2008
		if ANIM == "Idle" then
2009
			RightHip.C0 = Clerp(RightHip.C0, CF(1, -1 - 0.05 * COS(SINE / 12), -0.01) * ANGLES(RAD(0), RAD(90), RAD(0)) * ANGLES(RAD(-8), RAD(0), RAD(0)), 0.5 / Animation_Speed)
2010
			LeftHip.C0 = Clerp(LeftHip.C0, CF(-1, -1 - 0.05 * COS(SINE / 12), -0.01) * ANGLES(RAD(0), RAD(-90), RAD(0)) * ANGLES(RAD(-8), RAD(0), RAD(0)), 0.5 / Animation_Speed)
2011
		elseif ANIM == "Walk" then
2012
			RightHip.C0 = Clerp(RightHip.C0, CF(1, -1, -0.01) * ANGLES(RAD(-25 - 2.5 * SIN(SINE / 22)), RAD(75), RAD(0)) * ANGLES(RAD(-8 - 5.5 * SIN(SINE / 22)), RAD(0), RAD(0)), 1 / Animation_Speed)
2013
			LeftHip.C0 = Clerp(LeftHip.C0, CF(-1, -0.5, -0.5) * ANGLES(RAD(-2.5 * SIN(SINE / 22)), RAD(-90), RAD(0)) * ANGLES(RAD(-8 - 2.5 * SIN(SINE / 22)), RAD(0), RAD(0)), 1 / Animation_Speed)
2014
		elseif ANIM == "Jump" or ANIM == "Fall" then
2015
			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)
2016
			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)
2017
		end
2018
	end
2019
	HIT:disconnect()
2020
	if TARGET ~= nil then
2021
		if TARGET.Name == "Torso" then
2022
			for i = 0, 2, 0.1 / Animation_Speed do
2023
				Swait()
2024
				RootJoint.C0 = Clerp(RootJoint.C0, ROOTC0 * CF(0, 0, 0 + 0.05 * COS(SINE / 12)) * ANGLES(RAD(0), RAD(0), RAD(0)), 0.5 / Animation_Speed)
2025
				Neck.C0 = Clerp(Neck.C0, NECKC0 * CF(0, 0, 0) * ANGLES(RAD(0 - 2.5 * SIN(SINE / 12)), RAD(0), RAD(0)), 0.5 / Animation_Speed)
2026
				RightShoulder.C0 = Clerp(RightShoulder.C0, CF(1.5, 0.5, -0.5) * ANGLES(RAD(65), RAD(25), RAD(-45)) * RIGHTSHOULDERC0, 0.5 / Animation_Speed)
2027
				LeftShoulder.C0 = Clerp(LeftShoulder.C0, CF(-1.5, 0.5, -0.5) * ANGLES(RAD(120), RAD(0), RAD(45)) * LEFTSHOULDERC0, 0.5 / Animation_Speed)
2028
				if ANIM == "Idle" then
2029
					RightHip.C0 = Clerp(RightHip.C0, CF(1, -1 - 0.05 * COS(SINE / 12), -0.01) * ANGLES(RAD(0), RAD(90), RAD(0)) * ANGLES(RAD(-8), RAD(0), RAD(0)), 0.5 / Animation_Speed)
2030
					LeftHip.C0 = Clerp(LeftHip.C0, CF(-1, -1 - 0.05 * COS(SINE / 12), -0.01) * ANGLES(RAD(0), RAD(-90), RAD(0)) * ANGLES(RAD(-8), RAD(0), RAD(0)), 0.5 / Animation_Speed)
2031
				elseif ANIM == "Walk" then
2032
					RightHip.C0 = Clerp(RightHip.C0, CF(1, -1, -0.01) * ANGLES(RAD(-25 - 2.5 * SIN(SINE / 22)), RAD(75), RAD(0)) * ANGLES(RAD(-8 - 5.5 * SIN(SINE / 22)), RAD(0), RAD(0)), 1 / Animation_Speed)
2033
					LeftHip.C0 = Clerp(LeftHip.C0, CF(-1, -0.5, -0.5) * ANGLES(RAD(-2.5 * SIN(SINE / 22)), RAD(-90), RAD(0)) * ANGLES(RAD(-8 - 2.5 * SIN(SINE / 22)), RAD(0), RAD(0)), 1 / Animation_Speed)
2034
				elseif ANIM == "Jump" or ANIM == "Fall" then
2035
					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)
2036
					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)
2037
				end
2038
			end
2039
			WLD:remove()
2040
			local HEAD = TARGET.Parent:FindFirstChild("Head")
2041
			if HEAD then
2042
				UNANCHOR = false
2043
				RootPart.Anchored = true
2044
				local HD = HEAD:Clone()
2045
				HD.Name = "FakeHead"
2046
				for i = 1, 7 do
2047
					SprayBlood(TARGET.CFrame * CF(0, TARGET.Size.Y / 2, 0).p, TARGET.CFrame * CF(MRANDOM(25, 55), MRANDOM(-25, 25), MRANDOM(25, 55)).p, 15)
2048
				end
2049
				local RAGDOLL, RAGTORSO = Ragdoll(TARGET.Parent, Torso, true, 0)
2050
				local RAGWELD = CreateWeldOrSnapOrMotor("Weld", RightArm, RightArm, RAGTORSO, CF(0, -1, -0.25) * ANGLES(RAD(-90), RAD(0), RAD(0)), CF(0, 0, 0))
2051
				HD.Parent = RAGDOLL
2052
				CreateSound("264486467", RAGTORSO, 10, 1)
2053
				local HEADWELD = CreateWeldOrSnapOrMotor("Weld", LeftArm, LeftArm, HD, CF(0, -1, -0.25) * ANGLES(RAD(-90), RAD(0), RAD(0)), CF(0, 0, 0))
2054
				for i = 0, 2, 0.1 / Animation_Speed do
2055
					Swait()
2056
					RootJoint.C0 = Clerp(RootJoint.C0, ROOTC0 * CF(0, 0, 0 + 0.05 * COS(SINE / 12)) * ANGLES(RAD(0), RAD(0), RAD(0)), 0.5 / Animation_Speed)
2057
					Neck.C0 = Clerp(Neck.C0, NECKC0 * CF(0, 0, 0) * ANGLES(RAD(0 - 2.5 * SIN(SINE / 12)), RAD(0), RAD(0)), 0.5 / Animation_Speed)
2058
					RightShoulder.C0 = Clerp(RightShoulder.C0, CF(1.5, 0.5, -0.5) * ANGLES(RAD(90), RAD(0), RAD(15)) * RIGHTSHOULDERC0, 0.5 / Animation_Speed)
2059
					LeftShoulder.C0 = Clerp(LeftShoulder.C0, CF(-1.5, 0.5, -0.5) * ANGLES(RAD(150), RAD(0), RAD(-15)) * LEFTSHOULDERC0, 0.5 / Animation_Speed)
2060
					if ANIM == "Idle" then
2061
						RightHip.C0 = Clerp(RightHip.C0, CF(1, -1 - 0.05 * COS(SINE / 12), -0.01) * ANGLES(RAD(0), RAD(90), RAD(0)) * ANGLES(RAD(-8), RAD(0), RAD(0)), 0.5 / Animation_Speed)
2062
						LeftHip.C0 = Clerp(LeftHip.C0, CF(-1, -1 - 0.05 * COS(SINE / 12), -0.01) * ANGLES(RAD(0), RAD(-90), RAD(0)) * ANGLES(RAD(-8), RAD(0), RAD(0)), 0.5 / Animation_Speed)
2063
					elseif ANIM == "Walk" then
2064
						RightHip.C0 = Clerp(RightHip.C0, CF(1, -1, -0.01) * ANGLES(RAD(-25 - 2.5 * SIN(SINE / 22)), RAD(75), RAD(0)) * ANGLES(RAD(-8 - 5.5 * SIN(SINE / 22)), RAD(0), RAD(0)), 1 / Animation_Speed)
2065
						LeftHip.C0 = Clerp(LeftHip.C0, CF(-1, -0.5, -0.5) * ANGLES(RAD(-2.5 * SIN(SINE / 22)), RAD(-90), RAD(0)) * ANGLES(RAD(-8 - 2.5 * SIN(SINE / 22)), RAD(0), RAD(0)), 1 / Animation_Speed)
2066
					elseif ANIM == "Jump" or ANIM == "Fall" then
2067
						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)
2068
						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)
2069
					end
2070
				end
2071
				HEADWELD:remove()
2072
				for i = 0, 0.5, 0.1 / Animation_Speed do
2073
					Swait()
2074
					RootJoint.C0 = Clerp(RootJoint.C0, ROOTC0 * CF(0, 0, 0 + 0.05 * COS(SINE / 12)) * ANGLES(RAD(0), RAD(0), RAD(0)), 0.5 / Animation_Speed)
2075
					Neck.C0 = Clerp(Neck.C0, NECKC0 * CF(0, 0, 0) * ANGLES(RAD(0 - 2.5 * SIN(SINE / 12)), RAD(0), RAD(0)), 0.5 / Animation_Speed)
2076
					RightShoulder.C0 = Clerp(RightShoulder.C0, CF(1.5, 0.5, -0.5) * ANGLES(RAD(90), RAD(0), RAD(-65)) * RIGHTSHOULDERC0, 0.5 / Animation_Speed)
2077
					LeftShoulder.C0 = Clerp(LeftShoulder.C0, CF(-1.5, 0.5, -0.5) * ANGLES(RAD(0), RAD(0), RAD(-12)) * LEFTSHOULDERC0, 0.5 / Animation_Speed)
2078
					if ANIM == "Idle" then
2079
						RightHip.C0 = Clerp(RightHip.C0, CF(1, -1 - 0.05 * COS(SINE / 12), -0.01) * ANGLES(RAD(0), RAD(90), RAD(0)) * ANGLES(RAD(-8), RAD(0), RAD(0)), 0.5 / Animation_Speed)
2080
						LeftHip.C0 = Clerp(LeftHip.C0, CF(-1, -1 - 0.05 * COS(SINE / 12), -0.01) * ANGLES(RAD(0), RAD(-90), RAD(0)) * ANGLES(RAD(-8), RAD(0), RAD(0)), 0.5 / Animation_Speed)
2081
					elseif ANIM == "Walk" then
2082
						RightHip.C0 = Clerp(RightHip.C0, CF(1, -1, -0.01) * ANGLES(RAD(-25 - 2.5 * SIN(SINE / 22)), RAD(75), RAD(0)) * ANGLES(RAD(-8 - 5.5 * SIN(SINE / 22)), RAD(0), RAD(0)), 1 / Animation_Speed)
2083
						LeftHip.C0 = Clerp(LeftHip.C0, CF(-1, -0.5, -0.5) * ANGLES(RAD(-2.5 * SIN(SINE / 22)), RAD(-90), RAD(0)) * ANGLES(RAD(-8 - 2.5 * SIN(SINE / 22)), RAD(0), RAD(0)), 1 / Animation_Speed)
2084
					elseif ANIM == "Jump" or ANIM == "Fall" then
2085
						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)
2086
						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)
2087
					end
2088
				end
2089
				CreateSound("907333406", Torso, 10, 1)
2090
				for i = 0, 0.25, 0.1 / Animation_Speed do
2091
					Swait()
2092
					RootJoint.C0 = Clerp(RootJoint.C0, ROOTC0 * CF(0, 0, 0 + 0.05 * COS(SINE / 12)) * ANGLES(RAD(0), RAD(0), RAD(0)), 0.5 / Animation_Speed)
2093
					Neck.C0 = Clerp(Neck.C0, NECKC0 * CF(0, 0, 0) * ANGLES(RAD(0 - 2.5 * SIN(SINE / 12)), RAD(0), RAD(0)), 0.5 / Animation_Speed)
2094
					RightShoulder.C0 = Clerp(RightShoulder.C0, CF(1.5, 0.5, -0.5) * ANGLES(RAD(90), RAD(0), RAD(90)) * RIGHTSHOULDERC0, 2 / Animation_Speed)
2095
					LeftShoulder.C0 = Clerp(LeftShoulder.C0, CF(-1.5, 0.5, -0.5) * ANGLES(RAD(0), RAD(0), RAD(-12)) * LEFTSHOULDERC0, 0.5 / Animation_Speed)
2096
					if ANIM == "Idle" then
2097
						RightHip.C0 = Clerp(RightHip.C0, CF(1, -1 - 0.05 * COS(SINE / 12), -0.01) * ANGLES(RAD(0), RAD(90), RAD(0)) * ANGLES(RAD(-8), RAD(0), RAD(0)), 0.5 / Animation_Speed)
2098
						LeftHip.C0 = Clerp(LeftHip.C0, CF(-1, -1 - 0.05 * COS(SINE / 12), -0.01) * ANGLES(RAD(0), RAD(-90), RAD(0)) * ANGLES(RAD(-8), RAD(0), RAD(0)), 0.5 / Animation_Speed)
2099
					elseif ANIM == "Walk" then
2100
						RightHip.C0 = Clerp(RightHip.C0, CF(1, -1, -0.01) * ANGLES(RAD(-25 - 2.5 * SIN(SINE / 22)), RAD(75), RAD(0)) * ANGLES(RAD(-8 - 5.5 * SIN(SINE / 22)), RAD(0), RAD(0)), 1 / Animation_Speed)
2101
						LeftHip.C0 = Clerp(LeftHip.C0, CF(-1, -0.5, -0.5) * ANGLES(RAD(-2.5 * SIN(SINE / 22)), RAD(-90), RAD(0)) * ANGLES(RAD(-8 - 2.5 * SIN(SINE / 22)), RAD(0), RAD(0)), 1 / Animation_Speed)
2102
					elseif ANIM == "Jump" or ANIM == "Fall" then
2103
						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)
2104
						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)
2105
					end
2106
				end
2107
				RAGWELD:remove()
2108
				local bv = Instance.new("BodyVelocity")
2109
				bv.maxForce = Vector3.new(1000000000, 1000000000, 1000000000)
2110
				bv.velocity = CF(Torso.Position, RAGTORSO.Position).lookVector * 75
2111
				bv.Parent = RAGTORSO
2112
				Debris:AddItem(bv, 0.05)
2113
				Debris:AddItem(RAGDOLL, 5)
2114
				for i = 0, 0.15, 0.1 / Animation_Speed do
2115
					Swait()
2116
					RootJoint.C0 = Clerp(RootJoint.C0, ROOTC0 * CF(0, 0, 0 + 0.05 * COS(SINE / 12)) * ANGLES(RAD(0), RAD(0), RAD(0)), 0.5 / Animation_Speed)
2117
					Neck.C0 = Clerp(Neck.C0, NECKC0 * CF(0, 0, 0) * ANGLES(RAD(0 - 2.5 * SIN(SINE / 12)), RAD(0), RAD(0)), 0.5 / Animation_Speed)
2118
					RightShoulder.C0 = Clerp(RightShoulder.C0, CF(1.5, 0.5, -0.5) * ANGLES(RAD(90), RAD(0), RAD(90)) * RIGHTSHOULDERC0, 0.5 / Animation_Speed)
2119
					LeftShoulder.C0 = Clerp(LeftShoulder.C0, CF(-1.5, 0.5, -0.5) * ANGLES(RAD(0), RAD(0), RAD(-12)) * LEFTSHOULDERC0, 0.5 / Animation_Speed)
2120
					if ANIM == "Idle" then
2121
						RightHip.C0 = Clerp(RightHip.C0, CF(1, -1 - 0.05 * COS(SINE / 12), -0.01) * ANGLES(RAD(0), RAD(90), RAD(0)) * ANGLES(RAD(-8), RAD(0), RAD(0)), 0.5 / Animation_Speed)
2122
						LeftHip.C0 = Clerp(LeftHip.C0, CF(-1, -1 - 0.05 * COS(SINE / 12), -0.01) * ANGLES(RAD(0), RAD(-90), RAD(0)) * ANGLES(RAD(-8), RAD(0), RAD(0)), 0.5 / Animation_Speed)
2123
					elseif ANIM == "Walk" then
2124
						RightHip.C0 = Clerp(RightHip.C0, CF(1, -1, -0.01) * ANGLES(RAD(-25 - 2.5 * SIN(SINE / 22)), RAD(75), RAD(0)) * ANGLES(RAD(-8 - 5.5 * SIN(SINE / 22)), RAD(0), RAD(0)), 1 / Animation_Speed)
2125
						LeftHip.C0 = Clerp(LeftHip.C0, CF(-1, -0.5, -0.5) * ANGLES(RAD(-2.5 * SIN(SINE / 22)), RAD(-90), RAD(0)) * ANGLES(RAD(-8 - 2.5 * SIN(SINE / 22)), RAD(0), RAD(0)), 1 / Animation_Speed)
2126
					elseif ANIM == "Jump" or ANIM == "Fall" then
2127
						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)
2128
						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)
2129
					end
2130
				end
2131
				UNANCHOR = true
2132
				RootPart.Anchored = false
2133
			end
2134
		else
2135
			UNANCHOR = false
2136
			RootPart.Anchored = true
2137
			for i = 0, 0.5, 0.1 / Animation_Speed do
2138
				Swait()
2139
				RootJoint.C0 = Clerp(RootJoint.C0, ROOTC0 * CF(0, 0, 0 + 0.05 * COS(SINE / 12)) * ANGLES(RAD(0), RAD(0), RAD(0)), 0.5 / Animation_Speed)
2140
				Neck.C0 = Clerp(Neck.C0, NECKC0 * CF(0, 0, 0) * ANGLES(RAD(0 - 2.5 * SIN(SINE / 12)), RAD(0), RAD(0)), 0.5 / Animation_Speed)
2141
				RightShoulder.C0 = Clerp(RightShoulder.C0, CF(1.5, 0.5, -0.5) * ANGLES(RAD(90), RAD(0), RAD(-65)) * RIGHTSHOULDERC0, 0.5 / Animation_Speed)
2142
				LeftShoulder.C0 = Clerp(LeftShoulder.C0, CF(-1.5, 0.5, -0.5) * ANGLES(RAD(0), RAD(0), RAD(-12)) * LEFTSHOULDERC0, 0.5 / Animation_Speed)
2143
				if ANIM == "Idle" then
2144
					RightHip.C0 = Clerp(RightHip.C0, CF(1, -1 - 0.05 * COS(SINE / 12), -0.01) * ANGLES(RAD(0), RAD(90), RAD(0)) * ANGLES(RAD(-8), RAD(0), RAD(0)), 0.5 / Animation_Speed)
2145
					LeftHip.C0 = Clerp(LeftHip.C0, CF(-1, -1 - 0.05 * COS(SINE / 12), -0.01) * ANGLES(RAD(0), RAD(-90), RAD(0)) * ANGLES(RAD(-8), RAD(0), RAD(0)), 0.5 / Animation_Speed)
2146
				elseif ANIM == "Walk" then
2147
					RightHip.C0 = Clerp(RightHip.C0, CF(1, -1, -0.01) * ANGLES(RAD(-25 - 2.5 * SIN(SINE / 22)), RAD(75), RAD(0)) * ANGLES(RAD(-8 - 5.5 * SIN(SINE / 22)), RAD(0), RAD(0)), 1 / Animation_Speed)
2148
					LeftHip.C0 = Clerp(LeftHip.C0, CF(-1, -0.5, -0.5) * ANGLES(RAD(-2.5 * SIN(SINE / 22)), RAD(-90), RAD(0)) * ANGLES(RAD(-8 - 2.5 * SIN(SINE / 22)), RAD(0), RAD(0)), 1 / Animation_Speed)
2149
				elseif ANIM == "Jump" or ANIM == "Fall" then
2150
					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)
2151
					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)
2152
				end
2153
			end
2154
			for i = 0, 0.25, 0.1 / Animation_Speed do
2155
				Swait()
2156
				RootJoint.C0 = Clerp(RootJoint.C0, ROOTC0 * CF(0, 0, 0 + 0.05 * COS(SINE / 12)) * ANGLES(RAD(0), RAD(0), RAD(0)), 0.5 / Animation_Speed)
2157
				Neck.C0 = Clerp(Neck.C0, NECKC0 * CF(0, 0, 0) * ANGLES(RAD(0 - 2.5 * SIN(SINE / 12)), RAD(0), RAD(0)), 0.5 / Animation_Speed)
2158
				RightShoulder.C0 = Clerp(RightShoulder.C0, CF(1.5, 0.5, -0.5) * ANGLES(RAD(90), RAD(0), RAD(90)) * RIGHTSHOULDERC0, 2 / Animation_Speed)
2159
				LeftShoulder.C0 = Clerp(LeftShoulder.C0, CF(-1.5, 0.5, -0.5) * ANGLES(RAD(0), RAD(0), RAD(-12)) * LEFTSHOULDERC0, 0.5 / Animation_Speed)
2160
				if ANIM == "Idle" then
2161
					RightHip.C0 = Clerp(RightHip.C0, CF(1, -1 - 0.05 * COS(SINE / 12), -0.01) * ANGLES(RAD(0), RAD(90), RAD(0)) * ANGLES(RAD(-8), RAD(0), RAD(0)), 0.5 / Animation_Speed)
2162
					LeftHip.C0 = Clerp(LeftHip.C0, CF(-1, -1 - 0.05 * COS(SINE / 12), -0.01) * ANGLES(RAD(0), RAD(-90), RAD(0)) * ANGLES(RAD(-8), RAD(0), RAD(0)), 0.5 / Animation_Speed)
2163
				elseif ANIM == "Walk" then
2164
					RightHip.C0 = Clerp(RightHip.C0, CF(1, -1, -0.01) * ANGLES(RAD(-25 - 2.5 * SIN(SINE / 22)), RAD(75), RAD(0)) * ANGLES(RAD(-8 - 5.5 * SIN(SINE / 22)), RAD(0), RAD(0)), 1 / Animation_Speed)
2165
					LeftHip.C0 = Clerp(LeftHip.C0, CF(-1, -0.5, -0.5) * ANGLES(RAD(-2.5 * SIN(SINE / 22)), RAD(-90), RAD(0)) * ANGLES(RAD(-8 - 2.5 * SIN(SINE / 22)), RAD(0), RAD(0)), 1 / Animation_Speed)
2166
				elseif ANIM == "Jump" or ANIM == "Fall" then
2167
					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)
2168
					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)
2169
				end
2170
			end
2171
			WLD:remove()
2172
			TARGET.Parent:BreakJoints()
2173
			for _, c in pairs(TARGET.Parent:GetChildren()) do
2174
				if c:IsA("BasePart") then
2175
					local bv = Instance.new("BodyVelocity")
2176
					bv.maxForce = Vector3.new(1000000000, 1000000000, 1000000000)
2177
					bv.velocity = CF(Torso.Position, c.Position).lookVector * 75
2178
					bv.Parent = c
2179
					Debris:AddItem(bv, 0.05)
2180
				end
2181
			end
2182
			for i = 0, 0.15, 0.1 / Animation_Speed do
2183
				Swait()
2184
				RootJoint.C0 = Clerp(RootJoint.C0, ROOTC0 * CF(0, 0, 0 + 0.05 * COS(SINE / 12)) * ANGLES(RAD(0), RAD(0), RAD(0)), 0.5 / Animation_Speed)
2185
				Neck.C0 = Clerp(Neck.C0, NECKC0 * CF(0, 0, 0) * ANGLES(RAD(0 - 2.5 * SIN(SINE / 12)), RAD(0), RAD(0)), 0.5 / Animation_Speed)
2186
				RightShoulder.C0 = Clerp(RightShoulder.C0, CF(1.5, 0.5, -0.5) * ANGLES(RAD(90), RAD(0), RAD(90)) * RIGHTSHOULDERC0, 0.5 / Animation_Speed)
2187
				LeftShoulder.C0 = Clerp(LeftShoulder.C0, CF(-1.5, 0.5, -0.5) * ANGLES(RAD(0), RAD(0), RAD(-12)) * LEFTSHOULDERC0, 0.5 / Animation_Speed)
2188
				if ANIM == "Idle" then
2189
					RightHip.C0 = Clerp(RightHip.C0, CF(1, -1 - 0.05 * COS(SINE / 12), -0.01) * ANGLES(RAD(0), RAD(90), RAD(0)) * ANGLES(RAD(-8), RAD(0), RAD(0)), 0.5 / Animation_Speed)
2190
					LeftHip.C0 = Clerp(LeftHip.C0, CF(-1, -1 - 0.05 * COS(SINE / 12), -0.01) * ANGLES(RAD(0), RAD(-90), RAD(0)) * ANGLES(RAD(-8), RAD(0), RAD(0)), 0.5 / Animation_Speed)
2191
				elseif ANIM == "Walk" then
2192
					RightHip.C0 = Clerp(RightHip.C0, CF(1, -1, -0.01) * ANGLES(RAD(-25 - 2.5 * SIN(SINE / 22)), RAD(75), RAD(0)) * ANGLES(RAD(-8 - 5.5 * SIN(SINE / 22)), RAD(0), RAD(0)), 1 / Animation_Speed)
2193
					LeftHip.C0 = Clerp(LeftHip.C0, CF(-1, -0.5, -0.5) * ANGLES(RAD(-2.5 * SIN(SINE / 22)), RAD(-90), RAD(0)) * ANGLES(RAD(-8 - 2.5 * SIN(SINE / 22)), RAD(0), RAD(0)), 1 / Animation_Speed)
2194
				elseif ANIM == "Jump" or ANIM == "Fall" then
2195
					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)
2196
					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)
2197
				end
2198
			end
2199
			UNANCHOR = true
2200
			RootPart.Anchored = false
2201
		end
2202
	end
2203
	ATTACK = false
2204
	Rooted = false
2205
end
2206
2207
function Shot()
2208
	ATTACK = true
2209
	Rooted = false
2210
	for i=0, 0.05, 0.1 / Animation_Speed do
2211
		Swait()
2212
		turnto(Mouse.Hit.p)
2213
		RootJoint.C0 = Clerp(RootJoint.C0,ROOTC0 * CF(0, 0, 0) * ANGLES(RAD(0), RAD(0), RAD(90)), 0.5 / Animation_Speed)
2214
		Neck.C0 = Clerp(Neck.C0, NECKC0 * CF(0, 0, 0) * ANGLES(RAD(0), RAD(0), RAD(-90)), 0.5 / Animation_Speed)
2215
		RightShoulder.C0 = Clerp(RightShoulder.C0, CF(1.5, 0.5, 0) * ANGLES(RAD(90), RAD(0), RAD(90)) * RIGHTSHOULDERC0, 0.5 / Animation_Speed)
2216
		LeftShoulder.C0 = Clerp(LeftShoulder.C0, CF(-1.5, 0.6, 0) * ANGLES(RAD(-45), RAD(0), RAD(45)) * LEFTSHOULDERC0, 0.5 / Animation_Speed)
2217
		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)
2218
		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)
2219
	end
2220
	repeat
2221
		for i=0, 0.05, 0.1 / Animation_Speed do
2222
			Swait()
2223
			turnto(Mouse.Hit.p)
2224
			RootJoint.C0 = Clerp(RootJoint.C0,ROOTC0 * CF(0, 0, 0) * ANGLES(RAD(0), RAD(0), RAD(90)), 0.5 / Animation_Speed)
2225
			Neck.C0 = Clerp(Neck.C0, NECKC0 * CF(0, 0, 0) * ANGLES(RAD(0), RAD(0), RAD(-90)), 0.5 / Animation_Speed)
2226
			RightShoulder.C0 = Clerp(RightShoulder.C0, CF(1.5, 0.5, 0) * ANGLES(RAD(90), RAD(0), RAD(90)) * RIGHTSHOULDERC0, 0.5 / Animation_Speed)
2227
			LeftShoulder.C0 = Clerp(LeftShoulder.C0, CF(-1.5, 0.6, 0) * ANGLES(RAD(-45), RAD(0), RAD(45)) * LEFTSHOULDERC0, 0.5 / Animation_Speed)
2228
			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)
2229
			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)
2230
		end
2231
		local HIT,POS = CastProperRay(Hole2.Position, Mouse.Hit.p, 1000, Character)
2232
		SpawnTrail(Hole2.Position,POS)
2233
		if HIT ~= nil then
2234
			if HIT.Parent ~= workspace and HIT.Parent.ClassName ~= "Folder" then
2235
				Banish(HIT.Parent)
2236
			end
2237
		end
2238
		WACKYEFFECT({Time = 25, EffectType = "Wave", Size = VT(1,0,1), Size2 = VT(6,7.5,6), Transparency = 0, Transparency2 = 1, CFrame = Hole2.CFrame, MoveToPos = Hole.CFrame*CF(0,0.5,0).p, RotationX = 0, RotationY = -15, RotationZ = 0, Material = "Neon", Color = C3(.5,0,.5), SoundID = nil, SoundPitch = nil, SoundVolume = nil})
2239
		WACKYEFFECT({Time = 25, EffectType = "Wave", Size = VT(1,0,1), Size2 = VT(6,6.5,6), Transparency = 0, Transparency2 = 1, CFrame = Hole2.CFrame, MoveToPos = nil, RotationX = 0, RotationY = 5, RotationZ = 0, Material = "Neon", Color = C3(.5,0,.5), SoundID = 904440937, SoundPitch = MRANDOM(8,11)/10, SoundVolume = 8})
2240
		WACKYEFFECT({Time = 25, EffectType = "Wave", Size = VT(1,0,1), Size2 = VT(6,6.5,6), Transparency = 0, Transparency2 = 1, CFrame = CF(POS,Hole2.Position) * ANGLES(RAD(-90), RAD(0), RAD(0)), MoveToPos = nil, RotationX = 0, RotationY = -5, RotationZ = 0, Material = "Neon", Color = C3(.5,0,.5), SoundID = nil, SoundPitch = MRANDOM(8,11)/10, SoundVolume = 8})
2241
		WACKYEFFECT({Time = 25, EffectType = "Wave", Size = VT(1,0,1), Size2 = VT(6,6.5,6), Transparency = 0, Transparency2 = 1, CFrame = CF(POS,Hole2.Position) * ANGLES(RAD(-90), RAD(0), RAD(0)), MoveToPos = nil, RotationX = 0, RotationY = 5, RotationZ = 0, Material = "Neon", Color = C3(.5,0,.5), SoundID = nil, SoundPitch = MRANDOM(8,11)/10, SoundVolume = 8})
2242
		for i=0, 0.05, 0.1 / Animation_Speed do
2243
			Swait()
2244
			RootJoint.C0 = Clerp(RootJoint.C0,ROOTC0 * CF(0, 0, 0) * ANGLES(RAD(0), RAD(0), RAD(90)), 0.5 / Animation_Speed)
2245
			Neck.C0 = Clerp(Neck.C0, NECKC0 * CF(0, 0, 0) * ANGLES(RAD(0), RAD(0), RAD(-90)), 0.25 / Animation_Speed)
2246
			RightShoulder.C0 = Clerp(RightShoulder.C0, CF(1.5, 0.5, 0) * ANGLES(RAD(90), RAD(15), RAD(90)) * RIGHTSHOULDERC0, 0.5 / Animation_Speed)
2247
			LeftShoulder.C0 = Clerp(LeftShoulder.C0, CF(-1.5, 0.6, 0) * ANGLES(RAD(-45), RAD(0), RAD(45)) * LEFTSHOULDERC0, 0.5 / Animation_Speed)
2248
			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)
2249
			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)
2250
		end
2251
	until KEYHOLD == false
2252
	ATTACK = false
2253
	Rooted = false
2254
end
2255
2256
function AttackTemplate()
2257
	ATTACK = true
2258
	Rooted = false
2259
	for i=0, 1, 0.1 / Animation_Speed do
2260
		Swait()
2261
		RootJoint.C0 = Clerp(RootJoint.C0,ROOTC0 * CF(0, 0, 1 + 0.05 * COS(SINE / 12)) * ANGLES(RAD(0), RAD(0), RAD(0)), 0.15 / Animation_Speed)
2262
		Neck.C0 = Clerp(Neck.C0, NECKC0 * CF(0, 0, 0 + ((1) - 1)) * ANGLES(RAD(0 - 2.5 * SIN(SINE / 12)), RAD(0), RAD(0)), 0.15 / Animation_Speed)
2263
		RightShoulder.C0 = Clerp(RightShoulder.C0, CF(1.5, 0.5, 0) * ANGLES(RAD(0), RAD(100), RAD(12)) * RIGHTSHOULDERC0, 0.15 / Animation_Speed)
2264
		LeftShoulder.C0 = Clerp(LeftShoulder.C0, CF(-1.5, 0.5, 0) * ANGLES(RAD(0), RAD(0), RAD(-12)) * LEFTSHOULDERC0, 0.15 / Animation_Speed)
2265
		RightHip.C0 = Clerp(RightHip.C0, CF(1, -1 - 0.05 * COS(SINE / 12), -0.01) * ANGLES(RAD(0), RAD(90), RAD(0)) * ANGLES(RAD(-8), RAD(0), RAD(0)), 0.15 / Animation_Speed)
2266
		LeftHip.C0 = Clerp(LeftHip.C0, CF(-1, -1 - 0.05 * COS(SINE / 12), -0.01) * ANGLES(RAD(0), RAD(-90), RAD(0)) * ANGLES(RAD(-8), RAD(0), RAD(0)), 0.15 / Animation_Speed)
2267
	end
2268
	ATTACK = false
2269
	Rooted = false
2270
end
2271
2272
function BulletRoller()
2273
	local HITFLOOR,HITPOS = Raycast(RootPart.Position, (CF(RootPart.Position, RootPart.Position + VT(0, -1, 0))).lookVector, 4, Character)
2274
	if HITFLOOR then
2275
		ATTACK = true
2276
		Rooted = true
2277
		local bv = Instance.new("BodyVelocity") 
2278
		bv.maxForce = Vector3.new(1e9, 1e9, 1e9)
2279
		bv.velocity = CF(RootPart.Position,RootPart.CFrame*CF(0,1,-4).p).lookVector*175
2280
		bv.Parent = RootPart
2281
		local GYRO = IT("BodyGyro",RootPart)
2282
		GYRO.D = 2
2283
		GYRO.P = 20000
2284
		GYRO.MaxTorque = VT(0,4000000,0)
2285
		GYRO.CFrame = CF(RootPart.Position,RootPart.CFrame*CF(0,0,-5).p)
2286
		CreateSound(145486992,Torso,10,0.85,false)
2287
		for i=0, 0.05, 0.1 / Animation_Speed do
2288
			Swait()
2289
			RootJoint.C0 = Clerp(RootJoint.C0,ROOTC0 * CF(0, 0, 0) * ANGLES(RAD(65), RAD(0), RAD(-10)), 1 / Animation_Speed)
2290
			Neck.C0 = Clerp(Neck.C0, NECKC0 * CF(0, 0, 0 + ((1) - 1)) * ANGLES(RAD(-35), RAD(0), RAD(10)), 1 / Animation_Speed)
2291
			RightShoulder.C0 = Clerp(RightShoulder.C0, CF(1.5, 0.5, 0) * ANGLES(RAD(50), RAD(-20), RAD(25)) * RIGHTSHOULDERC0, 1 / Animation_Speed)
2292
			LeftShoulder.C0 = Clerp(LeftShoulder.C0, CF(-1.5, 0.5, 0) * ANGLES(RAD(15), RAD(20), RAD(-25)) * LEFTSHOULDERC0, 1 / Animation_Speed)
2293
			if ANIM == "Fall" or ANIM == "Jump" then
2294
				RightHip.C0 = Clerp(RightHip.C0, CF(1, -0.4, -0.6) * ANGLES(RAD(1), RAD(90), RAD(0)) * ANGLES(RAD(-1 * SIN(SINE / 6)), RAD(0), RAD(0)), 1 / Animation_Speed)
2295
				LeftHip.C0 = Clerp(LeftHip.C0, CF(-1, -1, 0) * ANGLES(RAD(0), RAD(-85), RAD(0)) * ANGLES(RAD(-1 * SIN(SINE / 6)), RAD(0), RAD(0)), 1 / Animation_Speed)
2296
			else
2297
				RightHip.C0 = Clerp(RightHip.C0, CF(1, -1, 0) * ANGLES(RAD(-5), RAD(80), RAD(0)) * ANGLES(RAD(-4), RAD(0), RAD(0)), 1 / Animation_Speed)
2298
				LeftHip.C0 = Clerp(LeftHip.C0, CF(-1, -1, 0) * ANGLES(RAD(0), RAD(-70), RAD(0)) * ANGLES(RAD(-5), RAD(0), RAD(0)), 1 / Animation_Speed)
2299
			end
2300
		end
2301
		bv:Remove()
2302
		local E = 360/15
2303
		for i = 1, 15 do
2304
			Swait()
2305
			WACKYEFFECT({Time = 10, EffectType = "Wave", Size = VT(8,1,8), Size2 = VT(2,15,2), Transparency = 0.9, Transparency2 = 1, CFrame = CF(RootPart.Position,HITPOS) * ANGLES(RAD(-90), RAD(0), RAD(0)), MoveToPos = nil, RotationX = 0, RotationY = 0, RotationZ = 0, Material = "Neon", Color = C3(1,1,1), SoundID = nil, SoundPitch = nil, SoundVolume = nil, UseBoomerangMath = false, Boomerang = 0, SizeBoomerang = 0})
2306
			RootJoint.C0 = Clerp(RootJoint.C0,ROOTC0 * CF(0, 0, 0) * ANGLES(RAD(i*E), RAD(0), RAD(0)), 2 / Animation_Speed)
2307
			Neck.C0 = Clerp(Neck.C0, NECKC0 * CF(0, 0, 0 + ((1) - 1)) * ANGLES(RAD(25), RAD(0), RAD(0)), 1 / Animation_Speed)
2308
			RightShoulder.C0 = Clerp(RightShoulder.C0, CF(1.5, 0.5, 0) * ANGLES(RAD(5), RAD(15), RAD(90)) * RIGHTSHOULDERC0, 1 / Animation_Speed)
2309
			LeftShoulder.C0 = Clerp(LeftShoulder.C0, CF(-1.5, 0.5, 0) * ANGLES(RAD(0), RAD(-5), RAD(-90)) * LEFTSHOULDERC0, 1 / Animation_Speed)
2310
			RightHip.C0 = Clerp(RightHip.C0, CF(1, -0.4, -0.6) * ANGLES(RAD(-35), RAD(90), RAD(0)) * ANGLES(RAD(-1 * SIN(SINE / 6)), RAD(0), RAD(0)), 1 / Animation_Speed)
2311
			LeftHip.C0 = Clerp(LeftHip.C0, CF(-1, -1, 0) * ANGLES(RAD(0), RAD(-85), RAD(0)) * ANGLES(RAD(-1 * SIN(SINE / 6)), RAD(0), RAD(0)), 1 / Animation_Speed)
2312
		end
2313
        Cooldown1 = true
2314
		local LANDED = nil
2315
		local POS = nil
2316
		coroutine.resume(coroutine.create(function()
2317
			repeat
2318
				Swait()
2319
				RootJoint.C0 = Clerp(RootJoint.C0, ROOTC0 * CF(0, 0, 0 ) * ANGLES(RAD(20), RAD(0), RAD(0)), 1 / Animation_Speed)
2320
				Neck.C0 = Clerp(Neck.C0, NECKC0 * CF(0, 0 , 0 + ((1) - 1)) * ANGLES(RAD(15), RAD(0), RAD(0)), 1 / Animation_Speed)
2321
				RightShoulder.C0 = Clerp(RightShoulder.C0, CF(1.5, 0.5, 0) * ANGLES(RAD(-35 - 4 * COS(SINE / 6)), RAD(0), RAD(45 + 10 * COS(SINE / 12))) * RIGHTSHOULDERC0, 1 / Animation_Speed)
2322
				LeftShoulder.C0 = Clerp(LeftShoulder.C0, CF(-1.5, 0.5, 0) * ANGLES(RAD(-35 - 4 * COS(SINE / 6)), RAD(0), RAD(-45 - 10 * COS(SINE / 12))) * LEFTSHOULDERC0, 1 / Animation_Speed)
2323
				RightHip.C0 = Clerp(RightHip.C0, CF(1, -0.3, -0.7) * ANGLES(RAD(-25 + 5 * SIN(SINE / 12)), RAD(90), RAD(0)) * ANGLES(RAD(-1 * SIN(SINE / 6)), RAD(0), RAD(0)), 1 / Animation_Speed)
2324
				LeftHip.C0 = Clerp(LeftHip.C0, CF(-1, -0.8, -0.3) * ANGLES(RAD(-10), RAD(-80), RAD(0)) * ANGLES(RAD(-1 * SIN(SINE / 6)), RAD(0), RAD(0)), 1 / Animation_Speed)
2325
			until LANDED ~= nil
2326
		end))
2327
		repeat
2328
			Swait()
2329
			local HITFLOOR,HITPOS = Raycast(RootPart.Position, (CF(RootPart.Position, RootPart.Position + VT(0, -1, 0))).lookVector, 4.2, Character)
2330
			if HITFLOOR then
2331
				LANDED = HITFLOOR
2332
				POS = HITPOS
2333
			end
2334
		until LANDED ~= nil
2335
		GYRO:remove()
2336
		Swait(4)
2337
		ManualAoE(RootPart.Position,10,20,50,0,false)
2338
		CreateSound(765590102, Torso, 2, (MRANDOM(8,12)/10)+0.3, false)
2339
		WACKYEFFECT({EffectType = "Sphere", Size = VT(5,5,5), Size2 = VT(20,20,20), Transparency = 0.5, Transparency2 = 1, CFrame = CF(Torso.Position), MoveToPos = nil, RotationX = 0, RotationY = 0, RotationZ = 0, Material = "Neon", Color = C3(.5,0,.5), SoundID = nil, SoundPitch = nil, SoundVolume = nil, UseBoomerangMath = false, Boomerang = 0, SizeBoomerang = 0})
2340
		for i = 0, 4 do
2341
		WACKYEFFECT({Time = 35, EffectType = "Wave", Size = VT(0,0.33,0), Size2 = VT(8,0.11,8), Transparency = 0.4, Transparency2 = 1, CFrame = RootPart.CFrame*CF(0,-2.5,0) * ANGLES(RAD(0), RAD(0), RAD(0)), MoveToPos = nil, RotationX = 0, RotationY = MRANDOM(-10,10), RotationZ = 0, Material = "Neon", Color = C3(1,1,1), SoundID = nil, SoundPitch = nil, SoundVolume = nil, UseBoomerangMath = false, Boomerang = 0, SizeBoomerang = 0})
2342
		end
2343
	for i=0, 0.5, 0.1 / Animation_Speed do
2344
		Swait()
2345
		RootJoint.C0 = Clerp(RootJoint.C0,ROOTC0 * CF(0, 0, -2.5 + 0.05 * COS(SINE / 12)) * ANGLES(RAD(90), RAD(0), RAD(0)), 1 / Animation_Speed)
2346
		Neck.C0 = Clerp(Neck.C0, NECKC0 * CF(0, 0, 0 + ((1) - 1)) * ANGLES(RAD(0 - 2.5 * SIN(SINE / 12)), RAD(0), RAD(0)), 1 / Animation_Speed)
2347
		RightShoulder.C0 = Clerp(RightShoulder.C0, CF(1.5, 0.5, 0) * ANGLES(RAD(179), RAD(0), RAD(12)) * RIGHTSHOULDERC0, 1 / Animation_Speed)
2348
		LeftShoulder.C0 = Clerp(LeftShoulder.C0, CF(-1.5, 0.5, 0) * ANGLES(RAD(179), RAD(0), RAD(-12)) * LEFTSHOULDERC0, 1 / Animation_Speed)
2349
		RightHip.C0 = Clerp(RightHip.C0, CF(1, -1 - 0.05 * COS(SINE / 12), -0.01) * ANGLES(RAD(0), RAD(90), RAD(0)) * ANGLES(RAD(-4), RAD(0), RAD(0)), 1 / Animation_Speed)
2350
		LeftHip.C0 = Clerp(LeftHip.C0, CF(-1, -1 - 0.05 * COS(SINE / 12), -0.01) * ANGLES(RAD(0), RAD(-90), RAD(0)) * ANGLES(RAD(-4), RAD(0), RAD(0)), 1 / Animation_Speed)
2351
	end
2352
	local AMMO = 0
2353
	repeat
2354
	AMMO = AMMO + 1
2355
		for i=0, 0.1, 0.05 / Animation_Speed do
2356
			Swait()
2357
			turnto(Mouse.Hit.p)
2358
		RootJoint.C0 = Clerp(RootJoint.C0,ROOTC0 * CF(0, 0, -2.5 + 0.05 * COS(SINE / 12)) * ANGLES(RAD(90), RAD(0), RAD(0)), 1 / Animation_Speed)
2359
		Neck.C0 = Clerp(Neck.C0, NECKC0 * CF(0, 0.35, 0 + ((1) - 1)) * ANGLES(RAD(-75 - 2.5 * SIN(SINE / 12)), RAD(0), RAD(0)), 1 / Animation_Speed)
2360
		RightShoulder.C0 = Clerp(RightShoulder.C0, CF(1.5, 0.5, 0) * ANGLES(RAD(179), RAD(0), RAD(0)) * RIGHTSHOULDERC0, 1 / Animation_Speed)
2361
		LeftShoulder.C0 = Clerp(LeftShoulder.C0, CF(-0.4, 0.8, 0) * ANGLES(RAD(179), RAD(0), RAD(70)) * LEFTSHOULDERC0, 1 / Animation_Speed)
2362
		RightHip.C0 = Clerp(RightHip.C0, CF(1, -1 - 0.05 * COS(SINE / 12), -0.01) * ANGLES(RAD(0), RAD(90), RAD(0)) * ANGLES(RAD(-4), RAD(0), RAD(0)), 1 / Animation_Speed)
2363
		LeftHip.C0 = Clerp(LeftHip.C0, CF(-1, -1 - 0.05 * COS(SINE / 12), -0.01) * ANGLES(RAD(0), RAD(-90), RAD(0)) * ANGLES(RAD(-4), RAD(0), RAD(0)), 1 / Animation_Speed)
2364
	end
2365
		local HIT,POS = CastProperRay(Hole.Position, Mouse.Hit.p, 1000, Character)
2366
		SpawnTrail(Hole.Position,POS)
2367
		if HIT ~= nil then
2368
			if HIT.Parent ~= workspace and HIT.Parent.ClassName ~= "Folder" then
2369
				Banish(HIT.Parent)
2370
			end
2371
		end
2372
		WACKYEFFECT({Time = 25, EffectType = "Wave", Size = VT(0.3,0,0.3), Size2 = VT(1,1.5,1), Transparency = 0, Transparency2 = 1, CFrame = Hole2.CFrame, MoveToPos = Hole.CFrame*CF(0,0.5,0).p, RotationX = 0, RotationY = -15, RotationZ = 0, Material = "Neon", Color = C3(.5,0,.5), SoundID = nil, SoundPitch = nil, SoundVolume = nil})
2373
		WACKYEFFECT({Time = 25, EffectType = "Wave", Size = VT(0.3,0,0.3), Size2 = VT(2,0.5,2), Transparency = 0, Transparency2 = 1, CFrame = Hole2.CFrame, MoveToPos = nil, RotationX = 0, RotationY = 5, RotationZ = 0, Material = "Neon", Color = C3(.5,0,.5), SoundID = 136523485, SoundPitch = MRANDOM(8,11)/10, SoundVolume = 8})
2374
		WACKYEFFECT({Time = 25, EffectType = "Wave", Size = VT(0.3,0,0.3), Size2 = VT(2,0.5,2), Transparency = 0, Transparency2 = 1, CFrame = CF(POS,Hole2.Position) * ANGLES(RAD(-90), RAD(0), RAD(0)), MoveToPos = nil, RotationX = 0, RotationY = -5, RotationZ = 0, Material = "Neon", Color = C3(.5,0,.5), SoundID = nil, SoundPitch = MRANDOM(8,11)/10, SoundVolume = 8})
2375
		WACKYEFFECT({Time = 25, EffectType = "Wave", Size = VT(0.3,0,0.3), Size2 = VT(2,0.5,2), Transparency = 0, Transparency2 = 1, CFrame = CF(POS,Hole2.Position) * ANGLES(RAD(-90), RAD(0), RAD(0)), MoveToPos = nil, RotationX = 0, RotationY = 5, RotationZ = 0, Material = "Neon", Color = C3(.5,0,.5), SoundID = nil, SoundPitch = MRANDOM(8,11)/10, SoundVolume = 8})
2376
	Humanoid.CameraOffset = VT(MRANDOM(-5,5)/2.5,MRANDOM(-5,5)/2.5,MRANDOM(-5,5)/2.5)/30
2377
		for i=0, 0.075, 0.05 / Animation_Speed do
2378
			Swait()
2379
		RootJoint.C0 = Clerp(RootJoint.C0,ROOTC0 * CF(0, 0, -2.5 + 0.05 * COS(SINE / 12)) * ANGLES(RAD(90), RAD(0), RAD(0)), 1 / Animation_Speed)
2380
		Neck.C0 = Clerp(Neck.C0, NECKC0 * CF(0, 0.35, 0 + ((1) - 1)) * ANGLES(RAD(-85 - 2.5 * SIN(SINE / 12)), RAD(0), RAD(0)), 1 / Animation_Speed)
2381
		RightShoulder.C0 = Clerp(RightShoulder.C0, CF(1.5, 0.5, 0) * ANGLES(RAD(190), RAD(0), RAD(0)) * RIGHTSHOULDERC0, 1 / Animation_Speed)
2382
		LeftShoulder.C0 = Clerp(LeftShoulder.C0, CF(-0.4, 0.8, 0) * ANGLES(RAD(190), RAD(0), RAD(70)) * LEFTSHOULDERC0, 1 / Animation_Speed)
2383
		RightHip.C0 = Clerp(RightHip.C0, CF(1, -1 - 0.05 * COS(SINE / 12), -0.01) * ANGLES(RAD(0), RAD(90), RAD(0)) * ANGLES(RAD(-4), RAD(0), RAD(0)), 1 / Animation_Speed)
2384
		LeftHip.C0 = Clerp(LeftHip.C0, CF(-1, -1 - 0.05 * COS(SINE / 12), -0.01) * ANGLES(RAD(0), RAD(-90), RAD(0)) * ANGLES(RAD(-4), RAD(0), RAD(0)), 1 / Animation_Speed)
2385
	end
2386
	until AMMO == 5
2387
		ATTACK = false
2388
		Rooted = false
2389
wait(0.3)
2390
Cooldown1 = false
2391
	end
2392
end
2393
2394
local Cooldown2 = false
2395
2396
function ManualAoE(POSITION,RANGE,MINDMG,MAXDMG,FLING,INSTAKILL)
2397
	local CHILDREN = workspace:GetDescendants()
2398
	for index, CHILD in pairs(CHILDREN) do
2399
		if CHILD.ClassName == "Model" and CHILD ~= Character and CHILD.Parent ~= Effects then
2400
			local HUM = CHILD:FindFirstChildOfClass("Humanoid")
2401
			if HUM then
2402
				local TORSO = CHILD:FindFirstChild("Torso") or CHILD:FindFirstChild("UpperTorso")
2403
				if TORSO then
2404
					if (TORSO.Position - POSITION).Magnitude <= RANGE then
2405
						if INSTAKILL == true then
2406
							CHILD:BreakJoints()
2407
						else
2408
							local DMG = MRANDOM(MINDMG,MAXDMG)
2409
							ManualDamage(HUM,DMG,TORSO)
2410
						end
2411
						if FLING > 0 then
2412
							for _, c in pairs(CHILD:GetChildren()) do
2413
								if c:IsA("BasePart") then
2414
									local bv = Instance.new("BodyVelocity") 
2415
									bv.maxForce = Vector3.new(1e9, 1e9, 1e9)
2416
									bv.velocity = CF(POSITION,TORSO.Position).lookVector*FLING
2417
									bv.Parent = c
2418
									Debris:AddItem(bv,0.05)
2419
								end
2420
							end
2421
						end
2422
					end
2423
				end
2424
			end
2425
		end
2426
	end
2427
end
2428
2429
function Extreme_Offset()
2430
	local HITFLOOR, HITPOS = Raycast(Mouse.Hit.p + VT(0, 1, 0), CF(Mouse.Hit.p + VT(0, 1, 0), Mouse.Hit.p - VT(0, 1, 0)).lookVector, 25, Character)
2431
	if HITFLOOR then
2432
		local ORIGINPOS = VT(RootPart.Position.X, HITPOS.Y + 8, RootPart.Position.Z)
2433
		CreateSound("1295446488", Torso, 5, 1)
2434
		for i = 1, 5 do
2435
			WACKYEFFECT({
2436
				Time = MRANDOM(15, 35),
2437
				EffectType = "Round Slash",
2438
				Size = VT(0, 0, 0),
2439
				Size2 = VT(0.3, 0, 0.3),
2440
				Transparency = 0.5,
2441
				Transparency2 = 1,
2442
				CFrame = CF(Torso.Position) * ANGLES(RAD(MRANDOM(-25, 25)), RAD(MRANDOM(0, 360)), RAD(MRANDOM(-25, 25))),
2443
				MoveToPos = nil,
2444
				RotationX = MRANDOM(-50, 50) / 10,
2445
				RotationY = MRANDOM(-50, 50) / 10,
2446
				RotationZ = MRANDOM(-50, 50) / 10,
2447
				Material = "Neon",
2448
				Color = C3(.5,0,.5),
2449
				SoundID = nil,
2450
				SoundPitch = nil,
2451
				SoundVolume = nil
2452
			})
2453
		end
2454
		ATTACK = true
2455
		Rooted = true
2456
		UNANCHOR = false
2457
		RootPart.Anchored = true
2458
		RootPart.CFrame = CF(HITPOS + VT(0, 8, 0), ORIGINPOS) * ANGLES(RAD(0), RAD(180), RAD(0))
2459
		for i = 1, 5 do
2460
			WACKYEFFECT({
2461
				Time = MRANDOM(15, 35),
2462
				EffectType = "Round Slash",
2463
				Size = VT(0, 0, 0),
2464
				Size2 = VT(0.3, 0, 0.3),
2465
				Transparency = 0.5,
2466
				Transparency2 = 1,
2467
				CFrame = CF(Torso.Position) * ANGLES(RAD(MRANDOM(-25, 25)), RAD(MRANDOM(0, 360)), RAD(MRANDOM(-25, 25))),
2468
				MoveToPos = nil,
2469
				RotationX = MRANDOM(-50, 50) / 10,
2470
				RotationY = MRANDOM(-50, 50) / 10,
2471
				RotationZ = MRANDOM(-50, 50) / 10,
2472
				Material = "Neon",
2473
				Color = C3(.5,0,.5),
2474
				SoundID = nil,
2475
				SoundPitch = nil,
2476
				SoundVolume = nil
2477
			})
2478
		end
2479
		for i = 0, 0.2, 0.1 / Animation_Speed do
2480
			Swait()
2481
			RootJoint.C0 = Clerp(RootJoint.C0, ROOTC0 * CF(0, 0, 0) * ANGLES(RAD(90), RAD(0), RAD(150)), 2 / Animation_Speed)
2482
			Neck.C0 = Clerp(Neck.C0, NECKC0 * CF(0, 0, 0) * ANGLES(RAD(0), RAD(0), RAD(0)), 2 / Animation_Speed)
2483
			RightShoulder.C0 = Clerp(RightShoulder.C0, CF(1.5, 0.5, 0) * ANGLES(RAD(90), RAD(0), RAD(-12)) * RIGHTSHOULDERC0, 2 / Animation_Speed)
2484
			LeftShoulder.C0 = Clerp(LeftShoulder.C0, CF(-1.5, 0.5, 0) * ANGLES(RAD(0), RAD(0), RAD(-12)) * LEFTSHOULDERC0, 2 / Animation_Speed)
2485
			RightHip.C0 = Clerp(RightHip.C0, CF(1, -1, -0.01) * ANGLES(RAD(0), RAD(90), RAD(0)) * ANGLES(RAD(0), RAD(0), RAD(0)), 2 / Animation_Speed)
2486
			LeftHip.C0 = Clerp(LeftHip.C0, CF(-1, -0.5, -0.5) * ANGLES(RAD(0), RAD(-90), RAD(0)) * ANGLES(RAD(-4), RAD(0), RAD(0)), 2 / Animation_Speed)
2487
		end
2488
		for i = 0, 1, 0.1 / Animation_Speed do
2489
			Swait()
2490
			RootJoint.C0 = Clerp(RootJoint.C0, ROOTC0 * CF(0, 0, 0) * ANGLES(RAD(90), RAD(0), RAD(300)), 0.02 / Animation_Speed)
2491
			Neck.C0 = Clerp(Neck.C0, NECKC0 * CF(0, 0, 0) * ANGLES(RAD(0), RAD(0), RAD(-45)), 0.02 / Animation_Speed)
2492
			RightShoulder.C0 = Clerp(RightShoulder.C0, CF(1.5, 0.5, 0) * ANGLES(RAD(90), RAD(0), RAD(-12)) * RIGHTSHOULDERC0, 0.02 / Animation_Speed)
2493
			LeftShoulder.C0 = Clerp(LeftShoulder.C0, CF(-1.5, 0.5, 0) * ANGLES(RAD(0), RAD(0), RAD(-12)) * LEFTSHOULDERC0, 0.02 / Animation_Speed)
2494
			RightHip.C0 = Clerp(RightHip.C0, CF(1, -1, -0.01) * ANGLES(RAD(0), RAD(90), RAD(0)) * ANGLES(RAD(0), RAD(0), RAD(0)), 0.02 / Animation_Speed)
2495
			LeftHip.C0 = Clerp(LeftHip.C0, CF(-1, -0.5, -0.5) * ANGLES(RAD(0), RAD(-90), RAD(0)) * ANGLES(RAD(-4), RAD(0), RAD(0)), 0.02 / Animation_Speed)
2496
		end
2497
		for i = 1, 10 do
2498
			Swait()
2499
			RootPart.CFrame = RootPart.CFrame * CF(0, -0.4, 0)
2500
			RootJoint.C0 = Clerp(RootJoint.C0, ROOTC0 * CF(0, 0, 0) * ANGLES(RAD(90), RAD(0), RAD(300)), 1.7 / Animation_Speed)
2501
			Neck.C0 = Clerp(Neck.C0, NECKC0 * CF(0, 0, 0) * ANGLES(RAD(0), RAD(0), RAD(-45)), 1.7 / Animation_Speed)
2502
			RightShoulder.C0 = Clerp(RightShoulder.C0, CF(1.5, 0.5, 0) * ANGLES(RAD(90), RAD(0), RAD(-12)) * RIGHTSHOULDERC0, 1.7 / Animation_Speed)
2503
			LeftShoulder.C0 = Clerp(LeftShoulder.C0, CF(-1.5, 0.5, 0) * ANGLES(RAD(0), RAD(0), RAD(-12)) * LEFTSHOULDERC0, 1.7 / Animation_Speed)
2504
			RightHip.C0 = Clerp(RightHip.C0, CF(1, -1, -0.01) * ANGLES(RAD(0), RAD(90), RAD(0)) * ANGLES(RAD(0), RAD(0), RAD(0)), 1.7 / Animation_Speed)
2505
			LeftHip.C0 = Clerp(LeftHip.C0, CF(-1, -0.5, -0.5) * ANGLES(RAD(0), RAD(-90), RAD(0)) * ANGLES(RAD(-4), RAD(0), RAD(0)), 1.7 / Animation_Speed)
2506
		end
2507
		for i = 0, 0.2, 0.1 / Animation_Speed do
2508
			Swait()
2509
			RootJoint.C0 = Clerp(RootJoint.C0, ROOTC0 * CF(0, 0, 0) * ANGLES(RAD(90), RAD(0), RAD(90)), 1.5 / Animation_Speed)
2510
			Neck.C0 = Clerp(Neck.C0, NECKC0 * CF(0, 0, 0) * ANGLES(RAD(0), RAD(0), RAD(-90)), 1.5 / Animation_Speed)
2511
			RightShoulder.C0 = Clerp(RightShoulder.C0, CF(1.5, 0.5, 0) * ANGLES(RAD(0), RAD(0), RAD(90)) * RIGHTSHOULDERC0, 1.5 / Animation_Speed)
2512
			LeftShoulder.C0 = Clerp(LeftShoulder.C0, CF(-1.5, 0.5, 0) * ANGLES(RAD(0), RAD(0), RAD(-12)) * LEFTSHOULDERC0, 1.5 / Animation_Speed)
2513
			RightHip.C0 = Clerp(RightHip.C0, CF(1, -1, -0.01) * ANGLES(RAD(0), RAD(90), RAD(0)) * ANGLES(RAD(0), RAD(0), RAD(0)), 1.5 / Animation_Speed)
2514
			LeftHip.C0 = Clerp(LeftHip.C0, CF(-1, -0.5, -0.5) * ANGLES(RAD(0), RAD(-90), RAD(0)) * ANGLES(RAD(-4), RAD(0), RAD(0)), 1.5 / Animation_Speed)
2515
		end
2516
		local HITFLOOR, HITPOS = Raycast(RightArm.Position, CF(RightArm.Position, RightArm.Position + VT(0, -1, 0)).lookVector, 8, Character)
2517
		if HITFLOOR then
2518
			if HITFLOOR.Parent:FindFirstChildOfClass("Humanoid") then
2519
				local CHILDREN = HITFLOOR.Parent:GetDescendants()
2520
				for index, CHILD in pairs(CHILDREN) do
2521
					if CHILD:IsA("BasePart") and CHILD.Parent:FindFirstChildOfClass("Humanoid") then
2522
						for i = 1, 5 do
2523
							CreateFlyingDebree(CHILD, CF(CHILD.Position), 1, CHILD.Size / 2, 5, MRANDOM(15, 25))
2524
							CHILD:remove()
2525
						end
2526
					end
2527
				end
2528
				local SOUNDPART = CreatePart(3, Effects, "Grass", 0, 1, "Really black", "Sound", VT(0, 0, 0))
2529
				SOUNDPART.CFrame = CF(HITPOS)
2530
				Debris:AddItem(SOUNDPART, 5)
2531
				CreateSound("130972023", SOUNDPART, 6, 3)
2532
				CreateSound("182765513", SOUNDPART, 6, 1)
2533
				WACKYEFFECT({
2534
					EffectType = "Ring",
2535
					Size = VT(0, 0, 0),
2536
					Size2 = VT(1, 1, 0),
2537
					Transparency = 0.7,
2538
					Transparency2 = 1,
2539
					CFrame = CF(HITPOS) * ANGLES(RAD(90), RAD(0), RAD(0)),
2540
					MoveToPos = nil,
2541
					RotationX = 0,
2542
					RotationY = 0,
2543
					RotationZ = 0,
2544
					Material = "Neon",
2545
					Color = C3(.5,0,.5),
2546
					SoundID = nil,
2547
					SoundPitch = nil,
2548
					SoundVolume = nil
2549
				})
2550
			elseif HITFLOOR.Parent.Parent:FindFirstChildOfClass("Humanoid") then
2551
				local CHILDREN = HITFLOOR.Parent.Parent:GetDescendants()
2552
				for index, CHILD in pairs(CHILDREN) do
2553
					if CHILD:IsA("BasePart") and CHILD.Parent:FindFirstChildOfClass("Humanoid") then
2554
						for i = 1, 5 do
2555
							CreateFlyingDebree(CHILD, CF(CHILD.Position), 1, CHILD.Size / 2, 5, MRANDOM(15, 25))
2556
							CHILD:remove()
2557
						end
2558
					end
2559
				end
2560
				local SOUNDPART = CreatePart(3, Effects, "Grass", 0, 1, "Really black", "Sound", VT(0, 0, 0))
2561
				SOUNDPART.CFrame = CF(HITPOS)
2562
				Debris:AddItem(SOUNDPART, 5)
2563
				CreateSound("130972023", SOUNDPART, 6, 3)
2564
				CreateSound("182765513", SOUNDPART, 6, 1)
2565
				WACKYEFFECT({
2566
					EffectType = "Ring",
2567
					Size = VT(0, 0, 0),
2568
					Size2 = VT(1, 1, 0),
2569
					Transparency = 0.7,
2570
					Transparency2 = 1,
2571
					CFrame = CF(HITPOS) * ANGLES(RAD(90), RAD(0), RAD(0)),
2572
					MoveToPos = nil,
2573
					RotationX = 0,
2574
					RotationY = 0,
2575
					RotationZ = 0,
2576
					Material = "Neon",
2577
					Color = C3(.5,0,.5),
2578
					SoundID = nil,
2579
					SoundPitch = nil,
2580
					SoundVolume = nil
2581
				})
2582
			elseif HITFLOOR.Anchored == false then
2583
				if HITFLOOR.Parent ~= workspace then
2584
					local CHILDREN = HITFLOOR.Parent:GetDescendants()
2585
					for index, CHILD in pairs(CHILDREN) do
2586
						if CHILD:IsA("BasePart") and CHILD.Position.Y < HITPOS.Y then
2587
							for i = 1, 5 do
2588
								CreateFlyingDebree(CHILD, CF(CHILD.Position), 1, CHILD.Size / 3, 5, MRANDOM(15, 25))
2589
							end
2590
							CHILD:remove()
2591
						end
2592
					end
2593
				else
2594
					for i = 1, 5 do
2595
						CreateFlyingDebree(HITFLOOR, CF(HITFLOOR.Position), 1, HITFLOOR.Size / 3, 5, MRANDOM(15, 25))
2596
					end
2597
					HITFLOOR:remove()
2598
				end
2599
				local SOUNDPART = CreatePart(3, Effects, "Grass", 0, 1, "Really black", "Sound", VT(0, 0, 0))
2600
				SOUNDPART.CFrame = CF(HITPOS)
2601
				Debris:AddItem(SOUNDPART, 5)
2602
				CreateSound("130972023", SOUNDPART, 10, 3)
2603
				CreateSound("178452217", SOUNDPART, 6, 1)
2604
				WACKYEFFECT({
2605
					EffectType = "Ring",
2606
					Size = VT(0, 0, 0),
2607
					Size2 = VT(1, 1, 0),
2608
					Transparency = 0.7,
2609
					Transparency2 = 1,
2610
					CFrame = CF(HITPOS) * ANGLES(RAD(90), RAD(0), RAD(0)),
2611
					MoveToPos = nil,
2612
					RotationX = 0,
2613
					RotationY = 0,
2614
					RotationZ = 0,
2615
					Material = "Neon",
2616
					Color = C3(.5,0,.5),
2617
					SoundID = nil,
2618
					SoundPitch = nil,
2619
					SoundVolume = nil
2620
				})
2621
			else
2622
				local SOUNDPART = CreatePart(3, Effects, "Grass", 0, 1, "Really black", "Sound", VT(0, 0, 0))
2623
				SOUNDPART.CFrame = CF(HITPOS)
2624
				Debris:AddItem(SOUNDPART, 5)
2625
				CreateSound("130972023", SOUNDPART, 10, 1)
2626
				CreateSound("130972023", SOUNDPART, 6, 0.7)
2627
				CreateDebreeRing(HITFLOOR, HITPOS, 5, VT(5, 5, 5), 5)
2628
				CreateDebreeRing(HITFLOOR, HITPOS, 8, VT(8, 8, 8), 5)
2629
				ApplyAoE(HITPOS, 15, 45, 75, 75, false)
2630
				ApplyAoE(HITPOS, 25, 25, 35, 35, false)
2631
				for i = 1, 5 do
2632
					CreateFlyingDebree(HITFLOOR, CF(HITPOS), 1, VT(MRANDOM(10, 30) / 10, MRANDOM(10, 30) / 10, MRANDOM(10, 30) / 10), 5, MRANDOM(75, 150))
2633
				end
2634
				for i = 1, 5 do
2635
					CreateFlyingDebree(HITFLOOR, CF(HITPOS), 1, VT(MRANDOM(10, 30) / 2, MRANDOM(10, 30) / 2, MRANDOM(10, 30) / 2), 5, MRANDOM(75, 150))
2636
				end
2637
			end
2638
		end
2639
		for i = 0, 1.2, 0.1 / Animation_Speed do
2640
			Swait()
2641
			RootJoint.C0 = Clerp(RootJoint.C0, ROOTC0 * CF(0, 0, 0) * ANGLES(RAD(90), RAD(0), RAD(90)), 1.5 / Animation_Speed)
2642
			Neck.C0 = Clerp(Neck.C0, NECKC0 * CF(0, 0, 0) * ANGLES(RAD(0), RAD(0), RAD(-90)), 1.5 / Animation_Speed)
2643
			RightShoulder.C0 = Clerp(RightShoulder.C0, CF(1.5, 0.5, 0) * ANGLES(RAD(90), RAD(0), RAD(40)) * RIGHTSHOULDERC0, 1.5 / Animation_Speed)
2644
			LeftShoulder.C0 = Clerp(LeftShoulder.C0, CF(-1.5, 0.5, 0) * ANGLES(RAD(0), RAD(0), RAD(-12)) * LEFTSHOULDERC0, 1.5 / Animation_Speed)
2645
			RightHip.C0 = Clerp(RightHip.C0, CF(1, -1, -0.01) * ANGLES(RAD(0), RAD(90), RAD(0)) * ANGLES(RAD(0), RAD(0), RAD(0)), 1.5 / Animation_Speed)
2646
			LeftHip.C0 = Clerp(LeftHip.C0, CF(-1, -0.5, -0.5) * ANGLES(RAD(0), RAD(-90), RAD(0)) * ANGLES(RAD(-4), RAD(0), RAD(0)), 1.5 / Animation_Speed)
2647
		end
2648
		ATTACK = false
2649
		Rooted = false
2650
		UNANCHOR = true
2651
		RootPart.Anchored = false
2652
	end
2653
end
2654
2655
function CreateDebreeRing(FLOOR, POSITION, SIZE, BLOCKSIZE, SWAIT)
2656
	if FLOOR ~= nil then
2657
		coroutine.resume(coroutine.create(function()
2658
			local PART = CreatePart(3, Effects, "Plastic", 0, 1, "Pearl", "DebreeCenter", VT(0, 0, 0))
2659
			PART.CFrame = CF(POSITION)
2660
			for i = 1, 45 do
2661
				local RingPiece = CreatePart(3, Effects, "Plastic", 0, 0, "Pearl", "DebreePart", BLOCKSIZE)
2662
				RingPiece.Material = FLOOR.Material
2663
				RingPiece.Color = FLOOR.Color
2664
				RingPiece.CFrame = PART.CFrame * ANGLES(RAD(0), RAD(i * 8), RAD(0)) * CF(SIZE * 4, 0, 0) * ANGLES(RAD(MRANDOM(-360, 360)), RAD(MRANDOM(-360, 360)), RAD(MRANDOM(-360, 360)))
2665
				Debris:AddItem(RingPiece, SWAIT)
2666
			end
2667
			PART:remove()
2668
		end))
2669
	end
2670
end
2671
function CreateFlyingDebree(FLOOR, POSITION, AMOUNT, BLOCKSIZE, SWAIT, STRENGTH)
2672
	if FLOOR ~= nil then
2673
		for i = 1, AMOUNT do
2674
			do
2675
				local DEBREE = CreatePart(3, Effects, "Neon", FLOOR.Reflectance, FLOOR.Transparency, "Peal", "Debree", BLOCKSIZE, false)
2676
				DEBREE.Material = FLOOR.Material
2677
				DEBREE.Color = FLOOR.Color
2678
				DEBREE.CFrame = POSITION * ANGLES(RAD(MRANDOM(-360, 360)), RAD(MRANDOM(-360, 360)), RAD(MRANDOM(-360, 360)))
2679
				DEBREE.Velocity = VT(MRANDOM(-STRENGTH, STRENGTH), MRANDOM(-STRENGTH, STRENGTH), MRANDOM(-STRENGTH, STRENGTH))
2680
				coroutine.resume(coroutine.create(function()
2681
					Swait(15)
2682
					DEBREE.Parent = workspace
2683
					DEBREE.CanCollide = true
2684
					Debris:AddItem(DEBREE, SWAIT)
2685
				end))
2686
			end
2687
		end
2688
	end
2689
end
2690
2691
function RiftForm()
2692
	ATTACK = true
2693
	Rooted = false
2694
	UNANCHOR = false
2695
	RootPart.Anchored = true
2696
	for i=0, 5, 0.1 / Animation_Speed do
2697
		Swait()
2698
		RootPart.CFrame = RootPart.CFrame * CF(0,0.2,0)
2699
		RootJoint.C0 = Clerp(RootJoint.C0, ROOTC0 * CF(0, 0, 0) * ANGLES(RAD(0), RAD(0), RAD(0)), 0.2 / Animation_Speed)
2700
		Neck.C0 = Clerp(Neck.C0, NECKC0 * CF(0, 0 * Player_Size, 0 + ((1) - 1)) * ANGLES(RAD(-20), RAD(0), RAD(0)), 2 / Animation_Speed)
2701
		RightShoulder.C0 = Clerp(RightShoulder.C0, CF(1.5, 0.5, 0) * ANGLES(RAD(-40), RAD(0), RAD(20)) * RIGHTSHOULDERC0, 2 / Animation_Speed)
2702
		LeftShoulder.C0 = Clerp(LeftShoulder.C0, CF(-1.5, 0.5, 0) * ANGLES(RAD(-40), RAD(0), RAD(-20)) * LEFTSHOULDERC0, 2 / Animation_Speed)
2703
		RightHip.C0 = Clerp(RightHip.C0, CF(1, -1, -0.3) * ANGLES(RAD(0), RAD(90), RAD(0)) * ANGLES(RAD(-5), RAD(0), RAD(-20)), 2 / Animation_Speed)
2704
		LeftHip.C0 = Clerp(LeftHip.C0, CF(-1, -1, -0.3) * ANGLES(RAD(0), RAD(-90), RAD(0)) * ANGLES(RAD(-5), RAD(0), RAD(20)), 2 / Animation_Speed)
2705
	end
2706
	CreateSound("1368598393", Effects, 10, 1)
2707
	for i=0, 2, 0.1 / Animation_Speed do
2708
		Swait()
2709
		local CFRAME = CF(Torso.Position)*ANGLES(RAD(MRANDOM(-180,180)),RAD(MRANDOM(-180,180)),RAD(MRANDOM(-180,180)))
2710
		MagicSphere3(VT(0,0,0),15,CFRAME,"Royal purple",VT(0.1,0.1,5))
2711
		MagicSphere3(VT(0.1,0.1,0.1),15,CFRAME,"Royal purple",VT(0.1,0.1,5))
2712
		RootJoint.C0 = Clerp(RootJoint.C0, ROOTC0 * CF(0, 0, 0) * ANGLES(RAD(0), RAD(0), RAD(0)), 0.2 / Animation_Speed)
2713
		Neck.C0 = Clerp(Neck.C0, NECKC0 * CF(0, 0 * Player_Size, 0 + ((1) - 1)) * ANGLES(RAD(20), RAD(0), RAD(0)), 2 / Animation_Speed)
2714
		RightShoulder.C0 = Clerp(RightShoulder.C0, CF(1.15, 0.5, -1) * ANGLES(RAD(90), RAD(0), RAD(-75)) * RIGHTSHOULDERC0, 2 / Animation_Speed)
2715
		LeftShoulder.C0 = Clerp(LeftShoulder.C0, CF(-1.15, 0.5, -1) * ANGLES(RAD(90), RAD(0), RAD(75)) * LEFTSHOULDERC0, 2 / Animation_Speed)
2716
		RightHip.C0 = Clerp(RightHip.C0, CF(1, -0.5, -0.5) * ANGLES(RAD(0), RAD(90), RAD(0)) * ANGLES(RAD(-5), RAD(0), RAD(0)), 2 / Animation_Speed)
2717
		LeftHip.C0 = Clerp(LeftHip.C0, CF(-1, -0.5, -0.5) * ANGLES(RAD(0), RAD(-90), RAD(0)) * ANGLES(RAD(-5), RAD(0), RAD(0)), 2 / Animation_Speed)
2718
	end
2719
	CreateSound("1368583274", Effects, 10, 1)
2720
	for i=0, 6, 0.1 / Animation_Speed do
2721
		Swait()
2722
		CreateRing2(VT(45,5,0)*2,false,0,45,Torso.CFrame*ANGLES(RAD(MRANDOM(-180,180)),RAD(MRANDOM(-180,180)),RAD(MRANDOM(-180,180))),"Really black",VT(-1,0,0))
2723
		CreateRing2(VT(45,5,0)*3,false,0,45,Torso.CFrame*ANGLES(RAD(MRANDOM(-180,180)),RAD(MRANDOM(-180,180)),RAD(MRANDOM(-180,180))),"Really black",VT(-1,0,0)*3)
2724
		local CFRAME = CF(Torso.Position)*ANGLES(RAD(MRANDOM(-180,180)),RAD(MRANDOM(-180,180)),RAD(MRANDOM(-180,180)))
2725
		MagicSphere3(VT(0,0,0),15,CFRAME,"Royal purple",VT(0.1,0.1,55))
2726
		MagicSphere3(VT(0,0,0),15,CFRAME,"Royal purple",VT(2,2,2))
2727
		MagicSphere3(VT(0.1,0.1,0.1),15,CFRAME,"Royal Purple",VT(0.1,0.1,55))
2728
		RootJoint.C0 = Clerp(RootJoint.C0, ROOTC0 * CF(0, 0, 0) * ANGLES(RAD(0), RAD(0), RAD(0)), 0.2 / Animation_Speed)
2729
		Neck.C0 = Clerp(Neck.C0, NECKC0 * CF(0, 0 * Player_Size, 0 + ((1) - 1)) * ANGLES(RAD(20), RAD(0), RAD(0)), 2 / Animation_Speed)
2730
		RightShoulder.C0 = Clerp(RightShoulder.C0, CF(1.15, 0.5, -1) * ANGLES(RAD(90), RAD(0), RAD(-75)) * RIGHTSHOULDERC0, 2 / Animation_Speed)
2731
		LeftShoulder.C0 = Clerp(LeftShoulder.C0, CF(-1.15, 0.5, -1) * ANGLES(RAD(90), RAD(0), RAD(75)) * LEFTSHOULDERC0, 2 / Animation_Speed)
2732
		RightHip.C0 = Clerp(RightHip.C0, CF(1, -0.5, -0.5) * ANGLES(RAD(0), RAD(90), RAD(0)) * ANGLES(RAD(-5), RAD(0), RAD(0)), 2 / Animation_Speed)
2733
		LeftHip.C0 = Clerp(LeftHip.C0, CF(-1, -0.5, -0.5) * ANGLES(RAD(0), RAD(-90), RAD(0)) * ANGLES(RAD(-5), RAD(0), RAD(0)), 2 / Animation_Speed)
2734
	end
2735
	CreateSound("907329532", Effects, 10, 0.9)
2736
	Swait(175)
2737
	CreateRing2(VT(0,0,0),false,0,45,RootPart.CFrame*ANGLES(RAD(90),RAD(0),RAD(0)),"Royal purple",VT(7,7,0))
2738
	CreateSound("1368605755", Effects, 10, 1)
2739
	CreateSound("1368637781", Effects, 10, 1)
2740
	MagicSphere3(VT(0,0,0),45,Torso.CFrame,"Royal purple",VT(5,5,5))
2741
	for i=0, 1, 0.1 / Animation_Speed do
2742
	CreateRing2(VT(0,0,0),false,0,45,Torso.CFrame*ANGLES(RAD(MRANDOM(-180,180)),RAD(MRANDOM(-180,180)),RAD(MRANDOM(-180,180))),"Royal purple",VT(4,4,0))
2743
		CreateRing2(VT(0,0,0),false,0,45,Torso.CFrame*ANGLES(RAD(MRANDOM(-180,180)),RAD(MRANDOM(-180,180)),RAD(MRANDOM(-180,180))),"Royal purple",VT(5,5,0))
2744
		RootJoint.C0 = Clerp(RootJoint.C0, ROOTC0 * CF(0, 0, 0) * ANGLES(RAD(-25), RAD(0), RAD(0)), 0.2 / Animation_Speed)
2745
		Neck.C0 = Clerp(Neck.C0, NECKC0 * CF(0, 0 * Player_Size, 0 + ((1) - 1)) * ANGLES(RAD(-20), RAD(0), RAD(0)), 2 / Animation_Speed)
2746
		RightShoulder.C0 = Clerp(RightShoulder.C0, CF(1.5, 0.5, 0) * ANGLES(RAD(-60), RAD(0), RAD(20)) * RIGHTSHOULDERC0, 2 / Animation_Speed)
2747
		LeftShoulder.C0 = Clerp(LeftShoulder.C0, CF(-1.5, 0.5, 0) * ANGLES(RAD(-60), RAD(0), RAD(-20)) * LEFTSHOULDERC0, 2 / Animation_Speed)
2748
		RightHip.C0 = Clerp(RightHip.C0, CF(1, -1, -0.3) * ANGLES(RAD(0), RAD(90), RAD(0)) * ANGLES(RAD(-5), RAD(0), RAD(-50)), 2 / Animation_Speed)
2749
		LeftHip.C0 = Clerp(LeftHip.C0, CF(-1, -1, -0.3) * ANGLES(RAD(0), RAD(-90), RAD(0)) * ANGLES(RAD(-5), RAD(0), RAD(50)), 2 / Animation_Speed)
2750
	end
2751
	UNANCHOR = true
2752
	RootPart.Anchored = false
2753
	ATTACK = false
2754
	Rooted = false
2755
end
2756
2757
function CreateRing2(SIZE,DOESROT,ROT,WAIT,CFRAME,COLOR,GROW)
2758
	local wave = CreatePart(3, Effects, "Neon", 0, 0.5, BRICKC(COLOR), "Effect", VT(0,0,0))
2759
	local mesh = IT("SpecialMesh",wave)
2760
	mesh.MeshType = "FileMesh"
2761
	mesh.MeshId = "http://www.roblox.com/asset/?id=3270017"
2762
	mesh.Scale = SIZE
2763
	mesh.Offset = VT(0,0,0)
2764
	wave.CFrame = CFRAME
2765
	coroutine.resume(coroutine.create(function(PART)
2766
		for i = 1, WAIT do
2767
			Swait()
2768
			mesh.Scale = mesh.Scale + GROW
2769
			if DOESROT == true then
2770
				wave.CFrame = wave.CFrame * CFrame.fromEulerAnglesXYZ(0,ROT,0)
2771
			end
2772
			wave.Transparency = wave.Transparency + (0.5/WAIT)
2773
			if wave.Transparency > 0.99 then
2774
				wave:remove()
2775
			end
2776
		end
2777
	end))
2778
end
2779
2780
function MagicSphere3(SIZE,WAIT,CFRAME,COLOR,GROW)
2781
	local wave = CreatePart(3, Effects, "Neon", 0, 0, BRICKC(COLOR), "Effect", VT(1,1,1), true)
2782
	local mesh = IT("SpecialMesh",wave)
2783
	mesh.MeshType = "Sphere"
2784
	mesh.Scale = SIZE
2785
	mesh.Offset = VT(0,0,0)
2786
	wave.CFrame = CFRAME
2787
	coroutine.resume(coroutine.create(function(PART)
2788
		for i = 1, WAIT do
2789
			Swait()
2790
			mesh.Scale = mesh.Scale + GROW
2791
			wave.Transparency = wave.Transparency + (1/WAIT)
2792
			if wave.Transparency > 0.99 then
2793
				wave:remove()
2794
			end
2795
		end
2796
	end))
2797
end
2798
2799
local lightning = Instance.new("ParticleEmitter",Torso)
2800
lightning.Texture = "http://www.roblox.com/asset/?id=348321827"
2801
lightning.LightEmission = 0
2802
lightning.Color = ColorSequence.new(Color3.new(5,0,.5),Color3.new(0,0,0))
2803
lightning.LockedToPart = true
2804
lightning.Rate = 20
2805
lightning.Lifetime = NumberRange.new(0.1,0.10)
2806
lightning.Rotation = NumberRange.new(0,360)
2807
lightning.Size = NumberSequence.new(3,3,3)
2808
lightning.Transparency = NumberSequence.new(0,0)
2809
lightning.Speed = NumberRange.new(0,0)
2810
lightning.RotSpeed = NumberRange.new(0,0)
2811
lightning.ZOffset = 5
2812
lightning.Parent = Character.Torso
2813
lightning.Enabled = false
2814
2815
    Player=game:GetService('Players').LocalPlayer
2816
    Character=Player.Character
2817
    Mouse=Player:GetMouse()
2818
    m=Instance.new('Model',Character)
2819
    local function weldBetween(a, b)
2820
        local weldd = Instance.new("ManualWeld")
2821
        weldd.Part0 = a
2822
        weldd.Part1 = b
2823
        weldd.C0 = CFrame.new()
2824
        weldd.C1 = b.CFrame:inverse() * a.CFrame
2825
        weldd.Parent = a
2826
        return weldd
2827
    end
2828
 
2829
    it=Instance.new
2830
 
2831
    function nooutline(part)
2832
        part.TopSurface,part.BottomSurface,part.LeftSurface,part.RightSurface,part.FrontSurface,part.BackSurface = 10,10,10,10,10,10
2833
    end
2834
 
2835
    function part(formfactor,parent,material,reflectance,transparency,brickcolor,name,size)
2836
        local fp=it("Part")
2837
        fp.formFactor=formfactor
2838
        fp.Parent=parent
2839
        fp.Reflectance=reflectance
2840
        fp.Transparency=transparency
2841
        fp.CanCollide=false
2842
        fp.Locked=true
2843
        fp.BrickColor=BrickColor.new(tostring(brickcolor))
2844
        fp.Name=name
2845
        fp.Size=size
2846
        fp.Position=Character.Torso.Position
2847
        nooutline(fp)
2848
        fp.Material=material
2849
        fp:BreakJoints()
2850
        return fp
2851
    end
2852
   
2853
    function mesh(Mesh,part,meshtype,meshid,offset,scale)
2854
        local mesh=it(Mesh)
2855
        mesh.Parent=part
2856
        if Mesh=="SpecialMesh" then
2857
            mesh.MeshType=meshtype
2858
            mesh.MeshId=meshid
2859
        end
2860
        mesh.Offset=offset
2861
        mesh.Scale=scale
2862
        return mesh
2863
    end
2864
   
2865
    function weld(parent,part0,part1,c0,c1)
2866
        local weld=it("Weld")
2867
        weld.Parent=parent
2868
        weld.Part0=part0
2869
        weld.Part1=part1
2870
        weld.C0=c0
2871
        weld.C1=c1
2872
        return weld
2873
    end
2874
2875
local eeeffecto = Instance.new("ParticleEmitter",Torso)
2876
eeeffecto.Texture = "http://www.roblox.com/asset/?id=305943367"
2877
eeeffecto.LightEmission = 0
2878
eeeffecto.Color = ColorSequence.new(Color3.new(5,0,.5),Color3.new(0,0,0))
2879
eeeffecto.LockedToPart = true
2880
eeeffecto.Rate = 10
2881
eeeffecto.Lifetime = NumberRange.new(0.1,0.1)
2882
eeeffecto.Rotation = NumberRange.new(0,0)
2883
eeeffecto.Size = NumberSequence.new(9,9,9)
2884
eeeffecto.Transparency = NumberSequence.new(0,0)
2885
eeeffecto.Speed = NumberRange.new(0,0)
2886
eeeffecto.RotSpeed = NumberRange.new(0,0)
2887
eeeffecto.Parent = Character.Torso
2888
eeeffecto.Enabled = false
2889
2890
--//=================================\\
2891
--||	  ASSIGN THINGS TO KEYS
2892
--\\=================================//
2893
2894
function MouseDown(Mouse)
2895
	if ATTACK == false then
2896
	end
2897
end
2898
2899
function MouseUp(Mouse)
2900
HOLD = false
2901
end
2902
2903
function KeyDown(Key)
2904
	KEYHOLD = true
2905
    if Key == "l" and ATTACK == false then
2906
		RiftForm()
2907
        lightning.Enabled = true
2908
		eeeffecto.Enabled = true
2909
        SKILL4TEXT:remove()
2910
        SKILL3TEXT:remove()
2911
        SKILL2TEXT:remove()
2912
        SKILL1TEXT:remove()
2913
2914
local SKILL1TEXT = CreateLabel(SKILL1FRAME, "[Z]", SKILLTEXTCOLOR, SKILLTEXTSIZE, SKILLFONT, 0, 2, 0.5, "Text 1")
2915
local SKILL2TEXT = CreateLabel(SKILL2FRAME, "[B]", SKILLTEXTCOLOR, SKILLTEXTSIZE, SKILLFONT, 0, 2, 0.5, "Text 2")
2916
local SKILL3TEXT = CreateLabel(SKILL3FRAME, "[C]", SKILLTEXTCOLOR, SKILLTEXTSIZE, SKILLFONT, 0, 2, 0.5, "Text 3")
2917
local SKILL4TEXT = CreateLabel(SKILL4FRAME, "[V]", SKILLTEXTCOLOR, SKILLTEXTSIZE, SKILLFONT, 0, 2, 0.5, "Text 4")
2918
local SKILL5TEXT = CreateLabel(SKILL5FRAME, "[E]", SKILLTEXTCOLOR, SKILLTEXTSIZE, SKILLFONT, 0, 2, 0.5, "Text 5")
2919
local SKILL6TEXT = CreateLabel(SKILL6FRAME, "[X]", SKILLTEXTCOLOR, SKILLTEXTSIZE, SKILLFONT, 0, 2, 0.5, "Text 6")
2920
        RiftWorld()
2921
s:stop()
2922
local s = Instance.new("Sound",char)
2923
	s.Name = "BGMusic"
2924
	s.SoundId = "rbxassetid://1275083876"
2925
	s.Pitch = 1
2926
	s.Volume = 40
2927
	s.Looped = true
2928
	s.archivable = false
2929
	s.Parent = char.Head
2930
	wait(0.1)
2931
	s:play()
2932
    end
2933
2934
	if Key == "z" and ATTACK == false then
2935-
		Shot()
2935+
		Banisher_Bullet()
2936
	end
2937
2938
	if Key == "b" and ATTACK == false then
2939-
                Neck_Snap()
2939+
                 Banisher_Burn()
2940
	end
2941
2942
	if Key == "c" and ATTACK == false then
2943-
                ShadowCloak()
2943+
                 BanishmentBeam()
2944
	end
2945
2946
	if Key == "v" and ATTACK == false then
2947-
	        BulletRoller()
2947+
                 Teleport()
2948-
        end     
2948+
2949
2950
	if Key == "t" and ATTACK == false then
2951-
	        Extreme_Offset()
2951+
                 Taunt()
2952-
        end   
2952+
2953
2954
	if Key == "e" and ATTACK == false then
2955
                 Madness()
2956
	end	
2957
2958
	if Key == "j" and ATTACK == false then
2959
                 Nuke()
2960
	end	
2961
2962
	if Key == "y" and ATTACK == false then
2963
                 oofBeam()
2964
	end
2965
2966
	if Key == "u" and ATTACK == false then
2967
		Absoluteum()
2968
	end
2969
2970
	if Key == "g" and ATTACK == false then
2971
		               chatfunc(UnBanishTaunts[MRANDOM(1,#UnBanishTaunts)])
2972
			       TOBANISH = {}
2973
	end
2974
2975
	if Key == "p" and ATTACK == false then
2976
		TakeOnMe()
2977
	end
2978
2979
	if Key == "x" and ATTACK == false then
2980
                 Deathbound()
2981
	end
2982
end
2983
2984
function KeyUp(Key)
2985
	KEYHOLD = false
2986
end
2987
2988
	Mouse.Button1Down:connect(function(NEWKEY)
2989
		MouseDown(NEWKEY)
2990
	end)
2991
	Mouse.Button1Up:connect(function(NEWKEY)
2992
		MouseUp(NEWKEY)
2993
	end)
2994
	Mouse.KeyDown:connect(function(NEWKEY)
2995
		KeyDown(NEWKEY)
2996
	end)
2997
	Mouse.KeyUp:connect(function(NEWKEY)
2998
		KeyUp(NEWKEY)
2999
	end)
3000
3001
3002
--//=================================\\
3003
--\\=================================//
3004
3005
3006
function unanchor()
3007
	if UNANCHOR == true then
3008
		g = Character:GetChildren()
3009
		for i = 1, #g do
3010
			if g[i].ClassName == "Part" then
3011
				g[i].Anchored = false
3012
			end
3013
		end
3014
	end
3015
end
3016
3017
3018
--//=================================\\
3019
--||	WRAP THE WHOLE SCRIPT UP
3020
--\\=================================//
3021
3022
Humanoid.Changed:connect(function(Jump)
3023
	if Jump == "Jump" and (Disable_Jump == true) then
3024
		Humanoid.Jump = false
3025
	end
3026
end)
3027
3028
local CONNECT = nil
3029
3030
while true do
3031
	Swait()
3032
	ANIMATE.Parent = nil
3033
	if Character:FindFirstChildOfClass("Humanoid") == nil then
3034
		Humanoid = IT("Humanoid",Character)
3035
	end
3036
	for _,v in next, Humanoid:GetPlayingAnimationTracks() do
3037
	    v:Stop();
3038
	end
3039
	SINE = SINE + CHANGE
3040
	local TORSOVELOCITY = (RootPart.Velocity * VT(1, 0, 1)).magnitude
3041
	local TORSOVERTICALVELOCITY = RootPart.Velocity.y
3042
	local HITFLOOR = Raycast(RootPart.Position, (CF(RootPart.Position, RootPart.Position + VT(0, -1, 0))).lookVector, 4, Character)
3043
	local WALKSPEEDVALUE = 6 / (Humanoid.WalkSpeed / 16)
3044
	if ANIM == "Walk" and TORSOVELOCITY > 1 then
3045
		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) / Animation_Speed)
3046
		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) / Animation_Speed)
3047
		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) / Animation_Speed)
3048
		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) / Animation_Speed)
3049
	elseif (ANIM ~= "Walk") or (TORSOVELOCITY < 1) then
3050
		RootJoint.C1 = Clerp(RootJoint.C1, ROOTC0 * CF(0, 0, 0) * ANGLES(RAD(0), RAD(0), RAD(0)), 0.2 / Animation_Speed)
3051
		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 / Animation_Speed)
3052
		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 / Animation_Speed)
3053
		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 / Animation_Speed)
3054
	end
3055
	if TORSOVERTICALVELOCITY > 1 and HITFLOOR == nil then
3056
		ANIM = "Jump"
3057
		if ATTACK == false then
3058
            Torso.Neck.C0=Clerp(Torso.Neck.C0,NECKC0*ANGLES(0,math.rad(-25),0)*ANGLES(math.rad(0 - 25 * math.cos(SINE / 0.1164)),math.rad(0 - 30 * math.cos(SINE / 0.25)),math.rad(0 - 30 * math.cos(SINE / 0.465))),.1)
3059
		    RootJoint.C0 = Clerp(RootJoint.C0, ROOTC0 * CF(0, 0 - 0.05 * COS(SINE / 12), 0 + 0.05 * COS(SINE / 12)) * ANGLES(RAD(-2 + 2 * COS(SINE / 12)), RAD(0), RAD(0)), 0.15 / Animation_Speed)
3060
			RightShoulder.C0 = Clerp(RightShoulder.C0, CF(1.5, 0.5, 0) * ANGLES(RAD(45), RAD(0), RAD(25))* RIGHTSHOULDERC0, 0.15 / Animation_Speed)
3061
			LeftShoulder.C0 = Clerp(LeftShoulder.C0, CF(-1.5, 0.5, 0) * ANGLES(RAD(-40), RAD(0), RAD(-20)) * LEFTSHOULDERC0, 0.2 / Animation_Speed)
3062
			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)
3063
			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)
3064
	    end
3065
	elseif TORSOVERTICALVELOCITY < -1 and HITFLOOR == nil then
3066
		ANIM = "Fall"
3067
		if ATTACK == false then
3068
            Torso.Neck.C0=Clerp(Torso.Neck.C0,NECKC0*ANGLES(0,math.rad(-25),0)*ANGLES(math.rad(0 - 25 * math.cos(SINE / 0.1164)),math.rad(0 - 30 * math.cos(SINE / 0.25)),math.rad(0 - 30 * math.cos(SINE / 0.465))),.1)
3069
		    RootJoint.C0 = Clerp(RootJoint.C0, ROOTC0 * CF(0, 0 - 0.05 * COS(SINE / 12), 0 + 0.05 * COS(SINE / 12)) * ANGLES(RAD(-2 + 2 * COS(SINE / 12)), RAD(0), RAD(0)), 0.15 / Animation_Speed)
3070
			RightShoulder.C0 = Clerp(RightShoulder.C0, CF(1.5, 0.5, 0) * ANGLES(RAD(45), RAD(0), RAD(25))* RIGHTSHOULDERC0, 0.15 / Animation_Speed)
3071
			LeftShoulder.C0 = Clerp(LeftShoulder.C0, CF(-1.5, 0.5, 0) * ANGLES(RAD(0), RAD(0), RAD(-60)) * LEFTSHOULDERC0, 0.2 / Animation_Speed)
3072
			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)
3073
			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)
3074
		end
3075
	elseif TORSOVELOCITY < 1 and HITFLOOR ~= nil then
3076
		ANIM = "Idle"
3077
		if ATTACK == false then
3078
            Torso.Neck.C0=Clerp(Torso.Neck.C0,NECKC0*ANGLES(0,math.rad(-25),0)*ANGLES(math.rad(0 - 25 * math.cos(SINE / 0.1164)),math.rad(0 - 30 * math.cos(SINE / 0.25)),math.rad(0 - 30 * math.cos(SINE / 0.465))),.1)
3079
		    RootJoint.C0 = Clerp(RootJoint.C0, ROOTC0 * CF(0, 0 - 0.05 * COS(SINE / 12), 0 + 0.05 * COS(SINE / 12)) * ANGLES(RAD(-2 + 2 * COS(SINE / 12)), RAD(0), RAD(0)), 0.15 / Animation_Speed)
3080
			RightShoulder.C0 = Clerp(RightShoulder.C0, CF(1.5, 0.5, 0) * ANGLES(RAD(90), RAD(0), RAD(0)) * RIGHTSHOULDERC0, 0.15 / Animation_Speed)
3081
			LeftShoulder.C0 = Clerp(LeftShoulder.C0, CF(-1.5, 0.5, 0) * ANGLES(RAD(90), RAD(0), RAD(0)) * LEFTSHOULDERC0, 0.5 / Animation_Speed)
3082
			RightHip.C0 = Clerp(RightHip.C0, CF(1, -1 - 0.05 * SIN(SINE / 12), 0) * ANGLES(RAD(-10), RAD(80), RAD(0)) * ANGLES(RAD(-3), RAD(0), RAD(0)), 1 / Animation_Speed)
3083
			LeftHip.C0 = Clerp(LeftHip.C0, CF(-1, -1 - 0.05 * SIN(SINE / 12), 0) * ANGLES(RAD(-10), RAD(-80), RAD(0)) * ANGLES(RAD(-3), RAD(0), RAD(0)), 1 / Animation_Speed)
3084
		end
3085
	elseif TORSOVELOCITY > 1 and HITFLOOR ~= nil then
3086
		ANIM = "Walk"
3087
		if ATTACK == false then
3088
            Torso.Neck.C0=Clerp(Torso.Neck.C0,NECKC0*ANGLES(0,math.rad(-25),0)*ANGLES(math.rad(0 - 25 * math.cos(SINE / 0.1164)),math.rad(0 - 30 * math.cos(SINE / 0.25)),math.rad(0 - 30 * math.cos(SINE / 0.465))),.1)
3089
		    RootJoint.C0 = Clerp(RootJoint.C0, ROOTC0 * CF(0, 0 - 0.05 * COS(SINE / 12), 0 + 0.05 * COS(SINE / 12)) * ANGLES(RAD(-2 + 2 * COS(SINE / 12)), RAD(0), RAD(0)), 0.15 / Animation_Speed)
3090
			RightShoulder.C0 = Clerp(RightShoulder.C0, CF(1.5, 0.5, 0) * ANGLES(RAD(90), RAD(0), RAD(0)) * RIGHTSHOULDERC0, 0.15 / Animation_Speed)
3091
			LeftShoulder.C0 = Clerp(LeftShoulder.C0, CF(-1.5, 0.5, 0) * ANGLES(RAD(90), RAD(0), RAD(0)) * LEFTSHOULDERC0, 0.5 / Animation_Speed)
3092
			RightHip.C0 = Clerp(RightHip.C0, CF(1 , -1, 0) * ANGLES(RAD(0), RAD(90), RAD(0)) * ANGLES(RAD(0), RAD(0), RAD(-15)), 2 / Animation_Speed)
3093
			LeftHip.C0 = Clerp(LeftHip.C0, CF(-1, -1, 0) * ANGLES(RAD(0), RAD(-90), RAD(0)) * ANGLES(RAD(0), RAD(0), RAD(15)), 2 / Animation_Speed)
3094
		end
3095
	end
3096
	unanchor()
3097
	Humanoid.MaxHealth = "inf"
3098
	Humanoid.Health = "inf"
3099
	if Rooted == false then
3100
		Disable_Jump = false
3101
		Humanoid.WalkSpeed = Speed
3102
	elseif Rooted == true then
3103
		Disable_Jump = true
3104
		Humanoid.WalkSpeed = 0
3105
	end
3106
	sick.Parent = Torso
3107
	sick:resume()
3108
	sick.Volume = 5
3109
	sick.Pitch = 1.2
3110
	sick.SoundId = "rbxassetid://1470848774"
3111
	sick.Name = "BanishV3Music"
3112
end
3113
3114
--//=================================\\
3115
--\\=================================//
3116
3117
3118
3119
3120
3121
--//====================================================\\--
3122
--||			  		 END OF SCRIPT
3123
--\\====================================================//--