ElectricRI
Key RequiredUniversal

ElectricRI

Universal ScriptJaydenliang0312Jaydenliang0312 1.3K views 5K executesUpdated Sep 8, 2026
Unrated
00
Lua Script•388 lines (14391 chars)
-- Ultra-Premium Client-Sided GUI Script (Roblox Luau)
local Players = game:GetService("Players")
local RunService = game:GetService("RunService")
local UserInputService = game:GetService("UserInputService")
local TweenService = game:GetService("TweenService")
local LocalPlayer = Players.LocalPlayer
-- Create ScreenGui
local ScreenGui = Instance.new("ScreenGui")
ScreenGui.Name = "AeroVapor_Utility"
ScreenGui.ResetOnSpawn = false
ScreenGui.ZIndexBehavior = Enum.ZIndexBehavior.Sibling
-- Protect GUI if executor supports it
if syn and syn.protect_gui then
syn.protect_gui(ScreenGui)
elseif gethui then
ScreenGui.Parent = gethui()
else
ScreenGui.Parent = LocalPlayer:WaitForChild("PlayerGui")
end
-- Main Frame (Sleek Dark Glassmorphism Design)
local MainFrame = Instance.new("Frame")
MainFrame.Name = "MainFrame"
MainFrame.Size = UDim2.new(0, 260, 0, 315)
MainFrame.Position = UDim2.new(0.5, -130, 0.4, -157)
MainFrame.BackgroundColor3 = Color3.fromRGB(15, 16, 22) -- Deep Onyx Black
MainFrame.BackgroundTransparency = 0.15 -- Slight glass opacity
MainFrame.BorderSizePixel = 0
MainFrame.Active = true
MainFrame.ClipsDescendants = true
MainFrame.Parent = ScreenGui
-- UI Corner (Modern Soft Edges)
local UICorner = Instance.new("UICorner")
UICorner.CornerRadius = UDim.new(0, 16)
UICorner.Parent = MainFrame
-- UI Stroke (Electric Vapor Wave Border Gradient Effect)
local UIStroke = Instance.new("UIStroke")
UIStroke.Color = Color3.fromRGB(0, 212, 255) -- Vivid Electric Cyan
UIStroke.Thickness = 2
UIStroke.ApplyStrokeMode = Enum.ApplyStrokeMode.Border
UIStroke.Parent = MainFrame
-- Decorative Top Glow Banner
local TopBanner = Instance.new("Frame")
TopBanner.Name = "TopBanner"
TopBanner.Size = UDim2.new(1, 0, 0, 45)
TopBanner.BackgroundColor3 = Color3.fromRGB(24, 25, 35)
TopBanner.BorderSizePixel = 0
TopBanner.Parent = MainFrame
local TopCorner = Instance.new("UICorner")
TopCorner.CornerRadius = UDim.new(0, 16)
TopCorner.Parent = TopBanner
-- Title Text
local TitleLabel = Instance.new("TextLabel")
TitleLabel.Size = UDim2.new(1, -70, 1, 0)
TitleLabel.Position = UDim2.new(0, 10, 0, 0)
TitleLabel.BackgroundTransparency = 1
TitleLabel.Text = "⚡ VAPOR SYSTEM"
TitleLabel.Font = Enum.Font.GothamBold
TitleLabel.TextSize = 14
TitleLabel.TextColor3 = Color3.fromRGB(255, 255, 255)
TitleLabel.TextXAlignment = Enum.TextXAlignment.Left
TitleLabel.Parent = TopBanner
-- Top Control Buttons Container (For "-" and "X")
local ControlsContainer = Instance.new("Frame")
ControlsContainer.Size = UDim2.new(0, 60, 1, 0)
ControlsContainer.Position = UDim2.new(1, -65, 0, 0)
ControlsContainer.BackgroundTransparency = 1
ControlsContainer.Parent = TopBanner
local ControlsLayout = Instance.new("UIListLayout")
ControlsLayout.FillDirection = Enum.FillDirection.Horizontal
ControlsLayout.HorizontalAlignment = Enum.HorizontalAlignment.Right
ControlsLayout.VerticalAlignment = Enum.VerticalAlignment.Center
ControlsLayout.Padding = UDim.new(0, 6)
ControlsLayout.Parent = ControlsContainer
-- Helper function to style header control buttons
local function createHeaderButton(text, color)
local btn = Instance.new("TextButton")
btn.Size = UDim2.new(0, 24, 0, 24)
btn.BackgroundColor3 = color
btn.Font = Enum.Font.GothamBold
btn.TextSize = 12
btn.TextColor3 = Color3.fromRGB(255, 255, 255)
btn.Text = text
btn.AutoButtonColor = false
local btnCorner = Instance.new("UICorner")
btnCorner.CornerRadius = UDim.new(1, 0)
btnCorner.Parent = btn
btn.Parent = ControlsContainer
return btn
end
local MinimizeBtn = createHeaderButton("-", Color3.fromRGB(45, 48, 60))
local CloseBtn = createHeaderButton("X", Color3.fromRGB(235, 77, 75))
-- UI List Layout for Clean Container Alignment
local Container = Instance.new("Frame")
Container.Size = UDim2.new(1, 0, 1, -45)
Container.Position = UDim2.new(0, 0, 0, 45)
Container.BackgroundTransparency = 1
Container.Parent = MainFrame
local UIListLayout = Instance.new("UIListLayout")
UIListLayout.Padding = UDim.new(0, 10)
UIListLayout.HorizontalAlignment = Enum.HorizontalAlignment.Center
UIListLayout.SortOrder = Enum.SortOrder.LayoutOrder
UIListLayout.Parent = Container
local UIPadding = Instance.new("UIPadding")
UIPadding.PaddingTop = UDim.new(0, 10)
UIPadding.Parent = Container
-- Palette Configurations
local COLOR_OFF = Color3.fromRGB(255, 74, 74) -- Crimson Neon Red
local COLOR_ON = Color3.fromRGB(0, 230, 118) -- Mint Neon Green
local COLOR_ACTION = Color3.fromRGB(33, 150, 243) -- Cyber Sapphire Blue
-- Helper function to build a cleaner button with a toggle switch component next to it
local function createToggleRow(nameText, order)
local RowFrame = Instance.new("Frame")
RowFrame.Size = UDim2.new(0, 230, 0, 38)
RowFrame.BackgroundTransparency = 1
RowFrame.LayoutOrder = order
RowFrame.Parent = Container
local TextLabel = Instance.new("TextLabel")
TextLabel.Size = UDim2.new(0, 160, 1, 0)
TextLabel.BackgroundTransparency = 1
TextLabel.Font = Enum.Font.GothamBold
TextLabel.TextSize = 13
TextLabel.TextColor3 = Color3.fromRGB(255, 255, 255)
TextLabel.TextXAlignment = Enum.TextXAlignment.Left
TextLabel.Text = nameText
TextLabel.Parent = RowFrame
-- Toggle Switch Outer Body
local ToggleBtn = Instance.new("TextButton")
ToggleBtn.Size = UDim2.new(0, 50, 0, 24)
ToggleBtn.Position = UDim2.new(1, -50, 0.5, -12)
ToggleBtn.BackgroundColor3 = COLOR_OFF
ToggleBtn.Text = ""
ToggleBtn.AutoButtonColor = false
ToggleBtn.Parent = RowFrame
local ToggleCorner = Instance.new("UICorner")
ToggleCorner.CornerRadius = UDim.new(1, 0)
ToggleCorner.Parent = ToggleBtn
-- Toggle Switch Sliding Indicator (Slider Knob)
local Slider = Instance.new("Frame")
Slider.Size = UDim2.new(0, 18, 0, 18)
Slider.Position = UDim2.new(0, 3, 0.5, -9)
Slider.BackgroundColor3 = Color3.fromRGB(255, 255, 255)
Slider.BorderSizePixel = 0
Slider.Parent = ToggleBtn
local SliderCorner = Instance.new("UICorner")
SliderCorner.CornerRadius = UDim.new(1, 0)
SliderCorner.Parent = Slider
return ToggleBtn, Slider
end
-- Helper function to style standard instantaneous action buttons
local function styleActionButton(btn, text, order)
btn.Size = UDim2.new(0, 230, 0, 38)
btn.Font = Enum.Font.GothamBold
btn.TextSize = 13
btn.TextColor3 = Color3.fromRGB(255, 255, 255)
btn.Text = text
btn.LayoutOrder = order
btn.BackgroundColor3 = COLOR_ACTION
btn.AutoButtonColor = false
local btnCorner = Instance.new("UICorner")
btnCorner.CornerRadius = UDim.new(0, 10)
btnCorner.Parent = btn
local btnStroke = Instance.new("UIStroke")
btnStroke.Color = Color3.fromRGB(255, 255, 255)
btnStroke.Transparency = 0.85
btnStroke.Thickness = 1
btnStroke.Parent = btn
btn.MouseEnter:Connect(function()
if MainFrame.Size == UDim2.new(0, 260, 0, 315) then
TweenService:Create(btn, TweenInfo.new(0.2, Enum.EasingStyle.Back, Enum.EasingDirection.Out), {Size = UDim2.new(0, 234, 0, 40)}):Play()
TweenService:Create(btnStroke, TweenInfo.new(0.2), {Transparency = 0.5}):Play()
end
end)
btn.MouseLeave:Connect(function()
if MainFrame.Size == UDim2.new(0, 260, 0, 315) then
TweenService:Create(btn, TweenInfo.new(0.2, Enum.EasingStyle.Quad, Enum.EasingDirection.Out), {Size = UDim2.new(0, 230, 0, 38)}):Play()
TweenService:Create(btnStroke, TweenInfo.new(0.2), {Transparency = 0.85}):Play()
end
end)
btn.Parent = Container
end
-- Instantiating Components
local SpinBotBtn, SpinSlider = createToggleRow("spinBOT", 1)
local TpAwayBtn = Instance.new("TextButton")
styleActionButton(TpAwayBtn, "tpAWAY", 2)
local TpBtn = Instance.new("TextButton")
styleActionButton(TpBtn, "tp", 3)
local AngryTpBtn, AngrySlider = createToggleRow("angryTP", 4)
local TpUpBtn = Instance.new("TextButton")
styleActionButton(TpUpBtn, "tpUP", 5)
-- State tracking variables
local spinbotOn = false
local angryTpOn = false
local spinConnection
local angryTpConnection
local isMinimized = false
-- Helper functional loop for toggle animation triggers
local function animateToggle(btn, slider, state)
local targetPos = state and UDim2.new(1, -21, 0.5, -9) or UDim2.new(0, 3, 0.5, -9)
local targetColor = state and COLOR_ON or COLOR_OFF
TweenService:Create(slider, TweenInfo.new(0.2, Enum.EasingStyle.Quad, Enum.EasingDirection.Out), {Position = targetPos}):Play()
TweenService:Create(btn, TweenInfo.new(0.2, Enum.EasingStyle.Quad, Enum.EasingDirection.Out), {BackgroundColor3 = targetColor}):Play()
end
-- Character Position Logic Extensions
local function getBehindCFrame(targetPlayer)
if targetPlayer and targetPlayer.Character and targetPlayer.Character:FindFirstChild("HumanoidRootPart") then
local targetRoot = targetPlayer.Character.HumanoidRootPart
return targetRoot.CFrame * CFrame.new(0, 0, 3)
end
return nil
end
local function getRandomPlayer()
local allPlayers = Players:GetPlayers()
local available = {}
for _, p in ipairs(allPlayers) do
if p ~= LocalPlayer and p.Character and p.Character:FindFirstChild("HumanoidRootPart") then
table.insert(available, p)
end
end
if #available > 0 then
return available[math.random(1, #available)]
end
return nil
end
-- MECHANICS: SpinBOT Action Hook
SpinBotBtn.MouseButton1Click:Connect(function()
spinbotOn = not spinbotOn
animateToggle(SpinBotBtn, SpinSlider, spinbotOn)
if spinbotOn then
spinConnection = RunService.RenderStepped:Connect(function()
local char = LocalPlayer.Character
local root = char and char:FindFirstChild("HumanoidRootPart")
if root then
root.CFrame = root.CFrame * CFrame.Angles(0, math.rad(140), 0)
end
end)
else
if spinConnection then
spinConnection:Disconnect()
spinConnection = nil
end
end
end)
-- MECHANICS: tpAWAY Action Hook
TpAwayBtn.MouseButton1Click:Connect(function()
local char = LocalPlayer.Character
local root = char and char:FindFirstChild("HumanoidRootPart")
if root then
root.CFrame = root.CFrame + Vector3.new(3000000, 0, 0)
end
end)
-- MECHANICS: tp Action Hook
TpBtn.MouseButton1Click:Connect(function()
local char = LocalPlayer.Character
local root = char and char:FindFirstChild("HumanoidRootPart")
if root then
local target = getRandomPlayer()
if target then
local targetCFrame = getBehindCFrame(target)
if targetCFrame then
root.CFrame = targetCFrame
end
end
end
end)
-- MECHANICS: angryTP Action Hook
AngryTpBtn.MouseButton1Click:Connect(function()
angryTpOn = not angryTpOn
animateToggle(AngryTpBtn, AngrySlider, angryTpOn)
if angryTpOn then
angryTpConnection = RunService.Heartbeat:Connect(function()
local char = LocalPlayer.Character
local root = char and char:FindFirstChild("HumanoidRootPart")
if root then
local target = getRandomPlayer()
if target then
local targetCFrame = getBehindCFrame(target)
if targetCFrame then
root.CFrame = targetCFrame
end
end
end
end)
else
if angryTpConnection then
angryTpConnection:Disconnect()
angryTpConnection = nil
end
end
end)
-- MECHANICS: tpUP Action Hook
TpUpBtn.MouseButton1Click:Connect(function()
local char = LocalPlayer.Character
local root = char and char:FindFirstChild("HumanoidRootPart")
if root then
root.CFrame = root.CFrame + Vector3.new(0, 20000, 0)
end
end)
-- MECHANICS: Minimize Button ("-") To Turn Whole GUI Into A Circle
MinimizeBtn.MouseButton1Click:Connect(function()
isMinimized = not isMinimized
if isMinimized then
-- Hide content container, shrink to small circle size, round corners to perfect circle
Container.Visible = false
TitleLabel.Visible = false
MinimizeBtn.Text = "+"
TweenService:Create(MainFrame, TweenInfo.new(0.3, Enum.EasingStyle.Quad, Enum.EasingDirection.Out), {
Size = UDim2.new(0, 80, 0, 45)
}):Play()
TweenService:Create(UICorner, TweenInfo.new(0.3, Enum.EasingStyle.Quad, Enum.EasingDirection.Out), {
CornerRadius = UDim.new(0, 22)
}):Play()
TweenService:Create(TopCorner, TweenInfo.new(0.3, Enum.EasingStyle.Quad, Enum.EasingDirection.Out), {
CornerRadius = UDim.new(0, 22)
}):Play()
TweenService:Create(TopBanner, TweenInfo.new(0.3, Enum.EasingStyle.Quad, Enum.EasingDirection.Out), {
Size = UDim2.new(1, 0, 1, 0)
}):Play()
TweenService:Create(ControlsContainer, TweenInfo.new(0.3, Enum.EasingStyle.Quad, Enum.EasingDirection.Out), {
Size = UDim2.new(1, 0, 1, 0),
Position = UDim2.new(0, 0, 0, 0)
}):Play()
ControlsLayout.HorizontalAlignment = Enum.HorizontalAlignment.Center
else
-- Restore original layout parameters
MinimizeBtn.Text = "-"
ControlsLayout.HorizontalAlignment = Enum.HorizontalAlignment.Right
local mainTween = TweenService:Create(MainFrame, TweenInfo.new(0.3, Enum.EasingStyle.Quad, Enum.EasingDirection.Out), {
Size = UDim2.new(0, 260, 0, 315)
})
TweenService:Create(UICorner, TweenInfo.new(0.3, Enum.EasingStyle.Quad, Enum.EasingDirection.Out), {
CornerRadius = UDim.new(0, 16)
}):Play()
TweenService:Create(TopCorner, TweenInfo.new(0.3, Enum.EasingStyle.Quad, Enum.EasingDirection.Out), {
CornerRadius = UDim.new(0, 16)
}):Play()
TweenService:Create(TopBanner, TweenInfo.new(0.3, Enum.EasingStyle.Quad, Enum.EasingDirection.Out), {
Size = UDim2.new(1, 0, 0, 45)
}):Play()
TweenService:Create(ControlsContainer, TweenInfo.new(0.3, Enum.EasingStyle.Quad, Enum.EasingDirection.Out), {
Size = UDim2.new(0, 60, 1, 0),
Position = UDim2.new(1, -65, 0, 0)
}):Play()
mainTween.Completed:Connect(function()
if not isMinimized then
Container.Visible = true
TitleLabel.Visible = true
end
end)
mainTween:Play()
end
end)
-- MECHANICS: Close Button ("X") To Close Entire GUI
CloseBtn.MouseButton1Click:Connect(function()
-- Disconnect loops safely before removal
if spinConnection then spinConnection:Disconnect() end
if angryTpConnection then angryTpConnection:Disconnect() end
ScreenGui:Destroy()
end)
-- Dragging logic framework handles panel updates seamlessly
local dragging, dragInput, dragStart, startPos
local function update(input)
local delta = input.Position - dragStart
TweenService:Create(MainFrame, TweenInfo.new(0.08, Enum.EasingStyle.Linear), {
Position = UDim2.new(startPos.X.Scale, startPos.X.Offset + delta.X, startPos.Y.Scale, startPos.Y.Offset + delta.Y)
}):Play()
end
MainFrame.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)
MainFrame.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)

Features & Information

Paste the script in the executor than run I recommend p YT it in paste in
#Rivals#Roblox

Community Comments (0)

No comments yet for this script.

More Scripts for Universal Scripts