Eliminare a confusing dummy argument in a macro.
This commit is contained in:
parent
5c90880f0a
commit
2d8ebd234b
3 changed files with 26 additions and 26 deletions
|
@ -676,7 +676,7 @@ static phase_codes_t extinguish(verb_t verb, obj_t obj) {
|
|||
break;
|
||||
case LAMP:
|
||||
state_change(LAMP, LAMP_DARK);
|
||||
rspeak(DARK(game.loc) ? PITCH_DARK : NO_MESSAGE);
|
||||
rspeak(IS_DARK_HERE() ? PITCH_DARK : NO_MESSAGE);
|
||||
break;
|
||||
case DRAGON:
|
||||
case VOLCANO:
|
||||
|
@ -1155,12 +1155,12 @@ static phase_codes_t read(command_t command)
|
|||
}
|
||||
}
|
||||
if (command.obj > NOBJECTS || command.obj == NO_OBJECT ||
|
||||
DARK(game.loc)) {
|
||||
IS_DARK_HERE()) {
|
||||
return GO_UNKNOWN;
|
||||
}
|
||||
}
|
||||
|
||||
if (DARK(game.loc)) {
|
||||
if (IS_DARK_HERE()) {
|
||||
sspeak(NO_SEE, command.word[0].raw);
|
||||
} else if (command.obj == OYSTER) {
|
||||
if (!TOTING(OYSTER) || !game.closed) {
|
||||
|
|
38
advent.h
38
advent.h
|
@ -83,24 +83,24 @@
|
|||
#define PROMPT "> "
|
||||
|
||||
/*
|
||||
* DESTROY(N) = Get rid of an item by putting it in LOC_NOWHERE
|
||||
* MOD(N,M) = Arithmetic modulus
|
||||
* TOTING(OBJ) = true if the OBJ is being carried
|
||||
* AT(OBJ) = true if on either side of two-placed object
|
||||
* HERE(OBJ) = true if the OBJ is at "LOC" (or is being carried)
|
||||
* CNDBIT(L,N) = true if COND(L) has bit n set (bit 0 is units bit)
|
||||
* LIQUID() = object number of liquid in bottle
|
||||
* LIQLOC(LOC) = object number of liquid (if any) at LOC
|
||||
* FORCED(LOC) = true if LOC moves without asking for input (COND=2)
|
||||
* DARK(LOC) = true if location "LOC" is dark
|
||||
* PCT(N) = true N% of the time (N integer from 0 to 100)
|
||||
* GSTONE(OBJ) = true if OBJ is a gemstone
|
||||
* FOREST(LOC) = true if LOC is part of the forest
|
||||
* OUTSIDE(LOC) = true if location not in the cave
|
||||
* INSIDE(LOC) = true if location is in the cave or the building at the
|
||||
* beginning of the game
|
||||
* INDEEP(LOC) = true if location is in the Hall of Mists or deeper
|
||||
* BUG(X) = report bug and exit
|
||||
* DESTROY(N) = Get rid of an item by putting it in LOC_NOWHERE
|
||||
* MOD(N,M) = Arithmetic modulus
|
||||
* TOTING(OBJ) = true if the OBJ is being carried
|
||||
* AT(OBJ) = true if on either side of two-placed object
|
||||
* HERE(OBJ) = true if the OBJ is at "LOC" (or is being carried)
|
||||
* CNDBIT(L,N) = true if COND(L) has bit n set (bit 0 is units bit)
|
||||
* LIQUID() = object number of liquid in bottle
|
||||
* LIQLOC(LOC) = object number of liquid (if any) at LOC
|
||||
* FORCED(LOC) = true if LOC moves without asking for input (COND=2)
|
||||
* IS_DARK_HERE() = true if location "LOC" is dark
|
||||
* PCT(N) = true N% of the time (N integer from 0 to 100)
|
||||
* GSTONE(OBJ) = true if OBJ is a gemstone
|
||||
* FOREST(LOC) = true if LOC is part of the forest
|
||||
* OUTSIDE(LOC) = true if location not in the cave
|
||||
* INSIDE(LOC) = true if location is in the cave or the building at the
|
||||
* beginning of the game
|
||||
* INDEEP(LOC) = true if location is in the Hall of Mists or deeper
|
||||
* BUG(X) = report bug and exit
|
||||
*/
|
||||
#define DESTROY(N) move(N, LOC_NOWHERE)
|
||||
#define MOD(N, M) ((N) % (M))
|
||||
|
@ -118,7 +118,7 @@
|
|||
(CNDBIT((LOC), COND_FLUID) ? CNDBIT((LOC), COND_OILY) ? OIL : WATER \
|
||||
: NO_OBJECT)
|
||||
#define FORCED(LOC) CNDBIT(LOC, COND_FORCED)
|
||||
#define DARK(DUMMY) \
|
||||
#define IS_DARK_HERE() \
|
||||
(!CNDBIT(game.loc, COND_LIT) && \
|
||||
(game.objects[LAMP].prop == LAMP_DARK || !HERE(LAMP)))
|
||||
#define PCT(N) (randrange(100) < (N))
|
||||
|
|
8
main.c
8
main.c
|
@ -534,7 +534,7 @@ static void describe_location(void) {
|
|||
msg = locations[game.loc].description.big;
|
||||
}
|
||||
|
||||
if (!FORCED(game.loc) && DARK(game.loc)) {
|
||||
if (!FORCED(game.loc) && IS_DARK_HERE()) {
|
||||
msg = arbitrary_messages[PITCH_DARK];
|
||||
}
|
||||
|
||||
|
@ -1047,7 +1047,7 @@ static void listobjects(void) {
|
|||
* Similarly for chain; game.prop is initially CHAINING_BEAR (locked to
|
||||
* bear). These hacks are because game.prop=0 is needed to
|
||||
* get full score. */
|
||||
if (!DARK(game.loc)) {
|
||||
if (!IS_DARK_HERE()) {
|
||||
++game.locs[game.loc].abbrev;
|
||||
for (int i = game.locs[game.loc].atloc; i != 0;
|
||||
i = game.link[i]) {
|
||||
|
@ -1229,7 +1229,7 @@ static bool do_move(void) {
|
|||
|
||||
/* The easiest way to get killed is to fall into a pit in
|
||||
* pitch darkness. */
|
||||
if (!FORCED(game.loc) && DARK(game.loc) && game.wzdark &&
|
||||
if (!FORCED(game.loc) && IS_DARK_HERE() && game.wzdark &&
|
||||
PCT(PIT_KILL_PROB)) {
|
||||
rspeak(PIT_FALL);
|
||||
game.oldlc2 = game.loc;
|
||||
|
@ -1283,7 +1283,7 @@ static bool do_command(void) {
|
|||
}
|
||||
|
||||
/* Check to see if the room is dark. */
|
||||
game.wzdark = DARK(game.loc);
|
||||
game.wzdark = IS_DARK_HERE();
|
||||
|
||||
/* If the knife is not here it permanently disappears.
|
||||
* Possibly this should fire if the knife is here but
|
||||
|
|
Loading…
Add table
Add a link
Reference in a new issue