I agreed, that the person is not entitled to your cash, as giving should not be compulsive.
Perhaps a web search for a "cheerful giver" will enlighten your heart, or your friend's heart?
A tremendous opportunity was lost in not helping that man in need. Was his true need $40 to pay a bill? Who knows? Not I. I often give to the street beggar, letting them know that I'd be a bit disappointed if they said they needed it for one thing, and turned around and bought booze or drugs with it. I'd hope that they would be honest with me, and tell me if it was for another use. Perhaps a stranger showing compassion and interest, to their well being, will be the trigger for a change in their life. There is always going to be a spiritual message that I also give, which to many of them is the far greater need. Even if the rare person admits it's for booze, I'll still give them the money, and tell them that I truly hope that they think about what I've said, with every sip of that bottle. I hope that I've at least reached a few people,
I am that cheerful giver. I made it this far in life, turning 65 in a couple of weeks, with NEVER being threatened with bodily harm or theft, by another person, in my entire life. I must be doing something right, no?
I consider others superior to me, giving towards their needs, but also looking out for my own. (that is a rough quote from a certain book filled with instructions on how to live a righteous life). I choose selfless rather than selfish. Treating others kindly has gone a long way towards my interactions with those around me. And, I rely on a far superior power than a mere hand gun.
Is that enough answer for your friend?