Um you could do a few things -
-discuss it with your flatmates and then you all have a word with her.
-tell her you need to feed yourself as well so its not fair that she takes your food all the time.
-tell her she needs to stop blowing her money on stupid things so that she can afford food.
You've just got to be honest, I know she's your friend, but she is taking advantage of you so she's not really a good friend is she?