-- 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)