
Key Required

-- ==> FUNGSI ISLOADED BARU <==
if _G.isGuiLoaded then return end
-- Konfigurasi
local BUTTON_CLAIM_TEXT = "Claim All Cash"
local BUTTON_EQUIP_BEST_TEXT = "Equip Best"
local BUTTON_SELL_ONE_TEXT = "Sell A Brainrot"
local BUTTON_SELL_ALL_TEXT = "Sell All Brainrots"
local BUTTON_ROLL_TEXT_OFF = "Auto Roll: OFF"
local BUTTON_ROLL_TEXT_ON = "Auto Roll: ON"
local ANIMATION_SPEED = 0.3
-- Senarai Nama Dice
local DICE_NAMES = {
"BasicDice", "AscendantDice", "AetherialDice", "AbyssalDice", "BlackholeDice",
"CelestialDice", "CelestialEmperorDice", "ChronoDice", "CosmicDice", "CrystalDice",
"DevilDice", "DiamondDice", "DivineDice", "EtherealDice", "GalacticDice",
"GalaxyDice", "GoldenDice", "HalloweenDice", "HeavenlyDice", "InfinityDice",
"MultiverseDice", "NebulaDice", "ParadoxDice", "PhantomDice", "PlatinumDice",
"QuantumDice", "RealityDice", "RiftDice", "SilverDice", "SingularityDice",
"SolarFlareDice", "SupernovaDice", "TimelessDice", "VoidDice"
}
-- Servis Penting
local Players = game:GetService("Players")
local MarketplaceService = game:GetService("MarketplaceService")
local TweenService = game:GetService("TweenService")
local LocalizationService = game:GetService("LocalizationService")
local UserInputService = game:GetService("UserInputService")
local RunService = game:GetService("RunService")
-- Pembolehubah untuk state
local autoRollCoroutine = nil
local isAutoRolling = false
local selectedDiceName = DICE_NAMES[1]
local isMinimized = false
local isDropdownOpen = false
local sizeBeforeMinimize = nil
local isSellWarningActive = false
-- Fungsi bantuan
local function findInstanceFromPath(path)
local current = game; for _, n in ipairs(path) do current = current:WaitForChild(n, 5); if not current then warn("Tak dapat cari:", table.concat(path, ">"), "- Gagal pada:", n); return nil end end; return current
end
-- Generator UUID v7 (Fixed)
local function generateUUIDv7()
local timestamp = DateTime.now().UnixTimestampMillis
local timestamp_hex = string.format("%012x", timestamp)
local r1, r2, r3, r4 = math.random(0, 0xFFF), math.random(0, 0xFFF), math.random(0, 0xFFF), math.random(0, 0xFFF)
local large_random_hex = string.format("%03x%03x%03x%03x", r1, r2, r3, r4)
local random_hex = string.format("%04x%s", math.random(0, 0xFFFF), large_random_hex)
return string.format("%s-%s-7%s-%x%s-%s", string.sub(timestamp_hex, 1, 8), string.sub(timestamp_hex, 9, 12), string.sub(random_hex, 1, 3), 8 + math.random(0, 3), string.sub(random_hex, 4, 6), string.sub(random_hex, 7, 18))
end
-- Laluan ke RemoteEvents/Functions
local claimCashPath = {"ReplicatedStorage", "Network", "Client", "ClaimCash"}
local equipBestPath = {"ReplicatedStorage", "Network", "Client", "EquipBestEntities"}
local sellOnePath = {"ReplicatedStorage", "Network", "Client", "SellEntity"}
local sellAllPath = {"ReplicatedStorage", "Network", "Client", "SellAllEntities"}
local rollDicePath = {"ReplicatedStorage", "Network", "Client", "RollDice"}
-- Fungsi untuk menghentikan loop
local function stopCurrentLoop() if autoRollCoroutine then coroutine.close(autoRollCoroutine); autoRollCoroutine = nil end end
-- Cipta GUI
local screenGui = Instance.new("ScreenGui"); screenGui.Name = generateUUIDv7(); screenGui.ResetOnSpawn = false; screenGui.ZIndexBehavior = Enum.ZIndexBehavior.Global
-- Saiz & Posisi
local dropdownClosedSize = UDim2.new(0, 250, 0, 260)
local dropdownOpenSize = UDim2.new(0, 250, 0, 400)
local minimizedSize = UDim2.new(dropdownClosedSize.X.Scale, dropdownClosedSize.X.Offset, 0, 30)
local mainFrame = Instance.new("Frame"); mainFrame.Name = "MainFrame"; mainFrame.Size = dropdownClosedSize; mainFrame.Position = UDim2.new(0.5, -125, 0.5, -130); mainFrame.BackgroundColor3 = Color3.fromRGB(35, 35, 45); mainFrame.BorderColor3 = Color3.fromRGB(85, 85, 125); mainFrame.BorderSizePixel = 2; mainFrame.Active = true; mainFrame.Draggable = true; mainFrame.ClipsDescendants = true; mainFrame.Parent = screenGui
-- Dapatkan nama game secara dinamik
local gameTitle = game.Name -- Fallback jika pcall gagal
local s, r = pcall(function() return MarketplaceService:GetProductInfo(game.PlaceId) end)
if s and r and r.Name then gameTitle = r.Name end
local titleLabel = Instance.new("TextLabel"); titleLabel.Name = "TitleLabel"; titleLabel.Size = UDim2.new(1, 0, 0, 30); titleLabel.BackgroundColor3 = Color3.fromRGB(50, 50, 65); titleLabel.BorderColor3 = Color3.fromRGB(85, 85, 125); titleLabel.Text = gameTitle; titleLabel.TextColor3 = Color3.fromRGB(255, 255, 255); titleLabel.Font = Enum.Font.SourceSansBold; titleLabel.TextSize = 18; titleLabel.Parent = mainFrame
local contentContainer = Instance.new("Frame"); contentContainer.Name = "ContentContainer"; contentContainer.Size = UDim2.new(1, 0, 1, -30); contentContainer.Position = UDim2.new(0, 0, 0, 30); contentContainer.BackgroundTransparency = 1; contentContainer.ClipsDescendants = true; contentContainer.Parent = mainFrame
-- Butang-butang Atas
local claimAllButton = Instance.new("TextButton"); claimAllButton.Name = "ClaimAllButton"; claimAllButton.Size = UDim2.new(0.9, 0, 0, 30); claimAllButton.Position = UDim2.new(0.05, 0, 0, 10); claimAllButton.BackgroundColor3 = Color3.fromRGB(70, 140, 70); claimAllButton.Text = BUTTON_CLAIM_TEXT; claimAllButton.TextColor3 = Color3.fromRGB(255, 255, 255); claimAllButton.Font = Enum.Font.SourceSans; claimAllButton.TextSize = 16; claimAllButton.Parent = contentContainer
local equipBestButton = Instance.new("TextButton"); equipBestButton.Name = "EquipBestButton"; equipBestButton.Size = UDim2.new(0.9, 0, 0, 30); equipBestButton.Position = UDim2.new(0.05, 0, 0, 45); equipBestButton.BackgroundColor3 = Color3.fromRGB(80, 120, 160); equipBestButton.Text = BUTTON_EQUIP_BEST_TEXT; equipBestButton.TextColor3 = Color3.fromRGB(255, 255, 255); equipBestButton.Font = Enum.Font.SourceSans; equipBestButton.TextSize = 16; equipBestButton.Parent = contentContainer
local autoRollButton = Instance.new("TextButton"); autoRollButton.Name = "AutoRollButton"; autoRollButton.Size = UDim2.new(0.9, 0, 0, 30); autoRollButton.Position = UDim2.new(0.05, 0, 0, 80); autoRollButton.BackgroundColor3 = Color3.fromRGB(60, 60, 80); autoRollButton.Text = BUTTON_ROLL_TEXT_OFF; autoRollButton.TextColor3 = Color3.fromRGB(255, 255, 255); autoRollButton.Font = Enum.Font.SourceSans; autoRollButton.TextSize = 16; autoRollButton.Parent = contentContainer
local selectDiceButton = Instance.new("TextButton"); selectDiceButton.Name = "SelectDiceButton"; selectDiceButton.Size = UDim2.new(0.9, 0, 0, 30); selectDiceButton.Position = UDim2.new(0.05, 0, 0, 115); selectDiceButton.BackgroundColor3 = Color3.fromRGB(50, 50, 65); selectDiceButton.Text = "Selected: "..selectedDiceName; selectDiceButton.TextColor3 = Color3.fromRGB(220, 220, 220); selectDiceButton.Font = Enum.Font.SourceSans; selectDiceButton.TextSize = 16; selectDiceButton.Parent = contentContainer
-- Dropdown
local diceSelectionFrame = Instance.new("Frame"); diceSelectionFrame.Name = "DiceSelectionFrame"; diceSelectionFrame.Size = UDim2.new(0.9, 0, 0, 140); diceSelectionFrame.Position = UDim2.new(0.05, 0, 0, 150); diceSelectionFrame.BackgroundColor3 = Color3.fromRGB(40, 40, 55); diceSelectionFrame.BorderColor3 = Color3.fromRGB(85, 85, 125); diceSelectionFrame.ClipsDescendants = true; diceSelectionFrame.Visible = false; diceSelectionFrame.Parent = contentContainer
local scrollingFrame = Instance.new("ScrollingFrame"); scrollingFrame.Name = "DiceScrollingFrame"; scrollingFrame.Size = UDim2.new(1, 0, 1, 0); scrollingFrame.BackgroundColor3 = Color3.fromRGB(40, 40, 55); scrollingFrame.BorderSizePixel = 0; scrollingFrame.CanvasSize = UDim2.new(0, 0, 0, 0); scrollingFrame.ScrollBarThickness = 6; scrollingFrame.Parent = diceSelectionFrame
local uiListLayout = Instance.new("UIListLayout"); uiListLayout.Name = "ListLayout"; uiListLayout.SortOrder = Enum.SortOrder.Name; uiListLayout.Padding = UDim.new(0, 3); uiListLayout.HorizontalAlignment = Enum.HorizontalAlignment.Center; uiListLayout.Parent = scrollingFrame
-- Butang-butang Bawah
local sellAllButton = Instance.new("TextButton"); sellAllButton.Name = "SellAllButton"; sellAllButton.Size = UDim2.new(0.9, 0, 0, 30); sellAllButton.AnchorPoint = Vector2.new(0.5, 1); sellAllButton.Position = UDim2.new(0.5, 0, 1, -10); sellAllButton.BackgroundColor3 = Color3.fromRGB(180, 70, 70); sellAllButton.Text = BUTTON_SELL_ALL_TEXT; sellAllButton.TextColor3 = Color3.fromRGB(255, 255, 255); sellAllButton.Font = Enum.Font.SourceSans; sellAllButton.TextSize = 16; sellAllButton.Parent = contentContainer
local sellOneButton = Instance.new("TextButton"); sellOneButton.Name = "SellOneButton"; sellOneButton.Size = UDim2.new(0.9, 0, 0, 30); sellOneButton.AnchorPoint = Vector2.new(0.5, 1); sellOneButton.Position = UDim2.new(0.5, 0, 1, -45); sellOneButton.BackgroundColor3 = Color3.fromRGB(160, 120, 80); sellOneButton.Text = BUTTON_SELL_ONE_TEXT; sellOneButton.TextColor3 = Color3.fromRGB(255, 255, 255); sellOneButton.Font = Enum.Font.SourceSans; sellOneButton.TextSize = 16; sellOneButton.Parent = contentContainer
-- ==> TOOLTIP DIPERBAIKI <==
local tooltipFrame = Instance.new("Frame"); tooltipFrame.Name = "TooltipFrame"; tooltipFrame.AutomaticSize = Enum.AutomaticSize.XY; tooltipFrame.BackgroundColor3 = Color3.new(0, 0, 0); tooltipFrame.BackgroundTransparency = 0.5; tooltipFrame.BorderColor3 = Color3.fromRGB(100, 100, 100); tooltipFrame.Visible = false; tooltipFrame.ZIndex = 20; tooltipFrame.AnchorPoint = Vector2.new(0.5, 1); tooltipFrame.Parent = screenGui
local tooltipPadding = Instance.new("UIPadding"); tooltipPadding.PaddingLeft = UDim.new(0, 5); tooltipPadding.PaddingRight = UDim.new(0, 5); tooltipPadding.PaddingTop = UDim.new(0, 2); tooltipPadding.PaddingBottom = UDim.new(0, 2); tooltipPadding.Parent = tooltipFrame
local tooltipLabel = Instance.new("TextLabel"); tooltipLabel.Name = "TooltipLabel"; tooltipLabel.BackgroundTransparency = 1; tooltipLabel.Text = "Sells the currently held brainrot."; tooltipLabel.TextColor3 = Color3.new(1, 1, 1); tooltipLabel.Font = Enum.Font.SourceSans; tooltipLabel.TextSize = 14; tooltipLabel.TextWrapped = true; tooltipLabel.AutomaticSize = Enum.AutomaticSize.XY; tooltipLabel.Parent = tooltipFrame
-- Butang Kawalan Tetingkap
local closeButton = Instance.new("TextButton"); closeButton.Name = "CloseButton"; closeButton.Size = UDim2.new(0, 20, 0, 20); closeButton.Position = UDim2.new(1, -25, 0, 5); closeButton.BackgroundColor3 = Color3.fromRGB(200, 50, 50); closeButton.Text = "X"; closeButton.TextColor3 = Color3.fromRGB(255, 255, 255); closeButton.Font = Enum.Font.SourceSansBold; closeButton.TextSize = 14; closeButton.Parent = mainFrame
local minimizeButton = Instance.new("TextButton"); minimizeButton.Name = "MinimizeButton"; minimizeButton.Size = UDim2.new(0, 20, 0, 20); minimizeButton.Position = UDim2.new(1, -50, 0, 5); minimizeButton.BackgroundColor3 = Color3.fromRGB(80, 80, 100); minimizeButton.Text = "-"; minimizeButton.TextColor3 = Color3.fromRGB(255, 255, 255); minimizeButton.Font = Enum.Font.SourceSansBold; minimizeButton.TextSize = 18; minimizeButton.Parent = mainFrame
-- GUI Pengesahan (Close)
local closeConfBg = Instance.new("Frame"); closeConfBg.Name = "CloseConfBg"; closeConfBg.Size = UDim2.new(1, 0, 1, 0); closeConfBg.BackgroundColor3 = Color3.new(0, 0, 0); closeConfBg.BackgroundTransparency = 0.75; closeConfBg.Visible = false; closeConfBg.ZIndex = 10; closeConfBg.Parent = screenGui
local closeConfDialog = Instance.new("Frame"); closeConfDialog.Name = "CloseConfDialog"; closeConfDialog.Size = UDim2.new(0, 300, 0, 150); closeConfDialog.Position = UDim2.new(0.5, -150, 0.5, -75); closeConfDialog.BackgroundColor3 = Color3.fromRGB(45, 45, 55); closeConfDialog.BorderColor3 = Color3.fromRGB(85, 85, 125); closeConfDialog.BorderSizePixel = 2; closeConfDialog.Parent = closeConfBg
local closeConfTitle = Instance.new("TextLabel"); closeConfTitle.Name = "CloseConfTitle"; closeConfTitle.Size = UDim2.new(1, 0, 0, 30); closeConfTitle.BackgroundColor3 = Color3.fromRGB(50, 50, 65); closeConfTitle.Text = gameTitle; closeConfTitle.TextColor3 = Color3.fromRGB(255, 255, 255); closeConfTitle.Font = Enum.Font.SourceSansBold; closeConfTitle.TextSize = 18; closeConfTitle.Parent = closeConfDialog
local closeConfMsg = Instance.new("TextLabel"); closeConfMsg.Name = "CloseConfMsg"; closeConfMsg.Size = UDim2.new(0.9, 0, 0.5, 0); closeConfMsg.Position = UDim2.new(0.05, 0, 0.25, 0); closeConfMsg.BackgroundTransparency = 1; closeConfMsg.TextColor3 = Color3.fromRGB(220, 220, 220); closeConfMsg.Font = Enum.Font.SourceSans; closeConfMsg.TextSize = 16; closeConfMsg.TextWrapped = true; closeConfMsg.Parent = closeConfDialog
local sT1, t1 = pcall(function() return LocalizationService:GetTranslatorForPlayerAsync(Players.LocalPlayer) end); if sT1 and t1 then closeConfMsg.Text = t1:Translate(screenGui, "Are you sure you want to close the menu?") else closeConfMsg.Text = "Are you sure you want to close the menu?" end
local closeNoBtn = Instance.new("TextButton"); closeNoBtn.Name = "CloseNoBtn"; closeNoBtn.Size = UDim2.new(0.4, 0, 0, 35); closeNoBtn.Position = UDim2.new(0.525, 0, 0.7, 0); closeNoBtn.BackgroundColor3 = Color3.fromRGB(80, 160, 80); closeNoBtn.Text = "NO"; closeNoBtn.TextColor3 = Color3.fromRGB(255, 255, 255); closeNoBtn.Font = Enum.Font.SourceSansBold; closeNoBtn.TextSize = 16; closeNoBtn.Parent = closeConfDialog
local closeYesBtn = Instance.new("TextButton"); closeYesBtn.Name = "CloseYesBtn"; closeYesBtn.Size = UDim2.new(0.4, 0, 0, 35); closeYesBtn.Position = UDim2.new(0.075, 0, 0.7, 0); closeYesBtn.BackgroundColor3 = Color3.fromRGB(180, 70, 70); closeYesBtn.Text = "YES"; closeYesBtn.TextColor3 = Color3.fromRGB(255, 255, 255); closeYesBtn.Font = Enum.Font.SourceSansBold; closeYesBtn.TextSize = 16; closeYesBtn.Parent = closeConfDialog
-- GUI Pengesahan (Sell All)
local sellAllConfBg = Instance.new("Frame"); sellAllConfBg.Name = "SellAllConfBg"; sellAllConfBg.Size = UDim2.new(1, 0, 1, 0); sellAllConfBg.BackgroundColor3 = Color3.new(0, 0, 0); sellAllConfBg.BackgroundTransparency = 0.75; sellAllConfBg.Visible = false; sellAllConfBg.ZIndex = 11; sellAllConfBg.Parent = screenGui
local sellAllConfDialog = Instance.new("Frame"); sellAllConfDialog.Name = "SellAllConfDialog"; sellAllConfDialog.Size = UDim2.new(0, 300, 0, 150); sellAllConfDialog.Position = UDim2.new(0.5, -150, 0.5, -75); sellAllConfDialog.BackgroundColor3 = Color3.fromRGB(45, 45, 55); sellAllConfDialog.BorderColor3 = Color3.fromRGB(85, 85, 125); sellAllConfDialog.BorderSizePixel = 2; sellAllConfDialog.Parent = sellAllConfBg
local sellAllConfTitle = Instance.new("TextLabel"); sellAllConfTitle.Name = "SellAllConfTitle"; sellAllConfTitle.Size = UDim2.new(1, 0, 0, 30); sellAllConfTitle.BackgroundColor3 = Color3.fromRGB(50, 50, 65); sellAllConfTitle.Text = "CONFIRM SELL ALL"; sellAllConfTitle.TextColor3 = Color3.fromRGB(255, 255, 255); sellAllConfTitle.Font = Enum.Font.SourceSansBold; sellAllConfTitle.TextSize = 18; sellAllConfTitle.Parent = sellAllConfDialog
local sellAllConfMsg = Instance.new("TextLabel"); sellAllConfMsg.Name = "SellAllConfMsg"; sellAllConfMsg.Size = UDim2.new(0.9, 0, 0.5, 0); sellAllConfMsg.Position = UDim2.new(0.05, 0, 0.25, 0); sellAllConfMsg.BackgroundTransparency = 1; sellAllConfMsg.TextColor3 = Color3.fromRGB(220, 220, 220); sellAllConfMsg.Font = Enum.Font.SourceSans; sellAllConfMsg.TextSize = 16; sellAllConfMsg.TextWrapped = true; sellAllConfMsg.Parent = sellAllConfDialog
local sT2, t2 = pcall(function() return LocalizationService:GetTranslatorForPlayerAsync(Players.LocalPlayer) end); if sT2 and t2 then sellAllConfMsg.Text = t2:Translate(screenGui, "This will sell ALL your brainrots. This action cannot be undone. Are you sure?") else sellAllConfMsg.Text = "This will sell ALL your brainrots. This action cannot be undone. Are you sure?" end
local sellAllNoBtn = Instance.new("TextButton"); sellAllNoBtn.Name = "SellAllNoBtn"; sellAllNoBtn.Size = UDim2.new(0.4, 0, 0, 35); sellAllNoBtn.Position = UDim2.new(0.525, 0, 0.7, 0); sellAllNoBtn.BackgroundColor3 = Color3.fromRGB(80, 160, 80); sellAllNoBtn.Text = "NO"; sellAllNoBtn.TextColor3 = Color3.fromRGB(255, 255, 255); sellAllNoBtn.Font = Enum.Font.SourceSansBold; sellAllNoBtn.TextSize = 16; sellAllNoBtn.Parent = sellAllConfDialog
local sellAllYesBtn = Instance.new("TextButton"); sellAllYesBtn.Name = "SellAllYesBtn"; sellAllYesBtn.Size = UDim2.new(0.4, 0, 0, 35); sellAllYesBtn.Position = UDim2.new(0.075, 0, 0.7, 0); sellAllYesBtn.BackgroundColor3 = Color3.fromRGB(180, 70, 70); sellAllYesBtn.Text = "YES"; sellAllYesBtn.TextColor3 = Color3.fromRGB(255, 255, 255); sellAllYesBtn.Font = Enum.Font.SourceSansBold; sellAllYesBtn.TextSize = 16; sellAllYesBtn.Parent = sellAllConfDialog
-- Fungsi untuk menguruskan animasi dropdown
local function toggleDropdown(forceState)
local shouldOpen = not isDropdownOpen; if forceState ~= nil then shouldOpen = forceState end; if shouldOpen == isDropdownOpen then return end; isDropdownOpen = shouldOpen
local tweenInfo = TweenInfo.new(ANIMATION_SPEED, Enum.EasingStyle.Quad, Enum.EasingDirection.Out)
if shouldOpen then
diceSelectionFrame.Visible = true; TweenService:Create(mainFrame, tweenInfo, {Size = dropdownOpenSize}):Play()
else
local tween = TweenService:Create(mainFrame, tweenInfo, {Size = dropdownClosedSize}); tween:Play(); tween.Completed:Connect(function() if not isDropdownOpen then diceSelectionFrame.Visible = false end end)
end
end
-- Cipta butang-butang dice
for _, diceName in ipairs(DICE_NAMES) do local diceButton = Instance.new("TextButton"); diceButton.Name = diceName; diceButton.Size = UDim2.new(0.95, 0, 0, 25); diceButton.BackgroundColor3 = Color3.fromRGB(60, 60, 80); diceButton.Text = diceName; diceButton.TextColor3 = Color3.fromRGB(255, 255, 255); diceButton.Font = Enum.Font.SourceSans; diceButton.TextSize = 14; diceButton.Parent = scrollingFrame; diceButton.MouseButton1Click:Connect(function() selectedDiceName = diceName; selectDiceButton.Text = "Selected: "..selectedDiceName; toggleDropdown(false) end) end
scrollingFrame.CanvasSize = UDim2.new(0, 0, 0, uiListLayout.AbsoluteContentSize.Y)
-- Sambungan fungsi
claimAllButton.MouseButton1Click:Connect(function() local r = findInstanceFromPath(claimCashPath); if not r then return end; for i = 1, 10 do pcall(function() r:FireServer("PedastalHolder"..i) end) end end)
equipBestButton.MouseButton1Click:Connect(function() local r = findInstanceFromPath(equipBestPath); if r then pcall(function() r:InvokeServer() end) end end)
sellOneButton.MouseButton1Click:Connect(function()
if isSellWarningActive then return end
local char = Players.LocalPlayer.Character
if char and char:FindFirstChildOfClass("Tool") then
local remote = findInstanceFromPath(sellOnePath)
if remote then pcall(function() remote:InvokeServer() end) end
else
isSellWarningActive = true
local originalText = sellOneButton.Text
local originalColor = sellOneButton.TextColor3
sellOneButton.Text = "HOLD BRAINROT FIRST!"
sellOneButton.TextColor3 = Color3.fromRGB(255, 80, 80) -- Warna merah
task.delay(3, function()
sellOneButton.Text = originalText
sellOneButton.TextColor3 = originalColor
isSellWarningActive = false
end)
end
end)
sellAllButton.MouseButton1Click:Connect(function() sellAllConfBg.Visible = true end)
sellAllYesBtn.MouseButton1Click:Connect(function() local r = findInstanceFromPath(sellAllPath); if r then pcall(function() r:InvokeServer() end) end; sellAllConfBg.Visible = false end)
sellAllNoBtn.MouseButton1Click:Connect(function() sellAllConfBg.Visible = false end)
sellOneButton.MouseEnter:Connect(function() tooltipFrame.Visible = true end); sellOneButton.MouseLeave:Connect(function() tooltipFrame.Visible = false end)
RunService.RenderStepped:Connect(function() if tooltipFrame.Visible then local m = UserInputService:GetMouseLocation(); tooltipFrame.Position = UDim2.fromOffset(m.X, m.Y - 10) end end)
autoRollButton.MouseButton1Click:Connect(function() isAutoRolling = not isAutoRolling; if isAutoRolling then stopCurrentLoop(); autoRollButton.Text = BUTTON_ROLL_TEXT_ON; autoRollButton.BackgroundColor3 = Color3.fromRGB(70, 140, 70); local r = findInstanceFromPath(rollDicePath); if r then autoRollCoroutine = coroutine.create(function() while true do pcall(function() r:InvokeServer(selectedDiceName) end) task.wait() end end); coroutine.resume(autoRollCoroutine) else isAutoRolling = false; autoRollButton.Text = BUTTON_ROLL_TEXT_OFF; autoRollButton.BackgroundColor3 = Color3.fromRGB(60, 60, 80) end else stopCurrentLoop(); autoRollButton.Text = BUTTON_ROLL_TEXT_OFF; autoRollButton.BackgroundColor3 = Color3.fromRGB(60, 60, 80) end end)
selectDiceButton.MouseButton1Click:Connect(function() toggleDropdown() end)
minimizeButton.MouseButton1Click:Connect(function() isMinimized = not isMinimized; local t = TweenInfo.new(ANIMATION_SPEED, Enum.EasingStyle.Quad, Enum.EasingDirection.Out); if isMinimized then sizeBeforeMinimize = mainFrame.Size; TweenService:Create(mainFrame, t, {Size = minimizedSize}):Play(); minimizeButton.Text = "+" else TweenService:Create(mainFrame, t, {Size = sizeBeforeMinimize or dropdownClosedSize}):Play(); minimizeButton.Text = "-" end end)
closeButton.MouseButton1Click:Connect(function() closeConfBg.Visible = true end)
closeYesBtn.MouseButton1Click:Connect(function() stopCurrentLoop(); _G.isGuiLoaded = nil; screenGui:Destroy() end)
closeNoBtn.MouseButton1Click:Connect(function() closeConfBg.Visible = false end)
-- Letak GUI dalam PlayerGui
_G.isGuiLoaded = true
screenGui.Parent = Players.LocalPlayer:WaitForChild("PlayerGui")
works with xeno, 6/10 only useful feature is auto roll