Annotation of 42BSD/games/adventure/hdr.h, revision 1.1

1.1     ! root        1: #
        !             2: /*   ADVENTURE -- Jim Gillogly, Jul 1977
        !             3:  * This program is a re-write of ADVENT, written in FORTRAN mostly by
        !             4:  * Don Woods of SAIL.  In most places it is as nearly identical to the
        !             5:  * original as possible given the language and word-size differences.
        !             6:  * A few places, such as the message arrays and travel arrays were changed
        !             7:  * to reflect the smaller core size and word size.  The labels of the
        !             8:  * original are reflected in this version, so that the comments of the
        !             9:  * fortran are still applicable here.
        !            10:  *
        !            11:  * The data file distributed with the fortran source is assumed to be called
        !            12:  * "glorkz" in the directory where the program is first run.
        !            13:  */
        !            14: 
        !            15: static char hdr_sccsid[] = "   hdr.h   4.1     82/05/11        ";
        !            16: 
        !            17: /*  hdr.h */
        !            18: /* hdr.h: included by c advent files */
        !            19: 
        !            20: extern int setup;                       /* changed by savec & init      */
        !            21: int datfd;                              /* message file descriptor      */
        !            22: int delhit;
        !            23: int yea;
        !            24: 
        !            25: #define TAB     011
        !            26: #define LF      012
        !            27: #define FLUSHLINE while (getchar()!='\n')
        !            28: #define FLUSHLF   while (next()!=LF)
        !            29: 
        !            30: int loc,newloc,oldloc,oldlc2,wzdark,SHORT,gaveup,kq,k,k2;
        !            31: char *wd1,*wd2;                         /* the complete words           */
        !            32: int verb,obj,spk;
        !            33: extern int blklin;
        !            34: int saved,savet,mxscor,latncy;
        !            35: 
        !            36: #define MAXSTR  20                      /* max length of user's words   */
        !            37: 
        !            38: #define HTSIZE  512                     /* max number of vocab words    */
        !            39: struct hashtab                          /* hash table for vocabulary    */
        !            40: {       int val;                        /* word type &index (ktab)      */
        !            41:        char *atab;                     /* pointer to actual string     */
        !            42: } voc[HTSIZE];
        !            43: 
        !            44: #define DATFILE "glorkz"                /* all the original msgs        */
        !            45: #define TMPFILE "tmp.foo.baz"           /* just the text msgs           */
        !            46: 
        !            47: 
        !            48: struct text
        !            49: {       int seekadr;                    /* DATFILE must be < 2**16      */
        !            50:        int txtlen;                     /* length of msg starting here  */
        !            51: };
        !            52: 
        !            53: #define RTXSIZ  205
        !            54: struct text rtext[RTXSIZ];              /* random text messages         */
        !            55: 
        !            56: #define MAGSIZ  35
        !            57: struct text mtext[MAGSIZ];              /* magic messages               */
        !            58: 
        !            59: int clsses;
        !            60: #define CLSMAX  12
        !            61: struct text ctext[CLSMAX];              /* classes of adventurer        */
        !            62: int cval[CLSMAX];
        !            63: 
        !            64: struct text ptext[101];                 /* object descriptions          */
        !            65: 
        !            66: #define LOCSIZ  141                     /* number of locations          */
        !            67: struct text ltext[LOCSIZ];              /* long loc description         */
        !            68: struct text stext[LOCSIZ];              /* short loc descriptions       */
        !            69: 
        !            70: struct travlist                         /* direcs & conditions of travel*/
        !            71: {       struct travlist *next;          /* ptr to next list entry       */
        !            72:        int conditions;                 /* m in writeup (newloc / 1000) */
        !            73:        int tloc;                       /* n in writeup (newloc % 1000) */
        !            74:        int tverb;                      /* the verb that takes you there*/
        !            75: } *travel[LOCSIZ],*tkk;                 /* travel is closer to keys(...)*/
        !            76: 
        !            77: int atloc[LOCSIZ];
        !            78: 
        !            79: int  plac[101];                         /* initial object placement     */
        !            80: int  fixd[101],fixed[101];              /* location fixed?              */
        !            81: 
        !            82: int actspk[35];                         /* rtext msg for verb <n>       */
        !            83: 
        !            84: int cond[LOCSIZ];                       /* various condition bits       */
        !            85: 
        !            86: extern int setbit[16];                  /* bit defn masks 1,2,4,...     */
        !            87: 
        !            88: int hntmax;
        !            89: int hints[20][5];                       /* info on hints                */
        !            90: int hinted[20],hintlc[20];
        !            91: 
        !            92: int place[101], prop[101],link[201];
        !            93: int abb[LOCSIZ];
        !            94: 
        !            95: int maxtrs,tally,tally2;                /* treasure values              */
        !            96: 
        !            97: #define FALSE   0
        !            98: #define TRUE    1
        !            99: 
        !           100: int keys,lamp,grate,cage,rod,rod2,steps,/* mnemonics                    */
        !           101:        bird,door,pillow,snake,fissur,tablet,clam,oyster,magzin,
        !           102:        dwarf,knife,food,bottle,water,oil,plant,plant2,axe,mirror,dragon,
        !           103:        chasm,troll,troll2,bear,messag,vend,batter,
        !           104:        nugget,coins,chest,eggs,tridnt,vase,emrald,pyram,pearl,rug,chain,
        !           105:        spices,
        !           106:        back,look,cave,null,entrnc,dprssn,
        !           107:        say,lock,throw,find,invent;
        !           108: 
        !           109: int chloc,chloc2,dseen[7],dloc[7],      /* dwarf stuff                  */
        !           110:        odloc[7],dflag,daltlc;
        !           111: 
        !           112: int tk[21],stick,dtotal,attack;
        !           113: int turns,lmwarn,iwest,knfloc,detail,   /* various flags & counters     */
        !           114:        abbnum,maxdie,numdie,holdng,dkill,foobar,bonus,clock1,clock2,
        !           115:        saved,closng,panic,closed,scorng;
        !           116: 
        !           117: int demo,newloc,limit;
        !           118: 
        !           119: char *malloc();

unix.superglobalmegacorp.com

This archive runs on limited infrastructure. Preserving old code on modern bandwidth. Automated agents are requested to crawl responsibly.