That's how Spanish is sometimes. Things "have" characteristics in Spanish instead of "being" them in English. For example, in Spanish, you are not 30 years old, you have 30 years. I suppose this sentence could be translated as an innkeeper telling a guest that "we have heat," but without context, it is best to assume the normal Spanish configuration.
arjunsood2003: "Tener calor" (to be hot) is a frequently used Spanish idiom. There are hundreds of others that use "tener" and most are not translated literally. It would be worthwhile for any Spanish student to become familiar with at least the most common ones. Here are 2 good links to get you started. The 1st covers most of the common idioms and explains how to form them. The 2nd has several that I've never seen before, a few that gave me a good laugh.
Spanish does this a lot. You can often use both.
You can have heat, or be hot. Tengo calor o estoy caliente (though I would recommend never using this one except in the bedroom, or if someone in Latin America is angry)
You can have hunger, or be hungry. Tengo hambre, o estoy hambriento
You can have thirst, or be thirsty. Tengo sed, o estoy sediento.
To be sleepy is to have sleep. Tengo sueño.
You aren't x years old, you have x years. Tengo 20. I am 20.
It's not that it means that but rather certain things are said this way in Spanish. Calor means "heat/warmth" (caliente is the word for something that has calor)
"Tengo hambre" means "I have hunger" and "Tengo veinticino años" means "I have 25 years" (i.e. I've lived through that many).
you have to keep an eye there. if you "have" heat, usted tiene calor means you feel warm, you're warm
if you are hot... well, you're horny. Estar caliente may mean that. Of course a learner is not a problem, and it's a very common mistake i've heard... probably not if you travel to Southern Argentina though.
It also may mean you that you have fever. If you say "I feel feverish" and I go with the inner of my wrist and touch yours, I might say Estas caliente, this time in a totally literal sense.
A couple of side notes: the infinitive is "Tener" and it also means "to hold" an easy one: tenedor (fork), literally: holder
You may hear, regarding age "¿De qué año eres?" which may sound something you may ask a bottle of wine Which year are you from?
it's very odd, but some people use it, beats me why.
Why wouldn't this be "Hacemos calor"? With weather and all that you say "Hace calor" if it is hot out. Do you not say that here because you are referring to people and not things or would "Hacemos calor" also be correct? Also, if something, say a pan or dish or something like that, is very hot would you say that it "tiene calor" or that it "hace calor"?
For people, you always use 'tener': 'Tengo calor', which is literally, 'I have heat', but in English we say 'I am hot'. 'Hacer' is used for the weather, 'Hace calor/frío/viento', 'it makes heat, etc', but we say 'It's hot, etc.' With things like plates or pans you can use 'caliente': 'está caliente'.