After splitting out the stop field, nothing ever negates a travel opcode...
...so all those labs() calls can go away.
This commit is contained in:
parent
8560122f01
commit
fb35c34171
2 changed files with 7 additions and 7 deletions
2
init.c
2
init.c
|
@ -25,7 +25,7 @@ void initialise(void)
|
||||||
game.abbrev[i] = 0;
|
game.abbrev[i] = 0;
|
||||||
if (!(locations[i].description.big == 0 || tkey[i] == 0)) {
|
if (!(locations[i].description.big == 0 || tkey[i] == 0)) {
|
||||||
int k = tkey[i];
|
int k = tkey[i];
|
||||||
if (MOD(labs(travel[k].opcode), 1000) == 1)
|
if (MOD(travel[k].opcode, 1000) == 1)
|
||||||
conditions[i] |= (1 << COND_FORCED);
|
conditions[i] |= (1 << COND_FORCED);
|
||||||
}
|
}
|
||||||
game.atloc[i] = 0;
|
game.atloc[i] = 0;
|
||||||
|
|
12
main.c
12
main.c
|
@ -32,9 +32,9 @@
|
||||||
* inherited from FORTRAN, someday. To understand these, read the
|
* inherited from FORTRAN, someday. To understand these, read the
|
||||||
* encoding description for travel.
|
* encoding description for travel.
|
||||||
*/
|
*/
|
||||||
#define T_DESTINATION(entry) MOD(labs((entry).opcode) / 1000, 1000)
|
#define T_DESTINATION(entry) MOD((entry).opcode / 1000, 1000)
|
||||||
#define T_NODWARVES(entry) labs((entry).opcode) / 1000000 == 100
|
#define T_NODWARVES(entry) ((entry).opcode / 1000000 == 100)
|
||||||
#define T_MOTION(entry) MOD(labs((entry).opcode), 1000)
|
#define T_MOTION(entry) MOD((entry).opcode, 1000)
|
||||||
#define T_TERMINATE(entry) (T_MOTION(entry) == 1)
|
#define T_TERMINATE(entry) (T_MOTION(entry) == 1)
|
||||||
#define T_STOP(entry) ((entry).stop)
|
#define T_STOP(entry) ((entry).stop)
|
||||||
#define T_OPCODE(entry) ((entry).opcode)
|
#define T_OPCODE(entry) ((entry).opcode)
|
||||||
|
@ -619,7 +619,7 @@ static bool playermove(token_t verb, int motion)
|
||||||
}
|
}
|
||||||
++kk;
|
++kk;
|
||||||
}
|
}
|
||||||
scratchloc = labs(T_OPCODE(travel[kk])) / 1000;
|
scratchloc = T_OPCODE(travel[kk]) / 1000;
|
||||||
|
|
||||||
do {
|
do {
|
||||||
/*
|
/*
|
||||||
|
@ -648,7 +648,7 @@ static bool playermove(token_t verb, int motion)
|
||||||
if (T_STOP(travel[kk]))
|
if (T_STOP(travel[kk]))
|
||||||
BUG(CONDITIONAL_TRAVEL_ENTRY_WITH_NO_ALTERATION);
|
BUG(CONDITIONAL_TRAVEL_ENTRY_WITH_NO_ALTERATION);
|
||||||
++kk;
|
++kk;
|
||||||
game.newloc = labs(T_OPCODE(travel[kk])) / 1000;
|
game.newloc = T_OPCODE(travel[kk]) / 1000;
|
||||||
} while
|
} while
|
||||||
(game.newloc == scratchloc);
|
(game.newloc == scratchloc);
|
||||||
scratchloc = game.newloc;
|
scratchloc = game.newloc;
|
||||||
|
@ -689,7 +689,7 @@ static bool playermove(token_t verb, int motion)
|
||||||
if (T_STOP(travel[kk]))
|
if (T_STOP(travel[kk]))
|
||||||
BUG(CONDITIONAL_TRAVEL_ENTRY_WITH_NO_ALTERATION);
|
BUG(CONDITIONAL_TRAVEL_ENTRY_WITH_NO_ALTERATION);
|
||||||
++kk;
|
++kk;
|
||||||
game.newloc = labs(T_OPCODE(travel[kk])) / 1000;
|
game.newloc = T_OPCODE(travel[kk]) / 1000;
|
||||||
} while
|
} while
|
||||||
(game.newloc == scratchloc);
|
(game.newloc == scratchloc);
|
||||||
scratchloc = game.newloc;
|
scratchloc = game.newloc;
|
||||||
|
|
Loading…
Add table
Add a link
Reference in a new issue