Advertisement
Not a member of Pastebin yet?
Sign Up,
it unlocks many cool features!
- --Startup
- if not game:IsLoaded() then
- game.Loaded:Wait()
- end
- --Vars
- local HttpService = game:GetService("HttpService")
- local TeleportService = game:GetService("TeleportService")
- local max_Players = 20
- local autoHopTimer = 1600
- local hop_toggle = false
- local servers = {}
- --Loads or creates settings
- if syn then
- if isfile('GPO_Hopper.json') then
- local settings_contents = readfile('GPO_Hopper.json')
- local settings_data = HttpService:JSONDecode(settings_contents)
- max_Players = settings_data.max_Players
- autoHopTimer = settings_data.autoHopTimer
- print("Loaded AutoHop settings. Max Players:" .. tostring(max_Players) .. " Timer:" .. tostring(autoHopTimer))
- else
- max_Players = 20
- autoHopTimer = 1600
- local settings_format = {max_Players = max_Players,autoHopTimer = autoHopTimer}
- local settings_data = HttpService:JSONEncode(settings_format)
- writefile('GPO_Hopper.json',settings_data)
- end
- end
- local ezlib = loadstring(game:HttpGet("https://raw.githubusercontent.com/debug420/Ez-Hub/master/Modules/EzLib.lua"))();
- print("GPO Auto Hopper | Started.")
- --Functions
- --TP Function
- local function teleport()
- syn.queue_on_teleport("loadstring(game:HttpGet('https://raw.githubusercontent.com/PurityWasHere/Scripts-To-Test/main/Hopper.lua'))()")
- print('Queued Script for after TP.')
- pcall(function()
- local Response = syn.request({
- Url = "https://games.roblox.com/v1/games/"..game.PlaceId.."/servers/Public?sortOrder=Asc&limit=100",
- Method = "GET"})
- local data = HttpService:JSONDecode(Response.Body)
- for _, server in pairs(data.data) do
- if server.maxPlayers <= max_Players then
- table.insert(servers,server.id)
- end
- end
- local value = math.random(1,#servers)
- local picked_value = servers[value]
- game:GetService("TeleportService"):TeleportToPlaceInstance(game.PlaceId, tostring(picked_value))
- end)
- end
- --TP Timer
- local function Start_timer()
- wait(autoHopTimer)
- if hop_toggle == false then
- teleport()
- else
- print("Hop was disabled. Starting Timer Again!")
- Start_timer()
- end
- end
- --Settings Saver
- local function write_settings()
- print('Writing Settings')
- local temp_settings = {max_Players = max_Players,autoHopTimer = autoHopTimer}
- local temp_settings_data = HttpService:JSONEncode(temp_settings)
- writefile('GPO_Hopper.json',temp_settings_data)
- end
- --UI
- local mainGUI = ezlib.create("GPO | Auto Hopper");
- local mainTab = mainGUI.newTab("Main");
- local creditsTab = mainGUI.newTab("Credits");
- mainTab.newTitle("Main");
- mainTab.newDiv();
- creditsTab.newTitle("Credits");
- creditsTab.newDiv();
- --UI Functions
- mainTab.newCheckbox("Disable Hop!",false,function(state)
- hop_toggle = state
- print(state)
- end)
- mainTab.newButton("Server Hop!",function()
- teleport()
- end)
- mainTab.newSlider("Max Players",max_Players,0,25, function(state)
- max_Players = state
- write_settings()
- end)
- mainTab.newTextbox("AutoHop Timer (seconds)",tostring(autoHopTimer),function(state)
- autoHopTimer = tonumber(state)
- write_settings()
- end)
- creditsTab.newButton("Made by Pure!",function()
- end)
- creditsTab.newButton("UI Lib by CDXX",function()
- end)
- mainGUI.openTab(mainTab);
- Start_timer()
Advertisement
Add Comment
Please, Sign In to add comment
Advertisement