Not a member of Pastebin yet?
Sign Up,
it unlocks many cool features!
- -- drill digging simulator
- local Rayfield = loadstring(game:HttpGet('https://sirius.menu/rayfield'))()
- -- Function to get all egg names from workspace.KPets.Eggs
- local function getAllEggs()
- local eggs = {}
- local eggsFolder = workspace:FindFirstChild("KPets") and workspace.KPets:FindFirstChild("Eggs")
- if eggsFolder then
- for _, egg in ipairs(eggsFolder:GetChildren()) do
- table.insert(eggs, egg.Name)
- end
- end
- if #eggs == 0 then
- -- Fallback if no eggs found
- eggs = {"Inferno Egg", "Summer Egg"}
- end
- return eggs
- end
- local allEggs = getAllEggs()
- local Window = Rayfield:CreateWindow({
- Name = "Egg Hatcher & Teleporter",
- LoadingTitle = "Loading...",
- LoadingSubtitle = "by Grok",
- ConfigurationSaving = {
- Enabled = true,
- FolderName = "RayfieldConfig",
- FileName = "EggHatcherTeleporter"
- },
- Discord = {
- Enabled = false,
- Invite = "",
- RememberJoins = true
- },
- KeySystem = false,
- KeySettings = {
- Title = "",
- Subtitle = "",
- Note = "",
- FileName = "",
- SaveKey = true,
- GrabKeyFromSite = false,
- Key = ""
- }
- })
- local HatchTab = Window:CreateTab("Hatch Eggs", 4483362458)
- local EggDropdown = HatchTab:CreateDropdown({
- Name = "Egg Type",
- Options = allEggs,
- CurrentOption = {allEggs[1]},
- MultipleOptions = false,
- Flag = "EggType",
- Callback = function(Option)
- _G.EggName = Option[1]
- end,
- })
- local QuantityInput = HatchTab:CreateInput({
- Name = "Quantity per Hatch",
- PlaceholderText = "e.g., 1",
- RemoveTextAfterFocusLost = false,
- Callback = function(Text)
- local num = tonumber(Text)
- if num and num > 0 then
- _G.Quantity = num
- else
- Rayfield:Notify({
- Title = "Invalid Quantity",
- Content = "Please enter a positive number.",
- Duration = 5,
- Image = 4483362458,
- Actions = {}
- })
- end
- end,
- })
- local DelayInput = HatchTab:CreateInput({
- Name = "Delay Between Hatches (seconds)",
- PlaceholderText = "e.g., 1",
- RemoveTextAfterFocusLost = false,
- Callback = function(Text)
- local num = tonumber(Text)
- if num and num >= 0 then
- _G.Delay = num
- else
- Rayfield:Notify({
- Title = "Invalid Delay",
- Content = "Please enter a non-negative number.",
- Duration = 5,
- Image = 4483362458,
- Actions = {}
- })
- end
- end,
- })
- local AutoHatchToggle = HatchTab:CreateToggle({
- Name = "Auto Hatch",
- CurrentValue = false,
- Flag = "AutoHatch",
- Callback = function(Value)
- _G.AutoHatch = Value
- if Value then
- -- Start auto hatching
- task.spawn(function()
- while _G.AutoHatch do
- if _G.EggName and _G.Quantity then
- local args = {
- _G.EggName,
- _G.Quantity
- }
- game:GetService("ReplicatedStorage"):WaitForChild("KPets"):WaitForChild("Events"):WaitForChild("Hatch"):FireServer(unpack(args))
- end
- task.wait(_G.Delay or 1)
- end
- end)
- end
- end,
- })
- HatchTab:CreateButton({
- Name = "Manual Hatch",
- Callback = function()
- if _G.EggName and _G.Quantity then
- local args = {
- _G.EggName,
- _G.Quantity
- }
- game:GetService("ReplicatedStorage"):WaitForChild("KPets"):WaitForChild("Events"):WaitForChild("Hatch"):FireServer(unpack(args))
- Rayfield:Notify({
- Title = "Hatched!",
- Content = "Hatched " .. _G.Quantity .. " " .. _G.EggName .. "(s).",
- Duration = 5,
- Image = 4483362458,
- Actions = {}
- })
- else
- Rayfield:Notify({
- Title = "Missing Info",
- Content = "Please select an egg type and enter quantity.",
- Duration = 5,
- Image = 4483362458,
- Actions = {}
- })
- end
- end,
- })
- local InstantWinTab = Window:CreateTab("Instant Win", 4483362458)
- local WorldDropdown = InstantWinTab:CreateDropdown({
- Name = "Select World",
- Options = {"Ancient Greek", "Astral", "Crystal", "Dinosaur", "Dragon", "Frozen", "Jungle", "Magic", "Main"},
- CurrentOption = {"Main"},
- MultipleOptions = false,
- Flag = "SelectedWorld",
- Callback = function(Option)
- _G.SelectedWorld = Option[1]
- end,
- })
- InstantWinTab:CreateButton({
- Name = "Teleport to World",
- Callback = function()
- if _G.SelectedWorld then
- local world = workspace.Worlds:FindFirstChild(_G.SelectedWorld)
- if world and world:FindFirstChild("AlwaysRender") and world.AlwaysRender:FindFirstChild("SpawnPoint") then
- local spawnPoint = world.AlwaysRender.SpawnPoint
- game.Players.LocalPlayer.Character.HumanoidRootPart.CFrame = spawnPoint.CFrame
- Rayfield:Notify({
- Title = "Teleported!",
- Content = "Teleported to " .. _G.SelectedWorld .. ".",
- Duration = 5,
- Image = 4483362458,
- Actions = {}
- })
- else
- Rayfield:Notify({
- Title = "Teleport Failed",
- Content = "Could not find SpawnPoint in " .. _G.SelectedWorld .. ".",
- Duration = 5,
- Image = 4483362458,
- Actions = {}
- })
- end
- else
- Rayfield:Notify({
- Title = "No World Selected",
- Content = "Please select a world first.",
- Duration = 5,
- Image = 4483362458,
- Actions = {}
- })
- end
- end,
- })
- local AutoTeleportToggle = InstantWinTab:CreateToggle({
- Name = "Auto Win",
- CurrentValue = false,
- Flag = "AutoTeleport",
- Callback = function(Value)
- _G.AutoTeleport = Value
- if Value then
- task.spawn(function()
- while _G.AutoTeleport do
- local worlds = workspace:FindFirstChild("Worlds")
- if worlds then
- local allowedWorlds = {"Ancient Greek", "Astral", "Crystal", "Dinosaur", "Dragon", "Frozen", "Jungle", "Magic", "Main"}
- local parts = {}
- for _, world in ipairs(worlds:GetChildren()) do
- if table.find(allowedWorlds, world.Name) then
- local part = world:FindFirstChild("EndZone") and world.EndZone:FindFirstChild("EndCircle") and world.EndZone.EndCircle:FindFirstChild("Part")
- if part then
- table.insert(parts, {part = part, originalCFrame = part.CFrame, originalCanCollide = part.CanCollide})
- end
- end
- end
- -- Teleport all at the same time
- for _, data in ipairs(parts) do
- data.part.CanCollide = false
- data.part.CFrame = game.Players.LocalPlayer.Character.HumanoidRootPart.CFrame
- end
- task.wait(1) -- Time the parts stay at character
- -- Return all at the same time
- for _, data in ipairs(parts) do
- data.part.CFrame = data.originalCFrame
- data.part.CanCollide = data.originalCanCollide
- end
- task.wait(1) -- Delay before next cycle
- else
- Rayfield:Notify({
- Title = "Teleport Failed",
- Content = "Could not find Worlds folder.",
- Duration = 5,
- Image = 4483362458,
- Actions = {}
- })
- _G.AutoTeleport = false
- end
- end
- end)
- end
- end,
- })
- local AutoMoneyTab = Window:CreateTab("Auto Money", 4483362458)
- local player = game.Players.LocalPlayer
- local character = player.Character or player.CharacterAdded:Wait()
- local backpack = player.Backpack
- local AutoMoneyX1Toggle = AutoMoneyTab:CreateToggle({
- Name = "Auto Money x1",
- CurrentValue = false,
- Flag = "AutoMoneyX1",
- Callback = function(Value)
- _G.AutoMoneyX1 = Value
- if Value then
- task.spawn(function()
- while _G.AutoMoneyX1 do
- for _, tool in ipairs(character:GetChildren()) do
- if tool:IsA("Tool") then
- local args = {tool}
- game:GetService("ReplicatedStorage"):WaitForChild("GiveCash"):FireServer(unpack(args))
- end
- end
- for _, tool in ipairs(backpack:GetChildren()) do
- if tool:IsA("Tool") then
- local args = {tool}
- game:GetService("ReplicatedStorage"):WaitForChild("GiveCash"):FireServer(unpack(args))
- end
- end
- task.wait(0.01) -- Super fast delay
- end
- end)
- end
- end,
- })
- local AutoMoneyX2Toggle = AutoMoneyTab:CreateToggle({
- Name = "Auto Money x2",
- CurrentValue = false,
- Flag = "AutoMoneyX2",
- Callback = function(Value)
- _G.AutoMoneyX2 = Value
- if Value then
- task.spawn(function()
- while _G.AutoMoneyX2 do
- for _, tool in ipairs(character:GetChildren()) do
- if tool:IsA("Tool") then
- for i = 1, 2 do
- local args = {tool}
- game:GetService("ReplicatedStorage"):WaitForChild("GiveCash"):FireServer(unpack(args))
- end
- end
- end
- for _, tool in ipairs(backpack:GetChildren()) do
- if tool:IsA("Tool") then
- for i = 1, 2 do
- local args = {tool}
- game:GetService("ReplicatedStorage"):WaitForChild("GiveCash"):FireServer(unpack(args))
- end
- end
- end
- task.wait(0.01) -- Super fast delay
- end
- end)
- end
- end,
- })
- local AutoMoneyX3Toggle = AutoMoneyTab:CreateToggle({
- Name = "Auto Money x3",
- CurrentValue = false,
- Flag = "AutoMoneyX3",
- Callback = function(Value)
- _G.AutoMoneyX3 = Value
- if Value then
- task.spawn(function()
- while _G.AutoMoneyX3 do
- for _, tool in ipairs(character:GetChildren()) do
- if tool:IsA("Tool") then
- for i = 1, 5 do
- local args = {tool}
- game:GetService("ReplicatedStorage"):WaitForChild("GiveCash"):FireServer(unpack(args))
- end
- end
- end
- for _, tool in ipairs(backpack:GetChildren()) do
- if tool:IsA("Tool") then
- for i = 1, 5 do
- local args = {tool}
- game:GetService("ReplicatedStorage"):WaitForChild("GiveCash"):FireServer(unpack(args))
- end
- end
- end
- task.wait(0.01) -- Super fast delay
- end
- end)
- end
- end,
- })
- local AutoMoneyX4Toggle = AutoMoneyTab:CreateToggle({
- Name = "Auto Money x4",
- CurrentValue = false,
- Flag = "AutoMoneyX4",
- Callback = function(Value)
- _G.AutoMoneyX4 = Value
- if Value then
- task.spawn(function()
- while _G.AutoMoneyX4 do
- for _, tool in ipairs(character:GetChildren()) do
- if tool:IsA("Tool") then
- for i = 1, 10 do
- local args = {tool}
- game:GetService("ReplicatedStorage"):WaitForChild("GiveCash"):FireServer(unpack(args))
- end
- end
- end
- for _, tool in ipairs(backpack:GetChildren()) do
- if tool:IsA("Tool") then
- for i = 1, 10 do
- local args = {tool}
- game:GetService("ReplicatedStorage"):WaitForChild("GiveCash"):FireServer(unpack(args))
- end
- end
- end
- task.wait(0.01) -- Super fast delay
- end
- end)
- end
- end,
- })
- local AutoMoneyX5Toggle = AutoMoneyTab:CreateToggle({
- Name = "Auto Money x5",
- CurrentValue = false,
- Flag = "AutoMoneyX5",
- Callback = function(Value)
- _G.AutoMoneyX5 = Value
- if Value then
- task.spawn(function()
- while _G.AutoMoneyX5 do
- for _, tool in ipairs(character:GetChildren()) do
- if tool:IsA("Tool") then
- for i = 1, 50 do
- local args = {tool}
- game:GetService("ReplicatedStorage"):WaitForChild("GiveCash"):FireServer(unpack(args))
- end
- end
- end
- for _, tool in ipairs(backpack:GetChildren()) do
- if tool:IsA("Tool") then
- for i = 1, 50 do
- local args = {tool}
- game:GetService("ReplicatedStorage"):WaitForChild("GiveCash"):FireServer(unpack(args))
- end
- end
- end
- task.wait(0.01) -- Super fast delay
- end
- end)
- end
- end,
- })
- local AutoCraftTab = Window:CreateTab("Auto Craft", 4483362458)
- local AutoCraftToggle = AutoCraftTab:CreateToggle({
- Name = "Auto Craft Pets (4 of same type to Gold, 5 of same type to Rainbow)",
- CurrentValue = false,
- Flag = "AutoCraft",
- Callback = function(Value)
- _G.AutoCraft = Value
- if Value then
- task.spawn(function()
- while _G.AutoCraft do
- local player = game.Players.LocalPlayer
- local petsFolder = player:WaitForChild("Data"):WaitForChild("Pets")
- -- Collect all pet data
- local petData = {}
- for _, pet in ipairs(petsFolder:GetChildren()) do
- if pet:IsA("Folder") then
- local data = {
- Egg = pet:FindFirstChild("Egg") and pet.Egg.Value or "",
- Type = pet:FindFirstChild("Type") and pet.Type.Value or "Normal",
- Name = pet:FindFirstChild("Name") and pet.Name.Value or pet.Name,
- Multiplier2 = pet:FindFirstChild("Multiplier2") and pet.Multiplier2.Value or 0,
- Equipped = pet:FindFirstChild("Equipped") and pet.Equipped.Value or false,
- Multiplier = pet:FindFirstChild("Multiplier") and pet.Multiplier.Value or 0,
- Autodeleted = pet:FindFirstChild("Autodeleted") and pet.Autodeleted.Value or false
- }
- petData[pet.Name] = data -- pet.Name is the ID
- end
- end
- -- Group by pet name
- local groups = {} -- {petName = {ids = {}, data = {}}}
- for id, data in pairs(petData) do
- local name = data.Name
- if not groups[name] then
- groups[name] = {ids = {}, data = {}}
- end
- table.insert(groups[name].ids, id)
- groups[name].data[id] = data
- end
- -- Craft for each group
- for petName, group in pairs(groups) do
- -- Craft to Gold if 4 or more
- while #group.ids >= 4 do
- local idsToCraft = {}
- for i = 1, 4 do
- local id = table.remove(group.ids, 1)
- idsToCraft[id] = group.data[id]
- end
- local args = {idsToCraft, "Golden"}
- game:GetService("ReplicatedStorage"):WaitForChild("KPets"):WaitForChild("Events"):WaitForChild("Craft"):FireServer(unpack(args))
- Rayfield:Notify({
- Title = "Crafted to Gold",
- Content = "Crafted 4 " .. petName .. " to Golden.",
- Duration = 3,
- Image = 4483362458,
- Actions = {}
- })
- end
- -- Craft to Rainbow if 5 or more
- while #group.ids >= 5 do
- local idsToCraft = {}
- for i = 1, 5 do
- local id = table.remove(group.ids, 1)
- idsToCraft[id] = group.data[id]
- end
- local args = {idsToCraft, "Rainbow"}
- game:GetService("ReplicatedStorage"):WaitForChild("KPets"):WaitForChild("Events"):WaitForChild("Craft"):FireServer(unpack(args))
- Rayfield:Notify({
- Title = "Crafted to Rainbow",
- Content = "Crafted 5 " .. petName .. " to Rainbow.",
- Duration = 3,
- Image = 4483362458,
- Actions = {}
- })
- end
- end
- task.wait(5) -- Delay between checks
- end
- end)
- end
- end,
- })
- -- Set defaults
- _G.EggName = allEggs[1] or "Inferno Egg"
- _G.Quantity = 1
- _G.Delay = 1
- _G.AutoHatch = false
- _G.AutoTeleport = false
- _G.AutoMoneyX1 = false
- _G.AutoMoneyX2 = false
- _G.AutoMoneyX3 = false
- _G.AutoMoneyX4 = false
- _G.AutoMoneyX5 = false
- _G.AutoCraft = false
- _G.SelectedWorld = "Main"
- QuantityInput:Set(tostring(_G.Quantity))
- DelayInput:Set(tostring(_G.Delay))
Advertisement
Add Comment
Please, Sign In to add comment