· 6 years ago · May 20, 2019, 10:44 PM
1CreateGui = function()
2local NewGuiPart1 = Instance.new("ScreenGui")
3local NewGuiPart2 = Instance.new("Frame")
4local NewGuiPart3 = Instance.new("Frame")
5local NewGuiPart4 = Instance.new("TextLabel")
6local NewGuiPart5 = Instance.new("TextBox")
7local NewGuiPart6 = Instance.new("Frame")
8local NewGuiPart7 = Instance.new("Frame")
9local NewGuiPart8 = Instance.new("TextButton")
10local NewGuiPart9 = Instance.new("TextLabel")
11local NewGuiPart10 = Instance.new("TextLabel")
12local NewGuiPart11 = Instance.new("ImageLabel")
13local NewGuiPart12 = Instance.new("Frame")
14local NewGuiPart13 = Instance.new("Frame")
15local NewGuiPart14 = Instance.new("Frame")
16local NewGuiPart15 = Instance.new("TextButton")
17local NewGuiPart16 = Instance.new("ImageLabel")
18local NewGuiPart17 = Instance.new("TextButton")
19local NewGuiPart18 = Instance.new("ImageLabel")
20local NewGuiPart19 = Instance.new("TextButton")
21local NewGuiPart20 = Instance.new("ImageLabel")
22local NewGuiPart21 = Instance.new("TextButton")
23local NewGuiPart22 = Instance.new("ImageLabel")
24local NewGuiPart23 = Instance.new("TextButton")
25local NewGuiPart24 = Instance.new("ImageLabel")
26local NewGuiPart25 = Instance.new("TextButton")
27local NewGuiPart26 = Instance.new("ImageLabel")
28local NewGuiPart27 = Instance.new("TextButton")
29local NewGuiPart28 = Instance.new("Frame")
30local NewGuiPart29 = Instance.new("Frame")
31local NewGuiPart30 = Instance.new("TextLabel")
32local NewGuiPart31 = Instance.new("Frame")
33local NewGuiPart32 = Instance.new("TextLabel")
34local NewGuiPart33 = Instance.new("TextLabel")
35local NewGuiPart34 = Instance.new("TextButton")
36local NewGuiPart35 = Instance.new("TextLabel")
37local NewGuiPart36 = Instance.new("TextLabel")
38local NewGuiPart37 = Instance.new("Frame")
39local NewGuiPart38 = Instance.new("Frame")
40local NewGuiPart39 = Instance.new("TextLabel")
41local NewGuiPart40 = Instance.new("Frame")
42local NewGuiPart41 = Instance.new("TextButton")
43local NewGuiPart42 = Instance.new("TextLabel")
44local NewGuiPart43 = Instance.new("TextButton")
45local NewGuiPart44 = Instance.new("TextBox")
46local NewGuiPart45 = Instance.new("TextButton")
47local NewGuiPart46 = Instance.new("TextLabel")
48local NewGuiPart47 = Instance.new("TextLabel")
49local NewGuiPart48 = Instance.new("Frame")
50local NewGuiPart49 = Instance.new("TextLabel")
51local NewGuiPart50 = Instance.new("Frame")
52local NewGuiPart51 = Instance.new("TextButton")
53local NewGuiPart52 = Instance.new("TextLabel")
54local NewGuiPart53 = Instance.new("TextButton")
55local NewGuiPart54 = Instance.new("Frame")
56local NewGuiPart55 = Instance.new("TextLabel")
57local NewGuiPart56 = Instance.new("Frame")
58local NewGuiPart57 = Instance.new("TextLabel")
59local NewGuiPart58 = Instance.new("TextButton")
60local NewGuiPart59 = Instance.new("Frame")
61local NewGuiPart60 = Instance.new("TextLabel")
62local NewGuiPart61 = Instance.new("Frame")
63local NewGuiPart62 = Instance.new("TextLabel")
64local NewGuiPart63 = Instance.new("ScrollingFrame")
65local NewGuiPart64 = Instance.new("TextButton")
66local NewGuiPart65 = Instance.new("TextLabel")
67local NewGuiPart66 = Instance.new("TextLabel")
68local NewGuiPart67 = Instance.new("TextButton")
69local NewGuiPart68 = Instance.new("TextButton")
70local NewGuiPart69 = Instance.new("Frame")
71local NewGuiPart70 = Instance.new("TextButton")
72local NewGuiPart71 = Instance.new("TextBox")
73local NewGuiPart72 = Instance.new("TextButton")
74local NewGuiPart73 = Instance.new("TextButton")
75local NewGuiPart74 = Instance.new("Frame")
76local NewGuiPart75 = Instance.new("Frame")
77local NewGuiPart76 = Instance.new("TextButton")
78local NewGuiPart77 = Instance.new("ScrollingFrame")
79local NewGuiPart78 = Instance.new("Frame")
80local NewGuiPart79 = Instance.new("TextLabel")
81local NewGuiPart80 = Instance.new("TextLabel")
82local NewGuiPart81 = Instance.new("TextLabel")
83local NewGuiPart82 = Instance.new("Frame")
84local NewGuiPart83 = Instance.new("TextLabel")
85local NewGuiPart84 = Instance.new("Frame")
86local NewGuiPart85 = Instance.new("Frame")
87local NewGuiPart86 = Instance.new("Frame")
88local NewGuiPart87 = Instance.new("ImageButton")
89local NewGuiPart88 = Instance.new("Frame")
90local NewGuiPart89 = Instance.new("Frame")
91local NewGuiPart90 = Instance.new("Frame")
92local NewGuiPart91 = Instance.new("Frame")
93local NewGuiPart92 = Instance.new("Frame")
94local NewGuiPart93 = Instance.new("ImageButton")
95local NewGuiPart94 = Instance.new("Frame")
96local NewGuiPart95 = Instance.new("Frame")
97local NewGuiPart96 = Instance.new("Frame")
98local NewGuiPart97 = Instance.new("Frame")
99local NewGuiPart98 = Instance.new("Frame")
100local NewGuiPart99 = Instance.new("TextButton")
101local NewGuiPart100 = Instance.new("Frame")
102local NewGuiPart101 = Instance.new("Frame")
103local NewGuiPart102 = Instance.new("TextButton")
104local NewGuiPart103 = Instance.new("TextButton")
105local NewGuiPart104 = Instance.new("TextButton")
106local NewGuiPart105 = Instance.new("Frame")
107local NewGuiPart106 = Instance.new("Frame")
108local NewGuiPart107 = Instance.new("TextLabel")
109local NewGuiPart108 = Instance.new("TextLabel")
110local NewGuiPart109 = Instance.new("TextLabel")
111local NewGuiPart110 = Instance.new("ImageLabel")
112local NewGuiPart111 = Instance.new("Frame")
113local NewGuiPart112 = Instance.new("Frame")
114local NewGuiPart113 = Instance.new("TextLabel")
115local NewGuiPart114 = Instance.new("Frame")
116local NewGuiPart115 = Instance.new("Frame")
117local NewGuiPart116 = Instance.new("TextLabel")
118local NewGuiPart117 = Instance.new("TextLabel")
119local NewGuiPart118 = Instance.new("TextButton")
120local NewGuiPart119 = Instance.new("TextLabel")
121local NewGuiPart120 = Instance.new("TextLabel")
122local NewGuiPart121 = Instance.new("Frame")
123local NewGuiPart122 = Instance.new("TextLabel")
124local NewGuiPart123 = Instance.new("TextLabel")
125local NewGuiPart124 = Instance.new("TextButton")
126local NewGuiPart125 = Instance.new("TextLabel")
127local NewGuiPart126 = Instance.new("TextLabel")
128local NewGuiPart127 = Instance.new("Frame")
129local NewGuiPart128 = Instance.new("TextLabel")
130local NewGuiPart129 = Instance.new("TextLabel")
131local NewGuiPart130 = Instance.new("TextButton")
132local NewGuiPart131 = Instance.new("TextLabel")
133local NewGuiPart132 = Instance.new("TextLabel")
134local NewGuiPart133 = Instance.new("Frame")
135local NewGuiPart134 = Instance.new("TextLabel")
136local NewGuiPart135 = Instance.new("TextLabel")
137local NewGuiPart136 = Instance.new("TextButton")
138local NewGuiPart137 = Instance.new("TextLabel")
139local NewGuiPart138 = Instance.new("TextLabel")
140local NewGuiPart139 = Instance.new("TextLabel")
141local NewGuiPart140 = Instance.new("Frame")
142local NewGuiPart141 = Instance.new("Frame")
143local NewGuiPart142 = Instance.new("TextLabel")
144local NewGuiPart143 = Instance.new("TextButton")
145local NewGuiPart144 = Instance.new("TextBox")
146local NewGuiPart145 = Instance.new("Frame")
147local NewGuiPart146 = Instance.new("TextButton")
148local NewGuiPart147 = Instance.new("TextLabel")
149local NewGuiPart148 = Instance.new("TextLabel")
150local NewGuiPart149 = Instance.new("Frame")
151local NewGuiPart150 = Instance.new("Frame")
152local NewGuiPart151 = Instance.new("TextLabel")
153local NewGuiPart152 = Instance.new("TextLabel")
154local NewGuiPart153 = Instance.new("BindableFunction")
155local NewGuiPart154 = Instance.new("BindableFunction")
156local NewGuiPart155 = Instance.new("BindableFunction")
157local NewGuiPart156 = Instance.new("BindableFunction")
158local NewGuiPart157 = Instance.new("BindableEvent")
159local NewGuiPart158 = Instance.new("BindableFunction")
160local NewGuiPart159 = Instance.new("BindableFunction")
161local NewGuiPart160 = Instance.new("BindableEvent")
162local NewGuiPart161 = Instance.new("BindableFunction")
163local NewGuiPart162 = Instance.new("BindableFunction")
164local NewGuiPart163 = Instance.new("BindableEvent")
165-- Properties
166
167NewGuiPart1.Name = "Dex"
168
169NewGuiPart2.Name = "PropertiesFrame"
170NewGuiPart2.Parent = NewGuiPart1
171NewGuiPart2.Active = true
172NewGuiPart2.BackgroundColor3 = Color3.new(1, 1, 1)
173NewGuiPart2.BackgroundTransparency = 0.10000000149012
174NewGuiPart2.BorderColor3 = Color3.new(0.74902, 0.74902, 0.74902)
175NewGuiPart2.Position = UDim2.new(1, 0, 0.5, 36)
176NewGuiPart2.Size = UDim2.new(0, 300, 0.5, -36)
177
178NewGuiPart158.Name = "GetApi"
179NewGuiPart158.Parent = NewGuiPart2
180NewGuiPart158.Archivable = true
181
182NewGuiPart159.Name = "GetAwaiting"
183NewGuiPart159.Parent = NewGuiPart2
184NewGuiPart159.Archivable = true
185
186NewGuiPart160.Name = "SetAwaiting"
187NewGuiPart160.Parent = NewGuiPart2
188NewGuiPart160.Archivable = true
189
190NewGuiPart3.Name = "Header"
191NewGuiPart3.Parent = NewGuiPart2
192NewGuiPart3.BackgroundColor3 = Color3.new(0.913726, 0.913726, 0.913726)
193NewGuiPart3.BorderColor3 = Color3.new(0.584314, 0.584314, 0.584314)
194NewGuiPart3.Position = UDim2.new(0, 0, 0, -36)
195NewGuiPart3.Size = UDim2.new(1, 0, 0, 35)
196
197NewGuiPart4.Parent = NewGuiPart3
198NewGuiPart4.BackgroundTransparency = 1
199NewGuiPart4.Position = UDim2.new(0, 4, 0, 0)
200NewGuiPart4.Size = UDim2.new(1, -4, 0.5, 0)
201NewGuiPart4.Font = Enum.Font.SourceSans
202NewGuiPart4.FontSize = Enum.FontSize.Size14
203NewGuiPart4.Text = "Properties"
204NewGuiPart4.TextColor3 = Color3.new(0, 0, 0)
205NewGuiPart4.TextXAlignment = Enum.TextXAlignment.Left
206
207NewGuiPart5.Parent = NewGuiPart3
208NewGuiPart5.BackgroundTransparency = 0.80000001192093
209NewGuiPart5.Position = UDim2.new(0, 4, 0.5, 0)
210NewGuiPart5.Size = UDim2.new(1, -8, 0.5, -3)
211NewGuiPart5.Font = Enum.Font.SourceSans
212NewGuiPart5.FontSize = Enum.FontSize.Size14
213NewGuiPart5.Text = "Search Properties"
214--NewGuiPart5.TextColor3 = Color3.new(0, 0, 0)
215NewGuiPart5.TextXAlignment = Enum.TextXAlignment.Left
216
217NewGuiPart6.Name = "ExplorerPanel"
218NewGuiPart6.Parent = NewGuiPart1
219NewGuiPart6.BackgroundColor3 = Color3.new(1, 1, 1)
220NewGuiPart6.BackgroundTransparency = 0.10000000149012
221NewGuiPart6.BorderColor3 = Color3.new(0.74902, 0.74902, 0.74902)
222NewGuiPart6.Position = UDim2.new(1, 0, 0, 0)
223NewGuiPart6.Size = UDim2.new(0, 300, 0.5, 0)
224
225NewGuiPart153.Name = "GetOption"
226NewGuiPart153.Parent = NewGuiPart6
227NewGuiPart153.Archivable = true
228
229NewGuiPart154.Name = "GetSelection"
230NewGuiPart154.Parent = NewGuiPart6
231NewGuiPart154.Archivable = true
232
233NewGuiPart155.Name = "SetOption"
234NewGuiPart155.Parent = NewGuiPart6
235NewGuiPart155.Archivable = true
236
237NewGuiPart156.Name = "SetSelection"
238NewGuiPart156.Parent = NewGuiPart6
239NewGuiPart156.Archivable = true
240
241NewGuiPart157.Name = "SelectionChanged"
242NewGuiPart157.Parent = NewGuiPart6
243NewGuiPart157.Archivable = true
244
245NewGuiPart7.Name = "SideMenu"
246NewGuiPart7.Parent = NewGuiPart1
247NewGuiPart7.BackgroundColor3 = Color3.new(0.913726, 0.913726, 0.913726)
248NewGuiPart7.BackgroundTransparency = 1
249NewGuiPart7.BorderColor3 = Color3.new(0.584314, 0.584314, 0.584314)
250NewGuiPart7.BorderSizePixel = 0
251NewGuiPart7.Position = UDim2.new(1, -330, 0, 0)
252NewGuiPart7.Size = UDim2.new(0, 30, 0, 180)
253NewGuiPart7.Visible = false
254NewGuiPart7.ZIndex = 2
255
256NewGuiPart8.Name = "Toggle"
257NewGuiPart8.Parent = NewGuiPart7
258NewGuiPart8.Active = false
259NewGuiPart8.BackgroundColor3 = Color3.new(0.913726, 0.913726, 0.913726)
260NewGuiPart8.BorderSizePixel = 0
261NewGuiPart8.Position = UDim2.new(0, 0, 0, 60)
262NewGuiPart8.Size = UDim2.new(0, 30, 0, 30)
263NewGuiPart8.AutoButtonColor = false
264NewGuiPart8.Font = Enum.Font.SourceSans
265NewGuiPart8.FontSize = Enum.FontSize.Size24
266NewGuiPart8.Text = ">"
267NewGuiPart8.TextTransparency = 1
268NewGuiPart8.TextWrapped = true
269
270NewGuiPart9.Name = "Title"
271NewGuiPart9.Parent = NewGuiPart7
272NewGuiPart9.BackgroundColor3 = Color3.new(1, 1, 1)
273NewGuiPart9.BackgroundTransparency = 1
274NewGuiPart9.Size = UDim2.new(0, 30, 0, 20)
275NewGuiPart9.ZIndex = 2
276NewGuiPart9.Font = Enum.Font.SourceSansBold
277NewGuiPart9.FontSize = Enum.FontSize.Size14
278NewGuiPart9.Text = "DEX"
279NewGuiPart9.TextWrapped = true
280
281NewGuiPart10.Name = "Version"
282NewGuiPart10.Parent = NewGuiPart7
283NewGuiPart10.BackgroundColor3 = Color3.new(1, 1, 1)
284NewGuiPart10.BackgroundTransparency = 1
285NewGuiPart10.Position = UDim2.new(0, 0, 0, 15)
286NewGuiPart10.Size = UDim2.new(0, 30, 0, 20)
287NewGuiPart10.ZIndex = 2
288NewGuiPart10.Font = Enum.Font.SourceSansBold
289NewGuiPart10.FontSize = Enum.FontSize.Size12
290NewGuiPart10.Text = "V2.0.0"
291NewGuiPart10.TextWrapped = true
292
293NewGuiPart11.Name = "Slant"
294NewGuiPart11.Parent = NewGuiPart7
295NewGuiPart11.BackgroundColor3 = Color3.new(1, 1, 1)
296NewGuiPart11.BackgroundTransparency = 1
297NewGuiPart11.Position = UDim2.new(0, 0, 0, 90)
298NewGuiPart11.Rotation = 180
299NewGuiPart11.Size = UDim2.new(0, 30, 0, 30)
300NewGuiPart11.Image = "rbxassetid://474172996"
301NewGuiPart11.ImageColor3 = Color3.new(0.913726, 0.913726, 0.913726)
302
303NewGuiPart12.Name = "Main"
304NewGuiPart12.Parent = NewGuiPart7
305NewGuiPart12.BackgroundColor3 = Color3.new(0.913726, 0.913726, 0.913726)
306NewGuiPart12.BorderSizePixel = 0
307NewGuiPart12.Size = UDim2.new(0, 30, 0, 30)
308
309NewGuiPart13.Name = "SlideOut"
310NewGuiPart13.Parent = NewGuiPart7
311NewGuiPart13.BackgroundColor3 = Color3.new(0.862745, 0.862745, 0.862745)
312NewGuiPart13.BackgroundTransparency = 1
313NewGuiPart13.BorderSizePixel = 0
314NewGuiPart13.ClipsDescendants = true
315NewGuiPart13.Position = UDim2.new(0, 0, 0, 30)
316NewGuiPart13.Size = UDim2.new(0, 30, 0, 150)
317
318NewGuiPart14.Name = "SlideFrame"
319NewGuiPart14.Parent = NewGuiPart13
320NewGuiPart14.BackgroundColor3 = Color3.new(0.862745, 0.862745, 0.862745)
321NewGuiPart14.BorderSizePixel = 0
322NewGuiPart14.Position = UDim2.new(0, 0, 0, -150)
323NewGuiPart14.Size = UDim2.new(0, 30, 0, 150)
324
325NewGuiPart15.Name = "Explorer"
326NewGuiPart15.Parent = NewGuiPart14
327NewGuiPart15.BackgroundColor3 = Color3.new(1, 1, 1)
328NewGuiPart15.BackgroundTransparency = 1
329NewGuiPart15.BorderSizePixel = 0
330NewGuiPart15.Position = UDim2.new(0, 0, 0, 120)
331NewGuiPart15.Size = UDim2.new(0, 30, 0, 30)
332NewGuiPart15.ZIndex = 2
333NewGuiPart15.AutoButtonColor = false
334NewGuiPart15.Font = Enum.Font.SourceSans
335NewGuiPart15.FontSize = Enum.FontSize.Size24
336NewGuiPart15.Text = ""
337
338NewGuiPart16.Name = "Icon"
339NewGuiPart16.Parent = NewGuiPart15
340NewGuiPart16.BackgroundColor3 = Color3.new(1, 1, 1)
341NewGuiPart16.BackgroundTransparency = 1
342NewGuiPart16.Position = UDim2.new(0, 5, 0, 5)
343NewGuiPart16.Size = UDim2.new(0, 20, 0, 20)
344NewGuiPart16.ZIndex = 2
345NewGuiPart16.Image = "rbxassetid://472635937"
346NewGuiPart16.ImageColor3 = Color3.new(0.27451, 0.27451, 0.27451)
347
348NewGuiPart17.Name = "SaveMap"
349NewGuiPart17.Parent = NewGuiPart14
350NewGuiPart17.BackgroundColor3 = Color3.new(1, 1, 1)
351NewGuiPart17.BackgroundTransparency = 1
352NewGuiPart17.BorderSizePixel = 0
353NewGuiPart17.Position = UDim2.new(0, 0, 0, 90)
354NewGuiPart17.Size = UDim2.new(0, 30, 0, 30)
355NewGuiPart17.ZIndex = 2
356NewGuiPart17.AutoButtonColor = false
357NewGuiPart17.Font = Enum.Font.SourceSans
358NewGuiPart17.FontSize = Enum.FontSize.Size24
359NewGuiPart17.Text = ""
360
361NewGuiPart18.Name = "Icon"
362NewGuiPart18.Parent = NewGuiPart17
363NewGuiPart18.BackgroundColor3 = Color3.new(1, 1, 1)
364NewGuiPart18.BackgroundTransparency = 1
365NewGuiPart18.Position = UDim2.new(0, 5, 0, 5)
366NewGuiPart18.Size = UDim2.new(0, 20, 0, 20)
367NewGuiPart18.ZIndex = 2
368NewGuiPart18.Image = "rbxassetid://472636337"
369NewGuiPart18.ImageColor3 = Color3.new(0.27451, 0.27451, 0.27451)
370
371NewGuiPart19.Name = "Settings"
372NewGuiPart19.Parent = NewGuiPart14
373NewGuiPart19.BackgroundColor3 = Color3.new(1, 1, 1)
374NewGuiPart19.BackgroundTransparency = 1
375NewGuiPart19.BorderSizePixel = 0
376NewGuiPart19.Position = UDim2.new(0, 0, 0, 30)
377NewGuiPart19.Size = UDim2.new(0, 30, 0, 30)
378NewGuiPart19.ZIndex = 2
379NewGuiPart19.AutoButtonColor = false
380NewGuiPart19.Font = Enum.Font.SourceSans
381NewGuiPart19.FontSize = Enum.FontSize.Size24
382NewGuiPart19.Text = ""
383
384NewGuiPart20.Name = "Icon"
385NewGuiPart20.Parent = NewGuiPart19
386NewGuiPart20.BackgroundColor3 = Color3.new(1, 1, 1)
387NewGuiPart20.BackgroundTransparency = 1
388NewGuiPart20.Position = UDim2.new(0, 5, 0, 5)
389NewGuiPart20.Size = UDim2.new(0, 20, 0, 20)
390NewGuiPart20.ZIndex = 2
391NewGuiPart20.Image = "rbxassetid://472635774"
392NewGuiPart20.ImageColor3 = Color3.new(0.27451, 0.27451, 0.27451)
393
394NewGuiPart21.Name = "Remotes"
395NewGuiPart21.Parent = NewGuiPart14
396NewGuiPart21.BackgroundColor3 = Color3.new(1, 1, 1)
397NewGuiPart21.BackgroundTransparency = 1
398NewGuiPart21.BorderSizePixel = 0
399NewGuiPart21.Position = UDim2.new(0, 0, 0, 60)
400NewGuiPart21.Size = UDim2.new(0, 30, 0, 30)
401NewGuiPart21.ZIndex = 2
402NewGuiPart21.AutoButtonColor = false
403NewGuiPart21.Font = Enum.Font.SourceSans
404NewGuiPart21.FontSize = Enum.FontSize.Size24
405NewGuiPart21.Text = ""
406
407NewGuiPart22.Name = "Icon"
408NewGuiPart22.Parent = NewGuiPart21
409NewGuiPart22.BackgroundColor3 = Color3.new(1, 1, 1)
410NewGuiPart22.BackgroundTransparency = 1
411NewGuiPart22.Position = UDim2.new(0, 5, 0, 5)
412NewGuiPart22.Size = UDim2.new(0, 20, 0, 20)
413NewGuiPart22.ZIndex = 2
414NewGuiPart22.Image = "rbxassetid://472636187"
415NewGuiPart22.ImageColor3 = Color3.new(0.27451, 0.27451, 0.27451)
416
417NewGuiPart23.Name = "About"
418NewGuiPart23.Parent = NewGuiPart14
419NewGuiPart23.BackgroundColor3 = Color3.new(1, 1, 1)
420NewGuiPart23.BackgroundTransparency = 1
421NewGuiPart23.BorderSizePixel = 0
422NewGuiPart23.Size = UDim2.new(0, 30, 0, 30)
423NewGuiPart23.ZIndex = 2
424NewGuiPart23.AutoButtonColor = false
425NewGuiPart23.Font = Enum.Font.SourceSans
426NewGuiPart23.FontSize = Enum.FontSize.Size24
427NewGuiPart23.Text = ""
428
429NewGuiPart24.Name = "Icon"
430NewGuiPart24.Parent = NewGuiPart23
431NewGuiPart24.BackgroundColor3 = Color3.new(1, 1, 1)
432NewGuiPart24.BackgroundTransparency = 1
433NewGuiPart24.Position = UDim2.new(0, 5, 0, 5)
434NewGuiPart24.Size = UDim2.new(0, 20, 0, 20)
435NewGuiPart24.ZIndex = 2
436NewGuiPart24.Image = "rbxassetid://476354004"
437NewGuiPart24.ImageColor3 = Color3.new(0.27451, 0.27451, 0.27451)
438
439NewGuiPart25.Name = "OpenScriptEditor"
440NewGuiPart25.Parent = NewGuiPart7
441NewGuiPart25.Active = false
442NewGuiPart25.BackgroundColor3 = Color3.new(0.913726, 0.913726, 0.913726)
443NewGuiPart25.BorderSizePixel = 0
444NewGuiPart25.Position = UDim2.new(0, 0, 0, 30)
445NewGuiPart25.Size = UDim2.new(0, 30, 0, 30)
446NewGuiPart25.ZIndex = 2
447NewGuiPart25.AutoButtonColor = false
448NewGuiPart25.Font = Enum.Font.SourceSans
449NewGuiPart25.FontSize = Enum.FontSize.Size24
450NewGuiPart25.Text = ""
451
452NewGuiPart26.Name = "Icon"
453NewGuiPart26.Parent = NewGuiPart25
454NewGuiPart26.BackgroundColor3 = Color3.new(1, 1, 1)
455NewGuiPart26.BackgroundTransparency = 1
456NewGuiPart26.Position = UDim2.new(0, 5, 0, 5)
457NewGuiPart26.Size = UDim2.new(0, 20, 0, 20)
458NewGuiPart26.ZIndex = 2
459NewGuiPart26.Image = "rbxassetid://475456048"
460NewGuiPart26.ImageColor3 = Color3.new(0.105882, 0.164706, 0.207843)
461NewGuiPart26.ImageTransparency = 1
462
463NewGuiPart27.Name = "Toggle"
464NewGuiPart27.Parent = NewGuiPart1
465NewGuiPart27.BackgroundColor3 = Color3.new(0.913726, 0.913726, 0.913726)
466NewGuiPart27.BorderColor3 = Color3.new(0.584314, 0.584314, 0.584314)
467NewGuiPart27.Position = UDim2.new(1, 0, 0, 0)
468NewGuiPart27.Size = UDim2.new(0, 30, 0, 30)
469NewGuiPart27.Font = Enum.Font.SourceSans
470NewGuiPart27.FontSize = Enum.FontSize.Size24
471NewGuiPart27.Text = "<"
472
473NewGuiPart28.Name = "SettingsPanel"
474NewGuiPart28.Parent = NewGuiPart1
475NewGuiPart28.BackgroundColor3 = Color3.new(1, 1, 1)
476NewGuiPart28.BackgroundTransparency = 0.10000000149012
477NewGuiPart28.BorderColor3 = Color3.new(0.74902, 0.74902, 0.74902)
478NewGuiPart28.Position = UDim2.new(1, 0, 0, 0)
479NewGuiPart28.Size = UDim2.new(0, 300, 1, 0)
480
481NewGuiPart162.Name = "GetSetting"
482NewGuiPart162.Parent = NewGuiPart28
483NewGuiPart162.Archivable = true
484
485NewGuiPart29.Name = "Header"
486NewGuiPart29.Parent = NewGuiPart28
487NewGuiPart29.BackgroundColor3 = Color3.new(0.913726, 0.913726, 0.913726)
488NewGuiPart29.BorderColor3 = Color3.new(0.584314, 0.584314, 0.584314)
489NewGuiPart29.Size = UDim2.new(1, 0, 0, 17)
490
491NewGuiPart30.Parent = NewGuiPart29
492NewGuiPart30.BackgroundTransparency = 1
493NewGuiPart30.Position = UDim2.new(0, 4, 0, 0)
494NewGuiPart30.Size = UDim2.new(1, -4, 1, 0)
495NewGuiPart30.Font = Enum.Font.SourceSans
496NewGuiPart30.FontSize = Enum.FontSize.Size14
497NewGuiPart30.Text = "Settings"
498NewGuiPart30.TextColor3 = Color3.new(0, 0, 0)
499NewGuiPart30.TextXAlignment = Enum.TextXAlignment.Left
500
501NewGuiPart31.Name = "SettingTemplate"
502NewGuiPart31.Parent = NewGuiPart28
503NewGuiPart31.BackgroundColor3 = Color3.new(1, 1, 1)
504NewGuiPart31.BackgroundTransparency = 1
505NewGuiPart31.Position = UDim2.new(0, 0, 0, 18)
506NewGuiPart31.Size = UDim2.new(1, 0, 0, 60)
507NewGuiPart31.Visible = false
508
509NewGuiPart32.Name = "SName"
510NewGuiPart32.Parent = NewGuiPart31
511NewGuiPart32.BackgroundColor3 = Color3.new(1, 1, 1)
512NewGuiPart32.BackgroundTransparency = 1
513NewGuiPart32.Position = UDim2.new(0, 10, 0, 0)
514NewGuiPart32.Size = UDim2.new(1, -20, 0, 30)
515NewGuiPart32.Font = Enum.Font.SourceSans
516NewGuiPart32.FontSize = Enum.FontSize.Size18
517NewGuiPart32.Text = "SettingName"
518NewGuiPart32.TextXAlignment = Enum.TextXAlignment.Left
519
520NewGuiPart33.Name = "Status"
521NewGuiPart33.Parent = NewGuiPart31
522NewGuiPart33.BackgroundColor3 = Color3.new(1, 1, 1)
523NewGuiPart33.BackgroundTransparency = 1
524NewGuiPart33.Position = UDim2.new(0, 60, 0, 30)
525NewGuiPart33.Size = UDim2.new(0, 50, 0, 15)
526NewGuiPart33.Font = Enum.Font.SourceSans
527NewGuiPart33.FontSize = Enum.FontSize.Size18
528NewGuiPart33.Text = "Off"
529NewGuiPart33.TextXAlignment = Enum.TextXAlignment.Left
530
531NewGuiPart34.Name = "Change"
532NewGuiPart34.Parent = NewGuiPart31
533NewGuiPart34.BackgroundColor3 = Color3.new(0.862745, 0.862745, 0.862745)
534NewGuiPart34.BorderSizePixel = 0
535NewGuiPart34.Position = UDim2.new(0, 10, 0, 30)
536NewGuiPart34.Size = UDim2.new(0, 40, 0, 15)
537NewGuiPart34.Font = Enum.Font.SourceSans
538NewGuiPart34.FontSize = Enum.FontSize.Size14
539NewGuiPart34.Text = ""
540
541NewGuiPart35.Name = "OnBar"
542NewGuiPart35.Parent = NewGuiPart34
543NewGuiPart35.BackgroundColor3 = Color3.new(0, 0.576471, 0.862745)
544NewGuiPart35.BorderSizePixel = 0
545NewGuiPart35.Size = UDim2.new(0, 0, 0, 15)
546NewGuiPart35.Font = Enum.Font.SourceSans
547NewGuiPart35.FontSize = Enum.FontSize.Size14
548NewGuiPart35.Text = ""
549
550NewGuiPart36.Name = "Bar"
551NewGuiPart36.Parent = NewGuiPart34
552NewGuiPart36.BackgroundColor3 = Color3.new(0, 0, 0)
553NewGuiPart36.BorderSizePixel = 0
554NewGuiPart36.ClipsDescendants = true
555NewGuiPart36.Position = UDim2.new(0, -2, 0, -2)
556NewGuiPart36.Size = UDim2.new(0, 10, 0, 19)
557NewGuiPart36.Font = Enum.Font.SourceSans
558NewGuiPart36.FontSize = Enum.FontSize.Size14
559NewGuiPart36.Text = ""
560
561NewGuiPart37.Name = "SettingList"
562NewGuiPart37.Parent = NewGuiPart28
563NewGuiPart37.BackgroundColor3 = Color3.new(1, 1, 1)
564NewGuiPart37.BackgroundTransparency = 1
565NewGuiPart37.Position = UDim2.new(0, 0, 0, 17)
566NewGuiPart37.Size = UDim2.new(1, 0, 1, -17)
567
568NewGuiPart38.Name = "SaveInstance"
569NewGuiPart38.Parent = NewGuiPart1
570NewGuiPart38.Active = true
571NewGuiPart38.BackgroundColor3 = Color3.new(0.913726, 0.913726, 0.913726)
572NewGuiPart38.BorderColor3 = Color3.new(0.584314, 0.584314, 0.584314)
573NewGuiPart38.Draggable = true
574NewGuiPart38.Position = UDim2.new(0.300000012, 0, 0.300000012, 0)
575NewGuiPart38.Size = UDim2.new(0, 350, 0, 20)
576NewGuiPart38.Visible = false
577NewGuiPart38.ZIndex = 2
578
579NewGuiPart39.Name = "Title"
580NewGuiPart39.Parent = NewGuiPart38
581NewGuiPart39.BackgroundTransparency = 1
582NewGuiPart39.Size = UDim2.new(1, 0, 1, 0)
583NewGuiPart39.ZIndex = 2
584NewGuiPart39.Font = Enum.Font.SourceSans
585NewGuiPart39.FontSize = Enum.FontSize.Size14
586NewGuiPart39.Text = "Save Instance"
587NewGuiPart39.TextColor3 = Color3.new(0, 0, 0)
588NewGuiPart39.TextXAlignment = Enum.TextXAlignment.Left
589
590NewGuiPart40.Name = "MainWindow"
591NewGuiPart40.Parent = NewGuiPart38
592NewGuiPart40.BackgroundColor3 = Color3.new(1, 1, 1)
593NewGuiPart40.BackgroundTransparency = 0.10000000149012
594NewGuiPart40.BorderColor3 = Color3.new(0.74902, 0.74902, 0.74902)
595NewGuiPart40.Size = UDim2.new(1, 0, 0, 200)
596
597NewGuiPart41.Name = "Save"
598NewGuiPart41.Parent = NewGuiPart40
599NewGuiPart41.BackgroundColor3 = Color3.new(1, 1, 1)
600NewGuiPart41.BackgroundTransparency = 0.5
601NewGuiPart41.BorderColor3 = Color3.new(0, 0, 0)
602NewGuiPart41.Position = UDim2.new(0.075000003, 0, 1, -40)
603NewGuiPart41.Size = UDim2.new(0.400000006, 0, 0, 30)
604NewGuiPart41.Font = Enum.Font.SourceSans
605NewGuiPart41.FontSize = Enum.FontSize.Size18
606NewGuiPart41.Text = "Save"
607
608NewGuiPart42.Name = "Desc"
609NewGuiPart42.Parent = NewGuiPart40
610NewGuiPart42.BackgroundColor3 = Color3.new(1, 1, 1)
611NewGuiPart42.BackgroundTransparency = 1
612NewGuiPart42.Position = UDim2.new(0, 0, 0, 20)
613NewGuiPart42.Size = UDim2.new(1, 0, 0, 40)
614NewGuiPart42.Font = Enum.Font.SourceSans
615NewGuiPart42.FontSize = Enum.FontSize.Size14
616NewGuiPart42.Text = "This will save an instance to your PC. Type in the name for your instance. (.rbxmx will be added automatically.)"
617NewGuiPart42.TextWrapped = true
618
619NewGuiPart43.Name = "Cancel"
620NewGuiPart43.Parent = NewGuiPart40
621NewGuiPart43.BackgroundColor3 = Color3.new(1, 1, 1)
622NewGuiPart43.BackgroundTransparency = 0.5
623NewGuiPart43.BorderColor3 = Color3.new(0, 0, 0)
624NewGuiPart43.Position = UDim2.new(0.524999976, 0, 1, -40)
625NewGuiPart43.Size = UDim2.new(0.400000006, 0, 0, 30)
626NewGuiPart43.Font = Enum.Font.SourceSans
627NewGuiPart43.FontSize = Enum.FontSize.Size18
628NewGuiPart43.Text = "Cancel"
629
630NewGuiPart44.Name = "FileName"
631NewGuiPart44.Parent = NewGuiPart40
632NewGuiPart44.BackgroundColor3 = Color3.new(1, 1, 1)
633NewGuiPart44.BackgroundTransparency = 0.20000000298023
634NewGuiPart44.Position = UDim2.new(0.075000003, 0, 0.400000006, 0)
635NewGuiPart44.Size = UDim2.new(0.850000024, 0, 0, 30)
636NewGuiPart44.Font = Enum.Font.SourceSans
637NewGuiPart44.FontSize = Enum.FontSize.Size18
638NewGuiPart44.Text = ""
639NewGuiPart44.TextXAlignment = Enum.TextXAlignment.Left
640
641NewGuiPart45.Name = "SaveObjects"
642NewGuiPart45.Parent = NewGuiPart40
643NewGuiPart45.BackgroundColor3 = Color3.new(1, 1, 1)
644NewGuiPart45.BackgroundTransparency = 0.60000002384186
645NewGuiPart45.Position = UDim2.new(0.075000003, 0, 0.625, 0)
646NewGuiPart45.Size = UDim2.new(0, 20, 0, 20)
647NewGuiPart45.ZIndex = 2
648NewGuiPart45.Font = Enum.Font.SourceSans
649NewGuiPart45.FontSize = Enum.FontSize.Size18
650NewGuiPart45.Text = ""
651NewGuiPart45.TextColor3 = Color3.new(1, 1, 1)
652
653NewGuiPart46.Name = "enabled"
654NewGuiPart46.Parent = NewGuiPart45
655NewGuiPart46.BackgroundColor3 = Color3.new(0.380392, 0.380392, 0.380392)
656NewGuiPart46.BackgroundTransparency = 0.40000000596046
657NewGuiPart46.BorderSizePixel = 0
658NewGuiPart46.Position = UDim2.new(0, 3, 0, 3)
659NewGuiPart46.Size = UDim2.new(0, 14, 0, 14)
660NewGuiPart46.Font = Enum.Font.SourceSans
661NewGuiPart46.FontSize = Enum.FontSize.Size14
662NewGuiPart46.Text = ""
663
664NewGuiPart47.Name = "Desc2"
665NewGuiPart47.Parent = NewGuiPart40
666NewGuiPart47.BackgroundColor3 = Color3.new(1, 1, 1)
667NewGuiPart47.BackgroundTransparency = 1
668NewGuiPart47.Position = UDim2.new(0.075000003, 30, 0.625, 0)
669NewGuiPart47.Size = UDim2.new(0.925000012, -30, 0, 20)
670NewGuiPart47.Font = Enum.Font.SourceSans
671NewGuiPart47.FontSize = Enum.FontSize.Size14
672NewGuiPart47.Text = "Save \"Object\" type values"
673NewGuiPart47.TextXAlignment = Enum.TextXAlignment.Left
674
675NewGuiPart48.Name = "Confirmation"
676NewGuiPart48.Parent = NewGuiPart1
677NewGuiPart48.Active = true
678NewGuiPart48.BackgroundColor3 = Color3.new(0.913726, 0.913726, 0.913726)
679NewGuiPart48.BorderColor3 = Color3.new(0.584314, 0.584314, 0.584314)
680NewGuiPart48.Draggable = true
681NewGuiPart48.Position = UDim2.new(0.300000012, 0, 0.349999994, 0)
682NewGuiPart48.Size = UDim2.new(0, 350, 0, 20)
683NewGuiPart48.Visible = false
684NewGuiPart48.ZIndex = 3
685
686NewGuiPart49.Name = "Title"
687NewGuiPart49.Parent = NewGuiPart48
688NewGuiPart49.BackgroundTransparency = 1
689NewGuiPart49.Size = UDim2.new(1, 0, 1, 0)
690NewGuiPart49.ZIndex = 3
691NewGuiPart49.Font = Enum.Font.SourceSans
692NewGuiPart49.FontSize = Enum.FontSize.Size14
693NewGuiPart49.Text = "Confirm"
694NewGuiPart49.TextColor3 = Color3.new(0, 0, 0)
695NewGuiPart49.TextXAlignment = Enum.TextXAlignment.Left
696
697NewGuiPart50.Name = "MainWindow"
698NewGuiPart50.Parent = NewGuiPart48
699NewGuiPart50.BackgroundColor3 = Color3.new(1, 1, 1)
700NewGuiPart50.BackgroundTransparency = 0.10000000149012
701NewGuiPart50.BorderColor3 = Color3.new(0.74902, 0.74902, 0.74902)
702NewGuiPart50.Size = UDim2.new(1, 0, 0, 150)
703NewGuiPart50.ZIndex = 2
704
705NewGuiPart51.Name = "Yes"
706NewGuiPart51.Parent = NewGuiPart50
707NewGuiPart51.BackgroundColor3 = Color3.new(1, 1, 1)
708NewGuiPart51.BackgroundTransparency = 0.5
709NewGuiPart51.BorderColor3 = Color3.new(0, 0, 0)
710NewGuiPart51.Position = UDim2.new(0.075000003, 0, 1, -40)
711NewGuiPart51.Size = UDim2.new(0.400000006, 0, 0, 30)
712NewGuiPart51.ZIndex = 2
713NewGuiPart51.Font = Enum.Font.SourceSans
714NewGuiPart51.FontSize = Enum.FontSize.Size18
715NewGuiPart51.Text = "Yes"
716
717NewGuiPart52.Name = "Desc"
718NewGuiPart52.Parent = NewGuiPart50
719NewGuiPart52.BackgroundColor3 = Color3.new(1, 1, 1)
720NewGuiPart52.BackgroundTransparency = 1
721NewGuiPart52.Position = UDim2.new(0, 0, 0, 20)
722NewGuiPart52.Size = UDim2.new(1, 0, 0, 40)
723NewGuiPart52.ZIndex = 2
724NewGuiPart52.Font = Enum.Font.SourceSans
725NewGuiPart52.FontSize = Enum.FontSize.Size14
726NewGuiPart52.Text = "The file, FILENAME, already exists. Overwrite?"
727NewGuiPart52.TextWrapped = true
728
729NewGuiPart53.Name = "No"
730NewGuiPart53.Parent = NewGuiPart50
731NewGuiPart53.BackgroundColor3 = Color3.new(1, 1, 1)
732NewGuiPart53.BackgroundTransparency = 0.5
733NewGuiPart53.BorderColor3 = Color3.new(0, 0, 0)
734NewGuiPart53.Position = UDim2.new(0.524999976, 0, 1, -40)
735NewGuiPart53.Size = UDim2.new(0.400000006, 0, 0, 30)
736NewGuiPart53.ZIndex = 2
737NewGuiPart53.Font = Enum.Font.SourceSans
738NewGuiPart53.FontSize = Enum.FontSize.Size18
739NewGuiPart53.Text = "No"
740
741NewGuiPart54.Name = "Caution"
742NewGuiPart54.Parent = NewGuiPart1
743NewGuiPart54.Active = true
744NewGuiPart54.BackgroundColor3 = Color3.new(0.913726, 0.913726, 0.913726)
745NewGuiPart54.BorderColor3 = Color3.new(0.584314, 0.584314, 0.584314)
746NewGuiPart54.Draggable = true
747NewGuiPart54.Position = UDim2.new(0.300000012, 0, 0.300000012, 0)
748NewGuiPart54.Size = UDim2.new(0, 350, 0, 20)
749NewGuiPart54.Visible = false
750NewGuiPart54.ZIndex = 5
751
752NewGuiPart55.Name = "Title"
753NewGuiPart55.Parent = NewGuiPart54
754NewGuiPart55.BackgroundTransparency = 1
755NewGuiPart55.Size = UDim2.new(1, 0, 1, 0)
756NewGuiPart55.ZIndex = 5
757NewGuiPart55.Font = Enum.Font.SourceSans
758NewGuiPart55.FontSize = Enum.FontSize.Size14
759NewGuiPart55.Text = "Caution"
760NewGuiPart55.TextColor3 = Color3.new(0, 0, 0)
761NewGuiPart55.TextXAlignment = Enum.TextXAlignment.Left
762
763NewGuiPart56.Name = "MainWindow"
764NewGuiPart56.Parent = NewGuiPart54
765NewGuiPart56.BackgroundColor3 = Color3.new(1, 1, 1)
766NewGuiPart56.BackgroundTransparency = 0.10000000149012
767NewGuiPart56.BorderColor3 = Color3.new(0.74902, 0.74902, 0.74902)
768NewGuiPart56.Size = UDim2.new(1, 0, 0, 150)
769NewGuiPart56.ZIndex = 4
770
771NewGuiPart57.Name = "Desc"
772NewGuiPart57.Parent = NewGuiPart56
773NewGuiPart57.BackgroundColor3 = Color3.new(1, 1, 1)
774NewGuiPart57.BackgroundTransparency = 1
775NewGuiPart57.Position = UDim2.new(0, 0, 0, 20)
776NewGuiPart57.Size = UDim2.new(1, 0, 0, 42)
777NewGuiPart57.ZIndex = 4
778NewGuiPart57.Font = Enum.Font.SourceSans
779NewGuiPart57.FontSize = Enum.FontSize.Size14
780NewGuiPart57.Text = "The file, FILENAME, already exists. Overwrite?"
781NewGuiPart57.TextWrapped = true
782
783NewGuiPart58.Name = "Ok"
784NewGuiPart58.Parent = NewGuiPart56
785NewGuiPart58.BackgroundColor3 = Color3.new(1, 1, 1)
786NewGuiPart58.BackgroundTransparency = 0.5
787NewGuiPart58.BorderColor3 = Color3.new(0, 0, 0)
788NewGuiPart58.Position = UDim2.new(0.300000012, 0, 1, -40)
789NewGuiPart58.Size = UDim2.new(0.400000006, 0, 0, 30)
790NewGuiPart58.ZIndex = 4
791NewGuiPart58.Font = Enum.Font.SourceSans
792NewGuiPart58.FontSize = Enum.FontSize.Size18
793NewGuiPart58.Text = "Ok"
794
795NewGuiPart59.Name = "CallRemote"
796NewGuiPart59.Parent = NewGuiPart1
797NewGuiPart59.Active = true
798NewGuiPart59.BackgroundColor3 = Color3.new(0.913726, 0.913726, 0.913726)
799NewGuiPart59.BorderColor3 = Color3.new(0.584314, 0.584314, 0.584314)
800NewGuiPart59.Draggable = true
801NewGuiPart59.Position = UDim2.new(0.300000012, 0, 0.300000012, 0)
802NewGuiPart59.Size = UDim2.new(0, 350, 0, 20)
803NewGuiPart59.Visible = false
804NewGuiPart59.ZIndex = 2
805
806NewGuiPart60.Name = "Title"
807NewGuiPart60.Parent = NewGuiPart59
808NewGuiPart60.BackgroundTransparency = 1
809NewGuiPart60.Size = UDim2.new(1, 0, 1, 0)
810NewGuiPart60.ZIndex = 2
811NewGuiPart60.Font = Enum.Font.SourceSans
812NewGuiPart60.FontSize = Enum.FontSize.Size14
813NewGuiPart60.Text = "Call Remote"
814NewGuiPart60.TextColor3 = Color3.new(0, 0, 0)
815NewGuiPart60.TextXAlignment = Enum.TextXAlignment.Left
816
817NewGuiPart61.Name = "MainWindow"
818NewGuiPart61.Parent = NewGuiPart59
819NewGuiPart61.BackgroundColor3 = Color3.new(1, 1, 1)
820NewGuiPart61.BackgroundTransparency = 0.10000000149012
821NewGuiPart61.BorderColor3 = Color3.new(0.74902, 0.74902, 0.74902)
822NewGuiPart61.Size = UDim2.new(1, 0, 0, 200)
823
824NewGuiPart62.Name = "Desc"
825NewGuiPart62.Parent = NewGuiPart61
826NewGuiPart62.BackgroundColor3 = Color3.new(1, 1, 1)
827NewGuiPart62.BackgroundTransparency = 1
828NewGuiPart62.Position = UDim2.new(0, 0, 0, 20)
829NewGuiPart62.Size = UDim2.new(1, 0, 0, 20)
830NewGuiPart62.Font = Enum.Font.SourceSans
831NewGuiPart62.FontSize = Enum.FontSize.Size14
832NewGuiPart62.Text = "Arguments"
833NewGuiPart62.TextWrapped = true
834
835NewGuiPart63.Name = "Arguments"
836NewGuiPart63.Parent = NewGuiPart61
837NewGuiPart63.BackgroundColor3 = Color3.new(1, 1, 1)
838NewGuiPart63.BackgroundTransparency = 1
839NewGuiPart63.Position = UDim2.new(0, 0, 0, 40)
840NewGuiPart63.Size = UDim2.new(1, 0, 0, 80)
841NewGuiPart63.BottomImage = "rbxasset://textures/blackBkg_square.png"
842NewGuiPart63.CanvasSize = UDim2.new(0, 0, 0, 0)
843NewGuiPart63.MidImage = "rbxasset://textures/blackBkg_square.png"
844NewGuiPart63.TopImage = "rbxasset://textures/blackBkg_square.png"
845
846NewGuiPart64.Name = "DisplayReturned"
847NewGuiPart64.Parent = NewGuiPart61
848NewGuiPart64.BackgroundColor3 = Color3.new(1, 1, 1)
849NewGuiPart64.BackgroundTransparency = 0.60000002384186
850NewGuiPart64.Position = UDim2.new(0.075000003, 0, 0.625, 0)
851NewGuiPart64.Size = UDim2.new(0, 20, 0, 20)
852NewGuiPart64.ZIndex = 2
853NewGuiPart64.Font = Enum.Font.SourceSans
854NewGuiPart64.FontSize = Enum.FontSize.Size18
855NewGuiPart64.Text = ""
856NewGuiPart64.TextColor3 = Color3.new(1, 1, 1)
857
858NewGuiPart65.Name = "enabled"
859NewGuiPart65.Parent = NewGuiPart64
860NewGuiPart65.BackgroundColor3 = Color3.new(0.380392, 0.380392, 0.380392)
861NewGuiPart65.BackgroundTransparency = 0.40000000596046
862NewGuiPart65.BorderSizePixel = 0
863NewGuiPart65.Position = UDim2.new(0, 3, 0, 3)
864NewGuiPart65.Size = UDim2.new(0, 14, 0, 14)
865NewGuiPart65.Visible = false
866NewGuiPart65.Font = Enum.Font.SourceSans
867NewGuiPart65.FontSize = Enum.FontSize.Size14
868NewGuiPart65.Text = ""
869
870NewGuiPart66.Name = "Desc2"
871NewGuiPart66.Parent = NewGuiPart61
872NewGuiPart66.BackgroundColor3 = Color3.new(1, 1, 1)
873NewGuiPart66.BackgroundTransparency = 1
874NewGuiPart66.Position = UDim2.new(0.075000003, 30, 0.625, 0)
875NewGuiPart66.Size = UDim2.new(0.925000012, -30, 0, 20)
876NewGuiPart66.Font = Enum.Font.SourceSans
877NewGuiPart66.FontSize = Enum.FontSize.Size14
878NewGuiPart66.Text = "Display values returned"
879NewGuiPart66.TextXAlignment = Enum.TextXAlignment.Left
880
881NewGuiPart67.Name = "Add"
882NewGuiPart67.Parent = NewGuiPart61
883NewGuiPart67.BackgroundColor3 = Color3.new(1, 1, 1)
884NewGuiPart67.BackgroundTransparency = 0.5
885NewGuiPart67.BorderColor3 = Color3.new(0, 0, 0)
886NewGuiPart67.Position = UDim2.new(0.800000012, 0, 0.625, 0)
887NewGuiPart67.Size = UDim2.new(0, 20, 0, 20)
888NewGuiPart67.Font = Enum.Font.SourceSansBold
889NewGuiPart67.FontSize = Enum.FontSize.Size24
890NewGuiPart67.Text = "+"
891
892NewGuiPart68.Name = "Subtract"
893NewGuiPart68.Parent = NewGuiPart61
894NewGuiPart68.BackgroundColor3 = Color3.new(1, 1, 1)
895NewGuiPart68.BackgroundTransparency = 0.5
896NewGuiPart68.BorderColor3 = Color3.new(0, 0, 0)
897NewGuiPart68.Position = UDim2.new(0.899999976, 0, 0.625, 0)
898NewGuiPart68.Size = UDim2.new(0, 20, 0, 20)
899NewGuiPart68.Font = Enum.Font.SourceSansBold
900NewGuiPart68.FontSize = Enum.FontSize.Size24
901NewGuiPart68.Text = "-"
902
903NewGuiPart69.Name = "ArgumentTemplate"
904NewGuiPart69.Parent = NewGuiPart61
905NewGuiPart69.BackgroundColor3 = Color3.new(1, 1, 1)
906NewGuiPart69.BackgroundTransparency = 0.5
907NewGuiPart69.BorderColor3 = Color3.new(0.74902, 0.74902, 0.74902)
908NewGuiPart69.Size = UDim2.new(1, 0, 0, 20)
909NewGuiPart69.Visible = false
910
911NewGuiPart70.Name = "Type"
912NewGuiPart70.Parent = NewGuiPart69
913NewGuiPart70.BackgroundColor3 = Color3.new(1, 1, 1)
914NewGuiPart70.BackgroundTransparency = 0.89999997615814
915NewGuiPart70.BorderColor3 = Color3.new(0, 0, 0)
916NewGuiPart70.Size = UDim2.new(0.400000006, 0, 0, 20)
917NewGuiPart70.Font = Enum.Font.SourceSans
918NewGuiPart70.FontSize = Enum.FontSize.Size18
919NewGuiPart70.Text = "Script"
920
921NewGuiPart71.Name = "Value"
922NewGuiPart71.Parent = NewGuiPart69
923NewGuiPart71.BackgroundColor3 = Color3.new(1, 1, 1)
924NewGuiPart71.BackgroundTransparency = 0.89999997615814
925NewGuiPart71.Position = UDim2.new(0.400000006, 0, 0, 0)
926NewGuiPart71.Size = UDim2.new(0.600000024, -12, 0, 20)
927NewGuiPart71.Font = Enum.Font.SourceSans
928NewGuiPart71.FontSize = Enum.FontSize.Size14
929NewGuiPart71.Text = ""
930NewGuiPart71.TextXAlignment = Enum.TextXAlignment.Left
931
932NewGuiPart72.Name = "Cancel"
933NewGuiPart72.Parent = NewGuiPart61
934NewGuiPart72.BackgroundColor3 = Color3.new(1, 1, 1)
935NewGuiPart72.BackgroundTransparency = 0.5
936NewGuiPart72.BorderColor3 = Color3.new(0, 0, 0)
937NewGuiPart72.Size = UDim2.new(0.400000006, 0, 0, 30)
938NewGuiPart72.Font = Enum.Font.SourceSans
939NewGuiPart72.FontSize = Enum.FontSize.Size18
940NewGuiPart72.Text = "Cancel"
941
942NewGuiPart73.Name = "Ok"
943NewGuiPart73.Parent = NewGuiPart61
944NewGuiPart73.BackgroundColor3 = Color3.new(1, 1, 1)
945NewGuiPart73.BackgroundTransparency = 0.5
946NewGuiPart73.BorderColor3 = Color3.new(0, 0, 0)
947NewGuiPart73.Position = UDim2.new(0.075000003, 0, 1, -40)
948NewGuiPart73.Size = UDim2.new(0.400000006, 0, 0, 30)
949NewGuiPart73.Font = Enum.Font.SourceSans
950NewGuiPart73.FontSize = Enum.FontSize.Size18
951NewGuiPart73.Text = "Call"
952
953NewGuiPart74.Name = "TableCaution"
954NewGuiPart74.Parent = NewGuiPart1
955NewGuiPart74.Active = true
956NewGuiPart74.BackgroundColor3 = Color3.new(0.913726, 0.913726, 0.913726)
957NewGuiPart74.BorderColor3 = Color3.new(0.584314, 0.584314, 0.584314)
958NewGuiPart74.Draggable = true
959NewGuiPart74.Position = UDim2.new(0.300000012, 0, 0.300000012, 0)
960NewGuiPart74.Size = UDim2.new(0, 350, 0, 20)
961NewGuiPart74.Visible = false
962NewGuiPart74.ZIndex = 2
963
964NewGuiPart75.Name = "MainWindow"
965NewGuiPart75.Parent = NewGuiPart74
966NewGuiPart75.BackgroundColor3 = Color3.new(1, 1, 1)
967NewGuiPart75.BackgroundTransparency = 0.10000000149012
968NewGuiPart75.BorderColor3 = Color3.new(0.74902, 0.74902, 0.74902)
969NewGuiPart75.Size = UDim2.new(1, 0, 0, 150)
970
971NewGuiPart76.Name = "Ok"
972NewGuiPart76.Parent = NewGuiPart75
973NewGuiPart76.BackgroundColor3 = Color3.new(1, 1, 1)
974NewGuiPart76.BackgroundTransparency = 0.5
975NewGuiPart76.BorderColor3 = Color3.new(0, 0, 0)
976NewGuiPart76.Position = UDim2.new(0.300000012, 0, 1, -40)
977NewGuiPart76.Size = UDim2.new(0.400000006, 0, 0, 30)
978NewGuiPart76.Font = Enum.Font.SourceSans
979NewGuiPart76.FontSize = Enum.FontSize.Size18
980NewGuiPart76.Text = "Ok"
981
982NewGuiPart77.Name = "TableResults"
983NewGuiPart77.Parent = NewGuiPart75
984NewGuiPart77.BackgroundColor3 = Color3.new(1, 1, 1)
985NewGuiPart77.BackgroundTransparency = 1
986NewGuiPart77.Position = UDim2.new(0, 0, 0, 20)
987NewGuiPart77.Size = UDim2.new(1, 0, 0, 80)
988NewGuiPart77.BottomImage = "rbxasset://textures/blackBkg_square.png"
989NewGuiPart77.CanvasSize = UDim2.new(0, 0, 0, 0)
990NewGuiPart77.MidImage = "rbxasset://textures/blackBkg_square.png"
991NewGuiPart77.TopImage = "rbxasset://textures/blackBkg_square.png"
992
993NewGuiPart78.Name = "TableTemplate"
994NewGuiPart78.Parent = NewGuiPart75
995NewGuiPart78.BackgroundColor3 = Color3.new(1, 1, 1)
996NewGuiPart78.BackgroundTransparency = 0.5
997NewGuiPart78.BorderColor3 = Color3.new(0.74902, 0.74902, 0.74902)
998NewGuiPart78.Size = UDim2.new(1, 0, 0, 20)
999NewGuiPart78.Visible = false
1000
1001NewGuiPart79.Name = "Type"
1002NewGuiPart79.Parent = NewGuiPart78
1003NewGuiPart79.BackgroundColor3 = Color3.new(1, 1, 1)
1004NewGuiPart79.BackgroundTransparency = 0.89999997615814
1005NewGuiPart79.Size = UDim2.new(0.400000006, 0, 0, 20)
1006NewGuiPart79.Font = Enum.Font.SourceSans
1007NewGuiPart79.FontSize = Enum.FontSize.Size18
1008NewGuiPart79.Text = "Script"
1009
1010NewGuiPart80.Name = "Value"
1011NewGuiPart80.Parent = NewGuiPart78
1012NewGuiPart80.BackgroundColor3 = Color3.new(1, 1, 1)
1013NewGuiPart80.BackgroundTransparency = 0.89999997615814
1014NewGuiPart80.Position = UDim2.new(0.400000006, 0, 0, 0)
1015NewGuiPart80.Size = UDim2.new(0.600000024, -12, 0, 20)
1016NewGuiPart80.Font = Enum.Font.SourceSans
1017NewGuiPart80.FontSize = Enum.FontSize.Size14
1018NewGuiPart80.Text = "Script"
1019
1020NewGuiPart81.Name = "Title"
1021NewGuiPart81.Parent = NewGuiPart74
1022NewGuiPart81.BackgroundTransparency = 1
1023NewGuiPart81.Size = UDim2.new(1, 0, 1, 0)
1024NewGuiPart81.ZIndex = 2
1025NewGuiPart81.Font = Enum.Font.SourceSans
1026NewGuiPart81.FontSize = Enum.FontSize.Size14
1027NewGuiPart81.Text = "Caution"
1028NewGuiPart81.TextColor3 = Color3.new(0, 0, 0)
1029NewGuiPart81.TextXAlignment = Enum.TextXAlignment.Left
1030
1031NewGuiPart82.Name = "ScriptEditor"
1032NewGuiPart82.Parent = NewGuiPart1
1033NewGuiPart82.Active = true
1034NewGuiPart82.BackgroundColor3 = Color3.new(0.913726, 0.913726, 0.913726)
1035NewGuiPart82.BorderColor3 = Color3.new(0.584314, 0.584314, 0.584314)
1036NewGuiPart82.Draggable = true
1037NewGuiPart82.Position = UDim2.new(0.300000012, 0, 0.300000012, 0)
1038NewGuiPart82.Size = UDim2.new(0, 516, 0, 20)
1039NewGuiPart82.Visible = false
1040NewGuiPart82.ZIndex = 5
1041
1042NewGuiPart163.Name = "OpenScript"
1043NewGuiPart163.Parent = NewGuiPart82
1044NewGuiPart163.Archivable = true
1045
1046NewGuiPart83.Name = "Title"
1047NewGuiPart83.Parent = NewGuiPart82
1048NewGuiPart83.BackgroundTransparency = 1
1049NewGuiPart83.Size = UDim2.new(1, 0, 1, 0)
1050NewGuiPart83.ZIndex = 5
1051NewGuiPart83.Font = Enum.Font.SourceSans
1052NewGuiPart83.FontSize = Enum.FontSize.Size14
1053NewGuiPart83.Text = "Script Viewer"
1054NewGuiPart83.TextColor3 = Color3.new(0, 0, 0)
1055NewGuiPart83.TextXAlignment = Enum.TextXAlignment.Left
1056
1057NewGuiPart84.Name = "Cover"
1058NewGuiPart84.Parent = NewGuiPart82
1059NewGuiPart84.BackgroundColor3 = Color3.new(1, 1, 1)
1060NewGuiPart84.BorderSizePixel = 0
1061NewGuiPart84.Position = UDim2.new(0, 0, 3, 0)
1062NewGuiPart84.Size = UDim2.new(0, 516, 0, 416)
1063
1064NewGuiPart85.Name = "EditorGrid"
1065NewGuiPart85.Parent = NewGuiPart82
1066NewGuiPart85.BackgroundColor3 = Color3.new(1, 1, 1)
1067NewGuiPart85.BorderSizePixel = 0
1068NewGuiPart85.Position = UDim2.new(0, 0, 3, 0)
1069NewGuiPart85.Size = UDim2.new(0, 500, 0, 400)
1070
1071NewGuiPart86.Name = "TopBar"
1072NewGuiPart86.Parent = NewGuiPart82
1073NewGuiPart86.BackgroundColor3 = Color3.new(0.941177, 0.941177, 0.941177)
1074NewGuiPart86.BorderColor3 = Color3.new(0.584314, 0.584314, 0.584314)
1075NewGuiPart86.Size = UDim2.new(1, 0, 3, 0)
1076
1077NewGuiPart87.Name = "ScriptBarLeft"
1078NewGuiPart87.Parent = NewGuiPart86
1079NewGuiPart87.Active = false
1080NewGuiPart87.BackgroundColor3 = Color3.new(0.866667, 0.866667, 0.866667)
1081NewGuiPart87.BorderColor3 = Color3.new(0.584314, 0.584314, 0.584314)
1082NewGuiPart87.Position = UDim2.new(1, -32, 0, 40)
1083NewGuiPart87.Size = UDim2.new(0, 16, 0, 20)
1084NewGuiPart87.AutoButtonColor = false
1085
1086NewGuiPart88.Name = "Arrow Graphic"
1087NewGuiPart88.Parent = NewGuiPart87
1088NewGuiPart88.BackgroundTransparency = 1
1089NewGuiPart88.BorderSizePixel = 0
1090NewGuiPart88.Position = UDim2.new(0.5, -4, 0.5, -4)
1091NewGuiPart88.Size = UDim2.new(0, 8, 0, 8)
1092
1093NewGuiPart89.Name = "Graphic"
1094NewGuiPart89.Parent = NewGuiPart88
1095NewGuiPart89.BackgroundColor3 = Color3.new(0.584314, 0.584314, 0.584314)
1096NewGuiPart89.BackgroundTransparency = 0.69999998807907
1097NewGuiPart89.BorderSizePixel = 0
1098NewGuiPart89.Position = UDim2.new(0.25, 0, 0.375, 0)
1099NewGuiPart89.Size = UDim2.new(0.125, 0, 0.25, 0)
1100
1101NewGuiPart90.Name = "Graphic"
1102NewGuiPart90.Parent = NewGuiPart88
1103NewGuiPart90.BackgroundColor3 = Color3.new(0.584314, 0.584314, 0.584314)
1104NewGuiPart90.BackgroundTransparency = 0.69999998807907
1105NewGuiPart90.BorderSizePixel = 0
1106NewGuiPart90.Position = UDim2.new(0.375, 0, 0.25, 0)
1107NewGuiPart90.Size = UDim2.new(0.125, 0, 0.5, 0)
1108
1109NewGuiPart91.Name = "Graphic"
1110NewGuiPart91.Parent = NewGuiPart88
1111NewGuiPart91.BackgroundColor3 = Color3.new(0.584314, 0.584314, 0.584314)
1112NewGuiPart91.BackgroundTransparency = 0.69999998807907
1113NewGuiPart91.BorderSizePixel = 0
1114NewGuiPart91.Position = UDim2.new(0.5, 0, 0.125, 0)
1115NewGuiPart91.Size = UDim2.new(0.125, 0, 0.75, 0)
1116
1117NewGuiPart92.Name = "Graphic"
1118NewGuiPart92.Parent = NewGuiPart88
1119NewGuiPart92.BackgroundColor3 = Color3.new(0.584314, 0.584314, 0.584314)
1120NewGuiPart92.BackgroundTransparency = 0.69999998807907
1121NewGuiPart92.BorderSizePixel = 0
1122NewGuiPart92.Position = UDim2.new(0.625, 0, 0, 0)
1123NewGuiPart92.Size = UDim2.new(0.125, 0, 1, 0)
1124
1125NewGuiPart93.Name = "ScriptBarRight"
1126NewGuiPart93.Parent = NewGuiPart86
1127NewGuiPart93.Active = false
1128NewGuiPart93.BackgroundColor3 = Color3.new(0.866667, 0.866667, 0.866667)
1129NewGuiPart93.BorderColor3 = Color3.new(0.584314, 0.584314, 0.584314)
1130NewGuiPart93.Position = UDim2.new(1, -16, 0, 40)
1131NewGuiPart93.Size = UDim2.new(0, 16, 0, 20)
1132NewGuiPart93.AutoButtonColor = false
1133
1134NewGuiPart94.Name = "Arrow Graphic"
1135NewGuiPart94.Parent = NewGuiPart93
1136NewGuiPart94.BackgroundTransparency = 1
1137NewGuiPart94.BorderSizePixel = 0
1138NewGuiPart94.Position = UDim2.new(0.5, -4, 0.5, -4)
1139NewGuiPart94.Size = UDim2.new(0, 8, 0, 8)
1140
1141NewGuiPart95.Name = "Graphic"
1142NewGuiPart95.Parent = NewGuiPart94
1143NewGuiPart95.BackgroundColor3 = Color3.new(0.584314, 0.584314, 0.584314)
1144NewGuiPart95.BackgroundTransparency = 0.69999998807907
1145NewGuiPart95.BorderSizePixel = 0
1146NewGuiPart95.Position = UDim2.new(0.625, 0, 0.375, 0)
1147NewGuiPart95.Size = UDim2.new(0.125, 0, 0.25, 0)
1148
1149NewGuiPart96.Name = "Graphic"
1150NewGuiPart96.Parent = NewGuiPart94
1151NewGuiPart96.BackgroundColor3 = Color3.new(0.584314, 0.584314, 0.584314)
1152NewGuiPart96.BackgroundTransparency = 0.69999998807907
1153NewGuiPart96.BorderSizePixel = 0
1154NewGuiPart96.Position = UDim2.new(0.5, 0, 0.25, 0)
1155NewGuiPart96.Size = UDim2.new(0.125, 0, 0.5, 0)
1156
1157NewGuiPart97.Name = "Graphic"
1158NewGuiPart97.Parent = NewGuiPart94
1159NewGuiPart97.BackgroundColor3 = Color3.new(0.584314, 0.584314, 0.584314)
1160NewGuiPart97.BackgroundTransparency = 0.69999998807907
1161NewGuiPart97.BorderSizePixel = 0
1162NewGuiPart97.Position = UDim2.new(0.375, 0, 0.125, 0)
1163NewGuiPart97.Size = UDim2.new(0.125, 0, 0.75, 0)
1164
1165NewGuiPart98.Name = "Graphic"
1166NewGuiPart98.Parent = NewGuiPart94
1167NewGuiPart98.BackgroundColor3 = Color3.new(0.584314, 0.584314, 0.584314)
1168NewGuiPart98.BackgroundTransparency = 0.69999998807907
1169NewGuiPart98.BorderSizePixel = 0
1170NewGuiPart98.Position = UDim2.new(0.25, 0, 0, 0)
1171NewGuiPart98.Size = UDim2.new(0.125, 0, 1, 0)
1172
1173NewGuiPart99.Name = "Clipboard"
1174NewGuiPart99.Parent = NewGuiPart86
1175NewGuiPart99.BackgroundColor3 = Color3.new(1, 1, 1)
1176NewGuiPart99.BackgroundTransparency = 0.5
1177NewGuiPart99.BorderColor3 = Color3.new(0, 0, 0)
1178NewGuiPart99.Position = UDim2.new(0, 0, 0, 20)
1179NewGuiPart99.Size = UDim2.new(0, 80, 0, 20)
1180NewGuiPart99.Font = Enum.Font.SourceSans
1181NewGuiPart99.FontSize = Enum.FontSize.Size14
1182NewGuiPart99.Text = "To Clipboard"
1183
1184NewGuiPart100.Name = "ScriptBar"
1185NewGuiPart100.Parent = NewGuiPart86
1186NewGuiPart100.BackgroundColor3 = Color3.new(0.823529, 0.823529, 0.823529)
1187NewGuiPart100.BorderColor3 = Color3.new(0.584314, 0.584314, 0.584314)
1188NewGuiPart100.ClipsDescendants = true
1189NewGuiPart100.Position = UDim2.new(0, 0, 0, 40)
1190NewGuiPart100.Size = UDim2.new(1, -32, 0, 20)
1191
1192NewGuiPart101.Name = "Entry"
1193NewGuiPart101.Parent = NewGuiPart86
1194NewGuiPart101.BackgroundColor3 = Color3.new(1, 1, 1)
1195NewGuiPart101.BackgroundTransparency = 1
1196NewGuiPart101.Size = UDim2.new(0, 100, 1, 0)
1197NewGuiPart101.Visible = false
1198
1199NewGuiPart102.Name = "Button"
1200NewGuiPart102.Parent = NewGuiPart101
1201NewGuiPart102.BackgroundColor3 = Color3.new(1, 1, 1)
1202NewGuiPart102.BackgroundTransparency = 0.60000002384186
1203NewGuiPart102.BorderColor3 = Color3.new(0, 0, 0)
1204NewGuiPart102.ClipsDescendants = true
1205NewGuiPart102.Size = UDim2.new(1, 0, 1, 0)
1206NewGuiPart102.ZIndex = 4
1207NewGuiPart102.Font = Enum.Font.SourceSans
1208NewGuiPart102.FontSize = Enum.FontSize.Size12
1209NewGuiPart102.Text = ""
1210NewGuiPart102.TextXAlignment = Enum.TextXAlignment.Left
1211
1212NewGuiPart103.Name = "Close"
1213NewGuiPart103.Parent = NewGuiPart101
1214NewGuiPart103.BackgroundColor3 = Color3.new(1, 1, 1)
1215NewGuiPart103.BackgroundTransparency = 1
1216NewGuiPart103.BorderColor3 = Color3.new(0, 0, 0)
1217NewGuiPart103.Position = UDim2.new(1, -20, 0, 0)
1218NewGuiPart103.Size = UDim2.new(0, 20, 0, 20)
1219NewGuiPart103.ZIndex = 4
1220NewGuiPart103.Font = Enum.Font.SourceSans
1221NewGuiPart103.FontSize = Enum.FontSize.Size14
1222NewGuiPart103.Text = "X"
1223
1224NewGuiPart104.Name = "Close"
1225NewGuiPart104.Parent = NewGuiPart82
1226NewGuiPart104.BackgroundColor3 = Color3.new(1, 1, 1)
1227NewGuiPart104.BackgroundTransparency = 1
1228NewGuiPart104.BorderColor3 = Color3.new(0, 0, 0)
1229NewGuiPart104.Position = UDim2.new(1, -20, 0, 0)
1230NewGuiPart104.Size = UDim2.new(0, 20, 0, 20)
1231NewGuiPart104.ZIndex = 5
1232NewGuiPart104.Font = Enum.Font.SourceSans
1233NewGuiPart104.FontSize = Enum.FontSize.Size14
1234NewGuiPart104.Text = "X"
1235
1236NewGuiPart105.Name = "IntroFrame"
1237NewGuiPart105.Parent = NewGuiPart1
1238NewGuiPart105.BackgroundColor3 = Color3.new(0.960784, 0.960784, 0.960784)
1239NewGuiPart105.BorderSizePixel = 0
1240NewGuiPart105.Position = UDim2.new(1, 30, 0, 0)
1241NewGuiPart105.Size = UDim2.new(0, 300, 1, 0)
1242NewGuiPart105.ZIndex = 2
1243
1244NewGuiPart106.Name = "Main"
1245NewGuiPart106.Parent = NewGuiPart105
1246NewGuiPart106.BackgroundColor3 = Color3.new(0.960784, 0.960784, 0.960784)
1247NewGuiPart106.BorderSizePixel = 0
1248NewGuiPart106.Position = UDim2.new(0, -30, 0, 0)
1249NewGuiPart106.Size = UDim2.new(0, 30, 0, 90)
1250NewGuiPart106.ZIndex = 2
1251
1252NewGuiPart107.Name = "Title"
1253NewGuiPart107.Parent = NewGuiPart105
1254NewGuiPart107.BackgroundColor3 = Color3.new(1, 1, 1)
1255NewGuiPart107.BackgroundTransparency = 1
1256NewGuiPart107.Position = UDim2.new(0, 100, 0, 150)
1257NewGuiPart107.Size = UDim2.new(0, 100, 0, 60)
1258NewGuiPart107.ZIndex = 2
1259NewGuiPart107.Font = Enum.Font.SourceSansBold
1260NewGuiPart107.FontSize = Enum.FontSize.Size60
1261NewGuiPart107.Text = "DEX"
1262NewGuiPart107.TextWrapped = true
1263
1264NewGuiPart108.Name = "Version"
1265NewGuiPart108.Parent = NewGuiPart105
1266NewGuiPart108.BackgroundColor3 = Color3.new(1, 1, 1)
1267NewGuiPart108.BackgroundTransparency = 1
1268NewGuiPart108.Position = UDim2.new(0, 100, 0, 210)
1269NewGuiPart108.Size = UDim2.new(0, 100, 0, 30)
1270NewGuiPart108.ZIndex = 2
1271NewGuiPart108.Font = Enum.Font.SourceSansBold
1272NewGuiPart108.FontSize = Enum.FontSize.Size28
1273NewGuiPart108.Text = "V2.0.0"
1274NewGuiPart108.TextWrapped = true
1275
1276NewGuiPart109.Name = "Creator"
1277NewGuiPart109.Parent = NewGuiPart105
1278NewGuiPart109.BackgroundColor3 = Color3.new(1, 1, 1)
1279NewGuiPart109.BackgroundTransparency = 1
1280NewGuiPart109.Position = UDim2.new(0, 80, 0, 300)
1281NewGuiPart109.Size = UDim2.new(0, 140, 0, 30)
1282NewGuiPart109.ZIndex = 2
1283NewGuiPart109.Font = Enum.Font.SourceSansBold
1284NewGuiPart109.FontSize = Enum.FontSize.Size28
1285NewGuiPart109.Text = "Raspberry Pi , Script Made By Advancedev"
1286NewGuiPart109.TextWrapped = true
1287
1288NewGuiPart110.Name = "Slant"
1289NewGuiPart110.Parent = NewGuiPart105
1290NewGuiPart110.BackgroundColor3 = Color3.new(1, 1, 1)
1291NewGuiPart110.BackgroundTransparency = 1
1292NewGuiPart110.Position = UDim2.new(0, -30, 0, 90)
1293NewGuiPart110.Rotation = 180
1294NewGuiPart110.Size = UDim2.new(0, 30, 0, 30)
1295NewGuiPart110.ZIndex = 2
1296NewGuiPart110.Image = "rbxassetid://474172996"
1297NewGuiPart110.ImageColor3 = Color3.new(0.960784, 0.960784, 0.960784)
1298
1299NewGuiPart111.Name = "SaveMapWindow"
1300NewGuiPart111.Parent = NewGuiPart1
1301NewGuiPart111.BackgroundColor3 = Color3.new(1, 1, 1)
1302NewGuiPart111.BackgroundTransparency = 0.10000000149012
1303NewGuiPart111.BorderColor3 = Color3.new(0.74902, 0.74902, 0.74902)
1304NewGuiPart111.Position = UDim2.new(1, 0, 0, 0)
1305NewGuiPart111.Size = UDim2.new(0, 300, 1, 0)
1306
1307NewGuiPart112.Name = "Header"
1308NewGuiPart112.Parent = NewGuiPart111
1309NewGuiPart112.BackgroundColor3 = Color3.new(0.913726, 0.913726, 0.913726)
1310NewGuiPart112.BorderColor3 = Color3.new(0.584314, 0.584314, 0.584314)
1311NewGuiPart112.Size = UDim2.new(1, 0, 0, 17)
1312
1313NewGuiPart113.Parent = NewGuiPart112
1314NewGuiPart113.BackgroundTransparency = 1
1315NewGuiPart113.Position = UDim2.new(0, 4, 0, 0)
1316NewGuiPart113.Size = UDim2.new(1, -4, 1, 0)
1317NewGuiPart113.Font = Enum.Font.SourceSans
1318NewGuiPart113.FontSize = Enum.FontSize.Size14
1319NewGuiPart113.Text = "Map Downloader"
1320NewGuiPart113.TextColor3 = Color3.new(0, 0, 0)
1321NewGuiPart113.TextXAlignment = Enum.TextXAlignment.Left
1322
1323NewGuiPart114.Name = "MapSettings"
1324NewGuiPart114.Parent = NewGuiPart111
1325NewGuiPart114.BackgroundColor3 = Color3.new(1, 1, 1)
1326NewGuiPart114.BackgroundTransparency = 1
1327NewGuiPart114.Position = UDim2.new(0, 0, 0, 200)
1328NewGuiPart114.Size = UDim2.new(1, 0, 0, 240)
1329
1330NewGuiPart115.Name = "Terrain"
1331NewGuiPart115.Parent = NewGuiPart114
1332NewGuiPart115.BackgroundColor3 = Color3.new(1, 1, 1)
1333NewGuiPart115.BackgroundTransparency = 1
1334NewGuiPart115.Position = UDim2.new(0, 0, 0, 60)
1335NewGuiPart115.Size = UDim2.new(1, 0, 0, 60)
1336
1337NewGuiPart116.Name = "SName"
1338NewGuiPart116.Parent = NewGuiPart115
1339NewGuiPart116.BackgroundColor3 = Color3.new(1, 1, 1)
1340NewGuiPart116.BackgroundTransparency = 1
1341NewGuiPart116.Position = UDim2.new(0, 10, 0, 0)
1342NewGuiPart116.Size = UDim2.new(1, -20, 0, 30)
1343NewGuiPart116.Font = Enum.Font.SourceSans
1344NewGuiPart116.FontSize = Enum.FontSize.Size18
1345NewGuiPart116.Text = "Save Terrain"
1346NewGuiPart116.TextXAlignment = Enum.TextXAlignment.Left
1347
1348NewGuiPart117.Name = "Status"
1349NewGuiPart117.Parent = NewGuiPart115
1350NewGuiPart117.BackgroundColor3 = Color3.new(1, 1, 1)
1351NewGuiPart117.BackgroundTransparency = 1
1352NewGuiPart117.Position = UDim2.new(0, 60, 0, 30)
1353NewGuiPart117.Size = UDim2.new(0, 50, 0, 15)
1354NewGuiPart117.Font = Enum.Font.SourceSans
1355NewGuiPart117.FontSize = Enum.FontSize.Size18
1356NewGuiPart117.Text = "Off"
1357NewGuiPart117.TextXAlignment = Enum.TextXAlignment.Left
1358
1359NewGuiPart118.Name = "Change"
1360NewGuiPart118.Parent = NewGuiPart115
1361NewGuiPart118.BackgroundColor3 = Color3.new(0.862745, 0.862745, 0.862745)
1362NewGuiPart118.BorderSizePixel = 0
1363NewGuiPart118.Position = UDim2.new(0, 10, 0, 30)
1364NewGuiPart118.Size = UDim2.new(0, 40, 0, 15)
1365NewGuiPart118.Font = Enum.Font.SourceSans
1366NewGuiPart118.FontSize = Enum.FontSize.Size14
1367NewGuiPart118.Text = ""
1368
1369NewGuiPart119.Name = "OnBar"
1370NewGuiPart119.Parent = NewGuiPart118
1371NewGuiPart119.BackgroundColor3 = Color3.new(0, 0.576471, 0.862745)
1372NewGuiPart119.BorderSizePixel = 0
1373NewGuiPart119.Size = UDim2.new(0, 0, 0, 15)
1374NewGuiPart119.Font = Enum.Font.SourceSans
1375NewGuiPart119.FontSize = Enum.FontSize.Size14
1376NewGuiPart119.Text = ""
1377
1378NewGuiPart120.Name = "Bar"
1379NewGuiPart120.Parent = NewGuiPart118
1380NewGuiPart120.BackgroundColor3 = Color3.new(0, 0, 0)
1381NewGuiPart120.BorderSizePixel = 0
1382NewGuiPart120.ClipsDescendants = true
1383NewGuiPart120.Position = UDim2.new(0, -2, 0, -2)
1384NewGuiPart120.Size = UDim2.new(0, 10, 0, 19)
1385NewGuiPart120.Font = Enum.Font.SourceSans
1386NewGuiPart120.FontSize = Enum.FontSize.Size14
1387NewGuiPart120.Text = ""
1388
1389NewGuiPart121.Name = "Lighting"
1390NewGuiPart121.Parent = NewGuiPart114
1391NewGuiPart121.BackgroundColor3 = Color3.new(1, 1, 1)
1392NewGuiPart121.BackgroundTransparency = 1
1393NewGuiPart121.Position = UDim2.new(0, 0, 0, 120)
1394NewGuiPart121.Size = UDim2.new(1, 0, 0, 60)
1395
1396NewGuiPart122.Name = "SName"
1397NewGuiPart122.Parent = NewGuiPart121
1398NewGuiPart122.BackgroundColor3 = Color3.new(1, 1, 1)
1399NewGuiPart122.BackgroundTransparency = 1
1400NewGuiPart122.Position = UDim2.new(0, 10, 0, 0)
1401NewGuiPart122.Size = UDim2.new(1, -20, 0, 30)
1402NewGuiPart122.Font = Enum.Font.SourceSans
1403NewGuiPart122.FontSize = Enum.FontSize.Size18
1404NewGuiPart122.Text = "Lighting Properties"
1405NewGuiPart122.TextXAlignment = Enum.TextXAlignment.Left
1406
1407NewGuiPart123.Name = "Status"
1408NewGuiPart123.Parent = NewGuiPart121
1409NewGuiPart123.BackgroundColor3 = Color3.new(1, 1, 1)
1410NewGuiPart123.BackgroundTransparency = 1
1411NewGuiPart123.Position = UDim2.new(0, 60, 0, 30)
1412NewGuiPart123.Size = UDim2.new(0, 50, 0, 15)
1413NewGuiPart123.Font = Enum.Font.SourceSans
1414NewGuiPart123.FontSize = Enum.FontSize.Size18
1415NewGuiPart123.Text = "Off"
1416NewGuiPart123.TextXAlignment = Enum.TextXAlignment.Left
1417
1418NewGuiPart124.Name = "Change"
1419NewGuiPart124.Parent = NewGuiPart121
1420NewGuiPart124.BackgroundColor3 = Color3.new(0.862745, 0.862745, 0.862745)
1421NewGuiPart124.BorderSizePixel = 0
1422NewGuiPart124.Position = UDim2.new(0, 10, 0, 30)
1423NewGuiPart124.Size = UDim2.new(0, 40, 0, 15)
1424NewGuiPart124.Font = Enum.Font.SourceSans
1425NewGuiPart124.FontSize = Enum.FontSize.Size14
1426NewGuiPart124.Text = ""
1427
1428NewGuiPart125.Name = "OnBar"
1429NewGuiPart125.Parent = NewGuiPart124
1430NewGuiPart125.BackgroundColor3 = Color3.new(0, 0.576471, 0.862745)
1431NewGuiPart125.BorderSizePixel = 0
1432NewGuiPart125.Size = UDim2.new(0, 0, 0, 15)
1433NewGuiPart125.Font = Enum.Font.SourceSans
1434NewGuiPart125.FontSize = Enum.FontSize.Size14
1435NewGuiPart125.Text = ""
1436
1437NewGuiPart126.Name = "Bar"
1438NewGuiPart126.Parent = NewGuiPart124
1439NewGuiPart126.BackgroundColor3 = Color3.new(0, 0, 0)
1440NewGuiPart126.BorderSizePixel = 0
1441NewGuiPart126.ClipsDescendants = true
1442NewGuiPart126.Position = UDim2.new(0, -2, 0, -2)
1443NewGuiPart126.Size = UDim2.new(0, 10, 0, 19)
1444NewGuiPart126.Font = Enum.Font.SourceSans
1445NewGuiPart126.FontSize = Enum.FontSize.Size14
1446NewGuiPart126.Text = ""
1447
1448NewGuiPart127.Name = "CameraInstances"
1449NewGuiPart127.Parent = NewGuiPart114
1450NewGuiPart127.BackgroundColor3 = Color3.new(1, 1, 1)
1451NewGuiPart127.BackgroundTransparency = 1
1452NewGuiPart127.Position = UDim2.new(0, 0, 0, 180)
1453NewGuiPart127.Size = UDim2.new(1, 0, 0, 60)
1454
1455NewGuiPart128.Name = "SName"
1456NewGuiPart128.Parent = NewGuiPart127
1457NewGuiPart128.BackgroundColor3 = Color3.new(1, 1, 1)
1458NewGuiPart128.BackgroundTransparency = 1
1459NewGuiPart128.Position = UDim2.new(0, 10, 0, 0)
1460NewGuiPart128.Size = UDim2.new(1, -20, 0, 30)
1461NewGuiPart128.Font = Enum.Font.SourceSans
1462NewGuiPart128.FontSize = Enum.FontSize.Size18
1463NewGuiPart128.Text = "Camera Instances"
1464NewGuiPart128.TextXAlignment = Enum.TextXAlignment.Left
1465
1466NewGuiPart129.Name = "Status"
1467NewGuiPart129.Parent = NewGuiPart127
1468NewGuiPart129.BackgroundColor3 = Color3.new(1, 1, 1)
1469NewGuiPart129.BackgroundTransparency = 1
1470NewGuiPart129.Position = UDim2.new(0, 60, 0, 30)
1471NewGuiPart129.Size = UDim2.new(0, 50, 0, 15)
1472NewGuiPart129.Font = Enum.Font.SourceSans
1473NewGuiPart129.FontSize = Enum.FontSize.Size18
1474NewGuiPart129.Text = "Off"
1475NewGuiPart129.TextXAlignment = Enum.TextXAlignment.Left
1476
1477NewGuiPart130.Name = "Change"
1478NewGuiPart130.Parent = NewGuiPart127
1479NewGuiPart130.BackgroundColor3 = Color3.new(0.862745, 0.862745, 0.862745)
1480NewGuiPart130.BorderSizePixel = 0
1481NewGuiPart130.Position = UDim2.new(0, 10, 0, 30)
1482NewGuiPart130.Size = UDim2.new(0, 40, 0, 15)
1483NewGuiPart130.Font = Enum.Font.SourceSans
1484NewGuiPart130.FontSize = Enum.FontSize.Size14
1485NewGuiPart130.Text = ""
1486
1487NewGuiPart131.Name = "OnBar"
1488NewGuiPart131.Parent = NewGuiPart130
1489NewGuiPart131.BackgroundColor3 = Color3.new(0, 0.576471, 0.862745)
1490NewGuiPart131.BorderSizePixel = 0
1491NewGuiPart131.Size = UDim2.new(0, 0, 0, 15)
1492NewGuiPart131.Font = Enum.Font.SourceSans
1493NewGuiPart131.FontSize = Enum.FontSize.Size14
1494NewGuiPart131.Text = ""
1495
1496NewGuiPart132.Name = "Bar"
1497NewGuiPart132.Parent = NewGuiPart130
1498NewGuiPart132.BackgroundColor3 = Color3.new(0, 0, 0)
1499NewGuiPart132.BorderSizePixel = 0
1500NewGuiPart132.ClipsDescendants = true
1501NewGuiPart132.Position = UDim2.new(0, -2, 0, -2)
1502NewGuiPart132.Size = UDim2.new(0, 10, 0, 19)
1503NewGuiPart132.Font = Enum.Font.SourceSans
1504NewGuiPart132.FontSize = Enum.FontSize.Size14
1505NewGuiPart132.Text = ""
1506
1507NewGuiPart133.Name = "Scripts"
1508NewGuiPart133.Parent = NewGuiPart114
1509NewGuiPart133.BackgroundColor3 = Color3.new(1, 1, 1)
1510NewGuiPart133.BackgroundTransparency = 1
1511NewGuiPart133.Size = UDim2.new(1, 0, 0, 60)
1512
1513NewGuiPart134.Name = "SName"
1514NewGuiPart134.Parent = NewGuiPart133
1515NewGuiPart134.BackgroundColor3 = Color3.new(1, 1, 1)
1516NewGuiPart134.BackgroundTransparency = 1
1517NewGuiPart134.Position = UDim2.new(0, 10, 0, 0)
1518NewGuiPart134.Size = UDim2.new(1, -20, 0, 30)
1519NewGuiPart134.Font = Enum.Font.SourceSans
1520NewGuiPart134.FontSize = Enum.FontSize.Size18
1521NewGuiPart134.Text = "Save Scripts"
1522NewGuiPart134.TextXAlignment = Enum.TextXAlignment.Left
1523
1524NewGuiPart135.Name = "Status"
1525NewGuiPart135.Parent = NewGuiPart133
1526NewGuiPart135.BackgroundColor3 = Color3.new(1, 1, 1)
1527NewGuiPart135.BackgroundTransparency = 1
1528NewGuiPart135.Position = UDim2.new(0, 60, 0, 30)
1529NewGuiPart135.Size = UDim2.new(0, 50, 0, 15)
1530NewGuiPart135.Font = Enum.Font.SourceSans
1531NewGuiPart135.FontSize = Enum.FontSize.Size18
1532NewGuiPart135.Text = "Off"
1533NewGuiPart135.TextXAlignment = Enum.TextXAlignment.Left
1534
1535NewGuiPart136.Name = "Change"
1536NewGuiPart136.Parent = NewGuiPart133
1537NewGuiPart136.BackgroundColor3 = Color3.new(0.862745, 0.862745, 0.862745)
1538NewGuiPart136.BorderSizePixel = 0
1539NewGuiPart136.Position = UDim2.new(0, 10, 0, 30)
1540NewGuiPart136.Size = UDim2.new(0, 40, 0, 15)
1541NewGuiPart136.Font = Enum.Font.SourceSans
1542NewGuiPart136.FontSize = Enum.FontSize.Size14
1543NewGuiPart136.Text = ""
1544
1545NewGuiPart137.Name = "OnBar"
1546NewGuiPart137.Parent = NewGuiPart136
1547NewGuiPart137.BackgroundColor3 = Color3.new(0, 0.576471, 0.862745)
1548NewGuiPart137.BorderSizePixel = 0
1549NewGuiPart137.Size = UDim2.new(0, 0, 0, 15)
1550NewGuiPart137.Font = Enum.Font.SourceSans
1551NewGuiPart137.FontSize = Enum.FontSize.Size14
1552NewGuiPart137.Text = ""
1553
1554NewGuiPart138.Name = "Bar"
1555NewGuiPart138.Parent = NewGuiPart136
1556NewGuiPart138.BackgroundColor3 = Color3.new(0, 0, 0)
1557NewGuiPart138.BorderSizePixel = 0
1558NewGuiPart138.ClipsDescendants = true
1559NewGuiPart138.Position = UDim2.new(0, -2, 0, -2)
1560NewGuiPart138.Size = UDim2.new(0, 10, 0, 19)
1561NewGuiPart138.Font = Enum.Font.SourceSans
1562NewGuiPart138.FontSize = Enum.FontSize.Size14
1563NewGuiPart138.Text = ""
1564
1565NewGuiPart139.Name = "ToSave"
1566NewGuiPart139.Parent = NewGuiPart111
1567NewGuiPart139.BackgroundTransparency = 1
1568NewGuiPart139.Position = UDim2.new(0, 0, 0, 17)
1569NewGuiPart139.Size = UDim2.new(1, 0, 0, 20)
1570NewGuiPart139.Font = Enum.Font.SourceSans
1571NewGuiPart139.FontSize = Enum.FontSize.Size18
1572NewGuiPart139.Text = "To Save"
1573NewGuiPart139.TextColor3 = Color3.new(0, 0, 0)
1574
1575NewGuiPart140.Name = "CopyList"
1576NewGuiPart140.Parent = NewGuiPart111
1577NewGuiPart140.BackgroundColor3 = Color3.new(1, 1, 1)
1578NewGuiPart140.BackgroundTransparency = 0.80000001192093
1579NewGuiPart140.Position = UDim2.new(0, 0, 0, 37)
1580NewGuiPart140.Size = UDim2.new(1, 0, 0, 163)
1581
1582NewGuiPart141.Name = "Bottom"
1583NewGuiPart141.Parent = NewGuiPart111
1584NewGuiPart141.BackgroundColor3 = Color3.new(0.913726, 0.913726, 0.913726)
1585NewGuiPart141.BorderColor3 = Color3.new(0.584314, 0.584314, 0.584314)
1586NewGuiPart141.Position = UDim2.new(0, 0, 1, -50)
1587NewGuiPart141.Size = UDim2.new(1, 0, 0, 50)
1588
1589NewGuiPart142.Parent = NewGuiPart141
1590NewGuiPart142.BackgroundTransparency = 1
1591NewGuiPart142.Position = UDim2.new(0, 4, 0, 0)
1592NewGuiPart142.Size = UDim2.new(1, -4, 1, 0)
1593NewGuiPart142.Font = Enum.Font.SourceSans
1594NewGuiPart142.FontSize = Enum.FontSize.Size14
1595NewGuiPart142.Text = "After the map saves, open a new place on studio, then right click Lighting and \"Insert from file...\", then select your file and run the unpacker script inside the folder."
1596NewGuiPart142.TextColor3 = Color3.new(0, 0, 0)
1597NewGuiPart142.TextWrapped = true
1598NewGuiPart142.TextXAlignment = Enum.TextXAlignment.Left
1599NewGuiPart142.TextYAlignment = Enum.TextYAlignment.Top
1600
1601NewGuiPart143.Name = "Save"
1602NewGuiPart143.Parent = NewGuiPart111
1603NewGuiPart143.BackgroundColor3 = Color3.new(0.941177, 0.941177, 0.941177)
1604NewGuiPart143.BackgroundTransparency = 0.80000001192093
1605NewGuiPart143.BorderColor3 = Color3.new(0, 0, 0)
1606NewGuiPart143.Position = UDim2.new(0, 0, 1, -80)
1607NewGuiPart143.Size = UDim2.new(1, 0, 0, 30)
1608NewGuiPart143.Font = Enum.Font.SourceSans
1609NewGuiPart143.FontSize = Enum.FontSize.Size18
1610NewGuiPart143.Text = "Save"
1611
1612NewGuiPart144.Name = "FileName"
1613NewGuiPart144.Parent = NewGuiPart111
1614NewGuiPart144.BackgroundColor3 = Color3.new(0.941177, 0.941177, 0.941177)
1615NewGuiPart144.BackgroundTransparency = 0.60000002384186
1616NewGuiPart144.Position = UDim2.new(0, 0, 1, -105)
1617NewGuiPart144.Size = UDim2.new(1, 0, 0, 25)
1618NewGuiPart144.Font = Enum.Font.SourceSans
1619NewGuiPart144.FontSize = Enum.FontSize.Size18
1620NewGuiPart144.Text = "PlaceName"
1621NewGuiPart144.TextXAlignment = Enum.TextXAlignment.Left
1622
1623NewGuiPart145.Name = "Entry"
1624NewGuiPart145.Parent = NewGuiPart111
1625NewGuiPart145.BackgroundColor3 = Color3.new(1, 1, 1)
1626NewGuiPart145.BackgroundTransparency = 1
1627NewGuiPart145.Size = UDim2.new(1, 0, 0, 22)
1628NewGuiPart145.Visible = false
1629
1630NewGuiPart146.Name = "Change"
1631NewGuiPart146.Parent = NewGuiPart145
1632NewGuiPart146.BackgroundColor3 = Color3.new(1, 1, 1)
1633NewGuiPart146.BackgroundTransparency = 0.60000002384186
1634NewGuiPart146.Position = UDim2.new(0, 10, 0, 1)
1635NewGuiPart146.Size = UDim2.new(0, 20, 0, 20)
1636NewGuiPart146.ZIndex = 2
1637NewGuiPart146.Font = Enum.Font.SourceSans
1638NewGuiPart146.FontSize = Enum.FontSize.Size18
1639NewGuiPart146.Text = ""
1640NewGuiPart146.TextColor3 = Color3.new(1, 1, 1)
1641
1642NewGuiPart147.Name = "enabled"
1643NewGuiPart147.Parent = NewGuiPart146
1644NewGuiPart147.BackgroundColor3 = Color3.new(0.380392, 0.380392, 0.380392)
1645NewGuiPart147.BackgroundTransparency = 0.40000000596046
1646NewGuiPart147.BorderSizePixel = 0
1647NewGuiPart147.Position = UDim2.new(0, 3, 0, 3)
1648NewGuiPart147.Size = UDim2.new(0, 14, 0, 14)
1649NewGuiPart147.Font = Enum.Font.SourceSans
1650NewGuiPart147.FontSize = Enum.FontSize.Size14
1651NewGuiPart147.Text = ""
1652
1653NewGuiPart148.Name = "Info"
1654NewGuiPart148.Parent = NewGuiPart145
1655NewGuiPart148.BackgroundTransparency = 1
1656NewGuiPart148.Position = UDim2.new(0, 40, 0, 0)
1657NewGuiPart148.Size = UDim2.new(1, -40, 0, 22)
1658NewGuiPart148.Font = Enum.Font.SourceSans
1659NewGuiPart148.FontSize = Enum.FontSize.Size18
1660NewGuiPart148.Text = "Workspace"
1661NewGuiPart148.TextColor3 = Color3.new(0, 0, 0)
1662NewGuiPart148.TextXAlignment = Enum.TextXAlignment.Left
1663
1664NewGuiPart149.Name = "RemoteDebugWindow"
1665NewGuiPart149.Parent = NewGuiPart1
1666NewGuiPart149.BackgroundColor3 = Color3.new(1, 1, 1)
1667NewGuiPart149.BackgroundTransparency = 0.10000000149012
1668NewGuiPart149.BorderColor3 = Color3.new(0.74902, 0.74902, 0.74902)
1669NewGuiPart149.Position = UDim2.new(1, 0, 0, 0)
1670NewGuiPart149.Size = UDim2.new(0, 300, 1, 0)
1671
1672NewGuiPart161.Name = "GetSetting"
1673NewGuiPart161.Parent = NewGuiPart149
1674NewGuiPart161.Archivable = true
1675
1676NewGuiPart150.Name = "Header"
1677NewGuiPart150.Parent = NewGuiPart149
1678NewGuiPart150.BackgroundColor3 = Color3.new(0.913726, 0.913726, 0.913726)
1679NewGuiPart150.BorderColor3 = Color3.new(0.584314, 0.584314, 0.584314)
1680NewGuiPart150.Size = UDim2.new(1, 0, 0, 17)
1681
1682NewGuiPart151.Parent = NewGuiPart150
1683NewGuiPart151.BackgroundTransparency = 1
1684NewGuiPart151.Position = UDim2.new(0, 4, 0, 0)
1685NewGuiPart151.Size = UDim2.new(1, -4, 1, 0)
1686NewGuiPart151.Font = Enum.Font.SourceSans
1687NewGuiPart151.FontSize = Enum.FontSize.Size14
1688NewGuiPart151.Text = "Remote Debugger"
1689NewGuiPart151.TextColor3 = Color3.new(0, 0, 0)
1690NewGuiPart151.TextXAlignment = Enum.TextXAlignment.Left
1691
1692NewGuiPart152.Name = "Desc"
1693NewGuiPart152.Parent = NewGuiPart149
1694NewGuiPart152.BackgroundColor3 = Color3.new(1, 1, 1)
1695NewGuiPart152.BackgroundTransparency = 1
1696NewGuiPart152.Position = UDim2.new(0, 0, 0, 20)
1697NewGuiPart152.Size = UDim2.new(1, 0, 0, 40)
1698NewGuiPart152.Font = Enum.Font.SourceSans
1699NewGuiPart152.FontSize = Enum.FontSize.Size32
1700NewGuiPart152.Text = "Have fun with remotes"
1701NewGuiPart152.TextWrapped = true
1702return NewGuiPart1
1703end
1704local D_E_X = CreateGui()
1705D_E_X.Parent = game.Players.LocalPlayer.PlayerGui
1706spawn(function()
1707 local Gui = D_E_X
1708
1709
1710local IntroFrame = Gui:WaitForChild("IntroFrame")
1711
1712local SideMenu = Gui:WaitForChild("SideMenu")
1713local OpenToggleButton = Gui:WaitForChild("Toggle")
1714local CloseToggleButton = SideMenu:WaitForChild("Toggle")
1715local OpenScriptEditorButton = SideMenu:WaitForChild("OpenScriptEditor")
1716
1717local ScriptEditor = Gui:WaitForChild("ScriptEditor")
1718
1719local SlideOut = SideMenu:WaitForChild("SlideOut")
1720local SlideFrame = SlideOut:WaitForChild("SlideFrame")
1721local Slant = SideMenu:WaitForChild("Slant")
1722
1723local ExplorerButton = SlideFrame:WaitForChild("Explorer")
1724local SettingsButton = SlideFrame:WaitForChild("Settings")
1725
1726local SelectionBox = Instance.new("SelectionBox")
1727SelectionBox.Parent = Gui
1728
1729local ExplorerPanel = Gui:WaitForChild("ExplorerPanel")
1730local PropertiesFrame = Gui:WaitForChild("PropertiesFrame")
1731local SaveMapWindow = Gui:WaitForChild("SaveMapWindow")
1732local RemoteDebugWindow = Gui:WaitForChild("RemoteDebugWindow")
1733
1734local SettingsPanel = Gui:WaitForChild("SettingsPanel")
1735local SettingsListener = SettingsPanel:WaitForChild("GetSetting")
1736local SettingTemplate = SettingsPanel:WaitForChild("SettingTemplate")
1737local SettingList = SettingsPanel:WaitForChild("SettingList")
1738
1739local SaveMapCopyList = SaveMapWindow:WaitForChild("CopyList")
1740local SaveMapSettingFrame = SaveMapWindow:WaitForChild("MapSettings")
1741local SaveMapName = SaveMapWindow:WaitForChild("FileName")
1742local SaveMapButton = SaveMapWindow:WaitForChild("Save")
1743local SaveMapCopyTemplate = SaveMapWindow:WaitForChild("Entry")
1744local SaveMapSettings = {
1745 CopyWhat = {
1746 Workspace = true,
1747 Lighting = true,
1748 ReplicatedStorage = true,
1749 ReplicatedFirst = true,
1750 StarterPack = true,
1751 StarterGui = true,
1752 StarterPlayer = true
1753 },
1754 SaveScripts = true,
1755 SaveTerrain = true,
1756 LightingProperties = true,
1757 CameraInstances = true
1758}
1759
1760local SelectionChanged = ExplorerPanel:WaitForChild("SelectionChanged")
1761local GetSelection = ExplorerPanel:WaitForChild("GetSelection")
1762local SetSelection = ExplorerPanel:WaitForChild("SetSelection")
1763
1764local Player = game:GetService("Players").LocalPlayer
1765local Mouse = Player:GetMouse()
1766
1767local CurrentWindow = "Nothing c:"
1768local Windows = {
1769 Explorer = {
1770 ExplorerPanel,
1771 PropertiesFrame
1772 },
1773 Settings = {SettingsPanel},
1774 SaveMap = {SaveMapWindow},
1775 Remotes = {RemoteDebugWindow}
1776}
1777
1778function switchWindows(wName,over)
1779 if CurrentWindow == wName and not over then return end
1780
1781 local count = 0
1782
1783 for i,v in pairs(Windows) do
1784 count = 0
1785 if i ~= wName then
1786 for _,c in pairs(v) do c:TweenPosition(UDim2.new(1, 30, count * 0.5, count * 36), "Out", "Quad", 0.5, true) count = count + 1 end
1787 end
1788 end
1789
1790 count = 0
1791
1792 if Windows[wName] then
1793 for _,c in pairs(Windows[wName]) do c:TweenPosition(UDim2.new(1, -300, count * 0.5, count * 36), "Out", "Quad", 0.5, true) count = count + 1 end
1794 end
1795
1796 if wName ~= "Nothing c:" then
1797 CurrentWindow = wName
1798 for i,v in pairs(SlideFrame:GetChildren()) do
1799 v.BackgroundTransparency = 1
1800 v.Icon.ImageColor3 = Color3.new(70/255, 70/255, 70/255)
1801 end
1802 if SlideFrame:FindFirstChild(wName) then
1803 SlideFrame[wName].BackgroundTransparency = 0.5
1804 SlideFrame[wName].Icon.ImageColor3 = Color3.new(0,0,0)
1805 end
1806 end
1807end
1808
1809function toggleDex(on)
1810 if on then
1811 SideMenu:TweenPosition(UDim2.new(1, -330, 0, 0), "Out", "Quad", 0.5, true)
1812 OpenToggleButton:TweenPosition(UDim2.new(1,0,0,0), "Out", "Quad", 0.5, true)
1813 switchWindows(CurrentWindow,true)
1814 else
1815 SideMenu:TweenPosition(UDim2.new(1, 0, 0, 0), "Out", "Quad", 0.5, true)
1816 OpenToggleButton:TweenPosition(UDim2.new(1,-30,0,0), "Out", "Quad", 0.5, true)
1817 switchWindows("Nothing c:")
1818 end
1819end
1820
1821local Settings = {
1822 ClickSelect = false,
1823 SelBox = false,
1824 ClearProps = false,
1825 SelectUngrouped = true,
1826 SaveInstanceScripts = true
1827}
1828
1829function ReturnSetting(set)
1830 if set == "ClearProps" then
1831 return Settings.ClearProps
1832 elseif set == "SelectUngrouped" then
1833 return Settings.SelectUngrouped
1834 end
1835end
1836
1837OpenToggleButton.MouseButton1Up:connect(function()
1838 toggleDex(true)
1839end)
1840
1841OpenScriptEditorButton.MouseButton1Up:connect(function()
1842 if OpenScriptEditorButton.Active then
1843 ScriptEditor.Visible = true
1844 end
1845end)
1846
1847CloseToggleButton.MouseButton1Up:connect(function()
1848 if CloseToggleButton.Active then
1849 toggleDex(false)
1850 end
1851end)
1852
1853for i,v in pairs(SlideFrame:GetChildren()) do
1854 v.MouseButton1Click:connect(function()
1855 switchWindows(v.Name)
1856 end)
1857
1858 v.MouseEnter:connect(function()v.BackgroundTransparency = 0.5 end)
1859 v.MouseLeave:connect(function()if CurrentWindow~=v.Name then v.BackgroundTransparency = 1 end end)
1860end
1861
1862
1863function createSetting(name,interName,defaultOn)
1864 local newSetting = SettingTemplate:Clone()
1865 newSetting.Position = UDim2.new(0,0,0,#SettingList:GetChildren() * 60)
1866 newSetting.SName.Text = name
1867
1868 local function toggle(on)
1869 if on then
1870 newSetting.Change.Bar:TweenPosition(UDim2.new(0,32,0,-2),Enum.EasingDirection.Out,Enum.EasingStyle.Quart,0.25,true)
1871 newSetting.Change.OnBar:TweenSize(UDim2.new(0,34,0,15),Enum.EasingDirection.Out,Enum.EasingStyle.Quart,0.25,true)
1872 newSetting.Status.Text = "On"
1873 Settings[interName] = true
1874 else
1875 newSetting.Change.Bar:TweenPosition(UDim2.new(0,-2,0,-2),Enum.EasingDirection.Out,Enum.EasingStyle.Quart,0.25,true)
1876 newSetting.Change.OnBar:TweenSize(UDim2.new(0,0,0,15),Enum.EasingDirection.Out,Enum.EasingStyle.Quart,0.25,true)
1877 newSetting.Status.Text = "Off"
1878 Settings[interName] = false
1879 end
1880 end
1881
1882 newSetting.Change.MouseButton1Click:connect(function()
1883 toggle(not Settings[interName])
1884 end)
1885
1886 newSetting.Visible = true
1887 newSetting.Parent = SettingList
1888
1889 if defaultOn then
1890 toggle(true)
1891 end
1892end
1893
1894createSetting("Click part to select","ClickSelect",false)
1895createSetting("Selection Box","SelBox",false)
1896createSetting("Clear property value on focus","ClearProps",false)
1897createSetting("Select ungrouped models","SelectUngrouped",true)
1898createSetting("SaveInstance decompiles scripts","SaveInstanceScripts",true)
1899
1900local function getSelection()
1901 local t = GetSelection:Invoke()
1902 if t and #t > 0 then
1903 return t[1]
1904 else
1905 return nil
1906 end
1907end
1908
1909Mouse.Button1Down:connect(function()
1910 if CurrentWindow == "Explorer" and Settings.ClickSelect then
1911 local target = Mouse.Target
1912 if target then
1913 SetSelection:Invoke({target})
1914 end
1915 end
1916end)
1917
1918SelectionChanged.Event:connect(function()
1919 if Settings.SelBox then
1920 local success,err = pcall(function()
1921 local selection = getSelection()
1922 SelectionBox.Adornee = selection
1923 end)
1924 if err then
1925 SelectionBox.Adornee = nil
1926 end
1927 end
1928end)
1929
1930SettingsListener.OnInvoke = ReturnSetting
1931
1932-- Map Copier
1933
1934function createMapSetting(obj,interName,defaultOn)
1935 local function toggle(on)
1936 if on then
1937 obj.Change.Bar:TweenPosition(UDim2.new(0,32,0,-2),Enum.EasingDirection.Out,Enum.EasingStyle.Quart,0.25,true)
1938 obj.Change.OnBar:TweenSize(UDim2.new(0,34,0,15),Enum.EasingDirection.Out,Enum.EasingStyle.Quart,0.25,true)
1939 obj.Status.Text = "On"
1940 SaveMapSettings[interName] = true
1941 else
1942 obj.Change.Bar:TweenPosition(UDim2.new(0,-2,0,-2),Enum.EasingDirection.Out,Enum.EasingStyle.Quart,0.25,true)
1943 obj.Change.OnBar:TweenSize(UDim2.new(0,0,0,15),Enum.EasingDirection.Out,Enum.EasingStyle.Quart,0.25,true)
1944 obj.Status.Text = "Off"
1945 SaveMapSettings[interName] = false
1946 end
1947 end
1948
1949 obj.Change.MouseButton1Click:connect(function()
1950 toggle(not SaveMapSettings[interName])
1951 end)
1952
1953 obj.Visible = true
1954 obj.Parent = SaveMapSettingFrame
1955
1956 if defaultOn then
1957 toggle(true)
1958 end
1959end
1960
1961function createCopyWhatSetting(serv)
1962 if SaveMapSettings.CopyWhat[serv] then
1963 local newSetting = SaveMapCopyTemplate:Clone()
1964 newSetting.Position = UDim2.new(0,0,0,#SaveMapCopyList:GetChildren() * 22 + 5)
1965 newSetting.Info.Text = serv
1966
1967 local function toggle(on)
1968 if on then
1969 newSetting.Change.enabled.Visible = true
1970 SaveMapSettings.CopyWhat[serv] = true
1971 else
1972 newSetting.Change.enabled.Visible = false
1973 SaveMapSettings.CopyWhat[serv] = false
1974 end
1975 end
1976
1977 newSetting.Change.MouseButton1Click:connect(function()
1978 toggle(not SaveMapSettings.CopyWhat[serv])
1979 end)
1980
1981 newSetting.Visible = true
1982 newSetting.Parent = SaveMapCopyList
1983 end
1984end
1985
1986createMapSetting(SaveMapSettingFrame.Scripts,"SaveScripts",true)
1987createMapSetting(SaveMapSettingFrame.Terrain,"SaveTerrain",true)
1988createMapSetting(SaveMapSettingFrame.Lighting,"LightingProperties",true)
1989createMapSetting(SaveMapSettingFrame.CameraInstances,"CameraInstances",true)
1990
1991createCopyWhatSetting("Workspace")
1992createCopyWhatSetting("Lighting")
1993createCopyWhatSetting("ReplicatedStorage")
1994createCopyWhatSetting("ReplicatedFirst")
1995createCopyWhatSetting("StarterPack")
1996createCopyWhatSetting("StarterGui")
1997createCopyWhatSetting("StarterPlayer")
1998
1999SaveMapName.Text = tostring(game.PlaceId).."MapCopy"
2000
2001SaveMapButton.MouseButton1Click:connect(function()
2002 local copyWhat = {}
2003
2004 local copyGroup = Instance.new("Model",game.ReplicatedStorage)
2005
2006 local copyScripts = SaveMapSettings.SaveScripts
2007
2008 local copyTerrain = SaveMapSettings.SaveTerrain
2009
2010 local lightingProperties = SaveMapSettings.LightingProperties
2011
2012 local cameraInstances = SaveMapSettings.CameraInstances
2013
2014 -----------------------------------------------------------------------------------
2015
2016 for i,v in pairs(SaveMapSettings.CopyWhat) do
2017 if v then
2018 table.insert(copyWhat,i)
2019 end
2020 end
2021
2022 local consoleFunc = printconsole or writeconsole
2023
2024 if consoleFunc then
2025 consoleFunc("Raspberry Pi's place copier loaded.")
2026 consoleFunc("Copying map of game "..tostring(game.PlaceId)..".")
2027 end
2028
2029 function archivable(root)
2030 for i,v in pairs(root:GetChildren()) do
2031 if not game.Players:GetPlayerFromCharacter(v) then
2032 v.Archivable = true
2033 archivable(v)
2034 end
2035 end
2036 end
2037
2038 function decompileS(root)
2039 for i,v in pairs(root:GetChildren()) do
2040 pcall(function()
2041 if v:IsA("LocalScript") then
2042 local isDisabled = v.Disabled
2043 v.Disabled = true
2044 v.Source = decompile(v)
2045 v.Disabled = isDisabled
2046
2047 if v.Source == "" then
2048 if consoleFunc then consoleFunc("LocalScript "..v.Name.." had a problem decompiling.") end
2049 else
2050 if consoleFunc then consoleFunc("LocalScript "..v.Name.." decompiled.") end
2051 end
2052 elseif v:IsA("ModuleScript") then
2053 v.Source = decompile(v)
2054
2055 if v.Source == "" then
2056 if consoleFunc then consoleFunc("ModuleScript "..v.Name.." had a problem decompiling.") end
2057 else
2058 if consoleFunc then consoleFunc("ModuleScript "..v.Name.." decompiled.") end
2059 end
2060 end
2061 end)
2062 decompileS(v)
2063 end
2064 end
2065
2066 for i,v in pairs(copyWhat) do archivable(game[v]) end
2067
2068 for j,obj in pairs(copyWhat) do
2069 if obj ~= "StarterPlayer" then
2070 local newFolder = Instance.new("Folder",copyGroup)
2071 newFolder.Name = obj
2072 for i,v in pairs(game[obj]:GetChildren()) do
2073 if v ~= copyGroup then
2074 pcall(function()
2075 v:Clone().Parent = newFolder
2076 end)
2077 end
2078 end
2079 else
2080 local newFolder = Instance.new("Model",copyGroup)
2081 newFolder.Name = "StarterPlayer"
2082 for i,v in pairs(game[obj]:GetChildren()) do
2083 local newObj = Instance.new("Folder",newFolder)
2084 newObj.Name = v.Name
2085 for _,c in pairs(v:GetChildren()) do
2086 if c.Name ~= "ControlScript" and c.Name ~= "CameraScript" then
2087 c:Clone().Parent = newObj
2088 end
2089 end
2090 end
2091 end
2092 end
2093
2094 if workspace.CurrentCamera and cameraInstances then
2095 local cameraFolder = Instance.new("Model",copyGroup)
2096 cameraFolder.Name = "CameraItems"
2097 for i,v in pairs(workspace.CurrentCamera:GetChildren()) do v:Clone().Parent = cameraFolder end
2098 end
2099
2100 if copyTerrain then
2101 local myTerrain = workspace.Terrain:CopyRegion(workspace.Terrain.MaxExtents)
2102 myTerrain.Parent = copyGroup
2103 end
2104
2105 function saveProp(obj,prop,par)
2106 local myProp = obj[prop]
2107 if type(myProp) == "boolean" then
2108 local newProp = Instance.new("BoolValue",par)
2109 newProp.Name = prop
2110 newProp.Value = myProp
2111 elseif type(myProp) == "number" then
2112 local newProp = Instance.new("IntValue",par)
2113 newProp.Name = prop
2114 newProp.Value = myProp
2115 elseif type(myProp) == "string" then
2116 local newProp = Instance.new("StringValue",par)
2117 newProp.Name = prop
2118 newProp.Value = myProp
2119 elseif type(myProp) == "userdata" then -- Assume Color3
2120 pcall(function()
2121 local newProp = Instance.new("Color3Value",par)
2122 newProp.Name = prop
2123 newProp.Value = myProp
2124 end)
2125 end
2126 end
2127
2128 if lightingProperties then
2129 local lightingProps = Instance.new("Model",copyGroup)
2130 lightingProps.Name = "LightingProperties"
2131
2132 saveProp(game.Lighting,"Ambient",lightingProps)
2133 saveProp(game.Lighting,"Brightness",lightingProps)
2134 saveProp(game.Lighting,"ColorShift_Bottom",lightingProps)
2135 saveProp(game.Lighting,"ColorShift_Top",lightingProps)
2136 saveProp(game.Lighting,"GlobalShadows",lightingProps)
2137 saveProp(game.Lighting,"OutdoorAmbient",lightingProps)
2138 saveProp(game.Lighting,"Outlines",lightingProps)
2139 saveProp(game.Lighting,"GeographicLatitude",lightingProps)
2140 saveProp(game.Lighting,"TimeOfDay",lightingProps)
2141 saveProp(game.Lighting,"FogColor",lightingProps)
2142 saveProp(game.Lighting,"FogEnd",lightingProps)
2143 saveProp(game.Lighting,"FogStart",lightingProps)
2144 end
2145
2146 if decompile and copyScripts then
2147 decompileS(copyGroup)
2148 end
2149
2150 if SaveInstance then
2151 SaveInstance(copyGroup,SaveMapName.Text..".rbxm")
2152 elseif saveinstance then
2153 saveinstance(getelysianpath()..SaveMapName.Text..".rbxm",copyGroup)
2154 end
2155 --print("Saved!")
2156 if consoleFunc then
2157 consoleFunc("The map has been copied.")
2158 end
2159 SaveMapButton.Text = "The map has been saved"
2160 wait(5)
2161 SaveMapButton.Text = "Save"
2162end)
2163
2164-- End Copier
2165
2166wait()
2167
2168IntroFrame:TweenPosition(UDim2.new(1,-300,0,0),Enum.EasingDirection.Out,Enum.EasingStyle.Quart,0.5,true)
2169
2170switchWindows("Explorer")
2171
2172wait(1)
2173
2174SideMenu.Visible = true
2175
2176for i = 0,1,0.1 do
2177 IntroFrame.BackgroundTransparency = i
2178 IntroFrame.Main.BackgroundTransparency = i
2179 IntroFrame.Slant.ImageTransparency = i
2180 IntroFrame.Title.TextTransparency = i
2181 IntroFrame.Version.TextTransparency = i
2182 IntroFrame.Creator.TextTransparency = i
2183 wait()
2184end
2185
2186IntroFrame.Visible = false
2187
2188SlideFrame:TweenPosition(UDim2.new(0,0,0,0),Enum.EasingDirection.Out,Enum.EasingStyle.Quart,0.5,true)
2189OpenScriptEditorButton:TweenPosition(UDim2.new(0,0,0,180),Enum.EasingDirection.Out,Enum.EasingStyle.Quart,0.5,true)
2190CloseToggleButton:TweenPosition(UDim2.new(0,0,0,210),Enum.EasingDirection.Out,Enum.EasingStyle.Quart,0.5,true)
2191Slant:TweenPosition(UDim2.new(0,0,0,240),Enum.EasingDirection.Out,Enum.EasingStyle.Quart,0.5,true)
2192
2193wait(0.5)
2194
2195for i = 1,0,-0.1 do
2196 OpenScriptEditorButton.Icon.ImageTransparency = i
2197 CloseToggleButton.TextTransparency = i
2198 wait()
2199end
2200
2201CloseToggleButton.Active = true
2202CloseToggleButton.AutoButtonColor = true
2203
2204OpenScriptEditorButton.Active = true
2205OpenScriptEditorButton.AutoButtonColor = true
2206end)
2207spawn(function()
2208 -- initial states
2209local Option = {
2210 -- can modify object parents in the hierarchy
2211 Modifiable = false;
2212 -- can select objects
2213 Selectable = true;
2214}
2215
2216-- MERELY
2217
2218Option.Modifiable = true
2219
2220-- END MERELY
2221
2222-- general size of GUI objects, in pixels
2223local GUI_SIZE = 16
2224-- padding between items within each entry
2225local ENTRY_PADDING = 1
2226-- padding between each entry
2227local ENTRY_MARGIN = 1
2228
2229local Input = game:GetService("UserInputService")
2230local HoldingCtrl = false
2231local HoldingShift = false
2232
2233--[[
2234
2235# Explorer Panel
2236
2237A GUI panel that displays the game hierarchy.
2238
2239
2240## Selection Bindables
2241
2242- `Function GetSelection ( )`
2243
2244 Returns an array of objects representing the objects currently
2245 selected in the panel.
2246
2247- `Function SetSelection ( Objects selection )`
2248
2249 Sets the objects that are selected in the panel. `selection` is an array
2250 of objects.
2251
2252- `Event SelectionChanged ( )`
2253
2254 Fired after the selection changes.
2255
2256
2257## Option Bindables
2258
2259- `Function GetOption ( string optionName )`
2260
2261 If `optionName` is given, returns the value of that option. Otherwise,
2262 returns a table of options and their current values.
2263
2264- `Function SetOption ( string optionName, bool value )`
2265
2266 Sets `optionName` to `value`.
2267
2268 Options:
2269
2270 - Modifiable
2271
2272 Whether objects can be modified by the panel.
2273
2274 Note that modifying objects depends on being able to select them. If
2275 Selectable is false, then Actions will not be available. Reparenting
2276 is still possible, but only for the dragged object.
2277
2278 - Selectable
2279
2280 Whether objects can be selected.
2281
2282 If Modifiable is false, then left-clicking will perform a drag
2283 selection.
2284
2285## Updates
2286
2287- 2013-09-18
2288 - Fixed explorer icons to match studio explorer.
2289
2290- 2013-09-14
2291 - Added GetOption and SetOption bindables.
2292 - Option: Modifiable; sets whether objects can be modified by the panel.
2293 - Option: Selectable; sets whether objects can be selected.
2294 - Slight modification to left-click selection behavior.
2295 - Improved layout and scaling.
2296
2297- 2013-09-13
2298 - Added drag to reparent objects.
2299 - Left-click to select/deselect object.
2300 - Left-click and drag unselected object to reparent single object.
2301 - Left-click and drag selected object to move reparent entire selection.
2302 - Right-click while dragging to cancel.
2303
2304- 2013-09-11
2305 - Added explorer panel header with actions.
2306 - Added Cut action.
2307 - Added Copy action.
2308 - Added Paste action.
2309 - Added Delete action.
2310 - Added drag selection.
2311 - Left-click: Add to selection on drag.
2312 - Right-click: Add to or remove from selection on drag.
2313 - Ensured SelectionChanged fires only when the selection actually changes.
2314 - Added documentation and change log.
2315 - Fixed thread issue.
2316
2317- 2013-09-09
2318 - Added basic multi-selection.
2319 - Left-click to set selection.
2320 - Right-click to add to or remove from selection.
2321 - Removed "Selection" ObjectValue.
2322 - Added GetSelection BindableFunction.
2323 - Added SetSelection BindableFunction.
2324 - Added SelectionChanged BindableEvent.
2325 - Changed font to SourceSans.
2326
2327- 2013-08-31
2328 - Improved GUI sizing based off of `GUI_SIZE` constant.
2329 - Automatic font size detection.
2330
2331- 2013-08-27
2332 - Initial explorer panel.
2333
2334
2335## Todo
2336
2337- Sorting
2338 - by ExplorerOrder
2339 - by children
2340 - by name
2341- Drag objects to reparent
2342
2343]]
2344
2345local ENTRY_SIZE = GUI_SIZE + ENTRY_PADDING*2
2346local ENTRY_BOUND = ENTRY_SIZE + ENTRY_MARGIN
2347local HEADER_SIZE = ENTRY_SIZE*2
2348
2349local FONT = 'SourceSans'
2350local FONT_SIZE do
2351 local size = {8,9,10,11,12,14,18,24,36,48}
2352 local s
2353 local n = math.huge
2354 for i = 1,#size do
2355 if size[i] <= GUI_SIZE then
2356 FONT_SIZE = i - 1
2357 end
2358 end
2359end
2360
2361local GuiColor = {
2362 Background = Color3.new(233/255, 233/255, 233/255);
2363 Border = Color3.new(149/255, 149/255, 149/255);
2364 Selected = Color3.new( 96/255, 140/255, 211/255);
2365 BorderSelected = Color3.new( 86/255, 125/255, 188/255);
2366 Text = Color3.new( 0/255, 0/255, 0/255);
2367 TextDisabled = Color3.new(128/255, 128/255, 128/255);
2368 TextSelected = Color3.new(255/255, 255/255, 255/255);
2369 Button = Color3.new(221/255, 221/255, 221/255);
2370 ButtonBorder = Color3.new(149/255, 149/255, 149/255);
2371 ButtonSelected = Color3.new(255/255, 0/255, 0/255);
2372 Field = Color3.new(255/255, 255/255, 255/255);
2373 FieldBorder = Color3.new(191/255, 191/255, 191/255);
2374 TitleBackground = Color3.new(178/255, 178/255, 178/255);
2375}
2376
2377----------------------------------------------------------------
2378----------------------------------------------------------------
2379----------------------------------------------------------------
2380----------------------------------------------------------------
2381---- Icon map constants
2382
2383local MAP_ID = 483448923
2384
2385-- Indices based on implementation of Icon function.
2386local ACTION_CUT = 160
2387local ACTION_COPY = 161
2388local ACTION_PASTE = 162
2389local ACTION_DELETE = 163
2390local ACTION_SORT = 164
2391local ACTION_CUT_OVER = 174
2392local ACTION_COPY_OVER = 175
2393local ACTION_PASTE_OVER = 176
2394local ACTION_DELETE_OVER = 177
2395local ACTION_SORT_OVER = 178
2396local ACTION_EDITQUICKACCESS = 190
2397local ACTION_FREEZE = 188
2398local ACTION_STARRED = 189
2399local ACTION_ADDSTAR = 184
2400local ACTION_ADDSTAR_OVER = 187
2401
2402local NODE_COLLAPSED = 165
2403local NODE_EXPANDED = 166
2404local NODE_COLLAPSED_OVER = 179
2405local NODE_EXPANDED_OVER = 180
2406
2407local ExplorerIndex = {
2408 ["Accessory"] = 32;
2409 ["Accoutrement"] = 32;
2410 ["AdService"] = 73;
2411 ["Animation"] = 60;
2412 ["AnimationController"] = 60;
2413 ["AnimationTrack"] = 60;
2414 ["Animator"] = 60;
2415 ["ArcHandles"] = 56;
2416 ["AssetService"] = 72;
2417 ["Attachment"] = 34;
2418 ["Backpack"] = 20;
2419 ["BadgeService"] = 75;
2420 ["BallSocketConstraint"] = 89;
2421 ["BillboardGui"] = 64;
2422 ["BinaryStringValue"] = 4;
2423 ["BindableEvent"] = 67;
2424 ["BindableFunction"] = 66;
2425 ["BlockMesh"] = 8;
2426 ["BloomEffect"] = 90;
2427 ["BlurEffect"] = 90;
2428 ["BodyAngularVelocity"] = 14;
2429 ["BodyForce"] = 14;
2430 ["BodyGyro"] = 14;
2431 ["BodyPosition"] = 14;
2432 ["BodyThrust"] = 14;
2433 ["BodyVelocity"] = 14;
2434 ["BoolValue"] = 4;
2435 ["BoxHandleAdornment"] = 54;
2436 ["BrickColorValue"] = 4;
2437 ["Camera"] = 5;
2438 ["CFrameValue"] = 4;
2439 ["CharacterMesh"] = 60;
2440 ["Chat"] = 33;
2441 ["ClickDetector"] = 41;
2442 ["CollectionService"] = 30;
2443 ["Color3Value"] = 4;
2444 ["ColorCorrectionEffect"] = 90;
2445 ["ConeHandleAdornment"] = 54;
2446 ["Configuration"] = 58;
2447 ["ContentProvider"] = 72;
2448 ["ContextActionService"] = 41;
2449 ["CoreGui"] = 46;
2450 ["CoreScript"] = 18;
2451 ["CornerWedgePart"] = 1;
2452 ["CustomEvent"] = 4;
2453 ["CustomEventReceiver"] = 4;
2454 ["CylinderHandleAdornment"] = 54;
2455 ["CylinderMesh"] = 8;
2456 ["CylindricalConstraint"] = 89;
2457 ["Debris"] = 30;
2458 ["Decal"] = 7;
2459 ["Dialog"] = 62;
2460 ["DialogChoice"] = 63;
2461 ["DoubleConstrainedValue"] = 4;
2462 ["Explosion"] = 36;
2463 ["FileMesh"] = 8;
2464 ["Fire"] = 61;
2465 ["Flag"] = 38;
2466 ["FlagStand"] = 39;
2467 ["FloorWire"] = 4;
2468 ["Folder"] = 70;
2469 ["ForceField"] = 37;
2470 ["Frame"] = 48;
2471 ["GamePassService"] = 19;
2472 ["Glue"] = 34;
2473 ["GuiButton"] = 52;
2474 ["GuiMain"] = 47;
2475 ["GuiService"] = 47;
2476 ["Handles"] = 53;
2477 ["HapticService"] = 84;
2478 ["Hat"] = 45;
2479 ["HingeConstraint"] = 89;
2480 ["Hint"] = 33;
2481 ["HopperBin"] = 22;
2482 ["HttpService"] = 76;
2483 ["Humanoid"] = 9;
2484 ["ImageButton"] = 52;
2485 ["ImageLabel"] = 49;
2486 ["InsertService"] = 72;
2487 ["IntConstrainedValue"] = 4;
2488 ["IntValue"] = 4;
2489 ["JointInstance"] = 34;
2490 ["JointsService"] = 34;
2491 ["Keyframe"] = 60;
2492 ["KeyframeSequence"] = 60;
2493 ["KeyframeSequenceProvider"] = 60;
2494 ["Lighting"] = 13;
2495 ["LineHandleAdornment"] = 54;
2496 ["LocalScript"] = 18;
2497 ["LogService"] = 87;
2498 ["MarketplaceService"] = 46;
2499 ["Message"] = 33;
2500 ["Model"] = 2;
2501 ["ModuleScript"] = 71;
2502 ["Motor"] = 34;
2503 ["Motor6D"] = 34;
2504 ["MoveToConstraint"] = 89;
2505 ["NegateOperation"] = 78;
2506 ["NetworkClient"] = 16;
2507 ["NetworkReplicator"] = 29;
2508 ["NetworkServer"] = 15;
2509 ["NumberValue"] = 4;
2510 ["ObjectValue"] = 4;
2511 ["Pants"] = 44;
2512 ["ParallelRampPart"] = 1;
2513 ["Part"] = 1;
2514 ["ParticleEmitter"] = 69;
2515 ["PartPairLasso"] = 57;
2516 ["PathfindingService"] = 37;
2517 ["Platform"] = 35;
2518 ["Player"] = 12;
2519 ["PlayerGui"] = 46;
2520 ["Players"] = 21;
2521 ["PlayerScripts"] = 82;
2522 ["PointLight"] = 13;
2523 ["PointsService"] = 83;
2524 ["Pose"] = 60;
2525 ["PrismaticConstraint"] = 89;
2526 ["PrismPart"] = 1;
2527 ["PyramidPart"] = 1;
2528 ["RayValue"] = 4;
2529 ["ReflectionMetadata"] = 86;
2530 ["ReflectionMetadataCallbacks"] = 86;
2531 ["ReflectionMetadataClass"] = 86;
2532 ["ReflectionMetadataClasses"] = 86;
2533 ["ReflectionMetadataEnum"] = 86;
2534 ["ReflectionMetadataEnumItem"] = 86;
2535 ["ReflectionMetadataEnums"] = 86;
2536 ["ReflectionMetadataEvents"] = 86;
2537 ["ReflectionMetadataFunctions"] = 86;
2538 ["ReflectionMetadataMember"] = 86;
2539 ["ReflectionMetadataProperties"] = 86;
2540 ["ReflectionMetadataYieldFunctions"] = 86;
2541 ["RemoteEvent"] = 80;
2542 ["RemoteFunction"] = 79;
2543 ["ReplicatedFirst"] = 72;
2544 ["ReplicatedStorage"] = 72;
2545 ["RightAngleRampPart"] = 1;
2546 ["RocketPropulsion"] = 14;
2547 ["RodConstraint"] = 89;
2548 ["RopeConstraint"] = 89;
2549 ["Rotate"] = 34;
2550 ["RotateP"] = 34;
2551 ["RotateV"] = 34;
2552 ["RunService"] = 66;
2553 ["ScreenGui"] = 47;
2554 ["Script"] = 6;
2555 ["ScrollingFrame"] = 48;
2556 ["Seat"] = 35;
2557 ["Selection"] = 55;
2558 ["SelectionBox"] = 54;
2559 ["SelectionPartLasso"] = 57;
2560 ["SelectionPointLasso"] = 57;
2561 ["SelectionSphere"] = 54;
2562 ["ServerScriptService"] = 0;
2563 ["ServerStorage"] = 74;
2564 ["Shirt"] = 43;
2565 ["ShirtGraphic"] = 40;
2566 ["SkateboardPlatform"] = 35;
2567 ["Sky"] = 28;
2568 ["SlidingBallConstraint"] = 89;
2569 ["Smoke"] = 59;
2570 ["Snap"] = 34;
2571 ["Sound"] = 11;
2572 ["SoundService"] = 31;
2573 ["Sparkles"] = 42;
2574 ["SpawnLocation"] = 25;
2575 ["SpecialMesh"] = 8;
2576 ["SphereHandleAdornment"] = 54;
2577 ["SpotLight"] = 13;
2578 ["SpringConstraint"] = 89;
2579 ["StarterCharacterScripts"] = 82;
2580 ["StarterGear"] = 20;
2581 ["StarterGui"] = 46;
2582 ["StarterPack"] = 20;
2583 ["StarterPlayer"] = 88;
2584 ["StarterPlayerScripts"] = 82;
2585 ["Status"] = 2;
2586 ["StringValue"] = 4;
2587 ["SunRaysEffect"] = 90;
2588 ["SurfaceGui"] = 64;
2589 ["SurfaceLight"] = 13;
2590 ["SurfaceSelection"] = 55;
2591 ["Team"] = 24;
2592 ["Teams"] = 23;
2593 ["TeleportService"] = 81;
2594 ["Terrain"] = 65;
2595 ["TerrainRegion"] = 65;
2596 ["TestService"] = 68;
2597 ["TextBox"] = 51;
2598 ["TextButton"] = 51;
2599 ["TextLabel"] = 50;
2600 ["Texture"] = 10;
2601 ["TextureTrail"] = 4;
2602 ["Tool"] = 17;
2603 ["TouchTransmitter"] = 37;
2604 ["TrussPart"] = 1;
2605 ["UnionOperation"] = 77;
2606 ["UserInputService"] = 84;
2607 ["Vector3Value"] = 4;
2608 ["VehicleSeat"] = 35;
2609 ["VelocityMotor"] = 34;
2610 ["WedgePart"] = 1;
2611 ["Weld"] = 34;
2612 ["Workspace"] = 19;
2613}
2614
2615----------------------------------------------------------------
2616----------------------------------------------------------------
2617----------------------------------------------------------------
2618----------------------------------------------------------------
2619----------------------------------------------------------------
2620
2621function Create(ty,data)
2622 local obj
2623 if type(ty) == 'string' then
2624 obj = Instance.new(ty)
2625 else
2626 obj = ty
2627 end
2628 for k, v in pairs(data) do
2629 if type(k) == 'number' then
2630 v.Parent = obj
2631 else
2632 obj[k] = v
2633 end
2634 end
2635 return obj
2636end
2637
2638local barActive = false
2639local activeOptions = {}
2640
2641function createDDown(dBut, callback,...)
2642 if barActive then
2643 for i,v in pairs(activeOptions) do
2644 v:Destroy()
2645 end
2646 activeOptions = {}
2647 barActive = false
2648 return
2649 else
2650 barActive = true
2651 end
2652 local slots = {...}
2653 local base = dBut
2654 for i,v in pairs(slots) do
2655 local newOption = base:Clone()
2656 newOption.ZIndex = 5
2657 newOption.Name = "Option "..tostring(i)
2658 newOption.Parent = base.Parent.Parent.Parent
2659 newOption.BackgroundTransparency = 0
2660 newOption.ZIndex = 2
2661 table.insert(activeOptions,newOption)
2662 newOption.Position = UDim2.new(-0.4, dBut.Position.X.Offset, dBut.Position.Y.Scale, dBut.Position.Y.Offset + (#activeOptions * dBut.Size.Y.Offset))
2663 newOption.Text = slots[i]
2664 newOption.MouseButton1Down:connect(function()
2665 dBut.Text = slots[i]
2666 callback(slots[i])
2667 for i,v in pairs(activeOptions) do
2668 v:Destroy()
2669 end
2670 activeOptions = {}
2671 barActive = false
2672 end)
2673 end
2674end
2675
2676-- Connects a function to an event such that it fires asynchronously
2677function Connect(event,func)
2678 return event:connect(function(...)
2679 local a = {...}
2680 spawn(function() func(unpack(a)) end)
2681 end)
2682end
2683
2684-- returns the ascendant ScreenGui of an object
2685function GetScreen(screen)
2686 if screen == nil then return nil end
2687 while not screen:IsA("ScreenGui") do
2688 screen = screen.Parent
2689 if screen == nil then return nil end
2690 end
2691 return screen
2692end
2693
2694do
2695 local ZIndexLock = {}
2696 -- Sets the ZIndex of an object and its descendants. Objects are locked so
2697 -- that SetZIndexOnChanged doesn't spawn multiple threads that set the
2698 -- ZIndex of the same object.
2699 function SetZIndex(object,z)
2700 if not ZIndexLock[object] then
2701 ZIndexLock[object] = true
2702 if object:IsA'GuiObject' then
2703 object.ZIndex = z
2704 end
2705 local children = object:GetChildren()
2706 for i = 1,#children do
2707 SetZIndex(children[i],z)
2708 end
2709 ZIndexLock[object] = nil
2710 end
2711 end
2712
2713 function SetZIndexOnChanged(object)
2714 return object.Changed:connect(function(p)
2715 if p == "ZIndex" then
2716 SetZIndex(object,object.ZIndex)
2717 end
2718 end)
2719 end
2720end
2721
2722---- IconMap ----
2723-- Image size: 256px x 256px
2724-- Icon size: 16px x 16px
2725-- Padding between each icon: 2px
2726-- Padding around image edge: 1px
2727-- Total icons: 14 x 14 (196)
2728local Icon do
2729 local iconMap = 'http://www.roblox.com/asset/?id=' .. MAP_ID
2730 game:GetService('ContentProvider'):Preload(iconMap)
2731 local iconDehash do
2732 -- 14 x 14, 0-based input, 0-based output
2733 local f=math.floor
2734 function iconDehash(h)
2735 return f(h/14%14),f(h%14)
2736 end
2737 end
2738
2739 function Icon(IconFrame,index)
2740 local row,col = iconDehash(index)
2741 local mapSize = Vector2.new(256,256)
2742 local pad,border = 2,1
2743 local iconSize = 16
2744
2745 local class = 'Frame'
2746 if type(IconFrame) == 'string' then
2747 class = IconFrame
2748 IconFrame = nil
2749 end
2750
2751 if not IconFrame then
2752 IconFrame = Create(class,{
2753 Name = "Icon";
2754 BackgroundTransparency = 1;
2755 ClipsDescendants = true;
2756 Create('ImageLabel',{
2757 Name = "IconMap";
2758 Active = false;
2759 BackgroundTransparency = 1;
2760 Image = iconMap;
2761 Size = UDim2.new(mapSize.x/iconSize,0,mapSize.y/iconSize,0);
2762 });
2763 })
2764 end
2765
2766 IconFrame.IconMap.Position = UDim2.new(-col - (pad*(col+1) + border)/iconSize,0,-row - (pad*(row+1) + border)/iconSize,0)
2767 return IconFrame
2768 end
2769end
2770
2771----------------------------------------------------------------
2772----------------------------------------------------------------
2773----------------------------------------------------------------
2774----------------------------------------------------------------
2775---- ScrollBar
2776do
2777 -- AutoButtonColor doesn't always reset properly
2778 local function ResetButtonColor(button)
2779 local active = button.Active
2780 button.Active = not active
2781 button.Active = active
2782 end
2783
2784 local function ArrowGraphic(size,dir,scaled,template)
2785 local Frame = Create('Frame',{
2786 Name = "Arrow Graphic";
2787 BorderSizePixel = 0;
2788 Size = UDim2.new(0,size,0,size);
2789 Transparency = 1;
2790 })
2791 if not template then
2792 template = Instance.new("Frame")
2793 template.BorderSizePixel = 0
2794 end
2795
2796 local transform
2797 if dir == nil or dir == 'Up' then
2798 function transform(p,s) return p,s end
2799 elseif dir == 'Down' then
2800 function transform(p,s) return UDim2.new(0,p.X.Offset,0,size-p.Y.Offset-1),s end
2801 elseif dir == 'Left' then
2802 function transform(p,s) return UDim2.new(0,p.Y.Offset,0,p.X.Offset),UDim2.new(0,s.Y.Offset,0,s.X.Offset) end
2803 elseif dir == 'Right' then
2804 function transform(p,s) return UDim2.new(0,size-p.Y.Offset-1,0,p.X.Offset),UDim2.new(0,s.Y.Offset,0,s.X.Offset) end
2805 end
2806
2807 local scale
2808 if scaled then
2809 function scale(p,s) return UDim2.new(p.X.Offset/size,0,p.Y.Offset/size,0),UDim2.new(s.X.Offset/size,0,s.Y.Offset/size,0) end
2810 else
2811 function scale(p,s) return p,s end
2812 end
2813
2814 local o = math.floor(size/4)
2815 if size%2 == 0 then
2816 local n = size/2-1
2817 for i = 0,n do
2818 local t = template:Clone()
2819 local p,s = scale(transform(
2820 UDim2.new(0,n-i,0,o+i),
2821 UDim2.new(0,(i+1)*2,0,1)
2822 ))
2823 t.Position = p
2824 t.Size = s
2825 t.Parent = Frame
2826 end
2827 else
2828 local n = (size-1)/2
2829 for i = 0,n do
2830 local t = template:Clone()
2831 local p,s = scale(transform(
2832 UDim2.new(0,n-i,0,o+i),
2833 UDim2.new(0,i*2+1,0,1)
2834 ))
2835 t.Position = p
2836 t.Size = s
2837 t.Parent = Frame
2838 end
2839 end
2840 if size%4 > 1 then
2841 local t = template:Clone()
2842 local p,s = scale(transform(
2843 UDim2.new(0,0,0,size-o-1),
2844 UDim2.new(0,size,0,1)
2845 ))
2846 t.Position = p
2847 t.Size = s
2848 t.Parent = Frame
2849 end
2850 return Frame
2851 end
2852
2853
2854 local function GripGraphic(size,dir,spacing,scaled,template)
2855 local Frame = Create('Frame',{
2856 Name = "Grip Graphic";
2857 BorderSizePixel = 0;
2858 Size = UDim2.new(0,size.x,0,size.y);
2859 Transparency = 1;
2860 })
2861 if not template then
2862 template = Instance.new("Frame")
2863 template.BorderSizePixel = 0
2864 end
2865
2866 spacing = spacing or 2
2867
2868 local scale
2869 if scaled then
2870 function scale(p) return UDim2.new(p.X.Offset/size.x,0,p.Y.Offset/size.y,0) end
2871 else
2872 function scale(p) return p end
2873 end
2874
2875 if dir == 'Vertical' then
2876 for i=0,size.x-1,spacing do
2877 local t = template:Clone()
2878 t.Size = scale(UDim2.new(0,1,0,size.y))
2879 t.Position = scale(UDim2.new(0,i,0,0))
2880 t.Parent = Frame
2881 end
2882 elseif dir == nil or dir == 'Horizontal' then
2883 for i=0,size.y-1,spacing do
2884 local t = template:Clone()
2885 t.Size = scale(UDim2.new(0,size.x,0,1))
2886 t.Position = scale(UDim2.new(0,0,0,i))
2887 t.Parent = Frame
2888 end
2889 end
2890
2891 return Frame
2892 end
2893
2894 local mt = {
2895 __index = {
2896 GetScrollPercent = function(self)
2897 return self.ScrollIndex/(self.TotalSpace-self.VisibleSpace)
2898 end;
2899 CanScrollDown = function(self)
2900 return self.ScrollIndex + self.VisibleSpace < self.TotalSpace
2901 end;
2902 CanScrollUp = function(self)
2903 return self.ScrollIndex > 0
2904 end;
2905 ScrollDown = function(self)
2906 self.ScrollIndex = self.ScrollIndex + self.PageIncrement
2907 self:Update()
2908 end;
2909 ScrollUp = function(self)
2910 self.ScrollIndex = self.ScrollIndex - self.PageIncrement
2911 self:Update()
2912 end;
2913 ScrollTo = function(self,index)
2914 self.ScrollIndex = index
2915 self:Update()
2916 end;
2917 SetScrollPercent = function(self,percent)
2918 self.ScrollIndex = math.floor((self.TotalSpace - self.VisibleSpace)*percent + 0.5)
2919 self:Update()
2920 end;
2921 };
2922 }
2923 mt.__index.CanScrollRight = mt.__index.CanScrollDown
2924 mt.__index.CanScrollLeft = mt.__index.CanScrollUp
2925 mt.__index.ScrollLeft = mt.__index.ScrollUp
2926 mt.__index.ScrollRight = mt.__index.ScrollDown
2927
2928 function ScrollBar(horizontal)
2929 -- create row scroll bar
2930 local ScrollFrame = Create('Frame',{
2931 Name = "ScrollFrame";
2932 Position = horizontal and UDim2.new(0,0,1,-GUI_SIZE) or UDim2.new(1,-GUI_SIZE,0,0);
2933 Size = horizontal and UDim2.new(1,0,0,GUI_SIZE) or UDim2.new(0,GUI_SIZE,1,0);
2934 BackgroundTransparency = 1;
2935 Create('ImageButton',{
2936 Name = "ScrollDown";
2937 Position = horizontal and UDim2.new(1,-GUI_SIZE,0,0) or UDim2.new(0,0,1,-GUI_SIZE);
2938 Size = UDim2.new(0, GUI_SIZE, 0, GUI_SIZE);
2939 BackgroundColor3 = GuiColor.Button;
2940 BorderColor3 = GuiColor.Border;
2941 --BorderSizePixel = 0;
2942 });
2943 Create('ImageButton',{
2944 Name = "ScrollUp";
2945 Size = UDim2.new(0, GUI_SIZE, 0, GUI_SIZE);
2946 BackgroundColor3 = GuiColor.Button;
2947 BorderColor3 = GuiColor.Border;
2948 --BorderSizePixel = 0;
2949 });
2950 Create('ImageButton',{
2951 Name = "ScrollBar";
2952 Size = horizontal and UDim2.new(1,-GUI_SIZE*2,1,0) or UDim2.new(1,0,1,-GUI_SIZE*2);
2953 Position = horizontal and UDim2.new(0,GUI_SIZE,0,0) or UDim2.new(0,0,0,GUI_SIZE);
2954 AutoButtonColor = false;
2955 BackgroundColor3 = Color3.new(0.94902, 0.94902, 0.94902);
2956 BorderColor3 = GuiColor.Border;
2957 --BorderSizePixel = 0;
2958 Create('ImageButton',{
2959 Name = "ScrollThumb";
2960 AutoButtonColor = false;
2961 Size = UDim2.new(0, GUI_SIZE, 0, GUI_SIZE);
2962 BackgroundColor3 = GuiColor.Button;
2963 BorderColor3 = GuiColor.Border;
2964 --BorderSizePixel = 0;
2965 });
2966 });
2967 })
2968
2969 local graphicTemplate = Create('Frame',{
2970 Name="Graphic";
2971 BorderSizePixel = 0;
2972 BackgroundColor3 = GuiColor.Border;
2973 })
2974 local graphicSize = GUI_SIZE/2
2975
2976 local ScrollDownFrame = ScrollFrame.ScrollDown
2977 local ScrollDownGraphic = ArrowGraphic(graphicSize,horizontal and 'Right' or 'Down',true,graphicTemplate)
2978 ScrollDownGraphic.Position = UDim2.new(0.5,-graphicSize/2,0.5,-graphicSize/2)
2979 ScrollDownGraphic.Parent = ScrollDownFrame
2980 local ScrollUpFrame = ScrollFrame.ScrollUp
2981 local ScrollUpGraphic = ArrowGraphic(graphicSize,horizontal and 'Left' or 'Up',true,graphicTemplate)
2982 ScrollUpGraphic.Position = UDim2.new(0.5,-graphicSize/2,0.5,-graphicSize/2)
2983 ScrollUpGraphic.Parent = ScrollUpFrame
2984 local ScrollBarFrame = ScrollFrame.ScrollBar
2985 local ScrollThumbFrame = ScrollBarFrame.ScrollThumb
2986 do
2987 local size = GUI_SIZE*3/8
2988 local Decal = GripGraphic(Vector2.new(size,size),horizontal and 'Vertical' or 'Horizontal',2,graphicTemplate)
2989 Decal.Position = UDim2.new(0.5,-size/2,0.5,-size/2)
2990 Decal.Parent = ScrollThumbFrame
2991 end
2992
2993 local Class = setmetatable({
2994 GUI = ScrollFrame;
2995 ScrollIndex = 0;
2996 VisibleSpace = 0;
2997 TotalSpace = 0;
2998 PageIncrement = 1;
2999 },mt)
3000
3001 local UpdateScrollThumb
3002 if horizontal then
3003 function UpdateScrollThumb()
3004 ScrollThumbFrame.Size = UDim2.new(Class.VisibleSpace/Class.TotalSpace,0,0,GUI_SIZE)
3005 if ScrollThumbFrame.AbsoluteSize.x < GUI_SIZE then
3006 ScrollThumbFrame.Size = UDim2.new(0,GUI_SIZE,0,GUI_SIZE)
3007 end
3008 local barSize = ScrollBarFrame.AbsoluteSize.x
3009 ScrollThumbFrame.Position = UDim2.new(Class:GetScrollPercent()*(barSize - ScrollThumbFrame.AbsoluteSize.x)/barSize,0,0,0)
3010 end
3011 else
3012 function UpdateScrollThumb()
3013 ScrollThumbFrame.Size = UDim2.new(0,GUI_SIZE,Class.VisibleSpace/Class.TotalSpace,0)
3014 if ScrollThumbFrame.AbsoluteSize.y < GUI_SIZE then
3015 ScrollThumbFrame.Size = UDim2.new(0,GUI_SIZE,0,GUI_SIZE)
3016 end
3017 local barSize = ScrollBarFrame.AbsoluteSize.y
3018 ScrollThumbFrame.Position = UDim2.new(0,0,Class:GetScrollPercent()*(barSize - ScrollThumbFrame.AbsoluteSize.y)/barSize,0)
3019 end
3020 end
3021
3022 local lastDown
3023 local lastUp
3024 local scrollStyle = {BackgroundColor3=GuiColor.Border,BackgroundTransparency=0}
3025 local scrollStyle_ds = {BackgroundColor3=GuiColor.Border,BackgroundTransparency=0.7}
3026
3027 local function Update()
3028 local t = Class.TotalSpace
3029 local v = Class.VisibleSpace
3030 local s = Class.ScrollIndex
3031 if v <= t then
3032 if s > 0 then
3033 if s + v > t then
3034 Class.ScrollIndex = t - v
3035 end
3036 else
3037 Class.ScrollIndex = 0
3038 end
3039 else
3040 Class.ScrollIndex = 0
3041 end
3042
3043 if Class.UpdateCallback then
3044 if Class.UpdateCallback(Class) == false then
3045 return
3046 end
3047 end
3048
3049 local down = Class:CanScrollDown()
3050 local up = Class:CanScrollUp()
3051 if down ~= lastDown then
3052 lastDown = down
3053 ScrollDownFrame.Active = down
3054 ScrollDownFrame.AutoButtonColor = down
3055 local children = ScrollDownGraphic:GetChildren()
3056 local style = down and scrollStyle or scrollStyle_ds
3057 for i = 1,#children do
3058 Create(children[i],style)
3059 end
3060 end
3061 if up ~= lastUp then
3062 lastUp = up
3063 ScrollUpFrame.Active = up
3064 ScrollUpFrame.AutoButtonColor = up
3065 local children = ScrollUpGraphic:GetChildren()
3066 local style = up and scrollStyle or scrollStyle_ds
3067 for i = 1,#children do
3068 Create(children[i],style)
3069 end
3070 end
3071 ScrollThumbFrame.Visible = down or up
3072 UpdateScrollThumb()
3073 end
3074 Class.Update = Update
3075
3076 SetZIndexOnChanged(ScrollFrame)
3077
3078 local MouseDrag = Create('ImageButton',{
3079 Name = "MouseDrag";
3080 Position = UDim2.new(-0.25,0,-0.25,0);
3081 Size = UDim2.new(1.5,0,1.5,0);
3082 Transparency = 1;
3083 AutoButtonColor = false;
3084 Active = true;
3085 ZIndex = 10;
3086 })
3087
3088 local scrollEventID = 0
3089 ScrollDownFrame.MouseButton1Down:connect(function()
3090 scrollEventID = tick()
3091 local current = scrollEventID
3092 local up_con
3093 up_con = MouseDrag.MouseButton1Up:connect(function()
3094 scrollEventID = tick()
3095 MouseDrag.Parent = nil
3096 ResetButtonColor(ScrollDownFrame)
3097 up_con:disconnect(); drag = nil
3098 end)
3099 MouseDrag.Parent = GetScreen(ScrollFrame)
3100 Class:ScrollDown()
3101 wait(0.2) -- delay before auto scroll
3102 while scrollEventID == current do
3103 Class:ScrollDown()
3104 if not Class:CanScrollDown() then break end
3105 wait()
3106 end
3107 end)
3108
3109 ScrollDownFrame.MouseButton1Up:connect(function()
3110 scrollEventID = tick()
3111 end)
3112
3113 ScrollUpFrame.MouseButton1Down:connect(function()
3114 scrollEventID = tick()
3115 local current = scrollEventID
3116 local up_con
3117 up_con = MouseDrag.MouseButton1Up:connect(function()
3118 scrollEventID = tick()
3119 MouseDrag.Parent = nil
3120 ResetButtonColor(ScrollUpFrame)
3121 up_con:disconnect(); drag = nil
3122 end)
3123 MouseDrag.Parent = GetScreen(ScrollFrame)
3124 Class:ScrollUp()
3125 wait(0.2)
3126 while scrollEventID == current do
3127 Class:ScrollUp()
3128 if not Class:CanScrollUp() then break end
3129 wait()
3130 end
3131 end)
3132
3133 ScrollUpFrame.MouseButton1Up:connect(function()
3134 scrollEventID = tick()
3135 end)
3136
3137 if horizontal then
3138 ScrollBarFrame.MouseButton1Down:connect(function(x,y)
3139 scrollEventID = tick()
3140 local current = scrollEventID
3141 local up_con
3142 up_con = MouseDrag.MouseButton1Up:connect(function()
3143 scrollEventID = tick()
3144 MouseDrag.Parent = nil
3145 ResetButtonColor(ScrollUpFrame)
3146 up_con:disconnect(); drag = nil
3147 end)
3148 MouseDrag.Parent = GetScreen(ScrollFrame)
3149 if x > ScrollThumbFrame.AbsolutePosition.x then
3150 Class:ScrollTo(Class.ScrollIndex + Class.VisibleSpace)
3151 wait(0.2)
3152 while scrollEventID == current do
3153 if x < ScrollThumbFrame.AbsolutePosition.x + ScrollThumbFrame.AbsoluteSize.x then break end
3154 Class:ScrollTo(Class.ScrollIndex + Class.VisibleSpace)
3155 wait()
3156 end
3157 else
3158 Class:ScrollTo(Class.ScrollIndex - Class.VisibleSpace)
3159 wait(0.2)
3160 while scrollEventID == current do
3161 if x > ScrollThumbFrame.AbsolutePosition.x then break end
3162 Class:ScrollTo(Class.ScrollIndex - Class.VisibleSpace)
3163 wait()
3164 end
3165 end
3166 end)
3167 else
3168 ScrollBarFrame.MouseButton1Down:connect(function(x,y)
3169 scrollEventID = tick()
3170 local current = scrollEventID
3171 local up_con
3172 up_con = MouseDrag.MouseButton1Up:connect(function()
3173 scrollEventID = tick()
3174 MouseDrag.Parent = nil
3175 ResetButtonColor(ScrollUpFrame)
3176 up_con:disconnect(); drag = nil
3177 end)
3178 MouseDrag.Parent = GetScreen(ScrollFrame)
3179 if y > ScrollThumbFrame.AbsolutePosition.y then
3180 Class:ScrollTo(Class.ScrollIndex + Class.VisibleSpace)
3181 wait(0.2)
3182 while scrollEventID == current do
3183 if y < ScrollThumbFrame.AbsolutePosition.y + ScrollThumbFrame.AbsoluteSize.y then break end
3184 Class:ScrollTo(Class.ScrollIndex + Class.VisibleSpace)
3185 wait()
3186 end
3187 else
3188 Class:ScrollTo(Class.ScrollIndex - Class.VisibleSpace)
3189 wait(0.2)
3190 while scrollEventID == current do
3191 if y > ScrollThumbFrame.AbsolutePosition.y then break end
3192 Class:ScrollTo(Class.ScrollIndex - Class.VisibleSpace)
3193 wait()
3194 end
3195 end
3196 end)
3197 end
3198
3199 if horizontal then
3200 ScrollThumbFrame.MouseButton1Down:connect(function(x,y)
3201 scrollEventID = tick()
3202 local mouse_offset = x - ScrollThumbFrame.AbsolutePosition.x
3203 local drag_con
3204 local up_con
3205 drag_con = MouseDrag.MouseMoved:connect(function(x,y)
3206 local bar_abs_pos = ScrollBarFrame.AbsolutePosition.x
3207 local bar_drag = ScrollBarFrame.AbsoluteSize.x - ScrollThumbFrame.AbsoluteSize.x
3208 local bar_abs_one = bar_abs_pos + bar_drag
3209 x = x - mouse_offset
3210 x = x < bar_abs_pos and bar_abs_pos or x > bar_abs_one and bar_abs_one or x
3211 x = x - bar_abs_pos
3212 Class:SetScrollPercent(x/(bar_drag))
3213 end)
3214 up_con = MouseDrag.MouseButton1Up:connect(function()
3215 scrollEventID = tick()
3216 MouseDrag.Parent = nil
3217 ResetButtonColor(ScrollThumbFrame)
3218 drag_con:disconnect(); drag_con = nil
3219 up_con:disconnect(); drag = nil
3220 end)
3221 MouseDrag.Parent = GetScreen(ScrollFrame)
3222 end)
3223 else
3224 ScrollThumbFrame.MouseButton1Down:connect(function(x,y)
3225 scrollEventID = tick()
3226 local mouse_offset = y - ScrollThumbFrame.AbsolutePosition.y
3227 local drag_con
3228 local up_con
3229 drag_con = MouseDrag.MouseMoved:connect(function(x,y)
3230 local bar_abs_pos = ScrollBarFrame.AbsolutePosition.y
3231 local bar_drag = ScrollBarFrame.AbsoluteSize.y - ScrollThumbFrame.AbsoluteSize.y
3232 local bar_abs_one = bar_abs_pos + bar_drag
3233 y = y - mouse_offset
3234 y = y < bar_abs_pos and bar_abs_pos or y > bar_abs_one and bar_abs_one or y
3235 y = y - bar_abs_pos
3236 Class:SetScrollPercent(y/(bar_drag))
3237 end)
3238 up_con = MouseDrag.MouseButton1Up:connect(function()
3239 scrollEventID = tick()
3240 MouseDrag.Parent = nil
3241 ResetButtonColor(ScrollThumbFrame)
3242 drag_con:disconnect(); drag_con = nil
3243 up_con:disconnect(); drag = nil
3244 end)
3245 MouseDrag.Parent = GetScreen(ScrollFrame)
3246 end)
3247 end
3248
3249 function Class:Destroy()
3250 ScrollFrame:Destroy()
3251 MouseDrag:Destroy()
3252 for k in pairs(Class) do
3253 Class[k] = nil
3254 end
3255 setmetatable(Class,nil)
3256 end
3257
3258 Update()
3259
3260 return Class
3261 end
3262end
3263
3264----------------------------------------------------------------
3265----------------------------------------------------------------
3266----------------------------------------------------------------
3267----------------------------------------------------------------
3268---- Explorer panel
3269
3270local explorerPanel = D_E_X.ExplorerPanel
3271Create(explorerPanel,{
3272 BackgroundColor3 = GuiColor.Field;
3273 BorderColor3 = GuiColor.Border;
3274 Active = true;
3275})
3276
3277local SettingsRemote = explorerPanel.Parent:WaitForChild("SettingsPanel"):WaitForChild("GetSetting")
3278local GetApiRemote = explorerPanel.Parent:WaitForChild("PropertiesFrame"):WaitForChild("GetApi")
3279local GetAwaitRemote = explorerPanel.Parent:WaitForChild("PropertiesFrame"):WaitForChild("GetAwaiting")
3280local bindSetAwaiting = explorerPanel.Parent:WaitForChild("PropertiesFrame"):WaitForChild("SetAwaiting")
3281
3282local SaveInstanceWindow = explorerPanel.Parent:WaitForChild("SaveInstance")
3283local ConfirmationWindow = explorerPanel.Parent:WaitForChild("Confirmation")
3284local CautionWindow = explorerPanel.Parent:WaitForChild("Caution")
3285local TableCautionWindow = explorerPanel.Parent:WaitForChild("TableCaution")
3286
3287local RemoteWindow = explorerPanel.Parent:WaitForChild("CallRemote")
3288
3289local ScriptEditor = explorerPanel.Parent:WaitForChild("ScriptEditor")
3290local ScriptEditorEvent = ScriptEditor:WaitForChild("OpenScript")
3291
3292local CurrentSaveInstanceWindow
3293local CurrentRemoteWindow
3294
3295local lastSelectedNode
3296
3297local DexStorage
3298local DexStorageMain
3299local DexStorageEnabled
3300
3301if saveinstance then DexStorageEnabled = true end
3302
3303if DexStorageEnabled then
3304 DexStorage = Instance.new("Folder")
3305 DexStorage.Name = "Dex"
3306 DexStorageMain = Instance.new("Folder",DexStorage)
3307 DexStorageMain.Name = "DexStorage"
3308end
3309
3310local NilStorage
3311local NilStorageMain
3312local NilStorageEnabled
3313
3314if get_nil_instances and IfThisFunctionWasStableEnough then NilStorageEnabled = true end
3315
3316if NilStorageEnabled then
3317 NilStorage = Instance.new("Folder")
3318 NilStorage.Name = "Dex Internal Storage"
3319 NilStorageMain = Instance.new("Folder",NilStorage)
3320 NilStorageMain.Name = "Nil Instances"
3321end
3322
3323local listFrame = Create('Frame',{
3324 Name = "List";
3325 BackgroundTransparency = 1;
3326 ClipsDescendants = true;
3327 Position = UDim2.new(0,0,0,HEADER_SIZE);
3328 Size = UDim2.new(1,-GUI_SIZE,1,-HEADER_SIZE);
3329 Parent = explorerPanel;
3330})
3331
3332local scrollBar = ScrollBar(false)
3333scrollBar.PageIncrement = 1
3334Create(scrollBar.GUI,{
3335 Position = UDim2.new(1,-GUI_SIZE,0,HEADER_SIZE);
3336 Size = UDim2.new(0,GUI_SIZE,1,-HEADER_SIZE);
3337 Parent = explorerPanel;
3338})
3339
3340local scrollBarH = ScrollBar(true)
3341scrollBarH.PageIncrement = GUI_SIZE
3342Create(scrollBarH.GUI,{
3343 Position = UDim2.new(0,0,1,-GUI_SIZE);
3344 Size = UDim2.new(1,-GUI_SIZE,0,GUI_SIZE);
3345 Visible = false;
3346 Parent = explorerPanel;
3347})
3348
3349local headerFrame = Create('Frame',{
3350 Name = "Header";
3351 BackgroundColor3 = GuiColor.Background;
3352 BorderColor3 = GuiColor.Border;
3353 Position = UDim2.new(0,0,0,0);
3354 Size = UDim2.new(1,0,0,HEADER_SIZE);
3355 Parent = explorerPanel;
3356 Create('TextLabel',{
3357 Text = "Explorer";
3358 BackgroundTransparency = 1;
3359 TextColor3 = GuiColor.Text;
3360 TextXAlignment = 'Left';
3361 Font = FONT;
3362 FontSize = FONT_SIZE;
3363 Position = UDim2.new(0,4,0,0);
3364 Size = UDim2.new(1,-4,0.5,0);
3365 });
3366})
3367
3368local explorerFilter = Create('TextBox',{
3369 Text = "Filter Workspace";
3370 BackgroundTransparency = 0.8;
3371 TextColor3 = GuiColor.Text;
3372 TextXAlignment = 'Left';
3373 Font = FONT;
3374 FontSize = FONT_SIZE;
3375 Position = UDim2.new(0,4,0.5,0);
3376 Size = UDim2.new(1,-8,0.5,-2);
3377});
3378explorerFilter.Parent = headerFrame
3379
3380SetZIndexOnChanged(explorerPanel)
3381
3382local function CreateColor3(r, g, b) return Color3.new(r/255,g/255,b/255) end
3383
3384local Styles = {
3385 Font = Enum.Font.Arial;
3386 Margin = 5;
3387 Black = CreateColor3(0,0,0);
3388 White = CreateColor3(255,255,255);
3389}
3390
3391local DropDown = {
3392 Font = Styles.Font;
3393 FontSize = Enum.FontSize.Size14;
3394 TextColor = CreateColor3(0,0,0);
3395 TextColorOver = Styles.White;
3396 TextXAlignment = Enum.TextXAlignment.Left;
3397 Height = 20;
3398 BackColor = Styles.White;
3399 BackColorOver = CreateColor3(86,125,188);
3400 BorderColor = CreateColor3(216,216,216);
3401 BorderSizePixel = 2;
3402 ArrowColor = CreateColor3(160,160,160);
3403 ArrowColorOver = Styles.Black;
3404}
3405
3406local Row = {
3407 Font = Styles.Font;
3408 FontSize = Enum.FontSize.Size14;
3409 TextXAlignment = Enum.TextXAlignment.Left;
3410 TextColor = Styles.Black;
3411 TextColorOver = Styles.White;
3412 TextLockedColor = CreateColor3(120,120,120);
3413 Height = 24;
3414 BorderColor = CreateColor3(216,216,216);
3415 BackgroundColor = Styles.White;
3416 BackgroundColorAlternate = CreateColor3(246,246,246);
3417 BackgroundColorMouseover = CreateColor3(211,224,244);
3418 TitleMarginLeft = 15;
3419}
3420
3421local currentRightClickMenu
3422local CurrentInsertObjectWindow
3423local CurrentFunctionCallerWindow
3424
3425local RbxApi
3426
3427function ClassCanCreate(IName)
3428 local success,err = pcall(function() Instance.new(IName) end)
3429 if err then
3430 return false
3431 else
3432 return true
3433 end
3434end
3435
3436function GetClasses()
3437 if RbxApi == nil then return {} end
3438 local classTable = {}
3439 for i,v in pairs(RbxApi.Classes) do
3440 if ClassCanCreate(v.Name) then
3441 table.insert(classTable,v.Name)
3442 end
3443 end
3444 return classTable
3445end
3446
3447local function sortAlphabetic(t, property)
3448 table.sort(t,
3449 function(x,y) return x[property] < y[property]
3450 end)
3451end
3452
3453local function FunctionIsHidden(functionData)
3454 local tags = functionData["tags"]
3455 for _,name in pairs(tags) do
3456 if name == "deprecated"
3457 or name == "hidden"
3458 or name == "writeonly" then
3459 return true
3460 end
3461 end
3462 return false
3463end
3464
3465local function GetAllFunctions(className)
3466 local class = RbxApi.Classes[className]
3467 local functions = {}
3468
3469 if not class then return functions end
3470
3471 while class do
3472 if class.Name == "Instance" then break end
3473 for _,nextFunction in pairs(class.Functions) do
3474 if not FunctionIsHidden(nextFunction) then
3475 table.insert(functions, nextFunction)
3476 end
3477 end
3478 class = RbxApi.Classes[class.Superclass]
3479 end
3480
3481 sortAlphabetic(functions, "Name")
3482
3483 return functions
3484end
3485
3486function GetFunctions()
3487 if RbxApi == nil then return {} end
3488 local List = SelectionVar():Get()
3489
3490 if #List == 0 then return end
3491
3492 local MyObject = List[1]
3493
3494 local functionTable = {}
3495 for i,v in pairs(GetAllFunctions(MyObject.ClassName)) do
3496 table.insert(functionTable,v)
3497 end
3498 return functionTable
3499end
3500
3501function CreateInsertObjectMenu(choices, currentChoice, readOnly, onClick)
3502 local mouse = game.Players.LocalPlayer:GetMouse()
3503 local totalSize = explorerPanel.Parent.AbsoluteSize.y
3504 if #choices == 0 then return end
3505
3506 table.sort(choices, function(a,b) return a < b end)
3507
3508 local frame = Instance.new("Frame")
3509 frame.Name = "InsertObject"
3510 frame.Size = UDim2.new(0, 200, 1, 0)
3511 frame.BackgroundTransparency = 1
3512 frame.Active = true
3513
3514 local menu = nil
3515 local arrow = nil
3516 local expanded = false
3517 local margin = DropDown.BorderSizePixel;
3518
3519 --[[
3520 local button = Instance.new("TextButton")
3521 button.Font = Row.Font
3522 button.FontSize = Row.FontSize
3523 button.TextXAlignment = Row.TextXAlignment
3524 button.BackgroundTransparency = 1
3525 button.TextColor3 = Row.TextColor
3526 if readOnly then
3527 button.TextColor3 = Row.TextLockedColor
3528 end
3529 button.Text = currentChoice
3530 button.Size = UDim2.new(1, -2 * Styles.Margin, 1, 0)
3531 button.Position = UDim2.new(0, Styles.Margin, 0, 0)
3532 button.Parent = frame
3533 --]]
3534
3535 local function hideMenu()
3536 expanded = false
3537 --showArrow(DropDown.ArrowColor)
3538 if frame then
3539 --frame:Destroy()
3540 CurrentInsertObjectWindow.Visible = false
3541 end
3542 end
3543
3544 local function showMenu()
3545 expanded = true
3546 menu = Instance.new("ScrollingFrame")
3547 menu.Size = UDim2.new(0,200,1,0)
3548 menu.CanvasSize = UDim2.new(0, 200, 0, #choices * DropDown.Height)
3549 menu.Position = UDim2.new(0, margin, 0, 0)
3550 menu.BackgroundTransparency = 0
3551 menu.BackgroundColor3 = DropDown.BackColor
3552 menu.BorderColor3 = DropDown.BorderColor
3553 menu.BorderSizePixel = DropDown.BorderSizePixel
3554 menu.TopImage = "rbxasset://textures/blackBkg_square.png"
3555 menu.MidImage = "rbxasset://textures/blackBkg_square.png"
3556 menu.BottomImage = "rbxasset://textures/blackBkg_square.png"
3557 menu.Active = true
3558 menu.ZIndex = 5
3559 menu.Parent = frame
3560
3561 --local parentFrameHeight = script.Parent.List.Size.Y.Offset
3562 --local rowHeight = mouse.Y
3563 --if (rowHeight + menu.Size.Y.Offset) > parentFrameHeight then
3564 -- menu.Position = UDim2.new(0, margin, 0, -1 * (#choices * DropDown.Height) - margin)
3565 --end
3566
3567 local function choice(name)
3568 onClick(name)
3569 hideMenu()
3570 end
3571
3572 for i,name in pairs(choices) do
3573 local option = CreateRightClickMenuItem(name, function()
3574 choice(name)
3575 end,1)
3576 option.Size = UDim2.new(1, 0, 0, 20)
3577 option.Position = UDim2.new(0, 0, 0, (i - 1) * DropDown.Height)
3578 option.ZIndex = menu.ZIndex
3579 option.Parent = menu
3580 end
3581 end
3582
3583
3584 showMenu()
3585
3586
3587 return frame
3588end
3589
3590function CreateFunctionCallerMenu(choices, currentChoice, readOnly, onClick)
3591 local mouse = game.Players.LocalPlayer:GetMouse()
3592 local totalSize = explorerPanel.Parent.AbsoluteSize.y
3593 if #choices == 0 then return end
3594
3595 table.sort(choices, function(a,b) return a.Name < b.Name end)
3596
3597 local frame = Instance.new("Frame")
3598 frame.Name = "InsertObject"
3599 frame.Size = UDim2.new(0, 200, 1, 0)
3600 frame.BackgroundTransparency = 1
3601 frame.Active = true
3602
3603 local menu = nil
3604 local arrow = nil
3605 local expanded = false
3606 local margin = DropDown.BorderSizePixel;
3607
3608 local function hideMenu()
3609 expanded = false
3610 --showArrow(DropDown.ArrowColor)
3611 if frame then
3612 --frame:Destroy()
3613 CurrentInsertObjectWindow.Visible = false
3614 end
3615 end
3616
3617 local function showMenu()
3618 expanded = true
3619 menu = Instance.new("ScrollingFrame")
3620 menu.Size = UDim2.new(0,300,1,0)
3621 menu.CanvasSize = UDim2.new(0, 300, 0, #choices * DropDown.Height)
3622 menu.Position = UDim2.new(0, margin, 0, 0)
3623 menu.BackgroundTransparency = 0
3624 menu.BackgroundColor3 = DropDown.BackColor
3625 menu.BorderColor3 = DropDown.BorderColor
3626 menu.BorderSizePixel = DropDown.BorderSizePixel
3627 menu.TopImage = "rbxasset://textures/blackBkg_square.png"
3628 menu.MidImage = "rbxasset://textures/blackBkg_square.png"
3629 menu.BottomImage = "rbxasset://textures/blackBkg_square.png"
3630 menu.Active = true
3631 menu.ZIndex = 5
3632 menu.Parent = frame
3633
3634 --local parentFrameHeight = script.Parent.List.Size.Y.Offset
3635 --local rowHeight = mouse.Y
3636 --if (rowHeight + menu.Size.Y.Offset) > parentFrameHeight then
3637 -- menu.Position = UDim2.new(0, margin, 0, -1 * (#choices * DropDown.Height) - margin)
3638 --end
3639
3640 local function GetParameters(functionData)
3641 local paraString = ""
3642 paraString = paraString.."("
3643 for i,v in pairs(functionData.Arguments) do
3644 paraString = paraString..v.Type.." "..v.Name
3645 if i < #functionData.Arguments then
3646 paraString = paraString..", "
3647 end
3648 end
3649 paraString = paraString..")"
3650 return paraString
3651 end
3652
3653 local function choice(name)
3654 onClick(name)
3655 hideMenu()
3656 end
3657
3658 for i,name in pairs(choices) do
3659 local option = CreateRightClickMenuItem(name.ReturnType.." "..name.Name..GetParameters(name), function()
3660 choice(name)
3661 end,2)
3662 option.Size = UDim2.new(1, 0, 0, 20)
3663 option.Position = UDim2.new(0, 0, 0, (i - 1) * DropDown.Height)
3664 option.ZIndex = menu.ZIndex
3665 option.Parent = menu
3666 end
3667 end
3668
3669
3670 showMenu()
3671
3672
3673 return frame
3674end
3675
3676function CreateInsertObject()
3677 if not CurrentInsertObjectWindow then return end
3678 CurrentInsertObjectWindow.Visible = true
3679 if currentRightClickMenu and CurrentInsertObjectWindow.Visible then
3680 CurrentInsertObjectWindow.Position = UDim2.new(0,currentRightClickMenu.Position.X.Offset-currentRightClickMenu.Size.X.Offset-2,0,0)
3681 end
3682 if CurrentInsertObjectWindow.Visible then
3683 CurrentInsertObjectWindow.Parent = explorerPanel.Parent
3684 end
3685end
3686
3687function CreateFunctionCaller()
3688 if CurrentFunctionCallerWindow then
3689 CurrentFunctionCallerWindow:Destroy()
3690 CurrentFunctionCallerWindow = nil
3691 end
3692 CurrentFunctionCallerWindow = CreateFunctionCallerMenu(
3693 GetFunctions(),
3694 "",
3695 false,
3696 function(option)
3697 CurrentFunctionCallerWindow:Destroy()
3698 CurrentFunctionCallerWindow = nil
3699 local list = SelectionVar():Get()
3700 for i = 1,#list do
3701 pcall(function() Instance.new(option,list[i]) end)
3702 end
3703 print(option.Name .. " selected to be called. Function caller being added soon, please wait!")
3704 --CallFunction()
3705 DestroyRightClick()
3706 end
3707 )
3708 if currentRightClickMenu and CurrentFunctionCallerWindow then
3709 CurrentFunctionCallerWindow.Position = UDim2.new(0,currentRightClickMenu.Position.X.Offset-currentRightClickMenu.Size.X.Offset*1.5-2,0,0)
3710 end
3711 if CurrentFunctionCallerWindow then
3712 CurrentFunctionCallerWindow.Parent = explorerPanel.Parent
3713 end
3714end
3715
3716function CreateRightClickMenuItem(text, onClick, insObj)
3717 local button = Instance.new("TextButton")
3718 button.Font = DropDown.Font
3719 button.FontSize = DropDown.FontSize
3720 button.TextColor3 = DropDown.TextColor
3721 button.TextXAlignment = DropDown.TextXAlignment
3722 button.BackgroundColor3 = DropDown.BackColor
3723 button.AutoButtonColor = false
3724 button.BorderSizePixel = 0
3725 button.Active = true
3726 button.Text = text
3727
3728 if insObj == 1 then
3729 local newIcon = Icon(nil,ExplorerIndex[text] or 0)
3730 newIcon.Position = UDim2.new(0,0,0,2)
3731 newIcon.Size = UDim2.new(0,16,0,16)
3732 newIcon.IconMap.ZIndex = 5
3733 newIcon.Parent = button
3734 button.Text = "\t\t"..button.Text
3735 elseif insObj == 2 then
3736 button.FontSize = Enum.FontSize.Size11
3737 end
3738
3739 button.MouseEnter:connect(function()
3740 button.TextColor3 = DropDown.TextColorOver
3741 button.BackgroundColor3 = DropDown.BackColorOver
3742 if not insObj and CurrentInsertObjectWindow then
3743 if CurrentInsertObjectWindow.Visible == false and button.Text == "Insert Object" then
3744 CreateInsertObject()
3745 elseif CurrentInsertObjectWindow.Visible and button.Text ~= "Insert Object" then
3746 CurrentInsertObjectWindow.Visible = false
3747 end
3748 end
3749 if not insObj then
3750 if CurrentFunctionCallerWindow and button.Text ~= "Call Function" then
3751 CurrentFunctionCallerWindow:Destroy()
3752 CurrentFunctionCallerWindow = nil
3753 elseif button.Text == "Call Function" then
3754 CreateFunctionCaller()
3755 end
3756 end
3757 end)
3758 button.MouseLeave:connect(function()
3759 button.TextColor3 = DropDown.TextColor
3760 button.BackgroundColor3 = DropDown.BackColor
3761 end)
3762 button.MouseButton1Click:connect(function()
3763 button.TextColor3 = DropDown.TextColor
3764 button.BackgroundColor3 = DropDown.BackColor
3765 onClick(text)
3766 end)
3767 return button
3768end
3769
3770function CreateRightClickMenu(choices, currentChoice, readOnly, onClick)
3771 local mouse = game.Players.LocalPlayer:GetMouse()
3772
3773 local frame = Instance.new("Frame")
3774 frame.Name = "DropDown"
3775 frame.Size = UDim2.new(0, 200, 1, 0)
3776 frame.BackgroundTransparency = 1
3777 frame.Active = true
3778
3779 local menu = nil
3780 local arrow = nil
3781 local expanded = false
3782 local margin = DropDown.BorderSizePixel;
3783
3784 --[[
3785 local button = Instance.new("TextButton")
3786 button.Font = Row.Font
3787 button.FontSize = Row.FontSize
3788 button.TextXAlignment = Row.TextXAlignment
3789 button.BackgroundTransparency = 1
3790 button.TextColor3 = Row.TextColor
3791 if readOnly then
3792 button.TextColor3 = Row.TextLockedColor
3793 end
3794 button.Text = currentChoice
3795 button.Size = UDim2.new(1, -2 * Styles.Margin, 1, 0)
3796 button.Position = UDim2.new(0, Styles.Margin, 0, 0)
3797 button.Parent = frame
3798 --]]
3799
3800 local function hideMenu()
3801 expanded = false
3802 --showArrow(DropDown.ArrowColor)
3803 if frame then
3804 frame:Destroy()
3805 DestroyRightClick()
3806 end
3807 end
3808
3809 local function showMenu()
3810 expanded = true
3811 menu = Instance.new("Frame")
3812 menu.Size = UDim2.new(0, 200, 0, #choices * DropDown.Height)
3813 menu.Position = UDim2.new(0, margin, 0, 5)
3814 menu.BackgroundTransparency = 0
3815 menu.BackgroundColor3 = DropDown.BackColor
3816 menu.BorderColor3 = DropDown.BorderColor
3817 menu.BorderSizePixel = DropDown.BorderSizePixel
3818 menu.Active = true
3819 menu.ZIndex = 5
3820 menu.Parent = frame
3821
3822 --local parentFrameHeight = script.Parent.List.Size.Y.Offset
3823 --local rowHeight = mouse.Y
3824 --if (rowHeight + menu.Size.Y.Offset) > parentFrameHeight then
3825 -- menu.Position = UDim2.new(0, margin, 0, -1 * (#choices * DropDown.Height) - margin)
3826 --end
3827
3828 local function choice(name)
3829 onClick(name)
3830 hideMenu()
3831 end
3832
3833 for i,name in pairs(choices) do
3834 local option = CreateRightClickMenuItem(name, function()
3835 choice(name)
3836 end)
3837 option.Size = UDim2.new(1, 0, 0, 20)
3838 option.Position = UDim2.new(0, 0, 0, (i - 1) * DropDown.Height)
3839 option.ZIndex = menu.ZIndex
3840 option.Parent = menu
3841 end
3842 end
3843
3844
3845 showMenu()
3846
3847
3848 return frame
3849end
3850
3851function checkMouseInGui(gui)
3852 if gui == nil then return false end
3853 local plrMouse = game.Players.LocalPlayer:GetMouse()
3854 local guiPosition = gui.AbsolutePosition
3855 local guiSize = gui.AbsoluteSize
3856
3857 if plrMouse.X >= guiPosition.x and plrMouse.X <= guiPosition.x + guiSize.x and plrMouse.Y >= guiPosition.y and plrMouse.Y <= guiPosition.y + guiSize.y then
3858 return true
3859 else
3860 return false
3861 end
3862end
3863
3864local clipboard = {}
3865local function delete(o)
3866 o.Parent = nil
3867end
3868
3869local getTextWidth do
3870 local text = Create('TextLabel',{
3871 Name = "TextWidth";
3872 TextXAlignment = 'Left';
3873 TextYAlignment = 'Center';
3874 Font = FONT;
3875 FontSize = FONT_SIZE;
3876 Text = "";
3877 Position = UDim2.new(0,0,0,0);
3878 Size = UDim2.new(1,0,1,0);
3879 Visible = false;
3880 Parent = explorerPanel;
3881 })
3882 function getTextWidth(s)
3883 text.Text = s
3884 return text.TextBounds.x
3885 end
3886end
3887
3888local nameScanned = false
3889-- Holds the game tree converted to a list.
3890local TreeList = {}
3891-- Matches objects to their tree node representation.
3892local NodeLookup = {}
3893
3894local nodeWidth = 0
3895
3896local QuickButtons = {}
3897
3898function filteringWorkspace()
3899 if explorerFilter.Text ~= "" and explorerFilter.Text ~= "Filter Workspace" then
3900 return true
3901 end
3902 return false
3903end
3904
3905function lookForAName(obj,name)
3906 for i,v in pairs(obj:GetChildren()) do
3907 if string.find(string.lower(v.Name),string.lower(name)) then nameScanned = true end
3908 lookForAName(v,name)
3909 end
3910end
3911
3912function scanName(obj)
3913 nameScanned = false
3914 if string.find(string.lower(obj.Name),string.lower(explorerFilter.Text)) then
3915 nameScanned = true
3916 else
3917 lookForAName(obj,explorerFilter.Text)
3918 end
3919 return nameScanned
3920end
3921
3922function updateActions()
3923 for i,v in pairs(QuickButtons) do
3924 if v.Cond() then
3925 v.Toggle(true)
3926 else
3927 v.Toggle(false)
3928 end
3929 end
3930end
3931
3932local updateList,rawUpdateList,updateScroll,rawUpdateSize do
3933 local function r(t)
3934 for i = 1,#t do
3935 if not filteringWorkspace() or scanName(t[i].Object) then
3936 TreeList[#TreeList+1] = t[i]
3937
3938 local w = (t[i].Depth)*(2+ENTRY_PADDING+GUI_SIZE) + 2 + ENTRY_SIZE + 4 + getTextWidth(t[i].Object.Name) + 4
3939 if w > nodeWidth then
3940 nodeWidth = w
3941 end
3942 if t[i].Expanded or filteringWorkspace() then
3943 r(t[i])
3944 end
3945 end
3946 end
3947 end
3948
3949 function rawUpdateSize()
3950 scrollBarH.TotalSpace = nodeWidth
3951 scrollBarH.VisibleSpace = listFrame.AbsoluteSize.x
3952 scrollBarH:Update()
3953 local visible = scrollBarH:CanScrollDown() or scrollBarH:CanScrollUp()
3954 scrollBarH.GUI.Visible = visible
3955
3956 listFrame.Size = UDim2.new(1,-GUI_SIZE,1,-GUI_SIZE*(visible and 1 or 0) - HEADER_SIZE)
3957
3958 scrollBar.VisibleSpace = math.ceil(listFrame.AbsoluteSize.y/ENTRY_BOUND)
3959 scrollBar.GUI.Size = UDim2.new(0,GUI_SIZE,1,-GUI_SIZE*(visible and 1 or 0) - HEADER_SIZE)
3960
3961 scrollBar.TotalSpace = #TreeList+1
3962 scrollBar:Update()
3963 end
3964
3965 function rawUpdateList()
3966 -- Clear then repopulate the entire list. It appears to be fast enough.
3967 TreeList = {}
3968 nodeWidth = 0
3969 r(NodeLookup[workspace.Parent])
3970 if DexStorageEnabled then
3971 r(NodeLookup[DexStorage])
3972 end
3973 if NilStorageEnabled then
3974 r(NodeLookup[NilStorage])
3975 end
3976 rawUpdateSize()
3977 updateActions()
3978 end
3979
3980 -- Adding or removing large models will cause many updates to occur. We
3981 -- can reduce the number of updates by creating a delay, then dropping any
3982 -- updates that occur during the delay.
3983 local updatingList = false
3984 function updateList()
3985 if updatingList then return end
3986 updatingList = true
3987 wait(0.25)
3988 updatingList = false
3989 rawUpdateList()
3990 end
3991
3992 local updatingScroll = false
3993 function updateScroll()
3994 if updatingScroll then return end
3995 updatingScroll = true
3996 wait(0.25)
3997 updatingScroll = false
3998 scrollBar:Update()
3999 end
4000end
4001
4002local Selection do
4003 local bindGetSelection = explorerPanel:FindFirstChild("GetSelection")
4004 if not bindGetSelection then
4005 bindGetSelection = Create('BindableFunction',{Name = "GetSelection"})
4006 bindGetSelection.Parent = explorerPanel
4007 end
4008
4009 local bindSetSelection = explorerPanel:FindFirstChild("SetSelection")
4010 if not bindSetSelection then
4011 bindSetSelection = Create('BindableFunction',{Name = "SetSelection"})
4012 bindSetSelection.Parent = explorerPanel
4013 end
4014
4015 local bindSelectionChanged = explorerPanel:FindFirstChild("SelectionChanged")
4016 if not bindSelectionChanged then
4017 bindSelectionChanged = Create('BindableEvent',{Name = "SelectionChanged"})
4018 bindSelectionChanged.Parent = explorerPanel
4019 end
4020
4021 local SelectionList = {}
4022 local SelectionSet = {}
4023 local Updates = true
4024 Selection = {
4025 Selected = SelectionSet;
4026 List = SelectionList;
4027 }
4028
4029 local function addObject(object)
4030 -- list update
4031 local lupdate = false
4032 -- scroll update
4033 local supdate = false
4034
4035 if not SelectionSet[object] then
4036 local node = NodeLookup[object]
4037 if node then
4038 table.insert(SelectionList,object)
4039 SelectionSet[object] = true
4040 node.Selected = true
4041
4042 -- expand all ancestors so that selected node becomes visible
4043 node = node.Parent
4044 while node do
4045 if not node.Expanded then
4046 node.Expanded = true
4047 lupdate = true
4048 end
4049 node = node.Parent
4050 end
4051 supdate = true
4052 end
4053 end
4054 return lupdate,supdate
4055 end
4056
4057 function Selection:Set(objects)
4058 local lupdate = false
4059 local supdate = false
4060
4061 if #SelectionList > 0 then
4062 for i = 1,#SelectionList do
4063 local object = SelectionList[i]
4064 local node = NodeLookup[object]
4065 if node then
4066 node.Selected = false
4067 SelectionSet[object] = nil
4068 end
4069 end
4070
4071 SelectionList = {}
4072 Selection.List = SelectionList
4073 supdate = true
4074 end
4075
4076 for i = 1,#objects do
4077 local l,s = addObject(objects[i])
4078 lupdate = l or lupdate
4079 supdate = s or supdate
4080 end
4081
4082 if lupdate then
4083 rawUpdateList()
4084 supdate = true
4085 elseif supdate then
4086 scrollBar:Update()
4087 end
4088
4089 if supdate then
4090 bindSelectionChanged:Fire()
4091 updateActions()
4092 end
4093 end
4094
4095 function Selection:Add(object)
4096 local l,s = addObject(object)
4097 if l then
4098 rawUpdateList()
4099 if Updates then
4100 bindSelectionChanged:Fire()
4101 updateActions()
4102 end
4103 elseif s then
4104 scrollBar:Update()
4105 if Updates then
4106 bindSelectionChanged:Fire()
4107 updateActions()
4108 end
4109 end
4110 end
4111
4112 function Selection:StopUpdates()
4113 Updates = false
4114 end
4115
4116 function Selection:ResumeUpdates()
4117 Updates = true
4118 bindSelectionChanged:Fire()
4119 updateActions()
4120 end
4121
4122 function Selection:Remove(object,noupdate)
4123 if SelectionSet[object] then
4124 local node = NodeLookup[object]
4125 if node then
4126 node.Selected = false
4127 SelectionSet[object] = nil
4128 for i = 1,#SelectionList do
4129 if SelectionList[i] == object then
4130 table.remove(SelectionList,i)
4131 break
4132 end
4133 end
4134
4135 if not noupdate then
4136 scrollBar:Update()
4137 end
4138 bindSelectionChanged:Fire()
4139 updateActions()
4140 end
4141 end
4142 end
4143
4144 function Selection:Get()
4145 local list = {}
4146 for i = 1,#SelectionList do
4147 list[i] = SelectionList[i]
4148 end
4149 return list
4150 end
4151
4152 bindSetSelection.OnInvoke = function(...)
4153 Selection:Set(...)
4154 end
4155
4156 bindGetSelection.OnInvoke = function()
4157 return Selection:Get()
4158 end
4159end
4160
4161function CreateCaution(title,msg)
4162 local newCaution = CautionWindow:Clone()
4163 newCaution.Title.Text = title
4164 newCaution.MainWindow.Desc.Text = msg
4165 newCaution.Parent = explorerPanel.Parent
4166 newCaution.Visible = true
4167 newCaution.MainWindow.Ok.MouseButton1Up:connect(function()
4168 newCaution:Destroy()
4169 end)
4170end
4171
4172function CreateTableCaution(title,msg)
4173 if type(msg) ~= "table" then return CreateCaution(title,tostring(msg)) end
4174 local newCaution = TableCautionWindow:Clone()
4175 newCaution.Title.Text = title
4176
4177 local TableList = newCaution.MainWindow.TableResults
4178 local TableTemplate = newCaution.MainWindow.TableTemplate
4179
4180 for i,v in pairs(msg) do
4181 local newResult = TableTemplate:Clone()
4182 newResult.Type.Text = type(v)
4183 newResult.Value.Text = tostring(v)
4184 newResult.Position = UDim2.new(0,0,0,#TableList:GetChildren() * 20)
4185 newResult.Parent = TableList
4186 TableList.CanvasSize = UDim2.new(0,0,0,#TableList:GetChildren() * 20)
4187 newResult.Visible = true
4188 end
4189 newCaution.Parent = explorerPanel.Parent
4190 newCaution.Visible = true
4191 newCaution.MainWindow.Ok.MouseButton1Up:connect(function()
4192 newCaution:Destroy()
4193 end)
4194end
4195
4196local function Split(str, delimiter)
4197 local start = 1
4198 local t = {}
4199 while true do
4200 local pos = string.find (str, delimiter, start, true)
4201 if not pos then
4202 break
4203 end
4204 table.insert (t, string.sub (str, start, pos - 1))
4205 start = pos + string.len (delimiter)
4206 end
4207 table.insert (t, string.sub (str, start))
4208 return t
4209end
4210
4211local function ToValue(value,type)
4212 if type == "Vector2" then
4213 local list = Split(value,",")
4214 if #list < 2 then return nil end
4215 local x = tonumber(list[1]) or 0
4216 local y = tonumber(list[2]) or 0
4217 return Vector2.new(x,y)
4218 elseif type == "Vector3" then
4219 local list = Split(value,",")
4220 if #list < 3 then return nil end
4221 local x = tonumber(list[1]) or 0
4222 local y = tonumber(list[2]) or 0
4223 local z = tonumber(list[3]) or 0
4224 return Vector3.new(x,y,z)
4225 elseif type == "Color3" then
4226 local list = Split(value,",")
4227 if #list < 3 then return nil end
4228 local r = tonumber(list[1]) or 0
4229 local g = tonumber(list[2]) or 0
4230 local b = tonumber(list[3]) or 0
4231 return Color3.new(r/255,g/255, b/255)
4232 elseif type == "UDim2" then
4233 local list = Split(string.gsub(string.gsub(value, "{", ""),"}",""),",")
4234 if #list < 4 then return nil end
4235 local xScale = tonumber(list[1]) or 0
4236 local xOffset = tonumber(list[2]) or 0
4237 local yScale = tonumber(list[3]) or 0
4238 local yOffset = tonumber(list[4]) or 0
4239 return UDim2.new(xScale, xOffset, yScale, yOffset)
4240 elseif type == "Number" then
4241 return tonumber(value)
4242 elseif type == "String" then
4243 return value
4244 elseif type == "NumberRange" then
4245 local list = Split(value,",")
4246 if #list == 1 then
4247 if tonumber(list[1]) == nil then return nil end
4248 local newVal = tonumber(list[1]) or 0
4249 return NumberRange.new(newVal)
4250 end
4251 if #list < 2 then return nil end
4252 local x = tonumber(list[1]) or 0
4253 local y = tonumber(list[2]) or 0
4254 return NumberRange.new(x,y)
4255 elseif type == "Script" then
4256 local success,err = ypcall(function()
4257 _G.D_E_X_DONOTUSETHISPLEASE = nil
4258 loadstring(
4259 "_G.D_E_X_DONOTUSETHISPLEASE = "..value
4260 )()
4261 return _G.D_E_X_DONOTUSETHISPLEASE
4262 end)
4263 if err then
4264 return nil
4265 end
4266 else
4267 return nil
4268 end
4269end
4270
4271local function ToPropValue(value,type)
4272 if type == "Vector2" then
4273 local list = Split(value,",")
4274 if #list < 2 then return nil end
4275 local x = tonumber(list[1]) or 0
4276 local y = tonumber(list[2]) or 0
4277 return Vector2.new(x,y)
4278 elseif type == "Vector3" then
4279 local list = Split(value,",")
4280 if #list < 3 then return nil end
4281 local x = tonumber(list[1]) or 0
4282 local y = tonumber(list[2]) or 0
4283 local z = tonumber(list[3]) or 0
4284 return Vector3.new(x,y,z)
4285 elseif type == "Color3" then
4286 local list = Split(value,",")
4287 if #list < 3 then return nil end
4288 local r = tonumber(list[1]) or 0
4289 local g = tonumber(list[2]) or 0
4290 local b = tonumber(list[3]) or 0
4291 return Color3.new(r/255,g/255, b/255)
4292 elseif type == "UDim2" then
4293 local list = Split(string.gsub(string.gsub(value, "{", ""),"}",""),",")
4294 if #list < 4 then return nil end
4295 local xScale = tonumber(list[1]) or 0
4296 local xOffset = tonumber(list[2]) or 0
4297 local yScale = tonumber(list[3]) or 0
4298 local yOffset = tonumber(list[4]) or 0
4299 return UDim2.new(xScale, xOffset, yScale, yOffset)
4300 elseif type == "Content" then
4301 return value
4302 elseif type == "float" or type == "int" or type == "double" then
4303 return tonumber(value)
4304 elseif type == "string" then
4305 return value
4306 elseif type == "NumberRange" then
4307 local list = Split(value,",")
4308 if #list == 1 then
4309 if tonumber(list[1]) == nil then return nil end
4310 local newVal = tonumber(list[1]) or 0
4311 return NumberRange.new(newVal)
4312 end
4313 if #list < 2 then return nil end
4314 local x = tonumber(list[1]) or 0
4315 local y = tonumber(list[2]) or 0
4316 return NumberRange.new(x,y)
4317 elseif string.sub(value,1,4) == "Enum" then
4318 local getEnum = value
4319 while true do
4320 local x,y = string.find(getEnum,".")
4321 if y then
4322 getEnum = string.sub(getEnum,y+1)
4323 else
4324 break
4325 end
4326 end
4327 print(getEnum)
4328 return getEnum
4329 else
4330 return nil
4331 end
4332end
4333
4334function PromptRemoteCaller(inst)
4335 if CurrentRemoteWindow then
4336 CurrentRemoteWindow:Destroy()
4337 CurrentRemoteWindow = nil
4338 end
4339 CurrentRemoteWindow = RemoteWindow:Clone()
4340 CurrentRemoteWindow.Parent = explorerPanel.Parent
4341 CurrentRemoteWindow.Visible = true
4342
4343 local displayValues = false
4344
4345 local ArgumentList = CurrentRemoteWindow.MainWindow.Arguments
4346 local ArgumentTemplate = CurrentRemoteWindow.MainWindow.ArgumentTemplate
4347
4348 if inst:IsA("RemoteEvent") then
4349 CurrentRemoteWindow.Title.Text = "Fire Event"
4350 CurrentRemoteWindow.MainWindow.Ok.Text = "Fire"
4351 CurrentRemoteWindow.MainWindow.DisplayReturned.Visible = false
4352 CurrentRemoteWindow.MainWindow.Desc2.Visible = false
4353 end
4354
4355 local newArgument = ArgumentTemplate:Clone()
4356 newArgument.Parent = ArgumentList
4357 newArgument.Visible = true
4358 newArgument.Type.MouseButton1Down:connect(function()
4359 createDDown(newArgument.Type,function(choice)
4360 newArgument.Type.Text = choice
4361 end,"Script","Number","String","Color3","Vector3","Vector2","UDim2","NumberRange")
4362 end)
4363
4364 CurrentRemoteWindow.MainWindow.Ok.MouseButton1Up:connect(function()
4365 if CurrentRemoteWindow and inst.Parent ~= nil then
4366 local MyArguments = {}
4367 for i,v in pairs(ArgumentList:GetChildren()) do
4368 table.insert(MyArguments,ToValue(v.Value.Text,v.Type.Text))
4369 end
4370 if inst:IsA("RemoteFunction") then
4371 if displayValues then
4372 spawn(function()
4373 local myResults = inst:InvokeServer(unpack(MyArguments))
4374 if myResults then
4375 CreateTableCaution("Remote Caller",myResults)
4376 else
4377 CreateCaution("Remote Caller","This remote did not return anything.")
4378 end
4379 end)
4380 else
4381 spawn(function()
4382 inst:InvokeServer(unpack(MyArguments))
4383 end)
4384 end
4385 else
4386 inst:FireServer(unpack(MyArguments))
4387 end
4388 CurrentRemoteWindow:Destroy()
4389 CurrentRemoteWindow = nil
4390 end
4391 end)
4392
4393 CurrentRemoteWindow.MainWindow.Add.MouseButton1Up:connect(function()
4394 if CurrentRemoteWindow then
4395 local newArgument = ArgumentTemplate:Clone()
4396 newArgument.Position = UDim2.new(0,0,0,#ArgumentList:GetChildren() * 20)
4397 newArgument.Parent = ArgumentList
4398 ArgumentList.CanvasSize = UDim2.new(0,0,0,#ArgumentList:GetChildren() * 20)
4399 newArgument.Visible = true
4400 newArgument.Type.MouseButton1Down:connect(function()
4401 createDDown(newArgument.Type,function(choice)
4402 newArgument.Type.Text = choice
4403 end,"Script","Number","String","Color3","Vector3","Vector2","UDim2","NumberRange")
4404 end)
4405 end
4406 end)
4407
4408 CurrentRemoteWindow.MainWindow.Subtract.MouseButton1Up:connect(function()
4409 if CurrentRemoteWindow then
4410 if #ArgumentList:GetChildren() > 1 then
4411 ArgumentList:GetChildren()[#ArgumentList:GetChildren()]:Destroy()
4412 ArgumentList.CanvasSize = UDim2.new(0,0,0,#ArgumentList:GetChildren() * 20)
4413 end
4414 end
4415 end)
4416
4417 CurrentRemoteWindow.MainWindow.Cancel.MouseButton1Up:connect(function()
4418 if CurrentRemoteWindow then
4419 CurrentRemoteWindow:Destroy()
4420 CurrentRemoteWindow = nil
4421 end
4422 end)
4423
4424 CurrentRemoteWindow.MainWindow.DisplayReturned.MouseButton1Up:connect(function()
4425 if displayValues then
4426 displayValues = false
4427 CurrentRemoteWindow.MainWindow.DisplayReturned.enabled.Visible = false
4428 else
4429 displayValues = true
4430 CurrentRemoteWindow.MainWindow.DisplayReturned.enabled.Visible = true
4431 end
4432 end)
4433end
4434
4435function PromptSaveInstance(inst)
4436 if not SaveInstance and not _G.SaveInstance then CreateCaution("SaveInstance Missing","You do not have the SaveInstance function installed. Please go to RaspberryPi's thread to retrieve it.") return end
4437 if CurrentSaveInstanceWindow then
4438 CurrentSaveInstanceWindow:Destroy()
4439 CurrentSaveInstanceWindow = nil
4440 if explorerPanel.Parent:FindFirstChild("SaveInstanceOverwriteCaution") then
4441 explorerPanel.Parent.SaveInstanceOverwriteCaution:Destroy()
4442 end
4443 end
4444 CurrentSaveInstanceWindow = SaveInstanceWindow:Clone()
4445 CurrentSaveInstanceWindow.Parent = explorerPanel.Parent
4446 CurrentSaveInstanceWindow.Visible = true
4447
4448 local filename = CurrentSaveInstanceWindow.MainWindow.FileName
4449 local saveObjects = true
4450 local overwriteCaution = false
4451
4452 CurrentSaveInstanceWindow.MainWindow.Save.MouseButton1Up:connect(function()
4453 if readfile and getelysianpath then
4454 if readfile(getelysianpath()..filename.Text..".rbxmx") then
4455 if not overwriteCaution then
4456 overwriteCaution = true
4457 local newCaution = ConfirmationWindow:Clone()
4458 newCaution.Name = "SaveInstanceOverwriteCaution"
4459 newCaution.MainWindow.Desc.Text = "The file, "..filename.Text..".rbxmx, already exists. Overwrite?"
4460 newCaution.Parent = explorerPanel.Parent
4461 newCaution.Visible = true
4462 newCaution.MainWindow.Yes.MouseButton1Up:connect(function()
4463 ypcall(function()
4464 SaveInstance(inst,filename.Text..".rbxmx",not saveObjects)
4465 end)
4466 overwriteCaution = false
4467 newCaution:Destroy()
4468 if CurrentSaveInstanceWindow then
4469 CurrentSaveInstanceWindow:Destroy()
4470 CurrentSaveInstanceWindow = nil
4471 end
4472 end)
4473 newCaution.MainWindow.No.MouseButton1Up:connect(function()
4474 overwriteCaution = false
4475 newCaution:Destroy()
4476 end)
4477 end
4478 else
4479 ypcall(function()
4480 SaveInstance(inst,filename.Text..".rbxmx",not saveObjects)
4481 end)
4482 if CurrentSaveInstanceWindow then
4483 CurrentSaveInstanceWindow:Destroy()
4484 CurrentSaveInstanceWindow = nil
4485 if explorerPanel.Parent:FindFirstChild("SaveInstanceOverwriteCaution") then
4486 explorerPanel.Parent.SaveInstanceOverwriteCaution:Destroy()
4487 end
4488 end
4489 end
4490 else
4491 ypcall(function()
4492 if SaveInstance then
4493 SaveInstance(inst,filename.Text..".rbxmx",not saveObjects)
4494 else
4495 _G.SaveInstance(inst,filename.Text,not saveObjects)
4496 end
4497 end)
4498 if CurrentSaveInstanceWindow then
4499 CurrentSaveInstanceWindow:Destroy()
4500 CurrentSaveInstanceWindow = nil
4501 if explorerPanel.Parent:FindFirstChild("SaveInstanceOverwriteCaution") then
4502 explorerPanel.Parent.SaveInstanceOverwriteCaution:Destroy()
4503 end
4504 end
4505 end
4506 end)
4507 CurrentSaveInstanceWindow.MainWindow.Cancel.MouseButton1Up:connect(function()
4508 if CurrentSaveInstanceWindow then
4509 CurrentSaveInstanceWindow:Destroy()
4510 CurrentSaveInstanceWindow = nil
4511 if explorerPanel.Parent:FindFirstChild("SaveInstanceOverwriteCaution") then
4512 explorerPanel.Parent.SaveInstanceOverwriteCaution:Destroy()
4513 end
4514 end
4515 end)
4516 CurrentSaveInstanceWindow.MainWindow.SaveObjects.MouseButton1Up:connect(function()
4517 if saveObjects then
4518 saveObjects = false
4519 CurrentSaveInstanceWindow.MainWindow.SaveObjects.enabled.Visible = false
4520 else
4521 saveObjects = true
4522 CurrentSaveInstanceWindow.MainWindow.SaveObjects.enabled.Visible = true
4523 end
4524 end)
4525end
4526
4527function DestroyRightClick()
4528 if currentRightClickMenu then
4529 currentRightClickMenu:Destroy()
4530 currentRightClickMenu = nil
4531 end
4532 if CurrentInsertObjectWindow and CurrentInsertObjectWindow.Visible then
4533 CurrentInsertObjectWindow.Visible = false
4534 end
4535end
4536
4537function rightClickMenu(sObj)
4538 local mouse = game.Players.LocalPlayer:GetMouse()
4539
4540 currentRightClickMenu = CreateRightClickMenu(
4541 {"Cut","Copy","Paste Into","Duplicate","Delete","Group","Ungroup","Select Children","Teleport To","Insert Part","Insert Object","View Script","Save Instance","Call Function","Call Remote"},
4542 "",
4543 false,
4544 function(option)
4545 if option == "Cut" then
4546 if not Option.Modifiable then return end
4547 clipboard = {}
4548 local list = Selection.List
4549 local cut = {}
4550 for i = 1,#list do
4551 local obj = list[i]:Clone()
4552 if obj then
4553 table.insert(clipboard,obj)
4554 table.insert(cut,list[i])
4555 end
4556 end
4557 for i = 1,#cut do
4558 pcall(delete,cut[i])
4559 end
4560 updateActions()
4561 elseif option == "Copy" then
4562 if not Option.Modifiable then return end
4563 clipboard = {}
4564 local list = Selection.List
4565 for i = 1,#list do
4566 table.insert(clipboard,list[i]:Clone())
4567 end
4568 updateActions()
4569 elseif option == "Paste Into" then
4570 if not Option.Modifiable then return end
4571 local parent = Selection.List[1] or workspace
4572 for i = 1,#clipboard do
4573 clipboard[i]:Clone().Parent = parent
4574 end
4575 elseif option == "Duplicate" then
4576 if not Option.Modifiable then return end
4577 local list = Selection:Get()
4578 for i = 1,#list do
4579 list[i]:Clone().Parent = Selection.List[1].Parent or workspace
4580 end
4581 elseif option == "Delete" then
4582 if not Option.Modifiable then return end
4583 local list = Selection:Get()
4584 for i = 1,#list do
4585 pcall(delete,list[i])
4586 end
4587 Selection:Set({})
4588 elseif option == "Group" then
4589 if not Option.Modifiable then return end
4590 local newModel = Instance.new("Model")
4591 local list = Selection:Get()
4592 newModel.Parent = Selection.List[1].Parent or workspace
4593 for i = 1,#list do
4594 list[i].Parent = newModel
4595 end
4596 Selection:Set({})
4597 elseif option == "Ungroup" then
4598 if not Option.Modifiable then return end
4599 local ungrouped = {}
4600 local list = Selection:Get()
4601 for i = 1,#list do
4602 if list[i]:IsA("Model") then
4603 for i2,v2 in pairs(list[i]:GetChildren()) do
4604 v2.Parent = list[i].Parent or workspace
4605 table.insert(ungrouped,v2)
4606 end
4607 pcall(delete,list[i])
4608 end
4609 end
4610 Selection:Set({})
4611 if SettingsRemote:Invoke("SelectUngrouped") then
4612 for i,v in pairs(ungrouped) do
4613 Selection:Add(v)
4614 end
4615 end
4616 elseif option == "Select Children" then
4617 if not Option.Modifiable then return end
4618 local list = Selection:Get()
4619 Selection:Set({})
4620 Selection:StopUpdates()
4621 for i = 1,#list do
4622 for i2,v2 in pairs(list[i]:GetChildren()) do
4623 Selection:Add(v2)
4624 end
4625 end
4626 Selection:ResumeUpdates()
4627 elseif option == "Teleport To" then
4628 if not Option.Modifiable then return end
4629 local list = Selection:Get()
4630 for i = 1,#list do
4631 if list[i]:IsA("BasePart") then
4632 pcall(function()
4633 game.Players.LocalPlayer.Character.HumanoidRootPart.CFrame = list[i].CFrame
4634 end)
4635 break
4636 end
4637 end
4638 elseif option == "Insert Part" then
4639 if not Option.Modifiable then return end
4640 local insertedParts = {}
4641 local list = Selection:Get()
4642 for i = 1,#list do
4643 pcall(function()
4644 local newPart = Instance.new("Part")
4645 newPart.Parent = list[i]
4646 newPart.CFrame = CFrame.new(game.Players.LocalPlayer.Character.Head.Position) + Vector3.new(0,3,0)
4647 table.insert(insertedParts,newPart)
4648 end)
4649 end
4650 elseif option == "Save Instance" then
4651 if not Option.Modifiable then return end
4652 local list = Selection:Get()
4653 if #list == 1 then
4654 list[1].Archivable = true
4655 ypcall(function()PromptSaveInstance(list[1]:Clone())end)
4656 elseif #list > 1 then
4657 local newModel = Instance.new("Model")
4658 newModel.Name = "SavedInstances"
4659 for i = 1,#list do
4660 ypcall(function()
4661 list[i].Archivable = true
4662 list[i]:Clone().Parent = newModel
4663 end)
4664 end
4665 PromptSaveInstance(newModel)
4666 end
4667 elseif option == "Call Remote" then
4668 if not Option.Modifiable then return end
4669 local list = Selection:Get()
4670 for i = 1,#list do
4671 if list[i]:IsA("RemoteFunction") or list[i]:IsA("RemoteEvent") then
4672 PromptRemoteCaller(list[i])
4673 break
4674 end
4675 end
4676 elseif option == "View Script" then
4677 if not Option.Modifiable then return end
4678 local list = Selection:Get()
4679 for i = 1,#list do
4680 if list[i]:IsA("LocalScript") or list[i]:IsA("ModuleScript") then
4681 ScriptEditorEvent:Fire(list[i])
4682 end
4683 end
4684 end
4685 end)
4686 currentRightClickMenu.Parent = explorerPanel.Parent
4687 currentRightClickMenu.Position = UDim2.new(0,mouse.X,0,mouse.Y)
4688 if currentRightClickMenu.AbsolutePosition.X + currentRightClickMenu.AbsoluteSize.X > explorerPanel.AbsolutePosition.X + explorerPanel.AbsoluteSize.X then
4689 currentRightClickMenu.Position = UDim2.new(0, explorerPanel.AbsolutePosition.X + explorerPanel.AbsoluteSize.X - currentRightClickMenu.AbsoluteSize.X, 0, mouse.Y)
4690 end
4691end
4692
4693local function cancelReparentDrag()end
4694local function cancelSelectDrag()end
4695do
4696 local listEntries = {}
4697 local nameConnLookup = {}
4698
4699 local mouseDrag = Create('ImageButton',{
4700 Name = "MouseDrag";
4701 Position = UDim2.new(-0.25,0,-0.25,0);
4702 Size = UDim2.new(1.5,0,1.5,0);
4703 Transparency = 1;
4704 AutoButtonColor = false;
4705 Active = true;
4706 ZIndex = 10;
4707 })
4708 local function dragSelect(last,add,button)
4709 local connDrag
4710 local conUp
4711
4712 conDrag = mouseDrag.MouseMoved:connect(function(x,y)
4713 local pos = Vector2.new(x,y) - listFrame.AbsolutePosition
4714 local size = listFrame.AbsoluteSize
4715 if pos.x < 0 or pos.x > size.x or pos.y < 0 or pos.y > size.y then return end
4716
4717 local i = math.ceil(pos.y/ENTRY_BOUND) + scrollBar.ScrollIndex
4718 -- Mouse may have made a large step, so interpolate between the
4719 -- last index and the current.
4720 for n = i<last and i or last, i>last and i or last do
4721 local node = TreeList[n]
4722 if node then
4723 if add then
4724 Selection:Add(node.Object)
4725 else
4726 Selection:Remove(node.Object)
4727 end
4728 end
4729 end
4730 last = i
4731 end)
4732
4733 function cancelSelectDrag()
4734 mouseDrag.Parent = nil
4735 conDrag:disconnect()
4736 conUp:disconnect()
4737 function cancelSelectDrag()end
4738 end
4739
4740 conUp = mouseDrag[button]:connect(cancelSelectDrag)
4741
4742 mouseDrag.Parent = GetScreen(listFrame)
4743 end
4744
4745 local function dragReparent(object,dragGhost,clickPos,ghostOffset)
4746 local connDrag
4747 local conUp
4748 local conUp2
4749
4750 local parentIndex = nil
4751 local dragged = false
4752
4753 local parentHighlight = Create('Frame',{
4754 Transparency = 1;
4755 Visible = false;
4756 Create('Frame',{
4757 BorderSizePixel = 0;
4758 BackgroundColor3 = Color3.new(0,0,0);
4759 BackgroundTransparency = 0.1;
4760 Position = UDim2.new(0,0,0,0);
4761 Size = UDim2.new(1,0,0,1);
4762 });
4763 Create('Frame',{
4764 BorderSizePixel = 0;
4765 BackgroundColor3 = Color3.new(0,0,0);
4766 BackgroundTransparency = 0.1;
4767 Position = UDim2.new(1,0,0,0);
4768 Size = UDim2.new(0,1,1,0);
4769 });
4770 Create('Frame',{
4771 BorderSizePixel = 0;
4772 BackgroundColor3 = Color3.new(0,0,0);
4773 BackgroundTransparency = 0.1;
4774 Position = UDim2.new(0,0,1,0);
4775 Size = UDim2.new(1,0,0,1);
4776 });
4777 Create('Frame',{
4778 BorderSizePixel = 0;
4779 BackgroundColor3 = Color3.new(0,0,0);
4780 BackgroundTransparency = 0.1;
4781 Position = UDim2.new(0,0,0,0);
4782 Size = UDim2.new(0,1,1,0);
4783 });
4784 })
4785 SetZIndex(parentHighlight,9)
4786
4787 conDrag = mouseDrag.MouseMoved:connect(function(x,y)
4788 local dragPos = Vector2.new(x,y)
4789 if dragged then
4790 local pos = dragPos - listFrame.AbsolutePosition
4791 local size = listFrame.AbsoluteSize
4792
4793 parentIndex = nil
4794 parentHighlight.Visible = false
4795 if pos.x >= 0 and pos.x <= size.x and pos.y >= 0 and pos.y <= size.y + ENTRY_SIZE*2 then
4796 local i = math.ceil(pos.y/ENTRY_BOUND-2)
4797 local node = TreeList[i + scrollBar.ScrollIndex]
4798 if node and node.Object ~= object and not object:IsAncestorOf(node.Object) then
4799 parentIndex = i
4800 local entry = listEntries[i]
4801 if entry then
4802 parentHighlight.Visible = true
4803 parentHighlight.Position = UDim2.new(0,1,0,entry.AbsolutePosition.y-listFrame.AbsolutePosition.y)
4804 parentHighlight.Size = UDim2.new(0,size.x-4,0,entry.AbsoluteSize.y)
4805 end
4806 end
4807 end
4808
4809 dragGhost.Position = UDim2.new(0,dragPos.x+ghostOffset.x,0,dragPos.y+ghostOffset.y)
4810 elseif (clickPos-dragPos).magnitude > 8 then
4811 dragged = true
4812 SetZIndex(dragGhost,9)
4813 dragGhost.IndentFrame.Transparency = 0.25
4814 dragGhost.IndentFrame.EntryText.TextColor3 = GuiColor.TextSelected
4815 dragGhost.Position = UDim2.new(0,dragPos.x+ghostOffset.x,0,dragPos.y+ghostOffset.y)
4816 dragGhost.Parent = GetScreen(listFrame)
4817 parentHighlight.Parent = listFrame
4818 end
4819 end)
4820
4821 function cancelReparentDrag()
4822 mouseDrag.Parent = nil
4823 conDrag:disconnect()
4824 conUp:disconnect()
4825 conUp2:disconnect()
4826 dragGhost:Destroy()
4827 parentHighlight:Destroy()
4828 function cancelReparentDrag()end
4829 end
4830
4831 local wasSelected = Selection.Selected[object]
4832 if not wasSelected and Option.Selectable then
4833 Selection:Set({object})
4834 end
4835
4836 conUp = mouseDrag.MouseButton1Up:connect(function()
4837 cancelReparentDrag()
4838 if dragged then
4839 if parentIndex then
4840 local parentNode = TreeList[parentIndex + scrollBar.ScrollIndex]
4841 if parentNode then
4842 parentNode.Expanded = true
4843
4844 local parentObj = parentNode.Object
4845 local function parent(a,b)
4846 a.Parent = b
4847 end
4848 if Option.Selectable then
4849 local list = Selection.List
4850 for i = 1,#list do
4851 pcall(parent,list[i],parentObj)
4852 end
4853 else
4854 pcall(parent,object,parentObj)
4855 end
4856 end
4857 end
4858 else
4859 -- do selection click
4860 if wasSelected and Option.Selectable then
4861 Selection:Set({})
4862 end
4863 end
4864 end)
4865 conUp2 = mouseDrag.MouseButton2Down:connect(function()
4866 cancelReparentDrag()
4867 end)
4868
4869 mouseDrag.Parent = GetScreen(listFrame)
4870 end
4871
4872 local entryTemplate = Create('ImageButton',{
4873 Name = "Entry";
4874 Transparency = 1;
4875 AutoButtonColor = false;
4876 Position = UDim2.new(0,0,0,0);
4877 Size = UDim2.new(1,0,0,ENTRY_SIZE);
4878 Create('Frame',{
4879 Name = "IndentFrame";
4880 BackgroundTransparency = 1;
4881 BackgroundColor3 = GuiColor.Selected;
4882 BorderColor3 = GuiColor.BorderSelected;
4883 Position = UDim2.new(0,0,0,0);
4884 Size = UDim2.new(1,0,1,0);
4885 Create(Icon('ImageButton',0),{
4886 Name = "Expand";
4887 AutoButtonColor = false;
4888 Position = UDim2.new(0,-GUI_SIZE,0.5,-GUI_SIZE/2);
4889 Size = UDim2.new(0,GUI_SIZE,0,GUI_SIZE);
4890 });
4891 Create(Icon(nil,0),{
4892 Name = "ExplorerIcon";
4893 Position = UDim2.new(0,2+ENTRY_PADDING,0.5,-GUI_SIZE/2);
4894 Size = UDim2.new(0,GUI_SIZE,0,GUI_SIZE);
4895 });
4896 Create('TextLabel',{
4897 Name = "EntryText";
4898 BackgroundTransparency = 1;
4899 TextColor3 = GuiColor.Text;
4900 TextXAlignment = 'Left';
4901 TextYAlignment = 'Center';
4902 Font = FONT;
4903 FontSize = FONT_SIZE;
4904 Text = "";
4905 Position = UDim2.new(0,2+ENTRY_SIZE+4,0,0);
4906 Size = UDim2.new(1,-2,1,0);
4907 });
4908 });
4909 })
4910
4911 function scrollBar.UpdateCallback(self)
4912 for i = 1,self.VisibleSpace do
4913 local node = TreeList[i + self.ScrollIndex]
4914 if node then
4915 local entry = listEntries[i]
4916 if not entry then
4917 entry = Create(entryTemplate:Clone(),{
4918 Position = UDim2.new(0,2,0,ENTRY_BOUND*(i-1)+2);
4919 Size = UDim2.new(0,nodeWidth,0,ENTRY_SIZE);
4920 ZIndex = listFrame.ZIndex;
4921 })
4922 listEntries[i] = entry
4923
4924 local expand = entry.IndentFrame.Expand
4925 expand.MouseEnter:connect(function()
4926 local node = TreeList[i + self.ScrollIndex]
4927 if #node > 0 then
4928 if node.Expanded then
4929 Icon(expand,NODE_EXPANDED_OVER)
4930 else
4931 Icon(expand,NODE_COLLAPSED_OVER)
4932 end
4933 end
4934 end)
4935 expand.MouseLeave:connect(function()
4936 local node = TreeList[i + self.ScrollIndex]
4937 if #node > 0 then
4938 if node.Expanded then
4939 Icon(expand,NODE_EXPANDED)
4940 else
4941 Icon(expand,NODE_COLLAPSED)
4942 end
4943 end
4944 end)
4945 expand.MouseButton1Down:connect(function()
4946 local node = TreeList[i + self.ScrollIndex]
4947 if #node > 0 then
4948 node.Expanded = not node.Expanded
4949 if node.Object == explorerPanel.Parent and node.Expanded then
4950 CreateCaution("Warning","Please be careful when editing instances inside here, this is like the System32 of Dex and modifying objects here can break Dex.")
4951 end
4952 -- use raw update so the list updates instantly
4953 rawUpdateList()
4954 end
4955 end)
4956
4957 entry.MouseButton1Down:connect(function(x,y)
4958 local node = TreeList[i + self.ScrollIndex]
4959 DestroyRightClick()
4960 if GetAwaitRemote:Invoke() then
4961 bindSetAwaiting:Fire(node.Object)
4962 return
4963 end
4964
4965 if not HoldingShift then
4966 lastSelectedNode = i + self.ScrollIndex
4967 end
4968
4969 if HoldingShift and not filteringWorkspace() then
4970 if lastSelectedNode then
4971 if i + self.ScrollIndex - lastSelectedNode > 0 then
4972 Selection:StopUpdates()
4973 for i2 = 1, i + self.ScrollIndex - lastSelectedNode do
4974 local newNode = TreeList[lastSelectedNode + i2]
4975 if newNode then
4976 Selection:Add(newNode.Object)
4977 end
4978 end
4979 Selection:ResumeUpdates()
4980 else
4981 Selection:StopUpdates()
4982 for i2 = i + self.ScrollIndex - lastSelectedNode, 1 do
4983 local newNode = TreeList[lastSelectedNode + i2]
4984 if newNode then
4985 Selection:Add(newNode.Object)
4986 end
4987 end
4988 Selection:ResumeUpdates()
4989 end
4990 end
4991 return
4992 end
4993
4994 if HoldingCtrl then
4995 if Selection.Selected[node.Object] then
4996 Selection:Remove(node.Object)
4997 else
4998 Selection:Add(node.Object)
4999 end
5000 return
5001 end
5002 if Option.Modifiable then
5003 local pos = Vector2.new(x,y)
5004 dragReparent(node.Object,entry:Clone(),pos,entry.AbsolutePosition-pos)
5005 elseif Option.Selectable then
5006 if Selection.Selected[node.Object] then
5007 Selection:Set({})
5008 else
5009 Selection:Set({node.Object})
5010 end
5011 dragSelect(i+self.ScrollIndex,true,'MouseButton1Up')
5012 end
5013 end)
5014
5015 entry.MouseButton2Down:connect(function()
5016 if not Option.Selectable then return end
5017
5018 DestroyRightClick()
5019
5020 curSelect = entry
5021
5022 local node = TreeList[i + self.ScrollIndex]
5023
5024 if GetAwaitRemote:Invoke() then
5025 bindSetAwaiting:Fire(node.Object)
5026 return
5027 end
5028
5029 if not Selection.Selected[node.Object] then
5030 Selection:Set({node.Object})
5031 end
5032 end)
5033
5034
5035 entry.MouseButton2Up:connect(function()
5036 if not Option.Selectable then return end
5037
5038 local node = TreeList[i + self.ScrollIndex]
5039
5040 if checkMouseInGui(curSelect) then
5041 rightClickMenu(node.Object)
5042 end
5043 end)
5044
5045 entry.Parent = listFrame
5046 end
5047
5048 entry.Visible = true
5049
5050 local object = node.Object
5051
5052 -- update expand icon
5053 if #node == 0 then
5054 entry.IndentFrame.Expand.Visible = false
5055 elseif node.Expanded then
5056 Icon(entry.IndentFrame.Expand,NODE_EXPANDED)
5057 entry.IndentFrame.Expand.Visible = true
5058 else
5059 Icon(entry.IndentFrame.Expand,NODE_COLLAPSED)
5060 entry.IndentFrame.Expand.Visible = true
5061 end
5062
5063 -- update explorer icon
5064 Icon(entry.IndentFrame.ExplorerIcon,ExplorerIndex[object.ClassName] or 0)
5065
5066 -- update indentation
5067 local w = (node.Depth)*(2+ENTRY_PADDING+GUI_SIZE)
5068 entry.IndentFrame.Position = UDim2.new(0,w,0,0)
5069 entry.IndentFrame.Size = UDim2.new(1,-w,1,0)
5070
5071 -- update name change detection
5072 if nameConnLookup[entry] then
5073 nameConnLookup[entry]:disconnect()
5074 end
5075 local text = entry.IndentFrame.EntryText
5076 text.Text = object.Name
5077 nameConnLookup[entry] = node.Object.Changed:connect(function(p)
5078 if p == 'Name' then
5079 text.Text = object.Name
5080 end
5081 end)
5082
5083 -- update selection
5084 entry.IndentFrame.Transparency = node.Selected and 0 or 1
5085 text.TextColor3 = GuiColor[node.Selected and 'TextSelected' or 'Text']
5086
5087 entry.Size = UDim2.new(0,nodeWidth,0,ENTRY_SIZE)
5088 elseif listEntries[i] then
5089 listEntries[i].Visible = false
5090 end
5091 end
5092 for i = self.VisibleSpace+1,self.TotalSpace do
5093 local entry = listEntries[i]
5094 if entry then
5095 listEntries[i] = nil
5096 entry:Destroy()
5097 end
5098 end
5099 end
5100
5101 function scrollBarH.UpdateCallback(self)
5102 for i = 1,scrollBar.VisibleSpace do
5103 local node = TreeList[i + scrollBar.ScrollIndex]
5104 if node then
5105 local entry = listEntries[i]
5106 if entry then
5107 entry.Position = UDim2.new(0,2 - scrollBarH.ScrollIndex,0,ENTRY_BOUND*(i-1)+2)
5108 end
5109 end
5110 end
5111 end
5112
5113 Connect(listFrame.Changed,function(p)
5114 if p == 'AbsoluteSize' then
5115 rawUpdateSize()
5116 end
5117 end)
5118
5119 local wheelAmount = 6
5120 explorerPanel.MouseWheelForward:connect(function()
5121 if scrollBar.VisibleSpace - 1 > wheelAmount then
5122 scrollBar:ScrollTo(scrollBar.ScrollIndex - wheelAmount)
5123 else
5124 scrollBar:ScrollTo(scrollBar.ScrollIndex - scrollBar.VisibleSpace)
5125 end
5126 end)
5127 explorerPanel.MouseWheelBackward:connect(function()
5128 if scrollBar.VisibleSpace - 1 > wheelAmount then
5129 scrollBar:ScrollTo(scrollBar.ScrollIndex + wheelAmount)
5130 else
5131 scrollBar:ScrollTo(scrollBar.ScrollIndex + scrollBar.VisibleSpace)
5132 end
5133 end)
5134end
5135
5136----------------------------------------------------------------
5137----------------------------------------------------------------
5138----------------------------------------------------------------
5139----------------------------------------------------------------
5140---- Object detection
5141
5142-- Inserts `v` into `t` at `i`. Also sets `Index` field in `v`.
5143local function insert(t,i,v)
5144 for n = #t,i,-1 do
5145 local v = t[n]
5146 v.Index = n+1
5147 t[n+1] = v
5148 end
5149 v.Index = i
5150 t[i] = v
5151end
5152
5153-- Removes `i` from `t`. Also sets `Index` field in removed value.
5154local function remove(t,i)
5155 local v = t[i]
5156 for n = i+1,#t do
5157 local v = t[n]
5158 v.Index = n-1
5159 t[n-1] = v
5160 end
5161 t[#t] = nil
5162 v.Index = 0
5163 return v
5164end
5165
5166-- Returns how deep `o` is in the tree.
5167local function depth(o)
5168 local d = -1
5169 while o do
5170 o = o.Parent
5171 d = d + 1
5172 end
5173 return d
5174end
5175
5176
5177local connLookup = {}
5178
5179-- Returns whether a node would be present in the tree list
5180local function nodeIsVisible(node)
5181 local visible = true
5182 node = node.Parent
5183 while node and visible do
5184 visible = visible and node.Expanded
5185 node = node.Parent
5186 end
5187 return visible
5188end
5189
5190-- Removes an object's tree node. Called when the object stops existing in the
5191-- game tree.
5192local function removeObject(object)
5193 local objectNode = NodeLookup[object]
5194 if not objectNode then
5195 return
5196 end
5197
5198 local visible = nodeIsVisible(objectNode)
5199
5200 Selection:Remove(object,true)
5201
5202 local parent = objectNode.Parent
5203 remove(parent,objectNode.Index)
5204 NodeLookup[object] = nil
5205 connLookup[object]:disconnect()
5206 connLookup[object] = nil
5207
5208 if visible then
5209 updateList()
5210 elseif nodeIsVisible(parent) then
5211 updateScroll()
5212 end
5213end
5214
5215-- Moves a tree node to a new parent. Called when an existing object's parent
5216-- changes.
5217local function moveObject(object,parent)
5218 local objectNode = NodeLookup[object]
5219 if not objectNode then
5220 return
5221 end
5222
5223 local parentNode = NodeLookup[parent]
5224 if not parentNode then
5225 return
5226 end
5227
5228 local visible = nodeIsVisible(objectNode)
5229
5230 remove(objectNode.Parent,objectNode.Index)
5231 objectNode.Parent = parentNode
5232
5233 objectNode.Depth = depth(object)
5234 local function r(node,d)
5235 for i = 1,#node do
5236 node[i].Depth = d
5237 r(node[i],d+1)
5238 end
5239 end
5240 r(objectNode,objectNode.Depth+1)
5241
5242 insert(parentNode,#parentNode+1,objectNode)
5243
5244 if visible or nodeIsVisible(objectNode) then
5245 updateList()
5246 elseif nodeIsVisible(objectNode.Parent) then
5247 updateScroll()
5248 end
5249end
5250
5251-- ScriptContext['/Libraries/LibraryRegistration/LibraryRegistration']
5252-- This RobloxLocked object lets me index its properties for some reason
5253
5254local function check(object)
5255 return object.AncestryChanged
5256end
5257
5258-- Creates a new tree node from an object. Called when an object starts
5259-- existing in the game tree.
5260local function addObject(object,noupdate)
5261 if script then
5262 -- protect against naughty RobloxLocked objects
5263 local s = pcall(check,object)
5264 if not s then
5265 return
5266 end
5267 end
5268
5269 local parentNode = NodeLookup[object.Parent]
5270 if not parentNode then
5271 return
5272 end
5273
5274 local objectNode = {
5275 Object = object;
5276 Parent = parentNode;
5277 Index = 0;
5278 Expanded = false;
5279 Selected = false;
5280 Depth = depth(object);
5281 }
5282
5283 connLookup[object] = Connect(object.AncestryChanged,function(c,p)
5284 if c == object then
5285 if p == nil then
5286 removeObject(c)
5287 else
5288 moveObject(c,p)
5289 end
5290 end
5291 end)
5292
5293 NodeLookup[object] = objectNode
5294 insert(parentNode,#parentNode+1,objectNode)
5295
5296 if not noupdate then
5297 if nodeIsVisible(objectNode) then
5298 updateList()
5299 elseif nodeIsVisible(objectNode.Parent) then
5300 updateScroll()
5301 end
5302 end
5303end
5304
5305local function makeObject(obj,par)
5306 local newObject = Instance.new(obj.ClassName)
5307 for i,v in pairs(obj.Properties) do
5308 ypcall(function()
5309 local newProp
5310 newProp = ToPropValue(v.Value,v.Type)
5311 newObject[v.Name] = newProp
5312 end)
5313 end
5314 newObject.Parent = par
5315end
5316
5317local function writeObject(obj)
5318 local newObject = {ClassName = obj.ClassName, Properties = {}}
5319 for i,v in pairs(RbxApi.GetProperties(obj.className)) do
5320 if v["Name"] ~= "Parent" then
5321 print("thispassed")
5322 table.insert(newObject.Properties,{Name = v["Name"], Type = v["ValueType"], Value = tostring(obj[v["Name"]])})
5323 end
5324 end
5325 return newObject
5326end
5327
5328local function buildDexStorage()
5329 local localDexStorage
5330
5331 local success,err = ypcall(function()
5332 localDexStorage = game:GetObjects("rbxasset://DexStorage.rbxm")[1]
5333 end)
5334
5335 if success and localDexStorage then
5336 for i,v in pairs(localDexStorage:GetChildren()) do
5337 ypcall(function()
5338 v.Parent = DexStorageMain
5339 end)
5340 end
5341 end
5342
5343 updateDexStorageListeners()
5344 --[[
5345 local localDexStorage = readfile(getelysianpath().."DexStorage.txt")--game:GetService("CookiesService"):GetCookieValue("DexStorage")
5346 --local success,err = pcall(function()
5347 if localDexStorage then
5348 local objTable = game:GetService("HttpService"):JSONDecode(localDexStorage)
5349 for i,v in pairs(objTable) do
5350 makeObject(v,DexStorageMain)
5351 end
5352 end
5353 --end)
5354 --]]
5355end
5356
5357local dexStorageDebounce = false
5358local dexStorageListeners = {}
5359
5360local function updateDexStorage()
5361 if dexStorageDebounce then return end
5362 dexStorageDebounce = true
5363
5364 wait()
5365
5366 pcall(function()
5367 saveinstance("content//DexStorage.rbxm",DexStorageMain)
5368 end)
5369
5370 updateDexStorageListeners()
5371
5372 dexStorageDebounce = false
5373 --[[
5374 local success,err = ypcall(function()
5375 local objs = {}
5376 for i,v in pairs(DexStorageMain:GetChildren()) do
5377 table.insert(objs,writeObject(v))
5378 end
5379 writefile(getelysianpath().."DexStorage.txt",game:GetService("HttpService"):JSONEncode(objs))
5380 --game:GetService("CookiesService"):SetCookieValue("DexStorage",game:GetService("HttpService"):JSONEncode(objs))
5381 end)
5382 if err then
5383 CreateCaution("DexStorage Save Fail!","DexStorage broke! If you see this message, report to Raspberry Pi!")
5384 end
5385 print("hi")
5386 --]]
5387end
5388
5389function updateDexStorageListeners()
5390 for i,v in pairs(dexStorageListeners) do
5391 v:Disconnect()
5392 end
5393 dexStorageListeners = {}
5394 for i,v in pairs(DexStorageMain:GetChildren()) do
5395 pcall(function()
5396 local ev = v.Changed:connect(updateDexStorage)
5397 table.insert(dexStorageListeners,ev)
5398 end)
5399 end
5400end
5401
5402do
5403 NodeLookup[workspace.Parent] = {
5404 Object = workspace.Parent;
5405 Parent = nil;
5406 Index = 0;
5407 Expanded = true;
5408 }
5409
5410 if DexStorageEnabled then
5411 NodeLookup[DexStorage] = {
5412 Object = DexStorage;
5413 Parent = nil;
5414 Index = 0;
5415 Expanded = true;
5416 }
5417 end
5418
5419 if NilStorageEnabled then
5420 NodeLookup[NilStorage] = {
5421 Object = NilStorage;
5422 Parent = nil;
5423 Index = 0;
5424 Expanded = true;
5425 }
5426 end
5427
5428 Connect(game.DescendantAdded,addObject)
5429 Connect(game.DescendantRemoving,removeObject)
5430
5431 if DexStorageEnabled then
5432 --[[
5433 if readfile(getelysianpath().."DexStorage.txt") == nil then
5434 writefile(getelysianpath().."DexStorage.txt","")
5435 end
5436 --]]
5437
5438 buildDexStorage()
5439
5440 Connect(DexStorage.DescendantAdded,addObject)
5441 Connect(DexStorage.DescendantRemoving,removeObject)
5442
5443 Connect(DexStorage.DescendantAdded,updateDexStorage)
5444 Connect(DexStorage.DescendantRemoving,updateDexStorage)
5445 end
5446
5447 if NilStorageEnabled then
5448 Connect(NilStorage.DescendantAdded,addObject)
5449 Connect(NilStorage.DescendantRemoving,removeObject)
5450
5451 local currentTable = get_nil_instances()
5452
5453 spawn(function()
5454 while wait() do
5455 if #currentTable ~= #get_nil_instances() then
5456 currentTable = get_nil_instances()
5457 --NilStorageMain:ClearAllChildren()
5458 for i,v in pairs(get_nil_instances()) do
5459 if v ~= NilStorage and v ~= DexStorage then
5460 pcall(function()
5461 v.Parent = NilStorageMain
5462 end)
5463 --[[
5464 local newNil = v
5465 newNil.Archivable = true
5466 newNil:Clone().Parent = NilStorageMain
5467 --]]
5468 end
5469 end
5470 end
5471 end
5472 end)
5473 end
5474
5475 local function get(o)
5476 return o:GetChildren()
5477 end
5478
5479 local function r(o)
5480 local s,children = pcall(get,o)
5481 if s then
5482 for i = 1,#children do
5483 addObject(children[i],true)
5484 r(children[i])
5485 end
5486 end
5487 end
5488
5489 r(workspace.Parent)
5490 if DexStorageEnabled then
5491 r(DexStorage)
5492 end
5493 if NilStorageEnabled then
5494 r(NilStorage)
5495 end
5496
5497 scrollBar.VisibleSpace = math.ceil(listFrame.AbsoluteSize.y/ENTRY_BOUND)
5498 updateList()
5499end
5500
5501----------------------------------------------------------------
5502----------------------------------------------------------------
5503----------------------------------------------------------------
5504----------------------------------------------------------------
5505---- Actions
5506
5507local actionButtons do
5508 actionButtons = {}
5509
5510 local totalActions = 1
5511 local currentActions = totalActions
5512 local function makeButton(icon,over,name,vis,cond)
5513 local buttonEnabled = false
5514
5515 local button = Create(Icon('ImageButton',icon),{
5516 Name = name .. "Button";
5517 Visible = Option.Modifiable and Option.Selectable;
5518 Position = UDim2.new(1,-(GUI_SIZE+2)*currentActions+2,0.25,-GUI_SIZE/2);
5519 Size = UDim2.new(0,GUI_SIZE,0,GUI_SIZE);
5520 Parent = headerFrame;
5521 })
5522
5523 local tipText = Create('TextLabel',{
5524 Name = name .. "Text";
5525 Text = name;
5526 Visible = false;
5527 BackgroundTransparency = 1;
5528 TextXAlignment = 'Right';
5529 Font = FONT;
5530 FontSize = FONT_SIZE;
5531 Position = UDim2.new(0,0,0,0);
5532 Size = UDim2.new(1,-(GUI_SIZE+2)*totalActions,1,0);
5533 Parent = headerFrame;
5534 })
5535
5536
5537 button.MouseEnter:connect(function()
5538 if buttonEnabled then
5539 button.BackgroundTransparency = 0.9
5540 end
5541 --Icon(button,over)
5542 --tipText.Visible = true
5543 end)
5544 button.MouseLeave:connect(function()
5545 button.BackgroundTransparency = 1
5546 --Icon(button,icon)
5547 --tipText.Visible = false
5548 end)
5549
5550 currentActions = currentActions + 1
5551 actionButtons[#actionButtons+1] = {Obj = button,Cond = cond}
5552 QuickButtons[#actionButtons+1] = {Obj = button,Cond = cond, Toggle = function(on)
5553 if on then
5554 buttonEnabled = true
5555 Icon(button,over)
5556 else
5557 buttonEnabled = false
5558 Icon(button,icon)
5559 end
5560 end}
5561 return button
5562 end
5563
5564 --local clipboard = {}
5565 local function delete(o)
5566 o.Parent = nil
5567 end
5568
5569 makeButton(ACTION_EDITQUICKACCESS,ACTION_EDITQUICKACCESS,"Options",true,function()return true end).MouseButton1Click:connect(function()
5570
5571 end)
5572
5573
5574 -- DELETE
5575 makeButton(ACTION_DELETE,ACTION_DELETE_OVER,"Delete",true,function() return #Selection:Get() > 0 end).MouseButton1Click:connect(function()
5576 if not Option.Modifiable then return end
5577 local list = Selection:Get()
5578 for i = 1,#list do
5579 pcall(delete,list[i])
5580 end
5581 Selection:Set({})
5582 end)
5583
5584 -- PASTE
5585 makeButton(ACTION_PASTE,ACTION_PASTE_OVER,"Paste",true,function() return #Selection:Get() > 0 and #clipboard > 0 end).MouseButton1Click:connect(function()
5586 if not Option.Modifiable then return end
5587 local parent = Selection.List[1] or workspace
5588 for i = 1,#clipboard do
5589 clipboard[i]:Clone().Parent = parent
5590 end
5591 end)
5592
5593 -- COPY
5594 makeButton(ACTION_COPY,ACTION_COPY_OVER,"Copy",true,function() return #Selection:Get() > 0 end).MouseButton1Click:connect(function()
5595 if not Option.Modifiable then return end
5596 clipboard = {}
5597 local list = Selection.List
5598 for i = 1,#list do
5599 table.insert(clipboard,list[i]:Clone())
5600 end
5601 updateActions()
5602 end)
5603
5604 -- CUT
5605 makeButton(ACTION_CUT,ACTION_CUT_OVER,"Cut",true,function() return #Selection:Get() > 0 end).MouseButton1Click:connect(function()
5606 if not Option.Modifiable then return end
5607 clipboard = {}
5608 local list = Selection.List
5609 local cut = {}
5610 for i = 1,#list do
5611 local obj = list[i]:Clone()
5612 if obj then
5613 table.insert(clipboard,obj)
5614 table.insert(cut,list[i])
5615 end
5616 end
5617 for i = 1,#cut do
5618 pcall(delete,cut[i])
5619 end
5620 updateActions()
5621 end)
5622
5623 -- FREEZE
5624 makeButton(ACTION_FREEZE,ACTION_FREEZE,"Freeze",true,function() return true end)
5625
5626 -- ADD/REMOVE STARRED
5627 makeButton(ACTION_ADDSTAR,ACTION_ADDSTAR_OVER,"Star",true,function() return #Selection:Get() > 0 end)
5628
5629 -- STARRED
5630 makeButton(ACTION_STARRED,ACTION_STARRED,"Starred",true,function() return true end)
5631
5632
5633 -- SORT
5634 -- local actionSort = makeButton(ACTION_SORT,ACTION_SORT_OVER,"Sort")
5635end
5636
5637----------------------------------------------------------------
5638----------------------------------------------------------------
5639----------------------------------------------------------------
5640----------------------------------------------------------------
5641---- Option Bindables
5642
5643do
5644 local optionCallback = {
5645 Modifiable = function(value)
5646 for i = 1,#actionButtons do
5647 actionButtons[i].Obj.Visible = value and Option.Selectable
5648 end
5649 cancelReparentDrag()
5650 end;
5651 Selectable = function(value)
5652 for i = 1,#actionButtons do
5653 actionButtons[i].Obj.Visible = value and Option.Modifiable
5654 end
5655 cancelSelectDrag()
5656 Selection:Set({})
5657 end;
5658 }
5659
5660 local bindSetOption = explorerPanel:FindFirstChild("SetOption")
5661 if not bindSetOption then
5662 bindSetOption = Create('BindableFunction',{Name = "SetOption"})
5663 bindSetOption.Parent = explorerPanel
5664 end
5665
5666 bindSetOption.OnInvoke = function(optionName,value)
5667 if optionCallback[optionName] then
5668 Option[optionName] = value
5669 optionCallback[optionName](value)
5670 end
5671 end
5672
5673 local bindGetOption = explorerPanel:FindFirstChild("GetOption")
5674 if not bindGetOption then
5675 bindGetOption = Create('BindableFunction',{Name = "GetOption"})
5676 bindGetOption.Parent = explorerPanel
5677 end
5678
5679 bindGetOption.OnInvoke = function(optionName)
5680 if optionName then
5681 return Option[optionName]
5682 else
5683 local options = {}
5684 for k,v in pairs(Option) do
5685 options[k] = v
5686 end
5687 return options
5688 end
5689 end
5690end
5691
5692function SelectionVar()
5693 return Selection
5694end
5695
5696Input.InputBegan:connect(function(key)
5697 if key.KeyCode == Enum.KeyCode.LeftControl then
5698 HoldingCtrl = true
5699 end
5700 if key.KeyCode == Enum.KeyCode.LeftShift then
5701 HoldingShift = true
5702 end
5703end)
5704
5705Input.InputEnded:connect(function(key)
5706 if key.KeyCode == Enum.KeyCode.LeftControl then
5707 HoldingCtrl = false
5708 end
5709 if key.KeyCode == Enum.KeyCode.LeftShift then
5710 HoldingShift = false
5711 end
5712end)
5713
5714while RbxApi == nil do
5715 RbxApi = GetApiRemote:Invoke()
5716 wait()
5717end
5718
5719explorerFilter.Changed:connect(function(prop)
5720 if prop == "Text" then
5721 rawUpdateList()
5722 end
5723end)
5724
5725CurrentInsertObjectWindow = CreateInsertObjectMenu(
5726 GetClasses(),
5727 "",
5728 false,
5729 function(option)
5730 CurrentInsertObjectWindow.Visible = false
5731 local list = SelectionVar():Get()
5732 for i = 1,#list do
5733 pcall(function() Instance.new(option,list[i]) end)
5734 end
5735 DestroyRightClick()
5736 end
5737)
5738end)
5739spawn(function()
5740 --[[
5741
5742Change log:
5743
574409/18
5745 Fixed checkbox mouseover sprite
5746 Encapsulated checkbox creation into separate method
5747 Fixed another checkbox issue
5748
574909/15
5750 Invalid input is ignored instead of setting to default of that data type
5751 Consolidated control methods and simplified them
5752 All input goes through ToValue method
5753 Fixed position of BrickColor palette
5754 Made DropDown appear above row if it would otherwise exceed the page height
5755 Cleaned up stylesheets
5756
575709/14
5758 Made properties window scroll when mouse wheel scrolled
5759 Object/Instance and Color3 data types handled properly
5760 Multiple BrickColor controls interfering with each other fixed
5761 Added support for Content data type
5762
5763--]]
5764
5765wait(0.2)
5766
5767local print = function(s)
5768 print(tostring(s))
5769end
5770
5771-- Services
5772local Teams = game:GetService("Teams")
5773local Workspace = game:GetService("Workspace")
5774local Debris = game:GetService("Debris")
5775local ContentProvider = game:GetService("ContentProvider")
5776local Players = game:GetService("Players")
5777local ReplicatedStorage = game:GetService("ReplicatedStorage")
5778
5779-- Functions
5780function httpGet(url)
5781 return game:HttpGet(url,true)
5782end
5783
5784-- RbxApi Stuff
5785
5786local apiUrl = "http://anaminus.github.io/rbx/json/api/latest.json"
5787local maxChunkSize = 100 * 1000
5788local ApiJson
5789if script:FindFirstChild("RawApiJson") then
5790 ApiJson = script.RawApiJson
5791else
5792 ApiJson = ""
5793end
5794
5795
5796function getLocalApiJson()
5797 local rawApiJson = [===[
5798 [{"Superclass":null,"type":"Class","Name":"Instance","tags":["notbrowsable"]},{"ValueType":"bool","type":"Property","Name":"Archivable","tags":[],"Class":"Instance"},{"ValueType":"string","type":"Property","Name":"ClassName","tags":["readonly"],"Class":"Instance"},{"ValueType":"int","type":"Property","Name":"DataCost","tags":["RobloxPlaceSecurity","readonly"],"Class":"Instance"},{"ValueType":"string","type":"Property","Name":"Name","tags":[],"Class":"Instance"},{"ValueType":"Object","type":"Property","Name":"Parent","tags":[],"Class":"Instance"},{"ValueType":"bool","type":"Property","Name":"RobloxLocked","tags":["PluginSecurity"],"Class":"Instance"},{"ValueType":"bool","type":"Property","Name":"archivable","tags":["hidden"],"Class":"Instance"},{"ValueType":"string","type":"Property","Name":"className","tags":["deprecated","readonly"],"Class":"Instance"},{"ReturnType":"void","Arguments":[],"Name":"ClearAllChildren","tags":[],"Class":"Instance","type":"Function"},{"ReturnType":"Instance","Arguments":[],"Name":"Clone","tags":[],"Class":"Instance","type":"Function"},{"ReturnType":"void","Arguments":[],"Name":"Destroy","tags":[],"Class":"Instance","type":"Function"},{"ReturnType":"Instance","Arguments":[{"Type":"string","Name":"name","Default":null},{"Type":"bool","Name":"recursive","Default":"false"}],"Name":"FindFirstChild","tags":[],"Class":"Instance","type":"Function"},{"ReturnType":"Objects","Arguments":[],"Name":"GetChildren","tags":[],"Class":"Instance","type":"Function"},{"ReturnType":"string","Arguments":[{"Type":"int","Name":"scopeLength","Default":"4"}],"Name":"GetDebugId","tags":["PluginSecurity","notbrowsable"],"Class":"Instance","type":"Function"},{"ReturnType":"string","Arguments":[],"Name":"GetFullName","tags":[],"Class":"Instance","type":"Function"},{"ReturnType":"bool","Arguments":[{"Type":"string","Name":"className","Default":null}],"Name":"IsA","tags":[],"Class":"Instance","type":"Function"},{"ReturnType":"bool","Arguments":[{"Type":"Instance","Name":"descendant","Default":null}],"Name":"IsAncestorOf","tags":[],"Class":"Instance","type":"Function"},{"ReturnType":"bool","Arguments":[{"Type":"Instance","Name":"ancestor","Default":null}],"Name":"IsDescendantOf","tags":[],"Class":"Instance","type":"Function"},{"ReturnType":"void","Arguments":[],"Name":"Remove","tags":["deprecated"],"Class":"Instance","type":"Function"},{"ReturnType":"Objects","Arguments":[],"Name":"children","tags":["deprecated"],"Class":"Instance","type":"Function"},{"ReturnType":"Instance","Arguments":[],"Name":"clone","tags":["deprecated"],"Class":"Instance","type":"Function"},{"ReturnType":"void","Arguments":[],"Name":"destroy","tags":["deprecated"],"Class":"Instance","type":"Function"},{"ReturnType":"Instance","Arguments":[{"Type":"string","Name":"name","Default":null},{"Type":"bool","Name":"recursive","Default":"false"}],"Name":"findFirstChild","tags":["deprecated"],"Class":"Instance","type":"Function"},{"ReturnType":"Objects","Arguments":[],"Name":"getChildren","tags":["deprecated"],"Class":"Instance","type":"Function"},{"ReturnType":"bool","Arguments":[{"Type":"string","Name":"className","Default":null}],"Name":"isA","tags":["deprecated"],"Class":"Instance","type":"Function"},{"ReturnType":"bool","Arguments":[{"Type":"Instance","Name":"ancestor","Default":null}],"Name":"isDescendantOf","tags":["deprecated"],"Class":"Instance","type":"Function"},{"ReturnType":"void","Arguments":[],"Name":"remove","tags":["deprecated"],"Class":"Instance","type":"Function"},{"ReturnType":"Instance","Arguments":[{"Type":"string","Name":"childName","Default":null}],"Name":"WaitForChild","tags":[],"Class":"Instance","type":"YieldFunction"},{"Arguments":[{"Name":"child","Type":"Instance"},{"Name":"parent","Type":"Instance"}],"Name":"AncestryChanged","tags":[],"Class":"Instance","type":"Event"},{"Arguments":[{"Name":"property","Type":"Property"}],"Name":"Changed","tags":[],"Class":"Instance","type":"Event"},{"Arguments":[{"Name":"child","Type":"Instance"}],"Name":"ChildAdded","tags":[],"Class":"Instance","type":"Event"},{"Arguments":[{"Name":"child","Type":"Instance"}],"Name":"ChildRemoved","tags":[],"Class":"Instance","type":"Event"},{"Arguments":[{"Name":"descendant","Type":"Instance"}],"Name":"DescendantAdded","tags":[],"Class":"Instance","type":"Event"},{"Arguments":[{"Name":"descendant","Type":"Instance"}],"Name":"DescendantRemoving","tags":[],"Class":"Instance","type":"Event"},{"Arguments":[{"Name":"child","Type":"Instance"}],"Name":"childAdded","tags":["deprecated"],"Class":"Instance","type":"Event"},{"Superclass":"Instance","type":"Class","Name":"Accoutrement","tags":[]},{"ValueType":"Vector3","type":"Property","Name":"AttachmentForward","tags":[],"Class":"Accoutrement"},{"ValueType":"CoordinateFrame","type":"Property","Name":"AttachmentPoint","tags":[],"Class":"Accoutrement"},{"ValueType":"Vector3","type":"Property","Name":"AttachmentPos","tags":[],"Class":"Accoutrement"},{"ValueType":"Vector3","type":"Property","Name":"AttachmentRight","tags":[],"Class":"Accoutrement"},{"ValueType":"Vector3","type":"Property","Name":"AttachmentUp","tags":[],"Class":"Accoutrement"},{"Superclass":"Accoutrement","type":"Class","Name":"Accessory","tags":[]},{"Superclass":"Accoutrement","type":"Class","Name":"Hat","tags":["deprecated"]},{"Superclass":"Instance","type":"Class","Name":"AdService","tags":["notCreatable"]},{"ReturnType":"void","Arguments":[],"Name":"ShowVideoAd","tags":[],"Class":"AdService","type":"Function"},{"Arguments":[{"Name":"adShown","Type":"bool"}],"Name":"VideoAdClosed","tags":[],"Class":"AdService","type":"Event"},{"Superclass":"Instance","type":"Class","Name":"AdvancedDragger","tags":[]},{"Superclass":"Instance","type":"Class","Name":"Animation","tags":[]},{"ValueType":"Content","type":"Property","Name":"AnimationId","tags":[],"Class":"Animation"},{"Superclass":"Instance","type":"Class","Name":"AnimationController","tags":[]},{"ReturnType":"Array","Arguments":[],"Name":"GetPlayingAnimationTracks","tags":[],"Class":"AnimationController","type":"Function"},{"ReturnType":"Instance","Arguments":[{"Type":"Instance","Name":"animation","Default":null}],"Name":"LoadAnimation","tags":[],"Class":"AnimationController","type":"Function"},{"Arguments":[{"Name":"animationTrack","Type":"Instance"}],"Name":"AnimationPlayed","tags":[],"Class":"AnimationController","type":"Event"},{"Superclass":"Instance","type":"Class","Name":"AnimationTrack","tags":[]},{"ValueType":"Object","type":"Property","Name":"Animation","tags":["readonly"],"Class":"AnimationTrack"},{"ValueType":"bool","type":"Property","Name":"IsPlaying","tags":["readonly"],"Class":"AnimationTrack"},{"ValueType":"float","type":"Property","Name":"Length","tags":["readonly"],"Class":"AnimationTrack"},{"ValueType":"AnimationPriority","type":"Property","Name":"Priority","tags":[],"Class":"AnimationTrack"},{"ValueType":"float","type":"Property","Name":"TimePosition","tags":[],"Class":"AnimationTrack"},{"ReturnType":"void","Arguments":[{"Type":"float","Name":"speed","Default":"1"}],"Name":"AdjustSpeed","tags":[],"Class":"AnimationTrack","type":"Function"},{"ReturnType":"void","Arguments":[{"Type":"float","Name":"weight","Default":"1"},{"Type":"float","Name":"fadeTime","Default":"0.100000001"}],"Name":"AdjustWeight","tags":[],"Class":"AnimationTrack","type":"Function"},{"ReturnType":"double","Arguments":[{"Type":"string","Name":"keyframeName","Default":null}],"Name":"GetTimeOfKeyframe","tags":[],"Class":"AnimationTrack","type":"Function"},{"ReturnType":"void","Arguments":[{"Type":"float","Name":"fadeTime","Default":"0.100000001"},{"Type":"float","Name":"weight","Default":"1"},{"Type":"float","Name":"speed","Default":"1"}],"Name":"Play","tags":[],"Class":"AnimationTrack","type":"Function"},{"ReturnType":"void","Arguments":[{"Type":"float","Name":"fadeTime","Default":"0.100000001"}],"Name":"Stop","tags":[],"Class":"AnimationTrack","type":"Function"},{"Arguments":[{"Name":"keyframeName","Type":"string"}],"Name":"KeyframeReached","tags":[],"Class":"AnimationTrack","type":"Event"},{"Arguments":[],"Name":"Stopped","tags":["deprecated"],"Class":"AnimationTrack","type":"Event"},{"Superclass":"Instance","type":"Class","Name":"AnimationTrackState","tags":[]},{"Superclass":"Instance","type":"Class","Name":"Animator","tags":[]},{"ReturnType":"Instance","Arguments":[{"Type":"Instance","Name":"animation","Default":null}],"Name":"LoadAnimation","tags":[],"Class":"Animator","type":"Function"},{"Superclass":"Instance","type":"Class","Name":"AssetService","tags":[]},{"ReturnType":"void","Arguments":[{"Type":"string","Name":"revertUrl","Default":null}],"Name":"SetAssetRevertUrl","tags":["LocalUserSecurity"],"Class":"AssetService","type":"Function"},{"ReturnType":"void","Arguments":[{"Type":"string","Name":"versionsUrl","Default":null}],"Name":"SetAssetVersionsUrl","tags":["LocalUserSecurity"],"Class":"AssetService","type":"Function"},{"ReturnType":"void","Arguments":[{"Type":"string","Name":"accessUrl","Default":null}],"Name":"SetPlaceAccessUrl","tags":["LocalUserSecurity"],"Class":"AssetService","type":"Function"},{"ReturnType":"int","Arguments":[{"Type":"string","Name":"placeName","Default":null},{"Type":"int","Name":"templatePlaceID","Default":null},{"Type":"string","Name":"description","Default":""}],"Name":"CreatePlaceAsync","tags":[],"Class":"AssetService","type":"YieldFunction"},{"ReturnType":"int","Arguments":[{"Type":"Instance","Name":"player","Default":null},{"Type":"string","Name":"placeName","Default":null},{"Type":"int","Name":"templatePlaceID","Default":null},{"Type":"string","Name":"description","Default":""}],"Name":"CreatePlaceInPlayerInventoryAsync","tags":[],"Class":"AssetService","type":"YieldFunction"},{"ReturnType":"Dictionary","Arguments":[{"Type":"int","Name":"placeId","Default":null},{"Type":"int","Name":"pageNum","Default":"1"}],"Name":"GetAssetVersions","tags":[],"Class":"AssetService","type":"YieldFunction"},{"ReturnType":"int","Arguments":[{"Type":"int","Name":"creationID","Default":null}],"Name":"GetCreatorAssetID","tags":[],"Class":"AssetService","type":"YieldFunction"},{"ReturnType":"Instance","Arguments":[],"Name":"GetGamePlacesAsync","tags":[],"Class":"AssetService","type":"YieldFunction"},{"ReturnType":"Dictionary","Arguments":[{"Type":"int","Name":"placeId","Default":null}],"Name":"GetPlacePermissions","tags":[],"Class":"AssetService","type":"YieldFunction"},{"ReturnType":"bool","Arguments":[{"Type":"int","Name":"placeId","Default":null},{"Type":"int","Name":"versionNumber","Default":null}],"Name":"RevertAsset","tags":[],"Class":"AssetService","type":"YieldFunction"},{"ReturnType":"void","Arguments":[],"Name":"SavePlaceAsync","tags":[],"Class":"AssetService","type":"YieldFunction"},{"ReturnType":"bool","Arguments":[{"Type":"int","Name":"placeId","Default":null},{"Type":"AccessType","Name":"accessType","Default":"Everyone"},{"Type":"Array","Name":"inviteList","Default":"{}"}],"Name":"SetPlacePermissions","tags":[],"Class":"AssetService","type":"YieldFunction"},{"Superclass":"Instance","type":"Class","Name":"Attachment","tags":[]},{"ValueType":"Vector3","type":"Property","Name":"Axis","tags":[],"Class":"Attachment"},{"ValueType":"CoordinateFrame","type":"Property","Name":"CFrame","tags":[],"Class":"Attachment"},{"ValueType":"Vector3","type":"Property","Name":"Position","tags":[],"Class":"Attachment"},{"ValueType":"Vector3","type":"Property","Name":"Rotation","tags":[],"Class":"Attachment"},{"ValueType":"Vector3","type":"Property","Name":"SecondaryAxis","tags":[],"Class":"Attachment"},{"ValueType":"Vector3","type":"Property","Name":"WorldAxis","tags":["readonly"],"Class":"Attachment"},{"ValueType":"Vector3","type":"Property","Name":"WorldPosition","tags":["readonly"],"Class":"Attachment"},{"ValueType":"Vector3","type":"Property","Name":"WorldRotation","tags":["readonly"],"Class":"Attachment"},{"ValueType":"Vector3","type":"Property","Name":"WorldSecondaryAxis","tags":["readonly"],"Class":"Attachment"},{"ReturnType":"Vector3","Arguments":[],"Name":"GetAxis","tags":[],"Class":"Attachment","type":"Function"},{"ReturnType":"Vector3","Arguments":[],"Name":"GetSecondaryAxis","tags":[],"Class":"Attachment","type":"Function"},{"ReturnType":"void","Arguments":[{"Type":"Vector3","Name":"axis","Default":null}],"Name":"SetAxis","tags":[],"Class":"Attachment","type":"Function"},{"ReturnType":"void","Arguments":[{"Type":"Vector3","Name":"axis","Default":null}],"Name":"SetSecondaryAxis","tags":[],"Class":"Attachment","type":"Function"},{"Superclass":"Instance","type":"Class","Name":"BadgeService","tags":["notCreatable"]},{"ReturnType":"void","Arguments":[{"Type":"string","Name":"url","Default":null}],"Name":"SetAwardBadgeUrl","tags":["LocalUserSecurity"],"Class":"BadgeService","type":"Function"},{"ReturnType":"void","Arguments":[{"Type":"int","Name":"seconds","Default":null}],"Name":"SetHasBadgeCooldown","tags":["LocalUserSecurity"],"Class":"BadgeService","type":"Function"},{"ReturnType":"void","Arguments":[{"Type":"string","Name":"url","Default":null}],"Name":"SetHasBadgeUrl","tags":["LocalUserSecurity"],"Class":"BadgeService","type":"Function"},{"ReturnType":"void","Arguments":[{"Type":"string","Name":"url","Default":null}],"Name":"SetIsBadgeDisabledUrl","tags":["LocalUserSecurity"],"Class":"BadgeService","type":"Function"},{"ReturnType":"void","Arguments":[{"Type":"string","Name":"url","Default":null}],"Name":"SetIsBadgeLegalUrl","tags":["LocalUserSecurity"],"Class":"BadgeService","type":"Function"},{"ReturnType":"void","Arguments":[{"Type":"int","Name":"placeId","Default":null}],"Name":"SetPlaceId","tags":["LocalUserSecurity"],"Class":"BadgeService","type":"Function"},{"ReturnType":"bool","Arguments":[{"Type":"int","Name":"userId","Default":null},{"Type":"int","Name":"badgeId","Default":null}],"Name":"AwardBadge","tags":[],"Class":"BadgeService","type":"YieldFunction"},{"ReturnType":"bool","Arguments":[{"Type":"int","Name":"badgeId","Default":null}],"Name":"IsDisabled","tags":[],"Class":"BadgeService","type":"YieldFunction"},{"ReturnType":"bool","Arguments":[{"Type":"int","Name":"badgeId","Default":null}],"Name":"IsLegal","tags":[],"Class":"BadgeService","type":"YieldFunction"},{"ReturnType":"bool","Arguments":[{"Type":"int","Name":"userId","Default":null},{"Type":"int","Name":"badgeId","Default":null}],"Name":"UserHasBadge","tags":[],"Class":"BadgeService","type":"YieldFunction"},{"Arguments":[{"Name":"message","Type":"string"},{"Name":"userId","Type":"int"},{"Name":"badgeId","Type":"int"}],"Name":"BadgeAwarded","tags":["RobloxScriptSecurity"],"Class":"BadgeService","type":"Event"},{"Superclass":"Instance","type":"Class","Name":"BasePlayerGui","tags":[]},{"Superclass":"BasePlayerGui","type":"Class","Name":"CoreGui","tags":["notCreatable","notbrowsable"]},{"ValueType":"Object","type":"Property","Name":"SelectionImageObject","tags":["RobloxScriptSecurity"],"Class":"CoreGui"},{"ValueType":"int","type":"Property","Name":"Version","tags":["readonly"],"Class":"CoreGui"},{"Superclass":"BasePlayerGui","type":"Class","Name":"PlayerGui","tags":["notCreatable"]},{"ValueType":"Object","type":"Property","Name":"SelectionImageObject","tags":[],"Class":"PlayerGui"},{"ReturnType":"float","Arguments":[],"Name":"GetTopbarTransparency","tags":[],"Class":"PlayerGui","type":"Function"},{"ReturnType":"void","Arguments":[{"Type":"float","Name":"transparency","Default":null}],"Name":"SetTopbarTransparency","tags":[],"Class":"PlayerGui","type":"Function"},{"Arguments":[{"Name":"transparency","Type":"float"}],"Name":"TopbarTransparencyChangedSignal","tags":[],"Class":"PlayerGui","type":"Event"},{"Superclass":"BasePlayerGui","type":"Class","Name":"StarterGui","tags":[]},{"ValueType":"bool","type":"Property","Name":"ResetPlayerGuiOnSpawn","tags":[],"Class":"StarterGui"},{"ValueType":"bool","type":"Property","Name":"ShowDevelopmentGui","tags":[],"Class":"StarterGui"},{"ReturnType":"bool","Arguments":[{"Type":"CoreGuiType","Name":"coreGuiType","Default":null}],"Name":"GetCoreGuiEnabled","tags":[],"Class":"StarterGui","type":"Function"},{"ReturnType":"void","Arguments":[{"Type":"string","Name":"parameterName","Default":null},{"Type":"Function","Name":"getFunction","Default":null}],"Name":"RegisterGetCore","tags":["RobloxScriptSecurity"],"Class":"StarterGui","type":"Function"},{"ReturnType":"void","Arguments":[{"Type":"string","Name":"parameterName","Default":null},{"Type":"Function","Name":"setFunction","Default":null}],"Name":"RegisterSetCore","tags":["RobloxScriptSecurity"],"Class":"StarterGui","type":"Function"},{"ReturnType":"void","Arguments":[{"Type":"string","Name":"parameterName","Default":null},{"Type":"Variant","Name":"value","Default":null}],"Name":"SetCore","tags":[],"Class":"StarterGui","type":"Function"},{"ReturnType":"void","Arguments":[{"Type":"CoreGuiType","Name":"coreGuiType","Default":null},{"Type":"bool","Name":"enabled","Default":null}],"Name":"SetCoreGuiEnabled","tags":[],"Class":"StarterGui","type":"Function"},{"ReturnType":"Variant","Arguments":[{"Type":"string","Name":"parameterName","Default":null}],"Name":"GetCore","tags":[],"Class":"StarterGui","type":"YieldFunction"},{"Arguments":[{"Name":"coreGuiType","Type":"CoreGuiType"},{"Name":"enabled","Type":"bool"}],"Name":"CoreGuiChangedSignal","tags":["RobloxScriptSecurity"],"Class":"StarterGui","type":"Event"},{"Superclass":"Instance","type":"Class","Name":"BinaryStringValue","tags":[]},{"Superclass":"Instance","type":"Class","Name":"BindableEvent","tags":[]},{"ReturnType":"void","Arguments":[{"Type":"Tuple","Name":"arguments","Default":null}],"Name":"Fire","tags":[],"Class":"BindableEvent","type":"Function"},{"Arguments":[{"Name":"arguments","Type":"Tuple"}],"Name":"Event","tags":[],"Class":"BindableEvent","type":"Event"},{"Superclass":"Instance","type":"Class","Name":"BindableFunction","tags":[]},{"ReturnType":"Tuple","Arguments":[{"Type":"Tuple","Name":"arguments","Default":null}],"Name":"Invoke","tags":[],"Class":"BindableFunction","type":"YieldFunction"},{"ReturnType":"Tuple","Arguments":[{"Name":"arguments","Type":"Tuple"}],"Name":"OnInvoke","tags":[],"Class":"BindableFunction","type":"Callback"},{"Superclass":"Instance","type":"Class","Name":"BodyMover","tags":[]},{"Superclass":"BodyMover","type":"Class","Name":"BodyAngularVelocity","tags":[]},{"ValueType":"Vector3","type":"Property","Name":"AngularVelocity","tags":[],"Class":"BodyAngularVelocity"},{"ValueType":"Vector3","type":"Property","Name":"MaxTorque","tags":[],"Class":"BodyAngularVelocity"},{"ValueType":"float","type":"Property","Name":"P","tags":[],"Class":"BodyAngularVelocity"},{"ValueType":"Vector3","type":"Property","Name":"angularvelocity","tags":["deprecated"],"Class":"BodyAngularVelocity"},{"ValueType":"Vector3","type":"Property","Name":"maxTorque","tags":["deprecated"],"Class":"BodyAngularVelocity"},{"Superclass":"BodyMover","type":"Class","Name":"BodyForce","tags":[]},{"ValueType":"Vector3","type":"Property","Name":"Force","tags":[],"Class":"BodyForce"},{"ValueType":"Vector3","type":"Property","Name":"force","tags":["deprecated"],"Class":"BodyForce"},{"Superclass":"BodyMover","type":"Class","Name":"BodyGyro","tags":[]},{"ValueType":"CoordinateFrame","type":"Property","Name":"CFrame","tags":[],"Class":"BodyGyro"},{"ValueType":"float","type":"Property","Name":"D","tags":[],"Class":"BodyGyro"},{"ValueType":"Vector3","type":"Property","Name":"MaxTorque","tags":[],"Class":"BodyGyro"},{"ValueType":"float","type":"Property","Name":"P","tags":[],"Class":"BodyGyro"},{"ValueType":"CoordinateFrame","type":"Property","Name":"cframe","tags":["deprecated"],"Class":"BodyGyro"},{"ValueType":"Vector3","type":"Property","Name":"maxTorque","tags":["deprecated"],"Class":"BodyGyro"},{"Superclass":"BodyMover","type":"Class","Name":"BodyPosition","tags":[]},{"ValueType":"float","type":"Property","Name":"D","tags":[],"Class":"BodyPosition"},{"ValueType":"Vector3","type":"Property","Name":"MaxForce","tags":[],"Class":"BodyPosition"},{"ValueType":"float","type":"Property","Name":"P","tags":[],"Class":"BodyPosition"},{"ValueType":"Vector3","type":"Property","Name":"Position","tags":[],"Class":"BodyPosition"},{"ValueType":"Vector3","type":"Property","Name":"maxForce","tags":["deprecated"],"Class":"BodyPosition"},{"ValueType":"Vector3","type":"Property","Name":"position","tags":["deprecated"],"Class":"BodyPosition"},{"ReturnType":"Vector3","Arguments":[],"Name":"GetLastForce","tags":[],"Class":"BodyPosition","type":"Function"},{"ReturnType":"Vector3","Arguments":[],"Name":"lastForce","tags":["deprecated"],"Class":"BodyPosition","type":"Function"},{"Arguments":[],"Name":"ReachedTarget","tags":[],"Class":"BodyPosition","type":"Event"},{"Superclass":"BodyMover","type":"Class","Name":"BodyThrust","tags":[]},{"ValueType":"Vector3","type":"Property","Name":"Force","tags":[],"Class":"BodyThrust"},{"ValueType":"Vector3","type":"Property","Name":"Location","tags":[],"Class":"BodyThrust"},{"ValueType":"Vector3","type":"Property","Name":"force","tags":["deprecated"],"Class":"BodyThrust"},{"ValueType":"Vector3","type":"Property","Name":"location","tags":["deprecated"],"Class":"BodyThrust"},{"Superclass":"BodyMover","type":"Class","Name":"BodyVelocity","tags":[]},{"ValueType":"Vector3","type":"Property","Name":"MaxForce","tags":[],"Class":"BodyVelocity"},{"ValueType":"float","type":"Property","Name":"P","tags":[],"Class":"BodyVelocity"},{"ValueType":"Vector3","type":"Property","Name":"Velocity","tags":[],"Class":"BodyVelocity"},{"ValueType":"Vector3","type":"Property","Name":"maxForce","tags":["deprecated"],"Class":"BodyVelocity"},{"ValueType":"Vector3","type":"Property","Name":"velocity","tags":["deprecated"],"Class":"BodyVelocity"},{"ReturnType":"Vector3","Arguments":[],"Name":"GetLastForce","tags":[],"Class":"BodyVelocity","type":"Function"},{"ReturnType":"Vector3","Arguments":[],"Name":"lastForce","tags":[],"Class":"BodyVelocity","type":"Function"},{"Superclass":"BodyMover","type":"Class","Name":"RocketPropulsion","tags":[]},{"ValueType":"float","type":"Property","Name":"CartoonFactor","tags":[],"Class":"RocketPropulsion"},{"ValueType":"float","type":"Property","Name":"MaxSpeed","tags":[],"Class":"RocketPropulsion"},{"ValueType":"float","type":"Property","Name":"MaxThrust","tags":[],"Class":"RocketPropulsion"},{"ValueType":"Vector3","type":"Property","Name":"MaxTorque","tags":[],"Class":"RocketPropulsion"},{"ValueType":"Object","type":"Property","Name":"Target","tags":[],"Class":"RocketPropulsion"},{"ValueType":"Vector3","type":"Property","Name":"TargetOffset","tags":[],"Class":"RocketPropulsion"},{"ValueType":"float","type":"Property","Name":"TargetRadius","tags":[],"Class":"RocketPropulsion"},{"ValueType":"float","type":"Property","Name":"ThrustD","tags":[],"Class":"RocketPropulsion"},{"ValueType":"float","type":"Property","Name":"ThrustP","tags":[],"Class":"RocketPropulsion"},{"ValueType":"float","type":"Property","Name":"TurnD","tags":[],"Class":"RocketPropulsion"},{"ValueType":"float","type":"Property","Name":"TurnP","tags":[],"Class":"RocketPropulsion"},{"ReturnType":"void","Arguments":[],"Name":"Abort","tags":[],"Class":"RocketPropulsion","type":"Function"},{"ReturnType":"void","Arguments":[],"Name":"Fire","tags":[],"Class":"RocketPropulsion","type":"Function"},{"ReturnType":"void","Arguments":[],"Name":"fire","tags":["deprecated"],"Class":"RocketPropulsion","type":"Function"},{"Arguments":[],"Name":"ReachedTarget","tags":[],"Class":"RocketPropulsion","type":"Event"},{"Superclass":"Instance","type":"Class","Name":"BoolValue","tags":[]},{"ValueType":"bool","type":"Property","Name":"Value","tags":[],"Class":"BoolValue"},{"Arguments":[{"Name":"value","Type":"bool"}],"Name":"Changed","tags":[],"Class":"BoolValue","type":"Event"},{"Arguments":[{"Name":"value","Type":"bool"}],"Name":"changed","tags":["deprecated"],"Class":"BoolValue","type":"Event"},{"Superclass":"Instance","type":"Class","Name":"BrickColorValue","tags":[]},{"ValueType":"BrickColor","type":"Property","Name":"Value","tags":[],"Class":"BrickColorValue"},{"Arguments":[{"Name":"value","Type":"BrickColor"}],"Name":"Changed","tags":[],"Class":"BrickColorValue","type":"Event"},{"Arguments":[{"Name":"value","Type":"BrickColor"}],"Name":"changed","tags":["deprecated"],"Class":"BrickColorValue","type":"Event"},{"Superclass":"Instance","type":"Class","Name":"Button","tags":[]},{"ReturnType":"void","Arguments":[{"Type":"bool","Name":"active","Default":null}],"Name":"SetActive","tags":["PluginSecurity"],"Class":"Button","type":"Function"},{"Arguments":[],"Name":"Click","tags":["PluginSecurity"],"Class":"Button","type":"Event"},{"Superclass":"Instance","type":"Class","Name":"CFrameValue","tags":[]},{"ValueType":"CoordinateFrame","type":"Property","Name":"Value","tags":[],"Class":"CFrameValue"},{"Arguments":[{"Name":"value","Type":"CoordinateFrame"}],"Name":"Changed","tags":[],"Class":"CFrameValue","type":"Event"},{"Arguments":[{"Name":"value","Type":"CoordinateFrame"}],"Name":"changed","tags":["deprecated"],"Class":"CFrameValue","type":"Event"},{"Superclass":"Instance","type":"Class","Name":"CacheableContentProvider","tags":[]},{"Superclass":"CacheableContentProvider","type":"Class","Name":"MeshContentProvider","tags":[]},{"Superclass":"CacheableContentProvider","type":"Class","Name":"SolidModelContentProvider","tags":[]},{"Superclass":"CacheableContentProvider","type":"Class","Name":"TextureContentProvider","tags":[]},{"Superclass":"Instance","type":"Class","Name":"Camera","tags":[]},{"ValueType":"CoordinateFrame","type":"Property","Name":"CFrame","tags":[],"Class":"Camera"},{"ValueType":"Object","type":"Property","Name":"CameraSubject","tags":[],"Class":"Camera"},{"ValueType":"CameraType","type":"Property","Name":"CameraType","tags":[],"Class":"Camera"},{"ValueType":"CoordinateFrame","type":"Property","Name":"CoordinateFrame","tags":["deprecated","hidden"],"Class":"Camera"},{"ValueType":"float","type":"Property","Name":"FieldOfView","tags":[],"Class":"Camera"},{"ValueType":"CoordinateFrame","type":"Property","Name":"Focus","tags":[],"Class":"Camera"},{"ValueType":"bool","type":"Property","Name":"HeadLocked","tags":[],"Class":"Camera"},{"ValueType":"float","type":"Property","Name":"HeadScale","tags":[],"Class":"Camera"},{"ValueType":"Vector2","type":"Property","Name":"ViewportSize","tags":["readonly"],"Class":"Camera"},{"ValueType":"CoordinateFrame","type":"Property","Name":"focus","tags":["deprecated"],"Class":"Camera"},{"ReturnType":"float","Arguments":[],"Name":"GetPanSpeed","tags":[],"Class":"Camera","type":"Function"},{"ReturnType":"CoordinateFrame","Arguments":[],"Name":"GetRenderCFrame","tags":[],"Class":"Camera","type":"Function"},{"ReturnType":"float","Arguments":[],"Name":"GetRoll","tags":[],"Class":"Camera","type":"Function"},{"ReturnType":"float","Arguments":[],"Name":"GetTiltSpeed","tags":[],"Class":"Camera","type":"Function"},{"ReturnType":"void","Arguments":[{"Type":"CoordinateFrame","Name":"endPos","Default":null},{"Type":"CoordinateFrame","Name":"endFocus","Default":null},{"Type":"float","Name":"duration","Default":null}],"Name":"Interpolate","tags":[],"Class":"Camera","type":"Function"},{"ReturnType":"void","Arguments":[{"Type":"int","Name":"units","Default":null}],"Name":"PanUnits","tags":[],"Class":"Camera","type":"Function"},{"ReturnType":"Ray","Arguments":[{"Type":"float","Name":"x","Default":null},{"Type":"float","Name":"y","Default":null},{"Type":"float","Name":"depth","Default":"0"}],"Name":"ScreenPointToRay","tags":[],"Class":"Camera","type":"Function"},{"ReturnType":"void","Arguments":[{"Type":"CameraPanMode","Name":"mode","Default":"Classic"}],"Name":"SetCameraPanMode","tags":[],"Class":"Camera","type":"Function"},{"ReturnType":"void","Arguments":[{"Type":"float","Name":"rollAngle","Default":null}],"Name":"SetRoll","tags":[],"Class":"Camera","type":"Function"},{"ReturnType":"bool","Arguments":[{"Type":"int","Name":"units","Default":null}],"Name":"TiltUnits","tags":[],"Class":"Camera","type":"Function"},{"ReturnType":"Ray","Arguments":[{"Type":"float","Name":"x","Default":null},{"Type":"float","Name":"y","Default":null},{"Type":"float","Name":"depth","Default":"0"}],"Name":"ViewportPointToRay","tags":[],"Class":"Camera","type":"Function"},{"ReturnType":"Tuple","Arguments":[{"Type":"Vector3","Name":"worldPoint","Default":null}],"Name":"WorldToScreenPoint","tags":[],"Class":"Camera","type":"Function"},{"ReturnType":"Tuple","Arguments":[{"Type":"Vector3","Name":"worldPoint","Default":null}],"Name":"WorldToViewportPoint","tags":[],"Class":"Camera","type":"Function"},{"ReturnType":"bool","Arguments":[{"Type":"float","Name":"distance","Default":null}],"Name":"Zoom","tags":["RobloxScriptSecurity"],"Class":"Camera","type":"Function"},{"Arguments":[{"Name":"entering","Type":"bool"}],"Name":"FirstPersonTransition","tags":["RobloxPlaceSecurity"],"Class":"Camera","type":"Event"},{"Arguments":[],"Name":"InterpolationFinished","tags":[],"Class":"Camera","type":"Event"},{"Superclass":"Instance","type":"Class","Name":"ChangeHistoryService","tags":["notCreatable"]},{"ReturnType":"Tuple","Arguments":[],"Name":"GetCanRedo","tags":["PluginSecurity"],"Class":"ChangeHistoryService","type":"Function"},{"ReturnType":"Tuple","Arguments":[],"Name":"GetCanUndo","tags":["PluginSecurity"],"Class":"ChangeHistoryService","type":"Function"},{"ReturnType":"void","Arguments":[],"Name":"Redo","tags":["PluginSecurity"],"Class":"ChangeHistoryService","type":"Function"},{"ReturnType":"void","Arguments":[],"Name":"ResetWaypoints","tags":["PluginSecurity"],"Class":"ChangeHistoryService","type":"Function"},{"ReturnType":"void","Arguments":[{"Type":"bool","Name":"state","Default":null}],"Name":"SetEnabled","tags":["PluginSecurity"],"Class":"ChangeHistoryService","type":"Function"},{"ReturnType":"void","Arguments":[{"Type":"string","Name":"name","Default":null}],"Name":"SetWaypoint","tags":["PluginSecurity"],"Class":"ChangeHistoryService","type":"Function"},{"ReturnType":"void","Arguments":[],"Name":"Undo","tags":["PluginSecurity"],"Class":"ChangeHistoryService","type":"Function"},{"Arguments":[{"Name":"waypoint","Type":"string"}],"Name":"OnRedo","tags":["PluginSecurity"],"Class":"ChangeHistoryService","type":"Event"},{"Arguments":[{"Name":"waypoint","Type":"string"}],"Name":"OnUndo","tags":["PluginSecurity"],"Class":"ChangeHistoryService","type":"Event"},{"Superclass":"Instance","type":"Class","Name":"CharacterAppearance","tags":[]},{"Superclass":"CharacterAppearance","type":"Class","Name":"BodyColors","tags":[]},{"ValueType":"BrickColor","type":"Property","Name":"HeadColor","tags":[],"Class":"BodyColors"},{"ValueType":"BrickColor","type":"Property","Name":"LeftArmColor","tags":[],"Class":"BodyColors"},{"ValueType":"BrickColor","type":"Property","Name":"LeftLegColor","tags":[],"Class":"BodyColors"},{"ValueType":"BrickColor","type":"Property","Name":"RightArmColor","tags":[],"Class":"BodyColors"},{"ValueType":"BrickColor","type":"Property","Name":"RightLegColor","tags":[],"Class":"BodyColors"},{"ValueType":"BrickColor","type":"Property","Name":"TorsoColor","tags":[],"Class":"BodyColors"},{"Superclass":"CharacterAppearance","type":"Class","Name":"CharacterMesh","tags":[]},{"ValueType":"int","type":"Property","Name":"BaseTextureId","tags":[],"Class":"CharacterMesh"},{"ValueType":"BodyPart","type":"Property","Name":"BodyPart","tags":[],"Class":"CharacterMesh"},{"ValueType":"int","type":"Property","Name":"MeshId","tags":[],"Class":"CharacterMesh"},{"ValueType":"int","type":"Property","Name":"OverlayTextureId","tags":[],"Class":"CharacterMesh"},{"Superclass":"CharacterAppearance","type":"Class","Name":"Clothing","tags":[]},{"Superclass":"Clothing","type":"Class","Name":"Pants","tags":[]},{"ValueType":"Content","type":"Property","Name":"PantsTemplate","tags":[],"Class":"Pants"},{"Superclass":"Clothing","type":"Class","Name":"Shirt","tags":[]},{"ValueType":"Content","type":"Property","Name":"ShirtTemplate","tags":[],"Class":"Shirt"},{"Superclass":"CharacterAppearance","type":"Class","Name":"ShirtGraphic","tags":[]},{"ValueType":"Content","type":"Property","Name":"Graphic","tags":[],"Class":"ShirtGraphic"},{"Superclass":"CharacterAppearance","type":"Class","Name":"Skin","tags":["deprecated"]},{"ValueType":"BrickColor","type":"Property","Name":"SkinColor","tags":[],"Class":"Skin"},{"Superclass":"Instance","type":"Class","Name":"Chat","tags":["notCreatable"]},{"ReturnType":"void","Arguments":[{"Type":"Instance","Name":"partOrCharacter","Default":null},{"Type":"string","Name":"message","Default":null},{"Type":"ChatColor","Name":"color","Default":"Blue"}],"Name":"Chat","tags":[],"Class":"Chat","type":"Function"},{"ReturnType":"string","Arguments":[{"Type":"string","Name":"stringToFilter","Default":null},{"Type":"Instance","Name":"playerFrom","Default":null},{"Type":"Instance","Name":"playerTo","Default":null}],"Name":"FilterStringAsync","tags":[],"Class":"Chat","type":"YieldFunction"},{"ReturnType":"string","Arguments":[{"Type":"string","Name":"stringToFilter","Default":null},{"Type":"Instance","Name":"playerToFilterFor","Default":null}],"Name":"FilterStringForPlayerAsync","tags":[],"Class":"Chat","type":"YieldFunction"},{"Arguments":[{"Name":"part","Type":"Instance"},{"Name":"message","Type":"string"},{"Name":"color","Type":"ChatColor"}],"Name":"Chatted","tags":[],"Class":"Chat","type":"Event"},{"Superclass":"Instance","type":"Class","Name":"ChatFilter","tags":["notCreatable"]},{"Superclass":"Instance","type":"Class","Name":"ClickDetector","tags":[]},{"ValueType":"float","type":"Property","Name":"MaxActivationDistance","tags":[],"Class":"ClickDetector"},{"Arguments":[{"Name":"playerWhoClicked","Type":"Instance"}],"Name":"MouseClick","tags":[],"Class":"ClickDetector","type":"Event"},{"Arguments":[{"Name":"playerWhoHovered","Type":"Instance"}],"Name":"MouseHoverEnter","tags":[],"Class":"ClickDetector","type":"Event"},{"Arguments":[{"Name":"playerWhoHovered","Type":"Instance"}],"Name":"MouseHoverLeave","tags":[],"Class":"ClickDetector","type":"Event"},{"Arguments":[{"Name":"playerWhoClicked","Type":"Instance"}],"Name":"mouseClick","tags":["deprecated"],"Class":"ClickDetector","type":"Event"},{"Superclass":"Instance","type":"Class","Name":"ClusterPacketCache","tags":[]},{"Superclass":"Instance","type":"Class","Name":"CollectionService","tags":[]},{"ReturnType":"Objects","Arguments":[{"Type":"string","Name":"class","Default":null}],"Name":"GetCollection","tags":[],"Class":"CollectionService","type":"Function"},{"Arguments":[{"Name":"instance","Type":"Instance"}],"Name":"ItemAdded","tags":[],"Class":"CollectionService","type":"Event"},{"Arguments":[{"Name":"instance","Type":"Instance"}],"Name":"ItemRemoved","tags":[],"Class":"CollectionService","type":"Event"},{"Superclass":"Instance","type":"Class","Name":"Color3Value","tags":[]},{"ValueType":"Color3","type":"Property","Name":"Value","tags":[],"Class":"Color3Value"},{"Arguments":[{"Name":"value","Type":"Color3"}],"Name":"Changed","tags":[],"Class":"Color3Value","type":"Event"},{"Arguments":[{"Name":"value","Type":"Color3"}],"Name":"changed","tags":["deprecated"],"Class":"Color3Value","type":"Event"},{"Superclass":"Instance","type":"Class","Name":"Configuration","tags":[]},{"Superclass":"Instance","type":"Class","Name":"Constraint","tags":[]},{"ValueType":"Object","type":"Property","Name":"Attachment0","tags":[],"Class":"Constraint"},{"ValueType":"Object","type":"Property","Name":"Attachment1","tags":[],"Class":"Constraint"},{"ValueType":"bool","type":"Property","Name":"Enabled","tags":[],"Class":"Constraint"},{"Superclass":"Constraint","type":"Class","Name":"BallSocketConstraint","tags":[]},{"ValueType":"bool","type":"Property","Name":"LimitsEnabled","tags":[],"Class":"BallSocketConstraint"},{"ValueType":"float","type":"Property","Name":"Restitution","tags":[],"Class":"BallSocketConstraint"},{"ValueType":"float","type":"Property","Name":"UpperAngle","tags":[],"Class":"BallSocketConstraint"},{"Superclass":"Constraint","type":"Class","Name":"HingeConstraint","tags":[]},{"ValueType":"ActuatorType","type":"Property","Name":"ActuatorType","tags":[],"Class":"HingeConstraint"},{"ValueType":"float","type":"Property","Name":"AngularSpeed","tags":[],"Class":"HingeConstraint"},{"ValueType":"float","type":"Property","Name":"AngularVelocity","tags":[],"Class":"HingeConstraint"},{"ValueType":"float","type":"Property","Name":"CurrentAngle","tags":["readonly"],"Class":"HingeConstraint"},{"ValueType":"bool","type":"Property","Name":"LimitsEnabled","tags":[],"Class":"HingeConstraint"},{"ValueType":"float","type":"Property","Name":"LowerAngle","tags":[],"Class":"HingeConstraint"},{"ValueType":"float","type":"Property","Name":"MotorMaxAcceleration","tags":[],"Class":"HingeConstraint"},{"ValueType":"float","type":"Property","Name":"MotorMaxTorque","tags":[],"Class":"HingeConstraint"},{"ValueType":"float","type":"Property","Name":"Restitution","tags":[],"Class":"HingeConstraint"},{"ValueType":"float","type":"Property","Name":"ServoMaxTorque","tags":[],"Class":"HingeConstraint"},{"ValueType":"float","type":"Property","Name":"TargetAngle","tags":[],"Class":"HingeConstraint"},{"ValueType":"float","type":"Property","Name":"UpperAngle","tags":[],"Class":"HingeConstraint"},{"Superclass":"Constraint","type":"Class","Name":"MoveToConstraint","tags":[]},{"ValueType":"float","type":"Property","Name":"MaxForce","tags":[],"Class":"MoveToConstraint"},{"ValueType":"float","type":"Property","Name":"StabilizingDistance","tags":[],"Class":"MoveToConstraint"},{"ValueType":"float","type":"Property","Name":"Velocity","tags":[],"Class":"MoveToConstraint"},{"Superclass":"Constraint","type":"Class","Name":"RodConstraint","tags":[]},{"ValueType":"float","type":"Property","Name":"CurrentDistance","tags":["readonly"],"Class":"RodConstraint"},{"ValueType":"float","type":"Property","Name":"Length","tags":[],"Class":"RodConstraint"},{"Superclass":"Constraint","type":"Class","Name":"RopeConstraint","tags":[]},{"ValueType":"float","type":"Property","Name":"CurrentLength","tags":["readonly"],"Class":"RopeConstraint"},{"ValueType":"float","type":"Property","Name":"Length","tags":[],"Class":"RopeConstraint"},{"ValueType":"float","type":"Property","Name":"Restitution","tags":[],"Class":"RopeConstraint"},{"Superclass":"Constraint","type":"Class","Name":"SlidingBallConstraint","tags":[]},{"ValueType":"ActuatorType","type":"Property","Name":"ActuatorType","tags":[],"Class":"SlidingBallConstraint"},{"ValueType":"float","type":"Property","Name":"CurrentPosition","tags":["readonly"],"Class":"SlidingBallConstraint"},{"ValueType":"bool","type":"Property","Name":"LimitsEnabled","tags":[],"Class":"SlidingBallConstraint"},{"ValueType":"float","type":"Property","Name":"LowerLimit","tags":[],"Class":"SlidingBallConstraint"},{"ValueType":"float","type":"Property","Name":"MotorMaxAcceleration","tags":[],"Class":"SlidingBallConstraint"},{"ValueType":"float","type":"Property","Name":"MotorMaxForce","tags":[],"Class":"SlidingBallConstraint"},{"ValueType":"float","type":"Property","Name":"Restitution","tags":[],"Class":"SlidingBallConstraint"},{"ValueType":"float","type":"Property","Name":"ServoMaxForce","tags":[],"Class":"SlidingBallConstraint"},{"ValueType":"float","type":"Property","Name":"Speed","tags":[],"Class":"SlidingBallConstraint"},{"ValueType":"float","type":"Property","Name":"TargetPosition","tags":[],"Class":"SlidingBallConstraint"},{"ValueType":"float","type":"Property","Name":"UpperLimit","tags":[],"Class":"SlidingBallConstraint"},{"ValueType":"float","type":"Property","Name":"Velocity","tags":[],"Class":"SlidingBallConstraint"},{"Superclass":"SlidingBallConstraint","type":"Class","Name":"CylindricalConstraint","tags":[]},{"ValueType":"float","type":"Property","Name":"AzimuthalAngle","tags":[],"Class":"CylindricalConstraint"},{"ValueType":"float","type":"Property","Name":"InclinationAngle","tags":[],"Class":"CylindricalConstraint"},{"Superclass":"SlidingBallConstraint","type":"Class","Name":"PrismaticConstraint","tags":[]},{"Superclass":"Constraint","type":"Class","Name":"SpringConstraint","tags":[]},{"ValueType":"float","type":"Property","Name":"CurrentLength","tags":["readonly"],"Class":"SpringConstraint"},{"ValueType":"float","type":"Property","Name":"Damping","tags":[],"Class":"SpringConstraint"},{"ValueType":"float","type":"Property","Name":"FreeLength","tags":[],"Class":"SpringConstraint"},{"ValueType":"bool","type":"Property","Name":"LimitsEnabled","tags":[],"Class":"SpringConstraint"},{"ValueType":"float","type":"Property","Name":"MaxForce","tags":[],"Class":"SpringConstraint"},{"ValueType":"float","type":"Property","Name":"MaxLength","tags":[],"Class":"SpringConstraint"},{"ValueType":"float","type":"Property","Name":"MinLength","tags":[],"Class":"SpringConstraint"},{"ValueType":"float","type":"Property","Name":"Stiffness","tags":[],"Class":"SpringConstraint"},{"Superclass":"Instance","type":"Class","Name":"ContentFilter","tags":[]},{"ReturnType":"void","Arguments":[{"Type":"int","Name":"outstandingRequests","Default":null},{"Type":"int","Name":"cacheSize","Default":null}],"Name":"SetFilterLimits","tags":["LocalUserSecurity"],"Class":"ContentFilter","type":"Function"},{"ReturnType":"void","Arguments":[{"Type":"string","Name":"url","Default":null}],"Name":"SetFilterUrl","tags":["LocalUserSecurity"],"Class":"ContentFilter","type":"Function"},{"Superclass":"Instance","type":"Class","Name":"ContentProvider","tags":[]},{"ValueType":"string","type":"Property","Name":"BaseUrl","tags":["readonly"],"Class":"ContentProvider"},{"ValueType":"int","type":"Property","Name":"RequestQueueSize","tags":["readonly"],"Class":"ContentProvider"},{"ReturnType":"void","Arguments":[{"Type":"Content","Name":"contentId","Default":null}],"Name":"Preload","tags":[],"Class":"ContentProvider","type":"Function"},{"ReturnType":"void","Arguments":[{"Type":"string","Name":"url","Default":null}],"Name":"SetAssetUrl","tags":["LocalUserSecurity"],"Class":"ContentProvider","type":"Function"},{"ReturnType":"void","Arguments":[{"Type":"string","Name":"url","Default":null}],"Name":"SetBaseUrl","tags":["LocalUserSecurity"],"Class":"ContentProvider","type":"Function"},{"ReturnType":"void","Arguments":[{"Type":"int","Name":"count","Default":null}],"Name":"SetCacheSize","tags":["LocalUserSecurity"],"Class":"ContentProvider","type":"Function"},{"ReturnType":"void","Arguments":[{"Type":"int","Name":"count","Default":null}],"Name":"SetThreadPool","tags":["LocalUserSecurity"],"Class":"ContentProvider","type":"Function"},{"ReturnType":"void","Arguments":[{"Type":"Array","Name":"contentIdList","Default":null}],"Name":"PreloadAsync","tags":[],"Class":"ContentProvider","type":"YieldFunction"},{"Superclass":"Instance","type":"Class","Name":"ContextActionService","tags":[]},{"ReturnType":"void","Arguments":[{"Type":"string","Name":"actionName","Default":null},{"Type":"Function","Name":"functionToBind","Default":null},{"Type":"bool","Name":"createTouchButton","Default":null},{"Type":"Tuple","Name":"inputTypes","Default":null}],"Name":"BindAction","tags":[],"Class":"ContextActionService","type":"Function"},{"ReturnType":"void","Arguments":[{"Type":"string","Name":"actionName","Default":null},{"Type":"Function","Name":"functionToBind","Default":null},{"Type":"bool","Name":"createTouchButton","Default":null},{"Type":"Tuple","Name":"inputTypes","Default":null}],"Name":"BindActionToInputTypes","tags":["deprecated"],"Class":"ContextActionService","type":"Function"},{"ReturnType":"void","Arguments":[{"Type":"UserInputType","Name":"userInputTypeForActivation","Default":null},{"Type":"KeyCode","Name":"keyCodeForActivation","Default":"Unknown"}],"Name":"BindActivate","tags":[],"Class":"ContextActionService","type":"Function"},{"ReturnType":"void","Arguments":[{"Type":"string","Name":"actionName","Default":null},{"Type":"Function","Name":"functionToBind","Default":null},{"Type":"bool","Name":"createTouchButton","Default":null},{"Type":"Tuple","Name":"inputTypes","Default":null}],"Name":"BindCoreAction","tags":["RobloxScriptSecurity"],"Class":"ContextActionService","type":"Function"},{"ReturnType":"void","Arguments":[{"Type":"string","Name":"actionName","Default":null},{"Type":"UserInputState","Name":"state","Default":null},{"Type":"Instance","Name":"inputObject","Default":null}],"Name":"CallFunction","tags":["RobloxScriptSecurity"],"Class":"ContextActionService","type":"Function"},{"ReturnType":"void","Arguments":[{"Type":"string","Name":"actionName","Default":null},{"Type":"Instance","Name":"actionButton","Default":null}],"Name":"FireActionButtonFoundSignal","tags":["RobloxScriptSecurity"],"Class":"ContextActionService","type":"Function"},{"ReturnType":"Dictionary","Arguments":[],"Name":"GetAllBoundActionInfo","tags":[],"Class":"ContextActionService","type":"Function"},{"ReturnType":"Dictionary","Arguments":[{"Type":"string","Name":"actionName","Default":null}],"Name":"GetBoundActionInfo","tags":[],"Class":"ContextActionService","type":"Function"},{"ReturnType":"string","Arguments":[],"Name":"GetCurrentLocalToolIcon","tags":[],"Class":"ContextActionService","type":"Function"},{"ReturnType":"void","Arguments":[{"Type":"string","Name":"actionName","Default":null},{"Type":"string","Name":"description","Default":null}],"Name":"SetDescription","tags":[],"Class":"ContextActionService","type":"Function"},{"ReturnType":"void","Arguments":[{"Type":"string","Name":"actionName","Default":null},{"Type":"string","Name":"image","Default":null}],"Name":"SetImage","tags":[],"Class":"ContextActionService","type":"Function"},{"ReturnType":"void","Arguments":[{"Type":"string","Name":"actionName","Default":null},{"Type":"UDim2","Name":"position","Default":null}],"Name":"SetPosition","tags":[],"Class":"ContextActionService","type":"Function"},{"ReturnType":"void","Arguments":[{"Type":"string","Name":"actionName","Default":null},{"Type":"string","Name":"title","Default":null}],"Name":"SetTitle","tags":[],"Class":"ContextActionService","type":"Function"},{"ReturnType":"void","Arguments":[{"Type":"string","Name":"actionName","Default":null}],"Name":"UnbindAction","tags":[],"Class":"ContextActionService","type":"Function"},{"ReturnType":"void","Arguments":[{"Type":"UserInputType","Name":"userInputTypeForActivation","Default":null},{"Type":"KeyCode","Name":"keyCodeForActivation","Default":"Unknown"}],"Name":"UnbindActivate","tags":[],"Class":"ContextActionService","type":"Function"},{"ReturnType":"void","Arguments":[],"Name":"UnbindAllActions","tags":[],"Class":"ContextActionService","type":"Function"},{"ReturnType":"void","Arguments":[{"Type":"string","Name":"actionName","Default":null}],"Name":"UnbindCoreAction","tags":["RobloxScriptSecurity"],"Class":"ContextActionService","type":"Function"},{"ReturnType":"Instance","Arguments":[{"Type":"string","Name":"actionName","Default":null}],"Name":"GetButton","tags":[],"Class":"ContextActionService","type":"YieldFunction"},{"Arguments":[{"Name":"actionAdded","Type":"string"},{"Name":"createTouchButton","Type":"bool"},{"Name":"functionInfoTable","Type":"Dictionary"}],"Name":"BoundActionAdded","tags":["RobloxScriptSecurity"],"Class":"ContextActionService","type":"Event"},{"Arguments":[{"Name":"actionChanged","Type":"string"},{"Name":"changeName","Type":"string"},{"Name":"changeTable","Type":"Dictionary"}],"Name":"BoundActionChanged","tags":["RobloxScriptSecurity"],"Class":"ContextActionService","type":"Event"},{"Arguments":[{"Name":"actionRemoved","Type":"string"},{"Name":"functionInfoTable","Type":"Dictionary"}],"Name":"BoundActionRemoved","tags":["RobloxScriptSecurity"],"Class":"ContextActionService","type":"Event"},{"Arguments":[{"Name":"actionName","Type":"string"}],"Name":"GetActionButtonEvent","tags":["RobloxScriptSecurity"],"Class":"ContextActionService","type":"Event"},{"Arguments":[{"Name":"toolEquipped","Type":"Instance"}],"Name":"LocalToolEquipped","tags":[],"Class":"ContextActionService","type":"Event"},{"Arguments":[{"Name":"toolUnequipped","Type":"Instance"}],"Name":"LocalToolUnequipped","tags":[],"Class":"ContextActionService","type":"Event"},{"Superclass":"Instance","type":"Class","Name":"Controller","tags":[]},{"ReturnType":"void","Arguments":[{"Type":"Button","Name":"button","Default":null},{"Type":"string","Name":"caption","Default":null}],"Name":"BindButton","tags":[],"Class":"Controller","type":"Function"},{"ReturnType":"bool","Arguments":[{"Type":"Button","Name":"button","Default":null}],"Name":"GetButton","tags":[],"Class":"Controller","type":"Function"},{"ReturnType":"void","Arguments":[{"Type":"Button","Name":"button","Default":null}],"Name":"UnbindButton","tags":[],"Class":"Controller","type":"Function"},{"ReturnType":"void","Arguments":[{"Type":"Button","Name":"button","Default":null},{"Type":"string","Name":"caption","Default":null}],"Name":"bindButton","tags":["deprecated"],"Class":"Controller","type":"Function"},{"ReturnType":"bool","Arguments":[{"Type":"Button","Name":"button","Default":null}],"Name":"getButton","tags":["deprecated"],"Class":"Controller","type":"Function"},{"Arguments":[{"Name":"button","Type":"Button"}],"Name":"ButtonChanged","tags":[],"Class":"Controller","type":"Event"},{"Superclass":"Controller","type":"Class","Name":"HumanoidController","tags":[]},{"Superclass":"Controller","type":"Class","Name":"SkateboardController","tags":[]},{"ValueType":"float","type":"Property","Name":"Steer","tags":["readonly"],"Class":"SkateboardController"},{"ValueType":"float","type":"Property","Name":"Throttle","tags":["readonly"],"Class":"SkateboardController"},{"Arguments":[{"Name":"axis","Type":"string"}],"Name":"AxisChanged","tags":[],"Class":"SkateboardController","type":"Event"},{"Superclass":"Controller","type":"Class","Name":"VehicleController","tags":[]},{"Superclass":"Instance","type":"Class","Name":"ControllerService","tags":["notCreatable"]},{"Superclass":"Instance","type":"Class","Name":"CookiesService","tags":[]},{"ReturnType":"void","Arguments":[{"Type":"string","Name":"key","Default":null}],"Name":"DeleteCookieValue","tags":["RobloxSecurity"],"Class":"CookiesService","type":"Function"},{"ReturnType":"string","Arguments":[{"Type":"string","Name":"key","Default":null}],"Name":"GetCookieValue","tags":["RobloxSecurity"],"Class":"CookiesService","type":"Function"},{"ReturnType":"void","Arguments":[{"Type":"string","Name":"key","Default":null},{"Type":"string","Name":"value","Default":null}],"Name":"SetCookieValue","tags":["RobloxSecurity"],"Class":"CookiesService","type":"Function"},{"Superclass":"Instance","type":"Class","Name":"CustomEvent","tags":["deprecated"]},{"ReturnType":"Objects","Arguments":[],"Name":"GetAttachedReceivers","tags":[],"Class":"CustomEvent","type":"Function"},{"ReturnType":"void","Arguments":[{"Type":"float","Name":"newValue","Default":null}],"Name":"SetValue","tags":[],"Class":"CustomEvent","type":"Function"},{"Arguments":[{"Name":"receiver","Type":"Instance"}],"Name":"ReceiverConnected","tags":[],"Class":"CustomEvent","type":"Event"},{"Arguments":[{"Name":"receiver","Type":"Instance"}],"Name":"ReceiverDisconnected","tags":[],"Class":"CustomEvent","type":"Event"},{"Superclass":"Instance","type":"Class","Name":"CustomEventReceiver","tags":["deprecated"]},{"ValueType":"Object","type":"Property","Name":"Source","tags":[],"Class":"CustomEventReceiver"},{"ReturnType":"float","Arguments":[],"Name":"GetCurrentValue","tags":[],"Class":"CustomEventReceiver","type":"Function"},{"Arguments":[{"Name":"event","Type":"Instance"}],"Name":"EventConnected","tags":[],"Class":"CustomEventReceiver","type":"Event"},{"Arguments":[{"Name":"event","Type":"Instance"}],"Name":"EventDisconnected","tags":[],"Class":"CustomEventReceiver","type":"Event"},{"Arguments":[{"Name":"newValue","Type":"float"}],"Name":"SourceValueChanged","tags":[],"Class":"CustomEventReceiver","type":"Event"},{"Superclass":"Instance","type":"Class","Name":"DataModelMesh","tags":["notbrowsable"]},{"ValueType":"Vector3","type":"Property","Name":"Offset","tags":[],"Class":"DataModelMesh"},{"ValueType":"Vector3","type":"Property","Name":"Scale","tags":[],"Class":"DataModelMesh"},{"ValueType":"Vector3","type":"Property","Name":"VertexColor","tags":[],"Class":"DataModelMesh"},{"Superclass":"DataModelMesh","type":"Class","Name":"BevelMesh","tags":["deprecated","notbrowsable"]},{"Superclass":"BevelMesh","type":"Class","Name":"BlockMesh","tags":[]},{"Superclass":"BevelMesh","type":"Class","Name":"CylinderMesh","tags":[]},{"Superclass":"DataModelMesh","type":"Class","Name":"FileMesh","tags":[]},{"ValueType":"Content","type":"Property","Name":"MeshId","tags":[],"Class":"FileMesh"},{"ValueType":"Content","type":"Property","Name":"TextureId","tags":[],"Class":"FileMesh"},{"Superclass":"FileMesh","type":"Class","Name":"SpecialMesh","tags":[]},{"ValueType":"MeshType","type":"Property","Name":"MeshType","tags":[],"Class":"SpecialMesh"},{"Superclass":"Instance","type":"Class","Name":"DataStoreService","tags":["notCreatable"]},{"ValueType":"bool","type":"Property","Name":"LegacyNamingScheme","tags":["LocalUserSecurity"],"Class":"DataStoreService"},{"ReturnType":"Instance","Arguments":[{"Type":"string","Name":"name","Default":null},{"Type":"string","Name":"scope","Default":"global"}],"Name":"GetDataStore","tags":[],"Class":"DataStoreService","type":"Function"},{"ReturnType":"Instance","Arguments":[],"Name":"GetGlobalDataStore","tags":[],"Class":"DataStoreService","type":"Function"},{"ReturnType":"Instance","Arguments":[{"Type":"string","Name":"name","Default":null},{"Type":"string","Name":"scope","Default":"global"}],"Name":"GetOrderedDataStore","tags":[],"Class":"DataStoreService","type":"Function"},{"Superclass":"Instance","type":"Class","Name":"Debris","tags":[]},{"ValueType":"int","type":"Property","Name":"MaxItems","tags":["deprecated"],"Class":"Debris"},{"ReturnType":"void","Arguments":[{"Type":"Instance","Name":"item","Default":null},{"Type":"double","Name":"lifetime","Default":"10"}],"Name":"AddItem","tags":[],"Class":"Debris","type":"Function"},{"ReturnType":"void","Arguments":[{"Type":"bool","Name":"enabled","Default":null}],"Name":"SetLegacyMaxItems","tags":["LocalUserSecurity"],"Class":"Debris","type":"Function"},{"ReturnType":"void","Arguments":[{"Type":"Instance","Name":"item","Default":null},{"Type":"double","Name":"lifetime","Default":"10"}],"Name":"addItem","tags":["deprecated"],"Class":"Debris","type":"Function"},{"Superclass":"Instance","type":"Class","Name":"DebugSettings","tags":["notbrowsable"]},{"ValueType":"int","type":"Property","Name":"AltCdnFailureCount","tags":["readonly"],"Class":"DebugSettings"},{"ValueType":"int","type":"Property","Name":"AltCdnSuccessCount","tags":["readonly"],"Class":"DebugSettings"},{"ValueType":"int","type":"Property","Name":"AvailablePhysicalMemory","tags":["readonly"],"Class":"DebugSettings"},{"ValueType":"int","type":"Property","Name":"BlockMeshSize","tags":["readonly"],"Class":"DebugSettings"},{"ValueType":"string","type":"Property","Name":"CPU","tags":["readonly"],"Class":"DebugSettings"},{"ValueType":"int","type":"Property","Name":"CdnFailureCount","tags":["readonly"],"Class":"DebugSettings"},{"ValueType":"double","type":"Property","Name":"CdnResponceTime","tags":["readonly"],"Class":"DebugSettings"},{"ValueType":"int","type":"Property","Name":"CdnSuccessCount","tags":["readonly"],"Class":"DebugSettings"},{"ValueType":"int","type":"Property","Name":"CpuCount","tags":["readonly"],"Class":"DebugSettings"},{"ValueType":"int","type":"Property","Name":"CpuSpeed","tags":["readonly"],"Class":"DebugSettings"},{"ValueType":"int","type":"Property","Name":"DataModel","tags":["readonly"],"Class":"DebugSettings"},{"ValueType":"double","type":"Property","Name":"ElapsedTime","tags":["readonly"],"Class":"DebugSettings"},{"ValueType":"ErrorReporting","type":"Property","Name":"ErrorReporting","tags":[],"Class":"DebugSettings"},{"ValueType":"string","type":"Property","Name":"GfxCard","tags":["readonly"],"Class":"DebugSettings"},{"ValueType":"int","type":"Property","Name":"InstanceCount","tags":["readonly"],"Class":"DebugSettings"},{"ValueType":"bool","type":"Property","Name":"IsFmodProfilingEnabled","tags":[],"Class":"DebugSettings"},{"ValueType":"bool","type":"Property","Name":"IsProfilingEnabled","tags":[],"Class":"DebugSettings"},{"ValueType":"bool","type":"Property","Name":"IsScriptStackTracingEnabled","tags":[],"Class":"DebugSettings"},{"ValueType":"int","type":"Property","Name":"JobCount","tags":["readonly"],"Class":"DebugSettings"},{"ValueType":"double","type":"Property","Name":"LastCdnFailureTimeSpan","tags":["readonly"],"Class":"DebugSettings"},{"ValueType":"int","type":"Property","Name":"LuaRamLimit","tags":[],"Class":"DebugSettings"},{"ValueType":"int","type":"Property","Name":"NameDatabaseBytes","tags":["readonly"],"Class":"DebugSettings"},{"ValueType":"int","type":"Property","Name":"NameDatabaseSize","tags":["readonly"],"Class":"DebugSettings"},{"ValueType":"bool","type":"Property","Name":"OsIs64Bit","tags":["readonly"],"Class":"DebugSettings"},{"ValueType":"string","type":"Property","Name":"OsPlatform","tags":["readonly"],"Class":"DebugSettings"},{"ValueType":"int","type":"Property","Name":"OsPlatformId","tags":["readonly"],"Class":"DebugSettings"},{"ValueType":"string","type":"Property","Name":"OsVer","tags":["readonly"],"Class":"DebugSettings"},{"ValueType":"int","type":"Property","Name":"PageFaultsPerSecond","tags":["readonly"],"Class":"DebugSettings"},{"ValueType":"int","type":"Property","Name":"PageFileBytes","tags":["readonly"],"Class":"DebugSettings"},{"ValueType":"float","type":"Property","Name":"PixelShaderModel","tags":["readonly"],"Class":"DebugSettings"},{"ValueType":"int","type":"Property","Name":"PlayerCount","tags":["readonly"],"Class":"DebugSettings"},{"ValueType":"int","type":"Property","Name":"PrivateBytes","tags":["readonly"],"Class":"DebugSettings"},{"ValueType":"int","type":"Property","Name":"PrivateWorkingSetBytes","tags":["readonly"],"Class":"DebugSettings"},{"ValueType":"double","type":"Property","Name":"ProcessCores","tags":["readonly"],"Class":"DebugSettings"},{"ValueType":"int","type":"Property","Name":"ProcessorTime","tags":["readonly"],"Class":"DebugSettings"},{"ValueType":"double","type":"Property","Name":"ProfilingWindow","tags":[],"Class":"DebugSettings"},{"ValueType":"int","type":"Property","Name":"RAM","tags":["readonly"],"Class":"DebugSettings"},{"ValueType":"bool","type":"Property","Name":"ReportExtendedMachineConfiguration","tags":[],"Class":"DebugSettings"},{"ValueType":"bool","type":"Property","Name":"ReportSoundWarnings","tags":[],"Class":"DebugSettings"},{"ValueType":"string","type":"Property","Name":"Resolution","tags":["readonly"],"Class":"DebugSettings"},{"ValueType":"int","type":"Property","Name":"RobloxFailureCount","tags":["readonly"],"Class":"DebugSettings"},{"ValueType":"string","type":"Property","Name":"RobloxProductName","tags":["readonly"],"Class":"DebugSettings"},{"ValueType":"double","type":"Property","Name":"RobloxRespoceTime","tags":["readonly"],"Class":"DebugSettings"},{"ValueType":"int","type":"Property","Name":"RobloxSuccessCount","tags":["readonly"],"Class":"DebugSettings"},{"ValueType":"string","type":"Property","Name":"RobloxVersion","tags":["readonly"],"Class":"DebugSettings"},{"ValueType":"string","type":"Property","Name":"SIMD","tags":["readonly"],"Class":"DebugSettings"},{"ValueType":"string","type":"Property","Name":"SystemProductName","tags":["readonly"],"Class":"DebugSettings"},{"ValueType":"TickCountSampleMethod","type":"Property","Name":"TickCountPreciseOverride","tags":[],"Class":"DebugSettings"},{"ValueType":"int","type":"Property","Name":"TotalPhysicalMemory","tags":["readonly"],"Class":"DebugSettings"},{"ValueType":"int","type":"Property","Name":"TotalProcessorTime","tags":["readonly"],"Class":"DebugSettings"},{"ValueType":"float","type":"Property","Name":"VertexShaderModel","tags":["readonly"],"Class":"DebugSettings"},{"ValueType":"int","type":"Property","Name":"VideoMemory","tags":["readonly"],"Class":"DebugSettings"},{"ValueType":"int","type":"Property","Name":"VirtualBytes","tags":["readonly"],"Class":"DebugSettings"},{"ReturnType":"void","Arguments":[],"Name":"LegacyScriptMode","tags":["LocalUserSecurity","deprecated"],"Class":"DebugSettings","type":"Function"},{"ReturnType":"Tuple","Arguments":[],"Name":"ResetCdnFailureCounts","tags":["LocalUserSecurity"],"Class":"DebugSettings","type":"Function"},{"ReturnType":"void","Arguments":[{"Type":"bool","Name":"value","Default":null}],"Name":"SetBlockingRemove","tags":["LocalUserSecurity"],"Class":"DebugSettings","type":"Function"},{"Superclass":"Instance","type":"Class","Name":"DebuggerBreakpoint","tags":["notCreatable"]},{"ValueType":"string","type":"Property","Name":"Condition","tags":[],"Class":"DebuggerBreakpoint"},{"ValueType":"bool","type":"Property","Name":"IsEnabled","tags":[],"Class":"DebuggerBreakpoint"},{"ValueType":"int","type":"Property","Name":"Line","tags":["readonly"],"Class":"DebuggerBreakpoint"},{"Superclass":"Instance","type":"Class","Name":"DebuggerManager","tags":["notCreatable"]},{"ValueType":"bool","type":"Property","Name":"DebuggingEnabled","tags":["readonly"],"Class":"DebuggerManager"},{"ReturnType":"Instance","Arguments":[{"Type":"Instance","Name":"script","Default":null}],"Name":"AddDebugger","tags":[],"Class":"DebuggerManager","type":"Function"},{"ReturnType":"void","Arguments":[],"Name":"EnableDebugging","tags":["LocalUserSecurity"],"Class":"DebuggerManager","type":"Function"},{"ReturnType":"Objects","Arguments":[],"Name":"GetDebuggers","tags":[],"Class":"DebuggerManager","type":"Function"},{"ReturnType":"void","Arguments":[],"Name":"Resume","tags":[],"Class":"DebuggerManager","type":"Function"},{"ReturnType":"void","Arguments":[],"Name":"StepIn","tags":[],"Class":"DebuggerManager","type":"Function"},{"ReturnType":"void","Arguments":[],"Name":"StepOut","tags":[],"Class":"DebuggerManager","type":"Function"},{"ReturnType":"void","Arguments":[],"Name":"StepOver","tags":[],"Class":"DebuggerManager","type":"Function"},{"Arguments":[{"Name":"debugger","Type":"Instance"}],"Name":"DebuggerAdded","tags":[],"Class":"DebuggerManager","type":"Event"},{"Arguments":[{"Name":"debugger","Type":"Instance"}],"Name":"DebuggerRemoved","tags":[],"Class":"DebuggerManager","type":"Event"},{"Superclass":"Instance","type":"Class","Name":"DebuggerWatch","tags":[]},{"ValueType":"string","type":"Property","Name":"Expression","tags":[],"Class":"DebuggerWatch"},{"ReturnType":"void","Arguments":[],"Name":"CheckSyntax","tags":[],"Class":"DebuggerWatch","type":"Function"},{"Superclass":"Instance","type":"Class","Name":"Dialog","tags":[]},{"ValueType":"float","type":"Property","Name":"ConversationDistance","tags":[],"Class":"Dialog"},{"ValueType":"string","type":"Property","Name":"GoodbyeDialog","tags":[],"Class":"Dialog"},{"ValueType":"bool","type":"Property","Name":"InUse","tags":[],"Class":"Dialog"},{"ValueType":"string","type":"Property","Name":"InitialPrompt","tags":[],"Class":"Dialog"},{"ValueType":"DialogPurpose","type":"Property","Name":"Purpose","tags":[],"Class":"Dialog"},{"ValueType":"DialogTone","type":"Property","Name":"Tone","tags":[],"Class":"Dialog"},{"ReturnType":"void","Arguments":[{"Type":"Instance","Name":"player","Default":null},{"Type":"Instance","Name":"dialogChoice","Default":null}],"Name":"SignalDialogChoiceSelected","tags":["RobloxScriptSecurity"],"Class":"Dialog","type":"Function"},{"Arguments":[{"Name":"player","Type":"Instance"},{"Name":"dialogChoice","Type":"Instance"}],"Name":"DialogChoiceSelected","tags":[],"Class":"Dialog","type":"Event"},{"Superclass":"Instance","type":"Class","Name":"DialogChoice","tags":[]},{"ValueType":"string","type":"Property","Name":"GoodbyeDialog","tags":[],"Class":"DialogChoice"},{"ValueType":"string","type":"Property","Name":"ResponseDialog","tags":[],"Class":"DialogChoice"},{"ValueType":"string","type":"Property","Name":"UserDialog","tags":[],"Class":"DialogChoice"},{"Superclass":"Instance","type":"Class","Name":"DoubleConstrainedValue","tags":[]},{"ValueType":"double","type":"Property","Name":"ConstrainedValue","tags":["hidden"],"Class":"DoubleConstrainedValue"},{"ValueType":"double","type":"Property","Name":"MaxValue","tags":[],"Class":"DoubleConstrainedValue"},{"ValueType":"double","type":"Property","Name":"MinValue","tags":[],"Class":"DoubleConstrainedValue"},{"ValueType":"double","type":"Property","Name":"Value","tags":[],"Class":"DoubleConstrainedValue"},{"Arguments":[{"Name":"value","Type":"double"}],"Name":"Changed","tags":[],"Class":"DoubleConstrainedValue","type":"Event"},{"Arguments":[{"Name":"value","Type":"double"}],"Name":"changed","tags":["deprecated"],"Class":"DoubleConstrainedValue","type":"Event"},{"Superclass":"Instance","type":"Class","Name":"Dragger","tags":[]},{"ReturnType":"void","Arguments":[{"Type":"Axis","Name":"axis","Default":"X"}],"Name":"AxisRotate","tags":[],"Class":"Dragger","type":"Function"},{"ReturnType":"void","Arguments":[{"Type":"Instance","Name":"mousePart","Default":null},{"Type":"Vector3","Name":"pointOnMousePart","Default":null},{"Type":"Objects","Name":"parts","Default":null}],"Name":"MouseDown","tags":[],"Class":"Dragger","type":"Function"},{"ReturnType":"void","Arguments":[{"Type":"Ray","Name":"mouseRay","Default":null}],"Name":"MouseMove","tags":[],"Class":"Dragger","type":"Function"},{"ReturnType":"void","Arguments":[],"Name":"MouseUp","tags":[],"Class":"Dragger","type":"Function"},{"Superclass":"Instance","type":"Class","Name":"Explosion","tags":[]},{"ValueType":"float","type":"Property","Name":"BlastPressure","tags":[],"Class":"Explosion"},{"ValueType":"float","type":"Property","Name":"BlastRadius","tags":[],"Class":"Explosion"},{"ValueType":"float","type":"Property","Name":"DestroyJointRadiusPercent","tags":[],"Class":"Explosion"},{"ValueType":"ExplosionType","type":"Property","Name":"ExplosionType","tags":[],"Class":"Explosion"},{"ValueType":"Vector3","type":"Property","Name":"Position","tags":[],"Class":"Explosion"},{"Arguments":[{"Name":"part","Type":"Instance"},{"Name":"distance","Type":"float"}],"Name":"Hit","tags":[],"Class":"Explosion","type":"Event"},{"Superclass":"Instance","type":"Class","Name":"FaceInstance","tags":["notbrowsable"]},{"ValueType":"NormalId","type":"Property","Name":"Face","tags":[],"Class":"FaceInstance"},{"Superclass":"FaceInstance","type":"Class","Name":"Decal","tags":[]},{"ValueType":"float","type":"Property","Name":"LocalTransparencyModifier","tags":["hidden"],"Class":"Decal"},{"ValueType":"float","type":"Property","Name":"Shiny","tags":["deprecated"],"Class":"Decal"},{"ValueType":"float","type":"Property","Name":"Specular","tags":["deprecated"],"Class":"Decal"},{"ValueType":"Content","type":"Property","Name":"Texture","tags":[],"Class":"Decal"},{"ValueType":"float","type":"Property","Name":"Transparency","tags":[],"Class":"Decal"},{"Superclass":"Decal","type":"Class","Name":"Texture","tags":[]},{"ValueType":"float","type":"Property","Name":"StudsPerTileU","tags":[],"Class":"Texture"},{"ValueType":"float","type":"Property","Name":"StudsPerTileV","tags":[],"Class":"Texture"},{"Superclass":"Instance","type":"Class","Name":"Feature","tags":[]},{"ValueType":"NormalId","type":"Property","Name":"FaceId","tags":[],"Class":"Feature"},{"ValueType":"InOut","type":"Property","Name":"InOut","tags":[],"Class":"Feature"},{"ValueType":"LeftRight","type":"Property","Name":"LeftRight","tags":[],"Class":"Feature"},{"ValueType":"TopBottom","type":"Property","Name":"TopBottom","tags":[],"Class":"Feature"},{"Superclass":"Feature","type":"Class","Name":"Hole","tags":["deprecated"]},{"Superclass":"Feature","type":"Class","Name":"MotorFeature","tags":["deprecated"]},{"Superclass":"Instance","type":"Class","Name":"Fire","tags":[]},{"ValueType":"Color3","type":"Property","Name":"Color","tags":[],"Class":"Fire"},{"ValueType":"bool","type":"Property","Name":"Enabled","tags":[],"Class":"Fire"},{"ValueType":"float","type":"Property","Name":"Heat","tags":[],"Class":"Fire"},{"ValueType":"Color3","type":"Property","Name":"SecondaryColor","tags":[],"Class":"Fire"},{"ValueType":"float","type":"Property","Name":"Size","tags":[],"Class":"Fire"},{"ValueType":"float","type":"Property","Name":"size","tags":["deprecated"],"Class":"Fire"},{"Superclass":"Instance","type":"Class","Name":"FlagStandService","tags":[]},{"Superclass":"Instance","type":"Class","Name":"FlyweightService","tags":[]},{"Superclass":"FlyweightService","type":"Class","Name":"CSGDictionaryService","tags":[]},{"Superclass":"FlyweightService","type":"Class","Name":"NonReplicatedCSGDictionaryService","tags":[]},{"Superclass":"Instance","type":"Class","Name":"Folder","tags":[]},{"Superclass":"Instance","type":"Class","Name":"ForceField","tags":[]},{"Superclass":"Instance","type":"Class","Name":"FriendService","tags":["notCreatable"]},{"ReturnType":"void","Arguments":[{"Type":"string","Name":"url","Default":null}],"Name":"SetBreakFriendUrl","tags":["LocalUserSecurity"],"Class":"FriendService","type":"Function"},{"ReturnType":"void","Arguments":[{"Type":"string","Name":"url","Default":null}],"Name":"SetCreateFriendRequestUrl","tags":["LocalUserSecurity"],"Class":"FriendService","type":"Function"},{"ReturnType":"void","Arguments":[{"Type":"string","Name":"url","Default":null}],"Name":"SetDeleteFriendRequestUrl","tags":["LocalUserSecurity"],"Class":"FriendService","type":"Function"},{"ReturnType":"void","Arguments":[{"Type":"bool","Name":"enable","Default":null}],"Name":"SetEnabled","tags":["LocalUserSecurity"],"Class":"FriendService","type":"Function"},{"ReturnType":"void","Arguments":[{"Type":"string","Name":"url","Default":null}],"Name":"SetFriendsOnlineUrl","tags":["LocalUserSecurity"],"Class":"FriendService","type":"Function"},{"ReturnType":"void","Arguments":[{"Type":"string","Name":"url","Default":null}],"Name":"SetGetFriendsUrl","tags":["LocalUserSecurity"],"Class":"FriendService","type":"Function"},{"ReturnType":"void","Arguments":[{"Type":"string","Name":"url","Default":null}],"Name":"SetMakeFriendUrl","tags":["LocalUserSecurity"],"Class":"FriendService","type":"Function"},{"Superclass":"Instance","type":"Class","Name":"FunctionalTest","tags":["deprecated"]},{"ValueType":"string","type":"Property","Name":"Description","tags":[],"Class":"FunctionalTest"},{"ReturnType":"void","Arguments":[{"Type":"string","Name":"message","Default":""}],"Name":"Error","tags":[],"Class":"FunctionalTest","type":"Function"},{"ReturnType":"void","Arguments":[{"Type":"string","Name":"message","Default":""}],"Name":"Failed","tags":[],"Class":"FunctionalTest","type":"Function"},{"ReturnType":"void","Arguments":[{"Type":"string","Name":"message","Default":""}],"Name":"Pass","tags":[],"Class":"FunctionalTest","type":"Function"},{"ReturnType":"void","Arguments":[{"Type":"string","Name":"message","Default":""}],"Name":"Passed","tags":[],"Class":"FunctionalTest","type":"Function"},{"ReturnType":"void","Arguments":[{"Type":"string","Name":"message","Default":""}],"Name":"Warn","tags":[],"Class":"FunctionalTest","type":"Function"},{"Superclass":"Instance","type":"Class","Name":"GamePassService","tags":[]},{"ReturnType":"void","Arguments":[{"Type":"string","Name":"playerHasPassUrl","Default":null}],"Name":"SetPlayerHasPassUrl","tags":["LocalUserSecurity"],"Class":"GamePassService","type":"Function"},{"ReturnType":"bool","Arguments":[{"Type":"Instance","Name":"player","Default":null},{"Type":"int","Name":"gamePassId","Default":null}],"Name":"PlayerHasPass","tags":[],"Class":"GamePassService","type":"YieldFunction"},{"Superclass":"Instance","type":"Class","Name":"GameSettings","tags":["notbrowsable"]},{"ValueType":"float","type":"Property","Name":"BubbleChatLifetime","tags":[],"Class":"GameSettings"},{"ValueType":"int","type":"Property","Name":"BubbleChatMaxBubbles","tags":[],"Class":"GameSettings"},{"ValueType":"int","type":"Property","Name":"ChatHistory","tags":[],"Class":"GameSettings"},{"ValueType":"int","type":"Property","Name":"ChatScrollLength","tags":[],"Class":"GameSettings"},{"ValueType":"bool","type":"Property","Name":"CollisionSoundEnabled","tags":["deprecated"],"Class":"GameSettings"},{"ValueType":"float","type":"Property","Name":"CollisionSoundVolume","tags":["deprecated"],"Class":"GameSettings"},{"ValueType":"bool","type":"Property","Name":"HardwareMouse","tags":[],"Class":"GameSettings"},{"ValueType":"int","type":"Property","Name":"MaxCollisionSounds","tags":["deprecated"],"Class":"GameSettings"},{"ValueType":"int","type":"Property","Name":"ReportAbuseChatHistory","tags":[],"Class":"GameSettings"},{"ValueType":"bool","type":"Property","Name":"SoftwareSound","tags":[],"Class":"GameSettings"},{"ValueType":"bool","type":"Property","Name":"SoundEnabled","tags":[],"Class":"GameSettings"},{"ValueType":"bool","type":"Property","Name":"VideoCaptureEnabled","tags":[],"Class":"GameSettings"},{"ValueType":"VideoQualitySettings","type":"Property","Name":"VideoQuality","tags":[],"Class":"GameSettings"},{"Arguments":[{"Name":"recording","Type":"bool"}],"Name":"VideoRecordingChangeRequest","tags":["RobloxScriptSecurity"],"Class":"GameSettings","type":"Event"},{"Superclass":"Instance","type":"Class","Name":"GamepadService","tags":[]},{"Superclass":"Instance","type":"Class","Name":"Geometry","tags":[]},{"Superclass":"Instance","type":"Class","Name":"GlobalDataStore","tags":[]},{"ReturnType":"Connection","Arguments":[{"Type":"string","Name":"key","Default":null},{"Type":"Function","Name":"callback","Default":null}],"Name":"OnUpdate","tags":[],"Class":"GlobalDataStore","type":"Function"},{"ReturnType":"Variant","Arguments":[{"Type":"string","Name":"key","Default":null}],"Name":"GetAsync","tags":[],"Class":"GlobalDataStore","type":"YieldFunction"},{"ReturnType":"Variant","Arguments":[{"Type":"string","Name":"key","Default":null},{"Type":"int","Name":"delta","Default":"1"}],"Name":"IncrementAsync","tags":[],"Class":"GlobalDataStore","type":"YieldFunction"},{"ReturnType":"void","Arguments":[{"Type":"string","Name":"key","Default":null},{"Type":"Variant","Name":"value","Default":null}],"Name":"SetAsync","tags":[],"Class":"GlobalDataStore","type":"YieldFunction"},{"ReturnType":"Tuple","Arguments":[{"Type":"string","Name":"key","Default":null},{"Type":"Function","Name":"transformFunction","Default":null}],"Name":"UpdateAsync","tags":[],"Class":"GlobalDataStore","type":"YieldFunction"},{"Superclass":"GlobalDataStore","type":"Class","Name":"OrderedDataStore","tags":[]},{"ReturnType":"Instance","Arguments":[{"Type":"bool","Name":"ascending","Default":null},{"Type":"int","Name":"pagesize","Default":null},{"Type":"Variant","Name":"minValue","Default":null},{"Type":"Variant","Name":"maxValue","Default":null}],"Name":"GetSortedAsync","tags":[],"Class":"OrderedDataStore","type":"YieldFunction"},{"Superclass":"Instance","type":"Class","Name":"GroupService","tags":["notCreatable"]},{"ReturnType":"Instance","Arguments":[{"Type":"int","Name":"groupId","Default":null}],"Name":"GetAlliesAsync","tags":[],"Class":"GroupService","type":"YieldFunction"},{"ReturnType":"Instance","Arguments":[{"Type":"int","Name":"groupId","Default":null}],"Name":"GetEnemiesAsync","tags":[],"Class":"GroupService","type":"YieldFunction"},{"ReturnType":"Variant","Arguments":[{"Type":"int","Name":"groupId","Default":null}],"Name":"GetGroupInfoAsync","tags":[],"Class":"GroupService","type":"YieldFunction"},{"ReturnType":"Array","Arguments":[{"Type":"int","Name":"userId","Default":null}],"Name":"GetGroupsAsync","tags":[],"Class":"GroupService","type":"YieldFunction"},{"Superclass":"Instance","type":"Class","Name":"GuiBase","tags":[]},{"Superclass":"GuiBase","type":"Class","Name":"GuiBase2d","tags":["notbrowsable"]},{"ValueType":"Vector2","type":"Property","Name":"AbsolutePosition","tags":["readonly"],"Class":"GuiBase2d"},{"ValueType":"Vector2","type":"Property","Name":"AbsoluteSize","tags":["readonly"],"Class":"GuiBase2d"},{"Superclass":"GuiBase2d","type":"Class","Name":"GuiObject","tags":["notbrowsable"]},{"ValueType":"bool","type":"Property","Name":"Active","tags":[],"Class":"GuiObject"},{"ValueType":"BrickColor","type":"Property","Name":"BackgroundColor","tags":["deprecated","hidden"],"Class":"GuiObject"},{"ValueType":"Color3","type":"Property","Name":"BackgroundColor3","tags":[],"Class":"GuiObject"},{"ValueType":"float","type":"Property","Name":"BackgroundTransparency","tags":[],"Class":"GuiObject"},{"ValueType":"BrickColor","type":"Property","Name":"BorderColor","tags":["deprecated","hidden"],"Class":"GuiObject"},{"ValueType":"Color3","type":"Property","Name":"BorderColor3","tags":[],"Class":"GuiObject"},{"ValueType":"int","type":"Property","Name":"BorderSizePixel","tags":[],"Class":"GuiObject"},{"ValueType":"bool","type":"Property","Name":"ClipsDescendants","tags":[],"Class":"GuiObject"},{"ValueType":"bool","type":"Property","Name":"Draggable","tags":[],"Class":"GuiObject"},{"ValueType":"Object","type":"Property","Name":"NextSelectionDown","tags":[],"Class":"GuiObject"},{"ValueType":"Object","type":"Property","Name":"NextSelectionLeft","tags":[],"Class":"GuiObject"},{"ValueType":"Object","type":"Property","Name":"NextSelectionRight","tags":[],"Class":"GuiObject"},{"ValueType":"Object","type":"Property","Name":"NextSelectionUp","tags":[],"Class":"GuiObject"},{"ValueType":"UDim2","type":"Property","Name":"Position","tags":[],"Class":"GuiObject"},{"ValueType":"float","type":"Property","Name":"Rotation","tags":[],"Class":"GuiObject"},{"ValueType":"bool","type":"Property","Name":"Selectable","tags":[],"Class":"GuiObject"},{"ValueType":"Object","type":"Property","Name":"SelectionImageObject","tags":[],"Class":"GuiObject"},{"ValueType":"UDim2","type":"Property","Name":"Size","tags":[],"Class":"GuiObject"},{"ValueType":"SizeConstraint","type":"Property","Name":"SizeConstraint","tags":[],"Class":"GuiObject"},{"ValueType":"float","type":"Property","Name":"Transparency","tags":["hidden"],"Class":"GuiObject"},{"ValueType":"bool","type":"Property","Name":"Visible","tags":[],"Class":"GuiObject"},{"ValueType":"int","type":"Property","Name":"ZIndex","tags":[],"Class":"GuiObject"},{"ReturnType":"bool","Arguments":[{"Type":"UDim2","Name":"endPosition","Default":null},{"Type":"EasingDirection","Name":"easingDirection","Default":"Out"},{"Type":"EasingStyle","Name":"easingStyle","Default":"Quad"},{"Type":"float","Name":"time","Default":"1"},{"Type":"bool","Name":"override","Default":"false"},{"Type":"Function","Name":"callback","Default":"nil"}],"Name":"TweenPosition","tags":[],"Class":"GuiObject","type":"Function"},{"ReturnType":"bool","Arguments":[{"Type":"UDim2","Name":"endSize","Default":null},{"Type":"EasingDirection","Name":"easingDirection","Default":"Out"},{"Type":"EasingStyle","Name":"easingStyle","Default":"Quad"},{"Type":"float","Name":"time","Default":"1"},{"Type":"bool","Name":"override","Default":"false"},{"Type":"Function","Name":"callback","Default":"nil"}],"Name":"TweenSize","tags":[],"Class":"GuiObject","type":"Function"},{"ReturnType":"bool","Arguments":[{"Type":"UDim2","Name":"endSize","Default":null},{"Type":"UDim2","Name":"endPosition","Default":null},{"Type":"EasingDirection","Name":"easingDirection","Default":"Out"},{"Type":"EasingStyle","Name":"easingStyle","Default":"Quad"},{"Type":"float","Name":"time","Default":"1"},{"Type":"bool","Name":"override","Default":"false"},{"Type":"Function","Name":"callback","Default":"nil"}],"Name":"TweenSizeAndPosition","tags":[],"Class":"GuiObject","type":"Function"},{"Arguments":[{"Name":"initialPosition","Type":"UDim2"}],"Name":"DragBegin","tags":[],"Class":"GuiObject","type":"Event"},{"Arguments":[{"Name":"x","Type":"int"},{"Name":"y","Type":"int"}],"Name":"DragStopped","tags":[],"Class":"GuiObject","type":"Event"},{"Arguments":[{"Name":"input","Type":"Instance"}],"Name":"InputBegan","tags":[],"Class":"GuiObject","type":"Event"},{"Arguments":[{"Name":"input","Type":"Instance"}],"Name":"InputChanged","tags":[],"Class":"GuiObject","type":"Event"},{"Arguments":[{"Name":"input","Type":"Instance"}],"Name":"InputEnded","tags":[],"Class":"GuiObject","type":"Event"},{"Arguments":[{"Name":"x","Type":"int"},{"Name":"y","Type":"int"}],"Name":"MouseEnter","tags":[],"Class":"GuiObject","type":"Event"},{"Arguments":[{"Name":"x","Type":"int"},{"Name":"y","Type":"int"}],"Name":"MouseLeave","tags":[],"Class":"GuiObject","type":"Event"},{"Arguments":[{"Name":"x","Type":"int"},{"Name":"y","Type":"int"}],"Name":"MouseMoved","tags":[],"Class":"GuiObject","type":"Event"},{"Arguments":[{"Name":"x","Type":"int"},{"Name":"y","Type":"int"}],"Name":"MouseWheelBackward","tags":[],"Class":"GuiObject","type":"Event"},{"Arguments":[{"Name":"x","Type":"int"},{"Name":"y","Type":"int"}],"Name":"MouseWheelForward","tags":[],"Class":"GuiObject","type":"Event"},{"Arguments":[],"Name":"SelectionGained","tags":[],"Class":"GuiObject","type":"Event"},{"Arguments":[],"Name":"SelectionLost","tags":[],"Class":"GuiObject","type":"Event"},{"Arguments":[{"Name":"touchPositions","Type":"Array"},{"Name":"state","Type":"UserInputState"}],"Name":"TouchLongPress","tags":[],"Class":"GuiObject","type":"Event"},{"Arguments":[{"Name":"touchPositions","Type":"Array"},{"Name":"totalTranslation","Type":"Vector2"},{"Name":"velocity","Type":"Vector2"},{"Name":"state","Type":"UserInputState"}],"Name":"TouchPan","tags":[],"Class":"GuiObject","type":"Event"},{"Arguments":[{"Name":"touchPositions","Type":"Array"},{"Name":"scale","Type":"float"},{"Name":"velocity","Type":"float"},{"Name":"state","Type":"UserInputState"}],"Name":"TouchPinch","tags":[],"Class":"GuiObject","type":"Event"},{"Arguments":[{"Name":"touchPositions","Type":"Array"},{"Name":"rotation","Type":"float"},{"Name":"velocity","Type":"float"},{"Name":"state","Type":"UserInputState"}],"Name":"TouchRotate","tags":[],"Class":"GuiObject","type":"Event"},{"Arguments":[{"Name":"swipeDirection","Type":"SwipeDirection"},{"Name":"numberOfTouches","Type":"int"}],"Name":"TouchSwipe","tags":[],"Class":"GuiObject","type":"Event"},{"Arguments":[{"Name":"touchPositions","Type":"Array"}],"Name":"TouchTap","tags":[],"Class":"GuiObject","type":"Event"},{"Superclass":"GuiObject","type":"Class","Name":"Frame","tags":[]},{"ValueType":"FrameStyle","type":"Property","Name":"Style","tags":[],"Class":"Frame"},{"Superclass":"GuiObject","type":"Class","Name":"GuiButton","tags":["notbrowsable"]},{"ValueType":"bool","type":"Property","Name":"AutoButtonColor","tags":[],"Class":"GuiButton"},{"ValueType":"bool","type":"Property","Name":"Modal","tags":[],"Class":"GuiButton"},{"ValueType":"bool","type":"Property","Name":"Selected","tags":[],"Class":"GuiButton"},{"ValueType":"ButtonStyle","type":"Property","Name":"Style","tags":[],"Class":"GuiButton"},{"ReturnType":"void","Arguments":[{"Type":"string","Name":"verb","Default":null}],"Name":"SetVerb","tags":["RobloxScriptSecurity"],"Class":"GuiButton","type":"Function"},{"Arguments":[],"Name":"MouseButton1Click","tags":[],"Class":"GuiButton","type":"Event"},{"Arguments":[{"Name":"x","Type":"int"},{"Name":"y","Type":"int"}],"Name":"MouseButton1Down","tags":[],"Class":"GuiButton","type":"Event"},{"Arguments":[{"Name":"x","Type":"int"},{"Name":"y","Type":"int"}],"Name":"MouseButton1Up","tags":[],"Class":"GuiButton","type":"Event"},{"Arguments":[],"Name":"MouseButton2Click","tags":[],"Class":"GuiButton","type":"Event"},{"Arguments":[{"Name":"x","Type":"int"},{"Name":"y","Type":"int"}],"Name":"MouseButton2Down","tags":[],"Class":"GuiButton","type":"Event"},{"Arguments":[{"Name":"x","Type":"int"},{"Name":"y","Type":"int"}],"Name":"MouseButton2Up","tags":[],"Class":"GuiButton","type":"Event"},{"Superclass":"GuiButton","type":"Class","Name":"ImageButton","tags":[]},{"ValueType":"Content","type":"Property","Name":"Image","tags":[],"Class":"ImageButton"},{"ValueType":"Color3","type":"Property","Name":"ImageColor3","tags":[],"Class":"ImageButton"},{"ValueType":"Vector2","type":"Property","Name":"ImageRectOffset","tags":[],"Class":"ImageButton"},{"ValueType":"Vector2","type":"Property","Name":"ImageRectSize","tags":[],"Class":"ImageButton"},{"ValueType":"float","type":"Property","Name":"ImageTransparency","tags":[],"Class":"ImageButton"},{"ValueType":"ScaleType","type":"Property","Name":"ScaleType","tags":[],"Class":"ImageButton"},{"ValueType":"Rect2D","type":"Property","Name":"SliceCenter","tags":[],"Class":"ImageButton"},{"Superclass":"GuiButton","type":"Class","Name":"TextButton","tags":[]},{"ValueType":"Font","type":"Property","Name":"Font","tags":[],"Class":"TextButton"},{"ValueType":"FontSize","type":"Property","Name":"FontSize","tags":[],"Class":"TextButton"},{"ValueType":"string","type":"Property","Name":"Text","tags":[],"Class":"TextButton"},{"ValueType":"Vector2","type":"Property","Name":"TextBounds","tags":["readonly"],"Class":"TextButton"},{"ValueType":"BrickColor","type":"Property","Name":"TextColor","tags":["deprecated","hidden"],"Class":"TextButton"},{"ValueType":"Color3","type":"Property","Name":"TextColor3","tags":[],"Class":"TextButton"},{"ValueType":"bool","type":"Property","Name":"TextFits","tags":["readonly"],"Class":"TextButton"},{"ValueType":"bool","type":"Property","Name":"TextScaled","tags":[],"Class":"TextButton"},{"ValueType":"Color3","type":"Property","Name":"TextStrokeColor3","tags":[],"Class":"TextButton"},{"ValueType":"float","type":"Property","Name":"TextStrokeTransparency","tags":[],"Class":"TextButton"},{"ValueType":"float","type":"Property","Name":"TextTransparency","tags":[],"Class":"TextButton"},{"ValueType":"bool","type":"Property","Name":"TextWrap","tags":["deprecated"],"Class":"TextButton"},{"ValueType":"bool","type":"Property","Name":"TextWrapped","tags":[],"Class":"TextButton"},{"ValueType":"TextXAlignment","type":"Property","Name":"TextXAlignment","tags":[],"Class":"TextButton"},{"ValueType":"TextYAlignment","type":"Property","Name":"TextYAlignment","tags":[],"Class":"TextButton"},{"Superclass":"GuiObject","type":"Class","Name":"GuiLabel","tags":[]},{"Superclass":"GuiLabel","type":"Class","Name":"ImageLabel","tags":[]},{"ValueType":"Content","type":"Property","Name":"Image","tags":[],"Class":"ImageLabel"},{"ValueType":"Color3","type":"Property","Name":"ImageColor3","tags":[],"Class":"ImageLabel"},{"ValueType":"Vector2","type":"Property","Name":"ImageRectOffset","tags":[],"Class":"ImageLabel"},{"ValueType":"Vector2","type":"Property","Name":"ImageRectSize","tags":[],"Class":"ImageLabel"},{"ValueType":"float","type":"Property","Name":"ImageTransparency","tags":[],"Class":"ImageLabel"},{"ValueType":"ScaleType","type":"Property","Name":"ScaleType","tags":[],"Class":"ImageLabel"},{"ValueType":"Rect2D","type":"Property","Name":"SliceCenter","tags":[],"Class":"ImageLabel"},{"Superclass":"GuiLabel","type":"Class","Name":"TextLabel","tags":[]},{"ValueType":"Font","type":"Property","Name":"Font","tags":[],"Class":"TextLabel"},{"ValueType":"FontSize","type":"Property","Name":"FontSize","tags":[],"Class":"TextLabel"},{"ValueType":"string","type":"Property","Name":"Text","tags":[],"Class":"TextLabel"},{"ValueType":"Vector2","type":"Property","Name":"TextBounds","tags":["readonly"],"Class":"TextLabel"},{"ValueType":"BrickColor","type":"Property","Name":"TextColor","tags":["deprecated","hidden"],"Class":"TextLabel"},{"ValueType":"Color3","type":"Property","Name":"TextColor3","tags":[],"Class":"TextLabel"},{"ValueType":"bool","type":"Property","Name":"TextFits","tags":["readonly"],"Class":"TextLabel"},{"ValueType":"bool","type":"Property","Name":"TextScaled","tags":[],"Class":"TextLabel"},{"ValueType":"Color3","type":"Property","Name":"TextStrokeColor3","tags":[],"Class":"TextLabel"},{"ValueType":"float","type":"Property","Name":"TextStrokeTransparency","tags":[],"Class":"TextLabel"},{"ValueType":"float","type":"Property","Name":"TextTransparency","tags":[],"Class":"TextLabel"},{"ValueType":"bool","type":"Property","Name":"TextWrap","tags":["deprecated"],"Class":"TextLabel"},{"ValueType":"bool","type":"Property","Name":"TextWrapped","tags":[],"Class":"TextLabel"},{"ValueType":"TextXAlignment","type":"Property","Name":"TextXAlignment","tags":[],"Class":"TextLabel"},{"ValueType":"TextYAlignment","type":"Property","Name":"TextYAlignment","tags":[],"Class":"TextLabel"},{"Superclass":"GuiObject","type":"Class","Name":"Scale9Frame","tags":[]},{"ValueType":"Vector2int16","type":"Property","Name":"ScaleEdgeSize","tags":[],"Class":"Scale9Frame"},{"ValueType":"string","type":"Property","Name":"SlicePrefix","tags":[],"Class":"Scale9Frame"},{"Superclass":"GuiObject","type":"Class","Name":"ScrollingFrame","tags":[]},{"ValueType":"Vector2","type":"Property","Name":"AbsoluteWindowSize","tags":["readonly"],"Class":"ScrollingFrame"},{"ValueType":"Content","type":"Property","Name":"BottomImage","tags":[],"Class":"ScrollingFrame"},{"ValueType":"Vector2","type":"Property","Name":"CanvasPosition","tags":[],"Class":"ScrollingFrame"},{"ValueType":"UDim2","type":"Property","Name":"CanvasSize","tags":[],"Class":"ScrollingFrame"},{"ValueType":"Content","type":"Property","Name":"MidImage","tags":[],"Class":"ScrollingFrame"},{"ValueType":"int","type":"Property","Name":"ScrollBarThickness","tags":[],"Class":"ScrollingFrame"},{"ValueType":"bool","type":"Property","Name":"ScrollingEnabled","tags":[],"Class":"ScrollingFrame"},{"ValueType":"Content","type":"Property","Name":"TopImage","tags":[],"Class":"ScrollingFrame"},{"Superclass":"GuiObject","type":"Class","Name":"TextBox","tags":[]},{"ValueType":"bool","type":"Property","Name":"ClearTextOnFocus","tags":[],"Class":"TextBox"},{"ValueType":"Font","type":"Property","Name":"Font","tags":[],"Class":"TextBox"},{"ValueType":"FontSize","type":"Property","Name":"FontSize","tags":[],"Class":"TextBox"},{"ValueType":"bool","type":"Property","Name":"MultiLine","tags":[],"Class":"TextBox"},{"ValueType":"string","type":"Property","Name":"Text","tags":[],"Class":"TextBox"},{"ValueType":"Vector2","type":"Property","Name":"TextBounds","tags":["readonly"],"Class":"TextBox"},{"ValueType":"BrickColor","type":"Property","Name":"TextColor","tags":["deprecated","hidden"],"Class":"TextBox"},{"ValueType":"Color3","type":"Property","Name":"TextColor3","tags":[],"Class":"TextBox"},{"ValueType":"bool","type":"Property","Name":"TextFits","tags":["readonly"],"Class":"TextBox"},{"ValueType":"bool","type":"Property","Name":"TextScaled","tags":[],"Class":"TextBox"},{"ValueType":"Color3","type":"Property","Name":"TextStrokeColor3","tags":[],"Class":"TextBox"},{"ValueType":"float","type":"Property","Name":"TextStrokeTransparency","tags":[],"Class":"TextBox"},{"ValueType":"float","type":"Property","Name":"TextTransparency","tags":[],"Class":"TextBox"},{"ValueType":"bool","type":"Property","Name":"TextWrap","tags":["deprecated"],"Class":"TextBox"},{"ValueType":"bool","type":"Property","Name":"TextWrapped","tags":[],"Class":"TextBox"},{"ValueType":"TextXAlignment","type":"Property","Name":"TextXAlignment","tags":[],"Class":"TextBox"},{"ValueType":"TextYAlignment","type":"Property","Name":"TextYAlignment","tags":[],"Class":"TextBox"},{"ReturnType":"void","Arguments":[],"Name":"CaptureFocus","tags":[],"Class":"TextBox","type":"Function"},{"ReturnType":"bool","Arguments":[],"Name":"IsFocused","tags":[],"Class":"TextBox","type":"Function"},{"ReturnType":"void","Arguments":[],"Name":"ReleaseFocus","tags":[],"Class":"TextBox","type":"Function"},{"Arguments":[{"Name":"enterPressed","Type":"bool"},{"Name":"inputThatCausedFocusLoss","Type":"Instance"}],"Name":"FocusLost","tags":[],"Class":"TextBox","type":"Event"},{"Arguments":[],"Name":"Focused","tags":[],"Class":"TextBox","type":"Event"},{"Superclass":"GuiBase2d","type":"Class","Name":"LayerCollector","tags":[]},{"Superclass":"LayerCollector","type":"Class","Name":"BillboardGui","tags":[]},{"ValueType":"bool","type":"Property","Name":"Active","tags":[],"Class":"BillboardGui"},{"ValueType":"Object","type":"Property","Name":"Adornee","tags":[],"Class":"BillboardGui"},{"ValueType":"bool","type":"Property","Name":"AlwaysOnTop","tags":[],"Class":"BillboardGui"},{"ValueType":"bool","type":"Property","Name":"Enabled","tags":[],"Class":"BillboardGui"},{"ValueType":"Vector3","type":"Property","Name":"ExtentsOffset","tags":[],"Class":"BillboardGui"},{"ValueType":"Object","type":"Property","Name":"PlayerToHideFrom","tags":[],"Class":"BillboardGui"},{"ValueType":"UDim2","type":"Property","Name":"Size","tags":[],"Class":"BillboardGui"},{"ValueType":"Vector2","type":"Property","Name":"SizeOffset","tags":[],"Class":"BillboardGui"},{"ValueType":"Vector3","type":"Property","Name":"StudsOffset","tags":[],"Class":"BillboardGui"},{"Superclass":"LayerCollector","type":"Class","Name":"ScreenGui","tags":[]},{"Superclass":"ScreenGui","type":"Class","Name":"GuiMain","tags":["deprecated"]},{"Superclass":"LayerCollector","type":"Class","Name":"SurfaceGui","tags":[]},{"ValueType":"bool","type":"Property","Name":"Active","tags":[],"Class":"SurfaceGui"},{"ValueType":"Object","type":"Property","Name":"Adornee","tags":[],"Class":"SurfaceGui"},{"ValueType":"bool","type":"Property","Name":"AlwaysOnTop","tags":[],"Class":"SurfaceGui"},{"ValueType":"Vector2","type":"Property","Name":"CanvasSize","tags":[],"Class":"SurfaceGui"},{"ValueType":"bool","type":"Property","Name":"Enabled","tags":[],"Class":"SurfaceGui"},{"ValueType":"NormalId","type":"Property","Name":"Face","tags":[],"Class":"SurfaceGui"},{"ValueType":"float","type":"Property","Name":"ToolPunchThroughDistance","tags":[],"Class":"SurfaceGui"},{"Superclass":"GuiBase","type":"Class","Name":"GuiBase3d","tags":[]},{"ValueType":"BrickColor","type":"Property","Name":"Color","tags":["deprecated","hidden"],"Class":"GuiBase3d"},{"ValueType":"Color3","type":"Property","Name":"Color3","tags":[],"Class":"GuiBase3d"},{"ValueType":"float","type":"Property","Name":"Transparency","tags":[],"Class":"GuiBase3d"},{"ValueType":"bool","type":"Property","Name":"Visible","tags":[],"Class":"GuiBase3d"},{"Superclass":"GuiBase3d","type":"Class","Name":"FloorWire","tags":["deprecated"]},{"ValueType":"float","type":"Property","Name":"CycleOffset","tags":[],"Class":"FloorWire"},{"ValueType":"Object","type":"Property","Name":"From","tags":[],"Class":"FloorWire"},{"ValueType":"float","type":"Property","Name":"StudsBetweenTextures","tags":[],"Class":"FloorWire"},{"ValueType":"Content","type":"Property","Name":"Texture","tags":[],"Class":"FloorWire"},{"ValueType":"Vector2","type":"Property","Name":"TextureSize","tags":[],"Class":"FloorWire"},{"ValueType":"Object","type":"Property","Name":"To","tags":[],"Class":"FloorWire"},{"ValueType":"float","type":"Property","Name":"Velocity","tags":[],"Class":"FloorWire"},{"ValueType":"float","type":"Property","Name":"WireRadius","tags":[],"Class":"FloorWire"},{"Superclass":"GuiBase3d","type":"Class","Name":"PVAdornment","tags":[]},{"ValueType":"Object","type":"Property","Name":"Adornee","tags":[],"Class":"PVAdornment"},{"Superclass":"PVAdornment","type":"Class","Name":"HandleAdornment","tags":[]},{"ValueType":"bool","type":"Property","Name":"AlwaysOnTop","tags":[],"Class":"HandleAdornment"},{"ValueType":"CoordinateFrame","type":"Property","Name":"CFrame","tags":[],"Class":"HandleAdornment"},{"ValueType":"Vector3","type":"Property","Name":"SizeRelativeOffset","tags":[],"Class":"HandleAdornment"},{"ValueType":"int","type":"Property","Name":"ZIndex","tags":[],"Class":"HandleAdornment"},{"Arguments":[],"Name":"MouseButton1Down","tags":[],"Class":"HandleAdornment","type":"Event"},{"Arguments":[],"Name":"MouseButton1Up","tags":[],"Class":"HandleAdornment","type":"Event"},{"Arguments":[],"Name":"MouseEnter","tags":[],"Class":"HandleAdornment","type":"Event"},{"Arguments":[],"Name":"MouseLeave","tags":[],"Class":"HandleAdornment","type":"Event"},{"Superclass":"HandleAdornment","type":"Class","Name":"BoxHandleAdornment","tags":[]},{"ValueType":"Vector3","type":"Property","Name":"Size","tags":[],"Class":"BoxHandleAdornment"},{"Superclass":"HandleAdornment","type":"Class","Name":"ConeHandleAdornment","tags":[]},{"ValueType":"float","type":"Property","Name":"Height","tags":[],"Class":"ConeHandleAdornment"},{"ValueType":"float","type":"Property","Name":"Radius","tags":[],"Class":"ConeHandleAdornment"},{"Superclass":"HandleAdornment","type":"Class","Name":"CylinderHandleAdornment","tags":[]},{"ValueType":"float","type":"Property","Name":"Height","tags":[],"Class":"CylinderHandleAdornment"},{"ValueType":"float","type":"Property","Name":"Radius","tags":[],"Class":"CylinderHandleAdornment"},{"Superclass":"HandleAdornment","type":"Class","Name":"ImageHandleAdornment","tags":[]},{"ValueType":"Content","type":"Property","Name":"Image","tags":[],"Class":"ImageHandleAdornment"},{"ValueType":"Vector2","type":"Property","Name":"Size","tags":[],"Class":"ImageHandleAdornment"},{"Superclass":"HandleAdornment","type":"Class","Name":"LineHandleAdornment","tags":[]},{"ValueType":"float","type":"Property","Name":"Length","tags":[],"Class":"LineHandleAdornment"},{"ValueType":"float","type":"Property","Name":"Thickness","tags":[],"Class":"LineHandleAdornment"},{"Superclass":"HandleAdornment","type":"Class","Name":"SphereHandleAdornment","tags":[]},{"ValueType":"float","type":"Property","Name":"Radius","tags":[],"Class":"SphereHandleAdornment"},{"Superclass":"PVAdornment","type":"Class","Name":"SelectionBox","tags":[]},{"ValueType":"float","type":"Property","Name":"LineThickness","tags":[],"Class":"SelectionBox"},{"ValueType":"BrickColor","type":"Property","Name":"SurfaceColor","tags":["deprecated","hidden"],"Class":"SelectionBox"},{"ValueType":"Color3","type":"Property","Name":"SurfaceColor3","tags":[],"Class":"SelectionBox"},{"ValueType":"float","type":"Property","Name":"SurfaceTransparency","tags":[],"Class":"SelectionBox"},{"Superclass":"PVAdornment","type":"Class","Name":"SelectionSphere","tags":[]},{"ValueType":"BrickColor","type":"Property","Name":"SurfaceColor","tags":["deprecated","hidden"],"Class":"SelectionSphere"},{"ValueType":"Color3","type":"Property","Name":"SurfaceColor3","tags":[],"Class":"SelectionSphere"},{"ValueType":"float","type":"Property","Name":"SurfaceTransparency","tags":[],"Class":"SelectionSphere"},{"Superclass":"GuiBase3d","type":"Class","Name":"PartAdornment","tags":[]},{"ValueType":"Object","type":"Property","Name":"Adornee","tags":[],"Class":"PartAdornment"},{"Superclass":"PartAdornment","type":"Class","Name":"HandlesBase","tags":[]},{"Superclass":"HandlesBase","type":"Class","Name":"ArcHandles","tags":[]},{"ValueType":"Axes","type":"Property","Name":"Axes","tags":[],"Class":"ArcHandles"},{"Arguments":[{"Name":"axis","Type":"Axis"}],"Name":"MouseButton1Down","tags":[],"Class":"ArcHandles","type":"Event"},{"Arguments":[{"Name":"axis","Type":"Axis"}],"Name":"MouseButton1Up","tags":[],"Class":"ArcHandles","type":"Event"},{"Arguments":[{"Name":"axis","Type":"Axis"},{"Name":"relativeAngle","Type":"float"},{"Name":"deltaRadius","Type":"float"}],"Name":"MouseDrag","tags":[],"Class":"ArcHandles","type":"Event"},{"Arguments":[{"Name":"axis","Type":"Axis"}],"Name":"MouseEnter","tags":[],"Class":"ArcHandles","type":"Event"},{"Arguments":[{"Name":"axis","Type":"Axis"}],"Name":"MouseLeave","tags":[],"Class":"ArcHandles","type":"Event"},{"Superclass":"HandlesBase","type":"Class","Name":"Handles","tags":[]},{"ValueType":"Faces","type":"Property","Name":"Faces","tags":[],"Class":"Handles"},{"ValueType":"HandlesStyle","type":"Property","Name":"Style","tags":[],"Class":"Handles"},{"Arguments":[{"Name":"face","Type":"NormalId"}],"Name":"MouseButton1Down","tags":[],"Class":"Handles","type":"Event"},{"Arguments":[{"Name":"face","Type":"NormalId"}],"Name":"MouseButton1Up","tags":[],"Class":"Handles","type":"Event"},{"Arguments":[{"Name":"face","Type":"NormalId"},{"Name":"distance","Type":"float"}],"Name":"MouseDrag","tags":[],"Class":"Handles","type":"Event"},{"Arguments":[{"Name":"face","Type":"NormalId"}],"Name":"MouseEnter","tags":[],"Class":"Handles","type":"Event"},{"Arguments":[{"Name":"face","Type":"NormalId"}],"Name":"MouseLeave","tags":[],"Class":"Handles","type":"Event"},{"Superclass":"PartAdornment","type":"Class","Name":"SurfaceSelection","tags":[]},{"ValueType":"NormalId","type":"Property","Name":"TargetSurface","tags":[],"Class":"SurfaceSelection"},{"Superclass":"GuiBase3d","type":"Class","Name":"SelectionLasso","tags":[]},{"ValueType":"Object","type":"Property","Name":"Humanoid","tags":[],"Class":"SelectionLasso"},{"Superclass":"SelectionLasso","type":"Class","Name":"SelectionPartLasso","tags":["deprecated"]},{"ValueType":"Object","type":"Property","Name":"Part","tags":[],"Class":"SelectionPartLasso"},{"Superclass":"SelectionLasso","type":"Class","Name":"SelectionPointLasso","tags":["deprecated"]},{"ValueType":"Vector3","type":"Property","Name":"Point","tags":[],"Class":"SelectionPointLasso"},{"Superclass":"GuiBase3d","type":"Class","Name":"TextureTrail","tags":["deprecated"]},{"ValueType":"float","type":"Property","Name":"CycleOffset","tags":["RobloxPlaceSecurity"],"Class":"TextureTrail"},{"ValueType":"Object","type":"Property","Name":"From","tags":["RobloxPlaceSecurity"],"Class":"TextureTrail"},{"ValueType":"float","type":"Property","Name":"StudsBetweenTextures","tags":["RobloxPlaceSecurity"],"Class":"TextureTrail"},{"ValueType":"Content","type":"Property","Name":"Texture","tags":["RobloxPlaceSecurity"],"Class":"TextureTrail"},{"ValueType":"Vector2","type":"Property","Name":"TextureSize","tags":["RobloxPlaceSecurity"],"Class":"TextureTrail"},{"ValueType":"Object","type":"Property","Name":"To","tags":["RobloxPlaceSecurity"],"Class":"TextureTrail"},{"ValueType":"float","type":"Property","Name":"Velocity","tags":["RobloxPlaceSecurity"],"Class":"TextureTrail"},{"Superclass":"Instance","type":"Class","Name":"GuiItem","tags":[]},{"Superclass":"GuiItem","type":"Class","Name":"Backpack","tags":[]},{"Superclass":"GuiItem","type":"Class","Name":"BackpackItem","tags":[]},{"ValueType":"Content","type":"Property","Name":"TextureId","tags":[],"Class":"BackpackItem"},{"Superclass":"BackpackItem","type":"Class","Name":"HopperBin","tags":["deprecated"]},{"ValueType":"bool","type":"Property","Name":"Active","tags":[],"Class":"HopperBin"},{"ValueType":"BinType","type":"Property","Name":"BinType","tags":[],"Class":"HopperBin"},{"ReturnType":"void","Arguments":[],"Name":"Disable","tags":["RobloxScriptSecurity"],"Class":"HopperBin","type":"Function"},{"ReturnType":"void","Arguments":[],"Name":"ToggleSelect","tags":["RobloxScriptSecurity"],"Class":"HopperBin","type":"Function"},{"Arguments":[],"Name":"Deselected","tags":[],"Class":"HopperBin","type":"Event"},{"Arguments":[{"Name":"mouse","Type":"Instance"}],"Name":"Selected","tags":[],"Class":"HopperBin","type":"Event"},{"Superclass":"BackpackItem","type":"Class","Name":"Tool","tags":[]},{"ValueType":"bool","type":"Property","Name":"CanBeDropped","tags":[],"Class":"Tool"},{"ValueType":"bool","type":"Property","Name":"Enabled","tags":[],"Class":"Tool"},{"ValueType":"CoordinateFrame","type":"Property","Name":"Grip","tags":[],"Class":"Tool"},{"ValueType":"Vector3","type":"Property","Name":"GripForward","tags":[],"Class":"Tool"},{"ValueType":"Vector3","type":"Property","Name":"GripPos","tags":[],"Class":"Tool"},{"ValueType":"Vector3","type":"Property","Name":"GripRight","tags":[],"Class":"Tool"},{"ValueType":"Vector3","type":"Property","Name":"GripUp","tags":[],"Class":"Tool"},{"ValueType":"bool","type":"Property","Name":"ManualActivationOnly","tags":[],"Class":"Tool"},{"ValueType":"bool","type":"Property","Name":"RequiresHandle","tags":[],"Class":"Tool"},{"ValueType":"string","type":"Property","Name":"ToolTip","tags":[],"Class":"Tool"},{"ReturnType":"void","Arguments":[],"Name":"Activate","tags":[],"Class":"Tool","type":"Function"},{"Arguments":[],"Name":"Activated","tags":[],"Class":"Tool","type":"Event"},{"Arguments":[],"Name":"Deactivated","tags":[],"Class":"Tool","type":"Event"},{"Arguments":[{"Name":"mouse","Type":"Instance"}],"Name":"Equipped","tags":[],"Class":"Tool","type":"Event"},{"Arguments":[],"Name":"Unequipped","tags":[],"Class":"Tool","type":"Event"},{"Superclass":"Tool","type":"Class","Name":"Flag","tags":["deprecated"]},{"ValueType":"BrickColor","type":"Property","Name":"TeamColor","tags":[],"Class":"Flag"},{"Superclass":"GuiItem","type":"Class","Name":"ButtonBindingWidget","tags":[]},{"Superclass":"GuiItem","type":"Class","Name":"GuiRoot","tags":["notCreatable"]},{"Superclass":"GuiItem","type":"Class","Name":"Hopper","tags":["deprecated"]},{"Superclass":"GuiItem","type":"Class","Name":"StarterPack","tags":[]},{"Superclass":"Instance","type":"Class","Name":"GuiService","tags":["notCreatable"]},{"ValueType":"bool","type":"Property","Name":"AutoSelectGuiEnabled","tags":[],"Class":"GuiService"},{"ValueType":"bool","type":"Property","Name":"CoreGuiNavigationEnabled","tags":[],"Class":"GuiService"},{"ValueType":"bool","type":"Property","Name":"GuiNavigationEnabled","tags":[],"Class":"GuiService"},{"ValueType":"bool","type":"Property","Name":"IsModalDialog","tags":["deprecated","readonly"],"Class":"GuiService"},{"ValueType":"bool","type":"Property","Name":"IsWindows","tags":["deprecated","readonly"],"Class":"GuiService"},{"ValueType":"bool","type":"Property","Name":"MenuIsOpen","tags":["readonly"],"Class":"GuiService"},{"ValueType":"bool","type":"Property","Name":"ScreenGuiEnabled","tags":["RobloxScriptSecurity"],"Class":"GuiService"},{"ValueType":"Object","type":"Property","Name":"SelectedCoreObject","tags":["RobloxScriptSecurity"],"Class":"GuiService"},{"ValueType":"Object","type":"Property","Name":"SelectedObject","tags":[],"Class":"GuiService"},{"ReturnType":"void","Arguments":[{"Type":"Instance","Name":"dialog","Default":null},{"Type":"CenterDialogType","Name":"centerDialogType","Default":null},{"Type":"Function","Name":"showFunction","Default":null},{"Type":"Function","Name":"hideFunction","Default":null}],"Name":"AddCenterDialog","tags":["RobloxScriptSecurity"],"Class":"GuiService","type":"Function"},{"ReturnType":"void","Arguments":[{"Type":"string","Name":"key","Default":null}],"Name":"AddKey","tags":["RobloxScriptSecurity"],"Class":"GuiService","type":"Function"},{"ReturnType":"void","Arguments":[{"Type":"string","Name":"selectionName","Default":null},{"Type":"Instance","Name":"selectionParent","Default":null}],"Name":"AddSelectionParent","tags":[],"Class":"GuiService","type":"Function"},{"ReturnType":"void","Arguments":[{"Type":"string","Name":"selectionName","Default":null},{"Type":"Tuple","Name":"selections","Default":null}],"Name":"AddSelectionTuple","tags":[],"Class":"GuiService","type":"Function"},{"ReturnType":"void","Arguments":[{"Type":"SpecialKey","Name":"key","Default":null}],"Name":"AddSpecialKey","tags":["RobloxScriptSecurity"],"Class":"GuiService","type":"Function"},{"ReturnType":"int","Arguments":[],"Name":"GetBrickCount","tags":["RobloxScriptSecurity"],"Class":"GuiService","type":"Function"},{"ReturnType":"Instance","Arguments":[{"Type":"Vector3","Name":"position","Default":null}],"Name":"GetClosestDialogToPosition","tags":["RobloxScriptSecurity"],"Class":"GuiService","type":"Function"},{"ReturnType":"string","Arguments":[],"Name":"GetErrorMessage","tags":["RobloxScriptSecurity","deprecated"],"Class":"GuiService","type":"Function"},{"ReturnType":"string","Arguments":[],"Name":"GetUiMessage","tags":["RobloxScriptSecurity"],"Class":"GuiService","type":"Function"},{"ReturnType":"bool","Arguments":[],"Name":"IsTenFootInterface","tags":["RobloxScriptSecurity"],"Class":"GuiService","type":"Function"},{"ReturnType":"void","Arguments":[{"Type":"string","Name":"url","Default":null}],"Name":"OpenBrowserWindow","tags":["RobloxScriptSecurity"],"Class":"GuiService","type":"Function"},{"ReturnType":"void","Arguments":[{"Type":"Instance","Name":"dialog","Default":null}],"Name":"RemoveCenterDialog","tags":["RobloxScriptSecurity"],"Class":"GuiService","type":"Function"},{"ReturnType":"void","Arguments":[{"Type":"string","Name":"key","Default":null}],"Name":"RemoveKey","tags":["RobloxScriptSecurity"],"Class":"GuiService","type":"Function"},{"ReturnType":"void","Arguments":[{"Type":"string","Name":"selectionName","Default":null}],"Name":"RemoveSelectionGroup","tags":[],"Class":"GuiService","type":"Function"},{"ReturnType":"void","Arguments":[{"Type":"SpecialKey","Name":"key","Default":null}],"Name":"RemoveSpecialKey","tags":["RobloxScriptSecurity"],"Class":"GuiService","type":"Function"},{"ReturnType":"void","Arguments":[{"Type":"string","Name":"errorMessage","Default":null}],"Name":"SetErrorMessage","tags":["LocalUserSecurity","deprecated"],"Class":"GuiService","type":"Function"},{"ReturnType":"void","Arguments":[{"Type":"int","Name":"x1","Default":null},{"Type":"int","Name":"y1","Default":null},{"Type":"int","Name":"x2","Default":null},{"Type":"int","Name":"y2","Default":null}],"Name":"SetGlobalGuiInset","tags":["RobloxScriptSecurity"],"Class":"GuiService","type":"Function"},{"ReturnType":"void","Arguments":[{"Type":"bool","Name":"open","Default":null}],"Name":"SetMenuIsOpen","tags":["RobloxScriptSecurity"],"Class":"GuiService","type":"Function"},{"ReturnType":"void","Arguments":[{"Type":"UiMessageType","Name":"msgType","Default":null},{"Type":"string","Name":"uiMessage","Default":null}],"Name":"SetUiMessage","tags":["LocalUserSecurity"],"Class":"GuiService","type":"Function"},{"ReturnType":"bool","Arguments":[{"Type":"string","Name":"input","Default":null}],"Name":"ShowStatsBasedOnInputString","tags":["RobloxScriptSecurity"],"Class":"GuiService","type":"Function"},{"ReturnType":"void","Arguments":[],"Name":"ToggleFullscreen","tags":["RobloxScriptSecurity"],"Class":"GuiService","type":"Function"},{"ReturnType":"Vector2","Arguments":[],"Name":"GetScreenResolution","tags":["RobloxScriptSecurity"],"Class":"GuiService","type":"YieldFunction"},{"Arguments":[],"Name":"BrowserWindowClosed","tags":["RobloxScriptSecurity"],"Class":"GuiService","type":"Event"},{"Arguments":[{"Name":"newErrorMessage","Type":"string"}],"Name":"ErrorMessageChanged","tags":["RobloxScriptSecurity","deprecated"],"Class":"GuiService","type":"Event"},{"Arguments":[],"Name":"EscapeKeyPressed","tags":["RobloxScriptSecurity"],"Class":"GuiService","type":"Event"},{"Arguments":[{"Name":"key","Type":"string"},{"Name":"modifiers","Type":"string"}],"Name":"KeyPressed","tags":["RobloxScriptSecurity"],"Class":"GuiService","type":"Event"},{"Arguments":[],"Name":"MenuClosed","tags":[],"Class":"GuiService","type":"Event"},{"Arguments":[],"Name":"MenuOpened","tags":[],"Class":"GuiService","type":"Event"},{"Arguments":[],"Name":"ShowLeaveConfirmation","tags":["RobloxScriptSecurity"],"Class":"GuiService","type":"Event"},{"Arguments":[{"Name":"key","Type":"SpecialKey"},{"Name":"modifiers","Type":"string"}],"Name":"SpecialKeyPressed","tags":["RobloxScriptSecurity"],"Class":"GuiService","type":"Event"},{"Arguments":[{"Name":"msgType","Type":"UiMessageType"},{"Name":"newUiMessage","Type":"string"}],"Name":"UiMessageChanged","tags":["RobloxScriptSecurity"],"Class":"GuiService","type":"Event"},{"ReturnType":"void","Arguments":[{"Name":"title","Type":"string"},{"Name":"text","Type":"string"}],"Name":"SendCoreUiNotification","tags":["RobloxScriptSecurity"],"Class":"GuiService","type":"Callback"},{"Superclass":"Instance","type":"Class","Name":"GuidRegistryService","tags":[]},{"Superclass":"Instance","type":"Class","Name":"HapticService","tags":["notCreatable"]},{"ReturnType":"Tuple","Arguments":[{"Type":"UserInputType","Name":"inputType","Default":null},{"Type":"VibrationMotor","Name":"vibrationMotor","Default":null}],"Name":"GetMotor","tags":[],"Class":"HapticService","type":"Function"},{"ReturnType":"bool","Arguments":[{"Type":"UserInputType","Name":"inputType","Default":null},{"Type":"VibrationMotor","Name":"vibrationMotor","Default":null}],"Name":"IsMotorSupported","tags":[],"Class":"HapticService","type":"Function"},{"ReturnType":"bool","Arguments":[{"Type":"UserInputType","Name":"inputType","Default":null}],"Name":"IsVibrationSupported","tags":[],"Class":"HapticService","type":"Function"},{"ReturnType":"void","Arguments":[{"Type":"UserInputType","Name":"inputType","Default":null},{"Type":"VibrationMotor","Name":"vibrationMotor","Default":null},{"Type":"Tuple","Name":"vibrationValues","Default":null}],"Name":"SetMotor","tags":[],"Class":"HapticService","type":"Function"},{"Superclass":"Instance","type":"Class","Name":"HttpRbxApiService","tags":["notCreatable"]},{"ReturnType":"string","Arguments":[{"Type":"string","Name":"apiUrlPath","Default":null},{"Type":"bool","Name":"useHttps","Default":"true"},{"Type":"ThrottlingPriority","Name":"priority","Default":"Default"}],"Name":"GetAsync","tags":["RobloxScriptSecurity"],"Class":"HttpRbxApiService","type":"YieldFunction"},{"ReturnType":"string","Arguments":[{"Type":"string","Name":"apiUrlPath","Default":null},{"Type":"string","Name":"data","Default":null},{"Type":"bool","Name":"useHttps","Default":"true"},{"Type":"ThrottlingPriority","Name":"priority","Default":"Default"},{"Type":"HttpContentType","Name":"content_type","Default":"ApplicationJson"}],"Name":"PostAsync","tags":["RobloxScriptSecurity"],"Class":"HttpRbxApiService","type":"YieldFunction"},{"Superclass":"Instance","type":"Class","Name":"HttpService","tags":["notCreatable"]},{"ValueType":"bool","type":"Property","Name":"HttpEnabled","tags":["LocalUserSecurity"],"Class":"HttpService"},{"ReturnType":"string","Arguments":[{"Type":"bool","Name":"wrapInCurlyBraces","Default":"true"}],"Name":"GenerateGUID","tags":[],"Class":"HttpService","type":"Function"},{"ReturnType":"Variant","Arguments":[{"Type":"string","Name":"input","Default":null}],"Name":"JSONDecode","tags":[],"Class":"HttpService","type":"Function"},{"ReturnType":"string","Arguments":[{"Type":"Variant","Name":"input","Default":null}],"Name":"JSONEncode","tags":[],"Class":"HttpService","type":"Function"},{"ReturnType":"string","Arguments":[{"Type":"string","Name":"input","Default":null}],"Name":"UrlEncode","tags":[],"Class":"HttpService","type":"Function"},{"ReturnType":"string","Arguments":[{"Type":"string","Name":"url","Default":null},{"Type":"bool","Name":"nocache","Default":"false"}],"Name":"GetAsync","tags":[],"Class":"HttpService","type":"YieldFunction"},{"ReturnType":"string","Arguments":[{"Type":"string","Name":"url","Default":null},{"Type":"string","Name":"data","Default":null},{"Type":"HttpContentType","Name":"content_type","Default":"ApplicationJson"},{"Type":"bool","Name":"compress","Default":"false"}],"Name":"PostAsync","tags":[],"Class":"HttpService","type":"YieldFunction"},{"Superclass":"Instance","type":"Class","Name":"Humanoid","tags":[]},{"ValueType":"bool","type":"Property","Name":"AutoJumpEnabled","tags":[],"Class":"Humanoid"},{"ValueType":"bool","type":"Property","Name":"AutoRotate","tags":[],"Class":"Humanoid"},{"ValueType":"Vector3","type":"Property","Name":"CameraOffset","tags":[],"Class":"Humanoid"},{"ValueType":"HumanoidDisplayDistanceType","type":"Property","Name":"DisplayDistanceType","tags":[],"Class":"Humanoid"},{"ValueType":"float","type":"Property","Name":"Health","tags":[],"Class":"Humanoid"},{"ValueType":"float","type":"Property","Name":"HealthDisplayDistance","tags":[],"Class":"Humanoid"},{"ValueType":"float","type":"Property","Name":"HipHeight","tags":[],"Class":"Humanoid"},{"ValueType":"bool","type":"Property","Name":"Jump","tags":[],"Class":"Humanoid"},{"ValueType":"float","type":"Property","Name":"JumpPower","tags":[],"Class":"Humanoid"},{"ValueType":"Object","type":"Property","Name":"LeftLeg","tags":[],"Class":"Humanoid"},{"ValueType":"float","type":"Property","Name":"MaxHealth","tags":[],"Class":"Humanoid"},{"ValueType":"float","type":"Property","Name":"MaxSlopeAngle","tags":[],"Class":"Humanoid"},{"ValueType":"Vector3","type":"Property","Name":"MoveDirection","tags":["readonly"],"Class":"Humanoid"},{"ValueType":"float","type":"Property","Name":"NameDisplayDistance","tags":[],"Class":"Humanoid"},{"ValueType":"NameOcclusion","type":"Property","Name":"NameOcclusion","tags":[],"Class":"Humanoid"},{"ValueType":"bool","type":"Property","Name":"PlatformStand","tags":[],"Class":"Humanoid"},{"ValueType":"HumanoidRigType","type":"Property","Name":"RigType","tags":[],"Class":"Humanoid"},{"ValueType":"Object","type":"Property","Name":"RightLeg","tags":[],"Class":"Humanoid"},{"ValueType":"Object","type":"Property","Name":"SeatPart","tags":["readonly"],"Class":"Humanoid"},{"ValueType":"bool","type":"Property","Name":"Sit","tags":[],"Class":"Humanoid"},{"ValueType":"Vector3","type":"Property","Name":"TargetPoint","tags":[],"Class":"Humanoid"},{"ValueType":"Object","type":"Property","Name":"Torso","tags":[],"Class":"Humanoid"},{"ValueType":"float","type":"Property","Name":"WalkSpeed","tags":[],"Class":"Humanoid"},{"ValueType":"Object","type":"Property","Name":"WalkToPart","tags":[],"Class":"Humanoid"},{"ValueType":"Vector3","type":"Property","Name":"WalkToPoint","tags":[],"Class":"Humanoid"},{"ValueType":"float","type":"Property","Name":"maxHealth","tags":["deprecated"],"Class":"Humanoid"},{"ReturnType":"bool","Arguments":[{"Type":"string","Name":"status","Default":null}],"Name":"AddCustomStatus","tags":["deprecated"],"Class":"Humanoid","type":"Function"},{"ReturnType":"bool","Arguments":[{"Type":"Status","Name":"status","Default":"Poison"}],"Name":"AddStatus","tags":["deprecated"],"Class":"Humanoid","type":"Function"},{"ReturnType":"void","Arguments":[{"Type":"HumanoidStateType","Name":"state","Default":"None"}],"Name":"ChangeState","tags":[],"Class":"Humanoid","type":"Function"},{"ReturnType":"void","Arguments":[{"Type":"Instance","Name":"tool","Default":null}],"Name":"EquipTool","tags":[],"Class":"Humanoid","type":"Function"},{"ReturnType":"Array","Arguments":[],"Name":"GetPlayingAnimationTracks","tags":[],"Class":"Humanoid","type":"Function"},{"ReturnType":"HumanoidStateType","Arguments":[],"Name":"GetState","tags":[],"Class":"Humanoid","type":"Function"},{"ReturnType":"bool","Arguments":[{"Type":"HumanoidStateType","Name":"state","Default":null}],"Name":"GetStateEnabled","tags":[],"Class":"Humanoid","type":"Function"},{"ReturnType":"Array","Arguments":[],"Name":"GetStatuses","tags":["deprecated"],"Class":"Humanoid","type":"Function"},{"ReturnType":"bool","Arguments":[{"Type":"string","Name":"status","Default":null}],"Name":"HasCustomStatus","tags":["deprecated"],"Class":"Humanoid","type":"Function"},{"ReturnType":"bool","Arguments":[{"Type":"Status","Name":"status","Default":"Poison"}],"Name":"HasStatus","tags":["deprecated"],"Class":"Humanoid","type":"Function"},{"ReturnType":"Instance","Arguments":[{"Type":"Instance","Name":"animation","Default":null}],"Name":"LoadAnimation","tags":[],"Class":"Humanoid","type":"Function"},{"ReturnType":"void","Arguments":[{"Type":"Vector3","Name":"moveDirection","Default":null},{"Type":"bool","Name":"relativeToCamera","Default":"false"}],"Name":"Move","tags":[],"Class":"Humanoid","type":"Function"},{"ReturnType":"void","Arguments":[{"Type":"Vector3","Name":"location","Default":null},{"Type":"Instance","Name":"part","Default":"nil"}],"Name":"MoveTo","tags":[],"Class":"Humanoid","type":"Function"},{"ReturnType":"bool","Arguments":[{"Type":"string","Name":"status","Default":null}],"Name":"RemoveCustomStatus","tags":["deprecated"],"Class":"Humanoid","type":"Function"},{"ReturnType":"bool","Arguments":[{"Type":"Status","Name":"status","Default":"Poison"}],"Name":"RemoveStatus","tags":["deprecated"],"Class":"Humanoid","type":"Function"},{"ReturnType":"void","Arguments":[{"Type":"bool","Name":"enabled","Default":null}],"Name":"SetClickToWalkEnabled","tags":["RobloxScriptSecurity"],"Class":"Humanoid","type":"Function"},{"ReturnType":"void","Arguments":[{"Type":"HumanoidStateType","Name":"state","Default":null},{"Type":"bool","Name":"enabled","Default":null}],"Name":"SetStateEnabled","tags":[],"Class":"Humanoid","type":"Function"},{"ReturnType":"void","Arguments":[{"Type":"float","Name":"amount","Default":null}],"Name":"TakeDamage","tags":[],"Class":"Humanoid","type":"Function"},{"ReturnType":"void","Arguments":[],"Name":"UnequipTools","tags":[],"Class":"Humanoid","type":"Function"},{"ReturnType":"Instance","Arguments":[{"Type":"Instance","Name":"animation","Default":null}],"Name":"loadAnimation","tags":["deprecated"],"Class":"Humanoid","type":"Function"},{"ReturnType":"void","Arguments":[{"Type":"float","Name":"amount","Default":null}],"Name":"takeDamage","tags":["deprecated"],"Class":"Humanoid","type":"Function"},{"Arguments":[{"Name":"animationTrack","Type":"Instance"}],"Name":"AnimationPlayed","tags":[],"Class":"Humanoid","type":"Event"},{"Arguments":[{"Name":"speed","Type":"float"}],"Name":"Climbing","tags":[],"Class":"Humanoid","type":"Event"},{"Arguments":[{"Name":"status","Type":"string"}],"Name":"CustomStatusAdded","tags":["deprecated"],"Class":"Humanoid","type":"Event"},{"Arguments":[{"Name":"status","Type":"string"}],"Name":"CustomStatusRemoved","tags":["deprecated"],"Class":"Humanoid","type":"Event"},{"Arguments":[],"Name":"Died","tags":[],"Class":"Humanoid","type":"Event"},{"Arguments":[{"Name":"active","Type":"bool"}],"Name":"FallingDown","tags":[],"Class":"Humanoid","type":"Event"},{"Arguments":[{"Name":"active","Type":"bool"}],"Name":"FreeFalling","tags":[],"Class":"Humanoid","type":"Event"},{"Arguments":[{"Name":"active","Type":"bool"}],"Name":"GettingUp","tags":[],"Class":"Humanoid","type":"Event"},{"Arguments":[{"Name":"health","Type":"float"}],"Name":"HealthChanged","tags":[],"Class":"Humanoid","type":"Event"},{"Arguments":[{"Name":"active","Type":"bool"}],"Name":"Jumping","tags":[],"Class":"Humanoid","type":"Event"},{"Arguments":[{"Name":"reached","Type":"bool"}],"Name":"MoveToFinished","tags":[],"Class":"Humanoid","type":"Event"},{"Arguments":[{"Name":"active","Type":"bool"}],"Name":"PlatformStanding","tags":[],"Class":"Humanoid","type":"Event"},{"Arguments":[{"Name":"active","Type":"bool"}],"Name":"Ragdoll","tags":[],"Class":"Humanoid","type":"Event"},{"Arguments":[{"Name":"speed","Type":"float"}],"Name":"Running","tags":[],"Class":"Humanoid","type":"Event"},{"Arguments":[{"Name":"active","Type":"bool"},{"Name":"currentSeatPart","Type":"Instance"}],"Name":"Seated","tags":[],"Class":"Humanoid","type":"Event"},{"Arguments":[{"Name":"old","Type":"HumanoidStateType"},{"Name":"new","Type":"HumanoidStateType"}],"Name":"StateChanged","tags":[],"Class":"Humanoid","type":"Event"},{"Arguments":[{"Name":"state","Type":"HumanoidStateType"},{"Name":"isEnabled","Type":"bool"}],"Name":"StateEnabledChanged","tags":[],"Class":"Humanoid","type":"Event"},{"Arguments":[{"Name":"status","Type":"Status"}],"Name":"StatusAdded","tags":["deprecated"],"Class":"Humanoid","type":"Event"},{"Arguments":[{"Name":"status","Type":"Status"}],"Name":"StatusRemoved","tags":["deprecated"],"Class":"Humanoid","type":"Event"},{"Arguments":[{"Name":"active","Type":"bool"}],"Name":"Strafing","tags":[],"Class":"Humanoid","type":"Event"},{"Arguments":[{"Name":"speed","Type":"float"}],"Name":"Swimming","tags":[],"Class":"Humanoid","type":"Event"},{"Superclass":"Instance","type":"Class","Name":"InputObject","tags":["notCreatable"]},{"ValueType":"Vector3","type":"Property","Name":"Delta","tags":[],"Class":"InputObject"},{"ValueType":"KeyCode","type":"Property","Name":"KeyCode","tags":[],"Class":"InputObject"},{"ValueType":"Vector3","type":"Property","Name":"Position","tags":[],"Class":"InputObject"},{"ValueType":"UserInputState","type":"Property","Name":"UserInputState","tags":[],"Class":"InputObject"},{"ValueType":"UserInputType","type":"Property","Name":"UserInputType","tags":[],"Class":"InputObject"},{"Superclass":"Instance","type":"Class","Name":"InsertService","tags":["notCreatable"]},{"ValueType":"bool","type":"Property","Name":"AllowInsertFreeModels","tags":[],"Class":"InsertService"},{"ReturnType":"void","Arguments":[{"Type":"int","Name":"assetId","Default":null}],"Name":"ApproveAssetId","tags":["deprecated"],"Class":"InsertService","type":"Function"},{"ReturnType":"void","Arguments":[{"Type":"int","Name":"assetVersionId","Default":null}],"Name":"ApproveAssetVersionId","tags":["deprecated"],"Class":"InsertService","type":"Function"},{"ReturnType":"void","Arguments":[{"Type":"Instance","Name":"instance","Default":null}],"Name":"Insert","tags":["deprecated"],"Class":"InsertService","type":"Function"},{"ReturnType":"void","Arguments":[{"Type":"bool","Name":"enable","Default":null},{"Type":"bool","Name":"user","Default":"false"}],"Name":"SetAdvancedResults","tags":["LocalUserSecurity"],"Class":"InsertService","type":"Function"},{"ReturnType":"void","Arguments":[{"Type":"string","Name":"assetUrl","Default":null}],"Name":"SetAssetUrl","tags":["LocalUserSecurity"],"Class":"InsertService","type":"Function"},{"ReturnType":"void","Arguments":[{"Type":"string","Name":"assetVersionUrl","Default":null}],"Name":"SetAssetVersionUrl","tags":["LocalUserSecurity"],"Class":"InsertService","type":"Function"},{"ReturnType":"void","Arguments":[{"Type":"string","Name":"baseSetsUrl","Default":null}],"Name":"SetBaseCategoryUrl","tags":["LocalUserSecurity"],"Class":"InsertService","type":"Function"},{"ReturnType":"void","Arguments":[{"Type":"string","Name":"baseSetsUrl","Default":null}],"Name":"SetBaseSetsUrl","tags":["LocalUserSecurity"],"Class":"InsertService","type":"Function"},{"ReturnType":"void","Arguments":[{"Type":"string","Name":"collectionUrl","Default":null}],"Name":"SetCollectionUrl","tags":["LocalUserSecurity"],"Class":"InsertService","type":"Function"},{"ReturnType":"void","Arguments":[{"Type":"string","Name":"freeDecalUrl","Default":null}],"Name":"SetFreeDecalUrl","tags":["LocalUserSecurity"],"Class":"InsertService","type":"Function"},{"ReturnType":"void","Arguments":[{"Type":"string","Name":"freeModelUrl","Default":null}],"Name":"SetFreeModelUrl","tags":["LocalUserSecurity"],"Class":"InsertService","type":"Function"},{"ReturnType":"void","Arguments":[{"Type":"float","Name":"trustLevel","Default":null}],"Name":"SetTrustLevel","tags":["LocalUserSecurity"],"Class":"InsertService","type":"Function"},{"ReturnType":"void","Arguments":[{"Type":"string","Name":"userSetsUrl","Default":null}],"Name":"SetUserCategoryUrl","tags":["LocalUserSecurity"],"Class":"InsertService","type":"Function"},{"ReturnType":"void","Arguments":[{"Type":"string","Name":"userSetsUrl","Default":null}],"Name":"SetUserSetsUrl","tags":["LocalUserSecurity"],"Class":"InsertService","type":"Function"},{"ReturnType":"Array","Arguments":[],"Name":"GetBaseCategories","tags":["deprecated"],"Class":"InsertService","type":"YieldFunction"},{"ReturnType":"Array","Arguments":[],"Name":"GetBaseSets","tags":[],"Class":"InsertService","type":"YieldFunction"},{"ReturnType":"Array","Arguments":[{"Type":"int","Name":"categoryId","Default":null}],"Name":"GetCollection","tags":[],"Class":"InsertService","type":"YieldFunction"},{"ReturnType":"Array","Arguments":[{"Type":"string","Name":"searchText","Default":null},{"Type":"int","Name":"pageNum","Default":null}],"Name":"GetFreeDecals","tags":[],"Class":"InsertService","type":"YieldFunction"},{"ReturnType":"Array","Arguments":[{"Type":"string","Name":"searchText","Default":null},{"Type":"int","Name":"pageNum","Default":null}],"Name":"GetFreeModels","tags":[],"Class":"InsertService","type":"YieldFunction"},{"ReturnType":"int","Arguments":[{"Type":"int","Name":"assetId","Default":null}],"Name":"GetLatestAssetVersionAsync","tags":[],"Class":"InsertService","type":"YieldFunction"},{"ReturnType":"Array","Arguments":[{"Type":"int","Name":"userId","Default":null}],"Name":"GetUserCategories","tags":["deprecated"],"Class":"InsertService","type":"YieldFunction"},{"ReturnType":"Array","Arguments":[{"Type":"int","Name":"userId","Default":null}],"Name":"GetUserSets","tags":[],"Class":"InsertService","type":"YieldFunction"},{"ReturnType":"Instance","Arguments":[{"Type":"int","Name":"assetId","Default":null}],"Name":"LoadAsset","tags":[],"Class":"InsertService","type":"YieldFunction"},{"ReturnType":"Instance","Arguments":[{"Type":"int","Name":"assetVersionId","Default":null}],"Name":"LoadAssetVersion","tags":[],"Class":"InsertService","type":"YieldFunction"},{"ReturnType":"Instance","Arguments":[{"Type":"int","Name":"assetId","Default":null}],"Name":"loadAsset","tags":["deprecated"],"Class":"InsertService","type":"YieldFunction"},{"Superclass":"Instance","type":"Class","Name":"InstancePacketCache","tags":[]},{"Superclass":"Instance","type":"Class","Name":"IntConstrainedValue","tags":[]},{"ValueType":"int","type":"Property","Name":"ConstrainedValue","tags":["hidden"],"Class":"IntConstrainedValue"},{"ValueType":"int","type":"Property","Name":"MaxValue","tags":[],"Class":"IntConstrainedValue"},{"ValueType":"int","type":"Property","Name":"MinValue","tags":[],"Class":"IntConstrainedValue"},{"ValueType":"int","type":"Property","Name":"Value","tags":[],"Class":"IntConstrainedValue"},{"Arguments":[{"Name":"value","Type":"int"}],"Name":"Changed","tags":[],"Class":"IntConstrainedValue","type":"Event"},{"Arguments":[{"Name":"value","Type":"int"}],"Name":"changed","tags":["deprecated"],"Class":"IntConstrainedValue","type":"Event"},{"Superclass":"Instance","type":"Class","Name":"IntValue","tags":[]},{"ValueType":"int","type":"Property","Name":"Value","tags":[],"Class":"IntValue"},{"Arguments":[{"Name":"value","Type":"int"}],"Name":"Changed","tags":[],"Class":"IntValue","type":"Event"},{"Arguments":[{"Name":"value","Type":"int"}],"Name":"changed","tags":["deprecated"],"Class":"IntValue","type":"Event"},{"Superclass":"Instance","type":"Class","Name":"JointInstance","tags":[]},{"ValueType":"CoordinateFrame","type":"Property","Name":"C0","tags":[],"Class":"JointInstance"},{"ValueType":"CoordinateFrame","type":"Property","Name":"C1","tags":[],"Class":"JointInstance"},{"ValueType":"Object","type":"Property","Name":"Part0","tags":[],"Class":"JointInstance"},{"ValueType":"Object","type":"Property","Name":"Part1","tags":[],"Class":"JointInstance"},{"ValueType":"Object","type":"Property","Name":"part1","tags":["deprecated","hidden"],"Class":"JointInstance"},{"Superclass":"JointInstance","type":"Class","Name":"DynamicRotate","tags":[]},{"ValueType":"float","type":"Property","Name":"BaseAngle","tags":[],"Class":"DynamicRotate"},{"Superclass":"DynamicRotate","type":"Class","Name":"RotateP","tags":[]},{"Superclass":"DynamicRotate","type":"Class","Name":"RotateV","tags":[]},{"Superclass":"JointInstance","type":"Class","Name":"Glue","tags":[]},{"ValueType":"Vector3","type":"Property","Name":"F0","tags":[],"Class":"Glue"},{"ValueType":"Vector3","type":"Property","Name":"F1","tags":[],"Class":"Glue"},{"ValueType":"Vector3","type":"Property","Name":"F2","tags":[],"Class":"Glue"},{"ValueType":"Vector3","type":"Property","Name":"F3","tags":[],"Class":"Glue"},{"Superclass":"JointInstance","type":"Class","Name":"ManualSurfaceJointInstance","tags":[]},{"Superclass":"ManualSurfaceJointInstance","type":"Class","Name":"ManualGlue","tags":[]},{"Superclass":"ManualSurfaceJointInstance","type":"Class","Name":"ManualWeld","tags":[]},{"Superclass":"JointInstance","type":"Class","Name":"Motor","tags":[]},{"ValueType":"float","type":"Property","Name":"CurrentAngle","tags":[],"Class":"Motor"},{"ValueType":"float","type":"Property","Name":"DesiredAngle","tags":[],"Class":"Motor"},{"ValueType":"float","type":"Property","Name":"MaxVelocity","tags":[],"Class":"Motor"},{"ReturnType":"void","Arguments":[{"Type":"float","Name":"value","Default":null}],"Name":"SetDesiredAngle","tags":[],"Class":"Motor","type":"Function"},{"Superclass":"Motor","type":"Class","Name":"Motor6D","tags":[]},{"Superclass":"JointInstance","type":"Class","Name":"Rotate","tags":[]},{"Superclass":"JointInstance","type":"Class","Name":"Snap","tags":[]},{"Superclass":"JointInstance","type":"Class","Name":"VelocityMotor","tags":[]},{"ValueType":"float","type":"Property","Name":"CurrentAngle","tags":[],"Class":"VelocityMotor"},{"ValueType":"float","type":"Property","Name":"DesiredAngle","tags":[],"Class":"VelocityMotor"},{"ValueType":"Object","type":"Property","Name":"Hole","tags":[],"Class":"VelocityMotor"},{"ValueType":"float","type":"Property","Name":"MaxVelocity","tags":[],"Class":"VelocityMotor"},{"Superclass":"JointInstance","type":"Class","Name":"Weld","tags":[]},{"Superclass":"Instance","type":"Class","Name":"JointsService","tags":["notCreatable"]},{"ReturnType":"void","Arguments":[],"Name":"ClearJoinAfterMoveJoints","tags":[],"Class":"JointsService","type":"Function"},{"ReturnType":"void","Arguments":[],"Name":"CreateJoinAfterMoveJoints","tags":[],"Class":"JointsService","type":"Function"},{"ReturnType":"void","Arguments":[{"Type":"Instance","Name":"joinInstance","Default":null}],"Name":"SetJoinAfterMoveInstance","tags":[],"Class":"JointsService","type":"Function"},{"ReturnType":"void","Arguments":[{"Type":"Instance","Name":"joinTarget","Default":null}],"Name":"SetJoinAfterMoveTarget","tags":[],"Class":"JointsService","type":"Function"},{"ReturnType":"void","Arguments":[],"Name":"ShowPermissibleJoints","tags":[],"Class":"JointsService","type":"Function"},{"Superclass":"Instance","type":"Class","Name":"Keyframe","tags":[]},{"ValueType":"float","type":"Property","Name":"Time","tags":[],"Class":"Keyframe"},{"ReturnType":"void","Arguments":[{"Type":"Instance","Name":"pose","Default":null}],"Name":"AddPose","tags":[],"Class":"Keyframe","type":"Function"},{"ReturnType":"Objects","Arguments":[],"Name":"GetPoses","tags":[],"Class":"Keyframe","type":"Function"},{"ReturnType":"void","Arguments":[{"Type":"Instance","Name":"pose","Default":null}],"Name":"RemovePose","tags":[],"Class":"Keyframe","type":"Function"},{"Superclass":"Instance","type":"Class","Name":"KeyframeSequence","tags":[]},{"ValueType":"bool","type":"Property","Name":"Loop","tags":[],"Class":"KeyframeSequence"},{"ValueType":"AnimationPriority","type":"Property","Name":"Priority","tags":[],"Class":"KeyframeSequence"},{"ReturnType":"void","Arguments":[{"Type":"Instance","Name":"keyframe","Default":null}],"Name":"AddKeyframe","tags":[],"Class":"KeyframeSequence","type":"Function"},{"ReturnType":"Objects","Arguments":[],"Name":"GetKeyframes","tags":[],"Class":"KeyframeSequence","type":"Function"},{"ReturnType":"void","Arguments":[{"Type":"Instance","Name":"keyframe","Default":null}],"Name":"RemoveKeyframe","tags":[],"Class":"KeyframeSequence","type":"Function"},{"Superclass":"Instance","type":"Class","Name":"KeyframeSequenceProvider","tags":[]},{"ReturnType":"Instance","Arguments":[{"Type":"Content","Name":"assetId","Default":null}],"Name":"GetKeyframeSequence","tags":[],"Class":"KeyframeSequenceProvider","type":"Function"},{"ReturnType":"Instance","Arguments":[{"Type":"int","Name":"assetId","Default":null},{"Type":"bool","Name":"useCache","Default":null}],"Name":"GetKeyframeSequenceById","tags":[],"Class":"KeyframeSequenceProvider","type":"Function"},{"ReturnType":"Content","Arguments":[{"Type":"Instance","Name":"keyframeSequence","Default":null}],"Name":"RegisterActiveKeyframeSequence","tags":[],"Class":"KeyframeSequenceProvider","type":"Function"},{"ReturnType":"Content","Arguments":[{"Type":"Instance","Name":"keyframeSequence","Default":null}],"Name":"RegisterKeyframeSequence","tags":[],"Class":"KeyframeSequenceProvider","type":"Function"},{"ReturnType":"Dictionary","Arguments":[{"Type":"int","Name":"userId","Default":null},{"Type":"int","Name":"page","Default":"1"}],"Name":"GetAnimations","tags":[],"Class":"KeyframeSequenceProvider","type":"YieldFunction"},{"Superclass":"Instance","type":"Class","Name":"Light","tags":[]},{"ValueType":"float","type":"Property","Name":"Brightness","tags":[],"Class":"Light"},{"ValueType":"Color3","type":"Property","Name":"Color","tags":[],"Class":"Light"},{"ValueType":"bool","type":"Property","Name":"Enabled","tags":[],"Class":"Light"},{"ValueType":"bool","type":"Property","Name":"Shadows","tags":[],"Class":"Light"},{"Superclass":"Light","type":"Class","Name":"PointLight","tags":[]},{"ValueType":"float","type":"Property","Name":"Range","tags":[],"Class":"PointLight"},{"Superclass":"Light","type":"Class","Name":"SpotLight","tags":[]},{"ValueType":"float","type":"Property","Name":"Angle","tags":[],"Class":"SpotLight"},{"ValueType":"NormalId","type":"Property","Name":"Face","tags":[],"Class":"SpotLight"},{"ValueType":"float","type":"Property","Name":"Range","tags":[],"Class":"SpotLight"},{"Superclass":"Light","type":"Class","Name":"SurfaceLight","tags":[]},{"ValueType":"float","type":"Property","Name":"Angle","tags":[],"Class":"SurfaceLight"},{"ValueType":"NormalId","type":"Property","Name":"Face","tags":[],"Class":"SurfaceLight"},{"ValueType":"float","type":"Property","Name":"Range","tags":[],"Class":"SurfaceLight"},{"Superclass":"Instance","type":"Class","Name":"Lighting","tags":["notCreatable"]},{"ValueType":"Color3","type":"Property","Name":"Ambient","tags":[],"Class":"Lighting"},{"ValueType":"float","type":"Property","Name":"Brightness","tags":[],"Class":"Lighting"},{"ValueType":"Color3","type":"Property","Name":"ColorShift_Bottom","tags":[],"Class":"Lighting"},{"ValueType":"Color3","type":"Property","Name":"ColorShift_Top","tags":[],"Class":"Lighting"},{"ValueType":"Color3","type":"Property","Name":"FogColor","tags":[],"Class":"Lighting"},{"ValueType":"float","type":"Property","Name":"FogEnd","tags":[],"Class":"Lighting"},{"ValueType":"float","type":"Property","Name":"FogStart","tags":[],"Class":"Lighting"},{"ValueType":"float","type":"Property","Name":"GeographicLatitude","tags":[],"Class":"Lighting"},{"ValueType":"bool","type":"Property","Name":"GlobalShadows","tags":[],"Class":"Lighting"},{"ValueType":"Color3","type":"Property","Name":"OutdoorAmbient","tags":[],"Class":"Lighting"},{"ValueType":"bool","type":"Property","Name":"Outlines","tags":[],"Class":"Lighting"},{"ValueType":"Color3","type":"Property","Name":"ShadowColor","tags":[],"Class":"Lighting"},{"ValueType":"string","type":"Property","Name":"TimeOfDay","tags":[],"Class":"Lighting"},{"ReturnType":"double","Arguments":[],"Name":"GetMinutesAfterMidnight","tags":[],"Class":"Lighting","type":"Function"},{"ReturnType":"Vector3","Arguments":[],"Name":"GetMoonDirection","tags":[],"Class":"Lighting","type":"Function"},{"ReturnType":"float","Arguments":[],"Name":"GetMoonPhase","tags":[],"Class":"Lighting","type":"Function"},{"ReturnType":"Vector3","Arguments":[],"Name":"GetSunDirection","tags":[],"Class":"Lighting","type":"Function"},{"ReturnType":"void","Arguments":[{"Type":"double","Name":"minutes","Default":null}],"Name":"SetMinutesAfterMidnight","tags":[],"Class":"Lighting","type":"Function"},{"ReturnType":"double","Arguments":[],"Name":"getMinutesAfterMidnight","tags":["deprecated"],"Class":"Lighting","type":"Function"},{"ReturnType":"void","Arguments":[{"Type":"double","Name":"minutes","Default":null}],"Name":"setMinutesAfterMidnight","tags":["deprecated"],"Class":"Lighting","type":"Function"},{"Arguments":[{"Name":"skyboxChanged","Type":"bool"}],"Name":"LightingChanged","tags":[],"Class":"Lighting","type":"Event"},{"Superclass":"Instance","type":"Class","Name":"LocalWorkspace","tags":["notCreatable"]},{"Superclass":"Instance","type":"Class","Name":"LogService","tags":["notCreatable"]},{"ReturnType":"void","Arguments":[{"Type":"string","Name":"source","Default":null}],"Name":"ExecuteScript","tags":["RobloxScriptSecurity"],"Class":"LogService","type":"Function"},{"ReturnType":"Array","Arguments":[],"Name":"GetLogHistory","tags":[],"Class":"LogService","type":"Function"},{"ReturnType":"void","Arguments":[],"Name":"RequestServerOutput","tags":["RobloxScriptSecurity"],"Class":"LogService","type":"Function"},{"Arguments":[{"Name":"message","Type":"string"},{"Name":"messageType","Type":"MessageType"}],"Name":"MessageOut","tags":[],"Class":"LogService","type":"Event"},{"Arguments":[{"Name":"message","Type":"string"},{"Name":"messageType","Type":"MessageType"},{"Name":"timestamp","Type":"int"}],"Name":"ServerMessageOut","tags":["RobloxScriptSecurity"],"Class":"LogService","type":"Event"},{"Superclass":"Instance","type":"Class","Name":"LoginService","tags":[]},{"ReturnType":"void","Arguments":[],"Name":"Logout","tags":["RobloxSecurity"],"Class":"LoginService","type":"Function"},{"ReturnType":"void","Arguments":[],"Name":"PromptLogin","tags":["RobloxSecurity"],"Class":"LoginService","type":"Function"},{"Arguments":[{"Name":"loginError","Type":"string"}],"Name":"LoginFailed","tags":["RobloxSecurity"],"Class":"LoginService","type":"Event"},{"Arguments":[{"Name":"username","Type":"string"}],"Name":"LoginSucceeded","tags":["RobloxSecurity"],"Class":"LoginService","type":"Event"},{"Superclass":"Instance","type":"Class","Name":"LuaSettings","tags":[]},{"ValueType":"bool","type":"Property","Name":"AreScriptStartsReported","tags":[],"Class":"LuaSettings"},{"ValueType":"double","type":"Property","Name":"DefaultWaitTime","tags":[],"Class":"LuaSettings"},{"ValueType":"int","type":"Property","Name":"GcFrequency","tags":[],"Class":"LuaSettings"},{"ValueType":"int","type":"Property","Name":"GcLimit","tags":[],"Class":"LuaSettings"},{"ValueType":"int","type":"Property","Name":"GcPause","tags":[],"Class":"LuaSettings"},{"ValueType":"int","type":"Property","Name":"GcStepMul","tags":[],"Class":"LuaSettings"},{"ValueType":"float","type":"Property","Name":"WaitingThreadsBudget","tags":[],"Class":"LuaSettings"},{"Superclass":"Instance","type":"Class","Name":"LuaSourceContainer","tags":[]},{"Superclass":"LuaSourceContainer","type":"Class","Name":"BaseScript","tags":[]},{"ValueType":"bool","type":"Property","Name":"Disabled","tags":[],"Class":"BaseScript"},{"ValueType":"Content","type":"Property","Name":"LinkedSource","tags":[],"Class":"BaseScript"},{"Superclass":"BaseScript","type":"Class","Name":"CoreScript","tags":["notCreatable"]},{"Superclass":"BaseScript","type":"Class","Name":"Script","tags":[]},{"ValueType":"ProtectedString","type":"Property","Name":"Source","tags":["PluginSecurity"],"Class":"Script"},{"ReturnType":"string","Arguments":[],"Name":"GetHash","tags":["RobloxPlaceSecurity"],"Class":"Script","type":"Function"},{"Superclass":"Script","type":"Class","Name":"LocalScript","tags":[]},{"Superclass":"LuaSourceContainer","type":"Class","Name":"ModuleScript","tags":[]},{"ValueType":"Content","type":"Property","Name":"LinkedSource","tags":[],"Class":"ModuleScript"},{"ValueType":"ProtectedString","type":"Property","Name":"Source","tags":["PluginSecurity"],"Class":"ModuleScript"},{"Superclass":"Instance","type":"Class","Name":"LuaWebService","tags":[]},{"Superclass":"Instance","type":"Class","Name":"MarketplaceService","tags":["notCreatable"]},{"ReturnType":"void","Arguments":[{"Type":"Instance","Name":"player","Default":null},{"Type":"string","Name":"productId","Default":null}],"Name":"PromptNativePurchase","tags":["RobloxScriptSecurity"],"Class":"MarketplaceService","type":"Function"},{"ReturnType":"void","Arguments":[{"Type":"Instance","Name":"player","Default":null},{"Type":"int","Name":"productId","Default":null},{"Type":"bool","Name":"equipIfPurchased","Default":"true"},{"Type":"CurrencyType","Name":"currencyType","Default":"Default"}],"Name":"PromptProductPurchase","tags":[],"Class":"MarketplaceService","type":"Function"},{"ReturnType":"void","Arguments":[{"Type":"Instance","Name":"player","Default":null},{"Type":"int","Name":"assetId","Default":null},{"Type":"bool","Name":"equipIfPurchased","Default":"true"},{"Type":"CurrencyType","Name":"currencyType","Default":"Default"}],"Name":"PromptPurchase","tags":[],"Class":"MarketplaceService","type":"Function"},{"ReturnType":"void","Arguments":[{"Type":"Instance","Name":"player","Default":null},{"Type":"string","Name":"productId","Default":null}],"Name":"PromptThirdPartyPurchase","tags":["RobloxPlaceSecurity"],"Class":"MarketplaceService","type":"Function"},{"ReturnType":"void","Arguments":[{"Type":"string","Name":"assetId","Default":null},{"Type":"int","Name":"robuxAmount","Default":null}],"Name":"ReportAssetSale","tags":["RobloxScriptSecurity"],"Class":"MarketplaceService","type":"Function"},{"ReturnType":"void","Arguments":[],"Name":"ReportRobuxUpsellStarted","tags":["RobloxScriptSecurity"],"Class":"MarketplaceService","type":"Function"},{"ReturnType":"void","Arguments":[{"Type":"string","Name":"ticket","Default":null},{"Type":"int","Name":"playerId","Default":null},{"Type":"int","Name":"productId","Default":null}],"Name":"SignalClientPurchaseSuccess","tags":["RobloxScriptSecurity"],"Class":"MarketplaceService","type":"Function"},{"ReturnType":"void","Arguments":[{"Type":"int","Name":"userId","Default":null},{"Type":"int","Name":"productId","Default":null},{"Type":"bool","Name":"success","Default":null}],"Name":"SignalPromptProductPurchaseFinished","tags":["RobloxScriptSecurity"],"Class":"MarketplaceService","type":"Function"},{"ReturnType":"void","Arguments":[{"Type":"Instance","Name":"player","Default":null},{"Type":"int","Name":"assetId","Default":null},{"Type":"bool","Name":"success","Default":null}],"Name":"SignalPromptPurchaseFinished","tags":["RobloxScriptSecurity"],"Class":"MarketplaceService","type":"Function"},{"ReturnType":"void","Arguments":[{"Type":"bool","Name":"value","Default":null}],"Name":"SignalServerLuaDialogClosed","tags":["RobloxScriptSecurity"],"Class":"MarketplaceService","type":"Function"},{"ReturnType":"Instance","Arguments":[],"Name":"GetDeveloperProductsAsync","tags":[],"Class":"MarketplaceService","type":"YieldFunction"},{"ReturnType":"Dictionary","Arguments":[{"Type":"int","Name":"assetId","Default":null},{"Type":"InfoType","Name":"infoType","Default":"Asset"}],"Name":"GetProductInfo","tags":[],"Class":"MarketplaceService","type":"YieldFunction"},{"ReturnType":"bool","Arguments":[{"Type":"Instance","Name":"player","Default":null},{"Type":"int","Name":"assetId","Default":null}],"Name":"PlayerOwnsAsset","tags":[],"Class":"MarketplaceService","type":"YieldFunction"},{"Arguments":[{"Name":"arguments","Type":"Tuple"}],"Name":"ClientLuaDialogRequested","tags":["RobloxScriptSecurity"],"Class":"MarketplaceService","type":"Event"},{"Arguments":[{"Name":"ticket","Type":"string"},{"Name":"playerId","Type":"int"},{"Name":"productId","Type":"int"}],"Name":"ClientPurchaseSuccess","tags":["RobloxScriptSecurity"],"Class":"MarketplaceService","type":"Event"},{"Arguments":[{"Name":"player","Type":"Instance"},{"Name":"productId","Type":"string"},{"Name":"wasPurchased","Type":"bool"}],"Name":"NativePurchaseFinished","tags":["RobloxScriptSecurity"],"Class":"MarketplaceService","type":"Event"},{"Arguments":[{"Name":"userId","Type":"int"},{"Name":"productId","Type":"int"},{"Name":"isPurchased","Type":"bool"}],"Name":"PromptProductPurchaseFinished","tags":["deprecated"],"Class":"MarketplaceService","type":"Event"},{"Arguments":[{"Name":"player","Type":"Instance"},{"Name":"productId","Type":"int"},{"Name":"equipIfPurchased","Type":"bool"},{"Name":"currencyType","Type":"CurrencyType"}],"Name":"PromptProductPurchaseRequested","tags":["RobloxScriptSecurity"],"Class":"MarketplaceService","type":"Event"},{"Arguments":[{"Name":"player","Type":"Instance"},{"Name":"assetId","Type":"int"},{"Name":"isPurchased","Type":"bool"}],"Name":"PromptPurchaseFinished","tags":[],"Class":"MarketplaceService","type":"Event"},{"Arguments":[{"Name":"player","Type":"Instance"},{"Name":"assetId","Type":"int"},{"Name":"equipIfPurchased","Type":"bool"},{"Name":"currencyType","Type":"CurrencyType"}],"Name":"PromptPurchaseRequested","tags":["RobloxScriptSecurity"],"Class":"MarketplaceService","type":"Event"},{"Arguments":[{"Name":"serverResponseTable","Type":"Dictionary"}],"Name":"ServerPurchaseVerification","tags":["RobloxScriptSecurity"],"Class":"MarketplaceService","type":"Event"},{"Arguments":[{"Name":"player","Type":"Instance"},{"Name":"productId","Type":"string"},{"Name":"receipt","Type":"string"},{"Name":"wasPurchased","Type":"bool"}],"Name":"ThirdPartyPurchaseFinished","tags":["RobloxPlaceSecurity"],"Class":"MarketplaceService","type":"Event"},{"ReturnType":"ProductPurchaseDecision","Arguments":[{"Name":"receiptInfo","Type":"Dictionary"}],"Name":"ProcessReceipt","tags":[],"Class":"MarketplaceService","type":"Callback"},{"Superclass":"Instance","type":"Class","Name":"Message","tags":["deprecated"]},{"ValueType":"string","type":"Property","Name":"Text","tags":[],"Class":"Message"},{"Superclass":"Message","type":"Class","Name":"Hint","tags":["deprecated"]},{"Superclass":"Instance","type":"Class","Name":"Mouse","tags":[]},{"ValueType":"CoordinateFrame","type":"Property","Name":"Hit","tags":["readonly"],"Class":"Mouse"},{"ValueType":"Content","type":"Property","Name":"Icon","tags":[],"Class":"Mouse"},{"ValueType":"CoordinateFrame","type":"Property","Name":"Origin","tags":["readonly"],"Class":"Mouse"},{"ValueType":"Object","type":"Property","Name":"Target","tags":["readonly"],"Class":"Mouse"},{"ValueType":"Object","type":"Property","Name":"TargetFilter","tags":[],"Class":"Mouse"},{"ValueType":"NormalId","type":"Property","Name":"TargetSurface","tags":["readonly"],"Class":"Mouse"},{"ValueType":"Ray","type":"Property","Name":"UnitRay","tags":["readonly"],"Class":"Mouse"},{"ValueType":"int","type":"Property","Name":"ViewSizeX","tags":["readonly"],"Class":"Mouse"},{"ValueType":"int","type":"Property","Name":"ViewSizeY","tags":["readonly"],"Class":"Mouse"},{"ValueType":"int","type":"Property","Name":"X","tags":["readonly"],"Class":"Mouse"},{"ValueType":"int","type":"Property","Name":"Y","tags":["readonly"],"Class":"Mouse"},{"ValueType":"CoordinateFrame","type":"Property","Name":"hit","tags":["deprecated","hidden","readonly"],"Class":"Mouse"},{"ValueType":"Object","type":"Property","Name":"target","tags":["deprecated","readonly"],"Class":"Mouse"},{"Arguments":[],"Name":"Button1Down","tags":[],"Class":"Mouse","type":"Event"},{"Arguments":[],"Name":"Button1Up","tags":[],"Class":"Mouse","type":"Event"},{"Arguments":[],"Name":"Button2Down","tags":[],"Class":"Mouse","type":"Event"},{"Arguments":[],"Name":"Button2Up","tags":[],"Class":"Mouse","type":"Event"},{"Arguments":[],"Name":"Idle","tags":[],"Class":"Mouse","type":"Event"},{"Arguments":[{"Name":"key","Type":"string"}],"Name":"KeyDown","tags":["deprecated"],"Class":"Mouse","type":"Event"},{"Arguments":[{"Name":"key","Type":"string"}],"Name":"KeyUp","tags":["deprecated"],"Class":"Mouse","type":"Event"},{"Arguments":[],"Name":"Move","tags":[],"Class":"Mouse","type":"Event"},{"Arguments":[],"Name":"WheelBackward","tags":[],"Class":"Mouse","type":"Event"},{"Arguments":[],"Name":"WheelForward","tags":[],"Class":"Mouse","type":"Event"},{"Arguments":[{"Name":"key","Type":"string"}],"Name":"keyDown","tags":["deprecated"],"Class":"Mouse","type":"Event"},{"Superclass":"Mouse","type":"Class","Name":"PlayerMouse","tags":[]},{"Superclass":"Mouse","type":"Class","Name":"PluginMouse","tags":[]},{"Arguments":[{"Name":"instances","Type":"Objects"}],"Name":"DragEnter","tags":["PluginSecurity"],"Class":"PluginMouse","type":"Event"},{"Superclass":"Instance","type":"Class","Name":"NetworkMarker","tags":["notbrowsable"]},{"Arguments":[],"Name":"Received","tags":[],"Class":"NetworkMarker","type":"Event"},{"Superclass":"Instance","type":"Class","Name":"NetworkPeer","tags":["notbrowsable"]},{"ReturnType":"void","Arguments":[{"Type":"int","Name":"limit","Default":null}],"Name":"SetOutgoingKBPSLimit","tags":["PluginSecurity"],"Class":"NetworkPeer","type":"Function"},{"Superclass":"NetworkPeer","type":"Class","Name":"NetworkClient","tags":["notCreatable"]},{"ValueType":"string","type":"Property","Name":"Ticket","tags":[],"Class":"NetworkClient"},{"ReturnType":"void","Arguments":[{"Type":"int","Name":"blockDuration","Default":"3000"}],"Name":"Disconnect","tags":["LocalUserSecurity"],"Class":"NetworkClient","type":"Function"},{"ReturnType":"Instance","Arguments":[{"Type":"int","Name":"userId","Default":null},{"Type":"string","Name":"server","Default":null},{"Type":"int","Name":"serverPort","Default":null},{"Type":"int","Name":"clientPort","Default":"0"},{"Type":"int","Name":"threadSleepTime","Default":"30"}],"Name":"PlayerConnect","tags":["PluginSecurity"],"Class":"NetworkClient","type":"Function"},{"ReturnType":"void","Arguments":[{"Type":"string","Name":"gameSessionID","Default":null}],"Name":"SetGameSessionID","tags":["RobloxSecurity"],"Class":"NetworkClient","type":"Function"},{"Arguments":[{"Name":"peer","Type":"string"},{"Name":"replicator","Type":"Instance"}],"Name":"ConnectionAccepted","tags":[],"Class":"NetworkClient","type":"Event"},{"Arguments":[{"Name":"peer","Type":"string"},{"Name":"code","Type":"int"},{"Name":"reason","Type":"string"}],"Name":"ConnectionFailed","tags":[],"Class":"NetworkClient","type":"Event"},{"Arguments":[{"Name":"peer","Type":"string"}],"Name":"ConnectionRejected","tags":[],"Class":"NetworkClient","type":"Event"},{"Superclass":"NetworkPeer","type":"Class","Name":"NetworkServer","tags":["notCreatable"]},{"ValueType":"int","type":"Property","Name":"Port","tags":["readonly"],"Class":"NetworkServer"},{"ReturnType":"void","Arguments":[],"Name":"ConfigureAsCloudEditServer","tags":["RobloxSecurity"],"Class":"NetworkServer","type":"Function"},{"ReturnType":"void","Arguments":[],"Name":"ConfigureAsTeamTestServer","tags":["RobloxSecurity"],"Class":"NetworkServer","type":"Function"},{"ReturnType":"int","Arguments":[],"Name":"GetClientCount","tags":["LocalUserSecurity"],"Class":"NetworkServer","type":"Function"},{"ReturnType":"void","Arguments":[{"Type":"bool","Name":"value","Default":null}],"Name":"SetIsPlayerAuthenticationRequired","tags":["RobloxSecurity"],"Class":"NetworkServer","type":"Function"},{"ReturnType":"void","Arguments":[{"Type":"int","Name":"port","Default":"0"},{"Type":"int","Name":"threadSleepTime","Default":"20"}],"Name":"Start","tags":["PluginSecurity"],"Class":"NetworkServer","type":"Function"},{"ReturnType":"void","Arguments":[{"Type":"int","Name":"blockDuration","Default":"1000"}],"Name":"Stop","tags":["LocalUserSecurity"],"Class":"NetworkServer","type":"Function"},{"Arguments":[{"Name":"peer","Type":"Instance"},{"Name":"result","Type":"FilterResult"},{"Name":"instance","Type":"Instance"},{"Name":"member","Type":"string"}],"Name":"DataBasicFiltered","tags":["LocalUserSecurity"],"Class":"NetworkServer","type":"Event"},{"Arguments":[{"Name":"peer","Type":"Instance"},{"Name":"result","Type":"FilterResult"},{"Name":"instance","Type":"Instance"},{"Name":"member","Type":"string"}],"Name":"DataCustomFiltered","tags":["LocalUserSecurity"],"Class":"NetworkServer","type":"Event"},{"Arguments":[{"Name":"peer","Type":"string"},{"Name":"replicator","Type":"Instance"}],"Name":"IncommingConnection","tags":["RobloxScriptSecurity"],"Class":"NetworkServer","type":"Event"},{"Superclass":"Instance","type":"Class","Name":"NetworkReplicator","tags":["notCreatable"]},{"ValueType":"string","type":"Property","Name":"MachineAddress","tags":["LocalUserSecurity","readonly"],"Class":"NetworkReplicator"},{"ValueType":"int","type":"Property","Name":"Port","tags":["LocalUserSecurity","readonly"],"Class":"NetworkReplicator"},{"ReturnType":"void","Arguments":[],"Name":"CloseConnection","tags":["LocalUserSecurity"],"Class":"NetworkReplicator","type":"Function"},{"ReturnType":"void","Arguments":[],"Name":"DisableProcessPackets","tags":["LocalUserSecurity"],"Class":"NetworkReplicator","type":"Function"},{"ReturnType":"void","Arguments":[],"Name":"EnableProcessPackets","tags":["LocalUserSecurity"],"Class":"NetworkReplicator","type":"Function"},{"ReturnType":"Instance","Arguments":[],"Name":"GetPlayer","tags":[],"Class":"NetworkReplicator","type":"Function"},{"ReturnType":"string","Arguments":[{"Type":"int","Name":"verbosityLevel","Default":"0"}],"Name":"GetRakStatsString","tags":["PluginSecurity"],"Class":"NetworkReplicator","type":"Function"},{"ReturnType":"void","Arguments":[],"Name":"RequestCharacter","tags":["LocalUserSecurity"],"Class":"NetworkReplicator","type":"Function"},{"ReturnType":"Instance","Arguments":[],"Name":"SendMarker","tags":["LocalUserSecurity"],"Class":"NetworkReplicator","type":"Function"},{"ReturnType":"void","Arguments":[{"Type":"double","Name":"seconds","Default":null}],"Name":"SetPropSyncExpiration","tags":["LocalUserSecurity"],"Class":"NetworkReplicator","type":"Function"},{"Arguments":[{"Name":"peer","Type":"string"},{"Name":"lostConnection","Type":"bool"}],"Name":"Disconnection","tags":["LocalUserSecurity"],"Class":"NetworkReplicator","type":"Event"},{"Superclass":"NetworkReplicator","type":"Class","Name":"ClientReplicator","tags":["notCreatable"]},{"ReturnType":"void","Arguments":[{"Type":"bool","Name":"request","Default":null}],"Name":"RequestServerStats","tags":["RobloxScriptSecurity"],"Class":"ClientReplicator","type":"Function"},{"Arguments":[{"Name":"stats","Type":"Dictionary"}],"Name":"StatsReceived","tags":["RobloxScriptSecurity"],"Class":"ClientReplicator","type":"Event"},{"Superclass":"NetworkReplicator","type":"Class","Name":"ServerReplicator","tags":["notCreatable"]},{"ReturnType":"void","Arguments":[],"Name":"PreventTerrainChanges","tags":["RobloxPlaceSecurity"],"Class":"ServerReplicator","type":"Function"},{"ReturnType":"void","Arguments":[{"Type":"bool","Name":"value","Default":null}],"Name":"SetBasicFilteringEnabled","tags":["RobloxPlaceSecurity"],"Class":"ServerReplicator","type":"Function"},{"Arguments":[{"Name":"userId","Type":"int"},{"Name":"isAuthenticated","Type":"bool"},{"Name":"protocolVersion","Type":"int"}],"Name":"TicketProcessed","tags":[],"Class":"ServerReplicator","type":"Event"},{"ReturnType":"FilterResult","Arguments":[{"Name":"deletingItem","Type":"Instance"}],"Name":"DeleteFilter","tags":["RobloxPlaceSecurity","noyield"],"Class":"ServerReplicator","type":"Callback"},{"ReturnType":"FilterResult","Arguments":[{"Name":"firingItem","Type":"Instance"},{"Name":"event","Type":"string"}],"Name":"EventFilter","tags":["RobloxPlaceSecurity","noyield"],"Class":"ServerReplicator","type":"Callback"},{"ReturnType":"FilterResult","Arguments":[{"Name":"newItem","Type":"Instance"},{"Name":"parent","Type":"Instance"}],"Name":"NewFilter","tags":["RobloxPlaceSecurity","noyield"],"Class":"ServerReplicator","type":"Callback"},{"ReturnType":"FilterResult","Arguments":[{"Name":"changingItem","Type":"Instance"},{"Name":"member","Type":"string"},{"Name":"value","Type":"Variant"}],"Name":"PropertyFilter","tags":["RobloxPlaceSecurity","noyield"],"Class":"ServerReplicator","type":"Callback"},{"Superclass":"Instance","type":"Class","Name":"NetworkSettings","tags":["notbrowsable"]},{"ValueType":"bool","type":"Property","Name":"ArePhysicsRejectionsReported","tags":[],"Class":"NetworkSettings"},{"ValueType":"int","type":"Property","Name":"CanSendPacketBufferLimit","tags":[],"Class":"NetworkSettings"},{"ValueType":"float","type":"Property","Name":"ClientPhysicsSendRate","tags":[],"Class":"NetworkSettings"},{"ValueType":"float","type":"Property","Name":"DataGCRate","tags":[],"Class":"NetworkSettings"},{"ValueType":"int","type":"Property","Name":"DataMtuAdjust","tags":[],"Class":"NetworkSettings"},{"ValueType":"PacketPriority","type":"Property","Name":"DataSendPriority","tags":["hidden"],"Class":"NetworkSettings"},{"ValueType":"float","type":"Property","Name":"DataSendRate","tags":[],"Class":"NetworkSettings"},{"ValueType":"bool","type":"Property","Name":"EnableHeavyCompression","tags":["hidden"],"Class":"NetworkSettings"},{"ValueType":"bool","type":"Property","Name":"ExperimentalPhysicsEnabled","tags":[],"Class":"NetworkSettings"},{"ValueType":"int","type":"Property","Name":"ExtraMemoryUsed","tags":["PluginSecurity","hidden"],"Class":"NetworkSettings"},{"ValueType":"float","type":"Property","Name":"FreeMemoryMBytes","tags":["PluginSecurity","hidden","readonly"],"Class":"NetworkSettings"},{"ValueType":"float","type":"Property","Name":"FreeMemoryPoolMBytes","tags":["PluginSecurity","hidden","readonly"],"Class":"NetworkSettings"},{"ValueType":"double","type":"Property","Name":"IncommingReplicationLag","tags":[],"Class":"NetworkSettings"},{"ValueType":"bool","type":"Property","Name":"IsQueueErrorComputed","tags":[],"Class":"NetworkSettings"},{"ValueType":"bool","type":"Property","Name":"IsThrottledByCongestionControl","tags":[],"Class":"NetworkSettings"},{"ValueType":"bool","type":"Property","Name":"IsThrottledByOutgoingBandwidthLimit","tags":[],"Class":"NetworkSettings"},{"ValueType":"int","type":"Property","Name":"MaxDataModelSendBuffer","tags":["deprecated"],"Class":"NetworkSettings"},{"ValueType":"float","type":"Property","Name":"NetworkOwnerRate","tags":[],"Class":"NetworkSettings"},{"ValueType":"int","type":"Property","Name":"PhysicsMtuAdjust","tags":[],"Class":"NetworkSettings"},{"ValueType":"PhysicsReceiveMethod","type":"Property","Name":"PhysicsReceive","tags":[],"Class":"NetworkSettings"},{"ValueType":"PhysicsSendMethod","type":"Property","Name":"PhysicsSend","tags":[],"Class":"NetworkSettings"},{"ValueType":"PacketPriority","type":"Property","Name":"PhysicsSendPriority","tags":["hidden"],"Class":"NetworkSettings"},{"ValueType":"float","type":"Property","Name":"PhysicsSendRate","tags":[],"Class":"NetworkSettings"},{"ValueType":"int","type":"Property","Name":"PreferredClientPort","tags":[],"Class":"NetworkSettings"},{"ValueType":"bool","type":"Property","Name":"PrintBits","tags":[],"Class":"NetworkSettings"},{"ValueType":"bool","type":"Property","Name":"PrintEvents","tags":[],"Class":"NetworkSettings"},{"ValueType":"bool","type":"Property","Name":"PrintFilters","tags":[],"Class":"NetworkSettings"},{"ValueType":"bool","type":"Property","Name":"PrintInstances","tags":[],"Class":"NetworkSettings"},{"ValueType":"bool","type":"Property","Name":"PrintPhysicsErrors","tags":[],"Class":"NetworkSettings"},{"ValueType":"bool","type":"Property","Name":"PrintProperties","tags":[],"Class":"NetworkSettings"},{"ValueType":"bool","type":"Property","Name":"PrintSplitMessage","tags":[],"Class":"NetworkSettings"},{"ValueType":"bool","type":"Property","Name":"PrintStreamInstanceQuota","tags":[],"Class":"NetworkSettings"},{"ValueType":"bool","type":"Property","Name":"PrintTouches","tags":[],"Class":"NetworkSettings"},{"ValueType":"double","type":"Property","Name":"ReceiveRate","tags":[],"Class":"NetworkSettings"},{"ValueType":"bool","type":"Property","Name":"RenderStreamedRegions","tags":[],"Class":"NetworkSettings"},{"ValueType":"string","type":"Property","Name":"ReportStatURL","tags":["deprecated","hidden"],"Class":"NetworkSettings"},{"ValueType":"int","type":"Property","Name":"SendPacketBufferLimit","tags":[],"Class":"NetworkSettings"},{"ValueType":"bool","type":"Property","Name":"ShowActiveAnimationAsset","tags":[],"Class":"NetworkSettings"},{"ValueType":"bool","type":"Property","Name":"ShowPartMovementWayPoint","tags":[],"Class":"NetworkSettings"},{"ValueType":"int","type":"Property","Name":"TotalNumMovementWayPoint","tags":[],"Class":"NetworkSettings"},{"ValueType":"float","type":"Property","Name":"TouchSendRate","tags":[],"Class":"NetworkSettings"},{"ValueType":"bool","type":"Property","Name":"TrackDataTypes","tags":[],"Class":"NetworkSettings"},{"ValueType":"bool","type":"Property","Name":"TrackPhysicsDetails","tags":[],"Class":"NetworkSettings"},{"ValueType":"bool","type":"Property","Name":"UseInstancePacketCache","tags":[],"Class":"NetworkSettings"},{"ValueType":"bool","type":"Property","Name":"UsePhysicsPacketCache","tags":[],"Class":"NetworkSettings"},{"ValueType":"int","type":"Property","Name":"WaitingForCharacterLogRate","tags":["deprecated","hidden"],"Class":"NetworkSettings"},{"Superclass":"Instance","type":"Class","Name":"NotificationService","tags":["notCreatable"]},{"ReturnType":"void","Arguments":[{"Type":"int","Name":"userId","Default":null}],"Name":"CancelAllNotification","tags":["RobloxPlaceSecurity"],"Class":"NotificationService","type":"Function"},{"ReturnType":"void","Arguments":[{"Type":"int","Name":"userId","Default":null},{"Type":"int","Name":"alertId","Default":null}],"Name":"CancelNotification","tags":["RobloxPlaceSecurity"],"Class":"NotificationService","type":"Function"},{"ReturnType":"void","Arguments":[{"Type":"int","Name":"userId","Default":null},{"Type":"int","Name":"alertId","Default":null},{"Type":"string","Name":"alertMsg","Default":null},{"Type":"int","Name":"minutesToFire","Default":null}],"Name":"ScheduleNotification","tags":["RobloxPlaceSecurity"],"Class":"NotificationService","type":"Function"},{"ReturnType":"Array","Arguments":[{"Type":"int","Name":"userId","Default":null}],"Name":"GetScheduledNotifications","tags":["RobloxPlaceSecurity"],"Class":"NotificationService","type":"YieldFunction"},{"Superclass":"Instance","type":"Class","Name":"NumberValue","tags":[]},{"ValueType":"double","type":"Property","Name":"Value","tags":[],"Class":"NumberValue"},{"Arguments":[{"Name":"value","Type":"double"}],"Name":"Changed","tags":[],"Class":"NumberValue","type":"Event"},{"Arguments":[{"Name":"value","Type":"double"}],"Name":"changed","tags":["deprecated"],"Class":"NumberValue","type":"Event"},{"Superclass":"Instance","type":"Class","Name":"ObjectValue","tags":[]},{"ValueType":"Object","type":"Property","Name":"Value","tags":[],"Class":"ObjectValue"},{"Arguments":[{"Name":"value","Type":"Instance"}],"Name":"Changed","tags":[],"Class":"ObjectValue","type":"Event"},{"Arguments":[{"Name":"value","Type":"Instance"}],"Name":"changed","tags":["deprecated"],"Class":"ObjectValue","type":"Event"},{"Superclass":"Instance","type":"Class","Name":"OneQuarterClusterPacketCacheBase","tags":[]},{"Superclass":"Instance","type":"Class","Name":"PVInstance","tags":["notbrowsable"]},{"ValueType":"CoordinateFrame","type":"Property","Name":"CoordinateFrame","tags":["deprecated","writeonly"],"Class":"PVInstance"},{"Superclass":"PVInstance","type":"Class","Name":"BasePart","tags":["notbrowsable"]},{"ValueType":"bool","type":"Property","Name":"Anchored","tags":[],"Class":"BasePart"},{"ValueType":"float","type":"Property","Name":"BackParamA","tags":[],"Class":"BasePart"},{"ValueType":"float","type":"Property","Name":"BackParamB","tags":[],"Class":"BasePart"},{"ValueType":"SurfaceType","type":"Property","Name":"BackSurface","tags":[],"Class":"BasePart"},{"ValueType":"InputType","type":"Property","Name":"BackSurfaceInput","tags":[],"Class":"BasePart"},{"ValueType":"float","type":"Property","Name":"BottomParamA","tags":[],"Class":"BasePart"},{"ValueType":"float","type":"Property","Name":"BottomParamB","tags":[],"Class":"BasePart"},{"ValueType":"SurfaceType","type":"Property","Name":"BottomSurface","tags":[],"Class":"BasePart"},{"ValueType":"InputType","type":"Property","Name":"BottomSurfaceInput","tags":[],"Class":"BasePart"},{"ValueType":"BrickColor","type":"Property","Name":"BrickColor","tags":[],"Class":"BasePart"},{"ValueType":"CoordinateFrame","type":"Property","Name":"CFrame","tags":[],"Class":"BasePart"},{"ValueType":"bool","type":"Property","Name":"CanCollide","tags":[],"Class":"BasePart"},{"ValueType":"Color3","type":"Property","Name":"Color","tags":["deprecated"],"Class":"BasePart"},{"ValueType":"PhysicalProperties","type":"Property","Name":"CustomPhysicalProperties","tags":[],"Class":"BasePart"},{"ValueType":"float","type":"Property","Name":"Elasticity","tags":[],"Class":"BasePart"},{"ValueType":"float","type":"Property","Name":"Friction","tags":[],"Class":"BasePart"},{"ValueType":"float","type":"Property","Name":"FrontParamA","tags":[],"Class":"BasePart"},{"ValueType":"float","type":"Property","Name":"FrontParamB","tags":[],"Class":"BasePart"},{"ValueType":"SurfaceType","type":"Property","Name":"FrontSurface","tags":[],"Class":"BasePart"},{"ValueType":"InputType","type":"Property","Name":"FrontSurfaceInput","tags":[],"Class":"BasePart"},{"ValueType":"float","type":"Property","Name":"LeftParamA","tags":[],"Class":"BasePart"},{"ValueType":"float","type":"Property","Name":"LeftParamB","tags":[],"Class":"BasePart"},{"ValueType":"SurfaceType","type":"Property","Name":"LeftSurface","tags":[],"Class":"BasePart"},{"ValueType":"InputType","type":"Property","Name":"LeftSurfaceInput","tags":[],"Class":"BasePart"},{"ValueType":"float","type":"Property","Name":"LocalTransparencyModifier","tags":["hidden"],"Class":"BasePart"},{"ValueType":"bool","type":"Property","Name":"Locked","tags":[],"Class":"BasePart"},{"ValueType":"Material","type":"Property","Name":"Material","tags":[],"Class":"BasePart"},{"ValueType":"Vector3","type":"Property","Name":"Position","tags":[],"Class":"BasePart"},{"ValueType":"float","type":"Property","Name":"ReceiveAge","tags":["hidden","readonly"],"Class":"BasePart"},{"ValueType":"float","type":"Property","Name":"Reflectance","tags":[],"Class":"BasePart"},{"ValueType":"int","type":"Property","Name":"ResizeIncrement","tags":["readonly"],"Class":"BasePart"},{"ValueType":"Faces","type":"Property","Name":"ResizeableFaces","tags":["readonly"],"Class":"BasePart"},{"ValueType":"float","type":"Property","Name":"RightParamA","tags":[],"Class":"BasePart"},{"ValueType":"float","type":"Property","Name":"RightParamB","tags":[],"Class":"BasePart"},{"ValueType":"SurfaceType","type":"Property","Name":"RightSurface","tags":[],"Class":"BasePart"},{"ValueType":"InputType","type":"Property","Name":"RightSurfaceInput","tags":[],"Class":"BasePart"},{"ValueType":"Vector3","type":"Property","Name":"RotVelocity","tags":[],"Class":"BasePart"},{"ValueType":"Vector3","type":"Property","Name":"Rotation","tags":[],"Class":"BasePart"},{"ValueType":"Vector3","type":"Property","Name":"Size","tags":[],"Class":"BasePart"},{"ValueType":"float","type":"Property","Name":"SpecificGravity","tags":["readonly"],"Class":"BasePart"},{"ValueType":"float","type":"Property","Name":"TopParamA","tags":[],"Class":"BasePart"},{"ValueType":"float","type":"Property","Name":"TopParamB","tags":[],"Class":"BasePart"},{"ValueType":"SurfaceType","type":"Property","Name":"TopSurface","tags":[],"Class":"BasePart"},{"ValueType":"InputType","type":"Property","Name":"TopSurfaceInput","tags":[],"Class":"BasePart"},{"ValueType":"float","type":"Property","Name":"Transparency","tags":[],"Class":"BasePart"},{"ValueType":"Vector3","type":"Property","Name":"Velocity","tags":[],"Class":"BasePart"},{"ValueType":"BrickColor","type":"Property","Name":"brickColor","tags":["deprecated"],"Class":"BasePart"},{"ReturnType":"void","Arguments":[],"Name":"BreakJoints","tags":[],"Class":"BasePart","type":"Function"},{"ReturnType":"Tuple","Arguments":[],"Name":"CanSetNetworkOwnership","tags":[],"Class":"BasePart","type":"Function"},{"ReturnType":"Objects","Arguments":[{"Type":"bool","Name":"recursive","Default":"false"}],"Name":"GetConnectedParts","tags":[],"Class":"BasePart","type":"Function"},{"ReturnType":"float","Arguments":[],"Name":"GetMass","tags":[],"Class":"BasePart","type":"Function"},{"ReturnType":"Instance","Arguments":[],"Name":"GetNetworkOwner","tags":[],"Class":"BasePart","type":"Function"},{"ReturnType":"bool","Arguments":[],"Name":"GetNetworkOwnershipAuto","tags":[],"Class":"BasePart","type":"Function"},{"ReturnType":"CoordinateFrame","Arguments":[],"Name":"GetRenderCFrame","tags":[],"Class":"BasePart","type":"Function"},{"ReturnType":"Instance","Arguments":[],"Name":"GetRootPart","tags":[],"Class":"BasePart","type":"Function"},{"ReturnType":"Objects","Arguments":[],"Name":"GetTouchingParts","tags":[],"Class":"BasePart","type":"Function"},{"ReturnType":"bool","Arguments":[],"Name":"IsGrounded","tags":[],"Class":"BasePart","type":"Function"},{"ReturnType":"void","Arguments":[],"Name":"MakeJoints","tags":[],"Class":"BasePart","type":"Function"},{"ReturnType":"bool","Arguments":[{"Type":"NormalId","Name":"normalId","Default":null},{"Type":"int","Name":"deltaAmount","Default":null}],"Name":"Resize","tags":[],"Class":"BasePart","type":"Function"},{"ReturnType":"void","Arguments":[{"Type":"Instance","Name":"playerInstance","Default":"nil"}],"Name":"SetNetworkOwner","tags":[],"Class":"BasePart","type":"Function"},{"ReturnType":"void","Arguments":[],"Name":"SetNetworkOwnershipAuto","tags":[],"Class":"BasePart","type":"Function"},{"ReturnType":"void","Arguments":[],"Name":"breakJoints","tags":["deprecated"],"Class":"BasePart","type":"Function"},{"ReturnType":"float","Arguments":[],"Name":"getMass","tags":["deprecated"],"Class":"BasePart","type":"Function"},{"ReturnType":"void","Arguments":[],"Name":"makeJoints","tags":["deprecated"],"Class":"BasePart","type":"Function"},{"ReturnType":"bool","Arguments":[{"Type":"NormalId","Name":"normalId","Default":null},{"Type":"int","Name":"deltaAmount","Default":null}],"Name":"resize","tags":["deprecated"],"Class":"BasePart","type":"Function"},{"Arguments":[{"Name":"part","Type":"Instance"}],"Name":"LocalSimulationTouched","tags":["deprecated"],"Class":"BasePart","type":"Event"},{"Arguments":[],"Name":"OutfitChanged","tags":["deprecated"],"Class":"BasePart","type":"Event"},{"Arguments":[{"Name":"otherPart","Type":"Instance"}],"Name":"StoppedTouching","tags":["deprecated"],"Class":"BasePart","type":"Event"},{"Arguments":[{"Name":"otherPart","Type":"Instance"}],"Name":"TouchEnded","tags":[],"Class":"BasePart","type":"Event"},{"Arguments":[{"Name":"otherPart","Type":"Instance"}],"Name":"Touched","tags":[],"Class":"BasePart","type":"Event"},{"Arguments":[{"Name":"otherPart","Type":"Instance"}],"Name":"touched","tags":["deprecated"],"Class":"BasePart","type":"Event"},{"Superclass":"BasePart","type":"Class","Name":"CornerWedgePart","tags":[]},{"Superclass":"BasePart","type":"Class","Name":"FormFactorPart","tags":[]},{"ValueType":"FormFactor","type":"Property","Name":"FormFactor","tags":["deprecated"],"Class":"FormFactorPart"},{"ValueType":"FormFactor","type":"Property","Name":"formFactor","tags":["deprecated","hidden"],"Class":"FormFactorPart"},{"Superclass":"FormFactorPart","type":"Class","Name":"Part","tags":[]},{"ValueType":"PartType","type":"Property","Name":"Shape","tags":[],"Class":"Part"},{"Superclass":"Part","type":"Class","Name":"FlagStand","tags":["deprecated"]},{"ValueType":"BrickColor","type":"Property","Name":"TeamColor","tags":[],"Class":"FlagStand"},{"Arguments":[{"Name":"player","Type":"Instance"}],"Name":"FlagCaptured","tags":[],"Class":"FlagStand","type":"Event"},{"Superclass":"Part","type":"Class","Name":"Platform","tags":[]},{"Superclass":"Part","type":"Class","Name":"Seat","tags":[]},{"ValueType":"bool","type":"Property","Name":"Disabled","tags":[],"Class":"Seat"},{"ValueType":"Object","type":"Property","Name":"Occupant","tags":["readonly"],"Class":"Seat"},{"Superclass":"Part","type":"Class","Name":"SkateboardPlatform","tags":["deprecated"]},{"ValueType":"Object","type":"Property","Name":"Controller","tags":["readonly"],"Class":"SkateboardPlatform"},{"ValueType":"Object","type":"Property","Name":"ControllingHumanoid","tags":["readonly"],"Class":"SkateboardPlatform"},{"ValueType":"int","type":"Property","Name":"Steer","tags":[],"Class":"SkateboardPlatform"},{"ValueType":"bool","type":"Property","Name":"StickyWheels","tags":[],"Class":"SkateboardPlatform"},{"ValueType":"int","type":"Property","Name":"Throttle","tags":[],"Class":"SkateboardPlatform"},{"ReturnType":"void","Arguments":[{"Type":"Vector3","Name":"impulseWorld","Default":null}],"Name":"ApplySpecificImpulse","tags":[],"Class":"SkateboardPlatform","type":"Function"},{"Arguments":[{"Name":"humanoid","Type":"Instance"},{"Name":"skateboardController","Type":"Instance"}],"Name":"Equipped","tags":[],"Class":"SkateboardPlatform","type":"Event"},{"Arguments":[{"Name":"newState","Type":"MoveState"},{"Name":"oldState","Type":"MoveState"}],"Name":"MoveStateChanged","tags":[],"Class":"SkateboardPlatform","type":"Event"},{"Arguments":[{"Name":"humanoid","Type":"Instance"}],"Name":"Unequipped","tags":[],"Class":"SkateboardPlatform","type":"Event"},{"Arguments":[{"Name":"humanoid","Type":"Instance"},{"Name":"skateboardController","Type":"Instance"}],"Name":"equipped","tags":["deprecated"],"Class":"SkateboardPlatform","type":"Event"},{"Arguments":[{"Name":"humanoid","Type":"Instance"}],"Name":"unequipped","tags":["deprecated"],"Class":"SkateboardPlatform","type":"Event"},{"Superclass":"Part","type":"Class","Name":"SpawnLocation","tags":[]},{"ValueType":"bool","type":"Property","Name":"AllowTeamChangeOnTouch","tags":[],"Class":"SpawnLocation"},{"ValueType":"int","type":"Property","Name":"Duration","tags":[],"Class":"SpawnLocation"},{"ValueType":"bool","type":"Property","Name":"Enabled","tags":[],"Class":"SpawnLocation"},{"ValueType":"bool","type":"Property","Name":"Neutral","tags":[],"Class":"SpawnLocation"},{"ValueType":"BrickColor","type":"Property","Name":"TeamColor","tags":[],"Class":"SpawnLocation"},{"Superclass":"FormFactorPart","type":"Class","Name":"WedgePart","tags":[]},{"Superclass":"BasePart","type":"Class","Name":"MeshPart","tags":[]},{"ValueType":"Material","type":"Property","Name":"Material","tags":["deprecated","readonly"],"Class":"MeshPart"},{"ValueType":"Content","type":"Property","Name":"TextureID","tags":[],"Class":"MeshPart"},{"Superclass":"BasePart","type":"Class","Name":"ParallelRampPart","tags":["deprecated","notbrowsable"]},{"Superclass":"BasePart","type":"Class","Name":"PartOperation","tags":[]},{"ValueType":"bool","type":"Property","Name":"UsePartColor","tags":[],"Class":"PartOperation"},{"Superclass":"PartOperation","type":"Class","Name":"NegateOperation","tags":[]},{"Superclass":"PartOperation","type":"Class","Name":"UnionOperation","tags":[]},{"Superclass":"BasePart","type":"Class","Name":"PrismPart","tags":["deprecated","notbrowsable"]},{"ValueType":"PrismSides","type":"Property","Name":"Sides","tags":[],"Class":"PrismPart"},{"Superclass":"BasePart","type":"Class","Name":"PyramidPart","tags":["deprecated","notbrowsable"]},{"ValueType":"PyramidSides","type":"Property","Name":"Sides","tags":[],"Class":"PyramidPart"},{"Superclass":"BasePart","type":"Class","Name":"RightAngleRampPart","tags":["deprecated","notbrowsable"]},{"Superclass":"BasePart","type":"Class","Name":"Terrain","tags":["notCreatable"]},{"ValueType":"bool","type":"Property","Name":"IsSmooth","tags":["readonly"],"Class":"Terrain"},{"ValueType":"Region3int16","type":"Property","Name":"MaxExtents","tags":["readonly"],"Class":"Terrain"},{"ValueType":"Color3","type":"Property","Name":"WaterColor","tags":[],"Class":"Terrain"},{"ValueType":"float","type":"Property","Name":"WaterTransparency","tags":[],"Class":"Terrain"},{"ValueType":"float","type":"Property","Name":"WaterWaveSize","tags":[],"Class":"Terrain"},{"ValueType":"float","type":"Property","Name":"WaterWaveSpeed","tags":[],"Class":"Terrain"},{"ReturnType":"bool","Arguments":[{"Type":"int","Name":"x","Default":null},{"Type":"int","Name":"y","Default":null},{"Type":"int","Name":"z","Default":null}],"Name":"AutowedgeCell","tags":[],"Class":"Terrain","type":"Function"},{"ReturnType":"void","Arguments":[{"Type":"Region3int16","Name":"region","Default":null}],"Name":"AutowedgeCells","tags":[],"Class":"Terrain","type":"Function"},{"ReturnType":"Vector3","Arguments":[{"Type":"int","Name":"x","Default":null},{"Type":"int","Name":"y","Default":null},{"Type":"int","Name":"z","Default":null}],"Name":"CellCenterToWorld","tags":[],"Class":"Terrain","type":"Function"},{"ReturnType":"Vector3","Arguments":[{"Type":"int","Name":"x","Default":null},{"Type":"int","Name":"y","Default":null},{"Type":"int","Name":"z","Default":null}],"Name":"CellCornerToWorld","tags":[],"Class":"Terrain","type":"Function"},{"ReturnType":"void","Arguments":[],"Name":"Clear","tags":[],"Class":"Terrain","type":"Function"},{"ReturnType":"void","Arguments":[],"Name":"ConvertToSmooth","tags":["PluginSecurity"],"Class":"Terrain","type":"Function"},{"ReturnType":"Instance","Arguments":[{"Type":"Region3int16","Name":"region","Default":null}],"Name":"CopyRegion","tags":[],"Class":"Terrain","type":"Function"},{"ReturnType":"int","Arguments":[],"Name":"CountCells","tags":[],"Class":"Terrain","type":"Function"},{"ReturnType":"void","Arguments":[{"Type":"Vector3","Name":"center","Default":null},{"Type":"float","Name":"radius","Default":null},{"Type":"Material","Name":"material","Default":null}],"Name":"FillBall","tags":[],"Class":"Terrain","type":"Function"},{"ReturnType":"void","Arguments":[{"Type":"CoordinateFrame","Name":"cframe","Default":null},{"Type":"Vector3","Name":"size","Default":null},{"Type":"Material","Name":"material","Default":null}],"Name":"FillBlock","tags":[],"Class":"Terrain","type":"Function"},{"ReturnType":"void","Arguments":[{"Type":"Region3","Name":"region","Default":null},{"Type":"float","Name":"resolution","Default":null},{"Type":"Material","Name":"material","Default":null}],"Name":"FillRegion","tags":[],"Class":"Terrain","type":"Function"},{"ReturnType":"Tuple","Arguments":[{"Type":"int","Name":"x","Default":null},{"Type":"int","Name":"y","Default":null},{"Type":"int","Name":"z","Default":null}],"Name":"GetCell","tags":[],"Class":"Terrain","type":"Function"},{"ReturnType":"Tuple","Arguments":[{"Type":"int","Name":"x","Default":null},{"Type":"int","Name":"y","Default":null},{"Type":"int","Name":"z","Default":null}],"Name":"GetWaterCell","tags":[],"Class":"Terrain","type":"Function"},{"ReturnType":"void","Arguments":[{"Type":"Instance","Name":"region","Default":null},{"Type":"Vector3int16","Name":"corner","Default":null},{"Type":"bool","Name":"pasteEmptyCells","Default":null}],"Name":"PasteRegion","tags":[],"Class":"Terrain","type":"Function"},{"ReturnType":"Tuple","Arguments":[{"Type":"Region3","Name":"region","Default":null},{"Type":"float","Name":"resolution","Default":null}],"Name":"ReadVoxels","tags":[],"Class":"Terrain","type":"Function"},{"ReturnType":"void","Arguments":[{"Type":"int","Name":"x","Default":null},{"Type":"int","Name":"y","Default":null},{"Type":"int","Name":"z","Default":null},{"Type":"CellMaterial","Name":"material","Default":null},{"Type":"CellBlock","Name":"block","Default":null},{"Type":"CellOrientation","Name":"orientation","Default":null}],"Name":"SetCell","tags":[],"Class":"Terrain","type":"Function"},{"ReturnType":"void","Arguments":[{"Type":"Region3int16","Name":"region","Default":null},{"Type":"CellMaterial","Name":"material","Default":null},{"Type":"CellBlock","Name":"block","Default":null},{"Type":"CellOrientation","Name":"orientation","Default":null}],"Name":"SetCells","tags":[],"Class":"Terrain","type":"Function"},{"ReturnType":"void","Arguments":[{"Type":"int","Name":"x","Default":null},{"Type":"int","Name":"y","Default":null},{"Type":"int","Name":"z","Default":null},{"Type":"WaterForce","Name":"force","Default":null},{"Type":"WaterDirection","Name":"direction","Default":null}],"Name":"SetWaterCell","tags":[],"Class":"Terrain","type":"Function"},{"ReturnType":"Vector3","Arguments":[{"Type":"Vector3","Name":"position","Default":null}],"Name":"WorldToCell","tags":[],"Class":"Terrain","type":"Function"},{"ReturnType":"Vector3","Arguments":[{"Type":"Vector3","Name":"position","Default":null}],"Name":"WorldToCellPreferEmpty","tags":[],"Class":"Terrain","type":"Function"},{"ReturnType":"Vector3","Arguments":[{"Type":"Vector3","Name":"position","Default":null}],"Name":"WorldToCellPreferSolid","tags":[],"Class":"Terrain","type":"Function"},{"ReturnType":"void","Arguments":[{"Type":"Region3","Name":"region","Default":null},{"Type":"float","Name":"resolution","Default":null},{"Type":"Array","Name":"materials","Default":null},{"Type":"Array","Name":"occupancy","Default":null}],"Name":"WriteVoxels","tags":[],"Class":"Terrain","type":"Function"},{"Superclass":"BasePart","type":"Class","Name":"TrussPart","tags":[]},{"ValueType":"Style","type":"Property","Name":"Style","tags":[],"Class":"TrussPart"},{"Superclass":"BasePart","type":"Class","Name":"VehicleSeat","tags":[]},{"ValueType":"int","type":"Property","Name":"AreHingesDetected","tags":["readonly"],"Class":"VehicleSeat"},{"ValueType":"bool","type":"Property","Name":"Disabled","tags":[],"Class":"VehicleSeat"},{"ValueType":"bool","type":"Property","Name":"HeadsUpDisplay","tags":[],"Class":"VehicleSeat"},{"ValueType":"float","type":"Property","Name":"MaxSpeed","tags":[],"Class":"VehicleSeat"},{"ValueType":"Object","type":"Property","Name":"Occupant","tags":["readonly"],"Class":"VehicleSeat"},{"ValueType":"int","type":"Property","Name":"Steer","tags":[],"Class":"VehicleSeat"},{"ValueType":"int","type":"Property","Name":"Throttle","tags":[],"Class":"VehicleSeat"},{"ValueType":"float","type":"Property","Name":"Torque","tags":[],"Class":"VehicleSeat"},{"ValueType":"float","type":"Property","Name":"TurnSpeed","tags":[],"Class":"VehicleSeat"},{"Superclass":"PVInstance","type":"Class","Name":"Model","tags":[]},{"ValueType":"Object","type":"Property","Name":"PrimaryPart","tags":[],"Class":"Model"},{"ReturnType":"void","Arguments":[],"Name":"BreakJoints","tags":[],"Class":"Model","type":"Function"},{"ReturnType":"Vector3","Arguments":[],"Name":"GetExtentsSize","tags":[],"Class":"Model","type":"Function"},{"ReturnType":"CoordinateFrame","Arguments":[],"Name":"GetModelCFrame","tags":["deprecated"],"Class":"Model","type":"Function"},{"ReturnType":"Vector3","Arguments":[],"Name":"GetModelSize","tags":["deprecated"],"Class":"Model","type":"Function"},{"ReturnType":"CoordinateFrame","Arguments":[],"Name":"GetPrimaryPartCFrame","tags":[],"Class":"Model","type":"Function"},{"ReturnType":"void","Arguments":[],"Name":"MakeJoints","tags":[],"Class":"Model","type":"Function"},{"ReturnType":"void","Arguments":[{"Type":"Vector3","Name":"position","Default":null}],"Name":"MoveTo","tags":[],"Class":"Model","type":"Function"},{"ReturnType":"void","Arguments":[],"Name":"ResetOrientationToIdentity","tags":["deprecated"],"Class":"Model","type":"Function"},{"ReturnType":"void","Arguments":[],"Name":"SetIdentityOrientation","tags":["deprecated"],"Class":"Model","type":"Function"},{"ReturnType":"void","Arguments":[{"Type":"CoordinateFrame","Name":"cframe","Default":null}],"Name":"SetPrimaryPartCFrame","tags":[],"Class":"Model","type":"Function"},{"ReturnType":"void","Arguments":[{"Type":"Vector3","Name":"delta","Default":null}],"Name":"TranslateBy","tags":[],"Class":"Model","type":"Function"},{"ReturnType":"void","Arguments":[],"Name":"breakJoints","tags":["deprecated"],"Class":"Model","type":"Function"},{"ReturnType":"void","Arguments":[],"Name":"makeJoints","tags":["deprecated"],"Class":"Model","type":"Function"},{"ReturnType":"void","Arguments":[{"Type":"Vector3","Name":"location","Default":null}],"Name":"move","tags":["deprecated"],"Class":"Model","type":"Function"},{"ReturnType":"void","Arguments":[{"Type":"Vector3","Name":"location","Default":null}],"Name":"moveTo","tags":["deprecated"],"Class":"Model","type":"Function"},{"Superclass":"Model","type":"Class","Name":"RootInstance","tags":["notbrowsable"]},{"Superclass":"RootInstance","type":"Class","Name":"Workspace","tags":[]},{"ValueType":"bool","type":"Property","Name":"AllowThirdPartySales","tags":[],"Class":"Workspace"},{"ValueType":"Object","type":"Property","Name":"CurrentCamera","tags":[],"Class":"Workspace"},{"ValueType":"double","type":"Property","Name":"DistributedGameTime","tags":[],"Class":"Workspace"},{"ValueType":"bool","type":"Property","Name":"FilteringEnabled","tags":[],"Class":"Workspace"},{"ValueType":"float","type":"Property","Name":"Gravity","tags":[],"Class":"Workspace"},{"ValueType":"bool","type":"Property","Name":"StreamingEnabled","tags":[],"Class":"Workspace"},{"ValueType":"Object","type":"Property","Name":"Terrain","tags":["readonly"],"Class":"Workspace"},{"ReturnType":"void","Arguments":[{"Type":"Objects","Name":"objects","Default":null}],"Name":"BreakJoints","tags":["PluginSecurity"],"Class":"Workspace","type":"Function"},{"ReturnType":"bool","Arguments":[],"Name":"ExperimentalSolverIsEnabled","tags":["LocalUserSecurity"],"Class":"Workspace","type":"Function"},{"ReturnType":"Tuple","Arguments":[{"Type":"Ray","Name":"ray","Default":null},{"Type":"Instance","Name":"ignoreDescendentsInstance","Default":"nil"},{"Type":"bool","Name":"terrainCellsAreCubes","Default":"false"},{"Type":"bool","Name":"ignoreWater","Default":"false"}],"Name":"FindPartOnRay","tags":[],"Class":"Workspace","type":"Function"},{"ReturnType":"Tuple","Arguments":[{"Type":"Ray","Name":"ray","Default":null},{"Type":"Objects","Name":"ignoreDescendentsTable","Default":null},{"Type":"bool","Name":"terrainCellsAreCubes","Default":"false"},{"Type":"bool","Name":"ignoreWater","Default":"false"}],"Name":"FindPartOnRayWithIgnoreList","tags":[],"Class":"Workspace","type":"Function"},{"ReturnType":"Objects","Arguments":[{"Type":"Region3","Name":"region","Default":null},{"Type":"Instance","Name":"ignoreDescendentsInstance","Default":"nil"},{"Type":"int","Name":"maxParts","Default":"20"}],"Name":"FindPartsInRegion3","tags":[],"Class":"Workspace","type":"Function"},{"ReturnType":"Objects","Arguments":[{"Type":"Region3","Name":"region","Default":null},{"Type":"Objects","Name":"ignoreDescendentsTable","Default":null},{"Type":"int","Name":"maxParts","Default":"20"}],"Name":"FindPartsInRegion3WithIgnoreList","tags":[],"Class":"Workspace","type":"Function"},{"ReturnType":"int","Arguments":[],"Name":"GetNumAwakeParts","tags":[],"Class":"Workspace","type":"Function"},{"ReturnType":"bool","Arguments":[],"Name":"GetPhysicsAnalyzerBreakOnIssue","tags":["PluginSecurity"],"Class":"Workspace","type":"Function"},{"ReturnType":"Objects","Arguments":[{"Type":"int","Name":"index","Default":null}],"Name":"GetPhysicsAnalyzerIssue","tags":["PluginSecurity"],"Class":"Workspace","type":"Function"},{"ReturnType":"int","Arguments":[],"Name":"GetPhysicsThrottling","tags":[],"Class":"Workspace","type":"Function"},{"ReturnType":"double","Arguments":[],"Name":"GetRealPhysicsFPS","tags":[],"Class":"Workspace","type":"Function"},{"ReturnType":"bool","Arguments":[{"Type":"Region3","Name":"region","Default":null},{"Type":"Instance","Name":"ignoreDescendentsInstance","Default":"nil"}],"Name":"IsRegion3Empty","tags":[],"Class":"Workspace","type":"Function"},{"ReturnType":"bool","Arguments":[{"Type":"Region3","Name":"region","Default":null},{"Type":"Objects","Name":"ignoreDescendentsTable","Default":null}],"Name":"IsRegion3EmptyWithIgnoreList","tags":[],"Class":"Workspace","type":"Function"},{"ReturnType":"void","Arguments":[{"Type":"Objects","Name":"objects","Default":null},{"Type":"JointCreationMode","Name":"jointType","Default":null}],"Name":"JoinToOutsiders","tags":[],"Class":"Workspace","type":"Function"},{"ReturnType":"void","Arguments":[{"Type":"Objects","Name":"objects","Default":null}],"Name":"MakeJoints","tags":["PluginSecurity"],"Class":"Workspace","type":"Function"},{"ReturnType":"bool","Arguments":[],"Name":"PGSIsEnabled","tags":[],"Class":"Workspace","type":"Function"},{"ReturnType":"void","Arguments":[{"Type":"bool","Name":"enable","Default":null}],"Name":"SetPhysicsAnalyzerBreakOnIssue","tags":["PluginSecurity"],"Class":"Workspace","type":"Function"},{"ReturnType":"void","Arguments":[{"Type":"bool","Name":"value","Default":null}],"Name":"SetPhysicsThrottleEnabled","tags":["LocalUserSecurity"],"Class":"Workspace","type":"Function"},{"ReturnType":"void","Arguments":[{"Type":"Objects","Name":"objects","Default":null}],"Name":"UnjoinFromOutsiders","tags":[],"Class":"Workspace","type":"Function"},{"ReturnType":"void","Arguments":[],"Name":"ZoomToExtents","tags":["PluginSecurity"],"Class":"Workspace","type":"Function"},{"ReturnType":"Tuple","Arguments":[{"Type":"Ray","Name":"ray","Default":null},{"Type":"Instance","Name":"ignoreDescendentsInstance","Default":"nil"},{"Type":"bool","Name":"terrainCellsAreCubes","Default":"false"},{"Type":"bool","Name":"ignoreWater","Default":"false"}],"Name":"findPartOnRay","tags":["deprecated"],"Class":"Workspace","type":"Function"},{"ReturnType":"Objects","Arguments":[{"Type":"Region3","Name":"region","Default":null},{"Type":"Instance","Name":"ignoreDescendentsInstance","Default":"nil"},{"Type":"int","Name":"maxParts","Default":"20"}],"Name":"findPartsInRegion3","tags":["deprecated"],"Class":"Workspace","type":"Function"},{"Arguments":[{"Name":"count","Type":"int"}],"Name":"PhysicsAnalyzerIssuesFound","tags":["PluginSecurity"],"Class":"Workspace","type":"Event"},{"Superclass":"Model","type":"Class","Name":"Status","tags":["deprecated","notCreatable"]},{"Superclass":"Instance","type":"Class","Name":"Pages","tags":[]},{"ValueType":"bool","type":"Property","Name":"IsFinished","tags":["readonly"],"Class":"Pages"},{"ReturnType":"Array","Arguments":[],"Name":"GetCurrentPage","tags":[],"Class":"Pages","type":"Function"},{"ReturnType":"void","Arguments":[],"Name":"AdvanceToNextPageAsync","tags":[],"Class":"Pages","type":"YieldFunction"},{"Superclass":"Pages","type":"Class","Name":"DataStorePages","tags":[]},{"Superclass":"Pages","type":"Class","Name":"FriendPages","tags":[]},{"Superclass":"Pages","type":"Class","Name":"StandardPages","tags":[]},{"Superclass":"Instance","type":"Class","Name":"PartOperationAsset","tags":[]},{"Superclass":"Instance","type":"Class","Name":"ParticleEmitter","tags":[]},{"ValueType":"Vector3","type":"Property","Name":"Acceleration","tags":[],"Class":"ParticleEmitter"},{"ValueType":"ColorSequence","type":"Property","Name":"Color","tags":[],"Class":"ParticleEmitter"},{"ValueType":"float","type":"Property","Name":"Drag","tags":[],"Class":"ParticleEmitter"},{"ValueType":"NormalId","type":"Property","Name":"EmissionDirection","tags":[],"Class":"ParticleEmitter"},{"ValueType":"bool","type":"Property","Name":"Enabled","tags":[],"Class":"ParticleEmitter"},{"ValueType":"NumberRange","type":"Property","Name":"Lifetime","tags":[],"Class":"ParticleEmitter"},{"ValueType":"float","type":"Property","Name":"LightEmission","tags":[],"Class":"ParticleEmitter"},{"ValueType":"bool","type":"Property","Name":"LockedToPart","tags":[],"Class":"ParticleEmitter"},{"ValueType":"float","type":"Property","Name":"Rate","tags":[],"Class":"ParticleEmitter"},{"ValueType":"NumberRange","type":"Property","Name":"RotSpeed","tags":[],"Class":"ParticleEmitter"},{"ValueType":"NumberRange","type":"Property","Name":"Rotation","tags":[],"Class":"ParticleEmitter"},{"ValueType":"NumberSequence","type":"Property","Name":"Size","tags":[],"Class":"ParticleEmitter"},{"ValueType":"NumberRange","type":"Property","Name":"Speed","tags":[],"Class":"ParticleEmitter"},{"ValueType":"Content","type":"Property","Name":"Texture","tags":[],"Class":"ParticleEmitter"},{"ValueType":"NumberSequence","type":"Property","Name":"Transparency","tags":[],"Class":"ParticleEmitter"},{"ValueType":"float","type":"Property","Name":"VelocityInheritance","tags":[],"Class":"ParticleEmitter"},{"ValueType":"float","type":"Property","Name":"VelocitySpread","tags":[],"Class":"ParticleEmitter"},{"ValueType":"float","type":"Property","Name":"ZOffset","tags":[],"Class":"ParticleEmitter"},{"ReturnType":"void","Arguments":[{"Type":"int","Name":"particleCount","Default":"16"}],"Name":"Emit","tags":[],"Class":"ParticleEmitter","type":"Function"},{"Superclass":"Instance","type":"Class","Name":"Path","tags":[]},{"ValueType":"PathStatus","type":"Property","Name":"Status","tags":["readonly"],"Class":"Path"},{"ReturnType":"Array","Arguments":[],"Name":"GetPointCoordinates","tags":[],"Class":"Path","type":"Function"},{"ReturnType":"int","Arguments":[{"Type":"int","Name":"start","Default":null}],"Name":"CheckOcclusionAsync","tags":[],"Class":"Path","type":"YieldFunction"},{"Superclass":"Instance","type":"Class","Name":"PathfindingService","tags":["notCreatable"]},{"ValueType":"float","type":"Property","Name":"EmptyCutoff","tags":[],"Class":"PathfindingService"},{"ReturnType":"Instance","Arguments":[{"Type":"Vector3","Name":"start","Default":null},{"Type":"Vector3","Name":"finish","Default":null},{"Type":"float","Name":"maxDistance","Default":null}],"Name":"ComputeRawPathAsync","tags":[],"Class":"PathfindingService","type":"YieldFunction"},{"ReturnType":"Instance","Arguments":[{"Type":"Vector3","Name":"start","Default":null},{"Type":"Vector3","Name":"finish","Default":null},{"Type":"float","Name":"maxDistance","Default":null}],"Name":"ComputeSmoothPathAsync","tags":[],"Class":"PathfindingService","type":"YieldFunction"},{"Superclass":"Instance","type":"Class","Name":"PersonalServerService","tags":[]},{"ValueType":"string","type":"Property","Name":"RoleSets","tags":["RobloxScriptSecurity"],"Class":"PersonalServerService"},{"ReturnType":"void","Arguments":[{"Type":"Instance","Name":"player","Default":null}],"Name":"Demote","tags":["RobloxScriptSecurity"],"Class":"PersonalServerService","type":"Function"},{"ReturnType":"void","Arguments":[{"Type":"Instance","Name":"player","Default":null}],"Name":"Promote","tags":["RobloxScriptSecurity"],"Class":"PersonalServerService","type":"Function"},{"ReturnType":"void","Arguments":[{"Type":"string","Name":"personalServerGetRankUrl","Default":null}],"Name":"SetPersonalServerGetRankUrl","tags":["LocalUserSecurity"],"Class":"PersonalServerService","type":"Function"},{"ReturnType":"void","Arguments":[{"Type":"string","Name":"personalServerRoleSetsUrl","Default":null}],"Name":"SetPersonalServerRoleSetsUrl","tags":["LocalUserSecurity"],"Class":"PersonalServerService","type":"Function"},{"ReturnType":"void","Arguments":[{"Type":"string","Name":"personalServerSetRankUrl","Default":null}],"Name":"SetPersonalServerSetRankUrl","tags":["LocalUserSecurity"],"Class":"PersonalServerService","type":"Function"},{"ReturnType":"string","Arguments":[{"Type":"int","Name":"placeId","Default":null}],"Name":"GetRoleSets","tags":["RobloxScriptSecurity"],"Class":"PersonalServerService","type":"YieldFunction"},{"Superclass":"Instance","type":"Class","Name":"PhysicsPacketCache","tags":[]},{"Superclass":"Instance","type":"Class","Name":"PhysicsService","tags":[]},{"Superclass":"Instance","type":"Class","Name":"PhysicsSettings","tags":[]},{"ValueType":"bool","type":"Property","Name":"AllowSleep","tags":[],"Class":"PhysicsSettings"},{"ValueType":"bool","type":"Property","Name":"AreAnchorsShown","tags":[],"Class":"PhysicsSettings"},{"ValueType":"bool","type":"Property","Name":"AreAssembliesShown","tags":[],"Class":"PhysicsSettings"},{"ValueType":"bool","type":"Property","Name":"AreAttachmentsShown","tags":[],"Class":"PhysicsSettings"},{"ValueType":"bool","type":"Property","Name":"AreAwakePartsHighlighted","tags":[],"Class":"PhysicsSettings"},{"ValueType":"bool","type":"Property","Name":"AreBodyTypesShown","tags":[],"Class":"PhysicsSettings"},{"ValueType":"bool","type":"Property","Name":"AreConstraintsShown","tags":[],"Class":"PhysicsSettings"},{"ValueType":"bool","type":"Property","Name":"AreContactPointsShown","tags":[],"Class":"PhysicsSettings"},{"ValueType":"bool","type":"Property","Name":"AreJointCoordinatesShown","tags":[],"Class":"PhysicsSettings"},{"ValueType":"bool","type":"Property","Name":"AreMechanismsShown","tags":[],"Class":"PhysicsSettings"},{"ValueType":"bool","type":"Property","Name":"AreModelCoordsShown","tags":[],"Class":"PhysicsSettings"},{"ValueType":"bool","type":"Property","Name":"AreOwnersShown","tags":[],"Class":"PhysicsSettings"},{"ValueType":"bool","type":"Property","Name":"ArePartCoordsShown","tags":[],"Class":"PhysicsSettings"},{"ValueType":"bool","type":"Property","Name":"AreRegionsShown","tags":[],"Class":"PhysicsSettings"},{"ValueType":"bool","type":"Property","Name":"AreUnalignedPartsShown","tags":[],"Class":"PhysicsSettings"},{"ValueType":"bool","type":"Property","Name":"AreWorldCoordsShown","tags":[],"Class":"PhysicsSettings"},{"ValueType":"bool","type":"Property","Name":"IsReceiveAgeShown","tags":[],"Class":"PhysicsSettings"},{"ValueType":"bool","type":"Property","Name":"IsTreeShown","tags":[],"Class":"PhysicsSettings"},{"ValueType":"bool","type":"Property","Name":"ParallelPhysics","tags":[],"Class":"PhysicsSettings"},{"ValueType":"bool","type":"Property","Name":"PhysicsAnalyzerEnabled","tags":["PluginSecurity","readonly"],"Class":"PhysicsSettings"},{"ValueType":"EnviromentalPhysicsThrottle","type":"Property","Name":"PhysicsEnvironmentalThrottle","tags":[],"Class":"PhysicsSettings"},{"ValueType":"bool","type":"Property","Name":"ShowDecompositionGeometry","tags":[],"Class":"PhysicsSettings"},{"ValueType":"double","type":"Property","Name":"ThrottleAdjustTime","tags":[],"Class":"PhysicsSettings"},{"Superclass":"Instance","type":"Class","Name":"Player","tags":[]},{"ValueType":"int","type":"Property","Name":"AccountAge","tags":["readonly"],"Class":"Player"},{"ValueType":"bool","type":"Property","Name":"AppearanceDidLoad","tags":["RobloxScriptSecurity","deprecated","readonly"],"Class":"Player"},{"ValueType":"bool","type":"Property","Name":"AutoJumpEnabled","tags":[],"Class":"Player"},{"ValueType":"float","type":"Property","Name":"CameraMaxZoomDistance","tags":[],"Class":"Player"},{"ValueType":"float","type":"Property","Name":"CameraMinZoomDistance","tags":[],"Class":"Player"},{"ValueType":"CameraMode","type":"Property","Name":"CameraMode","tags":[],"Class":"Player"},{"ValueType":"bool","type":"Property","Name":"CanLoadCharacterAppearance","tags":[],"Class":"Player"},{"ValueType":"Object","type":"Property","Name":"Character","tags":[],"Class":"Player"},{"ValueType":"string","type":"Property","Name":"CharacterAppearance","tags":["notbrowsable"],"Class":"Player"},{"ValueType":"ChatMode","type":"Property","Name":"ChatMode","tags":["RobloxScriptSecurity","readonly"],"Class":"Player"},{"ValueType":"int","type":"Property","Name":"DataComplexity","tags":["readonly"],"Class":"Player"},{"ValueType":"int","type":"Property","Name":"DataComplexityLimit","tags":["LocalUserSecurity"],"Class":"Player"},{"ValueType":"bool","type":"Property","Name":"DataReady","tags":["readonly"],"Class":"Player"},{"ValueType":"DevCameraOcclusionMode","type":"Property","Name":"DevCameraOcclusionMode","tags":[],"Class":"Player"},{"ValueType":"DevComputerCameraMovementMode","type":"Property","Name":"DevComputerCameraMode","tags":[],"Class":"Player"},{"ValueType":"DevComputerMovementMode","type":"Property","Name":"DevComputerMovementMode","tags":[],"Class":"Player"},{"ValueType":"bool","type":"Property","Name":"DevEnableMouseLock","tags":[],"Class":"Player"},{"ValueType":"DevTouchCameraMovementMode","type":"Property","Name":"DevTouchCameraMode","tags":[],"Class":"Player"},{"ValueType":"DevTouchMovementMode","type":"Property","Name":"DevTouchMovementMode","tags":[],"Class":"Player"},{"ValueType":"int","type":"Property","Name":"FollowUserId","tags":["readonly"],"Class":"Player"},{"ValueType":"bool","type":"Property","Name":"Guest","tags":["RobloxScriptSecurity","readonly"],"Class":"Player"},{"ValueType":"bool","type":"Property","Name":"HasBuildTools","tags":["RobloxScriptSecurity"],"Class":"Player"},{"ValueType":"float","type":"Property","Name":"HealthDisplayDistance","tags":[],"Class":"Player"},{"ValueType":"float","type":"Property","Name":"MaximumSimulationRadius","tags":["LocalUserSecurity"],"Class":"Player"},{"ValueType":"MembershipType","type":"Property","Name":"MembershipType","tags":["readonly"],"Class":"Player"},{"ValueType":"float","type":"Property","Name":"NameDisplayDistance","tags":[],"Class":"Player"},{"ValueType":"bool","type":"Property","Name":"Neutral","tags":[],"Class":"Player"},{"ValueType":"int","type":"Property","Name":"PersonalServerRank","tags":["RobloxScriptSecurity"],"Class":"Player"},{"ValueType":"Object","type":"Property","Name":"RespawnLocation","tags":[],"Class":"Player"},{"ValueType":"float","type":"Property","Name":"SimulationRadius","tags":["LocalUserSecurity"],"Class":"Player"},{"ValueType":"BrickColor","type":"Property","Name":"TeamColor","tags":[],"Class":"Player"},{"ValueType":"bool","type":"Property","Name":"Teleported","tags":["RobloxScriptSecurity","hidden","readonly"],"Class":"Player"},{"ValueType":"bool","type":"Property","Name":"TeleportedIn","tags":["RobloxScriptSecurity"],"Class":"Player"},{"ValueType":"int","type":"Property","Name":"UserId","tags":[],"Class":"Player"},{"ValueType":"string","type":"Property","Name":"VRDevice","tags":["RobloxScriptSecurity"],"Class":"Player"},{"ValueType":"int","type":"Property","Name":"userId","tags":["deprecated"],"Class":"Player"},{"ReturnType":"void","Arguments":[],"Name":"ClearCharacterAppearance","tags":[],"Class":"Player","type":"Function"},{"ReturnType":"float","Arguments":[{"Type":"Vector3","Name":"point","Default":null}],"Name":"DistanceFromCharacter","tags":[],"Class":"Player","type":"Function"},{"ReturnType":"FriendStatus","Arguments":[{"Type":"Instance","Name":"player","Default":null}],"Name":"GetFriendStatus","tags":["RobloxScriptSecurity"],"Class":"Player","type":"Function"},{"ReturnType":"string","Arguments":[],"Name":"GetGameSessionID","tags":["RobloxSecurity"],"Class":"Player","type":"Function"},{"ReturnType":"Instance","Arguments":[],"Name":"GetMouse","tags":[],"Class":"Player","type":"Function"},{"ReturnType":"bool","Arguments":[],"Name":"GetUnder13","tags":["RobloxScriptSecurity"],"Class":"Player","type":"Function"},{"ReturnType":"bool","Arguments":[],"Name":"HasAppearanceLoaded","tags":[],"Class":"Player","type":"Function"},{"ReturnType":"void","Arguments":[],"Name":"JumpCharacter","tags":["RobloxScriptSecurity"],"Class":"Player","type":"Function"},{"ReturnType":"void","Arguments":[{"Type":"string","Name":"message","Default":""}],"Name":"Kick","tags":[],"Class":"Player","type":"Function"},{"ReturnType":"bool","Arguments":[{"Type":"string","Name":"key","Default":null}],"Name":"LoadBoolean","tags":[],"Class":"Player","type":"Function"},{"ReturnType":"void","Arguments":[{"Type":"bool","Name":"inGame","Default":"true"}],"Name":"LoadCharacter","tags":[],"Class":"Player","type":"Function"},{"ReturnType":"void","Arguments":[{"Type":"Instance","Name":"assetInstance","Default":null}],"Name":"LoadCharacterAppearance","tags":[],"Class":"Player","type":"Function"},{"ReturnType":"void","Arguments":[],"Name":"LoadData","tags":["LocalUserSecurity"],"Class":"Player","type":"Function"},{"ReturnType":"Instance","Arguments":[{"Type":"string","Name":"key","Default":null}],"Name":"LoadInstance","tags":[],"Class":"Player","type":"Function"},{"ReturnType":"double","Arguments":[{"Type":"string","Name":"key","Default":null}],"Name":"LoadNumber","tags":[],"Class":"Player","type":"Function"},{"ReturnType":"string","Arguments":[{"Type":"string","Name":"key","Default":null}],"Name":"LoadString","tags":[],"Class":"Player","type":"Function"},{"ReturnType":"void","Arguments":[{"Type":"Vector3","Name":"walkDirection","Default":null},{"Type":"bool","Name":"relativeToCamera","Default":"false"}],"Name":"Move","tags":[],"Class":"Player","type":"Function"},{"ReturnType":"void","Arguments":[{"Type":"Vector2","Name":"walkDirection","Default":null},{"Type":"float","Name":"maxWalkDelta","Default":null}],"Name":"MoveCharacter","tags":["RobloxScriptSecurity"],"Class":"Player","type":"Function"},{"ReturnType":"void","Arguments":[],"Name":"RemoveCharacter","tags":["LocalUserSecurity"],"Class":"Player","type":"Function"},{"ReturnType":"void","Arguments":[{"Type":"Instance","Name":"player","Default":null}],"Name":"RequestFriendship","tags":["RobloxScriptSecurity"],"Class":"Player","type":"Function"},{"ReturnType":"void","Arguments":[{"Type":"Instance","Name":"player","Default":null}],"Name":"RevokeFriendship","tags":["RobloxScriptSecurity"],"Class":"Player","type":"Function"},{"ReturnType":"void","Arguments":[{"Type":"string","Name":"key","Default":null},{"Type":"bool","Name":"value","Default":null}],"Name":"SaveBoolean","tags":[],"Class":"Player","type":"Function"},{"ReturnType":"void","Arguments":[],"Name":"SaveData","tags":["LocalUserSecurity"],"Class":"Player","type":"Function"},{"ReturnType":"void","Arguments":[{"Type":"string","Name":"key","Default":null},{"Type":"Instance","Name":"value","Default":null}],"Name":"SaveInstance","tags":[],"Class":"Player","type":"Function"},{"ReturnType":"void","Arguments":[],"Name":"SaveLeaderboardData","tags":["LocalUserSecurity"],"Class":"Player","type":"Function"},{"ReturnType":"void","Arguments":[{"Type":"string","Name":"key","Default":null},{"Type":"double","Name":"value","Default":null}],"Name":"SaveNumber","tags":[],"Class":"Player","type":"Function"},{"ReturnType":"void","Arguments":[{"Type":"string","Name":"key","Default":null},{"Type":"string","Name":"value","Default":null}],"Name":"SaveString","tags":[],"Class":"Player","type":"Function"},{"ReturnType":"void","Arguments":[{"Type":"int","Name":"accountAge","Default":null}],"Name":"SetAccountAge","tags":["PluginSecurity"],"Class":"Player","type":"Function"},{"ReturnType":"void","Arguments":[{"Type":"MembershipType","Name":"membershipType","Default":null}],"Name":"SetMembershipType","tags":["RobloxScriptSecurity"],"Class":"Player","type":"Function"},{"ReturnType":"void","Arguments":[{"Type":"bool","Name":"value","Default":null}],"Name":"SetSuperSafeChat","tags":["PluginSecurity"],"Class":"Player","type":"Function"},{"ReturnType":"void","Arguments":[{"Type":"bool","Name":"value","Default":null}],"Name":"SetUnder13","tags":["RobloxSecurity","deprecated"],"Class":"Player","type":"Function"},{"ReturnType":"bool","Arguments":[{"Type":"string","Name":"key","Default":null}],"Name":"loadBoolean","tags":["deprecated"],"Class":"Player","type":"Function"},{"ReturnType":"Instance","Arguments":[{"Type":"string","Name":"key","Default":null}],"Name":"loadInstance","tags":["deprecated"],"Class":"Player","type":"Function"},{"ReturnType":"double","Arguments":[{"Type":"string","Name":"key","Default":null}],"Name":"loadNumber","tags":["deprecated"],"Class":"Player","type":"Function"},{"ReturnType":"string","Arguments":[{"Type":"string","Name":"key","Default":null}],"Name":"loadString","tags":["deprecated"],"Class":"Player","type":"Function"},{"ReturnType":"void","Arguments":[{"Type":"string","Name":"key","Default":null},{"Type":"bool","Name":"value","Default":null}],"Name":"saveBoolean","tags":["deprecated"],"Class":"Player","type":"Function"},{"ReturnType":"void","Arguments":[{"Type":"string","Name":"key","Default":null},{"Type":"Instance","Name":"value","Default":null}],"Name":"saveInstance","tags":["deprecated"],"Class":"Player","type":"Function"},{"ReturnType":"void","Arguments":[{"Type":"string","Name":"key","Default":null},{"Type":"double","Name":"value","Default":null}],"Name":"saveNumber","tags":["deprecated"],"Class":"Player","type":"Function"},{"ReturnType":"void","Arguments":[{"Type":"string","Name":"key","Default":null},{"Type":"string","Name":"value","Default":null}],"Name":"saveString","tags":["deprecated"],"Class":"Player","type":"Function"},{"ReturnType":"Array","Arguments":[{"Type":"int","Name":"maxFriends","Default":"200"}],"Name":"GetFriendsOnline","tags":[],"Class":"Player","type":"YieldFunction"},{"ReturnType":"int","Arguments":[{"Type":"int","Name":"groupId","Default":null}],"Name":"GetRankInGroup","tags":[],"Class":"Player","type":"YieldFunction"},{"ReturnType":"string","Arguments":[{"Type":"int","Name":"groupId","Default":null}],"Name":"GetRoleInGroup","tags":[],"Class":"Player","type":"YieldFunction"},{"ReturnType":"string","Arguments":[],"Name":"GetWebPersonalServerRank","tags":["LocalUserSecurity","backend"],"Class":"Player","type":"YieldFunction"},{"ReturnType":"bool","Arguments":[{"Type":"int","Name":"userId","Default":null}],"Name":"IsBestFriendsWith","tags":["deprecated"],"Class":"Player","type":"YieldFunction"},{"ReturnType":"bool","Arguments":[{"Type":"int","Name":"userId","Default":null}],"Name":"IsFriendsWith","tags":[],"Class":"Player","type":"YieldFunction"},{"ReturnType":"bool","Arguments":[{"Type":"int","Name":"groupId","Default":null}],"Name":"IsInGroup","tags":[],"Class":"Player","type":"YieldFunction"},{"ReturnType":"bool","Arguments":[{"Type":"int","Name":"rank","Default":null}],"Name":"SetWebPersonalServerRank","tags":["WritePlayerSecurity"],"Class":"Player","type":"YieldFunction"},{"ReturnType":"bool","Arguments":[],"Name":"WaitForDataReady","tags":[],"Class":"Player","type":"YieldFunction"},{"ReturnType":"bool","Arguments":[{"Type":"int","Name":"userId","Default":null}],"Name":"isFriendsWith","tags":["deprecated"],"Class":"Player","type":"YieldFunction"},{"ReturnType":"bool","Arguments":[],"Name":"waitForDataReady","tags":["deprecated"],"Class":"Player","type":"YieldFunction"},{"Arguments":[{"Name":"character","Type":"Instance"}],"Name":"CharacterAdded","tags":[],"Class":"Player","type":"Event"},{"Arguments":[{"Name":"character","Type":"Instance"}],"Name":"CharacterAppearanceLoaded","tags":[],"Class":"Player","type":"Event"},{"Arguments":[{"Name":"character","Type":"Instance"}],"Name":"CharacterRemoving","tags":[],"Class":"Player","type":"Event"},{"Arguments":[{"Name":"message","Type":"string"},{"Name":"recipient","Type":"Instance"}],"Name":"Chatted","tags":[],"Class":"Player","type":"Event"},{"Arguments":[{"Name":"player","Type":"Instance"},{"Name":"friendStatus","Type":"FriendStatus"}],"Name":"FriendStatusChanged","tags":["RobloxScriptSecurity"],"Class":"Player","type":"Event"},{"Arguments":[{"Name":"time","Type":"double"}],"Name":"Idled","tags":[],"Class":"Player","type":"Event"},{"Arguments":[{"Name":"teleportState","Type":"TeleportState"},{"Name":"placeId","Type":"int"},{"Name":"spawnName","Type":"string"}],"Name":"OnTeleport","tags":[],"Class":"Player","type":"Event"},{"Arguments":[{"Name":"radius","Type":"float"}],"Name":"SimulationRadiusChanged","tags":["LocalUserSecurity"],"Class":"Player","type":"Event"},{"Superclass":"Instance","type":"Class","Name":"PlayerScripts","tags":["notCreatable"]},{"Superclass":"Instance","type":"Class","Name":"Players","tags":[]},{"ValueType":"bool","type":"Property","Name":"BubbleChat","tags":["readonly"],"Class":"Players"},{"ValueType":"bool","type":"Property","Name":"CharacterAutoLoads","tags":[],"Class":"Players"},{"ValueType":"bool","type":"Property","Name":"ClassicChat","tags":["readonly"],"Class":"Players"},{"ValueType":"Object","type":"Property","Name":"LocalPlayer","tags":["readonly"],"Class":"Players"},{"ValueType":"int","type":"Property","Name":"MaxPlayers","tags":["readonly"],"Class":"Players"},{"ValueType":"int","type":"Property","Name":"MaxPlayersInternal","tags":["LocalUserSecurity"],"Class":"Players"},{"ValueType":"int","type":"Property","Name":"NumPlayers","tags":["readonly"],"Class":"Players"},{"ValueType":"int","type":"Property","Name":"PreferredPlayers","tags":["readonly"],"Class":"Players"},{"ValueType":"int","type":"Property","Name":"PreferredPlayersInternal","tags":["LocalUserSecurity"],"Class":"Players"},{"ValueType":"Object","type":"Property","Name":"localPlayer","tags":["deprecated","hidden","readonly"],"Class":"Players"},{"ValueType":"int","type":"Property","Name":"numPlayers","tags":["deprecated","hidden","readonly"],"Class":"Players"},{"ReturnType":"void","Arguments":[{"Type":"string","Name":"key","Default":null}],"Name":"AddLeaderboardKey","tags":["LocalUserSecurity"],"Class":"Players","type":"Function"},{"ReturnType":"void","Arguments":[{"Type":"string","Name":"message","Default":null}],"Name":"Chat","tags":["PluginSecurity"],"Class":"Players","type":"Function"},{"ReturnType":"Instance","Arguments":[{"Type":"int","Name":"userId","Default":null},{"Type":"bool","Name":"isTeleport","Default":"false"}],"Name":"CreateLocalPlayer","tags":["PluginSecurity"],"Class":"Players","type":"Function"},{"ReturnType":"Instance","Arguments":[{"Type":"int","Name":"userID","Default":null}],"Name":"GetPlayerByID","tags":["LocalUserSecurity","deprecated"],"Class":"Players","type":"Function"},{"ReturnType":"Instance","Arguments":[{"Type":"int","Name":"userId","Default":null}],"Name":"GetPlayerById","tags":["LocalUserSecurity"],"Class":"Players","type":"Function"},{"ReturnType":"Instance","Arguments":[{"Type":"int","Name":"userId","Default":null}],"Name":"GetPlayerByUserId","tags":[],"Class":"Players","type":"Function"},{"ReturnType":"Instance","Arguments":[{"Type":"Instance","Name":"character","Default":null}],"Name":"GetPlayerFromCharacter","tags":[],"Class":"Players","type":"Function"},{"ReturnType":"Objects","Arguments":[],"Name":"GetPlayers","tags":[],"Class":"Players","type":"Function"},{"ReturnType":"bool","Arguments":[],"Name":"GetUseCoreScriptHealthBar","tags":["RobloxScriptSecurity"],"Class":"Players","type":"Function"},{"ReturnType":"void","Arguments":[{"Type":"Instance","Name":"player","Default":null},{"Type":"string","Name":"reason","Default":null},{"Type":"string","Name":"optionalMessage","Default":null}],"Name":"ReportAbuse","tags":["LocalUserSecurity"],"Class":"Players","type":"Function"},{"ReturnType":"void","Arguments":[{"Type":"string","Name":"url","Default":null}],"Name":"SetAbuseReportUrl","tags":["RobloxSecurity"],"Class":"Players","type":"Function"},{"ReturnType":"void","Arguments":[{"Type":"string","Name":"url","Default":null}],"Name":"SetBuildUserPermissionsUrl","tags":["RobloxSecurity"],"Class":"Players","type":"Function"},{"ReturnType":"void","Arguments":[{"Type":"string","Name":"url","Default":null}],"Name":"SetChatFilterUrl","tags":["RobloxSecurity"],"Class":"Players","type":"Function"},{"ReturnType":"void","Arguments":[{"Type":"ChatStyle","Name":"style","Default":"Classic"}],"Name":"SetChatStyle","tags":["PluginSecurity"],"Class":"Players","type":"Function"},{"ReturnType":"void","Arguments":[{"Type":"string","Name":"url","Default":null}],"Name":"SetLoadDataUrl","tags":["LocalUserSecurity"],"Class":"Players","type":"Function"},{"ReturnType":"void","Arguments":[{"Type":"string","Name":"url","Default":null}],"Name":"SetSaveDataUrl","tags":["LocalUserSecurity"],"Class":"Players","type":"Function"},{"ReturnType":"void","Arguments":[{"Type":"string","Name":"url","Default":null}],"Name":"SetSaveLeaderboardDataUrl","tags":["LocalUserSecurity"],"Class":"Players","type":"Function"},{"ReturnType":"void","Arguments":[{"Type":"string","Name":"url","Default":null}],"Name":"SetSysStatsUrl","tags":["LocalUserSecurity"],"Class":"Players","type":"Function"},{"ReturnType":"void","Arguments":[{"Type":"string","Name":"urlId","Default":null}],"Name":"SetSysStatsUrlId","tags":["LocalUserSecurity"],"Class":"Players","type":"Function"},{"ReturnType":"void","Arguments":[{"Type":"string","Name":"message","Default":null}],"Name":"TeamChat","tags":["PluginSecurity"],"Class":"Players","type":"Function"},{"ReturnType":"void","Arguments":[{"Type":"string","Name":"message","Default":null},{"Type":"Instance","Name":"player","Default":null}],"Name":"WhisperChat","tags":["LocalUserSecurity"],"Class":"Players","type":"Function"},{"ReturnType":"Instance","Arguments":[{"Type":"Instance","Name":"character","Default":null}],"Name":"getPlayerFromCharacter","tags":["deprecated"],"Class":"Players","type":"Function"},{"ReturnType":"Objects","Arguments":[],"Name":"getPlayers","tags":["deprecated"],"Class":"Players","type":"Function"},{"ReturnType":"Instance","Arguments":[{"Type":"Instance","Name":"character","Default":null}],"Name":"playerFromCharacter","tags":["deprecated"],"Class":"Players","type":"Function"},{"ReturnType":"Objects","Arguments":[],"Name":"players","tags":["deprecated"],"Class":"Players","type":"Function"},{"ReturnType":"string","Arguments":[{"Type":"int","Name":"blockerUserId","Default":null},{"Type":"int","Name":"blockeeUserId","Default":null}],"Name":"BlockUser","tags":["RobloxScriptSecurity"],"Class":"Players","type":"YieldFunction"},{"ReturnType":"Instance","Arguments":[{"Type":"int","Name":"userId","Default":null}],"Name":"GetCharacterAppearanceAsync","tags":[],"Class":"Players","type":"YieldFunction"},{"ReturnType":"Instance","Arguments":[{"Type":"int","Name":"userId","Default":null}],"Name":"GetFriendsAsync","tags":[],"Class":"Players","type":"YieldFunction"},{"ReturnType":"string","Arguments":[{"Type":"int","Name":"userId","Default":null}],"Name":"GetNameFromUserIdAsync","tags":[],"Class":"Players","type":"YieldFunction"},{"ReturnType":"int","Arguments":[{"Type":"string","Name":"userName","Default":null}],"Name":"GetUserIdFromNameAsync","tags":[],"Class":"Players","type":"YieldFunction"},{"ReturnType":"string","Arguments":[{"Type":"int","Name":"exblockerUserId","Default":null},{"Type":"int","Name":"exblockeeUserId","Default":null}],"Name":"UnblockUser","tags":["RobloxScriptSecurity"],"Class":"Players","type":"YieldFunction"},{"Arguments":[{"Name":"player","Type":"Instance"},{"Name":"player","Type":"Instance"},{"Name":"friendRequestEvent","Type":"FriendRequestEvent"}],"Name":"FriendRequestEvent","tags":["RobloxScriptSecurity"],"Class":"Players","type":"Event"},{"Arguments":[{"Name":"message","Type":"string"}],"Name":"GameAnnounce","tags":["RobloxScriptSecurity"],"Class":"Players","type":"Event"},{"Arguments":[{"Name":"player","Type":"Instance"}],"Name":"PlayerAdded","tags":[],"Class":"Players","type":"Event"},{"Arguments":[{"Name":"player","Type":"Instance"}],"Name":"PlayerAddedEarly","tags":["LocalUserSecurity"],"Class":"Players","type":"Event"},{"Arguments":[{"Name":"chatType","Type":"PlayerChatType"},{"Name":"player","Type":"Instance"},{"Name":"message","Type":"string"},{"Name":"targetPlayer","Type":"Instance"}],"Name":"PlayerChatted","tags":["LocalUserSecurity"],"Class":"Players","type":"Event"},{"Arguments":[{"Name":"player","Type":"Instance"}],"Name":"PlayerRemoving","tags":[],"Class":"Players","type":"Event"},{"Arguments":[{"Name":"player","Type":"Instance"}],"Name":"PlayerRemovingLate","tags":["LocalUserSecurity"],"Class":"Players","type":"Event"},{"Superclass":"Instance","type":"Class","Name":"Plugin","tags":[]},{"ValueType":"bool","type":"Property","Name":"CollisionEnabled","tags":["readonly"],"Class":"Plugin"},{"ValueType":"float","type":"Property","Name":"GridSize","tags":["readonly"],"Class":"Plugin"},{"ReturnType":"void","Arguments":[{"Type":"bool","Name":"exclusiveMouse","Default":null}],"Name":"Activate","tags":["PluginSecurity"],"Class":"Plugin","type":"Function"},{"ReturnType":"Instance","Arguments":[{"Type":"string","Name":"name","Default":null}],"Name":"CreateToolbar","tags":["PluginSecurity"],"Class":"Plugin","type":"Function"},{"ReturnType":"JointCreationMode","Arguments":[],"Name":"GetJoinMode","tags":["PluginSecurity"],"Class":"Plugin","type":"Function"},{"ReturnType":"Instance","Arguments":[],"Name":"GetMouse","tags":["PluginSecurity"],"Class":"Plugin","type":"Function"},{"ReturnType":"Variant","Arguments":[{"Type":"string","Name":"key","Default":null}],"Name":"GetSetting","tags":["PluginSecurity"],"Class":"Plugin","type":"Function"},{"ReturnType":"int","Arguments":[],"Name":"GetStudioUserId","tags":["PluginSecurity"],"Class":"Plugin","type":"Function"},{"ReturnType":"Objects","Arguments":[{"Type":"Objects","Name":"objects","Default":null}],"Name":"Negate","tags":["PluginSecurity"],"Class":"Plugin","type":"Function"},{"ReturnType":"void","Arguments":[{"Type":"Instance","Name":"script","Default":null},{"Type":"int","Name":"lineNumber","Default":"0"}],"Name":"OpenScript","tags":["PluginSecurity"],"Class":"Plugin","type":"Function"},{"ReturnType":"void","Arguments":[{"Type":"string","Name":"url","Default":null}],"Name":"OpenWikiPage","tags":["PluginSecurity"],"Class":"Plugin","type":"Function"},{"ReturnType":"void","Arguments":[],"Name":"SaveSelectedToRoblox","tags":["PluginSecurity"],"Class":"Plugin","type":"Function"},{"ReturnType":"Objects","Arguments":[{"Type":"Objects","Name":"objects","Default":null}],"Name":"Separate","tags":["PluginSecurity"],"Class":"Plugin","type":"Function"},{"ReturnType":"void","Arguments":[{"Type":"string","Name":"key","Default":null},{"Type":"Variant","Name":"value","Default":null}],"Name":"SetSetting","tags":["PluginSecurity"],"Class":"Plugin","type":"Function"},{"ReturnType":"Instance","Arguments":[{"Type":"Objects","Name":"objects","Default":null}],"Name":"Union","tags":["PluginSecurity"],"Class":"Plugin","type":"Function"},{"ReturnType":"int","Arguments":[{"Type":"string","Name":"assetType","Default":null}],"Name":"PromptForExistingAssetId","tags":["PluginSecurity"],"Class":"Plugin","type":"YieldFunction"},{"Arguments":[],"Name":"Deactivation","tags":["PluginSecurity"],"Class":"Plugin","type":"Event"},{"Superclass":"Instance","type":"Class","Name":"PluginManager","tags":[]},{"ReturnType":"Instance","Arguments":[],"Name":"CreatePlugin","tags":["PluginSecurity"],"Class":"PluginManager","type":"Function"},{"ReturnType":"void","Arguments":[{"Type":"string","Name":"filePath","Default":""}],"Name":"ExportPlace","tags":["PluginSecurity"],"Class":"PluginManager","type":"Function"},{"ReturnType":"void","Arguments":[{"Type":"string","Name":"filePath","Default":""}],"Name":"ExportSelection","tags":["PluginSecurity"],"Class":"PluginManager","type":"Function"},{"Superclass":"Instance","type":"Class","Name":"PointsService","tags":["notCreatable"]},{"ReturnType":"int","Arguments":[],"Name":"GetAwardablePoints","tags":["deprecated"],"Class":"PointsService","type":"Function"},{"ReturnType":"Tuple","Arguments":[{"Type":"int","Name":"userId","Default":null},{"Type":"int","Name":"amount","Default":null}],"Name":"AwardPoints","tags":[],"Class":"PointsService","type":"YieldFunction"},{"ReturnType":"int","Arguments":[{"Type":"int","Name":"userId","Default":null}],"Name":"GetGamePointBalance","tags":[],"Class":"PointsService","type":"YieldFunction"},{"ReturnType":"int","Arguments":[{"Type":"int","Name":"userId","Default":null}],"Name":"GetPointBalance","tags":["deprecated"],"Class":"PointsService","type":"YieldFunction"},{"Arguments":[{"Name":"userId","Type":"int"},{"Name":"pointsAwarded","Type":"int"},{"Name":"userBalanceInGame","Type":"int"},{"Name":"userTotalBalance","Type":"int"}],"Name":"PointsAwarded","tags":[],"Class":"PointsService","type":"Event"},{"Superclass":"Instance","type":"Class","Name":"Pose","tags":[]},{"ValueType":"CoordinateFrame","type":"Property","Name":"CFrame","tags":[],"Class":"Pose"},{"ValueType":"PoseEasingDirection","type":"Property","Name":"EasingDirection","tags":[],"Class":"Pose"},{"ValueType":"PoseEasingStyle","type":"Property","Name":"EasingStyle","tags":[],"Class":"Pose"},{"ValueType":"float","type":"Property","Name":"MaskWeight","tags":[],"Class":"Pose"},{"ValueType":"float","type":"Property","Name":"Weight","tags":[],"Class":"Pose"},{"ReturnType":"void","Arguments":[{"Type":"Instance","Name":"pose","Default":null}],"Name":"AddSubPose","tags":[],"Class":"Pose","type":"Function"},{"ReturnType":"Objects","Arguments":[],"Name":"GetSubPoses","tags":[],"Class":"Pose","type":"Function"},{"ReturnType":"void","Arguments":[{"Type":"Instance","Name":"pose","Default":null}],"Name":"RemoveSubPose","tags":[],"Class":"Pose","type":"Function"},{"Superclass":"Instance","type":"Class","Name":"PostEffect","tags":[]},{"ValueType":"bool","type":"Property","Name":"Enabled","tags":[],"Class":"PostEffect"},{"Superclass":"PostEffect","type":"Class","Name":"BloomEffect","tags":[]},{"ValueType":"float","type":"Property","Name":"Intensity","tags":[],"Class":"BloomEffect"},{"ValueType":"float","type":"Property","Name":"Size","tags":[],"Class":"BloomEffect"},{"ValueType":"float","type":"Property","Name":"Threshold","tags":[],"Class":"BloomEffect"},{"Superclass":"PostEffect","type":"Class","Name":"BlurEffect","tags":[]},{"ValueType":"float","type":"Property","Name":"Size","tags":[],"Class":"BlurEffect"},{"Superclass":"PostEffect","type":"Class","Name":"ColorCorrectionEffect","tags":[]},{"ValueType":"float","type":"Property","Name":"Brightness","tags":[],"Class":"ColorCorrectionEffect"},{"ValueType":"float","type":"Property","Name":"Contrast","tags":[],"Class":"ColorCorrectionEffect"},{"ValueType":"float","type":"Property","Name":"Saturation","tags":[],"Class":"ColorCorrectionEffect"},{"ValueType":"Color3","type":"Property","Name":"TintColor","tags":[],"Class":"ColorCorrectionEffect"},{"Superclass":"PostEffect","type":"Class","Name":"SunRaysEffect","tags":[]},{"ValueType":"float","type":"Property","Name":"Intensity","tags":[],"Class":"SunRaysEffect"},{"ValueType":"float","type":"Property","Name":"Spread","tags":[],"Class":"SunRaysEffect"},{"Superclass":"Instance","type":"Class","Name":"RayValue","tags":[]},{"ValueType":"Ray","type":"Property","Name":"Value","tags":[],"Class":"RayValue"},{"Arguments":[{"Name":"value","Type":"Ray"}],"Name":"Changed","tags":[],"Class":"RayValue","type":"Event"},{"Arguments":[{"Name":"value","Type":"Ray"}],"Name":"changed","tags":["deprecated"],"Class":"RayValue","type":"Event"},{"Superclass":"Instance","type":"Class","Name":"ReflectionMetadata","tags":[]},{"Superclass":"Instance","type":"Class","Name":"ReflectionMetadataCallbacks","tags":[]},{"Superclass":"Instance","type":"Class","Name":"ReflectionMetadataClasses","tags":[]},{"Superclass":"Instance","type":"Class","Name":"ReflectionMetadataEnums","tags":[]},{"Superclass":"Instance","type":"Class","Name":"ReflectionMetadataEvents","tags":[]},{"Superclass":"Instance","type":"Class","Name":"ReflectionMetadataFunctions","tags":[]},{"Superclass":"Instance","type":"Class","Name":"ReflectionMetadataItem","tags":[]},{"ValueType":"bool","type":"Property","Name":"Browsable","tags":[],"Class":"ReflectionMetadataItem"},{"ValueType":"bool","type":"Property","Name":"Deprecated","tags":[],"Class":"ReflectionMetadataItem"},{"ValueType":"bool","type":"Property","Name":"IsBackend","tags":[],"Class":"ReflectionMetadataItem"},{"ValueType":"double","type":"Property","Name":"UIMaximum","tags":[],"Class":"ReflectionMetadataItem"},{"ValueType":"double","type":"Property","Name":"UIMinimum","tags":[],"Class":"ReflectionMetadataItem"},{"ValueType":"string","type":"Property","Name":"summary","tags":[],"Class":"ReflectionMetadataItem"},{"Superclass":"ReflectionMetadataItem","type":"Class","Name":"ReflectionMetadataClass","tags":[]},{"ValueType":"int","type":"Property","Name":"ExplorerImageIndex","tags":[],"Class":"ReflectionMetadataClass"},{"ValueType":"int","type":"Property","Name":"ExplorerOrder","tags":[],"Class":"ReflectionMetadataClass"},{"ValueType":"bool","type":"Property","Name":"Insertable","tags":[],"Class":"ReflectionMetadataClass"},{"ValueType":"string","type":"Property","Name":"PreferredParent","tags":[],"Class":"ReflectionMetadataClass"},{"Superclass":"ReflectionMetadataItem","type":"Class","Name":"ReflectionMetadataEnum","tags":[]},{"Superclass":"ReflectionMetadataItem","type":"Class","Name":"ReflectionMetadataEnumItem","tags":[]},{"Superclass":"ReflectionMetadataItem","type":"Class","Name":"ReflectionMetadataMember","tags":[]},{"Superclass":"Instance","type":"Class","Name":"ReflectionMetadataProperties","tags":[]},{"Superclass":"Instance","type":"Class","Name":"ReflectionMetadataYieldFunctions","tags":[]},{"Superclass":"Instance","type":"Class","Name":"RemoteEvent","tags":[]},{"ReturnType":"void","Arguments":[{"Type":"Tuple","Name":"arguments","Default":null}],"Name":"FireAllClients","tags":[],"Class":"RemoteEvent","type":"Function"},{"ReturnType":"void","Arguments":[{"Type":"Instance","Name":"player","Default":null},{"Type":"Tuple","Name":"arguments","Default":null}],"Name":"FireClient","tags":[],"Class":"RemoteEvent","type":"Function"},{"ReturnType":"void","Arguments":[{"Type":"Tuple","Name":"arguments","Default":null}],"Name":"FireServer","tags":[],"Class":"RemoteEvent","type":"Function"},{"Arguments":[{"Name":"arguments","Type":"Tuple"}],"Name":"OnClientEvent","tags":[],"Class":"RemoteEvent","type":"Event"},{"Arguments":[{"Name":"player","Type":"Instance"},{"Name":"arguments","Type":"Tuple"}],"Name":"OnServerEvent","tags":[],"Class":"RemoteEvent","type":"Event"},{"Superclass":"Instance","type":"Class","Name":"RemoteFunction","tags":[]},{"ReturnType":"Tuple","Arguments":[{"Type":"Instance","Name":"player","Default":null},{"Type":"Tuple","Name":"arguments","Default":null}],"Name":"InvokeClient","tags":[],"Class":"RemoteFunction","type":"YieldFunction"},{"ReturnType":"Tuple","Arguments":[{"Type":"Tuple","Name":"arguments","Default":null}],"Name":"InvokeServer","tags":[],"Class":"RemoteFunction","type":"YieldFunction"},{"ReturnType":"Tuple","Arguments":[{"Name":"arguments","Type":"Tuple"}],"Name":"OnClientInvoke","tags":[],"Class":"RemoteFunction","type":"Callback"},{"ReturnType":"Tuple","Arguments":[{"Name":"player","Type":"Instance"},{"Name":"arguments","Type":"Tuple"}],"Name":"OnServerInvoke","tags":[],"Class":"RemoteFunction","type":"Callback"},{"Superclass":"Instance","type":"Class","Name":"RenderHooksService","tags":[]},{"ReturnType":"void","Arguments":[],"Name":"CaptureMetrics","tags":["LocalUserSecurity"],"Class":"RenderHooksService","type":"Function"},{"ReturnType":"void","Arguments":[{"Type":"int","Name":"qId","Default":null}],"Name":"DisableQueue","tags":["LocalUserSecurity"],"Class":"RenderHooksService","type":"Function"},{"ReturnType":"void","Arguments":[{"Type":"bool","Name":"enabled","Default":null}],"Name":"EnableAdorns","tags":["LocalUserSecurity"],"Class":"RenderHooksService","type":"Function"},{"ReturnType":"void","Arguments":[{"Type":"int","Name":"qId","Default":null}],"Name":"EnableQueue","tags":["LocalUserSecurity"],"Class":"RenderHooksService","type":"Function"},{"ReturnType":"double","Arguments":[],"Name":"GetDeltaAve","tags":["LocalUserSecurity"],"Class":"RenderHooksService","type":"Function"},{"ReturnType":"double","Arguments":[],"Name":"GetGPUDelay","tags":["LocalUserSecurity"],"Class":"RenderHooksService","type":"Function"},{"ReturnType":"double","Arguments":[],"Name":"GetPresentTime","tags":["LocalUserSecurity"],"Class":"RenderHooksService","type":"Function"},{"ReturnType":"double","Arguments":[],"Name":"GetRenderAve","tags":["LocalUserSecurity"],"Class":"RenderHooksService","type":"Function"},{"ReturnType":"double","Arguments":[],"Name":"GetRenderConfMax","tags":["LocalUserSecurity"],"Class":"RenderHooksService","type":"Function"},{"ReturnType":"double","Arguments":[],"Name":"GetRenderConfMin","tags":["LocalUserSecurity"],"Class":"RenderHooksService","type":"Function"},{"ReturnType":"double","Arguments":[],"Name":"GetRenderStd","tags":["LocalUserSecurity"],"Class":"RenderHooksService","type":"Function"},{"ReturnType":"void","Arguments":[],"Name":"PrintScene","tags":["LocalUserSecurity"],"Class":"RenderHooksService","type":"Function"},{"ReturnType":"void","Arguments":[],"Name":"ReloadShaders","tags":["LocalUserSecurity"],"Class":"RenderHooksService","type":"Function"},{"ReturnType":"void","Arguments":[{"Type":"int","Name":"width","Default":null},{"Type":"int","Name":"height","Default":null}],"Name":"ResizeWindow","tags":["LocalUserSecurity"],"Class":"RenderHooksService","type":"Function"},{"Superclass":"Instance","type":"Class","Name":"RenderSettings","tags":["notbrowsable"]},{"ValueType":"AASamples","type":"Property","Name":"AASamples","tags":[],"Class":"RenderSettings"},{"ValueType":"Antialiasing","type":"Property","Name":"Antialiasing","tags":[],"Class":"RenderSettings"},{"ValueType":"int","type":"Property","Name":"AutoFRMLevel","tags":[],"Class":"RenderSettings"},{"ValueType":"bool","type":"Property","Name":"DebugDisableInterpolation","tags":[],"Class":"RenderSettings"},{"ValueType":"bool","type":"Property","Name":"EagerBulkExecution","tags":[],"Class":"RenderSettings"},{"ValueType":"QualityLevel","type":"Property","Name":"EditQualityLevel","tags":[],"Class":"RenderSettings"},{"ValueType":"bool","type":"Property","Name":"EnableFRM","tags":["hidden"],"Class":"RenderSettings"},{"ValueType":"bool","type":"Property","Name":"ExportMergeByMaterial","tags":[],"Class":"RenderSettings"},{"ValueType":"FramerateManagerMode","type":"Property","Name":"FrameRateManager","tags":[],"Class":"RenderSettings"},{"ValueType":"GraphicsMode","type":"Property","Name":"GraphicsMode","tags":[],"Class":"RenderSettings"},{"ValueType":"bool","type":"Property","Name":"IsAggregationShown","tags":[],"Class":"RenderSettings"},{"ValueType":"bool","type":"Property","Name":"IsSynchronizedWithPhysics","tags":[],"Class":"RenderSettings"},{"ValueType":"int","type":"Property","Name":"MeshCacheSize","tags":[],"Class":"RenderSettings"},{"ValueType":"QualityLevel","type":"Property","Name":"QualityLevel","tags":[],"Class":"RenderSettings"},{"ValueType":"bool","type":"Property","Name":"ReloadAssets","tags":[],"Class":"RenderSettings"},{"ValueType":"Resolution","type":"Property","Name":"Resolution","tags":[],"Class":"RenderSettings"},{"ValueType":"bool","type":"Property","Name":"ShowBoundingBoxes","tags":[],"Class":"RenderSettings"},{"ValueType":"bool","type":"Property","Name":"ShowInterpolationpath","tags":[],"Class":"RenderSettings"},{"ValueType":"int","type":"Property","Name":"TextureCacheSize","tags":[],"Class":"RenderSettings"},{"ReturnType":"int","Arguments":[],"Name":"GetMaxQualityLevel","tags":[],"Class":"RenderSettings","type":"Function"},{"Superclass":"Instance","type":"Class","Name":"ReplicatedFirst","tags":["notCreatable"]},{"ReturnType":"bool","Arguments":[],"Name":"IsDefaultLoadingGuiRemoved","tags":["RobloxScriptSecurity"],"Class":"ReplicatedFirst","type":"Function"},{"ReturnType":"bool","Arguments":[],"Name":"IsFinishedReplicating","tags":["RobloxScriptSecurity"],"Class":"ReplicatedFirst","type":"Function"},{"ReturnType":"void","Arguments":[],"Name":"RemoveDefaultLoadingScreen","tags":[],"Class":"ReplicatedFirst","type":"Function"},{"Arguments":[],"Name":"FinishedReplicating","tags":["RobloxScriptSecurity"],"Class":"ReplicatedFirst","type":"Event"},{"Arguments":[],"Name":"RemoveDefaultLoadingGuiSignal","tags":["RobloxScriptSecurity"],"Class":"ReplicatedFirst","type":"Event"},{"Superclass":"Instance","type":"Class","Name":"ReplicatedStorage","tags":["notCreatable"]},{"Superclass":"Instance","type":"Class","Name":"RobloxReplicatedStorage","tags":["notCreatable","notbrowsable"]},{"Superclass":"Instance","type":"Class","Name":"RunService","tags":[]},{"ReturnType":"void","Arguments":[{"Type":"string","Name":"name","Default":null},{"Type":"int","Name":"priority","Default":null},{"Type":"Function","Name":"function","Default":null}],"Name":"BindToRenderStep","tags":[],"Class":"RunService","type":"Function"},{"ReturnType":"bool","Arguments":[],"Name":"IsClient","tags":[],"Class":"RunService","type":"Function"},{"ReturnType":"bool","Arguments":[],"Name":"IsRunMode","tags":[],"Class":"RunService","type":"Function"},{"ReturnType":"bool","Arguments":[],"Name":"IsRunning","tags":["RobloxScriptSecurity"],"Class":"RunService","type":"Function"},{"ReturnType":"bool","Arguments":[],"Name":"IsServer","tags":[],"Class":"RunService","type":"Function"},{"ReturnType":"bool","Arguments":[],"Name":"IsStudio","tags":[],"Class":"RunService","type":"Function"},{"ReturnType":"void","Arguments":[],"Name":"Pause","tags":["PluginSecurity"],"Class":"RunService","type":"Function"},{"ReturnType":"void","Arguments":[],"Name":"Reset","tags":["PluginSecurity","deprecated"],"Class":"RunService","type":"Function"},{"ReturnType":"void","Arguments":[],"Name":"Run","tags":["PluginSecurity"],"Class":"RunService","type":"Function"},{"ReturnType":"void","Arguments":[],"Name":"Stop","tags":["PluginSecurity"],"Class":"RunService","type":"Function"},{"ReturnType":"void","Arguments":[{"Type":"string","Name":"name","Default":null}],"Name":"UnbindFromRenderStep","tags":[],"Class":"RunService","type":"Function"},{"Arguments":[{"Name":"step","Type":"double"}],"Name":"Heartbeat","tags":[],"Class":"RunService","type":"Event"},{"Arguments":[{"Name":"step","Type":"double"}],"Name":"RenderStepped","tags":[],"Class":"RunService","type":"Event"},{"Arguments":[{"Name":"time","Type":"double"},{"Name":"step","Type":"double"}],"Name":"Stepped","tags":[],"Class":"RunService","type":"Event"},{"Superclass":"Instance","type":"Class","Name":"RuntimeScriptService","tags":["notCreatable"]},{"Superclass":"Instance","type":"Class","Name":"ScriptContext","tags":["notCreatable"]},{"ValueType":"bool","type":"Property","Name":"ScriptsDisabled","tags":["LocalUserSecurity"],"Class":"ScriptContext"},{"ReturnType":"void","Arguments":[{"Type":"int","Name":"assetId","Default":null},{"Type":"Instance","Name":"parent","Default":null},{"Type":"string","Name":"name","Default":null}],"Name":"AddCoreScript","tags":["RobloxScriptSecurity"],"Class":"ScriptContext","type":"Function"},{"ReturnType":"void","Arguments":[{"Type":"string","Name":"name","Default":null},{"Type":"Instance","Name":"parent","Default":null}],"Name":"AddCoreScriptLocal","tags":["RobloxScriptSecurity"],"Class":"ScriptContext","type":"Function"},{"ReturnType":"void","Arguments":[{"Type":"int","Name":"assetId","Default":null}],"Name":"AddStarterScript","tags":["LocalUserSecurity"],"Class":"ScriptContext","type":"Function"},{"ReturnType":"Tuple","Arguments":[{"Type":"bool","Name":"clearHighwaterMark","Default":"true"}],"Name":"GetHeapStats","tags":["RobloxScriptSecurity"],"Class":"ScriptContext","type":"Function"},{"ReturnType":"Array","Arguments":[],"Name":"GetScriptStats","tags":["RobloxScriptSecurity"],"Class":"ScriptContext","type":"Function"},{"ReturnType":"void","Arguments":[{"Type":"bool","Name":"enable","Default":"false"}],"Name":"SetCollectScriptStats","tags":["RobloxScriptSecurity"],"Class":"ScriptContext","type":"Function"},{"ReturnType":"void","Arguments":[{"Type":"double","Name":"seconds","Default":null}],"Name":"SetTimeout","tags":["PluginSecurity"],"Class":"ScriptContext","type":"Function"},{"Arguments":[{"Name":"object","Type":"Instance"},{"Name":"member","Type":"string"},{"Name":"script","Type":"Instance"}],"Name":"CamelCaseViolation","tags":["RobloxScriptSecurity"],"Class":"ScriptContext","type":"Event"},{"Arguments":[{"Name":"message","Type":"string"},{"Name":"stackTrace","Type":"string"},{"Name":"script","Type":"Instance"}],"Name":"Error","tags":[],"Class":"ScriptContext","type":"Event"},{"Superclass":"Instance","type":"Class","Name":"ScriptDebugger","tags":["notCreatable"]},{"ValueType":"int","type":"Property","Name":"CurrentLine","tags":["readonly"],"Class":"ScriptDebugger"},{"ValueType":"bool","type":"Property","Name":"IsDebugging","tags":["readonly"],"Class":"ScriptDebugger"},{"ValueType":"bool","type":"Property","Name":"IsPaused","tags":["readonly"],"Class":"ScriptDebugger"},{"ValueType":"Object","type":"Property","Name":"Script","tags":["readonly"],"Class":"ScriptDebugger"},{"ReturnType":"Instance","Arguments":[{"Type":"string","Name":"expression","Default":null}],"Name":"AddWatch","tags":[],"Class":"ScriptDebugger","type":"Function"},{"ReturnType":"Objects","Arguments":[],"Name":"GetBreakpoints","tags":[],"Class":"ScriptDebugger","type":"Function"},{"ReturnType":"Map","Arguments":[],"Name":"GetGlobals","tags":[],"Class":"ScriptDebugger","type":"Function"},{"ReturnType":"Map","Arguments":[{"Type":"int","Name":"stackFrame","Default":"0"}],"Name":"GetLocals","tags":[],"Class":"ScriptDebugger","type":"Function"},{"ReturnType":"Array","Arguments":[],"Name":"GetStack","tags":[],"Class":"ScriptDebugger","type":"Function"},{"ReturnType":"Map","Arguments":[{"Type":"int","Name":"stackFrame","Default":"0"}],"Name":"GetUpvalues","tags":[],"Class":"ScriptDebugger","type":"Function"},{"ReturnType":"Variant","Arguments":[{"Type":"Instance","Name":"watch","Default":null}],"Name":"GetWatchValue","tags":[],"Class":"ScriptDebugger","type":"Function"},{"ReturnType":"Objects","Arguments":[],"Name":"GetWatches","tags":[],"Class":"ScriptDebugger","type":"Function"},{"ReturnType":"void","Arguments":[],"Name":"Resume","tags":["deprecated"],"Class":"ScriptDebugger","type":"Function"},{"ReturnType":"Instance","Arguments":[{"Type":"int","Name":"line","Default":null}],"Name":"SetBreakpoint","tags":[],"Class":"ScriptDebugger","type":"Function"},{"ReturnType":"void","Arguments":[{"Type":"string","Name":"name","Default":null},{"Type":"Variant","Name":"value","Default":null}],"Name":"SetGlobal","tags":[],"Class":"ScriptDebugger","type":"Function"},{"ReturnType":"void","Arguments":[{"Type":"string","Name":"name","Default":null},{"Type":"Variant","Name":"value","Default":null},{"Type":"int","Name":"stackFrame","Default":"0"}],"Name":"SetLocal","tags":[],"Class":"ScriptDebugger","type":"Function"},{"ReturnType":"void","Arguments":[{"Type":"string","Name":"name","Default":null},{"Type":"Variant","Name":"value","Default":null},{"Type":"int","Name":"stackFrame","Default":"0"}],"Name":"SetUpvalue","tags":[],"Class":"ScriptDebugger","type":"Function"},{"ReturnType":"void","Arguments":[],"Name":"StepIn","tags":["deprecated"],"Class":"ScriptDebugger","type":"Function"},{"ReturnType":"void","Arguments":[],"Name":"StepOut","tags":["deprecated"],"Class":"ScriptDebugger","type":"Function"},{"ReturnType":"void","Arguments":[],"Name":"StepOver","tags":["deprecated"],"Class":"ScriptDebugger","type":"Function"},{"Arguments":[{"Name":"breakpoint","Type":"Instance"}],"Name":"BreakpointAdded","tags":[],"Class":"ScriptDebugger","type":"Event"},{"Arguments":[{"Name":"breakpoint","Type":"Instance"}],"Name":"BreakpointRemoved","tags":[],"Class":"ScriptDebugger","type":"Event"},{"Arguments":[{"Name":"line","Type":"int"}],"Name":"EncounteredBreak","tags":[],"Class":"ScriptDebugger","type":"Event"},{"Arguments":[],"Name":"Resuming","tags":[],"Class":"ScriptDebugger","type":"Event"},{"Arguments":[{"Name":"watch","Type":"Instance"}],"Name":"WatchAdded","tags":[],"Class":"ScriptDebugger","type":"Event"},{"Arguments":[{"Name":"watch","Type":"Instance"}],"Name":"WatchRemoved","tags":[],"Class":"ScriptDebugger","type":"Event"},{"Superclass":"Instance","type":"Class","Name":"ScriptInformationProvider","tags":[]},{"ReturnType":"void","Arguments":[{"Type":"string","Name":"access","Default":null}],"Name":"SetAccessKey","tags":["RobloxSecurity"],"Class":"ScriptInformationProvider","type":"Function"},{"ReturnType":"void","Arguments":[{"Type":"string","Name":"url","Default":null}],"Name":"SetAssetUrl","tags":["LocalUserSecurity"],"Class":"ScriptInformationProvider","type":"Function"},{"Superclass":"Instance","type":"Class","Name":"ScriptService","tags":[]},{"Superclass":"Instance","type":"Class","Name":"Selection","tags":[]},{"ReturnType":"Objects","Arguments":[],"Name":"Get","tags":["PluginSecurity"],"Class":"Selection","type":"Function"},{"ReturnType":"void","Arguments":[{"Type":"Objects","Name":"selection","Default":null}],"Name":"Set","tags":["PluginSecurity"],"Class":"Selection","type":"Function"},{"Arguments":[],"Name":"SelectionChanged","tags":[],"Class":"Selection","type":"Event"},{"Superclass":"Instance","type":"Class","Name":"ServerScriptService","tags":["notCreatable"]},{"Superclass":"Instance","type":"Class","Name":"ServerStorage","tags":["notCreatable"]},{"Superclass":"Instance","type":"Class","Name":"ServiceProvider","tags":["notbrowsable"]},{"ReturnType":"Instance","Arguments":[{"Type":"string","Name":"className","Default":null}],"Name":"FindService","tags":[],"Class":"ServiceProvider","type":"Function"},{"ReturnType":"Instance","Arguments":[{"Type":"string","Name":"className","Default":null}],"Name":"GetService","tags":[],"Class":"ServiceProvider","type":"Function"},{"ReturnType":"Instance","Arguments":[{"Type":"string","Name":"className","Default":null}],"Name":"getService","tags":["deprecated"],"Class":"ServiceProvider","type":"Function"},{"ReturnType":"Instance","Arguments":[{"Type":"string","Name":"className","Default":null}],"Name":"service","tags":["deprecated"],"Class":"ServiceProvider","type":"Function"},{"Arguments":[],"Name":"Close","tags":[],"Class":"ServiceProvider","type":"Event"},{"Arguments":[],"Name":"CloseLate","tags":["LocalUserSecurity"],"Class":"ServiceProvider","type":"Event"},{"Arguments":[{"Name":"service","Type":"Instance"}],"Name":"ServiceAdded","tags":[],"Class":"ServiceProvider","type":"Event"},{"Arguments":[{"Name":"service","Type":"Instance"}],"Name":"ServiceRemoving","tags":[],"Class":"ServiceProvider","type":"Event"},{"Superclass":"ServiceProvider","type":"Class","Name":"DataModel","tags":[]},{"ValueType":"int","type":"Property","Name":"CreatorId","tags":["readonly"],"Class":"DataModel"},{"ValueType":"CreatorType","type":"Property","Name":"CreatorType","tags":["readonly"],"Class":"DataModel"},{"ValueType":"GearGenreSetting","type":"Property","Name":"GearGenreSetting","tags":["readonly"],"Class":"DataModel"},{"ValueType":"Genre","type":"Property","Name":"Genre","tags":["readonly"],"Class":"DataModel"},{"ValueType":"bool","type":"Property","Name":"IsPersonalServer","tags":["RobloxScriptSecurity"],"Class":"DataModel"},{"ValueType":"string","type":"Property","Name":"JobId","tags":["readonly"],"Class":"DataModel"},{"ValueType":"bool","type":"Property","Name":"LocalSaveEnabled","tags":["RobloxScriptSecurity","readonly"],"Class":"DataModel"},{"ValueType":"int","type":"Property","Name":"PlaceId","tags":["readonly"],"Class":"DataModel"},{"ValueType":"int","type":"Property","Name":"PlaceVersion","tags":["readonly"],"Class":"DataModel"},{"ValueType":"string","type":"Property","Name":"VIPServerId","tags":["readonly"],"Class":"DataModel"},{"ValueType":"int","type":"Property","Name":"VIPServerOwnerId","tags":["readonly"],"Class":"DataModel"},{"ValueType":"Object","type":"Property","Name":"Workspace","tags":["readonly"],"Class":"DataModel"},{"ValueType":"Object","type":"Property","Name":"lighting","tags":["deprecated","readonly"],"Class":"DataModel"},{"ValueType":"Object","type":"Property","Name":"workspace","tags":["deprecated","readonly"],"Class":"DataModel"},{"ReturnType":"void","Arguments":[{"Type":"string","Name":"displayName","Default":null},{"Type":"string","Name":"stat","Default":null}],"Name":"AddStat","tags":["LocalUserSecurity"],"Class":"DataModel","type":"Function"},{"ReturnType":"void","Arguments":[],"Name":"ClearMessage","tags":["LocalUserSecurity"],"Class":"DataModel","type":"Function"},{"ReturnType":"void","Arguments":[{"Type":"bool","Name":"localSave","Default":null}],"Name":"FinishShutdown","tags":["RobloxScriptSecurity"],"Class":"DataModel","type":"Function"},{"ReturnType":"double","Arguments":[{"Type":"string","Name":"jobname","Default":null},{"Type":"double","Name":"greaterThan","Default":null}],"Name":"GetJobIntervalPeakFraction","tags":["PluginSecurity"],"Class":"DataModel","type":"Function"},{"ReturnType":"double","Arguments":[{"Type":"string","Name":"jobname","Default":null},{"Type":"double","Name":"greaterThan","Default":null}],"Name":"GetJobTimePeakFraction","tags":["PluginSecurity"],"Class":"DataModel","type":"Function"},{"ReturnType":"Array","Arguments":[],"Name":"GetJobsExtendedStats","tags":["PluginSecurity"],"Class":"DataModel","type":"Function"},{"ReturnType":"Array","Arguments":[],"Name":"GetJobsInfo","tags":["PluginSecurity"],"Class":"DataModel","type":"Function"},{"ReturnType":"string","Arguments":[],"Name":"GetMessage","tags":[],"Class":"DataModel","type":"Function"},{"ReturnType":"bool","Arguments":[],"Name":"GetRemoteBuildMode","tags":[],"Class":"DataModel","type":"Function"},{"ReturnType":"string","Arguments":[{"Type":"string","Name":"url","Default":null},{"Type":"bool","Name":"synchronous","Default":"false"}],"Name":"HttpGet","tags":["RobloxScriptSecurity"],"Class":"DataModel","type":"Function"},{"ReturnType":"string","Arguments":[{"Type":"string","Name":"url","Default":null},{"Type":"string","Name":"data","Default":null},{"Type":"bool","Name":"synchronous","Default":"false"},{"Type":"string","Name":"contentType","Default":"*/*"}],"Name":"HttpPost","tags":["RobloxScriptSecurity"],"Class":"DataModel","type":"Function"},{"ReturnType":"bool","Arguments":[{"Type":"GearType","Name":"gearType","Default":null}],"Name":"IsGearTypeAllowed","tags":[],"Class":"DataModel","type":"Function"},{"ReturnType":"bool","Arguments":[],"Name":"IsLoaded","tags":[],"Class":"DataModel","type":"Function"},{"ReturnType":"void","Arguments":[{"Type":"Content","Name":"url","Default":null}],"Name":"Load","tags":["LocalUserSecurity"],"Class":"DataModel","type":"Function"},{"ReturnType":"void","Arguments":[{"Type":"int","Name":"assetID","Default":null}],"Name":"LoadGame","tags":["LocalUserSecurity"],"Class":"DataModel","type":"Function"},{"ReturnType":"void","Arguments":[],"Name":"LoadPlugins","tags":["RobloxSecurity"],"Class":"DataModel","type":"Function"},{"ReturnType":"void","Arguments":[{"Type":"int","Name":"assetID","Default":null}],"Name":"LoadWorld","tags":["LocalUserSecurity"],"Class":"DataModel","type":"Function"},{"ReturnType":"void","Arguments":[{"Type":"string","Name":"stat","Default":null}],"Name":"RemoveStat","tags":["LocalUserSecurity"],"Class":"DataModel","type":"Function"},{"ReturnType":"void","Arguments":[{"Type":"string","Name":"category","Default":null},{"Type":"string","Name":"action","Default":"custom"},{"Type":"string","Name":"label","Default":"none"},{"Type":"int","Name":"value","Default":"0"}],"Name":"ReportInGoogleAnalytics","tags":["RobloxScriptSecurity"],"Class":"DataModel","type":"Function"},{"ReturnType":"void","Arguments":[{"Type":"string","Name":"id","Default":null},{"Type":"string","Name":"key1","Default":null},{"Type":"string","Name":"value1","Default":null},{"Type":"string","Name":"key2","Default":null},{"Type":"string","Name":"value2","Default":null}],"Name":"ReportMeasurement","tags":["RobloxScriptSecurity"],"Class":"DataModel","type":"Function"},{"ReturnType":"void","Arguments":[{"Type":"Content","Name":"url","Default":null}],"Name":"Save","tags":["RobloxSecurity"],"Class":"DataModel","type":"Function"},{"ReturnType":"void","Arguments":[],"Name":"SaveStats","tags":["LocalUserSecurity"],"Class":"DataModel","type":"Function"},{"ReturnType":"void","Arguments":[],"Name":"ServerSave","tags":["LocalUserSecurity"],"Class":"DataModel","type":"Function"},{"ReturnType":"void","Arguments":[{"Type":"int","Name":"creatorID","Default":null},{"Type":"CreatorType","Name":"creatorType","Default":null}],"Name":"SetCreatorID","tags":["PluginSecurity","deprecated"],"Class":"DataModel","type":"Function"},{"ReturnType":"void","Arguments":[{"Type":"int","Name":"creatorId","Default":null},{"Type":"CreatorType","Name":"creatorType","Default":null}],"Name":"SetCreatorId","tags":["PluginSecurity"],"Class":"DataModel","type":"Function"},{"ReturnType":"void","Arguments":[{"Type":"GearGenreSetting","Name":"genreRestriction","Default":null},{"Type":"int","Name":"allowedGenres","Default":null}],"Name":"SetGearSettings","tags":["PluginSecurity"],"Class":"DataModel","type":"Function"},{"ReturnType":"void","Arguments":[{"Type":"Genre","Name":"genre","Default":null}],"Name":"SetGenre","tags":["PluginSecurity"],"Class":"DataModel","type":"Function"},{"ReturnType":"void","Arguments":[{"Type":"double","Name":"seconds","Default":null}],"Name":"SetJobsExtendedStatsWindow","tags":["LocalUserSecurity"],"Class":"DataModel","type":"Function"},{"ReturnType":"void","Arguments":[{"Type":"string","Name":"message","Default":null}],"Name":"SetMessage","tags":["LocalUserSecurity"],"Class":"DataModel","type":"Function"},{"ReturnType":"void","Arguments":[],"Name":"SetMessageBrickCount","tags":["LocalUserSecurity"],"Class":"DataModel","type":"Function"},{"ReturnType":"void","Arguments":[{"Type":"int","Name":"placeID","Default":null},{"Type":"bool","Name":"robloxPlace","Default":"false"}],"Name":"SetPlaceID","tags":["PluginSecurity","deprecated"],"Class":"DataModel","type":"Function"},{"ReturnType":"void","Arguments":[{"Type":"int","Name":"placeId","Default":null},{"Type":"bool","Name":"robloxPlace","Default":"false"}],"Name":"SetPlaceId","tags":["PluginSecurity"],"Class":"DataModel","type":"Function"},{"ReturnType":"void","Arguments":[{"Type":"int","Name":"placeId","Default":null}],"Name":"SetPlaceVersion","tags":["PluginSecurity"],"Class":"DataModel","type":"Function"},{"ReturnType":"void","Arguments":[{"Type":"bool","Name":"buildModeEnabled","Default":null}],"Name":"SetRemoteBuildMode","tags":["LocalUserSecurity"],"Class":"DataModel","type":"Function"},{"ReturnType":"void","Arguments":[{"Type":"string","Name":"info","Default":null}],"Name":"SetScreenshotInfo","tags":["LocalUserSecurity"],"Class":"DataModel","type":"Function"},{"ReturnType":"void","Arguments":[{"Type":"string","Name":"url","Default":null}],"Name":"SetServerSaveUrl","tags":["LocalUserSecurity"],"Class":"DataModel","type":"Function"},{"ReturnType":"void","Arguments":[{"Type":"int","Name":"universeId","Default":null}],"Name":"SetUniverseId","tags":["PluginSecurity"],"Class":"DataModel","type":"Function"},{"ReturnType":"void","Arguments":[{"Type":"string","Name":"newId","Default":null}],"Name":"SetVIPServerId","tags":["LocalUserSecurity"],"Class":"DataModel","type":"Function"},{"ReturnType":"void","Arguments":[{"Type":"int","Name":"newId","Default":null}],"Name":"SetVIPServerOwnerId","tags":["LocalUserSecurity"],"Class":"DataModel","type":"Function"},{"ReturnType":"void","Arguments":[{"Type":"string","Name":"info","Default":null}],"Name":"SetVideoInfo","tags":["LocalUserSecurity"],"Class":"DataModel","type":"Function"},{"ReturnType":"void","Arguments":[],"Name":"Shutdown","tags":["LocalUserSecurity"],"Class":"DataModel","type":"Function"},{"ReturnType":"void","Arguments":[],"Name":"ToggleTools","tags":["LocalUserSecurity"],"Class":"DataModel","type":"Function"},{"ReturnType":"string","Arguments":[{"Type":"string","Name":"url","Default":null}],"Name":"HttpGetAsync","tags":["RobloxScriptSecurity"],"Class":"DataModel","type":"YieldFunction"},{"ReturnType":"string","Arguments":[{"Type":"string","Name":"url","Default":null},{"Type":"string","Name":"data","Default":null},{"Type":"string","Name":"contentType","Default":"*/*"}],"Name":"HttpPostAsync","tags":["RobloxScriptSecurity"],"Class":"DataModel","type":"YieldFunction"},{"ReturnType":"bool","Arguments":[{"Type":"SaveFilter","Name":"saveFilter","Default":"SaveAll"}],"Name":"SavePlace","tags":[],"Class":"DataModel","type":"YieldFunction"},{"ReturnType":"bool","Arguments":[],"Name":"SaveToRoblox","tags":["RobloxScriptSecurity"],"Class":"DataModel","type":"YieldFunction"},{"Arguments":[],"Name":"AllowedGearTypeChanged","tags":[],"Class":"DataModel","type":"Event"},{"Arguments":[{"Name":"betterQuality","Type":"bool"}],"Name":"GraphicsQualityChangeRequest","tags":[],"Class":"DataModel","type":"Event"},{"Arguments":[{"Name":"object","Type":"Instance"},{"Name":"descriptor","Type":"Property"}],"Name":"ItemChanged","tags":[],"Class":"DataModel","type":"Event"},{"Arguments":[],"Name":"Loaded","tags":[],"Class":"DataModel","type":"Event"},{"ReturnType":"Tuple","Arguments":[],"Name":"OnClose","tags":[],"Class":"DataModel","type":"Callback"},{"ReturnType":"bool","Arguments":[],"Name":"RequestShutdown","tags":["RobloxScriptSecurity","noyield"],"Class":"DataModel","type":"Callback"},{"Superclass":"ServiceProvider","type":"Class","Name":"GenericSettings","tags":[]},{"Superclass":"GenericSettings","type":"Class","Name":"GlobalSettings","tags":["notbrowsable"]},{"ReturnType":"bool","Arguments":[{"Type":"string","Name":"name","Default":null}],"Name":"GetFFlag","tags":[],"Class":"GlobalSettings","type":"Function"},{"ReturnType":"string","Arguments":[{"Type":"string","Name":"name","Default":null}],"Name":"GetFVariable","tags":[],"Class":"GlobalSettings","type":"Function"},{"ReturnType":"Dictionary","Arguments":[],"Name":"GetFVariables","tags":["RobloxScriptSecurity"],"Class":"GlobalSettings","type":"Function"},{"Superclass":"GenericSettings","type":"Class","Name":"UserSettings","tags":[]},{"ReturnType":"bool","Arguments":[{"Type":"string","Name":"name","Default":null}],"Name":"IsUserFeatureEnabled","tags":[],"Class":"UserSettings","type":"Function"},{"ReturnType":"void","Arguments":[],"Name":"Reset","tags":[],"Class":"UserSettings","type":"Function"},{"Superclass":"Instance","type":"Class","Name":"Sky","tags":[]},{"ValueType":"bool","type":"Property","Name":"CelestialBodiesShown","tags":[],"Class":"Sky"},{"ValueType":"Content","type":"Property","Name":"SkyboxBk","tags":[],"Class":"Sky"},{"ValueType":"Content","type":"Property","Name":"SkyboxDn","tags":[],"Class":"Sky"},{"ValueType":"Content","type":"Property","Name":"SkyboxFt","tags":[],"Class":"Sky"},{"ValueType":"Content","type":"Property","Name":"SkyboxLf","tags":[],"Class":"Sky"},{"ValueType":"Content","type":"Property","Name":"SkyboxRt","tags":[],"Class":"Sky"},{"ValueType":"Content","type":"Property","Name":"SkyboxUp","tags":[],"Class":"Sky"},{"ValueType":"int","type":"Property","Name":"StarCount","tags":[],"Class":"Sky"},{"Superclass":"Instance","type":"Class","Name":"Smoke","tags":[]},{"ValueType":"Color3","type":"Property","Name":"Color","tags":[],"Class":"Smoke"},{"ValueType":"bool","type":"Property","Name":"Enabled","tags":[],"Class":"Smoke"},{"ValueType":"float","type":"Property","Name":"Opacity","tags":[],"Class":"Smoke"},{"ValueType":"float","type":"Property","Name":"RiseVelocity","tags":[],"Class":"Smoke"},{"ValueType":"float","type":"Property","Name":"Size","tags":[],"Class":"Smoke"},{"Superclass":"Instance","type":"Class","Name":"SocialService","tags":[]},{"ReturnType":"void","Arguments":[{"Type":"string","Name":"bestFriendUrl","Default":null}],"Name":"SetBestFriendUrl","tags":["LocalUserSecurity"],"Class":"SocialService","type":"Function"},{"ReturnType":"void","Arguments":[{"Type":"string","Name":"friendUrl","Default":null}],"Name":"SetFriendUrl","tags":["LocalUserSecurity"],"Class":"SocialService","type":"Function"},{"ReturnType":"void","Arguments":[{"Type":"string","Name":"groupRankUrl","Default":null}],"Name":"SetGroupRankUrl","tags":["LocalUserSecurity"],"Class":"SocialService","type":"Function"},{"ReturnType":"void","Arguments":[{"Type":"string","Name":"groupRoleUrl","Default":null}],"Name":"SetGroupRoleUrl","tags":["LocalUserSecurity"],"Class":"SocialService","type":"Function"},{"ReturnType":"void","Arguments":[{"Type":"string","Name":"groupUrl","Default":null}],"Name":"SetGroupUrl","tags":["LocalUserSecurity"],"Class":"SocialService","type":"Function"},{"ReturnType":"void","Arguments":[{"Type":"string","Name":"stuffUrl","Default":null}],"Name":"SetPackageContentsUrl","tags":["LocalUserSecurity"],"Class":"SocialService","type":"Function"},{"ReturnType":"void","Arguments":[{"Type":"string","Name":"stuffUrl","Default":null}],"Name":"SetStuffUrl","tags":["LocalUserSecurity"],"Class":"SocialService","type":"Function"},{"Superclass":"Instance","type":"Class","Name":"Sound","tags":[]},{"ValueType":"bool","type":"Property","Name":"IsPaused","tags":["readonly"],"Class":"Sound"},{"ValueType":"bool","type":"Property","Name":"IsPlaying","tags":["readonly"],"Class":"Sound"},{"ValueType":"bool","type":"Property","Name":"Looped","tags":[],"Class":"Sound"},{"ValueType":"float","type":"Property","Name":"MaxDistance","tags":[],"Class":"Sound"},{"ValueType":"float","type":"Property","Name":"MinDistance","tags":[],"Class":"Sound"},{"ValueType":"float","type":"Property","Name":"Pitch","tags":[],"Class":"Sound"},{"ValueType":"bool","type":"Property","Name":"PlayOnRemove","tags":[],"Class":"Sound"},{"ValueType":"Content","type":"Property","Name":"SoundId","tags":[],"Class":"Sound"},{"ValueType":"double","type":"Property","Name":"TimeLength","tags":["readonly"],"Class":"Sound"},{"ValueType":"double","type":"Property","Name":"TimePosition","tags":[],"Class":"Sound"},{"ValueType":"float","type":"Property","Name":"Volume","tags":[],"Class":"Sound"},{"ValueType":"bool","type":"Property","Name":"isPlaying","tags":["deprecated","readonly"],"Class":"Sound"},{"ReturnType":"void","Arguments":[],"Name":"Pause","tags":[],"Class":"Sound","type":"Function"},{"ReturnType":"void","Arguments":[],"Name":"Play","tags":[],"Class":"Sound","type":"Function"},{"ReturnType":"void","Arguments":[],"Name":"Resume","tags":[],"Class":"Sound","type":"Function"},{"ReturnType":"void","Arguments":[],"Name":"Stop","tags":[],"Class":"Sound","type":"Function"},{"ReturnType":"void","Arguments":[],"Name":"pause","tags":["deprecated"],"Class":"Sound","type":"Function"},{"ReturnType":"void","Arguments":[],"Name":"play","tags":["deprecated"],"Class":"Sound","type":"Function"},{"ReturnType":"void","Arguments":[],"Name":"stop","tags":["deprecated"],"Class":"Sound","type":"Function"},{"Arguments":[{"Name":"soundId","Type":"string"},{"Name":"numOfTimesLooped","Type":"int"}],"Name":"DidLoop","tags":[],"Class":"Sound","type":"Event"},{"Arguments":[{"Name":"soundId","Type":"string"}],"Name":"Ended","tags":[],"Class":"Sound","type":"Event"},{"Arguments":[{"Name":"soundId","Type":"string"}],"Name":"Paused","tags":[],"Class":"Sound","type":"Event"},{"Arguments":[{"Name":"soundId","Type":"string"}],"Name":"Played","tags":[],"Class":"Sound","type":"Event"},{"Arguments":[{"Name":"soundId","Type":"string"}],"Name":"Stopped","tags":[],"Class":"Sound","type":"Event"},{"Superclass":"Instance","type":"Class","Name":"SoundService","tags":["notCreatable"]},{"ValueType":"ReverbType","type":"Property","Name":"AmbientReverb","tags":[],"Class":"SoundService"},{"ValueType":"float","type":"Property","Name":"DistanceFactor","tags":[],"Class":"SoundService"},{"ValueType":"float","type":"Property","Name":"DopplerScale","tags":[],"Class":"SoundService"},{"ValueType":"float","type":"Property","Name":"RolloffScale","tags":[],"Class":"SoundService"},{"ReturnType":"Tuple","Arguments":[],"Name":"GetListener","tags":[],"Class":"SoundService","type":"Function"},{"ReturnType":"void","Arguments":[{"Type":"SoundType","Name":"sound","Default":null}],"Name":"PlayStockSound","tags":["RobloxScriptSecurity"],"Class":"SoundService","type":"Function"},{"ReturnType":"void","Arguments":[{"Type":"ListenerType","Name":"listenerType","Default":null},{"Type":"Tuple","Name":"listener","Default":null}],"Name":"SetListener","tags":[],"Class":"SoundService","type":"Function"},{"Superclass":"Instance","type":"Class","Name":"Sparkles","tags":[]},{"ValueType":"Color3","type":"Property","Name":"Color","tags":["hidden"],"Class":"Sparkles"},{"ValueType":"bool","type":"Property","Name":"Enabled","tags":[],"Class":"Sparkles"},{"ValueType":"Color3","type":"Property","Name":"SparkleColor","tags":[],"Class":"Sparkles"},{"Superclass":"Instance","type":"Class","Name":"SpawnerService","tags":[]},{"Superclass":"Instance","type":"Class","Name":"StarterGear","tags":[]},{"Superclass":"Instance","type":"Class","Name":"StarterPlayer","tags":[]},{"ValueType":"bool","type":"Property","Name":"AutoJumpEnabled","tags":[],"Class":"StarterPlayer"},{"ValueType":"float","type":"Property","Name":"CameraMaxZoomDistance","tags":[],"Class":"StarterPlayer"},{"ValueType":"float","type":"Property","Name":"CameraMinZoomDistance","tags":[],"Class":"StarterPlayer"},{"ValueType":"CameraMode","type":"Property","Name":"CameraMode","tags":[],"Class":"StarterPlayer"},{"ValueType":"DevCameraOcclusionMode","type":"Property","Name":"DevCameraOcclusionMode","tags":[],"Class":"StarterPlayer"},{"ValueType":"DevComputerCameraMovementMode","type":"Property","Name":"DevComputerCameraMovementMode","tags":[],"Class":"StarterPlayer"},{"ValueType":"DevComputerMovementMode","type":"Property","Name":"DevComputerMovementMode","tags":[],"Class":"StarterPlayer"},{"ValueType":"DevTouchCameraMovementMode","type":"Property","Name":"DevTouchCameraMovementMode","tags":[],"Class":"StarterPlayer"},{"ValueType":"DevTouchMovementMode","type":"Property","Name":"DevTouchMovementMode","tags":[],"Class":"StarterPlayer"},{"ValueType":"bool","type":"Property","Name":"EnableMouseLockOption","tags":[],"Class":"StarterPlayer"},{"ValueType":"float","type":"Property","Name":"HealthDisplayDistance","tags":[],"Class":"StarterPlayer"},{"ValueType":"bool","type":"Property","Name":"LoadCharacterAppearance","tags":[],"Class":"StarterPlayer"},{"ValueType":"float","type":"Property","Name":"NameDisplayDistance","tags":[],"Class":"StarterPlayer"},{"Superclass":"Instance","type":"Class","Name":"StarterPlayerScripts","tags":[]},{"Superclass":"StarterPlayerScripts","type":"Class","Name":"StarterCharacterScripts","tags":[]},{"Superclass":"Instance","type":"Class","Name":"Stats","tags":["notCreatable"]},{"ValueType":"double","type":"Property","Name":"MinReportInterval","tags":["RobloxScriptSecurity"],"Class":"Stats"},{"ValueType":"string","type":"Property","Name":"ReporterType","tags":["RobloxScriptSecurity"],"Class":"Stats"},{"ReturnType":"void","Arguments":[{"Type":"string","Name":"category","Default":null},{"Type":"Dictionary","Name":"data","Default":null}],"Name":"Report","tags":["RobloxScriptSecurity"],"Class":"Stats","type":"Function"},{"ReturnType":"void","Arguments":[],"Name":"ReportJobsStepWindow","tags":["RobloxScriptSecurity"],"Class":"Stats","type":"Function"},{"ReturnType":"void","Arguments":[{"Type":"bool","Name":"includeJobs","Default":"false"}],"Name":"ReportTaskScheduler","tags":["RobloxScriptSecurity"],"Class":"Stats","type":"Function"},{"ReturnType":"void","Arguments":[{"Type":"string","Name":"url","Default":null}],"Name":"SetReportUrl","tags":["RobloxScriptSecurity"],"Class":"Stats","type":"Function"},{"Superclass":"Instance","type":"Class","Name":"StatsItem","tags":[]},{"ReturnType":"double","Arguments":[],"Name":"GetValue","tags":["PluginSecurity"],"Class":"StatsItem","type":"Function"},{"ReturnType":"string","Arguments":[],"Name":"GetValueString","tags":["PluginSecurity"],"Class":"StatsItem","type":"Function"},{"Superclass":"StatsItem","type":"Class","Name":"ProfilingItem","tags":[]},{"ReturnType":"Tuple","Arguments":[{"Type":"double","Name":"window","Default":"0"}],"Name":"GetTimes","tags":["PluginSecurity"],"Class":"ProfilingItem","type":"Function"},{"ReturnType":"Tuple","Arguments":[{"Type":"int","Name":"frames","Default":"1"}],"Name":"GetTimesForFrames","tags":["PluginSecurity"],"Class":"ProfilingItem","type":"Function"},{"Superclass":"StatsItem","type":"Class","Name":"RunningAverageItemDouble","tags":[]},{"Superclass":"StatsItem","type":"Class","Name":"RunningAverageItemInt","tags":[]},{"Superclass":"StatsItem","type":"Class","Name":"RunningAverageTimeIntervalItem","tags":[]},{"Superclass":"StatsItem","type":"Class","Name":"TotalCountTimeIntervalItem","tags":[]},{"Superclass":"Instance","type":"Class","Name":"StringValue","tags":[]},{"ValueType":"string","type":"Property","Name":"Value","tags":[],"Class":"StringValue"},{"Arguments":[{"Name":"value","Type":"string"}],"Name":"Changed","tags":[],"Class":"StringValue","type":"Event"},{"Arguments":[{"Name":"value","Type":"string"}],"Name":"changed","tags":["deprecated"],"Class":"StringValue","type":"Event"},{"Superclass":"Instance","type":"Class","Name":"StudioTool","tags":[]},{"ValueType":"bool","type":"Property","Name":"Enabled","tags":[],"Class":"StudioTool"},{"Arguments":[],"Name":"Activated","tags":[],"Class":"StudioTool","type":"Event"},{"Arguments":[],"Name":"Deactivated","tags":[],"Class":"StudioTool","type":"Event"},{"Arguments":[{"Name":"mouse","Type":"Instance"}],"Name":"Equipped","tags":[],"Class":"StudioTool","type":"Event"},{"Arguments":[],"Name":"Unequipped","tags":[],"Class":"StudioTool","type":"Event"},{"Superclass":"Instance","type":"Class","Name":"TaskScheduler","tags":[]},{"ValueType":"bool","type":"Property","Name":"AreArbitersThrottled","tags":[],"Class":"TaskScheduler"},{"ValueType":"ConcurrencyModel","type":"Property","Name":"Concurrency","tags":[],"Class":"TaskScheduler"},{"ValueType":"double","type":"Property","Name":"NumRunningJobs","tags":["readonly"],"Class":"TaskScheduler"},{"ValueType":"double","type":"Property","Name":"NumSleepingJobs","tags":["readonly"],"Class":"TaskScheduler"},{"ValueType":"double","type":"Property","Name":"NumWaitingJobs","tags":["readonly"],"Class":"TaskScheduler"},{"ValueType":"PriorityMethod","type":"Property","Name":"PriorityMethod","tags":[],"Class":"TaskScheduler"},{"ValueType":"double","type":"Property","Name":"SchedulerDutyCycle","tags":["readonly"],"Class":"TaskScheduler"},{"ValueType":"double","type":"Property","Name":"SchedulerRate","tags":["readonly"],"Class":"TaskScheduler"},{"ValueType":"SleepAdjustMethod","type":"Property","Name":"SleepAdjustMethod","tags":[],"Class":"TaskScheduler"},{"ValueType":"double","type":"Property","Name":"ThreadAffinity","tags":["readonly"],"Class":"TaskScheduler"},{"ValueType":"ThreadPoolConfig","type":"Property","Name":"ThreadPoolConfig","tags":[],"Class":"TaskScheduler"},{"ValueType":"int","type":"Property","Name":"ThreadPoolSize","tags":["readonly"],"Class":"TaskScheduler"},{"ValueType":"double","type":"Property","Name":"ThrottledJobSleepTime","tags":[],"Class":"TaskScheduler"},{"ReturnType":"void","Arguments":[{"Type":"bool","Name":"exclusive","Default":"true"},{"Type":"double","Name":"fps","Default":"30"}],"Name":"AddDummyJob","tags":["LocalUserSecurity"],"Class":"TaskScheduler","type":"Function"},{"ReturnType":"void","Arguments":[{"Type":"double","Name":"timeSlice","Default":null},{"Type":"int","Name":"numShare","Default":null}],"Name":"SetThreadShare","tags":["LocalUserSecurity","deprecated"],"Class":"TaskScheduler","type":"Function"},{"Superclass":"Instance","type":"Class","Name":"Team","tags":[]},{"ValueType":"bool","type":"Property","Name":"AutoAssignable","tags":[],"Class":"Team"},{"ValueType":"bool","type":"Property","Name":"AutoColorCharacters","tags":["deprecated"],"Class":"Team"},{"ValueType":"int","type":"Property","Name":"Score","tags":["deprecated"],"Class":"Team"},{"ValueType":"BrickColor","type":"Property","Name":"TeamColor","tags":[],"Class":"Team"},{"Superclass":"Instance","type":"Class","Name":"Teams","tags":["notCreatable"]},{"ReturnType":"Objects","Arguments":[],"Name":"GetTeams","tags":[],"Class":"Teams","type":"Function"},{"ReturnType":"void","Arguments":[],"Name":"RebalanceTeams","tags":["deprecated"],"Class":"Teams","type":"Function"},{"Superclass":"Instance","type":"Class","Name":"TeleportService","tags":[]},{"ValueType":"bool","type":"Property","Name":"CustomizedTeleportUI","tags":["deprecated"],"Class":"TeleportService"},{"ReturnType":"Variant","Arguments":[],"Name":"GetLocalPlayerTeleportData","tags":[],"Class":"TeleportService","type":"Function"},{"ReturnType":"Variant","Arguments":[{"Type":"string","Name":"setting","Default":null}],"Name":"GetTeleportSetting","tags":[],"Class":"TeleportService","type":"Function"},{"ReturnType":"void","Arguments":[{"Type":"string","Name":"setting","Default":null},{"Type":"Variant","Name":"value","Default":null}],"Name":"SetTeleportSetting","tags":[],"Class":"TeleportService","type":"Function"},{"ReturnType":"void","Arguments":[{"Type":"int","Name":"placeId","Default":null},{"Type":"Instance","Name":"player","Default":"nil"},{"Type":"Variant","Name":"teleportData","Default":null},{"Type":"Instance","Name":"customLoadingScreen","Default":"nil"}],"Name":"Teleport","tags":[],"Class":"TeleportService","type":"Function"},{"ReturnType":"void","Arguments":[],"Name":"TeleportCancel","tags":["RobloxScriptSecurity"],"Class":"TeleportService","type":"Function"},{"ReturnType":"void","Arguments":[{"Type":"int","Name":"placeId","Default":null},{"Type":"string","Name":"instanceId","Default":null},{"Type":"Instance","Name":"player","Default":"nil"},{"Type":"string","Name":"spawnName","Default":""},{"Type":"Variant","Name":"teleportData","Default":null},{"Type":"Instance","Name":"customLoadingScreen","Default":"nil"}],"Name":"TeleportToPlaceInstance","tags":[],"Class":"TeleportService","type":"Function"},{"ReturnType":"void","Arguments":[{"Type":"int","Name":"placeId","Default":null},{"Type":"string","Name":"reservedServerAccessCode","Default":null},{"Type":"Objects","Name":"players","Default":null},{"Type":"string","Name":"spawnName","Default":""},{"Type":"Variant","Name":"teleportData","Default":null},{"Type":"Instance","Name":"customLoadingScreen","Default":"nil"}],"Name":"TeleportToPrivateServer","tags":[],"Class":"TeleportService","type":"Function"},{"ReturnType":"void","Arguments":[{"Type":"int","Name":"placeId","Default":null},{"Type":"string","Name":"spawnName","Default":null},{"Type":"Instance","Name":"player","Default":"nil"},{"Type":"Variant","Name":"teleportData","Default":null},{"Type":"Instance","Name":"customLoadingScreen","Default":"nil"}],"Name":"TeleportToSpawnByName","tags":[],"Class":"TeleportService","type":"Function"},{"ReturnType":"Tuple","Arguments":[{"Type":"int","Name":"userId","Default":null}],"Name":"GetPlayerPlaceInstanceAsync","tags":[],"Class":"TeleportService","type":"YieldFunction"},{"ReturnType":"string","Arguments":[{"Type":"int","Name":"placeId","Default":null}],"Name":"ReserveServer","tags":[],"Class":"TeleportService","type":"YieldFunction"},{"Arguments":[{"Name":"loadingGui","Type":"Instance"},{"Name":"dataTable","Type":"Variant"}],"Name":"LocalPlayerArrivedFromTeleport","tags":[],"Class":"TeleportService","type":"Event"},{"ReturnType":"bool","Arguments":[{"Name":"message","Type":"string"},{"Name":"placeId","Type":"int"},{"Name":"spawnName","Type":"string"}],"Name":"ConfirmationCallback","tags":["RobloxScriptSecurity","noyield"],"Class":"TeleportService","type":"Callback"},{"ReturnType":"void","Arguments":[{"Name":"message","Type":"string"}],"Name":"ErrorCallback","tags":["RobloxScriptSecurity","noyield"],"Class":"TeleportService","type":"Callback"},{"Superclass":"Instance","type":"Class","Name":"TerrainRegion","tags":[]},{"ValueType":"bool","type":"Property","Name":"IsSmooth","tags":["readonly"],"Class":"TerrainRegion"},{"ValueType":"Vector3","type":"Property","Name":"SizeInCells","tags":["readonly"],"Class":"TerrainRegion"},{"ReturnType":"void","Arguments":[],"Name":"ConvertToSmooth","tags":["PluginSecurity"],"Class":"TerrainRegion","type":"Function"},{"Superclass":"Instance","type":"Class","Name":"TestService","tags":[]},{"ValueType":"bool","type":"Property","Name":"AutoRuns","tags":[],"Class":"TestService"},{"ValueType":"string","type":"Property","Name":"Description","tags":[],"Class":"TestService"},{"ValueType":"int","type":"Property","Name":"ErrorCount","tags":["readonly"],"Class":"TestService"},{"ValueType":"bool","type":"Property","Name":"Is30FpsThrottleEnabled","tags":[],"Class":"TestService"},{"ValueType":"bool","type":"Property","Name":"IsPhysicsEnvironmentalThrottled","tags":[],"Class":"TestService"},{"ValueType":"bool","type":"Property","Name":"IsSleepAllowed","tags":[],"Class":"TestService"},{"ValueType":"int","type":"Property","Name":"NumberOfPlayers","tags":[],"Class":"TestService"},{"ValueType":"double","type":"Property","Name":"SimulateSecondsLag","tags":[],"Class":"TestService"},{"ValueType":"int","type":"Property","Name":"TestCount","tags":["readonly"],"Class":"TestService"},{"ValueType":"double","type":"Property","Name":"Timeout","tags":[],"Class":"TestService"},{"ValueType":"int","type":"Property","Name":"WarnCount","tags":["readonly"],"Class":"TestService"},{"ReturnType":"void","Arguments":[{"Type":"bool","Name":"condition","Default":null},{"Type":"string","Name":"description","Default":null},{"Type":"Instance","Name":"source","Default":"nil"},{"Type":"int","Name":"line","Default":"0"}],"Name":"Check","tags":[],"Class":"TestService","type":"Function"},{"ReturnType":"void","Arguments":[{"Type":"string","Name":"text","Default":null},{"Type":"Instance","Name":"source","Default":"nil"},{"Type":"int","Name":"line","Default":"0"}],"Name":"Checkpoint","tags":[],"Class":"TestService","type":"Function"},{"ReturnType":"void","Arguments":[],"Name":"Done","tags":[],"Class":"TestService","type":"Function"},{"ReturnType":"void","Arguments":[{"Type":"string","Name":"description","Default":null},{"Type":"Instance","Name":"source","Default":"nil"},{"Type":"int","Name":"line","Default":"0"}],"Name":"Error","tags":[],"Class":"TestService","type":"Function"},{"ReturnType":"void","Arguments":[{"Type":"string","Name":"description","Default":null},{"Type":"Instance","Name":"source","Default":"nil"},{"Type":"int","Name":"line","Default":"0"}],"Name":"Fail","tags":[],"Class":"TestService","type":"Function"},{"ReturnType":"void","Arguments":[{"Type":"string","Name":"text","Default":null},{"Type":"Instance","Name":"source","Default":"nil"},{"Type":"int","Name":"line","Default":"0"}],"Name":"Message","tags":[],"Class":"TestService","type":"Function"},{"ReturnType":"void","Arguments":[{"Type":"bool","Name":"condition","Default":null},{"Type":"string","Name":"description","Default":null},{"Type":"Instance","Name":"source","Default":"nil"},{"Type":"int","Name":"line","Default":"0"}],"Name":"Require","tags":[],"Class":"TestService","type":"Function"},{"ReturnType":"void","Arguments":[{"Type":"bool","Name":"condition","Default":null},{"Type":"string","Name":"description","Default":null},{"Type":"Instance","Name":"source","Default":"nil"},{"Type":"int","Name":"line","Default":"0"}],"Name":"Warn","tags":[],"Class":"TestService","type":"Function"},{"ReturnType":"void","Arguments":[],"Name":"Run","tags":["PluginSecurity"],"Class":"TestService","type":"YieldFunction"},{"Arguments":[{"Name":"condition","Type":"bool"},{"Name":"text","Type":"string"},{"Name":"script","Type":"Instance"},{"Name":"line","Type":"int"}],"Name":"ServerCollectConditionalResult","tags":[],"Class":"TestService","type":"Event"},{"Arguments":[{"Name":"text","Type":"string"},{"Name":"script","Type":"Instance"},{"Name":"line","Type":"int"}],"Name":"ServerCollectResult","tags":[],"Class":"TestService","type":"Event"},{"Superclass":"Instance","type":"Class","Name":"TextService","tags":["notCreatable"]},{"ReturnType":"Vector2","Arguments":[{"Type":"string","Name":"string","Default":null},{"Type":"int","Name":"fontSize","Default":null},{"Type":"Font","Name":"font","Default":null},{"Type":"Vector2","Name":"frameSize","Default":null}],"Name":"GetTextSize","tags":["RobloxScriptSecurity"],"Class":"TextService","type":"Function"},{"Superclass":"Instance","type":"Class","Name":"TimerService","tags":["notCreatable"]},{"Superclass":"Instance","type":"Class","Name":"Toolbar","tags":[]},{"ReturnType":"Instance","Arguments":[{"Type":"string","Name":"text","Default":null},{"Type":"string","Name":"tooltip","Default":null},{"Type":"string","Name":"iconname","Default":null}],"Name":"CreateButton","tags":["PluginSecurity"],"Class":"Toolbar","type":"Function"},{"Superclass":"Instance","type":"Class","Name":"TouchInputService","tags":[]},{"Superclass":"Instance","type":"Class","Name":"TouchTransmitter","tags":["notCreatable","notbrowsable"]},{"Superclass":"Instance","type":"Class","Name":"TweenService","tags":[]},{"Superclass":"Instance","type":"Class","Name":"UserGameSettings","tags":[]},{"ValueType":"bool","type":"Property","Name":"AllTutorialsDisabled","tags":["RobloxScriptSecurity"],"Class":"UserGameSettings"},{"ValueType":"CustomCameraMode","type":"Property","Name":"CameraMode","tags":["RobloxScriptSecurity"],"Class":"UserGameSettings"},{"ValueType":"ComputerCameraMovementMode","type":"Property","Name":"ComputerCameraMovementMode","tags":[],"Class":"UserGameSettings"},{"ValueType":"ComputerMovementMode","type":"Property","Name":"ComputerMovementMode","tags":[],"Class":"UserGameSettings"},{"ValueType":"ControlMode","type":"Property","Name":"ControlMode","tags":[],"Class":"UserGameSettings"},{"ValueType":"bool","type":"Property","Name":"Fullscreen","tags":["RobloxScriptSecurity"],"Class":"UserGameSettings"},{"ValueType":"UploadSetting","type":"Property","Name":"ImageUploadPromptBehavior","tags":["RobloxScriptSecurity"],"Class":"UserGameSettings"},{"ValueType":"float","type":"Property","Name":"MasterVolume","tags":[],"Class":"UserGameSettings"},{"ValueType":"float","type":"Property","Name":"MouseSensitivity","tags":[],"Class":"UserGameSettings"},{"ValueType":"RotationType","type":"Property","Name":"RotationType","tags":[],"Class":"UserGameSettings"},{"ValueType":"SavedQualitySetting","type":"Property","Name":"SavedQualityLevel","tags":[],"Class":"UserGameSettings"},{"ValueType":"TouchCameraMovementMode","type":"Property","Name":"TouchCameraMovementMode","tags":[],"Class":"UserGameSettings"},{"ValueType":"TouchMovementMode","type":"Property","Name":"TouchMovementMode","tags":[],"Class":"UserGameSettings"},{"ValueType":"bool","type":"Property","Name":"UsedHideHudShortcut","tags":["RobloxScriptSecurity"],"Class":"UserGameSettings"},{"ValueType":"int","type":"Property","Name":"VRRotationIntensity","tags":["RobloxScriptSecurity"],"Class":"UserGameSettings"},{"ValueType":"UploadSetting","type":"Property","Name":"VideoUploadPromptBehavior","tags":["RobloxScriptSecurity"],"Class":"UserGameSettings"},{"ReturnType":"bool","Arguments":[{"Type":"string","Name":"tutorialId","Default":null}],"Name":"GetTutorialState","tags":["RobloxScriptSecurity"],"Class":"UserGameSettings","type":"Function"},{"ReturnType":"bool","Arguments":[],"Name":"InFullScreen","tags":[],"Class":"UserGameSettings","type":"Function"},{"ReturnType":"bool","Arguments":[],"Name":"InStudioMode","tags":[],"Class":"UserGameSettings","type":"Function"},{"ReturnType":"void","Arguments":[{"Type":"string","Name":"tutorialId","Default":null},{"Type":"bool","Name":"value","Default":null}],"Name":"SetTutorialState","tags":["RobloxScriptSecurity"],"Class":"UserGameSettings","type":"Function"},{"Arguments":[{"Name":"isFullscreen","Type":"bool"}],"Name":"FullscreenChanged","tags":[],"Class":"UserGameSettings","type":"Event"},{"Arguments":[{"Name":"isStudioMode","Type":"bool"}],"Name":"StudioModeChanged","tags":[],"Class":"UserGameSettings","type":"Event"},{"Superclass":"Instance","type":"Class","Name":"UserInputService","tags":["notCreatable"]},{"ValueType":"bool","type":"Property","Name":"AccelerometerEnabled","tags":["readonly"],"Class":"UserInputService"},{"ValueType":"bool","type":"Property","Name":"GamepadEnabled","tags":["readonly"],"Class":"UserInputService"},{"ValueType":"bool","type":"Property","Name":"GyroscopeEnabled","tags":["readonly"],"Class":"UserInputService"},{"ValueType":"bool","type":"Property","Name":"KeyboardEnabled","tags":["readonly"],"Class":"UserInputService"},{"ValueType":"bool","type":"Property","Name":"ModalEnabled","tags":[],"Class":"UserInputService"},{"ValueType":"MouseBehavior","type":"Property","Name":"MouseBehavior","tags":[],"Class":"UserInputService"},{"ValueType":"bool","type":"Property","Name":"MouseEnabled","tags":["readonly"],"Class":"UserInputService"},{"ValueType":"bool","type":"Property","Name":"MouseIconEnabled","tags":[],"Class":"UserInputService"},{"ValueType":"OverrideMouseIconBehavior","type":"Property","Name":"OverrideMouseIconBehavior","tags":["RobloxScriptSecurity"],"Class":"UserInputService"},{"ValueType":"bool","type":"Property","Name":"TouchEnabled","tags":["readonly"],"Class":"UserInputService"},{"ValueType":"CoordinateFrame","type":"Property","Name":"UserHeadCFrame","tags":["deprecated","readonly"],"Class":"UserInputService"},{"ValueType":"bool","type":"Property","Name":"VREnabled","tags":["readonly"],"Class":"UserInputService"},{"ReturnType":"bool","Arguments":[{"Type":"UserInputType","Name":"gamepadNum","Default":null},{"Type":"KeyCode","Name":"gamepadKeyCode","Default":null}],"Name":"GamepadSupports","tags":[],"Class":"UserInputService","type":"Function"},{"ReturnType":"Array","Arguments":[],"Name":"GetConnectedGamepads","tags":[],"Class":"UserInputService","type":"Function"},{"ReturnType":"Instance","Arguments":[],"Name":"GetDeviceAcceleration","tags":[],"Class":"UserInputService","type":"Function"},{"ReturnType":"Instance","Arguments":[],"Name":"GetDeviceGravity","tags":[],"Class":"UserInputService","type":"Function"},{"ReturnType":"Tuple","Arguments":[],"Name":"GetDeviceRotation","tags":[],"Class":"UserInputService","type":"Function"},{"ReturnType":"Instance","Arguments":[],"Name":"GetFocusedTextBox","tags":[],"Class":"UserInputService","type":"Function"},{"ReturnType":"bool","Arguments":[{"Type":"UserInputType","Name":"gamepadNum","Default":null}],"Name":"GetGamepadConnected","tags":[],"Class":"UserInputService","type":"Function"},{"ReturnType":"Array","Arguments":[{"Type":"UserInputType","Name":"gamepadNum","Default":null}],"Name":"GetGamepadState","tags":[],"Class":"UserInputService","type":"Function"},{"ReturnType":"Array","Arguments":[],"Name":"GetKeysPressed","tags":[],"Class":"UserInputService","type":"Function"},{"ReturnType":"UserInputType","Arguments":[],"Name":"GetLastInputType","tags":[],"Class":"UserInputService","type":"Function"},{"ReturnType":"Array","Arguments":[],"Name":"GetNavigationGamepads","tags":[],"Class":"UserInputService","type":"Function"},{"ReturnType":"Platform","Arguments":[],"Name":"GetPlatform","tags":["RobloxScriptSecurity"],"Class":"UserInputService","type":"Function"},{"ReturnType":"Array","Arguments":[{"Type":"UserInputType","Name":"gamepadNum","Default":null}],"Name":"GetSupportedGamepadKeyCodes","tags":[],"Class":"UserInputService","type":"Function"},{"ReturnType":"CoordinateFrame","Arguments":[{"Type":"UserCFrame","Name":"type","Default":null}],"Name":"GetUserCFrame","tags":[],"Class":"UserInputService","type":"Function"},{"ReturnType":"bool","Arguments":[{"Type":"KeyCode","Name":"keyCode","Default":null}],"Name":"IsKeyDown","tags":[],"Class":"UserInputService","type":"Function"},{"ReturnType":"bool","Arguments":[{"Type":"UserInputType","Name":"gamepadEnum","Default":null}],"Name":"IsNavigationGamepad","tags":[],"Class":"UserInputService","type":"Function"},{"ReturnType":"void","Arguments":[],"Name":"RecenterUserHeadCFrame","tags":[],"Class":"UserInputService","type":"Function"},{"ReturnType":"void","Arguments":[{"Type":"UserInputType","Name":"gamepadEnum","Default":null},{"Type":"bool","Name":"enabled","Default":null}],"Name":"SetNavigationGamepad","tags":[],"Class":"UserInputService","type":"Function"},{"Arguments":[{"Name":"acceleration","Type":"Instance"}],"Name":"DeviceAccelerationChanged","tags":[],"Class":"UserInputService","type":"Event"},{"Arguments":[{"Name":"gravity","Type":"Instance"}],"Name":"DeviceGravityChanged","tags":[],"Class":"UserInputService","type":"Event"},{"Arguments":[{"Name":"rotation","Type":"Instance"},{"Name":"cframe","Type":"CoordinateFrame"}],"Name":"DeviceRotationChanged","tags":[],"Class":"UserInputService","type":"Event"},{"Arguments":[{"Name":"gamepadNum","Type":"UserInputType"}],"Name":"GamepadConnected","tags":[],"Class":"UserInputService","type":"Event"},{"Arguments":[{"Name":"gamepadNum","Type":"UserInputType"}],"Name":"GamepadDisconnected","tags":[],"Class":"UserInputService","type":"Event"},{"Arguments":[{"Name":"input","Type":"Instance"},{"Name":"gameProcessedEvent","Type":"bool"}],"Name":"InputBegan","tags":[],"Class":"UserInputService","type":"Event"},{"Arguments":[{"Name":"input","Type":"Instance"},{"Name":"gameProcessedEvent","Type":"bool"}],"Name":"InputChanged","tags":[],"Class":"UserInputService","type":"Event"},{"Arguments":[{"Name":"input","Type":"Instance"},{"Name":"gameProcessedEvent","Type":"bool"}],"Name":"InputEnded","tags":[],"Class":"UserInputService","type":"Event"},{"Arguments":[],"Name":"JumpRequest","tags":[],"Class":"UserInputService","type":"Event"},{"Arguments":[{"Name":"lastInputType","Type":"UserInputType"}],"Name":"LastInputTypeChanged","tags":[],"Class":"UserInputService","type":"Event"},{"Arguments":[{"Name":"textboxReleased","Type":"Instance"}],"Name":"TextBoxFocusReleased","tags":[],"Class":"UserInputService","type":"Event"},{"Arguments":[{"Name":"textboxFocused","Type":"Instance"}],"Name":"TextBoxFocused","tags":[],"Class":"UserInputService","type":"Event"},{"Arguments":[{"Name":"touch","Type":"Instance"},{"Name":"gameProcessedEvent","Type":"bool"}],"Name":"TouchEnded","tags":[],"Class":"UserInputService","type":"Event"},{"Arguments":[{"Name":"touchPositions","Type":"Array"},{"Name":"state","Type":"UserInputState"},{"Name":"gameProcessedEvent","Type":"bool"}],"Name":"TouchLongPress","tags":[],"Class":"UserInputService","type":"Event"},{"Arguments":[{"Name":"touch","Type":"Instance"},{"Name":"gameProcessedEvent","Type":"bool"}],"Name":"TouchMoved","tags":[],"Class":"UserInputService","type":"Event"},{"Arguments":[{"Name":"touchPositions","Type":"Array"},{"Name":"totalTranslation","Type":"Vector2"},{"Name":"velocity","Type":"Vector2"},{"Name":"state","Type":"UserInputState"},{"Name":"gameProcessedEvent","Type":"bool"}],"Name":"TouchPan","tags":[],"Class":"UserInputService","type":"Event"},{"Arguments":[{"Name":"touchPositions","Type":"Array"},{"Name":"scale","Type":"float"},{"Name":"velocity","Type":"float"},{"Name":"state","Type":"UserInputState"},{"Name":"gameProcessedEvent","Type":"bool"}],"Name":"TouchPinch","tags":[],"Class":"UserInputService","type":"Event"},{"Arguments":[{"Name":"touchPositions","Type":"Array"},{"Name":"rotation","Type":"float"},{"Name":"velocity","Type":"float"},{"Name":"state","Type":"UserInputState"},{"Name":"gameProcessedEvent","Type":"bool"}],"Name":"TouchRotate","tags":[],"Class":"UserInputService","type":"Event"},{"Arguments":[{"Name":"touch","Type":"Instance"},{"Name":"gameProcessedEvent","Type":"bool"}],"Name":"TouchStarted","tags":[],"Class":"UserInputService","type":"Event"},{"Arguments":[{"Name":"swipeDirection","Type":"SwipeDirection"},{"Name":"numberOfTouches","Type":"int"},{"Name":"gameProcessedEvent","Type":"bool"}],"Name":"TouchSwipe","tags":[],"Class":"UserInputService","type":"Event"},{"Arguments":[{"Name":"touchPositions","Type":"Array"},{"Name":"gameProcessedEvent","Type":"bool"}],"Name":"TouchTap","tags":[],"Class":"UserInputService","type":"Event"},{"Arguments":[{"Name":"type","Type":"UserCFrame"},{"Name":"value","Type":"CoordinateFrame"}],"Name":"UserCFrameChanged","tags":[],"Class":"UserInputService","type":"Event"},{"Arguments":[],"Name":"WindowFocusReleased","tags":[],"Class":"UserInputService","type":"Event"},{"Arguments":[],"Name":"WindowFocused","tags":[],"Class":"UserInputService","type":"Event"},{"Superclass":"Instance","type":"Class","Name":"Vector3Value","tags":[]},{"ValueType":"Vector3","type":"Property","Name":"Value","tags":[],"Class":"Vector3Value"},{"Arguments":[{"Name":"value","Type":"Vector3"}],"Name":"Changed","tags":[],"Class":"Vector3Value","type":"Event"},{"Arguments":[{"Name":"value","Type":"Vector3"}],"Name":"changed","tags":["deprecated"],"Class":"Vector3Value","type":"Event"},{"Superclass":"Instance","type":"Class","Name":"VirtualUser","tags":["notCreatable"]},{"ReturnType":"void","Arguments":[{"Type":"Vector2","Name":"position","Default":null},{"Type":"CoordinateFrame","Name":"camera","Default":"Identity"}],"Name":"Button1Down","tags":["LocalUserSecurity"],"Class":"VirtualUser","type":"Function"},{"ReturnType":"void","Arguments":[{"Type":"Vector2","Name":"position","Default":null},{"Type":"CoordinateFrame","Name":"camera","Default":"Identity"}],"Name":"Button1Up","tags":["LocalUserSecurity"],"Class":"VirtualUser","type":"Function"},{"ReturnType":"void","Arguments":[{"Type":"Vector2","Name":"position","Default":null},{"Type":"CoordinateFrame","Name":"camera","Default":"Identity"}],"Name":"Button2Down","tags":["LocalUserSecurity"],"Class":"VirtualUser","type":"Function"},{"ReturnType":"void","Arguments":[{"Type":"Vector2","Name":"position","Default":null},{"Type":"CoordinateFrame","Name":"camera","Default":"Identity"}],"Name":"Button2Up","tags":["LocalUserSecurity"],"Class":"VirtualUser","type":"Function"},{"ReturnType":"void","Arguments":[],"Name":"CaptureController","tags":["LocalUserSecurity"],"Class":"VirtualUser","type":"Function"},{"ReturnType":"void","Arguments":[{"Type":"Vector2","Name":"position","Default":null},{"Type":"CoordinateFrame","Name":"camera","Default":"Identity"}],"Name":"ClickButton1","tags":["LocalUserSecurity"],"Class":"VirtualUser","type":"Function"},{"ReturnType":"void","Arguments":[{"Type":"Vector2","Name":"position","Default":null},{"Type":"CoordinateFrame","Name":"camera","Default":"Identity"}],"Name":"ClickButton2","tags":["LocalUserSecurity"],"Class":"VirtualUser","type":"Function"},{"ReturnType":"void","Arguments":[{"Type":"Vector2","Name":"position","Default":null},{"Type":"CoordinateFrame","Name":"camera","Default":"Identity"}],"Name":"MoveMouse","tags":["LocalUserSecurity"],"Class":"VirtualUser","type":"Function"},{"ReturnType":"void","Arguments":[{"Type":"string","Name":"key","Default":null}],"Name":"SetKeyDown","tags":["LocalUserSecurity"],"Class":"VirtualUser","type":"Function"},{"ReturnType":"void","Arguments":[{"Type":"string","Name":"key","Default":null}],"Name":"SetKeyUp","tags":["LocalUserSecurity"],"Class":"VirtualUser","type":"Function"},{"ReturnType":"void","Arguments":[],"Name":"StartRecording","tags":["LocalUserSecurity"],"Class":"VirtualUser","type":"Function"},{"ReturnType":"string","Arguments":[],"Name":"StopRecording","tags":["LocalUserSecurity"],"Class":"VirtualUser","type":"Function"},{"ReturnType":"void","Arguments":[{"Type":"string","Name":"key","Default":null}],"Name":"TypeKey","tags":["LocalUserSecurity"],"Class":"VirtualUser","type":"Function"},{"Superclass":"Instance","type":"Class","Name":"Visit","tags":["notCreatable"]},{"ReturnType":"string","Arguments":[],"Name":"GetUploadUrl","tags":["RobloxSecurity"],"Class":"Visit","type":"Function"},{"ReturnType":"void","Arguments":[{"Type":"string","Name":"pingUrl","Default":null},{"Type":"int","Name":"interval","Default":null}],"Name":"SetPing","tags":["RobloxSecurity"],"Class":"Visit","type":"Function"},{"ReturnType":"void","Arguments":[{"Type":"string","Name":"url","Default":null}],"Name":"SetUploadUrl","tags":["RobloxSecurity"],"Class":"Visit","type":"Function"},{"type":"Enum","Name":"AASamples","tags":[]},{"type":"EnumItem","Name":"None","tags":[],"Value":1,"Enum":"AASamples"},{"type":"EnumItem","Name":"4","tags":[],"Value":4,"Enum":"AASamples"},{"type":"EnumItem","Name":"8","tags":[],"Value":8,"Enum":"AASamples"},{"type":"Enum","Name":"AccessType","tags":[]},{"type":"EnumItem","Name":"Me","tags":[],"Value":0,"Enum":"AccessType"},{"type":"EnumItem","Name":"Friends","tags":[],"Value":1,"Enum":"AccessType"},{"type":"EnumItem","Name":"Everyone","tags":[],"Value":2,"Enum":"AccessType"},{"type":"EnumItem","Name":"InviteOnly","tags":[],"Value":3,"Enum":"AccessType"},{"type":"Enum","Name":"ActionType","tags":[]},{"type":"EnumItem","Name":"Nothing","tags":[],"Value":0,"Enum":"ActionType"},{"type":"EnumItem","Name":"Pause","tags":[],"Value":1,"Enum":"ActionType"},{"type":"EnumItem","Name":"Lose","tags":[],"Value":2,"Enum":"ActionType"},{"type":"EnumItem","Name":"Draw","tags":[],"Value":3,"Enum":"ActionType"},{"type":"EnumItem","Name":"Win","tags":[],"Value":4,"Enum":"ActionType"},{"type":"Enum","Name":"ActuatorType","tags":[]},{"type":"EnumItem","Name":"None","tags":[],"Value":0,"Enum":"ActuatorType"},{"type":"EnumItem","Name":"Motor","tags":[],"Value":1,"Enum":"ActuatorType"},{"type":"EnumItem","Name":"Servo","tags":[],"Value":2,"Enum":"ActuatorType"},{"type":"Enum","Name":"AnimationPriority","tags":[]},{"type":"EnumItem","Name":"Idle","tags":[],"Value":0,"Enum":"AnimationPriority"},{"type":"EnumItem","Name":"Movement","tags":[],"Value":1,"Enum":"AnimationPriority"},{"type":"EnumItem","Name":"Action","tags":[],"Value":2,"Enum":"AnimationPriority"},{"type":"EnumItem","Name":"Core","tags":[],"Value":1000,"Enum":"AnimationPriority"},{"type":"Enum","Name":"Antialiasing","tags":[]},{"type":"EnumItem","Name":"Automatic","tags":[],"Value":0,"Enum":"Antialiasing"},{"type":"EnumItem","Name":"Off","tags":[],"Value":2,"Enum":"Antialiasing"},{"type":"EnumItem","Name":"On","tags":[],"Value":1,"Enum":"Antialiasing"},{"type":"Enum","Name":"Axis","tags":[]},{"type":"EnumItem","Name":"X","tags":[],"Value":0,"Enum":"Axis"},{"type":"EnumItem","Name":"Y","tags":[],"Value":1,"Enum":"Axis"},{"type":"EnumItem","Name":"Z","tags":[],"Value":2,"Enum":"Axis"},{"type":"Enum","Name":"BinType","tags":[]},{"type":"EnumItem","Name":"Script","tags":[],"Value":0,"Enum":"BinType"},{"type":"EnumItem","Name":"GameTool","tags":[],"Value":1,"Enum":"BinType"},{"type":"EnumItem","Name":"Grab","tags":[],"Value":2,"Enum":"BinType"},{"type":"EnumItem","Name":"Clone","tags":[],"Value":3,"Enum":"BinType"},{"type":"EnumItem","Name":"Hammer","tags":[],"Value":4,"Enum":"BinType"},{"type":"Enum","Name":"BodyPart","tags":[]},{"type":"EnumItem","Name":"Head","tags":[],"Value":0,"Enum":"BodyPart"},{"type":"EnumItem","Name":"Torso","tags":[],"Value":1,"Enum":"BodyPart"},{"type":"EnumItem","Name":"LeftArm","tags":[],"Value":2,"Enum":"BodyPart"},{"type":"EnumItem","Name":"RightArm","tags":[],"Value":3,"Enum":"BodyPart"},{"type":"EnumItem","Name":"LeftLeg","tags":[],"Value":4,"Enum":"BodyPart"},{"type":"EnumItem","Name":"RightLeg","tags":[],"Value":5,"Enum":"BodyPart"},{"type":"Enum","Name":"Button","tags":[]},{"type":"EnumItem","Name":"Jump","tags":[],"Value":32,"Enum":"Button"},{"type":"EnumItem","Name":"Dismount","tags":[],"Value":8,"Enum":"Button"},{"type":"Enum","Name":"ButtonStyle","tags":[]},{"type":"EnumItem","Name":"Custom","tags":[],"Value":0,"Enum":"ButtonStyle"},{"type":"EnumItem","Name":"RobloxButtonDefault","tags":[],"Value":1,"Enum":"ButtonStyle"},{"type":"EnumItem","Name":"RobloxButton","tags":[],"Value":2,"Enum":"ButtonStyle"},{"type":"EnumItem","Name":"RobloxRoundButton","tags":[],"Value":3,"Enum":"ButtonStyle"},{"type":"EnumItem","Name":"RobloxRoundDefaultButton","tags":[],"Value":4,"Enum":"ButtonStyle"},{"type":"EnumItem","Name":"RobloxRoundDropdownButton","tags":[],"Value":5,"Enum":"ButtonStyle"},{"type":"Enum","Name":"CameraMode","tags":[]},{"type":"EnumItem","Name":"Classic","tags":[],"Value":0,"Enum":"CameraMode"},{"type":"EnumItem","Name":"LockFirstPerson","tags":[],"Value":1,"Enum":"CameraMode"},{"type":"Enum","Name":"CameraPanMode","tags":[]},{"type":"EnumItem","Name":"Classic","tags":[],"Value":0,"Enum":"CameraPanMode"},{"type":"EnumItem","Name":"EdgeBump","tags":[],"Value":1,"Enum":"CameraPanMode"},{"type":"Enum","Name":"CameraType","tags":[]},{"type":"EnumItem","Name":"Fixed","tags":[],"Value":0,"Enum":"CameraType"},{"type":"EnumItem","Name":"Watch","tags":[],"Value":2,"Enum":"CameraType"},{"type":"EnumItem","Name":"Attach","tags":[],"Value":1,"Enum":"CameraType"},{"type":"EnumItem","Name":"Track","tags":[],"Value":3,"Enum":"CameraType"},{"type":"EnumItem","Name":"Follow","tags":[],"Value":4,"Enum":"CameraType"},{"type":"EnumItem","Name":"Custom","tags":[],"Value":5,"Enum":"CameraType"},{"type":"EnumItem","Name":"Scriptable","tags":[],"Value":6,"Enum":"CameraType"},{"type":"Enum","Name":"CellBlock","tags":[]},{"type":"EnumItem","Name":"Solid","tags":[],"Value":0,"Enum":"CellBlock"},{"type":"EnumItem","Name":"VerticalWedge","tags":[],"Value":1,"Enum":"CellBlock"},{"type":"EnumItem","Name":"CornerWedge","tags":[],"Value":2,"Enum":"CellBlock"},{"type":"EnumItem","Name":"InverseCornerWedge","tags":[],"Value":3,"Enum":"CellBlock"},{"type":"EnumItem","Name":"HorizontalWedge","tags":[],"Value":4,"Enum":"CellBlock"},{"type":"Enum","Name":"CellMaterial","tags":[]},{"type":"EnumItem","Name":"Empty","tags":[],"Value":0,"Enum":"CellMaterial"},{"type":"EnumItem","Name":"Grass","tags":[],"Value":1,"Enum":"CellMaterial"},{"type":"EnumItem","Name":"Sand","tags":[],"Value":2,"Enum":"CellMaterial"},{"type":"EnumItem","Name":"Brick","tags":[],"Value":3,"Enum":"CellMaterial"},{"type":"EnumItem","Name":"Granite","tags":[],"Value":4,"Enum":"CellMaterial"},{"type":"EnumItem","Name":"Asphalt","tags":[],"Value":5,"Enum":"CellMaterial"},{"type":"EnumItem","Name":"Iron","tags":[],"Value":6,"Enum":"CellMaterial"},{"type":"EnumItem","Name":"Aluminum","tags":[],"Value":7,"Enum":"CellMaterial"},{"type":"EnumItem","Name":"Gold","tags":[],"Value":8,"Enum":"CellMaterial"},{"type":"EnumItem","Name":"WoodPlank","tags":[],"Value":9,"Enum":"CellMaterial"},{"type":"EnumItem","Name":"WoodLog","tags":[],"Value":10,"Enum":"CellMaterial"},{"type":"EnumItem","Name":"Gravel","tags":[],"Value":11,"Enum":"CellMaterial"},{"type":"EnumItem","Name":"CinderBlock","tags":[],"Value":12,"Enum":"CellMaterial"},{"type":"EnumItem","Name":"MossyStone","tags":[],"Value":13,"Enum":"CellMaterial"},{"type":"EnumItem","Name":"Cement","tags":[],"Value":14,"Enum":"CellMaterial"},{"type":"EnumItem","Name":"RedPlastic","tags":[],"Value":15,"Enum":"CellMaterial"},{"type":"EnumItem","Name":"BluePlastic","tags":[],"Value":16,"Enum":"CellMaterial"},{"type":"EnumItem","Name":"Water","tags":[],"Value":17,"Enum":"CellMaterial"},{"type":"Enum","Name":"CellOrientation","tags":[]},{"type":"EnumItem","Name":"NegZ","tags":[],"Value":0,"Enum":"CellOrientation"},{"type":"EnumItem","Name":"X","tags":[],"Value":1,"Enum":"CellOrientation"},{"type":"EnumItem","Name":"Z","tags":[],"Value":2,"Enum":"CellOrientation"},{"type":"EnumItem","Name":"NegX","tags":[],"Value":3,"Enum":"CellOrientation"},{"type":"Enum","Name":"CenterDialogType","tags":[]},{"type":"EnumItem","Name":"UnsolicitedDialog","tags":[],"Value":1,"Enum":"CenterDialogType"},{"type":"EnumItem","Name":"PlayerInitiatedDialog","tags":[],"Value":2,"Enum":"CenterDialogType"},{"type":"EnumItem","Name":"ModalDialog","tags":[],"Value":3,"Enum":"CenterDialogType"},{"type":"EnumItem","Name":"QuitDialog","tags":[],"Value":4,"Enum":"CenterDialogType"},{"type":"Enum","Name":"ChatColor","tags":[]},{"type":"EnumItem","Name":"Blue","tags":[],"Value":0,"Enum":"ChatColor"},{"type":"EnumItem","Name":"Green","tags":[],"Value":1,"Enum":"ChatColor"},{"type":"EnumItem","Name":"Red","tags":[],"Value":2,"Enum":"ChatColor"},{"type":"Enum","Name":"ChatMode","tags":[]},{"type":"EnumItem","Name":"Menu","tags":[],"Value":0,"Enum":"ChatMode"},{"type":"EnumItem","Name":"TextAndMenu","tags":[],"Value":1,"Enum":"ChatMode"},{"type":"Enum","Name":"ChatStyle","tags":[]},{"type":"EnumItem","Name":"Classic","tags":[],"Value":0,"Enum":"ChatStyle"},{"type":"EnumItem","Name":"Bubble","tags":[],"Value":1,"Enum":"ChatStyle"},{"type":"EnumItem","Name":"ClassicAndBubble","tags":[],"Value":2,"Enum":"ChatStyle"},{"type":"Enum","Name":"CollisionFidelity","tags":[]},{"type":"EnumItem","Name":"Default","tags":[],"Value":0,"Enum":"CollisionFidelity"},{"type":"EnumItem","Name":"Hull","tags":[],"Value":1,"Enum":"CollisionFidelity"},{"type":"EnumItem","Name":"Box","tags":[],"Value":2,"Enum":"CollisionFidelity"},{"type":"Enum","Name":"ComputerCameraMovementMode","tags":[]},{"type":"EnumItem","Name":"Default","tags":[],"Value":0,"Enum":"ComputerCameraMovementMode"},{"type":"EnumItem","Name":"Follow","tags":[],"Value":2,"Enum":"ComputerCameraMovementMode"},{"type":"EnumItem","Name":"Classic","tags":[],"Value":1,"Enum":"ComputerCameraMovementMode"},{"type":"Enum","Name":"ComputerMovementMode","tags":[]},{"type":"EnumItem","Name":"Default","tags":[],"Value":0,"Enum":"ComputerMovementMode"},{"type":"EnumItem","Name":"KeyboardMouse","tags":[],"Value":1,"Enum":"ComputerMovementMode"},{"type":"EnumItem","Name":"ClickToMove","tags":[],"Value":2,"Enum":"ComputerMovementMode"},{"type":"Enum","Name":"ConcurrencyModel","tags":[]},{"type":"EnumItem","Name":"Serial","tags":[],"Value":0,"Enum":"ConcurrencyModel"},{"type":"EnumItem","Name":"Safe","tags":[],"Value":1,"Enum":"ConcurrencyModel"},{"type":"EnumItem","Name":"Logical","tags":[],"Value":2,"Enum":"ConcurrencyModel"},{"type":"EnumItem","Name":"Empirical","tags":[],"Value":3,"Enum":"ConcurrencyModel"},{"type":"Enum","Name":"ControlMode","tags":[]},{"type":"EnumItem","Name":"MouseLockSwitch","tags":[],"Value":1,"Enum":"ControlMode"},{"type":"EnumItem","Name":"Classic","tags":[],"Value":0,"Enum":"ControlMode"},{"type":"Enum","Name":"CoreGuiType","tags":[]},{"type":"EnumItem","Name":"PlayerList","tags":[],"Value":0,"Enum":"CoreGuiType"},{"type":"EnumItem","Name":"Health","tags":[],"Value":1,"Enum":"CoreGuiType"},{"type":"EnumItem","Name":"Backpack","tags":[],"Value":2,"Enum":"CoreGuiType"},{"type":"EnumItem","Name":"Chat","tags":[],"Value":3,"Enum":"CoreGuiType"},{"type":"EnumItem","Name":"All","tags":[],"Value":4,"Enum":"CoreGuiType"},{"type":"Enum","Name":"CreatorType","tags":[]},{"type":"EnumItem","Name":"User","tags":[],"Value":0,"Enum":"CreatorType"},{"type":"EnumItem","Name":"Group","tags":[],"Value":1,"Enum":"CreatorType"},{"type":"Enum","Name":"CurrencyType","tags":[]},{"type":"EnumItem","Name":"Default","tags":[],"Value":0,"Enum":"CurrencyType"},{"type":"EnumItem","Name":"Robux","tags":[],"Value":1,"Enum":"CurrencyType"},{"type":"EnumItem","Name":"Tix","tags":[],"Value":2,"Enum":"CurrencyType"},{"type":"Enum","Name":"CustomCameraMode","tags":[]},{"type":"EnumItem","Name":"Default","tags":[],"Value":0,"Enum":"CustomCameraMode"},{"type":"EnumItem","Name":"Follow","tags":[],"Value":2,"Enum":"CustomCameraMode"},{"type":"EnumItem","Name":"Classic","tags":[],"Value":1,"Enum":"CustomCameraMode"},{"type":"Enum","Name":"DevCameraOcclusionMode","tags":[]},{"type":"EnumItem","Name":"Zoom","tags":[],"Value":0,"Enum":"DevCameraOcclusionMode"},{"type":"EnumItem","Name":"Invisicam","tags":[],"Value":1,"Enum":"DevCameraOcclusionMode"},{"type":"Enum","Name":"DevComputerCameraMovementMode","tags":[]},{"type":"EnumItem","Name":"UserChoice","tags":[],"Value":0,"Enum":"DevComputerCameraMovementMode"},{"type":"EnumItem","Name":"Classic","tags":[],"Value":1,"Enum":"DevComputerCameraMovementMode"},{"type":"EnumItem","Name":"Follow","tags":[],"Value":2,"Enum":"DevComputerCameraMovementMode"},{"type":"Enum","Name":"DevComputerMovementMode","tags":[]},{"type":"EnumItem","Name":"UserChoice","tags":[],"Value":0,"Enum":"DevComputerMovementMode"},{"type":"EnumItem","Name":"KeyboardMouse","tags":[],"Value":1,"Enum":"DevComputerMovementMode"},{"type":"EnumItem","Name":"ClickToMove","tags":[],"Value":2,"Enum":"DevComputerMovementMode"},{"type":"EnumItem","Name":"Scriptable","tags":[],"Value":3,"Enum":"DevComputerMovementMode"},{"type":"Enum","Name":"DevTouchCameraMovementMode","tags":[]},{"type":"EnumItem","Name":"UserChoice","tags":[],"Value":0,"Enum":"DevTouchCameraMovementMode"},{"type":"EnumItem","Name":"Classic","tags":[],"Value":1,"Enum":"DevTouchCameraMovementMode"},{"type":"EnumItem","Name":"Follow","tags":[],"Value":2,"Enum":"DevTouchCameraMovementMode"},{"type":"Enum","Name":"DevTouchMovementMode","tags":[]},{"type":"EnumItem","Name":"UserChoice","tags":[],"Value":0,"Enum":"DevTouchMovementMode"},{"type":"EnumItem","Name":"Thumbstick","tags":[],"Value":1,"Enum":"DevTouchMovementMode"},{"type":"EnumItem","Name":"DPad","tags":[],"Value":2,"Enum":"DevTouchMovementMode"},{"type":"EnumItem","Name":"Thumbpad","tags":[],"Value":3,"Enum":"DevTouchMovementMode"},{"type":"EnumItem","Name":"ClickToMove","tags":[],"Value":4,"Enum":"DevTouchMovementMode"},{"type":"EnumItem","Name":"Scriptable","tags":[],"Value":5,"Enum":"DevTouchMovementMode"},{"type":"Enum","Name":"DialogPurpose","tags":[]},{"type":"EnumItem","Name":"Quest","tags":[],"Value":0,"Enum":"DialogPurpose"},{"type":"EnumItem","Name":"Help","tags":[],"Value":1,"Enum":"DialogPurpose"},{"type":"EnumItem","Name":"Shop","tags":[],"Value":2,"Enum":"DialogPurpose"},{"type":"Enum","Name":"DialogTone","tags":[]},{"type":"EnumItem","Name":"Neutral","tags":[],"Value":0,"Enum":"DialogTone"},{"type":"EnumItem","Name":"Friendly","tags":[],"Value":1,"Enum":"DialogTone"},{"type":"EnumItem","Name":"Enemy","tags":[],"Value":2,"Enum":"DialogTone"},{"type":"Enum","Name":"EasingDirection","tags":[]},{"type":"EnumItem","Name":"In","tags":[],"Value":0,"Enum":"EasingDirection"},{"type":"EnumItem","Name":"Out","tags":[],"Value":1,"Enum":"EasingDirection"},{"type":"EnumItem","Name":"InOut","tags":[],"Value":2,"Enum":"EasingDirection"},{"type":"Enum","Name":"EasingStyle","tags":[]},{"type":"EnumItem","Name":"Linear","tags":[],"Value":0,"Enum":"EasingStyle"},{"type":"EnumItem","Name":"Sine","tags":[],"Value":1,"Enum":"EasingStyle"},{"type":"EnumItem","Name":"Back","tags":[],"Value":2,"Enum":"EasingStyle"},{"type":"EnumItem","Name":"Quad","tags":[],"Value":3,"Enum":"EasingStyle"},{"type":"EnumItem","Name":"Quart","tags":[],"Value":4,"Enum":"EasingStyle"},{"type":"EnumItem","Name":"Quint","tags":[],"Value":5,"Enum":"EasingStyle"},{"type":"EnumItem","Name":"Bounce","tags":[],"Value":6,"Enum":"EasingStyle"},{"type":"EnumItem","Name":"Elastic","tags":[],"Value":7,"Enum":"EasingStyle"},{"type":"Enum","Name":"EnviromentalPhysicsThrottle","tags":[]},{"type":"EnumItem","Name":"DefaultAuto","tags":[],"Value":0,"Enum":"EnviromentalPhysicsThrottle"},{"type":"EnumItem","Name":"Disabled","tags":[],"Value":1,"Enum":"EnviromentalPhysicsThrottle"},{"type":"EnumItem","Name":"Always","tags":[],"Value":2,"Enum":"EnviromentalPhysicsThrottle"},{"type":"EnumItem","Name":"Skip2","tags":[],"Value":3,"Enum":"EnviromentalPhysicsThrottle"},{"type":"EnumItem","Name":"Skip4","tags":[],"Value":4,"Enum":"EnviromentalPhysicsThrottle"},{"type":"EnumItem","Name":"Skip8","tags":[],"Value":5,"Enum":"EnviromentalPhysicsThrottle"},{"type":"EnumItem","Name":"Skip16","tags":[],"Value":6,"Enum":"EnviromentalPhysicsThrottle"},{"type":"Enum","Name":"ErrorReporting","tags":[]},{"type":"EnumItem","Name":"DontReport","tags":[],"Value":0,"Enum":"ErrorReporting"},{"type":"EnumItem","Name":"Prompt","tags":[],"Value":1,"Enum":"ErrorReporting"},{"type":"EnumItem","Name":"Report","tags":[],"Value":2,"Enum":"ErrorReporting"},{"type":"Enum","Name":"ExplosionType","tags":[]},{"type":"EnumItem","Name":"NoCraters","tags":[],"Value":0,"Enum":"ExplosionType"},{"type":"EnumItem","Name":"Craters","tags":[],"Value":1,"Enum":"ExplosionType"},{"type":"EnumItem","Name":"CratersAndDebris","tags":[],"Value":2,"Enum":"ExplosionType"},{"type":"Enum","Name":"FilterResult","tags":[]},{"type":"EnumItem","Name":"Rejected","tags":[],"Value":1,"Enum":"FilterResult"},{"type":"EnumItem","Name":"Accepted","tags":[],"Value":0,"Enum":"FilterResult"},{"type":"Enum","Name":"Font","tags":[]},{"type":"EnumItem","Name":"Legacy","tags":[],"Value":0,"Enum":"Font"},{"type":"EnumItem","Name":"Arial","tags":[],"Value":1,"Enum":"Font"},{"type":"EnumItem","Name":"ArialBold","tags":[],"Value":2,"Enum":"Font"},{"type":"EnumItem","Name":"SourceSans","tags":[],"Value":3,"Enum":"Font"},{"type":"EnumItem","Name":"SourceSansBold","tags":[],"Value":4,"Enum":"Font"},{"type":"EnumItem","Name":"SourceSansLight","tags":[],"Value":5,"Enum":"Font"},{"type":"EnumItem","Name":"SourceSansItalic","tags":[],"Value":6,"Enum":"Font"},{"type":"Enum","Name":"FontSize","tags":[]},{"type":"EnumItem","Name":"Size8","tags":[],"Value":0,"Enum":"FontSize"},{"type":"EnumItem","Name":"Size9","tags":[],"Value":1,"Enum":"FontSize"},{"type":"EnumItem","Name":"Size10","tags":[],"Value":2,"Enum":"FontSize"},{"type":"EnumItem","Name":"Size11","tags":[],"Value":3,"Enum":"FontSize"},{"type":"EnumItem","Name":"Size12","tags":[],"Value":4,"Enum":"FontSize"},{"type":"EnumItem","Name":"Size14","tags":[],"Value":5,"Enum":"FontSize"},{"type":"EnumItem","Name":"Size18","tags":[],"Value":6,"Enum":"FontSize"},{"type":"EnumItem","Name":"Size24","tags":[],"Value":7,"Enum":"FontSize"},{"type":"EnumItem","Name":"Size36","tags":[],"Value":8,"Enum":"FontSize"},{"type":"EnumItem","Name":"Size48","tags":[],"Value":9,"Enum":"FontSize"},{"type":"EnumItem","Name":"Size28","tags":[],"Value":10,"Enum":"FontSize"},{"type":"EnumItem","Name":"Size32","tags":[],"Value":11,"Enum":"FontSize"},{"type":"EnumItem","Name":"Size42","tags":[],"Value":12,"Enum":"FontSize"},{"type":"EnumItem","Name":"Size60","tags":[],"Value":13,"Enum":"FontSize"},{"type":"EnumItem","Name":"Size96","tags":[],"Value":14,"Enum":"FontSize"},{"type":"Enum","Name":"FormFactor","tags":[]},{"type":"EnumItem","Name":"Symmetric","tags":[],"Value":0,"Enum":"FormFactor"},{"type":"EnumItem","Name":"Brick","tags":[],"Value":1,"Enum":"FormFactor"},{"type":"EnumItem","Name":"Plate","tags":[],"Value":2,"Enum":"FormFactor"},{"type":"EnumItem","Name":"Custom","tags":[],"Value":3,"Enum":"FormFactor"},{"type":"Enum","Name":"FrameStyle","tags":[]},{"type":"EnumItem","Name":"Custom","tags":[],"Value":0,"Enum":"FrameStyle"},{"type":"EnumItem","Name":"ChatBlue","tags":[],"Value":1,"Enum":"FrameStyle"},{"type":"EnumItem","Name":"RobloxSquare","tags":[],"Value":2,"Enum":"FrameStyle"},{"type":"EnumItem","Name":"RobloxRound","tags":[],"Value":3,"Enum":"FrameStyle"},{"type":"EnumItem","Name":"ChatGreen","tags":[],"Value":4,"Enum":"FrameStyle"},{"type":"EnumItem","Name":"ChatRed","tags":[],"Value":5,"Enum":"FrameStyle"},{"type":"EnumItem","Name":"DropShadow","tags":[],"Value":6,"Enum":"FrameStyle"},{"type":"Enum","Name":"FramerateManagerMode","tags":[]},{"type":"EnumItem","Name":"Automatic","tags":[],"Value":0,"Enum":"FramerateManagerMode"},{"type":"EnumItem","Name":"On","tags":[],"Value":1,"Enum":"FramerateManagerMode"},{"type":"EnumItem","Name":"Off","tags":[],"Value":2,"Enum":"FramerateManagerMode"},{"type":"Enum","Name":"FriendRequestEvent","tags":[]},{"type":"EnumItem","Name":"Issue","tags":[],"Value":0,"Enum":"FriendRequestEvent"},{"type":"EnumItem","Name":"Revoke","tags":[],"Value":1,"Enum":"FriendRequestEvent"},{"type":"EnumItem","Name":"Accept","tags":[],"Value":2,"Enum":"FriendRequestEvent"},{"type":"EnumItem","Name":"Deny","tags":[],"Value":3,"Enum":"FriendRequestEvent"},{"type":"Enum","Name":"FriendStatus","tags":[]},{"type":"EnumItem","Name":"Unknown","tags":[],"Value":0,"Enum":"FriendStatus"},{"type":"EnumItem","Name":"NotFriend","tags":[],"Value":1,"Enum":"FriendStatus"},{"type":"EnumItem","Name":"Friend","tags":[],"Value":2,"Enum":"FriendStatus"},{"type":"EnumItem","Name":"FriendRequestSent","tags":[],"Value":3,"Enum":"FriendStatus"},{"type":"EnumItem","Name":"FriendRequestReceived","tags":[],"Value":4,"Enum":"FriendStatus"},{"type":"Enum","Name":"FunctionalTestResult","tags":[]},{"type":"EnumItem","Name":"Passed","tags":[],"Value":0,"Enum":"FunctionalTestResult"},{"type":"EnumItem","Name":"Warning","tags":[],"Value":1,"Enum":"FunctionalTestResult"},{"type":"EnumItem","Name":"Error","tags":[],"Value":2,"Enum":"FunctionalTestResult"},{"type":"Enum","Name":"GearGenreSetting","tags":[]},{"type":"EnumItem","Name":"AllGenres","tags":[],"Value":0,"Enum":"GearGenreSetting"},{"type":"EnumItem","Name":"MatchingGenreOnly","tags":[],"Value":1,"Enum":"GearGenreSetting"},{"type":"Enum","Name":"GearType","tags":[]},{"type":"EnumItem","Name":"MeleeWeapons","tags":[],"Value":0,"Enum":"GearType"},{"type":"EnumItem","Name":"RangedWeapons","tags":[],"Value":1,"Enum":"GearType"},{"type":"EnumItem","Name":"Explosives","tags":[],"Value":2,"Enum":"GearType"},{"type":"EnumItem","Name":"PowerUps","tags":[],"Value":3,"Enum":"GearType"},{"type":"EnumItem","Name":"NavigationEnhancers","tags":[],"Value":4,"Enum":"GearType"},{"type":"EnumItem","Name":"MusicalInstruments","tags":[],"Value":5,"Enum":"GearType"},{"type":"EnumItem","Name":"SocialItems","tags":[],"Value":6,"Enum":"GearType"},{"type":"EnumItem","Name":"BuildingTools","tags":[],"Value":7,"Enum":"GearType"},{"type":"EnumItem","Name":"Transport","tags":[],"Value":8,"Enum":"GearType"},{"type":"Enum","Name":"Genre","tags":[]},{"type":"EnumItem","Name":"All","tags":[],"Value":0,"Enum":"Genre"},{"type":"EnumItem","Name":"TownAndCity","tags":[],"Value":1,"Enum":"Genre"},{"type":"EnumItem","Name":"Fantasy","tags":[],"Value":2,"Enum":"Genre"},{"type":"EnumItem","Name":"SciFi","tags":[],"Value":3,"Enum":"Genre"},{"type":"EnumItem","Name":"Ninja","tags":[],"Value":4,"Enum":"Genre"},{"type":"EnumItem","Name":"Scary","tags":[],"Value":5,"Enum":"Genre"},{"type":"EnumItem","Name":"Pirate","tags":[],"Value":6,"Enum":"Genre"},{"type":"EnumItem","Name":"Adventure","tags":[],"Value":7,"Enum":"Genre"},{"type":"EnumItem","Name":"Sports","tags":[],"Value":8,"Enum":"Genre"},{"type":"EnumItem","Name":"Funny","tags":[],"Value":9,"Enum":"Genre"},{"type":"EnumItem","Name":"WildWest","tags":[],"Value":10,"Enum":"Genre"},{"type":"EnumItem","Name":"War","tags":[],"Value":11,"Enum":"Genre"},{"type":"EnumItem","Name":"SkatePark","tags":[],"Value":12,"Enum":"Genre"},{"type":"EnumItem","Name":"Tutorial","tags":[],"Value":13,"Enum":"Genre"},{"type":"Enum","Name":"GraphicsMode","tags":[]},{"type":"EnumItem","Name":"Automatic","tags":[],"Value":1,"Enum":"GraphicsMode"},{"type":"EnumItem","Name":"Direct3D9","tags":[],"Value":3,"Enum":"GraphicsMode"},{"type":"EnumItem","Name":"Direct3D11","tags":[],"Value":2,"Enum":"GraphicsMode"},{"type":"EnumItem","Name":"OpenGL","tags":[],"Value":4,"Enum":"GraphicsMode"},{"type":"EnumItem","Name":"NoGraphics","tags":[],"Value":5,"Enum":"GraphicsMode"},{"type":"Enum","Name":"HandlesStyle","tags":[]},{"type":"EnumItem","Name":"Resize","tags":[],"Value":0,"Enum":"HandlesStyle"},{"type":"EnumItem","Name":"Movement","tags":[],"Value":1,"Enum":"HandlesStyle"},{"type":"Enum","Name":"HttpContentType","tags":[]},{"type":"EnumItem","Name":"ApplicationJson","tags":[],"Value":0,"Enum":"HttpContentType"},{"type":"EnumItem","Name":"ApplicationXml","tags":[],"Value":1,"Enum":"HttpContentType"},{"type":"EnumItem","Name":"ApplicationUrlEncoded","tags":[],"Value":2,"Enum":"HttpContentType"},{"type":"EnumItem","Name":"TextPlain","tags":[],"Value":3,"Enum":"HttpContentType"},{"type":"EnumItem","Name":"TextXml","tags":[],"Value":4,"Enum":"HttpContentType"},{"type":"Enum","Name":"HumanoidDisplayDistanceType","tags":[]},{"type":"EnumItem","Name":"Viewer","tags":[],"Value":0,"Enum":"HumanoidDisplayDistanceType"},{"type":"EnumItem","Name":"Subject","tags":[],"Value":1,"Enum":"HumanoidDisplayDistanceType"},{"type":"EnumItem","Name":"None","tags":[],"Value":2,"Enum":"HumanoidDisplayDistanceType"},{"type":"Enum","Name":"HumanoidRigType","tags":[]},{"type":"EnumItem","Name":"R6","tags":[],"Value":0,"Enum":"HumanoidRigType"},{"type":"EnumItem","Name":"R15","tags":[],"Value":1,"Enum":"HumanoidRigType"},{"type":"Enum","Name":"HumanoidStateType","tags":[]},{"type":"EnumItem","Name":"FallingDown","tags":[],"Value":0,"Enum":"HumanoidStateType"},{"type":"EnumItem","Name":"Running","tags":[],"Value":8,"Enum":"HumanoidStateType"},{"type":"EnumItem","Name":"RunningNoPhysics","tags":[],"Value":10,"Enum":"HumanoidStateType"},{"type":"EnumItem","Name":"Climbing","tags":[],"Value":12,"Enum":"HumanoidStateType"},{"type":"EnumItem","Name":"StrafingNoPhysics","tags":[],"Value":11,"Enum":"HumanoidStateType"},{"type":"EnumItem","Name":"Ragdoll","tags":[],"Value":1,"Enum":"HumanoidStateType"},{"type":"EnumItem","Name":"GettingUp","tags":[],"Value":2,"Enum":"HumanoidStateType"},{"type":"EnumItem","Name":"Jumping","tags":[],"Value":3,"Enum":"HumanoidStateType"},{"type":"EnumItem","Name":"Landed","tags":[],"Value":7,"Enum":"HumanoidStateType"},{"type":"EnumItem","Name":"Flying","tags":[],"Value":6,"Enum":"HumanoidStateType"},{"type":"EnumItem","Name":"Freefall","tags":[],"Value":5,"Enum":"HumanoidStateType"},{"type":"EnumItem","Name":"Seated","tags":[],"Value":13,"Enum":"HumanoidStateType"},{"type":"EnumItem","Name":"PlatformStanding","tags":[],"Value":14,"Enum":"HumanoidStateType"},{"type":"EnumItem","Name":"Dead","tags":[],"Value":15,"Enum":"HumanoidStateType"},{"type":"EnumItem","Name":"Swimming","tags":[],"Value":4,"Enum":"HumanoidStateType"},{"type":"EnumItem","Name":"Physics","tags":[],"Value":16,"Enum":"HumanoidStateType"},{"type":"EnumItem","Name":"None","tags":[],"Value":18,"Enum":"HumanoidStateType"},{"type":"Enum","Name":"InOut","tags":[]},{"type":"EnumItem","Name":"Edge","tags":[],"Value":0,"Enum":"InOut"},{"type":"EnumItem","Name":"Inset","tags":[],"Value":1,"Enum":"InOut"},{"type":"EnumItem","Name":"Center","tags":[],"Value":2,"Enum":"InOut"},{"type":"Enum","Name":"InfoType","tags":[]},{"type":"EnumItem","Name":"Asset","tags":[],"Value":0,"Enum":"InfoType"},{"type":"EnumItem","Name":"Product","tags":[],"Value":1,"Enum":"InfoType"},{"type":"Enum","Name":"InputType","tags":[]},{"type":"EnumItem","Name":"NoInput","tags":[],"Value":0,"Enum":"InputType"},{"type":"EnumItem","Name":"LeftTread","tags":[],"Value":1,"Enum":"InputType"},{"type":"EnumItem","Name":"RightTread","tags":[],"Value":2,"Enum":"InputType"},{"type":"EnumItem","Name":"Steer","tags":[],"Value":3,"Enum":"InputType"},{"type":"EnumItem","Name":"Throtle","tags":[],"Value":4,"Enum":"InputType"},{"type":"EnumItem","Name":"UpDown","tags":[],"Value":6,"Enum":"InputType"},{"type":"EnumItem","Name":"Action1","tags":[],"Value":7,"Enum":"InputType"},{"type":"EnumItem","Name":"Action2","tags":[],"Value":8,"Enum":"InputType"},{"type":"EnumItem","Name":"Action3","tags":[],"Value":9,"Enum":"InputType"},{"type":"EnumItem","Name":"Action4","tags":[],"Value":10,"Enum":"InputType"},{"type":"EnumItem","Name":"Action5","tags":[],"Value":11,"Enum":"InputType"},{"type":"EnumItem","Name":"Constant","tags":[],"Value":12,"Enum":"InputType"},{"type":"EnumItem","Name":"Sin","tags":[],"Value":13,"Enum":"InputType"},{"type":"Enum","Name":"JointCreationMode","tags":[]},{"type":"EnumItem","Name":"All","tags":[],"Value":0,"Enum":"JointCreationMode"},{"type":"EnumItem","Name":"Surface","tags":[],"Value":1,"Enum":"JointCreationMode"},{"type":"EnumItem","Name":"None","tags":[],"Value":2,"Enum":"JointCreationMode"},{"type":"Enum","Name":"JointType","tags":[]},{"type":"EnumItem","Name":"None","tags":[],"Value":22,"Enum":"JointType"},{"type":"EnumItem","Name":"Rotate","tags":[],"Value":6,"Enum":"JointType"},{"type":"EnumItem","Name":"RotateP","tags":[],"Value":7,"Enum":"JointType"},{"type":"EnumItem","Name":"RotateV","tags":[],"Value":8,"Enum":"JointType"},{"type":"EnumItem","Name":"Glue","tags":[],"Value":9,"Enum":"JointType"},{"type":"EnumItem","Name":"Weld","tags":[],"Value":1,"Enum":"JointType"},{"type":"EnumItem","Name":"Snap","tags":[],"Value":3,"Enum":"JointType"},{"type":"Enum","Name":"KeyCode","tags":[]},{"type":"EnumItem","Name":"Unknown","tags":[],"Value":0,"Enum":"KeyCode"},{"type":"EnumItem","Name":"Backspace","tags":[],"Value":8,"Enum":"KeyCode"},{"type":"EnumItem","Name":"Tab","tags":[],"Value":9,"Enum":"KeyCode"},{"type":"EnumItem","Name":"Clear","tags":[],"Value":12,"Enum":"KeyCode"},{"type":"EnumItem","Name":"Return","tags":[],"Value":13,"Enum":"KeyCode"},{"type":"EnumItem","Name":"Pause","tags":[],"Value":19,"Enum":"KeyCode"},{"type":"EnumItem","Name":"Escape","tags":[],"Value":27,"Enum":"KeyCode"},{"type":"EnumItem","Name":"Space","tags":[],"Value":32,"Enum":"KeyCode"},{"type":"EnumItem","Name":"QuotedDouble","tags":[],"Value":34,"Enum":"KeyCode"},{"type":"EnumItem","Name":"Hash","tags":[],"Value":35,"Enum":"KeyCode"},{"type":"EnumItem","Name":"Dollar","tags":[],"Value":36,"Enum":"KeyCode"},{"type":"EnumItem","Name":"Percent","tags":[],"Value":37,"Enum":"KeyCode"},{"type":"EnumItem","Name":"Ampersand","tags":[],"Value":38,"Enum":"KeyCode"},{"type":"EnumItem","Name":"Quote","tags":[],"Value":39,"Enum":"KeyCode"},{"type":"EnumItem","Name":"LeftParenthesis","tags":[],"Value":40,"Enum":"KeyCode"},{"type":"EnumItem","Name":"RightParenthesis","tags":[],"Value":41,"Enum":"KeyCode"},{"type":"EnumItem","Name":"Asterisk","tags":[],"Value":42,"Enum":"KeyCode"},{"type":"EnumItem","Name":"Plus","tags":[],"Value":43,"Enum":"KeyCode"},{"type":"EnumItem","Name":"Comma","tags":[],"Value":44,"Enum":"KeyCode"},{"type":"EnumItem","Name":"Minus","tags":[],"Value":45,"Enum":"KeyCode"},{"type":"EnumItem","Name":"Period","tags":[],"Value":46,"Enum":"KeyCode"},{"type":"EnumItem","Name":"Slash","tags":[],"Value":47,"Enum":"KeyCode"},{"type":"EnumItem","Name":"Zero","tags":[],"Value":48,"Enum":"KeyCode"},{"type":"EnumItem","Name":"One","tags":[],"Value":49,"Enum":"KeyCode"},{"type":"EnumItem","Name":"Two","tags":[],"Value":50,"Enum":"KeyCode"},{"type":"EnumItem","Name":"Three","tags":[],"Value":51,"Enum":"KeyCode"},{"type":"EnumItem","Name":"Four","tags":[],"Value":52,"Enum":"KeyCode"},{"type":"EnumItem","Name":"Five","tags":[],"Value":53,"Enum":"KeyCode"},{"type":"EnumItem","Name":"Six","tags":[],"Value":54,"Enum":"KeyCode"},{"type":"EnumItem","Name":"Seven","tags":[],"Value":55,"Enum":"KeyCode"},{"type":"EnumItem","Name":"Eight","tags":[],"Value":56,"Enum":"KeyCode"},{"type":"EnumItem","Name":"Nine","tags":[],"Value":57,"Enum":"KeyCode"},{"type":"EnumItem","Name":"Colon","tags":[],"Value":58,"Enum":"KeyCode"},{"type":"EnumItem","Name":"Semicolon","tags":[],"Value":59,"Enum":"KeyCode"},{"type":"EnumItem","Name":"LessThan","tags":[],"Value":60,"Enum":"KeyCode"},{"type":"EnumItem","Name":"Equals","tags":[],"Value":61,"Enum":"KeyCode"},{"type":"EnumItem","Name":"GreaterThan","tags":[],"Value":62,"Enum":"KeyCode"},{"type":"EnumItem","Name":"Question","tags":[],"Value":63,"Enum":"KeyCode"},{"type":"EnumItem","Name":"At","tags":[],"Value":64,"Enum":"KeyCode"},{"type":"EnumItem","Name":"LeftBracket","tags":[],"Value":91,"Enum":"KeyCode"},{"type":"EnumItem","Name":"BackSlash","tags":[],"Value":92,"Enum":"KeyCode"},{"type":"EnumItem","Name":"RightBracket","tags":[],"Value":93,"Enum":"KeyCode"},{"type":"EnumItem","Name":"Caret","tags":[],"Value":94,"Enum":"KeyCode"},{"type":"EnumItem","Name":"Underscore","tags":[],"Value":95,"Enum":"KeyCode"},{"type":"EnumItem","Name":"Backquote","tags":[],"Value":96,"Enum":"KeyCode"},{"type":"EnumItem","Name":"A","tags":[],"Value":97,"Enum":"KeyCode"},{"type":"EnumItem","Name":"B","tags":[],"Value":98,"Enum":"KeyCode"},{"type":"EnumItem","Name":"C","tags":[],"Value":99,"Enum":"KeyCode"},{"type":"EnumItem","Name":"D","tags":[],"Value":100,"Enum":"KeyCode"},{"type":"EnumItem","Name":"E","tags":[],"Value":101,"Enum":"KeyCode"},{"type":"EnumItem","Name":"F","tags":[],"Value":102,"Enum":"KeyCode"},{"type":"EnumItem","Name":"G","tags":[],"Value":103,"Enum":"KeyCode"},{"type":"EnumItem","Name":"H","tags":[],"Value":104,"Enum":"KeyCode"},{"type":"EnumItem","Name":"I","tags":[],"Value":105,"Enum":"KeyCode"},{"type":"EnumItem","Name":"J","tags":[],"Value":106,"Enum":"KeyCode"},{"type":"EnumItem","Name":"K","tags":[],"Value":107,"Enum":"KeyCode"},{"type":"EnumItem","Name":"L","tags":[],"Value":108,"Enum":"KeyCode"},{"type":"EnumItem","Name":"M","tags":[],"Value":109,"Enum":"KeyCode"},{"type":"EnumItem","Name":"N","tags":[],"Value":110,"Enum":"KeyCode"},{"type":"EnumItem","Name":"O","tags":[],"Value":111,"Enum":"KeyCode"},{"type":"EnumItem","Name":"P","tags":[],"Value":112,"Enum":"KeyCode"},{"type":"EnumItem","Name":"Q","tags":[],"Value":113,"Enum":"KeyCode"},{"type":"EnumItem","Name":"R","tags":[],"Value":114,"Enum":"KeyCode"},{"type":"EnumItem","Name":"S","tags":[],"Value":115,"Enum":"KeyCode"},{"type":"EnumItem","Name":"T","tags":[],"Value":116,"Enum":"KeyCode"},{"type":"EnumItem","Name":"U","tags":[],"Value":117,"Enum":"KeyCode"},{"type":"EnumItem","Name":"V","tags":[],"Value":118,"Enum":"KeyCode"},{"type":"EnumItem","Name":"W","tags":[],"Value":119,"Enum":"KeyCode"},{"type":"EnumItem","Name":"X","tags":[],"Value":120,"Enum":"KeyCode"},{"type":"EnumItem","Name":"Y","tags":[],"Value":121,"Enum":"KeyCode"},{"type":"EnumItem","Name":"Z","tags":[],"Value":122,"Enum":"KeyCode"},{"type":"EnumItem","Name":"LeftCurly","tags":[],"Value":123,"Enum":"KeyCode"},{"type":"EnumItem","Name":"Pipe","tags":[],"Value":124,"Enum":"KeyCode"},{"type":"EnumItem","Name":"RightCurly","tags":[],"Value":125,"Enum":"KeyCode"},{"type":"EnumItem","Name":"Tilde","tags":[],"Value":126,"Enum":"KeyCode"},{"type":"EnumItem","Name":"Delete","tags":[],"Value":127,"Enum":"KeyCode"},{"type":"EnumItem","Name":"KeypadZero","tags":[],"Value":256,"Enum":"KeyCode"},{"type":"EnumItem","Name":"KeypadOne","tags":[],"Value":257,"Enum":"KeyCode"},{"type":"EnumItem","Name":"KeypadTwo","tags":[],"Value":258,"Enum":"KeyCode"},{"type":"EnumItem","Name":"KeypadThree","tags":[],"Value":259,"Enum":"KeyCode"},{"type":"EnumItem","Name":"KeypadFour","tags":[],"Value":260,"Enum":"KeyCode"},{"type":"EnumItem","Name":"KeypadFive","tags":[],"Value":261,"Enum":"KeyCode"},{"type":"EnumItem","Name":"KeypadSix","tags":[],"Value":262,"Enum":"KeyCode"},{"type":"EnumItem","Name":"KeypadSeven","tags":[],"Value":263,"Enum":"KeyCode"},{"type":"EnumItem","Name":"KeypadEight","tags":[],"Value":264,"Enum":"KeyCode"},{"type":"EnumItem","Name":"KeypadNine","tags":[],"Value":265,"Enum":"KeyCode"},{"type":"EnumItem","Name":"KeypadPeriod","tags":[],"Value":266,"Enum":"KeyCode"},{"type":"EnumItem","Name":"KeypadDivide","tags":[],"Value":267,"Enum":"KeyCode"},{"type":"EnumItem","Name":"KeypadMultiply","tags":[],"Value":268,"Enum":"KeyCode"},{"type":"EnumItem","Name":"KeypadMinus","tags":[],"Value":269,"Enum":"KeyCode"},{"type":"EnumItem","Name":"KeypadPlus","tags":[],"Value":270,"Enum":"KeyCode"},{"type":"EnumItem","Name":"KeypadEnter","tags":[],"Value":271,"Enum":"KeyCode"},{"type":"EnumItem","Name":"KeypadEquals","tags":[],"Value":272,"Enum":"KeyCode"},{"type":"EnumItem","Name":"Up","tags":[],"Value":273,"Enum":"KeyCode"},{"type":"EnumItem","Name":"Down","tags":[],"Value":274,"Enum":"KeyCode"},{"type":"EnumItem","Name":"Right","tags":[],"Value":275,"Enum":"KeyCode"},{"type":"EnumItem","Name":"Left","tags":[],"Value":276,"Enum":"KeyCode"},{"type":"EnumItem","Name":"Insert","tags":[],"Value":277,"Enum":"KeyCode"},{"type":"EnumItem","Name":"Home","tags":[],"Value":278,"Enum":"KeyCode"},{"type":"EnumItem","Name":"End","tags":[],"Value":279,"Enum":"KeyCode"},{"type":"EnumItem","Name":"PageUp","tags":[],"Value":280,"Enum":"KeyCode"},{"type":"EnumItem","Name":"PageDown","tags":[],"Value":281,"Enum":"KeyCode"},{"type":"EnumItem","Name":"LeftShift","tags":[],"Value":304,"Enum":"KeyCode"},{"type":"EnumItem","Name":"RightShift","tags":[],"Value":303,"Enum":"KeyCode"},{"type":"EnumItem","Name":"LeftMeta","tags":[],"Value":310,"Enum":"KeyCode"},{"type":"EnumItem","Name":"RightMeta","tags":[],"Value":309,"Enum":"KeyCode"},{"type":"EnumItem","Name":"LeftAlt","tags":[],"Value":308,"Enum":"KeyCode"},{"type":"EnumItem","Name":"RightAlt","tags":[],"Value":307,"Enum":"KeyCode"},{"type":"EnumItem","Name":"LeftControl","tags":[],"Value":306,"Enum":"KeyCode"},{"type":"EnumItem","Name":"RightControl","tags":[],"Value":305,"Enum":"KeyCode"},{"type":"EnumItem","Name":"CapsLock","tags":[],"Value":301,"Enum":"KeyCode"},{"type":"EnumItem","Name":"NumLock","tags":[],"Value":300,"Enum":"KeyCode"},{"type":"EnumItem","Name":"ScrollLock","tags":[],"Value":302,"Enum":"KeyCode"},{"type":"EnumItem","Name":"LeftSuper","tags":[],"Value":311,"Enum":"KeyCode"},{"type":"EnumItem","Name":"RightSuper","tags":[],"Value":312,"Enum":"KeyCode"},{"type":"EnumItem","Name":"Mode","tags":[],"Value":313,"Enum":"KeyCode"},{"type":"EnumItem","Name":"Compose","tags":[],"Value":314,"Enum":"KeyCode"},{"type":"EnumItem","Name":"Help","tags":[],"Value":315,"Enum":"KeyCode"},{"type":"EnumItem","Name":"Print","tags":[],"Value":316,"Enum":"KeyCode"},{"type":"EnumItem","Name":"SysReq","tags":[],"Value":317,"Enum":"KeyCode"},{"type":"EnumItem","Name":"Break","tags":[],"Value":318,"Enum":"KeyCode"},{"type":"EnumItem","Name":"Menu","tags":[],"Value":319,"Enum":"KeyCode"},{"type":"EnumItem","Name":"Power","tags":[],"Value":320,"Enum":"KeyCode"},{"type":"EnumItem","Name":"Euro","tags":[],"Value":321,"Enum":"KeyCode"},{"type":"EnumItem","Name":"Undo","tags":[],"Value":322,"Enum":"KeyCode"},{"type":"EnumItem","Name":"F1","tags":[],"Value":282,"Enum":"KeyCode"},{"type":"EnumItem","Name":"F2","tags":[],"Value":283,"Enum":"KeyCode"},{"type":"EnumItem","Name":"F3","tags":[],"Value":284,"Enum":"KeyCode"},{"type":"EnumItem","Name":"F4","tags":[],"Value":285,"Enum":"KeyCode"},{"type":"EnumItem","Name":"F5","tags":[],"Value":286,"Enum":"KeyCode"},{"type":"EnumItem","Name":"F6","tags":[],"Value":287,"Enum":"KeyCode"},{"type":"EnumItem","Name":"F7","tags":[],"Value":288,"Enum":"KeyCode"},{"type":"EnumItem","Name":"F8","tags":[],"Value":289,"Enum":"KeyCode"},{"type":"EnumItem","Name":"F9","tags":[],"Value":290,"Enum":"KeyCode"},{"type":"EnumItem","Name":"F10","tags":[],"Value":291,"Enum":"KeyCode"},{"type":"EnumItem","Name":"F11","tags":[],"Value":292,"Enum":"KeyCode"},{"type":"EnumItem","Name":"F12","tags":[],"Value":293,"Enum":"KeyCode"},{"type":"EnumItem","Name":"F13","tags":[],"Value":294,"Enum":"KeyCode"},{"type":"EnumItem","Name":"F14","tags":[],"Value":295,"Enum":"KeyCode"},{"type":"EnumItem","Name":"F15","tags":[],"Value":296,"Enum":"KeyCode"},{"type":"EnumItem","Name":"World0","tags":[],"Value":160,"Enum":"KeyCode"},{"type":"EnumItem","Name":"World1","tags":[],"Value":161,"Enum":"KeyCode"},{"type":"EnumItem","Name":"World2","tags":[],"Value":162,"Enum":"KeyCode"},{"type":"EnumItem","Name":"World3","tags":[],"Value":163,"Enum":"KeyCode"},{"type":"EnumItem","Name":"World4","tags":[],"Value":164,"Enum":"KeyCode"},{"type":"EnumItem","Name":"World5","tags":[],"Value":165,"Enum":"KeyCode"},{"type":"EnumItem","Name":"World6","tags":[],"Value":166,"Enum":"KeyCode"},{"type":"EnumItem","Name":"World7","tags":[],"Value":167,"Enum":"KeyCode"},{"type":"EnumItem","Name":"World8","tags":[],"Value":168,"Enum":"KeyCode"},{"type":"EnumItem","Name":"World9","tags":[],"Value":169,"Enum":"KeyCode"},{"type":"EnumItem","Name":"World10","tags":[],"Value":170,"Enum":"KeyCode"},{"type":"EnumItem","Name":"World11","tags":[],"Value":171,"Enum":"KeyCode"},{"type":"EnumItem","Name":"World12","tags":[],"Value":172,"Enum":"KeyCode"},{"type":"EnumItem","Name":"World13","tags":[],"Value":173,"Enum":"KeyCode"},{"type":"EnumItem","Name":"World14","tags":[],"Value":174,"Enum":"KeyCode"},{"type":"EnumItem","Name":"World15","tags":[],"Value":175,"Enum":"KeyCode"},{"type":"EnumItem","Name":"World16","tags":[],"Value":176,"Enum":"KeyCode"},{"type":"EnumItem","Name":"World17","tags":[],"Value":177,"Enum":"KeyCode"},{"type":"EnumItem","Name":"World18","tags":[],"Value":178,"Enum":"KeyCode"},{"type":"EnumItem","Name":"World19","tags":[],"Value":179,"Enum":"KeyCode"},{"type":"EnumItem","Name":"World20","tags":[],"Value":180,"Enum":"KeyCode"},{"type":"EnumItem","Name":"World21","tags":[],"Value":181,"Enum":"KeyCode"},{"type":"EnumItem","Name":"World22","tags":[],"Value":182,"Enum":"KeyCode"},{"type":"EnumItem","Name":"World23","tags":[],"Value":183,"Enum":"KeyCode"},{"type":"EnumItem","Name":"World24","tags":[],"Value":184,"Enum":"KeyCode"},{"type":"EnumItem","Name":"World25","tags":[],"Value":185,"Enum":"KeyCode"},{"type":"EnumItem","Name":"World26","tags":[],"Value":186,"Enum":"KeyCode"},{"type":"EnumItem","Name":"World27","tags":[],"Value":187,"Enum":"KeyCode"},{"type":"EnumItem","Name":"World28","tags":[],"Value":188,"Enum":"KeyCode"},{"type":"EnumItem","Name":"World29","tags":[],"Value":189,"Enum":"KeyCode"},{"type":"EnumItem","Name":"World30","tags":[],"Value":190,"Enum":"KeyCode"},{"type":"EnumItem","Name":"World31","tags":[],"Value":191,"Enum":"KeyCode"},{"type":"EnumItem","Name":"World32","tags":[],"Value":192,"Enum":"KeyCode"},{"type":"EnumItem","Name":"World33","tags":[],"Value":193,"Enum":"KeyCode"},{"type":"EnumItem","Name":"World34","tags":[],"Value":194,"Enum":"KeyCode"},{"type":"EnumItem","Name":"World35","tags":[],"Value":195,"Enum":"KeyCode"},{"type":"EnumItem","Name":"World36","tags":[],"Value":196,"Enum":"KeyCode"},{"type":"EnumItem","Name":"World37","tags":[],"Value":197,"Enum":"KeyCode"},{"type":"EnumItem","Name":"World38","tags":[],"Value":198,"Enum":"KeyCode"},{"type":"EnumItem","Name":"World39","tags":[],"Value":199,"Enum":"KeyCode"},{"type":"EnumItem","Name":"World40","tags":[],"Value":200,"Enum":"KeyCode"},{"type":"EnumItem","Name":"World41","tags":[],"Value":201,"Enum":"KeyCode"},{"type":"EnumItem","Name":"World42","tags":[],"Value":202,"Enum":"KeyCode"},{"type":"EnumItem","Name":"World43","tags":[],"Value":203,"Enum":"KeyCode"},{"type":"EnumItem","Name":"World44","tags":[],"Value":204,"Enum":"KeyCode"},{"type":"EnumItem","Name":"World45","tags":[],"Value":205,"Enum":"KeyCode"},{"type":"EnumItem","Name":"World46","tags":[],"Value":206,"Enum":"KeyCode"},{"type":"EnumItem","Name":"World47","tags":[],"Value":207,"Enum":"KeyCode"},{"type":"EnumItem","Name":"World48","tags":[],"Value":208,"Enum":"KeyCode"},{"type":"EnumItem","Name":"World49","tags":[],"Value":209,"Enum":"KeyCode"},{"type":"EnumItem","Name":"World50","tags":[],"Value":210,"Enum":"KeyCode"},{"type":"EnumItem","Name":"World51","tags":[],"Value":211,"Enum":"KeyCode"},{"type":"EnumItem","Name":"World52","tags":[],"Value":212,"Enum":"KeyCode"},{"type":"EnumItem","Name":"World53","tags":[],"Value":213,"Enum":"KeyCode"},{"type":"EnumItem","Name":"World54","tags":[],"Value":214,"Enum":"KeyCode"},{"type":"EnumItem","Name":"World55","tags":[],"Value":215,"Enum":"KeyCode"},{"type":"EnumItem","Name":"World56","tags":[],"Value":216,"Enum":"KeyCode"},{"type":"EnumItem","Name":"World57","tags":[],"Value":217,"Enum":"KeyCode"},{"type":"EnumItem","Name":"World58","tags":[],"Value":218,"Enum":"KeyCode"},{"type":"EnumItem","Name":"World59","tags":[],"Value":219,"Enum":"KeyCode"},{"type":"EnumItem","Name":"World60","tags":[],"Value":220,"Enum":"KeyCode"},{"type":"EnumItem","Name":"World61","tags":[],"Value":221,"Enum":"KeyCode"},{"type":"EnumItem","Name":"World62","tags":[],"Value":222,"Enum":"KeyCode"},{"type":"EnumItem","Name":"World63","tags":[],"Value":223,"Enum":"KeyCode"},{"type":"EnumItem","Name":"World64","tags":[],"Value":224,"Enum":"KeyCode"},{"type":"EnumItem","Name":"World65","tags":[],"Value":225,"Enum":"KeyCode"},{"type":"EnumItem","Name":"World66","tags":[],"Value":226,"Enum":"KeyCode"},{"type":"EnumItem","Name":"World67","tags":[],"Value":227,"Enum":"KeyCode"},{"type":"EnumItem","Name":"World68","tags":[],"Value":228,"Enum":"KeyCode"},{"type":"EnumItem","Name":"World69","tags":[],"Value":229,"Enum":"KeyCode"},{"type":"EnumItem","Name":"World70","tags":[],"Value":230,"Enum":"KeyCode"},{"type":"EnumItem","Name":"World71","tags":[],"Value":231,"Enum":"KeyCode"},{"type":"EnumItem","Name":"World72","tags":[],"Value":232,"Enum":"KeyCode"},{"type":"EnumItem","Name":"World73","tags":[],"Value":233,"Enum":"KeyCode"},{"type":"EnumItem","Name":"World74","tags":[],"Value":234,"Enum":"KeyCode"},{"type":"EnumItem","Name":"World75","tags":[],"Value":235,"Enum":"KeyCode"},{"type":"EnumItem","Name":"World76","tags":[],"Value":236,"Enum":"KeyCode"},{"type":"EnumItem","Name":"World77","tags":[],"Value":237,"Enum":"KeyCode"},{"type":"EnumItem","Name":"World78","tags":[],"Value":238,"Enum":"KeyCode"},{"type":"EnumItem","Name":"World79","tags":[],"Value":239,"Enum":"KeyCode"},{"type":"EnumItem","Name":"World80","tags":[],"Value":240,"Enum":"KeyCode"},{"type":"EnumItem","Name":"World81","tags":[],"Value":241,"Enum":"KeyCode"},{"type":"EnumItem","Name":"World82","tags":[],"Value":242,"Enum":"KeyCode"},{"type":"EnumItem","Name":"World83","tags":[],"Value":243,"Enum":"KeyCode"},{"type":"EnumItem","Name":"World84","tags":[],"Value":244,"Enum":"KeyCode"},{"type":"EnumItem","Name":"World85","tags":[],"Value":245,"Enum":"KeyCode"},{"type":"EnumItem","Name":"World86","tags":[],"Value":246,"Enum":"KeyCode"},{"type":"EnumItem","Name":"World87","tags":[],"Value":247,"Enum":"KeyCode"},{"type":"EnumItem","Name":"World88","tags":[],"Value":248,"Enum":"KeyCode"},{"type":"EnumItem","Name":"World89","tags":[],"Value":249,"Enum":"KeyCode"},{"type":"EnumItem","Name":"World90","tags":[],"Value":250,"Enum":"KeyCode"},{"type":"EnumItem","Name":"World91","tags":[],"Value":251,"Enum":"KeyCode"},{"type":"EnumItem","Name":"World92","tags":[],"Value":252,"Enum":"KeyCode"},{"type":"EnumItem","Name":"World93","tags":[],"Value":253,"Enum":"KeyCode"},{"type":"EnumItem","Name":"World94","tags":[],"Value":254,"Enum":"KeyCode"},{"type":"EnumItem","Name":"World95","tags":[],"Value":255,"Enum":"KeyCode"},{"type":"EnumItem","Name":"ButtonX","tags":[],"Value":1000,"Enum":"KeyCode"},{"type":"EnumItem","Name":"ButtonY","tags":[],"Value":1001,"Enum":"KeyCode"},{"type":"EnumItem","Name":"ButtonA","tags":[],"Value":1002,"Enum":"KeyCode"},{"type":"EnumItem","Name":"ButtonB","tags":[],"Value":1003,"Enum":"KeyCode"},{"type":"EnumItem","Name":"ButtonR1","tags":[],"Value":1004,"Enum":"KeyCode"},{"type":"EnumItem","Name":"ButtonL1","tags":[],"Value":1005,"Enum":"KeyCode"},{"type":"EnumItem","Name":"ButtonR2","tags":[],"Value":1006,"Enum":"KeyCode"},{"type":"EnumItem","Name":"ButtonL2","tags":[],"Value":1007,"Enum":"KeyCode"},{"type":"EnumItem","Name":"ButtonR3","tags":[],"Value":1008,"Enum":"KeyCode"},{"type":"EnumItem","Name":"ButtonL3","tags":[],"Value":1009,"Enum":"KeyCode"},{"type":"EnumItem","Name":"ButtonStart","tags":[],"Value":1010,"Enum":"KeyCode"},{"type":"EnumItem","Name":"ButtonSelect","tags":[],"Value":1011,"Enum":"KeyCode"},{"type":"EnumItem","Name":"DPadLeft","tags":[],"Value":1012,"Enum":"KeyCode"},{"type":"EnumItem","Name":"DPadRight","tags":[],"Value":1013,"Enum":"KeyCode"},{"type":"EnumItem","Name":"DPadUp","tags":[],"Value":1014,"Enum":"KeyCode"},{"type":"EnumItem","Name":"DPadDown","tags":[],"Value":1015,"Enum":"KeyCode"},{"type":"EnumItem","Name":"Thumbstick1","tags":[],"Value":1016,"Enum":"KeyCode"},{"type":"EnumItem","Name":"Thumbstick2","tags":[],"Value":1017,"Enum":"KeyCode"},{"type":"Enum","Name":"KeywordFilterType","tags":[]},{"type":"EnumItem","Name":"Include","tags":[],"Value":0,"Enum":"KeywordFilterType"},{"type":"EnumItem","Name":"Exclude","tags":[],"Value":1,"Enum":"KeywordFilterType"},{"type":"Enum","Name":"LeftRight","tags":[]},{"type":"EnumItem","Name":"Left","tags":[],"Value":0,"Enum":"LeftRight"},{"type":"EnumItem","Name":"Center","tags":[],"Value":1,"Enum":"LeftRight"},{"type":"EnumItem","Name":"Right","tags":[],"Value":2,"Enum":"LeftRight"},{"type":"Enum","Name":"LevelOfDetailSetting","tags":[]},{"type":"EnumItem","Name":"High","tags":[],"Value":2,"Enum":"LevelOfDetailSetting"},{"type":"EnumItem","Name":"Medium","tags":[],"Value":1,"Enum":"LevelOfDetailSetting"},{"type":"EnumItem","Name":"Low","tags":[],"Value":0,"Enum":"LevelOfDetailSetting"},{"type":"Enum","Name":"ListenerType","tags":[]},{"type":"EnumItem","Name":"Camera","tags":[],"Value":0,"Enum":"ListenerType"},{"type":"EnumItem","Name":"CFrame","tags":[],"Value":1,"Enum":"ListenerType"},{"type":"EnumItem","Name":"ObjectPosition","tags":[],"Value":2,"Enum":"ListenerType"},{"type":"EnumItem","Name":"ObjectCFrame","tags":[],"Value":3,"Enum":"ListenerType"},{"type":"Enum","Name":"Material","tags":[]},{"type":"EnumItem","Name":"Plastic","tags":[],"Value":256,"Enum":"Material"},{"type":"EnumItem","Name":"Wood","tags":[],"Value":512,"Enum":"Material"},{"type":"EnumItem","Name":"Slate","tags":[],"Value":800,"Enum":"Material"},{"type":"EnumItem","Name":"Concrete","tags":[],"Value":816,"Enum":"Material"},{"type":"EnumItem","Name":"CorrodedMetal","tags":[],"Value":1040,"Enum":"Material"},{"type":"EnumItem","Name":"DiamondPlate","tags":[],"Value":1056,"Enum":"Material"},{"type":"EnumItem","Name":"Foil","tags":[],"Value":1072,"Enum":"Material"},{"type":"EnumItem","Name":"Grass","tags":[],"Value":1280,"Enum":"Material"},{"type":"EnumItem","Name":"Ice","tags":[],"Value":1536,"Enum":"Material"},{"type":"EnumItem","Name":"Marble","tags":[],"Value":784,"Enum":"Material"},{"type":"EnumItem","Name":"Granite","tags":[],"Value":832,"Enum":"Material"},{"type":"EnumItem","Name":"Brick","tags":[],"Value":848,"Enum":"Material"},{"type":"EnumItem","Name":"Pebble","tags":[],"Value":864,"Enum":"Material"},{"type":"EnumItem","Name":"Sand","tags":[],"Value":1296,"Enum":"Material"},{"type":"EnumItem","Name":"Fabric","tags":[],"Value":1312,"Enum":"Material"},{"type":"EnumItem","Name":"SmoothPlastic","tags":[],"Value":272,"Enum":"Material"},{"type":"EnumItem","Name":"Metal","tags":[],"Value":1088,"Enum":"Material"},{"type":"EnumItem","Name":"WoodPlanks","tags":[],"Value":528,"Enum":"Material"},{"type":"EnumItem","Name":"Cobblestone","tags":[],"Value":880,"Enum":"Material"},{"type":"EnumItem","Name":"Air","tags":["notbrowsable"],"Value":1792,"Enum":"Material"},{"type":"EnumItem","Name":"Water","tags":["notbrowsable"],"Value":2048,"Enum":"Material"},{"type":"EnumItem","Name":"Rock","tags":["notbrowsable"],"Value":896,"Enum":"Material"},{"type":"EnumItem","Name":"Glacier","tags":["notbrowsable"],"Value":1552,"Enum":"Material"},{"type":"EnumItem","Name":"Snow","tags":["notbrowsable"],"Value":1328,"Enum":"Material"},{"type":"EnumItem","Name":"Sandstone","tags":["notbrowsable"],"Value":912,"Enum":"Material"},{"type":"EnumItem","Name":"Mud","tags":["notbrowsable"],"Value":1344,"Enum":"Material"},{"type":"EnumItem","Name":"Basalt","tags":["notbrowsable"],"Value":788,"Enum":"Material"},{"type":"EnumItem","Name":"Ground","tags":["notbrowsable"],"Value":1360,"Enum":"Material"},{"type":"EnumItem","Name":"CrackedLava","tags":["notbrowsable"],"Value":804,"Enum":"Material"},{"type":"EnumItem","Name":"Neon","tags":[],"Value":288,"Enum":"Material"},{"type":"EnumItem","Name":"Asphalt","tags":["notbrowsable"],"Value":1376,"Enum":"Material"},{"type":"EnumItem","Name":"LeafyGrass","tags":["notbrowsable"],"Value":1284,"Enum":"Material"},{"type":"EnumItem","Name":"Salt","tags":["notbrowsable"],"Value":1392,"Enum":"Material"},{"type":"EnumItem","Name":"Limestone","tags":["notbrowsable"],"Value":820,"Enum":"Material"},{"type":"EnumItem","Name":"Pavement","tags":["notbrowsable"],"Value":836,"Enum":"Material"},{"type":"Enum","Name":"MembershipType","tags":[]},{"type":"EnumItem","Name":"None","tags":[],"Value":0,"Enum":"MembershipType"},{"type":"EnumItem","Name":"BuildersClub","tags":[],"Value":1,"Enum":"MembershipType"},{"type":"EnumItem","Name":"TurboBuildersClub","tags":[],"Value":2,"Enum":"MembershipType"},{"type":"EnumItem","Name":"OutrageousBuildersClub","tags":[],"Value":3,"Enum":"MembershipType"},{"type":"Enum","Name":"MeshType","tags":[]},{"type":"EnumItem","Name":"Head","tags":[],"Value":0,"Enum":"MeshType"},{"type":"EnumItem","Name":"Torso","tags":[],"Value":1,"Enum":"MeshType"},{"type":"EnumItem","Name":"Wedge","tags":[],"Value":2,"Enum":"MeshType"},{"type":"EnumItem","Name":"Prism","tags":["deprecated"],"Value":7,"Enum":"MeshType"},{"type":"EnumItem","Name":"Pyramid","tags":["deprecated"],"Value":8,"Enum":"MeshType"},{"type":"EnumItem","Name":"ParallelRamp","tags":["deprecated"],"Value":9,"Enum":"MeshType"},{"type":"EnumItem","Name":"RightAngleRamp","tags":["deprecated"],"Value":10,"Enum":"MeshType"},{"type":"EnumItem","Name":"CornerWedge","tags":["deprecated"],"Value":11,"Enum":"MeshType"},{"type":"EnumItem","Name":"Brick","tags":[],"Value":6,"Enum":"MeshType"},{"type":"EnumItem","Name":"Sphere","tags":[],"Value":3,"Enum":"MeshType"},{"type":"EnumItem","Name":"Cylinder","tags":[],"Value":4,"Enum":"MeshType"},{"type":"EnumItem","Name":"FileMesh","tags":[],"Value":5,"Enum":"MeshType"},{"type":"Enum","Name":"MessageType","tags":[]},{"type":"EnumItem","Name":"MessageOutput","tags":[],"Value":0,"Enum":"MessageType"},{"type":"EnumItem","Name":"MessageInfo","tags":[],"Value":1,"Enum":"MessageType"},{"type":"EnumItem","Name":"MessageWarning","tags":[],"Value":2,"Enum":"MessageType"},{"type":"EnumItem","Name":"MessageError","tags":[],"Value":3,"Enum":"MessageType"},{"type":"Enum","Name":"MouseBehavior","tags":[]},{"type":"EnumItem","Name":"Default","tags":[],"Value":0,"Enum":"MouseBehavior"},{"type":"EnumItem","Name":"LockCenter","tags":[],"Value":1,"Enum":"MouseBehavior"},{"type":"EnumItem","Name":"LockCurrentPosition","tags":[],"Value":2,"Enum":"MouseBehavior"},{"type":"Enum","Name":"MoveState","tags":[]},{"type":"EnumItem","Name":"Stopped","tags":[],"Value":0,"Enum":"MoveState"},{"type":"EnumItem","Name":"Coasting","tags":[],"Value":1,"Enum":"MoveState"},{"type":"EnumItem","Name":"Pushing","tags":[],"Value":2,"Enum":"MoveState"},{"type":"EnumItem","Name":"Stopping","tags":[],"Value":3,"Enum":"MoveState"},{"type":"EnumItem","Name":"AirFree","tags":[],"Value":4,"Enum":"MoveState"},{"type":"Enum","Name":"NameOcclusion","tags":[]},{"type":"EnumItem","Name":"OccludeAll","tags":[],"Value":2,"Enum":"NameOcclusion"},{"type":"EnumItem","Name":"EnemyOcclusion","tags":[],"Value":1,"Enum":"NameOcclusion"},{"type":"EnumItem","Name":"NoOcclusion","tags":[],"Value":0,"Enum":"NameOcclusion"},{"type":"Enum","Name":"NetworkOwnership","tags":[]},{"type":"EnumItem","Name":"Automatic","tags":[],"Value":0,"Enum":"NetworkOwnership"},{"type":"EnumItem","Name":"Manual","tags":[],"Value":1,"Enum":"NetworkOwnership"},{"type":"Enum","Name":"NormalId","tags":[]},{"type":"EnumItem","Name":"Top","tags":[],"Value":1,"Enum":"NormalId"},{"type":"EnumItem","Name":"Bottom","tags":[],"Value":4,"Enum":"NormalId"},{"type":"EnumItem","Name":"Back","tags":[],"Value":2,"Enum":"NormalId"},{"type":"EnumItem","Name":"Front","tags":[],"Value":5,"Enum":"NormalId"},{"type":"EnumItem","Name":"Right","tags":[],"Value":0,"Enum":"NormalId"},{"type":"EnumItem","Name":"Left","tags":[],"Value":3,"Enum":"NormalId"},{"type":"Enum","Name":"OverrideMouseIconBehavior","tags":[]},{"type":"EnumItem","Name":"None","tags":[],"Value":0,"Enum":"OverrideMouseIconBehavior"},{"type":"EnumItem","Name":"ForceShow","tags":[],"Value":1,"Enum":"OverrideMouseIconBehavior"},{"type":"EnumItem","Name":"ForceHide","tags":[],"Value":2,"Enum":"OverrideMouseIconBehavior"},{"type":"Enum","Name":"PacketPriority","tags":[]},{"type":"EnumItem","Name":"IMMEDIATE_PRIORITY","tags":[],"Value":0,"Enum":"PacketPriority"},{"type":"EnumItem","Name":"HIGH_PRIORITY","tags":[],"Value":1,"Enum":"PacketPriority"},{"type":"EnumItem","Name":"MEDIUM_PRIORITY","tags":[],"Value":2,"Enum":"PacketPriority"},{"type":"EnumItem","Name":"LOW_PRIORITY","tags":[],"Value":3,"Enum":"PacketPriority"},{"type":"Enum","Name":"PacketReliability","tags":[]},{"type":"EnumItem","Name":"UNRELIABLE","tags":[],"Value":0,"Enum":"PacketReliability"},{"type":"EnumItem","Name":"UNRELIABLE_SEQUENCED","tags":[],"Value":1,"Enum":"PacketReliability"},{"type":"EnumItem","Name":"RELIABLE","tags":[],"Value":2,"Enum":"PacketReliability"},{"type":"EnumItem","Name":"RELIABLE_ORDERED","tags":[],"Value":3,"Enum":"PacketReliability"},{"type":"EnumItem","Name":"RELIABLE_SEQUENCED","tags":[],"Value":4,"Enum":"PacketReliability"},{"type":"Enum","Name":"PartType","tags":[]},{"type":"EnumItem","Name":"Ball","tags":[],"Value":0,"Enum":"PartType"},{"type":"EnumItem","Name":"Block","tags":[],"Value":1,"Enum":"PartType"},{"type":"EnumItem","Name":"Cylinder","tags":[],"Value":2,"Enum":"PartType"},{"type":"Enum","Name":"PathStatus","tags":[]},{"type":"EnumItem","Name":"Success","tags":[],"Value":0,"Enum":"PathStatus"},{"type":"EnumItem","Name":"ClosestNoPath","tags":[],"Value":1,"Enum":"PathStatus"},{"type":"EnumItem","Name":"ClosestOutOfRange","tags":[],"Value":2,"Enum":"PathStatus"},{"type":"EnumItem","Name":"FailStartNotEmpty","tags":[],"Value":3,"Enum":"PathStatus"},{"type":"EnumItem","Name":"FailFinishNotEmpty","tags":[],"Value":4,"Enum":"PathStatus"},{"type":"Enum","Name":"PhysicalPropertiesMode","tags":[]},{"type":"EnumItem","Name":"Default","tags":[],"Value":1,"Enum":"PhysicalPropertiesMode"},{"type":"EnumItem","Name":"Legacy","tags":[],"Value":0,"Enum":"PhysicalPropertiesMode"},{"type":"EnumItem","Name":"New","tags":[],"Value":2,"Enum":"PhysicalPropertiesMode"},{"type":"Enum","Name":"PhysicsReceiveMethod","tags":[]},{"type":"EnumItem","Name":"Direct","tags":[],"Value":0,"Enum":"PhysicsReceiveMethod"},{"type":"EnumItem","Name":"Interpolation","tags":[],"Value":1,"Enum":"PhysicsReceiveMethod"},{"type":"Enum","Name":"PhysicsSendMethod","tags":[]},{"type":"EnumItem","Name":"ErrorComputation","tags":[],"Value":0,"Enum":"PhysicsSendMethod"},{"type":"EnumItem","Name":"ErrorComputation2","tags":[],"Value":1,"Enum":"PhysicsSendMethod"},{"type":"EnumItem","Name":"RoundRobin","tags":[],"Value":2,"Enum":"PhysicsSendMethod"},{"type":"EnumItem","Name":"TopNErrors","tags":[],"Value":3,"Enum":"PhysicsSendMethod"},{"type":"Enum","Name":"Platform","tags":[]},{"type":"EnumItem","Name":"Windows","tags":[],"Value":0,"Enum":"Platform"},{"type":"EnumItem","Name":"OSX","tags":[],"Value":1,"Enum":"Platform"},{"type":"EnumItem","Name":"IOS","tags":[],"Value":2,"Enum":"Platform"},{"type":"EnumItem","Name":"Android","tags":[],"Value":3,"Enum":"Platform"},{"type":"EnumItem","Name":"XBoxOne","tags":[],"Value":4,"Enum":"Platform"},{"type":"EnumItem","Name":"PS4","tags":[],"Value":5,"Enum":"Platform"},{"type":"EnumItem","Name":"PS3","tags":[],"Value":6,"Enum":"Platform"},{"type":"EnumItem","Name":"XBox360","tags":[],"Value":7,"Enum":"Platform"},{"type":"EnumItem","Name":"WiiU","tags":[],"Value":8,"Enum":"Platform"},{"type":"EnumItem","Name":"NX","tags":[],"Value":9,"Enum":"Platform"},{"type":"EnumItem","Name":"Ouya","tags":[],"Value":10,"Enum":"Platform"},{"type":"EnumItem","Name":"AndroidTV","tags":[],"Value":11,"Enum":"Platform"},{"type":"EnumItem","Name":"Chromecast","tags":[],"Value":12,"Enum":"Platform"},{"type":"EnumItem","Name":"Linux","tags":[],"Value":13,"Enum":"Platform"},{"type":"EnumItem","Name":"SteamOS","tags":[],"Value":14,"Enum":"Platform"},{"type":"EnumItem","Name":"WebOS","tags":[],"Value":15,"Enum":"Platform"},{"type":"EnumItem","Name":"DOS","tags":[],"Value":16,"Enum":"Platform"},{"type":"EnumItem","Name":"BeOS","tags":[],"Value":17,"Enum":"Platform"},{"type":"EnumItem","Name":"UWP","tags":[],"Value":18,"Enum":"Platform"},{"type":"EnumItem","Name":"None","tags":[],"Value":19,"Enum":"Platform"},{"type":"Enum","Name":"PlayerActions","tags":[]},{"type":"EnumItem","Name":"CharacterForward","tags":[],"Value":0,"Enum":"PlayerActions"},{"type":"EnumItem","Name":"CharacterBackward","tags":[],"Value":1,"Enum":"PlayerActions"},{"type":"EnumItem","Name":"CharacterLeft","tags":[],"Value":2,"Enum":"PlayerActions"},{"type":"EnumItem","Name":"CharacterRight","tags":[],"Value":3,"Enum":"PlayerActions"},{"type":"EnumItem","Name":"CharacterJump","tags":[],"Value":4,"Enum":"PlayerActions"},{"type":"Enum","Name":"PlayerChatType","tags":[]},{"type":"EnumItem","Name":"All","tags":[],"Value":0,"Enum":"PlayerChatType"},{"type":"EnumItem","Name":"Team","tags":[],"Value":1,"Enum":"PlayerChatType"},{"type":"EnumItem","Name":"Whisper","tags":[],"Value":2,"Enum":"PlayerChatType"},{"type":"Enum","Name":"PoseEasingDirection","tags":[]},{"type":"EnumItem","Name":"Out","tags":[],"Value":1,"Enum":"PoseEasingDirection"},{"type":"EnumItem","Name":"InOut","tags":[],"Value":2,"Enum":"PoseEasingDirection"},{"type":"EnumItem","Name":"In","tags":[],"Value":0,"Enum":"PoseEasingDirection"},{"type":"Enum","Name":"PoseEasingStyle","tags":[]},{"type":"EnumItem","Name":"Linear","tags":[],"Value":0,"Enum":"PoseEasingStyle"},{"type":"EnumItem","Name":"Constant","tags":[],"Value":1,"Enum":"PoseEasingStyle"},{"type":"EnumItem","Name":"Elastic","tags":[],"Value":2,"Enum":"PoseEasingStyle"},{"type":"EnumItem","Name":"Cubic","tags":[],"Value":3,"Enum":"PoseEasingStyle"},{"type":"EnumItem","Name":"Bounce","tags":[],"Value":4,"Enum":"PoseEasingStyle"},{"type":"Enum","Name":"PriorityMethod","tags":[]},{"type":"EnumItem","Name":"LastError","tags":[],"Value":0,"Enum":"PriorityMethod"},{"type":"EnumItem","Name":"AccumulatedError","tags":[],"Value":1,"Enum":"PriorityMethod"},{"type":"EnumItem","Name":"FIFO","tags":[],"Value":2,"Enum":"PriorityMethod"},{"type":"Enum","Name":"PrismSides","tags":[]},{"type":"EnumItem","Name":"3","tags":[],"Value":3,"Enum":"PrismSides"},{"type":"EnumItem","Name":"5","tags":[],"Value":5,"Enum":"PrismSides"},{"type":"EnumItem","Name":"6","tags":[],"Value":6,"Enum":"PrismSides"},{"type":"EnumItem","Name":"8","tags":[],"Value":8,"Enum":"PrismSides"},{"type":"EnumItem","Name":"10","tags":[],"Value":10,"Enum":"PrismSides"},{"type":"EnumItem","Name":"20","tags":[],"Value":20,"Enum":"PrismSides"},{"type":"Enum","Name":"PrivilegeType","tags":[]},{"type":"EnumItem","Name":"Owner","tags":[],"Value":255,"Enum":"PrivilegeType"},{"type":"EnumItem","Name":"Admin","tags":[],"Value":240,"Enum":"PrivilegeType"},{"type":"EnumItem","Name":"Member","tags":[],"Value":128,"Enum":"PrivilegeType"},{"type":"EnumItem","Name":"Visitor","tags":[],"Value":10,"Enum":"PrivilegeType"},{"type":"EnumItem","Name":"Banned","tags":[],"Value":0,"Enum":"PrivilegeType"},{"type":"Enum","Name":"ProductPurchaseDecision","tags":[]},{"type":"EnumItem","Name":"NotProcessedYet","tags":[],"Value":0,"Enum":"ProductPurchaseDecision"},{"type":"EnumItem","Name":"PurchaseGranted","tags":[],"Value":1,"Enum":"ProductPurchaseDecision"},{"type":"Enum","Name":"PyramidSides","tags":[]},{"type":"EnumItem","Name":"3","tags":[],"Value":3,"Enum":"PyramidSides"},{"type":"EnumItem","Name":"4","tags":[],"Value":4,"Enum":"PyramidSides"},{"type":"EnumItem","Name":"5","tags":[],"Value":5,"Enum":"PyramidSides"},{"type":"EnumItem","Name":"6","tags":[],"Value":6,"Enum":"PyramidSides"},{"type":"EnumItem","Name":"8","tags":[],"Value":8,"Enum":"PyramidSides"},{"type":"EnumItem","Name":"10","tags":[],"Value":10,"Enum":"PyramidSides"},{"type":"EnumItem","Name":"20","tags":[],"Value":20,"Enum":"PyramidSides"},{"type":"Enum","Name":"QualityLevel","tags":[]},{"type":"EnumItem","Name":"Automatic","tags":[],"Value":0,"Enum":"QualityLevel"},{"type":"EnumItem","Name":"Level01","tags":[],"Value":1,"Enum":"QualityLevel"},{"type":"EnumItem","Name":"Level02","tags":[],"Value":2,"Enum":"QualityLevel"},{"type":"EnumItem","Name":"Level03","tags":[],"Value":3,"Enum":"QualityLevel"},{"type":"EnumItem","Name":"Level04","tags":[],"Value":4,"Enum":"QualityLevel"},{"type":"EnumItem","Name":"Level05","tags":[],"Value":5,"Enum":"QualityLevel"},{"type":"EnumItem","Name":"Level06","tags":[],"Value":6,"Enum":"QualityLevel"},{"type":"EnumItem","Name":"Level07","tags":[],"Value":7,"Enum":"QualityLevel"},{"type":"EnumItem","Name":"Level08","tags":[],"Value":8,"Enum":"QualityLevel"},{"type":"EnumItem","Name":"Level09","tags":[],"Value":9,"Enum":"QualityLevel"},{"type":"EnumItem","Name":"Level10","tags":[],"Value":10,"Enum":"QualityLevel"},{"type":"EnumItem","Name":"Level11","tags":[],"Value":11,"Enum":"QualityLevel"},{"type":"EnumItem","Name":"Level12","tags":[],"Value":12,"Enum":"QualityLevel"},{"type":"EnumItem","Name":"Level13","tags":[],"Value":13,"Enum":"QualityLevel"},{"type":"EnumItem","Name":"Level14","tags":[],"Value":14,"Enum":"QualityLevel"},{"type":"EnumItem","Name":"Level15","tags":[],"Value":15,"Enum":"QualityLevel"},{"type":"EnumItem","Name":"Level16","tags":[],"Value":16,"Enum":"QualityLevel"},{"type":"EnumItem","Name":"Level17","tags":[],"Value":17,"Enum":"QualityLevel"},{"type":"EnumItem","Name":"Level18","tags":[],"Value":18,"Enum":"QualityLevel"},{"type":"EnumItem","Name":"Level19","tags":[],"Value":19,"Enum":"QualityLevel"},{"type":"EnumItem","Name":"Level20","tags":[],"Value":20,"Enum":"QualityLevel"},{"type":"EnumItem","Name":"Level21","tags":[],"Value":21,"Enum":"QualityLevel"},{"type":"Enum","Name":"RenderPriority","tags":[]},{"type":"EnumItem","Name":"First","tags":[],"Value":0,"Enum":"RenderPriority"},{"type":"EnumItem","Name":"Input","tags":[],"Value":100,"Enum":"RenderPriority"},{"type":"EnumItem","Name":"Camera","tags":[],"Value":200,"Enum":"RenderPriority"},{"type":"EnumItem","Name":"Character","tags":[],"Value":300,"Enum":"RenderPriority"},{"type":"EnumItem","Name":"Last","tags":[],"Value":2000,"Enum":"RenderPriority"},{"type":"Enum","Name":"Resolution","tags":[]},{"type":"EnumItem","Name":"Automatic","tags":[],"Value":0,"Enum":"Resolution"},{"type":"EnumItem","Name":"720x526","tags":[],"Value":1,"Enum":"Resolution"},{"type":"EnumItem","Name":"800x600","tags":[],"Value":2,"Enum":"Resolution"},{"type":"EnumItem","Name":"1024x600","tags":[],"Value":3,"Enum":"Resolution"},{"type":"EnumItem","Name":"1024x768","tags":[],"Value":4,"Enum":"Resolution"},{"type":"EnumItem","Name":"1280x720","tags":[],"Value":5,"Enum":"Resolution"},{"type":"EnumItem","Name":"1280x768","tags":[],"Value":6,"Enum":"Resolution"},{"type":"EnumItem","Name":"1152x864","tags":[],"Value":7,"Enum":"Resolution"},{"type":"EnumItem","Name":"1280x800","tags":[],"Value":8,"Enum":"Resolution"},{"type":"EnumItem","Name":"1360x768","tags":[],"Value":9,"Enum":"Resolution"},{"type":"EnumItem","Name":"1280x960","tags":[],"Value":10,"Enum":"Resolution"},{"type":"EnumItem","Name":"1280x1024","tags":[],"Value":11,"Enum":"Resolution"},{"type":"EnumItem","Name":"1440x900","tags":[],"Value":12,"Enum":"Resolution"},{"type":"EnumItem","Name":"1600x900","tags":[],"Value":13,"Enum":"Resolution"},{"type":"EnumItem","Name":"1600x1024","tags":[],"Value":14,"Enum":"Resolution"},{"type":"EnumItem","Name":"1600x1200","tags":[],"Value":15,"Enum":"Resolution"},{"type":"EnumItem","Name":"1680x1050","tags":[],"Value":16,"Enum":"Resolution"},{"type":"EnumItem","Name":"1920x1080","tags":[],"Value":17,"Enum":"Resolution"},{"type":"EnumItem","Name":"1920x1200","tags":[],"Value":18,"Enum":"Resolution"},{"type":"Enum","Name":"ReverbType","tags":[]},{"type":"EnumItem","Name":"NoReverb","tags":[],"Value":0,"Enum":"ReverbType"},{"type":"EnumItem","Name":"GenericReverb","tags":[],"Value":1,"Enum":"ReverbType"},{"type":"EnumItem","Name":"PaddedCell","tags":[],"Value":2,"Enum":"ReverbType"},{"type":"EnumItem","Name":"Room","tags":[],"Value":3,"Enum":"ReverbType"},{"type":"EnumItem","Name":"Bathroom","tags":[],"Value":4,"Enum":"ReverbType"},{"type":"EnumItem","Name":"LivingRoom","tags":[],"Value":5,"Enum":"ReverbType"},{"type":"EnumItem","Name":"StoneRoom","tags":[],"Value":6,"Enum":"ReverbType"},{"type":"EnumItem","Name":"Auditorium","tags":[],"Value":7,"Enum":"ReverbType"},{"type":"EnumItem","Name":"ConcertHall","tags":[],"Value":8,"Enum":"ReverbType"},{"type":"EnumItem","Name":"Cave","tags":[],"Value":9,"Enum":"ReverbType"},{"type":"EnumItem","Name":"Arena","tags":[],"Value":10,"Enum":"ReverbType"},{"type":"EnumItem","Name":"Hangar","tags":[],"Value":11,"Enum":"ReverbType"},{"type":"EnumItem","Name":"CarpettedHallway","tags":[],"Value":12,"Enum":"ReverbType"},{"type":"EnumItem","Name":"Hallway","tags":[],"Value":13,"Enum":"ReverbType"},{"type":"EnumItem","Name":"StoneCorridor","tags":[],"Value":14,"Enum":"ReverbType"},{"type":"EnumItem","Name":"Alley","tags":[],"Value":15,"Enum":"ReverbType"},{"type":"EnumItem","Name":"Forest","tags":[],"Value":16,"Enum":"ReverbType"},{"type":"EnumItem","Name":"City","tags":[],"Value":17,"Enum":"ReverbType"},{"type":"EnumItem","Name":"Mountains","tags":[],"Value":18,"Enum":"ReverbType"},{"type":"EnumItem","Name":"Quarry","tags":[],"Value":19,"Enum":"ReverbType"},{"type":"EnumItem","Name":"Plain","tags":[],"Value":20,"Enum":"ReverbType"},{"type":"EnumItem","Name":"ParkingLot","tags":[],"Value":21,"Enum":"ReverbType"},{"type":"EnumItem","Name":"SewerPipe","tags":[],"Value":22,"Enum":"ReverbType"},{"type":"EnumItem","Name":"UnderWater","tags":[],"Value":23,"Enum":"ReverbType"},{"type":"Enum","Name":"RollOffMode","tags":[]},{"type":"EnumItem","Name":"Inverse","tags":[],"Value":0,"Enum":"RollOffMode"},{"type":"EnumItem","Name":"Linear","tags":[],"Value":1,"Enum":"RollOffMode"},{"type":"Enum","Name":"RotationType","tags":[]},{"type":"EnumItem","Name":"MovementRelative","tags":[],"Value":0,"Enum":"RotationType"},{"type":"EnumItem","Name":"CameraRelative","tags":[],"Value":1,"Enum":"RotationType"},{"type":"Enum","Name":"RuntimeUndoBehavior","tags":[]},{"type":"EnumItem","Name":"Aggregate","tags":[],"Value":0,"Enum":"RuntimeUndoBehavior"},{"type":"EnumItem","Name":"Snapshot","tags":[],"Value":1,"Enum":"RuntimeUndoBehavior"},{"type":"EnumItem","Name":"Hybrid","tags":[],"Value":2,"Enum":"RuntimeUndoBehavior"},{"type":"Enum","Name":"SaveFilter","tags":[]},{"type":"EnumItem","Name":"SaveAll","tags":[],"Value":2,"Enum":"SaveFilter"},{"type":"EnumItem","Name":"SaveWorld","tags":[],"Value":0,"Enum":"SaveFilter"},{"type":"EnumItem","Name":"SaveGame","tags":[],"Value":1,"Enum":"SaveFilter"},{"type":"Enum","Name":"SavedQualitySetting","tags":[]},{"type":"EnumItem","Name":"Automatic","tags":[],"Value":0,"Enum":"SavedQualitySetting"},{"type":"EnumItem","Name":"QualityLevel1","tags":[],"Value":1,"Enum":"SavedQualitySetting"},{"type":"EnumItem","Name":"QualityLevel2","tags":[],"Value":2,"Enum":"SavedQualitySetting"},{"type":"EnumItem","Name":"QualityLevel3","tags":[],"Value":3,"Enum":"SavedQualitySetting"},{"type":"EnumItem","Name":"QualityLevel4","tags":[],"Value":4,"Enum":"SavedQualitySetting"},{"type":"EnumItem","Name":"QualityLevel5","tags":[],"Value":5,"Enum":"SavedQualitySetting"},{"type":"EnumItem","Name":"QualityLevel6","tags":[],"Value":6,"Enum":"SavedQualitySetting"},{"type":"EnumItem","Name":"QualityLevel7","tags":[],"Value":7,"Enum":"SavedQualitySetting"},{"type":"EnumItem","Name":"QualityLevel8","tags":[],"Value":8,"Enum":"SavedQualitySetting"},{"type":"EnumItem","Name":"QualityLevel9","tags":[],"Value":9,"Enum":"SavedQualitySetting"},{"type":"EnumItem","Name":"QualityLevel10","tags":[],"Value":10,"Enum":"SavedQualitySetting"},{"type":"Enum","Name":"ScaleType","tags":[]},{"type":"EnumItem","Name":"Stretch","tags":[],"Value":0,"Enum":"ScaleType"},{"type":"EnumItem","Name":"Slice","tags":[],"Value":1,"Enum":"ScaleType"},{"type":"Enum","Name":"SizeConstraint","tags":[]},{"type":"EnumItem","Name":"RelativeXY","tags":[],"Value":0,"Enum":"SizeConstraint"},{"type":"EnumItem","Name":"RelativeXX","tags":[],"Value":1,"Enum":"SizeConstraint"},{"type":"EnumItem","Name":"RelativeYY","tags":[],"Value":2,"Enum":"SizeConstraint"},{"type":"Enum","Name":"SleepAdjustMethod","tags":[]},{"type":"EnumItem","Name":"None","tags":[],"Value":0,"Enum":"SleepAdjustMethod"},{"type":"EnumItem","Name":"LastSample","tags":[],"Value":1,"Enum":"SleepAdjustMethod"},{"type":"EnumItem","Name":"AverageInterval","tags":[],"Value":2,"Enum":"SleepAdjustMethod"},{"type":"Enum","Name":"SoundType","tags":[]},{"type":"EnumItem","Name":"NoSound","tags":[],"Value":0,"Enum":"SoundType"},{"type":"EnumItem","Name":"Boing","tags":[],"Value":1,"Enum":"SoundType"},{"type":"EnumItem","Name":"Bomb","tags":[],"Value":2,"Enum":"SoundType"},{"type":"EnumItem","Name":"Break","tags":[],"Value":3,"Enum":"SoundType"},{"type":"EnumItem","Name":"Click","tags":[],"Value":4,"Enum":"SoundType"},{"type":"EnumItem","Name":"Clock","tags":[],"Value":5,"Enum":"SoundType"},{"type":"EnumItem","Name":"Slingshot","tags":[],"Value":6,"Enum":"SoundType"},{"type":"EnumItem","Name":"Page","tags":[],"Value":7,"Enum":"SoundType"},{"type":"EnumItem","Name":"Ping","tags":[],"Value":8,"Enum":"SoundType"},{"type":"EnumItem","Name":"Snap","tags":[],"Value":9,"Enum":"SoundType"},{"type":"EnumItem","Name":"Splat","tags":[],"Value":10,"Enum":"SoundType"},{"type":"EnumItem","Name":"Step","tags":[],"Value":11,"Enum":"SoundType"},{"type":"EnumItem","Name":"StepOn","tags":[],"Value":12,"Enum":"SoundType"},{"type":"EnumItem","Name":"Swoosh","tags":[],"Value":13,"Enum":"SoundType"},{"type":"EnumItem","Name":"Victory","tags":[],"Value":14,"Enum":"SoundType"},{"type":"Enum","Name":"SpecialKey","tags":[]},{"type":"EnumItem","Name":"Insert","tags":[],"Value":0,"Enum":"SpecialKey"},{"type":"EnumItem","Name":"Home","tags":[],"Value":1,"Enum":"SpecialKey"},{"type":"EnumItem","Name":"End","tags":[],"Value":2,"Enum":"SpecialKey"},{"type":"EnumItem","Name":"PageUp","tags":[],"Value":3,"Enum":"SpecialKey"},{"type":"EnumItem","Name":"PageDown","tags":[],"Value":4,"Enum":"SpecialKey"},{"type":"EnumItem","Name":"ChatHotkey","tags":[],"Value":5,"Enum":"SpecialKey"},{"type":"Enum","Name":"Status","tags":[]},{"type":"EnumItem","Name":"Poison","tags":["deprecated"],"Value":0,"Enum":"Status"},{"type":"EnumItem","Name":"Confusion","tags":["deprecated"],"Value":1,"Enum":"Status"},{"type":"Enum","Name":"Stuff","tags":[]},{"type":"EnumItem","Name":"Heads","tags":[],"Value":0,"Enum":"Stuff"},{"type":"EnumItem","Name":"Faces","tags":[],"Value":1,"Enum":"Stuff"},{"type":"EnumItem","Name":"Hats","tags":[],"Value":2,"Enum":"Stuff"},{"type":"EnumItem","Name":"TShirts","tags":[],"Value":3,"Enum":"Stuff"},{"type":"EnumItem","Name":"Shirts","tags":[],"Value":4,"Enum":"Stuff"},{"type":"EnumItem","Name":"Pants","tags":[],"Value":5,"Enum":"Stuff"},{"type":"EnumItem","Name":"Gears","tags":[],"Value":6,"Enum":"Stuff"},{"type":"EnumItem","Name":"Torsos","tags":[],"Value":7,"Enum":"Stuff"},{"type":"EnumItem","Name":"LeftArms","tags":[],"Value":8,"Enum":"Stuff"},{"type":"EnumItem","Name":"RightArms","tags":[],"Value":9,"Enum":"Stuff"},{"type":"EnumItem","Name":"LeftLegs","tags":[],"Value":10,"Enum":"Stuff"},{"type":"EnumItem","Name":"RightLegs","tags":[],"Value":11,"Enum":"Stuff"},{"type":"EnumItem","Name":"Bodies","tags":[],"Value":12,"Enum":"Stuff"},{"type":"EnumItem","Name":"Costumes","tags":[],"Value":13,"Enum":"Stuff"},{"type":"Enum","Name":"Style","tags":[]},{"type":"EnumItem","Name":"AlternatingSupports","tags":[],"Value":0,"Enum":"Style"},{"type":"EnumItem","Name":"BridgeStyleSupports","tags":[],"Value":1,"Enum":"Style"},{"type":"EnumItem","Name":"NoSupports","tags":[],"Value":2,"Enum":"Style"},{"type":"Enum","Name":"SurfaceConstraint","tags":[]},{"type":"EnumItem","Name":"None","tags":[],"Value":0,"Enum":"SurfaceConstraint"},{"type":"EnumItem","Name":"Hinge","tags":[],"Value":1,"Enum":"SurfaceConstraint"},{"type":"EnumItem","Name":"SteppingMotor","tags":[],"Value":2,"Enum":"SurfaceConstraint"},{"type":"EnumItem","Name":"Motor","tags":[],"Value":3,"Enum":"SurfaceConstraint"},{"type":"Enum","Name":"SurfaceType","tags":[]},{"type":"EnumItem","Name":"Smooth","tags":[],"Value":0,"Enum":"SurfaceType"},{"type":"EnumItem","Name":"Glue","tags":[],"Value":1,"Enum":"SurfaceType"},{"type":"EnumItem","Name":"Weld","tags":[],"Value":2,"Enum":"SurfaceType"},{"type":"EnumItem","Name":"Studs","tags":[],"Value":3,"Enum":"SurfaceType"},{"type":"EnumItem","Name":"Inlet","tags":[],"Value":4,"Enum":"SurfaceType"},{"type":"EnumItem","Name":"Universal","tags":[],"Value":5,"Enum":"SurfaceType"},{"type":"EnumItem","Name":"Hinge","tags":[],"Value":6,"Enum":"SurfaceType"},{"type":"EnumItem","Name":"Motor","tags":[],"Value":7,"Enum":"SurfaceType"},{"type":"EnumItem","Name":"SteppingMotor","tags":[],"Value":8,"Enum":"SurfaceType"},{"type":"EnumItem","Name":"Unjoinable","tags":[],"Value":9,"Enum":"SurfaceType"},{"type":"EnumItem","Name":"SmoothNoOutlines","tags":[],"Value":10,"Enum":"SurfaceType"},{"type":"Enum","Name":"SwipeDirection","tags":[]},{"type":"EnumItem","Name":"Right","tags":[],"Value":0,"Enum":"SwipeDirection"},{"type":"EnumItem","Name":"Left","tags":[],"Value":1,"Enum":"SwipeDirection"},{"type":"EnumItem","Name":"Up","tags":[],"Value":2,"Enum":"SwipeDirection"},{"type":"EnumItem","Name":"Down","tags":[],"Value":3,"Enum":"SwipeDirection"},{"type":"EnumItem","Name":"None","tags":[],"Value":4,"Enum":"SwipeDirection"},{"type":"Enum","Name":"TeleportState","tags":[]},{"type":"EnumItem","Name":"RequestedFromServer","tags":[],"Value":0,"Enum":"TeleportState"},{"type":"EnumItem","Name":"Started","tags":[],"Value":1,"Enum":"TeleportState"},{"type":"EnumItem","Name":"WaitingForServer","tags":[],"Value":2,"Enum":"TeleportState"},{"type":"EnumItem","Name":"Failed","tags":[],"Value":3,"Enum":"TeleportState"},{"type":"EnumItem","Name":"InProgress","tags":[],"Value":4,"Enum":"TeleportState"},{"type":"Enum","Name":"TeleportType","tags":[]},{"type":"EnumItem","Name":"ToPlace","tags":[],"Value":0,"Enum":"TeleportType"},{"type":"EnumItem","Name":"ToInstance","tags":[],"Value":1,"Enum":"TeleportType"},{"type":"EnumItem","Name":"ToReservedServer","tags":[],"Value":2,"Enum":"TeleportType"},{"type":"Enum","Name":"TextXAlignment","tags":[]},{"type":"EnumItem","Name":"Left","tags":[],"Value":0,"Enum":"TextXAlignment"},{"type":"EnumItem","Name":"Center","tags":[],"Value":2,"Enum":"TextXAlignment"},{"type":"EnumItem","Name":"Right","tags":[],"Value":1,"Enum":"TextXAlignment"},{"type":"Enum","Name":"TextYAlignment","tags":[]},{"type":"EnumItem","Name":"Top","tags":[],"Value":0,"Enum":"TextYAlignment"},{"type":"EnumItem","Name":"Center","tags":[],"Value":1,"Enum":"TextYAlignment"},{"type":"EnumItem","Name":"Bottom","tags":[],"Value":2,"Enum":"TextYAlignment"},{"type":"Enum","Name":"ThreadPoolConfig","tags":[]},{"type":"EnumItem","Name":"Auto","tags":[],"Value":0,"Enum":"ThreadPoolConfig"},{"type":"EnumItem","Name":"PerCore1","tags":[],"Value":101,"Enum":"ThreadPoolConfig"},{"type":"EnumItem","Name":"PerCore2","tags":[],"Value":102,"Enum":"ThreadPoolConfig"},{"type":"EnumItem","Name":"PerCore3","tags":[],"Value":103,"Enum":"ThreadPoolConfig"},{"type":"EnumItem","Name":"PerCore4","tags":[],"Value":104,"Enum":"ThreadPoolConfig"},{"type":"EnumItem","Name":"Threads1","tags":[],"Value":1,"Enum":"ThreadPoolConfig"},{"type":"EnumItem","Name":"Threads2","tags":[],"Value":2,"Enum":"ThreadPoolConfig"},{"type":"EnumItem","Name":"Threads3","tags":[],"Value":3,"Enum":"ThreadPoolConfig"},{"type":"EnumItem","Name":"Threads4","tags":[],"Value":4,"Enum":"ThreadPoolConfig"},{"type":"EnumItem","Name":"Threads8","tags":[],"Value":8,"Enum":"ThreadPoolConfig"},{"type":"EnumItem","Name":"Threads16","tags":[],"Value":16,"Enum":"ThreadPoolConfig"},{"type":"Enum","Name":"ThrottlingPriority","tags":[]},{"type":"EnumItem","Name":"Extreme","tags":[],"Value":2,"Enum":"ThrottlingPriority"},{"type":"EnumItem","Name":"ElevatedOnServer","tags":[],"Value":1,"Enum":"ThrottlingPriority"},{"type":"EnumItem","Name":"Default","tags":[],"Value":0,"Enum":"ThrottlingPriority"},{"type":"Enum","Name":"TickCountSampleMethod","tags":[]},{"type":"EnumItem","Name":"Fast","tags":[],"Value":0,"Enum":"TickCountSampleMethod"},{"type":"EnumItem","Name":"Benchmark","tags":[],"Value":1,"Enum":"TickCountSampleMethod"},{"type":"EnumItem","Name":"Precise","tags":[],"Value":2,"Enum":"TickCountSampleMethod"},{"type":"Enum","Name":"TopBottom","tags":[]},{"type":"EnumItem","Name":"Top","tags":[],"Value":0,"Enum":"TopBottom"},{"type":"EnumItem","Name":"Center","tags":[],"Value":1,"Enum":"TopBottom"},{"type":"EnumItem","Name":"Bottom","tags":[],"Value":2,"Enum":"TopBottom"},{"type":"Enum","Name":"TouchCameraMovementMode","tags":[]},{"type":"EnumItem","Name":"Default","tags":[],"Value":0,"Enum":"TouchCameraMovementMode"},{"type":"EnumItem","Name":"Follow","tags":[],"Value":2,"Enum":"TouchCameraMovementMode"},{"type":"EnumItem","Name":"Classic","tags":[],"Value":1,"Enum":"TouchCameraMovementMode"},{"type":"Enum","Name":"TouchMovementMode","tags":[]},{"type":"EnumItem","Name":"Default","tags":[],"Value":0,"Enum":"TouchMovementMode"},{"type":"EnumItem","Name":"Thumbstick","tags":[],"Value":1,"Enum":"TouchMovementMode"},{"type":"EnumItem","Name":"DPad","tags":[],"Value":2,"Enum":"TouchMovementMode"},{"type":"EnumItem","Name":"Thumbpad","tags":[],"Value":3,"Enum":"TouchMovementMode"},{"type":"EnumItem","Name":"ClickToMove","tags":[],"Value":4,"Enum":"TouchMovementMode"},{"type":"Enum","Name":"TweenStatus","tags":[]},{"type":"EnumItem","Name":"Canceled","tags":[],"Value":0,"Enum":"TweenStatus"},{"type":"EnumItem","Name":"Completed","tags":[],"Value":1,"Enum":"TweenStatus"},{"type":"Enum","Name":"UiMessageType","tags":[]},{"type":"EnumItem","Name":"UiMessageError","tags":[],"Value":0,"Enum":"UiMessageType"},{"type":"EnumItem","Name":"UiMessageInfo","tags":[],"Value":1,"Enum":"UiMessageType"},{"type":"Enum","Name":"UploadSetting","tags":[]},{"type":"EnumItem","Name":"Never","tags":[],"Value":0,"Enum":"UploadSetting"},{"type":"EnumItem","Name":"Ask","tags":[],"Value":1,"Enum":"UploadSetting"},{"type":"EnumItem","Name":"Always","tags":[],"Value":2,"Enum":"UploadSetting"},{"type":"Enum","Name":"UserCFrame","tags":[]},{"type":"EnumItem","Name":"Head","tags":[],"Value":0,"Enum":"UserCFrame"},{"type":"EnumItem","Name":"LeftHand","tags":[],"Value":1,"Enum":"UserCFrame"},{"type":"EnumItem","Name":"RightHand","tags":[],"Value":2,"Enum":"UserCFrame"},{"type":"Enum","Name":"UserInputState","tags":[]},{"type":"EnumItem","Name":"Begin","tags":[],"Value":0,"Enum":"UserInputState"},{"type":"EnumItem","Name":"Change","tags":[],"Value":1,"Enum":"UserInputState"},{"type":"EnumItem","Name":"End","tags":[],"Value":2,"Enum":"UserInputState"},{"type":"EnumItem","Name":"Cancel","tags":[],"Value":3,"Enum":"UserInputState"},{"type":"EnumItem","Name":"None","tags":[],"Value":4,"Enum":"UserInputState"},{"type":"Enum","Name":"UserInputType","tags":[]},{"type":"EnumItem","Name":"MouseButton1","tags":[],"Value":0,"Enum":"UserInputType"},{"type":"EnumItem","Name":"MouseButton2","tags":[],"Value":1,"Enum":"UserInputType"},{"type":"EnumItem","Name":"MouseButton3","tags":[],"Value":2,"Enum":"UserInputType"},{"type":"EnumItem","Name":"MouseWheel","tags":[],"Value":3,"Enum":"UserInputType"},{"type":"EnumItem","Name":"MouseMovement","tags":[],"Value":4,"Enum":"UserInputType"},{"type":"EnumItem","Name":"Touch","tags":[],"Value":7,"Enum":"UserInputType"},{"type":"EnumItem","Name":"Keyboard","tags":[],"Value":8,"Enum":"UserInputType"},{"type":"EnumItem","Name":"Focus","tags":[],"Value":9,"Enum":"UserInputType"},{"type":"EnumItem","Name":"Accelerometer","tags":[],"Value":10,"Enum":"UserInputType"},{"type":"EnumItem","Name":"Gyro","tags":[],"Value":11,"Enum":"UserInputType"},{"type":"EnumItem","Name":"Gamepad1","tags":[],"Value":12,"Enum":"UserInputType"},{"type":"EnumItem","Name":"Gamepad2","tags":[],"Value":13,"Enum":"UserInputType"},{"type":"EnumItem","Name":"Gamepad3","tags":[],"Value":14,"Enum":"UserInputType"},{"type":"EnumItem","Name":"Gamepad4","tags":[],"Value":15,"Enum":"UserInputType"},{"type":"EnumItem","Name":"Gamepad5","tags":[],"Value":16,"Enum":"UserInputType"},{"type":"EnumItem","Name":"Gamepad6","tags":[],"Value":17,"Enum":"UserInputType"},{"type":"EnumItem","Name":"Gamepad7","tags":[],"Value":18,"Enum":"UserInputType"},{"type":"EnumItem","Name":"Gamepad8","tags":[],"Value":19,"Enum":"UserInputType"},{"type":"EnumItem","Name":"TextInput","tags":[],"Value":20,"Enum":"UserInputType"},{"type":"EnumItem","Name":"None","tags":[],"Value":21,"Enum":"UserInputType"},{"type":"Enum","Name":"VibrationMotor","tags":[]},{"type":"EnumItem","Name":"Large","tags":[],"Value":0,"Enum":"VibrationMotor"},{"type":"EnumItem","Name":"Small","tags":[],"Value":1,"Enum":"VibrationMotor"},{"type":"EnumItem","Name":"LeftTrigger","tags":[],"Value":2,"Enum":"VibrationMotor"},{"type":"EnumItem","Name":"RightTrigger","tags":[],"Value":3,"Enum":"VibrationMotor"},{"type":"EnumItem","Name":"LeftHand","tags":[],"Value":4,"Enum":"VibrationMotor"},{"type":"EnumItem","Name":"RightHand","tags":[],"Value":5,"Enum":"VibrationMotor"},{"type":"Enum","Name":"VideoQualitySettings","tags":[]},{"type":"EnumItem","Name":"LowResolution","tags":[],"Value":0,"Enum":"VideoQualitySettings"},{"type":"EnumItem","Name":"MediumResolution","tags":[],"Value":1,"Enum":"VideoQualitySettings"},{"type":"EnumItem","Name":"HighResolution","tags":[],"Value":2,"Enum":"VideoQualitySettings"},{"type":"Enum","Name":"WaterDirection","tags":[]},{"type":"EnumItem","Name":"NegX","tags":[],"Value":0,"Enum":"WaterDirection"},{"type":"EnumItem","Name":"X","tags":[],"Value":1,"Enum":"WaterDirection"},{"type":"EnumItem","Name":"NegY","tags":[],"Value":2,"Enum":"WaterDirection"},{"type":"EnumItem","Name":"Y","tags":[],"Value":3,"Enum":"WaterDirection"},{"type":"EnumItem","Name":"NegZ","tags":[],"Value":4,"Enum":"WaterDirection"},{"type":"EnumItem","Name":"Z","tags":[],"Value":5,"Enum":"WaterDirection"},{"type":"Enum","Name":"WaterForce","tags":[]},{"type":"EnumItem","Name":"None","tags":[],"Value":0,"Enum":"WaterForce"},{"type":"EnumItem","Name":"Small","tags":[],"Value":1,"Enum":"WaterForce"},{"type":"EnumItem","Name":"Medium","tags":[],"Value":2,"Enum":"WaterForce"},{"type":"EnumItem","Name":"Strong","tags":[],"Value":3,"Enum":"WaterForce"},{"type":"EnumItem","Name":"Max","tags":[],"Value":4,"Enum":"WaterForce"}]
5799]===]
5800 return rawApiJson
5801end
5802
5803function getCurrentApiJson()
5804 local jsonStr = nil
5805 if readfile and getelysianpath then
5806 if readfile(getelysianpath().."Xpl0rerApi.txt") then
5807 print("Api found in folder!")
5808 jsonStr = readfile(getelysianpath().."Xpl0rerApi.txt")
5809 return jsonStr
5810 end
5811 end
5812 local success, err = pcall(function()
5813 jsonStr = httpGet(apiUrl)
5814 print("Fetched json successfully")
5815 end)
5816 if success then
5817 print("Returning json")
5818 --print(jsonStr:sub(1,500))
5819 return jsonStr
5820 else
5821 print("Error fetching json: " .. tostring(err))
5822 print("Falling back to local copy")
5823 return getLocalApiJson()
5824 end
5825end
5826
5827function splitStringIntoChunks(jsonStr)
5828 -- Splits up a string into a table with a given size
5829 local t = {}
5830 for i = 1, math.ceil(string.len(jsonStr)/maxChunkSize) do
5831 local str = jsonStr:sub((i-1)*maxChunkSize+1, i*maxChunkSize)
5832 table.insert(t, str)
5833 end
5834 return t
5835end
5836
5837local jsonToParse = getCurrentApiJson()
5838local apiChunks = splitStringIntoChunks(jsonToParse)
5839
5840function getRbxApi()
5841--[[
5842 Api.Classes
5843 Api.Enums
5844 Api.GetProperties(className)
5845 Api.IsEnum(valueType)
5846--]]
5847
5848-- Services
5849local HttpService = game:GetService("HttpService")
5850local ServerStorage = game:GetService("ServerStorage")
5851local ReplicatedStorage = game:GetService("ReplicatedStorage")
5852
5853-- Remotes
5854--local Remotes = ReplicatedStorage:WaitForChild("OnlineStudio"):WaitForChild("Remotes")
5855--local GetApiJsonFunction = Remotes:WaitForChild("GetApiJson")
5856
5857-- Functions
5858local JsonDecode = function(s) return HttpService:JSONDecode(s) end
5859
5860local function GetApiRemoteFunction(index)
5861 if (apiChunks[index]) then
5862 return apiChunks[index], #apiChunks
5863 else
5864 print("Bad index for GetApiJson")
5865 return nil
5866 end
5867end
5868
5869local function getApiJson()
5870 local apiTable = {}
5871 local firstPage, pageCount = GetApiRemoteFunction(1)
5872 table.insert(apiTable, firstPage)
5873 for i = 2, pageCount do
5874 --print("Fetching API page # " .. tostring(i))
5875 local result = GetApiRemoteFunction(i)
5876 table.insert(apiTable, result)
5877 end
5878 return table.concat(apiTable)
5879end
5880
5881local json = getApiJson()
5882local apiDump = JsonDecode(json)
5883
5884local Classes = {}
5885local Enums = {}
5886
5887local function sortAlphabetic(t, property)
5888 table.sort(t,
5889 function(x,y) return x[property] < y[property]
5890 end)
5891end
5892
5893local function isEnum(name)
5894 return Enums[name] ~= nil
5895end
5896
5897local function getProperties(className)
5898 local class = Classes[className]
5899 local properties = {}
5900
5901 if not class then return properties end
5902
5903 while class do
5904 for _,property in pairs(class.Properties) do
5905 table.insert(properties, property)
5906 end
5907 class = Classes[class.Superclass]
5908 end
5909
5910 sortAlphabetic(properties, "Name")
5911
5912 return properties
5913end
5914
5915for _,item in pairs(apiDump) do
5916 local itemType = item.type
5917-- Classes --
5918 if (itemType == 'Class') then
5919 Classes[item.Name] = item
5920 item.Properties = {}
5921 item.Functions = {}
5922 item.YieldFunctions = {}
5923 item.Events = {}
5924 item.Callbacks = {}
5925-- Members --
5926 elseif (itemType == 'Property') then
5927 table.insert(Classes[item.Class].Properties, item)
5928 elseif (itemType == 'Function') then
5929 table.insert(Classes[item.Class].Functions, item)
5930 elseif (itemType == 'YieldFunction') then
5931 table.insert(Classes[item.Class].YieldFunctions, item)
5932 elseif (itemType == 'Event') then
5933 table.insert(Classes[item.Class].Events, item)
5934 elseif (itemType == 'Callback') then
5935 table.insert(Classes[item.Class].Callbacks, item)
5936-- Enums --
5937 elseif (itemType == 'Enum') then
5938 Enums[item.Name] = item
5939 item.EnumItems = {}
5940 elseif (itemType == 'EnumItem') then
5941 Enums[item.Enum].EnumItems[item.Name] = item
5942 end
5943end
5944
5945return {
5946 Classes = Classes;
5947 Enums = Enums;
5948 GetProperties = getProperties;
5949 IsEnum = isEnum;
5950}
5951end
5952
5953-- Modules
5954local Permissions = {CanEdit = true}
5955local RbxApi = getRbxApi()
5956
5957--[[
5958 RbxApi.Classes
5959 RbxApi.Enums
5960 RbxApi.GetProperties(className)
5961 RbxApi.IsEnum(valueType)
5962--]]
5963
5964-- Styles
5965
5966local function CreateColor3(r, g, b) return Color3.new(r/255,g/255,b/255) end
5967
5968local Styles = {
5969 Font = Enum.Font.Arial;
5970 Margin = 5;
5971 Black = CreateColor3(0,0,0);
5972 White = CreateColor3(255,255,255);
5973}
5974
5975local Row = {
5976 Font = Styles.Font;
5977 FontSize = Enum.FontSize.Size14;
5978 TextXAlignment = Enum.TextXAlignment.Left;
5979 TextColor = Styles.Black;
5980 TextColorOver = Styles.White;
5981 TextLockedColor = CreateColor3(120,120,120);
5982 Height = 24;
5983 BorderColor = CreateColor3(216,216,216);
5984 BackgroundColor = Styles.White;
5985 BackgroundColorAlternate = CreateColor3(246,246,246);
5986 BackgroundColorMouseover = CreateColor3(211,224,244);
5987 TitleMarginLeft = 15;
5988}
5989
5990local DropDown = {
5991 Font = Styles.Font;
5992 FontSize = Enum.FontSize.Size14;
5993 TextColor = CreateColor3(0,0,0);
5994 TextColorOver = Styles.White;
5995 TextXAlignment = Enum.TextXAlignment.Left;
5996 Height = 16;
5997 BackColor = Styles.White;
5998 BackColorOver = CreateColor3(86,125,188);
5999 BorderColor = CreateColor3(216,216,216);
6000 BorderSizePixel = 2;
6001 ArrowColor = CreateColor3(160,160,160);
6002 ArrowColorOver = Styles.Black;
6003}
6004
6005local BrickColors = {
6006 BoxSize = 13;
6007 BorderSizePixel = 1;
6008 BorderColor = CreateColor3(160,160,160);
6009 FrameColor = CreateColor3(160,160,160);
6010 Size = 20;
6011 Padding = 4;
6012 ColorsPerRow = 8;
6013 OuterBorder = 1;
6014 OuterBorderColor = Styles.Black;
6015}
6016
6017wait(1)
6018
6019local Gui = D_E_X
6020local PropertiesFrame = Gui:WaitForChild("PropertiesFrame")
6021local ExplorerFrame = Gui:WaitForChild("ExplorerPanel")
6022
6023local bindGetSelection = ExplorerFrame.GetSelection
6024local bindSelectionChanged = ExplorerFrame.SelectionChanged
6025local bindGetApi = PropertiesFrame.GetApi
6026local bindGetAwait = PropertiesFrame.GetAwaiting
6027local bindSetAwait = PropertiesFrame.SetAwaiting
6028
6029local ContentUrl = ContentProvider.BaseUrl .. "asset/?id="
6030
6031local SettingsRemote = Gui:WaitForChild("SettingsPanel"):WaitForChild("GetSetting")
6032
6033local propertiesSearch = PropertiesFrame.Header.TextBox
6034
6035local AwaitingObjectValue = false
6036local AwaitingObjectObj
6037local AwaitingObjectProp
6038
6039function searchingProperties()
6040 if propertiesSearch.Text ~= "" and propertiesSearch.Text ~= "Search Properties" then
6041 return true
6042 end
6043 return false
6044end
6045
6046local function GetSelection()
6047 local selection = bindGetSelection:Invoke()
6048 if #selection == 0 then
6049 return nil
6050 else
6051 return selection
6052 end
6053end
6054
6055-- Number
6056
6057local function Round(number, decimalPlaces)
6058 return tonumber(string.format("%." .. (decimalPlaces or 0) .. "f", number))
6059end
6060
6061-- Strings
6062
6063local function Split(str, delimiter)
6064 local start = 1
6065 local t = {}
6066 while true do
6067 local pos = string.find (str, delimiter, start, true)
6068 if not pos then
6069 break
6070 end
6071 table.insert (t, string.sub (str, start, pos - 1))
6072 start = pos + string.len (delimiter)
6073 end
6074 table.insert (t, string.sub (str, start))
6075 return t
6076end
6077
6078-- Data Type Handling
6079
6080local function ToString(value, type)
6081 if type == "float" then
6082 return tostring(Round(value,2))
6083 elseif type == "Content" then
6084 if string.find(value,"/asset") then
6085 local match = string.find(value, "=") + 1
6086 local id = string.sub(value, match)
6087 return id
6088 else
6089 return tostring(value)
6090 end
6091 elseif type == "Vector2" then
6092 local x = value.x
6093 local y = value.y
6094 return string.format("%g, %g", x,y)
6095 elseif type == "Vector3" then
6096 local x = value.x
6097 local y = value.y
6098 local z = value.z
6099 return string.format("%g, %g, %g", x,y,z)
6100 elseif type == "Color3" then
6101 local r = value.r
6102 local g = value.g
6103 local b = value.b
6104 return string.format("%d, %d, %d", r*255,g*255,b*255)
6105 elseif type == "UDim2" then
6106 local xScale = value.X.Scale
6107 local xOffset = value.X.Offset
6108 local yScale = value.Y.Scale
6109 local yOffset = value.Y.Offset
6110 return string.format("{%d, %d}, {%d, %d}", xScale, xOffset, yScale, yOffset)
6111 else
6112 return tostring(value)
6113 end
6114end
6115
6116local function ToValue(value,type)
6117 if type == "Vector2" then
6118 local list = Split(value,",")
6119 if #list < 2 then return nil end
6120 local x = tonumber(list[1]) or 0
6121 local y = tonumber(list[2]) or 0
6122 return Vector2.new(x,y)
6123 elseif type == "Vector3" then
6124 local list = Split(value,",")
6125 if #list < 3 then return nil end
6126 local x = tonumber(list[1]) or 0
6127 local y = tonumber(list[2]) or 0
6128 local z = tonumber(list[3]) or 0
6129 return Vector3.new(x,y,z)
6130 elseif type == "Color3" then
6131 local list = Split(value,",")
6132 if #list < 3 then return nil end
6133 local r = tonumber(list[1]) or 0
6134 local g = tonumber(list[2]) or 0
6135 local b = tonumber(list[3]) or 0
6136 return Color3.new(r/255,g/255, b/255)
6137 elseif type == "UDim2" then
6138 local list = Split(string.gsub(string.gsub(value, "{", ""),"}",""),",")
6139 if #list < 4 then return nil end
6140 local xScale = tonumber(list[1]) or 0
6141 local xOffset = tonumber(list[2]) or 0
6142 local yScale = tonumber(list[3]) or 0
6143 local yOffset = tonumber(list[4]) or 0
6144 return UDim2.new(xScale, xOffset, yScale, yOffset)
6145 elseif type == "Content" then
6146 if tonumber(value) ~= nil then
6147 value = ContentUrl .. value
6148 end
6149 return value
6150 elseif type == "float" or type == "int" or type == "double" then
6151 return tonumber(value)
6152 elseif type == "string" then
6153 return value
6154 elseif type == "NumberRange" then
6155 local list = Split(value,",")
6156 if #list == 1 then
6157 if tonumber(list[1]) == nil then return nil end
6158 local newVal = tonumber(list[1]) or 0
6159 return NumberRange.new(newVal)
6160 end
6161 if #list < 2 then return nil end
6162 local x = tonumber(list[1]) or 0
6163 local y = tonumber(list[2]) or 0
6164 return NumberRange.new(x,y)
6165 else
6166 return nil
6167 end
6168end
6169
6170
6171-- Tables
6172
6173local function CopyTable(T)
6174 local t2 = {}
6175 for k,v in pairs(T) do
6176 t2[k] = v
6177 end
6178 return t2
6179end
6180
6181local function SortTable(T)
6182 table.sort(T,
6183 function(x,y) return x.Name < y.Name
6184 end)
6185end
6186
6187-- Spritesheet
6188local Sprite = {
6189 Width = 13;
6190 Height = 13;
6191}
6192
6193local Spritesheet = {
6194 Image = "http://www.roblox.com/asset/?id=128896947";
6195 Height = 256;
6196 Width = 256;
6197}
6198
6199local Images = {
6200 "unchecked",
6201 "checked",
6202 "unchecked_over",
6203 "checked_over",
6204 "unchecked_disabled",
6205 "checked_disabled"
6206}
6207
6208local function SpritePosition(spriteName)
6209 local x = 0
6210 local y = 0
6211 for i,v in pairs(Images) do
6212 if (v == spriteName) then
6213 return {x, y}
6214 end
6215 x = x + Sprite.Height
6216 if (x + Sprite.Width) > Spritesheet.Width then
6217 x = 0
6218 y = y + Sprite.Height
6219 end
6220 end
6221end
6222
6223local function GetCheckboxImageName(checked, readOnly, mouseover)
6224 if checked then
6225 if readOnly then
6226 return "checked_disabled"
6227 elseif mouseover then
6228 return "checked_over"
6229 else
6230 return "checked"
6231 end
6232 else
6233 if readOnly then
6234 return "unchecked_disabled"
6235 elseif mouseover then
6236 return "unchecked_over"
6237 else
6238 return "unchecked"
6239 end
6240 end
6241end
6242
6243local MAP_ID = 418720155
6244
6245-- Gui Controls --
6246
6247---- IconMap ----
6248-- Image size: 256px x 256px
6249-- Icon size: 16px x 16px
6250-- Padding between each icon: 2px
6251-- Padding around image edge: 1px
6252-- Total icons: 14 x 14 (196)
6253local Icon do
6254 local iconMap = 'http://www.roblox.com/asset/?id=' .. MAP_ID
6255 game:GetService('ContentProvider'):Preload(iconMap)
6256 local iconDehash do
6257 -- 14 x 14, 0-based input, 0-based output
6258 local f=math.floor
6259 function iconDehash(h)
6260 return f(h/14%14),f(h%14)
6261 end
6262 end
6263
6264 function Icon(IconFrame,index)
6265 local row,col = iconDehash(index)
6266 local mapSize = Vector2.new(256,256)
6267 local pad,border = 2,1
6268 local iconSize = 16
6269
6270 local class = 'Frame'
6271 if type(IconFrame) == 'string' then
6272 class = IconFrame
6273 IconFrame = nil
6274 end
6275
6276 if not IconFrame then
6277 IconFrame = Create(class,{
6278 Name = "Icon";
6279 BackgroundTransparency = 1;
6280 ClipsDescendants = true;
6281 Create('ImageLabel',{
6282 Name = "IconMap";
6283 Active = false;
6284 BackgroundTransparency = 1;
6285 Image = iconMap;
6286 Size = UDim2.new(mapSize.x/iconSize,0,mapSize.y/iconSize,0);
6287 });
6288 })
6289 end
6290
6291 IconFrame.IconMap.Position = UDim2.new(-col - (pad*(col+1) + border)/iconSize,0,-row - (pad*(row+1) + border)/iconSize,0)
6292 return IconFrame
6293 end
6294end
6295
6296local function CreateCell()
6297 local tableCell = Instance.new("Frame")
6298 tableCell.Size = UDim2.new(0.5, -1, 1, 0)
6299 tableCell.BackgroundColor3 = Row.BackgroundColor
6300 tableCell.BorderColor3 = Row.BorderColor
6301 return tableCell
6302end
6303
6304local function CreateLabel(readOnly)
6305 local label = Instance.new("TextLabel")
6306 label.Font = Row.Font
6307 label.FontSize = Row.FontSize
6308 label.TextXAlignment = Row.TextXAlignment
6309 label.BackgroundTransparency = 1
6310
6311 if readOnly then
6312 label.TextColor3 = Row.TextLockedColor
6313 else
6314 label.TextColor3 = Row.TextColor
6315 end
6316 return label
6317end
6318
6319local function CreateTextButton(readOnly, onClick)
6320 local button = Instance.new("TextButton")
6321 button.Font = Row.Font
6322 button.FontSize = Row.FontSize
6323 button.TextXAlignment = Row.TextXAlignment
6324 button.BackgroundTransparency = 1
6325 if readOnly then
6326 button.TextColor3 = Row.TextLockedColor
6327 else
6328 button.TextColor3 = Row.TextColor
6329 button.MouseButton1Click:connect(function()
6330 onClick()
6331 end)
6332 end
6333 return button
6334end
6335
6336local function CreateObject(readOnly)
6337 local button = Instance.new("TextButton")
6338 button.Font = Row.Font
6339 button.FontSize = Row.FontSize
6340 button.TextXAlignment = Row.TextXAlignment
6341 button.BackgroundTransparency = 1
6342 if readOnly then
6343 button.TextColor3 = Row.TextLockedColor
6344 else
6345 button.TextColor3 = Row.TextColor
6346 end
6347 local cancel = Create(Icon('ImageButton',177),{
6348 Name = "Cancel";
6349 Visible = false;
6350 Position = UDim2.new(1,-20,0,0);
6351 Size = UDim2.new(0,20,0,20);
6352 Parent = button;
6353 })
6354 return button
6355end
6356
6357local function CreateTextBox(readOnly)
6358 if readOnly then
6359 local box = CreateLabel(readOnly)
6360 return box
6361 else
6362 local box = Instance.new("TextBox")
6363 if not SettingsRemote:Invoke("ClearProps") then
6364 box.ClearTextOnFocus = false
6365 end
6366 box.Font = Row.Font
6367 box.FontSize = Row.FontSize
6368 box.TextXAlignment = Row.TextXAlignment
6369 box.BackgroundTransparency = 1
6370 box.TextColor3 = Row.TextColor
6371 return box
6372 end
6373end
6374
6375local function CreateDropDownItem(text, onClick)
6376 local button = Instance.new("TextButton")
6377 button.Font = DropDown.Font
6378 button.FontSize = DropDown.FontSize
6379 button.TextColor3 = DropDown.TextColor
6380 button.TextXAlignment = DropDown.TextXAlignment
6381 button.BackgroundColor3 = DropDown.BackColor
6382 button.AutoButtonColor = false
6383 button.BorderSizePixel = 0
6384 button.Active = true
6385 button.Text = text
6386
6387 button.MouseEnter:connect(function()
6388 button.TextColor3 = DropDown.TextColorOver
6389 button.BackgroundColor3 = DropDown.BackColorOver
6390 end)
6391 button.MouseLeave:connect(function()
6392 button.TextColor3 = DropDown.TextColor
6393 button.BackgroundColor3 = DropDown.BackColor
6394 end)
6395 button.MouseButton1Click:connect(function()
6396 onClick(text)
6397 end)
6398 return button
6399end
6400
6401local function CreateDropDown(choices, currentChoice, readOnly, onClick)
6402 local frame = Instance.new("Frame")
6403 frame.Name = "DropDown"
6404 frame.Size = UDim2.new(1, 0, 1, 0)
6405 frame.BackgroundTransparency = 1
6406 frame.Active = true
6407
6408 local menu = nil
6409 local arrow = nil
6410 local expanded = false
6411 local margin = DropDown.BorderSizePixel;
6412
6413 local button = Instance.new("TextButton")
6414 button.Font = Row.Font
6415 button.FontSize = Row.FontSize
6416 button.TextXAlignment = Row.TextXAlignment
6417 button.BackgroundTransparency = 1
6418 button.TextColor3 = Row.TextColor
6419 if readOnly then
6420 button.TextColor3 = Row.TextLockedColor
6421 end
6422 button.Text = currentChoice
6423 button.Size = UDim2.new(1, -2 * Styles.Margin, 1, 0)
6424 button.Position = UDim2.new(0, Styles.Margin, 0, 0)
6425 button.Parent = frame
6426
6427 local function showArrow(color)
6428 if arrow then arrow:Destroy() end
6429
6430 local graphicTemplate = Create('Frame',{
6431 Name="Graphic";
6432 BorderSizePixel = 0;
6433 BackgroundColor3 = color;
6434 })
6435 local graphicSize = 16/2
6436
6437 arrow = ArrowGraphic(graphicSize,'Down',true,graphicTemplate)
6438 arrow.Position = UDim2.new(1,-graphicSize * 2,0.5,-graphicSize/2)
6439 arrow.Parent = frame
6440 end
6441
6442 local function hideMenu()
6443 expanded = false
6444 showArrow(DropDown.ArrowColor)
6445 if menu then menu:Destroy() end
6446 end
6447
6448 local function showMenu()
6449 expanded = true
6450 menu = Instance.new("Frame")
6451 menu.Size = UDim2.new(1, -2 * margin, 0, #choices * DropDown.Height)
6452 menu.Position = UDim2.new(0, margin, 0, Row.Height + margin)
6453 menu.BackgroundTransparency = 0
6454 menu.BackgroundColor3 = DropDown.BackColor
6455 menu.BorderColor3 = DropDown.BorderColor
6456 menu.BorderSizePixel = DropDown.BorderSizePixel
6457 menu.Active = true
6458 menu.ZIndex = 5
6459 menu.Parent = frame
6460
6461 local parentFrameHeight = menu.Parent.Parent.Parent.Parent.Size.Y.Offset
6462 local rowHeight = menu.Parent.Parent.Parent.Position.Y.Offset
6463 if (rowHeight + menu.Size.Y.Offset) > math.max(parentFrameHeight,PropertiesFrame.AbsoluteSize.y) then
6464 menu.Position = UDim2.new(0, margin, 0, -1 * (#choices * DropDown.Height) - margin)
6465 end
6466
6467 local function choice(name)
6468 onClick(name)
6469 hideMenu()
6470 end
6471
6472 for i,name in pairs(choices) do
6473 local option = CreateDropDownItem(name, function()
6474 choice(name)
6475 end)
6476 option.Size = UDim2.new(1, 0, 0, 16)
6477 option.Position = UDim2.new(0, 0, 0, (i - 1) * DropDown.Height)
6478 option.ZIndex = menu.ZIndex
6479 option.Parent = menu
6480 end
6481 end
6482
6483 showArrow(DropDown.ArrowColor)
6484
6485 if not readOnly then
6486
6487 button.MouseEnter:connect(function()
6488 button.TextColor3 = Row.TextColor
6489 showArrow(DropDown.ArrowColorOver)
6490 end)
6491 button.MouseLeave:connect(function()
6492 button.TextColor3 = Row.TextColor
6493 if not expanded then
6494 showArrow(DropDown.ArrowColor)
6495 end
6496 end)
6497 button.MouseButton1Click:connect(function()
6498 if expanded then
6499 hideMenu()
6500 else
6501 showMenu()
6502 end
6503 end)
6504 end
6505
6506 return frame,button
6507end
6508
6509local function CreateBrickColor(readOnly, onClick)
6510 local frame = Instance.new("Frame")
6511 frame.Size = UDim2.new(1,0,1,0)
6512 frame.BackgroundTransparency = 1
6513
6514 local colorPalette = Instance.new("Frame")
6515 colorPalette.BackgroundTransparency = 0
6516 colorPalette.SizeConstraint = Enum.SizeConstraint.RelativeXX
6517 colorPalette.Size = UDim2.new(1, -2 * BrickColors.OuterBorder, 1, -2 * BrickColors.OuterBorder)
6518 colorPalette.BorderSizePixel = BrickColors.BorderSizePixel
6519 colorPalette.BorderColor3 = BrickColors.BorderColor
6520 colorPalette.Position = UDim2.new(0, BrickColors.OuterBorder, 0, BrickColors.OuterBorder + Row.Height)
6521 colorPalette.ZIndex = 5
6522 colorPalette.Visible = false
6523 colorPalette.BorderSizePixel = BrickColors.OuterBorder
6524 colorPalette.BorderColor3 = BrickColors.OuterBorderColor
6525 colorPalette.Parent = frame
6526
6527 local function show()
6528 colorPalette.Visible = true
6529 end
6530
6531 local function hide()
6532 colorPalette.Visible = false
6533 end
6534
6535 local function toggle()
6536 colorPalette.Visible = not colorPalette.Visible
6537 end
6538
6539 local colorBox = Instance.new("TextButton", frame)
6540 colorBox.Position = UDim2.new(0, Styles.Margin, 0, Styles.Margin)
6541 colorBox.Size = UDim2.new(0, BrickColors.BoxSize, 0, BrickColors.BoxSize)
6542 colorBox.Text = ""
6543 colorBox.MouseButton1Click:connect(function()
6544 if not readOnly then
6545 toggle()
6546 end
6547 end)
6548
6549 if readOnly then
6550 colorBox.AutoButtonColor = false
6551 end
6552
6553 local spacingBefore = (Styles.Margin * 2) + BrickColors.BoxSize
6554
6555 local propertyLabel = CreateTextButton(readOnly, function()
6556 if not readOnly then
6557 toggle()
6558 end
6559 end)
6560 propertyLabel.Size = UDim2.new(1, (-1 * spacingBefore) - Styles.Margin, 1, 0)
6561 propertyLabel.Position = UDim2.new(0, spacingBefore, 0, 0)
6562 propertyLabel.Parent = frame
6563
6564 local size = (1 / BrickColors.ColorsPerRow)
6565
6566 for index = 0, 127 do
6567 local brickColor = BrickColor.palette(index)
6568 local color3 = brickColor.Color
6569
6570 local x = size * (index % BrickColors.ColorsPerRow)
6571 local y = size * math.floor(index / BrickColors.ColorsPerRow)
6572
6573 local brickColorBox = Instance.new("TextButton")
6574 brickColorBox.Text = ""
6575 brickColorBox.Size = UDim2.new(size,0,size,0)
6576 brickColorBox.BackgroundColor3 = color3
6577 brickColorBox.Position = UDim2.new(x, 0, y, 0)
6578 brickColorBox.ZIndex = colorPalette.ZIndex
6579 brickColorBox.Parent = colorPalette
6580
6581 brickColorBox.MouseButton1Click:connect(function()
6582 hide()
6583 onClick(brickColor)
6584 end)
6585 end
6586
6587 return frame,propertyLabel,colorBox
6588end
6589
6590local function CreateColor3Control(readOnly, onClick)
6591 local frame = Instance.new("Frame")
6592 frame.Size = UDim2.new(1,0,1,0)
6593 frame.BackgroundTransparency = 1
6594
6595 local colorBox = Instance.new("TextButton", frame)
6596 colorBox.Position = UDim2.new(0, Styles.Margin, 0, Styles.Margin)
6597 colorBox.Size = UDim2.new(0, BrickColors.BoxSize, 0, BrickColors.BoxSize)
6598 colorBox.Text = ""
6599 colorBox.AutoButtonColor = false
6600
6601 local spacingBefore = (Styles.Margin * 2) + BrickColors.BoxSize
6602 local box = CreateTextBox(readOnly)
6603 box.Size = UDim2.new(1, (-1 * spacingBefore) - Styles.Margin, 1, 0)
6604 box.Position = UDim2.new(0, spacingBefore, 0, 0)
6605 box.Parent = frame
6606
6607 return frame,box,colorBox
6608end
6609
6610function CreateCheckbox(value, readOnly, onClick)
6611 local checked = value
6612 local mouseover = false
6613
6614 local checkboxFrame = Instance.new("ImageButton")
6615 checkboxFrame.Size = UDim2.new(0, Sprite.Width, 0, Sprite.Height)
6616 checkboxFrame.BackgroundTransparency = 1
6617 checkboxFrame.ClipsDescendants = true
6618 --checkboxFrame.Position = UDim2.new(0, Styles.Margin, 0, Styles.Margin)
6619
6620 local spritesheetImage = Instance.new("ImageLabel", checkboxFrame)
6621 spritesheetImage.Name = "SpritesheetImageLabel"
6622 spritesheetImage.Size = UDim2.new(0, Spritesheet.Width, 0, Spritesheet.Height)
6623 spritesheetImage.Image = Spritesheet.Image
6624 spritesheetImage.BackgroundTransparency = 1
6625
6626 local function updateSprite()
6627 local spriteName = GetCheckboxImageName(checked, readOnly, mouseover)
6628 local spritePosition = SpritePosition(spriteName)
6629 spritesheetImage.Position = UDim2.new(0, -1 * spritePosition[1], 0, -1 * spritePosition[2])
6630 end
6631
6632 local function setValue(val)
6633 checked = val
6634 updateSprite()
6635 end
6636
6637 if not readOnly then
6638 checkboxFrame.MouseEnter:connect(function() mouseover = true updateSprite() end)
6639 checkboxFrame.MouseLeave:connect(function() mouseover = false updateSprite() end)
6640 checkboxFrame.MouseButton1Click:connect(function()
6641 onClick(checked)
6642 end)
6643 end
6644
6645 updateSprite()
6646
6647 return checkboxFrame, setValue
6648end
6649
6650
6651
6652-- Code for handling controls of various data types --
6653
6654local Controls = {}
6655
6656Controls["default"] = function(object, propertyData, readOnly)
6657 local propertyName = propertyData["Name"]
6658 local propertyType = propertyData["ValueType"]
6659
6660 local box = CreateTextBox(readOnly)
6661 box.Size = UDim2.new(1, -2 * Styles.Margin, 1, 0)
6662 box.Position = UDim2.new(0, Styles.Margin, 0, 0)
6663
6664 local function update()
6665 local value = object[propertyName]
6666 box.Text = ToString(value, propertyType)
6667 end
6668
6669 if not readOnly then
6670 box.FocusLost:connect(function(enterPressed)
6671 Set(object, propertyData, ToValue(box.Text,propertyType))
6672 update()
6673 end)
6674 end
6675
6676 update()
6677
6678 object.Changed:connect(function(property)
6679 if (property == propertyName) then
6680 update()
6681 end
6682 end)
6683
6684 return box
6685end
6686
6687Controls["bool"] = function(object, propertyData, readOnly)
6688 local propertyName = propertyData["Name"]
6689 local checked = object[propertyName]
6690
6691 local checkbox, setValue = CreateCheckbox(checked, readOnly, function(value)
6692 Set(object, propertyData, not checked)
6693 end)
6694 checkbox.Position = UDim2.new(0, Styles.Margin, 0, Styles.Margin)
6695
6696 setValue(checked)
6697
6698 local function update()
6699 checked = object[propertyName]
6700 setValue(checked)
6701 end
6702
6703 object.Changed:connect(function(property)
6704 if (property == propertyName) then
6705 update()
6706 end
6707 end)
6708
6709 if object:IsA("BoolValue") then
6710 object.Changed:connect(function(val)
6711 update()
6712 end)
6713 end
6714
6715 update()
6716
6717 return checkbox
6718end
6719
6720Controls["BrickColor"] = function(object, propertyData, readOnly)
6721 local propertyName = propertyData["Name"]
6722
6723 local frame,label,brickColorBox = CreateBrickColor(readOnly, function(brickColor)
6724 Set(object, propertyData, brickColor)
6725 end)
6726
6727 local function update()
6728 local value = object[propertyName]
6729 brickColorBox.BackgroundColor3 = value.Color
6730 label.Text = tostring(value)
6731 end
6732
6733 update()
6734
6735 object.Changed:connect(function(property)
6736 if (property == propertyName) then
6737 update()
6738 end
6739 end)
6740
6741 return frame
6742end
6743
6744Controls["Color3"] = function(object, propertyData, readOnly)
6745 local propertyName = propertyData["Name"]
6746
6747 local frame,textBox,colorBox = CreateColor3Control(readOnly)
6748
6749 textBox.FocusLost:connect(function(enterPressed)
6750 Set(object, propertyData, ToValue(textBox.Text,"Color3"))
6751 local value = object[propertyName]
6752 colorBox.BackgroundColor3 = value
6753 textBox.Text = ToString(value, "Color3")
6754 end)
6755
6756 local function update()
6757 local value = object[propertyName]
6758 colorBox.BackgroundColor3 = value
6759 textBox.Text = ToString(value, "Color3")
6760 end
6761
6762 update()
6763
6764 object.Changed:connect(function(property)
6765 if (property == propertyName) then
6766 update()
6767 end
6768 end)
6769
6770 return frame
6771end
6772
6773Controls["Enum"] = function(object, propertyData, readOnly)
6774 local propertyName = propertyData["Name"]
6775 local propertyType = propertyData["ValueType"]
6776
6777 local enumName = object[propertyName].Name
6778
6779 local enumNames = {}
6780 for _,enum in pairs(Enum[tostring(propertyType)]:GetEnumItems()) do
6781 table.insert(enumNames, enum.Name)
6782 end
6783
6784 local dropdown, propertyLabel = CreateDropDown(enumNames, enumName, readOnly, function(value)
6785 Set(object, propertyData, value)
6786 end)
6787 --dropdown.Parent = frame
6788
6789 local function update()
6790 local value = object[propertyName].Name
6791 propertyLabel.Text = tostring(value)
6792 end
6793
6794 update()
6795
6796 object.Changed:connect(function(property)
6797 if (property == propertyName) then
6798 update()
6799 end
6800 end)
6801
6802 return dropdown
6803end
6804
6805Controls["Object"] = function(object, propertyData, readOnly)
6806 local propertyName = propertyData["Name"]
6807 local propertyType = propertyData["ValueType"]
6808
6809 local box = CreateObject(readOnly,function()end)
6810 box.Size = UDim2.new(1, -2 * Styles.Margin, 1, 0)
6811 box.Position = UDim2.new(0, Styles.Margin, 0, 0)
6812
6813 local function update()
6814 if AwaitingObjectObj == object then
6815 if AwaitingObjectValue == true then
6816 box.Text = "Select an Object"
6817 return
6818 end
6819 end
6820 local value = object[propertyName]
6821 box.Text = ToString(value, propertyType)
6822 end
6823
6824 if not readOnly then
6825 box.MouseButton1Click:connect(function()
6826 if AwaitingObjectValue then
6827 AwaitingObjectValue = false
6828 update()
6829 return
6830 end
6831 AwaitingObjectValue = true
6832 AwaitingObjectObj = object
6833 AwaitingObjectProp = propertyData
6834 box.Text = "Select an Object"
6835 end)
6836
6837 box.Cancel.Visible = true
6838 box.Cancel.MouseButton1Click:connect(function()
6839 object[propertyName] = nil
6840 end)
6841 end
6842
6843 update()
6844
6845 object.Changed:connect(function(property)
6846 if (property == propertyName) then
6847 update()
6848 end
6849 end)
6850
6851 if object:IsA("ObjectValue") then
6852 object.Changed:connect(function(val)
6853 update()
6854 end)
6855 end
6856
6857 return box
6858end
6859
6860function GetControl(object, propertyData, readOnly)
6861 local propertyType = propertyData["ValueType"]
6862 local control = nil
6863
6864 if Controls[propertyType] then
6865 control = Controls[propertyType](object, propertyData, readOnly)
6866 elseif RbxApi.IsEnum(propertyType) then
6867 control = Controls["Enum"](object, propertyData, readOnly)
6868 else
6869 control = Controls["default"](object, propertyData, readOnly)
6870 end
6871 return control
6872end
6873-- Permissions
6874
6875function CanEditObject(object)
6876 local player = Players.LocalPlayer
6877 local character = player.Character
6878 return Permissions.CanEdit
6879end
6880
6881function CanEditProperty(object,propertyData)
6882 local tags = propertyData["tags"]
6883 for _,name in pairs(tags) do
6884 if name == "readonly" then
6885 return false
6886 end
6887 end
6888 return CanEditObject(object)
6889end
6890
6891--RbxApi
6892local function PropertyIsHidden(propertyData)
6893 local tags = propertyData["tags"]
6894 for _,name in pairs(tags) do
6895 if name == "deprecated"
6896 or name == "hidden"
6897 or name == "writeonly" then
6898 return true
6899 end
6900 end
6901 return false
6902end
6903
6904function Set(object, propertyData, value)
6905 local propertyName = propertyData["Name"]
6906 local propertyType = propertyData["ValueType"]
6907
6908 if value == nil then return end
6909
6910 for i,v in pairs(GetSelection()) do
6911 if CanEditProperty(v,propertyData) then
6912 pcall(function()
6913 --print("Setting " .. propertyName .. " to " .. tostring(value))
6914 v[propertyName] = value
6915 end)
6916 end
6917 end
6918end
6919
6920function CreateRow(object, propertyData, isAlternateRow)
6921 local propertyName = propertyData["Name"]
6922 local propertyType = propertyData["ValueType"]
6923 local propertyValue = object[propertyName]
6924 --rowValue, rowValueType, isAlternate
6925 local backColor = Row.BackgroundColor;
6926 if (isAlternateRow) then
6927 backColor = Row.BackgroundColorAlternate
6928 end
6929
6930 local readOnly = not CanEditProperty(object, propertyData)
6931 if propertyType == "Instance" or propertyName == "Parent" then readOnly = true end
6932
6933 local rowFrame = Instance.new("Frame")
6934 rowFrame.Size = UDim2.new(1,0,0,Row.Height)
6935 rowFrame.BackgroundTransparency = 1
6936 rowFrame.Name = 'Row'
6937
6938 local propertyLabelFrame = CreateCell()
6939 propertyLabelFrame.Parent = rowFrame
6940 propertyLabelFrame.ClipsDescendants = true
6941
6942 local propertyLabel = CreateLabel(readOnly)
6943 propertyLabel.Text = propertyName
6944 propertyLabel.Size = UDim2.new(1, -1 * Row.TitleMarginLeft, 1, 0)
6945 propertyLabel.Position = UDim2.new(0, Row.TitleMarginLeft, 0, 0)
6946 propertyLabel.Parent = propertyLabelFrame
6947
6948 local propertyValueFrame = CreateCell()
6949 propertyValueFrame.Size = UDim2.new(0.5, -1, 1, 0)
6950 propertyValueFrame.Position = UDim2.new(0.5, 0, 0, 0)
6951 propertyValueFrame.Parent = rowFrame
6952
6953 local control = GetControl(object, propertyData, readOnly)
6954 control.Parent = propertyValueFrame
6955
6956 rowFrame.MouseEnter:connect(function()
6957 propertyLabelFrame.BackgroundColor3 = Row.BackgroundColorMouseover
6958 propertyValueFrame.BackgroundColor3 = Row.BackgroundColorMouseover
6959 end)
6960 rowFrame.MouseLeave:connect(function()
6961 propertyLabelFrame.BackgroundColor3 = backColor
6962 propertyValueFrame.BackgroundColor3 = backColor
6963 end)
6964
6965 propertyLabelFrame.BackgroundColor3 = backColor
6966 propertyValueFrame.BackgroundColor3 = backColor
6967
6968 return rowFrame
6969end
6970
6971function ClearPropertiesList()
6972 for _,instance in pairs(ContentFrame:GetChildren()) do
6973 instance:Destroy()
6974 end
6975end
6976
6977local selection = Gui:FindFirstChild("Selection", 1)
6978print(selection)
6979
6980function displayProperties(props)
6981 for i,v in pairs(props) do
6982 pcall(function()
6983 local a = CreateRow(v.object, v.propertyData, ((numRows % 2) == 0))
6984 a.Position = UDim2.new(0,0,0,numRows*Row.Height)
6985 a.Parent = ContentFrame
6986 numRows = numRows + 1
6987 end)
6988 end
6989end
6990
6991function checkForDupe(prop,props)
6992 for i,v in pairs(props) do
6993 if v.propertyData.Name == prop.Name and v.propertyData.ValueType == prop.ValueType then
6994 return true
6995 end
6996 end
6997 return false
6998end
6999
7000function sortProps(t)
7001 table.sort(t,
7002 function(x,y) return x.propertyData.Name < y.propertyData.Name
7003 end)
7004end
7005
7006function showProperties(obj)
7007 ClearPropertiesList()
7008 if obj == nil then return end
7009 local propHolder = {}
7010 local foundProps = {}
7011 numRows = 0
7012 for _,nextObj in pairs(obj) do
7013 if not foundProps[nextObj.className] then
7014 foundProps[nextObj.className] = true
7015 for i,v in pairs(RbxApi.GetProperties(nextObj.className)) do
7016 local suc, err = pcall(function()
7017 if not (PropertyIsHidden(v)) and not checkForDupe(v,propHolder) then
7018 if string.find(string.lower(v.Name),string.lower(propertiesSearch.Text)) or not searchingProperties() then
7019 table.insert(propHolder,{propertyData = v, object = nextObj})
7020 end
7021 end
7022 end)
7023 --[[if not suc then
7024 warn("Problem getting the value of property " .. v.Name .. " | " .. err)
7025 end --]]
7026 end
7027 end
7028 end
7029 sortProps(propHolder)
7030 displayProperties(propHolder)
7031 ContentFrame.Size = UDim2.new(1, 0, 0, numRows * Row.Height)
7032 scrollBar.ScrollIndex = 0
7033 scrollBar.TotalSpace = numRows * Row.Height
7034 scrollBar.Update()
7035end
7036
7037----------------------------------------------------------------
7038-----------------------SCROLLBAR STUFF--------------------------
7039----------------------------------------------------------------
7040----------------------------------------------------------------
7041local ScrollBarWidth = 16
7042
7043local ScrollStyles = {
7044 Background = Color3.new(233/255, 233/255, 233/255);
7045 Border = Color3.new(149/255, 149/255, 149/255);
7046 Selected = Color3.new( 63/255, 119/255, 189/255);
7047 BorderSelected = Color3.new( 55/255, 106/255, 167/255);
7048 Text = Color3.new( 0/255, 0/255, 0/255);
7049 TextDisabled = Color3.new(128/255, 128/255, 128/255);
7050 TextSelected = Color3.new(255/255, 255/255, 255/255);
7051 Button = Color3.new(221/255, 221/255, 221/255);
7052 ButtonBorder = Color3.new(149/255, 149/255, 149/255);
7053 ButtonSelected = Color3.new(255/255, 0/255, 0/255);
7054 Field = Color3.new(255/255, 255/255, 255/255);
7055 FieldBorder = Color3.new(191/255, 191/255, 191/255);
7056 TitleBackground = Color3.new(178/255, 178/255, 178/255);
7057}
7058do
7059 local ZIndexLock = {}
7060 function SetZIndex(object,z)
7061 if not ZIndexLock[object] then
7062 ZIndexLock[object] = true
7063 if object:IsA'GuiObject' then
7064 object.ZIndex = z
7065 end
7066 local children = object:GetChildren()
7067 for i = 1,#children do
7068 SetZIndex(children[i],z)
7069 end
7070 ZIndexLock[object] = nil
7071 end
7072 end
7073end
7074function SetZIndexOnChanged(object)
7075 return object.Changed:connect(function(p)
7076 if p == "ZIndex" then
7077 SetZIndex(object,object.ZIndex)
7078 end
7079 end)
7080end
7081function Create(ty,data)
7082 local obj
7083 if type(ty) == 'string' then
7084 obj = Instance.new(ty)
7085 else
7086 obj = ty
7087 end
7088 for k, v in pairs(data) do
7089 if type(k) == 'number' then
7090 v.Parent = obj
7091 else
7092 obj[k] = v
7093 end
7094 end
7095 return obj
7096end
7097-- returns the ascendant ScreenGui of an object
7098function GetScreen(screen)
7099 if screen == nil then return nil end
7100 while not screen:IsA("ScreenGui") do
7101 screen = screen.Parent
7102 if screen == nil then return nil end
7103 end
7104 return screen
7105end
7106-- AutoButtonColor doesn't always reset properly
7107function ResetButtonColor(button)
7108 local active = button.Active
7109 button.Active = not active
7110 button.Active = active
7111end
7112
7113function ArrowGraphic(size,dir,scaled,template)
7114 local Frame = Create('Frame',{
7115 Name = "Arrow Graphic";
7116 BorderSizePixel = 0;
7117 Size = UDim2.new(0,size,0,size);
7118 Transparency = 1;
7119 })
7120 if not template then
7121 template = Instance.new("Frame")
7122 template.BorderSizePixel = 0
7123 end
7124
7125 local transform
7126 if dir == nil or dir == 'Up' then
7127 function transform(p,s) return p,s end
7128 elseif dir == 'Down' then
7129 function transform(p,s) return UDim2.new(0,p.X.Offset,0,size-p.Y.Offset-1),s end
7130 elseif dir == 'Left' then
7131 function transform(p,s) return UDim2.new(0,p.Y.Offset,0,p.X.Offset),UDim2.new(0,s.Y.Offset,0,s.X.Offset) end
7132 elseif dir == 'Right' then
7133 function transform(p,s) return UDim2.new(0,size-p.Y.Offset-1,0,p.X.Offset),UDim2.new(0,s.Y.Offset,0,s.X.Offset) end
7134 end
7135
7136 local scale
7137 if scaled then
7138 function scale(p,s) return UDim2.new(p.X.Offset/size,0,p.Y.Offset/size,0),UDim2.new(s.X.Offset/size,0,s.Y.Offset/size,0) end
7139 else
7140 function scale(p,s) return p,s end
7141 end
7142
7143 local o = math.floor(size/4)
7144 if size%2 == 0 then
7145 local n = size/2-1
7146 for i = 0,n do
7147 local t = template:Clone()
7148 local p,s = scale(transform(
7149 UDim2.new(0,n-i,0,o+i),
7150 UDim2.new(0,(i+1)*2,0,1)
7151 ))
7152 t.Position = p
7153 t.Size = s
7154 t.Parent = Frame
7155 end
7156 else
7157 local n = (size-1)/2
7158 for i = 0,n do
7159 local t = template:Clone()
7160 local p,s = scale(transform(
7161 UDim2.new(0,n-i,0,o+i),
7162 UDim2.new(0,i*2+1,0,1)
7163 ))
7164 t.Position = p
7165 t.Size = s
7166 t.Parent = Frame
7167 end
7168 end
7169 if size%4 > 1 then
7170 local t = template:Clone()
7171 local p,s = scale(transform(
7172 UDim2.new(0,0,0,size-o-1),
7173 UDim2.new(0,size,0,1)
7174 ))
7175 t.Position = p
7176 t.Size = s
7177 t.Parent = Frame
7178 end
7179 return Frame
7180end
7181
7182function GripGraphic(size,dir,spacing,scaled,template)
7183 local Frame = Create('Frame',{
7184 Name = "Grip Graphic";
7185 BorderSizePixel = 0;
7186 Size = UDim2.new(0,size.x,0,size.y);
7187 Transparency = 1;
7188 })
7189 if not template then
7190 template = Instance.new("Frame")
7191 template.BorderSizePixel = 0
7192 end
7193
7194 spacing = spacing or 2
7195
7196 local scale
7197 if scaled then
7198 function scale(p) return UDim2.new(p.X.Offset/size.x,0,p.Y.Offset/size.y,0) end
7199 else
7200 function scale(p) return p end
7201 end
7202
7203 if dir == 'Vertical' then
7204 for i=0,size.x-1,spacing do
7205 local t = template:Clone()
7206 t.Size = scale(UDim2.new(0,1,0,size.y))
7207 t.Position = scale(UDim2.new(0,i,0,0))
7208 t.Parent = Frame
7209 end
7210 elseif dir == nil or dir == 'Horizontal' then
7211 for i=0,size.y-1,spacing do
7212 local t = template:Clone()
7213 t.Size = scale(UDim2.new(0,size.x,0,1))
7214 t.Position = scale(UDim2.new(0,0,0,i))
7215 t.Parent = Frame
7216 end
7217 end
7218
7219 return Frame
7220end
7221
7222do
7223 local mt = {
7224 __index = {
7225 GetScrollPercent = function(self)
7226 return self.ScrollIndex/(self.TotalSpace-self.VisibleSpace)
7227 end;
7228 CanScrollDown = function(self)
7229 return self.ScrollIndex + self.VisibleSpace < self.TotalSpace
7230 end;
7231 CanScrollUp = function(self)
7232 return self.ScrollIndex > 0
7233 end;
7234 ScrollDown = function(self)
7235 self.ScrollIndex = self.ScrollIndex + self.PageIncrement
7236 self:Update()
7237 end;
7238 ScrollUp = function(self)
7239 self.ScrollIndex = self.ScrollIndex - self.PageIncrement
7240 self:Update()
7241 end;
7242 ScrollTo = function(self,index)
7243 self.ScrollIndex = index
7244 self:Update()
7245 end;
7246 SetScrollPercent = function(self,percent)
7247 self.ScrollIndex = math.floor((self.TotalSpace - self.VisibleSpace)*percent + 0.5)
7248 self:Update()
7249 end;
7250 };
7251 }
7252 mt.__index.CanScrollRight = mt.__index.CanScrollDown
7253 mt.__index.CanScrollLeft = mt.__index.CanScrollUp
7254 mt.__index.ScrollLeft = mt.__index.ScrollUp
7255 mt.__index.ScrollRight = mt.__index.ScrollDown
7256
7257 function ScrollBar(horizontal)
7258 -- create row scroll bar
7259 local ScrollFrame = Create('Frame',{
7260 Name = "ScrollFrame";
7261 Position = horizontal and UDim2.new(0,0,1,-ScrollBarWidth) or UDim2.new(1,-ScrollBarWidth,0,0);
7262 Size = horizontal and UDim2.new(1,0,0,ScrollBarWidth) or UDim2.new(0,ScrollBarWidth,1,0);
7263 BackgroundTransparency = 1;
7264 Create('ImageButton',{
7265 Name = "ScrollDown";
7266 Position = horizontal and UDim2.new(1,-ScrollBarWidth,0,0) or UDim2.new(0,0,1,-ScrollBarWidth);
7267 Size = UDim2.new(0, ScrollBarWidth, 0, ScrollBarWidth);
7268 BackgroundColor3 = ScrollStyles.Button;
7269 BorderColor3 = ScrollStyles.Border;
7270 --BorderSizePixel = 0;
7271 });
7272 Create('ImageButton',{
7273 Name = "ScrollUp";
7274 Size = UDim2.new(0, ScrollBarWidth, 0, ScrollBarWidth);
7275 BackgroundColor3 = ScrollStyles.Button;
7276 BorderColor3 = ScrollStyles.Border;
7277 --BorderSizePixel = 0;
7278 });
7279 Create('ImageButton',{
7280 Name = "ScrollBar";
7281 Size = horizontal and UDim2.new(1,-ScrollBarWidth*2,1,0) or UDim2.new(1,0,1,-ScrollBarWidth*2);
7282 Position = horizontal and UDim2.new(0,ScrollBarWidth,0,0) or UDim2.new(0,0,0,ScrollBarWidth);
7283 AutoButtonColor = false;
7284 BackgroundColor3 = Color3.new(0.94902, 0.94902, 0.94902);
7285 BorderColor3 = ScrollStyles.Border;
7286 --BorderSizePixel = 0;
7287 Create('ImageButton',{
7288 Name = "ScrollThumb";
7289 AutoButtonColor = false;
7290 Size = UDim2.new(0, ScrollBarWidth, 0, ScrollBarWidth);
7291 BackgroundColor3 = ScrollStyles.Button;
7292 BorderColor3 = ScrollStyles.Border;
7293 --BorderSizePixel = 0;
7294 });
7295 });
7296 })
7297
7298 local graphicTemplate = Create('Frame',{
7299 Name="Graphic";
7300 BorderSizePixel = 0;
7301 BackgroundColor3 = ScrollStyles.Border;
7302 })
7303 local graphicSize = ScrollBarWidth/2
7304
7305 local ScrollDownFrame = ScrollFrame.ScrollDown
7306 local ScrollDownGraphic = ArrowGraphic(graphicSize,horizontal and 'Right' or 'Down',true,graphicTemplate)
7307 ScrollDownGraphic.Position = UDim2.new(0.5,-graphicSize/2,0.5,-graphicSize/2)
7308 ScrollDownGraphic.Parent = ScrollDownFrame
7309 local ScrollUpFrame = ScrollFrame.ScrollUp
7310 local ScrollUpGraphic = ArrowGraphic(graphicSize,horizontal and 'Left' or 'Up',true,graphicTemplate)
7311 ScrollUpGraphic.Position = UDim2.new(0.5,-graphicSize/2,0.5,-graphicSize/2)
7312 ScrollUpGraphic.Parent = ScrollUpFrame
7313 local ScrollBarFrame = ScrollFrame.ScrollBar
7314 local ScrollThumbFrame = ScrollBarFrame.ScrollThumb
7315 do
7316 local size = ScrollBarWidth*3/8
7317 local Decal = GripGraphic(Vector2.new(size,size),horizontal and 'Vertical' or 'Horizontal',2,graphicTemplate)
7318 Decal.Position = UDim2.new(0.5,-size/2,0.5,-size/2)
7319 Decal.Parent = ScrollThumbFrame
7320 end
7321
7322 local MouseDrag = Create('ImageButton',{
7323 Name = "MouseDrag";
7324 Position = UDim2.new(-0.25,0,-0.25,0);
7325 Size = UDim2.new(1.5,0,1.5,0);
7326 Transparency = 1;
7327 AutoButtonColor = false;
7328 Active = true;
7329 ZIndex = 10;
7330 })
7331
7332 local Class = setmetatable({
7333 GUI = ScrollFrame;
7334 ScrollIndex = 0;
7335 VisibleSpace = 0;
7336 TotalSpace = 0;
7337 PageIncrement = 1;
7338 },mt)
7339
7340 local UpdateScrollThumb
7341 if horizontal then
7342 function UpdateScrollThumb()
7343 ScrollThumbFrame.Size = UDim2.new(Class.VisibleSpace/Class.TotalSpace,0,0,ScrollBarWidth)
7344 if ScrollThumbFrame.AbsoluteSize.x < ScrollBarWidth then
7345 ScrollThumbFrame.Size = UDim2.new(0,ScrollBarWidth,0,ScrollBarWidth)
7346 end
7347 local barSize = ScrollBarFrame.AbsoluteSize.x
7348 ScrollThumbFrame.Position = UDim2.new(Class:GetScrollPercent()*(barSize - ScrollThumbFrame.AbsoluteSize.x)/barSize,0,0,0)
7349 end
7350 else
7351 function UpdateScrollThumb()
7352 ScrollThumbFrame.Size = UDim2.new(0,ScrollBarWidth,Class.VisibleSpace/Class.TotalSpace,0)
7353 if ScrollThumbFrame.AbsoluteSize.y < ScrollBarWidth then
7354 ScrollThumbFrame.Size = UDim2.new(0,ScrollBarWidth,0,ScrollBarWidth)
7355 end
7356 local barSize = ScrollBarFrame.AbsoluteSize.y
7357 ScrollThumbFrame.Position = UDim2.new(0,0,Class:GetScrollPercent()*(barSize - ScrollThumbFrame.AbsoluteSize.y)/barSize,0)
7358 end
7359 end
7360
7361 local lastDown
7362 local lastUp
7363 local scrollStyle = {BackgroundColor3=ScrollStyles.Border,BackgroundTransparency=0}
7364 local scrollStyle_ds = {BackgroundColor3=ScrollStyles.Border,BackgroundTransparency=0.7}
7365
7366 local function Update()
7367 local t = Class.TotalSpace
7368 local v = Class.VisibleSpace
7369 local s = Class.ScrollIndex
7370 if v <= t then
7371 if s > 0 then
7372 if s + v > t then
7373 Class.ScrollIndex = t - v
7374 end
7375 else
7376 Class.ScrollIndex = 0
7377 end
7378 else
7379 Class.ScrollIndex = 0
7380 end
7381
7382 if Class.UpdateCallback then
7383 if Class.UpdateCallback(Class) == false then
7384 return
7385 end
7386 end
7387
7388 local down = Class:CanScrollDown()
7389 local up = Class:CanScrollUp()
7390 if down ~= lastDown then
7391 lastDown = down
7392 ScrollDownFrame.Active = down
7393 ScrollDownFrame.AutoButtonColor = down
7394 local children = ScrollDownGraphic:GetChildren()
7395 local style = down and scrollStyle or scrollStyle_ds
7396 for i = 1,#children do
7397 Create(children[i],style)
7398 end
7399 end
7400 if up ~= lastUp then
7401 lastUp = up
7402 ScrollUpFrame.Active = up
7403 ScrollUpFrame.AutoButtonColor = up
7404 local children = ScrollUpGraphic:GetChildren()
7405 local style = up and scrollStyle or scrollStyle_ds
7406 for i = 1,#children do
7407 Create(children[i],style)
7408 end
7409 end
7410 ScrollThumbFrame.Visible = down or up
7411 UpdateScrollThumb()
7412 end
7413 Class.Update = Update
7414
7415 SetZIndexOnChanged(ScrollFrame)
7416
7417 local scrollEventID = 0
7418 ScrollDownFrame.MouseButton1Down:connect(function()
7419 scrollEventID = tick()
7420 local current = scrollEventID
7421 local up_con
7422 up_con = MouseDrag.MouseButton1Up:connect(function()
7423 scrollEventID = tick()
7424 MouseDrag.Parent = nil
7425 ResetButtonColor(ScrollDownFrame)
7426 up_con:disconnect(); drag = nil
7427 end)
7428 MouseDrag.Parent = GetScreen(ScrollFrame)
7429 Class:ScrollDown()
7430 wait(0.2) -- delay before auto scroll
7431 while scrollEventID == current do
7432 Class:ScrollDown()
7433 if not Class:CanScrollDown() then break end
7434 wait()
7435 end
7436 end)
7437
7438 ScrollDownFrame.MouseButton1Up:connect(function()
7439 scrollEventID = tick()
7440 end)
7441
7442 ScrollUpFrame.MouseButton1Down:connect(function()
7443 scrollEventID = tick()
7444 local current = scrollEventID
7445 local up_con
7446 up_con = MouseDrag.MouseButton1Up:connect(function()
7447 scrollEventID = tick()
7448 MouseDrag.Parent = nil
7449 ResetButtonColor(ScrollUpFrame)
7450 up_con:disconnect(); drag = nil
7451 end)
7452 MouseDrag.Parent = GetScreen(ScrollFrame)
7453 Class:ScrollUp()
7454 wait(0.2)
7455 while scrollEventID == current do
7456 Class:ScrollUp()
7457 if not Class:CanScrollUp() then break end
7458 wait()
7459 end
7460 end)
7461
7462 ScrollUpFrame.MouseButton1Up:connect(function()
7463 scrollEventID = tick()
7464 end)
7465
7466 if horizontal then
7467 ScrollBarFrame.MouseButton1Down:connect(function(x,y)
7468 scrollEventID = tick()
7469 local current = scrollEventID
7470 local up_con
7471 up_con = MouseDrag.MouseButton1Up:connect(function()
7472 scrollEventID = tick()
7473 MouseDrag.Parent = nil
7474 ResetButtonColor(ScrollUpFrame)
7475 up_con:disconnect(); drag = nil
7476 end)
7477 MouseDrag.Parent = GetScreen(ScrollFrame)
7478 if x > ScrollThumbFrame.AbsolutePosition.x then
7479 Class:ScrollTo(Class.ScrollIndex + Class.VisibleSpace)
7480 wait(0.2)
7481 while scrollEventID == current do
7482 if x < ScrollThumbFrame.AbsolutePosition.x + ScrollThumbFrame.AbsoluteSize.x then break end
7483 Class:ScrollTo(Class.ScrollIndex + Class.VisibleSpace)
7484 wait()
7485 end
7486 else
7487 Class:ScrollTo(Class.ScrollIndex - Class.VisibleSpace)
7488 wait(0.2)
7489 while scrollEventID == current do
7490 if x > ScrollThumbFrame.AbsolutePosition.x then break end
7491 Class:ScrollTo(Class.ScrollIndex - Class.VisibleSpace)
7492 wait()
7493 end
7494 end
7495 end)
7496 else
7497 ScrollBarFrame.MouseButton1Down:connect(function(x,y)
7498 scrollEventID = tick()
7499 local current = scrollEventID
7500 local up_con
7501 up_con = MouseDrag.MouseButton1Up:connect(function()
7502 scrollEventID = tick()
7503 MouseDrag.Parent = nil
7504 ResetButtonColor(ScrollUpFrame)
7505 up_con:disconnect(); drag = nil
7506 end)
7507 MouseDrag.Parent = GetScreen(ScrollFrame)
7508 if y > ScrollThumbFrame.AbsolutePosition.y then
7509 Class:ScrollTo(Class.ScrollIndex + Class.VisibleSpace)
7510 wait(0.2)
7511 while scrollEventID == current do
7512 if y < ScrollThumbFrame.AbsolutePosition.y + ScrollThumbFrame.AbsoluteSize.y then break end
7513 Class:ScrollTo(Class.ScrollIndex + Class.VisibleSpace)
7514 wait()
7515 end
7516 else
7517 Class:ScrollTo(Class.ScrollIndex - Class.VisibleSpace)
7518 wait(0.2)
7519 while scrollEventID == current do
7520 if y > ScrollThumbFrame.AbsolutePosition.y then break end
7521 Class:ScrollTo(Class.ScrollIndex - Class.VisibleSpace)
7522 wait()
7523 end
7524 end
7525 end)
7526 end
7527
7528 if horizontal then
7529 ScrollThumbFrame.MouseButton1Down:connect(function(x,y)
7530 scrollEventID = tick()
7531 local mouse_offset = x - ScrollThumbFrame.AbsolutePosition.x
7532 local drag_con
7533 local up_con
7534 drag_con = MouseDrag.MouseMoved:connect(function(x,y)
7535 local bar_abs_pos = ScrollBarFrame.AbsolutePosition.x
7536 local bar_drag = ScrollBarFrame.AbsoluteSize.x - ScrollThumbFrame.AbsoluteSize.x
7537 local bar_abs_one = bar_abs_pos + bar_drag
7538 x = x - mouse_offset
7539 x = x < bar_abs_pos and bar_abs_pos or x > bar_abs_one and bar_abs_one or x
7540 x = x - bar_abs_pos
7541 Class:SetScrollPercent(x/(bar_drag))
7542 end)
7543 up_con = MouseDrag.MouseButton1Up:connect(function()
7544 scrollEventID = tick()
7545 MouseDrag.Parent = nil
7546 ResetButtonColor(ScrollThumbFrame)
7547 drag_con:disconnect(); drag_con = nil
7548 up_con:disconnect(); drag = nil
7549 end)
7550 MouseDrag.Parent = GetScreen(ScrollFrame)
7551 end)
7552 else
7553 ScrollThumbFrame.MouseButton1Down:connect(function(x,y)
7554 scrollEventID = tick()
7555 local mouse_offset = y - ScrollThumbFrame.AbsolutePosition.y
7556 local drag_con
7557 local up_con
7558 drag_con = MouseDrag.MouseMoved:connect(function(x,y)
7559 local bar_abs_pos = ScrollBarFrame.AbsolutePosition.y
7560 local bar_drag = ScrollBarFrame.AbsoluteSize.y - ScrollThumbFrame.AbsoluteSize.y
7561 local bar_abs_one = bar_abs_pos + bar_drag
7562 y = y - mouse_offset
7563 y = y < bar_abs_pos and bar_abs_pos or y > bar_abs_one and bar_abs_one or y
7564 y = y - bar_abs_pos
7565 Class:SetScrollPercent(y/(bar_drag))
7566 end)
7567 up_con = MouseDrag.MouseButton1Up:connect(function()
7568 scrollEventID = tick()
7569 MouseDrag.Parent = nil
7570 ResetButtonColor(ScrollThumbFrame)
7571 drag_con:disconnect(); drag_con = nil
7572 up_con:disconnect(); drag = nil
7573 end)
7574 MouseDrag.Parent = GetScreen(ScrollFrame)
7575 end)
7576 end
7577
7578 function Class:Destroy()
7579 ScrollFrame:Destroy()
7580 MouseDrag:Destroy()
7581 for k in pairs(Class) do
7582 Class[k] = nil
7583 end
7584 setmetatable(Class,nil)
7585 end
7586
7587 Update()
7588
7589 return Class
7590 end
7591end
7592
7593----------------------------------------------------------------
7594----------------------------------------------------------------
7595----------------------------------------------------------------
7596----------------------------------------------------------------
7597
7598local MainFrame = Instance.new("Frame")
7599MainFrame.Name = "MainFrame"
7600MainFrame.Size = UDim2.new(1, -1 * ScrollBarWidth, 1, 0)
7601MainFrame.Position = UDim2.new(0, 0, 0, 0)
7602MainFrame.BackgroundTransparency = 1
7603MainFrame.ClipsDescendants = true
7604MainFrame.Parent = PropertiesFrame
7605
7606ContentFrame = Instance.new("Frame")
7607ContentFrame.Name = "ContentFrame"
7608ContentFrame.Size = UDim2.new(1, 0, 0, 0)
7609ContentFrame.BackgroundTransparency = 1
7610ContentFrame.Parent = MainFrame
7611
7612scrollBar = ScrollBar(false)
7613scrollBar.PageIncrement = 1
7614Create(scrollBar.GUI,{
7615 Position = UDim2.new(1,-ScrollBarWidth,0,0);
7616 Size = UDim2.new(0,ScrollBarWidth,1,0);
7617 Parent = PropertiesFrame;
7618})
7619
7620scrollBarH = ScrollBar(true)
7621scrollBarH.PageIncrement = ScrollBarWidth
7622Create(scrollBarH.GUI,{
7623 Position = UDim2.new(0,0,1,-ScrollBarWidth);
7624 Size = UDim2.new(1,-ScrollBarWidth,0,ScrollBarWidth);
7625 Visible = false;
7626 Parent = PropertiesFrame;
7627})
7628
7629do
7630 local listEntries = {}
7631 local nameConnLookup = {}
7632
7633 function scrollBar.UpdateCallback(self)
7634 scrollBar.TotalSpace = ContentFrame.AbsoluteSize.Y
7635 scrollBar.VisibleSpace = MainFrame.AbsoluteSize.Y
7636 ContentFrame.Position = UDim2.new(ContentFrame.Position.X.Scale,ContentFrame.Position.X.Offset,0,-1*scrollBar.ScrollIndex)
7637 end
7638
7639 function scrollBarH.UpdateCallback(self)
7640
7641 end
7642
7643 MainFrame.Changed:connect(function(p)
7644 if p == 'AbsoluteSize' then
7645 scrollBarH.VisibleSpace = math.ceil(MainFrame.AbsoluteSize.x)
7646 scrollBarH:Update()
7647 scrollBar.VisibleSpace = math.ceil(MainFrame.AbsoluteSize.y)
7648 scrollBar:Update()
7649 end
7650 end)
7651
7652 local wheelAmount = Row.Height
7653 PropertiesFrame.MouseWheelForward:connect(function()
7654 if scrollBar.VisibleSpace - 1 > wheelAmount then
7655 scrollBar:ScrollTo(scrollBar.ScrollIndex - wheelAmount)
7656 else
7657 scrollBar:ScrollTo(scrollBar.ScrollIndex - scrollBar.VisibleSpace)
7658 end
7659 end)
7660 PropertiesFrame.MouseWheelBackward:connect(function()
7661 if scrollBar.VisibleSpace - 1 > wheelAmount then
7662 scrollBar:ScrollTo(scrollBar.ScrollIndex + wheelAmount)
7663 else
7664 scrollBar:ScrollTo(scrollBar.ScrollIndex + scrollBar.VisibleSpace)
7665 end
7666 end)
7667end
7668
7669scrollBar.VisibleSpace = math.ceil(MainFrame.AbsoluteSize.y)
7670scrollBar:Update()
7671
7672showProperties(GetSelection())
7673
7674bindSelectionChanged.Event:connect(function()
7675 showProperties(GetSelection())
7676end)
7677
7678bindSetAwait.Event:connect(function(obj)
7679 if AwaitingObjectValue then
7680 AwaitingObjectValue = false
7681 local mySel = obj
7682 if mySel then
7683 pcall(function()
7684 Set(AwaitingObjectObj, AwaitingObjectProp, mySel)
7685 end)
7686 end
7687 end
7688end)
7689
7690propertiesSearch.Changed:connect(function(prop)
7691 if prop == "Text" then
7692 showProperties(GetSelection())
7693 end
7694end)
7695
7696bindGetApi.OnInvoke = function()
7697 return RbxApi
7698end
7699
7700bindGetAwait.OnInvoke = function()
7701 return AwaitingObjectValue
7702end
7703end)
7704spawn(function()
7705 local top = D_E_X.ScriptEditor
7706
7707local editorGrid = top:WaitForChild("EditorGrid")
7708
7709local currentSource = ""
7710
7711local currentEditor = {
7712 x = 0,
7713 y = 0
7714}
7715
7716local userInput = game:GetService("UserInputService")
7717local mouse = game.Players.LocalPlayer:GetMouse()
7718
7719local topBar = top:WaitForChild("TopBar")
7720local scriptBar = topBar:WaitForChild("ScriptBar")
7721local scriptBarLeft = topBar:WaitForChild("ScriptBarLeft")
7722local scriptBarRight = topBar:WaitForChild("ScriptBarRight")
7723local clipboardButton = topBar:WaitForChild("Clipboard")
7724
7725local entryTemplate = topBar:WaitForChild("Entry")
7726
7727local openEvent = top:WaitForChild("OpenScript")
7728
7729local closeButton = top:WaitForChild("Close")
7730
7731local memoryScripts = {}
7732
7733local editingIndex = 0
7734
7735-- Scrollbar
7736
7737local ScrollBarWidth = 16
7738
7739local ScrollStyles = {
7740 Background = Color3.new(233/255, 233/255, 233/255);
7741 Border = Color3.new(149/255, 149/255, 149/255);
7742 Selected = Color3.new( 63/255, 119/255, 189/255);
7743 BorderSelected = Color3.new( 55/255, 106/255, 167/255);
7744 Text = Color3.new( 0/255, 0/255, 0/255);
7745 TextDisabled = Color3.new(128/255, 128/255, 128/255);
7746 TextSelected = Color3.new(255/255, 255/255, 255/255);
7747 Button = Color3.new(221/255, 221/255, 221/255);
7748 ButtonBorder = Color3.new(149/255, 149/255, 149/255);
7749 ButtonSelected = Color3.new(255/255, 0/255, 0/255);
7750 Field = Color3.new(255/255, 255/255, 255/255);
7751 FieldBorder = Color3.new(191/255, 191/255, 191/255);
7752 TitleBackground = Color3.new(178/255, 178/255, 178/255);
7753}
7754do
7755 local ZIndexLock = {}
7756 function SetZIndex(object,z)
7757 if not ZIndexLock[object] then
7758 ZIndexLock[object] = true
7759 if object:IsA'GuiObject' then
7760 object.ZIndex = z
7761 end
7762 local children = object:GetChildren()
7763 for i = 1,#children do
7764 SetZIndex(children[i],z)
7765 end
7766 ZIndexLock[object] = nil
7767 end
7768 end
7769end
7770function SetZIndexOnChanged(object)
7771 return object.Changed:connect(function(p)
7772 if p == "ZIndex" then
7773 SetZIndex(object,object.ZIndex)
7774 end
7775 end)
7776end
7777function Create(ty,data)
7778 local obj
7779 if type(ty) == 'string' then
7780 obj = Instance.new(ty)
7781 else
7782 obj = ty
7783 end
7784 for k, v in pairs(data) do
7785 if type(k) == 'number' then
7786 v.Parent = obj
7787 else
7788 obj[k] = v
7789 end
7790 end
7791 return obj
7792end
7793-- returns the ascendant ScreenGui of an object
7794function GetScreen(screen)
7795 if screen == nil then return nil end
7796 while not screen:IsA("ScreenGui") do
7797 screen = screen.Parent
7798 if screen == nil then return nil end
7799 end
7800 return screen
7801end
7802-- AutoButtonColor doesn't always reset properly
7803function ResetButtonColor(button)
7804 local active = button.Active
7805 button.Active = not active
7806 button.Active = active
7807end
7808
7809function ArrowGraphic(size,dir,scaled,template)
7810 local Frame = Create('Frame',{
7811 Name = "Arrow Graphic";
7812 BorderSizePixel = 0;
7813 Size = UDim2.new(0,size,0,size);
7814 Transparency = 1;
7815 })
7816 if not template then
7817 template = Instance.new("Frame")
7818 template.BorderSizePixel = 0
7819 end
7820
7821 local transform
7822 if dir == nil or dir == 'Up' then
7823 function transform(p,s) return p,s end
7824 elseif dir == 'Down' then
7825 function transform(p,s) return UDim2.new(0,p.X.Offset,0,size-p.Y.Offset-1),s end
7826 elseif dir == 'Left' then
7827 function transform(p,s) return UDim2.new(0,p.Y.Offset,0,p.X.Offset),UDim2.new(0,s.Y.Offset,0,s.X.Offset) end
7828 elseif dir == 'Right' then
7829 function transform(p,s) return UDim2.new(0,size-p.Y.Offset-1,0,p.X.Offset),UDim2.new(0,s.Y.Offset,0,s.X.Offset) end
7830 end
7831
7832 local scale
7833 if scaled then
7834 function scale(p,s) return UDim2.new(p.X.Offset/size,0,p.Y.Offset/size,0),UDim2.new(s.X.Offset/size,0,s.Y.Offset/size,0) end
7835 else
7836 function scale(p,s) return p,s end
7837 end
7838
7839 local o = math.floor(size/4)
7840 if size%2 == 0 then
7841 local n = size/2-1
7842 for i = 0,n do
7843 local t = template:Clone()
7844 local p,s = scale(transform(
7845 UDim2.new(0,n-i,0,o+i),
7846 UDim2.new(0,(i+1)*2,0,1)
7847 ))
7848 t.Position = p
7849 t.Size = s
7850 t.Parent = Frame
7851 end
7852 else
7853 local n = (size-1)/2
7854 for i = 0,n do
7855 local t = template:Clone()
7856 local p,s = scale(transform(
7857 UDim2.new(0,n-i,0,o+i),
7858 UDim2.new(0,i*2+1,0,1)
7859 ))
7860 t.Position = p
7861 t.Size = s
7862 t.Parent = Frame
7863 end
7864 end
7865 if size%4 > 1 then
7866 local t = template:Clone()
7867 local p,s = scale(transform(
7868 UDim2.new(0,0,0,size-o-1),
7869 UDim2.new(0,size,0,1)
7870 ))
7871 t.Position = p
7872 t.Size = s
7873 t.Parent = Frame
7874 end
7875 return Frame
7876end
7877
7878function GripGraphic(size,dir,spacing,scaled,template)
7879 local Frame = Create('Frame',{
7880 Name = "Grip Graphic";
7881 BorderSizePixel = 0;
7882 Size = UDim2.new(0,size.x,0,size.y);
7883 Transparency = 1;
7884 })
7885 if not template then
7886 template = Instance.new("Frame")
7887 template.BorderSizePixel = 0
7888 end
7889
7890 spacing = spacing or 2
7891
7892 local scale
7893 if scaled then
7894 function scale(p) return UDim2.new(p.X.Offset/size.x,0,p.Y.Offset/size.y,0) end
7895 else
7896 function scale(p) return p end
7897 end
7898
7899 if dir == 'Vertical' then
7900 for i=0,size.x-1,spacing do
7901 local t = template:Clone()
7902 t.Size = scale(UDim2.new(0,1,0,size.y))
7903 t.Position = scale(UDim2.new(0,i,0,0))
7904 t.Parent = Frame
7905 end
7906 elseif dir == nil or dir == 'Horizontal' then
7907 for i=0,size.y-1,spacing do
7908 local t = template:Clone()
7909 t.Size = scale(UDim2.new(0,size.x,0,1))
7910 t.Position = scale(UDim2.new(0,0,0,i))
7911 t.Parent = Frame
7912 end
7913 end
7914
7915 return Frame
7916end
7917
7918do
7919 local mt = {
7920 __index = {
7921 GetScrollPercent = function(self)
7922 return self.ScrollIndex/(self.TotalSpace-self.VisibleSpace)
7923 end;
7924 CanScrollDown = function(self)
7925 return self.ScrollIndex + self.VisibleSpace < self.TotalSpace
7926 end;
7927 CanScrollUp = function(self)
7928 return self.ScrollIndex > 0
7929 end;
7930 ScrollDown = function(self)
7931 self.ScrollIndex = self.ScrollIndex + self.PageIncrement
7932 self:Update()
7933 end;
7934 ScrollUp = function(self)
7935 self.ScrollIndex = self.ScrollIndex - self.PageIncrement
7936 self:Update()
7937 end;
7938 ScrollTo = function(self,index)
7939 self.ScrollIndex = index
7940 self:Update()
7941 end;
7942 SetScrollPercent = function(self,percent)
7943 self.ScrollIndex = math.floor((self.TotalSpace - self.VisibleSpace)*percent + 0.5)
7944 self:Update()
7945 end;
7946 };
7947 }
7948 mt.__index.CanScrollRight = mt.__index.CanScrollDown
7949 mt.__index.CanScrollLeft = mt.__index.CanScrollUp
7950 mt.__index.ScrollLeft = mt.__index.ScrollUp
7951 mt.__index.ScrollRight = mt.__index.ScrollDown
7952
7953 function ScrollBar(horizontal)
7954 -- create row scroll bar
7955 local ScrollFrame = Create('Frame',{
7956 Name = "ScrollFrame";
7957 Position = horizontal and UDim2.new(0,0,1,-ScrollBarWidth) or UDim2.new(1,-ScrollBarWidth,0,0);
7958 Size = horizontal and UDim2.new(1,0,0,ScrollBarWidth) or UDim2.new(0,ScrollBarWidth,1,0);
7959 BackgroundTransparency = 1;
7960 Create('ImageButton',{
7961 Name = "ScrollDown";
7962 Position = horizontal and UDim2.new(1,-ScrollBarWidth,0,0) or UDim2.new(0,0,1,-ScrollBarWidth);
7963 Size = UDim2.new(0, ScrollBarWidth, 0, ScrollBarWidth);
7964 BackgroundColor3 = ScrollStyles.Button;
7965 BorderColor3 = ScrollStyles.Border;
7966 --BorderSizePixel = 0;
7967 });
7968 Create('ImageButton',{
7969 Name = "ScrollUp";
7970 Size = UDim2.new(0, ScrollBarWidth, 0, ScrollBarWidth);
7971 BackgroundColor3 = ScrollStyles.Button;
7972 BorderColor3 = ScrollStyles.Border;
7973 --BorderSizePixel = 0;
7974 });
7975 Create('ImageButton',{
7976 Name = "ScrollBar";
7977 Size = horizontal and UDim2.new(1,-ScrollBarWidth*2,1,0) or UDim2.new(1,0,1,-ScrollBarWidth*2);
7978 Position = horizontal and UDim2.new(0,ScrollBarWidth,0,0) or UDim2.new(0,0,0,ScrollBarWidth);
7979 AutoButtonColor = false;
7980 BackgroundColor3 = Color3.new(0.94902, 0.94902, 0.94902);
7981 BorderColor3 = ScrollStyles.Border;
7982 --BorderSizePixel = 0;
7983 Create('ImageButton',{
7984 Name = "ScrollThumb";
7985 AutoButtonColor = false;
7986 Size = UDim2.new(0, ScrollBarWidth, 0, ScrollBarWidth);
7987 BackgroundColor3 = ScrollStyles.Button;
7988 BorderColor3 = ScrollStyles.Border;
7989 --BorderSizePixel = 0;
7990 });
7991 });
7992 })
7993
7994 local graphicTemplate = Create('Frame',{
7995 Name="Graphic";
7996 BorderSizePixel = 0;
7997 BackgroundColor3 = ScrollStyles.Border;
7998 })
7999 local graphicSize = ScrollBarWidth/2
8000
8001 local ScrollDownFrame = ScrollFrame.ScrollDown
8002 local ScrollDownGraphic = ArrowGraphic(graphicSize,horizontal and 'Right' or 'Down',true,graphicTemplate)
8003 ScrollDownGraphic.Position = UDim2.new(0.5,-graphicSize/2,0.5,-graphicSize/2)
8004 ScrollDownGraphic.Parent = ScrollDownFrame
8005 local ScrollUpFrame = ScrollFrame.ScrollUp
8006 local ScrollUpGraphic = ArrowGraphic(graphicSize,horizontal and 'Left' or 'Up',true,graphicTemplate)
8007 ScrollUpGraphic.Position = UDim2.new(0.5,-graphicSize/2,0.5,-graphicSize/2)
8008 ScrollUpGraphic.Parent = ScrollUpFrame
8009 local ScrollBarFrame = ScrollFrame.ScrollBar
8010 local ScrollThumbFrame = ScrollBarFrame.ScrollThumb
8011 do
8012 local size = ScrollBarWidth*3/8
8013 local Decal = GripGraphic(Vector2.new(size,size),horizontal and 'Vertical' or 'Horizontal',2,graphicTemplate)
8014 Decal.Position = UDim2.new(0.5,-size/2,0.5,-size/2)
8015 Decal.Parent = ScrollThumbFrame
8016 end
8017
8018 local MouseDrag = Create('ImageButton',{
8019 Name = "MouseDrag";
8020 Position = UDim2.new(-0.25,0,-0.25,0);
8021 Size = UDim2.new(1.5,0,1.5,0);
8022 Transparency = 1;
8023 AutoButtonColor = false;
8024 Active = true;
8025 ZIndex = 10;
8026 })
8027
8028 local Class = setmetatable({
8029 GUI = ScrollFrame;
8030 ScrollIndex = 0;
8031 VisibleSpace = 0;
8032 TotalSpace = 0;
8033 PageIncrement = 1;
8034 },mt)
8035
8036 local UpdateScrollThumb
8037 if horizontal then
8038 function UpdateScrollThumb()
8039 ScrollThumbFrame.Size = UDim2.new(Class.VisibleSpace/Class.TotalSpace,0,0,ScrollBarWidth)
8040 if ScrollThumbFrame.AbsoluteSize.x < ScrollBarWidth then
8041 ScrollThumbFrame.Size = UDim2.new(0,ScrollBarWidth,0,ScrollBarWidth)
8042 end
8043 local barSize = ScrollBarFrame.AbsoluteSize.x
8044 ScrollThumbFrame.Position = UDim2.new(Class:GetScrollPercent()*(barSize - ScrollThumbFrame.AbsoluteSize.x)/barSize,0,0,0)
8045 end
8046 else
8047 function UpdateScrollThumb()
8048 ScrollThumbFrame.Size = UDim2.new(0,ScrollBarWidth,Class.VisibleSpace/Class.TotalSpace,0)
8049 if ScrollThumbFrame.AbsoluteSize.y < ScrollBarWidth then
8050 ScrollThumbFrame.Size = UDim2.new(0,ScrollBarWidth,0,ScrollBarWidth)
8051 end
8052 local barSize = ScrollBarFrame.AbsoluteSize.y
8053 ScrollThumbFrame.Position = UDim2.new(0,0,Class:GetScrollPercent()*(barSize - ScrollThumbFrame.AbsoluteSize.y)/barSize,0)
8054 end
8055 end
8056
8057 local lastDown
8058 local lastUp
8059 local scrollStyle = {BackgroundColor3=ScrollStyles.Border,BackgroundTransparency=0}
8060 local scrollStyle_ds = {BackgroundColor3=ScrollStyles.Border,BackgroundTransparency=0.7}
8061
8062 local function Update()
8063 local t = Class.TotalSpace
8064 local v = Class.VisibleSpace
8065 local s = Class.ScrollIndex
8066 if v <= t then
8067 if s > 0 then
8068 if s + v > t then
8069 Class.ScrollIndex = t - v
8070 end
8071 else
8072 Class.ScrollIndex = 0
8073 end
8074 else
8075 Class.ScrollIndex = 0
8076 end
8077
8078 if Class.UpdateCallback then
8079 if Class.UpdateCallback(Class) == false then
8080 return
8081 end
8082 end
8083
8084 local down = Class:CanScrollDown()
8085 local up = Class:CanScrollUp()
8086 if down ~= lastDown then
8087 lastDown = down
8088 ScrollDownFrame.Active = down
8089 ScrollDownFrame.AutoButtonColor = down
8090 local children = ScrollDownGraphic:GetChildren()
8091 local style = down and scrollStyle or scrollStyle_ds
8092 for i = 1,#children do
8093 Create(children[i],style)
8094 end
8095 end
8096 if up ~= lastUp then
8097 lastUp = up
8098 ScrollUpFrame.Active = up
8099 ScrollUpFrame.AutoButtonColor = up
8100 local children = ScrollUpGraphic:GetChildren()
8101 local style = up and scrollStyle or scrollStyle_ds
8102 for i = 1,#children do
8103 Create(children[i],style)
8104 end
8105 end
8106 ScrollThumbFrame.Visible = down or up
8107 UpdateScrollThumb()
8108 end
8109 Class.Update = Update
8110
8111 SetZIndexOnChanged(ScrollFrame)
8112
8113 local scrollEventID = 0
8114 ScrollDownFrame.MouseButton1Down:connect(function()
8115 scrollEventID = tick()
8116 local current = scrollEventID
8117 local up_con
8118 up_con = MouseDrag.MouseButton1Up:connect(function()
8119 scrollEventID = tick()
8120 MouseDrag.Parent = nil
8121 ResetButtonColor(ScrollDownFrame)
8122 up_con:disconnect(); drag = nil
8123 end)
8124 MouseDrag.Parent = GetScreen(ScrollFrame)
8125 Class:ScrollDown()
8126 wait(0.2) -- delay before auto scroll
8127 while scrollEventID == current do
8128 Class:ScrollDown()
8129 if not Class:CanScrollDown() then break end
8130 wait()
8131 end
8132 end)
8133
8134 ScrollDownFrame.MouseButton1Up:connect(function()
8135 scrollEventID = tick()
8136 end)
8137
8138 ScrollUpFrame.MouseButton1Down:connect(function()
8139 scrollEventID = tick()
8140 local current = scrollEventID
8141 local up_con
8142 up_con = MouseDrag.MouseButton1Up:connect(function()
8143 scrollEventID = tick()
8144 MouseDrag.Parent = nil
8145 ResetButtonColor(ScrollUpFrame)
8146 up_con:disconnect(); drag = nil
8147 end)
8148 MouseDrag.Parent = GetScreen(ScrollFrame)
8149 Class:ScrollUp()
8150 wait(0.2)
8151 while scrollEventID == current do
8152 Class:ScrollUp()
8153 if not Class:CanScrollUp() then break end
8154 wait()
8155 end
8156 end)
8157
8158 ScrollUpFrame.MouseButton1Up:connect(function()
8159 scrollEventID = tick()
8160 end)
8161
8162 if horizontal then
8163 ScrollBarFrame.MouseButton1Down:connect(function(x,y)
8164 scrollEventID = tick()
8165 local current = scrollEventID
8166 local up_con
8167 up_con = MouseDrag.MouseButton1Up:connect(function()
8168 scrollEventID = tick()
8169 MouseDrag.Parent = nil
8170 ResetButtonColor(ScrollUpFrame)
8171 up_con:disconnect(); drag = nil
8172 end)
8173 MouseDrag.Parent = GetScreen(ScrollFrame)
8174 if x > ScrollThumbFrame.AbsolutePosition.x then
8175 Class:ScrollTo(Class.ScrollIndex + Class.VisibleSpace)
8176 wait(0.2)
8177 while scrollEventID == current do
8178 if x < ScrollThumbFrame.AbsolutePosition.x + ScrollThumbFrame.AbsoluteSize.x then break end
8179 Class:ScrollTo(Class.ScrollIndex + Class.VisibleSpace)
8180 wait()
8181 end
8182 else
8183 Class:ScrollTo(Class.ScrollIndex - Class.VisibleSpace)
8184 wait(0.2)
8185 while scrollEventID == current do
8186 if x > ScrollThumbFrame.AbsolutePosition.x then break end
8187 Class:ScrollTo(Class.ScrollIndex - Class.VisibleSpace)
8188 wait()
8189 end
8190 end
8191 end)
8192 else
8193 ScrollBarFrame.MouseButton1Down:connect(function(x,y)
8194 scrollEventID = tick()
8195 local current = scrollEventID
8196 local up_con
8197 up_con = MouseDrag.MouseButton1Up:connect(function()
8198 scrollEventID = tick()
8199 MouseDrag.Parent = nil
8200 ResetButtonColor(ScrollUpFrame)
8201 up_con:disconnect(); drag = nil
8202 end)
8203 MouseDrag.Parent = GetScreen(ScrollFrame)
8204 if y > ScrollThumbFrame.AbsolutePosition.y then
8205 Class:ScrollTo(Class.ScrollIndex + Class.VisibleSpace)
8206 wait(0.2)
8207 while scrollEventID == current do
8208 if y < ScrollThumbFrame.AbsolutePosition.y + ScrollThumbFrame.AbsoluteSize.y then break end
8209 Class:ScrollTo(Class.ScrollIndex + Class.VisibleSpace)
8210 wait()
8211 end
8212 else
8213 Class:ScrollTo(Class.ScrollIndex - Class.VisibleSpace)
8214 wait(0.2)
8215 while scrollEventID == current do
8216 if y > ScrollThumbFrame.AbsolutePosition.y then break end
8217 Class:ScrollTo(Class.ScrollIndex - Class.VisibleSpace)
8218 wait()
8219 end
8220 end
8221 end)
8222 end
8223
8224 if horizontal then
8225 ScrollThumbFrame.MouseButton1Down:connect(function(x,y)
8226 scrollEventID = tick()
8227 local mouse_offset = x - ScrollThumbFrame.AbsolutePosition.x
8228 local drag_con
8229 local up_con
8230 drag_con = MouseDrag.MouseMoved:connect(function(x,y)
8231 local bar_abs_pos = ScrollBarFrame.AbsolutePosition.x
8232 local bar_drag = ScrollBarFrame.AbsoluteSize.x - ScrollThumbFrame.AbsoluteSize.x
8233 local bar_abs_one = bar_abs_pos + bar_drag
8234 x = x - mouse_offset
8235 x = x < bar_abs_pos and bar_abs_pos or x > bar_abs_one and bar_abs_one or x
8236 x = x - bar_abs_pos
8237 Class:SetScrollPercent(x/(bar_drag))
8238 end)
8239 up_con = MouseDrag.MouseButton1Up:connect(function()
8240 scrollEventID = tick()
8241 MouseDrag.Parent = nil
8242 ResetButtonColor(ScrollThumbFrame)
8243 drag_con:disconnect(); drag_con = nil
8244 up_con:disconnect(); drag = nil
8245 end)
8246 MouseDrag.Parent = GetScreen(ScrollFrame)
8247 end)
8248 else
8249 ScrollThumbFrame.MouseButton1Down:connect(function(x,y)
8250 scrollEventID = tick()
8251 local mouse_offset = y - ScrollThumbFrame.AbsolutePosition.y
8252 local drag_con
8253 local up_con
8254 drag_con = MouseDrag.MouseMoved:connect(function(x,y)
8255 local bar_abs_pos = ScrollBarFrame.AbsolutePosition.y
8256 local bar_drag = ScrollBarFrame.AbsoluteSize.y - ScrollThumbFrame.AbsoluteSize.y
8257 local bar_abs_one = bar_abs_pos + bar_drag
8258 y = y - mouse_offset
8259 y = y < bar_abs_pos and bar_abs_pos or y > bar_abs_one and bar_abs_one or y
8260 y = y - bar_abs_pos
8261 Class:SetScrollPercent(y/(bar_drag))
8262 end)
8263 up_con = MouseDrag.MouseButton1Up:connect(function()
8264 scrollEventID = tick()
8265 MouseDrag.Parent = nil
8266 ResetButtonColor(ScrollThumbFrame)
8267 drag_con:disconnect(); drag_con = nil
8268 up_con:disconnect(); drag = nil
8269 end)
8270 MouseDrag.Parent = GetScreen(ScrollFrame)
8271 end)
8272 end
8273
8274 function Class:Destroy()
8275 ScrollFrame:Destroy()
8276 MouseDrag:Destroy()
8277 for k in pairs(Class) do
8278 Class[k] = nil
8279 end
8280 setmetatable(Class,nil)
8281 end
8282
8283 Update()
8284
8285 return Class
8286 end
8287end
8288
8289-- End Scrollbar
8290
8291local scrollBar = ScrollBar(false)
8292scrollBar.PageIncrement = 16
8293Create(scrollBar.GUI,{
8294 Position = UDim2.new(1,0,0,0);
8295 Size = UDim2.new(0,ScrollBarWidth,1,0);
8296 Parent = editorGrid;
8297})
8298
8299local scrollBarH = ScrollBar(true)
8300scrollBarH.PageIncrement = 8
8301Create(scrollBarH.GUI,{
8302 Position = UDim2.new(0,0,1,0);
8303 Size = UDim2.new(1,0,0,ScrollBarWidth);
8304 Parent = editorGrid;
8305})
8306
8307local entries = {}
8308
8309local grid = {}
8310
8311local count = 1
8312local xCount = 1
8313
8314local lineSpan = 0
8315
8316for i = 0,490,8 do
8317 local newRow = {}
8318 for j = 0,390,16 do
8319 local cellText = Instance.new("TextLabel",editorGrid)
8320 cellText.BackgroundTransparency = 1
8321 cellText.BorderSizePixel = 0
8322 cellText.Text = ""
8323 cellText.Position = UDim2.new(0,i,0,j)
8324 cellText.Size = UDim2.new(0,8,0,16)
8325 cellText.Font = Enum.Font.SourceSans
8326 cellText.FontSize = Enum.FontSize.Size18
8327 table.insert(newRow,cellText)
8328 xCount = xCount + 1
8329 end
8330 table.insert(grid,newRow)
8331 count = count + 1
8332 xCount = 1
8333end
8334
8335local syntaxHighlightList = {
8336 {["Keyword"] = "for", ["Color"] = Color3.new(0, 0, 127/255), ["Independent"] = true},
8337 {["Keyword"] = "local", ["Color"] = Color3.new(0, 0, 127/255), ["Independent"] = true},
8338 {["Keyword"] = "if", ["Color"] = Color3.new(0, 0, 127/255), ["Independent"] = true},
8339 {["Keyword"] = "then", ["Color"] = Color3.new(0, 0, 127/255), ["Independent"] = true},
8340 {["Keyword"] = "do", ["Color"] = Color3.new(0, 0, 127/255), ["Independent"] = true},
8341 {["Keyword"] = "while", ["Color"] = Color3.new(0, 0, 127/255), ["Independent"] = true},
8342 {["Keyword"] = "end", ["Color"] = Color3.new(0, 0, 127/255), ["Independent"] = true},
8343 {["Keyword"] = "function", ["Color"] = Color3.new(0, 0, 127/255), ["Independent"] = true},
8344 {["Keyword"] = "string", ["Color"] = Color3.new(0, 0, 127/255), ["Independent"] = true},
8345 {["Keyword"] = "table", ["Color"] = Color3.new(0, 0, 127/255), ["Independent"] = true},
8346 {["Keyword"] = "game", ["Color"] = Color3.new(0, 0, 127/255), ["Independent"] = true},
8347 {["Keyword"] = "workspace", ["Color"] = Color3.new(0, 0, 127/255), ["Independent"] = true},
8348 {["Keyword"] = "return", ["Color"] = Color3.new(0, 0, 127/255), ["Independent"] = true},
8349 {["Keyword"] = "break", ["Color"] = Color3.new(0, 0, 127/255), ["Independent"] = true},
8350 {["Keyword"] = "elseif", ["Color"] = Color3.new(0, 0, 127/255), ["Independent"] = true},
8351 {["Keyword"] = "in", ["Color"] = Color3.new(0, 0, 127/255), ["Independent"] = true},
8352 {["Keyword"] = "pairs", ["Color"] = Color3.new(0, 0, 127/255), ["Independent"] = true},
8353 {["Keyword"] = "ipairs", ["Color"] = Color3.new(0, 0, 127/255), ["Independent"] = true}
8354}
8355
8356function checkMouseInGui(gui)
8357 if gui == nil then return false end
8358 local plrMouse = game.Players.LocalPlayer:GetMouse()
8359 local guiPosition = gui.AbsolutePosition
8360 local guiSize = gui.AbsoluteSize
8361
8362 if plrMouse.X >= guiPosition.x and plrMouse.X <= guiPosition.x + guiSize.x and plrMouse.Y >= guiPosition.y and plrMouse.Y <= guiPosition.y + guiSize.y then
8363 return true
8364 else
8365 return false
8366 end
8367end
8368
8369function AddZeros(num,reach)
8370 local toConvert = tostring(num)
8371 while #toConvert < reach do
8372 toConvert = " "..toConvert
8373 end
8374 return toConvert
8375end
8376
8377function buildScript(source,xOff,yOff,override)
8378 local buildingRows = true
8379 local buildScr = source
8380
8381 local totalLines = 0
8382
8383 --print(xOff,yOff)
8384
8385 if currentSource ~= source then
8386 currentSource = source
8387 end
8388
8389 if override then
8390 currentSource = source
8391 entries = {}
8392 while buildingRows do
8393 local x,y = string.find(buildScr,"\n")
8394 if x and y then
8395 table.insert(entries,string.sub(buildScr,1,y))
8396 buildScr = string.sub(buildScr,y+1,string.len(buildScr))
8397 else
8398 buildingRows = false
8399 table.insert(entries,buildScr)
8400 end
8401 end
8402 end
8403
8404 totalLines = #entries
8405 lineSpan = #tostring(totalLines)
8406
8407 if lineSpan == 1 then lineSpan = 2 end
8408
8409 local currentRow = 1
8410 local currentColumn = 2 + lineSpan
8411
8412 local colorTime = 0
8413 local colorReplace = nil
8414
8415 local inString = false
8416
8417 local workingEntries = entries
8418
8419 --[[
8420 for i,v in pairs(entries) do
8421 table.insert(workingEntries,v)
8422 end
8423
8424 for i = 1,yOff do
8425 table.remove(workingEntries,1)
8426 end
8427 --]]
8428
8429 local delayance = xOff
8430
8431 for i = 1,#grid do
8432 for j = 1,#grid[i] do
8433 if i <= lineSpan then
8434 local newNum = AddZeros(yOff + j,lineSpan)
8435 local newDigit = string.sub(newNum,i,i)
8436 if newDigit == " " then
8437 grid[i][j].Text = ""
8438 else
8439 grid[i][j].Text = newDigit
8440 end
8441 grid[i][j].BackgroundTransparency = 0
8442 grid[i][j].BackgroundColor3 = Color3.new(163/255, 162/255, 165/255)
8443 --grid[i][j].Font = Enum.Font.SourceSansBold
8444 elseif i == lineSpan + 1 then
8445 grid[i][j].Text = ""
8446 grid[i][j].BackgroundTransparency = 0
8447 grid[i][j].BackgroundColor3 = Color3.new(200/255, 200/255, 200/255)
8448 --grid[i][j].Font = Enum.Font.SourceSans
8449 else
8450 grid[i][j].Text = ""
8451 grid[i][j].BackgroundTransparency = 1
8452 --grid[i][j].Font = Enum.Font.SourceSans
8453 end
8454 end
8455 end
8456
8457 while true do
8458 if currentRow > #workingEntries or currentRow > #grid[1] then break end
8459 local entry = workingEntries[currentRow+yOff]
8460 while string.len(entry) > 0 do
8461 if string.sub(entry,1,1) == "\t" then entry = " "..string.sub(entry,2) end
8462
8463 if currentColumn > #grid then break end
8464
8465 if delayance == 0 then
8466 grid[currentColumn][currentRow].Text = string.sub(entry,1,1)
8467 end
8468
8469 -- Coloring
8470
8471 if not inString then
8472 for i,v in pairs(syntaxHighlightList) do
8473 if string.sub(entry,1,string.len(v["Keyword"])) == v["Keyword"] then
8474 if v["Independent"] then
8475 local outCheck = string.len(v["Keyword"])+1
8476 local outEntry = string.sub(entry,outCheck,outCheck)
8477 if not string.find(outEntry,"%w") then
8478 colorTime = string.len(v["Keyword"])
8479 colorReplace = v["Color"]
8480 end
8481 else
8482 colorTime = string.len(v["Keyword"])
8483 colorReplace = v["Color"]
8484 end
8485 end
8486 end
8487 end
8488
8489 if string.sub(entry,1,1) == "\"" and string.match(entry,"\".+\"") then
8490 inString = true
8491 colorTime = string.len(string.match(entry,"\".+\""))
8492 colorReplace = Color3.new(170/255, 0, 1)
8493 end
8494
8495 if colorTime > 0 then
8496 colorTime = colorTime - 1
8497 grid[currentColumn][currentRow].TextColor3 = colorReplace
8498 if colorTime == 0 then inString = false end
8499 else
8500 grid[currentColumn][currentRow].TextColor3 = Color3.new(0,0,0)
8501 inString = false
8502 end
8503
8504 if delayance == 0 then
8505 currentColumn = currentColumn + 1
8506 else
8507 delayance = delayance - 1
8508 end
8509 entry = string.sub(entry,2,string.len(entry))
8510 end
8511 currentRow = currentRow + 1
8512 currentColumn = 2 + lineSpan
8513 colorTime = 0
8514 delayance = xOff
8515 inString = false
8516 end
8517end
8518
8519function scrollBar.UpdateCallback(self)
8520 scrollBar.TotalSpace = #entries * 16
8521 scrollBar.VisibleSpace = editorGrid.AbsoluteSize.Y
8522 buildScript(currentSource,math.floor(scrollBarH.ScrollIndex/8),math.floor(scrollBar.ScrollIndex/16))
8523end
8524
8525function scrollBarH.UpdateCallback(self)
8526 scrollBarH.TotalSpace = (getLongestEntry(entries) + 1 + lineSpan) * 8
8527 scrollBarH.VisibleSpace = editorGrid.AbsoluteSize.X
8528 buildScript(currentSource,math.floor(scrollBarH.ScrollIndex/8),math.floor(scrollBar.ScrollIndex/16))
8529end
8530
8531function getLongestEntry(tab)
8532 local longest = 0
8533 for i,v in pairs(tab) do
8534 if string.len(v) > longest then
8535 longest = string.len(v)
8536 end
8537 end
8538 return longest
8539end
8540
8541function openScript(scrObj)
8542 if scrObj:IsA("LocalScript") then
8543 scrObj.Archivable = true
8544 scrObj = scrObj:Clone()
8545 scrObj.Disabled = true
8546 end
8547
8548 local scrName = scrObj.Name
8549 local scrSource = decompile(scrObj)
8550
8551 table.insert(memoryScripts,{Name = scrName,Source = scrSource})
8552
8553 local newTab = entryTemplate:Clone()
8554 newTab.Button.Text = scrName
8555 newTab.Position = UDim2.new(0,#scriptBar:GetChildren() * 100,0,0)
8556 newTab.Visible = true
8557
8558 newTab.Button.MouseButton1Down:connect(function()
8559 for i,v in pairs(scriptBar:GetChildren()) do
8560 if v == newTab then
8561 editingIndex = i
8562 buildScript(memoryScripts[i].Source,0,0,true)
8563 scrollBar:ScrollTo(1)
8564 scrollBar:Update()
8565 scrollBarH:ScrollTo(1)
8566 scrollBarH:Update()
8567 end
8568 end
8569 end)
8570
8571 newTab.Close.MouseButton1Click:connect(function()
8572 for i,v in pairs(scriptBar:GetChildren()) do
8573 if v == newTab then
8574 table.remove(memoryScripts,i)
8575 if editingIndex == i then
8576 editingIndex = #memoryScripts
8577 if editingIndex > 0 then
8578 buildScript(memoryScripts[#memoryScripts].Source,0,0,true)
8579 else
8580 buildScript("",0,0,true)
8581 end
8582 end
8583
8584 scrollBar:ScrollTo(1)
8585 scrollBar:Update()
8586 scrollBarH:ScrollTo(1)
8587 scrollBarH:Update()
8588
8589 for i2 = i,#scriptBar:GetChildren() do
8590 scriptBar:GetChildren()[i2].Position = scriptBar:GetChildren()[i2].Position + UDim2.new(0,-100,0,0)
8591 end
8592 if editingIndex > i then
8593 editingIndex = editingIndex - 1
8594 end
8595 newTab:Destroy()
8596 end
8597 end
8598 end)
8599
8600 editingIndex = #memoryScripts
8601 buildScript(scrSource,0,0,true)
8602
8603 newTab.Parent = scriptBar
8604end
8605
8606function updateScriptBar()
8607 local entryCount = 0
8608
8609 scriptBarLeft.Active = false
8610 scriptBarLeft.AutoButtonColor = false
8611 for i,v in pairs(scriptBarLeft["Arrow Graphic"]:GetChildren()) do
8612 v.BackgroundTransparency = 0.7
8613 end
8614 scriptBarRight.Active = false
8615 scriptBarRight.AutoButtonColor = false
8616 for i,v in pairs(scriptBarRight["Arrow Graphic"]:GetChildren()) do
8617 v.BackgroundTransparency = 0.7
8618 end
8619 for i,v in pairs(scriptBar:GetChildren()) do
8620 if v.Position.X.Offset < 0 then
8621 scriptBarLeft.Active = true
8622 scriptBarLeft.AutoButtonColor = true
8623 for i,v in pairs(scriptBarLeft["Arrow Graphic"]:GetChildren()) do
8624 v.BackgroundTransparency = 0
8625 end
8626 elseif v.Position.X.Offset >= 0 then
8627 entryCount = entryCount + 1
8628 if entryCount == 5 then
8629 scriptBarRight.Active = true
8630 scriptBarRight.AutoButtonColor = true
8631 for i,v in pairs(scriptBarRight["Arrow Graphic"]:GetChildren()) do
8632 v.BackgroundTransparency = 0
8633 end
8634 end
8635 end
8636 end
8637end
8638
8639scriptBar.ChildAdded:connect(updateScriptBar)
8640scriptBar.ChildRemoved:connect(updateScriptBar)
8641
8642scriptBarLeft.MouseButton1Click:connect(function()
8643 if scriptBarLeft.Active == false then return end
8644 for i,v in pairs(scriptBar:GetChildren()) do
8645 v.Position = v.Position + UDim2.new(0,100,0,0)
8646 end
8647 updateScriptBar()
8648end)
8649
8650scriptBarRight.MouseButton1Click:connect(function()
8651 if scriptBarRight.Active == false then return end
8652 for i,v in pairs(scriptBar:GetChildren()) do
8653 v.Position = v.Position + UDim2.new(0,-100,0,0)
8654 end
8655 updateScriptBar()
8656end)
8657
8658mouse.Button1Down:connect(function()
8659 if checkMouseInGui(editorGrid) then
8660 --print("LETS EDIT!")
8661 end
8662end)
8663
8664openEvent.Event:connect(function(...)
8665 top.Visible = true
8666 local args = {...}
8667 if #args > 0 then
8668 openScript(args[1])
8669 end
8670end)
8671
8672clipboardButton.MouseButton1Click:connect(function()
8673 if Clipboard and Clipboard.set then
8674 Clipboard.set(currentSource)
8675 elseif CopyString then
8676 CopyString(currentSource)
8677 end
8678end)
8679
8680closeButton.MouseButton1Click:connect(function()
8681 top.Visible = false
8682end)
8683
8684--[[
8685local scr = script.Parent:WaitForChild("Scr")
8686local scr2 = script.Parent:WaitForChild("Scr2")
8687local scr3 = script.Parent:WaitForChild("Scr3")
8688local scr4 = script.Parent:WaitForChild("TOS")
8689local scr5 = script.Parent:WaitForChild("HW")
8690--]]
8691
8692buildScript("",0,0,true)
8693--[[
8694openScript(scr)
8695openScript(scr2)
8696openScript(scr3)
8697openScript(scr4)
8698openScript(scr5)
8699--]]
8700
8701scrollBar:Update()
8702scrollBarH:Update()
8703end)
8704
8705--moony