I7 - Different descriptions of people?

My game starts in one room. Specifically, a room with a couch. A character - let’s call him ‘Y’ - is relaxing on the couch, so I put in this code:

A man called Y is here. “Y, my mentor, is relaxing on the couch.” The description of Y is “Despite his race, he’s well respected as a lawyer. The only thing that doesn’t fit is the long blond hair. Actually, I’ve always had this weird feeling he’d fit right in at a disco club…”

Then, soon afterward, I move him to another room. The problem I’m having is that, with him in the different room (that, as it so happens, does not have a couch), the description it outputs is still “Y, my mentor, is relaxing on the couch.”

I know there has to be a way to fix this that I’m missing, but I’ve been searching the documentation for ages and can’t find it. Can anyone tell me how to fix this?

You can use ‘if’ conditionals within descriptions, like this:

"Couch"

The Office is a room. "North is the Library."

A man called Y is here. "[If location is the Office]Y, my mentor, is relaxing on the couch.[else]Y, my mentor, is here." The description of Y is "Despite his race, he's well respected as a lawyer. The only thing that doesn't fit is the long blond hair. Actually, I've always had this weird feeling he'd fit right in at a disco club..."

The Library is a room. It is north of the Office. "South is the Office."

After going north from the Office: move Y to the Library; continue the action. 

test me with "n"

Look up 5.5 in the documentation, ‘Text with variations’.

I’d go so far as to say:

A man called Y is here. "[If Y is enclosed by the couch]Y, my mentor, is relaxing on the couch.[else]Y, my mentor, is here."

Since otherwise you’ll also get awkward results if you examine Y, examine the couch, move one of these without the other, etc.

Ah, thanks a lot; that was a major problem for me.