--==================== Steve============-- local Players = game:GetService("Players") local RunService = game:GetService("RunService") local player =Players.LocalPlayer --==================== you can change the id ====================-- local IDLE_ANIM = "rbxassetid://96518514398708" local WALK_ANIM = "rbxassetid://10921244891" local CROUCH_ANIM = "rbxassetid://83200626993248" local SWING_ANIM = "rbxassetid://110361063508944" local DIE_ANIM = "rbxassetid://140190312220540" local char, humanoid, animator local idle, walk, crouch, swing, die local crouching = false local swinging = false local dead = false local gui = Instance.new("ScreenGui") gui.Name = "ActionGui" gui.ResetOnSpawn = false gui.Parent = player.PlayerGui local function makeButton(text, pos) local b = Instance.new("TextButton") b.Size = UDim2.fromScale(0.25, 0.08) b.Position = pos b.Text = text b.TextScaled = true b.BackgroundColor3 = Color3.fromRGB(30,30,30) b.TextColor3 = Color3.new(1,1,1) b.Parent = gui return b end local crouchBtn = makeButton("crouch", UDim2.fromScale(0.1, 0.8)) local swingBtn = makeButton("swing", UDim2.fromScale(0.65, 0.8)) local function setButtonsEnabled(enabled) crouchBtn.Active = enabled crouchBtn.AutoButtonColor = enabled swingBtn.Active = enabled swingBtn.AutoButtonColor = enabled crouchBtn.BackgroundTransparency = enabled and 0 or 0.5 swingBtn.BackgroundTransparency = enabled and 0 or 0.5 end local function loadAnim(id) local anim = Instance.new("Animation") anim.AnimationId = id return animator:LoadAnimation(anim) end local function setupCharacter(character) char = character humanoid = char:WaitForChild("Humanoid") animator = humanoid:WaitForChild("Animator") -- Disable default Roblox animations local animate = char:FindFirstChild("Animate") if animate then animate.Disabled = true end idle = loadAnim(IDLE_ANIM) walk = loadAnim(WALK_ANIM) crouch = loadAnim(CROUCH_ANIM) swing = loadAnim(SWING_ANIM) die = loadAnim(DIE_ANIM) idle.Looped = true walk.Looped = true die.Looped = false crouching = false swinging = false dead = false humanoid.WalkSpeed = 16 setButtonsEnabled(true) idle:Play() -- Death humanoid.Died:Connect(function() dead = true setButtonsEnabled(false) idle:Stop() walk:Stop() crouch:Stop() swing:Stop() die:Play() end) end RunService.RenderStepped:Connect(function() if not humanoid or dead or crouching then return end if humanoid.MoveDirection.Magnitude > 0 then if not walk.IsPlaying then idle:Stop() walk:Play() end else if not idle.IsPlaying then walk:Stop() idle:Play() end end end) crouchBtn.MouseButton1Click:Connect(function() if dead or not humanoid then return end crouching = not crouching if crouching then idle:Stop() walk:Stop() crouch:Play() humanoid.WalkSpeed = 8 else crouch:Stop() humanoid.WalkSpeed = 16 idle:Play() end end) swingBtn.MouseButton1Click:Connect(function() if dead or not humanoid then return end swinging = not swinging if swinging then swing:Play() else swing:Stop() end end) --==================== INIT ====================-- if player.Character then setupCharacter(player.Character) end player.CharacterAdded:Connect(setupCharacter)