Home | History | Annotate | Line # | Download | only in phantasia
      1  1.5   jsm /*	$NetBSD: phantstruct.h,v 1.5 2005/02/15 12:58:21 jsm Exp $	*/
      2  1.4  ross 
      3  1.4  ross #define bool char
      4  1.5   jsm /* phbool is used when we need this version of bool after <curses.h>.  */
      5  1.5   jsm #define phbool char
      6  1.2   cgd 
      7  1.1   jtc /*
      8  1.1   jtc  * phantstruct.h - structure definitions for Phantasia
      9  1.1   jtc  */
     10  1.1   jtc 
     11  1.1   jtc struct	player	    	/* player statistics */
     12  1.1   jtc     {
     13  1.1   jtc     double	p_experience;	/* experience */
     14  1.1   jtc     double	p_level;    	/* level */
     15  1.1   jtc     double	p_strength;	/* strength */
     16  1.1   jtc     double	p_sword;	/* sword */
     17  1.1   jtc     double	p_might;	/* effect strength */
     18  1.1   jtc     double	p_energy;	/* energy */
     19  1.1   jtc     double	p_maxenergy;	/* maximum energy */
     20  1.1   jtc     double	p_shield;	/* shield */
     21  1.1   jtc     double	p_quickness;	/* quickness */
     22  1.1   jtc     double	p_quksilver;	/* quicksilver */
     23  1.1   jtc     double	p_speed;	/* effective quickness */
     24  1.1   jtc     double	p_magiclvl;	/* magic level */
     25  1.1   jtc     double	p_mana;		/* mana */
     26  1.1   jtc     double	p_brains;	/* brains */
     27  1.1   jtc     double	p_poison;	/* poison */
     28  1.1   jtc     double	p_gold;		/* gold */
     29  1.1   jtc     double	p_gems;		/* gems */
     30  1.1   jtc     double	p_sin;		/* sin */
     31  1.1   jtc     double	p_x;	    	/* x coord */
     32  1.1   jtc     double	p_y;	    	/* y coord */
     33  1.1   jtc     double	p_1scratch,
     34  1.1   jtc 		p_2scratch;	/* variables used for decree, player battle */
     35  1.1   jtc 
     36  1.1   jtc     struct
     37  1.1   jtc 	{
     38  1.1   jtc 	short	ring_type;	/* type of ring */
     39  1.1   jtc 	short	ring_duration;	/* duration of ring */
     40  1.1   jtc 	bool	ring_inuse;	/* ring in use flag */
     41  1.1   jtc 	}	p_ring;	    	/* ring stuff */
     42  1.1   jtc 
     43  1.1   jtc     long	p_age;		/* age of player */
     44  1.1   jtc 
     45  1.1   jtc     int		p_degenerated;	/* age/3000 last degenerated */
     46  1.1   jtc 
     47  1.1   jtc     short	p_type;		/* character type */
     48  1.1   jtc     short	p_specialtype;	/* special character type */
     49  1.1   jtc     short	p_lives;	/* multiple lives for council, valar */
     50  1.1   jtc     short	p_crowns;	/* crowns */
     51  1.1   jtc     short	p_charms;	/* charms */
     52  1.1   jtc     short	p_amulets;	/* amulets */
     53  1.1   jtc     short	p_holywater;   	/* holy water */
     54  1.1   jtc     short	p_lastused;	/* day of year last used */
     55  1.1   jtc     short	p_status;	/* playing, cloaked, etc. */
     56  1.1   jtc     short	p_tampered;	/* decree'd, etc. flag */
     57  1.1   jtc     short	p_istat;	/* used for inter-terminal battle */
     58  1.1   jtc 
     59  1.1   jtc     bool	p_palantir;	/* palantir */
     60  1.1   jtc     bool	p_blessing;	/* blessing */
     61  1.1   jtc     bool	p_virgin;	/* virgin */
     62  1.1   jtc     bool	p_blindness;	/* blindness */
     63  1.1   jtc 
     64  1.1   jtc     char	p_name[SZ_NAME];	/* name */
     65  1.1   jtc     char	p_password[SZ_PASSWORD];/* password */
     66  1.1   jtc     char	p_login[SZ_LOGIN];	/* login */
     67  1.1   jtc     };
     68  1.1   jtc 
     69  1.1   jtc struct	monster	    	/* monster stats */
     70  1.1   jtc     {
     71  1.1   jtc     double	m_strength;	/* strength */
     72  1.1   jtc     double	m_brains;	/* brains */
     73  1.1   jtc     double	m_speed;	/* speed */
     74  1.1   jtc     double	m_energy;	/* energy */
     75  1.1   jtc     double	m_experience;	/* experience */
     76  1.1   jtc     double	m_flock;    	/* % chance of flocking */
     77  1.1   jtc 
     78  1.1   jtc     double	m_o_strength;	/* original strength */
     79  1.1   jtc     double	m_o_speed;	/* original speed */
     80  1.1   jtc     double	m_maxspeed;	/* maximum speed */
     81  1.1   jtc     double	m_o_energy;	/* original energy */
     82  1.1   jtc     double	m_melee;	/* melee damage */
     83  1.1   jtc     double	m_skirmish;	/* skirmish damage */
     84  1.1   jtc 
     85  1.1   jtc     int		m_treasuretype;	/* treasure type */
     86  1.1   jtc     int		m_type;	    	/* special type */
     87  1.1   jtc 
     88  1.1   jtc     char	m_name[26];	/* name */
     89  1.1   jtc     };
     90  1.1   jtc 
     91  1.1   jtc struct	energyvoid     	/* energy void */
     92  1.1   jtc     {
     93  1.1   jtc     double	ev_x;		/* x coordinate */
     94  1.1   jtc     double	ev_y;		/* y coordinate */
     95  1.1   jtc     bool	ev_active;	/* active or not */
     96  1.1   jtc     };
     97  1.1   jtc 
     98  1.1   jtc struct	scoreboard			/* scoreboard entry */
     99  1.1   jtc     {
    100  1.1   jtc     double	sb_level;		/* level of player */
    101  1.1   jtc     char	sb_type[4];		/* character type of player */
    102  1.1   jtc     char	sb_name[SZ_NAME];	/* name of player */
    103  1.1   jtc     char	sb_login[SZ_LOGIN];	/* login of player */
    104  1.1   jtc     };
    105  1.1   jtc 
    106  1.1   jtc struct	charstats			/* character type statistics */
    107  1.1   jtc     {
    108  1.1   jtc     double	c_maxbrains;		/* max brains per level */
    109  1.1   jtc     double	c_maxmana;		/* max mana per level */
    110  1.1   jtc     double	c_weakness;		/* how strongly poison affects player */
    111  1.1   jtc     double	c_goldtote;		/* how much gold char can carry */
    112  1.1   jtc     int		c_ringduration;		/* bad ring duration */
    113  1.1   jtc     struct
    114  1.1   jtc 	{
    115  1.1   jtc 	double	base;		/* base for roll */
    116  1.1   jtc 	double	interval;	/* interval for roll */
    117  1.1   jtc 	double	increase;	/* increment per level */
    118  1.1   jtc 	} c_quickness,		/* quickness */
    119  1.1   jtc 	  c_strength,		/* strength */
    120  1.1   jtc 	  c_mana,		/* mana */
    121  1.1   jtc 	  c_energy,		/* energy level */
    122  1.1   jtc 	  c_brains,		/* brains */
    123  1.1   jtc 	  c_magiclvl;		/* magic level */
    124  1.1   jtc     };
    125  1.1   jtc 
    126  1.1   jtc struct menuitem				/* menu item for purchase */
    127  1.1   jtc     {
    128  1.3   jsm     const char	*item;		/* menu item name */
    129  1.1   jtc     double	cost;		/* cost of item */
    130  1.1   jtc     };
    131