Suppressing "on [something] is…"

I’m certain this has been asked and answered many times before, but I can’t seem to find it anywhere.

I have a supporter, on which is a thing. This supporter has its own initial appearance in the room description. But I don’t want “On the supporter is a thing” to be printed, if this specific thing is on this supporter.

I thought I could use a rule for writing a paragraph about this thing under certain circumstances, but that activity isn’t invoked for things on supporters rather than in the room directly. Since the supporter isn’t scenery, it also isn’t the infamous describe what’s on scenery supporters in room descriptions rule.

What’s the best way to change this behavior, in the case of a specific thing on a specific supporter?

1 Like

One way would be to use a conditional “For printing a locale paragraph about” the supporter, and then set the locale priority of the specific item on the supporter to 0:

The Museum is a room. "This is an impressive room in a museum."

The pedestal is a supporter in the museum. "There is a pedestal in the middle of the room."

The statuette is on the pedestal.

The player carries a widget.

For printing a locale paragraph about the pedestal when the statuette is on the pedestal:
	set the locale priority of the statuette to 0;
	continue the activity.

Output:

Museum
This is an impressive room in a museum.

There is a pedestal in the middle of the room.

>

If the player puts the widget on the supporter, the widget will be mentioned. And if the player takes the statuette and drops it on the floor, it will be mentioned, too.

5 Likes