
KeylessUniversal

--[[ WARNING: Use at your own risk ]]--
local PRIVATE_MODEL_ID = 140005809574272
-- SERVICES
local Players = game:GetService("Players")
local RunService = game:GetService("RunService")
local UserInputService = game:GetService("UserInputService")
local TweenService = game:GetService("TweenService")
local Debris = game:GetService("Debris")
local Workspace = game:GetService("Workspace")
-- PLAYER
local Player = Players.LocalPlayer
local Character = Player.Character or Player.CharacterAdded:Wait()
local Humanoid = Character:WaitForChild("Humanoid")
local RootPart = Character:WaitForChild("HumanoidRootPart")
-- SPEED SETTINGS
local WALK_SPEED = 7.75
local RUN_SPEED = 28
local RunMode = false
local UsingAbility = false
local currentAnim
local lastAnimTime = 0
local speedTween
-- Setup música de fundo
local bgm = Instance.new("Sound")
bgm.SoundId = "rbxassetid://133411773241503"
bgm.Volume = 2
bgm.Looped = true
bgm.PlaybackSpeed = 0.09
bgm.Parent = workspace
bgm:Play()
-- LOAD Animator6D
if not getgenv().Animator6DLoadedPro then
loadstring(game:HttpGet("https://raw.githubusercontent.com/gObl00x/Stuff/refs/heads/main/Animator6D.lua"))()
repeat task.wait() until getgenv().Animator6DLoadedPro
end
-- LOAD MODEL
local model = game:GetObjects("rbxassetid://"..PRIVATE_MODEL_ID)[1]
assert(model, "Falha ao carregar modelo")
-- SCAN ANIMATIONS
local Animations = {}
local function scan(o)
if o:IsA("KeyframeSequence") then
table.insert(Animations, o)
end
for _, c in ipairs(o:GetChildren()) do
scan(c)
end
end
scan(model)
local function GetDuration(kf)
local maxTime = 0
for _, k in ipairs(kf:GetKeyframes()) do
if k.Time > maxTime then
maxTime = k.Time
end
end
return maxTime
end
-- BASIC ANIMS
local IdleKF, WalkKF, RunKF, JumpKF, SitKF
IdleKF = Animations[1]
WalkKF = Animations[1]
for _, a in ipairs(Animations) do
local n = a.Name:lower()
if n:find("idle") then IdleKF = a
elseif n:find("walk") then WalkKF = a
elseif n:find("run") then RunKF = a
elseif n:find("jump") then JumpKF = a
elseif n:find("sit") then SitKF = a
end
end
local function SmoothSpeed(target)
if speedTween then speedTween:Cancel() end
speedTween = TweenService:Create(Humanoid, TweenInfo.new(0.25, Enum.EasingStyle.Quad, Enum.EasingDirection.Out), {WalkSpeed = target})
speedTween:Play()
end
local function ApplySpeed()
SmoothSpeed(RunMode and RUN_SPEED or WALK_SPEED)
end
Humanoid.WalkSpeed = WALK_SPEED
local function Play(kf, looped)
if currentAnim == kf then return end
if tick() - lastAnimTime < 0.1 then return end
lastAnimTime = tick()
getgenv().Animator6DStop()
task.wait(0.03)
getgenv().Animator6D(kf, 1, looped ~= false)
currentAnim = kf
end
-- FUNÇÃO PARA BLOQUEAR MOVIMENTO
local function BlockMovement()
Humanoid.WalkSpeed = 0
end
-- FUNÇÃO PARA LIBERAR MOVIMENTO
local function UnblockMovement()
Humanoid.WalkSpeed = RunMode and RUN_SPEED or WALK_SPEED
end
-- MOVEMENT SYSTEM (pausa quando habilidade ativa)
RunService.RenderStepped:Connect(function()
if UsingAbility then return end
local moving = Humanoid.MoveDirection.Magnitude > 0
if Humanoid.Sit and SitKF then
Play(SitKF, true)
return
end
if Humanoid.FloorMaterial == Enum.Material.Air and JumpKF then
Play(JumpKF, false)
return
end
if moving then
if RunMode and RunKF then
Play(RunKF, true)
else
Play(WalkKF, true)
end
else
Play(IdleKF, true)
end
end)
UserInputService.InputBegan:Connect(function(input, gameProcessed)
if gameProcessed then return end
local key = input.KeyCode
if key == Enum.KeyCode.LeftShift then
RunMode = not RunMode
ApplySpeed()
end
if UsingAbility then return end
-- M1 (mouse button 1)
if input.UserInputType == Enum.UserInputType.MouseButton1 then
UsingAbility = true
-- Tocar animação 11 uma vez e som 136372978658342 + som extra 136372978658342
Play(Animations[11], false)
local soundM1 = Instance.new("Sound", workspace)
soundM1.SoundId = "rbxassetid://136372978658342"
soundM1.Volume = 2
soundM1:Play()
Debris:AddItem(soundM1, 5)
task.wait(GetDuration(Animations[11]))
Play(IdleKF, true)
UsingAbility = false
end
-- Q (prende movimento)
if key == Enum.KeyCode.Q then
UsingAbility = true
BlockMovement()
Play(Animations[12], false)
local soundQ1 = Instance.new("Sound", workspace)
soundQ1.SoundId = "rbxassetid://130562515541162"
soundQ1.Volume = 2
soundQ1:Play()
local soundQ2 = Instance.new("Sound", workspace)
soundQ2.SoundId = "rbxassetid://126083075694948"
soundQ2.Volume = 2
soundQ2:Play()
Debris:AddItem(soundQ1, 5)
Debris:AddItem(soundQ2, 5)
task.wait(GetDuration(Animations[12]))
UnblockMovement()
Play(IdleKF, true)
UsingAbility = false
end
-- R (prende movimento)
if key == Enum.KeyCode.R then
UsingAbility = true
BlockMovement()
Play(Animations[13], false)
local soundR1 = Instance.new("Sound", workspace)
soundR1.SoundId = "rbxassetid://88445378869172"
soundR1.Volume = 2
soundR1:Play()
local soundR2 = Instance.new("Sound", workspace)
soundR2.SoundId = "rbxassetid://81547863237038"
soundR2.Volume = 2
soundR2:Play()
Debris:AddItem(soundR1, 5)
Debris:AddItem(soundR2, 5)
task.wait(GetDuration(Animations[13]))
UnblockMovement()
Play(IdleKF, true)
UsingAbility = false
end
-- Z (prende movimento)
if key == Enum.KeyCode.Z then
UsingAbility = true
BlockMovement()
Play(Animations[9], false)
local soundZ1 = Instance.new("Sound", workspace)
soundZ1.SoundId = "rbxassetid://104179096763149"
soundZ1.Volume = 2
soundZ1:Play()
local soundZ2 = Instance.new("Sound", workspace)
soundZ2.SoundId = "rbxassetid://134465374070275"
soundZ2.Volume = 2
soundZ2:Play()
Debris:AddItem(soundZ1, 5)
Debris:AddItem(soundZ2, 5)
task.wait(GetDuration(Animations[9]))
UnblockMovement()
Play(IdleKF, true)
UsingAbility = false
end
-- 1 (prende movimento)
if key == Enum.KeyCode.One then
UsingAbility = true
BlockMovement()
Play(Animations[4], false)
local sound1 = Instance.new("Sound", workspace)
sound1.SoundId = "rbxassetid://82347871291422"
sound1.Volume = 2
sound1:Play()
Debris:AddItem(sound1, 5)
task.wait(GetDuration(Animations[4]))
Play(Animations[5], true)
task.wait(3)
Play(Animations[6], false)
task.wait(GetDuration(Animations[6]))
UnblockMovement()
Play(IdleKF, true)
UsingAbility = false
end
-- 2 (não prende movimento)
if key == Enum.KeyCode.Two then
UsingAbility = true
Play(Animations[7], false)
local sound2 = Instance.new("Sound", workspace)
sound2.SoundId = "rbxassetid://117591060229396"
sound2.Volume = 2
sound2:Play()
Debris:AddItem(sound2, 5)
task.wait(GetDuration(Animations[7]))
Play(IdleKF, true)
UsingAbility = false
end
-- 3 (pode ser cancelada se mover)
if key == Enum.KeyCode.Three then
UsingAbility = true
Play(Animations[18], false)
local canCancel = true
task.delay(0.1, function()
canCancel = false
end)
while true do
task.wait(0.1)
if Humanoid.MoveDirection.Magnitude > 0 and not canCancel then
break
end
end
Play(IdleKF, true)
UsingAbility = false
end
-- E (dash automático)
if key == Enum.KeyCode.E then
UsingAbility = true
BlockMovement() -- trava movimento na primeira animação
Play(Animations[20], false)
local dashSound = Instance.new("Sound", workspace)
dashSound.SoundId = "rbxassetid://137599783866468"
dashSound.Volume = 2
dashSound:Play()
Debris:AddItem(dashSound, 5)
task.wait(GetDuration(Animations[20])) -- espera primeira animação acabar
UnblockMovement() -- libera movimento para o dash
-- Dash automático pra frente
local dashTime = 1.34
local dashSpeed = 90
local startTime = tick()
Play(Animations[21], true) -- animação loop dash
local connection
connection = RunService.Heartbeat:Connect(function(dt)
local elapsed = tick() - startTime
if elapsed >= dashTime then
connection:Disconnect()
-- Exemplo de detecção de acerto (ajuste conforme seu jogo)
local hitSomeone = false -- substitua pela sua lógica real de hit
if hitSomeone then
Play(Animations[16], false)
local hitSound = Instance.new("Sound", workspace)
hitSound.SoundId = "rbxassetid://136678976484766"
hitSound.Volume = 2
hitSound:Play()
Debris:AddItem(hitSound, 5)
task.wait(GetDuration(Animations[16]))
else
Play(Animations[17], false)
local missSound = Instance.new("Sound", workspace)
missSound.SoundId = "rbxassetid://111130120943737"
missSound.Volume = 2
missSound:Play()
Debris:AddItem(missSound, 5)
task.wait(GetDuration(Animations[17]))
end
Play(IdleKF, true)
UsingAbility = false
else
-- Mover personagem pra frente enquanto dasha
RootPart.CFrame = RootPart.CFrame * CFrame.new(0, 0, -dashSpeed * dt)
end
end)
end
end)
local StarterGui = game:GetService("StarterGui")
StarterGui:SetCore("SendNotification", {
Title = "MADE BY MR EYES RAGHH",
Text = "",
Duration = 5,
Icon = "rbxassetid://101297422645108"
})
![[KEYLESS] Moondiety Script | 17+ supported Games](https://scriptblox.com/images/sb/0-1753093706828.png)


AI Cooking
is it fe?
@XenoxX no you need reanimate