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