Domadicoof-28363

Fjfndndbdbx

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