-
-/* Okay, he's dead. Let's get on with it. */
-
-L99: if(game.closng) {
- /* He died during closing time. No resurrection. Tally up a
- * death and exit. */
- RSPEAK(131);
- ++game.numdie;
- score(0);
- } else {
- ++game.numdie;
- if(!YES(cmdin,79+game.numdie*2,80+game.numdie*2,54))
- score(0);
- if(game.numdie == MAXDIE)
- score(0);
- game.place[WATER]=0;
- game.place[OIL]=0;
- if(TOTING(LAMP))
- game.prop[LAMP]=0;
- for (J=1; J<=NOBJECTS; J++) {
- I=NOBJECTS + 1 - J;
- if(TOTING(I)) {
- K=game.oldlc2;
- if(I == LAMP)
- K=1;
- DROP(I,K);
- }
- }
- game.loc=3;
- game.oldloc=game.loc;
- goto L2000;
- }
-
-/* Hints */
-
-/* Come here if he's been long enough at required loc(s) for some unused hint.
- * hint number is in variable "hint". Branch to quick test for additional
- * conditions, then come back to do neat stuff. Goto 40010 if conditions are
- * met and we want to offer the hint. Goto 40020 to clear game.hintlc back to zero,
- * 40030 to take no action yet. */
-
-L40000: switch (HINT-1) { case 0: goto L40100; case 1: goto L40200; case 2: goto
- L40300; case 3: goto L40400; case 4: goto L40500; case 5: goto
- L40600; case 6: goto L40700; case 7: goto L40800; case 8: goto
- L40900; case 9: goto L41000; }
-/* CAVE BIRD SNAKE MAZE DARK WITT URN WOODS OGRE
- * JADE */
- BUG(27);
-
-L40010: game.hintlc[HINT]=0;
- if(!YES(cmdin,HINTS[HINT][3],0,54)) goto L2602;
- SETPRM(1,HINTS[HINT][2],HINTS[HINT][2]);
- RSPEAK(261);
- game.hinted[HINT]=YES(cmdin,175,HINTS[HINT][4],54);
- if(game.hinted[HINT] && game.limit > 30)game.limit=game.limit+30*HINTS[HINT][2];
-L40020: game.hintlc[HINT]=0;
-L40030: goto L2602;
-
-/* Now for the quick tests. See database description for one-line notes. */
-
-L40100: if(game.prop[GRATE] == 0 && !HERE(KEYS)) goto L40010;
- goto L40020;
-
-L40200: if(game.place[BIRD] == game.loc && TOTING(ROD) && game.oldobj == BIRD) goto L40010;
- goto L40030;
-
-L40300: if(HERE(SNAKE) && !HERE(BIRD)) goto L40010;
- goto L40020;
-
-L40400: if(game.atloc[game.loc] == 0 && game.atloc[game.oldloc] == 0 && game.atloc[game.oldlc2] == 0 && game.holdng >
- 1) goto L40010;
- goto L40020;
-
-L40500: if(game.prop[EMRALD] != -1 && game.prop[PYRAM] == -1) goto L40010;
- goto L40020;
-
-L40600: goto L40010;
-
-L40700: if(game.dflag == 0) goto L40010;
- goto L40020;
-
-L40800: if(game.atloc[game.loc] == 0 && game.atloc[game.oldloc] == 0 && game.atloc[game.oldlc2] == 0) goto
- L40010;
- goto L40030;
-
-L40900: I=ATDWRF(game.loc);
- if(I < 0) goto L40020;
- if(HERE(OGRE) && I == 0) goto L40010;
- goto L40030;
-
-L41000: if(game.tally == 1 && game.prop[JADE] < 0) goto L40010;
- goto L40020;
-
-
-
-