Advertisement
Gaming--Madness

Polybattle GUI Script

Jun 7th, 2022 (edited)
1,654
0
Never
Not a member of Pastebin yet? Sign Up, it unlocks many cool features!
text 66.39 KB | None | 0 0
  1. --Roblox Polybattle Gui Script--
  2. ----------------------------------------------------------------------------------------------
  3. repeat task.wait() until game:IsLoaded() == true
  4. local injected = true
  5. local oldrainbow = false
  6. local customdir = (shared.VapePrivate and "vapeprivate/" or "vape/")
  7. local betterisfile = function(file)
  8. local suc, res = pcall(function() return readfile(file) end)
  9. return suc and res ~= nil
  10. end
  11. local function GetURL(scripturl)
  12. if shared.VapeDeveloper then
  13. if not betterisfile("vape/"..scripturl) then
  14. error("File not found : vape/"..scripturl)
  15. end
  16. return readfile("vape/"..scripturl)
  17. else
  18. local res = game:HttpGet("https://raw.githubusercontent.com/7GrandDadPGN/VapeV4ForRoblox/main/"..scripturl, true)
  19. assert(res ~= "404: Not Found", "File not found")
  20. return res
  21. end
  22. end
  23. local getasset = getsynasset or getcustomasset or function(location) return "rbxasset://"..location end
  24. local queueteleport = syn and syn.queue_on_teleport or queue_on_teleport or fluxus and fluxus.queue_on_teleport or function() end
  25. local requestfunc = syn and syn.request or http and http.request or http_request or fluxus and fluxus.request or request or function(tab)
  26. if tab.Method == "GET" then
  27. return {
  28. Body = game:HttpGet(tab.Url, true),
  29. Headers = {},
  30. StatusCode = 200
  31. }
  32. else
  33. return {
  34. Body = "bad exploit",
  35. Headers = {},
  36. StatusCode = 404
  37. }
  38. end
  39. end
  40.  
  41. local function checkassetversion()
  42. local req = requestfunc({
  43. Url = "https://raw.githubusercontent.com/7GrandDadPGN/VapeV4ForRoblox/main/assetsversion.dat",
  44. Method = "GET"
  45. })
  46. if req.StatusCode == 200 then
  47. return req.Body
  48. else
  49. return nil
  50. end
  51. end
  52.  
  53. if not (getasset and requestfunc and queueteleport) then
  54. print("Vape not supported with your exploit.")
  55. return
  56. end
  57.  
  58. if shared.VapeExecuted then
  59. error("Vape Already Injected")
  60. return
  61. else
  62. shared.VapeExecuted = true
  63. end
  64.  
  65. if isfolder(customdir:gsub("/", "")) == false then
  66. makefolder(customdir:gsub("/", ""))
  67. end
  68. if isfolder("vape") == false then
  69. makefolder("vape")
  70. end
  71. if not betterisfile("vape/assetsversion.dat") then
  72. writefile("vape/assetsversion.dat", "1")
  73. end
  74. if isfolder(customdir.."CustomModules") == false then
  75. makefolder(customdir.."CustomModules")
  76. end
  77. if isfolder(customdir.."Profiles") == false then
  78. makefolder(customdir.."Profiles")
  79. end
  80. if not betterisfile("vape/language.dat") then
  81. local suc, res = pcall(function() return gethiddenproperty(game:GetService("Players").LocalPlayer, "ReplicatedLocaleId") end)
  82. writefile("vape/language.dat", suc and res or "en-us")
  83. end
  84. if not pcall(function() return GetURL("translations/"..readfile("vape/language.dat")..".vapetranslation") end) then
  85. writefile("vape/language.dat", "en-us")
  86. end
  87. local assetver = checkassetversion()
  88. if assetver and assetver > readfile("vape/assetsversion.dat") then
  89. if shared.VapeDeveloper == nil then
  90. if isfolder("vape/assets") then
  91. if delfolder then
  92. delfolder("vape/assets")
  93. end
  94. end
  95. writefile("vape/assetsversion.dat", assetver)
  96. end
  97. end
  98. if isfolder("vape/assets") == false then
  99. makefolder("vape/assets")
  100. end
  101.  
  102. local GuiLibrary = loadstring(GetURL("NewGuiLibrary.lua"))()
  103. local translations = {}--loadstring(GetURL("translations/"..GuiLibrary["Language"]..".vapetranslation"))()
  104. local translatedlogo = false--pcall(function() return GetURL("translations/"..GuiLibrary["Language"].."/VapeLogo1.png") end)
  105.  
  106. local checkpublicreponum = 0
  107. local checkpublicrepo
  108. checkpublicrepo = function(id)
  109. local suc, req = pcall(function() return requestfunc({
  110. Url = "https://raw.githubusercontent.com/7GrandDadPGN/VapeV4ForRoblox/main/CustomModules/"..id..".vape",
  111. Method = "GET"
  112. }) end)
  113. if not suc then
  114. checkpublicreponum = checkpublicreponum + 1
  115. spawn(function()
  116. local textlabel = Instance.new("TextLabel")
  117. textlabel.Size = UDim2.new(1, 0, 0, 36)
  118. textlabel.Text = "Loading CustomModule Failed!, Attempts : "..checkpublicreponum
  119. textlabel.BackgroundTransparency = 1
  120. textlabel.TextStrokeTransparency = 0
  121. textlabel.TextSize = 30
  122. textlabel.Font = Enum.Font.SourceSans
  123. textlabel.TextColor3 = Color3.new(1, 1, 1)
  124. textlabel.Position = UDim2.new(0, 0, 0, -36)
  125. textlabel.Parent = GuiLibrary["MainGui"]
  126. task.wait(2)
  127. textlabel:Remove()
  128. end)
  129. task.wait(2)
  130. return checkpublicrepo(id)
  131. end
  132. if req.StatusCode == 200 then
  133. return req.Body
  134. end
  135. return nil
  136. end
  137.  
  138. local function getcustomassetfunc(path)
  139. if not betterisfile(path) then
  140. spawn(function()
  141. local textlabel = Instance.new("TextLabel")
  142. textlabel.Size = UDim2.new(1, 0, 0, 36)
  143. textlabel.Text = "Downloading "..path
  144. textlabel.BackgroundTransparency = 1
  145. textlabel.TextStrokeTransparency = 0
  146. textlabel.TextSize = 30
  147. textlabel.Font = Enum.Font.SourceSans
  148. textlabel.TextColor3 = Color3.new(1, 1, 1)
  149. textlabel.Position = UDim2.new(0, 0, 0, -36)
  150. textlabel.Parent = GuiLibrary["MainGui"]
  151. repeat task.wait() until betterisfile(path)
  152. textlabel:Remove()
  153. end)
  154. local req = requestfunc({
  155. Url = "https://raw.githubusercontent.com/7GrandDadPGN/VapeV4ForRoblox/main/"..path:gsub("vape/assets", "assets"),
  156. Method = "GET"
  157. })
  158. writefile(path, req.Body)
  159. end
  160. return getasset(path)
  161. end
  162.  
  163. shared.GuiLibrary = GuiLibrary
  164. local workspace = game:GetService("Workspace")
  165. local cam = workspace.CurrentCamera
  166. local selfdestructsave = coroutine.create(function()
  167. while task.wait(10) do
  168. if GuiLibrary and injected then
  169. if not injected then return end
  170. GuiLibrary["SaveSettings"]()
  171. else
  172. break
  173. end
  174. end
  175. end)
  176. local GUI = GuiLibrary.CreateMainWindow()
  177. local Combat = GuiLibrary.CreateWindow({
  178. ["Name"] = "Combat",
  179. ["Icon"] = "vape/assets/CombatIcon.png",
  180. ["IconSize"] = 15
  181. })
  182. local Blatant = GuiLibrary.CreateWindow({
  183. ["Name"] = "Blatant",
  184. ["Icon"] = "vape/assets/BlatantIcon.png",
  185. ["IconSize"] = 16
  186. })
  187. local Render = GuiLibrary.CreateWindow({
  188. ["Name"] = "Render",
  189. ["Icon"] = "vape/assets/RenderIcon.png",
  190. ["IconSize"] = 17
  191. })
  192. local Utility = GuiLibrary.CreateWindow({
  193. ["Name"] = "Utility",
  194. ["Icon"] = "vape/assets/UtilityIcon.png",
  195. ["IconSize"] = 17
  196. })
  197. local World = GuiLibrary.CreateWindow({
  198. ["Name"] = "World",
  199. ["Icon"] = "vape/assets/WorldIcon.png",
  200. ["IconSize"] = 16
  201. })
  202. local Friends = GuiLibrary.CreateWindow2({
  203. ["Name"] = "Friends",
  204. ["Icon"] = "vape/assets/FriendsIcon.png",
  205. ["IconSize"] = 17
  206. })
  207. local Profiles = GuiLibrary.CreateWindow2({
  208. ["Name"] = "Profiles",
  209. ["Icon"] = "vape/assets/ProfilesIcon.png",
  210. ["IconSize"] = 19
  211. })
  212. GUI.CreateDivider()
  213. GUI.CreateButton({
  214. ["Name"] = "Combat",
  215. ["Function"] = function(callback) Combat.SetVisible(callback) end,
  216. ["Icon"] = "vape/assets/CombatIcon.png",
  217. ["IconSize"] = 15
  218. })
  219. GUI.CreateButton({
  220. ["Name"] = "Blatant",
  221. ["Function"] = function(callback) Blatant.SetVisible(callback) end,
  222. ["Icon"] = "vape/assets/BlatantIcon.png",
  223. ["IconSize"] = 16
  224. })
  225. GUI.CreateButton({
  226. ["Name"] = "Render",
  227. ["Function"] = function(callback) Render.SetVisible(callback) end,
  228. ["Icon"] = "vape/assets/RenderIcon.png",
  229. ["IconSize"] = 17
  230. })
  231. GUI.CreateButton({
  232. ["Name"] = "Utility",
  233. ["Function"] = function(callback) Utility.SetVisible(callback) end,
  234. ["Icon"] = "vape/assets/UtilityIcon.png",
  235. ["IconSize"] = 17
  236. })
  237. GUI.CreateButton({
  238. ["Name"] = "World",
  239. ["Function"] = function(callback) World.SetVisible(callback) end,
  240. ["Icon"] = "vape/assets/WorldIcon.png",
  241. ["IconSize"] = 16
  242. })
  243. GUI.CreateDivider("MISC")
  244. GUI.CreateButton({
  245. ["Name"] = "Friends",
  246. ["Function"] = function(callback) Friends.SetVisible(callback) end,
  247. })
  248. GUI.CreateButton({
  249. ["Name"] = "Profiles",
  250. ["Function"] = function(callback) Profiles.SetVisible(callback) end,
  251. })
  252. local FriendsTextList = {["RefreshValues"] = function() end}
  253. local FriendsColor = {["Value"] = 0.44}
  254. FriendsTextList = Friends.CreateCircleTextList({
  255. ["Name"] = "FriendsList",
  256. ["TempText"] = "Username / Alias",
  257. ["Color"] = Color3.fromRGB(5, 133, 104),
  258. ["CustomFunction"] = function(obj)
  259. obj.ItemText.TextColor3 = Color3.new(1, 1, 1)
  260. local friendcircle = Instance.new("Frame")
  261. friendcircle.Size = UDim2.new(0, 10, 0, 10)
  262. friendcircle.Name = "FriendCircle"
  263. friendcircle.BackgroundColor3 = Color3.fromHSV(FriendsColor["Value"], 0.7, 0.9)
  264. friendcircle.BorderSizePixel = 0
  265. friendcircle.Position = UDim2.new(0, 10, 0, 13)
  266. friendcircle.Parent = obj
  267. local friendcorner = Instance.new("UICorner")
  268. friendcorner.CornerRadius = UDim.new(0, 8)
  269. friendcorner.Parent = friendcircle
  270. obj.ItemText.Position = UDim2.new(0, 36, 0, 0)
  271. obj.ItemText.Size = UDim2.new(0, 157, 0, 33)
  272. end
  273. })
  274. FriendsTextList.FriendRefresh = Instance.new("BindableEvent")
  275. spawn(function()
  276. local currentval = #FriendsTextList["ObjectList"]
  277. repeat
  278. task.wait(0.1)
  279. if currentval ~= #FriendsTextList["ObjectList"] then
  280. FriendsTextList.FriendRefresh:Fire()
  281. end
  282. currentval = #FriendsTextList["ObjectList"]
  283. until (not shared.VapeExecuted)
  284. end)
  285. Friends.CreateToggle({
  286. ["Name"] = "Use Friends",
  287. ["Function"] = function(callback) end,
  288. ["Default"] = true
  289. })
  290. Friends.CreateToggle({
  291. ["Name"] = "Use Alias",
  292. ["Function"] = function(callback) end,
  293. ["Default"] = true,
  294. })
  295. Friends.CreateToggle({
  296. ["Name"] = "Spoof alias",
  297. ["Function"] = function(callback) end,
  298. })
  299. Friends.CreateToggle({
  300. ["Name"] = "Recolor visuals",
  301. ["Function"] = function(callback) end,
  302. ["Default"] = true
  303. })
  304. FriendsColor = Friends.CreateColorSlider({
  305. ["Name"] = "Friends Color",
  306. ["Function"] = function(val)
  307.  
  308. end
  309. })
  310. local ProfilesTextList = {["RefreshValues"] = function() end}
  311. local profilesloaded = false
  312. ProfilesTextList = Profiles.CreateTextList({
  313. ["Name"] = "ProfilesList",
  314. ["TempText"] = "Type name",
  315. ["NoSave"] = true,
  316. ["AddFunction"] = function(user)
  317. GuiLibrary["Profiles"][user] = {["Keybind"] = "", ["Selected"] = false}
  318. local profiles = {}
  319. for i,v in pairs(GuiLibrary["Profiles"]) do
  320. table.insert(profiles, i)
  321. end
  322. table.sort(profiles, function(a, b) return b == "default" and true or a:lower() < b:lower() end)
  323. ProfilesTextList["RefreshValues"](profiles)
  324. end,
  325. ["RemoveFunction"] = function(num, obj)
  326. if obj ~= "default" and obj ~= GuiLibrary["CurrentProfile"] then
  327. pcall(function() delfile(customdir.."Profiles/"..obj..(shared.CustomSaveVape or game.PlaceId)..".vapeprofile.txt") end)
  328. GuiLibrary["Profiles"][obj] = nil
  329. else
  330. table.insert(ProfilesTextList["ObjectList"], obj)
  331. ProfilesTextList["RefreshValues"](ProfilesTextList["ObjectList"])
  332. end
  333. end,
  334. ["CustomFunction"] = function(obj, profilename)
  335. if GuiLibrary["Profiles"][profilename] == nil then
  336. GuiLibrary["Profiles"][profilename] = {["Keybind"] = ""}
  337. end
  338. obj.MouseButton1Click:connect(function()
  339. GuiLibrary["SwitchProfile"](profilename)
  340. end)
  341. local newsize = UDim2.new(0, 20, 0, 21)
  342. local bindbkg = Instance.new("TextButton")
  343. bindbkg.Text = ""
  344. bindbkg.AutoButtonColor = false
  345. bindbkg.Size = UDim2.new(0, 20, 0, 21)
  346. bindbkg.Position = UDim2.new(1, -50, 0, 6)
  347. bindbkg.BorderSizePixel = 0
  348. bindbkg.BackgroundColor3 = Color3.fromRGB(255, 255, 255)
  349. bindbkg.BackgroundTransparency = 0.95
  350. bindbkg.Visible = GuiLibrary["Profiles"][profilename]["Keybind"] ~= ""
  351. bindbkg.Parent = obj
  352. local bindimg = Instance.new("ImageLabel")
  353. bindimg.Image = getcustomassetfunc("vape/assets/KeybindIcon.png")
  354. bindimg.BackgroundTransparency = 1
  355. bindimg.Size = UDim2.new(0, 12, 0, 12)
  356. bindimg.Position = UDim2.new(0, 4, 0, 5)
  357. bindimg.ImageTransparency = 0.2
  358. bindimg.Active = false
  359. bindimg.Visible = (GuiLibrary["Profiles"][profilename]["Keybind"] == "")
  360. bindimg.Parent = bindbkg
  361. local bindtext = Instance.new("TextLabel")
  362. bindtext.Active = false
  363. bindtext.BackgroundTransparency = 1
  364. bindtext.TextSize = 16
  365. bindtext.Parent = bindbkg
  366. bindtext.Font = Enum.Font.SourceSans
  367. bindtext.Size = UDim2.new(1, 0, 1, 0)
  368. bindtext.TextColor3 = Color3.fromRGB(85, 85, 85)
  369. bindtext.Visible = (GuiLibrary["Profiles"][profilename]["Keybind"] ~= "")
  370. local bindtext2 = Instance.new("TextLabel")
  371. bindtext2.Text = "PRESS A KEY TO BIND"
  372. bindtext2.Size = UDim2.new(0, 150, 0, 33)
  373. bindtext2.Font = Enum.Font.SourceSans
  374. bindtext2.TextSize = 17
  375. bindtext2.TextColor3 = Color3.fromRGB(201, 201, 201)
  376. bindtext2.BackgroundColor3 = Color3.fromRGB(37, 37, 37)
  377. bindtext2.BorderSizePixel = 0
  378. bindtext2.Visible = false
  379. bindtext2.Parent = obj
  380. local bindround = Instance.new("UICorner")
  381. bindround.CornerRadius = UDim.new(0, 4)
  382. bindround.Parent = bindbkg
  383. bindbkg.MouseButton1Click:connect(function()
  384. if GuiLibrary["KeybindCaptured"] == false then
  385. GuiLibrary["KeybindCaptured"] = true
  386. spawn(function()
  387. bindtext2.Visible = true
  388. repeat task.wait() until GuiLibrary["PressedKeybindKey"] ~= ""
  389. local key = (GuiLibrary["PressedKeybindKey"] == GuiLibrary["Profiles"][profilename]["Keybind"] and "" or GuiLibrary["PressedKeybindKey"])
  390. if key == "" then
  391. GuiLibrary["Profiles"][profilename]["Keybind"] = key
  392. newsize = UDim2.new(0, 20, 0, 21)
  393. bindbkg.Size = newsize
  394. bindbkg.Visible = true
  395. bindbkg.Position = UDim2.new(1, -(30 + newsize.X.Offset), 0, 6)
  396. bindimg.Visible = true
  397. bindtext.Visible = false
  398. bindtext.Text = key
  399. else
  400. local textsize = game:GetService("TextService"):GetTextSize(key, 16, bindtext.Font, Vector2.new(99999, 99999))
  401. newsize = UDim2.new(0, 13 + textsize.X, 0, 21)
  402. GuiLibrary["Profiles"][profilename]["Keybind"] = key
  403. bindbkg.Visible = true
  404. bindbkg.Size = newsize
  405. bindbkg.Position = UDim2.new(1, -(30 + newsize.X.Offset), 0, 6)
  406. bindimg.Visible = false
  407. bindtext.Visible = true
  408. bindtext.Text = key
  409. end
  410. GuiLibrary["PressedKeybindKey"] = ""
  411. GuiLibrary["KeybindCaptured"] = false
  412. bindtext2.Visible = false
  413. end)
  414. end
  415. end)
  416. bindbkg.MouseEnter:connect(function()
  417. bindimg.Image = getcustomassetfunc("vape/assets/PencilIcon.png")
  418. bindimg.Visible = true
  419. bindtext.Visible = false
  420. bindbkg.Size = UDim2.new(0, 20, 0, 21)
  421. bindbkg.Position = UDim2.new(1, -50, 0, 6)
  422. end)
  423. bindbkg.MouseLeave:connect(function()
  424. bindimg.Image = getcustomassetfunc("vape/assets/KeybindIcon.png")
  425. if GuiLibrary["Profiles"][profilename]["Keybind"] ~= "" then
  426. bindimg.Visible = false
  427. bindtext.Visible = true
  428. bindbkg.Size = newsize
  429. bindbkg.Position = UDim2.new(1, -(30 + newsize.X.Offset), 0, 6)
  430. end
  431. end)
  432. obj.MouseEnter:connect(function()
  433. bindbkg.Visible = true
  434. end)
  435. obj.MouseLeave:connect(function()
  436. bindbkg.Visible = GuiLibrary["Profiles"][profilename] and GuiLibrary["Profiles"][profilename]["Keybind"] ~= ""
  437. end)
  438. if GuiLibrary["Profiles"][profilename]["Keybind"] ~= "" then
  439.  
  440. bindtext.Text = GuiLibrary["Profiles"][profilename]["Keybind"]
  441. local textsize = game:GetService("TextService"):GetTextSize(GuiLibrary["Profiles"][profilename]["Keybind"], 16, bindtext.Font, Vector2.new(99999, 99999))
  442. newsize = UDim2.new(0, 13 + textsize.X, 0, 21)
  443. bindbkg.Size = newsize
  444. bindbkg.Position = UDim2.new(1, -(30 + newsize.X.Offset), 0, 6)
  445. end
  446. if profilename == GuiLibrary["CurrentProfile"] then
  447. obj.BackgroundColor3 = Color3.fromHSV(GuiLibrary["Settings"]["GUIObject"]["Color"], 0.7, 0.9)
  448. obj.ImageButton.BackgroundColor3 = Color3.fromHSV(GuiLibrary["Settings"]["GUIObject"]["Color"], 0.7, 0.9)
  449. obj.ItemText.TextColor3 = Color3.new(1, 1, 1)
  450. obj.ItemText.TextStrokeTransparency = 0.75
  451. bindbkg.BackgroundTransparency = 0.9
  452. bindtext.TextColor3 = Color3.fromRGB(214, 214, 214)
  453. end
  454. end
  455. })
  456. local OnlineProfilesButton = Instance.new("TextButton")
  457. OnlineProfilesButton.Name = "OnlineProfilesButton"
  458. OnlineProfilesButton.LayoutOrder = 1
  459. OnlineProfilesButton.AutoButtonColor = false
  460. OnlineProfilesButton.Size = UDim2.new(0, 45, 0, 29)
  461. OnlineProfilesButton.BackgroundColor3 = Color3.fromRGB(26, 25, 26)
  462. OnlineProfilesButton.Active = false
  463. OnlineProfilesButton.Text = ""
  464. OnlineProfilesButton.ZIndex = 1
  465. OnlineProfilesButton.Font = Enum.Font.SourceSans
  466. OnlineProfilesButton.TextXAlignment = Enum.TextXAlignment.Left
  467. OnlineProfilesButton.Position = UDim2.new(0, 166, 0, 6)
  468. OnlineProfilesButton.Parent = ProfilesTextList["Object"]
  469. local OnlineProfilesButtonBKG = Instance.new("UIStroke")
  470. OnlineProfilesButtonBKG.Color = Color3.fromRGB(38, 37, 38)
  471. OnlineProfilesButtonBKG.Thickness = 1
  472. OnlineProfilesButtonBKG.ApplyStrokeMode = Enum.ApplyStrokeMode.Border
  473. OnlineProfilesButtonBKG.Parent = OnlineProfilesButton
  474. local OnlineProfilesButtonImage = Instance.new("ImageLabel")
  475. OnlineProfilesButtonImage.BackgroundTransparency = 1
  476. OnlineProfilesButtonImage.Position = UDim2.new(0, 14, 0, 7)
  477. OnlineProfilesButtonImage.Size = UDim2.new(0, 17, 0, 16)
  478. OnlineProfilesButtonImage.Image = getcustomassetfunc("vape/assets/OnlineProfilesButton.png")
  479. OnlineProfilesButtonImage.ImageColor3 = Color3.fromRGB(121, 121, 121)
  480. OnlineProfilesButtonImage.ZIndex = 1
  481. OnlineProfilesButtonImage.Active = false
  482. OnlineProfilesButtonImage.Parent = OnlineProfilesButton
  483. local OnlineProfilesbuttonround1 = Instance.new("UICorner")
  484. OnlineProfilesbuttonround1.CornerRadius = UDim.new(0, 5)
  485. OnlineProfilesbuttonround1.Parent = OnlineProfilesButton
  486. local OnlineProfilesbuttonround2 = Instance.new("UICorner")
  487. OnlineProfilesbuttonround2.CornerRadius = UDim.new(0, 5)
  488. OnlineProfilesbuttonround2.Parent = OnlineProfilesButtonBKG
  489. local OnlineProfilesFrame = Instance.new("Frame")
  490. OnlineProfilesFrame.Size = UDim2.new(0, 660, 0, 445)
  491. OnlineProfilesFrame.Position = UDim2.new(0.5, -330, 0.5, -223)
  492. OnlineProfilesFrame.BackgroundColor3 = Color3.fromRGB(26, 25, 26)
  493. OnlineProfilesFrame.Parent = GuiLibrary["MainGui"].ScaledGui.OnlineProfiles
  494. local OnlineProfilesExitButton = Instance.new("ImageButton")
  495. OnlineProfilesExitButton.Name = "OnlineProfilesExitButton"
  496. OnlineProfilesExitButton.ImageColor3 = Color3.fromRGB(121, 121, 121)
  497. OnlineProfilesExitButton.Size = UDim2.new(0, 24, 0, 24)
  498. OnlineProfilesExitButton.AutoButtonColor = false
  499. OnlineProfilesExitButton.Image = getcustomassetfunc("vape/assets/ExitIcon1.png")
  500. OnlineProfilesExitButton.Visible = true
  501. OnlineProfilesExitButton.Position = UDim2.new(1, -31, 0, 8)
  502. OnlineProfilesExitButton.BackgroundColor3 = Color3.fromRGB(26, 25, 26)
  503. OnlineProfilesExitButton.Parent = OnlineProfilesFrame
  504. local OnlineProfilesExitButtonround = Instance.new("UICorner")
  505. OnlineProfilesExitButtonround.CornerRadius = UDim.new(0, 16)
  506. OnlineProfilesExitButtonround.Parent = OnlineProfilesExitButton
  507. OnlineProfilesExitButton.MouseEnter:connect(function()
  508. game:GetService("TweenService"):Create(OnlineProfilesExitButton, TweenInfo.new(0.1, Enum.EasingStyle.Quad, Enum.EasingDirection.InOut), {BackgroundColor3 = Color3.fromRGB(60, 60, 60), ImageColor3 = Color3.fromRGB(255, 255, 255)}):Play()
  509. end)
  510. OnlineProfilesExitButton.MouseLeave:connect(function()
  511. game:GetService("TweenService"):Create(OnlineProfilesExitButton, TweenInfo.new(0.1, Enum.EasingStyle.Quad, Enum.EasingDirection.InOut), {BackgroundColor3 = Color3.fromRGB(26, 25, 26), ImageColor3 = Color3.fromRGB(121, 121, 121)}):Play()
  512. end)
  513. local OnlineProfilesFrameShadow = Instance.new("ImageLabel")
  514. OnlineProfilesFrameShadow.AnchorPoint = Vector2.new(0.5, 0.5)
  515. OnlineProfilesFrameShadow.Position = UDim2.new(0.5, 0, 0.5, 0)
  516. OnlineProfilesFrameShadow.Image = getcustomassetfunc("vape/assets/WindowBlur.png")
  517. OnlineProfilesFrameShadow.BackgroundTransparency = 1
  518. OnlineProfilesFrameShadow.ZIndex = -1
  519. OnlineProfilesFrameShadow.Size = UDim2.new(1, 6, 1, 6)
  520. OnlineProfilesFrameShadow.ImageColor3 = Color3.new(0, 0, 0)
  521. OnlineProfilesFrameShadow.ScaleType = Enum.ScaleType.Slice
  522. OnlineProfilesFrameShadow.SliceCenter = Rect.new(10, 10, 118, 118)
  523. OnlineProfilesFrameShadow.Parent = OnlineProfilesFrame
  524. local OnlineProfilesFrameIcon = Instance.new("ImageLabel")
  525. OnlineProfilesFrameIcon.Size = UDim2.new(0, 19, 0, 16)
  526. OnlineProfilesFrameIcon.Image = getcustomassetfunc("vape/assets/ProfilesIcon.png")
  527. OnlineProfilesFrameIcon.Name = "WindowIcon"
  528. OnlineProfilesFrameIcon.BackgroundTransparency = 1
  529. OnlineProfilesFrameIcon.Position = UDim2.new(0, 10, 0, 13)
  530. OnlineProfilesFrameIcon.ImageColor3 = Color3.fromRGB(200, 200, 200)
  531. OnlineProfilesFrameIcon.Parent = OnlineProfilesFrame
  532. local OnlineProfilesFrameText = Instance.new("TextLabel")
  533. OnlineProfilesFrameText.Size = UDim2.new(0, 155, 0, 41)
  534. OnlineProfilesFrameText.BackgroundTransparency = 1
  535. OnlineProfilesFrameText.Name = "WindowTitle"
  536. OnlineProfilesFrameText.Position = UDim2.new(0, 36, 0, 0)
  537. OnlineProfilesFrameText.TextXAlignment = Enum.TextXAlignment.Left
  538. OnlineProfilesFrameText.Font = Enum.Font.SourceSans
  539. OnlineProfilesFrameText.TextSize = 17
  540. OnlineProfilesFrameText.Text = "Profiles"
  541. OnlineProfilesFrameText.TextColor3 = Color3.fromRGB(201, 201, 201)
  542. OnlineProfilesFrameText.Parent = OnlineProfilesFrame
  543. local OnlineProfilesFrameText2 = Instance.new("TextLabel")
  544. OnlineProfilesFrameText2.TextSize = 15
  545. OnlineProfilesFrameText2.TextColor3 = Color3.fromRGB(85, 84, 85)
  546. OnlineProfilesFrameText2.Text = "YOUR PROFILES"
  547. OnlineProfilesFrameText2.Font = Enum.Font.SourceSans
  548. OnlineProfilesFrameText2.BackgroundTransparency = 1
  549. OnlineProfilesFrameText2.TextXAlignment = Enum.TextXAlignment.Left
  550. OnlineProfilesFrameText2.TextYAlignment = Enum.TextYAlignment.Top
  551. OnlineProfilesFrameText2.Size = UDim2.new(1, 0, 0, 20)
  552. OnlineProfilesFrameText2.Position = UDim2.new(0, 10, 0, 48)
  553. OnlineProfilesFrameText2.Parent = OnlineProfilesFrame
  554. local OnlineProfilesFrameText3 = Instance.new("TextLabel")
  555. OnlineProfilesFrameText3.TextSize = 15
  556. OnlineProfilesFrameText3.TextColor3 = Color3.fromRGB(85, 84, 85)
  557. OnlineProfilesFrameText3.Text = "PUBLIC PROFILES"
  558. OnlineProfilesFrameText3.Font = Enum.Font.SourceSans
  559. OnlineProfilesFrameText3.BackgroundTransparency = 1
  560. OnlineProfilesFrameText3.TextXAlignment = Enum.TextXAlignment.Left
  561. OnlineProfilesFrameText3.TextYAlignment = Enum.TextYAlignment.Top
  562. OnlineProfilesFrameText3.Size = UDim2.new(1, 0, 0, 20)
  563. OnlineProfilesFrameText3.Position = UDim2.new(0, 231, 0, 48)
  564. OnlineProfilesFrameText3.Parent = OnlineProfilesFrame
  565. local OnlineProfilesBorder1 = Instance.new("Frame")
  566. OnlineProfilesBorder1.BackgroundColor3 = Color3.fromRGB(40, 39, 40)
  567. OnlineProfilesBorder1.BorderSizePixel = 0
  568. OnlineProfilesBorder1.Size = UDim2.new(1, 0, 0, 1)
  569. OnlineProfilesBorder1.Position = UDim2.new(0, 0, 0, 41)
  570. OnlineProfilesBorder1.Parent = OnlineProfilesFrame
  571. local OnlineProfilesBorder2 = Instance.new("Frame")
  572. OnlineProfilesBorder2.BackgroundColor3 = Color3.fromRGB(40, 39, 40)
  573. OnlineProfilesBorder2.BorderSizePixel = 0
  574. OnlineProfilesBorder2.Size = UDim2.new(0, 1, 1, -41)
  575. OnlineProfilesBorder2.Position = UDim2.new(0, 220, 0, 41)
  576. OnlineProfilesBorder2.Parent = OnlineProfilesFrame
  577. local OnlineProfilesList = Instance.new("ScrollingFrame")
  578. OnlineProfilesList.BackgroundTransparency = 1
  579. OnlineProfilesList.Size = UDim2.new(0, 408, 0, 319)
  580. OnlineProfilesList.Position = UDim2.new(0, 230, 0, 122)
  581. OnlineProfilesList.CanvasSize = UDim2.new(0, 408, 0, 319)
  582. OnlineProfilesList.Parent = OnlineProfilesFrame
  583. local OnlineProfilesListGrid = Instance.new("UIGridLayout")
  584. OnlineProfilesListGrid.CellSize = UDim2.new(0, 134, 0, 144)
  585. OnlineProfilesListGrid.CellPadding = UDim2.new(0, 4, 0, 4)
  586. OnlineProfilesListGrid.Parent = OnlineProfilesList
  587. local OnlineProfilesFrameCorner = Instance.new("UICorner")
  588. OnlineProfilesFrameCorner.CornerRadius = UDim.new(0, 4)
  589. OnlineProfilesFrameCorner.Parent = OnlineProfilesFrame
  590. OnlineProfilesButton.MouseButton1Click:connect(function()
  591. GuiLibrary["MainGui"].ScaledGui.OnlineProfiles.Visible = true
  592. GuiLibrary["MainGui"].ScaledGui.ClickGui.Visible = false
  593. if profilesloaded == false then
  594. local onlineprofiles = {}
  595. local success, result = pcall(function()
  596. return game:GetService("HttpService"):JSONDecode((shared.VapeDeveloper and readfile("vape/OnlineProfiles.vapeonline") or game:HttpGet("https://raw.githubusercontent.com/7GrandDadPGN/VapeV4ForRoblox/main/OnlineProfiles.vapeonline", true)))
  597. end)
  598. onlineprofiles = (success and result or {})
  599. for i2,v2 in pairs(onlineprofiles) do
  600. if tostring(v2["ProfileGame"]) == tostring(shared.CustomSaveVape or game.PlaceId) then
  601. local profilebox = Instance.new("Frame")
  602. profilebox.BackgroundColor3 = Color3.fromRGB(31, 30, 31)
  603. profilebox.Parent = OnlineProfilesList
  604. local profiletext = Instance.new("TextLabel")
  605. profiletext.TextSize = 15
  606. profiletext.TextColor3 = Color3.fromRGB(137, 136, 137)
  607. profiletext.Size = UDim2.new(0, 100, 0, 20)
  608. profiletext.Position = UDim2.new(0, 18, 0, 25)
  609. profiletext.Font = Enum.Font.SourceSans
  610. profiletext.TextXAlignment = Enum.TextXAlignment.Left
  611. profiletext.TextYAlignment = Enum.TextYAlignment.Top
  612. profiletext.BackgroundTransparency = 1
  613. profiletext.Text = i2
  614. profiletext.Parent = profilebox
  615. local profiledownload = Instance.new("TextButton")
  616. profiledownload.BackgroundColor3 = Color3.fromRGB(31, 30, 31)
  617. profiledownload.Size = UDim2.new(0, 69, 0, 31)
  618. profiledownload.Font = Enum.Font.SourceSans
  619. profiledownload.TextColor3 = Color3.fromRGB(200, 200, 200)
  620. profiledownload.TextSize = 15
  621. profiledownload.AutoButtonColor = false
  622. profiledownload.Text = "DOWNLOAD"
  623. profiledownload.Position = UDim2.new(0, 14, 0, 96)
  624. profiledownload.Visible = false
  625. profiledownload.Parent = profilebox
  626. profiledownload.ZIndex = 2
  627. local profiledownloadbkg = Instance.new("Frame")
  628. profiledownloadbkg.Size = UDim2.new(0, 71, 0, 33)
  629. profiledownloadbkg.BackgroundColor3 = Color3.fromRGB(42, 41, 42)
  630. profiledownloadbkg.Position = UDim2.new(0, 13, 0, 95)
  631. profiledownloadbkg.ZIndex = 1
  632. profiledownloadbkg.Visible = false
  633. profiledownloadbkg.Parent = profilebox
  634. profilebox.MouseEnter:connect(function()
  635. profiletext.TextColor3 = Color3.fromRGB(200, 200, 200)
  636. profiledownload.Visible = true
  637. profiledownloadbkg.Visible = true
  638. end)
  639. profilebox.MouseLeave:connect(function()
  640. profiletext.TextColor3 = Color3.fromRGB(137, 136, 137)
  641. profiledownload.Visible = false
  642. profiledownloadbkg.Visible = false
  643. end)
  644. profiledownload.MouseEnter:connect(function()
  645. profiledownload.BackgroundColor3 = Color3.fromRGB(5, 134, 105)
  646. end)
  647. profiledownload.MouseLeave:connect(function()
  648. profiledownload.BackgroundColor3 = Color3.fromRGB(31, 30, 31)
  649. end)
  650. profiledownload.MouseButton1Click:connect(function()
  651. writefile(customdir.."Profiles/"..v2["ProfileName"]..tostring(game.PlaceId)..".vapeprofile.txt", (shared.VapeDeveloper and readfile("vape/OnlineProfiles/"..v2["OnlineProfileName"]) or game:HttpGet("https://raw.githubusercontent.com/7GrandDadPGN/VapeV4ForRoblox/main/OnlineProfiles/"..v2["OnlineProfileName"], true)))
  652. GuiLibrary["Profiles"][v2["ProfileName"]] = {["Keybind"] = "", ["Selected"] = false}
  653. local profiles = {}
  654. for i,v in pairs(GuiLibrary["Profiles"]) do
  655. table.insert(profiles, i)
  656. end
  657. table.sort(profiles, function(a, b) return b == "default" and true or a:lower() < b:lower() end)
  658. ProfilesTextList["RefreshValues"](profiles)
  659. end)
  660. local profileround = Instance.new("UICorner")
  661. profileround.CornerRadius = UDim.new(0, 4)
  662. profileround.Parent = profilebox
  663. local profileround2 = Instance.new("UICorner")
  664. profileround2.CornerRadius = UDim.new(0, 4)
  665. profileround2.Parent = profiledownload
  666. local profileround3 = Instance.new("UICorner")
  667. profileround3.CornerRadius = UDim.new(0, 4)
  668. profileround3.Parent = profiledownloadbkg
  669. end
  670. end
  671. profilesloaded = true
  672. end
  673. end)
  674. OnlineProfilesExitButton.MouseButton1Click:connect(function()
  675. GuiLibrary["MainGui"].ScaledGui.OnlineProfiles.Visible = false
  676. GuiLibrary["MainGui"].ScaledGui.ClickGui.Visible = true
  677. end)
  678.  
  679. GUI.CreateDivider()
  680. ---GUI.CreateCustomButton("Favorites", "vape/assets/FavoritesListIcon.png", UDim2.new(0, 17, 0, 14), function() end, function() end)
  681. --GUI.CreateCustomButton("Text GUIVertical", "vape/assets/TextGUIIcon3.png", UDim2.new(1, -56, 0, 15), function() end, function() end)
  682. local TextGui = GuiLibrary.CreateCustomWindow({
  683. ["Name"] = "Text GUI",
  684. ["Icon"] = "vape/assets/TextGUIIcon1.png",
  685. ["IconSize"] = 21
  686. })
  687. local TextGuiCircleObject = {["CircleList"] = {}}
  688. --GUI.CreateCustomButton("Text GUI", "vape/assets/TextGUIIcon2.png", UDim2.new(1, -23, 0, 15), function() TextGui.SetVisible(true) end, function() TextGui.SetVisible(false) end, "OptionsButton")
  689. GUI.CreateCustomToggle({
  690. ["Name"] = "Text GUI",
  691. ["Icon"] = "vape/assets/TextGUIIcon3.png",
  692. ["Function"] = function(callback) TextGui.SetVisible(callback) end,
  693. ["Priority"] = 2
  694. })
  695.  
  696. local rainbowval = ColorSequence.new({ColorSequenceKeypoint.new(0, Color3.fromHSV(0, 0, 1)), ColorSequenceKeypoint.new(1, Color3.fromHSV(0, 0, 1))})
  697. local rainbowval2 = ColorSequence.new({ColorSequenceKeypoint.new(0, Color3.fromHSV(0, 0, 0.42)), ColorSequenceKeypoint.new(1, Color3.fromHSV(0, 0, 0.42))})
  698. local rainbowval3 = ColorSequence.new({ColorSequenceKeypoint.new(0, Color3.fromHSV(0, 0, 1)), ColorSequenceKeypoint.new(1, Color3.fromHSV(0, 0, 1))})
  699. local guicolorslider = {["RainbowValue"] = false}
  700. local textguiscaleslider = {["Value"] = 10}
  701. local fontitems = {"SourceSans"}
  702. local fontitems2 = {"GothamBold"}
  703.  
  704. local onething = Instance.new("ImageLabel")
  705. onething.Parent = TextGui.GetCustomChildren()
  706. onething.Name = "Logo"
  707. onething.Size = UDim2.new(0, 100, 0, 27)
  708. onething.Position = UDim2.new(1, -140, 0, 3)
  709. onething.BackgroundColor3 = Color3.new(0, 0, 0)
  710. onething.BorderSizePixel = 0
  711. onething.BackgroundTransparency = 1
  712. onething.Visible = false
  713. onething.Image = getcustomassetfunc(translatedlogo and "vape/translations/"..GuiLibrary["Language"].."/VapeLogo3.png" or "vape/assets/VapeLogo3.png")
  714. local onething2 = Instance.new("ImageLabel")
  715. onething2.Parent = onething
  716. onething2.Size = UDim2.new(0, 41, 0, 24)
  717. onething2.Name = "Logo2"
  718. onething2.Position = UDim2.new(1, 0, 0, 1)
  719. onething2.BorderSizePixel = 0
  720. onething2.BackgroundColor3 = Color3.new(0, 0, 0)
  721. onething2.BackgroundTransparency = 1
  722. onething2.Image = getcustomassetfunc("vape/assets/VapeLogo4.png")
  723. local onething3 = onething:Clone()
  724. onething3.ImageColor3 = Color3.new(0, 0, 0)
  725. onething3.ImageTransparency = 0.5
  726. onething3.ZIndex = 0
  727. onething3.Position = UDim2.new(0, 1, 0, 1)
  728. onething3.Visible = false
  729. onething3.Parent = onething
  730. onething3.Logo2.ImageColor3 = Color3.new(0, 0, 0)
  731. onething3.Logo2.ZIndex = 0
  732. onething3.Logo2.ImageTransparency = 0.5
  733. local onetext = Instance.new("TextLabel")
  734. onetext.Parent = TextGui.GetCustomChildren()
  735. onetext.Size = UDim2.new(1, 0, 1, 0)
  736. onetext.Position = UDim2.new(1, -154, 0, 35)
  737. onetext.TextColor3 = Color3.new(1, 1, 1)
  738. onetext.RichText = true
  739. onetext.BackgroundTransparency = 1
  740. onetext.TextXAlignment = Enum.TextXAlignment.Left
  741. onetext.TextYAlignment = Enum.TextYAlignment.Top
  742. onetext.BorderSizePixel = 0
  743. onetext.BackgroundColor3 = Color3.new(0, 0, 0)
  744. onetext.Font = Enum.Font.SourceSans
  745. onetext.Text = ""
  746. onetext.TextSize = 23
  747. local onetext2 = Instance.new("TextLabel")
  748. onetext2.Name = "ExtraText"
  749. onetext2.Parent = onetext
  750. onetext2.Size = UDim2.new(1, 0, 1, 0)
  751. onetext2.Position = UDim2.new(0, 1, 0, 1)
  752. onetext2.BorderSizePixel = 0
  753. onetext2.Visible = false
  754. onetext2.ZIndex = 0
  755. onetext2.Text = ""
  756. onetext2.BackgroundTransparency = 1
  757. onetext2.TextTransparency = 0.5
  758. onetext2.TextXAlignment = Enum.TextXAlignment.Left
  759. onetext2.TextYAlignment = Enum.TextYAlignment.Top
  760. onetext2.TextColor3 = Color3.new(0, 0, 0)
  761. onetext2.Font = Enum.Font.SourceSans
  762. onetext2.TextSize = 23
  763. local onecustomtext = Instance.new("TextLabel")
  764. onecustomtext.TextSize = 30
  765. onecustomtext.Font = Enum.Font.GothamBold
  766. onecustomtext.Size = UDim2.new(1, 0, 1, 0)
  767. onecustomtext.BackgroundTransparency = 1
  768. onecustomtext.Position = UDim2.new(0, 0, 0, 35)
  769. onecustomtext.TextXAlignment = Enum.TextXAlignment.Left
  770. onecustomtext.TextYAlignment = Enum.TextYAlignment.Top
  771. onecustomtext.Text = ""
  772. onecustomtext.Parent = TextGui.GetCustomChildren()
  773. local onecustomtext2 = onecustomtext:Clone()
  774. onecustomtext2.ZIndex = -1
  775. onecustomtext2.Size = UDim2.new(1, 0, 1, 0)
  776. onecustomtext2.TextTransparency = 0.5
  777. onecustomtext2.TextColor3 = Color3.new(0, 0, 0)
  778. onecustomtext2.Position = UDim2.new(0, 1, 0, 1)
  779. onecustomtext2.Parent = onecustomtext
  780. onecustomtext:GetPropertyChangedSignal("TextXAlignment"):connect(function()
  781. onecustomtext2.TextXAlignment = onecustomtext.TextXAlignment
  782. end)
  783. local onebackground = Instance.new("Frame")
  784. onebackground.BackgroundTransparency = 1
  785. onebackground.BorderSizePixel = 0
  786. onebackground.BackgroundColor3 = Color3.new(0, 0, 0)
  787. onebackground.Size = UDim2.new(1, 0, 1, 0)
  788. onebackground.Visible = false
  789. onebackground.Parent = TextGui.GetCustomChildren()
  790. onebackground.ZIndex = 0
  791. local onebackgroundsort = Instance.new("UIListLayout")
  792. onebackgroundsort.FillDirection = Enum.FillDirection.Vertical
  793. onebackgroundsort.SortOrder = Enum.SortOrder.LayoutOrder
  794. onebackgroundsort.Padding = UDim.new(0, 0)
  795. onebackgroundsort.Parent = onebackground
  796. local onescale = Instance.new("UIScale")
  797. onescale.Parent = TextGui.GetCustomChildren()
  798. local textguirenderbkg = {["Enabled"] = false}
  799. local function refreshbars(textlists)
  800. for i,v in pairs(onebackground:GetChildren()) do
  801. if v:IsA("Frame") then
  802. v:Remove()
  803. end
  804. end
  805. for i2,v2 in pairs(textlists) do
  806. local newstr = v2:gsub(":", " ")
  807. local textsize = game:GetService("TextService"):GetTextSize(newstr, onetext.TextSize, onetext.Font, Vector2.new(1000000, 1000000))
  808. local frame = Instance.new("Frame")
  809. frame.BorderSizePixel = 0
  810. frame.BackgroundTransparency = 0.62
  811. frame.BackgroundColor3 = Color3.new(0,0,0)
  812. frame.Visible = true
  813. frame.ZIndex = 0
  814. frame.LayoutOrder = i2
  815. frame.Size = UDim2.new(0, textsize.X + 8, 0, textsize.Y)
  816. frame.Parent = onebackground
  817. local colorframe = Instance.new("Frame")
  818. colorframe.Size = UDim2.new(0, 2, 1, 0)
  819. colorframe.Position = (onebackgroundsort.HorizontalAlignment == Enum.HorizontalAlignment.Left and UDim2.new(0, 0, 0, 0) or UDim2.new(1, -2, 0, 0))
  820. colorframe.BorderSizePixel = 0
  821. colorframe.Name = "ColorFrame"
  822. colorframe.Parent = frame
  823. local extraframe = Instance.new("Frame")
  824. extraframe.BorderSizePixel = 0
  825. extraframe.BackgroundTransparency = 0.96
  826. extraframe.BackgroundColor3 = Color3.new(0, 0, 0)
  827. extraframe.ZIndex = 0
  828. extraframe.Size = UDim2.new(1, 0, 0, 2)
  829. extraframe.Position = UDim2.new(0, 0, 1, -1)
  830. extraframe.Parent = frame
  831. end
  832. end
  833.  
  834. onething.Visible = true onetext.Position = UDim2.new(0, 0, 0, 41)
  835.  
  836. local sortingmethod = "Alphabetical"
  837. local textwithoutthing = ""
  838. local function getSpaces(str)
  839. local strSize = game:GetService("TextService"):GetTextSize(str, onetext.TextSize, onetext.TextSize, Vector2.new(10000, 10000))
  840. return math.ceil(strSize.X / 3)
  841. end
  842. local function UpdateHud()
  843. if GuiLibrary["MainGui"].ScaledGui.Visible then
  844. local text = ""
  845. local text2 = ""
  846. local tableofmodules = {}
  847. local first = true
  848.  
  849. for i,v in pairs(GuiLibrary["ObjectsThatCanBeSaved"]) do
  850. if v["Type"] == "OptionsButton" and v["Api"]["Name"] ~= "Text GUI" then
  851. if v["Api"]["Enabled"] then
  852. local blacklisted = table.find(TextGuiCircleObject["CircleList"]["ObjectList"], v["Api"]["Name"]) and TextGuiCircleObject["CircleList"]["ObjectListEnabled"][table.find(TextGuiCircleObject["CircleList"]["ObjectList"], v["Api"]["Name"])]
  853. if not blacklisted then
  854. table.insert(tableofmodules, {["Text"] = v["Api"]["Name"], ["ExtraText"] = v["Api"]["GetExtraText"]})
  855. end
  856. end
  857. end
  858. end
  859. if sortingmethod == "Alphabetical" then
  860. table.sort(tableofmodules, function(a, b) return a["Text"]:lower() < b["Text"]:lower() end)
  861. else
  862. table.sort(tableofmodules, function(a, b)
  863. local textsize1 = (translations[a["Text"]] ~= nil and translations[a["Text"]] or a["Text"])..(a["ExtraText"] and a["ExtraText"]() or "")
  864. local textsize2 = (translations[b["Text"]] ~= nil and translations[b["Text"]] or b["Text"])..(b["ExtraText"] and b["ExtraText"]() or "")
  865. textsize1 = game:GetService("TextService"):GetTextSize(textsize1, onetext.TextSize, onetext.Font, Vector2.new(1000000, 1000000))
  866. textsize2 = game:GetService("TextService"):GetTextSize(textsize2, onetext.TextSize, onetext.Font, Vector2.new(1000000, 1000000))
  867. return textsize1.X > textsize2.X
  868. end)
  869. end
  870. local textlists = {}
  871. for i2,v2 in pairs(tableofmodules) do
  872. if first then
  873. text = (translations[v2["Text"]] ~= nil and translations[v2["Text"]] or v2["Text"])..(v2["ExtraText"]() ~= "" and ":"..v2["ExtraText"]() or "")
  874. first = false
  875. else
  876. text = text..'\n'..(translations[v2["Text"]] ~= nil and translations[v2["Text"]] or v2["Text"])..(v2["ExtraText"]() ~= "" and ":"..v2["ExtraText"]() or "")
  877. end
  878. table.insert(textlists, (translations[v2["Text"]] ~= nil and translations[v2["Text"]] or v2["Text"])..(v2["ExtraText"]() ~= "" and ":"..v2["ExtraText"]() or ""))
  879. end
  880. textwithoutthing = text
  881. onetext.Text = text
  882. onetext2.Text = text:gsub(":", " ")
  883. local newsize = game:GetService("TextService"):GetTextSize(text, onetext.TextSize, onetext.Font, Vector2.new(1000000, 1000000))
  884. if text == "" then
  885. newsize = Vector2.new(0, 0)
  886. end
  887. onetext.Size = UDim2.new(0, 154, 0, newsize.Y)
  888. if TextGui.GetCustomChildren().Parent then
  889. if (TextGui.GetCustomChildren().Parent.Position.X.Offset + TextGui.GetCustomChildren().Parent.Size.X.Offset / 2) >= (cam.ViewportSize.X / 2) then
  890. onetext.TextXAlignment = Enum.TextXAlignment.Right
  891. onetext2.TextXAlignment = Enum.TextXAlignment.Right
  892. onetext2.Position = UDim2.new(0, 1, 0, 1)
  893. onething.Position = UDim2.new(1, -142, 0, 8)
  894. onetext.Position = UDim2.new(1, -154, 0, (onething.Visible and (textguirenderbkg["Enabled"] and 41 or 35) or 5) + (onecustomtext.Visible and 25 or 0))
  895. onecustomtext.Position = UDim2.new(0, 0, 0, onething.Visible and 35 or 0)
  896. onecustomtext.TextXAlignment = Enum.TextXAlignment.Right
  897. onebackgroundsort.HorizontalAlignment = Enum.HorizontalAlignment.Right
  898. onebackground.Position = onetext.Position + UDim2.new(0, -60, 0, 2)
  899. else
  900. onetext.TextXAlignment = Enum.TextXAlignment.Left
  901. onetext2.TextXAlignment = Enum.TextXAlignment.Left
  902. onetext2.Position = UDim2.new(0, 5, 0, 1)
  903. onething.Position = UDim2.new(0, 2, 0, 8)
  904. onetext.Position = UDim2.new(0, 6, 0, (onething.Visible and (textguirenderbkg["Enabled"] and 41 or 35) or 5) + (onecustomtext.Visible and 25 or 0))
  905. onecustomtext.TextXAlignment = Enum.TextXAlignment.Left
  906. onebackgroundsort.HorizontalAlignment = Enum.HorizontalAlignment.Left
  907. onebackground.Position = onetext.Position + UDim2.new(0, -1, 0, 2)
  908. end
  909. end
  910. refreshbars(textlists)
  911. GuiLibrary["UpdateUI"]()
  912. end
  913. end
  914.  
  915. TextGui.GetCustomChildren().Parent:GetPropertyChangedSignal("Position"):connect(UpdateHud)
  916. onescale:GetPropertyChangedSignal("Scale"):connect(function()
  917. local childrenobj = TextGui.GetCustomChildren()
  918. local check = (childrenobj.Parent.Position.X.Offset + childrenobj.Parent.Size.X.Offset / 2) >= (cam.ViewportSize.X / 2)
  919. childrenobj.Position = UDim2.new((check and -(onescale.Scale - 1) or 0), (check and 0 or -6 * (onescale.Scale - 1)), 1, -6 * (onescale.Scale - 1))
  920. UpdateHud()
  921. end)
  922. GuiLibrary["UpdateHudEvent"].Event:connect(UpdateHud)
  923. for i,v in pairs(Enum.Font:GetEnumItems()) do
  924. if v ~= "SourceSans" then
  925. table.insert(fontitems, v.Name)
  926. end
  927. if v ~= "GothamBold" then
  928. table.insert(fontitems2, v.Name)
  929. end
  930. end
  931. TextGui.CreateDropdown({
  932. ["Name"] = "Sort",
  933. ["List"] = {"Alphabetical", "Length"},
  934. ["Function"] = function(val)
  935. sortingmethod = val
  936. GuiLibrary["UpdateHudEvent"]:Fire()
  937. end
  938. })
  939. TextGui.CreateDropdown({
  940. ["Name"] = "Font",
  941. ["List"] = fontitems,
  942. ["Function"] = function(val)
  943. onetext.Font = Enum.Font[val]
  944. onetext2.Font = Enum.Font[val]
  945. GuiLibrary["UpdateHudEvent"]:Fire()
  946. end
  947. })
  948. TextGui.CreateDropdown({
  949. ["Name"] = "CustomTextFont",
  950. ["List"] = fontitems2,
  951. ["Function"] = function(val)
  952. onecustomtext.Font = Enum.Font[val]
  953. onecustomtext2.Font = Enum.Font[val]
  954. GuiLibrary["UpdateHudEvent"]:Fire()
  955. end
  956. })
  957. textguiscaleslider = TextGui.CreateSlider({
  958. ["Name"] = "Scale",
  959. ["Min"] = 1,
  960. ["Max"] = 50,
  961. ["Default"] = 10,
  962. ["Function"] = function(val)
  963. onescale.Scale = val / 10
  964. end
  965. })
  966. TextGui.CreateToggle({
  967. ["Name"] = "Shadow",
  968. ["Function"] = function(callback) onetext2.Visible = callback onething3.Visible = callback end,
  969. ["HoverText"] = "Renders shadowed text."
  970. })
  971. local TextGuiUseCategoryColor = TextGui.CreateToggle({
  972. ["Name"] = "Use Category Color",
  973. ["Function"] = function(callback) GuiLibrary["UpdateUI"]() end
  974. })
  975. TextGui.CreateToggle({
  976. ["Name"] = "Watermark",
  977. ["Function"] = function(callback)
  978. onething.Visible = callback
  979. UpdateHud()
  980. end,
  981. ["HoverText"] = "Renders a vape watermark"
  982. })
  983. textguirenderbkg = TextGui.CreateToggle({
  984. ["Name"] = "Render background",
  985. ["Function"] = function(callback)
  986. onebackground.Visible = callback
  987. UpdateHud()
  988. end
  989. })
  990. TextGui.CreateToggle({
  991. ["Name"] = "Blacklist",
  992. ["Function"] = function(callback)
  993. if TextGuiCircleObject["Object"] then
  994. TextGuiCircleObject["Object"].Visible = callback
  995. end
  996. end
  997. })
  998. TextGuiCircleObject = TextGui.CreateCircleWindow({
  999. ["Name"] = "Blacklist",
  1000. ["Type"] = "Blacklist",
  1001. ["UpdateFunction"] = function()
  1002. GuiLibrary["UpdateHudEvent"]:Fire()
  1003. end
  1004. })
  1005. TextGuiCircleObject["Object"].Visible = false
  1006. local CustomText = {["Value"] = "", ["Object"] = nil}
  1007. TextGui.CreateToggle({
  1008. ["Name"] = "Add custom text",
  1009. ["Function"] = function(callback)
  1010. onecustomtext.Visible = callback
  1011. if CustomText["Object"] then
  1012. CustomText["Object"].Visible = callback
  1013. end
  1014. UpdateHud()
  1015. end,
  1016. ["HoverText"] = "Renders a custom label"
  1017. })
  1018. CustomText = TextGui.CreateTextBox({
  1019. ["Name"] = "Custom text",
  1020. ["FocusLost"] = function(enter)
  1021. onecustomtext.Text = CustomText["Value"]
  1022. onecustomtext2.Text = CustomText["Value"]
  1023. end
  1024. })
  1025. CustomText["Object"].Visible = false
  1026.  
  1027. local healthColorToPosition = {
  1028. [Vector3.new(Color3.fromRGB(255, 28, 0).r,
  1029. Color3.fromRGB(255, 28, 0).g,
  1030. Color3.fromRGB(255, 28, 0).b)] = 0.1;
  1031. [Vector3.new(Color3.fromRGB(250, 235, 0).r,
  1032. Color3.fromRGB(250, 235, 0).g,
  1033. Color3.fromRGB(250, 235, 0).b)] = 0.5;
  1034. [Vector3.new(Color3.fromRGB(27, 252, 107).r,
  1035. Color3.fromRGB(27, 252, 107).g,
  1036. Color3.fromRGB(27, 252, 107).b)] = 0.8;
  1037. }
  1038. local min = 0.1
  1039. local minColor = Color3.fromRGB(255, 28, 0)
  1040. local max = 0.8
  1041. local maxColor = Color3.fromRGB(27, 252, 107)
  1042.  
  1043. local function HealthbarColorTransferFunction(healthPercent)
  1044. if healthPercent < min then
  1045. return minColor
  1046. elseif healthPercent > max then
  1047. return maxColor
  1048. end
  1049.  
  1050.  
  1051. local numeratorSum = Vector3.new(0,0,0)
  1052. local denominatorSum = 0
  1053. for colorSampleValue, samplePoint in pairs(healthColorToPosition) do
  1054. local distance = healthPercent - samplePoint
  1055. if distance == 0 then
  1056.  
  1057. return Color3.new(colorSampleValue.x, colorSampleValue.y, colorSampleValue.z)
  1058. else
  1059. local wi = 1 / (distance*distance)
  1060. numeratorSum = numeratorSum + wi * colorSampleValue
  1061. denominatorSum = denominatorSum + wi
  1062. end
  1063. end
  1064. local result = numeratorSum / denominatorSum
  1065. return Color3.new(result.x, result.y, result.z)
  1066. end
  1067.  
  1068. local TargetInfo = GuiLibrary.CreateCustomWindow({
  1069. ["Name"] = "Target Info",
  1070. ["Icon"] = "vape/assets/TargetInfoIcon1.png",
  1071. ["IconSize"] = 16
  1072. })
  1073. local TargetInfoDisplayNames = TargetInfo.CreateToggle({
  1074. ["Name"] = "Use Display Name",
  1075. ["Function"] = function() end,
  1076. ["Default"] = true
  1077. })
  1078. local targetinfobkg1 = Instance.new("Frame")
  1079. targetinfobkg1.BackgroundColor3 = Color3.fromRGB(26, 25, 26)
  1080. targetinfobkg1.BorderSizePixel = 0
  1081. targetinfobkg1.Size = UDim2.new(0, 220, 0, 72)
  1082. targetinfobkg1.Position = UDim2.new(0, 0, 0, 0)
  1083. targetinfobkg1.Parent = TargetInfo.GetCustomChildren()
  1084. local targetinfobkg2 = targetinfobkg1:Clone()
  1085. targetinfobkg2.ZIndex = 0
  1086. targetinfobkg2.Position = UDim2.new(0, 0, 0, -6)
  1087. targetinfobkg2.Size = UDim2.new(0, 220, 0, 86)
  1088. targetinfobkg2.Parent = targetinfobkg1
  1089. local targetinfobkg3 = Instance.new("Frame")
  1090. targetinfobkg3.BackgroundColor3 = Color3.fromRGB(31, 30, 31)
  1091. targetinfobkg3.Size = UDim2.new(0, 220, 0, 80)
  1092. targetinfobkg3.Position = UDim2.new(0, 0, 0, -5)
  1093. targetinfobkg3.Name = "MainInfo"
  1094. targetinfobkg3.Parent = targetinfobkg1
  1095. local targetname = Instance.new("TextLabel")
  1096. targetname.TextSize = 17
  1097. targetname.Font = Enum.Font.SourceSans
  1098. targetname.TextColor3 = Color3.fromRGB(162, 162, 162)
  1099. targetname.Position = UDim2.new(0, 72, 0, 7)
  1100. targetname.TextStrokeTransparency = 0.75
  1101. targetname.BackgroundTransparency = 1
  1102. targetname.Size = UDim2.new(0, 80, 0, 16)
  1103. targetname.TextScaled = true
  1104. targetname.Text = "Target name"
  1105. targetname.ZIndex = 2
  1106. targetname.TextXAlignment = Enum.TextXAlignment.Left
  1107. targetname.TextYAlignment = Enum.TextYAlignment.Top
  1108. targetname.Parent = targetinfobkg3
  1109. local targethealth = Instance.new("TextLabel")
  1110. targethealth.TextColor3 = Color3.fromRGB(95, 94, 95)
  1111. targethealth.Font = Enum.Font.SourceSans
  1112. targethealth.Size = UDim2.new(0, 0, 0, 0)
  1113. targethealth.TextSize = 17
  1114. targethealth.Position = UDim2.new(0, 210, 0, 6)
  1115. targethealth.BackgroundTransparency = 1
  1116. targethealth.Text = '20'..' hp'
  1117. targethealth.TextScaled = false
  1118. targethealth.ZIndex = 2
  1119. targethealth.TextXAlignment = Enum.TextXAlignment.Right
  1120. targethealth.TextYAlignment = Enum.TextYAlignment.Top
  1121. targethealth.Parent = targetinfobkg3
  1122. local targethealthbkg = Instance.new("Frame")
  1123. targethealthbkg.BackgroundColor3 = Color3.fromRGB(43, 42, 43)
  1124. targethealthbkg.Size = UDim2.new(0, 138, 0, 4)
  1125. targethealthbkg.Position = UDim2.new(0, 72, 0, 29)
  1126. targethealthbkg.Parent = targetinfobkg3
  1127. local targethealthgreen = Instance.new("Frame")
  1128. targethealthgreen.BackgroundColor3 = Color3.fromRGB(40, 137, 109)
  1129. targethealthgreen.Size = UDim2.new(1, 0, 0, 4)
  1130. targethealthgreen.ZIndex = 3
  1131. targethealthgreen.Parent = targethealthbkg
  1132. local targetimage = Instance.new("ImageLabel")
  1133. targetimage.Size = UDim2.new(0, 61, 0, 61)
  1134. targetimage.BackgroundTransparency = 1
  1135. targetimage.Image = 'rbxthumb://type=AvatarHeadShot&id='..game:GetService("Players").LocalPlayer.UserId..'&w=420&h=420'
  1136. targetimage.Position = UDim2.new(0, 5, 0, 10)
  1137. targetimage.Parent = targetinfobkg3
  1138. local round1 = Instance.new("UICorner")
  1139. round1.CornerRadius = UDim.new(0, 4)
  1140. round1.Parent = targetinfobkg2
  1141. local round2 = Instance.new("UICorner")
  1142. round2.CornerRadius = UDim.new(0, 4)
  1143. round2.Parent = targetinfobkg3
  1144. local round3 = Instance.new("UICorner")
  1145. round3.CornerRadius = UDim.new(0, 8)
  1146. round3.Parent = targethealthbkg
  1147. local round4 = Instance.new("UICorner")
  1148. round4.CornerRadius = UDim.new(0, 8)
  1149. round4.Parent = targethealthgreen
  1150. local round5 = Instance.new("UICorner")
  1151. round5.CornerRadius = UDim.new(0, 4)
  1152. round5.Parent = targetimage
  1153. local oldhealth = 100
  1154. local allowedtween = true
  1155. TargetInfo.GetCustomChildren().Parent:GetPropertyChangedSignal("Size"):connect(function()
  1156. if TargetInfo.GetCustomChildren().Parent.Size ~= UDim2.new(0, 220, 0, 0) then
  1157. targetinfobkg3.Position = UDim2.new(0, 0, 0, -5)
  1158. targetinfobkg2.BackgroundTransparency = 0
  1159. targetinfobkg1.BackgroundTransparency = 0
  1160. else
  1161. targetinfobkg3.Position = UDim2.new(0, 0, 0, 40)
  1162. targetinfobkg2.BackgroundTransparency = 1
  1163. targetinfobkg1.BackgroundTransparency = 1
  1164. end
  1165. end)
  1166. shared.VapeTargetInfo = {
  1167. ["UpdateInfo"] = function(tab, targetsize)
  1168. if TargetInfo.GetCustomChildren().Parent then
  1169. targetinfobkg3.Visible = (targetsize > 0) or (TargetInfo.GetCustomChildren().Parent.Size ~= UDim2.new(0, 220, 0, 0))
  1170. for i,v in pairs(tab) do
  1171. local plr = game:GetService("Players"):FindFirstChild(i)
  1172. targetimage.Image = 'rbxthumb://type=AvatarHeadShot&id='..v["UserId"]..'&w=420&h=420'
  1173. targethealthgreen:TweenSize(UDim2.new(v["Health"] / v["MaxHealth"], 0, 0, 4), Enum.EasingDirection.Out, Enum.EasingStyle.Quart, 0.25, true)
  1174. targethealth.Text = (math.floor((v["Health"] / 5) * 10) / 10).." hp"
  1175. targethealthgreen.BackgroundColor3 = HealthbarColorTransferFunction(v["Health"] / v["MaxHealth"])
  1176. targetname.Text = (TargetInfoDisplayNames["Enabled"] and plr and plr.DisplayName or i)
  1177. end
  1178. end
  1179. end,
  1180. ["Object"] = TargetInfo
  1181. }
  1182. GUI.CreateCustomToggle({
  1183. ["Name"] = "Target Info",
  1184. ["Icon"] = "vape/assets/TargetInfoIcon2.png",
  1185. ["Function"] = function(callback) TargetInfo.SetVisible(callback) end,
  1186. ["Priority"] = 1
  1187. })
  1188. local GeneralSettings = GUI.CreateDivider2("General Settings")
  1189. local ModuleSettings = GUI.CreateDivider2("Module Settings")
  1190. local GUISettings = GUI.CreateDivider2("GUI Settings")
  1191. ModuleSettings.CreateToggle({
  1192. ["Name"] = "Teams by server",
  1193. ["Function"] = function() end,
  1194. })
  1195. ModuleSettings.CreateToggle({
  1196. ["Name"] = "Teams by color",
  1197. ["Function"] = function() end,
  1198. ["Default"] = true,
  1199. ["HoverText"] = "Ignore players with the selected name color"
  1200. })
  1201. local MiddleClickInput
  1202. ModuleSettings.CreateToggle({
  1203. ["Name"] = "MiddleClick friends",
  1204. ["Function"] = function(callback)
  1205. if callback then
  1206. MiddleClickInput = game:GetService("UserInputService").InputBegan:connect(function(input1)
  1207. if input1.UserInputType == Enum.UserInputType.MouseButton3 then
  1208. if mouse.Target.Parent:FindFirstChild("HumanoidRootPart") or mouse.Target.Parent:IsA("Accessory") and mouse.Target.Parent.Parent:FindFirstChild("HumanoidRootPart") then
  1209. local user = (mouse.Target.Parent:IsA("Accessory") and mouse.Target.Parent.Parent.Name or mouse.Target.Parent.Name)
  1210. if table.find(FriendsTextList["ObjectList"], user) == nil then
  1211. table.insert(FriendsTextList["ObjectList"], user)
  1212. FriendsTextList["RefreshValues"](FriendsTextList["ObjectList"])
  1213. else
  1214. table.remove(FriendsTextList["ObjectList"], table.find(FriendsTextList["ObjectList"], user))
  1215. FriendsTextList["RefreshValues"](FriendsTextList["ObjectList"])
  1216. end
  1217. end
  1218. end
  1219. end)
  1220. else
  1221. if MiddleClickInput then
  1222. MiddleClickInput:Disconnect()
  1223. end
  1224. end
  1225. end,
  1226. ["HoverText"] = "Click middle mouse button to add the player you are hovering over as a friend"
  1227. })
  1228. ModuleSettings.CreateToggle({
  1229. ["Name"] = "Lobby Check",
  1230. ["Function"] = function() end,
  1231. ["Default"] = true,
  1232. ["HoverText"] = "Temporarily disables certain features in server lobbies."
  1233. })
  1234. guicolorslider = GUI.CreateColorSlider("GUI Theme", function(val) GuiLibrary["Settings"]["GUIObject"]["Color"] = val GuiLibrary["UpdateUI"]() end)
  1235. local blatantmode = GUI.CreateToggle({
  1236. ["Name"] = "Blatant mode",
  1237. ["Function"] = function() end,
  1238. ["HoverText"] = "Required for certain features."
  1239. })
  1240. local tabsortorder = {
  1241. ["CombatButton"] = 1,
  1242. ["BlatantButton"] = 2,
  1243. ["RenderButton"] = 3,
  1244. ["UtilityButton"] = 4,
  1245. ["WorldButton"] = 5,
  1246. ["FriendsButton"] = 6,
  1247. ["ProfilesButton"] = 7
  1248. }
  1249.  
  1250. local tabsortorder2 = {
  1251. [1] = "Combat",
  1252. [2] = "Blatant",
  1253. [3] = "Render",
  1254. [4] = "Utility",
  1255. [5] = "World"
  1256. }
  1257.  
  1258. local tabcategorycolor = {
  1259. ["CombatWindow"] = Color3.fromRGB(214, 27, 6),
  1260. ["BlatantWindow"] = Color3.fromRGB(219, 21, 133),
  1261. ["RenderWindow"] = Color3.fromRGB(135, 14, 165),
  1262. ["UtilityWindow"] = Color3.fromRGB(27, 145, 68),
  1263. ["WorldWindow"] = Color3.fromRGB(70, 73, 16)
  1264. }
  1265.  
  1266. GuiLibrary["UpdateUI"] = function()
  1267. pcall(function()
  1268. GuiLibrary["ObjectsThatCanBeSaved"]["GUIWindow"]["Object"].Logo1.Logo2.ImageColor3 = Color3.fromHSV(GuiLibrary["Settings"]["GUIObject"]["Color"], 0.7, 0.9)
  1269. onething.ImageColor3 = Color3.fromHSV(GuiLibrary["Settings"]["GUIObject"]["Color"], 0.7, 0.9)
  1270. onetext.TextColor3 = Color3.fromHSV(GuiLibrary["Settings"]["GUIObject"]["Color"], 0.7, 0.9)
  1271. onecustomtext.TextColor3 = Color3.fromHSV(GuiLibrary["Settings"]["GUIObject"]["Color"], 0.7, 0.9)
  1272. local newtext = ""
  1273. local newfirst = false
  1274. local colorforindex = {}
  1275. for i2,v2 in pairs(textwithoutthing:split("\n")) do
  1276. local rainbowcolor = GuiLibrary["Settings"]["GUIObject"]["Color"] + (GuiLibrary["ObjectsThatCanBeSaved"]["Gui ColorSliderColor"]["Api"]["RainbowValue"] and (-0.025 * i2) or 0)
  1277. rainbowcolor = rainbowcolor % 1
  1278. local newcolor = Color3.fromHSV(rainbowcolor, 0.7, 0.9)
  1279. local splittext = v2:split(":")
  1280. splittext = #splittext > 1 and {splittext[1], " "..splittext[2]} or {v2, ""}
  1281. if TextGuiUseCategoryColor["Enabled"] and GuiLibrary["ObjectsThatCanBeSaved"][splittext[1].."OptionsButton"] and tabcategorycolor[GuiLibrary["ObjectsThatCanBeSaved"][splittext[1].."OptionsButton"]["Object"].Parent.Parent.Name.."Window"] then
  1282. newcolor = tabcategorycolor[GuiLibrary["ObjectsThatCanBeSaved"][splittext[1].."OptionsButton"]["Object"].Parent.Parent.Name.."Window"]
  1283. end
  1284. newtext = newtext..(newfirst and "\n" or " ")..'<font color="rgb('..tostring(math.floor(newcolor.R * 255))..","..tostring(math.floor(newcolor.G * 255))..","..tostring(math.floor(newcolor.B * 255))..')">'..splittext[1]..'</font><font color="rgb(170, 170, 170)">'..splittext[2]..'</font>'
  1285. newfirst = true
  1286. colorforindex[i2] = newcolor
  1287. end
  1288. if onebackground then
  1289. for i3,v3 in pairs(onebackground:GetChildren()) do
  1290. if v3:IsA("Frame") and colorforindex[v3.LayoutOrder] then
  1291. v3.ColorFrame.BackgroundColor3 = colorforindex[v3.LayoutOrder]
  1292. end
  1293. end
  1294. end
  1295. onetext.Text = newtext
  1296. local buttons = 0
  1297. for i,v in pairs(GuiLibrary["ObjectsThatCanBeSaved"]) do
  1298. if v["Type"] == "TargetFrame" then
  1299. if v["Object2"].Visible then
  1300. v["Object"].TextButton.Frame.BackgroundColor3 = Color3.fromHSV(GuiLibrary["Settings"]["GUIObject"]["Color"], 0.7, 0.9)
  1301. end
  1302. end
  1303. if v["Type"] == "TargetButton" then
  1304. if v["Api"]["Enabled"] then
  1305. v["Object"].BackgroundColor3 = Color3.fromHSV(GuiLibrary["Settings"]["GUIObject"]["Color"], 0.7, 0.9)
  1306. end
  1307. end
  1308. if v["Type"] == "CircleListFrame" then
  1309. if v["Object2"].Visible then
  1310. v["Object"].TextButton.Frame.BackgroundColor3 = Color3.fromHSV(GuiLibrary["Settings"]["GUIObject"]["Color"], 0.7, 0.9)
  1311. end
  1312. end
  1313. if (v["Type"] == "Button" or v["Type"] == "ButtonMain") and v["Api"]["Enabled"] then
  1314. buttons = buttons + 1
  1315. local rainbowcolor = GuiLibrary["Settings"]["GUIObject"]["Color"] + (GuiLibrary["ObjectsThatCanBeSaved"]["Gui ColorSliderColor"]["Api"]["RainbowValue"] and (-0.025 * tabsortorder[i]) or 0)
  1316. rainbowcolor = rainbowcolor % 1
  1317. local newcolor = Color3.fromHSV(rainbowcolor, 0.7, 0.9)
  1318. v["Object"].ButtonText.TextColor3 = newcolor
  1319. if v["Object"]:FindFirstChild("ButtonIcon") then
  1320. v["Object"].ButtonIcon.ImageColor3 = newcolor
  1321. end
  1322. end
  1323. if v["Type"] == "OptionsButton" then
  1324. if v["Api"]["Enabled"] then
  1325. local newcolor = Color3.fromHSV(GuiLibrary["Settings"]["GUIObject"]["Color"], 0.7, 0.9)
  1326. if not oldrainbow then
  1327. local rainbowcolor2 = table.find(tabsortorder2, v["Object"].Parent.Parent.Name)
  1328. rainbowcolor2 = rainbowcolor2 and (rainbowcolor2 - 1) > 0 and GuiLibrary["ObjectsThatCanBeSaved"][tabsortorder2[rainbowcolor2 - 1].."Window"]["SortOrder"] or 0
  1329. local rainbowcolor = GuiLibrary["Settings"]["GUIObject"]["Color"] + (GuiLibrary["ObjectsThatCanBeSaved"]["Gui ColorSliderColor"]["Api"]["RainbowValue"] and (-0.025 * (rainbowcolor2 + v["SortOrder"])) or 0)
  1330. rainbowcolor = rainbowcolor % 1
  1331. newcolor = Color3.fromHSV(rainbowcolor, 0.7, 0.9)
  1332. end
  1333. v["Object"].BackgroundColor3 = newcolor
  1334. end
  1335. end
  1336. if v["Type"] == "ExtrasButton" then
  1337. if v["Api"]["Enabled"] then
  1338. local rainbowcolor = GuiLibrary["Settings"]["GUIObject"]["Color"] + (GuiLibrary["ObjectsThatCanBeSaved"]["Gui ColorSliderColor"]["Api"]["RainbowValue"] and (-0.025 * buttons) or 0)
  1339. rainbowcolor = rainbowcolor % 1
  1340. local newcolor = Color3.fromHSV(rainbowcolor, 0.7, 0.9)
  1341. v["Object"].ImageColor3 = newcolor
  1342. end
  1343. end
  1344. if (v["Type"] == "Toggle" or v["Type"] == "ToggleMain") and v["Api"]["Enabled"] then
  1345. v["Object"].ToggleFrame1.BackgroundColor3 = Color3.fromHSV(GuiLibrary["Settings"]["GUIObject"]["Color"], 0.7, 0.9)
  1346. end
  1347. if v["Type"] == "Slider" or v["Type"] == "SliderMain" then
  1348. v["Object"].Slider.FillSlider.BackgroundColor3 = Color3.fromHSV(GuiLibrary["Settings"]["GUIObject"]["Color"], 0.7, 0.9)
  1349. v["Object"].Slider.FillSlider.ButtonSlider.ImageColor3 = Color3.fromHSV(GuiLibrary["Settings"]["GUIObject"]["Color"], 0.7, 0.9)
  1350. end
  1351. if v["Type"] == "TwoSlider" then
  1352. v["Object"].Slider.FillSlider.BackgroundColor3 = Color3.fromHSV(GuiLibrary["Settings"]["GUIObject"]["Color"], 0.7, 0.9)
  1353. v["Object"].Slider.ButtonSlider.ImageColor3 = Color3.fromHSV(GuiLibrary["Settings"]["GUIObject"]["Color"], 0.7, 0.9)
  1354. v["Object"].Slider.ButtonSlider2.ImageColor3 = Color3.fromHSV(GuiLibrary["Settings"]["GUIObject"]["Color"], 0.7, 0.9)
  1355. end
  1356. end
  1357. local rainbowcolor = GuiLibrary["Settings"]["GUIObject"]["Color"] + (GuiLibrary["ObjectsThatCanBeSaved"]["Gui ColorSliderColor"]["Api"]["RainbowValue"] and (-0.025 * buttons) or 0)
  1358. rainbowcolor = rainbowcolor % 1
  1359. GuiLibrary["ObjectsThatCanBeSaved"]["GUIWindow"]["Object"].Children.Extras.MainButton.ImageColor3 = (GUI["GetVisibleIcons"]() > 0 and Color3.fromHSV(rainbowcolor, 0.7, 0.9) or Color3.fromRGB(199, 199, 199))
  1360. for i3, v3 in pairs(ProfilesTextList["ScrollingObject"].ScrollingFrame:GetChildren()) do
  1361. -- pcall(function()
  1362. if v3:IsA("TextButton") and v3.ItemText.Text == GuiLibrary["CurrentProfile"] then
  1363. v3.BackgroundColor3 = Color3.fromHSV(GuiLibrary["Settings"]["GUIObject"]["Color"], 0.7, 0.9)
  1364. v3.ImageButton.BackgroundColor3 = Color3.fromHSV(GuiLibrary["Settings"]["GUIObject"]["Color"], 0.7, 0.9)
  1365. v3.ItemText.TextColor3 = Color3.new(1, 1, 1)
  1366. v3.ItemText.TextStrokeTransparency = 0.75
  1367. end
  1368. -- end)
  1369. end
  1370. end)
  1371. end
  1372.  
  1373. GUISettings.CreateToggle({
  1374. ["Name"] = "Blur Background",
  1375. ["Function"] = function(callback) GuiLibrary["MainBlur"].Size = (callback and 25 or 0) end,
  1376. ["Default"] = true,
  1377. ["HoverText"] = "Blur the background of the GUI"
  1378. })
  1379. local welcomemsg = GUISettings.CreateToggle({
  1380. ["Name"] = "GUI bind indicator",
  1381. ["Function"] = function() end,
  1382. ["Default"] = true,
  1383. ["HoverText"] = 'Displays a message indicating your GUI keybind upon injecting.\nI.E "Press RIGHTSHIFT to open GUI"'
  1384. })
  1385. GUISettings.CreateToggle({
  1386. ["Name"] = "Old Rainbow",
  1387. ["Function"] = function(callback) oldrainbow = callback end,
  1388. ["HoverText"] = "Reverts to old rainbow"
  1389. })
  1390. GUISettings.CreateToggle({
  1391. ["Name"] = "Show Tooltips",
  1392. ["Function"] = function(callback) GuiLibrary["ToggleTooltips"] = callback end,
  1393. ["Default"] = true,
  1394. ["HoverText"] = "Toggles visibility of these"
  1395. })
  1396. local rescale = GUISettings.CreateToggle({
  1397. ["Name"] = "Rescale",
  1398. ["Function"] = function(callback)
  1399. GuiLibrary["MainRescale"].Scale = (callback and math.clamp(cam.ViewportSize.X / 1920, 0.5, 1) or 0.99)
  1400. task.wait(0.01)
  1401. GuiLibrary["MainRescale"].Scale = (callback and math.clamp(cam.ViewportSize.X / 1920, 0.5, 1) or 1)
  1402. end,
  1403. ["Default"] = true
  1404. })
  1405. cam:GetPropertyChangedSignal("ViewportSize"):connect(function()
  1406. if rescale["Enabled"] then
  1407. GuiLibrary["MainRescale"].Scale = math.clamp(cam.ViewportSize.X / 1920, 0.5, 1)
  1408. end
  1409. end)
  1410. GeneralSettings.CreateToggle({
  1411. ["Name"] = "Enable Multi-Keybinding",
  1412. ["Function"] = function() end
  1413. })
  1414. GeneralSettings.CreateToggle({
  1415. ["Name"] = "Discord integration",
  1416. ["Function"] = function() end
  1417. })
  1418. local ToggleNotifications = {["Object"] = nil}
  1419. local Notifications = {}
  1420. Notifications = GUISettings.CreateToggle({
  1421. ["Name"] = "Notifications",
  1422. ["Function"] = function(callback)
  1423. GuiLibrary["Notifications"] = callback
  1424. end,
  1425. ["Default"] = true,
  1426. ["HoverText"] = "Shows notifications"
  1427. })
  1428. ToggleNotifications = GUISettings.CreateToggle({
  1429. ["Name"] = "Toggle Alert",
  1430. ["Function"] = function(callback) GuiLibrary["ToggleNotifications"] = callback end,
  1431. ["Default"] = true,
  1432. ["HoverText"] = "Notifies you if a module is enabled/disabled."
  1433. })
  1434. ToggleNotifications["Object"].BackgroundTransparency = 0
  1435. ToggleNotifications["Object"].BorderSizePixel = 0
  1436. ToggleNotifications["Object"].BackgroundColor3 = Color3.fromRGB(20, 20, 20)
  1437. GUISettings.CreateSlider({
  1438. ["Name"] = "Rainbow Speed",
  1439. ["Function"] = function(val)
  1440. GuiLibrary["RainbowSpeed"] = math.clamp((val / 10) - 0.4, 0, 1000000000)
  1441. end,
  1442. ["Min"] = 1,
  1443. ["Max"] = 100,
  1444. ["Default"] = 10
  1445. })
  1446.  
  1447. local GUIbind = GUI.CreateGUIBind()
  1448.  
  1449. local teleportfunc = game:GetService("Players").LocalPlayer.OnTeleport:Connect(function(State)
  1450. if State == Enum.TeleportState.Started and not shared.VapeIndependent then
  1451. local teleportstr = 'shared.VapeSwitchServers = true if shared.VapeDeveloper then loadstring(readfile("vape/NewMainScript.lua"))() else loadstring(game:HttpGet("https://raw.githubusercontent.com/7GrandDadPGN/VapeV4ForRoblox/main/NewMainScript.lua", true))() end'
  1452. if shared.VapeDeveloper then
  1453. teleportstr = 'shared.VapeDeveloper = true '..teleportstr
  1454. end
  1455. if shared.VapePrivate then
  1456. teleportstr = 'shared.VapePrivate = true '..teleportstr
  1457. end
  1458. GuiLibrary["SaveSettings"]()
  1459. queueteleport(teleportstr)
  1460. end
  1461. end)
  1462.  
  1463. GuiLibrary["SelfDestruct"] = function()
  1464. spawn(function()
  1465. coroutine.close(selfdestructsave)
  1466. end)
  1467. injected = false
  1468. GuiLibrary["SaveSettings"]()
  1469. game:GetService("UserInputService").OverrideMouseIconBehavior = Enum.OverrideMouseIconBehavior.None
  1470. for i,v in pairs(GuiLibrary["ObjectsThatCanBeSaved"]) do
  1471. if (v["Type"] == "Button" or v["Type"] == "OptionsButton") and v["Api"]["Enabled"] then
  1472. v["Api"]["ToggleButton"](false)
  1473. end
  1474. end
  1475. GuiLibrary["SelfDestructEvent"]:Fire()
  1476. shared.VapeExecuted = nil
  1477. shared.VapePrivate = nil
  1478. shared.VapeFullyLoaded = nil
  1479. shared.VapeSwitchServers = nil
  1480. shared.GuiLibrary = nil
  1481. shared.VapeIndependent = nil
  1482. shared.VapeManualLoad = nil
  1483. shared.CustomSaveVape = nil
  1484. GuiLibrary["KeyInputHandler"]:Disconnect()
  1485. GuiLibrary["KeyInputHandler2"]:Disconnect()
  1486. if MiddleClickInput then
  1487. MiddleClickInput:Disconnect()
  1488. end
  1489. teleportfunc:Disconnect()
  1490. GuiLibrary["MainGui"]:Remove()
  1491. GuiLibrary["MainBlur"]:Remove()
  1492. end
  1493.  
  1494. GeneralSettings.CreateButton2({
  1495. ["Name"] = "RESET CURRENT PROFILE",
  1496. ["Function"] = function()
  1497. local vapeprivate = shared.VapePrivate
  1498. GuiLibrary["SelfDestruct"]()
  1499. delfile(customdir.."Profiles/"..(GuiLibrary["CurrentProfile"] == "default" and "" or GuiLibrary["CurrentProfile"])..game.PlaceId..".vapeprofile.txt")
  1500. shared.VapeSwitchServers = true
  1501. shared.VapeOpenGui = true
  1502. shared.VapePrivate = vapeprivate
  1503. loadstring(GetURL("NewMainScript.lua"))()
  1504. end
  1505. })
  1506. GUISettings.CreateButton2({
  1507. ["Name"] = "RESET GUI POSITIONS",
  1508. ["Function"] = function()
  1509. for i,v in pairs(GuiLibrary["ObjectsThatCanBeSaved"]) do
  1510. if (v["Type"] == "Window" or v["Type"] == "CustomWindow") and GuiLibrary["findObjectInTable"](GuiLibrary["ObjectsThatCanBeSaved"], i) then
  1511. v["Object"].Position = (i == "GUIWindow" and UDim2.new(0, 6, 0, 6) or UDim2.new(0, 223, 0, 6))
  1512. end
  1513. end
  1514. end
  1515. })
  1516. GUISettings.CreateButton2({
  1517. ["Name"] = "SORT GUI",
  1518. ["Function"] = function()
  1519. local sorttable = {}
  1520. local movedown = false
  1521. local sortordertable = {
  1522. ["GUIWindow"] = 1,
  1523. ["CombatWindow"] = 2,
  1524. ["BlatantWindow"] = 3,
  1525. ["RenderWindow"] = 4,
  1526. ["UtilityWindow"] = 5,
  1527. ["WorldWindow"] = 6,
  1528. ["FriendsWindow"] = 7,
  1529. ["ProfilesWindow"] = 8,
  1530. ["Text GUICustomWindow"] = 9,
  1531. ["TargetInfoCustomWindow"] = 10,
  1532. ["RadarCustomWindow"] = 11,
  1533. }
  1534. local storedpos = {}
  1535. local num = 6
  1536. for i,v in pairs(GuiLibrary["ObjectsThatCanBeSaved"]) do
  1537. if v["Type"] == "Window" and GuiLibrary["findObjectInTable"](GuiLibrary["ObjectsThatCanBeSaved"], i) and v["Object"].Visible then
  1538. local sortordernum = (sortordertable[i] or #sorttable)
  1539. sorttable[sortordernum] = v["Object"]
  1540. end
  1541. end
  1542. for i2,v2 in pairs(sorttable) do
  1543. if num > 1697 then
  1544. movedown = true
  1545. num = 6
  1546. end
  1547. v2.Position = UDim2.new(0, num, 0, (movedown and (storedpos[num] and (storedpos[num] + 9) or 400) or 39))
  1548. if not storedpos[num] then
  1549. storedpos[num] = v2.AbsoluteSize.Y
  1550. if v2.Name == "MainWindow" then
  1551. storedpos[num] = 400
  1552. end
  1553. end
  1554. num = num + 223
  1555. end
  1556. end
  1557. })
  1558. GeneralSettings.CreateButton2({
  1559. ["Name"] = "UNINJECT",
  1560. ["Function"] = GuiLibrary["SelfDestruct"]
  1561. })
  1562.  
  1563. if shared.VapeIndependent then
  1564. spawn(function()
  1565. repeat task.wait() until shared.VapeManualLoad
  1566. GuiLibrary["LoadSettings"]()
  1567. if #ProfilesTextList["ObjectList"] == 0 then
  1568. table.insert(ProfilesTextList["ObjectList"], "default")
  1569. ProfilesTextList["RefreshValues"](ProfilesTextList["ObjectList"])
  1570. end
  1571. GUIbind["Reload"]()
  1572. GuiLibrary["UpdateUI"]()
  1573. UpdateHud()
  1574. if not shared.VapeSwitchServers then
  1575. if blatantmode["Enabled"] then
  1576. pcall(function()
  1577. local frame = GuiLibrary["CreateNotification"]("Blatant Enabled", "Vape is now in Blatant Mode.", 5.5, "assets/WarningNotification.png")
  1578. frame.Frame.Frame.ImageColor3 = Color3.fromRGB(236, 129, 44)
  1579. end)
  1580. end
  1581. GuiLibrary["LoadedAnimation"](welcomemsg["Enabled"])
  1582. else
  1583. shared.VapeSwitchServers = nil
  1584. end
  1585. if shared.VapeOpenGui then
  1586. GuiLibrary["MainGui"].ScaledGui.ClickGui.Visible = true
  1587. GuiLibrary["MainBlur"].Enabled = true
  1588. shared.VapeOpenGui = nil
  1589. end
  1590.  
  1591. coroutine.resume(selfdestructsave)
  1592. end)
  1593. shared.VapeFullyLoaded = true
  1594. return GuiLibrary
  1595. else
  1596. loadstring(GetURL("AnyGame.vape"))()
  1597. if betterisfile("vape/CustomModules/"..game.PlaceId..".vape") then
  1598. loadstring(readfile("vape/CustomModules/"..game.PlaceId..".vape"))()
  1599. else
  1600. local publicrepo = checkpublicrepo(game.PlaceId)
  1601. if publicrepo then
  1602. loadstring(publicrepo)()
  1603. end
  1604. end
  1605. if shared.VapePrivate then
  1606. if pcall(function() readfile("vapeprivate/CustomModules/"..game.PlaceId..".vape") end) then
  1607. loadstring(readfile("vapeprivate/CustomModules/"..game.PlaceId..".vape"))()
  1608. end
  1609. end
  1610. GuiLibrary["LoadSettings"]()
  1611. local profiles = {}
  1612. for i,v in pairs(GuiLibrary["Profiles"]) do
  1613. table.insert(profiles, i)
  1614. end
  1615. table.sort(profiles, function(a, b) return b == "default" and true or a:lower() < b:lower() end)
  1616. ProfilesTextList["RefreshValues"](profiles)
  1617. GUIbind["Reload"]()
  1618. GuiLibrary["UpdateUI"]()
  1619. UpdateHud()
  1620. if not shared.VapeSwitchServers then
  1621. if blatantmode["Enabled"] then
  1622. pcall(function()
  1623. local frame = GuiLibrary["CreateNotification"]("Blatant Enabled", "Vape is now in Blatant Mode.", 5.5, "assets/WarningNotification.png")
  1624. frame.Frame.Frame.ImageColor3 = Color3.fromRGB(236, 129, 44)
  1625. end)
  1626. end
  1627. GuiLibrary["LoadedAnimation"](welcomemsg["Enabled"])
  1628. else
  1629. shared.VapeSwitchServers = nil
  1630. end
  1631. if shared.VapeOpenGui then
  1632. GuiLibrary["MainGui"].ScaledGui.ClickGui.Visible = true
  1633. GuiLibrary["MainBlur"].Enabled = true
  1634. shared.VapeOpenGui = nil
  1635. end
  1636.  
  1637. coroutine.resume(selfdestructsave)
  1638. shared.VapeFullyLoaded = true
  1639. end
  1640. --------------------------------------------------------------------------------------------
  1641. --IT WOULD REALLY HELP IF YOU GO CHECK OUT MY YOUTUBE CHANNEL BELOW BECAUSE I GO THROUGH A LOT OF ADS TO GET THESE SCRIPTS FOR YOU:--
  1642. --https://www.youtube.com/channel/UCChTWXbHYQ7a87bFPhzN0oQ--
Advertisement
Add Comment
Please, Sign In to add comment
Advertisement