
KeylessUniversal

-- Roblox LocalScript - NO JUMP + FIXED VISUALIZATION (mild zoom + vignette pulse)
-- Jump anim REMOVED + JUMPING DISABLED (JumpPower = 0, JumpHeight = 0)
local player = game.Players.LocalPlayer
local character = player.Character or player.CharacterAdded:Wait()
local humanoid = character:WaitForChild("Humanoid")
local animateScript = character:WaitForChild("Animate")
local camera = workspace.CurrentCamera
-- DISABLE JUMPING COMPLETELY
humanoid.JumpPower = 0
humanoid.JumpHeight = 0
humanoid.PlatformStand = false -- Prevent any jump exploits
-- Disable default Animate
animateScript.Disabled = true
-- Animation IDs (NO JUMP ANIM)
local loadAnimId = "rbxassetid://107173848541514"
local idleAnimId = "rbxassetid://121480327509940"
local walkAnimId = "rbxassetid://99498309796580"
local runAnimId = "rbxassetid://133284420439423"
local emote1Id = "rbxassetid://87033513223989"
local emote2Id = "rbxassetid://111993447655346"
local emote1SongId = "rbxassetid://81127387662817"
local emote2SongId = "rbxassetid://114323109086001"
-- Speeds
local walkSpeed = 7
local runSpeed = 25
humanoid.WalkSpeed = runSpeed
-- Create animations
local function createAnim(id, name, priority, looped)
local anim = Instance.new("Animation")
anim.AnimationId = id
anim.Name = name
local track = humanoid:LoadAnimation(anim)
track.Priority = priority or Enum.AnimationPriority.Action
track.Looped = looped or false
return track
end
-- Movement tracks (NO JUMP)
local loadTrack = createAnim(loadAnimId, "LoadAnim", Enum.AnimationPriority.Core, false)
local idleTrack = createAnim(idleAnimId, "Idle", Enum.AnimationPriority.Core, true)
local walkTrack = createAnim(walkAnimId, "Walk", Enum.AnimationPriority.Movement, true)
local runTrack = createAnim(runAnimId, "Run", Enum.AnimationPriority.Movement, true)
-- Emote tracks (looped)
local emote1Track = createAnim(emote1Id, "Emote1", Enum.AnimationPriority.Action, true)
local emote2Track = createAnim(emote2Id, "Emote2", Enum.AnimationPriority.Action, true)
-- Sound & emote management
local currentSound = nil
local currentEmoteTrack = nil
local function playEmoteWithSound(emoteTrack, soundId)
-- Stop previous
if currentEmoteTrack then currentEmoteTrack:Stop() end
if currentSound then currentSound:Stop() currentSound:Destroy() end
-- Start emote
emoteTrack:Play()
currentEmoteTrack = emoteTrack
-- Start sound (looped)
local sound = Instance.new("Sound")
sound.SoundId = soundId
sound.Volume = 0.5
sound.Looped = true
sound.Parent = character:FindFirstChild("HumanoidRootPart") or character
sound:Play()
currentSound = sound
end
local function stopEmoteAndSound()
if currentEmoteTrack then currentEmoteTrack:Stop() currentEmoteTrack = nil end
if currentSound then currentSound:Stop() currentSound:Destroy() currentSound = nil end
end
-- Movement detection (NO JUMP HANDLING)
humanoid.Running:Connect(function(speed)
local isMoving = speed > 0.1
-- Movement anims
if isMoving then
idleTrack:Stop()
if humanoid.WalkSpeed == walkSpeed then
walkTrack:Play() runTrack:Stop()
else
runTrack:Play() walkTrack:Stop()
end
-- STOP EMOTE ON MOVE
if currentEmoteTrack then stopEmoteAndSound() end
else
walkTrack:Stop() runTrack:Stop()
if not currentEmoteTrack then idleTrack:Play() end
end
end)
-- NO JUMP EVENT CONNECTED
-- Walk/Run toggle
local uis = game:GetService("UserInputService")
uis.InputBegan:Connect(function(input)
if input.KeyCode == Enum.KeyCode.LeftShift then humanoid.WalkSpeed = walkSpeed end
end)
uis.InputEnded:Connect(function(input)
if input.KeyCode == Enum.KeyCode.LeftShift then humanoid.WalkSpeed = runSpeed end
end)
-- 🎵 SONG VISUALIZATION: MILD ZOOM + VIGNETTE PULSE
local TweenService = game:GetService("TweenService")
local RunService = game:GetService("RunService")
local originalFOV = camera.FieldOfView
local BASE_FOV = 70
local MAX_ZOOM_IN = 10 -- Mild: 70 → 60 FOV
local zoomSensitivity = 8
-- VIGNETTE EFFECT
local screenGui = Instance.new("ScreenGui")
screenGui.IgnoreGuiInset = true
screenGui.Parent = player:WaitForChild("PlayerGui")
local vignette = Instance.new("Frame")
vignette.Size = UDim2.new(2, 0, 2, 0)
vignette.Position = UDim2.new(-0.5, 0, -0.5, 0)
vignette.BackgroundColor3 = Color3.new(0, 0, 0)
vignette.BackgroundTransparency = 1
vignette.ZIndex = -1
vignette.Parent = screenGui
-- Smooth tweens
local currentZoomTween = nil
local function updateZoom(targetFOV)
if currentZoomTween then currentZoomTween:Cancel() end
currentZoomTween = TweenService:Create(camera,
TweenInfo.new(0.12, Enum.EasingStyle.Quart, Enum.EasingDirection.Out),
{FieldOfView = targetFOV}
)
currentZoomTween:Play()
end
local currentVignTween = nil
local function updateVignette(targetTrans)
if currentVignTween then currentVignTween:Cancel() end
currentVignTween = TweenService:Create(vignette,
TweenInfo.new(0.1, Enum.EasingStyle.Quart, Enum.EasingDirection.Out),
{BackgroundTransparency = targetTrans}
)
currentVignTween:Play()
end
-- SONG VISUALIZATION LOOP
local heartbeatConn = RunService.Heartbeat:Connect(function()
if currentSound and currentSound.Playing and currentSound.TimeLength > 0 then
local playbackPos = currentSound.TimePosition / currentSound.TimeLength
local volumeEffect = currentSound.Volume * 2
local dynamicZoom = volumeEffect * zoomSensitivity * math.sin(playbackPos * math.pi * 2)
local targetFOV = math.max(BASE_FOV - MAX_ZOOM_IN, BASE_FOV - (dynamicZoom * 3))
updateZoom(targetFOV)
local bassPulse = 0.7 + (volumeEffect * 0.3 * math.abs(math.sin(playbackPos * math.pi * 4)))
updateVignette(bassPulse)
else
updateZoom(originalFOV)
updateVignette(1)
end
end)
-- GUI
local frame = Instance.new("Frame")
frame.Size = UDim2.new(0, 220, 0, 170)
frame.Position = UDim2.new(0, 10, 0.5, -85)
frame.BackgroundColor3 = Color3.new(0, 0, 0)
frame.BackgroundTransparency = 0.3
frame.Parent = screenGui
local title = Instance.new("TextLabel")
title.Text = "Emotes (LOOP → Move to Stop) 🚫JUMP"
title.Size = UDim2.new(1, 0, 0, 35)
title.BackgroundTransparency = 1
title.TextColor3 = Color3.new(1,1,1)
title.TextScaled = true
title.Font = Enum.Font.GothamBold
title.Parent = frame
local btn1 = Instance.new("TextButton")
btn1.Text = "🎵 Emote 1 + VISUALS"
btn1.Size = UDim2.new(1, -20, 0, 45)
btn1.Position = UDim2.new(0, 10, 0, 45)
btn1.BackgroundColor3 = Color3.new(0.2, 0.8, 0.2)
btn1.TextColor3 = Color3.new(1,1,1)
btn1.TextScaled = true
btn1.Font = Enum.Font.Gotham
btn1.Parent = frame
local btn2 = Instance.new("TextButton")
btn2.Text = "🎵 Emote 2 + VISUALS"
btn2.Size = UDim2.new(1, -20, 0, 45)
btn2.Position = UDim2.new(0, 10, 0, 100)
btn2.BackgroundColor3 = Color3.new(0.2, 0.2, 0.8)
btn2.TextColor3 = Color3.new(1,1,1)
btn2.TextScaled = true
btn2.Font = Enum.Font.Gotham
btn2.Parent = frame
btn1.MouseButton1Click:Connect(function() playEmoteWithSound(emote1Track, emote1SongId) end)
btn2.MouseButton1Click:Connect(function() playEmoteWithSound(emote2Track, emote2SongId) end)
-- Initial load
loadTrack:Play()
loadTrack.Stopped:Wait()
idleTrack:Play()
-- Respawn handler (RE-APPLY NO JUMP)
player.CharacterAdded:Connect(function(newChar)
wait(1)
character = newChar
humanoid = character:WaitForChild("Humanoid")
animateScript = character:WaitForChild("Animate")
animateScript.Disabled = true
-- DISABLE JUMP ON RESPAWN
humanoid.JumpPower = 0
humanoid.JumpHeight = 0
end)
print("✨ NO JUMP + SONG VISUALS LOADED! (JumpPower=0, JumpHeight=0)")No comments yet for this script.



