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