If a person had the X traits would it not be safe to assume that their friends also had these traits and found X's behaviour acceptable, and also are they really friends. I cant imagine anyone who was Y tolerating a friend who was spiteful, hateful or cheating (I won't include lazy or unreliable as I know many fine people who have these traits).
People grow and expand and as a friend of many I appreciate and applaud any who try to better themselves as they do me. In my own struggles (alcohol related) I have changed my lifestyle, values and my focus and my friends have empowered me and encouraged me to do this. If I were to sit in their company and they were to try and entice me to drink (this has never happened) I would have to reconsider the basis on which these friendships was based.
Hope that makes sense.