View difference between Paste ID: PLs5A5bU and L4tPaZ3n
SHOW: | | - or go back to the newest paste.
1
	-- Created by Nebula_Zorua --
2
	-- Two invisible eyes..
3
	-- Two, invisible, monsterous eyes..
4
	-- Discord: Nebula the Zorua#6969
5
	-- Youtube: https://www.youtube.com/channel/UCo9oU9dCw8jnuVLuy4_SATA
6
	-- Credit to makhail07 for the idea (lub u bby)
7
wait(1)
8
9
local S = setmetatable({},{__index = function(s,i) return game:service(i) end})
10
11
local plr = S.Players.LocalPlayer
12
local char = plr.Character
13
local hum = char:FindFirstChildOfClass'Humanoid'
14
local rarm = char["Right Arm"]
15
local larm= char["Left Arm"]
16
local rleg= char["Right Leg"]
17
local lleg = char["Left Leg"]	
18
local root = char:FindFirstChild'HumanoidRootPart'
19
local torso = char.Torso
20
local head = char.Head
21
local sine = 0;
22
local combo = 1;
23
local lastClick = time()
24
local change = 1;
25
local runService = S.RunService
26
local mouse = plr:GetMouse()
27
local Attack = false
28
local neutralAnims = true
29
local GlitchTime = 0;
30
local PaintBody = 'Black'
31
local DeleteClothing = true
32
local PlayerSize = 1
33
local Debounces = {Debounces={}}
34
local Hit = {}
35
local BloodPuddles = {}
36
local Teamed = {}
37
hum.DisplayDistanceType = Enum.HumanoidDisplayDistanceType.None
38
hum.MaxHealth = 1e4
39
hum.Health = 1e4
40
hum.Name = '13'
41
Instance.new("ForceField",char).Visible = false
42
function Debounces:New(name,cooldown)
43
	local aaaaa = {Usable=true,Cooldown=cooldown or 2,CoolingDown=false,LastUse=0}
44
	setmetatable(aaaaa,{__index = Debounces})
45
	Debounces.Debounces[name] = aaaaa
46
	return aaaaa
47
end
48
49
function Debounces:Use(overrideUsable)
50
	assert(self.Usable ~= nil and self.LastUse ~= nil and self.CoolingDown ~= nil,"Expected ':' not '.' calling member function Use")
51
	if(self.Usable or overrideUsable)then
52
		self.Usable = false
53
		self.CoolingDown = true
54
		local LastUse = time()
55
		self.LastUse = LastUse
56
		delay(self.Cooldown or 2,function()
57
			if(self.LastUse == LastUse)then
58
				self.CoolingDown = false
59
				self.Usable = true
60
			end
61
		end)
62
	end
63
end
64
65
function Debounces:Get(name)
66
	assert(typeof(name) == 'string',("bad argument #1 to 'get' (string expected, got %s)"):format(typeof(name) == nil and "no value" or typeof(name)))
67
	for i,v in next, Debounces.Debounces do
68
		if(i == name)then
69
			return v;
70
		end
71
	end
72
end
73
74
function Debounces:GetProgressPercentage()
75
	assert(self.Usable ~= nil and self.LastUse ~= nil and self.CoolingDown ~= nil,"Expected ':' not '.' calling member function Use")
76
	if(self.CoolingDown and not self.Usable)then
77
		return math.max(
78
			math.floor(
79
				(
80
					(time()-self.LastUse)/self.Cooldown or 2
81
				)*100
82
			)
83
		)
84
	else
85
		return 100
86
	end
87
end
88
89
local CF = {N=CFrame.new,A=CFrame.Angles,fEA=CFrame.fromEulerAnglesXYZ}
90
local V3 = {N=Vector3.new}
91
local M = {C=math.cos,R=math.rad,S=math.sin,P=math.pi,RNG=math.random,MRS=math.randomseed,H=math.huge}
92
93
local Effects,Sounds = {},{};
94
--Stop animations
95
for _,v in next, hum:GetPlayingAnimationTracks() do
96
	v:Stop();
97
end
98
99
pcall(game.Destroy,char:FindFirstChild'Animate')
100
pcall(game.Destroy,hum:FindFirstChild'Animator')
101
102
-- Sounds
103
Sounds['Wet'] = {Id=256738023,Loop=false,Pitch=1}
104
Sounds['Swoosh1'] = {Id=320557353,Loop=false,Pitch=1,Volume=6}
105
Sounds['Swoosh2'] = {Id=320557382,Loop=false,Pitch=1,Volume=6}
106
Sounds['Swoosh3'] = {Id=320557413,Loop=false,Pitch=1,Volume=6}
107
Sounds['Swoosh4'] = {Id=320557453,Loop=false,Pitch=1,Volume=6}
108
Sounds['Swoosh5'] = {Id=320557487,Loop=false,Pitch=1,Volume=6}
109
Sounds['Swoosh6'] = {Id=320557537,Loop=false,Pitch=1,Volume=6}
110
Sounds['Swoosh7'] = {Id=320557563,Loop=false,Pitch=1,Volume=6}
111
Sounds['Swoosh8'] = {Id=320557518,Loop=false,Pitch=1,Volume=6}
112
Sounds['SmallBoom'] = {Id=341336485,Loop=false,Volume=5,Pitch=1}
113
Sounds['ChaosBuster'] = {Id=333534812,Loop=false,Volume=5,Pitch=0.75}
114
Sounds['Magic'] = {Id=315743350,Loop=false,Volume=5,Pitch=1}
115
Sounds['ShrekRemix'] = {Id=163306929,Loop=true,Pitch=1,Volume = 4}
116
Sounds['CreoDimension'] = {Id=927529620,Loop=true,Pitch=1,Volume=4}
117
Sounds['BlackBlizzard'] = {Id=657626121,Loop=true,Pitch=1,Volume=4}
118
Sounds['ColbreakzFantasy'] = {Id=876981900,Loop=true,Pitch=1,Volume=4}
119
Sounds['NeflCrystals'] = {Id=340106355,Loop=true,Pitch=1,Volume=4}
120
Sounds['EvilMortyRemix'] = {Id=1057401232,Loop=true,Pitch=1,Volume=10}
121
Sounds['Astronaut13'] = {Id=723652641,Loop=true,Pitch=0.9,Volume=10}
122
-- Functions
123
local NewInstance = function(instance,parent,properties)
124
	local inst = Instance.new(instance,parent)
125
	if(properties)then
126
		for i,v in next, properties do
127-
bbgTl.TextSize = 25
127+
			pcall(function() inst[i] = v end)
128
		end
129
	end
130
	return inst;
131
end
132
133
134
ArtificialHB = NewInstance("BindableEvent", script,{
135
	Parent = script,
136
	Name = "Heartbeat",
137
})
138
139
script:WaitForChild("Heartbeat")
140
141
frame = 1 / 60
142
tf = 0
143
allowframeloss = false
144
tossremainder = false
145
lastframe = tick()
146
script.Heartbeat:Fire()
147
148
game:GetService("RunService").Heartbeat:connect(function(s, p)
149
	tf = tf + s
150
	if tf >= frame then
151
		if allowframeloss then
152
			script.Heartbeat:Fire()
153
			lastframe = tick()
154
		else
155
			for i = 1, math.floor(tf / frame) do
156
				script.Heartbeat:Fire()
157
			end
158
			lastframe = tick()
159
		end
160
		if tossremainder then
161
			tf = 0
162
		else
163
			tf = tf - frame * math.floor(tf / frame)
164
		end
165
	end
166
end)
167
168
function swait(num)
169
	if num == 0 or num == nil then
170
		ArtificialHB.Event:wait()
171
	else
172
		for i = 0, num do
173
			ArtificialHB.Event:wait()
174
		end
175
	end
176
end
177
178
function ClearChildrenWithClass(where,class,recursive)
179
	local children = (recursive and where:GetDescendants() or where:GetChildren())
180
	for _,v in next, children do
181
		if(v:IsA(class))then
182
			v:destroy()
183
		end
184
	end
185
end
186
function clerp(startCF,endCF,alpha)
187
	return startCF:lerp(endCF, alpha)
188
end
189
local sndFromData = function(data,parent)
190
	assert(typeof(data) == 'table',"sndFromData's first argument must be a table!")
191
	local snd = NewInstance("Sound",parent or char,{SoundId = "rbxassetid://"..data.Id,Looped=data.Loop or false,Pitch = data.Pitch or 1,Volume = data.Volume or 1})
192
	if(not snd.Looped)then
193
		snd.Ended:connect(function()
194
			snd:Stop()
195
			snd:destroy()
196
		end)
197
	end
198
	return snd;
199
end
200
201
local FX = function(ID,vol,pitch,parent)
202
	local snd = NewInstance("Sound",parent or torso, {Pitch=pitch or 1, Volume = vol or 1,SoundId = "rbxassetid://"..ID})
203
	snd:Play()
204
	repeat wait() until snd.IsLoaded and snd.IsPlaying
205
	delay(snd.TimePosition+.5,function()
206
		snd:Stop()
207
		snd:Destroy()
208
	end)
209
end
210
211
function Fragment(part,number,delayE)
212
	part.Anchored = true
213
	local Fragments = NewInstance("Folder",part.Parent,{Name='Fragmentation'})
214
	local Size = V3.N(part.Size.X/number,part.Size.Y/number,part.Size.Z/number)
215
	local Start = CF.N((part.CFrame.X-part.Size.X/2) + Size.X/2,(part.CFrame.Y-part.Size.Y/2) + Size.Y/2,(part.CFrame.Z-part.Size.Z/2) + Size.Z/2)
216
	for x = 0, number-1 do
217
		for y = 0, number-1 do
218
			for z = 0, number-1 do
219
				local frag = NewInstance('Part',Fragments,{Anchored=true,Size=Size,BrickColor=part.BrickColor,Material=part.Material,Transparency=part.Transparency,Reflectance=part.Reflectance,CanCollide=true,CFrame=CF.N(Start.X+x*Size.X,Start.Y+y*Size.Y,Start.Z+z*Size.Z)})
220
				if(delayE ~= false)then swait(delayE or nil) end
221
			end
222
		end
223
	end
224
	part:destroy()
225
	return Fragments
226
end
227
function halfit(v)         
228
	v:ClearAllChildren()
229
	v.Size = Vector3.new(v.Size.x,v.Size.y,v.Size.z/2)
230
	v.Name = v.Name.."Half"
231
	
232
	local a = v:Clone()
233
	a.Parent = v.Parent
234
	a.CFrame = CF.N(1,1,-.5) * v.CFrame
235
	v.CFrame = CF.N(1,1,.5) * v.CFrame
236
	return a,v
237
end
238
239
function Fragment2(v)
240
	v:ClearAllChildren()
241
	local Fragments = NewInstance("Folder",v.Parent,{Name='Fragmentation'})
242
	v.Archivable = true
243
	-- X
244
	v.Size = Vector3.new(v.Size.x/2,v.Size.y,v.Size.z)
245
	v.Name = v.Name.."Fragment"
246
	
247
	local a = v:Clone()
248
	a.Parent = Fragments
249
	a.CFrame = CF.N(-.5,1,1) * a.CFrame
250
	v.CFrame = CF.N(.5,1,1) * v.CFrame
251
	-- Y
252
	v.Size = Vector3.new(v.Size.x,v.Size.y/2,v.Size.z)
253
	
254
	local a = v:Clone()
255
	a.Parent = Fragments
256
	a.CFrame = CF.N(1,-.5,1) * a.CFrame
257
	v.CFrame = CF.N(1,.5,1) * v.CFrame
258
	-- Z
259
	v.Size = Vector3.new(v.Size.x,v.Size.y,v.Size.z/2)
260
	
261
	local a = v:Clone()
262
	a.Parent = Fragments
263
	a.CFrame = CF.N(1,1,-.5) * a.CFrame
264
	v.CFrame = CF.N(1,1,.5) * v.CFrame
265
	
266
	v.Parent = Fragments
267
	return Fragments
268
end
269
function UnbindLoops()
270
	pcall(runService.UnbindFromRenderStep,runService,"N_Effects")
271
	pcall(runService.UnbindFromRenderStep,runService,"N_Animations")
272
end;
273
274
UnbindLoops() -- Just so if the loops already exist from previously running a script using this template, there's no errors
275
276
-- Model
277
278
game:service'Lighting'.FogEnd = 100
279
game:service'Lighting'.FogStart = 0
280
game:service'Lighting'.FogColor = BrickColor.new'Black'.Color
281
game:service'Lighting'.ClockTime = 22
282
283
local Sky = Instance.new("Sky",game:service'Lighting')
284
Sky.MoonAngularSize = 30
285
Sky.MoonTextureId = "http://www.roblox.com/asset/?id=156679858"
286
287
288
local Music = sndFromData(Sounds.Astronaut13,torso) -- incase u want music
289
Music.MaxDistance = 500
290
Music:Play()
291
local Distorted = NewInstance("EqualizerSoundEffect",Music,{MidGain=0,HighGain=0,LowGain=0})
292
ClearChildrenWithClass(char,"Decal",true)
293
ClearChildrenWithClass(char,"Clothing",true)
294
295
-- Joints, etc
296
if(PaintBody)then
297
	char['Body Colors'].LeftArmColor = BrickColor.new(PaintBody)
298
	char['Body Colors'].RightArmColor = BrickColor.new(PaintBody)
299
	char['Body Colors'].LeftLegColor = BrickColor.new(PaintBody)
300
	char['Body Colors'].RightLegColor = BrickColor.new(PaintBody)
301
	char['Body Colors'].TorsoColor = BrickColor.new(PaintBody)
302
	char['Body Colors'].HeadColor = BrickColor.new(PaintBody)
303
end
304
305
local FT,RA,LA,RL,LL = Instance.new("SpecialMesh"),Instance.new("SpecialMesh"),Instance.new("SpecialMesh"),Instance.new("SpecialMesh"),Instance.new("SpecialMesh")
306
FT.MeshId,FT.Scale = "rbxasset://fonts/torso.mesh",V3.N(PlayerSize,PlayerSize,PlayerSize)
307
RA.MeshId,RA.Scale = "rbxasset://fonts/rightarm.mesh",V3.N(PlayerSize,PlayerSize,PlayerSize)
308
LA.MeshId,LA.Scale = "rbxasset://fonts/leftarm.mesh",V3.N(PlayerSize,PlayerSize,PlayerSize)
309
RL.MeshId,RL.Scale = "rbxasset://fonts/rightleg.mesh",V3.N(PlayerSize,PlayerSize,PlayerSize)
310
LL.MeshId,LL.Scale = "rbxasset://fonts/leftleg.mesh",V3.N(PlayerSize,PlayerSize,PlayerSize)
311
312
if(PlayerSize ~= 1)then
313
	for _,v in next, char:GetDescendants() do
314
		if(v:IsA'BasePart')then
315
			v.Size = v.Size * PlayerSize
316
		end
317
	end
318
end
319
	
320
local LS = NewInstance('Motor',char,{Part0=torso,Part1=larm,C0 = CF.N(-1.5 * PlayerSize,0.5 * PlayerSize,0),C1 = CF.N(0,.5 * PlayerSize,0)})
321
local RS = NewInstance('Motor',char,{Part0=torso,Part1=rarm,C0 = CF.N(1.5 * PlayerSize,0.5 * PlayerSize,0),C1 = CF.N(0,.5 * PlayerSize,0)})
322
local NK = NewInstance('Motor',char,{Part0=torso,Part1=head,C0 = CF.N(0,1.5 * PlayerSize,0)})
323
local LH = NewInstance('Motor',char,{Part0=torso,Part1=lleg,C0 = CF.N(-.5 * PlayerSize,-1 * PlayerSize,0),C1 = CF.N(0,1 * PlayerSize,0)})
324
local RH = NewInstance('Motor',char,{Part0=torso,Part1=rleg,C0 = CF.N(.5 * PlayerSize,-1 * PlayerSize,0),C1 = CF.N(0,1 * PlayerSize,0)})
325
local RJ = NewInstance('Motor',char,{Part0=root,Part1=torso})
326
--local HW = NewInstance('Motor',char,{Part0=rarm,Part1=Handle,C0 = CF.N(0,.5,0)})
327
-- watevr
328
329
-- Default C0s
330
local LSD=LS.C0
331
local RSD=RS.C0	
332
local HD=NK.C0
333
local TD=RJ.C0
334
local LHD=LH.C0
335
local RHD=RH.C0
336
337
-- Check State
338
function CheckState(rPart)
339
	if(math.abs(rPart.Velocity.x) > 2 or math.abs(rPart.Velocity.z) > 2)then
340
		return 'Walk';
341
	end
342
	return 'Idle';
343
end
344
345
-- Effect Functions
346
function SphereFX(duration,color,scale,pos,endScale)
347
	local rng = Instance.new("Part", char)
348
	rng.Anchored = true
349
	rng.BrickColor = color
350
	rng.CanCollide = false
351
	rng.FormFactor = 3
352
	rng.Name = "Ring"
353
	rng.Size = Vector3.new(1,1,1)
354
	rng.Transparency = 0
355
	rng.TopSurface = 0
356
	rng.BottomSurface = 0
357
	rng.CFrame = pos
358
	local rngm = Instance.new("SpecialMesh", rng)
359
	rngm.MeshType = "Sphere"
360
	rngm.Scale = scale
361
	table.insert(Effects, {Frame = 0, Effect="Sphere", Duration = duration or 30, Part=rng, Mesh = rngm, Scale = scale, EndScale = endScale or scale*2, Position = pos})
362
	return rng
363
end
364
365
function BlastFX(duration,color,scale,pos,endScale)
366
	local rng = Instance.new("Part", char)
367
	rng.Anchored = true
368
	rng.BrickColor = color
369
	rng.CanCollide = false
370
	rng.FormFactor = 3
371
	rng.Name = "Ring"
372
	rng.Size = Vector3.new(1,1,1)
373
	rng.Transparency = 0
374
	rng.TopSurface = 0
375
	rng.BottomSurface = 0
376
	rng.CFrame = pos
377
	local rngm = Instance.new("SpecialMesh", rng)
378
	rngm.MeshType = "FileMesh"
379
	rngm.MeshId = 'rbxassetid://20329976'
380
	rngm.Scale = scale
381
	table.insert(Effects, {Frame = 0, Effect="Sphere", Duration = duration or 30, Part=rng, Mesh = rngm, Scale = scale, EndScale = endScale or scale*2, Position = pos})
382
	return rng
383
end
384
385
function BlockFX(duration,color,scale,pos,endScale)
386
	local rng = Instance.new("Part", char)
387
	rng.Anchored = true
388
	rng.BrickColor = color
389
	rng.CanCollide = false
390
	rng.FormFactor = 3
391
	rng.Name = "Ring"
392
	rng.Size = Vector3.new(1,1,1)
393
	rng.Transparency = 0
394
	rng.TopSurface = 0
395
	rng.BottomSurface = 0
396
	rng.CFrame = pos
397
	local rngm = Instance.new("BlockMesh", rng)
398
	rngm.Scale = scale
399
	table.insert(Effects, {Frame = 0, Effect="Block", Duration = duration or 30, Part=rng, Mesh = rngm, Scale = scale, EndScale = endScale or scale*2, Position = pos})
400
	return rng
401
end
402
403
function LaserFX(duration,color,cframe,scale,endScale)
404
	local rng = Instance.new("Part", char)
405
	rng.Anchored = true
406
	rng.BrickColor = color
407
	rng.CanCollide = false
408
	rng.FormFactor = 3
409
	rng.Material = Enum.Material.Neon
410
	rng.Name = "Laser"
411
	rng.Size = Vector3.new(.5,.5,.5)
412
	rng.Transparency = 0
413
	rng.TopSurface = 0
414
	rng.BottomSurface = 0
415
	rng.CFrame = cframe
416
	local rngm = Instance.new("CylinderMesh", rng)
417
	rngm.Scale = scale
418
	table.insert(Effects, {Frame = 0, Effect="Sphere", Duration = duration or 30, Part=rng, Mesh = rngm, Scale = scale, EndScale = endScale or scale*2, Position = cframe})
419
	return rng
420
end
421
422
423
function BloodDrop(pos,dir,maxsize)
424
	local owo = NewInstance("Part",char,{Material=BloodMaterial,BrickColor=BloodColor,Shape=Enum.PartType.Ball,Size=V3.N(.25,.25,.25), CanCollide = false})
425
	owo.CFrame=CF.N(pos,dir)
426
	local bv = Instance.new("BodyVelocity",owo) 
427
	bv.maxForce = Vector3.new(1e9, 1e9, 1e9)
428
	bv.velocity = CF.N(pos,dir+V3.N(M.RNG(-3,3)/30,M.RNG(-3,3)/30,M.RNG(-3,3)/30)).lookVector*15
429
	bv.Name = "MOVE"
430
	game:service'Debris':AddItem(bv,0.05)
431
	local touch 
432
	touch = owo.Touched:connect(function(hit)
433
		if(hit.Anchored==true)then
434
			touch:disconnect()
435
			BloodPuddle(owo.Position+V3.N(0,1,0),10,maxsize,owo)
436
			owo:destroy()
437
		end
438
	end)
439
end
440
function BloodPuddle(position,range,maxSize,where)
441
	local hit, pos, norm = workspace:FindPartOnRayWithIgnoreList(Ray.new(
442
		position,CF.N(position,position+V3.N(0,-1,0)).lookVector * range			
443
	),{where,char},false,true)
444
	if(hit)then
445
		if(BloodPuddles[hit])then
446
			BloodPuddles[hit].Frame = 0
447
			if(hit:FindFirstChild'CylinderMesh' and hit.CylinderMesh.Scale.Z < BloodPuddles[hit].MaxSize)then
448
				hit.CylinderMesh.Scale = hit.CylinderMesh.Scale + V3.N(.1,0,.1)
449
			end
450
		else
451
			local Puddle = NewInstance('Part',workspace,{Material=BloodMaterial,BrickColor=BloodColor,Size=V3.N(1,.1,1),CFrame=CF.N(pos,pos+norm)*CF.A(90*M.P/180,0,0),Anchored=true,CanCollide=false,Archivable=false,Locked=true,Name='BloodPuddle'})
452
			local Cyl = NewInstance('CylinderMesh',Puddle,{Name='CylinderMesh'})
453
			BloodPuddles[Puddle] = {MaxSize=maxSize or 7,Frame=0}
454
		end
455
	end
456
end
457
458
459
function ShatterFX(duration,color,scale,cframe)
460
	local rng = Instance.new("Part", char)
461
	rng.Anchored = true
462
	rng.BrickColor = color
463
	rng.CanCollide = false
464
	rng.FormFactor = 3
465
	rng.Name = "Ring"
466
	rng.Size = Vector3.new(1,1,1)
467
	rng.Transparency = 0
468
	rng.TopSurface = 0
469
	rng.BottomSurface = 0
470
	rng.CFrame = cframe * CF.fEA(M.RNG(-50, 50), M.RNG(-50, 50), M.RNG(-50, 50))
471
	local rngm = Instance.new("SpecialMesh", rng)
472
	rngm.Scale = scale
473
	rngm.MeshType = "Sphere"
474
	table.insert(Effects, {Frame = 0, Effect="Shatter", Duration = duration or 30, Part=rng, Mesh = rngm, Scale = scale,Position=rng.CFrame})
475
end
476
477
function RingFX(duration,color,scale,pos,endScale)
478
	local type = type
479
	local rng = Instance.new("Part", char)
480
	rng.Anchored = true
481
	rng.BrickColor = color
482
	rng.CanCollide = false
483
	rng.FormFactor = 3
484
	rng.Name = "Ring"
485
	rng.Size = Vector3.new(1,1,1)
486
	rng.Transparency = 0
487
	rng.TopSurface = 0
488
	rng.BottomSurface = 0
489
	rng.CFrame = pos
490
	local rngm = Instance.new("SpecialMesh", rng)
491
	rngm.MeshId = "rbxassetid://3270017"
492
	rngm.Scale = scale
493
	table.insert(Effects, {Frame = 0, Effect="Sphere", Duration = duration or 30, Part=rng, Mesh = rngm, Scale = scale, EndScale = endScale or scale*2, Position = pos})
494
	return rng
495
end
496
497
function Shoot(StartCF,EndCF,Spread,Speed,Num,Color,Drop,MinDamage,MaxDamage)
498
	local Spread = V3.N(M.RNG(-Spread,Spread),M.RNG(-Spread,Spread),M.RNG(-Spread,Spread))
499
	local Start = StartCF.p
500
	local End = EndCF.p
501
	local SpreadPos = End + Spread
502
	local Look = CF.N((Start + SpreadPos) / 2, SpreadPos)
503
	local Count = Num
504
	spawn(function()
505
		repeat
506
			wait()
507
			local hit, pos = workspace:findPartOnRay(Ray.new(
508
				Start,(Look.lookVector).unit * Speed		
509
			),char,false,true)
510
			local dist = (Start-pos).magnitude
511
			local yScale = dist * (Speed / (Speed/2))
512
			local aa = CF.N((Start + pos) / 2, pos) * CFrame.Angles(1.57, 0, 0)
513
			LaserFX(25,Color,aa,Vector3.new(1,yScale,1),Vector3.new(-1,yScale,-1))
514
			Start = Start + Look.lookVector	* Speed
515
			Look = Look * CF.A(M.R(Drop or -1),0,0)
516
			Count = Count - 1
517
			
518
			if(hit)then
519
				Count = 0
520
				MagniDamage(pos,10,MinDamage,MaxDamage,0,'Normal')
521
			end
522
			if(Count <= 0)then
523
				local sphere = SphereFX(25,Color,Vector3.new(5,5,5),CF.N(pos),Vector3.new(15,15,15))
524
				local ring = RingFX(25,Color,Vector3.new(6,6,6),CF.N(pos) * CF.A(0,M.R(90),0)  * CF.A(M.R(M.RNG(-360,360)),M.R(M.RNG(-360,360)),M.R(M.RNG(-360,360))),Vector3.new(16,16,16))
525
			end
526
		until Count <= 0
527
	end)
528
end
529
530
-- Effect Loop
531
532
runService:BindToRenderStep("N_Effects",Enum.RenderPriority.Character.Value + 2,function()
533
	for _,data in next, Effects do
534
		local frame,effect,duration = data.Frame,data.Effect,data.Duration
535
		local transparency = (frame / duration)
536
		local opacity = 1 - transparency
537
		if(frame > duration)then
538
			Effects[_] = nil
539
		end
540
		frame = frame + 1
541
		data.Frame = frame	
542
		if(effect == 'Sphere')then
543
			local Part,Mesh,Scale,CF,eScale = data.Part,data.Mesh,data.Scale,data.Position,data.EndScale 
544
			Mesh.Scale = Mesh.Scale:lerp(eScale, transparency/6)
545
			Part.Transparency = transparency
546
			if(frame > duration)then
547
				Part:destroy()
548
			end
549
		elseif(effect == 'Shatter')then	
550
			local Part,Mesh,Scale,Position,Thingie,Thingie2,Inc = data.Part,
551
																data.Mesh,
552
																data.Scale,
553
																data.Position,
554
																(data.Thingie or 0),
555
																(data.Thingie2 or M.RNG(50, 100) / 100),
556
																(data.Inc or M.RNG() - M.RNG())
557
			Part.Transparency = transparency
558
			Position = Position * CF.N(0,Thingie2,0)
559
			Part.CFrame = Position * CF.fEA(Thingie,0,0)
560
			Thingie = Thingie + Inc
561
			
562
			data.Position = Position
563
			data.Thingie = Thingie
564
			data.Thingie2 = Thingie2
565
			data.Inc = Inc
566
		elseif(effect == 'Block')then
567
			local Part,Mesh,Scale,CF,eScale = data.Part,data.Mesh,data.Scale,data.Position,data.EndScale 
568
			Mesh.Scale = Mesh.Scale:lerp(eScale, transparency/6)
569
			Part.Transparency = transparency
570
			Part.CFrame = CF * CFrame.Angles(M.R(M.RNG(-360,360)),M.R(M.RNG(-360,360)),M.R(M.RNG(-360,360)))
571
			if(frame > duration)then
572
				Part:destroy()
573
			end
574
		end
575
	end
576
	for puddle,data in next, BloodPuddles do
577
		if(puddle.Transparency > 0.9)then
578
			BloodPuddles[puddle] = nil
579
			puddle:destroy()
580
		end
581
		data.Frame = data.Frame + 1
582
		if(data.Frame > 105)then
583
			local trans = (data.Frame-105)/30
584
			puddle.Transparency = trans
585
			if(puddle:FindFirstChild'CylinderMesh' and puddle.CylinderMesh.Scale.Z > 0)then
586
				puddle.CylinderMesh.Scale = puddle.CylinderMesh.Scale-V3.N(.1,0,.1)
587
			end
588
		else
589
			puddle.Transparency = 0
590
		end
591
	end
592
end)
593
594
595
596
-- Nametag
597
local naeeym2 = Instance.new("BillboardGui",char)
598
naeeym2.AlwaysOnTop = true
599
naeeym2.Size = UDim2.new(5,35,2,35)
600
naeeym2.StudsOffset = Vector3.new(0,1,0)
601
naeeym2.Adornee = head
602
naeeym2.Name = "Name"
603
naeeym2.PlayerToHideFrom = plr
604
local tecks2 = Instance.new("TextLabel",naeeym2)
605
tecks2.BackgroundTransparency = 1
606
tecks2.TextScaled = true
607
tecks2.BorderSizePixel = 0
608
tecks2.Text = "13"
609
tecks2.Font = "Antique"
610
tecks2.TextSize = 30
611
tecks2.TextStrokeTransparency = 0
612
tecks2.TextColor3 = Color3.new(0,0,0)
613
tecks2.TextStrokeColor3 = Color3.new(0.4,0.4,0.4)
614
tecks2.Size = UDim2.new(1,0,0.5,0)
615
tecks2.Parent = naeeym2
616
617
coroutine.wrap(function()
618
	while true do
619
		swait(15)
620
		hum.Health = hum.Health + 15
621
		local name = M.RNG(1,40)
622
		if(name == 1)then
623
			tecks2.Text = "Th1rdt3EM"
624
		elseif(name == 2)then
625
			tecks2.Text = "Three"
626
		elseif(name == 3)then
627
			tecks2.Text = "furdtean"
628
		elseif(name > 3 and name <= 6)then
629
			tecks2.Text = 'Astronaut'
630
		else
631
			tecks2.Text = "13"
632
		end
633
		if(time()-GlitchTime < .5)then
634
			tecks2.Text = tecks2.Text:gsub("",string.char(M.RNG(1,127)))
635
		end
636
	end
637
end)()
638
639
-- Animation Loop
640
runService:BindToRenderStep("N_Animations",Enum.RenderPriority.Character.Value + 1,function()
641
	sine=sine+change
642
	local GlitchEffect = M.RNG(1,500)
643
	hum.WalkSpeed = 8
644
	if(Music.TimePosition > 2.7 and Music.TimePosition < 2.75 or Music.TimePosition > 6.8 and Music.TimePosition < 6.9)then GlitchTime = time()+.45 elseif(Music.TimePosition > 7.6)then
645
		if(GlitchEffect == 1 and time()-GlitchTime >= .5)then
646
			GlitchTime = time()
647
		end		
648
	end
649
	if(time()-GlitchTime < .5)then
650
		Distorted.MidGain = -25
651
		Distorted.LowGain = 10
652
		Distorted.HighGain = -25
653
		FT.Parent = torso
654
		RA.Parent = rarm
655
		LA.Parent = larm
656
		RL.Parent = rleg
657
		LL.Parent = lleg
658
		for _,v in next, char:GetDescendants() do
659
			if(v:IsA'DataModelMesh')then
660
				v.Offset = V3.N(M.RNG(-200,200)/100,M.RNG(-200,200)/100,M.RNG(-200,200)/100)
661
			end
662
		end
663
	else
664
		Distorted.MidGain = 0
665
		Distorted.LowGain = 0
666
		Distorted.HighGain = 0
667
		FT.Parent = nil
668
		RA.Parent = nil
669
		LA.Parent = nil
670
		RL.Parent = nil
671
		LL.Parent = nil
672
		for _,v in next, char:GetDescendants() do
673
			if(v:IsA'DataModelMesh')then
674
				v.Offset = V3.N(0,0,0)
675
			end
676
		end
677
	end
678
	if(neutralAnims)then
679
		if(CheckState(root) == 'Idle')then
680
			-- Idle anim
681
			RJ.C0 = RJ.C0:lerp(CF.N(0,.2*M.S(time()*16),0)*CF.A(.2*M.S(time()*16),0,0),.2)
682
			NK.C0 = NK.C0:lerp(HD*CF.A(-.2*M.S(time()*16),0,0),.2)
683
			RH.C0 = RH.C0:lerp(RHD*CF.N(0,.2*-M.S(time()*16),.2*M.S(time()*16))*CF.A(-.2*M.S(time()*16),0,0),.2)
684
			LH.C0 = LH.C0:lerp(LHD*CF.N(0,.2*-M.S(time()*16),.2*M.S(time()*16))*CF.A(-.2*M.S(time()*16),0,0),.2)
685
			RS.C0 = RS.C0:lerp(RSD*CF.A(0,0,.4*M.C(time()*16)),.2)
686
			LS.C0 = LS.C0:lerp(LSD*CF.A(0,0,.4*-M.C(time()*16)),.2)
687
		elseif(CheckState(root) == 'Walk')then
688
			-- Walk anim
689
			RH.C0 = RH.C0:lerp(RHD*CF.A(-M.R(35+45*M.C(time()*hum.WalkSpeed)),0,0)*CF.A(M.R(-25),0,0)*CF.N(0,-M.S(time()*hum.WalkSpeed/2)/2,0),.2)
690
			LH.C0 = LH.C0:lerp(LHD*CF.A(M.R(35+45*M.C(time()*hum.WalkSpeed)),0,0)*CF.A(M.R(-25),0,0)*CF.N(0,-M.S(time()*hum.WalkSpeed/2)/2,0),.2)
691
			RS.C0 = RS.C0:lerp(RSD*CF.A(-M.R(35+45*M.C(time()*hum.WalkSpeed)),0,0)*CF.A(M.R(-25),0,0),.2)
692
			LS.C0 = LS.C0:lerp(LSD*CF.A(M.R(35+45*M.C(time()*hum.WalkSpeed)),0,0)*CF.A(M.R(-25),0,0),.2)
693
			RJ.C0 = RJ.C0:lerp(CF.N(0,M.S(time()*hum.WalkSpeed/2)/2,0)*CF.A(M.R(25),0,0),.2)
694
		end
695
	end
696
end)
697
698
-- Died event
699
700
hum.Died:connect(function() -- When the player dies
701
	UnbindLoops() -- Unbind all of the loops used
702
end)
703
704
705
-- Everything else
706
707
function GetTorso(char)
708
	return char:FindFirstChild'Torso' or char:FindFirstChild'UpperTorso' or char:FindFirstChild'LowerTorso' or char:FindFirstChild'HumanoidRootPart'
709
end
710
711
function DealDamage(who,minDam,maxDam,Knock,Type)
712
	if(who)then
713
		local hum = who:FindFirstChildOfClass'Humanoid'
714
		local Damage = M.RNG(minDam,maxDam)
715
		local canHit = true
716
		if(hum)then
717
			for _, p in pairs(Hit) do
718
				if p[1] == hum then
719
					if(time() - p[2] < 0.1) then
720
						canHit = false
721
					else
722
						Hit[_] = nil
723
					end
724
				end
725
			end
726
			if(canHit)then
727
				if(hum.Health >= math.huge)then
728
					who:BreakJoints()
729
				else
730
					local player = S.Players:GetPlayerFromCharacter(who)
731
					if(not player or not Teamed[player])then
732
						if(Type == "Fire")then
733
							--idk..
734
						else
735
							local  c = Instance.new("ObjectValue",hum)
736
							c.Name = "creator"
737
							c.Value = plr
738
							game:service'Debris':AddItem(c,0.35)
739
							hum.Health = hum.Health - Damage
740
							if(Type == 'Knockback' and GetTorso(who))then
741
								local angle = GetTorso(who).Position - root.Position + Vector3.new(0, 0, 0).unit
742
								local body = NewInstance('BodyVelocity',GetTorso(who),{
743
									P = 500,
744
									maxForce = V3.N(math.huge,0,math.huge),
745
									velocity = root.CFrame.lookVector * Knock + root.Velocity / 1.05
746
								})
747
								game:service'Debris':AddItem(body,.5)	
748
							elseif(Type == 'Knockdown' and GetTorso(who))then
749
								local rek = GetTorso(who)
750
								print(rek)
751
								hum.PlatformStand = true
752
								delay(1,function()
753
									hum.PlatformStand = false
754
								end)
755
								local angle = (GetTorso(who).Position - (root.Position + Vector3.new(0, 0, 0))).unit
756
								local bodvol = NewInstance("BodyVelocity",rek,{
757
									velocity = angle * Knock,
758
									P = 5000,
759
									maxForce = Vector3.new(8e+003, 8e+003, 8e+003),
760
								})
761
								local rl = NewInstance("BodyAngularVelocity",rek,{
762
									P = 3000,
763
									maxTorque = Vector3.new(500000, 500000, 500000) * 50000000000000,
764
									angularvelocity = Vector3.new(math.random(-10, 10), math.random(-10, 10), math.random(-10, 10)),
765
								})
766
								game:GetService("Debris"):AddItem(bodvol, .5)
767
								game:GetService("Debris"):AddItem(rl, .5)
768
							end
769
						end
770
					end
771
				end
772
				table.insert(Hit,{hum,time()})
773
			end
774
		end
775
	end
776
end
777
778
function MagniDamage(pos,radius,mindamage,maxdamage,knockback,damagetype)
779
	local Recursive
780
	Recursive = function(whom)	
781
		for _,c in next, whom:children() do
782
			local hum = c:FindFirstChildOfClass'Humanoid'
783
			local hed = c:FindFirstChild'Torso' or c:FindFirstChild'UpperTorso' or c:FindFirstChild'LowerTorso'
784
			if(hum and hed)then
785
				local mag = (hed.CFrame.p - pos).magnitude
786
				if(mag <= radius and c ~= char)then
787
					DealDamage(c,mindamage,maxdamage,knockback,damagetype)
788
				end
789
			end
790
			Recursive(c)
791
		end
792
	end
793
	Recursive(workspace)
794
end
795
796
function MagniHeal(pos,radius,heal,needsTeamed)
797
	for _,v in next, workspace:GetDescendants() do
798
		local player = S.Players:GetPlayerFromCharacter(v)
799
		local hum = v:FindFirstChildOfClass'Humanoid'
800
		if(hum and v:IsA'Model')then
801
			if(not needsTeamed or player and (not plr.Neutral and player.TeamColor == plr.TeamColor))then
802
				local pp = v.PrimaryPart or v:FindFirstChild'Torso' or v:FindFirstChild'UpperTorso' or v:FindFirstChild'LowerTorso'
803
				if(pp and (pp.CFrame.p-pos).magnitude <= radius)then
804
					hum.Health = hum.Health + heal
805
				end
806
			end
807
		end
808
	end	
809
end
810
811
--[[
812
		for _,v in next, workspace:GetDescendants() do
813
		if(v ~= char and v:FindFirstChildOfClass'Humanoid' and GetTorso(v) and plr:DistanceFromCharacter(GetTorso(v).CFrame.p) < 15)then
814
			for _,c in next, v:children() do
815
				coroutine.wrap(function()
816
					if(c:IsA'BasePart')then
817
						local a = halfit(c)
818
						a.Anchored = false
819
						c.Anchored = false
820
						local bodpos = Instance.new("BodyPosition",a)
821
						bodpos.D = 1e4
822
						bodpos.Position = a.Position + V3.N(M.RNG(-100,100),M.RNG(100,200),M.RNG(-100,100))
823
						local bodpos = Instance.new("BodyPosition",c)
824
						bodpos.D = 1e4
825
						bodpos.Position = c.Position + V3.N(M.RNG(-100,100),M.RNG(100,200),M.RNG(-100,100))
826
					end
827
				end)()
828
			end
829
		end
830
	end
831
]]
832
function SpaceExplode(pos)
833
	local explode = NewInstance("Explosion",workspace,{Visible=false,DestroyJointRadiusPercent = 0,Position=pos,BlastPressure=10000,ExplosionType=Enum.ExplosionType.CratersAndDebris,BlastRadius=30})
834
	local explodeP = NewInstance("Part",workspace,{Anchored=true,CanCollide=false,CFrame=CF.N(pos),Transparency=1})
835
	local particles = NewInstance("ParticleEmitter",explodeP,{Enabled=false,Texture='rbxasset://textures/particles/sparkles_main.dds',Size=NumberSequence.new(3),LightInfluence=.5,Lifetime=NumberRange.new(1),Rate=250,RotSpeed=NumberRange.new(25),SpreadAngle=Vector2.new(360,360),Color=ColorSequence.new(Color3.new(0,0,0),Color3.new(.3,.3,.3)),Transparency=NumberSequence.new(0,1),Speed=NumberRange.new(50)})		
836
	particles:Emit(2500)	
837
	explode.Hit:connect(function(t,d)
838
		if(d <= explode.BlastRadius and t ~= explodeP and not char:IsAncestorOf(t))then
839
			local a = Fragment2(t)
840
			t.Anchored = false
841
			local bodpos = Instance.new("BodyPosition",t)
842
			bodpos.D = 1e4
843
			bodpos.Position = t.Position + V3.N(M.RNG(-100,100),M.RNG(100,200),M.RNG(-100,100))
844
			for _,a in next, a:children() do
845
				a.Anchored = false
846
				local bodpos = Instance.new("BodyPosition",a)
847
				bodpos.D = 1e4
848
				bodpos.Position = a.Position + V3.N(M.RNG(-100,100),M.RNG(100,200),M.RNG(-100,100))
849
			end
850
		end
851
	end)
852
	delay(1, function()
853
		explodeP:destroy()
854
	end)
855
end
856
857
function Explode(pos)
858
	local explode = NewInstance("Explosion",workspace,{Visible=false,DestroyJointRadiusPercent = 0,Position=pos,BlastPressure=10000,ExplosionType=Enum.ExplosionType.CratersAndDebris,BlastRadius=30})
859
	local explodeP = NewInstance("Part",workspace,{Anchored=true,CanCollide=false,CFrame=CF.N(pos),Transparency=1})
860
	local particles = NewInstance("ParticleEmitter",explodeP,{Enabled=false,Texture='rbxasset://textures/particles/sparkles_main.dds',Size=NumberSequence.new(3),LightInfluence=.5,Lifetime=NumberRange.new(1),Rate=250,RotSpeed=NumberRange.new(25),SpreadAngle=Vector2.new(360,360),Color=ColorSequence.new(Color3.new(0,0,0),Color3.new(.3,.3,.3)),Transparency=NumberSequence.new(0,1),Speed=NumberRange.new(50)})		
861
	particles:Emit(2500)	
862
	explode.Hit:connect(function(t,d)
863
		if(d <= explode.BlastRadius and t ~= explodeP and not char:IsAncestorOf(t))then
864
			t:BreakJoints()
865
		end
866
	end)
867
	delay(1, function()
868
		explodeP:destroy()
869
	end)
870
end
871
function FragmentedSmash()
872
	Attack = true
873
	neutralAnims = false
874
	for i = 0, 1, 0.1 do
875
		swait()
876
		RJ.C0 = clerp(RJ.C0,CFrame.new(0.0124750687, 0.0806899369, 0.797527909, 0.999973536, 0.00707971025, -0.00174606312, -0.00709000183, 0.888056755, -0.459679216, -0.00170379225, 0.459679425, 0.888083458),0.3)
877
		LH.C0 = clerp(LH.C0,CFrame.new(-0.992911518, -2.19722176, 0.263476431, 0.999878228, -0.00709000183, 0.0139080146, -9.7673139e-05, 0.888056755, 0.459733874, -0.0156106194, -0.459679216, 0.887947857),0.3)
878
		RH.C0 = clerp(RH.C0,CFrame.new(1.00195694, -2.19321394, 0.240732491, 0.999878228, -0.00709000183, 0.0139080146, -9.7673139e-05, 0.888056755, 0.459733874, -0.0156106194, -0.459679216, 0.887947857),0.3)
879
		LS.C0 = clerp(LS.C0,CFrame.new(-2.9985857, 1.23600769, 0.359443754, 0.999878228, -0.00421095407, -0.0150323557, -9.77925229e-05, -0.964603186, 0.26370576, -0.0156107098, -0.263672143, -0.964486003),0.3)
880
		RS.C0 = clerp(RS.C0,CFrame.new(3.00798082, 1.02948105, 0.236942679, 0.999878228, -0.00421202509, -0.0150319505, -9.76680021e-05, -0.964581847, 0.263783902, -0.0156106092, -0.263750285, -0.964464784),0.3)
881
		NK.C0 = clerp(NK.C0,CFrame.new(-4.57763526e-05, 2.99385953, -0.167541847, 1.00000012, 0, 9.31322575e-10, 0, 0.997965097, 0.0637644231, 9.31322575e-10, -0.0637643933, 0.997965038),0.3)
882
	end
883
	wait(.25)
884
	for i = 0, 1, 0.1 do
885
		swait()
886
		RJ.C0 = clerp(RJ.C0,CFrame.new(-0.0162220523, -3.28057575, -1.04076338, 0.999646187, -0.0140592707, -0.0225835219, 0.0139190033, -0.447028011, 0.894411683, -0.0226702448, -0.894409537, -0.446674198),0.3)
887
		LH.C0 = clerp(LH.C0,CFrame.new(-0.995434463, -2.54280162, 0.103460789, 0.999878228, -0.0153137166, 0.00301438384, -9.40344544e-05, 0.187221676, 0.982317746, -0.0156072918, -0.982198358, 0.187197477),0.3)
888
		RH.C0 = clerp(RH.C0,CFrame.new(0.999332726, -2.53378367, 0.0742077827, 0.999878228, -0.0153137166, 0.00301438384, -9.40344544e-05, 0.187221676, 0.982317746, -0.0156072918, -0.982198358, 0.187197477),0.3)
889
		LS.C0 = clerp(LS.C0,CFrame.new(-3.00734401, 1.78636146, -0.204609811, 0.999878228, 0.0048848032, -0.0148234647, -9.40344544e-05, -0.947858274, -0.318692297, -0.0156072918, 0.318654835, -0.947742343),0.3)
890
		RS.C0 = clerp(RS.C0,CFrame.new(3.00109315, 1.59880495, -0.207441658, 0.999878228, 0.00488352403, -0.0148238856, -9.40344544e-05, -0.947885811, -0.318610489, -0.0156072918, 0.318573087, -0.94776988),0.3)
891
		NK.C0 = clerp(NK.C0,CFrame.new(-6.10337302e-05, 2.99385333, -0.167541668, 1, 4.65661287e-10, 1.16415322e-09, 0, 0.997965038, 0.0637648106, 4.65661287e-10, -0.0637647808, 0.997964978),0.3)
892
	end
893
	SpaceExplode(torso.CFrame.p)
894
895
	neutralAnims = true
896
	Attack = false
897
end
898
function Boom()
899
	neutralAnims = false
900
	Attack = true
901
	for i = 0, 1, 0.1 do
902
		swait()
903
		RJ.C0 = clerp(RJ.C0,CFrame.new(-0.0267966501, 0.00628957665, 0.118403517, 0.888822019, -0.00288028526, -0.458243728, 1.83618964e-09, 0.99998033, -0.00628535915, 0.458252817, 0.00558656547, 0.888804436),0.3)
904
		LH.C0 = clerp(LH.C0,CFrame.new(-1.13602376, -1.9913373, -0.0583203211, 0.881559432, 1.97843608e-09, 0.472073227, -0.00296715181, 0.99998033, 0.00554091716, -0.472063869, -0.00628535915, 0.881541908),0.3)
905
		RH.C0 = clerp(RH.C0,CFrame.new(1.13044202, -1.99142766, -0.0518710092, 0.881559432, 1.97843608e-09, 0.472073227, -0.00296715181, 0.99998033, 0.00554091716, -0.472063869, -0.00628535915, 0.881541908),0.3)
906
		LS.C0 = clerp(LS.C0,CFrame.new(-2.87729907, 0.999060631, 0.0152502041, 0.991834939, 0.126569927, 0.0156156719, -0.126680851, 0.991923511, 0.00632756483, -0.0146886408, -0.00825411081, 0.999858022),0.3)
907
		RS.C0 = clerp(RS.C0,CFrame.new(2.85624766, 0.825717211, -0.0160068981, -0.879796147, -0.475095063, 0.0156087577, 0.47522983, -0.879839301, 0.00628530141, 0.0107470751, 0.0129475296, 0.999858439),0.3)
908
		NK.C0 = clerp(NK.C0,CFrame.new(-0.0986121893, 2.99323964, -0.268526018, 0.888822138, -0.026346216, 0.457494676, -0.00288064196, 0.998005033, 0.0630696788, -0.458243549, -0.0573755801, 0.886972964),0.3)
909
	end
910
	wait(.5)
911
	for i = 0, .65, 0.1 do
912
		swait()
913
		RJ.C0 = clerp(RJ.C0,CFrame.new(-0.0267966501, 0.00628957665, 0.118403517, 0.888822019, -0.00288028526, -0.458243728, 1.83618964e-09, 0.99998033, -0.00628535915, 0.458252817, 0.00558656547, 0.888804436),0.3)
914
		LH.C0 = clerp(LH.C0,CFrame.new(-1.13602376, -1.9913373, -0.0583203211, 0.881559432, 1.97843608e-09, 0.472073227, -0.00296715181, 0.99998033, 0.00554091716, -0.472063869, -0.00628535915, 0.881541908),0.3)
915
		RH.C0 = clerp(RH.C0,CFrame.new(1.13044202, -1.99142766, -0.0518710092, 0.881559432, 1.97843608e-09, 0.472073227, -0.00296715181, 0.99998033, 0.00554091716, -0.472063869, -0.00628535915, 0.881541908),0.3)
916
		LS.C0 = clerp(LS.C0,CFrame.new(-2.87729907, 0.999060631, 0.0152502041, 0.991834939, 0.126569927, 0.0156156719, -0.126680851, 0.991923511, 0.00632756483, -0.0146886408, -0.00825411081, 0.999858022),0.3)
917
		RS.C0 = clerp(RS.C0,CFrame.new(2.64173985, 0.428497076, -0.0101612248, -0.879796147, -0.475095063, 0.0156087577, 0.47522983, -0.879839301, 0.00628530141, 0.0107470751, 0.0129475296, 0.999858439),0.3)
918
		NK.C0 = clerp(NK.C0,CFrame.new(-0.0986121893, 2.99323964, -0.268526018, 0.888822138, -0.026346216, 0.457494676, -0.00288064196, 0.998005033, 0.0630696788, -0.458243549, -0.0573755801, 0.886972964),0.3)
919
	end
920
	--BlockFX(duration,color,scale,pos,endScale)
921
	local p = mouse.Hit.p
922
	local start = time()
923
	delay(0, function()
924
		repeat wait() BlockFX(15,BrickColor.new'Black',V3.N(3,3,3),CF.N(p),V3.N(4,4,4)) until time()-start > 1.25
925
		Explode(p)	
926
	end)
927
	BlockFX(45,BrickColor.new'Black',V3.N(3,3,3),rarm.CFrame*CF.N(0,-rarm.Size.Y/2,0),V3.N(9,9,9))
928
	for i = 0, .65, 0.1 do
929
		swait()
930
		RJ.C0 = clerp(RJ.C0,CFrame.new(-0.0267966501, 0.00628957665, 0.118403517, 0.888822019, -0.00288028526, -0.458243728, 1.83618964e-09, 0.99998033, -0.00628535915, 0.458252817, 0.00558656547, 0.888804436),0.3)
931
		LH.C0 = clerp(LH.C0,CFrame.new(-1.13602376, -1.9913373, -0.0583203211, 0.881559432, 1.97843608e-09, 0.472073227, -0.00296715181, 0.99998033, 0.00554091716, -0.472063869, -0.00628535915, 0.881541908),0.3)
932
		RH.C0 = clerp(RH.C0,CFrame.new(1.13044202, -1.99142766, -0.0518710092, 0.881559432, 1.97843608e-09, 0.472073227, -0.00296715181, 0.99998033, 0.00554091716, -0.472063869, -0.00628535915, 0.881541908),0.3)
933
		LS.C0 = clerp(LS.C0,CFrame.new(-2.87729907, 0.999060631, 0.0152502041, 0.991834939, 0.126569927, 0.0156156719, -0.126680851, 0.991923511, 0.00632756483, -0.0146886408, -0.00825411081, 0.999858022),0.3)
934
		RS.C0 = clerp(RS.C0,CFrame.new(2.85624766, 0.825717211, -0.0160068981, -0.879796147, -0.475095063, 0.0156087577, 0.47522983, -0.879839301, 0.00628530141, 0.0107470751, 0.0129475296, 0.999858439),0.3)
935
		NK.C0 = clerp(NK.C0,CFrame.new(-0.0986121893, 2.99323964, -0.268526018, 0.888822138, -0.026346216, 0.457494676, -0.00288064196, 0.998005033, 0.0630696788, -0.458243549, -0.0573755801, 0.886972964),0.3)
936
	end
937
	wait(.25)
938
	neutralAnims = true
939
	Attack = false
940
end
941
function Meteor()
942
	neutralAnims = false
943
	Attack = true
944
	for i = 0, 1, 0.1 do
945
		swait()
946
		RJ.C0 = clerp(RJ.C0,CFrame.new(-0.0223131552, -2.04613924, -1.43031895, 0.999952257, -0.00929827243, -0.00299749151, 0.00927900057, 0.807942808, 0.589187801, -0.0030566277, -0.589187562, 0.80799067),0.3)
947
		LH.C0 = clerp(LH.C0,CFrame.new(-1.0033766, 0.39615345, -0.423063278, 0.999878109, 0.00927900057, 0.0125550134, -9.8735909e-05, 0.807942808, -0.589260876, -0.0156114856, 0.589187801, 0.807845294),0.3)
948
		RH.C0 = clerp(RH.C0,CFrame.new(0.960870802, -1.8572216, -2.39271688, 0.999878109, -0.0101528121, 0.0118595241, -9.87424937e-05, 0.75552392, 0.655120969, -0.0156114763, -0.655042291, 0.755430818),0.3)
949
		LS.C0 = clerp(LS.C0,CFrame.new(-3.0046792, 0.857568204, -0.0285525322, 0.999878109, -0.0146704866, -0.00533898873, -9.87424937e-05, -0.347920358, 0.93752414, -0.0156114763, -0.937409401, -0.347879499),0.3)
950
		RS.C0 = clerp(RS.C0,CFrame.new(3.00213504, 0.943184912, -0.13698405, 0.999878109, -0.0146704866, -0.00533898873, -9.87424937e-05, -0.347920358, 0.93752414, -0.0156114763, -0.937409401, -0.347879499),0.3)
951
		NK.C0 = clerp(NK.C0,CFrame.new(-2.44036382e-05, 2.99386311, -0.167564437, 1, 2.0461157e-06, -8.96863639e-07, -1.98557973e-06, 0.99796474, 0.0637678504, 1.02538615e-06, -0.0637679994, 0.99796468),0.3)
952
	end
953
	wait(.25)
954
	for i = 0, 1, 0.1 do
955
		swait()
956
		RJ.C0 = clerp(RJ.C0,CFrame.new(-0.051363945, -3.60286617, -3.29043484, 0.999872804, -0.0137674687, -0.00806680601, 0.0137160039, 0.483212173, 0.875395894, -0.00815400854, -0.875395119, 0.483339548),0.3)
957
		LH.C0 = clerp(LH.C0,CFrame.new(-0.996045709, -1.73839223, 0.0600171089, 0.999878228, 0.00310409069, 0.0153003354, -9.91220222e-05, 0.981277168, -0.192601174, -0.0156117193, 0.19257623, 0.981157899),0.3)
958
		RH.C0 = clerp(RH.C0,CFrame.new(0.987435639, -1.55498588, -0.69317311, 0.999878228, -0.00418921839, 0.015039484, -9.91220222e-05, 0.961603463, 0.274442703, -0.0156117193, -0.274410754, 0.961485863),0.3)
959
		LS.C0 = clerp(LS.C0,CFrame.new(-3.0160594, 1.11446631, -0.759037852, 0.999878228, 0.0153746856, -0.00271196151, -9.91220222e-05, -0.167454362, -0.985879958, -0.0156117193, 0.985760093, -0.167432487),0.3)
960
		RS.C0 = clerp(RS.C0,CFrame.new(2.99049282, 1.03188896, -0.883246303, 0.999878228, 0.0153746856, -0.00271196151, -9.91220222e-05, -0.167454362, -0.985879958, -0.0156117193, 0.985760093, -0.167432487),0.3)
961
		NK.C0 = clerp(NK.C0,CFrame.new(-2.51147103e-05, 2.99386525, -0.167563885, 1.00000024, 1.80862844e-06, -8.5355714e-07, -1.75042078e-06, 0.997964859, 0.063767463, 9.66712832e-07, -0.063767463, 0.997964919),0.3)
962
	end
963
	local meteor = NewInstance("Part",char,{BrickColor=BrickColor.new'Dark stone grey',Material=Enum.Material.Granite,Size=V3.N(5,5,5),CanCollide=false,CFrame = CF.N(mouse.Hit.p)*CF.N(0,200,0)})
964
	Instance.new("SpecialMesh",meteor).MeshType = Enum.MeshType.Sphere
965
	meteor.Touched:connect(function(touch)
966
		if(not touch:IsA'Terrain' and touch.CanCollide and touch.Transparency < .9 and not touch:IsDescendantOf(char))then
967
			meteor:Destroy()
968
			Explode(meteor.CFrame.p)
969
		end
970
		
971
	end)
972
	wait(.25)
973
	neutralAnims = true
974
	Attack = false
975
end
976
977
978
mouse.KeyDown:connect(function(k)
979
	if(Attack)then return end	
980
	if(k == 'z')then
981
		Meteor()
982
	elseif(k == 'x')then
983
		Boom()
984
	elseif(k == 'c')then
985
		FragmentedSmash()
986
	elseif(k == 'v')then
987
		SpaceExplode(mouse.Hit.p)
988
	elseif(k == 'm')then
989
		Music.Playing = not Music.Playing
990
	end
991
end)
992
993
hum.Died:connect(function()
994
	SpaceExplode(torso.CFrame.p)
995
end)
996
997
runService.RenderStepped:connect(function()
998
	if(not Attack and combo ~= 1 and time()-lastClick > 0.4)then
999
		combo = 1
1000
	end
1001
end)
1002
plr = game.Players.LocalPlayer
1003
mouse = plr:GetMouse()
1004
part = nil
1005
bp = nil
1006
particles = nil
1007
function clerp(a,b,c,d)
1008
	for i = 0,d,.01 do
1009
		a.CFrame = CFrame.new(b:lerp(c,i))
1010
		wait()
1011
	end
1012
end
1013
function slerp(a2,b2,c2,d2)
1014
	for i2 = 0,d2,.01 do
1015
		a2.CFrame = CFrame.new(b2:lerp(c2,i2))
1016
		wait()
1017
	end
1018
end
1019
mouse.KeyDown:connect(function(key)
1020
	if key == "e" and plr.Character.Parent == workspace then
1021
		plr.Character.Parent = workspace.Camera
1022
		plr.Character.Archivable = true
1023
		Instance.new("ForceField",plr.Character).Visible = false
1024
		for y,t in pairs(plr.Character:GetChildren()) do
1025
			if t:IsA("Part") and t.Name ~= "HumanoidRootPart" then
1026
				t.Transparency = 0.5
1027
				if t.Name == "Head" and t:FindFirstChild("face") then
1028
					t.face.Transparency = 1
1029
				end
1030
			elseif t:IsA("Accessory") and t:FindFirstChild("Handle") then
1031
				t.Handle.Transparency = 1
1032
			end
1033
		end
1034
	elseif key == "z" and plr.Character.Parent == workspace.Camera and part == nil then
1035
		plr.Character.Torso.CFrame = CFrame.new(Vector3.new(mouse.hit.p.X,mouse.hit.p.Y+1.5,mouse.hit.p.Z),plr.Character.Torso.CFrame.p)
1036
	elseif key == "x" and plr.Character.Parent == workspace.Camera and part == nil then
1037
		if plr.Character.Torso.Anchored == true then
1038
			for y,t in pairs(plr.Character:GetChildren()) do
1039
				if t:IsA("Part") then
1040
					t.Anchored = false
1041
				end
1042
			end
1043
		else
1044
			for y,t in pairs(plr.Character:GetChildren()) do
1045
				if t:IsA("Part") then
1046
					t.Anchored = true
1047
				end
1048
			end
1049
		end
1050
	elseif key == "c" and plr.Character.Parent == workspace.Camera and part ~= nil then
1051
		local clone = part:Clone()
1052
		clone.Parent = workspace
1053
		clone.Anchored = false
1054
		clone:ClearAllChildren()
1055
		clone.CanCollide = true
1056
		bp.Parent = clone
1057
		particles.Parent = clone
1058
		if part.Parent:FindFirstChildOfClass("Humanoid") then
1059
			part.Parent:FindFirstChildOfClass("Humanoid").PlatformStand = false
1060
		end
1061
		part:Destroy()
1062
		part = clone
1063
	elseif key == "t" and plr.Character.Parent == workspace.Camera and part == nil then
1064
		plr.Character.Parent = workspace
1065
		plr.Character.Archivable = false
1066
		plr.Character:FindFirstChildOfClass("ForceField"):Remove()
1067
		for y,t in pairs(plr.Character:GetChildren()) do
1068
			if t:IsA("Part") and t.Name ~= "HumanoidRootPart" then
1069
				t.Transparency = 0
1070
				if t.Name == "Head" and t:FindFirstChild("face") then
1071
					t.face.Transparency = 0
1072
				end
1073
			elseif t:IsA("Accessory") and t:FindFirstChild("Handle") then
1074
				t.Handle.Transparency = 0
1075
			end
1076
		end
1077
	end
1078
end)
1079
mouse.Button1Down:connect(function()
1080
	if plr.Character.Parent == workspace.Camera then
1081
		if mouse ~= nil then
1082
			if mouse.Target ~= nil then
1083
				part = mouse.Target
1084
				bp = Instance.new("BodyPosition",part)
1085
				bp.MaxForce = Vector3.new(math.huge,math.huge,math.huge)
1086
				bp.Position = part.Position
1087
				particles = Instance.new("ParticleEmitter",part)
1088
				particles.Color = ColorSequence.new(Color3.new(0,0,0))
1089
				particles.Size = NumberSequence.new(1)
1090
				particles.Texture = "rbxassetid://292289455"
1091
				particles.VelocitySpread = 360
1092
				particles.Speed = NumberRange.new(0)
1093
				particles.RotSpeed = NumberRange.new(0)
1094
				particles.Rotation = NumberRange.new(0)
1095
				particles.Rate = 250
1096
				particles.Lifetime = NumberRange.new(.2,.4)
1097
				particles.Transparency = NumberSequence.new({NumberSequenceKeypoint.new(0,1,0),NumberSequenceKeypoint.new(.12,.688,0),NumberSequenceKeypoint.new(.891,.887,0),NumberSequenceKeypoint.new(1,1,0)})
1098
				dwn = true
1099
			end
1100
		end
1101
		while dwn == true do 
1102
			wait()	
1103
			bp.Position = mouse.hit.p
1104
			if part then
1105
				if part.Parent:FindFirstChildOfClass("Humanoid") then
1106
					part.Parent:FindFirstChildOfClass("Humanoid").PlatformStand = true
1107
				end
1108
			end
1109
		end
1110
	end
1111
end)
1112
mouse.Button1Up:connect(function()
1113
	dwn = false
1114
	if part then if part.Parent:FindFirstChildOfClass("Humanoid") then part.Parent:FindFirstChildOfClass("Humanoid").PlatformStand = false end part = nil end
1115
	if bp then bp:Destroy() end
1116
	if particles then particles:Destroy() end
1117
end)
1118
base = Instance.new("ScreenGui",plr.PlayerGui)
1119
bbg = Instance.new("BillboardGui",plr.Character.Head)
1120
bbg.Size = UDim2.new(0,200,0,50)
1121
bbg.StudsOffset = Vector3.new(0,3,0)
1122
bbgTl = Instance.new("TextLabel",bbg)
1123
bbgTl.BackgroundTransparency = 1
1124
bbgTl.Size = UDim2.new(10,0,1,0)
1125
bbgTl.Position = UDim2.new(-4.5,0,0,0)
1126
bbgTl.Font = "Code"
1127
bbgTl.Text = " "
1128
bbgTl.TextSize = 100
1129
bbgTl.TextStrokeColor3 = Color3.new(1,1,1)
1130
bbgTl.TextColor3 = Color3.new(201,201,201)
1131
bbgTl.TextStrokeTransparency = 0
1132
bbgTl.TextWrapped = true
1133
plr.Chatted:connect(function(msg)
1134
	bbgTl.Text = msg
1135
	wait(5)
1136
	if bbgTl.Text == msg then
1137
		bbgTl.Text = " "
1138
	end
1139
end)
1140
touchCounter = 0
1141
while wait() do
1142
	if plr.Character.Parent == workspace.Camera then
1143
		local c = plr.Character:Clone()
1144
		c:MakeJoints()
1145
		for y,t in pairs(c:GetChildren()) do
1146
			if t:IsA("Part") then
1147
				t.CanCollide = false 
1148
				t.Anchored = true 
1149
				t.Transparency = 0.8
1150
				t.TopSurface = "Smooth"
1151
				t.BottomSurface = "Smooth"
1152
				t.RightSurface = "Smooth"
1153
				t.LeftSurface = "Smooth"
1154
				t.FrontSurface = "Smooth"
1155
				t.BackSurface = "Smooth"
1156
				t.BrickColor = BrickColor.new("grey")
1157
				if t.Name == "Head" and t:FindFirstChild("face") then
1158
					t.face:Remove()
1159
				elseif t.Name == "Torso" and t:FindFirstChild("roblox") then
1160
					t.roblox:Remove()
1161
				elseif t.Name == "HumanoidRootPart" then
1162
					t:Remove()
1163
				end
1164
			else 
1165
				t:Remove()
1166
			end
1167
		end
1168
		c.Parent = workspace
1169
		game.Debris:AddItem(c,.05)
1170
	end
1171
end