Advertisement
rioss20091

Untitled

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