Animation visible on the server but not the client?

I have this basic train door animation which weridly happens on the server but not on the client which makes now sense

Server:

Client:

Script:

local function ControlDoor(State)

	local function SetInterlock(material)
		for _, interlockLight in InterlockLights do
			interlockLight.Material = material
		end
	end
	
	if State == true then
		OpenAnim:AdjustSpeed(1)
		OpenAnim:Play()
	else
		OpenAnim:AdjustSpeed(-1)
	end

	OpenAnim:GetMarkerReachedSignal("DoorIdle"):Connect(function()
		OpenAnim:AdjustSpeed(0)
	end)
	
	OpenAnim:GetMarkerReachedSignal("Open"):Connect(function()
		if DoorFolder.Door:GetAttribute("IsOpen") == true then
			SetInterlock("SmoothPlastic")
			DoorFolder.Door:SetAttribute("IsOpen", false)
		else
			SetInterlock("Neon")
			DoorFolder.Door:SetAttribute("IsOpen", true)
		end
	end)
end


ProximityPrompt.Triggered:Connect(function(player)
	if DoorFolder.Door:GetAttribute("IsOpen") == false then
		ControlDoor(true)
		ProximityPrompt.Enabled = false
		task.wait(5)
		ProximityPrompt.ActionText = "Open Door"
		ProximityPrompt.Enabled = true
	else
		ControlDoor(false)
		ProximityPrompt.Enabled = false
		task.wait(5)
		ProximityPrompt.ActionText = "Close Door"
		ProximityPrompt.Enabled = true
	end
end)

Any sort of help is appreciated