X-Git-Url: https://jxself.org/git/?p=open-adventure.git;a=blobdiff_plain;f=main.c;h=debbb4670a310de8dc4f98d6332be88dfef578d5;hp=f9d0284e8b775eea35b2bf08965676f60e71ca8d;hb=3215930f646e7911d541bb1d29c73e9eb19db477;hpb=c8f6ff3701534e6c1ce59cf3e33aec5e824ed144 diff --git a/main.c b/main.c index f9d0284..debbb46 100644 --- a/main.c +++ b/main.c @@ -189,18 +189,18 @@ static bool fallback_handler(char *buf) static void checkhints(void) { if (COND[game.loc] >= game.conds) { - for (int hint = 1; hint <= HINT_COUNT; hint++) { + for (int hint = 0; hint < HINT_COUNT; hint++) { if (game.hinted[hint]) continue; - if (!CNDBIT(game.loc, hint + HBASE)) + if (!CNDBIT(game.loc, hint + 1 + COND_HBASE)) game.hintlc[hint] = -1; ++game.hintlc[hint]; /* Come here if he's been long enough at required loc(s) for some * unused hint. */ - if (game.hintlc[hint] >= hints[hint-1].turns) { + if (game.hintlc[hint] >= hints[hint].turns) { int i; - switch (hint - 1) { + switch (hint) { case 0: /* cave */ if (game.prop[GRATE] == 0 && !HERE(KEYS)) @@ -263,12 +263,12 @@ static void checkhints(void) /* Fall through to hint display */ game.hintlc[hint] = 0; - if (!YES(hints[hint-1].question, arbitrary_messages[NO_MESSAGE], arbitrary_messages[OK_MAN])) + if (!YES(hints[hint].question, arbitrary_messages[NO_MESSAGE], arbitrary_messages[OK_MAN])) return; - rspeak(HINT_COST, hints[hint-1].penalty, hints[hint-1].penalty); - game.hinted[hint] = YES(arbitrary_messages[WANT_HINT], hints[hint-1].hint, arbitrary_messages[OK_MAN]); + rspeak(HINT_COST, hints[hint].penalty, hints[hint].penalty); + game.hinted[hint] = YES(arbitrary_messages[WANT_HINT], hints[hint].hint, arbitrary_messages[OK_MAN]); if (game.hinted[hint] && game.limit > WARNTIME) - game.limit += WARNTIME * hints[hint-1].penalty; + game.limit += WARNTIME * hints[hint].penalty; } } } @@ -355,7 +355,7 @@ static bool dwarfmove(void) * means dwarves won't follow him into dead end in maze, but * c'est la vie. They'll wait for him outside the dead * end. */ - if (game.loc == 0 || FORCED(game.loc) || CNDBIT(game.newloc, NOARRR)) + if (game.loc == 0 || FORCED(game.loc) || CNDBIT(game.newloc, COND_NOARRR)) return true; /* Dwarf activity level ratchets up */ @@ -369,7 +369,7 @@ static bool dwarfmove(void) * the 5 dwarves. If any of the survivors is at loc, * replace him with the alternate. */ if (game.dflag == 1) { - if (!INDEEP(game.loc) || (PCT(95) && (!CNDBIT(game.loc, NOBACK) || PCT(85)))) + if (!INDEEP(game.loc) || (PCT(95) && (!CNDBIT(game.loc, COND_NOBACK) || PCT(85)))) return true; game.dflag = 2; for (int i = 1; i <= 2; i++) { @@ -413,7 +413,7 @@ static bool dwarfmove(void) j >= 20 || game.newloc == game.dloc[i] || FORCED(game.newloc) || - (i == PIRATE && CNDBIT(game.newloc, NOARRR)) || + (i == PIRATE && CNDBIT(game.newloc, COND_NOARRR)) || labs(TRAVEL[kk]) / 1000000 == 100); if (!avoided) { tk[j++] = game.newloc; @@ -541,7 +541,7 @@ static bool playermove(token_t verb, int motion) game.oldloc = game.loc; k2 = 0; if (motion == game.loc)k2 = FORGOT_PATH; - if (CNDBIT(game.loc, NOBACK))k2 = TWIST_TURN; + if (CNDBIT(game.loc, COND_NOBACK))k2 = TWIST_TURN; if (k2 == 0) { for (;;) { scratchloc = MOD((labs(TRAVEL[kk]) / 1000), 1000); @@ -938,7 +938,7 @@ static bool do_command(FILE *cmdin) * wants to go. If so, the dwarf's blocking his way. If * coming from place forbidden to pirate (dwarves rooted in * place) let him get out (and attacked). */ - if (game.newloc != game.loc && !FORCED(game.loc) && !CNDBIT(game.loc, NOARRR)) { + if (game.newloc != game.loc && !FORCED(game.loc) && !CNDBIT(game.loc, COND_NOARRR)) { for (size_t i = 1; i <= NDWARVES - 1; i++) { if (game.odloc[i] == game.newloc && game.dseen[i]) { game.newloc = game.loc;