Plural-examining something in a transparent closed container: "The container isn't open"

I’m using a “plural-examining” action to allow the player to examine certain groups of things. This action is adapted from the Left Hand of Autumn example in the manual. But if the player is trying to plural-examine something other than the specific groups I’ve accounted for, I want the response to say, “Try examining one thing at a time” instead.

In the example below, it seems like if the player types “x all,” the response is not only “Try examining one thing at a time,” but also “The aquarium isn’t open.” I don’t know why it’s printing “The aquarium isn’t open,” or how to keep it from doing that.

Lab is a room.

An aquarium is a transparent container in Lab. The aquarium is openable and closed.

A fish is in the aquarium.


Understand "examine [things]" or "look [things]" or "look at [things]" as plural-examining. Plural-examining is an action applying to one thing.

Group-description-complete is a truth state that varies.

Check plural-examining when group-description-complete is true:
	stop the action.

Carry out plural-examining:
	let L be the list of plural-matched things;
	if the number of entries in L is 0, try examining the noun instead;
	if the number of entries in L is 1, try examining entry 1 of L instead;
	plural-describe L;
	now group-description-complete is true;

Before reading a command:
	now group-description-complete is false.

The silently announce items from multiple object lists rule is listed instead of the announce items from multiple object lists rule in the action-processing rules.

This is the silently announce items from multiple object lists rule:
	unless plural-examining:
		if the current item from the multiple object list is not nothing, say "[current item from the multiple object list]: [run paragraph on]".

Definition: a thing is plural-matched if it is listed in the multiple object list.

To plural-describe (L - a list of objects):
	[Other stuff goes here, which I am leaving out for this example]
	Say "Try examining one thing at a time.";

Test me with "x fish / x all".

It seems like Inform has a few built-in responses that follow this pattern, one of them being

parser nothing error internal rule response (E): "[The noun] [aren't] open."

So maybe it’s that one, but if so, I don’t know what causes that response.

If an action applies to “one thing”, that actually means one touchable thing. So the parser complains that you can’t touch the fish.

If you don’t want to care about touchability, you have to say “one visible thing”.

1 Like

That fixed it! Thanks!