Source:Eshk.h

Below is the full text to include/eshk.h from NetHack 3.4.3. To link to a particular line, write [[eshk.h#line123 ]], for example. 1.   /*	SCCS Id: @(#)eshk.h	3.4	1997/05/01	*/ 2.   /* Copyright (c) Stichting Mathematisch Centrum, Amsterdam, 1985. */ 3.    /* NetHack may be freely redistributed. See license for details. */ 4.

5.   #ifndef ESHK_H 6.   #define ESHK_H 7.    8.    #define REPAIR_DELAY	5	/* minimum delay between shop damage & repair */ 9.    10.   #define BILLSZ	200 11.   12.   struct bill_x { 13.  	unsigned bo_id; 14.  	boolean useup; 15.  	long price;		/* price per unit */ 16.  	long bquan;		/* amount used up */ 17.  };  18.    19.   struct eshk { 20.  	long robbed;		/* amount stolen by most recent customer */ 21.  	long credit;		/* amount credited to customer */ 22.  	long debit;		/* amount of debt for using unpaid items */ 23.  	long loan;		/* shop-gold picked (part of debit) */ 24.  	int shoptype;		/* the value of rooms[shoproom].rtype */ 25.  	schar shoproom;		/* index in rooms; set by inshop */ 26.  	schar unused;		/* to force alignment for stupid compilers */ 27.  	boolean following;	/* following customer since he owes us sth */ 28.  	boolean surcharge;	/* angry shk inflates prices */ 29.  	coord shk;		/* usual position shopkeeper */ 30.  	coord shd;		/* position shop door */ 31.  	d_level shoplevel;	/* level (& dungeon) of his shop */ 32.  	int billct;		/* no. of entries of bill[] in use */ 33.  	struct bill_x bill[BILLSZ]; 34.  	struct bill_x *bill_p; 35.  	int visitct;		/* nr of visits by most recent customer */ 36.  	char customer[PL_NSIZ]; /* most recent customer */ 37.  	char shknam[PL_NSIZ]; 38.  };  39.    40.   #define ESHK(mon)	((struct eshk *)&(mon)->mextra[0]) 41.   42.   #define NOTANGRY(mon)	((mon)->mpeaceful) 43.  #define ANGRY(mon)	(!NOTANGRY(mon)) 44.   45.   #endif /* ESHK_H */