* they are never actually dropped at any location, but might
* be here inside the bottle or urn or as a feature of the
* location. */
- if (!HERE(obj))
- goto L5100;
- L5010:
- if (WD2 > 0)
- return(2800);
- if (verb != 0)
- goto L4090;
- SETPRM(1,WD1,WD1X);
- RSPEAK(255);
- return(2600);
-
- L5100:
- if (obj == GRATE) {
+ if (HERE(obj))
+ /* FALL THROUGH */;
+ else if (obj == GRATE) {
if (game.loc == 1 || game.loc == 4 || game.loc == 7)
obj=DPRSSN;
if (game.loc > 9 && game.loc < 15)
if (obj != GRATE)
return(8);
}
-
- if (obj == DWARF && ATDWRF(game.loc) > 0)
- goto L5010;
- if ((LIQ(0) == obj && HERE(BOTTLE)) || obj == LIQLOC(game.loc))
- goto L5010;
- if (obj == OIL && HERE(URN) && game.prop[URN] != 0) {
+ else if (obj == DWARF && ATDWRF(game.loc) > 0)
+ /* FALL THROUGH */;
+ else if ((LIQ(0) == obj && HERE(BOTTLE)) || obj == LIQLOC(game.loc))
+ /* FALL THROUGH */;
+ else if (obj == OIL && HERE(URN) && game.prop[URN] != 0) {
obj=URN;
- goto L5010;
+ /* FALL THROUGH */;
}
- if (obj == PLANT && AT(PLANT2) && game.prop[PLANT2] != 0) {
+ else if (obj == PLANT && AT(PLANT2) && game.prop[PLANT2] != 0) {
obj=PLANT2;
- goto L5010;
+ /* FALL THROUGH */;
}
- if (obj == KNIFE && game.knfloc == game.loc) {
+ else if (obj == KNIFE && game.knfloc == game.loc) {
game.knfloc= -1;
SPK=116;
return(2011);
}
- if (obj == ROD && HERE(ROD2)) {
+ else if (obj == ROD && HERE(ROD2)) {
obj=ROD2;
- goto L5010;
+ /* FALL THROUGH */;
+ }
+ else if ((verb == FIND || verb == INVENT) && WD2 <= 0)
+ /* FALL THROUGH */;
+ else {
+ SETPRM(1,WD1,WD1X);
+ RSPEAK(256);
+ return(2012);
}
- if ((verb == FIND || verb == INVENT) && WD2 <= 0)
- goto L5010;
+ if (WD2 > 0)
+ return(2800);
+ if (verb != 0)
+ goto L4090;
SETPRM(1,WD1,WD1X);
- RSPEAK(256);
- return(2012);
- default:
+ RSPEAK(255);
+ return(2600);
+ default:
BUG(99);
}
}