View difference between Paste ID: MzmdGxmE and aa25qNcT
SHOW: | | - or go back to the newest paste.
1
--Last line
2
local Asset = "http://www.roblox.com/asset/?id="
3
local Provider = game:service("ContentProvider")
4
local Seen = 20
5
6
local C3 = Color3.new
7
local UD = UDim2.new
8
local V2 = Vector2.new
9
10
local Icons = {
11
	PreviousPage = Asset..(57411555),
12
	NextPage = Asset..(57411520),
13
	Previous = Asset..(57375309),
14
	Home = Asset..(57375258),
15
	Refresh = Asset..(57376869),
16
	Properties = Asset..(57475029),
17
	Delete = Asset..(57474956),
18
	Copy = Asset..(57474905),
19
	Paste = Asset..(57474999),
20
	Cut = Asset..(57474927),
21
	Exit = Asset..(57510854),
22
}
23
24
local Images = {
25
	{{"IntValue", "BrickColorValue", "Color3Value", "Vector3Value", "CFrameValue", "NumberValue", "ObjectValue", "StringValue", "BoolValue", "RayValue"}, Asset..(57403779)},
26
	{{"BasePart", "Part", "WedgePart"}, Asset..(57403711)},
27
	{{"ForceField"}, Asset..(57404473)},
28
	{{"Weld", "Rotate", "Glue"}, Asset..(57403808)},
29
	{{"BodyVelocity", "BodyPosition", "BodyForce", "BodyGyro", "BodyThrust", "BodyAngularVelocity", "BodyPosition", "RocketPropulsion"}, Asset..(57403610)},
30
	{{"Animation", "AnimationTrack"}, Asset..(57403557)},
31
	{{"Model"}, Asset..(57403668)},
32
	{{"Player", "Players"}, Asset..(57403743)},
33
	{{"BlockMesh", "SpecialMesh", "CylinderMesh", "FileMesh", "CharacterMesh"}, Asset..(57403643)},
34
	{{"TextButton", "TextLabel", "ImageLabel", "ImageButton", "Frame"}, Asset..(57403587)},
35
	{{"Camera"}, Asset..(57406901)},
36
	{{"Hat", "Accoutrement"}, Asset..(57406931)},
37
	{{"LocalScript"}, Asset..(57406954)},
38
	{{"HopperBin"}, Asset..(57406984)},
39
	{{"Tool"}, Asset..(57407105)},
40
	{{"Humanoid"}, Asset..(57407016)},
41
	{{"Script"}, Asset..(57407071)},
42
	{{"Message", "Hint"}, Asset..(57407564)},
43
	{{"Decal"}, Asset..(57583116)},
44
	{{"Pants"}, Asset..(57583183)},
45
	{{"Seat", "VehicleSeat", "SkateboardPlatform"}, Asset..(57583240)},
46
	{{"Shirt"}, Asset..(57583288)},
47
	{{"SpawnLocation"}, Asset..(57583329)},
48
	{{"Texture"}, Asset..(57583364)},
49
}
50
51
for _,v in pairs(Images) do
52
	Provider:Preload(v[2])
53
end
54
55
wait(0.5)
56
57
function Find(Object)
58
	local Img = Asset..(57403690)
59
	for _,v in pairs(Images) do
60
		for _,k in pairs(v[1]) do
61
			if Object.className == k then
62
				Img = v[2]
63
			end
64
		end
65
	end
66
	return Img
67
end
68
69
local Classes = {"Frame", "ImageLabel", "ImageButton", "TextLabel", "TextButton", "TextBox"}
70
function Make(Class, Par, Size, Pos, Color, Trans, Border, Borderc, Txt, TxtC, Img)
71
	local Mk = "Frame"
72
	for _,v in pairs(Classes) do
73
		if Class == v then
74
			Mk = v
75
		end
76
	end
77
	local g = Instance.new(Mk)
78
	g.Size = Size
79
	g.Position = Pos
80
	g.BackgroundColor3 = Color
81
	g.Transparency = Trans
82
	g.BorderSizePixel = Border
83
	g.BorderColor3 = Borderc
84
	if Mk == "TextButton" or Mk == "TextLabel" or Mk == "TextBox" then
85
		g.Text = Txt
86
		g.TextColor3 = TxtC
87
	elseif Mk == "ImageLabel" or Mk == "ImageButton" then
88
		g.Image = Img
89
	end
90
	g.Parent = Par
91
	return g
92
end
93
94
function Give(Player)
95
	local Place = workspace
96
	local From = 0
97
	local gui = Player:findFirstChild("PlayerGui")
98
	if gui then
99
		for _,v in pairs(gui:children()) do if v.Name == "GuiText" then v:remove() end end
100
	end
101
	local Sc = Instance.new("ScreenGui")
102
	Sc.Name = "GuiText"
103
	local Options = nil
104
	local Copied = nil
105
	local Number = (50-32)
106
	local Resolution = V2(1028, 768)
107
	local Main = Make("Frame", Sc, UD(1, 0, 1, 1), UD(0, 0, 0, -1), C3(0.92, 0.92, 0.96), 1, 0, C3())
108
	coroutine.resume(coroutine.create(function()
109
		wait(0.04)
110
		Resolution = V2(Main.AbsoluteSize.X, Main.AbsoluteSize.Y)
111
	end))
112
	local ExplorerDec = Make("Frame", Main, UD(0, 155, 0, 360), UD(0, 0, 0.5, -175), C3(0.75, 0.75, 0.9), 0, 0, C3())
113
	local Explorer = Make("Frame", ExplorerDec, UD(1, -5, 1, -10), UD(0, 0, 0, 5), C3(0.9, 0.9, 0.95), 0, 0, C3())
114
	local Bar = Make("Frame", Explorer, UD(1, 0, 0, 32), UD(), C3(0.75, 0.75, 0.9), 0, 0, C3())
115
	local Previous = Make("ImageButton", Bar, UD(0, 32, 0, 32), UD(0, 9, 0, 0), C3(0.75, 0.75, 0.9), 0, 0, C3(), nil, nil, Icons.Previous)
116
	local Home = Make("ImageButton", Bar, UD(0, 32, 0, 32), UD(0, 59, 0, 0), C3(0.75, 0.75, 0.9), 0, 0, C3(), nil, nil, Icons.Home)
117
	local Refresh = Make("ImageButton", Bar, UD(0, 32, 0, 32), UD(0, 109, 0, 0), C3(0.75, 0.75, 0.9), 0, 0, C3(), nil, nil, Icons.Refresh)
118
	local List = Make("Frame", Explorer, UD(1, -10, 1, -32-4), UD(0, 5, 0, 32), C3(0.7, 0.7, 0.85), 0, 0, C3())
119
	local NextPage = Make("ImageButton", ExplorerDec, UD(0.5, 0, 0, 30), UD(0.5, 0, 1, 0), C3(0.75, 0.75, 0.9), 0, 0, C3(), nil, nil, Icons.NextPage)
120
	local PreviousPage = Make("ImageButton", ExplorerDec, UD(0.5, 0, 0, 30), UD(0, 0, 1, 0), C3(0.75, 0.75, 0.9), 0, 0, C3(), nil, nil, Icons.PreviousPage)
121
	
122
	local BackTool = Make("Frame", ExplorerDec, UD(0, 36, 0, (32+4)*4+4), UD(1, 0, 0, 0), C3(0.75, 0.75, 0.9), 0, 0, C3())
123
	local Properties = Make("ImageButton", BackTool, UD(0, 32, 0, 32), UD(0, 0, 0, 4), C3(0.82, 0.82, 0.93), 0, 0, C3(), nil, nil, Icons.Properties)
124
	local CopyP = Make("ImageButton", BackTool, UD(0, 32, 0, 32), UD(0, 0, 0, (32+4)*1+4), C3(0.82, 0.82, 0.93), 0, 0, C3(), nil, nil, Icons.Copy)
125
	local PasteP = Make("ImageButton", BackTool, UD(0, 32, 0, 32), UD(0, 0, 0, (32+4)*2+4), C3(0.82, 0.82, 0.93), 0, 0, C3(), nil, nil, Icons.Paste)
126
	local DeleteP = Make("ImageButton", BackTool, UD(0, 32, 0, 32), UD(0, 0, 0, (32+4)*3+4), C3(0.82, 0.82, 0.93), 0, 0, C3(), nil, nil, Icons.Delete)
127
	
128
	local Name = Make("TextLabel", ExplorerDec, UD(1, 0, 0, 25), UD(0, 0, 0, -25), C3(0.8, 0.8, 0.95), 0, 0, C3(), "nil", C3())
129
	Name.FontSize = "Size14"
130
	Name.Font = "Arial"
131
	local Size = 350-36
132
	local Buttons = {}
133
	local SeenSize = (Size/Seen)
134
	for i = 0, Size-SeenSize, SeenSize do
135
		local Txt = Make("TextButton", List, UD(1, -SeenSize, 0, SeenSize), UD(0, SeenSize, 0, i), C3(0.8, 0.8, 0.9), 0, 0, C3(), "-", C3())
136
		Txt.Font = "Arial"
137
		Txt.FontSize = "Size12"
138
		Txt.TextWrap = true
139
		Txt.TextXAlignment = "Left"
140
		local Im = Make("ImageLabel", Txt, UD(0, SeenSize, 1, 0), UD(0, -SeenSize, 0, 0), C3(0.76, 0.76, 0.9), 0, 0, C3(), nil, nil, "")
141
		local Button = {Go = nil, Gui = Txt, Img = Im}
142
		table.insert(Buttons, Button)
143
	end
144
	local function Update(P)
145
		if Options then Options:remove() end
146
		if P ~= nil then
147
			Place = P
148
			Name.Text = tostring(Place)
149
			
150
			local Items = Place:children()
151
			local Amount = #Items
152
			for i = 1, #Buttons do
153
				pcall(function()
154
				local Item = Items[i+From]
155
				if Item then
156
					local img = Find(Item)
157
					Buttons[i].Go = Item
158
					Buttons[i].Gui.Text = Item.Name
159
					Buttons[i].Img.Image = img
160
				else
161
					Buttons[i].Go = nil
162
					Buttons[i].Gui.Text = "-"
163
					Buttons[i].Img.Image = ""
164
				end
165
				end)
166
			end
167
		end
168
	end
169
	local function OpenOptions(P, x, y)
170
		if Options then Options:remove() end
171
		if P ~= nil then
172
		local Pos = 87
173
		local Siz = 112
174
		if P:IsA("StringValue") then
175
			Siz = 132
176
			Pos = 107
177
		end
178
		local Back = Make("Frame", Main, UD(0, 150, 0, Siz), UD(0, x+3, 0, y+4), C3(0.65, 0.65, 0.8), 0, 0, C3())
179
		local Copy = Make("TextButton", Back, UD(1, -10, 0, 20), UD(0, 5, 0, 5), C3(0.85, 0.85, 0.95), 0, 0, C3(), "Copy", C3())
180
		local Paste = Make("TextButton", Back, UD(1, -10, 0, 20), UD(0, 5, 0, 25), C3(0.85, 0.85, 0.95), 0, 0, C3(), "Paste", C3())
181
		local Delete = Make("TextButton", Back, UD(1, -10, 0, 20), UD(0, 5, 0, 45), C3(0.85, 0.85, 0.95), 0, 0, C3(), "Delete", C3())
182
		local Rename = Make("TextButton", Back, UD(1, -10, 0, 20), UD(0, 5, 0, 65), C3(0.85, 0.85, 0.95), 0, 0, C3(), "Rename", C3())
183
		if P:IsA("StringValue") then
184
			local Read = Make("TextButton", Back, UD(1, -10, 0, 20), UD(0, 5, 0, 85), C3(0.85, 0.85, 0.95), 0, 0, C3(), "Read", C3())
185
			Read.Font = "Arial"
186
			Read.FontSize = "Size12"
187
			Read.TextXAlignment = "Left"
188
			Read.MouseButton1Down:connect(function()
189
				if Options then Options:remove() end
190
				local Text = P.Value
191
				local Lines = {}
192
				local Last = 1
193
				for i = 1, #Text, 1 do
194
					if Text:sub(i,i) == string.char(10) then
195
						local asd = Text:sub(Last, i-1)
196
						asd = asd:gsub(string.char(9), "          ")
197
						table.insert(Lines, asd)
198
						Last = i+1
199
					end
200
				end
201
				local asd = Text:sub(Last, #Text)
202
				asd = asd:gsub(string.char(9), "          ")
203
				table.insert(Lines, asd)
204
				local MainT = Make("Frame", Main, UD(1, -200, 0, 0), UD(0, 0, 0.5, 0), C3(1, 1, 1), 1, 0, C3())
205
				local DerpGui = Make("ImageButton", Main, UD(1, 0, 1, 0), UD(0, 0, 0, 0), C3(), 1, 0, C3(), nil, nil, "")
206
				DerpGui.Visible = false
207
				local Scroll = Make("Frame", Main, UD(0, 20, 0, Resolution.Y-40), UD(1, -220, 0, 20), C3(0.97, 0.97, 1), 0, 0, C3())
208
				local ButtonUp = Make("ImageButton", Scroll, UD(0, 20, 0, 20), UD(0, 0, 0, -20), C3(0.85, 0.85, 0.9), 0, 0, C3(), nil, nil, "")
209
				local ButtonDown = Make("ImageButton", Scroll, UD(0, 20, 0, 20), UD(0, 0, 1, 0), C3(0.85, 0.85, 0.9), 0, 0, C3(), nil, nil, "")
210
				local ScrollBar = Make("ImageButton", Scroll, UD(1, 0, 0, 150), UD(0, 0, 0, 0), C3(0.75, 0.75, 0.85), 0, 0, C3(), nil, nil, "")
211
				local Texts = {}
212
				for i = 0, Resolution.Y-13, 13 do
213
					local Txt = Make("TextLabel", MainT, UD(1, 0, 0, 13), UD(0, 0, i/Resolution.Y, 0), C3(1, 1, 1), 0, 1, C3(0.9, 0.9, 0.9), "", C3())
214
					Txt.Font = "Arial"
215
					Txt.FontSize = "Size12"
216
					Txt.TextXAlignment = "Left"
217
					table.insert(Texts, Txt)
218
				end
219
				for i, v in pairs(Texts) do
220
					local line = Lines[i]
221
					if line then
222
						v.Text = tostring(line)
223
					end
224
				end
225
				local Normal = UD(0, 0, 0.5, -175)
226
				ExplorerDec:TweenPosition(UD(0, -200, 0.5, -175), nil, nil, 0.5)
227
				MainT:TweenSize(UD(1, -200, 0, Resolution.Y+1))
228
				MainT:TweenPosition(UD(0, 0, 0, -1))
229
				local ScrollPos = 20
230
				local ScrollSize = Resolution.Y-40
231
				local SlideSize = 150
232
				local Point = ScrollPos + ScrollSize
233
				local AllPoint = Point-SlideSize-ScrollPos
234
				ScrollBar.MouseButton1Down:connect(function(x, y)
235
					local pos2 = ScrollBar.Position.Y.Offset-y
236
					DerpGui.Visible = true
237
					local Conn = DerpGui.MouseMoved:connect(function(X, Y)
238
						local pos = Y+pos2
239
						if pos < 0 then pos = 0 end
240
						if pos+SlideSize+ScrollPos > Point then pos = AllPoint end
241
						ScrollBar.Position = UD(0, 0, 0, pos)
242
						local Division = (pos/AllPoint)
243
						local Asd = #Lines-#Texts+5
244
						if Asd > #Lines then Asd = #Lines end
245
						local Placement = math.floor((Asd)*Division)
246
						for i, v in pairs(Texts) do
247
							local Line = Lines[i+Placement]
248
							if Line then
249
								v.Text = Line
250
							else
251
								v.Text = ""
252
							end
253
						end
254
					end)
255
					local co = DerpGui.MouseButton1Up:connect(function()
256
						DerpGui.Visible = false
257
						Conn:disconnect()
258
						co:disconnect()
259
					end)
260
				end)
261
				local Exit = Make("ImageButton", MainT, UD(0, 35, 0, 35), UD(1, -75, 0, 25), C3(), 1, 0, C3(), nil, nil, Icons.Exit)
262
				local c = Exit.MouseButton1Down:connect(function()
263
					Scroll:remove()
264
					Exit:remove()
265
					for _,v in pairs(Texts) do v.Text = "" end
266
					ExplorerDec:TweenPosition(Normal, nil, nil, 0.7)
267
					MainT:TweenSize(UD(0, 0, 0, 0), nil, nil, 0.5)
268
					MainT:TweenPosition(UD(0.5, 0, 0.5, 0), nil, nil, 0.5)
269
					wait(0.5)
270
					MainT:remove()
271
				end)
272
			end)
273
		end
274
		local Cancel = Make("TextButton", Back, UD(1, -10, 0, 20), UD(0, 5, 0, Pos), C3(0.85, 0.85, 0.95), 0, 0, C3(), "Cancel", C3())
275
		Copy.Font = "Arial"
276
		Paste.Font = "Arial"
277
		Delete.Font = "Arial"
278
		Rename.Font = "Arial"
279
		Cancel.Font = "Arial"
280
		Copy.FontSize = "Size12"
281
		Paste.FontSize = "Size12"
282
		Delete.FontSize = "Size12"
283
		Rename.FontSize = "Size12"
284
		Cancel.FontSize = "Size12"
285
		Copy.TextXAlignment = "Left"
286
		Paste.TextXAlignment = "Left"
287
		Delete.TextXAlignment = "Left"
288
		Rename.TextXAlignment = "Left"
289
		Cancel.TextXAlignment = "Left"
290
		Copy.MouseButton1Down:connect(function()
291
			if Options then Options:remove() end
292
			local a = P.archivable
293
			P.archivable = true
294
			Copied = P:clone()
295
			wait()
296
			P.archivable = a
297
		end)
298
		Paste.MouseButton1Down:connect(function()
299
			if Options then Options:remove() end
300
			if Copied then
301
				local clo = Copied:clone()
302
				clo.Parent = P
303
			end
304
		end)
305
		Delete.MouseButton1Down:connect(function()
306
			if Options then Options:remove() end
307
			P:remove()
308
			Update(Place)
309
		end)
310
		Rename.MouseButton1Down:connect(function()
311
			if Options then Options:remove() end
312
			local Sc2 = Instance.new("ScreenGui")
313
			Sc2.Name = "Rename"
314
			Sc2.Parent = gui
315
			local Effect = Make("ImageButton", Sc2, UD(0, 0, 0, 0), UD(0.5, 0, 0.5, 0), C3(0.9, 0.9, 1), 0, 0, C3(), nil, nil, "")
316
			Effect.AutoButtonColor = false
317
			local Writeback = Make("Frame", Sc2, UD(0, 0, 0, 0), UD(0.5, 0, 0.5, 0), C3(0.7, 0.7, 0.9), 0, 0, C3())
318
			local Write = Make("Frame", Writeback, UD(1, -10, 1, -10), UD(0, 5, 0, 5), C3(0.9, 0.9, 0.95), 0, 0, C3())
319
			local TextBar = Make("TextBox", Write, UD(0.8, 0, 0.15, 0), UD(0.1, 0, 0.2, 0), C3(0.5, 0.5, 0.8), 0, 0, C3(), "", C3(1,1,1))
320
			TextBar.FontSize = "Size14"
321
			TextBar.Font = "Arial"
322
			local Ok = Make("TextButton", Write, UD(0.3, 0, 0.17, 0), UD(0.1, 0, 0.5, 0), C3(0.65, 0.65, 0.85), 0, 0, C3(), "Ok", C3(1,1,1))
323
			local Canc = Make("TextButton", Write, UD(0.3, 0, 0.17, 0), UD(0.6, 0, 0.5, 0), C3(0.65, 0.65, 0.85), 0, 0, C3(), "Cancel", C3(1,1,1))
324
			Ok.Font = "ArialBold"
325
			Ok.FontSize = "Size18"
326
			Canc.Font = "ArialBold"
327
			Canc.FontSize = "Size18"
328
			Effect:TweenPosition(UD(0, 0, 0, -1))
329
			Writeback:TweenPosition(UD(0.5, -150, 0.5, -60))
330
			Writeback:TweenSize(UD(0, 300, 0, 120))
331
			Effect:TweenSize(UD(1, 0, 1, 1))
332
			local Normal = UD(0, 0, 0.5, -175)
333
			ExplorerDec:TweenPosition(UD(0, -200, 0.5, -175), nil, nil, 0.4)
334
			local function TweenBack()
335
				Effect:TweenPosition(UD(1, 0, 0.5, 0), nil, nil, 0.5)
336
				Effect:TweenSize(UD(0, 0, 0, 0), nil, nil, 0.5)
337
				Writeback:TweenPosition(UD(1, 0, 0.5, 0), nil, nil, 0.5)
338
				Writeback:TweenSize(UD(0, 0, 0, 0), nil, nil, 0.5)
339
				ExplorerDec:TweenPosition(Normal, nil, nil, 0.5)
340
				Ok.Text = ""
341
				Canc.Text = ""
342
				TextBar.Text = ""
343
				coroutine.resume(coroutine.create(function()
344
					for i = 0, 1, 0.08 do
345
						wait()
346
						Effect.BackgroundTransparency = 0.4+0.7*i
347
					end
348
					Sc2:remove()
349
				end))
350
			end
351
			coroutine.resume(coroutine.create(function()
352
				for i = 0, 1, 0.035 do
353
					wait()
354
					Effect.BackgroundTransparency = 0.4*i
355
				end
356
			end))
357
			Canc.MouseButton1Down:connect(function()
358
				TweenBack()
359
			end)
360
			Ok.MouseButton1Down:connect(function()
361
				coroutine.resume(coroutine.create(function()
362
					local derp = P.archivable
363
					P.archivable = true
364
					P.Name = TextBar.Text
365
					wait()
366
					P.archivable = derp
367
				end))
368
				TweenBack()
369
				Update(Place)
370
			end)
371
		end)
372
		Cancel.MouseButton1Down:connect(function()
373
			if Options then Options:remove() end
374
		end)
375
		Options = Back
376
		end
377
	end
378
	for i,v in pairs(Buttons) do
379
		v.Gui.MouseButton1Down:connect(function()
380
			if v.Go ~= nil then
381
				From = 0
382
				Update(v.Go)
383
			end
384
		end)
385
		v.Gui.MouseButton2Down:connect(function(x, y)
386
			OpenOptions(v.Go, x, y)
387
		end)
388
	end
389
	Home.MouseButton1Down:connect(function()
390
		pcall(function()
391
			From = 0
392
			Update(workspace)
393
		end)
394
	end)
395
	Previous.MouseButton1Down:connect(function()
396
		pcall(function()
397
			From = 0
398
			Update(Place.Parent)
399
		end)
400
	end)
401
	Refresh.MouseButton1Down:connect(function()
402
		pcall(function()
403
			From = 0
404
			Update(Place)
405
		end)
406
	end)
407
	NextPage.MouseButton1Down:connect(function()
408
		pcall(function()
409
			From = From + Seen
410
			Update(Place)
411
		end)
412
	end)
413
	PreviousPage.MouseButton1Down:connect(function()
414
		pcall(function()
415
			From = From - Seen
416
			if From < 0 then From = 0 end
417
			Update(Place)
418
		end)
419
	end)
420
	CopyP.MouseButton1Down:connect(function()
421
		pcall(function()
422
			if Options then Options:remove() end
423
			if Place ~= workspace then
424
				local a = Place.archivable
425
				Place.archivable = true
426
				Copied = Place:clone()
427
				wait()
428
				Place.archivable = a
429
			end
430
		end)
431
	end)
432
	PasteP.MouseButton1Down:connect(function()
433
		pcall(function()
434
			if Options then Options:remove() end
435
			if Copied and Copied ~= workspace then
436
				local clo = Copied:clone()
437
				clo.Parent = Place
438
				Update(Place)
439
			end
440
		end)
441
	end)
442
	DeleteP.MouseButton1Down:connect(function()
443
		pcall(function()
444
			if Options then Options:remove() end
445
			if Place ~= workspace then
446
				local plaic = Place.Parent
447
				if plaic == nil then plaic = workspace end
448
				Place:remove()
449
				Update(plaic)
450
			end
451
		end)
452
	end)
453
	Update(Place)
454
	Sc.Parent = gui
455
end
456
457-
Give(game.Players.landinreese007)
457+
Give(game.Players.jassm22)