JoshXploits

Untitled

Dec 17th, 2025 (edited)
73
0
Never
Not a member of Pastebin yet? Sign Up, it unlocks many cool features!
text 371.65 KB | None | 0 0
  1. --[[
  2. MarcoUI Interface
  3.  
  4. Author: 4lpaca
  5. License: MIT
  6. Github: https://github.com/4lpaca-pin/MarcoUI
  7. Original: MarcoUI.net
  8.  
  9. Version: 2.6
  10. - Improved Performance Mode
  11. MarcoUI:OptimizeMode(< boolean >)
  12. - Added Auto Color Logo
  13. MarcoUI:CustomIconHighlight()
  14. --]]
  15.  
  16. --- Export Types ---
  17.  
  18. export type cloneref = (target: Instance) -> Instance;
  19.  
  20. export type Window = {
  21. Name: string,
  22. Keybind: string | Enum.KeyCode,
  23. Logo: string,
  24. Scale: UDim2,
  25. TextSize: number
  26. };
  27.  
  28. export type ConfigManager = {
  29. Directory: string,
  30. Config: string,
  31. };
  32.  
  33. export type WriteConfig = {
  34. Name: string,
  35. Author: string,
  36. };
  37.  
  38. export type WindowUpdate = {
  39. Username: string,
  40. ExpireDate: string,
  41. Logo: string,
  42. WindowName: string,
  43. UserProfile: string
  44. };
  45.  
  46. export type ConfigFunctions = {
  47. Directory: string,
  48. WriteConfig: (self: ConfigFunctions , Config: WriteConfig) -> any?,
  49. ReadInfo: (self: ConfigFunctions , ConfigName: string) -> any?,
  50. DeleteConfig: (self: ConfigFunctions , ConfigName: string) -> any?,
  51. LoadConfig: (self: ConfigFunctions , ConfigName: string) -> any?,
  52. GetConfigs: (self: ConfigFunctions , ConfigName: string) -> {string},
  53. GetConfigCount: (self: ConfigFunctions) -> number,
  54. GetFullConfigs: (self: ConfigFunctions , ConfigName: string) -> {
  55. {
  56. Name: string,
  57. Info: {
  58. Type: string,
  59. Author: string,
  60. Name: string,
  61. CreatedDate: string,
  62. }
  63. }
  64. },
  65. };
  66.  
  67. export type KeybindSettings = {
  68. Key : string,
  69. On : boolean | number,
  70. Off : boolean | number,
  71. Mode : number,
  72. Name : string,
  73. }
  74.  
  75. export type SecurityConfig = {
  76. BlurEnabled : boolean,
  77. ImageScale: number,
  78. };
  79.  
  80. export type Notify = {
  81. Icon: string,
  82. Title: string,
  83. Content: string,
  84. Duration: number
  85. };
  86.  
  87. export type NotifyPayback = {
  88. SetProgress: (self: Notify , time: number) -> any?,
  89. Content: (self: Notify , str: string) -> any?,
  90. Title: (self: Notify , str: string) -> any?,
  91. Close: () -> any?,
  92. }
  93.  
  94. export type Watermark = {
  95. Icon: string,
  96. Text: string
  97. };
  98.  
  99. export type TabConfig = {
  100. Name: string,
  101. Icon: string,
  102. Type: string,
  103. EnableScrolling: boolean
  104. };
  105.  
  106. export type TabConfigManager = {
  107. Name: string,
  108. Icon: string,
  109. Config: ConfigFunctions
  110. }
  111.  
  112. export type ContainerTab = {
  113. Name: string,
  114. Icon: string,
  115. EnableScrolling: boolean
  116. };
  117.  
  118. export type Category = {
  119. Name: string
  120. };
  121.  
  122. export type Section = {
  123. Name: string,
  124. Position: string
  125. };
  126.  
  127. export type Toggle = {
  128. Name: string,
  129. Default: boolean,
  130. Flag: string | nil,
  131. Risky: boolean,
  132. Callback: (Value: boolean) -> any?
  133. };
  134.  
  135. export type MiniToggle = {
  136. Default: boolean,
  137. Flag: string | nil,
  138. Callback: (Value: boolean) -> any?
  139. };
  140.  
  141. export type TextBoxConfig = {
  142. Name: string,
  143. Default: string,
  144. Placeholder: string,
  145. Flag: string | nil,
  146. Numeric: boolean,
  147. Callback: (Text: string) -> any?
  148. };
  149.  
  150. export type ColorPicker = {
  151. Name: string,
  152. Default: Color3,
  153. Flag: string | nil,
  154. Transparency: number,
  155. Callback: (Value: Color3 , Trans: number) -> any?
  156. };
  157.  
  158. export type MiniColorPicker = {
  159. Default: Color3,
  160. Transparency: number,
  161. Flag: string | nil,
  162. Callback: (Value: Color3 , Trans: number) -> any?
  163. };
  164.  
  165. export type Slider = {
  166. Name: string,
  167. Min: number,
  168. Max: number,
  169. Default: number,
  170. Type: string,
  171. Round: number,
  172. Callback: (Value: number) -> any?
  173. };
  174.  
  175. export type Dropdown = {
  176. Name: string,
  177. Default: string | {string},
  178. Values: {string},
  179. Multi: boolean,
  180. Callback: (Value: string | {[string]: boolean}) -> any?
  181. };
  182.  
  183. export type Button = {
  184. Name: string,
  185. Callback: () -> any?
  186. };
  187.  
  188. export type Keybind = {
  189. Name: string,
  190. Default: string | Enum.KeyCode,
  191. Callback: (Value: string) -> any,
  192. Blacklist: {string | Enum.KeyCode}
  193. };
  194.  
  195. export type MiniKeybind = {
  196. Default: string | Enum.KeyCode,
  197. Callback: (Value: string) -> any,
  198. Blacklist: {string | Enum.KeyCode}
  199. };
  200.  
  201. export type Helper = {
  202. Text: string
  203. };
  204.  
  205. export type Paragraph = {
  206. Title: string,
  207. Content: string
  208. }
  209.  
  210. pcall(function() -- for Luraph
  211. local Constant = table.concat({"LP","H_NO"}).."_VI".."RTU".."AL".."IZE";
  212. getfenv()[Constant] = getfenv()[Constant] or function(f) return f end;
  213. -- LPH_NO_VIRTUALIZE
  214. end);
  215.  
  216. pcall(function() -- for IB1
  217. local Constant = "IB".."_NO_VI".."RTU".."AL".."IZE";
  218. getfenv()[Constant] = getfenv()[Constant] or function(f) return f end;
  219. -- IB_NO_VIRTUALIZE
  220. end);
  221.  
  222. getgenv = getgenv or getfenv;
  223.  
  224. -- Please ignore the ugly code. [Custom File System] --
  225. if game:GetService('RunService'):IsStudio() then
  226. local BaseWorkspace = Instance.new('Folder',game:GetService("ReplicatedFirst"));
  227.  
  228. BaseWorkspace.Name = tostring(string.char(math.random(50,120)))..tostring(string.char(math.random(50,120)))..tostring(string.char(math.random(50,120)))..tostring(string.char(math.random(50,120)))..tostring(string.char(math.random(50,120)))..tostring(string.char(math.random(50,120)));
  229.  
  230. local __get_path_c = function(path)
  231. return (string.find(path,'/',1,true) and string.split(path,'/')) or (string.find(path,'\\',1,true) and string.split(path,'\\')) or {path};
  232. end;
  233.  
  234. local __get_path = function(path)
  235. local main = __get_path_c(path);
  236.  
  237. local block = BaseWorkspace;
  238.  
  239. for i,v in next , main do
  240. block = block[v];
  241. end;
  242.  
  243. return block;
  244. end;
  245.  
  246. getgenv().readfile = function(path)
  247. local path : StringValue = __get_path(path);
  248.  
  249. return path.Value;
  250. end;
  251.  
  252. getgenv().isfile = function(path)
  253. local success , message = pcall(function()
  254. return __get_path(path);
  255. end);
  256.  
  257. if success and not message:IsA("Folder") then
  258. return true;
  259. end;
  260.  
  261. return false;
  262. end;
  263.  
  264. getgenv().isfolder = function(path)
  265. local success , message = pcall(function()
  266. return __get_path(path);
  267. end);
  268.  
  269. if success and message:IsA("Folder") then
  270. return true;
  271. end;
  272.  
  273. return false;
  274. end;
  275.  
  276. getgenv().writefile = function(path,content)
  277. local main = __get_path_c(path);
  278.  
  279. local block = BaseWorkspace;
  280.  
  281. for i,v in next , main do
  282. local item = block:FindFirstChild(v);
  283. if not item then
  284. local c = Instance.new('StringValue',block);
  285.  
  286. c.Name = tostring(v);
  287. c.Value = content;
  288. else
  289. if item:IsA('StringValue') and tostring(item) == v then
  290. item.Name = tostring(v);
  291. item.Value = content;
  292. end;
  293.  
  294. block = item;
  295. end;
  296. end;
  297. end;
  298.  
  299. getgenv().listfiles = function(path)
  300. local fold = __get_path(path);
  301. local pa = {};
  302.  
  303. for i,v in next , fold:GetChildren() do
  304. if v:IsA('StringValue') then
  305. table.insert(pa,path..'/'..tostring(v));
  306. end;
  307. end;
  308.  
  309. return pa;
  310. end;
  311.  
  312. getgenv().makefolder = function(path)
  313. local main = __get_path_c(path);
  314.  
  315. local block = BaseWorkspace;
  316.  
  317. for i,v in next , main do
  318. local item = block:FindFirstChild(v);
  319. if not item then
  320. local c = Instance.new('Folder',block);
  321.  
  322. c.Name = tostring(v);
  323. else
  324. block = item;
  325. end;
  326. end;
  327. end;
  328.  
  329. getgenv().delfile = function(path)
  330. local main = __get_path_c(path);
  331.  
  332. local block = BaseWorkspace;
  333.  
  334. for i,v in next , main do
  335. local item = block:FindFirstChild(v);
  336. if item and item:IsA('StringValue') then
  337. item:Destroy();
  338. else
  339. block = item;
  340. end;
  341. end;
  342. end;
  343. end;
  344.  
  345. --- Local Variables ---
  346. local cloneref: cloneref = cloneref or function(f) return f end;
  347. local TweenService: TweenService = cloneref(game:GetService('TweenService'));
  348. local UserInputService: UserInputService = cloneref(game:GetService('UserInputService'));
  349. local TextService: TextService = cloneref(game:GetService('TextService'));
  350. local RunService: RunService = cloneref(game:GetService('RunService'));
  351. local Players: Players = cloneref(game:GetService('Players'));
  352. local HttpService: HttpService = cloneref(game:GetService('HttpService'));
  353. local LocalPlayer: Player = (Players and Players.LocalPlayer) or nil;
  354. local CoreGui: PlayerGui = (gethui and gethui()) or (get_hidden_gui and get_hidden_gui()) or cloneref(game:FindFirstChild('CoreGui')) or (LocalPlayer and cloneref(LocalPlayer.PlayerGui)) or cloneref(game:FindFirstChild('CoreGui'));
  355. local Mouse: Mouse = nil;
  356. pcall(function()
  357. if LocalPlayer then
  358. Mouse = LocalPlayer:GetMouse();
  359. end;
  360. end);
  361. local CurrentCamera: Camera? = cloneref(workspace.CurrentCamera);
  362.  
  363. local MarcoUI = {
  364. Version = '2.6',
  365. Logo = "rbxassetid://120245531583106",
  366. Windows = {},
  367. Scale = {
  368. Window = UDim2.new(0, 580,0, 680), -- Increased size for less clumped feel
  369. Mobile = UDim2.new(0, 450,0, 375),
  370. TabOpen = 185,
  371. TabClose = 85,
  372. },
  373. PerformanceMode = false,
  374. WindowsNil = {},
  375. NilFolder = nil, -- Will be created on first use
  376. ArcylicParent = CurrentCamera,
  377. ProtectGui = protect_gui or protectgui or (syn and syn.protect_gui) or function(s) return s; end,
  378. };
  379.  
  380. -- Initialize NilFolder safely
  381. pcall(function()
  382. MarcoUI.NilFolder = Instance.new('Folder');
  383. MarcoUI.NilFolder.Name = "Nil-Instances";
  384. end);
  385.  
  386. MarcoUI.Colors = {
  387. Highlight = Color3.fromRGB(220, 20, 60),
  388. Toggle = Color3.fromRGB(180, 16, 48),
  389. Risky = Color3.fromRGB(255, 196, 0),
  390. BGDBColor = Color3.fromRGB(10, 10, 10),
  391. BlockColor = Color3.fromRGB(16, 16, 16),
  392. StrokeColor = Color3.fromRGB(35, 35, 35),
  393. SwitchColor = Color3.fromRGB(245, 245, 245),
  394. DropColor = Color3.fromRGB(22, 22, 22),
  395. MouseEnter = Color3.fromRGB(40, 40, 40),
  396. BlockBackground = Color3.fromRGB(24, 24, 24),
  397. LineColor = Color3.fromRGB(220, 20, 60),
  398. HighStrokeColor = Color3.fromRGB(55, 55, 55),
  399. };
  400.  
  401. MarcoUI.Elements = {
  402. Highlight = {},
  403. DropHighlight = {},
  404. Risky = {},
  405. BGDBColor = {},
  406. BlockColor = {},
  407. StrokeColor = {},
  408. SwitchColor = {},
  409. DropColor = {},
  410. BlockBackground = {},
  411. LineColor = {},
  412. HighStrokeColor = {},
  413. };
  414.  
  415. MarcoUI.DragBlacklist = {};
  416. MarcoUI.IaDrag = false;
  417. MarcoUI.LastDrag = tick();
  418. MarcoUI.Flags = {};
  419.  
  420. MarcoUI.Lucide = {
  421. ['lucide-mouse-2'] = "rbxassetid://10088146939",
  422. ['lucide-internet'] = "rbxassetid://12785195438",
  423. ['lucide-earth'] = "rbxassetid://115986292591138",
  424. ['lucide-settings-3'] = "rbxassetid://14007344336",
  425. ["lucide-accessibility"] = "rbxassetid://10709751939",
  426. ["lucide-activity"] = "rbxassetid://10709752035",
  427. ["lucide-air-vent"] = "rbxassetid://10709752131",
  428. ["lucide-airplay"] = "rbxassetid://10709752254",
  429. ["lucide-alarm-check"] = "rbxassetid://10709752405",
  430. ["lucide-alarm-clock"] = "rbxassetid://10709752630",
  431. ["lucide-alarm-clock-off"] = "rbxassetid://10709752508",
  432. ["lucide-alarm-minus"] = "rbxassetid://10709752732",
  433. ["lucide-alarm-plus"] = "rbxassetid://10709752825",
  434. ["lucide-album"] = "rbxassetid://10709752906",
  435. ["lucide-alert-circle"] = "rbxassetid://10709752996",
  436. ["lucide-alert-octagon"] = "rbxassetid://10709753064",
  437. ["lucide-alert-triangle"] = "rbxassetid://10709753149",
  438. ["lucide-align-center"] = "rbxassetid://10709753570",
  439. ["lucide-align-center-horizontal"] = "rbxassetid://10709753272",
  440. ["lucide-align-center-vertical"] = "rbxassetid://10709753421",
  441. ["lucide-align-end-horizontal"] = "rbxassetid://10709753692",
  442. ["lucide-align-end-vertical"] = "rbxassetid://10709753808",
  443. ["lucide-align-horizontal-distribute-center"] = "rbxassetid://10747779791",
  444. ["lucide-align-horizontal-distribute-end"] = "rbxassetid://10747784534",
  445. ["lucide-align-horizontal-distribute-start"] = "rbxassetid://10709754118",
  446. ["lucide-align-horizontal-justify-center"] = "rbxassetid://10709754204",
  447. ["lucide-align-horizontal-justify-end"] = "rbxassetid://10709754317",
  448. ["lucide-align-horizontal-justify-start"] = "rbxassetid://10709754436",
  449. ["lucide-align-horizontal-space-around"] = "rbxassetid://10709754590",
  450. ["lucide-align-horizontal-space-between"] = "rbxassetid://10709754749",
  451. ["lucide-align-justify"] = "rbxassetid://10709759610",
  452. ["lucide-align-left"] = "rbxassetid://10709759764",
  453. ["lucide-align-right"] = "rbxassetid://10709759895",
  454. ["lucide-align-start-horizontal"] = "rbxassetid://10709760051",
  455. ["lucide-align-start-vertical"] = "rbxassetid://10709760244",
  456. ["lucide-align-vertical-distribute-center"] = "rbxassetid://10709760351",
  457. ["lucide-align-vertical-distribute-end"] = "rbxassetid://10709760434",
  458. ["lucide-align-vertical-distribute-start"] = "rbxassetid://10709760612",
  459. ["lucide-align-vertical-justify-center"] = "rbxassetid://10709760814",
  460. ["lucide-align-vertical-justify-end"] = "rbxassetid://10709761003",
  461. ["lucide-align-vertical-justify-start"] = "rbxassetid://10709761176",
  462. ["lucide-align-vertical-space-around"] = "rbxassetid://10709761324",
  463. ["lucide-align-vertical-space-between"] = "rbxassetid://10709761434",
  464. ["lucide-anchor"] = "rbxassetid://10709761530",
  465. ["lucide-angry"] = "rbxassetid://10709761629",
  466. ["lucide-annoyed"] = "rbxassetid://10709761722",
  467. ["lucide-aperture"] = "rbxassetid://10709761813",
  468. ["lucide-apple"] = "rbxassetid://10709761889",
  469. ["lucide-archive"] = "rbxassetid://10709762233",
  470. ["lucide-archive-restore"] = "rbxassetid://10709762058",
  471. ["lucide-armchair"] = "rbxassetid://10709762327",
  472. ["lucide-arrow-big-down"] = "rbxassetid://10747796644",
  473. ["lucide-arrow-big-left"] = "rbxassetid://10709762574",
  474. ["lucide-arrow-big-right"] = "rbxassetid://10709762727",
  475. ["lucide-arrow-big-up"] = "rbxassetid://10709762879",
  476. ["lucide-arrow-down"] = "rbxassetid://10709767827",
  477. ["lucide-arrow-down-circle"] = "rbxassetid://10709763034",
  478. ["lucide-arrow-down-left"] = "rbxassetid://10709767656",
  479. ["lucide-arrow-down-right"] = "rbxassetid://10709767750",
  480. ["lucide-arrow-left"] = "rbxassetid://10709768114",
  481. ["lucide-arrow-left-circle"] = "rbxassetid://10709767936",
  482. ["lucide-arrow-left-right"] = "rbxassetid://10709768019",
  483. ["lucide-arrow-right"] = "rbxassetid://10709768347",
  484. ["lucide-arrow-right-circle"] = "rbxassetid://10709768226",
  485. ["lucide-arrow-up"] = "rbxassetid://10709768939",
  486. ["lucide-arrow-up-circle"] = "rbxassetid://10709768432",
  487. ["lucide-arrow-up-down"] = "rbxassetid://10709768538",
  488. ["lucide-arrow-up-left"] = "rbxassetid://10709768661",
  489. ["lucide-arrow-up-right"] = "rbxassetid://10709768787",
  490. ["lucide-asterisk"] = "rbxassetid://10709769095",
  491. ["lucide-at-sign"] = "rbxassetid://10709769286",
  492. ["lucide-award"] = "rbxassetid://10709769406",
  493. ["lucide-axe"] = "rbxassetid://10709769508",
  494. ["lucide-axis-3d"] = "rbxassetid://10709769598",
  495. ["lucide-baby"] = "rbxassetid://10709769732",
  496. ["lucide-backpack"] = "rbxassetid://10709769841",
  497. ["lucide-baggage-claim"] = "rbxassetid://10709769935",
  498. ["lucide-banana"] = "rbxassetid://10709770005",
  499. ["lucide-banknote"] = "rbxassetid://10709770178",
  500. ["lucide-bar-chart"] = "rbxassetid://10709773755",
  501. ["lucide-bar-chart-2"] = "rbxassetid://10709770317",
  502. ["lucide-bar-chart-3"] = "rbxassetid://10709770431",
  503. ["lucide-bar-chart-4"] = "rbxassetid://10709770560",
  504. ["lucide-bar-chart-horizontal"] = "rbxassetid://10709773669",
  505. ["lucide-barcode"] = "rbxassetid://10747360675",
  506. ["lucide-baseline"] = "rbxassetid://10709773863",
  507. ["lucide-bath"] = "rbxassetid://10709773963",
  508. ["lucide-battery"] = "rbxassetid://10709774640",
  509. ["lucide-battery-charging"] = "rbxassetid://10709774068",
  510. ["lucide-battery-full"] = "rbxassetid://10709774206",
  511. ["lucide-battery-low"] = "rbxassetid://10709774370",
  512. ["lucide-battery-medium"] = "rbxassetid://10709774513",
  513. ["lucide-beaker"] = "rbxassetid://10709774756",
  514. ["lucide-bed"] = "rbxassetid://10709775036",
  515. ["lucide-bed-double"] = "rbxassetid://10709774864",
  516. ["lucide-bed-single"] = "rbxassetid://10709774968",
  517. ["lucide-beer"] = "rbxassetid://10709775167",
  518. ["lucide-bell"] = "rbxassetid://10709775704",
  519. ["lucide-bell-minus"] = "rbxassetid://10709775241",
  520. ["lucide-bell-off"] = "rbxassetid://10709775320",
  521. ["lucide-bell-plus"] = "rbxassetid://10709775448",
  522. ["lucide-bell-ring"] = "rbxassetid://10709775560",
  523. ["lucide-bike"] = "rbxassetid://10709775894",
  524. ["lucide-binary"] = "rbxassetid://10709776050",
  525. ["lucide-bitcoin"] = "rbxassetid://10709776126",
  526. ["lucide-bluetooth"] = "rbxassetid://10709776655",
  527. ["lucide-bluetooth-connected"] = "rbxassetid://10709776240",
  528. ["lucide-bluetooth-off"] = "rbxassetid://10709776344",
  529. ["lucide-bluetooth-searching"] = "rbxassetid://10709776501",
  530. ["lucide-bold"] = "rbxassetid://10747813908",
  531. ["lucide-bomb"] = "rbxassetid://10709781460",
  532. ["lucide-bone"] = "rbxassetid://10709781605",
  533. ["lucide-book"] = "rbxassetid://10709781824",
  534. ["lucide-book-open"] = "rbxassetid://10709781717",
  535. ["lucide-bookmark"] = "rbxassetid://10709782154",
  536. ["lucide-bookmark-minus"] = "rbxassetid://10709781919",
  537. ["lucide-bookmark-plus"] = "rbxassetid://10709782044",
  538. ["lucide-bot"] = "rbxassetid://10709782230",
  539. ["lucide-box"] = "rbxassetid://10709782497",
  540. ["lucide-box-select"] = "rbxassetid://10709782342",
  541. ["lucide-boxes"] = "rbxassetid://10709782582",
  542. ["lucide-briefcase"] = "rbxassetid://10709782662",
  543. ["lucide-brush"] = "rbxassetid://10709782758",
  544. ["lucide-bug"] = "rbxassetid://10709782845",
  545. ["lucide-building"] = "rbxassetid://10709783051",
  546. ["lucide-building-2"] = "rbxassetid://10709782939",
  547. ["lucide-bus"] = "rbxassetid://10709783137",
  548. ["lucide-cake"] = "rbxassetid://10709783217",
  549. ["lucide-calculator"] = "rbxassetid://10709783311",
  550. ["lucide-calendar"] = "rbxassetid://10709789505",
  551. ["lucide-calendar-check"] = "rbxassetid://10709783474",
  552. ["lucide-calendar-check-2"] = "rbxassetid://10709783392",
  553. ["lucide-calendar-clock"] = "rbxassetid://10709783577",
  554. ["lucide-calendar-days"] = "rbxassetid://10709783673",
  555. ["lucide-calendar-heart"] = "rbxassetid://10709783835",
  556. ["lucide-calendar-minus"] = "rbxassetid://10709783959",
  557. ["lucide-calendar-off"] = "rbxassetid://10709788784",
  558. ["lucide-calendar-plus"] = "rbxassetid://10709788937",
  559. ["lucide-calendar-range"] = "rbxassetid://10709789053",
  560. ["lucide-calendar-search"] = "rbxassetid://10709789200",
  561. ["lucide-calendar-x"] = "rbxassetid://10709789407",
  562. ["lucide-calendar-x-2"] = "rbxassetid://10709789329",
  563. ["lucide-camera"] = "rbxassetid://10709789686",
  564. ["lucide-camera-off"] = "rbxassetid://10747822677",
  565. ["lucide-car"] = "rbxassetid://10709789810",
  566. ["lucide-carrot"] = "rbxassetid://10709789960",
  567. ["lucide-cast"] = "rbxassetid://10709790097",
  568. ["lucide-charge"] = "rbxassetid://10709790202",
  569. ["lucide-check"] = "rbxassetid://10709790644",
  570. ["lucide-check-circle"] = "rbxassetid://10709790387",
  571. ["lucide-check-circle-2"] = "rbxassetid://10709790298",
  572. ["lucide-check-square"] = "rbxassetid://10709790537",
  573. ["lucide-chef-hat"] = "rbxassetid://10709790757",
  574. ["lucide-cherry"] = "rbxassetid://10709790875",
  575. ["lucide-chevron-down"] = "rbxassetid://10709790948",
  576. ["lucide-chevron-first"] = "rbxassetid://10709791015",
  577. ["lucide-chevron-last"] = "rbxassetid://10709791130",
  578. ["lucide-chevron-left"] = "rbxassetid://10709791281",
  579. ["lucide-chevron-right"] = "rbxassetid://10709791437",
  580. ["lucide-chevron-up"] = "rbxassetid://10709791523",
  581. ["lucide-chevrons-down"] = "rbxassetid://10709796864",
  582. ["lucide-chevrons-down-up"] = "rbxassetid://10709791632",
  583. ["lucide-chevrons-left"] = "rbxassetid://10709797151",
  584. ["lucide-chevrons-left-right"] = "rbxassetid://10709797006",
  585. ["lucide-chevrons-right"] = "rbxassetid://10709797382",
  586. ["lucide-chevrons-right-left"] = "rbxassetid://10709797274",
  587. ["lucide-chevrons-up"] = "rbxassetid://10709797622",
  588. ["lucide-chevrons-up-down"] = "rbxassetid://10709797508",
  589. ["lucide-chrome"] = "rbxassetid://10709797725",
  590. ["lucide-circle"] = "rbxassetid://10709798174",
  591. ["lucide-circle-dot"] = "rbxassetid://10709797837",
  592. ["lucide-circle-ellipsis"] = "rbxassetid://10709797985",
  593. ["lucide-circle-slashed"] = "rbxassetid://10709798100",
  594. ["lucide-citrus"] = "rbxassetid://10709798276",
  595. ["lucide-clapperboard"] = "rbxassetid://10709798350",
  596. ["lucide-clipboard"] = "rbxassetid://10709799288",
  597. ["lucide-clipboard-check"] = "rbxassetid://10709798443",
  598. ["lucide-clipboard-copy"] = "rbxassetid://10709798574",
  599. ["lucide-clipboard-edit"] = "rbxassetid://10709798682",
  600. ["lucide-clipboard-list"] = "rbxassetid://10709798792",
  601. ["lucide-clipboard-signature"] = "rbxassetid://10709798890",
  602. ["lucide-clipboard-type"] = "rbxassetid://10709798999",
  603. ["lucide-clipboard-x"] = "rbxassetid://10709799124",
  604. ["lucide-clock"] = "rbxassetid://10709805144",
  605. ["lucide-clock-1"] = "rbxassetid://10709799535",
  606. ["lucide-clock-10"] = "rbxassetid://10709799718",
  607. ["lucide-clock-11"] = "rbxassetid://10709799818",
  608. ["lucide-clock-12"] = "rbxassetid://10709799962",
  609. ["lucide-clock-2"] = "rbxassetid://10709803876",
  610. ["lucide-clock-3"] = "rbxassetid://10709803989",
  611. ["lucide-clock-4"] = "rbxassetid://10709804164",
  612. ["lucide-clock-5"] = "rbxassetid://10709804291",
  613. ["lucide-clock-6"] = "rbxassetid://10709804435",
  614. ["lucide-clock-7"] = "rbxassetid://10709804599",
  615. ["lucide-clock-8"] = "rbxassetid://10709804784",
  616. ["lucide-clock-9"] = "rbxassetid://10709804996",
  617. ["lucide-cloud"] = "rbxassetid://10709806740",
  618. ["lucide-cloud-cog"] = "rbxassetid://10709805262",
  619. ["lucide-cloud-drizzle"] = "rbxassetid://10709805371",
  620. ["lucide-cloud-fog"] = "rbxassetid://10709805477",
  621. ["lucide-cloud-hail"] = "rbxassetid://10709805596",
  622. ["lucide-cloud-lightning"] = "rbxassetid://10709805727",
  623. ["lucide-cloud-moon"] = "rbxassetid://10709805942",
  624. ["lucide-cloud-moon-rain"] = "rbxassetid://10709805838",
  625. ["lucide-cloud-off"] = "rbxassetid://10709806060",
  626. ["lucide-cloud-rain"] = "rbxassetid://10709806277",
  627. ["lucide-cloud-rain-wind"] = "rbxassetid://10709806166",
  628. ["lucide-cloud-snow"] = "rbxassetid://10709806374",
  629. ["lucide-cloud-sun"] = "rbxassetid://10709806631",
  630. ["lucide-cloud-sun-rain"] = "rbxassetid://10709806475",
  631. ["lucide-cloudy"] = "rbxassetid://10709806859",
  632. ["lucide-clover"] = "rbxassetid://10709806995",
  633. ["lucide-code"] = "rbxassetid://10709810463",
  634. ["lucide-code-2"] = "rbxassetid://10709807111",
  635. ["lucide-codepen"] = "rbxassetid://10709810534",
  636. ["lucide-codesandbox"] = "rbxassetid://10709810676",
  637. ["lucide-coffee"] = "rbxassetid://10709810814",
  638. ["lucide-cog"] = "rbxassetid://10709810948",
  639. ["lucide-coins"] = "rbxassetid://10709811110",
  640. ["lucide-columns"] = "rbxassetid://10709811261",
  641. ["lucide-command"] = "rbxassetid://10709811365",
  642. ["lucide-compass"] = "rbxassetid://10709811445",
  643. ["lucide-component"] = "rbxassetid://10709811595",
  644. ["lucide-concierge-bell"] = "rbxassetid://10709811706",
  645. ["lucide-connection"] = "rbxassetid://10747361219",
  646. ["lucide-contact"] = "rbxassetid://10709811834",
  647. ["lucide-contrast"] = "rbxassetid://10709811939",
  648. ["lucide-cookie"] = "rbxassetid://10709812067",
  649. ["lucide-copy"] = "rbxassetid://10709812159",
  650. ["lucide-copyleft"] = "rbxassetid://10709812251",
  651. ["lucide-copyright"] = "rbxassetid://10709812311",
  652. ["lucide-corner-down-left"] = "rbxassetid://10709812396",
  653. ["lucide-corner-down-right"] = "rbxassetid://10709812485",
  654. ["lucide-corner-left-down"] = "rbxassetid://10709812632",
  655. ["lucide-corner-left-up"] = "rbxassetid://10709812784",
  656. ["lucide-corner-right-down"] = "rbxassetid://10709812939",
  657. ["lucide-corner-right-up"] = "rbxassetid://10709813094",
  658. ["lucide-corner-up-left"] = "rbxassetid://10709813185",
  659. ["lucide-corner-up-right"] = "rbxassetid://10709813281",
  660. ["lucide-cpu"] = "rbxassetid://10709813383",
  661. ["lucide-croissant"] = "rbxassetid://10709818125",
  662. ["lucide-crop"] = "rbxassetid://10709818245",
  663. ["lucide-cross"] = "rbxassetid://10709818399",
  664. ["lucide-crosshair"] = "rbxassetid://10709818534",
  665. ["lucide-crown"] = "rbxassetid://10709818626",
  666. ["lucide-cup-soda"] = "rbxassetid://10709818763",
  667. ["lucide-curly-braces"] = "rbxassetid://10709818847",
  668. ["lucide-currency"] = "rbxassetid://10709818931",
  669. ["lucide-database"] = "rbxassetid://10709818996",
  670. ["lucide-delete"] = "rbxassetid://10709819059",
  671. ["lucide-diamond"] = "rbxassetid://10709819149",
  672. ["lucide-dice-1"] = "rbxassetid://10709819266",
  673. ["lucide-dice-2"] = "rbxassetid://10709819361",
  674. ["lucide-dice-3"] = "rbxassetid://10709819508",
  675. ["lucide-dice-4"] = "rbxassetid://10709819670",
  676. ["lucide-dice-5"] = "rbxassetid://10709819801",
  677. ["lucide-dice-6"] = "rbxassetid://10709819896",
  678. ["lucide-dices"] = "rbxassetid://10723343321",
  679. ["lucide-diff"] = "rbxassetid://10723343416",
  680. ["lucide-disc"] = "rbxassetid://10723343537",
  681. ["lucide-divide"] = "rbxassetid://10723343805",
  682. ["lucide-divide-circle"] = "rbxassetid://10723343636",
  683. ["lucide-divide-square"] = "rbxassetid://10723343737",
  684. ["lucide-dollar-sign"] = "rbxassetid://10723343958",
  685. ["lucide-download"] = "rbxassetid://10723344270",
  686. ["lucide-download-cloud"] = "rbxassetid://10723344088",
  687. ["lucide-droplet"] = "rbxassetid://10723344432",
  688. ["lucide-droplets"] = "rbxassetid://10734883356",
  689. ["lucide-drumstick"] = "rbxassetid://10723344737",
  690. ["lucide-edit"] = "rbxassetid://10734883598",
  691. ["lucide-edit-2"] = "rbxassetid://10723344885",
  692. ["lucide-edit-3"] = "rbxassetid://10723345088",
  693. ["lucide-egg"] = "rbxassetid://10723345518",
  694. ["lucide-egg-fried"] = "rbxassetid://10723345347",
  695. ["lucide-electricity"] = "rbxassetid://10723345749",
  696. ["lucide-electricity-off"] = "rbxassetid://10723345643",
  697. ["lucide-equal"] = "rbxassetid://10723345990",
  698. ["lucide-equal-not"] = "rbxassetid://10723345866",
  699. ["lucide-eraser"] = "rbxassetid://10723346158",
  700. ["lucide-euro"] = "rbxassetid://10723346372",
  701. ["lucide-expand"] = "rbxassetid://10723346553",
  702. ["lucide-external-link"] = "rbxassetid://10723346684",
  703. ["lucide-eye"] = "rbxassetid://10723346959",
  704. ["lucide-eye-off"] = "rbxassetid://10723346871",
  705. ["lucide-factory"] = "rbxassetid://10723347051",
  706. ["lucide-fan"] = "rbxassetid://10723354359",
  707. ["lucide-fast-forward"] = "rbxassetid://10723354521",
  708. ["lucide-feather"] = "rbxassetid://10723354671",
  709. ["lucide-figma"] = "rbxassetid://10723354801",
  710. ["lucide-file"] = "rbxassetid://10723374641",
  711. ["lucide-file-archive"] = "rbxassetid://10723354921",
  712. ["lucide-file-audio"] = "rbxassetid://10723355148",
  713. ["lucide-file-audio-2"] = "rbxassetid://10723355026",
  714. ["lucide-file-axis-3d"] = "rbxassetid://10723355272",
  715. ["lucide-file-badge"] = "rbxassetid://10723355622",
  716. ["lucide-file-badge-2"] = "rbxassetid://10723355451",
  717. ["lucide-file-bar-chart"] = "rbxassetid://10723355887",
  718. ["lucide-file-bar-chart-2"] = "rbxassetid://10723355746",
  719. ["lucide-file-box"] = "rbxassetid://10723355989",
  720. ["lucide-file-check"] = "rbxassetid://10723356210",
  721. ["lucide-file-check-2"] = "rbxassetid://10723356100",
  722. ["lucide-file-clock"] = "rbxassetid://10723356329",
  723. ["lucide-file-code"] = "rbxassetid://10723356507",
  724. ["lucide-file-cog"] = "rbxassetid://10723356830",
  725. ["lucide-file-cog-2"] = "rbxassetid://10723356676",
  726. ["lucide-file-diff"] = "rbxassetid://10723357039",
  727. ["lucide-file-digit"] = "rbxassetid://10723357151",
  728. ["lucide-file-down"] = "rbxassetid://10723357322",
  729. ["lucide-file-edit"] = "rbxassetid://10723357495",
  730. ["lucide-file-heart"] = "rbxassetid://10723357637",
  731. ["lucide-file-image"] = "rbxassetid://10723357790",
  732. ["lucide-file-input"] = "rbxassetid://10723357933",
  733. ["lucide-file-json"] = "rbxassetid://10723364435",
  734. ["lucide-file-json-2"] = "rbxassetid://10723364361",
  735. ["lucide-file-key"] = "rbxassetid://10723364605",
  736. ["lucide-file-key-2"] = "rbxassetid://10723364515",
  737. ["lucide-file-line-chart"] = "rbxassetid://10723364725",
  738. ["lucide-file-lock"] = "rbxassetid://10723364957",
  739. ["lucide-file-lock-2"] = "rbxassetid://10723364861",
  740. ["lucide-file-minus"] = "rbxassetid://10723365254",
  741. ["lucide-file-minus-2"] = "rbxassetid://10723365086",
  742. ["lucide-file-output"] = "rbxassetid://10723365457",
  743. ["lucide-file-pie-chart"] = "rbxassetid://10723365598",
  744. ["lucide-file-plus"] = "rbxassetid://10723365877",
  745. ["lucide-file-plus-2"] = "rbxassetid://10723365766",
  746. ["lucide-file-question"] = "rbxassetid://10723365987",
  747. ["lucide-file-scan"] = "rbxassetid://10723366167",
  748. ["lucide-file-search"] = "rbxassetid://10723366550",
  749. ["lucide-file-search-2"] = "rbxassetid://10723366340",
  750. ["lucide-file-signature"] = "rbxassetid://10723366741",
  751. ["lucide-file-spreadsheet"] = "rbxassetid://10723366962",
  752. ["lucide-file-symlink"] = "rbxassetid://10723367098",
  753. ["lucide-file-terminal"] = "rbxassetid://10723367244",
  754. ["lucide-file-text"] = "rbxassetid://10723367380",
  755. ["lucide-file-type"] = "rbxassetid://10723367606",
  756. ["lucide-file-type-2"] = "rbxassetid://10723367509",
  757. ["lucide-file-up"] = "rbxassetid://10723367734",
  758. ["lucide-file-video"] = "rbxassetid://10723373884",
  759. ["lucide-file-video-2"] = "rbxassetid://10723367834",
  760. ["lucide-file-volume"] = "rbxassetid://10723374172",
  761. ["lucide-file-volume-2"] = "rbxassetid://10723374030",
  762. ["lucide-file-warning"] = "rbxassetid://10723374276",
  763. ["lucide-file-x"] = "rbxassetid://10723374544",
  764. ["lucide-file-x-2"] = "rbxassetid://10723374378",
  765. ["lucide-files"] = "rbxassetid://10723374759",
  766. ["lucide-film"] = "rbxassetid://10723374981",
  767. ["lucide-filter"] = "rbxassetid://10723375128",
  768. ["lucide-fingerprint"] = "rbxassetid://10723375250",
  769. ["lucide-flag"] = "rbxassetid://10723375890",
  770. ["lucide-flag-off"] = "rbxassetid://10723375443",
  771. ["lucide-flag-triangle-left"] = "rbxassetid://10723375608",
  772. ["lucide-flag-triangle-right"] = "rbxassetid://10723375727",
  773. ["lucide-flame"] = "rbxassetid://10723376114",
  774. ["lucide-flashlight"] = "rbxassetid://10723376471",
  775. ["lucide-flashlight-off"] = "rbxassetid://10723376365",
  776. ["lucide-flask-conical"] = "rbxassetid://10734883986",
  777. ["lucide-flask-round"] = "rbxassetid://10723376614",
  778. ["lucide-flip-horizontal"] = "rbxassetid://10723376884",
  779. ["lucide-flip-horizontal-2"] = "rbxassetid://10723376745",
  780. ["lucide-flip-vertical"] = "rbxassetid://10723377138",
  781. ["lucide-flip-vertical-2"] = "rbxassetid://10723377026",
  782. ["lucide-flower"] = "rbxassetid://10747830374",
  783. ["lucide-flower-2"] = "rbxassetid://10723377305",
  784. ["lucide-focus"] = "rbxassetid://10723377537",
  785. ["lucide-folder"] = "rbxassetid://10723387563",
  786. ["lucide-folder-archive"] = "rbxassetid://10723384478",
  787. ["lucide-folder-check"] = "rbxassetid://10723384605",
  788. ["lucide-folder-clock"] = "rbxassetid://10723384731",
  789. ["lucide-folder-closed"] = "rbxassetid://10723384893",
  790. ["lucide-folder-cog"] = "rbxassetid://10723385213",
  791. ["lucide-folder-cog-2"] = "rbxassetid://10723385036",
  792. ["lucide-folder-down"] = "rbxassetid://10723385338",
  793. ["lucide-folder-edit"] = "rbxassetid://10723385445",
  794. ["lucide-folder-heart"] = "rbxassetid://10723385545",
  795. ["lucide-folder-input"] = "rbxassetid://10723385721",
  796. ["lucide-folder-key"] = "rbxassetid://10723385848",
  797. ["lucide-folder-lock"] = "rbxassetid://10723386005",
  798. ["lucide-folder-minus"] = "rbxassetid://10723386127",
  799. ["lucide-folder-open"] = "rbxassetid://10723386277",
  800. ["lucide-folder-output"] = "rbxassetid://10723386386",
  801. ["lucide-folder-plus"] = "rbxassetid://10723386531",
  802. ["lucide-folder-search"] = "rbxassetid://10723386787",
  803. ["lucide-folder-search-2"] = "rbxassetid://10723386674",
  804. ["lucide-folder-symlink"] = "rbxassetid://10723386930",
  805. ["lucide-folder-tree"] = "rbxassetid://10723387085",
  806. ["lucide-folder-up"] = "rbxassetid://10723387265",
  807. ["lucide-folder-x"] = "rbxassetid://10723387448",
  808. ["lucide-folders"] = "rbxassetid://10723387721",
  809. ["lucide-form-input"] = "rbxassetid://10723387841",
  810. ["lucide-forward"] = "rbxassetid://10723388016",
  811. ["lucide-frame"] = "rbxassetid://10723394389",
  812. ["lucide-framer"] = "rbxassetid://10723394565",
  813. ["lucide-frown"] = "rbxassetid://10723394681",
  814. ["lucide-fuel"] = "rbxassetid://10723394846",
  815. ["lucide-function-square"] = "rbxassetid://10723395041",
  816. ["lucide-gamepad"] = "rbxassetid://10723395457",
  817. ["lucide-gamepad-2"] = "rbxassetid://10723395215",
  818. ["lucide-gauge"] = "rbxassetid://10723395708",
  819. ["lucide-gavel"] = "rbxassetid://10723395896",
  820. ["lucide-gem"] = "rbxassetid://10723396000",
  821. ["lucide-ghost"] = "rbxassetid://10723396107",
  822. ["lucide-gift"] = "rbxassetid://10723396402",
  823. ["lucide-gift-card"] = "rbxassetid://10723396225",
  824. ["lucide-git-branch"] = "rbxassetid://10723396676",
  825. ["lucide-git-branch-plus"] = "rbxassetid://10723396542",
  826. ["lucide-git-commit"] = "rbxassetid://10723396812",
  827. ["lucide-git-compare"] = "rbxassetid://10723396954",
  828. ["lucide-git-fork"] = "rbxassetid://10723397049",
  829. ["lucide-git-merge"] = "rbxassetid://10723397165",
  830. ["lucide-git-pull-request"] = "rbxassetid://10723397431",
  831. ["lucide-git-pull-request-closed"] = "rbxassetid://10723397268",
  832. ["lucide-git-pull-request-draft"] = "rbxassetid://10734884302",
  833. ["lucide-glass"] = "rbxassetid://10723397788",
  834. ["lucide-glass-2"] = "rbxassetid://10723397529",
  835. ["lucide-glass-water"] = "rbxassetid://10723397678",
  836. ["lucide-glasses"] = "rbxassetid://10723397895",
  837. ["lucide-globe"] = "rbxassetid://10723404337",
  838. ["lucide-globe-2"] = "rbxassetid://10723398002",
  839. ["lucide-grab"] = "rbxassetid://10723404472",
  840. ["lucide-graduation-cap"] = "rbxassetid://10723404691",
  841. ["lucide-grape"] = "rbxassetid://10723404822",
  842. ["lucide-grid"] = "rbxassetid://10723404936",
  843. ["lucide-grip-horizontal"] = "rbxassetid://10723405089",
  844. ["lucide-grip-vertical"] = "rbxassetid://10723405236",
  845. ["lucide-hammer"] = "rbxassetid://10723405360",
  846. ["lucide-hand"] = "rbxassetid://10723405649",
  847. ["lucide-hand-metal"] = "rbxassetid://10723405508",
  848. ["lucide-hard-drive"] = "rbxassetid://10723405749",
  849. ["lucide-hard-hat"] = "rbxassetid://10723405859",
  850. ["lucide-hash"] = "rbxassetid://10723405975",
  851. ["lucide-haze"] = "rbxassetid://10723406078",
  852. ["lucide-headphones"] = "rbxassetid://10723406165",
  853. ["lucide-heart"] = "rbxassetid://10723406885",
  854. ["lucide-heart-crack"] = "rbxassetid://10723406299",
  855. ["lucide-heart-handshake"] = "rbxassetid://10723406480",
  856. ["lucide-heart-off"] = "rbxassetid://10723406662",
  857. ["lucide-heart-pulse"] = "rbxassetid://10723406795",
  858. ["lucide-help-circle"] = "rbxassetid://10723406988",
  859. ["lucide-hexagon"] = "rbxassetid://10723407092",
  860. ["lucide-highlighter"] = "rbxassetid://10723407192",
  861. ["lucide-history"] = "rbxassetid://10723407335",
  862. ["lucide-home"] = "rbxassetid://10723407389",
  863. ["lucide-hourglass"] = "rbxassetid://10723407498",
  864. ["lucide-ice-cream"] = "rbxassetid://10723414308",
  865. ["lucide-image"] = "rbxassetid://10723415040",
  866. ["lucide-image-minus"] = "rbxassetid://10723414487",
  867. ["lucide-image-off"] = "rbxassetid://10723414677",
  868. ["lucide-image-plus"] = "rbxassetid://10723414827",
  869. ["lucide-import"] = "rbxassetid://10723415205",
  870. ["lucide-inbox"] = "rbxassetid://10723415335",
  871. ["lucide-indent"] = "rbxassetid://10723415494",
  872. ["lucide-indian-rupee"] = "rbxassetid://10723415642",
  873. ["lucide-infinity"] = "rbxassetid://10723415766",
  874. ["lucide-info"] = "rbxassetid://10723415903",
  875. ["lucide-inspect"] = "rbxassetid://10723416057",
  876. ["lucide-italic"] = "rbxassetid://10723416195",
  877. ["lucide-japanese-yen"] = "rbxassetid://10723416363",
  878. ["lucide-joystick"] = "rbxassetid://10723416527",
  879. ["lucide-key"] = "rbxassetid://10723416652",
  880. ["lucide-keyboard"] = "rbxassetid://10723416765",
  881. ["lucide-lamp"] = "rbxassetid://10723417513",
  882. ["lucide-lamp-ceiling"] = "rbxassetid://10723416922",
  883. ["lucide-lamp-desk"] = "rbxassetid://10723417016",
  884. ["lucide-lamp-floor"] = "rbxassetid://10723417131",
  885. ["lucide-lamp-wall-down"] = "rbxassetid://10723417240",
  886. ["lucide-lamp-wall-up"] = "rbxassetid://10723417356",
  887. ["lucide-landmark"] = "rbxassetid://10723417608",
  888. ["lucide-languages"] = "rbxassetid://10723417703",
  889. ["lucide-laptop"] = "rbxassetid://10723423881",
  890. ["lucide-laptop-2"] = "rbxassetid://10723417797",
  891. ["lucide-lasso"] = "rbxassetid://10723424235",
  892. ["lucide-lasso-select"] = "rbxassetid://10723424058",
  893. ["lucide-laugh"] = "rbxassetid://10723424372",
  894. ["lucide-layers"] = "rbxassetid://10723424505",
  895. ["lucide-layout"] = "rbxassetid://10723425376",
  896. ["lucide-layout-dashboard"] = "rbxassetid://10723424646",
  897. ["lucide-layout-grid"] = "rbxassetid://10723424838",
  898. ["lucide-layout-list"] = "rbxassetid://10723424963",
  899. ["lucide-layout-template"] = "rbxassetid://10723425187",
  900. ["lucide-leaf"] = "rbxassetid://10723425539",
  901. ["lucide-library"] = "rbxassetid://10723425615",
  902. ["lucide-life-buoy"] = "rbxassetid://10723425685",
  903. ["lucide-lightbulb"] = "rbxassetid://10723425852",
  904. ["lucide-lightbulb-off"] = "rbxassetid://10723425762",
  905. ["lucide-line-chart"] = "rbxassetid://10723426393",
  906. ["lucide-link"] = "rbxassetid://10723426722",
  907. ["lucide-link-2"] = "rbxassetid://10723426595",
  908. ["lucide-link-2-off"] = "rbxassetid://10723426513",
  909. ["lucide-list"] = "rbxassetid://10723433811",
  910. ["lucide-list-checks"] = "rbxassetid://10734884548",
  911. ["lucide-list-end"] = "rbxassetid://10723426886",
  912. ["lucide-list-minus"] = "rbxassetid://10723426986",
  913. ["lucide-list-music"] = "rbxassetid://10723427081",
  914. ["lucide-list-ordered"] = "rbxassetid://10723427199",
  915. ["lucide-list-plus"] = "rbxassetid://10723427334",
  916. ["lucide-list-start"] = "rbxassetid://10723427494",
  917. ["lucide-list-video"] = "rbxassetid://10723427619",
  918. ["lucide-list-x"] = "rbxassetid://10723433655",
  919. ["lucide-loader"] = "rbxassetid://10723434070",
  920. ["lucide-loader-2"] = "rbxassetid://10723433935",
  921. ["lucide-locate"] = "rbxassetid://10723434557",
  922. ["lucide-locate-fixed"] = "rbxassetid://10723434236",
  923. ["lucide-locate-off"] = "rbxassetid://10723434379",
  924. ["lucide-lock"] = "rbxassetid://10723434711",
  925. ["lucide-log-in"] = "rbxassetid://10723434830",
  926. ["lucide-log-out"] = "rbxassetid://10723434906",
  927. ["lucide-luggage"] = "rbxassetid://10723434993",
  928. ["lucide-magnet"] = "rbxassetid://10723435069",
  929. ["lucide-mail"] = "rbxassetid://10734885430",
  930. ["lucide-mail-check"] = "rbxassetid://10723435182",
  931. ["lucide-mail-minus"] = "rbxassetid://10723435261",
  932. ["lucide-mail-open"] = "rbxassetid://10723435342",
  933. ["lucide-mail-plus"] = "rbxassetid://10723435443",
  934. ["lucide-mail-question"] = "rbxassetid://10723435515",
  935. ["lucide-mail-search"] = "rbxassetid://10734884739",
  936. ["lucide-mail-warning"] = "rbxassetid://10734885015",
  937. ["lucide-mail-x"] = "rbxassetid://10734885247",
  938. ["lucide-mails"] = "rbxassetid://10734885614",
  939. ["lucide-map"] = "rbxassetid://10734886202",
  940. ["lucide-map-pin"] = "rbxassetid://10734886004",
  941. ["lucide-map-pin-off"] = "rbxassetid://10734885803",
  942. ["lucide-maximize"] = "rbxassetid://10734886735",
  943. ["lucide-maximize-2"] = "rbxassetid://10734886496",
  944. ["lucide-medal"] = "rbxassetid://10734887072",
  945. ["lucide-megaphone"] = "rbxassetid://10734887454",
  946. ["lucide-megaphone-off"] = "rbxassetid://10734887311",
  947. ["lucide-meh"] = "rbxassetid://10734887603",
  948. ["lucide-menu"] = "rbxassetid://10734887784",
  949. ["lucide-message-circle"] = "rbxassetid://10734888000",
  950. ["lucide-message-square"] = "rbxassetid://10734888228",
  951. ["lucide-mic"] = "rbxassetid://10734888864",
  952. ["lucide-mic-2"] = "rbxassetid://10734888430",
  953. ["lucide-mic-off"] = "rbxassetid://10734888646",
  954. ["lucide-microscope"] = "rbxassetid://10734889106",
  955. ["lucide-microwave"] = "rbxassetid://10734895076",
  956. ["lucide-milestone"] = "rbxassetid://10734895310",
  957. ["lucide-minimize"] = "rbxassetid://10734895698",
  958. ["lucide-minimize-2"] = "rbxassetid://10734895530",
  959. ["lucide-minus"] = "rbxassetid://10734896206",
  960. ["lucide-minus-circle"] = "rbxassetid://10734895856",
  961. ["lucide-minus-square"] = "rbxassetid://10734896029",
  962. ["lucide-monitor"] = "rbxassetid://10734896881",
  963. ["lucide-monitor-off"] = "rbxassetid://10734896360",
  964. ["lucide-monitor-speaker"] = "rbxassetid://10734896512",
  965. ["lucide-moon"] = "rbxassetid://10734897102",
  966. ["lucide-more-horizontal"] = "rbxassetid://10734897250",
  967. ["lucide-more-vertical"] = "rbxassetid://10734897387",
  968. ["lucide-mountain"] = "rbxassetid://10734897956",
  969. ["lucide-mountain-snow"] = "rbxassetid://10734897665",
  970. ["lucide-mouse"] = "rbxassetid://10734898592",
  971. ["lucide-mouse-pointer"] = "rbxassetid://10734898476",
  972. ["lucide-mouse-pointer-2"] = "rbxassetid://10734898194",
  973. ["lucide-mouse-pointer-click"] = "rbxassetid://10734898355",
  974. ["lucide-move"] = "rbxassetid://10734900011",
  975. ["lucide-move-3d"] = "rbxassetid://10734898756",
  976. ["lucide-move-diagonal"] = "rbxassetid://10734899164",
  977. ["lucide-move-diagonal-2"] = "rbxassetid://10734898934",
  978. ["lucide-move-horizontal"] = "rbxassetid://10734899414",
  979. ["lucide-move-vertical"] = "rbxassetid://10734899821",
  980. ["lucide-music"] = "rbxassetid://10734905958",
  981. ["lucide-music-2"] = "rbxassetid://10734900215",
  982. ["lucide-music-3"] = "rbxassetid://10734905665",
  983. ["lucide-music-4"] = "rbxassetid://10734905823",
  984. ["lucide-navigation"] = "rbxassetid://10734906744",
  985. ["lucide-navigation-2"] = "rbxassetid://10734906332",
  986. ["lucide-navigation-2-off"] = "rbxassetid://10734906144",
  987. ["lucide-navigation-off"] = "rbxassetid://10734906580",
  988. ["lucide-network"] = "rbxassetid://10734906975",
  989. ["lucide-newspaper"] = "rbxassetid://10734907168",
  990. ["lucide-octagon"] = "rbxassetid://10734907361",
  991. ["lucide-option"] = "rbxassetid://10734907649",
  992. ["lucide-outdent"] = "rbxassetid://10734907933",
  993. ["lucide-package"] = "rbxassetid://10734909540",
  994. ["lucide-package-2"] = "rbxassetid://10734908151",
  995. ["lucide-package-check"] = "rbxassetid://10734908384",
  996. ["lucide-package-minus"] = "rbxassetid://10734908626",
  997. ["lucide-package-open"] = "rbxassetid://10734908793",
  998. ["lucide-package-plus"] = "rbxassetid://10734909016",
  999. ["lucide-package-search"] = "rbxassetid://10734909196",
  1000. ["lucide-package-x"] = "rbxassetid://10734909375",
  1001. ["lucide-paint-bucket"] = "rbxassetid://10734909847",
  1002. ["lucide-paintbrush"] = "rbxassetid://10734910187",
  1003. ["lucide-paintbrush-2"] = "rbxassetid://10734910030",
  1004. ["lucide-palette"] = "rbxassetid://10734910430",
  1005. ["lucide-palmtree"] = "rbxassetid://10734910680",
  1006. ["lucide-paperclip"] = "rbxassetid://10734910927",
  1007. ["lucide-party-popper"] = "rbxassetid://10734918735",
  1008. ["lucide-pause"] = "rbxassetid://10734919336",
  1009. ["lucide-pause-circle"] = "rbxassetid://10735024209",
  1010. ["lucide-pause-octagon"] = "rbxassetid://10734919143",
  1011. ["lucide-pen-tool"] = "rbxassetid://10734919503",
  1012. ["lucide-pencil"] = "rbxassetid://10734919691",
  1013. ["lucide-percent"] = "rbxassetid://10734919919",
  1014. ["lucide-person-standing"] = "rbxassetid://10734920149",
  1015. ["lucide-phone"] = "rbxassetid://10734921524",
  1016. ["lucide-phone-call"] = "rbxassetid://10734920305",
  1017. ["lucide-phone-forwarded"] = "rbxassetid://10734920508",
  1018. ["lucide-phone-incoming"] = "rbxassetid://10734920694",
  1019. ["lucide-phone-missed"] = "rbxassetid://10734920845",
  1020. ["lucide-phone-off"] = "rbxassetid://10734921077",
  1021. ["lucide-phone-outgoing"] = "rbxassetid://10734921288",
  1022. ["lucide-pie-chart"] = "rbxassetid://10734921727",
  1023. ["lucide-piggy-bank"] = "rbxassetid://10734921935",
  1024. ["lucide-pin"] = "rbxassetid://10734922324",
  1025. ["lucide-pin-off"] = "rbxassetid://10734922180",
  1026. ["lucide-pipette"] = "rbxassetid://10734922497",
  1027. ["lucide-pizza"] = "rbxassetid://10734922774",
  1028. ["lucide-plane"] = "rbxassetid://10734922971",
  1029. ["lucide-play"] = "rbxassetid://10734923549",
  1030. ["lucide-play-circle"] = "rbxassetid://10734923214",
  1031. ["lucide-plus"] = "rbxassetid://10734924532",
  1032. ["lucide-plus-circle"] = "rbxassetid://10734923868",
  1033. ["lucide-plus-square"] = "rbxassetid://10734924219",
  1034. ["lucide-podcast"] = "rbxassetid://10734929553",
  1035. ["lucide-pointer"] = "rbxassetid://10734929723",
  1036. ["lucide-pound-sterling"] = "rbxassetid://10734929981",
  1037. ["lucide-power"] = "rbxassetid://10734930466",
  1038. ["lucide-power-off"] = "rbxassetid://10734930257",
  1039. ["lucide-printer"] = "rbxassetid://10734930632",
  1040. ["lucide-puzzle"] = "rbxassetid://10734930886",
  1041. ["lucide-quote"] = "rbxassetid://10734931234",
  1042. ["lucide-radio"] = "rbxassetid://10734931596",
  1043. ["lucide-radio-receiver"] = "rbxassetid://10734931402",
  1044. ["lucide-rectangle-horizontal"] = "rbxassetid://10734931777",
  1045. ["lucide-rectangle-vertical"] = "rbxassetid://10734932081",
  1046. ["lucide-recycle"] = "rbxassetid://10734932295",
  1047. ["lucide-redo"] = "rbxassetid://10734932822",
  1048. ["lucide-redo-2"] = "rbxassetid://10734932586",
  1049. ["lucide-refresh-ccw"] = "rbxassetid://10734933056",
  1050. ["lucide-refresh-cw"] = "rbxassetid://10734933222",
  1051. ["lucide-refrigerator"] = "rbxassetid://10734933465",
  1052. ["lucide-regex"] = "rbxassetid://10734933655",
  1053. ["lucide-repeat"] = "rbxassetid://10734933966",
  1054. ["lucide-repeat-1"] = "rbxassetid://10734933826",
  1055. ["lucide-reply"] = "rbxassetid://10734934252",
  1056. ["lucide-reply-all"] = "rbxassetid://10734934132",
  1057. ["lucide-rewind"] = "rbxassetid://10734934347",
  1058. ["lucide-rocket"] = "rbxassetid://10734934585",
  1059. ["lucide-rocking-chair"] = "rbxassetid://10734939942",
  1060. ["lucide-rotate-3d"] = "rbxassetid://10734940107",
  1061. ["lucide-rotate-ccw"] = "rbxassetid://10734940376",
  1062. ["lucide-rotate-cw"] = "rbxassetid://10734940654",
  1063. ["lucide-rss"] = "rbxassetid://10734940825",
  1064. ["lucide-ruler"] = "rbxassetid://10734941018",
  1065. ["lucide-russian-ruble"] = "rbxassetid://10734941199",
  1066. ["lucide-sailboat"] = "rbxassetid://10734941354",
  1067. ["lucide-save"] = "rbxassetid://10734941499",
  1068. ["lucide-scale"] = "rbxassetid://10734941912",
  1069. ["lucide-scale-3d"] = "rbxassetid://10734941739",
  1070. ["lucide-scaling"] = "rbxassetid://10734942072",
  1071. ["lucide-scan"] = "rbxassetid://10734942565",
  1072. ["lucide-scan-face"] = "rbxassetid://10734942198",
  1073. ["lucide-scan-line"] = "rbxassetid://10734942351",
  1074. ["lucide-scissors"] = "rbxassetid://10734942778",
  1075. ["lucide-screen-share"] = "rbxassetid://10734943193",
  1076. ["lucide-screen-share-off"] = "rbxassetid://10734942967",
  1077. ["lucide-scroll"] = "rbxassetid://10734943448",
  1078. ["lucide-search"] = "rbxassetid://10734943674",
  1079. ["lucide-send"] = "rbxassetid://10734943902",
  1080. ["lucide-separator-horizontal"] = "rbxassetid://10734944115",
  1081. ["lucide-separator-vertical"] = "rbxassetid://10734944326",
  1082. ["lucide-server"] = "rbxassetid://10734949856",
  1083. ["lucide-server-cog"] = "rbxassetid://10734944444",
  1084. ["lucide-server-crash"] = "rbxassetid://10734944554",
  1085. ["lucide-server-off"] = "rbxassetid://10734944668",
  1086. ["lucide-settings"] = "rbxassetid://10734950309",
  1087. ["lucide-settings-2"] = "rbxassetid://10734950020",
  1088. ["lucide-share"] = "rbxassetid://10734950813",
  1089. ["lucide-share-2"] = "rbxassetid://10734950553",
  1090. ["lucide-sheet"] = "rbxassetid://10734951038",
  1091. ["lucide-shield"] = "rbxassetid://10734951847",
  1092. ["lucide-shield-alert"] = "rbxassetid://10734951173",
  1093. ["lucide-shield-check"] = "rbxassetid://10734951367",
  1094. ["lucide-shield-close"] = "rbxassetid://10734951535",
  1095. ["lucide-shield-off"] = "rbxassetid://10734951684",
  1096. ["lucide-shirt"] = "rbxassetid://10734952036",
  1097. ["lucide-shopping-bag"] = "rbxassetid://10734952273",
  1098. ["lucide-shopping-cart"] = "rbxassetid://10734952479",
  1099. ["lucide-shovel"] = "rbxassetid://10734952773",
  1100. ["lucide-shower-head"] = "rbxassetid://10734952942",
  1101. ["lucide-shrink"] = "rbxassetid://10734953073",
  1102. ["lucide-shrub"] = "rbxassetid://10734953241",
  1103. ["lucide-shuffle"] = "rbxassetid://10734953451",
  1104. ["lucide-sidebar"] = "rbxassetid://10734954301",
  1105. ["lucide-sidebar-close"] = "rbxassetid://10734953715",
  1106. ["lucide-sidebar-open"] = "rbxassetid://10734954000",
  1107. ["lucide-sigma"] = "rbxassetid://10734954538",
  1108. ["lucide-signal"] = "rbxassetid://10734961133",
  1109. ["lucide-signal-high"] = "rbxassetid://10734954807",
  1110. ["lucide-signal-low"] = "rbxassetid://10734955080",
  1111. ["lucide-signal-medium"] = "rbxassetid://10734955336",
  1112. ["lucide-signal-zero"] = "rbxassetid://10734960878",
  1113. ["lucide-siren"] = "rbxassetid://10734961284",
  1114. ["lucide-skip-back"] = "rbxassetid://10734961526",
  1115. ["lucide-skip-forward"] = "rbxassetid://10734961809",
  1116. ["lucide-skull"] = "rbxassetid://10734962068",
  1117. ["lucide-slack"] = "rbxassetid://10734962339",
  1118. ["lucide-slash"] = "rbxassetid://10734962600",
  1119. ["lucide-slice"] = "rbxassetid://10734963024",
  1120. ["lucide-sliders"] = "rbxassetid://10734963400",
  1121. ["lucide-sliders-horizontal"] = "rbxassetid://10734963191",
  1122. ["lucide-smartphone"] = "rbxassetid://10734963940",
  1123. ["lucide-smartphone-charging"] = "rbxassetid://10734963671",
  1124. ["lucide-smile"] = "rbxassetid://10734964441",
  1125. ["lucide-smile-plus"] = "rbxassetid://10734964188",
  1126. ["lucide-snowflake"] = "rbxassetid://10734964600",
  1127. ["lucide-sofa"] = "rbxassetid://10734964852",
  1128. ["lucide-sort-asc"] = "rbxassetid://10734965115",
  1129. ["lucide-sort-desc"] = "rbxassetid://10734965287",
  1130. ["lucide-speaker"] = "rbxassetid://10734965419",
  1131. ["lucide-sprout"] = "rbxassetid://10734965572",
  1132. ["lucide-square"] = "rbxassetid://10734965702",
  1133. ["lucide-star"] = "rbxassetid://10734966248",
  1134. ["lucide-star-half"] = "rbxassetid://10734965897",
  1135. ["lucide-star-off"] = "rbxassetid://10734966097",
  1136. ["lucide-stethoscope"] = "rbxassetid://10734966384",
  1137. ["lucide-sticker"] = "rbxassetid://10734972234",
  1138. ["lucide-sticky-note"] = "rbxassetid://10734972463",
  1139. ["lucide-stop-circle"] = "rbxassetid://10734972621",
  1140. ["lucide-stretch-horizontal"] = "rbxassetid://10734972862",
  1141. ["lucide-stretch-vertical"] = "rbxassetid://10734973130",
  1142. ["lucide-strikethrough"] = "rbxassetid://10734973290",
  1143. ["lucide-subscript"] = "rbxassetid://10734973457",
  1144. ["lucide-sun"] = "rbxassetid://10734974297",
  1145. ["lucide-sun-dim"] = "rbxassetid://10734973645",
  1146. ["lucide-sun-medium"] = "rbxassetid://10734973778",
  1147. ["lucide-sun-moon"] = "rbxassetid://10734973999",
  1148. ["lucide-sun-snow"] = "rbxassetid://10734974130",
  1149. ["lucide-sunrise"] = "rbxassetid://10734974522",
  1150. ["lucide-sunset"] = "rbxassetid://10734974689",
  1151. ["lucide-superscript"] = "rbxassetid://10734974850",
  1152. ["lucide-swiss-franc"] = "rbxassetid://10734975024",
  1153. ["lucide-switch-camera"] = "rbxassetid://10734975214",
  1154. ["lucide-sword"] = "rbxassetid://10734975486",
  1155. ["lucide-swords"] = "rbxassetid://10734975692",
  1156. ["lucide-syringe"] = "rbxassetid://10734975932",
  1157. ["lucide-table"] = "rbxassetid://10734976230",
  1158. ["lucide-table-2"] = "rbxassetid://10734976097",
  1159. ["lucide-tablet"] = "rbxassetid://10734976394",
  1160. ["lucide-tag"] = "rbxassetid://10734976528",
  1161. ["lucide-tags"] = "rbxassetid://10734976739",
  1162. ["lucide-target"] = "rbxassetid://10734977012",
  1163. ["lucide-tent"] = "rbxassetid://10734981750",
  1164. ["lucide-terminal"] = "rbxassetid://10734982144",
  1165. ["lucide-terminal-square"] = "rbxassetid://10734981995",
  1166. ["lucide-text-cursor"] = "rbxassetid://10734982395",
  1167. ["lucide-text-cursor-input"] = "rbxassetid://10734982297",
  1168. ["lucide-thermometer"] = "rbxassetid://10734983134",
  1169. ["lucide-thermometer-snowflake"] = "rbxassetid://10734982571",
  1170. ["lucide-thermometer-sun"] = "rbxassetid://10734982771",
  1171. ["lucide-thumbs-down"] = "rbxassetid://10734983359",
  1172. ["lucide-thumbs-up"] = "rbxassetid://10734983629",
  1173. ["lucide-ticket"] = "rbxassetid://10734983868",
  1174. ["lucide-timer"] = "rbxassetid://10734984606",
  1175. ["lucide-timer-off"] = "rbxassetid://10734984138",
  1176. ["lucide-timer-reset"] = "rbxassetid://10734984355",
  1177. ["lucide-toggle-left"] = "rbxassetid://10734984834",
  1178. ["lucide-toggle-right"] = "rbxassetid://10734985040",
  1179. ["lucide-tornado"] = "rbxassetid://10734985247",
  1180. ["lucide-toy-brick"] = "rbxassetid://10747361919",
  1181. ["lucide-train"] = "rbxassetid://10747362105",
  1182. ["lucide-trash"] = "rbxassetid://10747362393",
  1183. ["lucide-trash-2"] = "rbxassetid://10747362241",
  1184. ["lucide-tree-deciduous"] = "rbxassetid://10747362534",
  1185. ["lucide-tree-pine"] = "rbxassetid://10747362748",
  1186. ["lucide-trees"] = "rbxassetid://10747363016",
  1187. ["lucide-trending-down"] = "rbxassetid://10747363205",
  1188. ["lucide-trending-up"] = "rbxassetid://10747363465",
  1189. ["lucide-triangle"] = "rbxassetid://10747363621",
  1190. ["lucide-trophy"] = "rbxassetid://10747363809",
  1191. ["lucide-truck"] = "rbxassetid://10747364031",
  1192. ["lucide-tv"] = "rbxassetid://10747364593",
  1193. ["lucide-tv-2"] = "rbxassetid://10747364302",
  1194. ["lucide-type"] = "rbxassetid://10747364761",
  1195. ["lucide-umbrella"] = "rbxassetid://10747364971",
  1196. ["lucide-underline"] = "rbxassetid://10747365191",
  1197. ["lucide-undo"] = "rbxassetid://10747365484",
  1198. ["lucide-undo-2"] = "rbxassetid://10747365359",
  1199. ["lucide-unlink"] = "rbxassetid://10747365771",
  1200. ["lucide-unlink-2"] = "rbxassetid://10747397871",
  1201. ["lucide-unlock"] = "rbxassetid://10747366027",
  1202. ["lucide-upload"] = "rbxassetid://10747366434",
  1203. ["lucide-upload-cloud"] = "rbxassetid://10747366266",
  1204. ["lucide-usb"] = "rbxassetid://10747366606",
  1205. ["lucide-user"] = "rbxassetid://10747373176",
  1206. ["lucide-user-check"] = "rbxassetid://10747371901",
  1207. ["lucide-user-cog"] = "rbxassetid://10747372167",
  1208. ["lucide-user-minus"] = "rbxassetid://10747372346",
  1209. ["lucide-user-plus"] = "rbxassetid://10747372702",
  1210. ["lucide-user-x"] = "rbxassetid://10747372992",
  1211. ["lucide-users"] = "rbxassetid://10747373426",
  1212. ["lucide-utensils"] = "rbxassetid://10747373821",
  1213. ["lucide-utensils-crossed"] = "rbxassetid://10747373629",
  1214. ["lucide-venetian-mask"] = "rbxassetid://10747374003",
  1215. ["lucide-verified"] = "rbxassetid://10747374131",
  1216. ["lucide-vibrate"] = "rbxassetid://10747374489",
  1217. ["lucide-vibrate-off"] = "rbxassetid://10747374269",
  1218. ["lucide-video"] = "rbxassetid://10747374938",
  1219. ["lucide-video-off"] = "rbxassetid://10747374721",
  1220. ["lucide-view"] = "rbxassetid://10747375132",
  1221. ["lucide-voicemail"] = "rbxassetid://10747375281",
  1222. ["lucide-volume"] = "rbxassetid://10747376008",
  1223. ["lucide-volume-1"] = "rbxassetid://10747375450",
  1224. ["lucide-volume-2"] = "rbxassetid://10747375679",
  1225. ["lucide-volume-x"] = "rbxassetid://10747375880",
  1226. ["lucide-wallet"] = "rbxassetid://10747376205",
  1227. ["lucide-wand"] = "rbxassetid://10747376565",
  1228. ["lucide-wand-2"] = "rbxassetid://10747376349",
  1229. ["lucide-watch"] = "rbxassetid://10747376722",
  1230. ["lucide-waves"] = "rbxassetid://10747376931",
  1231. ["lucide-webcam"] = "rbxassetid://10747381992",
  1232. ["lucide-wifi"] = "rbxassetid://10747382504",
  1233. ["lucide-wifi-off"] = "rbxassetid://10747382268",
  1234. ["lucide-wind"] = "rbxassetid://10747382750",
  1235. ["lucide-wrap-text"] = "rbxassetid://10747383065",
  1236. ["lucide-wrench"] = "rbxassetid://10747383470",
  1237. ["lucide-x"] = "rbxassetid://10747384394",
  1238. ["lucide-x-circle"] = "rbxassetid://10747383819",
  1239. ["lucide-x-octagon"] = "rbxassetid://10747384037",
  1240. ["lucide-x-square"] = "rbxassetid://10747384217",
  1241. ["lucide-zoom-in"] = "rbxassetid://10747384552",
  1242. ["lucide-zoom-out"] = "rbxassetid://10747384679",
  1243. };
  1244.  
  1245. MarcoUI.FontAwesome = {
  1246. a = "rbxassetid://74244459944328",
  1247. ['accessible-icon'] = "rbxassetid://135242143909610",
  1248. accusoft = "rbxassetid://94057545767519",
  1249. ['address-book'] = "rbxassetid://129578640498728",
  1250. ['address-card'] = 'rbxassetid://102106715141928',
  1251. ['align-center'] = "rbxassetid://84408132800466",
  1252. ['align-justify'] = "rbxassetid://125569339749500",
  1253. ['align-left'] = "rbxassetid://110008004178539",
  1254. ['align-right'] = "rbxassetid://79774893981710",
  1255. alipay = "rbxassetid://134274199490629",
  1256. anchor = "rbxassetid://94979524088900",
  1257. ['anchor-circle-check'] = "rbxassetid://91871463373335",
  1258. ['anchor-circle-exclamation'] = "rbxassetid://72303311082053",
  1259. ['anchor-circle-xmark'] = "rbxassetid://106917001300524",
  1260. ['anchor-lock'] = "rbxassetid://109198662645391",
  1261. android = "rbxassetid://93605821179752",
  1262. ['angle-down'] = "rbxassetid://122395101934469",
  1263. ['angle-left'] = "rbxassetid://132632410309959",
  1264. ['angle-right'] = "rbxassetid://105971664068240",
  1265. ['angles-down'] = "rbxassetid://96703500127872",
  1266. ['angles-left'] = "rbxassetid://70595546989447",
  1267. ['angles-right'] = "rbxassetid://131176182882747",
  1268. ['angles-up'] = "rbxassetid://96847020381396",
  1269. ['angle-up'] = "rbxassetid://136517226470297",
  1270. ['arrow-down'] = "rbxassetid://100174052036797",
  1271. ['arrow-left'] = "rbxassetid://133922718486450",
  1272. ['arrow-pointer'] = "rbxassetid://128639550333559",
  1273. ['arrow-right'] = 'rbxassetid://105166519175969',
  1274. ['arrow-right-arrow-left'] = "rbxassetid://87405428139040",
  1275. ['arrow-right-from-bracket'] = "rbxassetid://111722018253482",
  1276. ['arrow-right-to-bracket'] = "rbxassetid://79400903745367",
  1277. ['arrow-rotate-left'] = "rbxassetid://127876635051023",
  1278. ['arrow-rotate-right'] = "rbxassetid://82773599534347",
  1279. ['arrows-left-right'] = "rbxassetid://85625938291926",
  1280. ['arrows-rotate'] = "rbxassetid://109882153776270",
  1281. ['arrows-up-down'] = "rbxassetid://88240470530518",
  1282. ['arrows-up-down-left-right'] = "rbxassetid://136830364721572",
  1283. ['arrow-trend-down'] = "rbxassetid://138593805214121",
  1284. ['arrow-trend-up'] = "rbxassetid://121301107868410",
  1285. ['arrow-up'] = "rbxassetid://116473498857626",
  1286. ['arrow-up-from-bracket'] = "rbxassetid://77716847027695",
  1287. ['arrow-up-right-from-square'] = "rbxassetid://101883941536459",
  1288. at = "rbxassetid://116468402170315",
  1289. atom = "rbxassetid://136905279132440",
  1290. ['audio-description'] = 'rbxassetid://137490376195308',
  1291. award = "rbxassetid://134322732056464",
  1292. backward = "rbxassetid://115437448962693",
  1293. ['backward-fast'] = "rbxassetid://133478473989228",
  1294. ['backward-step'] = "rbxassetid://118301206125870",
  1295. ban = "rbxassetid://89004310664420",
  1296. bandage = "rbxassetid://109104902535966",
  1297. bars = "rbxassetid://127661324755454",
  1298. ['bars-progress'] = "rbxassetid://77774174241071",
  1299. ['bars-staggered'] = "rbxassetid://97337529919486",
  1300. baseball = "rbxassetid://87677782809968",
  1301. basketball = "rbxassetid://71403045563776",
  1302. ['basket-shopping'] = "rbxassetid://129578273645224",
  1303. ['battery-empty'] = "rbxassetid://99777750808099",
  1304. ['battery-full'] = "rbxassetid://93999278270214",
  1305. ['battery-half'] = "rbxassetid://87762099115036",
  1306. ['battery-quarter'] = "rbxassetid://96680551535938",
  1307. ['battery-three-quarters'] = "rbxassetid://130840615974067",
  1308. bell = "rbxassetid://109971903438934",
  1309. ['bell-slash'] = "rbxassetid://101758939103378",
  1310. bilibili = "rbxassetid://85834752961243",
  1311. biohazard = "rbxassetid://102610067899783",
  1312. bitcoin = "rbxassetid://131632152157382",
  1313. ['bitcoin-sign'] = "rbxassetid://127809070259506",
  1314. ['bluetooth-b'] = "rbxassetid://96522278309021",
  1315. bluetooth = "rbxassetid://113081372628241",
  1316. bolt = "rbxassetid://89858717966393",
  1317. bomb = "rbxassetid://113184250292244",
  1318. book = "rbxassetid://134006112957521",
  1319. ['book-open'] = "rbxassetid://109774137257967",
  1320. bug = "rbxassetid://105314179657552",
  1321. ['bug-slash'] = "rbxassetid://133973969610093",
  1322. broom = "rbxassetid://95267009545395",
  1323. bullhorn = "rbxassetid://87251830910561",
  1324. ['bullseye'] = "rbxassetid://83080500555400",
  1325. bus = "rbxassetid://126579638968493",
  1326. calculator = "rbxassetid://119527046782470",
  1327. camera = "rbxassetid://133029797251962",
  1328. ['cc-amazon-pay'] = "rbxassetid://108859760370504",
  1329. ['cc-amex'] = "rbxassetid://138233598058785",
  1330. ['cc-apple-pay'] = "rbxassetid://133747941882534",
  1331. ['cc-diners-club'] = "rbxassetid://99626539664553",
  1332. ['cc-mastercard'] = "rbxassetid://118541621561504",
  1333. ['cc-visa'] = "rbxassetid://120055576031063",
  1334. ['cc-paypal'] = "rbxassetid://87250418163030",
  1335. check = "rbxassetid://129443092324752",
  1336. ['chevron-down'] = "rbxassetid://109535175596957",
  1337. ['chevron-left'] = "rbxassetid://129113930144228",
  1338. ['chevron-right'] = "rbxassetid://105723602996553",
  1339. ['chevron-up'] = "rbxassetid://117264500851637",
  1340. chromecast = "rbxassetid://71543589030583",
  1341. circle = "rbxassetid://131274957777266",
  1342. ['circle-check'] = "rbxassetid://98678528147000",
  1343. ['circle-info'] = "rbxassetid://97519285421665",
  1344. clipboard = 'rbxassetid://111512950362265',
  1345. ['clipboard-check'] = "rbxassetid://118535733506457",
  1346. clock = "rbxassetid://98767608471295",
  1347. code = "rbxassetid://91882036126433",
  1348. ['computer-mouse'] = "rbxassetid://114752565381440",
  1349. cookie = "rbxassetid://101854685117513",
  1350. copy = "rbxassetid://76996819137437",
  1351. copyright = "rbxassetid://131736117717053",
  1352. ['credit-card'] = "rbxassetid://85213342061383",
  1353. ['crosshairs'] = "rbxassetid://133441774847498",
  1354. database = "rbxassetid://109882554524389",
  1355. discord = "rbxassetid://75871011309830",
  1356. display = "rbxassetid://101851152220134",
  1357. download = "rbxassetid://122321311031549",
  1358. ['earth-africa'] = "rbxassetid://107029199584204",
  1359. ['earth-americas'] = "rbxassetid://105574352653407",
  1360. ['earth-asia'] = "rbxassetid://138155660327900",
  1361. ['earth-europe'] = "rbxassetid://134638370907021",
  1362. ['earth-oceania'] = "rbxassetid://121780690380624",
  1363. envelope = "rbxassetid://136184483524922",
  1364. ['envelope-open'] = "rbxassetid://132492127839357",
  1365. envira = "rbxassetid://75781570526788",
  1366. equals = "rbxassetid://134271902308970",
  1367. eraser = "rbxassetid://128970640154301",
  1368. ethereum = "rbxassetid://103421769879532",
  1369. exclamation = "rbxassetid://125718656366676",
  1370. eye = "rbxassetid://95235861336970",
  1371. feather = "rbxassetid://135995843954302",
  1372. fingerprint = "rbxassetid://125379360015007",
  1373. fire = "rbxassetid://122498238725085",
  1374. ['floppy-disk'] = "rbxassetid://101374426361499",
  1375. folder = "rbxassetid://131374292202389",
  1376. ['folder-open'] = "rbxassetid://78238714442180",
  1377. forward = "rbxassetid://107937467448020",
  1378. ['forward-fast'] = "rbxassetid://83735840669276",
  1379. ['forward-step'] = "rbxassetid://104040171143566",
  1380. gear = "rbxassetid://137945854328407",
  1381. gift = "rbxassetid://129718366414314",
  1382. git = "rbxassetid://117711060446092",
  1383. github = "rbxassetid://123783733365919",
  1384. globe = "rbxassetid://102861769355196",
  1385. ['hand-holding-hand'] = "rbxassetid://120797412134954",
  1386. headphones = "rbxassetid://86076153665072",
  1387. headset = "rbxassetid://108070801288944",
  1388. ['headphones-simple'] = "rbxassetid://97516570978183",
  1389. house = "rbxassetid://86540166012974",
  1390. ['house-chimney'] = "rbxassetid://90066192203346",
  1391. image = "rbxassetid://107205506080751",
  1392. infinity = "rbxassetid://129024756905166",
  1393. info = "rbxassetid://113157514619684",
  1394. keyboard = "rbxassetid://97417417526948",
  1395. list = "rbxassetid://87155993544457",
  1396. ['location-arrow'] = "rbxassetid://72621673664457",
  1397. ['location-crosshairs'] = "rbxassetid://93887450723164",
  1398. lock = 'rbxassetid://80031239225283',
  1399. palette = "rbxassetid://81372281623830",
  1400. paste = "rbxassetid://88846256867074",
  1401. paw = "rbxassetid://80005916079930",
  1402. pen = "rbxassetid://97404859124912",
  1403. pencil = "rbxassetid://76590960968733",
  1404. ['pen-nib'] = "rbxassetid://91232219924341",
  1405. ['pen-ruler'] = "rbxassetid://138407458813207",
  1406. phone = "rbxassetid://72814141651992",
  1407. plane = "rbxassetid://136248807279679",
  1408. plus = "rbxassetid://133137619535544",
  1409. ['right-left'] = "rbxassetid://91273051324368",
  1410. ['right-to-bracket'] = "rbxassetid://137132451900886",
  1411. rotate = "rbxassetid://95883878890200",
  1412. ['rotate-right'] = "rbxassetid://93357988077552",
  1413. ['rotate-left'] = "rbxassetid://96753646113822",
  1414. shield = "rbxassetid://73441026473893",
  1415. ['shield-halved'] = "rbxassetid://114554606211174",
  1416. user = "rbxassetid://98376828270066",
  1417. unlock = "rbxassetid://99060354229117",
  1418. trash = "rbxassetid://82859108629080",
  1419. ['trash-can'] = "rbxassetid://81463703129214",
  1420. skull = "rbxassetid://99276754296574",
  1421. robot = "rbxassetid://134497060038109",
  1422. tag = "rbxassetid://129024358125754",
  1423. thumbtack = "rbxassetid://119847869089109",
  1424. ['thumbs-up'] = "rbxassetid://74340984021785",
  1425. ['thumbs-down'] = "rbxassetid://86090492737223",
  1426. ['user-gear'] = "rbxassetid://137604201056497",
  1427. video = "rbxassetid://112274059143251",
  1428. virus = "rbxassetid://91843339206686",
  1429. volleyball = "rbxassetid://73870192536894",
  1430. ['magnifying-glass'] = "rbxassetid://74387839235930",
  1431. };
  1432.  
  1433. function MarcoUI:OptimizeMode(v)
  1434. MarcoUI.PerformanceMode = v;
  1435. end;
  1436.  
  1437. function MarcoUI:IsStudio()
  1438. return RunService:IsStudio()
  1439. end;
  1440.  
  1441. function MarcoUI:CustomIconHighlight()
  1442. MarcoUI.CustomHighlightMode = true;
  1443. end;
  1444.  
  1445. function MarcoUI:_SetNilP(Ins: Instance , Parent: Instance)
  1446. MarcoUI.WindowsNil = MarcoUI.WindowsNil or {};
  1447. if not MarcoUI.NilFolder then
  1448. local success, folder = pcall(function()
  1449. return Instance.new('Folder');
  1450. end);
  1451. MarcoUI.NilFolder = folder;
  1452. if MarcoUI.NilFolder then
  1453. MarcoUI.NilFolder.Name = "Nil-Instances";
  1454. end;
  1455. end;
  1456.  
  1457. if not MarcoUI.WindowsNil[Ins] then
  1458. local win = MarcoUI:_GetWindowFromElement(Ins);
  1459.  
  1460. MarcoUI.WindowsNil[Ins] = win;
  1461. end;
  1462.  
  1463. Ins.Parent = Parent or MarcoUI.NilFolder;
  1464. end;
  1465.  
  1466. function MarcoUI:SetAllText(flags : {[string] : string})
  1467. if not flags then -- reset to default
  1468. for i,v in next , MarcoUI.Flags do
  1469. if v.SetText then
  1470. v:SetText(nil);
  1471. end;
  1472. end;
  1473.  
  1474. return;
  1475. end;
  1476.  
  1477. flags = flags or {};
  1478.  
  1479. for i,v in next , flags do
  1480. if MarcoUI.Flags[i] and MarcoUI.Flags[i].SetText then
  1481. MarcoUI.Flags[i]:SetText(v);
  1482. end;
  1483. end;
  1484. end;
  1485.  
  1486. function MarcoUI:_GetIcon(name : string , font_aws) : string
  1487. if MarcoUI.SecureMode then
  1488. local AssetId;
  1489.  
  1490. if font_aws then
  1491. AssetId = MarcoUI.FontAwesome[name] or name;
  1492. else
  1493. AssetId = MarcoUI.Lucide['lucide-'..tostring(name)] or MarcoUI.Lucide[name] or MarcoUI.Lucide[tostring(name)] or MarcoUI.FontAwesome[name] or name;
  1494. end;
  1495.  
  1496. if AssetId and AssetId ~= nil then
  1497. local asset = MarcoUI:CacheImage(AssetId);
  1498.  
  1499. return asset;
  1500. end;
  1501.  
  1502. return "";
  1503. end;
  1504.  
  1505. if font_aws then
  1506. return MarcoUI.FontAwesome[name] or name;
  1507. end;
  1508.  
  1509. return MarcoUI.Lucide['lucide-'..tostring(name)] or MarcoUI.Lucide[name] or MarcoUI.Lucide[tostring(name)] or MarcoUI.FontAwesome[name] or name;
  1510. end;
  1511.  
  1512. function MarcoUI:_RandomString() : string
  1513. return "CK="..string.char(math.random(64,102),math.random(64,102),math.random(64,102),math.random(64,102),math.random(64,102),math.random(64,102),math.random(64,102),math.random(64,102),math.random(64,102),math.random(64,102),math.random(64,102),math.random(64,102),math.random(64,102),math.random(64,102),math.random(64,102),math.random(64,102),math.random(64,102),math.random(64,102),math.random(64,102),math.random(64,102));
  1514. end;
  1515.  
  1516. function MarcoUI:_IsMouseOverFrame(Frame : Frame) : boolean
  1517. if not Frame or not Mouse then
  1518. return false;
  1519. end;
  1520.  
  1521. local AbsPos: Vector2, AbsSize: Vector2 = Frame.AbsolutePosition, Frame.AbsoluteSize;
  1522.  
  1523. if Mouse.X >= AbsPos.X and Mouse.X <= AbsPos.X + AbsSize.X and Mouse.Y >= AbsPos.Y and Mouse.Y <= AbsPos.Y + AbsSize.Y then
  1524. return true;
  1525. end;
  1526.  
  1527. return false;
  1528. end;
  1529.  
  1530. function MarcoUI:_Rounding(num: number, numDecimalPlaces: number) : number
  1531. local mult: number = 10 ^ (numDecimalPlaces or 0);
  1532. return math.floor(num * mult + 0.5) / mult;
  1533. end;
  1534.  
  1535. function MarcoUI:_Animation(Self: Instance , Info: TweenInfo , Property :{[K] : V})
  1536. local Tween = TweenService:Create(Self , Info or TweenInfo.new(0.25,Enum.EasingStyle.Exponential) , Property);
  1537.  
  1538. Tween:Play();
  1539.  
  1540. return Tween;
  1541. end;
  1542.  
  1543. function MarcoUI:_Input(Frame : Frame , Callback : () -> ()) : TextButton
  1544. local Button = Instance.new('TextButton',Frame);
  1545.  
  1546. Button.ZIndex = Frame.ZIndex + 10;
  1547. Button.Size = UDim2.fromScale(1,1);
  1548. Button.BackgroundTransparency = 1;
  1549. Button.TextTransparency = 1;
  1550.  
  1551. if Callback then
  1552. Button.MouseButton1Click:Connect(Callback);
  1553. end;
  1554.  
  1555. return Button;
  1556. end;
  1557.  
  1558. function MarcoUI:GetCalculatePosition(planePos: number, planeNormal: number, rayOrigin: number, rayDirection: number) : number
  1559. local n = planeNormal;
  1560. local d = rayDirection;
  1561. local v = rayOrigin - planePos;
  1562.  
  1563. local num = (n.x * v.x) + (n.y * v.y) + (n.z * v.z);
  1564. local den = (n.x * d.x) + (n.y * d.y) + (n.z * d.z);
  1565. local a = -num / den;
  1566.  
  1567. return rayOrigin + (a * rayDirection);
  1568. end;
  1569.  
  1570. function MarcoUI:_Blur(element : Frame , WindowRemote) : RBXScriptSignal
  1571. if MarcoUI.SecureMode and not MarcoUI.SecurityConfig.BlurEnabled then
  1572. return game.Changed:Connect(function() end);
  1573. end;
  1574.  
  1575. local Part = Instance.new('Part',MarcoUI.ArcylicParent);
  1576. local DepthOfField = Instance.new('DepthOfFieldEffect',cloneref(game:GetService('Lighting')));
  1577. local BlockMesh = Instance.new("BlockMesh");
  1578. local userSettings = UserSettings():GetService("UserGameSettings");
  1579.  
  1580. BlockMesh.Parent = Part;
  1581.  
  1582. Part.Material = Enum.Material.Glass;
  1583. Part.Transparency = 1;
  1584. Part.Reflectance = 1;
  1585. Part.CastShadow = false;
  1586. Part.Anchored = true;
  1587. Part.CanCollide = false;
  1588. Part.CanQuery = false;
  1589. Part.CollisionGroup = MarcoUI:_RandomString();
  1590. Part.Size = Vector3.new(1, 1, 1) * 0.01;
  1591. Part.Color = Color3.fromRGB(0,0,0);
  1592.  
  1593. DepthOfField.Enabled = true;
  1594. DepthOfField.FarIntensity = 0;
  1595. DepthOfField.FocusDistance = 0;
  1596. DepthOfField.InFocusRadius = 1000;
  1597. DepthOfField.NearIntensity = 1;
  1598. DepthOfField.Name = MarcoUI:_RandomString();
  1599.  
  1600. Part.Name = MarcoUI:_RandomString();
  1601.  
  1602. local disconnect;
  1603.  
  1604. local UpdateFunction = function()
  1605. if MarcoUI.SecureMode then
  1606. if Part then
  1607. Part:Destroy();
  1608. Part = nil;
  1609. end;
  1610.  
  1611. if DepthOfField then
  1612. DepthOfField:Destroy();
  1613. DepthOfField = nil;
  1614. end;
  1615.  
  1616. if BlockMesh then
  1617. BlockMesh:Destroy();
  1618. BlockMesh = nil;
  1619. end;
  1620.  
  1621. if disconnect then
  1622. disconnect();
  1623. disconnect = nil;
  1624. end;
  1625.  
  1626. return;
  1627. end;
  1628.  
  1629. local IsWindowActive = WindowRemote:GetValue();
  1630.  
  1631. if IsWindowActive then
  1632.  
  1633. MarcoUI:_Animation(DepthOfField,TweenInfo.new(0.1),{
  1634. NearIntensity = 1
  1635. })
  1636.  
  1637. MarcoUI:_Animation(Part,TweenInfo.new(0.1),{
  1638. Transparency = 0.97,
  1639. Size = Vector3.new(1, 1, 1) * 0.01;
  1640. })
  1641. else
  1642. MarcoUI:_Animation(DepthOfField,TweenInfo.new(0.1),{
  1643. NearIntensity = 0
  1644. })
  1645.  
  1646. MarcoUI:_Animation(Part,TweenInfo.new(0.1),{
  1647. Size = Vector3.zero,
  1648. Transparency = 1.5,
  1649. })
  1650.  
  1651. return false;
  1652. end;
  1653.  
  1654. if IsWindowActive then
  1655. local corner0 = element.AbsolutePosition;
  1656. local corner1 = corner0 + element.AbsoluteSize;
  1657.  
  1658. local ray0 = CurrentCamera.ScreenPointToRay(CurrentCamera,corner0.X, corner0.Y, 1);
  1659. local ray1 = CurrentCamera.ScreenPointToRay(CurrentCamera,corner1.X, corner1.Y, 1);
  1660.  
  1661. local planeOrigin = CurrentCamera.CFrame.Position + CurrentCamera.CFrame.LookVector * (0.05 - CurrentCamera.NearPlaneZ);
  1662.  
  1663. local planeNormal = CurrentCamera.CFrame.LookVector;
  1664.  
  1665. local pos0 = MarcoUI:GetCalculatePosition(planeOrigin, planeNormal, ray0.Origin, ray0.Direction);
  1666. local pos1 = MarcoUI:GetCalculatePosition(planeOrigin, planeNormal, ray1.Origin, ray1.Direction);
  1667.  
  1668. pos0 = CurrentCamera.CFrame:PointToObjectSpace(pos0);
  1669. pos1 = CurrentCamera.CFrame:PointToObjectSpace(pos1);
  1670.  
  1671. local size = pos1 - pos0;
  1672. local center = (pos0 + pos1) / 2;
  1673.  
  1674. BlockMesh.Offset = center
  1675. BlockMesh.Scale = size / 0.0101;
  1676. Part.CFrame = CurrentCamera.CFrame;
  1677. end;
  1678. end;
  1679.  
  1680. local rbxsignal = CurrentCamera:GetPropertyChangedSignal('CFrame'):Connect(UpdateFunction)
  1681. local loopThread = UserInputService.InputChanged:Connect(function(Input)
  1682. if Input.UserInputType == Enum.UserInputType.MouseButton1 or Input.UserInputType == Enum.UserInputType.MouseMovement or Input.UserInputType == Enum.UserInputType.Touch then
  1683. pcall(UpdateFunction);
  1684. end;
  1685. end);
  1686.  
  1687. local THREAD = task.spawn(function()
  1688. while true do task.wait(0.1)
  1689. pcall(UpdateFunction);
  1690. end;
  1691. end);
  1692.  
  1693. disconnect = function()
  1694. rbxsignal:Disconnect();
  1695. loopThread:Disconnect();
  1696. task.cancel(THREAD);
  1697. Part:Destroy();
  1698. DepthOfField:Destroy();
  1699. end;
  1700.  
  1701. element.Destroying:Connect(disconnect);
  1702.  
  1703. return rbxsignal;
  1704. end;
  1705.  
  1706. function MarcoUI:_AddDragBlacklist(Frame: Frame)
  1707. local IsAdded = false;
  1708. local BASE_TIME = 0.01;
  1709.  
  1710. local SET_BLACKLIST = function(value)
  1711. local index = table.find(MarcoUI.DragBlacklist , Frame);
  1712.  
  1713. if value and not MarcoUI.IS_DRAG_MOVE then
  1714. if not index then
  1715. table.insert(MarcoUI.DragBlacklist,Frame);
  1716. end;
  1717. else
  1718. if index then
  1719. table.remove(MarcoUI.DragBlacklist,index);
  1720. end;
  1721. end;
  1722. end;
  1723.  
  1724. Frame.InputBegan:Connect(function(input)
  1725. if MarcoUI:_IsMouseOverFrame(Frame) then
  1726. SET_BLACKLIST(true)
  1727. end;
  1728. end);
  1729.  
  1730. Frame.InputEnded:Connect(function(input)
  1731. SET_BLACKLIST(false);
  1732. end);
  1733.  
  1734. UserInputService.InputChanged:Connect(function()
  1735. if not MarcoUI:_IsMouseOverFrame(Frame) then
  1736. SET_BLACKLIST(false);
  1737. end
  1738. end);
  1739. end;
  1740.  
  1741. function MarcoUI:_GetWindowFromElement(Element)
  1742. if MarcoUI.WindowsNil[Element] then
  1743. return MarcoUI.WindowsNil[Element];
  1744. end;
  1745.  
  1746. for i,v : ScreenGui in next , MarcoUI.Windows do
  1747. if v and Element:IsDescendantOf(v) then
  1748. return v;
  1749. end;
  1750. end;
  1751.  
  1752. for Frame,Window in next , MarcoUI.WindowsNil do
  1753. if Element:IsDescendantOf(Frame) or Frame == Element then
  1754. return Window;
  1755. end;
  1756. end;
  1757. end;
  1758.  
  1759. function MarcoUI.__SIGNAL(default)
  1760. local Bindable = Instance.new('BindableEvent');
  1761.  
  1762. Bindable.Name = string.sub(tostring({}),7);
  1763.  
  1764. Bindable:SetAttribute('Value',default);
  1765.  
  1766. local Binds = {
  1767. __signals = {}
  1768. };
  1769.  
  1770. function Binds:Connect(event)
  1771. event(Bindable:GetAttribute("Value"));
  1772.  
  1773. local signal = Bindable.Event:Connect(event);
  1774.  
  1775. table.insert(Binds.__signals,signal);
  1776.  
  1777. return signal;
  1778. end;
  1779.  
  1780. function Binds:Fire(value)
  1781. local IsSame = Bindable:GetAttribute("Value") == value;
  1782.  
  1783. Bindable:SetAttribute('Value',value);
  1784.  
  1785. if not IsSame then
  1786. Bindable:Fire(value);
  1787. end;
  1788. end;
  1789.  
  1790. function Binds:GetValue()
  1791. return Bindable:GetAttribute("Value");
  1792. end;
  1793.  
  1794. return Binds;
  1795. end;
  1796.  
  1797. -- Interaction locking system to prevent hover effects during interactions
  1798. MarcoUI.__InteractionLock = nil;
  1799. MarcoUI.__LockedSection = nil;
  1800.  
  1801. function MarcoUI:_SetInteractionLock(section, locked)
  1802. if locked then
  1803. MarcoUI.__InteractionLock = true;
  1804. MarcoUI.__LockedSection = section;
  1805. else
  1806. MarcoUI.__InteractionLock = false;
  1807. MarcoUI.__LockedSection = nil;
  1808. end;
  1809. end;
  1810.  
  1811. function MarcoUI:_IsInteractionLocked()
  1812. return MarcoUI.__InteractionLock == true;
  1813. end;
  1814.  
  1815. function MarcoUI:_GetLockedSection()
  1816. return MarcoUI.__LockedSection;
  1817. end;
  1818.  
  1819. function MarcoUI:_Hover(Frame: Frame , OnHover: () -> any?, Release: () -> any?)
  1820. local isLocked = false;
  1821. local lockedSection = nil;
  1822.  
  1823. Frame.MouseEnter:Connect(function()
  1824. -- Check if interaction is locked and if this frame is not the locked section
  1825. if MarcoUI:_IsInteractionLocked() then
  1826. lockedSection = MarcoUI:_GetLockedSection();
  1827. if lockedSection and Frame:IsDescendantOf(lockedSection) then
  1828. -- This is the locked section, allow hover
  1829. isLocked = false;
  1830. else
  1831. -- Different section, block hover
  1832. isLocked = true;
  1833. end;
  1834. else
  1835. isLocked = false;
  1836. end;
  1837.  
  1838. if not isLocked and OnHover then
  1839. OnHover();
  1840. end;
  1841. end);
  1842.  
  1843. Frame.MouseLeave:Connect(function()
  1844. -- Only trigger release if not locked or if this is the locked section
  1845. if not isLocked and Release then
  1846. Release();
  1847. end;
  1848. end);
  1849. end;
  1850.  
  1851. function MarcoUI.__CONFIG(config , default)
  1852. config = config or {};
  1853.  
  1854. for i,v in next , default do
  1855. if config[i] == nil then
  1856. config[i] = v;
  1857. end;
  1858. end;
  1859.  
  1860. return config;
  1861. end;
  1862.  
  1863. function MarcoUI:Drag(InputFrame: Frame, MoveFrame: Frame, Speed : number)
  1864. local dragToggle: boolean = false;
  1865. local dragStart: Vector3 = nil;
  1866. local startPos: UDim2 = nil;
  1867. local Tween = TweenInfo.new(Speed);
  1868.  
  1869. local updateInput = function(input)
  1870. local delta = input.Position - dragStart;
  1871. local position = UDim2.new(startPos.X.Scale, startPos.X.Offset + delta.X,
  1872. startPos.Y.Scale, startPos.Y.Offset + delta.Y);
  1873.  
  1874. MarcoUI:_Animation(MoveFrame,Tween,{
  1875. Position = position
  1876. });
  1877. end;
  1878.  
  1879. InputFrame.InputBegan:Connect(function(input)
  1880. if (input.UserInputType == Enum.UserInputType.MouseButton1 or input.UserInputType == Enum.UserInputType.Touch) and #MarcoUI.DragBlacklist <= 0 then
  1881. dragToggle = true
  1882. dragStart = input.Position
  1883. startPos = MoveFrame.Position
  1884. input.Changed:Connect(function()
  1885. if input.UserInputState == Enum.UserInputState.End then
  1886. dragToggle = false;
  1887. MarcoUI.IS_DRAG_MOVE = false;
  1888. end
  1889. end)
  1890. end
  1891.  
  1892. if not MarcoUI.IsDrage and dragToggle then
  1893. MarcoUI.LastDrag = tick();
  1894. end;
  1895.  
  1896. MarcoUI.IaDrag = dragToggle;
  1897. end)
  1898.  
  1899. UserInputService.InputChanged:Connect(function(input)
  1900. if input.UserInputType == Enum.UserInputType.MouseMovement or input.UserInputType == Enum.UserInputType.Touch and #MarcoUI.DragBlacklist <= 0 then
  1901. if dragToggle then
  1902. MarcoUI.IS_DRAG_MOVE = true;
  1903. updateInput(input)
  1904. else
  1905. MarcoUI.IS_DRAG_MOVE = false;
  1906. end
  1907. else
  1908. if #MarcoUI.DragBlacklist > 0 then
  1909. dragToggle = false
  1910. MarcoUI.IS_DRAG_MOVE = false;
  1911. end
  1912. end
  1913.  
  1914. MarcoUI.IaDrag = dragToggle;
  1915. end);
  1916. end;
  1917.  
  1918. function MarcoUI:_IsMobile()
  1919. return UserInputService.TouchEnabled;
  1920. end;
  1921.  
  1922. function MarcoUI:_AddLinkValue(Name , Default , GlobalBlock , LinkValues , rep , Signal)
  1923. if Name == "Toggle" then
  1924. local Toggle = Instance.new("Frame")
  1925. local UICorner = Instance.new("UICorner")
  1926. local UIStroke = Instance.new("UIStroke")
  1927. local ToggleValue = Instance.new("Frame")
  1928. local UICorner_2 = Instance.new("UICorner")
  1929.  
  1930. Toggle.Name = MarcoUI:_RandomString()
  1931. Toggle.Parent = LinkValues
  1932. Toggle.BackgroundColor3 = MarcoUI.Colors.DropColor
  1933. Toggle.BorderColor3 = Color3.fromRGB(0, 0, 0)
  1934. Toggle.BorderSizePixel = 0
  1935. Toggle.Size = UDim2.new(0, 30, 0, 16)
  1936. Toggle.ZIndex = GlobalBlock.ZIndex + 1
  1937. Toggle.LayoutOrder = -#LinkValues:GetChildren();
  1938.  
  1939. table.insert(MarcoUI.Elements.DropColor , {
  1940. Element = Toggle,
  1941. Property = "BackgroundColor3"
  1942. })
  1943.  
  1944. UICorner.CornerRadius = UDim.new(1, 0)
  1945. UICorner.Parent = Toggle
  1946.  
  1947. UIStroke.Color = MarcoUI.Colors.HighStrokeColor
  1948. UIStroke.Parent = Toggle
  1949.  
  1950. table.insert(MarcoUI.Elements.HighStrokeColor,{
  1951. Element = UIStroke,
  1952. Property = "Color"
  1953. })
  1954.  
  1955. ToggleValue.Name = MarcoUI:_RandomString()
  1956. ToggleValue.Parent = Toggle
  1957. ToggleValue.AnchorPoint = Vector2.new(0.5, 0.5)
  1958. ToggleValue.BackgroundColor3 = MarcoUI.Colors.SwitchColor
  1959. ToggleValue.BorderColor3 = Color3.fromRGB(0, 0, 0)
  1960. ToggleValue.BorderSizePixel = 0
  1961. ToggleValue.Position = UDim2.new(0.25, 0, 0.5, 0)
  1962. ToggleValue.Size = UDim2.new(0.550000012, 0, 0.550000012, 0)
  1963. ToggleValue.SizeConstraint = Enum.SizeConstraint.RelativeYY
  1964. ToggleValue.ZIndex = GlobalBlock.ZIndex + 2
  1965.  
  1966. UICorner_2.CornerRadius = UDim.new(1, 0)
  1967. UICorner_2.Parent = ToggleValue;
  1968.  
  1969. -- Track for RGB updates
  1970. local isActive = false;
  1971.  
  1972. local ToggleElement = function(bool,noChange)
  1973. if not noChange then
  1974. Default = bool;
  1975. end;
  1976.  
  1977. if bool then
  1978. isActive = true;
  1979. Toggle:SetAttribute('Enabled',true);
  1980.  
  1981. MarcoUI:_Animation(ToggleValue,rep.Tween,{
  1982. Position = UDim2.new(0.75, 0, 0.5, 0)
  1983. })
  1984.  
  1985. -- Store reference for RGB updates
  1986. if not MarcoUI.__ActiveRGBToggles then
  1987. MarcoUI.__ActiveRGBToggles = {};
  1988. end;
  1989. table.insert(MarcoUI.__ActiveRGBToggles, {
  1990. Toggle = Toggle,
  1991. ToggleValue = ToggleValue
  1992. });
  1993.  
  1994. MarcoUI:_Animation(Toggle,rep.Tween,{
  1995. BackgroundColor3 = MarcoUI.Colors.Toggle
  1996. })
  1997. else
  1998. isActive = false;
  1999. Toggle:SetAttribute('Enabled',false);
  2000.  
  2001. -- Remove from RGB tracking
  2002. if MarcoUI.__ActiveRGBToggles then
  2003. for i, v in ipairs(MarcoUI.__ActiveRGBToggles) do
  2004. if v.Toggle == Toggle then
  2005. table.remove(MarcoUI.__ActiveRGBToggles, i);
  2006. break;
  2007. end;
  2008. end;
  2009. end;
  2010.  
  2011. MarcoUI:_Animation(ToggleValue,rep.Tween,{
  2012. Position = UDim2.new(0.25, 0, 0.5, 0)
  2013. })
  2014.  
  2015. MarcoUI:_Animation(Toggle,rep.Tween,{
  2016. BackgroundColor3 = MarcoUI.Colors.DropColor
  2017. })
  2018. end;
  2019. end;
  2020.  
  2021. local Input = MarcoUI:_Input(Toggle);
  2022.  
  2023. MarcoUI:_Hover(Input , function()
  2024. if not Default then
  2025. MarcoUI:_Animation(ToggleValue,rep.Tween,{
  2026. Size = UDim2.new(0.6, 0, 0.6, 0)
  2027. })
  2028. end;
  2029. end , function()
  2030. MarcoUI:_Animation(ToggleValue,rep.Tween,{
  2031. Size = UDim2.new(0.550000012, 0, 0.550000012, 0)
  2032. })
  2033. end);
  2034.  
  2035. local ToggleUI = function(bool)
  2036. if bool then
  2037. ToggleElement(Default,true);
  2038.  
  2039. MarcoUI:_Animation(ToggleValue,rep.Tween,{
  2040. BackgroundTransparency = 0
  2041. })
  2042.  
  2043. MarcoUI:_Animation(Toggle,rep.Tween,{
  2044. BackgroundTransparency = 0
  2045. })
  2046.  
  2047. MarcoUI:_Animation(UIStroke,rep.Tween,{
  2048. Transparency = 0
  2049. })
  2050. else
  2051. ToggleElement(false,true);
  2052.  
  2053. MarcoUI:_Animation(ToggleValue,rep.Tween,{
  2054. BackgroundTransparency = 1
  2055. })
  2056.  
  2057. MarcoUI:_Animation(Toggle,rep.Tween,{
  2058. BackgroundTransparency = 1
  2059. })
  2060.  
  2061. MarcoUI:_Animation(UIStroke,rep.Tween,{
  2062. Transparency = 1
  2063. })
  2064. end;
  2065. end;
  2066.  
  2067. ToggleElement(Default);
  2068.  
  2069. Signal:Connect(ToggleUI)
  2070.  
  2071. return {
  2072. Root = Toggle,
  2073. ChangeValue = ToggleElement,
  2074. Input = Input,
  2075. ToggleUI = ToggleUI,
  2076. };
  2077. elseif Name == "ColorPicker" then
  2078. local ColorPicker = Instance.new("Frame")
  2079. local ColorFrame = Instance.new("Frame")
  2080. local UIScale = Instance.new("UIScale")
  2081. local UIStroke = Instance.new("UIStroke")
  2082. local UICorner = Instance.new("UICorner")
  2083.  
  2084. ColorPicker.Name = MarcoUI:_RandomString()
  2085. ColorPicker.Parent = LinkValues
  2086. ColorPicker.BackgroundTransparency = 1.000
  2087. ColorPicker.BorderColor3 = Color3.fromRGB(0, 0, 0)
  2088. ColorPicker.BorderSizePixel = 0
  2089. ColorPicker.Size = UDim2.new(0, 16, 0, 16)
  2090. ColorPicker.ZIndex = GlobalBlock.ZIndex + 1
  2091. ColorPicker.LayoutOrder = -#LinkValues:GetChildren();
  2092.  
  2093. ColorFrame.Name = MarcoUI:_RandomString()
  2094. ColorFrame.Parent = ColorPicker
  2095. ColorFrame.AnchorPoint = Vector2.new(0.5, 0.5)
  2096. ColorFrame.BackgroundColor3 = Color3.fromRGB(15, 255, 207)
  2097. ColorFrame.BorderColor3 = Color3.fromRGB(0, 0, 0)
  2098. ColorFrame.BorderSizePixel = 0
  2099. ColorFrame.Position = UDim2.new(0.5, 0, 0.5, 0)
  2100. ColorFrame.Size = UDim2.new(1, -1, 1, -1)
  2101. ColorFrame.ZIndex = GlobalBlock.ZIndex + 1
  2102.  
  2103. UIScale.Parent = ColorFrame
  2104.  
  2105. UIStroke.Color = MarcoUI.Colors.HighStrokeColor
  2106. UIStroke.Parent = ColorFrame
  2107.  
  2108. table.insert(MarcoUI.Elements.HighStrokeColor,{
  2109. Element = UIStroke,
  2110. Property = "Color"
  2111. })
  2112.  
  2113. UICorner.CornerRadius = UDim.new(0, 3)
  2114. UICorner.Parent = ColorFrame
  2115.  
  2116. Signal:Connect(function(bool)
  2117. if bool then
  2118. MarcoUI:_Animation(ColorFrame,TweenInfo.new(0.15),{
  2119. BackgroundTransparency = 0,
  2120. })
  2121.  
  2122. MarcoUI:_Animation(UIStroke,TweenInfo.new(0.15),{
  2123. Transparency = 0,
  2124. })
  2125. else
  2126. MarcoUI:_Animation(ColorFrame,TweenInfo.new(0.15),{
  2127. BackgroundTransparency = 1,
  2128. })
  2129.  
  2130. MarcoUI:_Animation(UIStroke,TweenInfo.new(0.15),{
  2131. Transparency = 1,
  2132. })
  2133. end;
  2134. end)
  2135.  
  2136. MarcoUI:_Hover(ColorPicker, function()
  2137. if Signal:GetValue() then
  2138. MarcoUI:_Animation(UIScale,TweenInfo.new(0.35),{
  2139. Scale = 1.2
  2140. })
  2141. end;
  2142. end , function()
  2143. if Signal:GetValue() then
  2144. MarcoUI:_Animation(UIScale,TweenInfo.new(0.35),{
  2145. Scale = 1
  2146. })
  2147. end;
  2148. end)
  2149.  
  2150. return ColorPicker , ColorFrame;
  2151. elseif Name == "Keybind" then
  2152. local Keys = {
  2153. One = '1',
  2154. Two = '2',
  2155. Three = '3',
  2156. Four = '4',
  2157. Five = '5',
  2158. Six = '6',
  2159. Seven = '7',
  2160. Eight = '8',
  2161. Nine = '9',
  2162. Zero = '0',
  2163. ['Minus'] = "-",
  2164. ['Plus'] = "+",
  2165. BackSlash = "\\",
  2166. Slash = "/",
  2167. Period = '.',
  2168. Semicolon = ';',
  2169. Colon = ":",
  2170. LeftControl = "LCtrl",
  2171. RightControl = "RCtrl",
  2172. LeftShift = "LShift",
  2173. RightShift = "RShift",
  2174. Return = "Enter",
  2175. LeftBracket = "[",
  2176. RightBracket = "]",
  2177. Quote = "'",
  2178. Comma = ",",
  2179. Equals = "=",
  2180. LeftSuper = "Super",
  2181. RightSuper = "Super",
  2182. LeftAlt = "LAlt",
  2183. RightAlt = "RAlt",
  2184. Escape = "Esc",
  2185. };
  2186.  
  2187. local GetItem = function(item)
  2188. if item then
  2189. if typeof(item) == 'EnumItem' then
  2190. return Keys[item.Name] or item.Name;
  2191. else
  2192. return Keys[tostring(item)] or tostring(item);
  2193. end;
  2194. else
  2195. return 'None';
  2196. end;
  2197. end;
  2198.  
  2199. local Keybind = Instance.new("Frame")
  2200. local UICorner = Instance.new("UICorner")
  2201. local UIStroke = Instance.new("UIStroke")
  2202. local TextLabel = Instance.new("TextLabel")
  2203.  
  2204. Keybind.Name = MarcoUI:_RandomString()
  2205. Keybind.Parent = LinkValues
  2206. Keybind.BackgroundColor3 = MarcoUI.Colors.DropColor
  2207. Keybind.BackgroundTransparency = 0.8
  2208. Keybind.BorderColor3 = Color3.fromRGB(0, 0, 0)
  2209. Keybind.BorderSizePixel = 0
  2210. Keybind.Size = UDim2.new(0, 45, 0, 16)
  2211. Keybind.ZIndex = GlobalBlock.ZIndex + 2
  2212. Keybind.ClipsDescendants = true
  2213. Keybind.LayoutOrder = -#LinkValues:GetChildren();
  2214.  
  2215.  
  2216. table.insert(MarcoUI.Elements.DropColor , {
  2217. Element = Keybind,
  2218. Property = "BackgroundColor3"
  2219. })
  2220.  
  2221. UICorner.CornerRadius = UDim.new(0, 3)
  2222. UICorner.Parent = Keybind
  2223.  
  2224. UIStroke.Color = MarcoUI.Colors.HighStrokeColor
  2225. UIStroke.Parent = Keybind
  2226.  
  2227. table.insert(MarcoUI.Elements.HighStrokeColor,{
  2228. Element = UIStroke,
  2229. Property = "Color"
  2230. })
  2231.  
  2232. TextLabel.Parent = Keybind
  2233. TextLabel.AnchorPoint = Vector2.new(0.5, 0.5)
  2234. TextLabel.BackgroundTransparency = 1.000
  2235. TextLabel.BorderColor3 = Color3.fromRGB(0, 0, 0)
  2236. TextLabel.BorderSizePixel = 0
  2237. TextLabel.Position = UDim2.new(0.5, 0, 0.5, 0)
  2238. TextLabel.Size = UDim2.new(1, -5, 1, -5)
  2239. TextLabel.ZIndex = GlobalBlock.ZIndex + 3
  2240. TextLabel.Font = Enum.Font.Gotham
  2241. TextLabel.Text = GetItem(Default or "None");
  2242. TextLabel.TextColor3 = MarcoUI.Colors.SwitchColor
  2243. TextLabel.TextSize = 12.000
  2244. TextLabel.TextTransparency = 0.200
  2245.  
  2246. table.insert(MarcoUI.Elements.SwitchColor,{
  2247. Element = TextLabel,
  2248. Property = "TextColor3"
  2249. });
  2250.  
  2251. local Update = function()
  2252. local size = TextService:GetTextSize(TextLabel.Text,TextLabel.TextSize,TextLabel.Font,Vector2.new(math.huge,math.huge));
  2253.  
  2254. MarcoUI:_Animation(Keybind,TweenInfo.new(0.1),{
  2255. Size = UDim2.new(0, size.X + 5, 0, 16)
  2256. });
  2257. end;
  2258.  
  2259. Update();
  2260.  
  2261. local ToggleUI = function(bool)
  2262. if bool then
  2263. MarcoUI:_Animation(Keybind,rep.Tween,{
  2264. BackgroundTransparency = 0.8
  2265. })
  2266.  
  2267. MarcoUI:_Animation(UIStroke,rep.Tween,{
  2268. Transparency = 0
  2269. })
  2270.  
  2271. MarcoUI:_Animation(TextLabel,rep.Tween,{
  2272. TextTransparency = 0.200
  2273. })
  2274. else
  2275. MarcoUI:_Animation(Keybind,rep.Tween,{
  2276. BackgroundTransparency = 1
  2277. })
  2278.  
  2279. MarcoUI:_Animation(UIStroke,rep.Tween,{
  2280. Transparency = 1
  2281. })
  2282.  
  2283. MarcoUI:_Animation(TextLabel,rep.Tween,{
  2284. TextTransparency = 1
  2285. })
  2286. end;
  2287. end;
  2288.  
  2289. Signal:Connect(ToggleUI);
  2290.  
  2291. return {
  2292. SetValue = function(text)
  2293. TextLabel.Text = GetItem(text or "None");
  2294.  
  2295. Update();
  2296. end,
  2297. Root = Keybind,
  2298. };
  2299. elseif Name == "Helper" then
  2300. local InfoButton = Instance.new("ImageButton")
  2301. local UICorner = Instance.new("UICorner")
  2302. local BlockText = Instance.new("TextLabel")
  2303. local UIStroke = Instance.new("UIStroke")
  2304. local UICorner_2 = Instance.new("UICorner")
  2305.  
  2306. InfoButton.Name = MarcoUI:_RandomString()
  2307. InfoButton.Parent = LinkValues
  2308. InfoButton.BackgroundTransparency = 1.000
  2309. InfoButton.BorderColor3 = Color3.fromRGB(0, 0, 0)
  2310. InfoButton.BorderSizePixel = 0
  2311. InfoButton.LayoutOrder = -#LinkValues:GetChildren();
  2312. InfoButton.Size = UDim2.new(0, 15, 0, 15)
  2313. InfoButton.ZIndex = GlobalBlock.ZIndex + 25
  2314. InfoButton.Image = MarcoUI:CacheImage("rbxassetid://10723415903")
  2315. InfoButton.ImageTransparency = 0.500
  2316.  
  2317. UICorner.CornerRadius = UDim.new(1, 0)
  2318. UICorner.Parent = InfoButton
  2319.  
  2320. BlockText.Name = MarcoUI:_RandomString()
  2321. BlockText.Parent = InfoButton
  2322. BlockText.AnchorPoint = Vector2.new(0, 0)
  2323. BlockText.BackgroundColor3 = MarcoUI.Colors.BlockColor
  2324.  
  2325. table.insert(MarcoUI.Elements.BlockColor , {
  2326. Element = BlockText,
  2327. Property = "BackgroundColor3"
  2328. });
  2329.  
  2330. BlockText.BorderColor3 = Color3.fromRGB(0, 0, 0)
  2331. BlockText.BorderSizePixel = 0
  2332. BlockText.Position = UDim2.new(0, 5, 0, 0)
  2333. BlockText.Size = UDim2.new(0, 250, 0, 15)
  2334. BlockText.ZIndex = GlobalBlock.ZIndex + 26
  2335. BlockText.Font = Enum.Font.GothamMedium
  2336. BlockText.Text = " "
  2337. BlockText.TextColor3 = MarcoUI.Colors.SwitchColor
  2338. BlockText.TextSize = 13.000
  2339. BlockText.TextTransparency = 0.300
  2340. BlockText.TextXAlignment = Enum.TextXAlignment.Left
  2341.  
  2342. table.insert(MarcoUI.Elements.SwitchColor,{
  2343. Element = BlockText,
  2344. Property = "TextColor3"
  2345. });
  2346.  
  2347. UIStroke.Color = MarcoUI.Colors.StrokeColor
  2348. UIStroke.ApplyStrokeMode = Enum.ApplyStrokeMode.Border
  2349. UIStroke.Parent = BlockText
  2350.  
  2351. table.insert(MarcoUI.Elements.StrokeColor,{
  2352. Element = UIStroke,
  2353. Property = "Color"
  2354. });
  2355.  
  2356. UICorner_2.CornerRadius = UDim.new(0, 3)
  2357. UICorner_2.Parent = BlockText
  2358.  
  2359. Signal:Connect(function(bool)
  2360. if bool then
  2361. MarcoUI:_Animation(InfoButton,TweenInfo.new(0.15),{
  2362. ImageTransparency = 0.500
  2363. })
  2364. else
  2365. MarcoUI:_Animation(InfoButton,TweenInfo.new(0.15),{
  2366. ImageTransparency = 1
  2367. })
  2368. end;
  2369. end)
  2370.  
  2371. MarcoUI:_Hover(InfoButton, function()
  2372. if Signal:GetValue() then
  2373. MarcoUI:_Animation(InfoButton,TweenInfo.new(0.15),{
  2374. ImageTransparency = 0.1
  2375. })
  2376. end;
  2377. end , function()
  2378. if Signal:GetValue() then
  2379. MarcoUI:_Animation(InfoButton,TweenInfo.new(0.15),{
  2380. ImageTransparency = 0.500
  2381. })
  2382. end;
  2383. end)
  2384.  
  2385. return {
  2386. Text = BlockText,
  2387. UIStroke = UIStroke,
  2388. InfoButton = InfoButton,
  2389. };
  2390. elseif Name == "Option" then
  2391. local OptionButton = Instance.new("ImageButton")
  2392. local UICorner = Instance.new("UICorner")
  2393.  
  2394. OptionButton.Name = MarcoUI:_RandomString()
  2395. OptionButton.Parent = LinkValues
  2396. OptionButton.BackgroundTransparency = 1.000
  2397. OptionButton.BorderColor3 = Color3.fromRGB(0, 0, 0)
  2398. OptionButton.BorderSizePixel = 0
  2399. OptionButton.Size = UDim2.new(0, 15, 0, 15)
  2400. OptionButton.ZIndex = GlobalBlock.ZIndex + 2
  2401. OptionButton.Image = MarcoUI:CacheImage("rbxassetid://14007344336")
  2402. OptionButton.ImageTransparency = 0.500
  2403. OptionButton.LayoutOrder = -#LinkValues:GetChildren();
  2404.  
  2405. UICorner.CornerRadius = UDim.new(1, 0)
  2406. UICorner.Parent = OptionButton
  2407.  
  2408. Signal:Connect(function(bool)
  2409. if bool then
  2410. MarcoUI:_Animation(OptionButton,TweenInfo.new(0.15),{
  2411. ImageTransparency = 0.500
  2412. })
  2413. else
  2414. MarcoUI:_Animation(OptionButton,TweenInfo.new(0.15),{
  2415. ImageTransparency = 1
  2416. })
  2417. end;
  2418. end)
  2419.  
  2420. MarcoUI:_Hover(OptionButton, function()
  2421. if Signal:GetValue() then
  2422. MarcoUI:_Animation(OptionButton,TweenInfo.new(0.15),{
  2423. ImageTransparency = 0.1
  2424. })
  2425. end;
  2426. end , function()
  2427. if Signal:GetValue() then
  2428. MarcoUI:_Animation(OptionButton,TweenInfo.new(0.15),{
  2429. ImageTransparency = 0.500
  2430. })
  2431. end;
  2432. end)
  2433.  
  2434. return OptionButton;
  2435. end;
  2436. end;
  2437.  
  2438. function MarcoUI:_CreateBlock(Signal)
  2439. local GlobalBlock = Instance.new("Frame")
  2440. local BlockText = Instance.new("TextLabel")
  2441. local LinkValues = Instance.new("Frame")
  2442. local UIListLayout = Instance.new("UIListLayout")
  2443. local BlockLine = Instance.new("Frame")
  2444.  
  2445. if MarcoUI:_IsMobile() then
  2446. MarcoUI:_AddDragBlacklist(GlobalBlock);
  2447. end;
  2448.  
  2449. GlobalBlock.Name = MarcoUI:_RandomString()
  2450. GlobalBlock.BackgroundTransparency = 1.000
  2451. GlobalBlock.BorderColor3 = Color3.fromRGB(0, 0, 0)
  2452. GlobalBlock.BorderSizePixel = 0
  2453. GlobalBlock.Size = UDim2.new(1, -1, 0, 30)
  2454. GlobalBlock.ZIndex = 10
  2455.  
  2456. BlockText.Name = MarcoUI:_RandomString()
  2457. BlockText.Parent = GlobalBlock
  2458. BlockText.AnchorPoint = Vector2.new(0, 0.5)
  2459. BlockText.BackgroundTransparency = 1.000
  2460. BlockText.BorderColor3 = Color3.fromRGB(0, 0, 0)
  2461. BlockText.BorderSizePixel = 0
  2462. BlockText.Position = UDim2.new(0, 12, 0.5, 0)
  2463. BlockText.Size = UDim2.new(1, -20, 0, 25)
  2464. BlockText.ZIndex = 10
  2465. BlockText.Font = Enum.Font.GothamMedium
  2466. BlockText.Text = "Block"
  2467. BlockText.TextColor3 = MarcoUI.Colors.SwitchColor
  2468. BlockText.TextSize = 14.000
  2469. BlockText.TextTransparency = 0.300
  2470. BlockText.TextXAlignment = Enum.TextXAlignment.Left
  2471.  
  2472. table.insert(MarcoUI.Elements.SwitchColor , {
  2473. Element = BlockText,
  2474. Property = 'TextColor3'
  2475. });
  2476.  
  2477. LinkValues.Name = MarcoUI:_RandomString()
  2478. LinkValues.Parent = GlobalBlock
  2479. LinkValues.AnchorPoint = Vector2.new(1, 0.540000021)
  2480. LinkValues.BackgroundTransparency = 1.000
  2481. LinkValues.BorderColor3 = Color3.fromRGB(0, 0, 0)
  2482. LinkValues.BorderSizePixel = 0
  2483. LinkValues.Position = UDim2.new(1, -12, 0.5, 0)
  2484. LinkValues.Size = UDim2.new(1, 0, 0, 18)
  2485. LinkValues.ZIndex = 11
  2486.  
  2487. UIListLayout.Parent = LinkValues
  2488. UIListLayout.FillDirection = Enum.FillDirection.Horizontal
  2489. UIListLayout.HorizontalAlignment = Enum.HorizontalAlignment.Right
  2490. UIListLayout.SortOrder = Enum.SortOrder.LayoutOrder
  2491. UIListLayout.VerticalAlignment = Enum.VerticalAlignment.Center
  2492. UIListLayout.Padding = UDim.new(0, 8)
  2493.  
  2494. BlockLine.Name = MarcoUI:_RandomString()
  2495. BlockLine.Parent = GlobalBlock
  2496. BlockLine.AnchorPoint = Vector2.new(0.5, 1)
  2497. BlockLine.BackgroundColor3 = MarcoUI.Colors.LineColor
  2498. BlockLine.BackgroundTransparency = 0.500
  2499. BlockLine.BorderColor3 = Color3.fromRGB(0, 0, 0)
  2500. BlockLine.BorderSizePixel = 0
  2501. BlockLine.Position = UDim2.new(0.5, 0, 1, 0)
  2502. BlockLine.Size = UDim2.new(1, -26, 0, 1)
  2503. BlockLine.ZIndex = 12
  2504.  
  2505. table.insert(MarcoUI.Elements.LineColor,{
  2506. Element = BlockLine,
  2507. Property = "BackgroundColor3"
  2508. });
  2509.  
  2510. local rep = {
  2511. TextTransparency = 0.300,
  2512. Root = GlobalBlock,
  2513. Tween = TweenInfo.new(0.25),
  2514. };
  2515.  
  2516. function rep:SetText(Text)
  2517. BlockText.Text = Text;
  2518. end;
  2519.  
  2520. function rep:GetText()
  2521. return BlockText.Text;
  2522. end;
  2523.  
  2524. function rep:SetTextColor(Color)
  2525. local oldIndex = table.find(MarcoUI.Elements.SwitchColor , BlockText);
  2526.  
  2527. table.remove(MarcoUI.Elements.SwitchColor , oldIndex);
  2528.  
  2529. BlockText.TextColor3 = Color;
  2530.  
  2531. table.insert(MarcoUI.Elements.Risky , {
  2532. Element = BlockText,
  2533. Property = 'TextColor3'
  2534. });
  2535.  
  2536. end;
  2537.  
  2538. function rep:SetLine(visible)
  2539. BlockLine.Visible = visible;
  2540.  
  2541. if not visible then
  2542. BlockLine.Parent = nil;
  2543. else
  2544. BlockLine.Parent = rep.Root;
  2545. end;
  2546. end;
  2547.  
  2548. function rep:SetTransparency(num)
  2549. rep.TextTransparency = num;
  2550.  
  2551. MarcoUI:_Animation(BlockText,TweenInfo.new(0.3),{
  2552. TextTransparency = rep.TextTransparency
  2553. });
  2554. end;
  2555.  
  2556. function rep:SetParent(parent: Frame)
  2557. GlobalBlock.Parent = parent;
  2558.  
  2559. local ZINDEX = parent.ZIndex;
  2560.  
  2561. GlobalBlock.ZIndex = ZINDEX + 1;
  2562. BlockText.ZIndex = ZINDEX + 2;
  2563. LinkValues.ZIndex = ZINDEX + 2;
  2564. BlockLine.ZIndex = ZINDEX + 2;
  2565. end;
  2566.  
  2567. function rep:SetVisible(bool)
  2568. if bool then
  2569. MarcoUI:_Animation(BlockText,rep.Tween,{
  2570. TextTransparency = rep.TextTransparency
  2571. });
  2572.  
  2573. MarcoUI:_Animation(BlockLine,rep.Tween,{
  2574. BackgroundTransparency = 0.500
  2575. });
  2576. else
  2577. MarcoUI:_Animation(BlockText,rep.Tween,{
  2578. TextTransparency = 1
  2579. });
  2580.  
  2581. MarcoUI:_Animation(BlockLine,rep.Tween,{
  2582. BackgroundTransparency = 1
  2583. });
  2584. end;
  2585. end;
  2586.  
  2587. function rep:AddLink(Name , Default)
  2588. return MarcoUI:_AddLinkValue(Name , Default , GlobalBlock , LinkValues , rep , Signal);
  2589. end;
  2590.  
  2591. return rep;
  2592. end;
  2593.  
  2594. MarcoUI.Hash = function(str: string)
  2595. if typeof(str) ~= "string" then
  2596. return "ck-unknow";
  2597. end;
  2598.  
  2599. local hex = #str;
  2600.  
  2601. string.gsub(str,'.',function(byte)
  2602. hex += byte:byte() + #str;
  2603. end);
  2604.  
  2605. local dh = string.match(str,'%d+');
  2606.  
  2607. return "ck-"..tostring(math.round(hex + 15))..tostring(dh);
  2608. end;
  2609.  
  2610. function MarcoUI:CacheImage(id: string) : string
  2611. if not MarcoUI.SecureMode or not id or not id:byte() then
  2612. return id or "";
  2613. end;
  2614.  
  2615. assert(MarcoUI.SecureMode , "please use MarcoUI:Security(< string >) before cache image")
  2616. assert(MarcoUI.CacheDirectory , "please use MarcoUI:Security(< string >) before cache image")
  2617.  
  2618. local ids = string.match(id , "%d+");
  2619.  
  2620. if ids == nil then
  2621. return id;
  2622. end;
  2623.  
  2624. local Hash = MarcoUI.Hash(id);
  2625.  
  2626. local cache_path = string.format("%s/cache-%s.png" ,MarcoUI.CacheDirectory , Hash);
  2627.  
  2628. if isfile(cache_path) then
  2629. return (getcustomasset or getsynasset or function() return ''; end)(cache_path);
  2630. end;
  2631.  
  2632. local imgSize = MarcoUI.SecurityConfig.ImageScale;
  2633.  
  2634. local imagesize = (imgSize and string.format("%sx%s", tostring(math.round(imgSize)), tostring(math.round(imgSize)))) or "150x150"
  2635.  
  2636. if imagesize == nil then
  2637. return ''
  2638. end;
  2639.  
  2640. local endpoint = string.format(
  2641. "https://thumbnails.roblox.com/v1/assets?assetIds=%s&size=%s&format=Png&isCircular=false",
  2642. ids,
  2643. imagesize
  2644. );
  2645.  
  2646. local json = game:HttpGet(endpoint);
  2647.  
  2648. local JSON_Decode = select(2, pcall(function()
  2649. return HttpService:JSONDecode(json);
  2650. end));
  2651.  
  2652. if typeof(JSON_Decode) == "table" and JSON_Decode and JSON_Decode.data and JSON_Decode.data[1] and JSON_Decode.data[1].imageUrl and JSON_Decode.data[1].state == "Completed" then task.wait()
  2653. local en = JSON_Decode.data[1].imageUrl;
  2654.  
  2655. writefile(cache_path , game:HttpGet(en));
  2656.  
  2657. task.wait();
  2658.  
  2659. return (getcustomasset or getsynasset or function() return ''; end)(cache_path);
  2660. end;
  2661.  
  2662. return "";
  2663. end;
  2664.  
  2665. function MarcoUI:PreloadIcons()
  2666. local RequiredAssets = {
  2667. "http://www.roblox.com/asset/?id=112554223509763",
  2668. "rbxassetid://4805639000",
  2669. "rbxassetid://6198493000",
  2670. "rbxassetid://10709790948",
  2671. "rbxassetid://18518299306",
  2672. "rbxassetid://10747362393",
  2673. "rbxassetid://18720640102",
  2674. "rbxassetid://10723344270",
  2675. "rbxassetid://109535175596957",
  2676. "rbxassetid://10747384394",
  2677. "rbxassetid://10734941499",
  2678. MarcoUI.Logo,
  2679. };
  2680.  
  2681. if MarcoUI.SecureMode then
  2682. for i,v in next , RequiredAssets do task.wait()
  2683. pcall(function()
  2684. MarcoUI:CacheImage(v);
  2685. end);
  2686. end;
  2687. else
  2688. local ContentProvider: ContentProvider = cloneref(game:GetService('ContentProvider'));
  2689.  
  2690. for i,v in next , RequiredAssets do
  2691. ContentProvider:Preload(v);
  2692. end;
  2693. end;
  2694. end;
  2695.  
  2696. function MarcoUI:Security(directory: string,Config: SecurityConfig) -- Security Mode
  2697. directory = directory or "MarcoUI-Cache";
  2698.  
  2699. if not isfolder(directory) then
  2700. makefolder(directory);
  2701. end;
  2702.  
  2703. MarcoUI.SecureMode = true;
  2704.  
  2705. MarcoUI.SecurityConfig = Config or {};
  2706.  
  2707. MarcoUI.CacheDirectory = directory;
  2708. end;
  2709.  
  2710. function MarcoUI:_AddColorPickerPanel(Button: ImageButton , Callback: (Color: Color3) -> any?)
  2711. local Window = MarcoUI:_GetWindowFromElement(Button);
  2712. local BaseZ_Index = math.random(1,15) * 100;
  2713.  
  2714. local ColorPickerWindow = Instance.new("Frame")
  2715. local UIStroke = Instance.new("UIStroke")
  2716. local UICorner = Instance.new("UICorner")
  2717. local ColorPickBox = Instance.new("ImageLabel")
  2718. local MouseMovement = Instance.new("ImageLabel")
  2719. local UICorner_2 = Instance.new("UICorner")
  2720. local UIStroke_2 = Instance.new("UIStroke")
  2721. local ColorRedGreenBlue = Instance.new("Frame")
  2722. local UIGradient = Instance.new("UIGradient")
  2723. local UICorner_3 = Instance.new("UICorner")
  2724. local ColorRGBSlide = Instance.new("Frame")
  2725. local Left = Instance.new("Frame")
  2726. local UIStroke_3 = Instance.new("UIStroke")
  2727. local Right = Instance.new("Frame")
  2728. local UIStroke_4 = Instance.new("UIStroke")
  2729. local ColorOpc = Instance.new("Frame")
  2730. local UICorner_4 = Instance.new("UICorner")
  2731. local ColorOptSlide = Instance.new("Frame")
  2732. local Left_2 = Instance.new("Frame")
  2733. local UIStroke_5 = Instance.new("UIStroke")
  2734. local Right_2 = Instance.new("Frame")
  2735. local UIStroke_6 = Instance.new("UIStroke")
  2736. local UIGradient_2 = Instance.new("UIGradient")
  2737. local UIStroke_7 = Instance.new("UIStroke")
  2738. local TransparentImage = Instance.new("ImageLabel")
  2739. local UICorner_5 = Instance.new("UICorner")
  2740. local HexFrame = Instance.new("Frame")
  2741. local UICorner_6 = Instance.new("UICorner")
  2742. local UIStroke_8 = Instance.new("UIStroke")
  2743. local TextLabel = Instance.new("TextLabel")
  2744.  
  2745. ColorPickerWindow.Name = MarcoUI:_RandomString()
  2746. ColorPickerWindow.Parent = Window
  2747. ColorPickerWindow.BackgroundColor3 = MarcoUI.Colors.BlockBackground
  2748. ColorPickerWindow.BorderColor3 = Color3.fromRGB(0, 0, 0)
  2749. ColorPickerWindow.BorderSizePixel = 0
  2750. ColorPickerWindow.Position = UDim2.new(123, 0, 123, 0)
  2751. ColorPickerWindow.Size = UDim2.new(0, 175, 0, 200)
  2752. ColorPickerWindow.ZIndex = BaseZ_Index
  2753. ColorPickerWindow.AnchorPoint = Vector2.new(0.5,0)
  2754. ColorPickerWindow.Active = true;
  2755.  
  2756. table.insert(MarcoUI.Elements.BlockBackground,{
  2757. Element = ColorPickerWindow,
  2758. Property = "BackgroundColor3"
  2759. });
  2760.  
  2761. MarcoUI:_AddDragBlacklist(ColorPickerWindow)
  2762.  
  2763. UIStroke.Color = MarcoUI.Colors.HighStrokeColor
  2764. UIStroke.Parent = ColorPickerWindow
  2765.  
  2766. table.insert(MarcoUI.Elements.HighStrokeColor , {
  2767. Element = UIStroke,
  2768. Property = "Color"
  2769. })
  2770.  
  2771. UICorner.CornerRadius = UDim.new(0, 6)
  2772. UICorner.Parent = ColorPickerWindow
  2773.  
  2774. ColorPickBox.Name = MarcoUI:_RandomString()
  2775. ColorPickBox.Parent = ColorPickerWindow
  2776. ColorPickBox.BackgroundColor3 = Color3.fromRGB(39, 255, 35)
  2777. ColorPickBox.BorderColor3 = Color3.fromRGB(0, 0, 0)
  2778. ColorPickBox.BorderSizePixel = 0
  2779. ColorPickBox.Position = UDim2.new(0, 7, 0, 7)
  2780. ColorPickBox.Size = UDim2.new(0, 145, 0, 145)
  2781. ColorPickBox.ZIndex = BaseZ_Index + 1
  2782. ColorPickBox.Image = MarcoUI:CacheImage("http://www.roblox.com/asset/?id=112554223509763");
  2783.  
  2784. MouseMovement.Name = MarcoUI:_RandomString()
  2785. MouseMovement.Parent = ColorPickBox
  2786. MouseMovement.BackgroundColor3 = Color3.fromRGB(255, 255, 255)
  2787. MouseMovement.BackgroundTransparency = 1.000
  2788. MouseMovement.BorderColor3 = Color3.fromRGB(0, 0, 0)
  2789. MouseMovement.BorderSizePixel = 0
  2790. MouseMovement.Position = UDim2.new(0.822222233, 0, 0.0592592582, 0)
  2791. MouseMovement.Size = UDim2.new(0, 12, 0, 12)
  2792. MouseMovement.ZIndex = BaseZ_Index + 5
  2793. MouseMovement.AnchorPoint = Vector2.new(0.5,0.5)
  2794. MouseMovement.Image = MarcoUI:CacheImage("rbxassetid://4805639000")
  2795.  
  2796. UICorner_2.CornerRadius = UDim.new(0, 2)
  2797. UICorner_2.Parent = ColorPickBox
  2798.  
  2799. UIStroke_2.Color = Color3.fromRGB(29, 29, 29)
  2800. UIStroke_2.Parent = ColorPickBox
  2801.  
  2802. ColorRedGreenBlue.Name = MarcoUI:_RandomString()
  2803. ColorRedGreenBlue.Parent = ColorPickerWindow
  2804. ColorRedGreenBlue.AnchorPoint = Vector2.new(1, 0)
  2805. ColorRedGreenBlue.BackgroundColor3 = Color3.fromRGB(255, 255, 255)
  2806. ColorRedGreenBlue.BorderColor3 = Color3.fromRGB(0, 0, 0)
  2807. ColorRedGreenBlue.BorderSizePixel = 0
  2808. ColorRedGreenBlue.ClipsDescendants = true
  2809. ColorRedGreenBlue.Position = UDim2.new(1, -7, 0, 7)
  2810. ColorRedGreenBlue.Size = UDim2.new(0, 10, 0, 145)
  2811. ColorRedGreenBlue.ZIndex = BaseZ_Index + 6
  2812.  
  2813. UIGradient.Color = ColorSequence.new{ColorSequenceKeypoint.new(0.00, Color3.fromRGB(255, 0, 0)), ColorSequenceKeypoint.new(0.10, Color3.fromRGB(255, 153, 0)), ColorSequenceKeypoint.new(0.20, Color3.fromRGB(203, 255, 0)), ColorSequenceKeypoint.new(0.30, Color3.fromRGB(50, 255, 0)), ColorSequenceKeypoint.new(0.40, Color3.fromRGB(0, 255, 102)), ColorSequenceKeypoint.new(0.50, Color3.fromRGB(0, 255, 255)), ColorSequenceKeypoint.new(0.60, Color3.fromRGB(0, 101, 255)), ColorSequenceKeypoint.new(0.70, Color3.fromRGB(50, 0, 255)), ColorSequenceKeypoint.new(0.80, Color3.fromRGB(204, 0, 255)), ColorSequenceKeypoint.new(0.90, Color3.fromRGB(255, 0, 153)), ColorSequenceKeypoint.new(1.00, Color3.fromRGB(255, 0, 0))}
  2814. UIGradient.Rotation = 90
  2815. UIGradient.Parent = ColorRedGreenBlue
  2816.  
  2817. UICorner_3.CornerRadius = UDim.new(1, 0)
  2818. UICorner_3.Parent = ColorRedGreenBlue
  2819.  
  2820. ColorRGBSlide.Name = MarcoUI:_RandomString()
  2821. ColorRGBSlide.Parent = ColorRedGreenBlue
  2822. ColorRGBSlide.AnchorPoint = Vector2.new(0.5, 0)
  2823. ColorRGBSlide.BackgroundColor3 = Color3.fromRGB(255, 255, 255)
  2824. ColorRGBSlide.BackgroundTransparency = 1.000
  2825. ColorRGBSlide.BorderColor3 = Color3.fromRGB(0, 0, 0)
  2826. ColorRGBSlide.BorderSizePixel = 0
  2827. ColorRGBSlide.Position = UDim2.new(0.5, 0, 0.5, 0)
  2828. ColorRGBSlide.Size = UDim2.new(1, 0, 0, 2)
  2829. ColorRGBSlide.ZIndex = BaseZ_Index + 7
  2830.  
  2831. Left.Name = MarcoUI:_RandomString()
  2832. Left.Parent = ColorRGBSlide
  2833. Left.BackgroundColor3 = Color3.fromRGB(255, 255, 255)
  2834. Left.BorderColor3 = Color3.fromRGB(0, 0, 0)
  2835. Left.BorderSizePixel = 0
  2836. Left.Size = UDim2.new(0, 2, 1, 0)
  2837. Left.ZIndex = BaseZ_Index + 100
  2838.  
  2839. UIStroke_3.Parent = Left
  2840.  
  2841. Right.Name = MarcoUI:_RandomString()
  2842. Right.Parent = ColorRGBSlide
  2843. Right.AnchorPoint = Vector2.new(1, 0)
  2844. Right.BackgroundColor3 = Color3.fromRGB(255, 255, 255)
  2845. Right.BorderColor3 = Color3.fromRGB(0, 0, 0)
  2846. Right.BorderSizePixel = 0
  2847. Right.Position = UDim2.new(1, 0, 0, 0)
  2848. Right.Size = UDim2.new(0, 2, 1, 0)
  2849. Right.ZIndex = BaseZ_Index + 100
  2850.  
  2851. UIStroke_4.Parent = Right
  2852.  
  2853. ColorOpc.Name = MarcoUI:_RandomString()
  2854. ColorOpc.Parent = ColorPickerWindow
  2855. ColorOpc.BackgroundColor3 = Color3.fromRGB(102, 255, 0)
  2856. ColorOpc.BorderColor3 = Color3.fromRGB(0, 0, 0)
  2857. ColorOpc.BorderSizePixel = 0
  2858. ColorOpc.Position = UDim2.new(0, 7, 0, 160)
  2859. ColorOpc.Size = UDim2.new(1, -30, 0, 9)
  2860. ColorOpc.ZIndex = BaseZ_Index + 6
  2861.  
  2862. UICorner_4.CornerRadius = UDim.new(1, 0)
  2863. UICorner_4.Parent = ColorOpc
  2864.  
  2865. ColorOptSlide.Name = MarcoUI:_RandomString()
  2866. ColorOptSlide.Parent = ColorOpc
  2867. ColorOptSlide.AnchorPoint = Vector2.new(0, 0.5)
  2868. ColorOptSlide.BackgroundColor3 = Color3.fromRGB(255, 255, 255)
  2869. ColorOptSlide.BackgroundTransparency = 1.000
  2870. ColorOptSlide.BorderColor3 = Color3.fromRGB(0, 0, 0)
  2871. ColorOptSlide.BorderSizePixel = 0
  2872. ColorOptSlide.Position = UDim2.new(0.5, 0, 0.5, 0)
  2873. ColorOptSlide.Size = UDim2.new(0, 2, 1, 0)
  2874. ColorOptSlide.ZIndex = BaseZ_Index + 7
  2875.  
  2876. Left_2.Name = MarcoUI:_RandomString()
  2877. Left_2.Parent = ColorOptSlide
  2878. Left_2.BackgroundColor3 = Color3.fromRGB(255, 255, 255)
  2879. Left_2.BorderColor3 = Color3.fromRGB(0, 0, 0)
  2880. Left_2.BorderSizePixel = 0
  2881. Left_2.Size = UDim2.new(1, 0, 0, 2)
  2882. Left_2.ZIndex = BaseZ_Index + 100
  2883.  
  2884. UIStroke_5.Parent = Left_2
  2885.  
  2886. Right_2.Name = MarcoUI:_RandomString()
  2887. Right_2.Parent = ColorOptSlide
  2888. Right_2.AnchorPoint = Vector2.new(0, 1)
  2889. Right_2.BackgroundColor3 = Color3.fromRGB(255, 255, 255)
  2890. Right_2.BorderColor3 = Color3.fromRGB(0, 0, 0)
  2891. Right_2.BorderSizePixel = 0
  2892. Right_2.Position = UDim2.new(0, 0, 1, 0)
  2893. Right_2.Size = UDim2.new(1, 0, 0, 2)
  2894. Right_2.ZIndex = BaseZ_Index + 100
  2895.  
  2896. UIStroke_6.Parent = Right_2
  2897.  
  2898. UIGradient_2.Transparency = NumberSequence.new{NumberSequenceKeypoint.new(0.00, 0.00), NumberSequenceKeypoint.new(1.00, 1.00)}
  2899. UIGradient_2.Parent = ColorOpc
  2900.  
  2901. UIStroke_7.Transparency = 0.500
  2902. UIStroke_7.Color = Color3.fromRGB(29, 29, 29)
  2903. UIStroke_7.Parent = ColorOpc
  2904.  
  2905. TransparentImage.Name = MarcoUI:_RandomString()
  2906. TransparentImage.Parent = ColorOpc
  2907. TransparentImage.BackgroundTransparency = 1.000
  2908. TransparentImage.BorderColor3 = Color3.fromRGB(0, 0, 0)
  2909. TransparentImage.BorderSizePixel = 0
  2910. TransparentImage.Size = UDim2.new(1, 0, 1, 0)
  2911. TransparentImage.ZIndex = BaseZ_Index + 5
  2912. TransparentImage.Image = MarcoUI:CacheImage("rbxassetid://6198493000")
  2913. TransparentImage.ImageColor3 = Color3.fromRGB(206, 206, 206)
  2914. TransparentImage.ScaleType = Enum.ScaleType.Crop
  2915.  
  2916. UICorner_5.CornerRadius = UDim.new(1, 0)
  2917. UICorner_5.Parent = TransparentImage
  2918.  
  2919. HexFrame.Name = MarcoUI:_RandomString()
  2920. HexFrame.Parent = ColorPickerWindow
  2921. HexFrame.AnchorPoint = Vector2.new(0.5, 1)
  2922. HexFrame.BackgroundColor3 = MarcoUI.Colors.BlockColor
  2923. HexFrame.BorderColor3 = Color3.fromRGB(0, 0, 0)
  2924. HexFrame.BorderSizePixel = 0
  2925. HexFrame.Position = UDim2.new(0.5, 0, 1, -5)
  2926. HexFrame.Size = UDim2.new(1, -16, 0, 20)
  2927. HexFrame.ZIndex = BaseZ_Index + 205
  2928.  
  2929. table.insert(MarcoUI.Elements.BlockColor,{
  2930. Element = HexFrame,
  2931. Property = "BackgroundColor3"
  2932. });
  2933.  
  2934. UICorner_6.CornerRadius = UDim.new(0, 4)
  2935. UICorner_6.Parent = HexFrame
  2936.  
  2937. UIStroke_8.Color = MarcoUI.Colors.HighStrokeColor
  2938. UIStroke_8.Parent = HexFrame
  2939.  
  2940. table.insert(MarcoUI.Elements.HighStrokeColor,{
  2941. Element = UIStroke_8,
  2942. Property = "Color"
  2943. });
  2944.  
  2945. TextLabel.Parent = HexFrame
  2946. TextLabel.AnchorPoint = Vector2.new(0.5, 0.5)
  2947. TextLabel.BackgroundTransparency = 1.000
  2948. TextLabel.BorderColor3 = Color3.fromRGB(0, 0, 0)
  2949. TextLabel.BorderSizePixel = 0
  2950. TextLabel.Position = UDim2.new(0.5, 0, 0.5, 0)
  2951. TextLabel.Size = UDim2.new(1, -10, 1, -5)
  2952. TextLabel.ZIndex = BaseZ_Index + 206
  2953. TextLabel.Font = Enum.Font.Gotham
  2954. TextLabel.Text = "#FFFFFFF"
  2955. TextLabel.TextColor3 = MarcoUI.Colors.SwitchColor
  2956. TextLabel.TextSize = 13.000
  2957. TextLabel.TextXAlignment = Enum.TextXAlignment.Left
  2958.  
  2959. table.insert(MarcoUI.Elements.SwitchColor , {
  2960. Element = TextLabel,
  2961. Property = 'TextColor3'
  2962. });
  2963.  
  2964. local Args = {
  2965. IsHold = false,
  2966. IsVisible = false,
  2967. };
  2968.  
  2969. local Tween = TweenInfo.new(0.2 , Enum.EasingStyle.Quad);
  2970. local Tween2 = TweenInfo.new(0.275 , Enum.EasingStyle.Quad);
  2971.  
  2972. MarcoUI:_AddPropertyEvent(ColorPickerWindow,function(v)
  2973. ColorPickerWindow.Visible = v;
  2974.  
  2975. if MarcoUI.PerformanceMode then
  2976. if ColorPickerWindow.Visible then
  2977. MarcoUI:_SetNilP(ColorPickerWindow , Window);
  2978. else
  2979. MarcoUI:_SetNilP(ColorPickerWindow , nil);
  2980. end;
  2981. else
  2982. MarcoUI:_SetNilP(ColorPickerWindow , Window);
  2983. end;
  2984. end)
  2985.  
  2986. local ToggleUI = function(bool)
  2987. local IsSame = Args.IsVisible == bool;
  2988.  
  2989. Args.IsVisible = bool;
  2990.  
  2991. local MainPosition = UDim2.new(0,Button.AbsolutePosition.X + 95,0,Button.AbsolutePosition.Y + 65);
  2992. local DropPosition = UDim2.new(0,MainPosition.X.Offset,0,MainPosition.Y.Offset + 15);
  2993.  
  2994. local MUL = Window.AbsoluteSize.Y / 2;
  2995.  
  2996. if MainPosition.Y.Offset > MUL then -- go up
  2997. MainPosition = UDim2.fromOffset(Button.AbsolutePosition.X,Button.AbsolutePosition.Y + 45);
  2998. DropPosition = UDim2.fromOffset(MainPosition.X.Offset,MainPosition.Y.Offset - 25);
  2999.  
  3000. ColorPickerWindow.AnchorPoint = Vector2.new(0.5,1)
  3001. else
  3002. ColorPickerWindow.AnchorPoint = Vector2.new(0.5,0)
  3003. end;
  3004.  
  3005. if bool then
  3006.  
  3007. if not IsSame then
  3008. ColorPickerWindow.Position = DropPosition
  3009. end;
  3010.  
  3011. MarcoUI:_Animation(ColorPickerWindow,Tween2,{
  3012. BackgroundTransparency = 0,
  3013. Size = UDim2.new(0, 175, 0, 200)
  3014. });
  3015.  
  3016. MarcoUI:_Animation(ColorPickerWindow,Tween,{
  3017. Position = MainPosition,
  3018. });
  3019.  
  3020. MarcoUI:_Animation(UIStroke_8,Tween,{
  3021. Transparency = 0
  3022. });
  3023.  
  3024. MarcoUI:_Animation(UIStroke_7,Tween,{
  3025. Transparency = 0.5
  3026. });
  3027.  
  3028. MarcoUI:_Animation(UIStroke_6,Tween,{
  3029. Transparency = 0
  3030. });
  3031.  
  3032. MarcoUI:_Animation(UIStroke_5,Tween,{
  3033. Transparency = 0
  3034. });
  3035.  
  3036. MarcoUI:_Animation(UIStroke_4,Tween,{
  3037. Transparency = 0
  3038. });
  3039.  
  3040. MarcoUI:_Animation(UIStroke_3,Tween,{
  3041. Transparency = 0
  3042. });
  3043.  
  3044. MarcoUI:_Animation(UIStroke_2,Tween,{
  3045. Transparency = 0
  3046. });
  3047.  
  3048. MarcoUI:_Animation(UIStroke,Tween,{
  3049. Transparency = 0
  3050. });
  3051.  
  3052. MarcoUI:_Animation(ColorPickBox,Tween,{
  3053. BackgroundTransparency = 0,
  3054. ImageTransparency = 0
  3055. });
  3056.  
  3057. MarcoUI:_Animation(MouseMovement,Tween,{
  3058. ImageTransparency = 0
  3059. });
  3060.  
  3061. MarcoUI:_Animation(ColorOpc,Tween,{
  3062. BackgroundTransparency = 0
  3063. });
  3064.  
  3065. MarcoUI:_Animation(TransparentImage,Tween,{
  3066. ImageTransparency = 0
  3067. });
  3068.  
  3069. MarcoUI:_Animation(Left,Tween,{
  3070. BackgroundTransparency = 0
  3071. });
  3072.  
  3073. MarcoUI:_Animation(Left_2,Tween,{
  3074. BackgroundTransparency = 0
  3075. });
  3076.  
  3077. MarcoUI:_Animation(Right,Tween,{
  3078. BackgroundTransparency = 0
  3079. });
  3080.  
  3081. MarcoUI:_Animation(Right_2,Tween,{
  3082. BackgroundTransparency = 0
  3083. });
  3084.  
  3085. MarcoUI:_Animation(ColorRedGreenBlue,Tween,{
  3086. BackgroundTransparency = 0
  3087. });
  3088.  
  3089. MarcoUI:_Animation(HexFrame,Tween,{
  3090. BackgroundTransparency = 0
  3091. });
  3092.  
  3093. MarcoUI:_Animation(TextLabel,Tween,{
  3094. TextTransparency = 0
  3095. });
  3096. else
  3097. MarcoUI:_Animation(UIStroke_8,Tween,{
  3098. Transparency = 1
  3099. });
  3100.  
  3101. MarcoUI:_Animation(UIStroke_7,Tween,{
  3102. Transparency = 1
  3103. });
  3104.  
  3105. MarcoUI:_Animation(UIStroke_6,Tween,{
  3106. Transparency = 1
  3107. });
  3108.  
  3109. MarcoUI:_Animation(UIStroke_5,Tween,{
  3110. Transparency = 1
  3111. });
  3112.  
  3113. MarcoUI:_Animation(UIStroke_4,Tween,{
  3114. Transparency = 1
  3115. });
  3116.  
  3117. MarcoUI:_Animation(UIStroke_3,Tween,{
  3118. Transparency = 1
  3119. });
  3120.  
  3121. MarcoUI:_Animation(UIStroke_2,Tween,{
  3122. Transparency = 1
  3123. });
  3124.  
  3125. MarcoUI:_Animation(UIStroke,Tween,{
  3126. Transparency = 1
  3127. });
  3128.  
  3129. MarcoUI:_Animation(ColorPickerWindow,Tween2,{
  3130. BackgroundTransparency = 1,
  3131. });
  3132.  
  3133. MarcoUI:_Animation(ColorPickerWindow,Tween,{
  3134. Position = DropPosition,
  3135. });
  3136.  
  3137. MarcoUI:_Animation(ColorPickBox,Tween,{
  3138. BackgroundTransparency = 1,
  3139. ImageTransparency = 1
  3140. });
  3141.  
  3142. MarcoUI:_Animation(MouseMovement,Tween,{
  3143. ImageTransparency = 1
  3144. });
  3145.  
  3146. MarcoUI:_Animation(ColorOpc,Tween,{
  3147. BackgroundTransparency = 1
  3148. });
  3149.  
  3150. MarcoUI:_Animation(TransparentImage,Tween,{
  3151. ImageTransparency = 1
  3152. });
  3153.  
  3154. MarcoUI:_Animation(Left,Tween,{
  3155. BackgroundTransparency = 1
  3156. });
  3157.  
  3158. MarcoUI:_Animation(Left_2,Tween,{
  3159. BackgroundTransparency = 1
  3160. });
  3161.  
  3162. MarcoUI:_Animation(Right,Tween,{
  3163. BackgroundTransparency = 1
  3164. });
  3165.  
  3166. MarcoUI:_Animation(Right_2,Tween,{
  3167. BackgroundTransparency = 1
  3168. });
  3169.  
  3170. MarcoUI:_Animation(ColorRedGreenBlue,Tween,{
  3171. BackgroundTransparency = 1
  3172. });
  3173.  
  3174. MarcoUI:_Animation(HexFrame,Tween,{
  3175. BackgroundTransparency = 1
  3176. });
  3177.  
  3178. MarcoUI:_Animation(TextLabel,Tween,{
  3179. TextTransparency = 1
  3180. });
  3181. end;
  3182. end;
  3183.  
  3184. Button.MouseButton1Click:Connect(function()
  3185. ToggleUI(true);
  3186. end)
  3187.  
  3188. local H , S , V = 0,0,0;
  3189. local Transparency = 0;
  3190.  
  3191. function Args:SetColor(Color: Color3 , TransparencyValue: number)
  3192. H , S , V = Color:ToHSV();
  3193. Transparency = TransparencyValue;
  3194. end;
  3195.  
  3196. function Args:Update()
  3197. local MainColor = Color3.fromHSV(H , S , 1);
  3198. local RealColor = Color3.fromHSV(H , S , V);
  3199.  
  3200. MarcoUI:_Animation(ColorPickBox,TweenInfo.new(0.2),{
  3201. BackgroundColor3 = Color3.fromHSV(H , 1 , 1)
  3202. });
  3203.  
  3204. MarcoUI:_Animation(ColorOpc,TweenInfo.new(0.2),{
  3205. BackgroundColor3 = RealColor
  3206. });
  3207.  
  3208. MarcoUI:_Animation(MouseMovement,TweenInfo.new(0.2),{
  3209. Position = UDim2.fromScale(S , 1 - V)
  3210. });
  3211.  
  3212. MarcoUI:_Animation(ColorOptSlide,TweenInfo.new(0.2),{
  3213. Position = UDim2.new(Transparency ,0 , 0.5 ,0)
  3214. });
  3215.  
  3216. MarcoUI:_Animation(ColorRGBSlide,TweenInfo.new(0.2),{
  3217. Position = UDim2.new(0.5 ,0 , H ,0)
  3218. });
  3219.  
  3220. TextLabel.Text = "#" .. tostring(RealColor:ToHex())
  3221.  
  3222. Callback(RealColor , Transparency);
  3223. end;
  3224.  
  3225. local SPAWN_THREAD;
  3226.  
  3227. -- Find parent section for interaction locking
  3228. local parentSection = Button;
  3229. while parentSection and not parentSection:GetAttribute("IsSection") do
  3230. parentSection = parentSection.Parent;
  3231. if not parentSection or parentSection:IsA("ScreenGui") then
  3232. parentSection = nil;
  3233. break;
  3234. end;
  3235. end;
  3236.  
  3237. ColorPickerWindow.InputBegan:Connect(function(Input)
  3238. if Input.UserInputType == Enum.UserInputType.MouseButton1 or Input.UserInputType == Enum.UserInputType.Touch then
  3239. Args.IsHold = true;
  3240. -- Lock interaction to this section
  3241. if parentSection then
  3242. MarcoUI:_SetInteractionLock(parentSection, true);
  3243. end;
  3244.  
  3245. if SPAWN_THREAD then
  3246. task.cancel(SPAWN_THREAD);
  3247. SPAWN_THREAD = nil;
  3248. end;
  3249.  
  3250. SPAWN_THREAD = task.spawn(function()
  3251. while true do task.wait(0.00001)
  3252. if not Args.IsHold then
  3253. break;
  3254. end;
  3255.  
  3256. Callback(Color3.fromHSV(H , S , V),Transparency);
  3257. end;
  3258. end);
  3259. end;
  3260. end)
  3261.  
  3262. ColorPickerWindow.InputEnded:Connect(function(Input)
  3263. if Input.UserInputType == Enum.UserInputType.MouseButton1 or Input.UserInputType == Enum.UserInputType.Touch then
  3264. Args.IsHold = false;
  3265. -- Unlock interaction
  3266. if parentSection then
  3267. MarcoUI:_SetInteractionLock(parentSection, false);
  3268. end;
  3269.  
  3270. if SPAWN_THREAD then
  3271. task.cancel(SPAWN_THREAD);
  3272. SPAWN_THREAD = nil;
  3273. end;
  3274. end;
  3275. end)
  3276.  
  3277. UserInputService.InputBegan:Connect(function(Input)
  3278. if Input.UserInputType == Enum.UserInputType.MouseButton1 or Input.UserInputType == Enum.UserInputType.Touch then
  3279. if not MarcoUI:_IsMouseOverFrame(ColorPickerWindow) then
  3280. ToggleUI(false);
  3281. end;
  3282. end;
  3283. end)
  3284.  
  3285. ColorRedGreenBlue.InputBegan:Connect(function(Input)
  3286. if Input.UserInputType == Enum.UserInputType.MouseButton1 or Input.UserInputType == Enum.UserInputType.Touch then
  3287. Args.IsHold = true;
  3288.  
  3289. while (UserInputService:IsMouseButtonPressed(Enum.UserInputType.MouseButton1) or Args.IsHold) do task.wait()
  3290. local ColorY = ColorRedGreenBlue.AbsolutePosition.Y
  3291. local ColorYM = ColorY + ColorRedGreenBlue.AbsoluteSize.Y;
  3292. local Value = math.clamp(Mouse.Y, ColorY, ColorYM)
  3293. local Code = ((Value - ColorY) / (ColorYM - ColorY));
  3294.  
  3295. H = Code;
  3296.  
  3297. Args:Update();
  3298. end;
  3299. end;
  3300. end);
  3301.  
  3302. ColorOpc.InputBegan:Connect(function(Input)
  3303. if Input.UserInputType == Enum.UserInputType.MouseButton1 or Input.UserInputType == Enum.UserInputType.Touch then
  3304. Args.IsHold = true;
  3305.  
  3306. while (UserInputService:IsMouseButtonPressed(Enum.UserInputType.MouseButton1) or Args.IsHold) do task.wait()
  3307. local transparency = math.clamp((((Mouse.X) - ColorOpc.AbsolutePosition.X) / ColorOpc.AbsoluteSize.X), 0, 1);
  3308. local RealColor = Color3.fromHSV(H , S , V);
  3309.  
  3310. TextLabel.Text = "#" .. tostring(RealColor:ToHex())
  3311.  
  3312. Transparency = transparency;
  3313.  
  3314. Args:Update();
  3315. end;
  3316. end;
  3317. end);
  3318.  
  3319. ColorPickBox.InputBegan:Connect(function(Input)
  3320. if Input.UserInputType == Enum.UserInputType.MouseButton1 or Input.UserInputType == Enum.UserInputType.Touch then
  3321. Args.IsHold = true;
  3322.  
  3323. while (UserInputService:IsMouseButtonPressed(Enum.UserInputType.MouseButton1) or Args.IsHold) do task.wait();
  3324. local PosX = ColorPickBox.AbsolutePosition.X
  3325. local ScaleX = PosX + ColorPickBox.AbsoluteSize.X
  3326. local Value, PosY = math.clamp(Mouse.X, PosX, ScaleX), ColorPickBox.AbsolutePosition.Y
  3327. local ScaleY = PosY + ColorPickBox.AbsoluteSize.Y
  3328. local Vals = math.clamp(Mouse.Y, PosY, ScaleY)
  3329. local RealColor = Color3.fromHSV(H , S , V);
  3330.  
  3331. S = (Value - PosX) / (ScaleX - PosX);
  3332. V = (1 - ((Vals - PosY) / (ScaleY - PosY)));
  3333.  
  3334. TextLabel.Text = "#" .. tostring(RealColor:ToHex())
  3335.  
  3336. Args:Update();
  3337. end
  3338. end
  3339. end)
  3340.  
  3341. return Args;
  3342. end;
  3343.  
  3344. function MarcoUI:_DrawKeybinds(Window: ScreenGui)
  3345. if MarcoUI.__KEYBINDS_CACHE then
  3346. return MarcoUI.__KEYBINDS_CACHE;
  3347. end;
  3348.  
  3349. local Keybinds = Instance.new("Frame")
  3350. local UICorner = Instance.new("UICorner")
  3351. local IconFrame = Instance.new("Frame")
  3352. local UICorner_2 = Instance.new("UICorner")
  3353. local Frame = Instance.new("Frame")
  3354. local Icon = Instance.new("ImageLabel")
  3355. local HeaderFrame = Instance.new("Frame")
  3356. local HeadLabel = Instance.new("TextLabel")
  3357. local MainFrame = Instance.new("Frame")
  3358. local UIListLayout = Instance.new("UIListLayout")
  3359. local MovingFrame = Instance.new("Frame")
  3360.  
  3361. Keybinds.Name = MarcoUI:_RandomString()
  3362. Keybinds.Parent = Window
  3363. Keybinds.BackgroundColor3 = MarcoUI.Colors.BGDBColor;
  3364. Keybinds.BackgroundTransparency = 0.025
  3365. Keybinds.BorderColor3 = Color3.fromRGB(0, 0, 0)
  3366. Keybinds.BorderSizePixel = 0
  3367. Keybinds.Position = UDim2.new(0,100,0,100)
  3368. Keybinds.Size = UDim2.new(0, 125, 0, 25)
  3369. Keybinds.ZIndex = 150
  3370.  
  3371. table.insert(MarcoUI.Elements.BGDBColor,{
  3372. Element = Keybinds,
  3373. Property = 'BackgroundColor3'
  3374. });
  3375.  
  3376.  
  3377. UICorner.CornerRadius = UDim.new(0, 3)
  3378. UICorner.Parent = Keybinds
  3379.  
  3380. IconFrame.Name = MarcoUI:_RandomString()
  3381. IconFrame.Parent = Keybinds
  3382. IconFrame.AnchorPoint = Vector2.new(1, 0.5)
  3383. IconFrame.BackgroundColor3 = MarcoUI.Colors.BGDBColor
  3384. IconFrame.BackgroundTransparency = 0.300
  3385. IconFrame.BorderColor3 = Color3.fromRGB(0, 0, 0)
  3386. IconFrame.BorderSizePixel = 0
  3387. IconFrame.Position = UDim2.new(0, 5, 0.5, 0)
  3388. IconFrame.Size = UDim2.new(1, 10, 1, 0)
  3389. IconFrame.SizeConstraint = Enum.SizeConstraint.RelativeYY
  3390. IconFrame.ZIndex = 149
  3391.  
  3392. table.insert(MarcoUI.Elements.BGDBColor,{
  3393. Element = IconFrame,
  3394. Property = 'BackgroundColor3'
  3395. });
  3396.  
  3397. UICorner_2.CornerRadius = UDim.new(0, 3)
  3398. UICorner_2.Parent = IconFrame
  3399.  
  3400. Frame.Parent = IconFrame
  3401. Frame.AnchorPoint = Vector2.new(0, 0.5)
  3402. Frame.BackgroundColor3 = MarcoUI.Colors.Highlight;
  3403. Frame.BorderColor3 = Color3.fromRGB(0, 0, 0)
  3404. Frame.BorderSizePixel = 0
  3405. Frame.Position = UDim2.new(1, -5, 0.5, 0)
  3406. Frame.Size = UDim2.new(0, 2, 1, 0)
  3407. Frame.ZIndex = 151
  3408.  
  3409. table.insert(MarcoUI.Elements.Highlight,{
  3410. Element = Frame,
  3411. Property = 'BackgroundColor3'
  3412. });
  3413.  
  3414. Icon.Name = self:_RandomString()
  3415. Icon.Parent = IconFrame
  3416. Icon.AnchorPoint = Vector2.new(0.5, 0.5)
  3417. Icon.BackgroundTransparency = 1.000
  3418. Icon.BorderColor3 = Color3.fromRGB(0, 0, 0)
  3419. Icon.BorderSizePixel = 0
  3420. Icon.Position = UDim2.new(0.5, -2, 0.5, 0)
  3421. Icon.Size = UDim2.new(0, 20, 0, 20)
  3422. Icon.SizeConstraint = Enum.SizeConstraint.RelativeYY
  3423. Icon.ZIndex = 159
  3424. Icon.Image = MarcoUI:CacheImage("rbxassetid://10723416765");
  3425.  
  3426. HeaderFrame.Name = MarcoUI:_RandomString()
  3427. HeaderFrame.Parent = Keybinds
  3428. HeaderFrame.AnchorPoint = Vector2.new(0.5, 0)
  3429. HeaderFrame.BackgroundTransparency = 1.000
  3430. HeaderFrame.BorderColor3 = Color3.fromRGB(0, 0, 0)
  3431. HeaderFrame.BorderSizePixel = 0
  3432. HeaderFrame.ClipsDescendants = true
  3433. HeaderFrame.Position = UDim2.new(0.5, 0, 0, 0)
  3434. HeaderFrame.Size = UDim2.new(1, -10, 1, 0)
  3435. HeaderFrame.ZIndex = 155
  3436.  
  3437. HeadLabel.Name = MarcoUI:_RandomString()
  3438. HeadLabel.Parent = HeaderFrame
  3439. HeadLabel.AnchorPoint = Vector2.new(0.5, 0.5)
  3440. HeadLabel.BackgroundTransparency = 1.000
  3441. HeadLabel.BorderColor3 = Color3.fromRGB(0, 0, 0)
  3442. HeadLabel.BorderSizePixel = 0
  3443. HeadLabel.Position = UDim2.new(0.5, 0, 0.5, 0)
  3444. HeadLabel.Size = UDim2.new(1, -10, 1, 0)
  3445. HeadLabel.ZIndex = 156
  3446. HeadLabel.Font = Enum.Font.GothamMedium
  3447. HeadLabel.Text = "Keybinds"
  3448. HeadLabel.TextColor3 = MarcoUI.Colors.SwitchColor
  3449. HeadLabel.TextSize = 12.000
  3450.  
  3451. table.insert(MarcoUI.Elements.SwitchColor,{
  3452. Element = HeadLabel,
  3453. Property = 'TextColor3'
  3454. });
  3455.  
  3456. MainFrame.Name = MarcoUI:_RandomString()
  3457. MainFrame.Parent = Keybinds
  3458. MainFrame.AnchorPoint = Vector2.new(1, 0)
  3459. MainFrame.BackgroundTransparency = 1.000
  3460. MainFrame.BorderColor3 = Color3.fromRGB(0, 0, 0)
  3461. MainFrame.BorderSizePixel = 0
  3462. MainFrame.Position = UDim2.new(1, 0, 1, 5)
  3463. MainFrame.Size = UDim2.new(1, 30, 1, 3)
  3464. MainFrame.ZIndex = 156;
  3465. MainFrame.ClipsDescendants = true;
  3466.  
  3467. UIListLayout.Parent = MainFrame
  3468. UIListLayout.HorizontalAlignment = Enum.HorizontalAlignment.Center
  3469. UIListLayout.SortOrder = Enum.SortOrder.LayoutOrder
  3470. UIListLayout.Padding = UDim.new(0, 5)
  3471.  
  3472. MovingFrame.Name = MarcoUI:_RandomString()
  3473. MovingFrame.Parent = Keybinds
  3474. MovingFrame.AnchorPoint = Vector2.new(1, 0.5)
  3475. MovingFrame.BackgroundTransparency = 1.000
  3476. MovingFrame.BorderColor3 = Color3.fromRGB(0, 0, 0)
  3477. MovingFrame.BorderSizePixel = 0
  3478. MovingFrame.Position = UDim2.new(1, 0, 0.5, 0)
  3479. MovingFrame.Size = UDim2.new(1, 30, 1, 0)
  3480.  
  3481. MarcoUI:Drag(MovingFrame,Keybinds,0.1);
  3482.  
  3483. local Ref = {
  3484. Root = Keybinds
  3485. };
  3486.  
  3487. Ref.THREAD = task.spawn(function()
  3488. while true do task.wait()
  3489. MarcoUI:_Animation(MainFrame,TweenInfo.new(0.4),{
  3490. Size = UDim2.new(1, 30, 1, UIListLayout.AbsoluteContentSize.Y + 1)
  3491. });
  3492.  
  3493. if UIListLayout.AbsoluteContentSize.Y > 1 then
  3494. MarcoUI:_Animation(IconFrame,TweenInfo.new(0.25),{
  3495. BackgroundTransparency = 0.3
  3496. })
  3497.  
  3498. MarcoUI:_Animation(Frame,TweenInfo.new(0.25),{
  3499. BackgroundTransparency = 0
  3500. })
  3501.  
  3502. MarcoUI:_Animation(HeadLabel,TweenInfo.new(0.25),{
  3503. TextTransparency = 0
  3504. })
  3505.  
  3506. MarcoUI:_Animation(Icon,TweenInfo.new(0.25),{
  3507. ImageTransparency = 0
  3508. });
  3509.  
  3510. local LargF = 100;
  3511.  
  3512. for i,v in next , MainFrame:GetChildren() do
  3513. if v:GetAttribute('AvgScale') then
  3514. if v:GetAttribute('AvgScale') > LargF then
  3515. LargF = v:GetAttribute('AvgScale');
  3516. end;
  3517. end;
  3518. end;
  3519.  
  3520. MarcoUI:_Animation(Keybinds,TweenInfo.new(0.25),{
  3521. BackgroundTransparency = 0.025,
  3522. Size = UDim2.new(0, LargF, 0, 25)
  3523. })
  3524. else
  3525. MarcoUI:_Animation(HeadLabel,TweenInfo.new(0.25),{
  3526. TextTransparency = 1
  3527. })
  3528.  
  3529. MarcoUI:_Animation(Keybinds,TweenInfo.new(0.25),{
  3530. BackgroundTransparency = 1
  3531. })
  3532.  
  3533. MarcoUI:_Animation(IconFrame,TweenInfo.new(0.25),{
  3534. BackgroundTransparency = 1
  3535. })
  3536.  
  3537. MarcoUI:_Animation(Frame,TweenInfo.new(0.25),{
  3538. BackgroundTransparency = 1
  3539. })
  3540.  
  3541. MarcoUI:_Animation(Icon,TweenInfo.new(0.25),{
  3542. ImageTransparency = 1
  3543. });
  3544. end;
  3545.  
  3546. Keybinds.Visible = (Keybinds.BackgroundTransparency < 0.9 and true) or false;
  3547.  
  3548. if MarcoUI.PerformanceMode then
  3549. if Keybinds.Visible then
  3550. MarcoUI:_SetNilP(Keybinds , Window);
  3551. else
  3552. MarcoUI:_SetNilP(Keybinds , nil);
  3553. end;
  3554. else
  3555. MarcoUI:_SetNilP(Keybinds , Window);
  3556. end;
  3557. end;
  3558. end);
  3559.  
  3560. function Ref:AddFrame()
  3561. local Keyholder = Instance.new("Frame")
  3562. local UICorner = Instance.new("UICorner")
  3563. local Label = Instance.new("TextLabel")
  3564. local Line = Instance.new("Frame")
  3565. local TypeLabel = Instance.new("TextLabel")
  3566. local UICorner_2 = Instance.new("UICorner")
  3567.  
  3568. Keyholder.Name = MarcoUI:_RandomString()
  3569. Keyholder.BackgroundColor3 = MarcoUI.Colors.BGDBColor
  3570. Keyholder.BackgroundTransparency = 1
  3571. Keyholder.BorderColor3 = Color3.fromRGB(0, 0, 0)
  3572. Keyholder.BorderSizePixel = 0
  3573. Keyholder.Size = UDim2.new(1, 0, 0, 28)
  3574. Keyholder.ZIndex = MainFrame.ZIndex + 3
  3575. Keyholder.ClipsDescendants = true;
  3576.  
  3577. table.insert(MarcoUI.Elements.BGDBColor,{
  3578. Element = Keyholder,
  3579. Property = 'BackgroundColor3'
  3580. });
  3581.  
  3582. UICorner.CornerRadius = UDim.new(0, 3)
  3583. UICorner.Parent = Keyholder
  3584.  
  3585. Label.Name = MarcoUI:_RandomString()
  3586. Label.Parent = Keyholder
  3587. Label.AnchorPoint = Vector2.new(0.5, 0.5)
  3588. Label.BackgroundTransparency = 1.000
  3589. Label.BorderColor3 = Color3.fromRGB(0, 0, 0)
  3590. Label.BorderSizePixel = 0
  3591. Label.Position = UDim2.new(0.5, 0, 0.5, 0)
  3592. Label.Size = UDim2.new(1, -10, 1, 0)
  3593. Label.ZIndex = MainFrame.ZIndex + 5;
  3594. Label.Font = Enum.Font.GothamMedium
  3595. Label.TextColor3 = MarcoUI.Colors.SwitchColor
  3596. Label.TextSize = 11.000
  3597. Label.TextTransparency = 1
  3598. Label.TextXAlignment = Enum.TextXAlignment.Left
  3599.  
  3600. table.insert(MarcoUI.Elements.SwitchColor,{
  3601. Element = Label,
  3602. Property = 'TextColor3'
  3603. });
  3604.  
  3605. Line.Name = MarcoUI:_RandomString()
  3606. Line.Parent = Keyholder
  3607. Line.AnchorPoint = Vector2.new(1, 0.5)
  3608. Line.BackgroundColor3 = MarcoUI.Colors.BGDBColor
  3609. Line.BorderColor3 = Color3.fromRGB(0, 0, 0)
  3610. Line.BorderSizePixel = 0
  3611. Line.Position = UDim2.new(1, 0, 0.5, 0)
  3612. Line.Size = UDim2.new(0, 30, 1, 0)
  3613. Line.ZIndex = MainFrame.ZIndex + 4
  3614.  
  3615. table.insert(MarcoUI.Elements.BGDBColor,{
  3616. Element = Line,
  3617. Property = 'BackgroundColor3'
  3618. });
  3619.  
  3620. TypeLabel.Name = MarcoUI:_RandomString()
  3621. TypeLabel.Parent = Line
  3622. TypeLabel.AnchorPoint = Vector2.new(0.5, 0.5)
  3623. TypeLabel.BackgroundTransparency = 1.000
  3624. TypeLabel.BorderColor3 = Color3.fromRGB(0, 0, 0)
  3625. TypeLabel.BorderSizePixel = 0
  3626. TypeLabel.Position = UDim2.new(0.5, 0, 0.5, 0)
  3627. TypeLabel.Size = UDim2.new(1, 0, 1, 0)
  3628. TypeLabel.ZIndex = MainFrame.ZIndex + 6
  3629. TypeLabel.Font = Enum.Font.GothamMedium
  3630. TypeLabel.TextColor3 = MarcoUI.Colors.SwitchColor
  3631. TypeLabel.TextSize = 11.000
  3632.  
  3633. table.insert(MarcoUI.Elements.SwitchColor,{
  3634. Element = TypeLabel,
  3635. Property = 'TextColor3'
  3636. });
  3637.  
  3638. UICorner_2.CornerRadius = UDim.new(0, 3)
  3639. UICorner_2.Parent = Line
  3640.  
  3641. local UpdateScale = function()
  3642. local t = TextService:GetTextSize(TypeLabel.Text , TypeLabel.TextSize , TypeLabel.Font , Vector2.new(math.huge,math.huge));
  3643. local z = TextService:GetTextSize(Label.Text , Label.TextSize , Label.Font , Vector2.new(math.huge,math.huge));
  3644.  
  3645. Line.Size = UDim2.new(0, t.X + 5, 1, 0);
  3646.  
  3647. Keyholder:SetAttribute('AvgScale',(t.X + z.X) + 55);
  3648. end;
  3649.  
  3650. UpdateScale();
  3651.  
  3652. local frame_ref = {};
  3653.  
  3654. function frame_ref:SetName(str: string)
  3655. Label.Text = str or Label.Text;
  3656.  
  3657. UpdateScale();
  3658. end;
  3659.  
  3660. function frame_ref:SetType(str: string)
  3661. TypeLabel.Text = str or TypeLabel.Text;
  3662.  
  3663. UpdateScale();
  3664. end;
  3665.  
  3666. function frame_ref:SetVisible(v)
  3667. if v then
  3668. MarcoUI:_Animation(Keyholder,TweenInfo.new(0.1),{
  3669. BackgroundTransparency = 0.600,
  3670. Size = UDim2.new(1, 0, 0, 28)
  3671. });
  3672.  
  3673. MarcoUI:_Animation(Label,TweenInfo.new(0.15),{
  3674. TextTransparency = 0.100
  3675. });
  3676.  
  3677. MarcoUI:_Animation(Line,TweenInfo.new(0.15),{
  3678. BackgroundTransparency = 0
  3679. });
  3680.  
  3681. MarcoUI:_Animation(TypeLabel,TweenInfo.new(0.15),{
  3682. TextTransparency = 0
  3683. });
  3684. else
  3685. MarcoUI:_Animation(Keyholder,TweenInfo.new(0.1),{
  3686. BackgroundTransparency = 1,
  3687. Size = UDim2.new(1, 0, 0, 0)
  3688. });
  3689.  
  3690. MarcoUI:_Animation(Label,TweenInfo.new(0.15),{
  3691. TextTransparency = 1
  3692. });
  3693.  
  3694. MarcoUI:_Animation(Line,TweenInfo.new(0.15),{
  3695. BackgroundTransparency = 1
  3696. });
  3697.  
  3698. MarcoUI:_Animation(TypeLabel,TweenInfo.new(0.15),{
  3699. TextTransparency = 1
  3700. });
  3701. end;
  3702.  
  3703. if Keyholder.BackgroundTransparency <= 0.95 then
  3704. Keyholder.Parent = MainFrame;
  3705. else
  3706. Keyholder.Parent = nil;
  3707. end;
  3708.  
  3709. UpdateScale();
  3710. end;
  3711.  
  3712. return frame_ref;
  3713. end;
  3714.  
  3715. MarcoUI.__KEYBINDS_CACHE = Ref;
  3716.  
  3717. return Ref;
  3718. end;
  3719.  
  3720. function MarcoUI:_KeybindHandler(Parent: Frame , ObjectType: string , ElementAPI: Toggle & Slider , Signal , Zindex: number , ElementCFG: Slider)
  3721. local Window = MarcoUI:_GetWindowFromElement(Parent);
  3722. local KB_Signal = MarcoUI.__SIGNAL(false);
  3723. local SubIndex = math.random(40,100);
  3724. local KeybindInd = MarcoUI:_DrawKeybinds(Window);
  3725. local KeybindFrame = KeybindInd:AddFrame();
  3726.  
  3727. local KeybindHandler = Instance.new("Frame")
  3728. local UIStroke = Instance.new("UIStroke")
  3729. local UICorner = Instance.new("UICorner")
  3730. local ElementObjs = Instance.new("Frame")
  3731. local UIListLayout = Instance.new("UIListLayout")
  3732.  
  3733. KeybindHandler.Name = MarcoUI:_RandomString()
  3734. KeybindHandler.Parent = Window
  3735. KeybindHandler.BackgroundColor3 = MarcoUI.Colors.BlockBackground
  3736. KeybindHandler.BorderColor3 = Color3.fromRGB(0, 0, 0)
  3737. KeybindHandler.BorderSizePixel = 0
  3738. KeybindHandler.ClipsDescendants = true
  3739. KeybindHandler.Position = UDim2.new(1,999,1,999)
  3740. KeybindHandler.Size = UDim2.new(0, 225, 0, 0)
  3741. KeybindHandler.ZIndex = Zindex + SubIndex
  3742. KeybindHandler.AnchorPoint = Vector2.new(0.5,0)
  3743.  
  3744. table.insert(MarcoUI.Elements.BlockBackground,{
  3745. Element = KeybindHandler,
  3746. Property = 'BackgroundColor3'
  3747. });
  3748.  
  3749. UIStroke.Color = MarcoUI.Colors.HighStrokeColor
  3750. UIStroke.Parent = KeybindHandler
  3751.  
  3752. table.insert(MarcoUI.Elements.HighStrokeColor,{
  3753. Element = UIStroke,
  3754. Property = 'Color'
  3755. });
  3756.  
  3757. UICorner.CornerRadius = UDim.new(0, 6)
  3758. UICorner.Parent = KeybindHandler
  3759.  
  3760. ElementObjs.Name = MarcoUI:_RandomString()
  3761. ElementObjs.Parent = KeybindHandler
  3762. ElementObjs.AnchorPoint = Vector2.new(0.5, 0.5)
  3763. ElementObjs.BackgroundTransparency = 1.000
  3764. ElementObjs.BorderColor3 = Color3.fromRGB(0, 0, 0)
  3765. ElementObjs.BorderSizePixel = 0
  3766. ElementObjs.Position = UDim2.new(0.5, 0, 0.5, 0)
  3767. ElementObjs.Size = UDim2.new(1, -5, 1, -5)
  3768. ElementObjs.ZIndex = Zindex + SubIndex + 10
  3769.  
  3770. UIListLayout.Parent = ElementObjs
  3771. UIListLayout.HorizontalAlignment = Enum.HorizontalAlignment.Center
  3772. UIListLayout.SortOrder = Enum.SortOrder.LayoutOrder
  3773.  
  3774. local refreshPF = function()
  3775. if MarcoUI.PerformanceMode then
  3776. if KeybindHandler.Size.Y.Offset > 1 then
  3777. MarcoUI:_SetNilP(KeybindHandler , Window);
  3778. else
  3779. MarcoUI:_SetNilP(KeybindHandler , nil);
  3780. end;
  3781. else
  3782. MarcoUI:_SetNilP(KeybindHandler , Window);
  3783. end;
  3784. end;
  3785.  
  3786. KeybindHandler:GetPropertyChangedSignal('Size'):Connect(refreshPF);
  3787.  
  3788. task.delay(0.1,refreshPF);
  3789.  
  3790. local ToggleUI = function(bool)
  3791. if bool then
  3792. KeybindHandler.Position = UDim2.new(0,Parent.AbsolutePosition.X + 225,0,Parent.AbsolutePosition.Y)
  3793.  
  3794. MarcoUI:_Animation(KeybindHandler,TweenInfo.new(0.25),{
  3795. BackgroundTransparency = 0,
  3796. Size = UDim2.new(0, 225, 0, UIListLayout.AbsoluteContentSize.Y + 5)
  3797. });
  3798.  
  3799. MarcoUI:_Animation(UIStroke,TweenInfo.new(0.3),{
  3800. Transparency = 0
  3801. });
  3802. else
  3803. MarcoUI:_Animation(KeybindHandler,TweenInfo.new(0.3),{
  3804. BackgroundTransparency = 1,
  3805. Size = UDim2.new(0, 225, 0, 0)
  3806. });
  3807.  
  3808. MarcoUI:_Animation(UIStroke,TweenInfo.new(0.3),{
  3809. Transparency = 1
  3810. });
  3811. end;
  3812. end;
  3813.  
  3814. ToggleUI(false);
  3815.  
  3816. KB_Signal:Connect(ToggleUI);
  3817.  
  3818. local APIRef = {
  3819. Name = ElementAPI:GetText()
  3820. };
  3821.  
  3822. local ModeEnum = {
  3823. [1] = 'Off', -- disabled / off
  3824. [2] = "Hold",
  3825. [3] = "Toggle",
  3826. [4] = "On", -- alway on
  3827. };
  3828.  
  3829. local e_m = {
  3830. ['Off'] = 1,
  3831. ['Hold'] = 2,
  3832. ['Toggle'] = 3,
  3833. ['On'] = 4,
  3834. };
  3835.  
  3836. if ObjectType == "Toggle" then
  3837. APIRef.Off = false;
  3838. APIRef.On = true;
  3839. APIRef.Keybind = nil;
  3840. APIRef.Mode = e_m.Off;
  3841.  
  3842.  
  3843. elseif ObjectType == "Number" then
  3844. APIRef.Off = 1;
  3845. APIRef.On = 0;
  3846. APIRef.Keybind = nil;
  3847. APIRef.Mode = e_m.Off;
  3848. end;
  3849.  
  3850. local Flag = {};
  3851.  
  3852. APIRef.Update = function()
  3853. KeybindFrame:SetName(APIRef.Name);
  3854. KeybindFrame:SetType(ModeEnum[APIRef.Mode]);
  3855. end
  3856.  
  3857. local ElementAPIs = MarcoUI:_LoadElement(ElementObjs , true , KB_Signal , true);
  3858.  
  3859. Flag.Key = ElementAPIs:AddKeybind({
  3860. Name = "Key",
  3861. Default = APIRef.Keybind,
  3862. Callback = function(v)
  3863. APIRef.Keybind = v;
  3864. end,
  3865. });
  3866.  
  3867. Flag.Mode = ElementAPIs:AddDropdown({
  3868. Name = "Mode",
  3869. Default = ModeEnum[APIRef.Mode],
  3870. Values = ModeEnum,
  3871. Callback = function(v)
  3872. APIRef.Mode = e_m[v];
  3873.  
  3874. if APIRef.Mode == 4 then
  3875. ElementAPI:SetValue(APIRef.On);
  3876. end;
  3877. end,
  3878. });
  3879.  
  3880. if ObjectType == "Toggle" then
  3881. Flag.On = ElementAPIs:AddToggle({
  3882. Name = "ON Value",
  3883. Default = APIRef.On,
  3884. Callback = function(v)
  3885. APIRef.On = v;
  3886. end,
  3887. });
  3888.  
  3889. Flag.Off = ElementAPIs:AddToggle({
  3890. Name = "OFF Value",
  3891. Default = APIRef.Off,
  3892. Callback = function(v)
  3893. APIRef.Off = v;
  3894. end,
  3895. });
  3896. elseif ObjectType == "Number" then
  3897. Flag.On = ElementAPIs:AddSlider({
  3898. Name = "ON Value",
  3899. Default = APIRef.On,
  3900. Min = ElementCFG.Min,
  3901. Round = ElementCFG.Round,
  3902. Max = ElementCFG.Max,
  3903. Type = ElementCFG.Type,
  3904. Callback = function(v)
  3905. APIRef.On = v;
  3906. end,
  3907. });
  3908.  
  3909. Flag.Off = ElementAPIs:AddSlider({
  3910. Name = "OFF Value",
  3911. Default = APIRef.Off,
  3912. Min = ElementCFG.Min,
  3913. Round = ElementCFG.Round,
  3914. Max = ElementCFG.Max,
  3915. Type = ElementCFG.Type,
  3916. Callback = function(v)
  3917. APIRef.Off = v;
  3918. end,
  3919. });
  3920. end;
  3921.  
  3922. Flag.ShowInKeybindList = ElementAPIs:AddTextBox({
  3923. Name = "Name",
  3924. Default = APIRef.Name,
  3925. Placeholder = "Keybind Name",
  3926. Callback = function(v)
  3927. APIRef.Name = v;
  3928. end,
  3929. })
  3930.  
  3931. function APIRef:GetSettings()
  3932. APIRef.Update();
  3933.  
  3934. return {
  3935. Key = APIRef.Keybind,
  3936. On = APIRef.On,
  3937. Off = APIRef.Off,
  3938. Mode = APIRef.Mode,
  3939. Name = APIRef.Name,
  3940. };
  3941. end;
  3942.  
  3943. function APIRef:LoadSettings(cfg : KeybindSettings)
  3944. Flag.ShowInKeybindList:SetValue(cfg.Name);
  3945. Flag.Off:SetValue(cfg.Off);
  3946. Flag.On:SetValue(cfg.On);
  3947. Flag.Mode:SetValue(ModeEnum[cfg.Mode]);
  3948. Flag.Key:SetValue(cfg.Key);
  3949.  
  3950. APIRef.Update();
  3951. end;
  3952.  
  3953. APIRef.Thread = task.spawn(function()
  3954. while true do task.wait(0.01)
  3955. if APIRef.Mode ~= 1 then
  3956. if ElementAPI:GetValue() == APIRef.On then
  3957. KeybindFrame:SetVisible(true);
  3958. else
  3959. KeybindFrame:SetVisible(false);
  3960. end;
  3961.  
  3962. APIRef.Update();
  3963. else
  3964. KeybindFrame:SetVisible(false);
  3965. end;
  3966. end;
  3967. end)
  3968.  
  3969. Parent.InputEnded:Connect(function(Input,Typing)
  3970. if Input.UserInputType == Enum.UserInputType.MouseButton2 and not Typing then
  3971. KB_Signal:Fire(true);
  3972. end;
  3973. end);
  3974.  
  3975. UserInputService.InputBegan:Connect(function(Input)
  3976. if Input.UserInputType == Enum.UserInputType.MouseButton1 or Input.UserInputType == Enum.UserInputType.MouseButton2 or Input.UserInputType == Enum.UserInputType.Touch then
  3977. if not MarcoUI:_IsMouseOverFrame(Parent) and not MarcoUI:_IsMouseOverFrame(KeybindHandler) then
  3978. KB_Signal:Fire(false);
  3979. end;
  3980. end;
  3981. end);
  3982.  
  3983. UserInputService.InputBegan:Connect(function(Input,Typing)
  3984. if Input.KeyCode.Name == APIRef.Keybind or Input.KeyCode == APIRef.Keybind or (Input.UserInputType == Enum.UserInputType.MouseButton1 and APIRef.Keybind == "MouseLeft") or (Input.UserInputType == Enum.UserInputType.MouseButton2 and APIRef.Keybind == "MouseRight") then
  3985.  
  3986. if APIRef.Mode == 2 or APIRef.Mode == 4 then
  3987. ElementAPI:SetValue(APIRef.On);
  3988. elseif APIRef.Mode == 3 then
  3989. if ElementAPI:GetValue() == APIRef.On then
  3990. ElementAPI:SetValue(APIRef.Off);
  3991. else
  3992. ElementAPI:SetValue(APIRef.On);
  3993. end;
  3994. end;
  3995. end;
  3996. end);
  3997.  
  3998. UserInputService.InputEnded:Connect(function(Input,Typing)
  3999. if Input.KeyCode.Name == APIRef.Keybind or Input.KeyCode == APIRef.Keybind or (Input.UserInputType == Enum.UserInputType.MouseButton1 and APIRef.Keybind == "MouseLeft") or (Input.UserInputType == Enum.UserInputType.MouseButton2 and APIRef.Keybind == "MouseRight") then
  4000.  
  4001. if APIRef.Mode == 2 then
  4002. ElementAPI:SetValue(APIRef.Off);
  4003. elseif APIRef.Mode == 4 then
  4004. ElementAPI:SetValue(APIRef.On);
  4005. end;
  4006. end;
  4007. end);
  4008.  
  4009. return APIRef;
  4010. end;
  4011.  
  4012. function MarcoUI:_AddPropertyEvent(Target: Frame , Callback: (boolean) -> any)
  4013. Target:GetPropertyChangedSignal('BackgroundTransparency'):Connect(function()
  4014. Callback(Target.BackgroundTransparency <= 0.9)
  4015. end)
  4016. end;
  4017.  
  4018. function MarcoUI:_LoadOption(Value , TabSignal)
  4019. local Args = {};
  4020. local Window = MarcoUI:_GetWindowFromElement(Value.Root);
  4021. local Tween = TweenInfo.new(0.3,Enum.EasingStyle.Quint);
  4022.  
  4023. function Args:AddKeybind(Config: MiniKeybind)
  4024. Config = MarcoUI.__CONFIG(Config,{
  4025. Name = "Keybind",
  4026. Default = nil,
  4027. Flag = nil,
  4028. Callback = function() end;
  4029. Blacklist = {}
  4030. });
  4031.  
  4032. local Keybind = Value:AddLink('Keybind' , Config.Default);
  4033.  
  4034. local IsBinding = false;
  4035.  
  4036. local IsBlacklist = function(v)
  4037. return Config.Blacklist and (Config.Blacklist[v] or table.find(Config.Blacklist,v))
  4038. end;
  4039.  
  4040. MarcoUI:_Input(Keybind.Root,function()
  4041. if IsBinding then
  4042. return;
  4043. end;
  4044.  
  4045. Keybind.SetValue("...");
  4046.  
  4047. local Selected = nil;
  4048.  
  4049. while not Selected do
  4050. local Key = UserInputService.InputBegan:Wait();
  4051.  
  4052. if Key.KeyCode ~= Enum.KeyCode.Unknown and not IsBlacklist(Key.KeyCode) and not IsBlacklist(Key.KeyCode.Name) then
  4053. Selected = Key.KeyCode;
  4054. else
  4055. if Key.UserInputType == Enum.UserInputType.MouseButton1 and not IsBlacklist(Enum.UserInputType.MouseButton1) and not IsBlacklist("MouseLeft") then
  4056. Selected = "MouseLeft";
  4057. elseif Key.UserInputType == Enum.UserInputType.MouseButton2 and not IsBlacklist(Enum.UserInputType.MouseButton2) and not IsBlacklist("MouseRight") then
  4058. Selected = "MouseRight";
  4059. end;
  4060. end;
  4061. end;
  4062.  
  4063. local KeyName = (typeof(Selected) == "string" and Selected) or Selected.Name;
  4064.  
  4065. Config.Default = KeyName;
  4066.  
  4067. Keybind.SetValue(Selected);
  4068.  
  4069. IsBinding = false;
  4070.  
  4071. Config.Callback(KeyName);
  4072. end);
  4073.  
  4074. local Args = {};
  4075.  
  4076. Args.Flag = Config.Flag;
  4077.  
  4078. function Args:SetValue(value)
  4079. Config.Default = value;
  4080.  
  4081. Keybind.SetValue(Config.Default);
  4082.  
  4083. Config.Callback(Config.Default);
  4084. end;
  4085.  
  4086. function Args:GetValue()
  4087. return (typeof(Config.Default) == "string" and Config.Default) or Config.Default.Name;
  4088. end;
  4089.  
  4090. if Config.Flag then
  4091. MarcoUI.Flags[Config.Flag] = Args;
  4092. end;
  4093.  
  4094. return Args;
  4095. end;
  4096.  
  4097. function Args:AddHelper(Config: Helper)
  4098. Config = MarcoUI.__CONFIG(Config,{
  4099. Text = "Information."
  4100. });
  4101.  
  4102. local Helper = Value:AddLink("Helper" , Config.Default);
  4103. local Button: ImageButton = Helper.InfoButton;
  4104.  
  4105. Helper.Text.Parent = Window;
  4106.  
  4107. Helper.UIStroke:GetPropertyChangedSignal('Transparency'):Connect(function()
  4108. if Helper.UIStroke.Transparency > 0.9 then
  4109. Helper.Text.Visible = false;
  4110. else
  4111. Helper.Text.Visible = true;
  4112. end;
  4113.  
  4114. if MarcoUI.PerformanceMode then
  4115. if Helper.Text.Visible then
  4116. MarcoUI:_SetNilP(Helper.Text , Window);
  4117. else
  4118. MarcoUI:_SetNilP(Helper.Text , nil);
  4119. end;
  4120. else
  4121. MarcoUI:_SetNilP(Helper.Text , Window);
  4122. end;
  4123. end)
  4124.  
  4125. local Update = function()
  4126. local mainText = " "..Config.Text;
  4127.  
  4128. mainText = string.gsub(mainText,'\n','\n ')
  4129.  
  4130. Helper.Text.Text = mainText;
  4131.  
  4132. local scale = TextService:GetTextSize(Helper.Text.Text,Helper.Text.TextSize,Helper.Text.Font,Vector2.new(math.huge,math.huge));
  4133.  
  4134. MarcoUI:_Animation(Helper.Text , TweenInfo.new(0.15), {
  4135. Size = UDim2.fromOffset(scale.X + 50, scale.Y + 5)
  4136. })
  4137.  
  4138. return scale;
  4139. end;
  4140.  
  4141. local Release = function()
  4142. local scale = Update()
  4143.  
  4144. MarcoUI:_Animation(Helper.Text,TweenInfo.new(0.15),{
  4145. TextTransparency = 1,
  4146. BackgroundTransparency = 1,
  4147. Position = UDim2.fromOffset(Button.AbsolutePosition.X,Button.AbsolutePosition.Y + (45))
  4148. });
  4149.  
  4150. MarcoUI:_Animation(Helper.UIStroke,TweenInfo.new(0.15),{
  4151. Transparency = 1
  4152. });
  4153. end;
  4154.  
  4155. local Hold = function()
  4156. local scale = Update()
  4157.  
  4158. if not Helper.Text.Visible then
  4159. Helper.Text.Position = UDim2.fromOffset(Button.AbsolutePosition.X,Button.AbsolutePosition.Y + (45))
  4160. end;
  4161.  
  4162. MarcoUI:_Animation(Helper.Text,TweenInfo.new(0.15),{
  4163. TextTransparency = 0.35,
  4164. BackgroundTransparency = 0,
  4165. Position = UDim2.fromOffset(Button.AbsolutePosition.X,Button.AbsolutePosition.Y + (40 - (scale.Y / 2)))
  4166. });
  4167.  
  4168. MarcoUI:_Animation(Helper.UIStroke,TweenInfo.new(0.15),{
  4169. Transparency = 0
  4170. });
  4171.  
  4172. end;
  4173.  
  4174. MarcoUI:_Hover(Button, Hold, Release);
  4175.  
  4176. Release();
  4177.  
  4178. local Args = {};
  4179.  
  4180. function Args:SetValue(value)
  4181. Config.Text = value;
  4182. end;
  4183.  
  4184. return Args;
  4185. end;
  4186.  
  4187. function Args:AddColorPicker(Config: MiniColorPicker)
  4188. Config = MarcoUI.__CONFIG(Config,{
  4189. Default = Color3.fromRGB(255,255,255),
  4190. Transparency = 0,
  4191. Callback = function() end
  4192. });
  4193.  
  4194. local ColorPicker:Frame , ColorFrame: Frame = Value:AddLink('ColorPicker' , Config.Default);
  4195.  
  4196. local Button = MarcoUI:_Input(ColorPicker);
  4197.  
  4198. local ColorPicker = MarcoUI:_AddColorPickerPanel(Button,function(color,opc)
  4199. Config.Default = color;
  4200. Config.Transparency = opc;
  4201.  
  4202. ColorFrame.BackgroundColor3 = color;
  4203. ColorFrame.BackgroundTransparency = opc;
  4204.  
  4205. Config.Callback(Config.Default , Config.Transparency);
  4206. end);
  4207.  
  4208. ColorPicker:SetColor(Config.Default,Config.Transparency);
  4209. ColorPicker:Update()
  4210.  
  4211. local Args = {};
  4212.  
  4213. Args.Flag = Config.Flag;
  4214.  
  4215. function Args:SetValue(value,opc)
  4216. Config.Default = value;
  4217. Config.Transparency = opc;
  4218.  
  4219. ColorPicker:SetColor(value,opc)
  4220.  
  4221. ColorPicker:Update()
  4222.  
  4223. Config.Callback(value,opc);
  4224. end;
  4225.  
  4226. function Args:GetValue()
  4227. return {
  4228. ColorPicker = {
  4229. Color = Config.Default,
  4230. Transparency = Config.Transparency
  4231. }
  4232. };
  4233. end;
  4234.  
  4235. if Config.Flag then
  4236. MarcoUI.Flags[Config.Flag] = Args;
  4237. end;
  4238.  
  4239. return Args;
  4240. end;
  4241.  
  4242. function Args:AddToggle(Config : MiniToggle)
  4243. Config = MarcoUI.__CONFIG(Config,{
  4244. Flag = nil,
  4245. Default = false,
  4246. Callback = function() end;
  4247. });
  4248.  
  4249. local Toggle = Value:AddLink("Toggle" , Config.Default);
  4250.  
  4251. Toggle.Input.MouseButton1Click:Connect(function()
  4252. Config.Default = not Config.Default;
  4253.  
  4254. Toggle.ChangeValue(Config.Default);
  4255.  
  4256. Config.Callback(Config.Default);
  4257. end);
  4258.  
  4259. local Args = {};
  4260.  
  4261. Args.Flag = Config.Flag
  4262.  
  4263. function Args:SetValue(value)
  4264. Config.Default = value;
  4265.  
  4266. Toggle.ChangeValue(Config.Default);
  4267.  
  4268. Config.Callback(Config.Default);
  4269. end;
  4270.  
  4271. function Args:GetValue()
  4272. return Config.Default;
  4273. end;
  4274.  
  4275. if Config.Flag then
  4276. MarcoUI.Flags[Config.Flag] = Args;
  4277. end;
  4278.  
  4279. return Args;
  4280. end;
  4281.  
  4282. function Args:AddOption()
  4283. local Element: ImageButton = Value:AddLink("Option");
  4284. local BaseZ_Index = math.random(1,15) * 100;
  4285.  
  4286. local Signal = MarcoUI.__SIGNAL(false);
  4287.  
  4288. local ExtractElement = Instance.new("Frame")
  4289. local UIStroke = Instance.new("UIStroke")
  4290. local UICorner = Instance.new("UICorner")
  4291. local Elements = Instance.new("Frame")
  4292. local UIListLayout = Instance.new("UIListLayout")
  4293. local Toggl = false;
  4294.  
  4295. local ToggleUI = function(bool)
  4296. local IsSameValue = bool == Toggl;
  4297.  
  4298. Toggl = bool;
  4299.  
  4300. local MainPosition = UDim2.fromOffset(Element.AbsolutePosition.X,Element.AbsolutePosition.Y + 80);
  4301. local DropPosition = UDim2.fromOffset(MainPosition.X.Offset,MainPosition.Y.Offset + 15);
  4302. local MUL = Window.AbsoluteSize.Y / 2;
  4303.  
  4304. if MainPosition.Y.Offset > MUL then -- go up
  4305. MainPosition = UDim2.fromOffset(Element.AbsolutePosition.X,Element.AbsolutePosition.Y + 45);
  4306. DropPosition = UDim2.fromOffset(MainPosition.X.Offset,MainPosition.Y.Offset - 25);
  4307. ExtractElement.AnchorPoint = Vector2.new(0,1)
  4308. else
  4309. ExtractElement.AnchorPoint = Vector2.new(0,0)
  4310. end;
  4311.  
  4312. if bool then
  4313. Signal:Fire(true);
  4314.  
  4315. if not IsSameValue then
  4316. ExtractElement.Position = DropPosition
  4317. end;
  4318.  
  4319. MarcoUI:_Animation(ExtractElement , Tween , {
  4320. Position = MainPosition,
  4321. BackgroundTransparency = 0,
  4322. Size = UDim2.new(0, 225, 0, UIListLayout.AbsoluteContentSize.Y)
  4323. });
  4324.  
  4325. MarcoUI:_Animation(UIStroke , Tween , {
  4326. Transparency = 0
  4327. });
  4328.  
  4329. else
  4330. Signal:Fire(false);
  4331.  
  4332. MarcoUI:_Animation(ExtractElement , Tween , {
  4333. Position = DropPosition,
  4334. BackgroundTransparency = 1,
  4335. Size = UDim2.new(0, 225, 0, UIListLayout.AbsoluteContentSize.Y - 10)
  4336. });
  4337.  
  4338. MarcoUI:_Animation(UIStroke , Tween , {
  4339. Transparency = 1
  4340. });
  4341. end;
  4342. end;
  4343.  
  4344. MarcoUI:_AddPropertyEvent(ExtractElement,function(bool)
  4345. ExtractElement.Visible = bool;
  4346.  
  4347. if MarcoUI.PerformanceMode then
  4348. if ExtractElement.Visible then
  4349. MarcoUI:_SetNilP(ExtractElement , Window);
  4350. else
  4351. MarcoUI:_SetNilP(ExtractElement , nil);
  4352. end;
  4353. else
  4354. MarcoUI:_SetNilP(ExtractElement , Window);
  4355. end;
  4356. end);
  4357.  
  4358. MarcoUI:_AddDragBlacklist(ExtractElement);
  4359.  
  4360. ExtractElement.Name = MarcoUI:_RandomString()
  4361. ExtractElement.Parent = Window
  4362. ExtractElement.BackgroundColor3 = MarcoUI.Colors.BlockBackground
  4363. ExtractElement.BorderColor3 = Color3.fromRGB(0, 0, 0)
  4364. ExtractElement.BorderSizePixel = 0
  4365. ExtractElement.ClipsDescendants = true
  4366. ExtractElement.Position = UDim2.new(123, 0, 123, 0)
  4367. ExtractElement.Size = UDim2.new(0, 225, 0, 35)
  4368. ExtractElement.ZIndex = BaseZ_Index
  4369. ExtractElement.Visible = false
  4370. ExtractElement.ClipsDescendants = true
  4371.  
  4372. table.insert(MarcoUI.Elements.BlockBackground,{
  4373. Element = ExtractElement,
  4374. Property = "BackgroundColor3"
  4375. });
  4376.  
  4377. UIStroke.Color = MarcoUI.Colors.HighStrokeColor
  4378. UIStroke.Parent = ExtractElement
  4379.  
  4380. table.insert(MarcoUI.Elements.HighStrokeColor,{
  4381. Element = UIStroke,
  4382. Property = "Color"
  4383. });
  4384.  
  4385. UICorner.CornerRadius = UDim.new(0, 6)
  4386. UICorner.Parent = ExtractElement
  4387.  
  4388. Elements.Name = MarcoUI:_RandomString()
  4389. Elements.Parent = ExtractElement
  4390. Elements.AnchorPoint = Vector2.new(0.5, 0.5)
  4391. Elements.BackgroundTransparency = 1.000
  4392. Elements.BorderColor3 = Color3.fromRGB(0, 0, 0)
  4393. Elements.BorderSizePixel = 0
  4394. Elements.Position = UDim2.new(0.5, 0, 0.5, 0)
  4395. Elements.Size = UDim2.new(1, -5, 1,-1)
  4396. Elements.ZIndex = BaseZ_Index + 20
  4397.  
  4398. UIListLayout.Parent = Elements
  4399. UIListLayout.HorizontalAlignment = Enum.HorizontalAlignment.Center
  4400. UIListLayout.SortOrder = Enum.SortOrder.LayoutOrder
  4401. UIListLayout.Padding = UDim.new(0, 0)
  4402.  
  4403. ToggleUI(false);
  4404.  
  4405. Element.MouseButton1Click:Connect(function()
  4406. ToggleUI(true);
  4407. end);
  4408.  
  4409. UserInputService.InputBegan:Connect(function(Input)
  4410. if Input.UserInputType == Enum.UserInputType.MouseButton1 or Input.UserInputType == Enum.UserInputType.Touch then
  4411. if Toggl and not MarcoUI:_IsMouseOverFrame(ExtractElement) and not MarcoUI:_IsMouseOverFrame(Element) then
  4412. ToggleUI(false);
  4413. end;
  4414. end
  4415. end)
  4416.  
  4417. return MarcoUI:_LoadElement(Elements , true , Signal)
  4418. end;
  4419.  
  4420. return Args;
  4421. end;
  4422.  
  4423. function MarcoUI:_LoadDropdown(BaseParent: TextButton , Callback: () -> any)
  4424. local Window = MarcoUI:_GetWindowFromElement(BaseParent);
  4425.  
  4426. local BaseZ_Index = BaseParent.ZIndex + (math.random(1,15) * 100);
  4427.  
  4428. local DropdownWindow = Instance.new("Frame")
  4429. local UIStroke = Instance.new("UIStroke")
  4430. local UICorner = Instance.new("UICorner")
  4431. local ScrollingFrame = Instance.new("ScrollingFrame")
  4432. local UIListLayout = Instance.new("UIListLayout")
  4433. local ToggleDb = MarcoUI.__SIGNAL(false);
  4434. local EventOut = MarcoUI.__SIGNAL(0);
  4435.  
  4436. DropdownWindow.Name = MarcoUI:_RandomString()
  4437. DropdownWindow.Parent = Window
  4438. DropdownWindow.BackgroundColor3 = MarcoUI.Colors.BlockBackground
  4439. DropdownWindow.BorderColor3 = Color3.fromRGB(0, 0, 0)
  4440. DropdownWindow.BorderSizePixel = 0
  4441. DropdownWindow.Position = UDim2.new(123, 0, 123, 0)
  4442. DropdownWindow.Size = UDim2.new(0, 190, 0, 200)
  4443. DropdownWindow.ZIndex = BaseZ_Index
  4444.  
  4445. table.insert(MarcoUI.Elements.BlockBackground,{
  4446. Element = DropdownWindow,
  4447. Property = "BackgroundColor3"
  4448. });
  4449.  
  4450. MarcoUI:_AddDragBlacklist(DropdownWindow);
  4451. MarcoUI:_AddPropertyEvent(DropdownWindow,function(v)
  4452. DropdownWindow.Visible = v;
  4453.  
  4454. if MarcoUI.PerformanceMode then
  4455. if DropdownWindow.Visible then
  4456. MarcoUI:_SetNilP(DropdownWindow , Window);
  4457. else
  4458. MarcoUI:_SetNilP(DropdownWindow , nil);
  4459. end;
  4460. else
  4461. MarcoUI:_SetNilP(DropdownWindow , Window);
  4462. end;
  4463. end)
  4464.  
  4465. UIStroke.Color = MarcoUI.Colors.HighStrokeColor
  4466. UIStroke.Parent = DropdownWindow
  4467.  
  4468. table.insert(MarcoUI.Elements.HighStrokeColor , {
  4469. Element = UIStroke,
  4470. Property = "Color"
  4471. })
  4472.  
  4473. UICorner.CornerRadius = UDim.new(0, 6)
  4474. UICorner.Parent = DropdownWindow
  4475.  
  4476. ScrollingFrame.Parent = DropdownWindow
  4477. ScrollingFrame.Active = true
  4478. ScrollingFrame.AnchorPoint = Vector2.new(0.5, 0.5)
  4479. ScrollingFrame.BackgroundTransparency = 1.000
  4480. ScrollingFrame.BorderColor3 = Color3.fromRGB(0, 0, 0)
  4481. ScrollingFrame.BorderSizePixel = 0
  4482. ScrollingFrame.Position = UDim2.new(0.5, 0, 0.5, 0)
  4483. ScrollingFrame.Size = UDim2.new(1, -5, 1, -5)
  4484. ScrollingFrame.ZIndex = BaseZ_Index + 5
  4485. ScrollingFrame.BottomImage = ""
  4486. ScrollingFrame.ScrollBarThickness = 0
  4487. ScrollingFrame.TopImage = ""
  4488.  
  4489. UIListLayout.Parent = ScrollingFrame
  4490. UIListLayout.HorizontalAlignment = Enum.HorizontalAlignment.Center
  4491. UIListLayout.SortOrder = Enum.SortOrder.LayoutOrder
  4492. UIListLayout.Padding = UDim.new(0, 10)
  4493.  
  4494. UIListLayout:GetPropertyChangedSignal('AbsoluteContentSize'):Connect(function()
  4495. ScrollingFrame.CanvasSize = UDim2.fromOffset(UIListLayout.AbsoluteContentSize.X,UIListLayout.AbsoluteContentSize.Y)
  4496. end);
  4497.  
  4498. local ToggleUI = function(bool)
  4499. local IsSame = ToggleDb:GetValue() == bool;
  4500.  
  4501. EventOut:Fire(bool);
  4502. ToggleDb:Fire(bool);
  4503.  
  4504. local MUL = Window.AbsoluteSize.Y / 2;
  4505.  
  4506. local MainPosition = UDim2.fromOffset(BaseParent.AbsolutePosition.X + 1,BaseParent.AbsolutePosition.Y + 80);
  4507. local DropPosition = UDim2.fromOffset(MainPosition.X.Offset,MainPosition.Y.Offset + 25);
  4508.  
  4509. if MainPosition.Y.Offset > MUL then -- go up
  4510. MainPosition = UDim2.fromOffset(BaseParent.AbsolutePosition.X + 1,BaseParent.AbsolutePosition.Y + 55);
  4511. DropPosition = UDim2.fromOffset(MainPosition.X.Offset,MainPosition.Y.Offset - 25);
  4512.  
  4513. DropdownWindow.AnchorPoint = Vector2.new(0,1);
  4514. else
  4515. DropdownWindow.AnchorPoint = Vector2.zero;
  4516. end;
  4517.  
  4518. if bool then
  4519. if not IsSame then
  4520. DropdownWindow.Position = DropPosition;
  4521. end;
  4522.  
  4523. MarcoUI:_Animation(DropdownWindow,TweenInfo.new(0.2),{
  4524. BackgroundTransparency = 0,
  4525. Position = MainPosition,
  4526. Size = UDim2.new(0, BaseParent.AbsoluteSize.X - 1, 0, math.clamp(UIListLayout.AbsoluteContentSize.Y + 10,10 , 200))
  4527. })
  4528.  
  4529. MarcoUI:_Animation(UIStroke,TweenInfo.new(0.2),{
  4530. Transparency = 0
  4531. })
  4532. else
  4533. MarcoUI:_Animation(DropdownWindow,TweenInfo.new(0.2),{
  4534. BackgroundTransparency = 1,
  4535. Position = DropPosition,
  4536. Size = UDim2.new(0, BaseParent.AbsoluteSize.X - 1, 0, math.clamp(UIListLayout.AbsoluteContentSize.Y / 1.5, 10 , 200))
  4537. })
  4538.  
  4539. MarcoUI:_Animation(UIStroke,TweenInfo.new(0.2),{
  4540. Transparency = 1
  4541. })
  4542. end;
  4543. end;
  4544.  
  4545. ToggleUI(false)
  4546.  
  4547. local SpamUpdate,_Delay = false , tick();
  4548. local __signals = {};
  4549. local Default = nil;
  4550. local Values = nil;
  4551. local IsMulti = false;
  4552.  
  4553. local DrawButton = function()
  4554. local DropdownItem = Instance.new("Frame")
  4555. local BlockText = Instance.new("TextLabel")
  4556. local BlockLine = Instance.new("Frame")
  4557.  
  4558. DropdownItem.Name = MarcoUI:_RandomString()
  4559. DropdownItem.BackgroundTransparency = 1.000
  4560. DropdownItem.BorderColor3 = Color3.fromRGB(0, 0, 0)
  4561. DropdownItem.BorderSizePixel = 0
  4562. DropdownItem.Size = UDim2.new(1, -1, 0, 20)
  4563. DropdownItem.ZIndex = BaseZ_Index + 6
  4564.  
  4565. BlockText.Name = MarcoUI:_RandomString()
  4566. BlockText.Parent = DropdownItem
  4567. BlockText.AnchorPoint = Vector2.new(0, 0.5)
  4568. BlockText.BackgroundTransparency = 1.000
  4569. BlockText.BorderColor3 = Color3.fromRGB(0, 0, 0)
  4570. BlockText.BorderSizePixel = 0
  4571. BlockText.Position = UDim2.new(0, 5, 0.5, 0)
  4572. BlockText.Size = UDim2.new(1, -10, 0, 25)
  4573. BlockText.ZIndex = BaseZ_Index + 6
  4574. BlockText.Font = Enum.Font.GothamMedium
  4575. BlockText.Text = ""
  4576. BlockText.TextColor3 = MarcoUI.Colors.SwitchColor
  4577. BlockText.TextSize = 13.000
  4578. BlockText.TextTransparency = 0.500
  4579. BlockText.TextXAlignment = Enum.TextXAlignment.Left
  4580.  
  4581. table.insert(MarcoUI.Elements.SwitchColor , {
  4582. Element = BlockText,
  4583. Property = 'TextColor3'
  4584. });
  4585.  
  4586. BlockLine.Name = MarcoUI:_RandomString()
  4587. BlockLine.Parent = DropdownItem
  4588. BlockLine.AnchorPoint = Vector2.new(0.5, 1)
  4589. BlockLine.BackgroundColor3 = MarcoUI.Colors.LineColor
  4590. BlockLine.BackgroundTransparency = 0.500
  4591. BlockLine.BorderColor3 = Color3.fromRGB(0, 0, 0)
  4592. BlockLine.BorderSizePixel = 0
  4593. BlockLine.Position = UDim2.new(0.5, 0, 1, 0)
  4594. BlockLine.Size = UDim2.new(1, -6, 0, 1)
  4595. BlockLine.ZIndex = BaseZ_Index + 7
  4596.  
  4597. table.insert(MarcoUI.Elements.LineColor,{
  4598. Element = BlockLine,
  4599. Property = "BackgroundColor3"
  4600. });
  4601.  
  4602. return {
  4603. BlockText = BlockText,
  4604. DropdownItem = DropdownItem,
  4605. BlockLine = BlockLine,
  4606. };
  4607. end;
  4608.  
  4609. local ClearDropdown = function()
  4610. for i,v in next , ScrollingFrame:GetChildren() do
  4611. if v:IsA('Frame') then
  4612. v:Destroy();
  4613. end;
  4614. end;
  4615.  
  4616. for i,v in next, __signals do
  4617. v:Disconnect();
  4618. end;
  4619. end;
  4620.  
  4621. local IsDefault = function(v)
  4622. return (typeof(Default) == 'table' and (Default[v] or table.find(Default,v))) or Default == v;
  4623. end;
  4624.  
  4625. local MatchDefault = function(v,DataFrame)
  4626. return (typeof(DataFrame) == 'table' and (DataFrame[v] or table.find(DataFrame,v))) or DataFrame == v;
  4627. end;
  4628.  
  4629. local UpdateDropdown = function()
  4630. local DataFrame;
  4631.  
  4632. if IsMulti then
  4633. DataFrame = {};
  4634. end;
  4635.  
  4636. for i,v in next , Values do
  4637. local bth = DrawButton();
  4638.  
  4639. bth.BlockText.Text = tostring(v);
  4640.  
  4641. bth.DropdownItem.Parent = ScrollingFrame;
  4642.  
  4643. bth.Value = v;
  4644.  
  4645. table.insert(__signals , ToggleDb:Connect(function(bool)
  4646. if bool then
  4647. MarcoUI:_Animation(bth.BlockText,TweenInfo.new(0.2),{
  4648. TextTransparency = ((IsDefault(v) or MatchDefault(v,DataFrame)) and 0) or 0.5
  4649. });
  4650.  
  4651. MarcoUI:_Animation(bth.BlockLine,TweenInfo.new(0.2),{
  4652. BackgroundTransparency = 0
  4653. });
  4654. else
  4655. MarcoUI:_Animation(bth.BlockText,TweenInfo.new(0.2),{
  4656. TextTransparency = 1
  4657. });
  4658.  
  4659. MarcoUI:_Animation(bth.BlockLine,TweenInfo.new(0.2),{
  4660. BackgroundTransparency = 1
  4661. });
  4662. end;
  4663. end));
  4664.  
  4665. if ToggleDb:GetValue() then
  4666. MarcoUI:_Animation(bth.BlockText,TweenInfo.new(0.2),{
  4667. TextTransparency = ((IsDefault(v) or MatchDefault(v,DataFrame)) and 0) or 0.5
  4668. });
  4669. end;
  4670.  
  4671. if IsDefault(v) and not IsMulti then
  4672. DataFrame = bth;
  4673. end;
  4674.  
  4675. if IsMulti then
  4676. if IsDefault(v) or MatchDefault(v,DataFrame) then
  4677. DataFrame[v] = true;
  4678. else
  4679. DataFrame[v] = false;
  4680. end;
  4681.  
  4682. MarcoUI:_Animation(bth.BlockText,TweenInfo.new(0.2),{
  4683. TextTransparency = ((MatchDefault(v,DataFrame)) and 0) or 0.5
  4684. });
  4685.  
  4686. MarcoUI:_Input(bth.DropdownItem,function()
  4687. DataFrame[v] = not DataFrame[v];
  4688.  
  4689. MarcoUI:_Animation(bth.BlockText,TweenInfo.new(0.2),{
  4690. TextTransparency = ((MatchDefault(v,DataFrame)) and 0) or 0.5
  4691. });
  4692.  
  4693. Callback(DataFrame)
  4694. end);
  4695. else
  4696. MarcoUI:_Input(bth.DropdownItem,function()
  4697. if DataFrame then
  4698. MarcoUI:_Animation(DataFrame.BlockText,TweenInfo.new(0.2),{
  4699. TextTransparency = ((IsDefault(v) or MatchDefault(v,DataFrame)) and 0) or 0.5
  4700. });
  4701. end;
  4702.  
  4703. Default = v;
  4704.  
  4705. DataFrame = bth;
  4706.  
  4707. MarcoUI:_Animation(bth.BlockText,TweenInfo.new(0.2),{
  4708. TextTransparency = ((IsDefault(v) or MatchDefault(v,DataFrame)) and 0) or 0.5
  4709. });
  4710.  
  4711. Callback(DataFrame.Value)
  4712. end);
  4713. end;
  4714. end;
  4715. end;
  4716.  
  4717. BaseParent.MouseButton1Click:Connect(function()
  4718. if SpamUpdate then
  4719. ClearDropdown();
  4720. UpdateDropdown();
  4721. end;
  4722.  
  4723. ToggleUI(true);
  4724.  
  4725. if not ToggleDb:GetValue() then
  4726. ToggleUI(false);
  4727. end
  4728. end);
  4729.  
  4730. UserInputService.InputBegan:Connect(function(Input)
  4731. if Input.UserInputType == Enum.UserInputType.MouseButton1 or Input.UserInputType == Enum.UserInputType.Touch then
  4732. if not MarcoUI:_IsMouseOverFrame(DropdownWindow) then
  4733. ToggleUI(false);
  4734. end;
  4735. end;
  4736. end);
  4737.  
  4738. local Args = {};
  4739.  
  4740. function Args:SetDefault(v)
  4741. Default = v;
  4742. end;
  4743.  
  4744. function Args:SetData(Def,Val,Multi,Vis)
  4745. if Vis and ((tick() - _Delay) <= 0.5 or #Val > 10) then
  4746. _Delay = tick();
  4747. SpamUpdate = true;
  4748. else
  4749. SpamUpdate = false;
  4750. end;
  4751.  
  4752. IsMulti = Multi;
  4753. Default = Def;
  4754. Values = Val;
  4755.  
  4756. if Vis and not SpamUpdate then
  4757. ClearDropdown();
  4758. UpdateDropdown();
  4759. end;
  4760. end;
  4761.  
  4762. function Args:Refersh()
  4763. ClearDropdown();
  4764. UpdateDropdown();
  4765. end;
  4766.  
  4767. Args.EventOut = EventOut;
  4768.  
  4769. return Args;
  4770. end;
  4771.  
  4772. function MarcoUI:_LoadElement(Parent: Frame , EnabledLine: boolean , Signal , DisableStackKeybind)
  4773. local Zindex = Parent.ZIndex + 1;
  4774. local Tween = TweenInfo.new(0.25,Enum.EasingStyle.Quint);
  4775.  
  4776. local Args = {};
  4777.  
  4778. function Args:AddToggle(Config : Toggle)
  4779. Config = MarcoUI.__CONFIG(Config,{
  4780. Name = "Toggle",
  4781. Default = false,
  4782. Flag = nil,
  4783. Risky = false,
  4784. Callback = function() end;
  4785. });
  4786.  
  4787. local Block = MarcoUI:_CreateBlock(Signal);
  4788.  
  4789. Block:SetParent(Parent);
  4790.  
  4791. Block:SetText(Config.Name);
  4792.  
  4793. if Config.Risky then
  4794. Block:SetTextColor(MarcoUI.Colors.Risky);
  4795. end;
  4796.  
  4797. Block:SetLine(EnabledLine);
  4798.  
  4799. Block:SetVisible(Signal:GetValue());
  4800.  
  4801. local Toggle = Block:AddLink('Toggle' , Config.Default);
  4802.  
  4803. Toggle.Input.MouseButton1Click:Connect(function()
  4804. Config.Default = not Config.Default;
  4805.  
  4806. Toggle.ChangeValue(Config.Default);
  4807.  
  4808. Block:SetTransparency((Config.Default and 0.1) or 0.3);
  4809.  
  4810. Config.Callback(Config.Default);
  4811. end);
  4812.  
  4813. local Args = {};
  4814.  
  4815. Args.Flag = Config.Flag;
  4816.  
  4817. function Args:SetValue(value)
  4818. Config.Default = value;
  4819.  
  4820. Toggle.ChangeValue(Config.Default);
  4821.  
  4822. Block:SetTransparency((Config.Default and 0.1) or 0.3);
  4823.  
  4824. Config.Callback(Config.Default);
  4825. end;
  4826.  
  4827. Args.Signal = Signal:Connect(function(bool)
  4828. Block:SetVisible(bool);
  4829.  
  4830. end);
  4831.  
  4832. Args.Link = MarcoUI:_LoadOption(Block);
  4833.  
  4834. function Args:GetValue()
  4835. return Config.Default;
  4836. end;
  4837.  
  4838. function Args:SetText(str : string)
  4839. Block:SetText(str or Config.Name);
  4840. end;
  4841.  
  4842. function Args:GetText()
  4843. return Block:GetText();
  4844. end;
  4845.  
  4846. if Config.Flag then
  4847. MarcoUI.Flags[Config.Flag] = Args;
  4848. end;
  4849.  
  4850. if not DisableStackKeybind then
  4851. local AutoKeybind = MarcoUI:_KeybindHandler(Block.Root , "Toggle" , Args , Signal , Zindex , Config);
  4852.  
  4853. Args.AutoKeybind = AutoKeybind;
  4854. end;
  4855.  
  4856. return Args;
  4857. end;
  4858.  
  4859. function Args:AddKeybind(Config : Keybind)
  4860. Config = MarcoUI.__CONFIG(Config,{
  4861. Name = "Keybind",
  4862. Default = nil,
  4863. Flag = nil,
  4864. Callback = function() end;
  4865. Blacklist = {}
  4866. });
  4867.  
  4868. local Block = MarcoUI:_CreateBlock(Signal);
  4869.  
  4870. Block:SetParent(Parent);
  4871.  
  4872. Block:SetText(Config.Name);
  4873.  
  4874. Block:SetLine(EnabledLine);
  4875.  
  4876. Block:SetVisible(Signal:GetValue());
  4877.  
  4878. local Keybind = Block:AddLink('Keybind' , Config.Default);
  4879.  
  4880. local IsBinding = false;
  4881.  
  4882. local IsBlacklist = function(v)
  4883. return Config.Blacklist and (Config.Blacklist[v] or table.find(Config.Blacklist,v))
  4884. end;
  4885.  
  4886. MarcoUI:_Input(Keybind.Root,function()
  4887. if IsBinding then
  4888. return;
  4889. end;
  4890.  
  4891. Keybind.SetValue("...");
  4892.  
  4893. local Selected = nil;
  4894.  
  4895. while not Selected do
  4896. local Key = UserInputService.InputBegan:Wait();
  4897.  
  4898. if Key.KeyCode ~= Enum.KeyCode.Unknown and not IsBlacklist(Key.KeyCode) and not IsBlacklist(Key.KeyCode.Name) then
  4899. Selected = Key.KeyCode;
  4900. else
  4901. if Key.UserInputType == Enum.UserInputType.MouseButton1 and not IsBlacklist(Enum.UserInputType.MouseButton1) and not IsBlacklist("MouseLeft") then
  4902. Selected = "MouseLeft";
  4903. elseif Key.UserInputType == Enum.UserInputType.MouseButton2 and not IsBlacklist(Enum.UserInputType.MouseButton2) and not IsBlacklist("MouseRight") then
  4904. Selected = "MouseRight";
  4905. end;
  4906. end;
  4907. end;
  4908.  
  4909. local KeyName = typeof(Selected) == "string" and Selected or Selected.Name;
  4910.  
  4911. Config.Default = KeyName;
  4912.  
  4913. Keybind.SetValue(Selected);
  4914.  
  4915. IsBinding = false;
  4916.  
  4917. Config.Callback(KeyName);
  4918. end);
  4919.  
  4920. local Args = {};
  4921.  
  4922. Args.Flag = Config.Flag;
  4923.  
  4924. function Args:SetText(str : string)
  4925. Block:SetText(str or Config.Name);
  4926. end;
  4927.  
  4928. function Args:GetText()
  4929. return Block:GetText();
  4930. end;
  4931.  
  4932. function Args:SetValue(value)
  4933. Config.Default = value;
  4934.  
  4935. Keybind.SetValue(Config.Default);
  4936.  
  4937. Config.Callback(Config.Default);
  4938. end;
  4939.  
  4940. Args.Signal = Signal:Connect(function(bool)
  4941. Block:SetVisible(bool);
  4942. end);
  4943.  
  4944. Args.Link = MarcoUI:_LoadOption(Block);
  4945.  
  4946. function Args:GetValue()
  4947. return (typeof(Config.Default) == "string" and Config.Default) or Config.Default.Name;
  4948. end;
  4949.  
  4950. if Config.Flag then
  4951. MarcoUI.Flags[Config.Flag] = Args;
  4952. end;
  4953.  
  4954. return Args;
  4955. end;
  4956.  
  4957. function Args:AddColorPicker(Config: ColorPicker)
  4958. Config = MarcoUI.__CONFIG(Config,{
  4959. Name = "ColorPicker",
  4960. Default = Color3.fromRGB(255,255,255),
  4961. Flag = nil,
  4962. Transparency = 0,
  4963. Callback = function() end;
  4964. });
  4965.  
  4966. local Block = MarcoUI:_CreateBlock(Signal);
  4967.  
  4968. Block:SetParent(Parent);
  4969.  
  4970. Block:SetText(Config.Name);
  4971.  
  4972. Block:SetLine(EnabledLine);
  4973.  
  4974. Block:SetVisible(Signal:GetValue());
  4975.  
  4976. local ColorPicker:Frame , ColorFrame: Frame = Block:AddLink('ColorPicker' , Config.Default);
  4977.  
  4978. local Button = MarcoUI:_Input(ColorPicker);
  4979.  
  4980. local ColorPicker = MarcoUI:_AddColorPickerPanel(Button,function(color,opc)
  4981. Config.Default = color;
  4982. Config.Transparency = opc;
  4983.  
  4984. ColorFrame.BackgroundColor3 = color;
  4985. ColorFrame.BackgroundTransparency = opc;
  4986.  
  4987. Config.Callback(Config.Default , Config.Transparency);
  4988. end);
  4989.  
  4990. ColorPicker:SetColor(Config.Default,Config.Transparency);
  4991. ColorPicker:Update()
  4992.  
  4993. local Args = {};
  4994.  
  4995. Args.Flag = Config.Flag;
  4996.  
  4997. function Args:SetValue(value,opc)
  4998. Config.Default = value;
  4999. Config.Transparency = opc;
  5000.  
  5001. ColorPicker:SetColor(value,opc);
  5002. ColorPicker:Update();
  5003.  
  5004. Config.Callback(value,opc);
  5005. end;
  5006.  
  5007. function Args:SetText(str : string)
  5008. Block:SetText(str or Config.Name);
  5009. end;
  5010.  
  5011. function Args:GetText()
  5012. return Block:GetText();
  5013. end;
  5014.  
  5015. Args.Signal = Signal:Connect(function(bool)
  5016. Block:SetVisible(bool);
  5017. end);
  5018.  
  5019. Args.Link = MarcoUI:_LoadOption(Block);
  5020.  
  5021. function Args:GetValue()
  5022. return {
  5023. ColorPicker = {
  5024. Color = Config.Default,
  5025. Transparency = Config.Transparency
  5026. }
  5027. };
  5028. end;
  5029.  
  5030. if Config.Flag then
  5031. MarcoUI.Flags[Config.Flag] = Args;
  5032. end;
  5033.  
  5034. return Args;
  5035. end;
  5036.  
  5037. function Args:AddButton(Config: Button)
  5038. Config = MarcoUI.__CONFIG(Config , {
  5039. Name = 'Button',
  5040. Callback = function() end
  5041. });
  5042.  
  5043. local Button = Instance.new("Frame")
  5044. local BlockLine = Instance.new("Frame")
  5045. local Frame = Instance.new("Frame")
  5046. local UIStroke = Instance.new("UIStroke")
  5047. local UICorner = Instance.new("UICorner")
  5048. local TextLabel = Instance.new("TextLabel")
  5049.  
  5050. if MarcoUI:_IsMobile() then
  5051. MarcoUI:_AddDragBlacklist(Button);
  5052. end;
  5053.  
  5054. Button.Name = MarcoUI:_RandomString()
  5055. Button.Parent = Parent
  5056. Button.BackgroundTransparency = 1.000
  5057. Button.BorderColor3 = Color3.fromRGB(0, 0, 0)
  5058. Button.BorderSizePixel = 0
  5059. Button.Size = UDim2.new(1, -1, 0, 30)
  5060. Button.ZIndex = Zindex + 5
  5061.  
  5062. BlockLine.Name = MarcoUI:_RandomString()
  5063. BlockLine.Parent = Button
  5064. BlockLine.AnchorPoint = Vector2.new(0.5, 1)
  5065. BlockLine.BackgroundColor3 = MarcoUI.Colors.LineColor
  5066. BlockLine.BackgroundTransparency = 0.500
  5067. BlockLine.BorderColor3 = Color3.fromRGB(0, 0, 0)
  5068. BlockLine.BorderSizePixel = 0
  5069. BlockLine.Position = UDim2.new(0.5, 0, 1, 0)
  5070. BlockLine.Size = UDim2.new(1, -26, 0, 1)
  5071. BlockLine.ZIndex = Zindex + 6
  5072.  
  5073. table.insert(MarcoUI.Elements.LineColor,{
  5074. Element = BlockLine,
  5075. Property = "BackgroundColor3"
  5076. });
  5077.  
  5078. Frame.Parent = Button
  5079. Frame.AnchorPoint = Vector2.new(0.5, 0.5)
  5080. Frame.BackgroundColor3 = MarcoUI.Colors.Highlight
  5081. Frame.BackgroundTransparency = 0.100
  5082. Frame.BorderColor3 = Color3.fromRGB(0, 0, 0)
  5083. Frame.BorderSizePixel = 0
  5084. Frame.Position = UDim2.new(0.5, 0, 0.5, 0)
  5085. Frame.Size = UDim2.new(1, -15, 1, -5)
  5086. Frame.ZIndex = Zindex + 7;
  5087.  
  5088. table.insert(MarcoUI.Elements.Highlight,{
  5089. Element = Frame,
  5090. Property = "BackgroundColor3"
  5091. });
  5092.  
  5093. UIStroke.Color = MarcoUI.Colors.StrokeColor
  5094. UIStroke.Parent = Frame
  5095.  
  5096. table.insert(MarcoUI.Elements.StrokeColor,{
  5097. Element = UIStroke,
  5098. Property = "Color"
  5099. });
  5100.  
  5101. UICorner.CornerRadius = UDim.new(0, 3)
  5102. UICorner.Parent = Frame
  5103.  
  5104. TextLabel.Parent = Frame
  5105. TextLabel.AnchorPoint = Vector2.new(0.5, 0.5)
  5106. TextLabel.BackgroundTransparency = 1.000
  5107. TextLabel.BorderColor3 = Color3.fromRGB(0, 0, 0)
  5108. TextLabel.BorderSizePixel = 0
  5109. TextLabel.Position = UDim2.new(0.5, 0, 0.5, 0)
  5110. TextLabel.Size = UDim2.new(1, 0, 1, 0)
  5111. TextLabel.ZIndex = Zindex + 8
  5112. TextLabel.Font = Enum.Font.GothamMedium
  5113. TextLabel.Text = Config.Name;
  5114. TextLabel.TextColor3 = MarcoUI.Colors.SwitchColor
  5115. TextLabel.TextSize = 12.000
  5116. TextLabel.TextStrokeTransparency = 0.900
  5117.  
  5118. table.insert(MarcoUI.Elements.SwitchColor , {
  5119. Element = TextLabel,
  5120. Property = 'TextColor3'
  5121. });
  5122.  
  5123. MarcoUI:_Hover(Frame,function()
  5124. if Signal:GetValue() then
  5125. MarcoUI:_Animation(Frame,TweenInfo.new(0.2),{
  5126. BackgroundTransparency = 0
  5127. })
  5128. end;
  5129. end,function()
  5130. if Signal:GetValue() then
  5131. MarcoUI:_Animation(Frame,TweenInfo.new(0.2),{
  5132. BackgroundTransparency = 0.1
  5133. })
  5134. end;
  5135. end);
  5136.  
  5137. MarcoUI:_Input(Frame,function()
  5138. Config.Callback();
  5139. end);
  5140.  
  5141. local Args = {};
  5142.  
  5143. Args.Signal = Signal:Connect(function(bool)
  5144. if bool then
  5145. MarcoUI:_Animation(BlockLine, TweenInfo.new(0.35),{
  5146. BackgroundTransparency = 0.500
  5147. });
  5148.  
  5149. MarcoUI:_Animation(Frame, TweenInfo.new(0.35),{
  5150. BackgroundTransparency = 0.1
  5151. });
  5152.  
  5153. MarcoUI:_Animation(UIStroke, TweenInfo.new(0.35),{
  5154. Transparency = 0
  5155. });
  5156.  
  5157. MarcoUI:_Animation(TextLabel, TweenInfo.new(0.35),{
  5158. TextStrokeTransparency = 0.900,
  5159. TextTransparency = 0
  5160. });
  5161.  
  5162. else
  5163. MarcoUI:_Animation(BlockLine, TweenInfo.new(0.35),{
  5164. BackgroundTransparency = 1
  5165. });
  5166.  
  5167. MarcoUI:_Animation(Frame, TweenInfo.new(0.35),{
  5168. BackgroundTransparency = 1
  5169. });
  5170.  
  5171. MarcoUI:_Animation(UIStroke, TweenInfo.new(0.35),{
  5172. Transparency = 1
  5173. });
  5174.  
  5175. MarcoUI:_Animation(TextLabel, TweenInfo.new(0.35),{
  5176. TextStrokeTransparency = 1,
  5177. TextTransparency = 1
  5178. });
  5179. end;
  5180. end);
  5181.  
  5182. function Args:SetText(t)
  5183. Config.Name = t;
  5184. TextLabel.Text = Config.Name;
  5185. end;
  5186.  
  5187. function Args:GetText()
  5188. return TextLabel.Text;
  5189. end;
  5190.  
  5191. return Args;
  5192. end;
  5193.  
  5194. function Args:AddSlider(Config: Slider)
  5195. Config = MarcoUI.__CONFIG(Config , {
  5196. Name = 'Slider',
  5197. Default = 50,
  5198. Min = 0,
  5199. Max = 100,
  5200. Type = "",
  5201. Round = 0,
  5202. Callback = function() end
  5203. });
  5204.  
  5205. local Slider = Instance.new("Frame")
  5206. local BlockText = Instance.new("TextLabel")
  5207. local BlockLine = Instance.new("Frame")
  5208. local SliderBar = Instance.new("Frame")
  5209. local UIStroke = Instance.new("UIStroke")
  5210. local UICorner = Instance.new("UICorner")
  5211. local SliderInput = Instance.new("Frame")
  5212. local UICorner_2 = Instance.new("UICorner")
  5213. local Frame = Instance.new("Frame")
  5214. local UICorner_3 = Instance.new("UICorner")
  5215. local UIScale = Instance.new("UIScale")
  5216. local ValueText = Instance.new("TextLabel")
  5217.  
  5218. MarcoUI:_AddDragBlacklist(Slider);
  5219.  
  5220. Slider.Name = MarcoUI:_RandomString()
  5221. Slider.Parent = Parent
  5222. Slider.BackgroundTransparency = 1.000
  5223. Slider.BorderColor3 = Color3.fromRGB(0, 0, 0)
  5224. Slider.BorderSizePixel = 0
  5225. Slider.Size = UDim2.new(1, -1, 0, 45)
  5226. Slider.ZIndex = Zindex + 1
  5227.  
  5228. BlockText.Name = MarcoUI:_RandomString()
  5229. BlockText.Parent = Slider
  5230. BlockText.BackgroundTransparency = 1.000
  5231. BlockText.BorderColor3 = Color3.fromRGB(0, 0, 0)
  5232. BlockText.BorderSizePixel = 0
  5233. BlockText.Position = UDim2.new(0, 12, 0, 1)
  5234. BlockText.Size = UDim2.new(1, -20, 0, 25)
  5235. BlockText.ZIndex = Zindex + 2
  5236. BlockText.Font = Enum.Font.GothamMedium
  5237. BlockText.Text = Config.Name
  5238. BlockText.TextColor3 = MarcoUI.Colors.SwitchColor
  5239. BlockText.TextSize = 14.000
  5240. BlockText.TextTransparency = 0.100
  5241. BlockText.TextXAlignment = Enum.TextXAlignment.Left
  5242.  
  5243. table.insert(MarcoUI.Elements.SwitchColor , {
  5244. Element = BlockText,
  5245. Property = 'TextColor3'
  5246. });
  5247.  
  5248. BlockLine.Name = MarcoUI:_RandomString()
  5249. BlockLine.Parent = Slider
  5250. BlockLine.AnchorPoint = Vector2.new(0.5, 1)
  5251. BlockLine.BackgroundColor3 = MarcoUI.Colors.LineColor
  5252. BlockLine.BackgroundTransparency = 0.500
  5253. BlockLine.BorderColor3 = Color3.fromRGB(0, 0, 0)
  5254. BlockLine.BorderSizePixel = 0
  5255. BlockLine.Position = UDim2.new(0.5, 0, 1, 0)
  5256. BlockLine.Size = UDim2.new(1, -26, 0, 1)
  5257. BlockLine.ZIndex = Zindex + 2
  5258. BlockLine.Visible = EnabledLine or false;
  5259.  
  5260. table.insert(MarcoUI.Elements.LineColor,{
  5261. Element = BlockLine,
  5262. Property = "BackgroundColor3"
  5263. });
  5264.  
  5265. SliderBar.Name = MarcoUI:_RandomString()
  5266. SliderBar.Parent = Slider
  5267. SliderBar.AnchorPoint = Vector2.new(0.5, 1)
  5268. SliderBar.BackgroundColor3 = MarcoUI.Colors.DropColor
  5269. SliderBar.BorderColor3 = Color3.fromRGB(0, 0, 0)
  5270. SliderBar.BorderSizePixel = 0
  5271. SliderBar.ClipsDescendants = true
  5272. SliderBar.Position = UDim2.new(0.5, 0, 1, -9)
  5273. SliderBar.Size = UDim2.new(1, -25, 0, 10)
  5274. SliderBar.ZIndex = Zindex + 3
  5275.  
  5276. table.insert(MarcoUI.Elements.DropColor , {
  5277. Element = SliderBar,
  5278. Property = "BackgroundColor3"
  5279. })
  5280.  
  5281. UIStroke.Color = MarcoUI.Colors.StrokeColor
  5282. UIStroke.Parent = SliderBar
  5283.  
  5284. table.insert(MarcoUI.Elements.StrokeColor,{
  5285. Element = UIStroke,
  5286. Property = "Color"
  5287. });
  5288.  
  5289. UICorner.CornerRadius = UDim.new(0, 6)
  5290. UICorner.Parent = SliderBar
  5291.  
  5292. SliderInput.Name = MarcoUI:_RandomString()
  5293. SliderInput.Parent = SliderBar
  5294. SliderInput.AnchorPoint = Vector2.new(0, 0.5)
  5295. SliderInput.BackgroundColor3 = MarcoUI.Colors.Highlight
  5296. SliderInput.BorderColor3 = Color3.fromRGB(0, 0, 0)
  5297. SliderInput.BorderSizePixel = 0
  5298. SliderInput.Position = UDim2.new(0, 0, 0.5, 0)
  5299. SliderInput.Size = UDim2.new(math.max((Config.Default - Config.Min) / (Config.Max - Config.Min) , 0.045), 0, 1, 0)
  5300. SliderInput.ZIndex = Zindex + 4
  5301.  
  5302. table.insert(MarcoUI.Elements.Highlight,{
  5303. Element = SliderInput,
  5304. Property = "BackgroundColor3"
  5305. });
  5306.  
  5307. -- Track slider for RGB updates (always active when visible)
  5308. if not MarcoUI.__ActiveRGBSliders then
  5309. MarcoUI.__ActiveRGBSliders = {};
  5310. end;
  5311. table.insert(MarcoUI.__ActiveRGBSliders, {
  5312. SliderInput = SliderInput
  5313. });
  5314.  
  5315. UICorner_2.CornerRadius = UDim.new(0, 6)
  5316. UICorner_2.Parent = SliderInput
  5317.  
  5318. Frame.Parent = SliderInput
  5319. Frame.AnchorPoint = Vector2.new(1, 0.5)
  5320. Frame.BackgroundColor3 = MarcoUI.Colors.SwitchColor
  5321. Frame.BorderColor3 = Color3.fromRGB(0, 0, 0)
  5322. Frame.BorderSizePixel = 0
  5323. Frame.Position = UDim2.new(1, 5, 0.5, 0)
  5324. Frame.Rotation = 45.000
  5325. Frame.Size = UDim2.new(1, 0, 1, 0)
  5326. Frame.SizeConstraint = Enum.SizeConstraint.RelativeYY
  5327. Frame.ZIndex = Zindex + 6
  5328.  
  5329. table.insert(MarcoUI.Elements.SwitchColor , {
  5330. Element = Frame,
  5331. Property = 'BackgroundColor3'
  5332. });
  5333.  
  5334. UICorner_3.CornerRadius = UDim.new(3, 0)
  5335. UICorner_3.Parent = Frame
  5336.  
  5337. UIScale.Parent = Frame
  5338. UIScale.Scale = 1.300
  5339.  
  5340. ValueText.Name = MarcoUI:_RandomString()
  5341. ValueText.Parent = Slider
  5342. ValueText.BackgroundTransparency = 1.000
  5343. ValueText.BorderColor3 = Color3.fromRGB(0, 0, 0)
  5344. ValueText.BorderSizePixel = 0
  5345. ValueText.Position = UDim2.new(0, 12, 0, 1)
  5346. ValueText.Size = UDim2.new(1, -20, 0, 25)
  5347. ValueText.ZIndex = Zindex + 4
  5348. ValueText.Font = Enum.Font.GothamMedium
  5349. ValueText.Text = tostring(Config.Default)..tostring(Config.Type)
  5350. ValueText.TextColor3 = MarcoUI.Colors.SwitchColor
  5351. ValueText.TextSize = 12.000
  5352. ValueText.TextTransparency = 0.750
  5353. ValueText.TextXAlignment = Enum.TextXAlignment.Right
  5354.  
  5355. table.insert(MarcoUI.Elements.SwitchColor , {
  5356. Element = ValueText,
  5357. Property = 'TextColor3'
  5358. });
  5359.  
  5360. MarcoUI:_Hover(SliderBar,function()
  5361. if Signal:GetValue() then
  5362. MarcoUI:_Animation(ValueText,TweenInfo.new(0.2),{
  5363. TextTransparency = 0.2
  5364. })
  5365. end;
  5366. end,function()
  5367. if Signal:GetValue() then
  5368. MarcoUI:_Animation(ValueText,TweenInfo.new(0.2),{
  5369. TextTransparency = 0.750
  5370. })
  5371. end;
  5372. end)
  5373.  
  5374. local IsHold = false;
  5375.  
  5376. local Update = function(Input)
  5377. local SizeScale = math.clamp((((Input.Position.X) - SliderBar.AbsolutePosition.X) / SliderBar.AbsoluteSize.X), 0, 1);
  5378.  
  5379. local Main = ((Config.Max - Config.Min) * SizeScale) + Config.Min;
  5380.  
  5381. local Value = MarcoUI:_Rounding(Main,Config.Round);
  5382.  
  5383. local PositionX = UDim2.fromScale(SizeScale, 1);
  5384.  
  5385. local Size = (Value - Config.Min) / (Config.Max - Config.Min);
  5386.  
  5387. TweenService:Create(SliderInput , TweenInfo.new(0.2),{
  5388. Size = UDim2.new(math.clamp(Size,0.045,1), 0, 1, 0)
  5389. }):Play();
  5390.  
  5391. Config.Default = Value;
  5392.  
  5393. ValueText.Text = tostring(Config.Default)..tostring(Config.Type)
  5394.  
  5395. Config.Callback(Value)
  5396. end;
  5397.  
  5398. -- Find parent section for interaction locking
  5399. local parentSection = SliderBar;
  5400. while parentSection and not parentSection:GetAttribute("IsSection") do
  5401. parentSection = parentSection.Parent;
  5402. if not parentSection or parentSection:IsA("ScreenGui") then
  5403. parentSection = nil;
  5404. break;
  5405. end;
  5406. end;
  5407.  
  5408. do
  5409. SliderBar.InputBegan:Connect(function(Input)
  5410. if Input.UserInputType == Enum.UserInputType.MouseButton1 or Input.UserInputType == Enum.UserInputType.Touch then
  5411. IsHold = true
  5412. -- Lock interaction to this section
  5413. if parentSection then
  5414. MarcoUI:_SetInteractionLock(parentSection, true);
  5415. end;
  5416. Update(Input)
  5417. end
  5418. end)
  5419.  
  5420. SliderBar.InputEnded:Connect(function(Input)
  5421. if Input.UserInputType == Enum.UserInputType.MouseButton1 or Input.UserInputType == Enum.UserInputType.Touch then
  5422. if UserInputService.TouchEnabled then
  5423. if not MarcoUI:_IsMouseOverFrame(SliderBar) then
  5424. IsHold = false
  5425. -- Unlock interaction
  5426. if parentSection then
  5427. MarcoUI:_SetInteractionLock(parentSection, false);
  5428. end;
  5429. end;
  5430. else
  5431. IsHold = false
  5432. -- Unlock interaction
  5433. if parentSection then
  5434. MarcoUI:_SetInteractionLock(parentSection, false);
  5435. end;
  5436. end;
  5437. end
  5438. end)
  5439.  
  5440. UserInputService.InputChanged:Connect(function(Input)
  5441. if IsHold then
  5442. if (Input.UserInputType == Enum.UserInputType.MouseMovement or Input.UserInputType == Enum.UserInputType.Touch) then
  5443. if UserInputService.TouchEnabled then
  5444. if not MarcoUI:_IsMouseOverFrame(SliderBar) then
  5445. IsHold = false
  5446. else
  5447. Update(Input)
  5448. end;
  5449. else
  5450. Update(Input)
  5451. end;
  5452. end;
  5453. end;
  5454. end);
  5455. end;
  5456.  
  5457. local Args = {};
  5458.  
  5459. Args.Flag = Config.Flag;
  5460.  
  5461. function Args:SetValue(Value)
  5462. Config.Default = Value;
  5463.  
  5464. ValueText.Text = tostring(Config.Default)..tostring(Config.Type)
  5465.  
  5466. MarcoUI:_Animation(SliderInput, TweenInfo.new(0.35),{
  5467. Size = UDim2.new(math.max((Config.Default - Config.Min) / (Config.Max - Config.Min) , 0.045), 0, 1, 0)
  5468. });
  5469.  
  5470. Config.Callback(Value);
  5471. end;
  5472.  
  5473. function Args:SetText(str : string)
  5474. BlockText.Text = str or Config.Name
  5475. end;
  5476.  
  5477. function Args:GetText()
  5478. return BlockText.Text;
  5479. end;
  5480.  
  5481. Args.Signal = Signal:Connect(function(bool)
  5482. if bool then
  5483. MarcoUI:_Animation(SliderInput, TweenInfo.new(0.35),{
  5484. Size = UDim2.new(math.max((Config.Default - Config.Min) / (Config.Max - Config.Min) , 0.045), 0, 1, 0)
  5485. });
  5486.  
  5487. MarcoUI:_Animation(ValueText,Tween,{
  5488. TextTransparency = 0.750
  5489. })
  5490.  
  5491. MarcoUI:_Animation(Frame,Tween,{
  5492. BackgroundTransparency = 0
  5493. })
  5494.  
  5495. MarcoUI:_Animation(SliderInput,Tween,{
  5496. BackgroundTransparency = 0
  5497. })
  5498.  
  5499. MarcoUI:_Animation(UIStroke,Tween,{
  5500. Transparency = 0
  5501. })
  5502.  
  5503. MarcoUI:_Animation(SliderBar,Tween,{
  5504. BackgroundTransparency = 0
  5505. })
  5506.  
  5507. MarcoUI:_Animation(BlockLine,Tween,{
  5508. BackgroundTransparency = 0.5
  5509. })
  5510.  
  5511. MarcoUI:_Animation(BlockText,Tween,{
  5512. TextTransparency = 0.1
  5513. })
  5514. else
  5515. MarcoUI:_Animation(SliderInput, TweenInfo.new(0.35),{
  5516. Size = UDim2.new(0, 0, 1, 0)
  5517. });
  5518.  
  5519. MarcoUI:_Animation(ValueText,Tween,{
  5520. TextTransparency = 1
  5521. })
  5522.  
  5523. MarcoUI:_Animation(Frame,Tween,{
  5524. BackgroundTransparency = 1
  5525. })
  5526.  
  5527. MarcoUI:_Animation(SliderInput,Tween,{
  5528. BackgroundTransparency = 1
  5529. })
  5530.  
  5531. MarcoUI:_Animation(UIStroke,Tween,{
  5532. Transparency = 1
  5533. })
  5534.  
  5535. MarcoUI:_Animation(SliderBar,Tween,{
  5536. BackgroundTransparency = 1
  5537. })
  5538.  
  5539. MarcoUI:_Animation(BlockLine,Tween,{
  5540. BackgroundTransparency = 1
  5541. })
  5542.  
  5543. MarcoUI:_Animation(BlockText,Tween,{
  5544. TextTransparency = 1
  5545. })
  5546. end;
  5547. end);
  5548.  
  5549. function Args:GetValue()
  5550. return Config.Default;
  5551. end;
  5552.  
  5553. if Config.Flag then
  5554. MarcoUI.Flags[Config.Flag] = Args;
  5555. end;
  5556.  
  5557. if not DisableStackKeybind then
  5558. local AutoKeybind = MarcoUI:_KeybindHandler(Slider , "Number" , Args , Signal , Zindex , Config);
  5559.  
  5560. Args.AutoKeybind = AutoKeybind;
  5561. end;
  5562.  
  5563. return Args;
  5564. end;
  5565.  
  5566. function Args:AddParagraph(Config: Paragraph) -- request by Neptune
  5567. Config = MarcoUI.__CONFIG(Config, {
  5568. Title = "Paragraph",
  5569. Content = "",
  5570. });
  5571.  
  5572. local Paragraph = Instance.new("Frame")
  5573. local BlockText = Instance.new("TextLabel")
  5574. local BlockLine = Instance.new("Frame")
  5575. local DescriptionText = Instance.new("TextLabel")
  5576.  
  5577. if MarcoUI:_IsMobile() then
  5578. MarcoUI:_AddDragBlacklist(Paragraph);
  5579. end;
  5580.  
  5581. Paragraph.Name = MarcoUI:_RandomString()
  5582. Paragraph.Parent = Parent
  5583. Paragraph.BackgroundTransparency = 1.000
  5584. Paragraph.BorderColor3 = Color3.fromRGB(0, 0, 0)
  5585. Paragraph.BorderSizePixel = 0
  5586. Paragraph.Size = UDim2.new(1, -1, 0, 40)
  5587. Paragraph.ZIndex = Zindex + 2
  5588. Paragraph.ClipsDescendants = true
  5589.  
  5590. BlockText.Name = MarcoUI:_RandomString()
  5591. BlockText.Parent = Paragraph
  5592. BlockText.AnchorPoint = Vector2.new(0, 0.5)
  5593. BlockText.BackgroundTransparency = 1.000
  5594. BlockText.BorderColor3 = Color3.fromRGB(0, 0, 0)
  5595. BlockText.BorderSizePixel = 0
  5596. BlockText.Position = UDim2.new(0, 12, 0, 12)
  5597. BlockText.Size = UDim2.new(1, -20, 0, 25)
  5598. BlockText.ZIndex = Zindex + 3
  5599. BlockText.Font = Enum.Font.GothamMedium
  5600. BlockText.Text = Config.Title
  5601. BlockText.TextColor3 = MarcoUI.Colors.SwitchColor
  5602. BlockText.TextSize = 14.000
  5603. BlockText.TextTransparency = 0.300
  5604. BlockText.TextXAlignment = Enum.TextXAlignment.Left
  5605. BlockText.RichText = true
  5606.  
  5607. table.insert(MarcoUI.Elements.SwitchColor , {
  5608. Element = BlockText,
  5609. Property = 'TextColor3'
  5610. });
  5611.  
  5612. BlockLine.Name = MarcoUI:_RandomString()
  5613. BlockLine.Parent = Paragraph
  5614. BlockLine.AnchorPoint = Vector2.new(0.5, 1)
  5615. BlockLine.BackgroundColor3 = MarcoUI.Colors.LineColor
  5616. BlockLine.BackgroundTransparency = 0.500
  5617. BlockLine.BorderColor3 = Color3.fromRGB(0, 0, 0)
  5618. BlockLine.BorderSizePixel = 0
  5619. BlockLine.Position = UDim2.new(0.5, 0, 1, 0)
  5620. BlockLine.Size = UDim2.new(1, -26, 0, 1)
  5621. BlockLine.ZIndex = Zindex + 4
  5622.  
  5623. table.insert(MarcoUI.Elements.LineColor,{
  5624. Element = BlockLine,
  5625. Property = "BackgroundColor3"
  5626. });
  5627.  
  5628. DescriptionText.RichText = true
  5629. DescriptionText.Name = MarcoUI:_RandomString()
  5630. DescriptionText.Parent = Paragraph
  5631. DescriptionText.BackgroundTransparency = 1.000
  5632. DescriptionText.BorderColor3 = Color3.fromRGB(0, 0, 0)
  5633. DescriptionText.BorderSizePixel = 0
  5634. DescriptionText.Position = UDim2.new(0, 12, 0, 22)
  5635. DescriptionText.Size = UDim2.new(1, -20, 1, -25)
  5636. DescriptionText.ZIndex = Zindex + 5
  5637. DescriptionText.Font = Enum.Font.GothamMedium
  5638. DescriptionText.Text = Config.Content
  5639. DescriptionText.TextColor3 = MarcoUI.Colors.SwitchColor
  5640. DescriptionText.TextSize = 13.000
  5641. DescriptionText.TextTransparency = 0.500
  5642. DescriptionText.TextXAlignment = Enum.TextXAlignment.Left
  5643. DescriptionText.TextYAlignment = Enum.TextYAlignment.Top
  5644.  
  5645. table.insert(MarcoUI.Elements.SwitchColor , {
  5646. Element = DescriptionText,
  5647. Property = 'TextColor3'
  5648. });
  5649.  
  5650. local Base = 15;
  5651.  
  5652. local UpdateScale = function()
  5653.  
  5654. if not DescriptionText.Text:byte() then
  5655. local TitleScale = TextService:GetTextSize(BlockText.Text,BlockText.TextSize,BlockText.Font,Vector2.new(math.huge,math.huge));
  5656.  
  5657. MarcoUI:_Animation(Paragraph,TweenInfo.new(0.15),{
  5658. Size = UDim2.new(1, -1, 0, TitleScale.Y + Base)
  5659. });
  5660. else
  5661. local TitleScale = TextService:GetTextSize(BlockText.Text,BlockText.TextSize,BlockText.Font,Vector2.new(math.huge,math.huge));
  5662. local ContentScale = TextService:GetTextSize(DescriptionText.Text,DescriptionText.TextSize,DescriptionText.Font,Vector2.new(math.huge,math.huge));
  5663.  
  5664. MarcoUI:_Animation(Paragraph,TweenInfo.new(0.15),{
  5665. Size = UDim2.new(1, -1, 0, (TitleScale.Y + ContentScale.Y) + Base)
  5666. });
  5667. end;
  5668. end;
  5669.  
  5670. UpdateScale();
  5671.  
  5672. local Args = {};
  5673.  
  5674. function Args:SetTitle(title)
  5675. BlockText.Text = title;
  5676. UpdateScale();
  5677. end;
  5678.  
  5679. function Args:SetContent(content)
  5680. DescriptionText.Text = content;
  5681. UpdateScale();
  5682. end;
  5683.  
  5684. Args.Signal = Signal:Connect(function(bool)
  5685. if bool then
  5686. MarcoUI:_Animation(BlockText,TweenInfo.new(0.2),{
  5687. TextTransparency = 0.300
  5688. });
  5689.  
  5690. MarcoUI:_Animation(DescriptionText,TweenInfo.new(0.2),{
  5691. TextTransparency = 0.500
  5692. });
  5693.  
  5694. MarcoUI:_Animation(BlockLine,TweenInfo.new(0.2),{
  5695. BackgroundTransparency = 0.500
  5696. });
  5697. else
  5698. MarcoUI:_Animation(BlockText,TweenInfo.new(0.2),{
  5699. TextTransparency = 1
  5700. });
  5701.  
  5702. MarcoUI:_Animation(DescriptionText,TweenInfo.new(0.2),{
  5703. TextTransparency = 1
  5704. });
  5705.  
  5706. MarcoUI:_Animation(BlockLine,TweenInfo.new(0.2),{
  5707. BackgroundTransparency = 1
  5708. });
  5709. end;
  5710. end);
  5711.  
  5712. return Args;
  5713. end;
  5714.  
  5715. function Args:AddTextBox(Config: TextBoxConfig)
  5716. Config = MarcoUI.__CONFIG(Config , {
  5717. Name = "TextBox",
  5718. Default = "",
  5719. Placeholder = "Placeholder",
  5720. Numberic = false,
  5721. Callback = function() end,
  5722. });
  5723.  
  5724. local TextBox = Instance.new("Frame")
  5725. local BlockText = Instance.new("TextLabel")
  5726. local LinkValues = Instance.new("Frame")
  5727. local UIStroke = Instance.new("UIStroke")
  5728. local UICorner = Instance.new("UICorner")
  5729. local TextBox_2 = Instance.new("TextBox")
  5730. local BlockLine = Instance.new("Frame")
  5731.  
  5732. if MarcoUI:_IsMobile() then
  5733. MarcoUI:_AddDragBlacklist(TextBox);
  5734. end;
  5735.  
  5736. TextBox.Name = MarcoUI:_RandomString()
  5737. TextBox.Parent = Parent
  5738. TextBox.BackgroundTransparency = 1.000
  5739. TextBox.BorderColor3 = Color3.fromRGB(0, 0, 0)
  5740. TextBox.BorderSizePixel = 0
  5741. TextBox.Size = UDim2.new(1, -1, 0, 30)
  5742. TextBox.ZIndex = Zindex + 1
  5743.  
  5744. BlockText.Name = MarcoUI:_RandomString()
  5745. BlockText.Parent = TextBox
  5746. BlockText.AnchorPoint = Vector2.new(0, 0.5)
  5747. BlockText.BackgroundTransparency = 1.000
  5748. BlockText.BorderColor3 = Color3.fromRGB(0, 0, 0)
  5749. BlockText.BorderSizePixel = 0
  5750. BlockText.Position = UDim2.new(0, 12, 0.5, 0)
  5751. BlockText.Size = UDim2.new(1, -20, 0, 25)
  5752. BlockText.ZIndex = Zindex + 2
  5753. BlockText.Font = Enum.Font.GothamMedium
  5754. BlockText.Text = Config.Name
  5755. BlockText.TextColor3 = MarcoUI.Colors.SwitchColor
  5756. BlockText.TextSize = 14.000
  5757. BlockText.TextTransparency = 0.300
  5758. BlockText.TextXAlignment = Enum.TextXAlignment.Left
  5759.  
  5760. table.insert(MarcoUI.Elements.SwitchColor,{
  5761. Element = BlockText,
  5762. Property = "TextColor3"
  5763. })
  5764.  
  5765. LinkValues.Name = MarcoUI:_RandomString()
  5766. LinkValues.Parent = TextBox
  5767. LinkValues.AnchorPoint = Vector2.new(1, 0.540000021)
  5768. LinkValues.BackgroundColor3 = MarcoUI.Colors.DropColor
  5769. LinkValues.BorderColor3 = Color3.fromRGB(0, 0, 0)
  5770. LinkValues.BorderSizePixel = 0
  5771. LinkValues.Position = UDim2.new(1, -12, 0.5, 0)
  5772. LinkValues.Size = UDim2.new(0, 95, 0, 16)
  5773. LinkValues.ZIndex = Zindex + 3
  5774.  
  5775. table.insert(MarcoUI.Elements.DropColor,{
  5776. Element = LinkValues,
  5777. Property = "BackgroundColor3"
  5778. })
  5779.  
  5780. UIStroke.Color = MarcoUI.Colors.StrokeColor
  5781. UIStroke.Parent = LinkValues
  5782.  
  5783. table.insert(MarcoUI.Elements.StrokeColor,{
  5784. Element = UIStroke,
  5785. Property = "Color"
  5786. })
  5787.  
  5788. UICorner.CornerRadius = UDim.new(0, 3)
  5789. UICorner.Parent = LinkValues
  5790.  
  5791. TextBox_2.Parent = LinkValues
  5792. TextBox_2.AnchorPoint = Vector2.new(0.5, 0.5)
  5793. TextBox_2.BackgroundColor3 = Color3.fromRGB(255, 255, 255)
  5794. TextBox_2.BackgroundTransparency = 1.000
  5795. TextBox_2.BorderColor3 = Color3.fromRGB(0, 0, 0)
  5796. TextBox_2.BorderSizePixel = 0
  5797. TextBox_2.ClipsDescendants = true
  5798. TextBox_2.Position = UDim2.new(0.5, 0, 0.5, 0)
  5799. TextBox_2.Size = UDim2.new(1, -5, 1, 0)
  5800. TextBox_2.ZIndex = Zindex + 5
  5801. TextBox_2.ClearTextOnFocus = false
  5802. TextBox_2.Font = Enum.Font.GothamMedium
  5803. TextBox_2.PlaceholderText = Config.Placeholder
  5804. TextBox_2.Text = Config.Default
  5805. TextBox_2.TextColor3 = MarcoUI.Colors.SwitchColor
  5806. TextBox_2.TextSize = 11.000
  5807.  
  5808. table.insert(MarcoUI.Elements.SwitchColor,{
  5809. Element = TextBox_2,
  5810. Property = "TextColor3"
  5811. })
  5812.  
  5813. BlockLine.Name = MarcoUI:_RandomString()
  5814. BlockLine.Parent = TextBox
  5815. BlockLine.AnchorPoint = Vector2.new(0.5, 1)
  5816. BlockLine.BackgroundColor3 = MarcoUI.Colors.LineColor
  5817. BlockLine.BackgroundTransparency = 0.500
  5818. BlockLine.BorderColor3 = Color3.fromRGB(0, 0, 0)
  5819. BlockLine.BorderSizePixel = 0
  5820. BlockLine.Position = UDim2.new(0.5, 0, 1, 0)
  5821. BlockLine.Size = UDim2.new(1, -26, 0, 1)
  5822. BlockLine.ZIndex = Zindex + 3;
  5823.  
  5824. table.insert(MarcoUI.Elements.LineColor,{
  5825. Element = BlockLine,
  5826. Property = "BackgroundColor3"
  5827. })
  5828.  
  5829. local Update = function()
  5830. local scale = TextService:GetTextSize(TextBox_2.Text,TextBox_2.TextSize,TextBox_2.Font,Vector2.new(math.huge,math.huge));
  5831. local Base = TextService:GetTextSize(TextBox_2.PlaceholderText,TextBox_2.TextSize,TextBox_2.Font,Vector2.new(math.huge,math.huge));
  5832.  
  5833. local MainScale = ((scale.X > Base.X) and scale.X) or Base.X;
  5834.  
  5835. local xp = pcall(function()
  5836. MarcoUI:_Animation(LinkValues,TweenInfo.new(0.25),{
  5837. Size = UDim2.fromOffset(math.clamp(MainScale + 7 , Base.X , TextBox.AbsoluteSize.X / 2) , 16)
  5838. })
  5839. end);
  5840.  
  5841. if not xp then
  5842. MarcoUI:_Animation(LinkValues,TweenInfo.new(0.25),{
  5843. Size = UDim2.fromOffset(MainScale + 7 , 16)
  5844. })
  5845. end;
  5846. end;
  5847.  
  5848. local parse = function(text)
  5849. if not text then
  5850. return "";
  5851. end;
  5852.  
  5853. if Config.Numeric then
  5854. local out = string.gsub(tostring(text), '[^0-9.]', '')
  5855.  
  5856. if tonumber(out) then
  5857. return tonumber(out);
  5858. end;
  5859.  
  5860. return nil;
  5861. end;
  5862.  
  5863. return text;
  5864. end;
  5865.  
  5866. Update();
  5867.  
  5868. TextBox_2:GetPropertyChangedSignal('Text'):Connect(Update);
  5869.  
  5870. TextBox_2:GetPropertyChangedSignal('Text'):Connect(function()
  5871. local value = parse(TextBox_2.Text);
  5872.  
  5873. if value then
  5874.  
  5875. TextBox_2.Text = tostring(value);
  5876.  
  5877. task.spawn(Config.Callback,value);
  5878.  
  5879. Config.Default = value;
  5880. else
  5881. TextBox_2.Text = string.gsub(TextBox_2.Text, '[^0-9.]', '');
  5882.  
  5883. Config.Default = TextBox_2.Text;
  5884. end;
  5885. end);
  5886.  
  5887. local Args = {};
  5888.  
  5889. Args.Flag = Config.Flag;
  5890.  
  5891. function Args:SetText(str : string)
  5892. BlockText.Text = str or Config.Name
  5893. end;
  5894.  
  5895. function Args:GetText()
  5896. return BlockText.Text;
  5897. end;
  5898.  
  5899. function Args:SetValue(Value)
  5900. Config.Default = Value;
  5901.  
  5902. TextBox_2.Text = tostring(Config.Default);
  5903.  
  5904. Config.Callback(Value);
  5905. end;
  5906.  
  5907. Args.Signal = Signal:Connect(function(bool)
  5908. if bool then
  5909. MarcoUI:_Animation(BlockText,TweenInfo.new(0.2),{
  5910. TextTransparency = 0.3
  5911. });
  5912.  
  5913. MarcoUI:_Animation(BlockLine,TweenInfo.new(0.2),{
  5914. BackgroundTransparency = 0.5
  5915. });
  5916.  
  5917. MarcoUI:_Animation(UIStroke,TweenInfo.new(0.2),{
  5918. Transparency = 0
  5919. });
  5920.  
  5921. MarcoUI:_Animation(LinkValues,TweenInfo.new(0.2),{
  5922. BackgroundTransparency = 0
  5923. });
  5924.  
  5925. else
  5926. MarcoUI:_Animation(BlockText,TweenInfo.new(0.2),{
  5927. TextTransparency = 1
  5928. });
  5929.  
  5930. MarcoUI:_Animation(BlockLine,TweenInfo.new(0.2),{
  5931. BackgroundTransparency = 1
  5932. });
  5933.  
  5934. MarcoUI:_Animation(UIStroke,TweenInfo.new(0.2),{
  5935. Transparency = 1
  5936. });
  5937.  
  5938. MarcoUI:_Animation(LinkValues,TweenInfo.new(0.2),{
  5939. BackgroundTransparency = 1
  5940. });
  5941.  
  5942. end;
  5943. end);
  5944.  
  5945. function Args:GetValue()
  5946. return Config.Default;
  5947. end;
  5948.  
  5949. if Config.Flag then
  5950. MarcoUI.Flags[Config.Flag] = Args;
  5951. end;
  5952.  
  5953. return Args;
  5954. end;
  5955.  
  5956. function Args:AddDropdown(Config : Dropdown)
  5957. Config = MarcoUI.__CONFIG(Config,{
  5958. Name = "Dropdown",
  5959. Default = nil,
  5960. Values = {"Item 1","Item 2","Item 3"},
  5961. Multi = false,
  5962. Callback = function() end;
  5963. });
  5964.  
  5965. local DaTabarser = function(value)
  5966. if not value then return ''; end;
  5967.  
  5968. local Out;
  5969.  
  5970. if typeof(value) == 'table' then
  5971. if #value > 0 then
  5972. local x = {};
  5973.  
  5974. for i,v in next , value do
  5975. table.insert(x , tostring(v))
  5976. end;
  5977.  
  5978. Out = table.concat(x,' , ');
  5979. else
  5980. local x = {};
  5981.  
  5982. for i,v in next , value do
  5983. if v == true then
  5984. table.insert(x , tostring(i));
  5985. end
  5986. end;
  5987.  
  5988. Out = table.concat(x,' , ');
  5989. end;
  5990. else
  5991. Out = tostring(value);
  5992. end;
  5993.  
  5994. return Out;
  5995. end;
  5996.  
  5997. local Dropdown = Instance.new("Frame")
  5998. local BlockText = Instance.new("TextLabel")
  5999. local BlockLine = Instance.new("Frame")
  6000. local LinkValues = Instance.new("Frame")
  6001. local UIListLayout = Instance.new("UIListLayout")
  6002. local ValueItems = Instance.new("Frame")
  6003. local UIStroke = Instance.new("UIStroke")
  6004. local UICorner = Instance.new("UICorner")
  6005. local ValueText = Instance.new("TextLabel")
  6006. local MainButton = Instance.new("ImageButton")
  6007.  
  6008. Dropdown.Name = MarcoUI:_RandomString()
  6009. Dropdown.Parent = Parent
  6010. Dropdown.BackgroundTransparency = 1.000
  6011. Dropdown.BorderColor3 = Color3.fromRGB(0, 0, 0)
  6012. Dropdown.BorderSizePixel = 0
  6013. Dropdown.Size = UDim2.new(1, -1, 0, 55)
  6014. Dropdown.ZIndex = Zindex + 2
  6015.  
  6016. BlockText.Name = MarcoUI:_RandomString()
  6017. BlockText.Parent = Dropdown
  6018. BlockText.BackgroundTransparency = 1.000
  6019. BlockText.BorderColor3 = Color3.fromRGB(0, 0, 0)
  6020. BlockText.BorderSizePixel = 0
  6021. BlockText.Position = UDim2.new(0, 12, 0, 1)
  6022. BlockText.Size = UDim2.new(1, -20, 0, 25)
  6023. BlockText.ZIndex = Zindex + 3
  6024. BlockText.Font = Enum.Font.GothamMedium
  6025. BlockText.Text = Config.Name
  6026. BlockText.TextColor3 = MarcoUI.Colors.SwitchColor
  6027. BlockText.TextSize = 14.000
  6028. BlockText.TextTransparency = 0.100
  6029. BlockText.TextXAlignment = Enum.TextXAlignment.Left
  6030.  
  6031. if not BlockText.Text:byte() then
  6032. Dropdown.Size = UDim2.new(1, -1, 0, 25)
  6033. end;
  6034.  
  6035. table.insert(MarcoUI.Elements.SwitchColor , {
  6036. Element = BlockText,
  6037. Property = 'TextColor3'
  6038. });
  6039.  
  6040. BlockLine.Name = MarcoUI:_RandomString()
  6041. BlockLine.Parent = Dropdown
  6042. BlockLine.AnchorPoint = Vector2.new(0.5, 1)
  6043. BlockLine.BackgroundColor3 = MarcoUI.Colors.LineColor
  6044. BlockLine.BackgroundTransparency = 0.500
  6045. BlockLine.BorderColor3 = Color3.fromRGB(0, 0, 0)
  6046. BlockLine.BorderSizePixel = 0
  6047. BlockLine.Position = UDim2.new(0.5, 0, 1, 0)
  6048. BlockLine.Size = UDim2.new(1, -26, 0, 1)
  6049. BlockLine.ZIndex = Zindex + 3
  6050.  
  6051. table.insert(MarcoUI.Elements.LineColor,{
  6052. Element = BlockLine,
  6053. Property = "BackgroundColor3"
  6054. });
  6055.  
  6056. LinkValues.Name = MarcoUI:_RandomString()
  6057. LinkValues.Parent = Dropdown
  6058. LinkValues.AnchorPoint = Vector2.new(1, 0.540000021)
  6059. LinkValues.BackgroundTransparency = 1.000
  6060. LinkValues.BorderColor3 = Color3.fromRGB(0, 0, 0)
  6061. LinkValues.BorderSizePixel = 0
  6062. LinkValues.Position = UDim2.new(1, -12, 0, 15)
  6063. LinkValues.Size = UDim2.new(1, 0, 0, 18)
  6064. LinkValues.ZIndex = Zindex + 3
  6065.  
  6066. UIListLayout.Parent = LinkValues
  6067. UIListLayout.FillDirection = Enum.FillDirection.Horizontal
  6068. UIListLayout.HorizontalAlignment = Enum.HorizontalAlignment.Right
  6069. UIListLayout.SortOrder = Enum.SortOrder.LayoutOrder
  6070. UIListLayout.VerticalAlignment = Enum.VerticalAlignment.Center
  6071. UIListLayout.Padding = UDim.new(0, 8)
  6072.  
  6073. ValueItems.Name = MarcoUI:_RandomString()
  6074. ValueItems.Parent = Dropdown
  6075. ValueItems.AnchorPoint = Vector2.new(0.5, 1)
  6076. ValueItems.BackgroundColor3 = MarcoUI.Colors.DropColor
  6077. ValueItems.BorderColor3 = Color3.fromRGB(0, 0, 0)
  6078. ValueItems.BorderSizePixel = 0
  6079. ValueItems.ClipsDescendants = true
  6080. ValueItems.Position = UDim2.new(0.5, 0, 1, -7)
  6081. ValueItems.Size = UDim2.new(1, -25, 0, 18)
  6082. ValueItems.ZIndex = Zindex + 5
  6083.  
  6084. table.insert(MarcoUI.Elements.DropColor , {
  6085. Element = ValueItems,
  6086. Property = "BackgroundColor3"
  6087. })
  6088.  
  6089. UIStroke.Color = MarcoUI.Colors.StrokeColor
  6090. UIStroke.Parent = ValueItems
  6091.  
  6092. table.insert(MarcoUI.Elements.StrokeColor,{
  6093. Element = UIStroke,
  6094. Property = "Color"
  6095. });
  6096.  
  6097. UICorner.CornerRadius = UDim.new(0, 3)
  6098. UICorner.Parent = ValueItems
  6099.  
  6100. ValueText.Name = MarcoUI:_RandomString()
  6101. ValueText.Parent = ValueItems
  6102. ValueText.AnchorPoint = Vector2.new(0.5, 0.5)
  6103. ValueText.BackgroundTransparency = 1.000
  6104. ValueText.BorderColor3 = Color3.fromRGB(0, 0, 0)
  6105. ValueText.BorderSizePixel = 0
  6106. ValueText.Position = UDim2.new(0.5, 0, 0.5, 0)
  6107. ValueText.Size = UDim2.new(1, -10, 0, 15)
  6108. ValueText.ZIndex = Zindex + 8
  6109. ValueText.Font = Enum.Font.Gotham
  6110. ValueText.Text = DaTabarser(Config.Default)
  6111. ValueText.TextColor3 = MarcoUI.Colors.SwitchColor
  6112. ValueText.TextSize = 11.000
  6113. ValueText.TextXAlignment = Enum.TextXAlignment.Left
  6114.  
  6115. table.insert(MarcoUI.Elements.SwitchColor , {
  6116. Element = ValueText,
  6117. Property = 'TextColor3'
  6118. });
  6119.  
  6120. MainButton.Name = MarcoUI:_RandomString()
  6121. MainButton.Parent = ValueItems
  6122. MainButton.AnchorPoint = Vector2.new(1, 0.5)
  6123. MainButton.BackgroundTransparency = 1.000
  6124. MainButton.BorderColor3 = Color3.fromRGB(0, 0, 0)
  6125. MainButton.BorderSizePixel = 0
  6126. MainButton.Position = UDim2.new(1, -5, 0.5, 0)
  6127. MainButton.Size = UDim2.new(0, 13, 0, 13)
  6128. MainButton.ZIndex = Zindex + 5
  6129. MainButton.Image = MarcoUI:CacheImage("rbxassetid://109535175596957")
  6130.  
  6131. MarcoUI:_Hover(ValueItems,function()
  6132. MarcoUI:_Animation(ValueItems,TweenInfo.new(0.3),{
  6133. BackgroundColor3 = MarcoUI.Colors.MouseEnter
  6134. });
  6135. end,function()
  6136. MarcoUI:_Animation(ValueItems,TweenInfo.new(0.3),{
  6137. BackgroundColor3 = MarcoUI.Colors.DropColor
  6138. });
  6139. end);
  6140.  
  6141. local repi;
  6142. local Button = MarcoUI:_Input(ValueItems);
  6143.  
  6144. repi = MarcoUI:_LoadDropdown(Button,function(value)
  6145. Config.Default = value;
  6146.  
  6147. repi:SetData(Config.Default,Config.Values,Config.Multi,false);
  6148. repi:SetDefault(Config.Default);
  6149.  
  6150. ValueText.Text = DaTabarser(Config.Default);
  6151.  
  6152. Config.Callback(Config.Default);
  6153. end);
  6154.  
  6155. repi.EventOut:Connect(function(v)
  6156. if v then
  6157. MarcoUI:_Animation(MainButton,TweenInfo.new(0.2),{
  6158. Rotation = -180
  6159. })
  6160. else
  6161. MarcoUI:_Animation(MainButton,TweenInfo.new(0.2),{
  6162. Rotation = 0
  6163. })
  6164. end;
  6165. end)
  6166.  
  6167. repi:SetData(Config.Default,Config.Values,Config.Multi,false);
  6168. repi:Refersh();
  6169.  
  6170. local Args = {};
  6171.  
  6172. Args.Flag = Config.Flag;
  6173.  
  6174. function Args:SetValue(Value)
  6175. Config.Default = Value;
  6176.  
  6177. ValueText.Text = DaTabarser(Config.Default);
  6178.  
  6179. repi:SetData(Config.Default,Config.Values,Config.Multi,true);
  6180.  
  6181. Config.Callback(Value);
  6182. end;
  6183.  
  6184. function Args:SetText(str : string)
  6185. BlockText.Text = str or Config.Name
  6186. end;
  6187.  
  6188.  
  6189. function Args:GetText()
  6190. return BlockText.Text;
  6191. end;
  6192.  
  6193. function Args:SetValues(v)
  6194. Config.Values = v;
  6195.  
  6196. repi:SetData(Config.Default,Config.Values,Config.Multi,true);
  6197. end;
  6198.  
  6199. Args.Signal = Signal:Connect(function(bool)
  6200. if bool then
  6201. MarcoUI:_Animation(BlockText,TweenInfo.new(0.2),{
  6202. TextTransparency = 0.100
  6203. });
  6204.  
  6205. MarcoUI:_Animation(BlockLine,TweenInfo.new(0.2),{
  6206. BackgroundTransparency = 0.100
  6207. });
  6208.  
  6209. MarcoUI:_Animation(ValueItems,TweenInfo.new(0.2),{
  6210. BackgroundTransparency = 0
  6211. });
  6212.  
  6213. MarcoUI:_Animation(UIStroke,TweenInfo.new(0.2),{
  6214. Transparency = 0
  6215. });
  6216.  
  6217. MarcoUI:_Animation(ValueText,TweenInfo.new(0.32),{
  6218. TextTransparency = 0
  6219. });
  6220.  
  6221. MarcoUI:_Animation(MainButton,TweenInfo.new(0.2),{
  6222. ImageTransparency = 0
  6223. });
  6224. else
  6225. MarcoUI:_Animation(BlockText,TweenInfo.new(0.2),{
  6226. TextTransparency = 1
  6227. });
  6228.  
  6229. MarcoUI:_Animation(BlockLine,TweenInfo.new(0.2),{
  6230. BackgroundTransparency = 1
  6231. });
  6232.  
  6233. MarcoUI:_Animation(ValueItems,TweenInfo.new(0.2),{
  6234. BackgroundTransparency = 1
  6235. });
  6236.  
  6237. MarcoUI:_Animation(UIStroke,TweenInfo.new(0.2),{
  6238. Transparency = 1
  6239. });
  6240.  
  6241. MarcoUI:_Animation(ValueText,TweenInfo.new(0.2),{
  6242. TextTransparency = 1
  6243. });
  6244.  
  6245. MarcoUI:_Animation(MainButton,TweenInfo.new(0.2),{
  6246. ImageTransparency = 1
  6247. });
  6248. end;
  6249. end);
  6250.  
  6251. Args.Link = MarcoUI:_LoadOption({
  6252. AddLink = function(self ,Name , Default)
  6253. return MarcoUI:_AddLinkValue(Name , Default , LinkValues , LinkValues , {
  6254. Tween = TweenInfo.new(0.2)
  6255. } , Signal);
  6256. end,
  6257. Root = Dropdown
  6258. });
  6259.  
  6260. function Args:GetValue()
  6261. return Config.Default;
  6262. end;
  6263.  
  6264. if Config.Flag then
  6265. MarcoUI.Flags[Config.Flag] = Args;
  6266. end;
  6267.  
  6268. return Args;
  6269. end;
  6270.  
  6271. return Args;
  6272. end;
  6273.  
  6274. -- Theme Presets System
  6275. MarcoUI.ThemePresets = {
  6276. ["Crimson Red"] = {
  6277. Highlight = Color3.fromRGB(220, 20, 60),
  6278. Toggle = Color3.fromRGB(180, 16, 48),
  6279. Risky = Color3.fromRGB(255, 196, 0),
  6280. BGDBColor = Color3.fromRGB(10, 10, 10),
  6281. BlockColor = Color3.fromRGB(16, 16, 16),
  6282. StrokeColor = Color3.fromRGB(35, 35, 35),
  6283. SwitchColor = Color3.fromRGB(245, 245, 245),
  6284. DropColor = Color3.fromRGB(22, 22, 22),
  6285. MouseEnter = Color3.fromRGB(40, 40, 40),
  6286. BlockBackground = Color3.fromRGB(24, 24, 24),
  6287. LineColor = Color3.fromRGB(220, 20, 60),
  6288. HighStrokeColor = Color3.fromRGB(55, 55, 55),
  6289. },
  6290. ["Ocean Blue"] = {
  6291. Highlight = Color3.fromRGB(52, 152, 219),
  6292. Toggle = Color3.fromRGB(41, 128, 185),
  6293. Risky = Color3.fromRGB(255, 196, 0),
  6294. BGDBColor = Color3.fromRGB(12, 15, 20),
  6295. BlockColor = Color3.fromRGB(18, 22, 28),
  6296. StrokeColor = Color3.fromRGB(35, 42, 50),
  6297. SwitchColor = Color3.fromRGB(245, 245, 245),
  6298. DropColor = Color3.fromRGB(25, 30, 38),
  6299. MouseEnter = Color3.fromRGB(45, 55, 65),
  6300. BlockBackground = Color3.fromRGB(28, 35, 45),
  6301. LineColor = Color3.fromRGB(52, 152, 219),
  6302. HighStrokeColor = Color3.fromRGB(60, 70, 80),
  6303. },
  6304. ["Neon Purple"] = {
  6305. Highlight = Color3.fromRGB(155, 89, 182),
  6306. Toggle = Color3.fromRGB(142, 68, 173),
  6307. Risky = Color3.fromRGB(255, 196, 0),
  6308. BGDBColor = Color3.fromRGB(15, 10, 20),
  6309. BlockColor = Color3.fromRGB(22, 16, 28),
  6310. StrokeColor = Color3.fromRGB(40, 30, 50),
  6311. SwitchColor = Color3.fromRGB(245, 245, 245),
  6312. DropColor = Color3.fromRGB(28, 20, 35),
  6313. MouseEnter = Color3.fromRGB(50, 40, 60),
  6314. BlockBackground = Color3.fromRGB(32, 24, 40),
  6315. LineColor = Color3.fromRGB(155, 89, 182),
  6316. HighStrokeColor = Color3.fromRGB(60, 50, 70),
  6317. },
  6318. ["Emerald Green"] = {
  6319. Highlight = Color3.fromRGB(46, 204, 113),
  6320. Toggle = Color3.fromRGB(39, 174, 96),
  6321. Risky = Color3.fromRGB(255, 196, 0),
  6322. BGDBColor = Color3.fromRGB(10, 15, 12),
  6323. BlockColor = Color3.fromRGB(16, 22, 18),
  6324. StrokeColor = Color3.fromRGB(35, 45, 38),
  6325. SwitchColor = Color3.fromRGB(245, 245, 245),
  6326. DropColor = Color3.fromRGB(22, 28, 24),
  6327. MouseEnter = Color3.fromRGB(40, 50, 43),
  6328. BlockBackground = Color3.fromRGB(24, 32, 27),
  6329. LineColor = Color3.fromRGB(46, 204, 113),
  6330. HighStrokeColor = Color3.fromRGB(55, 65, 58),
  6331. },
  6332. ["Amber Gold"] = {
  6333. Highlight = Color3.fromRGB(241, 196, 15),
  6334. Toggle = Color3.fromRGB(230, 126, 34),
  6335. Risky = Color3.fromRGB(255, 196, 0),
  6336. BGDBColor = Color3.fromRGB(18, 15, 10),
  6337. BlockColor = Color3.fromRGB(26, 22, 16),
  6338. StrokeColor = Color3.fromRGB(45, 38, 28),
  6339. SwitchColor = Color3.fromRGB(245, 245, 245),
  6340. DropColor = Color3.fromRGB(32, 28, 20),
  6341. MouseEnter = Color3.fromRGB(50, 45, 35),
  6342. BlockBackground = Color3.fromRGB(35, 30, 22),
  6343. LineColor = Color3.fromRGB(241, 196, 15),
  6344. HighStrokeColor = Color3.fromRGB(60, 55, 45),
  6345. },
  6346. ["Midnight"] = {
  6347. Highlight = Color3.fromRGB(116, 185, 255),
  6348. Toggle = Color3.fromRGB(100, 181, 246),
  6349. Risky = Color3.fromRGB(255, 196, 0),
  6350. BGDBColor = Color3.fromRGB(5, 5, 8),
  6351. BlockColor = Color3.fromRGB(12, 12, 18),
  6352. StrokeColor = Color3.fromRGB(25, 25, 35),
  6353. SwitchColor = Color3.fromRGB(240, 240, 245),
  6354. DropColor = Color3.fromRGB(18, 18, 25),
  6355. MouseEnter = Color3.fromRGB(35, 35, 45),
  6356. BlockBackground = Color3.fromRGB(20, 20, 28),
  6357. LineColor = Color3.fromRGB(116, 185, 255),
  6358. HighStrokeColor = Color3.fromRGB(40, 40, 50),
  6359. },
  6360. };
  6361.  
  6362. function MarcoUI:GetTheme()
  6363. return MarcoUI.Colors;
  6364. end;
  6365.  
  6366. function MarcoUI:GetThemePresets()
  6367. return MarcoUI.ThemePresets;
  6368. end;
  6369.  
  6370. function MarcoUI:SetTheme(name)
  6371. -- Check if it's a custom theme table (user-defined)
  6372. if type(name) == "table" then
  6373. MarcoUI.Colors = {};
  6374. for k, v in pairs(name) do
  6375. MarcoUI.Colors[k] = v;
  6376. end;
  6377. MarcoUI:RefreshCurrentColor();
  6378. return;
  6379. end;
  6380.  
  6381. -- Check if it's a preset name
  6382. if MarcoUI.ThemePresets[name] then
  6383. MarcoUI.Colors = {};
  6384. for k, v in pairs(MarcoUI.ThemePresets[name]) do
  6385. MarcoUI.Colors[k] = v;
  6386. end;
  6387. MarcoUI:RefreshCurrentColor();
  6388. return;
  6389. end;
  6390.  
  6391. -- Legacy theme support
  6392. if name == "Dark Green" then
  6393. MarcoUI.Colors = {
  6394. ["BGDBColor"] = Color3.new(0.0429964, 0.110345, 0.0727226),
  6395. ["BlockBackground"] = Color3.new(0.159287, 0.234483, 0.201811),
  6396. ["BlockColor"] = Color3.new(0, 0.137931, 0.0951249),
  6397. ["DropColor"] = Color3.new(0, 0.227586, 0.100452),
  6398. ["Highlight"] = Color3.new(0.0666667, 0.992157, 0.628343),
  6399. ["LineColor"] = Color3.new(0.263258, 0.372414, 0.329504),
  6400. ["MouseEnter"] = Color3.new(0, 0.841379, 0.51063),
  6401. ["Risky"] = Color3.new(1, 0.398296, 0.152941),
  6402. ["StrokeColor"] = Color3.new(0.132342, 0.241379, 0.198517),
  6403. ["SwitchColor"] = Color3.new(0.927586, 1, 0.980523),
  6404. ["Toggle"] = Color3.new(0, 0.613793, 0.220119),
  6405. HighStrokeColor = Color3.new(0, 0.241379, 0.186445),
  6406. };
  6407. elseif name == "Default" then
  6408. MarcoUI.Colors = {
  6409. Highlight = Color3.fromRGB(17, 238, 253),
  6410. Toggle = Color3.fromRGB(14, 203, 213),
  6411. Risky = Color3.fromRGB(251, 255, 39),
  6412. BGDBColor = Color3.fromRGB(22, 24, 29),
  6413. BlockColor = Color3.fromRGB(28, 29, 34),
  6414. StrokeColor = Color3.fromRGB(37, 38, 43),
  6415. SwitchColor = Color3.fromRGB(255, 255, 255),
  6416. DropColor = Color3.fromRGB(33, 35, 39),
  6417. MouseEnter = Color3.fromRGB(55, 58, 65),
  6418. BlockBackground = Color3.fromRGB(39, 40, 47),
  6419. LineColor = Color3.fromRGB(65, 65, 65),
  6420. HighStrokeColor = Color3.fromRGB(55, 56, 63),
  6421. };
  6422. elseif name == "Dark Blue" then
  6423. MarcoUI.Colors = {
  6424. ["BGDBColor"] = Color3.new(0.0393817, 0.0754204, 0.165517),
  6425. ["BlockBackground"] = Color3.new(0, 0.0618311, 0.172414),
  6426. ["BlockColor"] = Color3.new(0, 0.0172414, 0.103448),
  6427. ["DropColor"] = Color3.new(0, 0.0965518, 0.289655),
  6428. ["HighStrokeColor"] = Color3.new(0, 0.132604, 0.234483),
  6429. ["Highlight"] = Color3.new(0.0666667, 0.781528, 0.992157),
  6430. ["LineColor"] = Color3.new(0, 0.110345, 0.275862),
  6431. ["MouseEnter"] = Color3.new(0, 0.606896, 1),
  6432. ["Risky"] = Color3.new(0.0310345, 0.819572, 1),
  6433. ["StrokeColor"] = Color3.new(0, 0.119857, 0.248276),
  6434. ["SwitchColor"] = Color3.new(1, 1, 1),
  6435. ["Toggle"] = Color3.new(0.054902, 0.463935, 0.835294)
  6436. }
  6437. elseif name == "Purple Rose" then
  6438. MarcoUI.Colors = {
  6439. ["BGDBColor"] = Color3.new(0.0459068, 0.030321, 0.117241),
  6440. ["BlockBackground"] = Color3.new(0.156272, 0.119596, 0.324138),
  6441. ["BlockColor"] = Color3.new(0.0948428, 0.0576457, 0.165517),
  6442. ["DropColor"] = Color3.new(0.131034, 0, 0.0813317),
  6443. ["HighStrokeColor"] = Color3.new(0.136259, 0.101237, 0.296552),
  6444. ["Highlight"] = Color3.new(0.992157, 0.0666667, 0.33474),
  6445. ["LineColor"] = Color3.new(0.20872, 0.137408, 0.372414),
  6446. ["MouseEnter"] = Color3.new(0.365517, 0, 0.120999),
  6447. ["Risky"] = Color3.new(1, 0.6086, 0.152941),
  6448. ["StrokeColor"] = Color3.new(0.148499, 0.137836, 0.248276),
  6449. ["SwitchColor"] = Color3.new(1, 1, 1),
  6450. ["Toggle"] = Color3.new(0.835294, 0.054902, 0.248654)
  6451. }
  6452. elseif name == "Skeet" then
  6453. MarcoUI.Colors = {
  6454. ["BGDBColor"] = Color3.new(0.114578, 0.125191, 0.151724),
  6455. ["BlockBackground"] = Color3.new(0.128181, 0.131124, 0.151724),
  6456. ["BlockColor"] = Color3.new(0.0732699, 0.0760008, 0.0896552),
  6457. ["DropColor"] = Color3.new(0.0809037, 0.0861197, 0.0965517),
  6458. ["HighStrokeColor"] = Color3.new(0.119382, 0.1217, 0.137931),
  6459. ["Highlight"] = Color3.new(0, 0.634483, 0.0700119),
  6460. ["LineColor"] = Color3.new(0.151724, 0.151724, 0.151724),
  6461. ["MouseEnter"] = Color3.new(0.134007, 0.141391, 0.158621),
  6462. ["Risky"] = Color3.new(0.984314, 1, 0.152941),
  6463. ["StrokeColor"] = Color3.new(0.0769798, 0.0790924, 0.0896552),
  6464. ["SwitchColor"] = Color3.new(1, 1, 1),
  6465. ["Toggle"] = Color3.new(0, 0.324138, 0.10283)
  6466. }
  6467. end;
  6468.  
  6469. MarcoUI:RefreshCurrentColor()
  6470. end;
  6471.  
  6472. -- Global color override function
  6473. function MarcoUI:SetGlobalAccentColor(color)
  6474. if typeof(color) == "Color3" then
  6475. MarcoUI.Colors.Highlight = color;
  6476. MarcoUI:RefreshCurrentColor();
  6477. end;
  6478. end;
  6479.  
  6480. function MarcoUI:RefreshCurrentColor()
  6481. for i,v in next , MarcoUI.Elements.Highlight do
  6482. if v.Element and v.Property then
  6483. v.Element[v.Property] = MarcoUI.Colors.Highlight;
  6484. end;
  6485. end;
  6486.  
  6487. for i,v in next , MarcoUI.Elements do
  6488. if v.Element and v.Property and v.Element:GetAttribute('Enabled') then
  6489. v.Element[v.Property] = MarcoUI.Colors.Highlight;
  6490. end;
  6491. end;
  6492.  
  6493. for i,v in next , MarcoUI.Elements.Risky do
  6494. if v.Element and v.Property then
  6495. v.Element[v.Property] = MarcoUI.Colors.Risky;
  6496. end;
  6497. end;
  6498.  
  6499. for i,v in next , MarcoUI.Elements.BlockColor do
  6500. if v.Element and v.Property then
  6501. v.Element[v.Property] = MarcoUI.Colors.BlockColor;
  6502. end;
  6503. end;
  6504.  
  6505. for i,v in next , MarcoUI.Elements.BGDBColor do
  6506. if v.Element and v.Property then
  6507. v.Element[v.Property] = MarcoUI.Colors.BGDBColor;
  6508. end;
  6509. end;
  6510.  
  6511. for i,v in next , MarcoUI.Elements.StrokeColor do
  6512. if v.Element and v.Property then
  6513. v.Element[v.Property] = MarcoUI.Colors.StrokeColor;
  6514. end;
  6515. end;
  6516.  
  6517. for i,v in next , MarcoUI.Elements.SwitchColor do
  6518. if v.Element and v.Property and v.Element[v.Property] ~= MarcoUI.Colors.MouseEnter then
  6519. v.Element[v.Property] = MarcoUI.Colors.SwitchColor;
  6520. end;
  6521. end;
  6522.  
  6523. for i,v in next , MarcoUI.Elements.BlockBackground do
  6524. if v.Element and v.Property and v.Element[v.Property] then
  6525. v.Element[v.Property] = MarcoUI.Colors.BlockBackground;
  6526. end;
  6527. end;
  6528.  
  6529. for i,v in next , MarcoUI.Elements.DropColor do
  6530. if v.Element and v.Property then
  6531. v.Element[v.Property] = MarcoUI.Colors.DropColor;
  6532. end;
  6533. end;
  6534.  
  6535. for i,v in next , MarcoUI.Elements.LineColor do
  6536. if v.Element and v.Property then
  6537. v.Element[v.Property] = MarcoUI.Colors.LineColor;
  6538. end;
  6539. end;
  6540.  
  6541. for i,v in next , MarcoUI.Elements.HighStrokeColor do
  6542. if v.Element and v.Property then
  6543. v.Element[v.Property] = MarcoUI.Colors.HighStrokeColor;
  6544. end;
  6545. end;
  6546. end;
  6547.  
  6548. function MarcoUI:ChangeHighlightColor(NewColor: Color3)
  6549. local H,S,V = NewColor:ToHSV();
  6550.  
  6551. MarcoUI.Colors.Highlight = NewColor;
  6552. MarcoUI.Colors.Toggle = Color3.fromHSV(H,S,V - 0.2);
  6553.  
  6554. for i,v in next , MarcoUI.Elements.Highlight do
  6555. if v.Element and v.Property then
  6556. v.Element[v.Property] = NewColor;
  6557. end;
  6558. end;
  6559.  
  6560. for i,v in next , MarcoUI.Elements do
  6561. if v.Element and v.Property and v.Element:GetAttribute('Enabled') then
  6562. v.Element[v.Property] = NewColor;
  6563. end;
  6564. end;
  6565. end;
  6566.  
  6567. function MarcoUI:RainbowTexturing(speed)
  6568. if speed == false then
  6569. MarcoUI.__RainbowTexturingRunning = false;
  6570.  
  6571. if MarcoUI.__RainbowTexturingThread then
  6572. MarcoUI.__RainbowTexturingThread:Disconnect();
  6573. MarcoUI.__RainbowTexturingThread = nil;
  6574. end;
  6575.  
  6576. return;
  6577. end;
  6578.  
  6579. -- Default speed is 0.15 (sleek and smooth)
  6580. -- Speed controls how fast the hue cycles (0.05 = very slow, 0.15 = default sleek, 0.3 = fast, 0.6 = very fast)
  6581. speed = speed or 0.15;
  6582.  
  6583. if MarcoUI.__RainbowTexturingThread then
  6584. MarcoUI.__RainbowTexturingRunning = false;
  6585. MarcoUI.__RainbowTexturingThread:Disconnect();
  6586. end;
  6587.  
  6588. MarcoUI.__RainbowTexturingRunning = true;
  6589. local startTime = tick();
  6590. local lastColor = Color3.fromRGB(220, 20, 60);
  6591.  
  6592. -- Use RenderStepped for ultra-smooth, frame-perfect updates
  6593. MarcoUI.__RainbowTexturingThread = RunService.RenderStepped:Connect(function()
  6594. if not MarcoUI.__RainbowTexturingRunning then
  6595. return;
  6596. end;
  6597.  
  6598. -- Calculate hue based on elapsed time and speed - seamless continuous cycle
  6599. local elapsed = tick() - startTime;
  6600. local hue = (elapsed * speed) % 1;
  6601.  
  6602. -- Use smooth color interpolation for cleaner transitions
  6603. local rainbow = Color3.fromHSV(hue, 0.95, 0.98); -- Slightly desaturated for cleaner look
  6604.  
  6605. -- Smooth interpolation between last color and new color for ultra-smooth transitions
  6606. local lerpFactor = 0.15; -- Smooth interpolation factor
  6607. rainbow = lastColor:lerp(rainbow, lerpFactor);
  6608. lastColor = rainbow;
  6609.  
  6610. MarcoUI:ChangeHighlightColor(rainbow);
  6611.  
  6612. MarcoUI.Colors.LineColor = rainbow;
  6613.  
  6614. for i,v in next , MarcoUI.Elements.LineColor do
  6615. if v.Element and v.Property then
  6616. v.Element[v.Property] = rainbow;
  6617. end;
  6618. end;
  6619.  
  6620. -- Real-time RGB updates for active toggles
  6621. if MarcoUI.__ActiveRGBToggles then
  6622. for i, toggleData in ipairs(MarcoUI.__ActiveRGBToggles) do
  6623. if toggleData.Toggle and toggleData.Toggle.Parent then
  6624. toggleData.Toggle.BackgroundColor3 = rainbow;
  6625. end;
  6626. end;
  6627. end;
  6628.  
  6629. -- Real-time RGB updates for active sliders
  6630. if MarcoUI.__ActiveRGBSliders then
  6631. for i, sliderData in ipairs(MarcoUI.__ActiveRGBSliders) do
  6632. if sliderData.SliderInput and sliderData.SliderInput.Parent then
  6633. sliderData.SliderInput.BackgroundColor3 = rainbow;
  6634. end;
  6635. end;
  6636. end;
  6637. end);
  6638.  
  6639. return MarcoUI.__RainbowTexturingThread;
  6640. end;
  6641.  
  6642. function MarcoUI.new(Config : Window)
  6643. Config = Config or {};
  6644.  
  6645. -- Apply theme BEFORE any UI elements are created
  6646. if Config.Theme then
  6647. if type(Config.Theme) == "string" then
  6648. -- Preset theme name
  6649. MarcoUI:SetTheme(Config.Theme);
  6650. elseif type(Config.Theme) == "table" then
  6651. -- Custom theme table
  6652. MarcoUI:SetTheme(Config.Theme);
  6653. end;
  6654. end;
  6655.  
  6656. if not Config.Scale then
  6657. if MarcoUI:_IsMobile() then
  6658. Config.Scale = MarcoUI.Scale.Mobile;
  6659. else
  6660. Config.Scale = MarcoUI.Scale.Window;
  6661. end;
  6662. end;
  6663.  
  6664. local defaultGameName = "Roblox";
  6665. if Config and Config.GameName then
  6666. defaultGameName = Config.GameName;
  6667. end;
  6668.  
  6669. local defaultMinimizeKey = Enum.KeyCode.M;
  6670. if Config and Config.MinimizeKeybind then
  6671. defaultMinimizeKey = Config.MinimizeKeybind;
  6672. end;
  6673.  
  6674. Config = MarcoUI.__CONFIG(Config , {
  6675. Name = "MarcoUI",
  6676. Keybind = "Insert",
  6677. Logo = MarcoUI.Logo;
  6678. Scale = MarcoUI.Scale.Window,
  6679. TextSize = 15,
  6680. GameName = defaultGameName,
  6681. MinimizeKeybind = defaultMinimizeKey,
  6682. Theme = nil, -- Don't include in default config
  6683. Pattern = nil, -- Don't include in default config
  6684. KeyType = "Free", -- "Premium" or "Free"
  6685. KeyExpiration = "Lifetime" -- Customize this
  6686. });
  6687.  
  6688. local TabHover = MarcoUI.__SIGNAL(false);
  6689. local WindowOpen = MarcoUI.__SIGNAL(true);
  6690. local WindowArgs = {
  6691. SelectedTab = nil,
  6692. Tabs = {},
  6693. LastTab = nil,
  6694. IsOpen = true,
  6695. IsMinimized = false,
  6696. AlwayShowTab = false,
  6697. THREADS = {},
  6698. PerformanceMode = false,
  6699. Notify = MarcoUI.newNotify()
  6700. };
  6701.  
  6702. WindowArgs.Username = (LocalPlayer and LocalPlayer.Name) or "Player";
  6703.  
  6704. if MarcoUI:_IsMobile() then
  6705. WindowArgs.AlwayShowTab = true;
  6706. end;
  6707.  
  6708. local WindowGui = Instance.new("ScreenGui")
  6709. local MainFrame = Instance.new("Frame")
  6710. local UICorner = Instance.new("UICorner")
  6711. local TabFrame = Instance.new("Frame")
  6712. local UICorner_2 = Instance.new("UICorner")
  6713. local LineFrame1 = Instance.new("Frame")
  6714. local CompLogo = Instance.new("ImageLabel")
  6715. local WindowLabel = Instance.new("TextLabel")
  6716. local TabButtons = Instance.new("Frame")
  6717. local SelectionFrame = Instance.new("Frame")
  6718. local UICorner_3 = Instance.new("UICorner")
  6719. local TabButtonScrollingFrame = Instance.new("ScrollingFrame")
  6720. local UIListLayout = Instance.new("UIListLayout")
  6721. local Userinfo = Instance.new("Frame")
  6722. local UserProfile = Instance.new("ImageLabel")
  6723. local UICorner_4 = Instance.new("UICorner")
  6724. local UserText = Instance.new("TextLabel")
  6725. local ExpireText = Instance.new("TextLabel")
  6726. local TabMainFrame = Instance.new("Frame")
  6727.  
  6728. MarcoUI:_DrawKeybinds(WindowGui);
  6729.  
  6730. UIListLayout:GetPropertyChangedSignal('AbsoluteContentSize'):Connect(function()
  6731. TabButtonScrollingFrame.CanvasSize = UDim2.fromOffset(0,UIListLayout.AbsoluteContentSize.Y)
  6732. end);
  6733.  
  6734. WindowGui.Name = "u?name=MarcoUI_?"..MarcoUI:_RandomString();
  6735. WindowGui.Parent = CoreGui;
  6736. WindowGui.Enabled = true;
  6737. WindowGui.ResetOnSpawn = false
  6738. WindowGui.IgnoreGuiInset = true;
  6739. WindowGui.ZIndexBehavior = Enum.ZIndexBehavior.Global;
  6740.  
  6741. MarcoUI.ProtectGui(WindowGui);
  6742.  
  6743. WindowArgs.Root = WindowGui;
  6744.  
  6745. table.insert(MarcoUI.Windows , WindowGui);
  6746.  
  6747. MainFrame.Active = true;
  6748. MainFrame.Name = MarcoUI:_RandomString()
  6749. MainFrame.Parent = WindowGui
  6750. MainFrame.AnchorPoint = Vector2.new(0.5, 0.5)
  6751. MainFrame.BackgroundColor3 = MarcoUI.Colors.BGDBColor
  6752.  
  6753. table.insert(MarcoUI.Elements.BGDBColor,{
  6754. Element = MainFrame,
  6755. Property = 'BackgroundColor3'
  6756. });
  6757.  
  6758. -- Premium indicator on MainFrame (subtle gold border)
  6759. if isPremium then
  6760. local PremiumMainBorder = Instance.new("UIStroke")
  6761. PremiumMainBorder.Name = MarcoUI:_RandomString()
  6762. PremiumMainBorder.Parent = MainFrame
  6763. PremiumMainBorder.Color = Color3.fromRGB(255, 215, 0)
  6764. PremiumMainBorder.Thickness = 2
  6765. PremiumMainBorder.Transparency = 0.3
  6766. PremiumMainBorder.ZIndex = 5
  6767. end;
  6768.  
  6769. MainFrame.BorderColor3 = Color3.fromRGB(0, 0, 0)
  6770. MainFrame.BorderSizePixel = 0
  6771. MainFrame.Position = UDim2.fromScale(0.5,0.5);
  6772. -- Start with small size and transparent for intro animation
  6773. MainFrame.Size = UDim2.new(0, 0, 0, 0)
  6774. MainFrame.BackgroundTransparency = 1
  6775. MainFrame.Visible = true
  6776. MainFrame.ZIndex = 4
  6777.  
  6778. MainFrame:GetPropertyChangedSignal('BackgroundTransparency'):Connect(function()
  6779. if MainFrame.BackgroundTransparency > 0.9 then
  6780. MainFrame.Visible = false;
  6781. else
  6782. MainFrame.Visible = true;
  6783. end;
  6784. end)
  6785.  
  6786. -- Intro animation: Scale and fade in
  6787. MarcoUI:_Animation(MainFrame,TweenInfo.new(0.6,Enum.EasingStyle.Exponential,Enum.EasingDirection.Out),{
  6788. Size = Config.Scale,
  6789. BackgroundTransparency = 0
  6790. });
  6791.  
  6792. UICorner.Parent = MainFrame
  6793.  
  6794. -- Pattern overlay system for MainFrame
  6795. if Config.Pattern and type(Config.Pattern) == "string" and Config.Pattern ~= "" then
  6796. local PatternOverlay = Instance.new("ImageLabel")
  6797. PatternOverlay.Name = MarcoUI:_RandomString()
  6798. PatternOverlay.Parent = MainFrame
  6799. PatternOverlay.BackgroundTransparency = 1.000
  6800. PatternOverlay.BorderSizePixel = 0
  6801. PatternOverlay.Size = UDim2.new(1, 0, 1, 0)
  6802. PatternOverlay.ZIndex = 3
  6803. PatternOverlay.Image = Config.Pattern
  6804. PatternOverlay.ImageTransparency = 0.95 -- High transparency for subtle texture
  6805. PatternOverlay.ImageColor3 = Color3.fromRGB(255, 255, 255)
  6806. PatternOverlay.ScaleType = Enum.ScaleType.Tile
  6807. PatternOverlay.TileSize = UDim2.new(0, 50, 0, 50) -- Adjustable tile size
  6808. end;
  6809.  
  6810. local TabFrameBaseTrans = 0.25;
  6811.  
  6812. TabFrame.Active = true
  6813. TabFrame.Name = MarcoUI:_RandomString()
  6814. TabFrame.Parent = MainFrame
  6815. TabFrame.AnchorPoint = Vector2.new(1, 0)
  6816. TabFrame.BackgroundColor3 = MarcoUI.Colors.BGDBColor
  6817.  
  6818. table.insert(MarcoUI.Elements.BGDBColor,{
  6819. Element = TabFrame,
  6820. Property = 'BackgroundColor3'
  6821. });
  6822.  
  6823. -- Premium indicator on TabFrame (subtle gold accent)
  6824. if isPremium then
  6825. local PremiumTabAccent = Instance.new("Frame")
  6826. PremiumTabAccent.Name = MarcoUI:_RandomString()
  6827. PremiumTabAccent.Parent = TabFrame
  6828. PremiumTabAccent.BackgroundColor3 = Color3.fromRGB(255, 215, 0)
  6829. PremiumTabAccent.BackgroundTransparency = 0.7
  6830. PremiumTabAccent.BorderSizePixel = 0
  6831. PremiumTabAccent.Size = UDim2.new(0, 3, 1, 0)
  6832. PremiumTabAccent.Position = UDim2.new(0, 0, 0, 0)
  6833. PremiumTabAccent.ZIndex = 1
  6834. end;
  6835.  
  6836. TabFrame.BackgroundTransparency = TabFrameBaseTrans
  6837. TabFrame.BorderColor3 = Color3.fromRGB(0, 0, 0)
  6838. TabFrame.BorderSizePixel = 0
  6839. TabFrame.ClipsDescendants = true
  6840. TabFrame.Position = UDim2.new(0, 25, 0, 0)
  6841. TabFrame.Size = UDim2.new(0, 85, 1, 0)
  6842.  
  6843. UICorner_2.Parent = TabFrame
  6844.  
  6845. -- Pattern overlay system for TabFrame (sidebar)
  6846. if Config.Pattern and type(Config.Pattern) == "string" and Config.Pattern ~= "" then
  6847. local TabPatternOverlay = Instance.new("ImageLabel")
  6848. TabPatternOverlay.Name = MarcoUI:_RandomString()
  6849. TabPatternOverlay.Parent = TabFrame
  6850. TabPatternOverlay.BackgroundTransparency = 1.000
  6851. TabPatternOverlay.BorderSizePixel = 0
  6852. TabPatternOverlay.Size = UDim2.new(1, 0, 1, 0)
  6853. TabPatternOverlay.ZIndex = 2
  6854. TabPatternOverlay.Image = Config.Pattern
  6855. TabPatternOverlay.ImageTransparency = 0.98 -- Very high transparency for subtle texture
  6856. TabPatternOverlay.ImageColor3 = Color3.fromRGB(255, 255, 255)
  6857. TabPatternOverlay.ScaleType = Enum.ScaleType.Tile
  6858. TabPatternOverlay.TileSize = UDim2.new(0, 50, 0, 50)
  6859. end;
  6860.  
  6861. LineFrame1.Name = MarcoUI:_RandomString()
  6862. LineFrame1.Parent = TabFrame
  6863. LineFrame1.AnchorPoint = Vector2.new(1, 0)
  6864. LineFrame1.BackgroundColor3 = MarcoUI.Colors.BGDBColor
  6865.  
  6866. table.insert(MarcoUI.Elements.BGDBColor,{
  6867. Element = LineFrame1,
  6868. Property = 'BackgroundColor3'
  6869. });
  6870.  
  6871. LineFrame1.BorderColor3 = Color3.fromRGB(0, 0, 0)
  6872. LineFrame1.BorderSizePixel = 0
  6873. LineFrame1.Position = UDim2.new(1, -5, 0, 0)
  6874. LineFrame1.Size = UDim2.new(0, 20, 1, 0)
  6875.  
  6876. CompLogo.Name = MarcoUI:_RandomString()
  6877. CompLogo.Parent = TabFrame
  6878. CompLogo.BackgroundTransparency = 1.000
  6879. CompLogo.BorderColor3 = Color3.fromRGB(0, 0, 0)
  6880. CompLogo.BorderSizePixel = 0
  6881. CompLogo.Position = UDim2.new(0, 9, 0, 7)
  6882. CompLogo.Size = UDim2.new(0, 45, 0, 45)
  6883. CompLogo.Image = Config.Logo
  6884.  
  6885. if MarcoUI.CustomHighlightMode then
  6886. CompLogo.ImageColor3 = MarcoUI.Colors.Highlight;
  6887.  
  6888. table.insert(MarcoUI.Elements.Highlight , {
  6889. Element = CompLogo,
  6890. Property = 'ImageColor3'
  6891. });
  6892. end;
  6893.  
  6894. WindowLabel.Name = MarcoUI:_RandomString()
  6895. WindowLabel.Parent = TabFrame
  6896. WindowLabel.BackgroundTransparency = 1.000
  6897. WindowLabel.BorderColor3 = Color3.fromRGB(0, 0, 0)
  6898. WindowLabel.BorderSizePixel = 0
  6899. WindowLabel.Position = UDim2.new(0, 60, 0, 12)
  6900. WindowLabel.Size = UDim2.new(0, 200, 0, 20)
  6901. WindowLabel.Font = Enum.Font.GothamBold
  6902. WindowLabel.Text = Config.Name
  6903. WindowLabel.TextColor3 = MarcoUI.Colors.SwitchColor
  6904. WindowLabel.TextSize = Config.TextSize
  6905. WindowLabel.TextXAlignment = Enum.TextXAlignment.Left
  6906.  
  6907. table.insert(MarcoUI.Elements.SwitchColor , {
  6908. Element = WindowLabel,
  6909. Property = 'TextColor3'
  6910. });
  6911.  
  6912. -- Game Name Indicator
  6913. local GameNameLabel = Instance.new("TextLabel")
  6914. GameNameLabel.Name = MarcoUI:_RandomString()
  6915. GameNameLabel.Parent = TabFrame
  6916. GameNameLabel.BackgroundTransparency = 1.000
  6917. GameNameLabel.BorderColor3 = Color3.fromRGB(0, 0, 0)
  6918. GameNameLabel.BorderSizePixel = 0
  6919. GameNameLabel.Position = UDim2.new(0, 60, 0, 32)
  6920. GameNameLabel.Size = UDim2.new(0, 200, 0, 16)
  6921. GameNameLabel.Font = Enum.Font.Gotham
  6922. GameNameLabel.Text = Config.GameName
  6923. GameNameLabel.TextColor3 = Color3.fromRGB(180, 180, 180)
  6924. GameNameLabel.TextSize = 11
  6925. GameNameLabel.TextTransparency = 0.3
  6926. GameNameLabel.TextXAlignment = Enum.TextXAlignment.Left
  6927.  
  6928. TabButtons.Name = MarcoUI:_RandomString()
  6929. TabButtons.Parent = TabFrame
  6930. TabButtons.BackgroundTransparency = 1.000
  6931. TabButtons.BorderColor3 = Color3.fromRGB(0, 0, 0)
  6932. TabButtons.BorderSizePixel = 0
  6933. TabButtons.Position = UDim2.new(0, 0, 0, 60)
  6934. TabButtons.Size = UDim2.new(1, -25, 1, -125)
  6935.  
  6936. -- Home Button (Pinned at top, bigger than normal tabs)
  6937. local HomeButton = Instance.new("Frame")
  6938. local HomeIcon = Instance.new("ImageLabel")
  6939. local HomeLabel = Instance.new("TextLabel")
  6940. local HomeHighlight = Instance.new("Frame")
  6941. local HomeCorner = Instance.new("UICorner")
  6942. local HomeTabOpenSignal = MarcoUI.__SIGNAL(false);
  6943. local HomeContent = nil;
  6944.  
  6945. HomeButton.Name = MarcoUI:_RandomString()
  6946. HomeButton.Parent = TabButtons
  6947. HomeButton.BackgroundTransparency = 1.000
  6948. HomeButton.BorderSizePixel = 0
  6949. HomeButton.Size = UDim2.new(1, -10, 0, 38) -- Bigger than normal tabs (38px vs 32px)
  6950. HomeButton.ZIndex = 3
  6951.  
  6952. HomeIcon.Name = MarcoUI:_RandomString()
  6953. HomeIcon.Parent = HomeButton
  6954. HomeIcon.AnchorPoint = Vector2.new(0, 0.5)
  6955. HomeIcon.BackgroundTransparency = 1.000
  6956. HomeIcon.BorderSizePixel = 0
  6957. HomeIcon.Position = UDim2.new(0, 15, 0.5, 0)
  6958. HomeIcon.Size = UDim2.new(0, 22, 0, 22) -- Bigger icon
  6959. HomeIcon.ZIndex = 3
  6960. HomeIcon.Image = MarcoUI:_GetIcon("home");
  6961. HomeIcon.ImageColor3 = MarcoUI.Colors.Highlight
  6962.  
  6963. table.insert(MarcoUI.Elements.Highlight,{
  6964. Element = HomeIcon,
  6965. Property = "ImageColor3"
  6966. });
  6967.  
  6968. HomeLabel.Name = MarcoUI:_RandomString()
  6969. HomeLabel.Parent = HomeButton
  6970. HomeLabel.AnchorPoint = Vector2.new(0, 0.5)
  6971. HomeLabel.BackgroundTransparency = 1.000
  6972. HomeLabel.BorderSizePixel = 0
  6973. HomeLabel.Position = UDim2.new(0, 45, 0.5, 0)
  6974. HomeLabel.Size = UDim2.new(0, 200, 0, 25)
  6975. HomeLabel.ZIndex = 3
  6976. HomeLabel.Font = Enum.Font.GothamBlack -- Even bolder font
  6977. HomeLabel.Text = "Home"
  6978. HomeLabel.TextColor3 = MarcoUI.Colors.SwitchColor
  6979. HomeLabel.TextSize = 17.000 -- Larger text
  6980. HomeLabel.TextXAlignment = Enum.TextXAlignment.Left
  6981.  
  6982. table.insert(MarcoUI.Elements.SwitchColor , {
  6983. Element = HomeLabel,
  6984. Property = 'TextColor3'
  6985. });
  6986.  
  6987. HomeHighlight.Name = MarcoUI:_RandomString()
  6988. HomeHighlight.Parent = HomeButton
  6989. HomeHighlight.AnchorPoint = Vector2.new(0.5, 0.5)
  6990. HomeHighlight.BackgroundColor3 = Color3.fromRGB(161, 161, 161)
  6991. HomeHighlight.BackgroundTransparency = 0.925
  6992. HomeHighlight.BorderSizePixel = 0
  6993. HomeHighlight.Position = UDim2.new(0.5, 0, 0.5, 0)
  6994. HomeHighlight.Size = UDim2.new(1, -17, 1, 0)
  6995. HomeHighlight.ZIndex = 2
  6996.  
  6997. HomeCorner.CornerRadius = UDim.new(0, 4)
  6998. HomeCorner.Parent = HomeHighlight
  6999.  
  7000. SelectionFrame.Name = MarcoUI:_RandomString()
  7001. SelectionFrame.Parent = TabButtons
  7002. SelectionFrame.AnchorPoint = Vector2.new(1, 0)
  7003. SelectionFrame.BackgroundColor3 = MarcoUI.Colors.Highlight
  7004. SelectionFrame.BorderColor3 = Color3.fromRGB(0, 0, 0)
  7005. SelectionFrame.BorderSizePixel = 0
  7006. SelectionFrame.Position = UDim2.new(1, 5, 0, 28)
  7007. SelectionFrame.Size = UDim2.new(0, 8, 0, 27)
  7008.  
  7009. table.insert(MarcoUI.Elements.Highlight,{
  7010. Element = SelectionFrame,
  7011. Property = "BackgroundColor3"
  7012. });
  7013.  
  7014. UICorner_3.CornerRadius = UDim.new(1, 0)
  7015. UICorner_3.Parent = SelectionFrame
  7016.  
  7017. TabButtonScrollingFrame.Name = MarcoUI:_RandomString()
  7018. TabButtonScrollingFrame.Parent = TabButtons
  7019. TabButtonScrollingFrame.Active = true
  7020. TabButtonScrollingFrame.AnchorPoint = Vector2.new(0.5, 0)
  7021. TabButtonScrollingFrame.BackgroundTransparency = 1.000
  7022. TabButtonScrollingFrame.BorderColor3 = Color3.fromRGB(0, 0, 0)
  7023. TabButtonScrollingFrame.BorderSizePixel = 0
  7024. TabButtonScrollingFrame.Position = UDim2.new(0.5, 0, 0, 46) -- Start right below Home button (small gap)
  7025. TabButtonScrollingFrame.Size = UDim2.new(1, -5, 1, -50) -- Adjusted for Home button
  7026. TabButtonScrollingFrame.BottomImage = ""
  7027. TabButtonScrollingFrame.ScrollBarThickness = 0
  7028. TabButtonScrollingFrame.TopImage = ""
  7029.  
  7030. UIListLayout.Parent = TabButtonScrollingFrame
  7031. UIListLayout.HorizontalAlignment = Enum.HorizontalAlignment.Center
  7032. UIListLayout.SortOrder = Enum.SortOrder.LayoutOrder
  7033. UIListLayout.Padding = UDim.new(0, 4)
  7034.  
  7035. -- Home Dashboard Content
  7036. local HomeDashboard = Instance.new("ScrollingFrame")
  7037. local DashboardLayout = Instance.new("UIListLayout")
  7038. local DashboardPadding = Instance.new("UIPadding")
  7039.  
  7040. -- Executor logo mapping (easy to add more)
  7041. local ExecutorLogos = {
  7042. ["Seliware"] = "123639305885181",
  7043. -- Add more executors here:
  7044. -- ["ExecutorName"] = "RobloxDecalID",
  7045. };
  7046.  
  7047. -- Get executor name
  7048. local executorName = "Unknown";
  7049. if identifyexecutor then
  7050. local success, result = pcall(identifyexecutor);
  7051. if success and result then
  7052. executorName = tostring(result);
  7053. end;
  7054. end;
  7055.  
  7056. -- Get key type and expiration
  7057. local keyType = Config.KeyType or "Free"; -- "Premium" or "Free"
  7058. local keyExpiration = Config.KeyExpiration or "Lifetime";
  7059. local lastExecuted = os.date("%Y-%m-%d %H:%M:%S", tick());
  7060. local lastGameExecuted = Config.GameName;
  7061. local isPremium = (keyType == "Premium");
  7062.  
  7063. HomeDashboard.Name = MarcoUI:_RandomString()
  7064. HomeDashboard.Parent = TabMainFrame
  7065. HomeDashboard.BackgroundTransparency = 1.000
  7066. HomeDashboard.BorderSizePixel = 0
  7067. HomeDashboard.Size = UDim2.new(1, 0, 1, 0)
  7068. HomeDashboard.ZIndex = 6
  7069. HomeDashboard.Visible = true -- Start visible for Home
  7070. HomeDashboard.BottomImage = ""
  7071. HomeDashboard.ScrollBarThickness = 6
  7072. HomeDashboard.TopImage = ""
  7073. HomeDashboard.AutomaticCanvasSize = Enum.AutomaticSize.Y
  7074.  
  7075. DashboardLayout.Parent = HomeDashboard
  7076. DashboardLayout.HorizontalAlignment = Enum.HorizontalAlignment.Center
  7077. DashboardLayout.SortOrder = Enum.SortOrder.LayoutOrder
  7078. DashboardLayout.Padding = UDim.new(0, 12)
  7079. DashboardLayout.FillDirection = Enum.FillDirection.Vertical
  7080.  
  7081. DashboardPadding.Parent = HomeDashboard
  7082. DashboardPadding.PaddingTop = UDim.new(0, 20)
  7083. DashboardPadding.PaddingBottom = UDim.new(0, 20)
  7084. DashboardPadding.PaddingLeft = UDim.new(0, 15)
  7085. DashboardPadding.PaddingRight = UDim.new(0, 15)
  7086.  
  7087. -- Top Row Container (Left and Right cards)
  7088. local TopRowContainer = Instance.new("Frame")
  7089. local TopRowLayout = Instance.new("UIListLayout")
  7090.  
  7091. TopRowContainer.Name = MarcoUI:_RandomString()
  7092. TopRowContainer.Parent = HomeDashboard
  7093. TopRowContainer.BackgroundTransparency = 1.000
  7094. TopRowContainer.Size = UDim2.new(1, -30, 0, 0)
  7095. TopRowContainer.AutomaticSize = Enum.AutomaticSize.Y
  7096. TopRowContainer.ZIndex = 7
  7097.  
  7098. TopRowLayout.Parent = TopRowContainer
  7099. TopRowLayout.FillDirection = Enum.FillDirection.Horizontal
  7100. TopRowLayout.HorizontalAlignment = Enum.HorizontalAlignment.Center
  7101. TopRowLayout.SortOrder = Enum.SortOrder.LayoutOrder
  7102. TopRowLayout.Padding = UDim.new(0, 12)
  7103.  
  7104. -- User Profile Card (Left side)
  7105. local UserProfileCard = Instance.new("Frame")
  7106. local UserProfileCorner = Instance.new("UICorner")
  7107. local UserProfileStroke = Instance.new("UIStroke")
  7108. local UserProfileLayout = Instance.new("UIListLayout")
  7109. local UserProfilePadding = Instance.new("UIPadding")
  7110. local UserAvatar = Instance.new("ImageLabel")
  7111. local UserAvatarCorner = Instance.new("UICorner")
  7112. local UserAvatarStroke = Instance.new("UIStroke")
  7113. local UserNameLabel = Instance.new("TextLabel")
  7114. local UserIDLabel = Instance.new("TextLabel")
  7115. local PremiumBadge = Instance.new("Frame")
  7116. local PremiumBadgeCorner = Instance.new("UICorner")
  7117. local PremiumBadgeStroke = Instance.new("UIStroke")
  7118. local PremiumBadgeText = Instance.new("TextLabel")
  7119. local PremiumCrown = Instance.new("ImageLabel")
  7120. local PremiumShine = Instance.new("Frame")
  7121. local PremiumShineGradient = Instance.new("UIGradient")
  7122.  
  7123. UserProfileCard.Name = MarcoUI:_RandomString()
  7124. UserProfileCard.Parent = TopRowContainer
  7125. UserProfileCard.BackgroundColor3 = MarcoUI.Colors.BlockColor
  7126. UserProfileCard.BorderSizePixel = 0
  7127. UserProfileCard.Size = UDim2.new(0.48, 0, 0, 0)
  7128. UserProfileCard.AutomaticSize = Enum.AutomaticSize.Y
  7129. UserProfileCard.ZIndex = 8
  7130.  
  7131. table.insert(MarcoUI.Elements.BlockColor, {
  7132. Element = UserProfileCard,
  7133. Property = "BackgroundColor3"
  7134. });
  7135.  
  7136. UserProfileCorner.CornerRadius = UDim.new(0, 10)
  7137. UserProfileCorner.Parent = UserProfileCard
  7138.  
  7139. UserProfileStroke.Color = (isPremium and Color3.fromRGB(255, 215, 0)) or MarcoUI.Colors.StrokeColor
  7140. UserProfileStroke.Thickness = (isPremium and 2.5) or 1.5
  7141. UserProfileStroke.Parent = UserProfileCard
  7142.  
  7143. table.insert(MarcoUI.Elements.StrokeColor, {
  7144. Element = UserProfileStroke,
  7145. Property = "Color"
  7146. });
  7147.  
  7148. UserProfileLayout.Parent = UserProfileCard
  7149. UserProfileLayout.HorizontalAlignment = Enum.HorizontalAlignment.Center
  7150. UserProfileLayout.SortOrder = Enum.SortOrder.LayoutOrder
  7151. UserProfileLayout.Padding = UDim.new(0, 15)
  7152.  
  7153. UserProfilePadding.Parent = UserProfileCard
  7154. UserProfilePadding.PaddingTop = UDim.new(0, 20)
  7155. UserProfilePadding.PaddingBottom = UDim.new(0, 20)
  7156. UserProfilePadding.PaddingLeft = UDim.new(0, 20)
  7157. UserProfilePadding.PaddingRight = UDim.new(0, 20)
  7158.  
  7159. -- Avatar
  7160. UserAvatar.Name = MarcoUI:_RandomString()
  7161. UserAvatar.Parent = UserProfileCard
  7162. UserAvatar.BackgroundColor3 = MarcoUI.Colors.BlockBackground
  7163. UserAvatar.BorderSizePixel = 0
  7164. UserAvatar.Size = UDim2.new(0, 110, 0, 110)
  7165. UserAvatar.ZIndex = 9
  7166. UserAvatar.Image = (LocalPlayer and string.format("rbxthumb://type=AvatarHeadShot&id=%s&w=150&h=150", tostring(LocalPlayer.UserId))) or "rbxassetid://18518299306"
  7167. UserAvatarCorner.CornerRadius = UDim.new(1, 0)
  7168. UserAvatarCorner.Parent = UserAvatar
  7169. UserAvatarStroke.Color = (isPremium and Color3.fromRGB(255, 215, 0)) or MarcoUI.Colors.Highlight
  7170. UserAvatarStroke.Thickness = (isPremium and 3) or 2
  7171. UserAvatarStroke.Parent = UserAvatar
  7172.  
  7173. if isPremium then
  7174. table.insert(MarcoUI.Elements.Highlight, {
  7175. Element = UserAvatarStroke,
  7176. Property = "Color"
  7177. });
  7178. end;
  7179.  
  7180. -- Username (just the name, no "Username:")
  7181. UserNameLabel.Name = MarcoUI:_RandomString()
  7182. UserNameLabel.Parent = UserProfileCard
  7183. UserNameLabel.BackgroundTransparency = 1.000
  7184. UserNameLabel.Size = UDim2.new(1, 0, 0, 28)
  7185. UserNameLabel.Font = Enum.Font.GothamBold
  7186. UserNameLabel.Text = (LocalPlayer and LocalPlayer.Name) or "Player"
  7187. UserNameLabel.TextColor3 = MarcoUI.Colors.SwitchColor
  7188. UserNameLabel.TextSize = 20
  7189. UserNameLabel.ZIndex = 9
  7190.  
  7191. table.insert(MarcoUI.Elements.SwitchColor, {
  7192. Element = UserNameLabel,
  7193. Property = "TextColor3"
  7194. });
  7195.  
  7196. -- User ID
  7197. UserIDLabel.Name = MarcoUI:_RandomString()
  7198. UserIDLabel.Parent = UserProfileCard
  7199. UserIDLabel.BackgroundTransparency = 1.000
  7200. UserIDLabel.Size = UDim2.new(1, 0, 0, 22)
  7201. UserIDLabel.Font = Enum.Font.Gotham
  7202. UserIDLabel.Text = "ID: " .. ((LocalPlayer and tostring(LocalPlayer.UserId)) or "0")
  7203. UserIDLabel.TextColor3 = MarcoUI.Colors.SwitchColor
  7204. UserIDLabel.TextSize = 14
  7205. UserIDLabel.TextTransparency = 0.2
  7206. UserIDLabel.ZIndex = 9
  7207.  
  7208. table.insert(MarcoUI.Elements.SwitchColor, {
  7209. Element = UserIDLabel,
  7210. Property = "TextColor3"
  7211. });
  7212.  
  7213. -- Premium Badge (if premium)
  7214. if isPremium then
  7215. PremiumBadge.Name = MarcoUI:_RandomString()
  7216. PremiumBadge.Parent = UserProfileCard
  7217. PremiumBadge.BackgroundColor3 = Color3.fromRGB(255, 215, 0)
  7218. PremiumBadge.BorderSizePixel = 0
  7219. PremiumBadge.Size = UDim2.new(1, 0, 0, 35)
  7220. PremiumBadge.ZIndex = 9
  7221. PremiumBadge.ClipsDescendants = true
  7222.  
  7223. PremiumBadgeCorner.CornerRadius = UDim.new(0, 6)
  7224. PremiumBadgeCorner.Parent = PremiumBadge
  7225.  
  7226. PremiumBadgeStroke.Color = Color3.fromRGB(255, 200, 0)
  7227. PremiumBadgeStroke.Thickness = 1.5
  7228. PremiumBadgeStroke.Parent = PremiumBadge
  7229.  
  7230. PremiumBadgeText.Name = MarcoUI:_RandomString()
  7231. PremiumBadgeText.Parent = PremiumBadge
  7232. PremiumBadgeText.BackgroundTransparency = 1.000
  7233. PremiumBadgeText.Size = UDim2.new(1, -40, 1, 0)
  7234. PremiumBadgeText.Position = UDim2.new(0, 35, 0, 0)
  7235. PremiumBadgeText.Font = Enum.Font.GothamBold
  7236. PremiumBadgeText.Text = "Premium User"
  7237. PremiumBadgeText.TextColor3 = Color3.fromRGB(30, 30, 30)
  7238. PremiumBadgeText.TextSize = 15
  7239. PremiumBadgeText.ZIndex = 10
  7240.  
  7241. PremiumCrown.Name = MarcoUI:_RandomString()
  7242. PremiumCrown.Parent = PremiumBadge
  7243. PremiumCrown.BackgroundTransparency = 1.000
  7244. PremiumCrown.Size = UDim2.new(0, 25, 0, 25)
  7245. PremiumCrown.Position = UDim2.new(0, 5, 0.5, 0)
  7246. PremiumCrown.AnchorPoint = Vector2.new(0, 0.5)
  7247. PremiumCrown.Image = "rbxassetid://6031075938" -- Crown icon
  7248. PremiumCrown.ImageColor3 = Color3.fromRGB(255, 200, 0)
  7249. PremiumCrown.ZIndex = 10
  7250.  
  7251. -- Gold shine animation
  7252. PremiumShine.Name = MarcoUI:_RandomString()
  7253. PremiumShine.Parent = PremiumBadge
  7254. PremiumShine.BackgroundColor3 = Color3.fromRGB(255, 255, 255)
  7255. PremiumShine.BackgroundTransparency = 0.7
  7256. PremiumShine.BorderSizePixel = 0
  7257. PremiumShine.Size = UDim2.new(0, 100, 1, 0)
  7258. PremiumShine.ZIndex = 9
  7259.  
  7260. PremiumShineGradient.Parent = PremiumShine
  7261. PremiumShineGradient.Color = ColorSequence.new({
  7262. ColorSequenceKeypoint.new(0, Color3.fromRGB(255, 255, 255)),
  7263. ColorSequenceKeypoint.new(0.5, Color3.fromRGB(255, 255, 200)),
  7264. ColorSequenceKeypoint.new(1, Color3.fromRGB(255, 255, 255))
  7265. });
  7266. PremiumShineGradient.Rotation = 45
  7267.  
  7268. -- Animate shine
  7269. local shineConnection;
  7270. shineConnection = RunService.RenderStepped:Connect(function()
  7271. local offset = (tick() * 0.5) % 2;
  7272. PremiumShine.Position = UDim2.new(offset - 1, 0, 0, 0);
  7273. end);
  7274. end;
  7275.  
  7276. -- Executor Card (Right side)
  7277. local ExecutorCard = Instance.new("Frame")
  7278. local ExecutorCorner = Instance.new("UICorner")
  7279. local ExecutorStroke = Instance.new("UIStroke")
  7280. local ExecutorLayout = Instance.new("UIListLayout")
  7281. local ExecutorPadding = Instance.new("UIPadding")
  7282. local ExecutorLogo = Instance.new("ImageLabel")
  7283. local ExecutorLogoCorner = Instance.new("UICorner")
  7284. local ExecutorNameLabel = Instance.new("TextLabel")
  7285. local ExecutorStatusContainer = Instance.new("Frame")
  7286. local ExecutorStatusLayout = Instance.new("UIListLayout")
  7287. local ExecutorStatusDot = Instance.new("Frame")
  7288. local ExecutorStatusDotCorner = Instance.new("UICorner")
  7289. local ExecutorStatusGlow = Instance.new("Frame")
  7290. local ExecutorStatusGlowCorner = Instance.new("UICorner")
  7291. local ExecutorStatusText = Instance.new("TextLabel")
  7292.  
  7293. ExecutorCard.Name = MarcoUI:_RandomString()
  7294. ExecutorCard.Parent = TopRowContainer
  7295. ExecutorCard.BackgroundColor3 = MarcoUI.Colors.BlockColor
  7296. ExecutorCard.BorderSizePixel = 0
  7297. ExecutorCard.Size = UDim2.new(0.48, 0, 0, 0)
  7298. ExecutorCard.AutomaticSize = Enum.AutomaticSize.Y
  7299. ExecutorCard.ZIndex = 8
  7300.  
  7301. table.insert(MarcoUI.Elements.BlockColor, {
  7302. Element = ExecutorCard,
  7303. Property = "BackgroundColor3"
  7304. });
  7305.  
  7306. ExecutorCorner.CornerRadius = UDim.new(0, 10)
  7307. ExecutorCorner.Parent = ExecutorCard
  7308.  
  7309. ExecutorStroke.Color = MarcoUI.Colors.StrokeColor
  7310. ExecutorStroke.Thickness = 1.5
  7311. ExecutorStroke.Parent = ExecutorCard
  7312.  
  7313. table.insert(MarcoUI.Elements.StrokeColor, {
  7314. Element = ExecutorStroke,
  7315. Property = "Color"
  7316. });
  7317.  
  7318. ExecutorLayout.Parent = ExecutorCard
  7319. ExecutorLayout.HorizontalAlignment = Enum.HorizontalAlignment.Center
  7320. ExecutorLayout.SortOrder = Enum.SortOrder.LayoutOrder
  7321. ExecutorLayout.Padding = UDim.new(0, 15)
  7322.  
  7323. ExecutorPadding.Parent = ExecutorCard
  7324. ExecutorPadding.PaddingTop = UDim.new(0, 20)
  7325. ExecutorPadding.PaddingBottom = UDim.new(0, 20)
  7326. ExecutorPadding.PaddingLeft = UDim.new(0, 20)
  7327. ExecutorPadding.PaddingRight = UDim.new(0, 20)
  7328.  
  7329. -- Executor Logo
  7330. local executorLogoID = ExecutorLogos[executorName] or nil;
  7331. ExecutorLogo.Name = MarcoUI:_RandomString()
  7332. ExecutorLogo.Parent = ExecutorCard
  7333. ExecutorLogo.BackgroundColor3 = MarcoUI.Colors.BlockBackground
  7334. ExecutorLogo.BorderSizePixel = 0
  7335. ExecutorLogo.Size = UDim2.new(0, 80, 0, 80)
  7336. ExecutorLogo.ZIndex = 9
  7337. ExecutorLogo.Image = executorLogoID and ("rbxassetid://" .. executorLogoID) or "rbxassetid://18518299306"
  7338. ExecutorLogoCorner.CornerRadius = UDim.new(0, 8)
  7339. ExecutorLogoCorner.Parent = ExecutorLogo
  7340.  
  7341. -- Executor Name
  7342. ExecutorNameLabel.Name = MarcoUI:_RandomString()
  7343. ExecutorNameLabel.Parent = ExecutorCard
  7344. ExecutorNameLabel.BackgroundTransparency = 1.000
  7345. ExecutorNameLabel.Size = UDim2.new(1, 0, 0, 25)
  7346. ExecutorNameLabel.Font = Enum.Font.GothamBold
  7347. ExecutorNameLabel.Text = executorName
  7348. ExecutorNameLabel.TextColor3 = MarcoUI.Colors.SwitchColor
  7349. ExecutorNameLabel.TextSize = 18
  7350. ExecutorNameLabel.ZIndex = 9
  7351.  
  7352. table.insert(MarcoUI.Elements.SwitchColor, {
  7353. Element = ExecutorNameLabel,
  7354. Property = "TextColor3"
  7355. });
  7356.  
  7357. -- Status Container
  7358. ExecutorStatusContainer.Name = MarcoUI:_RandomString()
  7359. ExecutorStatusContainer.Parent = ExecutorCard
  7360. ExecutorStatusContainer.BackgroundTransparency = 1.000
  7361. ExecutorStatusContainer.Size = UDim2.new(1, 0, 0, 0)
  7362. ExecutorStatusContainer.AutomaticSize = Enum.AutomaticSize.Y
  7363. ExecutorStatusContainer.ZIndex = 9
  7364.  
  7365. ExecutorStatusLayout.Parent = ExecutorStatusContainer
  7366. ExecutorStatusLayout.FillDirection = Enum.FillDirection.Horizontal
  7367. ExecutorStatusLayout.HorizontalAlignment = Enum.HorizontalAlignment.Center
  7368. ExecutorStatusLayout.SortOrder = Enum.SortOrder.LayoutOrder
  7369. ExecutorStatusLayout.Padding = UDim.new(0, 8)
  7370.  
  7371. -- Glowing Status Dot
  7372. ExecutorStatusGlow.Name = MarcoUI:_RandomString()
  7373. ExecutorStatusGlow.Parent = ExecutorStatusContainer
  7374. ExecutorStatusGlow.BackgroundColor3 = Color3.fromRGB(46, 204, 113)
  7375. ExecutorStatusGlow.BorderSizePixel = 0
  7376. ExecutorStatusGlow.Size = UDim2.new(0, 16, 0, 16)
  7377. ExecutorStatusGlow.ZIndex = 9
  7378.  
  7379. ExecutorStatusGlowCorner.CornerRadius = UDim.new(1, 0)
  7380. ExecutorStatusGlowCorner.Parent = ExecutorStatusGlow
  7381.  
  7382. -- Animate glow
  7383. local glowConnection;
  7384. glowConnection = RunService.RenderStepped:Connect(function()
  7385. local pulse = (math.sin(tick() * 3) + 1) / 2;
  7386. ExecutorStatusGlow.BackgroundTransparency = 0.3 + (pulse * 0.4);
  7387. ExecutorStatusGlow.Size = UDim2.new(0, 16 + (pulse * 4), 0, 16 + (pulse * 4));
  7388. end);
  7389.  
  7390. ExecutorStatusDot.Name = MarcoUI:_RandomString()
  7391. ExecutorStatusDot.Parent = ExecutorStatusContainer
  7392. ExecutorStatusDot.BackgroundColor3 = Color3.fromRGB(46, 204, 113)
  7393. ExecutorStatusDot.BorderSizePixel = 0
  7394. ExecutorStatusDot.Size = UDim2.new(0, 12, 0, 12)
  7395. ExecutorStatusDot.Position = UDim2.new(0.5, 0, 0.5, 0)
  7396. ExecutorStatusDot.AnchorPoint = Vector2.new(0.5, 0.5)
  7397. ExecutorStatusDot.ZIndex = 10
  7398.  
  7399. ExecutorStatusDotCorner.CornerRadius = UDim.new(1, 0)
  7400. ExecutorStatusDotCorner.Parent = ExecutorStatusDot
  7401.  
  7402. ExecutorStatusText.Name = MarcoUI:_RandomString()
  7403. ExecutorStatusText.Parent = ExecutorStatusContainer
  7404. ExecutorStatusText.BackgroundTransparency = 1.000
  7405. ExecutorStatusText.Size = UDim2.new(0, 0, 0, 20)
  7406. ExecutorStatusText.AutomaticSize = Enum.AutomaticSize.X
  7407. ExecutorStatusText.Font = Enum.Font.GothamSemibold
  7408. ExecutorStatusText.Text = "Working"
  7409. ExecutorStatusText.TextColor3 = Color3.fromRGB(46, 204, 113)
  7410. ExecutorStatusText.TextSize = 14
  7411. ExecutorStatusText.ZIndex = 9
  7412.  
  7413. -- Key Info Row Container (Left and Right)
  7414. local KeyInfoRowContainer = Instance.new("Frame")
  7415. local KeyInfoRowLayout = Instance.new("UIListLayout")
  7416.  
  7417. KeyInfoRowContainer.Name = MarcoUI:_RandomString()
  7418. KeyInfoRowContainer.Parent = HomeDashboard
  7419. KeyInfoRowContainer.BackgroundTransparency = 1.000
  7420. KeyInfoRowContainer.Size = UDim2.new(1, -30, 0, 0)
  7421. KeyInfoRowContainer.AutomaticSize = Enum.AutomaticSize.Y
  7422. KeyInfoRowContainer.ZIndex = 7
  7423.  
  7424. KeyInfoRowLayout.Parent = KeyInfoRowContainer
  7425. KeyInfoRowLayout.FillDirection = Enum.FillDirection.Horizontal
  7426. KeyInfoRowLayout.HorizontalAlignment = Enum.HorizontalAlignment.Center
  7427. KeyInfoRowLayout.SortOrder = Enum.SortOrder.LayoutOrder
  7428. KeyInfoRowLayout.Padding = UDim.new(0, 12)
  7429.  
  7430. -- Key Info Left Card
  7431. local KeyInfoLeft = Instance.new("Frame")
  7432. local KeyInfoLeftCorner = Instance.new("UICorner")
  7433. local KeyInfoLeftStroke = Instance.new("UIStroke")
  7434. local KeyInfoLeftLayout = Instance.new("UIListLayout")
  7435. local KeyInfoLeftPadding = Instance.new("UIPadding")
  7436. local KeyInfoLeftHeader = Instance.new("TextLabel")
  7437. local KeyInfoLeftExpiration = Instance.new("TextLabel")
  7438. local KeyInfoLeftType = Instance.new("TextLabel")
  7439.  
  7440. KeyInfoLeft.Name = MarcoUI:_RandomString()
  7441. KeyInfoLeft.Parent = KeyInfoRowContainer
  7442. KeyInfoLeft.BackgroundColor3 = MarcoUI.Colors.BlockColor
  7443. KeyInfoLeft.BorderSizePixel = 0
  7444. KeyInfoLeft.Size = UDim2.new(0.48, 0, 0, 0)
  7445. KeyInfoLeft.AutomaticSize = Enum.AutomaticSize.Y
  7446. KeyInfoLeft.ZIndex = 8
  7447.  
  7448. table.insert(MarcoUI.Elements.BlockColor, {
  7449. Element = KeyInfoLeft,
  7450. Property = "BackgroundColor3"
  7451. });
  7452.  
  7453. KeyInfoLeftCorner.CornerRadius = UDim.new(0, 10)
  7454. KeyInfoLeftCorner.Parent = KeyInfoLeft
  7455.  
  7456. KeyInfoLeftStroke.Color = MarcoUI.Colors.StrokeColor
  7457. KeyInfoLeftStroke.Thickness = 1.5
  7458. KeyInfoLeftStroke.Parent = KeyInfoLeft
  7459.  
  7460. table.insert(MarcoUI.Elements.StrokeColor, {
  7461. Element = KeyInfoLeftStroke,
  7462. Property = "Color"
  7463. });
  7464.  
  7465. KeyInfoLeftLayout.Parent = KeyInfoLeft
  7466. KeyInfoLeftLayout.HorizontalAlignment = Enum.HorizontalAlignment.Left
  7467. KeyInfoLeftLayout.SortOrder = Enum.SortOrder.LayoutOrder
  7468. KeyInfoLeftLayout.Padding = UDim.new(0, 12)
  7469.  
  7470. KeyInfoLeftPadding.Parent = KeyInfoLeft
  7471. KeyInfoLeftPadding.PaddingTop = UDim.new(0, 18)
  7472. KeyInfoLeftPadding.PaddingBottom = UDim.new(0, 18)
  7473. KeyInfoLeftPadding.PaddingLeft = UDim.new(0, 20)
  7474. KeyInfoLeftPadding.PaddingRight = UDim.new(0, 20)
  7475.  
  7476. KeyInfoLeftHeader.Name = MarcoUI:_RandomString()
  7477. KeyInfoLeftHeader.Parent = KeyInfoLeft
  7478. KeyInfoLeftHeader.BackgroundTransparency = 1.000
  7479. KeyInfoLeftHeader.Size = UDim2.new(1, 0, 0, 25)
  7480. KeyInfoLeftHeader.Font = Enum.Font.GothamBold
  7481. KeyInfoLeftHeader.Text = "Key Info"
  7482. KeyInfoLeftHeader.TextColor3 = MarcoUI.Colors.SwitchColor
  7483. KeyInfoLeftHeader.TextSize = 18
  7484. KeyInfoLeftHeader.TextXAlignment = Enum.TextXAlignment.Left
  7485. KeyInfoLeftHeader.ZIndex = 9
  7486.  
  7487. table.insert(MarcoUI.Elements.SwitchColor, {
  7488. Element = KeyInfoLeftHeader,
  7489. Property = "TextColor3"
  7490. });
  7491.  
  7492. KeyInfoLeftExpiration.Name = MarcoUI:_RandomString()
  7493. KeyInfoLeftExpiration.Parent = KeyInfoLeft
  7494. KeyInfoLeftExpiration.BackgroundTransparency = 1.000
  7495. KeyInfoLeftExpiration.Size = UDim2.new(1, 0, 0, 22)
  7496. KeyInfoLeftExpiration.Font = Enum.Font.GothamSemibold
  7497. KeyInfoLeftExpiration.Text = "Expiration: " .. keyExpiration
  7498. KeyInfoLeftExpiration.TextColor3 = MarcoUI.Colors.SwitchColor
  7499. KeyInfoLeftExpiration.TextSize = 15
  7500. KeyInfoLeftExpiration.TextXAlignment = Enum.TextXAlignment.Left
  7501. KeyInfoLeftExpiration.ZIndex = 9
  7502.  
  7503. table.insert(MarcoUI.Elements.SwitchColor, {
  7504. Element = KeyInfoLeftExpiration,
  7505. Property = "TextColor3"
  7506. });
  7507.  
  7508. KeyInfoLeftType.Name = MarcoUI:_RandomString()
  7509. KeyInfoLeftType.Parent = KeyInfoLeft
  7510. KeyInfoLeftType.BackgroundTransparency = 1.000
  7511. KeyInfoLeftType.Size = UDim2.new(1, 0, 0, 22)
  7512. KeyInfoLeftType.Font = Enum.Font.GothamSemibold
  7513. KeyInfoLeftType.Text = "Key Type: " .. keyType
  7514. KeyInfoLeftType.TextColor3 = (isPremium and Color3.fromRGB(255, 215, 0)) or MarcoUI.Colors.SwitchColor
  7515. KeyInfoLeftType.TextSize = 15
  7516. KeyInfoLeftType.TextXAlignment = Enum.TextXAlignment.Left
  7517. KeyInfoLeftType.ZIndex = 9
  7518.  
  7519. table.insert(MarcoUI.Elements.SwitchColor, {
  7520. Element = KeyInfoLeftType,
  7521. Property = "TextColor3"
  7522. });
  7523.  
  7524. -- Key Info Right Card
  7525. local KeyInfoRight = Instance.new("Frame")
  7526. local KeyInfoRightCorner = Instance.new("UICorner")
  7527. local KeyInfoRightStroke = Instance.new("UIStroke")
  7528. local KeyInfoRightLayout = Instance.new("UIListLayout")
  7529. local KeyInfoRightPadding = Instance.new("UIPadding")
  7530. local KeyInfoRightHeader = Instance.new("TextLabel")
  7531. local KeyInfoRightLastGame = Instance.new("TextLabel")
  7532. local KeyInfoRightLastExecuted = Instance.new("TextLabel")
  7533.  
  7534. KeyInfoRight.Name = MarcoUI:_RandomString()
  7535. KeyInfoRight.Parent = KeyInfoRowContainer
  7536. KeyInfoRight.BackgroundColor3 = MarcoUI.Colors.BlockColor
  7537. KeyInfoRight.BorderSizePixel = 0
  7538. KeyInfoRight.Size = UDim2.new(0.48, 0, 0, 0)
  7539. KeyInfoRight.AutomaticSize = Enum.AutomaticSize.Y
  7540. KeyInfoRight.ZIndex = 8
  7541.  
  7542. table.insert(MarcoUI.Elements.BlockColor, {
  7543. Element = KeyInfoRight,
  7544. Property = "BackgroundColor3"
  7545. });
  7546.  
  7547. KeyInfoRightCorner.CornerRadius = UDim.new(0, 10)
  7548. KeyInfoRightCorner.Parent = KeyInfoRight
  7549.  
  7550. KeyInfoRightStroke.Color = MarcoUI.Colors.StrokeColor
  7551. KeyInfoRightStroke.Thickness = 1.5
  7552. KeyInfoRightStroke.Parent = KeyInfoRight
  7553.  
  7554. table.insert(MarcoUI.Elements.StrokeColor, {
  7555. Element = KeyInfoRightStroke,
  7556. Property = "Color"
  7557. });
  7558.  
  7559. KeyInfoRightLayout.Parent = KeyInfoRight
  7560. KeyInfoRightLayout.HorizontalAlignment = Enum.HorizontalAlignment.Left
  7561. KeyInfoRightLayout.SortOrder = Enum.SortOrder.LayoutOrder
  7562. KeyInfoRightLayout.Padding = UDim.new(0, 12)
  7563.  
  7564. KeyInfoRightPadding.Parent = KeyInfoRight
  7565. KeyInfoRightPadding.PaddingTop = UDim.new(0, 18)
  7566. KeyInfoRightPadding.PaddingBottom = UDim.new(0, 18)
  7567. KeyInfoRightPadding.PaddingLeft = UDim.new(0, 20)
  7568. KeyInfoRightPadding.PaddingRight = UDim.new(0, 20)
  7569.  
  7570. KeyInfoRightHeader.Name = MarcoUI:_RandomString()
  7571. KeyInfoRightHeader.Parent = KeyInfoRight
  7572. KeyInfoRightHeader.BackgroundTransparency = 1.000
  7573. KeyInfoRightHeader.Size = UDim2.new(1, 0, 0, 25)
  7574. KeyInfoRightHeader.Font = Enum.Font.GothamBold
  7575. KeyInfoRightHeader.Text = "Activity"
  7576. KeyInfoRightHeader.TextColor3 = MarcoUI.Colors.SwitchColor
  7577. KeyInfoRightHeader.TextSize = 18
  7578. KeyInfoRightHeader.TextXAlignment = Enum.TextXAlignment.Left
  7579. KeyInfoRightHeader.ZIndex = 9
  7580.  
  7581. table.insert(MarcoUI.Elements.SwitchColor, {
  7582. Element = KeyInfoRightHeader,
  7583. Property = "TextColor3"
  7584. });
  7585.  
  7586. KeyInfoRightLastGame.Name = MarcoUI:_RandomString()
  7587. KeyInfoRightLastGame.Parent = KeyInfoRight
  7588. KeyInfoRightLastGame.BackgroundTransparency = 1.000
  7589. KeyInfoRightLastGame.Size = UDim2.new(1, 0, 0, 22)
  7590. KeyInfoRightLastGame.Font = Enum.Font.GothamSemibold
  7591. KeyInfoRightLastGame.Text = "Last Game: " .. lastGameExecuted
  7592. KeyInfoRightLastGame.TextColor3 = MarcoUI.Colors.SwitchColor
  7593. KeyInfoRightLastGame.TextSize = 15
  7594. KeyInfoRightLastGame.TextXAlignment = Enum.TextXAlignment.Left
  7595. KeyInfoRightLastGame.ZIndex = 9
  7596.  
  7597. table.insert(MarcoUI.Elements.SwitchColor, {
  7598. Element = KeyInfoRightLastGame,
  7599. Property = "TextColor3"
  7600. });
  7601.  
  7602. KeyInfoRightLastExecuted.Name = MarcoUI:_RandomString()
  7603. KeyInfoRightLastExecuted.Parent = KeyInfoRight
  7604. KeyInfoRightLastExecuted.BackgroundTransparency = 1.000
  7605. KeyInfoRightLastExecuted.Size = UDim2.new(1, 0, 0, 20)
  7606. KeyInfoRightLastExecuted.Font = Enum.Font.Gotham
  7607. KeyInfoRightLastExecuted.Text = "Last Executed: " .. lastExecuted
  7608. KeyInfoRightLastExecuted.TextColor3 = MarcoUI.Colors.SwitchColor
  7609. KeyInfoRightLastExecuted.TextSize = 13
  7610. KeyInfoRightLastExecuted.TextTransparency = 0.3
  7611. KeyInfoRightLastExecuted.TextXAlignment = Enum.TextXAlignment.Left
  7612. KeyInfoRightLastExecuted.ZIndex = 9
  7613.  
  7614. table.insert(MarcoUI.Elements.SwitchColor, {
  7615. Element = KeyInfoRightLastExecuted,
  7616. Property = "TextColor3"
  7617. });
  7618.  
  7619. -- Discord Button Section
  7620. local DiscordButton = Instance.new("Frame")
  7621. local DiscordButtonCorner = Instance.new("UICorner")
  7622. local DiscordButtonStroke = Instance.new("UIStroke")
  7623. local DiscordButtonText = Instance.new("TextLabel")
  7624. local DiscordButtonHighlight = Instance.new("Frame")
  7625. local DiscordButtonHighlightCorner = Instance.new("UICorner")
  7626.  
  7627. -- Discord Button
  7628. DiscordButton.Name = MarcoUI:_RandomString()
  7629. DiscordButton.Parent = HomeDashboard
  7630. DiscordButton.BackgroundColor3 = MarcoUI.Colors.BlockColor
  7631. DiscordButton.BorderSizePixel = 0
  7632. DiscordButton.Size = UDim2.new(1, -30, 0, 50)
  7633. DiscordButton.ZIndex = 7
  7634.  
  7635. table.insert(MarcoUI.Elements.BlockColor, {
  7636. Element = DiscordButton,
  7637. Property = "BackgroundColor3"
  7638. });
  7639.  
  7640. DiscordButtonCorner.CornerRadius = UDim.new(0, 8)
  7641. DiscordButtonCorner.Parent = DiscordButton
  7642.  
  7643. DiscordButtonStroke.Color = MarcoUI.Colors.Highlight
  7644. DiscordButtonStroke.Thickness = 2
  7645. DiscordButtonStroke.Parent = DiscordButton
  7646.  
  7647. table.insert(MarcoUI.Elements.Highlight, {
  7648. Element = DiscordButtonStroke,
  7649. Property = "Color"
  7650. });
  7651.  
  7652. DiscordButtonText.Name = MarcoUI:_RandomString()
  7653. DiscordButtonText.Parent = DiscordButton
  7654. DiscordButtonText.BackgroundTransparency = 1.000
  7655. DiscordButtonText.Size = UDim2.new(1, 0, 1, 0)
  7656. DiscordButtonText.Font = Enum.Font.GothamBold
  7657. DiscordButtonText.Text = "Copy Discord Link"
  7658. DiscordButtonText.TextColor3 = MarcoUI.Colors.SwitchColor
  7659. DiscordButtonText.TextSize = 16
  7660. DiscordButtonText.ZIndex = 8
  7661.  
  7662. table.insert(MarcoUI.Elements.SwitchColor, {
  7663. Element = DiscordButtonText,
  7664. Property = "TextColor3"
  7665. });
  7666.  
  7667. DiscordButtonHighlight.Name = MarcoUI:_RandomString()
  7668. DiscordButtonHighlight.Parent = DiscordButton
  7669. DiscordButtonHighlight.BackgroundColor3 = MarcoUI.Colors.Highlight
  7670. DiscordButtonHighlight.BackgroundTransparency = 1.000
  7671. DiscordButtonHighlight.BorderSizePixel = 0
  7672. DiscordButtonHighlight.Size = UDim2.new(1, 0, 1, 0)
  7673. DiscordButtonHighlight.ZIndex = 7
  7674.  
  7675. table.insert(MarcoUI.Elements.Highlight, {
  7676. Element = DiscordButtonHighlight,
  7677. Property = "BackgroundColor3"
  7678. });
  7679.  
  7680. DiscordButtonHighlightCorner.CornerRadius = UDim.new(0, 8)
  7681. DiscordButtonHighlightCorner.Parent = DiscordButtonHighlight
  7682.  
  7683. -- Discord button hover and click
  7684. MarcoUI:_Hover(DiscordButton, function()
  7685. MarcoUI:_Animation(DiscordButtonHighlight, TweenInfo.new(0.2), {
  7686. BackgroundTransparency = 0.8
  7687. });
  7688. end, function()
  7689. MarcoUI:_Animation(DiscordButtonHighlight, TweenInfo.new(0.2), {
  7690. BackgroundTransparency = 1.000
  7691. });
  7692. end);
  7693.  
  7694. MarcoUI:_Input(DiscordButton, function()
  7695. local discordLink = "https://discord.gg/yourinvite"; -- Change this to your Discord link
  7696. -- Try to open browser, fallback to clipboard
  7697. if setclipboard then
  7698. setclipboard(discordLink);
  7699. WindowArgs.Notify:Notify({
  7700. Title = "Discord",
  7701. Content = "Discord link copied to clipboard!",
  7702. Duration = 3
  7703. });
  7704. elseif writefile then
  7705. -- Fallback: write to a file
  7706. writefile("discord_link.txt", discordLink);
  7707. WindowArgs.Notify:Notify({
  7708. Title = "Discord",
  7709. Content = "Discord link saved to discord_link.txt",
  7710. Duration = 3
  7711. });
  7712. end;
  7713. end);
  7714.  
  7715. -- Home button click handler
  7716. WindowArgs.IsHomeActive = true; -- Start with Home active
  7717. local function ToggleHome(bool)
  7718. WindowArgs.IsHomeActive = bool;
  7719. if bool then
  7720. -- Show Home Dashboard, hide other tabs
  7721. HomeDashboard.Visible = true;
  7722. MarcoUI:_Animation(HomeIcon, TweenInfo.new(0.3, Enum.EasingStyle.Exponential), {
  7723. ImageTransparency = 0,
  7724. Rotation = 360,
  7725. Size = UDim2.new(0, 24, 0, 24)
  7726. });
  7727. MarcoUI:_Animation(HomeLabel, TweenInfo.new(0.3), {
  7728. TextTransparency = 0
  7729. });
  7730. MarcoUI:_Animation(HomeHighlight, TweenInfo.new(0.3), {
  7731. BackgroundTransparency = 0.925
  7732. });
  7733. -- Hide all other tab contents
  7734. for i, v in next, WindowArgs.Tabs do
  7735. if v.Root and v.Root.Parent then
  7736. v.Remote:Fire(false);
  7737. end;
  7738. end;
  7739. else
  7740. MarcoUI:_Animation(HomeIcon, TweenInfo.new(0.3, Enum.EasingStyle.Exponential), {
  7741. ImageTransparency = 0.5,
  7742. Rotation = 0,
  7743. Size = UDim2.new(0, 22, 0, 22)
  7744. });
  7745. MarcoUI:_Animation(HomeLabel, TweenInfo.new(0.3), {
  7746. TextTransparency = 0.5
  7747. });
  7748. MarcoUI:_Animation(HomeHighlight, TweenInfo.new(0.3), {
  7749. BackgroundTransparency = 1
  7750. });
  7751. HomeDashboard.Visible = false;
  7752. end;
  7753. end;
  7754.  
  7755. MarcoUI:_Input(HomeButton, function()
  7756. if WindowArgs.IsHomeActive then
  7757. return; -- Already active
  7758. end;
  7759. ToggleHome(true);
  7760. end);
  7761.  
  7762. -- Store Home toggle function for use when tabs are created
  7763. WindowArgs._ToggleHome = ToggleHome;
  7764.  
  7765. -- Initialize Home as active
  7766. ToggleHome(true);
  7767.  
  7768. Userinfo.Name = MarcoUI:_RandomString()
  7769. Userinfo.Parent = TabFrame
  7770. Userinfo.AnchorPoint = Vector2.new(0, 1)
  7771. Userinfo.BackgroundTransparency = 1.000
  7772. Userinfo.BorderColor3 = Color3.fromRGB(0, 0, 0)
  7773. Userinfo.BorderSizePixel = 0
  7774. Userinfo.Position = UDim2.new(0, 0, 1, 0)
  7775. Userinfo.Size = UDim2.new(1, -25, 0, 60)
  7776.  
  7777. do
  7778. local Highlight = Instance.new("Frame")
  7779. local UICorner = Instance.new("UICorner")
  7780.  
  7781. Highlight.Name = MarcoUI:_RandomString()
  7782. Highlight.Parent = Userinfo
  7783. Highlight.AnchorPoint = Vector2.new(0.5, 0)
  7784. Highlight.BackgroundColor3 = Color3.fromRGB(161, 161, 161)
  7785. Highlight.BackgroundTransparency = 1
  7786. Highlight.BorderColor3 = Color3.fromRGB(0, 0, 0)
  7787. Highlight.BorderSizePixel = 0
  7788. Highlight.Position = UDim2.new(0.5, 0, 0, 4)
  7789. Highlight.Size = UDim2.new(1, -15, 1, -15)
  7790.  
  7791. UICorner.CornerRadius = UDim.new(0, 4)
  7792. UICorner.Parent = Highlight
  7793.  
  7794. Userinfo.MouseEnter:Connect(function()
  7795. MarcoUI:_Animation(Highlight,TweenInfo.new(0.2),{
  7796. BackgroundTransparency = 0.925
  7797. });
  7798. end);
  7799.  
  7800. Userinfo.MouseLeave:Connect(function()
  7801. MarcoUI:_Animation(Highlight,TweenInfo.new(0.2),{
  7802. BackgroundTransparency = 1
  7803. });
  7804. end);
  7805.  
  7806. MarcoUI:_Input(Userinfo,function()
  7807. if WindowArgs.UserSettings.Root then
  7808. WindowArgs.UserSettings:Window(true);
  7809. end;
  7810. end);
  7811. end;
  7812.  
  7813. UserProfile.Name = MarcoUI:_RandomString()
  7814. UserProfile.Parent = Userinfo
  7815. UserProfile.BackgroundTransparency = 1.000
  7816. UserProfile.BorderColor3 = Color3.fromRGB(0, 0, 0)
  7817. UserProfile.BorderSizePixel = 0
  7818. UserProfile.Position = UDim2.new(0, 13, 0, 9)
  7819. UserProfile.Size = UDim2.new(0, 35, 0, 35)
  7820. UserProfile.ZIndex = 2
  7821. UserProfile.Image = MarcoUI:CacheImage("rbxassetid://18518299306")
  7822.  
  7823. UICorner_4.CornerRadius = UDim.new(1, 0)
  7824. UICorner_4.Parent = UserProfile
  7825.  
  7826. UserText.Name = MarcoUI:_RandomString()
  7827. UserText.Parent = Userinfo
  7828. UserText.BackgroundTransparency = 1.000
  7829. UserText.BorderColor3 = Color3.fromRGB(0, 0, 0)
  7830. UserText.BorderSizePixel = 0
  7831. UserText.Position = UDim2.new(0, 55, 0, 8)
  7832. UserText.Size = UDim2.new(0, 200, 0, 20)
  7833. UserText.ZIndex = 2
  7834. UserText.Font = Enum.Font.GothamMedium
  7835. UserText.Text = "Username"
  7836. UserText.TextColor3 = MarcoUI.Colors.SwitchColor
  7837. UserText.TextSize = 13.000
  7838. UserText.TextXAlignment = Enum.TextXAlignment.Left
  7839.  
  7840. table.insert(MarcoUI.Elements.SwitchColor , {
  7841. Element = UserText,
  7842. Property = 'TextColor3'
  7843. });
  7844.  
  7845. ExpireText.Name = MarcoUI:_RandomString()
  7846. ExpireText.Parent = Userinfo
  7847. ExpireText.BackgroundTransparency = 1.000
  7848. ExpireText.BorderColor3 = Color3.fromRGB(0, 0, 0)
  7849. ExpireText.BorderSizePixel = 0
  7850. ExpireText.Position = UDim2.new(0, 55, 0, 25)
  7851. ExpireText.Size = UDim2.new(0, 200, 0, 20)
  7852. ExpireText.ZIndex = 2
  7853. ExpireText.Font = Enum.Font.GothamMedium
  7854. ExpireText.Text = "0/0/0"
  7855. ExpireText.TextColor3 = MarcoUI.Colors.SwitchColor
  7856. ExpireText.TextSize = 13.000
  7857. ExpireText.TextTransparency = 0.500
  7858. ExpireText.TextXAlignment = Enum.TextXAlignment.Left
  7859.  
  7860. table.insert(MarcoUI.Elements.SwitchColor , {
  7861. Element = ExpireText,
  7862. Property = 'TextColor3'
  7863. });
  7864.  
  7865. TabMainFrame.Name = MarcoUI:_RandomString()
  7866. TabMainFrame.Parent = MainFrame
  7867. TabMainFrame.AnchorPoint = Vector2.new(0.5, 0.5)
  7868. TabMainFrame.BackgroundTransparency = 1.000
  7869. TabMainFrame.BorderColor3 = Color3.fromRGB(0, 0, 0)
  7870. TabMainFrame.BorderSizePixel = 0
  7871. TabMainFrame.ClipsDescendants = true
  7872. TabMainFrame.Position = UDim2.new(0.5, 0, 0.5, 0)
  7873. TabMainFrame.Size = UDim2.new(1, 0, 1, 0)
  7874. TabMainFrame.ZIndex = 5
  7875.  
  7876. if MarcoUI:_IsMobile() then
  7877. MarcoUI:_AddDragBlacklist(TabButtons);
  7878. end;
  7879.  
  7880. WindowOpen:Connect(function(v)
  7881. if WindowArgs.PerformanceMode then
  7882. MainFrame.BackgroundTransparency = (v and 0) or 1;
  7883. return;
  7884. end;
  7885.  
  7886. if v then
  7887. MarcoUI:_Animation(MainFrame,TweenInfo.new(0.2),{
  7888. Size = Config.Scale
  7889. })
  7890.  
  7891. MarcoUI:_Animation(TabButtonScrollingFrame,TweenInfo.new(0.35),{
  7892. Position = UDim2.new(0.5, 0, 0, 46) -- Fixed position
  7893. })
  7894.  
  7895. -- Hide Home button text when sidebar closes
  7896. MarcoUI:_Animation(HomeLabel, TweenInfo.new(0.2), {
  7897. TextTransparency = 1
  7898. });
  7899.  
  7900. MarcoUI:_Animation(CompLogo,TweenInfo.new(0.2),{
  7901. ImageTransparency = 0
  7902. })
  7903.  
  7904. MarcoUI:_Animation(WindowLabel,TweenInfo.new(0.2),{
  7905. TextTransparency = 0
  7906. })
  7907.  
  7908. MarcoUI:_Animation(UserProfile,TweenInfo.new(0.2),{
  7909. ImageTransparency = 0
  7910. })
  7911.  
  7912. MarcoUI:_Animation(UserText,TweenInfo.new(0.2),{
  7913. TextTransparency = 0
  7914. })
  7915.  
  7916. MarcoUI:_Animation(ExpireText,TweenInfo.new(0.2),{
  7917. TextTransparency = 0.5
  7918. })
  7919.  
  7920. MarcoUI:_Animation(MainFrame,TweenInfo.new(0.2),{
  7921. BackgroundTransparency = 0
  7922. })
  7923.  
  7924. MarcoUI:_Animation(LineFrame1,TweenInfo.new(0.3),{
  7925. BackgroundTransparency = 0,
  7926. Size = UDim2.new(0, 20, 1, 0)
  7927. })
  7928.  
  7929. MarcoUI:_Animation(TabFrame,TweenInfo.new(0.2),{
  7930. BackgroundTransparency = TabFrameBaseTrans
  7931. })
  7932. else
  7933. MarcoUI:_Animation(MainFrame,TweenInfo.new(0.2),{
  7934. Size = UDim2.new(math.max(Config.Scale.X.Scale - 0.05,0) , Config.Scale.X.Offset - 10 , math.max(Config.Scale.Y.Scale - 0.05,0) , Config.Scale.Y.Offset - 10)
  7935. })
  7936.  
  7937. MarcoUI:_Animation(TabButtonScrollingFrame,TweenInfo.new(0.35),{
  7938. Position = UDim2.new(1.5, 100, 0, 46) -- Fixed position
  7939. })
  7940.  
  7941. -- Show Home button text when sidebar opens
  7942. if WindowArgs.IsHomeActive then
  7943. MarcoUI:_Animation(HomeLabel, TweenInfo.new(0.2), {
  7944. TextTransparency = 0
  7945. });
  7946. else
  7947. MarcoUI:_Animation(HomeLabel, TweenInfo.new(0.2), {
  7948. TextTransparency = 0.5
  7949. });
  7950. end;
  7951.  
  7952. MarcoUI:_Animation(LineFrame1,TweenInfo.new(0.1),{
  7953. BackgroundTransparency = 1,
  7954. Size = UDim2.new(0, 1, 1, 0)
  7955. })
  7956.  
  7957. MarcoUI:_Animation(CompLogo,TweenInfo.new(0.2),{
  7958. ImageTransparency = 1
  7959. })
  7960.  
  7961. MarcoUI:_Animation(WindowLabel,TweenInfo.new(0.2),{
  7962. TextTransparency = 1
  7963. })
  7964.  
  7965. MarcoUI:_Animation(GameNameLabel,TweenInfo.new(0.2),{
  7966. TextTransparency = 1
  7967. })
  7968.  
  7969. MarcoUI:_Animation(UserProfile,TweenInfo.new(0.2),{
  7970. ImageTransparency = 1
  7971. })
  7972.  
  7973. MarcoUI:_Animation(UserText,TweenInfo.new(0.2),{
  7974. TextTransparency = 1
  7975. })
  7976.  
  7977. MarcoUI:_Animation(ExpireText,TweenInfo.new(0.2),{
  7978. TextTransparency = 1
  7979. })
  7980.  
  7981. -- Hide Home label when sidebar closes
  7982. MarcoUI:_Animation(HomeLabel, TweenInfo.new(0.2), {
  7983. TextTransparency = 1
  7984. });
  7985.  
  7986. MarcoUI:_Animation(MainFrame,TweenInfo.new(0.2),{
  7987. BackgroundTransparency = 1
  7988. })
  7989.  
  7990. MarcoUI:_Animation(TabFrame,TweenInfo.new(0.1),{
  7991. BackgroundTransparency = 1
  7992. })
  7993. end;
  7994. end);
  7995.  
  7996. TabHover:Connect(function(value)
  7997. local Style = TweenInfo.new(0.45,Enum.EasingStyle.Quint);
  7998.  
  7999. if value then
  8000. MarcoUI:_Animation(TabFrame , Style , {
  8001. Size = UDim2.new(0, 185,1, 0)
  8002. });
  8003.  
  8004. MarcoUI:_Animation(WindowLabel , Style , {
  8005. Position = UDim2.new(0, 60,0, 17),
  8006. TextTransparency = 0
  8007. });
  8008.  
  8009. MarcoUI:_Animation(GameNameLabel , Style , {
  8010. TextTransparency = 0.3
  8011. });
  8012.  
  8013. MarcoUI:_Animation(UserText , Style , {
  8014. Position = UDim2.new(0, 55,0, 8),
  8015. TextTransparency = 0.1
  8016. });
  8017.  
  8018. MarcoUI:_Animation(ExpireText , Style , {
  8019. Position = UDim2.new(0, 55,0, 25),
  8020. TextTransparency = 0.5
  8021. });
  8022.  
  8023. -- Show Home label based on active state
  8024. if WindowArgs.IsHomeActive then
  8025. MarcoUI:_Animation(HomeLabel, Style, {
  8026. TextTransparency = 0
  8027. });
  8028. else
  8029. MarcoUI:_Animation(HomeLabel, Style, {
  8030. TextTransparency = 0.5
  8031. });
  8032. end;
  8033. else
  8034. MarcoUI:_Animation(TabFrame , Style , {
  8035. Size = UDim2.new(0, 85,1, 0)
  8036. });
  8037.  
  8038. MarcoUI:_Animation(WindowLabel , Style , {
  8039. Position = UDim2.new(0, 60 + 25,0, 17),
  8040. TextTransparency = 1
  8041. });
  8042.  
  8043. MarcoUI:_Animation(UserText , Style , {
  8044. Position = UDim2.new(0, 55 + 25,0, 8),
  8045. TextTransparency = 1
  8046. });
  8047.  
  8048. MarcoUI:_Animation(ExpireText , Style , {
  8049. Position = UDim2.new(0, 55 + 25,0, 25),
  8050. TextTransparency = 1
  8051. });
  8052.  
  8053. MarcoUI:_Animation(GameNameLabel , Style , {
  8054. TextTransparency = 1
  8055. });
  8056.  
  8057. -- Hide Home label when sidebar closes
  8058. MarcoUI:_Animation(HomeLabel, Style, {
  8059. TextTransparency = 1
  8060. });
  8061. end;
  8062. end);
  8063.  
  8064. WindowArgs.UserSettings = {};
  8065.  
  8066. do
  8067. local Signal = MarcoUI.__SIGNAL(false);
  8068.  
  8069. local UserSettings = Instance.new("Frame")
  8070. local UICorner = Instance.new("UICorner")
  8071. local SectionFrame = Instance.new("Frame")
  8072. local UICorner_2 = Instance.new("UICorner")
  8073. local UIListLayout = Instance.new("UIListLayout")
  8074. local Header = Instance.new("Frame")
  8075. local HeaderText = Instance.new("TextLabel")
  8076. local ImageLabel = Instance.new("ImageLabel")
  8077.  
  8078. UserSettings.Name = MarcoUI:_RandomString()
  8079. UserSettings.Parent = WindowGui;
  8080. UserSettings.BackgroundColor3 = MarcoUI.Colors.BGDBColor;
  8081. UserSettings.BackgroundTransparency = 1
  8082. UserSettings.BorderColor3 = Color3.fromRGB(0, 0, 0)
  8083. UserSettings.BorderSizePixel = 0
  8084. UserSettings.Position = UDim2.new(0, 50, 0, 50)
  8085. UserSettings.Size = UDim2.new(0, 235, 0, 300)
  8086. UserSettings.ZIndex = 65;
  8087. UserSettings.Visible = false;
  8088.  
  8089. table.insert(MarcoUI.Elements.BGDBColor,{
  8090. Element = UserSettings,
  8091. Property = 'BackgroundColor3'
  8092. });
  8093.  
  8094. UICorner.CornerRadius = UDim.new(0, 4)
  8095. UICorner.Parent = UserSettings
  8096.  
  8097. SectionFrame.Name = MarcoUI:_RandomString()
  8098. SectionFrame.Parent = UserSettings
  8099. SectionFrame.BackgroundColor3 = MarcoUI.Colors.BGDBColor;
  8100. SectionFrame.BorderColor3 = Color3.fromRGB(0, 0, 0)
  8101. SectionFrame.BorderSizePixel = 0
  8102. SectionFrame.Position = UDim2.new(0, 0, 0, 45)
  8103. SectionFrame.Size = UDim2.new(1, 0, 1, -45)
  8104. SectionFrame.ZIndex = 66
  8105.  
  8106. table.insert(MarcoUI.Elements.BGDBColor,{
  8107. Element = SectionFrame,
  8108. Property = 'BackgroundColor3'
  8109. });
  8110.  
  8111. UICorner_2.CornerRadius = UDim.new(0, 4)
  8112. UICorner_2.Parent = SectionFrame
  8113.  
  8114. UIListLayout.Parent = SectionFrame
  8115. UIListLayout.HorizontalAlignment = Enum.HorizontalAlignment.Center
  8116. UIListLayout.SortOrder = Enum.SortOrder.LayoutOrder
  8117. UIListLayout.Padding = UDim.new(0, 5)
  8118.  
  8119. Header.Name = MarcoUI:_RandomString()
  8120. Header.Parent = UserSettings
  8121. Header.BackgroundColor3 = Color3.fromRGB(255, 255, 255)
  8122. Header.BackgroundTransparency = 1.000
  8123. Header.BorderColor3 = Color3.fromRGB(0, 0, 0)
  8124. Header.BorderSizePixel = 0
  8125. Header.Size = UDim2.new(1, 0, 0, 45)
  8126. Header.ZIndex = 66
  8127.  
  8128. HeaderText.Name = MarcoUI:_RandomString()
  8129. HeaderText.Parent = Header
  8130. HeaderText.AnchorPoint = Vector2.new(0.5, 0.5)
  8131. HeaderText.BackgroundTransparency = 1.000
  8132. HeaderText.BorderColor3 = Color3.fromRGB(0, 0, 0)
  8133. HeaderText.BorderSizePixel = 0
  8134. HeaderText.Position = UDim2.new(0.5, 0, 0.5, 0)
  8135. HeaderText.Size = UDim2.new(0, 200, 0, 25)
  8136. HeaderText.ZIndex = 67
  8137. HeaderText.Font = Enum.Font.GothamMedium
  8138. HeaderText.Text = "User Settings"
  8139. HeaderText.TextColor3 = Color3.fromRGB(255, 255, 255)
  8140. HeaderText.TextSize = 15.000
  8141.  
  8142. table.insert(MarcoUI.Elements.SwitchColor,{
  8143. Element = HeaderText,
  8144. Property = 'TextColor3'
  8145. });
  8146.  
  8147. ImageLabel.Parent = Header
  8148. ImageLabel.AnchorPoint = Vector2.new(1, 0)
  8149. ImageLabel.BackgroundColor3 = Color3.fromRGB(255, 255, 255)
  8150. ImageLabel.BackgroundTransparency = 1.000
  8151. ImageLabel.BorderColor3 = Color3.fromRGB(0, 0, 0)
  8152. ImageLabel.BorderSizePixel = 0
  8153. ImageLabel.Position = UDim2.new(1, -5, 0, 5)
  8154. ImageLabel.Size = UDim2.new(0, 15, 0, 15)
  8155. ImageLabel.ZIndex = 67
  8156. ImageLabel.Image = MarcoUI:CacheImage("rbxassetid://10747384394")
  8157. ImageLabel.ImageTransparency = 0.500
  8158.  
  8159. function WindowArgs.UserSettings:Create()
  8160.  
  8161. WindowArgs.UserSettings.Root = UserSettings;
  8162. WindowArgs.UserSettings.Signal = Signal;
  8163. WindowArgs.UserSettings.Signal = MarcoUI:_Blur(UserSettings,Signal);
  8164.  
  8165. MarcoUI:Drag(UserSettings , UserSettings, 0.15);
  8166.  
  8167. UIListLayout:GetPropertyChangedSignal('AbsoluteContentSize'):Connect(function()
  8168. MarcoUI:_Animation(UserSettings,TweenInfo.new(0.2),{
  8169. Size = UDim2.new(0, 235, 0, UIListLayout.AbsoluteContentSize.Y + 50)
  8170. })
  8171. end);
  8172.  
  8173. UserSettings:GetPropertyChangedSignal('BackgroundTransparency'):Connect(function()
  8174. if UserSettings.BackgroundTransparency < 1 then
  8175. UserSettings.Visible = true;
  8176. else
  8177. UserSettings.Visible = false;
  8178. end;
  8179. end);
  8180.  
  8181. function WindowArgs.UserSettings:Window(Value)
  8182. if Value then
  8183. Signal:Fire(true);
  8184.  
  8185. MarcoUI:_Animation(UserSettings,TweenInfo.new(0.2),{
  8186. BackgroundTransparency = 0.250,
  8187. });
  8188.  
  8189. MarcoUI:_Animation(SectionFrame,TweenInfo.new(0.2),{
  8190. BackgroundTransparency = 0,
  8191. });
  8192.  
  8193. MarcoUI:_Animation(HeaderText,TweenInfo.new(0.2),{
  8194. TextTransparency = 0,
  8195. });
  8196.  
  8197. MarcoUI:_Animation(ImageLabel,TweenInfo.new(0.2),{
  8198. ImageTransparency = 0.5,
  8199. });
  8200. else
  8201. Signal:Fire(false);
  8202.  
  8203. MarcoUI:_Animation(UserSettings,TweenInfo.new(0.2),{
  8204. BackgroundTransparency = 1,
  8205. });
  8206.  
  8207. MarcoUI:_Animation(SectionFrame,TweenInfo.new(0.2),{
  8208. BackgroundTransparency = 1,
  8209. });
  8210.  
  8211. MarcoUI:_Animation(HeaderText,TweenInfo.new(0.2),{
  8212. TextTransparency = 1,
  8213. });
  8214.  
  8215. MarcoUI:_Animation(ImageLabel,TweenInfo.new(0.2),{
  8216. ImageTransparency = 1,
  8217. });
  8218. end;
  8219. end;
  8220.  
  8221. MarcoUI:_Input(ImageLabel,function()
  8222. WindowArgs.UserSettings:Window(false);
  8223. end);
  8224.  
  8225. WindowArgs.UserSettings:Window(false);
  8226.  
  8227. return MarcoUI:_LoadElement(SectionFrame , true , Signal);
  8228. end;
  8229. end;
  8230.  
  8231. function WindowArgs:SetVisible(bool: boolean)
  8232. MarcoUI.Enabled = bool;
  8233. end;
  8234.  
  8235. function WindowArgs:DrawCategory(config : Category)
  8236. config = config or {};
  8237. config.Name = config.Name or "Category";
  8238.  
  8239. local Category = Instance.new("Frame")
  8240. local CategoryText = Instance.new("TextLabel")
  8241. local Frame = Instance.new("Frame")
  8242. local UIGradient = Instance.new("UIGradient")
  8243.  
  8244. Category.Name = MarcoUI:_RandomString()
  8245. Category.Parent = TabButtonScrollingFrame
  8246. Category.BackgroundTransparency = 1.000
  8247. Category.BorderColor3 = Color3.fromRGB(0, 0, 0)
  8248. Category.BorderSizePixel = 0
  8249. Category.ClipsDescendants = true
  8250. Category.Size = UDim2.new(1, -10, 0, 22)
  8251.  
  8252. if MarcoUI:_IsMobile() then
  8253. MarcoUI:_AddDragBlacklist(Category);
  8254. end;
  8255.  
  8256. CategoryText.Name = MarcoUI:_RandomString()
  8257. CategoryText.Parent = Category
  8258. CategoryText.BackgroundTransparency = 1.000
  8259. CategoryText.BorderColor3 = Color3.fromRGB(0, 0, 0)
  8260. CategoryText.BorderSizePixel = 0
  8261. CategoryText.Position = UDim2.new(0, 5, 0, 8)
  8262. CategoryText.Size = UDim2.new(1, 200, 0, 10)
  8263. CategoryText.Font = Enum.Font.Gotham
  8264. CategoryText.Text = config.Name
  8265. CategoryText.TextColor3 = MarcoUI.Colors.SwitchColor
  8266. CategoryText.TextSize = 16.000
  8267. CategoryText.TextTransparency = 0.500
  8268. CategoryText.TextXAlignment = Enum.TextXAlignment.Left
  8269.  
  8270. table.insert(MarcoUI.Elements.SwitchColor , {
  8271. Element = CategoryText,
  8272. Property = 'TextColor3'
  8273. });
  8274.  
  8275. Frame.Parent = Category
  8276. Frame.AnchorPoint = Vector2.new(0.5, 1)
  8277. Frame.BackgroundColor3 = MarcoUI.Colors.Highlight
  8278. Frame.BackgroundTransparency = 0.750
  8279. Frame.BorderColor3 = Color3.fromRGB(0, 0, 0)
  8280. Frame.BorderSizePixel = 0
  8281. Frame.Position = UDim2.new(0.5, 0, 1, 0)
  8282. Frame.Size = UDim2.new(1, 0, 0, 1)
  8283.  
  8284. table.insert(MarcoUI.Elements.Highlight,{
  8285. Element = Frame,
  8286. Property = "BackgroundColor3"
  8287. });
  8288.  
  8289. UIGradient.Transparency = NumberSequence.new{NumberSequenceKeypoint.new(0.00, 1.00), NumberSequenceKeypoint.new(0.05, 0.21), NumberSequenceKeypoint.new(0.50, 0.00), NumberSequenceKeypoint.new(0.96, 0.17), NumberSequenceKeypoint.new(1.00, 1.00)}
  8290. UIGradient.Parent = Frame
  8291.  
  8292. local Tween = TweenInfo.new(0.35,Enum.EasingStyle.Quint);
  8293.  
  8294. TabHover:Connect(function(bool)
  8295. if bool then
  8296. MarcoUI:_Animation(CategoryText,Tween,{
  8297. TextTransparency = 0.500
  8298. });
  8299.  
  8300. MarcoUI:_Animation(Frame,Tween,{
  8301. BackgroundTransparency = 0.750
  8302. });
  8303. else
  8304. MarcoUI:_Animation(CategoryText,Tween,{
  8305. TextTransparency = 1
  8306. });
  8307.  
  8308. MarcoUI:_Animation(Frame,Tween,{
  8309. BackgroundTransparency = 1
  8310. });
  8311. end;
  8312. end);
  8313. end;
  8314.  
  8315. function WindowArgs:DrawContainerTab(TabConfig : ContainerTab)
  8316. TabConfig = MarcoUI.__CONFIG(TabConfig,{
  8317. Name = "Tab",
  8318. Icon = "eye",
  8319. });
  8320.  
  8321. local Tween = TweenInfo.new(0.35,Enum.EasingStyle.Quint);
  8322. local TabOpenSignal = MarcoUI.__SIGNAL(false);
  8323.  
  8324. local TabArgs = {
  8325. __Current = nil,
  8326. Tabs = {}
  8327. };
  8328.  
  8329. -- Creating Button --
  8330.  
  8331. local TabButton = Instance.new("Frame")
  8332. local Icon = Instance.new("ImageLabel")
  8333. local TabNameLabel = Instance.new("TextLabel")
  8334. local Highlight = Instance.new("Frame")
  8335. local UICorner = Instance.new("UICorner")
  8336.  
  8337. TabButton.Name = MarcoUI:_RandomString()
  8338. TabButton.Parent = TabButtonScrollingFrame
  8339. TabButton.BackgroundTransparency = 1.000
  8340. TabButton.BorderColor3 = Color3.fromRGB(0, 0, 0)
  8341. TabButton.BorderSizePixel = 0
  8342. TabButton.ClipsDescendants = true
  8343. TabButton.Size = UDim2.new(1, -10, 0, 32)
  8344. TabButton.ZIndex = 3
  8345.  
  8346. if MarcoUI:_IsMobile() then
  8347. MarcoUI:_AddDragBlacklist(TabButton);
  8348. end;
  8349.  
  8350. Icon.Name = MarcoUI:_RandomString()
  8351. Icon.Parent = TabButton
  8352. Icon.AnchorPoint = Vector2.new(0, 0.5)
  8353. Icon.BackgroundColor3 = MarcoUI.Colors.Highlight
  8354. Icon.BackgroundTransparency = 1.000
  8355. Icon.BorderColor3 = Color3.fromRGB(0, 0, 0)
  8356. Icon.BorderSizePixel = 0
  8357. Icon.Position = UDim2.new(0, 15, 0.5, 0)
  8358. Icon.Size = UDim2.new(0, 15, 0, 15)
  8359. Icon.ZIndex = 3
  8360. Icon.Image = MarcoUI:_GetIcon(TabConfig.Icon);
  8361. Icon.ImageColor3 = MarcoUI.Colors.Highlight
  8362.  
  8363. table.insert(MarcoUI.Elements.Highlight,{
  8364. Element = Icon,
  8365. Property = "ImageColor3"
  8366. });
  8367.  
  8368. TabNameLabel.Name = MarcoUI:_RandomString()
  8369. TabNameLabel.Parent = TabButton
  8370. TabNameLabel.AnchorPoint = Vector2.new(0, 0.5)
  8371. TabNameLabel.BackgroundTransparency = 1.000
  8372. TabNameLabel.BorderColor3 = Color3.fromRGB(0, 0, 0)
  8373. TabNameLabel.BorderSizePixel = 0
  8374. TabNameLabel.Position = UDim2.new(0, 43, 0.5, 0)
  8375. TabNameLabel.Size = UDim2.new(0, 200, 0, 25)
  8376. TabNameLabel.ZIndex = 3
  8377. TabNameLabel.Font = Enum.Font.GothamMedium
  8378. TabNameLabel.Text = TabConfig.Name;
  8379. TabNameLabel.TextColor3 = MarcoUI.Colors.SwitchColor
  8380. TabNameLabel.TextSize = 15.000
  8381. TabNameLabel.TextXAlignment = Enum.TextXAlignment.Left
  8382.  
  8383. table.insert(MarcoUI.Elements.SwitchColor , {
  8384. Element = TabNameLabel,
  8385. Property = 'TextColor3'
  8386. });
  8387.  
  8388. Highlight.Name = MarcoUI:_RandomString()
  8389. Highlight.Parent = TabButton
  8390. Highlight.AnchorPoint = Vector2.new(0.5, 0.5)
  8391. Highlight.BackgroundColor3 = Color3.fromRGB(161, 161, 161)
  8392. Highlight.BackgroundTransparency = 0.925
  8393. Highlight.BorderColor3 = Color3.fromRGB(0, 0, 0)
  8394. Highlight.BorderSizePixel = 0
  8395. Highlight.Position = UDim2.new(0.5, 0, 0.5, 0)
  8396. Highlight.Size = UDim2.new(1, -17, 1, 0)
  8397. Highlight.ZIndex = 2
  8398.  
  8399. UICorner.CornerRadius = UDim.new(0, 4)
  8400. UICorner.Parent = Highlight
  8401.  
  8402. -- Creating Container --
  8403.  
  8404. local ContainerTab = Instance.new("Frame")
  8405. local MainFrame = Instance.new("Frame")
  8406. local Top = Instance.new("Frame")
  8407. local UIListLayout = Instance.new("UIListLayout")
  8408.  
  8409. ContainerTab.Name = MarcoUI:_RandomString()
  8410. ContainerTab.Parent = TabMainFrame
  8411. ContainerTab.AnchorPoint = Vector2.new(0.5, 0.5)
  8412. ContainerTab.BackgroundTransparency = 1.000
  8413. ContainerTab.BorderColor3 = Color3.fromRGB(0, 0, 0)
  8414. ContainerTab.BorderSizePixel = 0
  8415. ContainerTab.Position = UDim2.new(0.5, 0, 0.5, 0)
  8416. ContainerTab.Size = UDim2.new(1, -15, 1, -15)
  8417. ContainerTab.ZIndex = 6
  8418. ContainerTab.Visible = true
  8419.  
  8420. MainFrame.Name = MarcoUI:_RandomString()
  8421. MainFrame.Parent = ContainerTab
  8422. MainFrame.AnchorPoint = Vector2.new(0.5, 1)
  8423. MainFrame.BackgroundTransparency = 1.000
  8424. MainFrame.BorderColor3 = Color3.fromRGB(0, 0, 0)
  8425. MainFrame.BorderSizePixel = 0
  8426. MainFrame.Position = UDim2.new(0.5, 0, 1, -5)
  8427. MainFrame.Size = UDim2.new(1, 0, 1, -35)
  8428. MainFrame.ZIndex = 6
  8429. MainFrame.Visible = true
  8430. MainFrame.ClipsDescendants = true
  8431.  
  8432. Top.Name = MarcoUI:_RandomString()
  8433. Top.Parent = ContainerTab
  8434. Top.BackgroundTransparency = 1.000
  8435. Top.BorderColor3 = Color3.fromRGB(0, 0, 0)
  8436. Top.BorderSizePixel = 0
  8437. Top.Size = UDim2.new(1, 0, 0, 25)
  8438. Top.ZIndex = 7
  8439.  
  8440. UIListLayout.Parent = Top
  8441. UIListLayout.FillDirection = Enum.FillDirection.Horizontal
  8442. UIListLayout.SortOrder = Enum.SortOrder.LayoutOrder
  8443. UIListLayout.VerticalAlignment = Enum.VerticalAlignment.Center
  8444. UIListLayout.Padding = UDim.new(0, 10)
  8445.  
  8446. -- Functions --
  8447. local function updateContainerVisibility()
  8448. if Highlight.BackgroundTransparency <= 0.99 then
  8449. ContainerTab.Visible = true;
  8450. else
  8451. ContainerTab.Visible = false;
  8452. end;
  8453.  
  8454. if MarcoUI.PerformanceMode then
  8455. if ContainerTab.Visible then
  8456. MarcoUI:_SetNilP(ContainerTab , TabMainFrame);
  8457. else
  8458. MarcoUI:_SetNilP(ContainerTab , nil);
  8459. end;
  8460. else
  8461. MarcoUI:_SetNilP(ContainerTab , TabMainFrame);
  8462. end;
  8463. end;
  8464.  
  8465. Highlight:GetPropertyChangedSignal('BackgroundTransparency'):Connect(updateContainerVisibility);
  8466.  
  8467. -- Also listen to tab open signal for immediate updates
  8468. TabOpenSignal:Connect(function(isOpen)
  8469. task.defer(function()
  8470. updateContainerVisibility();
  8471. end);
  8472. end);
  8473.  
  8474. -- Initialize visibility
  8475. updateContainerVisibility();
  8476.  
  8477. local TabOpen = function(bool)
  8478. if bool then
  8479. WindowArgs.SelectedTab = TabButton;
  8480. -- Hide Home when a tab is opened
  8481. if WindowArgs.IsHomeActive and WindowArgs._ToggleHome then
  8482. WindowArgs._ToggleHome(false);
  8483. end;
  8484.  
  8485. -- Selected tab: spin icon 360 degrees and scale up
  8486. MarcoUI:_Animation(Icon,TweenInfo.new(0.4, Enum.EasingStyle.Exponential, Enum.EasingDirection.Out),{
  8487. ImageTransparency = 0,
  8488. Rotation = 360,
  8489. Size = UDim2.new(0, 17, 0, 17)
  8490. });
  8491.  
  8492. MarcoUI:_Animation(TabButton,TweenInfo.new(0.3, Enum.EasingStyle.Exponential, Enum.EasingDirection.Out),{
  8493. Size = UDim2.new(1, -8, 0, 34)
  8494. });
  8495.  
  8496. MarcoUI:_Animation(TabNameLabel,Tween,{
  8497. TextTransparency = 0
  8498. });
  8499.  
  8500. MarcoUI:_Animation(Highlight,Tween,{
  8501. BackgroundTransparency = 0.925
  8502. });
  8503.  
  8504. for i,v in next , TabArgs.Tabs do
  8505. if v.Root == TabArgs.__Current.Root then
  8506. v.Remote:Fire(true);
  8507. end;
  8508. end;
  8509. else
  8510. -- Unselected tab: reset rotation, scale down, offset right
  8511. MarcoUI:_Animation(Icon,TweenInfo.new(0.3, Enum.EasingStyle.Exponential, Enum.EasingDirection.Out),{
  8512. ImageTransparency = 0.5,
  8513. Rotation = 0,
  8514. Size = UDim2.new(0, 14, 0, 14),
  8515. Position = UDim2.new(0, 16, 0.5, 0)
  8516. });
  8517.  
  8518. MarcoUI:_Animation(TabButton,TweenInfo.new(0.3, Enum.EasingStyle.Exponential, Enum.EasingDirection.Out),{
  8519. Size = UDim2.new(1, -10, 0, 30),
  8520. Position = UDim2.new(0, 2, 0, 0)
  8521. });
  8522.  
  8523. MarcoUI:_Animation(TabNameLabel,Tween,{
  8524. TextTransparency = 0.5
  8525. });
  8526.  
  8527. MarcoUI:_Animation(Highlight,Tween,{
  8528. BackgroundTransparency = 1
  8529. });
  8530.  
  8531. for i,v in next , TabArgs.Tabs do
  8532. v.Remote:Fire(false);
  8533. end;
  8534. end;
  8535. end;
  8536.  
  8537. if not WindowArgs.Tabs[1] then
  8538. -- First tab - make it visible immediately
  8539. ContainerTab.Visible = true;
  8540. TabOpenSignal:Fire(true);
  8541. TabOpen(true);
  8542. else
  8543. ContainerTab.Visible = false;
  8544. TabOpen(false);
  8545. end;
  8546.  
  8547. table.insert(WindowArgs.Tabs , {
  8548. Root = TabButton,
  8549. Remote = TabOpenSignal
  8550. });
  8551.  
  8552. MarcoUI:_Hover(TabButton,function()
  8553. if WindowArgs.SelectedTab ~= TabButton then
  8554. MarcoUI:_Animation(Icon,Tween,{
  8555. ImageTransparency = 0.1
  8556. });
  8557.  
  8558. MarcoUI:_Animation(TabNameLabel,Tween,{
  8559. TextTransparency = 0.1
  8560. });
  8561. end;
  8562. end , function()
  8563. if WindowArgs.SelectedTab ~= TabButton then
  8564. MarcoUI:_Animation(Icon,Tween,{
  8565. ImageTransparency = 0.5
  8566. });
  8567.  
  8568. MarcoUI:_Animation(TabNameLabel,Tween,{
  8569. TextTransparency = 0.5
  8570. });
  8571. end;
  8572. end)
  8573.  
  8574. TabOpenSignal:Connect(TabOpen);
  8575.  
  8576. TabHover:Connect(function(bool)
  8577. if bool then
  8578. MarcoUI:_Animation(TabButton,Tween,{
  8579. Size = UDim2.new(1, -10, 0, 32)
  8580. });
  8581.  
  8582. MarcoUI:_Animation(Icon,Tween,{
  8583. Size = UDim2.new(0, 16, 0, 16),
  8584. });
  8585.  
  8586. MarcoUI:_Animation(TabNameLabel,Tween,{
  8587. Size = UDim2.new(0, 200, 0, 25),
  8588. Position = UDim2.new(0, 43, 0.5, 0)
  8589. });
  8590.  
  8591. MarcoUI:_Animation(UICorner,Tween,{
  8592. CornerRadius = UDim.new(0, 4)
  8593. });
  8594.  
  8595. MarcoUI:_Animation(Highlight,Tween,{
  8596. Size = UDim2.new(1, -17, 1, 0),
  8597. Position = UDim2.new(0.5, 0, 0.5, 0)
  8598. });
  8599. else
  8600. MarcoUI:_Animation(UICorner,Tween,{
  8601. CornerRadius = UDim.new(0, 10)
  8602. });
  8603.  
  8604. MarcoUI:_Animation(TabButton,Tween,{
  8605. Size = UDim2.new(1, -10, 0, 32)
  8606. });
  8607.  
  8608. MarcoUI:_Animation(Icon,Tween,{
  8609. Size = UDim2.new(0, 16, 0, 16),
  8610. });
  8611.  
  8612. MarcoUI:_Animation(TabNameLabel,Tween,{
  8613. Size = UDim2.new(0, 200, 0, 25),
  8614. Position = UDim2.new(0, 80, 0.5, 0)
  8615. });
  8616.  
  8617. MarcoUI:_Animation(Highlight,Tween,{
  8618. Size = UDim2.new(1, -10,1, 5),
  8619. Position = UDim2.new(0.5, 0, 0.5, 0)
  8620. });
  8621. end;
  8622. end);
  8623.  
  8624. MarcoUI:_Input(TabButton,function()
  8625. for i,v in next, WindowArgs.Tabs do
  8626. if v.Root == TabButton then
  8627. v.Remote:Fire(true);
  8628. else
  8629. v.Remote:Fire(false);
  8630. end;
  8631. end;
  8632. end);
  8633.  
  8634. function TabArgs:DrawTab(TabConfig : TabConfig) -- Internal Tab
  8635. TabConfig = MarcoUI.__CONFIG(TabConfig,{
  8636. Name = "Tab",
  8637. Type = "Double",
  8638. EnableScrolling = false,
  8639. });
  8640.  
  8641. local InternalSignal = MarcoUI.__SIGNAL(false);
  8642. local Frame = Instance.new("Frame")
  8643. local UICorner = Instance.new("UICorner")
  8644. local UIStroke = Instance.new("UIStroke")
  8645. local Highlight = Instance.new("Frame")
  8646. local UICorner_2 = Instance.new("UICorner")
  8647. local TextLabel = Instance.new("TextLabel")
  8648.  
  8649. Frame.Parent = Top
  8650. Frame.BackgroundColor3 = MarcoUI.Colors.BlockColor
  8651.  
  8652. table.insert(MarcoUI.Elements.BlockColor , {
  8653. Element = Frame,
  8654. Property = "BackgroundColor3"
  8655. });
  8656.  
  8657. Frame.BackgroundTransparency = 1.000
  8658. Frame.BorderColor3 = Color3.fromRGB(0, 0, 0)
  8659. Frame.BorderSizePixel = 0
  8660. Frame.ClipsDescendants = true
  8661. Frame.Size = UDim2.new(0, 0, 0, 32) -- Larger size
  8662. Frame.ZIndex = 10
  8663.  
  8664. UICorner.CornerRadius = UDim.new(0, 4)
  8665. UICorner.Parent = Frame
  8666.  
  8667. UIStroke.Transparency = 1.000
  8668. UIStroke.Color = MarcoUI.Colors.StrokeColor
  8669. UIStroke.Thickness = 1.5 -- Slightly thicker
  8670. UIStroke.Parent = Frame
  8671.  
  8672. table.insert(MarcoUI.Elements.StrokeColor,{
  8673. Element = UIStroke,
  8674. Property = "Color"
  8675. });
  8676.  
  8677. -- Active underline indicator
  8678. local Underline = Instance.new("Frame")
  8679. Underline.Name = MarcoUI:_RandomString()
  8680. Underline.Parent = Frame
  8681. Underline.AnchorPoint = Vector2.new(0.5, 1)
  8682. Underline.BackgroundColor3 = MarcoUI.Colors.Highlight
  8683. Underline.BackgroundTransparency = 1.000
  8684. Underline.BorderSizePixel = 0
  8685. Underline.Position = UDim2.new(0.5, 0, 1, 0)
  8686. Underline.Size = UDim2.new(0, 0, 0, 2)
  8687. Underline.ZIndex = 13
  8688.  
  8689. table.insert(MarcoUI.Elements.Highlight,{
  8690. Element = Underline,
  8691. Property = "BackgroundColor3"
  8692. });
  8693.  
  8694. local UnderlineCorner = Instance.new("UICorner")
  8695. UnderlineCorner.CornerRadius = UDim.new(0, 1)
  8696. UnderlineCorner.Parent = Underline
  8697.  
  8698. Highlight.Name = MarcoUI:_RandomString()
  8699. Highlight.Parent = Frame
  8700. Highlight.AnchorPoint = Vector2.new(1, 0.5)
  8701. Highlight.BackgroundColor3 = MarcoUI.Colors.Highlight
  8702. Highlight.BackgroundTransparency = 1.000
  8703. Highlight.BorderColor3 = Color3.fromRGB(0, 0, 0)
  8704. Highlight.BorderSizePixel = 0
  8705. Highlight.Position = UDim2.new(0, 3, 0.5, 0)
  8706. Highlight.Size = UDim2.new(0, 5, 0, 10)
  8707. Highlight.ZIndex = 11
  8708.  
  8709. table.insert(MarcoUI.Elements.Highlight,{
  8710. Element = Highlight,
  8711. Property = "BackgroundColor3"
  8712. });
  8713.  
  8714. UICorner_2.CornerRadius = UDim.new(1, 0)
  8715. UICorner_2.Parent = Highlight
  8716.  
  8717. TextLabel.Parent = Frame
  8718. TextLabel.AnchorPoint = Vector2.new(0, 0.5)
  8719. TextLabel.BackgroundTransparency = 1.000
  8720. TextLabel.BorderColor3 = Color3.fromRGB(0, 0, 0)
  8721. TextLabel.BorderSizePixel = 0
  8722. TextLabel.Position = UDim2.new(0, 12, 0.5, 0)
  8723. TextLabel.Size = UDim2.new(0, 200, 0, 24) -- Larger text
  8724. TextLabel.ZIndex = 12
  8725. TextLabel.Font = Enum.Font.GothamSemibold -- Bolder font
  8726. TextLabel.Text = TabConfig.Name
  8727. TextLabel.TextColor3 = MarcoUI.Colors.SwitchColor
  8728. TextLabel.TextSize = 14.000 -- Larger text size
  8729. TextLabel.TextXAlignment = Enum.TextXAlignment.Left
  8730.  
  8731. table.insert(MarcoUI.Elements.SwitchColor , {
  8732. Element = TextLabel,
  8733. Property = 'TextColor3'
  8734. });
  8735.  
  8736. local UpdateScale = function()
  8737. local scale = TextService:GetTextSize(TextLabel.Text,TextLabel.TextSize,TextLabel.Font,Vector2.new(math.huge,math.huge));
  8738.  
  8739. Frame.Size = UDim2.new(0, scale.X + 24, 0, 32) -- Larger padding
  8740. end;
  8741.  
  8742. UpdateScale()
  8743.  
  8744. local ToggleUI = function(bool)
  8745.  
  8746. UpdateScale();
  8747.  
  8748. if bool then
  8749. -- Active state: show underline, highlight, glow
  8750. MarcoUI:_Animation(Highlight,TweenInfo.new(0.25, Enum.EasingStyle.Exponential),{
  8751. BackgroundTransparency = 0,
  8752. Size = UDim2.new(0, 5, 0, 10)
  8753. })
  8754.  
  8755. MarcoUI:_Animation(Frame,TweenInfo.new(0.25, Enum.EasingStyle.Exponential),{
  8756. BackgroundTransparency = 0
  8757. })
  8758.  
  8759. MarcoUI:_Animation(UIStroke,TweenInfo.new(0.25, Enum.EasingStyle.Exponential),{
  8760. Transparency = 0
  8761. })
  8762.  
  8763. MarcoUI:_Animation(TextLabel,TweenInfo.new(0.25, Enum.EasingStyle.Exponential),{
  8764. TextTransparency = 0,
  8765. TextSize = 15 -- Slightly larger when active
  8766. })
  8767.  
  8768. MarcoUI:_Animation(Underline,TweenInfo.new(0.3, Enum.EasingStyle.Exponential),{
  8769. BackgroundTransparency = 0,
  8770. Size = UDim2.new(0.9, 0, 0, 2) -- Animate underline width
  8771. })
  8772. else
  8773. -- Inactive state
  8774. MarcoUI:_Animation(Highlight,TweenInfo.new(0.2),{
  8775. BackgroundTransparency = 1,
  8776. Size = UDim2.new(0, 5, 0, 2)
  8777. })
  8778.  
  8779. MarcoUI:_Animation(Frame,TweenInfo.new(0.2),{
  8780. BackgroundTransparency = 1
  8781. })
  8782.  
  8783. MarcoUI:_Animation(UIStroke,TweenInfo.new(0.2),{
  8784. Transparency = 1
  8785. })
  8786.  
  8787. MarcoUI:_Animation(TextLabel,TweenInfo.new(0.2),{
  8788. TextTransparency = 0.5,
  8789. TextSize = 14
  8790. })
  8791.  
  8792. MarcoUI:_Animation(Underline,TweenInfo.new(0.2),{
  8793. BackgroundTransparency = 1,
  8794. Size = UDim2.new(0, 0, 0, 2)
  8795. })
  8796. end;
  8797. end;
  8798.  
  8799.  
  8800. local Id = {
  8801. Root = Frame,
  8802. Remote = InternalSignal
  8803. };
  8804.  
  8805. InternalSignal:Connect(ToggleUI)
  8806.  
  8807.  
  8808. if not TabArgs.Tabs[1] then
  8809. TabArgs.__Current = Id;
  8810.  
  8811. InternalSignal:Fire(true)
  8812. end;
  8813.  
  8814. table.insert(TabArgs.Tabs,Id)
  8815.  
  8816. MarcoUI:_Input(Frame,function()
  8817. for i,v in next , TabArgs.Tabs do
  8818. if v.Root == Frame then
  8819. TabArgs.__Current = v;
  8820.  
  8821. v.Remote:Fire(true);
  8822. else
  8823. v.Remote:Fire(false);
  8824. end;
  8825. end;
  8826. end);
  8827.  
  8828. local tabResult = WindowArgs:DrawTab(TabConfig , {
  8829. ID = Id,
  8830. Highlight = Highlight,
  8831. Signal = InternalSignal,
  8832. Parent = MainFrame
  8833. });
  8834.  
  8835. -- Store the first tab's result for DrawSection access
  8836. if not TabArgs.__DefaultTab then
  8837. TabArgs.__DefaultTab = tabResult;
  8838. end;
  8839.  
  8840. return tabResult;
  8841. end;
  8842.  
  8843. -- Create a default tab automatically for direct DrawSection access
  8844. TabArgs.__DefaultTab = TabArgs:DrawTab({
  8845. Name = "Main",
  8846. Type = "Double"
  8847. });
  8848.  
  8849. -- Add DrawSection method that automatically uses the default tab
  8850. function TabArgs:DrawSection(config: Section)
  8851. -- Use the default tab's DrawSection
  8852. return TabArgs.__DefaultTab:DrawSection(config);
  8853. end;
  8854.  
  8855. return TabArgs;
  8856. end;
  8857.  
  8858. function WindowArgs:AddUnbind(UilistLayout: UIListLayout , Scrolling)
  8859.  
  8860. local upd = function()
  8861. Scrolling.ScrollingEnabled = true
  8862. UilistLayout.VerticalFlex = Enum.UIFlexAlignment.None;
  8863. Scrolling.CanvasSize = UDim2.fromOffset(0,UilistLayout.AbsoluteContentSize.Y + 5)
  8864. end;
  8865.  
  8866. UIListLayout:GetPropertyChangedSignal("AbsoluteContentSize"):Connect(upd);
  8867.  
  8868. return task.defer(function()
  8869. while true do task.wait(1)
  8870. upd();
  8871. end;
  8872. end)
  8873.  
  8874. --[[local Parent: ScrollingFrame = UilistLayout.Parent;
  8875.  
  8876. Parent = Parent or Scrolling;
  8877.  
  8878. local Detection = function()
  8879. local Target = (UilistLayout.AbsoluteContentSize.Y);
  8880.  
  8881. for i,v in next , Parent:GetChildren() do task.wait(0.1)
  8882. local UIList = v:FindFirstChildWhichIsA('UIListLayout');
  8883. if v:IsA('Frame') and UIList then
  8884. if (UIList.AbsoluteContentSize.Y >= Target) or (v.AbsoluteSize.Y >= Target) or (UilistLayout.AbsoluteContentSize.Y > Parent.AbsoluteSize.Y) then
  8885. UilistLayout.VerticalFlex = Enum.UIFlexAlignment.None;
  8886. Parent.ScrollingEnabled = true;
  8887. else
  8888. Parent.ScrollingEnabled = false;
  8889. UilistLayout.VerticalFlex = Enum.UIFlexAlignment.None;
  8890. end;
  8891. end
  8892. end;
  8893. end;
  8894.  
  8895. local Executable = function()
  8896. while true do task.wait(0.15);
  8897. pcall(Detection);
  8898. end;
  8899. end;
  8900.  
  8901. table.insert(WindowArgs.THREADS,task.spawn(Executable))]]
  8902. end;
  8903.  
  8904. function WindowArgs:DrawConfig(Configuration : TabConfigManager , Internal)
  8905. Configuration = MarcoUI.__CONFIG(Configuration,{
  8906. Name = "Config",
  8907. Icon = "folder",
  8908. Config = nil
  8909. });
  8910.  
  8911. local TabOpenSignal = MarcoUI.__SIGNAL(false);
  8912. local TabArgs = {};
  8913.  
  8914. -- Button --
  8915. local TabButton = Instance.new("Frame")
  8916. local Icon = Instance.new("ImageLabel")
  8917. local TabNameLabel = Instance.new("TextLabel")
  8918. local Highlight = Instance.new("Frame")
  8919. local UICorner = Instance.new("UICorner")
  8920.  
  8921. if MarcoUI:_IsMobile() then
  8922. MarcoUI:_AddDragBlacklist(TabButton);
  8923. end;
  8924.  
  8925. TabButton.Name = MarcoUI:_RandomString()
  8926. TabButton.Parent = TabButtonScrollingFrame
  8927. TabButton.BackgroundTransparency = 1.000
  8928. TabButton.BorderColor3 = Color3.fromRGB(0, 0, 0)
  8929. TabButton.BorderSizePixel = 0
  8930. TabButton.ClipsDescendants = true
  8931. TabButton.Size = UDim2.new(1, -10, 0, 32)
  8932. TabButton.ZIndex = 3
  8933.  
  8934. Icon.Name = MarcoUI:_RandomString()
  8935. Icon.Parent = TabButton
  8936. Icon.AnchorPoint = Vector2.new(0, 0.5)
  8937. Icon.BackgroundColor3 = MarcoUI.Colors.Highlight
  8938. Icon.BackgroundTransparency = 1.000
  8939. Icon.BorderColor3 = Color3.fromRGB(0, 0, 0)
  8940. Icon.BorderSizePixel = 0
  8941. Icon.Position = UDim2.new(0, 15, 0.5, 0)
  8942. Icon.Size = UDim2.new(0, 15, 0, 15)
  8943. Icon.ZIndex = 3
  8944. Icon.Image = MarcoUI:_GetIcon(Configuration.Icon);
  8945. Icon.ImageColor3 = MarcoUI.Colors.Highlight
  8946.  
  8947. table.insert(MarcoUI.Elements.Highlight,{
  8948. Element = Icon,
  8949. Property = "ImageColor3"
  8950. });
  8951.  
  8952. TabNameLabel.Name = MarcoUI:_RandomString()
  8953. TabNameLabel.Parent = TabButton
  8954. TabNameLabel.AnchorPoint = Vector2.new(0, 0.5)
  8955. TabNameLabel.BackgroundTransparency = 1.000
  8956. TabNameLabel.BorderColor3 = Color3.fromRGB(0, 0, 0)
  8957. TabNameLabel.BorderSizePixel = 0
  8958. TabNameLabel.Position = UDim2.new(0, 43, 0.5, 0)
  8959. TabNameLabel.Size = UDim2.new(0, 200, 0, 25)
  8960. TabNameLabel.ZIndex = 3
  8961. TabNameLabel.Font = Enum.Font.GothamMedium
  8962. TabNameLabel.Text = Configuration.Name;
  8963. TabNameLabel.TextColor3 = MarcoUI.Colors.SwitchColor
  8964. TabNameLabel.TextSize = 15.000
  8965. TabNameLabel.TextXAlignment = Enum.TextXAlignment.Left
  8966.  
  8967. table.insert(MarcoUI.Elements.SwitchColor , {
  8968. Element = TabNameLabel,
  8969. Property = 'TextColor3'
  8970. });
  8971.  
  8972. Highlight.Name = MarcoUI:_RandomString()
  8973. Highlight.Parent = TabButton
  8974. Highlight.AnchorPoint = Vector2.new(0.5, 0.5)
  8975. Highlight.BackgroundColor3 = Color3.fromRGB(161, 161, 161)
  8976. Highlight.BackgroundTransparency = 0.925
  8977. Highlight.BorderColor3 = Color3.fromRGB(0, 0, 0)
  8978. Highlight.BorderSizePixel = 0
  8979. Highlight.Position = UDim2.new(0.5, 0, 0.5, 0)
  8980. Highlight.Size = UDim2.new(1, -17, 1, 0)
  8981. Highlight.ZIndex = 2
  8982.  
  8983. UICorner.CornerRadius = UDim.new(0, 4)
  8984. UICorner.Parent = Highlight
  8985.  
  8986. local TabConfig = Instance.new("Frame")
  8987. local ConfigList = Instance.new("Frame")
  8988. local UICorner = Instance.new("UICorner")
  8989. local UIStroke = Instance.new("UIStroke")
  8990. local Header = Instance.new("Frame")
  8991. local SectionText = Instance.new("TextLabel")
  8992. local SectionClose = Instance.new("ImageLabel")
  8993. local ScrollingFrame = Instance.new("ScrollingFrame")
  8994. local UIListLayout = Instance.new("UIListLayout")
  8995. local Space = Instance.new("Frame")
  8996. local AddConfig = Instance.new("Frame")
  8997. local UICorner_2 = Instance.new("UICorner")
  8998. local UIStroke_2 = Instance.new("UIStroke")
  8999. local Header_2 = Instance.new("Frame")
  9000. local SectionText_2 = Instance.new("TextLabel")
  9001. local SectionClose_2 = Instance.new("ImageLabel")
  9002. local Frame = Instance.new("Frame")
  9003. local UIStroke_3 = Instance.new("UIStroke")
  9004. local UICorner_3 = Instance.new("UICorner")
  9005. local TextBox = Instance.new("TextBox")
  9006. local Button = Instance.new("Frame")
  9007. local BlockLine = Instance.new("Frame")
  9008. local Frame_2 = Instance.new("Frame")
  9009. local UIStroke_4 = Instance.new("UIStroke")
  9010. local UICorner_4 = Instance.new("UICorner")
  9011. local TextLabel = Instance.new("TextLabel")
  9012.  
  9013. TabConfig.Name = MarcoUI:_RandomString()
  9014. TabConfig.Parent = TabMainFrame
  9015. TabConfig.AnchorPoint = Vector2.new(0.5, 0.5)
  9016. TabConfig.BackgroundTransparency = 1.000
  9017. TabConfig.BorderColor3 = Color3.fromRGB(0, 0, 0)
  9018. TabConfig.BorderSizePixel = 0
  9019. TabConfig.Position = UDim2.new(0.5, 0, 0.5, 0)
  9020. TabConfig.Size = UDim2.new(1, 0, 1, 0)
  9021. TabConfig.ZIndex = 6
  9022.  
  9023. ConfigList.Name = MarcoUI:_RandomString()
  9024. ConfigList.Parent = TabConfig
  9025. ConfigList.AnchorPoint = Vector2.new(0.5, 0)
  9026. ConfigList.BackgroundColor3 = MarcoUI.Colors.BlockColor
  9027.  
  9028. table.insert(MarcoUI.Elements.BlockColor , {
  9029. Element = ConfigList,
  9030. Property = "BackgroundColor3"
  9031. });
  9032.  
  9033. ConfigList.BorderColor3 = Color3.fromRGB(0, 0, 0)
  9034. ConfigList.BorderSizePixel = 0
  9035. ConfigList.Position = UDim2.new(0.5, 0, 0, 5)
  9036. ConfigList.Size = UDim2.new(1, -10, 1, -110)
  9037. ConfigList.ZIndex = 9
  9038.  
  9039. UICorner.CornerRadius = UDim.new(0, 6)
  9040. UICorner.Parent = ConfigList
  9041.  
  9042. UIStroke.Color = MarcoUI.Colors.StrokeColor
  9043. UIStroke.Parent = ConfigList
  9044.  
  9045. table.insert(MarcoUI.Elements.StrokeColor,{
  9046. Element = UIStroke,
  9047. Property = "Color"
  9048. });
  9049.  
  9050. Header.Name = MarcoUI:_RandomString()
  9051. Header.Parent = ConfigList
  9052. Header.BackgroundTransparency = 1.000
  9053. Header.BorderColor3 = Color3.fromRGB(0, 0, 0)
  9054. Header.BorderSizePixel = 0
  9055. Header.Size = UDim2.new(1, 0, 0, 35)
  9056. Header.ZIndex = 9
  9057.  
  9058. SectionText.Name = MarcoUI:_RandomString()
  9059. SectionText.Parent = Header
  9060. SectionText.AnchorPoint = Vector2.new(0, 0.5)
  9061. SectionText.BackgroundTransparency = 1.000
  9062. SectionText.BorderColor3 = Color3.fromRGB(0, 0, 0)
  9063. SectionText.BorderSizePixel = 0
  9064. SectionText.Position = UDim2.new(0, 12, 0.5, 0)
  9065. SectionText.Size = UDim2.new(0, 200, 0, 25)
  9066. SectionText.ZIndex = 10
  9067. SectionText.Font = Enum.Font.GothamMedium
  9068. SectionText.Text = "Config List"
  9069. SectionText.TextColor3 = MarcoUI.Colors.SwitchColor
  9070. SectionText.TextSize = 14.000
  9071. SectionText.TextTransparency = 0.500
  9072. SectionText.TextXAlignment = Enum.TextXAlignment.Left
  9073.  
  9074. table.insert(MarcoUI.Elements.SwitchColor , {
  9075. Element = SectionText,
  9076. Property = 'TextColor3'
  9077. });
  9078.  
  9079. SectionClose.Name = MarcoUI:_RandomString()
  9080. SectionClose.Parent = Header
  9081. SectionClose.AnchorPoint = Vector2.new(1, 0.5)
  9082. SectionClose.BackgroundTransparency = 1.000
  9083. SectionClose.BorderColor3 = Color3.fromRGB(0, 0, 0)
  9084. SectionClose.BorderSizePixel = 0
  9085. SectionClose.Position = UDim2.new(1, -12, 0.5, 0)
  9086. SectionClose.Size = UDim2.new(0, 17, 0, 17)
  9087. SectionClose.ZIndex = 10
  9088. SectionClose.Image = MarcoUI:CacheImage("rbxassetid://109535175596957")
  9089. SectionClose.ImageTransparency = 0.500
  9090.  
  9091.  
  9092. ScrollingFrame.Parent = ConfigList
  9093. ScrollingFrame.Active = true
  9094. ScrollingFrame.AnchorPoint = Vector2.new(0.5, 0)
  9095. ScrollingFrame.BackgroundTransparency = 1.000
  9096. ScrollingFrame.BorderColor3 = Color3.fromRGB(0, 0, 0)
  9097. ScrollingFrame.BorderSizePixel = 0
  9098. ScrollingFrame.Position = UDim2.new(0.5, 0, 0, 35)
  9099. ScrollingFrame.Size = UDim2.new(1, -10, 1, -45)
  9100. ScrollingFrame.ZIndex = 12
  9101. ScrollingFrame.ScrollBarThickness = 0
  9102.  
  9103. UIListLayout.Parent = ScrollingFrame
  9104. UIListLayout.HorizontalAlignment = Enum.HorizontalAlignment.Center
  9105. UIListLayout.SortOrder = Enum.SortOrder.LayoutOrder
  9106. UIListLayout.Padding = UDim.new(0, 7)
  9107.  
  9108. Space.Name = MarcoUI:_RandomString()
  9109. Space.Parent = ScrollingFrame
  9110. Space.BackgroundTransparency = 1.000
  9111. Space.BorderColor3 = Color3.fromRGB(0, 0, 0)
  9112. Space.BorderSizePixel = 0
  9113.  
  9114. AddConfig.Name = MarcoUI:_RandomString()
  9115. AddConfig.Parent = TabConfig
  9116. AddConfig.AnchorPoint = Vector2.new(0.5, 1)
  9117. AddConfig.BackgroundColor3 = MarcoUI.Colors.BlockColor
  9118.  
  9119. table.insert(MarcoUI.Elements.BlockColor , {
  9120. Element = AddConfig,
  9121. Property = "BackgroundColor3"
  9122. });
  9123.  
  9124. AddConfig.BorderColor3 = Color3.fromRGB(0, 0, 0)
  9125. AddConfig.BorderSizePixel = 0
  9126. AddConfig.Position = UDim2.new(0.5, 0, 1, -5)
  9127. AddConfig.Size = UDim2.new(1, -10, 0, 95)
  9128. AddConfig.ZIndex = 9
  9129.  
  9130. UICorner_2.CornerRadius = UDim.new(0, 6)
  9131. UICorner_2.Parent = AddConfig
  9132.  
  9133. UIStroke_2.Color = MarcoUI.Colors.StrokeColor
  9134. UIStroke_2.Parent = AddConfig
  9135.  
  9136. table.insert(MarcoUI.Elements.StrokeColor,{
  9137. Element = UIStroke_2,
  9138. Property = "Color"
  9139. });
  9140.  
  9141. Header_2.Name = MarcoUI:_RandomString()
  9142. Header_2.Parent = AddConfig
  9143. Header_2.BackgroundTransparency = 1.000
  9144. Header_2.BorderColor3 = Color3.fromRGB(0, 0, 0)
  9145. Header_2.BorderSizePixel = 0
  9146. Header_2.Size = UDim2.new(1, 0, 0, 35)
  9147. Header_2.ZIndex = 9
  9148.  
  9149. SectionText_2.Name = MarcoUI:_RandomString()
  9150. SectionText_2.Parent = Header_2
  9151. SectionText_2.AnchorPoint = Vector2.new(0, 0.5)
  9152. SectionText_2.BackgroundTransparency = 1.000
  9153. SectionText_2.BorderColor3 = Color3.fromRGB(0, 0, 0)
  9154. SectionText_2.BorderSizePixel = 0
  9155. SectionText_2.Position = UDim2.new(0, 12, 0.5, 0)
  9156. SectionText_2.Size = UDim2.new(0, 200, 0, 25)
  9157. SectionText_2.ZIndex = 10
  9158. SectionText_2.Font = Enum.Font.GothamMedium
  9159. SectionText_2.Text = "Add Config"
  9160. SectionText_2.TextColor3 = MarcoUI.Colors.SwitchColor
  9161. SectionText_2.TextSize = 14.000
  9162. SectionText_2.TextTransparency = 0.500
  9163. SectionText_2.TextXAlignment = Enum.TextXAlignment.Left
  9164.  
  9165. table.insert(MarcoUI.Elements.SwitchColor , {
  9166. Element = SectionText_2,
  9167. Property = 'TextColor3'
  9168. });
  9169.  
  9170. SectionClose_2.Name = MarcoUI:_RandomString()
  9171. SectionClose_2.Parent = Header_2
  9172. SectionClose_2.AnchorPoint = Vector2.new(1, 0.5)
  9173. SectionClose_2.BackgroundTransparency = 1.000
  9174. SectionClose_2.BorderColor3 = Color3.fromRGB(0, 0, 0)
  9175. SectionClose_2.BorderSizePixel = 0
  9176. SectionClose_2.Position = UDim2.new(1, -12, 0.5, 0)
  9177. SectionClose_2.Size = UDim2.new(0, 17, 0, 17)
  9178. SectionClose_2.ZIndex = 10
  9179. SectionClose_2.Image = MarcoUI:CacheImage("rbxassetid://109535175596957")
  9180. SectionClose_2.ImageTransparency = 0.500
  9181.  
  9182. Frame.Parent = AddConfig
  9183. Frame.AnchorPoint = Vector2.new(0.5, 0)
  9184. Frame.BackgroundColor3 = MarcoUI.Colors.BlockColor
  9185.  
  9186. table.insert(MarcoUI.Elements.BlockColor , {
  9187. Element = Frame,
  9188. Property = "BackgroundColor3"
  9189. });
  9190.  
  9191. Frame.BorderColor3 = Color3.fromRGB(0, 0, 0)
  9192. Frame.BorderSizePixel = 0
  9193. Frame.Position = UDim2.new(0.5, 0, 0, 35)
  9194. Frame.Size = UDim2.new(1, -20, 0, 20)
  9195. Frame.ZIndex = 15
  9196.  
  9197. UIStroke_3.Color = MarcoUI.Colors.StrokeColor
  9198. UIStroke_3.Parent = Frame
  9199.  
  9200. table.insert(MarcoUI.Elements.StrokeColor,{
  9201. Element = UIStroke_3,
  9202. Property = "Color"
  9203. });
  9204.  
  9205. UICorner_3.CornerRadius = UDim.new(0, 4)
  9206. UICorner_3.Parent = Frame
  9207.  
  9208. TextBox.Parent = Frame
  9209. TextBox.AnchorPoint = Vector2.new(0.5, 0.5)
  9210. TextBox.BackgroundTransparency = 1.000
  9211. TextBox.BorderColor3 = Color3.fromRGB(0, 0, 0)
  9212. TextBox.BorderSizePixel = 0
  9213. TextBox.Position = UDim2.new(0.5, 0, 0.5, 0)
  9214. TextBox.Size = UDim2.new(1, -15, 1, -2)
  9215. TextBox.ZIndex = 15
  9216. TextBox.ClearTextOnFocus = false
  9217. TextBox.Font = Enum.Font.GothamMedium
  9218. TextBox.PlaceholderColor3 = Color3.fromRGB(150, 150, 150)
  9219. TextBox.PlaceholderText = "Config Name..."
  9220. TextBox.Text = ""
  9221. TextBox.TextColor3 = MarcoUI.Colors.SwitchColor
  9222. TextBox.TextSize = 12.000
  9223. TextBox.TextXAlignment = Enum.TextXAlignment.Left
  9224.  
  9225. table.insert(MarcoUI.Elements.SwitchColor , {
  9226. Element = TextBox,
  9227. Property = 'TextColor3'
  9228. });
  9229.  
  9230. Button.Name = MarcoUI:_RandomString()
  9231. Button.Parent = AddConfig
  9232. Button.AnchorPoint = Vector2.new(0.5, 1)
  9233. Button.BackgroundColor3 = MarcoUI.Colors.SwitchColor
  9234. Button.BackgroundTransparency = 1.000
  9235. Button.BorderColor3 = Color3.fromRGB(0, 0, 0)
  9236. Button.BorderSizePixel = 0
  9237. Button.Position = UDim2.new(0.5, 0, 1, -10)
  9238. Button.Size = UDim2.new(1, -7, 0, 25)
  9239. Button.ZIndex = 10
  9240.  
  9241. BlockLine.Name = MarcoUI:_RandomString()
  9242. BlockLine.Parent = AddConfig
  9243. BlockLine.AnchorPoint = Vector2.new(0.5, 1)
  9244. BlockLine.BackgroundColor3 = MarcoUI.Colors.LineColor
  9245. BlockLine.BackgroundTransparency = 0.500
  9246. BlockLine.BorderColor3 = Color3.fromRGB(0, 0, 0)
  9247. BlockLine.BorderSizePixel = 0
  9248. BlockLine.Position = UDim2.new(0.5, 0, 0.5, 12)
  9249. BlockLine.Size = UDim2.new(1, -26, 0, 1)
  9250. BlockLine.ZIndex = 12
  9251.  
  9252. table.insert(MarcoUI.Elements.LineColor,{
  9253. Element = BlockLine,
  9254. Property = "BackgroundColor3"
  9255. });
  9256.  
  9257. Frame_2.Parent = Button
  9258. Frame_2.AnchorPoint = Vector2.new(0.5, 0.5)
  9259. Frame_2.BackgroundColor3 = MarcoUI.Colors.Highlight
  9260. Frame_2.BackgroundTransparency = 0.100
  9261. Frame_2.BorderColor3 = Color3.fromRGB(0, 0, 0)
  9262. Frame_2.BorderSizePixel = 0
  9263. Frame_2.Position = UDim2.new(0.5, 0, 0.5, 0)
  9264. Frame_2.Size = UDim2.new(1, -15, 1, -5)
  9265. Frame_2.ZIndex = 9
  9266.  
  9267. table.insert(MarcoUI.Elements.Highlight,{
  9268. Element = Frame_2,
  9269. Property = "BackgroundColor3"
  9270. });
  9271.  
  9272. UIStroke_4.Color = MarcoUI.Colors.StrokeColor
  9273. UIStroke_4.Parent = Frame_2
  9274.  
  9275. table.insert(MarcoUI.Elements.StrokeColor,{
  9276. Element = UIStroke_4,
  9277. Property = "Color"
  9278. });
  9279.  
  9280. UICorner_4.CornerRadius = UDim.new(0, 3)
  9281. UICorner_4.Parent = Frame_2
  9282.  
  9283. TextLabel.Parent = Frame_2
  9284. TextLabel.AnchorPoint = Vector2.new(0.5, 0.5)
  9285. TextLabel.BackgroundTransparency = 1.000
  9286. TextLabel.BorderColor3 = Color3.fromRGB(0, 0, 0)
  9287. TextLabel.BorderSizePixel = 0
  9288. TextLabel.Position = UDim2.new(0.5, 0, 0.5, 0)
  9289. TextLabel.Size = UDim2.new(1, 0, 1, 0)
  9290. TextLabel.ZIndex = 10
  9291. TextLabel.Font = Enum.Font.GothamMedium
  9292. TextLabel.Text = "Add Config"
  9293. TextLabel.TextColor3 = MarcoUI.Colors.SwitchColor
  9294. TextLabel.TextSize = 12.000
  9295. TextLabel.TextStrokeTransparency = 0.900
  9296.  
  9297. table.insert(MarcoUI.Elements.SwitchColor , {
  9298. Element = TextLabel,
  9299. Property = 'TextColor3'
  9300. });
  9301.  
  9302. local Tween = TweenInfo.new(0.35,Enum.EasingStyle.Quint);
  9303.  
  9304. Highlight:GetPropertyChangedSignal('BackgroundTransparency'):Connect(function()
  9305. if Highlight.BackgroundTransparency <= 0.99 then
  9306. TabConfig.Visible = true;
  9307. else
  9308. TabConfig.Visible = false;
  9309. end;
  9310.  
  9311. if MarcoUI.PerformanceMode then
  9312. if TabConfig.Visible then
  9313. MarcoUI:_SetNilP(TabConfig , TabMainFrame);
  9314. else
  9315. MarcoUI:_SetNilP(TabConfig , nil);
  9316. end;
  9317. else
  9318. MarcoUI:_SetNilP(TabConfig , TabMainFrame);
  9319. end;
  9320.  
  9321. end)
  9322.  
  9323. local TabOpen = function(bool)
  9324. if bool then
  9325.  
  9326. WindowArgs.SelectedTab = TabButton;
  9327.  
  9328. MarcoUI:_Animation(Icon,Tween,{
  9329. ImageTransparency = 0,
  9330. });
  9331.  
  9332. MarcoUI:_Animation(TabNameLabel,Tween,{
  9333. TextTransparency = 0
  9334. });
  9335.  
  9336. MarcoUI:_Animation(Highlight,Tween,{
  9337. BackgroundTransparency = 0.925
  9338. });
  9339.  
  9340. --
  9341.  
  9342. MarcoUI:_Animation(ConfigList,Tween,{
  9343. BackgroundTransparency = 0,
  9344. });
  9345.  
  9346. MarcoUI:_Animation(AddConfig,Tween,{
  9347. BackgroundTransparency = 0,
  9348. });
  9349.  
  9350. MarcoUI:_Animation(UIStroke_4,Tween,{
  9351. Transparency = 0,
  9352. });
  9353.  
  9354. MarcoUI:_Animation(UIStroke_3,Tween,{
  9355. Transparency = 0,
  9356. });
  9357.  
  9358. MarcoUI:_Animation(UIStroke_2,Tween,{
  9359. Transparency = 0,
  9360. });
  9361.  
  9362. MarcoUI:_Animation(UIStroke,Tween,{
  9363. Transparency = 0,
  9364. });
  9365.  
  9366. MarcoUI:_Animation(SectionText,Tween,{
  9367. TextTransparency = 0.5
  9368. });
  9369.  
  9370. MarcoUI:_Animation(TextLabel,Tween,{
  9371. TextTransparency = 0,
  9372. TextStrokeTransparency = 0.9
  9373. });
  9374.  
  9375. MarcoUI:_Animation(Frame_2,Tween,{
  9376. BackgroundTransparency = 0.1,
  9377. });
  9378.  
  9379. MarcoUI:_Animation(BlockLine,Tween,{
  9380. BackgroundTransparency = 0.5,
  9381. });
  9382.  
  9383. MarcoUI:_Animation(Frame,Tween,{
  9384. BackgroundTransparency = 0,
  9385. });
  9386.  
  9387. MarcoUI:_Animation(SectionText_2,Tween,{
  9388. TextTransparency = 0.5
  9389. });
  9390.  
  9391. MarcoUI:_Animation(TextBox,Tween,{
  9392. TextTransparency = 0
  9393. });
  9394.  
  9395. MarcoUI:_Animation(SectionClose,Tween,{
  9396. ImageTransparency = 0.5,
  9397. });
  9398.  
  9399. MarcoUI:_Animation(SectionClose_2,Tween,{
  9400. ImageTransparency = 0.5,
  9401. });
  9402. else
  9403.  
  9404. MarcoUI:_Animation(Icon,Tween,{
  9405. ImageTransparency = 0.5
  9406. });
  9407.  
  9408. MarcoUI:_Animation(TabNameLabel,Tween,{
  9409. TextTransparency = 0.5
  9410. });
  9411.  
  9412. MarcoUI:_Animation(Highlight,Tween,{
  9413. BackgroundTransparency = 1
  9414. });
  9415.  
  9416. MarcoUI:_Animation(ConfigList,Tween,{
  9417. BackgroundTransparency = 1,
  9418. });
  9419.  
  9420. MarcoUI:_Animation(AddConfig,Tween,{
  9421. BackgroundTransparency = 1,
  9422. });
  9423.  
  9424. MarcoUI:_Animation(UIStroke_4,Tween,{
  9425. Transparency = 1,
  9426. });
  9427.  
  9428. MarcoUI:_Animation(UIStroke_3,Tween,{
  9429. Transparency = 1,
  9430. });
  9431.  
  9432. MarcoUI:_Animation(UIStroke_2,Tween,{
  9433. Transparency = 1,
  9434. });
  9435.  
  9436. MarcoUI:_Animation(UIStroke,Tween,{
  9437. Transparency = 1,
  9438. });
  9439.  
  9440. MarcoUI:_Animation(SectionText,Tween,{
  9441. TextTransparency = 1
  9442. });
  9443.  
  9444. MarcoUI:_Animation(TextLabel,Tween,{
  9445. TextTransparency = 1,
  9446. TextStrokeTransparency = 1
  9447. });
  9448.  
  9449. MarcoUI:_Animation(Frame_2,Tween,{
  9450. BackgroundTransparency = 1,
  9451. });
  9452.  
  9453. MarcoUI:_Animation(BlockLine,Tween,{
  9454. BackgroundTransparency = 1,
  9455. });
  9456.  
  9457. MarcoUI:_Animation(Frame,Tween,{
  9458. BackgroundTransparency = 1,
  9459. });
  9460.  
  9461. MarcoUI:_Animation(SectionText_2,Tween,{
  9462. TextTransparency = 1
  9463. });
  9464.  
  9465. MarcoUI:_Animation(TextBox,Tween,{
  9466. TextTransparency = 1
  9467. });
  9468.  
  9469. MarcoUI:_Animation(SectionClose,Tween,{
  9470. ImageTransparency = 1,
  9471. });
  9472.  
  9473. MarcoUI:_Animation(SectionClose_2,Tween,{
  9474. ImageTransparency = 1,
  9475. });
  9476. end;
  9477. end;
  9478.  
  9479. if not WindowArgs.Tabs[1] then
  9480. TabOpenSignal:Fire(true);
  9481. TabOpen(true);
  9482. else
  9483. TabOpen(false);
  9484. end;
  9485.  
  9486. table.insert(WindowArgs.Tabs , {
  9487. Root = TabButton,
  9488. Remote = TabOpenSignal
  9489. });
  9490.  
  9491. MarcoUI:_Hover(TabButton,function()
  9492. if WindowArgs.SelectedTab ~= TabButton then
  9493. MarcoUI:_Animation(Icon,Tween,{
  9494. ImageTransparency = 0.1
  9495. });
  9496.  
  9497. MarcoUI:_Animation(TabNameLabel,Tween,{
  9498. TextTransparency = 0.1
  9499. });
  9500. end;
  9501. end , function()
  9502. if WindowArgs.SelectedTab ~= TabButton then
  9503. MarcoUI:_Animation(Icon,Tween,{
  9504. ImageTransparency = 0.5
  9505. });
  9506.  
  9507. MarcoUI:_Animation(TabNameLabel,Tween,{
  9508. TextTransparency = 0.5
  9509. });
  9510. end;
  9511. end)
  9512.  
  9513. TabOpenSignal:Connect(TabOpen);
  9514.  
  9515. TabHover:Connect(function(bool)
  9516. if bool then
  9517. MarcoUI:_Animation(TabButton,Tween,{
  9518. Size = UDim2.new(1, -10, 0, 32)
  9519. });
  9520.  
  9521. MarcoUI:_Animation(Icon,Tween,{
  9522. Size = UDim2.new(0, 16, 0, 16),
  9523. });
  9524.  
  9525. MarcoUI:_Animation(TabNameLabel,Tween,{
  9526. Size = UDim2.new(0, 200, 0, 25),
  9527. Position = UDim2.new(0, 43, 0.5, 0)
  9528. });
  9529.  
  9530. MarcoUI:_Animation(UICorner,Tween,{
  9531. CornerRadius = UDim.new(0, 4)
  9532. });
  9533.  
  9534. MarcoUI:_Animation(Highlight,Tween,{
  9535. Size = UDim2.new(1, -17, 1, 0),
  9536. Position = UDim2.new(0.5, 0, 0.5, 0)
  9537. });
  9538. else
  9539. MarcoUI:_Animation(UICorner,Tween,{
  9540. CornerRadius = UDim.new(0, 10)
  9541. });
  9542.  
  9543. MarcoUI:_Animation(TabButton,Tween,{
  9544. Size = UDim2.new(1, -10, 0, 32)
  9545. });
  9546.  
  9547. MarcoUI:_Animation(Icon,Tween,{
  9548. Size = UDim2.new(0, 16, 0, 16),
  9549. });
  9550.  
  9551. MarcoUI:_Animation(TabNameLabel,Tween,{
  9552. Size = UDim2.new(0, 200, 0, 25),
  9553. Position = UDim2.new(0, 80, 0.5, 0)
  9554. });
  9555.  
  9556. MarcoUI:_Animation(Highlight,Tween,{
  9557. Size = UDim2.new(1, -10,1, 5),
  9558. Position = UDim2.new(0.5, 0, 0.5, 0)
  9559. });
  9560. end;
  9561. end);
  9562.  
  9563. MarcoUI:_Input(TabButton,function()
  9564. for i,v in next, WindowArgs.Tabs do
  9565. if v.Root == TabButton then
  9566. v.Remote:Fire(true);
  9567. else
  9568. v.Remote:Fire(false);
  9569. end;
  9570. end;
  9571. end);
  9572.  
  9573. function TabArgs:_DrawConfig()
  9574. local ConfigButton = {};
  9575.  
  9576. local ConfigBlock = Instance.new("Frame")
  9577. local ConfigText = Instance.new("TextLabel")
  9578. local LinkValues = Instance.new("Frame")
  9579. local UIListLayout = Instance.new("UIListLayout")
  9580. local SaveButton = Instance.new("Frame")
  9581. local Frame = Instance.new("Frame")
  9582. local UIStroke = Instance.new("UIStroke")
  9583. local UICorner = Instance.new("UICorner")
  9584. local TextLabel = Instance.new("TextLabel")
  9585. local Icon = Instance.new("ImageLabel")
  9586. local LoadButton = Instance.new("Frame")
  9587. local Frame_2 = Instance.new("Frame")
  9588. local UIStroke_2 = Instance.new("UIStroke")
  9589. local UICorner_2 = Instance.new("UICorner")
  9590. local TextLabel_2 = Instance.new("TextLabel")
  9591. local Icon_2 = Instance.new("ImageLabel")
  9592. local UIStroke_3 = Instance.new("UIStroke")
  9593. local UICorner_3 = Instance.new("UICorner")
  9594. local AuthorText = Instance.new("TextLabel")
  9595. local DelButton = Instance.new("ImageButton")
  9596. local UICorner = Instance.new("UICorner")
  9597. local UIGradient = Instance.new("UIGradient")
  9598.  
  9599. DelButton.Name = MarcoUI:_RandomString()
  9600. DelButton.Parent = LinkValues
  9601. DelButton.BackgroundTransparency = 1.000
  9602. DelButton.BorderColor3 = Color3.fromRGB(0, 0, 0)
  9603. DelButton.BorderSizePixel = 0
  9604. DelButton.LayoutOrder = -9999
  9605. DelButton.Size = UDim2.new(0, 35, 0, 15)
  9606. DelButton.ZIndex = 14
  9607. DelButton.Image = MarcoUI:CacheImage("rbxassetid://10747362393")
  9608. DelButton.ImageColor3 = Color3.fromRGB(255, 107, 107)
  9609. DelButton.ImageTransparency = 0.500
  9610. DelButton.ScaleType = Enum.ScaleType.Fit
  9611.  
  9612. UICorner.CornerRadius = UDim.new(1, 0)
  9613. UICorner.Parent = DelButton
  9614. ConfigBlock.Name = MarcoUI:_RandomString()
  9615. ConfigBlock.Parent = ScrollingFrame
  9616. ConfigBlock.BackgroundColor3 = Color3.fromRGB(33, 34, 40)
  9617. ConfigBlock.BorderColor3 = Color3.fromRGB(0, 0, 0)
  9618. ConfigBlock.BorderSizePixel = 0
  9619. ConfigBlock.BackgroundTransparency = 1
  9620. ConfigBlock.Size = UDim2.new(1, -1, 0, 40)
  9621. ConfigBlock.ZIndex = 10
  9622.  
  9623. if MarcoUI:_IsMobile() then
  9624. MarcoUI:_AddDragBlacklist(ConfigBlock);
  9625. end;
  9626.  
  9627. ConfigText.Name = MarcoUI:_RandomString()
  9628. ConfigText.Parent = ConfigBlock
  9629. ConfigText.AnchorPoint = Vector2.new(0, 0.5)
  9630. ConfigText.BackgroundTransparency = 1.000
  9631. ConfigText.BorderColor3 = Color3.fromRGB(0, 0, 0)
  9632. ConfigText.BorderSizePixel = 0
  9633. ConfigText.Position = UDim2.new(0, 12, 0.5, 15)
  9634. ConfigText.Size = UDim2.new(1, -20, 0, 25)
  9635. ConfigText.ZIndex = 10
  9636. ConfigText.Font = Enum.Font.GothamMedium
  9637. ConfigText.RichText = true;
  9638. ConfigText.Text = "Config"
  9639. ConfigText.TextColor3 = MarcoUI.Colors.SwitchColor
  9640. ConfigText.TextSize = 13.000
  9641. ConfigText.TextTransparency = 1
  9642. ConfigText.TextXAlignment = Enum.TextXAlignment.Left
  9643.  
  9644. table.insert(MarcoUI.Elements.SwitchColor , {
  9645. Element = ConfigText,
  9646. Property = 'TextColor3'
  9647. });
  9648.  
  9649. UIGradient.Transparency = NumberSequence.new{NumberSequenceKeypoint.new(0.00, 0.00), NumberSequenceKeypoint.new(0.29, 0.00), NumberSequenceKeypoint.new(0.33, 1.00), NumberSequenceKeypoint.new(1.00, 1.00)}
  9650. UIGradient.Parent = ConfigText
  9651.  
  9652. LinkValues.Name = MarcoUI:_RandomString()
  9653. LinkValues.Parent = ConfigBlock
  9654. LinkValues.AnchorPoint = Vector2.new(1, 0.540000021)
  9655. LinkValues.BackgroundTransparency = 1.000
  9656. LinkValues.BorderColor3 = Color3.fromRGB(0, 0, 0)
  9657. LinkValues.BorderSizePixel = 0
  9658. LinkValues.Position = UDim2.new(1, -12, 0.5, 15)
  9659. LinkValues.Size = UDim2.new(1, 0, 0, 18)
  9660. LinkValues.ZIndex = 11
  9661.  
  9662. UIListLayout.Parent = LinkValues
  9663. UIListLayout.FillDirection = Enum.FillDirection.Horizontal
  9664. UIListLayout.HorizontalAlignment = Enum.HorizontalAlignment.Right
  9665. UIListLayout.SortOrder = Enum.SortOrder.LayoutOrder
  9666. UIListLayout.VerticalAlignment = Enum.VerticalAlignment.Center
  9667. UIListLayout.Padding = UDim.new(0, -10)
  9668.  
  9669. SaveButton.Name = MarcoUI:_RandomString()
  9670. SaveButton.Parent = LinkValues
  9671. SaveButton.BackgroundTransparency = 1.000
  9672. SaveButton.BorderColor3 = Color3.fromRGB(0, 0, 0)
  9673. SaveButton.BorderSizePixel = 0
  9674. SaveButton.Size = UDim2.new(0, 77, 0, 30)
  9675. SaveButton.ZIndex = 14
  9676.  
  9677. Frame.Parent = SaveButton
  9678. Frame.AnchorPoint = Vector2.new(0.5, 0.5)
  9679. Frame.BackgroundColor3 = MarcoUI.Colors.Highlight
  9680. Frame.BackgroundTransparency = 1
  9681. Frame.BorderColor3 = Color3.fromRGB(0, 0, 0)
  9682. Frame.BorderSizePixel = 0
  9683. Frame.Position = UDim2.new(0.5, 0, 0.5, 0)
  9684. Frame.Size = UDim2.new(1, -15, 1, -5)
  9685. Frame.ZIndex = 14
  9686.  
  9687. table.insert(MarcoUI.Elements.Highlight,{
  9688. Element = Frame,
  9689. Property = "BackgroundColor3"
  9690. });
  9691.  
  9692. UIStroke.Transparency = 1
  9693. UIStroke.Color = MarcoUI.Colors.StrokeColor
  9694. UIStroke.Parent = Frame
  9695.  
  9696. table.insert(MarcoUI.Elements.StrokeColor,{
  9697. Element = UIStroke,
  9698. Property = "Color"
  9699. });
  9700.  
  9701. UICorner.CornerRadius = UDim.new(0, 3)
  9702. UICorner.Parent = Frame
  9703.  
  9704. TextLabel.Parent = Frame
  9705. TextLabel.AnchorPoint = Vector2.new(0.5, 0.5)
  9706. TextLabel.BackgroundTransparency = 1.000
  9707. TextLabel.BorderColor3 = Color3.fromRGB(0, 0, 0)
  9708. TextLabel.BorderSizePixel = 0
  9709. TextLabel.Position = UDim2.new(0.5, 27, 0.5, 0)
  9710. TextLabel.Size = UDim2.new(1, 0, 1, 0)
  9711. TextLabel.ZIndex = 14
  9712. TextLabel.Font = Enum.Font.GothamMedium
  9713. TextLabel.Text = "Save"
  9714. TextLabel.TextColor3 = MarcoUI.Colors.SwitchColor
  9715. TextLabel.TextSize = 12.000
  9716. TextLabel.TextStrokeTransparency = 1
  9717. TextLabel.TextXAlignment = Enum.TextXAlignment.Left
  9718. TextLabel.TextTransparency = 1
  9719.  
  9720. table.insert(MarcoUI.Elements.SwitchColor , {
  9721. Element = TextLabel,
  9722. Property = 'TextColor3'
  9723. });
  9724.  
  9725. Icon.Name = MarcoUI:_RandomString()
  9726. Icon.Parent = Frame
  9727. Icon.AnchorPoint = Vector2.new(0, 0.5)
  9728. Icon.BackgroundTransparency = 1.000
  9729. Icon.BorderColor3 = Color3.fromRGB(0, 0, 0)
  9730. Icon.BorderSizePixel = 0
  9731. Icon.Position = UDim2.new(0, 5, 0.5, 0)
  9732. Icon.Size = UDim2.new(0.699999988, 0, 0.699999988, 0)
  9733. Icon.SizeConstraint = Enum.SizeConstraint.RelativeYY
  9734. Icon.ZIndex = 15
  9735. Icon.Image = MarcoUI:CacheImage("rbxassetid://10734941499")
  9736. Icon.ImageTransparency = 1;
  9737.  
  9738. LoadButton.Name = MarcoUI:_RandomString()
  9739. LoadButton.Parent = LinkValues
  9740. LoadButton.BackgroundTransparency = 1.000
  9741. LoadButton.BorderColor3 = Color3.fromRGB(0, 0, 0)
  9742. LoadButton.BorderSizePixel = 0
  9743. LoadButton.Size = UDim2.new(0, 77, 0, 30)
  9744. LoadButton.ZIndex = 14
  9745.  
  9746. Frame_2.Parent = LoadButton
  9747. Frame_2.AnchorPoint = Vector2.new(0.5, 0.5)
  9748. Frame_2.BackgroundColor3 = MarcoUI.Colors.Highlight
  9749. Frame_2.BackgroundTransparency = 1
  9750. Frame_2.BorderColor3 = Color3.fromRGB(0, 0, 0)
  9751. Frame_2.BorderSizePixel = 0
  9752. Frame_2.Position = UDim2.new(0.5, 0, 0.5, 0)
  9753. Frame_2.Size = UDim2.new(1, -15, 1, -5)
  9754. Frame_2.ZIndex = 14
  9755.  
  9756. table.insert(MarcoUI.Elements.Highlight,{
  9757. Element = Frame_2,
  9758. Property = "BackgroundColor3"
  9759. });
  9760.  
  9761. UIStroke_2.Transparency = 1
  9762. UIStroke_2.Color = MarcoUI.Colors.StrokeColor
  9763. UIStroke_2.Parent = Frame_2
  9764.  
  9765. table.insert(MarcoUI.Elements.StrokeColor,{
  9766. Element = UIStroke_2,
  9767. Property = "Color"
  9768. });
  9769.  
  9770. UICorner_2.CornerRadius = UDim.new(0, 3)
  9771. UICorner_2.Parent = Frame_2
  9772.  
  9773. TextLabel_2.Parent = Frame_2
  9774. TextLabel_2.AnchorPoint = Vector2.new(0.5, 0.5)
  9775. TextLabel_2.BackgroundTransparency = 1.000
  9776. TextLabel_2.BorderColor3 = Color3.fromRGB(0, 0, 0)
  9777. TextLabel_2.BorderSizePixel = 0
  9778. TextLabel_2.Position = UDim2.new(0.5, 27, 0.5, 0)
  9779. TextLabel_2.Size = UDim2.new(1, 0, 1, 0)
  9780. TextLabel_2.ZIndex = 14
  9781. TextLabel_2.Font = Enum.Font.GothamMedium
  9782. TextLabel_2.Text = "Load"
  9783. TextLabel_2.TextColor3 = MarcoUI.Colors.SwitchColor
  9784. TextLabel_2.TextSize = 12.000
  9785. TextLabel_2.TextStrokeTransparency = 1
  9786. TextLabel_2.TextXAlignment = Enum.TextXAlignment.Left
  9787. TextLabel_2.TextTransparency = 1
  9788.  
  9789. table.insert(MarcoUI.Elements.SwitchColor , {
  9790. Element = TextLabel_2,
  9791. Property = 'TextColor3'
  9792. });
  9793.  
  9794. Icon_2.Name = MarcoUI:_RandomString()
  9795. Icon_2.Parent = Frame_2
  9796. Icon_2.AnchorPoint = Vector2.new(0, 0.5)
  9797. Icon_2.BackgroundTransparency = 1.000
  9798. Icon_2.BorderColor3 = Color3.fromRGB(0, 0, 0)
  9799. Icon_2.BorderSizePixel = 0
  9800. Icon_2.Position = UDim2.new(0, 5, 0.5, 0)
  9801. Icon_2.Size = UDim2.new(0.699999988, 0, 0.699999988, 0)
  9802. Icon_2.SizeConstraint = Enum.SizeConstraint.RelativeYY
  9803. Icon_2.ZIndex = 15
  9804. Icon_2.Image = MarcoUI:CacheImage("rbxassetid://10723344270")
  9805. Icon_2.ImageTransparency = 1
  9806. UIStroke_3.Transparency = 1
  9807.  
  9808. UIStroke_3.Color = MarcoUI.Colors.StrokeColor
  9809. UIStroke_3.Parent = ConfigBlock
  9810.  
  9811. table.insert(MarcoUI.Elements.StrokeColor,{
  9812. Element = UIStroke_3,
  9813. Property = "Color"
  9814. });
  9815.  
  9816. UICorner_3.CornerRadius = UDim.new(0, 6)
  9817. UICorner_3.Parent = ConfigBlock
  9818.  
  9819. AuthorText.Name = MarcoUI:_RandomString()
  9820. AuthorText.Parent = ConfigBlock
  9821. AuthorText.AnchorPoint = Vector2.new(0, 0.5)
  9822. AuthorText.BackgroundTransparency = 1.000
  9823. AuthorText.BorderColor3 = Color3.fromRGB(0, 0, 0)
  9824. AuthorText.BorderSizePixel = 0
  9825. AuthorText.Position = UDim2.new(0.5, -65, 0.5, 15)
  9826. AuthorText.Size = UDim2.new(1, -20, 0, 25)
  9827. AuthorText.ZIndex = 10
  9828. AuthorText.Font = Enum.Font.GothamMedium
  9829. AuthorText.RichText = true;
  9830. AuthorText.Text = "Author: <font color=\"rgb(17, 238, 253)\">NoFi</font>"
  9831. AuthorText.TextColor3 = MarcoUI.Colors.SwitchColor
  9832. AuthorText.TextSize = 13.000
  9833. AuthorText.TextTransparency = 1
  9834. AuthorText.TextXAlignment = Enum.TextXAlignment.Left
  9835.  
  9836. table.insert(MarcoUI.Elements.SwitchColor , {
  9837. Element = TabNameLabel,
  9838. Property = 'TextColor3'
  9839. });
  9840.  
  9841. function ConfigButton:SetInfo(Author , ConfigName)
  9842. local R,G,B = tostring(math.floor(MarcoUI.Colors.Highlight.R * 255)) , tostring(math.floor(MarcoUI.Colors.Highlight.G * 255)) , tostring(math.floor(MarcoUI.Colors.Highlight.B * 255));
  9843.  
  9844. AuthorText.Text = string.format("Author: <font color=\"rgb(%s, %s, %s)\">%s</font>" ,R,G,B , tostring(Author));
  9845. ConfigText.Text = ConfigName;
  9846.  
  9847. if ConfigBlock.BackgroundTransparency >= 0.7 then
  9848. ConfigButton:Update();
  9849. end;
  9850. end;
  9851.  
  9852. function ConfigButton:Toggle(v)
  9853. if v then
  9854. MarcoUI:_Animation(ConfigBlock,Tween,{
  9855. BackgroundTransparency = 0
  9856. });
  9857.  
  9858. MarcoUI:_Animation(LinkValues,Tween,{
  9859. Position = UDim2.new(1, -12, 0.5, 0)
  9860. });
  9861.  
  9862. MarcoUI:_Animation(ConfigText,Tween,{
  9863. TextTransparency = 0.3,
  9864. Position = UDim2.new(0, 12, 0.5, 0)
  9865. });
  9866.  
  9867. MarcoUI:_Animation(Frame,Tween,{
  9868. BackgroundTransparency = 0.100
  9869. });
  9870.  
  9871. MarcoUI:_Animation(UIStroke,Tween,{
  9872. Transparency = 0
  9873. });
  9874.  
  9875. MarcoUI:_Animation(AuthorText,Tween,{
  9876. TextTransparency = 0.5,
  9877. Position = UDim2.new(0,AuthorText:GetAttribute('SPC'), 0.5, 0)
  9878. });
  9879.  
  9880. MarcoUI:_Animation(Icon_2,Tween,{
  9881. ImageTransparency = 0
  9882. });
  9883.  
  9884. MarcoUI:_Animation(Icon,Tween,{
  9885. ImageTransparency = 0
  9886. });
  9887.  
  9888. MarcoUI:_Animation(Frame_2,Tween,{
  9889. BackgroundTransparency = 0.100
  9890. });
  9891.  
  9892. MarcoUI:_Animation(UIStroke_2,Tween,{
  9893. Transparency = 0
  9894. });
  9895.  
  9896. MarcoUI:_Animation(TextLabel,Tween,{
  9897. TextStrokeTransparency = 0.900,
  9898. TextTransparency = 0
  9899. });
  9900.  
  9901. MarcoUI:_Animation(TextLabel_2,Tween,{
  9902. TextStrokeTransparency = 0.900,
  9903. TextTransparency = 0
  9904. });
  9905. else
  9906. MarcoUI:_Animation(AuthorText,Tween,{
  9907. TextTransparency = 1,
  9908. Position = UDim2.new(0.5, -65, 0.5, 15)
  9909. });
  9910.  
  9911. MarcoUI:_Animation(Icon_2,Tween,{
  9912. ImageTransparency = 1
  9913. });
  9914.  
  9915. MarcoUI:_Animation(Icon,Tween,{
  9916. ImageTransparency = 1
  9917. });
  9918.  
  9919. MarcoUI:_Animation(LinkValues,Tween,{
  9920. Position = UDim2.new(1, -12, 0.5, 15)
  9921. });
  9922.  
  9923. MarcoUI:_Animation(ConfigBlock,Tween,{
  9924. BackgroundTransparency = 1
  9925. });
  9926.  
  9927. MarcoUI:_Animation(ConfigText,Tween,{
  9928. TextTransparency = 1,
  9929. Position = UDim2.new(0, 12, 0.5, 15)
  9930. });
  9931.  
  9932. MarcoUI:_Animation(Frame,Tween,{
  9933. BackgroundTransparency = 1
  9934. });
  9935.  
  9936. MarcoUI:_Animation(UIStroke,Tween,{
  9937. Transparency = 1
  9938. });
  9939.  
  9940. MarcoUI:_Animation(Frame_2,Tween,{
  9941. BackgroundTransparency = 1
  9942. });
  9943.  
  9944. MarcoUI:_Animation(UIStroke_2,Tween,{
  9945. Transparency = 1
  9946. });
  9947.  
  9948. MarcoUI:_Animation(TextLabel,Tween,{
  9949. TextStrokeTransparency = 1,
  9950. TextTransparency = 1
  9951. });
  9952.  
  9953. MarcoUI:_Animation(TextLabel_2,Tween,{
  9954. TextStrokeTransparency = 1,
  9955. TextTransparency = 1
  9956. });
  9957. end;
  9958. end;
  9959.  
  9960. function ConfigButton:Update()
  9961. local nameScale = TextService:GetTextSize(ConfigText.Text,ConfigText.TextSize,ConfigText.Font,Vector2.new(math.huge,math.huge));
  9962.  
  9963. AuthorText:SetAttribute('SPC',math.clamp(nameScale.X + 20 , 100,150));
  9964.  
  9965. AuthorText.Position = UDim2.new(0, AuthorText:GetAttribute('SPC'), 0.5, 15)
  9966. end;
  9967.  
  9968. ConfigButton:Update();
  9969.  
  9970. MarcoUI:_Input(LoadButton,function()
  9971. task.spawn(ConfigButton.OnLoad);
  9972. end);
  9973.  
  9974. MarcoUI:_Input(SaveButton,function()
  9975. task.spawn(ConfigButton.OnSave);
  9976. end);
  9977.  
  9978. DelButton.MouseButton1Click:Connect(function()
  9979. task.spawn(ConfigButton.OnDelete);
  9980. end)
  9981.  
  9982. ConfigButton.OnLoad = nil;
  9983. ConfigButton.OnSave = nil;
  9984. ConfigButton.OnDelete = nil;
  9985.  
  9986. return ConfigButton;
  9987. end;
  9988.  
  9989. function TabArgs:Init()
  9990. local __signals = {};
  9991. local Init = {};
  9992.  
  9993. MarcoUI:_Input(Button,function()
  9994. if TextBox.Text:byte() then
  9995. WindowArgs.Notify.new({
  9996. Title = "Configs",
  9997. Icon = MarcoUI:_GetIcon(Config.Logo),
  9998. Content = "Create config \""..TextBox.Text.."\""
  9999. })
  10000.  
  10001. Configuration.Config:WriteConfig({
  10002. Name = TextBox.Text,
  10003. Author = WindowArgs.Username,
  10004. });
  10005. end;
  10006. end);
  10007.  
  10008. local Refresh = function()
  10009. local FullConfig = Configuration.Config:GetFullConfigs();
  10010.  
  10011. for i,v in next, ScrollingFrame:GetChildren() do
  10012. if v:IsA('Frame') and v.Name ~= "Space" then
  10013. v:Destroy();
  10014. end;
  10015. end;
  10016.  
  10017. for i,v in next , __signals do
  10018. v:Disconnect();
  10019. end;
  10020.  
  10021. for i,v in next , FullConfig do
  10022. local Button = TabArgs:_DrawConfig();
  10023.  
  10024. Button:SetInfo(v.Info.Author,v.Name);
  10025.  
  10026. table.insert(__signals,TabOpenSignal:Connect(function(v)
  10027. Button:Toggle(v);
  10028. end));
  10029.  
  10030. Button.OnLoad = function()
  10031. WindowArgs.Notify.new({
  10032. Title = "Configs",
  10033. Icon = MarcoUI:CacheImage(Config.Logo),
  10034. Content = "Load config \""..v.Name.."\""
  10035. })
  10036.  
  10037. Configuration.Config:LoadConfig(v.Name);
  10038. end;
  10039.  
  10040. Button.OnSave = function()
  10041. WindowArgs.Notify.new({
  10042. Title = "Configs",
  10043. Icon = MarcoUI:CacheImage(Config.Logo),
  10044. Content = "Save config \""..v.Name.."\""
  10045. })
  10046.  
  10047. Button:SetInfo(v.Info.Author,v.Name);
  10048.  
  10049. Configuration.Config:WriteConfig({
  10050. Name = v.Name,
  10051. Author = v.Info.Author;
  10052. });
  10053. end
  10054.  
  10055. Button.OnDelete = function()
  10056. WindowArgs.Notify.new({
  10057. Title = "Configs",
  10058. Icon = MarcoUI:CacheImage(Config.Logo),
  10059. Content = "Delete config \""..v.Name.."\""
  10060. })
  10061.  
  10062. Configuration.Config:DeleteConfig(v.Name)
  10063. end
  10064. end;
  10065. end;
  10066.  
  10067. Refresh();
  10068.  
  10069. Init.THREAD = task.spawn(function()
  10070. local OldIndex = Configuration.Config:GetConfigCount();
  10071.  
  10072. while true do task.wait(0.125);
  10073. local CountInDirectory = Configuration.Config:GetConfigCount();
  10074.  
  10075. if OldIndex ~= CountInDirectory then
  10076. OldIndex = CountInDirectory;
  10077.  
  10078. Refresh();
  10079. end;
  10080. end;
  10081. end);
  10082.  
  10083. return Init;
  10084. end;
  10085.  
  10086. return TabArgs;
  10087. end;
  10088.  
  10089. function WindowArgs:DrawTab(TabConfig : TabConfig , Internal)
  10090. TabConfig = MarcoUI.__CONFIG(TabConfig,{
  10091. Name = "Tab",
  10092. Icon = "eye",
  10093. Type = "Double"
  10094. });
  10095.  
  10096. local TabOpenSignal = MarcoUI.__SIGNAL(false);
  10097. local TabArgs = {};
  10098. local Upvalue = {};
  10099. local BASE_PADDING = 12; -- Increased for better spacing
  10100.  
  10101. if Internal then
  10102.  
  10103. local TabContent = Instance.new("Frame")
  10104. local Left = Instance.new("ScrollingFrame")
  10105. local UIListLayout = Instance.new("UIListLayout")
  10106. local Right = Instance.new("ScrollingFrame")
  10107. local UIListLayout_2 = Instance.new("UIListLayout")
  10108.  
  10109. TabContent.Name = MarcoUI:_RandomString()
  10110. TabContent.Parent = Internal.Parent;
  10111. TabContent.AnchorPoint = Vector2.new(0.5, 0.5)
  10112. TabContent.BackgroundTransparency = 1.000
  10113. TabContent.BorderColor3 = Color3.fromRGB(0, 0, 0)
  10114. TabContent.BorderSizePixel = 0
  10115. TabContent.Position = UDim2.new(0.5, 0, 0.5, 0)
  10116. TabContent.Size = UDim2.new(1, -5,1, -5)
  10117. TabContent.ZIndex = 6
  10118. TabContent.Visible = true
  10119.  
  10120. Left.Name = MarcoUI:_RandomString()
  10121. Left.Parent = TabContent
  10122. Left.Active = true
  10123. Left.AnchorPoint = Vector2.new(0.5, 0.5)
  10124. Left.BackgroundTransparency = 1.000
  10125. Left.BorderColor3 = Color3.fromRGB(0, 0, 0)
  10126. Left.BorderSizePixel = 0
  10127. Left.ClipsDescendants = false
  10128. Left.Position = UDim2.new(0.25, -3, 0.5, 0)
  10129. Left.Size = UDim2.new(0.5, -3, 1, 0)
  10130. Left.ZIndex = 8
  10131. Left.Visible = true
  10132. Left.BottomImage = ""
  10133. Left.ScrollBarThickness = 0
  10134. Left.TopImage = ""
  10135. Left.AutomaticCanvasSize = Enum.AutomaticSize.Y;
  10136. Left.CanvasSize = UDim2.new(0, 0, 0, 0)
  10137.  
  10138. UIListLayout.Parent = Left
  10139. UIListLayout.HorizontalAlignment = Enum.HorizontalAlignment.Center
  10140. UIListLayout.SortOrder = Enum.SortOrder.LayoutOrder
  10141. UIListLayout.VerticalFlex = Enum.UIFlexAlignment.None
  10142. UIListLayout.Padding = UDim.new(0, BASE_PADDING)
  10143.  
  10144. Right.Name = MarcoUI:_RandomString()
  10145. Right.Parent = TabContent
  10146. Right.Active = true
  10147. Right.AnchorPoint = Vector2.new(0.5, 0.5)
  10148. Right.BackgroundTransparency = 1.000
  10149. Right.BorderColor3 = Color3.fromRGB(0, 0, 0)
  10150. Right.BorderSizePixel = 0
  10151. Right.ClipsDescendants = false
  10152. Right.Position = UDim2.new(0.75, 3, 0.5, 0)
  10153. Right.Size = UDim2.new(0.5, -3, 1, 0)
  10154. Right.ZIndex = 8
  10155. Right.Visible = true
  10156. Right.BottomImage = ""
  10157. Right.AutomaticCanvasSize = Enum.AutomaticSize.Y;
  10158. Right.CanvasSize = UDim2.new(0, 0, 0, 0)
  10159. Right.ScrollBarThickness = 0
  10160. Right.TopImage = ""
  10161.  
  10162. Upvalue.Left = Left;
  10163. Upvalue.Right = Right;
  10164. Upvalue.LeftLayout = UIListLayout;
  10165. Upvalue.RightLayout = UIListLayout_2;
  10166.  
  10167. UIListLayout_2.Parent = Right
  10168. UIListLayout_2.HorizontalAlignment = Enum.HorizontalAlignment.Center
  10169. UIListLayout_2.SortOrder = Enum.SortOrder.LayoutOrder
  10170. UIListLayout_2.Padding = UDim.new(0, BASE_PADDING)
  10171. UIListLayout_2.VerticalFlex = Enum.UIFlexAlignment.None
  10172.  
  10173. WindowArgs:AddUnbind(UIListLayout_2 , Right);
  10174. WindowArgs:AddUnbind(UIListLayout , Left);
  10175.  
  10176. if TabConfig.Type == "Single" then
  10177. Right.Visible = false;
  10178. Left.Position = UDim2.new(0.5, 0, 0.5, 0)
  10179. Left.Size = UDim2.new(1,0,1,0)
  10180. end;
  10181.  
  10182. local Tween = TweenInfo.new(0.35,Enum.EasingStyle.Quint);
  10183.  
  10184. local function updateTabContentVisibility()
  10185. if Internal.Highlight.BackgroundTransparency <= 0.99 then
  10186. TabContent.Visible = true;
  10187. else
  10188. TabContent.Visible = false;
  10189. end;
  10190.  
  10191. if MarcoUI.PerformanceMode then
  10192. if TabContent.Visible then
  10193. MarcoUI:_SetNilP(TabContent , Internal.Parent);
  10194. else
  10195. MarcoUI:_SetNilP(TabContent , nil);
  10196. end;
  10197. else
  10198. MarcoUI:_SetNilP(TabContent , Internal.Parent);
  10199. end;
  10200. end;
  10201.  
  10202. Internal.Highlight:GetPropertyChangedSignal('BackgroundTransparency'):Connect(updateTabContentVisibility);
  10203.  
  10204. -- Also listen to the signal directly for immediate updates
  10205. Internal.Signal:Connect(function(isOpen)
  10206. if isOpen then
  10207. -- Small delay to ensure highlight animation has started
  10208. task.wait(0.05);
  10209. updateTabContentVisibility();
  10210. else
  10211. updateTabContentVisibility();
  10212. end;
  10213. end);
  10214.  
  10215. Upvalue.Left = Left;
  10216. Upvalue.Right = Right;
  10217.  
  10218. if MarcoUI:_IsMobile() then
  10219. MarcoUI:_AddDragBlacklist(Left);
  10220. MarcoUI:_AddDragBlacklist(Right);
  10221. end;
  10222.  
  10223. TabOpenSignal = Internal.Signal;
  10224.  
  10225. -- Initialize visibility based on highlight state
  10226. local function updateVisibility()
  10227. if Internal.Highlight.BackgroundTransparency <= 0.99 then
  10228. TabContent.Visible = true;
  10229. else
  10230. TabContent.Visible = false;
  10231. end;
  10232. end;
  10233.  
  10234. -- Set initial visibility - check immediately and after a small delay to catch animation start
  10235. updateVisibility();
  10236. task.defer(function()
  10237. task.wait(0.1);
  10238. updateVisibility();
  10239. end);
  10240.  
  10241. if MarcoUI.PerformanceMode then
  10242. if TabContent.Visible then
  10243. MarcoUI:_SetNilP(TabContent , Internal.Parent);
  10244. else
  10245. MarcoUI:_SetNilP(TabContent , nil);
  10246. end;
  10247. else
  10248. MarcoUI:_SetNilP(TabContent , Internal.Parent);
  10249. end;
  10250. else
  10251. -- Button --
  10252. local TabButton = Instance.new("Frame")
  10253. local Icon = Instance.new("ImageLabel")
  10254. local TabNameLabel = Instance.new("TextLabel")
  10255. local Highlight = Instance.new("Frame")
  10256. local UICorner = Instance.new("UICorner")
  10257.  
  10258. TabButton.Name = MarcoUI:_RandomString()
  10259. TabButton.Parent = TabButtonScrollingFrame
  10260. TabButton.BackgroundTransparency = 1.000
  10261. TabButton.BorderColor3 = Color3.fromRGB(0, 0, 0)
  10262. TabButton.BorderSizePixel = 0
  10263. TabButton.ClipsDescendants = true
  10264. TabButton.Size = UDim2.new(1, -10, 0, 32)
  10265. TabButton.ZIndex = 3
  10266.  
  10267. Icon.Name = MarcoUI:_RandomString()
  10268. Icon.Parent = TabButton
  10269. Icon.AnchorPoint = Vector2.new(0, 0.5)
  10270. Icon.BackgroundColor3 = MarcoUI.Colors.Highlight
  10271. Icon.BackgroundTransparency = 1.000
  10272. Icon.BorderColor3 = Color3.fromRGB(0, 0, 0)
  10273. Icon.BorderSizePixel = 0
  10274. Icon.Position = UDim2.new(0, 15, 0.5, 0)
  10275. Icon.Size = UDim2.new(0, 15, 0, 15)
  10276. Icon.ZIndex = 3
  10277. Icon.Image = MarcoUI:_GetIcon(TabConfig.Icon);
  10278. Icon.ImageColor3 = MarcoUI.Colors.Highlight
  10279.  
  10280. table.insert(MarcoUI.Elements.Highlight,{
  10281. Element = Icon,
  10282. Property = "ImageColor3"
  10283. });
  10284.  
  10285. TabNameLabel.Name = MarcoUI:_RandomString()
  10286. TabNameLabel.Parent = TabButton
  10287. TabNameLabel.AnchorPoint = Vector2.new(0, 0.5)
  10288. TabNameLabel.BackgroundTransparency = 1.000
  10289. TabNameLabel.BorderColor3 = Color3.fromRGB(0, 0, 0)
  10290. TabNameLabel.BorderSizePixel = 0
  10291. TabNameLabel.Position = UDim2.new(0, 43, 0.5, 0)
  10292. TabNameLabel.Size = UDim2.new(0, 200, 0, 25)
  10293. TabNameLabel.ZIndex = 3
  10294. TabNameLabel.Font = Enum.Font.GothamMedium
  10295. TabNameLabel.Text = TabConfig.Name;
  10296. TabNameLabel.TextColor3 = MarcoUI.Colors.SwitchColor
  10297. TabNameLabel.TextSize = 15.000
  10298. TabNameLabel.TextXAlignment = Enum.TextXAlignment.Left
  10299.  
  10300. table.insert(MarcoUI.Elements.SwitchColor , {
  10301. Element = TabNameLabel,
  10302. Property = 'TextColor3'
  10303. });
  10304.  
  10305. Highlight.Name = MarcoUI:_RandomString()
  10306. Highlight.Parent = TabButton
  10307. Highlight.AnchorPoint = Vector2.new(0.5, 0.5)
  10308. Highlight.BackgroundColor3 = Color3.fromRGB(161, 161, 161)
  10309. Highlight.BackgroundTransparency = 0.925
  10310. Highlight.BorderColor3 = Color3.fromRGB(0, 0, 0)
  10311. Highlight.BorderSizePixel = 0
  10312. Highlight.Position = UDim2.new(0.5, 0, 0.5, 0)
  10313. Highlight.Size = UDim2.new(1, -17, 1, 0)
  10314. Highlight.ZIndex = 2
  10315.  
  10316. UICorner.CornerRadius = UDim.new(0, 4)
  10317. UICorner.Parent = Highlight
  10318.  
  10319. local TabContent = Instance.new("Frame")
  10320. local Left = Instance.new("ScrollingFrame")
  10321. local UIListLayout = Instance.new("UIListLayout")
  10322. local Right = Instance.new("ScrollingFrame")
  10323. local UIListLayout_2 = Instance.new("UIListLayout")
  10324.  
  10325. TabContent.Name = MarcoUI:_RandomString()
  10326. TabContent.Parent = TabMainFrame;
  10327. TabContent.AnchorPoint = Vector2.new(0.5, 0.5)
  10328. TabContent.BackgroundTransparency = 1.000
  10329. TabContent.BorderColor3 = Color3.fromRGB(0, 0, 0)
  10330. TabContent.BorderSizePixel = 0
  10331. TabContent.Position = UDim2.new(0.5, 0, 0.5, 0)
  10332. TabContent.Size = UDim2.new(1, -15, 1, -15)
  10333. TabContent.ZIndex = 6
  10334.  
  10335. Left.Name = MarcoUI:_RandomString()
  10336. Left.Parent = TabContent
  10337. Left.Active = true
  10338. Left.AnchorPoint = Vector2.new(0.5, 0.5)
  10339. Left.BackgroundTransparency = 1.000
  10340. Left.BorderColor3 = Color3.fromRGB(0, 0, 0)
  10341. Left.BorderSizePixel = 0
  10342. Left.ClipsDescendants = false
  10343. Left.Position = UDim2.new(0.25, -3, 0.5, 0)
  10344. Left.Size = UDim2.new(0.5, -3, 1, 0)
  10345. Left.ZIndex = 8
  10346. Left.BottomImage = ""
  10347. Left.ScrollBarThickness = 0
  10348. Left.TopImage = ""
  10349. --Left.AutomaticCanvasSize = Enum.AutomaticSize.Y;
  10350. Left.CanvasSize = UDim2.new(0, 0, 0, 0)
  10351.  
  10352.  
  10353. UIListLayout:GetPropertyChangedSignal('AbsoluteContentSize'):Connect(function()
  10354. Left.CanvasSize = UDim2.fromOffset(0,UIListLayout.AbsoluteContentSize.Y)
  10355. end);
  10356.  
  10357. UIListLayout.Parent = Left
  10358. UIListLayout.HorizontalAlignment = Enum.HorizontalAlignment.Center
  10359. UIListLayout.SortOrder = Enum.SortOrder.LayoutOrder
  10360. UIListLayout.VerticalFlex = Enum.UIFlexAlignment.None
  10361. UIListLayout.Padding = UDim.new(0, BASE_PADDING)
  10362.  
  10363. Right.Name = MarcoUI:_RandomString()
  10364. Right.Parent = TabContent
  10365. Right.Active = true
  10366. Right.AnchorPoint = Vector2.new(0.5, 0.5)
  10367. Right.BackgroundTransparency = 1.000
  10368. Right.BorderColor3 = Color3.fromRGB(0, 0, 0)
  10369. Right.BorderSizePixel = 0
  10370. Right.ClipsDescendants = false
  10371. Right.Position = UDim2.new(0.75, 3, 0.5, 0)
  10372. Right.Size = UDim2.new(0.5, -3, 1, 0)
  10373. Right.ZIndex = 8
  10374. Right.BottomImage = ""
  10375. Right.ScrollBarThickness = 0
  10376. Right.TopImage = ""
  10377. --Right.AutomaticCanvasSize = Enum.AutomaticSize.Y;
  10378. Right.CanvasSize = UDim2.new(0, 0, 0, 0)
  10379.  
  10380. Upvalue.Left = Left;
  10381. Upvalue.Right = Right;
  10382. Upvalue.LeftLayout = UIListLayout;
  10383. Upvalue.RightLayout = UIListLayout_2;
  10384.  
  10385. UIListLayout_2:GetPropertyChangedSignal('AbsoluteContentSize'):Connect(function()
  10386. Right.CanvasSize = UDim2.fromOffset(0,UIListLayout_2.AbsoluteContentSize.Y)
  10387. end)
  10388.  
  10389. UIListLayout_2.Parent = Right
  10390. UIListLayout_2.HorizontalAlignment = Enum.HorizontalAlignment.Center
  10391. UIListLayout_2.SortOrder = Enum.SortOrder.LayoutOrder
  10392. UIListLayout_2.Padding = UDim.new(0, BASE_PADDING)
  10393. UIListLayout_2.VerticalFlex = Enum.UIFlexAlignment.None
  10394.  
  10395. WindowArgs:AddUnbind(UIListLayout_2 , Right);
  10396. WindowArgs:AddUnbind(UIListLayout , Left);
  10397.  
  10398. if MarcoUI:_IsMobile() then
  10399. MarcoUI:_AddDragBlacklist(Left);
  10400. MarcoUI:_AddDragBlacklist(Right);
  10401. end;
  10402.  
  10403. if TabConfig.Type == "Single" then
  10404. Right.Visible = false;
  10405. Left.Position = UDim2.new(0.5, 0, 0.5, 0)
  10406. Left.Size = UDim2.new(1, -1, 1, -1)
  10407. end;
  10408.  
  10409. local Tween = TweenInfo.new(0.35,Enum.EasingStyle.Quint);
  10410.  
  10411. Highlight:GetPropertyChangedSignal('BackgroundTransparency'):Connect(function()
  10412. if Highlight.BackgroundTransparency <= 0.99 then
  10413. TabContent.Visible = true;
  10414. else
  10415. TabContent.Visible = false;
  10416. end;
  10417.  
  10418. if MarcoUI.PerformanceMode then
  10419. if TabContent.Visible then
  10420. MarcoUI:_SetNilP(TabContent , TabMainFrame);
  10421. else
  10422. MarcoUI:_SetNilP(TabContent , nil);
  10423. end;
  10424. else
  10425. MarcoUI:_SetNilP(TabContent , TabMainFrame);
  10426. end;
  10427. end)
  10428.  
  10429. local TabOpen = function(bool)
  10430. if bool then
  10431. WindowArgs.SelectedTab = TabButton;
  10432. -- Hide Home when a tab is opened
  10433. if WindowArgs.IsHomeActive and WindowArgs._ToggleHome then
  10434. WindowArgs._ToggleHome(false);
  10435. end;
  10436.  
  10437. -- Selected tab: spin icon 360 degrees and scale up
  10438. MarcoUI:_Animation(Icon,TweenInfo.new(0.4, Enum.EasingStyle.Exponential, Enum.EasingDirection.Out),{
  10439. ImageTransparency = 0,
  10440. Rotation = 360,
  10441. Size = UDim2.new(0, 17, 0, 17)
  10442. });
  10443.  
  10444. MarcoUI:_Animation(TabButton,TweenInfo.new(0.3, Enum.EasingStyle.Exponential, Enum.EasingDirection.Out),{
  10445. Size = UDim2.new(1, -8, 0, 34)
  10446. });
  10447.  
  10448. MarcoUI:_Animation(TabNameLabel,Tween,{
  10449. TextTransparency = 0
  10450. });
  10451.  
  10452. MarcoUI:_Animation(Highlight,Tween,{
  10453. BackgroundTransparency = 0.925
  10454. });
  10455. else
  10456. -- Unselected tab: reset rotation, scale down, offset right
  10457. MarcoUI:_Animation(Icon,TweenInfo.new(0.3, Enum.EasingStyle.Exponential, Enum.EasingDirection.Out),{
  10458. ImageTransparency = 0.5,
  10459. Rotation = 0,
  10460. Size = UDim2.new(0, 14, 0, 14),
  10461. Position = UDim2.new(0, 16, 0.5, 0)
  10462. });
  10463.  
  10464. MarcoUI:_Animation(TabButton,TweenInfo.new(0.3, Enum.EasingStyle.Exponential, Enum.EasingDirection.Out),{
  10465. Size = UDim2.new(1, -10, 0, 30),
  10466. Position = UDim2.new(0, 2, 0, 0)
  10467. });
  10468.  
  10469. MarcoUI:_Animation(TabNameLabel,Tween,{
  10470. TextTransparency = 0.5
  10471. });
  10472.  
  10473. MarcoUI:_Animation(Highlight,Tween,{
  10474. BackgroundTransparency = 1
  10475. });
  10476. end;
  10477. end;
  10478.  
  10479. if not WindowArgs.Tabs[1] then
  10480. TabOpenSignal:Fire(true);
  10481. TabOpen(true);
  10482. else
  10483. TabOpen(false);
  10484. end;
  10485.  
  10486. table.insert(WindowArgs.Tabs , {
  10487. Root = TabButton,
  10488. Remote = TabOpenSignal
  10489. });
  10490.  
  10491. MarcoUI:_Hover(TabButton,function()
  10492. if WindowArgs.SelectedTab ~= TabButton then
  10493. MarcoUI:_Animation(Icon,Tween,{
  10494. ImageTransparency = 0.1
  10495. });
  10496.  
  10497. MarcoUI:_Animation(TabNameLabel,Tween,{
  10498. TextTransparency = 0.1
  10499. });
  10500. end;
  10501. end , function()
  10502. if WindowArgs.SelectedTab ~= TabButton then
  10503. MarcoUI:_Animation(Icon,Tween,{
  10504. ImageTransparency = 0.5
  10505. });
  10506.  
  10507. MarcoUI:_Animation(TabNameLabel,Tween,{
  10508. TextTransparency = 0.5
  10509. });
  10510. end;
  10511. end)
  10512.  
  10513. TabOpenSignal:Connect(TabOpen);
  10514.  
  10515. TabHover:Connect(function(bool)
  10516. if bool then
  10517. MarcoUI:_Animation(TabButton,Tween,{
  10518. Size = UDim2.new(1, -10, 0, 32)
  10519. });
  10520.  
  10521. MarcoUI:_Animation(Icon,Tween,{
  10522. Size = UDim2.new(0, 16, 0, 16),
  10523. });
  10524.  
  10525. MarcoUI:_Animation(TabNameLabel,Tween,{
  10526. Size = UDim2.new(0, 200, 0, 25),
  10527. Position = UDim2.new(0, 43, 0.5, 0)
  10528. });
  10529.  
  10530. MarcoUI:_Animation(UICorner,Tween,{
  10531. CornerRadius = UDim.new(0, 4)
  10532. });
  10533.  
  10534. MarcoUI:_Animation(Highlight,Tween,{
  10535. Size = UDim2.new(1, -17, 1, 0),
  10536. Position = UDim2.new(0.5, 0, 0.5, 0)
  10537. });
  10538. else
  10539. MarcoUI:_Animation(UICorner,Tween,{
  10540. CornerRadius = UDim.new(0, 10)
  10541. });
  10542.  
  10543. MarcoUI:_Animation(TabButton,Tween,{
  10544. Size = UDim2.new(1, -10, 0, 32)
  10545. });
  10546.  
  10547. MarcoUI:_Animation(Icon,Tween,{
  10548. Size = UDim2.new(0, 16, 0, 16),
  10549. });
  10550.  
  10551. MarcoUI:_Animation(TabNameLabel,Tween,{
  10552. Size = UDim2.new(0, 200, 0, 25),
  10553. Position = UDim2.new(0, 80, 0.5, 0)
  10554. });
  10555.  
  10556. MarcoUI:_Animation(Highlight,Tween,{
  10557. Size = UDim2.new(1, -10,1, 5),
  10558. Position = UDim2.new(0.5, 0, 0.5, 0)
  10559. });
  10560. end;
  10561. end);
  10562.  
  10563. MarcoUI:_Input(TabButton,function()
  10564. for i,v in next, WindowArgs.Tabs do
  10565. if v.Root == TabButton then
  10566. v.Remote:Fire(true);
  10567. else
  10568. v.Remote:Fire(false);
  10569. end;
  10570. end;
  10571. end);
  10572. end;
  10573.  
  10574. function TabArgs:DrawSection(config: Section)
  10575. config = MarcoUI.__CONFIG(config,{
  10576. Name = "Section",
  10577. Position = "left",
  10578. Status = nil
  10579. });
  10580.  
  10581. local Parent = (TabConfig.Type == "Double" and ((string.lower(config.Position) == "left" and Upvalue.Left) or Upvalue.Right)) or Upvalue.Left;
  10582. local IsOpen = true;
  10583.  
  10584. local Section = Instance.new("Frame")
  10585. local UICorner = Instance.new("UICorner")
  10586. local UIStroke = Instance.new("UIStroke")
  10587. local UIListLayout = Instance.new("UIListLayout")
  10588. local Header = Instance.new("Frame")
  10589. local SectionText = Instance.new("TextLabel")
  10590. local SectionClose = Instance.new("ImageLabel")
  10591. local ContentHolder = Instance.new("Frame")
  10592. local ContentLayout = Instance.new("UIListLayout")
  10593. local StatusHolder;
  10594. local StatusDot;
  10595. local StatusLabel;
  10596.  
  10597. Section.Name = MarcoUI:_RandomString()
  10598. Section.Parent = Parent;
  10599.  
  10600. if TabConfig.Type == "Single" then
  10601. Section.Parent = Upvalue.Left;
  10602. end;
  10603.  
  10604. -- Mark section for interaction locking
  10605. Section:SetAttribute("IsSection", true);
  10606.  
  10607. Section.BackgroundColor3 = MarcoUI.Colors.BlockColor
  10608.  
  10609. table.insert(MarcoUI.Elements.BlockColor , {
  10610. Element = Section,
  10611. Property = "BackgroundColor3"
  10612. });
  10613.  
  10614. if MarcoUI:_IsMobile() then
  10615. MarcoUI:_AddDragBlacklist(Section);
  10616. end;
  10617.  
  10618. Section.LayoutOrder = #Parent:GetChildren() + 3;
  10619. Section.BorderColor3 = Color3.fromRGB(0, 0, 0)
  10620. Section.BorderSizePixel = 0
  10621. Section.Size = UDim2.new(1, 0, 0, 0)
  10622. Section.AutomaticSize = Enum.AutomaticSize.Y;
  10623. Section.ZIndex = 9
  10624. Section.ClipsDescendants = true;
  10625.  
  10626. UICorner.CornerRadius = UDim.new(0, 6)
  10627. UICorner.Parent = Section
  10628.  
  10629. UIStroke.Color = MarcoUI.Colors.StrokeColor
  10630. UIStroke.Parent = Section
  10631.  
  10632. table.insert(MarcoUI.Elements.StrokeColor,{
  10633. Element = UIStroke,
  10634. Property = "Color"
  10635. });
  10636.  
  10637. -- Border trace effect for hover
  10638. local BorderTrace = Instance.new("UIStroke")
  10639. BorderTrace.Name = MarcoUI:_RandomString()
  10640. BorderTrace.Parent = Section
  10641. BorderTrace.Color = MarcoUI.Colors.Highlight
  10642. BorderTrace.Transparency = 1.000
  10643. BorderTrace.Thickness = 2
  10644. BorderTrace.ZIndex = 10
  10645.  
  10646. table.insert(MarcoUI.Elements.Highlight,{
  10647. Element = BorderTrace,
  10648. Property = "Color"
  10649. });
  10650.  
  10651. local BorderGradient = Instance.new("UIGradient")
  10652. BorderGradient.Parent = BorderTrace
  10653. BorderGradient.Color = ColorSequence.new({
  10654. ColorSequenceKeypoint.new(0, MarcoUI.Colors.Highlight),
  10655. ColorSequenceKeypoint.new(0.5, Color3.fromRGB(255, 255, 255)),
  10656. ColorSequenceKeypoint.new(1, MarcoUI.Colors.Highlight)
  10657. });
  10658. BorderGradient.Offset = Vector2.new(0, 0)
  10659.  
  10660. local gradientOffset = 0;
  10661. local gradientConnection;
  10662. local function startGradientAnimation()
  10663. if gradientConnection then
  10664. gradientConnection:Disconnect();
  10665. end;
  10666. gradientConnection = RunService.RenderStepped:Connect(function()
  10667. gradientOffset = (gradientOffset + 0.01) % 1;
  10668. -- Animate offset to create wrapping effect
  10669. local angle = gradientOffset * math.pi * 2;
  10670. BorderGradient.Offset = Vector2.new(math.cos(angle) * 0.5, math.sin(angle) * 0.5);
  10671. end);
  10672. end;
  10673. local function stopGradientAnimation()
  10674. if gradientConnection then
  10675. gradientConnection:Disconnect();
  10676. gradientConnection = nil;
  10677. end;
  10678. end;
  10679.  
  10680. -- Hover effect with border trace
  10681. MarcoUI:_Hover(Section, function()
  10682. MarcoUI:_Animation(BorderTrace, TweenInfo.new(0.3, Enum.EasingStyle.Exponential), {
  10683. Transparency = 0.2
  10684. });
  10685. startGradientAnimation();
  10686. end, function()
  10687. MarcoUI:_Animation(BorderTrace, TweenInfo.new(0.3, Enum.EasingStyle.Exponential), {
  10688. Transparency = 1.000
  10689. });
  10690. stopGradientAnimation();
  10691. end);
  10692.  
  10693. UIListLayout.Parent = Section
  10694. UIListLayout.HorizontalAlignment = Enum.HorizontalAlignment.Center
  10695. UIListLayout.SortOrder = Enum.SortOrder.LayoutOrder
  10696. UIListLayout.Padding = UDim.new(0, 8) -- Increased padding for better spacing
  10697.  
  10698. Header.Name = MarcoUI:_RandomString()
  10699. Header.Parent = Section
  10700. Header.BackgroundTransparency = 1.000
  10701. Header.BorderColor3 = Color3.fromRGB(0, 0, 0)
  10702. Header.BorderSizePixel = 0
  10703. Header.LayoutOrder = -100
  10704. Header.Size = UDim2.new(1, 0, 0, 35)
  10705. Header.ZIndex = 9
  10706.  
  10707. SectionText.Name = MarcoUI:_RandomString()
  10708. SectionText.Parent = Header
  10709. SectionText.AnchorPoint = Vector2.new(0, 0.5)
  10710. SectionText.BackgroundTransparency = 1.000
  10711. SectionText.BorderColor3 = Color3.fromRGB(0, 0, 0)
  10712. SectionText.BorderSizePixel = 0
  10713. SectionText.Position = UDim2.new(0, 12, 0.5, 0)
  10714. SectionText.Size = UDim2.new(0, 200, 0, 25)
  10715. SectionText.ZIndex = 10
  10716. SectionText.Font = Enum.Font.GothamMedium
  10717. SectionText.Text = config.Name;
  10718. -- Section text always uses standard theme color (never changes based on status)
  10719. SectionText.TextColor3 = MarcoUI.Colors.SwitchColor
  10720. SectionText.TextSize = 14.000
  10721. SectionText.TextTransparency = 0.500
  10722. SectionText.TextXAlignment = Enum.TextXAlignment.Left
  10723.  
  10724. table.insert(MarcoUI.Elements.SwitchColor , {
  10725. Element = SectionText,
  10726. Property = 'TextColor3'
  10727. });
  10728.  
  10729. SectionClose.Name = MarcoUI:_RandomString()
  10730. SectionClose.Parent = Header
  10731. SectionClose.AnchorPoint = Vector2.new(1, 0.5)
  10732. SectionClose.BackgroundTransparency = 1.000
  10733. SectionClose.BorderColor3 = Color3.fromRGB(0, 0, 0)
  10734. SectionClose.BorderSizePixel = 0
  10735. SectionClose.Position = UDim2.new(1, -12, 0.5, 0)
  10736. SectionClose.Size = UDim2.new(0, 17, 0, 17)
  10737. SectionClose.ZIndex = 10
  10738. SectionClose.Image = MarcoUI:CacheImage("rbxassetid://109535175596957")
  10739. SectionClose.ImageTransparency = 0.500
  10740.  
  10741. if config.Status then
  10742. StatusHolder = Instance.new("Frame")
  10743. StatusDot = Instance.new("Frame")
  10744. StatusLabel = Instance.new("TextLabel")
  10745. local StatusCorner = Instance.new("UICorner")
  10746. local StatusLayout = Instance.new("UIListLayout")
  10747. local statusColor = MarcoUI.Colors.Highlight;
  10748. local statusLower = string.lower(tostring(config.Status));
  10749.  
  10750. -- Fixed status colors: Working=green, Detected=red, Buggy=yellow, Beta=blue, Not Recommended=red
  10751. if statusLower == "working" or statusLower == "undetected" or statusLower == "online" then
  10752. statusColor = Color3.fromRGB(46, 204, 113); -- Green
  10753. elseif statusLower == "detected" or statusLower == "error" or statusLower == "risky" then
  10754. statusColor = Color3.fromRGB(220, 20, 60); -- Red
  10755. elseif statusLower == "buggy" or statusLower == "testing" or statusLower == "updating" then
  10756. statusColor = Color3.fromRGB(255, 191, 0); -- Yellow
  10757. elseif statusLower == "beta" then
  10758. statusColor = Color3.fromRGB(52, 152, 219); -- Blue
  10759. elseif statusLower == "not recommended" or statusLower == "notrecommended" then
  10760. statusColor = Color3.fromRGB(231, 76, 60); -- Red (slightly different from Detected)
  10761. end;
  10762.  
  10763. StatusHolder.Name = MarcoUI:_RandomString()
  10764. StatusHolder.Parent = Header
  10765. StatusHolder.AnchorPoint = Vector2.new(1, 0.5)
  10766. StatusHolder.BackgroundTransparency = 1.000
  10767. StatusHolder.BorderSizePixel = 0
  10768. StatusHolder.Position = UDim2.new(1, -36, 0.5, 0)
  10769. StatusHolder.Size = UDim2.new(0, 0, 1, 0)
  10770. StatusHolder.AutomaticSize = Enum.AutomaticSize.X
  10771. StatusHolder.ZIndex = 10
  10772. StatusHolder.ClipsDescendants = false
  10773.  
  10774. StatusLayout.Parent = StatusHolder
  10775. StatusLayout.FillDirection = Enum.FillDirection.Horizontal
  10776. StatusLayout.SortOrder = Enum.SortOrder.LayoutOrder
  10777. StatusLayout.VerticalAlignment = Enum.VerticalAlignment.Center
  10778. StatusLayout.Padding = UDim.new(0, 4)
  10779.  
  10780. StatusDot.Name = MarcoUI:_RandomString()
  10781. StatusDot.Parent = StatusHolder
  10782. StatusDot.BackgroundColor3 = statusColor
  10783. StatusDot.BorderSizePixel = 0
  10784. StatusDot.Size = UDim2.new(0, 10, 0, 10)
  10785. StatusDot.ZIndex = 10
  10786.  
  10787. StatusCorner.CornerRadius = UDim.new(1, 0)
  10788. StatusCorner.Parent = StatusDot
  10789.  
  10790. if statusColor == MarcoUI.Colors.Highlight then
  10791. table.insert(MarcoUI.Elements.Highlight , {
  10792. Element = StatusDot,
  10793. Property = 'BackgroundColor3'
  10794. });
  10795. end;
  10796.  
  10797. StatusLabel.Name = MarcoUI:_RandomString()
  10798. StatusLabel.Parent = StatusHolder
  10799. StatusLabel.BackgroundTransparency = 1.000
  10800. StatusLabel.BorderSizePixel = 0
  10801. StatusLabel.Size = UDim2.new(0, 0, 0, 14)
  10802. StatusLabel.AutomaticSize = Enum.AutomaticSize.X
  10803. StatusLabel.Font = Enum.Font.GothamSemibold
  10804. StatusLabel.Text = tostring(config.Status)
  10805. StatusLabel.TextColor3 = MarcoUI.Colors.SwitchColor
  10806. StatusLabel.TextSize = 12.000
  10807. StatusLabel.ZIndex = 10
  10808.  
  10809. table.insert(MarcoUI.Elements.SwitchColor , {
  10810. Element = StatusLabel,
  10811. Property = 'TextColor3'
  10812. });
  10813. end;
  10814.  
  10815. if not SectionText.Text:byte() then
  10816. Header.Visible = false;
  10817. else
  10818. Header.Visible = true;
  10819. end;
  10820.  
  10821. ContentHolder.Name = MarcoUI:_RandomString()
  10822. ContentHolder.Parent = Section
  10823. ContentHolder.BackgroundTransparency = 1.000
  10824. ContentHolder.BorderSizePixel = 0
  10825. ContentHolder.LayoutOrder = 0
  10826. ContentHolder.Size = UDim2.new(1, -10, 0, 0)
  10827. ContentHolder.AutomaticSize = Enum.AutomaticSize.Y
  10828. ContentHolder.ZIndex = 9
  10829. ContentHolder.ClipsDescendants = true;
  10830.  
  10831. ContentLayout.Parent = ContentHolder
  10832. ContentLayout.HorizontalAlignment = Enum.HorizontalAlignment.Center
  10833. ContentLayout.SortOrder = Enum.SortOrder.LayoutOrder
  10834. ContentLayout.Padding = UDim.new(0, 8) -- Increased padding for better spacing
  10835.  
  10836. TabOpenSignal:Connect(function(bool)
  10837. if bool then
  10838. MarcoUI:_Animation(Section,TweenInfo.new(0.21),{
  10839. BackgroundTransparency = 0
  10840. })
  10841.  
  10842. MarcoUI:_Animation(SectionText,TweenInfo.new(0.21),{
  10843. TextTransparency = 0.500
  10844. })
  10845.  
  10846. MarcoUI:_Animation(SectionClose,TweenInfo.new(0.21),{
  10847. ImageTransparency = 0.500
  10848. })
  10849. else
  10850. MarcoUI:_Animation(Section,TweenInfo.new(0.21),{
  10851. BackgroundTransparency = 1
  10852. })
  10853.  
  10854. MarcoUI:_Animation(SectionText,TweenInfo.new(0.21),{
  10855. TextTransparency = 1
  10856. })
  10857.  
  10858. MarcoUI:_Animation(SectionClose,TweenInfo.new(0.21),{
  10859. ImageTransparency = 1
  10860. })
  10861. end;
  10862. end);
  10863.  
  10864. local function toggleSection(state)
  10865. IsOpen = state;
  10866.  
  10867. if IsOpen then
  10868. ContentHolder.AutomaticSize = Enum.AutomaticSize.Y;
  10869. ContentHolder.Visible = true;
  10870.  
  10871. MarcoUI:_Animation(SectionClose,TweenInfo.new(0.35),{
  10872. Rotation = 0
  10873. });
  10874. else
  10875. ContentHolder.AutomaticSize = Enum.AutomaticSize.None;
  10876. ContentHolder.Size = UDim2.new(1, -10, 0, 0);
  10877. ContentHolder.Visible = false;
  10878.  
  10879. MarcoUI:_Animation(SectionClose,TweenInfo.new(0.35),{
  10880. Rotation = -180
  10881. });
  10882. end;
  10883. end;
  10884.  
  10885. MarcoUI:_Input(Header,function()
  10886. toggleSection(not IsOpen);
  10887. end);
  10888.  
  10889. toggleSection(IsOpen);
  10890.  
  10891. Header.MouseEnter:Connect(function()
  10892. MarcoUI:_Animation(SectionText,TweenInfo.new(0.2),{
  10893. TextTransparency = 0.25
  10894. })
  10895. end)
  10896.  
  10897. Header.MouseLeave:Connect(function()
  10898. MarcoUI:_Animation(SectionText,TweenInfo.new(0.2),{
  10899. TextTransparency = 0.500
  10900. })
  10901. end)
  10902.  
  10903. return MarcoUI:_LoadElement(ContentHolder , true , TabOpenSignal)
  10904. end;
  10905.  
  10906. return TabArgs;
  10907. end;
  10908.  
  10909. do
  10910. local CloseWindow = Instance.new("Frame")
  10911. local UICorner = Instance.new("UICorner")
  10912. local ImageLabel = Instance.new("ImageLabel")
  10913.  
  10914. CloseWindow.Name = MarcoUI:_RandomString()
  10915. CloseWindow.Parent = WindowGui
  10916. CloseWindow.AnchorPoint = Vector2.new(1, 0)
  10917. CloseWindow.BackgroundColor3 = MarcoUI.Colors.BGDBColor
  10918.  
  10919. table.insert(MarcoUI.Elements.BGDBColor,{
  10920. Element = CloseWindow,
  10921. Property = 'BackgroundColor3'
  10922. });
  10923.  
  10924. CloseWindow.BackgroundTransparency = 1
  10925. CloseWindow.BorderColor3 = Color3.fromRGB(0, 0, 0)
  10926. CloseWindow.BorderSizePixel = 0
  10927. CloseWindow.Position = UDim2.new(1, -10, 0, 10)
  10928. CloseWindow.Size = UDim2.new(0, 0, 0, 23)
  10929. CloseWindow.ZIndex = 150
  10930. CloseWindow.ClipsDescendants = true;
  10931.  
  10932. UICorner.CornerRadius = UDim.new(0, 3)
  10933. UICorner.Parent = CloseWindow
  10934.  
  10935. ImageLabel.Parent = CloseWindow
  10936. ImageLabel.AnchorPoint = Vector2.new(0.5, 0.5)
  10937. ImageLabel.BackgroundTransparency = 1.000
  10938. ImageLabel.BorderColor3 = Color3.fromRGB(0, 0, 0)
  10939. ImageLabel.BorderSizePixel = 0
  10940. ImageLabel.Position = UDim2.new(0.5, 0, 0.5, 0)
  10941. ImageLabel.Size = UDim2.new(0.800000012, 0, 0.800000012, 0)
  10942. ImageLabel.SizeConstraint = Enum.SizeConstraint.RelativeYY
  10943. ImageLabel.ZIndex = 151
  10944. ImageLabel.Image = Config.Logo
  10945. ImageLabel.ImageTransparency = 1
  10946. ImageLabel.ClipsDescendants = false;
  10947.  
  10948. local ToggleCloseUI = function(v)
  10949. ImageLabel.Image = Config.Logo;
  10950.  
  10951. if v then
  10952. ImageLabel.ClipsDescendants = true;
  10953.  
  10954. MarcoUI:_Animation(CloseWindow,TweenInfo.new(0.2),{
  10955. Size = UDim2.new(0, 45, 0, 23),
  10956. BackgroundTransparency = 0.025
  10957. })
  10958.  
  10959. MarcoUI:_Animation(ImageLabel,TweenInfo.new(0.2),{
  10960. ImageTransparency = (ImageLabel:GetAttribute('Hover') and 0.1) or 0.35
  10961. })
  10962. else
  10963. ImageLabel.ClipsDescendants = false;
  10964.  
  10965. MarcoUI:_Animation(CloseWindow,TweenInfo.new(0.2),{
  10966. Size = UDim2.new(0, 0, 0, 23),
  10967. BackgroundTransparency = 1
  10968. })
  10969.  
  10970. MarcoUI:_Animation(ImageLabel,TweenInfo.new(0.2),{
  10971. ImageTransparency = 1
  10972. })
  10973. end;
  10974. end;
  10975.  
  10976. function WindowArgs:Watermark()
  10977. local Signal = MarcoUI.__SIGNAL(true);
  10978.  
  10979. local Watermark = Instance.new("Frame")
  10980. local UICorner = Instance.new("UICorner")
  10981. local Logo = Instance.new("Frame")
  10982. local UICorner_2 = Instance.new("UICorner")
  10983. local Frame = Instance.new("Frame")
  10984. local CompLogo = Instance.new("ImageLabel")
  10985. local WaternarkList = Instance.new("Frame")
  10986. local UIListLayout = Instance.new("UIListLayout")
  10987.  
  10988. Watermark.Name = MarcoUI:_RandomString()
  10989. Watermark.Parent = WindowGui
  10990. Watermark.AnchorPoint = Vector2.new(1, 0)
  10991. Watermark.BackgroundColor3 = MarcoUI.Colors.BGDBColor
  10992.  
  10993. MarcoUI:Drag(Watermark , Watermark, 0.1);
  10994.  
  10995. table.insert(MarcoUI.Elements.BGDBColor,{
  10996. Element = Watermark,
  10997. Property = 'BackgroundColor3'
  10998. });
  10999.  
  11000. Watermark.BackgroundTransparency = 0.025
  11001. Watermark.BorderColor3 = Color3.fromRGB(0, 0, 0)
  11002. Watermark.BorderSizePixel = 0
  11003. Watermark.Position = UDim2.new(1, -10, 0, 10)
  11004. Watermark.Size = UDim2.new(0, 45, 0, 23)
  11005. Watermark.ZIndex = 150
  11006.  
  11007. UICorner.CornerRadius = UDim.new(0, 3)
  11008. UICorner.Parent = Watermark
  11009.  
  11010. Logo.Name = MarcoUI:_RandomString()
  11011. Logo.Parent = Watermark
  11012. Logo.AnchorPoint = Vector2.new(1, 0.5)
  11013. Logo.BackgroundColor3 = MarcoUI.Colors.BGDBColor
  11014.  
  11015. table.insert(MarcoUI.Elements.BGDBColor,{
  11016. Element = Logo,
  11017. Property = 'BackgroundColor3'
  11018. });
  11019.  
  11020. Logo.BackgroundTransparency = 0.300
  11021. Logo.BorderColor3 = Color3.fromRGB(0, 0, 0)
  11022. Logo.BorderSizePixel = 0
  11023. Logo.Position = UDim2.new(0, 5, 0.5, 0)
  11024. Logo.Size = UDim2.new(1, 10, 1, 0)
  11025. Logo.SizeConstraint = Enum.SizeConstraint.RelativeYY
  11026. Logo.ZIndex = 149
  11027.  
  11028. UICorner_2.CornerRadius = UDim.new(0, 3)
  11029. UICorner_2.Parent = Logo
  11030.  
  11031. Frame.Parent = Logo
  11032. Frame.AnchorPoint = Vector2.new(0, 0.5)
  11033. Frame.BackgroundColor3 = MarcoUI.Colors.Highlight
  11034. Frame.BorderColor3 = Color3.fromRGB(0, 0, 0)
  11035. Frame.BorderSizePixel = 0
  11036. Frame.Position = UDim2.new(1, -5, 0.5, 0)
  11037. Frame.Size = UDim2.new(0, 2, 1, 0)
  11038. Frame.ZIndex = 151
  11039.  
  11040. table.insert(MarcoUI.Elements.Highlight,{
  11041. Element = Frame,
  11042. Property = "BackgroundColor3"
  11043. });
  11044.  
  11045. CompLogo.Name = MarcoUI:_RandomString()
  11046. CompLogo.Parent = Logo
  11047. CompLogo.AnchorPoint = Vector2.new(0.5, 0.5)
  11048. CompLogo.BackgroundTransparency = 1.000
  11049. CompLogo.BorderColor3 = Color3.fromRGB(0, 0, 0)
  11050. CompLogo.BorderSizePixel = 0
  11051. CompLogo.Position = UDim2.new(0.5, -2, 0.5, 0)
  11052. CompLogo.Size = UDim2.new(0.800000012, 0, 0.800000012, 0)
  11053. CompLogo.SizeConstraint = Enum.SizeConstraint.RelativeYY
  11054. CompLogo.ZIndex = 159
  11055. CompLogo.Image = Config.Logo
  11056.  
  11057. if MarcoUI.CustomHighlightMode then
  11058. CompLogo.ImageColor3 = MarcoUI.Colors.Highlight;
  11059.  
  11060. table.insert(MarcoUI.Elements.Highlight , {
  11061. Element = CompLogo,
  11062. Property = 'ImageColor3'
  11063. });
  11064. end;
  11065.  
  11066. WaternarkList.Name = MarcoUI:_RandomString()
  11067. WaternarkList.Parent = Watermark
  11068. WaternarkList.AnchorPoint = Vector2.new(0.5, 0)
  11069. WaternarkList.BackgroundTransparency = 1.000
  11070. WaternarkList.BorderColor3 = Color3.fromRGB(0, 0, 0)
  11071. WaternarkList.BorderSizePixel = 0
  11072. WaternarkList.Position = UDim2.new(0.5, 0, 0, 0)
  11073. WaternarkList.Size = UDim2.new(1, -10, 1, 0)
  11074. WaternarkList.ZIndex = 155
  11075. WaternarkList.ClipsDescendants = true
  11076.  
  11077. UIListLayout.Parent = WaternarkList
  11078. UIListLayout.FillDirection = Enum.FillDirection.Horizontal
  11079. UIListLayout.SortOrder = Enum.SortOrder.LayoutOrder
  11080. UIListLayout.VerticalAlignment = Enum.VerticalAlignment.Center
  11081. UIListLayout.Padding = UDim.new(0, 3)
  11082.  
  11083. local BackFrame = Instance.new("Frame")
  11084.  
  11085. BackFrame.Name = MarcoUI:_RandomString()
  11086. BackFrame.Parent = Watermark
  11087. BackFrame.AnchorPoint = Vector2.new(1, 0.5)
  11088. BackFrame.BackgroundTransparency = 1.000
  11089. BackFrame.BorderColor3 = Color3.fromRGB(0, 0, 0)
  11090. BackFrame.BorderSizePixel = 0
  11091. BackFrame.Position = UDim2.new(1, 0, 0.5, 0)
  11092. BackFrame.Size = UDim2.new(1, 30, 1, 0)
  11093.  
  11094. MarcoUI:_Blur(BackFrame,Signal);
  11095.  
  11096. UIListLayout:GetPropertyChangedSignal('AbsoluteContentSize'):Connect(function()
  11097. MarcoUI:_Animation(Watermark,TweenInfo.new(0.4),{
  11098. Size = UDim2.new(0, UIListLayout.AbsoluteContentSize.X + 8, 0, 23)
  11099. });
  11100. end)
  11101.  
  11102. local Args = {};
  11103.  
  11104. function Args:AddText(Watermark : Watermark)
  11105. Watermark = MarcoUI.__CONFIG(Watermark, {
  11106. Text = "Watermark",
  11107. Icon = "info"
  11108. });
  11109.  
  11110. local Icon = Instance.new("ImageLabel")
  11111. local TextLabel = Instance.new("TextLabel")
  11112.  
  11113. Icon.Name = MarcoUI:_RandomString()
  11114. Icon.Parent = WaternarkList
  11115. Icon.BackgroundTransparency = 1.000
  11116. Icon.BorderColor3 = Color3.fromRGB(0, 0, 0)
  11117. Icon.BorderSizePixel = 0
  11118. Icon.Size = UDim2.fromOffset(15,15)
  11119. Icon.SizeConstraint = Enum.SizeConstraint.RelativeYY
  11120. Icon.ZIndex = 156
  11121. Icon.Image = MarcoUI:_GetIcon(Watermark.Icon);
  11122.  
  11123. TextLabel.Parent = WaternarkList
  11124. TextLabel.BackgroundTransparency = 1.000
  11125. TextLabel.BorderColor3 = Color3.fromRGB(0, 0, 0)
  11126. TextLabel.BorderSizePixel = 0
  11127. TextLabel.Size = UDim2.new(0, 50, 0.699999988, 0)
  11128. TextLabel.ZIndex = 156
  11129. TextLabel.Font = Enum.Font.GothamMedium
  11130. TextLabel.Text = Watermark.Text
  11131. TextLabel.TextColor3 = MarcoUI.Colors.SwitchColor
  11132. TextLabel.TextSize = 10.000
  11133. TextLabel.TextXAlignment = Enum.TextXAlignment.Left
  11134.  
  11135. table.insert(MarcoUI.Elements.SwitchColor , {
  11136. Element = TextLabel,
  11137. Property = 'TextColor3'
  11138. });
  11139.  
  11140. local Update = function()
  11141. local scale = TextService:GetTextSize(TextLabel.Text,TextLabel.TextSize,TextLabel.Font,Vector2.new(math.huge,math.huge));
  11142.  
  11143. TextLabel.Size = UDim2.new(0, scale.X + 2, 0.7, 0)
  11144. end;
  11145.  
  11146. Update()
  11147.  
  11148. local Arg = {};
  11149.  
  11150. function Arg:SetText(text)
  11151. TextLabel.Text = text;
  11152. Update();
  11153. end;
  11154.  
  11155. function Arg:Visible(v)
  11156. Icon.Visible = v;
  11157. TextLabel.Visible = v;
  11158.  
  11159. if MarcoUI.PerformanceMode then
  11160. if v then
  11161. MarcoUI:_SetNilP(Icon , WaternarkList);
  11162. MarcoUI:_SetNilP(TextLabel , WaternarkList);
  11163. else
  11164. MarcoUI:_SetNilP(Icon , nil);
  11165. MarcoUI:_SetNilP(TextLabel , nil);
  11166. end;
  11167. else
  11168. MarcoUI:_SetNilP(Icon , WaternarkList);
  11169. MarcoUI:_SetNilP(TextLabel , WaternarkList);
  11170. end;
  11171. end;
  11172.  
  11173. return Arg;
  11174. end;
  11175.  
  11176. return Args;
  11177. end;
  11178.  
  11179. function WindowArgs:Toggle(Value: boolean)
  11180. if WindowArgs.PerformanceMode then
  11181. MainFrame.Visible = Value;
  11182. end;
  11183.  
  11184. WindowOpen:Fire(Value);
  11185.  
  11186. if Value then
  11187. for i,v in next , WindowArgs.Tabs do
  11188. if v.Root == WindowArgs.SelectedTab then
  11189. v.Remote:Fire(true);
  11190. end;
  11191. end;
  11192. else
  11193. for i,v in next , WindowArgs.Tabs do
  11194. v.Remote:Fire(false);
  11195. end;
  11196. end;
  11197. end;
  11198.  
  11199. function WindowArgs:_ToggleUI()
  11200. if WindowArgs.IsMinimized then
  11201. WindowArgs:_MinimizeUI(); -- Unminimize first
  11202. end;
  11203. WindowArgs.IsOpen = not WindowArgs.IsOpen;
  11204. WindowArgs:Toggle(WindowArgs.IsOpen)
  11205. end;
  11206.  
  11207. function WindowArgs:_MinimizeUI()
  11208. WindowArgs.IsMinimized = not WindowArgs.IsMinimized;
  11209.  
  11210. if WindowArgs.IsMinimized then
  11211. -- Minimize to corner
  11212. MarcoUI:_Animation(MainFrame, TweenInfo.new(0.4, Enum.EasingStyle.Exponential), {
  11213. Size = UDim2.new(0, 60, 0, 60),
  11214. Position = UDim2.new(1, -70, 1, -70)
  11215. });
  11216. MainFrame.ClipsDescendants = true;
  11217. else
  11218. -- Restore
  11219. MarcoUI:_Animation(MainFrame, TweenInfo.new(0.4, Enum.EasingStyle.Exponential), {
  11220. Size = Config.Scale,
  11221. Position = UDim2.fromScale(0.5, 0.5)
  11222. });
  11223. task.wait(0.4);
  11224. MainFrame.ClipsDescendants = false;
  11225. end;
  11226. end;
  11227.  
  11228. local Button = MarcoUI:_Input(CloseWindow,function()
  11229. WindowArgs:_ToggleUI()
  11230. end)
  11231.  
  11232. if not MarcoUI:_IsMobile() then
  11233.  
  11234. MarcoUI:_Hover(Button,function()
  11235. ImageLabel:SetAttribute("Hover",true);
  11236. end , function()
  11237. ImageLabel:SetAttribute("Hover",false);
  11238. end);
  11239. end;
  11240.  
  11241. table.insert(WindowArgs.THREADS,task.spawn(function()
  11242. while true do task.wait(0.15)
  11243. if MarcoUI:_IsMobile() then
  11244. ToggleCloseUI(true);
  11245.  
  11246. if WindowArgs.IsOpen then
  11247. MarcoUI:_Animation(ImageLabel,TweenInfo.new(0.2),{
  11248. ImageTransparency = 0.35
  11249. });
  11250.  
  11251. ImageLabel:GetAttribute("Hover",false);
  11252. else
  11253. ImageLabel:GetAttribute("Hover",true);
  11254.  
  11255. MarcoUI:_Animation(ImageLabel,TweenInfo.new(0.2),{
  11256. ImageTransparency = 0.1
  11257. });
  11258. end;
  11259. else
  11260. if not WindowArgs.IsOpen then
  11261. ToggleCloseUI(true);
  11262. else
  11263. ToggleCloseUI(false);
  11264. end
  11265. end;
  11266. end
  11267. end));
  11268.  
  11269. UserInputService.InputBegan:Connect(function(Input,Typing)
  11270. if not Typing then
  11271. if Input.KeyCode == Config.Keybind or Input.KeyCode.Name == Config.Keybind then
  11272. WindowArgs:_ToggleUI()
  11273. elseif Input.KeyCode == Config.MinimizeKeybind or Input.KeyCode.Name == tostring(Config.MinimizeKeybind) then
  11274. WindowArgs:_MinimizeUI()
  11275. end;
  11276. end;
  11277. end);
  11278. end;
  11279.  
  11280. function WindowArgs:SetMenuKey(new: string | Enum.KeyCode)
  11281. Config.Keybind = new;
  11282. end;
  11283.  
  11284. function WindowArgs:Update(config: WindowUpdate)
  11285. config = config or {};
  11286. config.Logo = config.Logo or Config.Logo;
  11287. config.Username = config.Username or (LocalPlayer and LocalPlayer.DisplayName) or "Player";
  11288. config.ExpireDate = config.ExpireDate or "NEVER";
  11289. config.WindowName = config.WindowName or Config.Name;
  11290. config.UserProfile = config.UserProfile or WindowArgs.Profile or (LocalPlayer and string.format("rbxthumb://type=AvatarHeadShot&id=%s&w=150&h=150",tostring(LocalPlayer.UserId))) or "";
  11291.  
  11292. if MarcoUI.SecureMode and string.find(config.UserProfile, "rbxassetid://",1,true) then
  11293. config.UserProfile = MarcoUI:_GetIcon("user");
  11294. end;
  11295.  
  11296. UserText.Text = config.Username;
  11297. CompLogo.Image = config.Logo;
  11298. ExpireText.Text = config.ExpireDate;
  11299. WindowLabel.Text = config.WindowName;
  11300. UserProfile.Image = config.UserProfile;
  11301. WindowArgs.Username = config.Username;
  11302.  
  11303. Config.Logo = config.Logo or Config.Logo;
  11304. WindowArgs.Username = config.Username or WindowArgs.Username;
  11305. WindowArgs.ExipreDate = config.ExpireDate or WindowArgs.ExipreDate;
  11306. Config.Name = config.WindowName or Config.Name;
  11307. WindowArgs.Profile = config.UserProfile or WindowArgs.Profile;
  11308. end;
  11309.  
  11310. WindowArgs.LOOP_THREAD = task.spawn(function()
  11311. local TimeTic = tick();
  11312.  
  11313. local BlurElement = Instance.new("Frame")
  11314.  
  11315. BlurElement.Name = MarcoUI:_RandomString()
  11316. BlurElement.Parent = MainFrame
  11317. BlurElement.AnchorPoint = Vector2.new(1, 0.5)
  11318. BlurElement.BackgroundTransparency = 1.000
  11319. BlurElement.BorderColor3 = Color3.fromRGB(0, 0, 0)
  11320. BlurElement.BorderSizePixel = 0
  11321. BlurElement.Position = UDim2.new(1, -5, 0.5, 0)
  11322. BlurElement.Size = UDim2.new(1, 0, 1, 0)
  11323. BlurElement.ZIndex = -100
  11324. BlurElement.Active = true
  11325.  
  11326. MarcoUI:_Blur(BlurElement , WindowOpen);
  11327.  
  11328. local MovementFrame = Instance.new("Frame")
  11329.  
  11330. MovementFrame.Name = MarcoUI:_RandomString()
  11331. MovementFrame.Parent = MainFrame
  11332. MovementFrame.AnchorPoint = Vector2.new(1, 0.5)
  11333. MovementFrame.BackgroundTransparency = 1.000
  11334. MovementFrame.BorderColor3 = Color3.fromRGB(0, 0, 0)
  11335. MovementFrame.BorderSizePixel = 0
  11336. MovementFrame.Position = UDim2.new(1, 0, 0.5, 0)
  11337. MovementFrame.Size = UDim2.new(1, 0, 1, 0)
  11338. MovementFrame.ZIndex = 9
  11339.  
  11340. MarcoUI:Drag(MovementFrame,MainFrame,0.1)
  11341.  
  11342. SelectionFrame.Position = UDim2.new(1, 5, 0, 28)
  11343. SelectionFrame.Size = UDim2.new(0, 8, 0, 22)
  11344.  
  11345. table.insert(MarcoUI.Elements.Highlight,{
  11346. Element = SelectionFrame,
  11347. Property = "BackgroundColor3"
  11348. });
  11349.  
  11350. while true do task.wait(0.01);
  11351. BlurElement.Size = UDim2.new(1, TabFrame.AbsoluteSize.X - 35, 1, 0);
  11352. MovementFrame.Size = UDim2.new(1, TabFrame.AbsoluteSize.X - 35, 1, 0);
  11353.  
  11354. SelectionFrame.BackgroundColor3 = MarcoUI.Colors.Highlight;
  11355.  
  11356. if WindowArgs.SelectedTab and WindowArgs.IsOpen then
  11357. local vili = -(TabButtons.AbsolutePosition.Y - WindowArgs.SelectedTab.AbsolutePosition.Y) + 4;
  11358. local distance = (SelectionFrame.Position.Y.Offset - vili);
  11359.  
  11360. if vili < 0 or vili > TabButtons.AbsoluteSize.Y then
  11361. MarcoUI:_Animation(SelectionFrame , TweenInfo.new(0.1) , {
  11362. BackgroundTransparency = 1
  11363. });
  11364. else
  11365. if math.abs(distance) <= 10 then
  11366. MarcoUI:_Animation(SelectionFrame , TweenInfo.new(0.1) , {
  11367. BackgroundTransparency = 0
  11368. });
  11369.  
  11370. SelectionFrame.Position = UDim2.new(1,5,0,math.ceil(vili));
  11371. else
  11372. MarcoUI:_Animation(SelectionFrame , TweenInfo.new(0.15) , {
  11373. BackgroundTransparency = 0,
  11374. Position = UDim2.new(1,5,0,math.ceil(vili))
  11375. });
  11376. end;
  11377. end;
  11378. else
  11379. MarcoUI:_Animation(SelectionFrame , TweenInfo.new(0.15) , {
  11380. BackgroundTransparency = 1
  11381. });
  11382. end;
  11383.  
  11384. if WindowArgs.AlwayShowTab then
  11385. TabHover:Fire(true);
  11386. end;
  11387. end;
  11388. end);
  11389.  
  11390. WindowArgs:Update();
  11391.  
  11392. local OldDelayThread;
  11393. local DurationTime = tick();
  11394.  
  11395. MarcoUI:_Hover(TabFrame , function()
  11396. if OldDelayThread then
  11397. task.cancel(OldDelayThread);
  11398. OldDelayThread = nil;
  11399. end;
  11400.  
  11401. if WindowArgs.AlwayShowTab then
  11402. return;
  11403. end;
  11404.  
  11405. DurationTime = tick();
  11406.  
  11407. TabHover:Fire(true);
  11408. end , function()
  11409. if OldDelayThread then
  11410. task.cancel(OldDelayThread);
  11411. OldDelayThread = nil;
  11412. end;
  11413.  
  11414. if WindowArgs.AlwayShowTab then
  11415. return;
  11416. end;
  11417.  
  11418. OldDelayThread = task.delay(math.clamp((tick() - DurationTime) , 0.01,5),function()
  11419. if TabHover:GetValue() then
  11420. TabHover:Fire(false);
  11421. end
  11422. end);
  11423. end);
  11424.  
  11425. -- Unload function: Plays goodbye animation then destroys
  11426. function WindowArgs:Unload()
  11427. -- Goodbye animation: Scale down and fade out
  11428. MarcoUI:_Animation(MainFrame, TweenInfo.new(0.5, Enum.EasingStyle.Exponential, Enum.EasingDirection.In), {
  11429. Size = UDim2.new(0, 0, 0, 0),
  11430. BackgroundTransparency = 1
  11431. });
  11432.  
  11433. -- Wait for animation then destroy
  11434. task.wait(0.5);
  11435. if WindowGui and WindowGui.Parent then
  11436. WindowGui:Destroy();
  11437. end;
  11438. end;
  11439.  
  11440. -- Destroy function: Immediately destroys without animation
  11441. function WindowArgs:Destroy()
  11442. if WindowGui and WindowGui.Parent then
  11443. WindowGui:Destroy();
  11444. end;
  11445. end;
  11446.  
  11447. return WindowArgs;
  11448. end;
  11449.  
  11450. function MarcoUI:GetDate(Time)
  11451. Time = Time or tick();
  11452.  
  11453. local val = os.date('*t',Time);
  11454.  
  11455. return string.format("%s/%s/%s",val.day,val.month,val.year);
  11456. end;
  11457.  
  11458. function MarcoUI:GetTimeNow(Time)
  11459. Time = Time or tick();
  11460.  
  11461. local val = os.date('*t',Time);
  11462.  
  11463. return string.format("%s:%s:%s",val.hour,val.min,val.sec);
  11464. end;
  11465.  
  11466. function MarcoUI:GetConfig(Type: string)
  11467. local ConfigFlags = {};
  11468.  
  11469. for i,v in next , MarcoUI.Flags do
  11470. local Value = v:GetValue();
  11471. local Suf = {};
  11472.  
  11473. if typeof(Value) == "table" and Value.ColorPicker and typeof(Value.ColorPicker) == 'table' then
  11474. Suf.Color3 = {
  11475. R = Value.ColorPicker.Color.R,
  11476. G = Value.ColorPicker.Color.G,
  11477. B = Value.ColorPicker.Color.B
  11478. };
  11479.  
  11480. Suf.Transparency = Value.ColorPicker.Transparency;
  11481.  
  11482. Suf.Type = "ColorPicker";
  11483. else
  11484. Suf.Value = Value;
  11485. Suf.Type = "NormalElement";
  11486. end;
  11487.  
  11488. if Type == "KV" then
  11489. ConfigFlags[v.Flag] = {
  11490. Flag = v.Flag,
  11491. Value = Suf,
  11492. Functions = v,
  11493. AutoKeybind = (v.AutoKeybind and v.AutoKeybind:GetSettings());
  11494. }
  11495. elseif Type == "MK" then
  11496. ConfigFlags[v.Flag] = {
  11497. Flag = v.Flag,
  11498. Value = Suf,
  11499. AutoKeybind = (v.AutoKeybind and v.AutoKeybind:GetSettings());
  11500. }
  11501. else
  11502. table.insert(ConfigFlags , {
  11503. Flag = v.Flag,
  11504. Value = Suf,
  11505. AutoKeybind = (v.AutoKeybind and v.AutoKeybind:GetSettings());
  11506. })
  11507. end;
  11508. end;
  11509.  
  11510. return ConfigFlags;
  11511. end;
  11512.  
  11513. function MarcoUI:_Path(...)
  11514. local args = {...};
  11515.  
  11516. return table.concat(args, "/");
  11517. end;
  11518.  
  11519. function MarcoUI:ConfigManager(ConfigManager: ConfigManager) : ConfigFunctions
  11520. ConfigManager = MarcoUI.__CONFIG(ConfigManager , {
  11521. Directory = "MarcoUI",
  11522. Config = "Software"
  11523. });
  11524.  
  11525. if not isfolder(ConfigManager.Directory) then
  11526. makefolder(ConfigManager.Directory);
  11527. end;
  11528.  
  11529. if not isfolder(MarcoUI:_Path(ConfigManager.Directory , ConfigManager.Config)) then
  11530. makefolder(MarcoUI:_Path(ConfigManager.Directory , ConfigManager.Config));
  11531. end;
  11532.  
  11533. local Args = {
  11534. Directory = MarcoUI:_Path(ConfigManager.Directory , ConfigManager.Config);
  11535. EnableNotify = false,
  11536. };
  11537.  
  11538. local notify = MarcoUI.newNotify();
  11539.  
  11540. function Args:WriteConfig(Config: WriteConfig)
  11541. Config = MarcoUI.__CONFIG(Config , {
  11542. Name = MarcoUI:_RandomString(),
  11543. Author = (LocalPlayer and LocalPlayer.Name) or "Player",
  11544. });
  11545.  
  11546. local Flags = MarcoUI:GetConfig("MK");
  11547.  
  11548. Flags["__INFORMATION"] = {
  11549. Type = "Information",
  11550. Author = Config.Author,
  11551. Name = Config.Name,
  11552. CreatedDate = MarcoUI:GetDate()
  11553. };
  11554.  
  11555. if Args.EnableNotify then
  11556. notify.new({
  11557. Title = "Configs",
  11558. Icon = MarcoUI:_GetIcon('settings'),
  11559. Content = "Create config \""..Config.Name.."\""
  11560. })
  11561. end
  11562.  
  11563. writefile(MarcoUI:_Path(Args.Directory , Config.Name) , HttpService:JSONEncode(Flags));
  11564. end;
  11565.  
  11566. function Args:LoadConfigFromString(str: string)
  11567. local decoded = HttpService:JSONDecode(str);
  11568.  
  11569. local Flags = MarcoUI:GetConfig("KV");
  11570.  
  11571. for i,v in next , decoded do
  11572. if v and v.Flag then
  11573.  
  11574. local Value = Flags[v.Flag];
  11575.  
  11576. if Value then
  11577.  
  11578. if v.Value.Type == "NormalElement" then
  11579. Value.Functions:SetValue(v.Value.Value);
  11580.  
  11581. elseif v.Value.Type == "ColorPicker" then
  11582.  
  11583. local Color = Color3.new(v.Value.Color3.R,v.Value.Color3.G,v.Value.Color3.B);
  11584.  
  11585. local Transparency = v.Value.Transparency;
  11586.  
  11587. Value.Functions:SetValue(Color , Transparency);
  11588. end;
  11589. end;
  11590. end
  11591. end;
  11592. end;
  11593.  
  11594. function Args:GetCurrentConfig()
  11595. return MarcoUI:GetConfig("MK")
  11596. end;
  11597.  
  11598. function Args:ReadInfo(ConfigName: string)
  11599. local _path = MarcoUI:_Path(Args.Directory , ConfigName);
  11600.  
  11601. if isfile(_path) then
  11602. local info = readfile(_path);
  11603.  
  11604. local decoded = HttpService:JSONDecode(info);
  11605.  
  11606. return decoded.__INFORMATION;
  11607. end;
  11608.  
  11609. return false;
  11610. end;
  11611.  
  11612. function Args:GetConfigs()
  11613. local names = {};
  11614.  
  11615. for i,v in next , listfiles(Args.Directory) do
  11616. local Name = string.sub(v , #Args.Directory + 2);
  11617.  
  11618. table.insert(names , Name);
  11619. end;
  11620.  
  11621. return names;
  11622. end;
  11623.  
  11624. function Args:GetFullConfigs()
  11625. local names = {};
  11626.  
  11627. for i,v in next , listfiles(Args.Directory) do
  11628. local Name = string.sub(v , #Args.Directory + 2);
  11629. local Info = Args:ReadInfo(Name);
  11630.  
  11631. table.insert(names , {
  11632. Name = Name,
  11633. Info = Info,
  11634. });
  11635. end;
  11636.  
  11637. return names;
  11638. end;
  11639.  
  11640. function Args:DeleteConfig(ConfigName)
  11641. local _path = MarcoUI:_Path(Args.Directory,ConfigName);
  11642.  
  11643. if Args.EnableNotify then
  11644. notify.new({
  11645. Title = "Configs",
  11646. Icon = MarcoUI:_GetIcon('settings'),
  11647. Content = "Delete config \""..ConfigName.."\""
  11648. })
  11649. end
  11650.  
  11651. if isfile(_path) then
  11652. delfile(_path);
  11653. end;
  11654. end;
  11655.  
  11656. function Args:GetConfigCount()
  11657. return #listfiles(Args.Directory);
  11658. end;
  11659.  
  11660. function Args:LoadConfig(ConfigName: string)
  11661. local _path = MarcoUI:_Path(Args.Directory,ConfigName);
  11662.  
  11663. if isfile(_path) then
  11664. local info = readfile(_path);
  11665.  
  11666. local decoded = HttpService:JSONDecode(info);
  11667.  
  11668. local Flags = MarcoUI:GetConfig("KV");
  11669.  
  11670. if Args.EnableNotify then
  11671. notify.new({
  11672. Title = "Configs",
  11673. Icon = MarcoUI:_GetIcon('settings'),
  11674. Content = "Load config \""..ConfigName.."\""
  11675. })
  11676. end
  11677.  
  11678. for i,v in next , decoded do
  11679. if v and v.Flag then
  11680.  
  11681. local Value = Flags[v.Flag];
  11682.  
  11683. if Value then
  11684.  
  11685. if v.Value.Type == "NormalElement" then
  11686. Value.Functions:SetValue(v.Value.Value);
  11687.  
  11688. elseif v.Value.Type == "ColorPicker" then
  11689.  
  11690. local Color = Color3.new(v.Value.Color3.R,v.Value.Color3.G,v.Value.Color3.B);
  11691.  
  11692. local Transparency = v.Value.Transparency;
  11693.  
  11694. Value.Functions:SetValue(Color , Transparency);
  11695. end;
  11696.  
  11697. if Value.Functions.AutoKeybind then
  11698. if v.AutoKeybind then
  11699. Value.Functions.AutoKeybind:LoadSettings(v.AutoKeybind)
  11700. end;
  11701. end;
  11702. end;
  11703. end
  11704. end;
  11705. end;
  11706. end;
  11707.  
  11708. return Args;
  11709. end;
  11710.  
  11711. function MarcoUI:Loader(IconId,Duration)
  11712. local LoaderGui = Instance.new("ScreenGui")
  11713.  
  11714. LoaderGui.Name = self:_RandomString()
  11715. LoaderGui.Parent = CoreGui
  11716. LoaderGui.Enabled = true
  11717. LoaderGui.ResetOnSpawn = false
  11718. LoaderGui.IgnoreGuiInset = true
  11719. LoaderGui.ZIndexBehavior = Enum.ZIndexBehavior.Global
  11720.  
  11721. local Loader = Instance.new("Frame")
  11722. local Icon = Instance.new("ImageLabel")
  11723. local Vignette = Instance.new("ImageLabel")
  11724.  
  11725. Loader.Name = self:_RandomString()
  11726. Loader.Parent = LoaderGui
  11727. Loader.AnchorPoint = Vector2.new(0.5, 0.5)
  11728. Loader.BackgroundColor3 = Color3.fromRGB(0, 0, 0)
  11729. Loader.BackgroundTransparency = 1
  11730. Loader.BorderColor3 = Color3.fromRGB(0, 0, 0)
  11731. Loader.BorderSizePixel = 0
  11732. Loader.Position = UDim2.new(0.5, 0, 0.5, 0)
  11733. Loader.Size = UDim2.new(1, 0, 1, 0)
  11734.  
  11735. Icon.Name = self:_RandomString()
  11736. Icon.Parent = Loader
  11737. Icon.AnchorPoint = Vector2.new(0.5, 0.5)
  11738. Icon.BackgroundTransparency = 1.000
  11739. Icon.BorderColor3 = Color3.fromRGB(0, 0, 0)
  11740. Icon.BorderSizePixel = 0
  11741. Icon.Position = UDim2.new(0.5, 0, 0.5, 0)
  11742. Icon.Size = UDim2.new(0, 750, 0, 750)
  11743. Icon.ZIndex = 100
  11744. Icon.Image = IconId or self.Logo;
  11745. Icon.ImageTransparency = 1
  11746.  
  11747. Vignette.Name = self:_RandomString()
  11748. Vignette.Parent = Loader
  11749. Vignette.BackgroundTransparency = 1.000
  11750. Vignette.BorderColor3 = Color3.fromRGB(27, 42, 53)
  11751. Vignette.BorderSizePixel = 0
  11752. Vignette.Size = UDim2.new(1, 0, 1, 0)
  11753. Vignette.Image = self:CacheImage("rbxassetid://18720640102")
  11754. Vignette.ImageColor3 = self.Colors.Highlight
  11755. Vignette.ImageTransparency = 1
  11756. Vignette.AnchorPoint = Vector2.new(0.5,0.5)
  11757. Vignette.Position = UDim2.fromScale(0.5,0.5)
  11758.  
  11759. self:_Animation(Loader,TweenInfo.new(0.55,Enum.EasingStyle.Quint),{
  11760. BackgroundTransparency = 0.5
  11761. });
  11762.  
  11763. local Event = Instance.new('BindableEvent');
  11764.  
  11765. task.delay(0.5,function()
  11766. self:_Animation(Icon,TweenInfo.new(0.75,Enum.EasingStyle.Quint),{
  11767. ImageTransparency = 0.01,
  11768. Size = UDim2.new(0, 200, 0, 200)
  11769. });
  11770.  
  11771. task.delay(0.25,function()
  11772. self:_Animation(Vignette,TweenInfo.new(5),{
  11773. ImageTransparency = 0.2
  11774. });
  11775.  
  11776. task.wait(Duration or 4.5)
  11777.  
  11778. self:_Animation(Vignette,TweenInfo.new(3,Enum.EasingStyle.Quint,Enum.EasingDirection.InOut),{
  11779. Size = UDim2.new(2, 0, 2, 0)
  11780. });
  11781.  
  11782. self:_Animation(Icon,TweenInfo.new(0.75,Enum.EasingStyle.Quint,Enum.EasingDirection.InOut),{
  11783. ImageTransparency = 1,
  11784. });
  11785.  
  11786. self:_Animation(Loader,TweenInfo.new(1.5,Enum.EasingStyle.Quint,Enum.EasingDirection.InOut),{
  11787. BackgroundTransparency = 1
  11788. });
  11789.  
  11790. task.delay(0.1,function()
  11791. self:_Animation(Vignette,TweenInfo.new(1,Enum.EasingStyle.Quint,Enum.EasingDirection.InOut),{
  11792. ImageTransparency = 1
  11793. });
  11794.  
  11795. task.wait(0.2)
  11796.  
  11797. task.delay(3,function()
  11798. LoaderGui:Destroy();
  11799. end)
  11800. end)
  11801.  
  11802. task.delay(0.6,function()
  11803. Event:Fire();
  11804. end)
  11805. end)
  11806. end);
  11807.  
  11808. return {
  11809. yield = function()
  11810. return Event.Event:Wait();
  11811. end
  11812. };
  11813. end;
  11814.  
  11815. function MarcoUI.newNotify()
  11816. if MarcoUI.NOTIFY_CACHE then
  11817. return MarcoUI.NOTIFY_CACHE;
  11818. end;
  11819.  
  11820. local Notification = Instance.new("ScreenGui")
  11821. local NotifyContainer = Instance.new("Frame")
  11822. local UIListLayout = Instance.new("UIListLayout")
  11823.  
  11824. Notification.Name = MarcoUI:_RandomString()
  11825. Notification.Parent = CoreGui;
  11826. Notification.ResetOnSpawn = false
  11827. Notification.ZIndexBehavior = Enum.ZIndexBehavior.Global
  11828.  
  11829. NotifyContainer.Name = MarcoUI:_RandomString()
  11830. NotifyContainer.Parent = Notification
  11831. NotifyContainer.AnchorPoint = Vector2.new(1, 0)
  11832. NotifyContainer.BackgroundColor3 = Color3.fromRGB(255, 255, 255)
  11833. NotifyContainer.BackgroundTransparency = 1.000
  11834. NotifyContainer.BorderColor3 = Color3.fromRGB(0, 0, 0)
  11835. NotifyContainer.BorderSizePixel = 0
  11836. NotifyContainer.Position = UDim2.new(1, -10, 0, 1)
  11837. NotifyContainer.Size = UDim2.new(0, 100, 0, 100)
  11838.  
  11839. UIListLayout.Parent = NotifyContainer
  11840. UIListLayout.HorizontalAlignment = Enum.HorizontalAlignment.Right
  11841. UIListLayout.SortOrder = Enum.SortOrder.LayoutOrder
  11842. UIListLayout.Padding = UDim.new(0, 3)
  11843.  
  11844. local LayoutREF = 0;
  11845.  
  11846. MarcoUI.NOTIFY_CACHE = {
  11847. new = function(Notify: Notify) : NotifyPayback
  11848. Notify = MarcoUI.__CONFIG(Notify, {
  11849. Icon = MarcoUI.Logo,
  11850. Title = "Notification",
  11851. Content = "Content",
  11852. Duration = 3,
  11853. });
  11854.  
  11855. LayoutREF -= 5;
  11856.  
  11857. local BlockFrame = Instance.new("Frame")
  11858. local NotifyFrame = Instance.new("Frame")
  11859. local UICorner = Instance.new("UICorner")
  11860. local CompLogo = Instance.new("ImageLabel")
  11861. local Header = Instance.new("TextLabel")
  11862. local Body = Instance.new("TextLabel")
  11863. local TimeLeftFrame = Instance.new("Frame")
  11864. local UICorner_2 = Instance.new("UICorner")
  11865. local TimeLeft = Instance.new("Frame")
  11866. local UICorner_3 = Instance.new("UICorner")
  11867.  
  11868. BlockFrame.Name = MarcoUI:_RandomString()
  11869. BlockFrame.Parent = NotifyContainer
  11870. BlockFrame.AnchorPoint = Vector2.new(1, 0)
  11871. BlockFrame.BackgroundColor3 = MarcoUI.Colors.BGDBColor
  11872. BlockFrame.BackgroundTransparency = 1.000
  11873. BlockFrame.BorderColor3 = Color3.fromRGB(0, 0, 0)
  11874. BlockFrame.BorderSizePixel = 0
  11875. BlockFrame.ClipsDescendants = false
  11876. BlockFrame.Size = UDim2.new(0, 200, 0, 0)
  11877. BlockFrame.LayoutOrder = LayoutREF;
  11878.  
  11879.  
  11880. NotifyFrame.Name = MarcoUI:_RandomString()
  11881. NotifyFrame.Parent = BlockFrame
  11882. NotifyFrame.BackgroundColor3 = MarcoUI.Colors.BGDBColor
  11883. NotifyFrame.BackgroundTransparency = 0.100
  11884. NotifyFrame.BorderColor3 = Color3.fromRGB(0, 0, 0)
  11885. NotifyFrame.BorderSizePixel = 0
  11886. NotifyFrame.ClipsDescendants = false
  11887. NotifyFrame.Size = UDim2.new(1, 0, 1, -5)
  11888. NotifyFrame.ZIndex = 2
  11889. NotifyFrame.Position = UDim2.new(1,200,0,0)
  11890.  
  11891.  
  11892. UICorner.CornerRadius = UDim.new(0, 4)
  11893. UICorner.Parent = NotifyFrame
  11894.  
  11895. CompLogo.Name = MarcoUI:_RandomString()
  11896. CompLogo.Parent = NotifyFrame
  11897. CompLogo.BackgroundColor3 = Color3.fromRGB(255, 255, 255)
  11898. CompLogo.BackgroundTransparency = 1.000
  11899. CompLogo.BorderColor3 = Color3.fromRGB(0, 0, 0)
  11900. CompLogo.BorderSizePixel = 0
  11901. CompLogo.Position = UDim2.new(0, 6, 0, 6)
  11902. CompLogo.Size = UDim2.new(0, 25, 0, 25)
  11903. CompLogo.ZIndex = 4
  11904.  
  11905. if string.find(Notify.Icon,'cache-ck-',1,true) then
  11906. CompLogo.Image = Notify.Icon;
  11907. else
  11908. CompLogo.Image = MarcoUI:_GetIcon(Notify.Icon);
  11909. end;
  11910.  
  11911. if MarcoUI.CustomHighlightMode then
  11912. CompLogo.ImageColor3 = MarcoUI.Colors.Highlight;
  11913. end;
  11914.  
  11915. Header.Name = MarcoUI:_RandomString()
  11916. Header.Parent = NotifyFrame
  11917. Header.BackgroundColor3 = Color3.fromRGB(255, 255, 255)
  11918. Header.BackgroundTransparency = 1.000
  11919. Header.BorderColor3 = Color3.fromRGB(0, 0, 0)
  11920. Header.BorderSizePixel = 0
  11921. Header.Position = UDim2.new(0, 40, 0, 10)
  11922. Header.Size = UDim2.new(1, -50, 0, 15)
  11923. Header.ZIndex = 3
  11924. Header.Font = Enum.Font.GothamBold
  11925. Header.Text = Notify.Title
  11926. Header.TextColor3 = MarcoUI.Colors.SwitchColor
  11927. Header.TextSize = 14.000
  11928. Header.TextXAlignment = Enum.TextXAlignment.Left
  11929.  
  11930. Body.Name = MarcoUI:_RandomString()
  11931. Body.Parent = NotifyFrame
  11932. Body.BackgroundColor3 = Color3.fromRGB(255, 255, 255)
  11933. Body.BackgroundTransparency = 1.000
  11934. Body.BorderColor3 = Color3.fromRGB(0, 0, 0)
  11935. Body.BorderSizePixel = 0
  11936. Body.Position = UDim2.new(0, 10, 0, 33)
  11937. Body.Size = UDim2.new(1, -15, 0, 30)
  11938. Body.ZIndex = 3
  11939. Body.Font = Enum.Font.GothamMedium
  11940. Body.Text = Notify.Content
  11941. Body.TextColor3 = MarcoUI.Colors.SwitchColor
  11942. Body.TextSize = 12.000
  11943. Body.TextTransparency = 0.500
  11944. Body.TextXAlignment = Enum.TextXAlignment.Left
  11945. Body.TextYAlignment = Enum.TextYAlignment.Top
  11946.  
  11947. TimeLeftFrame.Name = MarcoUI:_RandomString()
  11948. TimeLeftFrame.Parent = NotifyFrame
  11949. TimeLeftFrame.AnchorPoint = Vector2.new(0, 1)
  11950. TimeLeftFrame.BackgroundColor3 = Color3.fromRGB(255, 255, 255)
  11951. TimeLeftFrame.BackgroundTransparency = 1.000
  11952. TimeLeftFrame.BorderColor3 = Color3.fromRGB(0, 0, 0)
  11953. TimeLeftFrame.BorderSizePixel = 0
  11954. TimeLeftFrame.Position = UDim2.new(0, 0, 1, 1)
  11955. TimeLeftFrame.Size = UDim2.new(1, 0, 0, 5)
  11956. TimeLeftFrame.ZIndex = 5
  11957.  
  11958. UICorner_2.CornerRadius = UDim.new(0, 4)
  11959. UICorner_2.Parent = TimeLeftFrame
  11960.  
  11961. TimeLeft.Name = MarcoUI:_RandomString()
  11962. TimeLeft.Parent = TimeLeftFrame
  11963. TimeLeft.BackgroundColor3 = MarcoUI.Colors.Highlight
  11964. TimeLeft.BorderColor3 = Color3.fromRGB(0, 0, 0)
  11965. TimeLeft.BorderSizePixel = 0
  11966. TimeLeft.Size = UDim2.new(0, 0, 1, 0)
  11967. TimeLeft.ZIndex = 5
  11968.  
  11969. UICorner_3.CornerRadius = UDim.new(0, 1)
  11970. UICorner_3.Parent = TimeLeft
  11971.  
  11972. local UpdateText = function()
  11973. local TitleScale = TextService:GetTextSize(Header.Text,Header.TextSize,Header.Font,Vector2.new(math.huge,math.huge));
  11974. local BodyScale = TextService:GetTextSize(Body.Text,Body.TextSize,Body.Font,Vector2.new(math.huge,math.huge));
  11975.  
  11976. local MainX = (TitleScale.X >= BodyScale.X and TitleScale.X) or BodyScale.X;
  11977. local MainY = TitleScale.Y + ((Body.Text:byte() and BodyScale.Y) or 1);
  11978.  
  11979. if BlockFrame:GetAttribute('Already') then
  11980. MarcoUI:_Animation(BlockFrame,TweenInfo.new(0.3),{
  11981. Size = UDim2.new(0,MainX + 55,0,MainY + 35)
  11982. });
  11983. else
  11984. BlockFrame:SetAttribute('Already',true)
  11985. BlockFrame.Size = UDim2.new(0, MainX + 45, 0, 0);
  11986.  
  11987. MarcoUI:_Animation(BlockFrame,TweenInfo.new(0.3),{
  11988. Size = UDim2.new(0,MainX + 55,0,MainY + 35)
  11989. });
  11990. end;
  11991. end;
  11992.  
  11993. UpdateText();
  11994.  
  11995. local Close = function()
  11996. MarcoUI:_Animation(NotifyFrame,TweenInfo.new(0.65,Enum.EasingStyle.Quint),{
  11997. Position = UDim2.new(1,200,0,0)
  11998. });
  11999.  
  12000. task.wait(0.3);
  12001.  
  12002. MarcoUI:_Animation(BlockFrame,TweenInfo.new(0.3),{
  12003. Size = UDim2.new(1,0,0,0)
  12004. });
  12005.  
  12006. task.wait(0.35)
  12007. BlockFrame:Destroy();
  12008.  
  12009. end;
  12010.  
  12011. local Show = function()
  12012. MarcoUI:_Animation(NotifyFrame,TweenInfo.new(0.5,Enum.EasingStyle.Quint),{
  12013. Position = UDim2.new(0,0,0,0)
  12014. });
  12015. end;
  12016.  
  12017. if typeof(Notify.Duration) == 'number' and Notify.Duration ~= math.huge then
  12018. MarcoUI:_Animation(TimeLeft,TweenInfo.new(Notify.Duration + 0.2,Enum.EasingStyle.Linear),{
  12019. Size = UDim2.new(1, 0, 1, 0)
  12020. });
  12021.  
  12022. return task.delay(0.25,function()
  12023. Show();
  12024.  
  12025. task.delay(Notify.Duration + 0.2,Close)
  12026. end);
  12027. end;
  12028.  
  12029. Show();
  12030.  
  12031. return {
  12032. Title = function(self , new)
  12033. Header.Text = new;
  12034. UpdateText();
  12035. end,
  12036.  
  12037. Content = function(self , new)
  12038. Body.Text = new;
  12039. UpdateText();
  12040. end,
  12041.  
  12042. SetProgress = function(self , new , Time)
  12043. if Time and Time <= 0 then
  12044. TimeLeft.Size = UDim2.new(new, 0, 1, 0);
  12045.  
  12046. UpdateText();
  12047. return;
  12048. end;
  12049.  
  12050. if new > 1 then
  12051. new = (new / 100);
  12052. end;
  12053.  
  12054. MarcoUI:_Animation(TimeLeft,TweenInfo.new(Time or 0.85,(Time and Enum.EasingStyle.Linear) or Enum.EasingStyle.Quint),{
  12055. Size = UDim2.new(new, 0, 1, 0)
  12056. });
  12057.  
  12058. UpdateText();
  12059. end,
  12060.  
  12061. Close = Close,
  12062. }
  12063. end,
  12064. };
  12065.  
  12066. return MarcoUI.NOTIFY_CACHE;
  12067. end;
  12068.  
  12069. -- Ensure NilFolder exists before setting name
  12070. if MarcoUI.NilFolder then
  12071. pcall(function()
  12072. MarcoUI.NilFolder.Name = "Nil-Instances";
  12073. end);
  12074. end;
  12075.  
  12076. return MarcoUI;
  12077.  
Add Comment
Please, Sign In to add comment