yeah, it's usually the right attitude, but unfortunately, no matter how much a person or a character wants to improve or do something good, their unlikely to do so unless something really drastically pushes them in that direction. Basically, it has to be a mindset shift, motivation tends to only last for a very short amount of time.
Ex: My female lead in "Damsel in the Red Dress" is trying to overcome her social anxiety and depression and live life. Certainly, she has some days where she feels better than others, and friends encouraging her to do so, but the only thing that can make her stick to this is her change in mindset deciding that she wants to do this for herself even if the people who are cheering her on pass away, or are no longer her friends etc.
Also replacing destructive habits with positive habits. She used to drink too much - now when she's depressed she paints or goes for walks. Cleaning up her environment also helps her to feel better and take better care of herself, because she wants to feel nicer, and knows that's a step. Things like that.
I hope this will help. Basically, what will help your OC overcome destructive habits is something causing a change in their mindset.
If you view not drinking too much and things like that as punishing yourself, then you won't be able to stick to it easily. If you view it as loving and taking care of yourself, you're more likely to find success.