View difference between Paste ID: jpSt4fDc and V75ZU0UZ
SHOW: | | - or go back to the newest paste.
1-
--==Made by LuisPambid==--
1+
-- This script has been converted to FE by iPxter
2
3
4
if game:GetService("RunService"):IsClient() then error("Script must be server-side in order to work; use h/ and not hl/") end
5
local Player,Mouse,mouse,UserInputService,ContextActionService = owner
6
do
7
	print("FE Compatibility code by Mokiros | Translated to FE by iPxter")
8
	script.Parent = Player.Character
9
10
	--RemoteEvent for communicating
11
	local Event = Instance.new("RemoteEvent")
12
	Event.Name = "UserInput_Event"
13
14
	--Fake event to make stuff like Mouse.KeyDown work
15
	local function fakeEvent()
16
		local t = {_fakeEvent=true,Connect=function(self,f)self.Function=f end}
17
		t.connect = t.Connect
18
		return t
19
	end
20
21
	--Creating fake input objects with fake variables
22
    local m = {Target=nil,Hit=CFrame.new(),KeyUp=fakeEvent(),KeyDown=fakeEvent(),Button1Up=fakeEvent(),Button1Down=fakeEvent()}
23
	local UIS = {InputBegan=fakeEvent(),InputEnded=fakeEvent()}
24
	local CAS = {Actions={},BindAction=function(self,name,fun,touch,...)
25
		CAS.Actions[name] = fun and {Name=name,Function=fun,Keys={...}} or nil
26
	end}
27
	--Merged 2 functions into one by checking amount of arguments
28
	CAS.UnbindAction = CAS.BindAction
29
30
	--This function will trigger the events that have been :Connect()'ed
31
	local function te(self,ev,...)
32
		local t = m[ev]
33
		if t and t._fakeEvent and t.Function then
34
			t.Function(...)
35
		end
36
	end
37
	m.TrigEvent = te
38
	UIS.TrigEvent = te
39
40
	Event.OnServerEvent:Connect(function(plr,io)
41
	    if plr~=Player then return end
42
		if io.isMouse then
43
			m.Target = io.Target
44
			m.Hit = io.Hit
45
		else
46
			local b = io.UserInputState == Enum.UserInputState.Begin
47
			if io.UserInputType == Enum.UserInputType.MouseButton1 then
48
				return m:TrigEvent(b and "Button1Down" or "Button1Up")
49
			end
50
			for _,t in pairs(CAS.Actions) do
51
				for _,k in pairs(t.Keys) do
52
					if k==io.KeyCode then
53
						t.Function(t.Name,io.UserInputState,io)
54
					end
55
				end
56
			end
57
			m:TrigEvent(b and "KeyDown" or "KeyUp",io.KeyCode.Name:lower())
58
			UIS:TrigEvent(b and "InputBegan" or "InputEnded",io,false)
59
	    end
60
	end)
61
	Event.Parent = NLS([==[
62
	local Player = game:GetService("Players").LocalPlayer
63
	local Event = script:WaitForChild("UserInput_Event")
64
65
	local UIS = game:GetService("UserInputService")
66
	local input = function(io,a)
67
		if a then return end
68
		--Since InputObject is a client-side instance, we create and pass table instead
69
		Event:FireServer({KeyCode=io.KeyCode,UserInputType=io.UserInputType,UserInputState=io.UserInputState})
70
	end
71
	UIS.InputBegan:Connect(input)
72
	UIS.InputEnded:Connect(input)
73
74
	local Mouse = Player:GetMouse()
75
	local h,t
76
	--Give the server mouse data 30 times every second, but only if the values changed
77
	--If player is not moving their mouse, client won't fire events
78
	while wait(1/30) do
79
		if h~=Mouse.Hit or t~=Mouse.Target then
80
			h,t=Mouse.Hit,Mouse.Target
81
			Event:FireServer({isMouse=true,Target=t,Hit=h})
82
		end
83
	end]==],Player.Character)
84
	Mouse,mouse,UserInputService,ContextActionService = m,m,UIS,CAS
85
end--==Made by LuisPambid==--
86
87
88
local player=game.Players.LocalPlayer
89
local char=player.Character
90
repeat wait() until player and char
91
local torso=char.Torso
92
local head=char.Head
93
local human=char.Humanoid
94
local arm={Left=char["Left Arm"], Right=char["Right Arm"]}
95
local leg={Left=char["Left Leg"], Right=char["Right Leg"]}
96
local c=function(f) coroutine.resume(coroutine.create(f)) end
97
local p=function(f) pcall(f) end
98
local add = {
99
	Part=function(par, a, c, col, t, s, cf, ms)
100
		local p=Instance.new("Part", par) pcall(function() p.TopSurface="Smooth" p.BottomSurface="Smooth" p.formFactor="Custom" p.Anchored=a p.CanCollide=c p.BrickColor=BrickColor.new(col) p.Transparency=t p.Size=s p.CFrame=cf or CFrame.new()  end)
101
		local m=Instance.new("BlockMesh", p) pcall(function() m.Scale=ms or Vector3.new(1, 1, 1) end)
102
		return p
103
	end,
104
	Wedge=function(par, a, c, col, t, s, cf, ms)
105
		local p=Instance.new("WedgePart", par) pcall(function() p.TopSurface="Smooth" p.BottomSurface="Smooth" p.formFactor="Custom" p.Anchored=a p.CanCollide=c p.BrickColor=BrickColor.new(col) p.Transparency=t p.Size=s p.CFrame=cf or CFrame.new()  end)
106
		local m=Instance.new("SpecialMesh", p) pcall(function() m.Scale=ms or Vector3.new(1, 1, 1) m.MeshType="Wedge" end)
107
		return p
108
	end,
109
	Gui=function(ins, par, bc, bg, tc, fs, text, t, s, pos)
110
		local g=Instance.new(ins, par) pcall(function() g.BorderColor=BridckColor.new(bc) g.BackgroundColor=BrickColor.new(bg) g.TextColor=BrickColor.new(tc) g.FontSize=fs g.Font="ArialBold" g.Text=text g.Transparency=t g.Size=s g.Position=pos  end)
111
		return g
112
	end,
113
	Weld=function(par, p1, cf)
114
		local w=Instance.new("Weld", par) pcall(function() w.Part0=w.Parent or par w.Part1=p1 w.C1=cf or CFrame.new() end)
115
		return w
116
	end,
117
	Mesh=function(ins, par, s, of, t)
118
		local m=Instance.new(ins, par) pcall(function() m.Scale=s or Vector3.new() m.Offset=of or Vector3.new() m.MeshType=t end)
119
		return m
120
	end,
121
	Sound=function(parent, id, volume, pitch)
122
		local s=Instance.new("Sound", parent) pcall(function() s.SoundId=id s.Volume=volume s.Pitch=pitch end)
123
		return s
124
	end,
125
}
126
local scriptname="Spy" --Name here
127
pcall(function() player.Backpack[scriptname]:remove() char[scriptname]:remove() char["Objects"]:remove() player.PlayerGui[scriptname]:remove()  end)
128
local model=Instance.new("Model", char) model.Name="Objects"
129
local modelB=Instance.new("Model", char) modelB.Name=scriptname
130
local gui=Instance.new("ScreenGui", player.PlayerGui) gui.Name=scriptname
131
local bin=Instance.new("HopperBin", player.Backpack) bin.Name=scriptname
132
local skincolor="Really black"
133
local body={}
134
local animate={}
135
local obj={}
136
function createParts()
137
	--==PARTS==--
138
	body.Torso=add.Part(model, false, false, skincolor, 1, Vector3.new(2, 2, 1), nil)
139
	body.ArmLeft, body.ArmRight=add.Part(model, false, false, skincolor, 1, Vector3.new(1, 1, 1), nil), add.Part(model, false, false, skincolor, 1, Vector3.new(1, 1, 1), nil)
140
	body.LegLeft, body.LegRight=add.Part(model, false, false, skincolor, 1, Vector3.new(1, 1, 1), nil), add.Part(model, false, false, skincolor, 1, Vector3.new(1, 1, 1), nil)
141
	--==WELDS==--
142
	body.TorsoW=add.Weld(body.Torso, torso, nil)
143
	body.ArmLeftW, body.ArmRightW=add.Weld(body.ArmLeft, body.Torso, CFrame.new(-1.5, .5, 0)), add.Weld(body.ArmRight, body.Torso, CFrame.new(1.5, .5, 0))
144
	body.LegLeftW, body.LegRightW=add.Weld(body.LegLeft, body.Torso, CFrame.new(-.5, -1.5, 0)), add.Weld(body.LegRight, body.Torso, CFrame.new(.5, -1.5, 0))
145
	--==MESHES==--
146
	add.Weld(arm.Left, body.ArmLeft, CFrame.new(0, -.5, 0))
147
	add.Weld(arm.Right, body.ArmRight, CFrame.new(0, -.5, 0))
148
	torso["Left Hip"].Part0=body.Torso
149
	torso["Right Hip"].Part0=body.Torso
150
	---------------------------------------------------------------------------------------
151
	animate={
152
		["Torso"]=function(cf) body.Torso.Transparency=0 torso.Transparency=1
153
			body.TorsoW.C1=cf
154
		end;
155
		["ArmLeft"]=function(cf)
156
			body.ArmLeftW.C1=CFrame.new(-1.5, .5, 0)*cf
157
		end;
158
		["ArmRight"]=function(cf)
159
			body.ArmRightW.C1=CFrame.new(1.5, .5, 0)*cf
160
		end;
161
		["LegLeft"]=function(cf)
162
			body.LegLeftW.C1=CFrame.new(-.5, -1.5, 0)*cf
163
		end;
164
		["LegRight"]=function(cf)
165
			body.LegRightW.C1=CFrame.new(.5, -1.5, 0)*cf
166
		end;
167
	}
168
	--==Objects==--
169
	obj.HandleBack=add.Part(modelB, false, false, "Really black", 0, Vector3.new(.2, 1, .2), nil)
170
	obj.HandleBackW=add.Weld(obj.HandleBack, body.ArmRight, CFrame.new(0, -1.5, 0)*CFrame.Angles(-math.rad(90), 0, 0))
171
	obj.EdgeBot=add.Part(modelB, false, false, "Really black", 0, Vector3.new(.2, .2, .2), nil)
172
	obj.EdgeBotM=add.Mesh("CylinderMesh", obj.EdgeBot, Vector3.new(1, 1, 1), nil, nil)
173
	obj.EdgeBotW=add.Weld(obj.EdgeBot, obj.HandleBack, CFrame.new(0, -.5, 0)*CFrame.Angles(math.rad(90), 0, math.rad(90)))
174
	obj.EdgeTopR=add.Part(modelB, false, false, "Really black", 0, Vector3.new(.2, .2, .2), nil)
175
	obj.EdgeTopRM=add.Mesh("CylinderMesh", obj.EdgeTopR, Vector3.new(1, 1, 1), nil, nil)
176
	obj.EdgeTopRW=add.Weld(obj.EdgeTopR, obj.HandleBack, CFrame.new(0, .5, 0)*CFrame.Angles(math.rad(90), 0, math.rad(90)))
177
178
	obj.Blade=add.Part(modelB, false, false, "Gold", 0, Vector3.new(.2, .8, .2), nil)
179
	obj.BladeM=add.Mesh("BlockMesh", obj.Blade, Vector3.new(.5, 1, 1), nil, nil)
180
	obj.BladeW=add.Weld(obj.Blade, obj.EdgeTopR, CFrame.new(-.1, 0, -.4)*CFrame.Angles(-math.rad(90), math.rad(90), 0))
181
	obj.Point=add.Part(modelB, false, false, "Gold", 0, Vector3.new(.2, .4, .2), nil)
182
	obj.PointM=add.Mesh("SpecialMesh", obj.Point, Vector3.new(.5, 1, .5), nil, "Wedge")
183
	obj.PointW=add.Weld(obj.Point, obj.Blade, CFrame.new(0, .6, .05)*CFrame.Angles(0, math.rad(180), 0))
184
	obj.Point2=add.Part(modelB, false, false, "Gold", 0, Vector3.new(.2, .4, .2), nil)
185
	obj.Point2M=add.Mesh("SpecialMesh", obj.Point2, Vector3.new(.5, 1, .5), nil, "Wedge")
186
	obj.Point2W=add.Weld(obj.Point2, obj.Blade, CFrame.new(0, .6, -.05))
187
188
	obj.Joints=add.Part(modelB, false, false, "Gold", 0, Vector3.new(.2, .25, .2), nil)
189
	obj.JointsM=add.Mesh("CylinderMesh", obj.Joints, Vector3.new(.5, 1, .5), nil, nil)
190
	obj.JointsW=add.Weld(obj.Joints, obj.EdgeBot, nil)
191
	obj.Joints=add.Part(modelB, false, false, "Gold", 0, Vector3.new(.2, .25, .2), nil)
192
	obj.JointsM=add.Mesh("CylinderMesh", obj.Joints, Vector3.new(.5, 1, .5), nil, nil)
193
	obj.JointsW=add.Weld(obj.Joints, obj.EdgeTopR, nil)
194
195
	obj.EdgeTopR2=add.Part(modelB, false, false, "Really black", 0, Vector3.new(.2, .2, .2), nil)
196
	obj.EdgeTopR2M=add.Mesh("CylinderMesh", obj.EdgeTopR2, Vector3.new(1, 1, 1), nil, nil)
197
	obj.EdgeTopR2W=add.Weld(obj.EdgeTopR2, obj.Blade, CFrame.new(0, -.4, -.1)*CFrame.Angles(math.rad(90), 0, math.rad(90)))
198
	obj.HandleFor=add.Part(modelB, false, false, "Really black", 0, Vector3.new(.2, 1, .2), nil)
199
	obj.HandleForW=add.Weld(obj.HandleFor, obj.EdgeTopR2, CFrame.new(0, 0, .5)*CFrame.Angles(-math.rad(90), -math.rad(90), 0))
200
	obj.EdgeBot=add.Part(modelB, false, false, "Really black", 0, Vector3.new(.2, .2, .2), nil)
201
	obj.EdgeBotM=add.Mesh("CylinderMesh", obj.EdgeBot, Vector3.new(1, 1, 1), nil, nil)
202
	obj.EdgeBotW=add.Weld(obj.EdgeBot, obj.HandleFor, CFrame.new(0, -.5, 0)*CFrame.Angles(math.rad(90), 0, math.rad(90)))
203
	obj.Joints=add.Part(modelB, false, false, "Gold", 0, Vector3.new(.2, .25, .2), nil)
204
	obj.JointsM=add.Mesh("CylinderMesh", obj.Joints, Vector3.new(.5, 1, .5), nil, nil)
205
	obj.JointsW=add.Weld(obj.Joints, obj.EdgeBot, nil)
206
	obj.Joints=add.Part(modelB, false, false, "Gold", 0, Vector3.new(.2, .25, .2), nil)
207
	obj.JointsM=add.Mesh("CylinderMesh", obj.Joints, Vector3.new(.5, 1, .5), nil, nil)
208
	obj.JointsW=add.Weld(obj.Joints, obj.EdgeTopR2, nil)
209
end
210
function removeParts()
211
	p(function()
212
		if torso then
213
			torso["Left Hip"].Part0=torso
214
			torso["Right Hip"].Part0=torso
215
		end
216
		for i, v in pairs(model:children()) do v:remove() end	for i, v in pairs(modelB:children()) do v:remove() end	for i, v in pairs(char:children()) do v.Transparency=0 end
217
	end)
218
end
219
--Variables--
220
local trailDeb=false
221
local using=false
222
local combo=1
223
local onStab=false
224
local keyDeb=false
225
local switch=false
226
local switch2=false
227
local keyDeb2=false
228
local hitDeb=false
229
local dmg=math.random(5, 10)
230
local speed=20
231
local pitch=.8
232
local Slash=add.Sound(torso, "rbxasset://sounds//swordslash.wav", 2, pitch)
233
local Hit=add.Sound(torso, "http://www.roblox.com/asset/?id=30715280", 2, 2)
234
local Abscond=add.Sound(torso, "http://www.roblox.com/asset/?id=2767090", 2, 2)
235
local Equip=add.Sound(torso, "http://www.roblox.com/asset/?id=13510737", 2, 2)
236
local attackLabel=add.Gui("TextLabel", gui, "Gold", "Gold", "Gold", "Size18", "Invisible(Q)", 0, UDim2.new(0, 150, 0, 50), UDim2.new(0, 0, 0, 150))
237
local attackLabel2=add.Gui("TextLabel", attackLabel, "Gold", "Gold", "Gold", "Size18", "Disguise(E)", 0, UDim2.new(1, 0, 1, 0), UDim2.new(0, 0, 1, 0))
238
239
function lightningGen(startPos, endPos)
240
	local magnitude=(startPos-endPos).magnitude
241
	local distance=(startPos+endPos)/2
242
	local pattern=add.Part(workspace, true, false, "Gold", 1, Vector3.new(.2, .2, magnitude), CFrame.new(distance, startPos))
243
	local startPosProx=startPos
244
	for i=1, 9 do
245
		local startPosProx2=startPosProx
246
		local random=Vector3.new(math.random(-1, 1), math.random(-1, 1), math.random(-1, 1))
247
		local findSize=pattern.Size.z/10
248
		local findOffSet=pattern.CFrame.lookVector*-1
249
		local compute=i*findSize*findOffSet
250
		local newStartPos=startPos
251
		local newEndPos=CFrame.new(random+compute+newStartPos).p
252
		local magnitude=(startPosProx2-newEndPos).magnitude
253
		local distance=(startPosProx2+newEndPos)/2
254
		local lightning=add.Part(workspace, true, false, "Bright yellow", 0, Vector3.new(.2, .2, magnitude), CFrame.new(distance, startPosProx2))
255
		c(function()
256
			for i=0, 1, .1 do wait()
257
				lightning.Transparency=i
258
			end
259
			lightning:remove()
260
		end)
261
		startPosProx=newEndPos
262
	end
263
	pattern:remove()
264
end
265
function computePos(pos, pos2)
266
	local pos3=Vector3.new(pos2.x, pos.y, pos2.z)
267
	torso.CFrame=CFrame.new(pos, pos3)
268
	return pos3
269
end
270
function nearTorso(pos, dis)
271
	local temp
272
	local distance=dis
273
	for i, v in pairs(workspace:children()) do
274
		if v:isA("Model") then
275
			temp=v:findFirstChild("Torso")
276
			local humanoid=v:findFirstChild("Humanoid")
277
			if temp and humanoid and v~=char and (temp.CFrame.p-pos).magnitude<distance then
278
				distance=(temp.CFrame.p-pos).magnitude
279
				return temp
280
			end
281
		end
282
	end
283
end
284
function trail(pos, cf, col)
285
	c(function()
286
		local old=(pos.CFrame*cf).p
287
		while trailDeb==true do
288
			wait()
289
			local new=(pos.CFrame*cf).p
290
			local mag=(old-new).magnitude
291
			local dis=(old+new)/2
292
			local trail=add.Part(workspace, true, false, col, 0, Vector3.new(.2, mag, .2), CFrame.new(dis, new)*CFrame.Angles(math.pi/2, 0, 0)) trail.Name="Trail"
293
			local tMesh=add.Mesh("CylinderMesh", trail, Vector3.new(.5, 1, .5), nil, nil)
294
			old=new
295
			c(function()
296
				for i=1, 0, -.1 do
297
					wait()
298
					tMesh.Scale=tMesh.Scale*Vector3.new(i, 1, i)
299
				end
300
				trail:remove()
301
			end)
302
			c(function()
303
				for i=0, 1, .1 do
304
					wait()
305
					trail.Transparency=i
306
				end
307
			end)
308
		end
309
	end)
310
end
311
312
function running()
313
	animate.ArmLeft(CFrame.Angles(-math.rad(45), 0, -math.rad(15)))
314
	animate.ArmRight(CFrame.Angles(math.rad(45), 0, math.rad(15)))
315
	obj.HandleBackW.C1=CFrame.new(0, -1.5, 0)*CFrame.Angles(-math.rad(90), 0, 0)
316
end
317
318
function hit(h)
319
	if using==true then
320
		if switch==false then
321
			if onStab==false and h.Parent:findFirstChild("Humanoid") and h.Parent~=char and hitDeb==false then hitDeb=true print("ErrorUnNamed") Hit:play()
322
				local hHuman=h.Parent:findFirstChild("Humanoid")
323
				hHuman.Health=hHuman.Health-dmg
324
				local fakeM=Instance.new("Model", workspace) fakeM.Name=-dmg
325
				local fakeH=Instance.new("Humanoid", fakeM) fakeH.MaxHealth=0 fakeH.Health=0
326
				local effect=add.Part(fakeM, false, false, "Gold", 0, Vector3.new(1, 1, 1), h.CFrame) effect.Name="Head"
327
				local fakeMesh=add.Mesh("CylinderMesh", effect, Vector3.new(1, .5, 1), nil, nil)
328
				local bp=Instance.new("BodyPosition", effect) bp.maxForce=Vector3.new(math.huge, math.huge, math.huge) bp.position=h.Position+Vector3.new(0, 4, 0)
329
				game.Debris:addItem(fakeM, 2)	
330
				wait(1)
331
				hitDeb=false
332
			end
333
			if onStab==true and h.Parent~=char and h.Parent:findFirstChild("Humanoid") and hitDeb==false then hitDeb=true print("Error") Hit:play()
334
				h.Parent:breakJoints()
335
				local fakeM=Instance.new("Model", workspace) fakeM.Name="Tr1st4bb3d"
336
				local fakeH=Instance.new("Humanoid", fakeM) fakeH.MaxHealth=0 fakeH.Health=0
337
				local effect=add.Part(fakeM, false, false, "Bright red", 0, Vector3.new(1, 1, 1), h.CFrame) effect.Name="Head"
338
				local fakeMesh=add.Mesh("CylinderMesh", effect, Vector3.new(1, .5, 1), nil, nil)
339
				local bp=Instance.new("BodyPosition", effect) bp.maxForce=Vector3.new(math.huge, math.huge, math.huge) bp.position=h.Position+Vector3.new(0, 4, 0)
340
				game.Debris:addItem(fakeM, 2)	
341
				wait(1)
342
				hitDeb=false
343
			end
344
		end
345
	end
346
end
347
348
function findStab()
349
	while using==false do wait()
350
		--pcall(function()
351
			local nTorso=nearTorso(torso.CFrame.p, 3)
352
			if nTorso then
353
				local offSet=nTorso.CFrame:toObjectSpace(torso.CFrame)
354
				if offSet.z>0 then
355
					onStab=true
356
					animate.ArmRight(CFrame.Angles(math.rad(135), 0, 0))
357
					obj.HandleBackW.C1=CFrame.new(0, -1.5, 0)*CFrame.Angles(math.rad(90), 0, 0)
358
				else
359
					onStab=false
360
					running()
361
				end
362
			else
363
				onStab=false
364
				running()
365
			end
366
		--end)
367
	end
368
end
369
370
function attack() combo=combo+1
371
	if using==false then using=true for i, v in pairs(modelB:children()) do v.Touched:connect(hit) end
372
		if combo==1 and onStab==false then Slash:play()
373
			--[[trailDeb=true
374
			trail(obj.Blade, CFrame.new(0, 1, 0), "Gold")]]
375
			for i=0, 1, .2 do wait()
376
				animate.Torso(CFrame.Angles(0, math.rad(45)*i, 0))
377
				animate.ArmRight(CFrame.Angles(math.rad(90)*i, 0, 0))
378
				obj.HandleBackW.C1=CFrame.new(0, -1.5, 0)*CFrame.Angles(-math.rad(90), 0, math.rad(45)*i)
379
			end
380
			for i=1, 0, -.2 do wait()
381
				animate.Torso(CFrame.Angles(0, math.rad(45)*i, 0))
382
				animate.ArmRight(CFrame.Angles(math.rad(90)*i, 0, 0))
383
				obj.HandleBackW.C1=CFrame.new(0, -1.5, 0)*CFrame.Angles(-math.rad(90), 0, math.rad(45)*i)
384
			end
385
			if combo>1 and onStab==false then combo=2 Slash:play()
386
				for i=0, 1, .2 do wait() 
387
					animate.Torso(CFrame.Angles(0, math.rad(45)*i, 0))
388
					animate.ArmRight(CFrame.Angles(math.rad(90)*i, 0, math.rad(45)*i))
389
					obj.HandleBackW.C1=CFrame.new(0, -1.5, 0)*CFrame.Angles(-math.rad(90+(90*i)), 0, 0)
390
				end
391
				for i=1, 0, -.2 do wait() 
392
					animate.Torso(CFrame.Angles(0, math.rad(45)*i, 0))
393
					animate.ArmRight(CFrame.Angles(math.rad(90)*i, 0, math.rad(45)*i))
394
					obj.HandleBackW.C1=CFrame.new(0, -1.5, 0)*CFrame.Angles(-math.rad(90+(90*i)), 0, 0)
395
				end
396
			end
397
		end
398
		if onStab==true then
399
			for i=0, 1, .2 do wait()
400
				animate.ArmRight(CFrame.Angles(math.rad(135-(45*i)), 0, 0))
401
				obj.HandleBackW.C1=CFrame.new(0, -1.5, 0)*CFrame.Angles(math.rad(90), 0, 0)
402
			end
403
			onStab=false
404
		end
405
		using=false
406
		--trailDeb=false
407
		combo=0
408
		body.Torso.Transparency=1 torso.Transparency=0
409
		running()
410
		findStab()
411
	end
412
end
413
414
bin.Selected:connect(function(mouse) createParts()
415
	human.WalkSpeed=speed
416
	running()
417
	using=true
418
	Equip:play()
419
	for i=1, 0, -.1 do wait()
420
		obj.HandleBackW.C1=CFrame.new(0, -1.5, 0)*CFrame.Angles(-math.rad(90), math.rad(180)*i, 0)
421
		obj.EdgeTopRW.C1=CFrame.new(0, .5, 0)*CFrame.Angles(math.rad(90)+math.rad(180)*i, 0, math.rad(90))
422
		obj.EdgeTopR2W.C1=CFrame.new(0, -.4, -.1)*CFrame.Angles(math.rad(90)+math.rad(180)*i, 0, math.rad(90))
423
	end
424
	using=false
425
	mouse.Button1Down:connect(attack)
426
	mouse.KeyDown:connect(function(key) 
427
		local key=key:lower()
428
		--INVISBLE--
429
		if key=="q" and keyDeb==false and switch==false and using==false then keyDeb=true switch=true using=true
430
			attackLabel.Text="Visible(Q)" print("1") Abscond:play()
431
			pcall(function() char.Sound.Disabled=true end)
432
			for i, v in pairs(char:children()) do
433
				c(function()
434
					for i=0, 1, .2 do wait()
435
						pcall(function()
436
							c(function() if v.Head~=nil then head.Transparency=1 end end)
437
							v.Transparency=i
438
						end)
439
						pcall(function() v.Handle.Transparency=i end)
440
						pcall(function() v.face.Transparency=i end)
441
						pcall(function() v.roblox.Transparency=i end)
442
						pcall(function() v.Head.Transparency=i end)
443
					end
444
				end)
445
			end
446
			for i, v in pairs(modelB:children()) do
447
				c(function()
448
					for i=0, 1, .2 do wait()
449
						pcall(function()
450
							v.Transparency=i
451
						end)
452
						pcall(function() v.Handle.Transparency=i end)
453
						pcall(function() v.face.Transparency=i end)
454
					end
455
				end)
456
			end
457
			wait(.5)
458
			local fakeModel=Instance.new("Model", workspace.CurrentCamera) fakeModel.Name="Spy"
459
			local fakeHumanoid=Instance.new("Humanoid", fakeModel) fakeHumanoid.Health=0 fakeHumanoid.MaxHealth=0
460
			local fakeHead=add.Part(fakeModel, false, false, "Really black", 0, Vector3.new(1, 1, 1), nil) fakeHead.Name="Head"
461
			local fakeHeadM=add.Mesh("SpecialMesh", fakeHead, Vector3.new(1, 1.5, 1), nil, "File")
462
			fakeHeadM.MeshId="http://www.roblox.com/Asset/?id=9756362"
463
			local fakeHeadW=add.Weld(fakeHead, torso, CFrame.new(0, 1.5, 0))
464
			modelB.Parent=workspace.CurrentCamera
465
			for i, v in pairs(modelB:children()) do
466
				c(function()
467
					for i=0, 1, .2 do wait()
468
						pcall(function()
469
							v.Transparency=.5
470
						end)
471
						pcall(function() v.Handle.Transparency=.5 end)
472
						pcall(function() v.face.Transparency=.5 end)
473
					end
474
				end)
475
			end
476
			keyDeb=false
477
		elseif key=="q" and keyDeb==false and switch==true and using==true then keyDeb=true switch=false using=false
478
			attackLabel.Text="Invisible(Q)" print("2") Abscond:play()
479
			pcall(function() char.Sound.Disabled=false end)
480
			modelB.Parent=char
481
			for i, v in pairs(char:children()) do
482
				c(function()
483
					for i=1, 0, -.2 do wait()
484
						pcall(function()
485
							c(function() if v.Head~=nil then head.Transparency=1 end end)
486
							v.Transparency=i
487
						end)
488-
switch2=false using=false for i, v in pairs(attackLabel2:children()) do pcall(function()v:remove()end) end removeParts() end)--mediafire
488+
489
						pcall(function() v.face.Transparency=i end)
490
						pcall(function() v.roblox.Transparency=i end)
491
						pcall(function() v.Head.Transparency=i end)
492
					end
493
				end)
494
			end
495
			for i, v in pairs(modelB:children()) do
496
				c(function()
497
					for i=1, 0, -.2 do wait()
498
						pcall(function()
499
							v.Transparency=i
500
						end)
501
						pcall(function() v.Handle.Transparency=i end)
502
						pcall(function() v.face.Transparency=i end)
503
					end
504
				end)
505
			end
506
			for i, v in pairs(workspace.CurrentCamera:children()) do pcall(function() v:remove() end) end
507
			wait(.5)
508
			keyDeb=false
509
			findStab()
510
		end
511
		--DISGUISE MENU--
512
		local xSpace=0
513
		if key=="e" and keyDeb2==false and switch2==false then keyDeb2=true switch2=true
514
			attackLabel2.Text="Menu:"
515
			for i, v in pairs(game.Players:children()) do
516
				if v~=player then xSpace=xSpace+1
517
					local playersLabel=add.Gui("TextButton", attackLabel2, "Gold", "Gold", "Gold", "Size18", v.Name, 0, UDim2.new(1, 0, 1, 0), UDim2.new(xSpace, 0, 0, 0))
518
					playersLabel.MouseButton1Click:connect(function() Abscond:play()
519
						pcall(function()
520
							for i, v in pairs(char:children()) do
521
								pcall(function() v.face:remove() end)
522
								pcall(function() v.roblox:remove() end)
523
								pcall(function() v.Head:remove() end)
524
								if v:IsA("BodyColors") then v:remove() end
525
								if v:IsA("Hat") then v:remove() end
526
								if v:IsA("ShirtGraphic") then v:remove() end
527
								if v:IsA("Pants") then v:remove() end
528
								if v:IsA("Shirt") then v:remove() end
529
								if v:IsA("CharacterMesh") then v:remove() end
530
								if v:IsA("BodyColors") then v:remove() end
531
							end
532
							for i, v in pairs(game.Players[playersLabel.Text].Character:children()) do
533
								pcall(function() local cloned=v.face:clone() cloned.Parent=head if switch==true then pcall(function() cloned.Transparency=1 end) end end)
534
								pcall(function() v.roblox:clone().Parent=torso end)
535
								if v:IsA("BodyColors") then v:clone().Parent=char end
536
								if v:IsA("Hat") then local cloned=v:clone() cloned.Parent=char if switch==true then pcall(function() cloned.Handle.Transparency=1 end) end end
537
								if v:IsA("ShirtGraphic") then v:clone().Parent=char end
538
								if v:IsA("Pants") then v:clone().Parent=char end
539
								if v:IsA("Shirt") then v:clone().Parent=char end
540
								if v:IsA("CharacterMesh") then v:clone().Parent=char end
541
								if v:IsA("BodyColors") then v:clone().Parent=char end
542
							end
543
							head.Transparency=1
544
							local fakeModel=Instance.new("Model", char) fakeModel.Name=playersLabel.Text
545
							local fakeHumanoid=Instance.new("Humanoid", fakeModel) fakeHumanoid.Health=125 fakeHumanoid.MaxHealth=125
546
							local fakeHead=add.Part(fakeModel, false, false, game.Players[playersLabel.Text].Character.Head.Color, 0, Vector3.new(1, 1, 1), nil) fakeHead.Name="Head"
547
							if switch==true then fakeHead.Transparency=1 end
548
							local fakeHeadM=add.Mesh("SpecialMesh", fakeHead, Vector3.new(1.25, 1.25, 1.25), nil, "Head")
549
							local fakeHeadW=add.Weld(fakeHead, torso, CFrame.new(0, 1.5, 0))
550
						end)
551
					end)
552
				end
553
			end
554
			keyDeb2=false
555
		elseif key=="e" and keyDeb2==false and switch2==true then keyDeb2=true switch2=false
556
			attackLabel2.Text="Disguise(E)"
557
			for i, v in pairs(attackLabel2:children()) do
558
				pcall(function()v:remove()end)
559
			end
560
			keyDeb2=false
561
		end
562
	end)
563
	findStab()
564
end)
565
bin.Deselected:connect(function()
566
	Equip:play()
567
	for i=0, 1, .1 do wait()
568
		obj.HandleBackW.C1=CFrame.new(0, -1.5, 0)*CFrame.Angles(-math.rad(90), math.rad(180)*i, 0)
569
		obj.EdgeTopRW.C1=CFrame.new(0, .5, 0)*CFrame.Angles(math.rad(90)+math.rad(180)*i, 0, math.rad(90))
570
		obj.EdgeTopR2W.C1=CFrame.new(0, -.4, -.1)*CFrame.Angles(math.rad(90)+math.rad(180)*i, 0, math.rad(90))
571
	end
572
switch2=false using=false for i, v in pairs(attackLabel2:children()) do pcall(function()v:remove()end) end removeParts() 
573
end)