Mexico gui
Key RequiredUniversal

Mexico gui

Universal Scriptysfr_666ysfr_666 474 views 195 executesUpdated Nov 22, 2025
5.0/ 5(1 votes)
10100% Positive
Lua Script•182 lines (5680 chars)
-- LocalScript in StarterGui or similar

local Players = game:GetService("Players")
local Player = Players.LocalPlayer
local PlayerGui = Player:WaitForChild("PlayerGui")
local TweenService = game:GetService("TweenService")
local UserInputService = game:GetService("UserInputService")
local RunService = game:GetService("RunService")

-- Pre-GUI animation: Circular thing with decal image
local circle = Instance.new("ImageLabel")
circle.Size = UDim2.new(0, 100, 0, 100)
circle.Position = UDim2.new(0.5, -50, 0.5, -50)  -- Center
circle.BackgroundTransparency = 1
circle.Image = "rbxassetid://105788935369392"  -- Decal ID
circle.ScaleType = Enum.ScaleType.Fit  -- Fit to circle
circle.Name = "MexicoCircle"
circle.Parent = PlayerGui

-- Make it circular
local corner = Instance.new("UICorner")
corner.CornerRadius = UDim.new(1, 0)  -- Full circle
corner.Parent = circle

-- Animate to bottom left
local tweenInfo = TweenInfo.new(1, Enum.EasingStyle.Quad, Enum.EasingDirection.Out)
local tween = TweenService:Create(circle, tweenInfo, {Position = UDim2.new(0, 10, 1, -110)})
tween:Play()

-- Rotate forever
spawn(function()
    while true do
        circle.Rotation = (circle.Rotation + 1) % 360
        RunService.RenderStepped:Wait()
    end
end)

-- Wait a bit before showing GUI
wait(2)

-- Main GUI
local screenGui = Instance.new("ScreenGui")
screenGui.Name = "MexicoGui"
screenGui.Parent = PlayerGui

local frame = Instance.new("Frame")
frame.Size = UDim2.new(0, 200, 0, 300)
frame.Position = UDim2.new(0.5, -100, 0.5, -150)
frame.BackgroundColor3 = Color3.new(1, 1, 1)  -- White inside
frame.BorderColor3 = Color3.new(0, 1, 0)  -- Green border
frame.BorderSizePixel = 2
frame.Parent = screenGui

-- Title
local title = Instance.new("TextLabel")
title.Size = UDim2.new(1, 0, 0, 30)
title.Text = "Mexico Gui"
title.BackgroundTransparency = 1
title.TextColor3 = Color3.new(0, 0, 0)
title.Font = Enum.Font.SourceSansBold
title.TextSize = 20
title.Parent = frame

-- Make frame draggable (works on PC and mobile)
local dragging
local dragInput
local dragStart
local startPos

local function update(input)
    local delta = input.Position - dragStart
    frame.Position = UDim2.new(startPos.X.Scale, startPos.X.Offset + delta.X, startPos.Y.Scale, startPos.Y.Offset + delta.Y)
end

frame.InputBegan:Connect(function(input)
    if input.UserInputType == Enum.UserInputType.MouseButton1 or input.UserInputType == Enum.UserInputType.Touch then
        dragging = true
        dragStart = input.Position
        startPos = frame.Position

        input.Changed:Connect(function()
            if input.UserInputState == Enum.UserInputState.End then
                dragging = false
            end
        end)
    end
end)

frame.InputChanged:Connect(function(input)
    if input.UserInputType == Enum.UserInputType.MouseMovement or input.UserInputType == Enum.UserInputType.Touch then
        dragInput = input
    end
end)

UserInputService.InputChanged:Connect(function(input)
    if input == dragInput and dragging then
        update(input)
    end
end)

-- Buttons setup
local buttonHeight = 50
local buttonWidth = 180
local padding = 10
local yOffset = 40

local function createButton(name, yPos, func)
    local button = Instance.new("TextButton")
    button.Size = UDim2.new(0, buttonWidth, 0, buttonHeight)
    button.Position = UDim2.new(0.5, -buttonWidth/2, 0, yPos)
    button.Text = name
    button.BackgroundColor3 = Color3.new(1, 1, 1)
    button.BorderColor3 = Color3.new(1, 0, 0)  -- Red border
    button.BorderSizePixel = 2
    button.TextColor3 = Color3.new(0, 0, 0)
    button.Font = Enum.Font.SourceSans
    button.TextSize = 18
    button.Parent = frame
    button.MouseButton1Click:Connect(func)
    return button
end

-- Button 1: Decal Spam
createButton("Decal Spam", yOffset, function()
    local decalId = "rbxassetid://105788935369392"
    for _, part in ipairs(workspace:GetDescendants()) do
        if part:IsA("BasePart") or part:IsA("Model") then
            for _, face in ipairs(Enum.NormalId:GetEnumItems()) do
                local decal = Instance.new("Decal")
                decal.Texture = decalId
                decal.Face = face
                decal.Parent = part
            end
        end
    end
end)
yOffset = yOffset + buttonHeight + padding

-- Button 2: Skybox
createButton("Skybox", yOffset, function()
    local skyId = "rbxassetid://105788935369392"  -- Using same ID for all faces
    local lighting = game.Lighting
    local sky = lighting:FindFirstChildOfClass("Sky") or Instance.new("Sky", lighting)
    sky.SkyboxBk = skyId
    sky.SkyboxDn = skyId
    sky.SkyboxFt = skyId
    sky.SkyboxLf = skyId
    sky.SkyboxRt = skyId
    sky.SkyboxUp = skyId
end)
yOffset = yOffset + buttonHeight + padding

-- Button 3: Disco
createButton("Disco", yOffset, function()
    local musicId = "rbxassetid://73859601978760"
    local sound = Instance.new("Sound")
    sound.SoundId = musicId
    sound.Looped = true
    sound.Parent = workspace
    sound:Play()
    
    -- Simple disco effect: Flash colors
    spawn(function()
        while true do
            game.Lighting.Ambient = Color3.fromHSV(math.random(), 1, 1)
            wait(0.5)
        end
    end)
end)
yOffset = yOffset + buttonHeight + padding

-- Button 4: Assuming a fourth button, perhaps Stop or something; since not specified, adding a placeholder
createButton("Stop All", yOffset, function()
    -- Stop music and reset
    for _, sound in ipairs(workspace:GetDescendants()) do
        if sound:IsA("Sound") then
            sound:Stop()
            sound:Destroy()
        end
    end
    game.Lighting.Ambient = Color3.new(0.5, 0.5, 0.5)  -- Reset ambient
end)

Features & Information

İt's good gui

Community Comments (1)

AgaxAgaxJul 16, 2026

Thanks

More Scripts for Universal Scripts