Clean up dummy macro arguments.

This commit is contained in:
Eric S. Raymond 2017-06-11 07:29:29 -04:00
parent 925aeab51b
commit 3c78ff879b
3 changed files with 24 additions and 24 deletions

View file

@ -214,7 +214,7 @@ static int carry(long obj)
if (game.fixed[obj] != 0) if (game.fixed[obj] != 0)
return(2011); return(2011);
if (obj == WATER || obj == OIL) { if (obj == WATER || obj == OIL) {
if (!HERE(BOTTLE) || LIQ(0) != obj) { if (!HERE(BOTTLE) || LIQUID() != obj) {
if (TOTING(BOTTLE) && game.prop[BOTTLE] == 1) if (TOTING(BOTTLE) && game.prop[BOTTLE] == 1)
return(fill(BOTTLE)); return(fill(BOTTLE));
if (game.prop[BOTTLE] != 1)SPK=105; if (game.prop[BOTTLE] != 1)SPK=105;
@ -241,8 +241,8 @@ static int carry(long obj)
if ((obj==BIRD || obj==CAGE) && (game.prop[BIRD]==1 || -1-game.prop[BIRD]==1)) if ((obj==BIRD || obj==CAGE) && (game.prop[BIRD]==1 || -1-game.prop[BIRD]==1))
CARRY(BIRD+CAGE-obj,game.loc); CARRY(BIRD+CAGE-obj,game.loc);
CARRY(obj,game.loc); CARRY(obj,game.loc);
if (obj == BOTTLE && LIQ(0) != 0) if (obj == BOTTLE && LIQUID() != 0)
game.place[LIQ(0)] = -1; game.place[LIQUID()] = -1;
if (!GSTONE(obj) || game.prop[obj] == 0) if (!GSTONE(obj) || game.prop[obj] == 0)
return(2009); return(2009);
game.prop[obj]=0; game.prop[obj]=0;
@ -334,7 +334,7 @@ static int discard(long obj, bool just_do_it)
if (game.prop[VASE] != 0)game.fixed[VASE]= -1; if (game.prop[VASE] != 0)game.fixed[VASE]= -1;
} }
} }
K=LIQ(0); K=LIQUID();
if (K == obj)obj=BOTTLE; if (K == obj)obj=BOTTLE;
if (obj == BOTTLE && K != 0)game.place[K]=0; if (obj == BOTTLE && K != 0)game.place[K]=0;
if (obj == CAGE && game.prop[BIRD] == 1)DROP(BIRD,game.loc); if (obj == CAGE && game.prop[BIRD] == 1)DROP(BIRD,game.loc);
@ -349,11 +349,11 @@ static int drink(token_t obj)
/* Drink. If no object, assume water and look for it here. If water is in /* Drink. If no object, assume water and look for it here. If water is in
* the bottle, drink that, else must be at a water loc, so drink stream. */ * the bottle, drink that, else must be at a water loc, so drink stream. */
{ {
if (obj == 0 && LIQLOC(game.loc) != WATER && (LIQ(0) != WATER || !HERE(BOTTLE))) if (obj == 0 && LIQLOC(game.loc) != WATER && (LIQUID() != WATER || !HERE(BOTTLE)))
return(8000); return(8000);
if (obj != BLOOD) { if (obj != BLOOD) {
if (obj != 0 && obj != WATER)SPK=110; if (obj != 0 && obj != WATER)SPK=110;
if (SPK == 110 || LIQ(0) != WATER || !HERE(BOTTLE)) return(2011); if (SPK == 110 || LIQUID() != WATER || !HERE(BOTTLE)) return(2011);
game.prop[BOTTLE]=1; game.prop[BOTTLE]=1;
game.place[WATER]=0; game.place[WATER]=0;
SPK=74; SPK=74;
@ -407,7 +407,7 @@ static int extinguish(int obj)
if (obj == LAMP) { if (obj == LAMP) {
game.prop[LAMP]=0; game.prop[LAMP]=0;
RSPEAK(40); RSPEAK(40);
if (DARK(0)) if (DARK(game.loc))
RSPEAK(16); RSPEAK(16);
return(2012); return(2012);
} }
@ -488,7 +488,7 @@ int fill(long obj)
SPK=213; SPK=213;
if (game.prop[URN] != 0) return(2011); if (game.prop[URN] != 0) return(2011);
SPK=144; SPK=144;
k=LIQ(0); k=LIQUID();
if (k == 0 || !HERE(BOTTLE)) return(2011); if (k == 0 || !HERE(BOTTLE)) return(2011);
game.place[k]=0; game.place[k]=0;
game.prop[BOTTLE]=1; game.prop[BOTTLE]=1;
@ -506,12 +506,12 @@ int fill(long obj)
SPK=106; SPK=106;
if (HERE(URN) && game.prop[URN] != 0) if (HERE(URN) && game.prop[URN] != 0)
SPK=214; SPK=214;
if (LIQ(0) != 0) if (LIQUID() != 0)
SPK=105; SPK=105;
if (SPK != 107) if (SPK != 107)
return(2011); return(2011);
game.prop[BOTTLE]=MOD(COND[game.loc],4)/2*2; game.prop[BOTTLE]=MOD(COND[game.loc],4)/2*2;
k=LIQ(0); k=LIQUID();
if (TOTING(BOTTLE)) if (TOTING(BOTTLE))
game.place[k]= -1; game.place[k]= -1;
if (k == OIL) if (k == OIL)
@ -523,7 +523,7 @@ static int find(token_t obj)
/* Find. Might be carrying it, or it might be here. Else give caveat. */ /* Find. Might be carrying it, or it might be here. Else give caveat. */
{ {
if (AT(obj) || if (AT(obj) ||
(LIQ(0) == obj && AT(BOTTLE)) || (LIQUID() == obj && AT(BOTTLE)) ||
obj == LIQLOC(game.loc) || obj == LIQLOC(game.loc) ||
(obj == DWARF && ATDWRF(game.loc) > 0)) (obj == DWARF && ATDWRF(game.loc) > 0))
SPK=94; SPK=94;
@ -667,7 +667,7 @@ static int pour(token_t obj)
/* Pour. If no object, or object is bottle, assume contents of bottle. /* Pour. If no object, or object is bottle, assume contents of bottle.
* special tests for pouring water or oil on plant or rusty door. */ * special tests for pouring water or oil on plant or rusty door. */
{ {
if (obj == BOTTLE || obj == 0)obj=LIQ(0); if (obj == BOTTLE || obj == 0)obj=LIQUID();
if (obj == 0) return(8000); if (obj == 0) return(8000);
if (!TOTING(obj)) return(2011); if (!TOTING(obj)) return(2011);
SPK=78; SPK=78;
@ -713,10 +713,10 @@ static int read(FILE *input, token_t obj)
if (HERE(i) && OBJTXT[i] != 0 && game.prop[i] >= 0) if (HERE(i) && OBJTXT[i] != 0 && game.prop[i] >= 0)
obj = obj * NOBJECTS + i; obj = obj * NOBJECTS + i;
} }
if (obj > NOBJECTS || obj == 0 || DARK(0)) return(8000); if (obj > NOBJECTS || obj == 0 || DARK(game.loc)) return(8000);
} }
if (DARK(0)) { if (DARK(game.loc)) {
SETPRM(1,WD1,WD1X); SETPRM(1,WD1,WD1X);
RSPEAK(256); RSPEAK(256);
return(2012); return(2012);
@ -916,7 +916,7 @@ int action(FILE *input, enum speechpart part, long verb, long obj)
} }
else if (obj == DWARF && ATDWRF(game.loc) > 0) else if (obj == DWARF && ATDWRF(game.loc) > 0)
/* FALL THROUGH */; /* FALL THROUGH */;
else if ((LIQ(0) == obj && HERE(BOTTLE)) || obj == LIQLOC(game.loc)) else if ((LIQUID() == obj && HERE(BOTTLE)) || obj == LIQLOC(game.loc))
/* FALL THROUGH */; /* FALL THROUGH */;
else if (obj == OIL && HERE(URN) && game.prop[URN] != 0) { else if (obj == OIL && HERE(URN) && game.prop[URN] != 0) {
obj=URN; obj=URN;

View file

@ -125,21 +125,21 @@ extern int saveresume(FILE *, bool);
* *
* AT(OBJ) = true if on either side of two-placed object * AT(OBJ) = true if on either side of two-placed object
* CNDBIT(L,N) = true if COND(L) has bit n set (bit 0 is units bit) * CNDBIT(L,N) = true if COND(L) has bit n set (bit 0 is units bit)
* DARK(DUMMY) = true if location "LOC" is dark * DARK(LOC) = true if location "LOC" is dark
* FORCED(LOC) = true if LOC moves without asking for input (COND=2) * FORCED(LOC) = true if LOC moves without asking for input (COND=2)
* FOREST(LOC) = true if LOC is part of the forest * FOREST(LOC) = true if LOC is part of the forest
* GSTONE(OBJ) = true if OBJ is a gemstone * GSTONE(OBJ) = true if OBJ is a gemstone
* HERE(OBJ) = true if the OBJ is at "LOC" (or is being carried) * HERE(OBJ) = true if the OBJ is at "LOC" (or is being carried)
* LIQ(DUMMY) = object number of liquid in bottle * LIQUID() = object number of liquid in bottle
* LIQLOC(LOC) = object number of liquid (if any) at LOC * LIQLOC(LOC) = object number of liquid (if any) at LOC
* PCT(N) = true N% of the time (N integer from 0 to 100) * PCT(N) = true N% of the time (N integer from 0 to 100)
* TOTING(OBJ) = true if the OBJ is being carried */ * TOTING(OBJ) = true if the OBJ is being carried */
#define TOTING(OBJ) (game.place[OBJ] == -1) #define TOTING(OBJ) (game.place[OBJ] == -1)
#define AT(OBJ) (game.place[OBJ] == game.loc || game.fixed[OBJ] == game.loc) #define AT(OBJ) (game.place[OBJ] == game.loc || game.fixed[OBJ] == game.loc)
#define HERE(OBJ) (AT(OBJ) || TOTING(OBJ)) #define HERE(OBJ) (AT(OBJ) || TOTING(OBJ))
#define LIQ2(PBOTL) ((1-(PBOTL))*WATER+((PBOTL)/2)*(WATER+OIL)) #define LIQ2(PBOTL) ((1-(PBOTL))*WATER+((PBOTL)/2)*(WATER+OIL))
#define LIQ(DUMMY) (LIQ2(game.prop[BOTTLE]<0 ? -1-game.prop[BOTTLE] : game.prop[BOTTLE])) #define LIQUID() (LIQ2(game.prop[BOTTLE]<0 ? -1-game.prop[BOTTLE] : game.prop[BOTTLE]))
#define LIQLOC(LOC) (LIQ2((MOD(COND[LOC]/2*2,8)-5)*MOD(COND[LOC]/4,2)+1)) #define LIQLOC(LOC) (LIQ2((MOD(COND[LOC]/2*2,8)-5)*MOD(COND[LOC]/4,2)+1))
#define CNDBIT(L,N) (TSTBIT(COND[L],N)) #define CNDBIT(L,N) (TSTBIT(COND[L],N))
#define FORCED(LOC) (COND[LOC] == 2) #define FORCED(LOC) (COND[LOC] == 2)

6
main.c
View file

@ -713,7 +713,7 @@ L2000: if (game.loc == 0)
KK=STEXT[game.loc]; KK=STEXT[game.loc];
if (MOD(game.abbrev[game.loc],game.abbnum) == 0 || KK == 0) if (MOD(game.abbrev[game.loc],game.abbnum) == 0 || KK == 0)
KK=LTEXT[game.loc]; KK=LTEXT[game.loc];
if (!FORCED(game.loc) && DARK(0)) { if (!FORCED(game.loc) && DARK(game.loc)) {
/* The easiest way to get killed is to fall into a pit in /* The easiest way to get killed is to fall into a pit in
* pitch darkness. */ * pitch darkness. */
if (game.wzdark && PCT(35)) { if (game.wzdark && PCT(35)) {
@ -740,7 +740,7 @@ L2000: if (game.loc == 0)
* bear). These hacks are because game.prop=0 is needed to * bear). These hacks are because game.prop=0 is needed to
* get full score. */ * get full score. */
if (DARK(0)) goto L2012; if (DARK(game.loc)) goto L2012;
++game.abbrev[game.loc]; ++game.abbrev[game.loc];
i=game.atloc[game.loc]; i=game.atloc[game.loc];
L2004: if (i == 0) goto L2012; L2004: if (i == 0) goto L2012;
@ -806,7 +806,7 @@ L2603: if (game.closed) {
game.prop[i] = -1-game.prop[i]; game.prop[i] = -1-game.prop[i];
} }
} }
game.wzdark=DARK(0); game.wzdark=DARK(game.loc);
if (game.knfloc > 0 && game.knfloc != game.loc) if (game.knfloc > 0 && game.knfloc != game.loc)
game.knfloc=0; game.knfloc=0;