local TweenService = game:GetService("TweenService")
local Players = game:GetService("Players")
local player = Players.LocalPlayer
local playerGui = player:FindFirstChildOfClass("PlayerGui")
-- Create the ScreenGui
local screenGui = Instance.new("ScreenGui")
screenGui.Parent = playerGui
-- Create the Frame (Bigger UI)
local frame = Instance.new("Frame")
frame.Size = UDim2.new(0, 400, 0, 200) -- Increased size
frame.Position = UDim2.new(0.5, -200, 0.5, -100) -- Centered
frame.BackgroundTransparency = 1 -- Fully transparent
frame.BackgroundColor3 = Color3.fromRGB(114, 187, 234)
frame.BorderSizePixel = 0 -- Removes outline/border
frame.Parent = screenGui
-- Create the "Raindrop" Label (Slightly Up)
local titleLabel = Instance.new("TextLabel")
titleLabel.Size = UDim2.new(1, 0, 0, 50) -- Fixed height
titleLabel.Position = UDim2.new(0, 0, 0.35, 0) -- Slightly moved up
titleLabel.BackgroundTransparency = 1
titleLabel.Text = "Raindrop"
titleLabel.Font = Enum.Font.SourceSans -- Regular font
titleLabel.TextSize = 40 -- Slightly larger for emphasis
titleLabel.TextColor3 = Color3.new(0, 0, 0) -- Black text
titleLabel.TextWrapped = true -- Ensures text stays within bounds
titleLabel.Parent = frame
-- Create the "loading... please wait" Label (Slightly Up)
local loadingLabel = Instance.new("TextLabel")
loadingLabel.Size = UDim2.new(1, 0, 0, 30) -- Fixed height
loadingLabel.Position = UDim2.new(0, 0, 0.35, 50) -- Slightly moved up below
"Raindrop"
loadingLabel.BackgroundTransparency = 1
loadingLabel.Text = "loading... please wait"
loadingLabel.Font = Enum.Font.SourceSansItalic -- Italicized text
loadingLabel.TextSize = 20
loadingLabel.TextColor3 = Color3.new(0, 0, 0) -- Black text
loadingLabel.TextWrapped = true
loadingLabel.Parent = frame
-- Fade In Effect
frame.BackgroundTransparency = 1
titleLabel.TextTransparency = 1
loadingLabel.TextTransparency = 1
local tweenInfo = TweenInfo.new(1.5, Enum.EasingStyle.Quad,
Enum.EasingDirection.Out)
TweenService:Create(frame, tweenInfo, {BackgroundTransparency = 0.2}):Play()
TweenService:Create(titleLabel, tweenInfo, {TextTransparency = 0}):Play()
TweenService:Create(loadingLabel, tweenInfo, {TextTransparency = 0}):Play()
-- Wait for 6 seconds before fading out
task.wait(6)
local fadeOutTween = TweenInfo.new(1.5, Enum.EasingStyle.Quad,
Enum.EasingDirection.In)
TweenService:Create(frame, fadeOutTween, {BackgroundTransparency = 1}):Play()
TweenService:Create(titleLabel, fadeOutTween, {TextTransparency = 1}):Play()
TweenService:Create(loadingLabel, fadeOutTween, {TextTransparency = 1}):Play()
task.wait(1.5) -- Wait for fade-out to complete
screenGui:Destroy() -- Remove loading screen
-- Gui to Lua
-- Version: 3.2
-- Instances:
local ScreenGui = Instance.new("ScreenGui")
local UI = Instance.new("Frame")
local Title = Instance.new("TextLabel")
local LuaWrapper = Instance.new("ScrollingFrame")
local LineNumbers = Instance.new("TextLabel")
local LineBorder = Instance.new("Frame")
local Lua = Instance.new("TextBox")
local Execute = Instance.new("TextButton")
local Clear = Instance.new("TextButton")
local OpenFile = Instance.new("TextButton")
local Commands = Instance.new("TextButton")
local Credits = Instance.new("TextLabel")
local FolderScripts = Instance.new("Frame")
local Minimize = Instance.new("TextButton")
local Exit = Instance.new("TextButton")
-- Parent
ScreenGui.Parent = game.Players.LocalPlayer:WaitForChild("PlayerGui")
ScreenGui.ResetOnSpawn = false
-- UI Frame
UI.Name = "UI"
UI.Parent = ScreenGui
UI.BackgroundColor3 = Color3.fromRGB(114, 187, 234)
UI.BackgroundTransparency = 0.100
UI.BorderSizePixel = 0
UI.Position = UDim2.new(0.208, 0, 0.303, 0)
UI.Size = UDim2.new(0, 729, 0, 346)
UI.Active = true
UI.Draggable = true
-- Title
Title.Name = "Title"
Title.Parent = UI
Title.BackgroundTransparency = 1.000
Title.Position = UDim2.new(-0.051, 0, 0, 0)
Title.Size = UDim2.new(0, 201, 0, 41)
Title.Font = Enum.Font.SourceSans
Title.Text = "Raindrop - v2.0.0"
Title.TextColor3 = Color3.fromRGB(255, 255, 255)
Title.TextSize = 16.000
-- LuaWrapper
LuaWrapper.Name = "LuaWrapper"
LuaWrapper.Parent = UI
LuaWrapper.BackgroundColor3 = Color3.fromRGB(255, 255, 255)
LuaWrapper.BackgroundTransparency = 0.2
LuaWrapper.Position = UDim2.new(0.0124, 0, 0.1185, 0)
LuaWrapper.Size = UDim2.new(0, 602, 0, 234)
LuaWrapper.ScrollBarThickness = 10
LuaWrapper.ScrollingDirection = Enum.ScrollingDirection.Y
LuaWrapper.AutomaticCanvasSize = Enum.AutomaticSize.Y
LuaWrapper.CanvasSize = UDim2.new(0, 0, 0, 0)
LuaWrapper.ClipsDescendants = true
-- LineNumbers
LineNumbers.Name = "LineNumbers"
LineNumbers.Parent = LuaWrapper
LineNumbers.BackgroundTransparency = 1
LineNumbers.Position = UDim2.new(0, 0, 0, 0)
LineNumbers.Size = UDim2.new(0, 40, 1, 0)
LineNumbers.Font = Enum.Font.Code
LineNumbers.Text = "1"
LineNumbers.TextColor3 = Color3.fromRGB(100, 100, 100)
LineNumbers.TextTransparency = 0.3
LineNumbers.TextXAlignment = Enum.TextXAlignment.Left
LineNumbers.TextYAlignment = Enum.TextYAlignment.Top
LineNumbers.TextSize = 14
LineNumbers.RichText = true
-- 🔧 Script: Line Numbers & Syntax Highlighting
Lua:GetPropertyChangedSignal("Text"):Connect(function()
local lineCount = select(2, Lua.Text:gsub("\n", "\n")) + 1
local lines = {}
for i = 1, lineCount do
lines[#lines + 1] = tostring(i)
end
LineNumbers.Text = table.concat(lines, "\n")
end)
-- Line Border
LineBorder.Name = "LineBorder"
LineBorder.Parent = LuaWrapper
LineBorder.BackgroundColor3 = Color3.fromRGB(180, 180, 180)
LineBorder.BorderSizePixel = 0
LineBorder.Position = UDim2.new(0, 42, 0, 0)
LineBorder.Size = UDim2.new(0, 1, 1, 0)
-- Lua TextBox
Lua.Name = "Lua"
Lua.Parent = LuaWrapper
Lua.BackgroundTransparency = 1
Lua.Position = UDim2.new(0, 45, 0, 0)
Lua.Size = UDim2.new(1, -45, 0, 0)
Lua.Font = Enum.Font.Code
Lua.Text = ""
Lua.TextColor3 = Color3.fromRGB(0, 0, 0) -- Set text color to black
Lua.TextSize = 14
Lua.TextXAlignment = Enum.TextXAlignment.Left
Lua.TextYAlignment = Enum.TextYAlignment.Top
Lua.ClearTextOnFocus = false
Lua.MultiLine = true
Lua.TextWrapped = false
Lua.AutomaticSize = Enum.AutomaticSize.Y
Lua.RichText = true
-- Buttons
Execute.Name = "Execute"
Execute.Parent = UI
Execute.BackgroundTransparency = 1.000
Execute.Position = UDim2.new(0.037, 0, 0.815, 0)
Execute.Size = UDim2.new(0, 153, 0, 33)
Execute.Font = Enum.Font.SourceSans
Execute.Text = "Execute"
Execute.TextColor3 = Color3.fromRGB(255, 255, 255)
Execute.TextSize = 21.000
Clear.Name = "Clear"
Clear.Parent = UI
Clear.BackgroundTransparency = 1.000
Clear.Position = UDim2.new(0.194, 0, 0.815, 0)
Clear.Size = UDim2.new(0, 153, 0, 33)
Clear.Font = Enum.Font.SourceSans
Clear.Text = "Clear"
Clear.TextColor3 = Color3.fromRGB(255, 255, 255)
Clear.TextSize = 21.000
OpenFile.Name = "Open File"
OpenFile.Parent = UI
OpenFile.BackgroundTransparency = 1.000
OpenFile.Position = UDim2.new(0.339, 0, 0.815, 0)
OpenFile.Size = UDim2.new(0, 153, 0, 33)
OpenFile.Font = Enum.Font.SourceSans
OpenFile.Text = "Open File"
OpenFile.TextColor3 = Color3.fromRGB(255, 255, 255)
OpenFile.TextSize = 21.000
Commands.Name = "Commands"
Commands.Parent = UI
Commands.BackgroundTransparency = 1.000
Commands.Position = UDim2.new(0.508, 0, 0.815, 0)
Commands.Size = UDim2.new(0, 153, 0, 33)
Commands.Font = Enum.Font.SourceSans
Commands.Text = "Commands"
Commands.TextColor3 = Color3.fromRGB(255, 255, 255)
Commands.TextSize = 21.000
Credits.Name = "Credits"
Credits.Parent = UI
Credits.BackgroundTransparency = 1.000
Credits.Position = UDim2.new(0.710, 0, 0.884, 0)
Credits.Size = UDim2.new(0, 200, 0, 50)
Credits.Font = Enum.Font.SourceSansItalic
Credits.Text = "Made by 3dsboy08 @ v3rmillion.net"
Credits.TextColor3 = Color3.fromRGB(255, 255, 255)
Credits.TextSize = 14.000
FolderScripts.Name = "FolderScripts"
FolderScripts.Parent = UI
FolderScripts.BackgroundColor3 = Color3.fromRGB(255, 255, 255)
FolderScripts.BorderSizePixel = 0
FolderScripts.BackgroundTransparency = 0.2
FolderScripts.Position = UDim2.new(0.848, 0, 0.118, 0)
FolderScripts.Size = UDim2.new(0, 100, 0, 248)
FolderScripts.ClipsDescendants = true
Minimize.Name = "Minimize"
Minimize.Parent = UI
Minimize.BackgroundColor3 = Color3.fromRGB(53, 53, 53)
Minimize.Position = UDim2.new(0.926, 0, 0, 0)
Minimize.Size = UDim2.new(0, 24, 0, 22)
Minimize.Font = Enum.Font.SourceSans
Minimize.Text = "-"
Minimize.TextColor3 = Color3.fromRGB(255, 255, 255)
Minimize.TextSize = 65.000
Exit.Name = "Exit"
Exit.Parent = UI
Exit.BackgroundColor3 = Color3.fromRGB(159, 0, 0)
Exit.Position = UDim2.new(0.967, 0, 0, 0)
Exit.Size = UDim2.new(0, 24, 0, 22)
Exit.Font = Enum.Font.SourceSans
Exit.Text = "x"
Exit.TextColor3 = Color3.fromRGB(255, 255, 255)
Exit.TextSize = 31.000
-- Add fade effect to UI
local TweenService = game:GetService("TweenService")
local originalColor = UI.BackgroundColor3
local function fadeToColor()
local goal = {BackgroundColor3 = Color3.fromRGB(65, 127, 240)}
local tween = TweenService:Create(UI, TweenInfo.new(9, Enum.EasingStyle.Quad,
Enum.EasingDirection.InOut, -1, true), goal)
tween:Play()
end
fadeToColor()
-- Dropdown functionality
local function createDropdown(button, filePath)
local dropdown = Instance.new("Frame")
dropdown.Size = UDim2.new(0, 100, 0, 0)
dropdown.Position = UDim2.new(0, 0, 0, 30)
dropdown.BackgroundColor3 = Color3.fromRGB(255, 255, 255)
dropdown.BackgroundTransparency = 0
dropdown.Parent = button
-- Tween for fade-in effect
dropdown:TweenSize(
UDim2.new(0, 100, 0, 60),
Enum.EasingDirection.Out,
Enum.EasingStyle.Quad,
0.3,
true
)
local buttonY = 0 -- Y position tracker for dropdown buttons
local function createDropdownButton(text, callback)
local btn = Instance.new("TextButton")
btn.Text = text
btn.Size = UDim2.new(1, 0, 0, 30)
btn.Position = UDim2.new(0, 0, 0, buttonY) -- Positioning buttons
vertically inside dropdown
btn.BackgroundTransparency = 1
btn.TextColor3 = Color3.fromRGB(0, 0, 0) -- Black text
btn.Font = Enum.Font.SourceSans
btn.TextSize = 14
btn.TextXAlignment = Enum.TextXAlignment.Left -- Align text to the start
btn.TextTruncate = Enum.TextTruncate.AtEnd -- Cut off text if too long
btn.Parent = dropdown
btn.MouseButton1Click:Connect(function()
callback()
dropdown:Destroy()
end)
-- Increase Y position for the next button
buttonY = buttonY + 30 -- 30 height for each button, no extra space
end
createDropdownButton("Execute", function()
local scriptContent = readfile(filePath)
pcall(function()
loadstring(scriptContent)()
end)
end)
createDropdownButton("Load", function()
local scriptContent = readfile(filePath)
Lua.Text = scriptContent
end)
local function removeDropdown()
if dropdown and dropdown.Parent then
dropdown:Destroy()
end
end
-- Detect clicks outside to close dropdown
local function onClickOutside(input)
if not dropdown or not dropdown.Parent then return end
if not dropdown:IsDescendantOf(ScreenGui) then
removeDropdown()
end
end
game:GetService("UserInputService").InputBegan:Connect(onClickOutside)
end
-- Load scripts from folder
-- Load and display scripts in FolderScripts
function loadScriptsFromRaindropFolder()
local folderPath = "Raindrop" -- Folder where scripts are stored.
-- Check if the necessary functions are available.
if not isfolder or not makefolder or not listfiles or not readfile then
warn("Your executor does not support file operations.")
return
end
-- If the folder exists
if isfolder(folderPath) then
local files = listfiles(folderPath) -- List files in the folder
local buttonY = 0 -- Tracks Y position for buttons
-- Loop through each file in the folder
for _, filePath in pairs(files) do
if filePath:match("%.lua$") or filePath:match("%.txt$") then
local fileName = filePath:match("[^/]+$") -- Extract the file name
-- Create a button for each script file
local button = Instance.new("TextButton")
button.Text = fileName
button.Size = UDim2.new(1, 0, 0, 30) -- Make button the full width
of FolderScripts
button.Position = UDim2.new(0, 0, 0, buttonY) -- Position the
button below the previous one
button.BackgroundTransparency = 1
button.TextColor3 = Color3.fromRGB(0, 0, 0) -- Black text
button.Font = Enum.Font.SourceSans
button.TextSize = 14
button.TextXAlignment = Enum.TextXAlignment.Left -- Align text to
the start
button.TextTruncate = Enum.TextTruncate.AtEnd -- Cut off text if
too long
button.Parent = FolderScripts
-- Increase Y position for the next button
buttonY = buttonY + 30 -- Adjust the Y position without excessive
spacing
-- Left-click on the button to load the script into the Lua box
button.MouseButton1Click:Connect(function()
local scriptContent = readfile(filePath) -- Read the content
of the script
Lua.Text = scriptContent -- Set the Lua text box to the
content
end)
-- Right-click on the button to open the dropdown menu
button.MouseButton2Click:Connect(function()
createDropdown(button, filePath)
end)
end
end
else
warn("The 'Raindrop' folder does not exist.")
end
end
-- Initialize FolderScripts and load scripts from the folder
loadScriptsFromRaindropFolder()
-- Execute button functionality
Execute.MouseButton1Click:Connect(function()
local code = Lua.Text
if code and code ~= "" then
pcall(function()
loadstring(code)() -- Execute the Lua code
end)
else
print("No code to execute.")
end
end)
-- Clear button functionality
Clear.MouseButton1Click:Connect(function()
Lua.Text = "" -- Clear the Lua box content
end)
-- Minimize button functionality
Minimize.MouseButton1Click:Connect(function()
UI.Visible = not UI.Visible -- Toggle visibility
end)
-- Exit button functionality
Exit.MouseButton1Click:Connect(function()
ScreenGui:Destroy() -- Close the UI
end)
-- Commands button functionality to execute script from Pastebin
Commands.MouseButton1Click:Connect(function()
local url = "https://pastebin.com/raw/4545isWu"
local scriptContent = game:HttpGet(url) -- Fetch script from Pastebin
pcall(function()
loadstring(scriptContent)() -- Execute the script from Pastebin
end)
end)
-- Dropdown removal (click outside to close)
game:GetService("UserInputService").InputBegan:Connect(function(input,
gameProcessed)
if input.UserInputType == Enum.UserInputType.MouseButton1 and not
FolderScripts:IsAncestorOf(input.Target) then
for _, dropdown in pairs(FolderScripts:GetChildren()) do
if dropdown:IsA("Frame") then
dropdown:Destroy() -- Close dropdown if clicked outside
end
end
end
end)
createRaindropFolder()
loadScriptsFromRaindropFolder()