X-Git-Url: https://jxself.org/git/?p=open-adventure.git;a=blobdiff_plain;f=advent.h;h=3015d65d1f2b65b3768dc5c070b697c08dbb6559;hp=289b8f6a12b7afa70ef36228b744db3396bddc62;hb=12b2ff74f6bbca81dc04e359f2209fe3a442e0df;hpb=de2b1894f22d885a43768a569118c47e1a39fb80 diff --git a/advent.h b/advent.h index 289b8f6..3015d65 100644 --- a/advent.h +++ b/advent.h @@ -6,13 +6,12 @@ #include "dungeon.h" #define LINESIZE 1024 -#define TOKLEN 5 // # sigificant character sin a token */ +#define TOKLEN 5 // № sigificant characters in a token */ #define NDWARVES 6 // number of dwarves #define PIRATE NDWARVES // must be NDWARVES-1 when zero-origin #define DALTLC LOC_NUGGET // alternate dwarf location -#define INVLIMIT 7 // inverntory limit (# of objects) +#define INVLIMIT 7 // inverntory limit (№ of objects) #define INTRANSITIVE -1 // illegal object number -#define SPECIALBASE 300 // base number of special rooms #define GAMELIMIT 330 // base limit of turns #define NOVICELIMIT 1000 // limit of turns for novice #define WARNTIME 30 // late game starts at game.limit-this @@ -61,11 +60,10 @@ #define LIQUID() (game.prop[BOTTLE] == WATER_BOTTLE? WATER : game.prop[BOTTLE] == OIL_BOTTLE ? OIL : NO_OBJECT ) #define LIQLOC(LOC) (CNDBIT((LOC),COND_FLUID)? CNDBIT((LOC),COND_OILY) ? OIL : WATER : NO_OBJECT) #define FORCED(LOC) CNDBIT(LOC, COND_FORCED) -#define DARK(DUMMY) ((!tstbit(conditions[game.loc],COND_LIT)) && (game.prop[LAMP] == LAMP_DARK || !HERE(LAMP))) +#define DARK(DUMMY) (!CNDBIT(game.loc,COND_LIT) && (game.prop[LAMP] == LAMP_DARK || !HERE(LAMP))) #define PCT(N) (randrange(100) < (N)) #define GSTONE(OBJ) ((OBJ) == EMERALD || (OBJ) == RUBY || (OBJ) == AMBER || (OBJ) == SAPPH) #define FOREST(LOC) CNDBIT(LOC, COND_FOREST) -#define SPECIAL(LOC) ((LOC) > SPECIALBASE) #define OUTSID(LOC) (CNDBIT(LOC, COND_ABOVE) || FOREST(LOC)) #define INDEEP(LOC) ((LOC) >= LOC_MISTHALL && !OUTSID(LOC)) #define BUG(x) bug(x, #x) @@ -114,8 +112,9 @@ enum phase_codes { GO_DWARFWAKE, }; -typedef long token_t; // word token - someday this will be char[TOKLEN+1] +typedef long token_t; // word token - someday this will be char[TOKLEN+1] */ typedef long vocab_t; // index into a vocabulary array */ +typedef long verb_t; // index into an actions array */ typedef long obj_t; // index into the object array */ typedef long loc_t; // index into the locations array */ @@ -145,6 +144,7 @@ struct game_t { long dtotal; long foobar; // current progress in saying "FEE FIE FOE FOO". long holdng; // number of objects being carried + long igo; // How many times he's said "go" instead of the direction long iwest; // How many times he's said "west" instead of "w" long knfloc; // 0 if no knife here, loc if knife , -1 after caveat long limit; // lifetime of lamp (not set here) @@ -161,7 +161,7 @@ struct game_t { long tally; long thresh; long trndex; - long trnluz; // # points lost so far due to number of turns used + long trnluz; // № points lost so far due to number of turns used long turns; // how many commands he's given (ignores yes/no) bool wzdark; // whether the loc he's leaving was dark char zzword[TOKLEN + 1]; // randomly generated magic word from bird @@ -191,7 +191,7 @@ struct settings_t { struct command_t { enum speechpart part; - vocab_t verb; + verb_t verb; obj_t obj; token_t wd1; token_t wd2;