Another step in de-obscurifying the travel code.

This commit is contained in:
Eric S. Raymond 2017-07-01 14:20:34 -04:00
parent e05f959974
commit 0aa70d04cf
2 changed files with 5 additions and 7 deletions

10
main.c
View file

@ -379,7 +379,7 @@ static bool dwarfmove(void)
kk = tkey[game.dloc[i]];
if (kk != 0)
do {
game.newloc = T_DESTINATION(travel[kk]);
game.newloc = travel[kk].dest;
/* Have we avoided a dwarf encounter? */
bool avoided = (SPECIAL(game.newloc) ||
!INDEEP(game.newloc) ||
@ -531,10 +531,10 @@ static bool playermove( int motion)
if (spk == 0) {
int te_tmp = 0;
for (;;) {
scratchloc = T_DESTINATION(travel[travel_entry]);
scratchloc = travel[travel_entry].dest;
if (scratchloc != motion) {
if (!SPECIAL(scratchloc)) {
if (FORCED(scratchloc) && T_DESTINATION(travel[tkey[scratchloc]]) == motion)
if (FORCED(scratchloc) && travel[tkey[scratchloc]].dest == motion)
te_tmp = travel_entry;
}
if (!travel[travel_entry].stop) {
@ -611,7 +611,7 @@ static bool playermove( int motion)
do {
for (;;) { /* L12 loop */
for (;;) {
long cond = T_CONDITION(travel[travel_entry]);
long cond = travel[travel_entry].cond;
long arg = MOD(cond, 100);
if (!SPECIAL(cond)) {
/* YAML N and [pct N] conditionals */
@ -640,7 +640,7 @@ static bool playermove( int motion)
}
/* Found an eligible rule, now execute it */
game.newloc = T_DESTINATION(travel[travel_entry]);
game.newloc = travel[travel_entry].dest;
if (!SPECIAL(game.newloc))
return true;

View file

@ -161,8 +161,6 @@ typedef struct {{
* inherited from FORTRAN, someday. To understand these, read the
* encoding description for travel.
*/
#define T_DESTINATION(entry) (entry).dest
#define T_CONDITION(entry) (entry).cond
#define T_NODWARVES(entry) (T_CONDITION(entry) == 100)
#define T_TERMINATE(entry) ((entry).motion == 1)
#define L_SPEAK(loc) ((loc) - 500)