I've stayed at the Viva Maya about 5 or 6 times, loved it for different reasons. BUT, saying that, for about the same money, I would choose any of the Riu's (meaning Yucatan or Playacar) for your next trip. Stayed also several times at the Allegro Playacar but think that one is overpriced. If the Iberostars are in your price range, you cannot go wrong there either. Hell, just give me a place to go with a roof & brewski & I am there !!
Last year we tried the Reef Coco Beach, loved the proximity to town. Food was only so-so. Great food by the pool area (mostly where we ate) and it does have different management now. Great thing was that I was able to walk right into the water, find a captain in a boat & take off fishing for a day.