From experience I can tell you that if a cheque is not honoured you can sue the person through the courts, depending on how much it is, to which court - see a county court website. By giving you the cheque they are admitting that they owe you the money. If an individual provides a cheque that is not honoured this is fraudulent. Obviously you do not know whether this person is telling the truth, in any event it would not be hard to pay you in cash if they honestly have the money to pay you. Keep a copy of the cheque and tell the person that if they do not pay in full within 7 days you will issue proceedings in court. This should be done in writing and always keep a copy of any correspondence. If the amount can be claimed in a small claims court you can deal with this yourself at very little cost and also claim interest on the money owed, if you want to.
Obviously this would mean that this person may not talk to you again socially!!