
Emote Speed Gui V2

Reviewed by QueueSherlockPaid revieweron How review works
Does it work?
No reports yetNo reports yet. Tried it? Be the first to say.
Description
📋 Visão Geral do Script Este script cria uma interface gráfica (GUI) minimalista no Roblox que permite ao jogador controlar e alterar dinamicamente a velocidade de reprodução dos seus emotes e animações de ações, sem afetar os movimentos básicos do personagem (como andar, correr ou pular). ✨ Principais Características 1. 🔄 Sistema de Reinicialização Automática (Reset) Prevenção de sobreposição: Toda vez que o script é executado novamente, ele localiza qualquer versão antiga da interface e a remove. Restauração de velocidade: Antes de deletar a versão anterior, o script chama a função resetAnimSpeed(), que redefine a velocidade de todas as animações tocando no momento de volta ao padrão do jogo (1.0x), garantindo que o personagem não fique "preso" em velocidades alteradas. 2. 🚶 Proteção do Sistema de Movimentação (Locomotion Filter) Filtro inteligente: O script varre o script interno Animate do personagem e mapeia os IDs de animação padrão: idle (parado) walk (andando) run (correndo) jump / fall (pulando / caindo) climb / swim / strafe (escalando / nadando / esquivando) Preservação de física: A velocidade modificada é aplicada apenas em emotes/danças, garantindo que as animações de passos e pulos do personagem continuem naturais e sincronizadas com o movimento. 3. 🎯 Aplicação Automática em Novos Emotes Escuta contínua (AnimationPlayed): Monitora quando uma nova animação começa a tocar no personagem. Ajuste dinâmico: Se você trocar de emote enquanto uma velocidade personalizada estiver definida, a nova dança adotará automaticamente essa mesma velocidade sem que você precise clicar em "Aplicar" novamente. 4. 🎨 Interface Gráfica (GUI) Modernizada Visual Dark/Minimalista: Frame escuro (RGB 28, 28, 28) com cantos arredondados (UICorner) e bordas suaves (UIStroke). Campo de texto inteligente: Aceita apenas números e ponto decimal, filtrando letras e caracteres especiais automaticamente para evitar erros de digitação. Manutenção em Respawn (ResetOnSpawn = false): A interface não desaparece quando seu personagem morre ou renasce no jogo.
Updates
Script edited: Update script
local Players = game:GetService("Players")
local player = Players.LocalPlayer
local playerGui = player:WaitForChild("PlayerGui")
-- Função para restaurar a velocidade padrão (1) das animações tocando no momento
local function resetAnimSpeed()
local character = player.Character
if character then
local humanoid = character:FindFirstChildOfClass("Humanoid")
if humanoid then
local animator = humanoid:FindFirstChildOfClass("Animator")
if animator then
for _, track in pairs(animator:GetPlayingAnimationTracks()) do
track:AdjustSpeed(1)
end
end
end
end
end
-- Se já existir uma versão anterior rodando, restaura a velocidade ao normal e remove a GUI
local guiAntiga = playerGui:FindFirstChild("AnimSpeedGUI")
if guiAntiga then
resetAnimSpeed()
guiAntiga:Destroy()
end
-- Tabela para guardar os IDs das animações de andar, correr, pular e idle
local locomotionIds = {}
local ultimaVelocidade = nil
-- Função para mapear as animações do sistema de movimentação do personagem
local function carregarLocomotionIds(character)
locomotionIds = {}
local animateScript = character:WaitForChild("Animate", 5)
if animateScript then
local pastasMovimento = {"idle", "walk", "run", "jump", "fall", "climb", "swim", "strafe"}
for _, nomePasta in ipairs(pastasMovimento) do
local pasta = animateScript:FindFirstChild(nomePasta)
if pasta then






AI
Muito obrigado por apoiar Flashy eu sou novo no scriptbox e estou distribuindo o meu script adaptado para ser o mais jurídico possível com emotes