This commit is contained in:
Eric S. Raymond 2024-09-23 04:38:24 -04:00
parent 40742e112b
commit 96ad6c6245
2 changed files with 7 additions and 3 deletions

View file

@ -76,7 +76,9 @@
#define PROP_STASHIFY(n) (-1 - (n)) #define PROP_STASHIFY(n) (-1 - (n))
#define OBJECT_STASHIFY(obj, pval) game.objects[obj].prop = PROP_STASHIFY(pval) #define OBJECT_STASHIFY(obj, pval) game.objects[obj].prop = PROP_STASHIFY(pval)
#define OBJECT_IS_STASHED(obj) (game.objects[obj].prop < STATE_NOTFOUND) #define OBJECT_IS_STASHED(obj) (game.objects[obj].prop < STATE_NOTFOUND)
#define OBJECT_STATE_EQUALS(obj, pval) ((game.objects[obj].prop == pval) || (game.objects[obj].prop == PROP_STASHIFY(pval))) #define OBJECT_STATE_EQUALS(obj, pval) \
((game.objects[obj].prop == pval) || \
(game.objects[obj].prop == PROP_STASHIFY(pval)))
#define PROMPT "> " #define PROMPT "> "

6
main.c
View file

@ -188,7 +188,8 @@ static void checkhints(void) {
return; return;
case 9: /* jade */ case 9: /* jade */
if (game.tally == 1 && if (game.tally == 1 &&
(OBJECT_IS_STASHED(JADE) || OBJECT_IS_NOTFOUND(JADE))) { (OBJECT_IS_STASHED(JADE) ||
OBJECT_IS_NOTFOUND(JADE))) {
break; break;
} }
game.hints[hint].lc = 0; game.hints[hint].lc = 0;
@ -1275,7 +1276,8 @@ static bool do_command(void) {
if (TOTING(i) && if (TOTING(i) &&
(OBJECT_IS_NOTFOUND(i) || (OBJECT_IS_NOTFOUND(i) ||
OBJECT_IS_STASHED(i))) { OBJECT_IS_STASHED(i))) {
OBJECT_STASHIFY(i, game.objects[i].prop); OBJECT_STASHIFY(
i, game.objects[i].prop);
} }
} }
} }