Annotation of 43BSDReno/games/hack/def.objclass.h, revision 1.1

1.1     ! root        1: /* Copyright (c) Stichting Mathematisch Centrum, Amsterdam, 1985. */
        !             2: /* def.objclass.h - version 1.0.3 */
        !             3: 
        !             4: /* definition of a class of objects */
        !             5: 
        !             6: struct objclass {
        !             7:        char *oc_name;          /* actual name */
        !             8:        char *oc_descr;         /* description when name unknown */
        !             9:        char *oc_uname;         /* called by user */
        !            10:        Bitfield(oc_name_known,1);
        !            11:        Bitfield(oc_merge,1);   /* merge otherwise equal objects */
        !            12:        char oc_olet;
        !            13:        schar oc_prob;          /* probability for mkobj() */
        !            14:        schar oc_delay;         /* delay when using such an object */
        !            15:        uchar oc_weight;
        !            16:        schar oc_oc1, oc_oc2;
        !            17:        int oc_oi;
        !            18: #define        nutrition       oc_oi   /* for foods */
        !            19: #define        a_ac            oc_oc1  /* for armors - only used in ARM_BONUS */
        !            20: #define ARM_BONUS(obj) ((10 - objects[obj->otyp].a_ac) + obj->spe)
        !            21: #define        a_can           oc_oc2  /* for armors */
        !            22: #define bits           oc_oc1  /* for wands and rings */
        !            23:                                /* wands */
        !            24: #define                NODIR           1
        !            25: #define                IMMEDIATE       2
        !            26: #define                RAY             4
        !            27:                                /* rings */
        !            28: #define                SPEC            1       /* +n is meaningful */
        !            29: #define        wldam           oc_oc1  /* for weapons and PICK_AXE */
        !            30: #define        wsdam           oc_oc2  /* for weapons and PICK_AXE */
        !            31: #define        g_val           oc_oi   /* for gems: value on exit */
        !            32: };
        !            33: 
        !            34: extern struct objclass objects[];
        !            35: 
        !            36: /* definitions of all object-symbols */
        !            37: 
        !            38: #define        ILLOBJ_SYM      '\\'
        !            39: #define        AMULET_SYM      '"'
        !            40: #define        FOOD_SYM        '%'
        !            41: #define        WEAPON_SYM      ')'
        !            42: #define        TOOL_SYM        '('
        !            43: #define        BALL_SYM        '0'
        !            44: #define        CHAIN_SYM       '_'
        !            45: #define        ROCK_SYM        '`'
        !            46: #define        ARMOR_SYM       '['
        !            47: #define        POTION_SYM      '!'
        !            48: #define        SCROLL_SYM      '?'
        !            49: #define        WAND_SYM        '/'
        !            50: #define        RING_SYM        '='
        !            51: #define        GEM_SYM         '*'
        !            52: /* Other places with explicit knowledge of object symbols:
        !            53:  * ....shk.c:  char shtypes[] = "=/)%?![";
        !            54:  * mklev.c:    "=/)%?![<>"
        !            55:  * hack.mkobj.c:       char mkobjstr[] = "))[[!!!!????%%%%/=**";
        !            56:  * hack.apply.c:   otmp = getobj("0#%", "put in");
        !            57:  * hack.eat.c:     otmp = getobj("%", "eat");
        !            58:  * hack.invent.c:          if(index("!%?[)=*(0/\"", sym)){
        !            59:  * hack.invent.c:    || index("%?!*",otmp->olet))){
        !            60:  */

unix.superglobalmegacorp.com

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