Carry out pouring_in_anything:
let rando_container be random visible container that is not a portal and that does not contain the noun;
try inserting noun into rando_container;
The let rando_container line throws “I didn’t understand” errors. However, these two lines work okay:
let rando_container be random visible container that is not a portal;
let rando_container be random visible container that does not contain the noun;
I think I’ve tried every possible variation with parenthesis and placement of “that”, but no dice.
You can define most of these conditions as single-word adjectives:
Definition: a thing is non-portaly if it is not a portal.
Definition: a thing is non-noun-containing if it does not contain the noun.
... let rando_container be random visible non-portaly non-noun-containing container;
I’ll note that you’d be fine with one relative phrase, i.e., either of
let rando_container be random visible non-portaly container
that does not contain the noun; [or]
let rando_container be random visible non-noun-containing container
that is not a portal;