local npc = workspace:WaitForChild("NPC")
local humanoid = npc:FindFirstChildOfClass("Humanoid")
local hrp = npc:FindFirstChild("HumanoidRootPart")
local chair = workspace:WaitForChild("Chair")
local seat = chair:WaitForChild("Seat")
-- Load Walk Animation
local walkAnim = Instance.new("Animation")
walkAnim.AnimationId = "rbxassetid://133795028154827" -- your walk ID
local walkTrack = humanoid:LoadAnimation(walkAnim)
-- Load Sit Animation
local sitAnim = Instance.new("Animation")
sitAnim.AnimationId = "rbxassetid://133988733594282" -- your sit ID
local sitTrack = humanoid:LoadAnimation(sitAnim)
-- Make sure NPC is NOT anchored so it can animate
npc.PrimaryPart.Anchored = false
-- Walk to seat
walkTrack:Play()
humanoid:MoveTo(seat.Position)
-- Wait until walk ends
humanoid.MoveToFinished:Wait()
walkTrack:Stop()
-- Face the chair
hrp.CFrame = CFrame.new(hrp.Position, seat.Position)
-- Sit animation
sitTrack:Play()
-- ⏱ Optional: Delay before anchoring to freeze pose (after animation started)
task.wait(0.5)
npc.PrimaryPart.Anchored = true
Guys my NPC is moving but the anims are playing and the anim ids are mine yes its a script inside the rig