A killjoy is a person who spoils all the fun for everybody. You may be a killjoy if everyone’s enjoying their meal at a restaurant and you complain constantly about the terrible service.
The first instance of the word killjoy was recorded in 1776, and its meaning kind of makes sense: a killjoy kills everyone else's joy. There are some other great old-style slang phrases to describe the person who pops your balloon or rains on your parade. The most popular among them are "party pooper," "wet blanket," and "stick in the mud."