{
int foobar = abs(game.foobar);
+ /* Only FEE can start a magic-word sequence. */
+ if ((foobar == WORD_EMPTY) && (id == FIE || id == FOE || id == FOO || id == FUM)) {
+ rspeak(NOTHING_HAPPENS);
+ return GO_CLEAROBJ;
+ }
+
if ((foobar == WORD_EMPTY && id == FEE) ||
(foobar == FEE && id == FIE) ||
(foobar == FIE && id == FOE) ||
- (foobar == FOE && id == FOO) ||
- (foobar == FOE && id == FUM)) {
+ (foobar == FOE && id == FOO)) {
game.foobar = id;
- if ((id != FOO) && (id != FUM)) {
+ if (id != FOO) {
rspeak(OK_MAN);
return GO_CLEAROBJ;
}
(TOTING(EGGS) && game.loc == objects[EGGS].plac)) {
rspeak(NOTHING_HAPPENS);
return GO_CLEAROBJ;
- } else if (id == FUM) {
- goto fum;
} else {
/* Bring back troll if we steal the eggs back from him before
* crossing. */
return GO_CLEAROBJ;
}
} else {
-fum:
+ /* Magic-word sequebce was started but is incorrect */
rspeak(START_OVER);
game.foobar = WORD_EMPTY;
return GO_CLEAROBJ;