- } else if (OBJTXT[command.obj] == 0 || game.prop[command.obj] < 0) {
- rspeak(ACTSPK[command.verb]);
- } else if (command.obj == OYSTER && !game.clshnt) {
- game.clshnt = YES(arbitrary_messages[CLUE_QUERY], arbitrary_messages[WAYOUT_CLUE], arbitrary_messages[OK_MAN]);
+ } else if (command.obj == OYSTER && !game.clshnt && game.closed) {
+ game.clshnt = yes(arbitrary_messages[CLUE_QUERY], arbitrary_messages[WAYOUT_CLUE], arbitrary_messages[OK_MAN]);
+ } else if (objects[command.obj].texts[0] == NULL || game.prop[command.obj] < 0) {
+ rspeak(actspk[command.verb]);