View difference between Paste ID: ebx4qZMs and 3v8kaas0
SHOW: | | - or go back to the newest paste.
1
--https://github.com/Mokiros/roblox-FE-compatibility
2
if game:GetService("RunService"):IsClient() then error("Script must be server-side in order to work; use h/ and not hl/") end
3
local Player,game,owner = owner,game
4
local RealPlayer = Player
5
do
6
	print("FE Compatibility code V2 by Mokiros")
7
	local RealPlayer = RealPlayer
8
	script.Parent = RealPlayer.Character
9
10
	--Fake event to make stuff like Mouse.KeyDown work
11
	local Disconnect_Function = function(this)
12
		this[1].Functions[this[2]] = nil
13
	end
14
	local Disconnect_Metatable = {__index={disconnect=Disconnect_Function,Disconnect=Disconnect_Function}}
15
	local FakeEvent_Metatable = {__index={
16
		Connect = function(this,f)
17
			local i = tostring(math.random(0,10000))
18
			while this.Functions[i] do
19
				i = tostring(math.random(0,10000))
20
			end
21
			this.Functions[i] = f
22
			return setmetatable({this,i},Disconnect_Metatable)
23
		end
24
	}}
25
	FakeEvent_Metatable.__index.connect = FakeEvent_Metatable.__index.Connect
26
	local function fakeEvent()
27
		return setmetatable({Functions={}},FakeEvent_Metatable)
28
	end
29
30
	--Creating fake input objects with fake variables
31
    local FakeMouse = {Hit=CFrame.new(),KeyUp=fakeEvent(),KeyDown=fakeEvent(),Button1Up=fakeEvent(),Button1Down=fakeEvent(),Button2Up=fakeEvent(),Button2Down=fakeEvent()}
32
    FakeMouse.keyUp = FakeMouse.KeyUp
33
    FakeMouse.keyDown = FakeMouse.KeyDown
34
	local UIS = {InputBegan=fakeEvent(),InputEnded=fakeEvent()}
35
	local CAS = {Actions={},BindAction=function(self,name,fun,touch,...)
36
		CAS.Actions[name] = fun and {Name=name,Function=fun,Keys={...}} or nil
37
	end}
38
	--Merged 2 functions into one by checking amount of arguments
39
	CAS.UnbindAction = CAS.BindAction
40
41
	--This function will trigger the events that have been :Connect()'ed
42
	local function TriggerEvent(self,ev,...)
43
		for _,f in pairs(self[ev].Functions) do
44
			f(...)
45
		end
46
	end
47
	FakeMouse.TriggerEvent = TriggerEvent
48
	UIS.TriggerEvent = TriggerEvent
49
50
	--Client communication
51
	local Event = Instance.new("RemoteEvent")
52
	Event.Name = "UserInput_Event"
53
	Event.OnServerEvent:Connect(function(plr,io)
54
	    if plr~=RealPlayer then return end
55
		FakeMouse.Target = io.Target
56
		FakeMouse.Hit = io.Hit
57
		if not io.isMouse then
58
			local b = io.UserInputState == Enum.UserInputState.Begin
59
			if io.UserInputType == Enum.UserInputType.MouseButton1 then
60
				return FakeMouse:TriggerEvent(b and "Button1Down" or "Button1Up")
61
			end
62
			if io.UserInputType == Enum.UserInputType.MouseButton2 then
63
				return FakeMouse:TriggerEvent(b and "Button2Down" or "Button2Up")
64
			end
65
			for _,t in pairs(CAS.Actions) do
66
				for _,k in pairs(t.Keys) do
67
					if k==io.KeyCode then
68
						t.Function(t.Name,io.UserInputState,io)
69
					end
70
				end
71
			end
72
			FakeMouse:TriggerEvent(b and "KeyDown" or "KeyUp",io.KeyCode.Name:lower())
73
			UIS:TriggerEvent(b and "InputBegan" or "InputEnded",io,false)
74
	    end
75
	end)
76
	Event.Parent = NLS([==[local Event = script:WaitForChild("UserInput_Event")
77
	local Mouse = owner:GetMouse()
78
	local UIS = game:GetService("UserInputService")
79
	local input = function(io,RobloxHandled)
80
		if RobloxHandled then return end
81
		--Since InputObject is a client-side instance, we create and pass table instead
82
		Event:FireServer({KeyCode=io.KeyCode,UserInputType=io.UserInputType,UserInputState=io.UserInputState,Hit=Mouse.Hit,Target=Mouse.Target})
83
	end
84
	UIS.InputBegan:Connect(input)
85
	UIS.InputEnded:Connect(input)
86
	local h,t
87
	--Give the server mouse data every second frame, but only if the values changed
88
	--If player is not moving their mouse, client won't fire events
89
	local HB = game:GetService("RunService").Heartbeat
90
	while true do
91
		if h~=Mouse.Hit or t~=Mouse.Target then
92
			h,t=Mouse.Hit,Mouse.Target
93
			Event:FireServer({isMouse=true,Target=t,Hit=h})
94
		end
95
		--Wait 2 frames
96
		for i=1,2 do
97
			HB:Wait()
98
		end
99
	end]==],script)
100
101
	----Sandboxed game object that allows the usage of client-side methods and services
102
	--Real game object
103
	local RealGame = game
104
105
	--Metatable for fake service
106
	local FakeService_Metatable = {
107
		__index = function(self,k)
108
			local s = rawget(self,"_RealService")
109
			if s then
110
				return typeof(s[k])=="function"
111
				and function(_,...)return s[k](s,...)end or s[k]
112
			end
113
		end,
114
		__newindex = function(self,k,v)
115
			local s = rawget(self,"_RealService")
116
			if s then s[k]=v end
117
		end
118
	}
119
	local function FakeService(t,RealService)
120
		t._RealService = typeof(RealService)=="string" and RealGame:GetService(RealService) or RealService
121
		return setmetatable(t,FakeService_Metatable)
122
	end
123
124
	--Fake game object
125
	local FakeGame = {
126
		GetService = function(self,s)
127
			return rawget(self,s) or RealGame:GetService(s)
128
		end,
129
		Players = FakeService({
130
			LocalPlayer = FakeService({GetMouse=function(self)return FakeMouse end},Player)
131
		},"Players"),
132
		UserInputService = FakeService(UIS,"UserInputService"),
133
		ContextActionService = FakeService(CAS,"ContextActionService"),
134
		RunService = FakeService({
135
			_btrs = {},
136
			RenderStepped = RealGame:GetService("RunService").Heartbeat,
137
			BindToRenderStep = function(self,name,_,fun)
138
				self._btrs[name] = self.Heartbeat:Connect(fun)
139
			end,
140
			UnbindFromRenderStep = function(self,name)
141
				self._btrs[name]:Disconnect()
142
			end,
143
		},"RunService")
144
	}
145
	rawset(FakeGame.Players,"localPlayer",FakeGame.Players.LocalPlayer)
146
	FakeGame.service = FakeGame.GetService
147
	FakeService(FakeGame,game)
148
	--Changing owner to fake player object to support owner:GetMouse()
149
	game,owner = FakeGame,FakeGame.Players.LocalPlayer
150
end
151
local player=game:service'Players'.LocalPlayer
152
local char=player.Character
153
local mouse=player:GetMouse()
154
local tor = char.Torso
155
local ra = char['Right Arm']
156
local la = char['Left Arm']
157
local attacking = false
158
function weld(p0,p1,c0)
159
        local w=Instance.new("Weld",p0)
160
        w.Part0=p0
161
        w.Part1=p1
162
        w.C0=c0
163
        return w
164
end
165
166
---Clothing------------------------------------------------------
167
if char:findFirstChild("Shirt") then
168
	char.Shirt:Remove()
169
end
170
171
if char:findFirstChild("Pants") then
172
	char.Pants:Remove()
173
end
174
175
if char:findFirstChild("Shirt Graphic") then
176
	char["Shirt Graphic"]:Remove()
177
end
178
179
if char.Torso:findFirstChild("roblox") then
180
	char.Torso.roblox:Remove()
181
end
182
183
 local Shirt = Instance.new("Shirt",char)
184
 local Pants = Instance.new("Pants",char)
185
 Shirt.ShirtTemplate = "http://www.roblox.com/asset/?id=188809505"
186
 Pants.PantsTemplate = "http://www.roblox.com/asset/?id=158093557"
187
if char:FindFirstChild("Head") then char.Head.BrickColor = BrickColor.new("Sand red") end
188
if char:FindFirstChild("Torso") then char.Torso.BrickColor = BrickColor.new("Sand red") end
189
if char:FindFirstChild("Left Leg") then char["Left Leg"].BrickColor = BrickColor.new("Sand red") end
190
if char:FindFirstChild("Right Leg") then char["Right Leg"].BrickColor = BrickColor.new("Sand red") end
191
if char:FindFirstChild("Left Arm") then char["Left Arm"].BrickColor = BrickColor.new("Sand red") end
192
if char:FindFirstChild("Right Arm") then char["Right Arm"].BrickColor = BrickColor.new("Sand red") end
193
-----------------------------------------------------------------
194
--Health&Walkspeed--
195
char.Humanoid.MaxHealth = 1000
196
char.Humanoid.Health = 1000
197
char.Humanoid.WalkSpeed = 10
198
----------
199
--Body
200
local torso = char.Torso:Clone()
201
torso.Size = Vector3.new(char.Torso.Size.x,char.Torso.Size.y,char.Torso.Size.z)
202
torso.Transparency = 0
203
torso.CanCollide = false
204
if torso:FindFirstChild("roblox") then torso.roblox:Remove() end
205
torso.Parent = char
206
torso.CanCollide = true
207
torso.Name = "Torso"
208
torso["Left Shoulder"]:Destroy()
209
torso["Right Shoulder"]:Destroy()
210
torso["Left Hip"]:Destroy()
211
torso["Right Hip"]:Destroy()
212
char.Torso.Transparency = 1
213
char.Torso.Name = "Torso2"
214
215
216
local tweld = Instance.new("Weld",char.Torso)
217
tweld.Name = "tweld"
218
tweld.Part0 = char.Torso
219
tweld.Part1 = char.Torso2
220
tweld.C0 = CFrame.new(0,0,0)*CFrame.Angles(math.rad(15),0,0)
221
char.Torso2.Name = "Torso"
222
-----
223
---Hair------------------------------------------------------------------------------
224
for _,v in pairs(char:GetChildren()) do if v.ClassName=="Accessory" then v:remove() end end
225
226
hair = Instance.new("Part", char.Head)
227
hair.FormFactor = Enum.FormFactor.Plate
228
hair.CanCollide = false
229
hair.TopSurface = Enum.SurfaceType.Smooth
230
hair.Size = Vector3.new(1, 0.8, 1)
231
hair.Name = "Hair"
232
hair.Friction = 0.3
233
hair.BottomSurface = Enum.SurfaceType.Smooth
234
hair:BreakJoints()
235
mesh = Instance.new("SpecialMesh", hair)
236
mesh.Scale = Vector3.new(1.02, 1.05, 1.05)
237
mesh.MeshId = "http://www.roblox.com/asset/?id=12259089"
238
mesh.TextureId = "http://www.roblox.com/asset/?id=208214380"
239
mesh.MeshType = Enum.MeshType.FileMesh
240
241
local hatweld = Instance.new("Weld",hair)
242
hatweld.Name = "Hatweld"
243
hatweld.Part0 = hair
244
hatweld.Part1 = char.Head
245
hatweld.C0 = CFrame.new(0,-.4,0)
246
char.Head.face.Texture = "http://www.roblox.com/asset/?id=133667125"
247
hair:MakeJoints()
248
-------------------------------------------------------------------------------------------
249
---Music---------------------------------------------------------------------------------------------------
250
local music=Instance.new("Sound")
251
music.SoundId="http://www.roblox.com/asset/?id=225920256"
252
music.PlayOnRemove=false
253
music.Volume=.8
254
music.Looped=true
255
music.Pitch = 1
256
music.Parent=char.Head
257
music.Name = "ScissormanTheme"
258
music:Play()
259
260
char.Humanoid.Died:connect(function(musicremoval)
261
	music:Stop()
262
	wait()
263
	music:Destroy()
264
end)
265
-----------------------------------------------------------------------------------------------------------
266
267
--Model Build--
268
local scissors = Instance.new("Model", char)
269
scissors.Name = "Scissors"
270
271
local blade2 = Instance.new("Model", scissors)
272
blade2.Name = "Blade2"
273
274
blade = Instance.new("Part", blade2)
275
blade.FormFactor = Enum.FormFactor.Custom
276
blade.LeftSurface = Enum.SurfaceType.SmoothNoOutlines
277
blade.TopSurface = Enum.SurfaceType.SmoothNoOutlines
278
blade.Anchored = false
279
blade.Material = Enum.Material.Metal
280
blade.Size = Vector3.new(0.41, 2.581, 0.512)
281
blade.Name = "Blade"
282
blade.FrontSurface = Enum.SurfaceType.SmoothNoOutlines
283
blade.CFrame = CFrame.new(81.752, 5.278, 34.598)* CFrame.Angles(-2.6529195308685, 0, -3.1415927410126)
284
blade.RightSurface = Enum.SurfaceType.SmoothNoOutlines
285
blade.BackSurface = Enum.SurfaceType.SmoothNoOutlines
286
blade.BrickColor = BrickColor.new("Fossil")
287
blade.Friction = 0.3
288
blade.CanCollide = false
289
blade.BottomSurface = Enum.SurfaceType.SmoothNoOutlines
290
291
 mesh = Instance.new("SpecialMesh", blade)
292
mesh.MeshType = Enum.MeshType.Wedge
293
294
 part = Instance.new("Part", blade2)
295
part.FormFactor = Enum.FormFactor.Custom
296
part.LeftSurface = Enum.SurfaceType.SmoothNoOutlines
297
part.TopSurface = Enum.SurfaceType.SmoothNoOutlines
298
part.Anchored = false
299
part.Material = Enum.Material.Metal
300
part.Size = Vector3.new(0.41, 1.721, 0.512)
301
part.FrontSurface = Enum.SurfaceType.SmoothNoOutlines
302
part.CFrame = CFrame.new(81.752, 3.379, 33.589)* CFrame.Angles(0.48867347836494, 0, -0)
303
part.RightSurface = Enum.SurfaceType.SmoothNoOutlines
304
part.BackSurface = Enum.SurfaceType.SmoothNoOutlines
305
part.BrickColor = BrickColor.new("Fossil")
306
part.Friction = 0.3
307
part.BottomSurface = Enum.SurfaceType.SmoothNoOutlines
308
309
 mesh_2 = Instance.new("BlockMesh", part)
310
311
 handle1 = Instance.new("Part", blade2)
312
handle1.FormFactor = Enum.FormFactor.Custom
313
handle1.LeftSurface = Enum.SurfaceType.SmoothNoOutlines
314
handle1.TopSurface = Enum.SurfaceType.SmoothNoOutlines
315
handle1.Anchored = false
316
handle1.Material = Enum.Material.Metal
317
handle1.Size = Vector3.new(0.41, 2.721, 0.512)
318
handle1.Name = "Handle1"
319
handle1.FrontSurface = Enum.SurfaceType.SmoothNoOutlines
320
handle1.CFrame = CFrame.new(81.747, 1.366, 32.744)* CFrame.Angles(-2.7924835681915, 0, -0)
321
handle1.RightSurface = Enum.SurfaceType.SmoothNoOutlines
322
handle1.BackSurface = Enum.SurfaceType.SmoothNoOutlines
323
handle1.BrickColor = BrickColor.new("Fossil")
324
handle1.Friction = 0.3
325
handle1.BottomSurface = Enum.SurfaceType.SmoothNoOutlines
326
327
 mesh_3 = Instance.new("BlockMesh", handle1)
328
329
handle1pos = Instance.new("Part", scissors)
330
handle1pos.FormFactor = Enum.FormFactor.Custom
331
handle1pos.LeftSurface = Enum.SurfaceType.SmoothNoOutlines
332
handle1pos.TopSurface = Enum.SurfaceType.SmoothNoOutlines
333
handle1pos.Anchored = false
334
handle1pos.Transparency = 1
335
handle1pos.CanCollide = false
336
handle1pos.Material = Enum.Material.Metal
337
handle1pos.Size = Vector3.new(0.41, 2.721, 0.512)
338
handle1pos.Name = "handle1pos"
339
handle1pos.FrontSurface = Enum.SurfaceType.SmoothNoOutlines
340
handle1pos.CFrame = CFrame.new(81.747, 1.366, 32.744)* CFrame.Angles(-2.7924835681915, 0, -0)
341
handle1pos.RightSurface = Enum.SurfaceType.SmoothNoOutlines
342
handle1pos.BackSurface = Enum.SurfaceType.SmoothNoOutlines
343
handle1pos.BrickColor = BrickColor.new("Fossil")
344
handle1pos.Friction = 0.3
345
handle1pos.BottomSurface = Enum.SurfaceType.SmoothNoOutlines
346
347
 handle = Instance.new("Part", scissors)
348
handle.FormFactor = Enum.FormFactor.Custom
349
handle.LeftSurface = Enum.SurfaceType.SmoothNoOutlines
350
handle.TopSurface = Enum.SurfaceType.SmoothNoOutlines
351
handle.Anchored = false
352
handle.Material = Enum.Material.Metal
353
handle.Size = Vector3.new(0.41, 0.41, 0.41)
354
handle.Name = "Handle"
355
handle.FrontSurface = Enum.SurfaceType.SmoothNoOutlines
356
handle.CFrame = CFrame.new(81.852, 2.992, 33.43)* CFrame.Angles(-2.8078470230103, 1.5037103891373, 1.2398878335953)
357
handle.RightSurface = Enum.SurfaceType.SmoothNoOutlines
358
handle.BackSurface = Enum.SurfaceType.SmoothNoOutlines
359
handle.BrickColor = BrickColor.new("Dark stone grey")
360
handle.Friction = 0.3
361
handle.BottomSurface = Enum.SurfaceType.SmoothNoOutlines
362
363
 mesh_4 = Instance.new("SpecialMesh", handle)
364
mesh_4.Scale = Vector3.new(1, 1.2, 1)
365
mesh_4.MeshType = Enum.MeshType.Sphere
366
367
local blade1 = Instance.new("Model", scissors)
368
blade1.Name = "Blade1"
369
370
 blade_2 = Instance.new("Part", blade1)
371
blade_2.FormFactor = Enum.FormFactor.Custom
372
blade_2.LeftSurface = Enum.SurfaceType.SmoothNoOutlines
373
blade_2.TopSurface = Enum.SurfaceType.SmoothNoOutlines
374
blade_2.Anchored = false
375
blade_2.Material = Enum.Material.Metal
376
blade_2.Size = Vector3.new(0.41, 2.581, 0.512)
377
blade_2.Name = "Blade"
378
blade_2.CanCollide = false
379
blade_2.FrontSurface = Enum.SurfaceType.SmoothNoOutlines
380
blade_2.CFrame = CFrame.new(81.752, 5.304, 32.333)* CFrame.Angles(-0.46782538294792, 0, -0)
381
blade_2.RightSurface = Enum.SurfaceType.SmoothNoOutlines
382
blade_2.BackSurface = Enum.SurfaceType.SmoothNoOutlines
383
blade_2.BrickColor = BrickColor.new("Fossil")
384
blade_2.Friction = 0.3
385
blade_2.BottomSurface = Enum.SurfaceType.SmoothNoOutlines
386
387
 mesh_5 = Instance.new("SpecialMesh", blade_2)
388
mesh_5.MeshType = Enum.MeshType.Wedge
389
390
 part_2 = Instance.new("Part", blade1)
391
part_2.FormFactor = Enum.FormFactor.Custom
392
part_2.LeftSurface = Enum.SurfaceType.SmoothNoOutlines
393
part_2.TopSurface = Enum.SurfaceType.SmoothNoOutlines
394
part_2.Anchored = false
395
part_2.Material = Enum.Material.Metal
396
part_2.Size = Vector3.new(0.41, 1.721, 0.512)
397
part_2.FrontSurface = Enum.SurfaceType.SmoothNoOutlines
398
part_2.CFrame = CFrame.new(81.752, 3.385, 33.302)* CFrame.Angles(2.6737668514252, 0, -3.1415927410126)
399
part_2.RightSurface = Enum.SurfaceType.SmoothNoOutlines
400
part_2.BackSurface = Enum.SurfaceType.SmoothNoOutlines
401
part_2.BrickColor = BrickColor.new("Fossil")
402
part_2.Friction = 0.3
403
part_2.BottomSurface = Enum.SurfaceType.SmoothNoOutlines
404
405
 mesh_6 = Instance.new("BlockMesh", part_2)
406
407
 handle1_2 = Instance.new("Part", blade1)
408
handle1_2.FormFactor = Enum.FormFactor.Custom
409
handle1_2.LeftSurface = Enum.SurfaceType.SmoothNoOutlines
410
handle1_2.TopSurface = Enum.SurfaceType.SmoothNoOutlines
411
handle1_2.Anchored = false
412
handle1_2.Material = Enum.Material.Metal
413
handle1_2.Size = Vector3.new(0.41, 2.721, 0.512)
414
handle1_2.Name = "Handle1"
415
handle1_2.FrontSurface = Enum.SurfaceType.SmoothNoOutlines
416
handle1_2.CFrame = CFrame.new(81.747, 1.366, 34.144)* CFrame.Angles(2.7925736904144, 0, -0)
417
handle1_2.RightSurface = Enum.SurfaceType.SmoothNoOutlines
418
handle1_2.BackSurface = Enum.SurfaceType.SmoothNoOutlines
419
handle1_2.BrickColor = BrickColor.new("Fossil")
420
handle1_2.Friction = 0.3
421
handle1_2.BottomSurface = Enum.SurfaceType.SmoothNoOutlines
422
423
 mesh_7 = Instance.new("BlockMesh", handle1_2)
424
425
handle1_2pos = Instance.new("Part", scissors)
426
handle1_2pos.FormFactor = Enum.FormFactor.Custom
427
handle1_2pos.LeftSurface = Enum.SurfaceType.SmoothNoOutlines
428
handle1_2pos.TopSurface = Enum.SurfaceType.SmoothNoOutlines
429
handle1_2pos.Anchored = false
430
handle1_2pos.Transparency = 1
431
handle1_2pos.CanCollide = false
432
handle1_2pos.Material = Enum.Material.Metal
433
handle1_2pos.Size = Vector3.new(0.41, 2.721, 0.512)
434
handle1_2pos.Name = "handle2pos"
435
handle1_2pos.FrontSurface = Enum.SurfaceType.SmoothNoOutlines
436
handle1_2pos.CFrame = CFrame.new(81.747, 1.366, 34.144)* CFrame.Angles(2.7925736904144, 0, -0)
437
handle1_2pos.RightSurface = Enum.SurfaceType.SmoothNoOutlines
438
handle1_2pos.BackSurface = Enum.SurfaceType.SmoothNoOutlines
439
handle1_2pos.BrickColor = BrickColor.new("Fossil")
440
handle1_2pos.Friction = 0.3
441
handle1_2pos.BottomSurface = Enum.SurfaceType.SmoothNoOutlines
442
443
 part_3 = Instance.new("Part", scissors)
444
part_3.FormFactor = Enum.FormFactor.Custom
445
part_3.LeftSurface = Enum.SurfaceType.SmoothNoOutlines
446
part_3.TopSurface = Enum.SurfaceType.SmoothNoOutlines
447
part_3.Anchored = false
448
part_3.Material = Enum.Material.Metal
449
part_3.Size = Vector3.new(0.41, 0.41, 0.41)
450
part_3.FrontSurface = Enum.SurfaceType.SmoothNoOutlines
451
part_3.CFrame = CFrame.new(81.652, 3.002, 33.43)* CFrame.Angles(-2.8078470230103, 1.5037103891373, 1.2398878335953)
452
part_3.RightSurface = Enum.SurfaceType.SmoothNoOutlines
453
part_3.BackSurface = Enum.SurfaceType.SmoothNoOutlines
454
part_3.BrickColor = BrickColor.new("Dark stone grey")
455
part_3.Friction = 0.3
456
part_3.BottomSurface = Enum.SurfaceType.SmoothNoOutlines
457
458
 mesh_8 = Instance.new("SpecialMesh", part_3)
459
mesh_8.Scale = Vector3.new(1, 1.2, 1)
460
mesh_8.MeshType = Enum.MeshType.Sphere
461
scissors:BreakJoints()
462
blade1:BreakJoints()
463
blade2:BreakJoints()
464
465
local prev
466
local parts = scissors:GetChildren()
467
468
for i = 1,#parts do 
469
	if (parts[i].className == "Part") or (parts[i].className == "WedgePart") or (parts[i].className == "Seat") or (parts[i].className == "VehicleSeat") or (parts[i].className == "CornerWedgePart") then 
470
		if (prev ~= nil)then 
471
			if parts[i]:FindFirstChild("Weld") then parts[i]:FindFirstChild("Weld"):Destroy() end
472
			local weld = Instance.new("Weld") 
473
			weld.Part0 = prev 
474
			weld.Part1 = parts[i] 
475
			weld.C0 = prev.CFrame:inverse() 
476
			weld.C1 = parts[i].CFrame:inverse() 
477
			weld.Parent = prev 
478
		end 
479
		prev = parts[i] 
480
	end 
481
end
482
scissors:MakeJoints()
483
484
local prev
485
local parts = blade1:GetChildren()
486
487
for i = 1,#parts do 
488
	if (parts[i].className == "Part") or (parts[i].className == "WedgePart") or (parts[i].className == "Seat") or (parts[i].className == "VehicleSeat") or (parts[i].className == "CornerWedgePart") then 
489
		if (prev ~= nil)then 
490
			if parts[i]:FindFirstChild("Weld") then parts[i]:FindFirstChild("Weld"):Destroy() end
491
			local weld = Instance.new("Weld") 
492
			weld.Part0 = prev 
493
			weld.Part1 = parts[i] 
494
			weld.C0 = prev.CFrame:inverse() 
495
			weld.C1 = parts[i].CFrame:inverse() 
496
			weld.Parent = prev 
497
		end 
498
		prev = parts[i] 
499
	end 
500
end
501
blade1:MakeJoints()
502
local prev
503
local parts = blade2:GetChildren()
504
505
for i = 1,#parts do 
506
	if (parts[i].className == "Part") or (parts[i].className == "WedgePart") or (parts[i].className == "Seat") or (parts[i].className == "VehicleSeat") or (parts[i].className == "CornerWedgePart") then 
507
		if (prev ~= nil)then 
508
			if parts[i]:FindFirstChild("Weld") then parts[i]:FindFirstChild("Weld"):Destroy() end
509
			local weld = Instance.new("Weld") 
510
			weld.Part0 = prev 
511
			weld.Part1 = parts[i] 
512
			weld.C0 = prev.CFrame:inverse() 
513
			weld.C1 = parts[i].CFrame:inverse() 
514
			weld.Parent = prev 
515
		end 
516
		prev = parts[i] 
517
	end 
518
end
519
blade2:MakeJoints()
520
521
local particleemitter = Instance.new("ParticleEmitter", scissors.Handle)
522
particleemitter.VelocitySpread = 200
523
particleemitter.Speed = NumberRange.new(10)
524
particleemitter.Size = NumberSequence.new({NumberSequenceKeypoint.new(0, 0.2), NumberSequenceKeypoint.new(1, 0.2)})
525
particleemitter.Rate = 10
526
particleemitter.Texture = "http://www.roblox.com/asset/?id=311395391"
527
particleemitter.Color = ColorSequence.new(Color3.new(1, 0.666667, 0), Color3.new(1, 0.666667, 0))
528
particleemitter.Enabled = false
529
530
scissors.Handle.Weld.Name = "Weld2"
531
weld(blade1.Handle1, scissors.handle1pos, CFrame.new(0,0,0)*CFrame.Angles(math.rad(0),0,0))
532
weld(blade2.Handle1, scissors.handle2pos, CFrame.new(0,0,0)*CFrame.Angles(math.rad(0),0,0))
533
---Model Build End---
534
weld(tor, ra, CFrame.new(1,0,-1)*CFrame.Angles(math.rad(90),0,0))
535
weld(la, ra, CFrame.new(2,0,0)*CFrame.Angles(math.rad(0),0,0))
536
weld(scissors.Handle, tor, CFrame.new(4,0,-.2)*CFrame.Angles(math.rad(95),(math.rad(90)),0))
537
local sc1 = Instance.new("Sound")
538
sc1.SoundId="rbxassetid://357622136"
539
sc1.PlayOnRemove=false
540
sc1.Volume=0.7
541
sc1.Looped=false
542
sc1.Pitch = 1
543
sc1.Parent=scissors.Handle
544
local sc2 = Instance.new("Sound")
545
sc2.SoundId="rbxassetid://240785604"
546
sc2.PlayOnRemove=false
547
sc2.Volume=0.7
548
sc2.Looped=false
549
sc2.Pitch = 1
550
sc2.Parent=scissors.Handle
551
552
local open = true
553
function scissoropen()
554
open = true
555
blade2.Handle1.Weld.C0 =  CFrame.new(0,0,0)*CFrame.Angles(math.rad(2),0,0)
556
blade1.Handle1.Weld.C0 = CFrame.new(0,0,0)*CFrame.Angles(math.rad(-2),0,0)
557
wait()
558
blade2.Handle1.Weld.C0 =  CFrame.new(0,0,0)*CFrame.Angles(math.rad(4),0,0)
559
blade1.Handle1.Weld.C0 = CFrame.new(0,0,0)*CFrame.Angles(math.rad(-4),0,0)
560
wait()
561
blade2.Handle1.Weld.C0 =  CFrame.new(0,0,0)*CFrame.Angles(math.rad(6),0,0)
562
blade1.Handle1.Weld.C0 = CFrame.new(0,0,0)*CFrame.Angles(math.rad(-6),0,0)
563
end
564
565
function scissorclose()
566
open = false
567
attacking = true
568
sc1:Play()
569
blade2.Handle1.Weld.C0 =  CFrame.new(0,0,0)*CFrame.Angles(math.rad(-2),0,0)
570
blade1.Handle1.Weld.C0 = CFrame.new(0,0,0)*CFrame.Angles(math.rad(2),0,0)
571
wait()
572
blade2.Handle1.Weld.C0 =  CFrame.new(0,0,0)*CFrame.Angles(math.rad(-4),0,0)
573
blade1.Handle1.Weld.C0 = CFrame.new(0,0,0)*CFrame.Angles(math.rad(4),0,0)
574
wait()
575
blade2.Handle1.Weld.C0 =  CFrame.new(0,0,0)*CFrame.Angles(math.rad(-6),0,0)
576
blade1.Handle1.Weld.C0 = CFrame.new(0,0,0)*CFrame.Angles(math.rad(6),0,0)
577
attacking = false
578
end
579
580
mouse.Button2Down:connect(function()
581
	if open == false then
582
	scissoropen()
583
	end
584
end)
585
mouse.Button1Down:connect(function()
586
	if open == true then
587
	scissorclose()
588
	end
589
end)
590
591
local blood = Instance.new("ParticleEmitter")
592
blood.VelocitySpread = 180
593
blood.Lifetime = NumberRange.new(1, 2)
594
blood.Speed = NumberRange.new(10)
595
blood.Size = NumberSequence.new({NumberSequenceKeypoint.new(0, 0.1), NumberSequenceKeypoint.new(1, 0.1)})
596
blood.Acceleration = Vector3.new(0, -10, 0)
597
blood.RotSpeed = NumberRange.new(260)
598
blood.Texture = "http://www.roblox.com/asset/?id=176677966"
599
600
blade.Touched:connect(function(h)
601
	if attacking == true then
602
		if h.Parent:FindFirstChild("Humanoid") then 
603
			if h.Parent:FindFirstChild("Torso") then
604
				local pclone = blood:Clone()
605
					pclone.Parent = h
606
					game.Debris:AddItem(pclone,1)
607
			end
608
			if h.Parent.Humanoid.Parent:FindFirstChild("ForceField") then h.Parent.ForceField:Destroy() end
609
			if h.Name == "Torso" then h.Parent.Humanoid:TakeDamage(math.random(20,40)) end
610
			if h.Name == "Left Arm" then local clone = h:Clone() clone.Parent = workspace clone.Position = h.Position clone.CanCollide = true h:Destroy() end
611
			if h.Name == "Right Arm" then local clone = h:Clone() clone.Parent = workspace clone.Position = h.Position clone.CanCollide = true h:Destroy() end
612
			if h.Name == "Left Leg" then local clone = h:Clone() clone.Parent = workspace clone.Position = h.Position clone.CanCollide = true h:Destroy() end
613
			if h.Name == "Right Leg" then local clone = h:Clone() clone.Parent = workspace clone.Position = h.Position clone.CanCollide = true h:Destroy() end
614
			if h.Name == "Head" then local clone = h:Clone() clone.Parent = workspace clone.Position = h.Position clone.CanCollide = true h:Destroy() end
615
		end
616
	end
617
end)
618
blade_2.Touched:connect(function(h)
619
	if attacking == true then
620
		--if h.Parent:FindFirstChild("Humanoid") == nil and not h.Name:lower():find("base") then
621
	--h.Anchored = false
622
				--h.Velocity  = char.Head.CFrame.lookVector*30
623
	            --h:BreakJoints()
624
--end
625
		if h.Parent:FindFirstChild("Humanoid") then 
626
			if h.Parent:FindFirstChild("Torso") then
627
				local pclone = blood:Clone()
628
					pclone.Parent = h
629
					game.Debris:AddItem(pclone,1)
630
			end
631
			if h.Parent.Humanoid.Parent:FindFirstChild("ForceField") then h.Parent.ForceField:Destroy() end
632
			if h.Name == "Torso" then h.Parent.Humanoid:TakeDamage(math.random(20,40)) end
633
			if h.Name == "Left Arm" then local clone = h:Clone() clone.Parent = workspace clone.Position = h.Position clone.CanCollide = true h:Destroy() end
634
			if h.Name == "Right Arm" then local clone = h:Clone() clone.Parent = workspace clone.Position = h.Position clone.CanCollide = true h:Destroy() end
635
			if h.Name == "Left Leg" then local clone = h:Clone() clone.Parent = workspace clone.Position = h.Position clone.CanCollide = true h:Destroy() end
636
			if h.Name == "Right Leg" then local clone = h:Clone() clone.Parent = workspace clone.Position = h.Position clone.CanCollide = true h:Destroy() end
637
			if h.Name == "Head" then local clone = h:Clone() clone.Parent = workspace clone.Position = h.Position clone.CanCollide = true h:Destroy() end
638
		end
639
	end
640
end)
641
642
local fpressed = 0
643
mouse.KeyDown:connect(function(key)
644
if key == "f" then
645
	fpressed = fpressed + 1
646
	if fpressed == 1 then
647
		tor.Weld.C0 = CFrame.new(1,.5,-1)*CFrame.Angles(math.rad(100),0,0)
648
		scissors.Handle.Weld.C0 = CFrame.new(4,0,-.8)*CFrame.Angles(math.rad(95),(math.rad(90)),0)
649
	end
650
	if fpressed ==2 then
651
		tor.Weld.C0 = CFrame.new(1,-.5,-1)*CFrame.Angles(math.rad(90),0,0)
652
		scissors.Handle.Weld.C0 = CFrame.new(4,0,.4)*CFrame.Angles(math.rad(95),(math.rad(90)),0)
653
	end
654
	if fpressed == 3 then
655
		fpressed = 0
656
		tor.Weld.C0 = CFrame.new(1,0,-1)*CFrame.Angles(math.rad(90),0,0)
657
		scissors.Handle.Weld.C0 = CFrame.new(4,0,-.2)*CFrame.Angles(math.rad(95),(math.rad(90)),0)
658
	end
659
end
660
end)