-- Services local TweenService = game:GetService("TweenService") local UserInputService = game:GetService("UserInputService") local ReplicatedStorage = game:GetService("ReplicatedStorage") local Players = game:GetService("Players") local player = Players.LocalPlayer local playerGui = player:WaitForChild("PlayerGui") -- UI Creation local ScreenGui = Instance.new("ScreenGui") ScreenGui.Name = "CustomRemoteGui" ScreenGui.ResetOnSpawn = false ScreenGui.Parent = playerGui -- Main Frame (Dark Theme) local MainFrame = Instance.new("Frame") MainFrame.Name = "MainFrame" MainFrame.Size = UDim2.new(0, 300, 0, 200) MainFrame.Position = UDim2.new(0.5, -150, 0.5, -100) MainFrame.BackgroundColor3 = Color3.fromRGB(25, 25, 25) MainFrame.BorderSizePixel = 0 MainFrame.Parent = ScreenGui local MainCorner = Instance.new("UICorner") MainCorner.CornerRadius = UDim.new(0, 8) MainCorner.Parent = MainFrame -- Top Dragging Bar local TopBar = Instance.new("Frame") TopBar.Name = "TopBar" TopBar.Size = UDim2.new(1, 0, 0, 35) TopBar.BackgroundColor3 = Color3.fromRGB(35, 35, 35) TopBar.BorderSizePixel = 0 TopBar.Parent = MainFrame local TopCorner = Instance.new("UICorner") TopCorner.CornerRadius = UDim.new(0, 8) TopCorner.Parent = TopBar -- UI Title local TitleLabel = Instance.new("TextLabel") TitleLabel.Name = "TitleLabel" TitleLabel.Size = UDim2.new(1, -40, 1, 0) TitleLabel.Position = UDim2.new(0, 10, 0, 0) TitleLabel.BackgroundTransparency = 1 TitleLabel.Text = "Dig Controller" TitleLabel.TextColor3 = Color3.fromRGB(240, 240, 240) TitleLabel.TextXAlignment = Enum.TextXAlignment.Left TitleLabel.Font = Enum.Font.GothamBold TitleLabel.TextSize = 14 TitleLabel.Parent = TopBar -- Close Button local CloseButton = Instance.new("TextButton") CloseButton.Name = "CloseButton" CloseButton.Size = UDim2.new(0, 30, 0, 30) CloseButton.Position = UDim2.new(1, -32, 0, 2) CloseButton.BackgroundTransparency = 1 CloseButton.Text = "✕" CloseButton.TextColor3 = Color3.fromRGB(150, 150, 150) CloseButton.Font = Enum.Font.GothamBold CloseButton.TextSize = 16 CloseButton.Parent = TopBar -- Writable Input Box (TextBox) local InputBox = Instance.new("TextBox") InputBox.Name = "ValueInput" InputBox.Size = UDim2.new(0, 240, 0, 40) InputBox.Position = UDim2.new(0.5, -120, 0, 60) InputBox.BackgroundColor3 = Color3.fromRGB(45, 45, 45) InputBox.BorderSizePixel = 0 InputBox.Text = "10" -- Default value InputBox.TextColor3 = Color3.fromRGB(255, 255, 255) InputBox.PlaceholderText = "Enter number here..." InputBox.PlaceholderColor3 = Color3.fromRGB(120, 120, 120) InputBox.Font = Enum.Font.Gotham InputBox.TextSize = 14 InputBox.Parent = MainFrame local InputCorner = Instance.new("UICorner") InputCorner.CornerRadius = UDim.new(0, 6) InputCorner.Parent = InputBox -- Fire Remote Button local FireButton = Instance.new("TextButton") FireButton.Name = "FireButton" FireButton.Size = UDim2.new(0, 240, 0, 40) FireButton.Position = UDim2.new(0.5, -120, 0, 120) FireButton.BackgroundColor3 = Color3.fromRGB(0, 120, 215) -- Clean blue accent FireButton.BorderSizePixel = 0 FireButton.Text = "Execute Remote" FireButton.TextColor3 = Color3.fromRGB(255, 255, 255) FireButton.Font = Enum.Font.GothamBold FireButton.TextSize = 14 FireButton.Parent = MainFrame local ButtonCorner = Instance.new("UICorner") ButtonCorner.CornerRadius = UDim.new(0, 6) ButtonCorner.Parent = FireButton --------------------------------------------------------------------- -- FUNCTIONALITY --------------------------------------------------------------------- -- 1. Close Button Logic CloseButton.MouseButton1Click:Connect(function() ScreenGui:Destroy() end) -- Hover effects for Close Button CloseButton.MouseEnter:Connect(function() CloseButton.TextColor3 = Color3.fromRGB(255, 100, 100) end) CloseButton.MouseLeave:Connect(function() CloseButton.TextColor3 = Color3.fromRGB(150, 150, 150) end) -- 2. Draggable Logic (Smooth UI Dragging) local dragging local dragInput local dragStart local startPos local function update(input) local delta = input.Position - dragStart local tween = TweenService:Create(MainFrame, TweenInfo.new(0.1, Enum.EasingStyle.Quad, Enum.EasingDirection.Out), { Position = UDim2.new(startPos.X.Scale, startPos.X.Offset + delta.X, startPos.Y.Scale, startPos.Y.Offset + delta.Y) }) tween:Play() end TopBar.InputBegan:Connect(function(input) if input.UserInputType == Enum.UserInputType.MouseButton1 or input.UserInputType == Enum.UserInputType.Touch then dragging = true dragStart = input.Position startPos = MainFrame.Position input.Changed:Connect(function() if input.UserInputState == Enum.UserInputState.End then dragging = false end end) end end) TopBar.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) -- 3. Dynamic Remote Execution Button Logic FireButton.MouseButton1Click:Connect(function() -- Grab text and convert it to a number. Fallback to 10 if input is invalid text. local inputValue = tonumber(InputBox.Text) or 10 local args = { "hello", inputValue } -- Fire to server safely local remotes = ReplicatedStorage:WaitForChild("Remotes", 3) if remotes then local digEvent = remotes:WaitForChild("DigEvent", 3) if digEvent then digEvent:FireServer(unpack(args)) -- Quick success button flash FireButton.BackgroundColor3 = Color3.fromRGB(46, 204, 113) task.wait(0.2) FireButton.BackgroundColor3 = Color3.fromRGB(0, 120, 215) else warn("DigEvent not found inside ReplicatedStorage.Remotes") end else warn("Remotes folder not found inside ReplicatedStorage") end end)