Originals
We rely here on the understanding-by-relations rules we've already learned, but there is an additional trick: we want to make sure that if the player types "original" or "actual", this word will not be taken to refer to the thing modeled:
Now our duplication command -- for the sake of simplicity, we'll suppose that in this scenario the player is duplicating objects by magic rather than creating them out of physical materials or supplies:
Now, the challenge is that we want to print the word "actual" before printing the name of an object, but only during disambiguation questions and only when we are not printing the name of the object as part of a model-name! (If we are not careful about the latter point, we will get responses such as "Which do you mean, the model actual deer or the actual deer?" which of course defeats the whole purpose.
The way around this is to remember that activities stack: we're printing the name of the deer while printing the name of a model that involves the deer. So if we set a flag while printing the name of a model, we can control the way the deer's name prints during the transaction. (We could use our …while clause to specify while not printing the name of a model, except that we're already using it for "while asking which do you mean", and these do not stack.) So:
Test me with "duplicate deer / x model deer / x deer model / drop deer / x deer / actual / x deer / model".
You can see a deer and a daisy here.
>(Testing.)
>[1] duplicate deer
You concentrate and manifest a model deer.
>[2] x model deer
You see nothing special about the model deer.
>[3] x deer model
You see nothing special about the model deer.
>[4] drop deer
(the model deer)
Dropped.
>[5] x deer
Which do you mean, the model deer or the actual deer?
>[6] actual
You see nothing special about the deer.
>[7] x deer
Which do you mean, the model deer or the actual deer?
>[8] model
You see nothing special about the model deer.