Advertisement
DiveGamerV2

BEDWARS Script Op

May 29th, 2022
32
0
Never
Not a member of Pastebin yet? Sign Up, it unlocks many cool features!
text 65.26 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.  
  700. local onething = Instance.new("ImageLabel")
  701. onething.Parent = TextGui.GetCustomChildren()
  702. onething.Name = "Logo"
  703. onething.Size = UDim2.new(0, 100, 0, 27)
  704. onething.Position = UDim2.new(1, -140, 0, 3)
  705. onething.BackgroundColor3 = Color3.new(0, 0, 0)
  706. onething.BorderSizePixel = 0
  707. onething.BackgroundTransparency = 1
  708. onething.Visible = false
  709. onething.Image = getcustomassetfunc(translatedlogo and "vape/translations/"..GuiLibrary["Language"].."/VapeLogo3.png" or "vape/assets/VapeLogo3.png")
  710. local onething2 = Instance.new("ImageLabel")
  711. onething2.Parent = onething
  712. onething2.Size = UDim2.new(0, 41, 0, 24)
  713. onething2.Name = "Logo2"
  714. onething2.Position = UDim2.new(1, 0, 0, 1)
  715. onething2.BorderSizePixel = 0
  716. onething2.BackgroundColor3 = Color3.new(0, 0, 0)
  717. onething2.BackgroundTransparency = 1
  718. onething2.Image = getcustomassetfunc("vape/assets/VapeLogo4.png")
  719. local onething3 = onething:Clone()
  720. onething3.ImageColor3 = Color3.new(0, 0, 0)
  721. onething3.ImageTransparency = 0.5
  722. onething3.ZIndex = 0
  723. onething3.Position = UDim2.new(0, 1, 0, 1)
  724. onething3.Visible = false
  725. onething3.Parent = onething
  726. onething3.Logo2.ImageColor3 = Color3.new(0, 0, 0)
  727. onething3.Logo2.ZIndex = 0
  728. onething3.Logo2.ImageTransparency = 0.5
  729. local onetext = Instance.new("TextLabel")
  730. onetext.Parent = TextGui.GetCustomChildren()
  731. onetext.Size = UDim2.new(1, 0, 1, 0)
  732. onetext.Position = UDim2.new(1, -154, 0, 35)
  733. onetext.TextColor3 = Color3.new(1, 1, 1)
  734. onetext.RichText = true
  735. onetext.BackgroundTransparency = 1
  736. onetext.TextXAlignment = Enum.TextXAlignment.Left
  737. onetext.TextYAlignment = Enum.TextYAlignment.Top
  738. onetext.BorderSizePixel = 0
  739. onetext.BackgroundColor3 = Color3.new(0, 0, 0)
  740. onetext.Font = Enum.Font.SourceSans
  741. onetext.Text = ""
  742. onetext.TextSize = 23
  743. local onetext2 = Instance.new("TextLabel")
  744. onetext2.Name = "ExtraText"
  745. onetext2.Parent = onetext
  746. onetext2.Size = UDim2.new(1, 0, 1, 0)
  747. onetext2.Position = UDim2.new(0, 1, 0, 1)
  748. onetext2.BorderSizePixel = 0
  749. onetext2.Visible = false
  750. onetext2.ZIndex = 0
  751. onetext2.Text = ""
  752. onetext2.BackgroundTransparency = 1
  753. onetext2.TextTransparency = 0.5
  754. onetext2.TextXAlignment = Enum.TextXAlignment.Left
  755. onetext2.TextYAlignment = Enum.TextYAlignment.Top
  756. onetext2.TextColor3 = Color3.new(0, 0, 0)
  757. onetext2.Font = Enum.Font.SourceSans
  758. onetext2.TextSize = 23
  759. local onecustomtext = Instance.new("TextLabel")
  760. onecustomtext.TextSize = 30
  761. onecustomtext.Font = Enum.Font.GothamBold
  762. onecustomtext.Size = UDim2.new(1, 0, 1, 0)
  763. onecustomtext.BackgroundTransparency = 1
  764. onecustomtext.Position = UDim2.new(0, 0, 0, 35)
  765. onecustomtext.TextXAlignment = Enum.TextXAlignment.Left
  766. onecustomtext.TextYAlignment = Enum.TextYAlignment.Top
  767. onecustomtext.Text = "7GrandDad's Client"
  768. onecustomtext.Parent = TextGui.GetCustomChildren()
  769. local onecustomtext2 = onecustomtext:Clone()
  770. onecustomtext2.ZIndex = -1
  771. onecustomtext2.Size = UDim2.new(1, 0, 1, 0)
  772. onecustomtext2.TextTransparency = 0.5
  773. onecustomtext2.TextColor3 = Color3.new(0, 0, 0)
  774. onecustomtext2.Position = UDim2.new(0, 1, 0, 1)
  775. onecustomtext2.Parent = onecustomtext
  776. onecustomtext:GetPropertyChangedSignal("TextXAlignment"):connect(function()
  777. onecustomtext2.TextXAlignment = onecustomtext.TextXAlignment
  778. end)
  779. local onebackground = Instance.new("Frame")
  780. onebackground.BackgroundTransparency = 1
  781. onebackground.BorderSizePixel = 0
  782. onebackground.BackgroundColor3 = Color3.new(0, 0, 0)
  783. onebackground.Size = UDim2.new(1, 0, 1, 0)
  784. onebackground.Visible = false
  785. onebackground.Parent = TextGui.GetCustomChildren()
  786. onebackground.ZIndex = 0
  787. local onebackgroundsort = Instance.new("UIListLayout")
  788. onebackgroundsort.FillDirection = Enum.FillDirection.Vertical
  789. onebackgroundsort.SortOrder = Enum.SortOrder.LayoutOrder
  790. onebackgroundsort.Padding = UDim.new(0, 0)
  791. onebackgroundsort.Parent = onebackground
  792. local onescale = Instance.new("UIScale")
  793. onescale.Parent = TextGui.GetCustomChildren()
  794. local textguirenderbkg = {["Enabled"] = false}
  795. local function refreshbars(textlists)
  796. for i,v in pairs(onebackground:GetChildren()) do
  797. if v:IsA("Frame") then
  798. v:Remove()
  799. end
  800. end
  801. for i2,v2 in pairs(textlists) do
  802. local newstr = v2:gsub(":", " ")
  803. local textsize = game:GetService("TextService"):GetTextSize(newstr, onetext.TextSize, onetext.Font, Vector2.new(1000000, 1000000))
  804. local frame = Instance.new("Frame")
  805. frame.BorderSizePixel = 0
  806. frame.BackgroundTransparency = 0.62
  807. frame.BackgroundColor3 = Color3.new(0,0,0)
  808. frame.Visible = true
  809. frame.ZIndex = 0
  810. frame.LayoutOrder = i2
  811. frame.Size = UDim2.new(0, textsize.X + 8, 0, textsize.Y)
  812. frame.Parent = onebackground
  813. local colorframe = Instance.new("Frame")
  814. colorframe.Size = UDim2.new(0, 2, 1, 0)
  815. colorframe.Position = (onebackgroundsort.HorizontalAlignment == Enum.HorizontalAlignment.Left and UDim2.new(0, 0, 0, 0) or UDim2.new(1, -2, 0, 0))
  816. colorframe.BorderSizePixel = 0
  817. colorframe.Name = "ColorFrame"
  818. colorframe.Parent = frame
  819. local extraframe = Instance.new("Frame")
  820. extraframe.BorderSizePixel = 0
  821. extraframe.BackgroundTransparency = 0.96
  822. extraframe.BackgroundColor3 = Color3.new(0, 0, 0)
  823. extraframe.ZIndex = 0
  824. extraframe.Size = UDim2.new(1, 0, 0, 2)
  825. extraframe.Position = UDim2.new(0, 0, 1, -1)
  826. extraframe.Parent = frame
  827. end
  828. end
  829.  
  830. onething.Visible = true onetext.Position = UDim2.new(0, 0, 0, 41)
  831.  
  832. local sortingmethod = "Alphabetical"
  833. local textwithoutthing = ""
  834. local function getSpaces(str)
  835. local strSize = game:GetService("TextService"):GetTextSize(str, onetext.TextSize, onetext.TextSize, Vector2.new(10000, 10000))
  836. return math.ceil(strSize.X / 3)
  837. end
  838. local function UpdateHud()
  839. if GuiLibrary["MainGui"].ScaledGui.Visible then
  840. local text = ""
  841. local text2 = ""
  842. local tableofmodules = {}
  843. local first = true
  844.  
  845. for i,v in pairs(GuiLibrary["ObjectsThatCanBeSaved"]) do
  846. if v["Type"] == "OptionsButton" and v["Api"]["Name"] ~= "Text GUI" then
  847. if v["Api"]["Enabled"] then
  848. local blacklisted = table.find(TextGuiCircleObject["CircleList"]["ObjectList"], v["Api"]["Name"]) and TextGuiCircleObject["CircleList"]["ObjectListEnabled"][table.find(TextGuiCircleObject["CircleList"]["ObjectList"], v["Api"]["Name"])]
  849. if not blacklisted then
  850. table.insert(tableofmodules, {["Text"] = v["Api"]["Name"], ["ExtraText"] = v["Api"]["GetExtraText"]})
  851. end
  852. end
  853. end
  854. end
  855. if sortingmethod == "Alphabetical" then
  856. table.sort(tableofmodules, function(a, b) return a["Text"]:lower() < b["Text"]:lower() end)
  857. else
  858. table.sort(tableofmodules, function(a, b)
  859. local textsize1 = (translations[a["Text"]] ~= nil and translations[a["Text"]] or a["Text"])..(a["ExtraText"] and a["ExtraText"]() or "")
  860. local textsize2 = (translations[b["Text"]] ~= nil and translations[b["Text"]] or b["Text"])..(b["ExtraText"] and b["ExtraText"]() or "")
  861. textsize1 = game:GetService("TextService"):GetTextSize(textsize1, onetext.TextSize, onetext.Font, Vector2.new(1000000, 1000000))
  862. textsize2 = game:GetService("TextService"):GetTextSize(textsize2, onetext.TextSize, onetext.Font, Vector2.new(1000000, 1000000))
  863. return textsize1.X > textsize2.X
  864. end)
  865. end
  866. local textlists = {}
  867. for i2,v2 in pairs(tableofmodules) do
  868. if first then
  869. text = (translations[v2["Text"]] ~= nil and translations[v2["Text"]] or v2["Text"])..(v2["ExtraText"]() ~= "" and ":"..v2["ExtraText"]() or "")
  870. first = false
  871. else
  872. text = text..'\n'..(translations[v2["Text"]] ~= nil and translations[v2["Text"]] or v2["Text"])..(v2["ExtraText"]() ~= "" and ":"..v2["ExtraText"]() or "")
  873. end
  874. table.insert(textlists, (translations[v2["Text"]] ~= nil and translations[v2["Text"]] or v2["Text"])..(v2["ExtraText"]() ~= "" and ":"..v2["ExtraText"]() or ""))
  875. end
  876. textwithoutthing = text
  877. onetext.Text = text
  878. onetext2.Text = text:gsub(":", " ")
  879. local newsize = game:GetService("TextService"):GetTextSize(text, onetext.TextSize, onetext.Font, Vector2.new(1000000, 1000000))
  880. if text == "" then
  881. newsize = Vector2.new(0, 0)
  882. end
  883. onetext.Size = UDim2.new(0, 154, 0, newsize.Y)
  884. if TextGui.GetCustomChildren().Parent then
  885. if (TextGui.GetCustomChildren().Parent.Position.X.Offset + TextGui.GetCustomChildren().Parent.Size.X.Offset / 2) >= (cam.ViewportSize.X / 2) then
  886. onetext.TextXAlignment = Enum.TextXAlignment.Right
  887. onetext2.TextXAlignment = Enum.TextXAlignment.Right
  888. onetext2.Position = UDim2.new(0, 1, 0, 1)
  889. onething.Position = UDim2.new(1, -142, 0, 8)
  890. onetext.Position = UDim2.new(1, -154, 0, (onething.Visible and (textguirenderbkg["Enabled"] and 41 or 35) or 5) + (onecustomtext.Visible and 25 or 0))
  891. onecustomtext.Position = UDim2.new(0, 0, 0, onething.Visible and 35 or 0)
  892. onecustomtext.TextXAlignment = Enum.TextXAlignment.Right
  893. onebackgroundsort.HorizontalAlignment = Enum.HorizontalAlignment.Right
  894. onebackground.Position = onetext.Position + UDim2.new(0, -60, 0, 2)
  895. else
  896. onetext.TextXAlignment = Enum.TextXAlignment.Left
  897. onetext2.TextXAlignment = Enum.TextXAlignment.Left
  898. onetext2.Position = UDim2.new(0, 5, 0, 1)
  899. onething.Position = UDim2.new(0, 2, 0, 8)
  900. onetext.Position = UDim2.new(0, 6, 0, (onething.Visible and (textguirenderbkg["Enabled"] and 41 or 35) or 5) + (onecustomtext.Visible and 25 or 0))
  901. onecustomtext.TextXAlignment = Enum.TextXAlignment.Left
  902. onebackgroundsort.HorizontalAlignment = Enum.HorizontalAlignment.Left
  903. onebackground.Position = onetext.Position + UDim2.new(0, -1, 0, 2)
  904. end
  905. end
  906. refreshbars(textlists)
  907. GuiLibrary["UpdateUI"]()
  908. end
  909. end
  910.  
  911. TextGui.GetCustomChildren().Parent:GetPropertyChangedSignal("Position"):connect(UpdateHud)
  912. onescale:GetPropertyChangedSignal("Scale"):connect(function()
  913. local childrenobj = TextGui.GetCustomChildren()
  914. local check = (childrenobj.Parent.Position.X.Offset + childrenobj.Parent.Size.X.Offset / 2) >= (cam.ViewportSize.X / 2)
  915. childrenobj.Position = UDim2.new((check and -(onescale.Scale - 1) or 0), (check and 0 or -6 * (onescale.Scale - 1)), 1, -6 * (onescale.Scale - 1))
  916. UpdateHud()
  917. end)
  918. GuiLibrary["UpdateHudEvent"].Event:connect(UpdateHud)
  919. TextGui.CreateDropdown({
  920. ["Name"] = "Sort",
  921. ["List"] = {"Alphabetical", "Length"},
  922. ["Function"] = function(val)
  923. sortingmethod = val
  924. GuiLibrary["UpdateHudEvent"]:Fire()
  925. end
  926. })
  927. textguiscaleslider = TextGui.CreateSlider({
  928. ["Name"] = "Scale",
  929. ["Min"] = 1,
  930. ["Max"] = 50,
  931. ["Default"] = 10,
  932. ["Function"] = function(val)
  933. onescale.Scale = val / 10
  934. end
  935. })
  936. TextGui.CreateToggle({
  937. ["Name"] = "Shadow",
  938. ["Function"] = function(callback) onetext2.Visible = callback onething3.Visible = callback end,
  939. ["HoverText"] = "Renders shadowed text."
  940. })
  941. local TextGuiUseCategoryColor = TextGui.CreateToggle({
  942. ["Name"] = "Use Category Color",
  943. ["Function"] = function(callback) GuiLibrary["UpdateUI"]() end
  944. })
  945. TextGui.CreateToggle({
  946. ["Name"] = "Watermark",
  947. ["Function"] = function(callback)
  948. onething.Visible = callback
  949. UpdateHud()
  950. end,
  951. ["HoverText"] = "Renders a vape watermark"
  952. })
  953. textguirenderbkg = TextGui.CreateToggle({
  954. ["Name"] = "Render background",
  955. ["Function"] = function(callback)
  956. onebackground.Visible = callback
  957. UpdateHud()
  958. end
  959. })
  960. TextGui.CreateToggle({
  961. ["Name"] = "Blacklist",
  962. ["Function"] = function(callback)
  963. if TextGuiCircleObject["Object"] then
  964. TextGuiCircleObject["Object"].Visible = callback
  965. end
  966. end
  967. })
  968. TextGuiCircleObject = TextGui.CreateCircleWindow({
  969. ["Name"] = "Blacklist",
  970. ["Type"] = "Blacklist",
  971. ["UpdateFunction"] = function()
  972. GuiLibrary["UpdateHudEvent"]:Fire()
  973. end
  974. })
  975. TextGuiCircleObject["Object"].Visible = false
  976. local CustomText = {["Value"] = "", ["Object"] = nil}
  977. TextGui.CreateToggle({
  978. ["Name"] = "Add custom text",
  979. ["Function"] = function(callback)
  980. onecustomtext.Visible = callback
  981. if CustomText["Object"] then
  982. CustomText["Object"].Visible = callback
  983. end
  984. UpdateHud()
  985. end,
  986. ["HoverText"] = "Renders a custom label"
  987. })
  988. CustomText = TextGui.CreateTextBox({
  989. ["Name"] = "Custom text",
  990. ["FocusLost"] = function(enter)
  991. onecustomtext.Text = CustomText["Value"]
  992. onecustomtext2.Text = CustomText["Value"]
  993. end
  994. })
  995. CustomText["Object"].Visible = false
  996.  
  997. local healthColorToPosition = {
  998. [Vector3.new(Color3.fromRGB(255, 28, 0).r,
  999. Color3.fromRGB(255, 28, 0).g,
  1000. Color3.fromRGB(255, 28, 0).b)] = 0.1;
  1001. [Vector3.new(Color3.fromRGB(250, 235, 0).r,
  1002. Color3.fromRGB(250, 235, 0).g,
  1003. Color3.fromRGB(250, 235, 0).b)] = 0.5;
  1004. [Vector3.new(Color3.fromRGB(27, 252, 107).r,
  1005. Color3.fromRGB(27, 252, 107).g,
  1006. Color3.fromRGB(27, 252, 107).b)] = 0.8;
  1007. }
  1008. local min = 0.1
  1009. local minColor = Color3.fromRGB(255, 28, 0)
  1010. local max = 0.8
  1011. local maxColor = Color3.fromRGB(27, 252, 107)
  1012.  
  1013. local function HealthbarColorTransferFunction(healthPercent)
  1014. if healthPercent < min then
  1015. return minColor
  1016. elseif healthPercent > max then
  1017. return maxColor
  1018. end
  1019.  
  1020.  
  1021. local numeratorSum = Vector3.new(0,0,0)
  1022. local denominatorSum = 0
  1023. for colorSampleValue, samplePoint in pairs(healthColorToPosition) do
  1024. local distance = healthPercent - samplePoint
  1025. if distance == 0 then
  1026.  
  1027. return Color3.new(colorSampleValue.x, colorSampleValue.y, colorSampleValue.z)
  1028. else
  1029. local wi = 1 / (distance*distance)
  1030. numeratorSum = numeratorSum + wi * colorSampleValue
  1031. denominatorSum = denominatorSum + wi
  1032. end
  1033. end
  1034. local result = numeratorSum / denominatorSum
  1035. return Color3.new(result.x, result.y, result.z)
  1036. end
  1037.  
  1038. local TargetInfo = GuiLibrary.CreateCustomWindow({
  1039. ["Name"] = "Target Info",
  1040. ["Icon"] = "vape/assets/TargetInfoIcon1.png",
  1041. ["IconSize"] = 16
  1042. })
  1043. local TargetInfoDisplayNames = TargetInfo.CreateToggle({
  1044. ["Name"] = "Use Display Name",
  1045. ["Function"] = function() end,
  1046. ["Default"] = true
  1047. })
  1048. local targetinfobkg1 = Instance.new("Frame")
  1049. targetinfobkg1.BackgroundColor3 = Color3.fromRGB(26, 25, 26)
  1050. targetinfobkg1.BorderSizePixel = 0
  1051. targetinfobkg1.Size = UDim2.new(0, 220, 0, 72)
  1052. targetinfobkg1.Position = UDim2.new(0, 0, 0, 0)
  1053. targetinfobkg1.Parent = TargetInfo.GetCustomChildren()
  1054. local targetinfobkg2 = targetinfobkg1:Clone()
  1055. targetinfobkg2.ZIndex = 0
  1056. targetinfobkg2.Position = UDim2.new(0, 0, 0, -6)
  1057. targetinfobkg2.Size = UDim2.new(0, 220, 0, 86)
  1058. targetinfobkg2.Parent = targetinfobkg1
  1059. local targetinfobkg3 = Instance.new("Frame")
  1060. targetinfobkg3.BackgroundColor3 = Color3.fromRGB(31, 30, 31)
  1061. targetinfobkg3.Size = UDim2.new(0, 220, 0, 80)
  1062. targetinfobkg3.Position = UDim2.new(0, 0, 0, -5)
  1063. targetinfobkg3.Name = "MainInfo"
  1064. targetinfobkg3.Parent = targetinfobkg1
  1065. local targetname = Instance.new("TextLabel")
  1066. targetname.TextSize = 17
  1067. targetname.Font = Enum.Font.SourceSans
  1068. targetname.TextColor3 = Color3.fromRGB(162, 162, 162)
  1069. targetname.Position = UDim2.new(0, 72, 0, 7)
  1070. targetname.TextStrokeTransparency = 0.75
  1071. targetname.BackgroundTransparency = 1
  1072. targetname.Size = UDim2.new(0, 80, 0, 16)
  1073. targetname.TextScaled = true
  1074. targetname.Text = "Target name"
  1075. targetname.ZIndex = 2
  1076. targetname.TextXAlignment = Enum.TextXAlignment.Left
  1077. targetname.TextYAlignment = Enum.TextYAlignment.Top
  1078. targetname.Parent = targetinfobkg3
  1079. local targethealth = Instance.new("TextLabel")
  1080. targethealth.TextColor3 = Color3.fromRGB(95, 94, 95)
  1081. targethealth.Font = Enum.Font.SourceSans
  1082. targethealth.Size = UDim2.new(0, 0, 0, 0)
  1083. targethealth.TextSize = 17
  1084. targethealth.Position = UDim2.new(0, 210, 0, 6)
  1085. targethealth.BackgroundTransparency = 1
  1086. targethealth.Text = '20'..' hp'
  1087. targethealth.TextScaled = false
  1088. targethealth.ZIndex = 2
  1089. targethealth.TextXAlignment = Enum.TextXAlignment.Right
  1090. targethealth.TextYAlignment = Enum.TextYAlignment.Top
  1091. targethealth.Parent = targetinfobkg3
  1092. local targethealthbkg = Instance.new("Frame")
  1093. targethealthbkg.BackgroundColor3 = Color3.fromRGB(43, 42, 43)
  1094. targethealthbkg.Size = UDim2.new(0, 138, 0, 4)
  1095. targethealthbkg.Position = UDim2.new(0, 72, 0, 29)
  1096. targethealthbkg.Parent = targetinfobkg3
  1097. local targethealthgreen = Instance.new("Frame")
  1098. targethealthgreen.BackgroundColor3 = Color3.fromRGB(40, 137, 109)
  1099. targethealthgreen.Size = UDim2.new(1, 0, 0, 4)
  1100. targethealthgreen.ZIndex = 3
  1101. targethealthgreen.Parent = targethealthbkg
  1102. local targetimage = Instance.new("ImageLabel")
  1103. targetimage.Size = UDim2.new(0, 61, 0, 61)
  1104. targetimage.BackgroundTransparency = 1
  1105. targetimage.Image = 'rbxthumb://type=AvatarHeadShot&id='..game:GetService("Players").LocalPlayer.UserId..'&w=420&h=420'
  1106. targetimage.Position = UDim2.new(0, 5, 0, 10)
  1107. targetimage.Parent = targetinfobkg3
  1108. local round1 = Instance.new("UICorner")
  1109. round1.CornerRadius = UDim.new(0, 4)
  1110. round1.Parent = targetinfobkg2
  1111. local round2 = Instance.new("UICorner")
  1112. round2.CornerRadius = UDim.new(0, 4)
  1113. round2.Parent = targetinfobkg3
  1114. local round3 = Instance.new("UICorner")
  1115. round3.CornerRadius = UDim.new(0, 8)
  1116. round3.Parent = targethealthbkg
  1117. local round4 = Instance.new("UICorner")
  1118. round4.CornerRadius = UDim.new(0, 8)
  1119. round4.Parent = targethealthgreen
  1120. local round5 = Instance.new("UICorner")
  1121. round5.CornerRadius = UDim.new(0, 4)
  1122. round5.Parent = targetimage
  1123. local oldhealth = 100
  1124. local allowedtween = true
  1125. TargetInfo.GetCustomChildren().Parent:GetPropertyChangedSignal("Size"):connect(function()
  1126. if TargetInfo.GetCustomChildren().Parent.Size ~= UDim2.new(0, 220, 0, 0) then
  1127. targetinfobkg3.Position = UDim2.new(0, 0, 0, -5)
  1128. targetinfobkg2.BackgroundTransparency = 0
  1129. targetinfobkg1.BackgroundTransparency = 0
  1130. else
  1131. targetinfobkg3.Position = UDim2.new(0, 0, 0, 40)
  1132. targetinfobkg2.BackgroundTransparency = 1
  1133. targetinfobkg1.BackgroundTransparency = 1
  1134. end
  1135. end)
  1136. shared.VapeTargetInfo = {
  1137. ["UpdateInfo"] = function(tab, targetsize)
  1138. if TargetInfo.GetCustomChildren().Parent then
  1139. targetinfobkg3.Visible = (targetsize > 0) or (TargetInfo.GetCustomChildren().Parent.Size ~= UDim2.new(0, 220, 0, 0))
  1140. for i,v in pairs(tab) do
  1141. local plr = game:GetService("Players"):FindFirstChild(i)
  1142. targetimage.Image = 'rbxthumb://type=AvatarHeadShot&id='..v["UserId"]..'&w=420&h=420'
  1143. targethealthgreen:TweenSize(UDim2.new(v["Health"] / v["MaxHealth"], 0, 0, 4), Enum.EasingDirection.Out, Enum.EasingStyle.Quart, 0.25, true)
  1144. targethealth.Text = (math.floor((v["Health"] / 5) * 10) / 10).." hp"
  1145. targethealthgreen.BackgroundColor3 = HealthbarColorTransferFunction(v["Health"] / v["MaxHealth"])
  1146. targetname.Text = (TargetInfoDisplayNames["Enabled"] and plr and plr.DisplayName or i)
  1147. end
  1148. end
  1149. end,
  1150. ["Object"] = TargetInfo
  1151. }
  1152. GUI.CreateCustomToggle({
  1153. ["Name"] = "Target Info",
  1154. ["Icon"] = "vape/assets/TargetInfoIcon2.png",
  1155. ["Function"] = function(callback) TargetInfo.SetVisible(callback) end,
  1156. ["Priority"] = 1
  1157. })
  1158. local GeneralSettings = GUI.CreateDivider2("General Settings")
  1159. local ModuleSettings = GUI.CreateDivider2("Module Settings")
  1160. local GUISettings = GUI.CreateDivider2("GUI Settings")
  1161. ModuleSettings.CreateToggle({
  1162. ["Name"] = "Teams by server",
  1163. ["Function"] = function() end,
  1164. })
  1165. ModuleSettings.CreateToggle({
  1166. ["Name"] = "Teams by color",
  1167. ["Function"] = function() end,
  1168. ["Default"] = true,
  1169. ["HoverText"] = "Ignore players with the selected name color"
  1170. })
  1171. local MiddleClickInput
  1172. ModuleSettings.CreateToggle({
  1173. ["Name"] = "MiddleClick friends",
  1174. ["Function"] = function(callback)
  1175. if callback then
  1176. MiddleClickInput = game:GetService("UserInputService").InputBegan:connect(function(input1)
  1177. if input1.UserInputType == Enum.UserInputType.MouseButton3 then
  1178. if mouse.Target.Parent:FindFirstChild("HumanoidRootPart") or mouse.Target.Parent:IsA("Accessory") and mouse.Target.Parent.Parent:FindFirstChild("HumanoidRootPart") then
  1179. local user = (mouse.Target.Parent:IsA("Accessory") and mouse.Target.Parent.Parent.Name or mouse.Target.Parent.Name)
  1180. if table.find(FriendsTextList["ObjectList"], user) == nil then
  1181. table.insert(FriendsTextList["ObjectList"], user)
  1182. FriendsTextList["RefreshValues"](FriendsTextList["ObjectList"])
  1183. else
  1184. table.remove(FriendsTextList["ObjectList"], table.find(FriendsTextList["ObjectList"], user))
  1185. FriendsTextList["RefreshValues"](FriendsTextList["ObjectList"])
  1186. end
  1187. end
  1188. end
  1189. end)
  1190. else
  1191. if MiddleClickInput then
  1192. MiddleClickInput:Disconnect()
  1193. end
  1194. end
  1195. end,
  1196. ["HoverText"] = "Click middle mouse button to add the player you are hovering over as a friend"
  1197. })
  1198. ModuleSettings.CreateToggle({
  1199. ["Name"] = "Lobby Check",
  1200. ["Function"] = function() end,
  1201. ["Default"] = true,
  1202. ["HoverText"] = "Temporarily disables certain features in server lobbies."
  1203. })
  1204. guicolorslider = GUI.CreateColorSlider("GUI Theme", function(val) GuiLibrary["Settings"]["GUIObject"]["Color"] = val GuiLibrary["UpdateUI"]() end)
  1205. local blatantmode = GUI.CreateToggle({
  1206. ["Name"] = "Blatant mode",
  1207. ["Function"] = function() end,
  1208. ["HoverText"] = "Required for certain features."
  1209. })
  1210. local tabsortorder = {
  1211. ["CombatButton"] = 1,
  1212. ["BlatantButton"] = 2,
  1213. ["RenderButton"] = 3,
  1214. ["UtilityButton"] = 4,
  1215. ["WorldButton"] = 5,
  1216. ["FriendsButton"] = 6,
  1217. ["ProfilesButton"] = 7
  1218. }
  1219.  
  1220. local tabsortorder2 = {
  1221. [1] = "Combat",
  1222. [2] = "Blatant",
  1223. [3] = "Render",
  1224. [4] = "Utility",
  1225. [5] = "World"
  1226. }
  1227.  
  1228. local tabcategorycolor = {
  1229. ["CombatWindow"] = Color3.fromRGB(214, 27, 6),
  1230. ["BlatantWindow"] = Color3.fromRGB(219, 21, 133),
  1231. ["RenderWindow"] = Color3.fromRGB(135, 14, 165),
  1232. ["UtilityWindow"] = Color3.fromRGB(27, 145, 68),
  1233. ["WorldWindow"] = Color3.fromRGB(70, 73, 16)
  1234. }
  1235.  
  1236. GuiLibrary["UpdateUI"] = function()
  1237. pcall(function()
  1238. GuiLibrary["ObjectsThatCanBeSaved"]["GUIWindow"]["Object"].Logo1.Logo2.ImageColor3 = Color3.fromHSV(GuiLibrary["Settings"]["GUIObject"]["Color"], 0.7, 0.9)
  1239. onething.ImageColor3 = Color3.fromHSV(GuiLibrary["Settings"]["GUIObject"]["Color"], 0.7, 0.9)
  1240. onetext.TextColor3 = Color3.fromHSV(GuiLibrary["Settings"]["GUIObject"]["Color"], 0.7, 0.9)
  1241. onecustomtext.TextColor3 = Color3.fromHSV(GuiLibrary["Settings"]["GUIObject"]["Color"], 0.7, 0.9)
  1242. local newtext = ""
  1243. local newfirst = false
  1244. local colorforindex = {}
  1245. for i2,v2 in pairs(textwithoutthing:split("\n")) do
  1246. local rainbowcolor = GuiLibrary["Settings"]["GUIObject"]["Color"] + (GuiLibrary["ObjectsThatCanBeSaved"]["Gui ColorSliderColor"]["Api"]["RainbowValue"] and (-0.025 * i2) or 0)
  1247. rainbowcolor = rainbowcolor % 1
  1248. local newcolor = Color3.fromHSV(rainbowcolor, 0.7, 0.9)
  1249. local splittext = v2:split(":")
  1250. splittext = #splittext > 1 and {splittext[1], " "..splittext[2]} or {v2, ""}
  1251. if TextGuiUseCategoryColor["Enabled"] and GuiLibrary["ObjectsThatCanBeSaved"][splittext[1].."OptionsButton"] and tabcategorycolor[GuiLibrary["ObjectsThatCanBeSaved"][splittext[1].."OptionsButton"]["Object"].Parent.Parent.Name.."Window"] then
  1252. newcolor = tabcategorycolor[GuiLibrary["ObjectsThatCanBeSaved"][splittext[1].."OptionsButton"]["Object"].Parent.Parent.Name.."Window"]
  1253. end
  1254. 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>'
  1255. newfirst = true
  1256. colorforindex[i2] = newcolor
  1257. end
  1258. if onebackground then
  1259. for i3,v3 in pairs(onebackground:GetChildren()) do
  1260. if v3:IsA("Frame") and colorforindex[v3.LayoutOrder] then
  1261. v3.ColorFrame.BackgroundColor3 = colorforindex[v3.LayoutOrder]
  1262. end
  1263. end
  1264. end
  1265. onetext.Text = newtext
  1266. local buttons = 0
  1267. for i,v in pairs(GuiLibrary["ObjectsThatCanBeSaved"]) do
  1268. if v["Type"] == "TargetFrame" then
  1269. if v["Object2"].Visible then
  1270. v["Object"].TextButton.Frame.BackgroundColor3 = Color3.fromHSV(GuiLibrary["Settings"]["GUIObject"]["Color"], 0.7, 0.9)
  1271. end
  1272. end
  1273. if v["Type"] == "TargetButton" then
  1274. if v["Api"]["Enabled"] then
  1275. v["Object"].BackgroundColor3 = Color3.fromHSV(GuiLibrary["Settings"]["GUIObject"]["Color"], 0.7, 0.9)
  1276. end
  1277. end
  1278. if v["Type"] == "CircleListFrame" then
  1279. if v["Object2"].Visible then
  1280. v["Object"].TextButton.Frame.BackgroundColor3 = Color3.fromHSV(GuiLibrary["Settings"]["GUIObject"]["Color"], 0.7, 0.9)
  1281. end
  1282. end
  1283. if (v["Type"] == "Button" or v["Type"] == "ButtonMain") and v["Api"]["Enabled"] then
  1284. buttons = buttons + 1
  1285. local rainbowcolor = GuiLibrary["Settings"]["GUIObject"]["Color"] + (GuiLibrary["ObjectsThatCanBeSaved"]["Gui ColorSliderColor"]["Api"]["RainbowValue"] and (-0.025 * tabsortorder[i]) or 0)
  1286. rainbowcolor = rainbowcolor % 1
  1287. local newcolor = Color3.fromHSV(rainbowcolor, 0.7, 0.9)
  1288. v["Object"].ButtonText.TextColor3 = newcolor
  1289. if v["Object"]:FindFirstChild("ButtonIcon") then
  1290. v["Object"].ButtonIcon.ImageColor3 = newcolor
  1291. end
  1292. end
  1293. if v["Type"] == "OptionsButton" then
  1294. if v["Api"]["Enabled"] then
  1295. local newcolor = Color3.fromHSV(GuiLibrary["Settings"]["GUIObject"]["Color"], 0.7, 0.9)
  1296. if not oldrainbow then
  1297. local rainbowcolor2 = table.find(tabsortorder2, v["Object"].Parent.Parent.Name)
  1298. rainbowcolor2 = rainbowcolor2 and (rainbowcolor2 - 1) > 0 and GuiLibrary["ObjectsThatCanBeSaved"][tabsortorder2[rainbowcolor2 - 1].."Window"]["SortOrder"] or 0
  1299. local rainbowcolor = GuiLibrary["Settings"]["GUIObject"]["Color"] + (GuiLibrary["ObjectsThatCanBeSaved"]["Gui ColorSliderColor"]["Api"]["RainbowValue"] and (-0.025 * (rainbowcolor2 + v["SortOrder"])) or 0)
  1300. rainbowcolor = rainbowcolor % 1
  1301. newcolor = Color3.fromHSV(rainbowcolor, 0.7, 0.9)
  1302. end
  1303. v["Object"].BackgroundColor3 = newcolor
  1304. end
  1305. end
  1306. if v["Type"] == "ExtrasButton" then
  1307. if v["Api"]["Enabled"] then
  1308. local rainbowcolor = GuiLibrary["Settings"]["GUIObject"]["Color"] + (GuiLibrary["ObjectsThatCanBeSaved"]["Gui ColorSliderColor"]["Api"]["RainbowValue"] and (-0.025 * buttons) or 0)
  1309. rainbowcolor = rainbowcolor % 1
  1310. local newcolor = Color3.fromHSV(rainbowcolor, 0.7, 0.9)
  1311. v["Object"].ImageColor3 = newcolor
  1312. end
  1313. end
  1314. if (v["Type"] == "Toggle" or v["Type"] == "ToggleMain") and v["Api"]["Enabled"] then
  1315. v["Object"].ToggleFrame1.BackgroundColor3 = Color3.fromHSV(GuiLibrary["Settings"]["GUIObject"]["Color"], 0.7, 0.9)
  1316. end
  1317. if v["Type"] == "Slider" or v["Type"] == "SliderMain" then
  1318. v["Object"].Slider.FillSlider.BackgroundColor3 = Color3.fromHSV(GuiLibrary["Settings"]["GUIObject"]["Color"], 0.7, 0.9)
  1319. v["Object"].Slider.FillSlider.ButtonSlider.ImageColor3 = Color3.fromHSV(GuiLibrary["Settings"]["GUIObject"]["Color"], 0.7, 0.9)
  1320. end
  1321. if v["Type"] == "TwoSlider" then
  1322. v["Object"].Slider.FillSlider.BackgroundColor3 = Color3.fromHSV(GuiLibrary["Settings"]["GUIObject"]["Color"], 0.7, 0.9)
  1323. v["Object"].Slider.ButtonSlider.ImageColor3 = Color3.fromHSV(GuiLibrary["Settings"]["GUIObject"]["Color"], 0.7, 0.9)
  1324. v["Object"].Slider.ButtonSlider2.ImageColor3 = Color3.fromHSV(GuiLibrary["Settings"]["GUIObject"]["Color"], 0.7, 0.9)
  1325. end
  1326. end
  1327. local rainbowcolor = GuiLibrary["Settings"]["GUIObject"]["Color"] + (GuiLibrary["ObjectsThatCanBeSaved"]["Gui ColorSliderColor"]["Api"]["RainbowValue"] and (-0.025 * buttons) or 0)
  1328. rainbowcolor = rainbowcolor % 1
  1329. 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))
  1330. for i3, v3 in pairs(ProfilesTextList["ScrollingObject"].ScrollingFrame:GetChildren()) do
  1331. -- pcall(function()
  1332. if v3:IsA("TextButton") and v3.ItemText.Text == GuiLibrary["CurrentProfile"] then
  1333. v3.BackgroundColor3 = Color3.fromHSV(GuiLibrary["Settings"]["GUIObject"]["Color"], 0.7, 0.9)
  1334. v3.ImageButton.BackgroundColor3 = Color3.fromHSV(GuiLibrary["Settings"]["GUIObject"]["Color"], 0.7, 0.9)
  1335. v3.ItemText.TextColor3 = Color3.new(1, 1, 1)
  1336. v3.ItemText.TextStrokeTransparency = 0.75
  1337. end
  1338. -- end)
  1339. end
  1340. end)
  1341. end
  1342.  
  1343. GUISettings.CreateToggle({
  1344. ["Name"] = "Blur Background",
  1345. ["Function"] = function(callback) GuiLibrary["MainBlur"].Size = (callback and 25 or 0) end,
  1346. ["Default"] = true,
  1347. ["HoverText"] = "Blur the background of the GUI"
  1348. })
  1349. local welcomemsg = GUISettings.CreateToggle({
  1350. ["Name"] = "GUI bind indicator",
  1351. ["Function"] = function() end,
  1352. ["Default"] = true,
  1353. ["HoverText"] = 'Displays a message indicating your GUI keybind upon injecting.\nI.E "Press RIGHTSHIFT to open GUI"'
  1354. })
  1355. GUISettings.CreateToggle({
  1356. ["Name"] = "Old Rainbow",
  1357. ["Function"] = function(callback) oldrainbow = callback end,
  1358. ["HoverText"] = "Reverts to old rainbow"
  1359. })
  1360. GUISettings.CreateToggle({
  1361. ["Name"] = "Show Tooltips",
  1362. ["Function"] = function(callback) GuiLibrary["ToggleTooltips"] = callback end,
  1363. ["Default"] = true,
  1364. ["HoverText"] = "Toggles visibility of these"
  1365. })
  1366. local rescale = GUISettings.CreateToggle({
  1367. ["Name"] = "Rescale",
  1368. ["Function"] = function(callback)
  1369. GuiLibrary["MainRescale"].Scale = (callback and math.clamp(cam.ViewportSize.X / 1920, 0.5, 1) or 0.99)
  1370. task.wait(0.01)
  1371. GuiLibrary["MainRescale"].Scale = (callback and math.clamp(cam.ViewportSize.X / 1920, 0.5, 1) or 1)
  1372. end,
  1373. ["Default"] = true
  1374. })
  1375. cam:GetPropertyChangedSignal("ViewportSize"):connect(function()
  1376. if rescale["Enabled"] then
  1377. GuiLibrary["MainRescale"].Scale = math.clamp(cam.ViewportSize.X / 1920, 0.5, 1)
  1378. end
  1379. end)
  1380. GeneralSettings.CreateToggle({
  1381. ["Name"] = "Enable Multi-Keybinding",
  1382. ["Function"] = function() end
  1383. })
  1384. GeneralSettings.CreateToggle({
  1385. ["Name"] = "Discord integration",
  1386. ["Function"] = function() end
  1387. })
  1388. local ToggleNotifications = {["Object"] = nil}
  1389. local Notifications = {}
  1390. Notifications = GUISettings.CreateToggle({
  1391. ["Name"] = "Notifications",
  1392. ["Function"] = function(callback)
  1393. GuiLibrary["Notifications"] = callback
  1394. end,
  1395. ["Default"] = true,
  1396. ["HoverText"] = "Shows notifications"
  1397. })
  1398. ToggleNotifications = GUISettings.CreateToggle({
  1399. ["Name"] = "Toggle Alert",
  1400. ["Function"] = function(callback) GuiLibrary["ToggleNotifications"] = callback end,
  1401. ["Default"] = true,
  1402. ["HoverText"] = "Notifies you if a module is enabled/disabled."
  1403. })
  1404. ToggleNotifications["Object"].BackgroundTransparency = 0
  1405. ToggleNotifications["Object"].BorderSizePixel = 0
  1406. ToggleNotifications["Object"].BackgroundColor3 = Color3.fromRGB(20, 20, 20)
  1407. GUISettings.CreateSlider({
  1408. ["Name"] = "Rainbow Speed",
  1409. ["Function"] = function(val)
  1410. GuiLibrary["RainbowSpeed"] = math.clamp((val / 10) - 0.4, 0, 1000000000)
  1411. end,
  1412. ["Min"] = 1,
  1413. ["Max"] = 100,
  1414. ["Default"] = 10
  1415. })
  1416.  
  1417. local GUIbind = GUI.CreateGUIBind()
  1418.  
  1419. local teleportfunc = game:GetService("Players").LocalPlayer.OnTeleport:Connect(function(State)
  1420. if State == Enum.TeleportState.Started and not shared.VapeIndependent then
  1421. 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'
  1422. if shared.VapeDeveloper then
  1423. teleportstr = 'shared.VapeDeveloper = true '..teleportstr
  1424. end
  1425. if shared.VapePrivate then
  1426. teleportstr = 'shared.VapePrivate = true '..teleportstr
  1427. end
  1428. GuiLibrary["SaveSettings"]()
  1429. queueteleport(teleportstr)
  1430. end
  1431. end)
  1432.  
  1433. GuiLibrary["SelfDestruct"] = function()
  1434. spawn(function()
  1435. coroutine.close(selfdestructsave)
  1436. end)
  1437. injected = false
  1438. GuiLibrary["SaveSettings"]()
  1439. game:GetService("UserInputService").OverrideMouseIconBehavior = Enum.OverrideMouseIconBehavior.None
  1440. for i,v in pairs(GuiLibrary["ObjectsThatCanBeSaved"]) do
  1441. if (v["Type"] == "Button" or v["Type"] == "OptionsButton") and v["Api"]["Enabled"] then
  1442. v["Api"]["ToggleButton"](false)
  1443. end
  1444. end
  1445. GuiLibrary["SelfDestructEvent"]:Fire()
  1446. shared.VapeExecuted = nil
  1447. shared.VapePrivate = nil
  1448. shared.VapeFullyLoaded = nil
  1449. shared.VapeSwitchServers = nil
  1450. shared.GuiLibrary = nil
  1451. shared.VapeIndependent = nil
  1452. shared.VapeManualLoad = nil
  1453. shared.CustomSaveVape = nil
  1454. GuiLibrary["KeyInputHandler"]:Disconnect()
  1455. GuiLibrary["KeyInputHandler2"]:Disconnect()
  1456. if MiddleClickInput then
  1457. MiddleClickInput:Disconnect()
  1458. end
  1459. teleportfunc:Disconnect()
  1460. GuiLibrary["MainGui"]:Remove()
  1461. GuiLibrary["MainBlur"]:Remove()
  1462. end
  1463.  
  1464. GeneralSettings.CreateButton2({
  1465. ["Name"] = "RESET CURRENT PROFILE",
  1466. ["Function"] = function()
  1467. local vapeprivate = shared.VapePrivate
  1468. GuiLibrary["SelfDestruct"]()
  1469. delfile(customdir.."Profiles/"..(GuiLibrary["CurrentProfile"] == "default" and "" or GuiLibrary["CurrentProfile"])..game.PlaceId..".vapeprofile.txt")
  1470. shared.VapeSwitchServers = true
  1471. shared.VapeOpenGui = true
  1472. shared.VapePrivate = vapeprivate
  1473. loadstring(GetURL("NewMainScript.lua"))()
  1474. end
  1475. })
  1476. GUISettings.CreateButton2({
  1477. ["Name"] = "RESET GUI POSITIONS",
  1478. ["Function"] = function()
  1479. for i,v in pairs(GuiLibrary["ObjectsThatCanBeSaved"]) do
  1480. if (v["Type"] == "Window" or v["Type"] == "CustomWindow") and GuiLibrary["findObjectInTable"](GuiLibrary["ObjectsThatCanBeSaved"], i) then
  1481. v["Object"].Position = (i == "GUIWindow" and UDim2.new(0, 6, 0, 6) or UDim2.new(0, 223, 0, 6))
  1482. end
  1483. end
  1484. end
  1485. })
  1486. GUISettings.CreateButton2({
  1487. ["Name"] = "SORT GUI",
  1488. ["Function"] = function()
  1489. local sorttable = {}
  1490. local movedown = false
  1491. local sortordertable = {
  1492. ["GUIWindow"] = 1,
  1493. ["CombatWindow"] = 2,
  1494. ["BlatantWindow"] = 3,
  1495. ["RenderWindow"] = 4,
  1496. ["UtilityWindow"] = 5,
  1497. ["WorldWindow"] = 6,
  1498. ["FriendsWindow"] = 7,
  1499. ["ProfilesWindow"] = 8,
  1500. ["Text GUICustomWindow"] = 9,
  1501. ["TargetInfoCustomWindow"] = 10,
  1502. ["RadarCustomWindow"] = 11,
  1503. }
  1504. local storedpos = {}
  1505. local num = 6
  1506. for i,v in pairs(GuiLibrary["ObjectsThatCanBeSaved"]) do
  1507. if v["Type"] == "Window" and GuiLibrary["findObjectInTable"](GuiLibrary["ObjectsThatCanBeSaved"], i) and v["Object"].Visible then
  1508. local sortordernum = (sortordertable[i] or #sorttable)
  1509. sorttable[sortordernum] = v["Object"]
  1510. end
  1511. end
  1512. for i2,v2 in pairs(sorttable) do
  1513. if num > 1697 then
  1514. movedown = true
  1515. num = 6
  1516. end
  1517. v2.Position = UDim2.new(0, num, 0, (movedown and (storedpos[num] and (storedpos[num] + 9) or 400) or 39))
  1518. if not storedpos[num] then
  1519. storedpos[num] = v2.AbsoluteSize.Y
  1520. if v2.Name == "MainWindow" then
  1521. storedpos[num] = 400
  1522. end
  1523. end
  1524. num = num + 223
  1525. end
  1526. end
  1527. })
  1528. GeneralSettings.CreateButton2({
  1529. ["Name"] = "UNINJECT",
  1530. ["Function"] = GuiLibrary["SelfDestruct"]
  1531. })
  1532.  
  1533. if shared.VapeIndependent then
  1534. spawn(function()
  1535. repeat task.wait() until shared.VapeManualLoad
  1536. GuiLibrary["LoadSettings"]()
  1537. if #ProfilesTextList["ObjectList"] == 0 then
  1538. table.insert(ProfilesTextList["ObjectList"], "default")
  1539. ProfilesTextList["RefreshValues"](ProfilesTextList["ObjectList"])
  1540. end
  1541. GUIbind["Reload"]()
  1542. GuiLibrary["UpdateUI"]()
  1543. UpdateHud()
  1544. if not shared.VapeSwitchServers then
  1545. if blatantmode["Enabled"] then
  1546. pcall(function()
  1547. local frame = GuiLibrary["CreateNotification"]("Blatant Enabled", "Vape is now in Blatant Mode.", 5.5, "assets/WarningNotification.png")
  1548. frame.Frame.Frame.ImageColor3 = Color3.fromRGB(236, 129, 44)
  1549. end)
  1550. end
  1551. GuiLibrary["LoadedAnimation"](welcomemsg["Enabled"])
  1552. else
  1553. shared.VapeSwitchServers = nil
  1554. end
  1555. if shared.VapeOpenGui then
  1556. GuiLibrary["MainGui"].ScaledGui.ClickGui.Visible = true
  1557. GuiLibrary["MainBlur"].Enabled = true
  1558. shared.VapeOpenGui = nil
  1559. end
  1560.  
  1561. coroutine.resume(selfdestructsave)
  1562. end)
  1563. shared.VapeFullyLoaded = true
  1564. return GuiLibrary
  1565. else
  1566. loadstring(GetURL("AnyGame.vape"))()
  1567. if betterisfile("vape/CustomModules/"..game.PlaceId..".vape") then
  1568. loadstring(readfile("vape/CustomModules/"..game.PlaceId..".vape"))()
  1569. else
  1570. local publicrepo = checkpublicrepo(game.PlaceId)
  1571. if publicrepo then
  1572. loadstring(publicrepo)()
  1573. end
  1574. end
  1575. if shared.VapePrivate then
  1576. if pcall(function() readfile("vapeprivate/CustomModules/"..game.PlaceId..".vape") end) then
  1577. loadstring(readfile("vapeprivate/CustomModules/"..game.PlaceId..".vape"))()
  1578. end
  1579. end
  1580. GuiLibrary["LoadSettings"]()
  1581. local profiles = {}
  1582. for i,v in pairs(GuiLibrary["Profiles"]) do
  1583. table.insert(profiles, i)
  1584. end
  1585. table.sort(profiles, function(a, b) return b == "default" and true or a:lower() < b:lower() end)
  1586. ProfilesTextList["RefreshValues"](profiles)
  1587. GUIbind["Reload"]()
  1588. GuiLibrary["UpdateUI"]()
  1589. UpdateHud()
  1590. if not shared.VapeSwitchServers then
  1591. if blatantmode["Enabled"] then
  1592. pcall(function()
  1593. local frame = GuiLibrary["CreateNotification"]("Blatant Enabled", "Vape is now in Blatant Mode.", 5.5, "assets/WarningNotification.png")
  1594. frame.Frame.Frame.ImageColor3 = Color3.fromRGB(236, 129, 44)
  1595. end)
  1596. end
  1597. GuiLibrary["LoadedAnimation"](welcomemsg["Enabled"])
  1598. else
  1599. shared.VapeSwitchServers = nil
  1600. end
  1601. if shared.VapeOpenGui then
  1602. GuiLibrary["MainGui"].ScaledGui.ClickGui.Visible = true
  1603. GuiLibrary["MainBlur"].Enabled = true
  1604. shared.VapeOpenGui = nil
  1605. end
  1606.  
  1607. coroutine.resume(selfdestructsave)
  1608. shared.VapeFullyLoaded = true
  1609. end
Advertisement
Add Comment
Please, Sign In to add comment
Advertisement