British having dined in bad temper (4)
I believe the answer is:
bate
'bad temper' is the definition.
(old-fashioned slang for a bad mood)
'british having dined' is the wordplay.
'british' becomes 'b' (abbreviation e.g. in 'BBC').
'having' says to put letters next to each other.
'dined' becomes 'ate' (I've seen this in another clue).
'b'+'ate'='BATE'
'in' is the link.
(Other definitions for bate that I've seen before include "Lessen" , "Rage; beat the wings" , "contention for old poet" , "decrease" .)