SHOW:
|
|
- or go back to the newest paste.
1 | repeat wait() until #game:GetService("Players"):GetPlayers() > 0 | |
2 | - | local coms = {Instance.new("RemoteEvent",script),Instance.new("RemoteFunction",script),Instance.new("RemoteFunction",script)} |
2 | + | local coms = {Instance.new("RemoteEvent",script),Instance.new("RemoteFunction",script)} |
3 | local owner = owner or game:GetService("Players"):WaitForChild("plytalent") | |
4 | local FF = Instance.new("ForceField",owner.Character) | |
5 | local waitremote = Instance.new('RemoteEvent',script) | |
6 | - | local conchar = nil |
6 | + | |
7 | function createFakeCharacter(DisplayName) | |
8 | local Model0 = Instance.new("Model") | |
9 | local Part1 = Instance.new("Part") | |
10 | local SpecialMesh2 = Instance.new("SpecialMesh") | |
11 | local Part3 = Instance.new("Part") | |
12 | local Part4 = Instance.new("Part") | |
13 | local Part5 = Instance.new("Part") | |
14 | local Part6 = Instance.new("Part") | |
15 | local Part7 = Instance.new("Part") | |
16 | local Humanoid8 = Instance.new("Humanoid") | |
17 | - | conchar = Instance.new("Model",workspace) |
17 | + | local Part9 = Instance.new("Part") |
18 | - | hum = Instance.new("Humanoid",conchar) |
18 | + | local CharacterMesh10 = Instance.new("CharacterMesh") |
19 | - | hum.MaxHealth = 1 |
19 | + | local Shirt11 = Instance.new("Shirt") |
20 | local Pants12 = Instance.new("Pants") | |
21 | local Part13 = Instance.new("Part") | |
22 | local SpecialMesh14 = Instance.new("SpecialMesh") | |
23 | local AlignOrientation15 = Instance.new("AlignOrientation") | |
24 | local AlignPosition16 = Instance.new("AlignPosition") | |
25 | local Part17 = Instance.new("Part") | |
26 | local SpecialMesh18 = Instance.new("SpecialMesh") | |
27 | local AlignOrientation19 = Instance.new("AlignOrientation") | |
28 | local AlignPosition20 = Instance.new("AlignPosition") | |
29 | local Attachment21 = Instance.new("Attachment") | |
30 | local Attachment22 = Instance.new("Attachment") | |
31 | local Attachment23 = Instance.new("Attachment") | |
32 | ||
33 | - | pcall(function() |
33 | + | Attachment21.Name = "Head" |
34 | - | part = Instance.new("Part",conchar) |
34 | + | Attachment22.Name = "Hair" |
35 | - | part.Size = partsize |
35 | + | Attachment23.Name = "Mask" |
36 | - | part.Name = partname |
36 | + | Attachment21.Parent = Part1 |
37 | Attachment22.Parent = Part17 | |
38 | - | if partname == "Head" then |
38 | + | Attachment23.Parent = Part13 |
39 | - | local headmesh = Instance.new("SpecialMesh",part) |
39 | + | |
40 | - | headmesh.Scale = Vector3.new(1.25,1.25,1.25) |
40 | + | Model0.Name = "Ghost" |
41 | - | headmesh.MeshType = Enum.MeshType.Head |
41 | + | Model0.PrimaryPart = Part9 |
42 | Part1.Name = "Head" | |
43 | - | end) |
43 | + | Part1.Parent = Model0 |
44 | Part1.CFrame = CFrame.new(-51.5, 4.5, -53, 1, 0, 0, 0, 1, 0, 0, 0, 1) | |
45 | Part1.Position = Vector3.new(-51.5, 4.5, -53) | |
46 | Part1.Color = Color3.new(0.972549, 0.972549, 0.972549) | |
47 | Part1.Size = Vector3.new(2, 1, 1) | |
48 | Part1.BrickColor = BrickColor.new("Institutional white") | |
49 | Part1.Material = Enum.Material.Sand | |
50 | Part1.TopSurface = Enum.SurfaceType.Smooth | |
51 | Part1.brickColor = BrickColor.new("Institutional white") | |
52 | Part1.FormFactor = Enum.FormFactor.Symmetric | |
53 | Part1.formFactor = Enum.FormFactor.Symmetric | |
54 | SpecialMesh2.Parent = Part1 | |
55 | SpecialMesh2.Scale = Vector3.new(1.25, 1.25, 1.25) | |
56 | Part3.Name = "Torso" | |
57 | Part3.Parent = Model0 | |
58 | Part3.CFrame = CFrame.new(-51.5, 3, -53, 1, 0, 0, 0, 1, 0, 0, 0, 1) | |
59 | Part3.Position = Vector3.new(-51.5, 3, -53) | |
60 | Part3.Color = Color3.new(0.972549, 0.972549, 0.972549) | |
61 | Part3.Size = Vector3.new(2, 2, 1) | |
62 | Part3.BrickColor = BrickColor.new("Institutional white") | |
63 | Part3.LeftParamA = 0 | |
64 | Part3.LeftParamB = 0 | |
65 | Part3.LeftSurface = Enum.SurfaceType.Weld | |
66 | Part3.Material = Enum.Material.Sand | |
67 | - | --part.Position = partposition |
67 | + | Part3.RightParamA = 0 |
68 | Part3.RightParamB = 0 | |
69 | - | part.Color = Color3.new(0, 0, 0) |
69 | + | Part3.RightSurface = Enum.SurfaceType.Weld |
70 | Part3.brickColor = BrickColor.new("Institutional white") | |
71 | Part3.FormFactor = Enum.FormFactor.Symmetric | |
72 | Part3.formFactor = Enum.FormFactor.Symmetric | |
73 | Part4.Name = "Left Arm" | |
74 | Part4.Parent = Model0 | |
75 | Part4.CFrame = CFrame.new(-53, 3, -53, 1, 0, 0, 0, 1, 0, 0, 0, 1) | |
76 | Part4.Position = Vector3.new(-53, 3, -53) | |
77 | Part4.Color = Color3.new(0.972549, 0.972549, 0.972549) | |
78 | Part4.Size = Vector3.new(1, 2, 1) | |
79 | Part4.BrickColor = BrickColor.new("Institutional white") | |
80 | Part4.CanCollide = false | |
81 | Part4.Material = Enum.Material.Sand | |
82 | Part4.brickColor = BrickColor.new("Institutional white") | |
83 | Part4.FormFactor = Enum.FormFactor.Symmetric | |
84 | - | coms[3].Name = "Com3" |
84 | + | Part4.formFactor = Enum.FormFactor.Symmetric |
85 | Part5.Name = "Right Arm" | |
86 | - | coms[3].OnServerInvoke = comsfuncs[3] |
86 | + | Part5.Parent = Model0 |
87 | Part5.CFrame = CFrame.new(-50, 3, -53, 1, 0, 0, 0, 1, 0, 0, 0, 1) | |
88 | Part5.Position = Vector3.new(-50, 3, -53) | |
89 | Part5.Color = Color3.new(0.972549, 0.972549, 0.972549) | |
90 | Part5.Size = Vector3.new(1, 2, 1) | |
91 | Part5.BrickColor = BrickColor.new("Institutional white") | |
92 | Part5.CanCollide = false | |
93 | Part5.Material = Enum.Material.Sand | |
94 | - | local tweenservice = game:GetService("TweenService") |
94 | + | Part5.brickColor = BrickColor.new("Institutional white") |
95 | Part5.FormFactor = Enum.FormFactor.Symmetric | |
96 | Part5.formFactor = Enum.FormFactor.Symmetric | |
97 | Part6.Name = "Left Leg" | |
98 | Part6.Parent = Model0 | |
99 | Part6.CFrame = CFrame.new(-52, 1, -53, 1, 0, 0, 0, 1, 0, 0, 0, 1) | |
100 | Part6.Position = Vector3.new(-52, 1, -53) | |
101 | Part6.Color = Color3.new(0.972549, 0.972549, 0.972549) | |
102 | Part6.Size = Vector3.new(1, 2, 1) | |
103 | Part6.BottomSurface = Enum.SurfaceType.Smooth | |
104 | Part6.BrickColor = BrickColor.new("Institutional white") | |
105 | Part6.CanCollide = false | |
106 | Part6.Material = Enum.Material.Sand | |
107 | Part6.brickColor = BrickColor.new("Institutional white") | |
108 | Part6.FormFactor = Enum.FormFactor.Symmetric | |
109 | Part6.formFactor = Enum.FormFactor.Symmetric | |
110 | Part7.Name = "Right Leg" | |
111 | Part7.Parent = Model0 | |
112 | Part7.CFrame = CFrame.new(-51, 1, -53, 1, 0, 0, 0, 1, 0, 0, 0, 1) | |
113 | Part7.Position = Vector3.new(-51, 1, -53) | |
114 | Part7.Color = Color3.new(0.972549, 0.972549, 0.972549) | |
115 | Part7.Size = Vector3.new(1, 2, 1) | |
116 | Part7.BottomSurface = Enum.SurfaceType.Smooth | |
117 | Part7.BrickColor = BrickColor.new("Institutional white") | |
118 | Part7.CanCollide = false | |
119 | Part7.Material = Enum.Material.Sand | |
120 | Part7.brickColor = BrickColor.new("Institutional white") | |
121 | Part7.FormFactor = Enum.FormFactor.Symmetric | |
122 | Part7.formFactor = Enum.FormFactor.Symmetric | |
123 | Humanoid8.Parent = Model0 | |
124 | Humanoid8.DisplayDistanceType = Enum.HumanoidDisplayDistanceType.None | |
125 | Humanoid8.HealthDisplayDistance = 0 | |
126 | Humanoid8.HealthDisplayType = Enum.HumanoidHealthDisplayType.AlwaysOff | |
127 | Humanoid8.LeftLeg = Part6 | |
128 | Humanoid8.NameDisplayDistance = 0 | |
129 | Humanoid8.RightLeg = Part7 | |
130 | Humanoid8.Torso = Part9 | |
131 | Part9.Name = "HumanoidRootPart" | |
132 | Part9.Parent = Model0 | |
133 | Part9.CFrame = CFrame.new(-51.5, 3, -53, 1, 0, 0, 0, 1, 0, 0, 0, 1) | |
134 | Part9.Position = Vector3.new(-51.5, 3, -53) | |
135 | Part9.Transparency = 1 | |
136 | Part9.Size = Vector3.new(2, 2, 1) | |
137 | Part9.Anchored = false | |
138 | Part9.BottomSurface = Enum.SurfaceType.Smooth | |
139 | Part9.CanCollide = false | |
140 | Part9.LeftParamA = 0 | |
141 | Part9.LeftParamB = 0 | |
142 | Part9.Material = Enum.Material.Sand | |
143 | Part9.RightParamA = 0 | |
144 | Part9.RightParamB = 0 | |
145 | Part9.TopSurface = Enum.SurfaceType.Smooth | |
146 | Part9.FormFactor = Enum.FormFactor.Symmetric | |
147 | Part9.formFactor = Enum.FormFactor.Symmetric | |
148 | CharacterMesh10.Parent = Model0 | |
149 | CharacterMesh10.BodyPart = Enum.BodyPart.Torso | |
150 | CharacterMesh10.MeshId = "rbxassetid://48112070" | |
151 | Shirt11.Name = "Shirt" | |
152 | Shirt11.Parent = Model0 | |
153 | Shirt11.ShirtTemplate = "http://www.roblox.com/asset/?id=1210857659" | |
154 | Pants12.Name = "Pants" | |
155 | Pants12.Parent = Model0 | |
156 | Pants12.PantsTemplate = "http://www.roblox.com/asset/?id=1210858273" | |
157 | Part13.Name = "Mask" | |
158 | Part13.Parent = Model0 | |
159 | Part13.CFrame = CFrame.new(-51.5017433, 4.50454998, -53.0024185, 1, 0, 0, 0, 1, 0, 0, 0, 1) | |
160 | Part13.Position = Vector3.new(-51.50174331665, 4.5045499801636, -53.002418518066) | |
161 | Part13.Size = Vector3.new(2, 1, 1) | |
162 | Part13.BottomSurface = Enum.SurfaceType.Smooth | |
163 | Part13.CanCollide = false | |
164 | Part13.Material = Enum.Material.Sand | |
165 | Part13.TopSurface = Enum.SurfaceType.Smooth | |
166 | SpecialMesh14.Name = "SpecialMesh" | |
167 | SpecialMesh14.Parent = Part13 | |
168 | SpecialMesh14.MeshId = "rbxassetid://5728632913" | |
169 | SpecialMesh14.TextureId = "http://www.roblox.com/asset/?id=4809181158" | |
170 | SpecialMesh14.MeshType = Enum.MeshType.FileMesh | |
171 | AlignOrientation15.Parent = Part13 | |
172 | AlignOrientation15.Attachment0 = Attachment22 | |
173 | AlignOrientation15.Attachment1 = Attachment21 | |
174 | AlignOrientation15.RigidityEnabled = true | |
175 | AlignPosition16.Parent = Part13 | |
176 | AlignPosition16.Attachment0 = Attachment22 | |
177 | AlignPosition16.Attachment1 = Attachment21 | |
178 | AlignPosition16.RigidityEnabled = true | |
179 | Part17.Name = "Hair" | |
180 | Part17.Parent = Model0 | |
181 | Part17.CFrame = CFrame.new(-51.5, 4.5, -53, 1, 9.8568377e-15, -8.08289872e-16, -9.82961152e-15, 0.999588966, 0.0286718253, 1.09057112e-15, -0.0286718253, 0.999588966) | |
182 | Part17.Orientation = Vector3.new(-1.6399999856949, 0, 0) | |
183 | Part17.Position = Vector3.new(-51.5, 4.5, -53) | |
184 | Part17.Rotation = Vector3.new(-1.6399999856949, 0, 0) | |
185 | Part17.Size = Vector3.new(2, 1, 1) | |
186 | Part17.BottomSurface = Enum.SurfaceType.Smooth | |
187 | Part17.CanCollide = false | |
188 | Part17.Material = Enum.Material.Sand | |
189 | Part17.TopSurface = Enum.SurfaceType.Smooth | |
190 | SpecialMesh18.Name = "SpecialMesh" | |
191 | SpecialMesh18.Parent = Part17 | |
192 | SpecialMesh18.MeshId = "rbxassetid://6521980205" | |
193 | SpecialMesh18.Offset = Vector3.new(0, -0.80000001192093, 0.20000000298023) | |
194 | SpecialMesh18.Scale = Vector3.new(0.94999998807907, 0.95999997854233, 0.91000002622604) | |
195 | SpecialMesh18.TextureId = "http://www.roblox.com/asset/?id=6517665515" | |
196 | SpecialMesh18.MeshType = Enum.MeshType.FileMesh | |
197 | AlignOrientation19.Parent = Part17 | |
198 | AlignOrientation19.Attachment0 = Attachment23 | |
199 | AlignOrientation19.Attachment1 = Attachment21 | |
200 | AlignOrientation19.RigidityEnabled = true | |
201 | AlignPosition20.Parent = Part17 | |
202 | AlignPosition20.Attachment0 = Attachment23 | |
203 | AlignPosition20.Attachment1 = Attachment21 | |
204 | AlignPosition20.RigidityEnabled = true | |
205 | ||
206 | return Model0 | |
207 | end | |
208 | ||
209 | local mainchar = createFakeCharacter(owner.DisplayName) | |
210 | local conchar = mainchar:Clone() | |
211 | ||
212 | FF.Visible = false | |
213 | ||
214 | local comsfuncs={ | |
215 | function(plr, partname, partposition, partsize, partorientation) | |
216 | if plr ~= owner then | |
217 | return | |
218 | end | |
219 | if owner.Character.Parent then | |
220 | owner.Character.Parent = nil | |
221 | end | |
222 | if not conchar then | |
223 | conchar = mainchar:Clone() | |
224 | conchar.Parent = workspace | |
225 | return | |
226 | end | |
227 | if not conchar.Parent then | |
228 | conchar=nil | |
229 | return | |
230 | end | |
231 | if FF.Parent ~= owner.Character then | |
232 | FF = Instance.new("ForceField",owner.Character) | |
233 | FF.Visible = false | |
234 | end | |
235 | conchar.Name = "Ghost" | |
236 | local part = conchar:FindFirstChild(partname) | |
237 | if not part then | |
238 | conchar:Destroy() | |
239 | conchar = nil | |
240 | return | |
241 | end | |
242 | for _,p in pairs(conchar:GetDescendants())do | |
243 | if p:IsA("BasePart") then | |
244 | if p:GetNetworkOwner() ~= owner then | |
245 | p:SetNetworkOwner(owner) | |
246 | end | |
247 | end | |
248 | end | |
249 | if part then | |
250 | if not part:FindFirstChild("PartAlignPos") then | |
251 | part.Position = partposition | |
252 | local AlignPosition = Instance.new("AlignPosition",part) | |
253 | local AlignOrientation = Instance.new("AlignOrientation",part) | |
254 | AlignPosition.Name = "PartAlignPos" | |
255 | AlignOrientation.Name = "PartAlignOri" | |
256 | local attachment0 = Instance.new("Attachment",part) | |
257 | local attachment1 = Instance.new("Attachment",part) | |
258 | attachment1.Name = "attachment1" | |
259 | AlignOrientation.RigidityEnabled = true | |
260 | AlignPosition.RigidityEnabled = true | |
261 | AlignOrientation.Attachment0 = attachment0 | |
262 | AlignOrientation.Attachment1 = attachment1 | |
263 | AlignPosition.Attachment0 = attachment0 | |
264 | AlignPosition.Attachment1 = attachment1 | |
265 | end | |
266 | if partname == "HumanoidRootPart" then | |
267 | part.Transparency = 1 | |
268 | else | |
269 | part.Transparency = 0.5 | |
270 | end | |
271 | part.Name = partname | |
272 | if part:GetNetworkOwner() ~= owner then | |
273 | part:SetNetworkOwner(owner) | |
274 | end | |
275 | end | |
276 | end, | |
277 | function(plr) | |
278 | if plr ~= owner then | |
279 | return | |
280 | end | |
281 | return conchar | |
282 | end | |
283 | } | |
284 | coms[1].Name = "Com1" | |
285 | coms[2].Name = "Com2" | |
286 | waitremote.Name = "WaitRemote" | |
287 | coms[2].OnServerInvoke = comsfuncs[2] | |
288 | coms[1].OnServerEvent:Connect(comsfuncs[1]) | |
289 | ||
290 | NLS([==[ | |
291 | local remote=script.Parent.Com1 | |
292 | local com1 = script.Parent.Com2 | |
293 | local owner = owner or game:GetService("Players").LocalPlayer | |
294 | game:GetService("RunService").RenderStepped:Connect(function() | |
295 | if owner.Character.Parent ~= workspace then | |
296 | owner.Character.Parent = workspace | |
297 | end | |
298 | end) | |
299 | local parttable={} | |
300 | local FF | |
301 | game:GetService("RunService").Stepped:Connect(function() | |
302 | if not FF then | |
303 | FF = Instance.new("ForceField") | |
304 | end | |
305 | if not FF.Parent then | |
306 | FF = nil | |
307 | end | |
308 | if FF then | |
309 | FF.Visible = false | |
310 | end | |
311 | for _, part in pairs(owner.Character:GetChildren()) do | |
312 | coroutine.resume(coroutine.create(function() | |
313 | local part = part | |
314 | if part:IsA("BasePart") then | |
315 | remote:FireServer(part.Name, part.Position, part.Size, part.Orientation) | |
316 | end | |
317 | end)) | |
318 | end | |
319 | end) | |
320 | ||
321 | game:GetService("RunService").RenderStepped:Connect(function() | |
322 | if com1:InvokeServer() then | |
323 | for _,part in pairs(com1:InvokeServer():GetDescendants()) do | |
324 | coroutine.resume(coroutine.create(function() | |
325 | if part:IsA("BasePart") then | |
326 | part.CanCollide = false | |
327 | if part:FindFirstChild("attachment1") then | |
328 | part.attachment1.Parent = owner.Character[part.Name] | |
329 | part.Position = owner.Character[part.Name].Position | |
330 | end | |
331 | elseif part:IsA("Humanoid") then | |
332 | part:Destroy() | |
333 | end | |
334 | end)) | |
335 | end | |
336 | end | |
337 | end) | |
338 | ||
339 | script.Parent.WaitRemote:FireServer() | |
340 | ]==],script) | |
341 | ||
342 | game:GetService("RunService").Heartbeat:Connect(function() | |
343 | for i=1,#coms do | |
344 | if not coms[i].Parent then | |
345 | local ClassName = coms[i].ClassName | |
346 | coms[i] = Instance.new(ClassName,script) | |
347 | if ClassName == "RemoteEvent" then | |
348 | coms[i].OnServerEvent:Connect(comsfuncs[i]) | |
349 | elseif ClassName == "RemoteFunction" then | |
350 | coms[i].OnServerInvoke = comsfuncs[i] | |
351 | end | |
352 | end | |
353 | if coms[i].Name ~= "Com" .. tostring(i) then | |
354 | coms[i].Name = "Com" .. tostring(i) | |
355 | end | |
356 | end | |
357 | end) | |
358 | script.Parent = owner.PlayerGui | |
359 | print("waiting") | |
360 | waitremote.OnServerEvent:Wait() | |
361 | print("Destroy! wait remote") | |
362 | waitremote:Destroy() | |
363 | owner.Character.Parent = nil |