Facebook
From Red Wigeon, 4 Years ago, written in Plain Text.
Embed
Download Paste or View Raw
Hits: 4412
  1. local print = function() end
  2. local warn = function() end
  3. local error = function() end
  4.  
  5. math.randomseed(tick())
  6.  
  7. function RandomCharacters(length)
  8.         local STR = ''
  9.        
  10.         for i = 1, length do
  11.                 STR = STR .. string.char(math.random(65,90))
  12.         end
  13.        
  14.         return STR
  15. end
  16.  
  17. if getgenv().dex_ui ~= nil then getgenv().dex_ui:remove() getgenv().dex_ui = nil end
  18.  
  19. CreateGui = function()
  20. local ROBLOX = Instance.new("ScreenGui")
  21. local PropertiesFrame = Instance.new("Frame")
  22. local Header = Instance.new("Frame")
  23. local TextLabel = Instance.new("TextLabel")
  24. local TextBox = Instance.new("TextBox")
  25. local ExplorerPanel = Instance.new("Frame")
  26. local SideMenu = Instance.new("Frame")
  27. local Toggle = Instance.new("TextButton")
  28. local Title = Instance.new("TextLabel")
  29. local Version = Instance.new("TextLabel")
  30. local Slant = Instance.new("ImageLabel")
  31. local Main = Instance.new("Frame")
  32. local SlideOut = Instance.new("Frame")
  33. local SlideFrame = Instance.new("Frame")
  34. local Explorer = Instance.new("TextButton")
  35. local Icon = Instance.new("ImageLabel")
  36. local SaveMap = Instance.new("TextButton")
  37. local Icon_2 = Instance.new("ImageLabel")
  38. local Settings = Instance.new("TextButton")
  39. local Icon_3 = Instance.new("ImageLabel")
  40. local Remotes = Instance.new("TextButton")
  41. local Icon_4 = Instance.new("ImageLabel")
  42. local About = Instance.new("TextButton")
  43. local Icon_5 = Instance.new("ImageLabel")
  44. local OpenScriptEditor = Instance.new("TextButton")
  45. local Icon_6 = Instance.new("ImageLabel")
  46. local Toggle_2 = Instance.new("TextButton")
  47. local SettingsPanel = Instance.new("Frame")
  48. local Header_2 = Instance.new("Frame")
  49. local TextLabel_2 = Instance.new("TextLabel")
  50. local SettingTemplate = Instance.new("Frame")
  51. local SName = Instance.new("TextLabel")
  52. local Status = Instance.new("TextLabel")
  53. local Change = Instance.new("TextButton")
  54. local OnBar = Instance.new("TextLabel")
  55. local Bar = Instance.new("TextLabel")
  56. local SettingList = Instance.new("Frame")
  57. local SaveInstance = Instance.new("Frame")
  58. local Title_2 = Instance.new("TextLabel")
  59. local MainWindow = Instance.new("Frame")
  60. local Save = Instance.new("TextButton")
  61. local Desc = Instance.new("TextLabel")
  62. local Cancel = Instance.new("TextButton")
  63. local FileName = Instance.new("TextBox")
  64. local SaveObjects = Instance.new("TextButton")
  65. local enabled = Instance.new("TextLabel")
  66. local Desc2 = Instance.new("TextLabel")
  67. local Confirmation = Instance.new("Frame")
  68. local Title_3 = Instance.new("TextLabel")
  69. local MainWindow_2 = Instance.new("Frame")
  70. local Yes = Instance.new("TextButton")
  71. local Desc_2 = Instance.new("TextLabel")
  72. local No = Instance.new("TextButton")
  73. local Caution = Instance.new("Frame")
  74. local Title_4 = Instance.new("TextLabel")
  75. local MainWindow_3 = Instance.new("Frame")
  76. local Desc_3 = Instance.new("TextLabel")
  77. local Ok = Instance.new("TextButton")
  78. local CallRemote = Instance.new("Frame")
  79. local Title_5 = Instance.new("TextLabel")
  80. local MainWindow_4 = Instance.new("Frame")
  81. local Desc_4 = Instance.new("TextLabel")
  82. local Arguments = Instance.new("ScrollingFrame")
  83. local DisplayReturned = Instance.new("TextButton")
  84. local enabled_2 = Instance.new("TextLabel")
  85. local Desc2_2 = Instance.new("TextLabel")
  86. local Add = Instance.new("TextButton")
  87. local Subtract = Instance.new("TextButton")
  88. local ArgumentTemplate = Instance.new("Frame")
  89. local Type = Instance.new("TextButton")
  90. local Value = Instance.new("TextBox")
  91. local Cancel_2 = Instance.new("TextButton")
  92. local Ok_2 = Instance.new("TextButton")
  93. local TableCaution = Instance.new("Frame")
  94. local MainWindow_5 = Instance.new("Frame")
  95. local Ok_3 = Instance.new("TextButton")
  96. local TableResults = Instance.new("ScrollingFrame")
  97. local TableTemplate = Instance.new("Frame")
  98. local Type_2 = Instance.new("TextLabel")
  99. local Value_2 = Instance.new("TextLabel")
  100. local Title_6 = Instance.new("TextLabel")
  101. local ScriptEditor = Instance.new("Frame")
  102. local Title_7 = Instance.new("TextLabel")
  103. local Cover = Instance.new("Frame")
  104. local EditorGrid = Instance.new("Frame")
  105. local TopBar = Instance.new("Frame")
  106. local ScriptBarLeft = Instance.new("ImageButton")
  107. local ArrowGraphic = Instance.new("Frame")
  108. local Graphic = Instance.new("Frame")
  109. local Graphic_2 = Instance.new("Frame")
  110. local Graphic_3 = Instance.new("Frame")
  111. local Graphic_4 = Instance.new("Frame")
  112. local ScriptBarRight = Instance.new("ImageButton")
  113. local ArrowGraphic_2 = Instance.new("Frame")
  114. local Graphic_5 = Instance.new("Frame")
  115. local Graphic_6 = Instance.new("Frame")
  116. local Graphic_7 = Instance.new("Frame")
  117. local Graphic_8 = Instance.new("Frame")
  118. local Clipboard = Instance.new("TextButton")
  119. local SaveScript = Instance.new("TextButton")
  120. local ScriptBar = Instance.new("Frame")
  121. local Entry = Instance.new("Frame")
  122. local Button = Instance.new("TextButton")
  123. local Close = Instance.new("TextButton")
  124. local Close_2 = Instance.new("TextButton")
  125. local IntroFrame = Instance.new("Frame")
  126. local Main_2 = Instance.new("Frame")
  127. local ImageLabel = Instance.new("ImageLabel")
  128. local Title_8 = Instance.new("TextLabel")
  129. local Version_2 = Instance.new("TextLabel")
  130. local Creator = Instance.new("TextLabel")
  131. local BG = Instance.new("ImageLabel")
  132. local Slant_2 = Instance.new("Frame")
  133. local ImageLabel_2 = Instance.new("ImageLabel")
  134. local SaveMapWindow = Instance.new("Frame")
  135. local Header_3 = Instance.new("Frame")
  136. local TextLabel_3 = Instance.new("TextLabel")
  137. local MapSettings = Instance.new("Frame")
  138. local Terrain = Instance.new("Frame")
  139. local SName_2 = Instance.new("TextLabel")
  140. local Status_2 = Instance.new("TextLabel")
  141. local Change_2 = Instance.new("TextButton")
  142. local OnBar_2 = Instance.new("TextLabel")
  143. local Bar_2 = Instance.new("TextLabel")
  144. local Lighting = Instance.new("Frame")
  145. local SName_3 = Instance.new("TextLabel")
  146. local Status_3 = Instance.new("TextLabel")
  147. local Change_3 = Instance.new("TextButton")
  148. local OnBar_3 = Instance.new("TextLabel")
  149. local Bar_3 = Instance.new("TextLabel")
  150. local CameraInstances = Instance.new("Frame")
  151. local SName_4 = Instance.new("TextLabel")
  152. local Status_4 = Instance.new("TextLabel")
  153. local Change_4 = Instance.new("TextButton")
  154. local OnBar_4 = Instance.new("TextLabel")
  155. local Bar_4 = Instance.new("TextLabel")
  156. local Scripts = Instance.new("Frame")
  157. local SName_5 = Instance.new("TextLabel")
  158. local Status_5 = Instance.new("TextLabel")
  159. local Change_5 = Instance.new("TextButton")
  160. local OnBar_5 = Instance.new("TextLabel")
  161. local Bar_5 = Instance.new("TextLabel")
  162. local ToSave = Instance.new("TextLabel")
  163. local CopyList = Instance.new("Frame")
  164. local Bottom = Instance.new("Frame")
  165. local TextLabel_4 = Instance.new("TextLabel")
  166. local Save_2 = Instance.new("TextButton")
  167. local FileName_2 = Instance.new("TextBox")
  168. local Entry_2 = Instance.new("Frame")
  169. local Change_6 = Instance.new("TextButton")
  170. local enabled_3 = Instance.new("TextLabel")
  171. local Info = Instance.new("TextLabel")
  172. local RemoteDebugWindow = Instance.new("Frame")
  173. local Header_4 = Instance.new("Frame")
  174. local TextLabel_5 = Instance.new("TextLabel")
  175. local Desc_5 = Instance.new("TextLabel")
  176. local AboutWindow = Instance.new("Frame")
  177. local Header_5 = Instance.new("Frame")
  178. local TextLabel_6 = Instance.new("TextLabel")
  179. local Desc_6 = Instance.new("TextLabel")
  180.  
  181. ROBLOX.Name = RandomCharacters(16, 64)
  182.  
  183. PropertiesFrame.Name = "PropertiesFrame"
  184. PropertiesFrame.Parent = ROBLOX
  185. PropertiesFrame.Active = true
  186. PropertiesFrame.BackgroundColor3 = Color3.fromRGB(43, 43, 43)
  187. PropertiesFrame.BorderColor3 = Color3.fromRGB(191, 191, 191)
  188. PropertiesFrame.BorderSizePixel = 0
  189. PropertiesFrame.Position = UDim2.new(1, 0, 0.5, 36)
  190. PropertiesFrame.Size = UDim2.new(0, 300, 0.5, -36)
  191.  
  192. Header.Name = "Header"
  193. Header.Parent = PropertiesFrame
  194. Header.BackgroundColor3 = Color3.fromRGB(43, 43, 43)
  195. Header.BorderColor3 = Color3.fromRGB(149, 149, 149)
  196. Header.BorderSizePixel = 0
  197. Header.Position = UDim2.new(0, 0, 0, -35)
  198. Header.Size = UDim2.new(1, 0, 0, 35)
  199.  
  200. TextLabel.Parent = Header
  201. TextLabel.BackgroundTransparency = 1
  202. TextLabel.Position = UDim2.new(0, 4, 0, 0)
  203. TextLabel.Size = UDim2.new(1, -4, 0.5, 0)
  204. TextLabel.Font = Enum.Font.SourceSans
  205. TextLabel.Text = "Properties"
  206. TextLabel.TextColor3 = Color3.fromRGB(255, 255, 255)
  207. TextLabel.TextSize = 14
  208. TextLabel.TextXAlignment = Enum.TextXAlignment.Left
  209.  
  210. TextBox.Parent = Header
  211. TextBox.BackgroundTransparency = 0.8
  212. TextBox.Position = UDim2.new(0, 4, 0.5, 0)
  213. TextBox.Size = UDim2.new(1, -8, 0.5, -3)
  214. TextBox.Font = Enum.Font.SourceSans
  215. TextBox.PlaceholderText = "Search Properties"
  216. TextBox.Text = ""
  217. TextBox.TextColor3 = Color3.fromRGB(255, 255, 255)
  218. TextBox.TextSize = 14
  219. TextBox.TextXAlignment = Enum.TextXAlignment.Left
  220.  
  221. ExplorerPanel.Name = "ExplorerPanel"
  222. ExplorerPanel.Parent = ROBLOX
  223. ExplorerPanel.BackgroundColor3 = Color3.fromRGB(255, 255, 255)
  224. ExplorerPanel.BorderColor3 = Color3.fromRGB(191, 191, 191)
  225. ExplorerPanel.BorderSizePixel = 0
  226. ExplorerPanel.Position = UDim2.new(1, 0, 0, 1)
  227. ExplorerPanel.Size = UDim2.new(0, 300, 0.5, 0)
  228.  
  229. SideMenu.Name = "SideMenu"
  230. SideMenu.Parent = ROBLOX
  231. SideMenu.BackgroundColor3 = Color3.fromRGB(233, 233, 233)
  232. SideMenu.BackgroundTransparency = 1
  233. SideMenu.BorderColor3 = Color3.fromRGB(149, 149, 149)
  234. SideMenu.BorderSizePixel = 0
  235. SideMenu.Position = UDim2.new(1, -330, 0, 0)
  236. SideMenu.Size = UDim2.new(0, 30, 0, 180)
  237. SideMenu.Visible = false
  238. SideMenu.ZIndex = 2
  239.  
  240. Toggle.Name = "Toggle"
  241. Toggle.Parent = SideMenu
  242. Toggle.Active = false
  243. Toggle.BackgroundColor3 = Color3.fromRGB(43, 43, 43)
  244. Toggle.BorderSizePixel = 0
  245. Toggle.Position = UDim2.new(0, 0, 0, 60)
  246. Toggle.Size = UDim2.new(0, 30, 0, 30)
  247. Toggle.AutoButtonColor = false
  248. Toggle.Font = Enum.Font.SourceSans
  249. Toggle.Text = ">"
  250. Toggle.TextColor3 = Color3.fromRGB(255, 255, 255)
  251. Toggle.TextSize = 24
  252. Toggle.TextTransparency = 1
  253. Toggle.TextWrapped = true
  254.  
  255. Title.Name = "Title"
  256. Title.Parent = SideMenu
  257. Title.BackgroundColor3 = Color3.fromRGB(43, 43, 43)
  258. Title.BackgroundTransparency = 1
  259. Title.Size = UDim2.new(0, 30, 0, 20)
  260. Title.ZIndex = 2
  261. Title.Font = Enum.Font.SourceSansBold
  262. Title.Text = "DEX"
  263. Title.TextColor3 = Color3.fromRGB(255, 255, 255)
  264. Title.TextSize = 14
  265. Title.TextWrapped = true
  266.  
  267. Version.Name = "Version"
  268. Version.Parent = SideMenu
  269. Version.BackgroundColor3 = Color3.fromRGB(43, 43, 43)
  270. Version.BackgroundTransparency = 1
  271. Version.Position = UDim2.new(0, 0, 0, 15)
  272. Version.Size = UDim2.new(0, 30, 0, 20)
  273. Version.ZIndex = 2
  274. Version.Font = Enum.Font.SourceSansBold
  275. Version.Text = "V2.0.0"
  276. Version.TextColor3 = Color3.fromRGB(255, 255, 255)
  277. Version.TextSize = 12
  278. Version.TextWrapped = true
  279.  
  280. Slant.Name = "Slant"
  281. Slant.Parent = SideMenu
  282. Slant.BackgroundColor3 = Color3.fromRGB(43, 43, 43)
  283. Slant.BackgroundTransparency = 1
  284. Slant.Position = UDim2.new(0, 0, 0, 90)
  285. Slant.Rotation = 180
  286. Slant.Size = UDim2.new(0, 30, 0, 30)
  287. Slant.Image = "rbxassetid://474172996"
  288. Slant.ImageColor3 = Color3.fromRGB(43, 43, 43)
  289.  
  290. Main.Name = "Main"
  291. Main.Parent = SideMenu
  292. Main.BackgroundColor3 = Color3.fromRGB(43, 43, 43)
  293. Main.BorderSizePixel = 0
  294. Main.Size = UDim2.new(0, 30, 0, 30)
  295.  
  296. SlideOut.Name = "SlideOut"
  297. SlideOut.Parent = SideMenu
  298. SlideOut.BackgroundColor3 = Color3.fromRGB(43, 43, 43)
  299. SlideOut.BackgroundTransparency = 1
  300. SlideOut.BorderSizePixel = 0
  301. SlideOut.ClipsDescendants = true
  302. SlideOut.Position = UDim2.new(0, 0, 0, 30)
  303. SlideOut.Size = UDim2.new(0, 30, 0, 150)
  304.  
  305. SlideFrame.Name = "SlideFrame"
  306. SlideFrame.Parent = SlideOut
  307. SlideFrame.BackgroundColor3 = Color3.fromRGB(43, 43, 43)
  308. SlideFrame.BorderSizePixel = 0
  309. SlideFrame.Position = UDim2.new(0, 0, 0, -150)
  310. SlideFrame.Size = UDim2.new(0, 30, 0, 150)
  311.  
  312. Explorer.Name = "Explorer"
  313. Explorer.Parent = SlideFrame
  314. Explorer.BackgroundColor3 = Color3.fromRGB(255, 255, 255)
  315. Explorer.BackgroundTransparency = 1
  316. Explorer.BorderSizePixel = 0
  317. Explorer.Position = UDim2.new(0, 0, 0, 120)
  318. Explorer.Size = UDim2.new(0, 30, 0, 30)
  319. Explorer.ZIndex = 2
  320. Explorer.AutoButtonColor = false
  321. Explorer.Font = Enum.Font.SourceSans
  322. Explorer.Text = ""
  323. Explorer.TextSize = 24
  324.  
  325. Icon.Name = "Icon"
  326. Icon.Parent = Explorer
  327. Icon.BackgroundColor3 = Color3.fromRGB(255, 255, 255)
  328. Icon.BackgroundTransparency = 1
  329. Icon.Position = UDim2.new(0, 5, 0, 5)
  330. Icon.Size = UDim2.new(0, 20, 0, 20)
  331. Icon.ZIndex = 2
  332. Icon.Image = "rbxassetid://472635937"
  333.  
  334. SaveMap.Name = "SaveMap"
  335. SaveMap.Parent = SlideFrame
  336. SaveMap.BackgroundColor3 = Color3.fromRGB(255, 255, 255)
  337. SaveMap.BackgroundTransparency = 1
  338. SaveMap.BorderSizePixel = 0
  339. SaveMap.Position = UDim2.new(0, 0, 0, 90)
  340. SaveMap.Size = UDim2.new(0, 30, 0, 30)
  341. SaveMap.ZIndex = 2
  342. SaveMap.AutoButtonColor = false
  343. SaveMap.Font = Enum.Font.SourceSans
  344. SaveMap.Text = ""
  345. SaveMap.TextSize = 24
  346.  
  347. Icon_2.Name = "Icon"
  348. Icon_2.Parent = SaveMap
  349. Icon_2.BackgroundColor3 = Color3.fromRGB(255, 255, 255)
  350. Icon_2.BackgroundTransparency = 1
  351. Icon_2.Position = UDim2.new(0, 5, 0, 5)
  352. Icon_2.Size = UDim2.new(0, 20, 0, 20)
  353. Icon_2.ZIndex = 2
  354. Icon_2.Image = "rbxassetid://472636337"
  355.  
  356. Settings.Name = "Settings"
  357. Settings.Parent = SlideFrame
  358. Settings.BackgroundColor3 = Color3.fromRGB(255, 255, 255)
  359. Settings.BackgroundTransparency = 1
  360. Settings.BorderSizePixel = 0
  361. Settings.Position = UDim2.new(0, 0, 0, 30)
  362. Settings.Size = UDim2.new(0, 30, 0, 30)
  363. Settings.ZIndex = 2
  364. Settings.AutoButtonColor = false
  365. Settings.Font = Enum.Font.SourceSans
  366. Settings.Text = ""
  367. Settings.TextSize = 24
  368.  
  369. Icon_3.Name = "Icon"
  370. Icon_3.Parent = Settings
  371. Icon_3.BackgroundColor3 = Color3.fromRGB(255, 255, 255)
  372. Icon_3.BackgroundTransparency = 1
  373. Icon_3.Position = UDim2.new(0, 5, 0, 5)
  374. Icon_3.Size = UDim2.new(0, 20, 0, 20)
  375. Icon_3.ZIndex = 2
  376. Icon_3.Image = "rbxassetid://472635774"
  377.  
  378. Remotes.Name = "Remotes"
  379. Remotes.Parent = SlideFrame
  380. Remotes.BackgroundColor3 = Color3.fromRGB(255, 255, 255)
  381. Remotes.BackgroundTransparency = 1
  382. Remotes.BorderSizePixel = 0
  383. Remotes.Position = UDim2.new(0, 0, 0, 60)
  384. Remotes.Size = UDim2.new(0, 30, 0, 30)
  385. Remotes.ZIndex = 2
  386. Remotes.AutoButtonColor = false
  387. Remotes.Font = Enum.Font.SourceSans
  388. Remotes.Text = ""
  389. Remotes.TextSize = 24
  390.  
  391. Icon_4.Name = "Icon"
  392. Icon_4.Parent = Remotes
  393. Icon_4.BackgroundColor3 = Color3.fromRGB(255, 255, 255)
  394. Icon_4.BackgroundTransparency = 1
  395. Icon_4.Position = UDim2.new(0, 5, 0, 5)
  396. Icon_4.Size = UDim2.new(0, 20, 0, 20)
  397. Icon_4.ZIndex = 2
  398. Icon_4.Image = "rbxassetid://472636187"
  399.  
  400. About.Name = "About"
  401. About.Parent = SlideFrame
  402. About.BackgroundColor3 = Color3.fromRGB(255, 255, 255)
  403. About.BackgroundTransparency = 1
  404. About.BorderSizePixel = 0
  405. About.Size = UDim2.new(0, 30, 0, 30)
  406. About.ZIndex = 2
  407. About.AutoButtonColor = false
  408. About.Font = Enum.Font.SourceSans
  409. About.Text = ""
  410. About.TextSize = 24
  411.  
  412. Icon_5.Archivable = false
  413. Icon_5.Name = "Icon"
  414. Icon_5.Parent = About
  415. Icon_5.BackgroundColor3 = Color3.fromRGB(255, 255, 255)
  416. Icon_5.BackgroundTransparency = 1
  417. Icon_5.Position = UDim2.new(0, 5, 0, 5)
  418. Icon_5.Size = UDim2.new(0, 20, 0, 20)
  419. Icon_5.ZIndex = 2
  420. Icon_5.Image = "rbxassetid://476354004"
  421.  
  422. OpenScriptEditor.Name = "OpenScriptEditor"
  423. OpenScriptEditor.Parent = SideMenu
  424. OpenScriptEditor.Active = false
  425. OpenScriptEditor.BackgroundColor3 = Color3.fromRGB(43, 43, 43)
  426. OpenScriptEditor.BorderSizePixel = 0
  427. OpenScriptEditor.Position = UDim2.new(0, 0, 0, 30)
  428. OpenScriptEditor.Size = UDim2.new(0, 30, 0, 30)
  429. OpenScriptEditor.ZIndex = 2
  430. OpenScriptEditor.AutoButtonColor = false
  431. OpenScriptEditor.Font = Enum.Font.SourceSans
  432. OpenScriptEditor.Text = ""
  433. OpenScriptEditor.TextSize = 24
  434.  
  435. Icon_6.Name = "Icon"
  436. Icon_6.Parent = OpenScriptEditor
  437. Icon_6.BackgroundColor3 = Color3.fromRGB(255, 255, 255)
  438. Icon_6.BackgroundTransparency = 1
  439. Icon_6.Position = UDim2.new(0, 5, 0, 5)
  440. Icon_6.Size = UDim2.new(0, 20, 0, 20)
  441. Icon_6.ZIndex = 2
  442. Icon_6.Image = "rbxassetid://475456048"
  443. Icon_6.ImageTransparency = 1
  444.  
  445. Toggle_2.Name = "Toggle"
  446. Toggle_2.Parent = ROBLOX
  447. Toggle_2.BackgroundColor3 = Color3.fromRGB(233, 233, 233)
  448. Toggle_2.BorderColor3 = Color3.fromRGB(149, 149, 149)
  449. Toggle_2.Position = UDim2.new(1, 0, 0, 0)
  450. Toggle_2.Size = UDim2.new(0, 30, 0, 30)
  451. Toggle_2.Font = Enum.Font.SourceSans
  452. Toggle_2.Text = "<"
  453. Toggle_2.TextSize = 24
  454.  
  455. SettingsPanel.Name = "SettingsPanel"
  456. SettingsPanel.Parent = ROBLOX
  457. SettingsPanel.BackgroundColor3 = Color3.fromRGB(43, 43, 43)
  458. SettingsPanel.BorderColor3 = Color3.fromRGB(191, 191, 191)
  459. SettingsPanel.BorderSizePixel = 0
  460. SettingsPanel.Position = UDim2.new(1, 0, 0, 1)
  461. SettingsPanel.Size = UDim2.new(0, 300, 1, 0)
  462.  
  463. Header_2.Name = "Header"
  464. Header_2.Parent = SettingsPanel
  465. Header_2.BackgroundColor3 = Color3.fromRGB(43, 43, 43)
  466. Header_2.BorderColor3 = Color3.fromRGB(30, 30, 30)
  467. Header_2.Size = UDim2.new(1, 0, 0, 17)
  468.  
  469. TextLabel_2.Parent = Header_2
  470. TextLabel_2.BackgroundTransparency = 1
  471. TextLabel_2.Position = UDim2.new(0, 4, 0, 0)
  472. TextLabel_2.Size = UDim2.new(1, -4, 1, 0)
  473. TextLabel_2.Font = Enum.Font.SourceSans
  474. TextLabel_2.Text = "Settings"
  475. TextLabel_2.TextColor3 = Color3.fromRGB(255, 255, 255)
  476. TextLabel_2.TextSize = 14
  477. TextLabel_2.TextXAlignment = Enum.TextXAlignment.Left
  478.  
  479. SettingTemplate.Name = "SettingTemplate"
  480. SettingTemplate.Parent = SettingsPanel
  481. SettingTemplate.BackgroundColor3 = Color3.fromRGB(43, 43, 43)
  482. SettingTemplate.BackgroundTransparency = 1
  483. SettingTemplate.Position = UDim2.new(0, 0, 0, 18)
  484. SettingTemplate.Size = UDim2.new(1, 0, 0, 60)
  485. SettingTemplate.Visible = false
  486.  
  487. SName.Name = "SName"
  488. SName.Parent = SettingTemplate
  489. SName.BackgroundColor3 = Color3.fromRGB(255, 255, 255)
  490. SName.BackgroundTransparency = 1
  491. SName.Position = UDim2.new(0, 10, 0, 0)
  492. SName.Size = UDim2.new(1, -20, 0, 30)
  493. SName.Font = Enum.Font.SourceSans
  494. SName.Text = "SettingName"
  495. SName.TextColor3 = Color3.fromRGB(255, 255, 255)
  496. SName.TextSize = 18
  497. SName.TextXAlignment = Enum.TextXAlignment.Left
  498.  
  499. Status.Name = "Status"
  500. Status.Parent = SettingTemplate
  501. Status.BackgroundColor3 = Color3.fromRGB(255, 255, 255)
  502. Status.BackgroundTransparency = 1
  503. Status.Position = UDim2.new(0, 60, 0, 30)
  504. Status.Size = UDim2.new(0, 50, 0, 15)
  505. Status.Font = Enum.Font.SourceSans
  506. Status.Text = "Off"
  507. Status.TextColor3 = Color3.fromRGB(255, 255, 255)
  508. Status.TextSize = 18
  509. Status.TextXAlignment = Enum.TextXAlignment.Left
  510.  
  511. Change.Name = "Change"
  512. Change.Parent = SettingTemplate
  513. Change.BackgroundColor3 = Color3.fromRGB(81, 81, 81)
  514. Change.BorderSizePixel = 0
  515. Change.Position = UDim2.new(0, 10, 0, 30)
  516. Change.Size = UDim2.new(0, 40, 0, 15)
  517. Change.Font = Enum.Font.SourceSans
  518. Change.Text = ""
  519. Change.TextColor3 = Color3.fromRGB(255, 255, 255)
  520. Change.TextSize = 14
  521.  
  522. OnBar.Name = "OnBar"
  523. OnBar.Parent = Change
  524. OnBar.BackgroundColor3 = Color3.fromRGB(209, 125, 0)
  525. OnBar.BorderSizePixel = 0
  526. OnBar.Size = UDim2.new(0, 0, 0, 15)
  527. OnBar.Font = Enum.Font.SourceSans
  528. OnBar.Text = ""
  529. OnBar.TextColor3 = Color3.fromRGB(255, 255, 255)
  530. OnBar.TextSize = 14
  531.  
  532. Bar.Name = "Bar"
  533. Bar.Parent = Change
  534. Bar.BackgroundColor3 = Color3.fromRGB(255, 153, 0)
  535. Bar.BorderSizePixel = 0
  536. Bar.ClipsDescendants = true
  537. Bar.Position = UDim2.new(0, -2, 0, -2)
  538. Bar.Size = UDim2.new(0, 10, 0, 19)
  539. Bar.Font = Enum.Font.SourceSans
  540. Bar.Text = ""
  541. Bar.TextColor3 = Color3.fromRGB(255, 255, 255)
  542. Bar.TextSize = 14
  543.  
  544. SettingList.Name = "SettingList"
  545. SettingList.Parent = SettingsPanel
  546. SettingList.BackgroundColor3 = Color3.fromRGB(43, 43, 43)
  547. SettingList.BackgroundTransparency = 1
  548. SettingList.Position = UDim2.new(0, 0, 0, 17)
  549. SettingList.Size = UDim2.new(1, 0, 1, -17)
  550.  
  551. SaveInstance.Name = "SaveInstance"
  552. SaveInstance.Parent = ROBLOX
  553. SaveInstance.Active = true
  554. SaveInstance.BackgroundColor3 = Color3.fromRGB(43, 43, 43)
  555. SaveInstance.BorderColor3 = Color3.fromRGB(30, 30, 30)
  556. SaveInstance.Draggable = true
  557. SaveInstance.Position = UDim2.new(0.3, 0, 0.3, 0)
  558. SaveInstance.Size = UDim2.new(0, 350, 0, 20)
  559. SaveInstance.Visible = false
  560. SaveInstance.ZIndex = 2
  561.  
  562. Title_2.Name = "Title"
  563. Title_2.Parent = SaveInstance
  564. Title_2.BackgroundTransparency = 1
  565. Title_2.Size = UDim2.new(1, 0, 1, 0)
  566. Title_2.ZIndex = 2
  567. Title_2.Font = Enum.Font.SourceSans
  568. Title_2.Text = "Save Instance"
  569. Title_2.TextColor3 = Color3.fromRGB(255, 255, 255)
  570. Title_2.TextSize = 14
  571. Title_2.TextXAlignment = Enum.TextXAlignment.Left
  572.  
  573. MainWindow.Name = "MainWindow"
  574. MainWindow.Parent = SaveInstance
  575. MainWindow.BackgroundColor3 = Color3.fromRGB(43, 43, 43)
  576. MainWindow.BackgroundTransparency = 0.1
  577. MainWindow.BorderColor3 = Color3.fromRGB(30, 30, 30)
  578. MainWindow.Size = UDim2.new(1, 0, 0, 200)
  579.  
  580. Save.Name = "Save"
  581. Save.Parent = MainWindow
  582. Save.BackgroundColor3 = Color3.fromRGB(50, 50, 50)
  583. Save.BackgroundTransparency = 0.5
  584. Save.BorderColor3 = Color3.fromRGB(40, 40, 40)
  585. Save.Position = UDim2.new(0.075, 0, 1, -40)
  586. Save.Size = UDim2.new(0.4, 0, 0, 30)
  587. Save.Font = Enum.Font.SourceSans
  588. Save.Text = "Save"
  589. Save.TextColor3 = Color3.fromRGB(255, 255, 255)
  590. Save.TextSize = 18
  591.  
  592. Desc.Name = "Desc"
  593. Desc.Parent = MainWindow
  594. Desc.BackgroundColor3 = Color3.fromRGB(255, 255, 255)
  595. Desc.BackgroundTransparency = 1
  596. Desc.Position = UDim2.new(0, 0, 0, 20)
  597. Desc.Size = UDim2.new(1, 0, 0, 40)
  598. Desc.Font = Enum.Font.SourceSans
  599. Desc.Text = "This will save an instance to your PC. Type in the name for your instance. (.rbxmx will be added automatically.)"
  600. Desc.TextColor3 = Color3.fromRGB(255, 255, 255)
  601. Desc.TextSize = 14
  602. Desc.TextWrapped = true
  603.  
  604. Cancel.Name = "Cancel"
  605. Cancel.Parent = MainWindow
  606. Cancel.BackgroundColor3 = Color3.fromRGB(50, 50, 50)
  607. Cancel.BackgroundTransparency = 0.5
  608. Cancel.BorderColor3 = Color3.fromRGB(40, 40, 40)
  609. Cancel.Position = UDim2.new(0.524, 0, 1, -40)
  610. Cancel.Size = UDim2.new(0.4, 0, 0, 30)
  611. Cancel.Font = Enum.Font.SourceSans
  612. Cancel.Text = "Cancel"
  613. Cancel.TextColor3 = Color3.fromRGB(255, 255, 255)
  614. Cancel.TextSize = 18
  615.  
  616. FileName.Name = "FileName"
  617. FileName.Parent = MainWindow
  618. FileName.BackgroundColor3 = Color3.fromRGB(50, 50, 50)
  619. FileName.BackgroundTransparency = 0.2
  620. FileName.BorderColor3 = Color3.fromRGB(40, 40, 40)
  621. FileName.Position = UDim2.new(0.075, 0, 0.4, 0)
  622. FileName.Size = UDim2.new(0.85, 0, 0, 30)
  623. FileName.Font = Enum.Font.SourceSans
  624. FileName.Text = ""
  625. FileName.TextColor3 = Color3.fromRGB(255, 255, 255)
  626. FileName.TextSize = 18
  627. FileName.TextXAlignment = Enum.TextXAlignment.Left
  628.  
  629. SaveObjects.Name = "SaveObjects"
  630. SaveObjects.Parent = MainWindow
  631. SaveObjects.BackgroundColor3 = Color3.fromRGB(50, 50, 50)
  632. SaveObjects.BackgroundTransparency = 0.6
  633. SaveObjects.BorderColor3 = Color3.fromRGB(40, 40, 40)
  634. SaveObjects.Position = UDim2.new(0.075, 0, 0.625, 0)
  635. SaveObjects.Size = UDim2.new(0, 20, 0, 20)
  636. SaveObjects.ZIndex = 2
  637. SaveObjects.Font = Enum.Font.SourceSans
  638. SaveObjects.Text = ""
  639. SaveObjects.TextColor3 = Color3.fromRGB(255, 255, 255)
  640. SaveObjects.TextSize = 18
  641.  
  642. enabled.Name = "enabled"
  643. enabled.Parent = SaveObjects
  644. enabled.BackgroundColor3 = Color3.fromRGB(96, 96, 96)
  645. enabled.BackgroundTransparency = 0.4
  646. enabled.BorderSizePixel = 0
  647. enabled.Position = UDim2.new(0, 3, 0, 3)
  648. enabled.Size = UDim2.new(0, 14, 0, 14)
  649. enabled.Font = Enum.Font.SourceSans
  650. enabled.Text = ""
  651. enabled.TextSize = 14
  652.  
  653. Desc2.Name = "Desc2"
  654. Desc2.Parent = MainWindow
  655. Desc2.BackgroundColor3 = Color3.fromRGB(255, 255, 255)
  656. Desc2.BackgroundTransparency = 1
  657. Desc2.Position = UDim2.new(0.075, 30, 0.625, 0)
  658. Desc2.Size = UDim2.new(0.925, -30, 0, 20)
  659. Desc2.Font = Enum.Font.SourceSans
  660. Desc2.Text = "Save \"Object\" type values"
  661. Desc2.TextColor3 = Color3.fromRGB(255, 255, 255)
  662. Desc2.TextSize = 14
  663. Desc2.TextXAlignment = Enum.TextXAlignment.Left
  664.  
  665. Confirmation.Name = "Confirmation"
  666. Confirmation.Parent = ROBLOX
  667. Confirmation.Active = true
  668. Confirmation.BackgroundColor3 = Color3.fromRGB(43, 43, 43)
  669. Confirmation.BorderColor3 = Color3.fromRGB(30, 30, 30)
  670. Confirmation.Draggable = true
  671. Confirmation.Position = UDim2.new(0.3, 0, 0.349, 0)
  672. Confirmation.Size = UDim2.new(0, 350, 0, 20)
  673. Confirmation.Visible = false
  674. Confirmation.ZIndex = 3
  675.  
  676. Title_3.Name = "Title"
  677. Title_3.Parent = Confirmation
  678. Title_3.BackgroundTransparency = 1
  679. Title_3.Size = UDim2.new(1, 0, 1, 0)
  680. Title_3.ZIndex = 3
  681. Title_3.Font = Enum.Font.SourceSans
  682. Title_3.Text = "    Confirm"
  683. Title_3.TextColor3 = Color3.fromRGB(255, 255, 255)
  684. Title_3.TextSize = 14
  685. Title_3.TextXAlignment = Enum.TextXAlignment.Left
  686.  
  687. MainWindow_2.Name = "MainWindow"
  688. MainWindow_2.Parent = Confirmation
  689. MainWindow_2.BackgroundColor3 = Color3.fromRGB(55, 55, 55)
  690. MainWindow_2.BackgroundTransparency = 0.1
  691. MainWindow_2.BorderColor3 = Color3.fromRGB(40, 40, 40)
  692. MainWindow_2.Size = UDim2.new(1, 0, 0, 150)
  693. MainWindow_2.ZIndex = 2
  694.  
  695. Yes.Name = "Yes"
  696. Yes.Parent = MainWindow_2
  697. Yes.BackgroundColor3 = Color3.fromRGB(55, 55, 55)
  698. Yes.BackgroundTransparency = 0.5
  699. Yes.BorderColor3 = Color3.fromRGB(0, 0, 0)
  700. Yes.Position = UDim2.new(0.075, 0, 1, -40)
  701. Yes.Size = UDim2.new(0.4, 0, 0, 30)
  702. Yes.ZIndex = 2
  703. Yes.Font = Enum.Font.SourceSans
  704. Yes.Text = "Yes"
  705. Yes.TextColor3 = Color3.fromRGB(255, 255, 255)
  706. Yes.TextSize = 18
  707.  
  708. Desc_2.Name = "Desc"
  709. Desc_2.Parent = MainWindow_2
  710. Desc_2.BackgroundColor3 = Color3.fromRGB(55, 55, 55)
  711. Desc_2.BackgroundTransparency = 1
  712. Desc_2.Position = UDim2.new(0, 0, 0, 20)
  713. Desc_2.Size = UDim2.new(1, 0, 0, 40)
  714. Desc_2.ZIndex = 2
  715. Desc_2.Font = Enum.Font.SourceSans
  716. Desc_2.Text = "The file, FILENAME, already exists. Overwrite?"
  717. Desc_2.TextColor3 = Color3.fromRGB(255, 255, 255)
  718. Desc_2.TextSize = 14
  719. Desc_2.TextWrapped = true
  720.  
  721. No.Name = "No"
  722. No.Parent = MainWindow_2
  723. No.BackgroundColor3 = Color3.fromRGB(55, 55, 55)
  724. No.BackgroundTransparency = 0.5
  725. No.BorderColor3 = Color3.fromRGB(0, 0, 0)
  726. No.Position = UDim2.new(0.524, 0, 1, -40)
  727. No.Size = UDim2.new(0.4, 0, 0, 30)
  728. No.ZIndex = 2
  729. No.Font = Enum.Font.SourceSans
  730. No.Text = "No"
  731. No.TextColor3 = Color3.fromRGB(255, 255, 255)
  732. No.TextSize = 18
  733.  
  734. Caution.Name = "Caution"
  735. Caution.Parent = ROBLOX
  736. Caution.Active = true
  737. Caution.BackgroundColor3 = Color3.fromRGB(43, 43, 43)
  738. Caution.BorderColor3 = Color3.fromRGB(30, 30, 30)
  739. Caution.Draggable = true
  740. Caution.Position = UDim2.new(0.3, 0, 0.3, 0)
  741. Caution.Size = UDim2.new(0, 350, 0, 20)
  742. Caution.Visible = false
  743. Caution.ZIndex = 5
  744.  
  745. Title_4.Name = "Title"
  746. Title_4.Parent = Caution
  747. Title_4.BackgroundColor3 = Color3.fromRGB(30, 30, 30)
  748. Title_4.BackgroundTransparency = 1
  749. Title_4.Size = UDim2.new(1, 0, 1, 0)
  750. Title_4.ZIndex = 5
  751. Title_4.Font = Enum.Font.SourceSans
  752. Title_4.Text = "    Caution"
  753. Title_4.TextColor3 = Color3.fromRGB(255, 255, 255)
  754. Title_4.TextSize = 14
  755. Title_4.TextStrokeColor3 = Color3.fromRGB(30, 30, 30)
  756. Title_4.TextXAlignment = Enum.TextXAlignment.Left
  757.  
  758. MainWindow_3.Name = "MainWindow"
  759. MainWindow_3.Parent = Caution
  760. MainWindow_3.BackgroundColor3 = Color3.fromRGB(55, 55, 55)
  761. MainWindow_3.BackgroundTransparency = 0.1
  762. MainWindow_3.BorderColor3 = Color3.fromRGB(40, 40, 40)
  763. MainWindow_3.Size = UDim2.new(1, 0, 0, 150)
  764. MainWindow_3.ZIndex = 4
  765.  
  766. Desc_3.Name = "Desc"
  767. Desc_3.Parent = MainWindow_3
  768. Desc_3.BackgroundColor3 = Color3.fromRGB(30, 30, 30)
  769. Desc_3.BackgroundTransparency = 1
  770. Desc_3.Position = UDim2.new(0, 0, 0, 20)
  771. Desc_3.Size = UDim2.new(1, 0, 0, 42)
  772. Desc_3.ZIndex = 4
  773. Desc_3.Font = Enum.Font.SourceSans
  774. Desc_3.Text = "The file, FILENAME, already exists. Overwrite?"
  775. Desc_3.TextColor3 = Color3.fromRGB(255, 255, 255)
  776. Desc_3.TextSize = 14
  777. Desc_3.TextStrokeColor3 = Color3.fromRGB(30, 30, 30)
  778. Desc_3.TextWrapped = true
  779.  
  780. Ok.Name = "Ok"
  781. Ok.Parent = MainWindow_3
  782. Ok.BackgroundColor3 = Color3.fromRGB(30, 30, 30)
  783. Ok.BackgroundTransparency = 0.5
  784. Ok.BorderColor3 = Color3.fromRGB(0, 0, 0)
  785. Ok.Position = UDim2.new(0.3, 0, 1, -40)
  786. Ok.Size = UDim2.new(0.4, 0, 0, 30)
  787. Ok.ZIndex = 4
  788. Ok.Font = Enum.Font.SourceSans
  789. Ok.Text = "Ok"
  790. Ok.TextColor3 = Color3.fromRGB(255, 255, 255)
  791. Ok.TextSize = 18
  792. Ok.TextStrokeColor3 = Color3.fromRGB(30, 30, 30)
  793.  
  794. CallRemote.Name = "CallRemote"
  795. CallRemote.Parent = ROBLOX
  796. CallRemote.Active = true
  797. CallRemote.BackgroundColor3 = Color3.fromRGB(50, 50, 50)
  798. CallRemote.BorderColor3 = Color3.fromRGB(40, 40, 40)
  799. CallRemote.Draggable = true
  800. CallRemote.Position = UDim2.new(0.3, 0, 0.3, 0)
  801. CallRemote.Size = UDim2.new(0, 350, 0, 20)
  802. CallRemote.Visible = false
  803. CallRemote.ZIndex = 2
  804.  
  805. Title_5.Name = "Title"
  806. Title_5.Parent = CallRemote
  807. Title_5.BackgroundTransparency = 1
  808. Title_5.Size = UDim2.new(1, 0, 1, 0)
  809. Title_5.ZIndex = 2
  810. Title_5.Font = Enum.Font.SourceSans
  811. Title_5.Text = "Call Remote"
  812. Title_5.TextColor3 = Color3.fromRGB(255, 255, 255)
  813. Title_5.TextSize = 14
  814. Title_5.TextXAlignment = Enum.TextXAlignment.Left
  815.  
  816. MainWindow_4.Name = "MainWindow"
  817. MainWindow_4.Parent = CallRemote
  818. MainWindow_4.BackgroundColor3 = Color3.fromRGB(43, 43, 43)
  819. MainWindow_4.BackgroundTransparency = 0.1
  820. MainWindow_4.BorderColor3 = Color3.fromRGB(40, 40, 40)
  821. MainWindow_4.Size = UDim2.new(1, 0, 0, 200)
  822.  
  823. Desc_4.Name = "Desc"
  824. Desc_4.Parent = MainWindow_4
  825. Desc_4.BackgroundColor3 = Color3.fromRGB(40, 40, 40)
  826. Desc_4.BackgroundTransparency = 1
  827. Desc_4.BorderColor3 = Color3.fromRGB(30, 30, 30)
  828. Desc_4.Position = UDim2.new(0, 0, 0, 20)
  829. Desc_4.Size = UDim2.new(1, 0, 0, 20)
  830. Desc_4.Font = Enum.Font.SourceSans
  831. Desc_4.Text = "Arguments"
  832. Desc_4.TextColor3 = Color3.fromRGB(255, 255, 255)
  833. Desc_4.TextSize = 14
  834. Desc_4.TextWrapped = true
  835.  
  836. Arguments.Name = "Arguments"
  837. Arguments.Parent = MainWindow_4
  838. Arguments.BackgroundColor3 = Color3.fromRGB(43, 43, 43)
  839. Arguments.BackgroundTransparency = 1
  840. Arguments.BorderColor3 = Color3.fromRGB(30, 30, 30)
  841. Arguments.Position = UDim2.new(0, 0, 0, 40)
  842. Arguments.Size = UDim2.new(1, 0, 0, 80)
  843. Arguments.BottomImage = "rbxasset://textures/blackBkg_square.png"
  844. Arguments.CanvasSize = UDim2.new(0, 0, 0, 0)
  845. Arguments.MidImage = "rbxasset://textures/blackBkg_square.png"
  846. Arguments.TopImage = "rbxasset://textures/blackBkg_square.png"
  847.  
  848. DisplayReturned.Name = "DisplayReturned"
  849. DisplayReturned.Parent = MainWindow_4
  850. DisplayReturned.BackgroundColor3 = Color3.fromRGB(40, 40, 40)
  851. DisplayReturned.BackgroundTransparency = 0.6
  852. DisplayReturned.BorderColor3 = Color3.fromRGB(30, 30, 30)
  853. DisplayReturned.Position = UDim2.new(0.075, 0, 0.625, 0)
  854. DisplayReturned.Size = UDim2.new(0, 20, 0, 20)
  855. DisplayReturned.ZIndex = 2
  856. DisplayReturned.Font = Enum.Font.SourceSans
  857. DisplayReturned.Text = ""
  858. DisplayReturned.TextColor3 = Color3.fromRGB(255, 255, 255)
  859. DisplayReturned.TextSize = 18
  860.  
  861. enabled_2.Name = "enabled"
  862. enabled_2.Parent = DisplayReturned
  863. enabled_2.BackgroundColor3 = Color3.fromRGB(96, 96, 96)
  864. enabled_2.BackgroundTransparency = 0.4
  865. enabled_2.BorderSizePixel = 0
  866. enabled_2.Position = UDim2.new(0, 3, 0, 3)
  867. enabled_2.Size = UDim2.new(0, 14, 0, 14)
  868. enabled_2.Visible = false
  869. enabled_2.Font = Enum.Font.SourceSans
  870. enabled_2.Text = ""
  871. enabled_2.TextSize = 14
  872.  
  873. Desc2_2.Name = "Desc2"
  874. Desc2_2.Parent = MainWindow_4
  875. Desc2_2.BackgroundColor3 = Color3.fromRGB(40, 40, 40)
  876. Desc2_2.BackgroundTransparency = 1
  877. Desc2_2.BorderColor3 = Color3.fromRGB(30, 30, 30)
  878. Desc2_2.Position = UDim2.new(0.075, 30, 0.625, 0)
  879. Desc2_2.Size = UDim2.new(0.925, -30, 0, 20)
  880. Desc2_2.Font = Enum.Font.SourceSans
  881. Desc2_2.Text = "Display values returned"
  882. Desc2_2.TextColor3 = Color3.fromRGB(255, 255, 255)
  883. Desc2_2.TextSize = 14
  884. Desc2_2.TextXAlignment = Enum.TextXAlignment.Left
  885.  
  886. Add.Name = "Add"
  887. Add.Parent = MainWindow_4
  888. Add.BackgroundColor3 = Color3.fromRGB(40, 40, 40)
  889. Add.BackgroundTransparency = 0.5
  890. Add.BorderColor3 = Color3.fromRGB(30, 30, 30)
  891. Add.Position = UDim2.new(0.8, 0, 0.625, 0)
  892. Add.Size = UDim2.new(0, 20, 0, 20)
  893. Add.Font = Enum.Font.SourceSansBold
  894. Add.Text = "+"
  895. Add.TextColor3 = Color3.fromRGB(255, 255, 255)
  896. Add.TextSize = 24
  897.  
  898. Subtract.Name = "Subtract"
  899. Subtract.Parent = MainWindow_4
  900. Subtract.BackgroundColor3 = Color3.fromRGB(40, 40, 40)
  901. Subtract.BackgroundTransparency = 0.5
  902. Subtract.BorderColor3 = Color3.fromRGB(30, 30, 30)
  903. Subtract.Position = UDim2.new(0.899, 0, 0.625, 0)
  904. Subtract.Size = UDim2.new(0, 20, 0, 20)
  905. Subtract.Font = Enum.Font.SourceSansBold
  906. Subtract.Text = "-"
  907. Subtract.TextColor3 = Color3.fromRGB(255, 255, 255)
  908. Subtract.TextSize = 24
  909.  
  910. ArgumentTemplate.Name = "ArgumentTemplate"
  911. ArgumentTemplate.Parent = MainWindow_4
  912. ArgumentTemplate.BackgroundColor3 = Color3.fromRGB(50, 50, 50)
  913. ArgumentTemplate.BackgroundTransparency = 0.5
  914. ArgumentTemplate.BorderColor3 = Color3.fromRGB(40, 40, 40)
  915. ArgumentTemplate.Size = UDim2.new(1, 0, 0, 20)
  916. ArgumentTemplate.Visible = false
  917.  
  918. Type.Name = "Type"
  919. Type.Parent = ArgumentTemplate
  920. Type.BackgroundColor3 = Color3.fromRGB(40, 40, 40)
  921. Type.BackgroundTransparency = 0.899
  922. Type.BorderColor3 = Color3.fromRGB(30, 30, 30)
  923. Type.Size = UDim2.new(0.4, 0, 0, 20)
  924. Type.Font = Enum.Font.SourceSans
  925. Type.Text = "Script"
  926. Type.TextSize = 18
  927.  
  928. Value.Name = "Value"
  929. Value.Parent = ArgumentTemplate
  930. Value.BackgroundColor3 = Color3.fromRGB(40, 40, 40)
  931. Value.BackgroundTransparency = 0.899
  932. Value.BorderColor3 = Color3.fromRGB(30, 30, 30)
  933. Value.Position = UDim2.new(0.4, 0, 0, 0)
  934. Value.Size = UDim2.new(0.6, -12, 0, 20)
  935. Value.Font = Enum.Font.SourceSans
  936. Value.Text = ""
  937. Value.TextSize = 14
  938. Value.TextXAlignment = Enum.TextXAlignment.Left
  939.  
  940. Cancel_2.Name = "Cancel"
  941. Cancel_2.Parent = MainWindow_4
  942. Cancel_2.BackgroundColor3 = Color3.fromRGB(40, 40, 40)
  943. Cancel_2.BackgroundTransparency = 0.5
  944. Cancel_2.BorderColor3 = Color3.fromRGB(30, 30, 30)
  945. Cancel_2.Size = UDim2.new(0.4, 0, 0, 30)
  946. Cancel_2.Font = Enum.Font.SourceSans
  947. Cancel_2.Text = "Cancel"
  948. Cancel_2.TextColor3 = Color3.fromRGB(255, 255, 255)
  949. Cancel_2.TextSize = 18
  950.  
  951. Ok_2.Name = "Ok"
  952. Ok_2.Parent = MainWindow_4
  953. Ok_2.BackgroundColor3 = Color3.fromRGB(40, 40, 40)
  954. Ok_2.BackgroundTransparency = 0.5
  955. Ok_2.BorderColor3 = Color3.fromRGB(30, 30, 30)
  956. Ok_2.Position = UDim2.new(0.075, 0, 1, -40)
  957. Ok_2.Size = UDim2.new(0.4, 0, 0, 30)
  958. Ok_2.Font = Enum.Font.SourceSans
  959. Ok_2.Text = "Call"
  960. Ok_2.TextColor3 = Color3.fromRGB(255, 255, 255)
  961. Ok_2.TextSize = 18
  962.  
  963. TableCaution.Name = "TableCaution"
  964. TableCaution.Parent = ROBLOX
  965. TableCaution.Active = true
  966. TableCaution.BackgroundColor3 = Color3.fromRGB(50, 50, 50)
  967. TableCaution.BorderColor3 = Color3.fromRGB(43, 43, 43)
  968. TableCaution.Draggable = true
  969. TableCaution.Position = UDim2.new(0.3, 0, 0.3, 0)
  970. TableCaution.Size = UDim2.new(0, 350, 0, 20)
  971. TableCaution.Visible = false
  972. TableCaution.ZIndex = 2
  973.  
  974. MainWindow_5.Name = "MainWindow"
  975. MainWindow_5.Parent = TableCaution
  976. MainWindow_5.BackgroundColor3 = Color3.fromRGB(50, 50, 50)
  977. MainWindow_5.BackgroundTransparency = 0.1
  978. MainWindow_5.BorderColor3 = Color3.fromRGB(43, 43, 43)
  979. MainWindow_5.Size = UDim2.new(1, 0, 0, 150)
  980.  
  981. Ok_3.Name = "Ok"
  982. Ok_3.Parent = MainWindow_5
  983. Ok_3.BackgroundColor3 = Color3.fromRGB(43, 43, 43)
  984. Ok_3.BackgroundTransparency = 0.5
  985. Ok_3.BorderColor3 = Color3.fromRGB(30, 30, 30)
  986. Ok_3.Position = UDim2.new(0.3, 0, 1, -40)
  987. Ok_3.Size = UDim2.new(0.4, 0, 0, 30)
  988. Ok_3.Font = Enum.Font.SourceSans
  989. Ok_3.Text = "Ok"
  990. Ok_3.TextColor3 = Color3.fromRGB(255, 255, 255)
  991. Ok_3.TextSize = 18
  992.  
  993. TableResults.Name = "TableResults"
  994. TableResults.Parent = MainWindow_5
  995. TableResults.BackgroundColor3 = Color3.fromRGB(255, 255, 255)
  996. TableResults.BackgroundTransparency = 1
  997. TableResults.Position = UDim2.new(0, 0, 0, 20)
  998. TableResults.Size = UDim2.new(1, 0, 0, 80)
  999. TableResults.BottomImage = "rbxasset://textures/blackBkg_square.png"
  1000. TableResults.CanvasSize = UDim2.new(0, 0, 0, 0)
  1001. TableResults.MidImage = "rbxasset://textures/blackBkg_square.png"
  1002. TableResults.TopImage = "rbxasset://textures/blackBkg_square.png"
  1003.  
  1004. TableTemplate.Name = "TableTemplate"
  1005. TableTemplate.Parent = MainWindow_5
  1006. TableTemplate.BackgroundColor3 = Color3.fromRGB(43, 43, 43)
  1007. TableTemplate.BackgroundTransparency = 0.5
  1008. TableTemplate.BorderColor3 = Color3.fromRGB(191, 191, 191)
  1009. TableTemplate.Size = UDim2.new(1, 0, 0, 20)
  1010. TableTemplate.Visible = false
  1011.  
  1012. Type_2.Name = "Type"
  1013. Type_2.Parent = TableTemplate
  1014. Type_2.BackgroundColor3 = Color3.fromRGB(43, 43, 43)
  1015. Type_2.BackgroundTransparency = 0.899
  1016. Type_2.BorderColor3 = Color3.fromRGB(30, 30, 30)
  1017. Type_2.Size = UDim2.new(0.4, 0, 0, 20)
  1018. Type_2.Font = Enum.Font.SourceSans
  1019. Type_2.Text = "Script"
  1020. Type_2.TextColor3 = Color3.fromRGB(255, 255, 255)
  1021. Type_2.TextSize = 18
  1022.  
  1023. Value_2.Name = "Value"
  1024. Value_2.Parent = TableTemplate
  1025. Value_2.BackgroundColor3 = Color3.fromRGB(43, 43, 43)
  1026. Value_2.BackgroundTransparency = 0.899
  1027. Value_2.BorderColor3 = Color3.fromRGB(30, 30, 30)
  1028. Value_2.Position = UDim2.new(0.4, 0, 0, 0)
  1029. Value_2.Size = UDim2.new(0.6, -12, 0, 20)
  1030. Value_2.Font = Enum.Font.SourceSans
  1031. Value_2.Text = "Script"
  1032. Value_2.TextColor3 = Color3.fromRGB(255, 255, 255)
  1033. Value_2.TextSize = 14
  1034.  
  1035. Title_6.Name = "Title"
  1036. Title_6.Parent = TableCaution
  1037. Title_6.BackgroundTransparency = 1
  1038. Title_6.Size = UDim2.new(1, 0, 1, 0)
  1039. Title_6.ZIndex = 2
  1040. Title_6.Font = Enum.Font.SourceSans
  1041. Title_6.Text = "Caution"
  1042. Title_6.TextColor3 = Color3.fromRGB(255, 255, 255)
  1043. Title_6.TextSize = 14
  1044. Title_6.TextXAlignment = Enum.TextXAlignment.Left
  1045.  
  1046. ScriptEditor.Name = "ScriptEditor"
  1047. ScriptEditor.Parent = ROBLOX
  1048. ScriptEditor.Active = true
  1049. ScriptEditor.BackgroundColor3 = Color3.fromRGB(43, 43, 43)
  1050. ScriptEditor.BorderColor3 = Color3.fromRGB(30, 30, 30)
  1051. ScriptEditor.Draggable = true
  1052. ScriptEditor.Position = UDim2.new(0.3, 0, 0.3, 0)
  1053. ScriptEditor.Size = UDim2.new(0, 916, 0, 20)
  1054. ScriptEditor.Visible = false
  1055. ScriptEditor.ZIndex = 5
  1056.  
  1057. Title_7.Name = "Title"
  1058. Title_7.Parent = ScriptEditor
  1059. Title_7.BackgroundColor3 = Color3.fromRGB(43, 43, 43)
  1060. Title_7.BackgroundTransparency = 1
  1061. Title_7.Size = UDim2.new(1, 0, 1, 0)
  1062. Title_7.ZIndex = 5
  1063. Title_7.Font = Enum.Font.SourceSans
  1064. Title_7.Text = "Script Viewer"
  1065. Title_7.TextColor3 = Color3.fromRGB(255, 255, 255)
  1066. Title_7.TextSize = 14
  1067. Title_7.TextXAlignment = Enum.TextXAlignment.Left
  1068.  
  1069. Cover.Name = "Cover"
  1070. Cover.Parent = ScriptEditor
  1071. Cover.BackgroundColor3 = Color3.fromRGB(50, 50, 50)
  1072. Cover.BorderColor3 = Color3.fromRGB(30, 30, 30)
  1073. Cover.Position = UDim2.new(0, 0, 3, 0)
  1074. Cover.Size = UDim2.new(0, 916, 0, 416)
  1075.  
  1076. EditorGrid.Name = "EditorGrid"
  1077. EditorGrid.Parent = ScriptEditor
  1078. EditorGrid.Active = true
  1079. EditorGrid.BackgroundColor3 = Color3.fromRGB(43, 43, 43)
  1080. EditorGrid.BorderColor3 = Color3.fromRGB(30, 30, 30)
  1081. EditorGrid.Position = UDim2.new(0, 0, 3, 0)
  1082. EditorGrid.Size = UDim2.new(1, -16, 0, 400)
  1083.  
  1084. TopBar.Name = "TopBar"
  1085. TopBar.Parent = ScriptEditor
  1086. TopBar.BackgroundColor3 = Color3.fromRGB(40, 40, 40)
  1087. TopBar.BorderColor3 = Color3.fromRGB(30, 30, 30)
  1088. TopBar.Size = UDim2.new(1, 0, 3, 0)
  1089.  
  1090. ScriptBarLeft.Name = "ScriptBarLeft"
  1091. ScriptBarLeft.Parent = TopBar
  1092. ScriptBarLeft.Active = false
  1093. ScriptBarLeft.BackgroundColor3 = Color3.fromRGB(43, 43, 43)
  1094. ScriptBarLeft.BorderColor3 = Color3.fromRGB(30, 30, 30)
  1095. ScriptBarLeft.Position = UDim2.new(1, -32, 0, 40)
  1096. ScriptBarLeft.Size = UDim2.new(0, 16, 0, 20)
  1097. ScriptBarLeft.AutoButtonColor = false
  1098.  
  1099. ArrowGraphic.Name = "Arrow Graphic"
  1100. ArrowGraphic.Parent = ScriptBarLeft
  1101. ArrowGraphic.BackgroundTransparency = 1
  1102. ArrowGraphic.BorderSizePixel = 0
  1103. ArrowGraphic.Position = UDim2.new(0.5, -4, 0.5, -4)
  1104. ArrowGraphic.Size = UDim2.new(0, 8, 0, 8)
  1105.  
  1106. Graphic.Name = "Graphic"
  1107. Graphic.Parent = ArrowGraphic
  1108. Graphic.BackgroundColor3 = Color3.fromRGB(149, 149, 149)
  1109. Graphic.BackgroundTransparency = 0.699
  1110. Graphic.BorderSizePixel = 0
  1111. Graphic.Position = UDim2.new(0.25, 0, 0.375, 0)
  1112. Graphic.Size = UDim2.new(0.125, 0, 0.25, 0)
  1113.  
  1114. Graphic_2.Name = "Graphic"
  1115. Graphic_2.Parent = ArrowGraphic
  1116. Graphic_2.BackgroundColor3 = Color3.fromRGB(149, 149, 149)
  1117. Graphic_2.BackgroundTransparency = 0.699
  1118. Graphic_2.BorderSizePixel = 0
  1119. Graphic_2.Position = UDim2.new(0.375, 0, 0.25, 0)
  1120. Graphic_2.Size = UDim2.new(0.125, 0, 0.5, 0)
  1121.  
  1122. Graphic_3.Name = "Graphic"
  1123. Graphic_3.Parent = ArrowGraphic
  1124. Graphic_3.BackgroundColor3 = Color3.fromRGB(149, 149, 149)
  1125. Graphic_3.BackgroundTransparency = 0.699
  1126. Graphic_3.BorderSizePixel = 0
  1127. Graphic_3.Position = UDim2.new(0.5, 0, 0.125, 0)
  1128. Graphic_3.Size = UDim2.new(0.125, 0, 0.75, 0)
  1129.  
  1130. Graphic_4.Name = "Graphic"
  1131. Graphic_4.Parent = ArrowGraphic
  1132. Graphic_4.BackgroundColor3 = Color3.fromRGB(149, 149, 149)
  1133. Graphic_4.BackgroundTransparency = 0.699
  1134. Graphic_4.BorderSizePixel = 0
  1135. Graphic_4.Position = UDim2.new(0.625, 0, 0, 0)
  1136. Graphic_4.Size = UDim2.new(0.125, 0, 1, 0)
  1137.  
  1138. ScriptBarRight.Name = "ScriptBarRight"
  1139. ScriptBarRight.Parent = TopBar
  1140. ScriptBarRight.Active = false
  1141. ScriptBarRight.BackgroundColor3 = Color3.fromRGB(43, 43, 43)
  1142. ScriptBarRight.BorderColor3 = Color3.fromRGB(30, 30, 30)
  1143. ScriptBarRight.Position = UDim2.new(1, -16, 0, 40)
  1144. ScriptBarRight.Size = UDim2.new(0, 16, 0, 20)
  1145. ScriptBarRight.AutoButtonColor = false
  1146.  
  1147. ArrowGraphic_2.Name = "Arrow Graphic"
  1148. ArrowGraphic_2.Parent = ScriptBarRight
  1149. ArrowGraphic_2.BackgroundTransparency = 1
  1150. ArrowGraphic_2.BorderSizePixel = 0
  1151. ArrowGraphic_2.Position = UDim2.new(0.5, -4, 0.5, -4)
  1152. ArrowGraphic_2.Size = UDim2.new(0, 8, 0, 8)
  1153.  
  1154. Graphic_5.Name = "Graphic"
  1155. Graphic_5.Parent = ArrowGraphic_2
  1156. Graphic_5.BackgroundColor3 = Color3.fromRGB(149, 149, 149)
  1157. Graphic_5.BackgroundTransparency = 0.699
  1158. Graphic_5.BorderSizePixel = 0
  1159. Graphic_5.Position = UDim2.new(0.625, 0, 0.375, 0)
  1160. Graphic_5.Size = UDim2.new(0.125, 0, 0.25, 0)
  1161.  
  1162. Graphic_6.Name = "Graphic"
  1163. Graphic_6.Parent = ArrowGraphic_2
  1164. Graphic_6.BackgroundColor3 = Color3.fromRGB(149, 149, 149)
  1165. Graphic_6.BackgroundTransparency = 0.699
  1166. Graphic_6.BorderSizePixel = 0
  1167. Graphic_6.Position = UDim2.new(0.5, 0, 0.25, 0)
  1168. Graphic_6.Size = UDim2.new(0.125, 0, 0.5, 0)
  1169.  
  1170. Graphic_7.Name = "Graphic"
  1171. Graphic_7.Parent = ArrowGraphic_2
  1172. Graphic_7.BackgroundColor3 = Color3.fromRGB(149, 149, 149)
  1173. Graphic_7.BackgroundTransparency = 0.699
  1174. Graphic_7.BorderSizePixel = 0
  1175. Graphic_7.Position = UDim2.new(0.375, 0, 0.125, 0)
  1176. Graphic_7.Size = UDim2.new(0.125, 0, 0.75, 0)
  1177.  
  1178. Graphic_8.Name = "Graphic"
  1179. Graphic_8.Parent = ArrowGraphic_2
  1180. Graphic_8.BackgroundColor3 = Color3.fromRGB(149, 149, 149)
  1181. Graphic_8.BackgroundTransparency = 0.699
  1182. Graphic_8.BorderSizePixel = 0
  1183. Graphic_8.Position = UDim2.new(0.25, 0, 0, 0)
  1184. Graphic_8.Size = UDim2.new(0.125, 0, 1, 0)
  1185.  
  1186. Clipboard.Name = "Clipboard"
  1187. Clipboard.Parent = TopBar
  1188. Clipboard.BackgroundColor3 = Color3.fromRGB(43, 43, 43)
  1189. Clipboard.BackgroundTransparency = 0.5
  1190. Clipboard.BorderColor3 = Color3.fromRGB(0, 0, 0)
  1191. Clipboard.Position = UDim2.new(0, 0, 0, 20)
  1192. Clipboard.Size = UDim2.new(0, 80, 0, 20)
  1193. Clipboard.AutoButtonColor = false
  1194. Clipboard.Font = Enum.Font.SourceSans
  1195. Clipboard.Text = "To Clipboard"
  1196. Clipboard.TextColor3 = Color3.fromRGB(255, 255, 255)
  1197. Clipboard.TextSize = 14
  1198.  
  1199. SaveScript.Name = "SaveScript"
  1200. SaveScript.Parent = TopBar
  1201. SaveScript.BackgroundColor3 = Color3.fromRGB(43, 43, 43)
  1202. SaveScript.BackgroundTransparency = 0.5
  1203. SaveScript.BorderColor3 = Color3.fromRGB(0, 0, 0)
  1204. SaveScript.Position = UDim2.new(0, 80, 0, 20)
  1205. SaveScript.Size = UDim2.new(0, 80, 0, 20)
  1206. SaveScript.AutoButtonColor = false
  1207. SaveScript.Font = Enum.Font.SourceSans
  1208. SaveScript.Text = "Save Script"
  1209. SaveScript.TextColor3 = Color3.fromRGB(255, 255, 255)
  1210. SaveScript.TextSize = 14
  1211.  
  1212. ScriptBar.Name = "ScriptBar"
  1213. ScriptBar.Parent = TopBar
  1214. ScriptBar.BackgroundColor3 = Color3.fromRGB(30, 30, 30)
  1215. ScriptBar.BorderColor3 = Color3.fromRGB(30, 30, 30)
  1216. ScriptBar.ClipsDescendants = true
  1217. ScriptBar.Position = UDim2.new(0, 0, 0, 40)
  1218. ScriptBar.Size = UDim2.new(1, -32, 0, 20)
  1219.  
  1220. Entry.Name = "Entry"
  1221. Entry.Parent = TopBar
  1222. Entry.BackgroundColor3 = Color3.fromRGB(255, 255, 255)
  1223. Entry.BackgroundTransparency = 1
  1224. Entry.Size = UDim2.new(0, 100, 1, 0)
  1225. Entry.Visible = false
  1226.  
  1227. Button.Name = "Button"
  1228. Button.Parent = Entry
  1229. Button.BackgroundColor3 = Color3.fromRGB(90, 90, 90)
  1230. Button.BackgroundTransparency = .6
  1231. Button.BorderColor3 = Color3.fromRGB(0, 0, 0)
  1232. Button.ClipsDescendants = true
  1233. Button.Size = UDim2.new(1, 0, 1, 0)
  1234. Button.ZIndex = 4
  1235. Button.Font = Enum.Font.SourceSans
  1236. Button.Text = ""
  1237. Button.TextSize = 12
  1238. Button.TextColor3 = Color3.fromRGB(255, 255, 255);
  1239. Button.TextXAlignment = Enum.TextXAlignment.Left
  1240.  
  1241. Close.Name = "Close"
  1242. Close.Parent = Entry
  1243. Close.BackgroundColor3 = Color3.fromRGB(255, 255, 255)
  1244. Close.BackgroundTransparency = 1
  1245. Close.BorderColor3 = Color3.fromRGB(0, 0, 0)
  1246. Close.Position = UDim2.new(1, -20, 0, 0)
  1247. Close.Size = UDim2.new(0, 20, 0, 20)
  1248. Close.ZIndex = 4
  1249. Close.Font = Enum.Font.SourceSans
  1250. Close.Text = "X"
  1251. Close.TextSize = 14
  1252. Close.TextColor3 = Color3.fromRGB(255, 255, 255)
  1253.  
  1254. Close_2.Name = "Close"
  1255. Close_2.Parent = ScriptEditor
  1256. Close_2.BackgroundColor3 = Color3.fromRGB(43, 43, 43)
  1257. Close_2.BackgroundTransparency = 1
  1258. Close_2.BorderColor3 = Color3.fromRGB(0, 0, 0)
  1259. Close_2.Position = UDim2.new(1, -20, 0, 0)
  1260. Close_2.Size = UDim2.new(0, 20, 0, 20)
  1261. Close_2.ZIndex = 5
  1262. Close_2.Font = Enum.Font.SourceSans
  1263. Close_2.Text = "X"
  1264. Close_2.TextColor3 = Color3.fromRGB(255, 255, 255)
  1265. Close_2.TextSize = 14
  1266.  
  1267. IntroFrame.Name = "IntroFrame"
  1268. IntroFrame.Parent = ROBLOX
  1269. IntroFrame.BackgroundColor3 = Color3.fromRGB(43, 43, 43)
  1270. IntroFrame.BorderSizePixel = 0
  1271. IntroFrame.Position = UDim2.new(1, 30, 0, 0)
  1272. IntroFrame.Size = UDim2.new(0, 300, 1, 0)
  1273. IntroFrame.ZIndex = 2
  1274.  
  1275. Main_2.Name = "Main"
  1276. Main_2.Parent = IntroFrame
  1277. Main_2.BackgroundColor3 = Color3.fromRGB(43, 43, 43)
  1278. Main_2.BorderSizePixel = 0
  1279. Main_2.Position = UDim2.new(0, -30, 0, 0)
  1280. Main_2.Size = UDim2.new(0, 30, 0, 90)
  1281. Main_2.ZIndex = 4
  1282.  
  1283. ImageLabel.Parent = Main_2
  1284. ImageLabel.BackgroundColor3 = Color3.fromRGB(255, 255, 255)
  1285. ImageLabel.BackgroundTransparency = 1
  1286. ImageLabel.BorderSizePixel = 0
  1287. ImageLabel.Size = UDim2.new(1, 0, 1, 0)
  1288. ImageLabel.ZIndex = 5
  1289. ImageLabel.Image = "rbxassetid://969742484"
  1290. ImageLabel.ScaleType = Enum.ScaleType.Tile
  1291. ImageLabel.TileSize = UDim2.new(25, 0, 6, 0)
  1292.  
  1293. Title_8.Name = "Title"
  1294. Title_8.Parent = IntroFrame
  1295. Title_8.BackgroundColor3 = Color3.fromRGB(255, 255, 255)
  1296. Title_8.BackgroundTransparency = 1
  1297. Title_8.Position = UDim2.new(0, 100, 0, 150)
  1298. Title_8.Size = UDim2.new(0, 100, 0, 60)
  1299. Title_8.ZIndex = 4
  1300. Title_8.Font = Enum.Font.SourceSansBold
  1301. Title_8.Text = "DEX"
  1302. Title_8.TextColor3 = Color3.fromRGB(255, 255, 255)
  1303. Title_8.TextSize = 60
  1304. Title_8.TextWrapped = true
  1305.  
  1306. Version_2.Name = "Version"
  1307. Version_2.Parent = IntroFrame
  1308. Version_2.BackgroundColor3 = Color3.fromRGB(255, 255, 255)
  1309. Version_2.BackgroundTransparency = 1
  1310. Version_2.Position = UDim2.new(0, 100, 0, 210)
  1311. Version_2.Size = UDim2.new(0, 100, 0, 30)
  1312. Version_2.ZIndex = 4
  1313. Version_2.Font = Enum.Font.SourceSansBold
  1314. Version_2.Text = "V2.0.0"
  1315. Version_2.TextColor3 = Color3.fromRGB(255, 255, 255)
  1316. Version_2.TextSize = 28
  1317. Version_2.TextWrapped = true
  1318.  
  1319. Creator.Name = "Creator"
  1320. Creator.Parent = IntroFrame
  1321. Creator.BackgroundColor3 = Color3.fromRGB(255, 255, 255)
  1322. Creator.BackgroundTransparency = 1
  1323. Creator.Position = UDim2.new(0, 80, 0, 300)
  1324. Creator.Size = UDim2.new(0, 140, 0, 30)
  1325. Creator.ZIndex = 4
  1326. Creator.Font = Enum.Font.SourceSansBold
  1327. Creator.Text = ""
  1328. Creator.TextColor3 = Color3.fromRGB(255, 255, 255)
  1329. Creator.TextSize = 28
  1330. Creator.TextWrapped = true
  1331.  
  1332. BG.Name = "BG"
  1333. BG.Parent = IntroFrame
  1334. BG.BackgroundColor3 = Color3.fromRGB(255, 255, 255)
  1335. BG.BackgroundTransparency = 1
  1336. BG.BorderSizePixel = 0
  1337. BG.Size = UDim2.new(1, 0, 1, 0)
  1338. BG.ZIndex = 3
  1339. BG.Image = "rbxassetid://969742484"
  1340. BG.ScaleType = Enum.ScaleType.Tile
  1341. BG.TileSize = UDim2.new(4, 0, 1, 0)
  1342.  
  1343. Slant_2.Name = "Slant"
  1344. Slant_2.Parent = IntroFrame
  1345. Slant_2.BackgroundColor3 = Color3.fromRGB(255, 255, 255)
  1346. Slant_2.BackgroundTransparency = 1
  1347. Slant_2.BorderSizePixel = 0
  1348. Slant_2.ClipsDescendants = true
  1349. Slant_2.Position = UDim2.new(0, -27, 0, 86)
  1350. Slant_2.Rotation = 45
  1351. Slant_2.Size = UDim2.new(0, 60, 0, 30)
  1352. Slant_2.ZIndex = 3
  1353.  
  1354. ImageLabel_2.Parent = Slant_2
  1355. ImageLabel_2.BackgroundColor3 = Color3.fromRGB(255, 255, 255)
  1356. ImageLabel_2.BackgroundTransparency = 1
  1357. ImageLabel_2.BorderSizePixel = 0
  1358. ImageLabel_2.Size = UDim2.new(1, 0, 1, 0)
  1359. ImageLabel_2.ZIndex = 2
  1360. ImageLabel_2.Image = "rbxassetid://969742484"
  1361. ImageLabel_2.ScaleType = Enum.ScaleType.Tile
  1362. ImageLabel_2.TileSize = UDim2.new(25, 0, 6, 0)
  1363.  
  1364. SaveMapWindow.Name = "SaveMapWindow"
  1365. SaveMapWindow.Parent = ROBLOX
  1366. SaveMapWindow.BackgroundColor3 = Color3.fromRGB(43, 43, 43)
  1367. SaveMapWindow.BorderColor3 = Color3.fromRGB(191, 191, 191)
  1368. SaveMapWindow.BorderSizePixel = 0
  1369. SaveMapWindow.Position = UDim2.new(1, 0, 0, 1)
  1370. SaveMapWindow.Size = UDim2.new(0, 300, 1, 0)
  1371.  
  1372. Header_3.Name = "Header"
  1373. Header_3.Parent = SaveMapWindow
  1374. Header_3.BackgroundColor3 = Color3.fromRGB(43, 43, 43)
  1375. Header_3.BorderColor3 = Color3.fromRGB(30, 30, 30)
  1376. Header_3.Size = UDim2.new(1, 0, 0, 17)
  1377.  
  1378. TextLabel_3.Parent = Header_3
  1379. TextLabel_3.BackgroundTransparency = 1
  1380. TextLabel_3.Position = UDim2.new(0, 4, 0, 0)
  1381. TextLabel_3.Size = UDim2.new(1, -4, 1, 0)
  1382. TextLabel_3.Font = Enum.Font.SourceSans
  1383. TextLabel_3.Text = "Map Downloader"
  1384. TextLabel_3.TextColor3 = Color3.fromRGB(255, 255, 255)
  1385. TextLabel_3.TextSize = 14
  1386. TextLabel_3.TextXAlignment = Enum.TextXAlignment.Left
  1387.  
  1388. MapSettings.Name = "MapSettings"
  1389. MapSettings.Parent = SaveMapWindow
  1390. MapSettings.BackgroundColor3 = Color3.fromRGB(43, 43, 43)
  1391. MapSettings.BackgroundTransparency = 1
  1392. MapSettings.BorderSizePixel = 0
  1393. MapSettings.Position = UDim2.new(0, 0, 0, 200)
  1394. MapSettings.Size = UDim2.new(1, 0, 0, 240)
  1395.  
  1396. Terrain.Name = "Terrain"
  1397. Terrain.Parent = MapSettings
  1398. Terrain.BackgroundColor3 = Color3.fromRGB(43, 43, 43)
  1399. Terrain.BackgroundTransparency = 1
  1400. Terrain.BorderSizePixel = 0
  1401. Terrain.Position = UDim2.new(0, 0, 0, 60)
  1402. Terrain.Size = UDim2.new(1, 0, 0, 60)
  1403.  
  1404. SName_2.Name = "SName"
  1405. SName_2.Parent = Terrain
  1406. SName_2.BackgroundColor3 = Color3.fromRGB(255, 255, 255)
  1407. SName_2.BackgroundTransparency = 1
  1408. SName_2.BorderColor3 = Color3.fromRGB(40, 40, 40)
  1409. SName_2.Position = UDim2.new(0, 10, 0, 0)
  1410. SName_2.Size = UDim2.new(1, -20, 0, 30)
  1411. SName_2.Font = Enum.Font.SourceSans
  1412. SName_2.Text = "Save Terrain"
  1413. SName_2.TextColor3 = Color3.fromRGB(255, 255, 255)
  1414. SName_2.TextSize = 18
  1415. SName_2.TextXAlignment = Enum.TextXAlignment.Left
  1416.  
  1417. Status_2.Name = "Status"
  1418. Status_2.Parent = Terrain
  1419. Status_2.BackgroundColor3 = Color3.fromRGB(255, 255, 255)
  1420. Status_2.BackgroundTransparency = 1
  1421. Status_2.BorderColor3 = Color3.fromRGB(40, 40, 40)
  1422. Status_2.Position = UDim2.new(0, 60, 0, 30)
  1423. Status_2.Size = UDim2.new(0, 50, 0, 15)
  1424. Status_2.Font = Enum.Font.SourceSans
  1425. Status_2.Text = "Off"
  1426. Status_2.TextColor3 = Color3.fromRGB(255, 255, 255)
  1427. Status_2.TextSize = 18
  1428. Status_2.TextXAlignment = Enum.TextXAlignment.Left
  1429.  
  1430. Change_2.Name = "Change"
  1431. Change_2.Parent = Terrain
  1432. Change_2.BackgroundColor3 = Color3.fromRGB(81, 81, 81)
  1433. Change_2.BorderColor3 = Color3.fromRGB(40, 40, 40)
  1434. Change_2.BorderSizePixel = 0
  1435. Change_2.Position = UDim2.new(0, 10, 0, 30)
  1436. Change_2.Size = UDim2.new(0, 40, 0, 15)
  1437. Change_2.Font = Enum.Font.SourceSans
  1438. Change_2.Text = ""
  1439. Change_2.TextColor3 = Color3.fromRGB(255, 255, 255)
  1440. Change_2.TextSize = 14
  1441.  
  1442. OnBar_2.Name = "OnBar"
  1443. OnBar_2.Parent = Change_2
  1444. OnBar_2.BackgroundColor3 = Color3.fromRGB(209, 125, 0)
  1445. OnBar_2.BorderSizePixel = 0
  1446. OnBar_2.Size = UDim2.new(0, 0, 0, 15)
  1447. OnBar_2.Font = Enum.Font.SourceSans
  1448. OnBar_2.Text = ""
  1449. OnBar_2.TextSize = 14
  1450.  
  1451. Bar_2.Name = "Bar"
  1452. Bar_2.Parent = Change_2
  1453. Bar_2.BackgroundColor3 = Color3.fromRGB(255, 153, 0)
  1454. Bar_2.BorderSizePixel = 0
  1455. Bar_2.ClipsDescendants = true
  1456. Bar_2.Position = UDim2.new(0, -2, 0, -2)
  1457. Bar_2.Size = UDim2.new(0, 10, 0, 19)
  1458. Bar_2.Font = Enum.Font.SourceSans
  1459. Bar_2.Text = ""
  1460. Bar_2.TextSize = 14
  1461.  
  1462. Lighting.Name = "Lighting"
  1463. Lighting.Parent = MapSettings
  1464. Lighting.BackgroundColor3 = Color3.fromRGB(43, 43, 43)
  1465. Lighting.BackgroundTransparency = 1
  1466. Lighting.BorderSizePixel = 0
  1467. Lighting.Position = UDim2.new(0, 0, 0, 120)
  1468. Lighting.Size = UDim2.new(1, 0, 0, 60)
  1469.  
  1470. SName_3.Name = "SName"
  1471. SName_3.Parent = Lighting
  1472. SName_3.BackgroundColor3 = Color3.fromRGB(255, 255, 255)
  1473. SName_3.BackgroundTransparency = 1
  1474. SName_3.BorderColor3 = Color3.fromRGB(40, 40, 40)
  1475. SName_3.Position = UDim2.new(0, 10, 0, 0)
  1476. SName_3.Size = UDim2.new(1, -20, 0, 30)
  1477. SName_3.Font = Enum.Font.SourceSans
  1478. SName_3.Text = "Lighting Properties"
  1479. SName_3.TextColor3 = Color3.fromRGB(255, 255, 255)
  1480. SName_3.TextSize = 18
  1481. SName_3.TextXAlignment = Enum.TextXAlignment.Left
  1482.  
  1483. Status_3.Name = "Status"
  1484. Status_3.Parent = Lighting
  1485. Status_3.BackgroundColor3 = Color3.fromRGB(255, 255, 255)
  1486. Status_3.BackgroundTransparency = 1
  1487. Status_3.BorderColor3 = Color3.fromRGB(40, 40, 40)
  1488. Status_3.Position = UDim2.new(0, 60, 0, 30)
  1489. Status_3.Size = UDim2.new(0, 50, 0, 15)
  1490. Status_3.Font = Enum.Font.SourceSans
  1491. Status_3.Text = "Off"
  1492. Status_3.TextColor3 = Color3.fromRGB(255, 255, 255)
  1493. Status_3.TextSize = 18
  1494. Status_3.TextXAlignment = Enum.TextXAlignment.Left
  1495.  
  1496. Change_3.Name = "Change"
  1497. Change_3.Parent = Lighting
  1498. Change_3.BackgroundColor3 = Color3.fromRGB(81, 81, 81)
  1499. Change_3.BorderColor3 = Color3.fromRGB(40, 40, 40)
  1500. Change_3.BorderSizePixel = 0
  1501. Change_3.Position = UDim2.new(0, 10, 0, 30)
  1502. Change_3.Size = UDim2.new(0, 40, 0, 15)
  1503. Change_3.Font = Enum.Font.SourceSans
  1504. Change_3.Text = ""
  1505. Change_3.TextColor3 = Color3.fromRGB(255, 255, 255)
  1506. Change_3.TextSize = 14
  1507.  
  1508. OnBar_3.Name = "OnBar"
  1509. OnBar_3.Parent = Change_3
  1510. OnBar_3.BackgroundColor3 = Color3.fromRGB(209, 125, 0)
  1511. OnBar_3.BorderSizePixel = 0
  1512. OnBar_3.Size = UDim2.new(0, 0, 0, 15)
  1513. OnBar_3.Font = Enum.Font.SourceSans
  1514. OnBar_3.Text = ""
  1515. OnBar_3.TextSize = 14
  1516.  
  1517. Bar_3.Name = "Bar"
  1518. Bar_3.Parent = Change_3
  1519. Bar_3.BackgroundColor3 = Color3.fromRGB(255, 153, 0)
  1520. Bar_3.BorderSizePixel = 0
  1521. Bar_3.ClipsDescendants = true
  1522. Bar_3.Position = UDim2.new(0, -2, 0, -2)
  1523. Bar_3.Size = UDim2.new(0, 10, 0, 19)
  1524. Bar_3.Font = Enum.Font.SourceSans
  1525. Bar_3.Text = ""
  1526. Bar_3.TextSize = 14
  1527.  
  1528. CameraInstances.Name = "CameraInstances"
  1529. CameraInstances.Parent = MapSettings
  1530. CameraInstances.BackgroundColor3 = Color3.fromRGB(43, 43, 43)
  1531. CameraInstances.BackgroundTransparency = 1
  1532. CameraInstances.BorderSizePixel = 0
  1533. CameraInstances.Position = UDim2.new(0, 0, 0, 180)
  1534. CameraInstances.Size = UDim2.new(1, 0, 0, 60)
  1535.  
  1536. SName_4.Name = "SName"
  1537. SName_4.Parent = CameraInstances
  1538. SName_4.BackgroundColor3 = Color3.fromRGB(255, 255, 255)
  1539. SName_4.BackgroundTransparency = 1
  1540. SName_4.BorderColor3 = Color3.fromRGB(40, 40, 40)
  1541. SName_4.Position = UDim2.new(0, 10, 0, 0)
  1542. SName_4.Size = UDim2.new(1, -20, 0, 30)
  1543. SName_4.Font = Enum.Font.SourceSans
  1544. SName_4.Text = "Camera Instances"
  1545. SName_4.TextColor3 = Color3.fromRGB(255, 255, 255)
  1546. SName_4.TextSize = 18
  1547. SName_4.TextXAlignment = Enum.TextXAlignment.Left
  1548.  
  1549. Status_4.Name = "Status"
  1550. Status_4.Parent = CameraInstances
  1551. Status_4.BackgroundColor3 = Color3.fromRGB(255, 255, 255)
  1552. Status_4.BackgroundTransparency = 1
  1553. Status_4.BorderColor3 = Color3.fromRGB(40, 40, 40)
  1554. Status_4.Position = UDim2.new(0, 60, 0, 30)
  1555. Status_4.Size = UDim2.new(0, 50, 0, 15)
  1556. Status_4.Font = Enum.Font.SourceSans
  1557. Status_4.Text = "Off"
  1558. Status_4.TextColor3 = Color3.fromRGB(255, 255, 255)
  1559. Status_4.TextSize = 18
  1560. Status_4.TextXAlignment = Enum.TextXAlignment.Left
  1561.  
  1562. Change_4.Name = "Change"
  1563. Change_4.Parent = CameraInstances
  1564. Change_4.BackgroundColor3 = Color3.fromRGB(81, 81, 81)
  1565. Change_4.BorderColor3 = Color3.fromRGB(40, 40, 40)
  1566. Change_4.BorderSizePixel = 0
  1567. Change_4.Position = UDim2.new(0, 10, 0, 30)
  1568. Change_4.Size = UDim2.new(0, 40, 0, 15)
  1569. Change_4.Font = Enum.Font.SourceSans
  1570. Change_4.Text = ""
  1571. Change_4.TextColor3 = Color3.fromRGB(255, 255, 255)
  1572. Change_4.TextSize = 14
  1573.  
  1574. OnBar_4.Name = "OnBar"
  1575. OnBar_4.Parent = Change_4
  1576. OnBar_4.BackgroundColor3 = Color3.fromRGB(209, 125, 0)
  1577. OnBar_4.BorderSizePixel = 0
  1578. OnBar_4.Size = UDim2.new(0, 0, 0, 15)
  1579. OnBar_4.Font = Enum.Font.SourceSans
  1580. OnBar_4.Text = ""
  1581. OnBar_4.TextSize = 14
  1582.  
  1583. Bar_4.Name = "Bar"
  1584. Bar_4.Parent = Change_4
  1585. Bar_4.BackgroundColor3 = Color3.fromRGB(255, 153, 0)
  1586. Bar_4.BorderSizePixel = 0
  1587. Bar_4.ClipsDescendants = true
  1588. Bar_4.Position = UDim2.new(0, -2, 0, -2)
  1589. Bar_4.Size = UDim2.new(0, 10, 0, 19)
  1590. Bar_4.Font = Enum.Font.SourceSans
  1591. Bar_4.Text = ""
  1592. Bar_4.TextSize = 14
  1593.  
  1594. Scripts.Name = "Scripts"
  1595. Scripts.Parent = MapSettings
  1596. Scripts.BackgroundColor3 = Color3.fromRGB(43, 43, 43)
  1597. Scripts.BackgroundTransparency = 1
  1598. Scripts.BorderSizePixel = 0
  1599. Scripts.Size = UDim2.new(1, 0, 0, 60)
  1600.  
  1601. SName_5.Name = "SName"
  1602. SName_5.Parent = Scripts
  1603. SName_5.BackgroundColor3 = Color3.fromRGB(255, 255, 255)
  1604. SName_5.BackgroundTransparency = 1
  1605. SName_5.BorderColor3 = Color3.fromRGB(40, 40, 40)
  1606. SName_5.Position = UDim2.new(0, 10, 0, 0)
  1607. SName_5.Size = UDim2.new(1, -20, 0, 30)
  1608. SName_5.Font = Enum.Font.SourceSans
  1609. SName_5.Text = "Save Scripts"
  1610. SName_5.TextColor3 = Color3.fromRGB(255, 255, 255)
  1611. SName_5.TextSize = 18
  1612. SName_5.TextXAlignment = Enum.TextXAlignment.Left
  1613.  
  1614. Status_5.Name = "Status"
  1615. Status_5.Parent = Scripts
  1616. Status_5.BackgroundColor3 = Color3.fromRGB(255, 255, 255)
  1617. Status_5.BackgroundTransparency = 1
  1618. Status_5.BorderColor3 = Color3.fromRGB(40, 40, 40)
  1619. Status_5.Position = UDim2.new(0, 60, 0, 30)
  1620. Status_5.Size = UDim2.new(0, 50, 0, 15)
  1621. Status_5.Font = Enum.Font.SourceSans
  1622. Status_5.Text = "Off"
  1623. Status_5.TextColor3 = Color3.fromRGB(255, 255, 255)
  1624. Status_5.TextSize = 18
  1625. Status_5.TextXAlignment = Enum.TextXAlignment.Left
  1626.  
  1627. Change_5.Name = "Change"
  1628. Change_5.Parent = Scripts
  1629. Change_5.BackgroundColor3 = Color3.fromRGB(81, 81, 81)
  1630. Change_5.BorderColor3 = Color3.fromRGB(40, 40, 40)
  1631. Change_5.BorderSizePixel = 0
  1632. Change_5.Position = UDim2.new(0, 10, 0, 30)
  1633. Change_5.Size = UDim2.new(0, 40, 0, 15)
  1634. Change_5.Font = Enum.Font.SourceSans
  1635. Change_5.Text = ""
  1636. Change_5.TextColor3 = Color3.fromRGB(255, 255, 255)
  1637. Change_5.TextSize = 14
  1638.  
  1639. OnBar_5.Name = "OnBar"
  1640. OnBar_5.Parent = Change_5
  1641. OnBar_5.BackgroundColor3 = Color3.fromRGB(209, 125, 0)
  1642. OnBar_5.BorderSizePixel = 0
  1643. OnBar_5.Size = UDim2.new(0, 0, 0, 15)
  1644. OnBar_5.Font = Enum.Font.SourceSans
  1645. OnBar_5.Text = ""
  1646. OnBar_5.TextSize = 14
  1647.  
  1648. Bar_5.Name = "Bar"
  1649. Bar_5.Parent = Change_5
  1650. Bar_5.BackgroundColor3 = Color3.fromRGB(255, 153, 0)
  1651. Bar_5.BorderSizePixel = 0
  1652. Bar_5.ClipsDescendants = true
  1653. Bar_5.Position = UDim2.new(0, -2, 0, -2)
  1654. Bar_5.Size = UDim2.new(0, 10, 0, 19)
  1655. Bar_5.Font = Enum.Font.SourceSans
  1656. Bar_5.Text = ""
  1657. Bar_5.TextSize = 14
  1658.  
  1659. ToSave.Name = "ToSave"
  1660. ToSave.Parent = SaveMapWindow
  1661. ToSave.BackgroundColor3 = Color3.fromRGB(43, 43, 43)
  1662. ToSave.BackgroundTransparency = 1
  1663. ToSave.Position = UDim2.new(0, 0, 0, 17)
  1664. ToSave.Size = UDim2.new(1, 0, 0, 20)
  1665. ToSave.Font = Enum.Font.SourceSans
  1666. ToSave.Text = "To Save"
  1667. ToSave.TextColor3 = Color3.fromRGB(255, 255, 255)
  1668. ToSave.TextSize = 18
  1669.  
  1670. CopyList.Name = "CopyList"
  1671. CopyList.Parent = SaveMapWindow
  1672. CopyList.BackgroundColor3 = Color3.fromRGB(43, 43, 43)
  1673. CopyList.BackgroundTransparency = 0.4
  1674. CopyList.BorderSizePixel = 0
  1675. CopyList.Position = UDim2.new(0, 0, 0, 37)
  1676. CopyList.Size = UDim2.new(1, 0, 0, 163)
  1677.  
  1678. Bottom.Name = "Bottom"
  1679. Bottom.Parent = SaveMapWindow
  1680. Bottom.BackgroundColor3 = Color3.fromRGB(35, 35, 35)
  1681. Bottom.BorderColor3 = Color3.fromRGB(30, 30, 30)
  1682. Bottom.BorderSizePixel = 0
  1683. Bottom.Position = UDim2.new(0, 0, 1, -50)
  1684. Bottom.Size = UDim2.new(1, 0, 0, 50)
  1685.  
  1686. TextLabel_4.Parent = Bottom
  1687. TextLabel_4.BackgroundTransparency = 1
  1688. TextLabel_4.Position = UDim2.new(0, 4, 0, 0)
  1689. TextLabel_4.Size = UDim2.new(1, -4, 1, 0)
  1690. TextLabel_4.Font = Enum.Font.SourceSans
  1691. TextLabel_4.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."
  1692. TextLabel_4.TextColor3 = Color3.fromRGB(255, 255, 255)
  1693. TextLabel_4.TextSize = 14
  1694. TextLabel_4.TextWrapped = true
  1695. TextLabel_4.TextXAlignment = Enum.TextXAlignment.Left
  1696. TextLabel_4.TextYAlignment = Enum.TextYAlignment.Top
  1697.  
  1698. Save_2.Name = "Save"
  1699. Save_2.Parent = SaveMapWindow
  1700. Save_2.BackgroundColor3 = Color3.fromRGB(40, 40, 40)
  1701. Save_2.BackgroundTransparency = 0.4
  1702. Save_2.BorderColor3 = Color3.fromRGB(0, 0, 0)
  1703. Save_2.BorderSizePixel = 0
  1704. Save_2.Position = UDim2.new(0, 0, 1, -80)
  1705. Save_2.Size = UDim2.new(1, 0, 0, 30)
  1706. Save_2.Font = Enum.Font.SourceSans
  1707. Save_2.Text = "Save"
  1708. Save_2.TextColor3 = Color3.fromRGB(255, 255, 255)
  1709. Save_2.TextSize = 18
  1710.  
  1711. FileName_2.Name = "FileName"
  1712. FileName_2.Parent = SaveMapWindow
  1713. FileName_2.BackgroundColor3 = Color3.fromRGB(43, 43, 43)
  1714. FileName_2.BackgroundTransparency = 0.4
  1715. FileName_2.BorderSizePixel = 0
  1716. FileName_2.Position = UDim2.new(0, 0, 1, -105)
  1717. FileName_2.Size = UDim2.new(1, 0, 0, 25)
  1718. FileName_2.Font = Enum.Font.SourceSans
  1719. FileName_2.Text = "   PlaceName"
  1720. FileName_2.TextColor3 = Color3.fromRGB(255, 255, 255)
  1721. FileName_2.TextSize = 18
  1722. FileName_2.TextXAlignment = Enum.TextXAlignment.Left
  1723.  
  1724. Entry_2.Name = "Entry"
  1725. Entry_2.Parent = SaveMapWindow
  1726. Entry_2.BackgroundColor3 = Color3.fromRGB(43, 43, 43)
  1727. Entry_2.BackgroundTransparency = 1
  1728. Entry_2.BorderSizePixel = 0
  1729. Entry_2.Size = UDim2.new(1, 0, 0, 22)
  1730. Entry_2.Visible = false
  1731.  
  1732. Change_6.Name = "Change"
  1733. Change_6.Parent = Entry_2
  1734. Change_6.BackgroundColor3 = Color3.fromRGB(255, 149, 0)
  1735. Change_6.BackgroundTransparency = 0.6
  1736. Change_6.Position = UDim2.new(0, 10, 0, 1)
  1737. Change_6.Size = UDim2.new(0, 20, 0, 20)
  1738. Change_6.ZIndex = 2
  1739. Change_6.Font = Enum.Font.SourceSans
  1740. Change_6.Text = ""
  1741. Change_6.TextColor3 = Color3.fromRGB(255, 255, 255)
  1742. Change_6.TextSize = 18
  1743.  
  1744. enabled_3.Name = "enabled"
  1745. enabled_3.Parent = Change_6
  1746. enabled_3.BackgroundColor3 = Color3.fromRGB(209, 125, 0)
  1747. enabled_3.BackgroundTransparency = 0.4
  1748. enabled_3.BorderSizePixel = 0
  1749. enabled_3.Position = UDim2.new(0, 3, 0, 3)
  1750. enabled_3.Size = UDim2.new(0, 14, 0, 14)
  1751. enabled_3.Font = Enum.Font.SourceSans
  1752. enabled_3.Text = ""
  1753. enabled_3.TextColor3 = Color3.fromRGB(255, 255, 255)
  1754. enabled_3.TextSize = 14
  1755.  
  1756. Info.Name = "Info"
  1757. Info.Parent = Entry_2
  1758. Info.BackgroundTransparency = 1
  1759. Info.Position = UDim2.new(0, 40, 0, 0)
  1760. Info.Size = UDim2.new(1, -40, 0, 22)
  1761. Info.Font = Enum.Font.SourceSans
  1762. Info.Text = "Workspace"
  1763. Info.TextColor3 = Color3.fromRGB(255, 255, 255)
  1764. Info.TextSize = 18
  1765. Info.TextXAlignment = Enum.TextXAlignment.Left
  1766.  
  1767. RemoteDebugWindow.Name = "RemoteDebugWindow"
  1768. RemoteDebugWindow.Parent = ROBLOX
  1769. RemoteDebugWindow.BackgroundColor3 = Color3.fromRGB(43, 43, 43)
  1770. RemoteDebugWindow.BorderColor3 = Color3.fromRGB(191, 191, 191)
  1771. RemoteDebugWindow.BorderSizePixel = 0
  1772. RemoteDebugWindow.Position = UDim2.new(1, 0, 0, 1)
  1773. RemoteDebugWindow.Size = UDim2.new(0, 300, 1, 0)
  1774.  
  1775. Header_4.Name = "Header"
  1776. Header_4.Parent = RemoteDebugWindow
  1777. Header_4.BackgroundColor3 = Color3.fromRGB(43, 43, 43)
  1778. Header_4.BorderColor3 = Color3.fromRGB(30, 30, 30)
  1779. Header_4.Size = UDim2.new(1, 0, 0, 17)
  1780.  
  1781. TextLabel_5.Parent = Header_4
  1782. TextLabel_5.BackgroundTransparency = 1
  1783. TextLabel_5.Position = UDim2.new(0, 4, 0, 0)
  1784. TextLabel_5.Size = UDim2.new(1, -4, 1, 0)
  1785. TextLabel_5.Font = Enum.Font.SourceSans
  1786. TextLabel_5.Text = "Remote Debugger"
  1787. TextLabel_5.TextColor3 = Color3.fromRGB(255, 255, 255)
  1788. TextLabel_5.TextSize = 14
  1789. TextLabel_5.TextXAlignment = Enum.TextXAlignment.Left
  1790.  
  1791. Desc_5.Name = "Desc"
  1792. Desc_5.Parent = RemoteDebugWindow
  1793. Desc_5.BackgroundColor3 = Color3.fromRGB(255, 255, 255)
  1794. Desc_5.BackgroundTransparency = 1
  1795. Desc_5.Position = UDim2.new(0, 0, 0, 20)
  1796. Desc_5.Size = UDim2.new(1, 0, 0, 40)
  1797. Desc_5.Font = Enum.Font.SourceSans
  1798. Desc_5.Text = "Have fun with remotes"
  1799. Desc_5.TextColor3 = Color3.fromRGB(255, 255, 255)
  1800. Desc_5.TextSize = 32
  1801. Desc_5.TextWrapped = true
  1802.  
  1803. AboutWindow.Name = "AboutWindow"
  1804. AboutWindow.Parent = ROBLOX
  1805. AboutWindow.BackgroundColor3 = Color3.fromRGB(43, 43, 43)
  1806. AboutWindow.BorderColor3 = Color3.fromRGB(191, 191, 191)
  1807. AboutWindow.BorderSizePixel = 0
  1808. AboutWindow.Position = UDim2.new(1, 0, 0, 1)
  1809. AboutWindow.Size = UDim2.new(0, 300, 1, 0)
  1810.  
  1811. Header_5.Name = "Header"
  1812. Header_5.Parent = AboutWindow
  1813. Header_5.BackgroundColor3 = Color3.fromRGB(43, 43, 43)
  1814. Header_5.BorderColor3 = Color3.fromRGB(30, 30, 30)
  1815. Header_5.Size = UDim2.new(1, 0, 0, 17)
  1816.  
  1817. TextLabel_6.Parent = Header_5
  1818. TextLabel_6.BackgroundTransparency = 1
  1819. TextLabel_6.Position = UDim2.new(0, 4, 0, 0)
  1820. TextLabel_6.Size = UDim2.new(1, -4, 1, 0)
  1821. TextLabel_6.Font = Enum.Font.SourceSans
  1822. TextLabel_6.Text = "About"
  1823. TextLabel_6.TextColor3 = Color3.fromRGB(255, 255, 255)
  1824. TextLabel_6.TextSize = 14
  1825. TextLabel_6.TextXAlignment = Enum.TextXAlignment.Left
  1826.  
  1827. Desc_6.Name = "Desc"
  1828. Desc_6.Parent = AboutWindow
  1829. Desc_6.BackgroundColor3 = Color3.fromRGB(255, 255, 255)
  1830. Desc_6.BackgroundTransparency = 1
  1831. Desc_6.Position = UDim2.new(0.1, 0, 0.1, 0)
  1832. Desc_6.Size = UDim2.new(0.8, 0, 0, 200)
  1833. Desc_6.Font = Enum.Font.SourceSans
  1834. Desc_6.Text = "Dex v2.0"
  1835. Desc_6.TextColor3 = Color3.fromRGB(255, 255, 255)
  1836. Desc_6.TextSize = 24
  1837. Desc_6.TextWrapped = true
  1838.  
  1839. local NewGuiPart153 = Instance.new("BindableFunction")
  1840. local NewGuiPart154 = Instance.new("BindableFunction")
  1841. local NewGuiPart155 = Instance.new("BindableFunction")
  1842. local NewGuiPart156 = Instance.new("BindableFunction")
  1843. local NewGuiPart157 = Instance.new("BindableEvent")
  1844. local NewGuiPart158 = Instance.new("BindableFunction")
  1845. local NewGuiPart159 = Instance.new("BindableFunction")
  1846. local NewGuiPart160 = Instance.new("BindableEvent")
  1847. local NewGuiPart161 = Instance.new("BindableFunction")
  1848. local NewGuiPart162 = Instance.new("BindableFunction")
  1849. local NewGuiPart163 = Instance.new("BindableEvent")
  1850.  
  1851. NewGuiPart158.Name = "GetApi"
  1852. NewGuiPart158.Parent = PropertiesFrame
  1853. NewGuiPart158.Archivable = true
  1854.  
  1855. NewGuiPart159.Name = "GetAwaiting"
  1856. NewGuiPart159.Parent = PropertiesFrame
  1857. NewGuiPart159.Archivable = true
  1858.  
  1859. NewGuiPart160.Name = "SetAwaiting"
  1860. NewGuiPart160.Parent = PropertiesFrame
  1861. NewGuiPart160.Archivable = true
  1862.  
  1863. NewGuiPart153.Name = "GetOption"
  1864. NewGuiPart153.Parent = ExplorerPanel
  1865. NewGuiPart153.Archivable = true
  1866.  
  1867. NewGuiPart154.Name = "GetSelection"
  1868. NewGuiPart154.Parent = ExplorerPanel
  1869. NewGuiPart154.Archivable = true
  1870.  
  1871. NewGuiPart155.Name = "SetOption"
  1872. NewGuiPart155.Parent = ExplorerPanel
  1873. NewGuiPart155.Archivable = true
  1874.  
  1875. NewGuiPart156.Name = "SetSelection"
  1876. NewGuiPart156.Parent = ExplorerPanel
  1877. NewGuiPart156.Archivable = true
  1878.  
  1879. NewGuiPart157.Name = "SelectionChanged"
  1880. NewGuiPart157.Parent = ExplorerPanel
  1881. NewGuiPart157.Archivable = true
  1882.  
  1883. NewGuiPart161.Name = "GetSetting"
  1884. NewGuiPart161.Parent = RemoteDebugWindow
  1885. NewGuiPart161.Archivable = true
  1886.  
  1887. NewGuiPart162.Name = "GetSetting"
  1888. NewGuiPart162.Parent = SettingsPanel
  1889. NewGuiPart162.Archivable = true
  1890.  
  1891. NewGuiPart163.Name = "OpenScript"
  1892. NewGuiPart163.Parent = ScriptEditor
  1893. NewGuiPart163.Archivable = true
  1894.  
  1895. return ROBLOX
  1896. end
  1897.  
  1898. local D_E_X = CreateGui()
  1899. D_E_X.Parent = game.CoreGui.RobloxGui;
  1900.  
  1901. spawn(function()
  1902.  
  1903. local Gui = D_E_X
  1904.  
  1905. local IntroFrame = Gui:WaitForChild("IntroFrame")
  1906.  
  1907. local SideMenu = Gui:WaitForChild("SideMenu")
  1908. local OpenToggleButton = Gui:WaitForChild("Toggle")
  1909. local CloseToggleButton = SideMenu:WaitForChild("Toggle")
  1910. local OpenScriptEditorButton = SideMenu:WaitForChild("OpenScriptEditor")
  1911.  
  1912. local ScriptEditor = Gui:WaitForChild("ScriptEditor")
  1913.  
  1914. local SlideOut = SideMenu:WaitForChild("SlideOut")
  1915. local SlideFrame = SlideOut:WaitForChild("SlideFrame")
  1916. local Slant = SideMenu:WaitForChild("Slant")
  1917.  
  1918. local ExplorerButton = SlideFrame:WaitForChild("Explorer")
  1919. local SettingsButton = SlideFrame:WaitForChild("Settings")
  1920.  
  1921. local SelectionBox = Instance.new("SelectionBox")
  1922. SelectionBox.Parent = Gui
  1923.  
  1924. local ExplorerPanel = Gui:WaitForChild("ExplorerPanel")
  1925. local PropertiesFrame = Gui:WaitForChild("PropertiesFrame")
  1926. local SaveMapWindow = Gui:WaitForChild("SaveMapWindow")
  1927. local RemoteDebugWindow = Gui:WaitForChild("RemoteDebugWindow")
  1928. local AboutWindow = Gui:WaitForChild("AboutWindow")
  1929.  
  1930. local SettingsPanel = Gui:WaitForChild("SettingsPanel")
  1931. local SettingsListener = SettingsPanel:WaitForChild("GetSetting")
  1932. local SettingTemplate = SettingsPanel:WaitForChild("SettingTemplate")
  1933. local SettingList = SettingsPanel:WaitForChild("SettingList")
  1934.  
  1935. local SaveMapCopyList = SaveMapWindow:WaitForChild("CopyList")
  1936. local SaveMapSettingFrame = SaveMapWindow:WaitForChild("MapSettings")
  1937. local SaveMapName = SaveMapWindow:WaitForChild("FileName")
  1938. local SaveMapButton = SaveMapWindow:WaitForChild("Save")
  1939. local SaveMapCopyTemplate = SaveMapWindow:WaitForChild("Entry")
  1940. local SaveMapSettings = {
  1941.         CopyWhat = {
  1942.                 Workspace = true,
  1943.                 Lighting = true,
  1944.                 ReplicatedStorage = true,
  1945.                 ReplicatedFirst = true,
  1946.                 StarterPack = true,
  1947.                 StarterGui = true,
  1948.                 StarterPlayer = true
  1949.         },
  1950.         SaveScripts = true,
  1951.         SaveTerrain = true,
  1952.         LightingProperties = true,
  1953.         CameraInstances = true
  1954. }
  1955.  
  1956. local SelectionChanged = ExplorerPanel:WaitForChild("SelectionChanged")
  1957. local GetSelection = ExplorerPanel:WaitForChild("GetSelection")
  1958. local SetSelection = ExplorerPanel:WaitForChild("SetSelection")
  1959.  
  1960. local Player = game:GetService("Players").LocalPlayer
  1961. local Mouse = Player:GetMouse()
  1962.  
  1963. local CurrentWindow = "Nothing c:"
  1964. local Windows = {
  1965.         Explorer = {
  1966.                 ExplorerPanel,
  1967.                 PropertiesFrame
  1968.         },
  1969.         Settings = {SettingsPanel},
  1970.         SaveMap = {SaveMapWindow},
  1971.         Remotes = {RemoteDebugWindow},
  1972.         About = {AboutWindow}
  1973. }
  1974.  
  1975. function switchWindows(wName,over)
  1976.         if CurrentWindow == wName and not over then return end
  1977.        
  1978.         local count = 0
  1979.        
  1980.         for i,v in pairs(Windows) do
  1981.                 count = 0
  1982.                 if i ~= wName then
  1983.                         for _,c in pairs(v) do c:TweenPosition(UDim2.new(1, 30, c.Position.Y.Scale, c.Position.Y.Offset), "Out", "Quad", 0.5, true) count = count + 1 end
  1984.                         -- 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
  1985.                 end
  1986.         end
  1987.        
  1988.         count = 0
  1989.        
  1990.         if Windows[wName] then
  1991.                 for _,c in pairs(Windows[wName]) do c:TweenPosition(UDim2.new(1, -300, c.Position.Y.Scale, c.Position.Y.Offset), "Out", "Quad", 0.5, true) count = count + 1 end
  1992.                 -- 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
  1993.         end
  1994.        
  1995.         if wName ~= "Nothing c:" then
  1996.                 CurrentWindow = wName
  1997.                 for i,v in pairs(SlideFrame:GetChildren()) do
  1998.                         v.AutoButtonColor = false;
  1999.                         v.BackgroundTransparency = 1
  2000.                         v.Icon.ImageColor3 = Color3.fromRGB(185, 185, 185)
  2001.                 end
  2002.                 if SlideFrame:FindFirstChild(wName) then
  2003.                         -- SlideFrame[wName].BackgroundTransparency = 1
  2004.                         SlideFrame[wName].Icon.ImageColor3 = Color3.new(255,255,255)
  2005.                 end
  2006.         end
  2007. end
  2008.  
  2009. function toggleDex(on)
  2010.         if on then
  2011.                 SideMenu:TweenPosition(UDim2.new(1, -330, 0, 0), "Out", "Quad", 0.5, true)
  2012.                 OpenToggleButton:TweenPosition(UDim2.new(1,0,0,0), "Out", "Quad", 0.5, true)
  2013.                 switchWindows(CurrentWindow,true)
  2014.         else
  2015.                 SideMenu:TweenPosition(UDim2.new(1, 0, 0, 0), "Out", "Quad", 0.5, true)
  2016.                 OpenToggleButton:TweenPosition(UDim2.new(1,-30,0,0), "Out", "Quad", 0.5, true)
  2017.                 switchWindows("Nothing c:")
  2018.         end
  2019. end
  2020.  
  2021. local Settings = {
  2022.         ClickSelect = false;
  2023.         SelBox = false;
  2024.         ClearProps = false;
  2025.         SelectUngrouped = true;
  2026.         SaveInstanceScripts = true;
  2027. }
  2028.  
  2029. function ReturnSetting(set)
  2030.         if set == "ClearProps" then
  2031.                 return Settings.ClearProps
  2032.         elseif set == "SelectUngrouped" then
  2033.                 return Settings.SelectUngrouped
  2034.         end
  2035. end
  2036.  
  2037. OpenToggleButton.MouseButton1Up:connect(function()
  2038.         toggleDex(true)
  2039. end)
  2040.  
  2041. OpenScriptEditorButton.MouseButton1Up:connect(function()
  2042.         if OpenScriptEditorButton.Active then
  2043.                 ScriptEditor.Visible = true
  2044.         end
  2045. end)
  2046.  
  2047. CloseToggleButton.MouseButton1Up:connect(function()
  2048.         if CloseToggleButton.Active then
  2049.                 toggleDex(false)
  2050.         end
  2051. end)
  2052.  
  2053. for i,v in pairs(SlideFrame:GetChildren()) do
  2054.         v.MouseButton1Click:connect(function()
  2055.                 switchWindows(v.Name)
  2056.         end)
  2057.        
  2058.         -- v.MouseEnter:connect(function()v.BackgroundTransparency = 0.5 end)
  2059.         -- v.MouseLeave:connect(function()if CurrentWindow~=v.Name then v.BackgroundTransparency = 1 end end)
  2060. end
  2061.  
  2062.  
  2063. function createSetting(name, interName, defaultOn, func)
  2064.         local newSetting = SettingTemplate:Clone()
  2065.         newSetting.Position = UDim2.new(0,0,0,#SettingList:GetChildren() * 60)
  2066.         newSetting.SName.Text = name
  2067.        
  2068.         local function toggle(on)
  2069.                 if on then
  2070.                         newSetting.Change.Bar:TweenPosition(UDim2.new(0,32,0,-2),Enum.EasingDirection.Out,Enum.EasingStyle.Quart,0.25,true)
  2071.                         newSetting.Change.OnBar:TweenSize(UDim2.new(0,34,0,15),Enum.EasingDirection.Out,Enum.EasingStyle.Quart,0.25,true)
  2072.                         newSetting.Status.Text = "On"
  2073.                         Settings[interName] = true
  2074.                 else
  2075.                         newSetting.Change.Bar:TweenPosition(UDim2.new(0,-2,0,-2),Enum.EasingDirection.Out,Enum.EasingStyle.Quart,0.25,true)
  2076.                         newSetting.Change.OnBar:TweenSize(UDim2.new(0,0,0,15),Enum.EasingDirection.Out,Enum.EasingStyle.Quart,0.25,true)
  2077.                         newSetting.Status.Text = "Off"
  2078.                         Settings[interName] = false
  2079.                 end
  2080.         end    
  2081.        
  2082.         newSetting.Change.MouseButton1Click:connect(function()
  2083.                 toggle(not Settings[interName])
  2084.                 if func then pcall(func, Settings[interName]) end
  2085.         end)
  2086.        
  2087.         newSetting.Visible = true
  2088.         newSetting.Parent = SettingList
  2089.        
  2090.         if defaultOn then
  2091.                 toggle(true)
  2092.         end
  2093. end
  2094.  
  2095. createSetting("Click part to select","ClickSelect",false)
  2096. createSetting("Selection Box","SelBox",false)
  2097. createSetting("Clear property value on focus","ClearProps",false)
  2098. createSetting("Select ungrouped models","SelectUngrouped",true)
  2099. createSetting("SaveInstance decompiles scripts","SaveInstanceScripts",true)
  2100.  
  2101. local function getSelection()
  2102.         local t = GetSelection:Invoke()
  2103.         if t and #t > 0 then
  2104.                 return t[1]
  2105.         else
  2106.                 return nil
  2107.         end
  2108. end
  2109.  
  2110. Mouse.Button1Down:connect(function()
  2111.         if CurrentWindow == "Explorer" and Settings.ClickSelect then
  2112.                 local target = Mouse.Target
  2113.                 if target then
  2114.                         SetSelection:Invoke({target})
  2115.                 end
  2116.         end
  2117. end)
  2118.  
  2119. SelectionChanged.Event:connect(function()
  2120.         if Settings.SelBox then
  2121.                 local success,err = pcall(function()
  2122.                         local selection = getSelection()
  2123.                         SelectionBox.Adornee = selection
  2124.                 end)
  2125.                 if err then
  2126.                         SelectionBox.Adornee = nil
  2127.                 end
  2128.         end
  2129. end)
  2130.  
  2131. SettingsListener.OnInvoke = ReturnSetting
  2132.  
  2133. -- Map Copier
  2134.  
  2135. function createMapSetting(obj,interName,defaultOn)
  2136.         local function toggle(on)
  2137.                 if on then
  2138.                         obj.Change.Bar:TweenPosition(UDim2.new(0,32,0,-2),Enum.EasingDirection.Out,Enum.EasingStyle.Quart,0.25,true)
  2139.                         obj.Change.OnBar:TweenSize(UDim2.new(0,34,0,15),Enum.EasingDirection.Out,Enum.EasingStyle.Quart,0.25,true)
  2140.                         obj.Status.Text = "On"
  2141.                         SaveMapSettings[interName] = true
  2142.                 else
  2143.                         obj.Change.Bar:TweenPosition(UDim2.new(0,-2,0,-2),Enum.EasingDirection.Out,Enum.EasingStyle.Quart,0.25,true)
  2144.                         obj.Change.OnBar:TweenSize(UDim2.new(0,0,0,15),Enum.EasingDirection.Out,Enum.EasingStyle.Quart,0.25,true)
  2145.                         obj.Status.Text = "Off"
  2146.                         SaveMapSettings[interName] = false
  2147.                 end
  2148.         end    
  2149.        
  2150.         obj.Change.MouseButton1Click:connect(function()
  2151.                 toggle(not SaveMapSettings[interName])
  2152.         end)
  2153.        
  2154.         obj.Visible = true
  2155.         obj.Parent = SaveMapSettingFrame
  2156.        
  2157.         if defaultOn then
  2158.                 toggle(true)
  2159.         end
  2160. end
  2161.  
  2162. function createCopyWhatSetting(serv)
  2163.         if SaveMapSettings.CopyWhat[serv] then
  2164.                 local newSetting = SaveMapCopyTemplate:Clone()
  2165.                 newSetting.Position = UDim2.new(0,0,0,#SaveMapCopyList:GetChildren() * 22 + 5)
  2166.                 newSetting.Info.Text = serv
  2167.                
  2168.                 local function toggle(on)
  2169.                         if on then
  2170.                                 newSetting.Change.enabled.Visible = true
  2171.                                 SaveMapSettings.CopyWhat[serv] = true
  2172.                         else
  2173.                                 newSetting.Change.enabled.Visible = false
  2174.                                 SaveMapSettings.CopyWhat[serv] = false
  2175.                         end
  2176.                 end    
  2177.        
  2178.                 newSetting.Change.MouseButton1Click:connect(function()
  2179.                         toggle(not SaveMapSettings.CopyWhat[serv])
  2180.                 end)
  2181.                
  2182.                 newSetting.Visible = true
  2183.                 newSetting.Parent = SaveMapCopyList
  2184.         end
  2185. end
  2186.  
  2187. createMapSetting(SaveMapSettingFrame.Scripts,"SaveScripts",true)
  2188. createMapSetting(SaveMapSettingFrame.Terrain,"SaveTerrain",true)
  2189. createMapSetting(SaveMapSettingFrame.Lighting,"LightingProperties",true)
  2190. createMapSetting(SaveMapSettingFrame.CameraInstances,"CameraInstances",true)
  2191.  
  2192. createCopyWhatSetting("Workspace")
  2193. createCopyWhatSetting("Lighting")
  2194. createCopyWhatSetting("ReplicatedStorage")
  2195. createCopyWhatSetting("ReplicatedFirst")
  2196. createCopyWhatSetting("StarterPack")
  2197. createCopyWhatSetting("StarterGui")
  2198. createCopyWhatSetting("StarterPlayer")
  2199.  
  2200. SaveMapName.Text = tostring(game.PlaceId).."MapCopy"
  2201.  
  2202. SaveMapButton.MouseButton1Click:connect(function()
  2203.         local copyWhat = {}
  2204.  
  2205.         local copyGroup = Instance.new("Model",game:GetService'ReplicatedStorage')
  2206.  
  2207.         local copyScripts = SaveMapSettings.SaveScripts
  2208.  
  2209.         local copyTerrain = SaveMapSettings.SaveTerrain
  2210.  
  2211.         local lightingProperties = SaveMapSettings.LightingProperties
  2212.  
  2213.         local cameraInstances = SaveMapSettings.CameraInstances
  2214.  
  2215.         -----------------------------------------------------------------------------------
  2216.  
  2217.         for i,v in pairs(SaveMapSettings.CopyWhat) do
  2218.                 if v then
  2219.                         table.insert(copyWhat,i)
  2220.                 end
  2221.         end
  2222.  
  2223.         local consoleFunc = printconsole or writeconsole
  2224.  
  2225.         if consoleFunc then
  2226.                 consoleFunc("Raspberry Pi's place copier loaded.")
  2227.                 consoleFunc("Copying map of game "..tostring(game.PlaceId)..".")
  2228.         end
  2229.  
  2230.         function archivable(root)
  2231.                 for i,v in pairs(root:GetChildren()) do
  2232.                         if not game:GetService'Players':GetPlayerFromCharacter(v) then
  2233.                                 v.Archivable = true
  2234.                                 archivable(v)
  2235.                         end
  2236.                 end
  2237.         end
  2238.  
  2239.         function decompileS(root)
  2240.                 for i,v in pairs(root:GetChildren()) do
  2241.                         pcall(function()
  2242.                                 if v:IsA("LocalScript") then
  2243.                                         local isDisabled = v.Disabled
  2244.                                         v.Disabled = true
  2245.                                         v.Source = decompile(v)
  2246.                                         v.Disabled = isDisabled
  2247.                                
  2248.                                         if v.Source == "" then
  2249.                                                 if consoleFunc then consoleFunc("LocalScript "..v.Name.." had a problem decompiling.") end
  2250.                                         else
  2251.                                                 if consoleFunc then consoleFunc("LocalScript "..v.Name.." decompiled.") end
  2252.                                         end
  2253.                                 elseif v:IsA("ModuleScript") then
  2254.                                         v.Source = decompile(v)
  2255.                                
  2256.                                         if v.Source == "" then
  2257.                                                 if consoleFunc then consoleFunc("ModuleScript "..v.Name.." had a problem decompiling.") end
  2258.                                         else
  2259.                                                 if consoleFunc then consoleFunc("ModuleScript "..v.Name.." decompiled.") end
  2260.                                         end
  2261.                                 end
  2262.                         end)
  2263.                         decompileS(v)
  2264.                 end
  2265.         end
  2266.  
  2267.         for i,v in pairs(copyWhat) do archivable(game[v]) end
  2268.  
  2269.         for j,obj in pairs(copyWhat) do
  2270.                 if obj ~= "StarterPlayer" then
  2271.                         local newFolder = Instance.new("Folder",copyGroup)
  2272.                         newFolder.Name = obj
  2273.                         for i,v in pairs(game[obj]:GetChildren()) do
  2274.                                 if v ~= copyGroup then
  2275.                                         pcall(function()
  2276.                                                 v:Clone().Parent = newFolder
  2277.                                         end)
  2278.                                 end
  2279.                         end
  2280.                 else
  2281.                         local newFolder = Instance.new("Model",copyGroup)
  2282.                         newFolder.Name = "StarterPlayer"
  2283.                         for i,v in pairs(game[obj]:GetChildren()) do
  2284.                                 local newObj = Instance.new("Folder",newFolder)
  2285.                                 newObj.Name = v.Name
  2286.                                 for _,c in pairs(v:GetChildren()) do
  2287.                                         if c.Name ~= "ControlScript" and c.Name ~= "CameraScript" then
  2288.                                                 c:Clone().Parent = newObj
  2289.                                         end
  2290.                                 end
  2291.                         end
  2292.                 end
  2293.         end
  2294.  
  2295.         if workspace.CurrentCamera and cameraInstances then
  2296.                 local cameraFolder = Instance.new("Model",copyGroup)
  2297.                 cameraFolder.Name = "CameraItems"
  2298.                 for i,v in pairs(workspace.CurrentCamera:GetChildren()) do v:Clone().Parent = cameraFolder end
  2299.         end
  2300.  
  2301.         if copyTerrain then
  2302.                 local myTerrain = workspace.Terrain:CopyRegion(workspace.Terrain.MaxExtents)
  2303.                 myTerrain.Parent = copyGroup
  2304.         end
  2305.  
  2306.         function saveProp(obj,prop,par)
  2307.                 local myProp = obj[prop]
  2308.                 if type(myProp) == "boolean" then
  2309.                         local newProp = Instance.new("BoolValue",par)
  2310.                         newProp.Name = prop
  2311.                         newProp.Value = myProp
  2312.                 elseif type(myProp) == "number" then
  2313.                         local newProp = Instance.new("IntValue",par)
  2314.                         newProp.Name = prop
  2315.                         newProp.Value = myProp
  2316.                 elseif type(myProp) == "string" then
  2317.                         local newProp = Instance.new("StringValue",par)
  2318.                         newProp.Name = prop
  2319.                         newProp.Value = myProp
  2320.                 elseif type(myProp) == "userdata" then -- Assume Color3
  2321.                         pcall(function()
  2322.                                 local newProp = Instance.new("Color3Value",par)
  2323.                                 newProp.Name = prop
  2324.                                 newProp.Value = myProp
  2325.                         end)
  2326.                 end
  2327.         end
  2328.  
  2329.         if lightingProperties then
  2330.                 local lightingProps = Instance.new("Model",copyGroup)
  2331.                 lightingProps.Name = "LightingProperties"
  2332.        
  2333.                 saveProp(game:GetService'Lighting',"Ambient",lightingProps)
  2334.                 saveProp(game:GetService'Lighting',"Brightness",lightingProps)
  2335.                 saveProp(game:GetService'Lighting',"ColorShift_Bottom",lightingProps)
  2336.                 saveProp(game:GetService'Lighting',"ColorShift_Top",lightingProps)
  2337.                 saveProp(game:GetService'Lighting',"GlobalShadows",lightingProps)
  2338.                 saveProp(game:GetService'Lighting',"OutdoorAmbient",lightingProps)
  2339.                 saveProp(game:GetService'Lighting',"Outlines",lightingProps)
  2340.                 saveProp(game:GetService'Lighting',"GeographicLatitude",lightingProps)
  2341.                 saveProp(game:GetService'Lighting',"TimeOfDay",lightingProps)
  2342.                 saveProp(game:GetService'Lighting',"FogColor",lightingProps)
  2343.                 saveProp(game:GetService'Lighting',"FogEnd",lightingProps)
  2344.                 saveProp(game:GetService'Lighting',"FogStart",lightingProps)
  2345.         end
  2346.  
  2347.         if decompile and copyScripts then
  2348.                 decompileS(copyGroup)
  2349.         end
  2350.  
  2351.         if SaveInstance then
  2352.                 SaveInstance(copyGroup,SaveMapName.Text..".rbxm")
  2353.         elseif saveinstance then
  2354.                 saveinstance(SaveMapName.Text..".rbxm", copyGroup)
  2355.         end
  2356.         --print("Saved!")
  2357.         if consoleFunc then
  2358.                 consoleFunc("The map has been copied.")
  2359.         end
  2360.         SaveMapButton.Text = "The map has been saved"
  2361.         wait(5)
  2362.         SaveMapButton.Text = "Save"
  2363. end)
  2364.  
  2365. -- End Copier
  2366.  
  2367. wait()
  2368.  
  2369. IntroFrame:TweenPosition(UDim2.new(1,-300,0,0),Enum.EasingDirection.Out,Enum.EasingStyle.Quart,0.5,true)
  2370.  
  2371. switchWindows("Explorer")
  2372.  
  2373. wait(1)
  2374.  
  2375. SideMenu.Visible = true
  2376.  
  2377. for i = 0,1,0.1 do
  2378.         IntroFrame.BackgroundTransparency = i
  2379.         IntroFrame.Main.BackgroundTransparency = i
  2380.         IntroFrame.Slant.ImageLabel.ImageTransparency = i
  2381.         IntroFrame.Title.TextTransparency = i
  2382.         IntroFrame.Version.TextTransparency = i
  2383.         IntroFrame.Creator.TextTransparency = i
  2384.         wait()
  2385. end
  2386.  
  2387. IntroFrame.Visible = false
  2388.  
  2389. SlideFrame:TweenPosition(UDim2.new(0,0,0,0),Enum.EasingDirection.Out,Enum.EasingStyle.Quart,0.5,true)
  2390. OpenScriptEditorButton:TweenPosition(UDim2.new(0,0,0,180),Enum.EasingDirection.Out,Enum.EasingStyle.Quart,0.5,true)
  2391. CloseToggleButton:TweenPosition(UDim2.new(0,0,0,210),Enum.EasingDirection.Out,Enum.EasingStyle.Quart,0.5,true)
  2392. Slant:TweenPosition(UDim2.new(0,0,0,240),Enum.EasingDirection.Out,Enum.EasingStyle.Quart,0.5,true)
  2393.  
  2394. wait(0.5)
  2395.  
  2396. for i = 1,0,-0.1 do
  2397.         OpenScriptEditorButton.Icon.ImageTransparency = i
  2398.         CloseToggleButton.TextTransparency = i
  2399.         wait()
  2400. end
  2401.  
  2402. CloseToggleButton.Active = true
  2403. CloseToggleButton.AutoButtonColor = true
  2404.  
  2405. OpenScriptEditorButton.Active = true
  2406. OpenScriptEditorButton.AutoButtonColor = true
  2407. end)
  2408. spawn(function()
  2409.         -- initial states
  2410. local Option = {
  2411.         -- can modify object parents in the hierarchy
  2412.         Modifiable = false;
  2413.         -- can select objects
  2414.         Selectable = true;
  2415. }
  2416.  
  2417. -- MERELY
  2418.  
  2419. Option.Modifiable = true
  2420.  
  2421. -- END MERELY
  2422.  
  2423. -- general size of GUI objects, in pixels
  2424. local GUI_SIZE = 16
  2425. -- padding between items within each entry
  2426. local ENTRY_PADDING = 1
  2427. -- padding between each entry
  2428. local ENTRY_MARGIN = 1
  2429.  
  2430. local Input = game:GetService("UserInputService")
  2431. local HoldingCtrl = false
  2432. local HoldingShift = false
  2433.  
  2434. --[[
  2435.  
  2436. # Explorer Panel
  2437.  
  2438. A GUI panel that displays the game hierarchy.
  2439.  
  2440.  
  2441. ## Selection Bindables
  2442.  
  2443. - `Function GetSelection ( )`
  2444.  
  2445.         Returns an array of objects representing the objects currently
  2446.         selected in the panel.
  2447.  
  2448. - `Function SetSelection ( Objects selection )`
  2449.  
  2450.         Sets the objects that are selected in the panel. `selection` is an array
  2451.         of objects.
  2452.  
  2453. - `Event SelectionChanged ( )`
  2454.  
  2455.         Fired after the selection changes.
  2456.  
  2457.  
  2458. ## Option Bindables
  2459.  
  2460. - `Function GetOption ( string optionName )`
  2461.  
  2462.         If `optionName` is given, returns the value of that option. Otherwise,
  2463.         returns a table of options and their current values.
  2464.  
  2465. - `Function SetOption ( string optionName, bool value )`
  2466.  
  2467.         Sets `optionName` to `value`.
  2468.  
  2469.         Options:
  2470.  
  2471.         - Modifiable
  2472.  
  2473.                 Whether objects can be modified by the panel.
  2474.  
  2475.                 Note that modifying objects depends on being able to select them. If
  2476.                 Selectable is false, then Actions will not be available. Reparenting
  2477.                 is still possible, but only for the dragged object.
  2478.  
  2479.         - Selectable
  2480.  
  2481.                 Whether objects can be selected.
  2482.  
  2483.                 If Modifiable is false, then left-clicking will perform a drag
  2484.                 selection.
  2485.  
  2486. ## Updates
  2487.  
  2488. - 2013-09-18
  2489.         - Fixed explorer icons to match studio explorer.
  2490.  
  2491. - 2013-09-14
  2492.         - Added GetOption and SetOption bindables.
  2493.                 - Option: Modifiable; sets whether objects can be modified by the panel.
  2494.                 - Option: Selectable; sets whether objects can be selected.
  2495.         - Slight modification to left-click selection behavior.
  2496.         - Improved layout and scaling.
  2497.  
  2498. - 2013-09-13
  2499.         - Added drag to reparent objects.
  2500.                 - Left-click to select/deselect object.
  2501.                 - Left-click and drag unselected object to reparent single object.
  2502.                 - Left-click and drag selected object to move reparent entire selection.
  2503.                 - Right-click while dragging to cancel.
  2504.  
  2505. - 2013-09-11
  2506.         - Added explorer panel header with actions.
  2507.                 - Added Cut action.
  2508.                 - Added Copy action.
  2509.                 - Added Paste action.
  2510.                 - Added Delete action.
  2511.         - Added drag selection.
  2512.                 - Left-click: Add to selection on drag.
  2513.                 - Right-click: Add to or remove from selection on drag.
  2514.         - Ensured SelectionChanged fires only when the selection actually changes.
  2515.         - Added documentation and change log.
  2516.         - Fixed thread issue.
  2517.  
  2518. - 2013-09-09
  2519.         - Added basic multi-selection.
  2520.                 - Left-click to set selection.
  2521.                 - Right-click to add to or remove from selection.
  2522.         - Removed "Selection" ObjectValue.
  2523.                 - Added GetSelection BindableFunction.
  2524.                 - Added SetSelection BindableFunction.
  2525.                 - Added SelectionChanged BindableEvent.
  2526.         - Changed font to SourceSans.
  2527.  
  2528. - 2013-08-31
  2529.         - Improved GUI sizing based off of `GUI_SIZE` constant.
  2530.         - Automatic font size detection.
  2531.  
  2532. - 2013-08-27
  2533.         - Initial explorer panel.
  2534.  
  2535.  
  2536. ## Todo
  2537.  
  2538. - Sorting
  2539.         - by ExplorerOrder
  2540.         - by children
  2541.         - by name
  2542. - Drag objects to reparent
  2543.  
  2544. ]]
  2545.  
  2546. local ENTRY_SIZE = GUI_SIZE + ENTRY_PADDING*2
  2547. local ENTRY_BOUND = ENTRY_SIZE + ENTRY_MARGIN
  2548. local HEADER_SIZE = ENTRY_SIZE*2
  2549.  
  2550. local FONT = 'SourceSans'
  2551. local FONT_SIZE do
  2552.         local size = {8,9,10,11,12,14,18,24,36,48}
  2553.         local s
  2554.         local n = math.huge
  2555.         for i = 1,#size do
  2556.                 if size[i] <= GUI_SIZE then
  2557.                         FONT_SIZE = i - 1
  2558.                 end
  2559.         end
  2560. end
  2561.  
  2562. local GuiColor = {
  2563.         Background      = Color3.fromRGB( 43,  43,  43);
  2564.         Border          = Color3.fromRGB( 20,  20,  20);
  2565.         Selected        = Color3.fromRGB(215, 125,   0);
  2566.         BorderSelected  = Color3.fromRGB(188, 118,   4);
  2567.         Text            = Color3.fromRGB(245, 245, 245);
  2568.         TextDisabled    = Color3.fromRGB(188, 188, 188);
  2569.         TextSelected    = Color3.fromRGB(255, 255, 255);
  2570.         Button          = Color3.fromRGB( 33,  33,  33);
  2571.         ButtonBorder    = Color3.fromRGB(133, 133, 133);
  2572.         ButtonSelected  = Color3.fromRGB(255, 188,   0);
  2573.         Field           = Color3.fromRGB( 43,  43,  43);
  2574.         FieldBorder     = Color3.fromRGB( 50,  50,  50);
  2575.         TitleBackground = Color3.fromRGB( 11,  11,  11);
  2576. }
  2577.  
  2578. --[[
  2579. Background      = Color3.fromRGB(233, 233, 233);
  2580. Border          = Color3.fromRGB(149, 149, 149);
  2581. Selected        = Color3.fromRGB( 96, 140, 211);
  2582. BorderSelected  = Color3.fromRGB( 86, 125, 188);
  2583. Text            = Color3.fromRGB(  0,   0,   0);
  2584. TextDisabled    = Color3.fromRGB(128, 128, 128);
  2585. TextSelected    = Color3.fromRGB(255, 255, 255);
  2586. Button          = Color3.fromRGB(221, 221, 221);
  2587. ButtonBorder    = Color3.fromRGB(149, 149, 149);
  2588. ButtonSelected  = Color3.fromRGB(255,   0,   0);
  2589. Field           = Color3.fromRGB(255, 255, 255);
  2590. FieldBorder     = Color3.fromRGB(191, 191, 191);
  2591. TitleBackground = Color3.fromRGB(178, 178, 178);
  2592. ]]
  2593.  
  2594. ----------------------------------------------------------------
  2595. ----------------------------------------------------------------
  2596. ----------------------------------------------------------------
  2597. ----------------------------------------------------------------
  2598. ---- Icon map constants
  2599.  
  2600. local MAP_ID = 483448923
  2601.  
  2602. -- Indices based on implementation of Icon function.
  2603. local ACTION_CUT                 = 160
  2604. local ACTION_COPY                = 161
  2605. local ACTION_PASTE               = 162
  2606. local ACTION_DELETE              = 163
  2607. local ACTION_SORT                = 164
  2608. local ACTION_CUT_OVER            = 174
  2609. local ACTION_COPY_OVER           = 175
  2610. local ACTION_PASTE_OVER          = 176
  2611. local ACTION_DELETE_OVER         = 177
  2612. local ACTION_SORT_OVER           = 178
  2613. local ACTION_EDITQUICKACCESS = 190
  2614. local ACTION_FREEZE              = 188
  2615. local ACTION_STARRED             = 189
  2616. local ACTION_ADDSTAR             = 184
  2617. local ACTION_ADDSTAR_OVER        = 187
  2618.  
  2619. local NODE_COLLAPSED      = 165
  2620. local NODE_EXPANDED       = 166
  2621. local NODE_COLLAPSED_OVER = 179
  2622. local NODE_EXPANDED_OVER  = 180
  2623.  
  2624. local ExplorerIndex = {
  2625.         ["Accessory"] = 32;
  2626.         ["Accoutrement"] = 32;
  2627.         ["AdService"] = 73;
  2628.         ["Animation"] = 60;
  2629.         ["AnimationController"] = 60;
  2630.         ["AnimationTrack"] = 60;
  2631.         ["Animator"] = 60;
  2632.         ["ArcHandles"] = 56;
  2633.         ["AssetService"] = 72;
  2634.         ["Attachment"] = 34;
  2635.         ["Backpack"] = 20;
  2636.         ["BadgeService"] = 75;
  2637.         ["BallSocketConstraint"] = 89;
  2638.         ["BillboardGui"] = 64;
  2639.         ["BinaryStringValue"] = 4;
  2640.         ["BindableEvent"] = 67;
  2641.         ["BindableFunction"] = 66;
  2642.         ["BlockMesh"] = 8;
  2643.         ["BloomEffect"] = 90;
  2644.         ["BlurEffect"] = 90;
  2645.         ["BodyAngularVelocity"] = 14;
  2646.         ["BodyForce"] = 14;
  2647.         ["BodyGyro"] = 14;
  2648.         ["BodyPosition"] = 14;
  2649.         ["BodyThrust"] = 14;
  2650.         ["BodyVelocity"] = 14;
  2651.         ["BoolValue"] = 4;
  2652.         ["BoxHandleAdornment"] = 54;
  2653.         ["BrickColorValue"] = 4;
  2654.         ["Camera"] = 5;
  2655.         ["CFrameValue"] = 4;
  2656.         ["CharacterMesh"] = 60;
  2657.         ["Chat"] = 33;
  2658.         ["ClickDetector"] = 41;
  2659.         ["CollectionService"] = 30;
  2660.         ["Color3Value"] = 4;
  2661.         ["ColorCorrectionEffect"] = 90;
  2662.         ["ConeHandleAdornment"] = 54;
  2663.         ["Configuration"] = 58;
  2664.         ["ContentProvider"] = 72;
  2665.         ["ContextActionService"] = 41;
  2666.         ["CoreGui"] = 46;
  2667.         ["CoreScript"] = 18;
  2668.         ["CornerWedgePart"] = 1;
  2669.         ["CustomEvent"] = 4;
  2670.         ["CustomEventReceiver"] = 4;
  2671.         ["CylinderHandleAdornment"] = 54;
  2672.         ["CylinderMesh"] = 8;
  2673.         ["CylindricalConstraint"] = 89;
  2674.         ["Debris"] = 30;
  2675.         ["Decal"] = 7;
  2676.         ["Dialog"] = 62;
  2677.         ["DialogChoice"] = 63;
  2678.         ["DoubleConstrainedValue"] = 4;
  2679.         ["Explosion"] = 36;
  2680.         ["FileMesh"] = 8;
  2681.         ["Fire"] = 61;
  2682.         ["Flag"] = 38;
  2683.         ["FlagStand"] = 39;
  2684.         ["FloorWire"] = 4;
  2685.         ["Folder"] = 70;
  2686.         ["ForceField"] = 37;
  2687.         ["Frame"] = 48;
  2688.         ["GamePassService"] = 19;
  2689.         ["Glue"] = 34;
  2690.         ["GuiButton"] = 52;
  2691.         ["GuiMain"] = 47;
  2692.         ["GuiService"] = 47;
  2693.         ["Handles"] = 53;
  2694.         ["HapticService"] = 84;
  2695.         ["Hat"] = 45;
  2696.         ["HingeConstraint"] = 89;
  2697.         ["Hint"] = 33;
  2698.         ["HopperBin"] = 22;
  2699.         ["HttpService"] = 76;
  2700.         ["Humanoid"] = 9;
  2701.         ["ImageButton"] = 52;
  2702.         ["ImageLabel"] = 49;
  2703.         ["InsertService"] = 72;
  2704.         ["IntConstrainedValue"] = 4;
  2705.         ["IntValue"] = 4;
  2706.         ["JointInstance"] = 34;
  2707.         ["JointsService"] = 34;
  2708.         ["Keyframe"] = 60;
  2709.         ["KeyframeSequence"] = 60;
  2710.         ["KeyframeSequenceProvider"] = 60;
  2711.         ["Lighting"] = 13;
  2712.         ["LineHandleAdornment"] = 54;
  2713.         ["LocalScript"] = 18;
  2714.         ["LogService"] = 87;
  2715.         ["MarketplaceService"] = 46;
  2716.         ["Message"] = 33;
  2717.         ["Model"] = 2;
  2718.         ["ModuleScript"] = 71;
  2719.         ["Motor"] = 34;
  2720.         ["Motor6D"] = 34;
  2721.         ["MoveToConstraint"] = 89;
  2722.         ["NegateOperation"] = 78;
  2723.         ["NetworkClient"] = 16;
  2724.         ["NetworkReplicator"] = 29;
  2725.         ["NetworkServer"] = 15;
  2726.         ["NumberValue"] = 4;
  2727.         ["ObjectValue"] = 4;
  2728.         ["Pants"] = 44;
  2729.         ["ParallelRampPart"] = 1;
  2730.         ["Part"] = 1;
  2731.         ["ParticleEmitter"] = 69;
  2732.         ["PartPairLasso"] = 57;
  2733.         ["PathfindingService"] = 37;
  2734.         ["Platform"] = 35;
  2735.         ["Player"] = 12;
  2736.         ["PlayerGui"] = 46;
  2737.         ["Players"] = 21;
  2738.         ["PlayerScripts"] = 82;
  2739.         ["PointLight"] = 13;
  2740.         ["PointsService"] = 83;
  2741.         ["Pose"] = 60;
  2742.         ["PrismaticConstraint"] = 89;
  2743.         ["PrismPart"] = 1;
  2744.         ["PyramidPart"] = 1;
  2745.         ["RayValue"] = 4;
  2746.         ["ReflectionMetadata"] = 86;
  2747.         ["ReflectionMetadataCallbacks"] = 86;
  2748.         ["ReflectionMetadataClass"] = 86;
  2749.         ["ReflectionMetadataClasses"] = 86;
  2750.         ["ReflectionMetadataEnum"] = 86;
  2751.         ["ReflectionMetadataEnumItem"] = 86;
  2752.         ["ReflectionMetadataEnums"] = 86;
  2753.         ["ReflectionMetadataEvents"] = 86;
  2754.         ["ReflectionMetadataFunctions"] = 86;
  2755.         ["ReflectionMetadataMember"] = 86;
  2756.         ["ReflectionMetadataProperties"] = 86;
  2757.         ["ReflectionMetadataYieldFunctions"] = 86;
  2758.         ["RemoteEvent"] = 80;
  2759.         ["RemoteFunction"] = 79;
  2760.         ["ReplicatedFirst"] = 72;
  2761.         ["ReplicatedStorage"] = 72;
  2762.         ["RightAngleRampPart"] = 1;
  2763.         ["RocketPropulsion"] = 14;
  2764.         ["RodConstraint"] = 89;
  2765.         ["RopeConstraint"] = 89;
  2766.         ["Rotate"] = 34;
  2767.         ["RotateP"] = 34;
  2768.         ["RotateV"] = 34;
  2769.         ["RunService"] = 66;
  2770.         ["ScreenGui"] = 47;
  2771.         ["Script"] = 6;
  2772.         ["ScrollingFrame"] = 48;
  2773.         ["Seat"] = 35;
  2774.         ["Selection"] = 55;
  2775.         ["SelectionBox"] = 54;
  2776.         ["SelectionPartLasso"] = 57;
  2777.         ["SelectionPointLasso"] = 57;
  2778.         ["SelectionSphere"] = 54;
  2779.         ["ServerScriptService"] = 0;
  2780.         ["ServerStorage"] = 74;
  2781.         ["Shirt"] = 43;
  2782.         ["ShirtGraphic"] = 40;
  2783.         ["SkateboardPlatform"] = 35;
  2784.         ["Sky"] = 28;
  2785.         ["SlidingBallConstraint"] = 89;
  2786.         ["Smoke"] = 59;
  2787.         ["Snap"] = 34;
  2788.         ["Sound"] = 11;
  2789.         ["SoundService"] = 31;
  2790.         ["Sparkles"] = 42;
  2791.         ["SpawnLocation"] = 25;
  2792.         ["SpecialMesh"] = 8;
  2793.         ["SphereHandleAdornment"] = 54;
  2794.         ["SpotLight"] = 13;
  2795.         ["SpringConstraint"] = 89;
  2796.         ["StarterCharacterScripts"] = 82;
  2797.         ["StarterGear"] = 20;
  2798.         ["StarterGui"] = 46;
  2799.         ["StarterPack"] = 20;
  2800.         ["StarterPlayer"] = 88;
  2801.         ["StarterPlayerScripts"] = 82;
  2802.         ["Status"] = 2;
  2803.         ["StringValue"] = 4;
  2804.         ["SunRaysEffect"] = 90;
  2805.         ["SurfaceGui"] = 64;
  2806.         ["SurfaceLight"] = 13;
  2807.         ["SurfaceSelection"] = 55;
  2808.         ["Team"] = 24;
  2809.         ["Teams"] = 23;
  2810.         ["TeleportService"] = 81;
  2811.         ["Terrain"] = 65;
  2812.         ["TerrainRegion"] = 65;
  2813.         ["TestService"] = 68;
  2814.         ["TextBox"] = 51;
  2815.         ["TextButton"] = 51;
  2816.         ["TextLabel"] = 50;
  2817.         ["Texture"] = 10;
  2818.         ["TextureTrail"] = 4;
  2819.         ["Tool"] = 17;
  2820.         ["TouchTransmitter"] = 37;
  2821.         ["TrussPart"] = 1;
  2822.         ["UnionOperation"] = 77;
  2823.         ["UserInputService"] = 84;
  2824.         ["Vector3Value"] = 4;
  2825.         ["VehicleSeat"] = 35;
  2826.         ["VelocityMotor"] = 34;
  2827.         ["WedgePart"] = 1;
  2828.         ["Weld"] = 34;
  2829.         ["Workspace"] = 19;
  2830. }
  2831.  
  2832. ----------------------------------------------------------------
  2833. ----------------------------------------------------------------
  2834. ----------------------------------------------------------------
  2835. ----------------------------------------------------------------
  2836. ----------------------------------------------------------------
  2837.  
  2838. function Create(ty,data)
  2839.         local obj
  2840.         if type(ty) == 'string' then
  2841.                 obj = Instance.new(ty)
  2842.         else
  2843.                 obj = ty
  2844.         end
  2845.         for k, v in pairs(data) do
  2846.                 if type(k) == 'number' then
  2847.                         v.Parent = obj
  2848.                 else
  2849.                         obj[k] = v
  2850.                 end
  2851.         end
  2852.         return obj
  2853. end
  2854.  
  2855. local barActive = false
  2856. local activeOptions = {}
  2857.  
  2858. function createDDown(dBut, callback,...)
  2859.         if barActive then
  2860.                 for i,v in pairs(activeOptions) do
  2861.                         v:Destroy()
  2862.                 end
  2863.                 activeOptions = {}
  2864.                 barActive = false
  2865.                 return
  2866.         else
  2867.                 barActive = true
  2868.         end
  2869.         local slots = {...}
  2870.         local base = dBut
  2871.         for i,v in pairs(slots) do
  2872.                 local newOption = base:Clone()
  2873.                 newOption.ZIndex = 5
  2874.                 newOption.Name = "Option "..tostring(i)
  2875.                 newOption.Parent = base.Parent.Parent.Parent
  2876.                 newOption.BackgroundTransparency = 0
  2877.                 newOption.ZIndex = 2
  2878.                 table.insert(activeOptions,newOption)
  2879.                 newOption.Position = UDim2.new(-0.4, dBut.Position.X.Offset, dBut.Position.Y.Scale, dBut.Position.Y.Offset + (#activeOptions * dBut.Size.Y.Offset))
  2880.                 newOption.Text = slots[i]
  2881.                 newOption.MouseButton1Down:connect(function()
  2882.                         dBut.Text = slots[i]
  2883.                         callback(slots[i])
  2884.                         for i,v in pairs(activeOptions) do
  2885.                                 v:Destroy()
  2886.                         end
  2887.                         activeOptions = {}
  2888.                         barActive = false
  2889.                 end)
  2890.         end
  2891. end
  2892.  
  2893. -- Connects a function to an event such that it fires asynchronously
  2894. function Connect(event,func)
  2895.         return event:connect(function(...)
  2896.                 local a = {...}
  2897.                 spawn(function() func(unpack(a)) end)
  2898.         end)
  2899. end
  2900.  
  2901. -- returns the ascendant ScreenGui of an object
  2902. function GetScreen(screen)
  2903.         if screen == nil then return nil end
  2904.         while not screen:IsA("ScreenGui") do
  2905.                 screen = screen.Parent
  2906.                 if screen == nil then return nil end
  2907.         end
  2908.         return screen
  2909. end
  2910.  
  2911. do
  2912.         local ZIndexLock = {}
  2913.         -- Sets the ZIndex of an object and its descendants. Objects are locked so
  2914.         -- that SetZIndexOnChanged doesn't spawn multiple threads that set the
  2915.         -- ZIndex of the same object.
  2916.         function SetZIndex(object,z)
  2917.                 if not ZIndexLock[object] then
  2918.                         ZIndexLock[object] = true
  2919.                         if object:IsA'GuiObject' then
  2920.                                 object.ZIndex = z
  2921.                         end
  2922.                         local children = object:GetChildren()
  2923.                         for i = 1,#children do
  2924.                                 SetZIndex(children[i],z)
  2925.                         end
  2926.                         ZIndexLock[object] = nil
  2927.                 end
  2928.         end
  2929.  
  2930.         function SetZIndexOnChanged(object)
  2931.                 return object.Changed:connect(function(p)
  2932.                         if p == "ZIndex" then
  2933.                                 SetZIndex(object,object.ZIndex)
  2934.                         end
  2935.                 end)
  2936.         end
  2937. end
  2938.  
  2939. ---- IconMap ----
  2940. -- Image size: 256px x 256px
  2941. -- Icon size: 16px x 16px
  2942. -- Padding between each icon: 2px
  2943. -- Padding around image edge: 1px
  2944. -- Total icons: 14 x 14 (196)
  2945. local Icon do
  2946.         local iconMap = 'http://www.roblox.com/asset/?id=' .. MAP_ID
  2947.         game:GetService('ContentProvider'):Preload(iconMap)
  2948.         local iconDehash do
  2949.                 -- 14 x 14, 0-based input, 0-based output
  2950.                 local f=math.floor
  2951.                 function iconDehash(h)
  2952.                         return f(h/14%14),f(h%14)
  2953.                 end
  2954.         end
  2955.  
  2956.         function Icon(IconFrame,index)
  2957.                 local row,col = iconDehash(index)
  2958.                 local mapSize = Vector2.new(256,256)
  2959.                 local pad,border = 2,1
  2960.                 local iconSize = 16
  2961.  
  2962.                 local class = 'Frame'
  2963.                 if type(IconFrame) == 'string' then
  2964.                         class = IconFrame
  2965.                         IconFrame = nil
  2966.                 end
  2967.  
  2968.                 if not IconFrame then
  2969.                         IconFrame = Create(class,{
  2970.                                 Name = "Icon";
  2971.                                 BackgroundTransparency = 1;
  2972.                                 ClipsDescendants = true;
  2973.                                 Create('ImageLabel',{
  2974.                                         Name = "IconMap";
  2975.                                         Active = false;
  2976.                                         BackgroundTransparency = 1;
  2977.                                         Image = iconMap;
  2978.                                         Size = UDim2.new(mapSize.x/iconSize,0,mapSize.y/iconSize,0);
  2979.                                 });
  2980.                         })
  2981.                 end
  2982.  
  2983.                 IconFrame.IconMap.Position = UDim2.new(-col - (pad*(col+1) + border)/iconSize,0,-row - (pad*(row+1) + border)/iconSize,0)
  2984.                 return IconFrame
  2985.         end
  2986. end
  2987.  
  2988. ----------------------------------------------------------------
  2989. ----------------------------------------------------------------
  2990. ----------------------------------------------------------------
  2991. ----------------------------------------------------------------
  2992. ---- ScrollBar
  2993. do
  2994.         -- AutoButtonColor doesn't always reset properly
  2995.         local function ResetButtonColor(button)
  2996.                 local active = button.Active
  2997.                 button.Active = not active
  2998.                 button.Active = active
  2999.         end
  3000.  
  3001.         local function ArrowGraphic(size,dir,scaled,template)
  3002.                 local Frame = Create('Frame',{
  3003.                         Name = "Arrow Graphic";
  3004.                         BorderSizePixel = 0;
  3005.                         Size = UDim2.new(0,size,0,size);
  3006.                         Transparency = 1;
  3007.                 })
  3008.                 if not template then
  3009.                         template = Instance.new("Frame")
  3010.                         template.BorderSizePixel = 0
  3011.                 end
  3012.  
  3013.                 template.BackgroundColor3 = Color3.new(1, 1, 1);
  3014.  
  3015.                 local transform
  3016.                 if dir == nil or dir == 'Up' then
  3017.                         function transform(p,s) return p,s end
  3018.                 elseif dir == 'Down' then
  3019.                         function transform(p,s) return UDim2.new(0,p.X.Offset,0,size-p.Y.Offset-1),s end
  3020.                 elseif dir == 'Left' then
  3021.                         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
  3022.                 elseif dir == 'Right' then
  3023.                         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
  3024.                 end
  3025.  
  3026.                 local scale
  3027.                 if scaled then
  3028.                         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
  3029.                 else
  3030.                         function scale(p,s) return p,s end
  3031.                 end
  3032.  
  3033.                 local o = math.floor(size/4)
  3034.                 if size%2 == 0 then
  3035.                         local n = size/2-1
  3036.                         for i = 0,n do
  3037.                                 local t = template:Clone()
  3038.                                 local p,s = scale(transform(
  3039.                                         UDim2.new(0,n-i,0,o+i),
  3040.                                         UDim2.new(0,(i+1)*2,0,1)
  3041.                                 ))
  3042.                                 t.Position = p
  3043.                                 t.Size = s
  3044.                                 t.Parent = Frame
  3045.                         end
  3046.                 else
  3047.                         local n = (size-1)/2
  3048.                         for i = 0,n do
  3049.                                 local t = template:Clone()
  3050.                                 local p,s = scale(transform(
  3051.                                         UDim2.new(0,n-i,0,o+i),
  3052.                                         UDim2.new(0,i*2+1,0,1)
  3053.                                 ))
  3054.                                 t.Position = p
  3055.                                 t.Size = s
  3056.                                 t.Parent = Frame
  3057.                         end
  3058.                 end
  3059.                 if size%4 > 1 then
  3060.                         local t = template:Clone()
  3061.                         local p,s = scale(transform(
  3062.                                 UDim2.new(0,0,0,size-o-1),
  3063.                                 UDim2.new(0,size,0,1)
  3064.                         ))
  3065.                         t.Position = p
  3066.                         t.Size = s
  3067.                         t.Parent = Frame
  3068.                 end
  3069.  
  3070.                 for i,v in pairs(Frame:GetChildren()) do
  3071.                         v.BackgroundColor3 = Color3.new(1, 1, 1);
  3072.                 end
  3073.  
  3074.                 return Frame
  3075.         end
  3076.  
  3077.  
  3078.         local function GripGraphic(size,dir,spacing,scaled,template)
  3079.                 local Frame = Create('Frame',{
  3080.                         Name = "Grip Graphic";
  3081.                         BorderSizePixel = 0;
  3082.                         Size = UDim2.new(0,size.x,0,size.y);
  3083.                         Transparency = 1;
  3084.                 })
  3085.                 if not template then
  3086.                         template = Instance.new("Frame")
  3087.                         template.BorderSizePixel = 0
  3088.                 end
  3089.  
  3090.                 spacing = spacing or 2
  3091.  
  3092.                 local scale
  3093.                 if scaled then
  3094.                         function scale(p) return UDim2.new(p.X.Offset/size.x,0,p.Y.Offset/size.y,0) end
  3095.                 else
  3096.                         function scale(p) return p end
  3097.                 end
  3098.  
  3099.                 if dir == 'Vertical' then
  3100.                         for i=0,size.x-1,spacing do
  3101.                                 local t = template:Clone()
  3102.                                 t.Size = scale(UDim2.new(0,1,0,size.y))
  3103.                                 t.Position = scale(UDim2.new(0,i,0,0))
  3104.                                 t.Parent = Frame
  3105.                         end
  3106.                 elseif dir == nil or dir == 'Horizontal' then
  3107.                         for i=0,size.y-1,spacing do
  3108.                                 local t = template:Clone()
  3109.                                 t.Size = scale(UDim2.new(0,size.x,0,1))
  3110.                                 t.Position = scale(UDim2.new(0,0,0,i))
  3111.                                 t.Parent = Frame
  3112.                         end
  3113.                 end
  3114.  
  3115.                 return Frame
  3116.         end
  3117.  
  3118.         local mt = {
  3119.                 __index = {
  3120.                         GetScrollPercent = function(self)
  3121.                                 return self.ScrollIndex/(self.TotalSpace-self.VisibleSpace)
  3122.                         end;
  3123.                         CanScrollDown = function(self)
  3124.                                 return self.ScrollIndex + self.VisibleSpace < self.TotalSpace
  3125.                         end;
  3126.                         CanScrollUp = function(self)
  3127.                                 return self.ScrollIndex > 0
  3128.                         end;
  3129.                         ScrollDown = function(self)
  3130.                                 self.ScrollIndex = self.ScrollIndex + self.PageIncrement
  3131.                                 self:Update()
  3132.                         end;
  3133.                         ScrollUp = function(self)
  3134.                                 self.ScrollIndex = self.ScrollIndex - self.PageIncrement
  3135.                                 self:Update()
  3136.                         end;
  3137.                         ScrollTo = function(self,index)
  3138.                                 self.ScrollIndex = index
  3139.                                 self:Update()
  3140.                         end;
  3141.                         SetScrollPercent = function(self,percent)
  3142.                                 self.ScrollIndex = math.floor((self.TotalSpace - self.VisibleSpace)*percent + 0.5)
  3143.                                 self:Update()
  3144.                         end;
  3145.                 };
  3146.         }
  3147.         mt.__index.CanScrollRight = mt.__index.CanScrollDown
  3148.         mt.__index.CanScrollLeft = mt.__index.CanScrollUp
  3149.         mt.__index.ScrollLeft = mt.__index.ScrollUp
  3150.         mt.__index.ScrollRight = mt.__index.ScrollDown
  3151.  
  3152.         local ScrollStyles = {
  3153.                 Background      = Color3.fromRGB(233, 233, 233);
  3154.                 Border          = Color3.fromRGB(149, 149, 149);
  3155.                 Selected        = Color3.fromRGB( 63, 119, 189);
  3156.                 BorderSelected  = Color3.fromRGB( 55, 106, 167);
  3157.                 Text            = Color3.fromRGB(  0,   0,   0);
  3158.                 TextDisabled    = Color3.fromRGB(128, 128, 128);
  3159.                 TextSelected    = Color3.fromRGB(255, 255, 255);
  3160.                 Button          = Color3.fromRGB( 35,  35,  35);
  3161.                 ButtonBorder    = Color3.fromRGB(149, 149, 149);
  3162.                 ButtonSelected  = Color3.fromRGB(255,   0,   0);
  3163.                 Field           = Color3.fromRGB(255, 255, 255);
  3164.                 FieldBorder     = Color3.fromRGB(191, 191, 191);
  3165.                 TitleBackground = Color3.fromRGB(178, 178, 178);
  3166.         }
  3167.  
  3168.         function ScrollBar(horizontal)
  3169.                 -- create row scroll bar
  3170.                 local ScrollBarWidth = GUI_SIZE;
  3171.                 local ScrollFrame = Create('Frame',{
  3172.                         Name = "ScrollFrame";
  3173.                         Position = horizontal and UDim2.new(0,0,1,-ScrollBarWidth) or UDim2.new(1,-ScrollBarWidth,0,0);
  3174.                         Size = horizontal and UDim2.new(1,0,0,ScrollBarWidth) or UDim2.new(0,ScrollBarWidth,1,0);
  3175.                         BackgroundTransparency = 1;
  3176.                         Create('ImageButton',{
  3177.                                 Name = "ScrollDown";
  3178.                                 Position = horizontal and UDim2.new(1,-ScrollBarWidth,0,0) or UDim2.new(0,0,1,-ScrollBarWidth);
  3179.                                 Size = UDim2.new(0, ScrollBarWidth, 0, ScrollBarWidth);
  3180.                                 BackgroundColor3 = ScrollStyles.Button;
  3181.                                 BorderColor3 = ScrollStyles.Border;
  3182.                                 BorderSizePixel = 0;
  3183.                         });
  3184.                         Create('ImageButton',{
  3185.                                 Name = "ScrollUp";
  3186.                                 Size = UDim2.new(0, ScrollBarWidth, 0, ScrollBarWidth);
  3187.                                 BackgroundColor3 = ScrollStyles.Button;
  3188.                                 BorderColor3 = ScrollStyles.Border;
  3189.                                 BorderSizePixel = 0;
  3190.                         });
  3191.                         Create('ImageButton',{
  3192.                                 Name = "ScrollBar";
  3193.                                 Size = horizontal and UDim2.new(1,-ScrollBarWidth*2,1,0) or UDim2.new(1,0,1,-ScrollBarWidth*2);
  3194.                                 Position = horizontal and UDim2.new(0,ScrollBarWidth,0,0) or UDim2.new(0,0,0,ScrollBarWidth);
  3195.                                 AutoButtonColor = false;
  3196.                                 BackgroundColor3 = Color3.fromRGB(20, 20, 20);
  3197.                                 BorderColor3 = ScrollStyles.Border;
  3198.                                 BorderSizePixel = 0;
  3199.                                 Create('ImageButton',{
  3200.                                         Name = "ScrollThumb";
  3201.                                         AutoButtonColor = false;
  3202.                                         Size = UDim2.new(0, ScrollBarWidth, 0, ScrollBarWidth);
  3203.                                         BackgroundColor3 = ScrollStyles.Button;
  3204.                                         BorderColor3 = ScrollStyles.Border;
  3205.                                         BorderSizePixel = 0;
  3206.                                 });
  3207.                         });
  3208.                 })
  3209.  
  3210.                 local graphicTemplate = Create('Frame',{
  3211.                         Name="Graphic";
  3212.                         BorderSizePixel = 0;
  3213.                         BackgroundColor3 = Color3.new(1, 1, 1);
  3214.                 })
  3215.                 local graphicSize = GUI_SIZE/2
  3216.  
  3217.                 local ScrollDownFrame = ScrollFrame.ScrollDown
  3218.                         local ScrollDownGraphic = ArrowGraphic(graphicSize,horizontal and 'Right' or 'Down',true,graphicTemplate)
  3219.                         ScrollDownGraphic.Position = UDim2.new(0.5,-graphicSize/2,0.5,-graphicSize/2)
  3220.                         ScrollDownGraphic.Parent = ScrollDownFrame
  3221.                 local ScrollUpFrame = ScrollFrame.ScrollUp
  3222.                         local ScrollUpGraphic = ArrowGraphic(graphicSize,horizontal and 'Left' or 'Up',true,graphicTemplate)
  3223.                         ScrollUpGraphic.Position = UDim2.new(0.5,-graphicSize/2,0.5,-graphicSize/2)
  3224.                         ScrollUpGraphic.Parent = ScrollUpFrame
  3225.                 local ScrollBarFrame = ScrollFrame.ScrollBar
  3226.                 local ScrollThumbFrame = ScrollBarFrame.ScrollThumb
  3227.                 do
  3228.                         local size = GUI_SIZE*3/8
  3229.                         local Decal = GripGraphic(Vector2.new(size,size),horizontal and 'Vertical' or 'Horizontal',2,graphicTemplate)
  3230.                         Decal.Position = UDim2.new(0.5,-size/2,0.5,-size/2)
  3231.                         Decal.Parent = ScrollThumbFrame
  3232.                 end
  3233.  
  3234.                 local Class = setmetatable({
  3235.                         GUI = ScrollFrame;
  3236.                         ScrollIndex = 0;
  3237.                         VisibleSpace = 0;
  3238.                         TotalSpace = 0;
  3239.                         PageIncrement = 1;
  3240.                 },mt)
  3241.  
  3242.                 local UpdateScrollThumb
  3243.                 if horizontal then
  3244.                         function UpdateScrollThumb()
  3245.                                 ScrollThumbFrame.Size = UDim2.new(Class.VisibleSpace/Class.TotalSpace,0,0,GUI_SIZE)
  3246.                                 if ScrollThumbFrame.AbsoluteSize.x < GUI_SIZE then
  3247.                                         ScrollThumbFrame.Size = UDim2.new(0,GUI_SIZE,0,GUI_SIZE)
  3248.                                 end
  3249.                                 local barSize = ScrollBarFrame.AbsoluteSize.x
  3250.                                 ScrollThumbFrame.Position = UDim2.new(Class:GetScrollPercent()*(barSize - ScrollThumbFrame.AbsoluteSize.x)/barSize,0,0,0)
  3251.                         end
  3252.                 else
  3253.                         function UpdateScrollThumb()
  3254.                                 ScrollThumbFrame.Size = UDim2.new(0,GUI_SIZE,Class.VisibleSpace/Class.TotalSpace,0)
  3255.                                 if ScrollThumbFrame.AbsoluteSize.y < GUI_SIZE then
  3256.                                         ScrollThumbFrame.Size = UDim2.new(0,GUI_SIZE,0,GUI_SIZE)
  3257.                                 end
  3258.                                 local barSize = ScrollBarFrame.AbsoluteSize.y
  3259.                                 ScrollThumbFrame.Position = UDim2.new(0,0,Class:GetScrollPercent()*(barSize - ScrollThumbFrame.AbsoluteSize.y)/barSize,0)
  3260.                         end
  3261.                 end
  3262.  
  3263.                 local lastDown
  3264.                 local lastUp
  3265.                 local scrollStyle = {BackgroundColor3=Color3.new(1, 1, 1),BackgroundTransparency=0}
  3266.                 local scrollStyle_ds = {BackgroundColor3=Color3.new(1, 1, 1),BackgroundTransparency=0.7}
  3267.  
  3268.                 local function Update()
  3269.                         local t = Class.TotalSpace
  3270.                         local v = Class.VisibleSpace
  3271.                         local s = Class.ScrollIndex
  3272.                         if v <= t then
  3273.                                 if s > 0 then
  3274.                                         if s + v > t then
  3275.                                                 Class.ScrollIndex = t - v
  3276.                                         end
  3277.                                 else
  3278.                                         Class.ScrollIndex = 0
  3279.                                 end
  3280.                         else
  3281.                                 Class.ScrollIndex = 0
  3282.                         end
  3283.  
  3284.                         if Class.UpdateCallback then
  3285.                                 if Class.UpdateCallback(Class) == false then
  3286.                                         return
  3287.                                 end
  3288.                         end
  3289.  
  3290.                         local down = Class:CanScrollDown()
  3291.                         local up = Class:CanScrollUp()
  3292.                         if down ~= lastDown then
  3293.                                 lastDown = down
  3294.                                 ScrollDownFrame.Active = down
  3295.                                 ScrollDownFrame.AutoButtonColor = down
  3296.                                 local children = ScrollDownGraphic:GetChildren()
  3297.                                 local style = down and scrollStyle or scrollStyle_ds
  3298.                                 for i = 1,#children do
  3299.                                         Create(children[i],style)
  3300.                                 end
  3301.                         end
  3302.                         if up ~= lastUp then
  3303.                                 lastUp = up
  3304.                                 ScrollUpFrame.Active = up
  3305.                                 ScrollUpFrame.AutoButtonColor = up
  3306.                                 local children = ScrollUpGraphic:GetChildren()
  3307.                                 local style = up and scrollStyle or scrollStyle_ds
  3308.                                 for i = 1,#children do
  3309.                                         Create(children[i],style)
  3310.                                 end
  3311.                         end
  3312.                         ScrollThumbFrame.Visible = down or up
  3313.                         UpdateScrollThumb()
  3314.                 end
  3315.                 Class.Update = Update
  3316.  
  3317.                 SetZIndexOnChanged(ScrollFrame)
  3318.  
  3319.                 local MouseDrag = Create('ImageButton',{
  3320.                         Name = "MouseDrag";
  3321.                         Position = UDim2.new(-0.25,0,-0.25,0);
  3322.                         Size = UDim2.new(1.5,0,1.5,0);
  3323.                         Transparency = 1;
  3324.                         AutoButtonColor = false;
  3325.                         Active = true;
  3326.                         ZIndex = 10;
  3327.                 })
  3328.  
  3329.                 local scrollEventID = 0
  3330.                 ScrollDownFrame.MouseButton1Down:connect(function()
  3331.                         scrollEventID = tick()
  3332.                         local current = scrollEventID
  3333.                         local up_con
  3334.                         up_con = MouseDrag.MouseButton1Up:connect(function()
  3335.                                 scrollEventID = tick()
  3336.                                 MouseDrag.Parent = nil
  3337.                                 ResetButtonColor(ScrollDownFrame)
  3338.                                 up_con:disconnect(); drag = nil
  3339.                         end)
  3340.                         MouseDrag.Parent = GetScreen(ScrollFrame)
  3341.                         Class:ScrollDown()
  3342.                         wait(0.2) -- delay before auto scroll
  3343.                         while scrollEventID == current do
  3344.                                 Class:ScrollDown()
  3345.                                 if not Class:CanScrollDown() then break end
  3346.                                 wait()
  3347.                         end
  3348.                 end)
  3349.  
  3350.                 ScrollDownFrame.MouseButton1Up:connect(function()
  3351.                         scrollEventID = tick()
  3352.                 end)
  3353.  
  3354.                 ScrollUpFrame.MouseButton1Down:connect(function()
  3355.                         scrollEventID = tick()
  3356.                         local current = scrollEventID
  3357.                         local up_con
  3358.                         up_con = MouseDrag.MouseButton1Up:connect(function()
  3359.                                 scrollEventID = tick()
  3360.                                 MouseDrag.Parent = nil
  3361.                                 ResetButtonColor(ScrollUpFrame)
  3362.                                 up_con:disconnect(); drag = nil
  3363.                         end)
  3364.                         MouseDrag.Parent = GetScreen(ScrollFrame)
  3365.                         Class:ScrollUp()
  3366.                         wait(0.2)
  3367.                         while scrollEventID == current do
  3368.                                 Class:ScrollUp()
  3369.                                 if not Class:CanScrollUp() then break end
  3370.                                 wait()
  3371.                         end
  3372.                 end)
  3373.  
  3374.                 ScrollUpFrame.MouseButton1Up:connect(function()
  3375.                         scrollEventID = tick()
  3376.                 end)
  3377.  
  3378.                 if horizontal then
  3379.                         ScrollBarFrame.MouseButton1Down:connect(function(x,y)
  3380.                                 scrollEventID = tick()
  3381.                                 local current = scrollEventID
  3382.                                 local up_con
  3383.                                 up_con = MouseDrag.MouseButton1Up:connect(function()
  3384.                                         scrollEventID = tick()
  3385.                                         MouseDrag.Parent = nil
  3386.                                         ResetButtonColor(ScrollUpFrame)
  3387.                                         up_con:disconnect(); drag = nil
  3388.                                 end)
  3389.                                 MouseDrag.Parent = GetScreen(ScrollFrame)
  3390.                                 if x > ScrollThumbFrame.AbsolutePosition.x then
  3391.                                         Class:ScrollTo(Class.ScrollIndex + Class.VisibleSpace)
  3392.                                         wait(0.2)
  3393.                                         while scrollEventID == current do
  3394.                                                 if x < ScrollThumbFrame.AbsolutePosition.x + ScrollThumbFrame.AbsoluteSize.x then break end
  3395.                                                 Class:ScrollTo(Class.ScrollIndex + Class.VisibleSpace)
  3396.                                                 wait()
  3397.                                         end
  3398.                                 else
  3399.                                         Class:ScrollTo(Class.ScrollIndex - Class.VisibleSpace)
  3400.                                         wait(0.2)
  3401.                                         while scrollEventID == current do
  3402.                                                 if x > ScrollThumbFrame.AbsolutePosition.x then break end
  3403.                                                 Class:ScrollTo(Class.ScrollIndex - Class.VisibleSpace)
  3404.                                                 wait()
  3405.                                         end
  3406.                                 end
  3407.                         end)
  3408.                 else
  3409.                         ScrollBarFrame.MouseButton1Down:connect(function(x,y)
  3410.                                 scrollEventID = tick()
  3411.                                 local current = scrollEventID
  3412.                                 local up_con
  3413.                                 up_con = MouseDrag.MouseButton1Up:connect(function()
  3414.                                         scrollEventID = tick()
  3415.                                         MouseDrag.Parent = nil
  3416.                                         ResetButtonColor(ScrollUpFrame)
  3417.                                         up_con:disconnect(); drag = nil
  3418.                                 end)
  3419.                                 MouseDrag.Parent = GetScreen(ScrollFrame)
  3420.                                 if y > ScrollThumbFrame.AbsolutePosition.y then
  3421.                                         Class:ScrollTo(Class.ScrollIndex + Class.VisibleSpace)
  3422.                                         wait(0.2)
  3423.                                         while scrollEventID == current do
  3424.                                                 if y < ScrollThumbFrame.AbsolutePosition.y + ScrollThumbFrame.AbsoluteSize.y then break end
  3425.                                                 Class:ScrollTo(Class.ScrollIndex + Class.VisibleSpace)
  3426.                                                 wait()
  3427.                                         end
  3428.                                 else
  3429.                                         Class:ScrollTo(Class.ScrollIndex - Class.VisibleSpace)
  3430.                                         wait(0.2)
  3431.                                         while scrollEventID == current do
  3432.                                                 if y > ScrollThumbFrame.AbsolutePosition.y then break end
  3433.                                                 Class:ScrollTo(Class.ScrollIndex - Class.VisibleSpace)
  3434.                                                 wait()
  3435.                                         end
  3436.                                 end
  3437.                         end)
  3438.                 end
  3439.  
  3440.                 if horizontal then
  3441.                         ScrollThumbFrame.MouseButton1Down:connect(function(x,y)
  3442.                                 scrollEventID = tick()
  3443.                                 local mouse_offset = x - ScrollThumbFrame.AbsolutePosition.x
  3444.                                 local drag_con
  3445.                                 local up_con
  3446.                                 drag_con = MouseDrag.MouseMoved:connect(function(x,y)
  3447.                                         if not game:GetService'UserInputService':IsMouseButtonPressed'MouseButton1' then
  3448.                                                 scrollEventID = tick()
  3449.                                                 MouseDrag.Parent = nil
  3450.                                                 ResetButtonColor(ScrollThumbFrame)
  3451.                                                 drag_con:disconnect(); drag_con = nil
  3452.                                                 up_con:disconnect(); drag = nil
  3453.                                         end
  3454.                                         local bar_abs_pos = ScrollBarFrame.AbsolutePosition.x
  3455.                                         local bar_drag = ScrollBarFrame.AbsoluteSize.x - ScrollThumbFrame.AbsoluteSize.x
  3456.                                         local bar_abs_one = bar_abs_pos + bar_drag
  3457.                                         x = x - mouse_offset
  3458.                                         x = x < bar_abs_pos and bar_abs_pos or x > bar_abs_one and bar_abs_one or x
  3459.                                         x = x - bar_abs_pos
  3460.                                         Class:SetScrollPercent(x/(bar_drag))
  3461.                                 end)
  3462.                                 up_con = MouseDrag.MouseButton1Up:connect(function()
  3463.                                         scrollEventID = tick()
  3464.                                         MouseDrag.Parent = nil
  3465.                                         ResetButtonColor(ScrollThumbFrame)
  3466.                                         drag_con:disconnect(); drag_con = nil
  3467.                                         up_con:disconnect(); drag = nil
  3468.                                 end)
  3469.                                 MouseDrag.Parent = GetScreen(ScrollFrame)
  3470.                         end)
  3471.                 else
  3472.                         ScrollThumbFrame.MouseButton1Down:connect(function(x,y)
  3473.                                 scrollEventID = tick()
  3474.                                 local mouse_offset = y - ScrollThumbFrame.AbsolutePosition.y
  3475.                                 local drag_con
  3476.                                 local up_con
  3477.                                 drag_con = MouseDrag.MouseMoved:connect(function(x,y)
  3478.                                         if not game:GetService'UserInputService':IsMouseButtonPressed'MouseButton1' then
  3479.                                                 scrollEventID = tick()
  3480.                                                 MouseDrag.Parent = nil
  3481.                                                 ResetButtonColor(ScrollThumbFrame)
  3482.                                                 drag_con:disconnect(); drag_con = nil
  3483.                                                 up_con:disconnect(); drag = nil
  3484.                                         end
  3485.                                         local bar_abs_pos = ScrollBarFrame.AbsolutePosition.y
  3486.                                         local bar_drag = ScrollBarFrame.AbsoluteSize.y - ScrollThumbFrame.AbsoluteSize.y
  3487.                                         local bar_abs_one = bar_abs_pos + bar_drag
  3488.                                         y = y - mouse_offset
  3489.                                         y = y < bar_abs_pos and bar_abs_pos or y > bar_abs_one and bar_abs_one or y
  3490.                                         y = y - bar_abs_pos
  3491.                                         Class:SetScrollPercent(y/(bar_drag))
  3492.                                 end)
  3493.                                 up_con = MouseDrag.MouseButton1Up:connect(function()
  3494.                                         scrollEventID = tick()
  3495.                                         MouseDrag.Parent = nil
  3496.                                         ResetButtonColor(ScrollThumbFrame)
  3497.                                         drag_con:disconnect(); drag_con = nil
  3498.                                         up_con:disconnect(); drag = nil
  3499.                                 end)
  3500.                                 MouseDrag.Parent = GetScreen(ScrollFrame)
  3501.                         end)
  3502.                 end
  3503.  
  3504.                 function Class:Destroy()
  3505.                         ScrollFrame:Destroy()
  3506.                         MouseDrag:Destroy()
  3507.                         for k in pairs(Class) do
  3508.                                 Class[k] = nil
  3509.                         end
  3510.                         setmetatable(Class,nil)
  3511.                 end
  3512.  
  3513.                 Update()
  3514.  
  3515.                 return Class
  3516.         end
  3517. end
  3518.  
  3519. ----------------------------------------------------------------
  3520. ----------------------------------------------------------------
  3521. ----------------------------------------------------------------
  3522. ----------------------------------------------------------------
  3523. ---- Explorer panel
  3524.  
  3525. local explorerPanel = D_E_X.ExplorerPanel
  3526. Create(explorerPanel,{
  3527.         BackgroundColor3 = GuiColor.Field;
  3528.         BorderColor3 = GuiColor.Border;
  3529.         Active = true;
  3530. })
  3531.  
  3532. local SettingsRemote = explorerPanel.Parent:WaitForChild("SettingsPanel"):WaitForChild("GetSetting")
  3533. local GetApiRemote = explorerPanel.Parent:WaitForChild("PropertiesFrame"):WaitForChild("GetApi")
  3534. local GetAwaitRemote = explorerPanel.Parent:WaitForChild("PropertiesFrame"):WaitForChild("GetAwaiting")
  3535. local bindSetAwaiting = explorerPanel.Parent:WaitForChild("PropertiesFrame"):WaitForChild("SetAwaiting")
  3536.  
  3537. local SaveInstanceWindow = explorerPanel.Parent:WaitForChild("SaveInstance")
  3538. local ConfirmationWindow = explorerPanel.Parent:WaitForChild("Confirmation")
  3539. local CautionWindow = explorerPanel.Parent:WaitForChild("Caution")
  3540. local TableCautionWindow = explorerPanel.Parent:WaitForChild("TableCaution")
  3541.  
  3542. local RemoteWindow = explorerPanel.Parent:WaitForChild("CallRemote")
  3543.  
  3544. local ScriptEditor = explorerPanel.Parent:WaitForChild("ScriptEditor")
  3545. local ScriptEditorEvent = ScriptEditor:WaitForChild("OpenScript")
  3546.  
  3547. local CurrentSaveInstanceWindow
  3548. local CurrentRemoteWindow
  3549.  
  3550. local lastSelectedNode
  3551.  
  3552. local DexStorage
  3553. local DexStorageMain
  3554. local DexStorageEnabled
  3555.  
  3556. if saveinstance then DexStorageEnabled = true end
  3557.  
  3558. if DexStorageEnabled then
  3559.         DexStorage = Instance.new("Folder")
  3560.         DexStorage.Name = "Dex"
  3561.         DexStorageMain = Instance.new("Folder", DexStorage)
  3562.         DexStorageMain.Name = "DexStorage"
  3563. end
  3564.  
  3565. local RunningScriptsStorage
  3566. local RunningScriptsStorageMain
  3567. local RunningScriptsStorageEnabled
  3568.  
  3569. if getscripts then RunningScriptsStorageEnabled = true end
  3570.  
  3571. if RunningScriptsStorageEnabled then
  3572.         RunningScriptsStorage = Instance.new("Folder")
  3573.         RunningScriptsStorage.Name = "Dex Internal Storage"
  3574.         RunningScriptsStorageMain = Instance.new("Folder", RunningScriptsStorage)
  3575.         RunningScriptsStorageMain.Name = "Running Scripts"
  3576. end
  3577.  
  3578. local UpvalueStorage
  3579. local UpvalueStorageVariables
  3580. local UpvalueStorageFunctions
  3581. local UpvalueStorageEnabled
  3582.  
  3583. if vars and funcs then UpvalueStorageEnabled = true end
  3584.  
  3585. if UpvalueStorageEnabled then
  3586.         UpvalueStorage = Instance.new('Folder')
  3587.         UpvalueStorage.Name = 'Upvalue Storage'
  3588.         UpvalueStorageVariables = Instance.new("Folder", UpvalueStorage)
  3589.         UpvalueStorageVariables.Name = "Upvalue Variables"
  3590.         UpvalueStorageFunctions = Instance.new("Folder", UpvalueStorage)
  3591.         UpvalueStorageFunctions.Name = "Upvalue Functions"
  3592.         for i, v in pairs(vars) do
  3593.                 pcall(function()
  3594.                         local n = Instance.new('StringValue', UpvalueStorageVariables)
  3595.                         n.Name = tostring(i);
  3596.                         n.Value = tostring(v);
  3597.                 end)
  3598.         end
  3599.         for i, v in pairs(funcs) do
  3600.                 pcall(function()
  3601.                         local n = Instance.new('StringValue', UpvalueStorageFunctions)
  3602.                         n.Name = tostring(i);
  3603.                         n.Value = tostring(v);
  3604.                 end)
  3605.         end
  3606. end
  3607.  
  3608. local listFrame = Create('Frame',{
  3609.         Name = "List";
  3610.         BackgroundTransparency = 1;
  3611.         ClipsDescendants = true;
  3612.         Position = UDim2.new(0,0,0,HEADER_SIZE);
  3613.         Size = UDim2.new(1,-GUI_SIZE,1,-HEADER_SIZE);
  3614.         Parent = explorerPanel;
  3615. })
  3616.  
  3617. local scrollBar = ScrollBar(false)
  3618. scrollBar.PageIncrement = 1
  3619. Create(scrollBar.GUI,{
  3620.         Position = UDim2.new(1,-GUI_SIZE,0,HEADER_SIZE);
  3621.         Size = UDim2.new(0,GUI_SIZE,1,-HEADER_SIZE);
  3622.         Parent = explorerPanel;
  3623. })
  3624.  
  3625. local scrollBarH = ScrollBar(true)
  3626. scrollBarH.PageIncrement = GUI_SIZE
  3627. Create(scrollBarH.GUI,{
  3628.         Position = UDim2.new(0,0,1,-GUI_SIZE);
  3629.         Size = UDim2.new(1,-GUI_SIZE,0,GUI_SIZE);
  3630.         Visible = false;
  3631.         Parent = explorerPanel;
  3632. })
  3633.  
  3634. local headerFrame = Create('Frame',{
  3635.         Name = "Header";
  3636.         BackgroundColor3 = GuiColor.Background;
  3637.         BorderColor3 = GuiColor.Border;
  3638.         Position = UDim2.new(0,0,0,0);
  3639.         Size = UDim2.new(1,0,0,HEADER_SIZE);
  3640.         Parent = explorerPanel;
  3641.         Create('TextLabel',{
  3642.                 Text = "Explorer";
  3643.                 BackgroundTransparency = 1;
  3644.                 TextColor3 = GuiColor.Text;
  3645.                 TextXAlignment = 'Left';
  3646.                 Font = FONT;
  3647.                 FontSize = FONT_SIZE;
  3648.                 Position = UDim2.new(0,4,0,0);
  3649.                 Size = UDim2.new(1,-4,0.5,0);
  3650.         });
  3651. })
  3652.  
  3653. local explorerFilter =  Create('TextBox',{
  3654.         Text = "Filter Workspace";
  3655.         BackgroundTransparency = 0.8;
  3656.         TextColor3 = GuiColor.Text;
  3657.         TextXAlignment = 'Left';
  3658.         Font = FONT;
  3659.         FontSize = FONT_SIZE;
  3660.         Position = UDim2.new(0,4,0.5,0);
  3661.         Size = UDim2.new(1,-8,0.5,-2);
  3662. });
  3663. explorerFilter.Parent = headerFrame
  3664.  
  3665. SetZIndexOnChanged(explorerPanel)
  3666.  
  3667. local function CreateColor3(r, g, b) return Color3.new(r/255,g/255,b/255) end
  3668.  
  3669. local Styles = {
  3670.         Font = Enum.Font.Arial;
  3671.         Margin = 5;
  3672.         Black = CreateColor3(0,0,0);
  3673.         White = CreateColor3(24,24,24);
  3674. }
  3675.  
  3676. local Row = {
  3677.         Font = Styles.Font;
  3678.         FontSize = Enum.FontSize.Size14;
  3679.         TextXAlignment = Enum.TextXAlignment.Left;
  3680.         TextColor = Styles.Black;
  3681.         TextColorOver = Styles.White;
  3682.         TextLockedColor = CreateColor3(155,155,155);
  3683.         Height = 24;
  3684.         BorderColor = CreateColor3(216/4,216/4,216/4);
  3685.         BackgroundColor = Styles.White;
  3686.         BackgroundColorAlternate = CreateColor3(32, 32, 32);
  3687.         BackgroundColorMouseover = CreateColor3(40, 40, 40);
  3688.         TitleMarginLeft = 15;
  3689. }
  3690.  
  3691. local DropDown = {
  3692.         Font = Styles.Font;
  3693.         FontSize = Enum.FontSize.Size14;
  3694.         TextColor = CreateColor3(255,255,255);
  3695.         TextColorOver = Color3.new(1, 1, 1);
  3696.         TextXAlignment = Enum.TextXAlignment.Left;
  3697.         Height = 16;
  3698.         BackColor = Styles.White;
  3699.         BackColorOver = CreateColor3(190, 90, 0);
  3700.         BorderColor = CreateColor3(45,45,45);
  3701.         BorderSizePixel = 2;
  3702.         ArrowColor = CreateColor3(160/2,160/2,160/2);
  3703.         ArrowColorOver = Styles.Black;
  3704. }
  3705.  
  3706. local currentRightClickMenu
  3707. local CurrentInsertObjectWindow
  3708. local CurrentFunctionCallerWindow
  3709.  
  3710. local RbxApi
  3711.  
  3712. function ClassCanCreate(IName)
  3713.         local success,err = pcall(function() Instance.new(IName) end)
  3714.         if err then
  3715.                 return false
  3716.         else
  3717.                 return true
  3718.         end
  3719. end
  3720.  
  3721. function GetClasses()
  3722.         if RbxApi == nil then return {} end
  3723.         local classTable = {}
  3724.         for i,v in pairs(RbxApi.Classes) do
  3725.                 if ClassCanCreate(v.Name) then
  3726.                         table.insert(classTable,v.Name)
  3727.                 end
  3728.         end
  3729.         return classTable
  3730. end
  3731.  
  3732. local function sortAlphabetic(t, property)
  3733.         table.sort(t,
  3734.                 function(x,y) return x[property] < y[property]
  3735.         end)
  3736. end
  3737.  
  3738. local function FunctionIsHidden(functionData)
  3739.         local tags = functionData["tags"]
  3740.         for _,name in pairs(tags) do
  3741.                 if name == "deprecated"
  3742.                         or name == "hidden"
  3743.                         or name == "writeonly" then
  3744.                         return true
  3745.                 end
  3746.         end
  3747.         return false
  3748. end
  3749.  
  3750. local function GetAllFunctions(className)
  3751.         local class = RbxApi.Classes[className]
  3752.         local functions = {}
  3753.        
  3754.         if not class then return functions end
  3755.        
  3756.         while class do
  3757.                 if class.Name == "Instance" then break end
  3758.                 for _,nextFunction in pairs(class.Functions) do
  3759.                         if not FunctionIsHidden(nextFunction) then
  3760.                                 table.insert(functions, nextFunction)
  3761.                         end
  3762.                 end
  3763.                 class = RbxApi.Classes[class.Superclass]
  3764.         end
  3765.        
  3766.         sortAlphabetic(functions, "Name")
  3767.  
  3768.         return functions
  3769. end
  3770.  
  3771. function GetFunctions()
  3772.         if RbxApi == nil then return {} end
  3773.         local List = SelectionVar():Get()
  3774.        
  3775.         if #List == 0 then return end
  3776.        
  3777.         local MyObject = List[1]
  3778.        
  3779.         local functionTable = {}
  3780.         for i,v in pairs(GetAllFunctions(MyObject.ClassName)) do
  3781.                 table.insert(functionTable,v)
  3782.         end
  3783.         return functionTable
  3784. end
  3785.  
  3786. function CreateInsertObjectMenu(choices, currentChoice, readOnly, onClick)
  3787.         local mouse = game:GetService'Players'.LocalPlayer:GetMouse()
  3788.         local totalSize = explorerPanel.Parent.AbsoluteSize.y
  3789.         if #choices == 0 then return end
  3790.        
  3791.         table.sort(choices, function(a,b) return a < b end)
  3792.  
  3793.         local frame = Instance.new("Frame")    
  3794.         frame.Name = "InsertObject"
  3795.         frame.Size = UDim2.new(0, 200, 1, 0)
  3796.         frame.BackgroundTransparency = 1
  3797.         frame.Active = true
  3798.        
  3799.         local menu = nil
  3800.         local arrow = nil
  3801.         local expanded = false
  3802.         local margin = DropDown.BorderSizePixel;
  3803.        
  3804.         --[[
  3805.         local button = Instance.new("TextButton")
  3806.         button.Font = Row.Font
  3807.         button.FontSize = Row.FontSize
  3808.         button.TextXAlignment = Row.TextXAlignment
  3809.         button.BackgroundTransparency = 1
  3810.         button.TextColor3 = Row.TextColor
  3811.         if readOnly then
  3812.                 button.TextColor3 = Row.TextLockedColor
  3813.         end
  3814.         button.Text = currentChoice
  3815.         button.Size = UDim2.new(1, -2 * Styles.Margin, 1, 0)
  3816.         button.Position = UDim2.new(0, Styles.Margin, 0, 0)
  3817.         button.Parent = frame
  3818.         --]]
  3819.        
  3820.         local function hideMenu()
  3821.                 expanded = false
  3822.                 --showArrow(DropDown.ArrowColor)
  3823.                 if frame then
  3824.                         --frame:Destroy()
  3825.                         CurrentInsertObjectWindow.Visible = false
  3826.                 end
  3827.         end
  3828.        
  3829.         local function showMenu()
  3830.                 expanded = true
  3831.                 menu = Instance.new("ScrollingFrame")
  3832.                 menu.Size = UDim2.new(0,200,1,0)
  3833.                 menu.CanvasSize = UDim2.new(0, 200, 0, #choices * DropDown.Height)
  3834.                 menu.Position = UDim2.new(0, margin, 0, 0)
  3835.                 menu.BackgroundTransparency = 0
  3836.                 menu.BackgroundColor3 = DropDown.BackColor
  3837.                 menu.BorderColor3 = DropDown.BorderColor
  3838.                 menu.BorderSizePixel = DropDown.BorderSizePixel
  3839.                 menu.TopImage = "rbxasset://textures/blackBkg_square.png"
  3840.                 menu.MidImage = "rbxasset://textures/blackBkg_square.png"
  3841.                 menu.BottomImage = "rbxasset://textures/blackBkg_square.png"
  3842.                 menu.Active = true
  3843.                 menu.ZIndex = 5
  3844.                 menu.Parent = frame
  3845.                
  3846.                 --local parentFrameHeight = script.Parent.List.Size.Y.Offset
  3847.                 --local rowHeight = mouse.Y
  3848.                 --if (rowHeight + menu.Size.Y.Offset) > parentFrameHeight then
  3849.                 --      menu.Position = UDim2.new(0, margin, 0, -1 * (#choices * DropDown.Height) - margin)
  3850.                 --end
  3851.                        
  3852.                 local function choice(name)
  3853.                         onClick(name)
  3854.                         hideMenu()
  3855.                 end
  3856.                
  3857.                 for i,name in pairs(choices) do
  3858.                         local option = CreateRightClickMenuItem(name, function()
  3859.                                 choice(name)
  3860.                         end,1)
  3861.                         option.Size = UDim2.new(1, 0, 0, 20)
  3862.                         option.Position = UDim2.new(0, 0, 0, (i - 1) * DropDown.Height)
  3863.                         option.ZIndex = menu.ZIndex
  3864.                         option.Parent = menu
  3865.                 end
  3866.         end
  3867.  
  3868.  
  3869.         showMenu()
  3870.  
  3871.        
  3872.         return frame
  3873. end
  3874.  
  3875. function CreateFunctionCallerMenu(choices, currentChoice, readOnly, onClick)
  3876.         local mouse = game:GetService'Players'.LocalPlayer:GetMouse()
  3877.         local totalSize = explorerPanel.Parent.AbsoluteSize.y
  3878.         if #choices == 0 then return end
  3879.        
  3880.         table.sort(choices, function(a,b) return a.Name < b.Name end)
  3881.  
  3882.         local frame = Instance.new("Frame")    
  3883.         frame.Name = "InsertObject"
  3884.         frame.Size = UDim2.new(0, 200, 1, 0)
  3885.         frame.BackgroundTransparency = 1
  3886.         frame.Active = true
  3887.        
  3888.         local menu = nil
  3889.         local arrow = nil
  3890.         local expanded = false
  3891.         local margin = DropDown.BorderSizePixel;
  3892.        
  3893.         local function hideMenu()
  3894.                 expanded = false
  3895.                 --showArrow(DropDown.ArrowColor)
  3896.                 if frame then
  3897.                         --frame:Destroy()
  3898.                         CurrentInsertObjectWindow.Visible = false
  3899.                 end
  3900.         end
  3901.        
  3902.         local function showMenu()
  3903.                 expanded = true
  3904.                 menu = Instance.new("ScrollingFrame")
  3905.                 menu.Size = UDim2.new(0,300,1,0)
  3906.                 menu.CanvasSize = UDim2.new(0, 300, 0, #choices * DropDown.Height)
  3907.                 menu.Position = UDim2.new(0, margin, 0, 0)
  3908.                 menu.BackgroundTransparency = 0
  3909.                 menu.BackgroundColor3 = DropDown.BackColor
  3910.                 menu.BorderColor3 = DropDown.BorderColor
  3911.                 menu.BorderSizePixel = DropDown.BorderSizePixel
  3912.                 menu.TopImage = "rbxasset://textures/blackBkg_square.png"
  3913.                 menu.MidImage = "rbxasset://textures/blackBkg_square.png"
  3914.                 menu.BottomImage = "rbxasset://textures/blackBkg_square.png"
  3915.                 menu.Active = true
  3916.                 menu.ZIndex = 5
  3917.                 menu.Parent = frame
  3918.                
  3919.                 --local parentFrameHeight = script.Parent.List.Size.Y.Offset
  3920.                 --local rowHeight = mouse.Y
  3921.                 --if (rowHeight + menu.Size.Y.Offset) > parentFrameHeight then
  3922.                 --      menu.Position = UDim2.new(0, margin, 0, -1 * (#choices * DropDown.Height) - margin)
  3923.                 --end
  3924.                
  3925.                 local function GetParameters(functionData)
  3926.                         local paraString = ""
  3927.                         paraString = paraString.."("
  3928.                         for i,v in pairs(functionData.Arguments) do
  3929.                                 paraString = paraString..v.Type.." "..v.Name
  3930.                                 if i < #functionData.Arguments then
  3931.                                         paraString = paraString..", "
  3932.                                 end
  3933.                         end
  3934.                         paraString = paraString..")"
  3935.                         return paraString
  3936.                 end
  3937.                        
  3938.                 local function choice(name)
  3939.                         onClick(name)
  3940.                         hideMenu()
  3941.                 end
  3942.                
  3943.                 for i,name in pairs(choices) do
  3944.                         local option = CreateRightClickMenuItem(name.ReturnType.." "..name.Name..GetParameters(name), function()
  3945.                                 choice(name)
  3946.                         end,2)
  3947.                         option.Size = UDim2.new(1, 0, 0, 20)
  3948.                         option.Position = UDim2.new(0, 0, 0, (i - 1) * DropDown.Height)
  3949.                         option.ZIndex = menu.ZIndex
  3950.                         option.Parent = menu
  3951.                 end
  3952.         end
  3953.  
  3954.  
  3955.         showMenu()
  3956.  
  3957.        
  3958.         return frame
  3959. end
  3960.  
  3961. function CreateInsertObject()
  3962.         if not CurrentInsertObjectWindow then return end
  3963.         CurrentInsertObjectWindow.Visible = true
  3964.         if currentRightClickMenu and CurrentInsertObjectWindow.Visible then
  3965.                 CurrentInsertObjectWindow.Position = UDim2.new(0,currentRightClickMenu.Position.X.Offset-currentRightClickMenu.Size.X.Offset-2,0,0)
  3966.         end
  3967.         if CurrentInsertObjectWindow.Visible then
  3968.                 CurrentInsertObjectWindow.Parent = explorerPanel.Parent
  3969.         end
  3970. end
  3971.  
  3972. function CreateFunctionCaller()
  3973.         if CurrentFunctionCallerWindow then
  3974.                 CurrentFunctionCallerWindow:Destroy()
  3975.                 CurrentFunctionCallerWindow = nil
  3976.         end
  3977.         CurrentFunctionCallerWindow = CreateFunctionCallerMenu(
  3978.                 GetFunctions(),
  3979.                 "",
  3980.                 false,
  3981.                 function(option)
  3982.                         CurrentFunctionCallerWindow:Destroy()
  3983.                         CurrentFunctionCallerWindow = nil
  3984.                         local list = SelectionVar():Get()
  3985.                         for i = 1,#list do
  3986.                                 pcall(function() Instance.new(option,list[i]) end)
  3987.                         end
  3988.                         -- print(option.Name .. " selected to be called. Function caller being added soon, please wait!")
  3989.                         --CallFunction()
  3990.                         DestroyRightClick()
  3991.                 end
  3992.         )
  3993.         if currentRightClickMenu and CurrentFunctionCallerWindow then
  3994.                 CurrentFunctionCallerWindow.Position = UDim2.new(0,currentRightClickMenu.Position.X.Offset-currentRightClickMenu.Size.X.Offset*1.5-2,0,0)
  3995.         end
  3996.         if CurrentFunctionCallerWindow then
  3997.                 CurrentFunctionCallerWindow.Parent = explorerPanel.Parent
  3998.         end
  3999. end
  4000.  
  4001. local UserInputService = game:GetService'UserInputService';
  4002.  
  4003. function GetMouseLocation()
  4004.         return UserInputService:GetMouseLocation() - Vector2.new(0, 36);
  4005. end
  4006.  
  4007. function MouseHoveringOver(GuiObject)
  4008.         local MLocation = GetMouseLocation();
  4009.  
  4010.         return (MLocation.x >= GuiObject.AbsolutePosition.X and MLocation.x <= (GuiObject.AbsolutePosition.X + GuiObject.AbsoluteSize.X)) and (MLocation.y >= GuiObject.AbsolutePosition.Y and MLocation.y <= (GuiObject.AbsolutePosition.Y + GuiObject.AbsoluteSize.Y));
  4011. end
  4012.  
  4013. function CreateRightClickMenuItem(text, onClick, insObj)
  4014.         local button = Instance.new("TextButton")
  4015.         button.Font = DropDown.Font
  4016.         button.FontSize = DropDown.FontSize
  4017.         button.TextColor3 = DropDown.TextColor
  4018.         button.TextXAlignment = DropDown.TextXAlignment
  4019.         button.BackgroundColor3 = DropDown.BackColor
  4020.         button.AutoButtonColor = false
  4021.         button.BorderSizePixel = 0
  4022.         button.Active = true
  4023.         button.Text = text
  4024.        
  4025.         if insObj == 1 then
  4026.                 local newIcon = Icon(nil,ExplorerIndex[text] or 0)
  4027.                 newIcon.Position = UDim2.new(0,0,0,2)
  4028.                 newIcon.Size = UDim2.new(0,16,0,16)
  4029.                 newIcon.IconMap.ZIndex = 5
  4030.                 newIcon.Parent = button
  4031.                 button.Text = "\t\t"..button.Text
  4032.         elseif insObj == 2 then
  4033.                 button.FontSize = Enum.FontSize.Size11
  4034.         end
  4035.  
  4036.         spawn(function()
  4037.                 while button.Parent ~= nil and button.Parent.Parent ~= nil do
  4038.                         game:service'RunService'.Stepped:wait();
  4039.                         if not MouseHoveringOver(button) then
  4040.                                 button.TextColor3 = DropDown.TextColor
  4041.                                 button.BackgroundColor3 = DropDown.BackColor
  4042.                         end
  4043.                 end
  4044.         end)
  4045.        
  4046.         button.MouseEnter:connect(function()
  4047.                 button.TextColor3 = DropDown.TextColorOver
  4048.                 button.BackgroundColor3 = DropDown.BackColorOver
  4049.                 if not insObj and CurrentInsertObjectWindow then
  4050.                         if CurrentInsertObjectWindow.Visible == false and button.Text == "Insert Object" then
  4051.                                 CreateInsertObject()
  4052.                         elseif CurrentInsertObjectWindow.Visible and button.Text ~= "Insert Object" then
  4053.                                 CurrentInsertObjectWindow.Visible = false
  4054.                         end
  4055.                 end
  4056.                 if not insObj then
  4057.                         if CurrentFunctionCallerWindow and button.Text ~= "Call Function" then
  4058.                                 CurrentFunctionCallerWindow:Destroy()
  4059.                                 CurrentFunctionCallerWindow = nil
  4060.                         elseif button.Text == "Call Function" then
  4061.                                 CreateFunctionCaller()
  4062.                         end
  4063.                 end
  4064.         end)
  4065.         button.MouseLeave:connect(function()
  4066.                 button.TextColor3 = DropDown.TextColor
  4067.                 button.BackgroundColor3 = DropDown.BackColor
  4068.         end)
  4069.         button.MouseButton1Click:connect(function()
  4070.                 button.TextColor3 = DropDown.TextColor
  4071.                 button.BackgroundColor3 = DropDown.BackColor
  4072.                 onClick(text)
  4073.         end)   
  4074.         return button
  4075. end
  4076.  
  4077. function CreateRightClickMenu(choices, currentChoice, readOnly, onClick)
  4078.         local mouse = game:GetService'Players'.LocalPlayer:GetMouse()
  4079.  
  4080.         local frame = Instance.new("Frame")    
  4081.         frame.Name = "DropDown"
  4082.         frame.Size = UDim2.new(0, 200, 1, 0)
  4083.         frame.BackgroundTransparency = 1
  4084.         frame.Active = true
  4085.        
  4086.         local menu = nil
  4087.         local arrow = nil
  4088.         local expanded = false
  4089.         local margin = DropDown.BorderSizePixel;
  4090.        
  4091.         --[[
  4092.         local button = Instance.new("TextButton")
  4093.         button.Font = Row.Font
  4094.         button.FontSize = Row.FontSize
  4095.         button.TextXAlignment = Row.TextXAlignment
  4096.         button.BackgroundTransparency = 1
  4097.         button.TextColor3 = Row.TextColor
  4098.         if readOnly then
  4099.                 button.TextColor3 = Row.TextLockedColor
  4100.         end
  4101.         button.Text = currentChoice
  4102.         button.Size = UDim2.new(1, -2 * Styles.Margin, 1, 0)
  4103.         button.Position = UDim2.new(0, Styles.Margin, 0, 0)
  4104.         button.Parent = frame
  4105.         --]]
  4106.        
  4107.         local function hideMenu()
  4108.                 expanded = false
  4109.                 --showArrow(DropDown.ArrowColor)
  4110.                 if frame then
  4111.                         frame:Destroy()
  4112.                         DestroyRightClick()
  4113.                 end
  4114.         end
  4115.        
  4116.         local function showMenu()
  4117.                 expanded = true
  4118.                 menu = Instance.new("Frame")
  4119.                 menu.Size = UDim2.new(0, 200, 0, #choices * DropDown.Height)
  4120.                 menu.Position = UDim2.new(0, margin, 0, 5)
  4121.                 menu.BackgroundTransparency = 0
  4122.                 menu.BackgroundColor3 = DropDown.BackColor
  4123.                 menu.BorderColor3 = DropDown.BorderColor
  4124.                 menu.BorderSizePixel = DropDown.BorderSizePixel
  4125.                 menu.Active = true
  4126.                 menu.ZIndex = 5
  4127.                 menu.Parent = frame
  4128.                
  4129.                 --local parentFrameHeight = script.Parent.List.Size.Y.Offset
  4130.                 --local rowHeight = mouse.Y
  4131.                 --if (rowHeight + menu.Size.Y.Offset) > parentFrameHeight then
  4132.                 --      menu.Position = UDim2.new(0, margin, 0, -1 * (#choices * DropDown.Height) - margin)
  4133.                 --end
  4134.                        
  4135.                 local function choice(name)
  4136.                         onClick(name)
  4137.                         hideMenu()
  4138.                 end
  4139.                
  4140.                 for i,name in pairs(choices) do
  4141.                         local option = CreateRightClickMenuItem(name, function()
  4142.                                 choice(name)
  4143.                         end)
  4144.                         option.Size = UDim2.new(1, 0, 0, 20)
  4145.                         option.Position = UDim2.new(0, 0, 0, (i - 1) * DropDown.Height)
  4146.                         option.ZIndex = menu.ZIndex
  4147.                         option.Parent = menu
  4148.                 end
  4149.         end
  4150.  
  4151.  
  4152.         showMenu()
  4153.  
  4154.        
  4155.         return frame
  4156. end
  4157.  
  4158. function checkMouseInGui(gui)
  4159.         if gui == nil then return false end
  4160.         local plrMouse = game:GetService'Players'.LocalPlayer:GetMouse()
  4161.         local guiPosition = gui.AbsolutePosition
  4162.         local guiSize = gui.AbsoluteSize       
  4163.        
  4164.         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
  4165.                 return true
  4166.         else
  4167.                 return false
  4168.         end
  4169. end
  4170.  
  4171. local clipboard = {}
  4172. local function delete(o)
  4173.         o.Parent = nil
  4174. end
  4175.  
  4176. local getTextWidth do
  4177.         local text = Create('TextLabel',{
  4178.                 Name = "TextWidth";
  4179.                 TextXAlignment = 'Left';
  4180.                 TextYAlignment = 'Center';
  4181.                 Font = FONT;
  4182.                 FontSize = FONT_SIZE;
  4183.                 Text = "";
  4184.                 Position = UDim2.new(0,0,0,0);
  4185.                 Size = UDim2.new(1,0,1,0);
  4186.                 Visible = false;
  4187.                 Parent = explorerPanel;
  4188.         })
  4189.         function getTextWidth(s)
  4190.                 text.Text = s
  4191.                 return text.TextBounds.x
  4192.         end
  4193. end
  4194.  
  4195. local nameScanned = false
  4196. -- Holds the game tree converted to a list.
  4197. local TreeList = {}
  4198. -- Matches objects to their tree node representation.
  4199. local NodeLookup = {}
  4200.  
  4201. local nodeWidth = 0
  4202.  
  4203. local QuickButtons = {}
  4204.  
  4205. function filteringWorkspace()
  4206.         if explorerFilter.Text ~= "" and explorerFilter.Text ~= "Filter Workspace" then
  4207.                 return true
  4208.         end
  4209.         return false
  4210. end
  4211.  
  4212. function lookForAName(obj,name)
  4213.         for i,v in pairs(obj:GetDescendants()) do
  4214.                 if string.find(string.lower(v.Name),string.lower(name)) then nameScanned = true end
  4215.                 -- lookForAName(v,name)
  4216.         end
  4217. end
  4218.  
  4219. function scanName(obj)
  4220.         nameScanned = false
  4221.         if string.find(string.lower(obj.Name),string.lower(explorerFilter.Text)) then
  4222.                 nameScanned = true
  4223.         else
  4224.                 lookForAName(obj,explorerFilter.Text)
  4225.         end
  4226.         return nameScanned
  4227. end
  4228.  
  4229. function updateActions()
  4230.         for i,v in pairs(QuickButtons) do
  4231.                 if v.Cond() then
  4232.                         v.Toggle(true)
  4233.                 else
  4234.                         v.Toggle(false)
  4235.                 end
  4236.         end
  4237. end
  4238.  
  4239. local updateList,rawUpdateList,updateScroll,rawUpdateSize do
  4240.         local function r(t)
  4241.                 for i = 1,#t do
  4242.                         if not filteringWorkspace() or scanName(t[i].Object) then
  4243.                                 TreeList[#TreeList+1] = t[i]
  4244.  
  4245.                                 local w = (t[i].Depth)*(2+ENTRY_PADDING+GUI_SIZE) + 2 + ENTRY_SIZE + 4 + getTextWidth(t[i].Object.Name) + 4
  4246.                                 if w > nodeWidth then
  4247.                                         nodeWidth = w
  4248.                                 end
  4249.                                 if t[i].Expanded or filteringWorkspace() then
  4250.                                         r(t[i])
  4251.                                 end
  4252.                         end
  4253.                 end
  4254.         end
  4255.  
  4256.         function rawUpdateSize()
  4257.                 scrollBarH.TotalSpace = nodeWidth
  4258.                 scrollBarH.VisibleSpace = listFrame.AbsoluteSize.x
  4259.                 scrollBarH:Update()
  4260.                 local visible = scrollBarH:CanScrollDown() or scrollBarH:CanScrollUp()
  4261.                 scrollBarH.GUI.Visible = visible
  4262.  
  4263.                 listFrame.Size = UDim2.new(1,-GUI_SIZE,1,-GUI_SIZE*(visible and 1 or 0) - HEADER_SIZE)
  4264.  
  4265.                 scrollBar.VisibleSpace = math.ceil(listFrame.AbsoluteSize.y/ENTRY_BOUND)
  4266.                 scrollBar.GUI.Size = UDim2.new(0,GUI_SIZE,1,-GUI_SIZE*(visible and 1 or 0) - HEADER_SIZE)
  4267.                
  4268.                 scrollBar.TotalSpace = #TreeList+1
  4269.                 scrollBar:Update()
  4270.         end
  4271.  
  4272.         function rawUpdateList()
  4273.                 -- Clear then repopulate the entire list. It appears to be fast enough.
  4274.                 TreeList = {}
  4275.                 nodeWidth = 0
  4276.                 r(NodeLookup[workspace.Parent])
  4277.                 if DexStorageEnabled then
  4278.                         r(NodeLookup[DexStorage])
  4279.                 end
  4280.                 if RunningScriptsStorageEnabled then
  4281.                         r(NodeLookup[RunningScriptsStorage])
  4282.                 end
  4283.                 if UpvalueStorageEnabled then
  4284.                         r(NodeLookup[UpvalueStorage])
  4285.                 end
  4286.                 rawUpdateSize()
  4287.                 updateActions()
  4288.         end
  4289.  
  4290.         -- Adding or removing large models will cause many updates to occur. We
  4291.         -- can reduce the number of updates by creating a delay, then dropping any
  4292.         -- updates that occur during the delay.
  4293.         local updatingList = false
  4294.         function updateList()
  4295.                 if updatingList then return end
  4296.                 updatingList = true
  4297.                 wait(2.25)
  4298.                 updatingList = false
  4299.                 rawUpdateList()
  4300.         end
  4301.  
  4302.         local updatingScroll = false
  4303.         function updateScroll()
  4304.                 if updatingScroll then return end
  4305.                 updatingScroll = true
  4306.                 wait(2.25)
  4307.                 updatingScroll = false
  4308.                 scrollBar:Update()
  4309.         end
  4310. end
  4311.  
  4312. local Selection do
  4313.         local bindGetSelection = explorerPanel:FindFirstChild("GetSelection")
  4314.         if not bindGetSelection then
  4315.                 bindGetSelection = Create('BindableFunction',{Name = "GetSelection"})
  4316.                 bindGetSelection.Parent = explorerPanel
  4317.         end
  4318.  
  4319.         local bindSetSelection = explorerPanel:FindFirstChild("SetSelection")
  4320.         if not bindSetSelection then
  4321.                 bindSetSelection = Create('BindableFunction',{Name = "SetSelection"})
  4322.                 bindSetSelection.Parent = explorerPanel
  4323.         end
  4324.  
  4325.         local bindSelectionChanged = explorerPanel:FindFirstChild("SelectionChanged")
  4326.         if not bindSelectionChanged then
  4327.                 bindSelectionChanged = Create('BindableEvent',{Name = "SelectionChanged"})
  4328.                 bindSelectionChanged.Parent = explorerPanel
  4329.         end
  4330.  
  4331.         local SelectionList = {}
  4332.         local SelectionSet = {}
  4333.         local Updates = true
  4334.         Selection = {
  4335.                 Selected = SelectionSet;
  4336.                 List = SelectionList;
  4337.         }
  4338.  
  4339.         local function addObject(object)
  4340.                 -- list update
  4341.                 local lupdate = false
  4342.                 -- scroll update
  4343.                 local supdate = false
  4344.  
  4345.                 if not SelectionSet[object] then
  4346.                         local node = NodeLookup[object]
  4347.                         if node then
  4348.                                 table.insert(SelectionList,object)
  4349.                                 SelectionSet[object] = true
  4350.                                 node.Selected = true
  4351.  
  4352.                                 -- expand all ancestors so that selected node becomes visible
  4353.                                 node = node.Parent
  4354.                                 while node do
  4355.                                         if not node.Expanded then
  4356.                                                 node.Expanded = true
  4357.                                                 lupdate = true
  4358.                                         end
  4359.                                         node = node.Parent
  4360.                                 end
  4361.                                 supdate = true
  4362.                         end
  4363.                 end
  4364.                 return lupdate,supdate
  4365.         end
  4366.  
  4367.         function Selection:Set(objects)
  4368.                 local lupdate = false
  4369.                 local supdate = false
  4370.  
  4371.                 if #SelectionList > 0 then
  4372.                         for i = 1,#SelectionList do
  4373.                                 local object = SelectionList[i]
  4374.                                 local node = NodeLookup[object]
  4375.                                 if node then
  4376.                                         node.Selected = false
  4377.                                         SelectionSet[object] = nil
  4378.                                 end
  4379.                         end
  4380.  
  4381.                         SelectionList = {}
  4382.                         Selection.List = SelectionList
  4383.                         supdate = true
  4384.                 end
  4385.  
  4386.                 for i = 1,#objects do
  4387.                         local l,s = addObject(objects[i])
  4388.                         lupdate = l or lupdate
  4389.                         supdate = s or supdate
  4390.                 end
  4391.  
  4392.                 if lupdate then
  4393.                         rawUpdateList()
  4394.                         supdate = true
  4395.                 elseif supdate then
  4396.                         scrollBar:Update()
  4397.                 end
  4398.  
  4399.                 if supdate then
  4400.                         bindSelectionChanged:Fire()
  4401.                         updateActions()
  4402.                 end
  4403.         end
  4404.  
  4405.         function Selection:Add(object)
  4406.                 local l,s = addObject(object)
  4407.                 if l then
  4408.                         rawUpdateList()
  4409.                         if Updates then
  4410.                                 bindSelectionChanged:Fire()
  4411.                                 updateActions()
  4412.                         end
  4413.                 elseif s then
  4414.                         scrollBar:Update()
  4415.                         if Updates then
  4416.                                 bindSelectionChanged:Fire()
  4417.                                 updateActions()
  4418.                         end
  4419.                 end
  4420.         end
  4421.        
  4422.         function Selection:StopUpdates()
  4423.                 Updates = false
  4424.         end
  4425.        
  4426.         function Selection:ResumeUpdates()
  4427.                 Updates = true
  4428.                 bindSelectionChanged:Fire()
  4429.                 updateActions()
  4430.         end
  4431.  
  4432.         function Selection:Remove(object,noupdate)
  4433.                 if SelectionSet[object] then
  4434.                         local node = NodeLookup[object]
  4435.                         if node then
  4436.                                 node.Selected = false
  4437.                                 SelectionSet[object] = nil
  4438.                                 for i = 1,#SelectionList do
  4439.                                         if SelectionList[i] == object then
  4440.                                                 table.remove(SelectionList,i)
  4441.                                                 break
  4442.                                         end
  4443.                                 end
  4444.  
  4445.                                 if not noupdate then
  4446.                                         scrollBar:Update()
  4447.                                 end
  4448.                                 bindSelectionChanged:Fire()
  4449.                                 updateActions()
  4450.                         end
  4451.                 end
  4452.         end
  4453.  
  4454.         function Selection:Get()
  4455.                 local list = {}
  4456.                 for i = 1,#SelectionList do
  4457.                         list[i] = SelectionList[i]
  4458.                 end
  4459.                 return list
  4460.         end
  4461.  
  4462.         bindSetSelection.OnInvoke = function(...)
  4463.                 Selection:Set(...)
  4464.         end
  4465.  
  4466.         bindGetSelection.OnInvoke = function()
  4467.                 return Selection:Get()
  4468.         end
  4469. end
  4470.  
  4471. function CreateCaution(title,msg)
  4472.         local newCaution = CautionWindow:Clone()
  4473.         newCaution.Title.Text = title
  4474.         newCaution.MainWindow.Desc.Text = msg
  4475.         newCaution.Parent = explorerPanel.Parent
  4476.         newCaution.Visible = true
  4477.         newCaution.MainWindow.Ok.MouseButton1Up:connect(function()
  4478.                 newCaution:Destroy()
  4479.         end)
  4480. end
  4481.  
  4482. function CreateTableCaution(title,msg)
  4483.         if type(msg) ~= "table" then return CreateCaution(title,tostring(msg)) end
  4484.         local newCaution = TableCautionWindow:Clone()
  4485.         newCaution.Title.Text = title
  4486.        
  4487.         local TableList = newCaution.MainWindow.TableResults
  4488.         local TableTemplate = newCaution.MainWindow.TableTemplate
  4489.        
  4490.         for i,v in pairs(msg) do
  4491.                 local newResult = TableTemplate:Clone()
  4492.                 newResult.Type.Text = type(v)
  4493.                 newResult.Value.Text = tostring(v)
  4494.                 newResult.Position = UDim2.new(0,0,0,#TableList:GetChildren() * 20)
  4495.                 newResult.Parent = TableList
  4496.                 TableList.CanvasSize = UDim2.new(0,0,0,#TableList:GetChildren() * 20)
  4497.                 newResult.Visible = true
  4498.         end
  4499.         newCaution.Parent = explorerPanel.Parent
  4500.         newCaution.Visible = true
  4501.         newCaution.MainWindow.Ok.MouseButton1Up:connect(function()
  4502.                 newCaution:Destroy()
  4503.         end)
  4504. end
  4505.  
  4506. local function Split(str, delimiter)
  4507.         local start = 1
  4508.         local t = {}
  4509.         while true do
  4510.                 local pos = string.find (str, delimiter, start, true)
  4511.                 if not pos then
  4512.                         break
  4513.                 end
  4514.                 table.insert (t, string.sub (str, start, pos - 1))
  4515.                 start = pos + string.len (delimiter)
  4516.         end
  4517.         table.insert (t, string.sub (str, start))
  4518.         return t
  4519. end
  4520.  
  4521. local function ToValue(value,type)
  4522.         if type == "Vector2" then
  4523.                 local list = Split(value,",")
  4524.                 if #list < 2 then return nil end
  4525.                 local x = tonumber(list[1]) or 0
  4526.                 local y = tonumber(list[2]) or 0
  4527.                 return Vector2.new(x,y)
  4528.         elseif type == "Vector3" then
  4529.                 local list = Split(value,",")
  4530.                 if #list < 3 then return nil end
  4531.                 local x = tonumber(list[1]) or 0
  4532.                 local y = tonumber(list[2]) or 0
  4533.                 local z = tonumber(list[3]) or 0
  4534.                 return Vector3.new(x,y,z)
  4535.         elseif type == "Color3" then
  4536.                 local list = Split(value,",")
  4537.                 if #list < 3 then return nil end
  4538.                 local r = tonumber(list[1]) or 0
  4539.                 local g = tonumber(list[2]) or 0
  4540.                 local b = tonumber(list[3]) or 0
  4541.                 return Color3.new(r/255,g/255, b/255)
  4542.         elseif type == "UDim2" then
  4543.                 local list = Split(string.gsub(string.gsub(value, "{", ""),"}",""),",")
  4544.                 if #list < 4 then return nil end
  4545.                 local xScale = tonumber(list[1]) or 0
  4546.                 local xOffset = tonumber(list[2]) or 0
  4547.                 local yScale = tonumber(list[3]) or 0
  4548.                 local yOffset = tonumber(list[4]) or 0
  4549.                 return UDim2.new(xScale, xOffset, yScale, yOffset)
  4550.         elseif type == "Number" then
  4551.                 return tonumber(value)
  4552.         elseif type == "String" then
  4553.                 return value
  4554.         elseif type == "NumberRange" then
  4555.                 local list = Split(value,",")
  4556.                 if #list == 1 then
  4557.                         if tonumber(list[1]) == nil then return nil end
  4558.                         local newVal = tonumber(list[1]) or 0
  4559.                         return NumberRange.new(newVal)
  4560.                 end
  4561.                 if #list < 2 then return nil end
  4562.                 local x = tonumber(list[1]) or 0
  4563.                 local y = tonumber(list[2]) or 0
  4564.                 return NumberRange.new(x,y)
  4565.         elseif type == "Script" then
  4566.                 local success,err = ypcall(function()
  4567.                 _G.D_E_X_DONOTUSETHISPLEASE = nil
  4568.                 loadstring(
  4569.                         "_G.D_E_X_DONOTUSETHISPLEASE = "..value
  4570.                 )()
  4571.                 return _G.D_E_X_DONOTUSETHISPLEASE
  4572.                 end)
  4573.                 if err then
  4574.                         return nil
  4575.                 end
  4576.         else
  4577.                 return nil
  4578.         end
  4579. end
  4580.  
  4581. local function ToPropValue(value,type)
  4582.         if type == "Vector2" then
  4583.                 local list = Split(value,",")
  4584.                 if #list < 2 then return nil end
  4585.                 local x = tonumber(list[1]) or 0
  4586.                 local y = tonumber(list[2]) or 0
  4587.                 return Vector2.new(x,y)
  4588.         elseif type == "Vector3" then
  4589.                 local list = Split(value,",")
  4590.                 if #list < 3 then return nil end
  4591.                 local x = tonumber(list[1]) or 0
  4592.                 local y = tonumber(list[2]) or 0
  4593.                 local z = tonumber(list[3]) or 0
  4594.                 return Vector3.new(x,y,z)
  4595.         elseif type == "Color3" then
  4596.                 local list = Split(value,",")
  4597.                 if #list < 3 then return nil end
  4598.                 local r = tonumber(list[1]) or 0
  4599.                 local g = tonumber(list[2]) or 0
  4600.                 local b = tonumber(list[3]) or 0
  4601.                 return Color3.new(r/255,g/255, b/255)
  4602.         elseif type == "UDim2" then
  4603.                 local list = Split(string.gsub(string.gsub(value, "{", ""),"}",""),",")
  4604.                 if #list < 4 then return nil end
  4605.                 local xScale = tonumber(list[1]) or 0
  4606.                 local xOffset = tonumber(list[2]) or 0
  4607.                 local yScale = tonumber(list[3]) or 0
  4608.                 local yOffset = tonumber(list[4]) or 0
  4609.                 return UDim2.new(xScale, xOffset, yScale, yOffset)
  4610.         elseif type == "Content" then
  4611.                 return value
  4612.         elseif type == "float" or type == "int" or type == "double" then
  4613.                 return tonumber(value)
  4614.         elseif type == "string" then
  4615.                 return value
  4616.         elseif type == "NumberRange" then
  4617.                 local list = Split(value,",")
  4618.                 if #list == 1 then
  4619.                         if tonumber(list[1]) == nil then return nil end
  4620.                         local newVal = tonumber(list[1]) or 0
  4621.                         return NumberRange.new(newVal)
  4622.                 end
  4623.                 if #list < 2 then return nil end
  4624.                 local x = tonumber(list[1]) or 0
  4625.                 local y = tonumber(list[2]) or 0
  4626.                 return NumberRange.new(x,y)
  4627.         elseif string.sub(value,1,4) == "Enum" then
  4628.                 local getEnum = value
  4629.                 while true do
  4630.                         local x,y = string.find(getEnum,".")
  4631.                         if y then
  4632.                                 getEnum = string.sub(getEnum,y+1)
  4633.                         else
  4634.                                 break
  4635.                         end
  4636.                 end
  4637.                 -- print(getEnum)
  4638.                 return getEnum
  4639.         else
  4640.                 return nil
  4641.         end
  4642. end
  4643.  
  4644. function PromptRemoteCaller(inst)
  4645.         if CurrentRemoteWindow then
  4646.                 CurrentRemoteWindow:Destroy()
  4647.                 CurrentRemoteWindow = nil
  4648.         end
  4649.         CurrentRemoteWindow = RemoteWindow:Clone()
  4650.         CurrentRemoteWindow.Parent = explorerPanel.Parent
  4651.         CurrentRemoteWindow.Visible = true
  4652.        
  4653.         local displayValues = false
  4654.        
  4655.         local ArgumentList = CurrentRemoteWindow.MainWindow.Arguments
  4656.         local ArgumentTemplate = CurrentRemoteWindow.MainWindow.ArgumentTemplate
  4657.        
  4658.         if inst:IsA("RemoteEvent") then
  4659.                 CurrentRemoteWindow.Title.Text = "Fire Event"
  4660.                 CurrentRemoteWindow.MainWindow.Ok.Text = "Fire"
  4661.                 CurrentRemoteWindow.MainWindow.DisplayReturned.Visible = false
  4662.                 CurrentRemoteWindow.MainWindow.Desc2.Visible = false
  4663.         end
  4664.        
  4665.         local newArgument = ArgumentTemplate:Clone()
  4666.         newArgument.Parent = ArgumentList
  4667.         newArgument.Visible = true
  4668.         newArgument.Type.MouseButton1Down:connect(function()
  4669.                 createDDown(newArgument.Type,function(choice)
  4670.                         newArgument.Type.Text = choice
  4671.                 end,"Script","Number","String","Color3","Vector3","Vector2","UDim2","NumberRange")
  4672.         end)
  4673.        
  4674.         CurrentRemoteWindow.MainWindow.Ok.MouseButton1Up:connect(function()
  4675.                 if CurrentRemoteWindow and inst.Parent ~= nil then
  4676.                         local MyArguments = {}
  4677.                         for i,v in pairs(ArgumentList:GetChildren()) do
  4678.                                 table.insert(MyArguments,ToValue(v.Value.Text,v.Type.Text))
  4679.                         end
  4680.                         if inst:IsA("RemoteFunction") then
  4681.                                 if displayValues then
  4682.                                         spawn(function()
  4683.                                                 local myResults = inst:InvokeServer(unpack(MyArguments))
  4684.                                                 if myResults then
  4685.                                                         CreateTableCaution("Remote Caller",myResults)
  4686.                                                 else
  4687.                                                         CreateCaution("Remote Caller","This remote did not return anything.")
  4688.                                                 end
  4689.                                         end)
  4690.                                 else
  4691.                                         spawn(function()
  4692.                                                 inst:InvokeServer(unpack(MyArguments))
  4693.                                         end)
  4694.                                 end
  4695.                         else
  4696.                                 inst:FireServer(unpack(MyArguments))
  4697.                         end
  4698.                         CurrentRemoteWindow:Destroy()
  4699.                         CurrentRemoteWindow = nil
  4700.                 end
  4701.         end)
  4702.        
  4703.         CurrentRemoteWindow.MainWindow.Add.MouseButton1Up:connect(function()
  4704.                 if CurrentRemoteWindow then
  4705.                         local newArgument = ArgumentTemplate:Clone()
  4706.                         newArgument.Position = UDim2.new(0,0,0,#ArgumentList:GetChildren() * 20)
  4707.                         newArgument.Parent = ArgumentList
  4708.                         ArgumentList.CanvasSize = UDim2.new(0,0,0,#ArgumentList:GetChildren() * 20)
  4709.                         newArgument.Visible = true
  4710.                         newArgument.Type.MouseButton1Down:connect(function()
  4711.                                 createDDown(newArgument.Type,function(choice)
  4712.                                         newArgument.Type.Text = choice
  4713.                                 end,"Script","Number","String","Color3","Vector3","Vector2","UDim2","NumberRange")
  4714.                         end)
  4715.                 end
  4716.         end)
  4717.        
  4718.         CurrentRemoteWindow.MainWindow.Subtract.MouseButton1Up:connect(function()
  4719.                 if CurrentRemoteWindow then
  4720.                         if #ArgumentList:GetChildren() > 1 then
  4721.                                 ArgumentList:GetChildren()[#ArgumentList:GetChildren()]:Destroy()
  4722.                                 ArgumentList.CanvasSize = UDim2.new(0,0,0,#ArgumentList:GetChildren() * 20)
  4723.                         end
  4724.                 end
  4725.         end)
  4726.        
  4727.         CurrentRemoteWindow.MainWindow.Cancel.MouseButton1Up:connect(function()
  4728.                 if CurrentRemoteWindow then
  4729.                         CurrentRemoteWindow:Destroy()
  4730.                         CurrentRemoteWindow = nil
  4731.                 end
  4732.         end)
  4733.        
  4734.         CurrentRemoteWindow.MainWindow.DisplayReturned.MouseButton1Up:connect(function()
  4735.                 if displayValues then
  4736.                         displayValues = false
  4737.                         CurrentRemoteWindow.MainWindow.DisplayReturned.enabled.Visible = false
  4738.                 else
  4739.                         displayValues = true
  4740.                         CurrentRemoteWindow.MainWindow.DisplayReturned.enabled.Visible = true
  4741.                 end
  4742.         end)
  4743. end
  4744.  
  4745. function PromptSaveInstance(inst)
  4746.         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
  4747.         if CurrentSaveInstanceWindow then
  4748.                 CurrentSaveInstanceWindow:Destroy()
  4749.                 CurrentSaveInstanceWindow = nil
  4750.                 if explorerPanel.Parent:FindFirstChild("SaveInstanceOverwriteCaution") then
  4751.                         explorerPanel.Parent.SaveInstanceOverwriteCaution:Destroy()
  4752.                 end
  4753.         end
  4754.         CurrentSaveInstanceWindow = SaveInstanceWindow:Clone()
  4755.         CurrentSaveInstanceWindow.Parent = explorerPanel.Parent
  4756.         CurrentSaveInstanceWindow.Visible = true
  4757.        
  4758.         local filename = CurrentSaveInstanceWindow.MainWindow.FileName
  4759.         local saveObjects = true
  4760.         local overwriteCaution = false
  4761.        
  4762.         CurrentSaveInstanceWindow.MainWindow.Save.MouseButton1Up:connect(function()
  4763.                 if readfile and getelysianpath then
  4764.                         if readfile(getelysianpath()..filename.Text..".rbxmx") then
  4765.                                 if not overwriteCaution then
  4766.                                         overwriteCaution = true
  4767.                                         local newCaution = ConfirmationWindow:Clone()
  4768.                                         newCaution.Name = "SaveInstanceOverwriteCaution"
  4769.                                         newCaution.MainWindow.Desc.Text = "The file, "..filename.Text..".rbxmx, already exists. Overwrite?"
  4770.                                         newCaution.Parent = explorerPanel.Parent
  4771.                                         newCaution.Visible = true
  4772.                                         newCaution.MainWindow.Yes.MouseButton1Up:connect(function()
  4773.                                                 ypcall(function()
  4774.                                                         SaveInstance(inst,filename.Text..".rbxmx",not saveObjects)
  4775.                                                 end)
  4776.                                                 overwriteCaution = false
  4777.                                                 newCaution:Destroy()
  4778.                                                 if CurrentSaveInstanceWindow then
  4779.                                                         CurrentSaveInstanceWindow:Destroy()
  4780.                                                         CurrentSaveInstanceWindow = nil
  4781.                                                 end
  4782.                                         end)
  4783.                                         newCaution.MainWindow.No.MouseButton1Up:connect(function()
  4784.                                                 overwriteCaution = false
  4785.                                                 newCaution:Destroy()
  4786.                                         end)
  4787.                                 end
  4788.                         else
  4789.                                 ypcall(function()
  4790.                                         SaveInstance(inst,filename.Text..".rbxmx",not saveObjects)
  4791.                                 end)
  4792.                                 if CurrentSaveInstanceWindow then
  4793.                                         CurrentSaveInstanceWindow:Destroy()
  4794.                                         CurrentSaveInstanceWindow = nil
  4795.                                         if explorerPanel.Parent:FindFirstChild("SaveInstanceOverwriteCaution") then
  4796.                                                 explorerPanel.Parent.SaveInstanceOverwriteCaution:Destroy()
  4797.                                         end
  4798.                                 end
  4799.                         end
  4800.                 else
  4801.                         ypcall(function()
  4802.                                 if SaveInstance then
  4803.                                         SaveInstance(inst,filename.Text..".rbxmx",not saveObjects)
  4804.                                 else
  4805.                                         _G.SaveInstance(inst,filename.Text,not saveObjects)
  4806.                                 end
  4807.                         end)
  4808.                         if CurrentSaveInstanceWindow then
  4809.                                 CurrentSaveInstanceWindow:Destroy()
  4810.                                 CurrentSaveInstanceWindow = nil
  4811.                                 if explorerPanel.Parent:FindFirstChild("SaveInstanceOverwriteCaution") then
  4812.                                         explorerPanel.Parent.SaveInstanceOverwriteCaution:Destroy()
  4813.                                 end
  4814.                         end
  4815.                 end
  4816.         end)
  4817.         CurrentSaveInstanceWindow.MainWindow.Cancel.MouseButton1Up:connect(function()
  4818.                 if CurrentSaveInstanceWindow then
  4819.                         CurrentSaveInstanceWindow:Destroy()
  4820.                         CurrentSaveInstanceWindow = nil
  4821.                         if explorerPanel.Parent:FindFirstChild("SaveInstanceOverwriteCaution") then
  4822.                                 explorerPanel.Parent.SaveInstanceOverwriteCaution:Destroy()
  4823.                         end
  4824.                 end
  4825.         end)
  4826.         CurrentSaveInstanceWindow.MainWindow.SaveObjects.MouseButton1Up:connect(function()
  4827.                 if saveObjects then
  4828.                         saveObjects = false
  4829.                         CurrentSaveInstanceWindow.MainWindow.SaveObjects.enabled.Visible = false
  4830.                 else
  4831.                         saveObjects = true
  4832.                         CurrentSaveInstanceWindow.MainWindow.SaveObjects.enabled.Visible = true
  4833.                 end
  4834.         end)
  4835. end
  4836.  
  4837. function DestroyRightClick()
  4838.         if currentRightClickMenu then
  4839.                 currentRightClickMenu:Destroy()
  4840.                 currentRightClickMenu = nil
  4841.         end
  4842.         if CurrentInsertObjectWindow and CurrentInsertObjectWindow.Visible then
  4843.                 CurrentInsertObjectWindow.Visible = false
  4844.         end
  4845. end
  4846.  
  4847. function rightClickMenu(sObj)
  4848.         local mouse = game:GetService'Players'.LocalPlayer:GetMouse()
  4849.        
  4850.         local extra = (sObj == RunningScriptsStorageMain and 'Refresh Instances' or nil)
  4851.  
  4852.         currentRightClickMenu = CreateRightClickMenu(
  4853.                 {
  4854.                         'Cut',
  4855.                         'Copy',
  4856.                         'Paste Into',
  4857.                         'Duplicate',
  4858.                         'Delete',
  4859.                         -- 'Group',
  4860.                         -- 'Ungroup',
  4861.                         'Select Children',
  4862.                         'Teleport To',
  4863.                         -- 'Track',
  4864.                         -- 'Insert Part',
  4865.                         -- 'Insert Object',
  4866.                         'View Script',
  4867.                         'Save Script',
  4868.                         'Dump Function',
  4869.                         'Save Instance',
  4870.                         'Call Function',
  4871.                         'Call Remote',
  4872.                         'Try Get Values',
  4873.                         extra
  4874.                 },
  4875.                 "",
  4876.                 false,
  4877.                 function(option)
  4878.                         if option == "Cut" then
  4879.                                 if not Option.Modifiable then return end
  4880.                                 clipboard = {}
  4881.                                 local list = Selection.List
  4882.                                 local cut = {}
  4883.                                 for i = 1,#list do
  4884.                                         local obj = list[i]:Clone()
  4885.                                         if obj then
  4886.                                                 table.insert(clipboard,obj)
  4887.                                                 table.insert(cut,list[i])
  4888.                                         end
  4889.                                 end
  4890.                                 for i = 1,#cut do
  4891.                                         pcall(delete,cut[i])
  4892.                                 end
  4893.                                 updateActions()
  4894.                         elseif option == "Copy" then
  4895.                                 if not Option.Modifiable then return end
  4896.                                 clipboard = {}
  4897.                                 local list = Selection.List
  4898.                                 for i = 1,#list do
  4899.                                         table.insert(clipboard,list[i]:Clone())
  4900.                                 end
  4901.                                 updateActions()
  4902.                         elseif option == "Paste Into" then
  4903.                                 if not Option.Modifiable then return end
  4904.                                 local parent = Selection.List[1] or workspace
  4905.                                 for i = 1,#clipboard do
  4906.                                         clipboard[i]:Clone().Parent = parent
  4907.                                 end
  4908.                         elseif option == "Duplicate" then
  4909.                                 if not Option.Modifiable then return end
  4910.                                 local list = Selection:Get()
  4911.                                 for i = 1,#list do
  4912.                                         list[i]:Clone().Parent = Selection.List[1].Parent or workspace
  4913.                                 end
  4914.                         elseif option == "Delete" then
  4915.                                 if not Option.Modifiable then return end
  4916.                                 local list = Selection:Get()
  4917.                                 for i = 1,#list do
  4918.                                         pcall(delete,list[i])
  4919.                                 end
  4920.                                 Selection:Set({})
  4921.                         elseif option == "Group" then
  4922.                                 if not Option.Modifiable then return end
  4923.                                 local newModel = Instance.new("Model")
  4924.                                 local list = Selection:Get()
  4925.                                 newModel.Parent = Selection.List[1].Parent or workspace
  4926.                                 for i = 1,#list do
  4927.                                         list[i].Parent = newModel
  4928.                                 end
  4929.                                 Selection:Set({})
  4930.                         elseif option == "Ungroup" then
  4931.                                 if not Option.Modifiable then return end
  4932.                                 local ungrouped = {}
  4933.                                 local list = Selection:Get()
  4934.                                 for i = 1,#list do
  4935.                                         if list[i]:IsA("Model") then
  4936.                                                 for i2,v2 in pairs(list[i]:GetChildren()) do
  4937.                                                         v2.Parent = list[i].Parent or workspace
  4938.                                                         table.insert(ungrouped,v2)
  4939.                                                 end            
  4940.                                                 pcall(delete,list[i])                  
  4941.                                         end
  4942.                                 end
  4943.                                 Selection:Set({})
  4944.                                 if SettingsRemote:Invoke("SelectUngrouped") then
  4945.                                         for i,v in pairs(ungrouped) do
  4946.                                                 Selection:Add(v)
  4947.                                         end
  4948.                                 end
  4949.                         elseif option == "Select Children" then
  4950.                                 if not Option.Modifiable then return end
  4951.                                 local list = Selection:Get()
  4952.                                 Selection:Set({})
  4953.                                 Selection:StopUpdates()
  4954.                                 for i = 1,#list do
  4955.                                         for i2,v2 in pairs(list[i]:GetChildren()) do
  4956.                                                 Selection:Add(v2)
  4957.                                         end
  4958.                                 end
  4959.                                 Selection:ResumeUpdates()
  4960.                         elseif option == "Teleport To" then
  4961.                                 if not Option.Modifiable then return end
  4962.                                 local list = Selection:Get()
  4963.                                 for i = 1,#list do
  4964.                                         if list[i]:IsA("BasePart") then
  4965.                                                 pcall(function()
  4966.                                                         game:GetService'Players'.LocalPlayer.Character.HumanoidRootPart.CFrame = list[i].CFrame
  4967.                                                 end)
  4968.                                                 break
  4969.                                         end
  4970.                                 end
  4971.                         elseif option == "Insert Part" then
  4972.                                 if not Option.Modifiable then return end
  4973.                                 local insertedParts = {}
  4974.                                 local list = Selection:Get()
  4975.                                 for i = 1,#list do
  4976.                                         pcall(function()
  4977.                                                 local newPart = Instance.new("Part")
  4978.                                                 newPart.Parent = list[i]
  4979.                                                 newPart.CFrame = CFrame.new(game:GetService'Players'.LocalPlayer.Character.Head.Position) + Vector3.new(0,3,0)
  4980.                                                 table.insert(insertedParts,newPart)
  4981.                                         end)
  4982.                                 end
  4983.                         elseif option == "Save Instance" then
  4984.                                 if not Option.Modifiable then return end
  4985.                                 local list = Selection:Get()
  4986.                                 if #list == 1 then
  4987.                                         list[1].Archivable = true
  4988.                                         ypcall(function()PromptSaveInstance(list[1]:Clone())end)
  4989.                                 elseif #list > 1 then
  4990.                                         local newModel = Instance.new("Model")
  4991.                                         newModel.Name = "SavedInstances"
  4992.                                         for i = 1,#list do
  4993.                                                 ypcall(function()
  4994.                                                         list[i].Archivable = true
  4995.                                                         list[i]:Clone().Parent = newModel
  4996.                                                 end)
  4997.                                         end
  4998.                                         PromptSaveInstance(newModel)
  4999.                                 end
  5000.                         elseif option == "Call Remote" then
  5001.                                 if not Option.Modifiable then return end
  5002.                                 local list = Selection:Get()
  5003.                                 for i = 1,#list do
  5004.                                         if list[i]:IsA("RemoteFunction") or list[i]:IsA("RemoteEvent") then
  5005.                                                 PromptRemoteCaller(list[i])
  5006.                                                 break
  5007.                                         end
  5008.                                 end
  5009.                         elseif option == "Save Script" then
  5010.                                 if not Option.Modifiable then return end
  5011.                                 local list = Selection:Get()
  5012.                                 for i = 1,#list do
  5013.                                         if list[i]:IsA("LocalScript") or list[i]:IsA("ModuleScript") then
  5014.                                                 if Synapse then
  5015.                                                         Synapse:WriteFile(game.PlaceId .. '_' .. list[i].Name:gsub('%W', '') .. '_' .. math.random(100000, 999999) .. '.lua', decompile(list[i]))
  5016.                                                 elseif writefile then
  5017.                                                         writefile(game.PlaceId .. '_' .. list[i].Name:gsub('%W', '') .. '_' .. math.random(100000, 999999) .. '.lua', decompile(list[i]));
  5018.                                                 end
  5019.                                         end
  5020.                                 end
  5021.                         elseif option == "View Script" then
  5022.                                 -- if not Option.Modifiable then return end
  5023.                                 local list = Selection:Get()
  5024.                                 for i = 1,#list do
  5025.                                         if list[i]:IsA("LocalScript") or list[i]:IsA("ModuleScript") then
  5026.                                                 ScriptEditorEvent:Fire(list[i])
  5027.                                         end
  5028.                                 end
  5029.                         elseif option == 'Try Get Values' then
  5030.                                 for i, sObj in pairs(Selection:Get()) do
  5031.                                         if vars[sObj.Name] or funcs[sObj.Name] then
  5032.                                                 local var = vars[sObj.Name] or funcs[sObj.Name]
  5033.                                                 if var then
  5034.                                                         if type(var) == 'table' then
  5035.                                                                 local T = var;
  5036.                                                                 -- table.sort(T, cmp)
  5037.                                                                 for i,v in pairs(T) do
  5038.                                                                         local n = Instance.new('StringValue', sObj);
  5039.                                                                         n.Name = tostring(i);
  5040.                                                                         local a, b = pcall(function()
  5041.                                                                                 return tostring(v);
  5042.                                                                         end)
  5043.                                                                         n.Value = a and b or '.undefined';
  5044.                                                                         if (type(v) == 'function') then
  5045.                                                                                 funcs[i] = v;
  5046.                                                                         else
  5047.                                                                                 vars[i] = v;
  5048.                                                                         end
  5049.                                                                 end
  5050.                                                         elseif type(var) == 'function' then
  5051.                                                                 local T = debug.getupvalues(var);
  5052.                                                                 -- table.sort(T, cmp)
  5053.                                                                 for i,v in pairs(T) do
  5054.                                                                         local n = Instance.new('StringValue', sObj);
  5055.                                                                         n.Name = tostring(i);
  5056.                                                                         local a, b = pcall(function()
  5057.                                                                                 return tostring(v);
  5058.                                                                         end)
  5059.                                                                         n.Value = a and b or '.undefined';
  5060.                                                                         if (type(v) == 'function') then
  5061.                                                                                 funcs[i] = v;
  5062.                                                                         else
  5063.                                                                                 vars[i] = v;
  5064.                                                                         end
  5065.                                                                 end
  5066.                                                         end
  5067.                                                 end
  5068.                                         end
  5069.                                         if typeof(sObj) == 'Instance' and (sObj:IsA'LocalScript' or sObj:IsA'ModuleScript') then
  5070.                                                 do -- get script env values
  5071.                                                         local T = getsenv(sObj);
  5072.                                                         for i,v in pairs(T) do
  5073.                                                                 if not sObj:FindFirstChild(tostring(i)) then
  5074.                                                                         local n = Instance.new('StringValue', sObj);
  5075.                                                                         n.Name = tostring(i);
  5076.                                                                         local a, b = pcall(function()
  5077.                                                                                 return tostring(v);
  5078.                                                                         end)
  5079.                                                                         n.Value = a and b or '.undefined';
  5080.                                                                         if (type(v) == 'function') then
  5081.                                                                                 funcs[i] = v;
  5082.                                                                                 for fn, p in pairs(debug.getupvalues(v)) do
  5083.                                                                                         if not sObj:FindFirstChild(tostring(fn)) then
  5084.                                                                                                 local n = Instance.new('StringValue', sObj);
  5085.                                                                                                 n.Name = tostring(fn);
  5086.                                                                                                 local a, b = pcall(function()
  5087.                                                                                                         return tostring(p);
  5088.                                                                                                 end)
  5089.                                                                                                 n.Value = a and b or '.undefined';
  5090.                                                                                                 if (type(p) == 'function') then
  5091.                                                                                                         funcs[fn] = p;
  5092.                                                                                                 else
  5093.                                                                                                         vars[fn] = p;
  5094.                                                                                                 end
  5095.                                                                                         end
  5096.                                                                                 end
  5097.                                                                         else
  5098.                                                                                 vars[i] = v;
  5099.                                                                         end
  5100.                                                                 end
  5101.                                                         end
  5102.                                                 end
  5103.                                                 --[[do -- attempt to get upvalue variables
  5104.                                                         for i,v in pairs(getreg()) do
  5105.                                                                 if typeof(v) == 'function' then
  5106.                                                                         local T = debug.getupvalues(v);
  5107.                                                                         for i,v in pairs(T) do
  5108.                                                                                 if not sObj:FindFirstChild(tostring(i)) then
  5109.                                                                                         local n = Instance.new('StringValue', sObj);
  5110.                                                                                         n.Name = tostring(i);
  5111.                                                                                         local a, b = pcall(function()
  5112.                                                                                                 return tostring(v);
  5113.                                                                                         end)
  5114.                                                                                         n.Value = a and b or '.undefined';
  5115.                                                                                         if (type(v) == 'function') then
  5116.                                                                                                 for _, p in pairs(debug.getupvalues(v)) do
  5117.                                                                                                         if not sObj:FindFirstChild(tostring(_)) then
  5118.                                                                                                                 local n = Instance.new('StringValue', sObj);
  5119.                                                                                                                 n.Name = tostring(_);
  5120.                                                                                                                 local a, b = pcall(function()
  5121.                                                                                                                         return tostring(p);
  5122.                                                                                                                 end)
  5123.                                                                                                                 n.Value = a and b or '.undefined';
  5124.                                                                                                         end
  5125.                                                                                                 end
  5126.                                                                                         end
  5127.                                                                                 end
  5128.                                                                         end
  5129.                                                                 end
  5130.                                                         end
  5131.                                                 end]]
  5132.                                         end
  5133.                                 end
  5134.                         elseif option == 'Dump Function' then
  5135.                                 if funcs[sObj.Name] then
  5136.                                         local var = funcs[sObj.Name]
  5137.                                         if var then
  5138.                                                 if type(var) == 'function' then
  5139.                                                         if writefile then
  5140.                                                                 writefile(game.PlaceId .. '_' .. 'DF' .. '_' .. math.random(100000, 999999) .. '.lua', decompile(var));
  5141.                                                         end
  5142.                                                 end
  5143.                                         end
  5144.                                 end
  5145.                         elseif option == 'Refresh Instances' then
  5146.                                 for i,v in pairs(getscripts()) do
  5147.                                         if v ~= RunningScriptsStorage and v ~= DexStorage and v ~= UpvalueStorage then
  5148.                                                 if (v:IsA'LocalScript' or v:IsA'ModuleScript' or v:IsA'Script') then
  5149.                                                         v.Archivable = true;
  5150.                                                         local ls = v:clone()
  5151.                                                         if v:IsA'LocalScript' or v:IsA'Script' then ls.Disabled = true; end
  5152.                                                         ls.Parent = RunningScriptsStorageMain
  5153.                                                 end
  5154.                                         end
  5155.                                 end
  5156.                         elseif option == 'Track' then
  5157.                                 if not Option.Modifiable then return end
  5158.                                 local list = Selection:Get()
  5159.                                 for i = 1,#list do
  5160.                                         pcall(function()
  5161.                                                 local name = list[i].Name;
  5162.                                                 if list[i].Parent:FindFirstChildOfClass'Humanoid' then
  5163.                                                         name = list[i].Parent.Name;
  5164.                                                 end
  5165.                                                 _G.Track(list[i], name, list[i].BrickColor.Color);
  5166.                                         end)
  5167.                                 end
  5168.                         end
  5169.         end)
  5170.         currentRightClickMenu.Parent = explorerPanel.Parent
  5171.         currentRightClickMenu.Position = UDim2.new(0,mouse.X,0,mouse.Y)
  5172.         if currentRightClickMenu.AbsolutePosition.X + currentRightClickMenu.AbsoluteSize.X > explorerPanel.AbsolutePosition.X + explorerPanel.AbsoluteSize.X then
  5173.                 currentRightClickMenu.Position = UDim2.new(0, explorerPanel.AbsolutePosition.X + explorerPanel.AbsoluteSize.X - currentRightClickMenu.AbsoluteSize.X, 0, mouse.Y)
  5174.         end
  5175. end
  5176.  
  5177. local function cancelReparentDrag()end
  5178. local function cancelSelectDrag()end
  5179. do
  5180.         local listEntries = {}
  5181.         local nameConnLookup = {}
  5182.  
  5183.         local mouseDrag = Create('ImageButton',{
  5184.                 Name = "MouseDrag";
  5185.                 Position = UDim2.new(-0.25,0,-0.25,0);
  5186.                 Size = UDim2.new(1.5,0,1.5,0);
  5187.                 Transparency = 1;
  5188.                 AutoButtonColor = false;
  5189.                 Active = true;
  5190.                 ZIndex = 10;
  5191.         })
  5192.         local function dragSelect(last,add,button)
  5193.                 local connDrag
  5194.                 local conUp
  5195.  
  5196.                 conDrag = mouseDrag.MouseMoved:connect(function(x,y)
  5197.                         local pos = Vector2.new(x,y) - listFrame.AbsolutePosition
  5198.                         local size = listFrame.AbsoluteSize
  5199.                         if pos.x < 0 or pos.x > size.x or pos.y < 0 or pos.y > size.y then return end
  5200.  
  5201.                         local i = math.ceil(pos.y/ENTRY_BOUND) + scrollBar.ScrollIndex
  5202.                         -- Mouse may have made a large step, so interpolate between the
  5203.                         -- last index and the current.
  5204.                         for n = i<last and i or last, i>last and i or last do
  5205.                                 local node = TreeList[n]
  5206.                                 if node then
  5207.                                         if add then
  5208.                                                 Selection:Add(node.Object)
  5209.                                         else
  5210.                                                 Selection:Remove(node.Object)
  5211.                                         end
  5212.                                 end
  5213.                         end
  5214.                         last = i
  5215.                 end)
  5216.  
  5217.                 function cancelSelectDrag()
  5218.                         mouseDrag.Parent = nil
  5219.                         conDrag:disconnect()
  5220.                         conUp:disconnect()
  5221.                         function cancelSelectDrag()end
  5222.                 end
  5223.  
  5224.                 conUp = mouseDrag[button]:connect(cancelSelectDrag)
  5225.  
  5226.                 mouseDrag.Parent = GetScreen(listFrame)
  5227.         end
  5228.  
  5229.         local function dragReparent(object,dragGhost,clickPos,ghostOffset)
  5230.                 local connDrag
  5231.                 local conUp
  5232.                 local conUp2
  5233.  
  5234.                 local parentIndex = nil
  5235.                 local dragged = false
  5236.  
  5237.                 local parentHighlight = Create('Frame',{
  5238.                         Transparency = 1;
  5239.                         Visible = false;
  5240.                         Create('Frame',{
  5241.                                 BorderSizePixel = 0;
  5242.                                 BackgroundColor3 = Color3.new(0,0,0);
  5243.                                 BackgroundTransparency = 0.1;
  5244.                                 Position = UDim2.new(0,0,0,0);
  5245.                                 Size = UDim2.new(1,0,0,1);
  5246.                         });
  5247.                         Create('Frame',{
  5248.                                 BorderSizePixel = 0;
  5249.                                 BackgroundColor3 = Color3.new(0,0,0);
  5250.                                 BackgroundTransparency = 0.1;
  5251.                                 Position = UDim2.new(1,0,0,0);
  5252.                                 Size = UDim2.new(0,1,1,0);
  5253.                         });
  5254.                         Create('Frame',{
  5255.                                 BorderSizePixel = 0;
  5256.                                 BackgroundColor3 = Color3.new(0,0,0);
  5257.                                 BackgroundTransparency = 0.1;
  5258.                                 Position = UDim2.new(0,0,1,0);
  5259.                                 Size = UDim2.new(1,0,0,1);
  5260.                         });
  5261.                         Create('Frame',{
  5262.                                 BorderSizePixel = 0;
  5263.                                 BackgroundColor3 = Color3.new(0,0,0);
  5264.                                 BackgroundTransparency = 0.1;
  5265.                                 Position = UDim2.new(0,0,0,0);
  5266.                                 Size = UDim2.new(0,1,1,0);
  5267.                         });
  5268.                 })
  5269.                 SetZIndex(parentHighlight,9)
  5270.  
  5271.                 conDrag = mouseDrag.MouseMoved:connect(function(x,y)
  5272.                         local dragPos = Vector2.new(x,y)
  5273.                         if dragged then
  5274.                                 local pos = dragPos - listFrame.AbsolutePosition
  5275.                                 local size = listFrame.AbsoluteSize
  5276.  
  5277.                                 parentIndex = nil
  5278.                                 parentHighlight.Visible = false
  5279.                                 if pos.x >= 0 and pos.x <= size.x and pos.y >= 0 and pos.y <= size.y + ENTRY_SIZE*2 then
  5280.                                         local i = math.ceil(pos.y/ENTRY_BOUND-2)
  5281.                                         local node = TreeList[i + scrollBar.ScrollIndex]
  5282.                                         if node and node.Object ~= object and not object:IsAncestorOf(node.Object) then
  5283.                                                 parentIndex = i
  5284.                                                 local entry = listEntries[i]
  5285.                                                 if entry then
  5286.                                                         parentHighlight.Visible = true
  5287.                                                         parentHighlight.Position = UDim2.new(0,1,0,entry.AbsolutePosition.y-listFrame.AbsolutePosition.y)
  5288.                                                         parentHighlight.Size = UDim2.new(0,size.x-4,0,entry.AbsoluteSize.y)
  5289.                                                 end
  5290.                                         end
  5291.                                 end
  5292.  
  5293.                                 dragGhost.Position = UDim2.new(0,dragPos.x+ghostOffset.x,0,dragPos.y+ghostOffset.y)
  5294.                         elseif (clickPos-dragPos).magnitude > 8 then
  5295.                                 dragged = true
  5296.                                 SetZIndex(dragGhost,9)
  5297.                                 dragGhost.IndentFrame.Transparency = 0.25
  5298.                                 dragGhost.IndentFrame.EntryText.TextColor3 = GuiColor.TextSelected
  5299.                                 dragGhost.Position = UDim2.new(0,dragPos.x+ghostOffset.x,0,dragPos.y+ghostOffset.y)
  5300.                                 dragGhost.Parent = GetScreen(listFrame)
  5301.                                 parentHighlight.Parent = listFrame
  5302.                         end
  5303.                 end)
  5304.  
  5305.                 function cancelReparentDrag()
  5306.                         mouseDrag.Parent = nil
  5307.                         conDrag:disconnect()
  5308.                         conUp:disconnect()
  5309.                         conUp2:disconnect()
  5310.                         dragGhost:Destroy()
  5311.                         parentHighlight:Destroy()
  5312.                         function cancelReparentDrag()end
  5313.                 end
  5314.  
  5315.                 local wasSelected = Selection.Selected[object]
  5316.                 if not wasSelected and Option.Selectable then
  5317.                         Selection:Set({object})
  5318.                 end
  5319.  
  5320.                 conUp = mouseDrag.MouseButton1Up:connect(function()
  5321.                         cancelReparentDrag()
  5322.                         if dragged then
  5323.                                 if parentIndex then
  5324.                                         local parentNode = TreeList[parentIndex + scrollBar.ScrollIndex]
  5325.                                         if parentNode then
  5326.                                                 parentNode.Expanded = true
  5327.  
  5328.                                                 local parentObj = parentNode.Object
  5329.                                                 local function parent(a,b)
  5330.                                                         a.Parent = b
  5331.                                                 end
  5332.                                                 if Option.Selectable then
  5333.                                                         local list = Selection.List
  5334.                                                         for i = 1,#list do
  5335.                                                                 pcall(parent,list[i],parentObj)
  5336.                                                         end
  5337.                                                 else
  5338.                                                         pcall(parent,object,parentObj)
  5339.                                                 end
  5340.                                         end
  5341.                                 end
  5342.                         else
  5343.                                 -- do selection click
  5344.                                 if wasSelected and Option.Selectable then
  5345.                                         Selection:Set({})
  5346.                                 end
  5347.                         end
  5348.                 end)
  5349.                 conUp2 = mouseDrag.MouseButton2Down:connect(function()
  5350.                         cancelReparentDrag()
  5351.                 end)
  5352.  
  5353.                 mouseDrag.Parent = GetScreen(listFrame)
  5354.         end
  5355.  
  5356.         local entryTemplate = Create('ImageButton',{
  5357.                 Name = "Entry";
  5358.                 Transparency = 1;
  5359.                 AutoButtonColor = false;
  5360.                 Position = UDim2.new(0,0,0,0);
  5361.                 Size = UDim2.new(1,0,0,ENTRY_SIZE);
  5362.                 Create('Frame',{
  5363.                         Name = "IndentFrame";
  5364.                         BackgroundTransparency = 1;
  5365.                         BackgroundColor3 = GuiColor.Selected;
  5366.                         BorderColor3 = GuiColor.BorderSelected;
  5367.                         Position = UDim2.new(0,0,0,0);
  5368.                         Size = UDim2.new(1,0,1,0);
  5369.                         Create(Icon('ImageButton',0),{
  5370.                                 Name = "Expand";
  5371.                                 AutoButtonColor = false;
  5372.                                 Position = UDim2.new(0,-GUI_SIZE,0.5,-GUI_SIZE/2);
  5373.                                 Size = UDim2.new(0,GUI_SIZE,0,GUI_SIZE);
  5374.                         });
  5375.                         Create(Icon(nil,0),{
  5376.                                 Name = "ExplorerIcon";
  5377.                                 Position = UDim2.new(0,2+ENTRY_PADDING,0.5,-GUI_SIZE/2);
  5378.                                 Size = UDim2.new(0,GUI_SIZE,0,GUI_SIZE);
  5379.                         });
  5380.                         Create('TextLabel',{
  5381.                                 Name = "EntryText";
  5382.                                 BackgroundTransparency = 1;
  5383.                                 TextColor3 = GuiColor.Text;
  5384.                                 TextXAlignment = 'Left';
  5385.                                 TextYAlignment = 'Center';
  5386.                                 Font = FONT;
  5387.                                 FontSize = FONT_SIZE;
  5388.                                 Text = "";
  5389.                                 Position = UDim2.new(0,2+ENTRY_SIZE+4,0,0);
  5390.                                 Size = UDim2.new(1,-2,1,0);
  5391.                         });
  5392.                 });
  5393.         })
  5394.  
  5395.         function scrollBar.UpdateCallback(self)
  5396.                 for i = 1,self.VisibleSpace do
  5397.                         local node = TreeList[i + self.ScrollIndex]
  5398.                         if node then
  5399.                                 local entry = listEntries[i]
  5400.                                 if not entry then
  5401.                                         entry = Create(entryTemplate:Clone(),{
  5402.                                                 Position = UDim2.new(0,2,0,ENTRY_BOUND*(i-1)+2);
  5403.                                                 Size = UDim2.new(0,nodeWidth,0,ENTRY_SIZE);
  5404.                                                 ZIndex = listFrame.ZIndex;
  5405.                                         })
  5406.                                         listEntries[i] = entry
  5407.  
  5408.                                         local expand = entry.IndentFrame.Expand
  5409.                                         expand.MouseEnter:connect(function()
  5410.                                                 local node = TreeList[i + self.ScrollIndex]
  5411.                                                 if #node > 0 then
  5412.                                                         if node.Expanded then
  5413.                                                                 Icon(expand,NODE_EXPANDED_OVER)
  5414.                                                         else
  5415.                                                                 Icon(expand,NODE_COLLAPSED_OVER)
  5416.                                                         end
  5417.                                                 end
  5418.                                         end)
  5419.                                         expand.MouseLeave:connect(function()
  5420.                                                 local node = TreeList[i + self.ScrollIndex]
  5421.                                                 if #node > 0 then
  5422.                                                         if node.Expanded then
  5423.                                                                 Icon(expand,NODE_EXPANDED)
  5424.                                                         else
  5425.                                                                 Icon(expand,NODE_COLLAPSED)
  5426.                                                         end
  5427.                                                 end
  5428.                                         end)
  5429.                                         expand.MouseButton1Down:connect(function()
  5430.                                                 local node = TreeList[i + self.ScrollIndex]
  5431.                                                 if #node > 0 then
  5432.                                                         node.Expanded = not node.Expanded
  5433.                                                         if node.Object == explorerPanel.Parent and node.Expanded then
  5434.                                                                 CreateCaution("Warning","Please be careful when editing instances inside here, this is like the System32 of Dex and modifying objects here can break Dex.")
  5435.                                                         end
  5436.                                                         -- use raw update so the list updates instantly
  5437.                                                         rawUpdateList()
  5438.                                                 end
  5439.                                         end)
  5440.  
  5441.                                         entry.MouseButton1Down:connect(function(x,y)
  5442.                                                 local node = TreeList[i + self.ScrollIndex]
  5443.                                                 DestroyRightClick()
  5444.                                                 if GetAwaitRemote:Invoke() then
  5445.                                                         bindSetAwaiting:Fire(node.Object)
  5446.                                                         return
  5447.                                                 end
  5448.                                                
  5449.                                                 if not HoldingShift then
  5450.                                                         lastSelectedNode = i + self.ScrollIndex
  5451.                                                 end
  5452.                                                
  5453.                                                 if HoldingShift and not filteringWorkspace() then
  5454.                                                         if lastSelectedNode then
  5455.                                                                 if i + self.ScrollIndex - lastSelectedNode > 0 then
  5456.                                                                         Selection:StopUpdates()
  5457.                                                                         for i2 = 1, i + self.ScrollIndex - lastSelectedNode do
  5458.                                                                                 local newNode = TreeList[lastSelectedNode + i2]
  5459.                                                                                 if newNode then
  5460.                                                                                         Selection:Add(newNode.Object)
  5461.                                                                                 end
  5462.                                                                         end
  5463.                                                                         Selection:ResumeUpdates()
  5464.                                                                 else
  5465.                                                                         Selection:StopUpdates()
  5466.                                                                         for i2 = i + self.ScrollIndex - lastSelectedNode, 1 do
  5467.                                                                                 local newNode = TreeList[lastSelectedNode + i2]
  5468.                                                                                 if newNode then
  5469.                                                                                         Selection:Add(newNode.Object)
  5470.                                                                                 end
  5471.                                                                         end
  5472.                                                                         Selection:ResumeUpdates()
  5473.                                                                 end
  5474.                                                         end
  5475.                                                         return
  5476.                                                 end
  5477.                                                
  5478.                                                 if HoldingCtrl then
  5479.                                                         if Selection.Selected[node.Object] then
  5480.                                                                 Selection:Remove(node.Object)
  5481.                                                         else
  5482.                                                                 Selection:Add(node.Object)
  5483.                                                         end
  5484.                                                         return
  5485.                                                 end
  5486.                                                 if Option.Modifiable then
  5487.                                                         local pos = Vector2.new(x,y)
  5488.                                                         dragReparent(node.Object,entry:Clone(),pos,entry.AbsolutePosition-pos)
  5489.                                                 elseif Option.Selectable then
  5490.                                                         if Selection.Selected[node.Object] then
  5491.                                                                 Selection:Set({})
  5492.                                                         else
  5493.                                                                 Selection:Set({node.Object})
  5494.                                                         end
  5495.                                                         dragSelect(i+self.ScrollIndex,true,'MouseButton1Up')
  5496.                                                 end
  5497.                                         end)
  5498.  
  5499.                                         entry.MouseButton2Down:connect(function()
  5500.                                                 if not Option.Selectable then return end
  5501.                                                
  5502.                                                 DestroyRightClick()
  5503.                                                
  5504.                                                 curSelect = entry
  5505.                                                
  5506.                                                 local node = TreeList[i + self.ScrollIndex]
  5507.                                                
  5508.                                                 if GetAwaitRemote:Invoke() then
  5509.                                                         bindSetAwaiting:Fire(node.Object)
  5510.                                                         return
  5511.                                                 end
  5512.                                                
  5513.                                                 if not Selection.Selected[node.Object] then
  5514.                                                         Selection:Set({node.Object})
  5515.                                                 end
  5516.                                         end)
  5517.                                        
  5518.                                        
  5519.                                         entry.MouseButton2Up:connect(function()
  5520.                                                 if not Option.Selectable then return end
  5521.                                                
  5522.                                                 local node = TreeList[i + self.ScrollIndex]
  5523.                                                
  5524.                                                 if checkMouseInGui(curSelect) then
  5525.                                                         rightClickMenu(node.Object)
  5526.                                                 end
  5527.                                         end)
  5528.  
  5529.                                         entry.Parent = listFrame
  5530.                                 end
  5531.  
  5532.                                 entry.Visible = true
  5533.  
  5534.                                 local object = node.Object
  5535.  
  5536.                                 -- update expand icon
  5537.                                 if #node == 0 then
  5538.                                         entry.IndentFrame.Expand.Visible = false
  5539.                                 elseif node.Expanded then
  5540.                                         Icon(entry.IndentFrame.Expand,NODE_EXPANDED)
  5541.                                         entry.IndentFrame.Expand.Visible = true
  5542.                                 else
  5543.                                         Icon(entry.IndentFrame.Expand,NODE_COLLAPSED)
  5544.                                         entry.IndentFrame.Expand.Visible = true
  5545.                                 end
  5546.  
  5547.                                 -- update explorer icon
  5548.                                 Icon(entry.IndentFrame.ExplorerIcon,ExplorerIndex[object.ClassName] or 0)
  5549.  
  5550.                                 -- update indentation
  5551.                                 local w = (node.Depth)*(2+ENTRY_PADDING+GUI_SIZE)
  5552.                                 entry.IndentFrame.Position = UDim2.new(0,w,0,0)
  5553.                                 entry.IndentFrame.Size = UDim2.new(1,-w,1,0)
  5554.  
  5555.                                 -- update name change detection
  5556.                                 if nameConnLookup[entry] then
  5557.                                         nameConnLookup[entry]:disconnect()
  5558.                                 end
  5559.                                 local text = entry.IndentFrame.EntryText
  5560.                                 text.Text = object.Name
  5561.                                 nameConnLookup[entry] = node.Object.Changed:connect(function(p)
  5562.                                         if p == 'Name' then
  5563.                                                 text.Text = object.Name
  5564.                                         end
  5565.                                 end)
  5566.  
  5567.                                 -- update selection
  5568.                                 entry.IndentFrame.Transparency = node.Selected and 0 or 1
  5569.                                 text.TextColor3 = GuiColor[node.Selected and 'TextSelected' or 'Text']
  5570.  
  5571.                                 entry.Size = UDim2.new(0,nodeWidth,0,ENTRY_SIZE)
  5572.                         elseif listEntries[i] then
  5573.                                 listEntries[i].Visible = false
  5574.                         end
  5575.                 end
  5576.                 for i = self.VisibleSpace+1,self.TotalSpace do
  5577.                         local entry = listEntries[i]
  5578.                         if entry then
  5579.                                 listEntries[i] = nil
  5580.                                 entry:Destroy()
  5581.                         end
  5582.                 end
  5583.         end
  5584.  
  5585.         function scrollBarH.UpdateCallback(self)
  5586.                 for i = 1,scrollBar.VisibleSpace do
  5587.                         local node = TreeList[i + scrollBar.ScrollIndex]
  5588.                         if node then
  5589.                                 local entry = listEntries[i]
  5590.                                 if entry then
  5591.                                         entry.Position = UDim2.new(0,2 - scrollBarH.ScrollIndex,0,ENTRY_BOUND*(i-1)+2)
  5592.                                 end
  5593.                         end
  5594.                 end
  5595.         end
  5596.  
  5597.         Connect(listFrame.Changed,function(p)
  5598.                 if p == 'AbsoluteSize' then
  5599.                         rawUpdateSize()
  5600.                 end
  5601.         end)
  5602.  
  5603.         local wheelAmount = 6
  5604.        
  5605.         explorerPanel.MouseWheelForward:connect(function()
  5606.                 if input ~= nil and input.down ~= nil and input.down.leftshift then
  5607.                         if scrollBarH.VisibleSpace - 1 > wheelAmount then
  5608.                                 scrollBarH:ScrollTo(scrollBarH.ScrollIndex - wheelAmount)
  5609.                         else
  5610.                                 scrollBarH:ScrollTo(scrollBarH.ScrollIndex - scrollBarH.VisibleSpace)
  5611.                         end
  5612.                 else
  5613.                         if scrollBar.VisibleSpace - 1 > wheelAmount then
  5614.                                 scrollBar:ScrollTo(scrollBar.ScrollIndex - wheelAmount)
  5615.                         else
  5616.                                 scrollBar:ScrollTo(scrollBar.ScrollIndex - scrollBar.VisibleSpace)
  5617.                         end
  5618.                 end
  5619.         end)
  5620.         explorerPanel.MouseWheelBackward:connect(function()
  5621.                 if input ~= nil and input.down ~= nil and input.down.leftshift then
  5622.                         if scrollBarH.VisibleSpace - 1 > wheelAmount then
  5623.                                 scrollBarH:ScrollTo(scrollBarH.ScrollIndex + wheelAmount)
  5624.                         else
  5625.                                 scrollBarH:ScrollTo(scrollBarH.ScrollIndex + scrollBarH.VisibleSpace)
  5626.                         end
  5627.                 else
  5628.                         if scrollBar.VisibleSpace - 1 > wheelAmount then
  5629.                                 scrollBar:ScrollTo(scrollBar.ScrollIndex + wheelAmount)
  5630.                         else
  5631.                                 scrollBar:ScrollTo(scrollBar.ScrollIndex + scrollBar.VisibleSpace)
  5632.                         end
  5633.                 end
  5634.         end)
  5635. end
  5636.  
  5637. ----------------------------------------------------------------
  5638. ----------------------------------------------------------------
  5639. ----------------------------------------------------------------
  5640. ----------------------------------------------------------------
  5641. ---- Object detection
  5642.  
  5643. -- Inserts `v` into `t` at `i`. Also sets `Index` field in `v`.
  5644. local function insert(t,i,v)
  5645.         for n = #t,i,-1 do
  5646.                 local v = t[n]
  5647.                 v.Index = n+1
  5648.                 t[n+1] = v
  5649.         end
  5650.         v.Index = i
  5651.         t[i] = v
  5652. end
  5653.  
  5654. -- Removes `i` from `t`. Also sets `Index` field in removed value.
  5655. local function remove(t,i)
  5656.         local v = t[i]
  5657.         for n = i+1,#t do
  5658.                 local v = t[n]
  5659.                 v.Index = n-1
  5660.                 t[n-1] = v
  5661.         end
  5662.         t[#t] = nil
  5663.         v.Index = 0
  5664.         return v
  5665. end
  5666.  
  5667. -- Returns how deep `o` is in the tree.
  5668. local function depth(o)
  5669.         local d = -1
  5670.         while o do
  5671.                 o = o.Parent
  5672.                 d = d + 1
  5673.         end
  5674.         return d
  5675. end
  5676.  
  5677.  
  5678. local connLookup = {}
  5679.  
  5680. -- Returns whether a node would be present in the tree list
  5681. local function nodeIsVisible(node)
  5682.         local visible = true
  5683.         node = node.Parent
  5684.         while node and visible do
  5685.                 visible = visible and node.Expanded
  5686.                 node = node.Parent
  5687.         end
  5688.         return visible
  5689. end
  5690.  
  5691. -- Removes an object's tree node. Called when the object stops existing in the
  5692. -- game tree.
  5693. local function removeObject(object)
  5694.         local objectNode = NodeLookup[object]
  5695.         if not objectNode then
  5696.                 return
  5697.         end
  5698.  
  5699.         local visible = nodeIsVisible(objectNode)
  5700.  
  5701.         Selection:Remove(object,true)
  5702.  
  5703.         local parent = objectNode.Parent
  5704.         remove(parent,objectNode.Index)
  5705.         NodeLookup[object] = nil
  5706.         connLookup[object]:disconnect()
  5707.         connLookup[object] = nil
  5708.  
  5709.         if visible then
  5710.                 updateList()
  5711.         elseif nodeIsVisible(parent) then
  5712.                 updateScroll()
  5713.         end
  5714. end
  5715.  
  5716. -- Moves a tree node to a new parent. Called when an existing object's parent
  5717. -- changes.
  5718. local function moveObject(object,parent)
  5719.         local objectNode = NodeLookup[object]
  5720.         if not objectNode then
  5721.                 return
  5722.         end
  5723.  
  5724.         local parentNode = NodeLookup[parent]
  5725.         if not parentNode then
  5726.                 return
  5727.         end
  5728.  
  5729.         local visible = nodeIsVisible(objectNode)
  5730.  
  5731.         remove(objectNode.Parent,objectNode.Index)
  5732.         objectNode.Parent = parentNode
  5733.  
  5734.         objectNode.Depth = depth(object)
  5735.         local function r(node,d)
  5736.                 for i = 1,#node do
  5737.                         node[i].Depth = d
  5738.                         r(node[i],d+1)
  5739.                 end
  5740.         end
  5741.         r(objectNode,objectNode.Depth+1)
  5742.  
  5743.         insert(parentNode,#parentNode+1,objectNode)
  5744.  
  5745.         if visible or nodeIsVisible(objectNode) then
  5746.                 updateList()
  5747.         elseif nodeIsVisible(objectNode.Parent) then
  5748.                 updateScroll()
  5749.         end
  5750. end
  5751.  
  5752. -- ScriptContext['/Libraries/LibraryRegistration/LibraryRegistration']
  5753. -- This RobloxLocked object lets me index its properties for some reason
  5754.  
  5755. local function check(object)
  5756.         return object.AncestryChanged
  5757. end
  5758.  
  5759. -- Creates a new tree node from an object. Called when an object starts
  5760. -- existing in the game tree.
  5761. local function addObject(object,noupdate)
  5762.         if script then
  5763.                 -- protect against naughty RobloxLocked objects
  5764.                 local s = pcall(check,object)
  5765.                 if not s then
  5766.                         return
  5767.                 end
  5768.         end
  5769.  
  5770.         local parentNode = NodeLookup[object.Parent]
  5771.         if not parentNode then
  5772.                 return
  5773.         end
  5774.  
  5775.         local objectNode = {
  5776.                 Object = object;
  5777.                 Parent = parentNode;
  5778.                 Index = 0;
  5779.                 Expanded = false;
  5780.                 Selected = false;
  5781.                 Depth = depth(object);
  5782.         }
  5783.  
  5784.         connLookup[object] = Connect(object.AncestryChanged,function(c,p)
  5785.                 if c == object then
  5786.                         if p == nil then
  5787.                                 removeObject(c)
  5788.                         else
  5789.                                 moveObject(c,p)
  5790.                         end
  5791.                 end
  5792.         end)
  5793.  
  5794.         NodeLookup[object] = objectNode
  5795.         insert(parentNode,#parentNode+1,objectNode)
  5796.  
  5797.         if not noupdate then
  5798.                 if nodeIsVisible(objectNode) then
  5799.                         updateList()
  5800.                 elseif nodeIsVisible(objectNode.Parent) then
  5801.                         updateScroll()
  5802.                 end
  5803.         end
  5804. end
  5805.  
  5806. local function makeObject(obj,par)
  5807.         local newObject = Instance.new(obj.ClassName)
  5808.         for i,v in pairs(obj.Properties) do
  5809.                 ypcall(function()
  5810.                         local newProp
  5811.                         newProp = ToPropValue(v.Value,v.Type)
  5812.                         newObject[v.Name] = newProp
  5813.                 end)
  5814.         end
  5815.         newObject.Parent = par
  5816. end
  5817.  
  5818. local function writeObject(obj)
  5819.         local newObject = {ClassName = obj.ClassName, Properties = {}}
  5820.         for i,v in pairs(RbxApi.GetProperties(obj.className)) do
  5821.                 if v["Name"] ~= "Parent" then
  5822.                         table.insert(newObject.Properties,{Name = v["Name"], Type = v["ValueType"], Value = tostring(obj[v["Name"]])})
  5823.                 end
  5824.         end
  5825.         return newObject
  5826. end
  5827.  
  5828. local function buildDexStorage()
  5829.         --[[local localDexStorage
  5830.        
  5831.         local success,err = ypcall(function()
  5832.                 localDexStorage = game:GetObjects("rbxasset://DexStorage.rbxm")
  5833.         end)
  5834.        
  5835.         if success and localDexStorage then
  5836.                 for i,v in pairs(localDexStorage:GetChildren()) do
  5837.                         ypcall(function()
  5838.                                 v.Parent = DexStorageMain
  5839.                         end)
  5840.                 end
  5841.         end]]
  5842.        
  5843.         updateDexStorageListeners()
  5844.         --[[
  5845.         local localDexStorage = readfile(getelysianpath().."DexStorage.txt")--game:GetService("CookiesService"):GetCookieValue("DexStorage")
  5846.         --local success,err = pcall(function()
  5847.                 if localDexStorage then
  5848.                         local objTable = game:GetService("HttpService"):JSONDecode(localDexStorage)
  5849.                         for i,v in pairs(objTable) do
  5850.                                 makeObject(v,DexStorageMain)
  5851.                         end
  5852.                 end
  5853.         --end)
  5854.         --]]
  5855. end
  5856.  
  5857. local dexStorageDebounce = false
  5858. local dexStorageListeners = {}
  5859.  
  5860. local function updateDexStorage()
  5861.         if dexStorageDebounce then return end
  5862.         dexStorageDebounce = true      
  5863.        
  5864.         wait()
  5865.        
  5866.         pcall(function()
  5867.                 saveinstance("content//DexStorage.rbxm",DexStorageMain)
  5868.         end)
  5869.        
  5870.         updateDexStorageListeners()
  5871.        
  5872.         dexStorageDebounce = false
  5873.         --[[
  5874.         local success,err = ypcall(function()
  5875.                 local objs = {}
  5876.                 for i,v in pairs(DexStorageMain:GetChildren()) do
  5877.                         table.insert(objs,writeObject(v))
  5878.                 end
  5879.                 writefile(getelysianpath().."DexStorage.txt",game:GetService("HttpService"):JSONEncode(objs))
  5880.                 --game:GetService("CookiesService"):SetCookieValue("DexStorage",game:GetService("HttpService"):JSONEncode(objs))
  5881.         end)
  5882.         if err then
  5883.                 CreateCaution("DexStorage Save Fail!","DexStorage broke! If you see this message, report to Raspberry Pi!")
  5884.         end
  5885.         print("hi")
  5886.         --]]
  5887. end
  5888.  
  5889. function updateDexStorageListeners()
  5890.         for i,v in pairs(dexStorageListeners) do
  5891.                 v:Disconnect()
  5892.         end
  5893.         dexStorageListeners = {}
  5894.         for i,v in pairs(DexStorageMain:GetChildren()) do
  5895.                 pcall(function()
  5896.                         local ev = v.Changed:connect(updateDexStorage)
  5897.                         table.insert(dexStorageListeners,ev)
  5898.                 end)
  5899.         end
  5900. end
  5901.  
  5902. do
  5903.         NodeLookup[workspace.Parent] = {
  5904.                 Object = workspace.Parent;
  5905.                 Parent = nil;
  5906.                 Index = 0;
  5907.                 Expanded = true;
  5908.         }
  5909.        
  5910.         if DexStorageEnabled then
  5911.                 NodeLookup[DexStorage] = {
  5912.                         Object = DexStorage;
  5913.                         Parent = nil;
  5914.                         Index = 0;
  5915.                         Expanded = true;
  5916.                 }
  5917.         end
  5918.        
  5919.         if RunningScriptsStorageEnabled then
  5920.                 NodeLookup[RunningScriptsStorage] = {
  5921.                         Object = RunningScriptsStorage;
  5922.                         Parent = nil;
  5923.                         Index = 0;
  5924.                         Expanded = true;
  5925.                 }
  5926.         end
  5927.  
  5928.         if UpvalueStorageEnabled then
  5929.                 NodeLookup[UpvalueStorage] = {
  5930.                         Object = UpvalueStorage;
  5931.                         Parent = nil;
  5932.                         Index = 0;
  5933.                         Expanded = true;
  5934.                 }
  5935.         end
  5936.  
  5937.         Connect(game.DescendantAdded,addObject)
  5938.         Connect(game.DescendantRemoving,removeObject)
  5939.        
  5940.         if DexStorageEnabled then
  5941.                 --[[
  5942.                 if readfile(getelysianpath().."DexStorage.txt") == nil then
  5943.                         writefile(getelysianpath().."DexStorage.txt","")
  5944.                 end
  5945.                 --]]
  5946.                
  5947.                 buildDexStorage()
  5948.        
  5949.                 Connect(DexStorage.DescendantAdded,addObject)
  5950.                 Connect(DexStorage.DescendantRemoving,removeObject)
  5951.        
  5952.                 Connect(DexStorage.DescendantAdded,updateDexStorage)
  5953.                 Connect(DexStorage.DescendantRemoving,updateDexStorage)
  5954.         end
  5955.  
  5956.         if UpvalueStorageEnabled then
  5957.                 Connect(UpvalueStorageVariables.DescendantAdded,addObject)
  5958.                 Connect(UpvalueStorageVariables.DescendantRemoving,removeObject)
  5959.        
  5960.                 Connect(UpvalueStorageFunctions.DescendantAdded,addObject)
  5961.                 Connect(UpvalueStorageFunctions.DescendantRemoving,removeObject)
  5962.         end
  5963.        
  5964.         if RunningScriptsStorageEnabled then
  5965.                 Connect(RunningScriptsStorage.DescendantAdded,addObject)
  5966.                 Connect(RunningScriptsStorage.DescendantRemoving,removeObject)         
  5967.                
  5968.                 --[[ local currentTable = get_nil_instances()
  5969.                
  5970.                 spawn(function()
  5971.                         while true do
  5972.                                 if #currentTable ~= #get_nil_instances() then
  5973.                                         currentTable = get_nil_instances()
  5974.                                         --RunningScriptsStorageMain:ClearAllChildren()
  5975.                                         for i,v in pairs(get_nil_instances() do
  5976.                                                 if v ~= RunningScriptsStorage and v ~= DexStorage and v ~= UpvalueStorage then
  5977.                                                         pcall(function()
  5978.                                                                 v.Parent = RunningScriptsStorageMain
  5979.                                                         end)
  5980.                                                 end
  5981.                                         end
  5982.                                 end
  5983.                                 wait(60)
  5984.                         end
  5985.                 end)]]
  5986.         end
  5987.  
  5988.         local function get(o)
  5989.                 return o:GetDescendants()
  5990.         end
  5991.  
  5992.         local function r(o)
  5993.                 local s,children = pcall(get,o)
  5994.                 if s then
  5995.                         for i = 1,#children do
  5996.                                 addObject(children[i],true)
  5997.                                 -- r(children[i])
  5998.                         end
  5999.                 end
  6000.         end
  6001.  
  6002.         r(workspace.Parent)
  6003.  
  6004.         if DexStorageEnabled then
  6005.                 r(DexStorage)
  6006.         end
  6007.         if RunningScriptsStorageEnabled then
  6008.                 r(RunningScriptsStorage)
  6009.         end
  6010.         if UpvalueStorageEnabled then
  6011.                 r(UpvalueStorage)
  6012.         end
  6013.  
  6014.         scrollBar.VisibleSpace = math.ceil(listFrame.AbsoluteSize.y/ENTRY_BOUND)
  6015.         updateList()
  6016. end
  6017.  
  6018. ----------------------------------------------------------------
  6019. ----------------------------------------------------------------
  6020. ----------------------------------------------------------------
  6021. ----------------------------------------------------------------
  6022. ---- Actions
  6023.  
  6024. local actionButtons do
  6025.         actionButtons = {}
  6026.  
  6027.         local totalActions = 1
  6028.         local currentActions = totalActions
  6029.         local function makeButton(icon,over,name,vis,cond)
  6030.                 local buttonEnabled = false
  6031.                
  6032.                 local button = Create(Icon('ImageButton',icon),{
  6033.                         Name = name .. "Button";
  6034.                         Visible = Option.Modifiable and Option.Selectable;
  6035.                         Position = UDim2.new(1,-(GUI_SIZE+2)*currentActions+2,0.25,-GUI_SIZE/2);
  6036.                         Size = UDim2.new(0,GUI_SIZE,0,GUI_SIZE);
  6037.                         Parent = headerFrame;
  6038.                 })
  6039.  
  6040.                 local tipText = Create('TextLabel',{
  6041.                         Name = name .. "Text";
  6042.                         Text = name;
  6043.                         Visible = false;
  6044.                         BackgroundTransparency = 1;
  6045.                         TextXAlignment = 'Right';
  6046.                         Font = FONT;
  6047.                         FontSize = FONT_SIZE;
  6048.                         Position = UDim2.new(0,0,0,0);
  6049.                         Size = UDim2.new(1,-(GUI_SIZE+2)*totalActions,1,0);
  6050.                         Parent = headerFrame;
  6051.                 })
  6052.  
  6053.                
  6054.                 button.MouseEnter:connect(function()
  6055.                         if buttonEnabled then
  6056.                                 button.BackgroundTransparency = 0.9
  6057.                         end
  6058.                         --Icon(button,over)
  6059.                         --tipText.Visible = true
  6060.                 end)
  6061.                 button.MouseLeave:connect(function()
  6062.                         button.BackgroundTransparency = 1
  6063.                         --Icon(button,icon)
  6064.                         --tipText.Visible = false
  6065.                 end)
  6066.  
  6067.                 currentActions = currentActions + 1
  6068.                 actionButtons[#actionButtons+1] = {Obj = button,Cond = cond}
  6069.                 QuickButtons[#actionButtons+1] = {Obj = button,Cond = cond, Toggle = function(on)
  6070.                         if on then
  6071.                                 buttonEnabled = true
  6072.                                 Icon(button,over)
  6073.                         else
  6074.                                 buttonEnabled = false
  6075.                                 Icon(button,icon)
  6076.                         end
  6077.                 end}
  6078.                 return button
  6079.         end
  6080.  
  6081.         --local clipboard = {}
  6082.         local function delete(o)
  6083.                 o.Parent = nil
  6084.         end
  6085.        
  6086.         makeButton(ACTION_EDITQUICKACCESS,ACTION_EDITQUICKACCESS,"Options",true,function()return true end).MouseButton1Click:connect(function()
  6087.                
  6088.         end)
  6089.        
  6090.  
  6091.         -- DELETE
  6092.         makeButton(ACTION_DELETE,ACTION_DELETE_OVER,"Delete",true,function() return #Selection:Get() > 0 end).MouseButton1Click:connect(function()
  6093.                 if not Option.Modifiable then return end
  6094.                 local list = Selection:Get()
  6095.                 for i = 1,#list do
  6096.                         pcall(delete,list[i])
  6097.                 end
  6098.                 Selection:Set({})
  6099.         end)
  6100.        
  6101.         -- PASTE
  6102.         makeButton(ACTION_PASTE,ACTION_PASTE_OVER,"Paste",true,function() return #Selection:Get() > 0 and #clipboard > 0 end).MouseButton1Click:connect(function()
  6103.                 if not Option.Modifiable then return end
  6104.                 local parent = Selection.List[1] or workspace
  6105.                 for i = 1,#clipboard do
  6106.                         clipboard[i]:Clone().Parent = parent
  6107.                 end
  6108.         end)
  6109.        
  6110.         -- COPY
  6111.         makeButton(ACTION_COPY,ACTION_COPY_OVER,"Copy",true,function() return #Selection:Get() > 0 end).MouseButton1Click:connect(function()
  6112.                 if not Option.Modifiable then return end
  6113.                 clipboard = {}
  6114.                 local list = Selection.List
  6115.                 for i = 1,#list do
  6116.                         table.insert(clipboard,list[i]:Clone())
  6117.                 end
  6118.                 updateActions()
  6119.         end)
  6120.        
  6121.         -- CUT
  6122.         makeButton(ACTION_CUT,ACTION_CUT_OVER,"Cut",true,function() return #Selection:Get() > 0 end).MouseButton1Click:connect(function()
  6123.                 if not Option.Modifiable then return end
  6124.                 clipboard = {}
  6125.                 local list = Selection.List
  6126.                 local cut = {}
  6127.                 for i = 1,#list do
  6128.                         local obj = list[i]:Clone()
  6129.                         if obj then
  6130.                                 table.insert(clipboard,obj)
  6131.                                 table.insert(cut,list[i])
  6132.                         end
  6133.                 end
  6134.                 for i = 1,#cut do
  6135.                         pcall(delete,cut[i])
  6136.                 end
  6137.                 updateActions()
  6138.         end)
  6139.        
  6140.         -- FREEZE
  6141.         makeButton(ACTION_FREEZE,ACTION_FREEZE,"Freeze",true,function() return true end)
  6142.        
  6143.         -- ADD/REMOVE STARRED
  6144.         makeButton(ACTION_ADDSTAR,ACTION_ADDSTAR_OVER,"Star",true,function() return #Selection:Get() > 0 end)
  6145.        
  6146.         -- STARRED
  6147.         makeButton(ACTION_STARRED,ACTION_STARRED,"Starred",true,function() return true end)
  6148.  
  6149.  
  6150.         -- SORT
  6151.         -- local actionSort = makeButton(ACTION_SORT,ACTION_SORT_OVER,"Sort")
  6152. end
  6153.  
  6154. ----------------------------------------------------------------
  6155. ----------------------------------------------------------------
  6156. ----------------------------------------------------------------
  6157. ----------------------------------------------------------------
  6158. ---- Option Bindables
  6159.  
  6160. do
  6161.         local optionCallback = {
  6162.                 Modifiable = function(value)
  6163.                         for i = 1,#actionButtons do
  6164.                                 actionButtons[i].Obj.Visible = value and Option.Selectable
  6165.                         end
  6166.                         cancelReparentDrag()
  6167.                 end;
  6168.                 Selectable = function(value)
  6169.                         for i = 1,#actionButtons do
  6170.                                 actionButtons[i].Obj.Visible = value and Option.Modifiable
  6171.                         end
  6172.                         cancelSelectDrag()
  6173.                         Selection:Set({})
  6174.                 end;
  6175.         }
  6176.  
  6177.         local bindSetOption = explorerPanel:FindFirstChild("SetOption")
  6178.         if not bindSetOption then
  6179.                 bindSetOption = Create('BindableFunction',{Name = "SetOption"})
  6180.                 bindSetOption.Parent = explorerPanel
  6181.         end
  6182.  
  6183.         bindSetOption.OnInvoke = function(optionName,value)
  6184.                 if optionCallback[optionName] then
  6185.                         Option[optionName] = value
  6186.                         optionCallback[optionName](value)
  6187.                 end
  6188.         end
  6189.  
  6190.         local bindGetOption = explorerPanel:FindFirstChild("GetOption")
  6191.         if not bindGetOption then
  6192.                 bindGetOption = Create('BindableFunction',{Name = "GetOption"})
  6193.                 bindGetOption.Parent = explorerPanel
  6194.         end
  6195.  
  6196.         bindGetOption.OnInvoke = function(optionName)
  6197.                 if optionName then
  6198.                         return Option[optionName]
  6199.                 else
  6200.                         local options = {}
  6201.                         for k,v in pairs(Option) do
  6202.                                 options[k] = v
  6203.                         end
  6204.                         return options
  6205.                 end
  6206.         end
  6207. end
  6208.  
  6209. function SelectionVar()
  6210.         return Selection
  6211. end
  6212.  
  6213. Input.InputBegan:connect(function(key)
  6214.         if key.KeyCode == Enum.KeyCode.LeftControl then
  6215.                 HoldingCtrl = true
  6216.         end
  6217.         if key.KeyCode == Enum.KeyCode.LeftShift then
  6218.                 HoldingShift = true
  6219.         end
  6220. end)
  6221.  
  6222. Input.InputEnded:connect(function(key)
  6223.         if key.KeyCode == Enum.KeyCode.LeftControl then
  6224.                 HoldingCtrl = false
  6225.         end
  6226.         if key.KeyCode == Enum.KeyCode.LeftShift then
  6227.                 HoldingShift = false
  6228.         end
  6229. end)
  6230.  
  6231. while RbxApi == nil do
  6232.         RbxApi = GetApiRemote:Invoke()
  6233.         wait()
  6234. end
  6235.  
  6236. explorerFilter.FocusLost:connect(function()
  6237.         rawUpdateList()
  6238. end)
  6239.  
  6240. --[[local lastType = 0
  6241.  
  6242. explorerFilter.Changed:connect(function(prop)
  6243.         if prop == "Text" then
  6244.                 if tick() - lastType > 1 then
  6245.                         rawUpdateList()
  6246.                 end
  6247.                 lastType = tick()
  6248.         end
  6249. end)]]
  6250.  
  6251. CurrentInsertObjectWindow = CreateInsertObjectMenu(
  6252.         GetClasses(),
  6253.         "",
  6254.         false,
  6255.         function(option)
  6256.                 CurrentInsertObjectWindow.Visible = false
  6257.                 local list = SelectionVar():Get()
  6258.                 for i = 1,#list do
  6259.                         pcall(function() Instance.new(option,list[i]) end)
  6260.                 end
  6261.                 DestroyRightClick()
  6262.         end
  6263. )
  6264. end)
  6265. spawn(function()
  6266.         --[[
  6267.        
  6268. Change log:
  6269.  
  6270. 09/18
  6271.         Fixed checkbox mouseover sprite
  6272.         Encapsulated checkbox creation into separate method
  6273.         Fixed another checkbox issue
  6274.  
  6275. 09/15
  6276.         Invalid input is ignored instead of setting to default of that data type
  6277.         Consolidated control methods and simplified them
  6278.         All input goes through ToValue method
  6279.         Fixed position of BrickColor palette
  6280.         Made DropDown appear above row if it would otherwise exceed the page height
  6281.         Cleaned up stylesheets
  6282.  
  6283. 09/14
  6284.         Made properties window scroll when mouse wheel scrolled
  6285.         Object/Instance and Color3 data types handled properly
  6286.         Multiple BrickColor controls interfering with each other fixed
  6287.         Added support for Content data type
  6288.        
  6289. --]]
  6290.  
  6291. wait(0.2)
  6292.  
  6293. -- Services
  6294. local Teams = game:GetService("Teams")
  6295. local Workspace = game:GetService("Workspace")
  6296. local Debris = game:GetService("Debris")
  6297. local ContentProvider = game:GetService("ContentProvider")
  6298. local Players = game:GetService("Players")
  6299. local ReplicatedStorage = game:GetService("ReplicatedStorage")
  6300.  
  6301. -- Functions
  6302. function httpGet(url)
  6303.         return game:HttpGet(url,true)
  6304. end
  6305.  
  6306. -- RbxApi Stuff
  6307.  
  6308. local apiUrl = "http://anaminus.github.io/rbx/json/api/latest.json"
  6309. local maxChunkSize = 100 * 1000
  6310. local ApiJson
  6311. if script:FindFirstChild("RawApiJson") then
  6312.         ApiJson = script.RawApiJson
  6313. else
  6314.         ApiJson = ""
  6315. end
  6316.  
  6317.  
  6318. function getLocalApiJson()
  6319.         local rawApiJson = [===[
  6320.         [{"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"}]
  6321. ]===]
  6322.         return rawApiJson
  6323. end
  6324.  
  6325. function getCurrentApiJson()
  6326.         local jsonStr = nil
  6327.  
  6328.         local success, err = pcall(function()
  6329.                 jsonStr = httpGet(apiUrl)
  6330.         end)
  6331.         if success then
  6332.                 return jsonStr
  6333.         else
  6334.                 return getLocalApiJson()
  6335.         end
  6336. end
  6337.  
  6338. function splitStringIntoChunks(jsonStr)
  6339.         -- Splits up a string into a table with a given size
  6340.         local t = {}
  6341.         for i = 1, math.ceil(string.len(jsonStr)/maxChunkSize) do
  6342.                 local str = jsonStr:sub((i-1)*maxChunkSize+1, i*maxChunkSize)
  6343.                 table.insert(t, str)
  6344.         end
  6345.         return t
  6346. end
  6347.  
  6348. local jsonToParse = getCurrentApiJson()
  6349. local apiChunks = splitStringIntoChunks(jsonToParse)
  6350.  
  6351. function getRbxApi()
  6352. --[[
  6353.         Api.Classes
  6354.         Api.Enums
  6355.         Api.GetProperties(className)
  6356.         Api.IsEnum(valueType)
  6357. --]]
  6358.  
  6359. -- Services
  6360. local HttpService = game:GetService("HttpService")
  6361. local ServerStorage = game:GetService("ServerStorage")
  6362. local ReplicatedStorage = game:GetService("ReplicatedStorage")
  6363.  
  6364. -- Remotes
  6365. --local Remotes = ReplicatedStorage:WaitForChild("OnlineStudio"):WaitForChild("Remotes")
  6366. --local GetApiJsonFunction = Remotes:WaitForChild("GetApiJson")
  6367.  
  6368. -- Functions
  6369. local JsonDecode = function(s) return HttpService:JSONDecode(s) end
  6370.  
  6371. local function GetApiRemoteFunction(index)
  6372.         if (apiChunks[index]) then
  6373.                 return apiChunks[index], #apiChunks
  6374.         else
  6375.                 return nil
  6376.         end
  6377. end
  6378.  
  6379. local function getApiJson()
  6380.         local apiTable = {}
  6381.         local firstPage, pageCount = GetApiRemoteFunction(1)
  6382.         table.insert(apiTable, firstPage)
  6383.         for i = 2, pageCount do
  6384.                 --print("Fetching API page # " .. tostring(i))
  6385.                 local result = GetApiRemoteFunction(i)
  6386.                 table.insert(apiTable, result)
  6387.         end
  6388.         return table.concat(apiTable)
  6389. end
  6390.  
  6391. local json = getApiJson()
  6392. local apiDump =  JsonDecode(json)
  6393.  
  6394. local Classes = {}
  6395. local Enums = {}
  6396.  
  6397. local function sortAlphabetic(t, property)
  6398.         table.sort(t,
  6399.                 function(x,y) return x[property] < y[property]
  6400.         end)
  6401. end
  6402.  
  6403. local function isEnum(name)
  6404.         return Enums[name] ~= nil
  6405. end
  6406.  
  6407. local function getProperties(className)
  6408.         local class = Classes[className]
  6409.         local properties = {}
  6410.        
  6411.         if not class then return properties end
  6412.        
  6413.         while class do
  6414.                 for _,property in pairs(class.Properties) do
  6415.                         table.insert(properties, property)
  6416.                 end
  6417.                 class = Classes[class.Superclass]
  6418.         end
  6419.        
  6420.         sortAlphabetic(properties, "Name")
  6421.  
  6422.         return properties
  6423. end
  6424.  
  6425. for _,item in pairs(apiDump) do
  6426.         local itemType = item.type
  6427. -- Classes --
  6428.         if (itemType == 'Class') then
  6429.                 Classes[item.Name] = item
  6430.                 item.Properties = {}
  6431.                 item.Functions = {}
  6432.                 item.YieldFunctions = {}
  6433.                 item.Events = {}
  6434.                 item.Callbacks = {}
  6435. -- Members --
  6436.         elseif (itemType == 'Property') then
  6437.                 table.insert(Classes[item.Class].Properties, item)
  6438.         elseif (itemType == 'Function') then
  6439.                 table.insert(Classes[item.Class].Functions, item)
  6440.         elseif (itemType == 'YieldFunction') then
  6441.                 table.insert(Classes[item.Class].YieldFunctions, item)
  6442.         elseif (itemType == 'Event') then
  6443.                 table.insert(Classes[item.Class].Events, item)
  6444.         elseif (itemType == 'Callback') then
  6445.                 table.insert(Classes[item.Class].Callbacks, item)
  6446. -- Enums --
  6447.         elseif (itemType == 'Enum') then
  6448.                 Enums[item.Name] = item
  6449.                 item.EnumItems = {}
  6450.         elseif (itemType == 'EnumItem') then
  6451.                 Enums[item.Enum].EnumItems[item.Name] = item
  6452.         end
  6453. end
  6454.  
  6455. return {
  6456.         Classes = Classes;
  6457.         Enums = Enums;
  6458.         GetProperties = getProperties;
  6459.         IsEnum = isEnum;
  6460. }
  6461. end
  6462.  
  6463. -- Modules
  6464. local Permissions = {CanEdit = true}
  6465. local RbxApi = getRbxApi()
  6466.  
  6467. --[[
  6468.         RbxApi.Classes
  6469.         RbxApi.Enums
  6470.         RbxApi.GetProperties(className)
  6471.         RbxApi.IsEnum(valueType)
  6472. --]]
  6473.  
  6474. -- Styles
  6475.  
  6476. local function CreateColor3(r, g, b) return Color3.new(r/255,g/255,b/255) end
  6477.  
  6478. local Styles = {
  6479.         Font = Enum.Font.Arial;
  6480.         Margin = 5;
  6481.         Black = CreateColor3(0,0,0);
  6482.         White = CreateColor3(24,24,24);
  6483. }
  6484.  
  6485. local Row = {
  6486.         Font = Styles.Font;
  6487.         FontSize = Enum.FontSize.Size14;
  6488.         TextXAlignment = Enum.TextXAlignment.Left;
  6489.         TextColor = Color3.fromRGB(244,244,244);
  6490.         TextColorOver = Color3.fromRGB(244,244,244);
  6491.         TextLockedColor = CreateColor3(230,230,230);
  6492.         Height = 24;
  6493.         BorderColor = CreateColor3(216/4,216/4,216/4);
  6494.         BackgroundColor = Styles.White;
  6495.         BackgroundColorAlternate = CreateColor3(32, 32, 32);
  6496.         BackgroundColorMouseover = CreateColor3(40, 40, 40);
  6497.         TitleMarginLeft = 15;
  6498. }
  6499.  
  6500. local DropDown = {
  6501.         Font = Styles.Font;
  6502.         FontSize = Enum.FontSize.Size14;
  6503.         TextColor = CreateColor3(255,255,255);
  6504.         TextColorOver = Color3.new(1, 1, 1);
  6505.         TextXAlignment = Enum.TextXAlignment.Left;
  6506.         Height = 16;
  6507.         BackColor = Styles.White;
  6508.         BackColorOver = CreateColor3(190, 90, 0);
  6509.         BorderColor = CreateColor3(45,45,45);
  6510.         BorderSizePixel = 2;
  6511.         ArrowColor = CreateColor3(160/2,160/2,160/2);
  6512.         ArrowColorOver = Styles.Black;
  6513. }
  6514.  
  6515. local BrickColors = {
  6516.         BoxSize = 13;
  6517.         BorderSizePixel = 1;
  6518.         BorderColor = CreateColor3(160,160,160);
  6519.         FrameColor = CreateColor3(160,160,160);
  6520.         Size = 20;
  6521.         Padding = 4;
  6522.         ColorsPerRow = 8;
  6523.         OuterBorder = 1;
  6524.         OuterBorderColor = Styles.Black;
  6525. }
  6526.  
  6527. wait(1)
  6528.  
  6529. local Gui = D_E_X
  6530. local PropertiesFrame = Gui:WaitForChild("PropertiesFrame")
  6531. local ExplorerFrame = Gui:WaitForChild("ExplorerPanel")
  6532.  
  6533. local bindGetSelection = ExplorerFrame.GetSelection
  6534. local bindSelectionChanged = ExplorerFrame.SelectionChanged
  6535. local bindGetApi = PropertiesFrame.GetApi
  6536. local bindGetAwait = PropertiesFrame.GetAwaiting
  6537. local bindSetAwait = PropertiesFrame.SetAwaiting
  6538.  
  6539. local ContentUrl = ContentProvider.BaseUrl .. "asset/?id="
  6540.  
  6541. local SettingsRemote = Gui:WaitForChild("SettingsPanel"):WaitForChild("GetSetting")
  6542.  
  6543. local propertiesSearch = PropertiesFrame.Header.TextBox
  6544.  
  6545. local AwaitingObjectValue = false
  6546. local AwaitingObjectObj
  6547. local AwaitingObjectProp
  6548.  
  6549. function searchingProperties()
  6550.         if propertiesSearch.Text ~= "" and propertiesSearch.Text ~= "Search Properties" then
  6551.                 return true
  6552.         end
  6553.         return false
  6554. end
  6555.  
  6556. local function GetSelection()
  6557.         local selection = bindGetSelection:Invoke()
  6558.         if #selection == 0 then
  6559.                 return nil
  6560.         else
  6561.                 return selection
  6562.         end
  6563. end
  6564.  
  6565. -- Number
  6566.  
  6567. local function Round(number, decimalPlaces)
  6568.         return tonumber(string.format("%." .. (decimalPlaces or 0) .. "f", number))
  6569. end
  6570.  
  6571. -- Strings
  6572.  
  6573. local function Split(str, delimiter)
  6574.         local start = 1
  6575.         local t = {}
  6576.         while true do
  6577.                 local pos = string.find (str, delimiter, start, true)
  6578.                 if not pos then
  6579.                         break
  6580.                 end
  6581.                 table.insert (t, string.sub (str, start, pos - 1))
  6582.                 start = pos + string.len (delimiter)
  6583.         end
  6584.         table.insert (t, string.sub (str, start))
  6585.         return t
  6586. end
  6587.  
  6588. -- Data Type Handling
  6589.  
  6590. local function ToString(value, type)
  6591.         if type == "float" then
  6592.                 return tostring(Round(value,2))
  6593.         elseif type == "Content" then
  6594.                 if string.find(value,"/asset") then
  6595.                         local match = string.find(value, "=") + 1
  6596.                         local id = string.sub(value, match)
  6597.                         return id
  6598.                 else
  6599.                         return tostring(value)
  6600.                 end
  6601.         elseif type == "Vector2" then
  6602.                 local x = value.x
  6603.                 local y = value.y
  6604.                 return string.format("%g, %g", x,y)
  6605.         elseif type == "Vector3" then
  6606.                 local x = value.x
  6607.                 local y = value.y
  6608.                 local z = value.z
  6609.                 return string.format("%g, %g, %g", x,y,z)
  6610.         elseif type == "Color3" then
  6611.                 local r = value.r
  6612.                 local g = value.g
  6613.                 local b = value.b
  6614.                 return string.format("%d, %d, %d", r*255,g*255,b*255)
  6615.         elseif type == "UDim2" then
  6616.                 local xScale = value.X.Scale
  6617.                 local xOffset = value.X.Offset
  6618.                 local yScale = value.Y.Scale
  6619.                 local yOffset = value.Y.Offset
  6620.                 return string.format("{%d, %d}, {%d, %d}", xScale, xOffset, yScale, yOffset)
  6621.         else
  6622.                 return tostring(value)
  6623.         end
  6624. end
  6625.  
  6626. local function ToValue(value,type)
  6627.         if type == "Vector2" then
  6628.                 local list = Split(value,",")
  6629.                 if #list < 2 then return nil end
  6630.                 local x = tonumber(list[1]) or 0
  6631.                 local y = tonumber(list[2]) or 0
  6632.                 return Vector2.new(x,y)
  6633.         elseif type == "Vector3" then
  6634.                 local list = Split(value,",")
  6635.                 if #list < 3 then return nil end
  6636.                 local x = tonumber(list[1]) or 0
  6637.                 local y = tonumber(list[2]) or 0
  6638.                 local z = tonumber(list[3]) or 0
  6639.                 return Vector3.new(x,y,z)
  6640.         elseif type == "Color3" then
  6641.                 local list = Split(value,",")
  6642.                 if #list < 3 then return nil end
  6643.                 local r = tonumber(list[1]) or 0
  6644.                 local g = tonumber(list[2]) or 0
  6645.                 local b = tonumber(list[3]) or 0
  6646.                 return Color3.new(r/255,g/255, b/255)
  6647.         elseif type == "UDim2" then
  6648.                 local list = Split(string.gsub(string.gsub(value, "{", ""),"}",""),",")
  6649.                 if #list < 4 then return nil end
  6650.                 local xScale = tonumber(list[1]) or 0
  6651.                 local xOffset = tonumber(list[2]) or 0
  6652.                 local yScale = tonumber(list[3]) or 0
  6653.                 local yOffset = tonumber(list[4]) or 0
  6654.                 return UDim2.new(xScale, xOffset, yScale, yOffset)
  6655.         elseif type == "Content" then
  6656.                 if tonumber(value) ~= nil then
  6657.                         value = ContentUrl .. value
  6658.                 end
  6659.                 return value
  6660.         elseif type == "float" or type == "int" or type == "double" then
  6661.                 return tonumber(value)
  6662.         elseif type == "string" then
  6663.                 return value
  6664.         elseif type == "NumberRange" then
  6665.                 local list = Split(value,",")
  6666.                 if #list == 1 then
  6667.                         if tonumber(list[1]) == nil then return nil end
  6668.                         local newVal = tonumber(list[1]) or 0
  6669.                         return NumberRange.new(newVal)
  6670.                 end
  6671.                 if #list < 2 then return nil end
  6672.                 local x = tonumber(list[1]) or 0
  6673.                 local y = tonumber(list[2]) or 0
  6674.                 return NumberRange.new(x,y)
  6675.         else
  6676.                 return nil
  6677.         end
  6678. end
  6679.  
  6680.  
  6681. -- Tables
  6682.  
  6683. local function CopyTable(T)
  6684.   local t2 = {}
  6685.   for k,v in pairs(T) do
  6686.     t2[k] = v
  6687.   end
  6688.   return t2
  6689. end
  6690.  
  6691. local function SortTable(T)
  6692.         table.sort(T,
  6693.                 function(x,y) return x.Name < y.Name
  6694.         end)
  6695. end
  6696.  
  6697. -- Spritesheet
  6698. local Sprite = {
  6699.         Width = 13;
  6700.         Height = 13;
  6701. }
  6702.  
  6703. local Spritesheet = {
  6704.         Image = "http://www.roblox.com/asset/?id=128896947";
  6705.         Height = 256;
  6706.         Width = 256;
  6707. }
  6708.  
  6709. local Images = {
  6710.         "unchecked",
  6711.         "checked",
  6712.         "unchecked_over",
  6713.         "checked_over",
  6714.         "unchecked_disabled",
  6715.         "checked_disabled"
  6716. }
  6717.  
  6718. local function SpritePosition(spriteName)
  6719.         local x = 0
  6720.         local y = 0
  6721.         for i,v in pairs(Images) do
  6722.                 if (v == spriteName) then
  6723.                         return {x, y}
  6724.                 end
  6725.                 x = x + Sprite.Height
  6726.                 if (x + Sprite.Width) > Spritesheet.Width then
  6727.                         x = 0
  6728.                         y = y + Sprite.Height
  6729.                 end
  6730.         end
  6731. end
  6732.  
  6733. local function GetCheckboxImageName(checked, readOnly, mouseover)
  6734.         if checked then
  6735.                 if readOnly then
  6736.                         return "checked_disabled"
  6737.                 elseif mouseover then
  6738.                         return "checked_over"
  6739.                 else
  6740.                         return "checked"
  6741.                 end
  6742.         else
  6743.                 if readOnly then
  6744.                         return "unchecked_disabled"
  6745.                 elseif mouseover then
  6746.                         return "unchecked_over"
  6747.                 else
  6748.                         return "unchecked"
  6749.                 end
  6750.         end
  6751. end
  6752.  
  6753. local MAP_ID = 418720155
  6754.  
  6755. -- Gui Controls --
  6756.  
  6757. ---- IconMap ----
  6758. -- Image size: 256px x 256px
  6759. -- Icon size: 16px x 16px
  6760. -- Padding between each icon: 2px
  6761. -- Padding around image edge: 1px
  6762. -- Total icons: 14 x 14 (196)
  6763. local Icon do
  6764.         local iconMap = 'http://www.roblox.com/asset/?id=' .. MAP_ID
  6765.         game:GetService('ContentProvider'):Preload(iconMap)
  6766.         local iconDehash do
  6767.                 -- 14 x 14, 0-based input, 0-based output
  6768.                 local f=math.floor
  6769.                 function iconDehash(h)
  6770.                         return f(h/14%14),f(h%14)
  6771.                 end
  6772.         end
  6773.  
  6774.         function Icon(IconFrame,index)
  6775.                 local row,col = iconDehash(index)
  6776.                 local mapSize = Vector2.new(256,256)
  6777.                 local pad,border = 2,1
  6778.                 local iconSize = 16
  6779.  
  6780.                 local class = 'Frame'
  6781.                 if type(IconFrame) == 'string' then
  6782.                         class = IconFrame
  6783.                         IconFrame = nil
  6784.                 end
  6785.  
  6786.                 if not IconFrame then
  6787.                         IconFrame = Create(class,{
  6788.                                 Name = "Icon";
  6789.                                 BackgroundTransparency = 1;
  6790.                                 ClipsDescendants = true;
  6791.                                 Create('ImageLabel',{
  6792.                                         Name = "IconMap";
  6793.                                         Active = false;
  6794.                                         BackgroundTransparency = 1;
  6795.                                         Image = iconMap;
  6796.                                         Size = UDim2.new(mapSize.x/iconSize,0,mapSize.y/iconSize,0);
  6797.                                 });
  6798.                         })
  6799.                 end
  6800.  
  6801.                 IconFrame.IconMap.Position = UDim2.new(-col - (pad*(col+1) + border)/iconSize,0,-row - (pad*(row+1) + border)/iconSize,0)
  6802.                 return IconFrame
  6803.         end
  6804. end
  6805.  
  6806. local function CreateCell()
  6807.         local tableCell = Instance.new("Frame")
  6808.         tableCell.Size = UDim2.new(0.5, -1, 1, 0)
  6809.         tableCell.BackgroundColor3 = Row.BackgroundColor
  6810.         tableCell.BorderColor3 = Row.BorderColor
  6811.         return tableCell
  6812. end
  6813.        
  6814. local function CreateLabel(readOnly)
  6815.         local label = Instance.new("TextLabel")
  6816.         label.Font = Row.Font
  6817.         label.FontSize = Row.FontSize
  6818.         label.TextXAlignment = Row.TextXAlignment
  6819.         label.BackgroundTransparency = 1
  6820.        
  6821.         if readOnly then
  6822.                 label.TextColor3 = Row.TextLockedColor
  6823.         else
  6824.                 label.TextColor3 = Row.TextColor
  6825.         end
  6826.         return label
  6827. end
  6828.  
  6829. local function CreateTextButton(readOnly, onClick)
  6830.         local button = Instance.new("TextButton")
  6831.         button.Font = Row.Font
  6832.         button.FontSize = Row.FontSize
  6833.         button.TextXAlignment = Row.TextXAlignment
  6834.         button.BackgroundTransparency = 1
  6835.         if readOnly then
  6836.                 button.TextColor3 = Row.TextLockedColor
  6837.         else
  6838.                 button.TextColor3 = Row.TextColor
  6839.                 button.MouseButton1Click:connect(function()
  6840.                         onClick()
  6841.                 end)
  6842.         end
  6843.         return button
  6844. end
  6845.  
  6846. local function CreateObject(readOnly)
  6847.         local button = Instance.new("TextButton")
  6848.         button.Font = Row.Font
  6849.         button.FontSize = Row.FontSize
  6850.         button.TextXAlignment = Row.TextXAlignment
  6851.         button.BackgroundTransparency = 1
  6852.         if readOnly then
  6853.                 button.TextColor3 = Row.TextLockedColor
  6854.         else
  6855.                 button.TextColor3 = Row.TextColor
  6856.         end
  6857.         local cancel = Create(Icon('ImageButton',177),{
  6858.                 Name = "Cancel";
  6859.                 Visible = false;
  6860.                 Position = UDim2.new(1,-20,0,0);
  6861.                 Size = UDim2.new(0,20,0,20);
  6862.                 Parent = button;
  6863.         })
  6864.         return button
  6865. end
  6866.  
  6867. local function CreateTextBox(readOnly)
  6868.         if readOnly then
  6869.                 local box = CreateLabel(readOnly)
  6870.                 return box
  6871.         else
  6872.                 local box = Instance.new("TextBox")
  6873.                 if not SettingsRemote:Invoke("ClearProps") then
  6874.                         box.ClearTextOnFocus = false
  6875.                 end
  6876.                 box.Font = Row.Font
  6877.                 box.FontSize = Row.FontSize
  6878.                 box.TextXAlignment = Row.TextXAlignment
  6879.                 box.BackgroundTransparency = 1
  6880.                 box.TextColor3 = Row.TextColor
  6881.                 return box
  6882.         end
  6883. end
  6884.  
  6885. local function CreateDropDownItem(text, onClick)
  6886.         local button = Instance.new("TextButton")
  6887.         button.Font = DropDown.Font
  6888.         button.FontSize = DropDown.FontSize
  6889.         button.TextColor3 = DropDown.TextColor
  6890.         button.TextXAlignment = DropDown.TextXAlignment
  6891.         button.BackgroundColor3 = DropDown.BackColor
  6892.         button.AutoButtonColor = false
  6893.         button.BorderSizePixel = 0
  6894.         button.Active = true
  6895.         button.Text = text
  6896.        
  6897.         button.MouseEnter:connect(function()
  6898.                 button.TextColor3 = DropDown.TextColorOver
  6899.                 button.BackgroundColor3 = DropDown.BackColorOver
  6900.         end)
  6901.         button.MouseLeave:connect(function()
  6902.                 button.TextColor3 = DropDown.TextColor
  6903.                 button.BackgroundColor3 = DropDown.BackColor
  6904.         end)
  6905.         button.MouseButton1Click:connect(function()
  6906.                 onClick(text)
  6907.         end)   
  6908.         return button
  6909. end
  6910.  
  6911. local function CreateDropDown(choices, currentChoice, readOnly, onClick)
  6912.         local frame = Instance.new("Frame")    
  6913.         frame.Name = "DropDown"
  6914.         frame.Size = UDim2.new(1, 0, 1, 0)
  6915.         frame.BackgroundTransparency = 1
  6916.         frame.Active = true
  6917.        
  6918.         local menu = nil
  6919.         local arrow = nil
  6920.         local expanded = false
  6921.         local margin = DropDown.BorderSizePixel;
  6922.        
  6923.         local button = Instance.new("TextButton")
  6924.         button.Font = Row.Font
  6925.         button.FontSize = Row.FontSize
  6926.         button.TextXAlignment = Row.TextXAlignment
  6927.         button.BackgroundTransparency = 1
  6928.         button.TextColor3 = Row.TextColor
  6929.         if readOnly then
  6930.                 button.TextColor3 = Row.TextLockedColor
  6931.         end
  6932.         button.Text = currentChoice
  6933.         button.Size = UDim2.new(1, -2 * Styles.Margin, 1, 0)
  6934.         button.Position = UDim2.new(0, Styles.Margin, 0, 0)
  6935.         button.Parent = frame
  6936.        
  6937.         local function showArrow(color)
  6938.                 if arrow then arrow:Destroy() end
  6939.                
  6940.                 local graphicTemplate = Create('Frame',{
  6941.                         Name="Graphic";
  6942.                         BorderSizePixel = 0;
  6943.                         BackgroundColor3 = Color3.new(1, 1, 1);
  6944.                 })
  6945.                 local graphicSize = 16/2
  6946.                
  6947.                 arrow = ArrowGraphic(graphicSize,'Down',true,graphicTemplate)
  6948.                 arrow.Position = UDim2.new(1,-graphicSize * 2,0.5,-graphicSize/2)
  6949.                 arrow.Parent = frame
  6950.         end
  6951.        
  6952.         local function hideMenu()
  6953.                 expanded = false
  6954.                 showArrow(DropDown.ArrowColor)
  6955.                 if menu then menu:Destroy() end
  6956.         end
  6957.        
  6958.         local function showMenu()
  6959.                 expanded = true
  6960.                 menu = Instance.new("Frame")
  6961.                 menu.Size = UDim2.new(1, -2 * margin, 0, #choices * DropDown.Height)
  6962.                 menu.Position = UDim2.new(0, margin, 0, Row.Height + margin)
  6963.                 menu.BackgroundTransparency = 0
  6964.                 menu.BackgroundColor3 = DropDown.BackColor
  6965.                 menu.BorderColor3 = DropDown.BorderColor
  6966.                 menu.BorderSizePixel = DropDown.BorderSizePixel
  6967.                 menu.Active = true
  6968.                 menu.ZIndex = 5
  6969.                 menu.Parent = frame
  6970.                
  6971.                 local parentFrameHeight = menu.Parent.Parent.Parent.Parent.Size.Y.Offset
  6972.                 local rowHeight = menu.Parent.Parent.Parent.Position.Y.Offset
  6973.                 if (rowHeight + menu.Size.Y.Offset) > math.max(parentFrameHeight,PropertiesFrame.AbsoluteSize.y) then
  6974.                         menu.Position = UDim2.new(0, margin, 0, -1 * (#choices * DropDown.Height) - margin)
  6975.                 end
  6976.                        
  6977.                 local function choice(name)
  6978.                         onClick(name)
  6979.                         hideMenu()
  6980.                 end
  6981.                
  6982.                 for i,name in pairs(choices) do
  6983.                         local option = CreateDropDownItem(name, function()
  6984.                                 choice(name)
  6985.                         end)
  6986.                         option.Size = UDim2.new(1, 0, 0, 16)
  6987.                         option.Position = UDim2.new(0, 0, 0, (i - 1) * DropDown.Height)
  6988.                         option.ZIndex = menu.ZIndex
  6989.                         option.Parent = menu
  6990.                 end
  6991.         end
  6992.        
  6993.         showArrow(DropDown.ArrowColor)
  6994.        
  6995.         if not readOnly then
  6996.                
  6997.                 button.MouseEnter:connect(function()
  6998.                         button.TextColor3 = Row.TextColor
  6999.                         showArrow(DropDown.ArrowColorOver)
  7000.                 end)
  7001.                 button.MouseLeave:connect(function()
  7002.                         button.TextColor3 = Row.TextColor
  7003.                         if not expanded then
  7004.                                 showArrow(DropDown.ArrowColor)
  7005.                         end
  7006.                 end)
  7007.                 button.MouseButton1Click:connect(function()
  7008.                         if expanded then
  7009.                                 hideMenu()
  7010.                         else
  7011.                                 showMenu()
  7012.                         end
  7013.                 end)
  7014.         end
  7015.        
  7016.         return frame,button
  7017. end
  7018.  
  7019. local function CreateBrickColor(readOnly, onClick)
  7020.         local frame = Instance.new("Frame")
  7021.         frame.Size = UDim2.new(1,0,1,0)
  7022.         frame.BackgroundTransparency = 1
  7023.        
  7024.         local colorPalette = Instance.new("Frame")
  7025.         colorPalette.BackgroundTransparency = 0
  7026.         colorPalette.SizeConstraint = Enum.SizeConstraint.RelativeXX
  7027.         colorPalette.Size = UDim2.new(1, -2 * BrickColors.OuterBorder, 1, -2 * BrickColors.OuterBorder)
  7028.         colorPalette.BorderSizePixel = BrickColors.BorderSizePixel
  7029.         colorPalette.BorderColor3 = BrickColors.BorderColor
  7030.         colorPalette.Position = UDim2.new(0, BrickColors.OuterBorder, 0, BrickColors.OuterBorder + Row.Height)
  7031.         colorPalette.ZIndex = 5
  7032.         colorPalette.Visible = false
  7033.         colorPalette.BorderSizePixel = BrickColors.OuterBorder
  7034.         colorPalette.BorderColor3 = BrickColors.OuterBorderColor
  7035.         colorPalette.Parent = frame
  7036.        
  7037.         local function show()
  7038.                 colorPalette.Visible = true
  7039.         end
  7040.        
  7041.         local function hide()
  7042.                 colorPalette.Visible = false
  7043.         end
  7044.        
  7045.         local function toggle()
  7046.                 colorPalette.Visible = not colorPalette.Visible
  7047.         end
  7048.        
  7049.         local colorBox = Instance.new("TextButton", frame)
  7050.         colorBox.Position = UDim2.new(0, Styles.Margin, 0, Styles.Margin)
  7051.         colorBox.Size = UDim2.new(0, BrickColors.BoxSize, 0, BrickColors.BoxSize)
  7052.         colorBox.Text = ""
  7053.         colorBox.MouseButton1Click:connect(function()
  7054.                 if not readOnly then
  7055.                         toggle()
  7056.                 end
  7057.         end)
  7058.        
  7059.         if readOnly then
  7060.                 colorBox.AutoButtonColor = false
  7061.         end
  7062.        
  7063.         local spacingBefore = (Styles.Margin * 2) + BrickColors.BoxSize
  7064.        
  7065.         local propertyLabel = CreateTextButton(readOnly, function()
  7066.                 if not readOnly then
  7067.                         toggle()
  7068.                 end
  7069.         end)
  7070.         propertyLabel.Size = UDim2.new(1, (-1 * spacingBefore) - Styles.Margin, 1, 0)
  7071.         propertyLabel.Position = UDim2.new(0, spacingBefore, 0, 0)
  7072.         propertyLabel.Parent = frame
  7073.        
  7074.         local size = (1 / BrickColors.ColorsPerRow)
  7075.        
  7076.         for index = 0, 127 do
  7077.                 local brickColor = BrickColor.palette(index)
  7078.                 local color3 = brickColor.Color
  7079.                
  7080.                 local x = size * (index % BrickColors.ColorsPerRow)
  7081.                 local y = size * math.floor(index / BrickColors.ColorsPerRow)
  7082.        
  7083.                 local brickColorBox = Instance.new("TextButton")
  7084.                 brickColorBox.Text = ""
  7085.                 brickColorBox.Size = UDim2.new(size,0,size,0)
  7086.                 brickColorBox.BackgroundColor3 = color3
  7087.                 brickColorBox.Position = UDim2.new(x, 0, y, 0)
  7088.                 brickColorBox.ZIndex = colorPalette.ZIndex
  7089.                 brickColorBox.Parent = colorPalette
  7090.        
  7091.                 brickColorBox.MouseButton1Click:connect(function()
  7092.                         hide()
  7093.                         onClick(brickColor)
  7094.                 end)
  7095.         end
  7096.        
  7097.         return frame,propertyLabel,colorBox
  7098. end
  7099.  
  7100. local function CreateColor3Control(readOnly, onClick)
  7101.         local frame = Instance.new("Frame")
  7102.         frame.Size = UDim2.new(1,0,1,0)
  7103.         frame.BackgroundTransparency = 1
  7104.        
  7105.         local colorBox = Instance.new("TextButton", frame)
  7106.         colorBox.Position = UDim2.new(0, Styles.Margin, 0, Styles.Margin)
  7107.         colorBox.Size = UDim2.new(0, BrickColors.BoxSize, 0, BrickColors.BoxSize)
  7108.         colorBox.Text = ""
  7109.         colorBox.AutoButtonColor = false
  7110.        
  7111.         local spacingBefore = (Styles.Margin * 2) + BrickColors.BoxSize
  7112.         local box = CreateTextBox(readOnly)
  7113.         box.Size = UDim2.new(1, (-1 * spacingBefore) - Styles.Margin, 1, 0)
  7114.         box.Position = UDim2.new(0, spacingBefore, 0, 0)
  7115.         box.Parent = frame
  7116.        
  7117.         return frame,box,colorBox
  7118. end
  7119.  
  7120. function CreateCheckbox(value, readOnly, onClick)
  7121.         local checked = value
  7122.         local mouseover = false
  7123.  
  7124.         local checkboxFrame = Instance.new("ImageButton")
  7125.         checkboxFrame.Size = UDim2.new(0, Sprite.Width, 0, Sprite.Height)
  7126.         checkboxFrame.BackgroundTransparency = 1
  7127.         checkboxFrame.ClipsDescendants = true
  7128.         --checkboxFrame.Position = UDim2.new(0, Styles.Margin, 0, Styles.Margin)
  7129.  
  7130.         local spritesheetImage = Instance.new("ImageLabel", checkboxFrame)
  7131.         spritesheetImage.Name = "SpritesheetImageLabel"
  7132.         spritesheetImage.Size = UDim2.new(0, Spritesheet.Width, 0, Spritesheet.Height)
  7133.         spritesheetImage.Image = Spritesheet.Image
  7134.         spritesheetImage.BackgroundTransparency = 1
  7135.        
  7136.         local function updateSprite()
  7137.                 local spriteName = GetCheckboxImageName(checked, readOnly, mouseover)
  7138.                 local spritePosition = SpritePosition(spriteName)
  7139.                 spritesheetImage.Position = UDim2.new(0, -1 * spritePosition[1], 0, -1 * spritePosition[2])
  7140.         end
  7141.        
  7142.         local function setValue(val)
  7143.                 checked = val
  7144.                 updateSprite()
  7145.         end
  7146.  
  7147.         if not readOnly then
  7148.                 checkboxFrame.MouseEnter:connect(function() mouseover = true updateSprite() end)
  7149.                 checkboxFrame.MouseLeave:connect(function() mouseover = false updateSprite() end)
  7150.                 checkboxFrame.MouseButton1Click:connect(function()
  7151.                         onClick(checked)
  7152.                 end)
  7153.         end
  7154.        
  7155.         updateSprite()
  7156.        
  7157.         return checkboxFrame, setValue
  7158. end
  7159.  
  7160.  
  7161.  
  7162. -- Code for handling controls of various data types --
  7163.  
  7164. local Controls = {}
  7165.  
  7166. Controls["default"] = function(object, propertyData, readOnly)
  7167.         local propertyName = propertyData["Name"]
  7168.         local propertyType = propertyData["ValueType"]
  7169.        
  7170.         local box = CreateTextBox(readOnly)
  7171.         box.Size = UDim2.new(1, -2 * Styles.Margin, 1, 0)
  7172.         box.Position = UDim2.new(0, Styles.Margin, 0, 0)
  7173.  
  7174.         local function update()
  7175.                 local value = object[propertyName]
  7176.                 box.Text = ToString(value, propertyType)
  7177.         end
  7178.        
  7179.         if not readOnly then
  7180.                 box.FocusLost:connect(function(enterPressed)
  7181.                         Set(object, propertyData, ToValue(box.Text,propertyType))
  7182.                         update()
  7183.                 end)
  7184.         end
  7185.        
  7186.         update()
  7187.        
  7188.         object.Changed:connect(function(property)
  7189.                 if (property == propertyName) then
  7190.                         update()
  7191.                 end
  7192.         end)
  7193.        
  7194.         return box
  7195. end
  7196.  
  7197. Controls["bool"] = function(object, propertyData, readOnly)
  7198.         local propertyName = propertyData["Name"]
  7199.         local checked = object[propertyName]
  7200.        
  7201.         local checkbox, setValue = CreateCheckbox(checked, readOnly, function(value)
  7202.                 Set(object, propertyData, not checked)
  7203.         end)
  7204.         checkbox.Position = UDim2.new(0, Styles.Margin, 0, Styles.Margin)
  7205.        
  7206.         setValue(checked)
  7207.        
  7208.         local function update()
  7209.                 checked = object[propertyName]
  7210.                 setValue(checked)
  7211.         end
  7212.        
  7213.         object.Changed:connect(function(property)
  7214.                 if (property == propertyName) then
  7215.                         update()
  7216.                 end
  7217.         end)
  7218.        
  7219.         if object:IsA("BoolValue") then
  7220.                 object.Changed:connect(function(val)
  7221.                         update()
  7222.                 end)
  7223.         end
  7224.        
  7225.         update()
  7226.        
  7227.         return checkbox
  7228. end
  7229.  
  7230. Controls["BrickColor"] = function(object, propertyData, readOnly)
  7231.         local propertyName = propertyData["Name"]
  7232.  
  7233.         local frame,label,brickColorBox = CreateBrickColor(readOnly, function(brickColor)
  7234.                 Set(object, propertyData, brickColor)
  7235.         end)
  7236.        
  7237.         local function update()
  7238.                 local value = object[propertyName]
  7239.                 brickColorBox.BackgroundColor3 = value.Color
  7240.                 label.Text = tostring(value)
  7241.         end
  7242.        
  7243.         update()
  7244.        
  7245.         object.Changed:connect(function(property)
  7246.                 if (property == propertyName) then
  7247.                         update()
  7248.                 end
  7249.         end)
  7250.        
  7251.         return frame
  7252. end
  7253.  
  7254. Controls["Color3"] = function(object, propertyData, readOnly)
  7255.         local propertyName = propertyData["Name"]
  7256.  
  7257.         local frame,textBox,colorBox = CreateColor3Control(readOnly)
  7258.        
  7259.         textBox.FocusLost:connect(function(enterPressed)
  7260.                 Set(object, propertyData, ToValue(textBox.Text,"Color3"))
  7261.                 local value = object[propertyName]
  7262.                 colorBox.BackgroundColor3 = value
  7263.                 textBox.Text = ToString(value, "Color3")
  7264.         end)
  7265.                        
  7266.         local function update()
  7267.                 local value = object[propertyName]
  7268.                 colorBox.BackgroundColor3 = value
  7269.                 textBox.Text = ToString(value, "Color3")
  7270.         end
  7271.        
  7272.         update()
  7273.        
  7274.         object.Changed:connect(function(property)
  7275.                 if (property == propertyName) then
  7276.                         update()
  7277.                 end
  7278.         end)
  7279.        
  7280.         return frame
  7281. end
  7282.  
  7283. Controls["Enum"] = function(object, propertyData, readOnly)
  7284.         local propertyName = propertyData["Name"]
  7285.         local propertyType = propertyData["ValueType"]
  7286.        
  7287.         local enumName = object[propertyName].Name
  7288.        
  7289.         local enumNames = {}
  7290.         for _,enum in pairs(Enum[tostring(propertyType)]:GetEnumItems()) do
  7291.                 table.insert(enumNames, enum.Name)
  7292.         end
  7293.        
  7294.         local dropdown, propertyLabel = CreateDropDown(enumNames, enumName, readOnly, function(value)
  7295.                 Set(object, propertyData, value)
  7296.         end)
  7297.         --dropdown.Parent = frame
  7298.        
  7299.         local function update()
  7300.                 local value = object[propertyName].Name
  7301.                 propertyLabel.Text = tostring(value)
  7302.         end
  7303.        
  7304.         update()
  7305.        
  7306.         object.Changed:connect(function(property)
  7307.                 if (property == propertyName) then
  7308.                         update()
  7309.                 end
  7310.         end)
  7311.        
  7312.         return dropdown
  7313. end
  7314.  
  7315. Controls["Object"] = function(object, propertyData, readOnly)
  7316.         local propertyName = propertyData["Name"]
  7317.         local propertyType = propertyData["ValueType"]
  7318.        
  7319.         local box = CreateObject(readOnly,function()end)
  7320.         box.Size = UDim2.new(1, -2 * Styles.Margin, 1, 0)
  7321.         box.Position = UDim2.new(0, Styles.Margin, 0, 0)
  7322.  
  7323.         local function update()
  7324.                 if AwaitingObjectObj == object then
  7325.                         if AwaitingObjectValue == true then
  7326.                                 box.Text = "Select an Object"
  7327.                                 return
  7328.                         end
  7329.                 end
  7330.                 local value = object[propertyName]
  7331.                 box.Text = ToString(value, propertyType)
  7332.         end
  7333.        
  7334.         if not readOnly then
  7335.                 box.MouseButton1Click:connect(function()
  7336.                         if AwaitingObjectValue then
  7337.                                 AwaitingObjectValue = false
  7338.                                 update()
  7339.                                 return
  7340.                         end
  7341.                         AwaitingObjectValue = true
  7342.                         AwaitingObjectObj = object
  7343.                         AwaitingObjectProp = propertyData
  7344.                         box.Text = "Select an Object"
  7345.                 end)
  7346.                
  7347.                 box.Cancel.Visible = true
  7348.                 box.Cancel.MouseButton1Click:connect(function()
  7349.                         object[propertyName] = nil
  7350.                 end)
  7351.         end
  7352.        
  7353.         update()
  7354.        
  7355.         object.Changed:connect(function(property)
  7356.                 if (property == propertyName) then
  7357.                         update()
  7358.                 end
  7359.         end)
  7360.        
  7361.         if object:IsA("ObjectValue") then
  7362.                 object.Changed:connect(function(val)
  7363.                         update()
  7364.                 end)
  7365.         end
  7366.        
  7367.         return box
  7368. end
  7369.  
  7370. function GetControl(object, propertyData, readOnly)
  7371.         local propertyType = propertyData["ValueType"]
  7372.         local control = nil
  7373.        
  7374.         if Controls[propertyType] then
  7375.                 control = Controls[propertyType](object, propertyData, readOnly)
  7376.         elseif RbxApi.IsEnum(propertyType) then
  7377.                 control = Controls["Enum"](object, propertyData, readOnly)
  7378.         else
  7379.                 control = Controls["default"](object, propertyData, readOnly)
  7380.         end
  7381.         return control
  7382. end
  7383. -- Permissions
  7384.  
  7385. function CanEditObject(object)
  7386.         local player = Players.LocalPlayer
  7387.         local character = player.Character
  7388.         return Permissions.CanEdit
  7389. end
  7390.  
  7391. function CanEditProperty(object,propertyData)
  7392.         local tags = propertyData["tags"]
  7393.         for _,name in pairs(tags) do
  7394.                 if name == "readonly" then
  7395.                         return false
  7396.                 end
  7397.         end
  7398.         return CanEditObject(object)
  7399. end
  7400.  
  7401. --RbxApi
  7402. local function PropertyIsHidden(propertyData)
  7403.         local tags = propertyData["tags"]
  7404.         for _,name in pairs(tags) do
  7405.                 if name == "deprecated"
  7406.                         or name == "hidden"
  7407.                         or name == "writeonly" then
  7408.                         return true
  7409.                 end
  7410.         end
  7411.         return false
  7412. end
  7413.  
  7414. function Set(object, propertyData, value)
  7415.         local propertyName = propertyData["Name"]
  7416.         local propertyType = propertyData["ValueType"]
  7417.        
  7418.         if value == nil then return end
  7419.        
  7420.         for i,v in pairs(GetSelection()) do
  7421.                 if CanEditProperty(v,propertyData) then
  7422.                         pcall(function()
  7423.                                 --print("Setting " .. propertyName .. " to " .. tostring(value))
  7424.                                 v[propertyName] = value
  7425.                         end)
  7426.                 end
  7427.         end
  7428. end
  7429.  
  7430. function CreateRow(object, propertyData, isAlternateRow)
  7431.         local propertyName = propertyData["Name"]
  7432.         local propertyType = propertyData["ValueType"]
  7433.         local propertyValue = object[propertyName]
  7434.         --rowValue, rowValueType, isAlternate
  7435.         local backColor = Row.BackgroundColor;
  7436.         if (isAlternateRow) then
  7437.                 backColor = Row.BackgroundColorAlternate
  7438.         end
  7439.        
  7440.         local readOnly = not CanEditProperty(object, propertyData)
  7441.         if propertyType == "Instance" or propertyName == "Parent" then readOnly = true end
  7442.  
  7443.         local rowFrame = Instance.new("Frame")
  7444.         rowFrame.Size = UDim2.new(1,0,0,Row.Height)
  7445.         rowFrame.BackgroundTransparency = 1
  7446.         rowFrame.Name = 'Row'
  7447.  
  7448.         local propertyLabelFrame = CreateCell()
  7449.         propertyLabelFrame.Parent = rowFrame
  7450.         propertyLabelFrame.ClipsDescendants = true
  7451.        
  7452.         local propertyLabel = CreateLabel(readOnly)
  7453.         propertyLabel.Text = propertyName
  7454.         propertyLabel.Size = UDim2.new(1, -1 * Row.TitleMarginLeft, 1, 0)
  7455.         propertyLabel.Position = UDim2.new(0, Row.TitleMarginLeft, 0, 0)
  7456.         propertyLabel.Parent = propertyLabelFrame
  7457.  
  7458.         local propertyValueFrame = CreateCell()
  7459.         propertyValueFrame.Size = UDim2.new(0.5, -1, 1, 0)
  7460.         propertyValueFrame.Position = UDim2.new(0.5, 0, 0, 0)
  7461.         propertyValueFrame.Parent = rowFrame
  7462.  
  7463.         local control = GetControl(object, propertyData, readOnly)
  7464.         control.Parent = propertyValueFrame
  7465.  
  7466.         rowFrame.MouseEnter:connect(function()
  7467.                 propertyLabelFrame.BackgroundColor3 = Row.BackgroundColorMouseover
  7468.                 propertyValueFrame.BackgroundColor3 = Row.BackgroundColorMouseover
  7469.         end)
  7470.         rowFrame.MouseLeave:connect(function()
  7471.                 propertyLabelFrame.BackgroundColor3 = backColor
  7472.                 propertyValueFrame.BackgroundColor3 = backColor
  7473.         end)
  7474.        
  7475.         propertyLabelFrame.BackgroundColor3 = backColor
  7476.         propertyValueFrame.BackgroundColor3 = backColor
  7477.        
  7478.         return rowFrame
  7479. end
  7480.  
  7481. function ClearPropertiesList()
  7482.         for _,instance in pairs(ContentFrame:GetChildren()) do
  7483.                 instance:Destroy()
  7484.         end
  7485. end
  7486.  
  7487. local selection = Gui:FindFirstChild("Selection", 1)
  7488.  
  7489. function displayProperties(props)
  7490.         for i,v in pairs(props) do
  7491.                 pcall(function()
  7492.                         local a = CreateRow(v.object, v.propertyData, ((numRows % 2) == 0))
  7493.                         a.Position = UDim2.new(0,0,0,numRows*Row.Height)
  7494.                         a.Parent = ContentFrame
  7495.                         numRows = numRows + 1
  7496.                 end)
  7497.         end
  7498. end
  7499.  
  7500. function checkForDupe(prop,props)
  7501.         for i,v in pairs(props) do
  7502.                 if v.propertyData.Name == prop.Name and v.propertyData.ValueType == prop.ValueType then
  7503.                         return true
  7504.                 end
  7505.         end
  7506.         return false
  7507. end
  7508.  
  7509. function sortProps(t)
  7510.         table.sort(t,
  7511.                 function(x,y) return x.propertyData.Name < y.propertyData.Name
  7512.         end)
  7513. end
  7514.  
  7515. function showProperties(obj)
  7516.         ClearPropertiesList()
  7517.         if obj == nil then return end
  7518.         local propHolder = {}
  7519.         local foundProps = {}
  7520.         numRows = 0
  7521.         for _,nextObj in pairs(obj) do
  7522.                 if not foundProps[nextObj.className] then
  7523.                         foundProps[nextObj.className] = true
  7524.                         for i,v in pairs(RbxApi.GetProperties(nextObj.className)) do
  7525.                                 local suc, err = pcall(function()
  7526.                                         if not (PropertyIsHidden(v)) and not checkForDupe(v,propHolder) then
  7527.                                                 if string.find(string.lower(v.Name),string.lower(propertiesSearch.Text)) or not searchingProperties() then
  7528.                                                         table.insert(propHolder,{propertyData = v, object = nextObj})
  7529.                                                 end
  7530.                                         end
  7531.                                 end)
  7532.                                 --[[if not suc then
  7533.                                         warn("Problem getting the value of property " .. v.Name .. " | " .. err)
  7534.                                 end     --]]
  7535.                         end
  7536.                 end
  7537.         end
  7538.         sortProps(propHolder)
  7539.         displayProperties(propHolder)
  7540.         ContentFrame.Size = UDim2.new(1, 0, 0, numRows * Row.Height)
  7541.         scrollBar.ScrollIndex = 0
  7542.         scrollBar.TotalSpace = numRows * Row.Height
  7543.         scrollBar.Update()
  7544. end
  7545.  
  7546. ----------------------------------------------------------------
  7547. -----------------------SCROLLBAR STUFF--------------------------
  7548. ----------------------------------------------------------------
  7549. ----------------------------------------------------------------
  7550. local ScrollBarWidth = 16
  7551.  
  7552. local ScrollStyles = {
  7553.         Background      = Color3.fromRGB(233, 233, 233);
  7554.         Border          = Color3.fromRGB(149, 149, 149);
  7555.         Selected        = Color3.fromRGB( 63, 119, 189);
  7556.         BorderSelected  = Color3.fromRGB( 55, 106, 167);
  7557.         Text            = Color3.fromRGB(  0,   0,   0);
  7558.         TextDisabled    = Color3.fromRGB(128, 128, 128);
  7559.         TextSelected    = Color3.fromRGB(255, 255, 255);
  7560.         Button          = Color3.fromRGB( 35,  35,  35);
  7561.         ButtonBorder    = Color3.fromRGB(149, 149, 149);
  7562.         ButtonSelected  = Color3.fromRGB(255,   0,   0);
  7563.         Field           = Color3.fromRGB(255, 255, 255);
  7564.         FieldBorder     = Color3.fromRGB(191, 191, 191);
  7565.         TitleBackground = Color3.fromRGB(178, 178, 178);
  7566. }
  7567. do
  7568.         local ZIndexLock = {}
  7569.         function SetZIndex(object,z)
  7570.                 if not ZIndexLock[object] then
  7571.                         ZIndexLock[object] = true
  7572.                         if object:IsA'GuiObject' then
  7573.                                 object.ZIndex = z
  7574.                         end
  7575.                         local children = object:GetChildren()
  7576.                         for i = 1,#children do
  7577.                                 SetZIndex(children[i],z)
  7578.                         end
  7579.                         ZIndexLock[object] = nil
  7580.                 end
  7581.         end
  7582. end
  7583. function SetZIndexOnChanged(object)
  7584.         return object.Changed:connect(function(p)
  7585.                 if p == "ZIndex" then
  7586.                         SetZIndex(object,object.ZIndex)
  7587.                 end
  7588.         end)
  7589. end
  7590. function Create(ty,data)
  7591.         local obj
  7592.         if type(ty) == 'string' then
  7593.                 obj = Instance.new(ty)
  7594.         else
  7595.                 obj = ty
  7596.         end
  7597.         for k, v in pairs(data) do
  7598.                 if type(k) == 'number' then
  7599.                         v.Parent = obj
  7600.                 else
  7601.                         obj[k] = v
  7602.                 end
  7603.         end
  7604.         return obj
  7605. end
  7606. -- returns the ascendant ScreenGui of an object
  7607. function GetScreen(screen)
  7608.         if screen == nil then return nil end
  7609.         while not screen:IsA("ScreenGui") do
  7610.                 screen = screen.Parent
  7611.                 if screen == nil then return nil end
  7612.         end
  7613.         return screen
  7614. end
  7615. -- AutoButtonColor doesn't always reset properly
  7616. function ResetButtonColor(button)
  7617.         local active = button.Active
  7618.         button.Active = not active
  7619.         button.Active = active
  7620. end
  7621.  
  7622. function ArrowGraphic(size,dir,scaled,template)
  7623.         local Frame = Create('Frame',{
  7624.                 Name = "Arrow Graphic";
  7625.                 BorderSizePixel = 0;
  7626.                 Size = UDim2.new(0,size,0,size);
  7627.                 Transparency = 1;
  7628.         })
  7629.         if not template then
  7630.                 template = Instance.new("Frame")
  7631.                 template.BorderSizePixel = 0
  7632.         end
  7633.  
  7634.         template.BackgroundColor3 = Color3.new(1, 1, 1);
  7635.  
  7636.         local transform
  7637.         if dir == nil or dir == 'Up' then
  7638.                 function transform(p,s) return p,s end
  7639.         elseif dir == 'Down' then
  7640.                 function transform(p,s) return UDim2.new(0,p.X.Offset,0,size-p.Y.Offset-1),s end
  7641.         elseif dir == 'Left' then
  7642.                 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
  7643.         elseif dir == 'Right' then
  7644.                 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
  7645.         end
  7646.  
  7647.         local scale
  7648.         if scaled then
  7649.                 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
  7650.         else
  7651.                 function scale(p,s) return p,s end
  7652.         end
  7653.  
  7654.         local o = math.floor(size/4)
  7655.         if size%2 == 0 then
  7656.                 local n = size/2-1
  7657.                 for i = 0,n do
  7658.                         local t = template:Clone()
  7659.                         local p,s = scale(transform(
  7660.                                 UDim2.new(0,n-i,0,o+i),
  7661.                                 UDim2.new(0,(i+1)*2,0,1)
  7662.                         ))
  7663.                         t.Position = p
  7664.                         t.Size = s
  7665.                         t.Parent = Frame
  7666.                 end
  7667.         else
  7668.                 local n = (size-1)/2
  7669.                 for i = 0,n do
  7670.                         local t = template:Clone()
  7671.                         local p,s = scale(transform(
  7672.                                 UDim2.new(0,n-i,0,o+i),
  7673.                                 UDim2.new(0,i*2+1,0,1)
  7674.                         ))
  7675.                         t.Position = p
  7676.                         t.Size = s
  7677.                         t.Parent = Frame
  7678.                 end
  7679.         end
  7680.         if size%4 > 1 then
  7681.                 local t = template:Clone()
  7682.                 local p,s = scale(transform(
  7683.                         UDim2.new(0,0,0,size-o-1),
  7684.                         UDim2.new(0,size,0,1)
  7685.                 ))
  7686.                 t.Position = p
  7687.                 t.Size = s
  7688.                 t.Parent = Frame
  7689.         end
  7690.  
  7691.         for i,v in pairs(Frame:GetChildren()) do
  7692.                 v.BackgroundColor3 = Color3.new(1, 1, 1);
  7693.         end
  7694.  
  7695.         return Frame
  7696. end
  7697.  
  7698. function GripGraphic(size,dir,spacing,scaled,template)
  7699.         local Frame = Create('Frame',{
  7700.                 Name = "Grip Graphic";
  7701.                 BorderSizePixel = 0;
  7702.                 Size = UDim2.new(0,size.x,0,size.y);
  7703.                 Transparency = 1;
  7704.         })
  7705.         if not template then
  7706.                 template = Instance.new("Frame")
  7707.                 template.BorderSizePixel = 0
  7708.         end
  7709.  
  7710.         spacing = spacing or 2
  7711.  
  7712.         local scale
  7713.         if scaled then
  7714.                 function scale(p) return UDim2.new(p.X.Offset/size.x,0,p.Y.Offset/size.y,0) end
  7715.         else
  7716.                 function scale(p) return p end
  7717.         end
  7718.  
  7719.         if dir == 'Vertical' then
  7720.                 for i=0,size.x-1,spacing do
  7721.                         local t = template:Clone()
  7722.                         t.Size = scale(UDim2.new(0,1,0,size.y))
  7723.                         t.Position = scale(UDim2.new(0,i,0,0))
  7724.                         t.Parent = Frame
  7725.                 end
  7726.         elseif dir == nil or dir == 'Horizontal' then
  7727.                 for i=0,size.y-1,spacing do
  7728.                         local t = template:Clone()
  7729.                         t.Size = scale(UDim2.new(0,size.x,0,1))
  7730.                         t.Position = scale(UDim2.new(0,0,0,i))
  7731.                         t.Parent = Frame
  7732.                 end
  7733.         end
  7734.  
  7735.         return Frame
  7736. end
  7737.  
  7738. do
  7739.         local mt = {
  7740.                 __index = {
  7741.                         GetScrollPercent = function(self)
  7742.                                 return self.ScrollIndex/(self.TotalSpace-self.VisibleSpace)
  7743.                         end;
  7744.                         CanScrollDown = function(self)
  7745.                                 return self.ScrollIndex + self.VisibleSpace < self.TotalSpace
  7746.                         end;
  7747.                         CanScrollUp = function(self)
  7748.                                 return self.ScrollIndex > 0
  7749.                         end;
  7750.                         ScrollDown = function(self)
  7751.                                 self.ScrollIndex = self.ScrollIndex + self.PageIncrement
  7752.                                 self:Update()
  7753.                         end;
  7754.                         ScrollUp = function(self)
  7755.                                 self.ScrollIndex = self.ScrollIndex - self.PageIncrement
  7756.                                 self:Update()
  7757.                         end;
  7758.                         ScrollTo = function(self,index)
  7759.                                 self.ScrollIndex = index
  7760.                                 self:Update()
  7761.                         end;
  7762.                         SetScrollPercent = function(self,percent)
  7763.                                 self.ScrollIndex = math.floor((self.TotalSpace - self.VisibleSpace)*percent + 0.5)
  7764.                                 self:Update()
  7765.                         end;
  7766.                 };
  7767.         }
  7768.         mt.__index.CanScrollRight = mt.__index.CanScrollDown
  7769.         mt.__index.CanScrollLeft = mt.__index.CanScrollUp
  7770.         mt.__index.ScrollLeft = mt.__index.ScrollUp
  7771.         mt.__index.ScrollRight = mt.__index.ScrollDown
  7772.  
  7773.         function ScrollBar(horizontal)
  7774.                 -- create row scroll bar
  7775.                 local ScrollFrame = Create('Frame',{
  7776.                         Name = "ScrollFrame";
  7777.                         Position = horizontal and UDim2.new(0,0,1,-ScrollBarWidth) or UDim2.new(1,-ScrollBarWidth,0,0);
  7778.                         Size = horizontal and UDim2.new(1,0,0,ScrollBarWidth) or UDim2.new(0,ScrollBarWidth,1,0);
  7779.                         BackgroundTransparency = 1;
  7780.                         Create('ImageButton',{
  7781.                                 Name = "ScrollDown";
  7782.                                 Position = horizontal and UDim2.new(1,-ScrollBarWidth,0,0) or UDim2.new(0,0,1,-ScrollBarWidth);
  7783.                                 Size = UDim2.new(0, ScrollBarWidth, 0, ScrollBarWidth);
  7784.                                 BackgroundColor3 = ScrollStyles.Button;
  7785.                                 BorderColor3 = ScrollStyles.Border;
  7786.                                 BorderSizePixel = 0;
  7787.                         });
  7788.                         Create('ImageButton',{
  7789.                                 Name = "ScrollUp";
  7790.                                 Size = UDim2.new(0, ScrollBarWidth, 0, ScrollBarWidth);
  7791.                                 BackgroundColor3 = ScrollStyles.Button;
  7792.                                 BorderColor3 = ScrollStyles.Border;
  7793.                                 BorderSizePixel = 0;
  7794.                         });
  7795.                         Create('ImageButton',{
  7796.                                 Name = "ScrollBar";
  7797.                                 Size = horizontal and UDim2.new(1,-ScrollBarWidth*2,1,0) or UDim2.new(1,0,1,-ScrollBarWidth*2);
  7798.                                 Position = horizontal and UDim2.new(0,ScrollBarWidth,0,0) or UDim2.new(0,0,0,ScrollBarWidth);
  7799.                                 AutoButtonColor = false;
  7800.                                 BackgroundColor3 = Color3.fromRGB(20, 20, 20);
  7801.                                 BorderColor3 = ScrollStyles.Border;
  7802.                                 BorderSizePixel = 0;
  7803.                                 Create('ImageButton',{
  7804.                                         Name = "ScrollThumb";
  7805.                                         AutoButtonColor = false;
  7806.                                         Size = UDim2.new(0, ScrollBarWidth, 0, ScrollBarWidth);
  7807.                                         BackgroundColor3 = ScrollStyles.Button;
  7808.                                         BorderColor3 = ScrollStyles.Border;
  7809.                                         BorderSizePixel = 0;
  7810.                                 });
  7811.                         });
  7812.                 })
  7813.  
  7814.                 local graphicTemplate = Create('Frame',{
  7815.                         Name="Graphic";
  7816.                         BorderSizePixel = 0;
  7817.                         BackgroundColor3 = Color3.new(1, 1, 1);
  7818.                 })
  7819.                 local graphicSize = ScrollBarWidth/2
  7820.  
  7821.                 local ScrollDownFrame = ScrollFrame.ScrollDown
  7822.                         local ScrollDownGraphic = ArrowGraphic(graphicSize,horizontal and 'Right' or 'Down',true,graphicTemplate)
  7823.                         ScrollDownGraphic.Position = UDim2.new(0.5,-graphicSize/2,0.5,-graphicSize/2)
  7824.                         ScrollDownGraphic.Parent = ScrollDownFrame
  7825.                 local ScrollUpFrame = ScrollFrame.ScrollUp
  7826.                         local ScrollUpGraphic = ArrowGraphic(graphicSize,horizontal and 'Left' or 'Up',true,graphicTemplate)
  7827.                         ScrollUpGraphic.Position = UDim2.new(0.5,-graphicSize/2,0.5,-graphicSize/2)
  7828.                         ScrollUpGraphic.Parent = ScrollUpFrame
  7829.                 local ScrollBarFrame = ScrollFrame.ScrollBar
  7830.                 local ScrollThumbFrame = ScrollBarFrame.ScrollThumb
  7831.                 do
  7832.                         local size = ScrollBarWidth*3/8
  7833.                         local Decal = GripGraphic(Vector2.new(size,size),horizontal and 'Vertical' or 'Horizontal',2,graphicTemplate)
  7834.                         Decal.Position = UDim2.new(0.5,-size/2,0.5,-size/2)
  7835.                         Decal.Parent = ScrollThumbFrame
  7836.                 end
  7837.  
  7838.                 local MouseDrag = Create('ImageButton',{
  7839.                         Name = "MouseDrag";
  7840.                         Position = UDim2.new(-0.25,0,-0.25,0);
  7841.                         Size = UDim2.new(1.5,0,1.5,0);
  7842.                         Transparency = 1;
  7843.                         AutoButtonColor = false;
  7844.                         Active = true;
  7845.                         ZIndex = 10;
  7846.                 })
  7847.  
  7848.                 local Class = setmetatable({
  7849.                         GUI = ScrollFrame;
  7850.                         ScrollIndex = 0;
  7851.                         VisibleSpace = 0;
  7852.                         TotalSpace = 0;
  7853.                         PageIncrement = 1;
  7854.                 },mt)
  7855.  
  7856.                 local UpdateScrollThumb
  7857.                 if horizontal then
  7858.                         function UpdateScrollThumb()
  7859.                                 ScrollThumbFrame.Size = UDim2.new(Class.VisibleSpace/Class.TotalSpace,0,0,ScrollBarWidth)
  7860.                                 if ScrollThumbFrame.AbsoluteSize.x < ScrollBarWidth then
  7861.                                         ScrollThumbFrame.Size = UDim2.new(0,ScrollBarWidth,0,ScrollBarWidth)
  7862.                                 end
  7863.                                 local barSize = ScrollBarFrame.AbsoluteSize.x
  7864.                                 ScrollThumbFrame.Position = UDim2.new(Class:GetScrollPercent()*(barSize - ScrollThumbFrame.AbsoluteSize.x)/barSize,0,0,0)
  7865.                         end
  7866.                 else
  7867.                         function UpdateScrollThumb()
  7868.                                 ScrollThumbFrame.Size = UDim2.new(0,ScrollBarWidth,Class.VisibleSpace/Class.TotalSpace,0)
  7869.                                 if ScrollThumbFrame.AbsoluteSize.y < ScrollBarWidth then
  7870.                                         ScrollThumbFrame.Size = UDim2.new(0,ScrollBarWidth,0,ScrollBarWidth)
  7871.                                 end
  7872.                                 local barSize = ScrollBarFrame.AbsoluteSize.y
  7873.                                 ScrollThumbFrame.Position = UDim2.new(0,0,Class:GetScrollPercent()*(barSize - ScrollThumbFrame.AbsoluteSize.y)/barSize,0)
  7874.                         end
  7875.                 end
  7876.  
  7877.                 local lastDown
  7878.                 local lastUp
  7879.                 local scrollStyle = {BackgroundColor3=Color3.new(1, 1, 1),BackgroundTransparency=0}
  7880.                 local scrollStyle_ds = {BackgroundColor3=Color3.new(1, 1, 1),BackgroundTransparency=0.7}
  7881.  
  7882.                 local function Update()
  7883.                         local t = Class.TotalSpace
  7884.                         local v = Class.VisibleSpace
  7885.                         local s = Class.ScrollIndex
  7886.                         if v <= t then
  7887.                                 if s > 0 then
  7888.                                         if s + v > t then
  7889.                                                 Class.ScrollIndex = t - v
  7890.                                         end
  7891.                                 else
  7892.                                         Class.ScrollIndex = 0
  7893.                                 end
  7894.                         else
  7895.                                 Class.ScrollIndex = 0
  7896.                         end
  7897.  
  7898.                         if Class.UpdateCallback then
  7899.                                 if Class.UpdateCallback(Class) == false then
  7900.                                         return
  7901.                                 end
  7902.                         end
  7903.  
  7904.                         local down = Class:CanScrollDown()
  7905.                         local up = Class:CanScrollUp()
  7906.                         if down ~= lastDown then
  7907.                                 lastDown = down
  7908.                                 ScrollDownFrame.Active = down
  7909.                                 ScrollDownFrame.AutoButtonColor = down
  7910.                                 local children = ScrollDownGraphic:GetChildren()
  7911.                                 local style = down and scrollStyle or scrollStyle_ds
  7912.                                 for i = 1,#children do
  7913.                                         Create(children[i],style)
  7914.                                 end
  7915.                         end
  7916.                         if up ~= lastUp then
  7917.                                 lastUp = up
  7918.                                 ScrollUpFrame.Active = up
  7919.                                 ScrollUpFrame.AutoButtonColor = up
  7920.                                 local children = ScrollUpGraphic:GetChildren()
  7921.                                 local style = up and scrollStyle or scrollStyle_ds
  7922.                                 for i = 1,#children do
  7923.                                         Create(children[i],style)
  7924.                                 end
  7925.                         end
  7926.                         ScrollThumbFrame.Visible = down or up
  7927.                         UpdateScrollThumb()
  7928.                 end
  7929.                 Class.Update = Update
  7930.  
  7931.                 SetZIndexOnChanged(ScrollFrame)
  7932.  
  7933.                 local scrollEventID = 0
  7934.                 ScrollDownFrame.MouseButton1Down:connect(function()
  7935.                         scrollEventID = tick()
  7936.                         local current = scrollEventID
  7937.                         local up_con
  7938.                         up_con = MouseDrag.MouseButton1Up:connect(function()
  7939.                                 scrollEventID = tick()
  7940.                                 MouseDrag.Parent = nil
  7941.                                 ResetButtonColor(ScrollDownFrame)
  7942.                                 up_con:disconnect(); drag = nil
  7943.                         end)
  7944.                         MouseDrag.Parent = GetScreen(ScrollFrame)
  7945.                         Class:ScrollDown()
  7946.                         wait(0.2) -- delay before auto scroll
  7947.                         while scrollEventID == current do
  7948.                                 Class:ScrollDown()
  7949.                                 if not Class:CanScrollDown() then break end
  7950.                                 wait()
  7951.                         end
  7952.                 end)
  7953.  
  7954.                 ScrollDownFrame.MouseButton1Up:connect(function()
  7955.                         scrollEventID = tick()
  7956.                 end)
  7957.  
  7958.                 ScrollUpFrame.MouseButton1Down:connect(function()
  7959.                         scrollEventID = tick()
  7960.                         local current = scrollEventID
  7961.                         local up_con
  7962.                         up_con = MouseDrag.MouseButton1Up:connect(function()
  7963.                                 scrollEventID = tick()
  7964.                                 MouseDrag.Parent = nil
  7965.                                 ResetButtonColor(ScrollUpFrame)
  7966.                                 up_con:disconnect(); drag = nil
  7967.                         end)
  7968.                         MouseDrag.Parent = GetScreen(ScrollFrame)
  7969.                         Class:ScrollUp()
  7970.                         wait(0.2)
  7971.                         while scrollEventID == current do
  7972.                                 Class:ScrollUp()
  7973.                                 if not Class:CanScrollUp() then break end
  7974.                                 wait()
  7975.                         end
  7976.                 end)
  7977.  
  7978.                 ScrollUpFrame.MouseButton1Up:connect(function()
  7979.                         scrollEventID = tick()
  7980.                 end)
  7981.  
  7982.                 if horizontal then
  7983.                         ScrollBarFrame.MouseButton1Down:connect(function(x,y)
  7984.                                 scrollEventID = tick()
  7985.                                 local current = scrollEventID
  7986.                                 local up_con
  7987.                                 up_con = MouseDrag.MouseButton1Up:connect(function()
  7988.                                         scrollEventID = tick()
  7989.                                         MouseDrag.Parent = nil
  7990.                                         ResetButtonColor(ScrollUpFrame)
  7991.                                         up_con:disconnect(); drag = nil
  7992.                                 end)
  7993.                                 MouseDrag.Parent = GetScreen(ScrollFrame)
  7994.                                 if x > ScrollThumbFrame.AbsolutePosition.x then
  7995.                                         Class:ScrollTo(Class.ScrollIndex + Class.VisibleSpace)
  7996.                                         wait(0.2)
  7997.                                         while scrollEventID == current do
  7998.                                                 if x < ScrollThumbFrame.AbsolutePosition.x + ScrollThumbFrame.AbsoluteSize.x then break end
  7999.                                                 Class:ScrollTo(Class.ScrollIndex + Class.VisibleSpace)
  8000.                                                 wait()
  8001.                                         end
  8002.                                 else
  8003.                                         Class:ScrollTo(Class.ScrollIndex - Class.VisibleSpace)
  8004.                                         wait(0.2)
  8005.                                         while scrollEventID == current do
  8006.                                                 if x > ScrollThumbFrame.AbsolutePosition.x then break end
  8007.                                                 Class:ScrollTo(Class.ScrollIndex - Class.VisibleSpace)
  8008.                                                 wait()
  8009.                                         end
  8010.                                 end
  8011.                         end)
  8012.                 else
  8013.                         ScrollBarFrame.MouseButton1Down:connect(function(x,y)
  8014.                                 scrollEventID = tick()
  8015.                                 local current = scrollEventID
  8016.                                 local up_con
  8017.                                 up_con = MouseDrag.MouseButton1Up:connect(function()
  8018.                                         scrollEventID = tick()
  8019.                                         MouseDrag.Parent = nil
  8020.                                         ResetButtonColor(ScrollUpFrame)
  8021.                                         up_con:disconnect(); drag = nil
  8022.                                 end)
  8023.                                 MouseDrag.Parent = GetScreen(ScrollFrame)
  8024.                                 if y > ScrollThumbFrame.AbsolutePosition.y then
  8025.                                         Class:ScrollTo(Class.ScrollIndex + Class.VisibleSpace)
  8026.                                         wait(0.2)
  8027.                                         while scrollEventID == current do
  8028.                                                 if y < ScrollThumbFrame.AbsolutePosition.y + ScrollThumbFrame.AbsoluteSize.y then break end
  8029.                                                 Class:ScrollTo(Class.ScrollIndex + Class.VisibleSpace)
  8030.                                                 wait()
  8031.                                         end
  8032.                                 else
  8033.                                         Class:ScrollTo(Class.ScrollIndex - Class.VisibleSpace)
  8034.                                         wait(0.2)
  8035.                                         while scrollEventID == current do
  8036.                                                 if y > ScrollThumbFrame.AbsolutePosition.y then break end
  8037.                                                 Class:ScrollTo(Class.ScrollIndex - Class.VisibleSpace)
  8038.                                                 wait()
  8039.                                         end
  8040.                                 end
  8041.                         end)
  8042.                 end
  8043.  
  8044.                 if horizontal then
  8045.                         ScrollThumbFrame.MouseButton1Down:connect(function(x,y)
  8046.                                 scrollEventID = tick()
  8047.                                 local mouse_offset = x - ScrollThumbFrame.AbsolutePosition.x
  8048.                                 local drag_con
  8049.                                 local up_con
  8050.                                 drag_con = MouseDrag.MouseMoved:connect(function(x,y)
  8051.                                         if not game:GetService'UserInputService':IsMouseButtonPressed'MouseButton1' then
  8052.                                                 scrollEventID = tick()
  8053.                                                 MouseDrag.Parent = nil
  8054.                                                 ResetButtonColor(ScrollThumbFrame)
  8055.                                                 drag_con:disconnect(); drag_con = nil
  8056.                                                 up_con:disconnect(); drag = nil
  8057.                                         end
  8058.                                         local bar_abs_pos = ScrollBarFrame.AbsolutePosition.x
  8059.                                         local bar_drag = ScrollBarFrame.AbsoluteSize.x - ScrollThumbFrame.AbsoluteSize.x
  8060.                                         local bar_abs_one = bar_abs_pos + bar_drag
  8061.                                         x = x - mouse_offset
  8062.                                         x = x < bar_abs_pos and bar_abs_pos or x > bar_abs_one and bar_abs_one or x
  8063.                                         x = x - bar_abs_pos
  8064.                                         Class:SetScrollPercent(x/(bar_drag))
  8065.                                 end)
  8066.                                 up_con = MouseDrag.MouseButton1Up:connect(function()
  8067.                                         scrollEventID = tick()
  8068.                                         MouseDrag.Parent = nil
  8069.                                         ResetButtonColor(ScrollThumbFrame)
  8070.                                         drag_con:disconnect(); drag_con = nil
  8071.                                         up_con:disconnect(); drag = nil
  8072.                                 end)
  8073.                                 MouseDrag.Parent = GetScreen(ScrollFrame)
  8074.                         end)
  8075.                 else
  8076.                         ScrollThumbFrame.MouseButton1Down:connect(function(x,y)
  8077.                                 scrollEventID = tick()
  8078.                                 local mouse_offset = y - ScrollThumbFrame.AbsolutePosition.y
  8079.                                 local drag_con
  8080.                                 local up_con
  8081.                                 drag_con = MouseDrag.MouseMoved:connect(function(x,y)
  8082.                                         if not game:GetService'UserInputService':IsMouseButtonPressed'MouseButton1' then
  8083.                                                 scrollEventID = tick()
  8084.                                                 MouseDrag.Parent = nil
  8085.                                                 ResetButtonColor(ScrollThumbFrame)
  8086.                                                 drag_con:disconnect(); drag_con = nil
  8087.                                                 up_con:disconnect(); drag = nil
  8088.                                         end
  8089.                                         local bar_abs_pos = ScrollBarFrame.AbsolutePosition.y
  8090.                                         local bar_drag = ScrollBarFrame.AbsoluteSize.y - ScrollThumbFrame.AbsoluteSize.y
  8091.                                         local bar_abs_one = bar_abs_pos + bar_drag
  8092.                                         y = y - mouse_offset
  8093.                                         y = y < bar_abs_pos and bar_abs_pos or y > bar_abs_one and bar_abs_one or y
  8094.                                         y = y - bar_abs_pos
  8095.                                         Class:SetScrollPercent(y/(bar_drag))
  8096.                                 end)
  8097.                                 up_con = MouseDrag.MouseButton1Up:connect(function()
  8098.                                         scrollEventID = tick()
  8099.                                         MouseDrag.Parent = nil
  8100.                                         ResetButtonColor(ScrollThumbFrame)
  8101.                                         drag_con:disconnect(); drag_con = nil
  8102.                                         up_con:disconnect(); drag = nil
  8103.                                 end)
  8104.                                 MouseDrag.Parent = GetScreen(ScrollFrame)
  8105.                         end)
  8106.                 end
  8107.  
  8108.                 function Class:Destroy()
  8109.                         ScrollFrame:Destroy()
  8110.                         MouseDrag:Destroy()
  8111.                         for k in pairs(Class) do
  8112.                                 Class[k] = nil
  8113.                         end
  8114.                         setmetatable(Class,nil)
  8115.                 end
  8116.  
  8117.                 Update()
  8118.  
  8119.                 return Class
  8120.         end
  8121. end
  8122.  
  8123. ----------------------------------------------------------------
  8124. ----------------------------------------------------------------
  8125. ----------------------------------------------------------------
  8126. ----------------------------------------------------------------
  8127.  
  8128. local MainFrame = Instance.new("Frame")
  8129. MainFrame.Name = "MainFrame"
  8130. MainFrame.Size = UDim2.new(1, -1 * ScrollBarWidth, 1, 0)
  8131. MainFrame.Position = UDim2.new(0, 0, 0, 0)
  8132. MainFrame.BackgroundTransparency = 1
  8133. MainFrame.ClipsDescendants = true
  8134. MainFrame.Parent = PropertiesFrame
  8135.  
  8136. ContentFrame = Instance.new("Frame")
  8137. ContentFrame.Name = "ContentFrame"
  8138. ContentFrame.Size = UDim2.new(1, 0, 0, 0)
  8139. ContentFrame.BackgroundTransparency = 1
  8140. ContentFrame.Parent = MainFrame
  8141.  
  8142. scrollBar = ScrollBar(false)
  8143. scrollBar.PageIncrement = 1
  8144. Create(scrollBar.GUI,{
  8145.         Position = UDim2.new(1,-ScrollBarWidth,0,0);
  8146.         Size = UDim2.new(0,ScrollBarWidth,1,0);
  8147.         Parent = PropertiesFrame;
  8148. })
  8149.  
  8150. scrollBarH = ScrollBar(true)
  8151. scrollBarH.PageIncrement = ScrollBarWidth
  8152. Create(scrollBarH.GUI,{
  8153.         Position = UDim2.new(0,0,1,-ScrollBarWidth);
  8154.         Size = UDim2.new(1,-ScrollBarWidth,0,ScrollBarWidth);
  8155.         Visible = false;
  8156.         Parent = PropertiesFrame;
  8157. })
  8158.  
  8159. do
  8160.         local listEntries = {}
  8161.         local nameConnLookup = {}
  8162.        
  8163.         function scrollBar.UpdateCallback(self)
  8164.                 scrollBar.TotalSpace = ContentFrame.AbsoluteSize.Y
  8165.                 scrollBar.VisibleSpace = MainFrame.AbsoluteSize.Y
  8166.                 ContentFrame.Position = UDim2.new(ContentFrame.Position.X.Scale,ContentFrame.Position.X.Offset,0,-1*scrollBar.ScrollIndex)
  8167.         end
  8168.  
  8169.         function scrollBarH.UpdateCallback(self)
  8170.                
  8171.         end
  8172.  
  8173.         MainFrame.Changed:connect(function(p)
  8174.                 if p == 'AbsoluteSize' then
  8175.                         scrollBarH.VisibleSpace = math.ceil(MainFrame.AbsoluteSize.x)
  8176.                         scrollBarH:Update()
  8177.                         scrollBar.VisibleSpace = math.ceil(MainFrame.AbsoluteSize.y)
  8178.                         scrollBar:Update()
  8179.                 end
  8180.         end)
  8181.  
  8182.         local wheelAmount = Row.Height
  8183.         PropertiesFrame.MouseWheelForward:connect(function()
  8184.                 if input ~= nil and input.down ~= nil and input.down.leftshift then
  8185.                         if scrollBarH.VisibleSpace - 1 > wheelAmount then
  8186.                                 scrollBarH:ScrollTo(scrollBarH.ScrollIndex - wheelAmount)
  8187.                         else
  8188.                                 scrollBarH:ScrollTo(scrollBarH.ScrollIndex - scrollBarH.VisibleSpace)
  8189.                         end
  8190.                 else
  8191.                         if scrollBar.VisibleSpace - 1 > wheelAmount then
  8192.                                 scrollBar:ScrollTo(scrollBar.ScrollIndex - wheelAmount)
  8193.                         else
  8194.                                 scrollBar:ScrollTo(scrollBar.ScrollIndex - scrollBar.VisibleSpace)
  8195.                         end
  8196.                 end
  8197.         end)
  8198.         PropertiesFrame.MouseWheelBackward:connect(function()
  8199.                 if input ~= nil and input.down ~= nil and input.down.leftshift then
  8200.                         if scrollBarH.VisibleSpace - 1 > wheelAmount then
  8201.                                 scrollBarH:ScrollTo(scrollBarH.ScrollIndex + wheelAmount)
  8202.                         else
  8203.                                 scrollBarH:ScrollTo(scrollBarH.ScrollIndex + scrollBarH.VisibleSpace)
  8204.                         end
  8205.                 else
  8206.                         if scrollBar.VisibleSpace - 1 > wheelAmount then
  8207.                                 scrollBar:ScrollTo(scrollBar.ScrollIndex + wheelAmount)
  8208.                         else
  8209.                                 scrollBar:ScrollTo(scrollBar.ScrollIndex + scrollBar.VisibleSpace)
  8210.                         end
  8211.                 end
  8212.         end)
  8213. end
  8214.  
  8215. scrollBar.VisibleSpace = math.ceil(MainFrame.AbsoluteSize.y)
  8216. scrollBar:Update()
  8217.  
  8218. showProperties(GetSelection())
  8219.  
  8220. bindSelectionChanged.Event:connect(function()
  8221.         showProperties(GetSelection())
  8222. end)
  8223.  
  8224. bindSetAwait.Event:connect(function(obj)
  8225.         if AwaitingObjectValue then
  8226.                 AwaitingObjectValue = false
  8227.                 local mySel = obj
  8228.                 if mySel then
  8229.                         pcall(function()
  8230.                                 Set(AwaitingObjectObj, AwaitingObjectProp, mySel)
  8231.                         end)
  8232.                 end
  8233.         end
  8234. end)
  8235.  
  8236. propertiesSearch.Changed:connect(function(prop)
  8237.         if prop == "Text" then
  8238.                 showProperties(GetSelection())
  8239.         end
  8240. end)
  8241.  
  8242. bindGetApi.OnInvoke = function()
  8243.         return RbxApi
  8244. end
  8245.  
  8246. bindGetAwait.OnInvoke = function()
  8247.         return AwaitingObjectValue
  8248. end
  8249. end)
  8250. spawn(function()
  8251.  
  8252. local top = D_E_X.ScriptEditor
  8253.  
  8254. print(top)
  8255.  
  8256. local editorGrid = top:WaitForChild("EditorGrid")
  8257.  
  8258. print(editorGrid)
  8259.  
  8260. local currentSource = ""
  8261. local currentScrName = "";
  8262.  
  8263. local currentEditor = {
  8264.         x = 0,
  8265.         y = 0
  8266. }
  8267.  
  8268. local userInput = game:GetService("UserInputService")
  8269. local mouse = game:GetService'Players'.LocalPlayer:GetMouse()
  8270.  
  8271. local topBar = top:WaitForChild("TopBar")
  8272. local scriptBar = topBar:WaitForChild("ScriptBar")
  8273. local scriptBarLeft = topBar:WaitForChild("ScriptBarLeft")
  8274. local scriptBarRight = topBar:WaitForChild("ScriptBarRight")
  8275. local clipboardButton = topBar:WaitForChild("Clipboard")
  8276. local saveScriptButton = topBar:FindFirstChild("SaveScript")
  8277.  
  8278. local entryTemplate = topBar:WaitForChild("Entry")
  8279.  
  8280. local openEvent = top:WaitForChild("OpenScript")
  8281.  
  8282. local closeButton = top:WaitForChild("Close")
  8283.  
  8284. local memoryScripts = {}
  8285.  
  8286. local editingIndex = 0
  8287.  
  8288. -- Scrollbar
  8289.  
  8290. local ScrollBarWidth = 16
  8291.  
  8292. local ScrollStyles = {
  8293.         Background      = Color3.fromRGB(233, 233, 233);
  8294.         Border          = Color3.fromRGB( 20,  20,  20);
  8295.         Selected        = Color3.fromRGB( 63, 119, 189);
  8296.         BorderSelected  = Color3.fromRGB( 55, 106, 167);
  8297.         Text            = Color3.fromRGB(  0,   0,   0);
  8298.         TextDisabled    = Color3.fromRGB(128, 128, 128);
  8299.         TextSelected    = Color3.fromRGB(255, 255, 255);
  8300.         Button          = Color3.fromRGB( 35,  35,  35);
  8301.         ButtonBorder    = Color3.fromRGB(149, 149, 149);
  8302.         ButtonSelected  = Color3.fromRGB(255,   0,   0);
  8303.         Field           = Color3.fromRGB(255, 255, 255);
  8304.         FieldBorder     = Color3.fromRGB(191, 191, 191);
  8305.         TitleBackground = Color3.fromRGB(178, 178, 178);
  8306. }
  8307. do
  8308.         local ZIndexLock = {}
  8309.         function SetZIndex(object,z)
  8310.                 if not ZIndexLock[object] then
  8311.                         ZIndexLock[object] = true
  8312.                         if object:IsA'GuiObject' then
  8313.                                 object.ZIndex = z
  8314.                         end
  8315.                         local children = object:GetChildren()
  8316.                         for i = 1,#children do
  8317.                                 SetZIndex(children[i],z)
  8318.                         end
  8319.                         ZIndexLock[object] = nil
  8320.                 end
  8321.         end
  8322. end
  8323. function SetZIndexOnChanged(object)
  8324.         return object.Changed:connect(function(p)
  8325.                 if p == "ZIndex" then
  8326.                         SetZIndex(object,object.ZIndex)
  8327.                 end
  8328.         end)
  8329. end
  8330. function Create(ty,data)
  8331.         local obj
  8332.         if type(ty) == 'string' then
  8333.                 obj = Instance.new(ty)
  8334.         else
  8335.                 obj = ty
  8336.         end
  8337.         for k, v in pairs(data) do
  8338.                 if type(k) == 'number' then
  8339.                         v.Parent = obj
  8340.                 else
  8341.                         obj[k] = v
  8342.                 end
  8343.         end
  8344.         return obj
  8345. end
  8346. -- returns the ascendant ScreenGui of an object
  8347. function GetScreen(screen)
  8348.         if screen == nil then return nil end
  8349.         while not screen:IsA("ScreenGui") do
  8350.                 screen = screen.Parent
  8351.                 if screen == nil then return nil end
  8352.         end
  8353.         return screen
  8354. end
  8355. -- AutoButtonColor doesn't always reset properly
  8356. function ResetButtonColor(button)
  8357.         local active = button.Active
  8358.         button.Active = not active
  8359.         button.Active = active
  8360. end
  8361.  
  8362. function ArrowGraphic(size,dir,scaled,template)
  8363.         local Frame = Create('Frame',{
  8364.                 Name = "Arrow Graphic";
  8365.                 BorderSizePixel = 0;
  8366.                 Size = UDim2.new(0,size,0,size);
  8367.                 Transparency = 1;
  8368.         })
  8369.         if not template then
  8370.                 template = Instance.new("Frame")
  8371.                 template.BorderSizePixel = 0
  8372.         end
  8373.  
  8374.         template.BackgroundColor3 = Color3.new(1, 1, 1);
  8375.  
  8376.         local transform
  8377.         if dir == nil or dir == 'Up' then
  8378.                 function transform(p,s) return p,s end
  8379.         elseif dir == 'Down' then
  8380.                 function transform(p,s) return UDim2.new(0,p.X.Offset,0,size-p.Y.Offset-1),s end
  8381.         elseif dir == 'Left' then
  8382.                 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
  8383.         elseif dir == 'Right' then
  8384.                 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
  8385.         end
  8386.  
  8387.         local scale
  8388.         if scaled then
  8389.                 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
  8390.         else
  8391.                 function scale(p,s) return p,s end
  8392.         end
  8393.  
  8394.         local o = math.floor(size/4)
  8395.         if size%2 == 0 then
  8396.                 local n = size/2-1
  8397.                 for i = 0,n do
  8398.                         local t = template:Clone()
  8399.                         local p,s = scale(transform(
  8400.                                 UDim2.new(0,n-i,0,o+i),
  8401.                                 UDim2.new(0,(i+1)*2,0,1)
  8402.                         ))
  8403.                         t.Position = p
  8404.                         t.Size = s
  8405.                         t.Parent = Frame
  8406.                 end
  8407.         else
  8408.                 local n = (size-1)/2
  8409.                 for i = 0,n do
  8410.                         local t = template:Clone()
  8411.                         local p,s = scale(transform(
  8412.                                 UDim2.new(0,n-i,0,o+i),
  8413.                                 UDim2.new(0,i*2+1,0,1)
  8414.                         ))
  8415.                         t.Position = p
  8416.                         t.Size = s
  8417.                         t.Parent = Frame
  8418.                 end
  8419.         end
  8420.         if size%4 > 1 then
  8421.                 local t = template:Clone()
  8422.                 local p,s = scale(transform(
  8423.                         UDim2.new(0,0,0,size-o-1),
  8424.                         UDim2.new(0,size,0,1)
  8425.                 ))
  8426.                 t.Position = p
  8427.                 t.Size = s
  8428.                 t.Parent = Frame
  8429.         end
  8430.  
  8431.         for i,v in pairs(Frame:GetChildren()) do
  8432.                 v.BackgroundColor3 = Color3.new(1, 1, 1);
  8433.         end
  8434.  
  8435.         return Frame
  8436. end
  8437.  
  8438. function GripGraphic(size,dir,spacing,scaled,template)
  8439.         local Frame = Create('Frame',{
  8440.                 Name = "Grip Graphic";
  8441.                 BorderSizePixel = 0;
  8442.                 Size = UDim2.new(0,size.x,0,size.y);
  8443.                 Transparency = 1;
  8444.         })
  8445.         if not template then
  8446.                 template = Instance.new("Frame")
  8447.                 template.BorderSizePixel = 0
  8448.         end
  8449.  
  8450.         spacing = spacing or 2
  8451.  
  8452.         local scale
  8453.         if scaled then
  8454.                 function scale(p) return UDim2.new(p.X.Offset/size.x,0,p.Y.Offset/size.y,0) end
  8455.         else
  8456.                 function scale(p) return p end
  8457.         end
  8458.  
  8459.         if dir == 'Vertical' then
  8460.                 for i=0,size.x-1,spacing do
  8461.                         local t = template:Clone()
  8462.                         t.Size = scale(UDim2.new(0,1,0,size.y))
  8463.                         t.Position = scale(UDim2.new(0,i,0,0))
  8464.                         t.Parent = Frame
  8465.                 end
  8466.         elseif dir == nil or dir == 'Horizontal' then
  8467.                 for i=0,size.y-1,spacing do
  8468.                         local t = template:Clone()
  8469.                         t.Size = scale(UDim2.new(0,size.x,0,1))
  8470.                         t.Position = scale(UDim2.new(0,0,0,i))
  8471.                         t.Parent = Frame
  8472.                 end
  8473.         end
  8474.  
  8475.         return Frame
  8476. end
  8477.  
  8478. do
  8479.         local mt = {
  8480.                 __index = {
  8481.                         GetScrollPercent = function(self)
  8482.                                 return self.ScrollIndex/(self.TotalSpace-self.VisibleSpace)
  8483.                         end;
  8484.                         CanScrollDown = function(self)
  8485.                                 return self.ScrollIndex + self.VisibleSpace < self.TotalSpace
  8486.                         end;
  8487.                         CanScrollUp = function(self)
  8488.                                 return self.ScrollIndex > 0
  8489.                         end;
  8490.                         ScrollDown = function(self)
  8491.                                 self.ScrollIndex = self.ScrollIndex + self.PageIncrement
  8492.                                 self:Update()
  8493.                         end;
  8494.                         ScrollUp = function(self)
  8495.                                 self.ScrollIndex = self.ScrollIndex - self.PageIncrement
  8496.                                 self:Update()
  8497.                         end;
  8498.                         ScrollTo = function(self,index)
  8499.                                 self.ScrollIndex = index
  8500.                                 self:Update()
  8501.                         end;
  8502.                         SetScrollPercent = function(self,percent)
  8503.                                 self.ScrollIndex = math.floor((self.TotalSpace - self.VisibleSpace)*percent + 0.5)
  8504.                                 self:Update()
  8505.                         end;
  8506.                 };
  8507.         }
  8508.         mt.__index.CanScrollRight = mt.__index.CanScrollDown
  8509.         mt.__index.CanScrollLeft = mt.__index.CanScrollUp
  8510.         mt.__index.ScrollLeft = mt.__index.ScrollUp
  8511.         mt.__index.ScrollRight = mt.__index.ScrollDown
  8512.  
  8513.         function ScrollBar(horizontal)
  8514.                 -- create row scroll bar
  8515.                 local ScrollFrame = Create('Frame',{
  8516.                         Name = "ScrollFrame";
  8517.                         Position = horizontal and UDim2.new(0,0,1,-ScrollBarWidth) or UDim2.new(1,-ScrollBarWidth,0,0);
  8518.                         Size = horizontal and UDim2.new(1,0,0,ScrollBarWidth) or UDim2.new(0,ScrollBarWidth,1,0);
  8519.                         BackgroundTransparency = 1;
  8520.                         Create('ImageButton',{
  8521.                                 Name = "ScrollDown";
  8522.                                 Position = horizontal and UDim2.new(1,-ScrollBarWidth,0,0) or UDim2.new(0,0,1,-ScrollBarWidth);
  8523.                                 Size = UDim2.new(0, ScrollBarWidth, 0, ScrollBarWidth);
  8524.                                 BackgroundColor3 = ScrollStyles.Button;
  8525.                                 BorderColor3 = ScrollStyles.Border;
  8526.                                 BorderSizePixel = 0;
  8527.                         });
  8528.                         Create('ImageButton',{
  8529.                                 Name = "ScrollUp";
  8530.                                 Size = UDim2.new(0, ScrollBarWidth, 0, ScrollBarWidth);
  8531.                                 BackgroundColor3 = ScrollStyles.Button;
  8532.                                 BorderColor3 = ScrollStyles.Border;
  8533.                                 BorderSizePixel = 0;
  8534.                         });
  8535.                         Create('ImageButton',{
  8536.                                 Name = "ScrollBar";
  8537.                                 Size = horizontal and UDim2.new(1,-ScrollBarWidth*2,1,0) or UDim2.new(1,0,1,-ScrollBarWidth*2);
  8538.                                 Position = horizontal and UDim2.new(0,ScrollBarWidth,0,0) or UDim2.new(0,0,0,ScrollBarWidth);
  8539.                                 AutoButtonColor = false;
  8540.                                 BackgroundColor3 = Color3.fromRGB(20, 20, 20);
  8541.                                 BorderColor3 = ScrollStyles.Border;
  8542.                                 BorderSizePixel = 0;
  8543.                                 Create('ImageButton',{
  8544.                                         Name = "ScrollThumb";
  8545.                                         AutoButtonColor = false;
  8546.                                         Size = UDim2.new(0, ScrollBarWidth, 0, ScrollBarWidth);
  8547.                                         BackgroundColor3 = ScrollStyles.Button;
  8548.                                         BorderColor3 = ScrollStyles.Border;
  8549.                                         BorderSizePixel = 0;
  8550.                                 });
  8551.                         });
  8552.                 })
  8553.  
  8554.                 local graphicTemplate = Create('Frame',{
  8555.                         Name="Graphic";
  8556.                         BorderSizePixel = 0;
  8557.                         BackgroundColor3 = Color3.new(1, 1, 1);
  8558.                 })
  8559.                 local graphicSize = ScrollBarWidth/2
  8560.  
  8561.                 local ScrollDownFrame = ScrollFrame.ScrollDown
  8562.                         local ScrollDownGraphic = ArrowGraphic(graphicSize,horizontal and 'Right' or 'Down',true,graphicTemplate)
  8563.                         ScrollDownGraphic.Position = UDim2.new(0.5,-graphicSize/2,0.5,-graphicSize/2)
  8564.                         ScrollDownGraphic.Parent = ScrollDownFrame
  8565.                 local ScrollUpFrame = ScrollFrame.ScrollUp
  8566.                         local ScrollUpGraphic = ArrowGraphic(graphicSize,horizontal and 'Left' or 'Up',true,graphicTemplate)
  8567.                         ScrollUpGraphic.Position = UDim2.new(0.5,-graphicSize/2,0.5,-graphicSize/2)
  8568.                         ScrollUpGraphic.Parent = ScrollUpFrame
  8569.                 local ScrollBarFrame = ScrollFrame.ScrollBar
  8570.                 local ScrollThumbFrame = ScrollBarFrame.ScrollThumb
  8571.                 do
  8572.                         local size = ScrollBarWidth*3/8
  8573.                         local Decal = GripGraphic(Vector2.new(size,size),horizontal and 'Vertical' or 'Horizontal',2,graphicTemplate)
  8574.                         Decal.Position = UDim2.new(0.5,-size/2,0.5,-size/2)
  8575.                         Decal.Parent = ScrollThumbFrame
  8576.                 end
  8577.  
  8578.                 local MouseDrag = Create('ImageButton',{
  8579.                         Name = "MouseDrag";
  8580.                         Position = UDim2.new(-0.25,0,-0.25,0);
  8581.                         Size = UDim2.new(1.5,0,1.5,0);
  8582.                         Transparency = 1;
  8583.                         AutoButtonColor = false;
  8584.                         Active = true;
  8585.                         ZIndex = 10;
  8586.                 })
  8587.  
  8588.                 local Class = setmetatable({
  8589.                         GUI = ScrollFrame;
  8590.                         ScrollIndex = 0;
  8591.                         VisibleSpace = 0;
  8592.                         TotalSpace = 0;
  8593.                         PageIncrement = 1;
  8594.                 },mt)
  8595.  
  8596.                 local UpdateScrollThumb
  8597.                 if horizontal then
  8598.                         function UpdateScrollThumb()
  8599.                                 ScrollThumbFrame.Size = UDim2.new(Class.VisibleSpace/Class.TotalSpace,0,0,ScrollBarWidth)
  8600.                                 if ScrollThumbFrame.AbsoluteSize.x < ScrollBarWidth then
  8601.                                         ScrollThumbFrame.Size = UDim2.new(0,ScrollBarWidth,0,ScrollBarWidth)
  8602.                                 end
  8603.                                 local barSize = ScrollBarFrame.AbsoluteSize.x
  8604.                                 ScrollThumbFrame.Position = UDim2.new(Class:GetScrollPercent()*(barSize - ScrollThumbFrame.AbsoluteSize.x)/barSize,0,0,0)
  8605.                         end
  8606.                 else
  8607.                         function UpdateScrollThumb()
  8608.                                 ScrollThumbFrame.Size = UDim2.new(0,ScrollBarWidth,Class.VisibleSpace/Class.TotalSpace,0)
  8609.                                 if ScrollThumbFrame.AbsoluteSize.y < ScrollBarWidth then
  8610.                                         ScrollThumbFrame.Size = UDim2.new(0,ScrollBarWidth,0,ScrollBarWidth)
  8611.                                 end
  8612.                                 local barSize = ScrollBarFrame.AbsoluteSize.y
  8613.                                 ScrollThumbFrame.Position = UDim2.new(0,0,Class:GetScrollPercent()*(barSize - ScrollThumbFrame.AbsoluteSize.y)/barSize,0)
  8614.                         end
  8615.                 end
  8616.  
  8617.                 local lastDown
  8618.                 local lastUp
  8619.                 local scrollStyle = {BackgroundColor3=Color3.new(1, 1, 1),BackgroundTransparency=0}
  8620.                 local scrollStyle_ds = {BackgroundColor3=Color3.new(1, 1, 1),BackgroundTransparency=0.7}
  8621.  
  8622.                 local function Update()
  8623.                         local t = Class.TotalSpace
  8624.                         local v = Class.VisibleSpace
  8625.                         local s = Class.ScrollIndex
  8626.                         if v <= t then
  8627.                                 if s > 0 then
  8628.                                         if s + v > t then
  8629.                                                 Class.ScrollIndex = t - v
  8630.                                         end
  8631.                                 else
  8632.                                         Class.ScrollIndex = 0
  8633.                                 end
  8634.                         else
  8635.                                 Class.ScrollIndex = 0
  8636.                         end
  8637.  
  8638.                         if Class.UpdateCallback then
  8639.                                 if Class.UpdateCallback(Class) == false then
  8640.                                         return
  8641.                                 end
  8642.                         end
  8643.  
  8644.                         local down = Class:CanScrollDown()
  8645.                         local up = Class:CanScrollUp()
  8646.                         if down ~= lastDown then
  8647.                                 lastDown = down
  8648.                                 ScrollDownFrame.Active = down
  8649.                                 ScrollDownFrame.AutoButtonColor = down
  8650.                                 local children = ScrollDownGraphic:GetChildren()
  8651.                                 local style = down and scrollStyle or scrollStyle_ds
  8652.                                 for i = 1,#children do
  8653.                                         Create(children[i],style)
  8654.                                 end
  8655.                         end
  8656.                         if up ~= lastUp then
  8657.                                 lastUp = up
  8658.                                 ScrollUpFrame.Active = up
  8659.                                 ScrollUpFrame.AutoButtonColor = up
  8660.                                 local children = ScrollUpGraphic:GetChildren()
  8661.                                 local style = up and scrollStyle or scrollStyle_ds
  8662.                                 for i = 1,#children do
  8663.                                         Create(children[i],style)
  8664.                                 end
  8665.                         end
  8666.                         ScrollThumbFrame.Visible = down or up
  8667.                         UpdateScrollThumb()
  8668.                 end
  8669.                 Class.Update = Update
  8670.  
  8671.                 SetZIndexOnChanged(ScrollFrame)
  8672.  
  8673.                 local scrollEventID = 0
  8674.                 ScrollDownFrame.MouseButton1Down:connect(function()
  8675.                         scrollEventID = tick()
  8676.                         local current = scrollEventID
  8677.                         local up_con
  8678.                         up_con = MouseDrag.MouseButton1Up:connect(function()
  8679.                                 scrollEventID = tick()
  8680.                                 MouseDrag.Parent = nil
  8681.                                 ResetButtonColor(ScrollDownFrame)
  8682.                                 up_con:disconnect(); drag = nil
  8683.                         end)
  8684.                         MouseDrag.Parent = GetScreen(ScrollFrame)
  8685.                         Class:ScrollDown()
  8686.                         wait(0.2) -- delay before auto scroll
  8687.                         while scrollEventID == current do
  8688.                                 Class:ScrollDown()
  8689.                                 if not Class:CanScrollDown() then break end
  8690.                                 wait()
  8691.                         end
  8692.                 end)
  8693.  
  8694.                 ScrollDownFrame.MouseButton1Up:connect(function()
  8695.                         scrollEventID = tick()
  8696.                 end)
  8697.  
  8698.                 ScrollUpFrame.MouseButton1Down:connect(function()
  8699.                         scrollEventID = tick()
  8700.                         local current = scrollEventID
  8701.                         local up_con
  8702.                         up_con = MouseDrag.MouseButton1Up:connect(function()
  8703.                                 scrollEventID = tick()
  8704.                                 MouseDrag.Parent = nil
  8705.                                 ResetButtonColor(ScrollUpFrame)
  8706.                                 up_con:disconnect(); drag = nil
  8707.                         end)
  8708.                         MouseDrag.Parent = GetScreen(ScrollFrame)
  8709.                         Class:ScrollUp()
  8710.                         wait(0.2)
  8711.                         while scrollEventID == current do
  8712.                                 Class:ScrollUp()
  8713.                                 if not Class:CanScrollUp() then break end
  8714.                                 wait()
  8715.                         end
  8716.                 end)
  8717.  
  8718.                 ScrollUpFrame.MouseButton1Up:connect(function()
  8719.                         scrollEventID = tick()
  8720.                 end)
  8721.  
  8722.                 if horizontal then
  8723.                         ScrollBarFrame.MouseButton1Down:connect(function(x,y)
  8724.                                 scrollEventID = tick()
  8725.                                 local current = scrollEventID
  8726.                                 local up_con
  8727.                                 up_con = MouseDrag.MouseButton1Up:connect(function()
  8728.                                         scrollEventID = tick()
  8729.                                         MouseDrag.Parent = nil
  8730.                                         ResetButtonColor(ScrollUpFrame)
  8731.                                         up_con:disconnect(); drag = nil
  8732.                                 end)
  8733.                                 MouseDrag.Parent = GetScreen(ScrollFrame)
  8734.                                 if x > ScrollThumbFrame.AbsolutePosition.x then
  8735.                                         Class:ScrollTo(Class.ScrollIndex + Class.VisibleSpace)
  8736.                                         wait(0.2)
  8737.                                         while scrollEventID == current do
  8738.                                                 if x < ScrollThumbFrame.AbsolutePosition.x + ScrollThumbFrame.AbsoluteSize.x then break end
  8739.                                                 Class:ScrollTo(Class.ScrollIndex + Class.VisibleSpace)
  8740.                                                 wait()
  8741.                                         end
  8742.                                 else
  8743.                                         Class:ScrollTo(Class.ScrollIndex - Class.VisibleSpace)
  8744.                                         wait(0.2)
  8745.                                         while scrollEventID == current do
  8746.                                                 if x > ScrollThumbFrame.AbsolutePosition.x then break end
  8747.                                                 Class:ScrollTo(Class.ScrollIndex - Class.VisibleSpace)
  8748.                                                 wait()
  8749.                                         end
  8750.                                 end
  8751.                         end)
  8752.                 else
  8753.                         ScrollBarFrame.MouseButton1Down:connect(function(x,y)
  8754.                                 scrollEventID = tick()
  8755.                                 local current = scrollEventID
  8756.                                 local up_con
  8757.                                 up_con = MouseDrag.MouseButton1Up:connect(function()
  8758.                                         scrollEventID = tick()
  8759.                                         MouseDrag.Parent = nil
  8760.                                         ResetButtonColor(ScrollUpFrame)
  8761.                                         up_con:disconnect(); drag = nil
  8762.                                 end)
  8763.                                 MouseDrag.Parent = GetScreen(ScrollFrame)
  8764.                                 if y > ScrollThumbFrame.AbsolutePosition.y then
  8765.                                         Class:ScrollTo(Class.ScrollIndex + Class.VisibleSpace)
  8766.                                         wait(0.2)
  8767.                                         while scrollEventID == current do
  8768.                                                 if y < ScrollThumbFrame.AbsolutePosition.y + ScrollThumbFrame.AbsoluteSize.y then break end
  8769.                                                 Class:ScrollTo(Class.ScrollIndex + Class.VisibleSpace)
  8770.                                                 wait()
  8771.                                         end
  8772.                                 else
  8773.                                         Class:ScrollTo(Class.ScrollIndex - Class.VisibleSpace)
  8774.                                         wait(0.2)
  8775.                                         while scrollEventID == current do
  8776.                                                 if y > ScrollThumbFrame.AbsolutePosition.y then break end
  8777.                                                 Class:ScrollTo(Class.ScrollIndex - Class.VisibleSpace)
  8778.                                                 wait()
  8779.                                         end
  8780.                                 end
  8781.                         end)
  8782.                 end
  8783.  
  8784.                 if horizontal then
  8785.                         ScrollThumbFrame.MouseButton1Down:connect(function(x,y)
  8786.                                 scrollEventID = tick()
  8787.                                 local mouse_offset = x - ScrollThumbFrame.AbsolutePosition.x
  8788.                                 local drag_con
  8789.                                 local up_con
  8790.                                 drag_con = MouseDrag.MouseMoved:connect(function(x,y)
  8791.                                         if not game:GetService'UserInputService':IsMouseButtonPressed'MouseButton1' then
  8792.                                                 scrollEventID = tick()
  8793.                                                 MouseDrag.Parent = nil
  8794.                                                 ResetButtonColor(ScrollThumbFrame)
  8795.                                                 drag_con:disconnect(); drag_con = nil
  8796.                                                 up_con:disconnect(); drag = nil
  8797.                                         end
  8798.                                         local bar_abs_pos = ScrollBarFrame.AbsolutePosition.x
  8799.                                         local bar_drag = ScrollBarFrame.AbsoluteSize.x - ScrollThumbFrame.AbsoluteSize.x
  8800.                                         local bar_abs_one = bar_abs_pos + bar_drag
  8801.                                         x = x - mouse_offset
  8802.                                         x = x < bar_abs_pos and bar_abs_pos or x > bar_abs_one and bar_abs_one or x
  8803.                                         x = x - bar_abs_pos
  8804.                                         Class:SetScrollPercent(x/(bar_drag))
  8805.                                 end)
  8806.                                 up_con = MouseDrag.MouseButton1Up:connect(function()
  8807.                                         scrollEventID = tick()
  8808.                                         MouseDrag.Parent = nil
  8809.                                         ResetButtonColor(ScrollThumbFrame)
  8810.                                         drag_con:disconnect(); drag_con = nil
  8811.                                         up_con:disconnect(); drag = nil
  8812.                                 end)
  8813.                                 MouseDrag.Parent = GetScreen(ScrollFrame)
  8814.                         end)
  8815.                 else
  8816.                         ScrollThumbFrame.MouseButton1Down:connect(function(x,y)
  8817.                                 scrollEventID = tick()
  8818.                                 local mouse_offset = y - ScrollThumbFrame.AbsolutePosition.y
  8819.                                 local drag_con
  8820.                                 local up_con
  8821.                                 drag_con = MouseDrag.MouseMoved:connect(function(x,y)
  8822.                                         if not game:GetService'UserInputService':IsMouseButtonPressed'MouseButton1' then
  8823.                                                 scrollEventID = tick()
  8824.                                                 MouseDrag.Parent = nil
  8825.                                                 ResetButtonColor(ScrollThumbFrame)
  8826.                                                 drag_con:disconnect(); drag_con = nil
  8827.                                                 up_con:disconnect(); drag = nil
  8828.                                         end
  8829.                                         local bar_abs_pos = ScrollBarFrame.AbsolutePosition.y
  8830.                                         local bar_drag = ScrollBarFrame.AbsoluteSize.y - ScrollThumbFrame.AbsoluteSize.y
  8831.                                         local bar_abs_one = bar_abs_pos + bar_drag
  8832.                                         y = y - mouse_offset
  8833.                                         y = y < bar_abs_pos and bar_abs_pos or y > bar_abs_one and bar_abs_one or y
  8834.                                         y = y - bar_abs_pos
  8835.                                         Class:SetScrollPercent(y/(bar_drag))
  8836.                                 end)
  8837.                                 up_con = MouseDrag.MouseButton1Up:connect(function()
  8838.                                         scrollEventID = tick()
  8839.                                         MouseDrag.Parent = nil
  8840.                                         ResetButtonColor(ScrollThumbFrame)
  8841.                                         drag_con:disconnect(); drag_con = nil
  8842.                                         up_con:disconnect(); drag = nil
  8843.                                 end)
  8844.                                 MouseDrag.Parent = GetScreen(ScrollFrame)
  8845.                         end)
  8846.                 end
  8847.  
  8848.                 function Class:Destroy()
  8849.                         ScrollFrame:Destroy()
  8850.                         MouseDrag:Destroy()
  8851.                         for k in pairs(Class) do
  8852.                                 Class[k] = nil
  8853.                         end
  8854.                         setmetatable(Class,nil)
  8855.                 end
  8856.  
  8857.                 Update()
  8858.  
  8859.                 return Class
  8860.         end
  8861. end
  8862.  
  8863. -- End Scrollbar
  8864.  
  8865. local scrollBar = ScrollBar(false)
  8866. scrollBar.PageIncrement = 16
  8867. Create(scrollBar.GUI,{
  8868.         Position = UDim2.new(1,0,0,0);
  8869.         Size = UDim2.new(0,ScrollBarWidth,1,0);
  8870.         Parent = editorGrid;
  8871. })
  8872.  
  8873. local scrollBarH = ScrollBar(true)
  8874. scrollBarH.PageIncrement = 8
  8875. Create(scrollBarH.GUI,{
  8876.         Position = UDim2.new(0,0,1,0);
  8877.         Size = UDim2.new(1,0,0,ScrollBarWidth);
  8878.         Parent = editorGrid;
  8879. })
  8880.  
  8881. local wheelAmount = 24;
  8882.  
  8883. editorGrid.MouseWheelForward:connect(function()
  8884.         if input ~= nil and input.down ~= nil and input.down.leftshift then
  8885.                 if scrollBarH.VisibleSpace - 1 > wheelAmount then
  8886.                         scrollBarH:ScrollTo(scrollBarH.ScrollIndex - wheelAmount)
  8887.                 else
  8888.                         scrollBarH:ScrollTo(scrollBarH.ScrollIndex - scrollBarH.VisibleSpace)
  8889.                 end
  8890.         else
  8891.                 if scrollBar.VisibleSpace - 1 > wheelAmount then
  8892.                         scrollBar:ScrollTo(scrollBar.ScrollIndex - wheelAmount)
  8893.                 else
  8894.                         scrollBar:ScrollTo(scrollBar.ScrollIndex - scrollBar.VisibleSpace)
  8895.                 end
  8896.         end
  8897. end)
  8898. editorGrid.MouseWheelBackward:connect(function()
  8899.         if input ~= nil and input.down ~= nil and input.down.leftshift then
  8900.                 if scrollBarH.VisibleSpace - 1 > wheelAmount then
  8901.                         scrollBarH:ScrollTo(scrollBarH.ScrollIndex + wheelAmount)
  8902.                 else
  8903.                         scrollBarH:ScrollTo(scrollBarH.ScrollIndex + scrollBarH.VisibleSpace)
  8904.                 end
  8905.         else
  8906.                 if scrollBar.VisibleSpace - 1 > wheelAmount then
  8907.                         scrollBar:ScrollTo(scrollBar.ScrollIndex + wheelAmount)
  8908.                 else
  8909.                         scrollBar:ScrollTo(scrollBar.ScrollIndex + scrollBar.VisibleSpace)
  8910.                 end
  8911.         end
  8912. end)
  8913.  
  8914. local entries = {}
  8915.  
  8916. local grid = {}
  8917.  
  8918. local count = 1
  8919. local xCount = 1
  8920.  
  8921. local lineSpan = 0
  8922.  
  8923. for i = 0,editorGrid.AbsoluteSize.X - 20,8 do
  8924.         local newRow = {}
  8925.         for j = 0,390,16 do
  8926.                 local cellText = Instance.new("TextLabel",editorGrid)
  8927.                 cellText.Name = string.format('grid(%s,%s)', i, j);
  8928.                 cellText.BackgroundTransparency = 1
  8929.                 cellText.BorderSizePixel = 0
  8930.                 cellText.Text = ""
  8931.                 cellText.Position = UDim2.new(0,i,0,j)
  8932.                 cellText.Size = UDim2.new(0,8,0,16)
  8933.                 cellText.Font = Enum.Font.SourceSans
  8934.                 cellText.FontSize = Enum.FontSize.Size18
  8935.                 table.insert(newRow,cellText)
  8936.                 xCount = xCount + 1
  8937.         end
  8938.         table.insert(grid,newRow)
  8939.         count = count + 1
  8940.         xCount = 1
  8941. end
  8942.  
  8943. local syntaxHighlightList = {
  8944.         {["Keyword"] = "for",                   ["Color"] = Color3.fromRGB( 86, 153, 212), ["Independent"] = true};
  8945.         {["Keyword"] = "local",                 ["Color"] = Color3.fromRGB( 86, 153, 212), ["Independent"] = true};
  8946.         {["Keyword"] = "if",                    ["Color"] = Color3.fromRGB( 86, 153, 212), ["Independent"] = true};
  8947.         {["Keyword"] = "then",                  ["Color"] = Color3.fromRGB( 86, 153, 212), ["Independent"] = true};
  8948.         {["Keyword"] = "do",                    ["Color"] = Color3.fromRGB( 86, 153, 212), ["Independent"] = true};
  8949.         {["Keyword"] = "while",                 ["Color"] = Color3.fromRGB( 86, 153, 212), ["Independent"] = true};
  8950.         {["Keyword"] = "end",                   ["Color"] = Color3.fromRGB( 86, 153, 212), ["Independent"] = true};
  8951.         {["Keyword"] = "function",              ["Color"] = Color3.fromRGB( 86, 153, 212), ["Independent"] = true};
  8952.         {["Keyword"] = "return",                ["Color"] = Color3.fromRGB( 86, 153, 212), ["Independent"] = true};
  8953.         {["Keyword"] = "break",                 ["Color"] = Color3.fromRGB( 86, 153, 212), ["Independent"] = true};
  8954.         {["Keyword"] = "else",                  ["Color"] = Color3.fromRGB( 86, 153, 212), ["Independent"] = true};
  8955.         {["Keyword"] = "elseif",                ["Color"] = Color3.fromRGB( 86, 153, 212), ["Independent"] = true};
  8956.         {["Keyword"] = "in",                    ["Color"] = Color3.fromRGB( 86, 153, 212), ["Independent"] = true};
  8957.         {["Keyword"] = "pairs",                 ["Color"] = Color3.fromRGB(205,  98, 255), ["Independent"] = true};
  8958.         {["Keyword"] = "ipairs",                ["Color"] = Color3.fromRGB(205,  98, 255), ["Independent"] = true};
  8959.         {["Keyword"] = "next",                  ["Color"] = Color3.fromRGB(205,  98, 255), ["Independent"] = true};
  8960.         {["Keyword"] = "require",               ["Color"] = Color3.fromRGB(205,  98, 255), ["Independent"] = true};
  8961.         {["Keyword"] = "pcall",                 ["Color"] = Color3.fromRGB(205,  98, 255), ["Independent"] = true};
  8962.         {["Keyword"] = "xpcall",                ["Color"] = Color3.fromRGB(205,  98, 255), ["Independent"] = true};
  8963.         {["Keyword"] = "ypcall",                ["Color"] = Color3.fromRGB(205,  98, 255), ["Independent"] = true};
  8964.         {["Keyword"] = "assert",                ["Color"] = Color3.fromRGB(205,  98, 255), ["Independent"] = true};
  8965. }
  8966.  
  8967. function checkMouseInGui(gui)
  8968.         if gui == nil then return false end
  8969.         local plrMouse = game:GetService'Players'.LocalPlayer:GetMouse()
  8970.         local guiPosition = gui.AbsolutePosition
  8971.         local guiSize = gui.AbsoluteSize       
  8972.        
  8973.         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
  8974.                 return true
  8975.         else
  8976.                 return false
  8977.         end
  8978. end
  8979.  
  8980. function AddZeros(num,reach)
  8981.         local toConvert = tostring(num)
  8982.         while #toConvert < reach do
  8983.                 toConvert = " "..toConvert
  8984.         end
  8985.         return toConvert
  8986. end
  8987.  
  8988. function buildScript(source,xOff,yOff,override)
  8989.         local buildingRows = true
  8990.         local buildScr = source
  8991.        
  8992.         local totalLines = 0
  8993.  
  8994.         if currentSource ~= source then
  8995.                 currentSource = source
  8996.         end
  8997.  
  8998.         if override then
  8999.                 currentSource = source
  9000.                 entries = {}
  9001.                 buildScr = tostring(buildScr);
  9002.                 while buildingRows do
  9003.                         local x,y = string.find(buildScr,"\n")
  9004.                         if x and y then
  9005.                                 table.insert(entries,string.sub(buildScr,1,y))
  9006.                                 buildScr = string.sub(buildScr,y+1,string.len(buildScr))
  9007.                         else
  9008.                                 buildingRows = false
  9009.                                 table.insert(entries,buildScr)
  9010.                         end
  9011.                 end
  9012.         end
  9013.        
  9014.         totalLines = #entries
  9015.         lineSpan = #tostring(totalLines)
  9016.        
  9017.         if lineSpan == 1 then lineSpan = 2 end
  9018.        
  9019.         local currentRow = 1
  9020.         local currentColumn = 2 + lineSpan
  9021.        
  9022.         local colorTime = 0
  9023.         local colorReplace = nil
  9024.        
  9025.         local inString = false
  9026.        
  9027.         local workingEntries = entries
  9028.        
  9029.         --[[
  9030.         for i,v in pairs(entries) do
  9031.                 table.insert(workingEntries,v)
  9032.         end
  9033.        
  9034.         for i = 1,yOff do
  9035.                 table.remove(workingEntries,1)
  9036.         end
  9037.         --]]
  9038.        
  9039.         local delayance = xOff
  9040.  
  9041.         for i = 1,#grid do
  9042.                 for j = 1,#grid[i] do
  9043.                         if i <= lineSpan then
  9044.                                 local newNum = AddZeros(yOff + j,lineSpan)
  9045.                                 local newDigit =  string.sub(newNum,i,i)
  9046.                                 if newDigit == " " then
  9047.                                         grid[i][j].Text = ""
  9048.                                 else
  9049.                                         grid[i][j].Text = newDigit
  9050.                                 end
  9051.  
  9052.                                 -- grid[i][j].BorderSizePixel = 1
  9053.  
  9054.                                 grid[i][j].TextColor3 = Color3.fromRGB(245, 245, 245)
  9055.                                 grid[i][j].BackgroundTransparency = 0
  9056.                                 grid[i][j].BackgroundColor3 = Color3.fromRGB(60, 60, 60)
  9057.                                 grid[i][j].Font = Enum.Font.SourceSans
  9058.                         elseif i == lineSpan + 1 then
  9059.                                 -- grid[i][j].BorderSizePixel = 1
  9060.  
  9061.                                 grid[i][j].Text = ""
  9062.                                 grid[i][j].BackgroundTransparency = 0
  9063.                                 grid[i][j].BackgroundColor3 = Color3.fromRGB(55, 55, 55)
  9064.                                 -- grid[i][j].Font = Enum.Font.SourceSans
  9065.                         else
  9066.                                 -- grid[i][j].BorderSizePixel = 1
  9067.  
  9068.                                 grid[i][j].Text = ""
  9069.                                 grid[i][j].BackgroundTransparency = 1
  9070.                                 --grid[i][j].Font = Enum.Font.SourceSans
  9071.                         end
  9072.                 end
  9073.         end
  9074.        
  9075.         while true do
  9076.                 if currentRow > #workingEntries or currentRow > #grid[1] then break end
  9077.                 local entry = workingEntries[currentRow+yOff]
  9078.                 while entry ~= nil and typeof(entry) == 'string' and string.len(entry) > 0 do
  9079.                         if string.sub(entry,1,1) == "\t" then entry = "    "..string.sub(entry,2) end
  9080.                        
  9081.                         if currentColumn > #grid then break end
  9082.                        
  9083.                         if delayance == 0 then
  9084.                                 grid[currentColumn][currentRow].Text = string.sub(entry,1,1)
  9085.                         end
  9086.                        
  9087.                         -- Coloring
  9088.                        
  9089.                         if not inString then
  9090.                                 for i,v in pairs(syntaxHighlightList) do
  9091.                                         if string.sub(entry,1,string.len(v["Keyword"])) == v["Keyword"] then
  9092.                                                 if v["Independent"] then
  9093.                                                         local outCheck = string.len(v["Keyword"])+1
  9094.                                                         local outEntry = string.sub(entry,outCheck,outCheck)
  9095.                                                         if not string.find(outEntry,"%w") then
  9096.                                                                 colorTime = string.len(v["Keyword"])
  9097.                                                                 colorReplace = v["Color"]
  9098.                                                         end
  9099.                                                 else
  9100.                                                         colorTime = string.len(v["Keyword"])
  9101.                                                         colorReplace = v["Color"]
  9102.                                                 end
  9103.                                         end
  9104.                                 end
  9105.                         end
  9106.                        
  9107.                         if string.sub(entry,1,1) == "\"" and string.match(entry,"\".+\"") then
  9108.                                 inString = true
  9109.                                 colorTime = string.len(string.match(entry,"\".+\""))
  9110.                                 colorReplace = Color3.fromRGB(73, 212, 107);
  9111.                         end
  9112.  
  9113.                         local oldTC3 = Color3.fromRGB(244, 244, 244); --grid[currentColumn][currentRow].TextColor3
  9114.                        
  9115.                         if colorTime > 0 then
  9116.                                 colorTime = colorTime - 1
  9117.                                 oldTC3 = grid[currentColumn][currentRow].TextColor3
  9118.                                 grid[currentColumn][currentRow].TextColor3 = colorReplace
  9119.                                 if colorTime == 0 then inString = false end
  9120.                         else
  9121.                                 grid[currentColumn][currentRow].TextColor3 = oldTC3 --Color3.new(0,0,0)
  9122.                                 inString = false
  9123.                         end
  9124.                        
  9125.                         if delayance == 0 then
  9126.                                 currentColumn = currentColumn + 1
  9127.                         else
  9128.                                 delayance = delayance - 1
  9129.                         end
  9130.                         entry = string.sub(entry,2,string.len(entry))
  9131.                 end
  9132.                 currentRow = currentRow + 1
  9133.                 currentColumn = 2 + lineSpan
  9134.                 colorTime = 0
  9135.                 delayance = xOff
  9136.                 inString = false
  9137.         end
  9138. end
  9139.  
  9140. function scrollBar.UpdateCallback(self)
  9141.         scrollBar.TotalSpace = #entries * 16
  9142.         scrollBar.VisibleSpace = editorGrid.AbsoluteSize.Y
  9143.         buildScript(currentSource,math.floor(scrollBarH.ScrollIndex/8),math.floor(scrollBar.ScrollIndex/16))
  9144. end
  9145.  
  9146. function scrollBarH.UpdateCallback(self)
  9147.         scrollBarH.TotalSpace = (getLongestEntry(entries) + 1 + lineSpan) * 8
  9148.         scrollBarH.VisibleSpace = editorGrid.AbsoluteSize.X
  9149.         buildScript(currentSource,math.floor(scrollBarH.ScrollIndex/8),math.floor(scrollBar.ScrollIndex/16))
  9150. end
  9151.  
  9152. function getLongestEntry(tab)
  9153.         local longest = 0
  9154.         for i,v in pairs(tab) do
  9155.                 if string.len(v) > longest then
  9156.                         longest = string.len(v)
  9157.                 end
  9158.         end
  9159.         return longest
  9160. end
  9161.  
  9162. function openScript(scrObj)
  9163.         if scrObj:IsA("LocalScript") then
  9164.                 scrObj.Archivable = true
  9165.                 scrObj = scrObj:Clone()
  9166.                 scrObj.Disabled = true
  9167.         end
  9168.        
  9169.         local scrName = scrObj.Name
  9170.         local scrSource = decompile(scrObj)
  9171.         currentScrName = scrObj.Name;
  9172.        
  9173.         table.insert(memoryScripts,{Name = scrName,Source = scrSource})
  9174.        
  9175.         local newTab = entryTemplate:Clone()
  9176.         newTab.Button.Text = scrName
  9177.         newTab.Position = UDim2.new(0,#scriptBar:GetChildren() * 100,0,0)
  9178.         newTab.BackgroundColor3 = Color3.new(33, 33, 33)
  9179.         newTab.Visible = true
  9180.        
  9181.         newTab.Button.MouseButton1Down:connect(function()
  9182.                 for i,v in pairs(scriptBar:GetChildren()) do
  9183.                         if v == newTab then
  9184.                                 editingIndex = i
  9185.                                 buildScript(memoryScripts[i].Source,0,0,true)
  9186.                                 wait(.1);
  9187.                                 scrollBar:ScrollTo(1)
  9188.                                 scrollBar:Update()
  9189.                                 scrollBarH:ScrollTo(1)
  9190.                                 scrollBarH:Update()
  9191.                         end
  9192.                 end
  9193.         end)
  9194.        
  9195.         newTab.Close.MouseButton1Click:connect(function()
  9196.                 for i,v in pairs(scriptBar:GetChildren()) do
  9197.                         if v == newTab then
  9198.                                 table.remove(memoryScripts,i)
  9199.                                 if editingIndex == i then
  9200.                                         editingIndex = #memoryScripts
  9201.                                         if editingIndex > 0 then
  9202.                                                 buildScript(memoryScripts[#memoryScripts].Source,0,0,true)
  9203.                                         else
  9204.                                                 buildScript("",0,0,true)
  9205.                                         end
  9206.                                 end
  9207.                                
  9208.                                 scrollBar:ScrollTo(1)
  9209.                                 scrollBar:Update()
  9210.                                 scrollBarH:ScrollTo(1)
  9211.                                 scrollBarH:Update()
  9212.                                
  9213.                                 for i2 = i,#scriptBar:GetChildren() do
  9214.                                         scriptBar:GetChildren()[i2].Position = scriptBar:GetChildren()[i2].Position + UDim2.new(0,-100,0,0)
  9215.                                 end
  9216.                                 if editingIndex > i then
  9217.                                         editingIndex = editingIndex - 1
  9218.                                 end
  9219.                                 newTab:Destroy()
  9220.                         end
  9221.                 end
  9222.         end)
  9223.        
  9224.         editingIndex = #memoryScripts
  9225.         buildScript(scrSource,0,0,true)
  9226.        
  9227.         newTab.Parent = scriptBar
  9228. end
  9229.  
  9230. getgenv().openScript = openScript;
  9231.  
  9232. function updateScriptBar()
  9233.  
  9234. end
  9235.  
  9236. function _updateScriptBar()
  9237.         local entryCount = 0
  9238.        
  9239.         scriptBarLeft.Active = false
  9240.         scriptBarLeft.AutoButtonColor = false
  9241.         for i,v in pairs(scriptBarLeft["Arrow Graphic"]:GetChildren()) do
  9242.                 v.BackgroundTransparency = 0.7
  9243.         end
  9244.         scriptBarRight.Active = false
  9245.         scriptBarRight.AutoButtonColor = false
  9246.         for i,v in pairs(scriptBarRight["Arrow Graphic"]:GetChildren()) do
  9247.                 v.BackgroundTransparency = 0.7
  9248.         end
  9249.         for i,v in pairs(scriptBar:GetChildren()) do
  9250.                 if v.Position.X.Offset < 0 then
  9251.                         scriptBarLeft.Active = true
  9252.                         scriptBarLeft.AutoButtonColor = true
  9253.                         for i,v in pairs(scriptBarLeft["Arrow Graphic"]:GetChildren()) do
  9254.                                 v.BackgroundTransparency = 0
  9255.                         end
  9256.                 elseif v.Position.X.Offset >= 0 then
  9257.                         entryCount = entryCount + 1
  9258.                         if entryCount == 5 then
  9259.                                 scriptBarRight.Active = true
  9260.                                 scriptBarRight.AutoButtonColor = true
  9261.                                 for i,v in pairs(scriptBarRight["Arrow Graphic"]:GetChildren()) do
  9262.                                         v.BackgroundTransparency = 0
  9263.                                 end
  9264.                         end
  9265.                 end
  9266.         end
  9267. end
  9268.  
  9269. scriptBar.ChildAdded:connect(updateScriptBar)
  9270. scriptBar.ChildRemoved:connect(updateScriptBar)
  9271.  
  9272. scriptBarLeft.MouseButton1Click:connect(function()
  9273.         if scriptBarLeft.Active == false then return end
  9274.         for i,v in pairs(scriptBar:GetChildren()) do
  9275.                 v.Position = v.Position + UDim2.new(0,100,0,0)
  9276.         end
  9277.         updateScriptBar()
  9278. end)
  9279.  
  9280. scriptBarRight.MouseButton1Click:connect(function()
  9281.         if scriptBarRight.Active == false then return end
  9282.         for i,v in pairs(scriptBar:GetChildren()) do
  9283.                 v.Position = v.Position + UDim2.new(0,-100,0,0)
  9284.         end
  9285.         updateScriptBar()
  9286. end)
  9287.  
  9288. mouse.Button1Down:connect(function()
  9289.         if checkMouseInGui(editorGrid) then
  9290.         end
  9291. end)
  9292.  
  9293. openEvent.Event:connect(function(...)
  9294.         top.Visible = true
  9295.         local args = {...}
  9296.         if #args > 0 then
  9297.                 openScript(args[1])
  9298.         end
  9299. end)
  9300.  
  9301. clipboardButton.MouseButton1Click:connect(function()
  9302.         if Clipboard and Clipboard.set then
  9303.                 Clipboard.set(currentSource)
  9304.         elseif CopyString then
  9305.                 CopyString(currentSource)
  9306.         elseif Synapse then
  9307.                 Synapse:Copy(currentSource)
  9308.         elseif setclipboard then
  9309.                 setclipboard(currentSource)
  9310.         end
  9311. end)
  9312.  
  9313. saveScriptButton.MouseButton1Click:connect(function()
  9314.         if Synapse then
  9315.                 Synapse:WriteFile(game.PlaceId .. '_' .. currentScrName:gsub('%W', '') .. '_' .. math.random(100000, 999999) .. '.lua', currentSource)
  9316.         elseif writefile then
  9317.                 writefile(game.PlaceId .. '_' .. currentScrName:gsub('%W', '') .. '_' .. math.random(100000, 999999) .. '.lua', currentSource);
  9318.         end
  9319. end)
  9320.  
  9321. closeButton.MouseButton1Click:connect(function()
  9322.         top.Visible = false
  9323. end)
  9324.  
  9325. --[[
  9326. local scr = script.Parent:WaitForChild("Scr")
  9327. local scr2 = script.Parent:WaitForChild("Scr2")
  9328. local scr3 = script.Parent:WaitForChild("Scr3")
  9329. local scr4 = script.Parent:WaitForChild("TOS")
  9330. local scr5 = script.Parent:WaitForChild("HW")
  9331. --]]
  9332.  
  9333. buildScript("",0,0,true)
  9334. --[[
  9335. openScript(scr)
  9336. openScript(scr2)
  9337. openScript(scr3)
  9338. openScript(scr4)
  9339. openScript(scr5)
  9340. --]]
  9341.  
  9342. scrollBar:Update()
  9343. scrollBarH:Update()
  9344. end)
  9345.  
  9346. function ScrambleNames(A)
  9347.         for i,v in pairs(A:GetDescendants()) do
  9348.                 v.Name = RandomCharacters(math.random(16, 64));
  9349.         end
  9350. end
  9351.  
  9352. wait(.25)
  9353.  
  9354. D_E_X.Parent = game:GetService'CoreGui'