View difference between Paste ID: DM4aVBZb and E1DMKmGg
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,Mouse,mouse,UserInputService,ContextActionService = owner
3
local RealPlayer = Player
4
do print("FE Compatibility code by Mokiros");InternalData = {}InternalData.RealOwner = owner;InternalData.RealObjs = {};InternalData.SoundLoudness = {};local a=RealPlayer;script.Parent=a.Character;local b=Instance.new("RemoteEvent")b.Name="UserInput_Event"local function c()local d={_fakeEvent=true,Functions={},Connect=function(self,e)table.insert(self.Functions,e)end}d.connect=d.Connect;return d end;local f={Target=nil,Hit=CFrame.new(),KeyUp=c(),KeyDown=c(),Button1Up=c(),Button1Down=c()}local g={InputBegan=c(),InputEnded=c()}local CAS={Actions={},BindAction=function(self,h,i,j,...)CAS.Actions[h]=i and{Name=h,Function=i,Keys={...}}or nil end}CAS.UnbindAction=CAS.BindAction;local function k(self,l,...)local d=f[l]if d and d._fakeEvent then for m,e in pairs(d.Functions)do e(...)end end end;f.TrigEvent=k;g.TrigEvent=k;b.OnServerEvent:Connect(function(n,o)if n~=a then return end;f.Target=o.Target;f.Hit=o.Hit;if not o.isMouse then local p=o.UserInputState==Enum.UserInputState.Begin;if o.UserInputType==Enum.UserInputType.MouseButton1 then return f:TrigEvent(p and"Button1Down"or"Button1Up")end;for m,d in pairs(CAS.Actions)do for m,q in pairs(d.Keys)do if q==o.KeyCode then d.Function(d.Name,o.UserInputState,o)end end end;f:TrigEvent(p and"KeyDown"or"KeyUp",o.KeyCode.Name:lower())g:TrigEvent(p and"InputBegan"or"InputEnded",o,false)end end)b.Parent=NLS([==[local a=game:GetService("Players").LocalPlayer;local b=script:WaitForChild("UserInput_Event")local c=a:GetMouse()local d=game:GetService("UserInputService")local e=function(f,g)if g then return end;b:FireServer({KeyCode=f.KeyCode,UserInputType=f.UserInputType,UserInputState=f.UserInputState,Hit=c.Hit,Target=c.Target})end;d.InputBegan:Connect(e)d.InputEnded:Connect(e)local h,i;while wait(1/30)do if h~=c.Hit or i~=c.Target then h,i=c.Hit,c.Target;b:FireServer({isMouse=true,Target=i,Hit=h})end end]==],Player.Character)local r=game;local s={__index=function(self,q)local t=rawget(self,"_RealService")if t then return t[q]end end,__newindex=function(self,q,u)local t=rawget(self,"_RealService")if t then t[q]=u end end,__call=function(self,...)local t=rawget(self,"_RealService")if t then return t(...)end end}local function v(d,w)d._RealService=typeof(w)=="string"and r:GetService(w)or w;return setmetatable(d,s)end;local x={GetService=function(self,t)return self[t]end,Players=v({LocalPlayer=v({GetMouse=function(self)return f end},Player)},"Players"),UserInputService=v(g,"UserInputService"),ContextActionService=v(CAS,"ContextActionService")}rawset(x.Players,"localPlayer",x.Players.LocalPlayer)x.service=x.GetService;x.RunService=v({RenderStepped=r:GetService("RunService").Heartbeat,BindToRenderStep=function(self,h,m,i)self._btrs[h]=self.Heartbeat:Connect(i)end,UnbindFromRenderStep=function(self,h)self._btrs[h]:Disconnect()end},"RunService")setmetatable(x,{__index=function(self,t)return r:GetService(t)or typeof(r[t])=="function"and function(m,...)return r[t](r,...)end or r[t]end,__newindex=s.__newindex,__call=s.__call})game,owner=x,x.Players.LocalPlayer
5
	script.Parent = InternalData.RealOwner.Character
6
	local Event = Instance.new("RemoteEvent");Event.Name = "UserInput";InternalData.Event = Event
7
	local function createObject (connections, index)
8
    	local proxy = newproxy (true);local meta = getmetatable (proxy);
9
    	local runbind = function (self, i, ...) connections[i]:Fire (...); end;
10
		while (#connections > 0) do connections[table.remove(connections, 1)] = Instance.new ('BindableEvent');end;
11
    	meta.__index = function (self, i)
12
        	if (i == 'TriggerEvent') then return runbind end;
13
        	return connections[i] and connections[i].Event or index[i];
14
    	end;
15
    	meta.__newindex = index;meta.__metatable = false;return proxy
16
	end;
17
	local Mouse = createObject({"KeyUp","KeyDown","Button1Down","Button1Up"},{["Target"] = nil;["Hit"] = CFrame.new()})
18
	local UserInputService = createObject({"InputBegan","InputEnded"},{})
19
	local ContextActionService = {Actions={},BindAction = function(self,actionName,Func,touch,...)
20
		self.Actions[actionName] = Func and {Name=actionName,Function=Func,Keys={...}} or nil
21
	end};ContextActionService.UnBindAction = ContextActionService.BindAction
22
	Event.OnServerEvent:Connect(function(FiredBy,Input)
23
		if FiredBy ~= InternalData.RealOwner then return end
24
		if Input.MouseEvent then
25
			Mouse.Target = Input.Target;Mouse.Hit = Input.Hit
26
		elseif Input.Sound then
27
			if InternalData.SoundLoudness[Input.Sound] then InternalData.SoundLoudness[Input.Sound] = Input.Loudness end
28
		else
29
			local Begin = Input.UserInputState == Enum.UserInputState.Begin
30
			if Input.UserInputType == Enum.UserInputType.MouseButton1 then return Mouse:TriggerEvent(Begin and "Button1Down" or "Button1Up") end
31
			for _,Action in pairs(ContextActionService.Actions) do
32
				for _,Key in pairs(Action.Keys) do if Key==Input.KeyCode then Action.Function(Action.Name,Input.UserInputState,Input) end end
33
			end
34
			Mouse:TriggerEvent(Begin and "KeyDown" or "KeyUp",Input.KeyCode.Name:lower());UserInputService:TriggerEvent(Begin and "InputBegan" or "InputEnded",Input,false)
35
		end
36
	end)
37
	InternalData["Mouse"] = Mouse;InternalData["ContextActionService"] = ContextActionService;InternalData["UserInputService"] = UserInputService
38
	Event.Parent = NLS([[
39
		local Player = owner;
40
		local Sounds = {};
41
		local Event = script:WaitForChild("UserInput");
42
		local UserInputService = game:GetService("UserInputService");
43
		local Mouse = Player:GetMouse();
44
		local Input = function(Input,gameProcessedEvent)
45
			if gameProcessedEvent then return end
46
			Event:FireServer({KeyCode=Input.KeyCode,UserInputType=Input.UserInputType,UserInputState=Input.UserInputState})
47
		end
48
		Event.OnClientEvent:connect(function(Args)
49
			if Args[1] == "NewSound" then table.insert(Sounds,Args[2]) end
50
		end)
51
		UserInputService.InputBegan:Connect(Input);UserInputService.InputEnded:Connect(Input)
52
		local Hit,Target
53
		while wait(1/30) do
54
			for x,Sound in pairs(Sounds) do
55
				if Sound.Parent then Event:FireServer({["Sound"]=Sound,["Loudness"]=Sound.PlaybackLoudness}) end
56
			end
57
			if Hit ~= Mouse.Hit or Target ~= Mouse.Target then
58
				Hit = Mouse.Hit;Target = Mouse.Target;
59
				Event:FireServer({["MouseEvent"]=true,["Target"]=Target,["Hit"]=Hit})
60
			end
61
		end
62
	]],InternalData.RealOwner.Character)
63
end
64
InternalData.NewOwner = setmetatable({},{
65
	__index = function (self,Index)
66
			local Type = type(InternalData.RealOwner[Index])
67
			if Type == "function" then
68
				if Index:lower() == "getmouse" or Index:lower() == "mouse" then
69
				return function (self)return InternalData["Mouse"] end
70
				end
71
			return function (self,...)return InternalData.RealOwner[Index](InternalData.RealOwner,...) end
72
		elseif Index == "FakePlayer" then
73
			return true
74
		end
75
		return InternalData.RealOwner[Index]
76
	end;
77
	__tostring = function(self) return tostring(InternalData.RealOwner) end
78
})
79
--LoadLibrary("RbxUtility").Create
80
InternalData.LoadLibrary = LoadLibrary;LoadLibrary = function(Library)
81
	if Library == "RbxUtility" then
82
		return setmetatable({},{
83
			__tostring = function() return "RbxUtility" end;
84
			__index = function(self, Index)
85
				if Index:lower() == "create" then
86
					return function(Type)
87
						return function(Data)
88
							Data = Data or {}
89
							local Inst = Instance.new(Type)
90
							for x,y in pairs(Data) do
91
								if InternalData.RealObjs[y] then y = InternalData.RealObjs[y] end
92
								if y == owner then y = InternalData.RealOwner end
93
								Inst[x] = y
94
							end
95
							return Inst
96
						end
97
					end
98
				end
99
				return InternalData.LoadLibrary(Library)[Index]
100
			end
101
		})
102
	end
103
	return InternalData.LoadLibrary(Library)
104
end
105
InternalData.RealInstance = Instance;Instance = setmetatable({},{
106
	__index = function (self,Index)
107
		if Index:lower() == 'new' then
108
			return function (Type, Parent)
109
				if Parent == owner then Parent = InternalData.RealOwner end
110
				if InternalData.RealObjs[Parent] then Parent = InternalData.RealObjs[Parent] end
111
				local Real = InternalData.RealInstance.new(Type,Parent)
112
				if not Type then return end
113
				if Type == "BillboardGui" then
114
					local ToReturn = setmetatable({},{
115
						__index = function (self,Index)
116
							if type(Real[Index]) == "function" then
117
								if Index:lower() == "clone" then
118
									return function (self)
119
										local Real = Real:Clone()
120
										local ToReturn = setmetatable({RealObject = Real},{
121
											__index = function (self,Index)
122
												if type(Real[Index]) == "function" then return function (self,...) return Real[Index](Real,...)end end
123
												return Real[Index]
124
											end;
125
											__newindex = function (self,Index,Value)
126
												if InternalData.RealObjs[Value] then Value = InternalData.RealObjs[Value] end
127
												if Value == owner then Value = InternalData.RealOwner end
128
												Real[Index] = Value
129
											end;
130
											__tostring = function(self) return tostring(Real) end;
131
										})
132
										InternalData.RealObjs[ToReturn] = Real;return ToReturn;
133
									end
134
								end
135
								return function (self,...) return Real[Index](Real,...)end
136
							end
137
							return Real[Index]
138
						end;
139
						__newindex = function (self,Index,Value)
140
							if InternalData.RealObjs[Value] then Value = InternalData.RealObjs[Value] end
141
							if Value == owner then Value = InternalData.RealOwner end
142
							Real[Index] = Value
143
						end;
144
						__tostring = function(self) return tostring(Real) end;
145
					})
146
					InternalData.RealObjs[ToReturn] = Real;return ToReturn;
147
				elseif Type:lower() == "sound" then
148
					Real.Parent = owner.Character;
149
					local ToReturn = setmetatable({RealObject = Real},{
150
						__index = function (self,Index)
151
							if Index:lower() == "playbackloudness" then
152
								return InternalData.SoundLoudness[Real] or 0
153
							elseif type(Real[Index]) == "function" then
154
								if Index:lower() == "clone" then
155
									return function (self)
156
										local Real = Real:Clone()
157
										local ToReturn = setmetatable({},{
158
											__index = function (self,Index)
159
												if type(Real[Index]) == "function" then return function (self,...) return Real[Index](Real,...)end end
160
												return Real[Index]
161
											end;
162
											__newindex = function (self,Index,Value)
163
												if InternalData.RealObjs[Value] then Value = InternalData.RealObjs[Value] end
164
												if Value == owner then Value = InternalData.RealOwner end
165
												Real[Index] = Value
166
											end;
167
											__tostring = function(self) return tostring(Real) end;
168
										})
169
										InternalData.RealObjs[ToReturn] = Real;return ToReturn;
170
									end
171
								end
172
								return function (self,...) return Real[Index](Real,...)end
173
							end
174
							return Real[Index]
175
						end;
176
						__newindex = function (self,Index,Value)
177
							if InternalData.RealObjs[Value] then Value = InternalData.RealObjs[Value] end
178
							if Value == owner then Value = InternalData.RealOwner end
179
							Real[Index] = Value
180
						end;
181
						__tostring = function(self) return tostring(Real) end;
182
					})
183
					InternalData.RealObjs[ToReturn] = Real;InternalData.SoundLoudness[Real] = 0;repeat wait() until InternalData.Event.Parent InternalData.Event:FireClient(InternalData.RealOwner,{"NewSound",Real}) return ToReturn;
184
				else
185
					local ToReturn = setmetatable({RealObject = Real},{
186
						__index = function (self,Index)
187
							if type(Real[Index]) == "function" then
188
								if Index:lower() == "clone" then
189
									return function (self)
190
										local Real = Real:Clone()
191
										local ToReturn = setmetatable({},{
192
											__index = function (self,Index)
193
												if type(Real[Index]) == "function" then return function (self,...) return Real[Index](Real,...)end end
194
												return Real[Index]
195
											end;
196
											__newindex = function (self,Index,Value)
197
												if InternalData.RealObjs[Value] then Value = InternalData.RealObjs[Value] end
198
												if Value == owner then Value = InternalData.RealOwner end
199
												Real[Index] = Value
200
											end;
201
											__tostring = function(self) return tostring(Real) end;
202
										})
203
										InternalData.RealObjs[ToReturn] = Real;return ToReturn;
204
									end
205
								end
206
								return function (self,...) return Real[Index](Real,...)end
207
							end
208
							return Real[Index]
209
						end;
210
						__newindex = function (self,Index,Value)
211
							if InternalData.RealObjs[Value] then Value = InternalData.RealObjs[Value] end
212
							if Value == owner then Value = InternalData.RealOwner end
213
							Real[Index] = Value
214
						end;
215
						__tostring = function(self) return tostring(Real) end;
216
					})
217
					InternalData.RealObjs[ToReturn] = Real;return ToReturn;
218
				end
219
			end
220
		end
221
		return InternalData.RealInstance[Index]
222
	end;
223
	__tostring = function(self) return tostring(InternalData.RealInstance) end;
224
});
225
InternalData.RealGame = game;game = setmetatable({},{
226
	__index = function (self,Index)
227
		if InternalData.RealGame[Index] then
228
			local Type = type(InternalData.RealGame[Index])
229
			if Type == "function" then
230
				if Index:lower() == "getservice" or Index:lower() == "service" then
231
					return function (self,Service)
232
						local FakeServices = {
233
							["players"] = function()
234
								return setmetatable({},{
235
									__index = function (self2,Index2)
236
										local RealService = InternalData.RealGame:GetService(Service)
237
										local Type2 = type(RealService[Index2])
238
										if Type2 == "function" then
239
											return function (self,...) return RealService[Index2](RealService,...)end
240
										else
241
											if Index2:lower() == "localplayer" then return InternalData.NewOwner end
242
											return RealService[Index2]
243
										end
244
									end;
245
									__tostring = function(self) return tostring(InternalData.RealGame:GetService(Service)) end
246
								})
247
							end;
248
							["contextactionservice"] = function() return InternalData["ContextActionService"] end;
249
							["userinputservice"] = function() return InternalData["UserInputService"] end;
250
							["debris"] = function()
251
								return setmetatable({},{
252
									__index = function(self2,Index2)
253
										local RealService = InternalData.RealGame:GetService(Service)
254
										local Type2 = type(RealService[Index2])
255
										if Type2 == "function" then
256
											if Index2:lower() == "additem" then
257
												return function (self,Item,Time)
258
													if InternalData.RealObjs[Item] then Item = InternalData.RealObjs[Item] end
259
													return RealService:AddItem(Item,Time)
260
												end
261
											end
262
											return function (self,...) return RealService[Index2](RealService,...) end
263
										end
264
										return RealService[Index2]
265
									end;
266
									__tostring = function(self) return tostring(InternalData.RealGame:GetService("Debris")) end
267
								})
268
							end;
269
							["runservice"] = function()
270
								return setmetatable({},{
271
									__index = function(self2,Index2)
272
										local RealService = InternalData.RealGame:GetService(Service)
273
										local Type2 = type(RealService[Index2])
274
										if Type2 == "function" then
275
											return function (self,...) return RealService[Index2](RealService,...) end
276
										else
277
											local RunServices = {
278
												["bindtorenderstep"] = function() return function (self,Name,Priority,Function) return InternalData.RealGame:GetService("RunService").Stepped:Connect(Function) end end;
279
												["renderstepped"] = function() return RealService["Stepped"] end
280
											}
281
											if RunServices[Index2:lower()] then return RunServices[Index2:lower()]() end
282
											return RealService[Index2]
283
										end
284
									end;
285
									__tostring = function(self) return tostring(InternalData.RealGame:GetService("RunService")) end
286
								})
287
							end
288
						}
289
						if FakeServices[Service:lower()] then return FakeServices[Service:lower()]() end
290
						return InternalData.RealGame:GetService(Service)
291
					end
292
				end
293
				return function (self,...) return InternalData.RealGame[Index](InternalData.RealGame,...) end
294
			else
295
				if game:GetService(Index) then return game:GetService(Index) end
296
				return InternalData.RealGame[Index]
297
			end
298
		end
299
		return nil
300
	end;
301
	__tostring = function(self) return tostring(InternalData.game) end
302
});Game = game;owner = game:GetService("Players").LocalPlayer;script = Instance.new("Script");print("Complete!")
303
304
--[wip]--
305
306
--[[ The Brutal Furry (DEMO .1), by SezHu and Nebula_Zorua ]]--
307
--[[ Animation work by SezHu, attacks by Nebula_Zorua ]]--
308
309
--[[ I also made some things less stiff ~Nebula ]]--
310
311
wait(1 / 60)
312
Effects = { }
313
local Player = game:service'Players'.localPlayer
314
local Mouse = Player:GetMouse()
315
local Character = Player.Character
316
local Humanoid = Character.Humanoid
317
local Head = Character.Head
318
local RootPart = Character.HumanoidRootPart
319
local Torso = Character.Torso
320
local LeftArm = Character["Left Arm"]
321
local RightArm = Character["Right Arm"]
322
local LeftLeg = Character["Left Leg"]
323
local RightLeg = Character["Right Leg"]
324
local Camera = game.Workspace.CurrentCamera
325
local RootJoint = RootPart.RootJoint
326
local Equipped = false
327
local Attack = false
328
local Anim = 'Idle'
329
local Idle = 0
330
local Combo = 1
331
local TorsoVelocity = (RootPart.Velocity * Vector3.new(1, 0, 1)).magnitude 
332
local Velocity = RootPart.Velocity.y
333
local Sine = 0
334
local Change = 1
335
local UIS = game:GetService("UserInputService") 
336
337
local Climbing = false
338
local ClimbPos;
339
340
spawn(function()
341
    while true do
342
	swait()
343
	Sine = Sine + Change
344
end
345
end)
346
347
local RbxUtility = LoadLibrary("RbxUtility")
348
local Create = RbxUtility.Create
349
350
Humanoid.WalkSpeed = 35
351
Humanoid.JumpPower = 70
352
Humanoid.Animator.Parent = nil
353
Character.Animate.Parent = nil
354
355
local newMotor = function(part0, part1, c0, c1)
356
	local w = Create('Motor'){
357
		Parent = part0,
358
		Part0 = part0,
359
		Part1 = part1,
360
		C0 = c0,
361
		C1 = c1,
362
	}
363
	return w
364
end
365
366
367
368
function clerp(a, b, t)
369
	return a:lerp(b, t)
370
end
371
372
RootCF = CFrame.fromEulerAnglesXYZ(-1.57, 0, 3.14)
373
NeckCF = CFrame.new(0, 1, 0, -1, -0, -0, 0, 0, 1, 0, 1, 0)
374
375
local RW = newMotor(Torso, RightArm, CFrame.new(1.5, 0, 0), CFrame.new(0, 0, 0)) 
376
local LW = newMotor(Torso, LeftArm, CFrame.new(-1.5, 0, 0), CFrame.new(0, 0, 0))
377
local RH = newMotor(Torso, RightLeg, CFrame.new(.5, -2, 0), CFrame.new(0, 0, 0))
378
local LH = newMotor(Torso, LeftLeg, CFrame.new(-.5, -2, 0), CFrame.new(0, 0, 0))
379
RootJoint.C1 = CFrame.new(0, 0, 0)
380
RootJoint.C0 = CFrame.new(0, 0, 0)
381
Torso.Neck.C1 = CFrame.new(0, 0, 0)
382
Torso.Neck.C0 = CFrame.new(0, 1.5, 0)
383
384
local rarmc1 = RW.C1
385
local larmc1 = LW.C1
386
local rlegc1 = RH.C1
387
local llegc1 = LH.C1
388
389
local resetc1 = false
390
391
function PlayAnimationFromTable(table, speed, bool)
392
	RootJoint.C0 = clerp(RootJoint.C0, table[1], speed) 
393
	Torso.Neck.C0 = clerp(Torso.Neck.C0, table[2], speed) 
394
	RW.C0 = clerp(RW.C0, table[3], speed) 
395
	LW.C0 = clerp(LW.C0, table[4], speed) 
396
	RH.C0 = clerp(RH.C0, table[5], speed) 
397
	LH.C0 = clerp(LH.C0, table[6], speed) 
398
	if bool == true then
399
		if resetc1 == false then
400
			resetc1 = true
401
			RootJoint.C1 = RootJoint.C1
402
			Torso.Neck.C1 = Torso.Neck.C1
403
			RW.C1 = rarmc1
404
			LW.C1 = larmc1
405
			RH.C1 = rlegc1
406
			LH.C1 = llegc1
407
		end
408
	end
409
end
410
411
ArtificialHB = Create("BindableEvent"){
412
	Parent = script,
413
	Name = "Heartbeat",
414
}
415
416
script:WaitForChild("Heartbeat")
417
418
frame = 1 / 60
419
tf = 0
420
allowframeloss = false
421
tossremainder = false
422
lastframe = tick()
423
script.Heartbeat:Fire()
424
425
game:GetService("RunService").Heartbeat:connect(function(s, p)
426
	tf = tf + s
427
	if tf >= frame then
428
		if allowframeloss then
429
			script.Heartbeat:Fire()
430
			lastframe = tick()
431
		else
432
			for i = 1, math.floor(tf / frame) do
433
				script.Heartbeat:Fire()
434
			end
435
			lastframe = tick()
436
		end
437
		if tossremainder then
438
			tf = 0
439
		else
440
			tf = tf - frame * math.floor(tf / frame)
441
		end
442
	end
443
end)
444
445
function swait(num)
446
	if num == 0 or num == nil then
447
		ArtificialHB.Event:wait()
448
	else
449
		for i = 0, num do
450
			ArtificialHB.Event:wait()
451
		end
452
	end
453
end
454
455
local m = Create("Model"){
456
	Parent = Character,
457
	Name = "WeaponModel"
458
}
459
460
461
462
function RemoveOutlines(part)
463
	part.TopSurface, part.BottomSurface, part.LeftSurface, part.RightSurface, part.FrontSurface, part.BackSurface = 10, 10, 10, 10, 10, 10
464
end
465
	
466
CFuncs = {	
467
	Part = {
468
		Create = function(Parent, Material, Reflectance, Transparency, BColor, Name, Size)
469
			local Part = Create("Part"){
470
				Parent = Parent,
471
				Reflectance = Reflectance,
472
				Transparency = Transparency,
473
				CanCollide = false,
474
				Locked = true,
475
				BrickColor = BrickColor.new(tostring(BColor)),
476
				Name = Name,
477
				Size = Size,
478
				Material = Material,
479
			}
480
			RemoveOutlines(Part)
481
			if Size == Vector3.new() then
482
				Part.Size = Vector3.new(0.2, 0.2, 0.2)
483
			else
484
				Part.Size = Size
485
			end
486
			return Part
487
		end;
488
	};
489
	
490
	Mesh = {
491
		Create = function(Mesh, Part, MeshType, MeshId, OffSet, Scale)
492
			local Msh = Create(Mesh){
493
				Parent = Part,
494
				Offset = OffSet,
495
				Scale = Scale,
496
			}
497
			if Mesh == "SpecialMesh" then
498
				Msh.MeshType = MeshType
499
				Msh.MeshId = MeshId
500
			end
501
			return Msh
502
		end;
503
	};
504
505
	Weld = {
506
		Create = function(Parent, Part0, Part1, C0, C1)
507
			local Weld = Create("Weld"){
508
				Parent = Parent,
509
				Part0 = Part0,
510
				Part1 = Part1,
511
				C0 = C0,
512
				C1 = C1,
513
			}
514
			return Weld
515
		end;
516
	};
517
518
	Sound = {
519
		Create = function(id, par, vol, pit) 
520
			coroutine.resume(coroutine.create(function()
521
				local S = Create("Sound"){
522
					Volume = vol,
523
					Pitch = pit or 1,
524
					SoundId = "rbxassetid://" .. id,
525
					Parent = par or workspace,
526
				}
527
				wait() 
528
				S:play() 
529
				game:GetService("Debris"):AddItem(S, 10)
530
			end))
531
		end;
532
	};
533
	
534
	ParticleEmitter = {
535
		Create = function(Parent, Color1, Color2, LightEmission, Size, Texture, Transparency, ZOffset, Accel, Drag, LockedToPart, VelocityInheritance, EmissionDirection, Enabled, LifeTime, Rate, Rotation, RotSpeed, Speed, VelocitySpread)
536
			local Particle = Create("ParticleEmitter"){
537
				Parent = Parent,
538
				Color = ColorSequence.new(Color1, Color2),
539
				LightEmission = LightEmission,
540
				Size = Size,
541
				Texture = Texture,
542
				Transparency = Transparency,
543
				ZOffset = ZOffset,
544
				Acceleration = Accel,
545
				Drag = Drag,
546
				LockedToPart = LockedToPart,
547
				VelocityInheritance = VelocityInheritance,
548
				EmissionDirection = EmissionDirection,
549
				Enabled = Enabled,
550
				Lifetime = LifeTime,
551
				Rate = Rate,
552
				Rotation = Rotation,
553
				RotSpeed = RotSpeed,
554
				Speed = Speed,
555
				VelocitySpread = VelocitySpread,
556
			}
557
			return Particle
558
		end;
559
	};
560
	
561
	CreateTemplate = {
562
		
563
	};
564
}
565
566
567
rCHandle2=CFuncs.Part.Create(m,Enum.Material.SmoothPlastic,0,1,"Medium stone grey","CHandle2",Vector3.new(0.430001736, 0.679999948, 0.299999684))
568
rCHandle2Weld=CFuncs.Weld.Create(m,Character["Left Arm"],rCHandle2,CFrame.new(0, 0, 0, 1, 0, 0, 0, 1, 0, 0, 0, 1),CFrame.new(0.0650009513, -0.0299911499, 0.555044532, 0, 0, 1, 1, 0, 0, 0, 1, 0))
569
CHandle2=CFuncs.Part.Create(m,Enum.Material.SmoothPlastic,0,1,"Medium stone grey","CHandle2",Vector3.new(0.430001736, 0.679999948, 0.299999684))
570
CHandle2Weld=CFuncs.Weld.Create(m,rCHandle2,CHandle2,CFrame.new(0, 0, 0, 1, 0, 0, 0, 1, 0, 0, 0, 1),CFrame.new(0.0650009513, -0.0299911499, 0.555044532, 0, 0, 1, 1, 0, 0, 0, 1, 0))
571
Claw2=CFuncs.Part.Create(m,Enum.Material.SmoothPlastic,0,0,"Really black","Claw2",Vector3.new(0.430001736, 0.829999924, 1.31999958))
572
Claw2Weld=CFuncs.Weld.Create(m,CHandle2,Claw2,CFrame.new(0, 0, 0, 1, 0, 0, 0, 1, 0, 0, 0, 1),CFrame.new(-0.414048076, -0.0255355835, 0.581350505, 1, 0, 0, 0, -1, 0, 0, 0, -1))
573
CFuncs.Mesh.Create("SpecialMesh",Claw2,Enum.MeshType.FileMesh,"rbxassetid://10681506",Vector3.new(0, 0, 0),Vector3.new(1, 1, 0.800000012))
574
575
576
rCHandle1=CFuncs.Part.Create(m,Enum.Material.SmoothPlastic,0,1,"Medium stone grey","CHandle1",Vector3.new(0.430001736, 0.679999948, 0.299999684))
577
rCHandle1Weld=CFuncs.Weld.Create(m,Character["Right Arm"],rCHandle1,CFrame.new(0, 0, 0, 1, 0, 0, 0, 1, 0, 0, 0, 1),CFrame.new(0.0650009513, -0.00206756592, 0.555044532, 0, 0, 1, 1, 0, 0, 0, 1, 0))
578
CHandle1=CFuncs.Part.Create(m,Enum.Material.SmoothPlastic,0,1,"Medium stone grey","CHandle1",Vector3.new(0.430001736, 0.679999948, 0.299999684))
579
CHandle1Weld=CFuncs.Weld.Create(m,rCHandle1,CHandle1,CFrame.new(0, 0, 0, 1, 0, 0, 0, 1, 0, 0, 0, 1),CFrame.new(0.0650009513, -0.00206756592, 0.555044532, 0, 0, 1, 1, 0, 0, 0, 1, 0))
580
Claw1=CFuncs.Part.Create(m,Enum.Material.SmoothPlastic,0,0,"Really black","Claw1",Vector3.new(0.430001736, 0.829999924, 1.31999958))
581
Claw1Weld=CFuncs.Weld.Create(m,CHandle1,Claw1,CFrame.new(0, 0, 0, 1, 0, 0, 0, 1, 0, 0, 0, 1),CFrame.new(-0.414048076, -0.0255355835, 0.581350505, 1, 0, 0, 0, -1, 0, 0, 0, -1))
582
CFuncs.Mesh.Create("SpecialMesh",Claw1,Enum.MeshType.FileMesh,"rbxassetid://10681506",Vector3.new(0, 0, 0),Vector3.new(1, 1, 0.800000012))
583
584
function RayCast(Position, Direction, Range, Ignore)
585
	return workspace:FindPartOnRay(Ray.new(Position, Direction.unit * (Range or 999.999)), Ignore) 
586
end 
587
588
function RayCastWithList(Position, Direction, Range, Ignore)
589
	return workspace:FindPartOnRayWithIgnoreList(Ray.new(Position, Direction.unit * (Range or 999.999)), Ignore) 
590
end 
591
592
function GetTorso(char)
593
	return char:FindFirstChild'Torso' or char:FindFirstChild'UpperTorso'
594
end
595
596
FindNearestTorso = function(pos,range)
597
	local torso,dist=nil,nil or range;
598
	for _,v in next, workspace:children() do
599
		if(v.Name ~= 'CKbackup' and v.Name ~= 'SezHu' and v.Name ~= 'Salvo_Starly' and v.Name ~= 'Nebula_Zorua' and v ~= Character and GetTorso(v) and v:FindFirstChildOfClass'Humanoid')then
600
			if v:FindFirstChildOfClass('Humanoid').Health > 0 then
601
			if((pos-GetTorso(v).Position).magnitude < dist)then
602
				torso = GetTorso(v)
603
				dist = (pos-GetTorso(v).Position).magnitude
604
			end
605
		end
606
	end
607
end
608
	return torso, dist
609
end
610
611
function Damage(Part, hit, minim, maxim, knockback, Type, Property, Delay, HitSound, HitPitch)
612
	if hit.Parent == nil then
613
		return
614
	end
615
	local h = hit.Parent:FindFirstChild("Humanoid")
616
	for _, v in pairs(hit.Parent:children()) do
617
		if v:IsA("Humanoid") then
618
			h = v
619
		end
620
	end
621
	if h ~= nil and hit.Parent.Name ~= Character.Name and hit.Parent:FindFirstChild("Torso") ~= nil then
622
		if hit.Parent:findFirstChild("DebounceHit") ~= nil then
623
			if hit.Parent.DebounceHit.Value == true then
624
				return
625
			end
626
		end
627
		local c = Create("ObjectValue"){
628
			Name = "creator",
629
			Value = game:service("Players").LocalPlayer,
630
			Parent = h,
631
		}
632
		game:GetService("Debris"):AddItem(c, .5)
633
		if HitSound ~= nil and HitPitch ~= nil then
634
			CFuncs.Sound.Create(HitSound, hit, 1, HitPitch) 
635
		end
636
		local Damage = math.random(minim, maxim)
637
		local blocked = false
638
		local block = hit.Parent:findFirstChild("Block")
639
		if block ~= nil then
640
			if block.className == "IntValue" then
641
				if block.Value > 0 then
642
					blocked = true
643
					block.Value = block.Value - 1
644
					print(block.Value)
645
				end
646
			end
647
		end
648
		if blocked == false then
649
			h.Health = h.Health - Damage
650
			ShowDamage((Part.CFrame * CFrame.new(0, 0, (Part.Size.Z / 2)).p + Vector3.new(0, 1.5, 0)), -Damage, 1.5, BrickColor.new("Really black").Color)
651
		else
652
			h.Health = h.Health - (Damage / 2)
653
			ShowDamage((Part.CFrame * CFrame.new(0, 0, (Part.Size.Z / 2)).p + Vector3.new(0, 1.5, 0)), -Damage, 1.5, BrickColor.new("Really black").Color)
654
		end
655
		if Type == "Knockdown" then
656
			local hum = hit.Parent.Humanoid
657
			hum.PlatformStand = true
658
			coroutine.resume(coroutine.create(function(HHumanoid)
659
				swait(1)
660
				HHumanoid.PlatformStand = false
661
			end), hum)
662
			local angle = (hit.Position - (Property.Position + Vector3.new(0, 0, 0))).unit
663
			local bodvol = Create("BodyVelocity"){
664
				velocity = angle * knockback,
665
				P = 5000,
666
				maxForce = Vector3.new(8e+003, 8e+003, 8e+003),
667
				Parent = hit,
668
			}
669
			local rl = Create("BodyAngularVelocity"){
670
				P = 3000,
671
				maxTorque = Vector3.new(500000, 500000, 500000) * 50000000000000,
672
				angularvelocity = Vector3.new(math.random(-10, 10), math.random(-10, 10), math.random(-10, 10)),
673
				Parent = hit,
674
			}
675
			game:GetService("Debris"):AddItem(bodvol, .5)
676
			game:GetService("Debris"):AddItem(rl, .5)
677
		elseif Type == "Normal" then
678
			local vp = Create("BodyVelocity"){
679
				P = 500,
680
				maxForce = Vector3.new(math.huge, 0, math.huge),
681
				velocity = Property.CFrame.lookVector * knockback + Property.Velocity / 1.05,
682
			}
683
			if knockback > 0 then
684
				vp.Parent = hit.Parent.Torso
685
			end
686
687
		elseif Type == "Up" then
688
			local bodyVelocity = Create("BodyVelocity"){
689
				velocity = Vector3.new(0, 20, 0),
690
				P = 5000,
691
				maxForce = Vector3.new(8e+003, 8e+003, 8e+003),
692
				Parent = hit,
693
			}
694
			game:GetService("Debris"):AddItem(bodyVelocity, .5)
695
		elseif Type == "DarkUp" then
696
			coroutine.resume(coroutine.create(function()
697
				for i = 0, 1, 0.1 do
698
					swait()
699
					Effects.Block.Create(BrickColor.new("Black"), hit.Parent.Torso.CFrame, 5, 5, 5, 1, 1, 1, .08, 1)
700
				end
701
			end))
702
			local bodyVelocity = Create("BodyVelocity"){
703
				velocity = Vector3.new(0, 20, 0),
704
				P = 5000,
705
				maxForce = Vector3.new(8e+003, 8e+003, 8e+003),
706
				Parent = hit,
707
			}
708
			game:GetService("Debris"):AddItem(bodyVelocity, 1)
709
		elseif Type == "Snare" then
710
			local bp = Create("BodyPosition"){
711
				P = 2000,
712
				D = 100,
713
				maxForce = Vector3.new(math.huge, math.huge, math.huge),
714
				position = hit.Parent.Torso.Position,
715
				Parent = hit.Parent.Torso,
716
			}
717
			game:GetService("Debris"):AddItem(bp, 1)
718
		elseif Type == "Freeze" then
719
			local BodPos = Create("BodyPosition"){
720
				P = 50000,
721
				D = 1000,
722
				maxForce = Vector3.new(math.huge, math.huge, math.huge),
723
				position = hit.Parent.Torso.Position,
724
				Parent = hit.Parent.Torso,
725
			}
726
			local BodGy = Create("BodyGyro") {
727
				maxTorque = Vector3.new(4e+005, 4e+005, 4e+005) * math.huge ,
728
				P = 20e+003,
729
				Parent = hit.Parent.Torso,
730
				cf = hit.Parent.Torso.CFrame,
731
			}
732
			hit.Parent.Torso.Anchored = true
733
			coroutine.resume(coroutine.create(function(Part) 
734
				swait(1.5)
735
				Part.Anchored = false
736
			end), hit.Parent.Torso)
737
			game:GetService("Debris"):AddItem(BodPos, 3)
738
			game:GetService("Debris"):AddItem(BodGy, 3)
739
		end
740
		local debounce = Create("BoolValue"){
741
			Name = "DebounceHit",
742
			Parent = hit.Parent,
743
			Value = true,
744
		}
745
		game:GetService("Debris"):AddItem(debounce, Delay)
746
		c = Create("ObjectValue"){
747
			Name = "creator",
748
			Value = Player,
749
			Parent = h,
750
		}
751
		game:GetService("Debris"):AddItem(c, .5)
752
	end
753
end
754
755
function ShowDamage(Pos, Text, Time, Color)
756
	local Rate = (1 / 30)
757
	local Pos = (Pos or Vector3.new(0, 0, 0))
758
	local Text = (Text or "")
759
	local Time = (Time or 2)
760
	local Color = (Color or Color3.new(1, 0, 1))
761
	local EffectPart = CFuncs.Part.Create(workspace, "SmoothPlastic", 0, 1, BrickColor.new(Color), "Effect", Vector3.new(0, 0, 0))
762
	EffectPart.Anchored = true
763
	local BillboardGui = Create("BillboardGui"){
764
		Size = UDim2.new(3, 0, 3, 0),
765
		Adornee = EffectPart,
766
		Parent = EffectPart,
767
	}
768
	local TextLabel = Create("TextLabel"){
769
		BackgroundTransparency = 1,
770
		Size = UDim2.new(1, 0, 1, 0),
771
		Text = Text,
772
		Font = "SciFi",
773
		TextColor3 = Color,
774
		TextScaled = true,
775
		Parent = BillboardGui,
776
	}
777
	game.Debris:AddItem(EffectPart, (Time))
778
	EffectPart.Parent = game:GetService("Workspace")
779
	delay(0, function()
780
		local Frames = (Time / Rate)
781
		for Frame = 1, Frames do
782
			wait(Rate)
783
			local Percent = (Frame / Frames)
784
			EffectPart.CFrame = CFrame.new(Pos) + Vector3.new(0, Percent, 0)
785
			TextLabel.TextTransparency = Percent
786
		end
787
		if EffectPart and EffectPart.Parent then
788
			EffectPart:Destroy()
789
		end
790
	end)
791
end
792
793
function MagnitudeDamage(Part, Magnitude, MinimumDamage, MaximumDamage, KnockBack, Type, HitSound, HitPitch)
794
	for _, c in pairs(workspace:children()) do
795
		local hum = c:findFirstChild("Humanoid")
796
		if hum ~= nil then
797
			local head = c:findFirstChild("Torso")
798
			if head ~= nil then
799
				local targ = head.Position - Part.Position
800
				local mag = targ.magnitude
801
				if mag <= Magnitude and c.Name ~= Player.Name then 
802
					Damage(head, head, MinimumDamage, MaximumDamage, KnockBack, Type, RootPart, .1, "rbxassetid://" .. HitSound, HitPitch)
803
				end
804
			end
805
		end
806
	end
807
end
808
809
EffectModel = Create("Model"){
810
	Parent = Character,
811
	Name = "EffectModel",
812
}
813
814
Effects = {
815
	Block = {
816
		Create = function(brickcolor, cframe, x1, y1, z1, x3, y3, z3, delay, Type, Part)
817
			local prt = CFuncs.Part.Create(EffectModel, "Neon", 0, 0, brickcolor, "Effect", Vector3.new())
818
			prt.Anchored = true
819
			prt.CFrame = cframe
820
			msh = CFuncs.Mesh.Create("BlockMesh", prt, "", "", Vector3.new(0, 0, 0), Vector3.new(x1, y1, z1))
821
			game:GetService("Debris"):AddItem(prt, 10)
822
			if Type == 1 or Type == nil then
823
				table.insert(Effects, {
824
					prt,
825
					"Block1",
826
					delay,
827
					x3,
828
					y3,
829
					z3,
830
					msh
831
				})
832
			elseif Type == 2 then
833
				table.insert(Effects, {
834
					prt,
835
					"Block2",
836
					delay,
837
					x3,
838
					y3,
839
					z3,
840
					msh
841
				})
842
			elseif Type == 3 then
843-
	ripntear.SoundId = "rbxassetid://1289912324"
843+
844
					prt,
845
					"Block3",
846
					delay,
847
					x3,
848
					y3,
849
					z3,
850
					msh,
851
					Part
852
				})
853
			elseif Type == 4 then
854
				table.insert(Effects, {
855
					prt,
856
					"Block2Fire",
857
					delay,
858
					x3,
859
					y3,
860
					z3,
861-
		CFuncs.Sound.Create("1499494641", CHandle1, 1, 1)
861+
862
				})
863
			end
864
		end
865
	};
866
867
	Sphere = {
868
		Create = function(brickcolor, cframe, x1, y1, z1, x3, y3, z3, delay, parent)
869
			local prt = CFuncs.Part.Create(EffectModel, "Neon", 0, 0, brickcolor, "Effect", Vector3.new())
870
			prt.Anchored = true
871
			prt.CFrame = cframe
872
			if parent == nil then
873
				prt.Parent = workspace
874
			else
875-
		CFuncs.Sound.Create("1499494641", CHandle2, 1, .9)
875+
876
			end
877
			local msh = CFuncs.Mesh.Create("SpecialMesh", prt, "Sphere", "", Vector3.new(0, 0, 0), Vector3.new(x1, y1, z1))
878
			game:GetService("Debris"):AddItem(prt, 10)
879
			table.insert(Effects, {
880
				prt,
881
				"Cylinder",
882
				delay,
883
				x3,
884
				y3,
885
				z3,
886
				msh
887
			})
888
		end
889
	};
890
891
	Blood = {
892
		Create = function(brickcolor, cframe, x1, y1, z1, x3, y3, z3, delay)
893
			local prt = CFuncs.Part.Create(EffectModel, "Neon", 0, 0, brickcolor, "Effect", Vector3.new())
894
			prt.Anchored = true
895
			prt.CFrame = cframe
896
			local msh = CFuncs.Mesh.Create("SpecialMesh", prt, "Sphere", "", Vector3.new(0, 0, 0), Vector3.new(x1, y1, z1))
897
			game:GetService("Debris"):AddItem(prt, 10)
898
			table.insert(Effects, {
899
				prt,
900
				"Blood",
901
				delay,
902
				x3,
903-
	CFuncs.Sound.Create("834658541", Torso, 5, .8)	
903+
904
				z3,
905
				msh
906
			})
907
		end
908
	};
909
910
	Blast = {
911
		Create = function(brickcolor, cframe, x1, y1, z1, x3, y3, z3, delay, Part)
912
			local prt = CFuncs.Part.Create(EffectModel, "Neon", 0, 0, brickcolor, "Effect", Vector3.new())
913
			prt.Anchored = true
914
			prt.CFrame = cframe
915
			local msh = CFuncs.Mesh.Create("SpecialMesh", prt, "FileMesh", "1323306", Vector3.new(0, 0, 0), Vector3.new(x1, y1, z1))
916
			game:GetService("Debris"):AddItem(prt, 10)
917
			table.insert(Effects, {
918
				prt,
919
				"Block4",
920
				delay,
921
				x3,
922
				y3,
923
				z3,
924
				msh,
925
				Part
926
			})
927
		end
928
	};
929
930
	Ring = {
931
		Create = function(brickcolor, cframe, x1, y1, z1, x3, y3, z3, delay)
932
			local prt = CFuncs.Part.Create(EffectModel, "Neon", 0, 0, brickcolor, "Effect", Vector3.new(0.5, 0.5, 0.5))
933
			prt.Anchored = true
934
			prt.CFrame = cframe
935
			local msh = CFuncs.Mesh.Create("SpecialMesh", prt, "FileMesh", "3270017", Vector3.new(0, 0, 0), Vector3.new(x1, y1, z1))
936
			game:GetService("Debris"):AddItem(prt, 10)
937
			table.insert(Effects, {
938
				prt,
939
				"Cylinder",
940
				delay,
941
				x3,
942
				y3,
943
				z3,
944
				msh
945
			})
946
		end
947
	};
948
949
	Cylinder = {
950
		Create = function(brickcolor, cframe, x1, y1, z1, x3, y3, z3, delay)
951
			local prt = CFuncs.Part.Create(EffectModel, "Neon", 0, 0, brickcolor, "Effect", Vector3.new())
952
			prt.Anchored = true
953
			prt.CFrame = cframe
954
			local msh = CFuncs.Mesh.Create("CylinderMesh", prt, "", "", Vector3.new(0, 0, 0), Vector3.new(x1, y1, z1))
955
			game:GetService("Debris"):AddItem(prt, 10)
956
			table.insert(Effects, {
957
				prt,
958
				"Cylinder",
959
				delay,
960
				x3,
961
				y3,
962
				z3,
963
				msh
964
			})
965
		end
966
	};
967
968
	Head = {
969
		Create = function(brickcolor, cframe, x1, y1, z1, x3, y3, z3, delay)
970
			local prt = CFuncs.Part.Create(EffectModel, "Neon", 0, 0, brickcolor, "Effect", Vector3.new())
971
			prt.Anchored = true
972
			prt.CFrame = cframe
973
			local msh = CFuncs.Mesh.Create("SpecialMesh", prt, "Head", "", Vector3.new(0, 0, 0), Vector3.new(x1, y1, z1))
974
			game:GetService("Debris"):AddItem(prt, 10)
975
			table.insert(Effects, {
976
				prt,
977
				"Cylinder",
978
				delay,
979
				x3,
980
				y3,
981
				z3,
982
				msh
983
			})
984
		end
985
	};
986
987
	Wave = {
988
		Create = function(brickcolor, cframe, x1, y1, z1, x3, y3, z3, delay)
989
			local prt = CFuncs.Part.Create(EffectModel, "Neon", 0, 0, brickcolor, "Effect", Vector3.new())
990
			prt.Anchored = true
991
			prt.CFrame = cframe
992
			local msh = CFuncs.Mesh.Create("SpecialMesh", prt, "FileMesh", "20329976", Vector3.new(0, 0, 0), Vector3.new(x1, y1, z1))
993
			game:GetService("Debris"):AddItem(prt, 10)
994
			table.insert(Effects, {
995
				prt,
996
				"Cylinder",
997
				delay,
998
				x3,
999
				y3,
1000
				z3,
1001
				msh
1002
			})
1003
		end
1004
	};
1005
1006
	Break = {
1007
		Create = function(brickcolor, cframe, x1, y1, z1)
1008
			local prt = CFuncs.Part.Create(EffectModel, "Neon", 0, 0, brickcolor, "Effect", Vector3.new(0.5, 0.5, 0.5))
1009
			prt.Anchored = true
1010
			prt.CFrame = cframe * CFrame.fromEulerAnglesXYZ(math.random(-50, 50), math.random(-50, 50), math.random(-50, 50))
1011
			game:GetService("Debris"):AddItem(prt, 10)
1012
			local msh = CFuncs.Mesh.Create("SpecialMesh", prt, "Sphere", "", Vector3.new(0, 0, 0), Vector3.new(x1, y1, z1))
1013
			local num = math.random(10, 50) / 1000
1014
			table.insert(Effects, {
1015
				prt,
1016
				"Shatter",
1017
				num,
1018
				prt.CFrame,
1019
				math.random() - math.random(),
1020
				0,
1021
				math.random(50, 100) / 100
1022
			})
1023
		end
1024
	};
1025
1026
	Elec = {
1027
		Create = function(brickcolor, cff, x, y, z)
1028
			local prt = CFuncs.Part.Create(EffectModel, "Neon", 0, 0, brickcolor, "Part", Vector3.new(1, 1, 1))
1029
			prt.Anchored = true
1030
			prt.CFrame = cff * CFrame.new(math.random(-x * 100, x * 100) / 100, math.random(-y * 100, y * 100) / 100, math.random(-z * 100, z * 100) / 100)
1031
			prt.CFrame = CFrame.new(prt.Position)
1032
			game:GetService("Debris"):AddItem(prt, 10)
1033
			xval = math.random() / 9
1034
			yval = math.random() / 9
1035
			zval = math.random() / 9
1036
			msh = CFuncs.Mesh.Create("BlockMesh", prt, "", "", Vector3.new(0, 0, 0), Vector3.new(xval, yval, zval))
1037
			eul1 = math.random(-50, 50)
1038
			eul2 = math.random(-50, 50)
1039
			eul3 = math.random(-50, 50)
1040
			euld = CFrame.fromEulerAnglesXYZ(eul1, eul2, eul3)
1041
			euld2 = CFrame.fromEulerAnglesXYZ(-eul1, -eul2, -eul3)
1042
			table.insert(Effects, {
1043
				prt,
1044
				"Elec",
1045
				.05,
1046
				x,
1047
				y,
1048
				z,
1049
				xval,
1050
				yval,
1051
				zval,
1052
				msh,
1053
				euld,
1054
				euld2
1055
			})
1056
		end
1057
	};
1058
1059
	Elec2 = {
1060
		Create = function(brickcolor, cff, x, y, z)
1061
			local prt = CFuncs.Part.Create(EffectModel, "Neon", 0, 0, brickcolor, "Part", Vector3.new(1, 1, 1))
1062
			prt.Anchored = true
1063
			prt.CFrame = cff * CFrame.new(math.random(-x * 100, x * 100) / 100, math.random(-y * 100, y * 100) / 100, math.random(-z * 100, z * 100) / 100)
1064
			prt.CFrame = CFrame.new(prt.Position)
1065
			game:GetService("Debris"):AddItem(prt, 10)
1066
			xval = math.random() / 7
1067
			yval = math.random() / 7
1068
			zval = math.random() / 7
1069
			msh = CFuncs.Mesh.Create("BlockMesh", prt, "", "", Vector3.new(0, 0, 0), Vector3.new(xval, yval, zval))
1070
			eul1 = math.random(-50, 50)
1071
			eul2 = math.random(-50, 50)
1072
			eul3 = math.random(-50, 50)
1073
			euld = CFrame.fromEulerAnglesXYZ(eul1, eul2, eul3)
1074
			euld2 = CFrame.fromEulerAnglesXYZ(-eul1, -eul2, -eul3)
1075
			table.insert(Effects, {
1076
				prt,
1077
				"Elec",
1078
				.1,
1079
				x,
1080
				y,
1081
				z,
1082
				xval,
1083
				yval,
1084
				zval,
1085
				msh,
1086
				euld,
1087
				euld2
1088
			})
1089
		end
1090
	};
1091
1092
	Clone = {
1093-
CFuncs.Sound.Create("429400881", GetTorso(Grabbed), .5, 1)
1093+
1094
			for _, v in pairs(Torso.Parent:children()) do
1095
				if v.className == "Part" and v.Name ~= "HumanoidRootPart" then
1096
					local c = CFuncs.Part.Create(EffectModel, "Neon", 0, .5, BrickColor.new("Bright blue"), "Effect", v.Size)
1097
					c.Anchored = true
1098
					c.CFrame = v.CFrame
1099
					game:GetService("Debris"):AddItem(c, 5)
1100
					local cmsh = nil
1101
					if v.Name == "Head" then
1102
						cmsh = CFuncs.Mesh.Create("SpecialMesh", c, "Head", "", Vector3.new(0, 0, 0), v.Mesh.Scale)
1103
					else
1104
						cmsh = CFuncs.Mesh.Create("BlockMesh", c, "", "", Vector3.new(0, 0, 0), Vector3.new(1, 1, 1))
1105
					end
1106
					table.insert(Effects, {
1107
						c,
1108
						"Cylinder",
1109
						0.05,
1110
						0.1,
1111
						0.1,
1112
						0.1,
1113
						cmsh
1114
					})
1115
				end
1116
			end
1117
		end
1118
	};
1119
1120
	EffectTemplate = {
1121
1122
	};
1123
}
1124
1125
function Attackone()
1126
	Attack = true
1127
	for i = 0, 1, 0.1 do
1128
		swait()
1129
		PlayAnimationFromTable({
1130
			CFrame.new(0, 0, 0) * CFrame.new(0, 0, 0) * CFrame.Angles(0, 0, 0), 
1131
			CFrame.new(0, 1.5, 0) * CFrame.new(0, 0, 0) * CFrame.Angles(0, 0, 0),
1132
			CFrame.new(1.5, 0, 0) * CFrame.new(0, 0, 0) * CFrame.Angles(0, 0, 0),
1133
			CFrame.new(-1.5, 0, 0) * CFrame.new(0, 0, 0) * CFrame.Angles(0, 0, 0),
1134
			CFrame.new(0.5, -2, 0) * CFrame.new(0, 0, 0) * CFrame.Angles(0, 0, 0), 
1135
			CFrame.new(-0.5, -2, 0) * CFrame.new(0, 0, 0) * CFrame.Angles(0, 0, 0), 
1136
		}, .3, false)
1137
	end
1138
	Attack = false
1139
end
1140
1141
Humanoid.WalkSpeed = 0
1142
Humanoid.JumpPower = 0
1143
1144
--Intro bit
1145
	ripntear=Instance.new("Sound", Torso)
1146
	ripntear.SoundId = "rbxassetid://791556666"
1147
	ripntear.TimePosition = 9.2
1148
	ripntear.Looped = true
1149
	ripntear:Play()
1150
if(not game:GetService('RunService'):IsStudio() )then
1151
		for i = 0, 15, 0.1 do
1152
			swait()
1153
			PlayAnimationFromTable({
1154
	         CFrame.new(-0, -0.05818367, -0, 1, 0, 0, 0, 1, 0, 0, 0, 1) * CFrame.new(0, 0 + .05 * math.cos(Sine/20), 0) * CFrame.Angles(0, 0, 0), 
1155
	         CFrame.new(0, 1.55817556, 0, 1, 0, 0, 0, 1, 0, 0, 0, 1) * CFrame.new(0, 0, 0) * CFrame.Angles(0, 0, 0), 
1156
	         CFrame.new(1.61094332, 0.142581686, 0, 0.984807849, -0.173647985, 0, 0.173647985, 0.984807849, 0, 0, 0, 1) * CFrame.new(0, 0 + .03 * math.cos(Sine/20), 0) * CFrame.Angles(0, 0, 0), 
1157
	         CFrame.new(-1.61001778, 0.148382559, 0, 0.984807849, 0.173647985, 0, -0.173647985, 0.984807849, 0, -0, 0, 1) * CFrame.new(0, 0 + .03 * math.cos(Sine/20), 0) * CFrame.Angles(0, 0, 0), 
1158
	         CFrame.new(0.593397617, -1.93364203, 0, 0.996194661, -0.087155968, 0, 0.087155968, 0.996194661, 0, 0, 0, 1) * CFrame.new(0, 0 - .05 * math.cos(Sine/20), 0) * CFrame.Angles(0, 0, 0), 
1159
	         CFrame.new(-0.535535276, -1.93870413, 0, 0.996194661, 0.087155968, 0, -0.087155968, 0.996194661, 0, -0, 0, 1) * CFrame.new(0, 0 - .05 * math.cos(Sine/20), 0) * CFrame.Angles(0, 0, 0), 
1160
			}, .3, false)
1161
			rCHandle2Weld.C0 = clerp(rCHandle2Weld.C0, CFrame.new(0, 0, .5) * CFrame.Angles(math.rad(90), math.rad(90), math.rad(0)), 1)
1162-
		CFuncs.Sound.Create("350906125", Head, 2, 1)
1162+
1163
		end
1164
		CFuncs.Sound.Create("0", CHandle1, 1, 1)
1165
		for i = 0, 3, 0.1 do
1166
			swait()
1167
			PlayAnimationFromTable({
1168
	         CFrame.new(8.69583914e-07, -0.0581835881, 9.53695611e-09, 1.00000954, 1.44541673e-06, -8.33538607e-08, 1.44541673e-06, 1.00000024, -1.63912858e-07, -8.33538607e-08, -1.63912858e-07, 1) * CFrame.new(0, 0 + .05 * math.cos(Sine/20), 0) * CFrame.Angles(0, 0, 0), 
1169
	         CFrame.new(-0.116701782, 1.56846416, -0.0424783528, 0.935734272, -0.321394563, 0.145314857, 0.296198726, 0.939692676, 0.17100963, -0.191512048, -0.116977088, 0.974494457) * CFrame.new(0, 0, 0) * CFrame.Angles(0, 0, 0), 
1170
	         CFrame.new(0.817323148, 0.233033627, -0.785861373, 0.185918838, 0.948464036, 0.256631851, -0.054367777, 0.270715863, -0.96112299, -0.981059968, 0.164737463, 0.101896688) * CFrame.new(0, 0 + .1 * math.cos(Sine/20), 0) * CFrame.Angles(0, 0, 0), 
1171
	         CFrame.new(-0.729675174, 0.474314064, -0.926509023, 0.0858333781, -0.981064856, -0.173649207, -0.0151340002, 0.172986239, -0.984808147, 0.996194661, 0.0871570408, 7.3356756e-07) * CFrame.new(0, 0 - .05 * math.cos(Sine/20), 0) * CFrame.Angles(0, 0, 0), 
1172
	         CFrame.new(0.593403578, -1.9336412, 9.73475267e-07, 0.996204436, -0.0871553719, -8.33538607e-08, 0.0871574283, 0.99619478, -1.63912858e-07, -1.08093566e-07, -1.53640599e-07, 1) * CFrame.new(0, 0 - .05 * math.cos(Sine/20), 0) * CFrame.Angles(0, 0, 0), 
1173
	         CFrame.new(-0.53555274, -1.93870628, 5.9665399e-07, 0.996204019, 0.087158218, -8.33538607e-08, -0.0871545449, 0.996194959, -1.63912858e-07, -6.140138e-08, -1.69793566e-07, 1) * CFrame.new(0, 0 - .05 * math.cos(Sine/20), 0) * CFrame.Angles(0, 0, 0), 
1174
			}, .2, false)
1175
			rCHandle2Weld.C0 = clerp(rCHandle2Weld.C0, CFrame.new(0, 0, .5) * CFrame.Angles(math.rad(90), math.rad(90), math.rad(0)), 1)
1176
			rCHandle1Weld.C0 = clerp(rCHandle1Weld.C0, CFrame.new(.1, 0, .5) * CFrame.Angles(math.rad(90), math.rad(90), math.rad(0)), 1)
1177
		end
1178
		CFuncs.Sound.Create("0", CHandle2, 1, .9)
1179
		for i = 0, 3, 0.1 do
1180
			swait()
1181
			PlayAnimationFromTable({
1182
	         CFrame.new(-0, -0.05818367, -0, 1, 0, 0, 0, 1, 0, 0, 0, 1) * CFrame.new(0, 0 + .05 * math.cos(Sine/20), 0) * CFrame.Angles(0, 0, 0), 
1183
	         CFrame.new(5.96046448e-07, 1.5581758, 8.94069672e-08, 0.813797593, 0.296197921, -0.500000417, -0.342019856, 0.939692736, 1.5155652e-07, 0.469846755, 0.171009943, 0.866025269) * CFrame.new(0, 0, 0) * CFrame.Angles(0, 0, 0), 
1184
	         CFrame.new(0.817315936, 0.23303245, -0.785861254, 0.185915083, 0.891520321, -0.41307044, -0.0543710254, -0.410421133, -0.91027379, -0.981060445, 0.19169265, -0.0278306026) * CFrame.new(0, 0 - .05 * math.cos(Sine/20), 0) * CFrame.Angles(0, 0, 0), 
1185
	         CFrame.new(-0.895561576, 0.130057484, -0.917444825, 0.08583197, -0.981286108, 0.172367394, -0.0151339946, -0.174270019, -0.98458159, 0.996194661, 0.0818999708, -0.029808715) * CFrame.new(0, 0 + .05 * math.cos(Sine/20), 0) * CFrame.Angles(0, 0, 0), 
1186
	         CFrame.new(0.593397737, -1.93364227, 0, 0.996194661, -0.087155968, 0, 0.087155968, 0.996194661, 0, 0, 0, 1) * CFrame.new(0, 0 - .05 * math.cos(Sine/20), 0) * CFrame.Angles(0, 0, 0), 
1187
	         CFrame.new(-0.535535693, -1.93870425, 0, 0.996194661, 0.087155968, 0, -0.087155968, 0.996194661, 0, -0, 0, 1) * CFrame.new(0, 0 - .05 * math.cos(Sine/20), 0) * CFrame.Angles(0, 0, 0), 
1188
			}, .2, false)
1189
			rCHandle2Weld.C0 = clerp(rCHandle2Weld.C0, CFrame.new(0, 0, .5) * CFrame.Angles(math.rad(90), math.rad(90), math.rad(0)), 1)
1190
			rCHandle1Weld.C0 = clerp(rCHandle1Weld.C0, CFrame.new(.1, 0, .5) * CFrame.Angles(math.rad(90), math.rad(90), math.rad(0)), 1)
1191
		end
1192
	
1193
		for i = 0, 2, 0.1 do
1194
			swait()
1195
			PlayAnimationFromTable({
1196
	         CFrame.new(1.18533473e-15, -0.0581837296, 0, 1, -2.03722706e-14, -1.03739239e-11, -2.03722706e-14, 1, 0, -1.03739239e-11, 0, 1) * CFrame.new(0, 0, 0) * CFrame.Angles(0, 0, 0), 
1197
	         CFrame.new(-0.044387538, 1.57391107, -0.046982944, 0.999063015, 0.000371292757, -0.043279916, 0.00926879048, 0.974929214, 0.222322285, 0.0422773995, -0.222515106, 0.974012196) * CFrame.new(0, 0, 0) * CFrame.Angles(0, 0, 0), 
1198
	         CFrame.new(0.961016774, 0.457461864, -0.771075964, 0.185922489, 0.633421421, -0.751139224, -0.0543839224, -0.756662488, -0.651540041, -0.9810583, 0.161985859, -0.106232598) * CFrame.new(0, 0, 0) * CFrame.Angles(0, 0, 0), 
1199
	         CFrame.new(-0.729675055, 0.474317312, -0.926513851, 0.230951563, -0.530287445, 0.815755367, 0.197466299, -0.795426488, -0.572978079, 0.95271641, 0.293414325, -0.0789910555) * CFrame.new(0, 0, 0) * CFrame.Angles(0, 0, 0), 
1200
	         CFrame.new(0.593410492, -1.93365169, 2.15977366e-07, 0.99619478, -0.0871552229, 3.30831256e-08, 0.0871552229, 0.99619472, -1.44655488e-09, -3.28516023e-08, 4.32621761e-09, 1) * CFrame.new(0, 0, 0) * CFrame.Angles(0, 0, 0), 
1201
	         CFrame.new(-0.535539329, -1.93871331, -2.33122776e-07, 0.99619472, 0.0871552229, 1.4071702e-08, -0.0871552229, 0.99619472, -1.1611867e-09, -1.41399426e-08, -7.14521775e-11, 1) * CFrame.new(0, 0, 0) * CFrame.Angles(0, 0, 0), 
1202
			}, .3, false)
1203
			rCHandle2Weld.C0 = clerp(rCHandle2Weld.C0, CFrame.new(0, 0, .5) * CFrame.Angles(math.rad(90), math.rad(90), math.rad(0)), 1)
1204
			rCHandle1Weld.C0 = clerp(rCHandle1Weld.C0, CFrame.new(.1, 0, .5) * CFrame.Angles(math.rad(90), math.rad(90), math.rad(0)), 1)
1205
		end
1206
	CFuncs.Sound.Create("2441069502", Torso, 5, .8)	
1207
			for i = 0, 1, 0.1 do
1208
			swait()
1209
			PlayAnimationFromTable({
1210
	         CFrame.new(1.18533473e-15, -0.0581837296, 0, 1, -2.03722706e-14, -1.03739239e-11, -2.03722706e-14, 1, 0, -1.03739239e-11, 0, 1) * CFrame.new(0, 0, 0) * CFrame.Angles(0, 0, 0), 
1211
	         CFrame.new(-0.044387538, 1.57391107, -0.046982944, 0.999063015, 0.000371292757, -0.043279916, 0.00926879048, 0.974929214, 0.222322285, 0.0422773995, -0.222515106, 0.974012196) * CFrame.new(0, 0, 0) * CFrame.Angles(0, 0, 0), 
1212
	         CFrame.new(0.961016774, 0.457461864, -0.771075964, 0.185922489, 0.633421421, -0.751139224, -0.0543839224, -0.756662488, -0.651540041, -0.9810583, 0.161985859, -0.106232598) * CFrame.new(0, 0, 0) * CFrame.Angles(0, 0, 0), 
1213
	         CFrame.new(-0.729675055, 0.474317312, -0.926513851, 0.230951563, -0.530287445, 0.815755367, 0.197466299, -0.795426488, -0.572978079, 0.95271641, 0.293414325, -0.0789910555) * CFrame.new(0, 0, 0) * CFrame.Angles(0, 0, 0), 
1214
	         CFrame.new(0.593410492, -1.93365169, 2.15977366e-07, 0.99619478, -0.0871552229, 3.30831256e-08, 0.0871552229, 0.99619472, -1.44655488e-09, -3.28516023e-08, 4.32621761e-09, 1) * CFrame.new(0, 0, 0) * CFrame.Angles(0, 0, 0), 
1215
	         CFrame.new(-0.535539329, -1.93871331, -2.33122776e-07, 0.99619472, 0.0871552229, 1.4071702e-08, -0.0871552229, 0.99619472, -1.1611867e-09, -1.41399426e-08, -7.14521775e-11, 1) * CFrame.new(0, 0, 0) * CFrame.Angles(0, 0, 0), 
1216
			}, .3, false)
1217
			rCHandle2Weld.C0 = clerp(rCHandle2Weld.C0, CFrame.new(0, 0, .5) * CFrame.Angles(math.rad(90), math.rad(90), math.rad(0)), 1)
1218
			rCHandle1Weld.C0 = clerp(rCHandle1Weld.C0, CFrame.new(.1, 0, .5) * CFrame.Angles(math.rad(90), math.rad(90), math.rad(0)), 1)
1219
		end
1220
	
1221
		for i = 0, 20, 0.1 do
1222
			swait()
1223
			PlayAnimationFromTable({
1224
	         CFrame.new(4.59512179e-08, -0.0581841692, -5.25265932e-07, 1, -4.84756754e-07, -7.39878601e-07, 7.8975097e-07, 0.866025388, 0.500000298, 3.98364676e-07, -0.500000298, 0.866025388) * CFrame.new(0, 0, 0) * CFrame.Angles(0, 0, 0), 
1225
	         CFrame.new(-0.0125848781, 1.5465194, 0.0267901421, 0.999062896, 0.00414320733, -0.0430841409, -0.0131131858, 0.977599382, -0.210065722, 0.0412486866, 0.210433811, 0.976737618) * CFrame.new(0, 0, 0) * CFrame.Angles(0, 0, 0), 
1226
	         CFrame.new(1.82518578, 0.223591149, 0.169353649, 0.508977115, -0.858815074, 0.0581299476, 0.772701919, 0.426095456, -0.47050482, 0.379307687, 0.284393311, 0.880480766) * CFrame.new(0, 0, 0) * CFrame.Angles(0, 0, 0), 
1227
	         CFrame.new(-1.73227763, 0.286245912, 0.248502895, 0.480647117, 0.87672931, 0.0180043653, -0.732817888, 0.412857741, -0.540857434, -0.481618822, 0.246767595, 0.84092176) * CFrame.new(0, 0, 0) * CFrame.Angles(0, 0, 0), 
1228
	         CFrame.new(0.681391835, -1.88535416, -0.586378455, 0.996194661, -0.087155968, 0, 0.0754792839, 0.862729847, -0.500000238, 0.0435780063, 0.498097569, 0.866025388) * CFrame.new(0, 0, 0) * CFrame.Angles(0, 0, 0), 
1229
	         CFrame.new(-0.606260061, -1.88110352, -0.606883287, 0.996194661, 0.0871560127, 4.12446752e-07, -0.0754791126, 0.862729847, -0.500000298, -0.04357839, 0.498097569, 0.866025388) * CFrame.new(0, 0, 0) * CFrame.Angles(0, 0, 0), 
1230
			}, .3, false)
1231
			rCHandle2Weld.C0 = clerp(rCHandle2Weld.C0, CFrame.new(0, -1.5, .5) * CFrame.Angles(math.rad(90), math.rad(90), math.rad(0)), .3)
1232
			rCHandle1Weld.C0 = clerp(rCHandle1Weld.C0, CFrame.new(.1, -1.5, .5) * CFrame.Angles(math.rad(90), math.rad(90), math.rad(0)), .3)
1233
		end
1234
1235
end
1236
	
1237
Humanoid.WalkSpeed = 35
1238
Humanoid.JumpPower = 70
1239
1240
--Start neccessary functions here
1241
1242
function TraceThing(COLOR,PLACE2) -- thanks shack dadi
1243
	local FADE = EffectModel
1244
	for _, c in pairs(Character:GetChildren()) do
1245
		if c:IsA'BasePart' and c ~= RootPart then
1246
			local DIST = (c.Position-PLACE2).magnitude
1247
			local FADER = c:Clone()
1248
			FADER.Color = COLOR
1249
			FADER.Size = Vector3.new(FADER.Size.X,FADER.Size.Y,DIST)
1250
			FADER.CFrame = CFrame.new(c.Position,PLACE2) * CFrame.new(0,0,-DIST/2)
1251
			FADER.Parent = FADE
1252
			FADER.Anchored = true
1253
			FADER.Transparency = 0.25
1254
			FADER:BreakJoints()
1255
			FADER.Material = "Glass"
1256
			FADER.CanCollide = false
1257
			FADER:ClearAllChildren()
1258
			
1259
			if FADER.Name == "Head" then
1260
				FADER.Size = Vector3.new(1,1,1)
1261
			end
1262
			table.insert(Effects,{FADER,'Disappear',.01})
1263
		end
1264
	end
1265
1266
end
1267
1268
1269
1270
function Shadowdash()
1271
	local target = Mouse.Target;
1272
	if(target and target.Parent and GetTorso(target.Parent))then
1273
		local torso = GetTorso(target.Parent)
1274
		target = target.Parent;
1275
		
1276
		Attack = true
1277
		for _, c in pairs(Character:children()) do
1278
			if c.ClassName == "Part" and c ~= RootPart then
1279
				c.Transparency = 1
1280
			elseif(c:FindFirstChild'Handle')then
1281
				c.Handle.Transparency = 1
1282
			end
1283
		end
1284
		Claw1.Transparency = 1
1285
		Claw2.Transparency = 1
1286
		
1287
		
1288
		TraceThing(Color3.new(0,0,0),torso.Position)
1289
		
1290
		for i = 0, 1, 0.1 do
1291
			swait()
1292
			PlayAnimationFromTable({
1293
				CFrame.new(0, 0, 0) * CFrame.new(0, 0, 0) * CFrame.Angles(0, 0, 0), 
1294
				CFrame.new(0, 1.5, 0) * CFrame.new(0, 0, 0) * CFrame.Angles(0, 0, 0),
1295
				CFrame.new(1.5, 0, 0) * CFrame.new(0, 0, 0) * CFrame.Angles(0, 0, 0),
1296
				CFrame.new(-1.5, 0, 0) * CFrame.new(0, 0, 0) * CFrame.Angles(0, 0, 0),
1297
				CFrame.new(0.5, -2, 0) * CFrame.new(0, 0, 0) * CFrame.Angles(0, 0, 0), 
1298
				CFrame.new(-0.5, -2, 0) * CFrame.new(0, 0, 0) * CFrame.Angles(0, 0, 0), 
1299
			}, .3, false)
1300
		end
1301
		Attack = false
1302
	end
1303
end
1304
1305
function bulgelocated()
1306
	Attack = true
1307
		for i = 0, 1, 0.1 do
1308
		swait()
1309
		PlayAnimationFromTable({
1310
         CFrame.new(-1.08663478e-07, -0.206274316, -0.136812046, 1.00000417, 3.29175322e-07, 4.04612052e-07, 7.4505806e-07, 0.642787039, 0.766044915, -8.52160156e-08, -0.766045034, 0.64278692) * CFrame.new(0, 0, 0) * CFrame.Angles(0, 0, 0), 
1311
         CFrame.new(0, 1.55548012, 0.123723119, 1, 0, 0, 0, 0.965925813, -0.258819401, 0, 0.258819401, 0.965925813) * CFrame.new(0, 0, 0) * CFrame.Angles(0, 0, 0), 
1312
         CFrame.new(1.57330072, 0.258584112, 0.288092852, 0.984807849, -0.0996005088, -0.142243534, 0.157378256, 0.858128428, 0.488720447, 0.0733864158, -0.503681719, 0.860766649) * CFrame.new(0, 0, 0) * CFrame.Angles(0, 0, 0), 
1313
         CFrame.new(-1.59246635, 0.145089045, 0.275537103, 0.984809101, 0.0995962769, 0.142238334, -0.157372132, 0.85812825, 0.488722742, -0.0733837485, -0.503682971, 0.860766172) * CFrame.new(0, 0, 0) * CFrame.Angles(0, 0, 0), 
1314
         CFrame.new(0.593403816, -1.75248098, -0.817190289, 0.996194661, -0.0841870308, -0.0225579366, 0.0789908618, 0.981476307, -0.174541742, 0.0368342325, 0.172095656, 0.984391332) * CFrame.new(0, 0, 0) * CFrame.Angles(0, 0, 0), 
1315
         CFrame.new(-0.53553468, -1.75706613, -0.81932497, 0.996194899, 0.0858291388, 0.0151346531, -0.0789874196, 0.96252948, -0.259418607, -0.0368332267, 0.257236063, 0.965646386) * CFrame.new(0, 0, 0) * CFrame.Angles(0, 0, 0), 
1316
		}, .3, false)
1317
		end
1318
		local Grabbed,Root,RootWeld,GrabWeld;
1319
	Torso.Velocity = RootPart.CFrame.lookVector * 150
1320
	for i = 0, 3, 0.1 do
1321
		swait()
1322
		if(not Grabbed)then 
1323
			Grabbed = FindNearestTorso(Torso.Position,5)
1324
			if(Grabbed)then
1325
				print'owo'
1326
				local torso = Grabbed
1327
				Grabbed=Grabbed.Parent
1328
				local Root = Grabbed:FindFirstChild'HumanoidRootPart'
1329
				local RootWeld
1330
				GrabWeld = Create("Weld"){Parent=torso,Part0=torso,Part1=Torso,C0=CFrame.new(0, -.8, -2) * CFrame.Angles(math.rad(0), math.rad(180), math.rad(0),0)}
1331
				--GrabWeld.C0 = clerp(GrabWeld.C0, CFrame.new(0, -.8, 2) * CFrame.Angles(math.rad(40), math.rad(0), math.rad(0)), 1)
1332
				if(Root)then 
1333
					Root.Parent = nil
1334
					RootWeld = (function()
1335
						for _,v in next, Grabbed:GetDescendants() do
1336
							if(v:IsA'JointInstance' and (v.Part0 == Root or v.Part1 == Root))then
1337
								return {v,v.Part0,v.Part1,v.Parent}
1338
							end;
1339
						end
1340
					end)()
1341
					
1342
				end
1343
			end
1344
		end
1345
		PlayAnimationFromTable({
1346
         CFrame.new(-1.73916547e-07, -0.333895028, 0.0282058977, 1.00000417, -7.91624188e-09, 5.21540642e-07, 7.4505806e-07, 6.70552254e-08, 1, -8.52160156e-08, -1, -7.63684511e-08) * CFrame.new(0, 0, 0) * CFrame.Angles(0, 0, 0), 
1347
         CFrame.new(0, 1.45356226, 0.517724574, 1, 0, 0, 0, 0.422620863, -0.906306684, 0, 0.906306684, 0.422620863) * CFrame.new(0, 0, 0) * CFrame.Angles(0, 0, 0), 
1348
         CFrame.new(1.34678912, 1.80891263, 0.00318957865, -0.984810352, 0.142212093, -0.0996212065, -0.157350063, -0.973534882, 0.165743217, -0.0734140277, 0.178901002, 0.981124341) * CFrame.new(0, 0, 0) * CFrame.Angles(0, 0, 0), 
1349
         CFrame.new(-1.35190487, 1.71961701, 0.127221942, -0.973497868, -0.150360048, 0.172318682, 0.163750991, -0.984274864, 0.0662473366, 0.159647986, 0.0927089974, 0.982811153) * CFrame.new(0, 0, 0) * CFrame.Angles(0, 0, 0), 
1350
         CFrame.new(0.593404055, -1.7524848, -0.817189932, 0.996194661, -0.0841871127, -0.0225576442, 0.0789909735, 0.981476247, -0.174542084, 0.0368339866, 0.172096044, 0.984391332) * CFrame.new(0, 0, 0) * CFrame.Angles(0, 0, 0), 
1351
         CFrame.new(-0.488922983, -1.54355264, -0.0163928568, 0.996195018, 0.0667625517, 0.0560212247, -0.0789870024, 0.963284433, 0.256601483, -0.0368329994, -0.260050058, 0.964892447) * CFrame.new(0, 0, 0) * CFrame.Angles(0, 0, 0), 
1352
		}, .2, false)
1353
	end
1354
	if(Grabbed)then
1355
		Humanoid.AutoRotate = false
1356
		Humanoid.WalkSpeed = 0
1357
		Humanoid.JumpPower = 0
1358
		local torso = GetTorso(Grabbed)
1359
		repeat swait() local hit, pos = RayCastWithList(RootPart.Position, (CFrame.new(RootPart.Position, RootPart.Position - Vector3.new(0, 1, 0))).lookVector, 4, {Character,Grabbed}) until hit
1360
1361
		Torso.Velocity = RootPart.CFrame.upVector * 0
1362
		RootPart.Anchored = true
1363
		
1364
	for i = 0, 4, 0.1 do
1365
		swait()
1366
		GrabWeld.C0 = GrabWeld.C0:lerp(CFrame.new(0, -.8, -1.4) * CFrame.Angles(math.rad(0), math.rad(180), math.rad(0),0),.2)	
1367
		PlayAnimationFromTable({
1368
         CFrame.new(-9.70123892e-07, -1.45215521, -0.52420032, 1.00000417, -7.91624188e-09, 5.21540642e-07, 7.4505806e-07, 6.70552254e-08, 1, -8.52160156e-08, -1, -7.63684511e-08) * CFrame.new(0, 0, 0) * CFrame.Angles(0, 0, 0), 
1369
         CFrame.new(0, 1.73141003, 0.08559376, 1, 0, 0, 0, 0.906306684, -0.422620863, 0, 0.422620863, 0.906306684) * CFrame.new(0, 0, 0) * CFrame.Angles(0, 0, 0), 
1370
         CFrame.new(1.52372789, 0.87177819, -0.912220836, -0.984809101, -0.0734127834, -0.157358661, -0.150361016, -0.0927229673, 0.984273374, -0.086849004, 0.99298197, 0.0802759901) * CFrame.new(0, 0, 0) * CFrame.Angles(0, 0, 0), 
1371
         CFrame.new(-1.61212981, 0.866454244, -0.944487214, -0.973499656, 0.158554643, 0.164799243, 0.149206936, -0.105748929, 0.983134985, 0.17330794, 0.981670916, 0.0792890862) * CFrame.new(0, 0, 0) * CFrame.Angles(0, 0, 0), 
1372
         CFrame.new(0.489993542, -1.28771627, -1.02503252, 0.999861896, -0.016504975, -0.0019627281, 0.0164339989, 0.999355972, -0.0319016613, 0.00248799985, 0.0318650007, 0.999489129) * CFrame.new(0, 0, 0) * CFrame.Angles(0, 0, 0), 
1373
         CFrame.new(-0.522175074, -1.35971284, -1.0364182, 0.998982906, -0.0116342641, 0.0435651727, 0.0117169991, 0.999930024, -0.00164423091, -0.043542996, 0.0021530115, 0.999049246) * CFrame.new(0, 0, 0) * CFrame.Angles(0, 0, 0), 
1374
		}, .2, false)
1375
	end	
1376
		
1377
		GetTorso(Grabbed).Anchored = true	
1378
	--if(Root)then Root.Parent = Grabbed if(RootWeld)then RootWeld[1].Parent = RootWeld[4] RootWeld[1].Part0 = RootWeld[2] RootWeld[1].Part1 = RootWeld[3] end end
1379
	if(GrabWeld)then GrabWeld:destroy() end
1380
	for i = 0, 2, 0.1 do
1381
		swait()
1382
		PlayAnimationFromTable({
1383
         CFrame.new(-9.70122869e-07, -1.4521533, -0.524203837, 1.00000417, 3.2917589e-07, 4.04611598e-07, 7.4505806e-07, 0.642788112, 0.76604408, -8.52160156e-08, -0.766044199, 0.642787993) * CFrame.new(0, 0, 0) * CFrame.Angles(0, 0, 0), 
1384
         CFrame.new(0, 1.57221174, 0.216903687, 1, 0, 0, 0, 0.906307459, -0.422618926, 0, 0.422618926, 0.906307459) * CFrame.new(0, 0, 0) * CFrame.Angles(0, 0, 0), 
1385
         CFrame.new(1.52372789, 0.081455946, -1.25917006, -0.984809101, -0.0734127834, -0.157358661, -0.171008676, 0.567247033, 0.805597305, 0.0301200971, 0.820269227, -0.571184218) * CFrame.new(0, 0, 0) * CFrame.Angles(0, 0, 0), 
1386
         CFrame.new(-1.40030229, 0.0340056717, -1.28360021, -0.994232476, 0.0721763074, 0.0793256387, 0.106234752, 0.561393857, 0.820701718, 0.0147023089, 0.824395418, -0.565823495) * CFrame.new(0, 0, 0) * CFrame.Angles(0, 0, 0), 
1387
         CFrame.new(0.489993542, -1.64532626, 0.0425084829, 0.999861896, -0.016504975, -0.0019627281, 0.0141884256, 0.786033213, 0.618021607, -0.00865766034, -0.617964089, 0.7861588) * CFrame.new(0, 0, 0) * CFrame.Angles(0, 0, 0), 
1388
         CFrame.new(-0.522175074, -1.70779729, 0.0800650716, 0.998982906, -0.0116342641, 0.0435651727, -0.0190131795, 0.767374456, 0.640917361, -0.0408874042, -0.641093731, 0.76637274) * CFrame.new(0, 0, 0) * CFrame.Angles(0, 0, 0), 
1389
		}, .2, false)
1390
	end
1391
local gag=Instance.new("Sound", Torso)
1392
gag.SoundId = "rbxassetid://418658161"
1393
gag.TimePosition = 2.5
1394
gag.Pitch = .7
1395
gag:Play()
1396
CFuncs.Sound.Create("2441069502", GetTorso(Grabbed), .5, 1)
1397
		local gib=CFuncs.Part.Create(Torso, "Plastic", 0, .9, BrickColor.new("Crimson"), "gib", Vector3.new(.8,.1,.1))	
1398
	gib.Anchored=true
1399
    gib.CanCollide=true
1400
	local smonk2 = Instance.new("ParticleEmitter",gib)
1401
			smonk2.LightEmission = .1
1402
			smonk2.Size = NumberSequence.new(0.2)
1403
			smonk2.Texture = "http://www.roblox.com/asset/?ID=256293532"
1404
			aaa2 = NumberSequence.new({NumberSequenceKeypoint.new(0, .6),NumberSequenceKeypoint.new(1, 1)})
1405
			bbb2 = NumberSequence.new({NumberSequenceKeypoint.new(0, .5),NumberSequenceKeypoint.new(0.0636, 0), NumberSequenceKeypoint.new(1, 1)})
1406
			smonk2.Transparency = bbb2
1407
			smonk2.Size = aaa2
1408
			smonk2.ZOffset = 0
1409
			smonk2.Acceleration = Vector3.new(0, 5, 0)
1410
			smonk2.LockedToPart = false
1411
			smonk2.EmissionDirection = "Back"
1412
			smonk2.Lifetime = NumberRange.new(.2, .5)
1413
			smonk2.Rate = 50
1414
			smonk2.Rotation = NumberRange.new(-50, 50)
1415
			smonk2.RotSpeed = NumberRange.new(-50, 50)
1416
			smonk2.Speed = NumberRange.new(5)
1417
			smonk2.VelocitySpread = 50
1418
			smonk2.Enabled=true
1419
			game:GetService("Debris"):AddItem(smonk2, 1)
1420
local smonk = Instance.new("ParticleEmitter",gib)
1421
			smonk.LightEmission = .1
1422
			smonk.Size = NumberSequence.new(0.2)
1423
			smonk.Texture = "http://www.roblox.com/asset/?ID=256293532"
1424
			aaa = NumberSequence.new({NumberSequenceKeypoint.new(0, .5),NumberSequenceKeypoint.new(1, 1)})
1425
			bbb = NumberSequence.new({NumberSequenceKeypoint.new(0, .5),NumberSequenceKeypoint.new(0.0636, 0), NumberSequenceKeypoint.new(1, 1)})
1426
			smonk.Transparency = bbb
1427
			smonk.Size = aaa
1428
			smonk.ZOffset = 0
1429
			smonk.Acceleration = Vector3.new(0, 0, 0)
1430
			smonk.LockedToPart = false
1431
			smonk.EmissionDirection = "Back"
1432
			smonk.Lifetime = NumberRange.new(.5, .5)
1433
			smonk.Rate = 50
1434
			smonk.Rotation = NumberRange.new(-50, 50)
1435
			smonk.RotSpeed = NumberRange.new(-50, 50)
1436
			smonk.Speed = NumberRange.new(0)
1437
			smonk.VelocitySpread = 0
1438
			smonk.Enabled=true
1439
	for i = 0, 3, 0.1 do
1440
		swait()
1441
		PlayAnimationFromTable({
1442
         CFrame.new(-1.39723795e-06, -2.26530323, -0.906234562, 1.00000417, -7.91624188e-09, 5.21540642e-07, 7.4505806e-07, 6.70552254e-08, 1, -8.52160156e-08, -1, -7.63684511e-08) * CFrame.new(0, 0, 0) * CFrame.Angles(0, 0, 0), 
1443
         CFrame.new(-0.1869829, 1.45231867, -0.342143714, 0.766043186, -0.556672871, -0.321392655, 0.582564116, 0.812565804, -0.0188681856, 0.271656066, -0.172777966, 0.946758091) * CFrame.new(0, 0, 0) * CFrame.Angles(0, 0, 0), 
1444
         CFrame.new(1.54931295, 0.522058249, -0.445071995, -0.984809101, -0.0734127834, -0.157358661, -0.150361016, -0.0927229673, 0.984273374, -0.086849004, 0.99298197, 0.0802759901) * CFrame.new(0, 0, 0) * CFrame.Angles(0, 0, 0), 
1445
         CFrame.new(-1.42533684, 0.503732979, -0.492479533, -0.994232476, 0.0721763074, 0.0793256387, 0.0719300359, -0.0998590589, 0.992398202, 0.0795490369, 0.992380381, 0.0940914676) * CFrame.new(0, 0, 0) * CFrame.Angles(0, 0, 0), 
1446
         CFrame.new(0.490656108, -1.65896344, -0.550197124, 0.999861896, -0.016504975, -0.0019627281, 0.0164339989, 0.999355972, -0.0319016613, 0.00248799985, 0.0318650007, 0.999489129) * CFrame.new(0, 0, 0) * CFrame.Angles(0, 0, 0), 
1447
         CFrame.new(-0.537289202, -1.74116123, -0.569836617, 0.998982906, -0.0116342641, 0.0435651727, 0.0117169991, 0.999930024, -0.00164423091, -0.043542996, 0.0021530115, 0.999049246) * CFrame.new(0, 0, 0) * CFrame.Angles(0, 0, 0), 
1448
		}, .2, false)
1449
		gib.CFrame = Head.CFrame * CFrame.new(0,-.2,-.65)
1450
	end
1451
	Grabbed:FindFirstChild'Head':BreakJoints()
1452
		for i = 0, 2, 0.1 do
1453
		swait()
1454
		PlayAnimationFromTable({
1455
         CFrame.new(0.0646195412, -2.14434299, -0.804755151, 0.866028905, -6.39425798e-06, -0.500002384, 0.38303867, 0.642760158, 0.663431108, 0.321375936, -0.766067684, 0.55664885) * CFrame.new(0, 0, 0) * CFrame.Angles(0, 0, 0), 
1456
         CFrame.new(-0.165143013, 1.56247377, -0.141641736, 0.69066757, -0.423842132, -0.585949183, 0.329746336, 0.905689478, -0.266446948, 0.643619418, -0.00918829441, 0.765290678) * CFrame.new(0, 0, 0) * CFrame.Angles(0, 0, 0), 
1457
         CFrame.new(0.990657806, 0.313646466, -1.20178688, -0.837813437, 0.346571505, -0.421849668, -0.171003163, 0.567217588, 0.80561924, 0.518485129, 0.747096121, -0.4159576) * CFrame.new(0, 0, 0) * CFrame.Angles(0, 0, 0), 
1458
         CFrame.new(-1.71981192, 0.0693554878, 0.00111401081, -0.853676558, 0.474718243, -0.214194372, 0.106240898, 0.56136322, 0.820721865, 0.509852469, 0.677874684, -0.529656947) * CFrame.new(0, 0, 0) * CFrame.Angles(0, 0, 0), 
1459
         CFrame.new(0.612413466, -1.6245271, 0.208686799, 0.861576974, -0.323257267, 0.391395003, 0.014182019, 0.786055923, 0.617992878, -0.507428944, -0.526897609, 0.681832016) * CFrame.new(0, 0, 0) * CFrame.Angles(0, 0, 0), 
1460
         CFrame.new(-0.291646302, -1.85773659, 0.554903328, 0.904961646, -0.330603123, 0.267854929, 0.0925588906, 0.767398, 0.634455264, -0.415304095, -0.549365103, 0.725065827) * CFrame.new(0, 0, 0) * CFrame.Angles(0, 0, 0), 
1461
		}, .3, false)
1462
		gib.CFrame = Head.CFrame * CFrame.new(0,-.2,-.65)
1463
		end
1464
		gag:Destroy()
1465
		CFuncs.Sound.Create("987746828", Head, 2, 1)
1466
		gib.Velocity = Head.CFrame.lookVector * 30
1467
		gib.Anchored=false
1468
		game:GetService("Debris"):AddItem(gib, 2)
1469
			for i = 0, 2, 0.1 do
1470
		swait()
1471
		PlayAnimationFromTable({
1472
         CFrame.new(0.0646212101, -2.14434872, -0.804751337, 0.852872849, 0.150377154, -0.500003099, 0.265605658, 0.699510276, 0.663429797, 0.449520022, -0.698622048, 0.556649804) * CFrame.new(0, 0, 0) * CFrame.Angles(0, 0, 0), 
1473
         CFrame.new(-0.0920849219, 1.52588749, -0.308856517, 0.622915268, -0.232293427, -0.747005165, 0.444671035, 0.890768468, 0.0938047767, 0.643618345, -0.390603781, 0.658167362) * CFrame.new(0, 0, 0) * CFrame.Angles(0, 0, 0), 
1474
         CFrame.new(1.24259305, 0.193697155, -0.882544816, -0.79538995, 0.0908054039, -0.599257469, -0.313889712, 0.784080684, 0.5354352, 0.5184865, 0.613980532, -0.595146894) * CFrame.new(0, 0, 0) * CFrame.Angles(0, 0, 0), 
1475
         CFrame.new(-1.6633426, -0.157583565, 0.0787617415, -0.859155536, 0.370026827, -0.353457391, -0.0436116196, 0.63526994, 0.771057844, 0.509853005, 0.677873433, -0.529658079) * CFrame.new(0, 0, 0) * CFrame.Angles(0, 0, 0), 
1476
         CFrame.new(0.885205626, -1.49350178, 0.208688766, 0.846024811, -0.4548437, 0.278135866, 0.163576931, 0.717979968, 0.676570356, -0.507429719, -0.526898563, 0.681830764) * CFrame.new(0, 0, 0) * CFrame.Angles(0, 0, 0), 
1477
         CFrame.new(0.0353773236, -1.88015628, 0.554906487, 0.875140369, -0.458838046, 0.15361397, 0.248296916, 0.698329866, 0.671330154, -0.415305018, -0.549366057, 0.725064695) * CFrame.new(0, 0, 0) * CFrame.Angles(0, 0, 0), 
1478
		}, .3, false)
1479
			end
1480
		torso.Anchored = false	
1481
	end
1482
	Humanoid.WalkSpeed = 35
1483
	Humanoid.JumpPower = 70
1484
	Humanoid.AutoRotate = true
1485
	Attack = false
1486
end
1487
1488
1489
1490
function backhop()
1491
				Attack = true
1492
				RootPart.Anchored = false
1493
			CFuncs.Sound.Create("158149887", Torso, 1, 1)
1494
			Torso.Velocity=RootPart.CFrame.upVector*130
1495
				for i = 0, .5, 0.1 do
1496
		swait()
1497
					PlayAnimationFromTable({
1498
         CFrame.new(-0, -1.01481628, -8.04662704e-07, 1, 0, 0, 0, 0.866025686, 0.499999642, -0, -0.499999642, 0.866025686) * CFrame.new(0, 0, 0) * CFrame.Angles(0, 0, 0), 
1499
         CFrame.new(0, 1.45637476, -0.213752031, 1, 0, 0, 0, 0.939692676, 0.342020601, 0, -0.342020601, 0.939692676) * CFrame.new(0, 0, 0) * CFrame.Angles(0, 0, 0), 
1500
         CFrame.new(1.80887365, 0.563777864, 0.393151999, 0.642787039, -0.766044915, -1.2109125e-06, 0.754407167, 0.633021533, 0.173648313, -0.133021653, -0.111619815, 0.984807789) * CFrame.new(0, 0, 0) * CFrame.Angles(0, 0, 0), 
1501
         CFrame.new(-1.67181289, 0.594474256, -0.03263852, 0.499999285, 0.866025865, 1.98491279e-07, -0.750001073, 0.433012605, -0.499998599, -0.43301177, 0.249998808, 0.866026282) * CFrame.new(0, 0, 0) * CFrame.Angles(0, 0, 0), 
1502
         CFrame.new(0.5, -1.80666828, -0.689023316, 1, 0, 0, 0, 0.984807849, 0.173648134, 0, -0.173648164, 0.984807849) * CFrame.new(0, 0, 0) * CFrame.Angles(0, 0, 0), 
1503
         CFrame.new(-0.5, -1.42673647, -0.144118369, 1, 0, 0, 0, 0.766044736, 0.642787457, 0, -0.642787457, 0.766044736) * CFrame.new(0, 0, 0) * CFrame.Angles(0, 0, 0), 
1504
					}, .3, false)
1505
				end
1506
			Torso.Velocity=RootPart.CFrame.lookVector*-100
1507
	for i = 0, .5, 0.1 do
1508
		swait()
1509
		PlayAnimationFromTable({
1510
         CFrame.new(-0.0724115372, 0.127895057, 0.313171744, 1, 0, 0, 0, 0.984807849, 0.173647985, 0, -0.173647985, 0.984807849) * CFrame.new(0, 0, 0) * CFrame.Angles(0, 0, 0), 
1511
         CFrame.new(0.0169060901, 1.6077503, -0.180746168, 0.995960236, -0.0868240073, -0.0229110774, 0.089483425, 0.938373208, 0.333839238, -0.00748612173, -0.334540784, 0.94235158) * CFrame.new(0, 0, 0) * CFrame.Angles(0, 0, 0), 
1512
         CFrame.new(1.70837259, 0.360651702, -0.922262371, 0.97732687, -0.133022964, 0.16473335, 0.196574748, 0.280932844, -0.939380288, 0.0786801279, 0.95046401, 0.300712109) * CFrame.new(0, 0, 0) * CFrame.Angles(0, 0, 0), 
1513
         CFrame.new(-1.48861361, 0.317329109, -0.925790071, 0.994410336, -0.000923748419, -0.105581462, -0.100659929, 0.293561995, -0.950625718, 0.0318728462, 0.955939651, 0.291828096) * CFrame.new(0, 0, 0) * CFrame.Angles(0, 0, 0), 
1514
         CFrame.new(0.604445279, -1.94474173, -0.43701914, 0.94886601, -0.0119064255, -0.315454632, -0.0935085714, 0.943841219, -0.316891491, 0.301512092, 0.330185235, 0.894465506) * CFrame.new(0, 0, 0) * CFrame.Angles(0, 0, 0), 
1515
         CFrame.new(-0.577895403, -1.96714401, -0.475817055, 0.982055664, -0.0277231932, 0.186542824, 0.0885364786, 0.941134036, -0.326233506, -0.166517526, 0.336895287, 0.926700354) * CFrame.new(0, 0, 0) * CFrame.Angles(0, 0, 0), 
1516
		}, .4, false)
1517
	end
1518
	Attack = false	
1519
end
1520
1521
function righthop()
1522
				Attack = true
1523
			CFuncs.Sound.Create("158149887", Torso, 1, 1)
1524
			Humanoid.Jump = true
1525
			Torso.Velocity=RootPart.CFrame.upVector*130
1526
				for i = 0, .5, 0.1 do
1527
		swait()
1528
					PlayAnimationFromTable({
1529
         CFrame.new(-0, -1.01481628, -8.04662704e-07, 1, 0, 0, 0, 0.866025686, 0.499999642, -0, -0.499999642, 0.866025686) * CFrame.new(0, 0, 0) * CFrame.Angles(0, 0, 0), 
1530
         CFrame.new(0, 1.45637476, -0.213752031, 1, 0, 0, 0, 0.939692676, 0.342020601, 0, -0.342020601, 0.939692676) * CFrame.new(0, 0, 0) * CFrame.Angles(0, 0, 0), 
1531
         CFrame.new(1.80887365, 0.563777864, 0.393151999, 0.642787039, -0.766044915, -1.2109125e-06, 0.754407167, 0.633021533, 0.173648313, -0.133021653, -0.111619815, 0.984807789) * CFrame.new(0, 0, 0) * CFrame.Angles(0, 0, 0), 
1532
         CFrame.new(-1.67181289, 0.594474256, -0.03263852, 0.499999285, 0.866025865, 1.98491279e-07, -0.750001073, 0.433012605, -0.499998599, -0.43301177, 0.249998808, 0.866026282) * CFrame.new(0, 0, 0) * CFrame.Angles(0, 0, 0), 
1533
         CFrame.new(0.5, -1.80666828, -0.689023316, 1, 0, 0, 0, 0.984807849, 0.173648134, 0, -0.173648164, 0.984807849) * CFrame.new(0, 0, 0) * CFrame.Angles(0, 0, 0), 
1534
         CFrame.new(-0.5, -1.42673647, -0.144118369, 1, 0, 0, 0, 0.766044736, 0.642787457, 0, -0.642787457, 0.766044736) * CFrame.new(0, 0, 0) * CFrame.Angles(0, 0, 0), 
1535
					}, .3, false)
1536
				end
1537
			Torso.Velocity=RootPart.CFrame.rightVector*100
1538
	for i = 0, .5, 0.1 do
1539
		swait()
1540
		PlayAnimationFromTable({
1541
         CFrame.new(0.708232701, 0.127894983, 0.246774122, 0.76604414, -0.111618884, 0.633022666, 0, 0.984807849, 0.173648044, -0.642788053, -0.13302207, 0.754406214) * CFrame.new(0, 0, 0) * CFrame.Angles(0, 0, 0), 
1542
         CFrame.new(0.0324593484, 1.43977821, -0.119624585, 0.995960355, -0.0868238062, -0.0229113102, 0.0894833133, 0.938373625, 0.333838284, -0.00748568773, -0.334539831, 0.942351937) * CFrame.new(0, 0, 0) * CFrame.Angles(0, 0, 0), 
1543
         CFrame.new(1.69410944, 0.329396009, -0.667013586, 0.977326989, -0.133022755, 0.164733544, 0.196574897, 0.280932605, -0.939380229, 0.0786799788, 0.95046401, 0.30071193) * CFrame.new(0, 0, 0) * CFrame.Angles(0, 0, 0), 
1544
         CFrame.new(-1.50714529, 0.0157378055, -0.431941032, 0.884520769, 0.235685706, -0.402585804, -0.362369925, 0.890611291, -0.274772465, 0.29378742, 0.388926923, 0.873169541) * CFrame.new(0, 0, 0) * CFrame.Angles(0, 0, 0), 
1545
         CFrame.new(0.618915975, -1.85825384, -0.515439391, 0.98480773, 0.173648864, -1.81794167e-06, -0.17101045, 0.969846725, 0.173646331, 0.0301553011, -0.171007901, 0.984808087) * CFrame.new(0, 0, 0) * CFrame.Angles(0, 0, 0), 
1546
         CFrame.new(-0.523646474, -1.39458823, -0.171092927, 0.939692676, 0.342020273, 3.57627869e-07, -0.262003183, 0.719847083, 0.642786682, 0.219845772, -0.604022026, 0.766045213) * CFrame.new(0, 0, 0) * CFrame.Angles(0, 0, 0), 
1547
		}, .4, false)
1548
	end
1549
	Attack = false	
1550
end
1551
1552
1553
function lefthop()
1554
			Attack = true
1555
			Humanoid.Jump = true
1556
			CFuncs.Sound.Create("158149887", Torso, 1, 1)
1557
			Torso.Velocity=RootPart.CFrame.upVector*130
1558
				for i = 0, .5, 0.1 do
1559
		swait()
1560
					PlayAnimationFromTable({
1561
         CFrame.new(-0, -1.01481628, -8.04662704e-07, 1, 0, 0, 0, 0.866025686, 0.499999642, -0, -0.499999642, 0.866025686) * CFrame.new(0, 0, 0) * CFrame.Angles(0, 0, 0), 
1562
         CFrame.new(0, 1.45637476, -0.213752031, 1, 0, 0, 0, 0.939692676, 0.342020601, 0, -0.342020601, 0.939692676) * CFrame.new(0, 0, 0) * CFrame.Angles(0, 0, 0), 
1563
         CFrame.new(1.80887365, 0.563777864, 0.393151999, 0.642787039, -0.766044915, -1.2109125e-06, 0.754407167, 0.633021533, 0.173648313, -0.133021653, -0.111619815, 0.984807789) * CFrame.new(0, 0, 0) * CFrame.Angles(0, 0, 0), 
1564
         CFrame.new(-1.67181289, 0.594474256, -0.03263852, 0.499999285, 0.866025865, 1.98491279e-07, -0.750001073, 0.433012605, -0.499998599, -0.43301177, 0.249998808, 0.866026282) * CFrame.new(0, 0, 0) * CFrame.Angles(0, 0, 0), 
1565
         CFrame.new(0.5, -1.80666828, -0.689023316, 1, 0, 0, 0, 0.984807849, 0.173648134, 0, -0.173648164, 0.984807849) * CFrame.new(0, 0, 0) * CFrame.Angles(0, 0, 0), 
1566
         CFrame.new(-0.5, -1.42673647, -0.144118369, 1, 0, 0, 0, 0.766044736, 0.642787457, 0, -0.642787457, 0.766044736) * CFrame.new(0, 0, 0) * CFrame.Angles(0, 0, 0), 
1567
					}, .3, false)
1568
				end
1569
			Torso.Velocity=RootPart.CFrame.rightVector*-100
1570
	for i = 0, .5, 0.1 do
1571
		swait()
1572
		PlayAnimationFromTable({
1573
         CFrame.new(-0.0850991905, 0.127894506, -0.50492847, 0.866025388, 0.0868241936, -0.492404073, 0, 0.98480773, 0.173648342, 0.500000238, -0.150383845, 0.852868438) * CFrame.new(0, 0, 0) * CFrame.Angles(0, 0, 0), 
1574
         CFrame.new(0.0324628651, 1.43977714, -0.119621098, 0.928060651, -0.0868241191, -0.362167478, 0.198266238, 0.938373506, 0.283100247, 0.315268338, -0.334539741, 0.888081789) * CFrame.new(0, 0, 0) * CFrame.Angles(0, 0, 0), 
1575
         CFrame.new(1.82837343, 0.425938904, -0.29435727, 0.642787039, -0.663414657, 0.383022308, 0.754407167, 0.635036588, -0.166127652, -0.133021653, 0.395739436, 0.908677995) * CFrame.new(0, 0, 0) * CFrame.Angles(0, 0, 0), 
1576
         CFrame.new(-0.822531939, 0.843190134, -1.47252464, 0.884521008, -0.355543315, -0.30201298, -0.362369865, -0.115946069, -0.924794376, 0.293787181, 0.927440405, -0.231394917) * CFrame.new(0, 0, 0) * CFrame.Angles(0, 0, 0), 
1577
         CFrame.new(0.63746208, -1.78279781, -0.693231404, 0.984807849, -0.173648208, -1.1920929e-07, 0.171010107, 0.969846427, 0.173647493, -0.0301534832, -0.171009362, 0.984807909) * CFrame.new(0, 0, 0) * CFrame.Angles(0, 0, 0), 
1578
         CFrame.new(-0.471737981, -1.40906096, -0.158949912, 1.00000012, 7.15255737e-07, -5.96046448e-07, -1.56462193e-07, 0.766044557, 0.642787457, 8.64267349e-07, -0.642787457, 0.766044617) * CFrame.new(0, 0, 0) * CFrame.Angles(0, 0, 0), 
1579
		}, .4, false)
1580
	end
1581
	Attack = false	
1582
end
1583
1584
1585
Mouse.KeyDown:connect(function(Key)
1586
	Key = Key:lower()
1587
		if Attack == false and Key == 'z' then
1588
		bulgelocated()
1589
		elseif Attack == false and Key == 'v' then
1590
		Shadowdash()
1591
		
1592
		elseif UIS:IsKeyDown(Enum.KeyCode.Space) and Attack == false and hit2 ~= nil then
1593
	    backhop()
1594
		elseif UIS:IsKeyDown(Enum.KeyCode.Space) and Attack == false and hit4 ~= nil then
1595
	    righthop()
1596
		elseif UIS:IsKeyDown(Enum.KeyCode.Space) and Attack == false and hit3 ~= nil then
1597
	    lefthop()
1598
end
1599
end)
1600
1601
1602
1603
1604
while true do
1605
	swait()
1606
	for i, v in pairs(Character:GetChildren()) do
1607
		if v:IsA("Part") then
1608
			v.Material = "SmoothPlastic"
1609
		elseif v:IsA("Accessory") then
1610
			v:WaitForChild("Handle").Material = "SmoothPlastic"
1611
		end
1612
	end
1613
	for i, v in pairs(Character:GetChildren()) do
1614
		if v:IsA'Model' then
1615
			for _, c in pairs(v:GetChildren()) do
1616
				if c:IsA'Part' then
1617
					c.CustomPhysicalProperties = PhysicalProperties.new(0.001, 0.001, 0.001, 0.001, 0.001)
1618
				end
1619
			end
1620
		end
1621
	end
1622
	TorsoVelocity = (RootPart.Velocity * Vector3.new(1, 0, 1)).magnitude 
1623
	Velocity = RootPart.Velocity.y
1624
	hit2, pos2 = RayCast(RootPart.Position, RootPart.CFrame.lookVector, 2.5, Character)
1625
	hit3, pos3 = RayCast(RootPart.Position, RootPart.CFrame.rightVector, 2.5, Character)
1626
	hit4, pos4 = RayCast(RootPart.Position, RootPart.CFrame.rightVector*-1, 2.5, Character)
1627
	local hit, pos = RayCast(RootPart.Position, (CFrame.new(RootPart.Position, RootPart.Position - Vector3.new(0, 1, 0))).lookVector, 4, Character)
1628
	if RootPart.Velocity.y > 1 and hit == nil then 
1629
		Anim = "Jump"
1630
		if Attack == false then
1631
			Change = 1
1632
		PlayAnimationFromTable({
1633
         CFrame.new(-0, -1.01481628, -8.04662704e-07, 1, 0, 0, 0, 0.866025686, 0.499999642, -0, -0.499999642, 0.866025686) * CFrame.new(0, 0, 0) * CFrame.Angles(0, 0, 0), 
1634
         CFrame.new(0, 1.45637476, -0.213752031, 1, 0, 0, 0, 0.939692676, 0.342020601, 0, -0.342020601, 0.939692676) * CFrame.new(0, 0, 0) * CFrame.Angles(0, 0, 0), 
1635
         CFrame.new(1.80887365, 0.563777864, 0.393151999, 0.642787039, -0.766044915, -1.2109125e-06, 0.754407167, 0.633021533, 0.173648313, -0.133021653, -0.111619815, 0.984807789) * CFrame.new(0, 0, 0) * CFrame.Angles(0, 0, 0), 
1636
         CFrame.new(-1.67181289, 0.594474256, -0.03263852, 0.499999285, 0.866025865, 1.98491279e-07, -0.750001073, 0.433012605, -0.499998599, -0.43301177, 0.249998808, 0.866026282) * CFrame.new(0, 0, 0) * CFrame.Angles(0, 0, 0), 
1637
         CFrame.new(0.5, -1.80666828, -0.689023316, 1, 0, 0, 0, 0.984807849, 0.173648134, 0, -0.173648164, 0.984807849) * CFrame.new(0, 0, 0) * CFrame.Angles(0, 0, 0), 
1638
         CFrame.new(-0.5, -1.42673647, -0.144118369, 1, 0, 0, 0, 0.766044736, 0.642787457, 0, -0.642787457, 0.766044736) * CFrame.new(0, 0, 0) * CFrame.Angles(0, 0, 0), 
1639
		}, .1, false)
1640
		rCHandle2Weld.C0 = clerp(rCHandle2Weld.C0, CFrame.new(0, -1.5, .5) * CFrame.Angles(math.rad(90), math.rad(90), math.rad(0)), 1)
1641
		rCHandle1Weld.C0 = clerp(rCHandle1Weld.C0, CFrame.new(.1, -1.5, .5) * CFrame.Angles(math.rad(90), math.rad(90), math.rad(0)), 1)
1642
		end	
1643
	elseif RootPart.Velocity.y < -1 and hit == nil then 
1644
		Anim = "Fall"
1645
	 if Attack == false then
1646
		PlayAnimationFromTable({
1647
         CFrame.new(-2.52783309e-07, -0.458231509, -0.301980734, 1.00000429, 4.77244157e-07, 2.760749e-07, 7.4505806e-07, 0.866025507, 0.500000238, -9.0803951e-08, -0.500000298, 0.866025388) * CFrame.new(0, 0, 0) * CFrame.Angles(0, 0, 0), 
1648
         CFrame.new(0, 1.58647513, 0.183157548, 1, 0, 0, 0, 0.999881387, -0.0154127777, 0, 0.0154127777, 0.999881387) * CFrame.new(0, 0, 0) * CFrame.Angles(0, 0, 0), 
1649
         CFrame.new(1.5891608, 0.361017317, -0.212302506, 0.984807849, -0.173521757, 0.0066198064, 0.150383562, 0.83318758, -0.532149851, 0.0868240371, 0.525060833, 0.846624494) * CFrame.new(0, 0, 0) * CFrame.Angles(0, 0, 0), 
1650
         CFrame.new(-1.60230875, 0.275375485, -0.212160379, 0.984799087, 0.173571184, 0.00662776129, -0.150421292, 0.871290267, -0.467147648, -0.0868580788, 0.459049612, 0.884154558) * CFrame.new(0, 0, 0) * CFrame.Angles(0, 0, 0), 
1651
         CFrame.new(0.561567485, -1.34639406, -0.926938355, 0.996194661, -0.0871569663, 0, 0.0754801482, 0.862729847, -0.500000238, 0.0435785055, 0.498097569, 0.866025388) * CFrame.new(0, 0, 0) * CFrame.Angles(0, 0, 0), 
1652
         CFrame.new(-0.52978605, -1.61792982, 0.214719117, 0.996196747, 0.0413986593, 0.0766689852, -0.0754585043, 0.849865317, 0.521569967, -0.0435660109, -0.525371671, 0.849756956) * CFrame.new(0, 0, 0) * CFrame.Angles(0, 0, 0), 
1653
		}, .2, false)
1654
		rCHandle2Weld.C0 = clerp(rCHandle2Weld.C0, CFrame.new(0, -1.5, .5) * CFrame.Angles(math.rad(90), math.rad(90), math.rad(0)), 1)
1655
		rCHandle1Weld.C0 = clerp(rCHandle1Weld.C0, CFrame.new(.1, -1.5, .5) * CFrame.Angles(math.rad(90), math.rad(90), math.rad(0)), 1)
1656
	end
1657
	elseif TorsoVelocity < 1 and hit ~= nil then
1658
		Anim = "Idle"
1659
		if Attack == false then
1660
			Change = 1
1661
		PlayAnimationFromTable({
1662
         CFrame.new(-5.67257132e-07, -0.45822984+.1*math.cos(Sine/8), -0.301978469, 1.00000858, 1.24809378e-06, 3.60371928e-07, 1.29640421e-06, 0.939693034, 0.342019886, -9.0338709e-08, -0.342020005, 0.939692616) * CFrame.new(0, 0, 0) * CFrame.Angles(math.rad(0 + 5 * math.cos(Sine/8)), 0, 0), 
1663
         CFrame.new(7.63999651e-07, 1.46904099, 0.0165809691, 1.00000429, 5.49886977e-07, 4.0045915e-08, 7.30156898e-07, 0.961822271, -0.273675978, 1.71363354e-07, 0.273675948, 0.961821973) * CFrame.new(0, 0, 0) * CFrame.Angles(math.rad(0 - 10 * math.cos(Sine/8)), 0, 0), 
1664
         CFrame.new(1.62868655, 0.111030877+.1*math.cos(Sine/8), -0.35657984, 0.9848122, -0.173521966, 0.00661981478, 0.163176492, 0.911705673, -0.377050072, 0.0593912303, 0.372401953, 0.926169157) * CFrame.new(0, 0, 0) * CFrame.Angles(0, 0, 0), 
1665
         CFrame.new(-1.64265788, 0.0163868144+.1*math.cos(Sine/8), -0.326656789, 0.9848032, 0.173572466, 0.00662781065, -0.163218126, 0.93776685, -0.306518316, -0.0594178699, 0.300777197, 0.951841593) * CFrame.new(0, 0, 0) * CFrame.Angles(0, 0, 0), 
1666
         CFrame.new(0.561572433, -1.5318737-.1*math.cos(Sine/8), -0.555493951+math.rad(0 + 5 * math.cos(Sine/8)), 0.996203482, -0.0868237838, -0.00759620313, 0.0819010884, 0.962364078, -0.259130269, 0.0298094228, 0.257522076, 0.965812385) * CFrame.Angles(math.rad(0 - 5 * math.cos(Sine/8)), 0, 0), 
1667
         CFrame.new(-0.554138422, -1.84922051-.1*math.cos(Sine/8)+math.rad(0 + 5 * math.cos(Sine/8)), 0.483894289+math.rad(0 + 5 * math.cos(Sine/8)), 0.996200979, 0.0651250109, 0.0578867495, -0.0818765685, 0.926896632, 0.366277635, -0.0298006982, -0.369623899, 0.928703368) * CFrame.Angles(math.rad(0 - 5 * math.cos(Sine/8)), 0, 0), 
1668
		}, .2, false)
1669
		rCHandle2Weld.C0 = clerp(rCHandle2Weld.C0, CFrame.new(0, -1.5, .5) * CFrame.Angles(math.rad(90), math.rad(90), math.rad(0)), 1)
1670
		rCHandle1Weld.C0 = clerp(rCHandle1Weld.C0, CFrame.new(.1, -1.5, .5) * CFrame.Angles(math.rad(90), math.rad(90), math.rad(0)), 1)
1671
		end
1672
	elseif TorsoVelocity > 2 and hit ~= nil then
1673
		Anim = "Walk"
1674
            if Attack == false then
1675
		PlayAnimationFromTable({
1676
         CFrame.new(2.77100942e-09, 0.00148168206, -0.301976591, 1.00000024, 2.79512946e-08, 5.46405587e-10, 2.23517453e-08, 0.939692974, 0.342020005, -1.49011612e-08, -0.342019856, 0.939692736) * CFrame.new(0, 0+.1*math.cos(Sine/4), 0) * CFrame.Angles(0, 0 + .2 * math.cos(Sine/8), 0), 
1677
         CFrame.new(4.8082363e-08, 1.5315367, 0.0343731791, 1.00000024, 3.09263193e-08, -5.39672307e-09, 2.79512946e-08, 0.984808028, -0.173648089, 5.46405587e-10, 0.173648283, 0.984807909) * CFrame.new(0, 0, 0) * CFrame.Angles(math.rad(0 - 2 * math.cos(Sine/15)), 0, 0), 
1678
         CFrame.new(1.66816366, 0.125450149, 0.167713135, 0.975411952, -0.217704624, -0.0342991352, 0.22028406, 0.9678877, 0.12111339, 0.0068307519, -0.125690982, 0.992045999) * CFrame.new(0, .1, 0 - 2 * math.cos(Sine/8)/2) * CFrame.Angles(math.rad(0 + 160 * math.cos(Sine/8)/2), 0, 0), 
1679
         CFrame.new(-1.58983934, 0.0268005617, -0.146883398, 0.986049891, 0.166255936, -0.00805497169, -0.16625604, 0.981399775, -0.0959867239, -0.00805321336, 0.0959868878, 0.995350063) * CFrame.new(0, .1, 0 + 2 * math.cos(Sine/8)/2) * CFrame.Angles(math.rad(0 - 160 * math.cos(Sine/8)/2), 0, 0),
1680
		 CFrame.new(.5, -1.64 - 1 * math.cos(Sine / 6) / 2 -.1*math.cos(Sine/4), 0 + 3 *  math.sin(Sine / 6) / 3) * CFrame.Angles(math.rad(-90 *  math.sin(Sine / 6)), math.rad(-3), math.rad(0)),
1681
		 CFrame.new(-.5, -1.64 + 1 * math.cos(Sine / 6) / 2 -.1*math.cos(Sine/4), 0 -  3 * math.sin(Sine / 6) / 3) * CFrame.Angles(math.rad(90 *  math.sin(Sine / 6)), math.rad(3), math.rad(0)),}, .2, false)
1682
		rCHandle2Weld.C0 = clerp(rCHandle2Weld.C0, CFrame.new(0, -1.5, .5) * CFrame.Angles(math.rad(90), math.rad(90), math.rad(0)), 1)
1683
		rCHandle1Weld.C0 = clerp(rCHandle1Weld.C0, CFrame.new(.1, -1.5, .5) * CFrame.Angles(math.rad(90), math.rad(90), math.rad(0)), 1)
1684
end
1685
end
1686
	if #Effects > 0 then
1687
		for e = 1, #Effects do
1688
			if Effects[e] ~= nil then
1689
				local Thing = Effects[e]
1690
				if Thing ~= nil then
1691
					local Part = Thing[1]
1692
					local Mode = Thing[2]
1693
					local Delay = Thing[3]
1694
					local IncX = Thing[4]
1695
					local IncY = Thing[5]
1696
					if Thing[1].Transparency <= 1 then
1697
						if Thing[2] == "Block1" then
1698
							Thing[1].CFrame = Thing[1].CFrame * CFrame.fromEulerAnglesXYZ(math.random(-50, 50), math.random(-50, 50), math.random(-50, 50))
1699
							Mesh = Thing[7]
1700
							Mesh.Scale = Mesh.Scale + Vector3.new(Thing[4], Thing[5], Thing[6])
1701
							Thing[1].Transparency = Thing[1].Transparency + Thing[3]
1702
						elseif Thing[2] == "Ice" then
1703
							if Thing[6] <= Thing[5] then
1704
								Thing[6] = Thing[6] + .05
1705
								Thing[1].CFrame = Thing[1].CFrame * CFrame.new(0, .4, 0)
1706
							else
1707
								Thing[1].Transparency = Thing[1].Transparency + Thing[3]
1708
							end
1709
						elseif Thing[2] == "Shatter" then
1710
							Thing[1].Transparency = Thing[1].Transparency + Thing[3]
1711
							Thing[4] = Thing[4] * CFrame.new(0, Thing[7], 0)
1712
							Thing[1].CFrame = Thing[4] * CFrame.fromEulerAnglesXYZ(Thing[6], 0, 0)
1713
							Thing[6] = Thing[6] + Thing[5]
1714
						elseif Thing[2] == "Block2" then
1715
							Thing[1].CFrame = Thing[1].CFrame
1716
							Mesh = Thing[7]
1717
							Mesh.Scale = Mesh.Scale + Vector3.new(Thing[4], Thing[5], Thing[6])
1718
							Thing[1].Transparency = Thing[1].Transparency + Thing[3]
1719
						elseif Thing[2] == "Block3" then
1720
							Thing[1].CFrame = Thing[8].CFrame * CFrame.fromEulerAnglesXYZ(math.random(-50, 50), math.random(-50, 50), math.random(-50, 50))
1721
							Mesh = Thing[7]
1722
							Mesh.Scale = Mesh.Scale + Vector3.new(Thing[4], Thing[5], Thing[6])
1723
							Thing[1].Transparency = Thing[1].Transparency + Thing[3]
1724
						elseif Thing[2] == "Block4" then
1725
							Thing[1].CFrame = Thing[8].CFrame * CFrame.new(0, -Thing[7].Scale.Y, 0) * CFrame.fromEulerAnglesXYZ(3.14, 0, 0)
1726
							Mesh = Thing[7]
1727
							Mesh.Scale = Mesh.Scale + Vector3.new(Thing[4], Thing[5], Thing[6])
1728
							Thing[1].Transparency = Thing[1].Transparency + Thing[3]
1729
						elseif Thing[2] == "Block2Fire" then
1730
							Thing[1].CFrame = Thing[1].CFrame * CFrame.fromEulerAnglesXYZ(math.random(-50, 50), math.random(-50, 50), math.random(-50, 50))
1731
							Mesh = Thing[7]
1732
							Mesh.Scale = Mesh.Scale + Vector3.new(Thing[4], Thing[5], Thing[6])
1733
							Thing[1].Transparency = Thing[1].Transparency + Thing[3]
1734
							if Thing[1].Transparency >= .3 then
1735
								Thing[1].BrickColor = BrickColor.new("Bright red")
1736
							else
1737
								Thing[1].BrickColor = BrickColor.new("Bright yellow")
1738
							end
1739
						elseif Thing[2] == "Cylinder" then
1740
							Mesh = Thing[7]
1741
							Mesh.Scale = Mesh.Scale + Vector3.new(Thing[4], Thing[5], Thing[6])
1742
							Thing[1].Transparency = Thing[1].Transparency + Thing[3]
1743
						elseif Thing[2] == "Blood" then
1744
							Mesh = Thing[7]
1745
							Thing[1].CFrame = Thing[1].CFrame * CFrame.new(0, -.5, 0)
1746
							Mesh.Scale = Mesh.Scale + Vector3.new(Thing[4], Thing[5], Thing[6])
1747
							Thing[1].Transparency = Thing[1].Transparency + Thing[3]
1748
						elseif Thing[2] == "Elec" then
1749
							Mesh = Thing[10]
1750
							Mesh.Scale = Mesh.Scale + Vector3.new(Thing[7], Thing[8], Thing[9])
1751
							Thing[1].Transparency = Thing[1].Transparency + Thing[3]
1752
							Thing[1].CFrame = Thing[1].CFrame * Thing[11] * CFrame.new(0, 0, .2)
1753
							Thing[1].Rotation = Vector3.new(0, 0, 0)
1754
						elseif Thing[2] == "Disappear" then
1755
							Thing[1].Transparency = Thing[1].Transparency + Thing[3]
1756
						end
1757
					else
1758
						Part.Parent = nil
1759
						table.remove(Effects, e)
1760
					end
1761
				end
1762
			end
1763
		end
1764
	end	
1765
Humanoid.Health = math.huge
1766
	if Attack == false and hit == nil and hit2 ~= nil then
1767
		Torso.Velocity=RootPart.CFrame.upVector*55
1768
		--[[RootPart.Anchored = true
1769
		Humanoid.AutoRotate = false
1770
		local nPos = RootPart.CFrame
1771
		if(UIS:IsKeyDown(Enum.KeyCode.W))then
1772
			nPos = nPos * CFrame.new(0,.5,0)
1773
		end
1774
		if(UIS:IsKeyDown(Enum.KeyCode.A))then
1775
			nPos = nPos * CFrame.new(-.5,0,0)
1776
		end
1777
		if(UIS:IsKeyDown(Enum.KeyCode.S))then
1778
			nPos = nPos * CFrame.new(0,-.5,0)
1779
		end
1780
		if(UIS:IsKeyDown(Enum.KeyCode.D))then
1781
			nPos = nPos * CFrame.new(.5,0,0)
1782
		end
1783
		if(nPos == RootPart.CFrame)then
1784
			nPos = nPos * CFrame.new(0,-.05,0)
1785
		end
1786
		RootPart.CFrame = nPos
1787
		Humanoid.Jump = false]]
1788
	elseif Attack == false and hit == nil and hit3 ~= nil or hit4 ~= nil then 
1789
		Torso.Velocity=RootPart.CFrame.lookVector*35
1790
		Humanoid.Jump = false
1791
	elseif Attack == false then
1792
		Humanoid.AutoRotate = true
1793
		RootPart.Anchored = false
1794
	end	
1795
end