Source:NetHack 3.4.0/edog.h

From NetHackWiki
Jump to navigation Jump to search

Below is the full text to edog.h from the source code of NetHack 3.4.0. To link to a particular line, write [[NetHack 3.4.0/edog.h#line123]], for example.

Warning! This is the source code from an old release. For the latest release, see Source code

The NetHack General Public License applies to screenshots, source code and other content from NetHack.

This content was modified from the original NetHack source code distribution (by splitting up NetHack content between wiki pages, and possibly further editing). See the page history for a list of who changed it, and on what dates.

1.    /*	SCCS Id: @(#)edog.h	3.4	1997/10/23	*/
2.    /* Copyright (c) Stichting Mathematisch Centrum, Amsterdam, 1985. */
3.    /* NetHack may be freely redistributed.  See license for details. */
4.    
5.    #ifndef EDOG_H
6.    #define EDOG_H
7.    
8.    /*	various types of food, the lower, the better liked.	*/
9.    
10.   #define DOGFOOD 0
11.   #define CADAVER 1
12.   #define ACCFOOD 2
13.   #define MANFOOD 3
14.   #define APPORT	4
15.   #define POISON	5
16.   #define UNDEF	6
17.   #define TABU	7
18.   
19.   struct edog {
20.   	long droptime;			/* moment dog dropped object */
21.   	unsigned dropdist;		/* dist of drpped obj from @ */
22.   	int apport;			/* amount of training */
23.   	long whistletime;		/* last time he whistled */
24.   	long hungrytime;		/* will get hungry at this time */
25.   	coord ogoal;			/* previous goal location */
26.   	int abuse;			/* track abuses to this pet */
27.   	int revivals;			/* count pet deaths */
28.   	int mhpmax_penalty;		/* while starving, points reduced */
29.   	Bitfield(killed_by_u, 1);	/* you attempted to kill him */
30.   };
31.   #define EDOG(mon)	((struct edog *)&(mon)->mextra[0])
32.   
33.   #endif /* EDOG_H */