Hi!
Weight gain and/or stress can certainly affect the cycle! There are so many hormones involved in the cycle that it is fairly easy to do! Have you had your thyroid checked?
You probably haven't ovulated in a while, when that happens, the lining just continues to build up over time, and eventually gets so thick that it just collpases and starts to flow out very irregularly--prolonged, heavy, clotty, spotty, etc.
A five day course of progesterone would do wonders for your uterus! It would cause that lining to slough completely and restart the cycle. If you have recently lost weight, it may be that your normal cycles will resume on their own. If not, you have a couple of options:
start oral contraceptives, start fertility drugs (if you want babies!) or take progesterone periodically if your natural period doesn't come. Most of my patients choose the progesterone route. For your health, you should have a period at least every three months.
Good luck!
Hope this was helpful!
Dr B