View difference between Paste ID: uP0WU88Q and XTJkZfvU
SHOW: | | - or go back to the newest paste.
1
if game:GetService("RunService"):IsClient() then error("Script must be server-side in order to work; use h/ and not hl/") end
2
local Player,game,owner = owner,game
3
local RealPlayer = Player
4
do
5
	print("FE Compatibility code by Mokiros")
6
	local rp = RealPlayer
7
	script.Parent = rp.Character
8
	
9
	--RemoteEvent for communicating
10
	local Event = Instance.new("RemoteEvent")
11
	Event.Name = "UserInput_Event"
12
13
	--Fake event to make stuff like Mouse.KeyDown work
14
	local function fakeEvent()
15
		local t = {_fakeEvent=true,Functions={},Connect=function(self,f)table.insert(self.Functions,f) end}
16
		t.connect = t.Connect
17
		return t
18
	end
19
20
	--Creating fake input objects with fake variables
21
    local m = {Target=nil,Hit=CFrame.new(),KeyUp=fakeEvent(),KeyDown=fakeEvent(),Button1Up=fakeEvent(),Button1Down=fakeEvent()}
22
	local UIS = {InputBegan=fakeEvent(),InputEnded=fakeEvent()}
23
	local CAS = {Actions={},BindAction=function(self,name,fun,touch,...)
24
		CAS.Actions[name] = fun and {Name=name,Function=fun,Keys={...}} or nil
25
	end}
26
	--Merged 2 functions into one by checking amount of arguments
27
	CAS.UnbindAction = CAS.BindAction
28
29
	--This function will trigger the events that have been :Connect()'ed
30
	local function te(self,ev,...)
31
		local t = m[ev]
32
		if t and t._fakeEvent then
33
			for _,f in pairs(t.Functions) do
34
				f(...)
35
			end
36
		end
37
	end
38
	m.TrigEvent = te
39
	UIS.TrigEvent = te
40
41
	Event.OnServerEvent:Connect(function(plr,io)
42
	    if plr~=rp then return end
43
		m.Target = io.Target
44
		m.Hit = io.Hit
45
		if not io.isMouse then
46
			local b = io.UserInputState == Enum.UserInputState.Begin
47
			if io.UserInputType == Enum.UserInputType.MouseButton1 then
48
				return m:TrigEvent(b and "Button1Down" or "Button1Up")
49
			end
50
			for _,t in pairs(CAS.Actions) do
51
				for _,k in pairs(t.Keys) do
52
					if k==io.KeyCode then
53
						t.Function(t.Name,io.UserInputState,io)
54
					end
55
				end
56
			end
57
			m:TrigEvent(b and "KeyDown" or "KeyUp",io.KeyCode.Name:lower())
58
			UIS:TrigEvent(b and "InputBegan" or "InputEnded",io,false)
59
	    end
60
	end)
61
	Event.Parent = NLS([==[
62
	local Player = game:GetService("Players").LocalPlayer
63
	local Event = script:WaitForChild("UserInput_Event")
64
65
	local Mouse = Player:GetMouse()
66
	local UIS = game:GetService("UserInputService")
67
	local input = function(io,a)
68
		if a then return end
69
		--Since InputObject is a client-side instance, we create and pass table instead
70
		Event:FireServer({KeyCode=io.KeyCode,UserInputType=io.UserInputType,UserInputState=io.UserInputState,Hit=Mouse.Hit,Target=Mouse.Target})
71
	end
72
	UIS.InputBegan:Connect(input)
73
	UIS.InputEnded:Connect(input)
74
75
	local h,t
76
	--Give the server mouse data 30 times every second, but only if the values changed
77
	--If player is not moving their mouse, client won't fire events
78
	while wait(1/30) do
79
		if h~=Mouse.Hit or t~=Mouse.Target then
80
			h,t=Mouse.Hit,Mouse.Target
81
			Event:FireServer({isMouse=true,Target=t,Hit=h})
82
		end
83
	end]==],Player.Character)
84
85
	----Sandboxed game object that allows the usage of client-side methods and services
86
	--Real game object
87
	local _rg = game
88
89
	--Metatable for fake service
90
	local fsmt = {
91
		__index = function(self,k)
92
			local s = rawget(self,"_RealService")
93
			if s then return s[k] end
94
		end,
95
		__newindex = function(self,k,v)
96
			local s = rawget(self,"_RealService")
97
			if s then s[k]=v end
98
		end,
99
		__call = function(self,...)
100
			local s = rawget(self,"_RealService")
101
			if s then return s(...) end
102
		end
103
	}
104
	local function FakeService(t,RealService)
105
		t._RealService = typeof(RealService)=="string" and _rg:GetService(RealService) or RealService
106
		return setmetatable(t,fsmt)
107
	end
108
109
	--Fake game object
110
	local g = {
111
		GetService = function(self,s)
112
			return self[s]
113
		end,
114
		Players = FakeService({
115
			LocalPlayer = FakeService({GetMouse=function(self)return m end},Player)
116
		},"Players"),
117
		UserInputService = FakeService(UIS,"UserInputService"),
118
		ContextActionService = FakeService(CAS,"ContextActionService"),
119
	}
120
	rawset(g.Players,"localPlayer",g.Players.LocalPlayer)
121
	g.service = g.GetService
122
	
123
	g.RunService = FakeService({
124
		RenderStepped = _rg:GetService("RunService").Heartbeat,
125
		BindToRenderStep = function(self,name,_,fun)
126
127
		end,
128
		UnbindFromRenderStep = function(self,name)
129
			self._btrs[name]:Disconnect()
130
		end,
131
	},"RunService")
132
133
	setmetatable(g,{
134
		__index=function(self,s)
135
			return _rg:GetService(s) or typeof(_rg[s])=="function"
136
			and function(_,...)return _rg[s](_rg,...)end or _rg[s]
137
		end,
138
		__newindex = fsmt.__newindex,
139
		__call = fsmt.__call
140
	})
141
	--Changing owner to fake player object to support owner:GetMouse()
142
	game,owner = g,g.Players.LocalPlayer
143
end
144
--//====================================================\\--
145
--||			   CREATED BY SHACKLUSTER
146
--\\====================================================//--
147
148
149
150
wait(0.2)
151
152
153
154
Player = game:GetService("Players").LocalPlayer
155
PlayerGui = Player.PlayerGui
156
Cam = workspace.CurrentCamera
157
Backpack = Player.Backpack
158
Character = Player.Character
159
Humanoid = Character.Humanoid
160
Mouse = Player:GetMouse()
161
RootPart = Character["HumanoidRootPart"]
162
Torso = Character["Torso"]
163
Head = Character["Head"]
164
RightArm = Character["Right Arm"]
165
LeftArm = Character["Left Arm"]
166
RightLeg = Character["Right Leg"]
167
LeftLeg = Character["Left Leg"]
168
RootJoint = RootPart["RootJoint"]
169
Neck = Torso["Neck"]
170
RightShoulder = Torso["Right Shoulder"]
171
LeftShoulder = Torso["Left Shoulder"]
172
RightHip = Torso["Right Hip"]
173
LeftHip = Torso["Left Hip"]
174
local sick = Instance.new("Sound",Character)
175
sick.SoundId = "rbxassetid://733414830"
176
sick.Looped = true
177
sick.Pitch = 1
178
sick.Volume = 1
179
sick:Play()
180
Humanoid.HipHeight = 15
181
Humanoid.DisplayDistanceType = "None"
182
local LightningBolts = {}
183
Humanoid.Name = "Sin"
184
185
IT = Instance.new
186
CF = CFrame.new
187
VT = Vector3.new
188
RAD = math.rad
189
C3 = Color3.new
190
UD2 = UDim2.new
191
BRICKC = BrickColor.new
192
ANGLES = CFrame.Angles
193
EULER = CFrame.fromEulerAnglesXYZ
194
COS = math.cos
195
ACOS = math.acos
196
SIN = math.sin
197
ASIN = math.asin
198
ABS = math.abs
199
MRANDOM = math.random
200
FLOOR = math.floor
201
202
function CreateMesh(MESH, PARENT, MESHTYPE, MESHID, TEXTUREID, SCALE, OFFSET)
203
	local NEWMESH = IT(MESH)
204
	if MESH == "SpecialMesh" then
205
		NEWMESH.MeshType = MESHTYPE
206
		if MESHID ~= "nil" and MESHID ~= "" then
207
			NEWMESH.MeshId = "http://www.roblox.com/asset/?id="..MESHID
208
		end
209
		if TEXTUREID ~= "nil" and TEXTUREID ~= "" then
210
			NEWMESH.TextureId = "http://www.roblox.com/asset/?id="..TEXTUREID
211
		end
212
	end
213
	NEWMESH.Offset = OFFSET or VT(0, 0, 0)
214
	NEWMESH.Scale = SCALE
215
	NEWMESH.Parent = PARENT
216
	return NEWMESH
217
end
218
219
function CreatePart(FORMFACTOR, PARENT, MATERIAL, REFLECTANCE, TRANSPARENCY, BRICKCOLOR, NAME, SIZE, ANCHR)
220
	local NEWPART = IT("Part")
221
	NEWPART.formFactor = FORMFACTOR
222
	NEWPART.Reflectance = REFLECTANCE
223
	NEWPART.Transparency = TRANSPARENCY
224
	NEWPART.CanCollide = false
225
	NEWPART.Locked = true
226
	NEWPART.Anchored = true
227
	if ANCHR == false then
228
		NEWPART.Anchored = false
229
	end
230
	NEWPART.BrickColor = BRICKC(tostring(BRICKCOLOR))
231
	NEWPART.Name = NAME
232
	NEWPART.Size = SIZE
233
	NEWPART.Position = Torso.Position
234
	NEWPART.Material = MATERIAL
235
	NEWPART:BreakJoints()
236
	NEWPART.Parent = PARENT
237
	return NEWPART
238
end
239
240
241
--//=================================\\
242
--||		  CUSTOMIZATION
243
--\\=================================//
244
245
Class_Name = "Sin Unleashed"
246
Weapon_Name = "Add-ons"
247
248
Custom_Colors = {
249
	Custom_Color_1 = BRICKC("Institutional white"); --1st color for the weapon.
250
	Custom_Color_2 = BRICKC("Institutional white"); --2nd color for the weapon.
251
252
	Custom_Color_3 = BRICKC("Institutional white"); --Color for the abilities.
253
	Custom_Color_4 = BRICKC("Institutional white"); --Color for the secondary bar.
254
	Custom_Color_5 = BRICKC("Institutional white"); --Color for the mana bar.
255
	Custom_Color_6 = BRICKC("Institutional white"); --Color for the health bar.
256
	Custom_Color_7 = BRICKC("Institutional white"); --Color for the stun bar.
257
258
	Custom_Color_8 = BRICKC("Institutional white"); --Background for the mana bar.
259
	Custom_Color_9 = BRICKC("Institutional white"); --Background for the secondary mana bar.
260
	Custom_Color_10 = BRICKC("Institutional white"); --Background for the stun bar.
261
	Custom_Color_11 = BRICKC("Institutional white"); --Background for the health bar.
262
	Custom_Color_12 = BRICKC("Institutional white"); --Background for the abilities.
263
}
264
265
266
Player_Size = 1 --Size of the player.
267
Animation_Speed = 2
268
Animation_Speed2 = 1
269
Frame_Speed = 1 / 60 -- (1 / 30) OR (1 / 60)
270
271
local Speed = 28
272
Humanoid.JumpPower = 80
273
local Effects2 = {}
274
275
--//=================================\\
276
--|| 	  END OF CUSTOMIZATION
277
--\\=================================//
278
279
	local function weldBetween(a, b)
280
	    local weldd = Instance.new("ManualWeld")
281
	    weldd.Part0 = a
282
	    weldd.Part1 = b
283
	    weldd.C0 = CFrame.new()
284
	    weldd.C1 = b.CFrame:inverse() * a.CFrame
285
	    weldd.Parent = a
286
	    return weldd
287
	end
288
289
function createaccessory(attachmentpart,mesh,texture,scale,offset,color)
290
local acs = Instance.new("Part")
291
acs.CanCollide = false
292
acs.Anchored = false
293
acs.Size = Vector3.new(0,0,0)
294
acs.CFrame = attachmentpart.CFrame
295
acs.Parent = Character
296
acs.BrickColor = color
297
    local meshs = Instance.new("SpecialMesh")
298
    meshs.MeshId = mesh
299
    meshs.TextureId = texture
300
    meshs.Parent = acs
301
    meshs.Scale = scale
302
    meshs.Offset = offset
303
weldBetween(attachmentpart,acs)
304
end
305
306
function createbodypart(TYPE,COLOR,PART,OFFSET,SIZE)
307
if TYPE == "Gem" then
308
	local acs = CreatePart(3, PART, "Plastic", 0, 0, COLOR, "Part", VT(0,0,0))
309
	acs.Anchored = false
310
    acs.CanCollide = false
311
	acs.CFrame = PART.CFrame
312
	local acs2 = CreateMesh("SpecialMesh", acs, "FileMesh", "9756362", "", SIZE, OFFSET)
313
weldBetween(PART,acs)
314
elseif TYPE == "Skull" then
315
	local acs = CreatePart(3, PART, "Plastic", 0, 0, COLOR, "Part", VT(0,0,0))
316
	acs.Anchored = false
317
    acs.CanCollide = false
318
	acs.CFrame = PART.CFrame
319
	local acs2 = CreateMesh("SpecialMesh", acs, "FileMesh", "4770583", "", SIZE, OFFSET)
320
weldBetween(PART,acs)
321
elseif TYPE == "Eye" then
322
	local acs = CreatePart(3, PART, "Neon", 0, 0, COLOR, "Part", VT(0,0,0))
323
	acs.Anchored = false
324
    acs.CanCollide = false
325
	acs.CFrame = PART.CFrame
326
	local acs2 = CreateMesh("SpecialMesh", acs, "Sphere", "", "", SIZE, OFFSET)
327
weldBetween(PART,acs)
328
end
329
end
330
331
--//=================================\\
332
--|| 	      USEFUL VALUES
333
--\\=================================//
334
335
local ROOTC0 = CF(0, 0, 0) * ANGLES(RAD(-90), RAD(0), RAD(180))
336
local NECKC0 = CF(0, 1, 0) * ANGLES(RAD(-90), RAD(0), RAD(180))
337
local RIGHTSHOULDERC0 = CF(-0.5, 0, 0) * ANGLES(RAD(0), RAD(90), RAD(0))
338
local LEFTSHOULDERC0 = CF(0.5, 0, 0) * ANGLES(RAD(0), RAD(-90), RAD(0))
339
local CO1 = 0
340
local CO2 = 0
341
local CO3 = 0
342
local CO4 = 0
343
local CHANGEDEFENSE = 0
344
local CHANGEDAMAGE = 0
345
local CHANGEMOVEMENT = 0
346
local ANIM = "Idle"
347
local ATTACK = false
348
local EQUIPPED = false
349
local HOLD = false
350
local COMBO = 1
351
local LASTPOINT = nil
352
local BLCF = nil
353
local SCFR = nil
354
local STAGGERHITANIM = false
355
local STAGGERANIM = false
356
local STUNANIM = false
357
local CRITCHANCENUMBER = 0
358
local IDLENUMBER = 0
359
local DONUMBER = 0
360
local HANDIDLE = false
361
local Rooted = false
362
local KEYHOLD = false
363
local SINE = 0
364
local CHANGE = 2 / Animation_Speed
365
local WALKINGANIM = false
366
local WALK = 0
367
local DEAD = false
368
local ROBLOXIDLEANIMATION = IT("Animation")
369
ROBLOXIDLEANIMATION.Name = "Roblox Idle Animation"
370
ROBLOXIDLEANIMATION.AnimationId = "http://www.roblox.com/asset/?id=180435571"
371
--ROBLOXIDLEANIMATION.Parent = Humanoid
372
local WEAPONGUI = IT("ScreenGui", PlayerGui)
373
WEAPONGUI.Name = "Weapon GUI"
374
local Weapon = IT("Model")
375
Weapon.Name = Weapon_Name
376
local Effects = IT("Folder", Weapon)
377
Effects.Name = "Effects"
378
local ANIMATOR = Humanoid.Animator
379
local ANIMATE = Character.Animate
380
local HITPLAYERSOUNDS = {--[["199149137", "199149186", "199149221", "199149235", "199149269", "199149297"--]]"263032172", "263032182", "263032200", "263032221", "263032252", "263033191"}
381
local HITARMORSOUNDS = {"199149321", "199149338", "199149367", "199149409", "199149452"}
382
local HITWEAPONSOUNDS = {"199148971", "199149025", "199149072", "199149109", "199149119"}
383
local HITBLOCKSOUNDS = {"199148933", "199148947"}
384
local UNANCHOR = true
385
local MAGICPARTICLE = "655109389"
386
387
local SKILLTEXTCOLOR = C3(0.7,0,0)
388
389
--//=================================\\
390
--\\=================================//
391
392
393
--//=================================\\
394
--|| SAZERENOS' ARTIFICIAL HEARTBEAT
395
--\\=================================//
396
397
ArtificialHB = Instance.new("BindableEvent", script)
398
ArtificialHB.Name = "ArtificialHB"
399
400
script:WaitForChild("ArtificialHB")
401
402
frame = Frame_Speed
403
tf = 0
404
allowframeloss = false
405
tossremainder = false
406
lastframe = tick()
407
script.ArtificialHB:Fire()
408
409
game:GetService("RunService").Heartbeat:connect(function(s, p)
410
	tf = tf + s
411
	if tf >= frame then
412
		if allowframeloss then
413
			script.ArtificialHB:Fire()
414
			lastframe = tick()
415
		else
416
			for i = 1, math.floor(tf / frame) do
417
				script.ArtificialHB:Fire()
418
			end
419
		lastframe = tick()
420
		end
421
		if tossremainder then
422
			tf = 0
423
		else
424
			tf = tf - frame * math.floor(tf / frame)
425
		end
426
	end
427
end)
428
429
--//=================================\\
430
--\\=================================//
431
432
433
434
435
436
--//=================================\\
437
--|| 	      SOME FUNCTIONS
438
--\\=================================//
439
440
function Raycast(POSITION, DIRECTION, RANGE, IGNOREDECENDANTS)
441
	return workspace:FindPartOnRay(Ray.new(POSITION, DIRECTION.unit * RANGE), IGNOREDECENDANTS)
442
end
443
444
function PositiveAngle(NUMBER)
445
	if NUMBER >= 0 then
446
		NUMBER = 0
447
	end
448
	return NUMBER
449
end
450
451
function NegativeAngle(NUMBER)
452
	if NUMBER <= 0 then
453
		NUMBER = 0
454
	end
455
	return NUMBER
456
end
457
458
function Swait(NUMBER)
459
	if NUMBER == 0 or NUMBER == nil then
460
		ArtificialHB.Event:wait()
461
	else
462
		for i = 1, NUMBER do
463
			ArtificialHB.Event:wait()
464
		end
465
	end
466
end
467
468
function QuaternionFromCFrame(cf)
469
	local mx, my, mz, m00, m01, m02, m10, m11, m12, m20, m21, m22 = cf:components()
470
	local trace = m00 + m11 + m22
471
	if trace > 0 then 
472
		local s = math.sqrt(1 + trace)
473
		local recip = 0.5 / s
474
		return (m21 - m12) * recip, (m02 - m20) * recip, (m10 - m01) * recip, s * 0.5
475
	else
476
		local i = 0
477
		if m11 > m00 then
478
			i = 1
479
		end
480
		if m22 > (i == 0 and m00 or m11) then
481
			i = 2
482
		end
483
		if i == 0 then
484
			local s = math.sqrt(m00 - m11 - m22 + 1)
485
			local recip = 0.5 / s
486
			return 0.5 * s, (m10 + m01) * recip, (m20 + m02) * recip, (m21 - m12) * recip
487
		elseif i == 1 then
488
			local s = math.sqrt(m11 - m22 - m00 + 1)
489
			local recip = 0.5 / s
490
			return (m01 + m10) * recip, 0.5 * s, (m21 + m12) * recip, (m02 - m20) * recip
491
		elseif i == 2 then
492
			local s = math.sqrt(m22 - m00 - m11 + 1)
493
			local recip = 0.5 / s return (m02 + m20) * recip, (m12 + m21) * recip, 0.5 * s, (m10 - m01) * recip
494
		end
495
	end
496
end
497
 
498
function QuaternionToCFrame(px, py, pz, x, y, z, w)
499
	local xs, ys, zs = x + x, y + y, z + z
500
	local wx, wy, wz = w * xs, w * ys, w * zs
501
	local xx = x * xs
502
	local xy = x * ys
503
	local xz = x * zs
504
	local yy = y * ys
505
	local yz = y * zs
506
	local zz = z * zs
507
	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))
508
end
509
 
510
function QuaternionSlerp(a, b, t)
511
	local cosTheta = a[1] * b[1] + a[2] * b[2] + a[3] * b[3] + a[4] * b[4]
512
	local startInterp, finishInterp;
513
	if cosTheta >= 0.0001 then
514
		if (1 - cosTheta) > 0.0001 then
515
			local theta = ACOS(cosTheta)
516
			local invSinTheta = 1 / SIN(theta)
517
			startInterp = SIN((1 - t) * theta) * invSinTheta
518
			finishInterp = SIN(t * theta) * invSinTheta
519
		else
520
			startInterp = 1 - t
521
			finishInterp = t
522
		end
523
	else
524
		if (1 + cosTheta) > 0.0001 then
525
			local theta = ACOS(-cosTheta)
526
			local invSinTheta = 1 / SIN(theta)
527
			startInterp = SIN((t - 1) * theta) * invSinTheta
528
			finishInterp = SIN(t * theta) * invSinTheta
529
		else
530
			startInterp = t - 1
531
			finishInterp = t
532
		end
533
	end
534
	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
535
end
536
537
function Clerp(a, b, t)
538
	local qa = {QuaternionFromCFrame(a)}
539
	local qb = {QuaternionFromCFrame(b)}
540
	local ax, ay, az = a.x, a.y, a.z
541
	local bx, by, bz = b.x, b.y, b.z
542
	local _t = 1 - t
543
	return QuaternionToCFrame(_t * ax + t * bx, _t * ay + t * by, _t * az + t * bz, QuaternionSlerp(qa, qb, t))
544
end
545
546
function CreateFrame(PARENT, TRANSPARENCY, BORDERSIZEPIXEL, POSITION, SIZE, COLOR, BORDERCOLOR, NAME)
547
	local frame = IT("Frame")
548
	frame.BackgroundTransparency = TRANSPARENCY
549
	frame.BorderSizePixel = BORDERSIZEPIXEL
550
	frame.Position = POSITION
551
	frame.Size = SIZE
552
	frame.BackgroundColor3 = COLOR
553
	frame.BorderColor3 = BORDERCOLOR
554
	frame.Name = NAME
555
	frame.Parent = PARENT
556
	return frame
557
end
558
559
function CreateLabel(PARENT, TEXT, TEXTCOLOR, TEXTFONTSIZE, TEXTFONT, TRANSPARENCY, BORDERSIZEPIXEL, STROKETRANSPARENCY, NAME)
560
	local label = IT("TextLabel")
561
	label.BackgroundTransparency = 1
562
	label.Size = UD2(1, 0, 1, 0)
563
	label.Position = UD2(0, 0, 0, 0)
564
	label.TextColor3 = TEXTCOLOR
565
	label.TextStrokeTransparency = STROKETRANSPARENCY
566
	label.TextTransparency = TRANSPARENCY
567
	label.FontSize = TEXTFONTSIZE
568
	label.Font = TEXTFONT
569
	label.BorderSizePixel = BORDERSIZEPIXEL
570
	label.TextScaled = false
571
	label.Text = TEXT
572
	label.Name = NAME
573
	label.Parent = PARENT
574
	return label
575
end
576
577
function NoOutlines(PART)
578
	PART.TopSurface, PART.BottomSurface, PART.LeftSurface, PART.RightSurface, PART.FrontSurface, PART.BackSurface = 10, 10, 10, 10, 10, 10
579
end
580
581
582
function CreateWeldOrSnapOrMotor(TYPE, PARENT, PART0, PART1, C0, C1)
583
	local NEWWELD = IT(TYPE)
584
	NEWWELD.Part0 = PART0
585
	NEWWELD.Part1 = PART1
586
	NEWWELD.C0 = C0
587
	NEWWELD.C1 = C1
588
	NEWWELD.Parent = PARENT
589
	return NEWWELD
590
end
591
592
local sound = IT("Sound")
593
594
function CreateSound(ID, PARENT, VOLUME, PITCH)
595
	local NEWSOUND = nil
596
	coroutine.resume(coroutine.create(function()
597
		NEWSOUND = sound:Clone()
598
		NEWSOUND.Parent = PARENT
599
		NEWSOUND.Volume = VOLUME
600
		NEWSOUND.Pitch = PITCH
601
		NEWSOUND.SoundId = "http://www.roblox.com/asset/?id="..ID
602
		Swait()
603
		NEWSOUND:play()
604
		game:GetService("Debris"):AddItem(NEWSOUND, 10)
605
	end))
606
	return NEWSOUND
607
end
608
609
function CFrameFromTopBack(at, top, back)
610
	local right = top:Cross(back)
611
	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)
612
end
613
614
function CreateWave(inair,size,doesrotate,rotatedirection,waitt,cframe,offset,color)
615
	local wave = CreatePart(3, Effects, "Neon", 0, 0.5, BRICKC(color), "Effect", VT(0,0,0))
616
	local mesh = IT("SpecialMesh",wave)
617
	mesh.MeshType = "FileMesh"
618
	mesh.MeshId = "http://www.roblox.com/asset/?id=20329976"
619
	mesh.Scale = VT(size,size,size)
620
	mesh.Offset = VT(0,0,-size/8)
621
	wave.CFrame = cframe
622
	coroutine.resume(coroutine.create(function(PART)
623
		for i = 1, waitt do
624
			Swait()
625
			mesh.Scale = mesh.Scale + VT(size/5,0,size/5)
626
			mesh.Offset = VT(0,0,-(mesh.Scale.X/8))
627
			if doesrotate == true then
628
				wave.CFrame = wave.CFrame * CFrame.fromEulerAnglesXYZ(0, rotatedirection, 0)
629
			end
630
			wave.Transparency = wave.Transparency + (0.5/waitt)
631
			if wave.Transparency > 0.99 then
632
				wave:remove()
633
			end
634
		end
635
	end))
636
end
637
638
function CreateSwirl(inair,size,doesrotate,rotatedirection,waitt,cframe,offset,color)
639
	local wave = CreatePart(3, Effects, "Neon", 0, 0.5, BRICKC(color), "Effect", VT(0,0,0))
640
	local mesh = IT("SpecialMesh",wave)
641
	mesh.MeshType = "FileMesh"
642
	mesh.MeshId = "http://www.roblox.com/asset/?id=1051557"
643
	mesh.Scale = VT(size,size,size)
644
	wave.CFrame = cframe
645
	coroutine.resume(coroutine.create(function(PART)
646
		for i = 1, waitt do
647
			Swait()
648
			mesh.Scale = mesh.Scale + VT(size/5,size/5,size/5)
649
			if doesrotate == true then
650
				wave.CFrame = wave.CFrame * CFrame.fromEulerAnglesXYZ(0, rotatedirection, 0)
651
			end
652
			wave.Transparency = wave.Transparency + (0.5/waitt)
653
			if wave.Transparency > 0.99 then
654
				wave:remove()
655
			end
656
		end
657
	end))
658
end
659
660
function CreateTornado(inair,size,doesrotate,rotatedirection,waitt,part,offset,color)
661
	local wave = CreatePart(3, Effects, "Neon", 0, 0.5, BRICKC(color), "Effect", VT(0,0,0))
662
	local mesh = IT("SpecialMesh",wave)
663
	mesh.MeshType = "FileMesh"
664
	mesh.MeshId = "http://www.roblox.com/asset/?id=102638417"
665
	mesh.Scale = VT(size,size,size)
666
	wave.CFrame = CF(part.Position) * CF(0,offset,0) * ANGLES(RAD(inair),RAD(0),RAD(0))
667
	coroutine.resume(coroutine.create(function(PART)
668
		for i = 1, waitt do
669
			Swait()
670
			mesh.Scale = mesh.Scale + VT(size/5,0,size/5)
671
			if doesrotate == true then
672
				wave.CFrame = wave.CFrame * CFrame.fromEulerAnglesXYZ(0, rotatedirection, 0)
673
			end
674
			wave.Transparency = wave.Transparency + (0.5/waitt)
675
			if wave.Transparency > 0.99 then
676
				wave:remove()
677
			end
678
		end
679
	end))
680
end
681
682
function CreateRing(inair,size,doesrotate,rotatedirection,waitt,cframe,offset,spin1,spin2,color)
683
	local wave = CreatePart(3, Effects, "Neon", 0, 0.5, BRICKC(color), "Effect", VT(0,0,0))
684
	local mesh = IT("SpecialMesh",wave)
685
	mesh.MeshType = "FileMesh"
686
	mesh.MeshId = "http://www.roblox.com/asset/?id=3270017"
687
	mesh.Scale = VT(size,size,size)
688
	mesh.Offset = VT(0,0,0)
689
	wave.CFrame = cframe
690
	coroutine.resume(coroutine.create(function(PART)
691
		for i = 1, waitt do
692
			Swait()
693
			mesh.Scale = mesh.Scale + VT(size/5,size/5,size/5)
694
			if doesrotate == true then
695
				wave.CFrame = wave.CFrame * CFrame.fromEulerAnglesXYZ(spin2, rotatedirection, spin1)
696
			end
697
			wave.Transparency = wave.Transparency + (0.5/waitt)
698
			if wave.Transparency > 0.99 then
699
				wave:remove()
700
			end
701
		end
702
	end))
703
end
704
705
function MagicSphere(size,waitt,part,offset,color)
706
	local wave = CreatePart(3, Effects, "Neon", 0, 0, BRICKC(color), "Effect", VT(1,1,1))
707
	local mesh = IT("SpecialMesh",wave)
708
	mesh.MeshType = "Sphere"
709
	mesh.Scale = VT(size,size,size)
710
	mesh.Offset = VT(0,0,0)
711
	wave.CFrame = CF(part) * CF(0,offset,0) * ANGLES(RAD(0),RAD(0),RAD(0))
712
	coroutine.resume(coroutine.create(function(PART)
713
		for i = 1, waitt do
714
			Swait()
715
			mesh.Scale = mesh.Scale + VT(size/5,size/5,size/5)
716
			wave.Transparency = wave.Transparency + (1/waitt)
717
			if wave.Transparency > 0.99 then
718
				wave:remove()
719
			end
720
		end
721
	end))
722
end
723
724
local EyeSizes={
725
	NumberSequenceKeypoint.new(0,1,0),
726
	NumberSequenceKeypoint.new(1,0.2,0)
727
}
728
local EyeTrans={
729
	NumberSequenceKeypoint.new(0,0.8,0),
730
	NumberSequenceKeypoint.new(1,1,0)
731
}
732
local PE=Instance.new("ParticleEmitter")
733
PE.LightEmission=0
734
PE.Size=NumberSequence.new(EyeSizes)
735
PE.Transparency=NumberSequence.new(EyeTrans)
736
PE.Lifetime=NumberRange.new(0.35,0.35,0.35)
737
PE.Rotation=NumberRange.new(0,360)
738
PE.Rate=15
739
PE.Acceleration = Vector3.new(0,75,0)
740
PE.Drag = 5
741
PE.Enabled = false
742
PE.Speed = NumberRange.new(0,0,0)
743
PE.Texture="http://www.roblox.com/asset/?id=1179557490"
744
PE.ZOffset = 0
745
PE.Name = "Particles"
746
747
function CreateParticles(art,text,accel,drag,rate,type,isenabledbydefault)
748
	local particle = PE:Clone()
749
	particle.Parent = art
750
	particle.Acceleration = accel
751
	PE.Rate = rate
752
	if type == "Fire" then
753
		local EyeSizes={
754
			NumberSequenceKeypoint.new(0,1,0.3),
755
			NumberSequenceKeypoint.new(1,0.2,0.2)
756
		}
757
		PE.Size = NumberSequence.new(EyeSizes)
758
	elseif type == "Smoke" then
759
		local EyeSizes={
760
			NumberSequenceKeypoint.new(0,1,0),
761
			NumberSequenceKeypoint.new(1,5,0.5)
762
		}
763
		PE.Size = NumberSequence.new(EyeSizes)
764
	elseif type == "Solid" then
765
		local EyeSizes={
766
			NumberSequenceKeypoint.new(0,1,0),
767
			NumberSequenceKeypoint.new(1,1,0)
768
		}
769
		PE.Size = NumberSequence.new(EyeSizes)
770
	end
771
	PE.Drag = drag
772
	particle.Texture = "http://www.roblox.com/asset/?id="..text
773
	particle.Enabled = isenabledbydefault
774
return particle
775
end
776
777
--//=================================\\
778
--||         BIG ZAPS
779
--\\=================================//
780
781
BaseLightning = IT("Part")
782
BaseLightning.Anchored = true
783
BaseLightning.CanCollide = false
784
BaseLightning.Material = "Neon"
785
786
function CheckTableForString(Table, String)
787
	for i, v in pairs(Table) do
788
		if string.find(string.lower(String), string.lower(v)) then
789
			return true
790
		end
791
	end
792
	return false
793
end
794
795
function CheckIntangible(Hit)
796
	local ProjectileNames = {"Water", "Arrow", "Projectile", "Effect", "Rail", "Lightning", "Bullet"}
797
	if Hit and Hit.Parent then
798
		if ((not Hit.CanCollide or CheckTableForString(ProjectileNames, Hit.Name)) and not Hit.Parent:FindFirstChild("Humanoid")) then
799
			return true
800
		end
801
	end
802
	return false
803
end
804
805
Debris = game:GetService("Debris")
806
807
function CastZapRay(StartPos, Vec, Length, Ignore, DelayIfHit)
808
	local Ignore = ((type(Ignore) == "table" and Ignore) or {Ignore})
809
	local RayHit, RayPos, RayNormal = game:GetService("Workspace"):FindPartOnRayWithIgnoreList(Ray.new(StartPos, Vec * Length), Ignore)
810
	if RayHit and CheckIntangible(RayHit) then
811
		if DelayIfHit then
812
			wait()
813
		end
814
		RayHit, RayPos, RayNormal = CastZapRay((RayPos + (Vec * 0.01)), Vec, (Length - ((StartPos - RayPos).magnitude)), Ignore, DelayIfHit)
815
	end
816
	return RayHit, RayPos, RayNormal
817
end
818
819
--Zap({StartPosition = Position, TargetPosition = Position, Character = Character, Color = "Color", Individual = true})
820
function Zap(Table)
821
	local StartPos, TargetPos, Character, Color = Table.StartPosition, Table.TargetPosition, Table.Character, Table.Color
822
	local Duration = (Table.Duration or 2)
823
	local FadeRate = (Table.FadeRate or 0.05)
824
	local Offset = (Table.Offset or 2)
825
	local Individualize = (Table.Individualize or false)
826
	local MaxRange = (Table.MaxRange or 200)
827
	local SegmentLength = (Table.SegmentLength or 5)
828
	local TimeToFade = (Table.TimeToFade or 0.5)
829
	local Ignore = (Table.Ignore or {})
830
	local SIZE = (Table.Size or 0.3)
831
	if not StartPos or not TargetPos or not Character then
832
		return
833
	end
834
	local LightningModel = IT("Folder",Effects)
835
	LightningModel.Name = "ZAPP"
836
	for i, v in pairs({Character, LightningModel}) do
837
		table.insert(Ignore, v)
838
	end
839
	local LastPos = StartPos
840
	local Direction = CFrame.new(StartPos, TargetPos).lookVector
841
	local RayHit, RayPos, RayNormal = CastZapRay(StartPos, Direction, MaxRange, Ignore, false)
842
	local RayLength = (StartPos - RayPos).Magnitude
843
	local Struck = false
844
	local TotalSegments = math.ceil(RayLength / SegmentLength)
845
	Direction = CFrame.new(StartPos, RayPos).lookVector
846
	local LightningBolt = IT("Model",Effects)
847
	LightningBolt.Name = "Lightning"
848
	if not Individualize then
849
		table.insert(LightningBolts, LightningBolt)
850
	end
851
	LastBolt = LightningBolt
852
	Debris:AddItem(LightningBolt, Duration)
853
	LightningBolt.Parent = LightningModel
854
	for i = 1, TotalSegments do
855
		if not Struck then
856
			local Entropy = Vector3.new(((math.random() * Offset*2.5) - Offset), ((math.random() * Offset*2.5) - Offset), ((math.random() * Offset*2.5) - Offset))
857
			local NewPos = (StartPos + (Direction * (RayLength * (i / TotalSegments))) + Entropy)
858
			local SegmentVec = (NewPos - LastPos)
859
			local RayHit, RayPos, RayNormal = CastZapRay(LastPos, SegmentVec.Unit, SegmentVec.Magnitude, {Character, LightningModel}, false) 
860
			local RayVec = (LastPos - RayPos)
861
			local LightningPart = BaseLightning:Clone()
862
			LightningPart.BrickColor = BrickColor.new(Color)
863
			LightningPart.Size = Vector3.new(SIZE, SIZE, RayVec.Magnitude)
864
			LightningPart.CFrame = (CFrame.new(LastPos, RayPos) * CFrame.new(0, 0, -(RayVec.Magnitude / 2)))
865
			table.insert(Effects2,{LightningPart,"Disappear",0.025,1,1,1,2})
866
			--Make circular
867
			local CylinderMesh = IT("CylinderMesh",LightningPart)
868
			local OrigCF = LightningPart.CFrame
869
			LightningPart.Size = Vector3.new(LightningPart.Size.X, LightningPart.Size.Z, LightningPart.Size.Y)
870
			LightningPart.CFrame = (OrigCF * CFrame.Angles((math.pi / 2), 0, 0))
871
			LightningPart.Parent = LightningBolt
872
			LastPos = NewPos
873
			Spawn(function()
874
				local FadeRate = 0.05
875
				local OrigTransparency = LightningPart.Transparency
876
				for i = 1, (TimeToFade / FadeRate) do
877
					wait(FadeRate)
878
					LightningPart.Transparency = (OrigTransparency + (i / (TimeToFade / FadeRate)))
879
				end
880
			end)
881
		end
882
	end
883
	return {RayHit = RayHit, RayPos = RayPos, RayNormal = RayNormal, LightningModel = LightningModel}
884
end
885
886
--//=================================\\
887
--||	     WEAPON CREATION
888
--\\=================================//
889
890
Weapon.Parent = Character
891
892
Humanoid.Died:connect(function()
893
	ATTACK = true
894
end)
895
896
print(Class_Name.." loaded.")
897
898
local SKILL1FRAME = CreateFrame(WEAPONGUI, 0.5, 2, UD2(0.23, 0, 0.80, 0), UD2(0.26, 0, 0.07, 0), C3(0,0,0), C3(0, 0, 0), "Skill 1 Frame")
899
local SKILL2FRAME = CreateFrame(WEAPONGUI, 0.5, 2, UD2(0.50, 0, 0.80, 0), UD2(0.26, 0, 0.07, 0), C3(0,0,0), C3(0, 0, 0), "Skill 2 Frame")
900
local SKILL3FRAME = CreateFrame(WEAPONGUI, 0.5, 2, UD2(0.23, 0, 0.93, 0), UD2(0.26, 0, 0.07, 0), C3(0,0,0), C3(0, 0, 0), "Skill 3 Frame")
901
local SKILL4FRAME = CreateFrame(WEAPONGUI, 0.5, 2, UD2(0.50, 0, 0.93, 0), UD2(0.26, 0, 0.07, 0), C3(0,0,0), C3(0, 0, 0), "Skill 4 Frame")
902
local SKILL5FRAME = CreateFrame(WEAPONGUI, 0.5, 2, UD2(0.365, 0, 0.7, 0), UD2(0.26, 0, 0.07, 0), C3(0,0,0), C3(0, 0, 0), "Skill 5 Frame")
903
904
local SKILL1TEXT = CreateLabel(SKILL1FRAME, "[Z] Claw force", SKILLTEXTCOLOR, 10, "Antique", 0, 2, 1, "Text 1")
905
local SKILL2TEXT = CreateLabel(SKILL2FRAME, "[B] Hell leash", SKILLTEXTCOLOR, 10, "Antique", 0, 2, 1, "Text 2")
906
local SKILL3TEXT = CreateLabel(SKILL3FRAME, "[C] Sinner wave", SKILLTEXTCOLOR, 10, "Antique", 0, 2, 1, "Text 3")
907
local SKILL4TEXT = CreateLabel(SKILL4FRAME, "[V] From the depths", SKILLTEXTCOLOR, 10, "Antique", 0, 2, 1, "Text 4")
908
local SKILL5TEXT = CreateLabel(SKILL5FRAME, "[X] The end", SKILLTEXTCOLOR, 10, "Antique", 0, 2, 1, "Text 5")
909
910
local naeeym2 = Instance.new("BillboardGui",Character)
911
naeeym2.AlwaysOnTop = true
912
naeeym2.Size = UDim2.new(5,35,2,35)
913
naeeym2.StudsOffset = Vector3.new(0,3,0)
914
naeeym2.Adornee = Character.Head
915
naeeym2.Name = "Name"
916
naeeym2.PlayerToHideFrom = Player
917
local tecks2 = Instance.new("TextLabel",naeeym2)
918
tecks2.BackgroundTransparency = 1
919
tecks2.TextScaled = true
920
tecks2.BorderSizePixel = 0
921
tecks2.Text = "Sin unleashed"
922
tecks2.Font = "Antique"
923
tecks2.TextSize = 30
924
tecks2.TextStrokeTransparency = 0.9
925
tecks2.TextColor3 = Color3.new(0,0,0)
926
tecks2.TextStrokeColor3 = Color3.new(1,0,0)
927
tecks2.Size = UDim2.new(1,0,0.5,0)
928
tecks2.Parent = naeeym2
929
930
local Shield = IT("Part",Weapon)
931
Shield.Name = "Barrier"
932
Shield.Shape = "Ball"
933
Shield.Material = "Glass"
934
Shield.Color = C3(1,0,0)
935
Shield.Transparency = 0.5
936
Shield.Size = VT(0.5,0.5,0.5)
937
local mesh = IT("SpecialMesh",Shield)
938
mesh.MeshType = "Sphere"
939
mesh.Scale = VT(13,13,13)
940
Shield.CFrame = RootPart.CFrame
941
weldBetween(RootPart,Shield)
942
943
createbodypart("Eye","Really red",Head,VT(0.20, 0, -0.55),VT(2,6,2))
944
createbodypart("Eye","Really red",Head,VT(-0.20, 0, -0.55),VT(2,6,2))
945
createbodypart("Eye","Really red",Head,VT(0, 0, -0.6),VT(2,8,2))
946
947
local gear = CreatePart(3, Weapon, "Neon", 0, 0, "Really black", "Gear", VT(0.35*Player_Size,0.35*Player_Size,0.35*Player_Size),false)
948
local mesh = Instance.new("SpecialMesh",gear)
949
mesh.MeshType = "FileMesh"
950
mesh.MeshId = "rbxassetid://156292343"
951
mesh.Scale = VT(8,8,8)
952
local weld = CreateWeldOrSnapOrMotor("Weld", RootPart, gear, RootPart, CF(0 * Player_Size, 0 * Player_Size, 4 * Player_Size) * ANGLES(RAD(0), RAD(-90), RAD(0)), CF(0, 0, 0))
953
954
local gear = CreatePart(3, Weapon, "Neon", 0, 0, "Really black", "Gear", VT(0.35*Player_Size,0.35*Player_Size,0.35*Player_Size),false)
955
local mesh = Instance.new("SpecialMesh",gear)
956
mesh.MeshType = "FileMesh"
957
mesh.MeshId = "rbxassetid://156292343"
958
mesh.Scale = VT(8,8,8)
959
local weld = CreateWeldOrSnapOrMotor("Weld", RootPart, gear, RootPart, CF(0 * Player_Size, 0 * Player_Size, 4 * Player_Size) * ANGLES(RAD(0), RAD(90), RAD(0)), CF(0, 0, 0))
960
961
local gear = CreatePart(3, Weapon, "Neon", 0, 0, "Really black", "Gear", VT(0.35*Player_Size,0.35*Player_Size,0.35*Player_Size),false)
962
local mesh = Instance.new("SpecialMesh",gear)
963
mesh.MeshType = "FileMesh"
964
mesh.MeshId = "rbxassetid://156292343"
965
mesh.Scale = VT(6,6,6)
966
local weld = CreateWeldOrSnapOrMotor("Weld", RootPart, gear, RootPart, CF(0 * Player_Size, 0 * Player_Size, 4 * Player_Size) * ANGLES(RAD(90), RAD(0), RAD(0)), CF(0, 0, 0))
967
local gear = CreatePart(3, Weapon, "Neon", 0, 0, "Really black", "Gear", VT(0.35*Player_Size,0.35*Player_Size,0.35*Player_Size),false)
968
local mesh = Instance.new("SpecialMesh",gear)
969
mesh.MeshType = "FileMesh"
970
mesh.MeshId = "rbxassetid://156292343"
971
mesh.Scale = VT(4,4,4)
972
local weld = CreateWeldOrSnapOrMotor("Weld", RootPart, gear, RootPart, CF(0 * Player_Size, 0 * Player_Size, 6 * Player_Size) * ANGLES(RAD(90), RAD(0), RAD(0)), CF(0, 0, 0))
973
local gear = CreatePart(3, Weapon, "Neon", 0, 0, "Really black", "Gear", VT(0.35*Player_Size,0.35*Player_Size,0.35*Player_Size),false)
974
local mesh = Instance.new("SpecialMesh",gear)
975
mesh.MeshType = "FileMesh"
976
mesh.MeshId = "rbxassetid://156292343"
977
mesh.Scale = VT(2,2,2)
978
local weld = CreateWeldOrSnapOrMotor("Weld", RootPart, gear, RootPart, CF(0 * Player_Size, 0 * Player_Size, 8 * Player_Size) * ANGLES(RAD(90), RAD(0), RAD(0)), CF(0, 0, 0))
979
local BottomPart = CreatePart(3, Weapon, "Neon", 0, 0, "Really red", "Handle", VT(1*Player_Size,6*Player_Size,1*Player_Size),false)
980
local mesh = Instance.new("SpecialMesh",BottomPart)
981
mesh.MeshType = "Sphere"
982
local weld = CreateWeldOrSnapOrMotor("Weld", RootPart, BottomPart, RootPart, CF(0 * Player_Size, 8 * Player_Size, 0 * Player_Size) * ANGLES(RAD(0), RAD(0), RAD(0)), CF(0, 0, 0))
983
984
--//=================================\\
985
--|| 		CREATING ARMS
986
--\\=================================//
987
988
--RIGHT ARM--
989
990
local limb1a = CreatePart(3, Weapon, "Neon", 0, 0, "Really red", "Handle", VT(2*Player_Size,2*Player_Size,2*Player_Size),false)
991
local mesh = Instance.new("SpecialMesh",limb1a)
992
mesh.MeshType = "Sphere"
993
limb1a.Name = "Right Arm 01"
994
995
local LIMB = CreatePart(3, Weapon, "SmoothPlastic", 0, 0, "Really black", "Handle", VT(0.8*Player_Size,3.5*Player_Size,0.8*Player_Size),false)
996
LIMB.Name = "Right Arm part"
997
local LIMBWELD = CreateWeldOrSnapOrMotor("Weld", LIMB, limb1a, LIMB, CF(0 * Player_Size, 2 * Player_Size, 0 * Player_Size) * ANGLES(RAD(0), RAD(0), RAD(0)), CF(0, 0, 0))
998
local LIMB = CreatePart(3, Weapon, "SmoothPlastic", 0, 0, "Really black", "Handle", VT(0.8*Player_Size,3.5*Player_Size,0.8*Player_Size),false)
999
LIMB.Name = "Right Arm part"
1000
local LIMBWELD = CreateWeldOrSnapOrMotor("Weld", LIMB, limb1a, LIMB, CF(0 * Player_Size, 6 * Player_Size, 0 * Player_Size) * ANGLES(RAD(0), RAD(0), RAD(0)), CF(0, 0, 0))
1001
local LIMB = CreatePart(3, Weapon, "Neon", 0, 0, "Really red", "Handle", VT(0.7*Player_Size,3.5*Player_Size,0.7*Player_Size),false)
1002
LIMB.Name = "Right Arm part"
1003
local LIMBWELD = CreateWeldOrSnapOrMotor("Weld", LIMB, limb1a, LIMB, CF(0 * Player_Size, 3 * Player_Size, 0 * Player_Size) * ANGLES(RAD(0), RAD(0), RAD(0)), CF(0, 0, 0))
1004
1005
local limbweld1a = CreateWeldOrSnapOrMotor("Weld", limb1a, RootPart, limb1a, CF(4 * Player_Size, 0 * Player_Size, 0 * Player_Size) * ANGLES(RAD(0), RAD(0), RAD(0)), CF(0, 0, 0))
1006
local limb1b = CreatePart(3, Weapon, "Neon", 0, 0, "Really red", "Handle", VT(2*Player_Size,2*Player_Size,2*Player_Size),false)
1007
local mesh = Instance.new("SpecialMesh",limb1b)
1008
mesh.MeshType = "Sphere"
1009
limb1b.Name = "Right Arm 02"
1010
1011
local LIMB = CreatePart(3, Weapon, "SmoothPlastic", 0, 0, "Really black", "Handle", VT(0.8*Player_Size,3.5*Player_Size,0.8*Player_Size),false)
1012
LIMB.Name = "Right Arm part"
1013
local LIMBWELD = CreateWeldOrSnapOrMotor("Weld", LIMB, limb1b, LIMB, CF(0 * Player_Size, 2 * Player_Size, 0 * Player_Size) * ANGLES(RAD(0), RAD(0), RAD(0)), CF(0, 0, 0))
1014
local LIMB = CreatePart(3, Weapon, "SmoothPlastic", 0, 0, "Really black", "Handle", VT(1.5*Player_Size,3.5*Player_Size,1.5*Player_Size),false)
1015
LIMB.Name = "Right Arm part"
1016
local LIMBWELD = CreateWeldOrSnapOrMotor("Weld", LIMB, limb1b, LIMB, CF(0 * Player_Size, 6 * Player_Size, 0 * Player_Size) * ANGLES(RAD(0), RAD(0), RAD(0)), CF(0, 0, 0))
1017
local LIMB = CreatePart(3, Weapon, "Neon", 0, 0, "Really red", "Handle", VT(0.7*Player_Size,3.5*Player_Size,0.7*Player_Size),false)
1018
LIMB.Name = "Right Arm part"
1019
local LIMBWELD = CreateWeldOrSnapOrMotor("Weld", LIMB, limb1b, LIMB, CF(0 * Player_Size, 3 * Player_Size, 0 * Player_Size) * ANGLES(RAD(0), RAD(0), RAD(0)), CF(0, 0, 0))
1020
1021
local part = CreatePart(3, Weapon, "Neon", 0, 0, "Really black", "Gear", VT(0.35*Player_Size,0.35*Player_Size,0.35*Player_Size),false)
1022
local mesh = Instance.new("SpecialMesh",part)
1023
mesh.MeshType = "FileMesh"
1024
mesh.MeshId = "rbxassetid://156292343"
1025
mesh.Scale = VT(10,10,10)
1026
local weld = CreateWeldOrSnapOrMotor("Weld", part, limb1b, part, CF(0 * Player_Size, 0 * Player_Size, 0 * Player_Size) * ANGLES(RAD(90), RAD(0), RAD(0)), CF(0, 0, 0))
1027
1028
local limbweld1b = CreateWeldOrSnapOrMotor("Weld", limb1b, limb1a, limb1b, CF(0* Player_Size, 8 * Player_Size, 0 * Player_Size) * ANGLES(RAD(0), RAD(0), RAD(0)), CF(0, 0, 0))
1029
local limb1c = CreatePart(3, Weapon, "Neon", 0, 0, "Really red", "Handle", VT(4*Player_Size,4*Player_Size,4*Player_Size),false)
1030
local mesh = Instance.new("SpecialMesh",limb1c)
1031
mesh.MeshType = "Sphere"
1032
limb1c.Name = "Right Arm 03"
1033
1034
local part = CreatePart(3, Weapon, "Neon", 0, 0, "Really black", "Gear", VT(0.35*Player_Size,0.35*Player_Size,0.35*Player_Size),false)
1035
local mesh = Instance.new("SpecialMesh",part)
1036
mesh.MeshType = "FileMesh"
1037
mesh.MeshId = "rbxassetid://156292343"
1038
mesh.Scale = VT(15,15,15)
1039
local weld = CreateWeldOrSnapOrMotor("Weld", part, limb1c, part, CF(0 * Player_Size, 0 * Player_Size, 0 * Player_Size) * ANGLES(RAD(90), RAD(0), RAD(0)), CF(0, 0, 0))
1040
local part = CreatePart(3, Weapon, "Neon", 0, 0, "Really black", "Gear", VT(0.35*Player_Size,0.35*Player_Size,0.35*Player_Size),false)
1041
local mesh = Instance.new("SpecialMesh",part)
1042
mesh.MeshType = "FileMesh"
1043
mesh.MeshId = "rbxassetid://156292343"
1044
mesh.Scale = VT(10,10,10)
1045
local weld = CreateWeldOrSnapOrMotor("Weld", part, limb1c, part, CF(0 * Player_Size, -1 * Player_Size, 0 * Player_Size) * ANGLES(RAD(90), RAD(0), RAD(0)), CF(0, 0, 0))
1046
local part = CreatePart(3, Weapon, "Neon", 0, 0, "Really black", "Gear", VT(0.35*Player_Size,0.35*Player_Size,0.35*Player_Size),false)
1047
local mesh = Instance.new("SpecialMesh",part)
1048
mesh.MeshType = "FileMesh"
1049
mesh.MeshId = "rbxassetid://156292343"
1050
mesh.Scale = VT(10,10,10)
1051
local weld = CreateWeldOrSnapOrMotor("Weld", part, limb1c, part, CF(0 * Player_Size, -2 * Player_Size, 0 * Player_Size) * ANGLES(RAD(90), RAD(0), RAD(0)), CF(0, 0, 0))
1052
1053
local limbweld1c = CreateWeldOrSnapOrMotor("Weld", limb1c, limb1b, limb1c, CF(0 * Player_Size, 8 * Player_Size, 0 * Player_Size) * ANGLES(RAD(0), RAD(0), RAD(0)), CF(0, 0, 0))
1054
1055
local hand1 = CreatePart(3, Weapon, "Neon", 0, 0, "Really black", "Hand", VT(0*Player_Size,0*Player_Size,0*Player_Size),false)
1056
local mesh = Instance.new("SpecialMesh",hand1)
1057
mesh.MeshType = "FileMesh"
1058
mesh.MeshId = "rbxassetid://1089939072"
1059
mesh.Scale = VT(7,8,7)
1060
local handweld1 = CreateWeldOrSnapOrMotor("Weld", limb1c, hand1, limb1c, CF(0 * Player_Size, 3 * Player_Size, 0 * Player_Size) * ANGLES(RAD(180), RAD(90), RAD(0)), CF(0, 0, 0))
1061
1062
--LEFT ARM
1063
1064
local limb2a = CreatePart(3, Weapon, "Neon", 0, 0, "Really red", "Handle", VT(2*Player_Size,2*Player_Size,2*Player_Size),false)
1065
local mesh = Instance.new("SpecialMesh",limb2a)
1066
mesh.MeshType = "Sphere"
1067
limb2a.Name = "Left Arm 01"
1068
1069
local LIMB = CreatePart(3, Weapon, "SmoothPlastic", 0, 0, "Really black", "Handle", VT(0.8*Player_Size,3.5*Player_Size,0.8*Player_Size),false)
1070
LIMB.Name = "Left Arm part"
1071
local LIMBWELD = CreateWeldOrSnapOrMotor("Weld", LIMB, limb2a, LIMB, CF(0 * Player_Size, 2 * Player_Size, 0 * Player_Size) * ANGLES(RAD(0), RAD(0), RAD(0)), CF(0, 0, 0))
1072
local LIMB = CreatePart(3, Weapon, "SmoothPlastic", 0, 0, "Really black", "Handle", VT(01*Player_Size,3.5*Player_Size,1*Player_Size),false)
1073
LIMB.Name = "Left Arm part"
1074
local LIMBWELD = CreateWeldOrSnapOrMotor("Weld", LIMB, limb2a, LIMB, CF(0 * Player_Size, 6 * Player_Size, 0 * Player_Size) * ANGLES(RAD(0), RAD(0), RAD(0)), CF(0, 0, 0))
1075
local LIMB = CreatePart(3, Weapon, "Neon", 0, 0, "Really red", "Handle", VT(0.7*Player_Size,3.5*Player_Size,0.7*Player_Size),false)
1076
LIMB.Name = "Left Arm part"
1077
local LIMBWELD = CreateWeldOrSnapOrMotor("Weld", LIMB, limb2a, LIMB, CF(0 * Player_Size, 3 * Player_Size, 0 * Player_Size) * ANGLES(RAD(0), RAD(0), RAD(0)), CF(0, 0, 0))
1078
1079
local limbweld2a = CreateWeldOrSnapOrMotor("Weld", limb2a, RootPart, limb2a, CF(-4 * Player_Size, 0 * Player_Size, 0 * Player_Size) * ANGLES(RAD(0), RAD(0), RAD(0)), CF(0, 0, 0))
1080
local limb2b = CreatePart(3, Weapon, "Neon", 0, 0, "Really red", "Handle", VT(2.5*Player_Size,2.5*Player_Size,2.5*Player_Size),false)
1081
local mesh = Instance.new("SpecialMesh",limb2b)
1082
mesh.MeshType = "Sphere"
1083
limb2b.Name = "Left Arm 02"
1084
1085
local LIMB = CreatePart(3, Weapon, "SmoothPlastic", 0, 0, "Really black", "Handle", VT(1*Player_Size,3.5*Player_Size,1*Player_Size),false)
1086
LIMB.Name = "Left Arm part"
1087
local LIMBWELD = CreateWeldOrSnapOrMotor("Weld", LIMB, limb2b, LIMB, CF(0 * Player_Size, 2 * Player_Size, 0 * Player_Size) * ANGLES(RAD(0), RAD(0), RAD(0)), CF(0, 0, 0))
1088
local LIMB = CreatePart(3, Weapon, "SmoothPlastic", 0, 0, "Really black", "Handle", VT(1.5*Player_Size,3.5*Player_Size,1.5*Player_Size),false)
1089
LIMB.Name = "Left Arm part"
1090
local LIMBWELD = CreateWeldOrSnapOrMotor("Weld", LIMB, limb2b, LIMB, CF(0 * Player_Size, 6 * Player_Size, 0 * Player_Size) * ANGLES(RAD(0), RAD(0), RAD(0)), CF(0, 0, 0))
1091
local LIMB = CreatePart(3, Weapon, "Neon", 0, 0, "Really red", "Handle", VT(0.7*Player_Size,3.5*Player_Size,0.7*Player_Size),false)
1092
LIMB.Name = "Left Arm part"
1093
local LIMBWELD = CreateWeldOrSnapOrMotor("Weld", LIMB, limb2b, LIMB, CF(0 * Player_Size, 3 * Player_Size, 0 * Player_Size) * ANGLES(RAD(0), RAD(0), RAD(0)), CF(0, 0, 0))
1094
1095
local part = CreatePart(3, Weapon, "Neon", 0, 0, "Really black", "Gear", VT(0.35*Player_Size,0.35*Player_Size,0.35*Player_Size),false)
1096
local mesh = Instance.new("SpecialMesh",part)
1097
mesh.MeshType = "FileMesh"
1098
mesh.MeshId = "rbxassetid://156292343"
1099
mesh.Scale = VT(10,10,10)
1100
local weld = CreateWeldOrSnapOrMotor("Weld", part, limb2b, part, CF(0 * Player_Size, 0 * Player_Size, 0 * Player_Size) * ANGLES(RAD(90), RAD(0), RAD(0)), CF(0, 0, 0))
1101
1102
local limbweld2b = CreateWeldOrSnapOrMotor("Weld", limb2b, limb2a, limb2b, CF(0* Player_Size, 8 * Player_Size, 0 * Player_Size) * ANGLES(RAD(0), RAD(0), RAD(0)), CF(0, 0, 0))
1103
local limb2c = CreatePart(3, Weapon, "Neon", 0, 0, "Really red", "Handle", VT(4*Player_Size,4*Player_Size,4*Player_Size),false)
1104
local mesh = Instance.new("SpecialMesh",limb2c)
1105
mesh.MeshType = "Sphere"
1106
limb1c.Name = "Right Arm 03"
1107
1108
local part = CreatePart(3, Weapon, "Neon", 0, 0, "Really black", "Gear", VT(0.35*Player_Size,0.35*Player_Size,0.35*Player_Size),false)
1109
local mesh = Instance.new("SpecialMesh",part)
1110
mesh.MeshType = "FileMesh"
1111
mesh.MeshId = "rbxassetid://156292343"
1112
mesh.Scale = VT(15,15,15)
1113
local weld = CreateWeldOrSnapOrMotor("Weld", part, limb2c, part, CF(0 * Player_Size, 0 * Player_Size, 0 * Player_Size) * ANGLES(RAD(90), RAD(0), RAD(0)), CF(0, 0, 0))
1114
local part = CreatePart(3, Weapon, "Neon", 0, 0, "Really black", "Gear", VT(0.35*Player_Size,0.35*Player_Size,0.35*Player_Size),false)
1115
local mesh = Instance.new("SpecialMesh",part)
1116
mesh.MeshType = "FileMesh"
1117
mesh.MeshId = "rbxassetid://156292343"
1118
mesh.Scale = VT(10,10,10)
1119
local weld = CreateWeldOrSnapOrMotor("Weld", part, limb2c, part, CF(0 * Player_Size, -1 * Player_Size, 0 * Player_Size) * ANGLES(RAD(90), RAD(0), RAD(0)), CF(0, 0, 0))
1120
local part = CreatePart(3, Weapon, "Neon", 0, 0, "Really black", "Gear", VT(0.35*Player_Size,0.35*Player_Size,0.35*Player_Size),false)
1121
local mesh = Instance.new("SpecialMesh",part)
1122
mesh.MeshType = "FileMesh"
1123
mesh.MeshId = "rbxassetid://156292343"
1124
mesh.Scale = VT(10,10,10)
1125
local weld = CreateWeldOrSnapOrMotor("Weld", part, limb2c, part, CF(0 * Player_Size, -2 * Player_Size, 0 * Player_Size) * ANGLES(RAD(90), RAD(0), RAD(0)), CF(0, 0, 0))
1126
1127
local limbweld2c = CreateWeldOrSnapOrMotor("Weld", limb2c, limb2b, limb2c, CF(0 * Player_Size, 8 * Player_Size, 0 * Player_Size) * ANGLES(RAD(0), RAD(0), RAD(0)), CF(0, 0, 0))
1128
1129
local hand2 = CreatePart(3, Weapon, "Neon", 0, 0, "Really black", "Hand", VT(0*Player_Size,0*Player_Size,0*Player_Size),false)
1130
local mesh = Instance.new("SpecialMesh",hand2)
1131
mesh.MeshType = "FileMesh"
1132
mesh.MeshId = "rbxassetid://1089939056"
1133
mesh.Scale = VT(7,8,7)
1134
local handweld2 = CreateWeldOrSnapOrMotor("Weld", limb2c, hand2, limb2c, CF(0 * Player_Size, 3 * Player_Size, 0 * Player_Size) * ANGLES(RAD(180), RAD(-90), RAD(0)), CF(0, 0, 0))
1135
1136
for _, c in pairs(Weapon:GetChildren()) do
1137
	if c.ClassName == "Part" then
1138
		c.CustomPhysicalProperties = PhysicalProperties.new(0, 0, 0, 0, 0)
1139
	end
1140
end
1141
1142
--//=================================\\
1143
--|| 			SPEECH
1144
--\\=================================//
1145
1146
function chatfunc(text,waitt)
1147
local chat = coroutine.wrap(function()
1148
if Character:FindFirstChild("TalkingBillBoard")~= nil then
1149
Character:FindFirstChild("TalkingBillBoard"):destroy()
1150
end
1151
local naeeym2 = Instance.new("BillboardGui",Character)
1152
naeeym2.Size = UDim2.new(0,100,0,40)
1153
naeeym2.StudsOffset = Vector3.new(0,2,0)
1154
naeeym2.Adornee = Character.Head
1155
naeeym2.Name = "TalkingBillBoard"
1156
naeeym2.AlwaysOnTop = true
1157
local tecks2  = 30
1158
tecks2.BackgroundTransparency = 1
1159
tecks2.BorderSizePixel = 0
1160
tecks2.Text = ""
1161
tecks2.Font = "Fantasy"
1162
tecks2.TextSize = 30
1163
tecks2.TextStrokeTransparency = 1
1164
tecks2.TextColor3 = SKILLTEXTCOLOR
1165
tecks2.TextStrokeColor3 = Color3.new(0,0,0)
1166
tecks2.Size = UDim2.new(1,0,0.5,0)
1167
local tecks3 = Instance.new("TextLabel",naeeym2)
1168
tecks3.BackgroundTransparency = 1
1169
tecks3.BorderSizePixel = 0
1170
tecks3.Text = ""
1171
tecks3.Font = "Fantasy"
1172
tecks3.TextSizekeTransparency = 1
1173
tecks3.TextColor3 = SKILLTEXTCOLOR
1174
tecks3.TextStrokeColor3 = Color3.new(0,0,0)
1175
tecks3.Size = UDim2.new(1,0,0.5,0)
1176
for i = 1,string.len(text),1 do
1177
tecks2.Text = string.sub(text,1,i)
1178
tecks3.Text = string.sub(text,1,i)
1179
wait(0.01)
1180
end
1181
wait(waitt)
1182
naeeym2:Destroy()
1183
end)
1184
chat()
1185
end
1186
1187
--//=================================\\
1188
--||	     DAMAGE FUNCTIONS
1189
--\\=================================//
1190
1191
function StatLabel(LABELTYPE, CFRAME, TEXT, COLOR)
1192
	local STATPART = CreatePart(3, Effects, "SmoothPlastic", 0, 1, "Really black", "Effect", VT())
1193
	STATPART.CFrame = CF(CFRAME.p + VT(0, 1.5, 0))
1194
	local BODYGYRO = IT("BodyGyro", STATPART)
1195
	local BODYPOSITION = IT("BodyPosition", STATPART)
1196
	BODYPOSITION.P = 2000
1197
	BODYPOSITION.D = 100
1198
	BODYPOSITION.maxForce = VT(math.huge, math.huge, math.huge)
1199
	if LABELTYPE == "Normal" then
1200
		BODYPOSITION.position = STATPART.Position + VT(MRANDOM(-2, 2), 6, MRANDOM(-2, 2))
1201
	elseif LABELTYPE == "Debuff" then
1202
		BODYPOSITION.position = STATPART.Position + VT(MRANDOM(-2, 2), 8, MRANDOM(-2, 2))
1203
	elseif LABELTYPE == "Interruption" then
1204
		BODYPOSITION.position = STATPART.Position + VT(MRANDOM(-2,2), 8, MRANDOM(-2, 2))
1205
	end
1206
	game:GetService("Debris"):AddItem(STATPART ,5)
1207
	local BILLBOARDGUI = Instance.new("BillboardGui", STATPART)
1208
	BILLBOARDGUI.Adornee = STATPART
1209
	BILLBOARDGUI.Size = UD2(2.5, 0, 2.5 ,0)
1210
	BILLBOARDGUI.StudsOffset = VT(-2, 2, 0)
1211
	BILLBOARDGUI.AlwaysOnTop = false
1212
	local TEXTLABEL = Instance.new("TextLabel", BILLBOARDGUI)
1213
	TEXTLABEL.BackgroundTransparency = 1
1214
	TEXTLABEL.Size = UD2(2.5, 0, 2.5, 0)
1215
	TEXTLABEL.Text = TEXT
1216
	TEXTLABEL.Font = "SciFi"
1217
	TEXTLABEL.FontSize="Size42"
1218
	TEXTLABEL.TextColor3 = COLOR
1219
	TEXTLABEL.TextStrokeTransparency = 1
1220
	TEXTLABEL.TextScaled = true
1221
	TEXTLABEL.TextWrapped = true
1222
	coroutine.resume(coroutine.create(function(THEPART, THEBODYPOSITION, THETEXTLABEL)
1223
		wait(0.2)
1224
		for i=1, 5 do
1225
			wait()
1226
			THEBODYPOSITION.Position = THEPART.Position - VT(0, 0.5 ,0)
1227
		end
1228
		wait(1.2)
1229
		for i=1, 5 do
1230
			wait()
1231
			THETEXTLABEL.TextTransparency = THETEXTLABEL.TextTransparency + 0.2
1232
			THETEXTLABEL.TextStrokeTransparency = THETEXTLABEL.TextStrokeTransparency + 0.2
1233
			THEBODYPOSITION.position = THEPART.Position + VT(0, 0.5, 0)
1234
		end
1235
		THEPART.Parent = nil
1236
	end),STATPART, BODYPOSITION, TEXTLABEL)
1237
end
1238
1239
function CreatePentagram(size,doesrotate,rotatedirection,waitt,cframe,offset)
1240
	local sinkhole = IT("Part",Effects)
1241
	sinkhole.Size = VT(size,0,size)
1242
	sinkhole.CFrame = cframe * CF(0,offset,0)
1243
	sinkhole.Material = "Neon"
1244
	sinkhole.Color = C3(1,0,0)
1245
	sinkhole.Anchored = true
1246
	sinkhole.CanCollide = false
1247
	sinkhole.Transparency = 1
1248
	local decal = IT("Decal",sinkhole)
1249
	decal.Face = "Top"
1250
	decal.Texture = "http://www.roblox.com/asset/?id=818983932"
1251
	coroutine.resume(coroutine.create(function(PART)
1252
		for i = 1, waitt do
1253
			Swait()
1254
			if doesrotate == true then
1255
				sinkhole.CFrame = sinkhole.CFrame * CFrame.fromEulerAnglesXYZ(0, rotatedirection, 0)
1256
			end
1257
			if i > waitt-11 then
1258
				decal.Transparency = decal.Transparency + 0.1
1259
			end
1260
		end
1261
		sinkhole:remove()
1262
	end))
1263
	return sinkhole
1264
end
1265
1266
--//=================================\\
1267
--||			DAMAGING
1268
--\\=================================//
1269
1270
function dealdamage(hit,min,max,maxstrength,beserk,critrate,critmultiplier)
1271
	if hit.Parent:FindFirstChildOfClass("Humanoid") and hit.Parent:FindFirstChild("HitBy"..Player.Name) == nil then
1272
		local humanoid = hit.Parent:FindFirstChildOfClass("Humanoid")
1273
		local dmg = math.random(min,max)
1274
		if humanoid.Health > 0 then
1275
			if beserk == true then
1276
				humanoid.Health = 0
1277
			else
1278
				CreateSound("260430060", hit, 1.2, MRANDOM(7, 12) / 10)
1279
				hit.Velocity = CFrame.new(Torso.Position,hit.Position).lookVector*5*maxstrength
1280
				if math.random(1,100) < critrate+1 then
1281
					humanoid.Health = humanoid.Health - dmg*critmultiplier
1282
					StatLabel("Normal", hit.CFrame * CF(0, 0 + (hit.Size.z - 1), 0), "CRIT/"..dmg*critmultiplier, C3(255/255, 0, 0))
1283
				else
1284
					humanoid.Health = humanoid.Health - dmg
1285
					StatLabel("Normal", hit.CFrame * CF(0, 0 + (hit.Size.z - 1), 0), dmg, C3(0, 0, 0))
1286
				end
1287
				local defence = Instance.new("BoolValue",hit.Parent)
1288
				defence.Name = ("HitBy"..Player.Name)
1289
				game:GetService("Debris"):AddItem(defence, 0.5)
1290
			end
1291
		end
1292
	end
1293
end
1294
1295
function AoEDamage(position,radius,min,max,maxstrength,beserk,critrate,critmultiplier,CanBeDodgedByJumping)
1296
	local dmg = math.random(min,max)
1297
	for i,v in ipairs(workspace:GetChildren()) do
1298
	if v:FindFirstChild("HitBy"..Player.Name) == nil then
1299
		local body = v:GetChildren()
1300
			for part = 1, #body do
1301
				if(v:FindFirstChild("HitBy"..Player.Name) == nil and (body[part].ClassName == "Part" or body[part].ClassName == "MeshPart") and v ~= Character) then
1302
					if(body[part].Position - position).Magnitude < radius then
1303
						if v.ClassName == "Model" then
1304
							if v:FindFirstChild("Humanoid") then
1305
								if v.Humanoid.Health ~= 0 then
1306
									if CanBeDodgedByJumping == true then
1307
										if body[part].Position.Y < position.Y+5 then
1308
											if math.random(1,100) < critrate+1 then
1309
												v.Humanoid.Health = v.Humanoid.Health - dmg*critmultiplier
1310
												StatLabel("Normal", body[part].CFrame * CF(0, 0 + (body[part].Size.z - 1), 0), "CRIT/"..dmg*critmultiplier, C3(255/255, 0, 0))
1311
											else
1312
												v.Humanoid.Health = v.Humanoid.Health - dmg
1313
												StatLabel("Normal", body[part].CFrame * CF(0, 0 + (body[part].Size.z - 1), 0), dmg, C3(0, 0, 0))
1314
											end
1315
											local defence = Instance.new("BoolValue",v)
1316
											defence.Name = ("HitBy"..Player.Name)
1317
											game:GetService("Debris"):AddItem(defence, 0.5)
1318
										end
1319
									else
1320
										if beserk == true then
1321
											v.Humanoid.Health = 0
1322
										end
1323
										if math.random(1,100) < critrate+1 then
1324
											v.Humanoid.Health = v.Humanoid.Health - dmg*critmultiplier
1325
											StatLabel("Normal", body[part].CFrame * CF(0, 0 + (body[part].Size.z - 1), 0), "CRIT/"..dmg*critmultiplier, C3(255/255, 0, 0))
1326
										else
1327
											v.Humanoid.Health = v.Humanoid.Health - dmg
1328
											StatLabel("Normal", body[part].CFrame * CF(0, 0 + (body[part].Size.z - 1), 0), dmg, C3(0, 0, 0))
1329
										end
1330
										local defence = Instance.new("BoolValue",v)
1331
										defence.Name = ("HitBy"..Player.Name)
1332
										game:GetService("Debris"):AddItem(defence, 0.5)
1333
									end
1334
								end
1335
							end
1336
						end
1337
						--body[part].Velocity = CFrame.new(position,body[part].Position).lookVector*5*maxstrength
1338
					end
1339
				end
1340
			end
1341
			if v.ClassName == "Part" then
1342
				if v.Anchored == false and (v.Position - position).Magnitude < radius then
1343
					--v.Velocity = CFrame.new(position,v.Position).lookVector*5*maxstrength
1344
				end
1345
			end
1346
		end
1347
	end
1348
end
1349
1350
function killnearest(position,range,maxstrength)
1351
	for i,v in ipairs(workspace:GetChildren()) do
1352
	local body = v:GetChildren()
1353
		for part = 1, #body do
1354
			if((body[part].ClassName == "Part" or body[part].ClassName == "MeshPart") and v ~= Character) then
1355
				if(body[part].Position - position).Magnitude < range then
1356
					if v.ClassName == "Model" then
1357
						v:BreakJoints()
1358
					end
1359
					--table.insert(Effects2,{body[part],"Disappear",0.02,2,2,2,2})
1360
					body[part].Velocity = CFrame.new(position,body[part].Position).lookVector*5*maxstrength
1361
				end
1362
			end
1363
		end
1364
		if v.ClassName == "Part" then
1365
			if v.Anchored == false and (v.Position - position).Magnitude < range then
1366
				--table.insert(Effects2,{v,"Disappear",0.02,2,2,2,2})
1367
				v.Velocity = CFrame.new(position,v.Position).lookVector*5*maxstrength
1368
			end
1369
		end
1370
	end
1371
end
1372
1373
--//=================================\\
1374
--||	ATTACK FUNCTIONS AND STUFF
1375
--\\=================================//
1376
1377
1378
function turnto(pos,part)
1379
	part.CFrame = CF(part.Position,VT(pos.X,RootPart.Position.Y,pos.Z))
1380
end
1381
1382
Humanoid.Died:connect(function()
1383
	q = workspace:GetChildren()
1384
	DEAD = true
1385
	CreatePentagram(1500,true,-0.1,150,CF(RootPart.Position),-15-3)
1386
	Head.Parent = nil
1387
	Head = nil
1388
	for i = 1, #q do
1389
		local child = q[i]
1390
		if child.ClassName == "Model" and child:FindFirstChild("Humanoid") then
1391
			child:BreakJoints()
1392
		end
1393
	end
1394
	local taunt = CreateSound("135009414", workspace, 10, 1)
1395
	local effect = IT("PitchShiftSoundEffect",taunt)
1396
	effect.Octave = 0.700
1397
	ATTACK = true
1398
end)
1399
1400
function ClawForce()
1401
	ATTACK = true
1402
	for i=0, 2, 0.1 / Animation_Speed do
1403
		Swait()
1404
		RootJoint.C0 = Clerp(RootJoint.C0,ROOTC0 * CF(0 * Player_Size, 0 * Player_Size, 0 * Player_Size + 0.05 * COS(SINE / 12) * Player_Size) * ANGLES(RAD(-25), RAD(0), RAD(0)), 0.15 / Animation_Speed)
1405
		Neck.C0 = Clerp(Neck.C0, NECKC0 * CF(0 * Player_Size, 0 * Player_Size, 0 + ((1 * Player_Size) - 1)) * ANGLES(RAD(15 - 2.5 * SIN(SINE / 12)), RAD(0), RAD(0)), 0.15 / Animation_Speed)
1406
		RightShoulder.C0 = Clerp(RightShoulder.C0, CF(1.5 * Player_Size, 0.5 * Player_Size, 0 * Player_Size) * ANGLES(RAD(145), RAD(0), RAD(12)) * RIGHTSHOULDERC0, 0.15 / Animation_Speed)
1407
		LeftShoulder.C0 = Clerp(LeftShoulder.C0, CF(-1.5 * Player_Size, 0.5 * Player_Size, 0 * Player_Size) * ANGLES(RAD(145), RAD(0), RAD(-12)) * LEFTSHOULDERC0, 0.15 / Animation_Speed)
1408
		RightHip.C0 = Clerp(RightHip.C0, CF(1 * Player_Size, -0.3 * Player_Size - 0 * Player_Size, -0.2 * Player_Size) * ANGLES(RAD(0), RAD(70), RAD(0)) * ANGLES(RAD(-8), RAD(0), RAD(0)), 0.15 / Animation_Speed)
1409
		LeftHip.C0 = Clerp(LeftHip.C0, CF(-1 * Player_Size, -0.8 * Player_Size - 0.2 * COS(SINE / 12) * Player_Size, -0.01 * Player_Size) * ANGLES(RAD(0), RAD(-90), RAD(0)) * ANGLES(RAD(-8), RAD(0), RAD(0)), 0.15 / Animation_Speed)
1410
1411
		limbweld1a.C0 = Clerp(limbweld1a.C0, CF(5 * Player_Size, 0 * Player_Size, 0 * Player_Size) * ANGLES(RAD(45), RAD(8), RAD(-65)), 0.4 / Animation_Speed)
1412
		limbweld1b.C0 = Clerp(limbweld1b.C0, CF(0* Player_Size, 8 * Player_Size, 0 * Player_Size) * ANGLES(RAD(-86), RAD(-5), RAD(0)), 0.4 / Animation_Speed)
1413
		limbweld1c.C0 = Clerp(limbweld1c.C0, CF(0 * Player_Size, 8 * Player_Size, 0 * Player_Size) * ANGLES(RAD(-25), RAD(0), RAD(0)), 0.4 / Animation_Speed)
1414
1415
		limbweld2a.C0 = Clerp(limbweld2a.C0, CF(-5 * Player_Size, 0 * Player_Size, 0 * Player_Size) * ANGLES(RAD(45), RAD(-8), RAD(65)), 0.4 / Animation_Speed)
1416
		limbweld2b.C0 = Clerp(limbweld2b.C0, CF(0* Player_Size, 8 * Player_Size, 0 * Player_Size) * ANGLES(RAD(-86), RAD(5), RAD(0)), 0.4 / Animation_Speed)
1417
		limbweld2c.C0 = Clerp(limbweld2c.C0, CF(0 * Player_Size, 8 * Player_Size, 0 * Player_Size) * ANGLES(RAD(-25), RAD(0), RAD(0)), 0.4 / Animation_Speed)
1418
	end
1419
	CreateSound("134012322", Effects, 2, 1)
1420
	for i=0, 1, 0.1 / Animation_Speed2 do
1421
		Swait()
1422
		RootJoint.C0 = Clerp(RootJoint.C0,ROOTC0 * CF(0 * Player_Size, 0 * Player_Size, 0 * Player_Size + 0.05 * COS(SINE / 12) * Player_Size) * ANGLES(RAD(25), RAD(0), RAD(0)), 0.15 / Animation_Speed2)
1423
		Neck.C0 = Clerp(Neck.C0, NECKC0 * CF(0 * Player_Size, 0 * Player_Size, 0 + ((1 * Player_Size) - 1)) * ANGLES(RAD(15 - 2.5 * SIN(SINE / 12)), RAD(0), RAD(0)), 0.15 / Animation_Speed2)
1424
		RightShoulder.C0 = Clerp(RightShoulder.C0, CF(1.5 * Player_Size, 0.5 * Player_Size, 0 * Player_Size) * ANGLES(RAD(15), RAD(0), RAD(12)) * RIGHTSHOULDERC0, 0.15 / Animation_Speed2)
1425
		LeftShoulder.C0 = Clerp(LeftShoulder.C0, CF(-1.5 * Player_Size, 0.5 * Player_Size, 0 * Player_Size) * ANGLES(RAD(15), RAD(0), RAD(-12)) * LEFTSHOULDERC0, 0.15 / Animation_Speed2)
1426
		RightHip.C0 = Clerp(RightHip.C0, CF(1 * Player_Size, -0.3 * Player_Size - 0 * Player_Size, -0.2 * Player_Size) * ANGLES(RAD(0), RAD(70), RAD(0)) * ANGLES(RAD(-8), RAD(0), RAD(0)), 0.15 / Animation_Speed2)
1427
		LeftHip.C0 = Clerp(LeftHip.C0, CF(-1 * Player_Size, -0.8 * Player_Size - 0.2 * COS(SINE / 12) * Player_Size, -0.01 * Player_Size) * ANGLES(RAD(0), RAD(-90), RAD(0)) * ANGLES(RAD(-8), RAD(0), RAD(0)), 0.15 / Animation_Speed2)
1428
1429
		limbweld1a.C0 = Clerp(limbweld1a.C0, CF(5 * Player_Size, 0 * Player_Size, 0 * Player_Size) * ANGLES(RAD(15), RAD(8), RAD(-175)), 0.4 / Animation_Speed2)
1430
		limbweld1b.C0 = Clerp(limbweld1b.C0, CF(0* Player_Size, 8 * Player_Size, 0 * Player_Size) * ANGLES(RAD(-26), RAD(-5), RAD(0)), 0.4 / Animation_Speed2)
1431
		limbweld1c.C0 = Clerp(limbweld1c.C0, CF(0 * Player_Size, 8 * Player_Size, 0 * Player_Size) * ANGLES(RAD(-25), RAD(-90), RAD(0)), 0.4 / Animation_Speed2)
1432
1433
		limbweld2a.C0 = Clerp(limbweld2a.C0, CF(-5 * Player_Size, 0 * Player_Size, 0 * Player_Size) * ANGLES(RAD(15), RAD(-8), RAD(175)), 0.4 / Animation_Speed2)
1434
		limbweld2b.C0 = Clerp(limbweld2b.C0, CF(0* Player_Size, 8 * Player_Size, 0 * Player_Size) * ANGLES(RAD(-26), RAD(5), RAD(0)), 0.4 / Animation_Speed2)
1435
		limbweld2c.C0 = Clerp(limbweld2c.C0, CF(0 * Player_Size, 8 * Player_Size, 0 * Player_Size) * ANGLES(RAD(-25), RAD(90), RAD(0)), 0.4 / Animation_Speed2)
1436
	end
1437
	killnearest(hand1.Position,15,60)
1438
	killnearest(hand2.Position,15,60)
1439
	CreateWave(0,15,false,0,15,CF(hand1.Position) * CF(0,-1,0),0,"Really black")
1440
	CreateWave(0,15,false,0,15,CF(hand2.Position) * CF(0,-1,0),0,"Really black")
1441
	CreateWave(0,10,false,0,15,CF(hand1.Position) * CF(0,-1,0),0,"Really black")
1442
	CreateWave(0,10,false,0,15,CF(hand2.Position) * CF(0,-1,0),0,"Really black")
1443
	CreateWave(0,5,false,0,15,CF(hand1.Position) * CF(0,-1,0),0,"Really black")
1444
	CreateWave(0,5,false,0,15,CF(hand2.Position) * CF(0,-1,0),0,"Really black")
1445
	CreateSound("1225807237", Effects, 4, 1)
1446
	for i=0, 0.5, 0.1 / Animation_Speed2 do
1447
		Swait()
1448
		RootJoint.C0 = Clerp(RootJoint.C0,ROOTC0 * CF(0 * Player_Size, 0 * Player_Size, 0 * Player_Size + 0.05 * COS(SINE / 12) * Player_Size) * ANGLES(RAD(25), RAD(0), RAD(0)), 0.15 / Animation_Speed2)
1449
		Neck.C0 = Clerp(Neck.C0, NECKC0 * CF(0 * Player_Size, 0 * Player_Size, 0 + ((1 * Player_Size) - 1)) * ANGLES(RAD(15 - 2.5 * SIN(SINE / 12)), RAD(0), RAD(0)), 0.15 / Animation_Speed2)
1450
		RightShoulder.C0 = Clerp(RightShoulder.C0, CF(1.5 * Player_Size, 0.5 * Player_Size, 0 * Player_Size) * ANGLES(RAD(15), RAD(0), RAD(12)) * RIGHTSHOULDERC0, 0.15 / Animation_Speed2)
1451
		LeftShoulder.C0 = Clerp(LeftShoulder.C0, CF(-1.5 * Player_Size, 0.5 * Player_Size, 0 * Player_Size) * ANGLES(RAD(15), RAD(0), RAD(-12)) * LEFTSHOULDERC0, 0.15 / Animation_Speed2)
1452
		RightHip.C0 = Clerp(RightHip.C0, CF(1 * Player_Size, -0.3 * Player_Size - 0 * Player_Size, -0.2 * Player_Size) * ANGLES(RAD(0), RAD(70), RAD(0)) * ANGLES(RAD(-8), RAD(0), RAD(0)), 0.15 / Animation_Speed2)
1453
		LeftHip.C0 = Clerp(LeftHip.C0, CF(-1 * Player_Size, -0.8 * Player_Size - 0.2 * COS(SINE / 12) * Player_Size, -0.01 * Player_Size) * ANGLES(RAD(0), RAD(-90), RAD(0)) * ANGLES(RAD(-8), RAD(0), RAD(0)), 0.15 / Animation_Speed2)
1454
1455
		limbweld1a.C0 = Clerp(limbweld1a.C0, CF(5 * Player_Size, 0 * Player_Size, 0 * Player_Size) * ANGLES(RAD(15), RAD(8), RAD(-175)), 0.4 / Animation_Speed2)
1456
		limbweld1b.C0 = Clerp(limbweld1b.C0, CF(0* Player_Size, 8 * Player_Size, 0 * Player_Size) * ANGLES(RAD(-26), RAD(-5), RAD(0)), 0.4 / Animation_Speed2)
1457
		limbweld1c.C0 = Clerp(limbweld1c.C0, CF(0 * Player_Size, 8 * Player_Size, 0 * Player_Size) * ANGLES(RAD(-25), RAD(-90), RAD(0)), 0.4 / Animation_Speed2)
1458
1459
		limbweld2a.C0 = Clerp(limbweld2a.C0, CF(-5 * Player_Size, 0 * Player_Size, 0 * Player_Size) * ANGLES(RAD(15), RAD(-8), RAD(175)), 0.4 / Animation_Speed2)
1460
		limbweld2b.C0 = Clerp(limbweld2b.C0, CF(0* Player_Size, 8 * Player_Size, 0 * Player_Size) * ANGLES(RAD(-26), RAD(5), RAD(0)), 0.4 / Animation_Speed2)
1461
		limbweld2c.C0 = Clerp(limbweld2c.C0, CF(0 * Player_Size, 8 * Player_Size, 0 * Player_Size) * ANGLES(RAD(-25), RAD(90), RAD(0)), 0.4 / Animation_Speed2)
1462
	end
1463
	ATTACK = false
1464
end
1465
1466
function HellLeash()
1467
	ATTACK = true
1468
	Rooted = true
1469
	CreateSound("159882578", Effects, 10, 0.6)
1470
	for i=0, 2, 0.1 / Animation_Speed do
1471
		Swait()
1472
		turnto(Mouse.Hit.p,RootPart)
1473
		RootJoint.C0 = Clerp(RootJoint.C0,ROOTC0 * CF(0 * Player_Size, 0 * Player_Size, 0 * Player_Size + 0.05 * COS(SINE / 12) * Player_Size) * ANGLES(RAD(0), RAD(0), RAD(45)), 0.15 / Animation_Speed)
1474
		Neck.C0 = Clerp(Neck.C0, NECKC0 * CF(0 * Player_Size, 0 * Player_Size, 0 + ((1 * Player_Size) - 1)) * ANGLES(RAD(15 - 2.5 * SIN(SINE / 12)), RAD(0), RAD(-45)), 0.15 / Animation_Speed)
1475
		RightShoulder.C0 = Clerp(RightShoulder.C0, CF(1.5 * Player_Size, 0.5 * Player_Size, 0 * Player_Size) * ANGLES(RAD(90), RAD(0), RAD(35)) * RIGHTSHOULDERC0, 0.15 / Animation_Speed)
1476
		LeftShoulder.C0 = Clerp(LeftShoulder.C0, CF(-1.5 * Player_Size, 0.5 * Player_Size, 0 * Player_Size) * ANGLES(RAD(0), RAD(0), RAD(-12)) * LEFTSHOULDERC0, 0.15 / Animation_Speed)
1477
		RightHip.C0 = Clerp(RightHip.C0, CF(1 * Player_Size, -0.3 * Player_Size - 0 * Player_Size, -0.2 * Player_Size) * ANGLES(RAD(0), RAD(70), RAD(0)) * ANGLES(RAD(-8), RAD(0), RAD(0)), 0.15 / Animation_Speed)
1478
		LeftHip.C0 = Clerp(LeftHip.C0, CF(-1 * Player_Size, -0.8 * Player_Size - 0.2 * COS(SINE / 12) * Player_Size, -0.01 * Player_Size) * ANGLES(RAD(0), RAD(-90), RAD(0)) * ANGLES(RAD(-8), RAD(0), RAD(0)), 0.15 / Animation_Speed)
1479
1480
		limbweld1a.C0 = Clerp(limbweld1a.C0, CF(5 * Player_Size, 0 * Player_Size, 0 * Player_Size) * ANGLES(RAD(-85), RAD(0), RAD(-95)) * ANGLES(RAD(0),RAD(0),RAD(90)), 0.4 / Animation_Speed)
1481
		limbweld1b.C0 = Clerp(limbweld1b.C0, CF(0* Player_Size, 8 * Player_Size, 0 * Player_Size) * ANGLES(RAD(-6), RAD(-5 * COS(SINE / 30)), RAD(0)), 0.4 / Animation_Speed)
1482
		limbweld1c.C0 = Clerp(limbweld1c.C0, CF(0 * Player_Size, 8 * Player_Size, 0 * Player_Size) * ANGLES(RAD(5), RAD(0), RAD(0)), 0.4 / Animation_Speed)
1483
1484
		limbweld2a.C0 = Clerp(limbweld2a.C0, CF(-5 * Player_Size, 0 * Player_Size, 0 * Player_Size) * ANGLES(RAD(-25), RAD(-8+(-5 * COS(SINE / 30))), RAD(135)), 0.4 / Animation_Speed)
1485
		limbweld2b.C0 = Clerp(limbweld2b.C0, CF(0* Player_Size, 8 * Player_Size, 0 * Player_Size) * ANGLES(RAD(-36), RAD(5 * COS(SINE / 30)), RAD(-35)), 0.4 / Animation_Speed)
1486
		limbweld2c.C0 = Clerp(limbweld2c.C0, CF(0 * Player_Size, 8 * Player_Size, 0 * Player_Size) * ANGLES(RAD(5), RAD(0), RAD(0)), 0.4 / Animation_Speed)
1487
	end
1488
	CreateSound("910988901", Effects, 4, 1)
1489
	local sphere = IT("Part",Effects)
1490
	sphere.Shape = "Ball"
1491
	sphere.Size = VT(0,0,0)
1492
	sphere.Material = "Neon"
1493
	sphere.Color = C3(1,0,0)
1494
	sphere.CFrame = hand1.CFrame*CF(0,0,0)
1495
	sphere.Anchored = true
1496
	for i = 1, 25 do
1497
		Swait()
1498
		turnto(Mouse.Hit.p,RootPart)
1499
		sphere.CFrame = hand1.CFrame*CF(-3.5,-2-sphere.Size.Y/2,0)
1500
		sphere.Size = sphere.Size + VT(1,1,1)
1501
		sphere.Anchored = true
1502
	end
1503
	for i = 1, 100 do
1504
		turnto(Mouse.Hit.p,RootPart)
1505
		local RayData = Zap({Offset = 2, Size = sphere.Size.Y/5 ,MaxRange = 150 ,StartPosition = sphere.Position, TargetPosition = Mouse.Hit.p, Character = Character, Color = "Really red", Individual = true})
1506
		MagicSphere(5,15,RayData.RayPos,0,"Really red")
1507
		killnearest(RayData.RayPos,15,100)
1508
		Swait()
1509
		sphere.CFrame = hand1.CFrame*CF(-3.5,-2-sphere.Size.Y/2,0)
1510
		sphere.Size = sphere.Size - VT(0.25,0.25,0.25)
1511
		sphere.Anchored = true
1512
		RayData.LightningModel:remove()
1513
	end
1514
	ATTACK = false
1515
	Rooted = false
1516
end
1517
1518
function RayCast(Position, Direction, MaxDistance, IgnoreList)
1519
	return game:GetService("Workspace"):FindPartOnRayWithIgnoreList(Ray.new(Position, Direction.unit * (MaxDistance or 999.999)), IgnoreList) 
1520
end
1521
1522
function SinnerWave()
1523
	ATTACK = true
1524
	Rooted = true
1525
	for i=0, 2, 0.1 / Animation_Speed do
1526
		Swait()
1527
		turnto(Mouse.Hit.p,RootPart)
1528
		RootJoint.C0 = Clerp(RootJoint.C0,ROOTC0 * CF(0 * Player_Size, 0 * Player_Size, 0 * Player_Size + 0.05 * COS(SINE / 12) * Player_Size) * ANGLES(RAD(-25), RAD(0), RAD(0)), 0.15 / Animation_Speed)
1529
		Neck.C0 = Clerp(Neck.C0, NECKC0 * CF(0 * Player_Size, 0 * Player_Size, 0 + ((1 * Player_Size) - 1)) * ANGLES(RAD(15 - 2.5 * SIN(SINE / 12)), RAD(0), RAD(0)), 0.15 / Animation_Speed)
1530
		RightShoulder.C0 = Clerp(RightShoulder.C0, CF(1.5 * Player_Size, 0.5 * Player_Size, 0 * Player_Size) * ANGLES(RAD(145), RAD(0), RAD(12)) * RIGHTSHOULDERC0, 0.15 / Animation_Speed)
1531
		LeftShoulder.C0 = Clerp(LeftShoulder.C0, CF(-1.5 * Player_Size, 0.5 * Player_Size, 0 * Player_Size) * ANGLES(RAD(145), RAD(0), RAD(-12)) * LEFTSHOULDERC0, 0.15 / Animation_Speed)
1532
		RightHip.C0 = Clerp(RightHip.C0, CF(1 * Player_Size, -0.3 * Player_Size - 0 * Player_Size, -0.2 * Player_Size) * ANGLES(RAD(0), RAD(70), RAD(0)) * ANGLES(RAD(-8), RAD(0), RAD(0)), 0.15 / Animation_Speed)
1533
		LeftHip.C0 = Clerp(LeftHip.C0, CF(-1 * Player_Size, -0.8 * Player_Size - 0.2 * COS(SINE / 12) * Player_Size, -0.01 * Player_Size) * ANGLES(RAD(0), RAD(-90), RAD(0)) * ANGLES(RAD(-8), RAD(0), RAD(0)), 0.15 / Animation_Speed)
1534
1535
		limbweld1a.C0 = Clerp(limbweld1a.C0, CF(5 * Player_Size, 0 * Player_Size, 0 * Player_Size) * ANGLES(RAD(45), RAD(8), RAD(-65)), 0.4 / Animation_Speed)
1536
		limbweld1b.C0 = Clerp(limbweld1b.C0, CF(0* Player_Size, 8 * Player_Size, 0 * Player_Size) * ANGLES(RAD(-86), RAD(-5), RAD(0)), 0.4 / Animation_Speed)
1537
		limbweld1c.C0 = Clerp(limbweld1c.C0, CF(0 * Player_Size, 8 * Player_Size, 0 * Player_Size) * ANGLES(RAD(-25), RAD(0), RAD(0)), 0.4 / Animation_Speed)
1538
1539
		limbweld2a.C0 = Clerp(limbweld2a.C0, CF(-5 * Player_Size, 0 * Player_Size, 0 * Player_Size) * ANGLES(RAD(45), RAD(-8), RAD(65)), 0.4 / Animation_Speed)
1540
		limbweld2b.C0 = Clerp(limbweld2b.C0, CF(0* Player_Size, 8 * Player_Size, 0 * Player_Size) * ANGLES(RAD(-86), RAD(5), RAD(0)), 0.4 / Animation_Speed)
1541
		limbweld2c.C0 = Clerp(limbweld2c.C0, CF(0 * Player_Size, 8 * Player_Size, 0 * Player_Size) * ANGLES(RAD(-25), RAD(0), RAD(0)), 0.4 / Animation_Speed)
1542
	end
1543
	CreateSound("971126018", Effects, 6, 1)
1544
	local angle = -60
1545
	for i = 1, 9 do
1546
		coroutine.resume(coroutine.create(function()
1547
			local RayHit, RayPos = RayCast(Torso.Position, Vector3.new(0, -15, 0), 10000, {Character})
1548
			local SpawnPosition = RayPos
1549
			local floor = RayHit
1550
			local needcframe = RootPart.CFrame*ANGLES(RAD(0),RAD(angle),RAD(0))
1551
			local LastPosition = RayPos
1552
			local Delay = 1
1553
			for i = 1, 15 do
1554
				local RayHit, RayPos = RayCast(LastPosition, needcframe.lookVector, 10, {workspace})
1555
				local End = RayPos
1556
				LastPosition = End
1557
				local locatepart = Instance.new("Part",Effects)
1558
				locatepart.Size = VT(0.5,0.5,0.5)
1559
				locatepart.Position = End
1560
				locatepart.CanCollide = false
1561
				locatepart.Anchored = true
1562
				locatepart.Name = "Oof"
1563
				locatepart.Transparency = 1
1564
					if SpawnPosition then
1565
						CreateSound("971125740", locatepart.CFrame, 7, 1)
1566
						killnearest(End,15,50)
1567
						CreateWave(0,5,true,0.1,15,CF(locatepart.Position),0,"Really black")
1568
						CreateWave(0,2.5,true,-0.1,15,CF(locatepart.Position),0,"Really black")
1569
						CreateWave(0,2,true,0.1,15,CF(locatepart.Position),0,"Really black")
1570
						CreateWave(0,1.5,true,-0.1,15,CF(locatepart.Position),0,"Really black")
1571
					end
1572
				Swait(5)
1573
				game:GetService("Debris"):AddItem(locatepart, 5)
1574
			end
1575
		end))
1576
		angle = angle + 15
1577
	end
1578
	for i=0, 2, 0.1 / Animation_Speed do
1579
		Swait()
1580
		RootJoint.C0 = Clerp(RootJoint.C0,ROOTC0 * CF(0 * Player_Size, 0 * Player_Size, 0 * Player_Size + 0.05 * COS(SINE / 12) * Player_Size) * ANGLES(RAD(-5), RAD(0), RAD(0)), 0.15 / Animation_Speed)
1581
		Neck.C0 = Clerp(Neck.C0, NECKC0 * CF(0 * Player_Size, 0 * Player_Size, 0 + ((1 * Player_Size) - 1)) * ANGLES(RAD(15 - 2.5 * SIN(SINE / 12)), RAD(0), RAD(0)), 0.15 / Animation_Speed)
1582
		RightShoulder.C0 = Clerp(RightShoulder.C0, CF(1.5 * Player_Size, 0.5 * Player_Size, 0 * Player_Size) * ANGLES(RAD(145), RAD(0), RAD(72)) * RIGHTSHOULDERC0, 0.15 / Animation_Speed)
1583
		LeftShoulder.C0 = Clerp(LeftShoulder.C0, CF(-1.5 * Player_Size, 0.5 * Player_Size, 0 * Player_Size) * ANGLES(RAD(145), RAD(0), RAD(-72)) * LEFTSHOULDERC0, 0.15 / Animation_Speed)
1584
		RightHip.C0 = Clerp(RightHip.C0, CF(1 * Player_Size, -0.3 * Player_Size - 0 * Player_Size, -0.2 * Player_Size) * ANGLES(RAD(0), RAD(70), RAD(0)) * ANGLES(RAD(-8), RAD(0), RAD(0)), 0.15 / Animation_Speed)
1585
		LeftHip.C0 = Clerp(LeftHip.C0, CF(-1 * Player_Size, -0.8 * Player_Size - 0.2 * COS(SINE / 12) * Player_Size, -0.01 * Player_Size) * ANGLES(RAD(0), RAD(-90), RAD(0)) * ANGLES(RAD(-8), RAD(0), RAD(0)), 0.15 / Animation_Speed)
1586
1587
		limbweld1a.C0 = Clerp(limbweld1a.C0, CF(5 * Player_Size, 0 * Player_Size, 0 * Player_Size) * ANGLES(RAD(45), RAD(8), RAD(-125)), 0.4 / Animation_Speed)
1588
		limbweld1b.C0 = Clerp(limbweld1b.C0, CF(0* Player_Size, 8 * Player_Size, 0 * Player_Size) * ANGLES(RAD(-26), RAD(-5), RAD(0)), 0.4 / Animation_Speed)
1589
		limbweld1c.C0 = Clerp(limbweld1c.C0, CF(0 * Player_Size, 8 * Player_Size, 0 * Player_Size) * ANGLES(RAD(-25), RAD(0), RAD(0)), 0.4 / Animation_Speed)
1590
1591
		limbweld2a.C0 = Clerp(limbweld2a.C0, CF(-5 * Player_Size, 0 * Player_Size, 0 * Player_Size) * ANGLES(RAD(45), RAD(-8), RAD(125)), 0.4 / Animation_Speed)
1592
		limbweld2b.C0 = Clerp(limbweld2b.C0, CF(0* Player_Size, 8 * Player_Size, 0 * Player_Size) * ANGLES(RAD(-26), RAD(5), RAD(0)), 0.4 / Animation_Speed)
1593
		limbweld2c.C0 = Clerp(limbweld2c.C0, CF(0 * Player_Size, 8 * Player_Size, 0 * Player_Size) * ANGLES(RAD(-25), RAD(0), RAD(0)), 0.4 / Animation_Speed)
1594
	end
1595
	ATTACK = false
1596
	Rooted = false
1597
end
1598
1599
function FromTheDepths()
1600
	ATTACK = true
1601
	Rooted = true
1602
	for i=0, 2, 0.1 / Animation_Speed do
1603
		Swait()
1604
		turnto(Mouse.Hit.p,RootPart)
1605
		RootJoint.C0 = Clerp(RootJoint.C0,ROOTC0 * CF(0 * Player_Size, 0 * Player_Size, 0 * Player_Size + 0.05 * COS(SINE / 12) * Player_Size) * ANGLES(RAD(5), RAD(0), RAD(0)), 0.15 / Animation_Speed)
1606
		Neck.C0 = Clerp(Neck.C0, NECKC0 * CF(0 * Player_Size, 0 * Player_Size, 0 + ((1 * Player_Size) - 1)) * ANGLES(RAD(15 - 2.5 * SIN(SINE / 12)), RAD(0), RAD(0)), 0.15 / Animation_Speed)
1607
		RightShoulder.C0 = Clerp(RightShoulder.C0, CF(1.5 * Player_Size, 0.5 * Player_Size, 0 * Player_Size) * ANGLES(RAD(145), RAD(0), RAD(72)) * RIGHTSHOULDERC0, 0.15 / Animation_Speed)
1608
		LeftShoulder.C0 = Clerp(LeftShoulder.C0, CF(-1.5 * Player_Size, 0.5 * Player_Size, 0 * Player_Size) * ANGLES(RAD(145), RAD(0), RAD(-72)) * LEFTSHOULDERC0, 0.15 / Animation_Speed)
1609
		RightHip.C0 = Clerp(RightHip.C0, CF(1 * Player_Size, -0.3 * Player_Size - 0 * Player_Size, -0.2 * Player_Size) * ANGLES(RAD(0), RAD(70), RAD(0)) * ANGLES(RAD(-8), RAD(0), RAD(0)), 0.15 / Animation_Speed)
1610
		LeftHip.C0 = Clerp(LeftHip.C0, CF(-1 * Player_Size, -0.8 * Player_Size - 0.2 * COS(SINE / 12) * Player_Size, -0.01 * Player_Size) * ANGLES(RAD(0), RAD(-90), RAD(0)) * ANGLES(RAD(-8), RAD(0), RAD(0)), 0.15 / Animation_Speed)
1611
1612
		limbweld1a.C0 = Clerp(limbweld1a.C0, CF(5 * Player_Size, 0 * Player_Size, 0 * Player_Size) * ANGLES(RAD(45), RAD(8), RAD(-125)), 0.4 / Animation_Speed)
1613
		limbweld1b.C0 = Clerp(limbweld1b.C0, CF(0* Player_Size, 8 * Player_Size, 0 * Player_Size) * ANGLES(RAD(-26), RAD(-5), RAD(0)), 0.4 / Animation_Speed)
1614
		limbweld1c.C0 = Clerp(limbweld1c.C0, CF(0 * Player_Size, 8 * Player_Size, 0 * Player_Size) * ANGLES(RAD(-25), RAD(0), RAD(0)), 0.4 / Animation_Speed)
1615
1616
		limbweld2a.C0 = Clerp(limbweld2a.C0, CF(-5 * Player_Size, 0 * Player_Size, 0 * Player_Size) * ANGLES(RAD(45), RAD(-8), RAD(125)), 0.4 / Animation_Speed)
1617
		limbweld2b.C0 = Clerp(limbweld2b.C0, CF(0* Player_Size, 8 * Player_Size, 0 * Player_Size) * ANGLES(RAD(-26), RAD(5), RAD(0)), 0.4 / Animation_Speed)
1618
		limbweld2c.C0 = Clerp(limbweld2c.C0, CF(0 * Player_Size, 8 * Player_Size, 0 * Player_Size) * ANGLES(RAD(-25), RAD(0), RAD(0)), 0.4 / Animation_Speed)
1619
	end
1620
	local pos = nil
1621
	repeat
1622
		Swait()
1623
		local RayData = Zap({Offset = 2, Size = 0.2 ,MaxRange = 150 ,StartPosition = CF(BottomPart.Position)*CF(0,-3,0).p, TargetPosition = Mouse.Hit.p, Character = Character, Color = "Really red", Individual = true})
1624
		MagicSphere(2,15,RayData.RayPos,0,"Really red")
1625
		pos = RayData.RayPos
1626
		Swait()
1627
		RayData.LightningModel:remove()
1628
		turnto(Mouse.Hit.p,RootPart)
1629
	until KEYHOLD == false
1630
	coroutine.resume(coroutine.create(function()
1631
		local gate = IT("Part",Effects)
1632
		gate.Material = "Neon"
1633
		gate.Color = C3(1,0,0)
1634
		gate.CanCollide = false
1635
		gate.Anchored = true
1636
		gate.Transparency = 1
1637
		gate.Size = VT(65,0.3,65)
1638
		local mesh = IT("CylinderMesh",gate)
1639
		gate.CFrame = CF(pos)
1640
		local soundeffect = IT("Sound",gate)
1641
		soundeffect.SoundId = "rbxassetid://487186990"
1642
		soundeffect.Looped = true
1643
		soundeffect.Volume = 0
1644
		soundeffect.Playing = true
1645
		for i = 1, 10 do
1646
			soundeffect.Volume = i
1647
			gate.Transparency = gate.Transparency - 0.1
1648
			Swait()
1649
		end
1650
		for i = 1, 150 do
1651
			Swait(5)
1652
			killnearest(gate.Position,35,-10)
1653
		end
1654
		for i = 1, 10 do
1655
			soundeffect.Volume = soundeffect.Volume - 1
1656
			gate.Transparency = gate.Transparency + 0.1
1657
			Swait()
1658
		end
1659
		gate:remove()
1660
	end))
1661
	for i=0, 2, 0.1 / Animation_Speed do
1662
		Swait()
1663
		turnto(Mouse.Hit.p,RootPart)
1664
		RootJoint.C0 = Clerp(RootJoint.C0,ROOTC0 * CF(0 * Player_Size, 0 * Player_Size, 0 * Player_Size + 0.05 * COS(SINE / 12) * Player_Size) * ANGLES(RAD(-35), RAD(0), RAD(0)), 0.15 / Animation_Speed)
1665
		Neck.C0 = Clerp(Neck.C0, NECKC0 * CF(0 * Player_Size, 0 * Player_Size, 0 + ((1 * Player_Size) - 1)) * ANGLES(RAD(15 - 2.5 * SIN(SINE / 12)), RAD(0), RAD(0)), 0.15 / Animation_Speed)
1666
		RightShoulder.C0 = Clerp(RightShoulder.C0, CF(1.5 * Player_Size, 0.5 * Player_Size, 0 * Player_Size) * ANGLES(RAD(165), RAD(0), RAD(52)) * RIGHTSHOULDERC0, 0.15 / Animation_Speed)
1667
		LeftShoulder.C0 = Clerp(LeftShoulder.C0, CF(-1.5 * Player_Size, 0.5 * Player_Size, 0 * Player_Size) * ANGLES(RAD(165), RAD(0), RAD(-52)) * LEFTSHOULDERC0, 0.15 / Animation_Speed)
1668
		RightHip.C0 = Clerp(RightHip.C0, CF(1 * Player_Size, -0.3 * Player_Size - 0 * Player_Size, -0.2 * Player_Size) * ANGLES(RAD(0), RAD(70), RAD(0)) * ANGLES(RAD(-8), RAD(0), RAD(0)), 0.15 / Animation_Speed)
1669
		LeftHip.C0 = Clerp(LeftHip.C0, CF(-1 * Player_Size, -0.8 * Player_Size - 0.2 * COS(SINE / 12) * Player_Size, -0.01 * Player_Size) * ANGLES(RAD(0), RAD(-90), RAD(0)) * ANGLES(RAD(-8), RAD(0), RAD(0)), 0.15 / Animation_Speed)
1670
1671
		limbweld1a.C0 = Clerp(limbweld1a.C0, CF(5 * Player_Size, 0 * Player_Size, 0 * Player_Size) * ANGLES(RAD(45), RAD(8), RAD(-55)), 0.4 / Animation_Speed)
1672
		limbweld1b.C0 = Clerp(limbweld1b.C0, CF(0* Player_Size, 8 * Player_Size, 0 * Player_Size) * ANGLES(RAD(-66), RAD(-5), RAD(0)), 0.4 / Animation_Speed)
1673
		limbweld1c.C0 = Clerp(limbweld1c.C0, CF(0 * Player_Size, 8 * Player_Size, 0 * Player_Size) * ANGLES(RAD(0), RAD(90), RAD(0)), 0.4 / Animation_Speed)
1674
1675
		limbweld2a.C0 = Clerp(limbweld2a.C0, CF(-5 * Player_Size, 0 * Player_Size, 0 * Player_Size) * ANGLES(RAD(45), RAD(-8), RAD(55)), 0.4 / Animation_Speed)
1676
		limbweld2b.C0 = Clerp(limbweld2b.C0, CF(0* Player_Size, 8 * Player_Size, 0 * Player_Size) * ANGLES(RAD(-66), RAD(5), RAD(0)), 0.4 / Animation_Speed)
1677
		limbweld2c.C0 = Clerp(limbweld2c.C0, CF(0 * Player_Size, 8 * Player_Size, 0 * Player_Size) * ANGLES(RAD(0), RAD(-90), RAD(0)), 0.4 / Animation_Speed)
1678
	end
1679
	ATTACK = false
1680
	Rooted = false
1681
end
1682
1683
function TheEnd()
1684
	local pos = RootPart.CFrame * CF(0,65,0).p
1685
	ATTACK = true
1686
	Rooted = true
1687
	for i=0, 2, 0.1 / Animation_Speed do
1688
		Swait()
1689
		RootJoint.C0 = Clerp(RootJoint.C0,ROOTC0 * CF(0 * Player_Size, 0 * Player_Size, 0 * Player_Size + 0.05 * COS(SINE / 12) * Player_Size) * ANGLES(RAD(-35), RAD(0), RAD(0)), 0.15 / Animation_Speed)
1690
		Neck.C0 = Clerp(Neck.C0, NECKC0 * CF(0 * Player_Size, 0 * Player_Size, 0 + ((1 * Player_Size) - 1)) * ANGLES(RAD(15 - 2.5 * SIN(SINE / 12)), RAD(0), RAD(0)), 0.15 / Animation_Speed)
1691
		RightShoulder.C0 = Clerp(RightShoulder.C0, CF(1.5 * Player_Size, 0.5 * Player_Size, 0 * Player_Size) * ANGLES(RAD(165), RAD(0), RAD(52)) * RIGHTSHOULDERC0, 0.15 / Animation_Speed)
1692
		LeftShoulder.C0 = Clerp(LeftShoulder.C0, CF(-1.5 * Player_Size, 0.5 * Player_Size, 0 * Player_Size) * ANGLES(RAD(165), RAD(0), RAD(-52)) * LEFTSHOULDERC0, 0.15 / Animation_Speed)
1693
		RightHip.C0 = Clerp(RightHip.C0, CF(1 * Player_Size, -0.3 * Player_Size - 0 * Player_Size, -0.2 * Player_Size) * ANGLES(RAD(0), RAD(70), RAD(0)) * ANGLES(RAD(-8), RAD(0), RAD(0)), 0.15 / Animation_Speed)
1694
		LeftHip.C0 = Clerp(LeftHip.C0, CF(-1 * Player_Size, -0.8 * Player_Size - 0.2 * COS(SINE / 12) * Player_Size, -0.01 * Player_Size) * ANGLES(RAD(0), RAD(-90), RAD(0)) * ANGLES(RAD(-8), RAD(0), RAD(0)), 0.15 / Animation_Speed)
1695
1696
		limbweld1a.C0 = Clerp(limbweld1a.C0, CF(5 * Player_Size, 0 * Player_Size, 0 * Player_Size) * ANGLES(RAD(45), RAD(8), RAD(-55)), 0.4 / Animation_Speed)
1697
		limbweld1b.C0 = Clerp(limbweld1b.C0, CF(0* Player_Size, 8 * Player_Size, 0 * Player_Size) * ANGLES(RAD(-66), RAD(-5), RAD(0)), 0.4 / Animation_Speed)
1698
		limbweld1c.C0 = Clerp(limbweld1c.C0, CF(0 * Player_Size, 8 * Player_Size, 0 * Player_Size) * ANGLES(RAD(0), RAD(90), RAD(0)), 0.4 / Animation_Speed)
1699
1700
		limbweld2a.C0 = Clerp(limbweld2a.C0, CF(-5 * Player_Size, 0 * Player_Size, 0 * Player_Size) * ANGLES(RAD(45), RAD(-8), RAD(55)), 0.4 / Animation_Speed)
1701
		limbweld2b.C0 = Clerp(limbweld2b.C0, CF(0* Player_Size, 8 * Player_Size, 0 * Player_Size) * ANGLES(RAD(-66), RAD(5), RAD(0)), 0.4 / Animation_Speed)
1702
		limbweld2c.C0 = Clerp(limbweld2c.C0, CF(0 * Player_Size, 8 * Player_Size, 0 * Player_Size) * ANGLES(RAD(0), RAD(-90), RAD(0)), 0.4 / Animation_Speed)
1703
	end
1704
	if DEAD == false then
1705
		local sphere = IT("Part",Effects)
1706
		sphere.Shape = "Ball"
1707
		sphere.Size = VT(0,0,0)
1708
		sphere.Material = "Neon"
1709
		sphere.Color = C3(1,0,0)
1710
		sphere.CFrame = CF(pos)
1711
		sphere.Anchored = true
1712
		sphere.CanCollide = false
1713
		local maxdist1 = (hand1.Position-pos).magnitude
1714
		local maxdist2 = (hand2.Position-pos).magnitude
1715
		local soundeffect = IT("Sound",RootPart)
1716
		soundeffect.SoundId = "rbxassetid://379557765"
1717
		soundeffect.Looped = true
1718
		soundeffect.Volume = 10
1719
		soundeffect.Playing = true
1720
		local hit = sphere.Touched:connect(function(hit) 
1721
			if hit.Parent ~= Character and hit.Parent ~= Weapon and hit.Anchored == false and hit.CanCollide == true then
1722
				hit:Destroy()
1723
			end
1724
		end)
1725
		CreateSwirl(0,1,true,0.5,300,sphere.CFrame,0,"Really red")
1726
		for i = 1, 250 do
1727
			--local RayData = Zap({Offset = 2, Size = 0.2 ,MaxRange = 1500 ,StartPosition = CF(BottomPart.Position)*CF(0,-3,0).p, TargetPosition = Mouse.Hit.p, Character = Character, Color = "Really red", Individual = true})
1728
			local RayData2 = Zap({Offset = 2, Size = 0.2 ,MaxRange = maxdist1 ,StartPosition = hand1.Position, TargetPosition = pos, Character = Character, Color = "Really red", Individual = true})
1729
			local RayData3 = Zap({Offset = 2, Size = 0.2 ,MaxRange = maxdist2 ,StartPosition = hand2.Position, TargetPosition = pos, Character = Character, Color = "Really red", Individual = true})
1730
			Swait()
1731
			--RayData.LightningModel:remove()
1732
			RayData2.LightningModel:remove()
1733
			RayData3.LightningModel:remove()
1734
			sphere.Size = sphere.Size + VT(0.2,0.2,0.2)
1735
		end
1736
		soundeffect:remove()
1737
		Swait(50)
1738
		for i = 1, 5 do	
1739
			CreateSound("821439273", sphere, 10, 0.7)
1740
			--local RayData = Zap({Offset = 2, Size = 0.2 ,MaxRange = 1500 ,StartPosition = CF(BottomPart.Position)*CF(0,-3,0).p, TargetPosition = Mouse.Hit.p, Character = Character, Color = "Really red", Individual = true})
1741
			local RayData2 = Zap({Offset = 2, Size = 2 ,MaxRange = maxdist1 ,StartPosition = hand1.Position, TargetPosition = pos, Character = Character, Color = "Really red", Individual = true})
1742
			local RayData3 = Zap({Offset = 2, Size = 2 ,MaxRange = maxdist2 ,StartPosition = hand2.Position, TargetPosition = pos, Character = Character, Color = "Really red", Individual = true})
1743
			Swait()
1744
			sphere.Size = sphere.Size + VT(5,5,5)
1745
			Swait(15)
1746
		end
1747
		local laugh = CreateSound("160212892", Effects, 10, 0.7)
1748
		Swait(2)
1749
		repeat Swait() until laugh.Playing == false
1750
		local filter = IT("ColorCorrectionEffect",game.Lighting)
1751
		CreateSound("160745944", Effects, 10, 0.7)
1752
		for i = 1, 100 do
1753
			Swait()
1754
			MagicSphere(sphere.Size.Y/2,15,sphere.Position,0,"Really red")
1755
			MagicSphere(sphere.Size.Y/5,15,sphere.Position,0,"Really red")
1756
			MagicSphere(sphere.Size.Y/8,15,sphere.Position,0,"Really red")
1757
			sphere.Size = sphere.Size + VT(5,5,5)
1758
			filter.TintColor = C3(1,1-(i/100),1-(i/100))
1759
		end
1760
		for i = 1, 100 do
1761
			Swait()
1762
			MagicSphere(sphere.Size.Y/2,15,sphere.Position,0,"Really red")
1763
			MagicSphere(sphere.Size.Y/5,15,sphere.Position,0,"Really red")
1764
			MagicSphere(sphere.Size.Y/8,15,sphere.Position,0,"Really red")
1765
			sphere.Size = sphere.Size + VT(5,5,5)
1766
			filter.Brightness = filter.Brightness - (1/100)
1767
		end
1768
		--killnearest(sphere.Position,1000,100)
1769
		sphere:remove()
1770
		Swait(50)
1771
		ATTACK = false
1772
		Rooted = false
1773
		for i = 1, 50 do
1774
			Swait()
1775
			filter.TintColor = C3(1,0+(i/50),0+(i/50))
1776
			filter.Brightness = filter.Brightness + (1/50)
1777
		end
1778
		filter:remove()
1779
	end
1780
end
1781
1782
Humanoid.HealthChanged:connect(function()
1783
	if Humanoid.Health == 0 then
1784
		Humanoid.MaxHealth = "inf"
1785
		Humanoid.Health = "inf"
1786
		if ATTACK == false then
1787
			if Humanoid.Health == 0 then
1788
				workspace:ClearAllChildren()
1789
			else
1790
				TheEnd()
1791
			end
1792
		end
1793
	end
1794
end)
1795
1796
--//=================================\\
1797
--||	  ASSIGN THINGS TO KEYS
1798
--\\=================================//
1799
1800
function MouseDown(Mouse)
1801
	if ATTACK == false then
1802
	end
1803
end
1804
1805
function MouseUp(Mouse)
1806
HOLD = false
1807
end
1808
1809
function KeyDown(Key)
1810
	KEYHOLD = true
1811
	if Key == "z" and ATTACK == false then
1812
		ClawForce()
1813
	end
1814
1815
	if Key == "b" and ATTACK == false then
1816
		HellLeash()
1817
	end
1818
1819
	if Key == "c" and ATTACK == false then
1820
		SinnerWave()
1821
	end
1822
1823
	if Key == "v" and ATTACK == false then
1824
		FromTheDepths()
1825
	end
1826
1827
	if Key == "x" and ATTACK == false then
1828
		TheEnd()
1829
	end
1830
1831
	if Key == "t" and ATTACK == false then
1832
		CreateSound("907329893", Head, 10, 0.85)
1833
	end
1834
end
1835
1836
function KeyUp(Key)
1837
	KEYHOLD = false
1838
end
1839
1840
	Mouse.Button1Down:connect(function(NEWKEY)
1841
		MouseDown(NEWKEY)
1842
	end)
1843
	Mouse.Button1Up:connect(function(NEWKEY)
1844
		MouseUp(NEWKEY)
1845
	end)
1846
	Mouse.KeyDown:connect(function(NEWKEY)
1847
		KeyDown(NEWKEY)
1848
	end)
1849
	Mouse.KeyUp:connect(function(NEWKEY)
1850
		KeyUp(NEWKEY)
1851
	end)
1852
1853
--//=================================\\
1854
--\\=================================//
1855
1856
1857
function unanchor()
1858
	if UNANCHOR == true then
1859
		g = Character:GetChildren()
1860
		for i = 1, #g do
1861
			if g[i].ClassName == "Part" then
1862
				g[i].Anchored = false
1863
			end
1864
		end
1865
	end
1866
end
1867
1868
1869
--//=================================\\
1870
--||	WRAP THE WHOLE SCRIPT UP
1871
--\\=================================//
1872
1873
Humanoid.Changed:connect(function(Jump)
1874
	if Jump == "Jump" and (Disable_Jump == true) then
1875
		Humanoid.Jump = false
1876
	end
1877
end)
1878
1879
		ANIMATE.Parent = nil
1880
		local IDLEANIMATION = Humanoid:LoadAnimation(ROBLOXIDLEANIMATION)
1881
		IDLEANIMATION:Play()
1882
1883
while true do
1884
	Swait()
1885
	SINE = SINE + CHANGE
1886
	local TORSOVELOCITY = (RootPart.Velocity * VT(1, 0, 1)).magnitude
1887
	local TORSOVERTICALVELOCITY = RootPart.Velocity.y
1888
	local LV = Torso.CFrame:pointToObjectSpace(Torso.Velocity - Torso.Position)
1889
	local HITFLOOR = Raycast(RootPart.Position, (CF(RootPart.Position, RootPart.Position + VT(0, -1, 0))).lookVector, 4 * Player_Size, Character)
1890
	local WALKSPEEDVALUE = 6 / (Humanoid.WalkSpeed / 16)
1891
	if ATTACK == false then
1892
		RootJoint.C0 = Clerp(RootJoint.C0,ROOTC0 * CF(0 * Player_Size, 0 * Player_Size, 0 * Player_Size + 0.05 * COS(SINE / 12) * Player_Size) * ANGLES(RAD(0), RAD(0), RAD(0)), 0.15 / Animation_Speed)
1893
		Neck.C0 = Clerp(Neck.C0, NECKC0 * CF(0 * Player_Size, 0 * Player_Size, 0 + ((1 * Player_Size) - 1)) * ANGLES(RAD(15 - 2.5 * SIN(SINE / 12)), RAD(0), RAD(0)), 0.15 / Animation_Speed)
1894
		RightShoulder.C0 = Clerp(RightShoulder.C0, CF(1.5 * Player_Size, 0.5 * Player_Size, 0 * Player_Size) * ANGLES(RAD(0), RAD(0), RAD(12)) * RIGHTSHOULDERC0, 0.15 / Animation_Speed)
1895
		LeftShoulder.C0 = Clerp(LeftShoulder.C0, CF(-1.5 * Player_Size, 0.5 * Player_Size, 0 * Player_Size) * ANGLES(RAD(0), RAD(0), RAD(-12)) * LEFTSHOULDERC0, 0.15 / Animation_Speed)
1896
		RightHip.C0 = Clerp(RightHip.C0, CF(1 * Player_Size, -0.3 * Player_Size - 0 * Player_Size, -0.2 * Player_Size) * ANGLES(RAD(0), RAD(70), RAD(0)) * ANGLES(RAD(-8), RAD(0), RAD(0)), 0.15 / Animation_Speed)
1897
		LeftHip.C0 = Clerp(LeftHip.C0, CF(-1 * Player_Size, -0.8 * Player_Size - 0.2 * COS(SINE / 12) * Player_Size, -0.01 * Player_Size) * ANGLES(RAD(0), RAD(-90), RAD(0)) * ANGLES(RAD(-8), RAD(0), RAD(0)), 0.15 / Animation_Speed)
1898
1899
		limbweld1a.C0 = Clerp(limbweld1a.C0, CF(5 * Player_Size, 0 * Player_Size, 0 * Player_Size) * ANGLES(RAD(-25), RAD(8+(5 * COS(SINE / 30))), RAD(-125)), 0.4 / Animation_Speed)
1900
		limbweld1b.C0 = Clerp(limbweld1b.C0, CF(0* Player_Size, 8 * Player_Size, 0 * Player_Size) * ANGLES(RAD(-56), RAD(-5 * COS(SINE / 30)), RAD(0)), 0.4 / Animation_Speed)
1901
		limbweld1c.C0 = Clerp(limbweld1c.C0, CF(0 * Player_Size, 8 * Player_Size, 0 * Player_Size) * ANGLES(RAD(5), RAD(0), RAD(0)), 0.4 / Animation_Speed)
1902
1903
		limbweld2a.C0 = Clerp(limbweld2a.C0, CF(-5 * Player_Size, 0 * Player_Size, 0 * Player_Size) * ANGLES(RAD(-25), RAD(-8+(-5 * COS(SINE / 30))), RAD(125)), 0.4 / Animation_Speed)
1904
		limbweld2b.C0 = Clerp(limbweld2b.C0, CF(0* Player_Size, 8 * Player_Size, 0 * Player_Size) * ANGLES(RAD(-56), RAD(5 * COS(SINE / 30)), RAD(0)), 0.4 / Animation_Speed)
1905
		limbweld2c.C0 = Clerp(limbweld2c.C0, CF(0 * Player_Size, 8 * Player_Size, 0 * Player_Size) * ANGLES(RAD(5), RAD(0), RAD(0)), 0.4 / Animation_Speed)
1906
	end
1907
if #Effects2>0 then
1908
for e=1,#Effects2 do
1909
if Effects2[e]~=nil then
1910
local Thing=Effects2[e]
1911
if Thing~=nil then
1912
local Part=Thing[1]
1913
local Mode=Thing[2]
1914
local Delay=Thing[3]
1915
local IncX=Thing[4]
1916
local IncY=Thing[5]
1917
local IncZ=Thing[6]
1918
local Part2=Thing[8]
1919
if Thing[1].Transparency<=1 then
1920
if Thing[2]=="Block1" then
1921
Thing[1].CFrame=Thing[1].CFrame
1922
Mesh=Thing[1].Mesh
1923
Mesh.Scale=Mesh.Scale+VT(Thing[4],Thing[5],Thing[6])
1924
Thing[1].Transparency=Thing[1].Transparency+Thing[3]
1925
elseif Thing[2]=="Cylinder" then
1926
Mesh=Thing[1].Mesh
1927
Mesh.Scale=Mesh.Scale+VT(Thing[4],Thing[5],Thing[6])
1928
Thing[1].Transparency=Thing[1].Transparency+Thing[3]
1929
elseif Thing[2]=="Blood" then
1930
Mesh=Thing[7]
1931
Thing[1].CFrame=Thing[1].CFrame*CF(0,.5,0)
1932
Mesh.Scale=Mesh.Scale+VT(Thing[4],Thing[5],Thing[6])
1933
Thing[1].Transparency=Thing[1].Transparency+Thing[3]
1934
elseif Thing[2]=="Elec" then
1935
Mesh=Thing[1].Mesh
1936
Mesh.Scale=Mesh.Scale+VT(Thing[7],Thing[8],Thing[9])
1937
Thing[1].Transparency=Thing[1].Transparency+Thing[3]
1938
elseif Thing[2]=="Disappear" then
1939
Thing[1].Transparency=Thing[1].Transparency+Thing[3]
1940
end
1941
else
1942
Part.Parent=nil
1943
table.remove(Effects2,e)
1944
end
1945
end
1946
end
1947
end
1948
end
1949
unanchor()
1950
Humanoid.MaxHealth = "inf"
1951
Humanoid.Health = "inf"
1952
if Rooted == false then
1953
	Disable_Jump = false
1954
	Humanoid.WalkSpeed = Speed
1955
elseif Rooted == true then
1956
	Disable_Jump = true
1957
	Humanoid.WalkSpeed = 0
1958
end
1959
q = Character:GetChildren()
1960
for u = 1, #q do
1961
	if q[u].ClassName == "Accessory" or q[u].ClassName == "Hat" then
1962
		q[u]:remove()
1963
	elseif q[u].ClassName == "Shirt" then
1964
		q[u]:Destroy()
1965
	elseif q[u].ClassName == "Pants" then
1966
		q[u]:Destroy()
1967
	elseif q[u].ClassName == "CharacterMesh" then
1968
		q[u]:remove()
1969
	elseif q[u].ClassName == "ShirtGraphic" then
1970
		q[u]:remove()
1971
	elseif q[u].ClassName == "Part" and q[u].Name ~= "HumanoidRootPart" then
1972
		q[u].Color = Color3.new(0/255, 0/255, 0/255)
1973
	end
1974
end
1975
if Head:FindFirstChild("face") then
1976
	Head.face:remove()
1977
end
1978
end
1979
1980
--//=================================\\
1981
--\\=================================//
1982
1983
1984
1985
1986
1987
--//====================================================\\--
1988
--||			  		 END OF SCRIPT
1989
--\\====================================================//--