View difference between Paste ID: NTmAVcE5 and KeM79cXG
SHOW: | | - or go back to the newest paste.
1
2
if game:GetService("RunService"):IsClient()then error("Please run as a server script. Use h/ instead of hl/.")end;print("FE Compatibility: by WaverlyCole");InternalData = {}
3
do
4
	script.Parent = owner.Character
5
	local Event = Instance.new("RemoteEvent");Event.Name = "UserInput"
6
	local function NewFakeEvent()
7
		local Bind = Instance.new("BindableEvent")
8
		local Fake;Fake = {Connections = {},
9
		fakeEvent=true;
10
		Connect=function(self,Func)
11
			Bind.Event:connect(Func)
12
			self.Connections[Bind] = true
13
			return setmetatable({Connected = true},{
14
			__index = function (self,Index)
15
				if Index:lower() == "disconnect" then
16
					return function() Fake.Connections[Bind] = false;self.Connected = false end
17
				end
18
				return Fake[Index]
19
			end;
20
			__tostring = function() return "Connection" end;
21
		})
22
		end}
23
		Fake.connect = Fake.Connect;return Fake;
24
	end
25
	local Mouse = {Target=nil,Hit=CFrame.new(),KeyUp=NewFakeEvent(),KeyDown=NewFakeEvent(),Button1Up=NewFakeEvent(),Button1Down=NewFakeEvent()}
26
	local UserInputService = {InputBegan=NewFakeEvent(),InputEnded=NewFakeEvent()}
27
	local ContextActionService = {Actions={},BindAction = function(self,actionName,Func,touch,...)
28
		self.Actions[actionName] = Func and {Name=actionName,Function=Func,Keys={...}} or nil
29
	end};ContextActionService.UnBindAction = ContextActionService.BindAction
30
	local function TriggerEvent(self,Event,...)
31
		local Trigger = Mouse[Event]
32
		if Trigger and Trigger.fakeEvent and Trigger.Connections then
33
			for Connection,Active in pairs(Trigger.Connections) do if Active then Connection:Fire(...) end end
34
		end
35
	end
36
	Mouse.TrigEvent = TriggerEvent;UserInputService.TrigEvent = TriggerEvent
37
	Event.OnServerEvent:Connect(function(FiredBy,Input)
38
		if FiredBy.Name ~= owner.Name then return end
39
		if Input.MouseEvent then
40
			Mouse.Target = Input.Target;Mouse.Hit = Input.Hit
41
		else
42
			local Begin = Input.UserInputState == Enum.UserInputState.Begin
43
			if Input.UserInputType == Enum.UserInputType.MouseButton1 then return Mouse:TrigEvent(Begin and "Button1Down" or "Button1Up") end
44
			for _,Action in pairs(ContextActionService.Actions) do
45
				for _,Key in pairs(Action.Keys) do if Key==Input.KeyCode then Action.Function(Action.Name,Input.UserInputState,Input) end end
46
			end
47
			Mouse:TrigEvent(Begin and "KeyDown" or "KeyUp",Input.KeyCode.Name:lower())
48
			UserInputService:TrigEvent(Begin and "InputBegan" or "InputEnded",Input,false)
49
		end
50
	end)
51
	InternalData["Mouse"] = Mouse;InternalData["ContextActionService"] = ContextActionService;InternalData["UserInputService"] = UserInputService
52
	Event.Parent = NLS([[
53
		local Player = owner;local Event = script:WaitForChild("UserInput");local UserInputService = game:GetService("UserInputService");local Mouse = Player:GetMouse()
54
		local Input = function(Input,gameProcessedEvent)
55
			if gameProcessedEvent then return end
56
			Event:FireServer({KeyCode=Input.KeyCode,UserInputType=Input.UserInputType,UserInputState=Input.UserInputState})
57
		end
58
		UserInputService.InputBegan:Connect(Input);UserInputService.InputEnded:Connect(Input)
59
		local Hit,Target
60
		while wait(1/30) do
61
			if Hit ~= Mouse.Hit or Target ~= Mouse.Target then
62
				Hit,Target = Mouse.Hit,Mouse.Target;Event:FireServer({["MouseEvent"]=true,["Target"]=Target,["Hit"]=Hit})
63
			end
64
		end
65
	]],owner.Character)
66
end
67
RealGame = game;game = setmetatable({},{
68
	__index = function (self,Index)
69
		local Sandbox = function (Thing)
70
			if Thing:IsA("Player") then
71
				local RealPlayer = Thing
72
				return setmetatable({},{
73
					__index = function (self,Index)
74
						local Type = type(RealPlayer[Index])
75
						if Type == "function" then
76
							if Index:lower() == "getmouse" or Index:lower() == "mouse" then
77
								return function (self)return InternalData["Mouse"] end
78
							end
79
							return function (self,...)return RealPlayer[Index](RealPlayer,...) end
80
						end
81
						return RealPlayer[Index]
82
					end;
83
					__tostring = function(self) return RealPlayer.Name end
84
				})
85
			end
86
		end
87
		if RealGame[Index] then
88
			local Type = type(RealGame[Index])
89
			if Type == "function" then
90
				if Index:lower() == "getservice" or Index:lower() == "service" then
91
					return function (self,Service)
92
						local FakeServices = {
93
							["players"] = function()
94
								return setmetatable({},{
95
									__index = function (self2,Index2)
96
										local RealService = RealGame:GetService(Service)
97
										local Type2 = type(Index2)
98
										if Type2 == "function" then
99
											return function (self,...) return RealService[Index2](RealService,...)end
100
										else
101
											if Index2:lower() == "localplayer" then return Sandbox(owner) end
102
											return RealService[Index2]
103
										end
104
									end;
105
									__tostring = function(self) return RealGame:GetService(Service).Name end
106
								})
107
							end;
108
							["contextactionservice"] = function() return InternalData["ContextActionService"] end;
109
							["userinputservice"] = function() return InternalData["UserInputService"] end;
110
							["runservice"] = function()
111
								return setmetatable({},{
112
									__index = function(self2,Index2)
113
										local RealService = RealGame:GetService(Service)
114
										local Type2 = type(Index2)
115
										if Type2 == "function" then
116
											return function (self,...) return RealService[Index2](RealService,...) end
117
										else
118
											local RunServices = {
119
												["bindtorenderstep"] = function() return function (self,Name,Priority,Function) return RealGame:GetService("RunService").Stepped:Connect(Function) end end;
120
												["renderstepped"] = function() return RealService["Stepped"] end
121
											}
122
											if RunServices[Index2:lower()] then return RunServices[Index2:lower()]() end
123
											return RealService[Index2]
124
										end
125
									end
126
								})
127
							end
128
						}
129
						if FakeServices[Service:lower()] then return FakeServices[Service:lower()]() end
130
						return RealGame:GetService(Service)
131
					end
132
				end
133
				return function (self,...) return RealGame[Index](RealGame,...) end
134
			else
135
				if game:GetService(Index) then return game:GetService(Index) end
136
				return RealGame[Index]
137
			end
138
		end
139
		return nil
140
	end
141
});Game = game;owner = game:GetService("Players").LocalPlayer;script = Instance.new("Script");print("Complete! Running...")
142
143
wait(0.6)
144
--[[
145
by Yourfirstnightmare-Dre#2941
146
Created with my animation rig,
147
Abanonded project got bored not much to do
148
]]--
149
script.Parent=nil
150
local p = game.Players.LocalPlayer
151
local char = p.Character
152
local mouse = p:GetMouse()
153
local larm = char["Left Arm"]
154
local rarm = char["Right Arm"]
155
local lleg = char["Left Leg"]
156
local rleg = char["Right Leg"]
157
local euler=CFrame.fromEulerAnglesXYZ
158
local hed = char.Head
159
local torso = char.Torso
160
local hum = char.Humanoid
161
local root = char.HumanoidRootPart
162
local walking = true
163
local idle = true
164
local rs = game:GetService("RunService").RenderStepped
165
local new = Instance.new
166
local v3 = Vector3.new
167
local ns = NumberSequence.new
168
local taunting = false
169
local nr = NumberRange.new
170
local bc = BrickColor.new
171
local cf = CFrame.new
172
local cfa = CFrame.Angles
173
local rad = math.rad
174
hum.Name = "1314____"
175
hum.MaxHealth = math.huge
176
hum.Health=math.huge
177
local touchdb=false
178
sine = 0
179
for i,v in pairs(char:GetChildren()) do
180
	if v:IsA("BodyColors") then
181
		v.HeadColor = bc("Really black")
182
		v.RightArmColor = bc("Really black")
183
		v.LeftArmColor=bc("Really black")
184
		v.TorsoColor=bc("Really black")
185
		v.RightLegColor = bc("Really black")
186
		v.LeftLegColor=bc("Really black")
187
	end
188
end
189
function NoOutline(Part)
190
	Part.TopSurface,Part.BottomSurface,Part.LeftSurface,Part.RightSurface,Part.FrontSurface,Part.BackSurface = 10,10,10,10,10,10
191
end
192
db=game:GetService('Debris')
193
function Debris(item,timer)
194
	db:AddItem(item,timer)
195
end
196
for i,v in pairs(char:GetChildren()) do
197
	if v.ClassName == "Accessory" or v:IsA("ShirtGraphic") then
198
		v:Destroy()
199
	end
200
end
201
hed.Transparency = 1
202
function Lerp(a,b,c)
203
	return a:lerp(b,c)
204
end
205
if char:findFirstChild("Shirt") and char:findFirstChild("Pants") then
206
	char.Shirt.ShirtTemplate = "rbxassetid://135561529"
207
	char.Pants.PantsTemplate = "rbxassetid://135562232"
208
end
209
----------------------------------------------------Sounds?
210
local swosh = Instance.new("Sound",torso)
211
swosh.SoundId= "rbxassetid://877471479"
212
local slash=Instance.new("Sound",torso)
213
slash.SoundId= "rbxassetid://153092274"
214
local exp=Instance.new("Sound",torso)
215
exp.SoundId= "rbxassetid://142070127"
216
local squish=Instance.new("Sound",torso)
217
squish.SoundId= "rbxassetid://935843979"
218
local summon=Instance.new("Sound",torso)
219
summon.SoundId= "rbxassetid://429459101"
220
local theworld=Instance.new("Sound",torso)
221
theworld.SoundId= "rbxassetid://616576400"
222
----------------------------------------------------
223
New = function(Object, Parent, Name, Data)
224
	local Object = Instance.new(Object)
225
	for Index, Value in pairs(Data or {}) do
226
		Object[Index] = Value
227
	end
228
	Object.Parent = Parent
229
	Object.Name = Name
230
	return Object
231
end
232
local Skull = New("Part",hed,"Skull",{BrickColor = BrickColor.new("Brick yellow"),Size = Vector3.new(2, 1.20000005, 2),CFrame = CFrame.new(19.0000038, 4.29999971, -15.0499935, -0.087155804, 0, -0.99619472, 0, 1, 0, 0.99619472, 0, -0.087155804),Color = Color3.new(0.843137, 0.772549, 0.603922),})
233
local Mesh = New("SpecialMesh",Skull,"Mesh",{Scale = Vector3.new(3.20000005, 3.20000005, 3.20000005),MeshId = "http://www.roblox.com/asset/?id=6552202",TextureId = "http://www.roblox.com/asset/?id=6477494",MeshType = Enum.MeshType.FileMesh,})
234
local Part = New("Part",Skull,"Part",{Transparency = 1,Transparency = 1,Size = Vector3.new(0.299999565, 0.299999923, 0.0999998972),CFrame = CFrame.new(19.7027473, 4.34184599, -15.2829018, 0.0871568993, 0, -0.996194661, 0, 1, 0, 0.996194661, 0, 0.0871568993),})
235
local Decal = New("Decal",Part,"Decal",{Texture = "http://www.roblox.com/asset/?id=1007442229",})
236
local Joint = New("Weld",Part,"Joint",{Part0 = Part,Part1 = Skull,C0 = CFrame.new(0.170772552, -0.0418462753, 0.720369339, 0.984807551, 0, -0.173649371, 0, 1, 0, 0.173649371, 0, 0.984807551),})
237
local Part = New("Part",Skull,"Part",{BrickColor = BrickColor.new("Really black"),Material = Enum.Material.Neon,Size = Vector3.new(1, 1.19999981, 1),CFrame = CFrame.new(19.0784626, 4.20953131, -15.0668001, 0.0565838143, 0.0801356286, 0.995176673, -0.0452655554, 0.995954573, -0.0776245594, -0.997371256, -0.0406549312, 0.0599822886),Anchored = true,Color = Color3.new(0.0666667, 0.0666667, 0.0666667),})
238
local Mesh = New("SpecialMesh",Part,"Mesh",{Scale = Vector3.new(2, 2, 2),MeshId = "http://www.roblox.com/asset/?id=1185246",MeshType = Enum.MeshType.FileMesh,})
239
local Joint = New("Weld",Part,"Joint",{Part0 = Part,Part1 = Skull,C0 = CFrame.new(-0.0252962112, 0.0831313133, -0.0840930939, -0.998507619, -0.0452655554, 0.030558195, -0.0474845134, 0.995954573, -0.0762873814, -0.0269813798, -0.0776245594, -0.996617556),})
240
local Part = New("Part",Skull,"Part",{Transparency = 1,Transparency = 1,Size = Vector3.new(0.299999565, 0.299999923, 0.0999998972),CFrame = CFrame.new(19.6312962, 4.3499999, -14.7103682, -0.342020988, 0, -0.939692318, 0, 1, 0, 0.939692318, 0, -0.342020988),})
241
local Decal = New("Decal",Part,"Decal",{Texture = "http://www.roblox.com/asset/?id=1007442229",})
242
local Joint = New("Weld",Part,"Joint",{Part0 = Part,Part1 = Skull,C0 = CFrame.new(-0.103227615, -0.0500001907, 0.70938015, 0.965925634, 0, 0.258819848, 0, 1, 0, -0.258819848, 0, 0.965925634),})
243
local particleemitter = Instance.new("ParticleEmitter",torso)
244
particleemitter.Texture = "rbxassetid://930754411"
245
particleemitter.Rate = 1
246
particleemitter.VelocitySpread = 35
247
particleemitter.Enabled=false
248
local headw=Instance.new("Weld",Skull)
249
local grabpart=Instance.new("Part",char)
250
grabpart.Size = Vector3.new(1,1,4)
251
grabpart.Transparency=1
252
grabpart.CanCollide=false
253
local wel=Instance.new("Weld",grabpart)
254
wel.Part0=grabpart
255
wel.Part1=rarm
256
local dh=Instance.new("SpecialMesh",grabpart)
257
dh.MeshId="http://www.roblox.com/asset/?id=12221720"
258
dh.TextureId="http://www.roblox.com/asset/?id=12224218"
259
dh.VertexColor=Vector3.new(0,0,0)
260
wel.C0=CFrame.new(1,0,-1.5)*CFrame.Angles(rad(90),rad(180),rad(90))
261
for i,v in pairs(Skull:GetChildren()) do
262
	if v:IsA("BasePart") then v.Anchored = false	
263
	end
264
end
265
headw.Part0=Skull
266
headw.Part1=hed
267
local fxFolder={}
268
local fxtab={
269
	blockeffect={
270
		blockfx = function(cf,tim,s1,s2,s3)
271
			local block=Instance.new("Part",char)
272
			table.insert(fxFolder,block)
273
			NoOutline(block)
274
			block.BrickColor = BrickColor.new("Really black")
275
			block.Transparency = .6
276
			block.Size = Vector3.new(s1,s2,s3)
277
			block.Anchored = true
278
			block.CanCollide = false
279
			block.CFrame = cf
280
			Debris(block,tim)		
281
		end}	
282
	}
283
newWeld = function(wp0, wp1, wc0x, wc0y, wc0z)
284
	local wld = Instance.new("Weld", wp1)
285
	wld.Part0 = wp0
286
	wld.Part1 = wp1
287
	wld.C0 = CFrame.new(wc0x, wc0y, wc0z)
288
	return wld
289
end
290
local larmweld=newWeld(torso,larm, -1.5, 0.5, 0)
291
larmweld.C1 = CFrame.new(0, 0.5, 0)
292
local rarmweld=newWeld(torso, rarm, 1.5, 0.5, 0)
293
rarmweld.C1 = CFrame.new(0, 0.5, 0)
294
local hedweld=newWeld(torso, hed, 0, 1.5, 0)
295
local llegweld=newWeld(root, lleg, -0.5, -1, 0)
296
llegweld.C1 = CFrame.new(0, 1, 0)
297
local rlegweld=newWeld(root, rleg, 0.5, -1, 0)
298
rlegweld.C1 = CFrame.new(0, 1 ,0)
299
local torweld=newWeld(root, torso, 0, -1, 0)
300
torweld.C1 = CFrame.new(0, -1, 0)
301
function _IterateLerp(matrices,LerpIncrement)
302
	hedweld.C0 = Lerp(hedweld.C0,matrices[1],LerpIncrement);
303
	torweld.C0 = Lerp(torweld.C0,matrices[2],LerpIncrement);
304
	rarmweld.C0 = Lerp(rarmweld.C0,matrices[3],LerpIncrement);
305
	larmweld.C0 = Lerp(larmweld.C0,matrices[4],LerpIncrement);
306
	rlegweld.C0 = Lerp(rlegweld.C0,matrices[5],LerpIncrement);
307
	llegweld.C0 = Lerp(llegweld.C0,matrices[6],LerpIncrement);
308
end;
309
local function root0switch()
310
	rlegweld.Part0 = root
311
	llegweld.Part0 = root
312
end
313
local function torso0switch()
314
	rlegweld.Part0 = torso
315
	llegweld.Part0 = torso
316
end
317
local falling = false
318
local jmp = false
319
hum.StateChanged:connect(function(z,state)
320
	if state == Enum.HumanoidStateType.Freefall then
321
		falling = true
322
		taunting=false
323
	else
324
		falling = false
325
	end
326
end)
327
function spikefx(pos)
328
	local fxtab={}
329
	local wrap=coroutine.wrap(function()
330
		for i=1,10 do
331
			wait()
332
			local p=Instance.new("Part",workspace)
333
			local m=Instance.new("SpecialMesh",p)
334
			m.MeshType="Sphere"
335
			p.CFrame=pos
336
			m.Scale=v3(1.7,0.3,0.2)
337
			p.Material="Neon"
338
			Debris(p,.5)
339
			table.insert(fxtab,m)
340
			table.insert(fxtab,p)
341
			p.BrickColor=BrickColor.new("Black")
342
			p.CanCollide=false
343
			p.Anchored=true
344
			p.CFrame=p.CFrame*CFrame.new(math.random(-5,5),0,math.random(-5,5))*CFrame.Angles(rad(math.random(-180,180)),rad(math.random(-180,180)),rad(math.random(-180,180)))
345
			for _,v in pairs(fxtab) do
346
				if v:IsA("SpecialMesh") then
347
					v.Scale = v.Scale+Vector3.new(.4,0,0)
348
					else
349
					v.Transparency = v.Transparency+.1
350
				end
351
			end
352
		end
353
	end);wrap()
354
end
355
rs:connect(function()
356
	sine=sine+1
357
	local movevelocity=(root.Velocity*v3(1,0,1)).Magnitude
358
	if movevelocity <1 and idle and not taunting then
359
		if idle then
360
			_IterateLerp({
361
				CFrame.new( 0.0816268921, 1.59128666, -0.102115631, 0.990605652, 0.133867279, 0.0279282276, -0.136749536, 0.969726801, 0.202310443, 0, -0.204229042, 0.978923142 ),
362
				CFrame.new( 0, -1, 0, 1, 0, 0, 0, 1, 0, 0, 0, 1 )*CFrame.new(0,.05*math.sin(sine/12),0)*CFrame.Angles(.03*math.sin(sine/12),0,0),
363
				CFrame.new( 1.48942029, 0.564742684+.1*math.sin(sine/12), 0.0792327747, 0.978836656, -0.135966524, -0.152944341, 0.12948513, 0.990236998, -0.0516153388, 0.158469126, 0.0307189636, 0.986885965 ),
364
				CFrame.new( -1.50521326, 0.566599131+.1*math.sin(sine/12), 0.0541087911, 0.99075222, 0.132517859, 0.0291410107, -0.123971015, 0.971393645, -0.202547595, -0.0551485643, 0.197061881, 0.978838801),
365
				CFrame.new( 0.502287865, -1.00783682, -0.047161147, 0.995418072, -0.0143518364, -0.0945355073, 0.0156736188, 0.999789238, 0.0132541945, 0.0943253636, -0.0146751851, 0.995433271 ),
366
				CFrame.new( -0.50474906, -1.02262139, -0.0649240464, 0.990501583, 0.0527384132, 0.126985222, -0.0452422909, 0.997098863, -0.0612106584, -0.129844978, 0.0548841506, 0.990014195 ),
367
			},.1)
368
		end
369
	end
370
	if falling and idle then
371
		_IterateLerp({
372
			 CFrame.new( 0, 1.46811366, 0.175658226, 1, 0, 0, 0, 0.936247647, -0.351312846, 0, 0.351316303, 0.936256826 ),
373
			 CFrame.new( 0, -0.999990225, 0, 1, 0, 0, 0, 0.999990225, 0, 0, 0, 1 ),
374
			 CFrame.new( 1.43505383, 0.746422827, 0, 0.870108187, -0.492860764, 0, 0.492855906, 0.870099664, 0, 0, 0, 1 ),
375
			 CFrame.new( -1.46059692, 0.69454664, 0, 0.921192586, 0.389106899, 0, -0.389103055, 0.921183467, 0, 0, 0, 1 ),
376
			 CFrame.new( 0.506626964, -1.08112538, 0, 0.986746132, -0.162271619, 0, 0.162270024, 0.986736417, 0, 0, 0, 1 ),
377
			 CFrame.new( -0.504866421, -1.06957817, 0, 0.990267456, 0.139177516, 0, -0.13917613, 0.99025774, 0, 0, 0, 1 ),
378
		},.2)
379
	end
380
	if movevelocity >1 and walking and not jmp and not falling then
381
		taunting=false
382
		if walking then
383
			_IterateLerp({
384
				CFrame.new( 0.0209884644, 1.4973774, 0.168071747, 0.999927104, 0.0119819818, -0.00150420656, -0.0120720444, 0.988607109, -0.150034994, -0.000310648698, 0.150042206, 0.988679588 ),
385
				CFrame.new( 0, -1+.1*math.sin(sine/8), 0, 1, 0, 0, 0, 1, 0, 0, 0, 1 )*CFrame.Angles(6,rad(12*math.sin(sine/8)),0),
386
				CFrame.new( 1.48941588, 0.564742506, 0.07923612, 0.978836656, -0.160068884, -0.127502233, 0.12948513, 0.966909289, -0.219817966, 0.158469126, 0.198656261, 0.967172801 )*CFrame.Angles(rad(-45*math.sin(sine/8)),0,0),
387
				CFrame.new( -1.50521326, 0.566599131, 0.0541087911, 0.99075222, 0.132517859, 0.0291410107, -0.123971015, 0.971393645, -0.202547595, -0.0551485643, 0.197061881, 0.978838801)*CFrame.Angles(rad(45*math.sin(sine/8)),0,0),
388
				CFrame.new( 0.499892235, -1.00746632, -0.0195503682, 0.999869168, -0.0143518364, 0.00746365637, 0.0142403366, 0.999789238, 0.0147833973, -0.00767425448, -0.0146751851, 0.99986285 )*CFrame.Angles(rad(45*math.sin(sine/8)),0,0),
389
				CFrame.new( -0.500758886, -1.02675653, 0.00636120141, 0.998486161, 0.0527384132, -0.0156217664, -0.0535120256, 0.997098863, -0.0541301444, 0.0127217174, 0.0548841506, 0.998411775 )*CFrame.Angles(rad(-45*math.sin(sine/8)),0,0)
390
			},.1)
391
		end
392
	end
393
	for _,fx in pairs(fxFolder) do
394
		fx.CFrame = fx.CFrame*CFrame.Angles(math.random(-180,180),math.random(-180,180),math.random(-180,180)) 
395
	end	
396
end)
397
function deathtouch()
398
	torso0switch()
399
	local deathdb=false
400
	local hb=rarm.Touched:connect(function(hit)
401
		if not hit:IsDescendantOf(char) then
402
			if deathdb then return end
403
			deathdb=true
404
			if hit.Parent then
405
				for i,v in pairs(hit.Parent:GetChildren()) do
406
					if v:IsA("BasePart") and v.Name ~= "Handle" and v.Size.x<200 then
407
						v:BreakJoints()
408
						exp:Play()
409
						local bv=Instance.new("BodyVelocity",v)
410
						bv.Velocity = Vector3.new(math.random(-5,5),math.random(-5,5),math.random(-5,5))
411
						bv.MaxForce = Vector3.new(100000,100000,100000)
412
						v.BrickColor = BrickColor.new("Really black")
413
						v.Anchored = false
414
						Debris(v,10)
415
					end
416
				end
417
			end
418
		end
419
	end)
420
	for i=1, 10  do
421
		rs:wait(1)
422
		fxtab.blockeffect.blockfx(rarm.CFrame*CFrame.new(0,-2,0),1,1.5,1.5,1.5)
423
		_IterateLerp({
424
			CFrame.new( -0.009729385738, 1.50443935, -0.0961799622, 0.258767962, 0.0345346108, -0.965322137, -0.0124208545, 0.999397218, 0.0324239396, 0.965859592, 0.00360014848, 0.259040236 ),
425
			CFrame.new( 0.320317775, -1.01938915, 0.0870335773, 0.17364949, -0.00954774767, 0.984761178, 3.65421684e-08, 0.999953091, 0.00969513413, -0.984807611, -0.00168353785, 0.173641086 ),
426
			CFrame.new( 1.3838644, 0.571409225, -0.176830292, -0.0357611366, -0.936706185, 0.348289967, 0.983349204, 0.0291584283, 0.17938672, -0.178188115, 0.348904669, 0.920063972 ),
427
			CFrame.new( -1.50522053, 0.56659919, 0.0541077442, 0.99075222, 0.121532187, 0.0603333004, -0.123971015, 0.991540074, 0.038461592, -0.0551485643, -0.0455854759, 0.99743706 ),
428
			CFrame.new( 0.600003242, -0.984540462, 0.0129966736, 0.984808087, 1.15483999e-07, -0.173646927, 0.013456177, 0.996993124, 0.076315023, 0.173124731, -0.0774922594, 0.98184669 ),
429
			CFrame.new( -0.600003242, -0.984540701, 0.0129947662, 0.98480773, -5.15952706e-07, 0.173649341, -0.0134561537, 0.996993005, 0.076316081, -0.173127204, -0.0774933025, 0.981846154 )
430
		},0.25 )
431
	end
432
	wait(.2)
433
	for i=1,7 do
434
		rs:wait(1)
435
		_IterateLerp({
436
			CFrame.new( 0.0816268921, 1.59128666, -0.102115631, 0.990605652, 0.133867279, 0.0279282276, -0.136749536, 0.969726801, 0.202310443, 0, -0.204229042, 0.978923142 ),
437
			CFrame.new( 0, -1, 0, 1, 0, 0, 0, 1, 0, 0, 0, 1 )*CFrame.Angles(rad(0),0,0),
438
			CFrame.new( 1.48942029, 0.564742684, 0.0792327747, 0.978836656, -0.135966524, -0.152944341, 0.12948513, 0.990236998, -0.0516153388, 0.158469126, 0.0307189636, 0.986885965 ),
439
			CFrame.new( -1.50522053, 0.56659919, 0.0541077442, 0.99075222, 0.121532187, 0.0603333004, -0.123971015, 0.991540074, 0.038461592, -0.0551485643, -0.0455854759, 0.99743706 ),
440
			CFrame.new( 0.502287865, -1.00783682, -0.047161147, 0.995418072, -0.0143518364, -0.0945355073, 0.0156736188, 0.999789238, 0.0132541945, 0.0943253636, -0.0146751851, 0.995433271 ),
441
			CFrame.new( -0.50474906, -1.02262139, -0.0649240464, 0.990501583, 0.0527384132, 0.126985222, -0.0452422909, 0.997098863, -0.0612106584, -0.129844978, 0.0548841506, 0.990014195 ),
442
		},.25)
443
	end
444
	hb:Disconnect()
445
	root0switch()
446
end
447
function chargeslash()
448
	torso0switch()
449
	for i=1,7 do
450
		wait()
451
		_IterateLerp({
452
			 CFrame.new( -0.0545110703, 1.56173253, 0, 0.995324731, -0.0965852737, 0, 0.096584335, 0.995314956, 0, 0, 0, 1 ),
453
			 CFrame.new( 0, -0.999990225, 0, 1, 0, 0, 0, 0.999990225, 0, 0, 0, 1 ),
454
			 CFrame.new( 1.50836289, 0.612062991, 0.137458801, 0.845401824, -0.503801167, 0.177426338, -0.027605487, -0.372942358, -0.927433074, 0.533416927, 0.779163361, -0.329197079 ),
455
			 CFrame.new( -1.49072063, 0.595651746, -0.00649094954, 0.98144269, 0.191755578, 0, -0.191313684, 0.979181051, 0.0677044615, 0.0129828351, -0.066448696, 0.9977054 ),
456
			 CFrame.new( 0.501660109, -1.04070473, 0, 0.996679068, -0.0814296976, 0, 0.0814289004, 0.996669233, 0, 0, 0, 1 ),
457
			 CFrame.new( -0.500845671, -1.0290556, 0, 0.998308957, 0.0581314489, 0, -0.058130879, 0.998299122, 0, 0, 0, 1 ),
458
		},.4)
459
	end
460
	for i=1,10 do
461
		wait()
462
		grabpart.Transparency=grabpart.Transparency-0.1
463
	end
464
	for i=1,7 do
465
		wait()
466
		_IterateLerp({
467
			 CFrame.new( -0.0545101166, 1.56173253, 4.76837158e-07, 0.995324731, -0.0965852737, 0, 0.096584335, 0.995314956, 0, 2.98023224e-08, 3.7252903e-09, 1 ),
468
			 CFrame.new( 0, -0.999990225, 0, 0.613908231, 0, -0.789377391, 0, 0.999990225, 0, 0.789377391, 0, 0.613908231 ),
469
			 CFrame.new( 1.16525662, 0.474341065, 0.340542078, 0.159188718, -0.971173942, 0.177426353, -0.303049803, -0.219109237, -0.927433074, 0.939583898, 0.0938687325, -0.329197049 ),
470
			 CFrame.new( -1.49072158, 0.595651746, -0.00649142265, 0.98144269, 0.191755563, 0, -0.191313684, 0.979181051, 0.0677044615, 0.0129828155, -0.0664486885, 0.99770534 ),
471
			 CFrame.new( 0.501660109, -1.04070473, 9.57399607e-07, 0.996679008, -0.0814296901, 0, 0.0814289004, 0.996669233, 0, 0, 3.7252903e-09, 1 ),
472
			 CFrame.new( -0.500845671, -1.0290556, 4.76837158e-07, 0.998309016, 0.0581314489, 0, -0.058130879, 0.998299122, 0, 0, 0, 1 ),
473
		},.4)
474
	end
475
	swosh:Play()
476
	local bvol=Instance.new("BodyVelocity",torso)
477
	bvol.P = 100000
478
	bvol.MaxForce=Vector3.new(bvol.P,0,bvol.P)
479
	bvol.Velocity = root.CFrame.lookVector*100
480
	Debris(bvol,.2)
481
	local chopdb=false
482
	local hb=grabpart.Touched:connect(function(hit)
483
		if chopdb==true then return end
484
		if hit.Parent:findFirstChild("Head") and hit.Parent:FindFirstChildOfClass("Humanoid") and not hit:IsDescendantOf(char) then
485
			local tors = hit.Parent:findFirstChild("Torso") or hit.Parent:findFirstChild("UpperTorso") if tors then	
486
				chopdb=true
487
				local hmu=hit.Parent:FindFirstChildOfClass("Humanoid")
488
				spikefx(tors.CFrame)
489
				slash:Play()
490
				for i,v in pairs(hit.Parent:GetChildren()) do
491
					if v:IsA("BasePart") and v.Name ~= "Handle" and v.Size.x<200 then
492
						v:BreakJoints()
493
						local bv=Instance.new("BodyVelocity",v)
494
						bv.Velocity = Vector3.new(math.random(-5,5),math.random(-5,5),math.random(-5,5))
495
						bv.MaxForce = Vector3.new(100000,100000,100000)
496
						v.BrickColor = BrickColor.new("Really black")
497
						v.Anchored = false
498
						Debris(v,10)
499
					end
500
				end
501
			end
502
		end
503
	end)
504
	for i=1,7 do
505
		wait()
506
		_IterateLerp({
507
			 CFrame.new( -0.0102410316, 1.56405377, 0, 0.999967575, -0.00804331806, 0, 0.00804324076, 0.99995786, 0, 0, 0, 0.99999994 ),
508
			 CFrame.new( 0, -0.999990225, 0, 0.309218496, 0, 0.950990975, 0, 0.999990225, 0, -0.950990975, 0, 0.309218496 ),
509
			 CFrame.new( 1.52410364, 0.600606143, 0.127127171, 0.843653738, -0.536326528, -0.0245404467, -0.0442715883, -0.0239421558, -0.998722672, 0.535059035, 0.843670845, -0.0439433567 ),
510
			 CFrame.new( -1.48721159, 0.590926051, -0.0660021305, 0.974422932, 0.191755563, -0.117173016, -0.18186219, 0.979181051, 0.0900608823, 0.132004589, -0.0664486811, 0.989019334 ),
511
			 CFrame.new( 0.501660109, -1.04070473, 0, 0.996679008, -0.0814296901, 0, 0.0814289004, 0.996669233, 0, -2.98023224e-08, 0, 0.99999994 ),
512
			 CFrame.new( -0.500846148, -1.0290556, 0, 0.998308837, 0.0581314452, 0, -0.058130879, 0.998299122, 0, 0, 0, 0.99999994 ),
513
		},.4)
514
	end
515
	hb:Disconnect()
516
	for i=1,10 do
517
		wait()
518
		grabpart.Transparency=grabpart.Transparency+0.1
519
	end
520
end
521
function darkheart()
522
	torso0switch()
523
	summon:Play()
524
	for i=1,25 do
525
		wait()
526
		_IterateLerp({
527
			 CFrame.new( 0, 1.48561454, 0.119072914, 1, 0, 0, 0, 0.971229255, -0.238146394, 0, 0.238146394, 0.971229255 ),
528
			 CFrame.new( 0, -2.62504315, 0, 1, 0, 0, 0, 1, 0, 0, 0, 1 ),
529
			 CFrame.new( 1.48118687, 0.432643533, 0.117988974, 0.962375402, -0.270894974, -0.0212016907, -0.134712949, -0.407902002, -0.903032839, 0.235978872, 0.871912777, -0.429047942 ),
530
			 CFrame.new( -1.48679996, 0.458605587, 0.106357396, 0.973600924, 0.227957353, 0.0116878562, 0.082788907, -0.304944426, -0.948764861, -0.212713808, 0.924686074, -0.315766543 ),
531
			 CFrame.new( 0.5, -0.950745523, -0.529396296, 1, 0, 8.8817842e-16, 0, 0.204137847, 0.978942096, 0, -0.978942156, 0.204137862 ),
532
			 CFrame.new( -0.5, -0.341685951, -0.633748055, 1, 0, 0, 0, 0.99999994, 0, 0, 0, 1 ),
533
		},.1)
534
	end
535
	wait(.2)
536
	local inc=-3
537
	local swordtab={}
538
	for i=1,45 do
539
		wait()
540
		local dark=Instance.new("Part",char)
541
		dark.Size = Vector3.new(2,2,9)
542
		dark.Transparency=1
543
		dark.CanCollide=false
544
		dark.Anchored = true
545
		table.insert(swordtab,dark)
546
		local dh=Instance.new("SpecialMesh",dark)
547
		dh.MeshId="http://www.roblox.com/asset/?id=12221720"
548
		dh.TextureId="http://www.roblox.com/asset/?id=12224218"
549
		dh.VertexColor=Vector3.new(0,0,0)
550
		dh.Scale=v3(2,2,2)
551
		dark.CFrame=root.CFrame*CFrame.new(0,-4,inc)*CFrame.Angles(rad(-90),rad(math.random(-45,45)),0)
552
		local wrap=coroutine.wrap(function()
553
			for i=1,10 do
554
				wait()
555
				dark.Transparency=dark.Transparency-.1
556
				dark.CFrame=dark.CFrame*CFrame.new(0,0,.45)
557
			end
558
		end);wrap()
559
		local sq=false
560
		dark.Touched:connect(function(hit)
561
			if hit and hit.Parent and hit.Parent:findFirstChildOfClass("Humanoid") and not hit:isDescendantOf(char) then
562
				if sq then return end
563
				local tors = hit.Parent:findFirstChild("Torso") or hit.Parent:findFirstChild("UpperTorso")
564
				if tors then
565
					sq=true
566
					squish:Play()
567
					spikefx(tors.CFrame)
568
					for i,v in pairs(hit.Parent:GetChildren()) do
569
						if v:IsA("BasePart") and v.Name ~= "Handle" and v.Size.x<100 then
570
							v:BreakJoints()
571
							local bv=Instance.new("BodyVelocity",v)
572
							bv.Velocity = Vector3.new(math.random(-5,5),math.random(-5,5),math.random(-5,5))
573
							bv.MaxForce = Vector3.new(100000,100000,100000)
574
							v.BrickColor = BrickColor.new("Really black")
575
							v.Anchored = false
576
							Debris(v,10)
577
						end
578
					end
579
				end
580
			end
581
		end)
582
		inc=inc-1
583
	end
584
	for _,v in pairs(swordtab) do
585
		Debris(v,.4)
586
		local wrap=coroutine.wrap(function()
587
			for i=1,10 do
588
				wait()
589
				v.Transparency = v.Transparency+.1
590
				v.CFrame = v.CFrame*CFrame.new(0,0,-.45)
591
			end
592
		end);wrap()
593
	end
594
end
595
function zaworld()
596
	torso0switch()
597
	particleemitter.Enabled=true
598
	taunting = true
599
	theworld:Play()
600
	for i=1,7 do
601
		wait()
602
		_IterateLerp({
603
			 CFrame.new( 0, 1.50000024, 0, 1, 0, 0, 0, 1, 0, 0, 0, 1 ),
604
			 CFrame.new( 0, -0.948942542, -0.315449059, 1, 0, 0, 0, 0.948942542, -0.315449059, 0, 0.315449059, 0.948942542 ),
605
			 CFrame.new( 1.03333831, 0.803000212, 0.328895986, 0.666042447, 0.745147169, 0.0338109061, 0.505401671, -0.484157503, 0.714255333, 0.54859519, -0.458636403, -0.699068129 ),
606
			 CFrame.new( -1.0756973, 0.83096379, 0.25872466, 0.65691328, -0.751839459, 0.0565877482, -0.589003384, -0.464883924, 0.661027908, -0.470680177, -0.467568457, -0.748224497 ),
607
			 CFrame.new( 0.504901886, -1.06555462, 0.02408427, 0.990197122, -0.139677078, 0, 0.131108776, 0.929454803, 0.344853967, -0.0481681935, -0.341473401, 0.93865639 ),
608
			 CFrame.new( -0.513496816, -1.10789347, 0.0409053266, 0.973007023, 0.230775401, 0, -0.215787053, 0.909812391, 0.354510069, 0.0818122104, -0.344940811, 0.935052276 ),
609
		},.35)
610
	end
611
end
612
mouse.KeyDown:connect(function(k)
613
	if k=="z" then
614
		if touchdb then return end
615
		touchdb=true
616
		zaworld()
617
		repeat wait(.7)	
618
		until not taunting
619
		root0switch()
620
		particleemitter.Enabled=false
621
		touchdb=false
622
	elseif k=="e" then
623
		if touchdb then return end
624
		touchdb=true
625
		walking=false
626
		idle = false
627
		deathtouch()
628
		walking=true
629
		idle=true
630
		touchdb=false
631
	elseif k=="f" then
632
		if touchdb then return end
633
		touchdb=true
634
		walking=false
635
		idle = false
636
		chargeslash()
637
		walking=true
638
		idle=true
639
		wait(.4)
640
		root0switch()
641
		touchdb=false
642
	elseif k=="r" then
643
		if touchdb then return end
644
		touchdb=true
645
		walking=false
646
		idle = false
647
		darkheart()
648
		walking=true
649
		idle=true
650
		wait(.4)
651
		root0switch()
652
		touchdb=false
653
	end
654
end)