OP, you have been a saint to this careless, selfish friend of yours. Like another has said, I would eliminate her from your life, as you care more about hers than she does herself. Better to distance yourself now before she's passed on and leaving you feeling a lifetime of guilt.
You can't force her to get mental help unfortunately. You have done what you can. It is up to her to quit her reckless behavior and be an actual friend to you. If she refuses to do that, she is not worth your time and energy.