edog.h

Go to the documentation of this file.
00001 /*      SCCS Id: @(#)edog.h     3.4     1997/10/23      */
00002 /* Copyright (c) Stichting Mathematisch Centrum, Amsterdam, 1985. */
00003 /* NetHack may be freely redistributed.  See license for details. */
00004 
00005 #ifndef EDOG_H
00006 #define EDOG_H
00007 
00008 /*      various types of food, the lower, the better liked.     */
00009 
00010 #define DOGFOOD 0
00011 #define CADAVER 1
00012 #define ACCFOOD 2
00013 #define MANFOOD 3
00014 #define APPORT  4
00015 #define POISON  5
00016 #define UNDEF   6
00017 #define TABU    7
00018 
00019 struct edog {
00020         long droptime;                  /* moment dog dropped object */
00021         unsigned dropdist;              /* dist of drpped obj from @ */
00022         int apport;                     /* amount of training */
00023         long whistletime;               /* last time he whistled */
00024         long hungrytime;                /* will get hungry at this time */
00025         coord ogoal;                    /* previous goal location */
00026         int abuse;                      /* track abuses to this pet */
00027         int revivals;                   /* count pet deaths */
00028         int mhpmax_penalty;             /* while starving, points reduced */
00029         Bitfield(killed_by_u, 1);       /* you attempted to kill him */
00030 };
00031 #define EDOG(mon)       ((struct edog *)&(mon)->mextra[0])
00032 
00033 #endif /* EDOG_H */