Ever tried apologising for slapping him? That's something you could do to start with. Then explain how you are unhappy that he lied about not smoking. While you can't force him to stop, remind him how it makes you feel, he should at least not do it in front of you the next time.
What ever happened to talking things out? I don't understand how trying to dance to attract attention from others is a good way of telling someone to stop smoking... Obviously, violence isn't the way to deal with things. If he did this to you, there would be an outrage.
Don't go clubbing if it causes you to behave this way.