
KeylessUniversal

--========================================================
-- ANIMATIONS HUB V3 - FIXED
-- MUST BE A LOCALSCRIPT
-- Put in StarterPlayer > StarterPlayerScripts
--========================================================
local Players = game:GetService("Players")
local TweenService = game:GetService("TweenService")
local UserInputService = game:GetService("UserInputService")
local Player = Players.LocalPlayer
local PlayerGui = Player:WaitForChild("PlayerGui")
-- Remove an old copy
local Old = PlayerGui:FindFirstChild("AnimationsHubV3")
if Old then
Old:Destroy()
end
--========================================================
-- COLORS
--========================================================
local BLUE = Color3.fromRGB(0, 140, 255)
local DARK = Color3.fromRGB(13, 16, 23)
local DARK2 = Color3.fromRGB(20, 24, 33)
local BLACK = Color3.fromRGB(5, 7, 10)
local WHITE = Color3.fromRGB(245, 245, 245)
local RED = Color3.fromRGB(190, 45, 55)
--========================================================
-- GUI
--========================================================
local Gui = Instance.new("ScreenGui")
Gui.Name = "AnimationsHubV3"
Gui.ResetOnSpawn = false
Gui.IgnoreGuiInset = true
Gui.ZIndexBehavior = Enum.ZIndexBehavior.Sibling
Gui.Parent = PlayerGui
--========================================================
-- MAIN
--========================================================
local Main = Instance.new("Frame")
Main.Name = "Main"
Main.AnchorPoint = Vector2.new(0.5, 0.5)
Main.Position = UDim2.fromScale(0.5, 0.5)
Main.Size = UDim2.fromOffset(520, 520)
Main.BackgroundColor3 = DARK
Main.BorderSizePixel = 0
Main.Parent = Gui
local MainCorner = Instance.new("UICorner")
MainCorner.CornerRadius = UDim.new(0, 16)
MainCorner.Parent = Main
local MainStroke = Instance.new("UIStroke")
MainStroke.Color = BLUE
MainStroke.Thickness = 1.5
MainStroke.Parent = Main
--========================================================
-- HEADER
--========================================================
local Header = Instance.new("Frame")
Header.Size = UDim2.new(1, 0, 0, 65)
Header.BackgroundColor3 = BLACK
Header.BorderSizePixel = 0
Header.Active = true
Header.Parent = Main
local HeaderCorner = Instance.new("UICorner")
HeaderCorner.CornerRadius = UDim.new(0, 16)
HeaderCorner.Parent = Header
local Title = Instance.new("TextLabel")
Title.BackgroundTransparency = 1
Title.Position = UDim2.fromOffset(18, 8)
Title.Size = UDim2.fromOffset(280, 27)
Title.Font = Enum.Font.GothamBold
Title.Text = "Animations Hub V3"
Title.TextColor3 = WHITE
Title.TextSize = 20
Title.TextXAlignment = Enum.TextXAlignment.Left
Title.Parent = Header
local Welcome = Instance.new("TextLabel")
Welcome.BackgroundTransparency = 1
Welcome.Position = UDim2.fromOffset(19, 36)
Welcome.Size = UDim2.fromOffset(280, 20)
Welcome.Font = Enum.Font.Gotham
Welcome.Text = "Welcome " .. Player.Name
Welcome.TextColor3 = BLUE
Welcome.TextSize = 11
Welcome.TextXAlignment = Enum.TextXAlignment.Left
Welcome.Parent = Header
--========================================================
-- CLOSE BUTTON
--========================================================
local Close = Instance.new("TextButton")
Close.Name = "Close"
Close.AnchorPoint = Vector2.new(1, 0.5)
Close.Position = UDim2.new(1, -15, 0.5, 0)
Close.Size = UDim2.fromOffset(38, 38)
Close.BackgroundColor3 = DARK2
Close.BorderSizePixel = 0
Close.Text = "×"
Close.TextColor3 = WHITE
Close.Font = Enum.Font.GothamBold
Close.TextSize = 25
Close.Parent = Header
local CloseCorner = Instance.new("UICorner")
CloseCorner.CornerRadius = UDim.new(1, 0)
CloseCorner.Parent = Close
local CloseStroke = Instance.new("UIStroke")
CloseStroke.Color = BLUE
CloseStroke.Parent = Close
--========================================================
-- CREDITS BUTTON
--========================================================
local CreditsButton = Instance.new("TextButton")
CreditsButton.Position = UDim2.fromOffset(300, 17)
CreditsButton.Size = UDim2.fromOffset(80, 32)
CreditsButton.BackgroundColor3 = DARK2
CreditsButton.BorderSizePixel = 0
CreditsButton.Text = "CREDITS"
CreditsButton.TextColor3 = WHITE
CreditsButton.Font = Enum.Font.GothamBold
CreditsButton.TextSize = 10
CreditsButton.Parent = Header
local CreditsCorner = Instance.new("UICorner")
CreditsCorner.CornerRadius = UDim.new(0, 8)
CreditsCorner.Parent = CreditsButton
--========================================================
-- SEARCH
--========================================================
local Search = Instance.new("TextBox")
Search.Position = UDim2.fromOffset(15, 78)
Search.Size = UDim2.new(1, -30, 0, 40)
Search.BackgroundColor3 = DARK2
Search.BorderSizePixel = 0
Search.PlaceholderText = "Search animations..."
Search.PlaceholderColor3 = Color3.fromRGB(120, 125, 135)
Search.Text = ""
Search.TextColor3 = WHITE
Search.Font = Enum.Font.Gotham
Search.TextSize = 13
Search.ClearTextOnFocus = false
Search.Parent = Main
local SearchCorner = Instance.new("UICorner")
SearchCorner.CornerRadius = UDim.new(0, 9)
SearchCorner.Parent = Search
local SearchPadding = Instance.new("UIPadding")
SearchPadding.PaddingLeft = UDim.new(0, 12)
SearchPadding.Parent = Search
--========================================================
-- STOP
--========================================================
local Stop = Instance.new("TextButton")
Stop.Position = UDim2.fromOffset(15, 125)
Stop.Size = UDim2.new(0.5, -20, 0, 35)
Stop.BackgroundColor3 = Color3.fromRGB(55, 22, 27)
Stop.BorderSizePixel = 0
Stop.Text = "■ STOP ANIMATION"
Stop.TextColor3 = WHITE
Stop.Font = Enum.Font.GothamBold
Stop.TextSize = 11
Stop.Parent = Main
local StopCorner = Instance.new("UICorner")
StopCorner.CornerRadius = UDim.new(0, 8)
StopCorner.Parent = Stop
--========================================================
-- DESTROY
--========================================================
local Destroy = Instance.new("TextButton")
Destroy.Position = UDim2.new(0.5, 5, 0, 125)
Destroy.Size = UDim2.new(0.5, -20, 0, 35)
Destroy.BackgroundColor3 = Color3.fromRGB(75, 20, 27)
Destroy.BorderSizePixel = 0
Destroy.Text = "✕ DESTROY GUI"
Destroy.TextColor3 = WHITE
Destroy.Font = Enum.Font.GothamBold
Destroy.TextSize = 11
Destroy.Parent = Main
local DestroyCorner = Instance.new("UICorner")
DestroyCorner.CornerRadius = UDim.new(0, 8)
DestroyCorner.Parent = Destroy
--========================================================
-- ANIMATION LIST
--========================================================
local List = Instance.new("ScrollingFrame")
List.Position = UDim2.fromOffset(15, 172)
List.Size = UDim2.new(1, -30, 1, -187)
List.BackgroundTransparency = 1
List.BorderSizePixel = 0
List.ScrollBarThickness = 4
List.ScrollBarImageColor3 = BLUE
List.CanvasSize = UDim2.new(0, 0, 0, 0)
List.AutomaticCanvasSize = Enum.AutomaticSize.Y
List.Parent = Main
local Layout = Instance.new("UIListLayout")
Layout.Padding = UDim.new(0, 7)
Layout.SortOrder = Enum.SortOrder.LayoutOrder
Layout.Parent = List
local Padding = Instance.new("UIPadding")
Padding.PaddingBottom = UDim.new(0, 10)
Padding.Parent = List
--========================================================
-- ANIMATIONS
--========================================================
local Animations = {
{"Wave", "128777973"},
{"Point", "128853357"},
{"Laugh", "129423131"},
{"Cheer", "129423030"},
{"Dance 1", "182435998"},
{"Dance 2", "182436842"},
{"Dance 3", "182436935"},
{"Dance 1 Variant", "182491037"},
{"Dance 2 Variant", "182491248"},
{"Dance 3 Variant", "182491368"},
{"Tool Hold", "182393478"},
{"Tool Slash", "129967390"},
{"Tool Lunge", "129967478"},
{"Sit", "178130996"},
{"Sword Swing", "32659699"},
{"Sword Thrust", "32659703"},
{"Two Hand Sword Swing", "32659706"}
}
--========================================================
-- ANIMATION SYSTEM
--========================================================
local CurrentTrack
local function StopAnimation()
if CurrentTrack then
pcall(function()
CurrentTrack:Stop(0.2)
CurrentTrack:Destroy()
end)
CurrentTrack = nil
end
end
local function PlayAnimation(ID)
local Character = Player.Character
if not Character then
return
end
local Humanoid = Character:FindFirstChildOfClass("Humanoid")
if not Humanoid then
return
end
local Animator = Humanoid:FindFirstChildOfClass("Animator")
if not Animator then
Animator = Instance.new("Animator")
Animator.Parent = Humanoid
end
StopAnimation()
local Animation = Instance.new("Animation")
Animation.AnimationId = "rbxassetid://" .. ID
local Success, Track = pcall(function()
return Animator:LoadAnimation(Animation)
end)
Animation:Destroy()
if not Success or not Track then
warn("Could not load animation: " .. ID)
return
end
CurrentTrack = Track
Track.Priority = Enum.AnimationPriority.Action
Track.Looped = true
pcall(function()
Track:Play(0.2)
end)
end
--========================================================
-- CREATE BUTTONS
--========================================================
local AnimationButtons = {}
for Index, Data in ipairs(Animations) do
local Name = Data[1]
local ID = Data[2]
local Button = Instance.new("TextButton")
Button.Name = Name
Button.Size = UDim2.new(1, -5, 0, 50)
Button.BackgroundColor3 = DARK2
Button.BorderSizePixel = 0
Button.Text = ""
Button.AutoButtonColor = false
Button.LayoutOrder = Index
Button.Parent = List
local Corner = Instance.new("UICorner")
Corner.CornerRadius = UDim.new(0, 9)
Corner.Parent = Button
local NameText = Instance.new("TextLabel")
NameText.BackgroundTransparency = 1
NameText.Position = UDim2.fromOffset(15, 5)
NameText.Size = UDim2.new(1, -120, 0, 22)
NameText.Font = Enum.Font.GothamBold
NameText.Text = Name
NameText.TextColor3 = WHITE
NameText.TextSize = 14
NameText.TextXAlignment = Enum.TextXAlignment.Left
NameText.Parent = Button
local IDText = Instance.new("TextLabel")
IDText.BackgroundTransparency = 1
IDText.Position = UDim2.fromOffset(15, 27)
IDText.Size = UDim2.new(1, -120, 0, 16)
IDText.Font = Enum.Font.Gotham
IDText.Text = "ID: " .. ID
IDText.TextColor3 = Color3.fromRGB(135, 140, 150)
IDText.TextSize = 10
IDText.TextXAlignment = Enum.TextXAlignment.Left
IDText.Parent = Button
local PlayText = Instance.new("TextLabel")
PlayText.AnchorPoint = Vector2.new(1, 0.5)
PlayText.Position = UDim2.new(1, -10, 0.5, 0)
PlayText.Size = UDim2.fromOffset(55, 27)
PlayText.BackgroundColor3 = Color3.fromRGB(0, 70, 135)
PlayText.BorderSizePixel = 0
PlayText.Text = "PLAY"
PlayText.TextColor3 = WHITE
PlayText.Font = Enum.Font.GothamBold
PlayText.TextSize = 10
PlayText.Parent = Button
local PlayCorner = Instance.new("UICorner")
PlayCorner.CornerRadius = UDim.new(0, 7)
PlayCorner.Parent = PlayText
Button.MouseButton1Click:Connect(function()
PlayAnimation(ID)
end)
table.insert(AnimationButtons, {
Button = Button,
Name = string.lower(Name)
})
end
--========================================================
-- SEARCH
--========================================================
Search:GetPropertyChangedSignal("Text"):Connect(function()
local Query = string.lower(Search.Text)
for _, Data in ipairs(AnimationButtons) do
if Query == "" then
Data.Button.Visible = true
else
Data.Button.Visible =
string.find(Data.Name, Query, 1, true) ~= nil
end
end
end)
--========================================================
-- STOP
--========================================================
Stop.MouseButton1Click:Connect(function()
StopAnimation()
end)
--========================================================
-- CREDITS PAGE
--========================================================
local CreditsPage = Instance.new("Frame")
CreditsPage.Position = UDim2.fromOffset(15, 78)
CreditsPage.Size = UDim2.new(1, -30, 1, -93)
CreditsPage.BackgroundColor3 = DARK2
CreditsPage.BorderSizePixel = 0
CreditsPage.Visible = false
CreditsPage.Parent = Main
local CreditsCorner2 = Instance.new("UICorner")
CreditsCorner2.CornerRadius = UDim.new(0, 12)
CreditsCorner2.Parent = CreditsPage
local CreditsTitle = Instance.new("TextLabel")
CreditsTitle.BackgroundTransparency = 1
CreditsTitle.Position = UDim2.fromOffset(15, 35)
CreditsTitle.Size = UDim2.new(1, -30, 0, 40)
CreditsTitle.Font = Enum.Font.GothamBold
CreditsTitle.Text = "Credits"
CreditsTitle.TextColor3 = BLUE
CreditsTitle.TextSize = 27
CreditsTitle.Parent = CreditsPage
local CreditsText = Instance.new("TextLabel")
CreditsText.BackgroundTransparency = 1
CreditsText.Position = UDim2.fromOffset(20, 100)
CreditsText.Size = UDim2.new(1, -40, 0, 130)
CreditsText.Font = Enum.Font.Gotham
CreditsText.Text =
"Another Script from @AmongTheYoutuber from YouTube\n\nThanks for Using this script!"
CreditsText.TextColor3 = WHITE
CreditsText.TextSize = 17
CreditsText.TextWrapped = true
CreditsText.TextXAlignment = Enum.TextXAlignment.Center
CreditsText.TextYAlignment = Enum.TextYAlignment.Center
CreditsText.Parent = CreditsPage
local Back = Instance.new("TextButton")
Back.AnchorPoint = Vector2.new(0.5, 1)
Back.Position = UDim2.new(0.5, 0, 1, -20)
Back.Size = UDim2.fromOffset(180, 40)
Back.BackgroundColor3 = Color3.fromRGB(0, 70, 135)
Back.BorderSizePixel = 0
Back.Text = "← ANIMATIONS"
Back.TextColor3 = WHITE
Back.Font = Enum.Font.GothamBold
Back.TextSize = 12
Back.Parent = CreditsPage
local BackCorner = Instance.new("UICorner")
BackCorner.CornerRadius = UDim.new(0, 9)
BackCorner.Parent = Back
CreditsButton.MouseButton1Click:Connect(function()
List.Visible = false
Search.Visible = false
Stop.Visible = false
Destroy.Visible = false
CreditsPage.Visible = true
end)
Back.MouseButton1Click:Connect(function()
List.Visible = true
Search.Visible = true
Stop.Visible = true
Destroy.Visible = true
CreditsPage.Visible = false
end)
--========================================================
-- MINI CIRCLE
--========================================================
local Mini = Instance.new("TextButton")
Mini.AnchorPoint = Vector2.new(1, 1)
Mini.Position = UDim2.new(1, -25, 1, -25)
Mini.Size = UDim2.fromOffset(60, 60)
Mini.BackgroundColor3 = BLACK
Mini.BorderSizePixel = 0
Mini.Text = "AH"
Mini.TextColor3 = WHITE
Mini.Font = Enum.Font.GothamBold
Mini.TextSize = 16
Mini.Visible = false
Mini.Parent = Gui
local MiniCorner = Instance.new("UICorner")
MiniCorner.CornerRadius = UDim.new(1, 0)
MiniCorner.Parent = Mini
local MiniStroke = Instance.new("UIStroke")
MiniStroke.Color = BLUE
MiniStroke.Thickness = 3
MiniStroke.Parent = Mini
--========================================================
-- OPEN / CLOSE
--========================================================
local OpenSize = UDim2.fromOffset(520, 520)
local function OpenGUI()
Mini.Visible = false
Main.Visible = true
Main.Size = UDim2.fromOffset(1, 1)
TweenService:Create(
Main,
TweenInfo.new(0.35, Enum.EasingStyle.Back, Enum.EasingDirection.Out),
{Size = OpenSize}
):Play()
end
local function CloseGUI()
Main.Visible = false
Mini.Visible = true
Mini.Size = UDim2.fromOffset(1, 1)
TweenService:Create(
Mini,
TweenInfo.new(0.35, Enum.EasingStyle.Back, Enum.EasingDirection.Out),
{Size = UDim2.fromOffset(60, 60)}
):Play()
end
Close.MouseButton1Click:Connect(CloseGUI)
Mini.MouseButton1Click:Connect(OpenGUI)
--========================================================
-- DESTROY - DIRECT AND RELIABLE
--========================================================
Destroy.MouseButton1Click:Connect(function()
StopAnimation()
-- Destroy the actual ScreenGui.
-- This also removes the mini circle.
if Gui then
Gui:Destroy()
end
end)
--========================================================
-- DRAGGING
--========================================================
local Dragging = false
local DragStart
local StartPosition
Header.InputBegan:Connect(function(Input)
if Input.UserInputType == Enum.UserInputType.MouseButton1
or Input.UserInputType == Enum.UserInputType.Touch then
Dragging = true
DragStart = Input.Position
StartPosition = Main.Position
end
end)
UserInputService.InputChanged:Connect(function(Input)
if not Dragging then
return
end
if Input.UserInputType ~= Enum.UserInputType.MouseMovement
and Input.UserInputType ~= Enum.UserInputType.Touch then
return
end
local Delta = Input.Position - DragStart
Main.Position = UDim2.new(
StartPosition.X.Scale,
StartPosition.X.Offset + Delta.X,
StartPosition.Y.Scale,
StartPosition.Y.Offset + Delta.Y
)
end)
UserInputService.InputEnded:Connect(function(Input)
if Input.UserInputType == Enum.UserInputType.MouseButton1
or Input.UserInputType == Enum.UserInputType.Touch then
Dragging = false
end
end)
--========================================================
-- INITIAL OPEN
--========================================================
Main.Visible = true
print("Animations Hub V3 loaded successfully!")
![[KEYLESS] Moondiety Script | 17+ supported Games](https://scriptblox.com/images/sb/0-1753093706828.png)


ai slop lol