--[[ 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" })