Since the original discussion above isn’t super-clear, here’s a (hopefully) clarified summary:
-
The You can’t use multiple objects with that verb.
message in response to >X PEOPLE is a parser error. It happens because a) the examining action
’s grammar doesn’t allow multiple objects and b) more than one object in scope matches the word “people” from the command.
-
If you want to allow multiple objects to be examined via one command, then extending the grammar as seen in my first response above will solve the issue. The player’s command will be translated into a series of actions, one for each object matching the word “people.”
-
If instead you want for only a single object to be matched to the word “people,” then you need to make sure that the objects are defined in such a way to support this. The important things to know are:
a. The I7 compiler knows that “people” is the plural name of the person
kind, so anything defined as a person
, e.g. Bob is a person.
, will automatically match the word “people” by default. Anything declared as a subkind of person, however, will not, so Alice is a woman. Bob is a man. The cat is an animal.
will by default create three objects that don’t match the word “people.”
b. You can make every subkind of person
to match the word “people,” by adding an Understand...
declaration as seen in my first post above. This will override the default, so Alice
, Bob
and the cat
would all match the word “people” at that point.
The parser’s interpretation of the word “people” can be guided by using conditional Understand...
lines, and it may be necessary to use these to get what you want. Does the player mean...
rules can’t help to get past this issue.
This setup is a definite problem:
Place is a room.
Adam and Barbara are people in Place.
A plural-named person called a crowd is in Place.
In this case, there is no way around the issue. A parser error can’t be avoided, because Adam
, Barbara
and the crowd
all match the word “people,” and the grammar for the examining action
doesn’t allow multiple objects.
This setup may be less of a problem:
Adam is a man in Place.
Barbara is a woman in Place.
A plural-named person called a crowd is in Place.
In this case, the word “people” can only ever refer to the crowd
.
This setup is still a potential problem:
Understand "people" as the plural of person when the player cannot see a plural-named person.
Adam is a man in Place.
Barbara is a woman in Place.
A plural-named person called a crowd is in Place.
Although the word “people” will preferentially apply to the crowd
, if Adam
and Barbara
are around while the crowd
is not then >X PEOPLE will still yield the parser error.
This setup adds a grammar line to allow examining of multiple objects:
Understand "people" as the plural of person when the player cannot see a plural-named person.
Adam is a man in Place.
Barbara is a woman in Place.
A plural-named person called a crowd is in Place.
Understand "examine [things]" as examining.
The word “people” still preferentially applies to the crowd
, but if only Adam
and Barbara
are around then >X PEOPLE examines them both.