I’m still thinking about the parser, and this case keeps coming back to me as a problem:
[code]Test is a room. Bob is a man in Test.
There is a purple plum in Test. There is a purple grape in Test.
First does the player mean doing something with Bob (this is the likely to interact with Bob rule): it is likely.
Quizzing it about is an action applying to two things.
Report quizzing it about: say “You ask [the noun] about [the second noun].”.
Understand “ask [someone] about [something]” as quizzing it about.
Does the player mean quizzing Bob about the plum (this is the very likely to ask Bob about the plum rule): It is very likely.
First does the player mean: say “[line break][bracket]DTPM [the current action]?[close bracket]”.
test me with “rules/ask bob about purple”[/code]
This is the sort of situation that can sometimes be dealt with using rule order. But it seems to me there ought to be a way to test whether a DPM rule has become irrelevant - if we knew that we were looking for a second noun, we could have the rule decline to make a decision when it only concerns the noun. I seem to recall that the parser has a variable that tells whether we’re parsing the noun or the second noun, but I can’t remember what it is. Would that be a useful way to handle the rules? Is there a better way?